@mayhem93/nexxus-core-lib 0.0.1 → 0.0.3

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 (87) hide show
  1. package/dist-cjs/common/BuiltinSchemas.js +24 -5
  2. package/dist-cjs/common/BuiltinSchemas.js.map +1 -1
  3. package/dist-cjs/common/FilterQuery.js +5 -18
  4. package/dist-cjs/common/FilterQuery.js.map +1 -1
  5. package/dist-cjs/common/InferModel.js +3 -0
  6. package/dist-cjs/common/InferModel.js.map +1 -0
  7. package/dist-cjs/common/JsonPatch.js +42 -225
  8. package/dist-cjs/common/JsonPatch.js.map +1 -1
  9. package/dist-cjs/common/SchemaValidator.js +100 -29
  10. package/dist-cjs/common/SchemaValidator.js.map +1 -1
  11. package/dist-cjs/index.js +4 -0
  12. package/dist-cjs/index.js.map +1 -1
  13. package/dist-cjs/lib/BaseService.js +6 -6
  14. package/dist-cjs/lib/BaseService.js.map +1 -1
  15. package/dist-cjs/lib/ConfigManager.js +56 -25
  16. package/dist-cjs/lib/ConfigManager.js.map +1 -1
  17. package/dist-cjs/lib/ConfigProvider.js +14 -1
  18. package/dist-cjs/lib/ConfigProvider.js.map +1 -1
  19. package/dist-cjs/lib/Exceptions.js +22 -4
  20. package/dist-cjs/lib/Exceptions.js.map +1 -1
  21. package/dist-cjs/lib/Logger.js +138 -65
  22. package/dist-cjs/lib/Logger.js.map +1 -1
  23. package/dist-cjs/lib/ServiceResolver.js +57 -0
  24. package/dist-cjs/lib/ServiceResolver.js.map +1 -0
  25. package/dist-cjs/models/AppModel.js +17 -3
  26. package/dist-cjs/models/AppModel.js.map +1 -1
  27. package/dist-cjs/models/Application.js +51 -12
  28. package/dist-cjs/models/Application.js.map +1 -1
  29. package/dist-cjs/models/BaseModel.js.map +1 -1
  30. package/dist-cjs/models/BuiltinModel.js +8 -0
  31. package/dist-cjs/models/BuiltinModel.js.map +1 -0
  32. package/dist-cjs/models/User.js +12 -3
  33. package/dist-cjs/models/User.js.map +1 -1
  34. package/dist-esm/common/BuiltinSchemas.js +23 -4
  35. package/dist-esm/common/BuiltinSchemas.js.map +1 -1
  36. package/dist-esm/common/FilterQuery.js +6 -19
  37. package/dist-esm/common/FilterQuery.js.map +1 -1
  38. package/dist-esm/common/InferModel.js +2 -0
  39. package/dist-esm/common/InferModel.js.map +1 -0
  40. package/dist-esm/common/JsonPatch.js +44 -227
  41. package/dist-esm/common/JsonPatch.js.map +1 -1
  42. package/dist-esm/common/SchemaValidator.js +100 -29
  43. package/dist-esm/common/SchemaValidator.js.map +1 -1
  44. package/dist-esm/index.js +4 -0
  45. package/dist-esm/index.js.map +1 -1
  46. package/dist-esm/lib/BaseService.js +8 -8
  47. package/dist-esm/lib/BaseService.js.map +1 -1
  48. package/dist-esm/lib/ConfigManager.js +56 -25
  49. package/dist-esm/lib/ConfigManager.js.map +1 -1
  50. package/dist-esm/lib/ConfigProvider.js +14 -1
  51. package/dist-esm/lib/ConfigProvider.js.map +1 -1
  52. package/dist-esm/lib/Exceptions.js +20 -3
  53. package/dist-esm/lib/Exceptions.js.map +1 -1
  54. package/dist-esm/lib/Logger.js +139 -66
  55. package/dist-esm/lib/Logger.js.map +1 -1
  56. package/dist-esm/lib/ServiceResolver.js +52 -0
  57. package/dist-esm/lib/ServiceResolver.js.map +1 -0
  58. package/dist-esm/models/AppModel.js +17 -3
  59. package/dist-esm/models/AppModel.js.map +1 -1
  60. package/dist-esm/models/Application.js +52 -13
  61. package/dist-esm/models/Application.js.map +1 -1
  62. package/dist-esm/models/BaseModel.js.map +1 -1
  63. package/dist-esm/models/BuiltinModel.js +4 -0
  64. package/dist-esm/models/BuiltinModel.js.map +1 -0
  65. package/dist-esm/models/User.js +11 -2
  66. package/dist-esm/models/User.js.map +1 -1
  67. package/dist-types/common/BuiltinSchemas.d.ts +59 -5
  68. package/dist-types/common/FilterQuery.d.ts +3 -11
  69. package/dist-types/common/InferModel.d.ts +29 -0
  70. package/dist-types/common/JsonPatch.d.ts +4 -45
  71. package/dist-types/common/ModelTypes.d.ts +1 -0
  72. package/dist-types/common/QueuePayloads.d.ts +48 -26
  73. package/dist-types/common/SchemaValidator.d.ts +42 -2
  74. package/dist-types/index.d.ts +4 -0
  75. package/dist-types/lib/BaseService.d.ts +51 -1
  76. package/dist-types/lib/ConfigManager.d.ts +50 -13
  77. package/dist-types/lib/ConfigProvider.d.ts +6 -0
  78. package/dist-types/lib/Exceptions.d.ts +15 -2
  79. package/dist-types/lib/Logger.d.ts +84 -14
  80. package/dist-types/lib/ServiceResolver.d.ts +23 -0
  81. package/dist-types/models/AppModel.d.ts +31 -5
  82. package/dist-types/models/Application.d.ts +36 -8
  83. package/dist-types/models/BaseModel.d.ts +14 -12
  84. package/dist-types/models/BuiltinModel.d.ts +3 -0
  85. package/dist-types/models/User.d.ts +15 -13
  86. package/package.json +4 -4
  87. package/src/schemas/winston-logger.schema.json +51 -6
@@ -1,23 +1,42 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.NEXXUS_BUILTIN_MODEL_SCHEMAS = exports.NEXXUS_UNIVERSAL_FIELDS = void 0;
3
+ exports.NEXXUS_BUILTIN_MODEL_SCHEMAS = exports.NEXXUS_RESERVED_FIELD_NAMES = exports.NEXXUS_UNIVERSAL_FIELDS = void 0;
4
4
  exports.isBuiltinModel = isBuiltinModel;
5
5
  exports.NEXXUS_UNIVERSAL_FIELDS = {
6
6
  id: { type: 'string', required: true },
7
7
  createdAt: { type: 'date', required: true },
8
8
  updatedAt: { type: 'date', required: true }
9
9
  };
10
+ exports.NEXXUS_RESERVED_FIELD_NAMES = new Set([
11
+ 'id',
12
+ 'createdAt',
13
+ 'updatedAt',
14
+ 'appId',
15
+ 'userId',
16
+ 'type',
17
+ 'version'
18
+ ]);
10
19
  exports.NEXXUS_BUILTIN_MODEL_SCHEMAS = {
11
20
  user: {
12
- userType: { type: 'string', required: false, filterable: true },
21
+ appId: { type: 'string', required: true, filterable: true },
22
+ userType: { type: 'string', required: true, filterable: true },
13
23
  username: { type: 'string', required: true, filterable: true },
14
- password: { type: 'string', required: false },
24
+ password: { type: 'string', required: true, nullable: true },
15
25
  authProviders: { type: 'array', required: true, arrayType: 'string' },
16
26
  devices: { type: 'array', required: true, arrayType: 'string' },
17
- details: { type: 'object', required: false, properties: {} }
27
+ details: { type: 'object', required: false, properties: {} },
18
28
  },
19
29
  application: {
20
- name: { type: 'string', required: true, filterable: true }
30
+ name: { type: 'string', required: true, filterable: true },
31
+ description: { type: 'string', required: false },
32
+ auth: {
33
+ type: 'object', required: false, nullable: true,
34
+ properties: {
35
+ jwtSecret: { type: 'string', required: true },
36
+ jwtExpiresIn: { type: 'string', required: false },
37
+ strategies: { type: 'object', required: true, properties: {} },
38
+ },
39
+ },
21
40
  }
22
41
  };
23
42
  function isBuiltinModel(modelType) {
@@ -1 +1 @@
1
- {"version":3,"file":"BuiltinSchemas.js","sourceRoot":"","sources":["../../src/common/BuiltinSchemas.ts"],"names":[],"mappings":";;;AAmCA,wCAEC;AAjCY,QAAA,uBAAuB,GAAG;IACrC,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;IACtC,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC3C,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;CACnC,CAAC;AAKE,QAAA,4BAA4B,GAAG;IAC1C,IAAI,EAAE;QACJ,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE;QAC/D,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;QAC9D,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE;QAC7C,aAAa,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE;QACrE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE;QAC/D,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE;KAC7D;IACD,WAAW,EAAE;QACX,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;KAC3D;CACO,CAAC;AAUX,SAAgB,cAAc,CAAC,SAAiB;IAC9C,OAAO,SAAS,IAAI,oCAA4B,CAAC;AACnD,CAAC"}
1
+ {"version":3,"file":"BuiltinSchemas.js","sourceRoot":"","sources":["../../src/common/BuiltinSchemas.ts"],"names":[],"mappings":";;;AAgFA,wCAEC;AA5EY,QAAA,uBAAuB,GAAG;IACrC,EAAE,EAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC7C,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAI,QAAQ,EAAE,IAAI,EAAE;IAC7C,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAI,QAAQ,EAAE,IAAI,EAAE;CACZ,CAAC;AAYvB,QAAA,2BAA2B,GAAwB,IAAI,GAAG,CAAC;IACtE,IAAI;IACJ,WAAW;IACX,WAAW;IACX,OAAO;IACP,QAAQ;IACR,MAAM;IACN,SAAS;CACV,CAAC,CAAC;AAOU,QAAA,4BAA4B,GAAG;IAC1C,IAAI,EAAE;QACJ,KAAK,EAAU,EAAE,IAAI,EAAE,QAAQ,EAAG,QAAQ,EAAE,IAAI,EAAG,UAAU,EAAE,IAAI,EAAE;QACrE,QAAQ,EAAO,EAAE,IAAI,EAAE,QAAQ,EAAG,QAAQ,EAAE,IAAI,EAAG,UAAU,EAAE,IAAI,EAAE;QACrE,QAAQ,EAAO,EAAE,IAAI,EAAE,QAAQ,EAAG,QAAQ,EAAE,IAAI,EAAG,UAAU,EAAE,IAAI,EAAE;QACrE,QAAQ,EAAO,EAAE,IAAI,EAAE,QAAQ,EAAG,QAAQ,EAAE,IAAI,EAAG,QAAQ,EAAE,IAAI,EAAE;QACnE,aAAa,EAAE,EAAE,IAAI,EAAE,OAAO,EAAI,QAAQ,EAAE,IAAI,EAAG,SAAS,EAAE,QAAQ,EAAE;QACxE,OAAO,EAAQ,EAAE,IAAI,EAAE,OAAO,EAAI,QAAQ,EAAE,IAAI,EAAG,SAAS,EAAE,QAAQ,EAAE;QACxE,OAAO,EAAQ,EAAE,IAAI,EAAE,QAAQ,EAAG,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE;KACpE;IACD,WAAW,EAAE;QACX,IAAI,EAAgB,EAAE,IAAI,EAAE,QAAQ,EAAG,QAAQ,EAAE,IAAI,EAAG,UAAU,EAAE,IAAI,EAAE;QAC1E,WAAW,EAAS,EAAE,IAAI,EAAE,QAAQ,EAAG,QAAQ,EAAE,KAAK,EAAE;QAYxD,IAAI,EAAE;YACJ,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI;YAC/C,UAAU,EAAE;gBACV,SAAS,EAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE;gBAChD,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE;gBACjD,UAAU,EAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE;aACjE;SACF;KACF;CACgD,CAAC;AAUpD,SAAgB,cAAc,CAAC,SAAiB;IAC9C,OAAO,SAAS,IAAI,oCAA4B,CAAC;AACnD,CAAC"}
@@ -10,21 +10,9 @@ class NexxusFilterQuery {
10
10
  query;
11
11
  nodes = [];
12
12
  modelDef;
13
- constructor(query, config) {
13
+ constructor(query, schema) {
14
14
  this.query = query;
15
- if ('appModelDef' in config) {
16
- this.modelDef = { ...BuiltinSchemas_1.NEXXUS_UNIVERSAL_FIELDS, ...config.appModelDef, ...{ userId: { type: 'string', required: false } } };
17
- }
18
- else {
19
- const builtinSchema = BuiltinSchemas_1.NEXXUS_BUILTIN_MODEL_SCHEMAS[config.modelType];
20
- this.modelDef = { ...BuiltinSchemas_1.NEXXUS_UNIVERSAL_FIELDS, ...builtinSchema };
21
- if (config.modelType === 'user') {
22
- if (!config.userDetailsSchema) {
23
- throw new Exceptions_1.InvalidQueryFilterException("User detail schema must be provided for 'user' model queries");
24
- }
25
- this.modelDef.details = { type: 'object', properties: config.userDetailsSchema, required: false };
26
- }
27
- }
15
+ this.modelDef = { ...BuiltinSchemas_1.NEXXUS_UNIVERSAL_FIELDS, ...schema };
28
16
  this.validateAndParse();
29
17
  }
30
18
  getNodes() {
@@ -46,9 +34,7 @@ class NexxusFilterQuery {
46
34
  if (node.operator === '$and') {
47
35
  return node.conditions.every(childNode => this.testNode(childNode, object));
48
36
  }
49
- else {
50
- return node.conditions.some(childNode => this.testNode(childNode, object));
51
- }
37
+ return node.conditions.some(childNode => this.testNode(childNode, object));
52
38
  }
53
39
  validateAndParse() {
54
40
  this.nodes = this.parseQuery(this.query, this.modelDef);
@@ -94,9 +80,10 @@ class NexxusFilterQuery {
94
80
  return typeof actualValue === 'number' && actualValue < node.value;
95
81
  case 'lte':
96
82
  return typeof actualValue === 'number' && actualValue <= node.value;
97
- case 'in':
83
+ case 'in': {
98
84
  const values = node.value;
99
85
  return values.some(v => actualValue === v);
86
+ }
100
87
  default:
101
88
  return false;
102
89
  }
@@ -1 +1 @@
1
- {"version":3,"file":"FilterQuery.js","sourceRoot":"","sources":["../../src/common/FilterQuery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FilterQuery.js","sourceRoot":"","sources":["../../src/common/FilterQuery.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=InferModel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InferModel.js","sourceRoot":"","sources":["../../src/common/InferModel.ts"],"names":[],"mappings":""}
@@ -4,6 +4,7 @@ exports.NexxusJsonPatch = void 0;
4
4
  const tslib_1 = require("tslib");
5
5
  const BuiltinSchemas_1 = require("./BuiltinSchemas");
6
6
  const Exceptions_1 = require("../lib/Exceptions");
7
+ const SchemaValidator_1 = require("./SchemaValidator");
7
8
  const dot = tslib_1.__importStar(require("dot-prop"));
8
9
  const JSON_OPS = [
9
10
  'replace',
@@ -18,9 +19,7 @@ class NexxusJsonPatch {
18
19
  static OPERATION_RULES = {
19
20
  replace: {
20
21
  allowedTypes: ['string', 'number', 'boolean', 'date', 'object', 'array'],
21
- validateValue: (value, fieldDef, path) => {
22
- NexxusJsonPatch.validateAgainstType(value, fieldDef, path);
23
- }
22
+ validateValue: (value, fieldDef, path) => SchemaValidator_1.NexxusSchemaValidator.validateValue(value, fieldDef, path)
24
23
  },
25
24
  append: {
26
25
  allowedTypes: ['array', 'string'],
@@ -36,21 +35,21 @@ class NexxusJsonPatch {
36
35
  properties: arrayFieldDef.properties,
37
36
  required: false
38
37
  };
39
- NexxusJsonPatch.validateAgainstType(value, objFieldDef, path);
40
- }
41
- else {
42
- const primitiveFieldDef = {
43
- type: arrayFieldDef.arrayType,
44
- required: false
45
- };
46
- NexxusJsonPatch.validateAgainstType(value, primitiveFieldDef, path);
38
+ return SchemaValidator_1.NexxusSchemaValidator.validateValue(value, objFieldDef, path);
47
39
  }
40
+ const primitiveFieldDef = {
41
+ type: arrayFieldDef.arrayType,
42
+ required: false
43
+ };
44
+ return SchemaValidator_1.NexxusSchemaValidator.validateValue(value, primitiveFieldDef, path);
48
45
  }
49
- else if (fieldDef.type === 'string') {
46
+ if (fieldDef.type === 'string') {
50
47
  if (typeof value !== 'string') {
51
48
  throw new Exceptions_1.InvalidJsonPatchException(`Value for append at path "${path}" must be a string`);
52
49
  }
50
+ return value;
53
51
  }
52
+ throw new Exceptions_1.InvalidJsonPatchException(`append not supported on type "${fieldDef.type}" at path "${path}"`);
54
53
  }
55
54
  },
56
55
  prepend: {
@@ -67,34 +66,30 @@ class NexxusJsonPatch {
67
66
  properties: arrayFieldDef.properties,
68
67
  required: false
69
68
  };
70
- NexxusJsonPatch.validateAgainstType(value, objFieldDef, path);
71
- }
72
- else {
73
- const primitiveFieldDef = {
74
- type: arrayFieldDef.arrayType,
75
- required: false
76
- };
77
- NexxusJsonPatch.validateAgainstType(value, primitiveFieldDef, path);
69
+ return SchemaValidator_1.NexxusSchemaValidator.validateValue(value, objFieldDef, path);
78
70
  }
71
+ const primitiveFieldDef = {
72
+ type: arrayFieldDef.arrayType,
73
+ required: false
74
+ };
75
+ return SchemaValidator_1.NexxusSchemaValidator.validateValue(value, primitiveFieldDef, path);
79
76
  }
80
- else if (fieldDef.type === 'string') {
77
+ if (fieldDef.type === 'string') {
81
78
  if (typeof value !== 'string') {
82
79
  throw new Exceptions_1.InvalidJsonPatchException(`Value for prepend at path "${path}" must be a string`);
83
80
  }
81
+ return value;
84
82
  }
83
+ throw new Exceptions_1.InvalidJsonPatchException(`prepend not supported on type "${fieldDef.type}" at path "${path}"`);
85
84
  }
86
85
  },
87
86
  incr: {
88
87
  allowedTypes: ['number', 'date'],
89
- validateValue: (value, fieldDef, path) => {
90
- NexxusJsonPatch.validateAgainstType(value, fieldDef, path);
91
- }
88
+ validateValue: (value, fieldDef, path) => SchemaValidator_1.NexxusSchemaValidator.validateValue(value, fieldDef, path)
92
89
  },
93
90
  decr: {
94
91
  allowedTypes: ['number', 'date'],
95
- validateValue: (value, fieldDef, path) => {
96
- NexxusJsonPatch.validateAgainstType(value, fieldDef, path);
97
- }
92
+ validateValue: (value, fieldDef, path) => SchemaValidator_1.NexxusSchemaValidator.validateValue(value, fieldDef, path)
98
93
  }
99
94
  };
100
95
  constructor(fullPatch) {
@@ -140,42 +135,19 @@ class NexxusJsonPatch {
140
135
  }
141
136
  return partialModel;
142
137
  }
143
- validate(config) {
144
- const modelType = this.fullPatch.metadata.type;
145
- let modelSpec;
146
- if ('appSchema' in config) {
147
- const appModelSpec = config.appSchema[modelType];
148
- if (!appModelSpec) {
149
- throw new Exceptions_1.InvalidJsonPatchException(`Model type "${modelType}" not found in application schema`);
150
- }
151
- modelSpec = {
152
- updatedAt: BuiltinSchemas_1.NEXXUS_UNIVERSAL_FIELDS.updatedAt,
153
- ...appModelSpec
154
- };
155
- }
156
- else {
157
- const builtinSchema = BuiltinSchemas_1.NEXXUS_BUILTIN_MODEL_SCHEMAS[modelType];
158
- modelSpec = {
159
- updatedAt: BuiltinSchemas_1.NEXXUS_UNIVERSAL_FIELDS.updatedAt,
160
- ...builtinSchema
161
- };
162
- switch (config.modelType) {
163
- case 'user':
164
- if (config.modelType === 'user' && !config.userDetailsSchema) {
165
- throw new Exceptions_1.InvalidJsonPatchException("User detail schema must be provided for 'user' model patches");
166
- }
167
- modelSpec.details = { type: 'object', properties: config.userDetailsSchema, required: false };
168
- break;
169
- case 'application':
170
- break;
171
- default:
172
- throw new Exceptions_1.InvalidJsonPatchException(`Unsupported built-in model type: ${config.modelType}`);
173
- }
174
- }
138
+ validate(schema) {
139
+ const modelSpec = {
140
+ updatedAt: BuiltinSchemas_1.NEXXUS_UNIVERSAL_FIELDS.updatedAt,
141
+ ...schema
142
+ };
175
143
  const operationRule = NexxusJsonPatch.OPERATION_RULES[this.fullPatch.op];
176
144
  for (let i = 0; i < this.fullPatch.path.length; i++) {
177
145
  const currentPath = this.fullPatch.path[i];
178
146
  const currentValue = this.fullPatch.value[i];
147
+ const topLevelField = currentPath.split('.')[0];
148
+ if (topLevelField === 'version') {
149
+ throw new Exceptions_1.InvalidJsonPatchException(`Cannot patch system-managed field "version" at path "${currentPath}" — it is set exclusively by the database adapter`);
150
+ }
179
151
  const fieldDef = NexxusJsonPatch.traverseSchema(modelSpec, currentPath);
180
152
  if (!fieldDef) {
181
153
  throw new Exceptions_1.InvalidJsonPatchException(`Path "${currentPath}" does not exist in model "${this.fullPatch.metadata.type}"`);
@@ -183,7 +155,17 @@ class NexxusJsonPatch {
183
155
  if (!operationRule.allowedTypes.includes(fieldDef.type)) {
184
156
  throw new Exceptions_1.InvalidJsonPatchException(`Operation "${this.fullPatch.op}" not allowed on type "${fieldDef.type}" at path "${currentPath}"`);
185
157
  }
186
- operationRule.validateValue(currentValue, fieldDef, currentPath);
158
+ let normalized;
159
+ try {
160
+ normalized = operationRule.validateValue(currentValue, fieldDef, currentPath);
161
+ }
162
+ catch (e) {
163
+ if (e instanceof Exceptions_1.InvalidSchemaDataException) {
164
+ throw new Exceptions_1.InvalidJsonPatchException(e.message);
165
+ }
166
+ throw e;
167
+ }
168
+ this.fullPatch.value[i] = normalized;
187
169
  if (!this.fullPatch.metadata.pathFieldTypes) {
188
170
  this.fullPatch.metadata.pathFieldTypes = [];
189
171
  }
@@ -191,76 +173,6 @@ class NexxusJsonPatch {
191
173
  }
192
174
  this.valid = true;
193
175
  }
194
- static validateAgainstType(value, fieldDef, path) {
195
- switch (fieldDef.type) {
196
- case 'string':
197
- if (typeof value !== 'string') {
198
- throw new Exceptions_1.InvalidJsonPatchException(`Expected string at path: ${path}`);
199
- }
200
- break;
201
- case 'number':
202
- if (typeof value !== 'number' || isNaN(value)) {
203
- throw new Exceptions_1.InvalidJsonPatchException(`Expected number at path: ${path}`);
204
- }
205
- break;
206
- case 'boolean':
207
- if (typeof value !== 'boolean') {
208
- throw new Exceptions_1.InvalidJsonPatchException(`Expected boolean at path: ${path}`);
209
- }
210
- break;
211
- case 'date':
212
- const date = new Date(value);
213
- if (isNaN(date.getTime())) {
214
- throw new Exceptions_1.InvalidJsonPatchException(`Expected valid date at path: ${path}`);
215
- }
216
- break;
217
- case 'object':
218
- if (!value || typeof value !== 'object' || Array.isArray(value)) {
219
- throw new Exceptions_1.InvalidJsonPatchException(`Expected object at path: ${path}`);
220
- }
221
- if (NexxusJsonPatch.isObjectFieldDef(fieldDef)) {
222
- for (const [key, propDef] of Object.entries(fieldDef.properties)) {
223
- if (propDef.required && !(key in value)) {
224
- throw new Exceptions_1.InvalidJsonPatchException(`Required field missing: ${path}.${key}`);
225
- }
226
- if (key in value) {
227
- NexxusJsonPatch.validateAgainstType(value[key], propDef, `${path}.${key}`);
228
- }
229
- }
230
- }
231
- break;
232
- case 'array':
233
- if (!Array.isArray(value)) {
234
- throw new Exceptions_1.InvalidJsonPatchException(`Expected array at path: ${path}`);
235
- }
236
- if (NexxusJsonPatch.isArrayFieldDef(fieldDef)) {
237
- value.forEach((element, index) => {
238
- const elementPath = `${path}[${index}]`;
239
- if (fieldDef.arrayType === 'object') {
240
- if (!fieldDef.properties) {
241
- throw new Exceptions_1.InvalidJsonPatchException(`Array of objects at "${path}" is missing properties definition`);
242
- }
243
- const objFieldDef = {
244
- type: 'object',
245
- properties: fieldDef.properties,
246
- required: false
247
- };
248
- NexxusJsonPatch.validateAgainstType(element, objFieldDef, elementPath);
249
- }
250
- else {
251
- const primitiveFieldDef = {
252
- type: fieldDef.arrayType,
253
- required: false
254
- };
255
- NexxusJsonPatch.validateAgainstType(element, primitiveFieldDef, elementPath);
256
- }
257
- });
258
- }
259
- break;
260
- default:
261
- throw new Exceptions_1.InvalidJsonPatchException(`Unknown field type at path: ${path}`);
262
- }
263
- }
264
176
  static traverseSchema(schema, path) {
265
177
  const parts = path.split('.');
266
178
  let current = schema;
@@ -292,101 +204,6 @@ class NexxusJsonPatch {
292
204
  }
293
205
  return null;
294
206
  }
295
- static validateValueType(value, fieldDef, path) {
296
- const { type } = fieldDef;
297
- switch (type) {
298
- case 'string':
299
- return this.validateString(value, path);
300
- case 'number':
301
- return this.validateNumber(value, path);
302
- case 'boolean':
303
- return this.validateBoolean(value, path);
304
- case 'date':
305
- return this.validateDate(value, path);
306
- case 'object':
307
- return this.validateObject(value, fieldDef, path);
308
- case 'array':
309
- return this.validateArray(value, fieldDef, path);
310
- default:
311
- throw new Exceptions_1.InvalidJsonPatchException(`Unknown field type "${type}" at path "${path}"`);
312
- }
313
- }
314
- static validateString(value, path) {
315
- if (typeof value !== 'string') {
316
- throw new Exceptions_1.InvalidJsonPatchException(`Value at path "${path}" must be a string`);
317
- }
318
- return true;
319
- }
320
- static validateNumber(value, path) {
321
- if (typeof value !== 'number' || isNaN(value)) {
322
- throw new Exceptions_1.InvalidJsonPatchException(`Value at path "${path}" must be a number`);
323
- }
324
- return true;
325
- }
326
- static validateBoolean(value, path) {
327
- if (typeof value !== 'boolean') {
328
- throw new Exceptions_1.InvalidJsonPatchException(`Value at path "${path}" must be a boolean`);
329
- }
330
- return true;
331
- }
332
- static validateDate(value, path) {
333
- const isValid = typeof value === 'string' && !isNaN(Date.parse(value)) || typeof value === 'number' && !isNaN(new Date(value).getTime());
334
- if (!isValid) {
335
- throw new Exceptions_1.InvalidJsonPatchException(`Value at path "${path}" must be a valid date`);
336
- }
337
- return true;
338
- }
339
- static validateObject(value, fieldDef, path) {
340
- if (typeof value !== 'object' || value === null || Array.isArray(value)) {
341
- throw new Exceptions_1.InvalidJsonPatchException(`Value at path "${path}" must be an object`);
342
- }
343
- for (const key in value) {
344
- const nestedFieldDef = fieldDef.properties[key];
345
- if (!nestedFieldDef) {
346
- throw new Exceptions_1.InvalidJsonPatchException(`Unknown property "${key}" in object at path "${path}"`);
347
- }
348
- const nestedPath = path ? `${path}.${key}` : key;
349
- this.validateValueType(value[key], nestedFieldDef, nestedPath);
350
- }
351
- return true;
352
- }
353
- static validateArray(value, fieldDef, path) {
354
- if (!Array.isArray(value)) {
355
- throw new Exceptions_1.InvalidJsonPatchException(`Value at path "${path}" must be an array`);
356
- }
357
- const { arrayType } = fieldDef;
358
- value.forEach((item, index) => {
359
- const itemPath = `${path}[${index}]`;
360
- if (arrayType === 'object') {
361
- const objDef = fieldDef;
362
- this.validateObject(item, objDef, itemPath);
363
- }
364
- else {
365
- this.validatePrimitiveType(item, arrayType, itemPath);
366
- }
367
- });
368
- return true;
369
- }
370
- static validatePrimitiveType(value, type, path) {
371
- switch (type) {
372
- case 'string':
373
- return this.validateString(value, path);
374
- case 'number':
375
- return this.validateNumber(value, path);
376
- case 'boolean':
377
- return this.validateBoolean(value, path);
378
- case 'date':
379
- return this.validateDate(value, path);
380
- default:
381
- throw new Exceptions_1.InvalidJsonPatchException(`Unknown primitive type "${type}" at path "${path}"`);
382
- }
383
- }
384
- static isObjectFieldDef(fieldDef) {
385
- return fieldDef.type === 'object';
386
- }
387
- static isArrayFieldDef(fieldDef) {
388
- return fieldDef.type === 'array';
389
- }
390
207
  }
391
208
  exports.NexxusJsonPatch = NexxusJsonPatch;
392
209
  //# sourceMappingURL=JsonPatch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"JsonPatch.js","sourceRoot":"","sources":["../../src/common/JsonPatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JsonPatch.js","sourceRoot":"","sources":["../../src/common/JsonPatch.ts"],"names":[],"mappings":";;;;AASA,qDAA2D;AAC3D,kDAA0F;AAC1F,uDAA0D;AAE1D,sDAAgC;AAEhC,MAAM,QAAQ,GAAG;IACf,SAAS;IACT,QAAQ;IACR,SAAS;IACT,MAAM;IACN,MAAM;CACE,CAAC;AAwCX,MAAa,eAAe;IAClB,KAAK,GAAY,KAAK,CAAC;IACvB,SAAS,CAA0B;IAEnC,MAAM,CAAU,eAAe,GAAmD;QACxF,OAAO,EAAE;YACP,YAAY,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,CAAC;YACxE,aAAa,EAAE,CAAC,KAAU,EAAE,QAAwB,EAAE,IAAY,EAAE,EAAE,CACpE,uCAAqB,CAAC,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC;SAC7D;QACD,MAAM,EAAE;YACN,YAAY,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;YACjC,aAAa,EAAE,CAAC,KAAU,EAAE,QAAwB,EAAE,IAAY,EAAE,EAAE;gBACpE,IAAI,QAAQ,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBAC9B,MAAM,aAAa,GAAG,QAA+B,CAAC;oBAEtD,IAAI,aAAa,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;wBACzC,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;4BAC9B,MAAM,IAAI,sCAAyB,CAAC,wBAAwB,IAAI,oCAAoC,CAAC,CAAC;wBACxG,CAAC;wBAED,MAAM,WAAW,GAAyB;4BACxC,IAAI,EAAE,QAAQ;4BACd,UAAU,EAAE,aAAa,CAAC,UAAU;4BACpC,QAAQ,EAAE,KAAK;yBAChB,CAAC;wBAEF,OAAO,uCAAqB,CAAC,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;oBACvE,CAAC;oBAED,MAAM,iBAAiB,GAAsB;wBAC3C,IAAI,EAAE,aAAa,CAAC,SAAS;wBAC7B,QAAQ,EAAE,KAAK;qBAChB,CAAC;oBAEF,OAAO,uCAAqB,CAAC,aAAa,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,CAAC,CAAC;gBAC7E,CAAC;gBAED,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;wBAC9B,MAAM,IAAI,sCAAyB,CAAC,6BAA6B,IAAI,oBAAoB,CAAC,CAAC;oBAC7F,CAAC;oBAED,OAAO,KAAK,CAAC;gBACf,CAAC;gBAGD,MAAM,IAAI,sCAAyB,CAAC,iCAAiC,QAAQ,CAAC,IAAI,cAAc,IAAI,GAAG,CAAC,CAAC;YAC3G,CAAC;SACF;QACD,OAAO,EAAE;YACP,YAAY,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;YACjC,aAAa,EAAE,CAAC,KAAU,EAAE,QAAwB,EAAE,IAAY,EAAE,EAAE;gBACpE,IAAI,QAAQ,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBAC9B,MAAM,aAAa,GAAG,QAA+B,CAAC;oBAEtD,IAAI,aAAa,CAAC,SAAS,KAAK,QAAQ,EAAE,CAAC;wBACzC,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;4BAC9B,MAAM,IAAI,sCAAyB,CAAC,wBAAwB,IAAI,oCAAoC,CAAC,CAAC;wBACxG,CAAC;wBAED,MAAM,WAAW,GAAyB;4BACxC,IAAI,EAAE,QAAQ;4BACd,UAAU,EAAE,aAAa,CAAC,UAAU;4BACpC,QAAQ,EAAE,KAAK;yBAChB,CAAC;wBAEF,OAAO,uCAAqB,CAAC,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;oBACvE,CAAC;oBAED,MAAM,iBAAiB,GAAsB;wBAC3C,IAAI,EAAE,aAAa,CAAC,SAAS;wBAC7B,QAAQ,EAAE,KAAK;qBAChB,CAAC;oBAEF,OAAO,uCAAqB,CAAC,aAAa,CAAC,KAAK,EAAE,iBAAiB,EAAE,IAAI,CAAC,CAAC;gBAC7E,CAAC;gBAED,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;wBAC9B,MAAM,IAAI,sCAAyB,CAAC,8BAA8B,IAAI,oBAAoB,CAAC,CAAC;oBAC9F,CAAC;oBAED,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,MAAM,IAAI,sCAAyB,CAAC,kCAAkC,QAAQ,CAAC,IAAI,cAAc,IAAI,GAAG,CAAC,CAAC;YAC5G,CAAC;SACF;QACD,IAAI,EAAE;YACJ,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;YAChC,aAAa,EAAE,CAAC,KAAU,EAAE,QAAwB,EAAE,IAAY,EAAE,EAAE,CACpE,uCAAqB,CAAC,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC;SAC7D;QACD,IAAI,EAAE;YACJ,YAAY,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC;YAChC,aAAa,EAAE,CAAC,KAAU,EAAE,QAAwB,EAAE,IAAY,EAAE,EAAE,CACpE,uCAAqB,CAAC,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC;SAC7D;KACF,CAAC;IAEF,YAAY,SAA+D;QACzE,IAAI,CAAC,SAAS,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAC5E,MAAM,IAAI,sCAAyB,CAAC,sBAAsB,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,sCAAyB,CAAC,qCAAqC,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3F,CAAC;QAED,IAAI,SAAS,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACrD,MAAM,IAAI,sCAAyB,CAAC,iDAAiD,CAAC,CAAC;QACzF,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,IAAI,OAAO,SAAS,CAAC,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC5E,MAAM,IAAI,sCAAyB,CAAC,kCAAkC,CAAC,CAAC;QAC1E,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,IAAI,OAAO,SAAS,CAAC,QAAQ,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9E,MAAM,IAAI,sCAAyB,CAAC,mCAAmC,CAAC,CAAC;QAC3E,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI,OAAO,SAAS,CAAC,QAAQ,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;YACxE,MAAM,IAAI,sCAAyB,CAAC,gCAAgC,CAAC,CAAC;QACxE,CAAC;QAED,IAAI,CAAC,SAAS,GAAG,EAAE,GAAG,SAAS,EAAE,QAAQ,EAAE,EAAE,GAAG,SAAS,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,CAAC;IAC7F,CAAC;IAEM,GAAG;QACR,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,sCAAyB,CAAC,yCAAyC,CAAC,CAAC;QACjF,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAEM,OAAO;QACZ,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAEM,eAAe;QACpB,MAAM,YAAY,GAA6B;YAC7C,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;YAC9B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI;YAClC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK;SACrC,CAAC;QAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACpC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAGtC,GAAG,CAAC,WAAW,CAAC,YAAY,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO,YAAY,CAAC;IACtB,CAAC;IAEM,QAAQ,CAAC,MAAsB;QACpC,MAAM,SAAS,GAAmB;YAChC,SAAS,EAAE,wCAAuB,CAAC,SAAS;YAC5C,GAAG,MAAM;SACV,CAAC;QAEF,MAAM,aAAa,GAAG,eAAe,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAGzE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpD,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAM7C,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAEhD,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;gBAChC,MAAM,IAAI,sCAAyB,CACjC,wDAAwD,WAAW,mDAAmD,CACvH,CAAC;YACJ,CAAC;YAGD,MAAM,QAAQ,GAAG,eAAe,CAAC,cAAc,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YAExE,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,MAAM,IAAI,sCAAyB,CACjC,SAAS,WAAW,8BAA8B,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,GAAG,CAClF,CAAC;YACJ,CAAC;YAGD,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxD,MAAM,IAAI,sCAAyB,CACjC,cAAc,IAAI,CAAC,SAAS,CAAC,EAAE,0BAA0B,QAAQ,CAAC,IAAI,cAAc,WAAW,GAAG,CACnG,CAAC;YACJ,CAAC;YAID,IAAI,UAAe,CAAC;YAEpB,IAAI,CAAC;gBACH,UAAU,GAAG,aAAa,CAAC,aAAa,CAAC,YAAY,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;YAChF,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,CAAC,YAAY,uCAA0B,EAAE,CAAC;oBAC5C,MAAM,IAAI,sCAAyB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;gBACjD,CAAC;gBAED,MAAM,CAAC,CAAC;YACV,CAAC;YAGD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC;YAErC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;gBAC5C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,cAAc,GAAG,EAAE,CAAC;YAC9C,CAAC;YAED,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC7D,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;IAEO,MAAM,CAAC,cAAc,CAC3B,MAAsB,EACtB,IAAY;QAEZ,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,OAAO,GAAoD,MAAM,CAAC;QAEtE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAEtB,IAAI,CAAC,CAAC,IAAI,IAAI,OAAO,CAAC,EAAE,CAAC;gBACvB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YAG/B,IAAI,CAAC,KAAK,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,OAAO,QAAQ,CAAC;YAClB,CAAC;YAGD,IAAI,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAG,QAAgC,CAAC;gBAEhD,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC;YAC9B,CAAC;iBAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACrC,MAAM,MAAM,GAAG,QAA+B,CAAC;gBAG/C,IAAI,MAAM,CAAC,SAAS,KAAK,QAAQ,IAAI,YAAY,IAAI,MAAM,EAAE,CAAC;oBAC5D,OAAO,GAAG,MAAM,CAAC,UAAW,CAAC;gBAC/B,CAAC;qBAAM,CAAC;oBAEN,OAAO,IAAI,CAAC;gBACd,CAAC;YACH,CAAC;iBAAM,CAAC;gBAEN,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;;AA9QH,0CA+QC"}