diff --git a/npm-packages/cadence-parser/package.json b/npm-packages/cadence-parser/package.json index 4bc2b2b221..97d97603dd 100644 --- a/npm-packages/cadence-parser/package.json +++ b/npm-packages/cadence-parser/package.json @@ -20,8 +20,8 @@ "scripts": { "build": "npm run build:types && npm run build:esm && npm run build:cjs && GOARCH=wasm GOOS=js go build -o ./dist/cadence-parser.wasm ../../runtime/cmd/parse", "build:types": "tsc --emitDeclarationOnly --module system --outDir dist/types", - "build:esm": "tsc --module es6 --target es6 --outDir dist/esm --declaration false", - "build:cjs": "tsc --module commonjs --target es6 --outDir dist/cjs --declaration false", + "build:esm": "tsc -p tsconfig.json --declaration false", + "build:cjs": "tsc -p tsconfig-cjs.json --declaration false && tsconfig-to-dual-package", "test": "jest" }, "license": "Apache-2.0", @@ -31,6 +31,7 @@ "jest": "^28.1.2", "node-fetch": "^2.6.1", "ts-jest": "^28.0.5", + "tsconfig-to-dual-package": "^1.2.0", "typescript": "^4.7.4" }, "files": [ diff --git a/npm-packages/cadence-parser/src/index.ts b/npm-packages/cadence-parser/src/index.ts index ed0ffb8545..6e583d0ac5 100644 --- a/npm-packages/cadence-parser/src/index.ts +++ b/npm-packages/cadence-parser/src/index.ts @@ -16,7 +16,7 @@ * limitations under the License. */ -import { go } from './go' +import { go } from './go.js' import WebAssemblyInstantiatedSource = WebAssembly.WebAssemblyInstantiatedSource declare global { diff --git a/npm-packages/cadence-parser/tests/index.test.ts b/npm-packages/cadence-parser/tests/index.test.ts index 21b6ff7eec..7b35eda3eb 100644 --- a/npm-packages/cadence-parser/tests/index.test.ts +++ b/npm-packages/cadence-parser/tests/index.test.ts @@ -8,114 +8,79 @@ test("parse simple", async () => { expect(res).toEqual({ "program": { "Type": "Program", - "Declarations": [ - { - "Access": "AccessPublic", - "DocString": "", - "EndPos": { - "Column": 16, - "Line": 1, - "Offset": 16, + "Declarations": [ + { + "TypeParameterList": null, + "ParameterList": { + "Parameters": null, + "StartPos": { + "Offset": 12, + "Line": 1, + "Column": 12 + }, + "EndPos": { + "Offset": 13, + "Line": 1, + "Column": 13 + } }, + "ReturnTypeAnnotation": null, "FunctionBlock": { "Block": { - "EndPos": { - "Column": 16, + "Statements": null, + "StartPos": { + "Offset": 15, "Line": 1, - "Offset": 16, + "Column": 15 }, - "StartPos": { - "Column": 15, + "EndPos": { + "Offset": 16, "Line": 1, - "Offset": 15, + "Column": 16 }, - "Statements": null, - "Type": "Block", - }, - "EndPos": { - "Column": 16, - "Line": 1, - "Offset": 16, + "Type": "Block" }, + "Type": "FunctionBlock", "StartPos": { - "Column": 15, - "Line": 1, "Offset": 15, + "Line": 1, + "Column": 15 }, - "Type": "FunctionBlock", - }, - "Identifier": { "EndPos": { - "Column": 11, + "Offset": 16, "Line": 1, - "Offset": 11, - }, + "Column": 16 + } + }, + "DocString": "", + "Identifier": { "Identifier": "main", "StartPos": { - "Column": 8, - "Line": 1, "Offset": 8, - }, - }, - "ParameterList": { - "EndPos": { - "Column": 13, "Line": 1, - "Offset": 13, - }, - "Parameters": null, - "StartPos": { - "Column": 12, - "Line": 1, - "Offset": 12, - }, - }, - "ReturnTypeAnnotation": { - "AnnotatedType": { - "EndPos": { - "Column": 12, - "Line": 1, - "Offset": 12, - }, - "Identifier": { - "EndPos": { - "Column": 12, - "Line": 1, - "Offset": 12, - }, - "Identifier": "", - "StartPos": { - "Column": 13, - "Line": 1, - "Offset": 13, - }, - }, - "StartPos": { - "Column": 13, - "Line": 1, - "Offset": 13, - }, - "Type": "NominalType", + "Column": 8 }, "EndPos": { - "Column": 12, - "Line": 1, - "Offset": 12, - }, - "IsResource": false, - "StartPos": { - "Column": 13, + "Offset": 11, "Line": 1, - "Offset": 13, - }, + "Column": 11 + } }, + "Access": "AccessPublic", + "Type": "FunctionDeclaration", "StartPos": { - "Column": 0, - "Line": 1, "Offset": 0, + "Line": 1, + "Column": 0 }, - "Type": "FunctionDeclaration", - }, + "EndPos": { + "Offset": 16, + "Line": 1, + "Column": 16 + }, + "IsStatic": false, + "IsNative": false + } ], }, }) diff --git a/npm-packages/cadence-parser/tsconfig-cjs.json b/npm-packages/cadence-parser/tsconfig-cjs.json new file mode 100644 index 0000000000..f9d63e1815 --- /dev/null +++ b/npm-packages/cadence-parser/tsconfig-cjs.json @@ -0,0 +1,7 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "module": "commonjs", + "outDir": "./dist/cjs" + }, +} \ No newline at end of file diff --git a/npm-packages/cadence-parser/tsconfig.json b/npm-packages/cadence-parser/tsconfig.json index afad0b8339..cd719914a6 100644 --- a/npm-packages/cadence-parser/tsconfig.json +++ b/npm-packages/cadence-parser/tsconfig.json @@ -21,7 +21,7 @@ ], "declaration": true, "noImplicitAny": false, - "outDir": "./dist" + "outDir": "./dist/esm" }, "exclude": [ "node_modules",