@maxclicks/utilities 1.12.1 → 1.14.0

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.
Files changed (57) hide show
  1. package/dist/helpers/haveSameContents.d.ts.map +1 -1
  2. package/dist/helpers/haveSameContents.js +4 -2
  3. package/dist/helpers/haveSameContents.js.map +1 -1
  4. package/dist/modules/primitives/definitions/Address.js +1 -1
  5. package/dist/modules/primitives/definitions/Address.js.map +1 -1
  6. package/dist/types/Json/Json.d.ts +5 -60
  7. package/dist/types/Json/Json.d.ts.map +1 -1
  8. package/dist/types/Json/Json.js +2 -9
  9. package/dist/types/Json/Json.js.map +1 -1
  10. package/dist/types/Json/JsonSchema/JsonSchema.d.ts +103 -0
  11. package/dist/types/Json/JsonSchema/JsonSchema.d.ts.map +1 -0
  12. package/dist/types/Json/JsonSchema/JsonSchema.js +95 -0
  13. package/dist/types/Json/JsonSchema/JsonSchema.js.map +1 -0
  14. package/dist/types/Json/JsonSchema/index.d.ts +2 -0
  15. package/dist/types/Json/JsonSchema/index.d.ts.map +1 -0
  16. package/dist/types/Json/JsonSchema/index.js +2 -0
  17. package/dist/types/Json/JsonSchema/index.js.map +1 -0
  18. package/dist/types/Json/JsonSchema/isJsonSchemaNullable.d.ts +5 -0
  19. package/dist/types/Json/JsonSchema/isJsonSchemaNullable.d.ts.map +1 -0
  20. package/dist/types/Json/JsonSchema/isJsonSchemaNullable.js +15 -0
  21. package/dist/types/Json/JsonSchema/isJsonSchemaNullable.js.map +1 -0
  22. package/dist/types/Json/JsonSchema/isJsonSchemaWiderThan.d.ts +28 -0
  23. package/dist/types/Json/JsonSchema/isJsonSchemaWiderThan.d.ts.map +1 -0
  24. package/dist/types/Json/JsonSchema/isJsonSchemaWiderThan.js +288 -0
  25. package/dist/types/Json/JsonSchema/isJsonSchemaWiderThan.js.map +1 -0
  26. package/dist/types/Json/JsonSchema/jsonSchemaNormalizer.d.ts +5 -0
  27. package/dist/types/Json/JsonSchema/jsonSchemaNormalizer.d.ts.map +1 -0
  28. package/dist/types/Json/JsonSchema/jsonSchemaNormalizer.js +134 -0
  29. package/dist/types/Json/JsonSchema/jsonSchemaNormalizer.js.map +1 -0
  30. package/dist/types/Json/JsonSchema/jsonSchemaNullable.d.ts +5 -0
  31. package/dist/types/Json/JsonSchema/jsonSchemaNullable.d.ts.map +1 -0
  32. package/dist/types/Json/JsonSchema/jsonSchemaNullable.js +31 -0
  33. package/dist/types/Json/JsonSchema/jsonSchemaNullable.js.map +1 -0
  34. package/dist/types/Json/jsonNormalizer.d.ts +1 -0
  35. package/dist/types/Json/jsonNormalizer.d.ts.map +1 -1
  36. package/dist/types/Json/jsonNormalizer.js.map +1 -1
  37. package/dist/types/Json/jsonNormalizerWithSchemaFactory.d.ts +3 -1
  38. package/dist/types/Json/jsonNormalizerWithSchemaFactory.d.ts.map +1 -1
  39. package/dist/types/Json/jsonNormalizerWithSchemaFactory.js +182 -149
  40. package/dist/types/Json/jsonNormalizerWithSchemaFactory.js.map +1 -1
  41. package/dist/types/Normalizer.d.ts +2 -2
  42. package/dist/types/Normalizer.d.ts.map +1 -1
  43. package/dist/types/Normalizer.js +9 -3
  44. package/dist/types/Normalizer.js.map +1 -1
  45. package/package.json +1 -1
  46. package/dist/types/Json/jsonSchemaNormalizer.d.ts +0 -3
  47. package/dist/types/Json/jsonSchemaNormalizer.d.ts.map +0 -1
  48. package/dist/types/Json/jsonSchemaNormalizer.js +0 -181
  49. package/dist/types/Json/jsonSchemaNormalizer.js.map +0 -1
  50. package/dist/types/Json/jsonSchemaSatisfies.d.ts +0 -12
  51. package/dist/types/Json/jsonSchemaSatisfies.d.ts.map +0 -1
  52. package/dist/types/Json/jsonSchemaSatisfies.js +0 -290
  53. package/dist/types/Json/jsonSchemaSatisfies.js.map +0 -1
  54. package/dist/types/Json/jsonSchemaSimplifiedSatisfies.d.ts +0 -4
  55. package/dist/types/Json/jsonSchemaSimplifiedSatisfies.d.ts.map +0 -1
  56. package/dist/types/Json/jsonSchemaSimplifiedSatisfies.js +0 -222
  57. package/dist/types/Json/jsonSchemaSimplifiedSatisfies.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"haveSameContents.d.ts","sourceRoot":"","sources":["../../src/helpers/haveSameContents.ts"],"names":[],"mappings":"AAGA,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,GAAG,OAAO,CAiCjE"}
