@revisium/endpoint 0.11.0-alpha.1 → 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.
- package/dist/endpoint-microservice/graphql/commands/handlers/create-graphql-endpoint.handler.d.ts +1 -0
- package/dist/endpoint-microservice/graphql/commands/handlers/create-graphql-endpoint.handler.js +11 -3
- package/dist/endpoint-microservice/graphql/commands/handlers/create-graphql-endpoint.handler.js.map +1 -1
- package/dist/endpoint-microservice/graphql/graphql-endpoint.service.js +9 -5
- package/dist/endpoint-microservice/graphql/graphql-endpoint.service.js.map +1 -1
- package/dist/endpoint-microservice/graphql/graphql-schema-converter/constants.d.ts +1 -0
- package/dist/endpoint-microservice/graphql/graphql-schema-converter/constants.js +5 -0
- package/dist/endpoint-microservice/graphql/graphql-schema-converter/constants.js.map +1 -0
- package/dist/endpoint-microservice/graphql/graphql-schema-converter/graphql-schema.converter.d.ts +29 -0
- package/dist/endpoint-microservice/graphql/graphql-schema-converter/graphql-schema.converter.js +204 -0
- package/dist/endpoint-microservice/graphql/graphql-schema-converter/graphql-schema.converter.js.map +1 -0
- package/dist/endpoint-microservice/graphql/graphql-schema-converter/types.d.ts +13 -0
- package/dist/endpoint-microservice/graphql/graphql-schema-converter/types.js +26 -0
- package/dist/endpoint-microservice/graphql/graphql-schema-converter/types.js.map +1 -0
- package/dist/endpoint-microservice/graphql/graphql-schema-converter/utils.d.ts +5 -0
- package/dist/endpoint-microservice/graphql/graphql-schema-converter/utils.js +38 -0
- package/dist/endpoint-microservice/graphql/graphql-schema-converter/utils.js.map +1 -0
- package/dist/endpoint-microservice/graphql/graphql.module.js +12 -1
- package/dist/endpoint-microservice/graphql/graphql.module.js.map +1 -1
- package/dist/endpoint-microservice/graphql/queries/handlers/get-graphql-schema.handler.d.ts +5 -14
- package/dist/endpoint-microservice/graphql/queries/handlers/get-graphql-schema.handler.js +21 -211
- package/dist/endpoint-microservice/graphql/queries/handlers/get-graphql-schema.handler.js.map +1 -1
- package/dist/endpoint-microservice/graphql/queries/impl/get-graphql-schema.query.d.ts +8 -0
- package/dist/endpoint-microservice/graphql/queries/impl/get-graphql-schema.query.js.map +1 -1
- package/dist/endpoint-microservice/restapi/commands/handlers/create-restapi-endpoint.handler.d.ts +1 -0
- package/dist/endpoint-microservice/restapi/commands/handlers/create-restapi-endpoint.handler.js +11 -3
- package/dist/endpoint-microservice/restapi/commands/handlers/create-restapi-endpoint.handler.js.map +1 -1
- package/dist/endpoint-microservice/restapi/queries/handlers/get-open-api-schema.handler.js +2 -2
- package/dist/endpoint-microservice/restapi/queries/handlers/get-open-api-schema.handler.js.map +1 -1
- package/dist/endpoint-microservice/shared/converter.d.ts +17 -0
- package/dist/endpoint-microservice/shared/{types/json-schema-type.js → converter.js} +1 -1
- package/dist/endpoint-microservice/shared/converter.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/index.d.ts +5 -0
- package/dist/endpoint-microservice/shared/schema/index.js +22 -0
- package/dist/endpoint-microservice/shared/schema/index.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/lib/createJsonSchemaStore.d.ts +5 -0
- package/dist/endpoint-microservice/shared/schema/lib/createJsonSchemaStore.js +56 -0
- package/dist/endpoint-microservice/shared/schema/lib/createJsonSchemaStore.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/lib/createJsonValueStore.d.ts +5 -0
- package/dist/endpoint-microservice/shared/schema/lib/createJsonValueStore.js +49 -0
- package/dist/endpoint-microservice/shared/schema/lib/createJsonValueStore.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/lib/index.d.ts +5 -0
- package/dist/endpoint-microservice/shared/schema/lib/index.js +22 -0
- package/dist/endpoint-microservice/shared/schema/lib/index.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/lib/resolveRefs.d.ts +3 -0
- package/dist/endpoint-microservice/shared/schema/lib/resolveRefs.js +15 -0
- package/dist/endpoint-microservice/shared/schema/lib/resolveRefs.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/lib/traverseStore.d.ts +2 -0
- package/dist/endpoint-microservice/shared/schema/lib/traverseStore.js +17 -0
- package/dist/endpoint-microservice/shared/schema/lib/traverseStore.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/lib/traverseValue.d.ts +2 -0
- package/dist/endpoint-microservice/shared/schema/lib/traverseValue.js +19 -0
- package/dist/endpoint-microservice/shared/schema/lib/traverseValue.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/model/index.d.ts +2 -0
- package/dist/endpoint-microservice/shared/schema/model/index.js +19 -0
- package/dist/endpoint-microservice/shared/schema/model/index.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/index.d.ts +6 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/index.js +23 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/index.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/json-array.store.d.ts +30 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/json-array.store.js +74 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/json-array.store.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/json-boolean.store.d.ts +19 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/json-boolean.store.js +44 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/json-boolean.store.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/json-number.store.d.ts +19 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/json-number.store.js +44 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/json-number.store.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/json-object.store.d.ts +45 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/json-object.store.js +146 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/json-object.store.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/json-schema.store.d.ts +3 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/json-schema.store.js +3 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/json-schema.store.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/json-string.store.d.ts +20 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/json-string.store.js +48 -0
- package/dist/endpoint-microservice/shared/schema/model/schema/json-string.store.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/model/value/index.d.ts +7 -0
- package/dist/endpoint-microservice/shared/schema/model/value/index.js +24 -0
- package/dist/endpoint-microservice/shared/schema/model/value/index.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/model/value/json-array-value.store.d.ts +15 -0
- package/dist/endpoint-microservice/shared/schema/model/value/json-array-value.store.js +47 -0
- package/dist/endpoint-microservice/shared/schema/model/value/json-array-value.store.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/model/value/json-boolean-value.store.d.ts +11 -0
- package/dist/endpoint-microservice/shared/schema/model/value/json-boolean-value.store.js +19 -0
- package/dist/endpoint-microservice/shared/schema/model/value/json-boolean-value.store.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/model/value/json-number-value.store.d.ts +11 -0
- package/dist/endpoint-microservice/shared/schema/model/value/json-number-value.store.js +19 -0
- package/dist/endpoint-microservice/shared/schema/model/value/json-number-value.store.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/model/value/json-object-value.store.d.ts +18 -0
- package/dist/endpoint-microservice/shared/schema/model/value/json-object-value.store.js +60 -0
- package/dist/endpoint-microservice/shared/schema/model/value/json-object-value.store.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/model/value/json-string-value.store.d.ts +12 -0
- package/dist/endpoint-microservice/shared/schema/model/value/json-string-value.store.js +22 -0
- package/dist/endpoint-microservice/shared/schema/model/value/json-string-value.store.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/model/value/json-value.store.d.ts +4 -0
- package/dist/endpoint-microservice/shared/schema/model/value/json-value.store.js +3 -0
- package/dist/endpoint-microservice/shared/schema/model/value/json-value.store.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/model/value/value-transformation.d.ts +13 -0
- package/dist/endpoint-microservice/shared/schema/model/value/value-transformation.js +110 -0
- package/dist/endpoint-microservice/shared/schema/model/value/value-transformation.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/plugins/file-schema.d.ts +4 -0
- package/dist/endpoint-microservice/shared/schema/plugins/file-schema.js +62 -0
- package/dist/endpoint-microservice/shared/schema/plugins/file-schema.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/plugins/index.d.ts +1 -0
- package/dist/endpoint-microservice/shared/schema/plugins/index.js +18 -0
- package/dist/endpoint-microservice/shared/schema/plugins/index.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/schema.mocks.d.ts +25 -0
- package/dist/endpoint-microservice/shared/schema/schema.mocks.js +65 -0
- package/dist/endpoint-microservice/shared/schema/schema.mocks.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/types/index.d.ts +3 -0
- package/dist/endpoint-microservice/shared/schema/types/index.js +20 -0
- package/dist/endpoint-microservice/shared/schema/types/index.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/types/json-patch.types.d.ts +21 -0
- package/dist/endpoint-microservice/shared/schema/types/json-patch.types.js +3 -0
- package/dist/endpoint-microservice/shared/schema/types/json-patch.types.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/types/json.types.d.ts +6 -0
- package/dist/endpoint-microservice/shared/schema/types/json.types.js +3 -0
- package/dist/endpoint-microservice/shared/schema/types/json.types.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema/types/schema.types.d.ts +38 -0
- package/dist/endpoint-microservice/shared/schema/types/schema.types.js +12 -0
- package/dist/endpoint-microservice/shared/schema/types/schema.types.js.map +1 -0
- package/dist/endpoint-microservice/shared/schema-ids.consts.d.ts +3 -0
- package/dist/endpoint-microservice/shared/schema-ids.consts.js +8 -0
- package/dist/endpoint-microservice/shared/schema-ids.consts.js.map +1 -0
- package/dist/endpoint-microservice/shared/utils/stringUtils.d.ts +3 -0
- package/dist/endpoint-microservice/shared/utils/stringUtils.js +37 -0
- package/dist/endpoint-microservice/shared/utils/stringUtils.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/package.json +5 -2
- package/dist/endpoint-microservice/shared/types/json-schema-type.d.ts +0 -24
- package/dist/endpoint-microservice/shared/types/json-schema-type.js.map +0 -1
@@ -0,0 +1,22 @@
|
|
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("./createJsonSchemaStore"), exports);
|
18
|
+
__exportStar(require("./createJsonValueStore"), exports);
|
19
|
+
__exportStar(require("./traverseStore"), exports);
|
20
|
+
__exportStar(require("./traverseValue"), exports);
|
21
|
+
__exportStar(require("./resolveRefs"), exports);
|
22
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/endpoint-microservice/shared/schema/lib/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAwC;AACxC,yDAAuC;AACvC,kDAAgC;AAChC,kDAAgC;AAChC,gDAA8B"}
|
@@ -0,0 +1,3 @@
|
|
1
|
+
import { JsonSchema } from '../../../../endpoint-microservice/shared/schema/types';
|
2
|
+
export declare const pluginRefs: Readonly<Record<string, JsonSchema>>;
|
3
|
+
export declare const resolveRefs: (schema: JsonSchema) => import("../../../../endpoint-microservice/shared/schema/types").JsonObjectSchema | import("../../../../endpoint-microservice/shared/schema/types").JsonArraySchema | import("../../../../endpoint-microservice/shared/schema/types").JsonStringSchema | import("../../../../endpoint-microservice/shared/schema/types").JsonNumberSchema | import("../../../../endpoint-microservice/shared/schema/types").JsonBooleanSchema | import("../../../../endpoint-microservice/shared/schema/types").JsonRefSchema;
|
@@ -0,0 +1,15 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.resolveRefs = exports.pluginRefs = void 0;
|
4
|
+
const schema_ids_consts_1 = require("../../schema-ids.consts");
|
5
|
+
const createJsonSchemaStore_1 = require("./createJsonSchemaStore");
|
6
|
+
const plugins_1 = require("../plugins");
|
7
|
+
exports.pluginRefs = {
|
8
|
+
[schema_ids_consts_1.SystemSchemaIds.File]: plugins_1.fileSchema,
|
9
|
+
};
|
10
|
+
const resolveRefs = (schema) => {
|
11
|
+
const store = (0, createJsonSchemaStore_1.createJsonSchemaStore)(schema, exports.pluginRefs);
|
12
|
+
return store.getPlainSchema({ skip$Ref: true });
|
13
|
+
};
|
14
|
+
exports.resolveRefs = resolveRefs;
|
15
|
+
//# sourceMappingURL=resolveRefs.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"resolveRefs.js","sourceRoot":"","sources":["../../../../../src/endpoint-microservice/shared/schema/lib/resolveRefs.ts"],"names":[],"mappings":";;;AAAA,+DAAqF;AACrF,mEAA0G;AAC1G,wCAA6E;AAGhE,QAAA,UAAU,GAAyC;IAC9D,CAAC,mCAAe,CAAC,IAAI,CAAC,EAAE,oBAAU;CACnC,CAAC;AAEK,MAAM,WAAW,GAAG,CAAC,MAAkB,EAAE,EAAE;IAChD,MAAM,KAAK,GAAG,IAAA,6CAAqB,EAAC,MAAM,EAAE,kBAAU,CAAC,CAAC;IACxD,OAAO,KAAK,CAAC,cAAc,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;AAClD,CAAC,CAAC;AAHW,QAAA,WAAW,eAGtB"}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.traverseStore = void 0;
|
4
|
+
const schema_1 = require("..");
|
5
|
+
const traverseStore = (store, callback) => {
|
6
|
+
callback(store);
|
7
|
+
if (store.type === schema_1.JsonSchemaTypeName.Object) {
|
8
|
+
Object.values(store.properties).forEach((item) => {
|
9
|
+
(0, exports.traverseStore)(item, callback);
|
10
|
+
});
|
11
|
+
}
|
12
|
+
else if (store.type === schema_1.JsonSchemaTypeName.Array) {
|
13
|
+
(0, exports.traverseStore)(store.items, callback);
|
14
|
+
}
|
15
|
+
};
|
16
|
+
exports.traverseStore = traverseStore;
|
17
|
+
//# sourceMappingURL=traverseStore.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"traverseStore.js","sourceRoot":"","sources":["../../../../../src/endpoint-microservice/shared/schema/lib/traverseStore.ts"],"names":[],"mappings":";;;AAAA,+BAGiD;AAE1C,MAAM,aAAa,GAAG,CAC3B,KAAsB,EACtB,QAAyC,EACzC,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,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;YAC/C,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,IAAA,qBAAa,EAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACvC,CAAC;AACH,CAAC,CAAC;AAbW,QAAA,aAAa,iBAaxB"}
|
@@ -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,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,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":"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"}
|
@@ -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 @@
|
|
1
|
+
{"version":3,"file":"json-schema.store.js","sourceRoot":"","sources":["../../../../../../src/endpoint-microservice/shared/schema/model/schema/json-schema.store.ts"],"names":[],"mappings":""}
|