@kurot/ui-runtime 0.4.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/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 +5 -38
- 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 +10 -5
- package/dist/kurot/runtime/types.d.ts.map +1 -1
- package/package.json +3 -3
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { applyRuntimeProperty } from '../applyRuntimeProperty.js';
|
|
2
1
|
import { KurotUIRuntimeError } from '../KurotUIRuntimeError.js';
|
|
3
2
|
import { qualifyNodeId } from '../materializeNode.js';
|
|
3
|
+
import { applyPropertyUpdates, attachCause, restorePropertyBackups, } from '../propertyTransaction.js';
|
|
4
4
|
/**
|
|
5
5
|
* Creates a state controller over one fully initialized reusable instance.
|
|
6
6
|
*/
|
|
@@ -24,7 +24,7 @@ export function createReusableComponentStateController(contract, scope, contract
|
|
|
24
24
|
const previousDefinition = previousState
|
|
25
25
|
? contract.states[previousState]
|
|
26
26
|
: undefined;
|
|
27
|
-
|
|
27
|
+
restorePropertyBackups(backups);
|
|
28
28
|
backups = [];
|
|
29
29
|
currentState = undefined;
|
|
30
30
|
try {
|
|
@@ -33,8 +33,15 @@ export function createReusableComponentStateController(contract, scope, contract
|
|
|
33
33
|
}
|
|
34
34
|
catch (error) {
|
|
35
35
|
if (previousState && previousDefinition) {
|
|
36
|
-
|
|
37
|
-
|
|
36
|
+
try {
|
|
37
|
+
backups = applyStateOverrides(previousDefinition.overrides, scope, `${contractPath}.states.${previousState}`, context);
|
|
38
|
+
currentState = previousState;
|
|
39
|
+
}
|
|
40
|
+
catch (recoveryError) {
|
|
41
|
+
// Keep the original failure observable; the instance stays stateless.
|
|
42
|
+
attachCause(error, recoveryError);
|
|
43
|
+
backups = [];
|
|
44
|
+
}
|
|
38
45
|
}
|
|
39
46
|
throw error;
|
|
40
47
|
}
|
|
@@ -42,45 +49,29 @@ export function createReusableComponentStateController(contract, scope, contract
|
|
|
42
49
|
clearState() {
|
|
43
50
|
if (currentState === undefined)
|
|
44
51
|
return;
|
|
45
|
-
|
|
52
|
+
restorePropertyBackups(backups);
|
|
46
53
|
backups = [];
|
|
47
54
|
currentState = undefined;
|
|
48
55
|
},
|
|
49
56
|
};
|
|
50
57
|
}
|
|
51
58
|
function applyStateOverrides(overrides, scope, path, context) {
|
|
52
|
-
const
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
if (!target || !type)
|
|
60
|
-
continue;
|
|
61
|
-
const key = `${identity}\u0000${override.property}`;
|
|
62
|
-
if (!backups.has(key)) {
|
|
63
|
-
backups.set(key, {
|
|
64
|
-
property: override.property,
|
|
65
|
-
target,
|
|
66
|
-
value: Reflect.get(target, override.property),
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
applyRuntimeProperty(target, type, override.property, override.value, `${path}.overrides[${index}].value`, context);
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
catch (error) {
|
|
73
|
-
restoreProperties([...backups.values()]);
|
|
74
|
-
throw error;
|
|
75
|
-
}
|
|
76
|
-
return [...backups.values()];
|
|
77
|
-
}
|
|
78
|
-
function restoreProperties(backups) {
|
|
79
|
-
for (let index = backups.length - 1; index >= 0; index--) {
|
|
80
|
-
const backup = backups[index];
|
|
81
|
-
if (!backup)
|
|
59
|
+
const updates = [];
|
|
60
|
+
for (let index = 0; index < overrides.length; index++) {
|
|
61
|
+
const override = overrides[index];
|
|
62
|
+
const identity = qualifyNodeId(scope, override.targetId);
|
|
63
|
+
const target = context.instances.get(identity);
|
|
64
|
+
const type = context.types.get(identity);
|
|
65
|
+
if (!target || !type)
|
|
82
66
|
continue;
|
|
83
|
-
|
|
67
|
+
updates.push({
|
|
68
|
+
path: `${path}.overrides[${index}].value`,
|
|
69
|
+
property: override.property,
|
|
70
|
+
target,
|
|
71
|
+
type,
|
|
72
|
+
value: override.value,
|
|
73
|
+
});
|
|
84
74
|
}
|
|
75
|
+
return applyPropertyUpdates(updates, context);
|
|
85
76
|
}
|
|
86
77
|
//# sourceMappingURL=createReusableComponentStateController.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createReusableComponentStateController.js","sourceRoot":"","sources":["../../../../src/kurot/runtime/states/createReusableComponentStateController.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"createReusableComponentStateController.js","sourceRoot":"","sources":["../../../../src/kurot/runtime/states/createReusableComponentStateController.ts"],"names":[],"mappings":"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"}
|
|
@@ -52,7 +52,7 @@ export class TransitionSetProperty {
|
|
|
52
52
|
const animation = new Animation(() => {
|
|
53
53
|
const elapsed = animation.currentValue * total;
|
|
54
54
|
const fraction = duration === 0
|
|
55
|
-
?
|
|
55
|
+
? elapsed >= delay ? 1 : 0
|
|
56
56
|
: Math.max(0, Math.min(1, (elapsed - delay) / duration));
|
|
57
57
|
const eased = ease(fraction, this._transition.easing ?? 'linear');
|
|
58
58
|
Reflect.set(target, this._name, from + (to - from) * eased);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TransitionSetProperty.js","sourceRoot":"","sources":["../../../../src/kurot/runtime/transitions/TransitionSetProperty.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAGtC;;GAEG;AACH,MAAM,OAAO,qBAAqB;IAChB,OAAO,CAAS;IAChB,KAAK,CAAS;IACd,MAAM,CAAU;IAChB,WAAW,CAAuB;IAC3C,UAAU,CAAa;IACvB,SAAS,CAAU;IACnB,QAAQ,GAAG,KAAK,CAAC;IAEzB,YACC,MAAc,EACd,IAAY,EACZ,KAAc,EACd,UAAgC;QAEhC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;IAC/B,CAAC;IAEM,KAAK,CAAC,KAAgB,EAAE,IAAU;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO;QACR,CAAC;QACD,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACjD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC3E,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YAC7C,OAAO;QACR,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACnD,CAAC;IAEM,MAAM,CAAC,KAAgB,EAAE,IAAU;QACzC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpB,OAAO;QACR,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACjD,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IACvB,CAAC;IAEO,OAAO,CAAC,MAAc,EAAE,IAAY,EAAE,EAAU;QACvD,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;QAC3C,MAAM,KAAK,GAAG,KAAK,GAAG,QAAQ,CAAC;QAC/B,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACpC,OAAO;QACR,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,GAAS,EAAE;YAC1C,MAAM,OAAO,GAAG,SAAS,CAAC,YAAY,GAAG,KAAK,CAAC;YAC/C,MAAM,QAAQ,GAAG,QAAQ,KAAK,CAAC;gBAC9B,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"TransitionSetProperty.js","sourceRoot":"","sources":["../../../../src/kurot/runtime/transitions/TransitionSetProperty.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import type { UIAssetRegistry, UIComponentRegistry, UIPropertyValue, UIResourceD
|
|
|
3
3
|
/**
|
|
4
4
|
* Stable runtime materialization failure categories.
|
|
5
5
|
*/
|
|
6
|
-
export type KurotUIRuntimeErrorCode = 'component-construction-failed' | 'invalid-document' | 'invalid-data' | 'invalid-layout' | 'invalid-property' | 'invalid-rectangle' | 'unknown-state' | 'unsupported-appearance' | 'unsupported-children' | 'unsupported-component';
|
|
6
|
+
export type KurotUIRuntimeErrorCode = 'component-construction-failed' | 'invalid-adapter' | 'invalid-document' | 'invalid-data' | 'invalid-layout' | 'invalid-property' | 'invalid-rectangle' | 'unknown-state' | 'unsupported-appearance' | 'unsupported-children' | 'unsupported-component';
|
|
7
7
|
/**
|
|
8
8
|
* Runtime hooks for one project-defined component type.
|
|
9
9
|
*/
|
|
@@ -19,13 +19,18 @@ export interface KurotUIComponentAdapter {
|
|
|
19
19
|
*/
|
|
20
20
|
readonly applyProperty?: (instance: DisplayObject, name: string, value: unknown, path: string) => boolean;
|
|
21
21
|
/**
|
|
22
|
-
* Captures adapter-owned
|
|
23
|
-
*
|
|
22
|
+
* Captures a candidate adapter-owned property before a transactional update
|
|
23
|
+
* invokes applyProperty. The hook must be side-effect-free and accept every
|
|
24
|
+
* non-builtin property name routed to this adapter; its captured value is
|
|
25
|
+
* discarded when applyProperty returns false. Used by both data bindings and
|
|
26
|
+
* reusable component states. Must be provided together with restoreProperty.
|
|
24
27
|
*/
|
|
25
28
|
readonly captureProperty?: (instance: DisplayObject, name: string, path: string) => unknown;
|
|
26
29
|
/**
|
|
27
|
-
* Restores
|
|
28
|
-
*
|
|
30
|
+
* Restores a value previously captured by captureProperty, either when a
|
|
31
|
+
* later target in the same transaction fails or when the owning reusable
|
|
32
|
+
* component state is cleared or replaced. Must be provided together with
|
|
33
|
+
* captureProperty.
|
|
29
34
|
*/
|
|
30
35
|
readonly restoreProperty?: (instance: DisplayObject, name: string, value: unknown, path: string) => void;
|
|
31
36
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/kurot/runtime/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EACX,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACpB,mBAAmB,EACnB,cAAc,EACd,MAAM,oBAAoB,CAAC;AAE5B;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAChC,+BAA+B,GAC/B,kBAAkB,GAClB,cAAc,GACd,gBAAgB,GAChB,kBAAkB,GAClB,mBAAmB,GACnB,eAAe,GACf,wBAAwB,GACxB,sBAAsB,GACtB,uBAAuB,CAAC;AAE3B;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACvC;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,aAAa,CAAC;IAErC;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,CACxB,QAAQ,EAAE,aAAa,EACvB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,OAAO,EACd,IAAI,EAAE,MAAM,KACR,OAAO,CAAC;IAEb
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/kurot/runtime/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kurot/ui-runtime",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.1",
|
|
4
4
|
"description": "Runtime materialization layer for validated Kurot UI documents",
|
|
5
5
|
"author": "Kelvin <kyia.x52@gmail.com>",
|
|
6
6
|
"license": "MIT",
|
|
@@ -30,12 +30,12 @@
|
|
|
30
30
|
},
|
|
31
31
|
"peerDependencies": {
|
|
32
32
|
"@kurot/core": "^1.0.15",
|
|
33
|
-
"@kurot/ui": "^1.1.
|
|
33
|
+
"@kurot/ui": "^1.1.8",
|
|
34
34
|
"@kurot/ui-document": "^0.5.0"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
37
|
"@kurot/core": "^1.0.15",
|
|
38
|
-
"@kurot/ui": "^1.1.
|
|
38
|
+
"@kurot/ui": "^1.1.8",
|
|
39
39
|
"@kurot/ui-document": "^0.5.0",
|
|
40
40
|
"@types/node": "^22.0.0",
|
|
41
41
|
"happy-dom": "^20.8.9",
|