@codegraft/core 0.1.0-beta.10 → 0.1.0-beta.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/README.md +5 -2
  2. package/dist/collection.d.ts +10 -14
  3. package/dist/collection.d.ts.map +1 -1
  4. package/dist/collection.js +13 -24
  5. package/dist/collection.js.map +1 -1
  6. package/dist/comment-attachment.d.ts +6 -7
  7. package/dist/comment-attachment.d.ts.map +1 -1
  8. package/dist/comment-attachment.js +6 -8
  9. package/dist/comment-attachment.js.map +1 -1
  10. package/dist/containers.js +2 -2
  11. package/dist/containers.js.map +1 -1
  12. package/dist/format.js +1 -1
  13. package/dist/format.js.map +1 -1
  14. package/dist/index.d.ts +0 -1
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +0 -1
  17. package/dist/index.js.map +1 -1
  18. package/dist/internal.d.ts +2 -2
  19. package/dist/internal.d.ts.map +1 -1
  20. package/dist/internal.js +3 -3
  21. package/dist/internal.js.map +1 -1
  22. package/dist/parser.d.ts +4 -7
  23. package/dist/parser.d.ts.map +1 -1
  24. package/dist/parser.js +40 -51
  25. package/dist/parser.js.map +1 -1
  26. package/dist/resolver.js +3 -6
  27. package/dist/resolver.js.map +1 -1
  28. package/dist/rich-node.d.ts +1 -1
  29. package/dist/rich-node.d.ts.map +1 -1
  30. package/dist/rich-node.js +8 -9
  31. package/dist/rich-node.js.map +1 -1
  32. package/dist/types.d.ts +2 -1
  33. package/dist/types.d.ts.map +1 -1
  34. package/package.json +8 -21
  35. package/{LICENSE → vendor/web-tree-sitter/LICENSE} +2 -2
  36. package/vendor/web-tree-sitter/web-tree-sitter.d.ts +1021 -0
  37. package/vendor/web-tree-sitter/web-tree-sitter.js +4006 -0
  38. package/vendor/web-tree-sitter/web-tree-sitter.wasm +0 -0
  39. package/wasm/tree-sitter-css.wasm +0 -0
  40. package/wasm/tree-sitter-html.wasm +0 -0
  41. package/wasm/tree-sitter-typescript.wasm +0 -0
package/dist/parser.js CHANGED
@@ -1,34 +1,36 @@
1
- import { createRequire } from 'node:module';
2
1
  import { readFileSync } from 'node:fs';
3
2
  import { fileURLToPath } from 'node:url';
4
- import { Language, Parser as TreeSitter } from 'web-tree-sitter';
3
+ // web-tree-sitter is vendored (scripts/regen-web-tree-sitter.mjs), not a runtime dependency. The glue
4
+ // self-locates its wasm sibling via `import.meta.url`, so importing the vendored file is all it needs
5
+ // — no peer, no `locateFile`.
6
+ import { Language, Parser as TreeSitter } from '../vendor/web-tree-sitter/web-tree-sitter.js';
5
7
  import { assert } from './assert.js';
6
- // web-tree-sitter resolves the grammar `.wasm` from its npm package at runtime; the
7
- // engine wasm (`tree-sitter.wasm`) is self-located by `Parser.init()`.
8
- const require = createRequire(import.meta.url);
9
8
  /**
10
- * The typescript/tsx grammars are **vendored** here (resolved relative to this module): the npm
11
- * `tree-sitter-typescript` ships an ABI-14 wasm, which web-tree-sitter loads without supertype
12
- * metadata (so `find` can't expand `expression` etc.). We ship an ABI-15 rebuild — see
13
- * `scripts/regen-ts-wasm.sh` so they impose no peer dependency.
9
+ * Every built-in grammar ships **vendored** as wasm under `wasm/`, so a consumer of `@codegraft/*`
10
+ * needs no native `tree-sitter-*` package (no `node-gyp` build, no C++ toolchain). The wasm filename
11
+ * per {@link GrammarId}; ids absent here (`javascript`/`typescript`) fold onto another via
12
+ * {@link runtimeGrammar} and never resolve a file of their own.
13
+ *
14
+ * Provenance differs by grammar:
15
+ * - `tsx` — rebuilt from `tree-sitter-typescript`'s grammar source, because its npm wasm is ABI-14
16
+ * and loads without the supertype metadata `find('expression')` needs; see `scripts/regen-ts-wasm.sh`.
17
+ * - `html`/`css` — copied verbatim from their npm packages (already ABI-current with supertypes);
18
+ * see `scripts/regen-builtin-wasm.mjs`.
19
+ * - `yaml` — vendored from `@tree-sitter-grammars/tree-sitter-yaml` (the bare package ships no wasm).
14
20
  */
