@takeshape/schema 10.47.3 → 10.49.13
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/schema-util.d.ts +4 -5
- package/dist/schema-util.d.ts.map +1 -1
- package/dist/schema-util.js +29 -52
- package/dist/validate.js +2 -1
- package/es/schema-util.js +29 -50
- package/es/validate.js +2 -1
- package/package.json +5 -5
package/dist/schema-util.d.ts
CHANGED
|
@@ -65,8 +65,11 @@ type GetRelevantShapesParams = {
|
|
|
65
65
|
includeDependencies?: boolean;
|
|
66
66
|
};
|
|
67
67
|
export declare function getRelevantShapes(projectSchema: ProjectSchemaJSON, params: GetRelevantShapesParams): ShapeMap;
|
|
68
|
+
/**
|
|
69
|
+
* Visitor callback return false to stop iterating
|
|
70
|
+
*/
|
|
68
71
|
export type PropertyVisitorCallback = ((schema: PropertySchema, path: SchemaPath) => boolean) | ((schema: PropertySchema, path: SchemaPath) => void);
|
|
69
|
-
export declare function visitSchemaProperties(
|
|
72
|
+
export declare function visitSchemaProperties(root: PropertySchema, path: SchemaPath, callback: PropertyVisitorCallback): void;
|
|
70
73
|
export declare function visitShapeProperties(shapes: ShapeMap, callback: PropertyVisitorCallback): void;
|
|
71
74
|
export type RefPredicate = (ref: RefItemWithPath) => boolean;
|
|
72
75
|
/**
|
|
@@ -143,10 +146,6 @@ export declare function getNamespacedShapeNameList(projectSchema: LatestProjectS
|
|
|
143
146
|
* @returns A new map with the filtered list of services
|
|
144
147
|
*/
|
|
145
148
|
export declare function filterGraphQLServiceMap(serviceMap: ServiceMap): Map<string, ServiceConfig>;
|
|
146
|
-
/**
|
|
147
|
-
* Add all referenced shape names to the refSet meant to be used as a callback to visitSchemaProperties
|
|
148
|
-
*/
|
|
149
|
-
export declare function collectReferencedShapeNames(context: ServicesContext, shapeNames: Set<string>): (schema: PropertySchema) => void;
|
|
150
149
|
/**
|
|
151
150
|
* Creates a schema property list chainable fn, allowing you to manipulate and
|
|
152
151
|
* iterate the properties in a schema.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema-util.d.ts","sourceRoot":"","sources":["../../src/schema-util.ts"],"names":[],"mappings":";
|
|
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
|
@@ -6,9 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.SERVICE_OBJECT_PATTERN_NAME = exports.DEFAULT_ID_FIELD = exports.BuiltInPropertiesProfile = void 0;
|
|
7
7
|
exports.applyBuiltinPropertiesToShape = applyBuiltinPropertiesToShape;
|
|
8
8
|
exports.applyDefaultsToSchema = applyDefaultsToSchema;
|
|
9
|
-
exports.arraySchemaKeys = void 0;
|
|
10
|
-
exports.collectReferencedShapeNames = collectReferencedShapeNames;
|
|
11
|
-
exports.createSchemaPropertyList = exports.createSchemaPropertyAccessor = exports.commonSchemaKeys = void 0;
|
|
9
|
+
exports.createSchemaPropertyList = exports.createSchemaPropertyAccessor = exports.commonSchemaKeys = exports.arraySchemaKeys = void 0;
|
|
12
10
|
exports.createShape = createShape;
|
|
13
11
|
exports.emptySchema = emptySchema;
|
|
14
12
|
exports.ensureQueryByShape = exports.ensureMutationByShape = void 0;
|
|
@@ -71,7 +69,6 @@ exports.visitShapeProperties = visitShapeProperties;
|
|
|
71
69
|
var _find = _interopRequireDefault(require("lodash/find"));
|
|
72
70
|
var _mapValues = _interopRequireDefault(require("lodash/mapValues"));
|
|
73
71
|
var _keyBy = _interopRequireDefault(require("lodash/keyBy"));
|
|
74
|
-
var _isObject = _interopRequireDefault(require("lodash/isObject"));
|
|
75
72
|
var _curry = _interopRequireDefault(require("lodash/fp/curry"));
|
|
76
73
|
var _orderBy2 = _interopRequireDefault(require("lodash/fp/orderBy"));
|
|
77
74
|
var _uniq = _interopRequireDefault(require("lodash/uniq"));
|
|
@@ -740,28 +737,35 @@ function getRelevantShapes(projectSchema, params) {
|
|
|
740
737
|
}
|
|
741
738
|
return {};
|
|
742
739
|
}
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
740
|
+
|
|
741
|
+
/**
|
|
742
|
+
* Visitor callback return false to stop iterating
|
|
743
|
+
*/
|
|
744
|
+
|
|
745
|
+
function visitSchemaProperties(root, path, callback) {
|
|
746
|
+
const visitEach = (entries, path) => {
|
|
747
|
+
for (const [name, propSchema] of entries) {
|
|
748
|
+
const newPath = [...path, name];
|
|
749
|
+
visit(propSchema, newPath);
|
|
748
750
|
}
|
|
749
|
-
}
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
751
|
+
};
|
|
752
|
+
const visit = (schema, path) => {
|
|
753
|
+
if (schema !== root && callback(schema, path) === false) {
|
|
754
|
+
return;
|
|
755
|
+
}
|
|
756
|
+
if ((0, _utils.isArraySchema)(schema)) {
|
|
757
|
+
visit(schema.items, [...path, 'items']);
|
|
758
|
+
} else if ((0, _utils.isObjectSchema)(schema)) {
|
|
759
|
+
visitEach(Object.entries(schema.properties), [...path, 'properties']);
|
|
760
|
+
} else if ((0, _utils.isExtendsSchema)(schema)) {
|
|
761
|
+
visitEach(Object.entries(schema.extends), [...path, 'extends']);
|
|
762
|
+
} else if ((0, _utils.isAllOfSchema)(schema)) {
|
|
763
|
+
visitEach(Object.entries(schema.allOf), [...path, 'allOf']);
|
|
764
|
+
} else if ((0, _utils.isOneOfSchema)(schema)) {
|
|
765
|
+
visitEach(Object.entries(schema.oneOf), [...path, 'oneOf']);
|
|
766
|
+
}
|
|
767
|
+
};
|
|
768
|
+
visit(root, path);
|
|
765
769
|
}
|
|
766
770
|
function visitShapeProperties(shapes, callback) {
|
|
767
771
|
for (const [shapeName, shape] of Object.entries(shapes)) {
|
|
@@ -1007,33 +1011,6 @@ function filterGraphQLServiceMap(serviceMap) {
|
|
|
1007
1011
|
return filtered;
|
|
1008
1012
|
}
|
|
1009
1013
|
|
|
1010
|
-
/**
|
|
1011
|
-
* Add all referenced shape names to the refSet meant to be used as a callback to visitSchemaProperties
|
|
1012
|
-
*/
|
|
1013
|
-
function collectReferencedShapeNames(context, shapeNames) {
|
|
1014
|
-
const addRef = refItem => {
|
|
1015
|
-
shapeNames.add((0, _refs.refItemToNamespacedShapeName)(refItem));
|
|
1016
|
-
};
|
|
1017
|
-
const collect = schema => {
|
|
1018
|
-
const args = schema['@args'];
|
|
1019
|
-
if (args && (0, _isObject.default)(args) && (0, _utils.isObjectSchema)(args)) {
|
|
1020
|
-
Object.values(args.properties).forEach(collect);
|
|
1021
|
-
}
|
|
1022
|
-
const argsRefItem = getArgsReference(context, schema);
|
|
1023
|
-
if (argsRefItem) {
|
|
1024
|
-
addRef(argsRefItem);
|
|
1025
|
-
}
|
|
1026
|
-
const refItem = (0, _refs.getRefOrItemsRef)(context, schema);
|
|
1027
|
-
if (refItem) {
|
|
1028
|
-
addRef(refItem);
|
|
1029
|
-
}
|
|
1030
|
-
(0, _refs.getOneOfRefs)(context, schema).forEach(oneOfRef => {
|
|
1031
|
-
addRef(oneOfRef);
|
|
1032
|
-
});
|
|
1033
|
-
};
|
|
1034
|
-
return collect;
|
|
1035
|
-
}
|
|
1036
|
-
|
|
1037
1014
|
/**
|
|
1038
1015
|
* Creates a schema property list chainable fn, allowing you to manipulate and
|
|
1039
1016
|
* iterate the properties in a schema.
|
package/dist/validate.js
CHANGED
|
@@ -970,7 +970,8 @@ function ensureValidLatestSchemaSyntax(obj) {
|
|
|
970
970
|
*/
|
|
971
971
|
function createRoleInputValidator() {
|
|
972
972
|
const validator = (0, _jsonSchema.createAjv)({
|
|
973
|
-
useDefaults: true
|
|
973
|
+
useDefaults: true,
|
|
974
|
+
removeAdditional: 'all'
|
|
974
975
|
});
|
|
975
976
|
const {
|
|
976
977
|
RoleInput,
|
package/es/schema-util.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import find from 'lodash/find';
|
|
2
2
|
import mapValues from 'lodash/mapValues';
|
|
3
3
|
import keyBy from 'lodash/keyBy';
|
|
4
|
-
import isObject from 'lodash/isObject';
|
|
5
4
|
import curry from 'lodash/fp/curry';
|
|
6
5
|
import orderBy from 'lodash/fp/orderBy';
|
|
7
6
|
import uniq from 'lodash/uniq';
|
|
@@ -17,7 +16,7 @@ import { workflowsEnabled } from './api-version';
|
|
|
17
16
|
import { builtInShapes, builtInForms } from './builtin-schema';
|
|
18
17
|
import { getArgsType, isObjectSchema, isAllOfSchema, isOneOfSchema, isExtendsSchema, isArraySchema, isServiceResolver, isGraphqlResolver, isRefSchema } from './types/utils';
|
|
19
18
|
import { getStoredServiceConfig } from './services';
|
|
20
|
-
import { createTemplateShapeName, dereferenceObjectSchema, dereferenceSchema, getRef, getRefOrItemsRef, getRefShapeName, parseReturnShape, refExpressionToRefItem, refItemToShape, refItemToNamespacedShapeName, refItemToShapeSchema, atRefToRefItem, refToRefItem, parseTemplateShape, returnShapeToSchema, serializePropertyRef
|
|
19
|
+
import { createTemplateShapeName, dereferenceObjectSchema, dereferenceSchema, getRef, getRefOrItemsRef, getRefShapeName, parseReturnShape, refExpressionToRefItem, refItemToShape, refItemToNamespacedShapeName, refItemToShapeSchema, atRefToRefItem, refToRefItem, parseTemplateShape, returnShapeToSchema, serializePropertyRef } from './refs';
|
|
21
20
|
import { isUnionSchema } from './unions';
|
|
22
21
|
import { mergeFormProperties, mergeSchemaProperties, getArgs } from './util';
|
|
23
22
|
export const SERVICE_OBJECT_PATTERN_NAME = 'pattern:service-object';
|
|
@@ -668,28 +667,35 @@ export function getRelevantShapes(projectSchema, params) {
|
|
|
668
667
|
}
|
|
669
668
|
return {};
|
|
670
669
|
}
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
670
|
+
|
|
671
|
+
/**
|
|
672
|
+
* Visitor callback return false to stop iterating
|
|
673
|
+
*/
|
|
674
|
+
|
|
675
|
+
export function visitSchemaProperties(root, path, callback) {
|
|
676
|
+
const visitEach = (entries, path) => {
|
|
677
|
+
for (const [name, propSchema] of entries) {
|
|
678
|
+
const newPath = [...path, name];
|
|
679
|
+
visit(propSchema, newPath);
|
|
676
680
|
}
|
|
677
|
-
}
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
681
|
+
};
|
|
682
|
+
const visit = (schema, path) => {
|
|
683
|
+
if (schema !== root && callback(schema, path) === false) {
|
|
684
|
+
return;
|
|
685
|
+
}
|
|
686
|
+
if (isArraySchema(schema)) {
|
|
687
|
+
visit(schema.items, [...path, 'items']);
|
|
688
|
+
} else if (isObjectSchema(schema)) {
|
|
689
|
+
visitEach(Object.entries(schema.properties), [...path, 'properties']);
|
|
690
|
+
} else if (isExtendsSchema(schema)) {
|
|
691
|
+
visitEach(Object.entries(schema.extends), [...path, 'extends']);
|
|
692
|
+
} else if (isAllOfSchema(schema)) {
|
|
693
|
+
visitEach(Object.entries(schema.allOf), [...path, 'allOf']);
|
|
694
|
+
} else if (isOneOfSchema(schema)) {
|
|
695
|
+
visitEach(Object.entries(schema.oneOf), [...path, 'oneOf']);
|
|
696
|
+
}
|
|
697
|
+
};
|
|
698
|
+
visit(root, path);
|
|
693
699
|
}
|
|
694
700
|
export function visitShapeProperties(shapes, callback) {
|
|
695
701
|
for (const [shapeName, shape] of Object.entries(shapes)) {
|
|
@@ -935,33 +941,6 @@ export function filterGraphQLServiceMap(serviceMap) {
|
|
|
935
941
|
return filtered;
|
|
936
942
|
}
|
|
937
943
|
|
|
938
|
-
/**
|
|
939
|
-
* Add all referenced shape names to the refSet meant to be used as a callback to visitSchemaProperties
|
|
940
|
-
*/
|
|
941
|
-
export function collectReferencedShapeNames(context, shapeNames) {
|
|
942
|
-
const addRef = refItem => {
|
|
943
|
-
shapeNames.add(refItemToNamespacedShapeName(refItem));
|
|
944
|
-
};
|
|
945
|
-
const collect = schema => {
|
|
946
|
-
const args = schema['@args'];
|
|
947
|
-
if (args && isObject(args) && isObjectSchema(args)) {
|
|
948
|
-
Object.values(args.properties).forEach(collect);
|
|
949
|
-
}
|
|
950
|
-
const argsRefItem = getArgsReference(context, schema);
|
|
951
|
-
if (argsRefItem) {
|
|
952
|
-
addRef(argsRefItem);
|
|
953
|
-
}
|
|
954
|
-
const refItem = getRefOrItemsRef(context, schema);
|
|
955
|
-
if (refItem) {
|
|
956
|
-
addRef(refItem);
|
|
957
|
-
}
|
|
958
|
-
getOneOfRefs(context, schema).forEach(oneOfRef => {
|
|
959
|
-
addRef(oneOfRef);
|
|
960
|
-
});
|
|
961
|
-
};
|
|
962
|
-
return collect;
|
|
963
|
-
}
|
|
964
|
-
|
|
965
944
|
/**
|
|
966
945
|
* Creates a schema property list chainable fn, allowing you to manipulate and
|
|
967
946
|
* iterate the properties in a schema.
|
package/es/validate.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@takeshape/schema",
|
|
3
|
-
"version": "10.
|
|
3
|
+
"version": "10.49.13",
|
|
4
4
|
"description": "TakeShape Schema",
|
|
5
5
|
"homepage": "https://www.takeshape.io",
|
|
6
6
|
"repository": {
|
|
@@ -28,9 +28,9 @@
|
|
|
28
28
|
"p-reduce": "^2.1.0",
|
|
29
29
|
"semver": "^7.3.2",
|
|
30
30
|
"tiny-invariant": "^1.2.0",
|
|
31
|
-
"@takeshape/
|
|
32
|
-
"@takeshape/
|
|
33
|
-
"@takeshape/
|
|
31
|
+
"@takeshape/json-schema": "10.49.13",
|
|
32
|
+
"@takeshape/util": "10.49.13",
|
|
33
|
+
"@takeshape/errors": "10.49.13"
|
|
34
34
|
},
|
|
35
35
|
"devDependencies": {
|
|
36
36
|
"@takeshape/json-schema-to-typescript": "^11.0.0",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"meow": "^9.0.0",
|
|
47
47
|
"p-map": "^5.0.0",
|
|
48
48
|
"shortid": "^2.2.15",
|
|
49
|
-
"@takeshape/infra": "10.
|
|
49
|
+
"@takeshape/infra": "10.49.13"
|
|
50
50
|
},
|
|
51
51
|
"engines": {
|
|
52
52
|
"node": ">=18"
|