@tstdl/base 0.78.0-beta58 → 0.78.0-beta60

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 (50) hide show
  1. package/api/response.js +1 -0
  2. package/api/response.js.map +1 -1
  3. package/error/index.d.ts +1 -0
  4. package/error/index.js +1 -0
  5. package/error/index.js.map +1 -1
  6. package/error/not-implemented.error.js +1 -1
  7. package/error/not-implemented.error.js.map +1 -1
  8. package/error/not-supported.error.d.ts +7 -0
  9. package/error/not-supported.error.js +17 -0
  10. package/error/not-supported.error.js.map +1 -0
  11. package/examples/pdf/basic.js +2 -2
  12. package/examples/pdf/basic.js.map +1 -1
  13. package/examples/template/basic.d.ts +1 -0
  14. package/examples/template/basic.js +25 -0
  15. package/examples/template/basic.js.map +1 -0
  16. package/examples/template/templates/hello-name.d.ts +2 -0
  17. package/examples/template/templates/hello-name.js +23 -0
  18. package/examples/template/templates/hello-name.js.map +1 -0
  19. package/orm/decorators.d.ts +0 -0
  20. package/orm/decorators.js +2 -0
  21. package/orm/decorators.js.map +1 -0
  22. package/orm/mongo/mongo-repository.d.ts +2 -0
  23. package/orm/mongo/mongo-repository.js +7 -0
  24. package/orm/mongo/mongo-repository.js.map +1 -0
  25. package/orm/sql/sql-repository.d.ts +6 -0
  26. package/orm/sql/sql-repository.js +14 -0
  27. package/orm/sql/sql-repository.js.map +1 -0
  28. package/orm/test.d.ts +1 -0
  29. package/orm/test.js +22 -0
  30. package/orm/test.js.map +1 -0
  31. package/orm/types.d.ts +20 -0
  32. package/orm/types.js +55 -0
  33. package/orm/types.js.map +1 -0
  34. package/package.json +4 -3
  35. package/schema/coercers/uint8-array.coercer.js +1 -1
  36. package/schema/coercers/uint8-array.coercer.js.map +1 -1
  37. package/schema/decorators/utils.d.ts +3 -2
  38. package/schema/decorators/utils.js +8 -4
  39. package/schema/decorators/utils.js.map +1 -1
  40. package/schema/schema.d.ts +4 -6
  41. package/schema/schema.js +51 -24
  42. package/schema/schema.js.map +1 -1
  43. package/schema/types.d.ts +9 -6
  44. package/schema/types.js +5 -5
  45. package/schema/types.js.map +1 -1
  46. package/schema/utils/schema.js +3 -3
  47. package/schema/utils/schema.js.map +1 -1
  48. package/schema/utils/value-type.d.ts +2 -0
  49. package/schema/utils/value-type.js +15 -10
  50. package/schema/utils/value-type.js.map +1 -1
