@squiz/dx-json-schema-lib 1.21.1-alpha.2 → 1.21.1-alpha.20

Sign up to get free protection for your applications and to get access to all the features.
Files changed (87) hide show
  1. package/.npm/_logs/2023-03-16T10_16_41_384Z-debug-0.log +37 -0
  2. package/lib/JsonValidationService.d.ts +1 -1
  3. package/lib/JsonValidationService.js +23 -5
  4. package/lib/JsonValidationService.js.map +1 -1
  5. package/lib/JsonValidationService.spec.js +469 -426
  6. package/lib/JsonValidationService.spec.js.map +1 -1
  7. package/lib/index.d.ts +6 -1
  8. package/lib/index.js +6 -1
  9. package/lib/index.js.map +1 -1
  10. package/lib/jsonTypeResolution/{arbitraryTypeResolution.d.ts → TypeResolver.d.ts} +7 -12
  11. package/lib/jsonTypeResolution/{arbitraryTypeResolution.js → TypeResolver.js} +17 -17
  12. package/lib/jsonTypeResolution/TypeResolver.js.map +1 -0
  13. package/lib/jsonTypeResolution/{arbitraryTypeResolution.spec.js → TypeResolver.spec.js} +12 -39
  14. package/lib/jsonTypeResolution/TypeResolver.spec.js.map +1 -0
  15. package/lib/jsonTypeResolution/TypeResolverBuilder.d.ts +12 -0
  16. package/lib/jsonTypeResolution/TypeResolverBuilder.js +32 -0
  17. package/lib/jsonTypeResolution/TypeResolverBuilder.js.map +1 -0
  18. package/lib/manifest/v1/DxContentMetaSchema.json +117 -2
  19. package/lib/manifest/v1/MatrixAssetSchema.json +390 -0
  20. package/lib/manifest/v1/__test__/schemas/inputStringWithFormat.json +29 -0
  21. package/lib/manifest/v1/subSchemas.d.ts +2 -1
  22. package/lib/manifest/v1/subSchemas.js +3 -1
  23. package/lib/manifest/v1/subSchemas.js.map +1 -1
  24. package/lib/manifest/v1/v1.d.ts +405 -4
  25. package/lib/manifest/v1/v1.json +48 -0
  26. package/lib/primitiveTypes/FormattedText.d.ts +8 -0
  27. package/lib/primitiveTypes/FormattedText.js +21 -0
  28. package/lib/primitiveTypes/FormattedText.js.map +1 -0
  29. package/lib/primitiveTypes/SquizImage.d.ts +26 -0
  30. package/lib/primitiveTypes/SquizImage.js +105 -0
  31. package/lib/primitiveTypes/SquizImage.js.map +1 -0
  32. package/lib/primitiveTypes/index.d.ts +2 -0
  33. package/lib/primitiveTypes/index.js +19 -0
  34. package/lib/primitiveTypes/index.js.map +1 -0
  35. package/lib/resolvableTypes/MatrixAsset.d.ts +9 -0
  36. package/lib/resolvableTypes/MatrixAsset.js +21 -0
  37. package/lib/resolvableTypes/MatrixAsset.js.map +1 -0
  38. package/lib/resolvableTypes/index.d.ts +1 -0
  39. package/lib/resolvableTypes/index.js +18 -0
  40. package/lib/resolvableTypes/index.js.map +1 -0
  41. package/lib/validators/customFormatValidators.d.ts +2 -0
  42. package/lib/validators/customFormatValidators.js +14 -0
  43. package/lib/validators/customFormatValidators.js.map +1 -0
  44. package/lib/validators/utils/matrixAssetValidator.d.ts +2 -0
  45. package/lib/validators/utils/matrixAssetValidator.js +11 -0
  46. package/lib/validators/utils/matrixAssetValidator.js.map +1 -0
  47. package/lib/validators/utils/matrixAssetValidator.spec.d.ts +1 -0
  48. package/lib/validators/utils/matrixAssetValidator.spec.js +43 -0
  49. package/lib/validators/utils/matrixAssetValidator.spec.js.map +1 -0
  50. package/package.json +5 -4
  51. package/src/JsonValidationService.spec.ts +596 -533
  52. package/src/JsonValidationService.ts +28 -10
  53. package/src/index.ts +8 -1
  54. package/src/jsonTypeResolution/{arbitraryTypeResolution.spec.ts → TypeResolver.spec.ts} +23 -70
  55. package/src/jsonTypeResolution/{arbitraryTypeResolution.ts → TypeResolver.ts} +27 -23
  56. package/src/jsonTypeResolution/TypeResolverBuilder.ts +43 -0
  57. package/src/manifest/v1/DxContentMetaSchema.json +117 -2
  58. package/src/manifest/v1/MatrixAssetSchema.json +391 -0
  59. package/src/manifest/v1/__test__/schemas/inputStringWithFormat.json +29 -0
  60. package/src/manifest/v1/subSchemas.ts +2 -1
  61. package/src/manifest/v1/v1.json +48 -0
  62. package/src/manifest/v1/v1.ts +657 -6
  63. package/src/primitiveTypes/FormattedText.ts +24 -0
  64. package/src/primitiveTypes/SquizImage.ts +128 -0
  65. package/src/primitiveTypes/index.ts +2 -0
  66. package/src/resolvableTypes/MatrixAsset.ts +24 -0
  67. package/src/resolvableTypes/index.ts +1 -0
  68. package/src/validators/customFormatValidators.ts +15 -0
  69. package/src/validators/utils/matrixAssetValidator.spec.ts +49 -0
  70. package/src/validators/utils/matrixAssetValidator.ts +8 -0
  71. package/tsconfig.tsbuildinfo +1 -1
  72. package/.npm/_logs/2023-03-02T03_26_09_372Z-debug-0.log +0 -39
  73. package/lib/jsonTypeResolution/arbitraryTypeResolution.js.map +0 -1
  74. package/lib/jsonTypeResolution/arbitraryTypeResolution.spec.js.map +0 -1
  75. package/lib/jsonTypeResolution/index.d.ts +0 -76
  76. package/lib/jsonTypeResolution/index.js +0 -35
  77. package/lib/jsonTypeResolution/index.js.map +0 -1
  78. package/lib/jsonTypeResolution/primitiveTypes.d.ts +0 -10
  79. package/lib/jsonTypeResolution/primitiveTypes.js +0 -27
  80. package/lib/jsonTypeResolution/primitiveTypes.js.map +0 -1
  81. package/lib/jsonTypeResolution/resolvableTypes.d.ts +0 -12
  82. package/lib/jsonTypeResolution/resolvableTypes.js +0 -30
  83. package/lib/jsonTypeResolution/resolvableTypes.js.map +0 -1
  84. package/src/jsonTypeResolution/index.ts +0 -16
  85. package/src/jsonTypeResolution/primitiveTypes.ts +0 -32
  86. package/src/jsonTypeResolution/resolvableTypes.ts +0 -37
  87. /package/lib/jsonTypeResolution/{arbitraryTypeResolution.spec.d.ts → TypeResolver.spec.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"JsonValidationService.spec.js","sourceRoot":"","sources":["../src/JsonValidationService.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JsonValidationService.spec.js","sourceRoot":"","sources":["../src/JsonValidationService.spec.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -7,4 +7,9 @@ export * as SUB_SCHEMAS from './manifest/v1/subSchemas';
7
7
  export * from './JsonValidationService';
8
8
  export * from './errors/SchemaValidationError';
9
9
  export * from './errors/JsonResolutionError';
10
- export * from './jsonTypeResolution';
10
+ export * from './validators/utils/matrixAssetValidator';
11
+ export * from './validators/utils/matrixAssetValidator';
12
+ export * from './jsonTypeResolution/TypeResolver';
13
+ export * from './jsonTypeResolution/TypeResolverBuilder';
14
+ export * from './primitiveTypes';
15
+ export * from './resolvableTypes';
package/lib/index.js CHANGED
@@ -36,5 +36,10 @@ exports.SUB_SCHEMAS = __importStar(require("./manifest/v1/subSchemas"));
36
36
  __exportStar(require("./JsonValidationService"), exports);
37
37
  __exportStar(require("./errors/SchemaValidationError"), exports);
38
38
  __exportStar(require("./errors/JsonResolutionError"), exports);
39
- __exportStar(require("./jsonTypeResolution"), exports);
39
+ __exportStar(require("./validators/utils/matrixAssetValidator"), exports);
40
+ __exportStar(require("./validators/utils/matrixAssetValidator"), exports);
41
+ __exportStar(require("./jsonTypeResolution/TypeResolver"), exports);
42
+ __exportStar(require("./jsonTypeResolution/TypeResolverBuilder"), exports);
43
+ __exportStar(require("./primitiveTypes"), exports);
44
+ __exportStar(require("./resolvableTypes"), exports);
40
45
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gFAAgE;AAChE,kFAAkE;AAElE,iGAAiF;AACjF,mGAAmF;AACnF,gFAA8D;AAE9D,wEAAwD;AAExD,0DAAwC;AACxC,iEAA+C;AAC/C,+DAA6C;AAE7C,uDAAqC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gFAAgE;AAChE,kFAAkE;AAElE,iGAAiF;AACjF,mGAAmF;AACnF,gFAA8D;AAE9D,wEAAwD;AAExD,0DAAwC;AACxC,iEAA+C;AAC/C,+DAA6C;AAE7C,0EAAwD;AAExD,0EAAwD;AAExD,oEAAkD;AAClD,2EAAyD;AACzD,mDAAiC;AACjC,oDAAkC"}
@@ -26,36 +26,31 @@ export type AnyPrimitiveType = PrimitiveType<string, any>;
26
26
  export type ResolvableType<TITLE extends string, SHAPE> = t.Brand<SchemaWithShape<TITLE, SHAPE>, 'resolvable'>;
27
27
  export declare function ResolvableType<SHAPE, TITLE extends string>(jsonSchema: JsonResolutionSchema<TITLE>): ResolvableType<TITLE, SHAPE>;
28
28
  export type AnyResolvableType = ResolvableType<string, any>;
29
- type Resolver<INPUT, OUTPUT> = (input: INPUT) => MaybePromise<OUTPUT>;
29
+ export type Resolver<INPUT, OUTPUT> = (input: INPUT) => MaybePromise<OUTPUT>;
30
30
  /**
31
31
  * A JSON Type Resolver class which stores the primitive and resolvable JSON Schema types and their resolvers
32
32
  *
33
33
  * No serious logic is required here. The class should only provide data access methods and type safety
34
34
  */
35
35
  export declare class TypeResolver<P extends AnyPrimitiveType, R extends AnyResolvableType> {
36
- private primitives;
37
- private resolvables;
38
36
  resolvers: {
39
37
  [PT in P as PT['title']]?: {
40
38
  [RT in R as RT['title']]?: Resolver<RT['__shape__'], PT['__shape__']>;
41
39
  };
42
40
  };
43
- constructor(primitives: {
44
- [K in P as P['title']]: K;
45
- }, resolvables: {
46
- [K in R as R['title']]: K;
47
- }, resolvers: {
41
+ private primitives;
42
+ private resolvables;
43
+ constructor(primitives: P[], resolvables?: R[], resolvers?: {
48
44
  [PT in P as PT['title']]?: {
49
45
  [RT in R as RT['title']]?: Resolver<RT['__shape__'], PT['__shape__']>;
50
46
  };
51
47
  });
48
+ get validationSchemaDefinitions(): (P | R)[];
52
49
  isPrimitiveType(type: string): type is P['title'];
53
50
  isPrimitiveSchema(schema: JSONSchema): schema is P;
54
51
  isResolvableSchema(schema: JSONSchema): schema is R;
55
- getValidationSchemaForPrimitive(type: keyof typeof this.primitives): {
56
- oneOf: ({ [K in P as P["title"]]: K; }[P["title"]] | { [K_1 in R as R["title"]]: K_1; }[Extract<keyof { [PT in P as PT["title"]]?: { [RT in R as RT["title"]]?: Resolver<RT["__shape__"], PT["__shape__"]> | undefined; } | undefined; }[P["title"]], string>])[];
57
- };
52
+ getValidationSchemaForPrimitive(type: P['title']): JsonResolutionSchema<string>[];
58
53
  private fetchResolvableSchemasForPrimitive;
59
- tryGetResolver<PS extends P, RS extends R>(primitiveSchema: PS, resolvableSchema: RS): Resolver<RS['__shape__'], PS['__shape__']> | undefined;
54
+ tryGetResolver(primitiveSchemaTitle: string, resolvableSchema: R): Resolver<R['__shape__'], P['__shape__']> | undefined;
60
55
  }
61
56
  export {};
@@ -15,47 +15,47 @@ exports.ResolvableType = ResolvableType;
15
15
  * No serious logic is required here. The class should only provide data access methods and type safety
16
16
  */
17
17
  class TypeResolver {
18
- constructor(primitives, resolvables, resolvers) {
19
- this.primitives = primitives;
20
- this.resolvables = resolvables;
18
+ constructor(primitives, resolvables = [], resolvers = {}) {
21
19
  this.resolvers = resolvers;
20
+ this.primitives = new Map(primitives.map((p) => [p.title, p]));
21
+ this.resolvables = new Map(resolvables.map((r) => [r.title, r]));
22
22
  for (const [primitiveKey, primitiveResolvers] of Object.entries(resolvers)) {
23
- if (!(primitiveKey in primitives)) {
23
+ if (!this.primitives.has(primitiveKey)) {
24
24
  throw new Error('Resolver keys must match a primitive schema');
25
25
  }
26
- if (!Object.keys(primitiveResolvers).every((k) => k in resolvables)) {
26
+ if (!Object.keys(primitiveResolvers).every((k) => this.resolvables.has(k))) {
27
27
  throw new Error('Primitive resolvers keys must match a resolvable schema');
28
28
  }
29
29
  }
30
30
  }
31
+ get validationSchemaDefinitions() {
32
+ return [...this.primitives.values(), ...this.resolvables.values()];
33
+ }
31
34
  isPrimitiveType(type) {
32
- return type in this.primitives;
35
+ return this.primitives.has(type);
33
36
  }
34
37
  isPrimitiveSchema(schema) {
35
38
  return this.isPrimitiveType(schema.title);
36
39
  }
37
40
  isResolvableSchema(schema) {
38
- return schema.title in this.resolvables;
41
+ return this.resolvables.has(schema.title);
39
42
  }
40
43
  getValidationSchemaForPrimitive(type) {
41
- const primitiveSchema = this.primitives[type];
42
- const validSchemas = [primitiveSchema, ...this.fetchResolvableSchemasForPrimitive(type)];
43
- return {
44
- oneOf: validSchemas,
45
- };
44
+ const primitiveSchema = this.primitives.get(type);
45
+ return [primitiveSchema, ...this.fetchResolvableSchemasForPrimitive(type)];
46
46
  }
47
47
  *fetchResolvableSchemasForPrimitive(type) {
48
48
  for (const resolverKey in this.resolvers[type]) {
49
- yield this.resolvables[resolverKey];
49
+ yield this.resolvables.get(resolverKey);
50
50
  }
51
51
  }
52
- tryGetResolver(primitiveSchema, resolvableSchema) {
52
+ tryGetResolver(primitiveSchemaTitle, resolvableSchema) {
53
53
  var _a;
54
- if (!(primitiveSchema.title in this.resolvers))
54
+ if (!(primitiveSchemaTitle in this.resolvers))
55
55
  return;
56
56
  // Sometimes typescript can be insanely annoying
57
- return (_a = this.resolvers[primitiveSchema.title]) === null || _a === void 0 ? void 0 : _a[resolvableSchema.title];
57
+ return (_a = this.resolvers[primitiveSchemaTitle]) === null || _a === void 0 ? void 0 : _a[resolvableSchema.title];
58
58
  }
59
59
  }
60
60
  exports.TypeResolver = TypeResolver;
61
- //# sourceMappingURL=arbitraryTypeResolution.js.map
61
+ //# sourceMappingURL=TypeResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TypeResolver.js","sourceRoot":"","sources":["../../src/jsonTypeResolution/TypeResolver.ts"],"names":[],"mappings":";;;AAiBA,SAAgB,aAAa,CAC3B,UAAuC;IAEvC,OAAO,UAAyC,CAAC;AACnD,CAAC;AAJD,sCAIC;AASD,SAAgB,cAAc,CAC5B,UAAuC;IAEvC,OAAO,UAA0C,CAAC;AACpD,CAAC;AAJD,wCAIC;AAKD;;;;GAIG;AACH,MAAa,YAAY;IAGvB,YACE,UAAe,EACf,cAAmB,EAAE,EACd,YAIH,EAAE;QAJC,cAAS,GAAT,SAAS,CAIV;QAEN,IAAI,CAAC,UAAU,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/D,IAAI,CAAC,WAAW,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACjE,KAAK,MAAM,CAAC,YAAY,EAAE,kBAAkB,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAoC,EAAE;YAC7G,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;gBACtC,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;aAChE;YACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC1E,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;aAC5E;SACF;IACH,CAAC;IAED,IAAI,2BAA2B;QAC7B,OAAO,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,eAAe,CAAC,IAAY;QAC1B,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,iBAAiB,CAAC,MAAkB;QAClC,OAAO,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,kBAAkB,CAAC,MAAkB;QACnC,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5C,CAAC;IAED,+BAA+B,CAAC,IAAgB;QAC9C,MAAM,eAAe,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAiC,CAAC;QAClF,OAAO,CAAC,eAAe,EAAE,GAAG,IAAI,CAAC,kCAAkC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC7E,CAAC;IAEO,CAAC,kCAAkC,CAAC,IAAgB;QAC1D,KAAK,MAAM,WAAW,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YAC9C,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAiC,CAAC;SACzE;IACH,CAAC;IAED,cAAc,CACZ,oBAA4B,EAC5B,gBAAmB;;QAEnB,IAAI,CAAC,CAAC,oBAAoB,IAAI,IAAI,CAAC,SAAS,CAAC;YAAE,OAAO;QACtD,gDAAgD;QAChD,OAAO,MAAC,IAAI,CAAC,SAAS,CAAC,oBAAmD,CAAS,0CAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAChH,CAAC;CACF;AA3DD,oCA2DC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const arbitraryTypeResolution_1 = require("./arbitraryTypeResolution");
3
+ const TypeResolver_1 = require("./TypeResolver");
4
4
  const defaultSchema = {
5
5
  type: 'object',
6
6
  properties: {
@@ -11,13 +11,13 @@ const defaultSchema = {
11
11
  required: ['myProperty'],
12
12
  };
13
13
  function primitiveTypeFixture(title, schema = defaultSchema) {
14
- return (0, arbitraryTypeResolution_1.PrimitiveType)({
14
+ return (0, TypeResolver_1.PrimitiveType)({
15
15
  ...schema,
16
16
  title,
17
17
  });
18
18
  }
19
19
  function resolvableTypeFixture(title, schema = defaultSchema) {
20
- return (0, arbitraryTypeResolution_1.ResolvableType)({
20
+ return (0, TypeResolver_1.ResolvableType)({
21
21
  ...schema,
22
22
  title,
23
23
  });
@@ -26,56 +26,33 @@ describe('getValidationSchemaForPrimitive', () => {
26
26
  it('should return only the primitive schema when no resolvers are defined', () => {
27
27
  const primitiveType = primitiveTypeFixture('MyPrimitive');
28
28
  const resolvableType = resolvableTypeFixture('MyResolvable');
29
- const resolver = new arbitraryTypeResolution_1.TypeResolver({
30
- MyPrimitive: primitiveType,
31
- }, {
32
- MyResolvable: resolvableType,
33
- }, {});
34
- expect(resolver.getValidationSchemaForPrimitive('MyPrimitive')).toEqual({
35
- oneOf: [primitiveType],
36
- });
29
+ const resolver = new TypeResolver_1.TypeResolver([primitiveType], [resolvableType], {});
30
+ expect(resolver.getValidationSchemaForPrimitive('MyPrimitive')).toEqual([primitiveType]);
37
31
  });
38
32
  it('should return the primitive schema and the resolvable schema when a resolver is defined', () => {
39
33
  const primitiveType = primitiveTypeFixture('MyPrimitive');
40
34
  const resolvableType = resolvableTypeFixture('MyResolvable');
41
- const resolver = new arbitraryTypeResolution_1.TypeResolver({
42
- MyPrimitive: primitiveType,
43
- }, {
44
- MyResolvable: resolvableType,
45
- }, {
35
+ const resolver = new TypeResolver_1.TypeResolver([primitiveType], [resolvableType], {
46
36
  MyPrimitive: {
47
37
  MyResolvable: () => null,
48
38
  },
49
39
  });
50
- expect(resolver.getValidationSchemaForPrimitive('MyPrimitive')).toEqual({
51
- oneOf: [primitiveType, resolvableType],
52
- });
40
+ expect(resolver.getValidationSchemaForPrimitive('MyPrimitive')).toEqual([primitiveType, resolvableType]);
53
41
  });
54
42
  it('should return the primitive schema and the resolvable schema when a resolver is defined for a different primitive', () => {
55
43
  const primitiveType = primitiveTypeFixture('MyPrimitive');
56
44
  const resolvableType = resolvableTypeFixture('MyResolvable');
57
- const resolver = new arbitraryTypeResolution_1.TypeResolver({
58
- MyPrimitive: primitiveType,
59
- MyOtherPrimitive: primitiveTypeFixture('MyOtherPrimitive'),
60
- }, {
61
- MyResolvable: resolvableType,
62
- }, {
45
+ const resolver = new TypeResolver_1.TypeResolver([primitiveType, primitiveTypeFixture('MyOtherPrimitive')], [resolvableType], {
63
46
  MyOtherPrimitive: {
64
47
  MyResolvable: () => null,
65
48
  },
66
49
  });
67
- expect(resolver.getValidationSchemaForPrimitive('MyPrimitive')).toEqual({
68
- oneOf: [primitiveType],
69
- });
50
+ expect(resolver.getValidationSchemaForPrimitive('MyPrimitive')).toEqual([primitiveType]);
70
51
  });
71
52
  it('should error when resolver map contains a key not listed in resolver schemas', () => {
72
53
  const primitiveType = primitiveTypeFixture('MyPrimitive');
73
54
  const resolvableType = resolvableTypeFixture('MyResolvable');
74
- expect(() => new arbitraryTypeResolution_1.TypeResolver({
75
- MyPrimitive: primitiveType,
76
- }, {
77
- MyResolvable: resolvableType,
78
- }, {
55
+ expect(() => new TypeResolver_1.TypeResolver([primitiveType], [resolvableType], {
79
56
  MyPrimitive: {
80
57
  // @ts-expect-error - this is not a valid resolvable type
81
58
  MyOtherResolvable: () => null,
@@ -85,11 +62,7 @@ describe('getValidationSchemaForPrimitive', () => {
85
62
  it('should error when resolver map contains a key not listed in primitive schemas', () => {
86
63
  const primitiveType = primitiveTypeFixture('MyPrimitive');
87
64
  const resolvableType = resolvableTypeFixture('MyResolvable');
88
- expect(() => new arbitraryTypeResolution_1.TypeResolver({
89
- MyPrimitive: primitiveType,
90
- }, {
91
- MyResolvable: resolvableType,
92
- }, {
65
+ expect(() => new TypeResolver_1.TypeResolver([primitiveType], [resolvableType], {
93
66
  // @ts-expect-error - this is not a valid primitive type
94
67
  MyOtherPrimitive: {
95
68
  MyResolvable: () => null,
@@ -97,4 +70,4 @@ describe('getValidationSchemaForPrimitive', () => {
97
70
  })).toThrowError();
98
71
  });
99
72
  });
100
- //# sourceMappingURL=arbitraryTypeResolution.spec.js.map
73
+ //# sourceMappingURL=TypeResolver.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TypeResolver.spec.js","sourceRoot":"","sources":["../../src/jsonTypeResolution/TypeResolver.spec.ts"],"names":[],"mappings":";;AACA,iDAA6E;AAE7E,MAAM,aAAa,GAAe;IAChC,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;SACf;KACF;IACD,QAAQ,EAAE,CAAC,YAAY,CAAC;CACzB,CAAC;AACF,SAAS,oBAAoB,CAAmB,KAAQ,EAAE,SAAqB,aAAa;IAC1F,OAAO,IAAA,4BAAa,EAAC;QACnB,GAAG,MAAM;QACT,KAAK;KACN,CAAC,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAAmB,KAAQ,EAAE,SAAqB,aAAa;IAC3F,OAAO,IAAA,6BAAc,EAAC;QACpB,GAAG,MAAM;QACT,KAAK;KACN,CAAC,CAAC;AACL,CAAC;AAED,QAAQ,CAAC,iCAAiC,EAAE,GAAG,EAAE;IAC/C,EAAE,CAAC,uEAAuE,EAAE,GAAG,EAAE;QAC/E,MAAM,aAAa,GAAG,oBAAoB,CAAC,aAAa,CAAC,CAAC;QAC1D,MAAM,cAAc,GAAG,qBAAqB,CAAC,cAAc,CAAC,CAAC;QAC7D,MAAM,QAAQ,GAAG,IAAI,2BAAY,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE,EAAE,CAAC,CAAC;QAEzE,MAAM,CAAC,QAAQ,CAAC,+BAA+B,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;IAC3F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yFAAyF,EAAE,GAAG,EAAE;QACjG,MAAM,aAAa,GAAG,oBAAoB,CAAC,aAAa,CAAC,CAAC;QAC1D,MAAM,cAAc,GAAG,qBAAqB,CAAC,cAAc,CAAC,CAAC;QAC7D,MAAM,QAAQ,GAAG,IAAI,2BAAY,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE;YACnE,WAAW,EAAE;gBACX,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI;aACzB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC,+BAA+B,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC,CAAC;IAC3G,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mHAAmH,EAAE,GAAG,EAAE;QAC3H,MAAM,aAAa,GAAG,oBAAoB,CAAC,aAAa,CAAC,CAAC;QAC1D,MAAM,cAAc,GAAG,qBAAqB,CAAC,cAAc,CAAC,CAAC;QAC7D,MAAM,QAAQ,GAAG,IAAI,2BAAY,CAAC,CAAC,aAAa,EAAE,oBAAoB,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE;YAC7G,gBAAgB,EAAE;gBAChB,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI;aACzB;SACF,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC,+BAA+B,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;IAC3F,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8EAA8E,EAAE,GAAG,EAAE;QACtF,MAAM,aAAa,GAAG,oBAAoB,CAAC,aAAa,CAAC,CAAC;QAC1D,MAAM,cAAc,GAAG,qBAAqB,CAAC,cAAc,CAAC,CAAC;QAC7D,MAAM,CACJ,GAAG,EAAE,CACH,IAAI,2BAAY,CAA8C,CAAC,aAAa,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE;YAC/F,WAAW,EAAE;gBACX,yDAAyD;gBACzD,iBAAiB,EAAE,GAAG,EAAE,CAAC,IAAI;aAC9B;SACF,CAAC,CACL,CAAC,YAAY,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+EAA+E,EAAE,GAAG,EAAE;QACvF,MAAM,aAAa,GAAG,oBAAoB,CAAC,aAAa,CAAC,CAAC;QAC1D,MAAM,cAAc,GAAG,qBAAqB,CAAC,cAAc,CAAC,CAAC;QAC7D,MAAM,CACJ,GAAG,EAAE,CACH,IAAI,2BAAY,CAA8C,CAAC,aAAa,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE;YAC/F,wDAAwD;YACxD,gBAAgB,EAAE;gBAChB,YAAY,EAAE,GAAG,EAAE,CAAC,IAAI;aACzB;SACF,CAAC,CACL,CAAC,YAAY,EAAE,CAAC;IACnB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { AnyPrimitiveType, AnyResolvableType, Resolver, TypeResolver } from './TypeResolver';
2
+ type TypeResolverFunction<P extends AnyPrimitiveType, R extends AnyResolvableType> = Resolver<R['__shape__'], P['__shape__']>;
3
+ export declare class TypeResolverBuilder {
4
+ private primitives;
5
+ private resolvables;
6
+ private resolverMap;
7
+ static new(): TypeResolverBuilder;
8
+ addPrimitive<P extends AnyPrimitiveType>(primitive: P): this;
9
+ addResolver<P extends AnyPrimitiveType, R extends AnyResolvableType>(primitive: P, resolvable: R, resolver: TypeResolverFunction<P, R>): this;
10
+ build(): TypeResolver<AnyPrimitiveType, AnyResolvableType>;
11
+ }
12
+ export {};
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TypeResolverBuilder = void 0;
4
+ const TypeResolver_1 = require("./TypeResolver");
5
+ class TypeResolverBuilder {
6
+ constructor() {
7
+ this.primitives = new Set();
8
+ this.resolvables = new Set();
9
+ this.resolverMap = {};
10
+ }
11
+ static new() {
12
+ return new TypeResolverBuilder();
13
+ }
14
+ addPrimitive(primitive) {
15
+ this.primitives.add(primitive);
16
+ return this;
17
+ }
18
+ addResolver(primitive, resolvable, resolver) {
19
+ var _a;
20
+ var _b, _c;
21
+ this.primitives.add(primitive);
22
+ this.resolvables.add(resolvable);
23
+ (_a = (_b = this.resolverMap)[_c = primitive.title]) !== null && _a !== void 0 ? _a : (_b[_c] = {});
24
+ this.resolverMap[primitive.title][resolvable.title] = resolver;
25
+ return this;
26
+ }
27
+ build() {
28
+ return new TypeResolver_1.TypeResolver(Array.from(this.primitives.values()), Array.from(this.resolvables.values()), this.resolverMap);
29
+ }
30
+ }
31
+ exports.TypeResolverBuilder = TypeResolverBuilder;
32
+ //# sourceMappingURL=TypeResolverBuilder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TypeResolverBuilder.js","sourceRoot":"","sources":["../../src/jsonTypeResolution/TypeResolverBuilder.ts"],"names":[],"mappings":";;;AAAA,iDAA6F;AAO7F,MAAa,mBAAmB;IAAhC;QACU,eAAU,GAAG,IAAI,GAAG,EAAoB,CAAC;QACzC,gBAAW,GAAG,IAAI,GAAG,EAAqB,CAAC;QAC3C,gBAAW,GAA8F,EAAE,CAAC;IAgCtH,CAAC;IA/BC,MAAM,CAAC,GAAG;QACR,OAAO,IAAI,mBAAmB,EAAE,CAAC;IACnC,CAAC;IAED,YAAY,CAA6B,SAAY;QACnD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,WAAW,CACT,SAAY,EACZ,UAAa,EACb,QAAoC;;;QAEpC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC/B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACjC,YAAA,IAAI,CAAC,WAAW,OAAC,SAAS,CAAC,KAAK,8CAAM,EAAE,EAAC;QACzC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,QAGrD,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK;QACH,OAAO,IAAI,2BAAY,CACrB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EACpC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,EACrC,IAAI,CAAC,WAAW,CACjB,CAAC;IACJ,CAAC;CACF;AAnCD,kDAmCC"}
@@ -16,7 +16,7 @@
16
16
  "allOf": [{ "$ref": "#/definitions/nonNegativeInteger" }, { "default": 0 }]
17
17
  },
18
18
  "simpleTypes": {
19
- "enum": ["array", "boolean", "integer", "null", "number", "object", "string", "FormattedText"]
19
+ "enum": ["array", "boolean", "integer", "null", "number", "object", "string", "FormattedText", "SquizImage"]
20
20
  },
21
21
  "stringArray": {
22
22
  "type": "array",
@@ -140,7 +140,34 @@
140
140
  }
141
141
  ]
142
142
  },
143
- "format": { "type": "string" },
143
+ "format": {
144
+ "type": "string",
145
+ "enum": [
146
+ "date-time",
147
+ "email",
148
+ "hostname",
149
+ "ipv4",
150
+ "ipv6",
151
+ "json-pointer",
152
+ "matrix-asset-uri",
153
+ "multi-line",
154
+ "password",
155
+ "phone",
156
+ "regex",
157
+ "relative-json-pointer",
158
+ "uri-reference",
159
+ "uri-template",
160
+ "uri",
161
+ "uuid"
162
+ ]
163
+ },
164
+ "matrixAssetTypes": {
165
+ "type": "array",
166
+ "items": {
167
+ "type": "string",
168
+ "$ref": "#/matrixAssetEnum"
169
+ }
170
+ },
144
171
  "contentMediaType": { "type": "string" },
145
172
  "contentEncoding": { "type": "string" },
146
173
  "if": { "$ref": "#" },
@@ -161,5 +188,93 @@
161
188
  },
162
189
  "required": ["required"]
163
190
  }
191
+ },
192
+ "matrixAssetEnum": {
193
+ "enum": [
194
+ "audioFile",
195
+ "bodycopyContainer",
196
+ "bodycopyDiv",
197
+ "calendarEventsSearchPage",
198
+ "contentContainerTemplate",
199
+ "contentTypeMarkdown",
200
+ "contentTypeNestContent",
201
+ "contentTypeRawHtml",
202
+ "contentTypeSnippet",
203
+ "contentTypeWysiwyg",
204
+ "cssFileFolder",
205
+ "cssFile",
206
+ "customForm",
207
+ "dataRecord",
208
+ "designAreaAssetLineage",
209
+ "designAreaBody",
210
+ "designAreaMenuNormal",
211
+ "designAreaNestContent",
212
+ "designCssCustomisation",
213
+ "designCss",
214
+ "designCustomisation",
215
+ "designScss",
216
+ "design",
217
+ "docx",
218
+ "excelDoc",
219
+ "file",
220
+ "folder",
221
+ "gitBridge",
222
+ "googleAnalyticsConnector",
223
+ "googleAnalyticsView",
224
+ "image",
225
+ "jsFileFolder",
226
+ "jsFile",
227
+ "jsonWebToken",
228
+ "layoutManager",
229
+ "layout",
230
+ "link",
231
+ "metadataFieldDate",
232
+ "metadataFieldRelatedAsset",
233
+ "metadataFieldSelect",
234
+ "metadataFieldText",
235
+ "metadataFieldWysiwyg",
236
+ "metadataSchema",
237
+ "metadataSection",
238
+ "newsItem",
239
+ "oauthAccountManager",
240
+ "pageAccountManager",
241
+ "pageAssetListing",
242
+ "pageCalendarEventsSearch",
243
+ "pageCalendar",
244
+ "pagePasswordReset",
245
+ "pageRemoteContent",
246
+ "pageRestResourceJs",
247
+ "pageRestResourceOauthSession",
248
+ "pageRestResourceOauthTwoLegged",
249
+ "pageRestResource",
250
+ "pageSiteMap",
251
+ "pageStandard",
252
+ "paintLayoutBodycopy",
253
+ "paintLayoutPage",
254
+ "pdfFile",
255
+ "pdf",
256
+ "persona",
257
+ "powerpointDoc",
258
+ "pptx",
259
+ "redirectPage",
260
+ "regex",
261
+ "regularExpression",
262
+ "rtfFile",
263
+ "samlAccountManager",
264
+ "saml2Acs",
265
+ "saml2Sls",
266
+ "searchPage",
267
+ "site",
268
+ "textFile",
269
+ "TriggerTypes?",
270
+ "userGroup",
271
+ "wordDoc",
272
+ "workflowSchema",
273
+ "workflowStepCondition",
274
+ "workflowStep",
275
+ "workflowStream",
276
+ "xlsx",
277
+ "xmlFile"
278
+ ]
164
279
  }
165
280
  }