@skmtc/core 0.0.223 → 0.0.224
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/{script → esm}/_dnt.polyfills.js +1 -2
- package/{script → esm}/_dnt.shims.js +4 -8
- package/{script → esm}/context/CoreContext.js +24 -28
- package/{script → esm}/context/GenerateContext.js +13 -17
- package/{script → esm}/context/LogStore.js +1 -5
- package/{script → esm}/context/ParseContext.js +1 -5
- package/{script → esm}/context/RenderContext.js +17 -47
- package/{script → esm}/context/Trail.js +1 -5
- package/esm/context/types.js +1 -0
- package/{script → esm}/deps/jsr.io/@std/encoding/1.0.1/_validate_binary_like.js +1 -4
- package/{script → esm}/deps/jsr.io/@std/encoding/1.0.1/ascii85.js +4 -8
- package/{script → esm}/deps/jsr.io/@std/encoding/1.0.1/base32.js +4 -8
- package/{script → esm}/deps/jsr.io/@std/encoding/1.0.1/base58.js +4 -8
- package/{script → esm}/deps/jsr.io/@std/encoding/1.0.1/base64.js +4 -8
- package/{script → esm}/deps/jsr.io/@std/encoding/1.0.1/base64url.js +3 -30
- package/{script → esm}/deps/jsr.io/@std/encoding/1.0.1/hex.js +4 -8
- package/esm/deps/jsr.io/@std/encoding/1.0.1/mod.js +22 -0
- package/{script → esm}/deps/jsr.io/@std/encoding/1.0.1/varint.js +8 -14
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/_common/assert_path.js +1 -4
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/_common/basename.js +5 -10
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/_common/common.js +1 -4
- package/esm/deps/jsr.io/@std/path/1.0.0/_common/constants.js +46 -0
- package/esm/deps/jsr.io/@std/path/1.0.0/_common/dirname.js +8 -0
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/_common/format.js +2 -6
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/_common/from_file_url.js +1 -4
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/_common/glob_to_reg_exp.js +1 -4
- package/esm/deps/jsr.io/@std/path/1.0.0/_common/normalize.js +8 -0
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/_common/normalize_string.js +6 -9
- package/esm/deps/jsr.io/@std/path/1.0.0/_common/relative.js +9 -0
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/_common/strip_trailing_separators.js +1 -4
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/_common/to_file_url.js +1 -4
- package/esm/deps/jsr.io/@std/path/1.0.0/_os.js +14 -0
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/basename.js +7 -10
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/common.js +4 -7
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/constants.js +4 -7
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/dirname.js +5 -8
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/extname.js +5 -8
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/format.js +5 -8
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/from_file_url.js +5 -8
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/glob_to_regexp.js +7 -10
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/is_absolute.js +5 -8
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/is_glob.js +1 -4
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/join.js +5 -8
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/join_globs.js +7 -10
- package/esm/deps/jsr.io/@std/path/1.0.0/mod.js +54 -0
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/normalize.js +5 -8
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/normalize_glob.js +7 -10
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/parse.js +5 -8
- package/esm/deps/jsr.io/@std/path/1.0.0/posix/_util.js +8 -0
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/posix/basename.js +8 -11
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/posix/constants.js +3 -6
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/posix/dirname.js +8 -11
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/posix/extname.js +7 -10
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/posix/format.js +4 -7
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/posix/from_file_url.js +3 -6
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/posix/glob_to_regexp.js +3 -6
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/posix/is_absolute.js +5 -8
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/posix/join.js +5 -8
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/posix/join_globs.js +7 -10
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/posix/normalize.js +8 -11
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/posix/normalize_glob.js +6 -9
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/posix/parse.js +10 -13
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/posix/relative.js +14 -17
- package/esm/deps/jsr.io/@std/path/1.0.0/posix/resolve.js +59 -0
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/posix/to_file_url.js +5 -8
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/posix/to_namespaced_path.js +1 -4
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/relative.js +5 -8
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/resolve.js +7 -10
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/to_file_url.js +5 -8
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/to_namespaced_path.js +7 -10
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/types.js +1 -2
- package/esm/deps/jsr.io/@std/path/1.0.0/windows/_util.js +15 -0
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/windows/basename.js +11 -14
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/windows/constants.js +3 -6
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/windows/dirname.js +17 -20
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/windows/extname.js +9 -12
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/windows/format.js +4 -7
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/windows/from_file_url.js +3 -6
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/windows/glob_to_regexp.js +3 -6
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/windows/is_absolute.js +9 -12
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/windows/join.js +10 -13
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/windows/join_globs.js +7 -10
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/windows/normalize.js +17 -20
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/windows/normalize_glob.js +6 -9
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/windows/parse.js +16 -19
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/windows/relative.js +16 -19
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/windows/resolve.js +17 -43
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/windows/to_file_url.js +5 -8
- package/{script → esm}/deps/jsr.io/@std/path/1.0.0/windows/to_namespaced_path.js +11 -14
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_dumper/dumper.js +10 -36
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_dumper/dumper_state.js +2 -6
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_error.js +1 -5
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_loader/loader.js +9 -36
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_loader/loader_state.js +2 -6
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_mark.js +3 -7
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_state.js +3 -7
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_type/binary.js +2 -5
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_type/bool.js +4 -7
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_type/float.js +5 -8
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_type/function.js +2 -5
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_type/int.js +4 -7
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_type/map.js +2 -5
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_type/merge.js +2 -5
- package/esm/deps/jsr.io/@std/yaml/0.215.0/_type/mod.js +20 -0
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_type/nil.js +2 -5
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_type/omap.js +2 -5
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_type/pairs.js +2 -5
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_type/regexp.js +2 -5
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_type/seq.js +2 -5
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_type/set.js +2 -5
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_type/str.js +2 -5
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_type/timestamp.js +2 -5
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_type/undefined.js +2 -5
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/_utils.js +15 -32
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/mod.js +4 -20
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/parse.js +5 -9
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/schema/core.js +4 -7
- package/esm/deps/jsr.io/@std/yaml/0.215.0/schema/default.js +15 -0
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/schema/extended.js +6 -9
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/schema/failsafe.js +4 -7
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/schema/json.js +6 -9
- package/esm/deps/jsr.io/@std/yaml/0.215.0/schema/mod.js +10 -0
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/schema.js +3 -7
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/stringify.js +3 -6
- package/{script → esm}/deps/jsr.io/@std/yaml/0.215.0/type.js +1 -5
- package/{script → esm}/dsl/ContentSettings.js +1 -5
- package/{script → esm}/dsl/Definition.js +4 -8
- package/{script → esm}/dsl/GeneratedValueList.js +3 -7
- package/{script → esm}/dsl/Identifier.js +8 -12
- package/{script → esm}/dsl/Import.js +2 -7
- package/esm/dsl/ModelCreator.js +1 -0
- package/{script → esm}/dsl/ModelDriver.js +14 -18
- package/esm/dsl/OperationCreator.js +1 -0
- package/{script → esm}/dsl/OperationDriver.js +11 -15
- package/esm/dsl/Stringable.js +1 -0
- package/{script → esm}/dsl/ValueBase.js +1 -5
- package/{script → esm}/dsl/base.js +5 -13
- package/esm/dsl/constants.js +1 -0
- package/{script → esm}/dsl/withConfig.js +9 -15
- package/esm/generate/generate.js +47 -0
- package/esm/generate/generateModels.js +29 -0
- package/esm/generate/generateOperations.js +35 -0
- package/{script → esm}/helpers/logStatus.js +2 -7
- package/esm/helpers/naming.js +25 -0
- package/esm/helpers/refFns.js +24 -0
- package/esm/helpers/strings.js +6 -0
- package/{script → esm}/helpers/verifyType.js +1 -4
- package/esm/mod.js +61 -0
- package/{script → esm}/oas/array/Array.js +2 -6
- package/esm/oas/array/array-types.js +17 -0
- package/esm/oas/array/toArray.js +20 -0
- package/{script → esm}/oas/boolean/Boolean.js +2 -6
- package/esm/oas/boolean/boolean-types.js +8 -0
- package/esm/oas/boolean/toBoolean.js +10 -0
- package/{script → esm}/oas/components/Components.js +2 -6
- package/esm/oas/components/toComponentsV3.js +44 -0
- package/esm/oas/contact/contact-types.js +7 -0
- package/{script → esm}/oas/discriminator/Discriminator.js +2 -6
- package/esm/oas/discriminator/discriminator-types.js +6 -0
- package/esm/oas/discriminator/toDiscriminatorV3.js +11 -0
- package/{script → esm}/oas/document/Document.js +2 -6
- package/esm/oas/document/toDocumentV3.js +24 -0
- package/{script → esm}/oas/example/Example.js +2 -6
- package/esm/oas/example/example-types.js +9 -0
- package/esm/oas/example/toExamplesV3.js +45 -0
- package/{script → esm}/oas/header/Header.js +2 -6
- package/esm/oas/header/toHeadersV3.js +42 -0
- package/{script → esm}/oas/info/Info.js +2 -6
- package/{script → esm}/oas/info/toInfoV3.js +3 -7
- package/{script → esm}/oas/integer/Integer.js +2 -6
- package/esm/oas/integer/integer-types.js +18 -0
- package/esm/oas/integer/toInteger.js +13 -0
- package/{script → esm}/oas/intersection/Intersection.js +2 -6
- package/esm/oas/intersection/intersection-types.js +12 -0
- package/esm/oas/intersection/toIntersection.js +22 -0
- package/esm/oas/license/license-types.js +7 -0
- package/esm/oas/markdown/markdown-types.js +2 -0
- package/{script → esm}/oas/mediaType/MediaType.js +2 -6
- package/esm/oas/mediaType/mediaType-types.js +12 -0
- package/esm/oas/mediaType/toMediaTypeItemV3.js +37 -0
- package/esm/oas/null/null-types.js +8 -0
- package/{script → esm}/oas/number/Number.js +2 -6
- package/esm/oas/number/number-types.js +14 -0
- package/esm/oas/number/toNumber.js +10 -0
- package/{script → esm}/oas/object/Object.js +4 -8
- package/esm/oas/object/object-types.js +27 -0
- package/esm/oas/object/toAdditionalPropertiesV3.js +14 -0
- package/esm/oas/object/toObject.js +23 -0
- package/{script → esm}/oas/operation/Operation.js +2 -6
- package/{script → esm}/oas/operation/toOperationsV3.js +13 -18
- package/{script → esm}/oas/parameter/Parameter.js +2 -6
- package/esm/oas/parameter/parameter-types.js +38 -0
- package/{script → esm}/oas/parameter/toParameterV3.js +22 -28
- package/{script → esm}/oas/pathItem/PathItem.js +2 -6
- package/esm/oas/pathItem/toPathItemV3.js +15 -0
- package/{script → esm}/oas/ref/Ref.js +6 -10
- package/esm/oas/ref/ref-types.js +54 -0
- package/esm/oas/ref/toRefV31.js +11 -0
- package/{script → esm}/oas/requestBody/RequestBody.js +2 -6
- package/esm/oas/requestBody/toRequestBodiesV3.js +46 -0
- package/{script → esm}/oas/response/Response.js +2 -6
- package/esm/oas/response/toResponseV3.js +35 -0
- package/esm/oas/schema/Schema.js +1 -0
- package/esm/oas/schema/schema-types.js +23 -0
- package/esm/oas/schema/toSchemasV3.js +60 -0
- package/{script → esm}/oas/string/String.js +2 -6
- package/esm/oas/string/string-types.js +29 -0
- package/esm/oas/string/toString.js +11 -0
- package/{script → esm}/oas/tag/Tag.js +2 -6
- package/esm/oas/tag/toTagsV3.js +14 -0
- package/{script → esm}/oas/union/Union.js +2 -6
- package/esm/oas/union/toUnion.js +22 -0
- package/esm/oas/union/union-types.js +12 -0
- package/{script → esm}/oas/unknown/Unknown.js +2 -6
- package/esm/oas/unknown/toUnknown.js +9 -0
- package/esm/oas/unknown/unknown-types.js +8 -0
- package/{script → esm}/oas/void/Void.js +4 -8
- package/{script → esm}/oas-elements/OasBase.js +1 -5
- package/esm/package.json +3 -0
- package/esm/parse/parse.js +16 -0
- package/{script → esm}/schemas/client.js +2 -4
- package/{script → esm}/server/createServer.js +24 -51
- package/esm/types/Brand.js +1 -0
- package/{script → esm}/types/CustomValue.js +3 -8
- package/esm/types/GeneratedValue.js +1 -0
- package/{script → esm}/types/GenerationType.js +1 -2
- package/esm/types/GeneratorKeys.js +13 -0
- package/esm/types/Method.js +31 -0
- package/esm/types/Modifiers.js +1 -0
- package/esm/types/RefName.js +1 -0
- package/esm/types/Settings.js +42 -0
- package/esm/types/TypeSystem.js +1 -0
- package/esm/types/prettierConfig.js +46 -0
- package/{script → esm}/typescript/EntityType.js +3 -7
- package/{script → esm}/typescript/FunctionParameter.js +10 -17
- package/{script → esm}/typescript/ReactRouterPathParams.js +2 -6
- package/esm/typescript/identifiers.js +7 -0
- package/esm/typescript/keyValues.js +11 -0
- package/{script → esm}/typescript/toDestructuredObject.js +1 -5
- package/{script → esm}/typescript/toOperationArg.js +7 -14
- package/esm/typescript/toOperationResponse.js +17 -0
- package/esm/typescript/toParamsObject.js +12 -0
- package/esm/typescript/toPathTemplate.js +3 -0
- package/esm/typescript/withDescription.js +3 -0
- package/package.json +8 -8
- package/script/context/types.js +0 -2
- package/script/deps/jsr.io/@std/encoding/1.0.1/mod.js +0 -38
- package/script/deps/jsr.io/@std/path/1.0.0/_common/constants.js +0 -49
- package/script/deps/jsr.io/@std/path/1.0.0/_common/dirname.js +0 -11
- package/script/deps/jsr.io/@std/path/1.0.0/_common/normalize.js +0 -11
- package/script/deps/jsr.io/@std/path/1.0.0/_common/relative.js +0 -12
- package/script/deps/jsr.io/@std/path/1.0.0/_os.js +0 -40
- package/script/deps/jsr.io/@std/path/1.0.0/mod.js +0 -70
- package/script/deps/jsr.io/@std/path/1.0.0/posix/_util.js +0 -11
- package/script/deps/jsr.io/@std/path/1.0.0/posix/resolve.js +0 -85
- package/script/deps/jsr.io/@std/path/1.0.0/windows/_util.js +0 -20
- package/script/deps/jsr.io/@std/yaml/0.215.0/_type/mod.js +0 -39
- package/script/deps/jsr.io/@std/yaml/0.215.0/schema/default.js +0 -18
- package/script/deps/jsr.io/@std/yaml/0.215.0/schema/mod.js +0 -18
- package/script/dsl/ModelCreator.js +0 -2
- package/script/dsl/OperationCreator.js +0 -2
- package/script/dsl/Stringable.js +0 -2
- package/script/dsl/constants.js +0 -4
- package/script/generate/generate.js +0 -75
- package/script/generate/generateModels.js +0 -56
- package/script/generate/generateOperations.js +0 -62
- package/script/helpers/naming.js +0 -33
- package/script/helpers/refFns.js +0 -30
- package/script/helpers/strings.js +0 -11
- package/script/mod.js +0 -77
- package/script/oas/array/array-types.js +0 -20
- package/script/oas/array/toArray.js +0 -24
- package/script/oas/boolean/boolean-types.js +0 -11
- package/script/oas/boolean/toBoolean.js +0 -14
- package/script/oas/components/toComponentsV3.js +0 -48
- package/script/oas/contact/contact-types.js +0 -10
- package/script/oas/discriminator/discriminator-types.js +0 -9
- package/script/oas/discriminator/toDiscriminatorV3.js +0 -15
- package/script/oas/document/toDocumentV3.js +0 -28
- package/script/oas/example/example-types.js +0 -12
- package/script/oas/example/toExamplesV3.js +0 -51
- package/script/oas/header/toHeadersV3.js +0 -46
- package/script/oas/integer/integer-types.js +0 -21
- package/script/oas/integer/toInteger.js +0 -17
- package/script/oas/intersection/intersection-types.js +0 -15
- package/script/oas/intersection/toIntersection.js +0 -26
- package/script/oas/license/license-types.js +0 -10
- package/script/oas/markdown/markdown-types.js +0 -5
- package/script/oas/mediaType/mediaType-types.js +0 -15
- package/script/oas/mediaType/toMediaTypeItemV3.js +0 -43
- package/script/oas/null/null-types.js +0 -11
- package/script/oas/number/number-types.js +0 -17
- package/script/oas/number/toNumber.js +0 -14
- package/script/oas/object/object-types.js +0 -30
- package/script/oas/object/toAdditionalPropertiesV3.js +0 -18
- package/script/oas/object/toObject.js +0 -27
- package/script/oas/parameter/parameter-types.js +0 -41
- package/script/oas/pathItem/toPathItemV3.js +0 -19
- package/script/oas/ref/ref-types.js +0 -57
- package/script/oas/ref/toRefV31.js +0 -15
- package/script/oas/requestBody/toRequestBodiesV3.js +0 -51
- package/script/oas/response/toResponseV3.js +0 -41
- package/script/oas/schema/Schema.js +0 -2
- package/script/oas/schema/schema-types.js +0 -26
- package/script/oas/schema/toSchemasV3.js +0 -67
- package/script/oas/string/string-types.js +0 -32
- package/script/oas/string/toString.js +0 -15
- package/script/oas/tag/toTagsV3.js +0 -18
- package/script/oas/union/toUnion.js +0 -26
- package/script/oas/union/union-types.js +0 -15
- package/script/oas/unknown/toUnknown.js +0 -13
- package/script/oas/unknown/unknown-types.js +0 -11
- package/script/package.json +0 -3
- package/script/parse/parse.js +0 -20
- package/script/types/Brand.js +0 -2
- package/script/types/GeneratedValue.js +0 -2
- package/script/types/GeneratorKeys.js +0 -19
- package/script/types/Method.js +0 -34
- package/script/types/Modifiers.js +0 -2
- package/script/types/RefName.js +0 -2
- package/script/types/Settings.js +0 -45
- package/script/types/TypeSystem.js +0 -2
- package/script/types/prettierConfig.js +0 -49
- package/script/typescript/identifiers.js +0 -12
- package/script/typescript/keyValues.js +0 -15
- package/script/typescript/toOperationResponse.js +0 -21
- package/script/typescript/toParamsObject.js +0 -16
- package/script/typescript/toPathTemplate.js +0 -7
- package/script/typescript/withDescription.js +0 -7
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const OasBase_js_1 = require("../../oas-elements/OasBase.js");
|
|
5
|
-
const Trail_js_1 = require("../../context/Trail.js");
|
|
6
|
-
class OasObject extends OasBase_js_1.OasBase {
|
|
1
|
+
import { OasBase } from '../../oas-elements/OasBase.js';
|
|
2
|
+
import { Trail } from '../../context/Trail.js';
|
|
3
|
+
export class OasObject extends OasBase {
|
|
7
4
|
constructor({ fields, trail, skipped, context }) {
|
|
8
5
|
super({ trail, skipped, context });
|
|
9
6
|
Object.defineProperty(this, "oasType", {
|
|
@@ -29,7 +26,7 @@ class OasObject extends OasBase_js_1.OasBase {
|
|
|
29
26
|
static fromFields({ fields, context }) {
|
|
30
27
|
return new OasObject({
|
|
31
28
|
fields,
|
|
32
|
-
trail: new
|
|
29
|
+
trail: new Trail(),
|
|
33
30
|
context,
|
|
34
31
|
skipped: {}
|
|
35
32
|
});
|
|
@@ -62,4 +59,3 @@ class OasObject extends OasBase_js_1.OasBase {
|
|
|
62
59
|
return this;
|
|
63
60
|
}
|
|
64
61
|
}
|
|
65
|
-
exports.OasObject = OasObject;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { oasSchemaData } from '../schema/schema-types.js';
|
|
3
|
+
import { oasSchemaRefData } from '../ref/ref-types.js';
|
|
4
|
+
export const oasObjectData = z.object({
|
|
5
|
+
oasType: z.literal('schema'),
|
|
6
|
+
type: z.literal('object'),
|
|
7
|
+
title: z.string().optional(),
|
|
8
|
+
description: z.string().optional(),
|
|
9
|
+
default: z.object({}).optional(),
|
|
10
|
+
// Add soon
|
|
11
|
+
// maxProperties: z.number().optional(),
|
|
12
|
+
// Add soon
|
|
13
|
+
// minProperties: z.number().optional(),
|
|
14
|
+
properties: z.lazy(() => {
|
|
15
|
+
return z.record(z.union([oasSchemaData, oasSchemaRefData])).optional();
|
|
16
|
+
}),
|
|
17
|
+
// Add soon
|
|
18
|
+
// patternProperties: z.lazy(() => z.record(jsonSchema4).optional()),
|
|
19
|
+
required: z.array(z.string()).optional(),
|
|
20
|
+
// allOf: z.lazy(() => z.array(oasObject).optional()),
|
|
21
|
+
// Use oneOf instead of anyOf
|
|
22
|
+
// anyOf: z.lazy(() => z.array(jsonSchema4).optional()),
|
|
23
|
+
// oneOf: z.lazy(() => z.array(oasObject).optional()),
|
|
24
|
+
additionalProperties: z.lazy(() => {
|
|
25
|
+
return z.union([z.boolean(), oasSchemaData, oasSchemaRefData]).optional();
|
|
26
|
+
})
|
|
27
|
+
});
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { toSchemaV3 } from '../schema/toSchemasV3.js';
|
|
2
|
+
export const toAdditionalPropertiesV3 = ({ additionalProperties, trail, context }) => {
|
|
3
|
+
if (typeof additionalProperties === 'boolean') {
|
|
4
|
+
return additionalProperties;
|
|
5
|
+
}
|
|
6
|
+
if (additionalProperties === undefined) {
|
|
7
|
+
return undefined;
|
|
8
|
+
}
|
|
9
|
+
return toSchemaV3({
|
|
10
|
+
schema: additionalProperties,
|
|
11
|
+
trail,
|
|
12
|
+
context
|
|
13
|
+
});
|
|
14
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { OasObject } from './Object.js';
|
|
2
|
+
import { toOptionalSchemasV3 } from '../schema/toSchemasV3.js';
|
|
3
|
+
import { toAdditionalPropertiesV3 } from './toAdditionalPropertiesV3.js';
|
|
4
|
+
export const toObject = ({ value, trail, context }) => {
|
|
5
|
+
const { type: _type, title, description, properties, required, additionalProperties, nullable, ...skipped } = value;
|
|
6
|
+
const fields = {
|
|
7
|
+
title,
|
|
8
|
+
description,
|
|
9
|
+
nullable,
|
|
10
|
+
properties: toOptionalSchemasV3({
|
|
11
|
+
schemas: properties,
|
|
12
|
+
trail: trail.add('properties'),
|
|
13
|
+
context
|
|
14
|
+
}),
|
|
15
|
+
required,
|
|
16
|
+
additionalProperties: toAdditionalPropertiesV3({
|
|
17
|
+
additionalProperties,
|
|
18
|
+
trail: trail.add('additionalProperties'),
|
|
19
|
+
context
|
|
20
|
+
})
|
|
21
|
+
};
|
|
22
|
+
return new OasObject({ fields, trail, skipped, context });
|
|
23
|
+
};
|
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.OasOperation = void 0;
|
|
4
|
-
const OasBase_js_1 = require("../../oas-elements/OasBase.js");
|
|
1
|
+
import { OasBase } from '../../oas-elements/OasBase.js';
|
|
5
2
|
/** Operation represents a resource path and a method that can be executed against it */
|
|
6
|
-
class OasOperation extends
|
|
3
|
+
export class OasOperation extends OasBase {
|
|
7
4
|
constructor({ fields, trail, skipped, context }) {
|
|
8
5
|
super({ trail, skipped, context });
|
|
9
6
|
Object.defineProperty(this, "oasType", {
|
|
@@ -70,4 +67,3 @@ class OasOperation extends OasBase_js_1.OasBase {
|
|
|
70
67
|
return this.fields.deprecated;
|
|
71
68
|
}
|
|
72
69
|
}
|
|
73
|
-
exports.OasOperation = OasOperation;
|
|
@@ -1,12 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const
|
|
7
|
-
const Operation_js_1 = require("./Operation.js");
|
|
8
|
-
const toPathItemV3_js_1 = require("../pathItem/toPathItemV3.js");
|
|
9
|
-
const toOperationV3 = ({ operation, operationInfo, trail, context }) => {
|
|
1
|
+
import { toRequestBodyV3 } from '../requestBody/toRequestBodiesV3.js';
|
|
2
|
+
import { toResponsesV3 } from '../response/toResponseV3.js';
|
|
3
|
+
import { toParameterListV3 } from '../parameter/toParameterV3.js';
|
|
4
|
+
import { OasOperation } from './Operation.js';
|
|
5
|
+
import { toPathItemV3 } from '../pathItem/toPathItemV3.js';
|
|
6
|
+
export const toOperationV3 = ({ operation, operationInfo, trail, context }) => {
|
|
10
7
|
const { method, path, pathItem } = operationInfo;
|
|
11
8
|
const { operationId, tags, summary, description, parameters, requestBody, responses, deprecated, ...skipped } = operation;
|
|
12
9
|
const fields = {
|
|
@@ -17,33 +14,32 @@ const toOperationV3 = ({ operation, operationInfo, trail, context }) => {
|
|
|
17
14
|
summary,
|
|
18
15
|
tags,
|
|
19
16
|
description,
|
|
20
|
-
parameters:
|
|
17
|
+
parameters: toParameterListV3({
|
|
21
18
|
parameters,
|
|
22
19
|
trail: trail.add('parameters'),
|
|
23
20
|
context
|
|
24
21
|
}),
|
|
25
|
-
requestBody:
|
|
22
|
+
requestBody: toRequestBodyV3({
|
|
26
23
|
requestBody,
|
|
27
24
|
trail: trail.add('requestBody'),
|
|
28
25
|
context
|
|
29
26
|
}),
|
|
30
|
-
responses:
|
|
27
|
+
responses: toResponsesV3({
|
|
31
28
|
responses,
|
|
32
29
|
trail: trail.add('responses'),
|
|
33
30
|
context
|
|
34
31
|
}),
|
|
35
32
|
deprecated
|
|
36
33
|
};
|
|
37
|
-
return new
|
|
34
|
+
return new OasOperation({ fields, trail, context, skipped });
|
|
38
35
|
};
|
|
39
|
-
|
|
40
|
-
const toOperationsV3 = ({ paths, trail, context }) => {
|
|
36
|
+
export const toOperationsV3 = ({ paths, trail, context }) => {
|
|
41
37
|
return Object.entries(paths).flatMap(([path, pathItem]) => {
|
|
42
38
|
if (!pathItem) {
|
|
43
39
|
return [];
|
|
44
40
|
}
|
|
45
41
|
const { get, post, put, delete: deleteMethod, options, head, patch, trace, ...rest } = pathItem;
|
|
46
|
-
const pathItemObject =
|
|
42
|
+
const pathItemObject = toPathItemV3({
|
|
47
43
|
pathItem: rest,
|
|
48
44
|
trail: trail.addApiPath(path),
|
|
49
45
|
context
|
|
@@ -63,7 +59,7 @@ const toOperationsV3 = ({ paths, trail, context }) => {
|
|
|
63
59
|
if (!operation) {
|
|
64
60
|
return;
|
|
65
61
|
}
|
|
66
|
-
return
|
|
62
|
+
return toOperationV3({
|
|
67
63
|
operation,
|
|
68
64
|
operationInfo: {
|
|
69
65
|
method: method,
|
|
@@ -77,4 +73,3 @@ const toOperationsV3 = ({ paths, trail, context }) => {
|
|
|
77
73
|
.filter((item) => Boolean(item));
|
|
78
74
|
});
|
|
79
75
|
};
|
|
80
|
-
exports.toOperationsV3 = toOperationsV3;
|
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.OasParameter = void 0;
|
|
4
|
-
const OasBase_js_1 = require("../../oas-elements/OasBase.js");
|
|
5
|
-
class OasParameter extends OasBase_js_1.OasBase {
|
|
1
|
+
import { OasBase } from '../../oas-elements/OasBase.js';
|
|
2
|
+
export class OasParameter extends OasBase {
|
|
6
3
|
constructor({ fields, trail, skipped, context }) {
|
|
7
4
|
super({ trail, skipped, context });
|
|
8
5
|
Object.defineProperty(this, "oasType", {
|
|
@@ -71,4 +68,3 @@ class OasParameter extends OasBase_js_1.OasBase {
|
|
|
71
68
|
return this.fields.content?.[mediaType]?.schema;
|
|
72
69
|
}
|
|
73
70
|
}
|
|
74
|
-
exports.OasParameter = OasParameter;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { oasExampleData } from '../example/example-types.js';
|
|
2
|
+
import { markdown } from '../markdown/markdown-types.js';
|
|
3
|
+
import { oasMediaTypeData } from '../mediaType/mediaType-types.js';
|
|
4
|
+
import { oasExampleRefData, oasSchemaRefData } from '../ref/ref-types.js';
|
|
5
|
+
import { oasSchemaData } from '../schema/schema-types.js';
|
|
6
|
+
import { z } from 'zod';
|
|
7
|
+
export const oasParameterLocation = z.enum([
|
|
8
|
+
'query',
|
|
9
|
+
'header',
|
|
10
|
+
'path',
|
|
11
|
+
'cookie'
|
|
12
|
+
]);
|
|
13
|
+
export const oasParameterStyle = z.enum([
|
|
14
|
+
'matrix',
|
|
15
|
+
'label',
|
|
16
|
+
'form',
|
|
17
|
+
'simple',
|
|
18
|
+
'spaceDelimited',
|
|
19
|
+
'pipeDelimited',
|
|
20
|
+
'deepObject'
|
|
21
|
+
]);
|
|
22
|
+
export const oasParameterData = z.object({
|
|
23
|
+
oasType: z.literal('parameter'),
|
|
24
|
+
// Default values (based on value of in): for query - form; for path - simple; for header - simple; for cookie - form.
|
|
25
|
+
// example: z.any().optional(),
|
|
26
|
+
allowReserved: z.boolean().optional(),
|
|
27
|
+
allowEmptyValue: z.boolean().optional(),
|
|
28
|
+
content: z.record(oasMediaTypeData).optional(),
|
|
29
|
+
deprecated: z.boolean().optional(),
|
|
30
|
+
description: markdown.optional(),
|
|
31
|
+
examples: z.record(z.union([oasExampleData, oasExampleRefData])).optional(),
|
|
32
|
+
explode: z.boolean(),
|
|
33
|
+
location: oasParameterLocation,
|
|
34
|
+
name: z.string(),
|
|
35
|
+
required: z.boolean().optional(),
|
|
36
|
+
schema: z.union([oasSchemaData, oasSchemaRefData]).optional(),
|
|
37
|
+
style: oasParameterStyle
|
|
38
|
+
});
|
|
@@ -1,22 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const
|
|
10
|
-
const Parameter_js_1 = require("./Parameter.js");
|
|
11
|
-
const ts_pattern_1 = require("ts-pattern");
|
|
12
|
-
const toParameterListV3 = ({ parameters, trail, context }) => {
|
|
1
|
+
import { isRef } from '../../helpers/refFns.js';
|
|
2
|
+
import { oasParameterLocation, oasParameterStyle } from './parameter-types.js';
|
|
3
|
+
import { toExamplesV3 } from '../example/toExamplesV3.js';
|
|
4
|
+
import { toRefV31 } from '../ref/toRefV31.js';
|
|
5
|
+
import { toOptionalSchemaV3 } from '../schema/toSchemasV3.js';
|
|
6
|
+
import { toOptionalMediaTypeItemsV3 } from '../mediaType/toMediaTypeItemV3.js';
|
|
7
|
+
import { OasParameter } from './Parameter.js';
|
|
8
|
+
import { match } from 'ts-pattern';
|
|
9
|
+
export const toParameterListV3 = ({ parameters, trail, context }) => {
|
|
13
10
|
if (!parameters) {
|
|
14
11
|
return undefined;
|
|
15
12
|
}
|
|
16
13
|
return parameters.map((parameter, index) => toParameterV3({ parameter, trail: trail.add(`${index}`), context }));
|
|
17
14
|
};
|
|
18
|
-
|
|
19
|
-
const toParametersV3 = ({ parameters, trail, context }) => {
|
|
15
|
+
export const toParametersV3 = ({ parameters, trail, context }) => {
|
|
20
16
|
return Object.fromEntries(Object.entries(parameters).map(([key, value]) => {
|
|
21
17
|
return [
|
|
22
18
|
key,
|
|
@@ -24,20 +20,18 @@ const toParametersV3 = ({ parameters, trail, context }) => {
|
|
|
24
20
|
];
|
|
25
21
|
}));
|
|
26
22
|
};
|
|
27
|
-
|
|
28
|
-
const toOptionalParametersV3 = ({ parameters, trail, context }) => {
|
|
23
|
+
export const toOptionalParametersV3 = ({ parameters, trail, context }) => {
|
|
29
24
|
if (!parameters) {
|
|
30
25
|
return undefined;
|
|
31
26
|
}
|
|
32
|
-
return
|
|
27
|
+
return toParametersV3({ parameters, trail, context });
|
|
33
28
|
};
|
|
34
|
-
exports.toOptionalParametersV3 = toOptionalParametersV3;
|
|
35
29
|
const toParameterV3 = ({ parameter, trail, context }) => {
|
|
36
|
-
if (
|
|
37
|
-
return
|
|
30
|
+
if (isRef(parameter)) {
|
|
31
|
+
return toRefV31({ ref: parameter, refType: 'parameter', trail, context });
|
|
38
32
|
}
|
|
39
33
|
const { name, in: location, description, required, deprecated, allowEmptyValue, allowReserved, schema, example, examples, content, style, explode, ...skipped } = parameter;
|
|
40
|
-
const parsedLocation =
|
|
34
|
+
const parsedLocation = oasParameterLocation.parse(location);
|
|
41
35
|
if (parsedLocation === 'path' && !required) {
|
|
42
36
|
console.warn(JSON.stringify({
|
|
43
37
|
message: `Path parameters must be required`,
|
|
@@ -60,26 +54,26 @@ const toParameterV3 = ({ parameter, trail, context }) => {
|
|
|
60
54
|
explode: toExplode({ explode, style }),
|
|
61
55
|
allowEmptyValue,
|
|
62
56
|
allowReserved,
|
|
63
|
-
schema:
|
|
64
|
-
examples:
|
|
57
|
+
schema: toOptionalSchemaV3({ schema, trail: trail.add('schema'), context }),
|
|
58
|
+
examples: toExamplesV3({
|
|
65
59
|
examples,
|
|
66
60
|
example,
|
|
67
61
|
exampleKey: `${name}-${parsedLocation}`,
|
|
68
62
|
trail: trail.add('examples'),
|
|
69
63
|
context
|
|
70
64
|
}),
|
|
71
|
-
content:
|
|
65
|
+
content: toOptionalMediaTypeItemsV3({
|
|
72
66
|
content,
|
|
73
67
|
trail: trail.add('content'),
|
|
74
68
|
context
|
|
75
69
|
})
|
|
76
70
|
};
|
|
77
|
-
return new
|
|
71
|
+
return new OasParameter({ fields, trail, skipped, context });
|
|
78
72
|
};
|
|
79
73
|
const toStyle = ({ style, location }) => {
|
|
80
|
-
const parsed =
|
|
74
|
+
const parsed = oasParameterStyle.optional().parse(style);
|
|
81
75
|
return (parsed ??
|
|
82
|
-
|
|
76
|
+
match(location)
|
|
83
77
|
.with('path', () => 'simple')
|
|
84
78
|
.with('header', () => 'simple')
|
|
85
79
|
.with('query', () => 'form')
|
|
@@ -88,7 +82,7 @@ const toStyle = ({ style, location }) => {
|
|
|
88
82
|
};
|
|
89
83
|
const toExplode = ({ explode, style }) => {
|
|
90
84
|
return (explode ??
|
|
91
|
-
|
|
85
|
+
match(style)
|
|
92
86
|
.with('form', () => true)
|
|
93
87
|
.otherwise(() => false));
|
|
94
88
|
};
|
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.OasPathItem = void 0;
|
|
4
|
-
const OasBase_js_1 = require("../../oas-elements/OasBase.js");
|
|
5
|
-
class OasPathItem extends OasBase_js_1.OasBase {
|
|
1
|
+
import { OasBase } from '../../oas-elements/OasBase.js';
|
|
2
|
+
export class OasPathItem extends OasBase {
|
|
6
3
|
constructor({ fields, trail, skipped, context }) {
|
|
7
4
|
super({ trail, skipped, context });
|
|
8
5
|
Object.defineProperty(this, "oasType", {
|
|
@@ -29,4 +26,3 @@ class OasPathItem extends OasBase_js_1.OasBase {
|
|
|
29
26
|
return this.fields.parameters;
|
|
30
27
|
}
|
|
31
28
|
}
|
|
32
|
-
exports.OasPathItem = OasPathItem;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { toParameterListV3 } from '../parameter/toParameterV3.js';
|
|
2
|
+
import { OasPathItem } from './PathItem.js';
|
|
3
|
+
export const toPathItemV3 = ({ pathItem, trail, context }) => {
|
|
4
|
+
const { summary, description, parameters, ...skipped } = pathItem;
|
|
5
|
+
const fields = {
|
|
6
|
+
summary,
|
|
7
|
+
description,
|
|
8
|
+
parameters: toParameterListV3({
|
|
9
|
+
parameters,
|
|
10
|
+
trail: trail.add('parameters'),
|
|
11
|
+
context
|
|
12
|
+
})
|
|
13
|
+
};
|
|
14
|
+
return new OasPathItem({ fields, trail, context, skipped });
|
|
15
|
+
};
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const OasBase_js_1 = require("../../oas-elements/OasBase.js");
|
|
5
|
-
const refFns_js_1 = require("../../helpers/refFns.js");
|
|
6
|
-
const ts_pattern_1 = require("ts-pattern");
|
|
1
|
+
import { OasBase } from '../../oas-elements/OasBase.js';
|
|
2
|
+
import { toRefName } from '../../helpers/refFns.js';
|
|
3
|
+
import { match } from 'ts-pattern';
|
|
7
4
|
const MAX_LOOKUPS = 10;
|
|
8
|
-
class OasRef extends
|
|
5
|
+
export class OasRef extends OasBase {
|
|
9
6
|
constructor({ fields, trail, skipped, context }) {
|
|
10
7
|
super({ trail, skipped, context });
|
|
11
8
|
Object.defineProperty(this, "oasType", {
|
|
@@ -40,9 +37,9 @@ class OasRef extends OasBase_js_1.OasBase {
|
|
|
40
37
|
}
|
|
41
38
|
resolveOnce() {
|
|
42
39
|
const c = this.context.schemaModel.components;
|
|
43
|
-
const refName =
|
|
40
|
+
const refName = toRefName(this.$ref);
|
|
44
41
|
const refType = this.refType;
|
|
45
|
-
const resolved =
|
|
42
|
+
const resolved = match(refType)
|
|
46
43
|
.with('schema', () => c?.schemas?.[refName])
|
|
47
44
|
.with('requestBody', () => c?.requestBodies?.[refName])
|
|
48
45
|
.with('parameter', () => c?.parameters?.[refName])
|
|
@@ -90,4 +87,3 @@ class OasRef extends OasBase_js_1.OasBase {
|
|
|
90
87
|
return this.fields.description;
|
|
91
88
|
}
|
|
92
89
|
}
|
|
93
|
-
exports.OasRef = OasRef;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { markdown } from '../markdown/markdown-types.js';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
export const oasSchemaRefData = z.object({
|
|
4
|
+
oasType: z.literal('ref'),
|
|
5
|
+
refType: z.enum(['schema']),
|
|
6
|
+
$ref: z.string(),
|
|
7
|
+
summary: z.string().optional(),
|
|
8
|
+
description: markdown.optional()
|
|
9
|
+
});
|
|
10
|
+
export const oasResponseRefData = z.object({
|
|
11
|
+
oasType: z.literal('ref'),
|
|
12
|
+
refType: z.enum(['response']),
|
|
13
|
+
$ref: z.string(),
|
|
14
|
+
summary: z.string().optional(),
|
|
15
|
+
description: markdown.optional()
|
|
16
|
+
});
|
|
17
|
+
export const oasParameterRefData = z.object({
|
|
18
|
+
oasType: z.literal('ref'),
|
|
19
|
+
refType: z.enum(['parameter']),
|
|
20
|
+
$ref: z.string(),
|
|
21
|
+
summary: z.string().optional(),
|
|
22
|
+
description: markdown.optional()
|
|
23
|
+
});
|
|
24
|
+
export const oasExampleRefData = z.object({
|
|
25
|
+
oasType: z.literal('ref'),
|
|
26
|
+
refType: z.enum(['example']),
|
|
27
|
+
$ref: z.string(),
|
|
28
|
+
summary: z.string().optional(),
|
|
29
|
+
description: markdown.optional()
|
|
30
|
+
});
|
|
31
|
+
export const oasRequestBodyRefData = z.object({
|
|
32
|
+
oasType: z.literal('ref'),
|
|
33
|
+
refType: z.enum(['requestBody']),
|
|
34
|
+
$ref: z.string(),
|
|
35
|
+
summary: z.string().optional(),
|
|
36
|
+
description: markdown.optional()
|
|
37
|
+
});
|
|
38
|
+
export const oasHeaderRefData = z.object({
|
|
39
|
+
oasType: z.literal('ref'),
|
|
40
|
+
refType: z.enum(['header']),
|
|
41
|
+
$ref: z.string(),
|
|
42
|
+
summary: z.string().optional(),
|
|
43
|
+
description: markdown.optional()
|
|
44
|
+
});
|
|
45
|
+
// OasPathItemRefData
|
|
46
|
+
export const oasRefData = z.union([
|
|
47
|
+
oasSchemaRefData,
|
|
48
|
+
oasResponseRefData,
|
|
49
|
+
oasParameterRefData,
|
|
50
|
+
oasExampleRefData,
|
|
51
|
+
oasRequestBodyRefData,
|
|
52
|
+
oasHeaderRefData
|
|
53
|
+
// oasPathItemRefData
|
|
54
|
+
]);
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { OasRef } from './Ref.js';
|
|
2
|
+
export const toRefV31 = ({ ref, refType, trail, context }) => {
|
|
3
|
+
const { $ref, summary, description, ...skipped } = ref;
|
|
4
|
+
const fields = {
|
|
5
|
+
refType,
|
|
6
|
+
$ref,
|
|
7
|
+
summary,
|
|
8
|
+
description
|
|
9
|
+
};
|
|
10
|
+
return new OasRef({ fields, trail, context, skipped });
|
|
11
|
+
};
|
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.OasRequestBody = void 0;
|
|
4
|
-
const OasBase_js_1 = require("../../oas-elements/OasBase.js");
|
|
5
|
-
class OasRequestBody extends OasBase_js_1.OasBase {
|
|
1
|
+
import { OasBase } from '../../oas-elements/OasBase.js';
|
|
2
|
+
export class OasRequestBody extends OasBase {
|
|
6
3
|
constructor({ fields, trail, skipped, context }) {
|
|
7
4
|
super({ trail, skipped, context });
|
|
8
5
|
Object.defineProperty(this, "oasType", {
|
|
@@ -41,4 +38,3 @@ class OasRequestBody extends OasBase_js_1.OasBase {
|
|
|
41
38
|
return this.fields.content?.[mediaType]?.schema;
|
|
42
39
|
}
|
|
43
40
|
}
|
|
44
|
-
exports.OasRequestBody = OasRequestBody;
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { isRef } from '../../helpers/refFns.js';
|
|
2
|
+
import { toRefV31 } from '../ref/toRefV31.js';
|
|
3
|
+
import { toMediaTypeItemsV3 } from '../mediaType/toMediaTypeItemV3.js';
|
|
4
|
+
import { OasRequestBody } from './RequestBody.js';
|
|
5
|
+
export const toRequestBodyV3 = ({ requestBody, trail, context }) => {
|
|
6
|
+
if (!requestBody) {
|
|
7
|
+
return undefined;
|
|
8
|
+
}
|
|
9
|
+
if (isRef(requestBody)) {
|
|
10
|
+
return toRefV31({
|
|
11
|
+
ref: requestBody,
|
|
12
|
+
refType: 'requestBody',
|
|
13
|
+
trail,
|
|
14
|
+
context
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
const { description, content, required, ...skipped } = requestBody;
|
|
18
|
+
const fields = {
|
|
19
|
+
description,
|
|
20
|
+
content: toMediaTypeItemsV3({
|
|
21
|
+
content,
|
|
22
|
+
trail: trail.add('content'),
|
|
23
|
+
context
|
|
24
|
+
}),
|
|
25
|
+
required
|
|
26
|
+
};
|
|
27
|
+
return new OasRequestBody({ fields, trail, skipped, context });
|
|
28
|
+
};
|
|
29
|
+
export const toRequestBodiesV3 = ({ requestBodies, trail, context }) => {
|
|
30
|
+
if (!requestBodies) {
|
|
31
|
+
return undefined;
|
|
32
|
+
}
|
|
33
|
+
const entries = Object.entries(requestBodies)
|
|
34
|
+
.map(([key, value]) => {
|
|
35
|
+
return [
|
|
36
|
+
key,
|
|
37
|
+
toRequestBodyV3({
|
|
38
|
+
requestBody: value,
|
|
39
|
+
trail: trail.add(key),
|
|
40
|
+
context
|
|
41
|
+
})
|
|
42
|
+
];
|
|
43
|
+
})
|
|
44
|
+
.filter(([, value]) => Boolean(value));
|
|
45
|
+
return Object.fromEntries(entries);
|
|
46
|
+
};
|
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
exports.OasResponse = void 0;
|
|
4
|
-
const OasBase_js_1 = require("../../oas-elements/OasBase.js");
|
|
5
|
-
class OasResponse extends OasBase_js_1.OasBase {
|
|
1
|
+
import { OasBase } from '../../oas-elements/OasBase.js';
|
|
2
|
+
export class OasResponse extends OasBase {
|
|
6
3
|
constructor({ fields, trail, skipped, context }) {
|
|
7
4
|
super({ trail, skipped, context });
|
|
8
5
|
Object.defineProperty(this, "oasType", {
|
|
@@ -41,4 +38,3 @@ class OasResponse extends OasBase_js_1.OasBase {
|
|
|
41
38
|
return this.fields.content?.[mediaType]?.schema;
|
|
42
39
|
}
|
|
43
40
|
}
|
|
44
|
-
exports.OasResponse = OasResponse;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { toRefV31 } from '../ref/toRefV31.js';
|
|
2
|
+
import { toHeadersV3 } from '../header/toHeadersV3.js';
|
|
3
|
+
import { isRef } from '../../helpers/refFns.js';
|
|
4
|
+
import { toOptionalMediaTypeItemsV3 } from '../mediaType/toMediaTypeItemV3.js';
|
|
5
|
+
import { OasResponse } from './Response.js';
|
|
6
|
+
export const toResponsesV3 = ({ responses, trail, context }) => {
|
|
7
|
+
return Object.fromEntries(Object.entries(responses).map(([key, value]) => {
|
|
8
|
+
return [
|
|
9
|
+
key,
|
|
10
|
+
toResponseV3({ response: value, trail: trail.add(key), context })
|
|
11
|
+
];
|
|
12
|
+
}));
|
|
13
|
+
};
|
|
14
|
+
export const toOptionalResponsesV3 = ({ responses, trail, context }) => {
|
|
15
|
+
if (!responses) {
|
|
16
|
+
return undefined;
|
|
17
|
+
}
|
|
18
|
+
return toResponsesV3({ responses, trail, context });
|
|
19
|
+
};
|
|
20
|
+
export const toResponseV3 = ({ response, trail, context }) => {
|
|
21
|
+
if (isRef(response)) {
|
|
22
|
+
return toRefV31({ ref: response, refType: 'response', trail, context });
|
|
23
|
+
}
|
|
24
|
+
const { description, headers, content, ...skipped } = response;
|
|
25
|
+
const fields = {
|
|
26
|
+
description,
|
|
27
|
+
headers: toHeadersV3({ headers, trail: trail.add('headers'), context }),
|
|
28
|
+
content: toOptionalMediaTypeItemsV3({
|
|
29
|
+
content,
|
|
30
|
+
trail: trail.add('content'),
|
|
31
|
+
context
|
|
32
|
+
})
|
|
33
|
+
};
|
|
34
|
+
return new OasResponse({ fields, trail, skipped, context });
|
|
35
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { oasArrayData } from '../array/array-types.js';
|
|
3
|
+
import { oasBooleanData } from '../boolean/boolean-types.js';
|
|
4
|
+
import { oasNullData } from '../null/null-types.js';
|
|
5
|
+
import { oasUnknownData } from '../unknown/unknown-types.js';
|
|
6
|
+
import { oasUnionData } from '../union/union-types.js';
|
|
7
|
+
import { oasIntegerData } from '../integer/integer-types.js';
|
|
8
|
+
import { oasNumberData } from '../number/number-types.js';
|
|
9
|
+
import { oasIntersectionData } from '../intersection/intersection-types.js';
|
|
10
|
+
import { oasStringData } from '../string/string-types.js';
|
|
11
|
+
import { oasObjectData } from '../object/object-types.js';
|
|
12
|
+
export const oasSchemaData = z.union([
|
|
13
|
+
oasObjectData,
|
|
14
|
+
oasArrayData,
|
|
15
|
+
oasBooleanData,
|
|
16
|
+
oasStringData,
|
|
17
|
+
oasNumberData,
|
|
18
|
+
oasNullData,
|
|
19
|
+
oasIntegerData,
|
|
20
|
+
oasUnionData,
|
|
21
|
+
oasIntersectionData,
|
|
22
|
+
oasUnknownData
|
|
23
|
+
]);
|