@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
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { StrictOmit } from 'ts-gems';
|
|
2
|
-
import { Validator } from 'valgen';
|
|
3
|
-
import { OpraSchema } from '../../schema/index.js';
|
|
4
|
-
import { DataType } from '../data-type/data-type.js';
|
|
5
|
-
import type { ResourceDecorator } from './resource-decorator.js';
|
|
6
|
-
/**
|
|
7
|
-
*
|
|
8
|
-
* @class Parameter
|
|
9
|
-
*/
|
|
10
|
-
export declare class Parameter {
|
|
11
|
-
protected _decoder: Validator;
|
|
12
|
-
protected _encoder: Validator;
|
|
13
|
-
readonly name: string;
|
|
14
|
-
readonly type: DataType;
|
|
15
|
-
description?: string;
|
|
16
|
-
isArray?: boolean;
|
|
17
|
-
default?: any;
|
|
18
|
-
required?: boolean;
|
|
19
|
-
deprecated?: boolean | string;
|
|
20
|
-
examples?: any[] | Record<string, any>;
|
|
21
|
-
readonly isBuiltin?: boolean;
|
|
22
|
-
constructor(name: string, init: Parameter.InitArguments);
|
|
23
|
-
exportSchema(options?: {
|
|
24
|
-
webSafe?: boolean;
|
|
25
|
-
}): OpraSchema.Endpoint.Parameter;
|
|
26
|
-
getDecoder(): Validator;
|
|
27
|
-
getEncoder(): Validator;
|
|
28
|
-
generateCodec(codec: 'decode' | 'encode', options?: DataType.GenerateCodecOptions): Validator;
|
|
29
|
-
}
|
|
30
|
-
export declare namespace Parameter {
|
|
31
|
-
interface InitArguments extends StrictOmit<ResourceDecorator.ParameterMetadata, 'type'> {
|
|
32
|
-
type: DataType;
|
|
33
|
-
isBuiltin?: boolean;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { StrictOmit } from 'ts-gems';
|
|
2
|
-
import { OpraSchema } from '../../schema/index.js';
|
|
3
|
-
import { TypeThunkAsync } from '../../types.js';
|
|
4
|
-
import { EnumType } from '../data-type/enum-type.js';
|
|
5
|
-
export interface ResourceDecorator {
|
|
6
|
-
Action: (options?: ResourceDecorator.OperationOptions) => ResourceDecorator;
|
|
7
|
-
}
|
|
8
|
-
export declare function ResourceDecorator<O extends ResourceDecorator.Options>(kind: OpraSchema.Resource.Kind, meta?: O): ClassDecorator;
|
|
9
|
-
/**
|
|
10
|
-
* @namespace ResourceDecorator
|
|
11
|
-
*/
|
|
12
|
-
export declare namespace ResourceDecorator {
|
|
13
|
-
interface Metadata extends StrictOmit<OpraSchema.ResourceBase, 'actions'> {
|
|
14
|
-
name: string;
|
|
15
|
-
actions?: Record<string, ActionMetadata>;
|
|
16
|
-
operations?: Record<string, OperationMetadata>;
|
|
17
|
-
}
|
|
18
|
-
interface Options extends Partial<StrictOmit<Metadata, 'kind' | 'actions' | 'operations'>> {
|
|
19
|
-
}
|
|
20
|
-
interface ParameterMetadata extends StrictOmit<OpraSchema.Endpoint.Parameter, 'type'> {
|
|
21
|
-
type?: TypeThunkAsync | string;
|
|
22
|
-
enum?: EnumType.EnumObject | EnumType.EnumArray;
|
|
23
|
-
}
|
|
24
|
-
interface ParameterOptions extends Partial<ParameterMetadata> {
|
|
25
|
-
}
|
|
26
|
-
interface OperationMetadata extends StrictOmit<OpraSchema.Endpoint, 'parameters'> {
|
|
27
|
-
parameters: Record<string, ParameterMetadata>;
|
|
28
|
-
}
|
|
29
|
-
interface OperationOptions extends Partial<StrictOmit<OpraSchema.Endpoint, 'parameters'>> {
|
|
30
|
-
parameters?: Record<string, ParameterOptions>;
|
|
31
|
-
}
|
|
32
|
-
interface ActionMetadata extends StrictOmit<OpraSchema.Action, 'parameters' | 'returnType'> {
|
|
33
|
-
parameters: Record<string, ParameterMetadata>;
|
|
34
|
-
returnType?: TypeThunkAsync | string;
|
|
35
|
-
}
|
|
36
|
-
interface ActionOptions extends Partial<StrictOmit<OpraSchema.Action, 'parameters' | 'returnType'>> {
|
|
37
|
-
parameters?: Record<string, ParameterOptions>;
|
|
38
|
-
returnType?: TypeThunkAsync | string;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { StrictOmit, Type } from 'ts-gems';
|
|
2
|
-
import { ResponsiveMap } from '../../helpers/index.js';
|
|
3
|
-
import { OpraSchema } from '../../schema/index.js';
|
|
4
|
-
import type { ApiDocument } from '../api-document.js';
|
|
5
|
-
import { nodeInspectCustom } from '../utils/inspect.util.js';
|
|
6
|
-
import { Action } from './action.js';
|
|
7
|
-
import type { Container } from './container.js';
|
|
8
|
-
import { CrudOperation } from './crud-operation.js';
|
|
9
|
-
import type { ResourceDecorator } from './resource-decorator';
|
|
10
|
-
export declare abstract class Resource {
|
|
11
|
-
readonly document: ApiDocument;
|
|
12
|
-
readonly parent?: Container;
|
|
13
|
-
abstract readonly kind: OpraSchema.Resource.Kind;
|
|
14
|
-
readonly name: string;
|
|
15
|
-
description?: string;
|
|
16
|
-
controller?: object;
|
|
17
|
-
ctor?: Type;
|
|
18
|
-
actions: ResponsiveMap<Action>;
|
|
19
|
-
protected constructor(parent: ApiDocument | Container, init: Resource.InitArguments);
|
|
20
|
-
getFullPath(documentPath?: boolean): string;
|
|
21
|
-
exportSchema(options?: {
|
|
22
|
-
webSafe?: boolean;
|
|
23
|
-
}): OpraSchema.ResourceBase;
|
|
24
|
-
toString(): string;
|
|
25
|
-
[nodeInspectCustom](): string;
|
|
26
|
-
}
|
|
27
|
-
export declare namespace Resource {
|
|
28
|
-
interface InitArguments extends StrictOmit<ResourceDecorator.Metadata, 'kind' | 'operations' | 'actions'> {
|
|
29
|
-
name: string;
|
|
30
|
-
actions?: Record<string, Action.InitArguments>;
|
|
31
|
-
operations?: Record<string, CrudOperation.InitArguments>;
|
|
32
|
-
controller?: object;
|
|
33
|
-
ctor?: Type;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { OpraSchema } from '../../schema/index.js';
|
|
2
|
-
import type { ApiDocument } from '../api-document.js';
|
|
3
|
-
import type { ComplexType } from '../data-type/complex-type.js';
|
|
4
|
-
import type { Container } from './container.js';
|
|
5
|
-
import type { CrudOperation } from './crud-operation';
|
|
6
|
-
import { CrudResource } from './crud-resource.js';
|
|
7
|
-
import type { Singleton } from './singleton.js';
|
|
8
|
-
import type { SingletonDecorator } from './singleton-decorator';
|
|
9
|
-
export declare class SingletonClass extends CrudResource {
|
|
10
|
-
readonly kind: OpraSchema.Resource.Kind;
|
|
11
|
-
readonly type: ComplexType;
|
|
12
|
-
constructor(parent: ApiDocument | Container, init: Singleton.InitArguments);
|
|
13
|
-
getOperation(name: 'create'): (CrudOperation & Omit<SingletonDecorator.Create.Metadata, keyof CrudOperation>) | undefined;
|
|
14
|
-
getOperation(name: 'delete'): (CrudOperation & Omit<SingletonDecorator.Delete.Metadata, keyof CrudOperation>) | undefined;
|
|
15
|
-
getOperation(name: 'get'): (CrudOperation & Omit<SingletonDecorator.Get.Metadata, keyof CrudOperation>) | undefined;
|
|
16
|
-
getOperation(name: 'update'): (CrudOperation & Omit<SingletonDecorator.Update.Metadata, keyof CrudOperation>) | undefined;
|
|
17
|
-
exportSchema(options?: {
|
|
18
|
-
webSafe?: boolean;
|
|
19
|
-
}): OpraSchema.Singleton;
|
|
20
|
-
normalizeFieldNames(path: string | string[]): string[] | undefined;
|
|
21
|
-
}
|
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
import { Combine, StrictOmit, Type } from 'ts-gems';
|
|
2
|
-
import { Field } from '../../schema/data-type/field.interface.js';
|
|
3
|
-
import { OpraSchema } from '../../schema/index.js';
|
|
4
|
-
import { TypeThunkAsync } from '../../types.js';
|
|
5
|
-
import { ActionDecorator } from './action-decorator.js';
|
|
6
|
-
import { CollectionDecorator } from './collection-decorator.js';
|
|
7
|
-
import { ResourceDecorator } from './resource-decorator.js';
|
|
8
|
-
import type { Singleton } from './singleton.js';
|
|
9
|
-
type ErrorMessage<T, Error> = [T] extends [never] ? Error : T;
|
|
10
|
-
declare const operationProperties: readonly ["create", "delete", "get", "update"];
|
|
11
|
-
type OperationProperties = typeof operationProperties[number];
|
|
12
|
-
export declare function SingletonDecorator(type: Type | string, options?: Singleton.DecoratorOptions): ClassDecorator;
|
|
13
|
-
export interface SingletonDecorator extends StrictOmit<ResourceDecorator, 'Action'> {
|
|
14
|
-
<T>(type: Type<T> | string, options?: Singleton.DecoratorOptions): ClassDecorator;
|
|
15
|
-
Action: (options?: SingletonDecorator.Action.Options) => (<T, K extends keyof T>(target: T, propertyKey: ErrorMessage<Exclude<K, OperationProperties>, `'${string & K}' property is reserved for operation endpoints and can not be used for actions`>) => void) & ActionDecorator;
|
|
16
|
-
Create: typeof SingletonDecorator.Create;
|
|
17
|
-
Delete: typeof SingletonDecorator.Delete;
|
|
18
|
-
Get: typeof SingletonDecorator.Get;
|
|
19
|
-
Update: typeof SingletonDecorator.Update;
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* @namespace SingletonDecorator
|
|
23
|
-
*/
|
|
24
|
-
export declare namespace SingletonDecorator {
|
|
25
|
-
interface Metadata extends StrictOmit<OpraSchema.Singleton, 'kind' | 'type' | 'operations' | 'actions'> {
|
|
26
|
-
kind: OpraSchema.Singleton.Kind;
|
|
27
|
-
name: string;
|
|
28
|
-
type: TypeThunkAsync | string;
|
|
29
|
-
actions?: Record<string, ResourceDecorator.OperationMetadata>;
|
|
30
|
-
operations?: {
|
|
31
|
-
create: Create.Metadata;
|
|
32
|
-
delete: Delete.Metadata;
|
|
33
|
-
get: Get.Metadata;
|
|
34
|
-
update: Update.Metadata;
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* @namespace Action
|
|
39
|
-
*/
|
|
40
|
-
namespace Action {
|
|
41
|
-
interface Metadata extends ResourceDecorator.OperationMetadata {
|
|
42
|
-
}
|
|
43
|
-
interface Options extends ResourceDecorator.OperationOptions {
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* @namespace Create
|
|
48
|
-
*/
|
|
49
|
-
namespace Create {
|
|
50
|
-
interface Metadata extends Combine<ResourceDecorator.OperationMetadata, OpraSchema.Singleton.Operations.Create> {
|
|
51
|
-
}
|
|
52
|
-
interface Options extends Combine<ResourceDecorator.OperationOptions, Partial<OpraSchema.Singleton.Operations.Create>> {
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
/**
|
|
56
|
-
* @namespace Delete
|
|
57
|
-
*/
|
|
58
|
-
namespace Delete {
|
|
59
|
-
interface Metadata extends Combine<ResourceDecorator.OperationMetadata, OpraSchema.Singleton.Operations.Delete> {
|
|
60
|
-
}
|
|
61
|
-
interface Options extends Combine<ResourceDecorator.OperationOptions, Partial<OpraSchema.Singleton.Operations.Delete>> {
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* @namespace Get
|
|
66
|
-
*/
|
|
67
|
-
namespace Get {
|
|
68
|
-
interface Metadata extends Combine<ResourceDecorator.OperationMetadata, OpraSchema.Singleton.Operations.Get> {
|
|
69
|
-
}
|
|
70
|
-
interface Options extends Combine<ResourceDecorator.OperationOptions, Partial<OpraSchema.Singleton.Operations.Get>> {
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* @namespace Update
|
|
75
|
-
*/
|
|
76
|
-
namespace Update {
|
|
77
|
-
interface Metadata extends Combine<ResourceDecorator.OperationMetadata, OpraSchema.Singleton.Operations.Update> {
|
|
78
|
-
}
|
|
79
|
-
interface Options extends Combine<ResourceDecorator.OperationOptions, Partial<OpraSchema.Singleton.Operations.Update>> {
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
export declare namespace SingletonDecorator {
|
|
84
|
-
/**
|
|
85
|
-
* Action PropertyDecorator
|
|
86
|
-
*/
|
|
87
|
-
function Action(options: ResourceDecorator.OperationOptions): ActionDecorator;
|
|
88
|
-
/**
|
|
89
|
-
* Create PropertyDecorator
|
|
90
|
-
*/
|
|
91
|
-
type CreateDecorator = ((target: Object, propertyKey: 'create') => void) & {
|
|
92
|
-
Parameter: (name: string, optionsOrType?: ResourceDecorator.ParameterOptions | string | Type) => CreateDecorator;
|
|
93
|
-
InputMaxContentSize: (sizeInBytes: number) => CreateDecorator;
|
|
94
|
-
InputPickFields: (...fields: Field.QualifiedName[]) => CreateDecorator;
|
|
95
|
-
InputOmitFields: (...fields: Field.QualifiedName[]) => CreateDecorator;
|
|
96
|
-
InputOverwriteFields: (fields: Record<string, CollectionDecorator.FieldDecoratorOptions>) => CreateDecorator;
|
|
97
|
-
OutputPickFields: (...fields: Field.QualifiedName[]) => CreateDecorator;
|
|
98
|
-
OutputOmitFields: (...fields: Field.QualifiedName[]) => CreateDecorator;
|
|
99
|
-
OutputOverwriteFields: (fields: Record<string, CollectionDecorator.FieldDecoratorOptions>) => CreateDecorator;
|
|
100
|
-
};
|
|
101
|
-
function Create(options?: Create.Options): CreateDecorator;
|
|
102
|
-
}
|
|
103
|
-
export declare namespace SingletonDecorator {
|
|
104
|
-
type GetDecorator = ((target: Object, propertyKey: 'get') => void) & {
|
|
105
|
-
Parameter: (name: string, optionsOrType?: ResourceDecorator.ParameterOptions | string | Type) => GetDecorator;
|
|
106
|
-
OutputPickFields: (...fields: Field.QualifiedName[]) => GetDecorator;
|
|
107
|
-
OutputOmitFields: (...fields: Field.QualifiedName[]) => GetDecorator;
|
|
108
|
-
OutputOverwriteFields: (fields: Record<string, CollectionDecorator.FieldDecoratorOptions>) => GetDecorator;
|
|
109
|
-
};
|
|
110
|
-
function Get(options?: Get.Options): GetDecorator;
|
|
111
|
-
}
|
|
112
|
-
export declare namespace SingletonDecorator {
|
|
113
|
-
type DeleteDecorator = ((target: Object, propertyKey: 'delete') => void) & {
|
|
114
|
-
Parameter: (name: string, optionsOrType?: ResourceDecorator.ParameterOptions | string | Type) => DeleteDecorator;
|
|
115
|
-
};
|
|
116
|
-
function Delete(options?: Delete.Options): DeleteDecorator;
|
|
117
|
-
}
|
|
118
|
-
export declare namespace SingletonDecorator {
|
|
119
|
-
type UpdateDecorator = ((target: Object, propertyKey: 'update') => void) & {
|
|
120
|
-
Parameter: (name: string, optionsOrType?: ResourceDecorator.ParameterOptions | string | Type) => UpdateDecorator;
|
|
121
|
-
InputMaxContentSize: (sizeInBytes: number) => UpdateDecorator;
|
|
122
|
-
InputPickFields: (...fields: Field.QualifiedName[]) => UpdateDecorator;
|
|
123
|
-
InputOmitFields: (...fields: Field.QualifiedName[]) => UpdateDecorator;
|
|
124
|
-
InputOverwriteFields: (fields: Record<string, CollectionDecorator.FieldDecoratorOptions>) => UpdateDecorator;
|
|
125
|
-
OutputPickFields: (...fields: Field.QualifiedName[]) => UpdateDecorator;
|
|
126
|
-
OutputOmitFields: (...fields: Field.QualifiedName[]) => UpdateDecorator;
|
|
127
|
-
OutputOverwriteFields: (fields: Record<string, CollectionDecorator.FieldDecoratorOptions>) => UpdateDecorator;
|
|
128
|
-
};
|
|
129
|
-
function Update(options?: Update.Options): UpdateDecorator;
|
|
130
|
-
}
|
|
131
|
-
export {};
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { Combine, StrictOmit } from 'ts-gems';
|
|
2
|
-
import type { ApiDocument } from '../api-document.js';
|
|
3
|
-
import type { ComplexType } from '../data-type/complex-type.js';
|
|
4
|
-
import type { Container } from './container.js';
|
|
5
|
-
import type { Resource } from './resource.js';
|
|
6
|
-
import { SingletonClass } from './singleton-class.js';
|
|
7
|
-
import { SingletonDecorator } from './singleton-decorator.js';
|
|
8
|
-
export interface Singleton extends SingletonClass {
|
|
9
|
-
}
|
|
10
|
-
export interface SingletonConstructor extends SingletonDecorator {
|
|
11
|
-
prototype: SingletonClass;
|
|
12
|
-
new (parent: ApiDocument | Container, init: Singleton.InitArguments): SingletonClass;
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* @class Singleton
|
|
16
|
-
* @decorator Singleton
|
|
17
|
-
*/
|
|
18
|
-
export declare const Singleton: SingletonConstructor;
|
|
19
|
-
/**
|
|
20
|
-
* @namespace Singleton
|
|
21
|
-
*/
|
|
22
|
-
export declare namespace Singleton {
|
|
23
|
-
interface InitArguments extends StrictOmit<Combine<Resource.InitArguments, SingletonDecorator.Metadata>, 'kind' | 'type'> {
|
|
24
|
-
name: string;
|
|
25
|
-
type: ComplexType;
|
|
26
|
-
}
|
|
27
|
-
interface DecoratorOptions extends Partial<StrictOmit<SingletonDecorator.Metadata, 'kind' | 'operations' | 'actions'>> {
|
|
28
|
-
}
|
|
29
|
-
interface Action {
|
|
30
|
-
}
|
|
31
|
-
namespace Action {
|
|
32
|
-
}
|
|
33
|
-
interface Create {
|
|
34
|
-
}
|
|
35
|
-
namespace Create {
|
|
36
|
-
}
|
|
37
|
-
interface Delete {
|
|
38
|
-
}
|
|
39
|
-
namespace Delete {
|
|
40
|
-
}
|
|
41
|
-
interface Get {
|
|
42
|
-
}
|
|
43
|
-
namespace Get {
|
|
44
|
-
}
|
|
45
|
-
interface Update {
|
|
46
|
-
}
|
|
47
|
-
namespace Update {
|
|
48
|
-
}
|
|
49
|
-
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { OpraSchema } from '../../schema/index.js';
|
|
2
|
-
import type { ApiDocument } from '../api-document.js';
|
|
3
|
-
import type { Container } from './container';
|
|
4
|
-
import type { CrudOperation } from './crud-operation.js';
|
|
5
|
-
import { CrudResource } from './crud-resource.js';
|
|
6
|
-
import type { Storage } from './storage.js';
|
|
7
|
-
import type { StorageDecorator } from './storage-decorator';
|
|
8
|
-
export declare class StorageClass extends CrudResource {
|
|
9
|
-
readonly kind: OpraSchema.Resource.Kind;
|
|
10
|
-
constructor(parent: ApiDocument | Container, init: Storage.InitArguments);
|
|
11
|
-
getOperation(name: 'delete'): (CrudOperation & Omit<StorageDecorator.Delete.Metadata, keyof CrudOperation>) | undefined;
|
|
12
|
-
getOperation(name: 'get'): (CrudOperation & Omit<StorageDecorator.Get.Metadata, keyof CrudOperation>) | undefined;
|
|
13
|
-
getOperation(name: 'post'): (CrudOperation & Omit<StorageDecorator.Post.Metadata, keyof CrudOperation>) | undefined;
|
|
14
|
-
exportSchema(options?: {
|
|
15
|
-
webSafe?: boolean;
|
|
16
|
-
}): OpraSchema.Storage;
|
|
17
|
-
}
|
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
import { Combine, StrictOmit, Type } from 'ts-gems';
|
|
2
|
-
import { OpraSchema } from '../../schema/index.js';
|
|
3
|
-
import { TypeThunkAsync } from '../../types.js';
|
|
4
|
-
import { ActionDecorator } from './action-decorator.js';
|
|
5
|
-
import { ResourceDecorator } from './resource-decorator.js';
|
|
6
|
-
import type { Storage } from './storage.js';
|
|
7
|
-
type ErrorMessage<T, Error> = [T] extends [never] ? Error : T;
|
|
8
|
-
declare const operationProperties: readonly ["delete", "get", "post"];
|
|
9
|
-
type OperationProperties = typeof operationProperties[number];
|
|
10
|
-
export declare function StorageDecorator(options?: Storage.DecoratorOptions): ClassDecorator;
|
|
11
|
-
export interface StorageDecorator extends StrictOmit<ResourceDecorator, 'Action'> {
|
|
12
|
-
(options?: Storage.DecoratorOptions): ClassDecorator;
|
|
13
|
-
Action: (options?: StorageDecorator.Action.Options) => (<T, K extends keyof T>(target: T, propertyKey: ErrorMessage<Exclude<K, OperationProperties>, `'${string & K}' property is reserved for operation endpoints and can not be used for actions`>) => void) & ActionDecorator;
|
|
14
|
-
Delete: typeof StorageDecorator.Delete;
|
|
15
|
-
Get: typeof StorageDecorator.Get;
|
|
16
|
-
Post: typeof StorageDecorator.Post;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* @namespace CollectionDecorator
|
|
20
|
-
*/
|
|
21
|
-
export declare namespace StorageDecorator {
|
|
22
|
-
interface Metadata extends StrictOmit<OpraSchema.Storage, 'kind' | 'operations' | 'actions'> {
|
|
23
|
-
kind: OpraSchema.Storage.Kind;
|
|
24
|
-
name: string;
|
|
25
|
-
actions?: Record<string, ResourceDecorator.OperationMetadata>;
|
|
26
|
-
operations?: {
|
|
27
|
-
get: Get.Metadata;
|
|
28
|
-
delete: Delete.Metadata;
|
|
29
|
-
post: Post.Metadata;
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* @namespace Action
|
|
34
|
-
*/
|
|
35
|
-
namespace Action {
|
|
36
|
-
interface Metadata extends ResourceDecorator.OperationMetadata {
|
|
37
|
-
}
|
|
38
|
-
interface Options extends ResourceDecorator.OperationOptions {
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
/**
|
|
42
|
-
* @namespace Get
|
|
43
|
-
*/
|
|
44
|
-
namespace Get {
|
|
45
|
-
interface Metadata extends Combine<ResourceDecorator.OperationMetadata, OpraSchema.Storage.Operations.Get> {
|
|
46
|
-
}
|
|
47
|
-
interface Options extends Combine<ResourceDecorator.OperationOptions, Partial<OpraSchema.Storage.Operations.Get>> {
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* @namespace Delete
|
|
52
|
-
*/
|
|
53
|
-
namespace Delete {
|
|
54
|
-
interface Metadata extends Combine<ResourceDecorator.OperationMetadata, OpraSchema.Storage.Operations.Delete> {
|
|
55
|
-
}
|
|
56
|
-
interface Options extends Combine<ResourceDecorator.OperationOptions, Partial<OpraSchema.Storage.Operations.Delete>> {
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* @namespace Post
|
|
61
|
-
*/
|
|
62
|
-
namespace Post {
|
|
63
|
-
interface Metadata extends Combine<ResourceDecorator.OperationMetadata, OpraSchema.Storage.Operations.Post> {
|
|
64
|
-
}
|
|
65
|
-
interface Options extends Combine<ResourceDecorator.OperationOptions, Partial<OpraSchema.Storage.Operations.Post>> {
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
export declare namespace StorageDecorator {
|
|
70
|
-
/**
|
|
71
|
-
* Action PropertyDecorator
|
|
72
|
-
*/
|
|
73
|
-
function Action(options: ResourceDecorator.OperationOptions): ActionDecorator;
|
|
74
|
-
type DeleteDecorator = ((target: Object, propertyKey: 'delete') => void) & {
|
|
75
|
-
Parameter: (name: string, optionsOrType?: ResourceDecorator.ParameterOptions | string | Type) => DeleteDecorator;
|
|
76
|
-
};
|
|
77
|
-
function Delete(options?: Delete.Options): DeleteDecorator;
|
|
78
|
-
/**
|
|
79
|
-
* Get PropertyDecorator
|
|
80
|
-
*/
|
|
81
|
-
type GetDecorator = ((target: Object, propertyKey: 'get') => void) & {
|
|
82
|
-
Parameter: (name: string, optionsOrType?: ResourceDecorator.ParameterOptions | string | Type) => GetDecorator;
|
|
83
|
-
};
|
|
84
|
-
function Get(options?: Get.Options): GetDecorator;
|
|
85
|
-
/**
|
|
86
|
-
* Post PropertyDecorator
|
|
87
|
-
*/
|
|
88
|
-
type PostDecorator = ((target: Object, propertyKey: 'post') => void) & {
|
|
89
|
-
Parameter(name: string, optionsOrType?: ResourceDecorator.ParameterOptions | string | Type): PostDecorator;
|
|
90
|
-
MaxFields(amount: number): PostDecorator;
|
|
91
|
-
MaxFieldSize(sizeInBytes: number): PostDecorator;
|
|
92
|
-
MaxFiles(amount: number): PostDecorator;
|
|
93
|
-
MaxFileSize(sizeInBytes: number): PostDecorator;
|
|
94
|
-
MaxTotalFileSize(sizeInBytes: number): PostDecorator;
|
|
95
|
-
MinFileSize(sizeInBytes: number): PostDecorator;
|
|
96
|
-
Returns(t: TypeThunkAsync | string): PostDecorator;
|
|
97
|
-
};
|
|
98
|
-
function Post(options?: Post.Options): PostDecorator;
|
|
99
|
-
}
|
|
100
|
-
export {};
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { Combine, StrictOmit } from 'ts-gems';
|
|
2
|
-
import type { ApiDocument } from '../api-document.js';
|
|
3
|
-
import type { Container } from './container.js';
|
|
4
|
-
import type { Resource } from './resource.js';
|
|
5
|
-
import { StorageClass } from './storage-class.js';
|
|
6
|
-
import { StorageDecorator } from './storage-decorator.js';
|
|
7
|
-
export interface Storage extends StorageClass {
|
|
8
|
-
}
|
|
9
|
-
export interface StorageConstructor extends StorageDecorator {
|
|
10
|
-
prototype: StorageClass;
|
|
11
|
-
new (parent: ApiDocument | Container, init: Storage.InitArguments): StorageClass;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* @class Storage
|
|
15
|
-
* @decorator Storage
|
|
16
|
-
*/
|
|
17
|
-
export declare const Storage: StorageConstructor;
|
|
18
|
-
export declare namespace Storage {
|
|
19
|
-
interface InitArguments extends StrictOmit<Combine<Resource.InitArguments, StorageDecorator.Metadata>, 'kind'> {
|
|
20
|
-
}
|
|
21
|
-
interface DecoratorOptions extends Partial<StrictOmit<StorageDecorator.Metadata, 'kind' | 'operations' | 'actions'>> {
|
|
22
|
-
}
|
|
23
|
-
interface Action {
|
|
24
|
-
}
|
|
25
|
-
namespace Action {
|
|
26
|
-
}
|
|
27
|
-
interface Delete {
|
|
28
|
-
}
|
|
29
|
-
namespace Delete {
|
|
30
|
-
}
|
|
31
|
-
interface Get {
|
|
32
|
-
}
|
|
33
|
-
namespace Get {
|
|
34
|
-
}
|
|
35
|
-
interface Post {
|
|
36
|
-
}
|
|
37
|
-
namespace Post {
|
|
38
|
-
}
|
|
39
|
-
}
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import { Type } from 'ts-gems';
|
|
2
|
-
import { ResponsiveMap } from '../helpers/index.js';
|
|
3
|
-
import { OpraSchema } from '../schema/index.js';
|
|
4
|
-
import { ComplexType } from './data-type/complex-type.js';
|
|
5
|
-
import { DataType } from './data-type/data-type.js';
|
|
6
|
-
import { EnumType } from './data-type/enum-type.js';
|
|
7
|
-
import { SimpleType } from './data-type/simple-type.js';
|
|
8
|
-
import { DocumentBase } from './document-base.js';
|
|
9
|
-
export declare class TypeDocument extends DocumentBase {
|
|
10
|
-
protected _designCtorMap: Map<Function | Type<any>, string>;
|
|
11
|
-
protected _typeIndex: Map<string | object | Type<any>, DataType>;
|
|
12
|
-
protected _typeNsMap: Map<DataType, string>;
|
|
13
|
-
references: ResponsiveMap<TypeDocument>;
|
|
14
|
-
types: ResponsiveMap<DataType>;
|
|
15
|
-
constructor();
|
|
16
|
-
/**
|
|
17
|
-
* Returns DataType instance by name or Constructor. Returns undefined if not found
|
|
18
|
-
* @param nameOrCtor
|
|
19
|
-
* @param silent
|
|
20
|
-
*/
|
|
21
|
-
getDataType(nameOrCtor: any, silent: true): DataType | undefined;
|
|
22
|
-
/**
|
|
23
|
-
* Returns DataType instance by name or Constructor. Throws error if not found
|
|
24
|
-
* @param nameOrCtor
|
|
25
|
-
*/
|
|
26
|
-
getDataType(nameOrCtor: any): DataType;
|
|
27
|
-
/**
|
|
28
|
-
* Returns NS of datatype. Returns undefined if not found
|
|
29
|
-
* @param nameOrCtor
|
|
30
|
-
* @param silent
|
|
31
|
-
*/
|
|
32
|
-
getDataTypeNs(nameOrCtor: any, silent: true): string | undefined;
|
|
33
|
-
/**
|
|
34
|
-
* Returns NS of datatype. Throws error if not found
|
|
35
|
-
* @param nameOrCtor
|
|
36
|
-
*/
|
|
37
|
-
getDataTypeNs(nameOrCtor: any): string;
|
|
38
|
-
/**
|
|
39
|
-
* Returns ComplexType instance by name or Constructor.
|
|
40
|
-
* Returns undefined if not found
|
|
41
|
-
* Throws error if data type is not a ComplexType
|
|
42
|
-
* @param nameOrCtor
|
|
43
|
-
* @param silent
|
|
44
|
-
*/
|
|
45
|
-
getComplexType(nameOrCtor: string | Type, silent: true): ComplexType | undefined;
|
|
46
|
-
/**
|
|
47
|
-
* Returns ComplexType instance by name or Constructor.
|
|
48
|
-
* Throws error undefined if not found or data type is not a ComplexType
|
|
49
|
-
* @param nameOrCtor
|
|
50
|
-
*/
|
|
51
|
-
getComplexType(nameOrCtor: string | Type): ComplexType;
|
|
52
|
-
/**
|
|
53
|
-
* Returns SimpleType instance by name or Constructor.
|
|
54
|
-
* Returns undefined if not found
|
|
55
|
-
* Throws error if data type is not a SimpleType
|
|
56
|
-
* @param nameOrCtor
|
|
57
|
-
* @param silent
|
|
58
|
-
*/
|
|
59
|
-
getSimpleType(nameOrCtor: string | Type, silent: true): SimpleType | undefined;
|
|
60
|
-
/**
|
|
61
|
-
Returns SimpleType instance by name or Constructor.
|
|
62
|
-
Throws error undefined if not found or data type is not a SimpleType
|
|
63
|
-
* @param nameOrCtor
|
|
64
|
-
*/
|
|
65
|
-
getSimpleType(nameOrCtor: string | Type): SimpleType;
|
|
66
|
-
/**
|
|
67
|
-
Returns SimpleType instance by name or Constructor.
|
|
68
|
-
Throws error undefined if not found or data type is not a SimpleType
|
|
69
|
-
* @param nameOrCtor
|
|
70
|
-
*/
|
|
71
|
-
getEnumType(nameOrCtor: string | EnumType.EnumObject | EnumType.EnumArray): EnumType;
|
|
72
|
-
/**
|
|
73
|
-
* Export as Opra schema definition object
|
|
74
|
-
*/
|
|
75
|
-
exportSchema(options?: {
|
|
76
|
-
webSafe?: boolean;
|
|
77
|
-
}): OpraSchema.TypeDocument;
|
|
78
|
-
invalidate(): void;
|
|
79
|
-
}
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
declare const nodeInspectCustom: unique symbol;
|
|
2
|
-
declare const kLength: unique symbol;
|
|
3
|
-
type ResourceKey = Record<string, string | number | boolean | null>;
|
|
4
|
-
/**
|
|
5
|
-
* @class OpraURLPath
|
|
6
|
-
*/
|
|
7
|
-
export declare class OpraURLPath {
|
|
8
|
-
protected [kLength]: number;
|
|
9
|
-
[index: number]: OpraURLPathComponent;
|
|
10
|
-
constructor(...init: (OpraURLPath.ComponentLike | null | undefined)[]);
|
|
11
|
-
get length(): number;
|
|
12
|
-
slice(start?: number, end?: number): OpraURLPath;
|
|
13
|
-
resolve(...items: OpraURLPath.ComponentLike[]): this;
|
|
14
|
-
join(...items: OpraURLPath.ComponentLike[]): OpraURLPath;
|
|
15
|
-
isRelativeTo(basePath: string | OpraURLPath): boolean;
|
|
16
|
-
forEach(callback: (component: OpraURLPathComponent, index: number, _this: this) => void): void;
|
|
17
|
-
values(): IterableIterator<OpraURLPathComponent>;
|
|
18
|
-
toString(): string;
|
|
19
|
-
[nodeInspectCustom](): string;
|
|
20
|
-
[Symbol.iterator](): IterableIterator<OpraURLPathComponent>;
|
|
21
|
-
protected _resolve(items: OpraURLPath.ComponentLike | OpraURLPath.ComponentLike[], join?: boolean): void;
|
|
22
|
-
static join(...items: OpraURLPath.ComponentLike[]): OpraURLPath;
|
|
23
|
-
static resolve(...items: OpraURLPath.ComponentLike[]): OpraURLPath;
|
|
24
|
-
static relative(source: string | OpraURLPath, basePath: string | OpraURLPath): OpraURLPath | undefined;
|
|
25
|
-
}
|
|
26
|
-
export declare namespace OpraURLPath {
|
|
27
|
-
type ComponentLike = string | OpraURLPath | OpraURLPathComponent | OpraURLPathComponent.Initiator;
|
|
28
|
-
}
|
|
29
|
-
/**
|
|
30
|
-
*
|
|
31
|
-
* @class OpraURLPathComponent
|
|
32
|
-
*/
|
|
33
|
-
export declare class OpraURLPathComponent {
|
|
34
|
-
resource: string;
|
|
35
|
-
key?: string | number | ResourceKey;
|
|
36
|
-
args?: Record<string, any>;
|
|
37
|
-
typeCast?: string;
|
|
38
|
-
constructor(init: OpraURLPathComponent.Initiator);
|
|
39
|
-
toString(): string;
|
|
40
|
-
[nodeInspectCustom](): string;
|
|
41
|
-
/**
|
|
42
|
-
* Factory method.
|
|
43
|
-
* @param input
|
|
44
|
-
*/
|
|
45
|
-
static parse(input: string): OpraURLPathComponent;
|
|
46
|
-
}
|
|
47
|
-
export declare namespace OpraURLPathComponent {
|
|
48
|
-
interface Initiator {
|
|
49
|
-
resource: string;
|
|
50
|
-
key?: string | number | ResourceKey;
|
|
51
|
-
args?: Record<string, any>;
|
|
52
|
-
typeCast?: string;
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
export {};
|