typia 3.3.12 → 3.4.0-dev.20221212
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/README.md +169 -403
- package/lib/IValidation.d.ts +10 -4
- package/lib/Primitive.d.ts +45 -0
- package/lib/Primitive.js +3 -0
- package/lib/Primitive.js.map +1 -0
- package/lib/executable/internal/TypiaSetupWizard.d.ts +4 -0
- package/lib/executable/internal/TypiaSetupWizard.js +200 -0
- package/lib/executable/internal/TypiaSetupWizard.js.map +1 -0
- package/lib/executable/typia.d.ts +1 -0
- package/lib/executable/typia.js +98 -0
- package/lib/executable/typia.js.map +1 -0
- package/lib/factories/CommentFactory.js +1 -1
- package/lib/factories/CommentFactory.js.map +1 -1
- package/lib/factories/ExpressionFactory.d.ts +1 -0
- package/lib/factories/ExpressionFactory.js +4 -0
- package/lib/factories/ExpressionFactory.js.map +1 -1
- package/lib/factories/IdentifierFactory.d.ts +1 -1
- package/lib/factories/IdentifierFactory.js +4 -2
- package/lib/factories/IdentifierFactory.js.map +1 -1
- package/lib/factories/MetadataCollection.d.ts +2 -1
- package/lib/factories/MetadataCollection.js +24 -5
- package/lib/factories/MetadataCollection.js.map +1 -1
- package/lib/factories/MetadataTagFactory.js +1 -1
- package/lib/factories/MetadataTagFactory.js.map +1 -1
- package/lib/factories/StatementFactory.d.ts +1 -3
- package/lib/factories/StatementFactory.js +3 -13
- package/lib/factories/StatementFactory.js.map +1 -1
- package/lib/factories/TemplateFactory.js +4 -0
- package/lib/factories/TemplateFactory.js.map +1 -1
- package/lib/factories/TypeFactory.d.ts +2 -1
- package/lib/factories/TypeFactory.js +14 -7
- package/lib/factories/TypeFactory.js.map +1 -1
- package/lib/factories/internal/explore_metadata.js +1 -1
- package/lib/factories/internal/explore_metadata.js.map +1 -1
- package/lib/factories/internal/iterate_metadata.js +12 -3
- package/lib/factories/internal/iterate_metadata.js.map +1 -1
- package/lib/factories/internal/iterate_metadata_array.js +2 -3
- package/lib/factories/internal/iterate_metadata_array.js.map +1 -1
- package/lib/factories/internal/iterate_metadata_atomic.js +30 -55
- package/lib/factories/internal/iterate_metadata_atomic.js.map +1 -1
- package/lib/factories/internal/iterate_metadata_coalesce.js +2 -3
- package/lib/factories/internal/iterate_metadata_coalesce.js.map +1 -1
- package/lib/factories/internal/iterate_metadata_map.d.ts +5 -0
- package/lib/factories/internal/iterate_metadata_map.js +30 -0
- package/lib/factories/internal/iterate_metadata_map.js.map +1 -0
- package/lib/factories/internal/iterate_metadata_native.d.ts +3 -0
- package/lib/factories/internal/iterate_metadata_native.js +230 -0
- package/lib/factories/internal/iterate_metadata_native.js.map +1 -0
- package/lib/factories/internal/iterate_metadata_set.d.ts +5 -0
- package/lib/factories/internal/iterate_metadata_set.js +26 -0
- package/lib/factories/internal/iterate_metadata_set.js.map +1 -0
- package/lib/factories/internal/iterate_metadata_tuple.d.ts +1 -1
- package/lib/factories/internal/iterate_metadata_tuple.js +25 -3
- package/lib/factories/internal/iterate_metadata_tuple.js.map +1 -1
- package/lib/functional/$every.d.ts +2 -0
- package/lib/functional/$every.js +12 -0
- package/lib/functional/$every.js.map +1 -0
- package/lib/functional/$guard.d.ts +1 -0
- package/lib/functional/$guard.js +18 -0
- package/lib/functional/$guard.js.map +1 -0
- package/lib/functional/$number.js +4 -4
- package/lib/functional/$number.js.map +1 -1
- package/lib/functional/$report.d.ts +2 -0
- package/lib/functional/$report.js +18 -0
- package/lib/functional/$report.js.map +1 -0
- package/lib/functional/$rest.d.ts +1 -0
- package/lib/functional/$rest.js +8 -0
- package/lib/functional/$rest.js.map +1 -0
- package/lib/index.d.ts +2 -2
- package/lib/index.js +2 -2
- package/lib/index.js.map +1 -1
- package/lib/metadata/IMetadata.d.ts +5 -0
- package/lib/metadata/IMetadataApplication.d.ts +6 -0
- package/lib/metadata/IMetadataApplication.js +3 -0
- package/lib/metadata/IMetadataApplication.js.map +1 -0
- package/lib/metadata/IMetadataConstant.d.ts +1 -1
- package/lib/metadata/IMetadataEntry.d.ts +5 -0
- package/lib/metadata/IMetadataEntry.js +3 -0
- package/lib/metadata/IMetadataEntry.js.map +1 -0
- package/lib/metadata/IMetadataTag.d.ts +1 -1
- package/lib/metadata/Metadata.d.ts +10 -0
- package/lib/metadata/Metadata.js +156 -59
- package/lib/metadata/Metadata.js.map +1 -1
- package/lib/metadata/MetadataObject.d.ts +0 -1
- package/lib/metadata/MetadataObject.js +10 -0
- package/lib/metadata/MetadataObject.js.map +1 -1
- package/lib/module.d.ts +603 -72
- package/lib/module.js +185 -23
- package/lib/module.js.map +1 -1
- package/lib/programmers/ApplicationProgrammer.js +2 -2
- package/lib/programmers/ApplicationProgrammer.js.map +1 -1
- package/lib/programmers/AssertParseProgrammer.d.ts +5 -0
- package/lib/programmers/AssertParseProgrammer.js +23 -0
- package/lib/programmers/AssertParseProgrammer.js.map +1 -0
- package/lib/programmers/AssertProgrammer.d.ts +1 -1
- package/lib/programmers/AssertProgrammer.js +133 -58
- package/lib/programmers/AssertProgrammer.js.map +1 -1
- package/lib/programmers/AssertStringifyProgrammer.d.ts +5 -0
- package/lib/programmers/AssertStringifyProgrammer.js +26 -0
- package/lib/programmers/AssertStringifyProgrammer.js.map +1 -0
- package/lib/programmers/CheckerProgrammer.d.ts +17 -7
- package/lib/programmers/CheckerProgrammer.js +284 -79
- package/lib/programmers/CheckerProgrammer.js.map +1 -1
- package/lib/programmers/FeatureProgrammer.d.ts +14 -9
- package/lib/programmers/FeatureProgrammer.js +76 -116
- package/lib/programmers/FeatureProgrammer.js.map +1 -1
- package/lib/programmers/IsParseProgrammer.d.ts +5 -0
- package/lib/programmers/IsParseProgrammer.js +23 -0
- package/lib/programmers/IsParseProgrammer.js.map +1 -0
- package/lib/programmers/IsProgrammer.d.ts +5 -4
- package/lib/programmers/IsProgrammer.js +69 -44
- package/lib/programmers/IsProgrammer.js.map +1 -1
- package/lib/programmers/IsStringifyProgrammer.d.ts +5 -0
- package/lib/programmers/IsStringifyProgrammer.js +24 -0
- package/lib/programmers/IsStringifyProgrammer.js.map +1 -0
- package/lib/programmers/StringifyProgrammer.js +118 -47
- package/lib/programmers/StringifyProgrammer.js.map +1 -1
- package/lib/programmers/ValidateParseProgrammer.d.ts +5 -0
- package/lib/programmers/ValidateParseProgrammer.js +24 -0
- package/lib/programmers/ValidateParseProgrammer.js.map +1 -0
- package/lib/programmers/ValidateProgrammer.d.ts +1 -1
- package/lib/programmers/ValidateProgrammer.js +124 -68
- package/lib/programmers/ValidateProgrammer.js.map +1 -1
- package/lib/programmers/ValidateStringifyProgrammer.d.ts +5 -0
- package/lib/programmers/ValidateStringifyProgrammer.js +26 -0
- package/lib/programmers/ValidateStringifyProgrammer.js.map +1 -0
- package/lib/programmers/helpers/AtomicPredicator.d.ts +6 -0
- package/lib/programmers/helpers/AtomicPredicator.js +16 -0
- package/lib/programmers/helpers/AtomicPredicator.js.map +1 -0
- package/lib/programmers/helpers/FunctionImporeter.js +1 -1
- package/lib/programmers/helpers/FunctionImporeter.js.map +1 -1
- package/lib/programmers/helpers/OptionPredicator.d.ts +1 -1
- package/lib/programmers/helpers/OptionPredicator.js +7 -7
- package/lib/programmers/helpers/OptionPredicator.js.map +1 -1
- package/lib/programmers/helpers/StringifyJoinder.d.ts +2 -2
- package/lib/programmers/helpers/StringifyJoinder.js +5 -2
- package/lib/programmers/helpers/StringifyJoinder.js.map +1 -1
- package/lib/programmers/helpers/UnionExplorer.d.ts +33 -4
- package/lib/programmers/helpers/UnionExplorer.js +85 -47
- package/lib/programmers/helpers/UnionExplorer.js.map +1 -1
- package/lib/programmers/internal/application_array.js +1 -1
- package/lib/programmers/internal/application_array.js.map +1 -1
- package/lib/programmers/internal/application_default.js +1 -1
- package/lib/programmers/internal/application_default.js.map +1 -1
- package/lib/programmers/internal/application_native.d.ts +4 -0
- package/lib/programmers/internal/application_native.js +35 -0
- package/lib/programmers/internal/application_native.js.map +1 -0
- package/lib/programmers/internal/application_number.js +6 -2
- package/lib/programmers/internal/application_number.js.map +1 -1
- package/lib/programmers/internal/application_object.js +44 -31
- package/lib/programmers/internal/application_object.js.map +1 -1
- package/lib/programmers/internal/application_schema.js +70 -36
- package/lib/programmers/internal/application_schema.js.map +1 -1
- package/lib/programmers/internal/application_string.js +2 -2
- package/lib/programmers/internal/application_string.js.map +1 -1
- package/lib/programmers/internal/check_array.js +4 -10
- package/lib/programmers/internal/check_array.js.map +1 -1
- package/lib/programmers/internal/check_dynamic_properties.js +40 -50
- package/lib/programmers/internal/check_dynamic_properties.js.map +1 -1
- package/lib/programmers/internal/check_everything.js +1 -3
- package/lib/programmers/internal/check_everything.js.map +1 -1
- package/lib/programmers/internal/check_length.js +2 -2
- package/lib/programmers/internal/check_length.js.map +1 -1
- package/lib/programmers/internal/check_native.d.ts +1 -0
- package/lib/programmers/internal/check_native.js +9 -0
- package/lib/programmers/internal/check_native.js.map +1 -0
- package/lib/programmers/internal/check_number.js +1 -1
- package/lib/programmers/internal/check_number.js.map +1 -1
- package/lib/programmers/internal/check_object.d.ts +12 -1
- package/lib/programmers/internal/check_object.js +12 -22
- package/lib/programmers/internal/check_object.js.map +1 -1
- package/lib/programmers/internal/decode_union_object.js +9 -7
- package/lib/programmers/internal/decode_union_object.js.map +1 -1
- package/lib/programmers/internal/feature_object_entries.d.ts +9 -0
- package/lib/programmers/internal/feature_object_entries.js +38 -0
- package/lib/programmers/internal/feature_object_entries.js.map +1 -0
- package/lib/programmers/internal/stringify_dynamic_properties.js +4 -2
- package/lib/programmers/internal/stringify_dynamic_properties.js.map +1 -1
- package/lib/programmers/internal/stringify_native.d.ts +1 -0
- package/lib/programmers/internal/stringify_native.js +12 -0
- package/lib/programmers/internal/stringify_native.js.map +1 -0
- package/lib/schemas/IJsonComponents.d.ts +1 -1
- package/lib/schemas/IJsonSchema.d.ts +10 -8
- package/lib/transformers/CallExpressionTransformer.js +47 -10
- package/lib/transformers/CallExpressionTransformer.js.map +1 -1
- package/lib/transformers/FileTransformer.js +1 -1
- package/lib/transformers/features/{ApplicationTransformer.d.ts → miscellaneous/ApplicationTransformer.d.ts} +1 -1
- package/lib/transformers/features/{ApplicationTransformer.js → miscellaneous/ApplicationTransformer.js} +8 -8
- package/lib/transformers/features/miscellaneous/ApplicationTransformer.js.map +1 -0
- package/lib/transformers/features/{CreateTransformer.d.ts → miscellaneous/CreateInstanceTransformer.d.ts} +2 -2
- package/lib/transformers/features/{CreateTransformer.js → miscellaneous/CreateInstanceTransformer.js} +8 -8
- package/lib/transformers/features/miscellaneous/CreateInstanceTransformer.js.map +1 -0
- package/lib/transformers/features/miscellaneous/MetadataTransformer.d.ts +5 -0
- package/lib/transformers/features/miscellaneous/MetadataTransformer.js +43 -0
- package/lib/transformers/features/miscellaneous/MetadataTransformer.js.map +1 -0
- package/lib/transformers/features/parsers/AssertParseTransformer.d.ts +5 -0
- package/lib/transformers/features/parsers/AssertParseTransformer.js +21 -0
- package/lib/transformers/features/parsers/AssertParseTransformer.js.map +1 -0
- package/lib/transformers/features/parsers/CreateAssertParseTransformer.d.ts +5 -0
- package/lib/transformers/features/parsers/CreateAssertParseTransformer.js +17 -0
- package/lib/transformers/features/parsers/CreateAssertParseTransformer.js.map +1 -0
- package/lib/transformers/features/parsers/CreateIsParseTransformer.d.ts +5 -0
- package/lib/transformers/features/parsers/CreateIsParseTransformer.js +17 -0
- package/lib/transformers/features/parsers/CreateIsParseTransformer.js.map +1 -0
- package/lib/transformers/features/parsers/CreateValidateParseTransformer.d.ts +5 -0
- package/lib/transformers/features/parsers/CreateValidateParseTransformer.js +17 -0
- package/lib/transformers/features/parsers/CreateValidateParseTransformer.js.map +1 -0
- package/lib/transformers/features/parsers/IsParseTransformer.d.ts +5 -0
- package/lib/transformers/features/parsers/IsParseTransformer.js +21 -0
- package/lib/transformers/features/parsers/IsParseTransformer.js.map +1 -0
- package/lib/transformers/features/parsers/ValidateParseTransformer.d.ts +5 -0
- package/lib/transformers/features/parsers/ValidateParseTransformer.js +21 -0
- package/lib/transformers/features/parsers/ValidateParseTransformer.js.map +1 -0
- package/lib/transformers/features/stringifiers/AssertStringifyTransformer.d.ts +5 -0
- package/lib/transformers/features/stringifiers/AssertStringifyTransformer.js +23 -0
- package/lib/transformers/features/stringifiers/AssertStringifyTransformer.js.map +1 -0
- package/lib/transformers/features/stringifiers/CreateAssertStringifyTransformer.d.ts +5 -0
- package/lib/transformers/features/stringifiers/CreateAssertStringifyTransformer.js +17 -0
- package/lib/transformers/features/stringifiers/CreateAssertStringifyTransformer.js.map +1 -0
- package/lib/transformers/features/stringifiers/CreateIsStringifyTransformer.d.ts +5 -0
- package/lib/transformers/features/stringifiers/CreateIsStringifyTransformer.js +17 -0
- package/lib/transformers/features/stringifiers/CreateIsStringifyTransformer.js.map +1 -0
- package/lib/transformers/features/stringifiers/CreateStringifyTransformer.d.ts +5 -0
- package/lib/transformers/features/stringifiers/CreateStringifyTransformer.js +17 -0
- package/lib/transformers/features/stringifiers/CreateStringifyTransformer.js.map +1 -0
- package/lib/transformers/features/stringifiers/CreateValidateStringifyProgrammer.d.ts +5 -0
- package/lib/transformers/features/stringifiers/CreateValidateStringifyProgrammer.js +17 -0
- package/lib/transformers/features/stringifiers/CreateValidateStringifyProgrammer.js.map +1 -0
- package/lib/transformers/features/stringifiers/IsStringifyTransformer.d.ts +5 -0
- package/lib/transformers/features/stringifiers/IsStringifyTransformer.js +23 -0
- package/lib/transformers/features/stringifiers/IsStringifyTransformer.js.map +1 -0
- package/lib/transformers/features/{StringifyTransformer.d.ts → stringifiers/StringifyTransformer.d.ts} +1 -1
- package/lib/transformers/features/{StringifyTransformer.js → stringifiers/StringifyTransformer.js} +3 -3
- package/lib/transformers/features/stringifiers/StringifyTransformer.js.map +1 -0
- package/lib/transformers/features/stringifiers/ValidateStringifyTransformer.d.ts +5 -0
- package/lib/transformers/features/stringifiers/ValidateStringifyTransformer.js +23 -0
- package/lib/transformers/features/stringifiers/ValidateStringifyTransformer.js.map +1 -0
- package/lib/transformers/features/{AssertTransformer.d.ts → validators/AssertTransformer.d.ts} +1 -1
- package/lib/transformers/features/{AssertTransformer.js → validators/AssertTransformer.js} +4 -4
- package/lib/transformers/features/validators/AssertTransformer.js.map +1 -0
- package/lib/transformers/features/validators/CreateAssertTransformer.d.ts +5 -0
- package/lib/transformers/features/validators/CreateAssertTransformer.js +24 -0
- package/lib/transformers/features/validators/CreateAssertTransformer.js.map +1 -0
- package/lib/transformers/features/validators/CreateIsTransformer.d.ts +5 -0
- package/lib/transformers/features/validators/CreateIsTransformer.js +24 -0
- package/lib/transformers/features/validators/CreateIsTransformer.js.map +1 -0
- package/lib/transformers/features/validators/CreateValidateTransformer.d.ts +5 -0
- package/lib/transformers/features/validators/CreateValidateTransformer.js +24 -0
- package/lib/transformers/features/validators/CreateValidateTransformer.js.map +1 -0
- package/lib/transformers/features/{IsTransformer.d.ts → validators/IsTransformer.d.ts} +1 -1
- package/lib/transformers/features/{IsTransformer.js → validators/IsTransformer.js} +3 -3
- package/lib/transformers/features/validators/IsTransformer.js.map +1 -0
- package/lib/transformers/features/{ValidateTransformer.d.ts → validators/ValidateTransformer.d.ts} +1 -1
- package/lib/transformers/features/{ValidateTransformer.js → validators/ValidateTransformer.js} +3 -3
- package/lib/transformers/features/validators/ValidateTransformer.js.map +1 -0
- package/lib/typings/ClassProperties.d.ts +1 -1
- package/lib/typings/OmitNever.d.ts +1 -1
- package/lib/typings/SpecialFields.d.ts +1 -1
- package/lib/typings/Writable.d.ts +1 -1
- package/lib/utils/PatternUtil.js +1 -1
- package/lib/utils/PatternUtil.js.map +1 -1
- package/package.json +114 -78
- package/src/IValidation.ts +21 -0
- package/src/Primitive.ts +82 -0
- package/src/TypeGuardError.ts +36 -0
- package/src/executable/internal/TypiaSetupWizard.ts +130 -0
- package/src/executable/typia.ts +34 -0
- package/src/factories/CommentFactory.ts +10 -0
- package/src/factories/ExpressionFactory.ts +52 -0
- package/src/factories/IdentifierFactory.ts +72 -0
- package/src/factories/LiteralFactory.ts +44 -0
- package/src/factories/MetadataCollection.ts +122 -0
- package/src/factories/MetadataFactory.ts +46 -0
- package/src/factories/MetadataTagFactory.ts +347 -0
- package/src/factories/StatementFactory.ts +60 -0
- package/src/factories/TemplateFactory.ts +56 -0
- package/src/factories/TypeFactory.ts +101 -0
- package/src/factories/ValueFactory.ts +12 -0
- package/src/factories/internal/MetadataHelper.ts +12 -0
- package/src/factories/internal/emplace_metadata_object.ts +140 -0
- package/src/factories/internal/explore_metadata.ts +91 -0
- package/src/factories/internal/iterate_metadata.ts +81 -0
- package/src/factories/internal/iterate_metadata_array.ts +29 -0
- package/src/factories/internal/iterate_metadata_atomic.ts +59 -0
- package/src/factories/internal/iterate_metadata_coalesce.ts +33 -0
- package/src/factories/internal/iterate_metadata_constant.ts +58 -0
- package/src/factories/internal/iterate_metadata_map.ts +41 -0
- package/src/factories/internal/iterate_metadata_native.ts +227 -0
- package/src/factories/internal/iterate_metadata_object.ts +45 -0
- package/src/factories/internal/iterate_metadata_resolve.ts +27 -0
- package/src/factories/internal/iterate_metadata_set.ts +33 -0
- package/src/factories/internal/iterate_metadata_template.ts +38 -0
- package/src/factories/internal/iterate_metadata_tuple.ts +51 -0
- package/src/factories/internal/iterate_metadata_union.ts +59 -0
- package/src/functional/$every.ts +11 -0
- package/src/functional/$guard.ts +35 -0
- package/src/functional/$is_email.ts +5 -0
- package/src/functional/$is_ipv4.ts +5 -0
- package/src/functional/$is_ipv6.ts +5 -0
- package/src/functional/$is_url.ts +5 -0
- package/src/functional/$is_uuid.ts +5 -0
- package/src/functional/$join.ts +50 -0
- package/src/functional/$number.ts +19 -0
- package/src/functional/$report.ts +15 -0
- package/src/functional/$rest.ts +3 -0
- package/src/functional/$string.ts +37 -0
- package/src/functional/$tail.ts +6 -0
- package/src/index.ts +4 -0
- package/src/metadata/IJsDocTagInfo.ts +10 -0
- package/src/metadata/IMetadata.ts +25 -0
- package/src/metadata/IMetadataApplication.ts +7 -0
- package/src/metadata/IMetadataConstant.ts +16 -0
- package/src/metadata/IMetadataEntry.ts +6 -0
- package/src/metadata/IMetadataObject.ts +29 -0
- package/src/metadata/IMetadataProperty.ts +11 -0
- package/src/metadata/IMetadataTag.ts +122 -0
- package/src/metadata/Metadata.ts +477 -0
- package/src/metadata/MetadataConstant.ts +3 -0
- package/src/metadata/MetadataObject.ts +131 -0
- package/src/metadata/MetadataProperty.ts +64 -0
- package/src/module.ts +1535 -0
- package/src/programmers/ApplicationProgrammer.ts +55 -0
- package/src/programmers/AssertParseProgrammer.ts +45 -0
- package/src/programmers/AssertProgrammer.ts +444 -0
- package/src/programmers/AssertStringifyProgrammer.ts +45 -0
- package/src/programmers/CheckerProgrammer.ts +798 -0
- package/src/programmers/FeatureProgrammer.ts +327 -0
- package/src/programmers/IsParseProgrammer.ts +51 -0
- package/src/programmers/IsProgrammer.ts +169 -0
- package/src/programmers/IsStringifyProgrammer.ts +49 -0
- package/src/programmers/StringifyProgrammer.ts +746 -0
- package/src/programmers/ValidateParseProgrammer.ts +49 -0
- package/src/programmers/ValidateProgrammer.ts +236 -0
- package/src/programmers/ValidateStringifyProgrammer.ts +60 -0
- package/src/programmers/helpers/AtomicPredicator.ts +15 -0
- package/src/programmers/helpers/FunctionImporeter.ts +31 -0
- package/src/programmers/helpers/IExpressionEntry.ts +10 -0
- package/src/programmers/helpers/OptionPredicator.ts +18 -0
- package/src/programmers/helpers/StringifyJoinder.ts +111 -0
- package/src/programmers/helpers/StringifyPredicator.ts +18 -0
- package/src/programmers/helpers/UnionExplorer.ts +437 -0
- package/src/programmers/helpers/UnionPredicator.ts +81 -0
- package/src/programmers/internal/application_array.ts +45 -0
- package/src/programmers/internal/application_boolean.ts +17 -0
- package/src/programmers/internal/application_constant.ts +29 -0
- package/src/programmers/internal/application_default.ts +17 -0
- package/src/programmers/internal/application_default_string.ts +32 -0
- package/src/programmers/internal/application_native.ts +29 -0
- package/src/programmers/internal/application_number.ts +76 -0
- package/src/programmers/internal/application_object.ts +103 -0
- package/src/programmers/internal/application_schema.ts +221 -0
- package/src/programmers/internal/application_string.ts +49 -0
- package/src/programmers/internal/application_templates.ts +27 -0
- package/src/programmers/internal/application_tuple.ts +25 -0
- package/src/programmers/internal/check_array.ts +44 -0
- package/src/programmers/internal/check_dynamic_properties.ts +146 -0
- package/src/programmers/internal/check_everything.ts +25 -0
- package/src/programmers/internal/check_length.ts +46 -0
- package/src/programmers/internal/check_native.ts +9 -0
- package/src/programmers/internal/check_number.ts +181 -0
- package/src/programmers/internal/check_object.ts +42 -0
- package/src/programmers/internal/check_string.ts +24 -0
- package/src/programmers/internal/check_string_tags.ts +63 -0
- package/src/programmers/internal/check_template.ts +50 -0
- package/src/programmers/internal/decode_union_object.ts +73 -0
- package/src/programmers/internal/feature_object_entries.ts +49 -0
- package/src/programmers/internal/metadata_to_pattern.ts +31 -0
- package/src/programmers/internal/stringify_dynamic_properties.ts +164 -0
- package/src/programmers/internal/stringify_native.ts +8 -0
- package/src/programmers/internal/stringify_regular_properties.ts +81 -0
- package/src/programmers/internal/template_to_pattern.ts +15 -0
- package/src/schemas/IJsonApplication.ts +9 -0
- package/src/schemas/IJsonComponents.ts +24 -0
- package/src/schemas/IJsonSchema.ts +92 -0
- package/src/transform.ts +20 -0
- package/src/transformers/CallExpressionTransformer.ts +124 -0
- package/src/transformers/ExpressionWithArgumentTransformer.ts +66 -0
- package/src/transformers/FileTransformer.ts +49 -0
- package/src/transformers/IProject.ts +11 -0
- package/src/transformers/ITransformOptions.ts +4 -0
- package/src/transformers/NodeTransformer.ts +19 -0
- package/src/transformers/features/miscellaneous/ApplicationTransformer.ts +114 -0
- package/src/transformers/features/miscellaneous/CreateInstanceTransformer.ts +41 -0
- package/src/transformers/features/miscellaneous/MetadataTransformer.ts +55 -0
- package/src/transformers/features/parsers/AssertParseTransformer.ts +36 -0
- package/src/transformers/features/parsers/CreateAssertParseTransformer.ts +32 -0
- package/src/transformers/features/parsers/CreateIsParseTransformer.ts +32 -0
- package/src/transformers/features/parsers/CreateValidateParseTransformer.ts +32 -0
- package/src/transformers/features/parsers/IsParseTransformer.ts +36 -0
- package/src/transformers/features/parsers/ValidateParseTransformer.ts +36 -0
- package/src/transformers/features/stringifiers/AssertStringifyTransformer.ts +38 -0
- package/src/transformers/features/stringifiers/CreateAssertStringifyTransformer.ts +32 -0
- package/src/transformers/features/stringifiers/CreateIsStringifyTransformer.ts +32 -0
- package/src/transformers/features/stringifiers/CreateStringifyTransformer.ts +31 -0
- package/src/transformers/features/stringifiers/CreateValidateStringifyProgrammer.ts +32 -0
- package/src/transformers/features/stringifiers/IsStringifyTransformer.ts +38 -0
- package/src/transformers/features/stringifiers/StringifyTransformer.ts +36 -0
- package/src/transformers/features/stringifiers/ValidateStringifyTransformer.ts +38 -0
- package/src/transformers/features/validators/AssertTransformer.ts +43 -0
- package/src/transformers/features/validators/CreateAssertTransformer.ts +35 -0
- package/src/transformers/features/validators/CreateIsTransformer.ts +35 -0
- package/src/transformers/features/validators/CreateValidateTransformer.ts +35 -0
- package/src/transformers/features/validators/IsTransformer.ts +43 -0
- package/src/transformers/features/validators/ValidateTransformer.ts +43 -0
- package/src/typings/Atomic.ts +17 -0
- package/src/typings/ClassProperties.ts +5 -0
- package/src/typings/OmitNever.ts +3 -0
- package/src/typings/SpecialFields.ts +3 -0
- package/src/typings/Writable.ts +11 -0
- package/src/utils/ArrayUtil.ts +49 -0
- package/src/utils/Escaper.ts +50 -0
- package/src/utils/MapUtil.ts +14 -0
- package/src/utils/PatternUtil.ts +30 -0
- package/src/utils/Singleton.ts +17 -0
- package/CODE_OF_CONDUCT.md +0 -133
- package/CONTRIBUTING.md +0 -104
- package/lib/transformers/features/ApplicationTransformer.js.map +0 -1
- package/lib/transformers/features/AssertTransformer.js.map +0 -1
- package/lib/transformers/features/CreateTransformer.js.map +0 -1
- package/lib/transformers/features/IsTransformer.js.map +0 -1
- package/lib/transformers/features/StringifyTransformer.js.map +0 -1
- package/lib/transformers/features/ValidateTransformer.js.map +0 -1
|
@@ -7,29 +7,19 @@ exports.check_object = void 0;
|
|
|
7
7
|
var typescript_1 = __importDefault(require("typescript"));
|
|
8
8
|
var check_dynamic_properties_1 = require("./check_dynamic_properties");
|
|
9
9
|
var check_everything_1 = require("./check_everything");
|
|
10
|
-
var check_object = function (
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
return regular.length === 0
|
|
20
|
-
? typescript_1.default.factory.createTrue()
|
|
21
|
-
: reduce(assert)(flags);
|
|
22
|
-
flags.push((0, check_dynamic_properties_1.check_dynamic_properties)(equals)(assert)(halter)(wrapper)(regular, dynamic));
|
|
23
|
-
return reduce(assert)(flags);
|
|
24
|
-
};
|
|
25
|
-
};
|
|
26
|
-
};
|
|
27
|
-
};
|
|
28
|
-
};
|
|
10
|
+
var check_object = function (props) { return function (entries) {
|
|
11
|
+
var regular = entries.filter(function (entry) { return entry.key.isSoleLiteral(); });
|
|
12
|
+
var dynamic = entries.filter(function (entry) { return !entry.key.isSoleLiteral(); });
|
|
13
|
+
var flags = regular.map(function (entry) { return entry.expression; });
|
|
14
|
+
if (props.equals === false && dynamic.length === 0)
|
|
15
|
+
return regular.length === 0 ? props.positive : reduce(props)(flags);
|
|
16
|
+
flags.push((0, check_dynamic_properties_1.check_dynamic_properties)(props)(regular, dynamic));
|
|
17
|
+
return reduce(props)(flags);
|
|
18
|
+
}; };
|
|
29
19
|
exports.check_object = check_object;
|
|
30
|
-
var reduce = function (
|
|
31
|
-
return assert
|
|
32
|
-
? expressions.reduce(
|
|
20
|
+
var reduce = function (props) { return function (expressions) {
|
|
21
|
+
return props.assert
|
|
22
|
+
? expressions.reduce(props.reduce)
|
|
33
23
|
: (0, check_everything_1.check_everything)(typescript_1.default.factory.createArrayLiteralExpression(expressions));
|
|
34
24
|
}; };
|
|
35
25
|
//# sourceMappingURL=check_object.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check_object.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_object.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAG5B,uEAAsE;AACtE,uDAAsD;AAK/C,IAAM,YAAY,GACrB,UAAC,
|
|
1
|
+
{"version":3,"file":"check_object.js","sourceRoot":"","sources":["../../../src/programmers/internal/check_object.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAG5B,uEAAsE;AACtE,uDAAsD;AAK/C,IAAM,YAAY,GACrB,UAAC,KAA0B,IAAK,OAAA,UAAC,OAA2B;IAExD,IAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,EAAzB,CAAyB,CAAC,CAAC;IACrE,IAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,UAAC,KAAK,IAAK,OAAA,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,EAA1B,CAA0B,CAAC,CAAC;IACtE,IAAM,KAAK,GAAoB,OAAO,CAAC,GAAG,CAAC,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,UAAU,EAAhB,CAAgB,CAAC,CAAC;IAGxE,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAC9C,OAAO,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;IAGxE,KAAK,CAAC,IAAI,CAAC,IAAA,mDAAwB,EAAC,KAAK,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;IAC9D,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC,EAb+B,CAa/B,CAAC;AAdO,QAAA,YAAY,gBAcnB;AAaN,IAAM,MAAM,GAAG,UAAC,KAA0B,IAAK,OAAA,UAAC,WAA4B;IACxE,OAAA,KAAK,CAAC,MAAM;QACR,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QAClC,CAAC,CAAC,IAAA,mCAAgB,EACZ,oBAAE,CAAC,OAAO,CAAC,4BAA4B,CAAC,WAAW,CAAC,CACvD;AAJP,CAIO,EALoC,CAKpC,CAAC"}
|
|
@@ -32,13 +32,15 @@ exports.decode_union_object = void 0;
|
|
|
32
32
|
var typescript_1 = __importDefault(require("typescript"));
|
|
33
33
|
var decode_union_object = function (checker) {
|
|
34
34
|
return function (decoder) {
|
|
35
|
-
return function (
|
|
36
|
-
return function (
|
|
37
|
-
return
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
35
|
+
return function (success) {
|
|
36
|
+
return function (escaper) {
|
|
37
|
+
return function (input, targets, explore) {
|
|
38
|
+
return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createArrowFunction(undefined, undefined, [], undefined, undefined, iterate(escaper)(input, targets.map(function (obj) { return ({
|
|
39
|
+
type: "object",
|
|
40
|
+
is: function () { return success(checker(input, obj, explore)); },
|
|
41
|
+
value: function () { return decoder(input, obj, explore); },
|
|
42
|
+
}); }), "(".concat(targets.map(function (t) { return t.name; }).join(" | "), ")"))), undefined, undefined);
|
|
43
|
+
};
|
|
42
44
|
};
|
|
43
45
|
};
|
|
44
46
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"decode_union_object.js","sourceRoot":"","sources":["../../../src/programmers/internal/decode_union_object.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AASrB,IAAM,mBAAmB,GAC5B,UACI,OAIkB;IAEtB,OAAA,UACI,OAIkB;QAEtB,OAAA,UAAC,OAAiE;
|
|
1
|
+
{"version":3,"file":"decode_union_object.js","sourceRoot":"","sources":["../../../src/programmers/internal/decode_union_object.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0DAA4B;AASrB,IAAM,mBAAmB,GAC5B,UACI,OAIkB;IAEtB,OAAA,UACI,OAIkB;QAEtB,OAAA,UAAC,OAA8C;YAC/C,OAAA,UAAC,OAAiE;gBAClE,OAAA,UACI,KAAoB,EACpB,OAAyB,EACzB,OAAmC;oBAEnC,OAAA,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAC3B,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAC1B,SAAS,EACT,SAAS,EACT,EAAE,EACF,SAAS,EACT,SAAS,EACT,OAAO,CAAC,OAAO,CAAC,CACZ,KAAK,EACL,OAAO,CAAC,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,CAAC;wBAClB,IAAI,EAAE,QAAQ;wBACd,EAAE,EAAE,cAAM,OAAA,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,EAArC,CAAqC;wBAC/C,KAAK,EAAE,cAAM,OAAA,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAA5B,CAA4B;qBAC5C,CAAC,EAJmB,CAInB,CAAC,EACH,WAAI,OAAO,CAAC,GAAG,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,EAAN,CAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAG,CAChD,CACJ,EACD,SAAS,EACT,SAAS,CACZ;gBAnBD,CAmBC;YAxBL,CAwBK;QAzBL,CAyBK;IA1BL,CA0BK;AAjCL,CAiCK,CAAC;AAzCG,QAAA,mBAAmB,uBAyCtB;AAEV,IAAM,OAAO,GACT,UAAC,OAAiE;IAClE,OAAA,UAAC,KAAoB,EAAE,MAAgB,EAAE,QAAgB;QACrD,OAAA,oBAAE,CAAC,OAAO,CAAC,WAAW,wCAEX,MAAM,CAAC,GAAG,CAAC,UAAC,CAAC;YACZ,OAAA,oBAAE,CAAC,OAAO,CAAC,iBAAiB,CACxB,CAAC,CAAC,EAAE,EAAE,EACN,oBAAE,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAC9C;QAHD,CAGC,CACJ;YACD,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC;mBAE5B,IAAI,CACP;IAXD,CAWC;AAZL,CAYK,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import ts from "typescript";
|
|
2
|
+
import { MetadataObject } from "../../metadata/MetadataObject";
|
|
3
|
+
import { FeatureProgrammer } from "../FeatureProgrammer";
|
|
4
|
+
export declare const feature_object_entries: (config: Pick<FeatureProgrammer.IConfig, "decoder" | "path" | "trace">) => (obj: MetadataObject) => (input: ts.Expression) => {
|
|
5
|
+
input: ts.Identifier | ts.ElementAccessExpression | ts.PropertyAccessExpression;
|
|
6
|
+
key: import("../../metadata/Metadata").Metadata;
|
|
7
|
+
meta: import("../../metadata/Metadata").Metadata;
|
|
8
|
+
expression: ts.Expression;
|
|
9
|
+
}[];
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.feature_object_entries = void 0;
|
|
7
|
+
var typescript_1 = __importDefault(require("typescript"));
|
|
8
|
+
var IdentifierFactory_1 = require("../../factories/IdentifierFactory");
|
|
9
|
+
var Escaper_1 = require("../../utils/Escaper");
|
|
10
|
+
var feature_object_entries = function (config) {
|
|
11
|
+
return function (obj) {
|
|
12
|
+
return function (input) {
|
|
13
|
+
return obj.properties.map(function (prop) {
|
|
14
|
+
var sole = prop.key.getSoleLiteral();
|
|
15
|
+
var propInput = sole === null
|
|
16
|
+
? typescript_1.default.factory.createIdentifier("value")
|
|
17
|
+
: Escaper_1.Escaper.variable(sole)
|
|
18
|
+
? typescript_1.default.factory.createPropertyAccessExpression(input, typescript_1.default.factory.createIdentifier(sole))
|
|
19
|
+
: typescript_1.default.factory.createElementAccessExpression(input, typescript_1.default.factory.createStringLiteral(sole));
|
|
20
|
+
return {
|
|
21
|
+
input: propInput,
|
|
22
|
+
key: prop.key,
|
|
23
|
+
meta: prop.value,
|
|
24
|
+
expression: config.decoder(propInput, prop.value, {
|
|
25
|
+
tracable: config.path || config.trace,
|
|
26
|
+
source: "object",
|
|
27
|
+
from: "object",
|
|
28
|
+
postfix: sole !== null
|
|
29
|
+
? IdentifierFactory_1.IdentifierFactory.postfix(sole)
|
|
30
|
+
: "$join(key)",
|
|
31
|
+
}, prop.tags),
|
|
32
|
+
};
|
|
33
|
+
});
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
exports.feature_object_entries = feature_object_entries;
|
|
38
|
+
//# sourceMappingURL=feature_object_entries.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feature_object_entries.js","sourceRoot":"","sources":["../../../src/programmers/internal/feature_object_entries.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,uEAAsE;AAItE,+CAA8C;AAIvC,IAAM,sBAAsB,GAC/B,UAAC,MAAqE;IACtE,OAAA,UAAC,GAAmB;QACpB,OAAA,UAAC,KAAoB;YACjB,OAAA,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,UAAC,IAAI;gBACpB,IAAM,IAAI,GAAkB,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;gBACtD,IAAM,SAAS,GACX,IAAI,KAAK,IAAI;oBACT,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,OAAO,CAAC;oBACtC,CAAC,CAAC,iBAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;wBACxB,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,8BAA8B,CACrC,KAAK,EACL,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,CACpC;wBACH,CAAC,CAAC,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACpC,KAAK,EACL,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CACvC,CAAC;gBAEZ,OAAO;oBACH,KAAK,EAAE,SAAS;oBAChB,GAAG,EAAE,IAAI,CAAC,GAAG;oBACb,IAAI,EAAE,IAAI,CAAC,KAAK;oBAChB,UAAU,EAAE,MAAM,CAAC,OAAO,CACtB,SAAS,EACT,IAAI,CAAC,KAAK,EACV;wBACI,QAAQ,EAAE,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK;wBACrC,MAAM,EAAE,QAAQ;wBAChB,IAAI,EAAE,QAAQ;wBACd,OAAO,EACH,IAAI,KAAK,IAAI;4BACT,CAAC,CAAC,qCAAiB,CAAC,OAAO,CAAC,IAAI,CAAC;4BACjC,CAAC,CAAC,YAAY;qBACzB,EACD,IAAI,CAAC,IAAI,CACZ;iBACJ,CAAC;YACN,CAAC,CAAC;QAlCF,CAkCE;IAnCN,CAmCM;AApCN,CAoCM,CAAC;AAtCE,QAAA,sBAAsB,0BAsCxB"}
|
|
@@ -39,9 +39,11 @@ function stringify_dynamic_properties(dynamic, regular) {
|
|
|
39
39
|
return typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.join(filtered, "join"), undefined, [typescript_1.default.factory.createStringLiteral(",")]);
|
|
40
40
|
};
|
|
41
41
|
if (regular.length)
|
|
42
|
-
statements.push(typescript_1.default.factory.createIfStatement(IdentifierFactory_1.IdentifierFactory.join(typescript_1.default.factory.createArrayLiteralExpression(regular.map(function (key) {
|
|
42
|
+
statements.push(typescript_1.default.factory.createIfStatement(typescript_1.default.factory.createCallExpression(IdentifierFactory_1.IdentifierFactory.join(typescript_1.default.factory.createArrayLiteralExpression(regular.map(function (key) {
|
|
43
43
|
return typescript_1.default.factory.createStringLiteral(key);
|
|
44
|
-
})), "some"),
|
|
44
|
+
})), "some"), undefined, [
|
|
45
|
+
typescript_1.default.factory.createArrowFunction(undefined, undefined, [IdentifierFactory_1.IdentifierFactory.parameter("regular")], undefined, undefined, typescript_1.default.factory.createStrictEquality(typescript_1.default.factory.createIdentifier("regular"), typescript_1.default.factory.createIdentifier("key"))),
|
|
46
|
+
]), typescript_1.default.factory.createReturnStatement(typescript_1.default.factory.createStringLiteral(""))));
|
|
45
47
|
var simple = dynamic.length === 1 &&
|
|
46
48
|
dynamic[0].key.size() === 1 &&
|
|
47
49
|
dynamic[0].key.atomics[0] === "string";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stringify_dynamic_properties.js","sourceRoot":"","sources":["../../../src/programmers/internal/stringify_dynamic_properties.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"stringify_dynamic_properties.js","sourceRoot":"","sources":["../../../src/programmers/internal/stringify_dynamic_properties.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.stringify_native = void 0;
|
|
7
|
+
var typescript_1 = __importDefault(require("typescript"));
|
|
8
|
+
function stringify_native() {
|
|
9
|
+
return typescript_1.default.factory.createStringLiteral("{}");
|
|
10
|
+
}
|
|
11
|
+
exports.stringify_native = stringify_native;
|
|
12
|
+
//# sourceMappingURL=stringify_native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stringify_native.js","sourceRoot":"","sources":["../../../src/programmers/internal/stringify_native.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAK5B,SAAgB,gBAAgB;IAC5B,OAAO,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;AAChD,CAAC;AAFD,4CAEC"}
|
|
@@ -1,15 +1,13 @@
|
|
|
1
1
|
import { IJsDocTagInfo } from "../metadata/IJsDocTagInfo";
|
|
2
2
|
import { IMetadataTag } from "../metadata/IMetadataTag";
|
|
3
3
|
import { Atomic } from "../typings/Atomic";
|
|
4
|
-
export
|
|
4
|
+
export type IJsonSchema = IJsonSchema.NotUnknown | IJsonSchema.IUnknown;
|
|
5
5
|
export declare namespace IJsonSchema {
|
|
6
6
|
type NotUnknown = IEnumeration<"boolean"> | IEnumeration<"number"> | IEnumeration<"bigint"> | IEnumeration<"string"> | IBoolean | INumber | IBigInt | IString | IArray | ITuple | IOneOf | IReference | IRecursiveReference | INullOnly;
|
|
7
7
|
interface IEnumeration<Literal extends Atomic.Literal> extends IAtomic<Literal> {
|
|
8
8
|
enum: Array<Atomic.Mapper[Literal]>;
|
|
9
9
|
}
|
|
10
|
-
interface IAtomic<Literal extends Atomic.Literal> extends
|
|
11
|
-
type: Literal;
|
|
12
|
-
nullable: boolean;
|
|
10
|
+
interface IAtomic<Literal extends Atomic.Literal> extends ISignificant<Literal> {
|
|
13
11
|
default?: Atomic.Mapper[Literal];
|
|
14
12
|
}
|
|
15
13
|
interface IString extends IAtomic<"string"> {
|
|
@@ -23,6 +21,7 @@ export declare namespace IJsonSchema {
|
|
|
23
21
|
maximum?: number;
|
|
24
22
|
exclusiveMinimum?: number;
|
|
25
23
|
exclusiveMaximum?: number;
|
|
24
|
+
multipleOf?: number;
|
|
26
25
|
}
|
|
27
26
|
interface IBoolean extends IAtomic<"boolean"> {
|
|
28
27
|
}
|
|
@@ -48,15 +47,18 @@ export declare namespace IJsonSchema {
|
|
|
48
47
|
interface IOneOf extends IAttribute {
|
|
49
48
|
oneOf: IJsonSchema[];
|
|
50
49
|
}
|
|
51
|
-
interface
|
|
50
|
+
interface IUnknown {
|
|
52
51
|
}
|
|
53
|
-
interface ISignificant<Literal extends string> {
|
|
52
|
+
interface ISignificant<Literal extends string> extends IAttribute {
|
|
54
53
|
type: Literal;
|
|
55
54
|
nullable: boolean;
|
|
56
55
|
}
|
|
57
56
|
interface IAttribute {
|
|
57
|
+
deprecated?: boolean;
|
|
58
|
+
title?: string;
|
|
58
59
|
description?: string;
|
|
59
|
-
"x-
|
|
60
|
-
"x-
|
|
60
|
+
"x-typia-metaTags"?: IMetadataTag[];
|
|
61
|
+
"x-typia-jsDocTags"?: IJsDocTagInfo[];
|
|
62
|
+
"x-typia-required"?: boolean;
|
|
61
63
|
}
|
|
62
64
|
}
|
|
@@ -5,12 +5,28 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.CallExpressionTransformer = void 0;
|
|
7
7
|
var path_1 = __importDefault(require("path"));
|
|
8
|
-
var ApplicationTransformer_1 = require("./features/ApplicationTransformer");
|
|
9
|
-
var
|
|
10
|
-
var
|
|
11
|
-
var
|
|
12
|
-
var
|
|
13
|
-
var
|
|
8
|
+
var ApplicationTransformer_1 = require("./features/miscellaneous/ApplicationTransformer");
|
|
9
|
+
var MetadataTransformer_1 = require("./features/miscellaneous/MetadataTransformer");
|
|
10
|
+
var AssertParseTransformer_1 = require("./features/parsers/AssertParseTransformer");
|
|
11
|
+
var CreateAssertParseTransformer_1 = require("./features/parsers/CreateAssertParseTransformer");
|
|
12
|
+
var CreateIsParseTransformer_1 = require("./features/parsers/CreateIsParseTransformer");
|
|
13
|
+
var CreateValidateParseTransformer_1 = require("./features/parsers/CreateValidateParseTransformer");
|
|
14
|
+
var IsParseTransformer_1 = require("./features/parsers/IsParseTransformer");
|
|
15
|
+
var ValidateParseTransformer_1 = require("./features/parsers/ValidateParseTransformer");
|
|
16
|
+
var AssertStringifyTransformer_1 = require("./features/stringifiers/AssertStringifyTransformer");
|
|
17
|
+
var CreateAssertStringifyTransformer_1 = require("./features/stringifiers/CreateAssertStringifyTransformer");
|
|
18
|
+
var CreateIsStringifyTransformer_1 = require("./features/stringifiers/CreateIsStringifyTransformer");
|
|
19
|
+
var CreateStringifyTransformer_1 = require("./features/stringifiers/CreateStringifyTransformer");
|
|
20
|
+
var CreateValidateStringifyProgrammer_1 = require("./features/stringifiers/CreateValidateStringifyProgrammer");
|
|
21
|
+
var IsStringifyTransformer_1 = require("./features/stringifiers/IsStringifyTransformer");
|
|
22
|
+
var StringifyTransformer_1 = require("./features/stringifiers/StringifyTransformer");
|
|
23
|
+
var ValidateStringifyTransformer_1 = require("./features/stringifiers/ValidateStringifyTransformer");
|
|
24
|
+
var AssertTransformer_1 = require("./features/validators/AssertTransformer");
|
|
25
|
+
var CreateAssertTransformer_1 = require("./features/validators/CreateAssertTransformer");
|
|
26
|
+
var CreateIsTransformer_1 = require("./features/validators/CreateIsTransformer");
|
|
27
|
+
var CreateValidateTransformer_1 = require("./features/validators/CreateValidateTransformer");
|
|
28
|
+
var IsTransformer_1 = require("./features/validators/IsTransformer");
|
|
29
|
+
var ValidateTransformer_1 = require("./features/validators/ValidateTransformer");
|
|
14
30
|
var CallExpressionTransformer;
|
|
15
31
|
(function (CallExpressionTransformer) {
|
|
16
32
|
function transform(project, expression) {
|
|
@@ -19,7 +35,7 @@ var CallExpressionTransformer;
|
|
|
19
35
|
if (!declaration)
|
|
20
36
|
return expression;
|
|
21
37
|
var file = path_1.default.resolve(declaration.getSourceFile().fileName);
|
|
22
|
-
if (file
|
|
38
|
+
if (file.indexOf(LIB_PATH) === -1 && file !== SRC_PATH)
|
|
23
39
|
return expression;
|
|
24
40
|
var name = project.checker.getTypeAtLocation(declaration).symbol.name;
|
|
25
41
|
var functor = FUNCTORS[name];
|
|
@@ -29,17 +45,38 @@ var CallExpressionTransformer;
|
|
|
29
45
|
}
|
|
30
46
|
CallExpressionTransformer.transform = transform;
|
|
31
47
|
})(CallExpressionTransformer = exports.CallExpressionTransformer || (exports.CallExpressionTransformer = {}));
|
|
32
|
-
var LIB_PATH = path_1.default.
|
|
48
|
+
var LIB_PATH = path_1.default.join("node_modules", "typia", "lib", "module.d.ts");
|
|
33
49
|
var SRC_PATH = path_1.default.resolve(path_1.default.join(__dirname, "..", "module.ts"));
|
|
34
50
|
var FUNCTORS = {
|
|
51
|
+
assert: function () { return AssertTransformer_1.AssertTransformer.transform(false); },
|
|
35
52
|
assertType: function () { return AssertTransformer_1.AssertTransformer.transform(false); },
|
|
36
53
|
is: function () { return IsTransformer_1.IsTransformer.transform(false); },
|
|
37
54
|
validate: function () { return ValidateTransformer_1.ValidateTransformer.transform(false); },
|
|
38
55
|
assertEquals: function () { return AssertTransformer_1.AssertTransformer.transform(true); },
|
|
39
56
|
equals: function () { return IsTransformer_1.IsTransformer.transform(true); },
|
|
40
57
|
validateEquals: function () { return ValidateTransformer_1.ValidateTransformer.transform(true); },
|
|
41
|
-
|
|
42
|
-
|
|
58
|
+
isParse: function () { return IsParseTransformer_1.IsParseTransformer.transform; },
|
|
59
|
+
assertParse: function () { return AssertParseTransformer_1.AssertParseTransformer.transform; },
|
|
60
|
+
validateParse: function () { return ValidateParseTransformer_1.ValidateParseTransformer.transform; },
|
|
43
61
|
stringify: function () { return StringifyTransformer_1.StringifyTransformer.transform; },
|
|
62
|
+
assertStringify: function () { return AssertStringifyTransformer_1.AssertStringifyTransformer.transform; },
|
|
63
|
+
isStringify: function () { return IsStringifyTransformer_1.IsStringifyTransformer.transform; },
|
|
64
|
+
validateStringify: function () { return ValidateStringifyTransformer_1.ValidateStringifyTransformer.transform; },
|
|
65
|
+
application: function () { return ApplicationTransformer_1.ApplicationTransformer.transform; },
|
|
66
|
+
metadata: function () { return MetadataTransformer_1.MetadataTransformer.transform; },
|
|
67
|
+
createAssert: function () { return CreateAssertTransformer_1.CreateAssertTransformer.transform(false); },
|
|
68
|
+
createAssertType: function () { return CreateAssertTransformer_1.CreateAssertTransformer.transform(false); },
|
|
69
|
+
createIs: function () { return CreateIsTransformer_1.CreateIsTransformer.transform(false); },
|
|
70
|
+
createValidate: function () { return CreateValidateTransformer_1.CreateValidateTransformer.transform(false); },
|
|
71
|
+
createAssertEquals: function () { return CreateAssertTransformer_1.CreateAssertTransformer.transform(true); },
|
|
72
|
+
createEquals: function () { return CreateIsTransformer_1.CreateIsTransformer.transform(true); },
|
|
73
|
+
createValidateEquals: function () { return CreateValidateTransformer_1.CreateValidateTransformer.transform(true); },
|
|
74
|
+
createIsParse: function () { return CreateIsParseTransformer_1.CreateIsParseTransformer.transform; },
|
|
75
|
+
createAssertParse: function () { return CreateAssertParseTransformer_1.CreateAssertParseTransformer.transform; },
|
|
76
|
+
createValidateParse: function () { return CreateValidateParseTransformer_1.CreateValidateParseTransformer.transform; },
|
|
77
|
+
createStringify: function () { return CreateStringifyTransformer_1.CreateStringifyTransformer.transform; },
|
|
78
|
+
createAssertStringify: function () { return CreateAssertStringifyTransformer_1.CreateAssertStringifyTransformer.transform; },
|
|
79
|
+
createIsStringify: function () { return CreateIsStringifyTransformer_1.CreateIsStringifyTransformer.transform; },
|
|
80
|
+
createValidateStringify: function () { return CreateValidateStringifyProgrammer_1.CreateValidateStringifyTransformer.transform; },
|
|
44
81
|
};
|
|
45
82
|
//# sourceMappingURL=CallExpressionTransformer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CallExpressionTransformer.js","sourceRoot":"","sources":["../../src/transformers/CallExpressionTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAwB;AAIxB,4EAA2E;AAC3E,
|
|
1
|
+
{"version":3,"file":"CallExpressionTransformer.js","sourceRoot":"","sources":["../../src/transformers/CallExpressionTransformer.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,7 +26,7 @@ var FileTransformer;
|
|
|
26
26
|
throw exp;
|
|
27
27
|
var file = node.getSourceFile();
|
|
28
28
|
var _a = file.getLineAndCharacterOfPosition(node.pos), line = _a.line, character = _a.character;
|
|
29
|
-
exp.message += " - ".concat(file.fileName, "
|
|
29
|
+
exp.message += " - ".concat(file.fileName, ":").concat(line + 1, ":").concat(character + 1);
|
|
30
30
|
throw exp;
|
|
31
31
|
}
|
|
32
32
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import ts from "typescript";
|
|
2
|
-
import { IProject } from "
|
|
2
|
+
import { IProject } from "../../IProject";
|
|
3
3
|
export declare namespace ApplicationTransformer {
|
|
4
4
|
function transform({ checker }: IProject, _modulo: ts.LeftHandSideExpression, expression: ts.CallExpression): ts.Expression;
|
|
5
5
|
}
|
|
@@ -5,17 +5,17 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.ApplicationTransformer = void 0;
|
|
7
7
|
var typescript_1 = __importDefault(require("typescript"));
|
|
8
|
-
var LiteralFactory_1 = require("
|
|
9
|
-
var MetadataCollection_1 = require("
|
|
10
|
-
var MetadataFactory_1 = require("
|
|
11
|
-
var ApplicationProgrammer_1 = require("
|
|
8
|
+
var LiteralFactory_1 = require("../../../factories/LiteralFactory");
|
|
9
|
+
var MetadataCollection_1 = require("../../../factories/MetadataCollection");
|
|
10
|
+
var MetadataFactory_1 = require("../../../factories/MetadataFactory");
|
|
11
|
+
var ApplicationProgrammer_1 = require("../../../programmers/ApplicationProgrammer");
|
|
12
12
|
var ApplicationTransformer;
|
|
13
13
|
(function (ApplicationTransformer) {
|
|
14
14
|
function transform(_a, _modulo, expression) {
|
|
15
15
|
var _b;
|
|
16
16
|
var checker = _a.checker;
|
|
17
17
|
if (!((_b = expression.typeArguments) === null || _b === void 0 ? void 0 : _b.length))
|
|
18
|
-
throw new Error("Error on
|
|
18
|
+
throw new Error("Error on typia.application(): no generic argument.");
|
|
19
19
|
var top = expression.typeArguments[0];
|
|
20
20
|
if (!typescript_1.default.isTupleTypeNode(top))
|
|
21
21
|
return expression;
|
|
@@ -25,7 +25,7 @@ var ApplicationTransformer;
|
|
|
25
25
|
return checker.getTypeFromTypeNode(child);
|
|
26
26
|
});
|
|
27
27
|
if (types.some(function (t) { return t.isTypeParameter(); }))
|
|
28
|
-
throw new Error("Error on
|
|
28
|
+
throw new Error("Error on typia.application(): non-specified generic argument(s).");
|
|
29
29
|
var purpose = get_parameter(checker, "Purpose", expression.typeArguments[1], function (str) { return str === "swagger" || str === "ajv"; }, function () { return "swagger"; });
|
|
30
30
|
var prefix = get_parameter(checker, "Prefix", expression.typeArguments[2], function () { return true; }, function () {
|
|
31
31
|
return purpose === "swagger"
|
|
@@ -53,10 +53,10 @@ var ApplicationTransformer;
|
|
|
53
53
|
return defaulter();
|
|
54
54
|
var type = checker.getTypeFromTypeNode(node);
|
|
55
55
|
if (!type.isLiteral())
|
|
56
|
-
throw new Error("Error on
|
|
56
|
+
throw new Error("Error on typia.application(): generic argument \"".concat(name, "\" must be constant."));
|
|
57
57
|
var value = type.value;
|
|
58
58
|
if (typeof value !== "string" || predicator(value) === false)
|
|
59
|
-
throw new Error("Error on
|
|
59
|
+
throw new Error("Error on typia.application(): invalid value on generic argument \"".concat(name, "\"."));
|
|
60
60
|
return value;
|
|
61
61
|
}
|
|
62
62
|
})(ApplicationTransformer = exports.ApplicationTransformer || (exports.ApplicationTransformer = {}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ApplicationTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/miscellaneous/ApplicationTransformer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import ts from "typescript";
|
|
2
|
-
import { IProject } from "
|
|
3
|
-
export declare namespace
|
|
2
|
+
import { IProject } from "../../IProject";
|
|
3
|
+
export declare namespace CreateInstanceTransformer {
|
|
4
4
|
function transform(_project: IProject, _modulo: ts.LeftHandSideExpression, expression: ts.CallExpression): ts.CallExpression;
|
|
5
5
|
}
|
|
@@ -3,18 +3,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
6
|
+
exports.CreateInstanceTransformer = void 0;
|
|
7
7
|
var typescript_1 = __importDefault(require("typescript"));
|
|
8
|
-
var
|
|
9
|
-
(function (
|
|
8
|
+
var CreateInstanceTransformer;
|
|
9
|
+
(function (CreateInstanceTransformer) {
|
|
10
10
|
function transform(_project, _modulo, expression) {
|
|
11
11
|
var param = expression.arguments[0];
|
|
12
12
|
if (param === undefined)
|
|
13
|
-
throw new Error("Error on
|
|
13
|
+
throw new Error("Error on typia.createObject(): no input value.");
|
|
14
14
|
var json = to_json_string(param);
|
|
15
15
|
return typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier("JSON.parse"), undefined, [typescript_1.default.factory.createStringLiteral(json)]);
|
|
16
16
|
}
|
|
17
|
-
|
|
17
|
+
CreateInstanceTransformer.transform = transform;
|
|
18
18
|
function to_json_string(param) {
|
|
19
19
|
try {
|
|
20
20
|
var text = param.getFullText();
|
|
@@ -22,8 +22,8 @@ var CreateTransformer;
|
|
|
22
22
|
return JSON.stringify(obj);
|
|
23
23
|
}
|
|
24
24
|
catch (exp) {
|
|
25
|
-
throw new Error("Error on
|
|
25
|
+
throw new Error("Error on typia.createObject(): input value must be constant.");
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
|
-
})(
|
|
29
|
-
//# sourceMappingURL=
|
|
28
|
+
})(CreateInstanceTransformer = exports.CreateInstanceTransformer || (exports.CreateInstanceTransformer = {}));
|
|
29
|
+
//# sourceMappingURL=CreateInstanceTransformer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CreateInstanceTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/miscellaneous/CreateInstanceTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAI5B,IAAiB,yBAAyB,CA+BzC;AA/BD,WAAiB,yBAAyB;IACtC,SAAgB,SAAS,CACrB,QAAkB,EAClB,OAAkC,EAClC,UAA6B;QAG7B,IAAM,KAAK,GAA8B,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACjE,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,KAAK,kDAA8B,CAAC;QAGvE,IAAM,IAAI,GAAW,cAAc,CAAC,KAAK,CAAC,CAAC;QAG3C,OAAO,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAClC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,YAAY,CAAC,EACzC,SAAS,EACT,CAAC,oBAAE,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CACzC,CAAC;IACN,CAAC;IAlBe,mCAAS,YAkBxB,CAAA;IAED,SAAS,cAAc,CAAC,KAAoB;QACxC,IAAI;YACA,IAAM,IAAI,GAAW,KAAK,CAAC,WAAW,EAAE,CAAC;YACzC,IAAM,GAAG,GAAQ,IAAI,QAAQ,CAAC,iBAAU,IAAI,MAAG,CAAC,EAAE,CAAC;YAEnD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;SAC9B;QAAC,OAAO,GAAG,EAAE;YACV,MAAM,IAAI,KAAK,gEAAiC,CAAC;SACpD;IACL,CAAC;AACL,CAAC,EA/BgB,yBAAyB,GAAzB,iCAAyB,KAAzB,iCAAyB,QA+BzC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.MetadataTransformer = void 0;
|
|
7
|
+
var typescript_1 = __importDefault(require("typescript"));
|
|
8
|
+
var LiteralFactory_1 = require("../../../factories/LiteralFactory");
|
|
9
|
+
var MetadataCollection_1 = require("../../../factories/MetadataCollection");
|
|
10
|
+
var MetadataFactory_1 = require("../../../factories/MetadataFactory");
|
|
11
|
+
var MetadataTransformer;
|
|
12
|
+
(function (MetadataTransformer) {
|
|
13
|
+
function transform(_a, _modulo, expression) {
|
|
14
|
+
var _b;
|
|
15
|
+
var checker = _a.checker;
|
|
16
|
+
if (!((_b = expression.typeArguments) === null || _b === void 0 ? void 0 : _b.length))
|
|
17
|
+
throw new Error("Error on typia.metadata(): no generic argument.");
|
|
18
|
+
var top = expression.typeArguments[0];
|
|
19
|
+
if (!typescript_1.default.isTupleTypeNode(top))
|
|
20
|
+
return expression;
|
|
21
|
+
else if (top.elements.some(function (child) { return !typescript_1.default.isTypeNode(child); }))
|
|
22
|
+
return expression;
|
|
23
|
+
var types = top.elements.map(function (child) {
|
|
24
|
+
return checker.getTypeFromTypeNode(child);
|
|
25
|
+
});
|
|
26
|
+
if (types.some(function (t) { return t.isTypeParameter(); }))
|
|
27
|
+
throw new Error("Error on typia.metadata(): non-specified generic argument(s).");
|
|
28
|
+
var collection = new MetadataCollection_1.MetadataCollection();
|
|
29
|
+
var metadatas = types.map(function (type) {
|
|
30
|
+
return MetadataFactory_1.MetadataFactory.generate(checker, collection, type, {
|
|
31
|
+
resolve: false,
|
|
32
|
+
constant: true,
|
|
33
|
+
});
|
|
34
|
+
});
|
|
35
|
+
var app = {
|
|
36
|
+
metadatas: metadatas.map(function (metadata) { return metadata.toJSON(); }),
|
|
37
|
+
collection: collection.objects().map(function (obj) { return obj.toJSON(); }),
|
|
38
|
+
};
|
|
39
|
+
return LiteralFactory_1.LiteralFactory.generate(app);
|
|
40
|
+
}
|
|
41
|
+
MetadataTransformer.transform = transform;
|
|
42
|
+
})(MetadataTransformer = exports.MetadataTransformer || (exports.MetadataTransformer = {}));
|
|
43
|
+
//# sourceMappingURL=MetadataTransformer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MetadataTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/miscellaneous/MetadataTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,oEAAmE;AACnE,4EAA2E;AAC3E,sEAAqE;AAOrE,IAAiB,mBAAmB,CAsCnC;AAtCD,WAAiB,mBAAmB;IAChC,SAAgB,SAAS,CACrB,EAAqB,EACrB,OAAkC,EAClC,UAA6B;;YAF3B,OAAO,aAAA;QAIT,IAAI,CAAC,CAAA,MAAA,UAAU,CAAC,aAAa,0CAAE,MAAM,CAAA;YACjC,MAAM,IAAI,KAAK,mDAAmC,CAAC;QAGvD,IAAM,GAAG,GAAY,UAAU,CAAC,aAAa,CAAC,CAAC,CAAE,CAAC;QAClD,IAAI,CAAC,oBAAE,CAAC,eAAe,CAAC,GAAG,CAAC;YAAE,OAAO,UAAU,CAAC;aAC3C,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAC,KAAK,IAAK,OAAA,CAAC,oBAAE,CAAC,UAAU,CAAC,KAAK,CAAC,EAArB,CAAqB,CAAC;YACxD,OAAO,UAAU,CAAC;QAGtB,IAAM,KAAK,GAAc,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,KAAK;YAC5C,OAAA,OAAO,CAAC,mBAAmB,CAAC,KAAoB,CAAC;QAAjD,CAAiD,CACpD,CAAC;QACF,IAAI,KAAK,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,eAAe,EAAE,EAAnB,CAAmB,CAAC;YACtC,MAAM,IAAI,KAAK,iEAAgC,CAAC;QAGpD,IAAM,UAAU,GAAuB,IAAI,uCAAkB,EAAE,CAAC;QAChE,IAAM,SAAS,GAAoB,KAAK,CAAC,GAAG,CAAC,UAAC,IAAI;YAC9C,OAAA,iCAAe,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE;gBAChD,OAAO,EAAE,KAAK;gBACd,QAAQ,EAAE,IAAI;aACjB,CAAC;QAHF,CAGE,CACL,CAAC;QAGF,IAAM,GAAG,GAAyB;YAC9B,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,UAAC,QAAQ,IAAK,OAAA,QAAQ,CAAC,MAAM,EAAE,EAAjB,CAAiB,CAAC;YACzD,UAAU,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,MAAM,EAAE,EAAZ,CAAY,CAAC;SAC9D,CAAC;QACF,OAAO,+BAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACxC,CAAC;IApCe,6BAAS,YAoCxB,CAAA;AACL,CAAC,EAtCgB,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAsCnC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.AssertParseTransformer = void 0;
|
|
7
|
+
var typescript_1 = __importDefault(require("typescript"));
|
|
8
|
+
var AssertParseProgrammer_1 = require("../../../programmers/AssertParseProgrammer");
|
|
9
|
+
var AssertParseTransformer;
|
|
10
|
+
(function (AssertParseTransformer) {
|
|
11
|
+
function transform(project, modulo, expression) {
|
|
12
|
+
if (!expression.typeArguments || !expression.typeArguments[0])
|
|
13
|
+
throw new Error("Error on typia.assertParse(): generic argument is not specified");
|
|
14
|
+
var type = project.checker.getTypeFromTypeNode(expression.typeArguments[0]);
|
|
15
|
+
if (type.isTypeParameter())
|
|
16
|
+
throw new Error("Error on typia.assertParse(): non-specified generic argument.");
|
|
17
|
+
return typescript_1.default.factory.createCallExpression(AssertParseProgrammer_1.AssertParseProgrammer.generate(project, modulo)(type), undefined, [expression.arguments[0]]);
|
|
18
|
+
}
|
|
19
|
+
AssertParseTransformer.transform = transform;
|
|
20
|
+
})(AssertParseTransformer = exports.AssertParseTransformer || (exports.AssertParseTransformer = {}));
|
|
21
|
+
//# sourceMappingURL=AssertParseTransformer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AssertParseTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/parsers/AssertParseTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,oFAAmF;AAInF,IAAiB,sBAAsB,CAwBtC;AAxBD,WAAiB,sBAAsB;IACnC,SAAgB,SAAS,CACrB,OAAiB,EACjB,MAAiC,EACjC,UAA6B;QAG7B,IAAI,CAAC,UAAU,CAAC,aAAa,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC;YACzD,MAAM,IAAI,KAAK,mEAA6B,CAAC;QAGjD,IAAM,IAAI,GAAY,OAAO,CAAC,OAAO,CAAC,mBAAmB,CACrD,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAC9B,CAAC;QACF,IAAI,IAAI,CAAC,eAAe,EAAE;YACtB,MAAM,IAAI,KAAK,iEAAgC,CAAC;QAGpD,OAAO,oBAAE,CAAC,OAAO,CAAC,oBAAoB,CAClC,6CAAqB,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,EACrD,SAAS,EACT,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC,CAC7B,CAAC;IACN,CAAC;IAtBe,gCAAS,YAsBxB,CAAA;AACL,CAAC,EAxBgB,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAwBtC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CreateAssertParseTransformer = void 0;
|
|
4
|
+
var AssertParseProgrammer_1 = require("../../../programmers/AssertParseProgrammer");
|
|
5
|
+
var CreateAssertParseTransformer;
|
|
6
|
+
(function (CreateAssertParseTransformer) {
|
|
7
|
+
function transform(project, modulo, expression) {
|
|
8
|
+
if (!expression.typeArguments || !expression.typeArguments[0])
|
|
9
|
+
throw new Error("Error on typia.assertParse(): generic argument is not specified.");
|
|
10
|
+
var type = project.checker.getTypeFromTypeNode(expression.typeArguments[0]);
|
|
11
|
+
if (type.isTypeParameter())
|
|
12
|
+
throw new Error("Error on typia.assertParse(): non-specified generic argument.");
|
|
13
|
+
return AssertParseProgrammer_1.AssertParseProgrammer.generate(project, modulo)(type);
|
|
14
|
+
}
|
|
15
|
+
CreateAssertParseTransformer.transform = transform;
|
|
16
|
+
})(CreateAssertParseTransformer = exports.CreateAssertParseTransformer || (exports.CreateAssertParseTransformer = {}));
|
|
17
|
+
//# sourceMappingURL=CreateAssertParseTransformer.js.map
|