1
+ {"version":3,"file":"haveSameContents.d.ts","sourceRoot":"","sources":["../../src/helpers/haveSameContents.ts"],"names":[],"mappings":"AAGA,kFAAkF;AAClF,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,GAAG,OAAO,CAmCjE"}
@@ -26,8 +26,10 @@ export function haveSameContents(first, second) {
26
26
  return (!!second &&
27
27
  typeof second === 'object' &&
28
28
  !arrayHelpers.isArray(second) &&
29
- objectHelpers.entries(first).every(([key, value]) => key in second && haveSameContents(value, second[key])) &&
30
- objectHelpers.keys(second).every(key => key in first));
29
+ objectHelpers
30
+ .entries(first)
31
+ .every(([key, value]) => value === undefined || (key in second && haveSameContents(value, second[key]))) &&
32
+ objectHelpers.entries(second).every(([key, value]) => value === undefined || key in first));
31
33
  }
32
34
  }
33
35
  //# sourceMappingURL=haveSameContents.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"haveSameContents.js","sourceRoot":"","sources":["../../src/helpers/haveSameContents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAEtD,kFAAkF;AAClF,MAAM,UAAU,gBAAgB,CAAC,KAAU,EAAE,MAAW;IACtD,QAAQ,OAAO,KAAK,EAAE,CAAC;QACrB,KAAK,QAAQ,CAAC;QACd,KAAK,QAAQ,CAAC;QACd,KAAK,SAAS,CAAC;QACf,KAAK,QAAQ,CAAC;QACd,KAAK,WAAW,CAAC;QACjB,KAAK,UAAU;YACb,OAAO,KAAK,KAAK,MAAM,CAAA;QAEzB,KAAK,QAAQ;YACX,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAA;QAEtE,KAAK,QAAQ;YACX,IAAI,CAAC,KAAK;gBAAE,OAAO,KAAK,KAAK,MAAM,CAAA;YACnC,IAAI,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC;gBAC7B,OAAO,CACL,CAAC,CAAC,MAAM;oBACR,OAAO,MAAM,KAAK,QAAQ;oBAC1B,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC;oBAC5B,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;oBAC9B,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CACpE,CAAA;YACH,IAAI,KAAK,YAAY,IAAI,IAAI,MAAM,YAAY,IAAI;gBACjD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,KAAK,MAAM,CAAC,OAAO,EAAE,CAAA;YAClH,OAAO,CACL,CAAC,CAAC,MAAM;gBACR,OAAO,MAAM,KAAK,QAAQ;gBAC1B,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC7B,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,MAAM,IAAI,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC3G,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,KAAK,CAAC,CACtD,CAAA;IACL,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"haveSameContents.js","sourceRoot":"","sources":["../../src/helpers/haveSameContents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AAEtD,kFAAkF;AAClF,MAAM,UAAU,gBAAgB,CAAC,KAAU,EAAE,MAAW;IACtD,QAAQ,OAAO,KAAK,EAAE,CAAC;QACrB,KAAK,QAAQ,CAAC;QACd,KAAK,QAAQ,CAAC;QACd,KAAK,SAAS,CAAC;QACf,KAAK,QAAQ,CAAC;QACd,KAAK,WAAW,CAAC;QACjB,KAAK,UAAU;YACb,OAAO,KAAK,KAAK,MAAM,CAAA;QAEzB,KAAK,QAAQ;YACX,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,CAAA;QAEtE,KAAK,QAAQ;YACX,IAAI,CAAC,KAAK;gBAAE,OAAO,KAAK,KAAK,MAAM,CAAA;YACnC,IAAI,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC;gBAC7B,OAAO,CACL,CAAC,CAAC,MAAM;oBACR,OAAO,MAAM,KAAK,QAAQ;oBAC1B,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC;oBAC5B,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;oBAC9B,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CACpE,CAAA;YACH,IAAI,KAAK,YAAY,IAAI,IAAI,MAAM,YAAY,IAAI;gBACjD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,KAAK,MAAM,CAAC,OAAO,EAAE,CAAA;YAClH,OAAO,CACL,CAAC,CAAC,MAAM;gBACR,OAAO,MAAM,KAAK,QAAQ;gBAC1B,CAAC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC;gBAC7B,aAAa;qBACV,OAAO,CAAC,KAAK,CAAC;qBACd,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,GAAG,IAAI,MAAM,IAAI,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAC1G,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,GAAG,IAAI,KAAK,CAAC,CAC3F,CAAA;IACL,CAAC;AACH,CAAC"}
