{
    "name": "mathjslab-app",
    "version": "1.8.6",
    "description": "MathJSLab - An interpreter with language syntax like MATLAB®/Octave, ISBN 978-65-00-82338-7. A demo application from the mathjslab npm package, ISBN 978-65-00-84828-1.",
    "repository": {
        "type": "git",
        "url": "git+https://github.com/MathJSLab/mathjslab-app.git"
    },
    "keywords": [
        "MathJSLab",
        "Mathematics",
        "Educational",
        "MATLAB",
        "Octave",
        "MathML",
        "ANTLR",
        "ANTLR4",
        "math",
        "lexer",
        "parser",
        "grammar",
        "interpreter"
    ],
    "author": "MathJSLab <mathjslab@gmail.com>",
    "license": "MIT",
    "bugs": {
        "url": "https://github.com/MathJSLab/mathjslab-app/issues"
    },
    "homepage": "https://mathjslab.com/",
    "type": "module",
    "scripts": {
        "clean:package-lock": "node script/helper/clean-package-lock.cjs",
        "clean:eleventy": "shx rm -rf dist/example/en dist/example/es dist/example/pt sitemap.xml mathjslab-en.bib mathjslab-pt.bib mathjslab-es.bib src/styles/constants.json",
        "clean:build": "shx rm -rf dist report src/first-example.json src/build-configuration.json",
        "clean:repository": "shx rm -rf repo",
        "clean:script": "shx rm -rf script/build",
        "clean:android": "shx rm -rf android",
        "clean:webapp": "npm run clean:android",
        "clean:eleventy:build:script:webapp": "npm run clean:eleventy && npm run clean:build && npm run clean:script && npm run clean:webapp",
        "clean:copy": "npm run npx:tsx -- script/helper/copy-repo-files.ts clean && npx shx rm -rf script/helper/copy-repo-files.ts && npx shx rm -rf copy.repo.config.json",
        "clean": "npm run clean:eleventy:build:script:webapp",
        "clean:all": "npm run clean && npm run clean:package-lock && npm run clean:copy",
        "clone:repository": "shx rm -rf repo && shx mkdir -p repo && git clone https://github.com/MathJSLab/.github.git repo/.github",
        "precopy:repository": "shx cp repo/.github/script/helper/copy-repo-files.ts script/helper/copy-repo-files.ts && shx cp repo/.github/resource/mathjslab-app/copy.repo.config.json copy.repo.config.json",
        "copy:repository": "npm run tsx -- script/helper/copy-repo-files.ts",
        "set:prettierrc": "node -e \"import fs from 'fs';const f='.prettierrc';let j=JSON.parse(fs.readFileSync(f));j.overrides.filter((c)=>c.files==='*.md')[0].options.printWidth=79;fs.writeFileSync(f,JSON.stringify(j,null,2));\"",
        "clone:copy:clean:repository": "npm run clone:repository && npm run copy:repository && npm run clean:repository",
        "postclone:copy:clean:repository": "npm run set:prettierrc",
        "install:capacitor": "npm install @capacitor/core && npm install --save-dev @capacitor/cli",
        "remove:capacitor": "npm remove @capacitor/core @capacitor/cli",
        "install:android": "npm install @capacitor/android",
        "remove:android": "npm remove @capacitor/android",
        "install:webapp": "npm run install:capacitor && npm run install:android",
        "remove:webapp": "npm run remove:android && npm run remove:capacitor",
        "install:approve:all": "npm install-scripts approve --all && npm install",
        "install:all": "npm install && npm run clone:copy:clean:repository && npm run clean && npm run build:script",
        "update": "npx npm-check-updates -u -x typescript,@types/node,chalk && npm run install:all",
        "pregit:add": "replace-in-file --verbose --configFile=replace.fix-linebreak.json",
        "git:add": "git add .",
        "git:commit": "node script/helper/git-commit.cjs",
        "git:push": "git push",
        "git:all": "npm run git:add && npm run git:commit && npm run git:push",
        "tsx": "tsx --require tsconfig-paths/register",
        "npx:tsx": "npx tsx",
        "crono:start": "npm run tsx script/helper/mark-crono.ts -- start",
        "crono:mark": "npm run tsx script/helper/mark-crono.ts -- mark",
        "crono:stop": "npm run tsx script/helper/mark-crono.ts -- stop",
        "format": "prettier --plugin=@prettier/plugin-xml --write **/*.{ts,tsx,js,jsx,cjs,mjs,css,scss,html,htm,json,jsonc,yml,yaml,xml,svgmd,yml,yaml}",
        "postformat": "replace-in-file --verbose --configFile=replace.fix-linebreak.json",
        "lint": "eslint --fix",
        "format:lint": "npm run format && npm run lint",
        "build:script": "tsc --project script/tsconfig.json",
        "build:eleventy": "node eleventy.build.mjs",
        "build:assets": "node script/build-assets.cjs",
        "prebuild:dev": "npm run build:eleventy &&  npm run build:assets",
        "build:development": "tsx --require tsconfig-paths/register ./node_modules/webpack-dev-server/bin/webpack-dev-server --mode development",
        "build:production": "tsx --require tsconfig-paths/register ./node_modules/webpack/bin/webpack --mode production",
        "build:dev": "npm run build:development",
        "prebuild:debug": "cross-env DEBUG=true npm run prebuild:dev",
        "build:debug": "npm run build:development",
        "prebuild:prod": "npm run prebuild:dev",
        "build:prod": "npm run build:production",
        "build": "npm run build:prod",
        "add:android": "npx cap add android",
        "sync:android": "npx cap sync android",
        "build:add:android": "npm run build && npm run add:android",
        "build:sync:android": "npm run build && npm run sync:android",
        "open:android": "npx cap open android",
        "build:add:open:android": "npm run build:add:android && npm run open:android",
        "build:sync:open:android": "npm run build:sync:android && npm run open:android",
        "build:all": "npm run clean && npm run update && npm run build:add:android",
        "do:all": "npm run crono:start && npm run clean:all && npm run update && npm run format:lint && npm run build && npm run git:all && echo script \"do:all\" finished. && npm run crono:stop"
    },
    "devDependencies": {
        "@11ty/eleventy": "^3.1.6",
        "@11ty/eleventy-img": "^7.0.0",
        "@prettier/plugin-xml": "^3.4.2",
        "@resvg/resvg-js": "^2.6.2",
        "@types/eslint-config-prettier": "^6.11.3",
        "@types/node": "^26.1.1",
        "@types/plotly.js-dist-min": "^2.3.4",
        "@types/webpack": "^5.28.5",
        "@types/webpack-bundle-analyzer": "^4.7.0",
        "@types/wicg-file-system-access": "^2023.10.7",
        "@typescript-eslint/eslint-plugin": "^8.67.0",
        "@typescript-eslint/parser": "^8.67.0",
        "ajv": "^8.20.0",
        "chalk": "^5.6.2",
        "chevrotain": "^13.2.0",
        "coffeescript": "^2.7.0",
        "cross-env": "^10.1.0",
        "cson": "^8.4.0",
        "css-loader": "^7.1.4",
        "eslint": "^10.9.0",
        "eslint-config-prettier": "^10.1.8",
        "eslint-plugin-import": "^2.32.0",
        "eslint-plugin-prettier": "^5.5.6",
        "globals": "^17.11.0",
        "html-loader": "^5.1.0",
        "html-webpack-plugin": "^5.6.8",
        "intl-messageformat": "^11.2.14",
        "jimp": "^1.6.1",
        "json5": "^2.2.3",
        "mini-css-extract-plugin": "^2.10.2",
        "node-html-parser": "^9.0.1",
        "png-to-ico": "^3.0.2",
        "prettier": "^3.9.6",
        "replace-in-file": "^9.0.0",
        "sass": "^1.103.1",
        "sass-loader": "^17.0.0",
        "sass-to-string": "^1.6.4",
        "shx": "^0.4.0",
        "smol-toml": "^1.8.0",
        "style-loader": "^4.0.0",
        "ts-loader": "^9.6.2",
        "ts-node": "^10.9.2",
        "tsconfig-paths": "^4.2.0",
        "tsx": "^4.23.12",
        "typescript": "^6.0.3",
        "uuid": "^14.0.2",
        "webpack": "^5.109.2",
        "webpack-bundle-analyzer": "^5.3.2",
        "webpack-cli": "^7.2.2",
        "webpack-dev-server": "^6.0.0",
        "yaml": "^2.9.0"
    },
    "dependencies": {
        "marked": "^18.0.10",
        "mathjslab": "^2.5.1",
        "mermaid": "^11.17.0",
        "plotly.js-dist-min": "^3.7.0"
    },
    "overrides": {
        "mermaid": {
            "chevrotain": "$chevrotain"
        }
    },
    "allowScripts": {
        "@parcel/watcher@2.6.0": true,
        "esbuild@0.28.2": true
    }
}
