{ "name": "relspec-template-editor", "displayName": "RelSpec Template Editor", "description": "Visual editor for RelSpec PostgreSQL migration templates", "version": "0.1.0", "engines": { "vscode": "^1.80.0" }, "categories": [ "Programming Languages", "Formatters", "Snippets" ], "activationEvents": [ "onLanguage:gotmpl", "onCommand:relspec.previewTemplate", "onCommand:relspec.validateTemplate", "onCommand:relspec.newTemplate" ], "main": "./out/extension.js", "contributes": { "languages": [ { "id": "gotmpl", "aliases": ["Go Template", "gotmpl"], "extensions": [".tmpl"], "configuration": "./language-configuration.json" } ], "grammars": [ { "language": "gotmpl", "scopeName": "source.gotmpl", "path": "./syntaxes/gotmpl.tmLanguage.json" } ], "commands": [ { "command": "relspec.previewTemplate", "title": "RelSpec: Preview Template", "icon": "$(preview)" }, { "command": "relspec.validateTemplate", "title": "RelSpec: Validate Template" }, { "command": "relspec.newTemplate", "title": "RelSpec: New Template" }, { "command": "relspec.listFunctions", "title": "RelSpec: List Available Functions" } ], "menus": { "editor/title": [ { "command": "relspec.previewTemplate", "when": "resourceLangId == gotmpl", "group": "navigation" } ], "editor/context": [ { "command": "relspec.validateTemplate", "when": "resourceLangId == gotmpl", "group": "relspec" } ] }, "configuration": { "title": "RelSpec Template Editor", "properties": { "relspec.templatePath": { "type": "string", "default": "pkg/writers/pgsql/templates", "description": "Path to template directory" }, "relspec.autoValidate": { "type": "boolean", "default": true, "description": "Automatically validate templates on save" }, "relspec.showDataStructures": { "type": "boolean", "default": true, "description": "Show data structure hints in preview" }, "relspec.previewSampleData": { "type": "string", "default": "{}", "description": "Sample JSON data for template preview" } } }, "snippets": [ { "language": "gotmpl", "path": "./snippets/relspec.json" } ] }, "scripts": { "vscode:prepublish": "npm run compile", "compile": "tsc -p ./", "watch": "tsc -watch -p ./", "lint": "eslint src --ext ts" }, "devDependencies": { "@types/vscode": "^1.80.0", "@types/node": "16.x", "@typescript-eslint/eslint-plugin": "^5.59.0", "@typescript-eslint/parser": "^5.59.0", "eslint": "^8.41.0", "typescript": "^5.0.4" }, "dependencies": {} }