@@ -9,7 +9,7 @@ export var Address;
9
9
  if (!value)
10
10
  return null;
11
11
  return Normalizer.Normalized.combine({
12
- lines: Normalizer.array
12
+ lines: Normalizer.array.required
13
13
  .chain((value, warn) => {
14
14
  if (value.length === 0)
15
15
  throw new Error('At least one address line is required.');
@@ -1 +1 @@
1
- {"version":3,"file":"Address.js","sourceRoot":"","sources":["../../../../src/modules/primitives/definitions/Address.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Address.js","sourceRoot":"","sources":["../../../../src/modules/primitives/definitions/Address.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
+ import { jsonNormalizer } from './jsonNormalizer';
1
2
  import { jsonNormalizerWithSchemaFactory } from './jsonNormalizerWithSchemaFactory';
2
- import { jsonSchemaSatisfies } from './jsonSchemaSatisfies';
3
+ import { JsonSchema } from './JsonSchema';
3
4
  /** Recursive type representing any valid JSON value. */
4
5
  export type Json = null | string | number | boolean | readonly Json[] | {
5
6
  readonly [key: string]: Json | undefined;
@@ -25,64 +26,8 @@ export declare namespace Json {
25
26
  value?: undefined;
26
27
  errorMessage: string;
27
28
  };
28
- const normalizer: import("../Normalizer").Normalizer<Json>;
29
- const normalizerWithSchemaFactory: typeof jsonNormalizerWithSchemaFactory;
30
- type Schema = Schema.Annotations & (Schema.ConstValidation | Schema.EnumValidation | Schema.AnyValidation | Schema.NullValidation | Schema.StringValidation | Schema.NumberIntegerValidation | Schema.BooleanValidation | Schema.ArrayValidation | Schema.ObjectValidation);
31
- namespace Schema {
32
- interface Annotations {
33
- readonly $comment?: string;
34
- readonly title?: string;
35
- readonly description?: string;
36
- readonly default?: Json;
37
- readonly examples?: readonly Json[];
38
- }
39
- interface ConstValidation {
40
- readonly type?: undefined;
41
- readonly const: Json;
42
- }
43
- interface EnumValidation {
44
- readonly type?: undefined;
45
- readonly enum: readonly Json[];
46
- }
47
- interface AnyValidation {
48
- readonly type?: 'any';
49
- }
50
- interface NullValidation {
51
- readonly type: 'null';
52
- }
53
- interface StringValidation {
54
- readonly type: 'string' | readonly ['string', 'null'];
55
- readonly minLength?: number;
56
- readonly maxLength?: number;
57
- readonly format?: 'date-time' | 'email' | 'uuid' | 'uri' | (string & {});
58
- }
59
- interface NumberIntegerValidation {
60
- readonly type: 'number' | 'integer' | readonly ['number' | 'integer', 'null'];
61
- readonly minimum?: number;
62
- readonly maximum?: number;
63
- readonly exclusiveMinimum?: number;
64
- readonly exclusiveMaximum?: number;
65
- readonly multipleOf?: number;
66
- }
67
- interface BooleanValidation {
68
- readonly type: 'boolean' | readonly ['boolean', 'null'];
69
- }
70
- interface ArrayValidation {
71
- readonly type: 'array' | readonly ['array', 'null'];
72
- readonly items?: Schema;
73
- readonly minItems?: number;
74
- readonly maxItems?: number;
75
- }
76
- interface ObjectValidation {
77
- readonly type: 'object' | readonly ['object', 'null'];
78
- readonly properties?: Readonly<Record<string, Schema>>;
79
- readonly additionalProperties?: Schema | true;
80
- readonly required?: readonly string[];
81
- }
82
- /** Normalizer for JSON Schema objects. */
83
- const normalizer: import("../Normalizer").Normalizer<Schema | null>;
84
- /** Checks if one schema satisfies (is compatible with) another. */
85
- const satisfies: typeof jsonSchemaSatisfies;
86
- }
29
+ export import normalizer = jsonNormalizer;
30
+ export import normalizerWithSchemaFactory = jsonNormalizerWithSchemaFactory;
31
+ export import Schema = JsonSchema;
87
32
  }
88
33
  //# sourceMappingURL=Json.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Json.d.ts","sourceRoot":"","sources":["../../../src/types/Json/Json.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Json.d.ts","sourceRoot":"","sources":["../../../src/types/Json/Json.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAA;AACnF,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAIzC,wDAAwD;AACxD,MAAM,MAAM,IAAI,GAAG,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,IAAI,EAAE,GAAG;IAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAA;CAAE,CAAA;AAEpH,yBAAiB,IAAI,CAAC;IACpB,sDAAsD;IACtD,SAAgB,KAAK,CAAC,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,CAE/G;IAED,8EAA8E;IAC9E,SAAgB,SAAS,CAAC,CAAC,GAAG,GAAG,EAC/B,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC,GAAG,IAAI,GAC7D;QAAE,KAAK,EAAE,CAAC,CAAC;QAAC,YAAY,CAAC,EAAE,SAAS,CAAA;KAAE,GAAG;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAMtF;IAED,+CAA+C;IAC/C,SAAgB,SAAS,CACvB,KAAK,EAAE,GAAG,EACV,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,IAAI,EACrF,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EAC9B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GACpB,MAAM,CAER;IAED,kFAAkF;IAClF,SAAgB,aAAa,CAC3B,KAAK,EAAE,GAAG,EACV,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,IAAI,EACrF,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EAC9B,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GACpB;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,SAAS,CAAA;KAAE,GAAG;QAAE,KAAK,CAAC,EAAE,SAAS,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,CAM3F;IAED,MAAM,QAAQ,UAAU,GAAG,cAAc,CAAA;IAEzC,MAAM,QAAQ,2BAA2B,GAAG,+BAA+B,CAAA;IAE3E,MAAM,QAAQ,MAAM,GAAG,UAAU,CAAA;CAClC"}
@@ -2,8 +2,7 @@ import json5 from 'json5';
2
2
  import { getErrorMessage } from '../../helpers/error-warning/getErrorMessage';
3
3
  import { jsonNormalizer } from './jsonNormalizer';
4
4
  import { jsonNormalizerWithSchemaFactory } from './jsonNormalizerWithSchemaFactory';
5
- import { jsonSchemaNormalizer } from './jsonSchemaNormalizer';
6
- import { jsonSchemaSatisfies } from './jsonSchemaSatisfies';
5
+ import { JsonSchema } from './JsonSchema';
7
6
  export var Json;
8
7
  (function (Json) {
9
8
  /** Parses a JSON5 string. Throws on invalid input. */
@@ -38,12 +37,6 @@ export var Json;
38
37
  Json.stringifySafe = stringifySafe;
39
38
  Json.normalizer = jsonNormalizer;
40
39
  Json.normalizerWithSchemaFactory = jsonNormalizerWithSchemaFactory;
41
- let Schema;
42
- (function (Schema) {
43
- /** Normalizer for JSON Schema objects. */
44
- Schema.normalizer = jsonSchemaNormalizer;
45
- /** Checks if one schema satisfies (is compatible with) another. */
46
- Schema.satisfies = jsonSchemaSatisfies;
47
- })(Schema = Json.Schema || (Json.Schema = {}));
40
+ Json.Schema = JsonSchema;
48
41
  })(Json || (Json = {}));
49
42
  //# sourceMappingURL=Json.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Json.js","sourceRoot":"","sources":["../../../src/types/Json/Json.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAA;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAA;AACnF,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAO3D,MAAM,KAAW,IAAI,CA8HpB;AA9HD,WAAiB,IAAI;IACnB,sDAAsD;IACtD,SAAgB,KAAK,CAAU,KAAa,EAAE,OAA8D;QAC1G,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IACpC,CAAC;IAFe,UAAK,QAEpB,CAAA;IAED,8EAA8E;IAC9E,SAAgB,SAAS,CACvB,KAAa,EACb,OAA8D;QAE9D,IAAI,CAAC;YACH,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAA;QAC/C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,EAAE,YAAY,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,CAAA;QACjD,CAAC;IACH,CAAC;IATe,cAAS,YASxB,CAAA;IAED,+CAA+C;IAC/C,SAAgB,SAAS,CACvB,KAAU,EACV,QAAqF,EACrF,KAA8B,EAC9B,KAAqB;QAErB,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;IAC3D,CAAC;IAPe,cAAS,YAOxB,CAAA;IAED,kFAAkF;IAClF,SAAgB,aAAa,CAC3B,KAAU,EACV,QAAqF,EACrF,KAA8B,EAC9B,KAAqB;QAErB,IAAI,CAAC;YACH,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,CAAA;QACtE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,EAAE,YAAY,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,CAAA;QACjD,CAAC;IACH,CAAC;IAXe,kBAAa,gBAW5B,CAAA;IAEY,eAAU,GAAG,cAAc,CAAA;IAE3B,gCAA2B,GAAG,+BAA+B,CAAA;IAe1E,IAAiB,MAAM,CAkEtB;IAlED,WAAiB,MAAM;QA6DrB,0CAA0C;QAC7B,iBAAU,GAAG,oBAAoB,CAAA;QAE9C,mEAAmE;QACtD,gBAAS,GAAG,mBAAmB,CAAA;IAC9C,CAAC,EAlEgB,MAAM,GAAN,WAAM,KAAN,WAAM,QAkEtB;AACH,CAAC,EA9HgB,IAAI,KAAJ,IAAI,QA8HpB"}
1
+ {"version":3,"file":"Json.js","sourceRoot":"","sources":["../../../src/types/Json/Json.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,eAAe,EAAE,MAAM,6CAA6C,CAAA;AAC7E,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAA;AACnF,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAOzC,MAAM,KAAW,IAAI,CA+CpB;AA/CD,WAAiB,IAAI;IACnB,sDAAsD;IACtD,SAAgB,KAAK,CAAU,KAAa,EAAE,OAA8D;QAC1G,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IACpC,CAAC;IAFe,UAAK,QAEpB,CAAA;IAED,8EAA8E;IAC9E,SAAgB,SAAS,CACvB,KAAa,EACb,OAA8D;QAE9D,IAAI,CAAC;YACH,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,CAAA;QAC/C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,EAAE,YAAY,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,CAAA;QACjD,CAAC;IACH,CAAC;IATe,cAAS,YASxB,CAAA;IAED,+CAA+C;IAC/C,SAAgB,SAAS,CACvB,KAAU,EACV,QAAqF,EACrF,KAA8B,EAC9B,KAAqB;QAErB,OAAO,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;IAC3D,CAAC;IAPe,cAAS,YAOxB,CAAA;IAED,kFAAkF;IAClF,SAAgB,aAAa,CAC3B,KAAU,EACV,QAAqF,EACrF,KAA8B,EAC9B,KAAqB;QAErB,IAAI,CAAC;YACH,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,CAAA;QACtE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,EAAE,YAAY,EAAE,eAAe,CAAC,KAAK,CAAC,EAAE,CAAA;QACjD,CAAC;IACH,CAAC;IAXe,kBAAa,gBAW5B,CAAA;IAEa,eAAU,GAAG,cAAc,CAAA;IAE3B,gCAA2B,GAAG,+BAA+B,CAAA;IAE7D,WAAM,GAAG,UAAU,CAAA;AACnC,CAAC,EA/CgB,IAAI,KAAJ,IAAI,QA+CpB"}
@@ -0,0 +1,103 @@
1
+ import { Json } from '../Json';
2
+ import { isJsonSchemaNullable } from './isJsonSchemaNullable';
3
+ import { isJsonSchemaWiderThan } from './isJsonSchemaWiderThan';
4
+ import { jsonSchemaNormalizer } from './jsonSchemaNormalizer';
5
+ import { jsonSchemaNullable } from './jsonSchemaNullable';
6
+ export type JsonSchema = JsonSchema.Any | JsonSchema.Const | JsonSchema.Enum | JsonSchema.Null | JsonSchema.String | JsonSchema.Number | JsonSchema.Integer | JsonSchema.Boolean | JsonSchema.Array | JsonSchema.Object;
7
+ export declare namespace JsonSchema {
8
+ interface Base {
9
+ readonly $comment?: string;
10
+ readonly title?: string;
11
+ readonly description?: string;
12
+ readonly default?: Json;
13
+ readonly examples?: readonly Json[];
14
+ }
15
+ interface Any extends Base {
16
+ readonly type?: undefined;
17
+ readonly const?: undefined;
18
+ readonly enum?: undefined;
19
+ }
20
+ namespace Any {
21
+ function check(schema: JsonSchema): schema is Any;
22
+ }
23
+ interface Const extends Base {
24
+ readonly type?: undefined;
25
+ readonly const: Json;
26
+ }
27
+ namespace Const {
28
+ function check(schema: JsonSchema): schema is Const;
29
+ }
30
+ interface Enum extends Base {
31
+ readonly type?: undefined;
32
+ readonly enum: readonly Json[];
33
+ }
34
+ namespace Enum {
35
+ function check(schema: JsonSchema): schema is Enum;
36
+ }
37
+ interface Null extends Base {
38
+ readonly type: 'null';
39
+ }
40
+ namespace Null {
41
+ function check(schema: JsonSchema): schema is Null;
42
+ }
43
+ interface String extends Base {
44
+ readonly type: 'string' | readonly ['string', 'null'];
45
+ readonly minLength?: number;
46
+ readonly maxLength?: number;
47
+ readonly format?: 'date-time' | 'email' | 'uri' | 'date' | 'time' | 'hostname' | 'ipv4' | 'ipv6' | 'uuid' | (string & {});
48
+ }
49
+ namespace String {
50
+ function check(schema: JsonSchema): schema is String;
51
+ }
52
+ interface Number extends Base {
53
+ readonly type: 'number' | readonly ['number', 'null'];
54
+ readonly minimum?: number;
55
+ readonly maximum?: number;
56
+ readonly exclusiveMinimum?: number;
57
+ readonly exclusiveMaximum?: number;
58
+ readonly multipleOf?: number;
59
+ }
60
+ namespace Number {
61
+ function check(schema: JsonSchema): schema is Number;
62
+ }
63
+ interface Integer extends Base {
64
+ readonly type: 'integer' | readonly ['integer', 'null'];
65
+ readonly minimum?: number;
66
+ readonly maximum?: number;
67
+ readonly exclusiveMinimum?: number;
68
+ readonly exclusiveMaximum?: number;
69
+ readonly multipleOf?: number;
70
+ }
71
+ namespace Integer {
72
+ function check(schema: JsonSchema): schema is Integer;
73
+ }
74
+ interface Boolean extends Base {
75
+ readonly type: 'boolean' | readonly ['boolean', 'null'];
76
+ }
77
+ namespace Boolean {
78
+ function check(schema: JsonSchema): schema is Boolean;
79
+ }
80
+ interface Array extends Base {
81
+ readonly type: 'array' | readonly ['array', 'null'];
82
+ readonly items?: JsonSchema;
83
+ readonly minItems?: number;
84
+ readonly maxItems?: number;
85
+ }
86
+ namespace Array {
87
+ function check(schema: JsonSchema): schema is Array;
88
+ }
89
+ interface Object extends Base {
90
+ readonly type: 'object' | readonly ['object', 'null'];
91
+ readonly properties?: Readonly<Record<string, JsonSchema>>;
92
+ readonly required?: readonly string[];
93
+ readonly additionalProperties?: JsonSchema | true;
94
+ }
95
+ namespace Object {
96
+ function check(schema: JsonSchema): schema is Object;
97
+ }
98
+ export import normalizer = jsonSchemaNormalizer;
99
+ export import isWiderThan = isJsonSchemaWiderThan;
100
+ export import nullable = jsonSchemaNullable;
101
+ export import isNullable = isJsonSchemaNullable;
102
+ }
103
+ //# sourceMappingURL=JsonSchema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JsonSchema.d.ts","sourceRoot":"","sources":["../../../../src/types/Json/JsonSchema/JsonSchema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,95 @@
1
+ import { arrayHelpers } from '../../../helpers/native/arrayHelpers';
2
+ import { isJsonSchemaNullable } from './isJsonSchemaNullable';
3
+ import { isJsonSchemaWiderThan } from './isJsonSchemaWiderThan';
4
+ import { jsonSchemaNormalizer } from './jsonSchemaNormalizer';
5
+ import { jsonSchemaNullable } from './jsonSchemaNullable';
6
+ export var JsonSchema;
7
+ (function (JsonSchema) {
8
+ let Any;
9
+ (function (Any) {
10
+ function check(schema) {
11
+ return schema.type === undefined && !('const' in schema) && !('enum' in schema);
12
+ }
13
+ Any.check = check;
14
+ })(Any = JsonSchema.Any || (JsonSchema.Any = {}));
15
+ let Const;
16
+ (function (Const) {
17
+ function check(schema) {
18
+ return 'const' in schema;
19
+ }
20
+ Const.check = check;
21
+ })(Const = JsonSchema.Const || (JsonSchema.Const = {}));
22
+ let Enum;
23
+ (function (Enum) {
24
+ function check(schema) {
25
+ return 'enum' in schema;
26
+ }
27
+ Enum.check = check;
28
+ })(Enum = JsonSchema.Enum || (JsonSchema.Enum = {}));
29
+ let Null;
30
+ (function (Null) {
31
+ function check(schema) {
32
+ return schema.type === 'null';
33
+ }
34
+ Null.check = check;
35
+ })(Null = JsonSchema.Null || (JsonSchema.Null = {}));
36
+ let String;
37
+ (function (String) {
38
+ function check(schema) {
39
+ return (schema.type === 'string' ||
40
+ (arrayHelpers.isArray(schema.type) &&
41
+ schema.type.includes('string')));
42
+ }
43
+ String.check = check;
44
+ })(String = JsonSchema.String || (JsonSchema.String = {}));
45
+ let Number;
46
+ (function (Number) {
47
+ function check(schema) {
48
+ return (schema.type === 'number' ||
49
+ (arrayHelpers.isArray(schema.type) &&
50
+ schema.type.includes('number')));
51
+ }
52
+ Number.check = check;
53
+ })(Number = JsonSchema.Number || (JsonSchema.Number = {}));
54
+ let Integer;
55
+ (function (Integer) {
56
+ function check(schema) {
57
+ return (schema.type === 'integer' ||
58
+ (arrayHelpers.isArray(schema.type) &&
59
+ schema.type.includes('integer')));
60
+ }
61
+ Integer.check = check;
62
+ })(Integer = JsonSchema.Integer || (JsonSchema.Integer = {}));
63
+ let Boolean;
64
+ (function (Boolean) {
65
+ function check(schema) {
66
+ return (schema.type === 'boolean' ||
67
+ (arrayHelpers.isArray(schema.type) &&
68
+ schema.type.includes('boolean')));
69
+ }
70
+ Boolean.check = check;
71
+ })(Boolean = JsonSchema.Boolean || (JsonSchema.Boolean = {}));
72
+ let Array;
73
+ (function (Array) {
74
+ function check(schema) {
75
+ return (schema.type === 'array' ||
76
+ (arrayHelpers.isArray(schema.type) &&
77
+ schema.type.includes('array')));
78
+ }
79
+ Array.check = check;
80
+ })(Array = JsonSchema.Array || (JsonSchema.Array = {}));
81
+ let Object;
82
+ (function (Object) {
83
+ function check(schema) {
84
+ return (schema.type === 'object' ||
85
+ (arrayHelpers.isArray(schema.type) &&
86
+ schema.type.includes('object')));
87
+ }
88
+ Object.check = check;
89
+ })(Object = JsonSchema.Object || (JsonSchema.Object = {}));
90
+ JsonSchema.normalizer = jsonSchemaNormalizer;
91
+ JsonSchema.isWiderThan = isJsonSchemaWiderThan;
92
+ JsonSchema.nullable = jsonSchemaNullable;
93
+ JsonSchema.isNullable = isJsonSchemaNullable;
94
+ })(JsonSchema || (JsonSchema = {}));
95
+ //# sourceMappingURL=JsonSchema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JsonSchema.js","sourceRoot":"","sources":["../../../../src/types/Json/JsonSchema/JsonSchema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './JsonSchema';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/Json/JsonSchema/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA"}
@@ -0,0 +1,2 @@
1
+ export * from './JsonSchema';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/types/Json/JsonSchema/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA"}
@@ -0,0 +1,5 @@
1
+ import { JsonSchema } from './JsonSchema';
2
+ /** Checks if a JSON Schema is nullable (i.e., allows null values). */
3
+ export declare function isJsonSchemaNullable(jsonSchema: JsonSchema): boolean;
4
+ export declare namespace isJsonSchemaNullable { }
5
+ //# sourceMappingURL=isJsonSchemaNullable.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isJsonSchemaNullable.d.ts","sourceRoot":"","sources":["../../../../src/types/Json/JsonSchema/isJsonSchemaNullable.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,sEAAsE;AACtE,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAMpE;AAED,yBAAiB,oBAAoB,CAAC,GAAE"}
@@ -0,0 +1,15 @@
1
+ import { arrayHelpers } from '../../../helpers/native/arrayHelpers';
2
+ import { JsonSchema } from './JsonSchema';
3
+ /** Checks if a JSON Schema is nullable (i.e., allows null values). */
4
+ export function isJsonSchemaNullable(jsonSchema) {
5
+ if (JsonSchema.Any.check(jsonSchema) || JsonSchema.Null.check(jsonSchema))
6
+ return true;
7
+ if (JsonSchema.Const.check(jsonSchema))
8
+ return jsonSchema.const === null;
9
+ if (JsonSchema.Enum.check(jsonSchema))
10
+ return jsonSchema.enum.includes(null);
11
+ if (arrayHelpers.isArray(jsonSchema.type))
12
+ return jsonSchema.type.includes('null');
13
+ return false;
14
+ }
15
+ //# sourceMappingURL=isJsonSchemaNullable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isJsonSchemaNullable.js","sourceRoot":"","sources":["../../../../src/types/Json/JsonSchema/isJsonSchemaNullable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAA;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,sEAAsE;AACtE,MAAM,UAAU,oBAAoB,CAAC,UAAsB;IACzD,IAAI,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;QAAE,OAAO,IAAI,CAAA;IACtF,IAAI,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,CAAC;QAAE,OAAO,UAAU,CAAC,KAAK,KAAK,IAAI,CAAA;IACxE,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;QAAE,OAAO,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC5E,IAAI,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IAClF,OAAO,KAAK,CAAA;AACd,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { JsonSchema } from './JsonSchema';
2
+ /**
3
+ * Checks if the `wider` schema accepts every JSON value that the `narrower` schema accepts —
4
+ * i.e. the set of values valid under `narrower` is a subset of those valid under `wider`.
5
+ * The relation is reflexive: equivalent schemas return `true`.
6
+ *
7
+ * This single check covers two common scenarios:
8
+ *
9
+ * - **Backward compatibility (old vs. new schema):** when migrating a stored dataset whose items
10
+ * conform to an old schema, pass `wider = newSchema`, `narrower = oldSchema`. A `true` result
11
+ * means every existing item remains valid under the new schema (no migration needed).
12
+ *
13
+ * - **Producer/consumer compatibility:** when wiring a producer (emits values matching schema P)
14
+ * to a consumer (accepts values matching schema C), pass `wider = consumerSchema`,
15
+ * `narrower = producerSchema`. A `true` result means the consumer accepts everything the
16
+ * producer can emit. Note: the consumer is the *wider* side, because it must tolerate
17
+ * anything the producer might send.
18
+ *
19
+ * The check is sound but not always complete: it operates on the simplified `JsonSchema` subset
20
+ * used by this package (no `oneOf` / `anyOf` / `allOf` / `not` / pattern properties), which makes
21
+ * the comparison deterministic.
22
+ *
23
+ * @param wider - The schema expected to accept at least as many values
24
+ * @param narrower - The schema whose accepted values must all be accepted by `wider`
25
+ */
26
+ export declare function isJsonSchemaWiderThan(wider: JsonSchema, narrower: JsonSchema): boolean;
27
+ export declare namespace isJsonSchemaWiderThan { }
28
+ //# sourceMappingURL=isJsonSchemaWiderThan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isJsonSchemaWiderThan.d.ts","sourceRoot":"","sources":["../../../../src/types/Json/JsonSchema/isJsonSchemaWiderThan.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,GAAG,OAAO,CAsCtF;AAgND,yBAAiB,qBAAqB,CAAC,GAAE"}