diff options
author | Björn Harrtell <bjornharrtell@users.noreply.github.com> | 2023-01-21 21:22:22 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-01-21 12:22:22 -0800 |
commit | ef76b5ece4d6ff06bebf04f42e41a50427263ae3 (patch) | |
tree | d91b74372601c7f4990f221b5722094021fdf729 /package.json | |
parent | 1703662285f5b2a2ee1a151b17755fd709ad2e13 (diff) | |
download | flatbuffers-ef76b5ece4d6ff06bebf04f42e41a50427263ae3.tar.gz flatbuffers-ef76b5ece4d6ff06bebf04f42e41a50427263ae3.tar.bz2 flatbuffers-ef76b5ece4d6ff06bebf04f42e41a50427263ae3.zip |
[TS/JS] Entry point per namespace and reworked 1.x compatible single file build (#7510)
* [TS/JS] Entry point per namespace
* Fix handling of outputpath and array_test
* Attempt to fix generate_code
* Fix cwd for ts in generate_code
* Attempt to fixup bazel and some docs
* Add --ts-flat-files to bazel build to get bundle
* Move to DEFAULT_FLATC_TS_ARGS
* Attempt to add esbuild
* Attempt to use npm instead
* Remove futile attempt to add esbuild
* Attempt to as bazel esbuild
* Shuffle
* Upgrade bazel deps
* Revert failed attempts to get bazel working
* Ignore flatc tests for now
* Add esbuild dependency
* `package.json` Include esbuild
* `WORKSPACE` Add fetching esbuild binary
* Update WORKSPACE
* Unfreeze Lockfile
* Update WORKSPACE
* Update BUILD.bazel
* Rework to suggest instead of running external bundler
* Add esbuild generation to test script
* Prelim bundle test
* Run test JavaScriptTest from flatbuffers 1.x
* Deps upgrade
* Clang format fix
* Revert bazel changes
* Fix newline
* Generate with type declarations
* Handle "empty" root namespace
* Adjust tests for typescript_keywords.ts
* Separate test procedure for old node resolution module output
* Fix rel path for root level re-exports
* Bazel support for esbuild-based flatc
Unfortunately, we lose typing information because the new esbuild method
of generating single files does not generate type information.
The method used here is a bit hack-ish because it relies on parsing the
console output of flatc to figure out what to do.
* Try to fix bazel build for when node isn't present on host
* Auto formatting fixes
* Fix missing generated code
Co-authored-by: Derek Bailey <derekbailey@google.com>
Co-authored-by: James Kuszmaul <jabukuszmaul+collab@gmail.com>
Diffstat (limited to 'package.json')
-rw-r--r-- | package.json | 26 |
1 files changed, 19 insertions, 7 deletions
diff --git a/package.json b/package.json index 1282dbe8..d3194799 100644 --- a/package.json +++ b/package.json @@ -9,8 +9,20 @@ "mjs/**/*.d.ts", "ts/**/*.ts" ], - "main": "js/index.js", - "module": "mjs/index.js", + "main": "js/flatbuffers.js", + "module": "mjs/flatbuffers.js", + "exports": { + ".": { + "node": { + "import": "./mjs/flatbuffers.js", + "require": "./js/flatbuffers.js" + }, + "default": "./js/flatbuffers.js" + }, + "./js/flexbuffers.js": { + "default": "./js/flexbuffers.js" + } + }, "directories": { "doc": "docs", "test": "tests" @@ -18,7 +30,7 @@ "scripts": { "test": "npm run compile && cd tests/ts && python3 ./TypeScriptTest.py", "lint": "eslint ts", - "compile": "tsc && tsc -p tsconfig.mjs.json && rollup -c", + "compile": "tsc && tsc -p tsconfig.mjs.json && esbuild js/flatbuffers.js --minify --global-name=flatbuffers --bundle --outfile=js/flatbuffers.min.js", "prepublishOnly": "npm install --only=dev && npm run compile" }, "repository": { @@ -38,10 +50,10 @@ "devDependencies": { "@bazel/typescript": "5.2.0", "@types/node": "18.7.16", - "@typescript-eslint/eslint-plugin": "^5.36.2", - "@typescript-eslint/parser": "^5.36.2", - "eslint": "^8.23.1", - "rollup": "^2.79.0", + "@typescript-eslint/eslint-plugin": "^5.46.0", + "@typescript-eslint/parser": "^5.46.0", + "esbuild": "^0.16.4", + "eslint": "^8.29.0", "typescript": "^4.8.3" } } |