@kurot/ui-document 0.3.1 → 0.3.3
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 +6 -4
- package/dist/kurot/assets/UIAssetRegistry.d.ts.map +1 -1
- package/dist/kurot/assets/UIAssetRegistry.js +3 -14
- package/dist/kurot/assets/UIAssetRegistry.js.map +1 -1
- package/dist/kurot/assets/assetTraversal.d.ts +1 -5
- package/dist/kurot/assets/assetTraversal.d.ts.map +1 -1
- package/dist/kurot/assets/assetTraversal.js +2 -12
- package/dist/kurot/assets/assetTraversal.js.map +1 -1
- package/dist/kurot/assets/validateUIAssetInstances.js +5 -0
- package/dist/kurot/assets/validateUIAssetInstances.js.map +1 -1
- package/dist/kurot/assets/validateUIProjectReferences.d.ts.map +1 -1
- package/dist/kurot/assets/validateUIProjectReferences.js +7 -12
- package/dist/kurot/assets/validateUIProjectReferences.js.map +1 -1
- package/dist/kurot/catalog/kurot-ui-foundation.d.ts.map +1 -1
- package/dist/kurot/catalog/kurot-ui-foundation.js +17 -1
- package/dist/kurot/catalog/kurot-ui-foundation.js.map +1 -1
- package/dist/kurot/catalog/properties/basic-component-properties.d.ts +8 -0
- package/dist/kurot/catalog/properties/basic-component-properties.d.ts.map +1 -1
- package/dist/kurot/catalog/properties/basic-component-properties.js +41 -0
- package/dist/kurot/catalog/properties/basic-component-properties.js.map +1 -1
- package/dist/kurot/document/create.d.ts +2 -2
- package/dist/kurot/document/create.d.ts.map +1 -1
- package/dist/kurot/document/createReferences.d.ts +5 -1
- package/dist/kurot/document/createReferences.d.ts.map +1 -1
- package/dist/kurot/document/createReferences.js +14 -0
- package/dist/kurot/document/createReferences.js.map +1 -1
- package/dist/kurot/document/index.d.ts +1 -1
- package/dist/kurot/document/index.d.ts.map +1 -1
- package/dist/kurot/document/index.js +1 -1
- package/dist/kurot/document/index.js.map +1 -1
- package/dist/kurot/editing/UIOperation.d.ts +2 -2
- package/dist/kurot/editing/UIOperation.d.ts.map +1 -1
- package/dist/kurot/editing/applyInstanceOperation.js +4 -2
- package/dist/kurot/editing/applyInstanceOperation.js.map +1 -1
- package/dist/kurot/editing/diffUIDocuments.js +5 -1
- package/dist/kurot/editing/diffUIDocuments.js.map +1 -1
- package/dist/kurot/model/UINode.d.ts +2 -2
- package/dist/kurot/model/UINode.d.ts.map +1 -1
- package/dist/kurot/model/UIReference.d.ts +31 -2
- package/dist/kurot/model/UIReference.d.ts.map +1 -1
- package/dist/kurot/model/UIReference.js +50 -1
- package/dist/kurot/model/UIReference.js.map +1 -1
- package/dist/kurot/model/index.d.ts +1 -1
- package/dist/kurot/model/index.d.ts.map +1 -1
- package/dist/kurot/model/index.js.map +1 -1
- package/dist/kurot/schema/UIComponentRegistry.d.ts.map +1 -1
- package/dist/kurot/schema/UIComponentRegistry.js +10 -4
- package/dist/kurot/schema/UIComponentRegistry.js.map +1 -1
- package/dist/kurot/schema/matchesUIPropertyDefinition.d.ts.map +1 -1
- package/dist/kurot/schema/matchesUIPropertyDefinition.js +16 -17
- package/dist/kurot/schema/matchesUIPropertyDefinition.js.map +1 -1
- package/dist/kurot/schema/validateComponentDefinition.d.ts.map +1 -1
- package/dist/kurot/schema/validateComponentDefinition.js +3 -14
- package/dist/kurot/schema/validateComponentDefinition.js.map +1 -1
- package/dist/kurot/serialization/json.js +3 -0
- package/dist/kurot/serialization/json.js.map +1 -1
- package/dist/kurot/validation/validateUIDocument.js +2 -2
- package/dist/kurot/validation/validateUIDocument.js.map +1 -1
- package/dist/kurot/validation/validationHelpers.d.ts +4 -0
- package/dist/kurot/validation/validationHelpers.d.ts.map +1 -1
- package/dist/kurot/validation/validationHelpers.js +28 -20
- package/dist/kurot/validation/validationHelpers.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,17 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
]);
|
|
8
|
-
const TOKEN_TYPES = new Set([
|
|
9
|
-
'color',
|
|
10
|
-
'number',
|
|
11
|
-
'spacing',
|
|
12
|
-
'string',
|
|
13
|
-
'typography',
|
|
14
|
-
]);
|
|
1
|
+
import { UI_DESIGN_TOKEN_TYPES, UI_RESOURCE_TYPES, } from '../model/UIReference.js';
|
|
2
|
+
const RESOURCE_TYPES = new Set(UI_RESOURCE_TYPES);
|
|
3
|
+
const TOKEN_TYPES = new Set(UI_DESIGN_TOKEN_TYPES);
|
|
4
|
+
const ASSET_REFERENCE_KEYS = new Set(['assetId', 'kind']);
|
|
5
|
+
const APPEARANCE_REFERENCE_KEYS = new Set(['assetId', 'kind', 'variant']);
|
|
6
|
+
const RESOURCE_REFERENCE_KEYS = new Set(['key', 'kind', 'resourceType']);
|
|
7
|
+
const TOKEN_REFERENCE_KEYS = new Set(['key', 'kind', 'tokenType']);
|
|
15
8
|
/**
|
|
16
9
|
* Adds one stable error diagnostic to a mutable validation result.
|
|
17
10
|
*/
|
|
@@ -88,26 +81,41 @@ export function validatePropertyValue(value, path, diagnostics, valueStack = new
|
|
|
88
81
|
* Validates a stable reference to another editable UI asset.
|
|
89
82
|
*/
|
|
90
83
|
export function validateAssetReference(value, path, diagnostics) {
|
|
91
|
-
|
|
92
|
-
|
|
84
|
+
validateAssetReferenceShape(value, path, diagnostics, ASSET_REFERENCE_KEYS, 'Asset reference');
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Validates an appearance asset reference and its optional variant selection.
|
|
88
|
+
*/
|
|
89
|
+
export function validateAppearanceReference(value, path, diagnostics) {
|
|
90
|
+
if (!validateAssetReferenceShape(value, path, diagnostics, APPEARANCE_REFERENCE_KEYS, 'Appearance reference')) {
|
|
93
91
|
return;
|
|
94
92
|
}
|
|
95
|
-
|
|
93
|
+
if (value.variant !== undefined) {
|
|
94
|
+
validateNonEmptyString(value.variant, `${path}.variant`, 'Appearance variant', diagnostics);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
function validateAssetReferenceShape(value, path, diagnostics, knownKeys, label) {
|
|
98
|
+
if (!isPlainRecord(value)) {
|
|
99
|
+
addUIDiagnostic(diagnostics, 'invalid-asset-reference', path, `${label} must be an object.`);
|
|
100
|
+
return false;
|
|
101
|
+
}
|
|
102
|
+
validateKnownKeys(value, knownKeys, path, diagnostics);
|
|
96
103
|
if (value.kind !== 'asset') {
|
|
97
|
-
addUIDiagnostic(diagnostics, 'invalid-asset-reference', `${path}.kind`,
|
|
104
|
+
addUIDiagnostic(diagnostics, 'invalid-asset-reference', `${path}.kind`, `${label} kind must be "asset".`);
|
|
98
105
|
}
|
|
99
106
|
validateNonEmptyString(value.assetId, `${path}.assetId`, 'Asset id', diagnostics);
|
|
107
|
+
return true;
|
|
100
108
|
}
|
|
101
109
|
function validateTaggedReference(value, path, diagnostics) {
|
|
102
110
|
if (value.kind === 'resource') {
|
|
103
|
-
validateKnownKeys(value,
|
|
111
|
+
validateKnownKeys(value, RESOURCE_REFERENCE_KEYS, path, diagnostics);
|
|
104
112
|
validateNonEmptyString(value.key, `${path}.key`, 'Resource key', diagnostics);
|
|
105
113
|
if (!RESOURCE_TYPES.has(String(value.resourceType))) {
|
|
106
114
|
addUIDiagnostic(diagnostics, 'invalid-resource-reference', `${path}.resourceType`, `Unsupported resource type "${String(value.resourceType)}".`);
|
|
107
115
|
}
|
|
108
116
|
}
|
|
109
117
|
else if (value.kind === 'token') {
|
|
110
|
-
validateKnownKeys(value,
|
|
118
|
+
validateKnownKeys(value, TOKEN_REFERENCE_KEYS, path, diagnostics);
|
|
111
119
|
validateNonEmptyString(value.key, `${path}.key`, 'Token key', diagnostics);
|
|
112
120
|
if (!TOKEN_TYPES.has(String(value.tokenType))) {
|
|
113
121
|
addUIDiagnostic(diagnostics, 'invalid-token-reference', `${path}.tokenType`, `Unsupported token type "${String(value.tokenType)}".`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validationHelpers.js","sourceRoot":"","sources":["../../../src/kurot/validation/validationHelpers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"validationHelpers.js","sourceRoot":"","sources":["../../../src/kurot/validation/validationHelpers.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED