runa/vscode/package.json

374 lines
11 KiB
JSON
Raw Normal View History

{
"name": "runa",
"displayName": "Runa — Rune Actors",
"description": "Edit image source files and inspect and control actors in a trusted localhost Runa image.",
"version": "0.0.0",
"private": true,
"engines": {
"vscode": "^1.96.0",
"node": ">=22"
},
"categories": [
"Other"
],
"main": "./out/src/extension.js",
"activationEvents": [
"onView:runa.actors",
"onView:runa.sources",
"onFileSystem:runa-image"
],
"scripts": {
"compile": "tsc -p .",
"lint": "tsc -p . --noEmit && prettier --check .",
"format": "prettier --write .",
"test": "npm run compile && node --test out/test/*.test.js",
"test:integration": "cargo build --manifest-path ../Cargo.toml -p runa -p runa-cli && npm run compile && node --test out/integration/*.test.js",
"test:host": "cargo build --manifest-path ../Cargo.toml -p runa && npm run compile && node scripts/test-host.cjs"
},
"dependencies": {
"lossless-json": "^4.3.0",
"ws": "^8.18.3"
},
"devDependencies": {
"@vscode/test-electron": "^2.5.2",
"@types/node": "^22.0.0",
"@types/vscode": "~1.96.0",
"@types/ws": "^8.18.1",
"prettier": "^3.6.2",
"typescript": "^5.9.3"
},
"contributes": {
"commands": [
{
"command": "runa.connect",
"title": "Connect to Local Image",
"category": "Runa"
},
{
"command": "runa.disconnect",
"title": "Disconnect",
"category": "Runa"
},
{
"command": "runa.refresh",
"title": "Refresh Image",
"category": "Runa",
"icon": "$(refresh)"
},
{
"command": "runa.spawn",
"title": "Spawn Actor",
"category": "Runa",
"icon": "$(add)",
"enablement": "runa.connected"
},
{
"command": "runa.spawnSource",
"title": "Spawn",
"category": "Runa",
"enablement": "runa.connected"
},
{
"command": "runa.spawnSourceWithState",
"title": "Spawn with State...",
"category": "Runa",
"enablement": "runa.connected"
},
{
"command": "runa.commitSource",
"title": "Commit Source",
"category": "Runa",
"enablement": "runa.connected"
},
{
"command": "runa.sourceHistory",
"title": "Source History...",
"category": "Runa",
"enablement": "runa.connected"
},
{
"command": "runa.rollbackSource",
"title": "Roll Back Source...",
"category": "Runa",
"enablement": "runa.connected"
},
{
"command": "runa.send",
"title": "Send Message",
"category": "Runa",
"enablement": "runa.connected"
},
{
"command": "runa.stop",
"title": "Stop Actor (Graceful)",
"category": "Runa",
"enablement": "runa.connected"
},
{
"command": "runa.kill",
"title": "Kill Actor",
"category": "Runa",
"enablement": "runa.connected"
},
{
"command": "runa.restart",
"title": "Restart Actor",
"category": "Runa",
"enablement": "runa.connected"
},
{
"command": "runa.pause",
"title": "Pause Actor",
"category": "Runa",
"enablement": "runa.connected"
},
{
"command": "runa.resume",
"title": "Resume Actor",
"category": "Runa",
"enablement": "runa.connected"
},
{
"command": "runa.reload",
"title": "Reload Actor Source",
"category": "Runa",
"enablement": "runa.connected"
},
{
"command": "runa.become",
"title": "Become Source...",
"category": "Runa",
"enablement": "runa.connected"
},
{
"command": "runa.tick",
"title": "Advance Scheduler",
"category": "Runa",
"enablement": "runa.connected"
},
{
"command": "runa.inspect",
"title": "Inspect Actor",
"category": "Runa",
"icon": "$(inspect)"
}
],
"views": {
"explorer": [
{
"id": "runa.actors",
"name": "Runa Actors"
},
{
"id": "runa.sources",
"name": "Runa Image Sources"
}
]
},
"viewsWelcome": [
{
"view": "runa.sources",
"contents": "Connect to browse and edit the image's virtual filesystem.\n[Connect](command:runa.connect)",
"when": "!runa.connected"
},
{
"view": "runa.actors",
"contents": "Connect to a trusted local Runa image.\n[Connect](command:runa.connect)",
"when": "!runa.connected"
}
],
"menus": {
"view/title": [
{
"command": "runa.connect",
"when": "view == runa.sources && !runa.connected",
"group": "navigation"
},
{
"command": "runa.refresh",
"when": "view == runa.sources && runa.connected",
"group": "navigation"
},
{
"command": "runa.spawn",
"when": "view == runa.actors && runa.connected",
"group": "navigation"
},
{
"command": "runa.connect",
"when": "view == runa.actors && !runa.connected",
"group": "navigation"
},
{
"command": "runa.refresh",
"when": "view == runa.actors && runa.connected",
"group": "navigation"
},
{
"command": "runa.disconnect",
"when": "view == runa.actors && runa.connected"
}
],
"view/item/context": [
{
"command": "runa.spawnSource",
"when": "view == runa.sources && viewItem == runa.sourceFile && runa.connected",
"group": "runa_1_spawn@1"
},
{
"command": "runa.spawnSourceWithState",
"when": "view == runa.sources && viewItem == runa.sourceFile && runa.connected",
"group": "runa_1_spawn@2"
},
{
"command": "runa.commitSource",
"when": "view == runa.sources && viewItem == runa.sourceFile && runa.connected",
"group": "runa_2_source@1"
},
{
"command": "runa.sourceHistory",
"when": "view == runa.sources && viewItem == runa.sourceFile && runa.connected",
"group": "runa_2_source@2"
},
{
"command": "runa.rollbackSource",
"when": "view == runa.sources && viewItem == runa.sourceFile && runa.connected",
"group": "runa_2_source@3"
},
{
"command": "runa.send",
"when": "view == runa.actors && viewItem == runa.actor",
"group": "actor@1"
},
{
"command": "runa.pause",
"when": "view == runa.actors && viewItem == runa.actor",
"group": "actor@2"
},
{
"command": "runa.resume",
"when": "view == runa.actors && viewItem == runa.actor",
"group": "actor@3"
},
{
"command": "runa.stop",
"when": "view == runa.actors && viewItem == runa.actor",
"group": "actor@4"
},
{
"command": "runa.kill",
"when": "view == runa.actors && viewItem == runa.actor",
"group": "actor@5"
},
{
"command": "runa.restart",
"when": "view == runa.actors && viewItem == runa.actor",
"group": "actor@6"
},
{
"command": "runa.reload",
"when": "view == runa.actors && viewItem == runa.actor",
"group": "actor@7"
},
{
"command": "runa.become",
"when": "view == runa.actors && viewItem == runa.actor",
"group": "actor@8"
},
{
"command": "runa.inspect",
"when": "view == runa.actors && viewItem == runa.actor",
"group": "inline"
}
],
"explorer/context": [
{
"command": "runa.spawnSource",
"when": "resourceScheme == runa-image && resourceExtname == .rn && runa.connected",
"group": "runa_1_spawn@1"
},
{
"command": "runa.spawnSourceWithState",
"when": "resourceScheme == runa-image && resourceExtname == .rn && runa.connected",
"group": "runa_1_spawn@2"
},
{
"command": "runa.commitSource",
"when": "resourceScheme == runa-image && resourceExtname == .rn && runa.connected",
"group": "runa_2_source@1"
},
{
"command": "runa.sourceHistory",
"when": "resourceScheme == runa-image && resourceExtname == .rn && runa.connected",
"group": "runa_2_source@2"
},
{
"command": "runa.rollbackSource",
"when": "resourceScheme == runa-image && resourceExtname == .rn && runa.connected",
"group": "runa_2_source@3"
}
],
"editor/title/context": [
{
"command": "runa.spawnSource",
"when": "resourceScheme == runa-image && resourceExtname == .rn && runa.connected",
"group": "runa_1_spawn@1"
},
{
"command": "runa.spawnSourceWithState",
"when": "resourceScheme == runa-image && resourceExtname == .rn && runa.connected",
"group": "runa_1_spawn@2"
},
{
"command": "runa.commitSource",
"when": "resourceScheme == runa-image && resourceExtname == .rn && runa.connected",
"group": "runa_2_source@1"
},
{
"command": "runa.sourceHistory",
"when": "resourceScheme == runa-image && resourceExtname == .rn && runa.connected",
"group": "runa_2_source@2"
},
{
"command": "runa.rollbackSource",
"when": "resourceScheme == runa-image && resourceExtname == .rn && runa.connected",
"group": "runa_2_source@3"
}
],
"commandPalette": [
{
"command": "runa.spawnSource",
"when": "runa.connected"
},
{
"command": "runa.spawnSourceWithState",
"when": "runa.connected"
},
{
"command": "runa.commitSource",
"when": "runa.connected"
},
{
"command": "runa.sourceHistory",
"when": "runa.connected"
},
{
"command": "runa.rollbackSource",
"when": "runa.connected"
}
]
},
"configuration": {
"title": "Runa",
"properties": {
"runa.address": {
"type": "string",
"default": "127.0.0.1:3737",
"scope": "machine",
"description": "Trusted local image endpoint: numeric IPv4 loopback or [::1]:port. No authentication is available."
}
}
}
}
}