15
21
  const VENDORED_WASM = {
16
- typescript: 'tree-sitter-typescript.wasm',
17
22
  tsx: 'tree-sitter-tsx.wasm',
18
- // tree-sitter-yaml ships no prebuilt wasm on the bare `tree-sitter-yaml` package; we vendor the
19
- // one from `@tree-sitter-grammars/tree-sitter-yaml` so YAML imposes no peer dependency.
23
+ html: 'tree-sitter-html.wasm',
24
+ css: 'tree-sitter-css.wasm',
20
25
  yaml: 'tree-sitter-yaml.wasm',
21
26
  };
22
- /**
23
- * The npm specifier of each remaining built-in grammar's `.wasm` (these already ship the ABI we
24
- * need). Optional peer dependencies: resolved only when the grammar is requested, and a missing
25
- * package becomes an actionable error in `resolveBuiltinWasm`.
26
- */
27
- const PEER_WASM = {
28
- javascript: 'tree-sitter-javascript/tree-sitter-javascript.wasm',
29
- html: 'tree-sitter-html/tree-sitter-html.wasm',
30
- css: 'tree-sitter-css/tree-sitter-css.wasm',
31
- };
27
+ /** The grammar a {@link GrammarId} is parsed with at runtime — the JS/TS/TSX family shares the tsx
28
+ * superset (a runtime superset, modulo the JSX-ambiguous angle cast `<T>x` `x as T`), every other
29
+ * id is itself. So `javascript`/`typescript` never load a grammar of their own; they fold onto tsx.
30
+ * The distinction survives only in the compile-time node-type unions (narrower `find`/`type`). */
31
+ function runtimeGrammar(id) {
32
+ return id === 'javascript' || id === 'typescript' ? 'tsx' : id;
33
+ }
32
34
  let initPromise = null;
33
35
  let parser = null;
34
36
  const languages = new Map();
@@ -40,49 +42,35 @@ async function init() {
40
42
  await initPromise;
41
43
  }
42
44
  /**
43
- * Lazily load a grammar, idempotent per `id`. Built-in {@link GrammarId}s resolve
44
- * their own `.wasm`; an external grammar (e.g. a {@link ZoneSplitter}'s shell
45
- * grammar) passes its `wasmPath` and an arbitrary `id` used as the cache key.
45
+ * Lazily load a grammar, idempotent. The JS/TS/TSX family folds onto the tsx grammar
46
+ * ({@link runtimeGrammar}); every other built-in {@link GrammarId} resolves its own `.wasm`, and an
47
+ * external grammar (e.g. a {@link ZoneSplitter}'s shell) passes its `wasmPath` under an arbitrary `id`.
46
48
  */
47
49
  async function loadGrammar(id, wasmPath) {
48
- if (languages.has(id))
50
+ const key = runtimeGrammar(id);
51
+ if (languages.has(key))
49
52
  return;
50
- let pending = loads.get(id);
53
+ let pending = loads.get(key);
51
54
  if (!pending) {
52
- pending = loadLanguage(id, wasmPath);
53
- loads.set(id, pending);
55
+ pending = loadLanguage(key, wasmPath);
56
+ loads.set(key, pending);
54
57
  }
55
- languages.set(id, await pending);
58
+ languages.set(key, await pending);
56
59
  }
57
60
  async function loadLanguage(id, wasmPath) {
58
61
  await init();
59
62
  const path = wasmPath ?? resolveBuiltinWasm(id);
60
63
  return Language.load(readFileSync(path));
61
64
  }
