| 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.0", |
| 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": ["SCM Providers", "Other"], |
| 13 |
"keywords": ["oxygen", "oxygenhub", "review", "proposals", "issues"], |
| 14 |
"extensionDependencies": ["andymccall.oxygen-vscode"], |
| 15 |
"activationEvents": ["workspaceContains:.oxy/format", "onAuthenticationRequest:oxygenhub", "onStartupFinished"], |
| 16 |
"main": "./dist/extension.js", |
| 17 |
"contributes": { |
| 18 |
"authentication": [{ "id": "oxygenhub", "label": "Oxygenhub" }], |
| 19 |
"configuration": { |
| 20 |
"title": "Oxygenhub", |
| 21 |
"properties": { |
| 22 |
"oxygenhub.hubs": { "type": "array", "items": { "type": "string" }, "default": [], "description": "Base URLs of hubs you use (learnt from sign in too)." }, |
| 23 |
"oxygenhub.proposalBookmarkPrefix": { "type": "string", "default": "proposal/", "description": "Prefix of the local bookmark created when checking out a proposal." }, |
| 24 |
"oxygenhub.autoRefresh": { "type": "number", "default": 60, "description": "Seconds between view refreshes; 0 disables." } |
| 25 |
} |
| 26 |
}, |
| 27 |
"viewsContainers": { |
| 28 |
"activitybar": [{ "id": "oxygenhub", "title": "Oxygenhub", "icon": "assets/images/oxygenhub.svg" }] |
| 29 |
}, |
| 30 |
"views": { |
| 31 |
"oxygenhub": [ |
| 32 |
{ "id": "oxygenhub.proposals", "name": "Proposals" }, |
| 33 |
{ "id": "oxygenhub.issues", "name": "Issues" } |
| 34 |
] |
| 35 |
}, |
| 36 |
"viewsWelcome": [ |
| 37 |
{ "view": "oxygenhub.proposals", "contents": "Sign in to an Oxygenhub to see proposals.\n[Sign in](command:oxygenhub.signIn)" } |
| 38 |
], |
| 39 |
"commands": [ |
| 40 |
{ "command": "oxygenhub.signIn", "title": "Sign in", "category": "Oxygenhub" }, |
| 41 |
{ "command": "oxygenhub.signOut", "title": "Sign out", "category": "Oxygenhub" }, |
| 42 |
{ "command": "oxygenhub.refresh", "title": "Refresh", "category": "Oxygenhub", "icon": "$(refresh)" }, |
| 43 |
{ "command": "oxygenhub.openProposal", "title": "Open Proposal", "category": "Oxygenhub" }, |
| 44 |
{ "command": "oxygenhub.openOnHub", "title": "Open on Hub", "category": "Oxygenhub", "icon": "$(link-external)" }, |
| 45 |
{ "command": "oxygenhub.checkoutProposal", "title": "Check Out Proposal", "category": "Oxygenhub", "icon": "$(git-branch)" }, |
| 46 |
{ "command": "oxygenhub.review", "title": "Review…", "category": "Oxygenhub", "icon": "$(comment-discussion)" }, |
| 47 |
{ "command": "oxygenhub.sealApproval", "title": "Seal My Approval (oxy seal --proposal)", "category": "Oxygenhub" }, |
| 48 |
{ "command": "oxygenhub.land", "title": "Land Proposal", "category": "Oxygenhub" }, |
| 49 |
{ "command": "oxygenhub.closeProposal", "title": "Close Proposal", "category": "Oxygenhub" }, |
| 50 |
{ "command": "oxygenhub.createProposal", "title": "Propose Current Bookmark…", "category": "Oxygenhub" }, |
| 51 |
{ "command": "oxygenhub.newIssue", "title": "New Issue…", "category": "Oxygenhub", "icon": "$(add)" }, |
| 52 |
{ "command": "oxygenhub.openIssue", "title": "Open Issue", "category": "Oxygenhub" }, |
| 53 |
{ "command": "oxygenhub.commentIssue", "title": "Comment on Issue…", "category": "Oxygenhub" }, |
| 54 |
{ "command": "oxygenhub.closeIssue", "title": "Close Issue", "category": "Oxygenhub" }, |
| 55 |
{ "command": "oxygenhub.reopenIssue", "title": "Reopen Issue", "category": "Oxygenhub" }, |
| 56 |
{ "command": "oxygenhub.assignMe", "title": "Assign to Me", "category": "Oxygenhub" }, |
| 57 |
{ "command": "oxygenhub.newThread", "title": "Start Review Thread", "category": "Oxygenhub" }, |
| 58 |
{ "command": "oxygenhub.reply", "title": "Reply", "category": "Oxygenhub" }, |
| 59 |
{ "command": "oxygenhub.resolveThread", "title": "Resolve", "category": "Oxygenhub" } |
| 60 |
], |
| 61 |
"menus": { |
| 62 |
"view/title": [ |
| 63 |
{ "command": "oxygenhub.refresh", "when": "view == oxygenhub.proposals || view == oxygenhub.issues", "group": "navigation" }, |
| 64 |
{ "command": "oxygenhub.createProposal", "when": "view == oxygenhub.proposals", "group": "navigation" }, |
| 65 |
{ "command": "oxygenhub.newIssue", "when": "view == oxygenhub.issues", "group": "navigation" } |
| 66 |
], |
| 67 |
"view/item/context": [ |
| 68 |
{ "command": "oxygenhub.openOnHub", "when": "view == oxygenhub.proposals && viewItem == proposal", "group": "inline" }, |
| 69 |
{ "command": "oxygenhub.checkoutProposal", "when": "view == oxygenhub.proposals && viewItem == proposal", "group": "inline" }, |
| 70 |
{ "command": "oxygenhub.review", "when": "view == oxygenhub.proposals && viewItem == proposal", "group": "inline" }, |
| 71 |
{ "command": "oxygenhub.sealApproval", "when": "view == oxygenhub.proposals && viewItem == proposal", "group": "actions@1" }, |
| 72 |
{ "command": "oxygenhub.land", "when": "view == oxygenhub.proposals && viewItem == proposal", "group": "actions@2" }, |
| 73 |
{ "command": "oxygenhub.closeProposal", "when": "view == oxygenhub.proposals && viewItem == proposal", "group": "actions@3" }, |
| 74 |
{ "command": "oxygenhub.openOnHub", "when": "view == oxygenhub.issues && viewItem == issue", "group": "inline" }, |
| 75 |
{ "command": "oxygenhub.commentIssue", "when": "view == oxygenhub.issues && viewItem == issue", "group": "actions@1" }, |
| 76 |
{ "command": "oxygenhub.assignMe", "when": "view == oxygenhub.issues && viewItem == issue", "group": "actions@2" }, |
| 77 |
{ "command": "oxygenhub.closeIssue", "when": "view == oxygenhub.issues && viewItem == issue", "group": "actions@3" }, |
| 78 |
{ "command": "oxygenhub.reopenIssue", "when": "view == oxygenhub.issues && viewItem == issue", "group": "actions@3" } |
| 79 |
], |
| 80 |
"comments/commentThread/context": [ |
| 81 |
{ "command": "oxygenhub.reply", "when": "commentController == oxygenhub", "group": "inline" }, |
| 82 |
{ "command": "oxygenhub.newThread", "when": "commentController == oxygenhub && commentThreadIsEmpty", "group": "inline" } |
| 83 |
], |
| 84 |
"comments/commentThread/title": [ |
| 85 |
{ "command": "oxygenhub.resolveThread", "when": "commentController == oxygenhub", "group": "navigation" } |
| 86 |
] |
| 87 |
} |
| 88 |
}, |
| 89 |
"scripts": { |
| 90 |
"types": "cp ../oxygenhub/crates/hub-api/ts/index.d.ts src/hubapi.d.ts", |
| 91 |
"build": "esbuild src/extension.ts --bundle --platform=node --format=cjs --external:vscode --outfile=dist/extension.js --sourcemap", |
| 92 |
"watch": "npm run build -- --watch", |
| 93 |
"typecheck": "tsc --noEmit -p .", |
| 94 |
"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", |
| 95 |
"test": "node --test \"test/**/*.test.mjs\"", |
| 96 |
"check": "npm run typecheck && npm run build && npm test", |
| 97 |
"package": "vsce package --no-dependencies" |
| 98 |
}, |
| 99 |
"devDependencies": { |
| 100 |
"@types/node": "^24.0.0", |
| 101 |
"@types/vscode": "^1.137.0", |
| 102 |
"@vscode/vsce": "^4.0.0", |
| 103 |
"esbuild": "^0.28.0", |
| 104 |
"typescript": "^5.9.0" |
| 105 |
} |
| 106 |
} |