@takeshape/schema 8.229.0 → 8.231.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/refs.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  /// <reference types="lodash" />
2
2
  import type { SchemaPath, SchemaWithRef, ProjectSchemaV3X } from './types';
3
- import type { PropertySchema, Shape, ShapeSchema, ObjectSchema, ReturnShape, Ref } from './project-schema';
3
+ import type { PropertySchema, Shape, ShapeSchema, ObjectSchema, ReturnShape, Ref, ProjectSchema, Args } from './project-schema';
4
4
  import type { Maybe } from '@takeshape/util';
5
5
  export declare type ServicesContext = Pick<ProjectSchemaV3X, 'services'>;
6
6
  export declare type ServicesShapesContext = Pick<ProjectSchemaV3X, 'services' | 'shapes'>;
@@ -180,5 +180,12 @@ export interface PropertyRefItem {
180
180
  propertyName: string;
181
181
  }
182
182
  export declare function parsePropertyRef(refStr: string): Maybe<PropertyRefItem>;
183
+ export declare function propertyRefItemToResolverPath(getNamespace: GetNamespace, item: PropertyRefItem): string[];
184
+ export declare function propertyRefItemToArgsPath(getNamespace: GetNamespace, item: PropertyRefItem): string[];
183
185
  export declare function propertyRefItemToPath(getNamespace: GetNamespace, item: PropertyRefItem): string[];
186
+ export declare function propertyRefToArgs(projectSchema: ProjectSchema, ref: string): Maybe<Args>;
187
+ /**
188
+ * Get a ref to the given shape.
189
+ */
190
+ export declare const getRefForShape: (context: ServicesContext, shape: Shape) => string;
184
191
  //# sourceMappingURL=refs.d.ts.map
@@ -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
@@ -13,6 +13,7 @@ exports.dereferenceSchema = dereferenceSchema;
13
13
  exports.followRef = followRef;
14
14
  exports.getFlattenedTemplateShapeName = getFlattenedTemplateShapeName;
15
15
  exports.getRef = getRef;
16
+ exports.getRefForShape = void 0;
16
17
  exports.getRefOrItemsRef = getRefOrItemsRef;
17
18
  exports.getRefShapeName = getRefShapeName;
18
19
  exports.getRefWithPath = getRefWithPath;
@@ -24,7 +25,10 @@ exports.omitRefAndExtend = void 0;
24
25
  exports.parsePropertyRef = parsePropertyRef;
25
26
  exports.parseReturnShape = parseReturnShape;
26
27
  exports.parseTemplateShape = parseTemplateShape;
28
+ exports.propertyRefItemToArgsPath = propertyRefItemToArgsPath;
27
29
  exports.propertyRefItemToPath = propertyRefItemToPath;
30
+ exports.propertyRefItemToResolverPath = propertyRefItemToResolverPath;
31
+ exports.propertyRefToArgs = propertyRefToArgs;
28
32
  exports.refExpressionListToRefItemList = refExpressionListToRefItemList;
29
33
  exports.refExpressionToRefItem = refExpressionToRefItem;
30
34
  exports.refExpressionToShape = refExpressionToShape;
@@ -595,6 +599,16 @@ function parsePropertyRef(refStr) {
595
599
  }
596
600
  }
597
601
 