62
- /** The npm package a consumer must install for a built-in grammar, or `null` for a vendored
63
- * grammar that ships with `@codegraft/core`. */
64
- export function grammarPackage(id) {
65
- const spec = PEER_WASM[id];
66
- return spec ? spec.slice(0, spec.indexOf('/')) : null;
67
- }
68
65
  function resolveBuiltinWasm(id) {
69
66
  const vendored = VENDORED_WASM[id];
70
- if (vendored)
71
- return fileURLToPath(new URL(`../wasm/${vendored}`, import.meta.url));
72
- const spec = PEER_WASM[id];
73
- assert(spec, `grammar '${id}' is not built in; a ZoneSplitter must pass its own wasmPath to loadGrammar`);
74
- try {
75
- return require.resolve(spec);
76
- }
77
- catch {
78
- const pkg = spec.slice(0, spec.indexOf('/'));
79
- throw new Error(`[codegraft] grammar '${id}' requires the optional peer '${pkg}'; add it to your dependencies`);
80
- }
67
+ assert(vendored, `grammar '${id}' is not built in; a ZoneSplitter must pass its own wasmPath to loadGrammar`);
68
+ return fileURLToPath(new URL(`../wasm/${vendored}`, import.meta.url));
81
69
  }
82
70
  /** Parse `source` with an already-loaded grammar. Reuses one parser instance; safe
83
71
  * because transforms run synchronously and trees are independent of the parser. */
