{
    "name": "mathjslab",
    "version": "1.9.1",
    "description": "MathJSLab - An interpreter with language syntax like MATLAB®/Octave, ISBN 978-65-00-82338-7.",
    "keywords": [
        "MathJSLab",
        "Mathematics",
        "Educational",
        "MATLAB",
        "Octave",
        "MathML",
        "ANTLR",
        "ANTLR4",
        "math",
        "lexer",
        "parser",
        "grammar",
        "interpreter"
    ],
    "homepage": "https://mathjslab.com/",
    "bugs": {
        "url": "https://github.com/MathJSLab/mathjslab/issues"
    },
    "repository": {
        "type": "git",
        "url": "git+https://github.com/MathJSLab/mathjslab.git"
    },
    "license": "MIT",
    "author": "Sergio Lindau <sergiolindau@gmail.com>",
    "type": "module",
    "exports": {
        ".": {
            "types": "./lib/src/lib.d.ts",
            "node": {
                "import": "./lib/mathjslab.node.esm2022.js",
                "require": "./lib/mathjslab.node.cjs2022.js"
            },
            "browser": {
                "import": "./lib/mathjslab.web.esm2022.js"
            },
            "default": "./lib/mathjslab.web.esm2022.js"
        },
        "./node-esm": {
            "types": "./lib/src/lib.d.ts",
            "default": "./lib/mathjslab.node.esm2022.js"
        },
        "./node-cjs": {
            "types": "./lib/src/lib.d.ts",
            "default": "./lib/mathjslab.node.cjs2022.js"
        },
        "./node-cjs-es2015": {
            "types": "./lib/src/lib.d.ts",
            "default": "./lib/mathjslab.node.cjs2015.js"
        },
        "./web-esm": {
            "types": "./lib/src/lib.d.ts",
            "default": "./lib/mathjslab.web.esm2022.js"
        },
        "./web-umd": {
            "types": "./lib/src/lib.d.ts",
            "default": "./lib/mathjslab.web.umd2022.js"
        },
        "./web-umd-es2015": {
            "types": "./lib/src/lib.d.ts",
            "default": "./lib/mathjslab.web.umd2015.js"
        }
    },
    "main": "lib/mathjslab.web.esm2022.js",
    "module": "lib/mathjslab.web.esm2022.js",
    "browser": {
        "./node-cjs": "./lib/mathjslab.web.umd2022.js",
        "./node-esm": "./lib/mathjslab.web.esm2022.js",
        "fs": false,
        "os": false,
        "path": false
    },
    "types": "lib/src/lib.d.ts",
    "files": [
        "lib/",
        "CHANGES.md",
        "CODE_OF_CONDUCT.md",
        "CONTRIBUTING.md",
        "LICENSE",
        "mathjslab.bib",
        "README.md"
    ],
    "scripts": {
        "clean:package-lock": "node script/helper/clean-package-lock.cjs",
        "clean:build": "shx rm -rf lib report",
        "clean:repository": "shx rm -rf repo",
        "clean:resources": "shx rm -rf res",
        "clean:key": "shx rm -rf ./src/ComplexConfigKeyTable.ts ./src/ComplexInterfaceKeyTable.ts ./src/ComplexInterfaceStaticKeyTable.ts",
        "clean:parser:src": "shx rm -rf ./src/MathJSLabLexer.ts ./src/MathJSLabParser.ts",
        "clean:parser:tokens:interp": "shx rm -rf ./src/.antlr ./src/MathJSLabLexer.tokens ./src/MathJSLabLexer.interp ./src/MathJSLabParser.tokens ./src/MathJSLabParser.interp",
        "clean:parser": "npm run clean:parser:src && npm run clean:parser:tokens:interp",
        "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:build && npm run clean:parser && npm run clean:key",
        "clean:all": "npm run clean && npm run clean:resources && 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",
        "copy:repository": "shx cp repo/.github/script/helper/copy-repo-files.ts script/helper/copy-repo-files.ts && shx cp repo/.github/resource/mathjslab/copy.repo.config.json copy.repo.config.json && npm run tsx -- script/helper/copy-repo-files.ts",
        "clone:copy:clean:repository": "npm run clone:repository && npm run copy:repository && npm run clean:repository",
        "get:antlr": "npm run tsx script/get-antlr.ts",
        "install:all": "npm install && npm run clone:copy:clean:repository && npm run get:antlr",
        "update": "npx npm-check-updates -u && npm run install:all",
        "format": "prettier --write **/*.{js,cjs,mjs,ts,cts,mts,json,md}",
        "lint": "eslint --fix",
        "format:lint": "npm run format && npm run lint",
        "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",
        "npm:publish": "npm publish --access public",
        "git:all:npm:publish": "npm run git:all && npm run npm:publish",
        "tsx": "tsx --require tsconfig-paths/register",
        "npx:tsx": "npx tsx",
        "build:parser": "cross-env CLASSPATH=./res/antlr-complete.jar java org.antlr.v4.Tool ./src/MathJSLabLexer.g4 ./src/MathJSLabParser.g4 -Dlanguage=TypeScript -no-visitor -no-listener -o ./src/",
        "build:key": "npm run tsx script/build-key.ts",
        "build:types": "tsc --project tsconfig.types.es2022.json",
        "build:parser:key:types": "npm run build:parser && npm run build:key && npm run build:types",
        "test:circ": "madge --circular src/ --extensions ts || shx true",
        "test:unit": "jest --selectProjects unit-tests",
        "test:lapack": "jest --selectProjects lapack-tests --runInBand --verbose",
        "test:evaluator": "jest --selectProjects evaluator-tests --runInBand --verbose",
        "test:node": "jest --selectProjects node-cjs2015-tests node-cjs2022-tests node-esm2022-tests",
        "test:web": "jest --selectProjects web-umd2015-tests web-umd2022-tests web-esm2022-tests",
        "test:bundle": "jest --selectProjects node-cjs2015-tests node-cjs2022-tests node-esm2022-tests web-umd2015-tests web-umd2022-tests web-esm2022-tests",
        "test:circ:unit": "npm run test:circ && npm run test:unit",
        "test:watch": "jest --watch",
        "build:package": "npm run tsx -- ./node_modules/webpack/bin/webpack",
        "build:dev": "npm run build:package -- --mode development",
        "build:prod": "npm run build:package -- --mode production",
        "build": "npm run build:prod",
        "do:all": "npm run clean:all && npm run update && npm run build:parser:key:types && npm run format:lint && npm run test:circ:unit && npm run build && npm run test:bundle && npm run git:all:npm:publish && echo script \"do:all\" finished."
    },
    "dependencies": {
        "antlr4": "^4.13.2",
        "decimal.js": "^10.6.0",
        "globalthis": "^1.0.4"
    },
    "devDependencies": {
        "@types/eslint-config-prettier": "^6.11.3",
        "@types/jest": "^30.0.0",
        "@types/node": "^25.1.0",
        "@types/turndown": "^5.0.6",
        "@types/webpack": "^5.28.5",
        "@types/webpack-bundle-analyzer": "^4.7.0",
        "@typescript-eslint/eslint-plugin": "^8.54.0",
        "@typescript-eslint/parser": "^8.54.0",
        "ajv": "^8.17.1",
        "cross-env": "^10.1.0",
        "eslint": "^9.39.2",
        "eslint-config-prettier": "^10.1.8",
        "eslint-import-resolver-typescript": "^4.4.4",
        "eslint-plugin-import": "^2.32.0",
        "eslint-plugin-jest": "^29.12.1",
        "eslint-plugin-prettier": "^5.5.5",
        "jest": "^30.2.0",
        "jest-environment-jsdom": "^30.2.0",
        "jsdom": "^27.4.0",
        "license-webpack-plugin": "^4.0.2",
        "madge": "^8.0.0",
        "node-html-parser": "^7.0.2",
        "prettier": "^3.8.1",
        "shx": "^0.4.0",
        "ts-jest": "^29.4.6",
        "ts-loader": "^9.5.4",
        "ts-node": "^10.9.2",
        "tsconfig-paths": "^4.2.0",
        "tsx": "^4.21.0",
        "turndown": "^7.2.2",
        "typescript": "^5.9.3",
        "webpack": "^5.104.1",
        "webpack-bundle-analyzer": "^5.2.0",
        "webpack-cli": "^6.0.1"
    },
    "engines": {
        "node": ">=16",
        "npm": ">=8",
        "pnpm": "false",
        "yarn": "false"
    }
}
