jtlt 0.22.0 → 0.24.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/CHANGES.md CHANGED
@@ -1,5 +1,68 @@
1
1
  # jtlt CHANGES
2
2
 
3
+ ## 0.24.0
4
+
5
+ - feat: the declarative `{$variable: name, $select}` node now also accepts
6
+ a literal `$value` (`{$variable: name, $value: literal}`), mirroring the
7
+ JS-API-level `variable()`'s existing `{value}` form — lets a template
8
+ bind a literal array/object embedded directly in the template itself
9
+ (e.g. a fixed collection list), not just a value fetched from `data`/
10
+ `params`/`$indexedDB`. `$forEach`'s own bare-`$name` convention then
11
+ iterates it directly (`$forEach: '$name'`). When both `$select` and
12
+ `$value` are given, `$value` wins (matching `variable()`'s own
13
+ `_paramSpec` precedence) — not a documented shape to combine
14
+ intentionally, just parity with the existing JS-API tiebreak.
15
+ - feat: `forEach()` (and the declarative `{$forEach: sel, $key?: name}`
16
+ node) now accepts an optional `keyVar`/`$key` name that binds each
17
+ iteration's key — the array index, or (for an object-wildcard select
18
+ like `$.*`) the object property name, from jsonpath-plus's own
19
+ `parentProperty` on a `resultType: 'all'` match — for the duration of
20
+ that iteration, readable back via a bare `$name` reference (same
21
+ convention as `variable()`). This is what lets a template render
22
+ "property: value" pairs while iterating an object's own properties, or
23
+ skip one property by name via `$if` (e.g. `{$if: "$prop !== 'blob'"}`)
24
+ — jsonpath-plus's match data already carried this key; `forEach()`
25
+ itself was simply discarding it. A bare-`$name` (bound-variable)
26
+ iteration over an array also now gets its own index as the key; a
27
+ non-array bound value (treated as a length-1 sequence) has no
28
+ meaningful key.
29
+
30
+ ## 0.23.0
31
+
32
+ - feat: `${sel}` template-literal-style interpolation for a declarative
33
+ (jamilih-shaped) element's string-valued attributes, e.g. `['a', {href:
34
+ '/words/${$.key}'}, ['dog']]`. Each `${sel}` placeholder is resolved via
35
+ `ctx.get(sel.trim(), false)` at runtime and coerced to a string
36
+ (`null`/`undefined` becomes `''`, not the literal "null"/"undefined");
37
+ a value with no `${` at all is returned unchanged. Combined with
38
+ jamilih's own `innerHTML` magic attribute (already accepted at
39
+ validation time, just not previously *executed* correctly — see below),
40
+ this covers "raw HTML from a data value" too, e.g. `{innerHTML:
41
+ '${$.definitionHtml}'}` — no separate operation is needed.
42
+ - feat: new `interpolateAttributes` option (`compileJSONTemplate`,
43
+ `validateJSONTemplate`, and the `TemplateObject`/config-wide
44
+ `defaultInterpolateAttributes` fallback) restricts which element
45
+ attribute names `${sel}` interpolation applies to: `{allow: [...]}` or
46
+ `{deny: [...]}`. Every string-valued attribute is eligible when omitted
47
+ (the default, backward-compatible behavior). A `${...}`-shaped literal
48
+ string sitting in an ineligible attribute is not flagged as an error —
49
+ it may just as well be a coincidental literal value (e.g. a currency
50
+ template or CSS `calc()`-like string) — it simply renders as literal
51
+ text.
52
+ - fix: `innerHTML` (jamilih's own magic attribute key, already accepted by
53
+ `isValidJamilih` at validation time) was never actually given raw-HTML
54
+ treatment by the *execution* engine — `StringJoiningTransformer`'s
55
+ callback-driven `element()` path rendered it as a literal
56
+ `innerHTML="..."` attribute, and `DOMJoiningTransformer`'s `element()`
57
+ called `setAttribute('innerHTML', ...)`, which does nothing useful on a
58
+ real DOM element. Both now special-case `innerHTML` to match jamilih's
59
+ own real DOM builder (`jml.js`): `StringJoiningTransformer` appends the
60
+ value as raw, unescaped content, and `DOMJoiningTransformer` sets
61
+ `element.innerHTML = value` directly (real, browser-parsed HTML nodes).
62
+ `JSONJoiningTransformer` output needed no change — its output already
63
+ *is* a jamilih-shaped structure, where `innerHTML` staying a literal
64
+ attribute key is correct (a later `jml()` call handles it).
65
+
3
66
  ## 0.22.0
4
67
 
5
68
  BREAKING: Changes extension system to provide extensions with the full argument rather than assigning a special meaning to `select` and passing only its value.
@@ -1 +1 @@
1
- {"version":3,"file":"DOMJoiningTransformer.d.ts","sourceRoot":"","sources":["../src/DOMJoiningTransformer.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DOMJoiningTransformer.d.ts","sourceRoot":"","sources":["../src/DOMJoiningTransformer.js"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"JSONPathTransformer.d.ts","sourceRoot":"","sources":["../src/JSONPathTransformer.js"],"names":[],"mappings":"AAAA,OAAO,0BAA0B,MAAM,iCAAiC,CAAC;AAKzE;;;;;;;;GAQG;AACH,cAAM,mBAAmB,CAFa,CAAC,SAAzB,MAAM,GAAC,QAAQ,GAAC,KAAK,GAAK,MAAO;IA4FtC,OAAO;IACZ,+DAA+D;IAC1D,aAAa,EADP,OAAO,YAAY,EAAE,sBAAsB,CAAC,CAAC,CAAC,EAAE;IAKtD,SAAS;IA9FhB,MAAM,CAAC,oBAAoB;QACzB,aAAa;YACX;;;;;;eAMG;YACH,QAAQ,CAN6B,CAAC,SAAxB,MAAM,GAAC,QAAQ,GAAC,KAAQ,QAC5B,0BAA0B,CAAC,CAAC,CAAC,SAC5B,OAAO,OACP;gBAAC,IAAI,CAAC,EAAE,MAAM,CAAA;aAAC,GACb,IAAI;;QAMnB,sBAAsB;YACpB;;;eAGG;YACH,QAAQ,QAHG,OAAO,GACL,OAAO;;QAUtB,gBAAgB;YACd;;;;;eAKG;YACH,QAAQ,OALE,0BAA0B,SACzB,OAAO,OACP;gBAAC,IAAI,CAAC,EAAE,MAAM,CAAA;aAAC,GACb,IAAI;;QAMnB,eAAe;YACb;;;;;eAKG;YACH,QAAQ,OALE,0BAA0B,SACzB,OAAO,OACP;gBAAC,IAAI,CAAC,EAAE,MAAM,CAAA;aAAC,GACb,IAAI;;QAMnB,gBAAgB;YACd;;;eAGG;YACH,QAAQ,OAHE,0BAA0B,GACvB,0BAA0B;;QAMzC,kBAAkB;YAChB;;;;eAIG;YACH,QAAQ,QAJG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,GAE7B,OAAO;;MAOtB;IAEF;;;OAGG;IACH,MAAM,CAAC,oBAAoB,CAAE,MAAM,EAHxB,MAGwB,GAFtB,MAAM,CAQlB;IAED;;;OAGG;IACH,YAAa,MAAM,EAHR,OAAO,iCAAiC,EAC9C,gCAAgC,CAAC,CAAC,CAEpB,EAqDlB;IAED;;OAEG;IACH,0BAA0B,IAFb,IAAI,CAShB;IAED;;;OAGG;IACH,SAAS,CAAE,IAAI,AAHZ,CACA,EADQ,MAGI,GAFF,OAAO,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC,CAkF9C;CACF;eAEc,mBAAmB"}
1
+ {"version":3,"file":"JSONPathTransformer.d.ts","sourceRoot":"","sources":["../src/JSONPathTransformer.js"],"names":[],"mappings":"AAAA,OAAO,0BAA0B,MAAM,iCAAiC,CAAC;AAKzE;;;;;;;;GAQG;AACH,cAAM,mBAAmB,CAFa,CAAC,SAAzB,MAAM,GAAC,QAAQ,GAAC,KAAK,GAAK,MAAO;IA4FtC,OAAO;IACZ,+DAA+D;IAC1D,aAAa,EADP,OAAO,YAAY,EAAE,sBAAsB,CAAC,CAAC,CAAC,EAAE;IAKtD,SAAS;IA9FhB,MAAM,CAAC,oBAAoB;QACzB,aAAa;YACX;;;;;;eAMG;YACH,QAAQ,CAN6B,CAAC,SAAxB,MAAM,GAAC,QAAQ,GAAC,KAAQ,QAC5B,0BAA0B,CAAC,CAAC,CAAC,SAC5B,OAAO,OACP;gBAAC,IAAI,CAAC,EAAE,MAAM,CAAA;aAAC,GACb,IAAI;;QAMnB,sBAAsB;YACpB;;;eAGG;YACH,QAAQ,QAHG,OAAO,GACL,OAAO;;QAUtB,gBAAgB;YACd;;;;;eAKG;YACH,QAAQ,OALE,0BAA0B,SACzB,OAAO,OACP;gBAAC,IAAI,CAAC,EAAE,MAAM,CAAA;aAAC,GACb,IAAI;;QAMnB,eAAe;YACb;;;;;eAKG;YACH,QAAQ,OALE,0BAA0B,SACzB,OAAO,OACP;gBAAC,IAAI,CAAC,EAAE,MAAM,CAAA;aAAC,GACb,IAAI;;QAMnB,gBAAgB;YACd;;;eAGG;YACH,QAAQ,OAHE,0BAA0B,GACvB,0BAA0B;;QAMzC,kBAAkB;YAChB;;;;eAIG;YACH,QAAQ,QAJG,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,OAAO,GAE7B,OAAO;;MAOtB;IAEF;;;OAGG;IACH,MAAM,CAAC,oBAAoB,CAAE,MAAM,EAHxB,MAGwB,GAFtB,MAAM,CAQlB;IAED;;;OAGG;IACH,YAAa,MAAM,EAHR,OAAO,iCAAiC,EAC9C,gCAAgC,CAAC,CAAC,CAEpB,EAyDlB;IAED;;OAEG;IACH,0BAA0B,IAFb,IAAI,CAShB;IAED;;;OAGG;IACH,SAAS,CAAE,IAAI,AAHZ,CACA,EADQ,MAGI,GAFF,OAAO,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC,CAkF9C;CACF;eAEc,mBAAmB"}
@@ -123,6 +123,12 @@ export type JSONPathTransformerContextConfig<T extends "json" | "string" | "dom"
123
123
  * `format` of its own
124
124
  */
125
125
  defaultTemplateFormat?: 'json' | 'javascript';
126
+ /**
127
+ * Config-wide default for a declarative
128
+ * (Array) `template`'s `${sel}` attribute-interpolation eligibility, used
129
+ * when an entry has no `interpolateAttributes` of its own
130
+ */
131
+ defaultInterpolateAttributes?: import('./jsonTemplate.js').InterpolateAttributesConfig;
126
132
  /**
127
133
  * Runtime parameter values
128
134
  * (like an XSLT processor's stylesheet parameters); a `param()` with a
@@ -218,6 +224,10 @@ export type JSONPathTransformerContextConfig<T extends "json" | "string" | "dom"
218
224
  * default for the jamilih validation strictness `compileJSONTemplate`
219
225
  * applies to a declarative (Array) `template`, used when an entry has no
220
226
  * `format` of its own
227
+ * @property {import('./jsonTemplate.js').InterpolateAttributesConfig}
228
+ * [defaultInterpolateAttributes] Config-wide default for a declarative
229
+ * (Array) `template`'s `${sel}` attribute-interpolation eligibility, used
230
+ * when an entry has no `interpolateAttributes` of its own
221
231
  * @property {Record<string, unknown>} [params] Runtime parameter values
222
232
  * (like an XSLT processor's stylesheet parameters); a `param()` with a
223
233
  * matching name uses this value instead of its declared default
@@ -380,9 +390,22 @@ declare class JSONPathTransformerContext<T extends "json" | "string" | "dom" = "
380
390
  * `void`, not `void|Promise<void>` — see the note on `SimpleCallback`
381
391
  * in JSONJoiningTransformer.js.)
382
392
  * @param {SortSpec<V>} [sort] - Sort spec
393
+ * @param {string} [keyVar] - When given, binds each iteration's key —
394
+ * the array index, or the object property name when `select` is an
395
+ * object-wildcard path like `$.*` (jsonpath-plus's own `parentProperty`
396
+ * on a `resultType: 'all'` match) — to this name for the duration of
397
+ * that iteration, readable back via a bare `$name` reference (same
398
+ * convention as `variable()`), same as `_params[0]`/`this.vars` are
399
+ * already scoped fresh per iteration. Lets a template render
400
+ * "property: value" pairs, or skip one property by name via `$if`,
401
+ * while iterating an object's own properties — jsonpath-plus's match
402
+ * data already carries this; `select`s naming a bound variable (the
403
+ * bare-`$name` convention, below) carry the array index too, but never
404
+ * a meaningful key for a non-array bound value (treated as a single,
405
+ * length-1-sequence item — there's no "property name" for that case).
383
406
  * @returns {this|Promise<this>}
384
407
  */
385
- forEach(select: string, cb: (this: JSONPathTransformerContext<T>, value: unknown) => void, sort?: SortSpec<V>): this | Promise<this>;
408
+ forEach(select: string, cb: (this: JSONPathTransformerContext<T>, value: unknown) => void, sort?: SortSpec<V>, keyVar?: string): this | Promise<this>;
386
409
  /**
387
410
  * Groups items and executes callback for each group.
388
411
  * Equivalent to XSLT's xsl:for-each-group.
@@ -1 +1 @@
1
- {"version":3,"file":"JSONPathTransformerContext.d.ts","sourceRoot":"","sources":["../src/JSONPathTransformerContext.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JSONPathTransformerContext.d.ts","sourceRoot":"","sources":["../src/JSONPathTransformerContext.js"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"StringJoiningTransformer.d.ts","sourceRoot":"","sources":["../src/StringJoiningTransformer.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StringJoiningTransformer.d.ts","sourceRoot":"","sources":["../src/StringJoiningTransformer.js"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -38,6 +38,15 @@ export type TemplateObject<T, U, TCtx> = {
38
38
  * back to `config.defaultTemplateFormat`, then `'json'`, when omitted.
39
39
  */
40
40
  format?: 'json' | 'javascript';
41
+ /**
42
+ * - For an Array `template` only: restricts
43
+ * which element attribute names `${sel}` interpolation applies to (see
44
+ * `compileJSONTemplate`'s own doc comment) — `{allow: [...]}` or
45
+ * `{deny: [...]}`. Every string-valued attribute is eligible when
46
+ * omitted. Falls back to `config.defaultInterpolateAttributes` when
47
+ * omitted here too.
48
+ */
49
+ interpolateAttributes?: import('./jsonTemplate.js').InterpolateAttributesConfig;
41
50
  /**
42
51
  * -
43
52
  * Template function, or a declarative (jamilih-shaped) node array
@@ -107,6 +116,7 @@ export type JSONOperationNode = [{
107
116
  {
108
117
  $forEach: string;
109
118
  $sort?: unknown;
119
+ $key?: string;
110
120
  },
111
121
  JSONTemplateNode[]
112
122
  ] | [
@@ -114,6 +124,11 @@ export type JSONOperationNode = [{
114
124
  $variable: string;
115
125
  $select: string;
116
126
  }
127
+ ] | [
128
+ {
129
+ $variable: string;
130
+ $value: unknown;
131
+ }
117
132
  ] | [
118
133
  {
119
134
  $indexedDB: {
@@ -285,6 +300,14 @@ export type BaseJTLTOptions<T, E extends boolean | undefined = false> = {
285
300
  * own `format`. Defaults to `'json'` when omitted here too.
286
301
  */
287
302
  defaultTemplateFormat?: 'json' | 'javascript';
303
+ /**
304
+ * Config-wide default for an Array
305
+ * `template`'s `${sel}` attribute-interpolation eligibility (see
306
+ * `TemplateObject.interpolateAttributes`), used for any entry that
307
+ * doesn't specify its own. Every string-valued attribute is eligible
308
+ * when omitted here too.
309
+ */
310
+ defaultInterpolateAttributes?: import('./jsonTemplate.js').InterpolateAttributesConfig;
288
311
  };
289
312
  export type JSONPathJTLTOptions<T extends "json" | "string" | "dom" = "json", E extends boolean | undefined = false> = BaseJTLTOptions<T, E> & {
290
313
  templates?: JSONPathTemplateArray<T>[] | JSONPathTemplateArray<T> | TemplateFunction<T, "json", import('./JSONPathTransformerContext.js').default<T>>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.js"],"names":[],"mappings":"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"}
@@ -1,4 +1,9 @@
1
1
  export type NodeKind = 'text' | 'element' | 'operation';
2
+ export type InterpolateAttributesConfig = {
3
+ allow: string[];
4
+ } | {
5
+ deny: string[];
6
+ };
2
7
  export type ReadTarget = {
3
8
  db: string;
4
9
  store: string;
@@ -24,13 +29,23 @@ export declare function extractReads(nodes: unknown[]): {
24
29
  * `compileJSONTemplate`, this never throws — it reports every problem it
25
30
  * finds, for a "validate before save" editor workflow. Includes the
26
31
  * `extractReads()` check (an unresolvable `$indexedDB` target is a
27
- * validation error, not just a `reads` omission).
32
+ * validation error, not just a `reads` omission) and, when
33
+ * `interpolateAttributes` is given, its own config-shape check (a
34
+ * `${...}`-shaped string sitting in an attribute `interpolateAttributes`
35
+ * doesn't cover is *not* flagged — it may just as well be a coincidental
36
+ * literal value, e.g. a currency template or CSS `calc()`-like string, so
37
+ * treating it as a mistake would be presumptuous; it silently renders as
38
+ * literal text instead, same as any other ineligible attribute).
28
39
  * @param {unknown[]} nodes
29
- * @param {{format?: 'json'|'javascript'}} [options]
40
+ * @param {{
41
+ * format?: 'json'|'javascript',
42
+ * interpolateAttributes?: InterpolateAttributesConfig
43
+ * }} [options]
30
44
  * @returns {{valid: boolean, errors: string[]}}
31
45
  */
32
- export declare function validateJSONTemplate(nodes: unknown[], { format }?: {
46
+ export declare function validateJSONTemplate(nodes: unknown[], { format, interpolateAttributes }?: {
33
47
  format?: 'json' | 'javascript';
48
+ interpolateAttributes?: InterpolateAttributesConfig;
34
49
  }): {
35
50
  valid: boolean;
36
51
  errors: string[];
@@ -43,16 +58,25 @@ export declare function isJSONTemplateNodeArray(x: unknown): x is unknown[];
43
58
  /**
44
59
  * Compile a declarative (jamilih-shaped) node array into a jtlt
45
60
  * `TemplateFunction`. Validates the whole tree up front (see
46
- * `validateJSONTemplate`) and throws on the first problem, rather than
47
- * failing partway through execution.
61
+ * `validateJSONTemplate`, including `interpolateAttributes`'s own config
62
+ * shape) and throws on the first problem, rather than failing partway
63
+ * through execution. `interpolateAttributes`, when given, restricts which
64
+ * element attributes `${sel}` interpolation applies to (see
65
+ * `compileInterpolateAttributesMatcher`) — stashed on the live context as
66
+ * `_interpolateAttributesMatcher` for `resolveElementAttributes` to consult
67
+ * at runtime.
48
68
  * @param {unknown[]} nodes
49
- * @param {{format?: 'json'|'javascript'}} [options]
69
+ * @param {{
70
+ * format?: 'json'|'javascript',
71
+ * interpolateAttributes?: InterpolateAttributesConfig
72
+ * }} [options]
50
73
  * @returns {(
51
74
  * this: any, value: unknown, cfg?: {mode?: string}
52
75
  * ) => Promise<void>}
53
76
  */
54
- export declare function compileJSONTemplate(nodes: unknown[], { format }?: {
77
+ export declare function compileJSONTemplate(nodes: unknown[], { format, interpolateAttributes }?: {
55
78
  format?: 'json' | 'javascript';
79
+ interpolateAttributes?: InterpolateAttributesConfig;
56
80
  }): (this: any, value: unknown, cfg?: {
57
81
  mode?: string;
58
82
  }) => Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"jsonTemplate.d.ts","sourceRoot":"","sources":["../src/jsonTemplate.js"],"names":[],"mappings":"AAyEG,YAAwC,QAAQ,GAAtC,MAAM,GAAC,SAAS,GAAC,WAAW,CAAU;AAgNhD,YAAuC,UAAU,GAAvC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAC,CAAY;AA2EpD;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAE,KAAK,EAHxB,OAAO,EAGiB,GAFtB;IAAC,KAAK,EAAE,UAAU,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAC,CA0BnD;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAE,KAAK,EAJhC,OAAO,EAIyB,EAAE,EAAC,MAAe,EAAC,AAH3D,CACA,EADQ;IAAC,MAAM,CAAC,EAAE,MAAM,GAAC,YAAY,CAAA;CAG2B,GAFtD;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAC,CAgB9C;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAE,CAAC,EAH/B,OAG+B,GAF7B,CAAC,IAAI,OAAO,EAAE,CAI1B;AA0JD;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAE,KAAK,EAN/B,OAAO,EAMwB,EAAE,EAAC,MAAe,EAAC,AAL1D,CACA,EADQ;IAAC,MAAM,CAAC,EAAE,MAAM,GAAC,YAAY,CAAA;CAK0B,GAJrD,CACR,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAC,KAC7C,OAAO,CAAC,IAAI,CAAC,CAYpB"}
1
+ {"version":3,"file":"jsonTemplate.d.ts","sourceRoot":"","sources":["../src/jsonTemplate.js"],"names":[],"mappings":"AAyEG,YAAwC,QAAQ,GAAtC,MAAM,GAAC,SAAS,GAAC,WAAW,CAAU;AAuEhD,YAAgD,2BAA2B,GAAjE;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAC,GAAG;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAC,CAA6B;AA6Q3E,YAAuC,UAAU,GAAvC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAC,CAAY;AA2EpD;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAE,KAAK,EAHxB,OAAO,EAGiB,GAFtB;IAAC,KAAK,EAAE,UAAU,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAC,CA0BnD;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EARI,OAAO,EAQX,EAAE,EAAC,MAAe,EAAE,qBAAqB,EAAC,AAP9C,CAIA,EAJQ;IACN,MAAM,CAAC,EAAE,MAAM,GAAC,YAAY,CAAC;IAC7B,qBAAqB,CAAC,EAAE,2BAA2B,CAAA;CAKF,GAHzC;IAAC,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAC,CAiB9C;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAE,CAAC,EAH/B,OAG+B,GAF7B,CAAC,IAAI,OAAO,EAAE,CAI1B;AAqKD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAVI,OAAO,EAUX,EAAE,EAAC,MAAe,EAAE,qBAAqB,EAAC,AAT9C,CAIA,EAJQ;IACN,MAAM,CAAC,EAAE,MAAM,GAAC,YAAY,CAAC;IAC7B,qBAAqB,CAAC,EAAE,2BAA2B,CAAA;CAOF,GALzC,CACR,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAC,KAC7C,OAAO,CAAC,IAAI,CAAC,CAoBpB"}
@@ -62,6 +62,7 @@ Common to both entry points unless noted.
62
62
  | `templates` | Array&lt;TemplateObject&gt; \| TemplateObject \| [path, Function\|Array] | Template declarations; see below. A bare `TemplateObject` or `[path, template]` tuple (not wrapped in an outer array) is also accepted directly. |
63
63
  | `template` | Function \| TemplateObject | Single root template convenience. |
64
64
  | `defaultTemplateFormat` | 'json' \| 'javascript' | JSONPath engine only. Jamilih validation strictness applied to a declarative (`Array`) `template` when its own `format` isn't set. Default `'json'`. See "Declarative (jamilih-shaped) templates" below. |
65
+ | `defaultInterpolateAttributes` | `{allow: string[]}` \| `{deny: string[]}` | JSONPath engine only. Restricts which element attribute names `${sel}` interpolation applies to for a declarative (`Array`) `template` when its own `interpolateAttributes` isn't set. Every string-valued attribute is eligible when omitted. See "Declarative (jamilih-shaped) templates" below. |
65
66
  | `query` | Function | Root template convenience (wrapped as `path: '$'`). |
66
67
  | `forQuery` | [select, cb] | One-off query (like FLWOR `for`). Auto-wrapped as root template. |
67
68
  | `success` | Function(result) | **`JTLT` only** — required callback; also the return of `.transform()`. Not accepted by `jtlt()`. |
@@ -134,12 +135,52 @@ A node is one of:
134
135
  | `[{$valueOf: sel}]` | `this.valueOf(sel)` |
135
136
  | `[{$applyTemplates: sel, $jtltMode?: mode, $sort?: sort}]` | `this.applyTemplates(sel, mode, sort)` |
136
137
  | `[{$if: sel}, thenNodes, elseNodes?]` | `this.if(sel, cb)` or, with an else, `this.choose(sel, whenCb, otherwiseCb)` |
137
- | `[{$forEach: sel, $sort?: sort}, childNodes]` | `this.forEach(sel, cb, sort)` |
138
- | `[{$variable: name, $select: sel}]` | `this.variable(name, sel)`, readable back later via a bare `$name` reference |
138
+ | `[{$forEach: sel, $sort?: sort, $key?: name}, childNodes]` | `this.forEach(sel, cb, sort, name)` — with `$key`, binds each iteration's key (array index, or object property name for an object-wildcard `sel` like `$.*`) to `name`, readable via a bare `$name` reference |
139
+ | `[{$variable: name, $select: sel}]` or `[{$variable: name, $value: literal}]` | `this.variable(name, sel)` / `this.variable(name, {value: literal})`, readable back later via a bare `$name` reference — `$value` embeds a literal directly in the template (e.g. a fixed collection list) rather than selecting from `data`/`params` |
139
140
  | `[{$indexedDB: {db, store, options?}, $as?: name}, childNodes?]` | fetches rows; with `$as`, binds them via `this.variable(name, {value: rows})`; without it, swaps the data context (`$`) to the rows for `childNodes` |
140
141
  | `[{$renderDefault: true}]` | `this.appendOutput(await this.renderDefault())` (an `extensions.renderDefault` your config supplies) |
141
142
  | `[{$name: {...}}]` (any key not otherwise recognized above) | an extension call: `await this[name](argObject)` — the argument object is passed through entirely unresolved (no key, e.g. a conventional `select`, is interpreted by jtlt itself; the extension resolves whatever it needs via `this.get(...)`, `this.valueOf(...)`, etc.). `name` must be a key actually present in `config.extensions`; any other name throws |
142
143
 
144
+ **Dynamic attribute values**: an element's attribute value stays a plain
145
+ string, which may embed one or more `${sel}` placeholders resolved at
146
+ runtime via `ctx.get(sel.trim(), false)` and coerced to a string
147
+ (`null`/`undefined` becomes `''`, not the literal "null"/"undefined") —
148
+ e.g. `['a', {href: '/words/${$.key}'}, ['dog']]`. A value with no `${` at
149
+ all is returned unchanged. Combined with jamilih's own `innerHTML` magic
150
+ attribute, this also covers inserting raw HTML from a data value — e.g.
151
+ `{innerHTML: '${$.definitionHtml}'}` — with no separate operation needed;
152
+ the override/template author is responsible for trusting that field's
153
+ data, the same way they're already trusted with the declarative `behavior`
154
+ itself.
155
+
156
+ By default every string-valued attribute is eligible for `${sel}`
157
+ interpolation. `compileJSONTemplate`/`validateJSONTemplate`'s
158
+ `interpolateAttributes` option (and the `TemplateObject`-level
159
+ `interpolateAttributes` / config-wide `defaultInterpolateAttributes`
160
+ fallback) restricts this: `{allow: ['href', 'innerHTML']}` interpolates
161
+ only the named attributes (uniformly across every element in the
162
+ template — not scoped per element name), leaving any other attribute's
163
+ value as a literal string even if it happens to contain `${...}`;
164
+ `{deny: ['title']}` interpolates every attribute except the named ones.
165
+ A `${...}`-shaped string sitting in an ineligible attribute is not
166
+ flagged as a validation error — it may just as well be a coincidental
167
+ literal value (e.g. a currency template or CSS `calc()`-like string) —
168
+ it simply renders as literal text.
169
+
170
+ **Iterating with a key, and literal iteration data**: `$forEach`'s `$key`
171
+ exposes the current iteration's key — the array index, or (for an
172
+ object-wildcard select like `$.*`) the object property name — as a bare
173
+ `$name` reference, e.g. rendering "property: value" pairs while iterating
174
+ a record's own properties, or skipping one property by name via
175
+ `{$if: "$prop !== 'blob'"}`. `$variable`'s `$value` embeds a literal
176
+ value directly in the template (an array, object, or scalar) rather than
177
+ selecting one from `data`/`params` — e.g. a fixed list of collection
178
+ links a root page shows regardless of the underlying data — and
179
+ `$forEach`'s own bare-`$name` convention (`$forEach: '$name'`, not
180
+ `$forEach: '$name[*]'` — jsonpath-plus has no notion of a named root to
181
+ continue a path from) iterates it directly, exposing its own array
182
+ indices via `$key` too.
183
+
143
184
  Every operation node's leading object is entirely `$`-prefixed — jamilih's
144
185
  own validator requires this of any first-position plain object. `$jtltMode`/
145
186
  `$jtltText` are namespaced because jamilih itself reserves `$mode` outright
@@ -184,7 +225,8 @@ Consumers who register extensions are encouraged to document their chosen
184
225
  names somewhere (e.g. a project wiki page) alongside jtlt's own reserved
185
226
  op keys (`$text`, `$jtltText`, `$string`, `$valueOf`, `$applyTemplates`,
186
227
  `$if`, `$forEach`, `$variable`, `$indexedDB`, `$renderDefault`, `$mode`,
187
- `$jtltMode`, `$as`, `$sort`, `$select`) as names to avoid.
228
+ `$jtltMode`, `$as`, `$sort`, `$select`, `$key`, `$value`) as names to
229
+ avoid.
188
230
 
189
231
  **Validation**: `format: 'json'` (the default) rejects an embedded live
190
232
  function/DOM node anywhere in the tree — the intent is a safely
@@ -194,13 +236,14 @@ arbitrary JavaScript. Pass `format: 'javascript'` on the `TemplateObject`
194
236
  entry lacking its own `format`) to allow one.
195
237
 
196
238
  **Exports** (from `'jtlt'`):
197
- - `compileJSONTemplate(nodes, {format?}) => TemplateFunction` — throws a
198
- `TypeError` with every problem found if `nodes` is invalid.
199
- - `validateJSONTemplate(nodes, {format?}) => {valid, errors}` — the same
200
- checks, non-executing and non-throwing; for a "validate before save"
201
- editor workflow. Includes `extractReads()`'s errors, below — an
202
- unresolvable `$indexedDB` target makes the whole template invalid, not
203
- just a `reads` omission.
239
+ - `compileJSONTemplate(nodes, {format?, interpolateAttributes?}) =>
240
+ TemplateFunction` — throws a `TypeError` with every problem found if
241
+ `nodes` (or `interpolateAttributes`'s own shape) is invalid.
242
+ - `validateJSONTemplate(nodes, {format?, interpolateAttributes?}) =>
243
+ {valid, errors}` — the same checks, non-executing and non-throwing; for
244
+ a "validate before save" editor workflow. Includes `extractReads()`'s
245
+ errors, below — an unresolvable `$indexedDB` target makes the whole
246
+ template invalid, not just a `reads` omission.
204
247
  - `extractReads(nodes) => {reads: {db, store}[], errors}` — statically
205
248
  derives the `{db, store}` targets every `$indexedDB` node in the tree
206
249
  touches (walking element children, `$if`/`$forEach` bodies, and another
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jtlt",
3
- "version": "0.22.0",
3
+ "version": "0.24.0",
4
4
  "type": "module",
5
5
  "author": "Brett Zamir",
6
6
  "contributors": [],
@@ -429,9 +429,20 @@ class DOMJoiningTransformer extends AbstractJoiningTransformer {
429
429
  }
430
430
 
431
431
  for (const att in atts) {
432
- if (Object.hasOwn(atts, att)) {
433
- el.setAttribute(att, this._replaceCharacterMaps(atts[att]));
432
+ if (!Object.hasOwn(atts, att)) {
433
+ continue;
434
434
  }
435
+ // Mirrors jamilih's own real DOM builder (`jml.js`): `innerHTML`
436
+ // sets real, browser-parsed HTML content rather than a literal
437
+ // `innerHTML="..."` attribute — see jsonTemplate.js's
438
+ // `resolveElementAttributes` doc comment for the trust model
439
+ // (the template author is responsible for the value's safety;
440
+ // this sink does no sanitization of its own).
441
+ if (att === 'innerHTML') {
442
+ el.innerHTML = /** @type {string} */ (atts[att]);
443
+ continue;
444
+ }
445
+ el.setAttribute(att, this._replaceCharacterMaps(atts[att]));
435
446
  }
436
447
 
437
448
  const oldDOM = this._dom;
@@ -493,9 +504,15 @@ class DOMJoiningTransformer extends AbstractJoiningTransformer {
493
504
  }
494
505
 
495
506
  for (const att in atts) {
496
- if (Object.hasOwn(atts, att)) {
497
- el.setAttribute(att, this._replaceCharacterMaps(atts[att]));
507
+ if (!Object.hasOwn(atts, att)) {
508
+ continue;
509
+ }
510
+ // See the matching branch above for why `innerHTML` is special-cased.
511
+ if (att === 'innerHTML') {
512
+ el.innerHTML = /** @type {string} */ (atts[att]);
513
+ continue;
498
514
  }
515
+ el.setAttribute(att, this._replaceCharacterMaps(atts[att]));
499
516
  }
500
517
  this.append(el);
501
518
 
@@ -132,9 +132,13 @@ class JSONPathTransformer {
132
132
  if (isJSONTemplateNodeArray(normalized.template)) {
133
133
  const format = normalized.format || config.defaultTemplateFormat ||
134
134
  'json';
135
+ const interpolateAttributes = normalized.interpolateAttributes ||
136
+ config.defaultInterpolateAttributes;
135
137
  normalized = {
136
138
  ...normalized,
137
- template: compileJSONTemplate(normalized.template, {format})
139
+ template: compileJSONTemplate(
140
+ normalized.template, {format, interpolateAttributes}
141
+ )
138
142
  };
139
143
  }
140
144
  return normalized;
@@ -103,6 +103,10 @@ const escapeRegexReplacement = (string) => {
103
103
  * default for the jamilih validation strictness `compileJSONTemplate`
104
104
  * applies to a declarative (Array) `template`, used when an entry has no
105
105
  * `format` of its own
106
+ * @property {import('./jsonTemplate.js').InterpolateAttributesConfig}
107
+ * [defaultInterpolateAttributes] Config-wide default for a declarative
108
+ * (Array) `template`'s `${sel}` attribute-interpolation eligibility, used
109
+ * when an entry has no `interpolateAttributes` of its own
106
110
  * @property {Record<string, unknown>} [params] Runtime parameter values
107
111
  * (like an XSLT processor's stylesheet parameters); a `param()` with a
108
112
  * matching name uses this value instead of its declared default
@@ -821,9 +825,22 @@ class JSONPathTransformerContext {
821
825
  * `void`, not `void|Promise<void>` — see the note on `SimpleCallback`
822
826
  * in JSONJoiningTransformer.js.)
823
827
  * @param {SortSpec<V>} [sort] - Sort spec
828
+ * @param {string} [keyVar] - When given, binds each iteration's key —
829
+ * the array index, or the object property name when `select` is an
830
+ * object-wildcard path like `$.*` (jsonpath-plus's own `parentProperty`
831
+ * on a `resultType: 'all'` match) — to this name for the duration of
832
+ * that iteration, readable back via a bare `$name` reference (same
833
+ * convention as `variable()`), same as `_params[0]`/`this.vars` are
834
+ * already scoped fresh per iteration. Lets a template render
835
+ * "property: value" pairs, or skip one property by name via `$if`,
836
+ * while iterating an object's own properties — jsonpath-plus's match
837
+ * data already carries this; `select`s naming a bound variable (the
838
+ * bare-`$name` convention, below) carry the array index too, but never
839
+ * a meaningful key for a non-array bound value (treated as a single,
840
+ * length-1-sequence item — there's no "property name" for that case).
824
841
  * @returns {this|Promise<this>}
825
842
  */
826
- forEach (select, cb, sort) {
843
+ forEach (select, cb, sort, keyVar) {
827
844
  // eslint-disable-next-line unicorn/no-this-assignment -- Temporary
828
845
  const that = this;
829
846
  // A bare `$name` (matching `if()`/`valueOf()`/comparisons' own
@@ -836,10 +853,13 @@ class JSONPathTransformerContext {
836
853
  const param = paramRef && paramRef.groups
837
854
  ? this._lookupParam(paramRef.groups.name)
838
855
  : {has: false, value: undefined};
839
- /** @type {{value: any}[]} */
856
+ /** @type {{value: any, parentProperty?: string|number}[]} */
840
857
  const matches = param.has
841
- ? (Array.isArray(param.value) ? param.value : [param.value]).
842
- map((value) => ({value}))
858
+ ? (Array.isArray(param.value)
859
+ // An array's own index is a meaningful key (see `keyVar`, above);
860
+ // a non-array value wrapped as a length-1 sequence has none.
861
+ ? param.value.map((value, index) => ({value, parentProperty: index}))
862
+ : [{value: param.value}])
843
863
  : /** @type {any} */ (jsonpath)({
844
864
  path: select,
845
865
  json: this._contextObj,
@@ -956,7 +976,7 @@ class JSONPathTransformerContext {
956
976
  const prevVars = that.vars;
957
977
  that._params = {0: m.value};
958
978
  that._contextObj = m.value;
959
- that.vars = {};
979
+ that.vars = keyVar ? {[keyVar]: m.parentProperty} : {};
960
980
  // `cb`'s declared return type is plain `void` (see the parameter's
961
981
  // JSDoc) — cast here to duck-type the real value; see the note on
962
982
  // `SimpleCallback` in JSONJoiningTransformer.js.
@@ -987,7 +1007,7 @@ class JSONPathTransformerContext {
987
1007
  const pv = that.vars;
988
1008
  that._params = {0: next.value};
989
1009
  that._contextObj = next.value;
990
- that.vars = {};
1010
+ that.vars = keyVar ? {[keyVar]: next.parentProperty} : {};
991
1011
  try {
992
1012
  // eslint-disable-next-line no-await-in-loop -- Sequential order
993
1013
  await cb.call(that, next.value);
@@ -632,9 +632,21 @@ class StringJoiningTransformer extends AbstractJoiningTransformer {
632
632
  /** @type {any} */
633
633
  const oldTagState = this._openTagState;
634
634
  this._openTagState = true;
635
+ /** @type {string|undefined} */
636
+ let innerHTMLValue;
635
637
  if (atts) {
636
638
  const attsObj = /** @type {Record<string, unknown>} */ (atts);
637
639
  Object.keys(attsObj).forEach((att) => {
640
+ // Mirrors jamilih's own real DOM builder (`jml.js`): `innerHTML`
641
+ // sets raw, unescaped HTML content rather than a literal
642
+ // `innerHTML="..."` attribute — see jsonTemplate.js's
643
+ // `resolveElementAttributes` doc comment for the trust model (the
644
+ // template author is responsible for the value's safety; this
645
+ // sink does no sanitization of its own).
646
+ if (att === 'innerHTML') {
647
+ innerHTMLValue = /** @type {string} */ (attsObj[att]);
648
+ return;
649
+ }
638
650
  that.attribute(
639
651
  att,
640
652
  /** @type {string|Record<string, unknown>} */ (attsObj[att]),
@@ -642,6 +654,13 @@ class StringJoiningTransformer extends AbstractJoiningTransformer {
642
654
  );
643
655
  });
644
656
  }
657
+ if (innerHTMLValue !== undefined) {
658
+ if (this._openTagState) {
659
+ this.append('>');
660
+ this._openTagState = false;
661
+ }
662
+ this.append(innerHTMLValue);
663
+ }
645
664
  if (childNodes && childNodes.length) {
646
665
  this._openTagState = false;
647
666
  this.append(this._replaceCharacterMaps(
package/src/index.js CHANGED
@@ -46,6 +46,13 @@ export const setWindow = (win) => {
46
46
  * live values (functions, DOM nodes, …) embedded in the structure,
47
47
  * `'javascript'` allows them. Ignored for a function `template`. Falls
48
48
  * back to `config.defaultTemplateFormat`, then `'json'`, when omitted.
49
+ * @property {import('./jsonTemplate.js').InterpolateAttributesConfig}
50
+ * [interpolateAttributes] - For an Array `template` only: restricts
51
+ * which element attribute names `${sel}` interpolation applies to (see
52
+ * `compileJSONTemplate`'s own doc comment) — `{allow: [...]}` or
53
+ * `{deny: [...]}`. Every string-valued attribute is eligible when
54
+ * omitted. Falls back to `config.defaultInterpolateAttributes` when
55
+ * omitted here too.
49
56
  * @property {TemplateFunction<T, U, TCtx> | JSONTemplateNode[]} template -
50
57
  * Template function, or a declarative (jamilih-shaped) node array
51
58
  * compiled via `compileJSONTemplate` — detected by `Array.isArray`, since
@@ -151,8 +158,9 @@ export const setWindow = (win) => {
151
158
  * [{$applyTemplates: string, $jtltMode?: string, $sort?: unknown}] |
152
159
  * [{$if: string}, JSONTemplateNode[]] |
153
160
  * [{$if: string}, JSONTemplateNode[], JSONTemplateNode[]] |
154
- * [{$forEach: string, $sort?: unknown}, JSONTemplateNode[]] |
161
+ * [{$forEach: string, $sort?: unknown, $key?: string}, JSONTemplateNode[]] |
155
162
  * [{$variable: string, $select: string}] |
163
+ * [{$variable: string, $value: unknown}] |
156
164
  * [{
157
165
  * $indexedDB: {
158
166
  * db: string, store: string,
@@ -333,6 +341,12 @@ export const setWindow = (win) => {
333
341
  * default for an Array `template`'s jamilih validation strictness (see
334
342
  * `TemplateObject.format`), used for any entry that doesn't specify its
335
343
  * own `format`. Defaults to `'json'` when omitted here too.
344
+ * @property {import('./jsonTemplate.js').InterpolateAttributesConfig}
345
+ * [defaultInterpolateAttributes] Config-wide default for an Array
346
+ * `template`'s `${sel}` attribute-interpolation eligibility (see
347
+ * `TemplateObject.interpolateAttributes`), used for any entry that
348
+ * doesn't specify its own. Every string-valued attribute is eligible
349
+ * when omitted here too.
336
350
  */
337
351
 
338
352
  /**
@@ -114,6 +114,138 @@ function splitElementRest (rest) {
114
114
  return {atts: {}, children: []};
115
115
  }
116
116
 
117
+ /**
118
+ * Resolve every `${sel}` placeholder embedded in a string attribute value
119
+ * against the live context, e.g. `'/words?key=${$.key}'` or (combined with
120
+ * jamilih's own `innerHTML` magic attribute) `{innerHTML: '${$.definition}'}`
121
+ * — no separate raw-HTML operation is needed since `innerHTML` is just
122
+ * another string-valued attribute as far as this is concerned. `sel` is
123
+ * resolved via `ctx.get(sel.trim(), false)`; a `null`/`undefined` result
124
+ * becomes `''` rather than the literal string "null"/"undefined", matching
125
+ * typical templating conventions (most useful for a still-missing value in
126
+ * an `href`). A value with no `${` at all is returned unchanged, so the
127
+ * common (fully static) case allocates nothing extra.
128
+ * @param {string} value
129
+ * @param {any} ctx
130
+ * @returns {string}
131
+ */
132
+ function interpolateString (value, ctx) {
133
+ if (!value.includes('${')) {
134
+ return value;
135
+ }
136
+ return value.replaceAll(/\$\{(?<sel>[^\}]+)\}/gv, (_match, sel) => {
137
+ const resolved = ctx.get(sel.trim(), false);
138
+ return resolved === null || resolved === undefined
139
+ ? ''
140
+ : String(resolved);
141
+ });
142
+ }
143
+
144
+ /**
145
+ * @typedef {{allow: string[]} | {deny: string[]}} InterpolateAttributesConfig
146
+ */
147
+
148
+ /**
149
+ * Validate an `interpolateAttributes` option's own shape, without building
150
+ * anything from it — used by `validateJSONTemplate` to surface a bad
151
+ * config's errors up front, before ever compiling (matching its own "report
152
+ * every problem, don't throw" contract). Omitted entirely, there is nothing
153
+ * to validate (every string-valued attribute is eligible, the default);
154
+ * otherwise exactly one of `allow`/`deny` must be present — giving both, or
155
+ * neither, is an error rather than silently picked between — each a
156
+ * non-empty array of non-empty attribute-name strings.
157
+ * @param {InterpolateAttributesConfig} [config]
158
+ * @returns {string[]}
159
+ */
160
+ function validateInterpolateAttributesConfig (config) {
161
+ if (config === undefined) {
162
+ return [];
163
+ }
164
+ if (!isPlainObject(config)) {
165
+ return [
166
+ '`interpolateAttributes`, when given, must be an object with ' +
167
+ 'exactly one of `allow` or `deny` (an array of attribute names).'
168
+ ];
169
+ }
170
+ const hasAllow = Object.hasOwn(config, 'allow');
171
+ const hasDeny = Object.hasOwn(config, 'deny');
172
+ if (hasAllow === hasDeny) {
173
+ return [
174
+ '`interpolateAttributes`, when given, must have exactly one of ' +
175
+ '`allow` or `deny` (an array of attribute names).'
176
+ ];
177
+ }
178
+ const list = /** @type {Record<string, unknown>} */ (config)[
179
+ hasAllow ? 'allow' : 'deny'
180
+ ];
181
+ if (
182
+ !Array.isArray(list) ||
183
+ list.some((n) => typeof n !== 'string' || n.length === 0)
184
+ ) {
185
+ return [
186
+ `\`interpolateAttributes.${hasAllow ? 'allow' : 'deny'}\` must be ` +
187
+ 'an array of non-empty attribute-name strings.'
188
+ ];
189
+ }
190
+ return [];
191
+ }
192
+
193
+ /**
194
+ * Compile an `interpolateAttributes` option into a plain attribute-name-
195
+ * matching predicate. Only ever called (by `compileJSONTemplate`) once
196
+ * `validateInterpolateAttributesConfig` has already confirmed the config is
197
+ * well-formed, so this never needs to handle a malformed one itself.
198
+ * Omitted entirely, every string-valued attribute is eligible (the
199
+ * default, backward-compatible behavior); `{allow: [...]}` restricts
200
+ * eligibility to exactly those attribute names, uniformly across every
201
+ * element in the template (this is a template-wide policy, not scoped per
202
+ * element name — a `href`-vs-`src` distinction, say, isn't possible);
203
+ * `{deny: [...]}` makes every attribute eligible *except* those named.
204
+ * @param {InterpolateAttributesConfig} [config]
205
+ * @returns {(name: string) => boolean}
206
+ */
207
+ function compileInterpolateAttributesMatcher (config) {
208
+ if (config === undefined) {
209
+ return () => true;
210
+ }
211
+ const configObj = /** @type {Record<string, unknown>} */ (config);
212
+ if (Object.hasOwn(configObj, 'allow')) {
213
+ const set = new Set(/** @type {string[]} */ (configObj.allow));
214
+ return (name) => set.has(name);
215
+ }
216
+ const set = new Set(/** @type {string[]} */ (configObj.deny));
217
+ return (name) => !set.has(name);
218
+ }
219
+
220
+ /**
221
+ * Apply `interpolateString` to every string-valued attribute of an
222
+ * element's attributes object (including jamilih magic attributes like
223
+ * `innerHTML`) that `ctx._interpolateAttributesMatcher` allows — always set
224
+ * by `compileJSONTemplate` (from its `interpolateAttributes` option) before
225
+ * `runNodes` ever runs, since this function is only ever reached through
226
+ * the function `compileJSONTemplate` returns. Non-string attribute values
227
+ * (e.g. a nested `style` object, or an array-valued attribute) are always
228
+ * passed through unchanged — interpolation only ever applies to literal
229
+ * string content; a data-driven nested attribute value is not yet
230
+ * supported.
231
+ * @param {Record<string, unknown>} atts
232
+ * @param {any} ctx
233
+ * @returns {Record<string, unknown>}
234
+ */
235
+ function resolveElementAttributes (atts, ctx) {
236
+ const matches = /** @type {(name: string) => boolean} */ (
237
+ ctx._interpolateAttributesMatcher
238
+ );
239
+ /** @type {Record<string, unknown>} */
240
+ const result = {};
241
+ for (const [key, value] of Object.entries(atts)) {
242
+ result[key] = typeof value === 'string' && matches(key)
243
+ ? interpolateString(value, ctx)
244
+ : value;
245
+ }
246
+ return result;
247
+ }
248
+
117
249
  /**
118
250
  * Operation keys recognized on an operation node's leading object. `$mode`
119
251
  * is never valid bare (jamilih hard-reserves it); `$text` is valid bare
@@ -397,20 +529,30 @@ export function extractReads (nodes) {
397
529
  * `compileJSONTemplate`, this never throws — it reports every problem it
398
530
  * finds, for a "validate before save" editor workflow. Includes the
399
531
  * `extractReads()` check (an unresolvable `$indexedDB` target is a
400
- * validation error, not just a `reads` omission).
532
+ * validation error, not just a `reads` omission) and, when
533
+ * `interpolateAttributes` is given, its own config-shape check (a
534
+ * `${...}`-shaped string sitting in an attribute `interpolateAttributes`
535
+ * doesn't cover is *not* flagged — it may just as well be a coincidental
536
+ * literal value, e.g. a currency template or CSS `calc()`-like string, so
537
+ * treating it as a mistake would be presumptuous; it silently renders as
538
+ * literal text instead, same as any other ineligible attribute).
401
539
  * @param {unknown[]} nodes
402
- * @param {{format?: 'json'|'javascript'}} [options]
540
+ * @param {{
541
+ * format?: 'json'|'javascript',
542
+ * interpolateAttributes?: InterpolateAttributesConfig
543
+ * }} [options]
403
544
  * @returns {{valid: boolean, errors: string[]}}
404
545
  */
