@depup/typebox 1.1.21-depup.0 → 1.3.8-depup.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/build/compile/code.mjs +2 -2
- package/build/compile/validator.d.mts +7 -14
- package/build/compile/validator.mjs +32 -57
- package/build/error/errors.d.mts +1 -7
- package/build/format/_idna.mjs +36 -6
- package/build/format/_puny.mjs +4 -1
- package/build/format/_registry.mjs +9 -9
- package/build/format/email.d.mts +1 -1
- package/build/format/email.mjs +3 -24
- package/build/format/format.d.mts +9 -9
- package/build/format/format.mjs +9 -9
- package/build/format/{idn-email.d.mts → idn_email.d.mts} +1 -1
- package/build/format/idn_email.mjs +8 -0
- package/build/format/uuid.d.mts +2 -2
- package/build/format/uuid.mjs +3 -3
- package/build/guard/emit.d.mts +3 -5
- package/build/guard/emit.mjs +12 -13
- package/build/guard/guard.d.mts +15 -7
- package/build/guard/guard.mjs +40 -15
- package/build/guard/string.mjs +16 -4
- package/build/schema/build.d.mts +11 -7
- package/build/schema/build.mjs +28 -9
- package/build/schema/check.d.mts +3 -3
- package/build/schema/compile.d.mts +4 -4
- package/build/schema/compile.mjs +9 -9
- package/build/schema/engine/_context.mjs +3 -3
- package/build/schema/engine/_functions.mjs +34 -16
- package/build/schema/engine/_refine.mjs +4 -4
- package/build/schema/engine/_stack.d.mts +4 -4
- package/build/schema/engine/_stack.mjs +52 -18
- package/build/schema/engine/additionalItems.mjs +17 -7
- package/build/schema/engine/additionalProperties.mjs +1 -1
- package/build/schema/engine/boolean.d.mts +3 -3
- package/build/schema/engine/boolean.mjs +4 -4
- package/build/schema/engine/contains.mjs +18 -6
- package/build/schema/engine/dynamicRef.d.mts +6 -0
- package/build/schema/engine/dynamicRef.mjs +25 -0
- package/build/schema/engine/enum.mjs +1 -1
- package/build/schema/engine/index.d.mts +0 -1
- package/build/schema/engine/index.mjs +0 -1
- package/build/schema/engine/items.mjs +26 -6
- package/build/schema/engine/maxContains.mjs +3 -3
- package/build/schema/engine/minContains.mjs +14 -4
- package/build/schema/engine/not.mjs +4 -2
- package/build/schema/engine/oneOf.mjs +7 -6
- package/build/schema/engine/recursiveRef.mjs +3 -3
- package/build/schema/engine/ref.mjs +4 -10
- package/build/schema/engine/schema.mjs +15 -15
- package/build/schema/engine/type.mjs +15 -19
- package/build/schema/parse.d.mts +3 -3
- package/build/schema/pointer/index.d.mts +1 -1
- package/build/schema/pointer/index.mjs +1 -1
- package/build/schema/pointer/pointer.mjs +11 -1
- package/build/schema/resolve/ref.d.mts +1 -0
- package/build/schema/resolve/ref.mjs +61 -11
- package/build/schema/static/_canonical.d.mts +7 -0
- package/build/schema/static/{~elements.d.mts → _elements.d.mts} +3 -3
- package/build/schema/static/items.d.mts +1 -1
- package/build/schema/static/prefixItems.d.mts +1 -1
- package/build/schema/static/properties.d.mts +27 -6
- package/build/schema/static/ref.d.mts +1 -1
- package/build/schema/static/required.d.mts +1 -11
- package/build/schema/static/schema.d.mts +3 -2
- package/build/schema/static/static.d.mts +2 -2
- package/build/schema/types/_refine.d.mts +2 -2
- package/build/schema/types/_refine.mjs +4 -4
- package/build/schema/types/dependencies.mjs +1 -1
- package/build/schema/types/index.d.mts +0 -1
- package/build/schema/types/index.mjs +0 -1
- package/build/schema/types/schema.d.mts +1 -1
- package/build/schema/types/schema.mjs +2 -2
- package/build/system/environment/evaluate.mjs +1 -1
- package/build/system/locale/_config.d.mts +1 -1
- package/build/system/locale/ar_001.d.mts +1 -1
- package/build/system/locale/ar_001.mjs +0 -1
- package/build/system/locale/bn_BD.d.mts +1 -1
- package/build/system/locale/bn_BD.mjs +0 -1
- package/build/system/locale/cs_CZ.d.mts +1 -1
- package/build/system/locale/cs_CZ.mjs +0 -1
- package/build/system/locale/de_DE.d.mts +1 -1
- package/build/system/locale/de_DE.mjs +0 -1
- package/build/system/locale/el_GR.d.mts +1 -1
- package/build/system/locale/el_GR.mjs +0 -1
- package/build/system/locale/en_US.d.mts +1 -1
- package/build/system/locale/en_US.mjs +0 -1
- package/build/system/locale/es_419.d.mts +1 -1
- package/build/system/locale/es_419.mjs +0 -1
- package/build/system/locale/es_AR.d.mts +1 -1
- package/build/system/locale/es_AR.mjs +0 -1
- package/build/system/locale/es_ES.d.mts +1 -1
- package/build/system/locale/es_ES.mjs +0 -1
- package/build/system/locale/es_MX.d.mts +1 -1
- package/build/system/locale/es_MX.mjs +0 -1
- package/build/system/locale/fa_IR.d.mts +1 -1
- package/build/system/locale/fa_IR.mjs +0 -1
- package/build/system/locale/fil_PH.d.mts +1 -1
- package/build/system/locale/fil_PH.mjs +0 -1
- package/build/system/locale/fr_CA.d.mts +1 -1
- package/build/system/locale/fr_CA.mjs +0 -1
- package/build/system/locale/fr_FR.d.mts +1 -1
- package/build/system/locale/fr_FR.mjs +0 -1
- package/build/system/locale/ha_NG.d.mts +1 -1
- package/build/system/locale/ha_NG.mjs +0 -1
- package/build/system/locale/hi_IN.d.mts +1 -1
- package/build/system/locale/hi_IN.mjs +0 -1
- package/build/system/locale/hu_HU.d.mts +1 -1
- package/build/system/locale/hu_HU.mjs +0 -1
- package/build/system/locale/id_ID.d.mts +1 -1
- package/build/system/locale/id_ID.mjs +0 -1
- package/build/system/locale/it_IT.d.mts +1 -1
- package/build/system/locale/it_IT.mjs +0 -1
- package/build/system/locale/ja_JP.d.mts +1 -1
- package/build/system/locale/ja_JP.mjs +0 -1
- package/build/system/locale/ko_KR.d.mts +1 -1
- package/build/system/locale/ko_KR.mjs +0 -1
- package/build/system/locale/ms_MY.d.mts +1 -1
- package/build/system/locale/ms_MY.mjs +0 -1
- package/build/system/locale/nl_NL.d.mts +1 -1
- package/build/system/locale/nl_NL.mjs +0 -1
- package/build/system/locale/pl_PL.d.mts +1 -1
- package/build/system/locale/pl_PL.mjs +0 -1
- package/build/system/locale/pt_BR.d.mts +1 -1
- package/build/system/locale/pt_BR.mjs +0 -1
- package/build/system/locale/pt_PT.d.mts +1 -1
- package/build/system/locale/pt_PT.mjs +0 -1
- package/build/system/locale/ro_RO.d.mts +1 -1
- package/build/system/locale/ro_RO.mjs +0 -1
- package/build/system/locale/ru_RU.d.mts +1 -1
- package/build/system/locale/ru_RU.mjs +0 -1
- package/build/system/locale/sv_SE.d.mts +1 -1
- package/build/system/locale/sv_SE.mjs +0 -1
- package/build/system/locale/sw_TZ.d.mts +1 -1
- package/build/system/locale/sw_TZ.mjs +0 -1
- package/build/system/locale/th_TH.d.mts +1 -1
- package/build/system/locale/th_TH.mjs +0 -1
- package/build/system/locale/tr_TR.d.mts +1 -1
- package/build/system/locale/tr_TR.mjs +0 -1
- package/build/system/locale/uk_UA.d.mts +1 -1
- package/build/system/locale/uk_UA.mjs +0 -1
- package/build/system/locale/ur_PK.d.mts +1 -1
- package/build/system/locale/ur_PK.mjs +0 -1
- package/build/system/locale/vi_VN.d.mts +1 -1
- package/build/system/locale/vi_VN.mjs +0 -1
- package/build/system/locale/yo_NG.d.mts +1 -1
- package/build/system/locale/yo_NG.mjs +0 -1
- package/build/system/locale/zh_Hans.d.mts +1 -1
- package/build/system/locale/zh_Hans.mjs +0 -1
- package/build/system/locale/zh_Hant.d.mts +1 -1
- package/build/system/locale/zh_Hant.mjs +0 -1
- package/build/system/memory/clone.d.mts +2 -3
- package/build/system/memory/clone.mjs +73 -26
- package/build/system/settings/settings.d.mts +15 -0
- package/build/system/settings/settings.mjs +3 -1
- package/build/type/action/_add_immutable.d.mts +11 -0
- package/build/type/action/_add_immutable.mjs +11 -0
- package/build/type/action/_add_optional.d.mts +11 -0
- package/build/type/action/_add_optional.mjs +11 -0
- package/build/type/action/_add_readonly.d.mts +11 -0
- package/build/type/action/_add_readonly.mjs +11 -0
- package/build/type/action/_remove_immutable.d.mts +11 -0
- package/build/type/action/_remove_immutable.mjs +11 -0
- package/build/type/action/_remove_optional.d.mts +11 -0
- package/build/type/action/_remove_optional.mjs +11 -0
- package/build/type/action/_remove_readonly.d.mts +11 -0
- package/build/type/action/_remove_readonly.mjs +11 -0
- package/build/type/action/capitalize.d.mts +2 -2
- package/build/type/action/capitalize.mjs +2 -3
- package/build/type/action/conditional.d.mts +3 -2
- package/build/type/action/conditional.mjs +3 -2
- package/build/type/action/{constructor-parameters.d.mts → constructor_parameters.d.mts} +2 -2
- package/build/type/action/{constructor-parameters.mjs → constructor_parameters.mjs} +2 -3
- package/build/type/action/evaluate.d.mts +2 -2
- package/build/type/action/evaluate.mjs +2 -3
- package/build/type/action/exclude.d.mts +2 -2
- package/build/type/action/exclude.mjs +2 -3
- package/build/type/action/extract.d.mts +2 -2
- package/build/type/action/extract.mjs +2 -3
- package/build/type/action/index.d.mts +12 -9
- package/build/type/action/index.mjs +12 -9
- package/build/type/action/indexed.d.mts +3 -3
- package/build/type/action/indexed.mjs +3 -4
- package/build/type/action/{instance-type.d.mts → instance_type.d.mts} +2 -2
- package/build/type/action/{instance-type.mjs → instance_type.mjs} +2 -3
- package/build/type/action/interface.d.mts +2 -2
- package/build/type/action/interface.mjs +5 -3
- package/build/type/action/keyof.d.mts +2 -2
- package/build/type/action/keyof.mjs +2 -3
- package/build/type/action/lowercase.d.mts +2 -2
- package/build/type/action/lowercase.mjs +2 -3
- package/build/type/action/mapped.d.mts +3 -2
- package/build/type/action/mapped.mjs +3 -2
- package/build/type/action/module.d.mts +8 -7
- package/build/type/action/module.mjs +7 -6
- package/build/type/action/{non-nullable.d.mts → non_nullable.d.mts} +2 -2
- package/build/type/action/{non-nullable.mjs → non_nullable.mjs} +2 -3
- package/build/type/action/omit.d.mts +3 -3
- package/build/type/action/omit.mjs +3 -4
- package/build/type/action/parameters.d.mts +2 -2
- package/build/type/action/parameters.mjs +2 -3
- package/build/type/action/partial.d.mts +3 -3
- package/build/type/action/partial.mjs +2 -3
- package/build/type/action/pick.d.mts +3 -3
- package/build/type/action/pick.mjs +3 -4
- package/build/type/action/readonly_object.d.mts +16 -0
- package/build/type/action/readonly_object.mjs +19 -0
- package/build/type/action/required.d.mts +2 -2
- package/build/type/action/required.mjs +2 -3
- package/build/type/action/{return-type.d.mts → return_type.d.mts} +2 -2
- package/build/type/action/{return-type.mjs → return_type.mjs} +2 -3
- package/build/type/action/uncapitalize.d.mts +2 -2
- package/build/type/action/uncapitalize.mjs +2 -3
- package/build/type/action/uppercase.d.mts +2 -2
- package/build/type/action/uppercase.mjs +2 -3
- package/build/type/action/with.d.mts +11 -0
- package/build/type/action/with.mjs +11 -0
- package/build/type/engine/call/{distribute-arguments.mjs → distribute_arguments.mjs} +1 -7
- package/build/type/engine/call/instantiate.d.mts +4 -6
- package/build/type/engine/call/instantiate.mjs +6 -5
- package/build/type/engine/call/{resolve-arguments.mjs → resolve_arguments.mjs} +3 -9
- package/build/type/engine/conditional/instantiate.d.mts +4 -2
- package/build/type/engine/conditional/instantiate.mjs +13 -9
- package/build/type/engine/constructor_parameters/instantiate.d.mts +14 -0
- package/build/type/engine/constructor_parameters/instantiate.mjs +25 -0
- package/build/type/engine/cyclic/candidates.d.mts +3 -4
- package/build/type/engine/cyclic/candidates.mjs +3 -6
- package/build/type/engine/cyclic/check.d.mts +6 -9
- package/build/type/engine/cyclic/check.mjs +13 -22
- package/build/type/engine/cyclic/dependencies.d.mts +1 -4
- package/build/type/engine/cyclic/dependencies.mjs +9 -15
- package/build/type/engine/cyclic/extends.d.mts +1 -4
- package/build/type/engine/cyclic/extends.mjs +8 -14
- package/build/type/engine/cyclic/instantiate.d.mts +2 -5
- package/build/type/engine/cyclic/instantiate.mjs +3 -2
- package/build/type/engine/enum/index.d.mts +1 -2
- package/build/type/engine/enum/index.mjs +1 -2
- package/build/type/engine/evaluate/broaden.d.mts +1 -2
- package/build/type/engine/evaluate/broaden.mjs +2 -6
- package/build/type/engine/evaluate/composite.d.mts +11 -7
- package/build/type/engine/evaluate/composite.mjs +11 -7
- package/build/type/engine/evaluate/distribute.d.mts +2 -1
- package/build/type/engine/evaluate/distribute.mjs +7 -17
- package/build/type/engine/evaluate/evaluate.d.mts +17 -5
- package/build/type/engine/evaluate/evaluate.mjs +34 -8
- package/build/type/engine/evaluate/flatten.d.mts +1 -1
- package/build/type/engine/evaluate/instantiate.d.mts +3 -3
- package/build/type/engine/evaluate/instantiate.mjs +5 -10
- package/build/type/engine/evaluate/narrow.d.mts +3 -3
- package/build/type/engine/exclude/instantiate.d.mts +4 -11
- package/build/type/engine/exclude/instantiate.mjs +7 -28
- package/build/type/engine/exclude/operation.d.mts +10 -0
- package/build/type/engine/exclude/operation.mjs +23 -0
- package/build/type/engine/extract/instantiate.d.mts +4 -11
- package/build/type/engine/extract/instantiate.mjs +7 -28
- package/build/type/engine/extract/operation.d.mts +10 -0
- package/build/type/engine/extract/operation.mjs +23 -0
- package/build/type/engine/helpers/index.d.mts +1 -1
- package/build/type/engine/helpers/index.mjs +1 -1
- package/build/type/engine/immutable/instantiate_add.d.mts +10 -0
- package/build/type/engine/immutable/instantiate_add.mjs +14 -0
- package/build/type/engine/immutable/instantiate_remove.d.mts +10 -0
- package/build/type/engine/immutable/instantiate_remove.mjs +14 -0
- package/build/type/engine/index.d.mts +8 -8
- package/build/type/engine/index.mjs +8 -8
- package/build/type/engine/indexable/{from-cyclic.d.mts → from_cyclic.d.mts} +1 -1
- package/build/type/engine/{object/from-cyclic.mjs → indexable/from_cyclic.mjs} +1 -1
- package/build/type/engine/indexable/from_dependent.d.mts +5 -0
- package/build/type/engine/indexable/from_dependent.mjs +8 -0
- package/build/type/engine/indexable/from_enum.d.mts +6 -0
- package/build/type/engine/indexable/from_enum.mjs +8 -0
- package/build/type/engine/indexable/{from-intersect.d.mts → from_intersect.d.mts} +1 -1
- package/build/type/engine/indexable/{from-intersect.mjs → from_intersect.mjs} +1 -1
- package/build/type/engine/indexable/{from-literal.d.mts → from_literal.d.mts} +1 -1
- package/build/type/engine/indexable/from_template_literal.d.mts +5 -0
- package/build/type/engine/indexable/from_template_literal.mjs +8 -0
- package/build/type/engine/indexable/from_type.d.mts +19 -0
- package/build/type/engine/indexable/from_type.mjs +25 -0
- package/build/type/engine/indexable/{from-union.d.mts → from_union.d.mts} +1 -1
- package/build/type/engine/indexable/{from-union.mjs → from_union.mjs} +1 -1
- package/build/type/engine/indexable/{to-indexable-keys.d.mts → to_indexable_keys.d.mts} +1 -1
- package/build/type/engine/indexable/{to-indexable-keys.mjs → to_indexable_keys.mjs} +1 -1
- package/build/type/engine/indexed/from_object.d.mts +16 -0
- package/build/type/engine/indexed/from_object.mjs +40 -0
- package/build/type/engine/indexed/{from-tuple.d.mts → from_tuple.d.mts} +1 -1
- package/build/type/engine/indexed/{from-tuple.mjs → from_tuple.mjs} +1 -1
- package/build/type/engine/indexed/from_type.d.mts +11 -0
- package/build/type/engine/indexed/from_type.mjs +14 -0
- package/build/type/engine/indexed/instantiate.d.mts +7 -12
- package/build/type/engine/indexed/instantiate.mjs +13 -22
- package/build/type/engine/instance_type/instantiate.d.mts +12 -0
- package/build/type/engine/{instance-type → instance_type}/instantiate.mjs +10 -9
- package/build/type/engine/instantiate.d.mts +53 -42
- package/build/type/engine/instantiate.mjs +92 -106
- package/build/type/engine/interface/instantiate.d.mts +6 -7
- package/build/type/engine/interface/instantiate.mjs +12 -8
- package/build/type/engine/intrinsics/{from-template-literal.d.mts → from_template_literal.d.mts} +3 -3
- package/build/type/engine/intrinsics/from_template_literal.mjs +8 -0
- package/build/type/engine/intrinsics/{from-type.d.mts → from_type.d.mts} +4 -4
- package/build/type/engine/intrinsics/{from-type.mjs → from_type.mjs} +4 -4
- package/build/type/engine/intrinsics/{from-union.d.mts → from_union.d.mts} +1 -1
- package/build/type/engine/intrinsics/{from-union.mjs → from_union.mjs} +1 -1
- package/build/type/engine/intrinsics/instantiate.d.mts +13 -9
- package/build/type/engine/intrinsics/instantiate.mjs +29 -25
- package/build/type/engine/keyof/from_type.d.mts +15 -0
- package/build/type/engine/keyof/from_type.mjs +23 -0
- package/build/type/engine/keyof/instantiate.d.mts +6 -17
- package/build/type/engine/keyof/instantiate.mjs +12 -28
- package/build/type/engine/mapped/instantiate.d.mts +4 -19
- package/build/type/engine/mapped/instantiate.mjs +7 -42
- package/build/type/engine/mapped/mapped_operation.d.mts +22 -0
- package/build/type/engine/mapped/mapped_operation.mjs +42 -0
- package/build/type/engine/mapped/mapped_variants.d.mts +17 -0
- package/build/type/engine/mapped/mapped_variants.mjs +39 -0
- package/build/type/engine/module/instantiate.d.mts +7 -9
- package/build/type/engine/module/instantiate.mjs +17 -15
- package/build/type/engine/non_nullable/instantiate.d.mts +14 -0
- package/build/type/engine/non_nullable/instantiate.mjs +22 -0
- package/build/type/engine/object/collapse.d.mts +1 -1
- package/build/type/engine/object/collapse.mjs +1 -1
- package/build/type/engine/object/{from-cyclic.d.mts → from_cyclic.d.mts} +1 -1
- package/build/type/engine/{indexable/from-cyclic.mjs → object/from_cyclic.mjs} +1 -1
- package/build/type/engine/object/from_dependent.d.mts +5 -0
- package/build/type/engine/object/from_dependent.mjs +8 -0
- package/build/type/engine/object/{from-intersect.d.mts → from_intersect.d.mts} +1 -1
- package/build/type/engine/object/{from-intersect.mjs → from_intersect.mjs} +1 -1
- package/build/type/engine/object/{from-tuple.d.mts → from_tuple.d.mts} +2 -2
- package/build/type/engine/object/{from-tuple.mjs → from_tuple.mjs} +2 -2
- package/build/type/engine/object/from_type.d.mts +16 -0
- package/build/type/engine/object/from_type.mjs +23 -0
- package/build/type/engine/object/{from-union.d.mts → from_union.d.mts} +1 -1
- package/build/type/engine/object/{from-union.mjs → from_union.mjs} +4 -11
- package/build/type/engine/omit/from_type.d.mts +12 -0
- package/build/type/engine/omit/from_type.mjs +18 -0
- package/build/type/engine/omit/instantiate.d.mts +4 -11
- package/build/type/engine/omit/instantiate.mjs +7 -22
- package/build/type/engine/optional/instantiate_add.d.mts +10 -0
- package/build/type/engine/optional/instantiate_add.mjs +14 -0
- package/build/type/engine/optional/instantiate_remove.d.mts +10 -0
- package/build/type/engine/optional/instantiate_remove.mjs +14 -0
- package/build/type/engine/parameters/instantiate.d.mts +7 -7
- package/build/type/engine/parameters/instantiate.mjs +14 -11
- package/build/type/engine/{readonly-type/from-cyclic.d.mts → partial/from_cyclic.d.mts} +1 -1
- package/build/type/engine/partial/{from-cyclic.mjs → from_cyclic.mjs} +1 -1
- package/build/type/engine/partial/from_dependent.d.mts +5 -0
- package/build/type/engine/partial/from_dependent.mjs +8 -0
- package/build/type/engine/partial/from_intersect.d.mts +5 -0
- package/build/type/engine/partial/from_intersect.mjs +8 -0
- package/build/type/engine/{readonly-type/from-object.d.mts → partial/from_object.d.mts} +2 -2
- package/build/type/engine/partial/{from-object.mjs → from_object.mjs} +2 -2
- package/build/type/engine/partial/from_type.d.mts +14 -0
- package/build/type/engine/partial/from_type.mjs +20 -0
- package/build/type/engine/{readonly-type/from-union.d.mts → partial/from_union.d.mts} +1 -1
- package/build/type/engine/{readonly-type/from-union.mjs → partial/from_union.mjs} +1 -1
- package/build/type/engine/partial/instantiate.d.mts +4 -4
- package/build/type/engine/partial/instantiate.mjs +8 -7
- package/build/type/engine/pick/from_type.d.mts +13 -0
- package/build/type/engine/pick/from_type.mjs +20 -0
- package/build/type/engine/pick/instantiate.d.mts +4 -12
- package/build/type/engine/pick/instantiate.mjs +7 -23
- package/build/type/engine/priority/index.d.mts +1 -0
- package/build/type/engine/priority/index.mjs +1 -0
- package/build/type/engine/priority/priority.d.mts +20 -0
- package/build/type/engine/priority/priority.mjs +28 -0
- package/build/type/engine/readonly/instantiate_add.d.mts +10 -0
- package/build/type/engine/readonly/instantiate_add.mjs +14 -0
- package/build/type/engine/readonly/instantiate_remove.d.mts +10 -0
- package/build/type/engine/readonly/instantiate_remove.mjs +14 -0
- package/build/type/engine/{readonly-type/from-array.d.mts → readonly_object/from_array.d.mts} +2 -2
- package/build/type/engine/{readonly-type/from-array.mjs → readonly_object/from_array.mjs} +2 -2
- package/build/type/engine/{partial/from-cyclic.d.mts → readonly_object/from_cyclic.d.mts} +1 -1
- package/build/type/engine/{required/from-cyclic.mjs → readonly_object/from_cyclic.mjs} +1 -1
- package/build/type/engine/readonly_object/from_dependent.d.mts +5 -0
- package/build/type/engine/readonly_object/from_dependent.mjs +8 -0
- package/build/type/engine/readonly_object/from_intersect.d.mts +5 -0
- package/build/type/engine/readonly_object/from_intersect.mjs +8 -0
- package/build/type/engine/{partial/from-object.d.mts → readonly_object/from_object.d.mts} +2 -2
- package/build/type/engine/{readonly-type/from-object.mjs → readonly_object/from_object.mjs} +2 -2
- package/build/type/engine/{readonly-type/from-tuple.d.mts → readonly_object/from_tuple.d.mts} +2 -2
- package/build/type/engine/{readonly-type/from-tuple.mjs → readonly_object/from_tuple.mjs} +2 -2
- package/build/type/engine/readonly_object/from_type.d.mts +18 -0
- package/build/type/engine/readonly_object/from_type.mjs +25 -0
- package/build/type/engine/{partial/from-union.d.mts → readonly_object/from_union.d.mts} +1 -1
- package/build/type/engine/{partial/from-union.mjs → readonly_object/from_union.mjs} +1 -1
- package/build/type/engine/readonly_object/instantiate.d.mts +9 -0
- package/build/type/engine/readonly_object/instantiate.mjs +15 -0
- package/build/type/engine/record/{from-key.d.mts → from_key.d.mts} +11 -11
- package/build/type/engine/record/{from-key.mjs → from_key.mjs} +11 -11
- package/build/type/engine/record/{from-key-any.mjs → from_key_any.mjs} +1 -1
- package/build/type/engine/record/{from-key-enum.d.mts → from_key_enum.d.mts} +3 -3
- package/build/type/engine/record/from_key_enum.mjs +8 -0
- package/build/type/engine/record/{from-key-integer.mjs → from_key_integer.mjs} +1 -1
- package/build/type/engine/record/{from-key-intersect.d.mts → from_key_intersect.d.mts} +1 -1
- package/build/type/engine/record/{from-key-intersect.mjs → from_key_intersect.mjs} +1 -1
- package/build/type/engine/record/{from-key-number.mjs → from_key_number.mjs} +1 -1
- package/build/type/engine/record/{from-key-string.mjs → from_key_string.mjs} +1 -1
- package/build/type/engine/record/{from-key-template-literal.d.mts → from_key_template_literal.d.mts} +4 -4
- package/build/type/engine/record/from_key_template_literal.mjs +12 -0
- package/build/type/engine/record/{from-key-union.mjs → from_key_union.mjs} +1 -1
- package/build/type/engine/record/instantiate.d.mts +4 -4
- package/build/type/engine/record/instantiate.mjs +9 -8
- package/build/type/engine/ref/instantiate.d.mts +4 -4
- package/build/type/engine/ref/instantiate.mjs +6 -6
- package/build/type/engine/required/{from-cyclic.d.mts → from_cyclic.d.mts} +1 -1
- package/build/type/engine/{readonly-type/from-cyclic.mjs → required/from_cyclic.mjs} +1 -1
- package/build/type/engine/required/from_dependent.d.mts +5 -0
- package/build/type/engine/required/from_dependent.mjs +8 -0
- package/build/type/engine/required/from_intersect.d.mts +5 -0
- package/build/type/engine/required/from_intersect.mjs +8 -0
- package/build/type/engine/required/{from-object.d.mts → from_object.d.mts} +2 -2
- package/build/type/engine/required/{from-object.mjs → from_object.mjs} +2 -2
- package/build/type/engine/required/from_type.d.mts +14 -0
- package/build/type/engine/required/from_type.mjs +20 -0
- package/build/type/engine/required/{from-union.d.mts → from_union.d.mts} +1 -1
- package/build/type/engine/required/{from-union.mjs → from_union.mjs} +1 -1
- package/build/type/engine/required/instantiate.d.mts +4 -4
- package/build/type/engine/required/instantiate.mjs +8 -7
- package/build/type/engine/return_type/instantiate.d.mts +12 -0
- package/build/type/engine/return_type/instantiate.mjs +21 -0
- package/build/type/engine/{template-literal → template_literal}/decode.d.mts +4 -4
- package/build/type/engine/{template-literal → template_literal}/decode.mjs +6 -12
- package/build/type/engine/{template-literal → template_literal}/encode.d.mts +6 -4
- package/build/type/engine/{template-literal → template_literal}/encode.mjs +17 -16
- package/build/type/engine/{template-literal → template_literal}/index.d.mts +2 -2
- package/build/type/engine/{template-literal → template_literal}/index.mjs +2 -2
- package/build/type/engine/{template-literal → template_literal}/instantiate.d.mts +4 -4
- package/build/type/engine/template_literal/instantiate.mjs +15 -0
- package/build/type/engine/{template-literal/is-finite.mjs → template_literal/is_finite.mjs} +3 -7
- package/build/type/engine/{template-literal/is-pattern.mjs → template_literal/is_pattern.mjs} +1 -0
- package/build/type/engine/this/expand_this.d.mts +16 -0
- package/build/type/engine/this/expand_this.mjs +26 -0
- package/build/type/engine/with/instantiate.d.mts +8 -0
- package/build/type/engine/with/instantiate.mjs +14 -0
- package/build/type/extends/any.d.mts +1 -1
- package/build/type/extends/any.mjs +1 -1
- package/build/type/extends/array.d.mts +2 -2
- package/build/type/extends/array.mjs +2 -2
- package/build/type/extends/bigint.d.mts +1 -1
- package/build/type/extends/bigint.mjs +1 -1
- package/build/type/extends/boolean.d.mts +1 -1
- package/build/type/extends/boolean.mjs +1 -1
- package/build/type/extends/constructor.d.mts +1 -1
- package/build/type/extends/constructor.mjs +1 -1
- package/build/type/extends/dependent.d.mts +6 -0
- package/build/type/extends/dependent.mjs +6 -0
- package/build/type/extends/enum.d.mts +5 -5
- package/build/type/extends/enum.mjs +4 -3
- package/build/type/extends/extends.d.mts +5 -3
- package/build/type/extends/extends.mjs +10 -8
- package/build/type/extends/{extends-left.d.mts → extends_left.d.mts} +7 -9
- package/build/type/extends/{extends-left.mjs → extends_left.mjs} +26 -29
- package/build/type/extends/{extends-right.d.mts → extends_right.d.mts} +9 -7
- package/build/type/extends/extends_right.mjs +49 -0
- package/build/type/extends/function.d.mts +1 -1
- package/build/type/extends/function.mjs +1 -1
- package/build/type/extends/inference.d.mts +1 -1
- package/build/type/extends/inference.mjs +2 -2
- package/build/type/extends/integer.d.mts +1 -1
- package/build/type/extends/integer.mjs +1 -1
- package/build/type/extends/intersect.d.mts +1 -1
- package/build/type/extends/intersect.mjs +1 -1
- package/build/type/extends/literal.d.mts +2 -2
- package/build/type/extends/literal.mjs +2 -2
- package/build/type/extends/never.d.mts +1 -1
- package/build/type/extends/never.mjs +1 -1
- package/build/type/extends/null.d.mts +1 -1
- package/build/type/extends/null.mjs +1 -1
- package/build/type/extends/number.d.mts +1 -1
- package/build/type/extends/number.mjs +1 -1
- package/build/type/extends/object.d.mts +10 -3
- package/build/type/extends/object.mjs +27 -5
- package/build/type/extends/parameters.d.mts +1 -1
- package/build/type/extends/parameters.mjs +4 -3
- package/build/type/extends/record.d.mts +13 -0
- package/build/type/extends/record.mjs +23 -0
- package/build/type/extends/result.d.mts +1 -4
- package/build/type/extends/result.mjs +0 -3
- package/build/type/extends/{return-type.d.mts → return_type.d.mts} +1 -1
- package/build/type/extends/{return-type.mjs → return_type.mjs} +1 -1
- package/build/type/extends/string.d.mts +1 -1
- package/build/type/extends/string.mjs +1 -1
- package/build/type/extends/symbol.d.mts +1 -1
- package/build/type/extends/symbol.mjs +1 -1
- package/build/type/extends/template_literal.d.mts +6 -0
- package/build/type/extends/template_literal.mjs +7 -0
- package/build/type/extends/tuple.d.mts +5 -8
- package/build/type/extends/tuple.mjs +8 -7
- package/build/type/extends/undefined.d.mts +1 -1
- package/build/type/extends/undefined.mjs +1 -1
- package/build/type/extends/union.d.mts +1 -1
- package/build/type/extends/union.mjs +4 -3
- package/build/type/extends/unknown.d.mts +1 -1
- package/build/type/extends/unknown.mjs +1 -1
- package/build/type/extends/void.d.mts +1 -1
- package/build/type/extends/void.mjs +1 -1
- package/build/type/script/mapping.d.mts +86 -98
- package/build/type/script/mapping.mjs +95 -92
- package/build/type/script/parser.d.mts +42 -40
- package/build/type/script/parser.mjs +23 -22
- package/build/type/script/script.d.mts +3 -4
- package/build/type/script/script.mjs +3 -2
- package/build/type/script/token/internal/guard.d.mts +1 -1
- package/build/type/script/token/internal/guard.mjs +1 -1
- package/build/type/script/token/internal/take.mjs +5 -9
- package/build/type/script/token/until.mjs +4 -7
- package/build/type/types/_codec.d.mts +12 -12
- package/build/type/types/_codec.mjs +0 -1
- package/build/type/types/_immutable.d.mts +2 -9
- package/build/type/types/_immutable.mjs +2 -10
- package/build/type/types/_optional.d.mts +2 -9
- package/build/type/types/_optional.mjs +2 -11
- package/build/type/types/_readonly.d.mts +2 -9
- package/build/type/types/_readonly.mjs +2 -10
- package/build/type/types/_refine.d.mts +13 -8
- package/build/type/types/_refine.mjs +20 -4
- package/build/type/types/array.d.mts +2 -1
- package/build/type/types/array.mjs +2 -1
- package/build/type/types/call.d.mts +3 -3
- package/build/type/types/call.mjs +3 -2
- package/build/type/types/deferred.d.mts +1 -0
- package/build/type/types/deferred.mjs +1 -1
- package/build/type/types/dependent.d.mts +17 -0
- package/build/type/types/{iterator.mjs → dependent.mjs} +9 -9
- package/build/type/types/enum.d.mts +5 -3
- package/build/type/types/enum.mjs +7 -2
- package/build/type/types/function.mjs +1 -1
- package/build/type/types/index.d.mts +2 -5
- package/build/type/types/index.mjs +2 -5
- package/build/type/types/number.d.mts +1 -1
- package/build/type/types/number.mjs +1 -1
- package/build/type/types/object.mjs +1 -1
- package/build/type/types/properties.d.mts +2 -1
- package/build/type/types/record.d.mts +19 -15
- package/build/type/types/record.mjs +19 -17
- package/build/type/types/static.d.mts +3 -6
- package/build/type/types/{template-literal.d.mts → template_literal.d.mts} +6 -4
- package/build/type/types/{template-literal.mjs → template_literal.mjs} +10 -4
- package/build/type/types/unsafe.d.mts +1 -2
- package/build/type/types/unsafe.mjs +5 -3
- package/build/typebox.d.mts +11 -15
- package/build/typebox.mjs +10 -14
- package/build/value/clean/clean.mjs +5 -3
- package/build/value/clean/{from-array.mjs → from_array.mjs} +1 -1
- package/build/value/clean/{from-cyclic.mjs → from_cyclic.mjs} +1 -1
- package/build/value/clean/{from-intersect.mjs → from_intersect.mjs} +3 -3
- package/build/value/clean/{from-object.mjs → from_object.mjs} +1 -1
- package/build/value/clean/{from-record.mjs → from_record.mjs} +1 -1
- package/build/value/clean/{from-ref.mjs → from_ref.mjs} +1 -1
- package/build/value/clean/{from-tuple.mjs → from_tuple.mjs} +1 -1
- package/build/value/clean/from_type.mjs +21 -0
- package/build/value/clean/{from-union.mjs → from_union.mjs} +2 -3
- package/build/value/clone/clone.mjs +2 -72
- package/build/value/codec/decode.mjs +5 -3
- package/build/value/codec/encode.mjs +5 -3
- package/build/value/codec/{from-array.mjs → from_array.mjs} +2 -5
- package/build/value/codec/{from-cyclic.mjs → from_cyclic.mjs} +1 -1
- package/build/value/codec/{from-intersect.mjs → from_intersect.mjs} +1 -1
- package/build/value/codec/{from-object.mjs → from_object.mjs} +3 -6
- package/build/value/codec/{from-record.mjs → from_record.mjs} +3 -8
- package/build/value/codec/{from-ref.mjs → from_ref.mjs} +1 -1
- package/build/value/codec/{from-tuple.mjs → from_tuple.mjs} +2 -5
- package/build/value/codec/{from-type.mjs → from_type.mjs} +8 -8
- package/build/value/codec/{from-union.mjs → from_union.mjs} +3 -4
- package/build/value/convert/convert.mjs +1 -1
- package/build/value/convert/{from-additional.mjs → from_additional.mjs} +1 -1
- package/build/value/convert/from_array.mjs +7 -0
- package/build/value/convert/{from-bigint.mjs → from_bigint.mjs} +0 -3
- package/build/value/convert/{from-boolean.mjs → from_boolean.mjs} +0 -3
- package/build/value/convert/{from-cyclic.mjs → from_cyclic.mjs} +1 -1
- package/build/value/convert/from_enum.mjs +6 -0
- package/build/value/convert/{from-integer.mjs → from_integer.mjs} +0 -3
- package/build/value/convert/{from-intersect.mjs → from_intersect.mjs} +1 -1
- package/build/value/convert/{from-literal.d.mts → from_literal.d.mts} +1 -1
- package/build/value/convert/{from-null.mjs → from_null.mjs} +0 -3
- package/build/value/convert/{from-number.mjs → from_number.mjs} +0 -3
- package/build/value/convert/{from-object.mjs → from_object.mjs} +3 -3
- package/build/value/convert/{from-record.mjs → from_record.mjs} +2 -2
- package/build/value/convert/{from-ref.mjs → from_ref.mjs} +1 -1
- package/build/value/convert/{from-string.mjs → from_string.mjs} +0 -3
- package/build/value/convert/{from-template-literal.d.mts → from_template_literal.d.mts} +1 -1
- package/build/value/convert/from_template_literal.mjs +6 -0
- package/build/value/convert/{from-tuple.mjs → from_tuple.mjs} +1 -1
- package/build/value/convert/from_type.d.mts +2 -0
- package/build/value/convert/from_type.mjs +43 -0
- package/build/value/convert/{from-undefined.mjs → from_undefined.mjs} +0 -3
- package/build/value/convert/{from-union.mjs → from_union.mjs} +1 -1
- package/build/value/convert/{from-void.mjs → from_void.mjs} +0 -3
- package/build/value/convert/try/try.d.mts +8 -7
- package/build/value/convert/try/try.mjs +8 -7
- package/build/value/convert/try/try_array.d.mts +2 -0
- package/build/value/convert/try/try_array.mjs +6 -0
- package/build/value/convert/try/{try-bigint.d.mts → try_bigint.d.mts} +1 -1
- package/build/value/convert/try/{try-bigint.mjs → try_bigint.mjs} +5 -34
- package/build/value/convert/try/{try-boolean.d.mts → try_boolean.d.mts} +1 -1
- package/build/value/convert/try/{try-boolean.mjs → try_boolean.mjs} +4 -27
- package/build/value/convert/try/{try-null.d.mts → try_null.d.mts} +1 -1
- package/build/value/convert/try/{try-null.mjs → try_null.mjs} +3 -20
- package/build/value/convert/try/{try-number.d.mts → try_number.d.mts} +1 -1
- package/build/value/convert/try/try_number.mjs +44 -0
- package/build/value/convert/try/{try-result.mjs → try_result.mjs} +0 -1
- package/build/value/convert/try/{try-string.d.mts → try_string.d.mts} +1 -1
- package/build/value/convert/try/try_string.mjs +12 -0
- package/build/value/convert/try/{try-undefined.d.mts → try_undefined.d.mts} +1 -1
- package/build/value/convert/try/{try-undefined.mjs → try_undefined.mjs} +3 -20
- package/build/value/create/create.mjs +1 -1
- package/build/value/create/{from-array.mjs → from_array.mjs} +1 -1
- package/build/value/create/{from-constructor.mjs → from_constructor.mjs} +1 -1
- package/build/value/create/{from-cyclic.mjs → from_cyclic.mjs} +1 -1
- package/build/value/create/from_enum.mjs +6 -0
- package/build/value/create/{from-function.mjs → from_function.mjs} +1 -1
- package/build/value/create/{from-intersect.mjs → from_intersect.mjs} +1 -1
- package/build/value/create/{from-object.mjs → from_object.mjs} +1 -1
- package/build/value/create/{from-ref.mjs → from_ref.mjs} +1 -1
- package/build/value/create/{from-template-literal.mjs → from_template_literal.mjs} +2 -2
- package/build/value/create/{from-tuple.mjs → from_tuple.mjs} +1 -1
- package/build/value/create/from_type.mjs +61 -0
- package/build/value/create/{from-union.mjs → from_union.mjs} +1 -1
- package/build/value/default/default.mjs +1 -1
- package/build/value/default/{from-array.mjs → from_array.mjs} +1 -1
- package/build/value/{clean/from-cyclic.d.mts → default/from_cyclic.d.mts} +1 -1
- package/build/value/default/{from-cyclic.mjs → from_cyclic.mjs} +1 -1
- package/build/value/default/{from-intersect.mjs → from_intersect.mjs} +1 -1
- package/build/value/default/{from-object.mjs → from_object.mjs} +2 -2
- package/build/value/default/{from-record.mjs → from_record.mjs} +1 -1
- package/build/value/default/{from-ref.mjs → from_ref.mjs} +1 -1
- package/build/value/default/{from-tuple.mjs → from_tuple.mjs} +1 -1
- package/build/value/default/from_type.mjs +25 -0
- package/build/value/default/{from-union.mjs → from_union.mjs} +1 -1
- package/build/value/delta/diff.mjs +6 -0
- package/build/value/errors/errors.d.mts +2 -2
- package/build/value/errors/errors.mjs +1 -1
- package/build/value/index.d.mts +0 -1
- package/build/value/index.mjs +0 -1
- package/build/value/repair/{from-array.mjs → from_array.mjs} +1 -1
- package/build/value/repair/from_enum.mjs +6 -0
- package/build/value/repair/from_intersect.d.mts +2 -0
- package/build/value/repair/{from-intersect.mjs → from_intersect.mjs} +1 -1
- package/build/value/repair/{from-object.mjs → from_object.mjs} +1 -1
- package/build/value/repair/{from-record.mjs → from_record.mjs} +1 -1
- package/build/value/repair/{from-ref.mjs → from_ref.mjs} +1 -1
- package/build/value/{convert/from-template-literal.mjs → repair/from_template_literal.mjs} +2 -2
- package/build/value/repair/{from-tuple.mjs → from_tuple.mjs} +1 -1
- package/build/value/repair/{from-type.mjs → from_type.mjs} +34 -32
- package/build/value/{clean/from-union.d.mts → repair/from_union.d.mts} +1 -1
- package/build/value/repair/{from-union.mjs → from_union.mjs} +2 -2
- package/build/value/repair/repair.mjs +1 -1
- package/build/value/shared/index.d.mts +3 -3
- package/build/value/shared/index.mjs +3 -3
- package/build/value/shared/union_priority_sort.d.mts +7 -0
- package/build/value/shared/union_priority_sort.mjs +72 -0
- package/build/value/value.d.mts +0 -1
- package/build/value/value.mjs +0 -1
- package/changes.json +1 -1
- package/package.json +22 -22
- package/readme.md +214 -95
- package/build/format/idn-email.mjs +0 -8
- package/build/schema/engine/_guard.d.mts +0 -6
- package/build/schema/engine/_guard.mjs +0 -26
- package/build/schema/static/~non-readonly.d.mts +0 -7
- package/build/schema/static/~readonly.d.mts +0 -6
- package/build/schema/static/~readonly.mjs +0 -2
- package/build/schema/types/_guard.d.mts +0 -10
- package/build/schema/types/_guard.mjs +0 -16
- package/build/type/action/_optional.d.mts +0 -19
- package/build/type/action/_optional.mjs +0 -40
- package/build/type/action/_readonly.d.mts +0 -19
- package/build/type/action/_readonly.mjs +0 -40
- package/build/type/action/awaited.d.mts +0 -11
- package/build/type/action/awaited.mjs +0 -12
- package/build/type/action/options.d.mts +0 -12
- package/build/type/action/options.mjs +0 -12
- package/build/type/action/readonly-type.d.mts +0 -11
- package/build/type/action/readonly-type.mjs +0 -12
- package/build/type/engine/awaited/instantiate.d.mts +0 -10
- package/build/type/engine/awaited/instantiate.mjs +0 -19
- package/build/type/engine/constructor-parameters/instantiate.d.mts +0 -14
- package/build/type/engine/constructor-parameters/instantiate.mjs +0 -22
- package/build/type/engine/enum/enum-to-union.d.mts +0 -14
- package/build/type/engine/enum/enum-to-union.mjs +0 -24
- package/build/type/engine/indexable/from-enum.d.mts +0 -6
- package/build/type/engine/indexable/from-enum.mjs +0 -8
- package/build/type/engine/indexable/from-template-literal.d.mts +0 -5
- package/build/type/engine/indexable/from-template-literal.mjs +0 -8
- package/build/type/engine/indexable/from-type.d.mts +0 -17
- package/build/type/engine/indexable/from-type.mjs +0 -22
- package/build/type/engine/indexed/from-object.d.mts +0 -9
- package/build/type/engine/indexed/from-object.mjs +0 -18
- package/build/type/engine/instance-type/instantiate.d.mts +0 -12
- package/build/type/engine/intrinsics/from-template-literal.mjs +0 -8
- package/build/type/engine/mapped/mapped-variants.d.mts +0 -15
- package/build/type/engine/mapped/mapped-variants.mjs +0 -29
- package/build/type/engine/non-nullable/instantiate.d.mts +0 -15
- package/build/type/engine/non-nullable/instantiate.mjs +0 -22
- package/build/type/engine/object/from-type.d.mts +0 -14
- package/build/type/engine/object/from-type.mjs +0 -20
- package/build/type/engine/options/instantiate.d.mts +0 -8
- package/build/type/engine/options/instantiate.mjs +0 -13
- package/build/type/engine/partial/from-intersect.d.mts +0 -5
- package/build/type/engine/partial/from-intersect.mjs +0 -7
- package/build/type/engine/partial/from-type.d.mts +0 -12
- package/build/type/engine/partial/from-type.mjs +0 -17
- package/build/type/engine/readonly-type/from-intersect.d.mts +0 -5
- package/build/type/engine/readonly-type/from-intersect.mjs +0 -7
- package/build/type/engine/readonly-type/from-type.d.mts +0 -16
- package/build/type/engine/readonly-type/from-type.mjs +0 -22
- package/build/type/engine/readonly-type/instantiate.d.mts +0 -9
- package/build/type/engine/readonly-type/instantiate.mjs +0 -14
- package/build/type/engine/record/from-key-enum.mjs +0 -8
- package/build/type/engine/record/from-key-template-literal.mjs +0 -12
- package/build/type/engine/required/from-intersect.d.mts +0 -5
- package/build/type/engine/required/from-intersect.mjs +0 -7
- package/build/type/engine/required/from-type.d.mts +0 -12
- package/build/type/engine/required/from-type.mjs +0 -17
- package/build/type/engine/return-type/index.d.mts +0 -1
- package/build/type/engine/return-type/index.mjs +0 -1
- package/build/type/engine/return-type/instantiate.d.mts +0 -11
- package/build/type/engine/return-type/instantiate.mjs +0 -18
- package/build/type/engine/template-literal/instantiate.mjs +0 -14
- package/build/type/extends/async-iterator.d.mts +0 -7
- package/build/type/extends/async-iterator.mjs +0 -9
- package/build/type/extends/extends-right.mjs +0 -43
- package/build/type/extends/iterator.d.mts +0 -7
- package/build/type/extends/iterator.mjs +0 -9
- package/build/type/extends/promise.d.mts +0 -7
- package/build/type/extends/promise.mjs +0 -9
- package/build/type/extends/template-literal.d.mts +0 -6
- package/build/type/extends/template-literal.mjs +0 -7
- package/build/type/types/async-iterator.d.mts +0 -16
- package/build/type/types/async-iterator.mjs +0 -24
- package/build/type/types/base.d.mts +0 -50
- package/build/type/types/base.mjs +0 -84
- package/build/type/types/iterator.d.mts +0 -16
- package/build/type/types/promise.d.mts +0 -16
- package/build/type/types/promise.mjs +0 -24
- package/build/value/clean/from-base.d.mts +0 -2
- package/build/value/clean/from-base.mjs +0 -4
- package/build/value/clean/from-type.mjs +0 -23
- package/build/value/convert/from-array.mjs +0 -8
- package/build/value/convert/from-base.d.mts +0 -2
- package/build/value/convert/from-base.mjs +0 -4
- package/build/value/convert/from-enum.mjs +0 -7
- package/build/value/convert/from-type.mjs +0 -45
- package/build/value/convert/try/try-number.mjs +0 -76
- package/build/value/convert/try/try-string.mjs +0 -56
- package/build/value/create/from-async-iterator.d.mts +0 -2
- package/build/value/create/from-async-iterator.mjs +0 -5
- package/build/value/create/from-base.d.mts +0 -2
- package/build/value/create/from-base.mjs +0 -4
- package/build/value/create/from-enum.mjs +0 -6
- package/build/value/create/from-iterator.d.mts +0 -2
- package/build/value/create/from-iterator.mjs +0 -5
- package/build/value/create/from-promise.d.mts +0 -2
- package/build/value/create/from-promise.mjs +0 -5
- package/build/value/create/from-type.mjs +0 -69
- package/build/value/default/from-base.d.mts +0 -2
- package/build/value/default/from-base.mjs +0 -5
- package/build/value/default/from-intersect.d.mts +0 -2
- package/build/value/default/from-type.mjs +0 -27
- package/build/value/mutate/error.d.mts +0 -3
- package/build/value/mutate/error.mjs +0 -6
- package/build/value/mutate/from-array.d.mts +0 -2
- package/build/value/mutate/from-array.mjs +0 -16
- package/build/value/mutate/from-object.d.mts +0 -2
- package/build/value/mutate/from-object.mjs +0 -27
- package/build/value/mutate/from-unknown.d.mts +0 -2
- package/build/value/mutate/from-unknown.mjs +0 -7
- package/build/value/mutate/from-value.d.mts +0 -2
- package/build/value/mutate/from-value.mjs +0 -12
- package/build/value/mutate/index.d.mts +0 -1
- package/build/value/mutate/index.mjs +0 -1
- package/build/value/mutate/mutate.d.mts +0 -9
- package/build/value/mutate/mutate.mjs +0 -39
- package/build/value/repair/from-base.d.mts +0 -2
- package/build/value/repair/from-base.mjs +0 -8
- package/build/value/repair/from-enum.mjs +0 -7
- package/build/value/repair/from-template-literal.mjs +0 -7
- package/build/value/repair/from-type.d.mts +0 -2
- package/build/value/shared/union-priority-sort.d.mts +0 -3
- package/build/value/shared/union-priority-sort.mjs +0 -36
- /package/build/format/{date-time.d.mts → date_time.d.mts} +0 -0
- /package/build/format/{date-time.mjs → date_time.mjs} +0 -0
- /package/build/format/{idn-hostname.d.mts → idn_hostname.d.mts} +0 -0
- /package/build/format/{idn-hostname.mjs → idn_hostname.mjs} +0 -0
- /package/build/format/{iri-reference.d.mts → iri_reference.d.mts} +0 -0
- /package/build/format/{iri-reference.mjs → iri_reference.mjs} +0 -0
- /package/build/format/{json-pointer.d.mts → json_pointer.d.mts} +0 -0
- /package/build/format/{json-pointer.mjs → json_pointer.mjs} +0 -0
- /package/build/format/{json-pointer-uri-fragment.d.mts → json_pointer_uri_fragment.d.mts} +0 -0
- /package/build/format/{json-pointer-uri-fragment.mjs → json_pointer_uri_fragment.mjs} +0 -0
- /package/build/format/{relative-json-pointer.d.mts → relative_json_pointer.d.mts} +0 -0
- /package/build/format/{relative-json-pointer.mjs → relative_json_pointer.mjs} +0 -0
- /package/build/format/{uri-reference.d.mts → uri_reference.d.mts} +0 -0
- /package/build/format/{uri-reference.mjs → uri_reference.mjs} +0 -0
- /package/build/format/{uri-template.d.mts → uri_template.d.mts} +0 -0
- /package/build/format/{uri-template.mjs → uri_template.mjs} +0 -0
- /package/build/schema/pointer/{pointer-get.d.mts → pointer_get.d.mts} +0 -0
- /package/build/schema/pointer/{pointer-get.mjs → pointer_get.mjs} +0 -0
- /package/build/schema/static/{~comparer.mjs → _canonical.mjs} +0 -0
- /package/build/schema/static/{~comparer.d.mts → _comparer.d.mts} +0 -0
- /package/build/schema/static/{~elements.mjs → _comparer.mjs} +0 -0
- /package/build/schema/static/{~non-readonly.mjs → _elements.mjs} +0 -0
- /package/build/type/engine/call/{distribute-arguments.d.mts → distribute_arguments.d.mts} +0 -0
- /package/build/type/engine/call/{resolve-arguments.d.mts → resolve_arguments.d.mts} +0 -0
- /package/build/type/engine/call/{resolve-target.d.mts → resolve_target.d.mts} +0 -0
- /package/build/type/engine/call/{resolve-target.mjs → resolve_target.mjs} +0 -0
- /package/build/type/engine/{awaited → constructor_parameters}/index.d.mts +0 -0
- /package/build/type/engine/{awaited → constructor_parameters}/index.mjs +0 -0
- /package/build/type/engine/enum/{typescript-enum-to-enum-values.d.mts → typescript_enum_to_enum_values.d.mts} +0 -0
- /package/build/type/engine/enum/{typescript-enum-to-enum-values.mjs → typescript_enum_to_enum_values.mjs} +0 -0
- /package/build/type/engine/helpers/{keys-to-indexer.d.mts → keys_to_indexer.d.mts} +0 -0
- /package/build/type/engine/helpers/{keys-to-indexer.mjs → keys_to_indexer.mjs} +0 -0
- /package/build/type/engine/indexable/{from-literal.mjs → from_literal.mjs} +0 -0
- /package/build/type/engine/indexable/{to-indexable.d.mts → to_indexable.d.mts} +0 -0
- /package/build/type/engine/indexable/{to-indexable.mjs → to_indexable.mjs} +0 -0
- /package/build/type/engine/indexed/{array-indexer.d.mts → array_indexer.d.mts} +0 -0
- /package/build/type/engine/indexed/{array-indexer.mjs → array_indexer.mjs} +0 -0
- /package/build/type/engine/indexed/{from-array.d.mts → from_array.d.mts} +0 -0
- /package/build/type/engine/indexed/{from-array.mjs → from_array.mjs} +0 -0
- /package/build/type/engine/{constructor-parameters → instance_type}/index.d.mts +0 -0
- /package/build/type/engine/{constructor-parameters → instance_type}/index.mjs +0 -0
- /package/build/type/engine/intrinsics/{from-literal.d.mts → from_literal.d.mts} +0 -0
- /package/build/type/engine/intrinsics/{from-literal.mjs → from_literal.mjs} +0 -0
- /package/build/type/engine/keyof/{from-any.d.mts → from_any.d.mts} +0 -0
- /package/build/type/engine/keyof/{from-any.mjs → from_any.mjs} +0 -0
- /package/build/type/engine/keyof/{from-array.d.mts → from_array.d.mts} +0 -0
- /package/build/type/engine/keyof/{from-array.mjs → from_array.mjs} +0 -0
- /package/build/type/engine/keyof/{from-object.d.mts → from_object.d.mts} +0 -0
- /package/build/type/engine/keyof/{from-object.mjs → from_object.mjs} +0 -0
- /package/build/type/engine/keyof/{from-record.d.mts → from_record.d.mts} +0 -0
- /package/build/type/engine/keyof/{from-record.mjs → from_record.mjs} +0 -0
- /package/build/type/engine/keyof/{from-tuple.d.mts → from_tuple.d.mts} +0 -0
- /package/build/type/engine/keyof/{from-tuple.mjs → from_tuple.mjs} +0 -0
- /package/build/type/engine/{instance-type → non_nullable}/index.d.mts +0 -0
- /package/build/type/engine/{instance-type → non_nullable}/index.mjs +0 -0
- /package/build/type/engine/object/{from-object.d.mts → from_object.d.mts} +0 -0
- /package/build/type/engine/object/{from-object.mjs → from_object.mjs} +0 -0
- /package/build/type/engine/{non-nullable → readonly_object}/index.d.mts +0 -0
- /package/build/type/engine/{non-nullable → readonly_object}/index.mjs +0 -0
- /package/build/type/engine/record/{from-key-any.d.mts → from_key_any.d.mts} +0 -0
- /package/build/type/engine/record/{from-key-boolean.d.mts → from_key_boolean.d.mts} +0 -0
- /package/build/type/engine/record/{from-key-boolean.mjs → from_key_boolean.mjs} +0 -0
- /package/build/type/engine/record/{from-key-integer.d.mts → from_key_integer.d.mts} +0 -0
- /package/build/type/engine/record/{from-key-literal.d.mts → from_key_literal.d.mts} +0 -0
- /package/build/type/engine/record/{from-key-literal.mjs → from_key_literal.mjs} +0 -0
- /package/build/type/engine/record/{from-key-number.d.mts → from_key_number.d.mts} +0 -0
- /package/build/type/engine/record/{from-key-string.d.mts → from_key_string.d.mts} +0 -0
- /package/build/type/engine/record/{from-key-union.d.mts → from_key_union.d.mts} +0 -0
- /package/build/type/engine/record/{record-create.d.mts → record_create.d.mts} +0 -0
- /package/build/type/engine/record/{record-create.mjs → record_create.mjs} +0 -0
- /package/build/type/engine/{options → return_type}/index.d.mts +0 -0
- /package/build/type/engine/{options → return_type}/index.mjs +0 -0
- /package/build/type/engine/{template-literal → template_literal}/create.d.mts +0 -0
- /package/build/type/engine/{template-literal → template_literal}/create.mjs +0 -0
- /package/build/type/engine/{template-literal/is-finite.d.mts → template_literal/is_finite.d.mts} +0 -0
- /package/build/type/engine/{template-literal/is-pattern.d.mts → template_literal/is_pattern.d.mts} +0 -0
- /package/build/type/engine/{template-literal → template_literal}/static.d.mts +0 -0
- /package/build/type/engine/{template-literal → template_literal}/static.mjs +0 -0
- /package/build/type/engine/tuple/{to-object.d.mts → to_object.d.mts} +0 -0
- /package/build/type/engine/tuple/{to-object.mjs → to_object.mjs} +0 -0
- /package/build/type/engine/{readonly-type → with}/index.d.mts +0 -0
- /package/build/type/engine/{readonly-type → with}/index.mjs +0 -0
- /package/build/value/clean/{from-array.d.mts → from_array.d.mts} +0 -0
- /package/build/value/{convert/from-cyclic.d.mts → clean/from_cyclic.d.mts} +0 -0
- /package/build/value/clean/{from-intersect.d.mts → from_intersect.d.mts} +0 -0
- /package/build/value/clean/{from-object.d.mts → from_object.d.mts} +0 -0
- /package/build/value/clean/{from-record.d.mts → from_record.d.mts} +0 -0
- /package/build/value/clean/{from-ref.d.mts → from_ref.d.mts} +0 -0
- /package/build/value/clean/{from-tuple.d.mts → from_tuple.d.mts} +0 -0
- /package/build/value/clean/{from-type.d.mts → from_type.d.mts} +0 -0
- /package/build/value/{repair/from-union.d.mts → clean/from_union.d.mts} +0 -0
- /package/build/value/codec/{from-array.d.mts → from_array.d.mts} +0 -0
- /package/build/value/codec/{from-cyclic.d.mts → from_cyclic.d.mts} +0 -0
- /package/build/value/codec/{from-intersect.d.mts → from_intersect.d.mts} +0 -0
- /package/build/value/codec/{from-object.d.mts → from_object.d.mts} +0 -0
- /package/build/value/codec/{from-record.d.mts → from_record.d.mts} +0 -0
- /package/build/value/codec/{from-ref.d.mts → from_ref.d.mts} +0 -0
- /package/build/value/codec/{from-tuple.d.mts → from_tuple.d.mts} +0 -0
- /package/build/value/codec/{from-type.d.mts → from_type.d.mts} +0 -0
- /package/build/value/codec/{from-union.d.mts → from_union.d.mts} +0 -0
- /package/build/value/convert/{from-additional.d.mts → from_additional.d.mts} +0 -0
- /package/build/value/convert/{from-array.d.mts → from_array.d.mts} +0 -0
- /package/build/value/convert/{from-bigint.d.mts → from_bigint.d.mts} +0 -0
- /package/build/value/convert/{from-boolean.d.mts → from_boolean.d.mts} +0 -0
- /package/build/value/{default/from-cyclic.d.mts → convert/from_cyclic.d.mts} +0 -0
- /package/build/value/convert/{from-enum.d.mts → from_enum.d.mts} +0 -0
- /package/build/value/convert/{from-integer.d.mts → from_integer.d.mts} +0 -0
- /package/build/value/convert/{from-intersect.d.mts → from_intersect.d.mts} +0 -0
- /package/build/value/convert/{from-literal.mjs → from_literal.mjs} +0 -0
- /package/build/value/convert/{from-null.d.mts → from_null.d.mts} +0 -0
- /package/build/value/convert/{from-number.d.mts → from_number.d.mts} +0 -0
- /package/build/value/convert/{from-object.d.mts → from_object.d.mts} +0 -0
- /package/build/value/convert/{from-record.d.mts → from_record.d.mts} +0 -0
- /package/build/value/convert/{from-ref.d.mts → from_ref.d.mts} +0 -0
- /package/build/value/convert/{from-string.d.mts → from_string.d.mts} +0 -0
- /package/build/value/convert/{from-tuple.d.mts → from_tuple.d.mts} +0 -0
- /package/build/value/convert/{from-undefined.d.mts → from_undefined.d.mts} +0 -0
- /package/build/value/convert/{from-union.d.mts → from_union.d.mts} +0 -0
- /package/build/value/convert/{from-void.d.mts → from_void.d.mts} +0 -0
- /package/build/value/convert/try/{try-result.d.mts → try_result.d.mts} +0 -0
- /package/build/value/create/{from-array.d.mts → from_array.d.mts} +0 -0
- /package/build/value/create/{from-bigint.d.mts → from_bigint.d.mts} +0 -0
- /package/build/value/create/{from-bigint.mjs → from_bigint.mjs} +0 -0
- /package/build/value/create/{from-boolean.d.mts → from_boolean.d.mts} +0 -0
- /package/build/value/create/{from-boolean.mjs → from_boolean.mjs} +0 -0
- /package/build/value/create/{from-constructor.d.mts → from_constructor.d.mts} +0 -0
- /package/build/value/create/{from-cyclic.d.mts → from_cyclic.d.mts} +0 -0
- /package/build/value/create/{from-default.d.mts → from_default.d.mts} +0 -0
- /package/build/value/create/{from-default.mjs → from_default.mjs} +0 -0
- /package/build/value/create/{from-enum.d.mts → from_enum.d.mts} +0 -0
- /package/build/value/create/{from-function.d.mts → from_function.d.mts} +0 -0
- /package/build/value/create/{from-integer.d.mts → from_integer.d.mts} +0 -0
- /package/build/value/create/{from-integer.mjs → from_integer.mjs} +0 -0
- /package/build/value/create/{from-intersect.d.mts → from_intersect.d.mts} +0 -0
- /package/build/value/create/{from-literal.d.mts → from_literal.d.mts} +0 -0
- /package/build/value/create/{from-literal.mjs → from_literal.mjs} +0 -0
- /package/build/value/create/{from-never.d.mts → from_never.d.mts} +0 -0
- /package/build/value/create/{from-never.mjs → from_never.mjs} +0 -0
- /package/build/value/create/{from-null.d.mts → from_null.d.mts} +0 -0
- /package/build/value/create/{from-null.mjs → from_null.mjs} +0 -0
- /package/build/value/create/{from-number.d.mts → from_number.d.mts} +0 -0
- /package/build/value/create/{from-number.mjs → from_number.mjs} +0 -0
- /package/build/value/create/{from-object.d.mts → from_object.d.mts} +0 -0
- /package/build/value/create/{from-record.d.mts → from_record.d.mts} +0 -0
- /package/build/value/create/{from-record.mjs → from_record.mjs} +0 -0
- /package/build/value/create/{from-ref.d.mts → from_ref.d.mts} +0 -0
- /package/build/value/create/{from-string.d.mts → from_string.d.mts} +0 -0
- /package/build/value/create/{from-string.mjs → from_string.mjs} +0 -0
- /package/build/value/create/{from-symbol.d.mts → from_symbol.d.mts} +0 -0
- /package/build/value/create/{from-symbol.mjs → from_symbol.mjs} +0 -0
- /package/build/value/create/{from-template-literal.d.mts → from_template_literal.d.mts} +0 -0
- /package/build/value/create/{from-tuple.d.mts → from_tuple.d.mts} +0 -0
- /package/build/value/create/{from-type.d.mts → from_type.d.mts} +0 -0
- /package/build/value/create/{from-undefined.d.mts → from_undefined.d.mts} +0 -0
- /package/build/value/create/{from-undefined.mjs → from_undefined.mjs} +0 -0
- /package/build/value/create/{from-union.d.mts → from_union.d.mts} +0 -0
- /package/build/value/create/{from-void.d.mts → from_void.d.mts} +0 -0
- /package/build/value/create/{from-void.mjs → from_void.mjs} +0 -0
- /package/build/value/default/{from-array.d.mts → from_array.d.mts} +0 -0
- /package/build/value/default/{from-default.d.mts → from_default.d.mts} +0 -0
- /package/build/value/default/{from-default.mjs → from_default.mjs} +0 -0
- /package/build/value/{repair/from-intersect.d.mts → default/from_intersect.d.mts} +0 -0
- /package/build/value/default/{from-object.d.mts → from_object.d.mts} +0 -0
- /package/build/value/default/{from-record.d.mts → from_record.d.mts} +0 -0
- /package/build/value/default/{from-ref.d.mts → from_ref.d.mts} +0 -0
- /package/build/value/default/{from-tuple.d.mts → from_tuple.d.mts} +0 -0
- /package/build/value/{convert/from-type.d.mts → default/from_type.d.mts} +0 -0
- /package/build/value/default/{from-union.d.mts → from_union.d.mts} +0 -0
- /package/build/value/repair/{from-array.d.mts → from_array.d.mts} +0 -0
- /package/build/value/repair/{from-enum.d.mts → from_enum.d.mts} +0 -0
- /package/build/value/repair/{from-object.d.mts → from_object.d.mts} +0 -0
- /package/build/value/repair/{from-record.d.mts → from_record.d.mts} +0 -0
- /package/build/value/repair/{from-ref.d.mts → from_ref.d.mts} +0 -0
- /package/build/value/repair/{from-template-literal.d.mts → from_template_literal.d.mts} +0 -0
- /package/build/value/repair/{from-tuple.d.mts → from_tuple.d.mts} +0 -0
- /package/build/value/{default/from-type.d.mts → repair/from_type.d.mts} +0 -0
- /package/build/value/repair/{from-unknown.d.mts → from_unknown.d.mts} +0 -0
- /package/build/value/repair/{from-unknown.mjs → from_unknown.mjs} +0 -0
- /package/build/value/shared/{optional-undefined.d.mts → optional_undefined.d.mts} +0 -0
- /package/build/value/shared/{optional-undefined.mjs → optional_undefined.mjs} +0 -0
- /package/build/value/shared/{union-score-select.d.mts → union_score_select.d.mts} +0 -0
- /package/build/value/shared/{union-score-select.mjs → union_score_select.mjs} +0 -0
package/README.md
CHANGED
|
@@ -13,8 +13,8 @@ npm install @depup/typebox
|
|
|
13
13
|
|
|
14
14
|
| Field | Value |
|
|
15
15
|
|-------|-------|
|
|
16
|
-
| Original | [typebox](https://www.npmjs.com/package/typebox) @ 1.
|
|
17
|
-
| Processed | 2026-
|
|
16
|
+
| Original | [typebox](https://www.npmjs.com/package/typebox) @ 1.3.8 |
|
|
17
|
+
| Processed | 2026-07-26 |
|
|
18
18
|
| Smoke test | passed |
|
|
19
19
|
| Deps updated | 0 |
|
|
20
20
|
|
package/build/compile/code.mjs
CHANGED
|
@@ -45,8 +45,8 @@ function FunctionSection(build) {
|
|
|
45
45
|
// ------------------------------------------------------------------
|
|
46
46
|
function ExportSection(build) {
|
|
47
47
|
const body = build.UseUnevaluated()
|
|
48
|
-
? `const context = new CheckContext({}, {}); return ${build.
|
|
49
|
-
: `return ${build.
|
|
48
|
+
? `const context = new CheckContext({}, {}); return ${build.Entry()}`
|
|
49
|
+
: `return ${build.Entry()}`;
|
|
50
50
|
return [
|
|
51
51
|
Separator(),
|
|
52
52
|
TsIgnore(),
|
|
@@ -1,16 +1,11 @@
|
|
|
1
1
|
import { type TLocalizedValidationError } from '../error/index.mjs';
|
|
2
|
-
import { type StaticDecode, type StaticEncode, type TProperties, type TSchema
|
|
3
|
-
export declare class Validator<Context extends TProperties = TProperties, Type extends TSchema = TSchema, Encode extends unknown = StaticEncode<Type, Context>, Decode extends unknown = StaticDecode<Type, Context>>
|
|
4
|
-
private readonly context;
|
|
5
|
-
private readonly type;
|
|
6
|
-
private readonly isAccelerated;
|
|
2
|
+
import { type StaticDecode, type StaticEncode, type TProperties, type TSchema } from '../type/index.mjs';
|
|
3
|
+
export declare class Validator<Context extends TProperties = TProperties, Type extends TSchema = TSchema, Encode extends unknown = StaticEncode<Type, Context>, Decode extends unknown = StaticDecode<Type, Context>> {
|
|
7
4
|
private readonly hasCodec;
|
|
8
|
-
private readonly
|
|
9
|
-
private readonly
|
|
10
|
-
/** Constructs a Validator
|
|
5
|
+
private readonly buildResult;
|
|
6
|
+
private readonly evaluateResult;
|
|
7
|
+
/** Constructs a Validator. */
|
|
11
8
|
constructor(context: Context, type: Type);
|
|
12
|
-
/** Constructs a Validator with the given arguments. */
|
|
13
|
-
constructor(context: Context, type: Type, isEvaluated: boolean, hasCodec: boolean, code: string, check: (value: unknown) => boolean);
|
|
14
9
|
/** Returns true if this Validator is using JIT acceleration. */
|
|
15
10
|
IsAccelerated(): boolean;
|
|
16
11
|
/** Returns the Context for this validator. */
|
|
@@ -21,6 +16,8 @@ export declare class Validator<Context extends TProperties = TProperties, Type e
|
|
|
21
16
|
Code(): string;
|
|
22
17
|
/** Performs a type-guard check on the provided value. */
|
|
23
18
|
Check(value: unknown): value is Encode;
|
|
19
|
+
/** Validates a value and returns it. Will throw if invalid. */
|
|
20
|
+
Parse(value: unknown): Encode;
|
|
24
21
|
/** Inspects a value and returns a detailed list of validation errors. */
|
|
25
22
|
Errors(value: unknown): TLocalizedValidationError[];
|
|
26
23
|
/** Cleans a value using the Validator type. */
|
|
@@ -31,10 +28,6 @@ export declare class Validator<Context extends TProperties = TProperties, Type e
|
|
|
31
28
|
Create(): Encode;
|
|
32
29
|
/** Creates defaults using the Validator type. */
|
|
33
30
|
Default(value: unknown): unknown;
|
|
34
|
-
/** Clones this validator. */
|
|
35
|
-
Clone(): Validator<Context, Type>;
|
|
36
|
-
/** Validates a value and returns it. Will throw if invalid. */
|
|
37
|
-
Parse(value: unknown): Encode;
|
|
38
31
|
/** Decodes a value */
|
|
39
32
|
Decode(value: unknown): Decode;
|
|
40
33
|
/** Encodes a value */
|
|
@@ -1,116 +1,91 @@
|
|
|
1
1
|
// deno-fmt-ignore-file
|
|
2
2
|
import { Settings } from '../system/settings/index.mjs';
|
|
3
|
-
import { Arguments } from '../system/arguments/index.mjs';
|
|
4
|
-
import { Environment } from '../system/environment/index.mjs';
|
|
5
|
-
import { Base } from '../type/index.mjs';
|
|
6
3
|
import { Errors, Clean, Convert, Create, Default, Decode, Encode, HasCodec, Parser, ParseError } from '../value/index.mjs';
|
|
7
4
|
import { Build } from '../schema/index.mjs';
|
|
8
5
|
// ------------------------------------------------------------------
|
|
9
6
|
// Validator<...>
|
|
10
7
|
// ------------------------------------------------------------------
|
|
11
|
-
export class Validator
|
|
8
|
+
export class Validator {
|
|
12
9
|
/** Constructs a Validator. */
|
|
13
|
-
constructor(
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
2: (context, type) => [context, type]
|
|
18
|
-
});
|
|
19
|
-
if (matched.length === 6) {
|
|
20
|
-
const [context, type, isEvaluated, hasCodec, code, check] = matched;
|
|
21
|
-
this.context = context;
|
|
22
|
-
this.type = type;
|
|
23
|
-
this.isAccelerated = isEvaluated;
|
|
24
|
-
this.hasCodec = hasCodec;
|
|
25
|
-
this.code = code;
|
|
26
|
-
this.check = check;
|
|
27
|
-
}
|
|
28
|
-
else {
|
|
29
|
-
const [context, type] = matched;
|
|
30
|
-
const result = Build(context, type).Evaluate();
|
|
31
|
-
this.hasCodec = HasCodec(context, type);
|
|
32
|
-
this.context = context;
|
|
33
|
-
this.type = type;
|
|
34
|
-
this.isAccelerated = result.IsAccelerated;
|
|
35
|
-
this.code = result.Code;
|
|
36
|
-
this.check = result.Check;
|
|
37
|
-
}
|
|
10
|
+
constructor(context, type) {
|
|
11
|
+
this.hasCodec = HasCodec(context, type);
|
|
12
|
+
this.buildResult = Build(context, type);
|
|
13
|
+
this.evaluateResult = this.buildResult.Evaluate();
|
|
38
14
|
}
|
|
39
15
|
// ----------------------------------------------------------------
|
|
40
16
|
// IsAccelerated
|
|
41
17
|
// ----------------------------------------------------------------
|
|
42
18
|
/** Returns true if this Validator is using JIT acceleration. */
|
|
43
19
|
IsAccelerated() {
|
|
44
|
-
return this.
|
|
20
|
+
return this.evaluateResult.IsAccelerated();
|
|
45
21
|
}
|
|
46
22
|
// ----------------------------------------------------------------
|
|
47
|
-
// Context
|
|
23
|
+
// Context & Type
|
|
48
24
|
// ----------------------------------------------------------------
|
|
49
25
|
/** Returns the Context for this validator. */
|
|
50
26
|
Context() {
|
|
51
|
-
return this.
|
|
27
|
+
return this.buildResult.Context();
|
|
52
28
|
}
|
|
53
29
|
/** Returns the underlying Type used to construct this Validator. */
|
|
54
30
|
Type() {
|
|
55
|
-
return this.
|
|
31
|
+
return this.buildResult.Schema();
|
|
56
32
|
}
|
|
57
33
|
// ----------------------------------------------------------------
|
|
58
34
|
// Code
|
|
59
35
|
// ----------------------------------------------------------------
|
|
60
36
|
/** Returns the generated code for this validator. */
|
|
61
37
|
Code() {
|
|
62
|
-
return this.
|
|
38
|
+
return this.evaluateResult.Code();
|
|
63
39
|
}
|
|
64
40
|
// ----------------------------------------------------------------
|
|
65
|
-
//
|
|
41
|
+
// Standard Validator
|
|
66
42
|
// ----------------------------------------------------------------
|
|
67
43
|
/** Performs a type-guard check on the provided value. */
|
|
68
44
|
Check(value) {
|
|
69
|
-
return this.
|
|
45
|
+
return this.evaluateResult.Check(value);
|
|
46
|
+
}
|
|
47
|
+
/** Validates a value and returns it. Will throw if invalid. */
|
|
48
|
+
Parse(value) {
|
|
49
|
+
const checked = this.Check(value);
|
|
50
|
+
if (checked)
|
|
51
|
+
return value;
|
|
52
|
+
if (Settings.Get().correctiveParse)
|
|
53
|
+
return Parser(this.Context(), this.Type(), value);
|
|
54
|
+
throw new ParseError(value, this.Errors(value));
|
|
70
55
|
}
|
|
71
56
|
/** Inspects a value and returns a detailed list of validation errors. */
|
|
72
57
|
Errors(value) {
|
|
73
|
-
if (
|
|
58
|
+
if (this.IsAccelerated() && this.Check(value))
|
|
74
59
|
return [];
|
|
75
|
-
return Errors(this.
|
|
60
|
+
return Errors(this.Context(), this.Type(), value);
|
|
76
61
|
}
|
|
62
|
+
// ----------------------------------------------------------------
|
|
63
|
+
// Value.* Operations
|
|
64
|
+
// ----------------------------------------------------------------
|
|
77
65
|
/** Cleans a value using the Validator type. */
|
|
78
66
|
Clean(value) {
|
|
79
|
-
return Clean(this.
|
|
67
|
+
return Clean(this.Context(), this.Type(), value);
|
|
80
68
|
}
|
|
81
69
|
/** Converts a value using the Validator type. */
|
|
82
70
|
Convert(value) {
|
|
83
|
-
return Convert(this.
|
|
71
|
+
return Convert(this.Context(), this.Type(), value);
|
|
84
72
|
}
|
|
85
73
|
/** Creates a value using the Validator type. */
|
|
86
74
|
Create() {
|
|
87
|
-
return Create(this.
|
|
75
|
+
return Create(this.Context(), this.Type());
|
|
88
76
|
}
|
|
89
77
|
/** Creates defaults using the Validator type. */
|
|
90
78
|
Default(value) {
|
|
91
|
-
return Default(this.
|
|
92
|
-
}
|
|
93
|
-
/** Clones this validator. */
|
|
94
|
-
Clone() {
|
|
95
|
-
return new Validator(this.context, this.type, this.isAccelerated, this.hasCodec, this.code, this.check);
|
|
96
|
-
}
|
|
97
|
-
/** Validates a value and returns it. Will throw if invalid. */
|
|
98
|
-
Parse(value) {
|
|
99
|
-
const checked = this.Check(value);
|
|
100
|
-
if (checked)
|
|
101
|
-
return value;
|
|
102
|
-
if (Settings.Get().correctiveParse)
|
|
103
|
-
return Parser(this.context, this.type, value);
|
|
104
|
-
throw new ParseError(value, this.Errors(value));
|
|
79
|
+
return Default(this.Context(), this.Type(), value);
|
|
105
80
|
}
|
|
106
81
|
/** Decodes a value */
|
|
107
82
|
Decode(value) {
|
|
108
|
-
const result = this.hasCodec ? Decode(this.
|
|
83
|
+
const result = this.hasCodec ? Decode(this.Context(), this.Type(), value) : this.Parse(value);
|
|
109
84
|
return result;
|
|
110
85
|
}
|
|
111
86
|
/** Encodes a value */
|
|
112
87
|
Encode(value) {
|
|
113
|
-
const result = this.hasCodec ? Encode(this.
|
|
88
|
+
const result = this.hasCodec ? Encode(this.Context(), this.Type(), value) : this.Parse(value);
|
|
114
89
|
return result;
|
|
115
90
|
}
|
|
116
91
|
}
|
package/build/error/errors.d.mts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type TValidationError = TAdditionalPropertiesError | TAnyOfError | TBooleanError | TConstError | TContainsError | TDependenciesError | TDependentRequiredError | TEnumError | TExclusiveMaximumError | TExclusiveMinimumError | TFormatError |
|
|
1
|
+
export type TValidationError = TAdditionalPropertiesError | TAnyOfError | TBooleanError | TConstError | TContainsError | TDependenciesError | TDependentRequiredError | TEnumError | TExclusiveMaximumError | TExclusiveMinimumError | TFormatError | TIfError | TMaximumError | TMaxItemsError | TMaxLengthError | TMaxPropertiesError | TMinimumError | TMinItemsError | TMinLengthError | TMinPropertiesError | TMultipleOfError | TNotError | TOneOfError | TPatternError | TPropertyNamesError | TRefineError | TRequiredError | TTypeError | TUnevaluatedItemsError | TUnevaluatedPropertiesError | TUniqueItemsError;
|
|
2
2
|
export declare function IsValidationError(value: unknown): value is TValidationError;
|
|
3
3
|
export type TLocalizedValidationError = TValidationError & {
|
|
4
4
|
message: string;
|
|
@@ -78,12 +78,6 @@ export interface TFormatError extends TValidationErrorBase {
|
|
|
78
78
|
format: string;
|
|
79
79
|
};
|
|
80
80
|
}
|
|
81
|
-
export interface TGuardError extends TValidationErrorBase {
|
|
82
|
-
keyword: '~guard';
|
|
83
|
-
params: {
|
|
84
|
-
errors: object[];
|
|
85
|
-
};
|
|
86
|
-
}
|
|
87
81
|
export interface TIfError extends TValidationErrorBase {
|
|
88
82
|
keyword: 'if';
|
|
89
83
|
params: {
|
package/build/format/_idna.mjs
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Unreachable } from '../system/unreachable/index.mjs';
|
|
1
2
|
import * as Puny from './_puny.mjs';
|
|
2
3
|
// ------------------------------------------------------------------
|
|
3
4
|
// Unicode General Category Helper (RFC 5892)
|
|
@@ -34,7 +35,8 @@ const RFC5892_DISALLOWED = new Set([
|
|
|
34
35
|
// ------------------------------------------------------------------
|
|
35
36
|
// A set of Virama (halant) code points used to validate CONTEXTJ
|
|
36
37
|
// rules (RFC 5892 Appendix A.1). These characters allow a subsequent
|
|
37
|
-
// Zero Width Joiner (U+
|
|
38
|
+
// Zero Width Non-Joiner (U+200C) or Zero Width Joiner (U+200D) to
|
|
39
|
+
// be valid in a label.
|
|
38
40
|
// ------------------------------------------------------------------
|
|
39
41
|
const VIRAMA_CPS = new Set([
|
|
40
42
|
0x094d,
|
|
@@ -101,8 +103,10 @@ function IsVirama(cp) {
|
|
|
101
103
|
// IsUnicodeLabel
|
|
102
104
|
// ------------------------------------------------------------------
|
|
103
105
|
function IsUnicodeLabel(value) {
|
|
106
|
+
// deno-coverage-ignore-start - unable to reach via format guards
|
|
104
107
|
if (value.length === 0)
|
|
105
|
-
return false
|
|
108
|
+
return Unreachable(); // false
|
|
109
|
+
// deno-coverage-ignore-stop
|
|
106
110
|
// Use spread to handle surrogate pairs and provide O(1) neighbor access
|
|
107
111
|
const cps = [...value].map((c) => c.codePointAt(0));
|
|
108
112
|
const len = cps.length;
|
|
@@ -145,10 +149,17 @@ function IsUnicodeLabel(value) {
|
|
|
145
149
|
if (prev === undefined || !IsHebrew(prev))
|
|
146
150
|
return false;
|
|
147
151
|
break; // Hebrew GERESH
|
|
148
|
-
case
|
|
152
|
+
case 0x200c: // ZWNJ - RFC 5892 Appendix A.1
|
|
153
|
+
// Note: Full validation requires a Unicode joining type table. We reject
|
|
154
|
+
// only when preceded by ASCII (U+0000-U+007F), which can never satisfy
|
|
155
|
+
// the Virama or cursive-joining rules.
|
|
156
|
+
if (prev === undefined || (prev < 0x0080 && !IsVirama(prev)))
|
|
157
|
+
return false;
|
|
158
|
+
break;
|
|
159
|
+
case 0x200d: // ZWJ - RFC 5892 Appendix A.2
|
|
149
160
|
if (prev === undefined || !IsVirama(prev))
|
|
150
161
|
return false;
|
|
151
|
-
break;
|
|
162
|
+
break;
|
|
152
163
|
case 0x30fb: /* Checked at end via hasJapanese */
|
|
153
164
|
break; // KATAKANA MIDDLE DOT
|
|
154
165
|
}
|
|
@@ -192,10 +203,29 @@ function IsPuny(value) {
|
|
|
192
203
|
}
|
|
193
204
|
function IsPunyLabel(value) {
|
|
194
205
|
try {
|
|
195
|
-
|
|
206
|
+
const payload = value.slice(4).toLowerCase();
|
|
207
|
+
// 1. Structural Validation (RFC 3492 syntax)
|
|
208
|
+
//
|
|
209
|
+
// If the payload contains a hyphen, it MUST be a delimiter separating basic
|
|
210
|
+
// ASCII characters from the variable-length integers. A payload consisting
|
|
211
|
+
// of ONLY a hyphen or starting with multiple hyphens without basic ASCII
|
|
212
|
+
// characters (like "-9uc") is fundamentally malformed.
|
|
213
|
+
//
|
|
214
|
+
const lastHyphen = payload.lastIndexOf('-');
|
|
215
|
+
if (lastHyphen === 0) {
|
|
216
|
+
// Catches "-9uc" right here because the delimiter is at index 0, meaning 0
|
|
217
|
+
// basic ASCII characters preceded it, which is non-canonical.
|
|
218
|
+
return false;
|
|
219
|
+
}
|
|
220
|
+
// 2. Decode the payload
|
|
221
|
+
const decoded = Puny.Decode(payload);
|
|
222
|
+
if (!decoded)
|
|
223
|
+
return false;
|
|
224
|
+
// 3. Validate the output rules against RFC 5892
|
|
225
|
+
return IsUnicodeLabel(decoded);
|
|
196
226
|
}
|
|
197
227
|
catch {
|
|
198
|
-
return false;
|
|
228
|
+
return false;
|
|
199
229
|
}
|
|
200
230
|
}
|
|
201
231
|
// ------------------------------------------------------------------
|
package/build/format/_puny.mjs
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Unreachable } from '../system/unreachable/index.mjs';
|
|
1
2
|
// ------------------------------------------------------------------
|
|
2
3
|
// PunyCode (RFC 3492)
|
|
3
4
|
// ------------------------------------------------------------------
|
|
@@ -52,8 +53,10 @@ export function Decode(value) {
|
|
|
52
53
|
digit = ch - 0x61; // a-z => 0-25
|
|
53
54
|
else if (ch >= 0x30 && ch <= 0x39)
|
|
54
55
|
digit = ch - 0x30 + 26; // 0-9 => 26-35
|
|
56
|
+
// deno-coverage-ignore-start - _idna.ts maps input to lowercase, so we can't reach here
|
|
55
57
|
else if (ch >= 0x41 && ch <= 0x5a)
|
|
56
|
-
digit = ch - 0x41
|
|
58
|
+
Unreachable(); // digit = ch - 0x41 // A-Z => 0-25
|
|
59
|
+
// deno-coverage-ignore-stop
|
|
57
60
|
else
|
|
58
61
|
throw new Error('Invalid punycode: bad digit character');
|
|
59
62
|
i += digit * w;
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import { IsDateTime } from './
|
|
1
|
+
import { IsDateTime } from './date_time.mjs';
|
|
2
2
|
import { IsDate } from './date.mjs';
|
|
3
3
|
import { IsDuration } from './duration.mjs';
|
|
4
4
|
import { IsEmail } from './email.mjs';
|
|
5
5
|
import { IsHostname } from './hostname.mjs';
|
|
6
|
-
import { IsIdnEmail } from './
|
|
7
|
-
import { IsIdnHostname } from './
|
|
6
|
+
import { IsIdnEmail } from './idn_email.mjs';
|
|
7
|
+
import { IsIdnHostname } from './idn_hostname.mjs';
|
|
8
8
|
import { IsIPv4 } from './ipv4.mjs';
|
|
9
9
|
import { IsIPv6 } from './ipv6.mjs';
|
|
10
|
-
import { IsIriReference } from './
|
|
10
|
+
import { IsIriReference } from './iri_reference.mjs';
|
|
11
11
|
import { IsIri } from './iri.mjs';
|
|
12
|
-
import { IsJsonPointerUriFragment } from './
|
|
13
|
-
import { IsJsonPointer } from './
|
|
12
|
+
import { IsJsonPointerUriFragment } from './json_pointer_uri_fragment.mjs';
|
|
13
|
+
import { IsJsonPointer } from './json_pointer.mjs';
|
|
14
14
|
import { IsRegex } from './regex.mjs';
|
|
15
|
-
import { IsRelativeJsonPointer } from './
|
|
15
|
+
import { IsRelativeJsonPointer } from './relative_json_pointer.mjs';
|
|
16
16
|
import { IsTime } from './time.mjs';
|
|
17
|
-
import { IsUriReference } from './
|
|
18
|
-
import { IsUriTemplate } from './
|
|
17
|
+
import { IsUriReference } from './uri_reference.mjs';
|
|
18
|
+
import { IsUriTemplate } from './uri_template.mjs';
|
|
19
19
|
import { IsUri } from './uri.mjs';
|
|
20
20
|
import { IsUrl } from './url.mjs';
|
|
21
21
|
import { IsUuid } from './uuid.mjs';
|
package/build/format/email.d.mts
CHANGED
package/build/format/email.mjs
CHANGED
|
@@ -1,29 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
const Email = /^(?!.*\.\.)[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i;
|
|
2
2
|
/**
|
|
3
3
|
* Returns true if the value is an Email
|
|
4
|
-
* @specification
|
|
4
|
+
* @specification ajv-formats
|
|
5
5
|
*/
|
|
6
6
|
export function IsEmail(value) {
|
|
7
|
-
|
|
8
|
-
const at = value.indexOf('@');
|
|
9
|
-
const quoted = value[0] === '"' && value[at - 1] === '"';
|
|
10
|
-
const ipLiteral = value[at + 1] === '[' && value[value.length - 1] === ']';
|
|
11
|
-
const ipv6 = ipLiteral && value.indexOf(':', at) !== -1;
|
|
12
|
-
const ipv4 = ipLiteral && !ipv6 && IsIPv4Internal(value, at + 2, value.length - 1);
|
|
13
|
-
return (at > 0 && at < value.length - 1) &&
|
|
14
|
-
!(
|
|
15
|
-
// .test@example.com
|
|
16
|
-
(!quoted && dot === 0) ||
|
|
17
|
-
// te..st@example.com
|
|
18
|
-
(!quoted && dot !== -1 && value.indexOf('.', dot + 1) === dot + 1) ||
|
|
19
|
-
// test.@example.com
|
|
20
|
-
(dot !== -1 && value.indexOf('@', dot) === dot + 1) ||
|
|
21
|
-
// joe bloggs@example.com
|
|
22
|
-
(!quoted && value.indexOf(' ') !== -1) ||
|
|
23
|
-
// user1@oceania.org, user2@oceania.org
|
|
24
|
-
(value.indexOf(',') !== -1) ||
|
|
25
|
-
// joe.bloggs@[127.0.0.300]
|
|
26
|
-
(ipLiteral && !ipv4 && !ipv6) ||
|
|
27
|
-
// joe.bloggs@invalid=domain.com
|
|
28
|
-
(value.indexOf('=', at) !== -1));
|
|
7
|
+
return Email.test(value);
|
|
29
8
|
}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
export * from './_registry.mjs';
|
|
2
|
-
export { IsDateTime } from './
|
|
2
|
+
export { IsDateTime } from './date_time.mjs';
|
|
3
3
|
export { IsDate } from './date.mjs';
|
|
4
4
|
export { IsDuration } from './duration.mjs';
|
|
5
5
|
export { IsEmail } from './email.mjs';
|
|
6
6
|
export { IsHostname } from './hostname.mjs';
|
|
7
|
-
export { IsIdnEmail } from './
|
|
8
|
-
export { IsIdnHostname } from './
|
|
7
|
+
export { IsIdnEmail } from './idn_email.mjs';
|
|
8
|
+
export { IsIdnHostname } from './idn_hostname.mjs';
|
|
9
9
|
export { IsIPv4 } from './ipv4.mjs';
|
|
10
10
|
export { IsIPv6 } from './ipv6.mjs';
|
|
11
|
-
export { IsIriReference } from './
|
|
11
|
+
export { IsIriReference } from './iri_reference.mjs';
|
|
12
12
|
export { IsIri } from './iri.mjs';
|
|
13
|
-
export { IsJsonPointerUriFragment } from './
|
|
14
|
-
export { IsJsonPointer } from './
|
|
13
|
+
export { IsJsonPointerUriFragment } from './json_pointer_uri_fragment.mjs';
|
|
14
|
+
export { IsJsonPointer } from './json_pointer.mjs';
|
|
15
15
|
export { IsRegex } from './regex.mjs';
|
|
16
|
-
export { IsRelativeJsonPointer } from './
|
|
16
|
+
export { IsRelativeJsonPointer } from './relative_json_pointer.mjs';
|
|
17
17
|
export { IsTime } from './time.mjs';
|
|
18
|
-
export { IsUriReference } from './
|
|
19
|
-
export { IsUriTemplate } from './
|
|
18
|
+
export { IsUriReference } from './uri_reference.mjs';
|
|
19
|
+
export { IsUriTemplate } from './uri_template.mjs';
|
|
20
20
|
export { IsUri } from './uri.mjs';
|
|
21
21
|
export { IsUrl } from './url.mjs';
|
|
22
22
|
export { IsUuid } from './uuid.mjs';
|
package/build/format/format.mjs
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
export * from './_registry.mjs';
|
|
2
|
-
export { IsDateTime } from './
|
|
2
|
+
export { IsDateTime } from './date_time.mjs';
|
|
3
3
|
export { IsDate } from './date.mjs';
|
|
4
4
|
export { IsDuration } from './duration.mjs';
|
|
5
5
|
export { IsEmail } from './email.mjs';
|
|
6
6
|
export { IsHostname } from './hostname.mjs';
|
|
7
|
-
export { IsIdnEmail } from './
|
|
8
|
-
export { IsIdnHostname } from './
|
|
7
|
+
export { IsIdnEmail } from './idn_email.mjs';
|
|
8
|
+
export { IsIdnHostname } from './idn_hostname.mjs';
|
|
9
9
|
export { IsIPv4 } from './ipv4.mjs';
|
|
10
10
|
export { IsIPv6 } from './ipv6.mjs';
|
|
11
|
-
export { IsIriReference } from './
|
|
11
|
+
export { IsIriReference } from './iri_reference.mjs';
|
|
12
12
|
export { IsIri } from './iri.mjs';
|
|
13
|
-
export { IsJsonPointerUriFragment } from './
|
|
14
|
-
export { IsJsonPointer } from './
|
|
13
|
+
export { IsJsonPointerUriFragment } from './json_pointer_uri_fragment.mjs';
|
|
14
|
+
export { IsJsonPointer } from './json_pointer.mjs';
|
|
15
15
|
export { IsRegex } from './regex.mjs';
|
|
16
|
-
export { IsRelativeJsonPointer } from './
|
|
16
|
+
export { IsRelativeJsonPointer } from './relative_json_pointer.mjs';
|
|
17
17
|
export { IsTime } from './time.mjs';
|
|
18
|
-
export { IsUriReference } from './
|
|
19
|
-
export { IsUriTemplate } from './
|
|
18
|
+
export { IsUriReference } from './uri_reference.mjs';
|
|
19
|
+
export { IsUriTemplate } from './uri_template.mjs';
|
|
20
20
|
export { IsUri } from './uri.mjs';
|
|
21
21
|
export { IsUrl } from './url.mjs';
|
|
22
22
|
export { IsUuid } from './uuid.mjs';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
const IdnEmail = /^(?!.*\.\.)[\p{L}\p{N}!#$%&'*+/=?^_`{|}~-]+(?:\.[\p{L}\p{N}!#$%&'*+/=?^_`{|}~-]+)*@[\p{L}\p{N}](?:[\p{L}\p{N}-]{0,61}[\p{L}\p{N}])?(?:\.[\p{L}\p{N}](?:[\p{L}\p{N}-]{0,61}[\p{L}\p{N}])?)*$/iu;
|
|
2
|
+
/**
|
|
3
|
+
* Returns true if the value is an IdnEmail
|
|
4
|
+
* @specification ajv-formats (unicode-extension)
|
|
5
|
+
*/
|
|
6
|
+
export function IsIdnEmail(value) {
|
|
7
|
+
return IdnEmail.test(value);
|
|
8
|
+
}
|
package/build/format/uuid.d.mts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Returns true if the value is a uuid
|
|
3
|
-
* @specification
|
|
4
|
-
* @
|
|
3
|
+
* @specification https://www.rfc-editor.org/info/rfc4122/
|
|
4
|
+
* @specification https://www.rfc-editor.org/info/rfc9562/
|
|
5
5
|
*/
|
|
6
6
|
export declare function IsUuid(value: string): boolean;
|
package/build/format/uuid.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
const Uuid = /^
|
|
1
|
+
const Uuid = /^[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i;
|
|
2
2
|
/**
|
|
3
3
|
* Returns true if the value is a uuid
|
|
4
|
-
* @specification
|
|
5
|
-
* @
|
|
4
|
+
* @specification https://www.rfc-editor.org/info/rfc4122/
|
|
5
|
+
* @specification https://www.rfc-editor.org/info/rfc9562/
|
|
6
6
|
*/
|
|
7
7
|
export function IsUuid(value) {
|
|
8
8
|
return Uuid.test(value);
|
package/build/guard/emit.d.mts
CHANGED
|
@@ -3,16 +3,12 @@ export declare function Or(left: string, right: string): string;
|
|
|
3
3
|
export declare function Not(expr: string): string;
|
|
4
4
|
/** Returns true if this value is an array */
|
|
5
5
|
export declare function IsArray(value: string): string;
|
|
6
|
-
/** Returns true if this value is an async iterator */
|
|
7
|
-
export declare function IsAsyncIterator(value: unknown): string;
|
|
8
6
|
/** Returns true if this value is bigint */
|
|
9
7
|
export declare function IsBigInt(value: string): string;
|
|
10
8
|
/** Returns true if this value is a boolean */
|
|
11
9
|
export declare function IsBoolean(value: string): string;
|
|
12
10
|
/** Returns true if this value is integer */
|
|
13
11
|
export declare function IsInteger(value: string): string;
|
|
14
|
-
/** Returns true if this value is an iterator */
|
|
15
|
-
export declare function IsIterator(value: unknown): string;
|
|
16
12
|
/** Returns true if this value is null */
|
|
17
13
|
export declare function IsNull(value: string): string;
|
|
18
14
|
/** Returns true if this value is number */
|
|
@@ -37,6 +33,9 @@ export declare function IsGreaterEqualThan(left: string, right: string): string;
|
|
|
37
33
|
export declare function IsMinLength(value: string, length: string): string;
|
|
38
34
|
export declare function IsMaxLength(value: string, length: string): string;
|
|
39
35
|
export declare function Every(value: string, offset: string, params: [value: string, index: string], expression: string): string;
|
|
36
|
+
export declare function Some(value: string, params: [value: string, index: string], expression: string): string;
|
|
37
|
+
export declare function SomeAll(value: string, params: [value: string, index: string], expression: string): string;
|
|
38
|
+
export declare function Counted(value: string, params: [value: string, index: string], expression: string): string;
|
|
40
39
|
export declare function Entries(value: string): string;
|
|
41
40
|
export declare function Keys(value: string): string;
|
|
42
41
|
export declare function HasPropertyKey(value: string, key: string): string;
|
|
@@ -54,5 +53,4 @@ export declare function If(condition: string, then: string): string;
|
|
|
54
53
|
export declare function Return(expression: string): string;
|
|
55
54
|
export declare function ReduceAnd(operands: string[]): string;
|
|
56
55
|
export declare function ReduceOr(operands: string[]): string;
|
|
57
|
-
export declare function PrefixIncrement(expression: string): string;
|
|
58
56
|
export declare function MultipleOf(dividend: string, divisor: string): string;
|
package/build/guard/emit.mjs
CHANGED
|
@@ -26,10 +26,6 @@ export function Not(expr) {
|
|
|
26
26
|
export function IsArray(value) {
|
|
27
27
|
return `Array.isArray(${value})`;
|
|
28
28
|
}
|
|
29
|
-
/** Returns true if this value is an async iterator */
|
|
30
|
-
export function IsAsyncIterator(value) {
|
|
31
|
-
return `Guard.IsAsyncIterator(${value})`;
|
|
32
|
-
}
|
|
33
29
|
/** Returns true if this value is bigint */
|
|
34
30
|
export function IsBigInt(value) {
|
|
35
31
|
return `typeof ${value} === "bigint"`;
|
|
@@ -42,10 +38,6 @@ export function IsBoolean(value) {
|
|
|
42
38
|
export function IsInteger(value) {
|
|
43
39
|
return `Number.isInteger(${value})`;
|
|
44
40
|
}
|
|
45
|
-
/** Returns true if this value is an iterator */
|
|
46
|
-
export function IsIterator(value) {
|
|
47
|
-
return `Guard.IsIterator(${value})`;
|
|
48
|
-
}
|
|
49
41
|
/** Returns true if this value is null */
|
|
50
42
|
export function IsNull(value) {
|
|
51
43
|
return `${value} === null`;
|
|
@@ -118,6 +110,15 @@ export function Every(value, offset, params, expression) {
|
|
|
118
110
|
? `${value}.every((${params[0]}, ${params[1]}) => ${expression})`
|
|
119
111
|
: `((value, callback) => { for(let index = ${offset}; index < value.length; index++) if (!callback(value[index], index)) return false; return true })(${value}, (${params[0]}, ${params[1]}) => ${expression})`;
|
|
120
112
|
}
|
|
113
|
+
export function Some(value, params, expression) {
|
|
114
|
+
return `${value}.some((${params[0]}, ${params[1]}) => ${expression})`;
|
|
115
|
+
}
|
|
116
|
+
export function SomeAll(value, params, expression) {
|
|
117
|
+
return `((value, callback) => { let result = false; for(let index = 0; index < value.length; index++) if (callback(value[index], index)) result = true; return result })(${value}, (${params[0]}, ${params[1]}) => ${expression})`;
|
|
118
|
+
}
|
|
119
|
+
export function Counted(value, params, expression) {
|
|
120
|
+
return `${value}.reduce((result, ${params[0]}, ${params[1]}) => (${expression}) ? ++result : result, 0)`;
|
|
121
|
+
}
|
|
121
122
|
// --------------------------------------------------------------------------
|
|
122
123
|
// Objects
|
|
123
124
|
// --------------------------------------------------------------------------
|
|
@@ -153,6 +154,8 @@ export function Member(left, right) {
|
|
|
153
154
|
return `${left}${IsIdentifier(right) ? `.${right}` : `[${Constant(right)}]`}`;
|
|
154
155
|
}
|
|
155
156
|
export function Constant(value) {
|
|
157
|
+
if (!G.IsValueLike(value))
|
|
158
|
+
throw Error('Unsupported Constant');
|
|
156
159
|
return G.IsString(value) ? JSON.stringify(value) : `${value}`;
|
|
157
160
|
}
|
|
158
161
|
export function Ternary(condition, true_, false_) {
|
|
@@ -180,15 +183,11 @@ export function ReduceAnd(operands) {
|
|
|
180
183
|
return G.IsEqual(operands.length, 0) ? 'true' : operands.reduce((left, right) => And(left, right));
|
|
181
184
|
}
|
|
182
185
|
export function ReduceOr(operands) {
|
|
183
|
-
// deno-coverage-ignore - we never observe 0 operands
|
|
184
186
|
return G.IsEqual(operands.length, 0) ? 'false' : operands.reduce((left, right) => Or(left, right));
|
|
185
187
|
}
|
|
186
188
|
// --------------------------------------------------------------------------
|
|
187
|
-
//
|
|
189
|
+
// MultipleOf
|
|
188
190
|
// --------------------------------------------------------------------------
|
|
189
|
-
export function PrefixIncrement(expression) {
|
|
190
|
-
return `++${expression}`;
|
|
191
|
-
}
|
|
192
191
|
export function MultipleOf(dividend, divisor) {
|
|
193
192
|
return `Guard.IsMultipleOf(${dividend}, ${divisor})`;
|
|
194
193
|
}
|