OXYGENHUB
# 5779e5c731a6 oxygen-vscode / package.json
6.4 KiB · JSON · last changed 0.2.1: wrapper test reordered so amend runs on a single head; the 0.2.0 commit had a failing test 1 month ago source blame history raw
1
{
2
  "name": "oxygen-vscode",
3
  "displayName": "Oxygen",
4
  "description": "Oxygen version control: source control view, diffs, decorations, bookmarks and history for oxy repositories",
5
  "version": "0.2.1",
6
  "publisher": "oxygen",
7
  "license": "MIT OR Apache-2.0",
8
  "icon": "assets/images/oxygen.png",
9
  "engines": {
10
    "vscode": "^1.137.0"
11
  },
12
  "categories": [
13
    "SCM Providers"
14
  ],
15
  "keywords": [
16
    "oxygen",
17
    "oxy",
18
    "scm",
19
    "version control"
20
  ],
21
  "activationEvents": [
22
    "workspaceContains:.oxy/format",
23
    "workspaceContains:.oxy",
24
    "onStartupFinished"
25
  ],
26
  "main": "./dist/extension.js",
27
  "contributes": {
28
    "commands": [
29
      { "command": "oxygen.refresh", "title": "Refresh", "category": "Oxygen", "icon": "$(refresh)" },
30
      { "command": "oxygen.commit", "title": "Commit", "category": "Oxygen", "icon": "$(check)" },
31
      { "command": "oxygen.openFile", "title": "Open File", "category": "Oxygen", "icon": "$(go-to-file)" },
32
      { "command": "oxygen.openChanges", "title": "Open Changes", "category": "Oxygen" },
33
      { "command": "oxygen.openBaseVersion", "title": "Open Base Version", "category": "Oxygen" },
34
      { "command": "oxygen.showOutput", "title": "Show Output", "category": "Oxygen" },
35
      { "command": "oxygen.showLog", "title": "Show Log", "category": "Oxygen" },
36
      { "command": "oxygen.init", "title": "Initialize Repository", "category": "Oxygen" },
37
      { "command": "oxygen.discard", "title": "Discard Changes", "category": "Oxygen", "icon": "$(discard)" },
38
      { "command": "oxygen.commitSelected", "title": "Commit Selected Paths", "category": "Oxygen" },
39
      { "command": "oxygen.commitHunks", "title": "Commit Hunks…", "category": "Oxygen" },
40
      { "command": "oxygen.amend", "title": "Amend", "category": "Oxygen" },
41
      { "command": "oxygen.undo", "title": "Undo Last Operation", "category": "Oxygen", "icon": "$(discard)" },
42
      { "command": "oxygen.undoTo", "title": "Undo to Here", "category": "Oxygen", "icon": "$(discard)" },
43
      { "command": "oxygen.refreshOperations", "title": "Refresh Operations", "category": "Oxygen", "icon": "$(refresh)" }
44
    ],
45
    "views": {
46
      "scm": [
47
        { "id": "oxygen.operations", "name": "Oxygen Operations", "when": "oxygen.hasRepository", "icon": "assets/images/oxygen.svg", "visibility": "collapsed" }
48
      ]
49
    },
50
    "viewsWelcome": [
51
      {
52
        "view": "scm",
53
        "contents": "Oxygen is installed but found no oxy repository in the open folders.\n[Initialize Oxygen Repository](command:oxygen.init)\n[Show Oxygen Output](command:oxygen.showOutput)",
54
        "when": "workbenchState != empty && !oxygen.hasRepository"
55
      }
56
    ],
57
    "menus": {
58
      "scm/title": [
59
        { "command": "oxygen.commit", "group": "navigation@1", "when": "scmProvider == oxygen" },
60
        { "command": "oxygen.refresh", "group": "navigation@2", "when": "scmProvider == oxygen" },
61
        { "command": "oxygen.commitHunks", "group": "2_commit@1", "when": "scmProvider == oxygen" },
62
        { "command": "oxygen.amend", "group": "2_commit@2", "when": "scmProvider == oxygen" },
63
        { "command": "oxygen.undo", "group": "3_undo", "when": "scmProvider == oxygen" },
64
        { "command": "oxygen.showLog", "group": "1_view", "when": "scmProvider == oxygen" },
65
        { "command": "oxygen.showOutput", "group": "1_view", "when": "scmProvider == oxygen" }
66
      ],
67
      "scm/resourceState/context": [
68
        { "command": "oxygen.openFile", "group": "inline@1", "when": "scmProvider == oxygen" },
69
        { "command": "oxygen.discard", "group": "inline@2", "when": "scmProvider == oxygen" },
70
        { "command": "oxygen.openChanges", "group": "navigation", "when": "scmProvider == oxygen" },
71
        { "command": "oxygen.openBaseVersion", "group": "navigation", "when": "scmProvider == oxygen" },
72
        { "command": "oxygen.commitSelected", "group": "1_modification@1", "when": "scmProvider == oxygen" },
73
        { "command": "oxygen.discard", "group": "1_modification@2", "when": "scmProvider == oxygen" }
74
      ],
75
      "view/title": [
76
        { "command": "oxygen.refreshOperations", "group": "navigation", "when": "view == oxygen.operations" }
77
      ],
78
      "view/item/context": [
79
        { "command": "oxygen.undoTo", "group": "inline", "when": "view == oxygen.operations && viewItem == operation" }
80
      ],
81
      "commandPalette": [
82
        { "command": "oxygen.openFile", "when": "false" },
83
        { "command": "oxygen.openChanges", "when": "false" },
84
        { "command": "oxygen.openBaseVersion", "when": "false" },
85
        { "command": "oxygen.discard", "when": "false" },
86
        { "command": "oxygen.commitSelected", "when": "false" },
87
        { "command": "oxygen.undoTo", "when": "false" },
88
        { "command": "oxygen.refreshOperations", "when": "false" }
89
      ]
90
    },
91
    "configuration": {
92
      "title": "Oxygen",
93
      "properties": {
94
        "oxygen.path": {
95
          "type": "string",
96
          "default": "",
97
          "description": "Path to the oxy binary. Empty means oxy on PATH, then ~/.local/bin/oxy."
98
        },
99
        "oxygen.autoRefresh": {
100
          "type": "boolean",
101
          "default": true,
102
          "description": "Refresh the source control view when files in the workspace change."
103
        },
104
        "oxygen.decorations.enabled": {
105
          "type": "boolean",
106
          "default": true,
107
          "description": "Show status decorations in the explorer and on editor tabs."
108
        },
109
        "oxygen.showSnapshotOperations": {
110
          "type": "boolean",
111
          "default": false,
112
          "description": "List snapshot operations in the Oxygen Operations view."
113
        },
114
        "oxygen.statusBar.enabled": {
115
          "type": "boolean",
116
          "default": true,
117
          "description": "Show the bookmark, working copy and state in the status bar."
118
        }
119
      }
120
    }
121
  },
122
  "scripts": {
123
    "build": "esbuild src/extension.ts --bundle --platform=node --format=cjs --external:vscode --outfile=dist/extension.js --sourcemap",
124
    "watch": "npm run build -- --watch",
125
    "typecheck": "tsc --noEmit -p .",
126
    "pretest": "esbuild src/oxy.ts --bundle --platform=node --format=esm --outfile=out/oxy.mjs",
127
    "test": "node --test \"test/**/*.test.mjs\"",
128
    "check": "npm run typecheck && npm run build && npm test",
129
    "package": "vsce package --no-dependencies"
130
  },
131
  "devDependencies": {
132
    "@types/node": "^24.0.0",
133
    "@types/vscode": "^1.137.0",
134
    "@vscode/vsce": "^4.0.0",
135
    "esbuild": "^0.28.0",
136
    "typescript": "^5.9.0"
137
  }
138
}