@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.
Files changed (952) hide show
  1. package/README.md +2 -2
  2. package/build/compile/code.mjs +2 -2
  3. package/build/compile/validator.d.mts +7 -14
  4. package/build/compile/validator.mjs +32 -57
  5. package/build/error/errors.d.mts +1 -7
  6. package/build/format/_idna.mjs +36 -6
  7. package/build/format/_puny.mjs +4 -1
  8. package/build/format/_registry.mjs +9 -9
  9. package/build/format/format.d.mts +9 -9
  10. package/build/format/format.mjs +9 -9
  11. package/build/format/uuid.d.mts +2 -2
  12. package/build/format/uuid.mjs +3 -3
  13. package/build/guard/emit.d.mts +3 -5
  14. package/build/guard/emit.mjs +12 -13
  15. package/build/guard/guard.d.mts +15 -7
  16. package/build/guard/guard.mjs +40 -15
  17. package/build/guard/string.mjs +16 -4
  18. package/build/schema/build.d.mts +11 -7
  19. package/build/schema/build.mjs +28 -9
  20. package/build/schema/check.d.mts +3 -3
  21. package/build/schema/compile.d.mts +4 -4
  22. package/build/schema/compile.mjs +9 -9
  23. package/build/schema/engine/_context.mjs +3 -3
  24. package/build/schema/engine/_functions.mjs +34 -16
  25. package/build/schema/engine/_refine.mjs +4 -4
  26. package/build/schema/engine/_stack.d.mts +4 -4
  27. package/build/schema/engine/_stack.mjs +52 -18
  28. package/build/schema/engine/additionalItems.mjs +17 -7
  29. package/build/schema/engine/additionalProperties.mjs +1 -1
  30. package/build/schema/engine/boolean.d.mts +3 -3
  31. package/build/schema/engine/boolean.mjs +4 -4
  32. package/build/schema/engine/contains.mjs +18 -6
  33. package/build/schema/engine/dynamicRef.d.mts +6 -0
  34. package/build/schema/engine/dynamicRef.mjs +25 -0
  35. package/build/schema/engine/enum.mjs +1 -1
  36. package/build/schema/engine/index.d.mts +0 -1
  37. package/build/schema/engine/index.mjs +0 -1
  38. package/build/schema/engine/items.mjs +26 -6
  39. package/build/schema/engine/maxContains.mjs +3 -3
  40. package/build/schema/engine/minContains.mjs +14 -4
  41. package/build/schema/engine/not.mjs +4 -2
  42. package/build/schema/engine/oneOf.mjs +7 -6
  43. package/build/schema/engine/recursiveRef.mjs +3 -3
  44. package/build/schema/engine/ref.mjs +4 -10
  45. package/build/schema/engine/schema.mjs +15 -15
  46. package/build/schema/engine/type.mjs +15 -19
  47. package/build/schema/parse.d.mts +3 -3
  48. package/build/schema/pointer/index.d.mts +1 -1
  49. package/build/schema/pointer/index.mjs +1 -1
  50. package/build/schema/pointer/pointer.mjs +11 -1
  51. package/build/schema/resolve/ref.d.mts +1 -0
  52. package/build/schema/resolve/ref.mjs +61 -11
  53. package/build/schema/static/_canonical.d.mts +7 -0
  54. package/build/schema/static/{~elements.d.mts → _elements.d.mts} +3 -3
  55. package/build/schema/static/items.d.mts +1 -1
  56. package/build/schema/static/prefixItems.d.mts +1 -1
  57. package/build/schema/static/properties.d.mts +27 -6
  58. package/build/schema/static/ref.d.mts +1 -1
  59. package/build/schema/static/required.d.mts +1 -11
  60. package/build/schema/static/schema.d.mts +3 -2
  61. package/build/schema/static/static.d.mts +2 -2
  62. package/build/schema/types/_refine.d.mts +2 -2
  63. package/build/schema/types/_refine.mjs +4 -4
  64. package/build/schema/types/dependencies.mjs +1 -1
  65. package/build/schema/types/index.d.mts +0 -1
  66. package/build/schema/types/index.mjs +0 -1
  67. package/build/schema/types/schema.d.mts +1 -1
  68. package/build/schema/types/schema.mjs +2 -2
  69. package/build/system/locale/_config.d.mts +1 -1
  70. package/build/system/locale/ar_001.d.mts +1 -1
  71. package/build/system/locale/ar_001.mjs +0 -1
  72. package/build/system/locale/bn_BD.d.mts +1 -1
  73. package/build/system/locale/bn_BD.mjs +0 -1
  74. package/build/system/locale/cs_CZ.d.mts +1 -1
  75. package/build/system/locale/cs_CZ.mjs +0 -1
  76. package/build/system/locale/de_DE.d.mts +1 -1
  77. package/build/system/locale/de_DE.mjs +0 -1
  78. package/build/system/locale/el_GR.d.mts +1 -1
  79. package/build/system/locale/el_GR.mjs +0 -1
  80. package/build/system/locale/en_US.d.mts +1 -1
  81. package/build/system/locale/en_US.mjs +0 -1
  82. package/build/system/locale/es_419.d.mts +1 -1
  83. package/build/system/locale/es_419.mjs +0 -1
  84. package/build/system/locale/es_AR.d.mts +1 -1
  85. package/build/system/locale/es_AR.mjs +0 -1
  86. package/build/system/locale/es_ES.d.mts +1 -1
  87. package/build/system/locale/es_ES.mjs +0 -1
  88. package/build/system/locale/es_MX.d.mts +1 -1
  89. package/build/system/locale/es_MX.mjs +0 -1
  90. package/build/system/locale/fa_IR.d.mts +1 -1
  91. package/build/system/locale/fa_IR.mjs +0 -1
  92. package/build/system/locale/fil_PH.d.mts +1 -1
  93. package/build/system/locale/fil_PH.mjs +0 -1
  94. package/build/system/locale/fr_CA.d.mts +1 -1
  95. package/build/system/locale/fr_CA.mjs +0 -1
  96. package/build/system/locale/fr_FR.d.mts +1 -1
  97. package/build/system/locale/fr_FR.mjs +0 -1
  98. package/build/system/locale/ha_NG.d.mts +1 -1
  99. package/build/system/locale/ha_NG.mjs +0 -1
  100. package/build/system/locale/hi_IN.d.mts +1 -1
  101. package/build/system/locale/hi_IN.mjs +0 -1
  102. package/build/system/locale/hu_HU.d.mts +1 -1
  103. package/build/system/locale/hu_HU.mjs +0 -1
  104. package/build/system/locale/id_ID.d.mts +1 -1
  105. package/build/system/locale/id_ID.mjs +0 -1
  106. package/build/system/locale/it_IT.d.mts +1 -1
  107. package/build/system/locale/it_IT.mjs +0 -1
  108. package/build/system/locale/ja_JP.d.mts +1 -1
  109. package/build/system/locale/ja_JP.mjs +0 -1
  110. package/build/system/locale/ko_KR.d.mts +1 -1
  111. package/build/system/locale/ko_KR.mjs +0 -1
  112. package/build/system/locale/ms_MY.d.mts +1 -1
  113. package/build/system/locale/ms_MY.mjs +0 -1
  114. package/build/system/locale/nl_NL.d.mts +1 -1
  115. package/build/system/locale/nl_NL.mjs +0 -1
  116. package/build/system/locale/pl_PL.d.mts +1 -1
  117. package/build/system/locale/pl_PL.mjs +0 -1
  118. package/build/system/locale/pt_BR.d.mts +1 -1
  119. package/build/system/locale/pt_BR.mjs +0 -1
  120. package/build/system/locale/pt_PT.d.mts +1 -1
  121. package/build/system/locale/pt_PT.mjs +0 -1
  122. package/build/system/locale/ro_RO.d.mts +1 -1
  123. package/build/system/locale/ro_RO.mjs +0 -1
  124. package/build/system/locale/ru_RU.d.mts +1 -1
  125. package/build/system/locale/ru_RU.mjs +0 -1
  126. package/build/system/locale/sv_SE.d.mts +1 -1
  127. package/build/system/locale/sv_SE.mjs +0 -1
  128. package/build/system/locale/sw_TZ.d.mts +1 -1
  129. package/build/system/locale/sw_TZ.mjs +0 -1
  130. package/build/system/locale/th_TH.d.mts +1 -1
  131. package/build/system/locale/th_TH.mjs +0 -1
  132. package/build/system/locale/tr_TR.d.mts +1 -1
  133. package/build/system/locale/tr_TR.mjs +0 -1
  134. package/build/system/locale/uk_UA.d.mts +1 -1
  135. package/build/system/locale/uk_UA.mjs +0 -1
  136. package/build/system/locale/ur_PK.d.mts +1 -1
  137. package/build/system/locale/ur_PK.mjs +0 -1
  138. package/build/system/locale/vi_VN.d.mts +1 -1
  139. package/build/system/locale/vi_VN.mjs +0 -1
  140. package/build/system/locale/yo_NG.d.mts +1 -1
  141. package/build/system/locale/yo_NG.mjs +0 -1
  142. package/build/system/locale/zh_Hans.d.mts +1 -1
  143. package/build/system/locale/zh_Hans.mjs +0 -1
  144. package/build/system/locale/zh_Hant.d.mts +1 -1
  145. package/build/system/locale/zh_Hant.mjs +0 -1
  146. package/build/system/memory/clone.d.mts +2 -3
  147. package/build/system/memory/clone.mjs +73 -26
  148. package/build/system/settings/settings.d.mts +15 -0
  149. package/build/system/settings/settings.mjs +3 -1
  150. package/build/type/action/_add_immutable.d.mts +11 -0
  151. package/build/type/action/_add_immutable.mjs +11 -0
  152. package/build/type/action/_add_optional.d.mts +11 -0
  153. package/build/type/action/_add_optional.mjs +11 -0
  154. package/build/type/action/_add_readonly.d.mts +11 -0
  155. package/build/type/action/_add_readonly.mjs +11 -0
  156. package/build/type/action/_remove_immutable.d.mts +11 -0
  157. package/build/type/action/_remove_immutable.mjs +11 -0
  158. package/build/type/action/_remove_optional.d.mts +11 -0
  159. package/build/type/action/_remove_optional.mjs +11 -0
  160. package/build/type/action/_remove_readonly.d.mts +11 -0
  161. package/build/type/action/_remove_readonly.mjs +11 -0
  162. package/build/type/action/capitalize.d.mts +2 -2
  163. package/build/type/action/capitalize.mjs +2 -3
  164. package/build/type/action/conditional.d.mts +3 -2
  165. package/build/type/action/conditional.mjs +3 -2
  166. package/build/type/action/{constructor-parameters.d.mts → constructor_parameters.d.mts} +2 -2
  167. package/build/type/action/{constructor-parameters.mjs → constructor_parameters.mjs} +2 -3
  168. package/build/type/action/evaluate.d.mts +2 -2
  169. package/build/type/action/evaluate.mjs +2 -3
  170. package/build/type/action/exclude.d.mts +2 -2
  171. package/build/type/action/exclude.mjs +2 -3
  172. package/build/type/action/extract.d.mts +2 -2
  173. package/build/type/action/extract.mjs +2 -3
  174. package/build/type/action/index.d.mts +12 -9
  175. package/build/type/action/index.mjs +12 -9
  176. package/build/type/action/indexed.d.mts +3 -3
  177. package/build/type/action/indexed.mjs +3 -4
  178. package/build/type/action/{instance-type.d.mts → instance_type.d.mts} +2 -2
  179. package/build/type/action/{instance-type.mjs → instance_type.mjs} +2 -3
  180. package/build/type/action/interface.d.mts +2 -2
  181. package/build/type/action/interface.mjs +5 -3
  182. package/build/type/action/keyof.d.mts +2 -2
  183. package/build/type/action/keyof.mjs +2 -3
  184. package/build/type/action/lowercase.d.mts +2 -2
  185. package/build/type/action/lowercase.mjs +2 -3
  186. package/build/type/action/mapped.d.mts +3 -2
  187. package/build/type/action/mapped.mjs +3 -2
  188. package/build/type/action/module.d.mts +8 -7
  189. package/build/type/action/module.mjs +7 -6
  190. package/build/type/action/{non-nullable.d.mts → non_nullable.d.mts} +2 -2
  191. package/build/type/action/{non-nullable.mjs → non_nullable.mjs} +2 -3
  192. package/build/type/action/omit.d.mts +3 -3
  193. package/build/type/action/omit.mjs +3 -4
  194. package/build/type/action/parameters.d.mts +2 -2
  195. package/build/type/action/parameters.mjs +2 -3
  196. package/build/type/action/partial.d.mts +3 -3
  197. package/build/type/action/partial.mjs +2 -3
  198. package/build/type/action/pick.d.mts +3 -3
  199. package/build/type/action/pick.mjs +3 -4
  200. package/build/type/action/readonly_object.d.mts +16 -0
  201. package/build/type/action/readonly_object.mjs +19 -0
  202. package/build/type/action/required.d.mts +2 -2
  203. package/build/type/action/required.mjs +2 -3
  204. package/build/type/action/{return-type.d.mts → return_type.d.mts} +2 -2
  205. package/build/type/action/{return-type.mjs → return_type.mjs} +2 -3
  206. package/build/type/action/uncapitalize.d.mts +2 -2
  207. package/build/type/action/uncapitalize.mjs +2 -3
  208. package/build/type/action/uppercase.d.mts +2 -2
  209. package/build/type/action/uppercase.mjs +2 -3
  210. package/build/type/action/with.d.mts +11 -0
  211. package/build/type/action/with.mjs +11 -0
  212. package/build/type/engine/call/{distribute-arguments.mjs → distribute_arguments.mjs} +1 -7
  213. package/build/type/engine/call/instantiate.d.mts +4 -6
  214. package/build/type/engine/call/instantiate.mjs +6 -5
  215. package/build/type/engine/call/{resolve-arguments.mjs → resolve_arguments.mjs} +3 -9
  216. package/build/type/engine/conditional/instantiate.d.mts +4 -2
  217. package/build/type/engine/conditional/instantiate.mjs +13 -9
  218. package/build/type/engine/constructor_parameters/instantiate.d.mts +14 -0
  219. package/build/type/engine/constructor_parameters/instantiate.mjs +25 -0
  220. package/build/type/engine/cyclic/candidates.d.mts +3 -4
  221. package/build/type/engine/cyclic/candidates.mjs +3 -6
  222. package/build/type/engine/cyclic/check.d.mts +6 -9
  223. package/build/type/engine/cyclic/check.mjs +13 -22
  224. package/build/type/engine/cyclic/dependencies.d.mts +1 -4
  225. package/build/type/engine/cyclic/dependencies.mjs +9 -15
  226. package/build/type/engine/cyclic/extends.d.mts +1 -4
  227. package/build/type/engine/cyclic/extends.mjs +8 -14
  228. package/build/type/engine/cyclic/instantiate.d.mts +2 -5
  229. package/build/type/engine/cyclic/instantiate.mjs +3 -2
  230. package/build/type/engine/enum/index.d.mts +1 -2
  231. package/build/type/engine/enum/index.mjs +1 -2
  232. package/build/type/engine/evaluate/broaden.d.mts +1 -2
  233. package/build/type/engine/evaluate/broaden.mjs +2 -6
  234. package/build/type/engine/evaluate/composite.d.mts +11 -7
  235. package/build/type/engine/evaluate/composite.mjs +11 -7
  236. package/build/type/engine/evaluate/distribute.d.mts +2 -1
  237. package/build/type/engine/evaluate/distribute.mjs +7 -17
  238. package/build/type/engine/evaluate/evaluate.d.mts +17 -5
  239. package/build/type/engine/evaluate/evaluate.mjs +34 -8
  240. package/build/type/engine/evaluate/flatten.d.mts +1 -1
  241. package/build/type/engine/evaluate/instantiate.d.mts +3 -3
  242. package/build/type/engine/evaluate/instantiate.mjs +5 -10
  243. package/build/type/engine/evaluate/narrow.d.mts +3 -3
  244. package/build/type/engine/exclude/instantiate.d.mts +4 -11
  245. package/build/type/engine/exclude/instantiate.mjs +7 -28
  246. package/build/type/engine/exclude/operation.d.mts +10 -0
  247. package/build/type/engine/exclude/operation.mjs +23 -0
  248. package/build/type/engine/extract/instantiate.d.mts +4 -11
  249. package/build/type/engine/extract/instantiate.mjs +7 -28
  250. package/build/type/engine/extract/operation.d.mts +10 -0
  251. package/build/type/engine/extract/operation.mjs +23 -0
  252. package/build/type/engine/helpers/index.d.mts +1 -1
  253. package/build/type/engine/helpers/index.mjs +1 -1
  254. package/build/type/engine/immutable/instantiate_add.d.mts +10 -0
  255. package/build/type/engine/immutable/instantiate_add.mjs +14 -0
  256. package/build/type/engine/immutable/instantiate_remove.d.mts +10 -0
  257. package/build/type/engine/immutable/instantiate_remove.mjs +14 -0
  258. package/build/type/engine/index.d.mts +8 -8
  259. package/build/type/engine/index.mjs +8 -8
  260. package/build/type/engine/indexable/{from-cyclic.d.mts → from_cyclic.d.mts} +1 -1
  261. package/build/type/engine/{object/from-cyclic.mjs → indexable/from_cyclic.mjs} +1 -1
  262. package/build/type/engine/indexable/from_dependent.d.mts +5 -0
  263. package/build/type/engine/indexable/from_dependent.mjs +8 -0
  264. package/build/type/engine/indexable/from_enum.d.mts +6 -0
  265. package/build/type/engine/indexable/from_enum.mjs +8 -0
  266. package/build/type/engine/indexable/{from-intersect.d.mts → from_intersect.d.mts} +1 -1
  267. package/build/type/engine/indexable/{from-intersect.mjs → from_intersect.mjs} +1 -1
  268. package/build/type/engine/indexable/{from-literal.d.mts → from_literal.d.mts} +1 -1
  269. package/build/type/engine/indexable/from_template_literal.d.mts +5 -0
  270. package/build/type/engine/indexable/from_template_literal.mjs +8 -0
  271. package/build/type/engine/indexable/from_type.d.mts +19 -0
  272. package/build/type/engine/indexable/from_type.mjs +25 -0
  273. package/build/type/engine/indexable/{from-union.d.mts → from_union.d.mts} +1 -1
  274. package/build/type/engine/indexable/{from-union.mjs → from_union.mjs} +1 -1
  275. package/build/type/engine/indexable/{to-indexable-keys.d.mts → to_indexable_keys.d.mts} +1 -1
  276. package/build/type/engine/indexable/{to-indexable-keys.mjs → to_indexable_keys.mjs} +1 -1
  277. package/build/type/engine/indexed/from_object.d.mts +16 -0
  278. package/build/type/engine/indexed/from_object.mjs +40 -0
  279. package/build/type/engine/indexed/{from-tuple.d.mts → from_tuple.d.mts} +1 -1
  280. package/build/type/engine/indexed/{from-tuple.mjs → from_tuple.mjs} +1 -1
  281. package/build/type/engine/indexed/from_type.d.mts +11 -0
  282. package/build/type/engine/indexed/from_type.mjs +14 -0
  283. package/build/type/engine/indexed/instantiate.d.mts +7 -12
  284. package/build/type/engine/indexed/instantiate.mjs +13 -22
  285. package/build/type/engine/instance_type/instantiate.d.mts +12 -0
  286. package/build/type/engine/{instance-type → instance_type}/instantiate.mjs +10 -9
  287. package/build/type/engine/instantiate.d.mts +53 -42
  288. package/build/type/engine/instantiate.mjs +92 -106
  289. package/build/type/engine/interface/instantiate.d.mts +6 -7
  290. package/build/type/engine/interface/instantiate.mjs +12 -8
  291. package/build/type/engine/intrinsics/{from-template-literal.d.mts → from_template_literal.d.mts} +3 -3
  292. package/build/type/engine/intrinsics/from_template_literal.mjs +8 -0
  293. package/build/type/engine/intrinsics/{from-type.d.mts → from_type.d.mts} +4 -4
  294. package/build/type/engine/intrinsics/{from-type.mjs → from_type.mjs} +4 -4
  295. package/build/type/engine/intrinsics/{from-union.d.mts → from_union.d.mts} +1 -1
  296. package/build/type/engine/intrinsics/{from-union.mjs → from_union.mjs} +1 -1
  297. package/build/type/engine/intrinsics/instantiate.d.mts +13 -9
  298. package/build/type/engine/intrinsics/instantiate.mjs +29 -25
  299. package/build/type/engine/keyof/from_type.d.mts +15 -0
  300. package/build/type/engine/keyof/from_type.mjs +23 -0
  301. package/build/type/engine/keyof/instantiate.d.mts +6 -17
  302. package/build/type/engine/keyof/instantiate.mjs +12 -28
  303. package/build/type/engine/mapped/instantiate.d.mts +4 -19
  304. package/build/type/engine/mapped/instantiate.mjs +7 -42
  305. package/build/type/engine/mapped/mapped_operation.d.mts +22 -0
  306. package/build/type/engine/mapped/mapped_operation.mjs +42 -0
  307. package/build/type/engine/mapped/mapped_variants.d.mts +17 -0
  308. package/build/type/engine/mapped/mapped_variants.mjs +39 -0
  309. package/build/type/engine/module/instantiate.d.mts +7 -9
  310. package/build/type/engine/module/instantiate.mjs +17 -15
  311. package/build/type/engine/non_nullable/instantiate.d.mts +14 -0
  312. package/build/type/engine/non_nullable/instantiate.mjs +22 -0
  313. package/build/type/engine/object/collapse.d.mts +1 -1
  314. package/build/type/engine/object/collapse.mjs +1 -1
  315. package/build/type/engine/object/{from-cyclic.d.mts → from_cyclic.d.mts} +1 -1
  316. package/build/type/engine/{indexable/from-cyclic.mjs → object/from_cyclic.mjs} +1 -1
  317. package/build/type/engine/object/from_dependent.d.mts +5 -0
  318. package/build/type/engine/object/from_dependent.mjs +8 -0
  319. package/build/type/engine/object/{from-intersect.d.mts → from_intersect.d.mts} +1 -1
  320. package/build/type/engine/object/{from-intersect.mjs → from_intersect.mjs} +1 -1
  321. package/build/type/engine/object/{from-tuple.d.mts → from_tuple.d.mts} +2 -2
  322. package/build/type/engine/object/{from-tuple.mjs → from_tuple.mjs} +2 -2
  323. package/build/type/engine/object/from_type.d.mts +16 -0
  324. package/build/type/engine/object/from_type.mjs +23 -0
  325. package/build/type/engine/object/{from-union.d.mts → from_union.d.mts} +1 -1
  326. package/build/type/engine/object/{from-union.mjs → from_union.mjs} +4 -11
  327. package/build/type/engine/omit/from_type.d.mts +12 -0
  328. package/build/type/engine/omit/from_type.mjs +18 -0
  329. package/build/type/engine/omit/instantiate.d.mts +4 -11
  330. package/build/type/engine/omit/instantiate.mjs +7 -22
  331. package/build/type/engine/optional/instantiate_add.d.mts +10 -0
  332. package/build/type/engine/optional/instantiate_add.mjs +14 -0
  333. package/build/type/engine/optional/instantiate_remove.d.mts +10 -0
  334. package/build/type/engine/optional/instantiate_remove.mjs +14 -0
  335. package/build/type/engine/parameters/instantiate.d.mts +7 -7
  336. package/build/type/engine/parameters/instantiate.mjs +14 -11
  337. package/build/type/engine/{readonly-type/from-cyclic.d.mts → partial/from_cyclic.d.mts} +1 -1
  338. package/build/type/engine/partial/{from-cyclic.mjs → from_cyclic.mjs} +1 -1
  339. package/build/type/engine/partial/from_dependent.d.mts +5 -0
  340. package/build/type/engine/partial/from_dependent.mjs +8 -0
  341. package/build/type/engine/partial/from_intersect.d.mts +5 -0
  342. package/build/type/engine/partial/from_intersect.mjs +8 -0
  343. package/build/type/engine/{readonly-type/from-object.d.mts → partial/from_object.d.mts} +2 -2
  344. package/build/type/engine/partial/{from-object.mjs → from_object.mjs} +2 -2
  345. package/build/type/engine/partial/from_type.d.mts +14 -0
  346. package/build/type/engine/partial/from_type.mjs +20 -0
  347. package/build/type/engine/{readonly-type/from-union.d.mts → partial/from_union.d.mts} +1 -1
  348. package/build/type/engine/{readonly-type/from-union.mjs → partial/from_union.mjs} +1 -1
  349. package/build/type/engine/partial/instantiate.d.mts +4 -4
  350. package/build/type/engine/partial/instantiate.mjs +8 -7
  351. package/build/type/engine/pick/from_type.d.mts +13 -0
  352. package/build/type/engine/pick/from_type.mjs +20 -0
  353. package/build/type/engine/pick/instantiate.d.mts +4 -12
  354. package/build/type/engine/pick/instantiate.mjs +7 -23
  355. package/build/type/engine/priority/index.d.mts +1 -0
  356. package/build/type/engine/priority/index.mjs +1 -0
  357. package/build/type/engine/priority/priority.d.mts +20 -0
  358. package/build/type/engine/priority/priority.mjs +28 -0
  359. package/build/type/engine/readonly/instantiate_add.d.mts +10 -0
  360. package/build/type/engine/readonly/instantiate_add.mjs +14 -0
  361. package/build/type/engine/readonly/instantiate_remove.d.mts +10 -0
  362. package/build/type/engine/readonly/instantiate_remove.mjs +14 -0
  363. package/build/type/engine/{readonly-type/from-array.d.mts → readonly_object/from_array.d.mts} +2 -2
  364. package/build/type/engine/{readonly-type/from-array.mjs → readonly_object/from_array.mjs} +2 -2
  365. package/build/type/engine/{partial/from-cyclic.d.mts → readonly_object/from_cyclic.d.mts} +1 -1
  366. package/build/type/engine/{required/from-cyclic.mjs → readonly_object/from_cyclic.mjs} +1 -1
  367. package/build/type/engine/readonly_object/from_dependent.d.mts +5 -0
  368. package/build/type/engine/readonly_object/from_dependent.mjs +8 -0
  369. package/build/type/engine/readonly_object/from_intersect.d.mts +5 -0
  370. package/build/type/engine/readonly_object/from_intersect.mjs +8 -0
  371. package/build/type/engine/{partial/from-object.d.mts → readonly_object/from_object.d.mts} +2 -2
  372. package/build/type/engine/{readonly-type/from-object.mjs → readonly_object/from_object.mjs} +2 -2
  373. package/build/type/engine/{readonly-type/from-tuple.d.mts → readonly_object/from_tuple.d.mts} +2 -2
  374. package/build/type/engine/{readonly-type/from-tuple.mjs → readonly_object/from_tuple.mjs} +2 -2
  375. package/build/type/engine/readonly_object/from_type.d.mts +18 -0
  376. package/build/type/engine/readonly_object/from_type.mjs +25 -0
  377. package/build/type/engine/{partial/from-union.d.mts → readonly_object/from_union.d.mts} +1 -1
  378. package/build/type/engine/{partial/from-union.mjs → readonly_object/from_union.mjs} +1 -1
  379. package/build/type/engine/readonly_object/instantiate.d.mts +9 -0
  380. package/build/type/engine/readonly_object/instantiate.mjs +15 -0
  381. package/build/type/engine/record/{from-key.d.mts → from_key.d.mts} +11 -11
  382. package/build/type/engine/record/{from-key.mjs → from_key.mjs} +11 -11
  383. package/build/type/engine/record/{from-key-any.mjs → from_key_any.mjs} +1 -1
  384. package/build/type/engine/record/{from-key-enum.d.mts → from_key_enum.d.mts} +3 -3
  385. package/build/type/engine/record/from_key_enum.mjs +8 -0
  386. package/build/type/engine/record/{from-key-integer.mjs → from_key_integer.mjs} +1 -1
  387. package/build/type/engine/record/{from-key-intersect.d.mts → from_key_intersect.d.mts} +1 -1
  388. package/build/type/engine/record/{from-key-intersect.mjs → from_key_intersect.mjs} +1 -1
  389. package/build/type/engine/record/{from-key-number.mjs → from_key_number.mjs} +1 -1
  390. package/build/type/engine/record/{from-key-string.mjs → from_key_string.mjs} +1 -1
  391. package/build/type/engine/record/{from-key-template-literal.d.mts → from_key_template_literal.d.mts} +4 -4
  392. package/build/type/engine/record/from_key_template_literal.mjs +12 -0
  393. package/build/type/engine/record/{from-key-union.mjs → from_key_union.mjs} +1 -1
  394. package/build/type/engine/record/instantiate.d.mts +4 -4
  395. package/build/type/engine/record/instantiate.mjs +9 -8
  396. package/build/type/engine/ref/instantiate.d.mts +4 -4
  397. package/build/type/engine/ref/instantiate.mjs +6 -6
  398. package/build/type/engine/required/{from-cyclic.d.mts → from_cyclic.d.mts} +1 -1
  399. package/build/type/engine/{readonly-type/from-cyclic.mjs → required/from_cyclic.mjs} +1 -1
  400. package/build/type/engine/required/from_dependent.d.mts +5 -0
  401. package/build/type/engine/required/from_dependent.mjs +8 -0
  402. package/build/type/engine/required/from_intersect.d.mts +5 -0
  403. package/build/type/engine/required/from_intersect.mjs +8 -0
  404. package/build/type/engine/required/{from-object.d.mts → from_object.d.mts} +2 -2
  405. package/build/type/engine/required/{from-object.mjs → from_object.mjs} +2 -2
  406. package/build/type/engine/required/from_type.d.mts +14 -0
  407. package/build/type/engine/required/from_type.mjs +20 -0
  408. package/build/type/engine/required/{from-union.d.mts → from_union.d.mts} +1 -1
  409. package/build/type/engine/required/{from-union.mjs → from_union.mjs} +1 -1
  410. package/build/type/engine/required/instantiate.d.mts +4 -4
  411. package/build/type/engine/required/instantiate.mjs +8 -7
  412. package/build/type/engine/return_type/instantiate.d.mts +12 -0
  413. package/build/type/engine/return_type/instantiate.mjs +21 -0
  414. package/build/type/engine/{template-literal → template_literal}/decode.d.mts +4 -4
  415. package/build/type/engine/{template-literal → template_literal}/decode.mjs +6 -12
  416. package/build/type/engine/{template-literal → template_literal}/encode.d.mts +6 -4
  417. package/build/type/engine/{template-literal → template_literal}/encode.mjs +17 -16
  418. package/build/type/engine/{template-literal → template_literal}/index.d.mts +2 -2
  419. package/build/type/engine/{template-literal → template_literal}/index.mjs +2 -2
  420. package/build/type/engine/{template-literal → template_literal}/instantiate.d.mts +4 -4
  421. package/build/type/engine/template_literal/instantiate.mjs +15 -0
  422. package/build/type/engine/{template-literal/is-finite.mjs → template_literal/is_finite.mjs} +3 -7
  423. package/build/type/engine/{template-literal/is-pattern.mjs → template_literal/is_pattern.mjs} +1 -0
  424. package/build/type/engine/this/expand_this.d.mts +16 -0
  425. package/build/type/engine/this/expand_this.mjs +26 -0
  426. package/build/type/engine/with/instantiate.d.mts +8 -0
  427. package/build/type/engine/with/instantiate.mjs +14 -0
  428. package/build/type/extends/any.d.mts +1 -1
  429. package/build/type/extends/any.mjs +1 -1
  430. package/build/type/extends/array.d.mts +2 -2
  431. package/build/type/extends/array.mjs +2 -2
  432. package/build/type/extends/bigint.d.mts +1 -1
  433. package/build/type/extends/bigint.mjs +1 -1
  434. package/build/type/extends/boolean.d.mts +1 -1
  435. package/build/type/extends/boolean.mjs +1 -1
  436. package/build/type/extends/constructor.d.mts +1 -1
  437. package/build/type/extends/constructor.mjs +1 -1
  438. package/build/type/extends/dependent.d.mts +6 -0
  439. package/build/type/extends/dependent.mjs +6 -0
  440. package/build/type/extends/enum.d.mts +5 -5
  441. package/build/type/extends/enum.mjs +4 -3
  442. package/build/type/extends/extends.d.mts +5 -3
  443. package/build/type/extends/extends.mjs +10 -8
  444. package/build/type/extends/{extends-left.d.mts → extends_left.d.mts} +7 -9
  445. package/build/type/extends/{extends-left.mjs → extends_left.mjs} +26 -29
  446. package/build/type/extends/{extends-right.d.mts → extends_right.d.mts} +9 -7
  447. package/build/type/extends/extends_right.mjs +49 -0
  448. package/build/type/extends/function.d.mts +1 -1
  449. package/build/type/extends/function.mjs +1 -1
  450. package/build/type/extends/inference.d.mts +1 -1
  451. package/build/type/extends/inference.mjs +2 -2
  452. package/build/type/extends/integer.d.mts +1 -1
  453. package/build/type/extends/integer.mjs +1 -1
  454. package/build/type/extends/intersect.d.mts +1 -1
  455. package/build/type/extends/intersect.mjs +1 -1
  456. package/build/type/extends/literal.d.mts +2 -2
  457. package/build/type/extends/literal.mjs +2 -2
  458. package/build/type/extends/never.d.mts +1 -1
  459. package/build/type/extends/never.mjs +1 -1
  460. package/build/type/extends/null.d.mts +1 -1
  461. package/build/type/extends/null.mjs +1 -1
  462. package/build/type/extends/number.d.mts +1 -1
  463. package/build/type/extends/number.mjs +1 -1
  464. package/build/type/extends/object.d.mts +10 -3
  465. package/build/type/extends/object.mjs +27 -5
  466. package/build/type/extends/parameters.d.mts +1 -1
  467. package/build/type/extends/parameters.mjs +4 -3
  468. package/build/type/extends/record.d.mts +13 -0
  469. package/build/type/extends/record.mjs +23 -0
  470. package/build/type/extends/result.d.mts +1 -4
  471. package/build/type/extends/result.mjs +0 -3
  472. package/build/type/extends/{return-type.d.mts → return_type.d.mts} +1 -1
  473. package/build/type/extends/{return-type.mjs → return_type.mjs} +1 -1
  474. package/build/type/extends/string.d.mts +1 -1
  475. package/build/type/extends/string.mjs +1 -1
  476. package/build/type/extends/symbol.d.mts +1 -1
  477. package/build/type/extends/symbol.mjs +1 -1
  478. package/build/type/extends/template_literal.d.mts +6 -0
  479. package/build/type/extends/template_literal.mjs +7 -0
  480. package/build/type/extends/tuple.d.mts +5 -8
  481. package/build/type/extends/tuple.mjs +8 -7
  482. package/build/type/extends/undefined.d.mts +1 -1
  483. package/build/type/extends/undefined.mjs +1 -1
  484. package/build/type/extends/union.d.mts +1 -1
  485. package/build/type/extends/union.mjs +4 -3
  486. package/build/type/extends/unknown.d.mts +1 -1
  487. package/build/type/extends/unknown.mjs +1 -1
  488. package/build/type/extends/void.d.mts +1 -1
  489. package/build/type/extends/void.mjs +1 -1
  490. package/build/type/script/mapping.d.mts +86 -98
  491. package/build/type/script/mapping.mjs +95 -92
  492. package/build/type/script/parser.d.mts +42 -40
  493. package/build/type/script/parser.mjs +23 -22
  494. package/build/type/script/script.d.mts +3 -4
  495. package/build/type/script/script.mjs +3 -2
  496. package/build/type/script/token/internal/guard.d.mts +1 -1
  497. package/build/type/script/token/internal/guard.mjs +1 -1
  498. package/build/type/script/token/internal/take.mjs +5 -9
  499. package/build/type/script/token/until.mjs +4 -7
  500. package/build/type/types/_codec.d.mts +12 -12
  501. package/build/type/types/_codec.mjs +0 -1
  502. package/build/type/types/_immutable.d.mts +2 -9
  503. package/build/type/types/_immutable.mjs +2 -10
  504. package/build/type/types/_optional.d.mts +2 -9
  505. package/build/type/types/_optional.mjs +2 -11
  506. package/build/type/types/_readonly.d.mts +2 -9
  507. package/build/type/types/_readonly.mjs +2 -10
  508. package/build/type/types/_refine.d.mts +13 -8
  509. package/build/type/types/_refine.mjs +20 -4
  510. package/build/type/types/array.d.mts +2 -1
  511. package/build/type/types/array.mjs +2 -1
  512. package/build/type/types/call.d.mts +3 -3
  513. package/build/type/types/call.mjs +3 -2
  514. package/build/type/types/deferred.d.mts +1 -0
  515. package/build/type/types/deferred.mjs +1 -1
  516. package/build/type/types/dependent.d.mts +17 -0
  517. package/build/type/types/{iterator.mjs → dependent.mjs} +9 -9
  518. package/build/type/types/enum.d.mts +5 -3
  519. package/build/type/types/enum.mjs +7 -2
  520. package/build/type/types/function.mjs +1 -1
  521. package/build/type/types/index.d.mts +2 -5
  522. package/build/type/types/index.mjs +2 -5
  523. package/build/type/types/number.d.mts +1 -1
  524. package/build/type/types/number.mjs +1 -1
  525. package/build/type/types/object.mjs +1 -1
  526. package/build/type/types/properties.d.mts +2 -1
  527. package/build/type/types/record.d.mts +19 -15
  528. package/build/type/types/record.mjs +19 -17
  529. package/build/type/types/static.d.mts +3 -6
  530. package/build/type/types/{template-literal.d.mts → template_literal.d.mts} +6 -4
  531. package/build/type/types/{template-literal.mjs → template_literal.mjs} +10 -4
  532. package/build/type/types/unsafe.d.mts +1 -2
  533. package/build/type/types/unsafe.mjs +5 -3
  534. package/build/typebox.d.mts +11 -15
  535. package/build/typebox.mjs +10 -14
  536. package/build/value/clean/clean.mjs +5 -3
  537. package/build/value/clean/{from-array.mjs → from_array.mjs} +1 -1
  538. package/build/value/clean/{from-cyclic.mjs → from_cyclic.mjs} +1 -1
  539. package/build/value/clean/{from-intersect.mjs → from_intersect.mjs} +3 -3
  540. package/build/value/clean/{from-object.mjs → from_object.mjs} +1 -1
  541. package/build/value/clean/{from-record.mjs → from_record.mjs} +1 -1
  542. package/build/value/clean/{from-ref.mjs → from_ref.mjs} +1 -1
  543. package/build/value/clean/{from-tuple.mjs → from_tuple.mjs} +1 -1
  544. package/build/value/clean/from_type.mjs +21 -0
  545. package/build/value/clean/{from-union.mjs → from_union.mjs} +2 -3
  546. package/build/value/clone/clone.mjs +2 -72
  547. package/build/value/codec/decode.mjs +5 -3
  548. package/build/value/codec/encode.mjs +5 -3
  549. package/build/value/codec/{from-array.mjs → from_array.mjs} +2 -5
  550. package/build/value/codec/{from-cyclic.mjs → from_cyclic.mjs} +1 -1
  551. package/build/value/codec/{from-intersect.mjs → from_intersect.mjs} +1 -1
  552. package/build/value/codec/{from-object.mjs → from_object.mjs} +3 -6
  553. package/build/value/codec/{from-record.mjs → from_record.mjs} +3 -8
  554. package/build/value/codec/{from-ref.mjs → from_ref.mjs} +1 -1
  555. package/build/value/codec/{from-tuple.mjs → from_tuple.mjs} +2 -5
  556. package/build/value/codec/{from-type.mjs → from_type.mjs} +8 -8
  557. package/build/value/codec/{from-union.mjs → from_union.mjs} +3 -4
  558. package/build/value/convert/convert.mjs +1 -1
  559. package/build/value/convert/{from-additional.mjs → from_additional.mjs} +1 -1
  560. package/build/value/convert/{from-array.mjs → from_array.mjs} +1 -1
  561. package/build/value/convert/{from-cyclic.mjs → from_cyclic.mjs} +1 -1
  562. package/build/value/convert/from_enum.mjs +6 -0
  563. package/build/value/convert/{from-intersect.mjs → from_intersect.mjs} +1 -1
  564. package/build/value/convert/{from-literal.d.mts → from_literal.d.mts} +1 -1
  565. package/build/value/convert/{from-object.mjs → from_object.mjs} +3 -3
  566. package/build/value/convert/{from-record.mjs → from_record.mjs} +2 -2
  567. package/build/value/convert/{from-ref.mjs → from_ref.mjs} +1 -1
  568. package/build/value/convert/{from-template-literal.d.mts → from_template_literal.d.mts} +1 -1
  569. package/build/value/convert/from_template_literal.mjs +6 -0
  570. package/build/value/convert/{from-tuple.mjs → from_tuple.mjs} +1 -1
  571. package/build/value/convert/from_type.mjs +43 -0
  572. package/build/value/convert/{from-union.mjs → from_union.mjs} +1 -1
  573. package/build/value/convert/try/try.d.mts +8 -8
  574. package/build/value/convert/try/try.mjs +8 -8
  575. package/build/value/convert/try/{try-array.d.mts → try_array.d.mts} +1 -1
  576. package/build/value/convert/try/{try-array.mjs → try_array.mjs} +1 -1
  577. package/build/value/convert/try/{try-bigint.d.mts → try_bigint.d.mts} +1 -1
  578. package/build/value/convert/try/{try-bigint.mjs → try_bigint.mjs} +1 -1
  579. package/build/value/convert/try/{try-boolean.d.mts → try_boolean.d.mts} +1 -1
  580. package/build/value/convert/try/{try-boolean.mjs → try_boolean.mjs} +1 -1
  581. package/build/value/convert/try/{try-null.d.mts → try_null.d.mts} +1 -1
  582. package/build/value/convert/try/{try-null.mjs → try_null.mjs} +1 -1
  583. package/build/value/convert/try/{try-number.d.mts → try_number.d.mts} +1 -1
  584. package/build/value/convert/try/{try-number.mjs → try_number.mjs} +2 -2
  585. package/build/value/convert/try/{try-string.d.mts → try_string.d.mts} +1 -1
  586. package/build/value/convert/try/{try-string.mjs → try_string.mjs} +1 -1
  587. package/build/value/convert/try/{try-undefined.d.mts → try_undefined.d.mts} +1 -1
  588. package/build/value/convert/try/{try-undefined.mjs → try_undefined.mjs} +1 -1
  589. package/build/value/create/create.mjs +1 -1
  590. package/build/value/create/{from-array.mjs → from_array.mjs} +1 -1
  591. package/build/value/create/{from-constructor.mjs → from_constructor.mjs} +1 -1
  592. package/build/value/create/{from-cyclic.mjs → from_cyclic.mjs} +1 -1
  593. package/build/value/create/from_enum.mjs +6 -0
  594. package/build/value/create/{from-function.mjs → from_function.mjs} +1 -1
  595. package/build/value/create/{from-intersect.mjs → from_intersect.mjs} +1 -1
  596. package/build/value/create/{from-object.mjs → from_object.mjs} +1 -1
  597. package/build/value/create/{from-ref.mjs → from_ref.mjs} +1 -1
  598. package/build/value/create/{from-template-literal.mjs → from_template_literal.mjs} +2 -2
  599. package/build/value/create/{from-tuple.mjs → from_tuple.mjs} +1 -1
  600. package/build/value/create/from_type.mjs +61 -0
  601. package/build/value/create/{from-union.mjs → from_union.mjs} +1 -1
  602. package/build/value/default/default.mjs +1 -1
  603. package/build/value/default/{from-array.mjs → from_array.mjs} +1 -1
  604. package/build/value/{clean/from-cyclic.d.mts → default/from_cyclic.d.mts} +1 -1
  605. package/build/value/default/{from-cyclic.mjs → from_cyclic.mjs} +1 -1
  606. package/build/value/default/{from-intersect.mjs → from_intersect.mjs} +1 -1
  607. package/build/value/default/{from-object.mjs → from_object.mjs} +2 -2
  608. package/build/value/default/{from-record.mjs → from_record.mjs} +1 -1
  609. package/build/value/default/{from-ref.mjs → from_ref.mjs} +1 -1
  610. package/build/value/default/{from-tuple.mjs → from_tuple.mjs} +1 -1
  611. package/build/value/default/from_type.mjs +25 -0
  612. package/build/value/default/{from-union.mjs → from_union.mjs} +1 -1
  613. package/build/value/delta/diff.mjs +6 -0
  614. package/build/value/errors/errors.d.mts +2 -2
  615. package/build/value/errors/errors.mjs +1 -1
  616. package/build/value/index.d.mts +0 -1
  617. package/build/value/index.mjs +0 -1
  618. package/build/value/repair/{from-array.mjs → from_array.mjs} +1 -1
  619. package/build/value/repair/from_enum.mjs +6 -0
  620. package/build/value/repair/from_intersect.d.mts +2 -0
  621. package/build/value/repair/{from-intersect.mjs → from_intersect.mjs} +1 -1
  622. package/build/value/repair/{from-object.mjs → from_object.mjs} +1 -1
  623. package/build/value/repair/{from-record.mjs → from_record.mjs} +1 -1
  624. package/build/value/repair/{from-ref.mjs → from_ref.mjs} +1 -1
  625. package/build/value/{convert/from-template-literal.mjs → repair/from_template_literal.mjs} +2 -2
  626. package/build/value/repair/{from-tuple.mjs → from_tuple.mjs} +1 -1
  627. package/build/value/repair/{from-type.mjs → from_type.mjs} +34 -32
  628. package/build/value/{clean/from-union.d.mts → repair/from_union.d.mts} +1 -1
  629. package/build/value/repair/{from-union.mjs → from_union.mjs} +2 -2
  630. package/build/value/repair/repair.mjs +1 -1
  631. package/build/value/shared/index.d.mts +3 -3
  632. package/build/value/shared/index.mjs +3 -3
  633. package/build/value/shared/union_priority_sort.d.mts +7 -0
  634. package/build/value/shared/union_priority_sort.mjs +72 -0
  635. package/build/value/value.d.mts +0 -1
  636. package/build/value/value.mjs +0 -1
  637. package/changes.json +1 -1
  638. package/package.json +27 -27
  639. package/readme.md +214 -95
  640. package/build/schema/engine/_guard.d.mts +0 -6
  641. package/build/schema/engine/_guard.mjs +0 -26
  642. package/build/schema/static/~non-readonly.d.mts +0 -7
  643. package/build/schema/static/~readonly.d.mts +0 -6
  644. package/build/schema/static/~readonly.mjs +0 -2
  645. package/build/schema/types/_guard.d.mts +0 -10
  646. package/build/schema/types/_guard.mjs +0 -16
  647. package/build/type/action/_optional.d.mts +0 -19
  648. package/build/type/action/_optional.mjs +0 -40
  649. package/build/type/action/_readonly.d.mts +0 -19
  650. package/build/type/action/_readonly.mjs +0 -40
  651. package/build/type/action/awaited.d.mts +0 -11
  652. package/build/type/action/awaited.mjs +0 -12
  653. package/build/type/action/options.d.mts +0 -12
  654. package/build/type/action/options.mjs +0 -12
  655. package/build/type/action/readonly-type.d.mts +0 -11
  656. package/build/type/action/readonly-type.mjs +0 -12
  657. package/build/type/engine/awaited/instantiate.d.mts +0 -10
  658. package/build/type/engine/awaited/instantiate.mjs +0 -19
  659. package/build/type/engine/constructor-parameters/instantiate.d.mts +0 -14
  660. package/build/type/engine/constructor-parameters/instantiate.mjs +0 -22
  661. package/build/type/engine/enum/enum-to-union.d.mts +0 -14
  662. package/build/type/engine/enum/enum-to-union.mjs +0 -24
  663. package/build/type/engine/indexable/from-enum.d.mts +0 -6
  664. package/build/type/engine/indexable/from-enum.mjs +0 -8
  665. package/build/type/engine/indexable/from-template-literal.d.mts +0 -5
  666. package/build/type/engine/indexable/from-template-literal.mjs +0 -8
  667. package/build/type/engine/indexable/from-type.d.mts +0 -17
  668. package/build/type/engine/indexable/from-type.mjs +0 -22
  669. package/build/type/engine/indexed/from-object.d.mts +0 -9
  670. package/build/type/engine/indexed/from-object.mjs +0 -18
  671. package/build/type/engine/instance-type/instantiate.d.mts +0 -12
  672. package/build/type/engine/intrinsics/from-template-literal.mjs +0 -8
  673. package/build/type/engine/mapped/mapped-variants.d.mts +0 -15
  674. package/build/type/engine/mapped/mapped-variants.mjs +0 -29
  675. package/build/type/engine/non-nullable/instantiate.d.mts +0 -15
  676. package/build/type/engine/non-nullable/instantiate.mjs +0 -22
  677. package/build/type/engine/object/from-type.d.mts +0 -14
  678. package/build/type/engine/object/from-type.mjs +0 -20
  679. package/build/type/engine/options/instantiate.d.mts +0 -8
  680. package/build/type/engine/options/instantiate.mjs +0 -13
  681. package/build/type/engine/partial/from-intersect.d.mts +0 -5
  682. package/build/type/engine/partial/from-intersect.mjs +0 -7
  683. package/build/type/engine/partial/from-type.d.mts +0 -12
  684. package/build/type/engine/partial/from-type.mjs +0 -17
  685. package/build/type/engine/readonly-type/from-intersect.d.mts +0 -5
  686. package/build/type/engine/readonly-type/from-intersect.mjs +0 -7
  687. package/build/type/engine/readonly-type/from-type.d.mts +0 -16
  688. package/build/type/engine/readonly-type/from-type.mjs +0 -22
  689. package/build/type/engine/readonly-type/instantiate.d.mts +0 -9
  690. package/build/type/engine/readonly-type/instantiate.mjs +0 -14
  691. package/build/type/engine/record/from-key-enum.mjs +0 -8
  692. package/build/type/engine/record/from-key-template-literal.mjs +0 -12
  693. package/build/type/engine/required/from-intersect.d.mts +0 -5
  694. package/build/type/engine/required/from-intersect.mjs +0 -7
  695. package/build/type/engine/required/from-type.d.mts +0 -12
  696. package/build/type/engine/required/from-type.mjs +0 -17
  697. package/build/type/engine/return-type/index.d.mts +0 -1
  698. package/build/type/engine/return-type/index.mjs +0 -1
  699. package/build/type/engine/return-type/instantiate.d.mts +0 -11
  700. package/build/type/engine/return-type/instantiate.mjs +0 -18
  701. package/build/type/engine/template-literal/instantiate.mjs +0 -14
  702. package/build/type/extends/async-iterator.d.mts +0 -7
  703. package/build/type/extends/async-iterator.mjs +0 -9
  704. package/build/type/extends/extends-right.mjs +0 -43
  705. package/build/type/extends/iterator.d.mts +0 -7
  706. package/build/type/extends/iterator.mjs +0 -9
  707. package/build/type/extends/promise.d.mts +0 -7
  708. package/build/type/extends/promise.mjs +0 -9
  709. package/build/type/extends/template-literal.d.mts +0 -6
  710. package/build/type/extends/template-literal.mjs +0 -7
  711. package/build/type/types/async-iterator.d.mts +0 -16
  712. package/build/type/types/async-iterator.mjs +0 -24
  713. package/build/type/types/base.d.mts +0 -50
  714. package/build/type/types/base.mjs +0 -84
  715. package/build/type/types/iterator.d.mts +0 -16
  716. package/build/type/types/promise.d.mts +0 -16
  717. package/build/type/types/promise.mjs +0 -24
  718. package/build/value/clean/from-base.d.mts +0 -2
  719. package/build/value/clean/from-base.mjs +0 -4
  720. package/build/value/clean/from-type.mjs +0 -23
  721. package/build/value/convert/from-base.d.mts +0 -2
  722. package/build/value/convert/from-base.mjs +0 -4
  723. package/build/value/convert/from-enum.mjs +0 -7
  724. package/build/value/convert/from-type.mjs +0 -45
  725. package/build/value/create/from-async-iterator.d.mts +0 -2
  726. package/build/value/create/from-async-iterator.mjs +0 -5
  727. package/build/value/create/from-base.d.mts +0 -2
  728. package/build/value/create/from-base.mjs +0 -4
  729. package/build/value/create/from-enum.mjs +0 -6
  730. package/build/value/create/from-iterator.d.mts +0 -2
  731. package/build/value/create/from-iterator.mjs +0 -5
  732. package/build/value/create/from-promise.d.mts +0 -2
  733. package/build/value/create/from-promise.mjs +0 -5
  734. package/build/value/create/from-type.mjs +0 -69
  735. package/build/value/default/from-base.d.mts +0 -2
  736. package/build/value/default/from-base.mjs +0 -5
  737. package/build/value/default/from-intersect.d.mts +0 -2
  738. package/build/value/default/from-type.mjs +0 -27
  739. package/build/value/mutate/error.d.mts +0 -3
  740. package/build/value/mutate/error.mjs +0 -6
  741. package/build/value/mutate/from-array.d.mts +0 -2
  742. package/build/value/mutate/from-array.mjs +0 -16
  743. package/build/value/mutate/from-object.d.mts +0 -2
  744. package/build/value/mutate/from-object.mjs +0 -27
  745. package/build/value/mutate/from-unknown.d.mts +0 -2
  746. package/build/value/mutate/from-unknown.mjs +0 -7
  747. package/build/value/mutate/from-value.d.mts +0 -2
  748. package/build/value/mutate/from-value.mjs +0 -12
  749. package/build/value/mutate/index.d.mts +0 -1
  750. package/build/value/mutate/index.mjs +0 -1
  751. package/build/value/mutate/mutate.d.mts +0 -9
  752. package/build/value/mutate/mutate.mjs +0 -39
  753. package/build/value/repair/from-base.d.mts +0 -2
  754. package/build/value/repair/from-base.mjs +0 -8
  755. package/build/value/repair/from-enum.mjs +0 -7
  756. package/build/value/repair/from-template-literal.mjs +0 -7
  757. package/build/value/shared/union-priority-sort.d.mts +0 -3
  758. package/build/value/shared/union-priority-sort.mjs +0 -36
  759. /package/build/format/{date-time.d.mts → date_time.d.mts} +0 -0
  760. /package/build/format/{date-time.mjs → date_time.mjs} +0 -0
  761. /package/build/format/{idn-email.d.mts → idn_email.d.mts} +0 -0
  762. /package/build/format/{idn-email.mjs → idn_email.mjs} +0 -0
  763. /package/build/format/{idn-hostname.d.mts → idn_hostname.d.mts} +0 -0
  764. /package/build/format/{idn-hostname.mjs → idn_hostname.mjs} +0 -0
  765. /package/build/format/{iri-reference.d.mts → iri_reference.d.mts} +0 -0
  766. /package/build/format/{iri-reference.mjs → iri_reference.mjs} +0 -0
  767. /package/build/format/{json-pointer.d.mts → json_pointer.d.mts} +0 -0
  768. /package/build/format/{json-pointer.mjs → json_pointer.mjs} +0 -0
  769. /package/build/format/{json-pointer-uri-fragment.d.mts → json_pointer_uri_fragment.d.mts} +0 -0
  770. /package/build/format/{json-pointer-uri-fragment.mjs → json_pointer_uri_fragment.mjs} +0 -0
  771. /package/build/format/{relative-json-pointer.d.mts → relative_json_pointer.d.mts} +0 -0
  772. /package/build/format/{relative-json-pointer.mjs → relative_json_pointer.mjs} +0 -0
  773. /package/build/format/{uri-reference.d.mts → uri_reference.d.mts} +0 -0
  774. /package/build/format/{uri-reference.mjs → uri_reference.mjs} +0 -0
  775. /package/build/format/{uri-template.d.mts → uri_template.d.mts} +0 -0
  776. /package/build/format/{uri-template.mjs → uri_template.mjs} +0 -0
  777. /package/build/schema/pointer/{pointer-get.d.mts → pointer_get.d.mts} +0 -0
  778. /package/build/schema/pointer/{pointer-get.mjs → pointer_get.mjs} +0 -0
  779. /package/build/schema/static/{~comparer.mjs → _canonical.mjs} +0 -0
  780. /package/build/schema/static/{~comparer.d.mts → _comparer.d.mts} +0 -0
  781. /package/build/schema/static/{~elements.mjs → _comparer.mjs} +0 -0
  782. /package/build/schema/static/{~non-readonly.mjs → _elements.mjs} +0 -0
  783. /package/build/type/engine/call/{distribute-arguments.d.mts → distribute_arguments.d.mts} +0 -0
  784. /package/build/type/engine/call/{resolve-arguments.d.mts → resolve_arguments.d.mts} +0 -0
  785. /package/build/type/engine/call/{resolve-target.d.mts → resolve_target.d.mts} +0 -0
  786. /package/build/type/engine/call/{resolve-target.mjs → resolve_target.mjs} +0 -0
  787. /package/build/type/engine/{awaited → constructor_parameters}/index.d.mts +0 -0
  788. /package/build/type/engine/{awaited → constructor_parameters}/index.mjs +0 -0
  789. /package/build/type/engine/enum/{typescript-enum-to-enum-values.d.mts → typescript_enum_to_enum_values.d.mts} +0 -0
  790. /package/build/type/engine/enum/{typescript-enum-to-enum-values.mjs → typescript_enum_to_enum_values.mjs} +0 -0
  791. /package/build/type/engine/helpers/{keys-to-indexer.d.mts → keys_to_indexer.d.mts} +0 -0
  792. /package/build/type/engine/helpers/{keys-to-indexer.mjs → keys_to_indexer.mjs} +0 -0
  793. /package/build/type/engine/indexable/{from-literal.mjs → from_literal.mjs} +0 -0
  794. /package/build/type/engine/indexable/{to-indexable.d.mts → to_indexable.d.mts} +0 -0
  795. /package/build/type/engine/indexable/{to-indexable.mjs → to_indexable.mjs} +0 -0
  796. /package/build/type/engine/indexed/{array-indexer.d.mts → array_indexer.d.mts} +0 -0
  797. /package/build/type/engine/indexed/{array-indexer.mjs → array_indexer.mjs} +0 -0
  798. /package/build/type/engine/indexed/{from-array.d.mts → from_array.d.mts} +0 -0
  799. /package/build/type/engine/indexed/{from-array.mjs → from_array.mjs} +0 -0
  800. /package/build/type/engine/{constructor-parameters → instance_type}/index.d.mts +0 -0
  801. /package/build/type/engine/{constructor-parameters → instance_type}/index.mjs +0 -0
  802. /package/build/type/engine/intrinsics/{from-literal.d.mts → from_literal.d.mts} +0 -0
  803. /package/build/type/engine/intrinsics/{from-literal.mjs → from_literal.mjs} +0 -0
  804. /package/build/type/engine/keyof/{from-any.d.mts → from_any.d.mts} +0 -0
  805. /package/build/type/engine/keyof/{from-any.mjs → from_any.mjs} +0 -0
  806. /package/build/type/engine/keyof/{from-array.d.mts → from_array.d.mts} +0 -0
  807. /package/build/type/engine/keyof/{from-array.mjs → from_array.mjs} +0 -0
  808. /package/build/type/engine/keyof/{from-object.d.mts → from_object.d.mts} +0 -0
  809. /package/build/type/engine/keyof/{from-object.mjs → from_object.mjs} +0 -0
  810. /package/build/type/engine/keyof/{from-record.d.mts → from_record.d.mts} +0 -0
  811. /package/build/type/engine/keyof/{from-record.mjs → from_record.mjs} +0 -0
  812. /package/build/type/engine/keyof/{from-tuple.d.mts → from_tuple.d.mts} +0 -0
  813. /package/build/type/engine/keyof/{from-tuple.mjs → from_tuple.mjs} +0 -0
  814. /package/build/type/engine/{instance-type → non_nullable}/index.d.mts +0 -0
  815. /package/build/type/engine/{instance-type → non_nullable}/index.mjs +0 -0
  816. /package/build/type/engine/object/{from-object.d.mts → from_object.d.mts} +0 -0
  817. /package/build/type/engine/object/{from-object.mjs → from_object.mjs} +0 -0
  818. /package/build/type/engine/{non-nullable → readonly_object}/index.d.mts +0 -0
  819. /package/build/type/engine/{non-nullable → readonly_object}/index.mjs +0 -0
  820. /package/build/type/engine/record/{from-key-any.d.mts → from_key_any.d.mts} +0 -0
  821. /package/build/type/engine/record/{from-key-boolean.d.mts → from_key_boolean.d.mts} +0 -0
  822. /package/build/type/engine/record/{from-key-boolean.mjs → from_key_boolean.mjs} +0 -0
  823. /package/build/type/engine/record/{from-key-integer.d.mts → from_key_integer.d.mts} +0 -0
  824. /package/build/type/engine/record/{from-key-literal.d.mts → from_key_literal.d.mts} +0 -0
  825. /package/build/type/engine/record/{from-key-literal.mjs → from_key_literal.mjs} +0 -0
  826. /package/build/type/engine/record/{from-key-number.d.mts → from_key_number.d.mts} +0 -0
  827. /package/build/type/engine/record/{from-key-string.d.mts → from_key_string.d.mts} +0 -0
  828. /package/build/type/engine/record/{from-key-union.d.mts → from_key_union.d.mts} +0 -0
  829. /package/build/type/engine/record/{record-create.d.mts → record_create.d.mts} +0 -0
  830. /package/build/type/engine/record/{record-create.mjs → record_create.mjs} +0 -0
  831. /package/build/type/engine/{options → return_type}/index.d.mts +0 -0
  832. /package/build/type/engine/{options → return_type}/index.mjs +0 -0
  833. /package/build/type/engine/{template-literal → template_literal}/create.d.mts +0 -0
  834. /package/build/type/engine/{template-literal → template_literal}/create.mjs +0 -0
  835. /package/build/type/engine/{template-literal/is-finite.d.mts → template_literal/is_finite.d.mts} +0 -0
  836. /package/build/type/engine/{template-literal/is-pattern.d.mts → template_literal/is_pattern.d.mts} +0 -0
  837. /package/build/type/engine/{template-literal → template_literal}/static.d.mts +0 -0
  838. /package/build/type/engine/{template-literal → template_literal}/static.mjs +0 -0
  839. /package/build/type/engine/tuple/{to-object.d.mts → to_object.d.mts} +0 -0
  840. /package/build/type/engine/tuple/{to-object.mjs → to_object.mjs} +0 -0
  841. /package/build/type/engine/{readonly-type → with}/index.d.mts +0 -0
  842. /package/build/type/engine/{readonly-type → with}/index.mjs +0 -0
  843. /package/build/value/clean/{from-array.d.mts → from_array.d.mts} +0 -0
  844. /package/build/value/{convert/from-cyclic.d.mts → clean/from_cyclic.d.mts} +0 -0
  845. /package/build/value/clean/{from-intersect.d.mts → from_intersect.d.mts} +0 -0
  846. /package/build/value/clean/{from-object.d.mts → from_object.d.mts} +0 -0
  847. /package/build/value/clean/{from-record.d.mts → from_record.d.mts} +0 -0
  848. /package/build/value/clean/{from-ref.d.mts → from_ref.d.mts} +0 -0
  849. /package/build/value/clean/{from-tuple.d.mts → from_tuple.d.mts} +0 -0
  850. /package/build/value/clean/{from-type.d.mts → from_type.d.mts} +0 -0
  851. /package/build/value/{repair/from-union.d.mts → clean/from_union.d.mts} +0 -0
  852. /package/build/value/codec/{from-array.d.mts → from_array.d.mts} +0 -0
  853. /package/build/value/codec/{from-cyclic.d.mts → from_cyclic.d.mts} +0 -0
  854. /package/build/value/codec/{from-intersect.d.mts → from_intersect.d.mts} +0 -0
  855. /package/build/value/codec/{from-object.d.mts → from_object.d.mts} +0 -0
  856. /package/build/value/codec/{from-record.d.mts → from_record.d.mts} +0 -0
  857. /package/build/value/codec/{from-ref.d.mts → from_ref.d.mts} +0 -0
  858. /package/build/value/codec/{from-tuple.d.mts → from_tuple.d.mts} +0 -0
  859. /package/build/value/codec/{from-type.d.mts → from_type.d.mts} +0 -0
  860. /package/build/value/codec/{from-union.d.mts → from_union.d.mts} +0 -0
  861. /package/build/value/convert/{from-additional.d.mts → from_additional.d.mts} +0 -0
  862. /package/build/value/convert/{from-array.d.mts → from_array.d.mts} +0 -0
  863. /package/build/value/convert/{from-bigint.d.mts → from_bigint.d.mts} +0 -0
  864. /package/build/value/convert/{from-bigint.mjs → from_bigint.mjs} +0 -0
  865. /package/build/value/convert/{from-boolean.d.mts → from_boolean.d.mts} +0 -0
  866. /package/build/value/convert/{from-boolean.mjs → from_boolean.mjs} +0 -0
  867. /package/build/value/{default/from-cyclic.d.mts → convert/from_cyclic.d.mts} +0 -0
  868. /package/build/value/convert/{from-enum.d.mts → from_enum.d.mts} +0 -0
  869. /package/build/value/convert/{from-integer.d.mts → from_integer.d.mts} +0 -0
  870. /package/build/value/convert/{from-integer.mjs → from_integer.mjs} +0 -0
  871. /package/build/value/convert/{from-intersect.d.mts → from_intersect.d.mts} +0 -0
  872. /package/build/value/convert/{from-literal.mjs → from_literal.mjs} +0 -0
  873. /package/build/value/convert/{from-null.d.mts → from_null.d.mts} +0 -0
  874. /package/build/value/convert/{from-null.mjs → from_null.mjs} +0 -0
  875. /package/build/value/convert/{from-number.d.mts → from_number.d.mts} +0 -0
  876. /package/build/value/convert/{from-number.mjs → from_number.mjs} +0 -0
  877. /package/build/value/convert/{from-object.d.mts → from_object.d.mts} +0 -0
  878. /package/build/value/convert/{from-record.d.mts → from_record.d.mts} +0 -0
  879. /package/build/value/convert/{from-ref.d.mts → from_ref.d.mts} +0 -0
  880. /package/build/value/convert/{from-string.d.mts → from_string.d.mts} +0 -0
  881. /package/build/value/convert/{from-string.mjs → from_string.mjs} +0 -0
  882. /package/build/value/convert/{from-tuple.d.mts → from_tuple.d.mts} +0 -0
  883. /package/build/value/convert/{from-type.d.mts → from_type.d.mts} +0 -0
  884. /package/build/value/convert/{from-undefined.d.mts → from_undefined.d.mts} +0 -0
  885. /package/build/value/convert/{from-undefined.mjs → from_undefined.mjs} +0 -0
  886. /package/build/value/convert/{from-union.d.mts → from_union.d.mts} +0 -0
  887. /package/build/value/convert/{from-void.d.mts → from_void.d.mts} +0 -0
  888. /package/build/value/convert/{from-void.mjs → from_void.mjs} +0 -0
  889. /package/build/value/convert/try/{try-result.d.mts → try_result.d.mts} +0 -0
  890. /package/build/value/convert/try/{try-result.mjs → try_result.mjs} +0 -0
  891. /package/build/value/create/{from-array.d.mts → from_array.d.mts} +0 -0
  892. /package/build/value/create/{from-bigint.d.mts → from_bigint.d.mts} +0 -0
  893. /package/build/value/create/{from-bigint.mjs → from_bigint.mjs} +0 -0
  894. /package/build/value/create/{from-boolean.d.mts → from_boolean.d.mts} +0 -0
  895. /package/build/value/create/{from-boolean.mjs → from_boolean.mjs} +0 -0
  896. /package/build/value/create/{from-constructor.d.mts → from_constructor.d.mts} +0 -0
  897. /package/build/value/create/{from-cyclic.d.mts → from_cyclic.d.mts} +0 -0
  898. /package/build/value/create/{from-default.d.mts → from_default.d.mts} +0 -0
  899. /package/build/value/create/{from-default.mjs → from_default.mjs} +0 -0
  900. /package/build/value/create/{from-enum.d.mts → from_enum.d.mts} +0 -0
  901. /package/build/value/create/{from-function.d.mts → from_function.d.mts} +0 -0
  902. /package/build/value/create/{from-integer.d.mts → from_integer.d.mts} +0 -0
  903. /package/build/value/create/{from-integer.mjs → from_integer.mjs} +0 -0
  904. /package/build/value/create/{from-intersect.d.mts → from_intersect.d.mts} +0 -0
  905. /package/build/value/create/{from-literal.d.mts → from_literal.d.mts} +0 -0
  906. /package/build/value/create/{from-literal.mjs → from_literal.mjs} +0 -0
  907. /package/build/value/create/{from-never.d.mts → from_never.d.mts} +0 -0
  908. /package/build/value/create/{from-never.mjs → from_never.mjs} +0 -0
  909. /package/build/value/create/{from-null.d.mts → from_null.d.mts} +0 -0
  910. /package/build/value/create/{from-null.mjs → from_null.mjs} +0 -0
  911. /package/build/value/create/{from-number.d.mts → from_number.d.mts} +0 -0
  912. /package/build/value/create/{from-number.mjs → from_number.mjs} +0 -0
  913. /package/build/value/create/{from-object.d.mts → from_object.d.mts} +0 -0
  914. /package/build/value/create/{from-record.d.mts → from_record.d.mts} +0 -0
  915. /package/build/value/create/{from-record.mjs → from_record.mjs} +0 -0
  916. /package/build/value/create/{from-ref.d.mts → from_ref.d.mts} +0 -0
  917. /package/build/value/create/{from-string.d.mts → from_string.d.mts} +0 -0
  918. /package/build/value/create/{from-string.mjs → from_string.mjs} +0 -0
  919. /package/build/value/create/{from-symbol.d.mts → from_symbol.d.mts} +0 -0
  920. /package/build/value/create/{from-symbol.mjs → from_symbol.mjs} +0 -0
  921. /package/build/value/create/{from-template-literal.d.mts → from_template_literal.d.mts} +0 -0
  922. /package/build/value/create/{from-tuple.d.mts → from_tuple.d.mts} +0 -0
  923. /package/build/value/create/{from-type.d.mts → from_type.d.mts} +0 -0
  924. /package/build/value/create/{from-undefined.d.mts → from_undefined.d.mts} +0 -0
  925. /package/build/value/create/{from-undefined.mjs → from_undefined.mjs} +0 -0
  926. /package/build/value/create/{from-union.d.mts → from_union.d.mts} +0 -0
  927. /package/build/value/create/{from-void.d.mts → from_void.d.mts} +0 -0
  928. /package/build/value/create/{from-void.mjs → from_void.mjs} +0 -0
  929. /package/build/value/default/{from-array.d.mts → from_array.d.mts} +0 -0
  930. /package/build/value/default/{from-default.d.mts → from_default.d.mts} +0 -0
  931. /package/build/value/default/{from-default.mjs → from_default.mjs} +0 -0
  932. /package/build/value/{repair/from-intersect.d.mts → default/from_intersect.d.mts} +0 -0
  933. /package/build/value/default/{from-object.d.mts → from_object.d.mts} +0 -0
  934. /package/build/value/default/{from-record.d.mts → from_record.d.mts} +0 -0
  935. /package/build/value/default/{from-ref.d.mts → from_ref.d.mts} +0 -0
  936. /package/build/value/default/{from-tuple.d.mts → from_tuple.d.mts} +0 -0
  937. /package/build/value/default/{from-type.d.mts → from_type.d.mts} +0 -0
  938. /package/build/value/default/{from-union.d.mts → from_union.d.mts} +0 -0
  939. /package/build/value/repair/{from-array.d.mts → from_array.d.mts} +0 -0
  940. /package/build/value/repair/{from-enum.d.mts → from_enum.d.mts} +0 -0
  941. /package/build/value/repair/{from-object.d.mts → from_object.d.mts} +0 -0
  942. /package/build/value/repair/{from-record.d.mts → from_record.d.mts} +0 -0
  943. /package/build/value/repair/{from-ref.d.mts → from_ref.d.mts} +0 -0
  944. /package/build/value/repair/{from-template-literal.d.mts → from_template_literal.d.mts} +0 -0
  945. /package/build/value/repair/{from-tuple.d.mts → from_tuple.d.mts} +0 -0
  946. /package/build/value/repair/{from-type.d.mts → from_type.d.mts} +0 -0
  947. /package/build/value/repair/{from-unknown.d.mts → from_unknown.d.mts} +0 -0
  948. /package/build/value/repair/{from-unknown.mjs → from_unknown.mjs} +0 -0
  949. /package/build/value/shared/{optional-undefined.d.mts → optional_undefined.d.mts} +0 -0
  950. /package/build/value/shared/{optional-undefined.mjs → optional_undefined.mjs} +0 -0
  951. /package/build/value/shared/{union-score-select.d.mts → union_score_select.d.mts} +0 -0
  952. /package/build/value/shared/{union-score-select.mjs → union_score_select.mjs} +0 -0
