@inf-monkeys-tech/monkeys 1.0.72 → 1.1.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.
Files changed (140) hide show
  1. package/lib/contracts/aggregate-commit.d.ts +155 -0
  2. package/lib/contracts/aggregate-commit.d.ts.map +1 -0
  3. package/lib/contracts/aggregate-commit.js +112 -0
  4. package/lib/contracts/aggregate-commit.js.map +1 -0
  5. package/lib/contracts/capability.d.ts +3 -0
  6. package/lib/contracts/capability.d.ts.map +1 -1
  7. package/lib/contracts/capability.js +1 -1
  8. package/lib/contracts/capability.js.map +1 -1
  9. package/lib/contracts/common.d.ts +2 -0
  10. package/lib/contracts/common.d.ts.map +1 -1
  11. package/lib/contracts/common.js +34 -1
  12. package/lib/contracts/common.js.map +1 -1
  13. package/lib/contracts/component-assembly.d.ts +118 -0
  14. package/lib/contracts/component-assembly.d.ts.map +1 -0
  15. package/lib/contracts/component-assembly.js +61 -0
  16. package/lib/contracts/component-assembly.js.map +1 -0
  17. package/lib/contracts/declarative-control-http.d.ts +101608 -44791
  18. package/lib/contracts/declarative-control-http.d.ts.map +1 -1
  19. package/lib/contracts/declarative-control-http.js +1358 -86
  20. package/lib/contracts/declarative-control-http.js.map +1 -1
  21. package/lib/contracts/declarative-control.d.ts +9668 -3376
  22. package/lib/contracts/declarative-control.d.ts.map +1 -1
  23. package/lib/contracts/declarative-control.js +2585 -186
  24. package/lib/contracts/declarative-control.js.map +1 -1
  25. package/lib/contracts/index.d.ts +6 -0
  26. package/lib/contracts/index.d.ts.map +1 -1
  27. package/lib/contracts/index.js +6 -0
  28. package/lib/contracts/index.js.map +1 -1
  29. package/lib/contracts/legacy-route.d.ts +15 -0
  30. package/lib/contracts/legacy-route.d.ts.map +1 -0
  31. package/lib/contracts/legacy-route.js +13 -0
  32. package/lib/contracts/legacy-route.js.map +1 -0
  33. package/lib/contracts/menu.d.ts +12 -0
  34. package/lib/contracts/menu.d.ts.map +1 -1
  35. package/lib/contracts/page-binding-dependencies.d.ts +25 -0
  36. package/lib/contracts/page-binding-dependencies.d.ts.map +1 -0
  37. package/lib/contracts/page-binding-dependencies.js +54 -0
  38. package/lib/contracts/page-binding-dependencies.js.map +1 -0
  39. package/lib/contracts/page-expression.d.ts +106 -0
  40. package/lib/contracts/page-expression.d.ts.map +1 -0
  41. package/lib/contracts/page-expression.js +136 -0
  42. package/lib/contracts/page-expression.js.map +1 -0
  43. package/lib/contracts/page-stream.d.ts +101 -0
  44. package/lib/contracts/page-stream.d.ts.map +1 -0
  45. package/lib/contracts/page-stream.js +66 -0
  46. package/lib/contracts/page-stream.js.map +1 -0
  47. package/lib/contracts/page.d.ts +24 -0
  48. package/lib/contracts/page.d.ts.map +1 -1
  49. package/lib/contracts/page.js +2 -0
  50. package/lib/contracts/page.js.map +1 -1
  51. package/lib/contracts/record-editor-draft.d.ts +95 -0
  52. package/lib/contracts/record-editor-draft.d.ts.map +1 -0
  53. package/lib/contracts/record-editor-draft.js +35 -0
  54. package/lib/contracts/record-editor-draft.js.map +1 -0
  55. package/lib/contracts/render.d.ts +16 -0
  56. package/lib/contracts/render.d.ts.map +1 -1
  57. package/lib/contracts/render.js +3 -1
  58. package/lib/contracts/render.js.map +1 -1
  59. package/lib/contracts/semantic.d.ts +48 -1
  60. package/lib/contracts/semantic.d.ts.map +1 -1
  61. package/lib/contracts/semantic.js +22 -19
  62. package/lib/contracts/semantic.js.map +1 -1
  63. package/lib/contracts/tenant.d.ts +112 -6
  64. package/lib/contracts/tenant.d.ts.map +1 -1
  65. package/lib/contracts/tenant.js +14 -1
  66. package/lib/contracts/tenant.js.map +1 -1
  67. package/lib/esm/contracts/index.mjs +6921 -3032
  68. package/lib/esm/contracts/index.mjs.map +1 -1
  69. package/lib/esm/index.mjs +11333 -4947
  70. package/lib/esm/index.mjs.map +1 -1
  71. package/lib/esm/runtime/index.mjs +11514 -4411
  72. package/lib/esm/runtime/index.mjs.map +1 -1
  73. package/lib/esm/schemas/index.mjs +7282 -2571
  74. package/lib/esm/schemas/index.mjs.map +1 -1
  75. package/lib/json-schema/aggregate-commit-request.schema.json +426 -0
  76. package/lib/json-schema/capability-manifest.schema.json +1 -0
  77. package/lib/json-schema/capability-registry.schema.json +1 -0
  78. package/lib/json-schema/declarative-route-owner-index.schema.json +1092 -0
  79. package/lib/json-schema/declarative-workbench-catalog.schema.json +769 -0
  80. package/lib/json-schema/design-capability-catalog-artifact.schema.json +2787 -0
  81. package/lib/json-schema/domain-command-definition.schema.json +18 -0
  82. package/lib/json-schema/domain-query-definition.schema.json +1406 -0
  83. package/lib/json-schema/index.json +7 -0
  84. package/lib/json-schema/legacy-route-takeover-authorization.schema.json +601 -0
  85. package/lib/json-schema/navigation-release.schema.json +296 -0
  86. package/lib/json-schema/navigation-runtime-bundle.schema.json +48 -8
  87. package/lib/json-schema/navigation.schema.json +47 -8
  88. package/lib/json-schema/overlay-node.schema.json +281 -0
  89. package/lib/json-schema/page-definition.schema.json +34 -0
  90. package/lib/json-schema/page-release.schema.json +1520 -626
  91. package/lib/json-schema/page-runtime-bundle.schema.json +5980 -401
  92. package/lib/json-schema/page-runtime-descriptor.schema.json +34 -0
  93. package/lib/json-schema/page.schema.json +7333 -1482
  94. package/lib/json-schema/permission-alternative-policy.schema.json +60 -0
  95. package/lib/json-schema/product-declaration.schema.json +53 -0
  96. package/lib/json-schema/render-node.schema.json +281 -0
  97. package/lib/json-schema/render-tree.schema.json +281 -0
  98. package/lib/json-schema/tenant-product-config.schema.json +88 -0
  99. package/lib/json-schema/tenant-runtime-config.schema.json +88 -0
  100. package/lib/json-schema/view-provider-descriptor.schema.json +1 -0
  101. package/lib/json-schema/workbench-release.schema.json +1520 -626
  102. package/lib/json-schema/workbench-runtime-bundle.schema.json +686 -20
  103. package/lib/json-schema/workbench.schema.json +1196 -0
  104. package/lib/runtime/component-assembly.d.ts +4 -0
  105. package/lib/runtime/component-assembly.d.ts.map +1 -0
  106. package/lib/runtime/component-assembly.js +126 -0
  107. package/lib/runtime/component-assembly.js.map +1 -0
  108. package/lib/runtime/declarative-control-compiler.d.ts +66 -5
  109. package/lib/runtime/declarative-control-compiler.d.ts.map +1 -1
  110. package/lib/runtime/declarative-control-compiler.js +862 -109
  111. package/lib/runtime/declarative-control-compiler.js.map +1 -1
  112. package/lib/runtime/index.d.ts +5 -0
  113. package/lib/runtime/index.d.ts.map +1 -1
  114. package/lib/runtime/index.js +7 -0
  115. package/lib/runtime/index.js.map +1 -1
  116. package/lib/runtime/page-expression.d.ts +9 -0
  117. package/lib/runtime/page-expression.d.ts.map +1 -0
  118. package/lib/runtime/page-expression.js +257 -0
  119. package/lib/runtime/page-expression.js.map +1 -0
  120. package/lib/runtime/page-stream.d.ts +24 -0
  121. package/lib/runtime/page-stream.d.ts.map +1 -0
  122. package/lib/runtime/page-stream.js +65 -0
  123. package/lib/runtime/page-stream.js.map +1 -0
  124. package/lib/runtime/record-editor-draft.d.ts +29 -0
  125. package/lib/runtime/record-editor-draft.d.ts.map +1 -0
  126. package/lib/runtime/record-editor-draft.js +161 -0
  127. package/lib/runtime/record-editor-draft.js.map +1 -0
  128. package/lib/runtime/target-render-model.d.ts +4 -0
  129. package/lib/runtime/target-render-model.d.ts.map +1 -0
  130. package/lib/runtime/target-render-model.js +28 -0
  131. package/lib/runtime/target-render-model.js.map +1 -0
  132. package/lib/runtime/tenant-config.d.ts +2 -0
  133. package/lib/runtime/tenant-config.d.ts.map +1 -1
  134. package/lib/runtime/tenant-config.js +6 -1
  135. package/lib/runtime/tenant-config.js.map +1 -1
  136. package/lib/schemas/index.d.ts +6957 -2171
  137. package/lib/schemas/index.d.ts.map +1 -1
  138. package/lib/schemas/index.js +86 -8
  139. package/lib/schemas/index.js.map +1 -1
  140. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"page-expression.js","sourceRoot":"","sources":["../../src/runtime/page-expression.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import type { JsonObject } from '../contracts/common';
2
+ export type PageStreamReducerErrorCode = 'PAGE_STREAM_INVALID_FRAME' | 'PAGE_STREAM_ID_MISMATCH' | 'PAGE_STREAM_SNAPSHOT_REQUIRED' | 'PAGE_STREAM_SEQUENCE_CONFLICT' | 'PAGE_STREAM_SEQUENCE_GAP' | 'PAGE_STREAM_TERMINATED' | 'PAGE_STREAM_CAPACITY_EXCEEDED';
3
+ export declare class PageStreamReducerError extends Error {
4
+ readonly code: PageStreamReducerErrorCode;
5
+ constructor(code: PageStreamReducerErrorCode);
6
+ }
7
+ export interface PageStreamState {
8
+ readonly streamId: string;
9
+ readonly status: 'awaiting-snapshot' | 'open' | 'ended' | 'error';
10
+ readonly model: JsonObject | undefined;
11
+ readonly events: readonly JsonObject[];
12
+ readonly sequence: number;
13
+ readonly cursor: string | undefined;
14
+ readonly error: {
15
+ code: string;
16
+ retryable: boolean;
17
+ } | undefined;
18
+ readonly seen: Readonly<Record<string, string>>;
19
+ readonly retainedBytes: number;
20
+ }
21
+ export declare function createPageStreamState(streamId: string): PageStreamState;
22
+ /** Verified snapshots replace presentation state; deltas retain every event or reject atomically. */
23
+ export declare function applyPageStreamEvent(state: PageStreamState, input: unknown): PageStreamState;
24
+ //# sourceMappingURL=page-stream.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"page-stream.d.ts","sourceRoot":"","sources":["../../src/runtime/page-stream.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,MAAM,MAAM,0BAA0B,GAAG,2BAA2B,GAAG,yBAAyB,GAAG,+BAA+B,GAAG,+BAA+B,GAAG,0BAA0B,GAAG,wBAAwB,GAAG,+BAA+B,CAAC;AAC/P,qBAAa,sBAAuB,SAAQ,KAAK;IAAe,QAAQ,CAAC,IAAI,EAAE,0BAA0B;gBAAhC,IAAI,EAAE,0BAA0B;CAA0D;AACnK,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,mBAAmB,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC;IAClE,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,SAAS,UAAU,EAAE,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,QAAQ,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,GAAG,SAAS,CAAC;IACjE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAChD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAC/B;AACD,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,eAAe,CAGvE;AAGD,qGAAqG;AACrG,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,OAAO,GAAG,eAAe,CAuB5F"}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.applyPageStreamEvent = exports.createPageStreamState = exports.PageStreamReducerError = void 0;
4
+ const page_stream_1 = require("../contracts/page-stream");
5
+ const declarative_control_compiler_1 = require("./declarative-control-compiler");
6
+ class PageStreamReducerError extends Error {
7
+ constructor(code) {
8
+ super(code);
9
+ this.code = code;
10
+ this.name = 'PageStreamReducerError';
11
+ }
12
+ }
13
+ exports.PageStreamReducerError = PageStreamReducerError;
14
+ function createPageStreamState(streamId) {
15
+ if (!page_stream_1.PageStreamDescriptorSchema.shape.streamId.safeParse(streamId).success)
16
+ throw new PageStreamReducerError('PAGE_STREAM_ID_MISMATCH');
17
+ return { streamId, status: 'awaiting-snapshot', model: undefined, events: [], sequence: 0, cursor: undefined, error: undefined, seen: {}, retainedBytes: 0 };
18
+ }
19
+ exports.createPageStreamState = createPageStreamState;
20
+ const MAX_SEEN_FRAMES = 2048;
21
+ const bytes = (value) => new TextEncoder().encode(JSON.stringify(value)).byteLength;
22
+ /** Verified snapshots replace presentation state; deltas retain every event or reject atomically. */
23
+ function applyPageStreamEvent(state, input) {
24
+ let frame;
25
+ try {
26
+ if (bytes(input) > page_stream_1.PAGE_STREAM_MAX_FRAME_BYTES)
27
+ throw new Error();
28
+ frame = page_stream_1.PageStreamEventSchema.parse(input);
29
+ }
30
+ catch {
31
+ throw new PageStreamReducerError('PAGE_STREAM_INVALID_FRAME');
32
+ }
33
+ if (frame.streamId !== state.streamId)
34
+ throw new PageStreamReducerError('PAGE_STREAM_ID_MISMATCH');
35
+ const fingerprint = (0, declarative_control_compiler_1.canonicalContentHash)(frame);
36
+ const seen = state.seen[String(frame.sequence)];
37
+ if (seen) {
38
+ if (seen === fingerprint)
39
+ return state;
40
+ throw new PageStreamReducerError('PAGE_STREAM_SEQUENCE_CONFLICT');
41
+ }
42
+ if (state.status === 'ended' || state.status === 'error')
43
+ throw new PageStreamReducerError('PAGE_STREAM_TERMINATED');
44
+ if (state.status === 'awaiting-snapshot') {
45
+ if (frame.type !== 'snapshot')
46
+ throw new PageStreamReducerError('PAGE_STREAM_SNAPSHOT_REQUIRED');
47
+ }
48
+ else if (frame.sequence !== state.sequence + 1)
49
+ throw new PageStreamReducerError(frame.sequence <= state.sequence ? 'PAGE_STREAM_SEQUENCE_CONFLICT' : 'PAGE_STREAM_SEQUENCE_GAP');
50
+ const model = frame.type === 'snapshot' ? frame.payload.model : state.model;
51
+ const events = frame.type === 'snapshot' ? [] : frame.type === 'delta' ? [...state.events, ...frame.payload.events] : state.events;
52
+ // A snapshot replaces the model and replay baseline. Deltas retain a bounded
53
+ // fingerprint window; replay older than that window still fails sequence checks.
54
+ const nextSeen = frame.type === 'snapshot' ? { [String(frame.sequence)]: fingerprint } : {
55
+ ...Object.fromEntries(Object.entries(state.seen).filter(([sequence]) => Number(sequence) > frame.sequence - MAX_SEEN_FRAMES)),
56
+ [String(frame.sequence)]: fingerprint,
57
+ };
58
+ const retainedBytes = bytes({ model, events, seen: nextSeen });
59
+ if (events.length > page_stream_1.PAGE_STREAM_MAX_BUFFER_EVENTS || retainedBytes > page_stream_1.PAGE_STREAM_MAX_BUFFER_BYTES)
60
+ throw new PageStreamReducerError('PAGE_STREAM_CAPACITY_EXCEEDED');
61
+ return { streamId: state.streamId, model, events, sequence: frame.sequence, cursor: frame.cursor, seen: nextSeen, retainedBytes,
62
+ status: frame.type === 'end' ? 'ended' : frame.type === 'error' ? 'error' : 'open', error: frame.type === 'error' ? frame.payload : undefined };
63
+ }
64
+ exports.applyPageStreamEvent = applyPageStreamEvent;
65
+ //# sourceMappingURL=page-stream.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"page-stream.js","sourceRoot":"","sources":["../../src/runtime/page-stream.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import type { JsonObject, JsonValue } from '../contracts/common';
2
+ import { type RecordEditorSubmissionSnapshot, type RecordEditorDraft, type RecordEditorDraftOperation } from '../contracts/record-editor-draft';
3
+ export declare const recordEditorValuesEqual: (left: JsonValue, right: JsonValue) => boolean;
4
+ export declare const recordEditorPathKey: (path: (string | {
5
+ itemId: string;
6
+ idKey: string;
7
+ })[]) => string;
8
+ export declare const createRecordEditorDraft: (revision: string, value: JsonObject) => RecordEditorDraft;
9
+ export declare const recordEditorDraftIsDirty: (draft: RecordEditorDraft) => boolean;
10
+ export declare const recordEditorArrayItems: (value: JsonValue | undefined, idKey: string) => JsonObject[];
11
+ export declare const readRecordEditorPath: (value: JsonValue, path: (string | {
12
+ itemId: string;
13
+ idKey: string;
14
+ })[]) => JsonValue | undefined;
15
+ export declare const applyRecordEditorDraft: (draft: RecordEditorDraft, input: RecordEditorDraftOperation) => RecordEditorDraft;
16
+ /** Deliberately select only the non-sensitive draft envelope, excluding secretChanges. */
17
+ export declare const captureRecordEditorSubmission: (payload: unknown) => RecordEditorSubmissionSnapshot | undefined;
18
+ export declare const projectRecordEditorValidation: (details: unknown, submission: RecordEditorSubmissionSnapshot | undefined) => {
19
+ revision: string;
20
+ value: Record<string, JsonValue>;
21
+ errors: {
22
+ path: (string | {
23
+ itemId: string;
24
+ idKey: string;
25
+ })[];
26
+ code: string;
27
+ }[];
28
+ } | undefined;
29
+ //# sourceMappingURL=record-editor-draft.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record-editor-draft.d.ts","sourceRoot":"","sources":["../../src/runtime/record-editor-draft.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAuI,KAAK,8BAA8B,EAAE,KAAK,iBAAiB,EAAE,KAAK,0BAA0B,EAAyB,MAAM,kCAAkC,CAAC;AAG5S,eAAO,MAAM,uBAAuB,SAAU,SAAS,SAAS,SAAS,KAAG,OAK3E,CAAC;AACF,eAAO,MAAM,mBAAmB;;;SAA6B,MAA4D,CAAC;AAe1H,eAAO,MAAM,uBAAuB,aAAc,MAAM,SAAS,UAAU,KAAG,iBAK7E,CAAC;AACF,eAAO,MAAM,wBAAwB,UAAW,iBAAiB,KAAG,OAAgE,CAAC;AACrI,eAAO,MAAM,sBAAsB,UAAW,SAAS,GAAG,SAAS,SAAS,MAAM,KAAG,UAAU,EAS9F,CAAC;AACF,eAAO,MAAM,oBAAoB,UAAW,SAAS;;;SAA2B,SAAS,GAAG,SAQ3F,CAAC;AAgBF,eAAO,MAAM,sBAAsB,UAAW,iBAAiB,SAAS,0BAA0B,KAAG,iBAiCpG,CAAC;AAGF,0FAA0F;AAC1F,eAAO,MAAM,6BAA6B,YAAa,OAAO,KAAG,8BAA8B,GAAG,SASjG,CAAC;AAEF,eAAO,MAAM,6BAA6B,YAAa,OAAO,cAAc,8BAA8B,GAAG,SAAS;;;;;;;;;;aAIrH,CAAC"}
@@ -0,0 +1,161 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.projectRecordEditorValidation = exports.captureRecordEditorSubmission = exports.applyRecordEditorDraft = exports.readRecordEditorPath = exports.recordEditorArrayItems = exports.recordEditorDraftIsDirty = exports.createRecordEditorDraft = exports.recordEditorPathKey = exports.recordEditorValuesEqual = void 0;
4
+ const record_editor_draft_1 = require("../contracts/record-editor-draft");
5
+ const own = (value, key) => Object.prototype.hasOwnProperty.call(value, key);
6
+ const recordEditorValuesEqual = (left, right) => {
7
+ if (left === right)
8
+ return true;
9
+ if (!left || !right || typeof left !== 'object' || typeof right !== 'object' || Array.isArray(left) !== Array.isArray(right))
10
+ return false;
11
+ const keys = Object.keys(left);
12
+ return keys.length === Object.keys(right).length && keys.every((key) => own(right, key) && (0, exports.recordEditorValuesEqual)(left[key], right[key]));
13
+ };
14
+ exports.recordEditorValuesEqual = recordEditorValuesEqual;
15
+ const recordEditorPathKey = (path) => JSON.stringify(record_editor_draft_1.RecordEditorPathSchema.parse(path));
16
+ exports.recordEditorPathKey = recordEditorPathKey;
17
+ const assertValue = (value) => {
18
+ let nodes = 0;
19
+ const visit = (current, depth) => {
20
+ if (++nodes > 16384 || depth > 32)
21
+ throw new RangeError('Editor draft exceeds its value budget.');
22
+ if (current !== null && typeof current !== 'string' && typeof current !== 'boolean' && !(typeof current === 'number' && Number.isFinite(current)) && typeof current !== 'object')
23
+ throw new TypeError('Editor draft requires JSON values.');
24
+ if (typeof current === 'number' && !Number.isFinite(current))
25
+ throw new TypeError('Editor draft requires finite numbers.');
26
+ if (current && typeof current === 'object' && !Array.isArray(current) && Object.getPrototypeOf(current) !== Object.prototype && Object.getPrototypeOf(current) !== null)
27
+ throw new TypeError('Editor draft requires plain objects.');
28
+ if (current && typeof current === 'object')
29
+ for (const [key, child] of Object.entries(current)) {
30
+ if (['__proto__', 'prototype', 'constructor'].includes(key))
31
+ throw new TypeError('Unsafe editor member.');
32
+ visit(child, depth + 1);
33
+ }
34
+ };
35
+ visit(value, 0);
36
+ };
37
+ const createRecordEditorDraft = (revision, value) => {
38
+ if (!revision || revision.length > 256)
39
+ throw new TypeError('Editor reset requires a revision.');
40
+ assertValue(value);
41
+ const original = JSON.parse(JSON.stringify(value));
42
+ return { revision, original, value: JSON.parse(JSON.stringify(original)), touched: [], errors: [] };
43
+ };
44
+ exports.createRecordEditorDraft = createRecordEditorDraft;
45
+ const recordEditorDraftIsDirty = (draft) => !(0, exports.recordEditorValuesEqual)(draft.original, draft.value);
46
+ exports.recordEditorDraftIsDirty = recordEditorDraftIsDirty;
47
+ const recordEditorArrayItems = (value, idKey) => {
48
+ record_editor_draft_1.RecordEditorPathSchema.parse([idKey]);
49
+ if (!Array.isArray(value) || value.length > 1000)
50
+ throw new TypeError('Editor array requires at most 1000 identified objects.');
51
+ const seen = new Set();
52
+ for (const item of value) {
53
+ if (!item || typeof item !== 'object' || Array.isArray(item) || !own(item, idKey) || typeof item[idKey] !== 'string' || !item[idKey] || seen.has(item[idKey]))
54
+ throw new TypeError('Editor array requires unique non-empty stable IDs.');
55
+ seen.add(item[idKey]);
56
+ }
57
+ return value;
58
+ };
59
+ exports.recordEditorArrayItems = recordEditorArrayItems;
60
+ const readRecordEditorPath = (value, path) => {
61
+ let current = value;
62
+ for (const segment of record_editor_draft_1.RecordEditorPathSchema.parse(path)) {
63
+ if (typeof segment !== 'string')
64
+ current = (0, exports.recordEditorArrayItems)(current, segment.idKey).find((item) => item[segment.idKey] === segment.itemId);
65
+ else
66
+ current = current && typeof current === 'object' && !Array.isArray(current) && own(current, segment) ? current[segment] : undefined;
67
+ if (current === undefined)
68
+ return undefined;
69
+ }
70
+ return current;
71
+ };
72
+ exports.readRecordEditorPath = readRecordEditorPath;
73
+ const write = (value, path, replacement) => {
74
+ if (!path.length)
75
+ return replacement;
76
+ const [segment, ...rest] = path;
77
+ if (typeof segment !== 'string') {
78
+ const items = (0, exports.recordEditorArrayItems)(value, segment.idKey);
79
+ const index = items.findIndex((item) => item[segment.idKey] === segment.itemId);
80
+ if (index < 0 || rest[0] === segment.idKey)
81
+ throw new TypeError('Editor item is missing or its stable ID is being changed.');
82
+ const result = items.map((item, i) => i === index ? write(item, rest, replacement) : item);
83
+ (0, exports.recordEditorArrayItems)(result, segment.idKey);
84
+ if (result[index][segment.idKey] !== segment.itemId)
85
+ throw new TypeError('Editor stable ID cannot change.');
86
+ return result;
87
+ }
88
+ if (!value || typeof value !== 'object' || Array.isArray(value))
89
+ throw new TypeError('Editor path requires an object.');
90
+ return { ...value, [segment]: write(own(value, segment) ? value[segment] : {}, rest, replacement) };
91
+ };
92
+ const applyRecordEditorDraft = (draft, input) => {
93
+ const operation = record_editor_draft_1.RecordEditorDraftOperationSchema.parse(input);
94
+ if (operation.kind === 'reset')
95
+ return (0, exports.createRecordEditorDraft)(operation.revision, operation.value);
96
+ const key = (0, exports.recordEditorPathKey)(operation.path);
97
+ const touched = draft.touched.some((path) => (0, exports.recordEditorPathKey)(path) === key) ? draft.touched : [...draft.touched, operation.path];
98
+ if (touched.length > 4096)
99
+ throw new RangeError('Editor touched path budget exceeded.');
100
+ if (operation.kind === 'touch')
101
+ return { ...draft, touched };
102
+ let replacement;
103
+ if (operation.kind === 'set')
104
+ replacement = operation.value;
105
+ else {
106
+ const items = [...(0, exports.recordEditorArrayItems)((0, exports.readRecordEditorPath)(draft.value, operation.path), operation.idKey)];
107
+ if (operation.kind === 'insert') {
108
+ (0, exports.recordEditorArrayItems)([...items, operation.value], operation.idKey);
109
+ const before = operation.beforeId === undefined ? items.length : items.findIndex((item) => item[operation.idKey] === operation.beforeId);
110
+ if (before < 0)
111
+ throw new TypeError('Editor insertion target is missing.');
112
+ items.splice(before, 0, operation.value);
113
+ }
114
+ else {
115
+ const index = items.findIndex((item) => item[operation.idKey] === operation.itemId);
116
+ if (index < 0)
117
+ throw new TypeError('Editor item is missing.');
118
+ if (operation.kind === 'move' && operation.beforeId === operation.itemId)
119
+ return { ...draft, touched };
120
+ const [item] = items.splice(index, 1);
121
+ if (operation.kind === 'move') {
122
+ const before = operation.beforeId === undefined ? items.length : items.findIndex((entry) => entry[operation.idKey] === operation.beforeId);
123
+ if (before < 0)
124
+ throw new TypeError('Editor move target is missing.');
125
+ items.splice(before, 0, item);
126
+ }
127
+ }
128
+ replacement = items;
129
+ }
130
+ const value = write(draft.value, operation.path, replacement);
131
+ if (!value || typeof value !== 'object' || Array.isArray(value))
132
+ throw new TypeError('Editor root requires an object.');
133
+ assertValue(value);
134
+ return { ...draft, value, touched, errors: [] };
135
+ };
136
+ exports.applyRecordEditorDraft = applyRecordEditorDraft;
137
+ /** Deliberately select only the non-sensitive draft envelope, excluding secretChanges. */
138
+ const captureRecordEditorSubmission = (payload) => {
139
+ if (!payload || typeof payload !== 'object' || Array.isArray(payload))
140
+ return undefined;
141
+ const input = payload;
142
+ const parsed = record_editor_draft_1.RecordEditorSubmissionSnapshotSchema.safeParse({ revision: input.draftRevision, value: input.values });
143
+ if (!parsed.success)
144
+ return undefined;
145
+ try {
146
+ const draft = (0, exports.createRecordEditorDraft)(parsed.data.revision, parsed.data.value);
147
+ return { revision: draft.revision, value: draft.value };
148
+ }
149
+ catch {
150
+ return undefined;
151
+ }
152
+ };
153
+ exports.captureRecordEditorSubmission = captureRecordEditorSubmission;
154
+ const projectRecordEditorValidation = (details, submission) => {
155
+ if (!submission)
156
+ return undefined;
157
+ const parsed = record_editor_draft_1.RecordEditorValidationDetailsSchema.safeParse(details);
158
+ return parsed.success ? { revision: submission.revision, value: submission.value, errors: parsed.data.errors } : undefined;
159
+ };
160
+ exports.projectRecordEditorValidation = projectRecordEditorValidation;
161
+ //# sourceMappingURL=record-editor-draft.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"record-editor-draft.js","sourceRoot":"","sources":["../../src/runtime/record-editor-draft.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { type JsonObject } from '../contracts/common';
2
+ /** Compile the authoritative target input schema once; never fetch external schemas. */
3
+ export declare const compileTargetRenderModelValidator: (schema: JsonObject, documents?: readonly JsonObject[]) => ((model: unknown) => JsonObject);
4
+ //# sourceMappingURL=target-render-model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"target-render-model.d.ts","sourceRoot":"","sources":["../../src/runtime/target-render-model.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAExE,wFAAwF;AACxF,eAAO,MAAM,iCAAiC,WAAY,UAAU,cAAa,SAAS,UAAU,EAAE,KAAQ,CAAC,CAAC,KAAK,EAAE,OAAO,KAAK,UAAU,CAe5I,CAAC"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.compileTargetRenderModelValidator = void 0;
7
+ const _2020_1 = __importDefault(require("ajv/dist/2020"));
8
+ const common_1 = require("../contracts/common");
9
+ /** Compile the authoritative target input schema once; never fetch external schemas. */
10
+ const compileTargetRenderModelValidator = (schema, documents = []) => {
11
+ const ajv = new _2020_1.default({ strict: false, allErrors: false, coerceTypes: false, useDefaults: false, removeAdditional: false });
12
+ const registered = new Set();
13
+ for (const document of documents) {
14
+ if (document !== schema && typeof document.$id === 'string' && document.$id !== schema.$id && !registered.has(document.$id)) {
15
+ ajv.addSchema(document);
16
+ registered.add(document.$id);
17
+ }
18
+ }
19
+ const validate = ajv.compile(schema);
20
+ return (input) => {
21
+ const model = common_1.JsonObjectSchema.parse(input);
22
+ if (!validate(model))
23
+ throw Object.assign(new TypeError('Target render model does not match its declared schema.'), { code: 'DECLARATIVE_TARGET_RENDER_MODEL_INVALID' });
24
+ return model;
25
+ };
26
+ };
27
+ exports.compileTargetRenderModelValidator = compileTargetRenderModelValidator;
28
+ //# sourceMappingURL=target-render-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"target-render-model.js","sourceRoot":"","sources":["../../src/runtime/target-render-model.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAoC;AACpC,gDAAwE;AAExE,wFAAwF;AACjF,MAAM,iCAAiC,GAAG,CAAC,MAAkB,EAAE,YAAmC,EAAE,EAAoC,EAAE;IAC/I,MAAM,GAAG,GAAG,IAAI,eAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9H,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,IAAI,QAAQ,KAAK,MAAM,IAAI,OAAO,QAAQ,CAAC,GAAG,KAAK,QAAQ,IAAI,QAAQ,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5H,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACxB,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;IACD,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACrC,OAAO,CAAC,KAAK,EAAE,EAAE;QACf,MAAM,KAAK,GAAG,yBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC,yDAAyD,CAAC,EAAE,EAAE,IAAI,EAAE,yCAAyC,EAAE,CAAC,CAAC;QACzK,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;AACJ,CAAC,CAAC;AAfW,QAAA,iCAAiC,qCAe5C"}
@@ -6,6 +6,8 @@ export interface CompileTenantRuntimeConfigInput {
6
6
  resolvedDesignTokens: ThemeTokens;
7
7
  menuBundle?: MenuRuntimeBundle;
8
8
  }
9
+ /** Missing rollout capability is intentionally legacy-only for old Servers. */
10
+ export declare const isDeclarativeRuntimeEnabled: (config: Pick<TenantRuntimeConfig, 'declarativeRuntime'>, surface: 'studio' | 'kernel') => boolean;
9
11
  /**
10
12
  * Builds the only browser-facing tenant configuration projection.
11
13
  * The source list is deliberately not copied, and resolving again guarantees
@@ -1 +1 @@
1
- {"version":3,"file":"tenant-config.d.ts","sourceRoot":"","sources":["../../src/runtime/tenant-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EACV,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAO3D,MAAM,WAAW,+BAA+B;IAC9C,aAAa,EAAE,mBAAmB,CAAC;IACnC,oBAAoB,EAAE,WAAW,CAAC;IAClC,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC;AAED;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,UAC9B,+BAA+B,KACrC,mBAoBF,CAAC"}
1
+ {"version":3,"file":"tenant-config.d.ts","sourceRoot":"","sources":["../../src/runtime/tenant-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EACV,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAO3D,MAAM,WAAW,+BAA+B;IAC9C,aAAa,EAAE,mBAAmB,CAAC;IACnC,oBAAoB,EAAE,WAAW,CAAC;IAClC,UAAU,CAAC,EAAE,iBAAiB,CAAC;CAChC;AAED,+EAA+E;AAC/E,eAAO,MAAM,2BAA2B,WAC9B,KAAK,mBAAmB,EAAE,oBAAoB,CAAC,WAC9C,QAAQ,GAAG,QAAQ,KAC3B,OAC6D,CAAC;AAEjE;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,UAC9B,+BAA+B,KACrC,mBAqBF,CAAC"}
@@ -1,8 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.compileTenantRuntimeConfig = void 0;
3
+ exports.compileTenantRuntimeConfig = exports.isDeclarativeRuntimeEnabled = void 0;
4
4
  const tenant_1 = require("../contracts/tenant");
5
5
  const theme_tokens_1 = require("./theme-tokens");
6
+ /** Missing rollout capability is intentionally legacy-only for old Servers. */
7
+ const isDeclarativeRuntimeEnabled = (config, surface) => config.declarativeRuntime?.state === 'enabled'
8
+ && config.declarativeRuntime.enabledSurfaces.includes(surface);
9
+ exports.isDeclarativeRuntimeEnabled = isDeclarativeRuntimeEnabled;
6
10
  /**
7
11
  * Builds the only browser-facing tenant configuration projection.
8
12
  * The source list is deliberately not copied, and resolving again guarantees
@@ -26,6 +30,7 @@ const compileTenantRuntimeConfig = (input) => {
26
30
  warnings: productConfig.warnings,
27
31
  menuBundle: input.menuBundle,
28
32
  applicationConfig: productConfig.applicationConfig,
33
+ declarativeRuntime: productConfig.declarativeRuntime,
29
34
  }));
30
35
  };
31
36
  exports.compileTenantRuntimeConfig = compileTenantRuntimeConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"tenant-config.js","sourceRoot":"","sources":["../../src/runtime/tenant-config.ts"],"names":[],"mappings":";;;AAMA,gDAG6B;AAC7B,iDAAoD;AAQpD;;;;GAIG;AACI,MAAM,0BAA0B,GAAG,CACxC,KAAsC,EACjB,EAAE;IACvB,MAAM,aAAa,GAAG,kCAAyB,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC3E,MAAM,YAAY,GAAG,IAAA,iCAAkB,EAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,gBAAgB,CAAC;IAErF,OAAO,MAAM,CAAC,MAAM,CAAC,kCAAyB,CAAC,KAAK,CAAC;QACnD,QAAQ,EAAE,qBAAqB;QAC/B,QAAQ,EAAE,aAAa,CAAC,QAAQ;QAChC,KAAK,EAAE,aAAa,CAAC,KAAK;QAC1B,WAAW,EAAE,aAAa,CAAC,WAAW;QACtC,YAAY;QACZ,UAAU,EAAE,aAAa,CAAC,UAAU;QACpC,QAAQ,EAAE,aAAa,CAAC,QAAQ;QAChC,YAAY,EAAE,aAAa,CAAC,YAAY;QACxC,WAAW,EAAE,aAAa,CAAC,WAAW;QACtC,WAAW,EAAE,aAAa,CAAC,WAAW;QACtC,SAAS,EAAE,aAAa,CAAC,SAAS;QAClC,QAAQ,EAAE,aAAa,CAAC,QAAQ;QAChC,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,iBAAiB,EAAE,aAAa,CAAC,iBAAiB;KACnD,CAAC,CAAC,CAAC;AACN,CAAC,CAAC;AAtBW,QAAA,0BAA0B,8BAsBrC"}
1
+ {"version":3,"file":"tenant-config.js","sourceRoot":"","sources":["../../src/runtime/tenant-config.ts"],"names":[],"mappings":";;;AAMA,gDAG6B;AAC7B,iDAAoD;AAQpD,+EAA+E;AACxE,MAAM,2BAA2B,GAAG,CACzC,MAAuD,EACvD,OAA4B,EACnB,EAAE,CAAC,MAAM,CAAC,kBAAkB,EAAE,KAAK,KAAK,SAAS;OACvD,MAAM,CAAC,kBAAkB,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AAJpD,QAAA,2BAA2B,+BAIyB;AAEjE;;;;GAIG;AACI,MAAM,0BAA0B,GAAG,CACxC,KAAsC,EACjB,EAAE;IACvB,MAAM,aAAa,GAAG,kCAAyB,CAAC,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC3E,MAAM,YAAY,GAAG,IAAA,iCAAkB,EAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,gBAAgB,CAAC;IAErF,OAAO,MAAM,CAAC,MAAM,CAAC,kCAAyB,CAAC,KAAK,CAAC;QACnD,QAAQ,EAAE,qBAAqB;QAC/B,QAAQ,EAAE,aAAa,CAAC,QAAQ;QAChC,KAAK,EAAE,aAAa,CAAC,KAAK;QAC1B,WAAW,EAAE,aAAa,CAAC,WAAW;QACtC,YAAY;QACZ,UAAU,EAAE,aAAa,CAAC,UAAU;QACpC,QAAQ,EAAE,aAAa,CAAC,QAAQ;QAChC,YAAY,EAAE,aAAa,CAAC,YAAY;QACxC,WAAW,EAAE,aAAa,CAAC,WAAW;QACtC,WAAW,EAAE,aAAa,CAAC,WAAW;QACtC,SAAS,EAAE,aAAa,CAAC,SAAS;QAClC,QAAQ,EAAE,aAAa,CAAC,QAAQ;QAChC,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,iBAAiB,EAAE,aAAa,CAAC,iBAAiB;QAClD,kBAAkB,EAAE,aAAa,CAAC,kBAAkB;KACrD,CAAC,CAAC,CAAC;AACN,CAAC,CAAC;AAvBW,QAAA,0BAA0B,8BAuBrC"}