@opra/common 0.33.13 → 1.0.0-alpha.10
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/browser.js +9785 -8741
- package/cjs/document/api-document.js +117 -22
- package/cjs/document/common/api-base.js +27 -0
- package/cjs/document/common/data-type-map.js +66 -0
- package/cjs/document/common/document-element.js +32 -0
- package/cjs/document/common/document-init-context.js +69 -0
- package/cjs/document/common/document-node.js +124 -0
- package/cjs/document/common/opra-document-error.js +15 -0
- package/cjs/document/common/value.js +33 -0
- package/cjs/document/constants.js +13 -7
- package/cjs/document/data-type/api-field.js +69 -0
- package/cjs/document/data-type/complex-type-base.js +188 -0
- package/cjs/document/data-type/complex-type.js +92 -13
- package/cjs/document/data-type/data-type.js +33 -25
- package/cjs/document/data-type/enum-type.js +95 -36
- package/cjs/document/data-type/extended-types/base64.type.js +30 -0
- package/cjs/document/data-type/extended-types/date-string.type.js +51 -0
- package/cjs/document/data-type/extended-types/date-time-string.type.js +54 -0
- package/cjs/document/data-type/extended-types/date-time.type.js +65 -0
- package/cjs/document/data-type/extended-types/date.type.js +62 -0
- package/cjs/document/data-type/extended-types/email.type.js +94 -0
- package/cjs/document/data-type/extended-types/field-path.type.js +59 -0
- package/cjs/document/data-type/extended-types/filter.type.js +79 -0
- package/cjs/document/data-type/extended-types/index.js +16 -0
- package/cjs/document/data-type/extended-types/object-id.type.js +30 -0
- package/cjs/document/data-type/extended-types/operation-result.type.js +66 -0
- package/cjs/document/data-type/extended-types/time.type.js +54 -0
- package/cjs/document/data-type/extended-types/url.type.js +30 -0
- package/cjs/document/data-type/extended-types/uuid.type.js +36 -0
- package/cjs/document/data-type/mapped-type.js +85 -62
- package/cjs/document/data-type/mixin-type.js +82 -23
- package/cjs/document/data-type/omit-type.js +11 -0
- package/cjs/document/data-type/partial-type.js +13 -0
- package/cjs/document/data-type/pick-type.js +11 -0
- package/cjs/document/data-type/primitive-types/any.type.js +26 -0
- package/cjs/document/data-type/primitive-types/bigint.type.js +35 -0
- package/cjs/document/data-type/{builtin → primitive-types}/boolean.type.js +17 -3
- package/cjs/document/data-type/primitive-types/index.js +11 -0
- package/cjs/document/data-type/primitive-types/integer.type.js +35 -0
- package/cjs/document/data-type/primitive-types/null.type.js +30 -0
- package/cjs/document/data-type/primitive-types/number.type.js +47 -0
- package/cjs/document/data-type/{builtin → primitive-types}/object.type.js +9 -2
- package/cjs/document/data-type/primitive-types/string.type.js +67 -0
- package/cjs/document/data-type/required-type.js +13 -0
- package/cjs/document/data-type/simple-type.js +99 -14
- package/cjs/document/data-type/utils/create-mapped-class.js +55 -0
- package/cjs/document/data-type/utils/get-is-inherited-predicate-fn.js +15 -0
- package/cjs/document/{data-type/field-decorator.js → decorators/api-field-decorator.js} +7 -7
- package/cjs/document/{data-type → decorators}/complex-type.decorator.js +11 -1
- package/cjs/document/decorators/http-controller.decorator.js +142 -0
- package/cjs/document/decorators/http-operation-entity.decorator.js +498 -0
- package/cjs/document/decorators/http-operation.decorator.js +187 -0
- package/cjs/document/decorators/simple-type.decorator.js +67 -0
- package/cjs/document/factory/api-document.factory.js +181 -0
- package/cjs/document/factory/data-type.factory.js +539 -0
- package/cjs/document/factory/http-api.factory.js +317 -0
- package/cjs/document/http/http-api.js +40 -0
- package/cjs/document/http/http-controller.js +157 -0
- package/cjs/document/http/http-media-type.js +70 -0
- package/cjs/document/http/http-multipart-field.js +33 -0
- package/cjs/document/http/http-operation-response.js +43 -0
- package/cjs/document/http/http-operation.js +106 -0
- package/cjs/document/http/http-parameter.js +46 -0
- package/cjs/document/http/http-request-body.js +25 -0
- package/cjs/document/http/http-status-range.js +40 -0
- package/cjs/document/index.js +35 -22
- package/cjs/document/utils/inspect.util.js +3 -3
- package/cjs/document/utils/parse-regexp.util.js +22 -0
- package/cjs/exception/http-errors/bad-request.error.js +3 -3
- package/cjs/exception/http-errors/conflict.error.js +3 -3
- package/cjs/exception/http-errors/failed-dependency.error.js +3 -3
- package/cjs/exception/http-errors/forbidden.error.js +3 -3
- package/cjs/exception/http-errors/internal-server.error.js +3 -3
- package/cjs/exception/http-errors/method-not-allowed.error.js +3 -3
- package/cjs/exception/http-errors/not-acceptable.error.js +3 -3
- package/cjs/exception/http-errors/not-found.error.js +3 -3
- package/cjs/exception/{resource-errors → http-errors}/permission.error.js +2 -2
- package/cjs/exception/{resource-errors → http-errors}/resource-conflict.error.js +3 -3
- package/cjs/exception/{resource-errors → http-errors}/resource-not.available.error.js +5 -5
- package/cjs/exception/http-errors/unauthorized.error.js +3 -3
- package/cjs/exception/http-errors/unprocessable-entity.error.js +3 -3
- package/cjs/exception/index.js +6 -6
- package/cjs/exception/issue-severity.enum.js +1 -1
- package/cjs/exception/opra-exception.js +5 -16
- package/cjs/exception/opra-http-error.js +25 -0
- package/cjs/filter/antlr/OpraFilterLexer.js +259 -193
- package/cjs/filter/antlr/OpraFilterParser.js +165 -166
- package/cjs/filter/ast/expressions/arithmetic-expression.js +1 -1
- package/cjs/filter/ast/expressions/logical-expression.js +1 -3
- package/cjs/filter/ast/index.js +1 -1
- package/cjs/filter/ast/terms/number-literal.js +1 -3
- package/cjs/filter/ast/terms/time-literal.js +6 -4
- package/cjs/filter/build.js +1 -5
- package/cjs/filter/filter-rules.js +95 -0
- package/cjs/filter/filter-tree-visitor.js +4 -7
- package/cjs/filter/opra-filter.ns.js +2 -2
- package/cjs/filter/parse.js +1 -3
- package/cjs/filter/utils.js +1 -3
- package/cjs/helpers/function-utils.js +2 -11
- package/cjs/helpers/get-stack-filename.js +28 -4
- package/cjs/helpers/index.js +2 -2
- package/cjs/helpers/mixin-utils.js +6 -8
- package/cjs/helpers/monkey-patches.js +14 -0
- package/cjs/helpers/object-utils.js +4 -5
- package/cjs/helpers/parse-fields-projection.js +65 -0
- package/cjs/helpers/responsive-map.js +95 -118
- package/cjs/helpers/type-guards.js +22 -29
- package/cjs/http/enums/http-status-messages.js +63 -63
- package/cjs/http/enums/mime-types.enum.js +17 -0
- package/cjs/http/index.js +1 -2
- package/cjs/i18n/i18n.js +12 -7
- package/cjs/i18n/index.js +1 -1
- package/cjs/i18n/translate.js +2 -2
- package/cjs/index.js +2 -2
- package/cjs/schema/http/http-controller.interface.js +11 -0
- package/cjs/schema/http/http-operation.interface.js +7 -0
- package/cjs/schema/index.js +27 -2
- package/cjs/schema/type-guards.js +8 -30
- package/cjs/schema/value.interface.js +2 -0
- package/esm/document/api-document.js +117 -22
- package/esm/document/common/api-base.js +23 -0
- package/esm/document/common/data-type-map.js +62 -0
- package/esm/document/common/document-element.js +29 -0
- package/esm/document/common/document-init-context.js +65 -0
- package/esm/document/common/document-node.js +120 -0
- package/esm/document/common/opra-document-error.js +11 -0
- package/esm/document/common/value.js +30 -0
- package/esm/document/constants.js +12 -6
- package/esm/document/data-type/api-field.js +66 -0
- package/esm/document/data-type/complex-type-base.js +185 -0
- package/esm/document/data-type/complex-type.js +91 -11
- package/esm/document/data-type/data-type.js +33 -24
- package/esm/document/data-type/enum-type.js +96 -36
- package/esm/document/data-type/extended-types/base64.type.js +27 -0
- package/esm/document/data-type/extended-types/date-string.type.js +48 -0
- package/esm/document/data-type/extended-types/date-time-string.type.js +51 -0
- package/esm/document/data-type/extended-types/date-time.type.js +62 -0
- package/esm/document/data-type/extended-types/date.type.js +59 -0
- package/esm/document/data-type/extended-types/email.type.js +91 -0
- package/esm/document/data-type/extended-types/field-path.type.js +56 -0
- package/esm/document/data-type/extended-types/filter.type.js +76 -0
- package/esm/document/data-type/extended-types/index.js +13 -0
- package/esm/document/data-type/extended-types/object-id.type.js +27 -0
- package/esm/document/data-type/extended-types/operation-result.type.js +63 -0
- package/esm/document/data-type/extended-types/time.type.js +51 -0
- package/esm/document/data-type/extended-types/url.type.js +27 -0
- package/esm/document/data-type/extended-types/uuid.type.js +33 -0
- package/esm/document/data-type/mapped-type.js +84 -57
- package/esm/document/data-type/mixin-type.js +84 -24
- package/esm/document/data-type/omit-type.js +7 -0
- package/esm/document/data-type/partial-type.js +9 -0
- package/esm/document/data-type/pick-type.js +7 -0
- package/esm/document/data-type/primitive-types/any.type.js +23 -0
- package/esm/document/data-type/primitive-types/bigint.type.js +32 -0
- package/esm/document/data-type/primitive-types/boolean.type.js +27 -0
- package/esm/document/data-type/primitive-types/index.js +8 -0
- package/esm/document/data-type/primitive-types/integer.type.js +32 -0
- package/esm/document/data-type/primitive-types/null.type.js +27 -0
- package/esm/document/data-type/primitive-types/number.type.js +44 -0
- package/esm/document/data-type/primitive-types/object.type.js +20 -0
- package/esm/document/data-type/primitive-types/string.type.js +64 -0
- package/esm/document/data-type/required-type.js +9 -0
- package/esm/document/data-type/simple-type.js +98 -12
- package/esm/document/data-type/utils/create-mapped-class.js +51 -0
- package/esm/document/data-type/utils/get-is-inherited-predicate-fn.js +11 -0
- package/esm/document/{data-type/field-decorator.js → decorators/api-field-decorator.js} +5 -5
- package/esm/document/{data-type → decorators}/complex-type.decorator.js +12 -2
- package/esm/document/decorators/http-controller.decorator.js +137 -0
- package/esm/document/decorators/http-operation-entity.decorator.js +496 -0
- package/esm/document/decorators/http-operation.decorator.js +182 -0
- package/esm/document/decorators/simple-type.decorator.js +61 -0
- package/esm/document/factory/api-document.factory.js +176 -0
- package/esm/document/factory/data-type.factory.js +535 -0
- package/esm/document/factory/http-api.factory.js +313 -0
- package/esm/document/http/http-api.js +36 -0
- package/esm/document/http/http-controller.js +153 -0
- package/esm/document/http/http-media-type.js +67 -0
- package/esm/document/http/http-multipart-field.js +29 -0
- package/esm/document/http/http-operation-response.js +39 -0
- package/esm/document/http/http-operation.js +102 -0
- package/esm/document/http/http-parameter.js +43 -0
- package/esm/document/http/http-request-body.js +21 -0
- package/esm/document/http/http-status-range.js +36 -0
- package/esm/document/index.js +34 -22
- package/esm/document/utils/inspect.util.js +3 -3
- package/esm/document/utils/parse-regexp.util.js +18 -0
- package/esm/exception/http-errors/bad-request.error.js +3 -3
- package/esm/exception/http-errors/conflict.error.js +3 -3
- package/esm/exception/http-errors/failed-dependency.error.js +3 -3
- package/esm/exception/http-errors/forbidden.error.js +3 -3
- package/esm/exception/http-errors/internal-server.error.js +3 -3
- package/esm/exception/http-errors/method-not-allowed.error.js +3 -3
- package/esm/exception/http-errors/not-acceptable.error.js +3 -3
- package/esm/exception/http-errors/not-found.error.js +3 -3
- package/esm/exception/{resource-errors → http-errors}/permission.error.js +2 -2
- package/esm/exception/{resource-errors → http-errors}/resource-conflict.error.js +3 -3
- package/esm/exception/{resource-errors → http-errors}/resource-not.available.error.js +5 -5
- package/esm/exception/http-errors/unauthorized.error.js +3 -3
- package/esm/exception/http-errors/unprocessable-entity.error.js +3 -3
- package/esm/exception/index.js +6 -6
- package/esm/exception/issue-severity.enum.js +1 -1
- package/esm/exception/opra-exception.js +5 -16
- package/esm/exception/opra-http-error.js +21 -0
- package/esm/filter/antlr/OpraFilterLexer.js +260 -194
- package/esm/filter/antlr/OpraFilterListener.js +1 -1
- package/esm/filter/antlr/OpraFilterParser.js +166 -167
- package/esm/filter/ast/expressions/arithmetic-expression.js +1 -1
- package/esm/filter/ast/expressions/logical-expression.js +1 -3
- package/esm/filter/ast/index.js +1 -1
- package/esm/filter/ast/terms/number-literal.js +1 -3
- package/esm/filter/ast/terms/time-literal.js +6 -4
- package/esm/filter/build.js +2 -6
- package/esm/filter/filter-rules.js +91 -0
- package/esm/filter/filter-tree-visitor.js +4 -6
- package/esm/filter/opra-filter.ns.js +2 -2
- package/esm/filter/parse.js +1 -3
- package/esm/filter/utils.js +1 -3
- package/esm/helpers/function-utils.js +1 -9
- package/esm/helpers/get-stack-filename.js +26 -3
- package/esm/helpers/index.js +2 -2
- package/esm/helpers/mixin-utils.js +6 -8
- package/esm/helpers/monkey-patches.js +14 -0
- package/esm/helpers/object-utils.js +4 -5
- package/esm/helpers/parse-fields-projection.js +59 -0
- package/esm/helpers/responsive-map.js +95 -118
- package/esm/helpers/type-guards.js +22 -29
- package/esm/http/enums/http-status-messages.js +63 -63
- package/esm/http/enums/mime-types.enum.js +14 -0
- package/esm/http/index.js +1 -2
- package/esm/i18n/i18n.js +12 -7
- package/esm/i18n/index.js +1 -1
- package/esm/i18n/translate.js +2 -2
- package/esm/index.js +2 -2
- package/esm/schema/http/http-controller.interface.js +8 -0
- package/esm/schema/http/http-operation.interface.js +4 -0
- package/esm/schema/index.js +27 -2
- package/esm/schema/type-guards.js +6 -24
- package/esm/schema/value.interface.js +1 -0
- package/package.json +17 -15
- package/types/document/api-document.d.ts +28 -51
- package/types/document/common/api-base.d.ts +17 -0
- package/types/document/common/data-type-map.d.ts +23 -0
- package/types/document/common/document-element.d.ts +23 -0
- package/types/document/common/document-init-context.d.ts +17 -0
- package/types/document/common/document-node.d.ts +65 -0
- package/types/document/common/opra-document-error.d.ts +12 -0
- package/types/document/common/value.d.ts +48 -0
- package/types/document/constants.d.ts +9 -3
- package/types/document/data-type/api-field.d.ts +67 -0
- package/types/document/data-type/complex-type-base.d.ts +80 -0
- package/types/document/data-type/complex-type.d.ts +61 -35
- package/types/document/data-type/data-type.d.ts +51 -46
- package/types/document/data-type/enum-type.d.ts +59 -23
- package/types/document/data-type/extended-types/base64.type.d.ts +7 -0
- package/types/document/data-type/extended-types/date-string.type.d.ts +9 -0
- package/types/document/data-type/extended-types/date-time-string.type.d.ts +9 -0
- package/types/document/data-type/extended-types/date-time.type.d.ts +9 -0
- package/types/document/data-type/extended-types/date.type.d.ts +9 -0
- package/types/document/data-type/extended-types/email.type.d.ts +16 -0
- package/types/document/data-type/extended-types/field-path.type.d.ts +15 -0
- package/types/document/data-type/extended-types/filter.type.d.ts +16 -0
- package/types/document/data-type/extended-types/index.d.ts +13 -0
- package/types/document/data-type/extended-types/object-id.type.d.ts +7 -0
- package/types/document/{resource/types → data-type/extended-types}/operation-result.type.d.ts +7 -6
- package/types/document/data-type/extended-types/time.type.d.ts +9 -0
- package/types/document/data-type/extended-types/url.type.d.ts +7 -0
- package/types/document/data-type/extended-types/uuid.type.d.ts +8 -0
- package/types/document/data-type/mapped-type.d.ts +55 -44
- package/types/document/data-type/mixin-type.d.ts +65 -26
- package/types/document/data-type/omit-type.d.ts +15 -0
- package/types/document/data-type/partial-type.d.ts +28 -0
- package/types/document/data-type/pick-type.d.ts +16 -0
- package/types/document/data-type/primitive-types/any.type.d.ts +7 -0
- package/types/document/data-type/primitive-types/bigint.type.d.ts +8 -0
- package/types/document/data-type/primitive-types/boolean.type.d.ts +7 -0
- package/types/document/data-type/primitive-types/index.d.ts +8 -0
- package/types/document/data-type/primitive-types/integer.type.d.ts +8 -0
- package/types/document/data-type/primitive-types/null.type.d.ts +7 -0
- package/types/document/data-type/primitive-types/number.type.d.ts +9 -0
- package/types/document/data-type/primitive-types/object.type.d.ts +3 -0
- package/types/document/data-type/primitive-types/string.type.d.ts +11 -0
- package/types/document/data-type/required-type.d.ts +22 -0
- package/types/document/data-type/simple-type.d.ts +65 -24
- package/types/document/data-type/utils/create-mapped-class.d.ts +3 -0
- package/types/document/data-type/utils/get-is-inherited-predicate-fn.d.ts +1 -0
- package/types/document/decorators/api-field-decorator.d.ts +5 -0
- package/types/document/decorators/complex-type.decorator.d.ts +2 -0
- package/types/document/decorators/http-controller.decorator.d.ts +15 -0
- package/types/document/decorators/http-operation-entity.decorator.d.ts +100 -0
- package/types/document/decorators/http-operation.decorator.d.ts +30 -0
- package/types/document/decorators/simple-type.decorator.d.ts +20 -0
- package/types/document/factory/api-document.factory.d.ts +35 -0
- package/types/document/factory/data-type.factory.d.ts +108 -0
- package/types/document/factory/http-api.factory.d.ts +60 -0
- package/types/document/http/http-api.d.ts +23 -0
- package/types/document/http/http-controller.d.ts +93 -0
- package/types/document/http/http-media-type.d.ts +59 -0
- package/types/document/http/http-multipart-field.d.ts +26 -0
- package/types/document/http/http-operation-response.d.ts +36 -0
- package/types/document/http/http-operation.d.ts +85 -0
- package/types/document/http/http-parameter.d.ts +51 -0
- package/types/document/http/http-request-body.d.ts +31 -0
- package/types/document/http/http-status-range.d.ts +14 -0
- package/types/document/index.d.ts +33 -22
- package/types/document/utils/parse-regexp.util.d.ts +4 -0
- package/types/exception/http-errors/bad-request.error.d.ts +2 -2
- package/types/exception/http-errors/conflict.error.d.ts +2 -2
- package/types/exception/http-errors/failed-dependency.error.d.ts +2 -2
- package/types/exception/http-errors/forbidden.error.d.ts +2 -2
- package/types/exception/http-errors/internal-server.error.d.ts +2 -2
- package/types/exception/http-errors/method-not-allowed.error.d.ts +2 -2
- package/types/exception/http-errors/not-acceptable.error.d.ts +2 -2
- package/types/exception/http-errors/not-found.error.d.ts +2 -2
- package/types/exception/{resource-errors → http-errors}/permission.error.d.ts +1 -1
- package/types/exception/http-errors/resource-conflict.error.d.ts +5 -0
- package/types/exception/{resource-errors → http-errors}/resource-not.available.error.d.ts +2 -2
- package/types/exception/http-errors/unauthorized.error.d.ts +2 -2
- package/types/exception/http-errors/unprocessable-entity.error.d.ts +2 -2
- package/types/exception/index.d.ts +6 -6
- package/types/exception/opra-exception.d.ts +1 -5
- package/types/exception/opra-http-error.d.ts +13 -0
- package/types/filter/antlr/OpraFilterLexer.d.ts +1 -1
- package/types/filter/antlr/OpraFilterListener.d.ts +2 -2
- package/types/filter/antlr/OpraFilterParser.d.ts +2 -2
- package/types/filter/antlr/OpraFilterVisitor.d.ts +1 -1
- package/types/filter/ast/index.d.ts +1 -1
- package/types/filter/ast/terms/qualified-identifier.d.ts +1 -1
- package/types/filter/filter-rules.d.ts +24 -0
- package/types/filter/filter-tree-visitor.d.ts +1 -3
- package/types/filter/opra-filter.ns.d.ts +2 -2
- package/types/helpers/function-utils.d.ts +2 -4
- package/types/helpers/get-stack-filename.d.ts +1 -0
- package/types/helpers/index.d.ts +2 -2
- package/types/helpers/monkey-patches.d.ts +0 -0
- package/types/helpers/parse-fields-projection.d.ts +11 -0
- package/types/helpers/responsive-map.d.ts +8 -4
- package/types/helpers/type-guards.d.ts +2 -2
- package/types/http/enums/http-status-messages.d.ts +63 -63
- package/types/http/enums/mime-types.enum.d.ts +12 -0
- package/types/http/index.d.ts +1 -2
- package/types/i18n/i18n.d.ts +23 -20
- package/types/index.d.ts +1 -1
- package/types/schema/data-type/complex-type.interface.d.ts +3 -3
- package/types/schema/data-type/data-type.interface.d.ts +6 -0
- package/types/schema/data-type/enum-type.interface.d.ts +3 -4
- package/types/schema/data-type/field.interface.d.ts +2 -10
- package/types/schema/data-type/mapped-type.interface.d.ts +7 -3
- package/types/schema/data-type/mixin-type.interface.d.ts +2 -2
- package/types/schema/data-type/simple-type.interface.d.ts +39 -7
- package/types/schema/data-type-container.interface.d.ts +7 -0
- package/types/schema/document.interface.d.ts +67 -0
- package/types/schema/http/http-controller.interface.d.ts +24 -0
- package/types/schema/http/http-media-type.interface.d.ts +65 -0
- package/types/schema/http/http-multipart-field.interface.d.ts +7 -0
- package/types/schema/http/http-operation-response.interface.d.ts +24 -0
- package/types/schema/http/http-operation.interface.d.ts +23 -0
- package/types/schema/http/http-parameter.interface.d.ts +32 -0
- package/types/schema/http/http-request-body.interface.d.ts +29 -0
- package/types/schema/http/http-status-range.interface.d.ts +4 -0
- package/types/schema/index.d.ts +62 -2
- package/types/schema/type-guards.d.ts +2 -10
- package/types/schema/types.d.ts +3 -0
- package/types/schema/value.interface.d.ts +23 -0
- package/types/types.d.ts +1 -14
- package/cjs/document/data-type/builtin/any.type.js +0 -13
- package/cjs/document/data-type/builtin/approx-date.type.js +0 -21
- package/cjs/document/data-type/builtin/approx-datetime.type.js +0 -24
- package/cjs/document/data-type/builtin/base64.type.js +0 -16
- package/cjs/document/data-type/builtin/bigint.type.js +0 -16
- package/cjs/document/data-type/builtin/date.type.js +0 -17
- package/cjs/document/data-type/builtin/datetime.type.js +0 -21
- package/cjs/document/data-type/builtin/email.type.js +0 -16
- package/cjs/document/data-type/builtin/index.js +0 -21
- package/cjs/document/data-type/builtin/integer.type.js +0 -16
- package/cjs/document/data-type/builtin/null.type.js +0 -16
- package/cjs/document/data-type/builtin/number.type.js +0 -16
- package/cjs/document/data-type/builtin/object-id.type.js +0 -16
- package/cjs/document/data-type/builtin/string.type.js +0 -16
- package/cjs/document/data-type/builtin/time.type.js +0 -23
- package/cjs/document/data-type/builtin/url.type.js +0 -16
- package/cjs/document/data-type/builtin/uuid.type.js +0 -16
- package/cjs/document/data-type/complex-type-class.js +0 -274
- package/cjs/document/data-type/enum-type-class.js +0 -39
- package/cjs/document/data-type/field-class.js +0 -67
- package/cjs/document/data-type/field.js +0 -25
- package/cjs/document/data-type/mapped-type-class.js +0 -53
- package/cjs/document/data-type/mixin-type-class.js +0 -38
- package/cjs/document/data-type/simple-type-class.js +0 -37
- package/cjs/document/data-type/simple-type.decorator.js +0 -20
- package/cjs/document/document-base.js +0 -24
- package/cjs/document/factory/api-document-factory.js +0 -262
- package/cjs/document/factory/type-document-factory.js +0 -326
- package/cjs/document/resource/action-decorator.js +0 -33
- package/cjs/document/resource/action.js +0 -34
- package/cjs/document/resource/collection-class.js +0 -257
- package/cjs/document/resource/collection-decorator.js +0 -211
- package/cjs/document/resource/collection.js +0 -25
- package/cjs/document/resource/container-class.js +0 -84
- package/cjs/document/resource/container-decorator.js +0 -24
- package/cjs/document/resource/container.js +0 -29
- package/cjs/document/resource/crud-operation-decorator.js +0 -28
- package/cjs/document/resource/crud-operation.js +0 -49
- package/cjs/document/resource/crud-resource.js +0 -34
- package/cjs/document/resource/endpoint.js +0 -59
- package/cjs/document/resource/enums/metadata-mode.enum.js +0 -19
- package/cjs/document/resource/parameter.js +0 -50
- package/cjs/document/resource/resource-decorator.js +0 -33
- package/cjs/document/resource/resource.js +0 -60
- package/cjs/document/resource/singleton-class.js +0 -83
- package/cjs/document/resource/singleton-decorator.js +0 -57
- package/cjs/document/resource/singleton.js +0 -25
- package/cjs/document/resource/storage-class.js +0 -18
- package/cjs/document/resource/storage-decorator.js +0 -70
- package/cjs/document/resource/storage.js +0 -25
- package/cjs/document/resource/types/operation-result.type.js +0 -45
- package/cjs/document/type-document.js +0 -204
- package/cjs/exception/wrap-exception.js +0 -43
- package/cjs/helpers/is-url-string.js +0 -13
- package/cjs/helpers/path-to-object-tree.js +0 -28
- package/cjs/http/opra-url-path.js +0 -261
- package/cjs/http/opra-url.js +0 -250
- package/cjs/schema/opra-schema.ns.js +0 -22
- package/cjs/schema/resource/collection.interface.js +0 -7
- package/cjs/schema/resource/container.interface.js +0 -7
- package/cjs/schema/resource/singleton.interface.js +0 -7
- package/cjs/schema/resource/storage.interface.js +0 -7
- package/esm/document/data-type/builtin/any.type.js +0 -10
- package/esm/document/data-type/builtin/approx-date.type.js +0 -18
- package/esm/document/data-type/builtin/approx-datetime.type.js +0 -21
- package/esm/document/data-type/builtin/base64.type.js +0 -13
- package/esm/document/data-type/builtin/bigint.type.js +0 -13
- package/esm/document/data-type/builtin/boolean.type.js +0 -13
- package/esm/document/data-type/builtin/date.type.js +0 -14
- package/esm/document/data-type/builtin/datetime.type.js +0 -18
- package/esm/document/data-type/builtin/email.type.js +0 -13
- package/esm/document/data-type/builtin/index.js +0 -18
- package/esm/document/data-type/builtin/integer.type.js +0 -13
- package/esm/document/data-type/builtin/null.type.js +0 -13
- package/esm/document/data-type/builtin/number.type.js +0 -13
- package/esm/document/data-type/builtin/object-id.type.js +0 -13
- package/esm/document/data-type/builtin/object.type.js +0 -13
- package/esm/document/data-type/builtin/string.type.js +0 -13
- package/esm/document/data-type/builtin/time.type.js +0 -20
- package/esm/document/data-type/builtin/url.type.js +0 -13
- package/esm/document/data-type/builtin/uuid.type.js +0 -13
- package/esm/document/data-type/complex-type-class.js +0 -270
- package/esm/document/data-type/enum-type-class.js +0 -35
- package/esm/document/data-type/field-class.js +0 -63
- package/esm/document/data-type/field.js +0 -21
- package/esm/document/data-type/mapped-type-class.js +0 -48
- package/esm/document/data-type/mixin-type-class.js +0 -34
- package/esm/document/data-type/simple-type-class.js +0 -33
- package/esm/document/data-type/simple-type.decorator.js +0 -15
- package/esm/document/document-base.js +0 -20
- package/esm/document/factory/api-document-factory.js +0 -258
- package/esm/document/factory/type-document-factory.js +0 -322
- package/esm/document/resource/action-decorator.js +0 -29
- package/esm/document/resource/action.js +0 -30
- package/esm/document/resource/collection-class.js +0 -253
- package/esm/document/resource/collection-decorator.js +0 -207
- package/esm/document/resource/collection.js +0 -21
- package/esm/document/resource/container-class.js +0 -80
- package/esm/document/resource/container-decorator.js +0 -20
- package/esm/document/resource/container.js +0 -25
- package/esm/document/resource/crud-operation-decorator.js +0 -24
- package/esm/document/resource/crud-operation.js +0 -45
- package/esm/document/resource/crud-resource.js +0 -30
- package/esm/document/resource/endpoint.js +0 -55
- package/esm/document/resource/enums/metadata-mode.enum.js +0 -16
- package/esm/document/resource/parameter.js +0 -46
- package/esm/document/resource/resource-decorator.js +0 -28
- package/esm/document/resource/resource.js +0 -56
- package/esm/document/resource/singleton-class.js +0 -79
- package/esm/document/resource/singleton-decorator.js +0 -53
- package/esm/document/resource/singleton.js +0 -21
- package/esm/document/resource/storage-class.js +0 -14
- package/esm/document/resource/storage-decorator.js +0 -66
- package/esm/document/resource/storage.js +0 -21
- package/esm/document/resource/types/operation-result.type.js +0 -42
- package/esm/document/type-document.js +0 -200
- package/esm/exception/wrap-exception.js +0 -39
- package/esm/helpers/is-url-string.js +0 -8
- package/esm/helpers/path-to-object-tree.js +0 -24
- package/esm/http/opra-url-path.js +0 -255
- package/esm/http/opra-url.js +0 -246
- package/esm/schema/opra-schema.ns.js +0 -19
- package/esm/schema/resource/collection.interface.js +0 -4
- package/esm/schema/resource/container.interface.js +0 -4
- package/esm/schema/resource/singleton.interface.js +0 -4
- package/esm/schema/resource/storage.interface.js +0 -4
- package/types/document/data-type/builtin/any.type.d.ts +0 -2
- package/types/document/data-type/builtin/approx-date.type.d.ts +0 -2
- package/types/document/data-type/builtin/approx-datetime.type.d.ts +0 -2
- package/types/document/data-type/builtin/base64.type.d.ts +0 -2
- package/types/document/data-type/builtin/bigint.type.d.ts +0 -2
- package/types/document/data-type/builtin/boolean.type.d.ts +0 -2
- package/types/document/data-type/builtin/date.type.d.ts +0 -2
- package/types/document/data-type/builtin/datetime.type.d.ts +0 -2
- package/types/document/data-type/builtin/email.type.d.ts +0 -2
- package/types/document/data-type/builtin/index.d.ts +0 -18
- package/types/document/data-type/builtin/integer.type.d.ts +0 -2
- package/types/document/data-type/builtin/null.type.d.ts +0 -2
- package/types/document/data-type/builtin/number.type.d.ts +0 -2
- package/types/document/data-type/builtin/object-id.type.d.ts +0 -2
- package/types/document/data-type/builtin/object.type.d.ts +0 -2
- package/types/document/data-type/builtin/string.type.d.ts +0 -2
- package/types/document/data-type/builtin/time.type.d.ts +0 -2
- package/types/document/data-type/builtin/url.type.d.ts +0 -2
- package/types/document/data-type/builtin/uuid.type.d.ts +0 -2
- package/types/document/data-type/complex-type-class.d.ts +0 -36
- package/types/document/data-type/complex-type.decorator.d.ts +0 -2
- package/types/document/data-type/enum-type-class.d.ts +0 -18
- package/types/document/data-type/field-class.d.ts +0 -31
- package/types/document/data-type/field-decorator.d.ts +0 -5
- package/types/document/data-type/field.d.ts +0 -46
- package/types/document/data-type/mapped-type-class.d.ts +0 -18
- package/types/document/data-type/mixin-type-class.d.ts +0 -12
- package/types/document/data-type/simple-type-class.d.ts +0 -19
- package/types/document/data-type/simple-type.decorator.d.ts +0 -2
- package/types/document/document-base.d.ts +0 -10
- package/types/document/factory/api-document-factory.d.ts +0 -49
- package/types/document/factory/type-document-factory.d.ts +0 -57
- package/types/document/interfaces/collection.interface.d.ts +0 -10
- package/types/document/interfaces/singleton.interface.d.ts +0 -7
- package/types/document/interfaces/storage.interface.d.ts +0 -8
- package/types/document/resource/action-decorator.d.ts +0 -8
- package/types/document/resource/action.d.ts +0 -30
- package/types/document/resource/collection-class.d.ts +0 -20
- package/types/document/resource/collection-decorator.d.ts +0 -204
- package/types/document/resource/collection.d.ts +0 -62
- package/types/document/resource/container-class.d.ts +0 -66
- package/types/document/resource/container-decorator.d.ts +0 -37
- package/types/document/resource/container.d.ts +0 -27
- package/types/document/resource/crud-operation-decorator.d.ts +0 -6
- package/types/document/resource/crud-operation.d.ts +0 -32
- package/types/document/resource/crud-resource.d.ts +0 -16
- package/types/document/resource/endpoint.d.ts +0 -32
- package/types/document/resource/enums/metadata-mode.enum.d.ts +0 -5
- package/types/document/resource/parameter.d.ts +0 -35
- package/types/document/resource/resource-decorator.d.ts +0 -40
- package/types/document/resource/resource.d.ts +0 -35
- package/types/document/resource/singleton-class.d.ts +0 -21
- package/types/document/resource/singleton-decorator.d.ts +0 -131
- package/types/document/resource/singleton.d.ts +0 -49
- package/types/document/resource/storage-class.d.ts +0 -17
- package/types/document/resource/storage-decorator.d.ts +0 -100
- package/types/document/resource/storage.d.ts +0 -39
- package/types/document/type-document.d.ts +0 -79
- package/types/exception/resource-errors/resource-conflict.error.d.ts +0 -5
- package/types/exception/wrap-exception.d.ts +0 -2
- package/types/helpers/is-url-string.d.ts +0 -2
- package/types/helpers/path-to-object-tree.d.ts +0 -4
- package/types/http/opra-url-path.d.ts +0 -55
- package/types/http/opra-url.d.ts +0 -66
- package/types/schema/document/api-document.interface.d.ts +0 -11
- package/types/schema/document/document-base.interface.d.ts +0 -24
- package/types/schema/document/type-document.interface.d.ts +0 -6
- package/types/schema/opra-schema.ns.d.ts +0 -19
- package/types/schema/resource/action.interface.d.ts +0 -6
- package/types/schema/resource/collection.interface.d.ts +0 -55
- package/types/schema/resource/container.interface.d.ts +0 -10
- package/types/schema/resource/endpoint.interface.d.ts +0 -13
- package/types/schema/resource/resource.interface.d.ts +0 -15
- package/types/schema/resource/singleton.interface.d.ts +0 -25
- package/types/schema/resource/storage.interface.d.ts +0 -61
- /package/cjs/{document/interfaces/collection.interface.js → schema/data-type-container.interface.js} +0 -0
- /package/cjs/{document/interfaces/singleton.interface.js → schema/document.interface.js} +0 -0
- /package/cjs/{document/interfaces/storage.interface.js → schema/http/http-media-type.interface.js} +0 -0
- /package/cjs/schema/{document/api-document.interface.js → http/http-multipart-field.interface.js} +0 -0
- /package/cjs/schema/{document/document-base.interface.js → http/http-operation-response.interface.js} +0 -0
- /package/cjs/schema/{document/type-document.interface.js → http/http-parameter.interface.js} +0 -0
- /package/cjs/schema/{resource/action.interface.js → http/http-request-body.interface.js} +0 -0
- /package/cjs/schema/{resource/endpoint.interface.js → http/http-status-range.interface.js} +0 -0
- /package/cjs/schema/{resource/resource.interface.js → types.js} +0 -0
- /package/esm/{document/interfaces/collection.interface.js → schema/data-type-container.interface.js} +0 -0
- /package/esm/{document/interfaces/singleton.interface.js → schema/document.interface.js} +0 -0
- /package/esm/{document/interfaces/storage.interface.js → schema/http/http-media-type.interface.js} +0 -0
- /package/esm/schema/{document/api-document.interface.js → http/http-multipart-field.interface.js} +0 -0
- /package/esm/schema/{document/document-base.interface.js → http/http-operation-response.interface.js} +0 -0
- /package/esm/schema/{document/type-document.interface.js → http/http-parameter.interface.js} +0 -0
- /package/esm/schema/{resource/action.interface.js → http/http-request-body.interface.js} +0 -0
- /package/esm/schema/{resource/endpoint.interface.js → http/http-status-range.interface.js} +0 -0
- /package/esm/schema/{resource/resource.interface.js → types.js} +0 -0
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { OpraDocumentError } from './opra-document-error.js';
|
|
2
|
+
export declare namespace DocumentInitContext {
|
|
3
|
+
interface Options {
|
|
4
|
+
maxErrors?: number;
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
export declare class DocumentInitContext {
|
|
8
|
+
path: string;
|
|
9
|
+
error: OpraDocumentError;
|
|
10
|
+
maxErrors: number;
|
|
11
|
+
showErrorDetails: boolean;
|
|
12
|
+
constructor(options?: DocumentInitContext.Options);
|
|
13
|
+
addError(error: Error | OpraDocumentError.ErrorDetail | string): void;
|
|
14
|
+
enter(path: string, fn: () => any): any;
|
|
15
|
+
enterAsync(path: string, fn: () => any): Promise<any>;
|
|
16
|
+
extend<T>(args: T): this & T;
|
|
17
|
+
}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { Type } from 'ts-gems';
|
|
2
|
+
import type { ApiDocument } from '../api-document.js';
|
|
3
|
+
import { kDataTypeMap } from '../constants.js';
|
|
4
|
+
import type { ComplexType } from '../data-type/complex-type';
|
|
5
|
+
import type { DataType } from '../data-type/data-type';
|
|
6
|
+
import type { EnumType } from '../data-type/enum-type';
|
|
7
|
+
import type { MappedType } from '../data-type/mapped-type';
|
|
8
|
+
import type { MixinType } from '../data-type/mixin-type';
|
|
9
|
+
import type { SimpleType } from '../data-type/simple-type';
|
|
10
|
+
import type { DataTypeMap } from './data-type-map.js';
|
|
11
|
+
import type { DocumentElement } from './document-element';
|
|
12
|
+
/**
|
|
13
|
+
* @class DocumentNode
|
|
14
|
+
*/
|
|
15
|
+
export declare class DocumentNode {
|
|
16
|
+
protected [kDataTypeMap]?: DataTypeMap;
|
|
17
|
+
protected _document?: ApiDocument;
|
|
18
|
+
readonly parent?: DocumentNode;
|
|
19
|
+
readonly element: DocumentElement;
|
|
20
|
+
constructor(element: DocumentElement, parent?: DocumentNode);
|
|
21
|
+
getDocument(): ApiDocument;
|
|
22
|
+
hasDataType(nameOrCtor: string | Type | Function | object | any[]): boolean;
|
|
23
|
+
findDataType(nameOrCtor: string | Type | Function | object | any[]): DataType | undefined;
|
|
24
|
+
/**
|
|
25
|
+
* Returns DataType instance by name or Constructor. Returns undefined if not found
|
|
26
|
+
* @param nameOrCtor
|
|
27
|
+
*/
|
|
28
|
+
getDataType(nameOrCtor: string | Type | Function | object | any[]): DataType;
|
|
29
|
+
getDataTypeNameWithNs(dataType: DataType): string | undefined;
|
|
30
|
+
/**
|
|
31
|
+
* Returns ComplexType instance by name or Constructor.
|
|
32
|
+
* Returns undefined if not found
|
|
33
|
+
* Throws error if data type is not a ComplexType
|
|
34
|
+
* @param nameOrCtor
|
|
35
|
+
*/
|
|
36
|
+
getComplexType(nameOrCtor: string | Type | Function): ComplexType;
|
|
37
|
+
/**
|
|
38
|
+
* Returns SimpleType instance by name or Constructor.
|
|
39
|
+
* Returns undefined if not found
|
|
40
|
+
* Throws error if data type is not a SimpleType
|
|
41
|
+
* @param nameOrCtor
|
|
42
|
+
*/
|
|
43
|
+
getSimpleType(nameOrCtor: string | Type): SimpleType;
|
|
44
|
+
/**
|
|
45
|
+
* Returns EnumType instance by name or Constructor.
|
|
46
|
+
* Returns undefined if not found
|
|
47
|
+
* Throws error if data type is not a EnumType
|
|
48
|
+
* @param nameOrCtor
|
|
49
|
+
*/
|
|
50
|
+
getEnumType(nameOrCtor: string | object | any[]): EnumType;
|
|
51
|
+
/**
|
|
52
|
+
* Returns EnumType instance by name or Constructor.
|
|
53
|
+
* Returns undefined if not found
|
|
54
|
+
* Throws error if data type is not a MappedType
|
|
55
|
+
* @param nameOrCtor
|
|
56
|
+
*/
|
|
57
|
+
getMappedType(nameOrCtor: string | object | any[]): MappedType;
|
|
58
|
+
/**
|
|
59
|
+
* Returns EnumType instance by name or Constructor.
|
|
60
|
+
* Returns undefined if not found
|
|
61
|
+
* Throws error if data type is not a MixinType
|
|
62
|
+
* @param nameOrCtor
|
|
63
|
+
*/
|
|
64
|
+
getMixinType(nameOrCtor: string | object | any[]): MixinType;
|
|
65
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { OpraException } from '../../exception/opra-exception.js';
|
|
2
|
+
export declare namespace OpraDocumentError {
|
|
3
|
+
interface ErrorDetail {
|
|
4
|
+
message: string;
|
|
5
|
+
path: string;
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
export declare class OpraDocumentError extends OpraException {
|
|
9
|
+
details: OpraDocumentError.ErrorDetail[];
|
|
10
|
+
constructor();
|
|
11
|
+
add(detail: OpraDocumentError.ErrorDetail): this;
|
|
12
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { Combine, StrictOmit, TypeThunkAsync } from 'ts-gems';
|
|
2
|
+
import type { OpraSchema } from '../../schema/index.js';
|
|
3
|
+
import { DataType } from '../data-type/data-type.js';
|
|
4
|
+
import type { EnumType } from '../data-type/enum-type.js';
|
|
5
|
+
import { DocumentElement } from './document-element.js';
|
|
6
|
+
/**
|
|
7
|
+
* @namespace Value
|
|
8
|
+
*/
|
|
9
|
+
export declare namespace Value {
|
|
10
|
+
interface Metadata extends StrictOmit<OpraSchema.Value, 'type'> {
|
|
11
|
+
type?: string | TypeThunkAsync | EnumType.EnumObject | EnumType.EnumArray | object;
|
|
12
|
+
}
|
|
13
|
+
interface Options extends Partial<StrictOmit<Metadata, 'type'>> {
|
|
14
|
+
type?: string | TypeThunkAsync | object;
|
|
15
|
+
}
|
|
16
|
+
interface InitArguments extends Combine<{
|
|
17
|
+
type?: DataType;
|
|
18
|
+
}, Metadata> {
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Type definition for Value
|
|
23
|
+
* @class Value
|
|
24
|
+
*/
|
|
25
|
+
interface ValueStatic {
|
|
26
|
+
new (owner: DocumentElement, args: Value.InitArguments): Value;
|
|
27
|
+
prototype: Value;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Type definition of Value prototype
|
|
31
|
+
* @interface Value
|
|
32
|
+
*/
|
|
33
|
+
export interface Value extends ValueClass {
|
|
34
|
+
}
|
|
35
|
+
export declare const Value: ValueStatic;
|
|
36
|
+
/**
|
|
37
|
+
* @class Value
|
|
38
|
+
*/
|
|
39
|
+
declare class ValueClass extends DocumentElement {
|
|
40
|
+
readonly owner: DocumentElement;
|
|
41
|
+
readonly name: string | RegExp;
|
|
42
|
+
type?: DataType;
|
|
43
|
+
description?: string;
|
|
44
|
+
examples?: any[] | Record<string, any>;
|
|
45
|
+
isArray?: boolean;
|
|
46
|
+
toJSON(): OpraSchema.Value;
|
|
47
|
+
}
|
|
48
|
+
export {};
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
export declare const DATATYPE_METADATA: unique symbol;
|
|
2
|
-
export declare const
|
|
2
|
+
export declare const HTTP_CONTROLLER_METADATA: unique symbol;
|
|
3
|
+
export declare const DECODER: unique symbol;
|
|
4
|
+
export declare const ENCODER: unique symbol;
|
|
3
5
|
export declare const DECORATOR: unique symbol;
|
|
6
|
+
export declare const BUILTIN: unique symbol;
|
|
4
7
|
export declare const NAMESPACE_PATTERN: RegExp;
|
|
5
|
-
export declare const
|
|
6
|
-
export declare const
|
|
8
|
+
export declare const CLASS_NAME_PATTERN: RegExp;
|
|
9
|
+
export declare const EXTRACT_TYPENAME_PATTERN: RegExp;
|
|
10
|
+
export declare const kDataTypeMap: unique symbol;
|
|
11
|
+
export declare const kCtorMap: unique symbol;
|
|
12
|
+
export declare const kTypeNSMap: unique symbol;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { Combine, TypeThunkAsync } from 'ts-gems';
|
|
2
|
+
import { OpraSchema } from '../../schema/index.js';
|
|
3
|
+
import { DocumentElement } from '../common/document-element.js';
|
|
4
|
+
import { ApiFieldDecorator } from '../decorators/api-field-decorator.js';
|
|
5
|
+
import type { ComplexType } from './complex-type.js';
|
|
6
|
+
import type { DataType } from './data-type.js';
|
|
7
|
+
import type { EnumType } from './enum-type.js';
|
|
8
|
+
import type { MappedType } from './mapped-type.js';
|
|
9
|
+
import type { MixinType } from './mixin-type.js';
|
|
10
|
+
/**
|
|
11
|
+
* @namespace ApiField
|
|
12
|
+
*/
|
|
13
|
+
export declare namespace ApiField {
|
|
14
|
+
interface Metadata extends Combine<{
|
|
15
|
+
type?: string | OpraSchema.DataType | TypeThunkAsync | EnumType.EnumObject | EnumType.EnumArray | object;
|
|
16
|
+
}, OpraSchema.Field> {
|
|
17
|
+
}
|
|
18
|
+
interface Options extends Partial<Metadata> {
|
|
19
|
+
}
|
|
20
|
+
interface InitArguments extends Combine<{
|
|
21
|
+
name: string;
|
|
22
|
+
origin?: ComplexType | MappedType | MixinType;
|
|
23
|
+
type?: DataType;
|
|
24
|
+
}, Metadata> {
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Type definition of ComplexType constructor type
|
|
29
|
+
* @type ApiFieldConstructor
|
|
30
|
+
*/
|
|
31
|
+
export interface ApiFieldConstructor extends ApiFieldDecorator {
|
|
32
|
+
prototype: ApiField;
|
|
33
|
+
new (owner: ComplexType | MappedType | MixinType, args: ApiField.InitArguments): ApiField;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* @class ApiField
|
|
37
|
+
*/
|
|
38
|
+
export interface ApiField extends ApiFieldClass {
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* @constructor ApiField
|
|
42
|
+
* @decorator ApiField
|
|
43
|
+
*/
|
|
44
|
+
export declare const ApiField: ApiFieldConstructor;
|
|
45
|
+
/**
|
|
46
|
+
*
|
|
47
|
+
* @class ApiField
|
|
48
|
+
*/
|
|
49
|
+
declare class ApiFieldClass extends DocumentElement {
|
|
50
|
+
readonly owner: ComplexType | MappedType | MixinType;
|
|
51
|
+
readonly origin?: ComplexType | MappedType | MixinType;
|
|
52
|
+
readonly name: string;
|
|
53
|
+
readonly type: DataType;
|
|
54
|
+
readonly description?: string;
|
|
55
|
+
readonly isArray?: boolean;
|
|
56
|
+
readonly default?: any;
|
|
57
|
+
readonly fixed?: any;
|
|
58
|
+
readonly required?: boolean;
|
|
59
|
+
readonly exclusive?: boolean;
|
|
60
|
+
readonly translatable?: boolean;
|
|
61
|
+
readonly deprecated?: boolean | string;
|
|
62
|
+
readonly readonly?: boolean;
|
|
63
|
+
readonly writeonly?: boolean;
|
|
64
|
+
readonly examples?: any[] | Record<string, any>;
|
|
65
|
+
toJSON(): OpraSchema.Field;
|
|
66
|
+
}
|
|
67
|
+
export {};
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { StrictOmit, Type } from 'ts-gems';
|
|
2
|
+
import { IsObject, Validator } from 'valgen';
|
|
3
|
+
import { FieldsProjection, ResponsiveMap } from '../../helpers/index.js';
|
|
4
|
+
import { OpraSchema } from '../../schema/index.js';
|
|
5
|
+
import type { DocumentElement } from '../common/document-element.js';
|
|
6
|
+
import { DocumentInitContext } from '../common/document-init-context.js';
|
|
7
|
+
import type { ApiField } from './api-field';
|
|
8
|
+
import type { ComplexType } from './complex-type';
|
|
9
|
+
import { DataType } from './data-type.js';
|
|
10
|
+
import Field = OpraSchema.Field;
|
|
11
|
+
export declare const FIELD_PATH_PATTERN: RegExp;
|
|
12
|
+
/**
|
|
13
|
+
* Type definition of class constructor for ComplexTypeBase
|
|
14
|
+
* @class ComplexTypeBase
|
|
15
|
+
*/
|
|
16
|
+
interface ComplexTypeBaseStatic {
|
|
17
|
+
/**
|
|
18
|
+
* Class constructor of MappedType
|
|
19
|
+
*
|
|
20
|
+
* @param owner
|
|
21
|
+
* @param initArgs
|
|
22
|
+
* @param context
|
|
23
|
+
* @constructor
|
|
24
|
+
*/
|
|
25
|
+
new (owner: DocumentElement, initArgs: DataType.InitArguments, context?: DocumentInitContext): ComplexTypeBase;
|
|
26
|
+
prototype: ComplexTypeBase;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Type definition of ComplexTypeBase prototype
|
|
30
|
+
* @interface ComplexTypeBase
|
|
31
|
+
*/
|
|
32
|
+
export interface ComplexTypeBase extends ComplexTypeBaseClass {
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
*
|
|
36
|
+
* @constructor
|
|
37
|
+
*/
|
|
38
|
+
export declare const ComplexTypeBase: ComplexTypeBaseStatic;
|
|
39
|
+
/**
|
|
40
|
+
*
|
|
41
|
+
*/
|
|
42
|
+
declare abstract class ComplexTypeBaseClass extends DataType {
|
|
43
|
+
readonly ctor?: Type;
|
|
44
|
+
readonly fields: ResponsiveMap<ApiField>;
|
|
45
|
+
readonly additionalFields?: boolean | DataType | ['error'] | ['error', string];
|
|
46
|
+
readonly keyField?: Field.Name;
|
|
47
|
+
/**
|
|
48
|
+
*
|
|
49
|
+
*/
|
|
50
|
+
findField(nameOrPath: string): ApiField | undefined;
|
|
51
|
+
/**
|
|
52
|
+
*
|
|
53
|
+
*/
|
|
54
|
+
getField(nameOrPath: string): ApiField;
|
|
55
|
+
/**
|
|
56
|
+
*
|
|
57
|
+
*/
|
|
58
|
+
parseFieldPath(fieldPath: string, options?: {
|
|
59
|
+
allowSigns?: 'first' | 'each';
|
|
60
|
+
}): ComplexType.ParsedFieldPath[];
|
|
61
|
+
/**
|
|
62
|
+
*
|
|
63
|
+
*/
|
|
64
|
+
normalizeFieldPath(fieldPath: string, options?: {
|
|
65
|
+
allowSigns?: 'first' | 'each';
|
|
66
|
+
}): string;
|
|
67
|
+
/**
|
|
68
|
+
*
|
|
69
|
+
*/
|
|
70
|
+
generateCodec(codec: 'encode' | 'decode', options?: DataType.GenerateCodecOptions): Validator;
|
|
71
|
+
protected _generateSchema(codec: 'encode' | 'decode', context: StrictOmit<DataType.GenerateCodecOptions, 'projection'> & {
|
|
72
|
+
currentPath: string;
|
|
73
|
+
projection?: FieldsProjection | '*';
|
|
74
|
+
}): IsObject.Schema;
|
|
75
|
+
protected _generateFieldCodec(codec: 'encode' | 'decode', field: ApiField, context: StrictOmit<DataType.GenerateCodecOptions, 'projection'> & {
|
|
76
|
+
currentPath: string;
|
|
77
|
+
projection?: FieldsProjection;
|
|
78
|
+
}): Validator;
|
|
79
|
+
}
|
|
80
|
+
export {};
|
|
@@ -1,51 +1,77 @@
|
|
|
1
1
|
import 'reflect-metadata';
|
|
2
|
-
import {
|
|
3
|
-
import { ResponsiveMap } from '../../helpers/index.js';
|
|
2
|
+
import { Combine, Type, TypeThunkAsync } from 'ts-gems';
|
|
4
3
|
import { OpraSchema } from '../../schema/index.js';
|
|
5
|
-
import type {
|
|
6
|
-
import
|
|
7
|
-
import {
|
|
4
|
+
import type { DocumentElement } from '../common/document-element.js';
|
|
5
|
+
import { DocumentInitContext } from '../common/document-init-context.js';
|
|
6
|
+
import { ApiField } from './api-field.js';
|
|
7
|
+
import { ComplexTypeBase } from './complex-type-base.js';
|
|
8
8
|
import { DataType } from './data-type.js';
|
|
9
|
-
import { ApiField } from './field.js';
|
|
10
9
|
import type { MappedType } from './mapped-type.js';
|
|
11
10
|
import type { MixinType } from './mixin-type.js';
|
|
12
11
|
/**
|
|
13
|
-
*
|
|
12
|
+
* @namespace ComplexType
|
|
13
|
+
*/
|
|
14
|
+
export declare namespace ComplexType {
|
|
15
|
+
interface Metadata extends Combine<{
|
|
16
|
+
kind: OpraSchema.ComplexType.Kind;
|
|
17
|
+
fields?: Record<string, ApiField.Metadata>;
|
|
18
|
+
additionalFields?: boolean | string | TypeThunkAsync | ['error'] | ['error', string];
|
|
19
|
+
}, DataType.Metadata, OpraSchema.ComplexType> {
|
|
20
|
+
}
|
|
21
|
+
interface Options extends Combine<Pick<Metadata, 'additionalFields' | 'keyField'>, DataType.Options, Pick<OpraSchema.ComplexType, 'abstract'>> {
|
|
22
|
+
}
|
|
23
|
+
interface InitArguments extends Combine<{
|
|
24
|
+
kind: OpraSchema.ComplexType.Kind;
|
|
25
|
+
base?: ComplexType | MappedType | MixinType;
|
|
26
|
+
fields?: Record<string, ApiField.InitArguments | ApiField>;
|
|
27
|
+
additionalFields?: boolean | DataType | ['error'] | ['error', string];
|
|
28
|
+
}, DataType.InitArguments, ComplexType.Metadata> {
|
|
29
|
+
}
|
|
30
|
+
interface ParsedFieldPath {
|
|
31
|
+
fieldName: string;
|
|
32
|
+
dataType: DataType;
|
|
33
|
+
field?: ApiField;
|
|
34
|
+
additionalField?: boolean;
|
|
35
|
+
sign?: '+' | '-';
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Type definition for MixinType
|
|
40
|
+
* @class ComplexType
|
|
14
41
|
*/
|
|
15
|
-
export interface
|
|
16
|
-
|
|
17
|
-
|
|
42
|
+
export interface ComplexTypeStatic {
|
|
43
|
+
/**
|
|
44
|
+
* Class constructor of ComplexType
|
|
45
|
+
*
|
|
46
|
+
* @param owner
|
|
47
|
+
* @param args
|
|
48
|
+
* @param context
|
|
49
|
+
* @constructor
|
|
50
|
+
*/
|
|
51
|
+
new (owner: DocumentElement, args?: ComplexType.InitArguments, context?: DocumentInitContext): ComplexType;
|
|
52
|
+
(options?: ComplexType.Options): ClassDecorator;
|
|
18
53
|
prototype: ComplexType;
|
|
54
|
+
extend<T extends Type>(typeClass: T, fields: Record<string, ApiField.Options>): T;
|
|
19
55
|
}
|
|
56
|
+
/**
|
|
57
|
+
* Type definition of ComplexType prototype
|
|
58
|
+
* @interface ComplexType
|
|
59
|
+
*/
|
|
20
60
|
export interface ComplexType extends ComplexTypeClass {
|
|
21
61
|
}
|
|
22
62
|
/**
|
|
23
|
-
*
|
|
24
|
-
* @decorator ComplexType
|
|
63
|
+
* ComplexType constructor
|
|
25
64
|
*/
|
|
26
|
-
export declare const ComplexType:
|
|
65
|
+
export declare const ComplexType: ComplexTypeStatic;
|
|
27
66
|
/**
|
|
28
|
-
*
|
|
67
|
+
*
|
|
68
|
+
* @class ComplexType
|
|
29
69
|
*/
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
}
|
|
37
|
-
interface OwnProperties extends DataType.OwnProperties {
|
|
38
|
-
ctor?: Type;
|
|
39
|
-
additionalFields?: boolean | DataType | 'error';
|
|
40
|
-
fields: ResponsiveMap<ApiField>;
|
|
41
|
-
embedded?: boolean;
|
|
42
|
-
}
|
|
43
|
-
interface DecoratorOptions extends DataType.DecoratorOptions, Pick<InitArguments, 'ctor' | 'abstract'> {
|
|
44
|
-
embedded?: boolean;
|
|
45
|
-
additionalFields?: boolean | 'error' | string | TypeThunkAsync;
|
|
46
|
-
}
|
|
47
|
-
interface Metadata extends StrictOmit<OpraSchema.ComplexType, 'fields'> {
|
|
48
|
-
name: string;
|
|
49
|
-
fields?: Record<string, ApiField.Metadata>;
|
|
50
|
-
}
|
|
70
|
+
declare abstract class ComplexTypeClass extends ComplexTypeBase {
|
|
71
|
+
readonly kind: OpraSchema.ComplexType.Kind;
|
|
72
|
+
readonly base?: ComplexType | MappedType | MixinType;
|
|
73
|
+
readonly ctor?: Type;
|
|
74
|
+
extendsFrom(baseType: DataType | string | Type | object): boolean;
|
|
75
|
+
toJSON(): OpraSchema.ComplexType;
|
|
51
76
|
}
|
|
77
|
+
export {};
|
|
@@ -1,57 +1,62 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
1
|
+
import { StrictOmit, Type } from 'ts-gems';
|
|
2
|
+
import { ValidationOptions, Validator } from 'valgen';
|
|
3
|
+
import { FieldsProjection } from '../../helpers/index.js';
|
|
4
|
+
import type { DataTypeBase } from '../../schema/data-type/data-type.interface.js';
|
|
3
5
|
import { OpraSchema } from '../../schema/index.js';
|
|
4
|
-
import
|
|
6
|
+
import { DocumentElement } from '../common/document-element.js';
|
|
7
|
+
import { DocumentInitContext } from '../common/document-init-context.js';
|
|
5
8
|
import { nodeInspectCustom } from '../utils/inspect.util.js';
|
|
6
|
-
import { ApiField } from './field.js';
|
|
7
9
|
/**
|
|
8
|
-
* @
|
|
9
|
-
* @abstract
|
|
10
|
+
* @namespace DataType
|
|
10
11
|
*/
|
|
11
|
-
export declare abstract class DataType {
|
|
12
|
-
readonly document: ApiDocument;
|
|
13
|
-
readonly kind: OpraSchema.DataType.Kind;
|
|
14
|
-
readonly name?: string;
|
|
15
|
-
readonly base?: DataType;
|
|
16
|
-
readonly own: DataType.OwnProperties;
|
|
17
|
-
description?: string;
|
|
18
|
-
isEmbedded?: boolean;
|
|
19
|
-
protected constructor(document: ApiDocument, init?: DataType.InitArguments);
|
|
20
|
-
abstract generateCodec(codec: 'decode' | 'encode', options?: DataType.GenerateCodecOptions): Validator;
|
|
21
|
-
exportSchema(options?: {
|
|
22
|
-
webSafe?: boolean;
|
|
23
|
-
}): OpraSchema.DataType;
|
|
24
|
-
extendsFrom(type: string | Type | DataType): any;
|
|
25
|
-
toString(): string;
|
|
26
|
-
[nodeInspectCustom](): string;
|
|
27
|
-
}
|
|
28
12
|
export declare namespace DataType {
|
|
29
|
-
interface
|
|
13
|
+
interface Metadata extends DataTypeBase {
|
|
30
14
|
name?: string;
|
|
31
|
-
description?: string;
|
|
32
|
-
example?: string | string[];
|
|
33
15
|
}
|
|
34
|
-
interface
|
|
16
|
+
interface Options extends Partial<StrictOmit<Metadata, 'kind' | 'examples'>> {
|
|
17
|
+
embedded?: boolean;
|
|
35
18
|
}
|
|
36
|
-
interface
|
|
37
|
-
kind: OpraSchema.DataType.Kind;
|
|
19
|
+
interface InitArguments extends DataType.Metadata {
|
|
38
20
|
}
|
|
39
|
-
interface
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
};
|
|
47
|
-
interface GenerateCodecOptions {
|
|
48
|
-
caseSensitive?: boolean;
|
|
49
|
-
pick?: string[] | readonly string[];
|
|
50
|
-
omit?: string[] | readonly string[];
|
|
51
|
-
partial?: boolean;
|
|
52
|
-
operation?: 'read' | 'write';
|
|
53
|
-
overwriteFields?: Record<string, OverrideFieldsConfig>;
|
|
54
|
-
designType?: Type;
|
|
55
|
-
onFail?: OnFailFunction;
|
|
21
|
+
interface GenerateCodecOptions extends ValidationOptions {
|
|
22
|
+
documentElement?: DocumentElement;
|
|
23
|
+
caseInSensitive?: boolean;
|
|
24
|
+
partial?: boolean | 'deep';
|
|
25
|
+
projection?: string[] | FieldsProjection | '*';
|
|
26
|
+
ignoreReadonlyFields?: boolean;
|
|
27
|
+
ignoreWriteonlyFields?: boolean;
|
|
56
28
|
}
|
|
57
29
|
}
|
|
30
|
+
interface DataTypeStatic {
|
|
31
|
+
new (owner: DocumentElement, args?: DataType.InitArguments, context?: DocumentInitContext): DataType;
|
|
32
|
+
prototype: DataType;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Type definition of DataType prototype
|
|
36
|
+
* @interface DataType
|
|
37
|
+
*/
|
|
38
|
+
export interface DataType extends DataTypeClass {
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* DataType constructor
|
|
42
|
+
*/
|
|
43
|
+
export declare const DataType: DataTypeStatic;
|
|
44
|
+
/**
|
|
45
|
+
*
|
|
46
|
+
* @class DataType
|
|
47
|
+
*/
|
|
48
|
+
declare abstract class DataTypeClass extends DocumentElement {
|
|
49
|
+
readonly kind: OpraSchema.DataType.Kind;
|
|
50
|
+
readonly owner: DocumentElement;
|
|
51
|
+
readonly name?: string;
|
|
52
|
+
readonly description?: string;
|
|
53
|
+
readonly abstract?: boolean;
|
|
54
|
+
readonly examples?: OpraSchema.DataTypeExample[];
|
|
55
|
+
abstract generateCodec(codec: 'encode' | 'decode', options?: DataType.GenerateCodecOptions): Validator;
|
|
56
|
+
get embedded(): any;
|
|
57
|
+
abstract extendsFrom(baseType: DataType | string | Type | object): boolean;
|
|
58
|
+
toJSON(): OpraSchema.DataType;
|
|
59
|
+
toString(): string;
|
|
60
|
+
[nodeInspectCustom](): string;
|
|
61
|
+
}
|
|
62
|
+
export {};
|
|
@@ -1,34 +1,70 @@
|
|
|
1
1
|
import 'reflect-metadata';
|
|
2
|
-
import {
|
|
2
|
+
import { Combine, Type } from 'ts-gems';
|
|
3
|
+
import { Validator } from 'valgen';
|
|
3
4
|
import { OpraSchema } from '../../schema/index.js';
|
|
4
|
-
import type {
|
|
5
|
+
import type { DocumentElement } from '../common/document-element.js';
|
|
5
6
|
import { DataType } from './data-type.js';
|
|
6
|
-
import { EnumTypeClass } from './enum-type-class.js';
|
|
7
|
-
export interface EnumTypeConstructor {
|
|
8
|
-
new (document: ApiDocument, init?: EnumType.InitArguments): EnumType;
|
|
9
|
-
<T extends EnumType.EnumObject | EnumType.EnumArray>(target: T, options: EnumType.Options<T>): EnumType.Metadata;
|
|
10
|
-
}
|
|
11
|
-
export interface EnumType extends EnumTypeClass {
|
|
12
|
-
}
|
|
13
7
|
/**
|
|
14
|
-
* @
|
|
8
|
+
* @namespace EnumType
|
|
15
9
|
*/
|
|
16
|
-
export declare const EnumType: EnumTypeConstructor;
|
|
17
10
|
export declare namespace EnumType {
|
|
18
|
-
type EnumObject = Record<string,
|
|
11
|
+
type EnumObject = Record<string, string | number>;
|
|
19
12
|
type EnumArray = readonly string[];
|
|
20
|
-
interface Metadata extends
|
|
21
|
-
|
|
22
|
-
base?: EnumObject | string;
|
|
23
|
-
}
|
|
24
|
-
interface InitArguments extends DataType.InitArguments, Pick<OpraSchema.EnumType, 'base'> {
|
|
25
|
-
enumObject?: object;
|
|
26
|
-
base?: EnumType;
|
|
27
|
-
values: Record<OpraSchema.EnumType.Value, OpraSchema.EnumType.ValueInfo>;
|
|
28
|
-
}
|
|
29
|
-
interface Options<T, Keys extends (string | number | symbol) = T extends readonly any[] ? T[number] : keyof T> extends DataType.DecoratorOptions {
|
|
13
|
+
interface Metadata extends Combine<{
|
|
14
|
+
kind: OpraSchema.EnumType.Kind;
|
|
15
|
+
base?: EnumObject | EnumArray | string;
|
|
30
16
|
name: string;
|
|
31
|
-
|
|
17
|
+
}, DataType.Metadata, OpraSchema.EnumType> {
|
|
18
|
+
}
|
|
19
|
+
interface Options<T, Keys extends string | number | symbol = T extends readonly any[] ? T[number] : keyof T> extends Combine<{
|
|
20
|
+
base?: EnumObject | EnumArray | string;
|
|
32
21
|
meanings?: Record<Keys, string>;
|
|
22
|
+
}, DataType.Options> {
|
|
23
|
+
}
|
|
24
|
+
interface InitArguments extends Combine<{
|
|
25
|
+
kind: OpraSchema.EnumType.Kind;
|
|
26
|
+
base?: EnumType;
|
|
27
|
+
instance?: object;
|
|
28
|
+
}, DataType.InitArguments, EnumType.Metadata> {
|
|
33
29
|
}
|
|
34
30
|
}
|
|
31
|
+
/**
|
|
32
|
+
* Mixin type definition of class constructor and helper method for EnumType
|
|
33
|
+
*/
|
|
34
|
+
export interface EnumTypeStatic {
|
|
35
|
+
/**
|
|
36
|
+
* Class constructor of EnumType
|
|
37
|
+
*
|
|
38
|
+
* @param owner
|
|
39
|
+
* @param args
|
|
40
|
+
* @constructor
|
|
41
|
+
*/
|
|
42
|
+
new (owner: DocumentElement, args?: EnumType.InitArguments): EnumType;
|
|
43
|
+
<T extends EnumType.EnumObject, B extends EnumType.EnumObject>(enumSource: T, base: B, options: EnumType.Options<T>): B & T;
|
|
44
|
+
<T extends EnumType.EnumArray, B extends EnumType.EnumArray>(enumSource: T, base: B, options: EnumType.Options<T>): B & T;
|
|
45
|
+
<T extends EnumType.EnumObject | EnumType.EnumArray>(target: T, options: EnumType.Options<T>): T;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Type definition of EnumType prototype
|
|
49
|
+
* @interface EnumType
|
|
50
|
+
*/
|
|
51
|
+
export interface EnumType extends EnumTypeClass {
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* @class EnumType
|
|
55
|
+
*/
|
|
56
|
+
export declare const EnumType: EnumTypeStatic;
|
|
57
|
+
/**
|
|
58
|
+
* @class EnumType
|
|
59
|
+
*/
|
|
60
|
+
declare class EnumTypeClass extends DataType {
|
|
61
|
+
readonly kind: OpraSchema.EnumType.Kind;
|
|
62
|
+
readonly base?: EnumType;
|
|
63
|
+
readonly instance?: object;
|
|
64
|
+
readonly attributes: Record<string | number, OpraSchema.EnumType.ValueInfo>;
|
|
65
|
+
readonly ownAttributes: Record<string | number, OpraSchema.EnumType.ValueInfo>;
|
|
66
|
+
extendsFrom(baseType: DataType | string | Type | object): boolean;
|
|
67
|
+
generateCodec(): Validator;
|
|
68
|
+
toJSON(): OpraSchema.EnumType;
|
|
69
|
+
}
|
|
70
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Validator } from 'valgen';
|
|
2
|
+
import { DECODER, ENCODER } from '../../constants.js';
|
|
3
|
+
export declare class DateStringType {
|
|
4
|
+
constructor(attributes?: Partial<DateStringType>);
|
|
5
|
+
protected [DECODER](properties: Partial<this>): Validator;
|
|
6
|
+
protected [ENCODER](properties: Partial<this>): Validator;
|
|
7
|
+
minValue?: string;
|
|
8
|
+
maxValue?: string;
|
|
9
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Validator } from 'valgen';
|
|
2
|
+
import { DECODER, ENCODER } from '../../constants.js';
|
|
3
|
+
export declare class DateTimeStringType {
|
|
4
|
+
constructor(attributes?: Partial<DateTimeStringType>);
|
|
5
|
+
protected [DECODER](properties: Partial<this>): Validator;
|
|
6
|
+
protected [ENCODER](properties: Partial<this>): Validator;
|
|
7
|
+
minValue?: string;
|
|
8
|
+
maxValue?: string;
|
|
9
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Validator } from 'valgen';
|
|
2
|
+
import { DECODER, ENCODER } from '../../constants.js';
|
|
3
|
+
export declare class DateTimeType {
|
|
4
|
+
constructor(attributes?: Partial<DateTimeType>);
|
|
5
|
+
protected [DECODER](properties: Partial<this>): Validator;
|
|
6
|
+
protected [ENCODER](properties: Partial<this>): Validator;
|
|
7
|
+
minValue?: string;
|
|
8
|
+
maxValue?: string;
|
|
9
|
+
}
|