@kurot/ui-runtime 0.3.0 → 0.4.1
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/README.md +9 -1
- package/dist/kurot/runtime/assetPath.d.ts +5 -0
- package/dist/kurot/runtime/assetPath.d.ts.map +1 -0
- package/dist/kurot/runtime/assetPath.js +7 -0
- package/dist/kurot/runtime/assetPath.js.map +1 -0
- package/dist/kurot/runtime/builtins/applyButtonProperties.js +2 -15
- package/dist/kurot/runtime/builtins/applyButtonProperties.js.map +1 -1
- package/dist/kurot/runtime/builtins/applyComponentProperties.js +1 -6
- package/dist/kurot/runtime/builtins/applyComponentProperties.js.map +1 -1
- package/dist/kurot/runtime/builtins/applyDisplayObjectProperties.js +1 -19
- package/dist/kurot/runtime/builtins/applyDisplayObjectProperties.js.map +1 -1
- package/dist/kurot/runtime/builtins/applyEditableTextProperties.js +2 -15
- package/dist/kurot/runtime/builtins/applyEditableTextProperties.js.map +1 -1
- package/dist/kurot/runtime/builtins/applyGroupProperties.js +1 -14
- package/dist/kurot/runtime/builtins/applyGroupProperties.js.map +1 -1
- package/dist/kurot/runtime/builtins/applyImageProperties.js +3 -11
- package/dist/kurot/runtime/builtins/applyImageProperties.js.map +1 -1
- package/dist/kurot/runtime/builtins/applyLabelProperties.js +1 -19
- package/dist/kurot/runtime/builtins/applyLabelProperties.js.map +1 -1
- package/dist/kurot/runtime/builtins/applyProgressBarProperties.js +2 -10
- package/dist/kurot/runtime/builtins/applyProgressBarProperties.js.map +1 -1
- package/dist/kurot/runtime/builtins/applyRectProperties.js +1 -9
- package/dist/kurot/runtime/builtins/applyRectProperties.js.map +1 -1
- package/dist/kurot/runtime/builtins/applyTextInputProperties.js +2 -20
- package/dist/kurot/runtime/builtins/applyTextInputProperties.js.map +1 -1
- package/dist/kurot/runtime/builtins/applyUIComponentProperties.d.ts.map +1 -1
- package/dist/kurot/runtime/builtins/applyUIComponentProperties.js +2 -14
- package/dist/kurot/runtime/builtins/applyUIComponentProperties.js.map +1 -1
- package/dist/kurot/runtime/builtins/valueGuards.d.ts +18 -0
- package/dist/kurot/runtime/builtins/valueGuards.d.ts.map +1 -0
- package/dist/kurot/runtime/builtins/valueGuards.js +32 -0
- package/dist/kurot/runtime/builtins/valueGuards.js.map +1 -0
- package/dist/kurot/runtime/createKurotUI.d.ts.map +1 -1
- package/dist/kurot/runtime/createKurotUI.js +14 -2
- package/dist/kurot/runtime/createKurotUI.js.map +1 -1
- package/dist/kurot/runtime/descriptors/createLayout.js.map +1 -1
- package/dist/kurot/runtime/dynamics/activateRuntimeContract.d.ts +1 -1
- package/dist/kurot/runtime/dynamics/activateRuntimeContract.d.ts.map +1 -1
- package/dist/kurot/runtime/dynamics/activateRuntimeContract.js +3 -3
- package/dist/kurot/runtime/dynamics/activateRuntimeContract.js.map +1 -1
- package/dist/kurot/runtime/dynamics/createDataController.d.ts.map +1 -1
- package/dist/kurot/runtime/dynamics/createDataController.js +30 -8
- package/dist/kurot/runtime/dynamics/createDataController.js.map +1 -1
- package/dist/kurot/runtime/dynamics/registerSemanticActions.d.ts +1 -1
- package/dist/kurot/runtime/dynamics/registerSemanticActions.d.ts.map +1 -1
- package/dist/kurot/runtime/dynamics/registerSemanticActions.js +6 -5
- package/dist/kurot/runtime/dynamics/registerSemanticActions.js.map +1 -1
- package/dist/kurot/runtime/materializeAppearance.d.ts.map +1 -1
- package/dist/kurot/runtime/materializeAppearance.js +7 -9
- package/dist/kurot/runtime/materializeAppearance.js.map +1 -1
- package/dist/kurot/runtime/materializeComponentInstance.d.ts.map +1 -1
- package/dist/kurot/runtime/materializeComponentInstance.js +10 -5
- package/dist/kurot/runtime/materializeComponentInstance.js.map +1 -1
- package/dist/kurot/runtime/propertyTransaction.d.ts +62 -0
- package/dist/kurot/runtime/propertyTransaction.d.ts.map +1 -0
- package/dist/kurot/runtime/propertyTransaction.js +150 -0
- package/dist/kurot/runtime/propertyTransaction.js.map +1 -0
- package/dist/kurot/runtime/states/createReusableComponentStateController.d.ts.map +1 -1
- package/dist/kurot/runtime/states/createReusableComponentStateController.js +27 -36
- package/dist/kurot/runtime/states/createReusableComponentStateController.js.map +1 -1
- package/dist/kurot/runtime/transitions/TransitionSetProperty.js +1 -1
- package/dist/kurot/runtime/transitions/TransitionSetProperty.js.map +1 -1
- package/dist/kurot/runtime/types.d.ts +16 -1
- package/dist/kurot/runtime/types.d.ts.map +1 -1
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createLayout.js","sourceRoot":"","sources":["../../../../src/kurot/runtime/descriptors/createLayout.ts"],"names":[],"mappings":"AACA,OAAO,EACN,WAAW,EACX,gBAAgB,EAEhB,gBAAgB,EAChB,UAAU,EACV,cAAc,GACd,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,KAAc,EAAE,IAAY;IACxD,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC9C,eAAe,CAAC,UAAU,EAAE,CAAC,YAAY,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;IAC1D,MAAM,IAAI,GAAG,aAAa,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,IAAI,OAAO,CAAC,CAAC;IAC5D,MAAM,UAAU,GACf,UAAU,CAAC,UAAU,KAAK,SAAS;QAClC,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,UAAU,EAAE,GAAG,IAAI,aAAa,CAAC,CAAC;IAE/D,IAAI,MAAkB,CAAC;IACvB,QAAQ,IAAI,EAAE,CAAC;QACd,KAAK,iBAAiB;YACrB,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;YAC3B,MAAM;QACP,KAAK,sBAAsB;YAC1B,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;YAChC,MAAM;QACP,KAAK,gBAAgB;YACpB,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC1B,MAAM;QACP,KAAK,oBAAoB;YACxB,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;YAC9B,MAAM;QACP;YACC,MAAM,IAAI,mBAAmB,CAC5B,gBAAgB,EAChB,gBAAgB,IAAI,qBAAqB,EACzC,GAAG,IAAI,OAAO,CACd,CAAC;IACJ,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QACnD,mBAAmB,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,eAAe,IAAI,EAAE,CAAC,CAAC;IACnF,CAAC;IACD,OAAO,MAAM,CAAC;AACf,CAAC;AAED,SAAS,mBAAmB,CAC3B,MAAkB,EAClB,IAAY,EACZ,KAAsB,EACtB,IAAY;IAEZ,IAAI,IAAI,KAAK,kBAAkB,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC5C,IAAI,MAAM,YAAY,WAAW,IAAI,OAAO,EAAE,CAAC;YAC9C,MAAM,IAAI,mBAAmB,CAC5B,gBAAgB,EAChB,8CAA8C,EAC9C,IAAI,CACJ,CAAC;QACH,CAAC;QACD,MAAM,CAAC,gBAAgB,GAAG,OAAO,CAAC;QAClC,OAAO;
|
|
1
|
+
{"version":3,"file":"createLayout.js","sourceRoot":"","sources":["../../../../src/kurot/runtime/descriptors/createLayout.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,5 +3,5 @@ import type { KurotUICreationContext } from '../types.js';
|
|
|
3
3
|
/**
|
|
4
4
|
* Activates the dynamic Contract owned by one fully materialized asset tree.
|
|
5
5
|
*/
|
|
6
|
-
export declare function activateRuntimeContract(
|
|
6
|
+
export declare function activateRuntimeContract(asset: UIDocument, scope: string, context: KurotUICreationContext, initialData?: Readonly<Record<string, UIPropertyValue>>): void;
|
|
7
7
|
//# sourceMappingURL=activateRuntimeContract.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activateRuntimeContract.d.ts","sourceRoot":"","sources":["../../../../src/kurot/runtime/dynamics/activateRuntimeContract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGtE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAE1D;;GAEG;AACH,wBAAgB,uBAAuB,CACtC,
|
|
1
|
+
{"version":3,"file":"activateRuntimeContract.d.ts","sourceRoot":"","sources":["../../../../src/kurot/runtime/dynamics/activateRuntimeContract.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGtE,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAE1D;;GAEG;AACH,wBAAgB,uBAAuB,CACtC,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,sBAAsB,EAC/B,WAAW,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAM,GACzD,IAAI,CAUN"}
|
|
@@ -3,9 +3,9 @@ import { registerSemanticActions } from './registerSemanticActions.js';
|
|
|
3
3
|
/**
|
|
4
4
|
* Activates the dynamic Contract owned by one fully materialized asset tree.
|
|
5
5
|
*/
|
|
6
|
-
export function activateRuntimeContract(
|
|
7
|
-
const controller = createDataController(
|
|
6
|
+
export function activateRuntimeContract(asset, scope, context, initialData = {}) {
|
|
7
|
+
const controller = createDataController(asset.contract, asset.id, scope, context, initialData);
|
|
8
8
|
context.dataControllers.set(scope, controller);
|
|
9
|
-
registerSemanticActions(
|
|
9
|
+
registerSemanticActions(asset, scope, context);
|
|
10
10
|
}
|
|
11
11
|
//# sourceMappingURL=activateRuntimeContract.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activateRuntimeContract.js","sourceRoot":"","sources":["../../../../src/kurot/runtime/dynamics/activateRuntimeContract.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAGvE;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACtC,
|
|
1
|
+
{"version":3,"file":"activateRuntimeContract.js","sourceRoot":"","sources":["../../../../src/kurot/runtime/dynamics/activateRuntimeContract.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAGvE;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACtC,KAAiB,EACjB,KAAa,EACb,OAA+B,EAC/B,cAAyD,EAAE;IAE3D,MAAM,UAAU,GAAG,oBAAoB,CACtC,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,EAAE,EACR,KAAK,EACL,OAAO,EACP,WAAW,CACX,CAAC;IACF,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IAC/C,uBAAuB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;AAChD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createDataController.d.ts","sourceRoot":"","sources":["../../../../src/kurot/runtime/dynamics/createDataController.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"createDataController.d.ts","sourceRoot":"","sources":["../../../../src/kurot/runtime/dynamics/createDataController.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAM3E,OAAO,KAAK,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEjF;;GAEG;AACH,wBAAgB,oBAAoB,CACnC,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,sBAAsB,EAC/B,aAAa,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAM,GAC3D,qBAAqB,CAmCvB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { matchesUIPropertyDefinition } from '@kurot/ui-document';
|
|
2
|
-
import { applyRuntimeProperty } from '../applyRuntimeProperty.js';
|
|
3
2
|
import { KurotUIRuntimeError } from '../KurotUIRuntimeError.js';
|
|
4
3
|
import { qualifyNodeId } from '../materializeNode.js';
|
|
4
|
+
import { applyPropertyUpdates } from '../propertyTransaction.js';
|
|
5
5
|
/**
|
|
6
6
|
* Creates one validated controller for an asset's bounded external data.
|
|
7
7
|
*/
|
|
@@ -9,7 +9,8 @@ export function createDataController(contract, assetId, scope, context, initialV
|
|
|
9
9
|
const definitions = contract.dataFields ?? {};
|
|
10
10
|
const fields = Object.keys(definitions).sort();
|
|
11
11
|
const values = new Map();
|
|
12
|
-
|
|
12
|
+
assertValidInitialValues(initialValues, definitions, assetId);
|
|
13
|
+
assertRequiredInitialValues(initialValues, definitions, assetId);
|
|
13
14
|
const controller = {
|
|
14
15
|
fields: Object.freeze(fields),
|
|
15
16
|
getValue(name) {
|
|
@@ -23,8 +24,8 @@ export function createDataController(contract, assetId, scope, context, initialV
|
|
|
23
24
|
if (!matchesUIPropertyDefinition(value, definition)) {
|
|
24
25
|
throw invalidData(`Data field "${name}" does not satisfy its Schema.`, assetId, name);
|
|
25
26
|
}
|
|
26
|
-
values.set(name, value);
|
|
27
27
|
applyBindings(contract, name, value, scope, context);
|
|
28
|
+
values.set(name, value);
|
|
28
29
|
},
|
|
29
30
|
};
|
|
30
31
|
for (const name of fields) {
|
|
@@ -40,6 +41,7 @@ export function createDataController(contract, assetId, scope, context, initialV
|
|
|
40
41
|
}
|
|
41
42
|
function applyBindings(contract, source, value, scope, context) {
|
|
42
43
|
const bindings = contract.dataBindings ?? {};
|
|
44
|
+
const updates = [];
|
|
43
45
|
for (const name of Object.keys(bindings).sort()) {
|
|
44
46
|
const binding = bindings[name];
|
|
45
47
|
if (binding.source !== source) {
|
|
@@ -51,15 +53,35 @@ function applyBindings(contract, source, value, scope, context) {
|
|
|
51
53
|
if (target === undefined || type === undefined) {
|
|
52
54
|
continue;
|
|
53
55
|
}
|
|
54
|
-
|
|
56
|
+
updates.push({
|
|
57
|
+
path: `$.contract.dataBindings.${name}`,
|
|
58
|
+
property: binding.property,
|
|
59
|
+
target,
|
|
60
|
+
type,
|
|
61
|
+
value,
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
applyPropertyUpdates(updates, context);
|
|
65
|
+
}
|
|
66
|
+
function assertValidInitialValues(values, definitions, assetId) {
|
|
67
|
+
for (const [name, value] of Object.entries(values)) {
|
|
68
|
+
const definition = definitions?.[name];
|
|
69
|
+
if (definition === undefined) {
|
|
70
|
+
throw invalidData(`Initial data field "${name}" is not declared.`, assetId, name);
|
|
71
|
+
}
|
|
72
|
+
if (!matchesUIPropertyDefinition(value, definition)) {
|
|
73
|
+
throw invalidData(`Initial data field "${name}" does not satisfy its Schema.`, assetId, name);
|
|
74
|
+
}
|
|
55
75
|
}
|
|
56
76
|
}
|
|
57
|
-
function
|
|
58
|
-
for (const name of Object.
|
|
59
|
-
if (
|
|
77
|
+
function assertRequiredInitialValues(values, definitions, assetId) {
|
|
78
|
+
for (const [name, definition] of Object.entries(definitions ?? {})) {
|
|
79
|
+
if (definition.required !== true ||
|
|
80
|
+
definition.defaultValue !== undefined ||
|
|
81
|
+
Object.hasOwn(values, name)) {
|
|
60
82
|
continue;
|
|
61
83
|
}
|
|
62
|
-
throw invalidData(`
|
|
84
|
+
throw invalidData(`Required data field "${name}" has no initial or default value.`, assetId, name);
|
|
63
85
|
}
|
|
64
86
|
}
|
|
65
87
|
function invalidData(message, assetId, name) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createDataController.js","sourceRoot":"","sources":["../../../../src/kurot/runtime/dynamics/createDataController.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"createDataController.js","sourceRoot":"","sources":["../../../../src/kurot/runtime/dynamics/createDataController.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,5 +3,5 @@ import type { KurotUICreationContext } from '../types.js';
|
|
|
3
3
|
/**
|
|
4
4
|
* Connects one asset's bounded action declarations to runtime events.
|
|
5
5
|
*/
|
|
6
|
-
export declare function registerSemanticActions(
|
|
6
|
+
export declare function registerSemanticActions(asset: UIDocument, scope: string, context: KurotUICreationContext): void;
|
|
7
7
|
//# sourceMappingURL=registerSemanticActions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerSemanticActions.d.ts","sourceRoot":"","sources":["../../../../src/kurot/runtime/dynamics/registerSemanticActions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAA2B,MAAM,oBAAoB,CAAC;AAE9E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAE1D;;GAEG;AACH,wBAAgB,uBAAuB,CACtC,
|
|
1
|
+
{"version":3,"file":"registerSemanticActions.d.ts","sourceRoot":"","sources":["../../../../src/kurot/runtime/dynamics/registerSemanticActions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAA2B,MAAM,oBAAoB,CAAC;AAE9E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAE1D;;GAEG;AACH,wBAAgB,uBAAuB,CACtC,KAAK,EAAE,UAAU,EACjB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,sBAAsB,GAC7B,IAAI,CA4BN"}
|
|
@@ -3,11 +3,12 @@ import { qualifyNodeId } from '../materializeNode.js';
|
|
|
3
3
|
/**
|
|
4
4
|
* Connects one asset's bounded action declarations to runtime events.
|
|
5
5
|
*/
|
|
6
|
-
export function registerSemanticActions(
|
|
7
|
-
|
|
6
|
+
export function registerSemanticActions(asset, scope, context) {
|
|
7
|
+
const onAction = context.onAction;
|
|
8
|
+
if (onAction === undefined) {
|
|
8
9
|
return;
|
|
9
10
|
}
|
|
10
|
-
const actions =
|
|
11
|
+
const actions = asset.contract.actions ?? {};
|
|
11
12
|
for (const name of Object.keys(actions).sort()) {
|
|
12
13
|
const definition = actions[name];
|
|
13
14
|
const identity = qualifyNodeId(scope, definition.sourceId);
|
|
@@ -17,9 +18,9 @@ export function registerSemanticActions(document, scope, context) {
|
|
|
17
18
|
}
|
|
18
19
|
const eventType = getEventType(definition.trigger);
|
|
19
20
|
const listener = (event) => {
|
|
20
|
-
|
|
21
|
+
onAction({
|
|
21
22
|
action: name,
|
|
22
|
-
assetId:
|
|
23
|
+
assetId: asset.id,
|
|
23
24
|
event,
|
|
24
25
|
scope,
|
|
25
26
|
sourceId: definition.sourceId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerSemanticActions.js","sourceRoot":"","sources":["../../../../src/kurot/runtime/dynamics/registerSemanticActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAGtD;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACtC,
|
|
1
|
+
{"version":3,"file":"registerSemanticActions.js","sourceRoot":"","sources":["../../../../src/kurot/runtime/dynamics/registerSemanticActions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEhD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAGtD;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACtC,KAAiB,EACjB,KAAa,EACb,OAA+B;IAE/B,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAClC,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC5B,OAAO;IACR,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC;IAC7C,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAChD,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,aAAa,CAAC,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC3D,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC/C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAC1B,SAAS;QACV,CAAC;QACD,MAAM,SAAS,GAAG,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,CAAC,KAAY,EAAQ,EAAE;YACvC,QAAQ,CAAC;gBACR,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,KAAK,CAAC,EAAE;gBACjB,KAAK;gBACL,KAAK;gBACL,QAAQ,EAAE,UAAU,CAAC,QAAQ;aAC7B,CAAC,CAAC;QACJ,CAAC,CAAC;QACF,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC7C,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAS,EAAE;YACxC,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACJ,CAAC;AACF,CAAC;AAED,SAAS,YAAY,CAAC,OAAgC;IACrD,QAAQ,OAAO,EAAE,CAAC;QACjB,KAAK,QAAQ;YACZ,OAAO,KAAK,CAAC,MAAM,CAAC;QACrB,KAAK,KAAK;YACT,OAAO,UAAU,CAAC,SAAS,CAAC;IAC9B,CAAC;AACF,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"materializeAppearance.d.ts","sourceRoot":"","sources":["../../../src/kurot/runtime/materializeAppearance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,KAAK,EAAc,MAAM,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"materializeAppearance.d.ts","sourceRoot":"","sources":["../../../src/kurot/runtime/materializeAppearance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,KAAK,EAAc,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAM7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAGzD;;GAEG;AACH,wBAAgB,eAAe,CAC9B,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,MAAM,EACZ,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,sBAAsB,GAC7B,IAAI,CAwBN"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Component, SetProperty, Skin, State } from '@kurot/ui';
|
|
2
2
|
import { applyRuntimeProperty } from './applyRuntimeProperty.js';
|
|
3
3
|
import { materializeNode, qualifyNodeId } from './materializeNode.js';
|
|
4
|
+
import { assetPath } from './assetPath.js';
|
|
4
5
|
import { KurotUIRuntimeError } from './KurotUIRuntimeError.js';
|
|
5
6
|
import { resolvePropertyValue } from './resolvePropertyValue.js';
|
|
6
7
|
import { TransitionSetProperty } from './transitions/TransitionSetProperty.js';
|
|
@@ -15,7 +16,7 @@ export function applyAppearance(target, node, hostIdentity, path, context) {
|
|
|
15
16
|
}
|
|
16
17
|
const appearance = requireAppearance(node.appearance.assetId, path, context);
|
|
17
18
|
const scope = `${hostIdentity}@appearance:${appearance.id}`;
|
|
18
|
-
const root = materializeNode(appearance.root,
|
|
19
|
+
const root = materializeNode(appearance.root, assetPath(appearance.id, '.root'), scope, context);
|
|
19
20
|
applyAppearanceVariant(node.appearance.variant, appearance, scope, context);
|
|
20
21
|
const skin = new Skin();
|
|
21
22
|
skin.elementsContent = [root];
|
|
@@ -30,7 +31,7 @@ function applyAppearanceVariant(name, appearance, scope, context) {
|
|
|
30
31
|
const definition = appearance.contract.variants[name];
|
|
31
32
|
if (!definition)
|
|
32
33
|
return;
|
|
33
|
-
const path =
|
|
34
|
+
const path = assetPath(appearance.id, `.contract.variants.${name}`);
|
|
34
35
|
for (let index = 0; index < definition.overrides.length; index++) {
|
|
35
36
|
const override = definition.overrides[index];
|
|
36
37
|
const identity = qualifyNodeId(scope, override.targetId);
|
|
@@ -44,7 +45,7 @@ function applyAppearanceVariant(name, appearance, scope, context) {
|
|
|
44
45
|
function exposeAppearanceNodes(skin, node, scope, context) {
|
|
45
46
|
const target = context.instances.get(qualifyNodeId(scope, node.id));
|
|
46
47
|
if (target) {
|
|
47
|
-
|
|
48
|
+
skin.setPart(node.id, target);
|
|
48
49
|
}
|
|
49
50
|
for (const child of node.children) {
|
|
50
51
|
exposeAppearanceNodes(skin, child, scope, context);
|
|
@@ -56,19 +57,19 @@ function exposeParts(skin, appearance, scope, context) {
|
|
|
56
57
|
const part = appearance.contract.parts[name];
|
|
57
58
|
const target = context.instances.get(qualifyNodeId(scope, part.nodeId));
|
|
58
59
|
if (target) {
|
|
59
|
-
|
|
60
|
+
skin.setPart(name, target);
|
|
60
61
|
}
|
|
61
62
|
}
|
|
62
63
|
skin.skinParts = names;
|
|
63
64
|
}
|
|
64
65
|
function createStates(appearance, context) {
|
|
66
|
+
const basePath = assetPath(appearance.id);
|
|
65
67
|
return Object.keys(appearance.contract.states)
|
|
66
68
|
.sort()
|
|
67
69
|
.map(name => {
|
|
68
70
|
const definition = appearance.contract.states[name];
|
|
69
|
-
const path = `$.assets[${JSON.stringify(appearance.id)}]`;
|
|
70
71
|
const overrides = definition.overrides.map((override, index) => {
|
|
71
|
-
const value = resolvePropertyValue(override.value, `${
|
|
72
|
+
const value = resolvePropertyValue(override.value, `${basePath}.contract.states.${name}.overrides[${index}].value`, context);
|
|
72
73
|
if (override.transition !== undefined) {
|
|
73
74
|
return new TransitionSetProperty(override.targetId, override.property, value, override.transition);
|
|
74
75
|
}
|
|
@@ -84,7 +85,4 @@ function requireAppearance(id, path, context) {
|
|
|
84
85
|
}
|
|
85
86
|
return appearance;
|
|
86
87
|
}
|
|
87
|
-
function setSkinValue(skin, name, value) {
|
|
88
|
-
skin[name] = value;
|
|
89
|
-
}
|
|
90
88
|
//# sourceMappingURL=materializeAppearance.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"materializeAppearance.js","sourceRoot":"","sources":["../../../src/kurot/runtime/materializeAppearance.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAEhE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAE/E;;GAEG;AACH,MAAM,UAAU,eAAe,CAC9B,MAAqB,EACrB,IAAY,EACZ,YAAoB,EACpB,IAAY,EACZ,OAA+B;IAE/B,IAAI,CAAC,IAAI,CAAC,UAAU;QAAE,OAAO;IAC7B,IAAI,CAAC,CAAC,MAAM,YAAY,SAAS,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,mBAAmB,CAC5B,wBAAwB,EACxB,sBAAsB,IAAI,CAAC,IAAI,oCAAoC,EACnE,GAAG,IAAI,aAAa,CACpB,CAAC;IACH,CAAC;IACD,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAC7E,MAAM,KAAK,GAAG,GAAG,YAAY,eAAe,UAAU,CAAC,EAAE,EAAE,CAAC;IAC5D,MAAM,IAAI,GAAG,eAAe,CAC3B,UAAU,CAAC,IAAI,EACf,
|
|
1
|
+
{"version":3,"file":"materializeAppearance.js","sourceRoot":"","sources":["../../../src/kurot/runtime/materializeAppearance.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"materializeComponentInstance.d.ts","sourceRoot":"","sources":["../../../src/kurot/runtime/materializeComponentInstance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAIX,MAAM,
|
|
1
|
+
{"version":3,"file":"materializeComponentInstance.d.ts","sourceRoot":"","sources":["../../../src/kurot/runtime/materializeComponentInstance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAIX,MAAM,EAEN,MAAM,oBAAoB,CAAC;AAa5B,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AAEzD;;GAEG;AACH,wBAAgB,4BAA4B,CAC3C,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,sBAAsB,GAC7B,aAAa,CAqCf"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { applyRuntimeProperty } from './applyRuntimeProperty.js';
|
|
2
|
+
import { assetPath } from './assetPath.js';
|
|
2
3
|
import { activateRuntimeContract } from './dynamics/activateRuntimeContract.js';
|
|
3
4
|
import { applyAppearance } from './materializeAppearance.js';
|
|
4
5
|
import { appendRuntimeChild, applyNodeProperties, materializeNode, qualifyNodeId, } from './materializeNode.js';
|
|
@@ -8,10 +9,10 @@ import { createReusableComponentStateController } from './states/createReusableC
|
|
|
8
9
|
* Materializes one reusable component reference and its instance-local changes.
|
|
9
10
|
*/
|
|
10
11
|
export function materializeComponentInstance(node, path, parentScope, context) {
|
|
11
|
-
const specification = requireInstance(node);
|
|
12
|
+
const specification = requireInstance(node, path);
|
|
12
13
|
const source = requireComponentAsset(specification, path, context);
|
|
13
14
|
const identity = qualifyNodeId(parentScope, node.id);
|
|
14
|
-
const sourcePath =
|
|
15
|
+
const sourcePath = assetPath(source.id, '.root');
|
|
15
16
|
const root = materializeNode(source.root, sourcePath, identity, context);
|
|
16
17
|
context.instances.set(identity, root);
|
|
17
18
|
context.types.set(identity, node.type);
|
|
@@ -24,7 +25,7 @@ export function materializeComponentInstance(node, path, parentScope, context) {
|
|
|
24
25
|
applyAppearance(root, node, identity, path, context);
|
|
25
26
|
}
|
|
26
27
|
if (Object.keys(source.contract.states).length > 0) {
|
|
27
|
-
context.stateControllers.set(identity, createReusableComponentStateController(source.contract, identity,
|
|
28
|
+
context.stateControllers.set(identity, createReusableComponentStateController(source.contract, identity, assetPath(source.id, '.contract'), context));
|
|
28
29
|
}
|
|
29
30
|
activateRuntimeContract(source, identity, context);
|
|
30
31
|
return root;
|
|
@@ -34,6 +35,7 @@ function applyVariant(instance, contract, scope, path, context) {
|
|
|
34
35
|
return;
|
|
35
36
|
}
|
|
36
37
|
const variant = contract.variants[instance.variant];
|
|
38
|
+
// Unknown variants are rejected by project validation; skip defensively.
|
|
37
39
|
if (!variant) {
|
|
38
40
|
return;
|
|
39
41
|
}
|
|
@@ -58,6 +60,7 @@ function applyOverrides(instance, contract, scope, path, context) {
|
|
|
58
60
|
for (let index = 0; index < instance.overrides.length; index++) {
|
|
59
61
|
const override = instance.overrides[index];
|
|
60
62
|
const part = contract.parts[override.part];
|
|
63
|
+
// Unknown parts are rejected by project validation; skip defensively.
|
|
61
64
|
if (!part) {
|
|
62
65
|
continue;
|
|
63
66
|
}
|
|
@@ -67,6 +70,7 @@ function applyOverrides(instance, contract, scope, path, context) {
|
|
|
67
70
|
function projectSlots(instance, source, componentScope, parentScope, path, context) {
|
|
68
71
|
for (const name of Object.keys(instance.slots).sort()) {
|
|
69
72
|
const slot = source.contract.slots[name];
|
|
73
|
+
// Unknown slots and part nodes are rejected by project validation.
|
|
70
74
|
if (!slot) {
|
|
71
75
|
continue;
|
|
72
76
|
}
|
|
@@ -86,6 +90,7 @@ function projectSlots(instance, source, componentScope, parentScope, path, conte
|
|
|
86
90
|
}
|
|
87
91
|
function applyScopedProperty(scope, targetId, property, value, path, context) {
|
|
88
92
|
const target = context.instances.get(qualifyNodeId(scope, targetId));
|
|
93
|
+
// Binding targets are checked by project validation; missing targets skip.
|
|
89
94
|
if (!target) {
|
|
90
95
|
return;
|
|
91
96
|
}
|
|
@@ -102,11 +107,11 @@ function requireComponentAsset(instance, path, context) {
|
|
|
102
107
|
}
|
|
103
108
|
return source;
|
|
104
109
|
}
|
|
105
|
-
function requireInstance(node) {
|
|
110
|
+
function requireInstance(node, path) {
|
|
106
111
|
if (node.instance) {
|
|
107
112
|
return node.instance;
|
|
108
113
|
}
|
|
109
|
-
throw new
|
|
114
|
+
throw new KurotUIRuntimeError('invalid-document', 'Expected reusable component instance.', `${path}.instance`);
|
|
110
115
|
}
|
|
111
116
|
function findNode(root, id) {
|
|
112
117
|
if (root.id === id) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"materializeComponentInstance.js","sourceRoot":"","sources":["../../../src/kurot/runtime/materializeComponentInstance.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"materializeComponentInstance.js","sourceRoot":"","sources":["../../../src/kurot/runtime/materializeComponentInstance.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import type { DisplayObject } from '@kurot/core';
|
|
2
|
+
import type { UIPropertyValue } from '@kurot/ui-document';
|
|
3
|
+
import type { KurotUIComponentAdapter, KurotUICreationContext } from './types.js';
|
|
4
|
+
/**
|
|
5
|
+
* One property assignment to apply transactionally.
|
|
6
|
+
*/
|
|
7
|
+
export interface RuntimePropertyUpdate {
|
|
8
|
+
/**
|
|
9
|
+
* Semantic document path used in failure diagnostics.
|
|
10
|
+
*/
|
|
11
|
+
readonly path: string;
|
|
12
|
+
/**
|
|
13
|
+
* Runtime property name to assign.
|
|
14
|
+
*/
|
|
15
|
+
readonly property: string;
|
|
16
|
+
/**
|
|
17
|
+
* Materialized object receiving the assignment.
|
|
18
|
+
*/
|
|
19
|
+
readonly target: DisplayObject;
|
|
20
|
+
/**
|
|
21
|
+
* Canonical component type of the target, used for adapter lookup.
|
|
22
|
+
*/
|
|
23
|
+
readonly type: string;
|
|
24
|
+
/**
|
|
25
|
+
* Authored value to assign.
|
|
26
|
+
*/
|
|
27
|
+
readonly value: UIPropertyValue;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* One captured pre-assignment value together with the layer that owns the
|
|
31
|
+
* property: builtin-owned backups restore reflectively; adapter-owned
|
|
32
|
+
* backups restore through their adapter.
|
|
33
|
+
*/
|
|
34
|
+
export interface RuntimePropertyBackup {
|
|
35
|
+
readonly adapter: KurotUIComponentAdapter | undefined;
|
|
36
|
+
readonly path: string;
|
|
37
|
+
readonly property: string;
|
|
38
|
+
readonly target: DisplayObject;
|
|
39
|
+
readonly value: unknown;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Applies updates in order and returns the captured pre-assignment backups.
|
|
43
|
+
* Each target property is captured exactly once through its owning layer —
|
|
44
|
+
* builtin properties are captured reflectively, while properties consumed by
|
|
45
|
+
* the component adapter are captured through `captureProperty` before the
|
|
46
|
+
* adapter is invoked. If any assignment fails, every captured property is
|
|
47
|
+
* restored in reverse order by its owning layer, and the original failure is
|
|
48
|
+
* rethrown with a failed restore chained onto it as `cause`.
|
|
49
|
+
*/
|
|
50
|
+
export declare function applyPropertyUpdates(updates: readonly RuntimePropertyUpdate[], context: KurotUICreationContext): RuntimePropertyBackup[];
|
|
51
|
+
/**
|
|
52
|
+
* Restores captured values in reverse assignment order through each owning
|
|
53
|
+
* layer. Throws the first restore failure after attempting every remaining
|
|
54
|
+
* restore.
|
|
55
|
+
*/
|
|
56
|
+
export declare function restorePropertyBackups(backups: readonly RuntimePropertyBackup[]): void;
|
|
57
|
+
/**
|
|
58
|
+
* Chains a secondary failure onto an existing error as its `cause` when the
|
|
59
|
+
* error does not already carry one.
|
|
60
|
+
*/
|
|
61
|
+
export declare function attachCause(error: unknown, cause: unknown): void;
|
|
62
|
+
//# sourceMappingURL=propertyTransaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"propertyTransaction.d.ts","sourceRoot":"","sources":["../../../src/kurot/runtime/propertyTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAI1D,OAAO,KAAK,EACX,uBAAuB,EACvB,sBAAsB,EACtB,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACrC;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAE/B;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAC;CAChC;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACrC,QAAQ,CAAC,OAAO,EAAE,uBAAuB,GAAG,SAAS,CAAC;IACtD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CACnC,OAAO,EAAE,SAAS,qBAAqB,EAAE,EACzC,OAAO,EAAE,sBAAsB,GAC7B,qBAAqB,EAAE,CAgCzB;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CACrC,OAAO,EAAE,SAAS,qBAAqB,EAAE,GACvC,IAAI,CAyBN;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI,CAIhE"}
|