@@ -1,5 +1,5 @@
1
1
  import { Stack } from './_stack.mjs';
2
2
  import { BuildContext, CheckContext, ErrorContext } from './_context.mjs';
3
- export declare function BuildBooleanSchema(_stack: Stack, _context: BuildContext, schema: boolean, _value: string): string;
4
- export declare function CheckBooleanSchema(_stack: Stack, _context: CheckContext, schema: boolean, _value: unknown): boolean;
5
- export declare function ErrorBooleanSchema(stack: Stack, context: ErrorContext, schemaPath: string, instancePath: string, schema: boolean, value: unknown): boolean;
3
+ export declare function BuildSchemaBoolean(_stack: Stack, _context: BuildContext, schema: boolean, _value: string): string;
4
+ export declare function CheckSchemaBoolean(_stack: Stack, _context: CheckContext, schema: boolean, _value: unknown): boolean;
5
+ export declare function ErrorSchemaBoolean(stack: Stack, context: ErrorContext, schemaPath: string, instancePath: string, schema: boolean, value: unknown): boolean;
@@ -3,20 +3,20 @@ import { EmitGuard as E } from '../../guard/index.mjs';
3
3
  // ------------------------------------------------------------------
4
4
  // Build
5
5
  // ------------------------------------------------------------------