405
- export function validateJSONTemplate (nodes, {format = 'json'} = {}) {
546
+ export function validateJSONTemplate (
547
+ nodes, {format = 'json', interpolateAttributes} = {}
548
+ ) {
406
549
  if (!Array.isArray(nodes)) {
407
550
  return {
408
551
  valid: false,
409
552
  errors: ['A declarative template must be an array of nodes.']
410
553
  };
411
554
  }
412
- /** @type {string[]} */
413
- const errors = [];
555
+ const errors = validateInterpolateAttributesConfig(interpolateAttributes);
414
556
  for (const node of nodes) {
415
557
  validateNode(node, format, errors);
416
558
  }
@@ -442,7 +584,8 @@ async function runNode (node, ctx) {
442
584
  if (kind === 'element') {
443
585
  const [name, ...rest] = /** @type {[string, ...unknown[]]} */ (arr);
444
586
  const {atts, children} = splitElementRest(rest);
445
- await ctx.element(name, atts, [], async () => {
587
+ const resolvedAtts = resolveElementAttributes(atts, ctx);
588
+ await ctx.element(name, resolvedAtts, [], async () => {
446
589
  await runNodes(children, ctx);
447
590
  });
448
591
  return;
@@ -499,7 +642,16 @@ async function runOperation (head, rest, ctx) {
499
642
  return;
500
643
  }
501
644
  if (Object.hasOwn(head, '$variable')) {
502
- ctx.variable(head.$variable, {select: head.$select});
645
+ // `$value` (a literal, e.g. a collection list embedded directly in the
646
+ // template) takes precedence over `$select` when both are given,
647
+ // mirroring `variable()`'s own JS-API-level `_paramSpec` precedence —
648
+ // this is a direct passthrough to that same mechanism, not a new rule.
649
+ ctx.variable(
650
+ head.$variable,
651
+ Object.hasOwn(head, '$value')
652
+ ? {value: head.$value}
653
+ : {select: head.$select}
654
+ );
503
655
  return;
504
656
  }
505
657
  if (Object.hasOwn(head, '$if')) {
@@ -528,7 +680,8 @@ async function runOperation (head, rest, ctx) {
528
680
  async () => {
529
681
  await runNodes(/** @type {unknown[]} */ (childNodes), ctx);
530
682
  },
531
- head.$sort
683
+ head.$sort,
684
+ head.$key
532
685
  );
533
686
  return;
534
687
  }
@@ -581,22 +734,38 @@ async function runOperation (head, rest, ctx) {
581
734
  /**
582
735
  * Compile a declarative (jamilih-shaped) node array into a jtlt
583
736
  * `TemplateFunction`. Validates the whole tree up front (see
584
- * `validateJSONTemplate`) and throws on the first problem, rather than
585
- * failing partway through execution.
737
+ * `validateJSONTemplate`, including `interpolateAttributes`'s own config
738
+ * shape) and throws on the first problem, rather than failing partway
739
+ * through execution. `interpolateAttributes`, when given, restricts which
740
+ * element attributes `${sel}` interpolation applies to (see
741
+ * `compileInterpolateAttributesMatcher`) — stashed on the live context as
742
+ * `_interpolateAttributesMatcher` for `resolveElementAttributes` to consult
743
+ * at runtime.
586
744
  * @param {unknown[]} nodes
587
- * @param {{format?: 'json'|'javascript'}} [options]
745
+ * @param {{
746
+ * format?: 'json'|'javascript',
747
+ * interpolateAttributes?: InterpolateAttributesConfig
748
+ * }} [options]
588
749
  * @returns {(
589
750
  * this: any, value: unknown, cfg?: {mode?: string}
590
751
  * ) => Promise<void>}
591
752
  */
592
- export function compileJSONTemplate (nodes, {format = 'json'} = {}) {
593
- const {valid, errors} = validateJSONTemplate(nodes, {format});
753
+ export function compileJSONTemplate (
754
+ nodes, {format = 'json', interpolateAttributes} = {}
755
+ ) {
756
+ const {valid, errors} = validateJSONTemplate(
757
+ nodes, {format, interpolateAttributes}
758
+ );
594
759
  if (!valid) {
595
760
  throw new TypeError(
596
761
  `Invalid declarative template:\n${errors.join('\n')}`
597
762
  );
598
763
  }
764
+ const matches = compileInterpolateAttributesMatcher(interpolateAttributes);
599
765
  return async function () {
766
+ /** @type {{_interpolateAttributesMatcher: (name: string) => boolean}} */ (
767
+ this
768
+ )._interpolateAttributesMatcher = matches;
600
769
  await runNodes(nodes, this);
601
770
  };
602
771
  }