Skip to content

Commit 74b2c7c

Browse files
committed
esm support
1 parent cbcf391 commit 74b2c7c

27 files changed

+243
-121
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,8 @@ cockroach-data
141141

142142
#custom
143143
archives
144+
esm/
145+
cjs/
144146
example/src/enums.ts
145147
packages/idea-language/client/package-lock.json
146148
packages/idea-language/server/package-lock.json

example/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
},
99
"devDependencies": {
1010
"@types/node": "22.9.3",
11-
"@stackpress/idea": "0.4.6",
11+
"@stackpress/idea": "0.4.10",
1212
"ts-morph": "24.0.0",
1313
"ts-node": "10.9.2",
1414
"typescript": "5.7.2"

packages/idea-parser/index.d.ts

Lines changed: 0 additions & 1 deletion
This file was deleted.

packages/idea-parser/index.js

Lines changed: 0 additions & 3 deletions
This file was deleted.

packages/idea-parser/package.json

Lines changed: 91 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
{
2+
"type": "module",
23
"name": "@stackpress/idea-parser",
3-
"version": "0.4.6",
4+
"version": "0.4.10",
45
"license": "Apache-2.0",
56
"description": "Parses ideas to AST and readable JSON.",
67
"author": "Chris <chris@incept.asia>",
@@ -18,29 +19,109 @@
1819
"idea",
1920
"stackpress"
2021
],
21-
"main": "index.js",
22-
"types": "index.d.ts",
22+
"main": "./cjs/index.js",
23+
"module": "./esm/index.js",
24+
"types": "./cjs/index.d.ts",
25+
"exports": {
26+
".": {
27+
"require": "./cjs/index.js",
28+
"import": "./esm/index.js"
29+
},
30+
"./types": {
31+
"require": "./cjs/types.js",
32+
"import": "./esm/types.js"
33+
},
34+
"./definitions": {
35+
"require": "./cjs/definitions.js",
36+
"import": "./esm/definitions.js"
37+
},
38+
"./Compiler": {
39+
"require": "./cjs/Compiler.js",
40+
"import": "./esm/Compiler.js"
41+
},
42+
"./Exception": {
43+
"require": "./cjs/Exception.js",
44+
"import": "./esm/Exception.js"
45+
},
46+
"./Lexer": {
47+
"require": "./cjs/Lexer.js",
48+
"import": "./esm/Lexer.js"
49+
},
50+
"./AbstractTree": {
51+
"require": "./cjs/tree/AbstractTree.js",
52+
"import": "./esm/tree/AbstractTree.js"
53+
},
54+
"./EnumTree": {
55+
"require": "./cjs/tree/EnumTree.js",
56+
"import": "./esm/tree/EnumTree.js"
57+
},
58+
"./ModelTree": {
59+
"require": "./cjs/tree/ModelTree.js",
60+
"import": "./esm/tree/ModelTree.js"
61+
},
62+
"./PluginTree": {
63+
"require": "./cjs/tree/PluginTree.js",
64+
"import": "./esm/tree/PluginTree.js"
65+
},
66+
"./PropTree": {
67+
"require": "./cjs/tree/PropTree.js",
68+
"import": "./esm/tree/PropTree.js"
69+
},
70+
"./SchemaTree": {
71+
"require": "./cjs/tree/SchemaTree.js",
72+
"import": "./esm/tree/SchemaTree.js"
73+
},
74+
"./TypeTree": {
75+
"require": "./cjs/tree/TypeTree.js",
76+
"import": "./esm/tree/TypeTree.js"
77+
},
78+
"./UseTree": {
79+
"require": "./cjs/tree/UseTree.js",
80+
"import": "./esm/tree/UseTree.js"
81+
}
82+
},
83+
"typesVersions": {
84+
"*": {
85+
"index": [ "./cjs/index.d.ts"],
86+
"types": [ "./cjs/types.d.ts" ],
87+
"Compiler": [ "./cjs/Compiler.d.ts" ],
88+
"Exception": [ "./cjs/Exception.d.ts" ],
89+
"Lexer": [ "./cjs/Lexer.d.ts" ],
90+
"AbstractTree": [ "./cjs/tree/AbstractTree.d.ts" ],
91+
"EnumTree": [ "./cjs/tree/EnumTree.d.ts" ],
92+
"ModelTree": [ "./cjs/tree/ModelTree.d.ts" ],
93+
"PluginTree": [ "./cjs/tree/PluginTree.d.ts" ],
94+
"PropTree": [ "./cjs/tree/PropTree.d.ts" ],
95+
"SchemaTree": [ "./cjs/tree/SchemaTree.d.ts" ],
96+
"TypeTree": [ "./cjs/tree/TypeTree.d.ts" ],
97+
"UseTree": [ "./cjs/tree/UseTree.d.ts" ]
98+
}
99+
},
23100
"files": [
24-
"dist",
25-
"index.js",
26-
"index.d.ts",
101+
"cjs",
102+
"esm",
27103
"LICENSE",
28104
"README.md"
29105
],
30106
"scripts": {
31-
"build": "tsc",
32-
"test": "cross-env DATABASE_URL=test ts-mocha tests/*.test.ts"
107+
"build": "yarn build:tsc && yarn build:pkg",
108+
"build:pkg": "yarn build:pkg:cjs && yarn build:pkg:esm",
109+
"build:pkg:cjs": "echo '{\"type\": \"commonjs\"}' > cjs/package.json",
110+
"build:pkg:esm": "echo '{\"type\": \"module\"}' > esm/package.json",
111+
"build:tsc": "yarn build:tsc:cjs && yarn build:tsc:esm",
112+
"build:tsc:cjs": "tsc -p ./tsconfig.cjs.json",
113+
"build:tsc:esm": "tsc -p ./tsconfig.esm.json",
114+
"test": "DATABASE_URL=test ts-mocha -p ./tsconfig.cjs.json tests/*.test.ts"
33115
},
34116
"dependencies": {
35-
"@stackpress/lib": "0.4.6"
117+
"@stackpress/lib": "0.4.10"
36118
},
37119
"devDependencies": {
38120
"@types/chai": "4.3.20",
39121
"@types/deep-equal-in-any-order": "1.0.3",
40122
"@types/mocha": "10.0.10",
41123
"@types/node": "22.9.3",
42124
"chai": "4.5.0",
43-
"cross-env": "7.0.3",
44125
"deep-equal-in-any-order": "1.1.20",
45126
"mocha": "10.8.2",
46127
"ts-mocha": "10.0.0",
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
import Exception from '@stackpress/lib/dist/Exception';
1+
import Exception from '@stackpress/lib/Exception';
22

33
export default class IdeaException extends Exception {}
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"extends": "@stackpress/lib/tsconfig/cjs",
3+
"compilerOptions": {
4+
"outDir": "cjs/"
5+
},
6+
"include": [ "src/**/*.ts" ],
7+
"exclude": [ "esm", "cjs", "node_modules", "tests" ]
8+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"extends": "@stackpress/lib/tsconfig/esm",
3+
"compilerOptions": {
4+
"moduleResolution": "node",
5+
"outDir": "esm/"
6+
},
7+
"include": [ "src/**/*.ts" ],
8+
"exclude": [ "esm", "cjs", "node_modules", "tests" ]
9+
}

packages/idea-parser/tsconfig.json

Lines changed: 2 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,3 @@
11
{
2-
"compilerOptions": {
3-
"declaration": true,
4-
"esModuleInterop": true,
5-
"lib": [ "es2021", "es7", "es6", "dom" ],
6-
"module": "commonjs",
7-
"noUnusedLocals": true,
8-
"outDir": "./dist/",
9-
"preserveConstEnums": true,
10-
"resolveJsonModule": true,
11-
"removeComments": true,
12-
"sourceMap": false,
13-
"strict": true,
14-
"target": "es6",
15-
"skipLibCheck": true
16-
},
17-
"include": [ "src/**/*.ts" ],
18-
"exclude": [ "dist", "docs", "node_modules", "tests" ]
19-
}
2+
"extends": "./tsconfig.esm"
3+
}

packages/idea-transformer/index.d.ts

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)