@depup/typebox 1.1.23-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/format.d.mts +9 -9
- package/build/format/format.mjs +9 -9
- 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/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 → from_array.mjs} +1 -1
- 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-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-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-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.mjs +43 -0
- package/build/value/convert/{from-union.mjs → from_union.mjs} +1 -1
- package/build/value/convert/try/try.d.mts +8 -8
- package/build/value/convert/try/try.mjs +8 -8
- package/build/value/convert/try/{try-array.d.mts → try_array.d.mts} +1 -1
- package/build/value/convert/try/{try-array.mjs → try_array.mjs} +1 -1
- 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} +1 -1
- 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} +1 -1
- 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} +1 -1
- package/build/value/convert/try/{try-number.d.mts → try_number.d.mts} +1 -1
- package/build/value/convert/try/{try-number.mjs → try_number.mjs} +2 -2
- package/build/value/convert/try/{try-string.d.mts → try_string.d.mts} +1 -1
- package/build/value/convert/try/{try-string.mjs → try_string.mjs} +1 -1
- 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} +1 -1
- 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 +27 -27
- package/readme.md +214 -95
- 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-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/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/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-email.d.mts → idn_email.d.mts} +0 -0
- /package/build/format/{idn-email.mjs → idn_email.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-bigint.mjs → from_bigint.mjs} +0 -0
- /package/build/value/convert/{from-boolean.d.mts → from_boolean.d.mts} +0 -0
- /package/build/value/convert/{from-boolean.mjs → from_boolean.mjs} +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-integer.mjs → from_integer.mjs} +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-null.mjs → from_null.mjs} +0 -0
- /package/build/value/convert/{from-number.d.mts → from_number.d.mts} +0 -0
- /package/build/value/convert/{from-number.mjs → from_number.mjs} +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-string.mjs → from_string.mjs} +0 -0
- /package/build/value/convert/{from-tuple.d.mts → from_tuple.d.mts} +0 -0
- /package/build/value/convert/{from-type.d.mts → from_type.d.mts} +0 -0
- /package/build/value/convert/{from-undefined.d.mts → from_undefined.d.mts} +0 -0
- /package/build/value/convert/{from-undefined.mjs → from_undefined.mjs} +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/{from-void.mjs → from_void.mjs} +0 -0
- /package/build/value/convert/try/{try-result.d.mts → try_result.d.mts} +0 -0
- /package/build/value/convert/try/{try-result.mjs → try_result.mjs} +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/default/{from-type.d.mts → 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/repair/{from-type.d.mts → 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/build/type/engine/{readonly-type/from-array.d.mts → readonly_object/from_array.d.mts}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type TSchema } from '../../types/schema.mjs';
|
|
2
2
|
import { type TArray } from '../../types/array.mjs';
|
|
3
|
-
import { type
|
|
4
|
-
export type TFromArray<Type extends TSchema, Result extends TSchema =
|
|
3
|
+
import { type TAddImmutable } from '../../action/_add_immutable.mjs';
|
|
4
|
+
export type TFromArray<Type extends TSchema, Result extends TSchema = TAddImmutable<TArray<Type>>> = Result;
|
|
5
5
|
export declare function FromArray<Type extends TSchema>(type: Type): TFromArray<Type>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// deno-fmt-ignore-file
|
|
2
2
|
import { Array } from '../../types/array.mjs';
|
|
3
|
-
import {
|
|
3
|
+
import { AddImmutable } from '../../action/_add_immutable.mjs';
|
|
4
4
|
export function FromArray(type) {
|
|
5
|
-
const result =
|
|
5
|
+
const result = AddImmutable(Array(type));
|
|
6
6
|
return result;
|
|
7
7
|
}
|
|
@@ -2,7 +2,7 @@ import { Memory } from '../../../system/memory/index.mjs';
|
|
|
2
2
|
import { type TSchema } from '../../types/schema.mjs';
|
|
3
3
|
import { type TCyclic } from '../../types/cyclic.mjs';
|
|
4
4
|
import { type TProperties } from '../../types/properties.mjs';
|
|
5
|
-
import { type TFromType } from './
|
|
5
|
+
import { type TFromType } from './from_type.mjs';
|
|
6
6
|
import { type TCyclicTarget } from '../cyclic/target.mjs';
|
|
7
7
|
export type TFromCyclic<Defs extends TProperties, Ref extends string, Target extends TSchema = TCyclicTarget<Defs, Ref>, Partial extends TSchema = TFromType<Target>, Result extends TSchema = TCyclic<Memory.TAssign<Defs, {
|
|
8
8
|
[_ in Ref]: Partial;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// deno-fmt-ignore-file
|
|
2
2
|
import { Memory } from '../../../system/memory/index.mjs';
|
|
3
3
|
import { Cyclic } from '../../types/cyclic.mjs';
|
|
4
|
-
import { FromType } from './
|
|
4
|
+
import { FromType } from './from_type.mjs';
|
|
5
5
|
import { CyclicTarget } from '../cyclic/target.mjs';
|
|
6
6
|
export function FromCyclic(defs, ref) {
|
|
7
7
|
const target = CyclicTarget(defs, ref);
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type TSchema } from '../../types/schema.mjs';
|
|
2
|
+
import { type TFromType } from './from_type.mjs';
|
|
3
|
+
import { type TEvaluateDependent } from '../evaluate/evaluate.mjs';
|
|
4
|
+
export type TFromDependent<If extends TSchema, Then extends TSchema, Else extends TSchema, Evaluated extends TSchema = TEvaluateDependent<If, Then, Else>, Result extends TSchema = TFromType<Evaluated>> = Result;
|
|
5
|
+
export declare function FromDependent<If extends TSchema, Then extends TSchema, Else extends TSchema>(if_: If, then_: Then, else_: Else): TFromDependent<If, Then, Else>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { FromType } from './from_type.mjs';
|
|
3
|
+
import { EvaluateDependent } from '../evaluate/evaluate.mjs';
|
|
4
|
+
export function FromDependent(if_, then_, else_) {
|
|
5
|
+
const evaluated = EvaluateDependent(if_, then_, else_);
|
|
6
|
+
const result = FromType(evaluated);
|
|
7
|
+
return result;
|
|
8
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type TSchema } from '../../types/schema.mjs';
|
|
2
|
+
import { type TFromType } from './from_type.mjs';
|
|
3
|
+
import { type TEvaluateIntersect } from '../evaluate/evaluate.mjs';
|
|
4
|
+
export type TFromIntersect<Types extends TSchema[], Evaluated extends TSchema = TEvaluateIntersect<Types>, Result extends TSchema = TFromType<Evaluated>> = Result;
|
|
5
|
+
export declare function FromIntersect<Types extends TSchema[]>(types: [...Types]): TFromIntersect<Types>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { FromType } from './from_type.mjs';
|
|
3
|
+
import { EvaluateIntersect } from '../evaluate/evaluate.mjs';
|
|
4
|
+
export function FromIntersect(types) {
|
|
5
|
+
const evaluated = EvaluateIntersect(types);
|
|
6
|
+
const result = FromType(evaluated);
|
|
7
|
+
return result;
|
|
8
|
+
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { type TSchema } from '../../types/schema.mjs';
|
|
2
2
|
import { type TObject } from '../../types/object.mjs';
|
|
3
|
-
import { type
|
|
3
|
+
import { type TAddReadonly } from '../../action/_add_readonly.mjs';
|
|
4
4
|
import { type TProperties } from '../../types/properties.mjs';
|
|
5
5
|
export type TFromObject<Properties extends TProperties, Mapped extends TProperties = {
|
|
6
|
-
[Key in keyof Properties]:
|
|
6
|
+
[Key in keyof Properties]: TAddReadonly<Properties[Key]>;
|
|
7
7
|
}, Result extends TSchema = TObject<Mapped>> = Result;
|
|
8
8
|
export declare function FromObject<Properties extends TProperties>(properties: Properties): TFromObject<Properties>;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
// deno-fmt-ignore-file
|
|
2
2
|
import { Guard } from '../../../guard/index.mjs';
|
|
3
3
|
import { Object } from '../../types/object.mjs';
|
|
4
|
-
import {
|
|
4
|
+
import { AddReadonly } from '../../action/_add_readonly.mjs';
|
|
5
5
|
export function FromObject(properties) {
|
|
6
6
|
const mapped = Guard.Keys(properties).reduce((result, left) => {
|
|
7
|
-
return { ...result, [left]:
|
|
7
|
+
return { ...result, [left]: AddReadonly(properties[left]) };
|
|
8
8
|
}, {});
|
|
9
9
|
const result = Object(mapped);
|
|
10
10
|
return result;
|
package/build/type/engine/{readonly-type/from-tuple.d.mts → readonly_object/from_tuple.d.mts}
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type TSchema } from '../../types/schema.mjs';
|
|
2
2
|
import { type TTuple } from '../../types/tuple.mjs';
|
|
3
|
-
import { type
|
|
4
|
-
export type TFromTuple<Types extends TSchema[], Result extends TSchema =
|
|
3
|
+
import { type TAddImmutable } from '../../action/_add_immutable.mjs';
|
|
4
|
+
export type TFromTuple<Types extends TSchema[], Result extends TSchema = TAddImmutable<TTuple<Types>>> = Result;
|
|
5
5
|
export declare function FromTuple<Types extends TSchema[]>(types: [...Types]): TFromTuple<Types>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// deno-fmt-ignore-file
|
|
2
2
|
import { Tuple } from '../../types/tuple.mjs';
|
|
3
|
-
import {
|
|
3
|
+
import { AddImmutable } from '../../action/_add_immutable.mjs';
|
|
4
4
|
export function FromTuple(types) {
|
|
5
|
-
const result =
|
|
5
|
+
const result = AddImmutable(Tuple(types));
|
|
6
6
|
return result;
|
|
7
7
|
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { type TSchema } from '../../types/schema.mjs';
|
|
2
|
+
import { type TArray } from '../../types/array.mjs';
|
|
3
|
+
import { type TCyclic } from '../../types/cyclic.mjs';
|
|
4
|
+
import { type TDependent } from '../../types/dependent.mjs';
|
|
5
|
+
import { type TIntersect } from '../../types/intersect.mjs';
|
|
6
|
+
import { type TObject } from '../../types/object.mjs';
|
|
7
|
+
import { type TProperties } from '../../types/properties.mjs';
|
|
8
|
+
import { type TTuple } from '../../types/tuple.mjs';
|
|
9
|
+
import { type TUnion } from '../../types/union.mjs';
|
|
10
|
+
import { type TFromArray } from './from_array.mjs';
|
|
11
|
+
import { type TFromCyclic } from './from_cyclic.mjs';
|
|
12
|
+
import { type TFromDependent } from './from_dependent.mjs';
|
|
13
|
+
import { type TFromIntersect } from './from_intersect.mjs';
|
|
14
|
+
import { type TFromObject } from './from_object.mjs';
|
|
15
|
+
import { type TFromTuple } from './from_tuple.mjs';
|
|
16
|
+
import { type TFromUnion } from './from_union.mjs';
|
|
17
|
+
export type TFromType<Type extends TSchema> = (Type extends TArray<infer Type extends TSchema> ? TFromArray<Type> : Type extends TCyclic<infer Defs extends TProperties, infer Ref extends string> ? TFromCyclic<Defs, Ref> : Type extends TDependent<infer If extends TSchema, infer Then extends TSchema, infer Else extends TSchema> ? TFromDependent<If, Then, Else> : Type extends TIntersect<infer Types extends TSchema[]> ? TFromIntersect<Types> : Type extends TObject<infer Properties extends TProperties> ? TFromObject<Properties> : Type extends TTuple<infer Types extends TSchema[]> ? TFromTuple<Types> : Type extends TUnion<infer Types extends TSchema[]> ? TFromUnion<Types> : Type);
|
|
18
|
+
export declare function FromType<Type extends TSchema>(type: Type): TFromType<Type>;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { IsArray } from '../../types/array.mjs';
|
|
3
|
+
import { IsCyclic } from '../../types/cyclic.mjs';
|
|
4
|
+
import { IsDependent } from '../../types/dependent.mjs';
|
|
5
|
+
import { IsIntersect } from '../../types/intersect.mjs';
|
|
6
|
+
import { IsObject } from '../../types/object.mjs';
|
|
7
|
+
import { IsTuple } from '../../types/tuple.mjs';
|
|
8
|
+
import { IsUnion } from '../../types/union.mjs';
|
|
9
|
+
import { FromArray } from './from_array.mjs';
|
|
10
|
+
import { FromCyclic } from './from_cyclic.mjs';
|
|
11
|
+
import { FromDependent } from './from_dependent.mjs';
|
|
12
|
+
import { FromIntersect } from './from_intersect.mjs';
|
|
13
|
+
import { FromObject } from './from_object.mjs';
|
|
14
|
+
import { FromTuple } from './from_tuple.mjs';
|
|
15
|
+
import { FromUnion } from './from_union.mjs';
|
|
16
|
+
export function FromType(type) {
|
|
17
|
+
return (IsArray(type) ? FromArray(type.items) :
|
|
18
|
+
IsCyclic(type) ? FromCyclic(type.$defs, type.$ref) :
|
|
19
|
+
IsDependent(type) ? FromDependent(type.if, type.then, type.else) :
|
|
20
|
+
IsIntersect(type) ? FromIntersect(type.allOf) :
|
|
21
|
+
IsObject(type) ? FromObject(type.properties) :
|
|
22
|
+
IsTuple(type) ? FromTuple(type.items) :
|
|
23
|
+
IsUnion(type) ? FromUnion(type.anyOf) :
|
|
24
|
+
type);
|
|
25
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type TSchema } from '../../types/schema.mjs';
|
|
2
2
|
import { type TUnion } from '../../types/union.mjs';
|
|
3
|
-
import { type TFromType } from './
|
|
3
|
+
import { type TFromType } from './from_type.mjs';
|
|
4
4
|
export type TFromUnion<Types extends TSchema[], Result extends TSchema[] = []> = (Types extends [infer Left extends TSchema, ...infer Right extends TSchema[]] ? TFromUnion<Right, [...Result, TFromType<Left>]> : TUnion<Result>);
|
|
5
5
|
export declare function FromUnion<Types extends TSchema[]>(types: [...Types]): TFromUnion<Types>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// deno-fmt-ignore-file
|
|
2
2
|
import { Union } from '../../types/union.mjs';
|
|
3
|
-
import { FromType } from './
|
|
3
|
+
import { FromType } from './from_type.mjs';
|
|
4
4
|
export function FromUnion(types) {
|
|
5
5
|
const result = types.map(type => FromType(type));
|
|
6
6
|
return Union(result);
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type TSchema, type TSchemaOptions } from '../../types/schema.mjs';
|
|
2
|
+
import { type TProperties } from '../../types/properties.mjs';
|
|
3
|
+
import { type TReadonlyObjectDeferred } from '../../action/readonly_object.mjs';
|
|
4
|
+
import { type TFromType } from './from_type.mjs';
|
|
5
|
+
import { type TState, type TInstantiateType, type TCanInstantiate } from '../instantiate.mjs';
|
|
6
|
+
export type TReadonlyObjectAction<Type extends TSchema, Result extends TSchema = TCanInstantiate<[Type]> extends true ? TFromType<Type> : TReadonlyObjectDeferred<Type>> = Result;
|
|
7
|
+
export declare function ReadonlyObjectAction<Type extends TSchema>(type: Type, options: TSchemaOptions): TReadonlyObjectAction<Type>;
|
|
8
|
+
export type TReadonlyObjectInstantiate<Context extends TProperties, State extends TState, Type extends TSchema, InstantiateType extends TSchema = TInstantiateType<Context, State, Type>> = TReadonlyObjectAction<InstantiateType>;
|
|
9
|
+
export declare function ReadonlyObjectInstantiate<Context extends TProperties, State extends TState, Type extends TSchema>(context: Context, state: State, type: Type, options: TSchemaOptions): TReadonlyObjectInstantiate<Context, State, Type>;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { Memory } from '../../../system/memory/index.mjs';
|
|
3
|
+
import { ReadonlyObjectDeferred } from '../../action/readonly_object.mjs';
|
|
4
|
+
import { FromType } from './from_type.mjs';
|
|
5
|
+
import { InstantiateType, CanInstantiate } from '../instantiate.mjs';
|
|
6
|
+
export function ReadonlyObjectAction(type, options) {
|
|
7
|
+
const result = CanInstantiate([type])
|
|
8
|
+
? Memory.Update(FromType(type), {}, options)
|
|
9
|
+
: ReadonlyObjectDeferred(type);
|
|
10
|
+
return result;
|
|
11
|
+
}
|
|
12
|
+
export function ReadonlyObjectInstantiate(context, state, type, options) {
|
|
13
|
+
const instantiatedType = InstantiateType(context, state, type);
|
|
14
|
+
return ReadonlyObjectAction(instantiatedType, options);
|
|
15
|
+
}
|
|
@@ -8,17 +8,17 @@ import { type TLiteral, type TLiteralValue } from '../../types/literal.mjs';
|
|
|
8
8
|
import { type TNumber } from '../../types/number.mjs';
|
|
9
9
|
import { type TObject } from '../../types/object.mjs';
|
|
10
10
|
import { type TString } from '../../types/string.mjs';
|
|
11
|
-
import { type TTemplateLiteral } from '../../types/
|
|
11
|
+
import { type TTemplateLiteral } from '../../types/template_literal.mjs';
|
|
12
12
|
import { type TUnion } from '../../types/union.mjs';
|
|
13
|
-
import { type TFromAnyKey } from './
|
|
14
|
-
import { type TFromBooleanKey } from './
|
|
15
|
-
import { type TFromEnumKey } from './
|
|
16
|
-
import { type TFromIntegerKey } from './
|
|
17
|
-
import { type TFromIntersectKey } from './
|
|
18
|
-
import { type TFromLiteralKey } from './
|
|
19
|
-
import { type TFromNumberKey } from './
|
|
20
|
-
import { type TFromStringKey } from './
|
|
21
|
-
import { type TFromTemplateKey } from './
|
|
22
|
-
import { type TFromUnionKey } from './
|
|
13
|
+
import { type TFromAnyKey } from './from_key_any.mjs';
|
|
14
|
+
import { type TFromBooleanKey } from './from_key_boolean.mjs';
|
|
15
|
+
import { type TFromEnumKey } from './from_key_enum.mjs';
|
|
16
|
+
import { type TFromIntegerKey } from './from_key_integer.mjs';
|
|
17
|
+
import { type TFromIntersectKey } from './from_key_intersect.mjs';
|
|
18
|
+
import { type TFromLiteralKey } from './from_key_literal.mjs';
|
|
19
|
+
import { type TFromNumberKey } from './from_key_number.mjs';
|
|
20
|
+
import { type TFromStringKey } from './from_key_string.mjs';
|
|
21
|
+
import { type TFromTemplateKey } from './from_key_template_literal.mjs';
|
|
22
|
+
import { type TFromUnionKey } from './from_key_union.mjs';
|
|
23
23
|
export type TFromKey<Key extends TSchema, Value extends TSchema, Result extends TSchema = (Key extends TAny ? TFromAnyKey<Value> : Key extends TBoolean ? TFromBooleanKey<Value> : Key extends TEnum<infer Values extends TEnumValue[]> ? TFromEnumKey<Values, Value> : Key extends TInteger ? TFromIntegerKey<Key, Value> : Key extends TIntersect<infer Types extends TSchema[]> ? TFromIntersectKey<Types, Value> : Key extends TLiteral<infer LiteralValue extends TLiteralValue> ? TFromLiteralKey<LiteralValue, Value> : Key extends TNumber ? TFromNumberKey<Key, Value> : Key extends TString ? TFromStringKey<Key, Value> : Key extends TTemplateLiteral<infer Pattern extends string> ? TFromTemplateKey<Pattern, Value> : Key extends TUnion<infer Types extends TSchema[]> ? TFromUnionKey<Types, Value> : TObject<{}>)> = Result;
|
|
24
24
|
export declare function FromKey<Key extends TSchema, Value extends TSchema>(key: Key, value: Value): TFromKey<Key, Value>;
|
|
@@ -9,21 +9,21 @@ import { IsLiteral } from '../../types/literal.mjs';
|
|
|
9
9
|
import { IsNumber } from '../../types/number.mjs';
|
|
10
10
|
import { Object } from '../../types/object.mjs';
|
|
11
11
|
import { IsString } from '../../types/string.mjs';
|
|
12
|
-
import { IsTemplateLiteral } from '../../types/
|
|
12
|
+
import { IsTemplateLiteral } from '../../types/template_literal.mjs';
|
|
13
13
|
import { IsUnion } from '../../types/union.mjs';
|
|
14
14
|
// ------------------------------------------------------------------
|
|
15
15
|
// Keys and Deferred
|
|
16
16
|
// ------------------------------------------------------------------
|
|
17
|
-
import { FromAnyKey } from './
|
|
18
|
-
import { FromBooleanKey } from './
|
|
19
|
-
import { FromEnumKey } from './
|
|
20
|
-
import { FromIntegerKey } from './
|
|
21
|
-
import { FromIntersectKey } from './
|
|
22
|
-
import { FromLiteralKey } from './
|
|
23
|
-
import { FromNumberKey } from './
|
|
24
|
-
import { FromStringKey } from './
|
|
25
|
-
import { FromTemplateKey } from './
|
|
26
|
-
import { FromUnionKey } from './
|
|
17
|
+
import { FromAnyKey } from './from_key_any.mjs';
|
|
18
|
+
import { FromBooleanKey } from './from_key_boolean.mjs';
|
|
19
|
+
import { FromEnumKey } from './from_key_enum.mjs';
|
|
20
|
+
import { FromIntegerKey } from './from_key_integer.mjs';
|
|
21
|
+
import { FromIntersectKey } from './from_key_intersect.mjs';
|
|
22
|
+
import { FromLiteralKey } from './from_key_literal.mjs';
|
|
23
|
+
import { FromNumberKey } from './from_key_number.mjs';
|
|
24
|
+
import { FromStringKey } from './from_key_string.mjs';
|
|
25
|
+
import { FromTemplateKey } from './from_key_template_literal.mjs';
|
|
26
|
+
import { FromUnionKey } from './from_key_union.mjs';
|
|
27
27
|
export function FromKey(key, value) {
|
|
28
28
|
const result = (IsAny(key) ? FromAnyKey(value) :
|
|
29
29
|
IsBoolean(key) ? FromBooleanKey(value) :
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// deno-fmt-ignore-file
|
|
2
2
|
import { StringKey } from '../../types/record.mjs';
|
|
3
|
-
import { CreateRecord } from './
|
|
3
|
+
import { CreateRecord } from './record_create.mjs';
|
|
4
4
|
export function FromAnyKey(value) {
|
|
5
5
|
return CreateRecord(StringKey, value);
|
|
6
6
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type TSchema } from '../../types/index.mjs';
|
|
2
2
|
import { type TEnumValue } from '../../types/enum.mjs';
|
|
3
|
-
import { type
|
|
4
|
-
import { type
|
|
5
|
-
export type TFromEnumKey<Values extends TEnumValue[], Value extends TSchema, UnionKey extends TSchema =
|
|
3
|
+
import { type TFromKey } from './from_key.mjs';
|
|
4
|
+
import { type TEvaluateEnum } from '../evaluate/evaluate.mjs';
|
|
5
|
+
export type TFromEnumKey<Values extends TEnumValue[], Value extends TSchema, UnionKey extends TSchema = TEvaluateEnum<Values>, Result extends TSchema = TFromKey<UnionKey, Value>> = Result;
|
|
6
6
|
export declare function FromEnumKey<Values extends TEnumValue[], Value extends TSchema>(values: [...Values], value: Value): TFromEnumKey<Values, Value>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { FromKey } from './from_key.mjs';
|
|
3
|
+
import { EvaluateEnum } from '../evaluate/evaluate.mjs';
|
|
4
|
+
export function FromEnumKey(values, value) {
|
|
5
|
+
const unionKey = EvaluateEnum(values);
|
|
6
|
+
const result = FromKey(unionKey, value);
|
|
7
|
+
return result;
|
|
8
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// deno-fmt-ignore-file
|
|
2
2
|
import { IntegerKey } from '../../types/record.mjs';
|
|
3
|
-
import { CreateRecord } from './
|
|
3
|
+
import { CreateRecord } from './record_create.mjs';
|
|
4
4
|
export function FromIntegerKey(_key, value) {
|
|
5
5
|
const result = CreateRecord(IntegerKey, value);
|
|
6
6
|
return result;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type TSchema } from '../../types/schema.mjs';
|
|
2
2
|
import { type TEvaluateIntersect } from '../evaluate/evaluate.mjs';
|
|
3
|
-
import { type TFromKey } from './
|
|
3
|
+
import { type TFromKey } from './from_key.mjs';
|
|
4
4
|
export type TFromIntersectKey<Types extends TSchema[], Value extends TSchema, EvaluatedKey extends TSchema = TEvaluateIntersect<Types>, Result extends TSchema = TFromKey<EvaluatedKey, Value>> = Result;
|
|
5
5
|
export declare function FromIntersectKey<Types extends TSchema[], Value extends TSchema>(types: [...Types], value: Value): TFromIntersectKey<Types, Value>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// deno-fmt-ignore-file
|
|
2
2
|
import { EvaluateIntersect } from '../evaluate/evaluate.mjs';
|
|
3
|
-
import { FromKey } from './
|
|
3
|
+
import { FromKey } from './from_key.mjs';
|
|
4
4
|
export function FromIntersectKey(types, value) {
|
|
5
5
|
const evaluatedKey = EvaluateIntersect(types);
|
|
6
6
|
const result = FromKey(evaluatedKey, value);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// deno-fmt-ignore-file
|
|
2
2
|
import { NumberKey } from '../../types/record.mjs';
|
|
3
|
-
import { CreateRecord } from './
|
|
3
|
+
import { CreateRecord } from './record_create.mjs';
|
|
4
4
|
export function FromNumberKey(_key, value) {
|
|
5
5
|
const result = CreateRecord(NumberKey, value);
|
|
6
6
|
return result;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// deno-fmt-ignore-file
|
|
2
2
|
import { Guard } from '../../../guard/index.mjs';
|
|
3
3
|
import { StringKey } from '../../types/record.mjs';
|
|
4
|
-
import { CreateRecord } from './
|
|
4
|
+
import { CreateRecord } from './record_create.mjs';
|
|
5
5
|
export function FromStringKey(key, value) {
|
|
6
6
|
// special case: override for string with raw pattern. We do not observe inference for the
|
|
7
7
|
// raw string patterns, but as a pattern (assuming non-never) is in the set of string, we
|
package/build/type/engine/record/{from-key-template-literal.d.mts → from_key_template_literal.d.mts}
RENAMED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { type TSchema } from '../../types/schema.mjs';
|
|
2
2
|
import { type TRecord } from '../../types/record.mjs';
|
|
3
|
-
import { type TFromKey } from './
|
|
3
|
+
import { type TFromKey } from './from_key.mjs';
|
|
4
4
|
import { type TParsePatternIntoTypes } from '../patterns/pattern.mjs';
|
|
5
|
-
import { type TIsTemplateLiteralFinite } from '../
|
|
6
|
-
import { type
|
|
7
|
-
export type TFromTemplateKey<Pattern extends string, Value extends TSchema, Types extends TSchema[] = TParsePatternIntoTypes<Pattern>, Finite extends boolean = TIsTemplateLiteralFinite<Types>, Result extends TSchema = Finite extends true ? TFromKey<
|
|
5
|
+
import { type TIsTemplateLiteralFinite } from '../template_literal/is_finite.mjs';
|
|
6
|
+
import { type TEvaluateTemplateLiteral } from '../evaluate/evaluate.mjs';
|
|
7
|
+
export type TFromTemplateKey<Pattern extends string, Value extends TSchema, Types extends TSchema[] = TParsePatternIntoTypes<Pattern>, Finite extends boolean = TIsTemplateLiteralFinite<Types>, Result extends TSchema = Finite extends true ? TFromKey<TEvaluateTemplateLiteral<Pattern>, Value> : TRecord<Pattern, Value>> = Result;
|
|
8
8
|
export declare function FromTemplateKey<Pattern extends string, Value extends TSchema>(pattern: Pattern, value: Value): TFromTemplateKey<Pattern, Value>;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { FromKey } from './from_key.mjs';
|
|
3
|
+
import { ParsePatternIntoTypes } from '../patterns/pattern.mjs';
|
|
4
|
+
import { IsTemplateLiteralFinite } from '../template_literal/is_finite.mjs';
|
|
5
|
+
import { EvaluateTemplateLiteral } from '../evaluate/evaluate.mjs';
|
|
6
|
+
import { CreateRecord } from './record_create.mjs';
|
|
7
|
+
export function FromTemplateKey(pattern, value) {
|
|
8
|
+
const types = ParsePatternIntoTypes(pattern);
|
|
9
|
+
const finite = IsTemplateLiteralFinite(types);
|
|
10
|
+
const result = finite ? FromKey(EvaluateTemplateLiteral(pattern), value) : CreateRecord(pattern, value);
|
|
11
|
+
return result;
|
|
12
|
+
}
|
|
@@ -9,7 +9,7 @@ import { Object } from '../../types/object.mjs';
|
|
|
9
9
|
import { IsString } from '../../types/string.mjs';
|
|
10
10
|
import { StringKey } from '../../types/record.mjs';
|
|
11
11
|
import { Flatten } from '../evaluate/flatten.mjs';
|
|
12
|
-
import { CreateRecord } from './
|
|
12
|
+
import { CreateRecord } from './record_create.mjs';
|
|
13
13
|
function StringOrNumberCheck(types) {
|
|
14
14
|
return types.some(type => IsString(type) || IsNumber(type) || IsInteger(type));
|
|
15
15
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { type TSchema, type TSchemaOptions } from '../../types/schema.mjs';
|
|
2
2
|
import { type TProperties } from '../../types/properties.mjs';
|
|
3
3
|
import { type TRecordDeferred } from '../../types/record.mjs';
|
|
4
|
-
import { type TFromKey } from './
|
|
4
|
+
import { type TFromKey } from './from_key.mjs';
|
|
5
5
|
import { type TState, type TInstantiateType, type TCanInstantiate } from '../instantiate.mjs';
|
|
6
|
-
type
|
|
7
|
-
export
|
|
6
|
+
export type TRecordAction<Key extends TSchema, Value extends TSchema, Result extends TSchema = TCanInstantiate<[Key]> extends true ? TFromKey<Key, Value> : TRecordDeferred<Key, Value>> = Result;
|
|
7
|
+
export declare function RecordAction<Key extends TSchema, Value extends TSchema>(key: Key, value: Value, options: TSchemaOptions): TRecordAction<Key, Value>;
|
|
8
|
+
export type TRecordInstantiate<Context extends TProperties, State extends TState, Key extends TSchema, Value extends TSchema, InstantiatedKey extends TSchema = TInstantiateType<Context, State, Key>, InstantiatedValue extends TSchema = TInstantiateType<Context, State, Value>> = TRecordAction<InstantiatedKey, InstantiatedValue>;
|
|
8
9
|
export declare function RecordInstantiate<Context extends TProperties, State extends TState, Key extends TSchema, Value extends TSchema>(context: Context, state: State, key: Key, value: Value, options: TSchemaOptions): TRecordInstantiate<Context, State, Key, Value>;
|
|
9
|
-
export {};
|
|
@@ -2,15 +2,16 @@
|
|
|
2
2
|
// deno-lint-ignore-file
|
|
3
3
|
import { Memory } from '../../../system/memory/index.mjs';
|
|
4
4
|
import { RecordDeferred } from '../../types/record.mjs';
|
|
5
|
-
import { FromKey } from './
|
|
5
|
+
import { FromKey } from './from_key.mjs';
|
|
6
6
|
import { InstantiateType, CanInstantiate } from '../instantiate.mjs';
|
|
7
|
-
function
|
|
8
|
-
const
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
export function RecordAction(key, value, options) {
|
|
8
|
+
const result = CanInstantiate([key])
|
|
9
|
+
? Memory.Update(FromKey(key, value), {}, options)
|
|
10
|
+
: RecordDeferred(key, value, options);
|
|
11
|
+
return result;
|
|
11
12
|
}
|
|
12
13
|
export function RecordInstantiate(context, state, key, value, options) {
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
const instantiatedKey = InstantiateType(context, state, key);
|
|
15
|
+
const instantiatedValue = InstantiateType(context, state, value);
|
|
16
|
+
return RecordAction(instantiatedKey, instantiatedValue, options);
|
|
16
17
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { TProperties } from '../../types/properties.mjs';
|
|
2
|
-
import { type
|
|
3
|
-
import { type TCyclicCheck } from '../cyclic/check.mjs';
|
|
1
|
+
import { type TProperties } from '../../types/properties.mjs';
|
|
2
|
+
import { type TInstantiateType } from '../instantiate.mjs';
|
|
4
3
|
import { type TRef } from '../../types/ref.mjs';
|
|
5
|
-
|
|
4
|
+
import { type TState } from '../instantiate.mjs';
|
|
5
|
+
export type TRefInstantiate<Context extends TProperties, State extends TState, Type extends TRef, Ref extends string> = (Ref extends State['visited'][number] ? Type : Ref extends keyof Context ? TInstantiateType<Context, TState<State['callstack'], [...State['visited'], Ref]>, Context[Ref]> : Type);
|
|
6
6
|
export declare function RefInstantiate<Context extends TProperties, State extends TState, Type extends TRef, Ref extends string>(context: Context, state: State, type: Type, ref: Ref): TRefInstantiate<Context, State, Type, Ref>;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
// deno-fmt-ignore-file
|
|
2
2
|
import { InstantiateType } from '../instantiate.mjs';
|
|
3
|
-
import {
|
|
3
|
+
import { State } from '../instantiate.mjs';
|
|
4
4
|
export function RefInstantiate(context, state, type, ref) {
|
|
5
|
-
return (ref
|
|
6
|
-
?
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
return (state.visited.includes(ref)
|
|
6
|
+
? type
|
|
7
|
+
: ref in context
|
|
8
|
+
? InstantiateType(context, State(state['callstack'], [...state['visited'], ref]), context[ref])
|
|
9
|
+
: type);
|
|
10
10
|
}
|
|
@@ -2,7 +2,7 @@ import { Memory } from '../../../system/memory/index.mjs';
|
|
|
2
2
|
import { type TSchema } from '../../types/schema.mjs';
|
|
3
3
|
import { type TCyclic } from '../../types/cyclic.mjs';
|
|
4
4
|
import { type TProperties } from '../../types/properties.mjs';
|
|
5
|
-
import { type TFromType } from './
|
|
5
|
+
import { type TFromType } from './from_type.mjs';
|
|
6
6
|
import { type TCyclicTarget } from '../cyclic/target.mjs';
|
|
7
7
|
export type TFromCyclic<Defs extends TProperties, Ref extends string, Target extends TSchema = TCyclicTarget<Defs, Ref>, Partial extends TSchema = TFromType<Target>, Result extends TSchema = TCyclic<Memory.TAssign<Defs, {
|
|
8
8
|
[_ in Ref]: Partial;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// deno-fmt-ignore-file
|
|
2
2
|
import { Memory } from '../../../system/memory/index.mjs';
|
|
3
3
|
import { Cyclic } from '../../types/cyclic.mjs';
|
|
4
|
-
import { FromType } from './
|
|
4
|
+
import { FromType } from './from_type.mjs';
|
|
5
5
|
import { CyclicTarget } from '../cyclic/target.mjs';
|
|
6
6
|
export function FromCyclic(defs, ref) {
|
|
7
7
|
const target = CyclicTarget(defs, ref);
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type TSchema } from '../../types/schema.mjs';
|
|
2
|
+
import { type TFromType } from './from_type.mjs';
|
|
3
|
+
import { type TEvaluateDependent } from '../evaluate/evaluate.mjs';
|
|
4
|
+
export type TFromDependent<If extends TSchema, Then extends TSchema, Else extends TSchema, Evaluated extends TSchema = TEvaluateDependent<If, Then, Else>, Result extends TSchema = TFromType<Evaluated>> = Result;
|
|
5
|
+
export declare function FromDependent<If extends TSchema, Then extends TSchema, Else extends TSchema>(if_: If, then_: Then, else_: Else): TFromDependent<If, Then, Else>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { FromType } from './from_type.mjs';
|
|
3
|
+
import { EvaluateDependent } from '../evaluate/evaluate.mjs';
|
|
4
|
+
export function FromDependent(if_, then_, else_) {
|
|
5
|
+
const evaluated = EvaluateDependent(if_, then_, else_);
|
|
6
|
+
const result = FromType(evaluated);
|
|
7
|
+
return result;
|
|
8
|
+
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type TSchema } from '../../types/schema.mjs';
|
|
2
|
+
import { type TFromType } from './from_type.mjs';
|
|
3
|
+
import { type TEvaluateIntersect } from '../evaluate/evaluate.mjs';
|
|
4
|
+
export type TFromIntersect<Types extends TSchema[], Evaluated extends TSchema = TEvaluateIntersect<Types>, Result extends TSchema = TFromType<Evaluated>> = Result;
|
|
5
|
+
export declare function FromIntersect<Types extends TSchema[]>(types: [...Types]): TFromIntersect<Types>;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// deno-fmt-ignore-file
|
|
2
|
+
import { FromType } from './from_type.mjs';
|
|
3
|
+
import { EvaluateIntersect } from '../evaluate/evaluate.mjs';
|
|
4
|
+
export function FromIntersect(types) {
|
|
5
|
+
const evaluated = EvaluateIntersect(types);
|
|
6
|
+
const result = FromType(evaluated);
|
|
7
|
+
return result;
|
|
8
|
+
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { type TSchema } from '../../types/schema.mjs';
|
|
2
2
|
import { type TObject } from '../../types/object.mjs';
|
|
3
|
-
import { type
|
|
3
|
+
import { type TRemoveOptional } from '../../action/_remove_optional.mjs';
|
|
4
4
|
import { type TProperties } from '../../types/properties.mjs';
|
|
5
5
|
export type TFromObject<Properties extends TProperties, Mapped extends TProperties = {
|
|
6
|
-
[Key in keyof Properties]:
|
|
6
|
+
[Key in keyof Properties]: TRemoveOptional<Properties[Key]>;
|
|
7
7
|
}, Result extends TSchema = TObject<Mapped>> = Result;
|
|
8
8
|
export declare function FromObject<Properties extends TProperties>(properties: Properties): TFromObject<Properties>;
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
// deno-fmt-ignore-file
|
|
2
2
|
import { Guard } from '../../../guard/index.mjs';
|
|
3
3
|
import { Object } from '../../types/object.mjs';
|
|
4
|
-
import {
|
|
4
|
+
import { RemoveOptional } from '../../action/_remove_optional.mjs';
|
|
5
5
|
export function FromObject(properties) {
|
|
6
6
|
const mapped = Guard.Keys(properties).reduce((result, left) => {
|
|
7
|
-
return { ...result, [left]:
|
|
7
|
+
return { ...result, [left]: RemoveOptional(properties[left]) };
|
|
8
8
|
}, {});
|
|
9
9
|
const result = Object(mapped);
|
|
10
10
|
return result;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type TSchema } from '../../types/schema.mjs';
|
|
2
|
+
import { type TCyclic } from '../../types/cyclic.mjs';
|
|
3
|
+
import { type TDependent } from '../../types/dependent.mjs';
|
|
4
|
+
import { type TIntersect } from '../../types/intersect.mjs';
|
|
5
|
+
import { type TObject } from '../../types/object.mjs';
|
|
6
|
+
import { type TProperties } from '../../types/properties.mjs';
|
|
7
|
+
import { type TUnion } from '../../types/union.mjs';
|
|
8
|
+
import { type TFromCyclic } from './from_cyclic.mjs';
|
|
9
|
+
import { type TFromDependent } from './from_dependent.mjs';
|
|
10
|
+
import { type TFromIntersect } from './from_intersect.mjs';
|
|
11
|
+
import { type TFromUnion } from './from_union.mjs';
|
|
12
|
+
import { type TFromObject } from './from_object.mjs';
|
|
13
|
+
export type TFromType<Type extends TSchema> = (Type extends TCyclic<infer Defs extends TProperties, infer Ref extends string> ? TFromCyclic<Defs, Ref> : Type extends TDependent<infer If extends TSchema, infer Then extends TSchema, infer Else extends TSchema> ? TFromDependent<If, Then, Else> : Type extends TIntersect<infer Types extends TSchema[]> ? TFromIntersect<Types> : Type extends TUnion<infer Types extends TSchema[]> ? TFromUnion<Types> : Type extends TObject<infer Properties extends TProperties> ? TFromObject<Properties> : TObject<{}>);
|
|
14
|
+
export declare function FromType<Type extends TSchema>(type: Type): TFromType<Type>;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// deno-lint-ignore-file ban-types
|
|
2
|
+
// deno-fmt-ignore-file
|
|
3
|
+
import { IsCyclic } from '../../types/cyclic.mjs';
|
|
4
|
+
import { IsDependent } from '../../types/dependent.mjs';
|
|
5
|
+
import { IsIntersect } from '../../types/intersect.mjs';
|
|
6
|
+
import { Object, IsObject } from '../../types/object.mjs';
|
|
7
|
+
import { IsUnion } from '../../types/union.mjs';
|
|
8
|
+
import { FromCyclic } from './from_cyclic.mjs';
|
|
9
|
+
import { FromDependent } from './from_dependent.mjs';
|
|
10
|
+
import { FromIntersect } from './from_intersect.mjs';
|
|
11
|
+
import { FromUnion } from './from_union.mjs';
|
|
12
|
+
import { FromObject } from './from_object.mjs';
|
|
13
|
+
export function FromType(type) {
|
|
14
|
+
return (IsCyclic(type) ? FromCyclic(type.$defs, type.$ref) :
|
|
15
|
+
IsDependent(type) ? FromDependent(type.if, type.then, type.else) :
|
|
16
|
+
IsIntersect(type) ? FromIntersect(type.allOf) :
|
|
17
|
+
IsUnion(type) ? FromUnion(type.anyOf) :
|
|
18
|
+
IsObject(type) ? FromObject(type.properties) :
|
|
19
|
+
Object({}));
|
|
20
|
+
}
|