602
+ function propertyRefItemToResolverPath(getNamespace, item) {
603
+ const path = propertyRefItemToPath(getNamespace, item);
604
+ return path.concat(path[0] === 'shapes' ? '@resolver' : 'resolver');
605
+ }
606
+
607
+ function propertyRefItemToArgsPath(getNamespace, item) {
608
+ const path = propertyRefItemToPath(getNamespace, item);
609
+ return path.concat(path[0] === 'shapes' ? '@args' : 'args');
610
+ }
611
+
598
612
  function propertyRefItemToPath(getNamespace, item) {
599
613
  const {
600
614
  shapeName,
@@ -606,8 +620,31 @@ function propertyRefItemToPath(getNamespace, item) {
606
620
  const applyNamespace = name => namespace ? `${namespace}_${name}` : name;
607
621
 
608
622
  if (shapeName === 'Query' || shapeName === 'Mutation') {
609
- return [shapeName === 'Query' ? 'queries' : 'mutations', applyNamespace(propertyName), 'resolver'];
623
+ return [shapeName === 'Query' ? 'queries' : 'mutations', applyNamespace(propertyName)];
610
624
  }
611
625
 
612
- return ['shapes', applyNamespace(shapeName), 'schema', 'properties', propertyName, '@resolver'];
613
- }
626
+ return ['shapes', applyNamespace(shapeName), 'schema', 'properties', propertyName];
627
+ }
628
+
629
+ function propertyRefToArgs(projectSchema, ref) {
630
+ const parsed = parsePropertyRef(ref);
631
+
632
+ if (parsed) {
633
+ const path = propertyRefItemToArgsPath(createGetNamespace(projectSchema), parsed);
634
+ return (0, _get.default)(projectSchema, path);
635
+ }
636
+ }
637
+ /**
638
+ * Get a ref to the given shape.
639
+ */
640
+
641
+
642
+ const getRefForShape = (context, shape) => {
643
+ const nameParts = shape.name.split('_');
644
+ const serviceNamespace = nameParts.length === 2 ? nameParts[0] : undefined;
645
+ const typeName = nameParts.length === 2 ? nameParts[1] : nameParts[0];
646
+ const service = serviceNamespace ? Object.values(context.services ?? {}).find(service => service.namespace === serviceNamespace).id : 'local';
647
+ return `${service}:${typeName}`;
648
+ };
649
+
650
+ exports.getRefForShape = getRefForShape;
@@ -1 +1 @@
1
- {"version":3,"file":"schema-util.d.ts","sourceRoot":"","sources":["../../src/schema-util.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema-util.d.ts","sourceRoot":"","sources":["../../src/schema-util.ts"],"names":[],"mappings":"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"}
@@ -977,7 +977,9 @@ function getShapesById(projectSchema) {
977
977
 
978
978
 
979
979
  function getAllNamespaceShapes(projectSchema) {
980
- return (0, _uniq.default)(getAllRefs(projectSchema, refItem => Boolean(refItem.serviceNamespace)).map(_refs.refItemToShapeName));
980
+ const isServiceRef = refItem => Boolean(refItem.serviceNamespace);
981
+
982
+ return (0, _uniq.default)(getAllRefs(projectSchema, isServiceRef).map(_refs.refItemToShapeName));
981
983
  }
982
984
  /**
983
985
  * Returns a list of all shape names in a service namespace, excluding any
package/dist/validate.js CHANGED
@@ -299,7 +299,7 @@ function validateResolver(projectSchema, basePath, resolver) {
299
299
  const parsed = (0, _refs.parsePropertyRef)(resolver.to);
300
300
 
301
301
  if (parsed) {
302
- const targetResolver = (0, _get.default)(projectSchema, (0, _refs.propertyRefItemToPath)(getNamespace, parsed));
302
+ const targetResolver = (0, _get.default)(projectSchema, (0, _refs.propertyRefItemToResolverPath)(getNamespace, parsed));
303
303
 
304
304
  if (!(0, _utils.isBasicResolver)(targetResolver) && !(0, _utils.isComposeResolver)(targetResolver)) {
305
305
  errors.push({
package/es/refs.js CHANGED
@@ -507,6 +507,14 @@ export function parsePropertyRef(refStr) {
507
507
  };
508
508
  }
509
509
  }
510
+ export function propertyRefItemToResolverPath(getNamespace, item) {
511
+ const path = propertyRefItemToPath(getNamespace, item);
512
+ return path.concat(path[0] === 'shapes' ? '@resolver' : 'resolver');
513
+ }
514
+ export function propertyRefItemToArgsPath(getNamespace, item) {
515
+ const path = propertyRefItemToPath(getNamespace, item);
516
+ return path.concat(path[0] === 'shapes' ? '@args' : 'args');
517
+ }
510
518
  export function propertyRefItemToPath(getNamespace, item) {
511
519
  const {
512
520
  shapeName,
@@ -518,8 +526,27 @@ export function propertyRefItemToPath(getNamespace, item) {
518
526
  const applyNamespace = name => namespace ? `${namespace}_${name}` : name;
519
527
 
520
528
  if (shapeName === 'Query' || shapeName === 'Mutation') {
521
- return [shapeName === 'Query' ? 'queries' : 'mutations', applyNamespace(propertyName), 'resolver'];
529
+ return [shapeName === 'Query' ? 'queries' : 'mutations', applyNamespace(propertyName)];
522
530
  }
523
531
 
524
- return ['shapes', applyNamespace(shapeName), 'schema', 'properties', propertyName, '@resolver'];
525
- }
532
+ return ['shapes', applyNamespace(shapeName), 'schema', 'properties', propertyName];
533
+ }
534
+ export function propertyRefToArgs(projectSchema, ref) {
535
+ const parsed = parsePropertyRef(ref);
536
+
537
+ if (parsed) {
538
+ const path = propertyRefItemToArgsPath(createGetNamespace(projectSchema), parsed);
539
+ return get(projectSchema, path);
540
+ }
541
+ }
542
+ /**
543
+ * Get a ref to the given shape.
544
+ */
545
+
546
+ export const getRefForShape = (context, shape) => {
547
+ const nameParts = shape.name.split('_');
548
+ const serviceNamespace = nameParts.length === 2 ? nameParts[0] : undefined;
549
+ const typeName = nameParts.length === 2 ? nameParts[1] : nameParts[0];
550
+ const service = serviceNamespace ? Object.values(context.services ?? {}).find(service => service.namespace === serviceNamespace).id : 'local';
551
+ return `${service}:${typeName}`;
552
+ };
package/es/schema-util.js CHANGED
@@ -842,7 +842,9 @@ export function getShapesById(projectSchema) {
842
842
  */
843
843
 
844
844
  export function getAllNamespaceShapes(projectSchema) {
845
- return uniq(getAllRefs(projectSchema, refItem => Boolean(refItem.serviceNamespace)).map(refItemToShapeName));
845
+ const isServiceRef = refItem => Boolean(refItem.serviceNamespace);
846
+
847
+ return uniq(getAllRefs(projectSchema, isServiceRef).map(refItemToShapeName));
846
848
  }
847
849
  /**
848
850
  * Returns a list of all shape names in a service namespace, excluding any
package/es/validate.js CHANGED
@@ -16,7 +16,7 @@ import { getAllNamespaceShapes, getAllRefsInShapes } from './schema-util';
16
16
  import { builtInShapes } from './builtin-schema';
17
17
  import { isValidTemplate } from './template-shapes';
18
18
  import { isBasicResolver, isComposeResolver, isExtendsSchema, isObjectSchema } from './types/utils';
19
- import { refItemToAtRef, refItemToShapeName, parseReturnShape, getRefShapeName, parsePropertyRef, propertyRefItemToPath, createGetNamespace } from './refs';
19
+ import { refItemToAtRef, refItemToShapeName, parseReturnShape, getRefShapeName, parsePropertyRef, propertyRefItemToResolverPath, createGetNamespace } from './refs';
20
20
  import { scalars } from './scalars';
21
21
  import { isUnionSchema } from './unions';
22
22
  import { isEnumLikeSchema } from './enum';
@@ -252,7 +252,7 @@ function validateResolver(projectSchema, basePath, resolver) {
252
252
  const parsed = parsePropertyRef(resolver.to);
253
253
 
254
254
  if (parsed) {
255
- const targetResolver = get(projectSchema, propertyRefItemToPath(getNamespace, parsed));
255
+ const targetResolver = get(projectSchema, propertyRefItemToResolverPath(getNamespace, parsed));
256
256
 
257
257
  if (!isBasicResolver(targetResolver) && !isComposeResolver(targetResolver)) {
258
258
  errors.push({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@takeshape/schema",
3
- "version": "8.229.0",
3
+ "version": "8.231.1",
4
4
  "description": "TakeShape Schema",
5
5
  "homepage": "https://www.takeshape.io",
6
6
  "repository": {
@@ -21,9 +21,9 @@
21
21
  "examples"
22
22
  ],
23
23
  "dependencies": {
24
- "@takeshape/errors": "8.229.0",
25
- "@takeshape/json-schema": "8.229.0",
26
- "@takeshape/util": "8.229.0",
24
+ "@takeshape/errors": "8.231.1",
25
+ "@takeshape/json-schema": "8.231.1",
26
+ "@takeshape/util": "8.231.1",
27
27
  "ajv": "^8.10.0",
28
28
  "ajv-formats": "^2.1.1",
29
29
  "blueimp-md5": "^2.10.0",