typia 4.0.0-dev.20230517 → 4.0.0-dev.20230519
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/lib/TypeGuardError.js +6 -2
- package/lib/TypeGuardError.js.map +1 -1
- package/lib/executable/TypiaGenerateWizard.js +24 -23
- package/lib/executable/TypiaGenerateWizard.js.map +1 -1
- package/lib/executable/TypiaSetupWizard.js +27 -20
- package/lib/executable/TypiaSetupWizard.js.map +1 -1
- package/lib/executable/setup/ArgumentParser.js +5 -5
- package/lib/executable/setup/ArgumentParser.js.map +1 -1
- package/lib/executable/setup/PackageManager.js +8 -8
- package/lib/executable/setup/PackageManager.js.map +1 -1
- package/lib/executable/setup/PluginConfigurator.js +5 -4
- package/lib/executable/setup/PluginConfigurator.js.map +1 -1
- package/lib/executable/typia.js +17 -17
- package/lib/executable/typia.js.map +1 -1
- package/lib/factories/CommentFactory.js +3 -0
- package/lib/factories/CommentFactory.js.map +1 -1
- package/lib/factories/ExpressionFactory.d.ts +6 -6
- package/lib/factories/ExpressionFactory.js +34 -28
- package/lib/factories/ExpressionFactory.js.map +1 -1
- package/lib/factories/IdentifierFactory.d.ts +4 -8
- package/lib/factories/IdentifierFactory.js +23 -26
- package/lib/factories/IdentifierFactory.js.map +1 -1
- package/lib/factories/LiteralFactory.d.ts +2 -2
- package/lib/factories/LiteralFactory.js +42 -36
- package/lib/factories/LiteralFactory.js.map +1 -1
- package/lib/factories/MetadataCollection.d.ts +3 -2
- package/lib/factories/MetadataCollection.js +10 -7
- package/lib/factories/MetadataCollection.js.map +1 -1
- package/lib/factories/MetadataFactory.d.ts +3 -6
- package/lib/factories/MetadataFactory.js +5 -3
- package/lib/factories/MetadataFactory.js.map +1 -1
- package/lib/factories/MetadataTagFactory.js +19 -2
- package/lib/factories/MetadataTagFactory.js.map +1 -1
- package/lib/factories/StatementFactory.d.ts +2 -3
- package/lib/factories/StatementFactory.js +5 -13
- package/lib/factories/StatementFactory.js.map +1 -1
- package/lib/factories/TemplateFactory.d.ts +2 -2
- package/lib/factories/TemplateFactory.js +37 -35
- package/lib/factories/TemplateFactory.js.map +1 -1
- package/lib/factories/TypeFactory.d.ts +7 -6
- package/lib/factories/TypeFactory.js +65 -51
- package/lib/factories/TypeFactory.js.map +1 -1
- package/lib/factories/ValueFactory.d.ts +6 -6
- package/lib/factories/ValueFactory.js +14 -14
- package/lib/factories/ValueFactory.js.map +1 -1
- package/lib/factories/internal/metadata/emplace_metadata_object.d.ts +3 -2
- package/lib/factories/internal/metadata/emplace_metadata_object.js +40 -27
- package/lib/factories/internal/metadata/emplace_metadata_object.js.map +1 -1
- package/lib/factories/internal/metadata/explore_metadata.d.ts +3 -2
- package/lib/factories/internal/metadata/explore_metadata.js +69 -60
- package/lib/factories/internal/metadata/explore_metadata.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata.d.ts +3 -2
- package/lib/factories/internal/metadata/iterate_metadata.js +23 -17
- package/lib/factories/internal/metadata/iterate_metadata.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_array.d.ts +3 -2
- package/lib/factories/internal/metadata/iterate_metadata_array.js +11 -13
- package/lib/factories/internal/metadata/iterate_metadata_array.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_atomic.d.ts +2 -2
- package/lib/factories/internal/metadata/iterate_metadata_atomic.js +25 -23
- package/lib/factories/internal/metadata/iterate_metadata_atomic.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_coalesce.d.ts +2 -2
- package/lib/factories/internal/metadata/iterate_metadata_coalesce.js +26 -26
- package/lib/factories/internal/metadata/iterate_metadata_coalesce.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_constant.d.ts +3 -2
- package/lib/factories/internal/metadata/iterate_metadata_constant.js +28 -29
- package/lib/factories/internal/metadata/iterate_metadata_constant.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_map.d.ts +3 -2
- package/lib/factories/internal/metadata/iterate_metadata_map.js +18 -16
- package/lib/factories/internal/metadata/iterate_metadata_map.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_native.d.ts +3 -2
- package/lib/factories/internal/metadata/iterate_metadata_native.js +39 -37
- package/lib/factories/internal/metadata/iterate_metadata_native.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_object.d.ts +3 -2
- package/lib/factories/internal/metadata/iterate_metadata_object.js +24 -23
- package/lib/factories/internal/metadata/iterate_metadata_object.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_resolve.d.ts +3 -2
- package/lib/factories/internal/metadata/iterate_metadata_resolve.js +15 -10
- package/lib/factories/internal/metadata/iterate_metadata_resolve.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_set.d.ts +3 -2
- package/lib/factories/internal/metadata/iterate_metadata_set.js +14 -12
- package/lib/factories/internal/metadata/iterate_metadata_set.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_template.d.ts +3 -2
- package/lib/factories/internal/metadata/iterate_metadata_template.js +21 -20
- package/lib/factories/internal/metadata/iterate_metadata_template.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_tuple.d.ts +3 -2
- package/lib/factories/internal/metadata/iterate_metadata_tuple.js +26 -25
- package/lib/factories/internal/metadata/iterate_metadata_tuple.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_union.d.ts +3 -2
- package/lib/factories/internal/metadata/iterate_metadata_union.js +54 -54
- package/lib/factories/internal/metadata/iterate_metadata_union.js.map +1 -1
- package/lib/functional/$dictionary.js +3 -0
- package/lib/functional/$dictionary.js.map +1 -1
- package/lib/functional/$guard.js +20 -0
- package/lib/functional/$guard.js.map +1 -1
- package/lib/functional/$string.js +5 -0
- package/lib/functional/$string.js.map +1 -1
- package/lib/functional/$tail.js +3 -0
- package/lib/functional/$tail.js.map +1 -1
- package/lib/functional/Namespace.js +5 -0
- package/lib/functional/Namespace.js.map +1 -1
- package/lib/metadata/Metadata.js +71 -1
- package/lib/metadata/Metadata.js.map +1 -1
- package/lib/metadata/MetadataObject.js +22 -1
- package/lib/metadata/MetadataObject.js.map +1 -1
- package/lib/metadata/MetadataProperty.js +13 -1
- package/lib/metadata/MetadataProperty.js.map +1 -1
- package/lib/module.js +186 -0
- package/lib/module.js.map +1 -1
- package/lib/programmers/ApplicationProgrammer.d.ts +0 -4
- package/lib/programmers/ApplicationProgrammer.js +3 -1
- package/lib/programmers/ApplicationProgrammer.js.map +1 -1
- package/lib/programmers/AssertCloneProgrammer.d.ts +2 -6
- package/lib/programmers/AssertCloneProgrammer.js +9 -18
- package/lib/programmers/AssertCloneProgrammer.js.map +1 -1
- package/lib/programmers/AssertParseProgrammer.d.ts +2 -6
- package/lib/programmers/AssertParseProgrammer.js +7 -16
- package/lib/programmers/AssertParseProgrammer.js.map +1 -1
- package/lib/programmers/AssertProgrammer.d.ts +2 -6
- package/lib/programmers/AssertProgrammer.js +102 -106
- package/lib/programmers/AssertProgrammer.js.map +1 -1
- package/lib/programmers/AssertPruneProgrammer.d.ts +2 -2
- package/lib/programmers/AssertPruneProgrammer.js +12 -13
- package/lib/programmers/AssertPruneProgrammer.js.map +1 -1
- package/lib/programmers/AssertStringifyProgrammer.d.ts +2 -6
- package/lib/programmers/AssertStringifyProgrammer.js +8 -17
- package/lib/programmers/AssertStringifyProgrammer.js.map +1 -1
- package/lib/programmers/CheckerProgrammer.d.ts +5 -5
- package/lib/programmers/CheckerProgrammer.js +202 -186
- package/lib/programmers/CheckerProgrammer.js.map +1 -1
- package/lib/programmers/CloneProgrammer.d.ts +2 -6
- package/lib/programmers/CloneProgrammer.js +233 -209
- package/lib/programmers/CloneProgrammer.js.map +1 -1
- package/lib/programmers/FeatureProgrammer.d.ts +7 -7
- package/lib/programmers/FeatureProgrammer.js +114 -96
- package/lib/programmers/FeatureProgrammer.js.map +1 -1
- package/lib/programmers/IsCloneProgrammer.d.ts +2 -6
- package/lib/programmers/IsCloneProgrammer.js +12 -21
- package/lib/programmers/IsCloneProgrammer.js.map +1 -1
- package/lib/programmers/IsParseProgrammer.d.ts +2 -6
- package/lib/programmers/IsParseProgrammer.js +7 -16
- package/lib/programmers/IsParseProgrammer.js.map +1 -1
- package/lib/programmers/IsProgrammer.d.ts +9 -9
- package/lib/programmers/IsProgrammer.js +98 -87
- package/lib/programmers/IsProgrammer.js.map +1 -1
- package/lib/programmers/IsPruneProgrammer.d.ts +2 -2
- package/lib/programmers/IsPruneProgrammer.js +12 -13
- package/lib/programmers/IsPruneProgrammer.js.map +1 -1
- package/lib/programmers/IsStringifyProgrammer.d.ts +2 -6
- package/lib/programmers/IsStringifyProgrammer.js +10 -19
- package/lib/programmers/IsStringifyProgrammer.js.map +1 -1
- package/lib/programmers/LiteralsProgrammer.d.ts +2 -2
- package/lib/programmers/LiteralsProgrammer.js +12 -13
- package/lib/programmers/LiteralsProgrammer.js.map +1 -1
- package/lib/programmers/PruneProgrammer.d.ts +2 -2
- package/lib/programmers/PruneProgrammer.js +99 -80
- package/lib/programmers/PruneProgrammer.js.map +1 -1
- package/lib/programmers/RandomProgrammer.d.ts +2 -6
- package/lib/programmers/RandomProgrammer.js +271 -253
- package/lib/programmers/RandomProgrammer.js.map +1 -1
- package/lib/programmers/StringifyProgrammer.d.ts +2 -6
- package/lib/programmers/StringifyProgrammer.js +397 -355
- package/lib/programmers/StringifyProgrammer.js.map +1 -1
- package/lib/programmers/TypiaProgrammer.js +45 -41
- package/lib/programmers/TypiaProgrammer.js.map +1 -1
- package/lib/programmers/ValidateCloneProgrammer.d.ts +2 -2
- package/lib/programmers/ValidateCloneProgrammer.js +12 -13
- package/lib/programmers/ValidateCloneProgrammer.js.map +1 -1
- package/lib/programmers/ValidateParseProgrammer.d.ts +2 -2
- package/lib/programmers/ValidateParseProgrammer.js +11 -12
- package/lib/programmers/ValidateParseProgrammer.js.map +1 -1
- package/lib/programmers/ValidateProgrammer.d.ts +2 -2
- package/lib/programmers/ValidateProgrammer.js +97 -92
- package/lib/programmers/ValidateProgrammer.js.map +1 -1
- package/lib/programmers/ValidatePruneProgrammer.d.ts +2 -2
- package/lib/programmers/ValidatePruneProgrammer.js +12 -13
- package/lib/programmers/ValidatePruneProgrammer.js.map +1 -1
- package/lib/programmers/ValidateStringifyProgrammer.d.ts +2 -2
- package/lib/programmers/ValidateStringifyProgrammer.js +12 -13
- package/lib/programmers/ValidateStringifyProgrammer.js.map +1 -1
- package/lib/programmers/helpers/CloneJoiner.d.ts +4 -4
- package/lib/programmers/helpers/CloneJoiner.js +43 -43
- package/lib/programmers/helpers/CloneJoiner.js.map +1 -1
- package/lib/programmers/helpers/FunctionImporeter.d.ts +3 -1
- package/lib/programmers/helpers/FunctionImporeter.js +6 -8
- package/lib/programmers/helpers/FunctionImporeter.js.map +1 -1
- package/lib/programmers/helpers/ICheckEntry.d.ts +1 -1
- package/lib/programmers/helpers/IExpressionEntry.d.ts +1 -1
- package/lib/programmers/helpers/PruneJoiner.d.ts +4 -4
- package/lib/programmers/helpers/PruneJoiner.js +54 -47
- package/lib/programmers/helpers/PruneJoiner.js.map +1 -1
- package/lib/programmers/helpers/RandomJoiner.d.ts +4 -4
- package/lib/programmers/helpers/RandomJoiner.js +65 -59
- package/lib/programmers/helpers/RandomJoiner.js.map +1 -1
- package/lib/programmers/helpers/RandomRanger.d.ts +3 -3
- package/lib/programmers/helpers/RandomRanger.js +91 -81
- package/lib/programmers/helpers/RandomRanger.js.map +1 -1
- package/lib/programmers/helpers/StringifyJoinder.d.ts +4 -4
- package/lib/programmers/helpers/StringifyJoinder.js +62 -54
- package/lib/programmers/helpers/StringifyJoinder.js.map +1 -1
- package/lib/programmers/helpers/UnionExplorer.d.ts +7 -7
- package/lib/programmers/helpers/UnionExplorer.js +103 -64
- package/lib/programmers/helpers/UnionExplorer.js.map +1 -1
- package/lib/programmers/helpers/UnionPredicator.js +5 -0
- package/lib/programmers/helpers/UnionPredicator.js.map +1 -1
- package/lib/programmers/internal/application_array.js +5 -0
- package/lib/programmers/internal/application_array.js.map +1 -1
- package/lib/programmers/internal/application_boolean.js +3 -0
- package/lib/programmers/internal/application_boolean.js.map +1 -1
- package/lib/programmers/internal/application_constant.js +3 -0
- package/lib/programmers/internal/application_constant.js.map +1 -1
- package/lib/programmers/internal/application_default.js +3 -0
- package/lib/programmers/internal/application_default.js.map +1 -1
- package/lib/programmers/internal/application_default_string.js +5 -0
- package/lib/programmers/internal/application_default_string.js.map +1 -1
- package/lib/programmers/internal/application_native.js +3 -0
- package/lib/programmers/internal/application_native.js.map +1 -1
- package/lib/programmers/internal/application_number.js +9 -0
- package/lib/programmers/internal/application_number.js.map +1 -1
- package/lib/programmers/internal/application_object.js +9 -0
- package/lib/programmers/internal/application_object.js.map +1 -1
- package/lib/programmers/internal/application_schema.js +23 -0
- package/lib/programmers/internal/application_schema.js.map +1 -1
- package/lib/programmers/internal/application_string.js +9 -0
- package/lib/programmers/internal/application_string.js.map +1 -1
- package/lib/programmers/internal/application_templates.js +6 -0
- package/lib/programmers/internal/application_templates.js.map +1 -1
- package/lib/programmers/internal/application_tuple.js +3 -0
- package/lib/programmers/internal/application_tuple.js.map +1 -1
- package/lib/programmers/internal/check_array.js +12 -7
- package/lib/programmers/internal/check_array.js.map +1 -1
- package/lib/programmers/internal/check_array_length.js +8 -9
- package/lib/programmers/internal/check_array_length.js.map +1 -1
- package/lib/programmers/internal/check_bigint.js +71 -70
- package/lib/programmers/internal/check_bigint.js.map +1 -1
- package/lib/programmers/internal/check_custom.js +20 -19
- package/lib/programmers/internal/check_custom.js.map +1 -1
- package/lib/programmers/internal/check_dynamic_properties.js +82 -69
- package/lib/programmers/internal/check_dynamic_properties.js.map +1 -1
- package/lib/programmers/internal/check_everything.js +9 -10
- package/lib/programmers/internal/check_everything.js.map +1 -1
- package/lib/programmers/internal/check_native.js +7 -8
- package/lib/programmers/internal/check_native.js.map +1 -1
- package/lib/programmers/internal/check_number.js +27 -22
- package/lib/programmers/internal/check_number.js.map +1 -1
- package/lib/programmers/internal/check_object.js +32 -19
- package/lib/programmers/internal/check_object.js.map +1 -1
- package/lib/programmers/internal/check_string.js +12 -11
- package/lib/programmers/internal/check_string.js.map +1 -1
- package/lib/programmers/internal/check_string_tags.js +51 -50
- package/lib/programmers/internal/check_string_tags.js.map +1 -1
- package/lib/programmers/internal/check_template.js +27 -23
- package/lib/programmers/internal/check_template.js.map +1 -1
- package/lib/programmers/internal/check_union_array_like.js +61 -45
- package/lib/programmers/internal/check_union_array_like.js.map +1 -1
- package/lib/programmers/internal/check_union_tuple.js +4 -0
- package/lib/programmers/internal/check_union_tuple.js.map +1 -1
- package/lib/programmers/internal/decode_union_object.js +24 -21
- package/lib/programmers/internal/decode_union_object.js.map +1 -1
- package/lib/programmers/internal/feature_object_entries.js +33 -32
- package/lib/programmers/internal/feature_object_entries.js.map +1 -1
- package/lib/programmers/internal/get_comment_tags.js +3 -0
- package/lib/programmers/internal/get_comment_tags.js.map +1 -1
- package/lib/programmers/internal/metadata_to_pattern.js +3 -0
- package/lib/programmers/internal/metadata_to_pattern.js.map +1 -1
- package/lib/programmers/internal/prune_object_properties.js +15 -14
- package/lib/programmers/internal/prune_object_properties.js.map +1 -1
- package/lib/programmers/internal/random_custom.js +10 -9
- package/lib/programmers/internal/random_custom.js.map +1 -1
- package/lib/programmers/internal/stringify_dynamic_properties.js +65 -54
- package/lib/programmers/internal/stringify_dynamic_properties.js.map +1 -1
- package/lib/programmers/internal/stringify_native.js +5 -6
- package/lib/programmers/internal/stringify_native.js.map +1 -1
- package/lib/programmers/internal/stringify_regular_properties.js +46 -41
- package/lib/programmers/internal/stringify_regular_properties.js.map +1 -1
- package/lib/programmers/internal/template_to_pattern.js +3 -0
- package/lib/programmers/internal/template_to_pattern.js.map +1 -1
- package/lib/schemas/IJsonSchema.d.ts +1 -1
- package/lib/transform.d.ts +1 -1
- package/lib/transform.js +1 -0
- package/lib/transform.js.map +1 -1
- package/lib/transformers/CallExpressionTransformer.d.ts +1 -1
- package/lib/transformers/CallExpressionTransformer.js +29 -2
- package/lib/transformers/CallExpressionTransformer.js.map +1 -1
- package/lib/transformers/FileTransformer.d.ts +1 -1
- package/lib/transformers/FileTransformer.js +4 -8
- package/lib/transformers/FileTransformer.js.map +1 -1
- package/lib/transformers/IProject.d.ts +8 -1
- package/lib/transformers/ImportTransformer.d.ts +2 -2
- package/lib/transformers/ImportTransformer.js +45 -34
- package/lib/transformers/ImportTransformer.js.map +1 -1
- package/lib/transformers/NodeTransformer.d.ts +1 -1
- package/lib/transformers/NodeTransformer.js +1 -5
- package/lib/transformers/NodeTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/ApplicationTransformer.d.ts +2 -2
- package/lib/transformers/features/miscellaneous/ApplicationTransformer.js +27 -18
- package/lib/transformers/features/miscellaneous/ApplicationTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/AssertCloneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/AssertPruneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/CloneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/CreateAssertCloneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/CreateAssertPruneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/CreateCloneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/CreateIsCloneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/CreateIsPruneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/CreatePruneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/CreateRandomTransformer.d.ts +2 -2
- package/lib/transformers/features/miscellaneous/CreateRandomTransformer.js +7 -4
- package/lib/transformers/features/miscellaneous/CreateRandomTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/CreateValidateCloneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/CreateValidatePruneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/IsCloneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/IsPruneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/LiteralsTransformer.d.ts +2 -2
- package/lib/transformers/features/miscellaneous/LiteralsTransformer.js +7 -4
- package/lib/transformers/features/miscellaneous/LiteralsTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/MetadataTransformer.d.ts +2 -2
- package/lib/transformers/features/miscellaneous/MetadataTransformer.js +13 -14
- package/lib/transformers/features/miscellaneous/MetadataTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/PruneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/RandomTransformer.d.ts +2 -2
- package/lib/transformers/features/miscellaneous/RandomTransformer.js +7 -8
- package/lib/transformers/features/miscellaneous/RandomTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/ValidateCloneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/ValidatePruneTransformer.d.ts +1 -1
- package/lib/transformers/features/parsers/AssertParseTransformer.d.ts +1 -1
- package/lib/transformers/features/parsers/CreateAssertParseTransformer.d.ts +1 -1
- package/lib/transformers/features/parsers/CreateIsParseTransformer.d.ts +1 -1
- package/lib/transformers/features/parsers/CreateValidateParseTransformer.d.ts +1 -1
- package/lib/transformers/features/parsers/IsParseTransformer.d.ts +1 -1
- package/lib/transformers/features/parsers/ValidateParseTransformer.d.ts +1 -1
- package/lib/transformers/features/stringifiers/AssertStringifyTransformer.d.ts +1 -1
- package/lib/transformers/features/stringifiers/CreateAssertStringifyTransformer.d.ts +1 -1
- package/lib/transformers/features/stringifiers/CreateIsStringifyTransformer.d.ts +1 -1
- package/lib/transformers/features/stringifiers/CreateStringifyTransformer.d.ts +1 -1
- package/lib/transformers/features/stringifiers/CreateValidateStringifyProgrammer.d.ts +1 -1
- package/lib/transformers/features/stringifiers/IsStringifyTransformer.d.ts +1 -1
- package/lib/transformers/features/stringifiers/StringifyTransformer.d.ts +1 -1
- package/lib/transformers/features/stringifiers/ValidateStringifyTransformer.d.ts +1 -1
- package/lib/transformers/features/validators/AssertTransformer.d.ts +1 -1
- package/lib/transformers/features/validators/CreateAssertTransformer.d.ts +1 -1
- package/lib/transformers/features/validators/CreateIsTransformer.d.ts +1 -1
- package/lib/transformers/features/validators/CreateValidateTransformer.d.ts +1 -1
- package/lib/transformers/features/validators/IsTransformer.d.ts +1 -1
- package/lib/transformers/features/validators/ValidateTransformer.d.ts +1 -1
- package/lib/transformers/internal/GenericTransformer.d.ts +3 -3
- package/lib/transformers/internal/GenericTransformer.js +19 -17
- package/lib/transformers/internal/GenericTransformer.js.map +1 -1
- package/lib/utils/RandomGenerator.js +9 -0
- package/lib/utils/RandomGenerator.js.map +1 -1
- package/lib/utils/Singleton.js +1 -1
- package/lib/utils/TsNodeUtil.d.ts +3 -3
- package/lib/utils/TsNodeUtil.js +7 -9
- package/lib/utils/TsNodeUtil.js.map +1 -1
- package/lib/utils/TsSymbolUtil.d.ts +3 -3
- package/lib/utils/TsSymbolUtil.js +137 -33
- package/lib/utils/TsSymbolUtil.js.map +1 -1
- package/lib/utils/TsTypeUtil.d.ts +7 -7
- package/lib/utils/TsTypeUtil.js +27 -19
- package/lib/utils/TsTypeUtil.js.map +1 -1
- package/package.json +128 -129
- package/src/factories/CommentFactory.ts +14 -14
- package/src/factories/ExpressionFactory.ts +77 -70
- package/src/factories/IdentifierFactory.ts +62 -63
- package/src/factories/LiteralFactory.ts +57 -39
- package/src/factories/MetadataCollection.ts +123 -121
- package/src/factories/MetadataFactory.ts +53 -62
- package/src/factories/MetadataTagFactory.ts +295 -295
- package/src/factories/StatementFactory.ts +20 -25
- package/src/factories/TemplateFactory.ts +64 -58
- package/src/factories/TypeFactory.ts +145 -136
- package/src/factories/ValueFactory.ts +15 -12
- package/src/factories/internal/metadata/emplace_metadata_object.ts +152 -148
- package/src/factories/internal/metadata/explore_metadata.ts +93 -92
- package/src/factories/internal/metadata/iterate_metadata.ts +63 -69
- package/src/factories/internal/metadata/iterate_metadata_array.ts +32 -30
- package/src/factories/internal/metadata/iterate_metadata_atomic.ts +59 -59
- package/src/factories/internal/metadata/iterate_metadata_coalesce.ts +33 -33
- package/src/factories/internal/metadata/iterate_metadata_constant.ts +62 -59
- package/src/factories/internal/metadata/iterate_metadata_map.ts +41 -41
- package/src/factories/internal/metadata/iterate_metadata_native.ts +217 -219
- package/src/factories/internal/metadata/iterate_metadata_object.ts +51 -49
- package/src/factories/internal/metadata/iterate_metadata_resolve.ts +30 -27
- package/src/factories/internal/metadata/iterate_metadata_set.ts +36 -33
- package/src/factories/internal/metadata/iterate_metadata_template.ts +40 -38
- package/src/factories/internal/metadata/iterate_metadata_tuple.ts +51 -48
- package/src/factories/internal/metadata/iterate_metadata_union.ts +59 -59
- package/src/module.ts +2038 -2038
- package/src/programmers/ApplicationProgrammer.ts +48 -56
- package/src/programmers/AssertCloneProgrammer.ts +68 -79
- package/src/programmers/AssertParseProgrammer.ts +66 -74
- package/src/programmers/AssertProgrammer.ts +274 -285
- package/src/programmers/AssertPruneProgrammer.ts +73 -76
- package/src/programmers/AssertStringifyProgrammer.ts +66 -74
- package/src/programmers/CheckerProgrammer.ts +897 -902
- package/src/programmers/CloneProgrammer.ts +387 -389
- package/src/programmers/FeatureProgrammer.ts +510 -501
- package/src/programmers/IsCloneProgrammer.ts +79 -86
- package/src/programmers/IsParseProgrammer.ts +72 -80
- package/src/programmers/IsProgrammer.ts +223 -216
- package/src/programmers/IsPruneProgrammer.ts +83 -81
- package/src/programmers/IsStringifyProgrammer.ts +77 -84
- package/src/programmers/LiteralsProgrammer.ts +65 -65
- package/src/programmers/PruneProgrammer.ts +348 -347
- package/src/programmers/RandomProgrammer.ts +444 -423
- package/src/programmers/StringifyProgrammer.ts +758 -798
- package/src/programmers/TypiaProgrammer.ts +141 -136
- package/src/programmers/ValidateCloneProgrammer.ts +93 -93
- package/src/programmers/ValidateParseProgrammer.ts +78 -78
- package/src/programmers/ValidateProgrammer.ts +317 -316
- package/src/programmers/ValidatePruneProgrammer.ts +86 -86
- package/src/programmers/ValidateStringifyProgrammer.ts +93 -92
- package/src/programmers/helpers/CloneJoiner.ts +138 -131
- package/src/programmers/helpers/FunctionImporeter.ts +56 -54
- package/src/programmers/helpers/ICheckEntry.ts +12 -12
- package/src/programmers/helpers/IExpressionEntry.ts +12 -12
- package/src/programmers/helpers/PruneJoiner.ts +156 -144
- package/src/programmers/helpers/RandomJoiner.ts +165 -161
- package/src/programmers/helpers/RandomRanger.ts +218 -216
- package/src/programmers/helpers/StringifyJoinder.ts +118 -113
- package/src/programmers/helpers/UnionExplorer.ts +281 -276
- package/src/programmers/helpers/disable_function_importer_declare.ts +21 -21
- package/src/programmers/internal/JSON_SCHEMA_PREFIX.ts +1 -1
- package/src/programmers/internal/application_array.ts +32 -32
- package/src/programmers/internal/application_boolean.ts +15 -15
- package/src/programmers/internal/application_constant.ts +26 -26
- package/src/programmers/internal/application_default.ts +17 -17
- package/src/programmers/internal/application_native.ts +36 -36
- package/src/programmers/internal/application_number.ts +71 -71
- package/src/programmers/internal/application_object.ts +162 -162
- package/src/programmers/internal/application_schema.ts +198 -198
- package/src/programmers/internal/application_string.ts +44 -44
- package/src/programmers/internal/application_templates.ts +25 -25
- package/src/programmers/internal/application_tuple.ts +27 -27
- package/src/programmers/internal/check_array.ts +31 -30
- package/src/programmers/internal/check_array_length.ts +35 -35
- package/src/programmers/internal/check_bigint.ts +95 -82
- package/src/programmers/internal/check_custom.ts +32 -31
- package/src/programmers/internal/check_dynamic_properties.ts +198 -194
- package/src/programmers/internal/check_everything.ts +28 -28
- package/src/programmers/internal/check_native.ts +22 -21
- package/src/programmers/internal/check_number.ts +177 -177
- package/src/programmers/internal/check_object.ts +65 -55
- package/src/programmers/internal/check_string.ts +27 -26
- package/src/programmers/internal/check_string_tags.ts +68 -67
- package/src/programmers/internal/check_template.ts +57 -56
- package/src/programmers/internal/check_union_array_like.ts +273 -272
- package/src/programmers/internal/check_union_tuple.ts +34 -34
- package/src/programmers/internal/decode_union_object.ts +75 -73
- package/src/programmers/internal/feature_object_entries.ts +64 -63
- package/src/programmers/internal/prune_object_properties.ts +63 -60
- package/src/programmers/internal/random_custom.ts +30 -29
- package/src/programmers/internal/stringify_dynamic_properties.ts +173 -167
- package/src/programmers/internal/stringify_native.ts +7 -7
- package/src/programmers/internal/stringify_regular_properties.ts +89 -83
- package/src/schemas/IJsonApplication.ts +13 -13
- package/src/schemas/IJsonComponents.ts +33 -33
- package/src/schemas/IJsonSchema.ts +134 -134
- package/src/transform.ts +4 -5
- package/src/transformers/CallExpressionTransformer.ts +183 -180
- package/src/transformers/FileTransformer.ts +50 -50
- package/src/transformers/IProject.ts +18 -11
- package/src/transformers/ImportTransformer.ts +74 -68
- package/src/transformers/NodeTransformer.ts +13 -13
- package/src/transformers/features/miscellaneous/ApplicationTransformer.ts +107 -105
- package/src/transformers/features/miscellaneous/CreateRandomTransformer.ts +43 -43
- package/src/transformers/features/miscellaneous/LiteralsTransformer.ts +31 -31
- package/src/transformers/features/miscellaneous/MetadataTransformer.ts +56 -54
- package/src/transformers/features/miscellaneous/RandomTransformer.ts +46 -46
- package/src/transformers/internal/GenericTransformer.ts +101 -103
- package/src/utils/TsNodeUtil.ts +17 -12
- package/src/utils/TsSymbolUtil.ts +146 -41
- package/src/utils/TsTypeUtil.ts +38 -30
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.FileTransformer = void 0;
|
|
7
|
-
var tsclibrary_1 = __importDefault(require("typescript/lib/tsclibrary"));
|
|
8
4
|
var TsNodeUtil_1 = require("../utils/TsNodeUtil");
|
|
9
5
|
var NodeTransformer_1 = require("./NodeTransformer");
|
|
10
6
|
var FileTransformer;
|
|
@@ -14,14 +10,14 @@ var FileTransformer;
|
|
|
14
10
|
return function (file) {
|
|
15
11
|
return file.isDeclarationFile
|
|
16
12
|
? file
|
|
17
|
-
:
|
|
13
|
+
: project.tsc.visitEachChild(file, function (node) { return iterate_node(project)(context)(node); }, context);
|
|
18
14
|
};
|
|
19
15
|
};
|
|
20
16
|
};
|
|
21
17
|
var iterate_node = function (project) {
|
|
22
18
|
return function (context) {
|
|
23
19
|
return function (node) {
|
|
24
|
-
return
|
|
20
|
+
return project.tsc.visitEachChild(try_transform_node(project)(node), function (child) { return iterate_node(project)(context)(child); }, context);
|
|
25
21
|
};
|
|
26
22
|
};
|
|
27
23
|
};
|
|
@@ -33,8 +29,8 @@ var FileTransformer;
|
|
|
33
29
|
catch (exp) {
|
|
34
30
|
if (!(exp instanceof Error))
|
|
35
31
|
throw exp;
|
|
36
|
-
var file = TsNodeUtil_1.TsNodeUtil.getSourceFile(node);
|
|
37
|
-
var _a =
|
|
32
|
+
var file = TsNodeUtil_1.TsNodeUtil.getSourceFile(project.tsc)(node);
|
|
33
|
+
var _a = project.tsc.getLineAndCharacterOfPosition(file, node.pos), line = _a.line, character = _a.character;
|
|
38
34
|
exp.message += " - ".concat(file.fileName, ":").concat(line + 1, ":").concat(character + 1);
|
|
39
35
|
throw exp;
|
|
40
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileTransformer.js","sourceRoot":"","sources":["../../src/transformers/FileTransformer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FileTransformer.js","sourceRoot":"","sources":["../../src/transformers/FileTransformer.ts"],"names":[],"mappings":";;;AAEA,kDAAiD;AAGjD,qDAAoD;AAEpD,IAAiB,eAAe,CA0C/B;AA1CD,WAAiB,eAAe;IACf,yBAAS,GAClB,UAAC,OAAiB;QAClB,OAAA,UAAC,OAAiC;YAClC,OAAA,UAAC,IAAmB;gBAChB,OAAA,IAAI,CAAC,iBAAiB;oBAClB,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CACtB,IAAI,EACJ,UAAC,IAAI,IAAK,OAAA,YAAY,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAApC,CAAoC,EAC9C,OAAO,CACV;YANP,CAMO;QAPX,CAOW;IARX,CAQW,CAAC;IAEhB,IAAM,YAAY,GACd,UAAC,OAAiB;QAClB,OAAA,UAAC,OAAiC;YAClC,OAAA,UAAC,IAAa;gBACV,OAAA,OAAO,CAAC,GAAG,CAAC,cAAc,CACtB,kBAAkB,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EACjC,UAAC,KAAK,IAAK,OAAA,YAAY,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,EAArC,CAAqC,EAChD,OAAO,CACV;YAJD,CAIC;QALL,CAKK;IANL,CAMK,CAAC;IAEV,IAAM,kBAAkB,GACpB,UAAC,OAAiB;QAClB,OAAA,UAAC,IAAa;YACV,IAAI;gBACA,OAAO,iCAAe,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC;aACnD;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,CAAC,GAAG,YAAY,KAAK,CAAC;oBAAE,MAAM,GAAG,CAAC;gBAEvC,IAAM,IAAI,GAAkB,uBAAU,CAAC,aAAa,CAChD,OAAO,CAAC,GAAG,CACd,CAAC,IAAI,CAAC,CAAC;gBACF,IAAA,KACF,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,EADrD,IAAI,UAAA,EAAE,SAAS,eACsC,CAAC;gBAC9D,GAAG,CAAC,OAAO,IAAI,aAAM,IAAI,CAAC,QAAQ,cAAI,IAAI,GAAG,CAAC,cAC1C,SAAS,GAAG,CAAC,CACf,CAAC;gBACH,MAAM,GAAG,CAAC;aACb;QACL,CAAC;IAhBD,CAgBC,CAAC;AACV,CAAC,EA1CgB,eAAe,+BAAf,eAAe,QA0C/B"}
|
|
@@ -1,9 +1,16 @@
|
|
|
1
|
-
import ts from "typescript/lib/tsclibrary";
|
|
1
|
+
import type ts from "typescript/lib/tsclibrary";
|
|
2
2
|
import { ITransformOptions } from "./ITransformOptions";
|
|
3
3
|
export interface IProject {
|
|
4
|
+
tsc: typeof ts;
|
|
4
5
|
program: ts.Program;
|
|
5
6
|
compilerOptions: ts.CompilerOptions;
|
|
6
7
|
checker: ts.TypeChecker;
|
|
7
8
|
printer: ts.Printer;
|
|
8
9
|
options: ITransformOptions;
|
|
9
10
|
}
|
|
11
|
+
export declare namespace IProject {
|
|
12
|
+
interface IModule {
|
|
13
|
+
tsc: typeof ts;
|
|
14
|
+
checker: ts.TypeChecker;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import ts from "typescript/lib/tsclibrary";
|
|
1
|
+
import type ts from "typescript/lib/tsclibrary";
|
|
2
2
|
export declare namespace ImportTransformer {
|
|
3
|
-
const transform: (from: string) => (to: string) => (context: ts.TransformationContext) => (file: ts.SourceFile) => ts.SourceFile;
|
|
3
|
+
const transform: (tsc: typeof ts) => (from: string) => (to: string) => (context: ts.TransformationContext) => (file: ts.SourceFile) => ts.SourceFile;
|
|
4
4
|
}
|
|
@@ -5,51 +5,62 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.ImportTransformer = void 0;
|
|
7
7
|
var path_1 = __importDefault(require("path"));
|
|
8
|
-
var tsclibrary_1 = __importDefault(require("typescript/lib/tsclibrary"));
|
|
9
8
|
var TsNodeUtil_1 = require("../utils/TsNodeUtil");
|
|
10
9
|
var ImportTransformer;
|
|
11
10
|
(function (ImportTransformer) {
|
|
12
|
-
ImportTransformer.transform = function (
|
|
13
|
-
return function (
|
|
14
|
-
return function (
|
|
15
|
-
return function (
|
|
16
|
-
return
|
|
11
|
+
ImportTransformer.transform = function (tsc) {
|
|
12
|
+
return function (from) {
|
|
13
|
+
return function (to) {
|
|
14
|
+
return function (context) {
|
|
15
|
+
return function (file) {
|
|
16
|
+
return transform_file(tsc)(from)(to)(context)(file);
|
|
17
|
+
};
|
|
17
18
|
};
|
|
18
19
|
};
|
|
19
20
|
};
|
|
20
21
|
};
|
|
21
|
-
var transform_file = function (
|
|
22
|
-
return function (
|
|
23
|
-
return function (
|
|
24
|
-
return function (
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
22
|
+
var transform_file = function (tsc) {
|
|
23
|
+
return function (top) {
|
|
24
|
+
return function (to) {
|
|
25
|
+
return function (context) {
|
|
26
|
+
return function (file) {
|
|
27
|
+
if (file.isDeclarationFile)
|
|
28
|
+
return file;
|
|
29
|
+
var from = get_directory_path(path_1.default.resolve(TsNodeUtil_1.TsNodeUtil.getSourceFile(tsc)(file).fileName));
|
|
30
|
+
to = from.replace(top, to);
|
|
31
|
+
return tsc.visitEachChild(file, function (node) { return transform_node(tsc)(top)(from)(to)(node); }, context);
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
var transform_node = function (tsc) {
|
|
38
|
+
return function (top) {
|
|
39
|
+
return function (from) {
|
|
40
|
+
return function (to) {
|
|
41
|
+
return function (node) {
|
|
42
|
+
if (!tsc.isImportDeclaration(node) ||
|
|
43
|
+
!tsc.isStringLiteral(node.moduleSpecifier))
|
|
44
|
+
return node;
|
|
45
|
+
var text = node.moduleSpecifier.text;
|
|
46
|
+
if (text[0] !== ".")
|
|
47
|
+
return node;
|
|
48
|
+
var location = path_1.default.resolve(from, text);
|
|
49
|
+
if (location.indexOf(top) === 0)
|
|
50
|
+
return node;
|
|
51
|
+
var replaced = (function () {
|
|
52
|
+
var simple = path_1.default
|
|
53
|
+
.relative(to, location)
|
|
54
|
+
.split(path_1.default.sep)
|
|
55
|
+
.join("/");
|
|
56
|
+
return simple[0] === "." ? simple : "./".concat(simple);
|
|
57
|
+
})();
|
|
58
|
+
return tsc.factory.createImportDeclaration(undefined, node.importClause, tsc.factory.createStringLiteral(replaced), node.assertClause);
|
|
59
|
+
};
|
|
30
60
|
};
|
|
31
61
|
};
|
|
32
62
|
};
|
|
33
63
|
};
|
|
34
|
-
var transform_node = function (top) { return function (from) { return function (to) { return function (node) {
|
|
35
|
-
if (!tsclibrary_1.default.isImportDeclaration(node) ||
|
|
36
|
-
!tsclibrary_1.default.isStringLiteral(node.moduleSpecifier))
|
|
37
|
-
return node;
|
|
38
|
-
var text = node.moduleSpecifier.text;
|
|
39
|
-
if (text[0] !== ".")
|
|
40
|
-
return node;
|
|
41
|
-
var location = path_1.default.resolve(from, text);
|
|
42
|
-
if (location.indexOf(top) === 0)
|
|
43
|
-
return node;
|
|
44
|
-
var replaced = (function () {
|
|
45
|
-
var simple = path_1.default
|
|
46
|
-
.relative(to, location)
|
|
47
|
-
.split(path_1.default.sep)
|
|
48
|
-
.join("/");
|
|
49
|
-
return simple[0] === "." ? simple : "./".concat(simple);
|
|
50
|
-
})();
|
|
51
|
-
return tsclibrary_1.default.factory.createImportDeclaration(undefined, node.importClause, tsclibrary_1.default.factory.createStringLiteral(replaced), node.assertClause);
|
|
52
|
-
}; }; }; };
|
|
53
64
|
})(ImportTransformer || (exports.ImportTransformer = ImportTransformer = {}));
|
|
54
65
|
var get_directory_path = function (file) {
|
|
55
66
|
var splitted = path_1.default.resolve(file).split(path_1.default.sep);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ImportTransformer.js","sourceRoot":"","sources":["../../src/transformers/ImportTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAwB;
|
|
1
|
+
{"version":3,"file":"ImportTransformer.js","sourceRoot":"","sources":["../../src/transformers/ImportTransformer.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAwB;AAGxB,kDAAiD;AAEjD,IAAiB,iBAAiB,CA8DjC;AA9DD,WAAiB,iBAAiB;IACjB,2BAAS,GAClB,UAAC,GAAc;QACf,OAAA,UAAC,IAAY;YACb,OAAA,UAAC,EAAU;gBACX,OAAA,UAAC,OAAiC;oBAClC,OAAA,UAAC,IAAmB;wBAChB,OAAA,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC;oBAA5C,CAA4C;gBADhD,CACgD;YAFhD,CAEgD;QAHhD,CAGgD;IAJhD,CAIgD,CAAC;IAErD,IAAM,cAAc,GAChB,UAAC,GAAc;QACf,OAAA,UAAC,GAAW;YACZ,OAAA,UAAC,EAAU;gBACX,OAAA,UAAC,OAAiC;oBAClC,OAAA,UAAC,IAAmB;wBAChB,IAAI,IAAI,CAAC,iBAAiB;4BAAE,OAAO,IAAI,CAAC;wBAExC,IAAM,IAAI,GAAW,kBAAkB,CACnC,cAAI,CAAC,OAAO,CAAC,uBAAU,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAC7D,CAAC;wBACF,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;wBAE3B,OAAO,GAAG,CAAC,cAAc,CACrB,IAAI,EACJ,UAAC,IAAI,IAAK,OAAA,cAAc,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAxC,CAAwC,EAClD,OAAO,CACV,CAAC;oBACN,CAAC;gBAbD,CAaC;YAdD,CAcC;QAfD,CAeC;IAhBD,CAgBC,CAAC;IAEN,IAAM,cAAc,GAChB,UAAC,GAAc;QACf,OAAA,UAAC,GAAW;YACZ,OAAA,UAAC,IAAY;gBACb,OAAA,UAAC,EAAU;oBACX,OAAA,UAAC,IAAa;wBACV,IACI,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,CAAC;4BAC9B,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC;4BAE1C,OAAO,IAAI,CAAC;wBAEhB,IAAM,IAAI,GAAW,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;wBAC/C,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG;4BAAE,OAAO,IAAI,CAAC;wBAEjC,IAAM,QAAQ,GAAW,cAAI,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;wBAClD,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;4BAAE,OAAO,IAAI,CAAC;wBAE7C,IAAM,QAAQ,GAAW,CAAC;4BACtB,IAAM,MAAM,GAAW,cAAI;iCACtB,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC;iCACtB,KAAK,CAAC,cAAI,CAAC,GAAG,CAAC;iCACf,IAAI,CAAC,GAAG,CAAC,CAAC;4BACf,OAAO,MAAM,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAK,MAAM,CAAE,CAAC;wBACtD,CAAC,CAAC,EAAE,CAAC;wBAEL,OAAO,GAAG,CAAC,OAAO,CAAC,uBAAuB,CACtC,SAAS,EACT,IAAI,CAAC,YAAY,EACjB,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EACzC,IAAI,CAAC,YAAY,CACpB,CAAC;oBACN,CAAC;gBA3BD,CA2BC;YA5BD,CA4BC;QA7BD,CA6BC;IA9BD,CA8BC,CAAC;AACV,CAAC,EA9DgB,iBAAiB,iCAAjB,iBAAiB,QA8DjC;AAED,IAAM,kBAAkB,GAAG,UAAC,IAAY;IACpC,IAAM,QAAQ,GAAa,cAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,cAAI,CAAC,GAAG,CAAC,CAAC;IAC9D,QAAQ,CAAC,GAAG,EAAE,CAAC;IACf,OAAO,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AACjD,CAAC,CAAC"}
|
|
@@ -1,16 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.NodeTransformer = void 0;
|
|
7
|
-
var tsclibrary_1 = __importDefault(require("typescript/lib/tsclibrary"));
|
|
8
4
|
var CallExpressionTransformer_1 = require("./CallExpressionTransformer");
|
|
9
5
|
var NodeTransformer;
|
|
10
6
|
(function (NodeTransformer) {
|
|
11
7
|
NodeTransformer.transform = function (project) {
|
|
12
8
|
return function (expression) {
|
|
13
|
-
return
|
|
9
|
+
return project.tsc.isCallExpression(expression)
|
|
14
10
|
? CallExpressionTransformer_1.CallExpressionTransformer.transform(project)(expression)
|
|
15
11
|
: expression;
|
|
16
12
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NodeTransformer.js","sourceRoot":"","sources":["../../src/transformers/NodeTransformer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"NodeTransformer.js","sourceRoot":"","sources":["../../src/transformers/NodeTransformer.ts"],"names":[],"mappings":";;;AAEA,yEAAwE;AAGxE,IAAiB,eAAe,CAO/B;AAPD,WAAiB,eAAe;IACf,yBAAS,GAClB,UAAC,OAAiB;QAClB,OAAA,UAAC,UAAmB;YAChB,OAAA,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,UAAU,CAAC;gBACpC,CAAC,CAAC,qDAAyB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC;gBAC1D,CAAC,CAAC,UAAU;QAFhB,CAEgB;IAHpB,CAGoB,CAAC;AAC7B,CAAC,EAPgB,eAAe,+BAAf,eAAe,QAO/B"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import ts from "typescript/lib/tsclibrary";
|
|
1
|
+
import type ts from "typescript/lib/tsclibrary";
|
|
2
2
|
import { IProject } from "../../IProject";
|
|
3
3
|
export declare namespace ApplicationTransformer {
|
|
4
|
-
const transform: (
|
|
4
|
+
const transform: (p: IProject) => (expression: ts.CallExpression) => ts.Expression;
|
|
5
5
|
}
|
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.ApplicationTransformer = void 0;
|
|
7
|
-
var tsclibrary_1 = __importDefault(require("typescript/lib/tsclibrary"));
|
|
8
4
|
var LiteralFactory_1 = require("../../../factories/LiteralFactory");
|
|
9
5
|
var MetadataCollection_1 = require("../../../factories/MetadataCollection");
|
|
10
6
|
var MetadataFactory_1 = require("../../../factories/MetadataFactory");
|
|
@@ -12,28 +8,37 @@ var ApplicationProgrammer_1 = require("../../../programmers/ApplicationProgramme
|
|
|
12
8
|
var TsTypeUtil_1 = require("../../../utils/TsTypeUtil");
|
|
13
9
|
var ApplicationTransformer;
|
|
14
10
|
(function (ApplicationTransformer) {
|
|
15
|
-
ApplicationTransformer.transform = function (
|
|
16
|
-
var checker = _a.checker;
|
|
11
|
+
ApplicationTransformer.transform = function (p) {
|
|
17
12
|
return function (expression) {
|
|
18
13
|
var _a;
|
|
19
14
|
if (!((_a = expression.typeArguments) === null || _a === void 0 ? void 0 : _a.length))
|
|
20
15
|
throw new Error(NO_GENERIC_ARGUMENT);
|
|
16
|
+
//----
|
|
17
|
+
// GET ARGUMENTS
|
|
18
|
+
//----
|
|
19
|
+
// VALIDATE TUPLE ARGUMENTS
|
|
21
20
|
var top = expression.typeArguments[0];
|
|
22
|
-
if (!
|
|
21
|
+
if (!p.tsc.isTupleTypeNode(top))
|
|
23
22
|
return expression;
|
|
24
|
-
else if (top.elements.some(function (child) { return !
|
|
23
|
+
else if (top.elements.some(function (child) { return !p.tsc.isTypeNode(child); }))
|
|
25
24
|
return expression;
|
|
26
|
-
|
|
27
|
-
|
|
25
|
+
// GET TYPES
|
|
26
|
+
var typeList = top.elements.map(function (child) {
|
|
27
|
+
return p.checker.getTypeFromTypeNode(child);
|
|
28
28
|
});
|
|
29
|
-
if (
|
|
29
|
+
if (typeList.some(function (type) { return TsTypeUtil_1.TsTypeUtil.isTypeParameter(p.tsc)(type); }))
|
|
30
30
|
throw new Error(GENERIC_ARGUMENT);
|
|
31
|
-
|
|
31
|
+
// ADDITIONAL PARAMETERS
|
|
32
|
+
var purpose = get_parameter(p, "Purpose", expression.typeArguments[1], function (str) { return str === "swagger" || str === "ajv"; }, function () { return "swagger"; });
|
|
33
|
+
//----
|
|
34
|
+
// GENERATORS
|
|
35
|
+
//----
|
|
36
|
+
// METADATA
|
|
32
37
|
var collection = new MetadataCollection_1.MetadataCollection({
|
|
33
38
|
replace: MetadataCollection_1.MetadataCollection.replace,
|
|
34
39
|
});
|
|
35
|
-
var metadatas =
|
|
36
|
-
return MetadataFactory_1.MetadataFactory.analyze(
|
|
40
|
+
var metadatas = typeList.map(function (type) {
|
|
41
|
+
return MetadataFactory_1.MetadataFactory.analyze(p)({
|
|
37
42
|
resolve: true,
|
|
38
43
|
constant: true,
|
|
39
44
|
validate: function (meta) {
|
|
@@ -42,18 +47,22 @@ var ApplicationTransformer;
|
|
|
42
47
|
},
|
|
43
48
|
})(collection)(type);
|
|
44
49
|
});
|
|
50
|
+
// APPLICATION
|
|
45
51
|
var app = ApplicationProgrammer_1.ApplicationProgrammer.write({
|
|
46
52
|
purpose: purpose,
|
|
47
53
|
})(metadatas);
|
|
48
|
-
|
|
54
|
+
// RETURNS WITH LITERAL EXPRESSION
|
|
55
|
+
return LiteralFactory_1.LiteralFactory.generate(p.tsc)(app);
|
|
49
56
|
};
|
|
50
57
|
};
|
|
51
|
-
var get_parameter = function (
|
|
58
|
+
var get_parameter = function (p, name, node, predicator, defaulter) {
|
|
52
59
|
if (!node)
|
|
53
60
|
return defaulter();
|
|
54
|
-
|
|
55
|
-
|
|
61
|
+
// CHECK LITERAL TYPE
|
|
62
|
+
var type = p.checker.getTypeFromTypeNode(node);
|
|
63
|
+
if (!TsTypeUtil_1.TsTypeUtil.isLiteral(p.tsc)(type))
|
|
56
64
|
throw new Error("Error on typia.application(): generic argument \"".concat(name, "\" must be constant."));
|
|
65
|
+
// GET VALUE AND VALIDATE IT
|
|
57
66
|
var value = type.value;
|
|
58
67
|
if (typeof value !== "string" || predicator(value) === false)
|
|
59
68
|
throw new Error("Error on typia.application(): invalid value on generic argument \"".concat(name, "\"."));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApplicationTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/miscellaneous/ApplicationTransformer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ApplicationTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/miscellaneous/ApplicationTransformer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare namespace AssertCloneTransformer {
|
|
2
|
-
const transform: (
|
|
2
|
+
const transform: (p: import("../../IProject").IProject) => (modulo: import("typescript/lib/tsclibrary").LeftHandSideExpression) => (expression: import("typescript/lib/tsclibrary").CallExpression) => import("typescript/lib/tsclibrary").CallExpression;
|
|
3
3
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare namespace AssertPruneTransformer {
|
|
2
|
-
const transform: (
|
|
2
|
+
const transform: (p: import("../../IProject").IProject) => (modulo: import("typescript/lib/tsclibrary").LeftHandSideExpression) => (expression: import("typescript/lib/tsclibrary").CallExpression) => import("typescript/lib/tsclibrary").CallExpression;
|
|
3
3
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare namespace CloneTransformer {
|
|
2
|
-
const transform: (
|
|
2
|
+
const transform: (p: import("../../IProject").IProject) => (modulo: import("typescript/lib/tsclibrary").LeftHandSideExpression) => (expression: import("typescript/lib/tsclibrary").CallExpression) => import("typescript/lib/tsclibrary").CallExpression;
|
|
3
3
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare namespace CreateAssertCloneTransformer {
|
|
2
|
-
const transform: (
|
|
2
|
+
const transform: (p: import("../../IProject").IProject) => (modulo: import("typescript/lib/tsclibrary").LeftHandSideExpression) => (expression: import("typescript/lib/tsclibrary").CallExpression) => import("typescript/lib/tsclibrary").ArrowFunction;
|
|
3
3
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare namespace CreateAssertPruneTransformer {
|
|
2
|
-
const transform: (
|
|
2
|
+
const transform: (p: import("../../IProject").IProject) => (modulo: import("typescript/lib/tsclibrary").LeftHandSideExpression) => (expression: import("typescript/lib/tsclibrary").CallExpression) => import("typescript/lib/tsclibrary").ArrowFunction;
|
|
3
3
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare namespace CreateCloneTransformer {
|
|
2
|
-
const transform: (
|
|
2
|
+
const transform: (p: import("../../IProject").IProject) => (modulo: import("typescript/lib/tsclibrary").LeftHandSideExpression) => (expression: import("typescript/lib/tsclibrary").CallExpression) => import("typescript/lib/tsclibrary").ArrowFunction;
|
|
3
3
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare namespace CreateIsCloneTransformer {
|
|
2
|
-
const transform: (
|
|
2
|
+
const transform: (p: import("../../IProject").IProject) => (modulo: import("typescript/lib/tsclibrary").LeftHandSideExpression) => (expression: import("typescript/lib/tsclibrary").CallExpression) => import("typescript/lib/tsclibrary").ArrowFunction;
|
|
3
3
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare namespace CreateIsPruneTransformer {
|
|
2
|
-
const transform: (
|
|
2
|
+
const transform: (p: import("../../IProject").IProject) => (modulo: import("typescript/lib/tsclibrary").LeftHandSideExpression) => (expression: import("typescript/lib/tsclibrary").CallExpression) => import("typescript/lib/tsclibrary").ArrowFunction;
|
|
3
3
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare namespace CreatePruneTransformer {
|
|
2
|
-
const transform: (
|
|
2
|
+
const transform: (p: import("../../IProject").IProject) => (modulo: import("typescript/lib/tsclibrary").LeftHandSideExpression) => (expression: import("typescript/lib/tsclibrary").CallExpression) => import("typescript/lib/tsclibrary").ArrowFunction;
|
|
3
3
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import ts from "typescript/lib/tsclibrary";
|
|
1
|
+
import type ts from "typescript/lib/tsclibrary";
|
|
2
2
|
import { IProject } from "../../IProject";
|
|
3
3
|
export declare namespace CreateRandomTransformer {
|
|
4
|
-
const transform: (
|
|
4
|
+
const transform: (p: IProject) => (modulo: ts.LeftHandSideExpression) => (expression: ts.CallExpression) => ts.Expression;
|
|
5
5
|
}
|
|
@@ -17,17 +17,20 @@ var TsNodeUtil_1 = require("../../../utils/TsNodeUtil");
|
|
|
17
17
|
var TsTypeUtil_1 = require("../../../utils/TsTypeUtil");
|
|
18
18
|
var CreateRandomTransformer;
|
|
19
19
|
(function (CreateRandomTransformer) {
|
|
20
|
-
CreateRandomTransformer.transform = function (
|
|
20
|
+
CreateRandomTransformer.transform = function (p) {
|
|
21
21
|
return function (modulo) {
|
|
22
22
|
return function (expression) {
|
|
23
23
|
var _a, _b;
|
|
24
|
+
// CHECK GENERIC ARGUMENT EXISTENCE
|
|
24
25
|
if (!((_a = expression.typeArguments) === null || _a === void 0 ? void 0 : _a[0]))
|
|
25
26
|
throw new Error(NOT_SPECIFIED);
|
|
27
|
+
// GET TYPE INFO
|
|
26
28
|
var node = expression.typeArguments[0];
|
|
27
|
-
var type =
|
|
28
|
-
if (TsTypeUtil_1.TsTypeUtil.isTypeParameter(type))
|
|
29
|
+
var type = p.checker.getTypeFromTypeNode(node);
|
|
30
|
+
if (TsTypeUtil_1.TsTypeUtil.isTypeParameter(p.tsc)(type))
|
|
29
31
|
throw new Error(NO_GENERIC_ARGUMENT);
|
|
30
|
-
|
|
32
|
+
// DO TRANSFORM
|
|
33
|
+
return RandomProgrammer_1.RandomProgrammer.write(__assign(__assign({}, p), { options: __assign(__assign({}, p.options), { functional: false, numeric: false }) }))(modulo)((_b = expression.arguments) === null || _b === void 0 ? void 0 : _b[0])(type, TsNodeUtil_1.TsNodeUtil.getFullText(p.tsc)(node).trim());
|
|
31
34
|
};
|
|
32
35
|
};
|
|
33
36
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CreateRandomTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/miscellaneous/CreateRandomTransformer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,0EAAyE;AAEzE,wDAAuD;AACvD,wDAAuD;AAIvD,IAAiB,uBAAuB,CA4BvC;AA5BD,WAAiB,uBAAuB;IACvB,iCAAS,GAClB,UAAC,
|
|
1
|
+
{"version":3,"file":"CreateRandomTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/miscellaneous/CreateRandomTransformer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAEA,0EAAyE;AAEzE,wDAAuD;AACvD,wDAAuD;AAIvD,IAAiB,uBAAuB,CA4BvC;AA5BD,WAAiB,uBAAuB;IACvB,iCAAS,GAClB,UAAC,CAAW;QACZ,OAAA,UAAC,MAAiC;YAClC,OAAA,UAAC,UAA6B;;gBAC1B,mCAAmC;gBACnC,IAAI,CAAC,CAAA,MAAA,UAAU,CAAC,aAAa,0CAAG,CAAC,CAAC,CAAA;oBAAE,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;gBAEnE,gBAAgB;gBAChB,IAAM,IAAI,GAAgB,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;gBACtD,IAAM,IAAI,GAAY,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;gBAE1D,IAAI,uBAAU,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;oBACvC,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBAEzC,eAAe;gBACf,OAAO,mCAAgB,CAAC,KAAK,uBACtB,CAAC,KACJ,OAAO,wBACA,CAAC,CAAC,OAAO,KACZ,UAAU,EAAE,KAAK,EACjB,OAAO,EAAE,KAAK,OAEpB,CAAC,MAAM,CAAC,CAAC,MAAA,UAAU,CAAC,SAAS,0CAAG,CAAC,CAAC,CAAC,CACjC,IAAI,EACJ,uBAAU,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAC7C,CAAC;YACN,CAAC;QAvBD,CAuBC;IAxBD,CAwBC,CAAC;AACV,CAAC,EA5BgB,uBAAuB,uCAAvB,uBAAuB,QA4BvC;AAED,IAAM,aAAa,GACf,mEAAmE,CAAC;AACxE,IAAM,mBAAmB,GACrB,gEAAgE,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare namespace CreateValidateCloneTransformer {
|
|
2
|
-
const transform: (
|
|
2
|
+
const transform: (p: import("../../IProject").IProject) => (modulo: import("typescript/lib/tsclibrary").LeftHandSideExpression) => (expression: import("typescript/lib/tsclibrary").CallExpression) => import("typescript/lib/tsclibrary").ArrowFunction;
|
|
3
3
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare namespace CreateValidatePruneTransformer {
|
|
2
|
-
const transform: (
|
|
2
|
+
const transform: (p: import("../../IProject").IProject) => (modulo: import("typescript/lib/tsclibrary").LeftHandSideExpression) => (expression: import("typescript/lib/tsclibrary").CallExpression) => import("typescript/lib/tsclibrary").ArrowFunction;
|
|
3
3
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare namespace IsCloneTransformer {
|
|
2
|
-
const transform: (
|
|
2
|
+
const transform: (p: import("../../IProject").IProject) => (modulo: import("typescript/lib/tsclibrary").LeftHandSideExpression) => (expression: import("typescript/lib/tsclibrary").CallExpression) => import("typescript/lib/tsclibrary").CallExpression;
|
|
3
3
|
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare namespace IsPruneTransformer {
|
|
2
|
-
const transform: (
|
|
2
|
+
const transform: (p: import("../../IProject").IProject) => (modulo: import("typescript/lib/tsclibrary").LeftHandSideExpression) => (expression: import("typescript/lib/tsclibrary").CallExpression) => import("typescript/lib/tsclibrary").CallExpression;
|
|
3
3
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import ts from "typescript/lib/tsclibrary";
|
|
1
|
+
import type ts from "typescript/lib/tsclibrary";
|
|
2
2
|
import { IProject } from "../../IProject";
|
|
3
3
|
export declare namespace LiteralsTransformer {
|
|
4
|
-
const transform: (
|
|
4
|
+
const transform: (p: IProject) => (expression: ts.CallExpression) => ts.Expression;
|
|
5
5
|
}
|
|
@@ -5,16 +5,19 @@ var LiteralsProgrammer_1 = require("../../../programmers/LiteralsProgrammer");
|
|
|
5
5
|
var TsTypeUtil_1 = require("../../../utils/TsTypeUtil");
|
|
6
6
|
var LiteralsTransformer;
|
|
7
7
|
(function (LiteralsTransformer) {
|
|
8
|
-
LiteralsTransformer.transform = function (
|
|
8
|
+
LiteralsTransformer.transform = function (p) {
|
|
9
9
|
return function (expression) {
|
|
10
10
|
var _a;
|
|
11
|
+
// CHECK GENERIC ARGUMENT EXISTENCE
|
|
11
12
|
if (!((_a = expression.typeArguments) === null || _a === void 0 ? void 0 : _a[0]))
|
|
12
13
|
throw new Error(NOT_SPECIFIED);
|
|
14
|
+
// GET TYPE INFO
|
|
13
15
|
var node = expression.typeArguments[0];
|
|
14
|
-
var type =
|
|
15
|
-
if (TsTypeUtil_1.TsTypeUtil.isTypeParameter(type))
|
|
16
|
+
var type = p.checker.getTypeFromTypeNode(node);
|
|
17
|
+
if (TsTypeUtil_1.TsTypeUtil.isTypeParameter(p.tsc)(type))
|
|
16
18
|
throw new Error(NO_GENERIC_ARGUMENT);
|
|
17
|
-
|
|
19
|
+
// DO TRANSFORM
|
|
20
|
+
return LiteralsProgrammer_1.LiteralsProgrammer.write(p)(type);
|
|
18
21
|
};
|
|
19
22
|
};
|
|
20
23
|
})(LiteralsTransformer || (exports.LiteralsTransformer = LiteralsTransformer = {}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LiteralsTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/miscellaneous/LiteralsTransformer.ts"],"names":[],"mappings":";;;AAEA,8EAA6E;AAE7E,wDAAuD;AAIvD,IAAiB,mBAAmB,CAiBnC;AAjBD,WAAiB,mBAAmB;IACnB,6BAAS,GAClB,UAAC,
|
|
1
|
+
{"version":3,"file":"LiteralsTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/miscellaneous/LiteralsTransformer.ts"],"names":[],"mappings":";;;AAEA,8EAA6E;AAE7E,wDAAuD;AAIvD,IAAiB,mBAAmB,CAiBnC;AAjBD,WAAiB,mBAAmB;IACnB,6BAAS,GAClB,UAAC,CAAW;QACZ,OAAA,UAAC,UAA6B;;YAC1B,mCAAmC;YACnC,IAAI,CAAC,CAAA,MAAA,UAAU,CAAC,aAAa,0CAAG,CAAC,CAAC,CAAA;gBAAE,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAC;YAEnE,gBAAgB;YAChB,IAAM,IAAI,GAAgB,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YACtD,IAAM,IAAI,GAAY,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAE1D,IAAI,uBAAU,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;gBACvC,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;YAEzC,eAAe;YACf,OAAO,uCAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC7C,CAAC;IAbD,CAaC,CAAC;AACV,CAAC,EAjBgB,mBAAmB,mCAAnB,mBAAmB,QAiBnC;AAED,IAAM,aAAa,GACf,+DAA+D,CAAC;AACpE,IAAM,mBAAmB,GACrB,4DAA4D,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import ts from "typescript/lib/tsclibrary";
|
|
1
|
+
import type ts from "typescript/lib/tsclibrary";
|
|
2
2
|
import { IProject } from "../../IProject";
|
|
3
3
|
export declare namespace MetadataTransformer {
|
|
4
|
-
const transform: (
|
|
4
|
+
const transform: (p: IProject) => (expression: ts.CallExpression) => ts.Expression;
|
|
5
5
|
}
|
|
@@ -1,44 +1,43 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.MetadataTransformer = void 0;
|
|
7
|
-
var tsclibrary_1 = __importDefault(require("typescript/lib/tsclibrary"));
|
|
8
4
|
var LiteralFactory_1 = require("../../../factories/LiteralFactory");
|
|
9
5
|
var MetadataCollection_1 = require("../../../factories/MetadataCollection");
|
|
10
6
|
var MetadataFactory_1 = require("../../../factories/MetadataFactory");
|
|
11
7
|
var TsTypeUtil_1 = require("../../../utils/TsTypeUtil");
|
|
12
8
|
var MetadataTransformer;
|
|
13
9
|
(function (MetadataTransformer) {
|
|
14
|
-
MetadataTransformer.transform = function (
|
|
15
|
-
var checker = _a.checker;
|
|
10
|
+
MetadataTransformer.transform = function (p) {
|
|
16
11
|
return function (expression) {
|
|
17
12
|
var _a;
|
|
18
13
|
if (!((_a = expression.typeArguments) === null || _a === void 0 ? void 0 : _a.length))
|
|
19
14
|
throw new Error(NO_GENERIC_ARGUMENT);
|
|
15
|
+
// VALIDATE TUPLE ARGUMENTS
|
|
20
16
|
var top = expression.typeArguments[0];
|
|
21
|
-
if (!
|
|
17
|
+
if (!p.tsc.isTupleTypeNode(top))
|
|
22
18
|
return expression;
|
|
23
|
-
else if (top.elements.some(function (child) { return !
|
|
19
|
+
else if (top.elements.some(function (child) { return !p.tsc.isTypeNode(child); }))
|
|
24
20
|
return expression;
|
|
25
|
-
|
|
26
|
-
|
|
21
|
+
// GET TYPES
|
|
22
|
+
var typeList = top.elements.map(function (child) {
|
|
23
|
+
return p.checker.getTypeFromTypeNode(child);
|
|
27
24
|
});
|
|
28
|
-
if (
|
|
25
|
+
if (typeList.some(function (type) { return TsTypeUtil_1.TsTypeUtil.isTypeParameter(p.tsc)(type); }))
|
|
29
26
|
throw new Error(GENERIC_ARGUMENT);
|
|
27
|
+
// METADATA
|
|
30
28
|
var collection = new MetadataCollection_1.MetadataCollection();
|
|
31
|
-
var metadatas =
|
|
32
|
-
return MetadataFactory_1.MetadataFactory.analyze(
|
|
29
|
+
var metadatas = typeList.map(function (type) {
|
|
30
|
+
return MetadataFactory_1.MetadataFactory.analyze(p)({
|
|
33
31
|
resolve: false,
|
|
34
32
|
constant: true,
|
|
35
33
|
})(collection)(type);
|
|
36
34
|
});
|
|
35
|
+
// CONVERT TO PRIMITIVE TYPE
|
|
37
36
|
var app = {
|
|
38
37
|
metadatas: metadatas.map(function (metadata) { return metadata.toJSON(); }),
|
|
39
38
|
collection: collection.objects().map(function (obj) { return obj.toJSON(); }),
|
|
40
39
|
};
|
|
41
|
-
return LiteralFactory_1.LiteralFactory.generate(app);
|
|
40
|
+
return LiteralFactory_1.LiteralFactory.generate(p.tsc)(app);
|
|
42
41
|
};
|
|
43
42
|
};
|
|
44
43
|
})(MetadataTransformer || (exports.MetadataTransformer = MetadataTransformer = {}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MetadataTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/miscellaneous/MetadataTransformer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MetadataTransformer.js","sourceRoot":"","sources":["../../../../src/transformers/features/miscellaneous/MetadataTransformer.ts"],"names":[],"mappings":";;;AAEA,oEAAmE;AACnE,4EAA2E;AAC3E,sEAAqE;AAKrE,wDAAuD;AAIvD,IAAiB,mBAAmB,CAsCnC;AAtCD,WAAiB,mBAAmB;IACnB,6BAAS,GAClB,UAAC,CAAW;QACZ,OAAA,UAAC,UAA6B;;YAC1B,IAAI,CAAC,CAAA,MAAA,UAAU,CAAC,aAAa,0CAAE,MAAM,CAAA;gBACjC,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;YAEzC,2BAA2B;YAC3B,IAAM,GAAG,GAAY,UAAU,CAAC,aAAa,CAAC,CAAC,CAAE,CAAC;YAClD,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC;gBAAE,OAAO,UAAU,CAAC;iBAC9C,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAC,KAAK,IAAK,OAAA,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAxB,CAAwB,CAAC;gBAC3D,OAAO,UAAU,CAAC;YAEtB,YAAY;YACZ,IAAM,QAAQ,GAAc,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAC,KAAK;gBAC/C,OAAA,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAoB,CAAC;YAAnD,CAAmD,CACtD,CAAC;YACF,IACI,QAAQ,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,uBAAU,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAvC,CAAuC,CAAC;gBAEhE,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;YAEtC,WAAW;YACX,IAAM,UAAU,GAAuB,IAAI,uCAAkB,EAAE,CAAC;YAChE,IAAM,SAAS,GAAoB,QAAQ,CAAC,GAAG,CAAC,UAAC,IAAI;gBACjD,OAAA,iCAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;oBACvB,OAAO,EAAE,KAAK;oBACd,QAAQ,EAAE,IAAI;iBACjB,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC;YAHpB,CAGoB,CACvB,CAAC;YAEF,4BAA4B;YAC5B,IAAM,GAAG,GAAyB;gBAC9B,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,UAAC,QAAQ,IAAK,OAAA,QAAQ,CAAC,MAAM,EAAE,EAAjB,CAAiB,CAAC;gBACzD,UAAU,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,MAAM,EAAE,EAAZ,CAAY,CAAC;aAC9D,CAAC;YACF,OAAO,+BAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QAC/C,CAAC;IAlCD,CAkCC,CAAC;AACV,CAAC,EAtCgB,mBAAmB,mCAAnB,mBAAmB,QAsCnC;AAED,IAAM,mBAAmB,GAAG,iDAAiD,CAAC;AAC9E,IAAM,gBAAgB,GAClB,+DAA+D,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare namespace PruneTransformer {
|
|
2
|
-
const transform: (
|
|
2
|
+
const transform: (p: import("../../IProject").IProject) => (modulo: import("typescript/lib/tsclibrary").LeftHandSideExpression) => (expression: import("typescript/lib/tsclibrary").CallExpression) => import("typescript/lib/tsclibrary").CallExpression;
|
|
3
3
|
}
|