{
    "name": "tabscript",
    "version": "2.0.2",
    "description": "Indentation-based compile-to-TypeScript language with syntax plugin support.",
    "main": "dist-min/tabscript.js",
    "files": [
        "bin",
        "dist",
        "dist-min",
        "src"
    ],
    "exports": {
        ".": {
            "bun": "./src/tabscript.ts",
            "development": "./dist/tabscript.js",
            "types": "./dist/tabscript.d.ts",
            "default": "./dist-min/tabscript.js"
        },
        "./browser": {
            "development": "./dist/browser.js",
            "types": "./dist/browser.d.ts",
            "default": "./dist-min/browser.js"
        },
        "./vite": {
            "types": "./dist/vite-plugin.d.ts",
            "default": "./dist/vite-plugin.js"
        },
        "./webpack": {
            "types": "./dist/webpack-loader.d.ts",
            "default": "./dist/webpack-loader.js"
        },
        "./esbuild": {
            "types": "./dist/esbuild-plugin.d.ts",
            "default": "./dist/esbuild-plugin.js"
        },
        "./rollup": {
            "types": "./dist/rollup-plugin.d.ts",
            "default": "./dist/rollup-plugin.js"
        },
        "./package.json": "./package.json"
    },
    "scripts": {
        "build": "rm -rf dist dist-min ; tsc --target es2023 --module nodenext --moduleResolution nodenext --declaration --sourceMap --outDir dist src/*.ts && chmod a+x dist/cli.js && mkdir -p dist-min && for f in dist/*.js; do terser --module --mangle module --keep-fnames --source-map -o dist-min/$(basename $f) -- $f; done && cp dist/*.d.ts dist-min",
        "build-extension": "cd vscode-extension && tsc -p .",
        "build-all": "npm run build && npm run build-docs && npm run build-extension",
        "build-docs": "typedoc && npx esbuild docs/livecode.js --bundle --format=esm --splitting --minify --outdir=dist-docs/assets/livecode && cp docs/theme/style.css docs/theme/highlight.css dist-docs/assets/ && cp tabscript.png docs/favicon.ico dist-docs/ && rm -rf dist-docs/assets/tabscript && cp -r dist dist-docs/assets/tabscript && cp vscode-extension/syntaxes/tabscript.tmLanguage.json dist-docs/assets/tabscript/",
        "deploy-docs": "npm run build-docs && rsync -avz --delete dist-docs/ frank@tabscript.vanviegen.net:webcentral-projects/tabscript.vanviegen.net/public/",
        "watch": "tsc --target es2023 --module nodenext --moduleResolution nodenext --declaration --sourceMap --outDir dist src/*.ts --watch",
        "watch-extension": "cd vscode-extension && tsc -p . --watch",
        "package-extension": "npm run build-all && (rm -rf vscode-extension/tabscript ; cp -r dist vscode-extension/tabscript ) && cd vscode-extension && vsce package",
        "test": "npm run test-ts && npm run test-js && npm run test-er && npm run test-markup && npm run test-log && npm run test-inspect && npm run test-npm-plugin && echo OK",
        "test-ts": "./dist/cli.js tests/test.tab --output /dev/stdout | diff -u tests/test.ts -",
        "test-js": "./dist/cli.js tests/test.tab --js --output /dev/stdout | diff -u tests/test.js -",
        "test-er": "./dist/cli.js tests/error.tab --recover --output /dev/stdout 2> /dev/null | diff -u tests/error.ts -",
        "test-markup": "./dist/cli.js tests/markup.tab --output /dev/stdout | diff -u tests/markup.ts -",
        "test-log": "./dist/cli.js tests/log.tab --output /dev/stdout | diff -u tests/log.ts -",
        "test-inspect": "./dist/cli.js tests/inspect.tab --output /dev/stdout | diff -u tests/inspect.ts -",
        "test-npm-plugin": "rm -rf node_modules/fake-npm-package && ln -sf ../tests/fake-npm-package node_modules/fake-npm-package && ./dist/cli.js tests/npm-plugin.tab --whitespace pretty --output /dev/stdout | diff -u tests/npm-plugin.ts -",
        "prepack": "npm run build && npm run test"
    },
    "repository": {
        "type": "git",
        "url": "git+https://github.com/vanviegen/tabscript.git"
    },
    "bin": "dist/cli.js",
    "keywords": [
        "typescript",
        "javascript",
        "transpile",
        "dsl",
        "plugin",
        "indentation"
    ],
    "author": "Frank van Viegen",
    "license": "MIT",
    "bugs": {
        "url": "https://github.com/vanviegen/tabscript/issues"
    },
    "homepage": "https://github.com/vanviegen/tabscript#readme",
    "devDependencies": {
        "@shikijs/langs": "^3.19.0",
        "@shikijs/themes": "^3.19.0",
        "@shikijs/monaco": "^3.20.0",
        "@types/node": "^24.10.0",
        "@types/vscode": "^1.85.0",
        "@typescript-eslint/eslint-plugin": "^6.13.0",
        "@typescript-eslint/parser": "^6.13.0",
        "@vscode/vsce": "^2.22.0",
        "esbuild": "^0.27.1",
        "eslint": "^8.55.0",
        "shiki": "^3.19.0",
        "terser": "^5.39.0",
        "typedoc": "^0.28.2",
        "typedoc-github-theme": "^0.3.1",
        "typescript": "^5.8.3"
    },
    "type": "module",
    "types": "dist-min/tabscript.d.ts",
    "dependencies": {
    }
}