84
72
  function parse(source, id) {
85
- const language = languages.get(id);
73
+ const language = languages.get(runtimeGrammar(id));
86
74
  assert(language, `grammar '${id}' not loaded; call loadGrammar('${id}') first`);
87
75
  parser ??= new TreeSitter();
88
76
  parser.setLanguage(language);
@@ -95,11 +83,12 @@ function parse(source, id) {
95
83
  * names are kept too — harmless, since only concrete types appear in a tree. Memoised per grammar,
96
84
  * so a `find` can call it per node. */
97
85
  function subtypesOf(id, typeName) {
98
- const language = languages.get(id);
86
+ const key = runtimeGrammar(id);
87
+ const language = languages.get(key);
99
88
  assert(language, `grammar '${id}' not loaded; call loadGrammar('${id}') first`);
100
- let perGrammar = subtypeCache.get(id);
89
+ let perGrammar = subtypeCache.get(key);
101
90
  if (!perGrammar)
102
- subtypeCache.set(id, (perGrammar = new Map()));
91
+ subtypeCache.set(key, (perGrammar = new Map()));
103
92
  let names = perGrammar.get(typeName);
104
93
  if (!names) {
105
94
  const supertypes = new Set(language.supertypes);
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,sGAAsG;AACtG,sGAAsG;AACtG,8BAA8B;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,IAAI,UAAU,EAAa,MAAM,8CAA8C,CAAA;AAExG,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC;;;;;;;;;;;;GAYG;AACH,MAAM,aAAa,GAAuC;IACxD,GAAG,EAAE,sBAAsB;IAC3B,IAAI,EAAE,uBAAuB;IAC7B,GAAG,EAAE,sBAAsB;IAC3B,IAAI,EAAE,uBAAuB;CAC9B,CAAA;AAED;;;mGAGmG;AACnG,SAAS,cAAc,CAAC,EAAsB;IAC5C,OAAO,EAAE,KAAK,YAAY,IAAI,EAAE,KAAK,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;AAChE,CAAC;AAED,IAAI,WAAW,GAAyB,IAAI,CAAA;AAC5C,IAAI,MAAM,GAAsB,IAAI,CAAA;AACpC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoB,CAAA;AAC7C,MAAM,KAAK,GAAG,IAAI,GAAG,EAA6B,CAAA;AAClD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAiC,CAAA;AAE7D,2EAA2E;AAC3E,KAAK,UAAU,IAAI;IACjB,WAAW,KAAK,UAAU,CAAC,IAAI,EAAE,CAAA;IACjC,MAAM,WAAW,CAAA;AACnB,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,WAAW,CAAC,EAAsB,EAAE,QAAiB;IAClE,MAAM,GAAG,GAAG,cAAc,CAAC,EAAE,CAAC,CAAA;IAC9B,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC;QAAE,OAAM;IAC9B,IAAI,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,GAAG,YAAY,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAA;QACrC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IACzB,CAAC;IACD,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,OAAO,CAAC,CAAA;AACnC,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,EAAU,EAAE,QAAiB;IACvD,MAAM,IAAI,EAAE,CAAA;IACZ,MAAM,IAAI,GAAG,QAAQ,IAAI,kBAAkB,CAAC,EAAE,CAAC,CAAA;IAC/C,OAAO,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAA;AAC1C,CAAC;AAED,SAAS,kBAAkB,CAAC,EAAU;IACpC,MAAM,QAAQ,GAAG,aAAa,CAAC,EAAe,CAAC,CAAA;IAC/C,MAAM,CAAC,QAAQ,EAAE,YAAY,EAAE,6EAA6E,CAAC,CAAA;IAC7G,OAAO,aAAa,CAAC,IAAI,GAAG,CAAC,WAAW,QAAQ,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AACvE,CAAC;AAED;oFACoF;AACpF,SAAS,KAAK,CAAC,MAAc,EAAE,EAAsB;IACnD,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAA;IAClD,MAAM,CAAC,QAAQ,EAAE,YAAY,EAAE,mCAAmC,EAAE,UAAU,CAAC,CAAA;IAC/E,MAAM,KAAK,IAAI,UAAU,EAAE,CAAA;IAC3B,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;IAC5B,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IACjC,MAAM,CAAC,IAAI,EAAE,yCAAyC,EAAE,GAAG,CAAC,CAAA;IAC5D,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;wCAGwC;AACxC,SAAS,UAAU,CAAC,EAAsB,EAAE,QAAgB;IAC1D,MAAM,GAAG,GAAG,cAAc,CAAC,EAAE,CAAC,CAAA;IAC9B,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACnC,MAAM,CAAC,QAAQ,EAAE,YAAY,EAAE,mCAAmC,EAAE,UAAU,CAAC,CAAA;IAC/E,IAAI,UAAU,GAAG,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IACtC,IAAI,CAAC,UAAU;QAAE,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,CAAA;IAChE,IAAI,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;IACpC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;QAC/C,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;QACnD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAA;QAC7B,MAAM,KAAK,GAAG,IAAI,KAAK,IAAI,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACjE,KAAK,IAAI,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE,EAAE,GAAG,KAAK,SAAS,EAAE,GAAG,GAAG,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC;YACjE,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzC,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;gBACxC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC;oBAAE,SAAQ;gBACpC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;gBACb,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA,CAAC,0CAA0C;YACrF,CAAC;QACH,CAAC;QACD,UAAU,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAA;IAC9C,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,kFAAkF;AAClF,MAAM,CAAC,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,CAAA"}
package/dist/resolver.js CHANGED
@@ -141,15 +141,12 @@ class ScopeResolver {
141
141
  case 'import_statement':
142
142
  this.#bindImports(node);
143
143
  return;
144
- case 'statement_block': {
145
- this.#walkChildren(node, this.#newScope(node, scope), fnScope);
146
- return;
147
- }
144
+ // A block / loop opens a fresh lexical scope but binds no name of its own.
145
+ case 'statement_block':
148
146
  case 'for_statement':
149
- case 'for_in_statement': {
147
+ case 'for_in_statement':
150
148
  this.#walkChildren(node, this.#newScope(node, scope), fnScope);
151
149
  return;
152
- }
153
150
  case 'catch_clause': {
154
151
  const inner = this.#newScope(node, scope);
155
152
  this.#bindPattern(node.child('parameter'), inner);
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../src/resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../src/resolver.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { Node } from 'web-tree-sitter';
1
+ import type { Node } from '../vendor/web-tree-sitter/web-tree-sitter.js';
2
2
  import type { GrammarId, RichNode } from './types.js';
3
3
  /** Wrap a parsed tree's root. Children are created lazily as the tree is walked. */
4
4
  export declare function wrapNode(node: Node, language: GrammarId, startOffset: number): RichNode;
@@ -1 +1 @@
1
- {"version":3,"file":"rich-node.d.ts","sourceRoot":"","sources":["../src/rich-node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,KAAK,EAAE,SAAS,EAAS,QAAQ,EAAE,MAAM,YAAY,CAAA;AA2G5D,oFAAoF;AACpF,wBAAgB,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,QAAQ,CAEvF"}
1
+ {"version":3,"file":"rich-node.d.ts","sourceRoot":"","sources":["../src/rich-node.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,8CAA8C,CAAA;AACxE,OAAO,KAAK,EAAE,SAAS,EAAS,QAAQ,EAAE,MAAM,YAAY,CAAA;AAwG5D,oFAAoF;AACpF,wBAAgB,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,GAAG,QAAQ,CAEvF"}
package/dist/rich-node.js CHANGED
@@ -1,5 +1,5 @@
1
1
  var _a;
2
- import { COMMENT_TYPES } from './comment-attachment.js';
2
+ import { isComment } from './comment-attachment.js';
3
3
  import { assert } from './assert.js';
4
4
  /**
5
5
  * Lazy wrapper over a web-tree-sitter `Node`. Scalar accessors (type/text/positions)
@@ -52,6 +52,12 @@ class RichNodeImpl {
52
52
  get parent() {
53
53
  return this.#parent;
54
54
  }
55
+ get root() {
56
+ let cur = this;
57
+ while (cur.parent)
58
+ cur = cur.parent;
59
+ return cur;
60
+ }
55
61
  get documentStartIndex() {
56
62
  return this.#node.startIndex + this.#startOffset;
57
63
  }
@@ -65,20 +71,13 @@ class RichNodeImpl {
65
71
  /** Named structural children with comments removed — the surface pattern matching
66
72
  * walks, so neither punctuation nor comments can perturb a match. */
67
73
  get children() {
68
- const comments = COMMENT_TYPES[this.language];
69
- this.#children ??= this.#computeAllChildren().filter((n) => n.isNamed && !comments.has(n.type));
74
+ this.#children ??= this.#computeAllChildren().filter((n) => n.isNamed && !isComment(n));
70
75
  return this.#children;
71
76
  }
72
77
  child(field) {
73
78
  const target = this.#node.childForFieldName(field);
74
79
  return target === null ? null : this.#wrapperFor(target, field);
75
80
  }
76
- childrenForField(field) {
77
- return this.#node
78
- .childrenForFieldName(field)
79
- .filter((n) => n !== null)
80
- .map((target) => this.#wrapperFor(target, field));
81
- }
82
81
  #computeAllChildren() {
83
82
  this.#allChildren ??= this.#node.children
84
83
  .filter((c) => c !== null)
@@ -1 +1 @@
1
- {"version":3,"file":"rich-node.js","sourceRoot":"","sources":["../src/rich-node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rich-node.js","sourceRoot":"","sources":["../src/rich-node.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC;;;;;;;;GAQG;AACH,MAAM,YAAY;IACP,QAAQ,CAAW;IAC5B,0FAA0F;IACjF,eAAe,GAAe,EAAE,CAAA;IAChC,gBAAgB,GAAe,EAAE,CAAA;IACjC,aAAa,GAAe,EAAE,CAAA;IAE9B,KAAK,CAAM;IACX,YAAY,CAAQ;IACpB,OAAO,CAAiB;IACjC,YAAY,CAAiB;IAC7B,SAAS,CAAiB;IAE1B,YAAY,IAAU,EAAE,QAAmB,EAAE,WAAmB,EAAE,MAAuB;QACvF,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,YAAY,GAAG,WAAW,CAAA;QAC/B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;IACvB,CAAC;IAED,IAAI,IAAI;QACN,4FAA4F;QAC5F,OAAO,IAAI,CAAC,KAAK,CAAC,IAAmB,CAAA;IACvC,CAAC;IACD,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAA;IAC3B,CAAC;IACD,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAA;IACxB,CAAC;IACD,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAA;IAC9B,CAAC;IACD,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAA;IAC5B,CAAC;IACD,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,KAAK,CAAC,aAAa,CAAA;IACjC,CAAC;IACD,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAA;IAC/B,CAAC;IACD,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;IACD,IAAI,IAAI;QACN,IAAI,GAAG,GAAa,IAAI,CAAA;QACxB,OAAO,GAAG,CAAC,MAAM;YAAE,GAAG,GAAG,GAAG,CAAC,MAAM,CAAA;QACnC,OAAO,GAAG,CAAA;IACZ,CAAC;IACD,IAAI,kBAAkB;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,YAAY,CAAA;IAClD,CAAC;IACD,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAA;IAChD,CAAC;IAED,2EAA2E;IAC3E,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,mBAAmB,EAAE,CAAA;IACnC,CAAC;IAED;0EACsE;IACtE,IAAI,QAAQ;QACV,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,mBAAmB,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QACvF,OAAO,IAAI,CAAC,SAAS,CAAA;IACvB,CAAC;IAED,KAAK,CAAC,KAAgB;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAA;QAClD,OAAO,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IACjE,CAAC;IAED,mBAAmB;QACjB,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ;aACtC,MAAM,CAAC,CAAC,CAAC,EAAa,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;aACpC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAY,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC,CAAA;QAC1E,OAAO,IAAI,CAAC,YAAY,CAAA;IAC1B,CAAC;IAED;+DAC2D;IAC3D,WAAW,CAAC,MAAY,EAAE,KAAa;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;QAC9E,MAAM,CAAC,OAAO,EAAE,UAAU,KAAK,8CAA8C,CAAC,CAAA;QAC9E,OAAO,OAAO,CAAA;IAChB,CAAC;CACF;;AAED,oFAAoF;AACpF,MAAM,UAAU,QAAQ,CAAC,IAAU,EAAE,QAAmB,EAAE,WAAmB;IAC3E,OAAO,IAAI,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,CAAC,CAAA;AAC5D,CAAC"}
package/dist/types.d.ts CHANGED
@@ -53,13 +53,14 @@ export interface RichNode {
53
53
  readonly startPosition: Point;
54
54
  readonly endPosition: Point;
55
55
  readonly parent: RichNode | null;
56
+ /** The zone tree's root — the topmost ancestor, or `this` when parentless. */
57
+ readonly root: RichNode;
56
58
  /** Named structural children: no punctuation, no comments. The surface pattern
57
59
  * matching walks, so comments never perturb a match. */
58
60
  readonly children: RichNode[];
59
61
  /** Full CST: every child, including punctuation and comment nodes. */
60
62
  readonly allChildren: RichNode[];
61
63
  child(field: FieldName): RichNode | null;
62
- childrenForField(field: FieldName): RichNode[];
63
64
  readonly leadingComments: RichNode[];
64
65
  readonly trailingComments: RichNode[];
65
66
  readonly innerComments: RichNode[];
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codegraft/core",
3
- "version": "0.1.0-beta.10",
3
+ "version": "0.1.0-beta.12",
4
4
  "description": "Tree-sitter runtime for Codegraft: parser, RichNode, comment attachment, zone splitting, the Collection, scope resolver, and edit application.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -14,7 +14,8 @@
14
14
  "bugs": "https://github.com/magne4000/codegraft/issues",
15
15
  "files": [
16
16
  "dist",
17
- "wasm"
17
+ "wasm",
18
+ "vendor/web-tree-sitter"
18
19
  ],
19
20
  "exports": {
20
21
  ".": {
@@ -30,33 +31,19 @@
30
31
  "node": ">=22.13"
31
32
  },
32
33
  "dependencies": {
33
- "magic-string": "^0.30.0",
34
- "web-tree-sitter": "^0.26.9"
35
- },
36
- "peerDependencies": {
37
- "tree-sitter-css": "^0.25.0",
38
- "tree-sitter-html": "^0.23.0",
39
- "tree-sitter-javascript": "^0.25.0"
40
- },
41
- "peerDependenciesMeta": {
42
- "tree-sitter-css": {
43
- "optional": true
44
- },
45
- "tree-sitter-html": {
46
- "optional": true
47
- },
48
- "tree-sitter-javascript": {
49
- "optional": true
50
- }
34
+ "magic-string": "^0.30.0"
51
35
  },
52
36
  "devDependencies": {
53
37
  "tree-sitter-css": "^0.25.0",
54
38
  "tree-sitter-html": "^0.23.0",
55
- "tree-sitter-javascript": "^0.25.0"
39
+ "tree-sitter-javascript": "^0.25.0",
40
+ "web-tree-sitter": "^0.26.9"
56
41
  },
57
42
  "scripts": {
58
43
  "build": "tsc -b",
59
44
  "regen-ts-wasm": "bash scripts/regen-ts-wasm.sh",
45
+ "regen-builtin-wasm": "node scripts/regen-builtin-wasm.mjs",
46
+ "regen-web-tree-sitter": "node scripts/regen-web-tree-sitter.mjs",
60
47
  "regen-node-types": "node scripts/regen-node-types.mjs"
61
48
  }
62
49
  }
@@ -1,6 +1,6 @@
1
- MIT License
1
+ The MIT License (MIT)
2
2
 
3
- Copyright (c) 2026-present Joël Charles
3
+ Copyright (c) 2018 Max Brunsfeld
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal