@revisium/endpoint 0.11.0-alpha.2 → 0.11.0-alpha.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 (116) hide show
  1. package/dist/endpoint-microservice/graphql/commands/handlers/create-graphql-endpoint.handler.d.ts +1 -0
  2. package/dist/endpoint-microservice/graphql/commands/handlers/create-graphql-endpoint.handler.js +11 -3
  3. package/dist/endpoint-microservice/graphql/commands/handlers/create-graphql-endpoint.handler.js.map +1 -1
  4. package/dist/endpoint-microservice/graphql/graphql-schema-converter/graphql-schema.converter.js +12 -7
  5. package/dist/endpoint-microservice/graphql/graphql-schema-converter/graphql-schema.converter.js.map +1 -1
  6. package/dist/endpoint-microservice/graphql/graphql-schema-converter/utils.d.ts +2 -1
  7. package/dist/endpoint-microservice/graphql/graphql-schema-converter/utils.js +8 -1
  8. package/dist/endpoint-microservice/graphql/graphql-schema-converter/utils.js.map +1 -1
  9. package/dist/endpoint-microservice/graphql/queries/handlers/get-graphql-schema.handler.d.ts +1 -1
  10. package/dist/endpoint-microservice/graphql/queries/handlers/get-graphql-schema.handler.js +2 -1
  11. package/dist/endpoint-microservice/graphql/queries/handlers/get-graphql-schema.handler.js.map +1 -1
  12. package/dist/endpoint-microservice/restapi/commands/handlers/create-restapi-endpoint.handler.d.ts +1 -0
  13. package/dist/endpoint-microservice/restapi/commands/handlers/create-restapi-endpoint.handler.js +11 -3
  14. package/dist/endpoint-microservice/restapi/commands/handlers/create-restapi-endpoint.handler.js.map +1 -1
  15. package/dist/endpoint-microservice/restapi/queries/handlers/get-open-api-schema.handler.js +2 -2
  16. package/dist/endpoint-microservice/restapi/queries/handlers/get-open-api-schema.handler.js.map +1 -1
  17. package/dist/endpoint-microservice/shared/converter.d.ts +1 -1
  18. package/dist/endpoint-microservice/shared/schema/index.d.ts +5 -0
  19. package/dist/endpoint-microservice/shared/schema/index.js +22 -0
  20. package/dist/endpoint-microservice/shared/schema/index.js.map +1 -0
  21. package/dist/endpoint-microservice/shared/schema/lib/createJsonSchemaStore.d.ts +5 -0
  22. package/dist/endpoint-microservice/shared/schema/lib/createJsonSchemaStore.js +56 -0
  23. package/dist/endpoint-microservice/shared/schema/lib/createJsonSchemaStore.js.map +1 -0
  24. package/dist/endpoint-microservice/shared/schema/lib/createJsonValueStore.d.ts +5 -0
  25. package/dist/endpoint-microservice/shared/schema/lib/createJsonValueStore.js +49 -0
  26. package/dist/endpoint-microservice/shared/schema/lib/createJsonValueStore.js.map +1 -0
  27. package/dist/endpoint-microservice/shared/schema/lib/index.d.ts +5 -0
  28. package/dist/endpoint-microservice/shared/schema/lib/index.js +22 -0
  29. package/dist/endpoint-microservice/shared/schema/lib/index.js.map +1 -0
  30. package/dist/endpoint-microservice/shared/schema/lib/resolveRefs.d.ts +3 -0
  31. package/dist/endpoint-microservice/shared/schema/lib/resolveRefs.js +15 -0
  32. package/dist/endpoint-microservice/shared/schema/lib/resolveRefs.js.map +1 -0
  33. package/dist/endpoint-microservice/shared/schema/lib/traverseStore.d.ts +2 -0
  34. package/dist/endpoint-microservice/shared/schema/lib/traverseStore.js +17 -0
  35. package/dist/endpoint-microservice/shared/schema/lib/traverseStore.js.map +1 -0
  36. package/dist/endpoint-microservice/shared/schema/lib/traverseValue.d.ts +2 -0
  37. package/dist/endpoint-microservice/shared/schema/lib/traverseValue.js +19 -0
  38. package/dist/endpoint-microservice/shared/schema/lib/traverseValue.js.map +1 -0
  39. package/dist/endpoint-microservice/shared/schema/model/index.d.ts +2 -0
  40. package/dist/endpoint-microservice/shared/schema/model/index.js +19 -0
  41. package/dist/endpoint-microservice/shared/schema/model/index.js.map +1 -0
  42. package/dist/endpoint-microservice/shared/schema/model/schema/index.d.ts +6 -0
  43. package/dist/endpoint-microservice/shared/schema/model/schema/index.js +23 -0
  44. package/dist/endpoint-microservice/shared/schema/model/schema/index.js.map +1 -0
  45. package/dist/endpoint-microservice/shared/schema/model/schema/json-array.store.d.ts +30 -0
  46. package/dist/endpoint-microservice/shared/schema/model/schema/json-array.store.js +74 -0
  47. package/dist/endpoint-microservice/shared/schema/model/schema/json-array.store.js.map +1 -0
  48. package/dist/endpoint-microservice/shared/schema/model/schema/json-boolean.store.d.ts +19 -0
  49. package/dist/endpoint-microservice/shared/schema/model/schema/json-boolean.store.js +44 -0
  50. package/dist/endpoint-microservice/shared/schema/model/schema/json-boolean.store.js.map +1 -0
  51. package/dist/endpoint-microservice/shared/schema/model/schema/json-number.store.d.ts +19 -0
  52. package/dist/endpoint-microservice/shared/schema/model/schema/json-number.store.js +44 -0
  53. package/dist/endpoint-microservice/shared/schema/model/schema/json-number.store.js.map +1 -0
  54. package/dist/endpoint-microservice/shared/schema/model/schema/json-object.store.d.ts +45 -0
  55. package/dist/endpoint-microservice/shared/schema/model/schema/json-object.store.js +146 -0
  56. package/dist/endpoint-microservice/shared/schema/model/schema/json-object.store.js.map +1 -0
  57. package/dist/endpoint-microservice/shared/schema/model/schema/json-schema.store.d.ts +3 -0
  58. package/dist/endpoint-microservice/shared/schema/model/schema/json-schema.store.js +3 -0
  59. package/dist/endpoint-microservice/shared/schema/model/schema/json-schema.store.js.map +1 -0
  60. package/dist/endpoint-microservice/shared/schema/model/schema/json-string.store.d.ts +20 -0
  61. package/dist/endpoint-microservice/shared/schema/model/schema/json-string.store.js +48 -0
  62. package/dist/endpoint-microservice/shared/schema/model/schema/json-string.store.js.map +1 -0
  63. package/dist/endpoint-microservice/shared/schema/model/value/index.d.ts +7 -0
  64. package/dist/endpoint-microservice/shared/schema/model/value/index.js +24 -0
  65. package/dist/endpoint-microservice/shared/schema/model/value/index.js.map +1 -0
  66. package/dist/endpoint-microservice/shared/schema/model/value/json-array-value.store.d.ts +15 -0
  67. package/dist/endpoint-microservice/shared/schema/model/value/json-array-value.store.js +47 -0
  68. package/dist/endpoint-microservice/shared/schema/model/value/json-array-value.store.js.map +1 -0
  69. package/dist/endpoint-microservice/shared/schema/model/value/json-boolean-value.store.d.ts +11 -0
  70. package/dist/endpoint-microservice/shared/schema/model/value/json-boolean-value.store.js +19 -0
  71. package/dist/endpoint-microservice/shared/schema/model/value/json-boolean-value.store.js.map +1 -0
  72. package/dist/endpoint-microservice/shared/schema/model/value/json-number-value.store.d.ts +11 -0
  73. package/dist/endpoint-microservice/shared/schema/model/value/json-number-value.store.js +19 -0
  74. package/dist/endpoint-microservice/shared/schema/model/value/json-number-value.store.js.map +1 -0
  75. package/dist/endpoint-microservice/shared/schema/model/value/json-object-value.store.d.ts +18 -0
  76. package/dist/endpoint-microservice/shared/schema/model/value/json-object-value.store.js +60 -0
  77. package/dist/endpoint-microservice/shared/schema/model/value/json-object-value.store.js.map +1 -0
  78. package/dist/endpoint-microservice/shared/schema/model/value/json-string-value.store.d.ts +12 -0
  79. package/dist/endpoint-microservice/shared/schema/model/value/json-string-value.store.js +22 -0
  80. package/dist/endpoint-microservice/shared/schema/model/value/json-string-value.store.js.map +1 -0
  81. package/dist/endpoint-microservice/shared/schema/model/value/json-value.store.d.ts +4 -0
  82. package/dist/endpoint-microservice/shared/{types/schema.types.js → schema/model/value/json-value.store.js} +1 -1
  83. package/dist/endpoint-microservice/shared/schema/model/value/json-value.store.js.map +1 -0
  84. package/dist/endpoint-microservice/shared/schema/model/value/value-transformation.d.ts +13 -0
  85. package/dist/endpoint-microservice/shared/schema/model/value/value-transformation.js +110 -0
  86. package/dist/endpoint-microservice/shared/schema/model/value/value-transformation.js.map +1 -0
  87. package/dist/endpoint-microservice/shared/schema/plugins/file-schema.d.ts +4 -0
  88. package/dist/endpoint-microservice/shared/schema/plugins/file-schema.js +62 -0
  89. package/dist/endpoint-microservice/shared/schema/plugins/file-schema.js.map +1 -0
  90. package/dist/endpoint-microservice/shared/schema/plugins/index.d.ts +1 -0
  91. package/dist/endpoint-microservice/shared/schema/plugins/index.js +18 -0
  92. package/dist/endpoint-microservice/shared/schema/plugins/index.js.map +1 -0
  93. package/dist/{__tests__ → endpoint-microservice/shared/schema}/schema.mocks.d.ts +2 -2
  94. package/dist/{__tests__ → endpoint-microservice/shared/schema}/schema.mocks.js +11 -6
  95. package/dist/endpoint-microservice/shared/schema/schema.mocks.js.map +1 -0
  96. package/dist/endpoint-microservice/shared/schema/types/index.d.ts +3 -0
  97. package/dist/endpoint-microservice/shared/schema/types/index.js +20 -0
  98. package/dist/endpoint-microservice/shared/schema/types/index.js.map +1 -0
  99. package/dist/endpoint-microservice/shared/{types → schema/types}/json-patch.types.d.ts +1 -1
  100. package/dist/endpoint-microservice/shared/schema/types/json-patch.types.js.map +1 -0
  101. package/dist/endpoint-microservice/shared/schema/types/json.types.js.map +1 -0
  102. package/dist/endpoint-microservice/shared/{types → schema/types}/schema.types.d.ts +16 -6
  103. package/dist/endpoint-microservice/shared/schema/types/schema.types.js +12 -0
  104. package/dist/endpoint-microservice/shared/schema/types/schema.types.js.map +1 -0
  105. package/dist/endpoint-microservice/shared/schema-ids.consts.d.ts +3 -0
  106. package/dist/endpoint-microservice/shared/schema-ids.consts.js +8 -0
  107. package/dist/endpoint-microservice/shared/schema-ids.consts.js.map +1 -0
  108. package/dist/tsconfig.build.tsbuildinfo +1 -1
  109. package/package.json +1 -1
  110. package/dist/__tests__/schema.mocks.js.map +0 -1
  111. package/dist/endpoint-microservice/shared/types/json-patch.types.js.map +0 -1
  112. package/dist/endpoint-microservice/shared/types/json.types.js.map +0 -1
  113. package/dist/endpoint-microservice/shared/types/schema.types.js.map +0 -1
  114. /package/dist/endpoint-microservice/shared/{types → schema/types}/json-patch.types.js +0 -0
  115. /package/dist/endpoint-microservice/shared/{types → schema/types}/json.types.d.ts +0 -0
  116. /package/dist/endpoint-microservice/shared/{types → schema/types}/json.types.js +0 -0
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.traverseValue = void 0;
4
+ const schema_1 = require("..");
5
+ const traverseValue = (store, callback) => {
6
+ callback(store);
7
+ if (store.type === schema_1.JsonSchemaTypeName.Object) {
8
+ Object.values(store.value).forEach((item) => {
9
+ (0, exports.traverseValue)(item, callback);
10
+ });
11
+ }
12
+ else if (store.type === schema_1.JsonSchemaTypeName.Array) {
13
+ store.value.forEach((itemValue) => {
14
+ (0, exports.traverseValue)(itemValue, callback);
15
+ });
16
+ }
17
+ };
18
+ exports.traverseValue = traverseValue;
19
+ //# sourceMappingURL=traverseValue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"traverseValue.js","sourceRoot":"","sources":["../../../../../src/endpoint-microservice/shared/schema/lib/traverseValue.ts"],"names":[],"mappings":";;;AAAA,+BAGiD;AAE1C,MAAM,aAAa,GAAG,CAC3B,KAAqB,EACrB,QAAwC,EACxC,EAAE;IACF,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEhB,IAAI,KAAK,CAAC,IAAI,KAAK,2BAAkB,CAAC,MAAM,EAAE,CAAC;QAC7C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC1C,IAAA,qBAAa,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,KAAK,CAAC,IAAI,KAAK,2BAAkB,CAAC,KAAK,EAAE,CAAC;QACnD,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;YAChC,IAAA,qBAAa,EAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC;AAfW,QAAA,aAAa,iBAexB"}
@@ -0,0 +1,2 @@
1
+ export * from './schema';
2
+ export * from './value';
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./schema"), exports);
18
+ __exportStar(require("./value"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/endpoint-microservice/shared/schema/model/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,0CAAwB"}
@@ -0,0 +1,6 @@
1
+ export * from './json-string.store';
2
+ export * from './json-number.store';
3
+ export * from './json-boolean.store';
4
+ export * from './json-object.store';
5
+ export * from './json-array.store';
6
+ export * from './json-schema.store';
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./json-string.store"), exports);
18
+ __exportStar(require("./json-number.store"), exports);
19
+ __exportStar(require("./json-boolean.store"), exports);
20
+ __exportStar(require("./json-object.store"), exports);
21
+ __exportStar(require("./json-array.store"), exports);
22
+ __exportStar(require("./json-schema.store"), exports);
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/endpoint-microservice/shared/schema/model/schema/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,sDAAoC;AACpC,uDAAqC;AACrC,sDAAoC;AACpC,qDAAmC;AACnC,sDAAoC"}
@@ -0,0 +1,30 @@
1
+ import { JsonSchemaStore, JsonArrayValueStore, JsonArray, JsonArraySchema, JsonRefSchema, JsonSchemaTypeName } from '../../../../../endpoint-microservice/shared/schema';
2
+ export type MigrateItemsEvent = {
3
+ items: JsonSchemaStore;
4
+ previousItems: JsonSchemaStore;
5
+ };
6
+ export type ReplaceItemsEvent = {
7
+ items: JsonSchemaStore;
8
+ previousItems: JsonSchemaStore;
9
+ };
10
+ export declare class JsonArrayStore implements JsonArraySchema {
11
+ private _items;
12
+ readonly nodeId: string;
13
+ readonly type = JsonSchemaTypeName.Array;
14
+ $ref: string;
15
+ name: string;
16
+ parent: JsonSchemaStore | null;
17
+ default: JsonArray[];
18
+ private readonly valuesMap;
19
+ constructor(_items: JsonSchemaStore, nodeId?: string);
20
+ get items(): JsonSchemaStore;
21
+ registerValue(value: JsonArrayValueStore): number;
22
+ getValue(rowId: string, index?: number): JsonArrayValueStore | undefined;
23
+ migrateItems(items: JsonSchemaStore): void;
24
+ replaceItems(items: JsonSchemaStore): void;
25
+ getPlainSchema(options?: {
26
+ skip$Ref?: boolean;
27
+ }): JsonArraySchema | JsonRefSchema;
28
+ private getOrCreateValues;
29
+ private iterValues;
30
+ }
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JsonArrayStore = void 0;
4
+ const nanoid_1 = require("nanoid");
5
+ const schema_1 = require("../..");
6
+ class JsonArrayStore {
7
+ constructor(_items, nodeId = (0, nanoid_1.nanoid)()) {
8
+ this._items = _items;
9
+ this.nodeId = nodeId;
10
+ this.type = schema_1.JsonSchemaTypeName.Array;
11
+ this.$ref = '';
12
+ this.name = '';
13
+ this.parent = null;
14
+ this.default = [];
15
+ this.valuesMap = new Map();
16
+ this.items.parent = this;
17
+ }
18
+ get items() {
19
+ return this._items;
20
+ }
21
+ registerValue(value) {
22
+ const length = this.getOrCreateValues(value.rowId).push(value);
23
+ return length - 1;
24
+ }
25
+ getValue(rowId, index = 0) {
26
+ return this.getOrCreateValues(rowId)[index];
27
+ }
28
+ migrateItems(items) {
29
+ const previousItems = this._items;
30
+ previousItems.parent = null;
31
+ this._items = items;
32
+ this._items.parent = this;
33
+ const event = { items, previousItems };
34
+ for (const value of this.iterValues()) {
35
+ value.migrateItems(event);
36
+ }
37
+ }
38
+ replaceItems(items) {
39
+ const previousItems = this._items;
40
+ previousItems.parent = null;
41
+ this._items = items;
42
+ this._items.parent = this;
43
+ const event = { items, previousItems };
44
+ for (const value of this.iterValues()) {
45
+ value.replaceItems(event);
46
+ }
47
+ }
48
+ getPlainSchema(options) {
49
+ if (this.$ref && options?.skip$Ref !== true) {
50
+ return { $ref: this.$ref };
51
+ }
52
+ return {
53
+ type: this.type,
54
+ items: this.items.getPlainSchema(options),
55
+ };
56
+ }
57
+ getOrCreateValues(rowId) {
58
+ let values = this.valuesMap.get(rowId);
59
+ if (!values) {
60
+ values = [];
61
+ this.valuesMap.set(rowId, values);
62
+ }
63
+ return values;
64
+ }
65
+ *iterValues() {
66
+ for (const values of this.valuesMap.values()) {
67
+ for (const value of values) {
68
+ yield value;
69
+ }
70
+ }
71
+ }
72
+ }
73
+ exports.JsonArrayStore = JsonArrayStore;
74
+ //# sourceMappingURL=json-array.store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-array.store.js","sourceRoot":"","sources":["../../../../../../src/endpoint-microservice/shared/schema/model/schema/json-array.store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /// <reference types="node" />
2
+ import { EventEmitter } from 'node:events';
3
+ import { JsonSchemaStore, JsonBooleanValueStore, JsonRefSchema, JsonSchemaTypeName, JsonBooleanSchema } from '../../../../../endpoint-microservice/shared/schema';
4
+ export declare class JsonBooleanStore extends EventEmitter implements JsonBooleanSchema {
5
+ readonly nodeId: string;
6
+ readonly type = JsonSchemaTypeName.Boolean;
7
+ $ref: string;
8
+ name: string;
9
+ parent: JsonSchemaStore | null;
10
+ default: boolean;
11
+ private readonly valuesMap;
12
+ constructor(nodeId?: string);
13
+ registerValue(value: JsonBooleanValueStore): number;
14
+ getValue(rowId: string, index?: number): JsonBooleanValueStore | undefined;
15
+ getPlainSchema(options?: {
16
+ skip$Ref?: boolean;
17
+ }): JsonBooleanSchema | JsonRefSchema;
18
+ private getOrCreateValues;
19
+ }
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JsonBooleanStore = void 0;
4
+ const nanoid_1 = require("nanoid");
5
+ const node_events_1 = require("node:events");
6
+ const schema_1 = require("../..");
7
+ class JsonBooleanStore extends node_events_1.EventEmitter {
8
+ constructor(nodeId = (0, nanoid_1.nanoid)()) {
9
+ super();
10
+ this.nodeId = nodeId;
11
+ this.type = schema_1.JsonSchemaTypeName.Boolean;
12
+ this.$ref = '';
13
+ this.name = '';
14
+ this.parent = null;
15
+ this.default = false;
16
+ this.valuesMap = new Map();
17
+ }
18
+ registerValue(value) {
19
+ const length = this.getOrCreateValues(value.rowId).push(value);
20
+ return length - 1;
21
+ }
22
+ getValue(rowId, index = 0) {
23
+ return this.getOrCreateValues(rowId)[index];
24
+ }
25
+ getPlainSchema(options) {
26
+ if (this.$ref && options?.skip$Ref !== true) {
27
+ return { $ref: this.$ref };
28
+ }
29
+ return {
30
+ type: this.type,
31
+ default: this.default,
32
+ };
33
+ }
34
+ getOrCreateValues(rowId) {
35
+ let values = this.valuesMap.get(rowId);
36
+ if (!values) {
37
+ values = [];
38
+ this.valuesMap.set(rowId, values);
39
+ }
40
+ return values;
41
+ }
42
+ }
43
+ exports.JsonBooleanStore = JsonBooleanStore;
44
+ //# sourceMappingURL=json-boolean.store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-boolean.store.js","sourceRoot":"","sources":["../../../../../../src/endpoint-microservice/shared/schema/model/schema/json-boolean.store.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAChC,6CAA2C;AAC3C,kCAMiD;AAEjD,MAAa,gBACX,SAAQ,0BAAY;IAgBpB,YAA4B,SAAiB,IAAA,eAAM,GAAE;QACnD,KAAK,EAAE,CAAC;QADkB,WAAM,GAAN,MAAM,CAAmB;QAbrC,SAAI,GAAG,2BAAkB,CAAC,OAAO,CAAC;QAE3C,SAAI,GAAW,EAAE,CAAC;QAClB,SAAI,GAAW,EAAE,CAAC;QAClB,WAAM,GAA2B,IAAI,CAAC;QAEtC,YAAO,GAAY,KAAK,CAAC;QAEf,cAAS,GAAyC,IAAI,GAAG,EAGvE,CAAC;IAIJ,CAAC;IAEM,aAAa,CAAC,KAA4B;QAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/D,OAAO,MAAM,GAAG,CAAC,CAAC;IACpB,CAAC;IAEM,QAAQ,CACb,KAAa,EACb,QAAgB,CAAC;QAEjB,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;IAEM,cAAc,CAAC,OAErB;QACC,IAAI,IAAI,CAAC,IAAI,IAAI,OAAO,EAAE,QAAQ,KAAK,IAAI,EAAE,CAAC;YAC5C,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QAC7B,CAAC;QAED,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC;IACJ,CAAC;IAEO,iBAAiB,CAAC,KAAa;QACrC,IAAI,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAEvC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,EAAE,CAAC;YACZ,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACpC,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAxDD,4CAwDC"}
@@ -0,0 +1,19 @@
1
+ /// <reference types="node" />
2
+ import { EventEmitter } from 'node:events';
3
+ import { JsonSchemaStore, JsonNumberValueStore, JsonNumberSchema, JsonRefSchema, JsonSchemaTypeName } from '../../../../../endpoint-microservice/shared/schema';
4
+ export declare class JsonNumberStore extends EventEmitter implements JsonNumberSchema {
5
+ readonly nodeId: string;
6
+ readonly type = JsonSchemaTypeName.Number;
7
+ $ref: string;
8
+ name: string;
9
+ parent: JsonSchemaStore | null;
10
+ default: number;
11
+ private readonly valuesMap;
12
+ constructor(nodeId?: string);
13
+ registerValue(value: JsonNumberValueStore): number;
14
+ getValue(rowId: string, index?: number): JsonNumberValueStore | undefined;
15
+ getPlainSchema(options?: {
16
+ skip$Ref?: boolean;
17
+ }): JsonNumberSchema | JsonRefSchema;
18
+ private getOrCreateValues;
19
+ }
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JsonNumberStore = void 0;
4
+ const nanoid_1 = require("nanoid");
5
+ const node_events_1 = require("node:events");
6
+ const schema_1 = require("../..");
7
+ class JsonNumberStore extends node_events_1.EventEmitter {
8
+ constructor(nodeId = (0, nanoid_1.nanoid)()) {
9
+ super();
10
+ this.nodeId = nodeId;
11
+ this.type = schema_1.JsonSchemaTypeName.Number;
12
+ this.$ref = '';
13
+ this.name = '';
14
+ this.parent = null;
15
+ this.default = 0;
16
+ this.valuesMap = new Map();
17
+ }
18
+ registerValue(value) {
19
+ const length = this.getOrCreateValues(value.rowId).push(value);
20
+ return length - 1;
21
+ }
22
+ getValue(rowId, index = 0) {
23
+ return this.getOrCreateValues(rowId)[index];
24
+ }
25
+ getPlainSchema(options) {
26
+ if (this.$ref && options?.skip$Ref !== true) {
27
+ return { $ref: this.$ref };
28
+ }
29
+ return {
30
+ type: this.type,
31
+ default: this.default,
32
+ };
33
+ }
34
+ getOrCreateValues(rowId) {
35
+ let values = this.valuesMap.get(rowId);
36
+ if (!values) {
37
+ values = [];
38
+ this.valuesMap.set(rowId, values);
39
+ }
40
+ return values;
41
+ }
42
+ }
43
+ exports.JsonNumberStore = JsonNumberStore;
44
+ //# sourceMappingURL=json-number.store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-number.store.js","sourceRoot":"","sources":["../../../../../../src/endpoint-microservice/shared/schema/model/schema/json-number.store.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAChC,6CAA2C;AAC3C,kCAMiD;AAEjD,MAAa,eAAgB,SAAQ,0BAAY;IAc/C,YAA4B,SAAiB,IAAA,eAAM,GAAE;QACnD,KAAK,EAAE,CAAC;QADkB,WAAM,GAAN,MAAM,CAAmB;QAbrC,SAAI,GAAG,2BAAkB,CAAC,MAAM,CAAC;QAE1C,SAAI,GAAW,EAAE,CAAC;QAClB,SAAI,GAAW,EAAE,CAAC;QAClB,WAAM,GAA2B,IAAI,CAAC;QAEtC,YAAO,GAAW,CAAC,CAAC;QAEV,cAAS,GAAwC,IAAI,GAAG,EAGtE,CAAC;IAIJ,CAAC;IAEM,aAAa,CAAC,KAA2B;QAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/D,OAAO,MAAM,GAAG,CAAC,CAAC;IACpB,CAAC;IAEM,QAAQ,CACb,KAAa,EACb,QAAgB,CAAC;QAEjB,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;IAEM,cAAc,CAAC,OAErB;QACC,IAAI,IAAI,CAAC,IAAI,IAAI,OAAO,EAAE,QAAQ,KAAK,IAAI,EAAE,CAAC;YAC5C,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QAC7B,CAAC;QAED,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC;IACJ,CAAC;IAEO,iBAAiB,CAAC,KAAa;QACrC,IAAI,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAEvC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,EAAE,CAAC;YACZ,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACpC,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AArDD,0CAqDC"}
@@ -0,0 +1,45 @@
1
+ import { JsonSchemaStore, JsonObjectValueStore, JsonObject, JsonObjectSchema, JsonRefSchema, JsonSchemaTypeName } from '../../../../../endpoint-microservice/shared/schema';
2
+ export type AddedPropertyEvent = {
3
+ name: string;
4
+ property: JsonSchemaStore;
5
+ };
6
+ export type MigratePropertyEvent = {
7
+ name: string;
8
+ property: JsonSchemaStore;
9
+ previousProperty: JsonSchemaStore;
10
+ };
11
+ export type RemovedPropertyEvent = {
12
+ name: string;
13
+ property: JsonSchemaStore;
14
+ };
15
+ export type ChangeNameEvent = {
16
+ fromName: string;
17
+ toName: string;
18
+ property: JsonSchemaStore;
19
+ };
20
+ export declare class JsonObjectStore implements JsonObjectSchema {
21
+ readonly nodeId: string;
22
+ readonly type = JsonSchemaTypeName.Object;
23
+ $ref: string;
24
+ name: string;
25
+ parent: JsonSchemaStore | null;
26
+ default: JsonObject;
27
+ readonly additionalProperties = false;
28
+ readonly required: string[];
29
+ readonly properties: Record<string, JsonSchemaStore>;
30
+ private readonly valuesMap;
31
+ constructor(nodeId?: string);
32
+ get empty(): boolean;
33
+ registerValue(value: JsonObjectValueStore): number;
34
+ getValue(rowId: string, index?: number): JsonObjectValueStore | undefined;
35
+ addPropertyWithStore(name: string, store: JsonSchemaStore): JsonSchemaStore;
36
+ migratePropertyWithStore(name: string, store: JsonSchemaStore): JsonSchemaStore;
37
+ changeName(fromName: string, toName: string): void;
38
+ removeProperty(name: string): void;
39
+ getProperty(name: string): JsonSchemaStore | undefined;
40
+ getPlainSchema(options?: {
41
+ skip$Ref?: boolean;
42
+ }): JsonObjectSchema | JsonRefSchema;
43
+ private getOrCreateValues;
44
+ private iterValues;
45
+ }
@@ -0,0 +1,146 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JsonObjectStore = void 0;
4
+ const nanoid_1 = require("nanoid");
5
+ const schema_1 = require("../..");
6
+ class JsonObjectStore {
7
+ constructor(nodeId = (0, nanoid_1.nanoid)()) {
8
+ this.nodeId = nodeId;
9
+ this.type = schema_1.JsonSchemaTypeName.Object;
10
+ this.$ref = '';
11
+ this.name = '';
12
+ this.parent = null;
13
+ this.default = {};
14
+ this.additionalProperties = false;
15
+ this.required = [];
16
+ this.properties = {};
17
+ this.valuesMap = new Map();
18
+ }
19
+ get empty() {
20
+ return Object.keys(this.properties).length === 0;
21
+ }
22
+ registerValue(value) {
23
+ const length = this.getOrCreateValues(value.rowId).push(value);
24
+ return length - 1;
25
+ }
26
+ getValue(rowId, index = 0) {
27
+ return this.getOrCreateValues(rowId)[index];
28
+ }
29
+ addPropertyWithStore(name, store) {
30
+ if (this.properties[name] || this.required.includes(name)) {
31
+ throw new Error('this name already exists');
32
+ }
33
+ store.parent = this;
34
+ store.name = name;
35
+ this.required.push(name);
36
+ this.required.sort((a, b) => a.localeCompare(b));
37
+ this.properties[name] = store;
38
+ this.default[name] = store.default;
39
+ const event = { name, property: store };
40
+ for (const value of this.iterValues()) {
41
+ value.addProperty(event);
42
+ }
43
+ return store;
44
+ }
45
+ migratePropertyWithStore(name, store) {
46
+ const item = this.properties[name];
47
+ if (!item) {
48
+ throw new Error('this name does not exist');
49
+ }
50
+ item.parent = null;
51
+ store.parent = this;
52
+ store.name = name;
53
+ this.properties[name] = store;
54
+ this.default[name] = store.default;
55
+ const event = {
56
+ name,
57
+ property: store,
58
+ previousProperty: item,
59
+ };
60
+ for (const value of this.iterValues()) {
61
+ value.migrateProperty(event);
62
+ }
63
+ return store;
64
+ }
65
+ changeName(fromName, toName) {
66
+ const item = this.properties[fromName];
67
+ if (!item) {
68
+ throw new Error('this fromName does not exist');
69
+ }
70
+ delete this.properties[fromName];
71
+ delete this.default[fromName];
72
+ const foundRequiredIndex = this.required.findIndex((required) => required === fromName);
73
+ if (foundRequiredIndex !== -1) {
74
+ this.required.splice(foundRequiredIndex, 1);
75
+ }
76
+ if (!this.required.includes(toName)) {
77
+ this.required.push(toName);
78
+ this.required.sort((a, b) => a.localeCompare(b));
79
+ }
80
+ this.properties[toName] = item;
81
+ this.default[toName] = item.default;
82
+ const event = {
83
+ fromName,
84
+ toName,
85
+ property: item,
86
+ };
87
+ for (const value of this.iterValues()) {
88
+ value.changeName(event);
89
+ }
90
+ }
91
+ removeProperty(name) {
92
+ const item = this.properties[name];
93
+ if (!item) {
94
+ throw new Error('this name does not exist');
95
+ }
96
+ item.parent = null;
97
+ item.name = '';
98
+ delete this.properties[name];
99
+ delete this.default[name];
100
+ const foundRequiredIndex = this.required.findIndex((required) => required === name);
101
+ if (foundRequiredIndex !== -1) {
102
+ this.required.splice(foundRequiredIndex, 1);
103
+ }
104
+ const event = {
105
+ name,
106
+ property: item,
107
+ };
108
+ for (const value of this.iterValues()) {
109
+ value.removeProperty(event);
110
+ }
111
+ }
112
+ getProperty(name) {
113
+ return this.properties[name];
114
+ }
115
+ getPlainSchema(options) {
116
+ if (this.$ref && options?.skip$Ref !== true) {
117
+ return { $ref: this.$ref };
118
+ }
119
+ return {
120
+ type: this.type,
121
+ additionalProperties: this.additionalProperties,
122
+ required: this.required,
123
+ properties: Object.entries(this.properties).reduce((result, [name, store]) => {
124
+ result[name] = store.getPlainSchema(options);
125
+ return result;
126
+ }, {}),
127
+ };
128
+ }
129
+ getOrCreateValues(rowId) {
130
+ let values = this.valuesMap.get(rowId);
131
+ if (!values) {
132
+ values = [];
133
+ this.valuesMap.set(rowId, values);
134
+ }
135
+ return values;
136
+ }
137
+ *iterValues() {
138
+ for (const values of this.valuesMap.values()) {
139
+ for (const value of values) {
140
+ yield value;
141
+ }
142
+ }
143
+ }
144
+ }
145
+ exports.JsonObjectStore = JsonObjectStore;
146
+ //# sourceMappingURL=json-object.store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-object.store.js","sourceRoot":"","sources":["../../../../../../src/endpoint-microservice/shared/schema/model/schema/json-object.store.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAChC,kCAQiD;AAejD,MAAa,eAAe;IAiB1B,YAA4B,SAAiB,IAAA,eAAM,GAAE;QAAzB,WAAM,GAAN,MAAM,CAAmB;QAhBrC,SAAI,GAAG,2BAAkB,CAAC,MAAM,CAAC;QAE1C,SAAI,GAAW,EAAE,CAAC;QAClB,SAAI,GAAW,EAAE,CAAC;QAClB,WAAM,GAA2B,IAAI,CAAC;QACtC,YAAO,GAAe,EAAE,CAAC;QAEhB,yBAAoB,GAAG,KAAK,CAAC;QAC7B,aAAQ,GAAa,EAAE,CAAC;QACxB,eAAU,GAAoC,EAAE,CAAC;QAEhD,cAAS,GAAwC,IAAI,GAAG,EAGtE,CAAC;IAEoD,CAAC;IAEzD,IAAW,KAAK;QACd,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;IACnD,CAAC;IAEM,aAAa,CAAC,KAA2B;QAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/D,OAAO,MAAM,GAAG,CAAC,CAAC;IACpB,CAAC;IAEM,QAAQ,CACb,KAAa,EACb,QAAgB,CAAC;QAEjB,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;IAEM,oBAAoB,CAAC,IAAY,EAAE,KAAsB;QAC9D,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1D,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QAED,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;QACpB,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;QAElB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QAEjD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;QAEnC,MAAM,KAAK,GAAuB,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAE5D,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;YACtC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,wBAAwB,CAAC,IAAY,EAAE,KAAsB;QAClE,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAEnC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QAEnB,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;QACpB,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC;QAElB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;QAEnC,MAAM,KAAK,GAAyB;YAClC,IAAI;YACJ,QAAQ,EAAE,KAAK;YACf,gBAAgB,EAAE,IAAI;SACvB,CAAC;QAEF,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;YACtC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,UAAU,CAAC,QAAgB,EAAE,MAAc;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAEvC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAClD,CAAC;QAGD,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACjC,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAE9B,MAAM,kBAAkB,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAChD,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,KAAK,QAAQ,CACpC,CAAC;QAEF,IAAI,kBAAkB,KAAK,CAAC,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;QAC9C,CAAC;QAGD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC3B,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;QAC/B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;QAEpC,MAAM,KAAK,GAAoB;YAC7B,QAAQ;YACR,MAAM;YACN,QAAQ,EAAE,IAAI;SACf,CAAC;QAEF,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;YACtC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAEM,cAAc,CAAC,IAAY;QAChC,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAEnC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;QAEf,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAE1B,MAAM,kBAAkB,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAChD,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,KAAK,IAAI,CAChC,CAAC;QAEF,IAAI,kBAAkB,KAAK,CAAC,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,KAAK,GAAyB;YAClC,IAAI;YACJ,QAAQ,EAAE,IAAI;SACf,CAAC;QAEF,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;YACtC,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IAEM,WAAW,CAAC,IAAY;QAC7B,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAEM,cAAc,CAAC,OAErB;QACC,IAAI,IAAI,CAAC,IAAI,IAAI,OAAO,EAAE,QAAQ,KAAK,IAAI,EAAE,CAAC;YAC5C,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QAC7B,CAAC;QAED,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;YAC/C,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,UAAU,EAAE,MAAM,CAAC,OAAO,CAAkB,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAEjE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE;gBAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;gBAC7C,OAAO,MAAM,CAAC;YAChB,CAAC,EAAE,EAAE,CAAC;SACP,CAAC;IACJ,CAAC;IAEO,iBAAiB,CAAC,KAAa;QACrC,IAAI,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAEvC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,EAAE,CAAC;YACZ,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACpC,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,CAAC,UAAU;QACjB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC;YAC7C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;IACH,CAAC;CACF;AAtMD,0CAsMC"}
@@ -0,0 +1,3 @@
1
+ import { JsonArrayStore, JsonBooleanStore, JsonNumberStore, JsonObjectStore, JsonStringStore } from '../../../../../endpoint-microservice/shared/schema';
2
+ export type JsonSchemaStorePrimitives = JsonStringStore | JsonNumberStore | JsonBooleanStore;
3
+ export type JsonSchemaStore = JsonObjectStore | JsonArrayStore | JsonSchemaStorePrimitives;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=json-schema.store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-schema.store.js","sourceRoot":"","sources":["../../../../../../src/endpoint-microservice/shared/schema/model/schema/json-schema.store.ts"],"names":[],"mappings":""}
@@ -0,0 +1,20 @@
1
+ /// <reference types="node" />
2
+ import { EventEmitter } from 'node:events';
3
+ import { JsonSchemaStore, JsonStringValueStore, JsonRefSchema, JsonSchemaTypeName, JsonStringSchema } from '../../../../../endpoint-microservice/shared/schema';
4
+ export declare class JsonStringStore extends EventEmitter implements JsonStringSchema {
5
+ readonly nodeId: string;
6
+ readonly type = JsonSchemaTypeName.String;
7
+ $ref: string;
8
+ name: string;
9
+ parent: JsonSchemaStore | null;
10
+ default: string;
11
+ foreignKey?: string;
12
+ private readonly valuesMap;
13
+ constructor(nodeId?: string);
14
+ registerValue(value: JsonStringValueStore): number;
15
+ getValue(rowId: string, index?: number): JsonStringValueStore | undefined;
16
+ getPlainSchema(options?: {
17
+ skip$Ref?: boolean;
18
+ }): JsonStringSchema | JsonRefSchema;
19
+ private getOrCreateValues;
20
+ }
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.JsonStringStore = void 0;
4
+ const nanoid_1 = require("nanoid");
5
+ const node_events_1 = require("node:events");
6
+ const schema_1 = require("../..");
7
+ class JsonStringStore extends node_events_1.EventEmitter {
8
+ constructor(nodeId = (0, nanoid_1.nanoid)()) {
9
+ super();
10
+ this.nodeId = nodeId;
11
+ this.type = schema_1.JsonSchemaTypeName.String;
12
+ this.$ref = '';
13
+ this.name = '';
14
+ this.parent = null;
15
+ this.default = '';
16
+ this.valuesMap = new Map();
17
+ }
18
+ registerValue(value) {
19
+ const length = this.getOrCreateValues(value.rowId).push(value);
20
+ return length - 1;
21
+ }
22
+ getValue(rowId, index = 0) {
23
+ return this.getOrCreateValues(rowId)[index];
24
+ }
25
+ getPlainSchema(options) {
26
+ if (this.$ref && options?.skip$Ref !== true) {
27
+ return { $ref: this.$ref };
28
+ }
29
+ const schema = {
30
+ type: this.type,
31
+ default: this.default,
32
+ };
33
+ if (this.foreignKey) {
34
+ schema.foreignKey = this.foreignKey;
35
+ }
36
+ return schema;
37
+ }
38
+ getOrCreateValues(rowId) {
39
+ let values = this.valuesMap.get(rowId);
40
+ if (!values) {
41
+ values = [];
42
+ this.valuesMap.set(rowId, values);
43
+ }
44
+ return values;
45
+ }
46
+ }
47
+ exports.JsonStringStore = JsonStringStore;
48
+ //# sourceMappingURL=json-string.store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json-string.store.js","sourceRoot":"","sources":["../../../../../../src/endpoint-microservice/shared/schema/model/schema/json-string.store.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAChC,6CAA2C;AAC3C,kCAMiD;AAEjD,MAAa,eAAgB,SAAQ,0BAAY;IAc/C,YAA4B,SAAiB,IAAA,eAAM,GAAE;QACnD,KAAK,EAAE,CAAC;QADkB,WAAM,GAAN,MAAM,CAAmB;QAbrC,SAAI,GAAG,2BAAkB,CAAC,MAAM,CAAC;QAE1C,SAAI,GAAW,EAAE,CAAC;QAClB,SAAI,GAAW,EAAE,CAAC;QAClB,WAAM,GAA2B,IAAI,CAAC;QAEtC,YAAO,GAAW,EAAE,CAAC;QAEX,cAAS,GAAwC,IAAI,GAAG,EAGtE,CAAC;IAIJ,CAAC;IAEM,aAAa,CAAC,KAA2B;QAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/D,OAAO,MAAM,GAAG,CAAC,CAAC;IACpB,CAAC;IAEM,QAAQ,CACb,KAAa,EACb,QAAgB,CAAC;QAEjB,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;IAEM,cAAc,CAAC,OAErB;QACC,IAAI,IAAI,CAAC,IAAI,IAAI,OAAO,EAAE,QAAQ,KAAK,IAAI,EAAE,CAAC;YAC5C,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QAC7B,CAAC;QAED,MAAM,MAAM,GAAqB;YAC/B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;SACtB,CAAC;QAEF,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACtC,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,iBAAiB,CAAC,KAAa;QACrC,IAAI,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAEvC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,EAAE,CAAC;YACZ,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACpC,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AA3DD,0CA2DC"}
@@ -0,0 +1,7 @@
1
+ export * from './json-string-value.store';
2
+ export * from './json-number-value.store';
3
+ export * from './json-boolean-value.store';
4
+ export * from './json-object-value.store';
5
+ export * from './json-array-value.store';
6
+ export * from './json-value.store';
7
+ export * from './value-transformation';