typia 4.0.0-dev.20230527 → 4.0.0-dev.20230604
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/IRandomGenerator.d.ts +1 -0
- package/lib/TypeGuardError.js +2 -6
- package/lib/TypeGuardError.js.map +1 -1
- package/lib/executable/TypiaGenerateWizard.js +24 -25
- package/lib/executable/TypiaGenerateWizard.js.map +1 -1
- package/lib/executable/TypiaSetupWizard.js +21 -28
- package/lib/executable/TypiaSetupWizard.js.map +1 -1
- package/lib/executable/setup/ArgumentParser.js +6 -6
- package/lib/executable/setup/ArgumentParser.js.map +1 -1
- package/lib/executable/setup/CommandExecutor.js +1 -1
- package/lib/executable/setup/CommandExecutor.js.map +1 -1
- package/lib/executable/setup/FileRetriever.js +1 -1
- package/lib/executable/setup/FileRetriever.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 -6
- 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.d.ts +8 -3
- package/lib/factories/CommentFactory.js +63 -6
- package/lib/factories/CommentFactory.js.map +1 -1
- package/lib/factories/ExpressionFactory.d.ts +6 -6
- package/lib/factories/ExpressionFactory.js +29 -35
- package/lib/factories/ExpressionFactory.js.map +1 -1
- package/lib/factories/IdentifierFactory.d.ts +8 -4
- package/lib/factories/IdentifierFactory.js +28 -24
- package/lib/factories/IdentifierFactory.js.map +1 -1
- package/lib/factories/LiteralFactory.d.ts +2 -2
- package/lib/factories/LiteralFactory.js +37 -43
- package/lib/factories/LiteralFactory.js.map +1 -1
- package/lib/factories/MetadataCollection.d.ts +24 -7
- package/lib/factories/MetadataCollection.js +126 -39
- package/lib/factories/MetadataCollection.js.map +1 -1
- package/lib/factories/MetadataFactory.d.ts +7 -3
- package/lib/factories/MetadataFactory.js +9 -53
- package/lib/factories/MetadataFactory.js.map +1 -1
- package/lib/factories/MetadataTagFactory.d.ts +2 -2
- package/lib/factories/MetadataTagFactory.js +8 -23
- package/lib/factories/MetadataTagFactory.js.map +1 -1
- package/lib/factories/StatementFactory.d.ts +3 -2
- package/lib/factories/StatementFactory.js +13 -6
- package/lib/factories/StatementFactory.js.map +1 -1
- package/lib/factories/TemplateFactory.d.ts +2 -2
- package/lib/factories/TemplateFactory.js +36 -38
- package/lib/factories/TemplateFactory.js.map +1 -1
- package/lib/factories/TypeFactory.d.ts +6 -7
- package/lib/factories/TypeFactory.js +55 -75
- package/lib/factories/TypeFactory.js.map +1 -1
- package/lib/factories/ValueFactory.d.ts +6 -6
- package/lib/factories/ValueFactory.js +15 -15
- package/lib/factories/ValueFactory.js.map +1 -1
- package/lib/factories/internal/metadata/MetadataHelper.js +1 -1
- package/lib/factories/internal/metadata/MetadataHelper.js.map +1 -1
- package/lib/factories/internal/metadata/emplace_metadata_array.d.ts +5 -0
- package/lib/factories/internal/metadata/emplace_metadata_array.js +38 -0
- package/lib/factories/internal/metadata/emplace_metadata_array.js.map +1 -0
- package/lib/factories/internal/metadata/emplace_metadata_definition.d.ts +5 -0
- package/lib/factories/internal/metadata/emplace_metadata_definition.js +38 -0
- package/lib/factories/internal/metadata/emplace_metadata_definition.js.map +1 -0
- package/lib/factories/internal/metadata/emplace_metadata_object.d.ts +2 -3
- package/lib/factories/internal/metadata/emplace_metadata_object.js +44 -62
- package/lib/factories/internal/metadata/emplace_metadata_object.js.map +1 -1
- package/lib/factories/internal/metadata/emplace_metadata_tuple.d.ts +5 -0
- package/lib/factories/internal/metadata/emplace_metadata_tuple.js +58 -0
- package/lib/factories/internal/metadata/emplace_metadata_tuple.js.map +1 -0
- package/lib/factories/internal/metadata/explore_metadata.d.ts +2 -3
- package/lib/factories/internal/metadata/explore_metadata.js +38 -70
- package/lib/factories/internal/metadata/explore_metadata.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata.d.ts +2 -3
- package/lib/factories/internal/metadata/iterate_metadata.js +20 -24
- package/lib/factories/internal/metadata/iterate_metadata.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_array.d.ts +2 -3
- package/lib/factories/internal/metadata/iterate_metadata_array.js +9 -12
- 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 +24 -26
- 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_collection.d.ts +2 -0
- package/lib/factories/internal/metadata/iterate_metadata_collection.js +151 -0
- package/lib/factories/internal/metadata/iterate_metadata_collection.js.map +1 -0
- package/lib/factories/internal/metadata/iterate_metadata_constant.d.ts +2 -3
- package/lib/factories/internal/metadata/iterate_metadata_constant.js +29 -29
- package/lib/factories/internal/metadata/iterate_metadata_constant.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_definition.d.ts +5 -0
- package/lib/factories/internal/metadata/iterate_metadata_definition.js +24 -0
- package/lib/factories/internal/metadata/iterate_metadata_definition.js.map +1 -0
- package/lib/factories/internal/metadata/iterate_metadata_map.d.ts +2 -3
- package/lib/factories/internal/metadata/iterate_metadata_map.js +16 -18
- package/lib/factories/internal/metadata/iterate_metadata_map.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_native.d.ts +2 -3
- package/lib/factories/internal/metadata/iterate_metadata_native.js +37 -39
- package/lib/factories/internal/metadata/iterate_metadata_native.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_object.d.ts +2 -3
- package/lib/factories/internal/metadata/iterate_metadata_object.js +23 -25
- package/lib/factories/internal/metadata/iterate_metadata_object.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_resolve.d.ts +2 -3
- package/lib/factories/internal/metadata/iterate_metadata_resolve.js +10 -15
- package/lib/factories/internal/metadata/iterate_metadata_resolve.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_set.d.ts +2 -3
- package/lib/factories/internal/metadata/iterate_metadata_set.js +12 -14
- package/lib/factories/internal/metadata/iterate_metadata_set.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_sort.d.ts +3 -0
- package/lib/factories/internal/metadata/iterate_metadata_sort.js +156 -0
- package/lib/factories/internal/metadata/iterate_metadata_sort.js.map +1 -0
- package/lib/factories/internal/metadata/iterate_metadata_template.d.ts +2 -3
- package/lib/factories/internal/metadata/iterate_metadata_template.js +20 -21
- package/lib/factories/internal/metadata/iterate_metadata_template.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_tuple.d.ts +2 -3
- package/lib/factories/internal/metadata/iterate_metadata_tuple.js +8 -32
- package/lib/factories/internal/metadata/iterate_metadata_tuple.js.map +1 -1
- package/lib/factories/internal/metadata/iterate_metadata_union.d.ts +2 -3
- package/lib/factories/internal/metadata/iterate_metadata_union.js +54 -55
- package/lib/factories/internal/metadata/iterate_metadata_union.js.map +1 -1
- package/lib/functional/$dictionary.js +0 -3
- package/lib/functional/$dictionary.js.map +1 -1
- package/lib/functional/$guard.js +0 -20
- package/lib/functional/$guard.js.map +1 -1
- package/lib/functional/$string.js +0 -5
- package/lib/functional/$string.js.map +1 -1
- package/lib/functional/$tail.js +0 -3
- package/lib/functional/$tail.js.map +1 -1
- package/lib/functional/Namespace.js +1 -6
- package/lib/functional/Namespace.js.map +1 -1
- package/lib/metadata/IMetadata.d.ts +3 -2
- package/lib/metadata/IMetadataAlias.d.ts +10 -0
- package/lib/metadata/IMetadataAlias.js +3 -0
- package/lib/metadata/IMetadataAlias.js.map +1 -0
- package/lib/metadata/IMetadataApplication.d.ts +2 -2
- package/lib/metadata/IMetadataArray.d.ts +8 -0
- package/lib/metadata/IMetadataArray.js +3 -0
- package/lib/metadata/IMetadataArray.js.map +1 -0
- package/lib/metadata/IMetadataCollection.d.ts +10 -0
- package/lib/metadata/IMetadataCollection.js +3 -0
- package/lib/metadata/IMetadataCollection.js.map +1 -0
- package/lib/metadata/IMetadataDictionary.js +3 -0
- package/lib/metadata/IMetadataDictionary.js.map +1 -0
- package/lib/metadata/IMetadataObject.d.ts +3 -0
- package/lib/metadata/IMetadataProperty.d.ts +1 -1
- package/lib/metadata/IMetadataTuple.d.ts +8 -0
- package/lib/metadata/IMetadataTuple.js +3 -0
- package/lib/metadata/IMetadataTuple.js.map +1 -0
- package/lib/metadata/Metadata.d.ts +24 -21
- package/lib/metadata/Metadata.js +326 -334
- package/lib/metadata/Metadata.js.map +1 -1
- package/lib/metadata/MetadataAlias.d.ts +16 -0
- package/lib/metadata/MetadataAlias.js +39 -0
- package/lib/metadata/MetadataAlias.js.map +1 -0
- package/lib/metadata/MetadataArray.d.ts +12 -0
- package/lib/metadata/MetadataArray.js +36 -0
- package/lib/metadata/MetadataArray.js.map +1 -0
- package/lib/metadata/MetadataObject.d.ts +4 -0
- package/lib/metadata/MetadataObject.js +6 -28
- package/lib/metadata/MetadataObject.js.map +1 -1
- package/lib/metadata/MetadataProperty.d.ts +1 -1
- package/lib/metadata/MetadataProperty.js +4 -16
- package/lib/metadata/MetadataProperty.js.map +1 -1
- package/lib/metadata/MetadataTuple.d.ts +12 -0
- package/lib/metadata/MetadataTuple.js +36 -0
- package/lib/metadata/MetadataTuple.js.map +1 -0
- package/lib/module.js +0 -186
- package/lib/module.js.map +1 -1
- package/lib/programmers/ApplicationProgrammer.d.ts +4 -0
- package/lib/programmers/ApplicationProgrammer.js +5 -7
- package/lib/programmers/ApplicationProgrammer.js.map +1 -1
- package/lib/programmers/AssertCloneProgrammer.d.ts +6 -2
- package/lib/programmers/AssertCloneProgrammer.js +19 -10
- package/lib/programmers/AssertCloneProgrammer.js.map +1 -1
- package/lib/programmers/AssertParseProgrammer.d.ts +6 -2
- package/lib/programmers/AssertParseProgrammer.js +17 -8
- package/lib/programmers/AssertParseProgrammer.js.map +1 -1
- package/lib/programmers/AssertProgrammer.d.ts +6 -2
- 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 +14 -13
- package/lib/programmers/AssertPruneProgrammer.js.map +1 -1
- package/lib/programmers/AssertStringifyProgrammer.d.ts +6 -2
- package/lib/programmers/AssertStringifyProgrammer.js +18 -9
- package/lib/programmers/AssertStringifyProgrammer.js.map +1 -1
- package/lib/programmers/CheckerProgrammer.d.ts +8 -10
- package/lib/programmers/CheckerProgrammer.js +349 -274
- package/lib/programmers/CheckerProgrammer.js.map +1 -1
- package/lib/programmers/CloneProgrammer.d.ts +6 -2
- package/lib/programmers/CloneProgrammer.js +319 -235
- package/lib/programmers/CloneProgrammer.js.map +1 -1
- package/lib/programmers/FeatureProgrammer.d.ts +23 -30
- package/lib/programmers/FeatureProgrammer.js +110 -131
- package/lib/programmers/FeatureProgrammer.js.map +1 -1
- package/lib/programmers/IsCloneProgrammer.d.ts +6 -2
- package/lib/programmers/IsCloneProgrammer.js +22 -13
- package/lib/programmers/IsCloneProgrammer.js.map +1 -1
- package/lib/programmers/IsParseProgrammer.d.ts +6 -2
- package/lib/programmers/IsParseProgrammer.js +17 -8
- package/lib/programmers/IsParseProgrammer.js.map +1 -1
- package/lib/programmers/IsProgrammer.d.ts +9 -9
- package/lib/programmers/IsProgrammer.js +116 -112
- package/lib/programmers/IsProgrammer.js.map +1 -1
- package/lib/programmers/IsPruneProgrammer.d.ts +2 -2
- package/lib/programmers/IsPruneProgrammer.js +14 -13
- package/lib/programmers/IsPruneProgrammer.js.map +1 -1
- package/lib/programmers/IsStringifyProgrammer.d.ts +6 -2
- package/lib/programmers/IsStringifyProgrammer.js +20 -11
- package/lib/programmers/IsStringifyProgrammer.js.map +1 -1
- package/lib/programmers/LiteralsProgrammer.d.ts +2 -2
- package/lib/programmers/LiteralsProgrammer.js +15 -13
- package/lib/programmers/LiteralsProgrammer.js.map +1 -1
- package/lib/programmers/PruneProgrammer.d.ts +2 -2
- package/lib/programmers/PruneProgrammer.js +293 -218
- package/lib/programmers/PruneProgrammer.js.map +1 -1
- package/lib/programmers/RandomProgrammer.d.ts +6 -2
- package/lib/programmers/RandomProgrammer.js +346 -272
- package/lib/programmers/RandomProgrammer.js.map +1 -1
- package/lib/programmers/StringifyProgrammer.d.ts +6 -2
- package/lib/programmers/StringifyProgrammer.js +490 -426
- package/lib/programmers/StringifyProgrammer.js.map +1 -1
- package/lib/programmers/TypiaProgrammer.js +44 -57
- package/lib/programmers/TypiaProgrammer.js.map +1 -1
- package/lib/programmers/ValidateCloneProgrammer.d.ts +2 -2
- package/lib/programmers/ValidateCloneProgrammer.js +14 -13
- package/lib/programmers/ValidateCloneProgrammer.js.map +1 -1
- package/lib/programmers/ValidateParseProgrammer.d.ts +2 -2
- package/lib/programmers/ValidateParseProgrammer.js +13 -12
- package/lib/programmers/ValidateParseProgrammer.js.map +1 -1
- package/lib/programmers/ValidateProgrammer.d.ts +2 -2
- package/lib/programmers/ValidateProgrammer.js +97 -102
- package/lib/programmers/ValidateProgrammer.js.map +1 -1
- package/lib/programmers/ValidatePruneProgrammer.d.ts +2 -2
- package/lib/programmers/ValidatePruneProgrammer.js +14 -13
- package/lib/programmers/ValidatePruneProgrammer.js.map +1 -1
- package/lib/programmers/ValidateStringifyProgrammer.d.ts +2 -2
- package/lib/programmers/ValidateStringifyProgrammer.js +14 -13
- package/lib/programmers/ValidateStringifyProgrammer.js.map +1 -1
- package/lib/programmers/helpers/AtomicPredicator.js +1 -1
- package/lib/programmers/helpers/AtomicPredicator.js.map +1 -1
- package/lib/programmers/helpers/CloneJoiner.d.ts +4 -4
- package/lib/programmers/helpers/CloneJoiner.js +44 -44
- package/lib/programmers/helpers/CloneJoiner.js.map +1 -1
- package/lib/programmers/helpers/FunctionImporeter.d.ts +3 -3
- package/lib/programmers/helpers/FunctionImporeter.js +25 -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/OptionPredicator.js +1 -1
- package/lib/programmers/helpers/OptionPredicator.js.map +1 -1
- package/lib/programmers/helpers/PruneJoiner.d.ts +4 -4
- package/lib/programmers/helpers/PruneJoiner.js +48 -55
- package/lib/programmers/helpers/PruneJoiner.js.map +1 -1
- package/lib/programmers/helpers/RandomJoiner.d.ts +9 -4
- package/lib/programmers/helpers/RandomJoiner.js +57 -66
- package/lib/programmers/helpers/RandomJoiner.js.map +1 -1
- package/lib/programmers/helpers/RandomRanger.d.ts +3 -3
- package/lib/programmers/helpers/RandomRanger.js +82 -92
- package/lib/programmers/helpers/RandomRanger.js.map +1 -1
- package/lib/programmers/helpers/StringifyJoinder.d.ts +4 -4
- package/lib/programmers/helpers/StringifyJoinder.js +55 -63
- package/lib/programmers/helpers/StringifyJoinder.js.map +1 -1
- package/lib/programmers/helpers/StringifyPredicator.js +1 -1
- package/lib/programmers/helpers/StringifyPredicator.js.map +1 -1
- package/lib/programmers/helpers/UnionExplorer.d.ts +15 -14
- package/lib/programmers/helpers/UnionExplorer.js +108 -112
- package/lib/programmers/helpers/UnionExplorer.js.map +1 -1
- package/lib/programmers/helpers/UnionPredicator.js +2 -7
- package/lib/programmers/helpers/UnionPredicator.js.map +1 -1
- package/lib/programmers/helpers/disable_function_importer_declare.js +1 -0
- package/lib/programmers/helpers/disable_function_importer_declare.js.map +1 -1
- package/lib/programmers/internal/JSON_SCHEMA_PREFIX.d.ts +1 -1
- package/lib/programmers/internal/JSON_SCHEMA_PREFIX.js +2 -2
- package/lib/programmers/internal/JSON_SCHEMA_PREFIX.js.map +1 -1
- package/lib/programmers/internal/application_array.js +41 -26
- package/lib/programmers/internal/application_array.js.map +1 -1
- package/lib/programmers/internal/application_boolean.js +1 -4
- package/lib/programmers/internal/application_boolean.js.map +1 -1
- package/lib/programmers/internal/application_constant.js +2 -5
- package/lib/programmers/internal/application_constant.js.map +1 -1
- package/lib/programmers/internal/application_default.js +3 -6
- package/lib/programmers/internal/application_default.js.map +1 -1
- package/lib/programmers/internal/application_default_string.js +0 -5
- package/lib/programmers/internal/application_default_string.js.map +1 -1
- package/lib/programmers/internal/application_definition.d.ts +5 -0
- package/lib/programmers/internal/application_definition.js +45 -0
- package/lib/programmers/internal/application_definition.js.map +1 -0
- package/lib/programmers/internal/application_native.js +14 -14
- package/lib/programmers/internal/application_native.js.map +1 -1
- package/lib/programmers/internal/application_number.js +0 -9
- package/lib/programmers/internal/application_number.js.map +1 -1
- package/lib/programmers/internal/application_object.js +20 -24
- package/lib/programmers/internal/application_object.js.map +1 -1
- package/lib/programmers/internal/application_schema.js +28 -54
- package/lib/programmers/internal/application_schema.js.map +1 -1
- package/lib/programmers/internal/application_string.js +0 -9
- package/lib/programmers/internal/application_string.js.map +1 -1
- package/lib/programmers/internal/application_templates.js +0 -6
- package/lib/programmers/internal/application_templates.js.map +1 -1
- package/lib/programmers/internal/application_tuple.js +34 -8
- package/lib/programmers/internal/application_tuple.js.map +1 -1
- package/lib/programmers/internal/check_array.js +7 -12
- package/lib/programmers/internal/check_array.js.map +1 -1
- package/lib/programmers/internal/check_array_length.js +9 -8
- package/lib/programmers/internal/check_array_length.js.map +1 -1
- package/lib/programmers/internal/check_bigint.js +70 -71
- package/lib/programmers/internal/check_bigint.js.map +1 -1
- package/lib/programmers/internal/check_custom.js +19 -20
- package/lib/programmers/internal/check_custom.js.map +1 -1
- package/lib/programmers/internal/check_dynamic_properties.js +69 -82
- package/lib/programmers/internal/check_dynamic_properties.js.map +1 -1
- package/lib/programmers/internal/check_everything.js +10 -9
- package/lib/programmers/internal/check_everything.js.map +1 -1
- package/lib/programmers/internal/check_native.js +8 -7
- package/lib/programmers/internal/check_native.js.map +1 -1
- package/lib/programmers/internal/check_number.js +22 -27
- package/lib/programmers/internal/check_number.js.map +1 -1
- package/lib/programmers/internal/check_object.js +19 -32
- package/lib/programmers/internal/check_object.js.map +1 -1
- package/lib/programmers/internal/check_string.js +11 -12
- package/lib/programmers/internal/check_string.js.map +1 -1
- package/lib/programmers/internal/check_string_tags.js +50 -51
- package/lib/programmers/internal/check_string_tags.js.map +1 -1
- package/lib/programmers/internal/check_template.js +23 -27
- package/lib/programmers/internal/check_template.js.map +1 -1
- package/lib/programmers/internal/check_union_array_like.js +58 -83
- package/lib/programmers/internal/check_union_array_like.js.map +1 -1
- package/lib/programmers/internal/decode_union_object.js +21 -24
- package/lib/programmers/internal/decode_union_object.js.map +1 -1
- package/lib/programmers/internal/feature_object_entries.js +32 -33
- package/lib/programmers/internal/feature_object_entries.js.map +1 -1
- package/lib/programmers/internal/get_comment_tags.js +0 -3
- package/lib/programmers/internal/get_comment_tags.js.map +1 -1
- package/lib/programmers/internal/metadata_to_pattern.js +0 -3
- package/lib/programmers/internal/metadata_to_pattern.js.map +1 -1
- package/lib/programmers/internal/prune_object_properties.js +14 -15
- package/lib/programmers/internal/prune_object_properties.js.map +1 -1
- package/lib/programmers/internal/random_custom.js +9 -10
- package/lib/programmers/internal/random_custom.js.map +1 -1
- package/lib/programmers/internal/stringify_dynamic_properties.js +54 -65
- package/lib/programmers/internal/stringify_dynamic_properties.js.map +1 -1
- package/lib/programmers/internal/stringify_native.js +6 -5
- package/lib/programmers/internal/stringify_native.js.map +1 -1
- package/lib/programmers/internal/stringify_regular_properties.js +41 -46
- package/lib/programmers/internal/stringify_regular_properties.js.map +1 -1
- package/lib/programmers/internal/template_to_pattern.js +0 -3
- package/lib/programmers/internal/template_to_pattern.js.map +1 -1
- package/lib/programmers/internal/wrap_metadata_rest_tuple.d.ts +2 -0
- package/lib/programmers/internal/wrap_metadata_rest_tuple.js +18 -0
- package/lib/programmers/internal/wrap_metadata_rest_tuple.js.map +1 -0
- package/lib/schemas/IJsonApplication.d.ts +0 -4
- package/lib/schemas/IJsonComponents.d.ts +16 -4
- package/lib/schemas/IJsonSchema.d.ts +1 -1
- package/lib/transform.d.ts +3 -3
- package/lib/transform.js +10 -28
- package/lib/transform.js.map +1 -1
- package/lib/transformers/CallExpressionTransformer.d.ts +1 -1
- package/lib/transformers/CallExpressionTransformer.js +5 -33
- package/lib/transformers/CallExpressionTransformer.js.map +1 -1
- package/lib/transformers/FileTransformer.d.ts +1 -1
- package/lib/transformers/FileTransformer.js +11 -8
- package/lib/transformers/FileTransformer.js.map +1 -1
- package/lib/transformers/IProject.d.ts +1 -8
- package/lib/transformers/ImportTransformer.d.ts +2 -2
- package/lib/transformers/ImportTransformer.js +35 -47
- package/lib/transformers/ImportTransformer.js.map +1 -1
- package/lib/transformers/NodeTransformer.d.ts +1 -1
- package/lib/transformers/NodeTransformer.js +6 -2
- 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 +20 -29
- 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/AssertCloneTransformer.js +1 -1
- package/lib/transformers/features/miscellaneous/AssertCloneTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/AssertPruneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/AssertPruneTransformer.js +1 -1
- package/lib/transformers/features/miscellaneous/AssertPruneTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/CloneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/CloneTransformer.js +1 -1
- package/lib/transformers/features/miscellaneous/CloneTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/CreateAssertCloneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/CreateAssertCloneTransformer.js +1 -1
- package/lib/transformers/features/miscellaneous/CreateAssertCloneTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/CreateAssertPruneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/CreateAssertPruneTransformer.js +1 -1
- package/lib/transformers/features/miscellaneous/CreateAssertPruneTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/CreateCloneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/CreateCloneTransformer.js +1 -1
- package/lib/transformers/features/miscellaneous/CreateCloneTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/CreateIsCloneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/CreateIsCloneTransformer.js +1 -1
- package/lib/transformers/features/miscellaneous/CreateIsCloneTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/CreateIsPruneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/CreateIsPruneTransformer.js +1 -1
- package/lib/transformers/features/miscellaneous/CreateIsPruneTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/CreatePruneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/CreatePruneTransformer.js +1 -1
- package/lib/transformers/features/miscellaneous/CreatePruneTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/CreateRandomTransformer.d.ts +2 -2
- package/lib/transformers/features/miscellaneous/CreateRandomTransformer.js +5 -10
- 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/CreateValidateCloneTransformer.js +1 -1
- package/lib/transformers/features/miscellaneous/CreateValidateCloneTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/CreateValidatePruneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/CreateValidatePruneTransformer.js +1 -1
- package/lib/transformers/features/miscellaneous/CreateValidatePruneTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/IsCloneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/IsCloneTransformer.js +1 -1
- package/lib/transformers/features/miscellaneous/IsCloneTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/IsPruneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/IsPruneTransformer.js +1 -1
- package/lib/transformers/features/miscellaneous/IsPruneTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/LiteralsTransformer.d.ts +2 -2
- package/lib/transformers/features/miscellaneous/LiteralsTransformer.js +5 -9
- 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 +17 -16
- 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/PruneTransformer.js +1 -1
- package/lib/transformers/features/miscellaneous/PruneTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/RandomTransformer.d.ts +2 -2
- package/lib/transformers/features/miscellaneous/RandomTransformer.js +9 -10
- 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/ValidateCloneTransformer.js +1 -1
- package/lib/transformers/features/miscellaneous/ValidateCloneTransformer.js.map +1 -1
- package/lib/transformers/features/miscellaneous/ValidatePruneTransformer.d.ts +1 -1
- package/lib/transformers/features/miscellaneous/ValidatePruneTransformer.js +1 -1
- package/lib/transformers/features/miscellaneous/ValidatePruneTransformer.js.map +1 -1
- package/lib/transformers/features/parsers/AssertParseTransformer.d.ts +1 -1
- package/lib/transformers/features/parsers/AssertParseTransformer.js +1 -1
- package/lib/transformers/features/parsers/AssertParseTransformer.js.map +1 -1
- package/lib/transformers/features/parsers/CreateAssertParseTransformer.d.ts +1 -1
- package/lib/transformers/features/parsers/CreateAssertParseTransformer.js +1 -1
- package/lib/transformers/features/parsers/CreateAssertParseTransformer.js.map +1 -1
- package/lib/transformers/features/parsers/CreateIsParseTransformer.d.ts +1 -1
- package/lib/transformers/features/parsers/CreateIsParseTransformer.js +1 -1
- package/lib/transformers/features/parsers/CreateIsParseTransformer.js.map +1 -1
- package/lib/transformers/features/parsers/CreateValidateParseTransformer.d.ts +1 -1
- package/lib/transformers/features/parsers/CreateValidateParseTransformer.js +1 -1
- package/lib/transformers/features/parsers/CreateValidateParseTransformer.js.map +1 -1
- package/lib/transformers/features/parsers/IsParseTransformer.d.ts +1 -1
- package/lib/transformers/features/parsers/IsParseTransformer.js +1 -1
- package/lib/transformers/features/parsers/IsParseTransformer.js.map +1 -1
- package/lib/transformers/features/parsers/ValidateParseTransformer.d.ts +1 -1
- package/lib/transformers/features/parsers/ValidateParseTransformer.js +1 -1
- package/lib/transformers/features/parsers/ValidateParseTransformer.js.map +1 -1
- package/lib/transformers/features/stringifiers/AssertStringifyTransformer.d.ts +1 -1
- package/lib/transformers/features/stringifiers/AssertStringifyTransformer.js +1 -1
- package/lib/transformers/features/stringifiers/AssertStringifyTransformer.js.map +1 -1
- package/lib/transformers/features/stringifiers/CreateAssertStringifyTransformer.d.ts +1 -1
- package/lib/transformers/features/stringifiers/CreateAssertStringifyTransformer.js +1 -1
- package/lib/transformers/features/stringifiers/CreateAssertStringifyTransformer.js.map +1 -1
- package/lib/transformers/features/stringifiers/CreateIsStringifyTransformer.d.ts +1 -1
- package/lib/transformers/features/stringifiers/CreateIsStringifyTransformer.js +1 -1
- package/lib/transformers/features/stringifiers/CreateIsStringifyTransformer.js.map +1 -1
- package/lib/transformers/features/stringifiers/CreateStringifyTransformer.d.ts +1 -1
- package/lib/transformers/features/stringifiers/CreateStringifyTransformer.js +1 -1
- package/lib/transformers/features/stringifiers/CreateStringifyTransformer.js.map +1 -1
- package/lib/transformers/features/stringifiers/CreateValidateStringifyProgrammer.d.ts +1 -1
- package/lib/transformers/features/stringifiers/CreateValidateStringifyProgrammer.js +1 -1
- package/lib/transformers/features/stringifiers/CreateValidateStringifyProgrammer.js.map +1 -1
- package/lib/transformers/features/stringifiers/IsStringifyTransformer.d.ts +1 -1
- package/lib/transformers/features/stringifiers/IsStringifyTransformer.js +1 -1
- package/lib/transformers/features/stringifiers/IsStringifyTransformer.js.map +1 -1
- package/lib/transformers/features/stringifiers/StringifyTransformer.d.ts +1 -1
- package/lib/transformers/features/stringifiers/StringifyTransformer.js +1 -1
- package/lib/transformers/features/stringifiers/StringifyTransformer.js.map +1 -1
- package/lib/transformers/features/stringifiers/ValidateStringifyTransformer.d.ts +1 -1
- package/lib/transformers/features/stringifiers/ValidateStringifyTransformer.js +1 -1
- package/lib/transformers/features/stringifiers/ValidateStringifyTransformer.js.map +1 -1
- package/lib/transformers/features/validators/AssertTransformer.d.ts +1 -1
- package/lib/transformers/features/validators/AssertTransformer.js +1 -1
- package/lib/transformers/features/validators/AssertTransformer.js.map +1 -1
- package/lib/transformers/features/validators/CreateAssertTransformer.d.ts +1 -1
- package/lib/transformers/features/validators/CreateAssertTransformer.js +1 -1
- package/lib/transformers/features/validators/CreateAssertTransformer.js.map +1 -1
- package/lib/transformers/features/validators/CreateIsTransformer.d.ts +1 -1
- package/lib/transformers/features/validators/CreateIsTransformer.js +1 -1
- package/lib/transformers/features/validators/CreateIsTransformer.js.map +1 -1
- package/lib/transformers/features/validators/CreateValidateTransformer.d.ts +1 -1
- package/lib/transformers/features/validators/CreateValidateTransformer.js +1 -1
- package/lib/transformers/features/validators/CreateValidateTransformer.js.map +1 -1
- package/lib/transformers/features/validators/IsTransformer.d.ts +1 -1
- package/lib/transformers/features/validators/IsTransformer.js +1 -1
- package/lib/transformers/features/validators/IsTransformer.js.map +1 -1
- package/lib/transformers/features/validators/ValidateTransformer.d.ts +1 -1
- package/lib/transformers/features/validators/ValidateTransformer.js +1 -1
- package/lib/transformers/features/validators/ValidateTransformer.js.map +1 -1
- package/lib/transformers/internal/GenericTransformer.d.ts +3 -3
- package/lib/transformers/internal/GenericTransformer.js +18 -22
- package/lib/transformers/internal/GenericTransformer.js.map +1 -1
- package/lib/utils/ArrayUtil.d.ts +1 -1
- package/lib/utils/ArrayUtil.js +3 -2
- package/lib/utils/ArrayUtil.js.map +1 -1
- package/lib/utils/Escaper.js +1 -1
- package/lib/utils/Escaper.js.map +1 -1
- package/lib/utils/MapUtil.js +1 -1
- package/lib/utils/MapUtil.js.map +1 -1
- package/lib/utils/PatternUtil.js +1 -1
- package/lib/utils/PatternUtil.js.map +1 -1
- package/lib/utils/RandomGenerator.js +3 -13
- package/lib/utils/RandomGenerator.js.map +1 -1
- package/lib/utils/Singleton.js +1 -1
- package/package.json +14 -5
- package/src/CustomValidatorMap.ts +126 -126
- package/src/IRandomGenerator.ts +34 -33
- package/src/IValidation.ts +21 -21
- package/src/Primitive.ts +123 -123
- package/src/TypeGuardError.ts +36 -36
- package/src/executable/TypiaGenerateWizard.ts +85 -85
- package/src/executable/TypiaSetupWizard.ts +133 -133
- package/src/executable/setup/ArgumentParser.ts +45 -45
- package/src/executable/setup/CommandExecutor.ts +8 -8
- package/src/executable/setup/FileRetriever.ts +22 -22
- package/src/executable/setup/PackageManager.ts +71 -71
- package/src/executable/setup/PluginConfigurator.ts +70 -70
- package/src/executable/typia.ts +52 -52
- package/src/factories/CommentFactory.ts +74 -14
- package/src/factories/ExpressionFactory.ts +70 -77
- package/src/factories/IdentifierFactory.ts +65 -62
- package/src/factories/LiteralFactory.ts +39 -57
- package/src/factories/MetadataCollection.ts +254 -123
- package/src/factories/MetadataFactory.ts +40 -53
- package/src/factories/MetadataTagFactory.ts +298 -295
- package/src/factories/StatementFactory.ts +24 -20
- package/src/factories/TemplateFactory.ts +58 -64
- package/src/factories/TypeFactory.ts +124 -145
- package/src/factories/ValueFactory.ts +12 -15
- package/src/factories/internal/metadata/MetadataHelper.ts +12 -12
- package/src/factories/internal/metadata/emplace_metadata_array.ts +34 -0
- package/src/factories/internal/metadata/emplace_metadata_definition.ts +35 -0
- package/src/factories/internal/metadata/emplace_metadata_object.ts +142 -152
- package/src/factories/internal/metadata/emplace_metadata_tuple.ts +50 -0
- package/src/factories/internal/metadata/explore_metadata.ts +66 -93
- package/src/factories/internal/metadata/iterate_metadata.ts +77 -63
- package/src/factories/internal/metadata/iterate_metadata_array.ts +29 -32
- 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_collection.ts +130 -0
- package/src/factories/internal/metadata/iterate_metadata_constant.ts +58 -62
- package/src/factories/internal/metadata/iterate_metadata_definition.ts +30 -0
- package/src/factories/internal/metadata/iterate_metadata_map.ts +41 -41
- package/src/factories/internal/metadata/iterate_metadata_native.ts +219 -217
- package/src/factories/internal/metadata/iterate_metadata_object.ts +49 -51
- package/src/factories/internal/metadata/iterate_metadata_resolve.ts +27 -30
- package/src/factories/internal/metadata/iterate_metadata_set.ts +33 -36
- package/src/factories/internal/metadata/iterate_metadata_sort.ts +68 -0
- package/src/factories/internal/metadata/iterate_metadata_template.ts +38 -40
- package/src/factories/internal/metadata/iterate_metadata_tuple.ts +25 -51
- package/src/factories/internal/metadata/iterate_metadata_union.ts +68 -59
- package/src/functional/$any.ts +2 -2
- package/src/functional/$dictionary.ts +25 -25
- package/src/functional/$every.ts +11 -11
- package/src/functional/$guard.ts +35 -35
- package/src/functional/$is_between.ts +2 -2
- package/src/functional/$is_custom.ts +14 -14
- package/src/functional/$is_date.ts +3 -3
- package/src/functional/$is_datetime.ts +2 -2
- package/src/functional/$is_email.ts +4 -4
- package/src/functional/$is_ipv4.ts +4 -4
- package/src/functional/$is_ipv6.ts +4 -4
- package/src/functional/$is_url.ts +4 -4
- package/src/functional/$is_uuid.ts +4 -4
- package/src/functional/$join.ts +46 -46
- package/src/functional/$number.ts +12 -12
- package/src/functional/$report.ts +15 -15
- package/src/functional/$rest.ts +3 -3
- package/src/functional/$string.ts +37 -37
- package/src/functional/$tail.ts +5 -5
- package/src/functional/Namespace.ts +127 -127
- package/src/index.ts +4 -4
- package/src/metadata/ICommentTag.ts +4 -4
- package/src/metadata/IJsDocTagInfo.ts +10 -10
- package/src/metadata/IMetadata.ts +27 -26
- package/src/metadata/IMetadataAlias.ts +12 -0
- package/src/metadata/IMetadataApplication.ts +7 -7
- package/src/metadata/IMetadataArray.ts +10 -0
- package/src/metadata/IMetadataCollection.ts +11 -0
- package/src/metadata/IMetadataConstant.ts +16 -16
- package/src/metadata/IMetadataDictionary.ts +14 -0
- package/src/metadata/IMetadataEntry.ts +6 -6
- package/src/metadata/IMetadataObject.ts +18 -29
- package/src/metadata/IMetadataProperty.ts +11 -11
- package/src/metadata/IMetadataTag.ts +105 -105
- package/src/metadata/IMetadataTuple.ts +10 -0
- package/src/metadata/Metadata.ts +585 -539
- package/src/metadata/MetadataAlias.ts +61 -0
- package/src/metadata/MetadataArray.ts +52 -0
- package/src/metadata/MetadataConstant.ts +3 -3
- package/src/metadata/MetadataObject.ts +114 -127
- package/src/metadata/MetadataProperty.ts +64 -64
- package/src/metadata/MetadataTuple.ts +53 -0
- package/src/module.ts +2038 -2038
- package/src/programmers/ApplicationProgrammer.ts +55 -48
- package/src/programmers/AssertCloneProgrammer.ts +79 -68
- package/src/programmers/AssertParseProgrammer.ts +74 -66
- package/src/programmers/AssertProgrammer.ts +291 -274
- package/src/programmers/AssertPruneProgrammer.ts +76 -73
- package/src/programmers/AssertStringifyProgrammer.ts +74 -66
- package/src/programmers/CheckerProgrammer.ts +1182 -897
- package/src/programmers/CloneProgrammer.ts +595 -387
- package/src/programmers/FeatureProgrammer.ts +495 -510
- package/src/programmers/IsCloneProgrammer.ts +86 -79
- package/src/programmers/IsParseProgrammer.ts +80 -72
- package/src/programmers/IsProgrammer.ts +250 -223
- package/src/programmers/IsPruneProgrammer.ts +81 -83
- package/src/programmers/IsStringifyProgrammer.ts +84 -77
- package/src/programmers/LiteralsProgrammer.ts +66 -65
- package/src/programmers/PruneProgrammer.ts +550 -348
- package/src/programmers/RandomProgrammer.ts +589 -444
- package/src/programmers/StringifyProgrammer.ts +990 -758
- package/src/programmers/TypiaProgrammer.ts +129 -141
- package/src/programmers/ValidateCloneProgrammer.ts +93 -93
- package/src/programmers/ValidateParseProgrammer.ts +78 -78
- package/src/programmers/ValidateProgrammer.ts +313 -317
- package/src/programmers/ValidatePruneProgrammer.ts +86 -86
- package/src/programmers/ValidateStringifyProgrammer.ts +92 -93
- package/src/programmers/helpers/AtomicPredicator.ts +31 -31
- package/src/programmers/helpers/CloneJoiner.ts +131 -138
- package/src/programmers/helpers/FunctionImporeter.ts +78 -56
- package/src/programmers/helpers/ICheckEntry.ts +12 -12
- package/src/programmers/helpers/IExpressionEntry.ts +12 -12
- package/src/programmers/helpers/OptionPredicator.ts +15 -15
- package/src/programmers/helpers/PruneJoiner.ts +144 -156
- package/src/programmers/helpers/RandomJoiner.ts +173 -165
- package/src/programmers/helpers/RandomRanger.ts +216 -218
- package/src/programmers/helpers/StringifyJoinder.ts +113 -118
- package/src/programmers/helpers/StringifyPredicator.ts +12 -12
- package/src/programmers/helpers/UnionExplorer.ts +301 -281
- package/src/programmers/helpers/UnionPredicator.ts +81 -81
- package/src/programmers/helpers/disable_function_importer_declare.ts +26 -21
- package/src/programmers/internal/JSON_SCHEMA_PREFIX.ts +1 -1
- package/src/programmers/internal/application_array.ts +64 -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_default_string.ts +33 -33
- package/src/programmers/internal/application_definition.ts +45 -0
- package/src/programmers/internal/application_native.ts +39 -36
- package/src/programmers/internal/application_number.ts +71 -71
- package/src/programmers/internal/application_object.ts +167 -162
- package/src/programmers/internal/application_schema.ts +164 -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 +77 -27
- package/src/programmers/internal/check_array.ts +30 -31
- package/src/programmers/internal/check_array_length.ts +35 -35
- package/src/programmers/internal/check_bigint.ts +82 -95
- package/src/programmers/internal/check_custom.ts +31 -32
- package/src/programmers/internal/check_dynamic_properties.ts +194 -198
- package/src/programmers/internal/check_everything.ts +28 -28
- package/src/programmers/internal/check_native.ts +21 -22
- package/src/programmers/internal/check_number.ts +177 -177
- package/src/programmers/internal/check_object.ts +55 -65
- package/src/programmers/internal/check_string.ts +25 -27
- package/src/programmers/internal/check_string_tags.ts +67 -68
- package/src/programmers/internal/check_template.ts +56 -57
- package/src/programmers/internal/check_union_array_like.ts +329 -273
- package/src/programmers/internal/decode_union_object.ts +73 -75
- package/src/programmers/internal/feature_object_entries.ts +63 -64
- package/src/programmers/internal/get_comment_tags.ts +23 -23
- package/src/programmers/internal/metadata_to_pattern.ts +34 -34
- package/src/programmers/internal/prune_object_properties.ts +60 -63
- package/src/programmers/internal/random_custom.ts +29 -30
- package/src/programmers/internal/stringify_dynamic_properties.ts +167 -173
- package/src/programmers/internal/stringify_native.ts +7 -7
- package/src/programmers/internal/stringify_regular_properties.ts +83 -89
- package/src/programmers/internal/template_to_pattern.ts +15 -15
- package/src/programmers/internal/wrap_metadata_rest_tuple.ts +16 -0
- package/src/schemas/IJsonApplication.ts +8 -13
- package/src/schemas/IJsonComponents.ts +45 -33
- package/src/schemas/IJsonSchema.ts +134 -134
- package/src/transform.ts +17 -39
- package/src/transformers/CallExpressionTransformer.ts +179 -183
- package/src/transformers/FileTransformer.ts +47 -50
- package/src/transformers/IProject.ts +11 -18
- package/src/transformers/ITransformOptions.ts +62 -62
- package/src/transformers/ImportTransformer.ts +66 -74
- package/src/transformers/NodeTransformer.ts +13 -13
- package/src/transformers/features/miscellaneous/ApplicationTransformer.ts +104 -107
- package/src/transformers/features/miscellaneous/AssertCloneTransformer.ts +9 -9
- package/src/transformers/features/miscellaneous/AssertPruneTransformer.ts +9 -9
- package/src/transformers/features/miscellaneous/CloneTransformer.ts +9 -9
- package/src/transformers/features/miscellaneous/CreateAssertCloneTransformer.ts +9 -9
- package/src/transformers/features/miscellaneous/CreateAssertPruneTransformer.ts +9 -9
- package/src/transformers/features/miscellaneous/CreateCloneTransformer.ts +9 -9
- package/src/transformers/features/miscellaneous/CreateIsCloneTransformer.ts +9 -9
- package/src/transformers/features/miscellaneous/CreateIsPruneTransformer.ts +9 -9
- package/src/transformers/features/miscellaneous/CreatePruneTransformer.ts +9 -9
- package/src/transformers/features/miscellaneous/CreateRandomTransformer.ts +39 -43
- package/src/transformers/features/miscellaneous/CreateValidateCloneTransformer.ts +9 -9
- package/src/transformers/features/miscellaneous/CreateValidatePruneTransformer.ts +9 -9
- package/src/transformers/features/miscellaneous/IsCloneTransformer.ts +9 -9
- package/src/transformers/features/miscellaneous/IsPruneTransformer.ts +9 -9
- package/src/transformers/features/miscellaneous/LiteralsTransformer.ts +28 -31
- package/src/transformers/features/miscellaneous/MetadataTransformer.ts +53 -56
- package/src/transformers/features/miscellaneous/PruneTransformer.ts +9 -9
- package/src/transformers/features/miscellaneous/RandomTransformer.ts +42 -46
- package/src/transformers/features/miscellaneous/ValidateCloneTransformer.ts +9 -9
- package/src/transformers/features/miscellaneous/ValidatePruneTransformer.ts +9 -9
- package/src/transformers/features/parsers/AssertParseTransformer.ts +9 -9
- package/src/transformers/features/parsers/CreateAssertParseTransformer.ts +9 -9
- package/src/transformers/features/parsers/CreateIsParseTransformer.ts +9 -9
- package/src/transformers/features/parsers/CreateValidateParseTransformer.ts +9 -9
- package/src/transformers/features/parsers/IsParseTransformer.ts +9 -9
- package/src/transformers/features/parsers/ValidateParseTransformer.ts +9 -9
- package/src/transformers/features/stringifiers/AssertStringifyTransformer.ts +10 -10
- package/src/transformers/features/stringifiers/CreateAssertStringifyTransformer.ts +12 -12
- package/src/transformers/features/stringifiers/CreateIsStringifyTransformer.ts +9 -9
- package/src/transformers/features/stringifiers/CreateStringifyTransformer.ts +9 -9
- package/src/transformers/features/stringifiers/CreateValidateStringifyProgrammer.ts +12 -12
- package/src/transformers/features/stringifiers/IsStringifyTransformer.ts +9 -9
- package/src/transformers/features/stringifiers/StringifyTransformer.ts +9 -9
- package/src/transformers/features/stringifiers/ValidateStringifyTransformer.ts +10 -10
- package/src/transformers/features/validators/AssertTransformer.ts +11 -11
- package/src/transformers/features/validators/CreateAssertTransformer.ts +13 -13
- package/src/transformers/features/validators/CreateIsTransformer.ts +11 -11
- package/src/transformers/features/validators/CreateValidateTransformer.ts +13 -13
- package/src/transformers/features/validators/IsTransformer.ts +11 -11
- package/src/transformers/features/validators/ValidateTransformer.ts +11 -11
- package/src/transformers/internal/GenericTransformer.ts +97 -101
- package/src/typings/Atomic.ts +17 -17
- package/src/typings/ClassProperties.ts +5 -5
- package/src/typings/Customizable.ts +5 -5
- package/src/typings/OmitNever.ts +3 -3
- package/src/typings/SpecialFields.ts +3 -3
- package/src/typings/Writable.ts +11 -11
- package/src/utils/ArrayUtil.ts +45 -44
- package/src/utils/Escaper.ts +45 -45
- package/src/utils/MapUtil.ts +12 -12
- package/src/utils/PatternUtil.ts +30 -30
- package/src/utils/RandomGenerator.ts +81 -81
- package/src/utils/Singleton.ts +17 -17
- package/lib/programmers/internal/check_union_tuple.js +0 -19
- package/lib/programmers/internal/check_union_tuple.js.map +0 -1
- package/lib/utils/TsNodeUtil.d.ts +0 -5
- package/lib/utils/TsNodeUtil.js +0 -17
- package/lib/utils/TsNodeUtil.js.map +0 -1
- package/lib/utils/TsSymbolUtil.d.ts +0 -6
- package/lib/utils/TsSymbolUtil.js +0 -152
- package/lib/utils/TsSymbolUtil.js.map +0 -1
- package/lib/utils/TsTypeUtil.d.ts +0 -9
- package/lib/utils/TsTypeUtil.js +0 -40
- package/lib/utils/TsTypeUtil.js.map +0 -1
- package/src/programmers/internal/check_union_tuple.ts +0 -34
- package/src/utils/TsNodeUtil.ts +0 -17
- package/src/utils/TsSymbolUtil.ts +0 -153
- package/src/utils/TsTypeUtil.ts +0 -38
- /package/lib/{programmers/internal/check_union_tuple.d.ts → metadata/IMetadataDictionary.d.ts} +0 -0
|
@@ -37,60 +37,47 @@ var __values = (this && this.__values) || function(o) {
|
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.MetadataCollection = void 0;
|
|
40
|
+
var MetadataAlias_1 = require("../metadata/MetadataAlias");
|
|
41
|
+
var MetadataArray_1 = require("../metadata/MetadataArray");
|
|
40
42
|
var MetadataObject_1 = require("../metadata/MetadataObject");
|
|
43
|
+
var MetadataTuple_1 = require("../metadata/MetadataTuple");
|
|
44
|
+
var Writable_1 = require("../typings/Writable");
|
|
41
45
|
var MapUtil_1 = require("../utils/MapUtil");
|
|
42
|
-
var
|
|
46
|
+
var CommentFactory_1 = require("./CommentFactory");
|
|
43
47
|
var TypeFactory_1 = require("./TypeFactory");
|
|
44
|
-
var MetadataCollection =
|
|
48
|
+
var MetadataCollection = (function () {
|
|
45
49
|
function MetadataCollection(options) {
|
|
46
50
|
this.options = options;
|
|
47
|
-
this.
|
|
51
|
+
this.objects_ = new Map();
|
|
52
|
+
this.object_unions_ = new Map();
|
|
53
|
+
this.aliases_ = new Map();
|
|
54
|
+
this.arrays_ = new Map();
|
|
55
|
+
this.tuples_ = new Map();
|
|
48
56
|
this.names_ = new Map();
|
|
49
|
-
this.
|
|
50
|
-
this.
|
|
57
|
+
this.object_index_ = 0;
|
|
58
|
+
this.recursive_array_index_ = 0;
|
|
59
|
+
this.recursive_tuple_index_ = 0;
|
|
51
60
|
}
|
|
61
|
+
MetadataCollection.prototype.aliases = function () {
|
|
62
|
+
return __spreadArray([], __read(this.aliases_.values()), false);
|
|
63
|
+
};
|
|
52
64
|
MetadataCollection.prototype.objects = function () {
|
|
53
|
-
return __spreadArray([], __read(this.
|
|
65
|
+
return __spreadArray([], __read(this.objects_.values()), false);
|
|
54
66
|
};
|
|
55
67
|
MetadataCollection.prototype.unions = function () {
|
|
56
|
-
return __spreadArray([], __read(this.
|
|
68
|
+
return __spreadArray([], __read(this.object_unions_.values()), false);
|
|
57
69
|
};
|
|
58
|
-
MetadataCollection.prototype.
|
|
59
|
-
|
|
60
|
-
var oldbie = this.dict_.get(type);
|
|
61
|
-
if (oldbie !== undefined)
|
|
62
|
-
return [oldbie, false];
|
|
63
|
-
var $id = this.get_name(p, type);
|
|
64
|
-
var obj = MetadataObject_1.MetadataObject.create({
|
|
65
|
-
name: $id,
|
|
66
|
-
properties: [],
|
|
67
|
-
description: type.symbol
|
|
68
|
-
? TsSymbolUtil_1.TsSymbolUtil.comments(p.tsc)(type.symbol)
|
|
69
|
-
: undefined,
|
|
70
|
-
jsDocTags: (_a = (type.symbol
|
|
71
|
-
? TsSymbolUtil_1.TsSymbolUtil.getCommentTags(p.tsc)(type.symbol)
|
|
72
|
-
: undefined)) !== null && _a !== void 0 ? _a : [],
|
|
73
|
-
validated: false,
|
|
74
|
-
index: this.index_++,
|
|
75
|
-
recursive: false,
|
|
76
|
-
nullables: [],
|
|
77
|
-
});
|
|
78
|
-
this.dict_.set(type, obj);
|
|
79
|
-
return [obj, true];
|
|
70
|
+
MetadataCollection.prototype.arrays = function () {
|
|
71
|
+
return __spreadArray([], __read(this.arrays_.values()), false);
|
|
80
72
|
};
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
*/
|
|
84
|
-
MetadataCollection.prototype.getUnionIndex = function (meta) {
|
|
85
|
-
var key = meta.objects.map(function (obj) { return obj.name; }).join(" | ");
|
|
86
|
-
MapUtil_1.MapUtil.take(this.unions_)(key, function () { return meta.objects; });
|
|
87
|
-
return __spreadArray([], __read(this.unions_.keys()), false).indexOf(key);
|
|
73
|
+
MetadataCollection.prototype.tuples = function () {
|
|
74
|
+
return __spreadArray([], __read(this.tuples_.values()), false);
|
|
88
75
|
};
|
|
89
|
-
MetadataCollection.prototype.
|
|
76
|
+
MetadataCollection.prototype.getName = function (checker, type) {
|
|
90
77
|
var _this = this;
|
|
91
78
|
var name = (function () {
|
|
92
79
|
var _a;
|
|
93
|
-
var str = TypeFactory_1.TypeFactory.getFullName(
|
|
80
|
+
var str = TypeFactory_1.TypeFactory.getFullName(checker)(type);
|
|
94
81
|
return ((_a = _this.options) === null || _a === void 0 ? void 0 : _a.replace) ? _this.options.replace(str) : str;
|
|
95
82
|
})();
|
|
96
83
|
var duplicates = MapUtil_1.MapUtil.take(this.names_)(name, function () { return new Map(); });
|
|
@@ -103,6 +90,105 @@ var MetadataCollection = /** @class */ (function () {
|
|
|
103
90
|
duplicates.set(type, addicted);
|
|
104
91
|
return addicted;
|
|
105
92
|
};
|
|
93
|
+
MetadataCollection.prototype.getUnionIndex = function (meta) {
|
|
94
|
+
var key = meta.objects.map(function (obj) { return obj.name; }).join(" | ");
|
|
95
|
+
MapUtil_1.MapUtil.take(this.object_unions_)(key, function () { return meta.objects; });
|
|
96
|
+
return __spreadArray([], __read(this.object_unions_.keys()), false).indexOf(key);
|
|
97
|
+
};
|
|
98
|
+
MetadataCollection.prototype.emplace = function (checker, type) {
|
|
99
|
+
var _a, _b, _c;
|
|
100
|
+
var oldbie = this.objects_.get(type);
|
|
101
|
+
if (oldbie !== undefined)
|
|
102
|
+
return [oldbie, false];
|
|
103
|
+
var $id = this.getName(checker, type);
|
|
104
|
+
var obj = MetadataObject_1.MetadataObject.create({
|
|
105
|
+
name: $id,
|
|
106
|
+
properties: [],
|
|
107
|
+
description: (_a = (type.symbol && CommentFactory_1.CommentFactory.description(type.symbol))) !== null && _a !== void 0 ? _a : undefined,
|
|
108
|
+
jsDocTags: (_c = (_b = type.symbol) === null || _b === void 0 ? void 0 : _b.getJsDocTags()) !== null && _c !== void 0 ? _c : [],
|
|
109
|
+
validated: false,
|
|
110
|
+
index: this.object_index_++,
|
|
111
|
+
recursive: null,
|
|
112
|
+
nullables: [],
|
|
113
|
+
});
|
|
114
|
+
this.objects_.set(type, obj);
|
|
115
|
+
return [obj, true];
|
|
116
|
+
};
|
|
117
|
+
MetadataCollection.prototype.emplaceAlias = function (checker, type, symbol) {
|
|
118
|
+
var _a, _b;
|
|
119
|
+
var oldbie = this.aliases_.get(type);
|
|
120
|
+
if (oldbie !== undefined)
|
|
121
|
+
return [oldbie, false, function () { }];
|
|
122
|
+
var $id = this.getName(checker, type);
|
|
123
|
+
var alias = MetadataAlias_1.MetadataAlias.create({
|
|
124
|
+
name: $id,
|
|
125
|
+
value: null,
|
|
126
|
+
description: (_a = CommentFactory_1.CommentFactory.description(symbol)) !== null && _a !== void 0 ? _a : null,
|
|
127
|
+
recursive: null,
|
|
128
|
+
nullables: [],
|
|
129
|
+
jsDocTags: (_b = symbol.getJsDocTags()) !== null && _b !== void 0 ? _b : [],
|
|
130
|
+
});
|
|
131
|
+
this.aliases_.set(type, alias);
|
|
132
|
+
return [alias, true, function (meta) { return ((0, Writable_1.Writable)(alias).value = meta); }];
|
|
133
|
+
};
|
|
134
|
+
MetadataCollection.prototype.emplaceArray = function (checker, type) {
|
|
135
|
+
var oldbie = this.arrays_.get(type);
|
|
136
|
+
if (oldbie !== undefined)
|
|
137
|
+
return [oldbie, false, function () { }];
|
|
138
|
+
var $id = this.getName(checker, type);
|
|
139
|
+
var array = MetadataArray_1.MetadataArray.create({
|
|
140
|
+
name: $id,
|
|
141
|
+
value: null,
|
|
142
|
+
index: null,
|
|
143
|
+
recursive: null,
|
|
144
|
+
nullables: [],
|
|
145
|
+
});
|
|
146
|
+
this.arrays_.set(type, array);
|
|
147
|
+
return [array, true, function (meta) { return ((0, Writable_1.Writable)(array).value = meta); }];
|
|
148
|
+
};
|
|
149
|
+
MetadataCollection.prototype.emplaceTuple = function (checker, type) {
|
|
150
|
+
var oldbie = this.tuples_.get(type);
|
|
151
|
+
if (oldbie !== undefined)
|
|
152
|
+
return [oldbie, false, function () { }];
|
|
153
|
+
var $id = this.getName(checker, type);
|
|
154
|
+
var tuple = MetadataTuple_1.MetadataTuple.create({
|
|
155
|
+
name: $id,
|
|
156
|
+
elements: null,
|
|
157
|
+
index: null,
|
|
158
|
+
recursive: null,
|
|
159
|
+
nullables: [],
|
|
160
|
+
});
|
|
161
|
+
this.tuples_.set(type, tuple);
|
|
162
|
+
return [
|
|
163
|
+
tuple,
|
|
164
|
+
true,
|
|
165
|
+
function (elements) { return ((0, Writable_1.Writable)(tuple).elements = elements); },
|
|
166
|
+
];
|
|
167
|
+
};
|
|
168
|
+
MetadataCollection.prototype.setObjectRecursive = function (obj, recursive) {
|
|
169
|
+
(0, Writable_1.Writable)(obj).recursive = recursive;
|
|
170
|
+
};
|
|
171
|
+
MetadataCollection.prototype.setAliasRecursive = function (alias, recursive) {
|
|
172
|
+
(0, Writable_1.Writable)(alias).recursive = recursive;
|
|
173
|
+
};
|
|
174
|
+
MetadataCollection.prototype.setArrayRecursive = function (array, recursive) {
|
|
175
|
+
(0, Writable_1.Writable)(array).recursive = recursive;
|
|
176
|
+
if (recursive)
|
|
177
|
+
(0, Writable_1.Writable)(array).index = this.recursive_array_index_++;
|
|
178
|
+
};
|
|
179
|
+
MetadataCollection.prototype.setTupleRecursive = function (tuple, recursive) {
|
|
180
|
+
(0, Writable_1.Writable)(tuple).recursive = recursive;
|
|
181
|
+
if (recursive)
|
|
182
|
+
(0, Writable_1.Writable)(tuple).index = this.recursive_tuple_index_++;
|
|
183
|
+
};
|
|
184
|
+
MetadataCollection.prototype.toJSON = function () {
|
|
185
|
+
return {
|
|
186
|
+
objects: this.objects().map(function (o) { return o.toJSON(); }),
|
|
187
|
+
aliases: this.aliases().map(function (d) { return d.toJSON(); }),
|
|
188
|
+
arrays: __spreadArray([], __read(this.arrays_.values()), false).map(function (a) { return a.toJSON(); }),
|
|
189
|
+
tuples: __spreadArray([], __read(this.tuples_.values()), false).map(function (t) { return t.toJSON(); }),
|
|
190
|
+
};
|
|
191
|
+
};
|
|
106
192
|
return MetadataCollection;
|
|
107
193
|
}());
|
|
108
194
|
exports.MetadataCollection = MetadataCollection;
|
|
@@ -142,7 +228,8 @@ exports.MetadataCollection = MetadataCollection;
|
|
|
142
228
|
}
|
|
143
229
|
return str;
|
|
144
230
|
};
|
|
145
|
-
})(MetadataCollection
|
|
231
|
+
})(MetadataCollection = exports.MetadataCollection || (exports.MetadataCollection = {}));
|
|
232
|
+
exports.MetadataCollection = MetadataCollection;
|
|
146
233
|
var REPLACERS = [
|
|
147
234
|
["$", "_dollar_"],
|
|
148
235
|
["&", "_and_"],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MetadataCollection.js","sourceRoot":"","sources":["../../src/factories/MetadataCollection.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"MetadataCollection.js","sourceRoot":"","sources":["../../src/factories/MetadataCollection.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,16 @@
|
|
|
1
|
-
import
|
|
1
|
+
import ts from "typescript";
|
|
2
2
|
import { Metadata } from "../metadata/Metadata";
|
|
3
|
-
import { IProject } from "../transformers/IProject";
|
|
4
3
|
import { MetadataCollection } from "./MetadataCollection";
|
|
5
4
|
export declare namespace MetadataFactory {
|
|
6
5
|
interface IOptions {
|
|
7
6
|
resolve: boolean;
|
|
8
7
|
constant: boolean;
|
|
8
|
+
absorb: boolean;
|
|
9
9
|
validate?: (meta: Metadata) => void;
|
|
10
10
|
}
|
|
11
|
-
const analyze: (
|
|
11
|
+
const analyze: (checker: ts.TypeChecker) => (options: IOptions) => (collection: MetadataCollection) => (type: ts.Type | null) => Metadata;
|
|
12
|
+
/**
|
|
13
|
+
* @deprecated Use `analyze` function instead
|
|
14
|
+
*/
|
|
15
|
+
const generate: (checker: ts.TypeChecker, collection: MetadataCollection, type: ts.Type, options: IOptions) => Metadata;
|
|
12
16
|
}
|
|
@@ -1,67 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __values = (this && this.__values) || function(o) {
|
|
3
|
-
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
4
|
-
if (m) return m.call(o);
|
|
5
|
-
if (o && typeof o.length === "number") return {
|
|
6
|
-
next: function () {
|
|
7
|
-
if (o && i >= o.length) o = void 0;
|
|
8
|
-
return { value: o && o[i++], done: !o };
|
|
9
|
-
}
|
|
10
|
-
};
|
|
11
|
-
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
12
|
-
};
|
|
13
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
3
|
exports.MetadataFactory = void 0;
|
|
15
4
|
var explore_metadata_1 = require("./internal/metadata/explore_metadata");
|
|
5
|
+
var iterate_metadata_collection_1 = require("./internal/metadata/iterate_metadata_collection");
|
|
6
|
+
var iterate_metadata_sort_1 = require("./internal/metadata/iterate_metadata_sort");
|
|
16
7
|
var MetadataFactory;
|
|
17
8
|
(function (MetadataFactory) {
|
|
18
|
-
MetadataFactory.analyze = function (
|
|
9
|
+
MetadataFactory.analyze = function (checker) {
|
|
19
10
|
return function (options) {
|
|
20
11
|
return function (collection) {
|
|
21
12
|
return function (type) {
|
|
22
|
-
var
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
object.recursive = object.properties.some(function (prop) {
|
|
27
|
-
return isRecursive(object.name)(prop.value);
|
|
28
|
-
});
|
|
29
|
-
};
|
|
30
|
-
try {
|
|
31
|
-
// FIND RECURSIVE OBJECTS
|
|
32
|
-
for (var _b = __values(collection.objects()), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
33
|
-
var object = _c.value;
|
|
34
|
-
_loop_1(object);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
38
|
-
finally {
|
|
39
|
-
try {
|
|
40
|
-
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
41
|
-
}
|
|
42
|
-
finally { if (e_1) throw e_1.error; }
|
|
43
|
-
}
|
|
44
|
-
// RETURNS
|
|
45
|
-
return metadata;
|
|
13
|
+
var meta = (0, explore_metadata_1.explore_metadata)(checker)(options)(collection)(type, false);
|
|
14
|
+
(0, iterate_metadata_collection_1.iterate_metadata_collection)(collection);
|
|
15
|
+
(0, iterate_metadata_sort_1.iterate_metadata_sort)(collection)(meta);
|
|
16
|
+
return meta;
|
|
46
17
|
};
|
|
47
18
|
};
|
|
48
19
|
};
|
|
49
20
|
};
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
var similar = function (str) {
|
|
53
|
-
return name === str ||
|
|
54
|
-
name.indexOf("<".concat(str, ",")) !== -1 ||
|
|
55
|
-
name.indexOf(", ".concat(str, ">")) !== -1 ||
|
|
56
|
-
name.indexOf(", ".concat(str, ",")) !== -1;
|
|
57
|
-
};
|
|
58
|
-
return (meta.objects.some(function (obj) { return similar(obj.name); }) ||
|
|
59
|
-
meta.arrays.some(function (arr) { return isRecursive(name)(arr); }) ||
|
|
60
|
-
meta.tuples.some(function (tuple) {
|
|
61
|
-
return tuple.some(function (m) { var _a; return isRecursive(name)((_a = m.rest) !== null && _a !== void 0 ? _a : m); });
|
|
62
|
-
}) ||
|
|
63
|
-
meta.maps.some(function (map) { return isRecursive(name)(map.value); }));
|
|
64
|
-
};
|
|
65
|
-
};
|
|
66
|
-
})(MetadataFactory || (exports.MetadataFactory = MetadataFactory = {}));
|
|
21
|
+
MetadataFactory.generate = function (checker, collection, type, options) { return MetadataFactory.analyze(checker)(options)(collection)(type); };
|
|
22
|
+
})(MetadataFactory = exports.MetadataFactory || (exports.MetadataFactory = {}));
|
|
67
23
|
//# sourceMappingURL=MetadataFactory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MetadataFactory.js","sourceRoot":"","sources":["../../src/factories/MetadataFactory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MetadataFactory.js","sourceRoot":"","sources":["../../src/factories/MetadataFactory.ts"],"names":[],"mappings":";;;AAGA,yEAAwE;AACxE,+FAA8F;AAC9F,mFAAkF;AAIlF,IAAiB,eAAe,CA8B/B;AA9BD,WAAiB,eAAe;IAQf,uBAAO,GAChB,UAAC,OAAuB;QACxB,OAAA,UAAC,OAAiB;YAClB,OAAA,UAAC,UAA8B;gBAC/B,OAAA,UAAC,IAAoB;oBACjB,IAAM,IAAI,GAAa,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CACrD,UAAU,CACb,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;oBACf,IAAA,yDAA2B,EAAC,UAAU,CAAC,CAAC;oBACxC,IAAA,6CAAqB,EAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC;oBACxC,OAAO,IAAI,CAAC;gBAChB,CAAC;YAPD,CAOC;QARD,CAQC;IATD,CASC,CAAC;IAKO,wBAAQ,GAAG,UACpB,OAAuB,EACvB,UAA8B,EAC9B,IAAa,EACb,OAAiB,IAChB,OAAA,gBAAA,OAAO,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,EAA3C,CAA2C,CAAC;AACrD,CAAC,EA9BgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QA8B/B"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import
|
|
1
|
+
import ts from "typescript";
|
|
2
2
|
import { IMetadataTag } from "../metadata/IMetadataTag";
|
|
3
3
|
import { Metadata } from "../metadata/Metadata";
|
|
4
4
|
export declare namespace MetadataTagFactory {
|
|
5
|
-
const generate: (metadata: Metadata) => (tagList: JSDocTagInfo[]) => (identifier: () => string) => IMetadataTag[];
|
|
5
|
+
const generate: (metadata: Metadata) => (tagList: ts.JSDocTagInfo[]) => (identifier: () => string) => IMetadataTag[];
|
|
6
6
|
}
|
|
@@ -39,22 +39,16 @@ var MetadataTagFactory;
|
|
|
39
39
|
};
|
|
40
40
|
};
|
|
41
41
|
var parse = function (identifier, metadata, tag, output) {
|
|
42
|
-
var _a
|
|
42
|
+
var _a;
|
|
43
43
|
var closure = MetadataTagFactory._PARSER[tag.name];
|
|
44
44
|
if (closure === undefined)
|
|
45
45
|
return null;
|
|
46
|
-
var text = (
|
|
46
|
+
var text = (_a = (tag.text || [])[0]) === null || _a === void 0 ? void 0 : _a.text;
|
|
47
47
|
if (text === undefined)
|
|
48
48
|
throw new Error("".concat(LABEL, ": no tag value on ").concat(identifier()));
|
|
49
49
|
return closure(identifier, metadata, text, output);
|
|
50
50
|
};
|
|
51
|
-
/**
|
|
52
|
-
* @internal
|
|
53
|
-
*/
|
|
54
51
|
MetadataTagFactory._PARSER = {
|
|
55
|
-
/* -----------------------------------------------------------
|
|
56
|
-
ARRAY
|
|
57
|
-
----------------------------------------------------------- */
|
|
58
52
|
items: function (identifier, metadata, text, output) {
|
|
59
53
|
validate(identifier, metadata, output, "items", "array", [
|
|
60
54
|
"minItems",
|
|
@@ -82,9 +76,6 @@ var MetadataTagFactory;
|
|
|
82
76
|
value: parse_number(identifier, text),
|
|
83
77
|
};
|
|
84
78
|
},
|
|
85
|
-
/* -----------------------------------------------------------
|
|
86
|
-
NUMBER
|
|
87
|
-
----------------------------------------------------------- */
|
|
88
79
|
type: function (_identifier, metadata, text, _output) {
|
|
89
80
|
return has_atomic(metadata)("number") &&
|
|
90
81
|
(text === "int" || text === "uint")
|
|
@@ -146,15 +137,10 @@ var MetadataTagFactory;
|
|
|
146
137
|
value: parse_number(identifier, text),
|
|
147
138
|
};
|
|
148
139
|
},
|
|
149
|
-
/* -----------------------------------------------------------
|
|
150
|
-
STRING
|
|
151
|
-
----------------------------------------------------------- */
|
|
152
140
|
format: function (identifier, metadata, str, output) {
|
|
153
141
|
validate(identifier, metadata, output, "format", "string", [
|
|
154
142
|
"pattern",
|
|
155
143
|
]);
|
|
156
|
-
// Ignore arbitrary @format values in the internal metadata,
|
|
157
|
-
// these are currently only supported on the typia.application() API.
|
|
158
144
|
var value = FORMATS.get(str);
|
|
159
145
|
if (value === undefined)
|
|
160
146
|
return null;
|
|
@@ -201,7 +187,7 @@ var MetadataTagFactory;
|
|
|
201
187
|
};
|
|
202
188
|
},
|
|
203
189
|
};
|
|
204
|
-
})(MetadataTagFactory
|
|
190
|
+
})(MetadataTagFactory = exports.MetadataTagFactory || (exports.MetadataTagFactory = {}));
|
|
205
191
|
var parse_number = function (identifier, str) {
|
|
206
192
|
var value = Number(str);
|
|
207
193
|
if (isNaN(value) === true)
|
|
@@ -223,14 +209,12 @@ var FORMATS = new Map([
|
|
|
223
209
|
var WRONG_TYPE = function (tag, type, identifier) { return "".concat(LABEL, ": ").concat(tag, " requires ").concat(type, " type, but no \"").concat(identifier(), "\"."); };
|
|
224
210
|
var validate = function (identifier, metadata, output, kind, type, neighbors) {
|
|
225
211
|
var e_2, _a;
|
|
226
|
-
// TYPE CHECKING
|
|
227
212
|
if (type === "array") {
|
|
228
213
|
if (has_array(metadata) === false)
|
|
229
214
|
throw new Error(WRONG_TYPE(kind, "array", identifier));
|
|
230
215
|
}
|
|
231
216
|
else if (has_atomic(metadata)(type) === false)
|
|
232
217
|
throw new Error(WRONG_TYPE(kind, type, identifier));
|
|
233
|
-
// DUPLICATED TAG
|
|
234
218
|
if (output.some(function (tag) { return tag.kind === kind; }))
|
|
235
219
|
throw new Error("".concat(LABEL, ": duplicated ").concat(kind, " tags on \"").concat(identifier(), "\"."));
|
|
236
220
|
var _loop_1 = function (name_1) {
|
|
@@ -238,7 +222,6 @@ var validate = function (identifier, metadata, output, kind, type, neighbors) {
|
|
|
238
222
|
throw new Error("".concat(LABEL, ": ").concat(kind, " and ").concat(name_1, " tags on \"").concat(identifier(), "\"."));
|
|
239
223
|
};
|
|
240
224
|
try {
|
|
241
|
-
// NEIGHBOR TAG
|
|
242
225
|
for (var neighbors_1 = __values(neighbors), neighbors_1_1 = neighbors_1.next(); !neighbors_1_1.done; neighbors_1_1 = neighbors_1.next()) {
|
|
243
226
|
var name_1 = neighbors_1_1.value;
|
|
244
227
|
_loop_1(name_1);
|
|
@@ -257,14 +240,16 @@ var has_atomic = function (metadata) {
|
|
|
257
240
|
return metadata.atomics.find(type === "number"
|
|
258
241
|
? function (atom) { return atom === type || atom === "bigint"; }
|
|
259
242
|
: function (atom) { return atom === type; }) !== undefined ||
|
|
260
|
-
metadata.arrays.some(function (child) { return has_atomic(child)(type); }) ||
|
|
243
|
+
metadata.arrays.some(function (child) { return has_atomic(child.value)(type); }) ||
|
|
261
244
|
metadata.tuples.some(function (tuple) {
|
|
262
|
-
return tuple.some(function (child) { return has_atomic(child)(type); });
|
|
245
|
+
return tuple.elements.some(function (child) { return has_atomic(child)(type); });
|
|
263
246
|
});
|
|
264
247
|
};
|
|
265
248
|
};
|
|
266
249
|
var has_array = function (metadata) {
|
|
267
250
|
return metadata.arrays.length !== 0 ||
|
|
268
|
-
metadata.tuples.some(function (tuple) {
|
|
251
|
+
metadata.tuples.some(function (tuple) {
|
|
252
|
+
return tuple.elements.some(function (child) { return has_array(child); });
|
|
253
|
+
});
|
|
269
254
|
};
|
|
270
255
|
//# sourceMappingURL=MetadataTagFactory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MetadataTagFactory.js","sourceRoot":"","sources":["../../src/factories/MetadataTagFactory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAKA,IAAiB,kBAAkB,CAyNlC;AAzND,WAAiB,kBAAkB;IAClB,2BAAQ,GACjB,UAAC,QAAkB;QACnB,OAAA,UAAC,
|
|
1
|
+
{"version":3,"file":"MetadataTagFactory.js","sourceRoot":"","sources":["../../src/factories/MetadataTagFactory.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAKA,IAAiB,kBAAkB,CAyNlC;AAzND,WAAiB,kBAAkB;IAClB,2BAAQ,GACjB,UAAC,QAAkB;QACnB,OAAA,UAAC,OAA0B;YAC3B,OAAA,UAAC,UAAwB;;gBACrB,IAAM,MAAM,GAAmB,EAAE,CAAC;;oBAClC,KAAkB,IAAA,YAAA,SAAA,OAAO,CAAA,gCAAA,qDAAE;wBAAtB,IAAM,GAAG,oBAAA;wBACV,IAAM,IAAI,GAAwB,KAAK,CACnC,UAAU,EACV,QAAQ,EACR,GAAG,EACH,MAAM,CACT,CAAC;wBACF,IAAI,IAAI,KAAK,IAAI;4BAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;qBACxC;;;;;;;;;gBACD,OAAO,MAAM,CAAC;YAClB,CAAC;QAZD,CAYC;IAbD,CAaC,CAAC;IAEN,IAAM,KAAK,GAAG,UACV,UAAwB,EACxB,QAAkB,EAClB,GAAoB,EACpB,MAAsB;;QAEtB,IAAM,OAAO,GAAG,mBAAA,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClC,IAAI,OAAO,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QAEvC,IAAM,IAAI,GAAG,MAAA,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,0CAAE,IAAI,CAAC;QACvC,IAAI,IAAI,KAAK,SAAS;YAClB,MAAM,IAAI,KAAK,CAAC,UAAG,KAAK,+BAAqB,UAAU,EAAE,CAAE,CAAC,CAAC;QAEjE,OAAO,OAAO,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IACvD,CAAC,CAAC;IAKW,0BAAO,GAQhB;QAIA,KAAK,EAAE,UAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM;YACtC,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE;gBACrD,UAAU;aACb,CAAC,CAAC;YACH,OAAO;gBACH,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;aACxC,CAAC;QACN,CAAC;QACD,QAAQ,EAAE,UAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM;YACzC,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE;gBACxD,OAAO;aACV,CAAC,CAAC;YACH,OAAO;gBACH,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;aACxC,CAAC;QACN,CAAC;QACD,QAAQ,EAAE,UAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM;YACzC,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE;gBACxD,OAAO;aACV,CAAC,CAAC;YACH,OAAO;gBACH,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;aACxC,CAAC;QACN,CAAC;QAKD,IAAI,EAAE,UAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO;YACvC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;gBACjC,CAAC,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,MAAM,CAAC;gBACnC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE;gBAC/B,CAAC,CAAC,IAAI,CAAC;QACf,CAAC;QACD,OAAO,EAAE,UAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM;YACxC,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE;gBACxD,kBAAkB;aACrB,CAAC,CAAC;YACH,OAAO;gBACH,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;aACxC,CAAC;QACN,CAAC;QACD,OAAO,EAAE,UAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM;YACxC,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE;gBACxD,kBAAkB;aACrB,CAAC,CAAC;YACH,OAAO;gBACH,IAAI,EAAE,SAAS;gBACf,KAAK,EAAE,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;aACxC,CAAC;QACN,CAAC;QACD,gBAAgB,EAAE,UAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM;YACjD,QAAQ,CACJ,UAAU,EACV,QAAQ,EACR,MAAM,EACN,kBAAkB,EAClB,QAAQ,EACR,CAAC,SAAS,CAAC,CACd,CAAC;YACF,OAAO;gBACH,IAAI,EAAE,kBAAkB;gBACxB,KAAK,EAAE,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;aACxC,CAAC;QACN,CAAC;QACD,gBAAgB,EAAE,UAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM;YACjD,QAAQ,CACJ,UAAU,EACV,QAAQ,EACR,MAAM,EACN,kBAAkB,EAClB,QAAQ,EACR,CAAC,SAAS,CAAC,CACd,CAAC;YACF,OAAO;gBACH,IAAI,EAAE,kBAAkB;gBACxB,KAAK,EAAE,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;aACxC,CAAC;QACN,CAAC;QACD,UAAU,EAAE,UAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM;YAC3C,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE;gBAC3D,MAAM;aACT,CAAC,CAAC;YACH,OAAO;gBACH,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;aACxC,CAAC;QACN,CAAC;QACD,IAAI,EAAE,UAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM;YACrC,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE;gBACrD,YAAY;aACf,CAAC,CAAC;YAEH,IAAM,OAAO,GAAY,MAAM,CAAC,IAAI,CAChC,UAAC,GAAG;gBACA,OAAA,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,KAAK,kBAAkB;YAAzD,CAAyD,CAChE,CAAC;YACF,IAAI,OAAO,KAAK,SAAS;gBACrB,MAAM,IAAI,KAAK,CACX,UAAG,KAAK,kEAAuD,UAAU,EAAE,QAAI,CAClF,CAAC;YAEN,OAAO;gBACH,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;aACxC,CAAC;QACN,CAAC;QAKD,MAAM,EAAE,UAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM;YACtC,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE;gBACvD,SAAS;aACZ,CAAC,CAAC;YAIH,IAAM,KAAK,GACP,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACrB,IAAI,KAAK,KAAK,SAAS;gBAAE,OAAO,IAAI,CAAC;YACrC,OAAO;gBACH,IAAI,EAAE,QAAQ;gBACd,KAAK,OAAA;aACR,CAAC;QACN,CAAC;QACD,OAAO,EAAE,UAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM;YACzC,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE;gBACxD,QAAQ;aACX,CAAC,CAAC;YACH,OAAO;gBACH,IAAI,EAAE,SAAS;gBACf,KAAK,OAAA;aACR,CAAC;QACN,CAAC;QACD,MAAM,EAAE,UAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM;YACvC,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE;gBACvD,WAAW;gBACX,WAAW;aACd,CAAC,CAAC;YACH,OAAO;gBACH,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;aACxC,CAAC;QACN,CAAC;QACD,SAAS,EAAE,UAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM;YAC1C,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE;gBAC1D,QAAQ;aACX,CAAC,CAAC;YACH,OAAO;gBACH,IAAI,EAAE,WAAW;gBACjB,KAAK,EAAE,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;aACxC,CAAC;QACN,CAAC;QACD,SAAS,EAAE,UAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM;YAC1C,QAAQ,CAAC,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE;gBAC1D,QAAQ;aACX,CAAC,CAAC;YACH,OAAO;gBACH,IAAI,EAAE,WAAW;gBACjB,KAAK,EAAE,YAAY,CAAC,UAAU,EAAE,IAAI,CAAC;aACxC,CAAC;QACN,CAAC;KACJ,CAAC;AACN,CAAC,EAzNgB,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAyNlC;AAED,IAAM,YAAY,GAAG,UAAC,UAAwB,EAAE,GAAW;IACvD,IAAM,KAAK,GAAW,MAAM,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI;QACrB,MAAM,IAAI,KAAK,CAAC,UAAG,KAAK,mCAAwB,UAAU,EAAE,QAAI,CAAC,CAAC;IACtE,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AAEF,IAAM,KAAK,GAAG,8CAA8C,CAAC;AAC7D,IAAM,OAAO,GAA+C,IAAI,GAAG,CAAC;IAChE,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,KAAK,EAAE,KAAK,CAAC;IACd,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,UAAU,EAAE,UAAU,CAAC;IACxB,CAAC,WAAW,EAAE,UAAU,CAAC;IACzB,CAAC,UAAU,EAAE,UAAU,CAAC;CAC3B,CAAC,CAAC;AAEH,IAAM,UAAU,GAAG,UACf,GAAW,EACX,IAAmC,EACnC,UAAwB,IACvB,OAAA,UAAG,KAAK,eAAK,GAAG,uBAAa,IAAI,6BAAkB,UAAU,EAAE,QAAI,EAAnE,CAAmE,CAAC;AAEzE,IAAM,QAAQ,GAAG,UACb,UAAwB,EACxB,QAAkB,EAClB,MAAsB,EACtB,IAA0B,EAC1B,IAAmC,EACnC,SAAiC;;IAGjC,IAAI,IAAI,KAAK,OAAO,EAAE;QAClB,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,KAAK;YAC7B,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;KAC9D;SAAM,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,KAAK,KAAK;QAC3C,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;IAGxD,IAAI,MAAM,CAAC,IAAI,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,IAAI,KAAK,IAAI,EAAjB,CAAiB,CAAC;QACvC,MAAM,IAAI,KAAK,CACX,UAAG,KAAK,0BAAgB,IAAI,wBAAa,UAAU,EAAE,QAAI,CAC5D,CAAC;4BAGK,MAAI;QACX,IAAI,MAAM,CAAC,IAAI,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,IAAI,KAAK,MAAI,EAAjB,CAAiB,CAAC;YACvC,MAAM,IAAI,KAAK,CACX,UAAG,KAAK,eAAK,IAAI,kBAAQ,MAAI,wBAAa,UAAU,EAAE,QAAI,CAC7D,CAAC;;;QAJV,KAAmB,IAAA,cAAA,SAAA,SAAS,CAAA,oCAAA;YAAvB,IAAM,MAAI,sBAAA;oBAAJ,MAAI;SAIL;;;;;;;;;AACd,CAAC,CAAC;AAGF,IAAM,UAAU,GACZ,UAAC,QAAkB;IACnB,OAAA,UAAC,IAAyB;QACtB,OAAA,QAAQ,CAAC,OAAO,CAAC,IAAI,CACjB,IAAI,KAAK,QAAQ;YACb,CAAC,CAAC,UAAC,IAAY,IAAK,OAAA,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,QAAQ,EAAlC,CAAkC;YACtD,CAAC,CAAC,UAAC,IAAY,IAAK,OAAA,IAAI,KAAK,IAAI,EAAb,CAAa,CACxC,KAAK,SAAS;YACf,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,UAAC,KAAK,IAAK,OAAA,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAA7B,CAA6B,CAAC;YAC9D,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,UAAC,KAAK;gBACvB,OAAA,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAC,KAAK,IAAK,OAAA,UAAU,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,EAAvB,CAAuB,CAAC;YAAvD,CAAuD,CAC1D;IARD,CAQC;AATL,CASK,CAAC;AAEV,IAAM,SAAS,GAAG,UAAC,QAAkB;IACjC,OAAA,QAAQ,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;QAC5B,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,UAAC,KAAK;YACvB,OAAA,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAC,KAAK,IAAK,OAAA,SAAS,CAAC,KAAK,CAAC,EAAhB,CAAgB,CAAC;QAAhD,CAAgD,CACnD;AAHD,CAGC,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import
|
|
1
|
+
import ts from "typescript";
|
|
2
2
|
export declare namespace StatementFactory {
|
|
3
|
-
const constant: (
|
|
3
|
+
const constant: (name: string, initializer?: ts.Expression) => ts.VariableStatement;
|
|
4
|
+
const transpile: (script: string) => ts.ExpressionStatement;
|
|
4
5
|
}
|
|
@@ -1,12 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.StatementFactory = void 0;
|
|
7
|
+
var typescript_1 = __importDefault(require("typescript"));
|
|
4
8
|
var StatementFactory;
|
|
5
9
|
(function (StatementFactory) {
|
|
6
|
-
StatementFactory.constant = function (
|
|
7
|
-
return
|
|
8
|
-
|
|
9
|
-
],
|
|
10
|
-
};
|
|
11
|
-
|
|
10
|
+
StatementFactory.constant = function (name, initializer) {
|
|
11
|
+
return typescript_1.default.factory.createVariableStatement(undefined, typescript_1.default.factory.createVariableDeclarationList([
|
|
12
|
+
typescript_1.default.factory.createVariableDeclaration(name, undefined, undefined, initializer),
|
|
13
|
+
], typescript_1.default.NodeFlags.Const));
|
|
14
|
+
};
|
|
15
|
+
StatementFactory.transpile = function (script) {
|
|
16
|
+
return typescript_1.default.factory.createExpressionStatement(typescript_1.default.factory.createIdentifier(typescript_1.default.transpile(script)));
|
|
17
|
+
};
|
|
18
|
+
})(StatementFactory = exports.StatementFactory || (exports.StatementFactory = {}));
|
|
12
19
|
//# sourceMappingURL=StatementFactory.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StatementFactory.js","sourceRoot":"","sources":["../../src/factories/StatementFactory.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"StatementFactory.js","sourceRoot":"","sources":["../../src/factories/StatementFactory.ts"],"names":[],"mappings":";;;;;;AAAA,0DAA4B;AAE5B,IAAiB,gBAAgB,CAqBhC;AArBD,WAAiB,gBAAgB;IAChB,yBAAQ,GAAG,UAAC,IAAY,EAAE,WAA2B;QAC9D,OAAA,oBAAE,CAAC,OAAO,CAAC,uBAAuB,CAC9B,SAAS,EACT,oBAAE,CAAC,OAAO,CAAC,6BAA6B,CACpC;YACI,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,IAAI,EACJ,SAAS,EACT,SAAS,EACT,WAAW,CACd;SACJ,EACD,oBAAE,CAAC,SAAS,CAAC,KAAK,CACrB,CACJ;IAbD,CAaC,CAAC;IAEO,0BAAS,GAAG,UAAC,MAAc;QACpC,OAAA,oBAAE,CAAC,OAAO,CAAC,yBAAyB,CAChC,oBAAE,CAAC,OAAO,CAAC,gBAAgB,CAAC,oBAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CACpD;IAFD,CAEC,CAAC;AACV,CAAC,EArBgB,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAqBhC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import ts from "typescript";
|
|
2
2
|
export declare namespace TemplateFactory {
|
|
3
|
-
const generate: (
|
|
3
|
+
const generate: (expressions: ts.Expression[]) => ts.Expression;
|
|
4
4
|
}
|
|
@@ -1,48 +1,46 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
6
|
exports.TemplateFactory = void 0;
|
|
7
|
+
var typescript_1 = __importDefault(require("typescript"));
|
|
4
8
|
var TemplateFactory;
|
|
5
9
|
(function (TemplateFactory) {
|
|
6
|
-
TemplateFactory.generate = function (
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
return
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
index: 0,
|
|
15
|
-
};
|
|
16
|
-
gather(tsc)(expressions)(it);
|
|
17
|
-
var head = tsc.factory.createTemplateHead(it.value);
|
|
18
|
-
var spans = [];
|
|
19
|
-
while (true) {
|
|
20
|
-
var elem = expressions[it.index++];
|
|
21
|
-
gather(tsc)(expressions)(it);
|
|
22
|
-
var broken = it.index === expressions.length;
|
|
23
|
-
spans.push(tsc.factory.createTemplateSpan(elem, broken
|
|
24
|
-
? tsc.factory.createTemplateTail(it.value)
|
|
25
|
-
: tsc.factory.createTemplateMiddle(it.value)));
|
|
26
|
-
if (broken === true)
|
|
27
|
-
break;
|
|
28
|
-
}
|
|
29
|
-
return tsc.factory.createTemplateExpression(head, spans);
|
|
10
|
+
TemplateFactory.generate = function (expressions) {
|
|
11
|
+
if (expressions.every(function (exp) { return typescript_1.default.isStringLiteral(exp); }))
|
|
12
|
+
return typescript_1.default.factory.createStringLiteral(expressions
|
|
13
|
+
.map(function (str) { return str.text; })
|
|
14
|
+
.join(""));
|
|
15
|
+
var it = {
|
|
16
|
+
value: "",
|
|
17
|
+
index: 0,
|
|
30
18
|
};
|
|
19
|
+
gather(expressions)(it);
|
|
20
|
+
var head = typescript_1.default.factory.createTemplateHead(it.value);
|
|
21
|
+
var spans = [];
|
|
22
|
+
while (true) {
|
|
23
|
+
var elem = expressions[it.index++];
|
|
24
|
+
gather(expressions)(it);
|
|
25
|
+
var broken = it.index === expressions.length;
|
|
26
|
+
spans.push(typescript_1.default.factory.createTemplateSpan(elem, broken
|
|
27
|
+
? typescript_1.default.factory.createTemplateTail(it.value)
|
|
28
|
+
: typescript_1.default.factory.createTemplateMiddle(it.value)));
|
|
29
|
+
if (broken === true)
|
|
30
|
+
break;
|
|
31
|
+
}
|
|
32
|
+
return typescript_1.default.factory.createTemplateExpression(head, spans);
|
|
31
33
|
};
|
|
32
|
-
var gather = function (
|
|
33
|
-
return function (
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
.map(function (elem) { return elem.text; })
|
|
42
|
-
.reduce(function (x, y) { return x + y; }, "");
|
|
43
|
-
it.index = last;
|
|
44
|
-
};
|
|
34
|
+
var gather = function (expressions) {
|
|
35
|
+
return function (it) {
|
|
36
|
+
var found = expressions.findIndex(function (elem, index) { return index >= it.index && !typescript_1.default.isStringLiteral(elem); });
|
|
37
|
+
var last = found !== -1 ? found : expressions.length;
|
|
38
|
+
it.value = expressions
|
|
39
|
+
.slice(it.index, last)
|
|
40
|
+
.map(function (elem) { return elem.text; })
|
|
41
|
+
.reduce(function (x, y) { return x + y; }, "");
|
|
42
|
+
it.index = last;
|
|
45
43
|
};
|
|
46
44
|
};
|
|
47
|
-
})(TemplateFactory
|
|
45
|
+
})(TemplateFactory = exports.TemplateFactory || (exports.TemplateFactory = {}));
|
|
48
46
|
//# sourceMappingURL=TemplateFactory.js.map
|