@opra/common 0.33.13 → 1.0.0-alpha.2
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 +4657 -3899
- package/cjs/document/api-document.js +112 -23
- 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 +31 -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 +64 -0
- package/cjs/document/data-type/complex-type-base.js +183 -0
- package/cjs/document/data-type/complex-type.js +89 -13
- package/cjs/document/data-type/data-type.js +32 -25
- package/cjs/document/data-type/enum-type.js +92 -36
- package/cjs/document/data-type/{builtin → extended-types}/base64.type.js +11 -2
- package/cjs/document/data-type/extended-types/date-string.type.js +44 -0
- package/cjs/document/data-type/extended-types/date-time-string.type.js +47 -0
- package/cjs/document/data-type/extended-types/date-time.type.js +58 -0
- package/cjs/document/data-type/extended-types/date.type.js +55 -0
- package/cjs/document/data-type/extended-types/email.type.js +80 -0
- package/cjs/document/data-type/extended-types/field-path.type.js +53 -0
- package/cjs/document/data-type/extended-types/filter.type.js +74 -0
- package/cjs/document/data-type/extended-types/index.js +16 -0
- package/cjs/document/data-type/{builtin → extended-types}/object-id.type.js +11 -2
- package/cjs/document/data-type/extended-types/operation-result.type.js +56 -0
- package/cjs/document/data-type/extended-types/time.type.js +47 -0
- package/cjs/document/data-type/{builtin → extended-types}/url.type.js +12 -3
- package/cjs/document/data-type/extended-types/uuid.type.js +30 -0
- package/cjs/document/data-type/mapped-type.js +77 -61
- package/cjs/document/data-type/mixin-type.js +78 -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 +25 -0
- package/cjs/document/data-type/primitive-types/bigint.type.js +30 -0
- package/cjs/document/data-type/{builtin → primitive-types}/boolean.type.js +11 -2
- package/cjs/document/data-type/primitive-types/index.js +11 -0
- package/cjs/document/data-type/primitive-types/integer.type.js +30 -0
- package/cjs/document/data-type/{builtin → primitive-types}/null.type.js +11 -2
- package/cjs/document/data-type/primitive-types/number.type.js +40 -0
- package/cjs/document/data-type/{builtin → primitive-types}/object.type.js +7 -1
- package/cjs/document/data-type/primitive-types/string.type.js +58 -0
- package/cjs/document/data-type/required-type.js +13 -0
- package/cjs/document/data-type/simple-type.js +93 -14
- package/cjs/document/data-type/utils/create-mapped-class.js +54 -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 +117 -0
- package/cjs/document/decorators/http-operation-entity.decorator.js +462 -0
- package/cjs/document/decorators/http-operation.decorator.js +183 -0
- package/cjs/document/decorators/simple-type.decorator.js +67 -0
- package/cjs/document/factory/api-document.factory.js +178 -0
- package/cjs/document/factory/data-type.factory.js +498 -0
- package/cjs/document/factory/http-api.factory.js +315 -0
- package/cjs/document/http/http-api.js +40 -0
- package/cjs/document/http/http-controller.js +145 -0
- package/cjs/document/http/http-media-type.js +68 -0
- package/cjs/document/http/http-multipart-field.js +33 -0
- package/cjs/document/http/http-operation-response.js +42 -0
- package/cjs/document/http/http-operation.js +93 -0
- package/cjs/document/http/http-parameter.js +44 -0
- package/cjs/document/http/http-request-body.js +25 -0
- package/cjs/document/http/http-status-range.js +41 -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 +4 -4
- 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 +137 -84
- package/cjs/filter/ast/expressions/arithmetic-expression.js +1 -1
- package/cjs/filter/ast/expressions/logical-expression.js +1 -3
- 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 -3
- package/cjs/filter/filter-rules.js +93 -0
- package/cjs/filter/filter-tree-visitor.js +4 -7
- package/cjs/filter/parse.js +2 -2
- 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 +5 -8
- package/cjs/helpers/monkey-patches.js +12 -0
- package/cjs/helpers/object-utils.js +4 -5
- package/cjs/helpers/parse-fields-projection.js +67 -0
- package/cjs/helpers/responsive-map.js +93 -117
- 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 +9 -5
- package/cjs/i18n/translate.js +2 -2
- package/cjs/index.js +1 -1
- 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 +112 -23
- 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 +28 -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 +61 -0
- package/esm/document/data-type/complex-type-base.js +180 -0
- package/esm/document/data-type/complex-type.js +88 -11
- package/esm/document/data-type/data-type.js +32 -24
- package/esm/document/data-type/enum-type.js +93 -36
- package/esm/document/data-type/extended-types/base64.type.js +22 -0
- package/esm/document/data-type/extended-types/date-string.type.js +41 -0
- package/esm/document/data-type/extended-types/date-time-string.type.js +44 -0
- package/esm/document/data-type/extended-types/date-time.type.js +55 -0
- package/esm/document/data-type/extended-types/date.type.js +52 -0
- package/esm/document/data-type/extended-types/email.type.js +77 -0
- package/esm/document/data-type/extended-types/field-path.type.js +50 -0
- package/esm/document/data-type/extended-types/filter.type.js +71 -0
- package/esm/document/data-type/extended-types/index.js +13 -0
- package/esm/document/data-type/extended-types/object-id.type.js +22 -0
- package/esm/document/{resource/types → data-type/extended-types}/operation-result.type.js +25 -14
- package/esm/document/data-type/extended-types/time.type.js +44 -0
- package/esm/document/data-type/extended-types/url.type.js +22 -0
- package/esm/document/data-type/extended-types/uuid.type.js +27 -0
- package/esm/document/data-type/mapped-type.js +76 -56
- package/esm/document/data-type/mixin-type.js +80 -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 +22 -0
- package/esm/document/data-type/primitive-types/bigint.type.js +27 -0
- package/esm/document/data-type/primitive-types/boolean.type.js +22 -0
- package/esm/document/data-type/primitive-types/index.js +8 -0
- package/esm/document/data-type/primitive-types/integer.type.js +27 -0
- package/esm/document/data-type/{builtin → primitive-types}/null.type.js +11 -2
- package/esm/document/data-type/primitive-types/number.type.js +37 -0
- package/esm/document/data-type/{builtin → primitive-types}/object.type.js +7 -1
- package/esm/document/data-type/primitive-types/string.type.js +55 -0
- package/esm/document/data-type/required-type.js +9 -0
- package/esm/document/data-type/simple-type.js +92 -12
- package/esm/document/data-type/utils/create-mapped-class.js +50 -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 +112 -0
- package/esm/document/decorators/http-operation-entity.decorator.js +460 -0
- package/esm/document/decorators/http-operation.decorator.js +178 -0
- package/esm/document/decorators/simple-type.decorator.js +61 -0
- package/esm/document/factory/api-document.factory.js +174 -0
- package/esm/document/factory/data-type.factory.js +494 -0
- package/esm/document/factory/http-api.factory.js +311 -0
- package/esm/document/http/http-api.js +36 -0
- package/esm/document/http/http-controller.js +142 -0
- package/esm/document/http/http-media-type.js +65 -0
- package/esm/document/http/http-multipart-field.js +29 -0
- package/esm/document/http/http-operation-response.js +38 -0
- package/esm/document/http/http-operation.js +90 -0
- package/esm/document/http/http-parameter.js +41 -0
- package/esm/document/http/http-request-body.js +21 -0
- package/esm/document/http/http-status-range.js +37 -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 +4 -4
- 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 +138 -85
- package/esm/filter/ast/expressions/arithmetic-expression.js +1 -1
- package/esm/filter/ast/expressions/logical-expression.js +1 -3
- 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 -4
- package/esm/filter/filter-rules.js +89 -0
- package/esm/filter/filter-tree-visitor.js +4 -6
- package/esm/filter/parse.js +2 -2
- 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 +5 -8
- package/esm/helpers/monkey-patches.js +12 -0
- package/esm/helpers/object-utils.js +4 -5
- package/esm/helpers/parse-fields-projection.js +61 -0
- package/esm/helpers/responsive-map.js +93 -117
- 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 +9 -5
- package/esm/i18n/translate.js +2 -2
- package/esm/index.js +1 -1
- 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 +14 -13
- package/types/document/api-document.d.ts +31 -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 +65 -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 +49 -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 +63 -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 +14 -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 +103 -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 +92 -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 +84 -0
- package/types/document/http/http-parameter.d.ts +50 -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 +4 -4
- 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/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/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 +2 -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 +35 -7
- package/types/schema/data-type-container.interface.d.ts +7 -0
- package/types/schema/document.interface.d.ts +55 -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 +28 -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 +61 -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/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/number.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/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/number.type.js +0 -13
- package/esm/document/data-type/builtin/object-id.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/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
|
@@ -1,43 +1,82 @@
|
|
|
1
1
|
import 'reflect-metadata';
|
|
2
|
-
import { Class,
|
|
2
|
+
import { Class, Combine, Type } from 'ts-gems';
|
|
3
3
|
import { OpraSchema } from '../../schema/index.js';
|
|
4
|
-
import type {
|
|
5
|
-
import { ComplexType } from './complex-type.js';
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
4
|
+
import type { DocumentElement } from '../common/document-element.js';
|
|
5
|
+
import type { ComplexType } from './complex-type.js';
|
|
6
|
+
import { ComplexTypeBase } from './complex-type-base.js';
|
|
7
|
+
import type { DataType } from './data-type.js';
|
|
8
|
+
import type { MappedType } from './mapped-type.js';
|
|
8
9
|
/**
|
|
9
|
-
*
|
|
10
|
-
* @type MixinTypeConstructor
|
|
10
|
+
* @namespace MixinType
|
|
11
11
|
*/
|
|
12
|
-
export
|
|
12
|
+
export declare namespace MixinType {
|
|
13
|
+
interface Metadata extends Combine<{
|
|
14
|
+
kind: OpraSchema.MixinType.Kind;
|
|
15
|
+
name?: string;
|
|
16
|
+
types: Type[];
|
|
17
|
+
}, DataType.Metadata, Pick<ComplexType.Metadata, 'additionalFields'>, OpraSchema.MixinType> {
|
|
18
|
+
}
|
|
19
|
+
interface InitArguments extends Combine<{
|
|
20
|
+
kind: OpraSchema.MixinType.Kind;
|
|
21
|
+
types: (ComplexType | MappedType | MixinType)[];
|
|
22
|
+
ctor?: Type;
|
|
23
|
+
}, DataType.InitArguments, MixinType.Metadata> {
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Type definition for MixinType
|
|
28
|
+
* @class MixinType
|
|
29
|
+
*/
|
|
30
|
+
export interface MixinTypeStatic {
|
|
31
|
+
/**
|
|
32
|
+
* Class constructor of MixinType
|
|
33
|
+
*
|
|
34
|
+
* @param owner
|
|
35
|
+
* @param args
|
|
36
|
+
* @constructor
|
|
37
|
+
*/
|
|
38
|
+
new (owner: DocumentElement, args: MixinType.InitArguments): MixinType;
|
|
39
|
+
/**
|
|
40
|
+
* Create a new mixin type from given two types
|
|
41
|
+
* @param c1
|
|
42
|
+
* @param c2
|
|
43
|
+
* @param options
|
|
44
|
+
*/ <A1 extends any[], I1, S1, A2 extends any[], I2, S2>(c1: Class<A1, I1, S1>, c2: Class<A2, I2, S2>, options?: DataType.Options): Class<any[], I1 & I2, S1 & S2>;
|
|
45
|
+
/**
|
|
46
|
+
* Helper method that mixes given types
|
|
47
|
+
* @param c1
|
|
48
|
+
* @param c2
|
|
49
|
+
* @param c3
|
|
50
|
+
* @param options
|
|
51
|
+
*/ <A1 extends any[], I1, S1, A2 extends any[], I2, S2, A3 extends any[], I3, S3>(c1: Class<A1, I1, S1>, c2: Class<A2, I2, S2>, c3?: Class<A3, I3, S3>, options?: DataType.Options): Class<any[], I1 & I2 & I3, S1 & S2 & S3>;
|
|
52
|
+
/**
|
|
53
|
+
* Helper method that mixes given types
|
|
54
|
+
* @param c1
|
|
55
|
+
* @param c2
|
|
56
|
+
* @param c3
|
|
57
|
+
* @param c4
|
|
58
|
+
* @param options
|
|
59
|
+
*/ <A1 extends any[], I1, S1, A2 extends any[], I2, S2, A3 extends any[], I3, S3, A4 extends any[], I4, S4>(c1: Class<A1, I1, S1>, c2: Class<A2, I2, S2>, c3?: Class<A3, I3, S3>, c4?: Class<A4, I4, S4>, options?: DataType.Options): Class<any[], I1 & I2 & I3 & I4, S1 & S2 & S3 & S4>;
|
|
13
60
|
prototype: MixinType;
|
|
14
|
-
new (document: ApiDocument, init: MixinType.InitArguments): MixinType;
|
|
15
|
-
<A1 extends any[], I1, S1, A2 extends any[], I2, S2, A3 extends any[], I3, S3, A4 extends any[], I4, S4>(c1: Class<A1, I1, S1>, c2: Class<A2, I2, S2>, c3?: Class<A3, I3, S3>, c4?: Class<A4, I4, S4>): Class<any[], I1 & I2 & I3 & I4, S1 & S2 & S3 & S4>;
|
|
16
|
-
_applyMixin(target: Type, ...sources: [Type]): void;
|
|
17
61
|
}
|
|
18
62
|
/**
|
|
19
63
|
* Type definition of MixinType prototype
|
|
20
|
-
* @
|
|
64
|
+
* @interface
|
|
21
65
|
*/
|
|
22
66
|
export interface MixinType extends MixinTypeClass {
|
|
23
67
|
}
|
|
24
68
|
/**
|
|
25
69
|
* @class MixinType
|
|
26
70
|
*/
|
|
27
|
-
export declare const MixinType:
|
|
71
|
+
export declare const MixinType: MixinTypeStatic;
|
|
28
72
|
/**
|
|
29
|
-
*
|
|
73
|
+
*
|
|
74
|
+
* @class MixinType
|
|
30
75
|
*/
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
kind: OpraSchema.MixinType.Kind;
|
|
37
|
-
base?: Type;
|
|
38
|
-
types: Type[];
|
|
39
|
-
}
|
|
40
|
-
interface OwnProperties extends ComplexType.OwnProperties {
|
|
41
|
-
types: (ComplexType | MixinType | MappedType)[];
|
|
42
|
-
}
|
|
76
|
+
declare class MixinTypeClass extends ComplexTypeBase {
|
|
77
|
+
readonly kind: OpraSchema.MixinType.Kind;
|
|
78
|
+
readonly types: (ComplexType | MixinType | MappedType)[];
|
|
79
|
+
extendsFrom(baseType: DataType): boolean;
|
|
80
|
+
toJSON(): OpraSchema.MixinType;
|
|
43
81
|
}
|
|
82
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { Class, Type } from 'ts-gems';
|
|
2
|
+
import type { DataType } from './data-type.js';
|
|
3
|
+
/**
|
|
4
|
+
* Create a new MappedType that omits given fields from base type
|
|
5
|
+
* @param baseType
|
|
6
|
+
* @param keys
|
|
7
|
+
* @param options
|
|
8
|
+
*/
|
|
9
|
+
export declare function OmitType(baseType: string | Type, keys: string[], options?: DataType.Options): Type;
|
|
10
|
+
/**
|
|
11
|
+
* Create a new MappedType that omits given fields from base type
|
|
12
|
+
* @param baseType
|
|
13
|
+
* @param keys
|
|
14
|
+
* @param options
|
|
15
|
+
*/ export declare function OmitType<Args extends any[], Instance, Static, K extends keyof Instance>(baseType: Class<Args, Instance, Static>, keys: readonly K[], options?: DataType.Options): Class<Args, Omit<Instance, K>> & Omit<Pick<Static, keyof typeof baseType>, 'prototype' | 'constructor'>;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Class, PartialSome, Type } from 'ts-gems';
|
|
2
|
+
import type { DataType } from './data-type.js';
|
|
3
|
+
/**
|
|
4
|
+
* Create a new MappedType that marks given or all fields as optional
|
|
5
|
+
* @param baseType
|
|
6
|
+
* @param keys
|
|
7
|
+
* @param options
|
|
8
|
+
*/
|
|
9
|
+
export declare function PartialType(baseType: string | Type, keys: string[], options?: DataType.Options): Type;
|
|
10
|
+
/**
|
|
11
|
+
* Create a new MappedType that marks given or all fields as optional
|
|
12
|
+
* @param baseType
|
|
13
|
+
* @param options
|
|
14
|
+
*/
|
|
15
|
+
export declare function PartialType(baseType: string | Type, options?: DataType.Options): Type;
|
|
16
|
+
/**
|
|
17
|
+
* Create a new MappedType that marks given fields as optional
|
|
18
|
+
* @param baseType
|
|
19
|
+
* @param keys
|
|
20
|
+
* @param options
|
|
21
|
+
*/
|
|
22
|
+
export declare function PartialType<Args extends any[], Instance, Static, K extends keyof Instance>(baseType: Class<Args, Instance, Static>, keys: readonly K[], options?: DataType.Options): Class<Args, PartialSome<Instance, K>> & Omit<Pick<Static, keyof typeof baseType>, 'prototype' | 'constructor'>;
|
|
23
|
+
/**
|
|
24
|
+
* Create a new MappedType that marks all fields as optional
|
|
25
|
+
* @param baseType
|
|
26
|
+
* @param options
|
|
27
|
+
*/
|
|
28
|
+
export declare function PartialType<Args extends any[], Instance, Static>(baseType: Class<Args, Instance, Static>, options?: DataType.Options): Class<Args, Partial<Instance>> & Omit<Pick<Static, keyof typeof baseType>, 'prototype' | 'constructor'>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Class, Type } from 'ts-gems';
|
|
2
|
+
import type { DataType } from './data-type.js';
|
|
3
|
+
/**
|
|
4
|
+
* Create a new MappedType that picks given fields from base type
|
|
5
|
+
* @param baseType
|
|
6
|
+
* @param keys
|
|
7
|
+
* @param options
|
|
8
|
+
*/
|
|
9
|
+
export declare function PickType(baseType: string | Type, keys: string[], options?: DataType.Options): Type;
|
|
10
|
+
/**
|
|
11
|
+
* Create a new MappedType that picks given fields from base type
|
|
12
|
+
* @param baseType
|
|
13
|
+
* @param keys
|
|
14
|
+
* @param options
|
|
15
|
+
*/
|
|
16
|
+
export declare function PickType<Args extends any[], Instance, Static, K extends keyof Instance>(baseType: Class<Args, Instance, Static>, keys: readonly K[], options?: DataType.Options): Class<Args, Pick<Instance, K>> & Omit<Pick<Static, keyof typeof baseType>, 'prototype' | 'constructor'>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Validator } from 'valgen';
|
|
2
|
+
import { DECODER, ENCODER } from '../../constants.js';
|
|
3
|
+
import { NumberType } from './number.type.js';
|
|
4
|
+
export declare class BigintType extends NumberType {
|
|
5
|
+
constructor(attributes?: Partial<BigintType>);
|
|
6
|
+
protected [DECODER](properties: Partial<this>): Validator;
|
|
7
|
+
protected [ENCODER](properties: Partial<this>): Validator;
|
|
8
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from './any.type.js';
|
|
2
|
+
export * from './bigint.type.js';
|
|
3
|
+
export * from './boolean.type.js';
|
|
4
|
+
export * from './integer.type.js';
|
|
5
|
+
export * from './null.type.js';
|
|
6
|
+
export * from './number.type.js';
|
|
7
|
+
export * from './object.type.js';
|
|
8
|
+
export * from './string.type.js';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Validator } from 'valgen';
|
|
2
|
+
import { DECODER, ENCODER } from '../../constants.js';
|
|
3
|
+
import { NumberType } from './number.type.js';
|
|
4
|
+
export declare class IntegerType extends NumberType {
|
|
5
|
+
constructor(properties?: Partial<IntegerType>);
|
|
6
|
+
protected [DECODER](properties: Partial<this>): Validator;
|
|
7
|
+
protected [ENCODER](properties: Partial<this>): Validator;
|
|
8
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Validator } from 'valgen';
|
|
2
|
+
import { DECODER, ENCODER } from '../../constants.js';
|
|
3
|
+
export declare class NumberType {
|
|
4
|
+
constructor(properties?: Partial<NumberType>);
|
|
5
|
+
minValue?: number;
|
|
6
|
+
maxValue?: number;
|
|
7
|
+
protected [DECODER](properties: Partial<this>): Validator;
|
|
8
|
+
protected [ENCODER](properties: Partial<this>): Validator;
|
|
9
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { Validator } from 'valgen';
|
|
2
|
+
import { DECODER, ENCODER } from '../../constants.js';
|
|
3
|
+
export declare class StringType {
|
|
4
|
+
constructor(properties?: Partial<StringType>);
|
|
5
|
+
pattern?: string | RegExp;
|
|
6
|
+
patternName?: string;
|
|
7
|
+
minLength?: number;
|
|
8
|
+
maxLength?: number;
|
|
9
|
+
protected [DECODER](properties: Partial<this>): Validator;
|
|
10
|
+
protected [ENCODER](properties: Partial<this>): Validator;
|
|
11
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Class, RequiredSome, Type } from 'ts-gems';
|
|
2
|
+
import type { DataType } from './data-type.js';
|
|
3
|
+
/**
|
|
4
|
+
* Create a new MappedType that marks given or all fields as required
|
|
5
|
+
* @param baseType
|
|
6
|
+
* @param keys
|
|
7
|
+
* @param options
|
|
8
|
+
*/
|
|
9
|
+
export declare function RequiredType(baseType: string | Type, keys?: string[] | true, options?: DataType.Options): Type;
|
|
10
|
+
/**
|
|
11
|
+
* Create a new MappedType that marks given fields as baseType
|
|
12
|
+
* @param baseType
|
|
13
|
+
* @param keys
|
|
14
|
+
* @param options
|
|
15
|
+
*/
|
|
16
|
+
export declare function RequiredType<Args extends any[], Instance, Static, K extends keyof Instance>(baseType: Class<Args, Instance, Static>, keys?: readonly K[], options?: DataType.Options): Class<Args, RequiredSome<Instance, K>> & Omit<Pick<Static, keyof typeof baseType>, 'prototype' | 'constructor'>;
|
|
17
|
+
/**
|
|
18
|
+
* Create a new MappedType that marks all fields as baseType
|
|
19
|
+
* @param baseType
|
|
20
|
+
* @param options
|
|
21
|
+
*/
|
|
22
|
+
export declare function RequiredType<Args extends any[], Instance, Static>(baseType: Class<Args, Instance, Static>, options?: DataType.Options): Class<Args, Required<Instance>> & Omit<Pick<Static, keyof typeof baseType>, 'prototype' | 'constructor'>;
|
|
@@ -1,36 +1,75 @@
|
|
|
1
1
|
import 'reflect-metadata';
|
|
2
|
+
import { Combine, Type } from 'ts-gems';
|
|
2
3
|
import { Validator } from 'valgen';
|
|
3
|
-
import
|
|
4
|
+
import { OpraSchema } from '../../schema/index.js';
|
|
5
|
+
import type { DocumentElement } from '../common/document-element';
|
|
6
|
+
import { DocumentInitContext } from '../common/document-init-context.js';
|
|
7
|
+
import { AttributeDecoratorFactory, SimpleTypeDecoratorFactory } from '../decorators/simple-type.decorator.js';
|
|
4
8
|
import { DataType } from './data-type.js';
|
|
5
|
-
import { SimpleTypeClass } from './simple-type-class.js';
|
|
6
|
-
export interface SimpleTypeConstructor {
|
|
7
|
-
new (document: ApiDocument, init: SimpleType.InitArguments): SimpleType;
|
|
8
|
-
(options?: SimpleType.DecoratorOptions): (target: any) => any;
|
|
9
|
-
prototype: SimpleType;
|
|
10
|
-
}
|
|
11
|
-
export interface SimpleType extends SimpleTypeClass {
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* @class SimpleType
|
|
15
|
-
*/
|
|
16
|
-
export declare const SimpleType: SimpleTypeConstructor;
|
|
17
9
|
/**
|
|
18
10
|
* @namespace SimpleType
|
|
19
11
|
*/
|
|
20
12
|
export declare namespace SimpleType {
|
|
21
|
-
interface
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
encoder?: Validator;
|
|
13
|
+
interface Metadata extends Combine<{
|
|
14
|
+
kind: OpraSchema.SimpleType.Kind;
|
|
15
|
+
}, DataType.Metadata, OpraSchema.SimpleType> {
|
|
25
16
|
}
|
|
26
|
-
interface
|
|
27
|
-
decoder?: Validator;
|
|
28
|
-
encoder?: Validator;
|
|
17
|
+
interface Options extends DataType.Options {
|
|
29
18
|
}
|
|
30
|
-
interface
|
|
31
|
-
|
|
32
|
-
|
|
19
|
+
interface InitArguments extends Combine<{
|
|
20
|
+
kind: OpraSchema.SimpleType.Kind;
|
|
21
|
+
base?: SimpleType;
|
|
22
|
+
ctor?: Type;
|
|
23
|
+
properties?: object;
|
|
24
|
+
generateDecoder?: SimpleType.ValidatorGenerator;
|
|
25
|
+
generateEncoder?: SimpleType.ValidatorGenerator;
|
|
26
|
+
}, DataType.InitArguments, SimpleType.Metadata> {
|
|
33
27
|
}
|
|
34
|
-
interface
|
|
28
|
+
interface Attribute extends OpraSchema.Attribute {
|
|
35
29
|
}
|
|
30
|
+
type ValidatorGenerator = (properties: Record<string, any>, element: DocumentElement) => Validator;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Type definition for MixinType
|
|
34
|
+
* @class SimpleType
|
|
35
|
+
*/
|
|
36
|
+
export interface SimpleTypeStatic extends SimpleTypeDecoratorFactory {
|
|
37
|
+
/**
|
|
38
|
+
* Class constructor of SimpleType
|
|
39
|
+
*
|
|
40
|
+
* @param owner
|
|
41
|
+
* @param initArgs
|
|
42
|
+
* @param context
|
|
43
|
+
* @constructor
|
|
44
|
+
*/
|
|
45
|
+
new (owner: DocumentElement, initArgs: SimpleType.InitArguments, context?: DocumentInitContext): SimpleType;
|
|
46
|
+
prototype: SimpleType;
|
|
47
|
+
Attribute: AttributeDecoratorFactory;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Type definition of SimpleType prototype
|
|
51
|
+
* @interface SimpleType
|
|
52
|
+
*/
|
|
53
|
+
export interface SimpleType extends SimpleTypeClass {
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* SimpleType constructor
|
|
57
|
+
*/
|
|
58
|
+
export declare const SimpleType: SimpleTypeStatic;
|
|
59
|
+
/**
|
|
60
|
+
*
|
|
61
|
+
* @class SimpleType
|
|
62
|
+
*/
|
|
63
|
+
declare abstract class SimpleTypeClass extends DataType {
|
|
64
|
+
readonly kind: OpraSchema.SimpleType.Kind;
|
|
65
|
+
readonly base?: SimpleType;
|
|
66
|
+
readonly attributes: Record<string, SimpleType.Attribute>;
|
|
67
|
+
readonly ownAttributes: Record<string, SimpleType.Attribute>;
|
|
68
|
+
protected _generateDecoder?: SimpleType.ValidatorGenerator;
|
|
69
|
+
protected _generateEncoder?: SimpleType.ValidatorGenerator;
|
|
70
|
+
properties?: any;
|
|
71
|
+
extendsFrom(baseType: DataType): boolean;
|
|
72
|
+
generateCodec<T extends Record<string, any> | object = object>(codec: 'encode' | 'decode', options?: DataType.GenerateCodecOptions | null, properties?: Partial<T>): Validator;
|
|
73
|
+
toJSON(): OpraSchema.SimpleType;
|
|
36
74
|
}
|
|
75
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getIsInheritedPredicateFn(pick?: string[], omit?: string[]): (propertyName: string) => boolean;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { StrictOmit, Type, TypeThunkAsync } from 'ts-gems';
|
|
2
|
+
import type { HttpController } from '../http/http-controller';
|
|
3
|
+
import type { HttpParameter } from '../http/http-parameter';
|
|
4
|
+
export interface HttpControllerDecorator<T extends HttpControllerDecorator<any> = HttpControllerDecorator<any>> extends ClassDecorator {
|
|
5
|
+
Cookie(name: string | RegExp, optionsOrType?: StrictOmit<HttpParameter.Options, 'location'> | string | Type | false): T;
|
|
6
|
+
Header(name: string | RegExp, optionsOrType?: StrictOmit<HttpParameter.Options, 'location'> | string | TypeThunkAsync | false): T;
|
|
7
|
+
QueryParam(name: string | RegExp, optionsOrType?: StrictOmit<HttpParameter.Options, 'location'> | string | TypeThunkAsync | false): T;
|
|
8
|
+
PathParam(name: string | RegExp, optionsOrType?: StrictOmit<HttpParameter.Options, 'location'> | string | TypeThunkAsync | false): T;
|
|
9
|
+
UseType(...type: TypeThunkAsync[]): T;
|
|
10
|
+
}
|
|
11
|
+
export interface HttpControllerDecoratorFactory {
|
|
12
|
+
<T extends HttpController.Options>(options?: T): HttpControllerDecorator;
|
|
13
|
+
}
|
|
14
|
+
export declare function HttpControllerDecoratorFactory<O extends HttpController.Options>(options?: O): HttpControllerDecorator;
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { StrictOmit, Type, TypeThunkAsync } from 'ts-gems';
|
|
2
|
+
import { OpraFilter } from '../../filter/index.js';
|
|
3
|
+
import { OpraSchema } from '../../schema/index.js';
|
|
4
|
+
import type { HttpParameter } from '../http/http-parameter.js';
|
|
5
|
+
import { HttpRequestBody } from '../http/http-request-body.js';
|
|
6
|
+
import { HttpOperationDecorator } from './http-operation.decorator.js';
|
|
7
|
+
/** Augmentation **/
|
|
8
|
+
declare module '../http/http-operation' {
|
|
9
|
+
/**
|
|
10
|
+
* HttpOperationConstructor
|
|
11
|
+
*/
|
|
12
|
+
interface HttpOperationStatic {
|
|
13
|
+
Entity: HttpOperationEntity;
|
|
14
|
+
}
|
|
15
|
+
interface HttpOperationEntity {
|
|
16
|
+
Create(type: Type | string, options?: StrictOmit<HttpOperation.Entity.CreateArgs, 'type'>): HttpOperation.Entity.CreateDecorator;
|
|
17
|
+
Create(args: HttpOperation.Entity.CreateArgs): HttpOperation.Entity.CreateDecorator;
|
|
18
|
+
Delete(type: Type | string, options?: StrictOmit<HttpOperation.Entity.DeleteArgs, 'type'>): HttpOperation.Entity.DeleteDecorator;
|
|
19
|
+
Delete(args: HttpOperation.Entity.DeleteArgs): HttpOperation.Entity.DeleteDecorator;
|
|
20
|
+
DeleteMany(type: Type | string, options?: StrictOmit<HttpOperation.Entity.DeleteManyArgs, 'type'>): HttpOperation.Entity.DeleteManyDecorator;
|
|
21
|
+
DeleteMany(args: HttpOperation.Entity.DeleteManyArgs): HttpOperation.Entity.DeleteManyDecorator;
|
|
22
|
+
FindMany(type: Type | string, options?: StrictOmit<HttpOperation.Entity.FindManyArgs, 'type'>): HttpOperation.Entity.FindManyDecorator;
|
|
23
|
+
FindMany(args: HttpOperation.Entity.FindManyArgs): HttpOperation.Entity.FindManyDecorator;
|
|
24
|
+
Get(type: Type | string, options?: StrictOmit<HttpOperation.Entity.GetArgs, 'type'>): HttpOperation.Entity.GetDecorator;
|
|
25
|
+
Get(args: HttpOperation.Entity.GetArgs): HttpOperation.Entity.GetDecorator;
|
|
26
|
+
Update(type: Type | string, options?: StrictOmit<HttpOperation.Entity.UpdateArgs, 'type'>): HttpOperation.Entity.UpdateDecorator;
|
|
27
|
+
Update(args: HttpOperation.Entity.UpdateArgs): HttpOperation.Entity.UpdateDecorator;
|
|
28
|
+
UpdateMany(type: Type | string, options?: StrictOmit<HttpOperation.Entity.UpdateManyArgs, 'type'>): HttpOperation.Entity.UpdateManyDecorator;
|
|
29
|
+
UpdateMany(args: HttpOperation.Entity.UpdateManyArgs): HttpOperation.Entity.UpdateManyDecorator;
|
|
30
|
+
}
|
|
31
|
+
namespace HttpOperation {
|
|
32
|
+
namespace Entity {
|
|
33
|
+
/** Create */
|
|
34
|
+
interface CreateDecorator extends HttpOperationDecorator {
|
|
35
|
+
}
|
|
36
|
+
interface CreateArgs extends StrictOmit<HttpOperation.Options, 'method' | 'requestBody'> {
|
|
37
|
+
type: Type | string;
|
|
38
|
+
requestBody?: Pick<HttpRequestBody.Options, 'description' | 'maxContentSize'> & {
|
|
39
|
+
type?: Type | string;
|
|
40
|
+
immediateFetch?: boolean;
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
/** Delete */
|
|
44
|
+
interface DeleteDecorator extends HttpOperationDecorator {
|
|
45
|
+
KeyParam(name: string, optionsOrType?: StrictOmit<HttpParameter.Options, 'location'> | string | TypeThunkAsync): this;
|
|
46
|
+
}
|
|
47
|
+
interface DeleteArgs extends StrictOmit<HttpOperation.Options, 'method' | 'requestBody'> {
|
|
48
|
+
type: Type | string;
|
|
49
|
+
}
|
|
50
|
+
/** DeleteMany */
|
|
51
|
+
interface DeleteManyDecorator extends HttpOperationDecorator {
|
|
52
|
+
Filter(field: OpraSchema.Field.QualifiedName, operators?: OpraFilter.ComparisonOperator[] | string, notes?: string): this;
|
|
53
|
+
}
|
|
54
|
+
interface DeleteManyArgs extends StrictOmit<HttpOperation.Options, 'method' | 'requestBody'> {
|
|
55
|
+
type: Type | string;
|
|
56
|
+
}
|
|
57
|
+
/** FindMany */
|
|
58
|
+
interface FindManyDecorator extends HttpOperationDecorator {
|
|
59
|
+
SortFields(...fields: OpraSchema.Field.QualifiedName[]): FindManyDecorator;
|
|
60
|
+
DefaultSort(...fields: OpraSchema.Field.QualifiedName[]): FindManyDecorator;
|
|
61
|
+
Filter(field: OpraSchema.Field.QualifiedName, operators?: OpraFilter.ComparisonOperator[] | string, notes?: string): this;
|
|
62
|
+
}
|
|
63
|
+
interface FindManyArgs extends StrictOmit<HttpOperation.Options, 'method' | 'requestBody'> {
|
|
64
|
+
type: Type | string;
|
|
65
|
+
defaultLimit?: number;
|
|
66
|
+
maxLimit?: number;
|
|
67
|
+
}
|
|
68
|
+
/** Get */
|
|
69
|
+
interface GetDecorator extends HttpOperationDecorator {
|
|
70
|
+
KeyParam(name: string, optionsOrType?: StrictOmit<HttpParameter.Options, 'location'> | string | TypeThunkAsync): this;
|
|
71
|
+
}
|
|
72
|
+
interface GetArgs extends StrictOmit<HttpOperation.Options, 'method' | 'requestBody'> {
|
|
73
|
+
type: Type | string;
|
|
74
|
+
}
|
|
75
|
+
/** Update */
|
|
76
|
+
interface UpdateDecorator extends HttpOperationDecorator {
|
|
77
|
+
KeyParam(name: string, optionsOrType?: StrictOmit<HttpParameter.Options, 'location'> | string | TypeThunkAsync): this;
|
|
78
|
+
Filter(field: OpraSchema.Field.QualifiedName, operators?: OpraFilter.ComparisonOperator[] | string, notes?: string): this;
|
|
79
|
+
}
|
|
80
|
+
interface UpdateArgs extends StrictOmit<HttpOperation.Options, 'method' | 'requestBody'> {
|
|
81
|
+
type: Type | string;
|
|
82
|
+
requestBody?: Pick<HttpRequestBody.Options, 'description' | 'maxContentSize'> & {
|
|
83
|
+
type?: Type | string;
|
|
84
|
+
immediateFetch?: boolean;
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
/** UpdateMany */
|
|
88
|
+
interface UpdateManyDecorator extends HttpOperationDecorator {
|
|
89
|
+
Filter(field: OpraSchema.Field.QualifiedName, operators?: OpraFilter.ComparisonOperator[] | string, notes?: string): this;
|
|
90
|
+
}
|
|
91
|
+
interface UpdateManyArgs extends StrictOmit<HttpOperation.Options, 'method' | 'requestBody'> {
|
|
92
|
+
type: Type | string;
|
|
93
|
+
requestBody?: Pick<HttpRequestBody.Options, 'description' | 'maxContentSize'> & {
|
|
94
|
+
type?: Type | string;
|
|
95
|
+
immediateFetch?: boolean;
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { StrictOmit, Type, TypeThunkAsync } from 'ts-gems';
|
|
2
|
+
import { HttpMediaType } from '../http/http-media-type.js';
|
|
3
|
+
import { HttpMultipartField } from '../http/http-multipart-field.js';
|
|
4
|
+
import type { HttpOperation } from '../http/http-operation';
|
|
5
|
+
import type { HttpOperationResponse } from '../http/http-operation-response';
|
|
6
|
+
import type { HttpParameter } from '../http/http-parameter';
|
|
7
|
+
export interface HttpOperationDecorator {
|
|
8
|
+
(target: Object, propertyKey: string): void;
|
|
9
|
+
Cookie(name: string | RegExp, optionsOrType?: StrictOmit<HttpParameter.Options, 'location'> | string | Type): this;
|
|
10
|
+
Header(name: string | RegExp, optionsOrType?: StrictOmit<HttpParameter.Options, 'location'> | string | TypeThunkAsync): this;
|
|
11
|
+
QueryParam(name: string | RegExp, optionsOrType?: StrictOmit<HttpParameter.Options, 'location'> | string | TypeThunkAsync): this;
|
|
12
|
+
PathParam(name: string | RegExp, optionsOrType?: StrictOmit<HttpParameter.Options, 'location'> | string | TypeThunkAsync): this;
|
|
13
|
+
RequestContent(type: string | Type): this;
|
|
14
|
+
RequestContent(options: HttpMediaType.Options): this;
|
|
15
|
+
MultipartContent(options?: HttpMediaType.Options, subInit?: (content: MultipartContentScope) => void): this;
|
|
16
|
+
Response(status: number | string | (number | string)[], options?: HttpOperationResponse.Options): this;
|
|
17
|
+
UseType(...type: Type[]): this;
|
|
18
|
+
}
|
|
19
|
+
export interface MultipartContentScope {
|
|
20
|
+
Field(fieldName: string | RegExp, options?: StrictOmit<HttpMultipartField.Options, 'fieldName' | 'fieldType'>): MultipartContentScope;
|
|
21
|
+
File(fieldName: string | RegExp, options?: StrictOmit<HttpMultipartField.Options, 'fieldName' | 'fieldType'>): MultipartContentScope;
|
|
22
|
+
}
|
|
23
|
+
export interface HttpOperationDecoratorFactory {
|
|
24
|
+
/**
|
|
25
|
+
* Property decorator
|
|
26
|
+
* @param decoratorChain
|
|
27
|
+
* @param options
|
|
28
|
+
*/ <T extends HttpOperation.Options>(decoratorChain: Function[], options?: T): HttpOperationDecorator;
|
|
29
|
+
}
|
|
30
|
+
export declare function HttpOperationDecoratorFactory(decoratorChain: Function[], options?: HttpOperation.Options & Pick<HttpOperation.Metadata, 'composition' | 'compositionOptions'>): HttpOperationDecorator;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { OpraSchema } from '../../schema/index.js';
|
|
2
|
+
import type { SimpleType } from '../data-type/simple-type';
|
|
3
|
+
export interface SimpleTypeDecorator extends ClassDecorator {
|
|
4
|
+
Example(value: any, description?: string): SimpleTypeDecorator;
|
|
5
|
+
}
|
|
6
|
+
export interface SimpleTypeDecoratorFactory {
|
|
7
|
+
/**
|
|
8
|
+
* Class decorator method for SimpleType
|
|
9
|
+
* @param options
|
|
10
|
+
*/
|
|
11
|
+
(options?: SimpleType.Options): SimpleTypeDecorator;
|
|
12
|
+
}
|
|
13
|
+
export declare function SimpleTypeDecoratorFactory(options?: SimpleType.Options): SimpleTypeDecorator;
|
|
14
|
+
export interface AttributeDecorator extends PropertyDecorator {
|
|
15
|
+
Example(options?: Partial<OpraSchema.Attribute>): SimpleTypeDecorator;
|
|
16
|
+
}
|
|
17
|
+
export interface AttributeDecoratorFactory {
|
|
18
|
+
(options?: Partial<OpraSchema.Attribute>): PropertyDecorator;
|
|
19
|
+
}
|
|
20
|
+
export declare function AttributeDecoratorFactory(options?: Partial<OpraSchema.Attribute>): PropertyDecorator;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { PartialSome, StrictOmit, ThunkAsync } from 'ts-gems';
|
|
2
|
+
import { OpraSchema } from '../../schema/index.js';
|
|
3
|
+
import { ApiDocument } from '../api-document.js';
|
|
4
|
+
import { DocumentInitContext } from '../common/document-init-context.js';
|
|
5
|
+
import { DataTypeFactory } from './data-type.factory.js';
|
|
6
|
+
import { HttpApiFactory } from './http-api.factory.js';
|
|
7
|
+
export declare namespace ApiDocumentFactory {
|
|
8
|
+
interface InitArguments extends PartialSome<StrictOmit<OpraSchema.ApiDocument, 'references' | 'types' | 'api'>, 'spec'> {
|
|
9
|
+
references?: Record<string, ReferenceThunk>;
|
|
10
|
+
types?: DataTypeInitSources;
|
|
11
|
+
api?: HttpApiFactory.InitArguments;
|
|
12
|
+
}
|
|
13
|
+
type ReferenceSource = string | OpraSchema.ApiDocument | InitArguments | ApiDocument;
|
|
14
|
+
type ReferenceThunk = ThunkAsync<ReferenceSource>;
|
|
15
|
+
type DataTypeInitSources = DataTypeFactory.DataTypeSources;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* @class ApiDocumentFactory
|
|
19
|
+
*/
|
|
20
|
+
export declare class ApiDocumentFactory {
|
|
21
|
+
/**
|
|
22
|
+
* Creates ApiDocument instance from given schema object
|
|
23
|
+
*/
|
|
24
|
+
static createDocument(schemaOrUrl: string | PartialSome<OpraSchema.ApiDocument, 'spec'> | ApiDocumentFactory.InitArguments, options?: Partial<Pick<DocumentInitContext, 'maxErrors' | 'showErrorDetails'>> | DocumentInitContext): Promise<ApiDocument>;
|
|
25
|
+
/**
|
|
26
|
+
* Downloads schema from the given URL and creates the document instance * @param url
|
|
27
|
+
*/
|
|
28
|
+
protected initDocument(document: ApiDocument, context: DocumentInitContext, schemaOrUrl: ApiDocumentFactory.InitArguments | string): Promise<void>;
|
|
29
|
+
/**
|
|
30
|
+
*
|
|
31
|
+
* @param context
|
|
32
|
+
* @protected
|
|
33
|
+
*/
|
|
34
|
+
protected createBuiltinDocument(context: DocumentInitContext): Promise<ApiDocument>;
|
|
35
|
+
}
|