@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.
@@ -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;AAGhF,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,CAsDH"}
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 = JSON.parse(JSON.stringify(schema), (_key, value) => {
36
- if ((0, _util.isRecord)(value)) {
37
- // Remove required
38
- if (options.isUpdate && Array.isArray(value.required) && value.required.length) {
39
- delete value.required;
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
- // Remove default
43
- if (options.isUpdate && value.type !== undefined && value.default !== undefined) {
44
- delete value.default;
45
- }
46
- if (value.type === 'object' && (0, _util.isRecord)(value.properties)) {
47
- return {
48
- ...value,
49
- properties: (0, _omitBy.default)(value.properties, prop => (0, _util.isRecord)(prop) && prop['@resolver'] && !prop['@input'])
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.refItemToShapeName)(ref));
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
  }
@@ -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(shapeMap: ShapeMap, interfaceName: string): ShapeJSON[];
11
- export declare function interfaceToUnion(context: Pick<ProjectSchemaJSON, 'shapes' | 'services'>, interfaceName: string): OneOfSchema;
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
@@ -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;AAMlD,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,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAYlE;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,GAAG,SAAS,EAAE,CAS5F;AAED,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,GAAG,UAAU,CAAC,EACvD,aAAa,EAAE,MAAM,GACpB,WAAW,CAKb;AAED,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,EAAE,CAgBlG"}
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"}
@@ -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(name => shapeMap[name]);
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 getImplementingShapes(shapeMap, interfaceName) {
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.includes(interfaceName)) {
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, interfaceName) {
76
- const shapes = getImplementingShapes(context.shapes, interfaceName);
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.shapes, shape.name).map(shape => shape.name);
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.refItemToShapeName)(ref);
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 refItemToShapeName(refItem: RefItem): string;
131
+ export declare function refItemToNamespacedShapeName(refItem: RefItem): string;
132
132
  /**
133
133
  * Turns a `RefItem` into a path suitable for `lodash.get`.
134
134
  */
@@ -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: refItemToShapeName(ref)
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 = refItemToShapeName(ref);
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 refItemToShapeName(refItem) {
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', refItemToShapeName(refItem)];
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 ? refItemToShapeName(refItem) : undefined;
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,EAOtB,MAAM,QAAQ,CAAC;AAUhB,eAAO,MAAM,2BAA2B,2BAA2B,CAAC;AAEpE,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAEzD;AAID,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,wBAAgB,aAAa,CAAC,aAAa,EAAE,iBAAiB,EAAE,SAAS,EAAE,aAAa,GAAG,OAAO,CAGjG;AAED,eAAO,MAAM,kBAAkB,qIAUrB,CAAC;AACX,eAAO,MAAM,gBAAgB,oKAAkE,CAAC;AAEhG,eAAO,MAAM,gBAAgB,wSAYnB,CAAC;AAEX,eAAO,MAAM,gBAAgB,8LAA2D,CAAC;AAEzF,eAAO,MAAM,eAAe,uOAOlB,CAAC;AAEX,eAAO,MAAM,8BAA8B,UAAkD,CAAC;AAG9F,eAAO,MAAM,uBAAuB,UAWnC,CAAC;AAEF,wBAAgB,qBAAqB,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM,CAEtE;AAMD,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE7D;AAGD,wBAAgB,cAAc,CAAC,aAAa,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,CAAC,CAyDhH;AAGD,wBAAgB,WAAW,CACzB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,SAAS,EAClB,aAAa,EAAE,iBAAiB,EAChC,UAAU,SAAI,GACb,MAAM,EAAE,CAmDV;AAED,KAAK,cAAc,GAAG,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;AAExD,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,cAAc,GAAG,cAAc,EAAE,GACxC,IAAI,CAAC,iBAAiB,EAAE,SAAS,GAAG,WAAW,CAAC,CA6ElD;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAYvG;AAED,eAAO,MAAM,gBAAgB,OAAO,CAAC;AAErC,wBAAgB,UAAU,CAAC,GAAG,CAAC,EAAE;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAC,GAAG,MAAM,CAE3D;AAuBD,wBAAgB,yBAAyB,CACvC,aAAa,EAAE,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,YAAY,GAAG,WAAW,CAAC,CAAC,EAC3E,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,GAAG,UAAU,CAAC,GACxC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAwEhC;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,GAAE,wBAAyD,eAYzG;AAED,oBAAY,wBAAwB;IAClC,KAAK,IAAA;IACL,MAAM,IAAA;IACN,IAAI,IAAA;CACL;AAiBD,wBAAgB,6BAA6B,CAAC,aAAa,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,GAAG,SAAS,CA8B3G;AAKD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,aAAa,EAAE,iBAAiB,GAAG,QAAQ,CAuB1E;AAED,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,iBAAiB,EAAE,aAAa,EAAE,CAAC,GAAG,CAAC,CAuCtF;AAED,wBAAgB,YAAY,CAAC,aAAa,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAErH;AAED,wBAAgB,aAAa,CAAC,aAAa,EAAE,qBAAqB,EAAE,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAE3G;AAED,wBAAgB,eAAe,CAAC,aAAa,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,CAO5G;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,CAEnG;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAEtD;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK,IAAI,WAAW,CAEpE;AAED,wBAAgB,gBAAgB,CAAC,aAAa,EAAE,eAAe,EAAE,UAAU,EAAE,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,CAM3G;AAED,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,eAAe,EACxB,UAAU,EAAE,cAAc,EAC1B,UAAU,GAAE,UAAe,GAC1B,KAAK,CAAC,eAAe,CAAC,CAUxB;AAED,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,qBAAqB,EAAE,UAAU,EAAE,cAAc,GAAG,KAAK,CAAC,WAAW,CAAC,CAYjH;AAwFD,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,GAAG,cAAc,CAYxG;AAED,wBAAgB,yBAAyB,CAAC,aAAa,EAAE,iBAAiB,GAAG;IAC3E,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CAC7C,CAeA;AAED,wBAAgB,oBAAoB,CAClC,aAAa,EAAE,iBAAiB,EAChC,KAAK,EAAE,SAAS,EAChB,SAAS,CAAC,EAAE,CAAC,UAAU,EAAE,cAAc,KAAK,OAAO,GAClD,MAAM,EAAE,CAyBV;AAED,UAAU,uBAAuB;IAC/B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B;AAED,wBAAgB,iBAAiB,CAAC,aAAa,EAAE,iBAAiB,EAAE,MAAM,EAAE,uBAAuB,GAAG,QAAQ,CAsB7G;AAED,MAAM,MAAM,uBAAuB,GAC/B,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,UAAU,KAAK,OAAO,CAAC,GACvD,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,UAAU,KAAK,IAAI,CAAC,CAAC;AAqBzD,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,EAC5B,QAAQ,EAAE,uBAAuB,GAChC,IAAI,CAcN;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,uBAAuB,GAAG,IAAI,CAI9F;AAED,MAAM,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,eAAe,KAAK,OAAO,CAAC;AAQ7D;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,qBAAqB,EAAE,SAAS,CAAC,EAAE,YAAY,GAAG,eAAe,EAAE,CAyCpH;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,aAAa,EAAE,qBAAqB,EACpC,SAAS,EAAE,MAAM,EAAE,EACnB,KAAK,EAAE,SAAS,EAChB,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,KAAK,OAAO,GAC5C,eAAe,EAAE,CA8BnB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,aAAa,EAAE,IAAI,CAAC,iBAAiB,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,CAAC,EACvF,gBAAgB,EAAE,SAAS,GAAG,WAAW,EACzC,SAAS,CAAC,EAAE,YAAY,GACvB,eAAe,EAAE,CAanB;AAED;;;GAGG;AACH,wBAAgB,UAAU,CACxB,aAAa,EAAE,IAAI,CAAC,iBAAiB,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,CAAC,EACvF,SAAS,CAAC,EAAE,YAAY,GACvB,eAAe,EAAE,CAMnB;AAED,MAAM,WAAW,OAAO;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CASrD;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAEtD;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,GAAG,MAAM,GAAG,SAAS,CAOlH;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,CAE1E;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,CAGrF;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,CAGxE;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,CAI7E;AAED,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,iBAAiB,CAahE;AAED,wBAAgB,aAAa,CAAC,aAAa,EAAE,iBAAiB,GAAG,QAAQ,CAExE;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,iBAAiB,GAAG,MAAM,EAAE,CAGhF;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,0BAA0B,CAAC,aAAa,EAAE,+BAA+B,GAAG,GAAG,CAAC,MAAM,CAAC,CAkBtG;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,UAAU,GAAG,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAU1F;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,YAKlE,cAAc,KAAG,IAAI,CAkB/C;AAED;;;GAGG;AACH,eAAO,MAAM,wBAAwB;;;+EAmBiD,MAAM;4CAKxC,MAAM,EAAE;qDAiBC,OAAO;mDAKT,IAAI;oBAKrC,kBAAkB,EAAE;qBAInB,OAAO,MAAM,EAAE,cAAc,CAAC;oBAI/B,kBAAkB,EAAE;qBAInB,cAAc,EAAE;EAmB1C,CAAC;AAMF,cAAM,sBAAsB;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA8B;IACzD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;gBAE9C,OAAO,EAAE,qBAAqB,EAAE,aAAa,EAAE,cAAc,GAAG,SAAS;IAWrF,QAAQ,CAAC,YAAY,EAAE,kBAAkB,GAAG,KAAK,CAAC,cAAc,CAAC;IAIjE,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,kBAAkB,KAAK,OAAO,GAAG,KAAK,CAAC,cAAc,CAAC;IAI/E,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,kBAAkB,KAAK,OAAO,GAAG,KAAK,CAAC,kBAAkB,CAAC;IAIlF,MAAM,CAAC,YAAY,EAAE,kBAAkB,GAAG,KAAK,CAAC,MAAM,CAAC;CAMxD;AAED,YAAY,EAAC,sBAAsB,EAAC,CAAC;AAErC;;;GAGG;AACH,eAAO,MAAM,4BAA4B,8GAIxC,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,IAAI,CAAC,iBAAiB,EAAE,SAAS,GAAG,WAAW,CAAC,CAAC;AAgClF;;GAEG;AACH,eAAO,MAAM,gBAAgB,kBACZ,kBAAkB,aACtB,MAAM,YACP,MAAM,KACf,MAAM,GAAG,SAAyE,CAAC;AACtF;;GAEG;AACH,eAAO,MAAM,mBAAmB,kBACf,kBAAkB,aACtB,MAAM,YACP,MAAM,KACf,MAAM,GAAG,SAA4E,CAAC;AAEzF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,kBAAmB,kBAAkB,aAAa,MAAM,YAAY,MAAM,KAAG,MAC5C,CAAC;AACjE;;;GAGG;AACH,eAAO,MAAM,qBAAqB,kBAAmB,kBAAkB,aAAa,MAAM,YAAY,MAAM,KAAG,MAC5C,CAAC;AAEpE,MAAM,MAAM,2BAA2B,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,mBAAmB,CAAC;AAEvH;;GAEG;AACH,eAAO,MAAM,sBAAsB,cAAe,MAAM,YAAY,2BAA2B,KAAG,MAGjG,CAAC;AAEF,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAAG,SAAS,CAQnG;AAED,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,GAAG,cAAc,CAgBxG;AAED,wBAAgB,eAAe,CAAC,aAAa,EAAE,iBAAiB,EAAE,SAAS,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS,CAO5G;AAED,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAMxF;AAED;;GAEG;AACH,eAAO,MAAM,sBAAsB,gBACpB,iBAAiB,iBACf,aAAa,aACjB,MAAM,YAMlB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,wBAAwB,kBACpB,iBAAiB,SACzB,SAAS,aACL,MAAM,KAChB,OAiBF,CAAC"}
1
+ {"version":3,"file":"schema-util.d.ts","sourceRoot":"","sources":["../../src/schema-util.ts"],"names":[],"mappings":"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"}
@@ -394,13 +394,17 @@ function getModelBuiltInProperties(projectSchema, shape) {
394
394
  _enabled: {
395
395
  title: 'Enabled',
396
396
  type: 'boolean',
397
- '@deprecationReason': showDeprecationReason ? 'Use _status instead' : undefined
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
- '@deprecationReason': showDeprecationReason ? 'Use a custom date field instead' : undefined
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.refItemToShapeName)));
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.refItemToShapeName)(refItem);
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, (ref, refPath) => {
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)(ref)) {
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)(ref);
791
- refItem = {
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
- refItem = {
797
- ...(0, _refs.refToRefItem)(projectSchema, ref),
808
+ addRef(items, {
809
+ ...(0, _refs.refToRefItem)(projectSchema, interfaces),
798
810
  path
799
- };
811
+ }, predicate);
800
812
  } else if (propName === '@args' || propName === 'args') {
801
- refItem = {
802
- ...(0, _refs.refExpressionToRefItem)(projectSchema, ref),
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.refItemToShapeName));
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.refItemToShapeName)(refItem));
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.refItemToShapeName)(arrayOfShapeRef);
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;AAWtC,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"}
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.refItemToShapeName)(refItem))}`;
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.refItemToShapeName)(refItem) : `${shapeName}${fieldName}`;
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.refItemToShapeName)(refItem);
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({
@@ -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.refItemToShapeName)(ref);
46
+ const nestedShapeName = (0, _refs.refItemToNamespacedShapeName)(ref);
47
47
  normalizedForms[nestedShapeName] = {
48
48
  default: (0, _util.deepClone)(propConfig)
49
49
  };
@@ -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;AA4BnF,OAAO,EAEL,YAAY,EAKb,MAAM,iBAAiB,CAAC;AAWzB,OAAO,EAAC,WAAW,EAAC,MAAM,WAAW,CAAC;AA62BtC,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"}
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.refItemToShapeName)(item);
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.refItemToShapeName)(item);
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 valid = isValidRef(context, projectSchema, layersById[layerId], item);
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, interfaceShapeName, path) {
660
+ function validateShapeImplementsInterface(projectSchema, shape, interfaceRefItem, path) {
651
661
  const errors = [];
652
- const interfaceShape = projectSchema.shapes[interfaceShapeName];
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 "${interfaceShapeName}" not found`
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;