@takeshape/schema 9.103.28 → 9.104.2
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/create-input-schema.d.ts.map +1 -1
- package/dist/create-input-schema.js +34 -35
- package/dist/flatten-templates.js +1 -1
- package/dist/interfaces.d.ts +4 -4
- package/dist/interfaces.d.ts.map +1 -1
- package/dist/interfaces.js +12 -8
- package/dist/refs.d.ts +2 -2
- package/dist/refs.d.ts.map +1 -1
- package/dist/refs.js +9 -8
- package/dist/schema-util.d.ts.map +1 -1
- package/dist/schema-util.js +34 -25
- package/dist/template-shapes/templates.d.ts.map +1 -1
- package/dist/template-shapes/templates.js +1 -1
- package/dist/template-shapes/where.js +1 -1
- package/dist/unions.js +1 -1
- package/dist/util/form-config.js +1 -1
- package/dist/validate.d.ts.map +1 -1
- package/dist/validate.js +16 -13
- package/es/create-input-schema.js +35 -36
- package/es/flatten-templates.js +2 -2
- package/es/interfaces.js +13 -9
- package/es/refs.js +8 -7
- package/es/schema-util.js +35 -26
- package/es/template-shapes/templates.js +2 -2
- package/es/template-shapes/where.js +2 -2
- package/es/unions.js +2 -2
- package/es/util/form-config.js +2 -2
- package/es/validate.js +17 -14
- package/examples/dependencies/wordpress-2024-01.json +26894 -0
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-input-schema.d.ts","sourceRoot":"","sources":["../../src/create-input-schema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,iBAAiB,EAAE,WAAW,EAAE,cAAc,EAAC,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"create-input-schema.d.ts","sourceRoot":"","sources":["../../src/create-input-schema.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,iBAAiB,EAAE,WAAW,EAAE,cAAc,EAAC,MAAM,kBAAkB,CAAC;AAEhF,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAkBD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,iBAAiB,GAAG,WAAW,GAAG,cAAc,EAC1F,MAAM,EAAE,CAAC,EACT,OAAO,GAAE,wBAA6B,GACrC,CAAC,CA4DH"}
|
|
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.createInputSchema = createInputSchema;
|
|
7
7
|
var _defaults = _interopRequireDefault(require("lodash/fp/defaults"));
|
|
8
8
|
var _util = require("@takeshape/util");
|
|
9
|
-
var _omitBy = _interopRequireDefault(require("lodash/omitBy"));
|
|
10
9
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
10
|
const inputSchemaCache = new Map();
|
|
12
11
|
function getInputSchemaCache(options) {
|
|
@@ -32,43 +31,43 @@ function createInputSchema(schema, options = {}) {
|
|
|
32
31
|
if (rewrittenSchema) {
|
|
33
32
|
return rewrittenSchema;
|
|
34
33
|
}
|
|
35
|
-
rewrittenSchema =
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
}
|
|
34
|
+
rewrittenSchema = (0, _util.deepCloneWith)(schema, (value, key, parent, clone) => {
|
|
35
|
+
// Remove required
|
|
36
|
+
if (options.isUpdate && key === 'required' && Array.isArray(value) && value.length) {
|
|
37
|
+
return _util.REMOVE;
|
|
38
|
+
}
|
|
41
39
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
if ((0, _util.isRecord)(value['@input'])) {
|
|
53
|
-
const {
|
|
54
|
-
'@input': input,
|
|
55
|
-
'@l10n': l10n,
|
|
56
|
-
'@syncLocaleStructure': syncLocaleStructure,
|
|
57
|
-
'@mapping': mapping,
|
|
58
|
-
title,
|
|
59
|
-
...output
|
|
60
|
-
} = value;
|
|
61
|
-
return {
|
|
62
|
-
...input,
|
|
63
|
-
title,
|
|
64
|
-
'@l10n': l10n,
|
|
65
|
-
'@syncLocaleStructure': syncLocaleStructure,
|
|
66
|
-
'@mapping': mapping,
|
|
67
|
-
'@output': output
|
|
68
|
-
};
|
|
40
|
+
// Remove default
|
|
41
|
+
if (options.isUpdate && key === 'default' && value !== undefined && (0, _util.isIterableObject)(parent) && parent.type !== undefined) {
|
|
42
|
+
return _util.REMOVE;
|
|
43
|
+
}
|
|
44
|
+
if (key === 'properties' && (0, _util.isIterableObject)(value) && (0, _util.isIterableObject)(parent) && parent.type === 'object') {
|
|
45
|
+
const newProperties = {};
|
|
46
|
+
for (const [key, prop] of Object.entries(value)) {
|
|
47
|
+
if ((0, _util.isIterableObject)(prop) && (!prop['@resolver'] || prop['@input'])) {
|
|
48
|
+
newProperties[key] = clone(prop, key, value);
|
|
49
|
+
}
|
|
69
50
|
}
|
|
51
|
+
return newProperties;
|
|
52
|
+
}
|
|
53
|
+
if ((0, _util.isIterableObject)(value) && (0, _util.isIterableObject)(value['@input'])) {
|
|
54
|
+
const {
|
|
55
|
+
'@input': input,
|
|
56
|
+
'@l10n': l10n,
|
|
57
|
+
'@syncLocaleStructure': syncLocaleStructure,
|
|
58
|
+
'@mapping': mapping,
|
|
59
|
+
title,
|
|
60
|
+
...output
|
|
61
|
+
} = value;
|
|
62
|
+
return {
|
|
63
|
+
...clone(input, '@input', value),
|
|
64
|
+
title,
|
|
65
|
+
'@l10n': l10n,
|
|
66
|
+
'@syncLocaleStructure': syncLocaleStructure,
|
|
67
|
+
'@mapping': mapping,
|
|
68
|
+
'@output': output
|
|
69
|
+
};
|
|
70
70
|
}
|
|
71
|
-
return value;
|
|
72
71
|
});
|
|
73
72
|
inputSchemaCache.set(schema, rewrittenSchema);
|
|
74
73
|
return rewrittenSchema;
|
|
@@ -21,7 +21,7 @@ function flattenTemplates(projectSchema) {
|
|
|
21
21
|
const {
|
|
22
22
|
shapeName,
|
|
23
23
|
dependencies
|
|
24
|
-
} = (0, _templateShapes.resolveTemplate)(newSchema, ref.template, (0, _refs.
|
|
24
|
+
} = (0, _templateShapes.resolveTemplate)(newSchema, ref.template, (0, _refs.refItemToNamespacedShapeName)(ref));
|
|
25
25
|
(0, _set.default)(newSchema, ref.path, ref.path[ref.path.length - 1] === '@ref' ? `local:${shapeName}` : shapeName);
|
|
26
26
|
Object.assign(newSchema.shapes, dependencies);
|
|
27
27
|
}
|
package/dist/interfaces.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import type { OneOfSchema, ProjectSchemaJSON, PropertySchema, ShapeJSON, ShapeMap } from './project-schema';
|
|
2
|
-
import type { ServicesShapesContext } from './refs';
|
|
2
|
+
import type { RefItem, ServicesShapesContext } from './refs';
|
|
3
3
|
export declare function isInterfaceShape(shape?: ShapeJSON): boolean;
|
|
4
4
|
export type ImplementationShapeMap = Record<string, Set<ShapeJSON>>;
|
|
5
5
|
export type ImplementationShapeNameMap = Record<string, Set<string>>;
|
|
6
6
|
export declare function isInterfaceRef(context: ServicesShapesContext, propertySchema: PropertySchema): boolean;
|
|
7
7
|
export declare function getImplementationShapeMap(shapeMap: ShapeMap): ImplementationShapeMap;
|
|
8
8
|
export declare function getImplementationShapeNameMap(shapeMap: ShapeMap): ImplementationShapeNameMap;
|
|
9
|
-
export declare function pruneUnusedInterfaces(shapeMap: ShapeMap): ShapeMap;
|
|
10
|
-
export declare function getImplementingShapes(
|
|
11
|
-
export declare function interfaceToUnion(context: Pick<ProjectSchemaJSON, 'shapes' | 'services'>,
|
|
9
|
+
export declare function pruneUnusedInterfaces(projectSchema: ProjectSchemaJSON, shapeMap: ShapeMap): ShapeMap;
|
|
10
|
+
export declare function getImplementingShapes(context: Pick<ProjectSchemaJSON, 'services' | 'shapes'>, interfaceRef: RefItem): ShapeJSON[];
|
|
11
|
+
export declare function interfaceToUnion(context: Pick<ProjectSchemaJSON, 'shapes' | 'services'>, interfaceRef: RefItem): OneOfSchema;
|
|
12
12
|
export declare function getPossibleShapeNames(projectSchema: ProjectSchemaJSON, shape: ShapeJSON): string[];
|
|
13
13
|
//# sourceMappingURL=interfaces.d.ts.map
|
package/dist/interfaces.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,iBAAiB,EAAE,cAAc,EAAE,SAAS,EAAE,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAC1G,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,WAAW,EAAE,iBAAiB,EAAE,cAAc,EAAE,SAAS,EAAE,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAC1G,OAAO,KAAK,EAAC,OAAO,EAAE,qBAAqB,EAAC,MAAM,QAAQ,CAAC;AAa3D,wBAAgB,gBAAgB,CAAC,KAAK,CAAC,EAAE,SAAS,GAAG,OAAO,CAE3D;AAED,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;AACpE,MAAM,MAAM,0BAA0B,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;AAErE,wBAAgB,cAAc,CAAC,OAAO,EAAE,qBAAqB,EAAE,cAAc,EAAE,cAAc,GAAG,OAAO,CAGtG;AAqBD,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,GAAG,sBAAsB,CAEpF;AAED,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,QAAQ,GAAG,0BAA0B,CAE5F;AAED,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,iBAAiB,EAAE,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAcpG;AAMD,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,UAAU,GAAG,QAAQ,CAAC,EACvD,YAAY,EAAE,OAAO,GACpB,SAAS,EAAE,CAcb;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,GAAG,UAAU,CAAC,EACvD,YAAY,EAAE,OAAO,GACpB,WAAW,CAKb;AAED,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,EAAE,CAgBlG"}
|
package/dist/interfaces.js
CHANGED
|
@@ -45,13 +45,13 @@ function getImplementationShapeMap(shapeMap) {
|
|
|
45
45
|
function getImplementationShapeNameMap(shapeMap) {
|
|
46
46
|
return getImplementationsHelper(shapeMap, shape => shape.name);
|
|
47
47
|
}
|
|
48
|
-
function pruneUnusedInterfaces(shapeMap) {
|
|
48
|
+
function pruneUnusedInterfaces(projectSchema, shapeMap) {
|
|
49
49
|
return (0, _mapValues.default)(shapeMap, shape => {
|
|
50
50
|
const {
|
|
51
51
|
interfaces
|
|
52
52
|
} = shape;
|
|
53
53
|
if (interfaces !== null && interfaces !== void 0 && interfaces.length) {
|
|
54
|
-
const filteredInterfaces = interfaces.filter(
|
|
54
|
+
const filteredInterfaces = interfaces.filter(refExpression => shapeMap[(0, _refs.refItemToNamespacedShapeName)((0, _refs.refExpressionToRefItem)(projectSchema, refExpression))]);
|
|
55
55
|
if (interfaces.length !== filteredInterfaces.length) {
|
|
56
56
|
return {
|
|
57
57
|
...shape,
|
|
@@ -62,18 +62,22 @@ function pruneUnusedInterfaces(shapeMap) {
|
|
|
62
62
|
return shape;
|
|
63
63
|
});
|
|
64
64
|
}
|
|
65
|
-
function
|
|
65
|
+
function compareRefItems(refItem1, refItem2) {
|
|
66
|
+
return refItem1.typeName === refItem2.typeName && refItem1.serviceKey === refItem2.serviceKey;
|
|
67
|
+
}
|
|
68
|
+
function getImplementingShapes(context, interfaceRef) {
|
|
69
|
+
const shapeMap = context.shapes;
|
|
66
70
|
const implementingShapes = [];
|
|
67
71
|
for (const shape of Object.values(shapeMap)) {
|
|
68
72
|
var _shape$interfaces;
|
|
69
|
-
if ((_shape$interfaces = shape.interfaces) !== null && _shape$interfaces !== void 0 && _shape$interfaces.
|
|
73
|
+
if ((_shape$interfaces = shape.interfaces) !== null && _shape$interfaces !== void 0 && _shape$interfaces.find(interfaceRefExpression => compareRefItems((0, _refs.refExpressionToRefItem)(context, interfaceRefExpression), interfaceRef))) {
|
|
70
74
|
implementingShapes.push(shape);
|
|
71
75
|
}
|
|
72
76
|
}
|
|
73
77
|
return implementingShapes;
|
|
74
78
|
}
|
|
75
|
-
function interfaceToUnion(context,
|
|
76
|
-
const shapes = getImplementingShapes(context
|
|
79
|
+
function interfaceToUnion(context, interfaceRef) {
|
|
80
|
+
const shapes = getImplementingShapes(context, interfaceRef);
|
|
77
81
|
return {
|
|
78
82
|
oneOf: shapes.map(shape => ({
|
|
79
83
|
'@ref': (0, _refs.shapeNameToRef)(context, shape.name)
|
|
@@ -83,11 +87,11 @@ function interfaceToUnion(context, interfaceName) {
|
|
|
83
87
|
function getPossibleShapeNames(projectSchema, shape) {
|
|
84
88
|
let names;
|
|
85
89
|
if (isInterfaceShape(shape)) {
|
|
86
|
-
names = getImplementingShapes(projectSchema.
|
|
90
|
+
names = getImplementingShapes(projectSchema, (0, _refs.shapeToRefItem)(projectSchema, shape)).map(shape => shape.name);
|
|
87
91
|
} else if ((0, _unions.isUnionSchema)(shape.schema)) {
|
|
88
92
|
names = shape.schema.oneOf.map(member => {
|
|
89
93
|
const ref = (0, _refs.getRef)(projectSchema, member);
|
|
90
|
-
return ref && (0, _refs.
|
|
94
|
+
return ref && (0, _refs.refItemToNamespacedShapeName)(ref);
|
|
91
95
|
}).filter(_util.isDefined);
|
|
92
96
|
} else {
|
|
93
97
|
names = [shape.name];
|
package/dist/refs.d.ts
CHANGED
|
@@ -109,7 +109,7 @@ export declare function shapeToRefItem(context: ServicesContext, shape: ShapeJSO
|
|
|
109
109
|
* returns a `RefItem` suitable for loading a referenced schema...
|
|
110
110
|
*/
|
|
111
111
|
export declare function getRef(context: ServicesContext, refSchema: SchemaWithRef): Maybe<RefItem>;
|
|
112
|
-
export declare function getRefWithPath(context: ServicesContext, refSchema: SchemaWithRef, schemaPath?: SchemaPath): Maybe<RefItemWithPath>;
|
|
112
|
+
export declare function getRefWithPath(context: ServicesContext, refSchema: SchemaWithRef, schemaPath?: SchemaPath, isInterfaceRef?: boolean): Maybe<RefItemWithPath>;
|
|
113
113
|
/**
|
|
114
114
|
* Tests for a `@ref` or `$ref` property directly on the passed schema.
|
|
115
115
|
*
|
|
@@ -128,7 +128,7 @@ export declare function refItemToAtRef(refItem: RefItem): string;
|
|
|
128
128
|
/**
|
|
129
129
|
* Turns a `RefItem` into a standard shape name, namespacing if present.
|
|
130
130
|
*/
|
|
131
|
-
export declare function
|
|
131
|
+
export declare function refItemToNamespacedShapeName(refItem: RefItem): string;
|
|
132
132
|
/**
|
|
133
133
|
* Turns a `RefItem` into a path suitable for `lodash.get`.
|
|
134
134
|
*/
|
package/dist/refs.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refs.d.ts","sourceRoot":"","sources":["../../src/refs.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"refs.d.ts","sourceRoot":"","sources":["../../src/refs.ts"],"names":[],"mappings":"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"}
|
package/dist/refs.js
CHANGED
|
@@ -42,8 +42,8 @@ exports.refExpressionToRefItem = refExpressionToRefItem;
|
|
|
42
42
|
exports.refExpressionToShape = refExpressionToShape;
|
|
43
43
|
exports.refItemListToShapeList = refItemListToShapeList;
|
|
44
44
|
exports.refItemToAtRef = refItemToAtRef;
|
|
45
|
+
exports.refItemToNamespacedShapeName = refItemToNamespacedShapeName;
|
|
45
46
|
exports.refItemToShape = refItemToShape;
|
|
46
|
-
exports.refItemToShapeName = refItemToShapeName;
|
|
47
47
|
exports.refItemToShapePath = refItemToShapePath;
|
|
48
48
|
exports.refItemToShapeSchema = refItemToShapeSchema;
|
|
49
49
|
exports.refItemToShapeWithPath = refItemToShapeWithPath;
|
|
@@ -111,7 +111,7 @@ function parseReturnShape(projectSchema, shape) {
|
|
|
111
111
|
return {
|
|
112
112
|
isArray: true,
|
|
113
113
|
ref,
|
|
114
|
-
shapeName:
|
|
114
|
+
shapeName: refItemToNamespacedShapeName(ref)
|
|
115
115
|
};
|
|
116
116
|
}
|
|
117
117
|
if (typeof shape.items.type !== 'string') {
|
|
@@ -123,7 +123,7 @@ function parseReturnShape(projectSchema, shape) {
|
|
|
123
123
|
};
|
|
124
124
|
}
|
|
125
125
|
const ref = refExpressionToRefItem(projectSchema, shape);
|
|
126
|
-
const shapeName =
|
|
126
|
+
const shapeName = refItemToNamespacedShapeName(ref);
|
|
127
127
|
return {
|
|
128
128
|
isArray: false,
|
|
129
129
|
shapeName,
|
|
@@ -317,13 +317,14 @@ function getRef(context, refSchema) {
|
|
|
317
317
|
return refToRefItem(context, refSchema.$ref);
|
|
318
318
|
}
|
|
319
319
|
}
|
|
320
|
-
function getRefWithPath(context, refSchema, schemaPath = []) {
|
|
320
|
+
function getRefWithPath(context, refSchema, schemaPath = [], isInterfaceRef = false) {
|
|
321
321
|
const refItem = getRef(context, refSchema);
|
|
322
322
|
if (refItem) {
|
|
323
323
|
const refType = (0, _types.getRefType)(refSchema);
|
|
324
324
|
return {
|
|
325
325
|
...refItem,
|
|
326
|
-
path: schemaPath.concat([refType])
|
|
326
|
+
path: schemaPath.concat([refType]),
|
|
327
|
+
isInterfaceRef
|
|
327
328
|
};
|
|
328
329
|
}
|
|
329
330
|
}
|
|
@@ -361,7 +362,7 @@ function refItemToAtRef(refItem) {
|
|
|
361
362
|
/**
|
|
362
363
|
* Turns a `RefItem` into a standard shape name, namespacing if present.
|
|
363
364
|
*/
|
|
364
|
-
function
|
|
365
|
+
function refItemToNamespacedShapeName(refItem) {
|
|
365
366
|
const {
|
|
366
367
|
serviceNamespace,
|
|
367
368
|
typeName
|
|
@@ -373,7 +374,7 @@ function refItemToShapeName(refItem) {
|
|
|
373
374
|
* Turns a `RefItem` into a path suitable for `lodash.get`.
|
|
374
375
|
*/
|
|
375
376
|
function refItemToShapePath(refItem) {
|
|
376
|
-
return ['shapes',
|
|
377
|
+
return ['shapes', refItemToNamespacedShapeName(refItem)];
|
|
377
378
|
}
|
|
378
379
|
|
|
379
380
|
/**
|
|
@@ -416,7 +417,7 @@ function refItemToShapeSchema(context, refItem) {
|
|
|
416
417
|
*/
|
|
417
418
|
function getRefShapeName(context, refSchema) {
|
|
418
419
|
const refItem = getRef(context, refSchema);
|
|
419
|
-
return refItem ?
|
|
420
|
+
return refItem ? refItemToNamespacedShapeName(refItem) : undefined;
|
|
420
421
|
}
|
|
421
422
|
|
|
422
423
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-util.d.ts","sourceRoot":"","sources":["../../src/schema-util.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,cAAc,EAEd,SAAS,EAET,SAAS,EACT,QAAQ,EACR,aAAa,EAGb,WAAW,EAEX,YAAY,EACb,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EACV,+BAA+B,EAC/B,UAAU,EACV,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,kBAAkB,EAElB,UAAU,EACV,aAAa,EACb,WAAW,EACZ,MAAM,eAAe,CAAC;AAQvB,OAAO,EAAC,KAAK,EAA4C,MAAM,iBAAiB,CAAC;AAiBjF,OAAO,EASL,OAAO,EAIP,eAAe,EACf,eAAe,EACf,qBAAqB,
|
|
1
|
+
{"version":3,"file":"schema-util.d.ts","sourceRoot":"","sources":["../../src/schema-util.ts"],"names":[],"mappings":"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"}
|
package/dist/schema-util.js
CHANGED
|
@@ -394,13 +394,17 @@ function getModelBuiltInProperties(projectSchema, shape) {
|
|
|
394
394
|
_enabled: {
|
|
395
395
|
title: 'Enabled',
|
|
396
396
|
type: 'boolean',
|
|
397
|
-
|
|
397
|
+
...(showDeprecationReason ? {
|
|
398
|
+
'@deprecationReason': 'Use _status instead'
|
|
399
|
+
} : {})
|
|
398
400
|
},
|
|
399
401
|
_enabledAt: {
|
|
400
402
|
title: 'Enabled Date',
|
|
401
403
|
type: 'string',
|
|
402
404
|
format: 'date-time',
|
|
403
|
-
|
|
405
|
+
...(showDeprecationReason ? {
|
|
406
|
+
'@deprecationReason': 'Use a custom date field instead'
|
|
407
|
+
} : {})
|
|
404
408
|
}
|
|
405
409
|
};
|
|
406
410
|
if ((0, _apiVersion.workflowsEnabled)(apiVersion)) {
|
|
@@ -480,7 +484,7 @@ const requiredBuiltinShapes = ['Asset', 'TSRelationship', 'TSStaticSite', 'TSUse
|
|
|
480
484
|
*/
|
|
481
485
|
function getBuiltinsUsed(projectSchema) {
|
|
482
486
|
const builtinsUsed = {};
|
|
483
|
-
const shapeNames = (0, _uniq.default)(requiredBuiltinShapes.concat(getAllRefs(projectSchema, refItem => refItem.serviceKey === 'local' && isBuiltinShape(refItem.typeName)).map(_refs.
|
|
487
|
+
const shapeNames = (0, _uniq.default)(requiredBuiltinShapes.concat(getAllRefs(projectSchema, refItem => refItem.serviceKey === 'local' && isBuiltinShape(refItem.typeName)).map(_refs.refItemToNamespacedShapeName)));
|
|
484
488
|
const schemaWithAllBuiltins = {
|
|
485
489
|
...emptySchema('project-id'),
|
|
486
490
|
shapes: _builtinSchema.builtInShapes
|
|
@@ -624,7 +628,7 @@ const createShapeToPropertySchema = (projectSchema, definitions, definitionNames
|
|
|
624
628
|
}
|
|
625
629
|
const refItem = (0, _refs.getRef)(projectSchema, propSchema);
|
|
626
630
|
if (refItem) {
|
|
627
|
-
const shapeName = (0, _refs.
|
|
631
|
+
const shapeName = (0, _refs.refItemToNamespacedShapeName)(refItem);
|
|
628
632
|
const shape = (0, _refs.refItemToShape)(projectSchema, refItem);
|
|
629
633
|
if (shape) {
|
|
630
634
|
delete propSchema['@ref'];
|
|
@@ -772,39 +776,44 @@ function addRef(refs, ref, predicate) {
|
|
|
772
776
|
*/
|
|
773
777
|
function getAllRefsInShapes(projectSchema, predicate) {
|
|
774
778
|
const items = [];
|
|
775
|
-
const refPropNames = ['$ref', '@ref', '@args', 'args'];
|
|
776
|
-
(0, _util.visit)(projectSchema.shapes, refPropNames, (
|
|
779
|
+
const refPropNames = ['$ref', '@ref', '@args', 'args', 'interfaces'];
|
|
780
|
+
(0, _util.visit)(projectSchema.shapes, refPropNames, (interfaces, refPath) => {
|
|
781
|
+
const propName = refPath[refPath.length - 1];
|
|
782
|
+
const path = ['shapes', ...refPath];
|
|
783
|
+
if (propName === 'interfaces' && (0, _isArray.default)(interfaces)) {
|
|
784
|
+
interfaces.forEach((interfaceRefExpression, index) => {
|
|
785
|
+
addRef(items, {
|
|
786
|
+
...(0, _refs.refExpressionToRefItem)(projectSchema, interfaceRefExpression),
|
|
787
|
+
path: [...path, index]
|
|
788
|
+
}, predicate);
|
|
789
|
+
});
|
|
790
|
+
}
|
|
791
|
+
|
|
777
792
|
// The client sometimes generates invalid schemas, like refs that are
|
|
778
793
|
// undefined. Treat ref as unknown and toss those out.
|
|
779
794
|
// See the `useShapeEditor > can deal with renames test`
|
|
780
|
-
if (!(0, _isString.default)(
|
|
795
|
+
if (!(0, _isString.default)(interfaces)) {
|
|
781
796
|
return;
|
|
782
797
|
}
|
|
783
|
-
const propName = refPath[refPath.length - 1];
|
|
784
|
-
const path = ['shapes', ...refPath];
|
|
785
|
-
let refItem = {};
|
|
786
798
|
if (propName === '@ref') {
|
|
787
799
|
const {
|
|
788
800
|
shapeName,
|
|
789
801
|
template
|
|
790
|
-
} = (0, _refs.parseTemplateShape)(
|
|
791
|
-
|
|
802
|
+
} = (0, _refs.parseTemplateShape)(interfaces);
|
|
803
|
+
addRef(items, {
|
|
792
804
|
...(0, _refs.atRefToRefItem)(projectSchema, shapeName, template),
|
|
793
805
|
path
|
|
794
|
-
};
|
|
806
|
+
}, predicate);
|
|
795
807
|
} else if (propName === '$ref') {
|
|
796
|
-
|
|
797
|
-
...(0, _refs.refToRefItem)(projectSchema,
|
|
808
|
+
addRef(items, {
|
|
809
|
+
...(0, _refs.refToRefItem)(projectSchema, interfaces),
|
|
798
810
|
path
|
|
799
|
-
};
|
|
811
|
+
}, predicate);
|
|
800
812
|
} else if (propName === '@args' || propName === 'args') {
|
|
801
|
-
|
|
802
|
-
...(0, _refs.refExpressionToRefItem)(projectSchema,
|
|
813
|
+
addRef(items, {
|
|
814
|
+
...(0, _refs.refExpressionToRefItem)(projectSchema, interfaces),
|
|
803
815
|
path
|
|
804
|
-
};
|
|
805
|
-
}
|
|
806
|
-
if ((0, _refs.isRefItemWithPath)(refItem)) {
|
|
807
|
-
addRef(items, refItem, predicate);
|
|
816
|
+
}, predicate);
|
|
808
817
|
}
|
|
809
818
|
});
|
|
810
819
|
return items;
|
|
@@ -932,7 +941,7 @@ function getShapesById(projectSchema) {
|
|
|
932
941
|
*/
|
|
933
942
|
function getAllNamespaceShapes(projectSchema) {
|
|
934
943
|
const isServiceRef = refItem => Boolean(refItem.serviceNamespace);
|
|
935
|
-
return (0, _uniq.default)(getAllRefs(projectSchema, isServiceRef).map(_refs.
|
|
944
|
+
return (0, _uniq.default)(getAllRefs(projectSchema, isServiceRef).map(_refs.refItemToNamespacedShapeName));
|
|
936
945
|
}
|
|
937
946
|
|
|
938
947
|
/**
|
|
@@ -989,7 +998,7 @@ function filterGraphQLServiceMap(serviceMap) {
|
|
|
989
998
|
*/
|
|
990
999
|
function collectReferencedShapeNames(context, shapeNames) {
|
|
991
1000
|
const addRef = refItem => {
|
|
992
|
-
shapeNames.add((0, _refs.
|
|
1001
|
+
shapeNames.add((0, _refs.refItemToNamespacedShapeName)(refItem));
|
|
993
1002
|
};
|
|
994
1003
|
const collect = schema => {
|
|
995
1004
|
const args = schema['@args'];
|
|
@@ -1202,7 +1211,7 @@ function fieldMappingContainsKey(fieldMapping, key) {
|
|
|
1202
1211
|
const schemaMatchesShapeName = (workingCopy, schemaWithRef, shapeName) => {
|
|
1203
1212
|
const arrayOfShapeRef = (0, _refs.getRef)(workingCopy, schemaWithRef);
|
|
1204
1213
|
(0, _tinyInvariant.default)(arrayOfShapeRef);
|
|
1205
|
-
const arrayOfShapeName = (0, _refs.
|
|
1214
|
+
const arrayOfShapeName = (0, _refs.refItemToNamespacedShapeName)(arrayOfShapeRef);
|
|
1206
1215
|
return arrayOfShapeName === shapeName;
|
|
1207
1216
|
};
|
|
1208
1217
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../../src/template-shapes/templates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,EAAqB,cAAc,EAAE,SAAS,EAAc,MAAM,mBAAmB,CAAC;AAC/G,OAAO,KAAK,EAAC,gBAAgB,EAAE,eAAe,EAAC,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAC,aAAa,EAAC,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../../src/template-shapes/templates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,EAAqB,cAAc,EAAE,SAAS,EAAc,MAAM,mBAAmB,CAAC;AAC/G,OAAO,KAAK,EAAC,gBAAgB,EAAE,eAAe,EAAC,MAAM,SAAS,CAAC;AAC/D,OAAO,EAAC,aAAa,EAAC,MAAM,SAAS,CAAC;AAiBtC,eAAO,MAAM,SAAS,YAoJH,OAAO,SAAS,SAAS,KAAG,gBAAgB,AApJX,CAAC;AACrD,eAAO,MAAM,kBAAkB,YAmJZ,OAAO,SAAS,SAAS,KAAG,gBAAgB,AAnJO,CAAC;AACvE,eAAO,MAAM,UAAU,YA0WJ,eAAe,SAAS,SAAS,KAAG,gBAAgB,AA1WJ,CAAC;AACpE,eAAO,MAAM,YAAY,YAyWN,eAAe,SAAS,SAAS,KAAG,gBAAgB,AAzWC,CAAC;AACzE,eAAO,MAAM,UAAU,sBAsNI,eAAe,SAAS,SAAS,KAAG,gBAAgB,AAtNF,CAAC;AAC9E,eAAO,MAAM,UAAU,sBAqNI,eAAe,SAAS,SAAS,KAAG,gBAAgB,AArNF,CAAC;AAC9E,eAAO,MAAM,aAAa,sBAoNC,eAAe,SAAS,SAAS,KAAG,gBAAgB,AApNO,CAAC;AACvF,eAAO,MAAM,UAAU,sBAmNI,eAAe,SAAS,SAAS,KAAG,gBAAgB,AAnNF,CAAC;AAC9E,eAAO,MAAM,aAAa,8BAAwB,CAAC;AACnD,eAAO,MAAM,aAAa,8BAAwB,CAAC;AACnD,eAAO,MAAM,YAAY,YA+RN,OAAO,SAAS,SAAS,KAAG,gBAAgB,AA/RQ,CAAC;AACxE,eAAO,MAAM,YAAY,YA8RN,OAAO,SAAS,SAAS,KAAG,gBAAgB,AA9RQ,CAAC;AACxE,eAAO,MAAM,eAAe,YA6RT,OAAO,SAAS,SAAS,KAAG,gBAAgB,AA7Rc,CAAC;AAC9E,eAAO,MAAM,YAAY,YA4RN,OAAO,SAAS,SAAS,KAAG,gBAAgB,AA5RQ,CAAC;AAExE,eAAO,MAAM,iBAAiB,WAU5B,CAAC;AAEH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAqB5D,CAAC;AAEF,eAAO,MAAM,WAAW,EAAE,YAMzB,CAAC;AAEF,eAAO,MAAM,UAAU,EAAE,YAKxB,CAAC;AAEF,eAAO,MAAM,uBAAuB,WAsBnC,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,GAAG,gBAAgB,CAe1F;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,GAAG,gBAAgB,CAmB1F;AAsBD,wBAAgB,cAAc,CAAC,YAAY,EAAE,MAAM,aAChC,OAAO,SAAS,SAAS,KAAG,gBAAgB,CAU9D;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,aAAa,eACxC,MAAM,YAG1B;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAM3D;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvD;AA2BD;;GAEG;AACH,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,uBAM9C,eAAe,SAAS,SAAS,KAAG,gBAAgB,CA4E9E;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,aAAa,aACtC,OAAO,SAAS,SAAS,KAAG,gBAAgB,CAiB9D;AAED,eAAO,MAAM,gBAAgB,EAAE,YAwB9B,CAAC;AAuBF,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,aAC5D,eAAe,SAAS,SAAS,KAAG,gBAAgB,CA0BtE"}
|
|
@@ -247,7 +247,7 @@ function rewriteRefs(context, shapeSchema, rewriteShapeName) {
|
|
|
247
247
|
if ((value['@ref'] || value.$ref) && !parentPath.includes('@input') && !parentPath.includes('@output')) {
|
|
248
248
|
const refItem = (0, _refs.getRef)(context, value);
|
|
249
249
|
if (refItem) {
|
|
250
|
-
value['@ref'] = refItem.isForeign ? (0, _refs.refItemToAtRef)(refItem) : `local:${rewriteShapeName((0, _refs.
|
|
250
|
+
value['@ref'] = refItem.isForeign ? (0, _refs.refItemToAtRef)(refItem) : `local:${rewriteShapeName((0, _refs.refItemToNamespacedShapeName)(refItem))}`;
|
|
251
251
|
if (value.$ref) {
|
|
252
252
|
delete value.$ref;
|
|
253
253
|
}
|
|
@@ -231,7 +231,7 @@ function getTypeName(name, prop, shapeName, context) {
|
|
|
231
231
|
const prefix = `TS${relationshipDepth >= MAX_RELATIONSHIP_DEPTH ? 'Shallow' : ''}Where`;
|
|
232
232
|
const fieldName = `${conflictingProperties !== null && conflictingProperties !== void 0 && conflictingProperties.has(name) ? '_' : ''}${(0, _util.formatShapeName)(name)}`;
|
|
233
233
|
const refItem = (0, _refs.getRefOrItemsRef)(projectSchema, prop);
|
|
234
|
-
const suffix = refItem ? (0, _refs.
|
|
234
|
+
const suffix = refItem ? (0, _refs.refItemToNamespacedShapeName)(refItem) : `${shapeName}${fieldName}`;
|
|
235
235
|
return `${prefix}${suffix}`;
|
|
236
236
|
}
|
|
237
237
|
return `TSWhere${(0, _util.pascalCase)(type)}`;
|
package/dist/unions.js
CHANGED
|
@@ -23,7 +23,7 @@ function enumerateOneOfKeys(projectSchema, oneOf) {
|
|
|
23
23
|
for (const child of oneOf) {
|
|
24
24
|
const refItem = (0, _refs.getRef)(projectSchema, child);
|
|
25
25
|
if (refItem) {
|
|
26
|
-
const shapeName = (0, _refs.
|
|
26
|
+
const shapeName = (0, _refs.refItemToNamespacedShapeName)(refItem);
|
|
27
27
|
if (projectSchema.shapes[shapeName]) {
|
|
28
28
|
const shapeId = projectSchema.shapes[shapeName].id;
|
|
29
29
|
result.push({
|
package/dist/util/form-config.js
CHANGED
|
@@ -43,7 +43,7 @@ function normalizeForms(projectSchema) {
|
|
|
43
43
|
if (propSchema) {
|
|
44
44
|
const ref = (0, _refs.getRefOrItemsRef)(projectSchema, propSchema);
|
|
45
45
|
if (ref && propConfig.properties) {
|
|
46
|
-
const nestedShapeName = (0, _refs.
|
|
46
|
+
const nestedShapeName = (0, _refs.refItemToNamespacedShapeName)(ref);
|
|
47
47
|
normalizedForms[nestedShapeName] = {
|
|
48
48
|
default: (0, _util.deepClone)(propConfig)
|
|
49
49
|
};
|
package/dist/validate.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/validate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmB,WAAW,EAAC,MAAM,KAAK,CAAC;AACvD,OAAO,KAAK,EAAC,UAAU,EAAE,SAAS,EAAC,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAC,mBAAmB,EAAE,UAAU,EAAc,MAAM,eAAe,CAAC;AAChF,OAAO,KAAK,EACV,oBAAoB,EACpB,iBAAiB,EAYlB,MAAM,kBAAkB,CAAC;AAI1B,OAAO,EAAwB,yBAAyB,EAAC,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/validate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmB,WAAW,EAAC,MAAM,KAAK,CAAC;AACvD,OAAO,KAAK,EAAC,UAAU,EAAE,SAAS,EAAC,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAC,mBAAmB,EAAE,UAAU,EAAc,MAAM,eAAe,CAAC;AAChF,OAAO,KAAK,EACV,oBAAoB,EACpB,iBAAiB,EAYlB,MAAM,kBAAkB,CAAC;AAI1B,OAAO,EAAwB,yBAAyB,EAAC,MAAM,mBAAmB,CAAC;AA+BnF,OAAO,EAEL,YAAY,EAKb,MAAM,iBAAiB,CAAC;AAWzB,OAAO,EAAC,WAAW,EAAC,MAAM,WAAW,CAAC;AA82BtC,MAAM,MAAM,sBAAsB,GAC9B;IAAC,KAAK,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,oBAAoB,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAC,GAC9D;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,yBAAyB,EAAE,CAAA;CAAC,CAAC;AAE3E,wBAAgB,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,yBAAyB,CAuBzE;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,CAAC,aAAa,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;IAC/C,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,qBAAqB,KAAK,sBAAsB,CAAC;CACxF;AACD,MAAM,WAAW,qBAAqB;IACpC,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,YAAY,CAAC,EAAE,YAAY,CAAC;CAC7B;AAED,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;AAEpE,MAAM,WAAW,eAAgB,SAAQ,qBAAqB;IAC5D,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,YAAY,EAAE,YAAY,CAAC;CAC5B;AAED,MAAM,MAAM,yBAAyB,GAAG,WAAW,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC;AAmHrF,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,GAAE,qBAA0B,GAAG,sBAAsB,CAW9G;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAgC5G;AAED,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,OAAO,GAAG,iBAAiB,CAgB7E;AAgBD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,cAAc,EAAE,OAAO,GAAG,SAAS,CAQpE;AAgBD;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,OAAO,GAAG,UAAU,CAQrE;AAED,MAAM,MAAM,mCAAmC,GAC3C;IAAC,KAAK,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,mBAAmB,CAAC;IAAC,MAAM,EAAE,SAAS,CAAA;CAAC,GAC7D;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,yBAAyB,EAAE,CAAA;CAAC,CAAC;AAE3E;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,OAAO,GAAG,mCAAmC,CAIrG;AAED;;;;;GAKG;AACH,wBAAgB,8BAA8B,CAAC,WAAW,EAAE,OAAO,GAAG,mBAAmB,CAQxF"}
|
package/dist/validate.js
CHANGED
|
@@ -471,7 +471,7 @@ function validateLocalRefs(projectSchema) {
|
|
|
471
471
|
message: `Invalid template "${item.template}"`
|
|
472
472
|
});
|
|
473
473
|
}
|
|
474
|
-
const shapeName = (0, _refs.
|
|
474
|
+
const shapeName = (0, _refs.refItemToNamespacedShapeName)(item);
|
|
475
475
|
if (!shapeNames.has(shapeName)) {
|
|
476
476
|
const invalidRef = (0, _get.default)(projectSchema, item.path);
|
|
477
477
|
const path = invalidRef.items ? [...item.path, 'items', '@ref'] : item.path;
|
|
@@ -508,10 +508,15 @@ function isValidRef(context, projectSchema, layer, item) {
|
|
|
508
508
|
const {
|
|
509
509
|
serviceKey: layerId
|
|
510
510
|
} = item;
|
|
511
|
-
const shapeName = (0, _refs.
|
|
511
|
+
const shapeName = (0, _refs.refItemToNamespacedShapeName)(item);
|
|
512
512
|
const localShapeExists = Boolean(projectSchema.shapes[shapeName]) || builtInShapeNames.has(shapeName);
|
|
513
513
|
return layerId === 'local' ? localShapeExists : localShapeExists || isValidShapeReference(context, layer, shapeName);
|
|
514
514
|
}
|
|
515
|
+
function mustBeInterface({
|
|
516
|
+
path
|
|
517
|
+
}) {
|
|
518
|
+
return path[0] === 'shapes' && path[2] === 'interfaces';
|
|
519
|
+
}
|
|
515
520
|
async function validateRefs(context, projectSchema) {
|
|
516
521
|
const {
|
|
517
522
|
resolveLayer
|
|
@@ -536,13 +541,18 @@ async function validateRefs(context, projectSchema) {
|
|
|
536
541
|
const {
|
|
537
542
|
serviceKey: layerId
|
|
538
543
|
} = item;
|
|
539
|
-
const
|
|
544
|
+
const layer = layersById[layerId];
|
|
545
|
+
const valid = isValidRef(context, projectSchema, layer, item);
|
|
540
546
|
if (!valid) {
|
|
541
547
|
errors.push({
|
|
542
548
|
type: 'notFound',
|
|
543
549
|
path: item.path,
|
|
544
550
|
message: `Invalid ref "${(0, _get.default)(projectSchema, item.path)}"`
|
|
545
551
|
});
|
|
552
|
+
} else if (mustBeInterface(item)) {
|
|
553
|
+
const context = (layer === null || layer === void 0 ? void 0 : layer.schema) ?? projectSchema;
|
|
554
|
+
const shape = (0, _get.default)(context, item.path.slice(0, 2));
|
|
555
|
+
errors.push(...validateShapeImplementsInterface(context, shape, item, item.path));
|
|
546
556
|
}
|
|
547
557
|
}
|
|
548
558
|
return errors;
|
|
@@ -647,14 +657,14 @@ function matchesInterface(shape, interfaceShape, path) {
|
|
|
647
657
|
}
|
|
648
658
|
return errors;
|
|
649
659
|
}
|
|
650
|
-
function validateShapeImplementsInterface(projectSchema, shape,
|
|
660
|
+
function validateShapeImplementsInterface(projectSchema, shape, interfaceRefItem, path) {
|
|
651
661
|
const errors = [];
|
|
652
|
-
const interfaceShape = projectSchema
|
|
662
|
+
const interfaceShape = (0, _refs.refItemToShape)(projectSchema, interfaceRefItem);
|
|
653
663
|
if (!interfaceShape) {
|
|
654
664
|
errors.push({
|
|
655
665
|
type: 'notFound',
|
|
656
666
|
path,
|
|
657
|
-
message: `Invalid interface "${
|
|
667
|
+
message: `Invalid interface "${(0, _refs.refItemToAtRef)(interfaceRefItem)}" not found`
|
|
658
668
|
});
|
|
659
669
|
} else if (interfaceShape.type !== 'interface') {
|
|
660
670
|
errors.push({
|
|
@@ -684,13 +694,6 @@ function validateInterfaceImplementations(projectSchema) {
|
|
|
684
694
|
message: `"${shape.name}" must have an object or extends schema to implement interfaces`
|
|
685
695
|
}];
|
|
686
696
|
}
|
|
687
|
-
for (let i = 0; i < shape.interfaces.length; i++) {
|
|
688
|
-
const path = ['shapes', shape.name, 'interfaces', i];
|
|
689
|
-
const interfaceErrors = validateShapeImplementsInterface(projectSchema, shape, shape.interfaces[i], path);
|
|
690
|
-
if (interfaceErrors.length) {
|
|
691
|
-
errors.push(...interfaceErrors);
|
|
692
|
-
}
|
|
693
|
-
}
|
|
694
697
|
}
|
|
695
698
|
}
|
|
696
699
|
return errors;
|