mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-15 00:38:52 +00:00
[TS] Add single-file ts codegen & bazel rule for typescript (#7161)
The headline here is adding a flatbuffer_ts_library rule for generating typescript code in bazel. This entails some non-trivial other changes, but ideally none are user-visible. In particular: * Added a --ts-flat-file flag that generates a single *_generated.ts file instead of separate files for each typescript type. This makes bazel much happier. * Import the bazel rules_nodejs stuff needed to support building typescript in bazel * Move flatbuffers.ts to index.ts because I wasn't sure how to make bazel comprehend the "main" attribute of the package.json. Happy to take another stab at figuring that out if really needed. * Fix another couple keyword escaping spots in typescript...
This commit is contained in:
39
ts/BUILD.bazel
Normal file
39
ts/BUILD.bazel
Normal file
@@ -0,0 +1,39 @@
|
||||
load("@npm//@bazel/typescript:index.bzl", "ts_project")
|
||||
load("@build_bazel_rules_nodejs//:index.bzl", "js_library")
|
||||
|
||||
ts_project(
|
||||
name = "flatbuffers_ts",
|
||||
srcs = [
|
||||
"builder.ts",
|
||||
"byte-buffer.ts",
|
||||
"constants.ts",
|
||||
"encoding.ts",
|
||||
"index.ts",
|
||||
"types.ts",
|
||||
"utils.ts",
|
||||
],
|
||||
declaration = True,
|
||||
tsconfig = {
|
||||
"compilerOptions": {
|
||||
"module": "commonjs",
|
||||
"declaration": True,
|
||||
"moduleResolution": "node",
|
||||
"lib": [
|
||||
"ES2015",
|
||||
"ES2020.BigInt",
|
||||
"DOM",
|
||||
],
|
||||
"types": ["node"],
|
||||
"strict": True,
|
||||
},
|
||||
},
|
||||
visibility = ["//visibility:public"],
|
||||
deps = ["@npm//@types/node"],
|
||||
)
|
||||
|
||||
js_library(
|
||||
name = "flatbuffers",
|
||||
package_name = "flatbuffers",
|
||||
visibility = ["//visibility:public"],
|
||||
deps = [":flatbuffers_ts"],
|
||||
)
|
||||
Reference in New Issue
Block a user