-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpackage.json
More file actions
98 lines (98 loc) · 4.63 KB
/
package.json
File metadata and controls
98 lines (98 loc) · 4.63 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
{
"name": "@configuredthings/rdp.js",
"version": "0.7.0",
"description": "A minimal typed base class for writing recursive descent parsers in TypeScript, with a focus on ease of use and extensibility. Also includes a CLI tool that can generate parsers from EBNF or ABNF grammars, with support for generating scaffolding for tree walkers, interpreters, facades, semantic validation piepelines, and two-way transformers",
"author": {
"name": "Configured Things Ltd.",
"email": "engineering@configuredthings.com",
"url": "https://configuredthings.com/"
},
"repository": "github:ConfiguredThings/RDP.js",
"bugs": {
"url": "https://github.com/ConfiguredThings/RDP.js/issues"
},
"keywords": [
"parser",
"recursive-descent",
"typescript",
"ebnf",
"abnf",
"ll1",
"parser-generator",
"grammar"
],
"license": "MIT",
"type": "module",
"bin": {
"rdp-gen": "./dist/esm/cli/rdp-gen.js"
},
"exports": {
".": {
"import": "./dist/esm/index.js",
"require": "./dist/cjs/index.js",
"types": "./dist/esm/index.d.ts"
},
"./observable": {
"import": "./dist/esm/observable/index.js",
"require": "./dist/cjs/observable/index.js",
"types": "./dist/esm/observable/index.d.ts"
},
"./generator": {
"import": "./dist/esm/generator/index.js",
"require": "./dist/cjs/generator/index.js",
"types": "./dist/esm/generator/index.d.ts"
},
"./interpreter": {
"import": "./dist/esm/interpreter/index.js",
"require": "./dist/cjs/interpreter/index.js",
"types": "./dist/esm/interpreter/index.d.ts"
},
"./grammars": {
"import": "./dist/esm/grammars/index.js",
"require": "./dist/cjs/grammars/index.js",
"types": "./dist/esm/grammars/index.d.ts"
}
},
"publishConfig": {
"registry": "https://npm.pkg.github.com"
},
"main": "./dist/cjs/index.js",
"module": "./dist/esm/index.js",
"types": "./dist/esm/index.d.ts",
"files": [
"dist"
],
"engines": {
"node": ">=22",
"npm": ">=10"
},
"scripts": {
"clean": "rm -rf dist",
"generate:grammars": "node scripts/generate-grammar-index.mjs",
"pretest": "npm run generate:grammars",
"prebuild": "npm run clean && npm run generate:grammars",
"build": "tsc -p tsconfig.cjs.json && tsc -p tsconfig.esm.json",
"test": "node --experimental-vm-modules --no-warnings=ExperimentalWarning node_modules/.bin/jest",
"lint": "eslint src docs-site/src",
"docs": "npm --prefix docs-site run render-header && npx --prefix docs-site typedoc",
"prepare": "husky",
"generate": "node dist/esm/cli/rdp-gen.js",
"generate:meta": "mkdir -p src/parsers/generated && node dist/esm/cli/rdp-gen.js src/grammars/ebnf-meta.ebnf --parser-name EBNFInEBNFParser --output src/parsers/generated/ebnf-in-ebnf-parser.ts && node dist/esm/cli/rdp-gen.js src/grammars/ebnf-meta.abnf --parser-name EBNFInABNFParser --output src/parsers/generated/ebnf-in-abnf-parser.ts && node dist/esm/cli/rdp-gen.js src/grammars/abnf-meta.ebnf --parser-name ABNFInEBNFParser --output src/parsers/generated/abnf-in-ebnf-parser.ts && node dist/esm/cli/rdp-gen.js src/grammars/abnf-meta.abnf --parser-name ABNFInABNFParser --output src/parsers/generated/abnf-in-abnf-parser.ts",
"generate:examples": "mkdir -p examples/arith && cp src/grammars/arith.ebnf examples/arith/arith.ebnf && node dist/esm/cli/rdp-gen.js src/grammars/arith.ebnf --parser-name ArithParser --tree-name ArithTree --output examples/arith/ArithParser.ts && node dist/esm/cli/rdp-gen.js src/grammars/arith.ebnf --parser-name ArithParser --traversal interpreter --output examples/arith/arith-evaluator.ts && node dist/esm/cli/rdp-gen.js src/grammars/arith.ebnf --parser-name ArithParser --traversal interpreter --facade --output examples/arith/arith-facade.ts && node dist/esm/cli/rdp-gen.js src/grammars/arith.ebnf --parser-name ArithParser --traversal tree-walker --pipeline --output examples/arith/arith-pipeline.ts && node dist/esm/cli/rdp-gen.js src/grammars/arith.ebnf --parser-name ArithParser --tree-name ArithTree --traversal tree-walker --output examples/arith/arith-walker.ts && node dist/esm/cli/rdp-gen.js src/grammars/arith.ebnf --ast-only --output examples/arith/arith-ast.json",
"prepublishOnly": "git diff-files --quiet"
},
"devDependencies": {
"@types/jest": "^30.0.0",
"@types/node": "^25.6.0",
"eslint": "^10.2.1",
"eslint-config-prettier": "^10.1.8",
"eslint-plugin-prettier": "^5.5.5",
"husky": "^9.1.7",
"jest": "^30.3.0",
"lint-staged": "^16.4.0",
"prettier": "^3.8.3",
"ts-jest": "^29.4.9",
"typescript": "^6.0.3",
"typescript-eslint": "^8.59.1"
}
}