6
- export function BuildBooleanSchema(_stack, _context, schema, _value) {
6
+ export function BuildSchemaBoolean(_stack, _context, schema, _value) {
7
7
  return schema ? E.Constant(true) : E.Constant(false);
8
8
  }
9
9
  // ------------------------------------------------------------------
10
10
  // Check
11
11
  // ------------------------------------------------------------------
12
- export function CheckBooleanSchema(_stack, _context, schema, _value) {
12
+ export function CheckSchemaBoolean(_stack, _context, schema, _value) {
13
13
  return schema;
14
14
  }
15
15
  // ------------------------------------------------------------------
16
16
  // Error
17
17
  // ------------------------------------------------------------------
18
- export function ErrorBooleanSchema(stack, context, schemaPath, instancePath, schema, value) {
19
- return CheckBooleanSchema(stack, context, schema, value) || context.AddError({
18
+ export function ErrorSchemaBoolean(stack, context, schemaPath, instancePath, schema, value) {
19
+ return CheckSchemaBoolean(stack, context, schema, value) || context.AddError({
20
20
  keyword: 'boolean',
21
21
  schemaPath,
22
22
  instancePath,
@@ -12,13 +12,24 @@ function IsValid(schema) {
12
12
  // ------------------------------------------------------------------
13
13
  // Build
14
14
  // ------------------------------------------------------------------
15
+ function BuildContainsStandard(stack, context, schema, value) {
16
+ const [item, index] = [Unique(), Unique()];
17
+ const isLength = E.Not(E.IsEqual(E.Member(value, 'length'), E.Constant(0)));
18
+ const isSome = E.SomeAll(value, [item, index], E.And(BuildSchema(stack, context, schema.contains, item), context.AddIndex(index)));
19
+ return E.And(isLength, isSome);
20
+ }
21
+ function BuildContainsFast(stack, context, schema, value) {
22
+ const [item] = [Unique()];
23
+ const isLength = E.Not(E.IsEqual(E.Member(value, 'length'), E.Constant(0)));
24
+ const isSome = E.Some(value, [item, '_'], BuildSchema(stack, context, schema.contains, item));
25
+ return E.And(isLength, isSome);
26
+ }
15
27
  export function BuildContains(stack, context, schema, value) {
16
28
  if (!IsValid(schema))
17
29
  return E.Constant(true);
18
- const item = Unique();
19
- const isLength = E.Not(E.IsEqual(E.Member(value, 'length'), E.Constant(0)));
20
- const isSome = E.Call(E.Member(value, 'some'), [E.ArrowFunction([item], BuildSchema(stack, context, schema.contains, item))]);
21
- return E.And(isLength, isSome);
30
+ return context.UseUnevaluated()
31
+ ? BuildContainsStandard(stack, context, schema, value)
32
+ : BuildContainsFast(stack, context, schema, value);
22
33
  }
23
34
  // ------------------------------------------------------------------
24
35
  // Check
@@ -26,8 +37,9 @@ export function BuildContains(stack, context, schema, value) {
26
37
  export function CheckContains(stack, context, schema, value) {
27
38
  if (!IsValid(schema))
28
39
  return true;
29
- return !G.IsEqual(value.length, 0) &&
30
- value.some((item) => CheckSchema(stack, context, schema.contains, item));
40
+ return !G.IsEqual(value.length, 0) && G.SomeAll(value, (item, index) => {
41
+ return CheckSchema(stack, context, schema.contains, item) && context.AddIndex(index);
42
+ });
31
43
  }
32
44
  // ------------------------------------------------------------------
33
45
  // Error
@@ -0,0 +1,6 @@
1
+ import * as Schema from '../types/index.mjs';
2
+ import { Stack } from './_stack.mjs';
3
+ import { BuildContext, CheckContext, ErrorContext } from './_context.mjs';
4
+ export declare function BuildDynamicRef(stack: Stack, context: BuildContext, schema: Schema.XDynamicRef, value: string): string;
5
+ export declare function CheckDynamicRef(stack: Stack, context: CheckContext, schema: Schema.XDynamicRef, value: unknown): boolean;
6
+ export declare function ErrorDynamicRef(stack: Stack, context: ErrorContext, _schemaPath: string, instancePath: string, schema: Schema.XDynamicRef, value: unknown): boolean;
@@ -0,0 +1,25 @@
1
+ // deno-fmt-ignore-file
2
+ import * as Functions from './_functions.mjs';
3
+ import * as Schema from '../types/index.mjs';
4
+ import { CheckSchema, ErrorSchema } from './schema.mjs';
5
+ // ------------------------------------------------------------------
6
+ // Build
7
+ // ------------------------------------------------------------------
8
+ export function BuildDynamicRef(stack, context, schema, value) {
9
+ const target = stack.DynamicRef(schema) ?? false;
10
+ return Functions.CreateFunction(stack, context, target, value);
11
+ }
12
+ // ------------------------------------------------------------------
13
+ // Check
14
+ // ------------------------------------------------------------------
15
+ export function CheckDynamicRef(stack, context, schema, value) {
16
+ const target = stack.DynamicRef(schema) ?? false;
17
+ return (Schema.IsSchema(target) && CheckSchema(stack, context, target, value));
18
+ }
19
+ // ------------------------------------------------------------------
20
+ // Error
21
+ // ------------------------------------------------------------------
22
+ export function ErrorDynamicRef(stack, context, _schemaPath, instancePath, schema, value) {
23
+ const target = stack.DynamicRef(schema) ?? false;
24
+ return (Schema.IsSchema(target) && ErrorSchema(stack, context, '#', instancePath, target, value));
25
+ }
@@ -16,7 +16,7 @@ export function BuildEnum(_stack, _context, schema, value) {
16
16
  // Check
17
17
  // ------------------------------------------------------------------
18
18
  export function CheckEnum(_stack, _context, schema, value) {
19
- return schema.enum.some(option => G.IsValueLike(option)
19
+ return G.Some(schema.enum, option => G.IsValueLike(option)
20
20
  ? G.IsEqual(value, option)
21
21
  : G.IsDeepEqual(value, option));
22
22
  }
@@ -1,6 +1,5 @@
1
1
  export * from './_context.mjs';
2
2
  export * from './_externals.mjs';
3
- export * from './_guard.mjs';
4
3
  export * from './_functions.mjs';
5
4
  export * from './_reducer.mjs';
6
5
  export * from './_refine.mjs';
@@ -3,7 +3,6 @@
3
3
  // ------------------------------------------------------------------
4
4
  export * from './_context.mjs';
5
5
  export * from './_externals.mjs';
6
- export * from './_guard.mjs';
7
6
  export * from './_functions.mjs';
8
7
  export * from './_reducer.mjs';
9
8
  export * from './_refine.mjs';
@@ -5,15 +5,26 @@ import { BuildSchemaPushStack, CheckSchemaPushStack, ErrorSchemaPushStack } from
5
5
  // ------------------------------------------------------------------
6
6
  // ItemsSized
7
7
  // ------------------------------------------------------------------
8
- function BuildItemsSized(stack, context, schema, value) {
8
+ function BuildItemsSizedStandard(stack, context, schema, value) {
9
9
  return E.ReduceAnd(schema.items.map((schema, index) => {
10
10
  const isLength = E.IsLessEqualThan(E.Member(value, 'length'), E.Constant(index));
11
11
  const isSchema = BuildSchemaPushStack(stack, context, schema, `${value}[${index}]`);
12
12
  const addIndex = context.AddIndex(E.Constant(index));
13
- const guarded = context.UseUnevaluated() ? E.And(isSchema, addIndex) : isSchema;
14
- return E.Or(isLength, guarded);
13
+ return E.Or(isLength, E.And(isSchema, addIndex));
15
14
  }));
16
15
  }
16
+ function BuildItemsSizedFast(stack, context, schema, value) {
17
+ return E.ReduceAnd(schema.items.map((schema, index) => {
18
+ const isLength = E.IsLessEqualThan(E.Member(value, 'length'), E.Constant(index));
19
+ const isSchema = BuildSchemaPushStack(stack, context, schema, `${value}[${index}]`);
20
+ return E.Or(isLength, isSchema);
21
+ }));
22
+ }
23
+ function BuildItemsSized(stack, context, schema, value) {
24
+ return context.UseUnevaluated()
25
+ ? BuildItemsSizedStandard(stack, context, schema, value)
26
+ : BuildItemsSizedFast(stack, context, schema, value);
27
+ }
17
28
  function CheckItemsSized(stack, context, schema, value) {
18
29
  return G.Every(schema.items, 0, (schema, index) => {
19
30
  return G.IsLessEqualThan(value.length, index)
@@ -31,12 +42,21 @@ function ErrorItemsSized(stack, context, schemaPath, instancePath, schema, value
31
42
  // ------------------------------------------------------------------
32
43
  // ItemsUnsized
33
44
  // ------------------------------------------------------------------
34
- function BuildItemsUnsized(stack, context, schema, value) {
45
+ function BuildItemsUnsizedStandard(stack, context, schema, value) {
35
46
  const offset = Schema.IsPrefixItems(schema) ? schema.prefixItems.length : 0;
36
47
  const isSchema = BuildSchemaPushStack(stack, context, schema.items, 'element');
37
48
  const addIndex = context.AddIndex('index');
38
- const guarded = context.UseUnevaluated() ? E.And(isSchema, addIndex) : isSchema;
39
- return E.Every(value, E.Constant(offset), ['element', 'index'], guarded);
49
+ return E.Every(value, E.Constant(offset), ['element', 'index'], E.And(isSchema, addIndex));
50
+ }
51
+ function BuildItemsUnsizedFast(stack, context, schema, value) {
52
+ const offset = Schema.IsPrefixItems(schema) ? schema.prefixItems.length : 0;
53
+ const isSchema = BuildSchemaPushStack(stack, context, schema.items, 'element');
54
+ return E.Every(value, E.Constant(offset), ['element', 'index'], isSchema);
55
+ }
56
+ function BuildItemsUnsized(stack, context, schema, value) {
57
+ return context.UseUnevaluated()
58
+ ? BuildItemsUnsizedStandard(stack, context, schema, value)
59
+ : BuildItemsUnsizedFast(stack, context, schema, value);
40
60
  }
41
61
  function CheckItemsUnsized(stack, context, schema, value) {
42
62
  const offset = Schema.IsPrefixItems(schema) ? schema.prefixItems.length : 0;
@@ -15,8 +15,8 @@ function IsValid(schema) {
15
15
  export function BuildMaxContains(stack, context, schema, value) {
16
16
  if (!IsValid(schema))
17
17
  return E.Constant(true);
18
- const [result, item] = [Unique(), Unique()];
19
- const count = E.Call(E.Member(value, 'reduce'), [E.ArrowFunction([result, item], E.Ternary(BuildSchema(stack, context, schema.contains, item), E.PrefixIncrement(result), result)), E.Constant(0)]);
18
+ const [item] = [Unique()];
19
+ const count = E.Counted(value, [item, '_'], BuildSchema(stack, context, schema.contains, item));
20
20
  return E.IsLessEqualThan(count, E.Constant(schema.maxContains));
21
21
  }
22
22
  // ------------------------------------------------------------------
@@ -25,7 +25,7 @@ export function BuildMaxContains(stack, context, schema, value) {
25
25
  export function CheckMaxContains(stack, context, schema, value) {
26
26
  if (!IsValid(schema))
27
27
  return true;
28
- const count = value.reduce((result, item) => CheckSchema(stack, context, schema.contains, item) ? ++result : result, 0);
28
+ const count = G.Counted(value, (item) => CheckSchema(stack, context, schema.contains, item));
29
29
  return G.IsLessEqualThan(count, schema.maxContains);
30
30
  }
31
31
  // ------------------------------------------------------------------
@@ -12,12 +12,22 @@ function IsValid(schema) {
12
12
  // ------------------------------------------------------------------
13
13
  // Build
14
14
  // ------------------------------------------------------------------
15
+ function BuildMinContainsStandard(stack, context, schema, value) {
16
+ const [item, index] = [Unique(), Unique()];
17
+ const count = E.Counted(value, [item, index], E.And(BuildSchema(stack, context, schema.contains, item), context.AddIndex(index)));
18
+ return E.IsGreaterEqualThan(count, E.Constant(schema.minContains));
19
+ }
20
+ function BuildMinContainsFast(stack, context, schema, value) {
21
+ const [item] = [Unique()];
22
+ const count = E.Counted(value, [item, '_'], BuildSchema(stack, context, schema.contains, item));
23
+ return E.IsGreaterEqualThan(count, E.Constant(schema.minContains));
24
+ }
15
25
  export function BuildMinContains(stack, context, schema, value) {
16
26
  if (!IsValid(schema))
17
27
  return E.Constant(true);
18
- const [result, item] = [Unique(), Unique()];
19
- const count = E.Call(E.Member(value, 'reduce'), [E.ArrowFunction([result, item], E.Ternary(BuildSchema(stack, context, schema.contains, item), E.PrefixIncrement(result), result)), E.Constant(0)]);
20
- return E.IsGreaterEqualThan(count, E.Constant(schema.minContains));
28
+ return context.UseUnevaluated()
29
+ ? BuildMinContainsStandard(stack, context, schema, value)
30
+ : BuildMinContainsFast(stack, context, schema, value);
21
31
  }
22
32
  // ------------------------------------------------------------------
23
33
  // Check
@@ -25,7 +35,7 @@ export function BuildMinContains(stack, context, schema, value) {
25
35
  export function CheckMinContains(stack, context, schema, value) {
26
36
  if (!IsValid(schema))
27
37
  return true;
28
- const count = value.reduce((result, item) => CheckSchema(stack, context, schema.contains, item) ? ++result : result, 0);
38
+ const count = G.Counted(value, (item, index) => CheckSchema(stack, context, schema.contains, item) && context.AddIndex(index));
29
39
  return G.IsGreaterEqualThan(count, schema.minContains);
30
40
  }
31
41
  // ------------------------------------------------------------------
@@ -6,14 +6,16 @@ import { BuildSchema, CheckSchema } from './schema.mjs';
6
6
  // ------------------------------------------------------------------
7
7
  // Build
8
8
  // ------------------------------------------------------------------
9
- function BuildNotUnevaluated(stack, context, schema, value) {
9
+ function BuildNotStandard(stack, context, schema, value) {
10
10
  return Reducer(stack, context, [schema.not], value, E.Not(E.IsEqual(E.Member('results', 'length'), E.Constant(1))));
11
11
  }
12
12
  function BuildNotFast(stack, context, schema, value) {
13
13
  return E.Not(BuildSchema(stack, context, schema.not, value));
14
14
  }
15
15
  export function BuildNot(stack, context, schema, value) {
16
- return context.UseUnevaluated() ? BuildNotUnevaluated(stack, context, schema, value) : BuildNotFast(stack, context, schema, value);
16
+ return context.UseUnevaluated()
17
+ ? BuildNotStandard(stack, context, schema, value)
18
+ : BuildNotFast(stack, context, schema, value);
17
19
  }
18
20
  // ------------------------------------------------------------------
19
21
  // Check
@@ -3,22 +3,23 @@ import { CheckContext, AccumulatedErrorContext } from './_context.mjs';
3
3
  import { Reducer } from './_reducer.mjs';
4
4
  import { EmitGuard as E, Guard as G } from '../../guard/index.mjs';
5
5
  import { BuildSchema, CheckSchema, ErrorSchema } from './schema.mjs';
6
+ import { Unique } from './_unique.mjs';
6
7
  // ------------------------------------------------------------------
7
8
  // Build
8
9
  // ------------------------------------------------------------------
9
- function BuildOneOfUnevaluated(stack, context, schema, value) {
10
+ function BuildOneOfStandard(stack, context, schema, value) {
10
11
  return Reducer(stack, context, schema.oneOf, value, E.IsEqual(E.Member('results', 'length'), E.Constant(1)));
11
12
  }
12
13
  function BuildOneOfFast(stack, context, schema, value) {
14
+ const [result] = [Unique()];
13
15
  const results = E.ArrayLiteral(schema.oneOf.map((schema) => BuildSchema(stack, context, schema, value)));
14
- const count = E.Call(E.Member(results, 'reduce'), [
15
- E.ArrowFunction(['count', 'result'], E.Ternary(E.IsEqual('result', E.Constant(true)), E.PrefixIncrement('count'), 'count')),
16
- E.Constant(0),
17
- ]);
16
+ const count = E.Counted(results, [result, '_'], E.IsEqual(result, E.Constant(true)));
18
17
  return E.IsEqual(count, E.Constant(1));
19
18
  }
20
19
  export function BuildOneOf(stack, context, schema, value) {
21
- return context.UseUnevaluated() ? BuildOneOfUnevaluated(stack, context, schema, value) : BuildOneOfFast(stack, context, schema, value);
20
+ return context.UseUnevaluated()
21
+ ? BuildOneOfStandard(stack, context, schema, value)
22
+ : BuildOneOfFast(stack, context, schema, value);
22
23
  }
23
24
  // ------------------------------------------------------------------
24
25
  // Check
@@ -6,20 +6,20 @@ import { CheckSchema, ErrorSchema } from './schema.mjs';
6
6
  // Build
7
7
  // ------------------------------------------------------------------
8
8
  export function BuildRecursiveRef(stack, context, schema, value) {
9
- const target = stack.RecursiveRef(schema.$recursiveRef) ?? false;
9
+ const target = stack.RecursiveRef(schema) ?? false;
10
10
  return Functions.CreateFunction(stack, context, target, value);
11
11
  }
12
12
  // ------------------------------------------------------------------
13
13
  // Check
14
14
  // ------------------------------------------------------------------
15
15
  export function CheckRecursiveRef(stack, context, schema, value) {
16
- const target = stack.RecursiveRef(schema.$recursiveRef) ?? false;
16
+ const target = stack.RecursiveRef(schema) ?? false;
17
17
  return (Schema.IsSchema(target) && CheckSchema(stack, context, target, value));
18
18
  }
19
19
  // ------------------------------------------------------------------
20
20
  // Error
21
21
  // ------------------------------------------------------------------
22
22
  export function ErrorRecursiveRef(stack, context, _schemaPath, instancePath, schema, value) {
23
- const target = stack.RecursiveRef(schema.$recursiveRef) ?? false;
23
+ const target = stack.RecursiveRef(schema) ?? false;
24
24
  return (Schema.IsSchema(target) && ErrorSchema(stack, context, '#', instancePath, target, value));
25
25
  }
@@ -5,7 +5,7 @@ import { CheckContext, AccumulatedErrorContext } from './_context.mjs';
5
5
  import { EmitGuard as E } from '../../guard/index.mjs';
6
6
  import { CheckSchema, ErrorSchema } from './schema.mjs';
7
7
  // ------------------------------------------------------------------
8
- // BuildRefStandard
8
+ // BuildRef
9
9
  // ------------------------------------------------------------------
10
10
  function BuildRefStandard(stack, context, target, value) {
11
11
  const interior = E.ArrowFunction(['context', 'value'], Functions.CreateFunction(stack, context, target, 'value'));
@@ -17,17 +17,11 @@ function BuildRefStandard(stack, context, target, value) {
17
17
  ]));
18
18
  return E.Call(exterior, ['context', value]);
19
19
  }
20
- // ------------------------------------------------------------------
21
- // BuildRefStandard
22
- // ------------------------------------------------------------------
23
20
  function BuildRefFast(stack, context, target, value) {
24
21
  return Functions.CreateFunction(stack, context, target, value);
25
22
  }
26
- // ------------------------------------------------------------------
27
- // BuildRef
28
- // ------------------------------------------------------------------
29
23
  export function BuildRef(stack, context, schema, value) {
30
- const target = stack.Ref(schema.$ref) ?? false;
24
+ const target = stack.Ref(schema) ?? false;
31
25
  return context.UseUnevaluated()
32
26
  ? BuildRefStandard(stack, context, target, value)
33
27
  : BuildRefFast(stack, context, target, value);
@@ -36,7 +30,7 @@ export function BuildRef(stack, context, schema, value) {
36
30
  // Check
37
31
  // ------------------------------------------------------------------
38
32
  export function CheckRef(stack, context, schema, value) {
39
- const target = stack.Ref(schema.$ref) ?? false;
33
+ const target = stack.Ref(schema) ?? false;
40
34
  const nextContext = new CheckContext();
41
35
  const result = (Schema.IsSchema(target) && CheckSchema(stack, nextContext, target, value));
42
36
  if (result)
@@ -47,7 +41,7 @@ export function CheckRef(stack, context, schema, value) {
47
41
  // Error
48
42
  // ------------------------------------------------------------------
49
43
  export function ErrorRef(stack, context, _schemaPath, instancePath, schema, value) {
50
- const target = stack.Ref(schema.$ref) ?? false;
44
+ const target = stack.Ref(schema) ?? false;
51
45
  const nextContext = new AccumulatedErrorContext();
52
46
  const result = (Schema.IsSchema(target) && ErrorSchema(stack, nextContext, '#', instancePath, target, value));
53
47
  if (result)
@@ -1,18 +1,18 @@
1
1
  // deno-fmt-ignore-file
2
2
  import * as Schema from '../types/index.mjs';
3
3
  import { BuildRefine, CheckRefine, ErrorRefine } from './_refine.mjs';
4
- import { BuildGuard, CheckGuard, ErrorGuard } from './_guard.mjs';
5
4
  import { EmitGuard as E, Guard as G } from '../../guard/index.mjs';
6
5
  import { BuildAdditionalItems, CheckAdditionalItems, ErrorAdditionalItems } from './additionalItems.mjs';
7
6
  import { BuildAdditionalProperties, CheckAdditionalProperties, ErrorAdditionalProperties } from './additionalProperties.mjs';
8
7
  import { BuildAllOf, CheckAllOf, ErrorAllOf } from './allOf.mjs';
9
8
  import { BuildAnyOf, CheckAnyOf, ErrorAnyOf } from './anyOf.mjs';
10
- import { BuildBooleanSchema, CheckBooleanSchema, ErrorBooleanSchema } from './boolean.mjs';
9
+ import { BuildSchemaBoolean, CheckSchemaBoolean, ErrorSchemaBoolean } from './boolean.mjs';
11
10
  import { BuildConst, CheckConst, ErrorConst } from './const.mjs';
12
11
  import { BuildContains, CheckContains, ErrorContains } from './contains.mjs';
13
12
  import { BuildDependencies, CheckDependencies, ErrorDependencies } from './dependencies.mjs';
14
13
  import { BuildDependentRequired, CheckDependentRequired, ErrorDependentRequired } from './dependentRequired.mjs';
15
14
  import { BuildDependentSchemas, CheckDependentSchemas, ErrorDependentSchemas } from './dependentSchemas.mjs';
15
+ import { BuildDynamicRef, CheckDynamicRef, ErrorDynamicRef } from './dynamicRef.mjs';
16
16
  import { BuildEnum, CheckEnum, ErrorEnum } from './enum.mjs';
17
17
  import { BuildExclusiveMaximum, CheckExclusiveMaximum, ErrorExclusiveMaximum } from './exclusiveMaximum.mjs';
18
18
  import { BuildExclusiveMinimum, CheckExclusiveMinimum, ErrorExclusiveMinimum } from './exclusiveMinimum.mjs';
@@ -49,7 +49,7 @@ import { BuildUniqueItems, CheckUniqueItems, ErrorUniqueItems } from './uniqueIt
49
49
  // ----------------------------------------------------------------
50
50
  function HasTypeName(schema, typename) {
51
51
  return Schema.IsType(schema) &&
52
- (G.IsArray(schema.type) && schema.type.includes(typename) ||
52
+ (G.IsArray(schema.type) && G.IsGreaterThan(schema.type.length, 0) && G.Every(schema.type, 0, type => G.IsEqual(type, typename)) ||
53
53
  G.IsEqual(schema.type, typename));
54
54
  }
55
55
  // ----------------------------------------------------------------
@@ -125,8 +125,8 @@ export function BuildSchemaPushStack(stack, context, schema, value) {
125
125
  export function BuildSchema(stack, context, schema, value) {
126
126
  stack.Push(schema);
127
127
  const conditions = [];
128
- if (Schema.IsBooleanSchema(schema))
129
- return BuildBooleanSchema(stack, context, schema, value);
128
+ if (Schema.IsSchemaBoolean(schema))
129
+ return BuildSchemaBoolean(stack, context, schema, value);
130
130
  if (Schema.IsType(schema))
131
131
  conditions.push(BuildType(stack, context, schema, value));
132
132
  if (HasObjectKeywords(schema)) {
@@ -209,12 +209,12 @@ export function BuildSchema(stack, context, schema, value) {
209
209
  const guarded = E.Or(E.Not(E.Or(E.IsNumber(value), E.IsBigInt(value))), reduced);
210
210
  conditions.push(HasNumberType(schema) ? reduced : guarded);
211
211
  }
212
- if (Schema.IsRecursiveRef(schema))
213
- conditions.push(BuildRecursiveRef(stack, context, schema, value));
214
212
  if (Schema.IsRef(schema))
215
213
  conditions.push(BuildRef(stack, context, schema, value));
216
- if (Schema.IsGuard(schema))
217
- conditions.push(BuildGuard(stack, context, schema, value));
214
+ if (Schema.IsRecursiveRef(schema))
215
+ conditions.push(BuildRecursiveRef(stack, context, schema, value));
216
+ if (Schema.IsDynamicRef(schema))
217
+ conditions.push(BuildDynamicRef(stack, context, schema, value));
218
218
  if (Schema.IsConst(schema))
219
219
  conditions.push(BuildConst(stack, context, schema, value));
220
220
  if (Schema.IsEnum(schema))
@@ -247,7 +247,7 @@ export function CheckSchemaPushStack(stack, context, schema, value) {
247
247
  }
248
248
  export function CheckSchema(stack, context, schema, value) {
249
249
  stack.Push(schema);
250
- const result = Schema.IsBooleanSchema(schema) ? CheckBooleanSchema(stack, context, schema, value) : ((!Schema.IsType(schema) || CheckType(stack, context, schema, value)) &&
250
+ const result = Schema.IsSchemaBoolean(schema) ? CheckSchemaBoolean(stack, context, schema, value) : ((!Schema.IsType(schema) || CheckType(stack, context, schema, value)) &&
251
251
  (!(G.IsObject(value) && !G.IsArray(value)) || ((!Schema.IsRequired(schema) || CheckRequired(stack, context, schema, value)) &&
252
252
  (!Schema.IsAdditionalProperties(schema) || CheckAdditionalProperties(stack, context, schema, value)) &&
253
253
  (!Schema.IsDependencies(schema) || CheckDependencies(stack, context, schema, value)) &&
@@ -276,9 +276,9 @@ export function CheckSchema(stack, context, schema, value) {
276
276
  (!Schema.IsMaximum(schema) || CheckMaximum(stack, context, schema, value)) &&
277
277
  (!Schema.IsMinimum(schema) || CheckMinimum(stack, context, schema, value)) &&
278
278
  (!Schema.IsMultipleOf(schema) || CheckMultipleOf(stack, context, schema, value)))) &&
279
- (!Schema.IsRecursiveRef(schema) || CheckRecursiveRef(stack, context, schema, value)) &&
280
279
  (!Schema.IsRef(schema) || CheckRef(stack, context, schema, value)) &&
281
- (!Schema.IsGuard(schema) || CheckGuard(stack, context, schema, value)) &&
280
+ (!Schema.IsRecursiveRef(schema) || CheckRecursiveRef(stack, context, schema, value)) &&
281
+ (!Schema.IsDynamicRef(schema) || CheckDynamicRef(stack, context, schema, value)) &&
282
282
  (!Schema.IsConst(schema) || CheckConst(stack, context, schema, value)) &&
283
283
  (!Schema.IsEnum(schema) || CheckEnum(stack, context, schema, value)) &&
284
284
  (!Schema.IsIf(schema) || CheckIf(stack, context, schema, value)) &&
@@ -300,7 +300,7 @@ export function ErrorSchemaPushStack(stack, context, schemaPath, instancePath, s
300
300
  }
301
301
  export function ErrorSchema(stack, context, schemaPath, instancePath, schema, value) {
302
302
  stack.Push(schema);
303
- const result = (Schema.IsBooleanSchema(schema)) ? ErrorBooleanSchema(stack, context, schemaPath, instancePath, schema, value) : (!!(+(!Schema.IsType(schema) || ErrorType(stack, context, schemaPath, instancePath, schema, value)) &
303
+ const result = (Schema.IsSchemaBoolean(schema)) ? ErrorSchemaBoolean(stack, context, schemaPath, instancePath, schema, value) : (!!(+(!Schema.IsType(schema) || ErrorType(stack, context, schemaPath, instancePath, schema, value)) &
304
304
  +(!(G.IsObject(value) && !G.IsArray(value)) || !!(+(!Schema.IsRequired(schema) || ErrorRequired(stack, context, schemaPath, instancePath, schema, value)) &
305
305
  +(!Schema.IsAdditionalProperties(schema) || ErrorAdditionalProperties(stack, context, schemaPath, instancePath, schema, value)) &
306
306
  +(!Schema.IsDependencies(schema) || ErrorDependencies(stack, context, schemaPath, instancePath, schema, value)) &
@@ -329,9 +329,9 @@ export function ErrorSchema(stack, context, schemaPath, instancePath, schema, va
329
329
  +(!Schema.IsMaximum(schema) || ErrorMaximum(stack, context, schemaPath, instancePath, schema, value)) &
330
330
  +(!Schema.IsMinimum(schema) || ErrorMinimum(stack, context, schemaPath, instancePath, schema, value)) &
331
331
  +(!Schema.IsMultipleOf(schema) || ErrorMultipleOf(stack, context, schemaPath, instancePath, schema, value)))) &
332
- +(!Schema.IsRecursiveRef(schema) || ErrorRecursiveRef(stack, context, schemaPath, instancePath, schema, value)) &
333
332
  +(!Schema.IsRef(schema) || ErrorRef(stack, context, schemaPath, instancePath, schema, value)) &
334
- +(!Schema.IsGuard(schema) || ErrorGuard(stack, context, schemaPath, instancePath, schema, value)) &
333
+ +(!Schema.IsRecursiveRef(schema) || ErrorRecursiveRef(stack, context, schemaPath, instancePath, schema, value)) &
334
+ +(!Schema.IsDynamicRef(schema) || ErrorDynamicRef(stack, context, schemaPath, instancePath, schema, value)) &
335
335
  +(!Schema.IsConst(schema) || ErrorConst(stack, context, schemaPath, instancePath, schema, value)) &
336
336
  +(!Schema.IsEnum(schema) || ErrorEnum(stack, context, schemaPath, instancePath, schema, value)) &
337
337
  +(!Schema.IsIf(schema) || ErrorIf(stack, context, schemaPath, instancePath, schema, value)) &
@@ -14,15 +14,13 @@ function BuildTypeName(_stack, _context, type, value) {
14
14
  G.IsEqual(type, 'null') ? E.IsNull(value) :
15
15
  G.IsEqual(type, 'string') ? E.IsString(value) :
16
16
  // xschema
17
- G.IsEqual(type, 'asyncIterator') ? E.IsAsyncIterator(value) :
18
- G.IsEqual(type, 'bigint') ? E.IsBigInt(value) :
19
- G.IsEqual(type, 'constructor') ? E.IsConstructor(value) :
20
- G.IsEqual(type, 'function') ? E.IsFunction(value) :
21
- G.IsEqual(type, 'iterator') ? E.IsIterator(value) :
22
- G.IsEqual(type, 'symbol') ? E.IsSymbol(value) :
23
- G.IsEqual(type, 'undefined') ? E.IsUndefined(value) :
24
- G.IsEqual(type, 'void') ? E.IsUndefined(value) :
25
- E.Constant(true));
17
+ G.IsEqual(type, 'bigint') ? E.IsBigInt(value) :
18
+ G.IsEqual(type, 'constructor') ? E.IsConstructor(value) :
19
+ G.IsEqual(type, 'function') ? E.IsFunction(value) :
20
+ G.IsEqual(type, 'symbol') ? E.IsSymbol(value) :
21
+ G.IsEqual(type, 'undefined') ? E.IsUndefined(value) :
22
+ G.IsEqual(type, 'void') ? E.IsUndefined(value) :
23
+ E.Constant(true));
26
24
  }
27
25
  function CheckTypeName(_stack, _context, type, _schema, value) {
28
26
  return (
@@ -35,15 +33,13 @@ function CheckTypeName(_stack, _context, type, _schema, value) {
35
33
  G.IsEqual(type, 'null') ? G.IsNull(value) :
36
34
  G.IsEqual(type, 'string') ? G.IsString(value) :
37
35
  // xschema
38
- G.IsEqual(type, 'asyncIterator') ? G.IsAsyncIterator(value) :
39
- G.IsEqual(type, 'bigint') ? G.IsBigInt(value) :
40
- G.IsEqual(type, 'constructor') ? G.IsConstructor(value) :
41
- G.IsEqual(type, 'function') ? G.IsFunction(value) :
42
- G.IsEqual(type, 'iterator') ? G.IsIterator(value) :
43
- G.IsEqual(type, 'symbol') ? G.IsSymbol(value) :
44
- G.IsEqual(type, 'undefined') ? G.IsUndefined(value) :
45
- G.IsEqual(type, 'void') ? G.IsUndefined(value) :
46
- true);
36
+ G.IsEqual(type, 'bigint') ? G.IsBigInt(value) :
37
+ G.IsEqual(type, 'constructor') ? G.IsConstructor(value) :
38
+ G.IsEqual(type, 'function') ? G.IsFunction(value) :
39
+ G.IsEqual(type, 'symbol') ? G.IsSymbol(value) :
40
+ G.IsEqual(type, 'undefined') ? G.IsUndefined(value) :
41
+ G.IsEqual(type, 'void') ? G.IsUndefined(value) :
42
+ true);
47
43
  }
48
44
  // ------------------------------------------------------------------
49
45
  // TypeNames
@@ -52,7 +48,7 @@ function BuildTypeNames(stack, context, typenames, value) {
52
48
  return E.ReduceOr(typenames.map(type => BuildTypeName(stack, context, type, value)));
53
49
  }
54
50
  function CheckTypeNames(stack, context, types, schema, value) {
55
- return types.some(type => CheckTypeName(stack, context, type, schema, value));
51
+ return G.Some(types, type => CheckTypeName(stack, context, type, schema, value));
56
52
  }
57
53
  // ------------------------------------------------------------------
58
54
  // Type
@@ -1,6 +1,6 @@
1
1
  import { type TLocalizedValidationError } from '../error/index.mjs';
2
+ import { type Static } from '../type/types/static.mjs';
2
3
  import * as Schema from './types/index.mjs';
3
- import * as Static from './static/index.mjs';
4
4
  export declare class ParseError {
5
5
  schema: Schema.XSchema;
6
6
  value: unknown;
@@ -8,6 +8,6 @@ export declare class ParseError {
8
8
  constructor(schema: Schema.XSchema, value: unknown, errors: TLocalizedValidationError[]);
9
9
  }
10
10
  /** Parses a value against the provided schema */
11
- export declare function Parse<const Schema extends Schema.XSchema>(schema: Schema, value: unknown): Static.XStatic<Schema>;
11
+ export declare function Parse<const Schema extends Schema.XSchema>(schema: Schema, value: unknown): Static<Schema>;
12
12
  /** Parses a value against the provided schema */
13
- export declare function Parse<const Schema extends Schema.XSchema>(context: Record<PropertyKey, Schema.XSchema>, schema: Schema, value: unknown): Static.XStatic<Schema>;
13
+ export declare function Parse<const Schema extends Schema.XSchema>(context: Record<PropertyKey, Schema.XSchema>, schema: Schema, value: unknown): Static<Schema>;
@@ -1,2 +1,2 @@
1
- export * from './pointer-get.mjs';
1
+ export * from './pointer_get.mjs';
2
2
  export * as Pointer from './pointer.mjs';
@@ -1,2 +1,2 @@
1
- export * from './pointer-get.mjs';
1
+ export * from './pointer_get.mjs';
2
2
  export * as Pointer from './pointer.mjs';
@@ -11,6 +11,14 @@ function AssertCanSet(value) {
11
11
  if (!Guard.IsObject(value))
12
12
  throw Error('Cannot set value');
13
13
  }
14
+ function AssertIndex(index) {
15
+ if (Guard.IsUnsafePropertyKey(index))
16
+ throw Error('Pointer contains unsafe property key');
17
+ }
18
+ function AssertIndices(indices) {
19
+ for (const index of indices)
20
+ AssertIndex(index);
21
+ }
14
22
  // ------------------------------------------------------------------
15
23
  // Indices
16
24
  // ------------------------------------------------------------------
@@ -27,7 +35,7 @@ function HasIndex(index, value) {
27
35
  return Guard.IsObject(value) && Guard.HasPropertyKey(value, index);
28
36
  }
29
37
  function GetIndex(index, value) {
30
- return Guard.IsObject(value) ? value[index] : undefined;
38
+ return Guard.IsObject(value) && !Guard.IsUnsafePropertyKey(index) ? value[index] : undefined;
31
39
  }
32
40
  function GetIndices(indices, value) {
33
41
  return indices.reduce((value, index) => GetIndex(index, value), value);
@@ -70,6 +78,7 @@ export function Get(value, pointer) {
70
78
  export function Set(value, pointer, next) {
71
79
  const indices = Indices(pointer);
72
80
  AssertNotRoot(indices);
81
+ AssertIndices(indices);
73
82
  const [head, index] = TakeIndexRight(indices);
74
83
  const parent = GetIndices(head, value);
75
84
  AssertCanSet(parent);
@@ -83,6 +92,7 @@ export function Set(value, pointer, next) {
83
92
  export function Delete(value, pointer) {
84
93
  const indices = Indices(pointer);
85
94
  AssertNotRoot(indices);
95
+ AssertIndices(indices);
86
96
  const [head, index] = TakeIndexRight(indices);
87
97
  const parent = GetIndices(head, value);
88
98
  AssertCanSet(parent);
@@ -1,2 +1,3 @@
1
1
  import * as Schema from '../types/index.mjs';
2
2
  export declare function Ref(schema: Schema.XSchemaObject, ref: string): Schema.XSchema | undefined;
3
+ export declare function DynamicRef(root: Schema.XSchemaObject, base: Schema.XSchemaObject, dynamicRef: Schema.XDynamicRef, dynamicAnchors: Schema.XDynamicAnchor[]): Schema.XSchema | undefined;