@inf-monkeys-tech/monkeys 1.0.71 → 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.
- package/lib/contracts/aggregate-commit.d.ts +155 -0
- package/lib/contracts/aggregate-commit.d.ts.map +1 -0
- package/lib/contracts/aggregate-commit.js +112 -0
- package/lib/contracts/aggregate-commit.js.map +1 -0
- package/lib/contracts/capability.d.ts +3 -0
- package/lib/contracts/capability.d.ts.map +1 -1
- package/lib/contracts/capability.js +1 -1
- package/lib/contracts/capability.js.map +1 -1
- package/lib/contracts/common.d.ts +2 -0
- package/lib/contracts/common.d.ts.map +1 -1
- package/lib/contracts/common.js +34 -1
- package/lib/contracts/common.js.map +1 -1
- package/lib/contracts/component-assembly.d.ts +118 -0
- package/lib/contracts/component-assembly.d.ts.map +1 -0
- package/lib/contracts/component-assembly.js +61 -0
- package/lib/contracts/component-assembly.js.map +1 -0
- package/lib/contracts/declarative-control-http.d.ts +101608 -44791
- package/lib/contracts/declarative-control-http.d.ts.map +1 -1
- package/lib/contracts/declarative-control-http.js +1358 -86
- package/lib/contracts/declarative-control-http.js.map +1 -1
- package/lib/contracts/declarative-control.d.ts +9668 -3376
- package/lib/contracts/declarative-control.d.ts.map +1 -1
- package/lib/contracts/declarative-control.js +2585 -186
- package/lib/contracts/declarative-control.js.map +1 -1
- package/lib/contracts/index.d.ts +6 -0
- package/lib/contracts/index.d.ts.map +1 -1
- package/lib/contracts/index.js +6 -0
- package/lib/contracts/index.js.map +1 -1
- package/lib/contracts/legacy-route.d.ts +15 -0
- package/lib/contracts/legacy-route.d.ts.map +1 -0
- package/lib/contracts/legacy-route.js +13 -0
- package/lib/contracts/legacy-route.js.map +1 -0
- package/lib/contracts/menu.d.ts +12 -0
- package/lib/contracts/menu.d.ts.map +1 -1
- package/lib/contracts/page-binding-dependencies.d.ts +25 -0
- package/lib/contracts/page-binding-dependencies.d.ts.map +1 -0
- package/lib/contracts/page-binding-dependencies.js +54 -0
- package/lib/contracts/page-binding-dependencies.js.map +1 -0
- package/lib/contracts/page-expression.d.ts +106 -0
- package/lib/contracts/page-expression.d.ts.map +1 -0
- package/lib/contracts/page-expression.js +136 -0
- package/lib/contracts/page-expression.js.map +1 -0
- package/lib/contracts/page-stream.d.ts +101 -0
- package/lib/contracts/page-stream.d.ts.map +1 -0
- package/lib/contracts/page-stream.js +66 -0
- package/lib/contracts/page-stream.js.map +1 -0
- package/lib/contracts/page.d.ts +24 -0
- package/lib/contracts/page.d.ts.map +1 -1
- package/lib/contracts/page.js +2 -0
- package/lib/contracts/page.js.map +1 -1
- package/lib/contracts/record-editor-draft.d.ts +95 -0
- package/lib/contracts/record-editor-draft.d.ts.map +1 -0
- package/lib/contracts/record-editor-draft.js +35 -0
- package/lib/contracts/record-editor-draft.js.map +1 -0
- package/lib/contracts/render.d.ts +16 -0
- package/lib/contracts/render.d.ts.map +1 -1
- package/lib/contracts/render.js +3 -1
- package/lib/contracts/render.js.map +1 -1
- package/lib/contracts/semantic.d.ts +48 -1
- package/lib/contracts/semantic.d.ts.map +1 -1
- package/lib/contracts/semantic.js +22 -19
- package/lib/contracts/semantic.js.map +1 -1
- package/lib/contracts/tenant.d.ts +133 -6
- package/lib/contracts/tenant.d.ts.map +1 -1
- package/lib/contracts/tenant.js +16 -1
- package/lib/contracts/tenant.js.map +1 -1
- package/lib/esm/contracts/index.mjs +6921 -3030
- package/lib/esm/contracts/index.mjs.map +1 -1
- package/lib/esm/index.mjs +11407 -5019
- package/lib/esm/index.mjs.map +1 -1
- package/lib/esm/runtime/index.mjs +11514 -4409
- package/lib/esm/runtime/index.mjs.map +1 -1
- package/lib/esm/schemas/index.mjs +7283 -2570
- package/lib/esm/schemas/index.mjs.map +1 -1
- package/lib/json-schema/aggregate-commit-request.schema.json +426 -0
- package/lib/json-schema/capability-manifest.schema.json +1 -0
- package/lib/json-schema/capability-registry.schema.json +1 -0
- package/lib/json-schema/declarative-route-owner-index.schema.json +1092 -0
- package/lib/json-schema/declarative-workbench-catalog.schema.json +769 -0
- package/lib/json-schema/design-capability-catalog-artifact.schema.json +2787 -0
- package/lib/json-schema/domain-command-definition.schema.json +18 -0
- package/lib/json-schema/domain-query-definition.schema.json +1406 -0
- package/lib/json-schema/index.json +7 -0
- package/lib/json-schema/legacy-route-takeover-authorization.schema.json +601 -0
- package/lib/json-schema/navigation-release.schema.json +296 -0
- package/lib/json-schema/navigation-runtime-bundle.schema.json +48 -8
- package/lib/json-schema/navigation.schema.json +47 -8
- package/lib/json-schema/overlay-node.schema.json +281 -0
- package/lib/json-schema/page-definition.schema.json +34 -0
- package/lib/json-schema/page-release.schema.json +1520 -626
- package/lib/json-schema/page-runtime-bundle.schema.json +5980 -401
- package/lib/json-schema/page-runtime-descriptor.schema.json +34 -0
- package/lib/json-schema/page.schema.json +7333 -1482
- package/lib/json-schema/permission-alternative-policy.schema.json +60 -0
- package/lib/json-schema/product-declaration.schema.json +53 -0
- package/lib/json-schema/render-node.schema.json +281 -0
- package/lib/json-schema/render-tree.schema.json +281 -0
- package/lib/json-schema/tenant-product-config.schema.json +107 -0
- package/lib/json-schema/tenant-runtime-config.schema.json +107 -0
- package/lib/json-schema/view-provider-descriptor.schema.json +1 -0
- package/lib/json-schema/workbench-release.schema.json +1520 -626
- package/lib/json-schema/workbench-runtime-bundle.schema.json +686 -20
- package/lib/json-schema/workbench.schema.json +1196 -0
- package/lib/runtime/component-assembly.d.ts +4 -0
- package/lib/runtime/component-assembly.d.ts.map +1 -0
- package/lib/runtime/component-assembly.js +126 -0
- package/lib/runtime/component-assembly.js.map +1 -0
- package/lib/runtime/declarative-control-compiler.d.ts +66 -5
- package/lib/runtime/declarative-control-compiler.d.ts.map +1 -1
- package/lib/runtime/declarative-control-compiler.js +862 -109
- package/lib/runtime/declarative-control-compiler.js.map +1 -1
- package/lib/runtime/index.d.ts +5 -0
- package/lib/runtime/index.d.ts.map +1 -1
- package/lib/runtime/index.js +7 -0
- package/lib/runtime/index.js.map +1 -1
- package/lib/runtime/page-expression.d.ts +9 -0
- package/lib/runtime/page-expression.d.ts.map +1 -0
- package/lib/runtime/page-expression.js +257 -0
- package/lib/runtime/page-expression.js.map +1 -0
- package/lib/runtime/page-stream.d.ts +24 -0
- package/lib/runtime/page-stream.d.ts.map +1 -0
- package/lib/runtime/page-stream.js +65 -0
- package/lib/runtime/page-stream.js.map +1 -0
- package/lib/runtime/record-editor-draft.d.ts +29 -0
- package/lib/runtime/record-editor-draft.d.ts.map +1 -0
- package/lib/runtime/record-editor-draft.js +161 -0
- package/lib/runtime/record-editor-draft.js.map +1 -0
- package/lib/runtime/target-render-model.d.ts +4 -0
- package/lib/runtime/target-render-model.d.ts.map +1 -0
- package/lib/runtime/target-render-model.js +28 -0
- package/lib/runtime/target-render-model.js.map +1 -0
- package/lib/runtime/tenant-config.d.ts +2 -0
- package/lib/runtime/tenant-config.d.ts.map +1 -1
- package/lib/runtime/tenant-config.js +6 -1
- package/lib/runtime/tenant-config.js.map +1 -1
- package/lib/schemas/index.d.ts +6969 -2169
- package/lib/schemas/index.d.ts.map +1 -1
- package/lib/schemas/index.js +86 -8
- package/lib/schemas/index.js.map +1 -1
- 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,
|
|
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;
|
|
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"}
|