@inf-monkeys-tech/monkeys 1.1.24 → 1.1.26

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 (65) hide show
  1. package/README.md +33 -0
  2. package/lib/contracts/declarative-control-http.d.ts +148 -0
  3. package/lib/contracts/declarative-control-http.d.ts.map +1 -1
  4. package/lib/contracts/declarative-control.d.ts +31 -0
  5. package/lib/contracts/declarative-control.d.ts.map +1 -1
  6. package/lib/contracts/declarative-control.js +6 -0
  7. package/lib/contracts/declarative-control.js.map +1 -1
  8. package/lib/contracts/declarative-document-import.d.ts +25 -0
  9. package/lib/contracts/declarative-document-import.d.ts.map +1 -1
  10. package/lib/contracts/declarative-publication-job.d.ts +16 -0
  11. package/lib/contracts/declarative-publication-job.d.ts.map +1 -1
  12. package/lib/contracts/page-expression.d.ts.map +1 -1
  13. package/lib/contracts/page-expression.js +7 -0
  14. package/lib/contracts/page-expression.js.map +1 -1
  15. package/lib/esm/chunk-4UVW5LEP.mjs +78 -0
  16. package/lib/esm/chunk-4UVW5LEP.mjs.map +1 -0
  17. package/lib/esm/chunk-6BWJ6PMM.mjs +7314 -0
  18. package/lib/esm/chunk-6BWJ6PMM.mjs.map +1 -0
  19. package/lib/esm/chunk-J7I5CBDN.mjs +20332 -0
  20. package/lib/esm/chunk-J7I5CBDN.mjs.map +1 -0
  21. package/lib/esm/chunk-NNHXKONM.mjs +205 -0
  22. package/lib/esm/chunk-NNHXKONM.mjs.map +1 -0
  23. package/lib/esm/chunk-QLAQOBO2.mjs +1009 -0
  24. package/lib/esm/chunk-QLAQOBO2.mjs.map +1 -0
  25. package/lib/esm/chunk-VY4ZEIL3.mjs +159 -0
  26. package/lib/esm/chunk-VY4ZEIL3.mjs.map +1 -0
  27. package/lib/esm/contracts/index.mjs +585 -20882
  28. package/lib/esm/contracts/index.mjs.map +1 -1
  29. package/lib/esm/index.mjs +769 -27904
  30. package/lib/esm/index.mjs.map +1 -1
  31. package/lib/esm/runtime/index.mjs +148 -26592
  32. package/lib/esm/runtime/index.mjs.map +1 -1
  33. package/lib/esm/schemas/index.mjs +352 -20670
  34. package/lib/esm/schemas/index.mjs.map +1 -1
  35. package/lib/index.d.ts +2 -0
  36. package/lib/index.d.ts.map +1 -1
  37. package/lib/index.js +2 -0
  38. package/lib/index.js.map +1 -1
  39. package/lib/json-schema/page-runtime-bundle.schema.json +15 -0
  40. package/lib/json-schema/page.schema.json +15 -0
  41. package/lib/runtime/declarative-control-compiler.d.ts.map +1 -1
  42. package/lib/runtime/declarative-control-compiler.js +2 -0
  43. package/lib/runtime/declarative-control-compiler.js.map +1 -1
  44. package/lib/runtime/index.d.ts +2 -0
  45. package/lib/runtime/index.d.ts.map +1 -1
  46. package/lib/runtime/index.js +2 -0
  47. package/lib/runtime/index.js.map +1 -1
  48. package/lib/runtime/page-composition.d.ts +35 -0
  49. package/lib/runtime/page-composition.d.ts.map +1 -0
  50. package/lib/runtime/page-composition.js +107 -0
  51. package/lib/runtime/page-composition.js.map +1 -0
  52. package/lib/runtime/page-expression.d.ts +10 -0
  53. package/lib/runtime/page-expression.d.ts.map +1 -1
  54. package/lib/runtime/page-expression.js +63 -11
  55. package/lib/runtime/page-expression.js.map +1 -1
  56. package/lib/runtime/runtime-definition-wire.d.ts +8275 -0
  57. package/lib/runtime/runtime-definition-wire.d.ts.map +1 -0
  58. package/lib/runtime/runtime-definition-wire.js +111 -0
  59. package/lib/runtime/runtime-definition-wire.js.map +1 -0
  60. package/lib/schemas/index.d.ts +14 -0
  61. package/lib/schemas/index.d.ts.map +1 -1
  62. package/lib/theme-tokens/core.d.ts.map +1 -1
  63. package/lib/theme-tokens/core.js +16 -8
  64. package/lib/theme-tokens/core.js.map +1 -1
  65. package/package.json +1 -1
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.compilePageComposition = exports.PageCompositionSchema = exports.PageComponentDefinitionSchema = void 0;
4
+ const zod_1 = require("zod");
5
+ const declarative_control_1 = require("../contracts/declarative-control");
6
+ const common_1 = require("../contracts/common");
7
+ /** Source-level components expand at publication, so existing hosts keep the same Page contract. */
8
+ const Name = zod_1.z.string().regex(/^[A-Za-z][A-Za-z0-9_.-]{0,127}$/);
9
+ const Path = zod_1.z.array(zod_1.z.union([Name, zod_1.z.number().int().min(0).max(4095)])).min(1).max(32);
10
+ exports.PageComponentDefinitionSchema = zod_1.z.object({
11
+ root: declarative_control_1.PageNodeSchema,
12
+ inputs: zod_1.z.record(Name, zod_1.z.object({ path: Path, default: common_1.JsonValueSchema.optional() }).strict()).optional(),
13
+ /** A slot names the local node whose children are supplied by the instance. */
14
+ slots: zod_1.z.record(Name, Name).optional(),
15
+ }).strict();
16
+ const SourceNode = zod_1.z.lazy(() => zod_1.z.union([
17
+ zod_1.z.object({ id: Name, use: Name, inputs: zod_1.z.record(Name, common_1.JsonValueSchema).optional(), slots: zod_1.z.record(Name, zod_1.z.array(SourceNode)).optional() }).strict(),
18
+ zod_1.z.object({ children: zod_1.z.array(SourceNode).optional() }).passthrough(),
19
+ ]));
20
+ exports.PageCompositionSchema = zod_1.z.object({
21
+ contract: zod_1.z.literal('PageComposition'),
22
+ schemaVersion: zod_1.z.literal(1),
23
+ /** Page header and state declarations; body is supplied separately. */
24
+ page: zod_1.z.record(zod_1.z.string(), zod_1.z.unknown()),
25
+ components: zod_1.z.record(Name, exports.PageComponentDefinitionSchema),
26
+ body: SourceNode,
27
+ }).strict();
28
+ const forbidden = new Set(['__proto__', 'prototype', 'constructor']);
29
+ function assign(root, path, value) {
30
+ let target = root;
31
+ for (const [index, key] of path.entries()) {
32
+ if (forbidden.has(String(key)) || ['id', 'children', 'data', 'actions', 'programActions', 'on', 'effects'].includes(String(path[0])))
33
+ throw new TypeError('A component input must target presentation fields, not identities or executable declarations.');
34
+ if (index === path.length - 1) {
35
+ target[key] = structuredClone(value);
36
+ return;
37
+ }
38
+ if (target[key] === null || typeof target[key] !== 'object')
39
+ throw new TypeError('Component input path does not exist.');
40
+ target = target[key];
41
+ }
42
+ }
43
+ /** Reusable presentation trees with explicit inputs/slots; business state and operations stay in Page. */
44
+ function compilePageComposition(input) {
45
+ const source = exports.PageCompositionSchema.parse(input);
46
+ let count = 0;
47
+ const ids = new Set();
48
+ const expand = (value, depth) => {
49
+ if (++count > 4096 || depth > 64)
50
+ throw new RangeError('Page composition exceeds its node budget.');
51
+ if ('use' in value) {
52
+ const definition = source.components[value.use];
53
+ if (!definition)
54
+ throw new TypeError(`Unknown Page component ${value.use}.`);
55
+ const root = structuredClone(definition.root);
56
+ const localNodes = new Map();
57
+ const namespace = (node, isRoot = false) => {
58
+ if (localNodes.has(node.id))
59
+ throw new TypeError('Duplicate component-local node id.');
60
+ localNodes.set(node.id, node);
61
+ // Operations and scoped state belong to the instance's supplied slots, not a shared template.
62
+ if (node.data?.length || node.actions?.length || node.programActions?.length || node.on?.length || node.effects?.length)
63
+ throw new TypeError('Component templates contain presentation only; supply business operations through slots.');
64
+ node.id = isRoot ? value.id : `${value.id}.${node.id}`;
65
+ node.children?.forEach(child => namespace(child));
66
+ };
67
+ namespace(root, true);
68
+ for (const node of localNodes.values()) {
69
+ if (node.slot && localNodes.has(node.slot))
70
+ node.slot = localNodes.get(node.slot).id;
71
+ const slots = node.model?.slots;
72
+ if (slots && typeof slots === 'object' && !Array.isArray(slots)) {
73
+ node.model.slots = Object.fromEntries(Object.entries(slots).map(([name, target]) => [
74
+ name, typeof target === 'string' && localNodes.has(target) ? localNodes.get(target).id : target,
75
+ ]));
76
+ }
77
+ }
78
+ for (const name of Object.keys(value.inputs ?? {}))
79
+ if (!definition.inputs?.[name])
80
+ throw new TypeError(`Unknown component input ${name}.`);
81
+ for (const [name, binding] of Object.entries(definition.inputs ?? {})) {
82
+ const supplied = Object.prototype.hasOwnProperty.call(value.inputs ?? {}, name) ? value.inputs[name] : binding.default;
83
+ if (supplied === undefined)
84
+ throw new TypeError(`Missing component input ${name}.`);
85
+ assign(root, binding.path, supplied);
86
+ }
87
+ for (const name of Object.keys(value.slots ?? {}))
88
+ if (!definition.slots?.[name])
89
+ throw new TypeError(`Unknown component slot ${name}.`);
90
+ for (const [name, localId] of Object.entries(definition.slots ?? {})) {
91
+ const node = localNodes.get(localId);
92
+ if (!node)
93
+ throw new TypeError(`Unknown component slot target ${localId}.`);
94
+ if (value.slots?.[name])
95
+ node.children = value.slots[name];
96
+ }
97
+ return expand(root, depth + 1);
98
+ }
99
+ if (ids.has(value.id))
100
+ throw new TypeError(`Duplicate Page node ${value.id}.`);
101
+ ids.add(value.id);
102
+ return { ...value, ...(value.children ? { children: value.children.map((child) => expand(child, depth + 1)) } : {}) };
103
+ };
104
+ return declarative_control_1.PageSchema.parse({ ...source.page, contract: 'Page', schemaVersion: 1, body: expand(source.body, 0) });
105
+ }
106
+ exports.compilePageComposition = compilePageComposition;
107
+ //# sourceMappingURL=page-composition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"page-composition.js","sourceRoot":"","sources":["../../src/runtime/page-composition.ts"],"names":[],"mappings":"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"}
@@ -5,5 +5,15 @@ export declare const readPageValue: (value: JsonValue | undefined, path: readonl
5
5
  export declare const compilePageExpression: (input: unknown) => PageExpression;
6
6
  export declare const writePageDraftPath: (source: JsonValue, path: readonly string[], value: JsonValue) => JsonValue;
7
7
  export declare const evaluatePageExpression: (expression: unknown, context: PageExpressionContext) => JsonValue;
8
+ /** Snapshot and validate an immutable expression once, then evaluate fresh inputs.
9
+ * Dynamic value limits and the operation budget apply independently to every call.
10
+ * Mutable literal outputs are isolated from the private compiled declaration.
11
+ */
12
+ export declare const preparePageExpression: (input: unknown) => ((context: PageExpressionContext) => JsonValue);
13
+ /** Validate and snapshot declarations once; each call evaluates fresh dynamic inputs.
14
+ * Keeps one operation budget across all bindings and all dynamic value/type guards.
15
+ * The returned closure owns its snapshot and can be shared by repeated row instances.
16
+ */
17
+ export declare const preparePagePropertyProjection: (bindings: readonly PagePropertyBinding[]) => ((base: JsonObject, context: PageExpressionContext) => JsonObject);
8
18
  export declare const projectPageProperties: (base: JsonObject, bindings: readonly PagePropertyBinding[], context: PageExpressionContext) => JsonObject;
9
19
  //# sourceMappingURL=page-expression.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"page-expression.d.ts","sourceRoot":"","sources":["../../src/runtime/page-expression.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAEL,KAAK,cAAc,EAAE,KAAK,mBAAmB,EAC9C,MAAM,8BAA8B,CAAC;AAEtC,MAAM,MAAM,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;AAKvJ,eAAO,MAAM,aAAa,UAAW,SAAS,GAAG,SAAS,QAAQ,SAAS,MAAM,EAAE,KAAG,SAAS,GAAG,SASjG,CAAC;AAKF,eAAO,MAAM,qBAAqB,UAAW,OAAO,KAAG,cAetD,CAAC;AAWF,eAAO,MAAM,kBAAkB,WAAY,SAAS,QAAQ,SAAS,MAAM,EAAE,SAAS,SAAS,KAAG,SAUjG,CAAC;AA6HF,eAAO,MAAM,sBAAsB,eAAgB,OAAO,WAAW,qBAAqB,KAAG,SACZ,CAAC;AAWlF,eAAO,MAAM,qBAAqB,SAAU,UAAU,YAAY,SAAS,mBAAmB,EAAE,WAAW,qBAAqB,KAAG,UAelI,CAAC"}
1
+ {"version":3,"file":"page-expression.d.ts","sourceRoot":"","sources":["../../src/runtime/page-expression.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAEL,KAAK,cAAc,EAAE,KAAK,mBAAmB,EAC9C,MAAM,8BAA8B,CAAC;AAEtC,MAAM,MAAM,qBAAqB,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;AAKvJ,eAAO,MAAM,aAAa,UAAW,SAAS,GAAG,SAAS,QAAQ,SAAS,MAAM,EAAE,KAAG,SAAS,GAAG,SASjG,CAAC;AAmBF,eAAO,MAAM,qBAAqB,UAAW,OAAO,KAAG,cAKtD,CAAC;AAWF,eAAO,MAAM,kBAAkB,WAAY,SAAS,QAAQ,SAAS,MAAM,EAAE,SAAS,SAAS,KAAG,SAUjG,CAAC;AAqIF,eAAO,MAAM,sBAAsB,eAAgB,OAAO,WAAW,qBAAqB,KAAG,SACZ,CAAC;AAElF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,UAAW,OAAO,KAAG,CAAC,CAAC,OAAO,EAAE,qBAAqB,KAAK,SAAS,CAGpG,CAAC;AAiDF;;;GAGG;AACH,eAAO,MAAM,6BAA6B,aAAc,SAAS,mBAAmB,EAAE,KAAG,CAAC,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,qBAAqB,KAAK,UAAU,CAKzJ,CAAC;AAEF,eAAO,MAAM,qBAAqB,SAAU,UAAU,YAAY,SAAS,mBAAmB,EAAE,WAAW,qBAAqB,KAAG,UAC1D,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.projectPageProperties = exports.evaluatePageExpression = exports.writePageDraftPath = exports.compilePageExpression = exports.readPageValue = void 0;
3
+ exports.projectPageProperties = exports.preparePagePropertyProjection = exports.preparePageExpression = exports.evaluatePageExpression = exports.writePageDraftPath = exports.compilePageExpression = exports.readPageValue = void 0;
4
4
  const page_expression_1 = require("../contracts/page-expression");
5
5
  const unsafe = new Set(['__proto__', 'prototype', 'constructor']);
6
6
  const fail = (code) => { throw Object.assign(new Error(code), { code }); };
@@ -21,9 +21,7 @@ const readPageValue = (value, path) => {
21
21
  exports.readPageValue = readPageValue;
22
22
  const unary = new Set(['not', 'string', 'number', 'length', 'round', 'entries', 'from-entries', 'trim', 'encode-uri-component']);
23
23
  const binary = new Set(['subtract', 'divide', 'equals', 'not-equals', 'less-than', 'less-or-equal', 'greater-than', 'greater-or-equal', 'includes', 'get', 'fixed']);
24
- const compilePageExpression = (input) => {
25
- assertBudget(input);
26
- const expression = page_expression_1.PageExpressionSchema.parse(input);
24
+ const assertExpressionArity = (expression) => {
27
25
  const check = (node) => {
28
26
  if (node.kind === 'operator') {
29
27
  if ((unary.has(node.operator) && node.arguments.length !== 1) || (binary.has(node.operator) && node.arguments.length !== 2) || (['set-path', 'slice'].includes(node.operator) && node.arguments.length !== 3) || (node.operator === 'number-format' && node.arguments.length !== 5))
@@ -45,6 +43,11 @@ const compilePageExpression = (input) => {
45
43
  }
46
44
  };
47
45
  check(expression);
46
+ };
47
+ const compilePageExpression = (input) => {
48
+ assertBudget(input);
49
+ const expression = page_expression_1.PageExpressionSchema.parse(input);
50
+ assertExpressionArity(expression);
48
51
  return expression;
49
52
  };
50
53
  exports.compilePageExpression = compilePageExpression;
@@ -84,8 +87,15 @@ const evaluateCompiled = (expression, context, budget) => {
84
87
  const run = (node, current) => {
85
88
  if (++budget.operations > page_expression_1.PAGE_EXPRESSION_LIMITS.operations)
86
89
  fail('PAGE_EXPRESSION_BUDGET');
87
- if (node.kind === 'literal')
88
- return node.value;
90
+ if (node.kind === 'literal') {
91
+ // Prepared declarations are private snapshots. Never expose their mutable
92
+ // literal objects to a renderer (or retain a renderer's edits next time).
93
+ if (!budget.literals || node.value === null || typeof node.value !== 'object')
94
+ return node.value;
95
+ if (!budget.literals.has(node))
96
+ budget.literals.set(node, structuredClone(node.value));
97
+ return budget.literals.get(node);
98
+ }
89
99
  if (node.kind === 'read') {
90
100
  const value = (0, exports.readPageValue)(current[node.root], node.path) ?? null;
91
101
  assertBudget(value);
@@ -234,6 +244,15 @@ const evaluateCompiled = (expression, context, budget) => {
234
244
  };
235
245
  const evaluatePageExpression = (expression, context) => evaluateCompiled((0, exports.compilePageExpression)(expression), context, { operations: 0 });
236
246
  exports.evaluatePageExpression = evaluatePageExpression;
247
+ /** Snapshot and validate an immutable expression once, then evaluate fresh inputs.
248
+ * Dynamic value limits and the operation budget apply independently to every call.
249
+ * Mutable literal outputs are isolated from the private compiled declaration.
250
+ */
251
+ const preparePageExpression = (input) => {
252
+ const expression = (0, exports.compilePageExpression)(input);
253
+ return context => evaluateCompiled(expression, context, { operations: 0, literals: new Map() });
254
+ };
255
+ exports.preparePageExpression = preparePageExpression;
237
256
  const write = (input, path, value) => {
238
257
  const [key, ...rest] = path;
239
258
  if (!key || unsafe.has(key))
@@ -245,7 +264,7 @@ const write = (input, path, value) => {
245
264
  fail('PAGE_PROPERTY_PATH_TYPE');
246
265
  return { ...input, [key]: write((child ?? {}), rest, value) };
247
266
  };
248
- const projectPageProperties = (base, bindings, context) => {
267
+ const parsePropertyBindings = (bindings) => {
249
268
  assertBudget(bindings);
250
269
  const parsed = bindings.map((binding) => page_expression_1.PagePropertyBindingSchema.parse(binding));
251
270
  const paths = [];
@@ -254,14 +273,47 @@ const projectPageProperties = (base, bindings, context) => {
254
273
  fail('PAGE_PROPERTY_OVERLAP');
255
274
  paths.push(binding.targetPath);
256
275
  }
257
- const budget = { operations: 0 };
258
- return parsed.reduce((model, binding) => {
259
- const value = evaluateCompiled((0, exports.compilePageExpression)(binding.expression), context, budget);
276
+ return parsed;
277
+ };
278
+ const preparePropertyWriter = (path, index = 0) => {
279
+ // The private path was validated by PagePropertyBindingSchema. Only the
280
+ // destination model's shape can change between evaluations.
281
+ const key = path[index];
282
+ if (index === path.length - 1)
283
+ return (input, value) => ({ ...input, [key]: value });
284
+ const childWriter = preparePropertyWriter(path, index + 1);
285
+ return (input, value) => {
286
+ const child = input[key];
287
+ if (child !== undefined && (child === null || typeof child !== 'object' || Array.isArray(child)))
288
+ fail('PAGE_PROPERTY_PATH_TYPE');
289
+ return { ...input, [key]: childWriter((child ?? {}), value) };
290
+ };
291
+ };
292
+ const projectParsedProperties = (base, parsed, context, writers) => {
293
+ const budget = { operations: 0, ...(writers ? { literals: new Map() } : {}) };
294
+ return parsed.reduce((model, binding, index) => {
295
+ // PagePropertyBindingSchema has already parsed and budget-checked the AST.
296
+ // Legacy calls retain evaluation-order arity errors; prepared plans do this once.
297
+ if (!writers)
298
+ assertExpressionArity(binding.expression);
299
+ const value = evaluateCompiled(binding.expression, context, budget);
260
300
  const type = value === null ? 'null' : Array.isArray(value) ? 'array' : typeof value;
261
301
  if (binding.valueType && type !== binding.valueType)
262
302
  fail('PAGE_PROPERTY_TYPE');
263
- return write(model, binding.targetPath, value);
303
+ return writers ? writers[index](model, value) : write(model, binding.targetPath, value);
264
304
  }, base);
265
305
  };
306
+ /** Validate and snapshot declarations once; each call evaluates fresh dynamic inputs.
307
+ * Keeps one operation budget across all bindings and all dynamic value/type guards.
308
+ * The returned closure owns its snapshot and can be shared by repeated row instances.
309
+ */
310
+ const preparePagePropertyProjection = (bindings) => {
311
+ const parsed = parsePropertyBindings(bindings);
312
+ parsed.forEach(binding => assertExpressionArity(binding.expression));
313
+ const writers = parsed.map(binding => preparePropertyWriter(binding.targetPath));
314
+ return (base, context) => projectParsedProperties(base, parsed, context, writers);
315
+ };
316
+ exports.preparePagePropertyProjection = preparePagePropertyProjection;
317
+ const projectPageProperties = (base, bindings, context) => projectParsedProperties(base, parsePropertyBindings(bindings), context);
266
318
  exports.projectPageProperties = projectPageProperties;
267
319
  //# sourceMappingURL=page-expression.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page-expression.js","sourceRoot":"","sources":["../../src/runtime/page-expression.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"page-expression.js","sourceRoot":"","sources":["../../src/runtime/page-expression.ts"],"names":[],"mappings":"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"}