@weave-framework/compiler 1.1.0 → 1.2.0

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.
package/dist/codegen.d.ts CHANGED
@@ -8,6 +8,7 @@
8
8
  * whose branch/row bodies are nested render functions (so they close over `ctx`
9
9
  * and any template locals), keeping every block's effects in its own scope.
10
10
  */
11
+ import type { TemplateNode } from './ast.js';
11
12
  export interface CompileOptions {
12
13
  /** binding names (from setup()) to resolve via `ctx.*` */
13
14
  scope?: string[];
@@ -30,6 +31,13 @@ export interface CompileResult {
30
31
  components: string[];
31
32
  }
32
33
  export declare function compileTemplate(input: string, options?: CompileOptions): CompileResult;
34
+ /**
35
+ * Like {@link compileTemplate} but from an already-parsed AST — used when the AST is
36
+ * transformed before codegen (e.g. RFC 0008 `#3` component-extension template patches
37
+ * splice/patch the base template's AST, then compile the result without a round-trip through
38
+ * template text).
39
+ */
40
+ export declare function compileTemplateAst(ast: TemplateNode[], options?: CompileOptions): CompileResult;
33
41
  /**
34
42
  * PascalCase child-component tag → kebab-case module basename (`SlideToggle` → `slide-toggle`).
35
43
  * Used by the loader to resolve a `<Foo>` tag to its sibling component module by convention.
@@ -1 +1 @@
1
- {"version":3,"file":"codegen.d.ts","sourceRoot":"","sources":["../src/codegen.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AASH,MAAM,WAAW,cAAc;IAC7B,0DAA0D;IAC1D,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,qGAAqG;IACrG,IAAI,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oFAAoF;IACpF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,oGAAoG;IACpG,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AA4CD,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,aAAa,CAqB1F;AA2BD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAKjD;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAG3D"}
1
+ {"version":3,"file":"codegen.d.ts","sourceRoot":"","sources":["../src/codegen.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EACV,YAAY,EAEb,MAAM,UAAU,CAAC;AAGlB,MAAM,WAAW,cAAc;IAC7B,0DAA0D;IAC1D,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,qGAAqG;IACrG,IAAI,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oFAAoF;IACpF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,oGAAoG;IACpG,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AA4CD,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,aAAa,CAE1F;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,YAAY,EAAE,EAAE,OAAO,GAAE,cAAmB,GAAG,aAAa,CAoBnG;AA2BD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAKjD;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAG3D"}
package/dist/codegen.js CHANGED
@@ -53,10 +53,18 @@ class Gen {
53
53
  }
54
54
  }
55
55
  export function compileTemplate(input, options = {}) {
56
+ return compileTemplateAst(parseTemplate(input), options);
57
+ }
58
+ /**
59
+ * Like {@link compileTemplate} but from an already-parsed AST — used when the AST is
60
+ * transformed before codegen (e.g. RFC 0008 `#3` component-extension template patches
61
+ * splice/patch the base template's AST, then compile the result without a round-trip through
62
+ * template text).
63
+ */
64
+ export function compileTemplateAst(ast, options = {}) {
56
65
  const mode = options.mode ?? 'module';
57
66
  const runtimeImport = options.runtimeImport ?? '@weave-framework/runtime/dom';
58
67
  const gen = new Gen(mode, options.scopeAttr, options.hostAttr);
59
- const ast = parseTemplate(input);
60
68
  // isHost: the render fragment's top-level elements are the component's roots → `:host`.
61
69
  const render = compileFragment(gen, ast, ctxScope(options.scope ?? []), 'render', 'ctx, slots', true);
62
70
  const components = [...gen.usedComponents];
@@ -1 +1 @@
1
- {"version":3,"file":"codegen.js","sourceRoot":"","sources":["../src/codegen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codegen.js","sourceRoot":"","sources":["../src/codegen.ts"],"names":[],"mappings":"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"}
@@ -12,11 +12,17 @@
12
12
  * into the same `{ script, template, styles }` triple the separate-file path
13
13
  * passes directly.
14
14
  */
15
+ import { type PatchOp } from './patch.js';
15
16
  export interface ComponentSource {
16
17
  /** Setup module — user imports + `export function setup(props) { … return bindings }`. */
17
18
  script?: string;
18
- /** Template markup. */
19
+ /** Template markup. For a `#3` component-extension, this is the BASE template `patches` apply to. */
19
20
  template: string;
21
+ /**
22
+ * RFC 0008 `#3` — declarative patch ops applied to `template` (the base template) before codegen.
23
+ * Present only for a component-file extension that patches its base rather than overriding it (#1).
24
+ */
25
+ patches?: PatchOp[];
20
26
  /** Component CSS (scoped to this component). */
21
27
  styles?: string;
22
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../src/component.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAOH,MAAM,WAAW,eAAe;IAC9B,0FAA0F;IAC1F,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uBAAuB;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,+EAA+E;IAC/E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,0EAA0E;IAC1E,GAAG,EAAE,MAAM,CAAC;IACZ,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAQD,4FAA4F;AAC5F,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,GAAE,gBAAqB,GAAG,iBAAiB,CAyCrG;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,uFAAuF;IACvF,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,qFAAqF;IACrF,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB,CAe9D;AAuCD,2EAA2E;AAC3E,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe,CAYxD"}
1
+ {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../src/component.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH,OAAO,EAAgB,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AAIxD,MAAM,WAAW,eAAe;IAC9B,0FAA0F;IAC1F,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qGAAqG;IACrG,QAAQ,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC;IACpB,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,+EAA+E;IAC/E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,0EAA0E;IAC1E,GAAG,EAAE,MAAM,CAAC;IACZ,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAQD,4FAA4F;AAC5F,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,GAAE,gBAAqB,GAAG,iBAAiB,CA4CrG;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,uFAAuF;IACvF,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,qFAAqF;IACrF,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB,CAe9D;AAuCD,2EAA2E;AAC3E,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe,CAYxD"}
package/dist/component.js CHANGED
@@ -12,8 +12,9 @@
12
12
  * into the same `{ script, template, styles }` triple the separate-file path
13
13
  * passes directly.
14
14
  */
15
- import { compileTemplate } from './codegen.js';
15
+ import { compileTemplateAst } from './codegen.js';
16
16
  import { parseTemplate } from './parser.js';
17
+ import { applyPatches } from './patch.js';
17
18
  import { inferCtxNames } from './infer.js';
18
19
  import { scopeCss, scopeAttr, hostAttr, hashCss } from './css.js';
19
20
  const HAS_SETUP = /export\s+(?:async\s+)?function\s+setup\b|export\s+(?:const|let|var)\s+setup\b/;
@@ -25,10 +26,14 @@ const HAS_EXTEND_PROPS = /export\s+(?:async\s+)?function\s+extendProps\b|export\
25
26
  export function compileComponent(src, opts = {}) {
26
27
  const hash = opts.hash ?? hashCss(opts.filename ?? src.template);
27
28
  const attr = scopeAttr(hash);
28
- const scope = inferCtxNames(parseTemplate(src.template));
29
+ // Parse once; a `#3` extension patches the base template's AST before scope-inference + codegen.
30
+ let ast = parseTemplate(src.template);
31
+ if (src.patches?.length)
32
+ ast = applyPatches(ast, src.patches);
33
+ const scope = inferCtxNames(ast);
29
34
  // Stamp the `:host` root marker only when the styles actually use `:host` (else zero cost).
30
35
  const host = src.styles && /:host\b/.test(src.styles) ? hostAttr(hash) : undefined;
31
- const compiled = compileTemplate(src.template, { mode: 'module', scope, scopeAttr: attr, hostAttr: host });
36
+ const compiled = compileTemplateAst(ast, { mode: 'module', scope, scopeAttr: attr, hostAttr: host });
32
37
  // Demote the template module's default export to a local `render` we can wire up.
33
38
  const renderBody = compiled.code.replace('export default function render', 'function render');
34
39
  const css = src.styles ? scopeCss(src.styles, hash) : '';
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../src/component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../src/component.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -2,7 +2,8 @@
2
2
  * @weave-framework/compiler — turns Weave templates into fine-grained DOM code.
3
3
  * M3: templates, interpolation, attribute/event/prop/class/ref bindings.
4
4
  */
5
- export { compileTemplate, pascalToKebab, childImportCandidates, type CompileOptions, type CompileResult, } from './codegen.js';
5
+ export { compileTemplate, compileTemplateAst, pascalToKebab, childImportCandidates, type CompileOptions, type CompileResult, } from './codegen.js';
6
+ export { applyPatches, type PatchOp } from './patch.js';
6
7
  export { parseTemplate, ParseError } from './parser.js';
7
8
  export { scopeCss, scopeAttr, hostAttr, hashCss } from './css.js';
8
9
  export { inferCtxNames } from './infer.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACL,eAAe,EACf,aAAa,EACb,qBAAqB,EACrB,KAAK,cAAc,EACnB,KAAK,aAAa,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EACL,OAAO,EACP,QAAQ,EACR,UAAU,EACV,KAAK,KAAK,EACV,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,aAAa,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,GACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,KAAK,gBAAgB,GACtB,MAAM,cAAc,CAAC;AACtB,mBAAmB,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,qBAAqB,EACrB,KAAK,cAAc,EACnB,KAAK,aAAa,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,YAAY,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EACL,OAAO,EACP,QAAQ,EACR,UAAU,EACV,KAAK,KAAK,EACV,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,aAAa,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,GACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,EACb,KAAK,gBAAgB,GACtB,MAAM,cAAc,CAAC;AACtB,mBAAmB,UAAU,CAAC"}
package/dist/index.js CHANGED
@@ -2,7 +2,8 @@
2
2
  * @weave-framework/compiler — turns Weave templates into fine-grained DOM code.
3
3
  * M3: templates, interpolation, attribute/event/prop/class/ref bindings.
4
4
  */
5
- export { compileTemplate, pascalToKebab, childImportCandidates, } from './codegen.js';
5
+ export { compileTemplate, compileTemplateAst, pascalToKebab, childImportCandidates, } from './codegen.js';
6
+ export { applyPatches } from './patch.js';
6
7
  export { parseTemplate, ParseError } from './parser.js';
7
8
  export { scopeCss, scopeAttr, hostAttr, hashCss } from './css.js';
8
9
  export { inferCtxNames } from './infer.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACL,eAAe,EACf,aAAa,EACb,qBAAqB,GAGtB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EACL,OAAO,EACP,QAAQ,EACR,UAAU,GAKX,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,gBAAgB,EAChB,QAAQ,EACR,WAAW,GAKZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,GAEd,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,qBAAqB,GAGtB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,YAAY,EAAgB,MAAM,YAAY,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,EACL,OAAO,EACP,QAAQ,EACR,UAAU,GAKX,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,gBAAgB,EAChB,QAAQ,EACR,WAAW,GAKZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,aAAa,GAEd,MAAM,cAAc,CAAC"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * RFC 0008 `#3` — declarative template patches for component-file extensions.
3
+ *
4
+ * A `#3` extension does NOT write its own template; it declares `export const patch = [...]`,
5
+ * an array of ops that modify the BASE component's template. The loader resolves the base
6
+ * template, parses it, and this module applies the ops to the AST (matched by a small
7
+ * tag/class/attribute selector), then codegen compiles the patched AST directly — no
8
+ * round-trip through template text. Fail-loud: a selector that matches nothing throws.
9
+ *
10
+ * Ops are pure DATA (not a function), so the loader reads them statically without evaluating
11
+ * the extension module. Markup an op inserts (`html`) and the attribute an `attr` op adds
12
+ * (`attr`) are ordinary Weave template text, parsed by the SAME parser — so `{{ }}`, `on:`,
13
+ * `use:`, `@if`/`@for`, and nested components all work inside a patch.
14
+ */
15
+ import type { TemplateNode } from './ast.js';
16
+ /** A declarative patch op. Authored as an entry of `export const patch = [ … ]`. */
17
+ export type PatchOp =
18
+ /** Add (or replace) an attribute/binding on matched elements. `attr` is markup, e.g. `on:dblclick={{ f(item) }}`. */
19
+ {
20
+ op: 'attr';
21
+ sel: string;
22
+ attr: string;
23
+ }
24
+ /** Remove a named attribute/binding from matched elements. */
25
+ | {
26
+ op: 'removeAttr';
27
+ sel: string;
28
+ name: string;
29
+ }
30
+ /** Insert `html` as the first / last child of matched elements. */
31
+ | {
32
+ op: 'prepend' | 'append';
33
+ sel: string;
34
+ html: string;
35
+ }
36
+ /** Insert `html` as the previous / next sibling of matched elements. */
37
+ | {
38
+ op: 'before' | 'after';
39
+ sel: string;
40
+ html: string;
41
+ }
42
+ /** Replace matched elements with `html`. */
43
+ | {
44
+ op: 'replace';
45
+ sel: string;
46
+ html: string;
47
+ }
48
+ /** Wrap each matched element in `html` (its single root becomes the matched element's parent). */
49
+ | {
50
+ op: 'wrap';
51
+ sel: string;
52
+ html: string;
53
+ }
54
+ /** Remove matched elements. */
55
+ | {
56
+ op: 'remove';
57
+ sel: string;
58
+ };
59
+ /**
60
+ * Apply declarative patch ops to a base template AST (mutates a shallow copy). Fail-loud: a
61
+ * selector matching no element throws — a patch that no longer applies (the base restructured
62
+ * its markup) must not silently vanish.
63
+ */
64
+ export declare function applyPatches(ast: TemplateNode[], ops: PatchOp[]): TemplateNode[];
65
+ //# sourceMappingURL=patch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patch.d.ts","sourceRoot":"","sources":["../src/patch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAiC,MAAM,UAAU,CAAC;AAE5E,oFAAoF;AACpF,MAAM,MAAM,OAAO;AACjB,qHAAqH;AACnH;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE;AAC3C,8DAA8D;GAC5D;IAAE,EAAE,EAAE,YAAY,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE;AACjD,mEAAmE;GACjE;IAAE,EAAE,EAAE,SAAS,GAAG,QAAQ,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE;AACzD,wEAAwE;GACtE;IAAE,EAAE,EAAE,QAAQ,GAAG,OAAO,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE;AACvD,4CAA4C;GAC1C;IAAE,EAAE,EAAE,SAAS,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE;AAC9C,kGAAkG;GAChG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE;AAC3C,+BAA+B;GAC7B;IAAE,EAAE,EAAE,QAAQ,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC;AAqHlC;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,YAAY,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,YAAY,EAAE,CA2ChF"}
package/dist/patch.js ADDED
@@ -0,0 +1,173 @@
1
+ /**
2
+ * RFC 0008 `#3` — declarative template patches for component-file extensions.
3
+ *
4
+ * A `#3` extension does NOT write its own template; it declares `export const patch = [...]`,
5
+ * an array of ops that modify the BASE component's template. The loader resolves the base
6
+ * template, parses it, and this module applies the ops to the AST (matched by a small
7
+ * tag/class/attribute selector), then codegen compiles the patched AST directly — no
8
+ * round-trip through template text. Fail-loud: a selector that matches nothing throws.
9
+ *
10
+ * Ops are pure DATA (not a function), so the loader reads them statically without evaluating
11
+ * the extension module. Markup an op inserts (`html`) and the attribute an `attr` op adds
12
+ * (`attr`) are ordinary Weave template text, parsed by the SAME parser — so `{{ }}`, `on:`,
13
+ * `use:`, `@if`/`@for`, and nested components all work inside a patch.
14
+ */
15
+ import { parseTemplate } from './parser.js';
16
+ const NODE_OPS = new Set(['prepend', 'append', 'before', 'after', 'replace', 'wrap', 'remove']);
17
+ /** The child-node arrays a template node contains (where matches live and edits happen). */
18
+ function childArrays(node) {
19
+ switch (node.type) {
20
+ case 'element':
21
+ return [node.children];
22
+ case 'if':
23
+ return node.branches.map((b) => b.children);
24
+ case 'for':
25
+ return node.empty ? [node.children, node.empty] : [node.children];
26
+ case 'switch':
27
+ return node.cases.map((c) => c.children);
28
+ case 'defer':
29
+ return node.placeholder ? [node.children, node.placeholder] : [node.children];
30
+ case 'await': {
31
+ const arrs = [];
32
+ for (const key of ['pending', 'children', 'then', 'catch']) {
33
+ const v = node[key];
34
+ if (Array.isArray(v))
35
+ arrs.push(v);
36
+ }
37
+ return arrs;
38
+ }
39
+ case 'key':
40
+ return [node.children];
41
+ case 'snippet':
42
+ return [node.children];
43
+ default:
44
+ return [];
45
+ }
46
+ }
47
+ function parseSelector(sel) {
48
+ const s = sel.trim();
49
+ if (s.startsWith('.'))
50
+ return { className: s.slice(1) };
51
+ if (s.startsWith('[') && s.endsWith(']')) {
52
+ const inner = s.slice(1, -1);
53
+ const eq = inner.indexOf('=');
54
+ if (eq === -1)
55
+ return { attrName: inner.trim() };
56
+ return { attrName: inner.slice(0, eq).trim(), attrValue: inner.slice(eq + 1).trim().replace(/^["']|["']$/g, '') };
57
+ }
58
+ return { tag: s };
59
+ }
60
+ function staticAttr(node, name) {
61
+ return node.attrs.find((a) => a.type === 'static' && a.name === name);
62
+ }
63
+ function matches(node, sel) {
64
+ if (sel.tag !== undefined)
65
+ return node.tag === sel.tag;
66
+ if (sel.className !== undefined) {
67
+ const cls = staticAttr(node, 'class');
68
+ return !!cls && cls.value.split(/\s+/).includes(sel.className);
69
+ }
70
+ if (sel.attrName !== undefined) {
71
+ if (sel.attrValue !== undefined) {
72
+ const a = staticAttr(node, sel.attrName);
73
+ return !!a && a.value === sel.attrValue;
74
+ }
75
+ return node.attrs.some((a) => 'name' in a && a.name === sel.attrName);
76
+ }
77
+ return false;
78
+ }
79
+ /** All element nodes matching `sel`, deepest-first is not required — insertion re-locates by identity. */
80
+ function collectMatches(ast, sel) {
81
+ const out = [];
82
+ const walk = (nodes) => {
83
+ for (const n of nodes) {
84
+ if (n.type === 'element' && matches(n, sel))
85
+ out.push(n);
86
+ for (const arr of childArrays(n))
87
+ walk(arr);
88
+ }
89
+ };
90
+ walk(ast);
91
+ return out;
92
+ }
93
+ /** Locate a node by identity: its containing array + index. */
94
+ function locate(ast, target) {
95
+ const walk = (nodes) => {
96
+ const i = nodes.indexOf(target);
97
+ if (i !== -1)
98
+ return { arr: nodes, index: i };
99
+ for (const n of nodes) {
100
+ for (const arr of childArrays(n)) {
101
+ const hit = walk(arr);
102
+ if (hit)
103
+ return hit;
104
+ }
105
+ }
106
+ return null;
107
+ };
108
+ return walk(ast);
109
+ }
110
+ /** Parse a bare attribute string (e.g. `on:click={{ f }}`) by wrapping it in a dummy element. */
111
+ function parseAttr(attrText) {
112
+ const [el] = parseTemplate(`<w-patch ${attrText}/>`);
113
+ if (!el || el.type !== 'element' || el.attrs.length !== 1) {
114
+ throw new Error(`weave: patch attr must be a single attribute, got: ${attrText}`);
115
+ }
116
+ return el.attrs[0];
117
+ }
118
+ /**
119
+ * Apply declarative patch ops to a base template AST (mutates a shallow copy). Fail-loud: a
120
+ * selector matching no element throws — a patch that no longer applies (the base restructured
121
+ * its markup) must not silently vanish.
122
+ */
123
+ export function applyPatches(ast, ops) {
124
+ const root = ast.slice();
125
+ for (const op of ops) {
126
+ const sel = parseSelector(op.sel);
127
+ const hits = collectMatches(root, sel);
128
+ if (hits.length === 0) {
129
+ throw new Error(`weave: patch selector '${op.sel}' matched no element in the base template (op '${op.op}').`);
130
+ }
131
+ for (const node of hits) {
132
+ if (op.op === 'attr') {
133
+ const next = parseAttr(op.attr);
134
+ const name = 'name' in next ? next.name : undefined;
135
+ node.attrs = node.attrs.filter((a) => !('name' in a && name !== undefined && a.name === name)).concat(next);
136
+ continue;
137
+ }
138
+ if (op.op === 'removeAttr') {
139
+ node.attrs = node.attrs.filter((a) => !('name' in a && a.name === op.name));
140
+ continue;
141
+ }
142
+ if (op.op === 'prepend' || op.op === 'append') {
143
+ const frag = parseTemplate(op.html);
144
+ node.children = op.op === 'prepend' ? frag.concat(node.children) : node.children.concat(frag);
145
+ continue;
146
+ }
147
+ // sibling / self ops need the node's location in its parent array
148
+ if (NODE_OPS.has(op.op)) {
149
+ const loc = locate(root, node);
150
+ if (!loc)
151
+ continue; // already removed by a prior op in this batch
152
+ const frag = 'html' in op ? parseTemplate(op.html) : [];
153
+ if (op.op === 'before')
154
+ loc.arr.splice(loc.index, 0, ...frag);
155
+ else if (op.op === 'after')
156
+ loc.arr.splice(loc.index + 1, 0, ...frag);
157
+ else if (op.op === 'replace')
158
+ loc.arr.splice(loc.index, 1, ...frag);
159
+ else if (op.op === 'remove')
160
+ loc.arr.splice(loc.index, 1);
161
+ else if (op.op === 'wrap') {
162
+ const wrapper = frag.find((n) => n.type === 'element');
163
+ if (!wrapper)
164
+ throw new Error(`weave: patch 'wrap' html must contain an element, got: ${op.html}`);
165
+ wrapper.children = wrapper.children.concat(node);
166
+ loc.arr.splice(loc.index, 1, ...frag);
167
+ }
168
+ }
169
+ }
170
+ }
171
+ return root;
172
+ }
173
+ //# sourceMappingURL=patch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patch.js","sourceRoot":"","sources":["../src/patch.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@weave-framework/compiler",
3
- "version": "1.1.0",
3
+ "version": "1.2.0",
4
4
  "description": "Weave template compiler — parses .weave/.html templates to fine-grained DOM code.",
5
5
  "type": "module",
6
6
  "sideEffects": false,