| { |
| "description": "Speech Rule Engine tests with Jest", |
| "directories": { |
| "test": "tests" |
| }, |
| "type": "module", |
| "scripts": { |
| "=============================================================================== tests": "", |
| "test:all": "pnpm test:files; pnpm test:output; pnpm test:analytics", |
| "test:files": "pnpm test --silent --testPathPatterns tests/json", |
| "test:actions": "pnpm test --silent --testPathPatterns tests/actions", |
| "test:output": "pnpm test --silent --testPathPatterns tests/output", |
| "test:unit": "pnpm test --silent --testPathPatterns unit-tests", |
| "test:analytics": "pnpm rimraf analysis; pnpm test --silent --testPathPatterns tests/analyse; pnpm test:allrules", |
| "test:allrules": "export SRE_JSON_PATH=../lib/mathmaps; echo \"import('./js/module_loader.js').then((m) => m.loadPromise('at')).then(m => m.default.outputAllRules())\" | node ", |
| "analyse:tries": "export SRE_JSON_PATH=../lib/mathmaps; echo \"import('./js/module_loader.js').then((m) => m.loadPromise('atrie')).then(m => m.default.output())\" | node ", |
| "local": "pnpm local:sed && pnpm local:api", |
| "local:sed": "sed -i '0,/@jest\\/globals/{/@jest\\/globals/d;}' js/*/*.js", |
| "local:api": "START=$(grep -nm 1 \"jest\\.fn\\(\\)\" js/classes/api_test.js | cut -d: -f1); END=$(grep -nm 1 \"var Expression\" js/classes/api_test.js | cut -d: -f1); END=$((END - 1)); sed -i \"${START},${END}d\" \"js/classes/api_test.js\"", |
| "compile": "pnpm tsc", |
| "compile:local": "pnpm compile; pnpm local", |
| "prepare": "node tests.config.js", |
| "build": "pnpm clean; pnpm prepare && pnpm compile", |
| "clean": "pnpm rimraf dist js tests coverage", |
| "test": "NODE_OPTIONS='--experimental-vm-modules --no-warnings' jest", |
| "=============================================================================== smoke": "", |
| "smoke": "pnpm smoke:sync && pnpm smoke:async", |
| "smoke:sync": "NODE_OPTIONS='--experimental-vm-modules --no-warnings' jest --config jest.smoke.config.mjs smoke/sync.smoke.test.ts", |
| "smoke:async": "NODE_OPTIONS='--experimental-vm-modules --no-warnings' jest --config jest.smoke.config.mjs smoke/async.smoke.test.ts", |
| "smoke:browser": "NODE_OPTIONS='--experimental-vm-modules --no-warnings' jest --config jest.smoke.config.mjs smoke/browser.smoke.test.ts" |
| }, |
| "imports": { |
| "#js/*": "./sources/*", |
| "#mathjax/*": "@mathjax/src/mjs/*" |
| }, |
| "dependencies": { |
| "speech-rule-engine": "workspace:*" |
| }, |
| "devDependencies": { |
| "@jest/globals": "^30.3.0", |
| "@mathjax/src": "^4.1.1", |
| "@types/jest": "^30.0.0", |
| "cross-env": "^10.1.0", |
| "firebase-admin": "^13.8.0", |
| "jest": "^30.3.0", |
| "rimraf": "^6.1.3", |
| "ts-jest": "^29.4.9", |
| "ts-node": "^10.9.2", |
| "tsconfig-paths": "^4.2.0", |
| "typescript": "5.9.3", |
| "xml-js": "^1.6.11" |
| }, |
| "peerDependencies": { |
| "playwright": "^1.40.0" |
| }, |
| "peerDependenciesMeta": { |
| "playwright": { |
| "optional": true |
| } |
| } |
| } |