Add open provider contracts to SDK
This commit is contained in:
@@ -84,6 +84,10 @@
|
||||
"vault.read",
|
||||
"vault.write",
|
||||
"vault.watch",
|
||||
"files.read",
|
||||
"files.write",
|
||||
"files.delete",
|
||||
"workbench.open",
|
||||
"storage.namespace",
|
||||
"storage.migrations",
|
||||
"events.publish",
|
||||
@@ -227,6 +231,12 @@
|
||||
"items": {
|
||||
"$ref": "#/$defs/ContributionStatusBarItem"
|
||||
}
|
||||
},
|
||||
"openProviders": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/$defs/ContributionOpenProvider"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -357,6 +367,45 @@
|
||||
"handler": { "type": "string" }
|
||||
},
|
||||
"required": ["id", "label"]
|
||||
},
|
||||
"OpenProviderSupport": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"kind": {
|
||||
"type": "string",
|
||||
"enum": ["vault-file"]
|
||||
},
|
||||
"extensions": {
|
||||
"type": "array",
|
||||
"items": { "type": "string" }
|
||||
},
|
||||
"mime": {
|
||||
"type": "array",
|
||||
"items": { "type": "string" }
|
||||
},
|
||||
"contexts": {
|
||||
"type": "array",
|
||||
"items": { "type": "string" }
|
||||
}
|
||||
},
|
||||
"required": ["kind"]
|
||||
},
|
||||
"ContributionOpenProvider": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"id": { "type": "string" },
|
||||
"title": { "type": "string" },
|
||||
"priority": { "type": "integer" },
|
||||
"component": { "type": "string" },
|
||||
"supports": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"$ref": "#/$defs/OpenProviderSupport"
|
||||
},
|
||||
"minItems": 1
|
||||
}
|
||||
},
|
||||
"required": ["id", "title", "component", "supports"]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,12 +30,16 @@
|
||||
{ "name": "vault.read", "description": "Read vault files and metadata", "dangerous": false },
|
||||
{ "name": "vault.write", "description": "Write vault files and metadata", "dangerous": true },
|
||||
{ "name": "vault.watch", "description": "Watch vault file changes", "dangerous": false },
|
||||
{ "name": "files.read", "description": "List files and read text files through the vault Files API", "dangerous": false },
|
||||
{ "name": "files.write", "description": "Create folders, write text files, and move paths through the vault Files API", "dangerous": true },
|
||||
{ "name": "files.delete", "description": "Trash vault files and folders through the vault Files API", "dangerous": true },
|
||||
{ "name": "storage.namespace", "description": "Read/write plugin's own storage namespace", "dangerous": false },
|
||||
{ "name": "storage.migrations", "description": "Run database migrations in plugin namespace", "dangerous": false },
|
||||
{ "name": "events.publish", "description": "Publish events to the event bus", "dangerous": false },
|
||||
{ "name": "events.subscribe", "description": "Subscribe to events on the event bus", "dangerous": false },
|
||||
{ "name": "ui.register", "description": "Register UI components and contributions", "dangerous": false },
|
||||
{ "name": "commands.register", "description": "Register command palette commands", "dangerous": false },
|
||||
{ "name": "workbench.open", "description": "Request Workbench open/edit routing for vault resources", "dangerous": false },
|
||||
{ "name": "network.local", "description": "Connect to localhost network services", "dangerous": false },
|
||||
{ "name": "network.remote", "description": "Connect to remote network services", "dangerous": true },
|
||||
{ "name": "process.spawn", "description": "Spawn external processes", "dangerous": true },
|
||||
|
||||
Reference in New Issue
Block a user