OXYGENHUB
# 52cef00143db oxygenhub-vscode / package.json
8.5 KiB · JSON · last changed 0.1.2: depend on oxygen.oxygen-vscode (the real id), so the extension activates; activity bar icon is the bare mark 1 month ago source blame history raw
1
{
2
  "name": "oxygenhub-vscode",
3
  "displayName": "Oxygenhub",
4
  "description": "Proposals, reviews, issues and checks from an Oxygenhub, in the editor. Builds on the Oxygen extension.",
5
  "version": "0.1.2",
6
  "publisher": "andymccall",
7
  "license": "MIT OR Apache-2.0",
8
  "icon": "assets/images/oxygenhub.png",
9
  "engines": {
10
    "vscode": "^1.137.0"
11
  },
12
  "categories": [
13
    "SCM Providers",
14
    "Other"
15
  ],
16
  "keywords": [
17
    "oxygen",
18
    "oxygenhub",
19
    "review",
20
    "proposals",
21
    "issues"
22
  ],
23
  "extensionDependencies": [
24
    "oxygen.oxygen-vscode"
25
  ],
26
  "activationEvents": [
27
    "workspaceContains:.oxy/format",
28
    "onAuthenticationRequest:oxygenhub",
29
    "onStartupFinished"
30
  ],
31
  "main": "./dist/extension.js",
32
  "contributes": {
33
    "authentication": [
34
      {
35
        "id": "oxygenhub",
36
        "label": "Oxygenhub"
37
      }
38
    ],
39
    "configuration": {
40
      "title": "Oxygenhub",
41
      "properties": {
42
        "oxygenhub.hubs": {
43
          "type": "array",
44
          "items": {
45
            "type": "string"
46
          },
47
          "default": [],
48
          "description": "Base URLs of hubs you use (learnt from sign in too)."
49
        },
50
        "oxygenhub.proposalBookmarkPrefix": {
51
          "type": "string",
52
          "default": "proposal/",
53
          "description": "Prefix of the local bookmark created when checking out a proposal."
54
        },
55
        "oxygenhub.autoRefresh": {
56
          "type": "number",
57
          "default": 60,
58
          "description": "Seconds between view refreshes; 0 disables."
59
        }
60
      }
61
    },
62
    "viewsContainers": {
63
      "activitybar": [
64
        {
65
          "id": "oxygenhub",
66
          "title": "Oxygenhub",
67
          "icon": "assets/images/oxygenhub-activity.svg"
68
        }
69
      ]
70
    },
71
    "views": {
72
      "oxygenhub": [
73
        {
74
          "id": "oxygenhub.proposals",
75
          "name": "Proposals"
76
        },
77
        {
78
          "id": "oxygenhub.issues",
79
          "name": "Issues"
80
        }
81
      ]
82
    },
83
    "viewsWelcome": [
84
      {
85
        "view": "oxygenhub.proposals",
86
        "contents": "Sign in to an Oxygenhub to see proposals.\n[Sign in](command:oxygenhub.signIn)"
87
      }
88
    ],
89
    "commands": [
90
      {
91
        "command": "oxygenhub.signIn",
92
        "title": "Sign in",
93
        "category": "Oxygenhub"
94
      },
95
      {
96
        "command": "oxygenhub.signOut",
97
        "title": "Sign out",
98
        "category": "Oxygenhub"
99
      },
100
      {
101
        "command": "oxygenhub.refresh",
102
        "title": "Refresh",
103
        "category": "Oxygenhub",
104
        "icon": "$(refresh)"
105
      },
106
      {
107
        "command": "oxygenhub.openProposal",
108
        "title": "Open Proposal",
109
        "category": "Oxygenhub"
110
      },
111
      {
112
        "command": "oxygenhub.openOnHub",
113
        "title": "Open on Hub",
114
        "category": "Oxygenhub",
115
        "icon": "$(link-external)"
116
      },
117
      {
118
        "command": "oxygenhub.checkoutProposal",
119
        "title": "Check Out Proposal",
120
        "category": "Oxygenhub",
121
        "icon": "$(git-branch)"
122
      },
123
      {
124
        "command": "oxygenhub.review",
125
        "title": "Review\u2026",
126
        "category": "Oxygenhub",
127
        "icon": "$(comment-discussion)"
128
      },
129
      {
130
        "command": "oxygenhub.sealApproval",
131
        "title": "Seal My Approval (oxy seal --proposal)",
132
        "category": "Oxygenhub"
133
      },
134
      {
135
        "command": "oxygenhub.land",
136
        "title": "Land Proposal",
137
        "category": "Oxygenhub"
138
      },
139
      {
140
        "command": "oxygenhub.closeProposal",
141
        "title": "Close Proposal",
142
        "category": "Oxygenhub"
143
      },
144
      {
145
        "command": "oxygenhub.createProposal",
146
        "title": "Propose Current Bookmark\u2026",
147
        "category": "Oxygenhub"
148
      },
149
      {
150
        "command": "oxygenhub.newIssue",
151
        "title": "New Issue\u2026",
152
        "category": "Oxygenhub",
153
        "icon": "$(add)"
154
      },
155
      {
156
        "command": "oxygenhub.openIssue",
157
        "title": "Open Issue",
158
        "category": "Oxygenhub"
159
      },
160
      {
161
        "command": "oxygenhub.commentIssue",
162
        "title": "Comment on Issue\u2026",
163
        "category": "Oxygenhub"
164
      },
165
      {
166
        "command": "oxygenhub.closeIssue",
167
        "title": "Close Issue",
168
        "category": "Oxygenhub"
169
      },
170
      {
171
        "command": "oxygenhub.reopenIssue",
172
        "title": "Reopen Issue",
173
        "category": "Oxygenhub"
174
      },
175
      {
176
        "command": "oxygenhub.assignMe",
177
        "title": "Assign to Me",
178
        "category": "Oxygenhub"
179
      },
180
      {
181
        "command": "oxygenhub.newThread",
182
        "title": "Start Review Thread",
183
        "category": "Oxygenhub"
184
      },
185
      {
186
        "command": "oxygenhub.reply",
187
        "title": "Reply",
188
        "category": "Oxygenhub"
189
      },
190
      {
191
        "command": "oxygenhub.resolveThread",
192
        "title": "Resolve",
193
        "category": "Oxygenhub"
194
      }
195
    ],
196
    "menus": {
197
      "view/title": [
198
        {
199
          "command": "oxygenhub.refresh",
200
          "when": "view == oxygenhub.proposals || view == oxygenhub.issues",
201
          "group": "navigation"
202
        },
203
        {
204
          "command": "oxygenhub.createProposal",
205
          "when": "view == oxygenhub.proposals",
206
          "group": "navigation"
207
        },
208
        {
209
          "command": "oxygenhub.newIssue",
210
          "when": "view == oxygenhub.issues",
211
          "group": "navigation"
212
        }
213
      ],
214
      "view/item/context": [
215
        {
216
          "command": "oxygenhub.openOnHub",
217
          "when": "view == oxygenhub.proposals && viewItem == proposal",
218
          "group": "inline"
219
        },
220
        {
221
          "command": "oxygenhub.checkoutProposal",
222
          "when": "view == oxygenhub.proposals && viewItem == proposal",
223
          "group": "inline"
224
        },
225
        {
226
          "command": "oxygenhub.review",
227
          "when": "view == oxygenhub.proposals && viewItem == proposal",
228
          "group": "inline"
229
        },
230
        {
231
          "command": "oxygenhub.sealApproval",
232
          "when": "view == oxygenhub.proposals && viewItem == proposal",
233
          "group": "actions@1"
234
        },
235
        {
236
          "command": "oxygenhub.land",
237
          "when": "view == oxygenhub.proposals && viewItem == proposal",
238
          "group": "actions@2"
239
        },
240
        {
241
          "command": "oxygenhub.closeProposal",
242
          "when": "view == oxygenhub.proposals && viewItem == proposal",
243
          "group": "actions@3"
244
        },
245
        {
246
          "command": "oxygenhub.openOnHub",
247
          "when": "view == oxygenhub.issues && viewItem == issue",
248
          "group": "inline"
249
        },
250
        {
251
          "command": "oxygenhub.commentIssue",
252
          "when": "view == oxygenhub.issues && viewItem == issue",
253
          "group": "actions@1"
254
        },
255
        {
256
          "command": "oxygenhub.assignMe",
257
          "when": "view == oxygenhub.issues && viewItem == issue",
258
          "group": "actions@2"
259
        },
260
        {
261
          "command": "oxygenhub.closeIssue",
262
          "when": "view == oxygenhub.issues && viewItem == issue",
263
          "group": "actions@3"
264
        },
265
        {
266
          "command": "oxygenhub.reopenIssue",
267
          "when": "view == oxygenhub.issues && viewItem == issue",
268
          "group": "actions@3"
269
        }
270
      ],
271
      "comments/commentThread/context": [
272
        {
273
          "command": "oxygenhub.reply",
274
          "when": "commentController == oxygenhub",
275
          "group": "inline"
276
        },
277
        {
278
          "command": "oxygenhub.newThread",
279
          "when": "commentController == oxygenhub && commentThreadIsEmpty",
280
          "group": "inline"
281
        }
282
      ],
283
      "comments/commentThread/title": [
284
        {
285
          "command": "oxygenhub.resolveThread",
286
          "when": "commentController == oxygenhub",
287
          "group": "navigation"
288
        }
289
      ]
290
    }
291
  },
292
  "scripts": {
293
    "types": "cp ../oxygenhub/crates/hub-api/ts/index.d.ts src/hubapi.d.ts",
294
    "build": "esbuild src/extension.ts --bundle --platform=node --format=cjs --external:vscode --outfile=dist/extension.js --sourcemap",
295
    "watch": "npm run build -- --watch",
296
    "typecheck": "tsc --noEmit -p .",
297
    "pretest": "esbuild src/hub.ts --bundle --platform=node --format=esm --outfile=out/hub.mjs && esbuild src/provider.ts --bundle --platform=node --format=esm --outfile=out/provider.mjs",
298
    "test": "node --test \"test/**/*.test.mjs\"",
299
    "check": "npm run typecheck && npm run build && npm test",
300
    "package": "vsce package --no-dependencies"
301
  },
302
  "devDependencies": {
303
    "@types/node": "^24.0.0",
304
    "@types/vscode": "^1.137.0",
305
    "@vscode/vsce": "^4.0.0",
306
    "esbuild": "^0.28.0",
307
    "typescript": "^5.9.0"
308
  }
309
}