package/api/response.js CHANGED
@@ -115,6 +115,7 @@ registerErrorHandler(error_1.InvalidTokenError, 401, () => undefined, (_, error)
115
115
  registerErrorHandler(error_1.MaxBytesExceededError, 400, () => undefined, (_, error) => new error_1.MaxBytesExceededError(error.message));
116
116
  registerErrorHandler(error_1.NotFoundError, 404, () => undefined, (_, error) => new error_1.NotFoundError(error.message));
117
117
  registerErrorHandler(error_1.NotImplementedError, 404, () => undefined, (_, error) => new error_1.NotImplementedError(error.message));
118
+ registerErrorHandler(error_1.NotSupportedError, 400, () => undefined, (_, error) => new error_1.NotSupportedError(error.message));
118
119
  registerErrorHandler(error_1.UnauthorizedError, 401, () => undefined, (_, error) => new error_1.UnauthorizedError(error.message));
119
120
  registerErrorHandler(error_1.MethodNotAllowedError, 405, () => undefined, (_, error) => new error_1.MethodNotAllowedError(error.message));
120
121
  registerErrorHandler(error_1.UnsupportedMediaTypeError, 415, () => undefined, (_, error) => new error_1.UnsupportedMediaTypeError(error.message));
@@ -1 +1 @@
1
- {"version":3,"file":"response.js","sourceRoot":"","sources":["../../source/api/response.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"response.js","sourceRoot":"","sources":["../../source/api/response.ts"],"names":[],"mappings":"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"}
package/error/index.d.ts CHANGED
@@ -10,6 +10,7 @@ export * from './method-not-allowed.error';
10
10
  export * from './multi.error';
11
11
  export * from './not-found.error';
12
12
  export * from './not-implemented.error';
13
+ export * from './not-supported.error';
13
14
  export * from './unauthorized.error';
14
15
  export * from './unsupported-media-type.error';
15
16
  export * from './validation.error';
package/error/index.js CHANGED
@@ -26,6 +26,7 @@ __exportStar(require("./method-not-allowed.error"), exports);
26
26
  __exportStar(require("./multi.error"), exports);
27
27
  __exportStar(require("./not-found.error"), exports);
28
28
  __exportStar(require("./not-implemented.error"), exports);
29
+ __exportStar(require("./not-supported.error"), exports);
29
30
  __exportStar(require("./unauthorized.error"), exports);
30
31
  __exportStar(require("./unsupported-media-type.error"), exports);
31
32
  __exportStar(require("./validation.error"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../source/error/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,oDAAkC;AAClC,sDAAoC;AACpC,iDAA+B;AAC/B,kDAAgC;AAChC,oDAAkC;AAClC,wDAAsC;AACtC,6DAA2C;AAC3C,6DAA2C;AAC3C,gDAA8B;AAC9B,oDAAkC;AAClC,0DAAwC;AACxC,uDAAqC;AACrC,iEAA+C;AAC/C,qDAAmC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../source/error/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,oDAAkC;AAClC,sDAAoC;AACpC,iDAA+B;AAC/B,kDAAgC;AAChC,oDAAkC;AAClC,wDAAsC;AACtC,6DAA2C;AAC3C,6DAA2C;AAC3C,gDAA8B;AAC9B,oDAAkC;AAClC,0DAAwC;AACxC,wDAAsC;AACtC,uDAAqC;AACrC,iEAA+C;AAC/C,qDAAmC"}
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.NotImplementedError = void 0;
4
4
  const custom_error_1 = require("./custom.error");
5
5
  class NotImplementedError extends custom_error_1.CustomError {
6
- constructor(message = 'not implemented') {
6
+ constructor(message = 'Not implemented.') {
7
7
  super({ message });
8
8
  }
9
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"not-implemented.error.js","sourceRoot":"","sources":["../../source/error/not-implemented.error.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;AAE7C,MAAa,mBAAoB,SAAQ,0BAAW;IAGlD,YAAY,UAAkB,iBAAiB;QAC7C,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IACrB,CAAC;;AALH,kDAMC;AALiB,6BAAS,GAAG,qBAAqB,CAAC"}
1
+ {"version":3,"file":"not-implemented.error.js","sourceRoot":"","sources":["../../source/error/not-implemented.error.ts"],"names":[],"mappings":";;;AAAA,iDAA6C;AAE7C,MAAa,mBAAoB,SAAQ,0BAAW;IAGlD,YAAY,UAAkB,kBAAkB;QAC9C,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IACrB,CAAC;;AALH,kDAMC;AALiB,6BAAS,GAAG,qBAAqB,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { EnumerationObject, EnumerationValue } from "../types";
2
+ import { CustomError } from './custom.error';
3
+ export declare class NotSupportedError extends CustomError {
4
+ static readonly errorName = "NotSupportedError";
5
+ constructor(message?: string);
6
+ static fromEnum(enumeration: EnumerationObject, name: string, value: EnumerationValue): NotSupportedError;
7
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NotSupportedError = void 0;
4
+ const type_guards_1 = require("../utils/type-guards");
5
+ const custom_error_1 = require("./custom.error");
6
+ class NotSupportedError extends custom_error_1.CustomError {
7
+ constructor(message = 'Not supported.') {
8
+ super({ message });
9
+ }
10
+ static fromEnum(enumeration, name, value) {
11
+ const valueName = (0, type_guards_1.isNumber)(value) ? enumeration[value] ?? value : value;
12
+ return new NotSupportedError(`${name} "${valueName}" is not supported.`);
13
+ }
14
+ }
15
+ exports.NotSupportedError = NotSupportedError;
16
+ NotSupportedError.errorName = 'NotSupportedError';
17
+ //# sourceMappingURL=not-supported.error.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"not-supported.error.js","sourceRoot":"","sources":["../../source/error/not-supported.error.ts"],"names":[],"mappings":";;;AACA,sDAA+C;AAC/C,iDAA6C;AAE7C,MAAa,iBAAkB,SAAQ,0BAAW;IAGhD,YAAY,UAAkB,gBAAgB;QAC5C,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,WAA8B,EAAE,IAAY,EAAE,KAAuB;QACnF,MAAM,SAAS,GAAG,IAAA,sBAAQ,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;QAExE,OAAO,IAAI,iBAAiB,CAAC,GAAG,IAAI,KAAK,SAAS,qBAAqB,CAAC,CAAC;IAC3E,CAAC;;AAXH,8CAYC;AAXiB,2BAAS,GAAG,mBAAmB,CAAC"}
@@ -19,8 +19,8 @@ const path_1 = require("path");
19
19
  (0, file_provider_template_1.configureFileTemplateProvider)({ basePath: (0, path_1.resolve)(__dirname, 'templates') });
20
20
  (0, file_template_resolver_1.configureFileTemplateResolver)({ basePath: (0, path_1.resolve)(__dirname.replace('dist', 'source'), 'templates') });
21
21
  async function test() {
22
- const service = await container_1.container.resolveAsync(pdf_service_1.PdfService);
23
- const result = await service.renderTemplate('hello-name', { name: 'Max Mustermann' });
22
+ const pdfService = await container_1.container.resolveAsync(pdf_service_1.PdfService);
23
+ const result = await pdfService.renderTemplate('hello-name', { name: 'Max Mustermann' });
24
24
  console.log(`Resulting PDF has ${result.length} bytes.`);
25
25
  }
26
26
  void application_1.Application.run(test);
@@ -1 +1 @@
1
- {"version":3,"file":"basic.js","sourceRoot":"","sources":["../../../source/examples/pdf/basic.ts"],"names":[],"mappings":";;AAAA,mDAA4C;AAC5C,+CAAwC;AACxC,qCAAwC;AACxC,uDAA+C;AAC/C,+CAAiD;AACjD,6FAAmH;AACnH,yGAAgG;AAChG,6FAAoF;AACpF,6FAAmH;AACnH,+BAA+B;AAE/B,IAAA,qBAAc,GAAE,CAAC;AAEjB,IAAA,8BAAkB,EAAC;IACjB,gBAAgB,EAAE,6CAAoB;IACtC,iBAAiB,EAAE,CAAC,6CAAoB,CAAC;IACzC,iBAAiB,EAAE,CAAC,6CAAoB,EAAE,yDAA0B,CAAC;CACtE,CAAC,CAAC;AAEH,IAAA,sDAA6B,EAAC,EAAE,QAAQ,EAAE,IAAA,cAAO,EAAC,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;AAC7E,IAAA,sDAA6B,EAAC,EAAE,QAAQ,EAAE,IAAA,cAAO,EAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;AAEvG,KAAK,UAAU,IAAI;IACjB,MAAM,OAAO,GAAG,MAAM,qBAAS,CAAC,YAAY,CAAC,wBAAU,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAEtF,OAAO,CAAC,GAAG,CAAC,qBAAqB,MAAM,CAAC,MAAM,SAAS,CAAC,CAAC;AAC3D,CAAC;AAED,KAAK,yBAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC"}
1
+ {"version":3,"file":"basic.js","sourceRoot":"","sources":["../../../source/examples/pdf/basic.ts"],"names":[],"mappings":";;AAAA,mDAA4C;AAC5C,+CAAwC;AACxC,qCAAwC;AACxC,uDAA+C;AAC/C,+CAAiD;AACjD,6FAAmH;AACnH,yGAAgG;AAChG,6FAAoF;AACpF,6FAAmH;AACnH,+BAA+B;AAE/B,IAAA,qBAAc,GAAE,CAAC;AAEjB,IAAA,8BAAkB,EAAC;IACjB,gBAAgB,EAAE,6CAAoB;IACtC,iBAAiB,EAAE,CAAC,6CAAoB,CAAC;IACzC,iBAAiB,EAAE,CAAC,6CAAoB,EAAE,yDAA0B,CAAC;CACtE,CAAC,CAAC;AAEH,IAAA,sDAA6B,EAAC,EAAE,QAAQ,EAAE,IAAA,cAAO,EAAC,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;AAC7E,IAAA,sDAA6B,EAAC,EAAE,QAAQ,EAAE,IAAA,cAAO,EAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;AAEvG,KAAK,UAAU,IAAI;IACjB,MAAM,UAAU,GAAG,MAAM,qBAAS,CAAC,YAAY,CAAC,wBAAU,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAEzF,OAAO,CAAC,GAAG,CAAC,qBAAqB,MAAM,CAAC,MAAM,SAAS,CAAC,CAAC;AAC3D,CAAC;AAED,KAAK,yBAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const application_1 = require("../../application");
4
+ const container_1 = require("../../container");
5
+ const core_1 = require("../../core");
6
+ const templates_1 = require("../../templates");
7
+ const file_provider_template_1 = require("../../templates/providers/file.provider-template");
8
+ const handlebars_template_renderer_1 = require("../../templates/renderers/handlebars.template-renderer");
9
+ const file_template_resolver_1 = require("../../templates/resolvers/file.template-resolver");
10
+ const path_1 = require("path");
11
+ (0, core_1.configureTstdl)();
12
+ (0, templates_1.configureTemplates)({
13
+ templateProvider: file_provider_template_1.FileTemplateProvider,
14
+ templateResolvers: [file_template_resolver_1.FileTemplateResolver],
15
+ templateRenderers: [handlebars_template_renderer_1.HandlebarsTemplateRenderer]
16
+ });
17
+ (0, file_provider_template_1.configureFileTemplateProvider)({ basePath: (0, path_1.resolve)(__dirname, 'templates') });
18
+ (0, file_template_resolver_1.configureFileTemplateResolver)({ basePath: (0, path_1.resolve)(__dirname.replace('dist', 'source'), 'templates') });
19
+ async function test() {
20
+ const templateService = await container_1.container.resolveAsync(templates_1.TemplateService);
21
+ const result = await templateService.render('hello-name', { name: 'Max Mustermann' });
22
+ console.log(result.fields);
23
+ }
24
+ void application_1.Application.run(test);
25
+ //# sourceMappingURL=basic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"basic.js","sourceRoot":"","sources":["../../../source/examples/template/basic.ts"],"names":[],"mappings":";;AAAA,mDAA4C;AAC5C,+CAAwC;AACxC,qCAAwC;AACxC,+CAAkE;AAClE,6FAAmH;AACnH,yGAAgG;AAChG,6FAAmH;AACnH,+BAA+B;AAE/B,IAAA,qBAAc,GAAE,CAAC;AAEjB,IAAA,8BAAkB,EAAC;IACjB,gBAAgB,EAAE,6CAAoB;IACtC,iBAAiB,EAAE,CAAC,6CAAoB,CAAC;IACzC,iBAAiB,EAAE,CAAC,yDAA0B,CAAC;CAChD,CAAC,CAAC;AAEH,IAAA,sDAA6B,EAAC,EAAE,QAAQ,EAAE,IAAA,cAAO,EAAC,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;AAC7E,IAAA,sDAA6B,EAAC,EAAE,QAAQ,EAAE,IAAA,cAAO,EAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;AAEvG,KAAK,UAAU,IAAI;IACjB,MAAM,eAAe,GAAG,MAAM,qBAAS,CAAC,YAAY,CAAC,2BAAe,CAAC,CAAC;IACtE,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAEtF,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC7B,CAAC;AAED,KAAK,yBAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ declare const template: import("../../../templates").Template<import("../../../types").Record<string, boolean>, any>;
2
+ export default template;
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const templates_1 = require("../../../templates");
4
+ const string_template_resolver_1 = require("../../../templates/resolvers/string.template-resolver");
5
+ const type_guards_1 = require("../../../utils/type-guards");
6
+ const template = (0, templates_1.simpleTemplate)((0, string_template_resolver_1.stringTemplateField)({
7
+ renderer: 'handlebars',
8
+ template: '{{#fooBlockHelper this "A test argument"}}{{>fooPartial hobby="Music" }}{{/fooBlockHelper}}',
9
+ options: {
10
+ helpers: {
11
+ fooBlockHelper: (context, args, options) => {
12
+ (0, type_guards_1.assertFunction)(options.fn, 'fooBlockHelper can only be used as block-helper.');
13
+ console.log({ context, args, options });
14
+ return options.fn(context, options);
15
+ }
16
+ },
17
+ partials: {
18
+ fooPartial: (0, string_template_resolver_1.stringTemplateField)({ renderer: 'handlebars', template: 'Hello! <div>{{ name }}</div> <div>{{ hobby }}</div>' })
19
+ }
20
+ }
21
+ }));
22
+ exports.default = template;
23
+ //# sourceMappingURL=hello-name.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hello-name.js","sourceRoot":"","sources":["../../../../source/examples/template/templates/hello-name.ts"],"names":[],"mappings":";;AAAA,kDAA6C;AAE7C,oGAAqF;AACrF,4DAAqD;AAErD,MAAM,QAAQ,GAAG,IAAA,0BAAc,EAC7B,IAAA,8CAAmB,EAA6B;IAC9C,QAAQ,EAAE,YAAY;IACtB,QAAQ,EAAE,6FAA6F;IACvG,OAAO,EAAE;QACP,OAAO,EAAE;YACP,cAAc,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;gBACzC,IAAA,4BAAc,EAAC,OAAO,CAAC,EAAE,EAAE,kDAAkD,CAAC,CAAC;gBAC/E,OAAO,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;gBAExC,OAAO,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACtC,CAAC;SACF;QACD,QAAQ,EAAE;YACR,UAAU,EAAE,IAAA,8CAAmB,EAA6B,EAAE,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,qDAAqD,EAAE,CAAC;SACzJ;KACF;CACF,CAAC,CACH,CAAC;AAEF,kBAAe,QAAQ,CAAC"}
File without changes
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=decorators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorators.js","sourceRoot":"","sources":["../../source/orm/decorators.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export declare class MongoRepository {
2
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MongoRepository = void 0;
4
+ class MongoRepository {
5
+ }
6
+ exports.MongoRepository = MongoRepository;
7
+ //# sourceMappingURL=mongo-repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mongo-repository.js","sourceRoot":"","sources":["../../../source/orm/mongo/mongo-repository.ts"],"names":[],"mappings":";;;AAAA,MAAa,eAAe;CAE3B;AAFD,0CAEC"}
@@ -0,0 +1,6 @@
1
+ import type { EntityDefinition } from '../types';
2
+ export declare class SqlRepository {
3
+ private readonly definition;
4
+ constructor(definition: EntityDefinition);
5
+ initialize(): Promise<void>;
6
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SqlRepository = void 0;
4
+ const error_1 = require("../../error");
5
+ class SqlRepository {
6
+ constructor(definition) {
7
+ this.definition = definition;
8
+ }
9
+ async initialize() {
10
+ throw new error_1.NotImplementedError();
11
+ }
12
+ }
13
+ exports.SqlRepository = SqlRepository;
14
+ //# sourceMappingURL=sql-repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sql-repository.js","sourceRoot":"","sources":["../../../source/orm/sql/sql-repository.ts"],"names":[],"mappings":";;;AAAA,uCAA8C;AAG9C,MAAa,aAAa;IAGxB,YAAY,UAA4B;QACtC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,KAAK,CAAC,UAAU;QACd,MAAM,IAAI,2BAAmB,EAAE,CAAC;IAClC,CAAC;CACF;AAVD,sCAUC"}
package/orm/test.d.ts ADDED
@@ -0,0 +1 @@
1
+ export {};
package/orm/test.js ADDED
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const schema_1 = require("../schema");
13
+ let TestEntity = class TestEntity {
14
+ };
15
+ __decorate([
16
+ (0, schema_1.Property)(),
17
+ __metadata("design:type", String)
18
+ ], TestEntity.prototype, "name", void 0);
19
+ TestEntity = __decorate([
20
+ (0, schema_1.Type)()
21
+ ], TestEntity);
22
+ //# sourceMappingURL=test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test.js","sourceRoot":"","sources":["../../source/orm/test.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,sCAA0C;AAG1C,IAAM,UAAU,GAAhB,MAAM,UAAU;CAGf,CAAA;AAFC;IAAC,IAAA,iBAAQ,GAAE;;wCACE;AAFT,UAAU;IADf,IAAA,aAAI,GAAE;GACD,UAAU,CAGf"}
package/orm/types.d.ts ADDED
@@ -0,0 +1,20 @@
1
+ import type { OneOrMany, Record, Type } from "../types";
2
+ export declare type EntityDefinition = {
3
+ name: string;
4
+ tableName?: string;
5
+ properties: Record;
6
+ indexes?: IndexDefinition[];
7
+ };
8
+ export declare type EntityPropertyType = 'any' | 'string' | 'number' | 'boolean';
9
+ export declare type PropertyDefinition = {
10
+ type: OneOrMany<EntityPropertyType>;
11
+ array?: boolean;
12
+ optional?: boolean;
13
+ nullable?: boolean;
14
+ unique?: boolean;
15
+ };
16
+ export declare type IndexDefinition = {
17
+ properties: string[];
18
+ unique?: boolean;
19
+ };
20
+ export declare function getEntityDefinitionFromSchema(type: Type): EntityDefinition | null;
package/orm/types.js ADDED
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getEntityDefinitionFromSchema = void 0;
4
+ const not_supported_error_1 = require("../error/not-supported.error");
5
+ const reflection_1 = require("../reflection");
6
+ const schema_1 = require("../schema");
7
+ const array_1 = require("../utils/array");
8
+ const type_guards_1 = require("../utils/type-guards");
9
+ function getEntityDefinitionFromSchema(type) {
10
+ const metadata = reflection_1.reflectionRegistry.getMetadata(type);
11
+ if (!metadata.registered) {
12
+ return null;
13
+ }
14
+ const properties = {};
15
+ const schema = (0, schema_1.getSchemaFromReflection)(type);
16
+ if ((0, type_guards_1.isNotNull)(schema)) {
17
+ for (const [key, property] of Object.entries(schema.properties)) {
18
+ const valueTypes = (0, schema_1.getSchemaValueTypes)(property);
19
+ const valueTypesWithoutNullAndUndefined = valueTypes.filter((valueType) => (valueType != 'null') && (valueType != 'undefined'));
20
+ const types = (0, array_1.toArray)(valueTypesWithoutNullAndUndefined).map(schemaValueTypeToEntityPropertyType);
21
+ properties[key] = {
22
+ type: (types.length > 1) ? types : types[0],
23
+ array: ((0, schema_1.isValueSchema)(property) && (property.array == true)),
24
+ optional: valueTypes.includes('undefined') || ((0, schema_1.isValueSchema)(property) && (property.optional == true)),
25
+ nullable: valueTypes.includes('null') || ((0, schema_1.isValueSchema)(property) && (property.nullable == true))
26
+ };
27
+ }
28
+ }
29
+ const definition = {
30
+ name: type.name,
31
+ properties,
32
+ indexes: []
33
+ };
34
+ return definition;
35
+ }
36
+ exports.getEntityDefinitionFromSchema = getEntityDefinitionFromSchema;
37
+ function schemaValueTypeToEntityPropertyType(valueType) {
38
+ if ((valueType == 'undefined') || (valueType == 'null')) {
39
+ throw new Error('null and undefined are not supported');
40
+ }
41
+ if (valueType == String) {
42
+ return 'string';
43
+ }
44
+ if (valueType == Number) {
45
+ return 'number';
46
+ }
47
+ if (valueType == Boolean) {
48
+ return 'boolean';
49
+ }
50
+ if (valueType == 'any') {
51
+ return 'any';
52
+ }
53
+ throw new not_supported_error_1.NotSupportedError(`ValueType ${valueType} not supported.`);
54
+ }
55
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../source/orm/types.ts"],"names":[],"mappings":";;;AAAA,sEAAgE;AAChE,8CAAkD;AAElD,sCAAuF;AAEvF,0CAAwC;AACxC,sDAAgD;AAwBhD,SAAgB,6BAA6B,CAAC,IAAU;IACtD,MAAM,QAAQ,GAAG,+BAAkB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEtD,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;QACxB,OAAO,IAAI,CAAC;KACb;IAED,MAAM,UAAU,GAAuC,EAAE,CAAC;IAE1D,MAAM,MAAM,GAAG,IAAA,gCAAuB,EAAC,IAAI,CAAC,CAAC;IAE7C,IAAI,IAAA,uBAAS,EAAC,MAAM,CAAC,EAAE;QACrB,KAAK,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;YAC/D,MAAM,UAAU,GAAG,IAAA,4BAAmB,EAAC,QAAQ,CAAC,CAAC;YACjD,MAAM,iCAAiC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,WAAW,CAAC,CAAC,CAAC;YAEhI,MAAM,KAAK,GAAG,IAAA,eAAO,EAAC,iCAAiC,CAAC,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;YAGlG,UAAU,CAAC,GAAG,CAAC,GAAG;gBAChB,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE;gBAC5C,KAAK,EAAE,CAAC,IAAA,sBAAa,EAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC;gBAC5D,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,IAAA,sBAAa,EAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC;gBACtG,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,IAAA,sBAAa,EAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC;aAClG,CAAA;SACF;KACF;IAED,MAAM,UAAU,GAAqB;QACnC,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,UAAU;QACV,OAAO,EAAE,EAAE;KACZ,CAAC;IAEF,OAAO,UAAU,CAAC;AACpB,CAAC;AAnCD,sEAmCC;AAED,SAAS,mCAAmC,CAAC,SAA4B;IACvE,IAAI,CAAC,SAAS,IAAI,WAAW,CAAC,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,EAAE;QACvD,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;KACzD;IAED,IAAI,SAAS,IAAI,MAAM,EAAE;QACvB,OAAO,QAAQ,CAAC;KACjB;IAED,IAAI,SAAS,IAAI,MAAM,EAAE;QACvB,OAAO,QAAQ,CAAC;KACjB;IAED,IAAI,SAAS,IAAI,OAAO,EAAE;QACxB,OAAO,SAAS,CAAC;KAClB;IAED,IAAI,SAAS,IAAI,KAAK,EAAE;QACtB,OAAO,KAAK,CAAC;KACd;IAED,MAAM,IAAI,uCAAiB,CAAC,aAAa,SAAS,iBAAiB,CAAC,CAAC;AACvE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tstdl/base",
3
- "version": "0.78.0-beta58",
3
+ "version": "0.78.0-beta60",
4
4
  "author": "Patrick Hein",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -22,7 +22,7 @@
22
22
  },
23
23
  "devDependencies": {
24
24
  "@types/chroma-js": "2.1",
25
- "@types/koa__router": "8.0",
25
+ "@types/koa__router": "12.0",
26
26
  "@types/luxon": "3.0",
27
27
  "@types/minio": "7.0",
28
28
  "@types/mjml": "4.7",
@@ -39,10 +39,11 @@
39
39
  "peerDependencies": {
40
40
  "@elastic/elasticsearch": "^8.4",
41
41
  "@koa/router": "^12.0",
42
- "@tstdl/angular": "^0.11.0-beta58",
42
+ "@tstdl/angular": "^0.11.0-beta60",
43
43
  "chroma-js": "^2.4",
44
44
  "got": "^12.4",
45
45
  "handlebars": "^4.7",
46
+ "knex": "^2.3",
46
47
  "koa": "^2.13",
47
48
  "minio": "^7.0",
48
49
  "mjml": "^4.13",
@@ -14,7 +14,7 @@ class Uint8ArrayCoercer extends types_1.SchemaValueCoercer {
14
14
  this.targetType = Uint8Array;
15
15
  }
16
16
  coerce(value, path, { options }) {
17
- const testResult = schema_1.Schema.testWithFastError(byteNumberArraySchema, value, options, path);
17
+ const testResult = (0, schema_1.testWithFastError)(byteNumberArraySchema, value, options, path);
18
18
  if (!testResult.valid) {
19
19
  return { success: false, error: schema_error_1.SchemaError.couldNotCoerce(Uint8Array, Array, path, undefined, { inner: testResult.error, fast: options.fastErrors }) };
20
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"uint8-array.coercer.js","sourceRoot":"","sources":["../../../source/schema/coercers/uint8-array.coercer.ts"],"names":[],"mappings":";;;AACA,sCAAmC;AACnC,kDAA8C;AAC9C,4CAAyC;AACzC,8CAA2C;AAE3C,oCAA8C;AAE9C,MAAM,qBAAqB,GAAG,IAAA,aAAK,EAAC,IAAA,eAAM,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;AAEzF,MAAa,iBAAkB,SAAQ,0BAAkB;IAAzD;;QACW,eAAU,GAAG,KAAK,CAAC;QACnB,eAAU,GAAG,UAAU,CAAC;IAWnC,CAAC;IATC,MAAM,CAAC,KAAY,EAAE,IAAc,EAAE,EAAE,OAAO,EAAkB;QAC9D,MAAM,UAAU,GAAG,eAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QAEzF,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE;YACrB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,0BAAW,CAAC,cAAc,CAAC,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC;SACzJ;QAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;IACrE,CAAC;CACF;AAbD,8CAaC;AAEY,QAAA,iBAAiB,GAAG,IAAI,iBAAiB,EAAE,CAAC"}
1
+ {"version":3,"file":"uint8-array.coercer.js","sourceRoot":"","sources":["../../../source/schema/coercers/uint8-array.coercer.ts"],"names":[],"mappings":";;;AACA,sCAA8C;AAC9C,kDAA8C;AAC9C,4CAAyC;AACzC,8CAA2C;AAE3C,oCAA8C;AAE9C,MAAM,qBAAqB,GAAG,IAAA,aAAK,EAAC,IAAA,eAAM,EAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;AAEzF,MAAa,iBAAkB,SAAQ,0BAAkB;IAAzD;;QACW,eAAU,GAAG,KAAK,CAAC;QACnB,eAAU,GAAG,UAAU,CAAC;IAWnC,CAAC;IATC,MAAM,CAAC,KAAY,EAAE,IAAc,EAAE,EAAE,OAAO,EAAkB;QAC9D,MAAM,UAAU,GAAG,IAAA,0BAAiB,EAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QAElF,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE;YACrB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,0BAAW,CAAC,cAAc,CAAC,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC;SACzJ;QAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;IACrE,CAAC;CACF;AAbD,8CAaC;AAEY,QAAA,iBAAiB,GAAG,IAAI,iBAAiB,EAAE,CAAC"}
@@ -1,11 +1,12 @@
1
- import type { Decorator } from "../../reflection";
1
+ import type { Decorator, PropertyMetadata } from "../../reflection";
2
2
  import type { OneOrMany } from "../../types";
3
3
  import type { Schema } from '../schema';
4
4
  import type { SchemaArrayConstraint, SchemaValueCoercer, SchemaValueConstraint, SchemaValueTransformer } from '../types';
5
- import type { PropertyOptions } from './types';
5
+ import type { PropertyOptions, SchemaPropertyReflectionData } from './types';
6
6
  export declare function createSchemaPropertyDecorator(options: PropertyOptions): Decorator<'property' | 'accessor'>;
7
7
  export declare function createSchemaPropertyDecoratorFromSchema(schema: Schema): Decorator<'property' | 'accessor'>;
8
8
  export declare function createSchemaValueCoercerDecorator(coercer: SchemaValueCoercer, options?: PropertyOptions): Decorator<'property' | 'accessor'>;
9
9
  export declare function createSchemaValueTransformerDecorator(transformer: SchemaValueTransformer, options?: PropertyOptions): Decorator<'property' | 'accessor'>;
10
10
  export declare function createSchemaArrayConstraintDecorator(constraint: SchemaArrayConstraint, options?: PropertyOptions): Decorator<'property' | 'accessor'>;
11
11
  export declare function createSchemaValueConstraintDecorator(constraints: OneOrMany<SchemaValueConstraint>, options?: PropertyOptions): Decorator<'property' | 'accessor'>;
12
+ export declare function tryGetSchemaPropertyReflectionData(metadata: PropertyMetadata): SchemaPropertyReflectionData | undefined;
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /* eslint-disable @typescript-eslint/naming-convention */
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.createSchemaValueConstraintDecorator = exports.createSchemaArrayConstraintDecorator = exports.createSchemaValueTransformerDecorator = exports.createSchemaValueCoercerDecorator = exports.createSchemaPropertyDecoratorFromSchema = exports.createSchemaPropertyDecorator = void 0;
4
+ exports.tryGetSchemaPropertyReflectionData = exports.createSchemaValueConstraintDecorator = exports.createSchemaArrayConstraintDecorator = exports.createSchemaValueTransformerDecorator = exports.createSchemaValueCoercerDecorator = exports.createSchemaPropertyDecoratorFromSchema = exports.createSchemaPropertyDecorator = void 0;
5
5
  const reflection_1 = require("../../reflection");
6
6
  const array_1 = require("../../utils/array/array");
7
7
  const merge_1 = require("../../utils/merge");
@@ -11,7 +11,7 @@ const types_1 = require("../types");
11
11
  function createSchemaPropertyDecorator(options) {
12
12
  return (0, reflection_1.createPropertyOrAccessorDecorator)({
13
13
  handler(_, metadata) {
14
- const schemaData = getSchemaPropertyReflectionData(metadata);
14
+ const schemaData = getOrCreateSchemaPropertyReflectionData(metadata);
15
15
  const newSchemaData = {
16
16
  ...options,
17
17
  coercers: ((0, type_guards_1.isDefined)(options.coercers) && (!(0, type_guards_1.isArray)(options.coercers) || options.coercers.length > 0)) ? (0, merge_1.merge)((0, array_1.toArray)(options.coercers), schemaData.coercers) : undefined,
@@ -44,8 +44,12 @@ function createSchemaValueConstraintDecorator(constraints, options) {
44
44
  return createSchemaPropertyDecorator({ ...options, valueConstraints: constraints });
45
45
  }
46
46
  exports.createSchemaValueConstraintDecorator = createSchemaValueConstraintDecorator;
47
- function getSchemaPropertyReflectionData(metadata) {
48
- let schemaData = metadata.data.tryGet('schema');
47
+ function tryGetSchemaPropertyReflectionData(metadata) {
48
+ return metadata.data.tryGet('schema');
49
+ }
50
+ exports.tryGetSchemaPropertyReflectionData = tryGetSchemaPropertyReflectionData;
51
+ function getOrCreateSchemaPropertyReflectionData(metadata) {
52
+ let schemaData = tryGetSchemaPropertyReflectionData(metadata);
49
53
  if ((0, type_guards_1.isUndefined)(schemaData)) {
50
54
  schemaData = {};
51
55
  metadata.data.set('schema', schemaData);
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../source/schema/decorators/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../source/schema/decorators/utils.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { JsonPath } from "../json-path";
2
- import type { NormalizedObjectSchema, NormalizedTypeSchema, NormalizedValueSchema, ObjectSchema, SchemaTestOptions, SchemaTestResult, SchemaValueCoercer, TypeSchema, ValueSchema, ValueType } from './types';
2
+ import type { NormalizedObjectSchema, NormalizedTypeSchema, NormalizedValueSchema, ObjectSchema, SchemaOutput, SchemaTestOptions, SchemaTestResult, SchemaValueCoercer, TupleSchemaOutput, TypeSchema, ValueSchema, ValueType } from './types';
3
3
  export declare type Schema<T = any, O = T> = ObjectSchema<T, O> | ValueSchema<T, O> | TypeSchema<O>;
4
4
  export declare type SchemaTestable<T = any, O = T> = Schema<T, O> | ValueType<O>;
5
5
  export declare type NormalizedSchema<T = any, O = T> = NormalizedObjectSchema<T, O> | NormalizedValueSchema<T, O> | NormalizedTypeSchema<O>;
@@ -8,9 +8,7 @@ export declare const Schema: {
8
8
  test<T, O>(schemaOrValueType: SchemaTestable<T, O>, value: unknown, options?: SchemaTestOptions, path?: JsonPath): SchemaTestResult<O>;
9
9
  validate<T_1, O_1 = T_1>(schemaOrValueType: SchemaTestable<T_1, O_1>, value: unknown, options?: SchemaTestOptions): boolean;
10
10
  parse<T_2, O_2 = T_2>(schemaOrValueType: SchemaTestable<T_2, O_2>, value: unknown, options?: SchemaTestOptions): O_2;
11
- /**
12
- * disables stack traces for errors
13
- * @deprecated for internal use only
14
- */
15
- testWithFastError<T_3, O_3 = T_3>(schema: Schema<T_3, O_3>, value: unknown, options?: SchemaTestOptions, path?: JsonPath): SchemaTestResult<O_3>;
11
+ function<T_3 extends readonly SchemaTestable<any, any>[], R extends SchemaTestable<any, any>, F extends (...args: TupleSchemaOutput<T_3>) => SchemaOutput<R>>(argumentSchemas: T_3, returnSchema: R, handler: F): F;
12
+ asyncFunction<T_4 extends readonly SchemaTestable<any, any>[], R_1 extends SchemaTestable<any, any>, F_1 extends (...args: TupleSchemaOutput<T_4>) => Promise<SchemaOutput<R_1>>>(argumentSchemas: T_4, returnSchema: R_1, handler: F_1): F_1;
16
13
  };
14
+ export declare function testWithFastError<T, O = T>(schema: Schema<T, O>, value: unknown, options?: SchemaTestOptions, path?: JsonPath): SchemaTestResult<O>;
package/schema/schema.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Schema = void 0;
3
+ exports.testWithFastError = exports.Schema = void 0;
4
4
  const json_path_1 = require("../json-path");
5
5
  const array_1 = require("../utils/array/array");
6
6
  const noop_1 = require("../utils/noop");
@@ -38,8 +38,8 @@ exports.Schema = {
38
38
  },
39
39
  test(schemaOrValueType, value, options, path = json_path_1.JsonPath.ROOT) {
40
40
  const normalizedOptions = { fastErrors: true, ...options };
41
- const schema = (0, types_1.valueTypeOrSchemaToSchema)(schemaOrValueType);
42
- const result = this.testWithFastError(schema, value, normalizedOptions, path);
41
+ const schema = (0, types_1.schemaTestableToSchema)(schemaOrValueType);
42
+ const result = testWithFastError(schema, value, normalizedOptions, path);
43
43
  if (result.valid) {
44
44
  return result;
45
45
  }
@@ -49,36 +49,63 @@ exports.Schema = {
49
49
  return { valid: false, error: new schema_error_1.SchemaError(result.error.message, { ...result.error }) };
50
50
  },
51
51
  validate(schemaOrValueType, value, options) {
52
- const schema = (0, types_1.valueTypeOrSchemaToSchema)(schemaOrValueType);
52
+ const schema = (0, types_1.schemaTestableToSchema)(schemaOrValueType);
53
53
  const result = this.test(schema, value, options);
54
54
  return result.valid;
55
55
  },
56
56
  parse(schemaOrValueType, value, options) {
57
- const schema = (0, types_1.valueTypeOrSchemaToSchema)(schemaOrValueType);
57
+ const schema = (0, types_1.schemaTestableToSchema)(schemaOrValueType);
58
58
  const result = this.test(schema, value, options);
59
59
  if (result.valid) {
60
60
  return result.value;
61
61
  }
62
62
  throw result.error;
63
63
  },
64
- /**
65
- * disables stack traces for errors
66
- * @deprecated for internal use only
67
- */
68
- testWithFastError(schema, value, options, path = json_path_1.JsonPath.ROOT) {
69
- initialize();
70
- if ((0, types_1.isValueSchema)(schema)) {
71
- return testValue(schema, value, options, path);
72
- }
73
- if ((0, types_1.isTypeSchema)(schema)) {
74
- return testType(schema, value, options, path);
75
- }
76
- if ((0, types_1.isObjectSchema)(schema)) {
77
- return testObject(schema, value, options, path);
78
- }
79
- throw new Error('Unsupported schema');
64
+ function(argumentSchemas, returnSchema, handler) {
65
+ const name = `validated${handler.name.slice(0, 1).toUpperCase()}${handler.name.slice(1)}`;
66
+ const schema = getFunctionParametersSchema(argumentSchemas);
67
+ return {
68
+ [name](...unsafeArgs) {
69
+ const safeArgs = exports.Schema.parse(schema, unsafeArgs, { mask: true });
70
+ const unsafeResult = handler(...safeArgs);
71
+ return exports.Schema.parse(returnSchema, unsafeResult);
72
+ }
73
+ }[name];
74
+ },
75
+ asyncFunction(argumentSchemas, returnSchema, handler) {
76
+ const name = `validated${handler.name.slice(0, 1).toUpperCase()}${handler.name.slice(1)}`;
77
+ const schema = getFunctionParametersSchema(argumentSchemas);
78
+ return {
79
+ async [name](...unsafeArgs) {
80
+ const safeArgs = exports.Schema.parse(schema, unsafeArgs, { mask: true });
81
+ const unsafeResult = await handler(...safeArgs);
82
+ return exports.Schema.parse(returnSchema, unsafeResult);
83
+ }
84
+ }[name];
80
85
  }
81
86
  };
87
+ function getFunctionParametersSchema(argumentSchemas) {
88
+ const schema = {
89
+ factory: { type: Array },
90
+ properties: {}
91
+ };
92
+ argumentSchemas.forEach((arg, index) => (schema.properties[index] = arg));
93
+ return schema;
94
+ }
95
+ function testWithFastError(schema, value, options, path = json_path_1.JsonPath.ROOT) {
96
+ initialize();
97
+ if ((0, types_1.isValueSchema)(schema)) {
98
+ return testValue(schema, value, options, path);
99
+ }
100
+ if ((0, types_1.isTypeSchema)(schema)) {
101
+ return testType(schema, value, options, path);
102
+ }
103
+ if ((0, types_1.isObjectSchema)(schema)) {
104
+ return testObject(schema, value, options, path);
105
+ }
106
+ throw new Error('Unsupported schema');
107
+ }
108
+ exports.testWithFastError = testWithFastError;
82
109
  function testType(schema, value, options = {}, path = json_path_1.JsonPath.ROOT) {
83
110
  const resolvedValueType = (0, types_1.resolveValueType)(schema.type);
84
111
  if (resolvedValueType == 'any') {
@@ -113,7 +140,7 @@ function testObject(objectSchema, value, options = {}, path = json_path_1.JsonPa
113
140
  return { valid: false, error: new schema_error_1.SchemaError('Unknown property', { path: path.add(unknownValuePropertyKeys[0]), fast: options.fastErrors }) };
114
141
  }
115
142
  for (const key of schemaPropertyKeys) {
116
- const propertyResult = exports.Schema.testWithFastError(schema.properties[key], value[key], options, path.add(key));
143
+ const propertyResult = testWithFastError(schema.properties[key], value[key], options, path.add(key));
117
144
  if (!propertyResult.valid) {
118
145
  return propertyResult;
119
146
  }
@@ -121,7 +148,7 @@ function testObject(objectSchema, value, options = {}, path = json_path_1.JsonPa
121
148
  }
122
149
  if (schema.allowUnknownProperties.size > 0) {
123
150
  for (const key of unknownValuePropertyKeys) {
124
- const propertyResult = exports.Schema.testWithFastError((0, types_1.valueSchema)([...schema.allowUnknownProperties]), value[key], options, path.add(key));
151
+ const propertyResult = testWithFastError((0, types_1.valueSchema)([...schema.allowUnknownProperties]), value[key], options, path.add(key));
125
152
  if (!propertyResult.valid && !mask) {
126
153
  return propertyResult;
127
154
  }
@@ -232,7 +259,7 @@ function testValue(schema, value, options = {}, path = json_path_1.JsonPath.ROOT
232
259
  function isValidValue(validSchemas, value, options, path) {
233
260
  const errorResults = [];
234
261
  for (const schema of validSchemas) {
235
- const result = exports.Schema.testWithFastError(schema, value, options, path);
262
+ const result = testWithFastError(schema, value, options, path);
236
263
  if (result.valid) {
237
264
  return result;
238
265
  }
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../source/schema/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../source/schema/schema.ts"],"names":[],"mappings":"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"}
package/schema/types.d.ts CHANGED
@@ -12,13 +12,16 @@ export declare type SchemaFactory<T, O = T> = {
12
12
  builder: SchemaFactoryFunction<T, O>;
13
13
  };
14
14
  export declare type ObjectSchemaProperties<T> = {
15
- [K in keyof T]-?: OneOrMany<Schema<any, T[K]>>;
15
+ [K in keyof T]-?: OneOrMany<SchemaTestable<any, T[K]>>;
16
16
  };
17
17
  export declare type NormalizedObjectSchemaProperties<T> = {
18
18
  [K in keyof T]-?: Schema<any, T[K]>;
19
19
  };
20
20
  export declare type SchemaInput<T extends Schema> = T extends ObjectSchema<infer U, any> ? U : T extends ValueSchema<infer U, any> ? U : T extends TypeSchema<infer U> ? U : never;
21
- export declare type SchemaOutput<T extends Schema> = T extends ObjectSchema<any, infer O> ? O : T extends ValueSchema<any, infer O> ? O : T extends TypeSchema<infer O> ? O : never;
21
+ export declare type SchemaOutput<T extends SchemaTestable> = T extends ObjectSchema<any, infer O> ? O : T extends ValueSchema<any, infer O> ? O : T extends TypeSchema<infer O> ? O : T extends ValueType<infer O> ? NormalizeValueType<O> : never;
22
+ export declare type TupleSchemaOutput<T extends readonly SchemaTestable[]> = {
23
+ [P in keyof T]: SchemaOutput<T[P]>;
24
+ };
22
25
  export declare type ObjectSchema<T = any, O = T> = {
23
26
  [schemaOutputTypeSymbol]?: O;
24
27
  sourceType?: ValueType;
@@ -76,10 +79,10 @@ export declare type CoercerContext = SchemaContext;
76
79
  export declare type NormalizeValueType<T> = T extends String ? string : T extends Number ? number : T extends Boolean ? boolean : T extends BigInt ? bigint : T extends Symbol ? symbol : T extends 'undefined' ? undefined : T extends 'null' ? null : T extends 'any' ? any : T;
77
80
  export declare type NormalizeToValueType<T> = T extends string | String ? typeof String : T extends number ? typeof Number : T extends boolean ? typeof Boolean : T extends bigint ? typeof BigInt : T extends symbol ? typeof Symbol : T extends undefined ? 'undefined' : T extends null ? 'null' : T extends any ? 'any' : never;
78
81
  export declare type ValueType<T = any> = AbstractConstructor<T> | NormalizeToValueType<T> | DeferredValueType<T>;
79
- export declare type DeferredValueType<T = unknown> = {
82
+ export declare type DeferredValueType<T = any> = {
80
83
  deferred: () => ValueType<T>;
81
84
  };
82
- export declare type ResolvedValueType<T = unknown> = Exclude<ValueType<T>, DeferredValueType>;
85
+ export declare type ResolvedValueType<T = any> = Exclude<ValueType<T>, DeferredValueType>;
83
86
  export declare type ValueTypeOutput<T extends ValueType> = T extends ValueType<infer U> ? NormalizeValueType<U> : never;
84
87
  export declare type Coercible = {
85
88
  coerce?: boolean;
@@ -170,6 +173,6 @@ export declare function isDeferredValueType<T>(value: ValueType<T>): value is De
170
173
  export declare function isDeferredValueType(value: any): value is DeferredValueType;
171
174
  export declare function resolveValueTypes<T>(valueTypes: OneOrMany<ValueType<T>>): OneOrMany<ResolvedValueType<T>>;
172
175
  export declare function resolveValueType<T>(valueType: ValueType<T>): ResolvedValueType<T>;
173
- export declare function valueTypesOrSchemasToSchemas<T, O>(valueTypesOrSchemas: OneOrMany<ValueType<O> | Schema<T, O>>): OneOrMany<Schema<T, O>>;
174
- export declare function valueTypeOrSchemaToSchema<T, O>(valueTypeOrSchema: ValueType<O> | Schema<T, O>): Schema<T, O>;
176
+ export declare function valueTypesOrSchemasToSchemas<T, O>(valueTypesOrSchemas: OneOrMany<SchemaTestable<T, O>>): OneOrMany<Schema<T, O>>;
177
+ export declare function schemaTestableToSchema<T, O>(valueTypeOrSchema: SchemaTestable<T, O>): Schema<T, O>;
175
178
  export {};
package/schema/types.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  /* eslint-disable @typescript-eslint/ban-types */
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.valueTypeOrSchemaToSchema = exports.valueTypesOrSchemasToSchemas = exports.resolveValueType = exports.resolveValueTypes = exports.isDeferredValueType = exports.isTypeSchema = exports.isValueSchema = exports.isObjectSchema = exports.isSchema = exports.typeSchema = exports.valueSchema = exports.objectSchema = exports.objectSchemaProperties = exports.SchemaValueCoercer = exports.SchemaValueTransformer = exports.SchemaValueConstraint = exports.SchemaArrayConstraint = exports.primitiveConstructorSet = exports.primitiveConstructors = void 0;
4
+ exports.schemaTestableToSchema = exports.valueTypesOrSchemasToSchemas = exports.resolveValueType = exports.resolveValueTypes = exports.isDeferredValueType = exports.isTypeSchema = exports.isValueSchema = exports.isObjectSchema = exports.isSchema = exports.typeSchema = exports.valueSchema = exports.objectSchema = exports.objectSchemaProperties = exports.SchemaValueCoercer = exports.SchemaValueTransformer = exports.SchemaValueConstraint = exports.SchemaArrayConstraint = exports.primitiveConstructorSet = exports.primitiveConstructors = void 0;
5
5
  const object_1 = require("../utils/object/object");
6
6
  const type_guards_1 = require("../utils/type-guards");
7
7
  exports.primitiveConstructors = [String, Number, Boolean, Symbol, BigInt, Function, 'undefined', 'null'];
@@ -77,16 +77,16 @@ function resolveValueType(valueType) {
77
77
  exports.resolveValueType = resolveValueType;
78
78
  function valueTypesOrSchemasToSchemas(valueTypesOrSchemas) {
79
79
  if ((0, type_guards_1.isArray)(valueTypesOrSchemas)) {
80
- return valueTypesOrSchemas.map(valueTypeOrSchemaToSchema);
80
+ return valueTypesOrSchemas.map(schemaTestableToSchema);
81
81
  }
82
- return valueTypeOrSchemaToSchema(valueTypesOrSchemas);
82
+ return schemaTestableToSchema(valueTypesOrSchemas);
83
83
  }
84
84
  exports.valueTypesOrSchemasToSchemas = valueTypesOrSchemasToSchemas;
85
- function valueTypeOrSchemaToSchema(valueTypeOrSchema) {
85
+ function schemaTestableToSchema(valueTypeOrSchema) {
86
86
  if (isSchema(valueTypeOrSchema)) {
87
87
  return valueTypeOrSchema;
88
88
  }
89
89
  return typeSchema(valueTypeOrSchema);
90
90
  }
91
- exports.valueTypeOrSchemaToSchema = valueTypeOrSchemaToSchema;
91
+ exports.schemaTestableToSchema = schemaTestableToSchema;
92
92
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../source/schema/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../source/schema/types.ts"],"names":[],"mappings":"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"}
@@ -29,15 +29,15 @@ function _normalizeSchema(schema) {
29
29
  function _normalizeObjectSchema(schema) {
30
30
  const normalizedSchema = {
31
31
  factory: schema.factory,
32
- properties: (0, object_1.mapObjectValues)(schema.properties, (propertyValueType) => ((0, type_guards_1.isArray)(propertyValueType) ? (0, types_1.valueSchema)(propertyValueType) : propertyValueType)),
32
+ properties: (0, object_1.mapObjectValues)(schema.properties, (propertyValueType) => (0, types_1.valueTypesOrSchemasToSchemas)(propertyValueType)),
33
33
  mask: schema.mask,
34
- allowUnknownProperties: new Set((0, array_1.toArray)(schema.allowUnknownProperties ?? []).map(types_1.valueTypeOrSchemaToSchema))
34
+ allowUnknownProperties: new Set((0, array_1.toArray)(schema.allowUnknownProperties ?? []).map(types_1.schemaTestableToSchema))
35
35
  };
36
36
  return normalizedSchema;
37
37
  }
38
38
  function _normalizeValueSchema(schema) {
39
39
  const normalizedValueSchema = {
40
- schema: new Set((0, array_1.toArray)(schema.schema).map(types_1.valueTypeOrSchemaToSchema)),
40
+ schema: new Set((0, array_1.toArray)(schema.schema).map(types_1.schemaTestableToSchema)),
41
41
  array: schema.array ?? false,
42
42
  optional: schema.optional ?? false,
43
43
  nullable: schema.nullable ?? false,
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../source/schema/utils/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../source/schema/utils/schema.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
1
+ import type { OneOrMany } from "../../types";
1
2
  import type { SchemaTestable } from '../schema';
2
3
  import type { ResolvedValueType, ValueType } from '../types';
3
4
  export declare function getValueType(value: unknown): ResolvedValueType<any>;
4
5
  export declare function getValueTypeName(valueType: ValueType): string;
5
6
  export declare function getSchemaTypeNames(schema: SchemaTestable): string[];
7
+ export declare function getSchemaValueTypes(schema: OneOrMany<SchemaTestable>): ResolvedValueType<any>[];
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getSchemaTypeNames = exports.getValueTypeName = exports.getValueType = void 0;
3
+ exports.getSchemaValueTypes = exports.getSchemaTypeNames = exports.getValueTypeName = exports.getValueType = void 0;
4
4
  const array_1 = require("../../utils/array/array");
5
5
  const type_guards_1 = require("../../utils/type-guards");
6
6
  const types_1 = require("../types");
@@ -22,28 +22,33 @@ function getValueTypeName(valueType) {
22
22
  }
23
23
  exports.getValueTypeName = getValueTypeName;
24
24
  function getSchemaTypeNames(schema) {
25
+ return getSchemaValueTypes(schema)
26
+ .map((valueType) => ((0, type_guards_1.isString)(valueType) ? valueType : valueType.name));
27
+ }
28
+ exports.getSchemaTypeNames = getSchemaTypeNames;
29
+ function getSchemaValueTypes(schema) {
25
30
  if ((0, types_1.isTypeSchema)(schema)) {
26
- const name = getValueTypeName(schema.type);
27
- return [name];
31
+ return [(0, types_1.resolveValueType)(schema.type)];
28
32
  }
29
33
  if ((0, type_guards_1.isFunction)(schema)) {
30
- const name = getValueTypeName(schema);
31
- return [name];
34
+ return [schema];
32
35
  }
33
36
  if ((0, type_guards_1.isString)(schema)) {
34
37
  return [schema];
35
38
  }
36
39
  if ((0, types_1.isObjectSchema)(schema)) {
37
- const name = getValueTypeName(schema.sourceType ?? Object);
38
- return [name];
40
+ return [(0, types_1.resolveValueType)(schema.sourceType ?? Object)];
39
41
  }
40
42
  if ((0, types_1.isValueSchema)(schema)) {
41
- return [...new Set((0, array_1.toArray)(schema.schema).flatMap(getSchemaTypeNames))];
43
+ return [...new Set((0, array_1.toArray)(schema.schema).flatMap(getSchemaValueTypes))];
42
44
  }
43
45
  if ((0, types_1.isDeferredValueType)(schema)) {
44
- return getSchemaTypeNames((0, types_1.resolveValueType)(schema));
46
+ return getSchemaValueTypes((0, types_1.resolveValueType)(schema));
47
+ }
48
+ if ((0, type_guards_1.isArray)(schema)) {
49
+ return schema.flatMap(getSchemaValueTypes);
45
50
  }
46
51
  throw new Error('Unsupported schema');
47
52
  }
48
- exports.getSchemaTypeNames = getSchemaTypeNames;
53
+ exports.getSchemaValueTypes = getSchemaValueTypes;
49
54
  //# sourceMappingURL=value-type.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"value-type.js","sourceRoot":"","sources":["../../../source/schema/utils/value-type.ts"],"names":[],"mappings":";;;AACA,mDAA8C;AAC9C,yDAAgF;AAGhF,oCAA8G;AAE9G,SAAgB,YAAY,CAAC,KAAc;IACzC,IAAI,IAAA,yBAAW,EAAC,KAAK,CAAC,EAAE;QACtB,OAAO,WAAW,CAAC;KACpB;IAED,IAAI,IAAA,oBAAM,EAAC,KAAK,CAAC,EAAE;QACjB,OAAO,MAAM,CAAC;KACf;IAED,OAAQ,KAAgB,CAAC,WAAkC,CAAC;AAC9D,CAAC;AAVD,oCAUC;AAED,SAAgB,gBAAgB,CAAC,SAAoB;IACnD,MAAM,iBAAiB,GAAG,IAAA,wBAAgB,EAAC,SAAS,CAAC,CAAC;IAEtD,OAAO,IAAA,sBAAQ,EAAC,iBAAiB,CAAC;QAChC,CAAC,CAAC,iBAAiB;QACnB,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC;AAC7B,CAAC;AAND,4CAMC;AAED,SAAgB,kBAAkB,CAAC,MAAsB;IACvD,IAAI,IAAA,oBAAY,EAAC,MAAM,CAAC,EAAE;QACxB,MAAM,IAAI,GAAG,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3C,OAAO,CAAC,IAAI,CAAC,CAAC;KACf;IAED,IAAI,IAAA,wBAAU,EAAC,MAAM,CAAC,EAAE;QACtB,MAAM,IAAI,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;QACtC,OAAO,CAAC,IAAI,CAAC,CAAC;KACf;IAED,IAAI,IAAA,sBAAQ,EAAC,MAAM,CAAC,EAAE;QACpB,OAAO,CAAC,MAAM,CAAC,CAAC;KACjB;IAED,IAAI,IAAA,sBAAc,EAAC,MAAM,CAAC,EAAE;QAC1B,MAAM,IAAI,GAAG,gBAAgB,CAAC,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,CAAC;QAC3D,OAAO,CAAC,IAAI,CAAC,CAAC;KACf;IAED,IAAI,IAAA,qBAAa,EAAC,MAAM,CAAC,EAAE;QACzB,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,IAAA,eAAO,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;KACzE;IAED,IAAI,IAAA,2BAAmB,EAAC,MAAM,CAAC,EAAE;QAC/B,OAAO,kBAAkB,CAAC,IAAA,wBAAgB,EAAC,MAAM,CAAC,CAAC,CAAC;KACrD;IAED,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;AACxC,CAAC;AA7BD,gDA6BC"}
1
+ {"version":3,"file":"value-type.js","sourceRoot":"","sources":["../../../source/schema/utils/value-type.ts"],"names":[],"mappings":";;;AACA,mDAA8C;AAC9C,yDAAyF;AAGzF,oCAA8G;AAE9G,SAAgB,YAAY,CAAC,KAAc;IACzC,IAAI,IAAA,yBAAW,EAAC,KAAK,CAAC,EAAE;QACtB,OAAO,WAAW,CAAC;KACpB;IAED,IAAI,IAAA,oBAAM,EAAC,KAAK,CAAC,EAAE;QACjB,OAAO,MAAM,CAAC;KACf;IAED,OAAQ,KAAgB,CAAC,WAAkC,CAAC;AAC9D,CAAC;AAVD,oCAUC;AAED,SAAgB,gBAAgB,CAAC,SAAoB;IACnD,MAAM,iBAAiB,GAAG,IAAA,wBAAgB,EAAC,SAAS,CAAC,CAAC;IAEtD,OAAO,IAAA,sBAAQ,EAAC,iBAAiB,CAAC;QAChC,CAAC,CAAC,iBAAiB;QACnB,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC;AAC7B,CAAC;AAND,4CAMC;AAED,SAAgB,kBAAkB,CAAC,MAAsB;IACvD,OAAO,mBAAmB,CAAC,MAAM,CAAC;SAC/B,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,IAAA,sBAAQ,EAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;AAC5E,CAAC;AAHD,gDAGC;AAED,SAAgB,mBAAmB,CAAC,MAAiC;IACnE,IAAI,IAAA,oBAAY,EAAC,MAAM,CAAC,EAAE;QACxB,OAAO,CAAC,IAAA,wBAAgB,EAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;KACxC;IAED,IAAI,IAAA,wBAAU,EAAC,MAAM,CAAC,EAAE;QACtB,OAAO,CAAC,MAAM,CAAC,CAAC;KACjB;IAED,IAAI,IAAA,sBAAQ,EAAC,MAAM,CAAC,EAAE;QACpB,OAAO,CAAC,MAAM,CAAC,CAAC;KACjB;IAED,IAAI,IAAA,sBAAc,EAAC,MAAM,CAAC,EAAE;QAC1B,OAAO,CAAC,IAAA,wBAAgB,EAAC,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,CAAC,CAAC;KACxD;IAED,IAAI,IAAA,qBAAa,EAAC,MAAM,CAAC,EAAE;QACzB,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,IAAA,eAAO,EAAC,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;KAC1E;IAED,IAAI,IAAA,2BAAmB,EAAC,MAAM,CAAC,EAAE;QAC/B,OAAO,mBAAmB,CAAC,IAAA,wBAAgB,EAAC,MAAM,CAAC,CAAC,CAAC;KACtD;IAED,IAAI,IAAA,qBAAO,EAAC,MAAM,CAAC,EAAE;QACnB,OAAO,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;KAC5C;IAED,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;AACxC,CAAC;AA9BD,kDA8BC"}