@biscuit-auth/web-components
v0.7.0
Published
This repo is part of the [eclipse biscuit](https://github.com/biscuit-auth/biscuit) project.
Readme
biscuit-web-components
This repo is part of the eclipse biscuit project.
Biscuit web components are tools used to provide in-browser biscuit tooling. See documentation
How to update tree-sitter
Tree-sitter is packaged in a way that makes it difficult to load it up with wds, it is packaged as a CommonJS module (modifying a module.exports object) and as such does not play well with es modules.
The simplest solution I have found is to turn the CommonJS module into an ES module by adding the following at the end of the file:
await TreeSitter.init({
locateFile(scriptName, scriptDirectory) {
return "/assets/tree-sitter.wasm";
}
});
export const Parser = TreeSitter;This also calls init once, with the proper location of the wasm file.
So to update tree-sitter:
- run
npm install --no-save web-tree-sitter(check if that’s the correct version) cp node_modules/web-tree-sitter/tree-sitter.wasm assets/cp node_modules/web-tree-sitter/tree-sitter-web.d.ts ./tree-sitter.d.ts- edit
tree-sitter.d.ts- remove the
declare modulescope - remove the
export = Parser - add
exportin front ofclass Parser - add
exportin front ofnamespace Parser
- remove the
cp node_modules/web-tree-sitter/tree-sitter.js ./
cat << 'EOF' >> tree-sitter.js await TreeSitter.init({ locateFile(scriptName, scriptDirectory) { return "/assets/tree-sitter.wasm"; } }); export const Parser = TreeSitter; EOF
