This CL creates a build rule and Python script which generates
compiled bytecode for JS module input files, alongside a
corresponding manifest.json file. These compiled bytecode artifacts
will be used to improve startup performance of participating WebUI.
This CL does not integrate the rule into build_webui(). Initial
integrations will target stand-alone modules, such as lit-element,
for which an independent build rule is sufficient.
After a successful end-to-end demonstration, work will be done to
integrate this as an optional optimization step of the build_webui()
pipeline.
Invoke tests via
<build_dir>/bin/run_webui_resources_tools_python_unittests
Bug: 378504039
Change-Id: I95d2bd0d3f8d15c0b799fb047e13b40ce837bdbc
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6261546
Commit-Queue: Tom Lukaszewicz <tluk@chromium.org>
Reviewed-by: Demetrios Papadopoulos <dpapad@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1426857}