anki/ts/lib/proto.bzl
Damien Elmes aea0a6fcc6 initial Bazel conversion
Running and testing should be working on the three platforms, but
there's still a fair bit that needs to be done:

- Wheel building + testing in a venv still needs to be implemented.
- Python requirements still need to be compiled with piptool and pinned;
need to compile on all platforms then merge
- Cargo deps in cargo/ and rslib/ need to be cleaned up, and ideally
unified into one place
- Currently using rustls to work around openssl compilation issues
on Linux, but this will break corporate proxies with custom SSL
authorities; need to conditionally use openssl or use
https://github.com/seanmonstar/reqwest/pull/1058
- Makefiles and docs still need cleaning up
- It may make sense to reparent ts/* to the top level, as we don't
nest the other modules under a specific language.
- rspy and pylib must always be updated in lock-step, so merging
rspy into pylib as a private module would simplify things.
- Merging desktop-ftl and mobile-ftl into the core ftl would make
managing and updating translations easier.
- Obsolete scripts need removing.
- And probably more.
2020-11-01 14:26:58 +10:00

60 lines
1.3 KiB
Python

load("@npm//protobufjs-cli-taylorm:index.bzl", "pbjs", "pbts")
def protobuf_ts(name, src):
pbjs(
name = "%s_js" % name,
outs = ["%s.mjs" % name],
args = [
"-t",
"json-module",
"-w",
"es6",
"$(execpath %s)" % src,
"-o",
"$(execpath %s.mjs)" % name,
],
data = [
src,
"@npm//protobufjs-taylorm",
],
)
pbjs(
name = "%s_js_static" % name,
outs = ["%s.static.js" % name],
args = [
"-t",
"static-module",
"$(execpath %s)" % src,
"-o",
"$(execpath %s.static.js)" % name,
],
data = [
src,
"@npm//protobufjs-taylorm",
],
)
pbts(
name = "%s_ts" % name,
outs = ["%s.d.ts" % name],
args = [
"-w",
"es6",
"$(execpath :%s.static.js)" % name,
"-o",
"$(execpath %s.d.ts)" % name,
],
data = [
":%s.static.js" % name,
],
)
# native.filegroup(
# name = name,
# srcs = [
# "%s.js" % name,
# "%s.d.ts" % name,
# ],
# )