Scaffold VS Code extension

This commit is contained in:
oaklake89 committed 2026-10-01 16:03:16 +00:00
1 parent 0b7ce024a9
commit 5e1d53a2f5
18 files changed
+3419 -1

No files matched your search

-1
View File
@@ -4,7 +4,6 @@
"updateRemoteUserUID": false,
"customizations": {
"vscode": {
"extensions": ["esbenp.prettier-vscode"],
"settings": {
"remote.autoForwardPorts": false
}
+1
View File
@@ -1,6 +1,7 @@
out/
dist/
node_modules/
**/test
.vscode-test/
*.vsix
.env
+7
View File
@@ -0,0 +1,7 @@
{
"printWidth": 200,
"singleQuote": true,
"tabWidth": 4,
"trailingComma": "none",
"useTabs": true
}
+5
View File
@@ -0,0 +1,5 @@
import { defineConfig } from '@vscode/test-cli';
export default defineConfig({
files: 'out/test/**/*.test.js'
});
+5
View File
@@ -0,0 +1,5 @@
{
// See http://go.microsoft.com/fwlink/?LinkId=827846
// for the documentation about the extensions.json format
"recommendations": ["dbaeumer.vscode-eslint", "ms-vscode.extension-test-runner"]
}
+17
View File
@@ -0,0 +1,17 @@
// A launch configuration that compiles the extension and then opens it inside a new window
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
{
"version": "0.2.0",
"configurations": [
{
"name": "Run Extension",
"type": "extensionHost",
"request": "launch",
"args": ["--extensionDevelopmentPath=${workspaceFolder}"],
"outFiles": ["${workspaceFolder}/out/**/*.js"],
"preLaunchTask": "${defaultBuildTask}"
}
]
}
+11
View File
@@ -0,0 +1,11 @@
// Place your settings in this file to overwrite default and user settings.
{
"files.exclude": {
"out": false // set this to true to hide the "out" folder with the compiled JS files
},
"search.exclude": {
"out": true // set this to false to include "out" folder in search results
},
// Turn off tsc task auto detection since we have the necessary tasks as npm scripts
"js/ts.tsc.autoDetect": "off"
}
+20
View File
@@ -0,0 +1,20 @@
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
{
"version": "2.0.0",
"tasks": [
{
"type": "npm",
"script": "watch",
"problemMatcher": "$tsc-watch",
"isBackground": true,
"presentation": {
"reveal": "never"
},
"group": {
"kind": "build",
"isDefault": true
}
}
]
}
+11
View File
@@ -0,0 +1,11 @@
.vscode/**
.vscode-test/**
src/**
.gitignore
.yarnrc
vsc-extension-quickstart.md
**/tsconfig.json
**/eslint.config.mjs
**/*.map
**/*.ts
**/.vscode-test.*
+9
View File
@@ -0,0 +1,9 @@
# Change Log
All notable changes to the "vsc-motionrx" extension will be documented in this file.
Check [Keep a Changelog](http://keepachangelog.com/) for recommendations on how to structure this file.
## [Unreleased]
- Initial release
+21
View File
@@ -0,0 +1,21 @@
MIT License
Copyright (c) 2025 Gunnar Johansson
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
+3
View File
@@ -0,0 +1,3 @@
# vsc-motionrx README
This is the README for "vsc-motionrx".
View File
Whitespace-only changes.
+33
View File
@@ -0,0 +1,33 @@
import typescriptEslint from 'typescript-eslint';
export default [
{
files: ['**/*.ts']
},
{
plugins: {
'@typescript-eslint': typescriptEslint.plugin
},
languageOptions: {
parser: typescriptEslint.parser,
ecmaVersion: 2022,
sourceType: 'module'
},
rules: {
'@typescript-eslint/naming-convention': [
'warn',
{
selector: 'import',
format: ['camelCase', 'PascalCase']
}
],
curly: 'warn',
eqeqeq: 'warn',
'no-throw-literal': 'warn',
semi: 'warn'
}
}
];
+3202
View File
File diff suppressed because it is too large. Load diff
+49
View File
@@ -0,0 +1,49 @@
{
"name": "vsc-motionrx",
"displayName": "MotionRx",
"description": "Planning and follow-up of FaR-prescribed activities.",
"version": "1.0.0",
"publisher": "oaklake89",
"repository": {
"type": "git",
"url": "https://git.kvarnarp.se/vscode/vsc-motionrx"
},
"preview": true,
"engines": {
"vscode": "^1.138.0"
},
"categories": [
"Other"
],
"activationEvents": [
"onStartupFinished"
],
"main": "./out/extension.js",
"contributes": {
"commands": []
},
"scripts": {
"format": "prettier --write .",
"vscode:prepublish": "npm run compile",
"compile": "tsc -p ./",
"watch": "tsc -watch -p ./",
"pretest": "npm run compile && npm run lint",
"lint": "eslint src",
"test": "vscode-test"
},
"devDependencies": {
"@types/mocha": "^10.0.10",
"@types/node": "24.x",
"@types/vscode": "^1.138.0",
"@vscode/test-cli": "^0.0.15",
"@vscode/test-electron": "^3.0.0",
"eslint": "^10.5.0",
"prettier": "^3.9.9",
"typescript": "^6.0.3",
"typescript-eslint": "^8.61.1"
},
"overrides": {
"diff": "^8.0.4",
"serialize-javascript": "^7.0.6"
}
}
+9
View File
@@ -0,0 +1,9 @@
import * as vscode from 'vscode';
export function activate(context: vscode.ExtensionContext) {
const subscriptions = context.subscriptions;
subscriptions.push();
}
export function deactivate() {}
+16
View File
@@ -0,0 +1,16 @@
{
"compilerOptions": {
"module": "Node16",
"target": "ES2022",
"outDir": "out",
"lib": ["ES2022"],
"types": ["node", "mocha"],
"sourceMap": true,
"rootDir": "src",
"strict": true /* enable all strict type-checking options */
/* Additional Checks */
// "noImplicitReturns": true, /* Report error when not all code paths in function return a value. */
// "noFallthroughCasesInSwitch": true, /* Report errors for fallthrough cases in switch statement. */
// "noUnusedParameters": true, /* Report errors on unused parameters. */
}
}