@sinclair/typebox 0.32.0-dev-17 → 0.32.0-dev-19

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 (469) hide show
  1. package/build/import/compiler/compiler.mjs +14 -35
  2. package/build/import/compiler/index.mjs +0 -27
  3. package/build/import/errors/errors.mjs +15 -38
  4. package/build/import/errors/function.mjs +0 -27
  5. package/build/import/errors/index.mjs +0 -27
  6. package/build/import/index.mjs +0 -27
  7. package/build/import/system/index.mjs +0 -27
  8. package/build/import/system/policy.mjs +0 -27
  9. package/build/import/system/system.mjs +0 -27
  10. package/build/import/type/any/any.mjs +0 -27
  11. package/build/import/type/any/index.mjs +0 -27
  12. package/build/import/type/array/array.mjs +0 -27
  13. package/build/import/type/array/index.mjs +0 -27
  14. package/build/import/type/async-iterator/async-iterator.mjs +0 -27
  15. package/build/import/type/async-iterator/index.mjs +0 -27
  16. package/build/import/type/awaited/awaited.d.mts +6 -6
  17. package/build/import/type/awaited/awaited.mjs +14 -41
  18. package/build/import/type/awaited/index.mjs +0 -27
  19. package/build/import/type/bigint/bigint.mjs +0 -27
  20. package/build/import/type/bigint/index.mjs +0 -27
  21. package/build/import/type/boolean/boolean.mjs +0 -27
  22. package/build/import/type/boolean/index.mjs +0 -27
  23. package/build/import/type/clone/index.mjs +0 -27
  24. package/build/import/type/clone/type.mjs +0 -27
  25. package/build/import/type/clone/value.mjs +0 -27
  26. package/build/import/type/composite/composite.mjs +0 -27
  27. package/build/import/type/composite/index.mjs +0 -27
  28. package/build/import/type/const/const.mjs +0 -27
  29. package/build/import/type/const/index.mjs +0 -27
  30. package/build/import/type/constructor/constructor.mjs +0 -27
  31. package/build/import/type/constructor/index.mjs +0 -27
  32. package/build/import/type/constructor-parameters/constructor-parameters.mjs +0 -27
  33. package/build/import/type/constructor-parameters/index.mjs +0 -27
  34. package/build/import/type/date/date.mjs +0 -27
  35. package/build/import/type/date/index.mjs +0 -27
  36. package/build/import/type/deref/deref.mjs +12 -39
  37. package/build/import/type/deref/index.mjs +0 -27
  38. package/build/import/type/discard/discard.mjs +0 -27
  39. package/build/import/type/discard/index.mjs +0 -27
  40. package/build/import/type/enum/enum.mjs +0 -27
  41. package/build/import/type/enum/index.mjs +0 -27
  42. package/build/import/type/exclude/exclude-from-mapped-result.mjs +0 -27
  43. package/build/import/type/exclude/exclude.mjs +8 -32
  44. package/build/import/type/exclude/index.mjs +0 -27
  45. package/build/import/type/extends/extends-check.mjs +167 -194
  46. package/build/import/type/extends/extends-from-mapped-key.mjs +0 -27
  47. package/build/import/type/extends/extends-from-mapped-result.mjs +0 -27
  48. package/build/import/type/extends/extends-undefined.mjs +0 -27
  49. package/build/import/type/extends/extends.mjs +3 -30
  50. package/build/import/type/extends/index.mjs +0 -27
  51. package/build/import/type/extract/extract-from-mapped-result.mjs +0 -27
  52. package/build/import/type/extract/extract.mjs +5 -32
  53. package/build/import/type/extract/index.mjs +0 -27
  54. package/build/import/type/function/function.mjs +0 -27
  55. package/build/import/type/function/index.mjs +0 -27
  56. package/build/import/type/guard/index.mjs +0 -27
  57. package/build/import/type/guard/type.d.mts +50 -50
  58. package/build/import/type/guard/type.mjs +136 -163
  59. package/build/import/type/guard/value.mjs +0 -27
  60. package/build/import/type/helpers/helpers.mjs +0 -27
  61. package/build/import/type/helpers/index.mjs +0 -27
  62. package/build/import/type/index.mjs +0 -27
  63. package/build/import/type/indexed/index.d.mts +0 -1
  64. package/build/import/type/indexed/index.mjs +0 -28
  65. package/build/import/type/indexed/indexed-from-mapped-key.d.mts +2 -2
  66. package/build/import/type/indexed/indexed-from-mapped-key.mjs +2 -29
  67. package/build/import/type/indexed/indexed-property-keys.mjs +7 -34
  68. package/build/import/type/indexed/indexed.d.mts +38 -5
  69. package/build/import/type/indexed/indexed.mjs +78 -32
  70. package/build/import/type/instance-type/index.mjs +0 -27
  71. package/build/import/type/instance-type/instance-type.mjs +0 -27
  72. package/build/import/type/integer/index.mjs +0 -27
  73. package/build/import/type/integer/integer.mjs +0 -27
  74. package/build/import/type/intersect/index.mjs +0 -27
  75. package/build/import/type/intersect/intersect-create.mjs +4 -31
  76. package/build/import/type/intersect/intersect-evaluated.mjs +1 -28
  77. package/build/import/type/intersect/intersect-type.mjs +0 -27
  78. package/build/import/type/intersect/intersect.mjs +2 -29
  79. package/build/import/type/intrinsic/capitalize.mjs +0 -27
  80. package/build/import/type/intrinsic/index.mjs +0 -27
  81. package/build/import/type/intrinsic/intrinsic-from-mapped-key.mjs +0 -27
  82. package/build/import/type/intrinsic/intrinsic.mjs +5 -32
  83. package/build/import/type/intrinsic/lowercase.mjs +0 -27
  84. package/build/import/type/intrinsic/uncapitalize.mjs +0 -27
  85. package/build/import/type/intrinsic/uppercase.mjs +0 -27
  86. package/build/import/type/iterator/index.mjs +0 -27
  87. package/build/import/type/iterator/iterator.mjs +0 -27
  88. package/build/import/type/keyof/index.mjs +0 -27
  89. package/build/import/type/keyof/keyof-from-mapped-result.mjs +0 -27
  90. package/build/import/type/keyof/keyof-property-keys.mjs +7 -34
  91. package/build/import/type/keyof/keyof.mjs +2 -29
  92. package/build/import/type/literal/index.mjs +0 -27
  93. package/build/import/type/literal/literal.mjs +0 -27
  94. package/build/import/type/mapped/index.mjs +0 -27
  95. package/build/import/type/mapped/mapped-key.mjs +0 -27
  96. package/build/import/type/mapped/mapped-result.mjs +0 -27
  97. package/build/import/type/mapped/mapped.mjs +16 -43
  98. package/build/import/type/modifiers/index.mjs +0 -27
  99. package/build/import/type/modifiers/modifiers.mjs +3 -30
  100. package/build/import/type/never/index.mjs +0 -27
  101. package/build/import/type/never/never.mjs +0 -27
  102. package/build/import/type/not/index.mjs +0 -27
  103. package/build/import/type/not/not.mjs +0 -27
  104. package/build/import/type/null/index.mjs +0 -27
  105. package/build/import/type/null/null.mjs +0 -27
  106. package/build/import/type/number/index.mjs +0 -27
  107. package/build/import/type/number/number.mjs +0 -27
  108. package/build/import/type/object/index.mjs +0 -27
  109. package/build/import/type/object/object.mjs +3 -30
  110. package/build/import/type/omit/index.mjs +0 -27
  111. package/build/import/type/omit/omit-from-mapped-key.mjs +0 -27
  112. package/build/import/type/omit/omit.mjs +6 -33
  113. package/build/import/type/operators/index.mjs +0 -27
  114. package/build/import/type/operators/operators.mjs +0 -27
  115. package/build/import/type/optional/index.mjs +0 -27
  116. package/build/import/type/optional/optional.mjs +0 -27
  117. package/build/import/type/parameters/index.mjs +0 -27
  118. package/build/import/type/parameters/parameters.mjs +0 -27
  119. package/build/import/type/partial/index.mjs +0 -27
  120. package/build/import/type/partial/partial-from-mapped-result.mjs +0 -27
  121. package/build/import/type/partial/partial.mjs +5 -32
  122. package/build/import/type/patterns/index.mjs +0 -27
  123. package/build/import/type/patterns/patterns.mjs +0 -27
  124. package/build/import/type/pick/index.mjs +0 -27
  125. package/build/import/type/pick/pick-from-mapped-key.mjs +0 -27
  126. package/build/import/type/pick/pick.mjs +6 -33
  127. package/build/import/type/promise/index.mjs +0 -27
  128. package/build/import/type/promise/promise.mjs +0 -27
  129. package/build/import/type/readonly/index.mjs +0 -27
  130. package/build/import/type/readonly/readonly.mjs +0 -27
  131. package/build/import/type/readonly-optional/index.mjs +0 -27
  132. package/build/import/type/readonly-optional/readonly-optional.mjs +0 -27
  133. package/build/import/type/record/index.mjs +0 -27
  134. package/build/import/type/record/record.d.mts +10 -9
  135. package/build/import/type/record/record.mjs +37 -60
  136. package/build/import/type/recursive/index.mjs +0 -27
  137. package/build/import/type/recursive/recursive.mjs +0 -27
  138. package/build/import/type/ref/index.mjs +0 -27
  139. package/build/import/type/ref/ref.mjs +0 -27
  140. package/build/import/type/regexp/index.mjs +0 -27
  141. package/build/import/type/regexp/regexp.mjs +0 -27
  142. package/build/import/type/registry/format.mjs +0 -27
  143. package/build/import/type/registry/index.mjs +0 -27
  144. package/build/import/type/registry/type.mjs +0 -27
  145. package/build/import/type/required/index.mjs +0 -27
  146. package/build/import/type/required/required-from-mapped-result.mjs +0 -27
  147. package/build/import/type/required/required.mjs +5 -32
  148. package/build/import/type/rest/index.mjs +0 -27
  149. package/build/import/type/rest/rest.mjs +6 -29
  150. package/build/import/type/return-type/index.mjs +0 -27
  151. package/build/import/type/return-type/return-type.mjs +0 -27
  152. package/build/import/type/schema/anyschema.mjs +0 -27
  153. package/build/import/type/schema/index.mjs +0 -27
  154. package/build/import/type/schema/schema.mjs +0 -27
  155. package/build/import/type/static/index.mjs +0 -27
  156. package/build/import/type/static/static.mjs +0 -27
  157. package/build/import/type/strict/index.mjs +0 -27
  158. package/build/import/type/strict/strict.mjs +0 -27
  159. package/build/import/type/string/index.mjs +0 -27
  160. package/build/import/type/string/string.mjs +0 -27
  161. package/build/import/type/symbol/index.mjs +0 -27
  162. package/build/import/type/symbol/symbol.mjs +0 -27
  163. package/build/import/type/symbols/index.mjs +0 -27
  164. package/build/import/type/symbols/symbols.mjs +0 -27
  165. package/build/import/type/template-literal/finite.mjs +0 -27
  166. package/build/import/type/template-literal/generate.mjs +0 -27
  167. package/build/import/type/template-literal/index.mjs +0 -27
  168. package/build/import/type/template-literal/parser.mjs +0 -27
  169. package/build/import/type/template-literal/pattern.mjs +9 -36
  170. package/build/import/type/template-literal/syntax.mjs +0 -27
  171. package/build/import/type/template-literal/template-literal.mjs +0 -27
  172. package/build/import/type/template-literal/union.mjs +0 -27
  173. package/build/import/type/transform/index.mjs +0 -27
  174. package/build/import/type/transform/transform.mjs +1 -28
  175. package/build/import/type/tuple/index.mjs +0 -27
  176. package/build/import/type/tuple/tuple.mjs +0 -27
  177. package/build/import/type/type/index.mjs +0 -27
  178. package/build/import/type/type/javascript.mjs +0 -27
  179. package/build/import/type/type/json.d.mts +2 -2
  180. package/build/import/type/type/json.mjs +0 -27
  181. package/build/import/type/type/type.mjs +0 -27
  182. package/build/import/type/uint8array/index.mjs +0 -27
  183. package/build/import/type/uint8array/uint8array.mjs +0 -27
  184. package/build/import/type/undefined/index.mjs +0 -27
  185. package/build/import/type/undefined/undefined.mjs +0 -27
  186. package/build/import/type/union/index.mjs +0 -27
  187. package/build/import/type/union/union-create.mjs +0 -27
  188. package/build/import/type/union/union-evaluated.mjs +2 -29
  189. package/build/import/type/union/union-type.mjs +0 -27
  190. package/build/import/type/union/union.mjs +0 -27
  191. package/build/import/type/unknown/index.mjs +0 -27
  192. package/build/import/type/unknown/unknown.mjs +0 -27
  193. package/build/import/type/unsafe/index.mjs +0 -27
  194. package/build/import/type/unsafe/unsafe.mjs +0 -27
  195. package/build/import/type/void/index.mjs +0 -27
  196. package/build/import/type/void/void.mjs +0 -27
  197. package/build/import/value/cast/cast.mjs +0 -27
  198. package/build/import/value/cast/index.mjs +0 -27
  199. package/build/import/value/check/check.mjs +18 -38
  200. package/build/import/value/check/index.mjs +0 -27
  201. package/build/import/value/clean/clean.mjs +9 -34
  202. package/build/import/value/clean/index.mjs +0 -27
  203. package/build/import/value/clone/clone.mjs +7 -31
  204. package/build/import/value/clone/index.mjs +0 -27
  205. package/build/import/value/convert/convert.mjs +6 -29
  206. package/build/import/value/convert/index.mjs +0 -27
  207. package/build/import/value/create/create.mjs +0 -27
  208. package/build/import/value/create/index.mjs +0 -27
  209. package/build/import/value/default/default.mjs +12 -31
  210. package/build/import/value/default/index.mjs +0 -27
  211. package/build/import/value/delta/delta.mjs +0 -27
  212. package/build/import/value/delta/index.mjs +0 -27
  213. package/build/import/value/deref/deref.mjs +0 -27
  214. package/build/import/value/deref/index.mjs +0 -27
  215. package/build/import/value/equal/equal.mjs +0 -27
  216. package/build/import/value/equal/index.mjs +0 -27
  217. package/build/import/value/guard/guard.mjs +0 -27
  218. package/build/import/value/guard/index.mjs +0 -27
  219. package/build/import/value/hash/hash.mjs +0 -27
  220. package/build/import/value/hash/index.mjs +0 -27
  221. package/build/import/value/index.mjs +0 -27
  222. package/build/import/value/mutate/index.mjs +0 -27
  223. package/build/import/value/mutate/mutate.mjs +0 -27
  224. package/build/import/value/pointer/index.mjs +0 -27
  225. package/build/import/value/pointer/pointer.mjs +0 -27
  226. package/build/import/value/transform/decode.mjs +12 -33
  227. package/build/import/value/transform/encode.mjs +12 -33
  228. package/build/import/value/transform/has.mjs +24 -45
  229. package/build/import/value/transform/index.mjs +0 -27
  230. package/build/import/value/value/index.mjs +0 -27
  231. package/build/import/value/value/value.mjs +0 -27
  232. package/build/require/compiler/compiler.js +77 -97
  233. package/build/require/compiler/index.js +0 -26
  234. package/build/require/errors/errors.js +58 -80
  235. package/build/require/errors/function.js +0 -26
  236. package/build/require/errors/index.js +0 -26
  237. package/build/require/index.js +0 -26
  238. package/build/require/system/index.js +0 -26
  239. package/build/require/system/policy.js +0 -26
  240. package/build/require/system/system.js +0 -26
  241. package/build/require/type/any/any.js +0 -26
  242. package/build/require/type/any/index.js +0 -26
  243. package/build/require/type/array/array.js +0 -26
  244. package/build/require/type/array/index.js +0 -26
  245. package/build/require/type/async-iterator/async-iterator.js +0 -26
  246. package/build/require/type/async-iterator/index.js +0 -26
  247. package/build/require/type/awaited/awaited.d.ts +6 -6
  248. package/build/require/type/awaited/awaited.js +14 -41
  249. package/build/require/type/awaited/index.js +0 -26
  250. package/build/require/type/bigint/bigint.js +0 -26
  251. package/build/require/type/bigint/index.js +0 -26
  252. package/build/require/type/boolean/boolean.js +0 -26
  253. package/build/require/type/boolean/index.js +0 -26
  254. package/build/require/type/clone/index.js +0 -26
  255. package/build/require/type/clone/type.js +0 -26
  256. package/build/require/type/clone/value.js +0 -26
  257. package/build/require/type/composite/composite.js +0 -26
  258. package/build/require/type/composite/index.js +0 -26
  259. package/build/require/type/const/const.js +0 -26
  260. package/build/require/type/const/index.js +0 -26
  261. package/build/require/type/constructor/constructor.js +0 -26
  262. package/build/require/type/constructor/index.js +0 -26
  263. package/build/require/type/constructor-parameters/constructor-parameters.js +0 -26
  264. package/build/require/type/constructor-parameters/index.js +0 -26
  265. package/build/require/type/date/date.js +0 -26
  266. package/build/require/type/date/index.js +0 -26
  267. package/build/require/type/deref/deref.js +11 -37
  268. package/build/require/type/deref/index.js +0 -26
  269. package/build/require/type/discard/discard.js +0 -26
  270. package/build/require/type/discard/index.js +0 -26
  271. package/build/require/type/enum/enum.js +0 -26
  272. package/build/require/type/enum/index.js +0 -26
  273. package/build/require/type/exclude/exclude-from-mapped-result.js +0 -26
  274. package/build/require/type/exclude/exclude.js +7 -30
  275. package/build/require/type/exclude/index.js +0 -26
  276. package/build/require/type/extends/extends-check.js +167 -193
  277. package/build/require/type/extends/extends-from-mapped-key.js +0 -26
  278. package/build/require/type/extends/extends-from-mapped-result.js +0 -26
  279. package/build/require/type/extends/extends-undefined.js +0 -26
  280. package/build/require/type/extends/extends.js +2 -28
  281. package/build/require/type/extends/index.js +0 -26
  282. package/build/require/type/extract/extract-from-mapped-result.js +0 -26
  283. package/build/require/type/extract/extract.js +4 -30
  284. package/build/require/type/extract/index.js +0 -26
  285. package/build/require/type/function/function.js +0 -26
  286. package/build/require/type/function/index.js +0 -26
  287. package/build/require/type/guard/index.js +0 -26
  288. package/build/require/type/guard/type.d.ts +50 -50
  289. package/build/require/type/guard/type.js +184 -210
  290. package/build/require/type/guard/value.js +0 -26
  291. package/build/require/type/helpers/helpers.js +0 -26
  292. package/build/require/type/helpers/index.js +0 -26
  293. package/build/require/type/index.js +0 -26
  294. package/build/require/type/indexed/index.d.ts +0 -1
  295. package/build/require/type/indexed/index.js +0 -27
  296. package/build/require/type/indexed/indexed-from-mapped-key.d.ts +2 -2
  297. package/build/require/type/indexed/indexed-from-mapped-key.js +2 -28
  298. package/build/require/type/indexed/indexed-property-keys.js +6 -32
  299. package/build/require/type/indexed/indexed.d.ts +38 -5
  300. package/build/require/type/indexed/indexed.js +78 -31
  301. package/build/require/type/instance-type/index.js +0 -26
  302. package/build/require/type/instance-type/instance-type.js +0 -26
  303. package/build/require/type/integer/index.js +0 -26
  304. package/build/require/type/integer/integer.js +0 -26
  305. package/build/require/type/intersect/index.js +0 -26
  306. package/build/require/type/intersect/intersect-create.js +3 -29
  307. package/build/require/type/intersect/intersect-evaluated.js +2 -28
  308. package/build/require/type/intersect/intersect-type.js +0 -26
  309. package/build/require/type/intersect/intersect.js +1 -27
  310. package/build/require/type/intrinsic/capitalize.js +0 -26
  311. package/build/require/type/intrinsic/index.js +0 -26
  312. package/build/require/type/intrinsic/intrinsic-from-mapped-key.js +0 -26
  313. package/build/require/type/intrinsic/intrinsic.js +4 -30
  314. package/build/require/type/intrinsic/lowercase.js +0 -26
  315. package/build/require/type/intrinsic/uncapitalize.js +0 -26
  316. package/build/require/type/intrinsic/uppercase.js +0 -26
  317. package/build/require/type/iterator/index.js +0 -26
  318. package/build/require/type/iterator/iterator.js +0 -26
  319. package/build/require/type/keyof/index.js +0 -26
  320. package/build/require/type/keyof/keyof-from-mapped-result.js +0 -26
  321. package/build/require/type/keyof/keyof-property-keys.js +6 -32
  322. package/build/require/type/keyof/keyof.js +1 -27
  323. package/build/require/type/literal/index.js +0 -26
  324. package/build/require/type/literal/literal.js +0 -26
  325. package/build/require/type/mapped/index.js +0 -26
  326. package/build/require/type/mapped/mapped-key.js +0 -26
  327. package/build/require/type/mapped/mapped-result.js +0 -26
  328. package/build/require/type/mapped/mapped.js +15 -41
  329. package/build/require/type/modifiers/index.js +0 -26
  330. package/build/require/type/modifiers/modifiers.js +2 -28
  331. package/build/require/type/never/index.js +0 -26
  332. package/build/require/type/never/never.js +0 -26
  333. package/build/require/type/not/index.js +0 -26
  334. package/build/require/type/not/not.js +0 -26
  335. package/build/require/type/null/index.js +0 -26
  336. package/build/require/type/null/null.js +0 -26
  337. package/build/require/type/number/index.js +0 -26
  338. package/build/require/type/number/number.js +0 -26
  339. package/build/require/type/object/index.js +0 -26
  340. package/build/require/type/object/object.js +2 -28
  341. package/build/require/type/omit/index.js +0 -26
  342. package/build/require/type/omit/omit-from-mapped-key.js +0 -26
  343. package/build/require/type/omit/omit.js +5 -31
  344. package/build/require/type/operators/index.js +0 -26
  345. package/build/require/type/operators/operators.js +0 -26
  346. package/build/require/type/optional/index.js +0 -26
  347. package/build/require/type/optional/optional.js +0 -26
  348. package/build/require/type/parameters/index.js +0 -26
  349. package/build/require/type/parameters/parameters.js +0 -26
  350. package/build/require/type/partial/index.js +0 -26
  351. package/build/require/type/partial/partial-from-mapped-result.js +0 -26
  352. package/build/require/type/partial/partial.js +4 -30
  353. package/build/require/type/patterns/index.js +0 -26
  354. package/build/require/type/patterns/patterns.js +0 -26
  355. package/build/require/type/pick/index.js +0 -26
  356. package/build/require/type/pick/pick-from-mapped-key.js +0 -26
  357. package/build/require/type/pick/pick.js +5 -31
  358. package/build/require/type/promise/index.js +0 -26
  359. package/build/require/type/promise/promise.js +0 -26
  360. package/build/require/type/readonly/index.js +0 -26
  361. package/build/require/type/readonly/readonly.js +0 -26
  362. package/build/require/type/readonly-optional/index.js +0 -26
  363. package/build/require/type/readonly-optional/readonly-optional.js +0 -26
  364. package/build/require/type/record/index.js +0 -26
  365. package/build/require/type/record/record.d.ts +10 -9
  366. package/build/require/type/record/record.js +36 -58
  367. package/build/require/type/recursive/index.js +0 -26
  368. package/build/require/type/recursive/recursive.js +0 -26
  369. package/build/require/type/ref/index.js +0 -26
  370. package/build/require/type/ref/ref.js +0 -26
  371. package/build/require/type/regexp/index.js +0 -26
  372. package/build/require/type/regexp/regexp.js +0 -26
  373. package/build/require/type/registry/format.js +0 -26
  374. package/build/require/type/registry/index.js +0 -26
  375. package/build/require/type/registry/type.js +0 -26
  376. package/build/require/type/required/index.js +0 -26
  377. package/build/require/type/required/required-from-mapped-result.js +0 -26
  378. package/build/require/type/required/required.js +4 -30
  379. package/build/require/type/rest/index.js +0 -26
  380. package/build/require/type/rest/rest.js +5 -27
  381. package/build/require/type/return-type/index.js +0 -26
  382. package/build/require/type/return-type/return-type.js +0 -26
  383. package/build/require/type/schema/anyschema.js +0 -26
  384. package/build/require/type/schema/index.js +0 -26
  385. package/build/require/type/schema/schema.js +0 -26
  386. package/build/require/type/static/index.js +0 -26
  387. package/build/require/type/static/static.js +0 -26
  388. package/build/require/type/strict/index.js +0 -26
  389. package/build/require/type/strict/strict.js +0 -26
  390. package/build/require/type/string/index.js +0 -26
  391. package/build/require/type/string/string.js +0 -26
  392. package/build/require/type/symbol/index.js +0 -26
  393. package/build/require/type/symbol/symbol.js +0 -26
  394. package/build/require/type/symbols/index.js +0 -26
  395. package/build/require/type/symbols/symbols.js +0 -26
  396. package/build/require/type/template-literal/finite.js +0 -26
  397. package/build/require/type/template-literal/generate.js +0 -26
  398. package/build/require/type/template-literal/index.js +0 -26
  399. package/build/require/type/template-literal/parser.js +0 -26
  400. package/build/require/type/template-literal/pattern.js +8 -34
  401. package/build/require/type/template-literal/syntax.js +0 -26
  402. package/build/require/type/template-literal/template-literal.js +0 -26
  403. package/build/require/type/template-literal/union.js +0 -26
  404. package/build/require/type/transform/index.js +0 -26
  405. package/build/require/type/transform/transform.js +1 -27
  406. package/build/require/type/tuple/index.js +0 -26
  407. package/build/require/type/tuple/tuple.js +0 -26
  408. package/build/require/type/type/index.js +0 -26
  409. package/build/require/type/type/javascript.js +0 -26
  410. package/build/require/type/type/json.d.ts +2 -2
  411. package/build/require/type/type/json.js +0 -26
  412. package/build/require/type/type/type.js +0 -26
  413. package/build/require/type/uint8array/index.js +0 -26
  414. package/build/require/type/uint8array/uint8array.js +0 -26
  415. package/build/require/type/undefined/index.js +0 -26
  416. package/build/require/type/undefined/undefined.js +0 -26
  417. package/build/require/type/union/index.js +0 -26
  418. package/build/require/type/union/union-create.js +0 -26
  419. package/build/require/type/union/union-evaluated.js +1 -27
  420. package/build/require/type/union/union-type.js +0 -26
  421. package/build/require/type/union/union.js +0 -26
  422. package/build/require/type/unknown/index.js +0 -26
  423. package/build/require/type/unknown/unknown.js +0 -26
  424. package/build/require/type/unsafe/index.js +0 -26
  425. package/build/require/type/unsafe/unsafe.js +0 -26
  426. package/build/require/type/void/index.js +0 -26
  427. package/build/require/type/void/void.js +0 -26
  428. package/build/require/value/cast/cast.js +0 -26
  429. package/build/require/value/cast/index.js +0 -26
  430. package/build/require/value/check/check.js +63 -82
  431. package/build/require/value/check/index.js +0 -26
  432. package/build/require/value/clean/clean.js +31 -55
  433. package/build/require/value/clean/index.js +0 -26
  434. package/build/require/value/clone/clone.js +7 -30
  435. package/build/require/value/clone/index.js +0 -26
  436. package/build/require/value/convert/convert.js +42 -64
  437. package/build/require/value/convert/index.js +0 -26
  438. package/build/require/value/create/create.js +0 -26
  439. package/build/require/value/create/index.js +0 -26
  440. package/build/require/value/default/default.js +24 -42
  441. package/build/require/value/default/index.js +0 -26
  442. package/build/require/value/delta/delta.js +0 -26
  443. package/build/require/value/delta/index.js +0 -26
  444. package/build/require/value/deref/deref.js +0 -26
  445. package/build/require/value/deref/index.js +0 -26
  446. package/build/require/value/equal/equal.js +0 -26
  447. package/build/require/value/equal/index.js +0 -26
  448. package/build/require/value/guard/guard.js +0 -26
  449. package/build/require/value/guard/index.js +0 -26
  450. package/build/require/value/hash/hash.js +0 -26
  451. package/build/require/value/hash/index.js +0 -26
  452. package/build/require/value/index.js +0 -26
  453. package/build/require/value/mutate/index.js +0 -26
  454. package/build/require/value/mutate/mutate.js +0 -26
  455. package/build/require/value/pointer/index.js +0 -26
  456. package/build/require/value/pointer/pointer.js +0 -26
  457. package/build/require/value/transform/decode.js +27 -47
  458. package/build/require/value/transform/encode.js +28 -48
  459. package/build/require/value/transform/has.js +29 -49
  460. package/build/require/value/transform/index.js +0 -26
  461. package/build/require/value/value/index.js +0 -26
  462. package/build/require/value/value/value.js +0 -26
  463. package/license +3 -1
  464. package/package.json +1 -1
  465. package/readme.md +7 -7
  466. package/build/import/type/indexed/indexed-result.d.mts +0 -33
  467. package/build/import/type/indexed/indexed-result.mjs +0 -107
  468. package/build/require/type/indexed/indexed-result.d.ts +0 -33
  469. package/build/require/type/indexed/indexed-result.js +0 -111
@@ -1,45 +1,25 @@
1
1
  "use strict";
2
- /*--------------------------------------------------------------------------
3
2
 
4
- @sinclair/typebox/compiler
5
-
6
- The MIT License (MIT)
7
-
8
- Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
9
-
10
- Permission is hereby granted, free of charge, to any person obtaining a copy
11
- of this software and associated documentation files (the "Software"), to deal
12
- in the Software without restriction, including without limitation the rights
13
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
- copies of the Software, and to permit persons to whom the Software is
15
- furnished to do so, subject to the following conditions:
16
-
17
- The above copyright notice and this permission notice shall be included in
18
- all copies or substantial portions of the Software.
19
-
20
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
26
- THE SOFTWARE.
27
-
28
- ---------------------------------------------------------------------------*/
29
3
  Object.defineProperty(exports, "__esModule", { value: true });
30
4
  exports.TypeCompiler = exports.Policy = exports.TypeCompilerTypeGuardError = exports.TypeCompilerUnknownTypeError = exports.TypeCheck = void 0;
31
5
  const index_1 = require("../value/transform/index");
32
- const index_2 = require("../value/guard/index");
33
- const index_3 = require("../errors/index");
34
- const index_4 = require("../system/index");
35
- const index_5 = require("../value/deref/index");
36
- const index_6 = require("../value/hash/index");
37
- const index_7 = require("../type/symbols/index");
38
- const type_1 = require("../type/guard/type");
39
- const index_8 = require("../type/registry/index");
40
- const index_9 = require("../type/keyof/index");
6
+ const index_2 = require("../errors/index");
7
+ const index_3 = require("../system/index");
8
+ const index_4 = require("../value/deref/index");
9
+ const index_5 = require("../value/hash/index");
10
+ const index_6 = require("../type/symbols/index");
11
+ const index_7 = require("../type/registry/index");
12
+ const index_8 = require("../type/keyof/index");
41
13
  const extends_undefined_1 = require("../type/extends/extends-undefined");
42
- const index_10 = require("../type/never/index");
14
+ const index_9 = require("../type/never/index");
15
+ // ------------------------------------------------------------------
16
+ // ValueGuard
17
+ // ------------------------------------------------------------------
18
+ const index_10 = require("../value/guard/index");
19
+ // ------------------------------------------------------------------
20
+ // TypeGuard
21
+ // ------------------------------------------------------------------
22
+ const type_1 = require("../type/guard/type");
43
23
  // ------------------------------------------------------------------
44
24
  // TypeCheck
45
25
  // ------------------------------------------------------------------
@@ -57,7 +37,7 @@ class TypeCheck {
57
37
  }
58
38
  /** Returns an iterator for each error in this value. */
59
39
  Errors(value) {
60
- return (0, index_3.Errors)(this.schema, this.references, value);
40
+ return (0, index_2.Errors)(this.schema, this.references, value);
61
41
  }
62
42
  /** Returns true if the value matches the compiled type. */
63
43
  Check(value) {
@@ -182,25 +162,25 @@ exports.TypeCompilerTypeGuardError = TypeCompilerTypeGuardError;
182
162
  var Policy;
183
163
  (function (Policy) {
184
164
  function IsExactOptionalProperty(value, key, expression) {
185
- return index_4.TypeSystemPolicy.ExactOptionalPropertyTypes ? `('${key}' in ${value} ? ${expression} : true)` : `(${MemberExpression.Encode(value, key)} !== undefined ? ${expression} : true)`;
165
+ return index_3.TypeSystemPolicy.ExactOptionalPropertyTypes ? `('${key}' in ${value} ? ${expression} : true)` : `(${MemberExpression.Encode(value, key)} !== undefined ? ${expression} : true)`;
186
166
  }
187
167
  Policy.IsExactOptionalProperty = IsExactOptionalProperty;
188
168
  function IsObjectLike(value) {
189
- return !index_4.TypeSystemPolicy.AllowArrayObject ? `(typeof ${value} === 'object' && ${value} !== null && !Array.isArray(${value}))` : `(typeof ${value} === 'object' && ${value} !== null)`;
169
+ return !index_3.TypeSystemPolicy.AllowArrayObject ? `(typeof ${value} === 'object' && ${value} !== null && !Array.isArray(${value}))` : `(typeof ${value} === 'object' && ${value} !== null)`;
190
170
  }
191
171
  Policy.IsObjectLike = IsObjectLike;
192
172
  function IsRecordLike(value) {
193
- return !index_4.TypeSystemPolicy.AllowArrayObject
173
+ return !index_3.TypeSystemPolicy.AllowArrayObject
194
174
  ? `(typeof ${value} === 'object' && ${value} !== null && !Array.isArray(${value}) && !(${value} instanceof Date) && !(${value} instanceof Uint8Array))`
195
175
  : `(typeof ${value} === 'object' && ${value} !== null && !(${value} instanceof Date) && !(${value} instanceof Uint8Array))`;
196
176
  }
197
177
  Policy.IsRecordLike = IsRecordLike;
198
178
  function IsNumberLike(value) {
199
- return !index_4.TypeSystemPolicy.AllowNaN ? `(typeof ${value} === 'number' && Number.isFinite(${value}))` : `typeof ${value} === 'number'`;
179
+ return !index_3.TypeSystemPolicy.AllowNaN ? `(typeof ${value} === 'number' && Number.isFinite(${value}))` : `typeof ${value} === 'number'`;
200
180
  }
201
181
  Policy.IsNumberLike = IsNumberLike;
202
182
  function IsVoidLike(value) {
203
- return index_4.TypeSystemPolicy.AllowNullVoid ? `(${value} === undefined || ${value} === null)` : `${value} === undefined`;
183
+ return index_3.TypeSystemPolicy.AllowNullVoid ? `(${value} === undefined || ${value} === null)` : `${value} === undefined`;
204
184
  }
205
185
  Policy.IsVoidLike = IsVoidLike;
206
186
  })(Policy || (exports.Policy = Policy = {}));
@@ -211,7 +191,7 @@ var TypeCompiler;
211
191
  // Guards
212
192
  // ----------------------------------------------------------------
213
193
  function IsAnyOrUnknown(schema) {
214
- return schema[index_7.Kind] === 'Any' || schema[index_7.Kind] === 'Unknown';
194
+ return schema[index_6.Kind] === 'Any' || schema[index_6.Kind] === 'Unknown';
215
195
  }
216
196
  // ----------------------------------------------------------------
217
197
  // Types
@@ -222,17 +202,17 @@ var TypeCompiler;
222
202
  function* TArray(schema, references, value) {
223
203
  yield `Array.isArray(${value})`;
224
204
  const [parameter, accumulator] = [CreateParameter('value', 'any'), CreateParameter('acc', 'number')];
225
- if ((0, index_2.IsNumber)(schema.maxItems))
205
+ if ((0, index_10.IsNumber)(schema.maxItems))
226
206
  yield `${value}.length <= ${schema.maxItems}`;
227
- if ((0, index_2.IsNumber)(schema.minItems))
207
+ if ((0, index_10.IsNumber)(schema.minItems))
228
208
  yield `${value}.length >= ${schema.minItems}`;
229
209
  const elementExpression = CreateExpression(schema.items, references, 'value');
230
210
  yield `${value}.every((${parameter}) => ${elementExpression})`;
231
- if ((0, type_1.TSchema)(schema.contains) || (0, index_2.IsNumber)(schema.minContains) || (0, index_2.IsNumber)(schema.maxContains)) {
232
- const containsSchema = (0, type_1.TSchema)(schema.contains) ? schema.contains : (0, index_10.Never)();
211
+ if ((0, type_1.IsSchema)(schema.contains) || (0, index_10.IsNumber)(schema.minContains) || (0, index_10.IsNumber)(schema.maxContains)) {
212
+ const containsSchema = (0, type_1.IsSchema)(schema.contains) ? schema.contains : (0, index_9.Never)();
233
213
  const checkExpression = CreateExpression(containsSchema, references, 'value');
234
- const checkMinContains = (0, index_2.IsNumber)(schema.minContains) ? [`(count >= ${schema.minContains})`] : [];
235
- const checkMaxContains = (0, index_2.IsNumber)(schema.maxContains) ? [`(count <= ${schema.maxContains})`] : [];
214
+ const checkMinContains = (0, index_10.IsNumber)(schema.minContains) ? [`(count >= ${schema.minContains})`] : [];
215
+ const checkMaxContains = (0, index_10.IsNumber)(schema.maxContains) ? [`(count <= ${schema.maxContains})`] : [];
236
216
  const checkCount = `const count = value.reduce((${accumulator}, ${parameter}) => ${checkExpression} ? acc + 1 : acc, 0)`;
237
217
  const check = [`(count > 0)`, ...checkMinContains, ...checkMaxContains].join(' && ');
238
218
  yield `((${parameter}) => { ${checkCount}; return ${check}})(${value})`;
@@ -248,15 +228,15 @@ var TypeCompiler;
248
228
  }
249
229
  function* TBigInt(schema, references, value) {
250
230
  yield `(typeof ${value} === 'bigint')`;
251
- if ((0, index_2.IsBigInt)(schema.exclusiveMaximum))
231
+ if ((0, index_10.IsBigInt)(schema.exclusiveMaximum))
252
232
  yield `${value} < BigInt(${schema.exclusiveMaximum})`;
253
- if ((0, index_2.IsBigInt)(schema.exclusiveMinimum))
233
+ if ((0, index_10.IsBigInt)(schema.exclusiveMinimum))
254
234
  yield `${value} > BigInt(${schema.exclusiveMinimum})`;
255
- if ((0, index_2.IsBigInt)(schema.maximum))
235
+ if ((0, index_10.IsBigInt)(schema.maximum))
256
236
  yield `${value} <= BigInt(${schema.maximum})`;
257
- if ((0, index_2.IsBigInt)(schema.minimum))
237
+ if ((0, index_10.IsBigInt)(schema.minimum))
258
238
  yield `${value} >= BigInt(${schema.minimum})`;
259
- if ((0, index_2.IsBigInt)(schema.multipleOf))
239
+ if ((0, index_10.IsBigInt)(schema.multipleOf))
260
240
  yield `(${value} % BigInt(${schema.multipleOf})) === 0`;
261
241
  }
262
242
  function* TBoolean(schema, references, value) {
@@ -267,15 +247,15 @@ var TypeCompiler;
267
247
  }
268
248
  function* TDate(schema, references, value) {
269
249
  yield `(${value} instanceof Date) && Number.isFinite(${value}.getTime())`;
270
- if ((0, index_2.IsNumber)(schema.exclusiveMaximumTimestamp))
250
+ if ((0, index_10.IsNumber)(schema.exclusiveMaximumTimestamp))
271
251
  yield `${value}.getTime() < ${schema.exclusiveMaximumTimestamp}`;
272
- if ((0, index_2.IsNumber)(schema.exclusiveMinimumTimestamp))
252
+ if ((0, index_10.IsNumber)(schema.exclusiveMinimumTimestamp))
273
253
  yield `${value}.getTime() > ${schema.exclusiveMinimumTimestamp}`;
274
- if ((0, index_2.IsNumber)(schema.maximumTimestamp))
254
+ if ((0, index_10.IsNumber)(schema.maximumTimestamp))
275
255
  yield `${value}.getTime() <= ${schema.maximumTimestamp}`;
276
- if ((0, index_2.IsNumber)(schema.minimumTimestamp))
256
+ if ((0, index_10.IsNumber)(schema.minimumTimestamp))
277
257
  yield `${value}.getTime() >= ${schema.minimumTimestamp}`;
278
- if ((0, index_2.IsNumber)(schema.multipleOfTimestamp))
258
+ if ((0, index_10.IsNumber)(schema.multipleOfTimestamp))
279
259
  yield `(${value}.getTime() % ${schema.multipleOfTimestamp}) === 0`;
280
260
  }
281
261
  function* TFunction(schema, references, value) {
@@ -283,26 +263,26 @@ var TypeCompiler;
283
263
  }
284
264
  function* TInteger(schema, references, value) {
285
265
  yield `(typeof ${value} === 'number' && Number.isInteger(${value}))`;
286
- if ((0, index_2.IsNumber)(schema.exclusiveMaximum))
266
+ if ((0, index_10.IsNumber)(schema.exclusiveMaximum))
287
267
  yield `${value} < ${schema.exclusiveMaximum}`;
288
- if ((0, index_2.IsNumber)(schema.exclusiveMinimum))
268
+ if ((0, index_10.IsNumber)(schema.exclusiveMinimum))
289
269
  yield `${value} > ${schema.exclusiveMinimum}`;
290
- if ((0, index_2.IsNumber)(schema.maximum))
270
+ if ((0, index_10.IsNumber)(schema.maximum))
291
271
  yield `${value} <= ${schema.maximum}`;
292
- if ((0, index_2.IsNumber)(schema.minimum))
272
+ if ((0, index_10.IsNumber)(schema.minimum))
293
273
  yield `${value} >= ${schema.minimum}`;
294
- if ((0, index_2.IsNumber)(schema.multipleOf))
274
+ if ((0, index_10.IsNumber)(schema.multipleOf))
295
275
  yield `(${value} % ${schema.multipleOf}) === 0`;
296
276
  }
297
277
  function* TIntersect(schema, references, value) {
298
278
  const check1 = schema.allOf.map((schema) => CreateExpression(schema, references, value)).join(' && ');
299
279
  if (schema.unevaluatedProperties === false) {
300
- const keyCheck = CreateVariable(`${new RegExp((0, index_9.KeyOfPattern)(schema))};`);
280
+ const keyCheck = CreateVariable(`${new RegExp((0, index_8.KeyOfPattern)(schema))};`);
301
281
  const check2 = `Object.getOwnPropertyNames(${value}).every(key => ${keyCheck}.test(key))`;
302
282
  yield `(${check1} && ${check2})`;
303
283
  }
304
- else if ((0, type_1.TSchema)(schema.unevaluatedProperties)) {
305
- const keyCheck = CreateVariable(`${new RegExp((0, index_9.KeyOfPattern)(schema))};`);
284
+ else if ((0, type_1.IsSchema)(schema.unevaluatedProperties)) {
285
+ const keyCheck = CreateVariable(`${new RegExp((0, index_8.KeyOfPattern)(schema))};`);
306
286
  const check2 = `Object.getOwnPropertyNames(${value}).every(key => ${keyCheck}.test(key) || ${CreateExpression(schema.unevaluatedProperties, references, `${value}[key]`)})`;
307
287
  yield `(${check1} && ${check2})`;
308
288
  }
@@ -333,22 +313,22 @@ var TypeCompiler;
333
313
  }
334
314
  function* TNumber(schema, references, value) {
335
315
  yield Policy.IsNumberLike(value);
336
- if ((0, index_2.IsNumber)(schema.exclusiveMaximum))
316
+ if ((0, index_10.IsNumber)(schema.exclusiveMaximum))
337
317
  yield `${value} < ${schema.exclusiveMaximum}`;
338
- if ((0, index_2.IsNumber)(schema.exclusiveMinimum))
318
+ if ((0, index_10.IsNumber)(schema.exclusiveMinimum))
339
319
  yield `${value} > ${schema.exclusiveMinimum}`;
340
- if ((0, index_2.IsNumber)(schema.maximum))
320
+ if ((0, index_10.IsNumber)(schema.maximum))
341
321
  yield `${value} <= ${schema.maximum}`;
342
- if ((0, index_2.IsNumber)(schema.minimum))
322
+ if ((0, index_10.IsNumber)(schema.minimum))
343
323
  yield `${value} >= ${schema.minimum}`;
344
- if ((0, index_2.IsNumber)(schema.multipleOf))
324
+ if ((0, index_10.IsNumber)(schema.multipleOf))
345
325
  yield `(${value} % ${schema.multipleOf}) === 0`;
346
326
  }
347
327
  function* TObject(schema, references, value) {
348
328
  yield Policy.IsObjectLike(value);
349
- if ((0, index_2.IsNumber)(schema.minProperties))
329
+ if ((0, index_10.IsNumber)(schema.minProperties))
350
330
  yield `Object.getOwnPropertyNames(${value}).length >= ${schema.minProperties}`;
351
- if ((0, index_2.IsNumber)(schema.maxProperties))
331
+ if ((0, index_10.IsNumber)(schema.maxProperties))
352
332
  yield `Object.getOwnPropertyNames(${value}).length <= ${schema.maxProperties}`;
353
333
  const knownKeys = Object.getOwnPropertyNames(schema.properties);
354
334
  for (const knownKey of knownKeys) {
@@ -384,19 +364,19 @@ var TypeCompiler;
384
364
  }
385
365
  function* TRecord(schema, references, value) {
386
366
  yield Policy.IsRecordLike(value);
387
- if ((0, index_2.IsNumber)(schema.minProperties))
367
+ if ((0, index_10.IsNumber)(schema.minProperties))
388
368
  yield `Object.getOwnPropertyNames(${value}).length >= ${schema.minProperties}`;
389
- if ((0, index_2.IsNumber)(schema.maxProperties))
369
+ if ((0, index_10.IsNumber)(schema.maxProperties))
390
370
  yield `Object.getOwnPropertyNames(${value}).length <= ${schema.maxProperties}`;
391
371
  const [patternKey, patternSchema] = Object.entries(schema.patternProperties)[0];
392
372
  const variable = CreateVariable(`${new RegExp(patternKey)}`);
393
373
  const check1 = CreateExpression(patternSchema, references, 'value');
394
- const check2 = (0, type_1.TSchema)(schema.additionalProperties) ? CreateExpression(schema.additionalProperties, references, value) : schema.additionalProperties === false ? 'false' : 'true';
374
+ const check2 = (0, type_1.IsSchema)(schema.additionalProperties) ? CreateExpression(schema.additionalProperties, references, value) : schema.additionalProperties === false ? 'false' : 'true';
395
375
  const expression = `(${variable}.test(key) ? ${check1} : ${check2})`;
396
376
  yield `(Object.entries(${value}).every(([key, value]) => ${expression}))`;
397
377
  }
398
378
  function* TRef(schema, references, value) {
399
- const target = (0, index_5.Deref)(schema, references);
379
+ const target = (0, index_4.Deref)(schema, references);
400
380
  // Reference: If we have seen this reference before we can just yield and return the function call.
401
381
  // If this isn't the case we defer to visit to generate and set the function for subsequent passes.
402
382
  if (state.functions.has(schema.$ref))
@@ -405,9 +385,9 @@ var TypeCompiler;
405
385
  }
406
386
  function* TString(schema, references, value) {
407
387
  yield `(typeof ${value} === 'string')`;
408
- if ((0, index_2.IsNumber)(schema.maxLength))
388
+ if ((0, index_10.IsNumber)(schema.maxLength))
409
389
  yield `${value}.length <= ${schema.maxLength}`;
410
- if ((0, index_2.IsNumber)(schema.minLength))
390
+ if ((0, index_10.IsNumber)(schema.minLength))
411
391
  yield `${value}.length >= ${schema.minLength}`;
412
392
  if (schema.pattern !== undefined) {
413
393
  const variable = CreateVariable(`${new RegExp(schema.pattern)};`);
@@ -448,9 +428,9 @@ var TypeCompiler;
448
428
  }
449
429
  function* TUint8Array(schema, references, value) {
450
430
  yield `${value} instanceof Uint8Array`;
451
- if ((0, index_2.IsNumber)(schema.maxByteLength))
431
+ if ((0, index_10.IsNumber)(schema.maxByteLength))
452
432
  yield `(${value}.length <= ${schema.maxByteLength})`;
453
- if ((0, index_2.IsNumber)(schema.minByteLength))
433
+ if ((0, index_10.IsNumber)(schema.minByteLength))
454
434
  yield `(${value}.length >= ${schema.minByteLength})`;
455
435
  }
456
436
  function* TUnknown(schema, references, value) {
@@ -462,15 +442,15 @@ var TypeCompiler;
462
442
  function* TKind(schema, references, value) {
463
443
  const instance = state.instances.size;
464
444
  state.instances.set(instance, schema);
465
- yield `kind('${schema[index_7.Kind]}', ${instance}, ${value})`;
445
+ yield `kind('${schema[index_6.Kind]}', ${instance}, ${value})`;
466
446
  }
467
447
  function* Visit(schema, references, value, useHoisting = true) {
468
- const references_ = (0, index_2.IsString)(schema.$id) ? [...references, schema] : references;
448
+ const references_ = (0, index_10.IsString)(schema.$id) ? [...references, schema] : references;
469
449
  const schema_ = schema;
470
450
  // --------------------------------------------------------------
471
451
  // Hoisting
472
452
  // --------------------------------------------------------------
473
- if (useHoisting && (0, index_2.IsString)(schema.$id)) {
453
+ if (useHoisting && (0, index_10.IsString)(schema.$id)) {
474
454
  const functionName = CreateFunctionName(schema.$id);
475
455
  if (state.functions.has(functionName)) {
476
456
  return yield `${functionName}(${value})`;
@@ -481,7 +461,7 @@ var TypeCompiler;
481
461
  return yield `${functionName}(${value})`;
482
462
  }
483
463
  }
484
- switch (schema_[index_7.Kind]) {
464
+ switch (schema_[index_6.Kind]) {
485
465
  case 'Any':
486
466
  return yield* TAny(schema_, references_, value);
487
467
  case 'Array':
@@ -543,7 +523,7 @@ var TypeCompiler;
543
523
  case 'Void':
544
524
  return yield* TVoid(schema_, references_, value);
545
525
  default:
546
- if (!index_8.TypeRegistry.Has(schema_[index_7.Kind]))
526
+ if (!index_7.TypeRegistry.Has(schema_[index_6.Kind]))
547
527
  throw new TypeCompilerUnknownTypeError(schema);
548
528
  return yield* TKind(schema_, references_, value);
549
529
  }
@@ -596,7 +576,7 @@ var TypeCompiler;
596
576
  const functions = [...state.functions.values()];
597
577
  const variables = [...state.variables.values()];
598
578
  // prettier-ignore
599
- const checkFunction = (0, index_2.IsString)(schema.$id) // ensure top level schemas with $id's are hoisted
579
+ const checkFunction = (0, index_10.IsString)(schema.$id) // ensure top level schemas with $id's are hoisted
600
580
  ? `return function check(${parameter})${returns} {\n return ${CreateFunctionName(schema.$id)}(value)\n}`
601
581
  : `return ${functionCode}`;
602
582
  return [...variables, ...functions, checkFunction].join('\n');
@@ -605,8 +585,8 @@ var TypeCompiler;
605
585
  function Code(...args) {
606
586
  const defaults = { language: 'javascript' };
607
587
  // prettier-ignore
608
- const [schema, references, options] = (args.length === 2 && (0, index_2.IsArray)(args[1]) ? [args[0], args[1], defaults] :
609
- args.length === 2 && !(0, index_2.IsArray)(args[1]) ? [args[0], [], args[1]] :
588
+ const [schema, references, options] = (args.length === 2 && (0, index_10.IsArray)(args[1]) ? [args[0], args[1], defaults] :
589
+ args.length === 2 && !(0, index_10.IsArray)(args[1]) ? [args[0], [], args[1]] :
610
590
  args.length === 3 ? [args[0], args[1], args[2]] :
611
591
  args.length === 1 ? [args[0], [], defaults] :
612
592
  [null, [], defaults]);
@@ -615,10 +595,10 @@ var TypeCompiler;
615
595
  state.variables.clear();
616
596
  state.functions.clear();
617
597
  state.instances.clear();
618
- if (!(0, type_1.TSchema)(schema))
598
+ if (!(0, type_1.IsSchema)(schema))
619
599
  throw new TypeCompilerTypeGuardError(schema);
620
600
  for (const schema of references)
621
- if (!(0, type_1.TSchema)(schema))
601
+ if (!(0, type_1.IsSchema)(schema))
622
602
  throw new TypeCompilerTypeGuardError(schema);
623
603
  return Build(schema, references, options);
624
604
  }
@@ -629,20 +609,20 @@ var TypeCompiler;
629
609
  const compiledFunction = globalThis.Function('kind', 'format', 'hash', generatedCode);
630
610
  const instances = new Map(state.instances);
631
611
  function typeRegistryFunction(kind, instance, value) {
632
- if (!index_8.TypeRegistry.Has(kind) || !instances.has(instance))
612
+ if (!index_7.TypeRegistry.Has(kind) || !instances.has(instance))
633
613
  return false;
634
- const checkFunc = index_8.TypeRegistry.Get(kind);
614
+ const checkFunc = index_7.TypeRegistry.Get(kind);
635
615
  const schema = instances.get(instance);
636
616
  return checkFunc(schema, value);
637
617
  }
638
618
  function formatRegistryFunction(format, value) {
639
- if (!index_8.FormatRegistry.Has(format))
619
+ if (!index_7.FormatRegistry.Has(format))
640
620
  return false;
641
- const checkFunc = index_8.FormatRegistry.Get(format);
621
+ const checkFunc = index_7.FormatRegistry.Get(format);
642
622
  return checkFunc(value);
643
623
  }
644
624
  function hashFunction(value) {
645
- return (0, index_6.Hash)(value);
625
+ return (0, index_5.Hash)(value);
646
626
  }
647
627
  const checkFunction = compiledFunction(typeRegistryFunction, formatRegistryFunction, hashFunction);
648
628
  return new TypeCheck(schema, references, checkFunction, generatedCode);
@@ -1,31 +1,5 @@
1
1
  "use strict";
2
- /*--------------------------------------------------------------------------
3
2
 
4
- @sinclair/typebox/compiler
5
-
6
- The MIT License (MIT)
7
-
8
- Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
9
-
10
- Permission is hereby granted, free of charge, to any person obtaining a copy
11
- of this software and associated documentation files (the "Software"), to deal
12
- in the Software without restriction, including without limitation the rights
13
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
- copies of the Software, and to permit persons to whom the Software is
15
- furnished to do so, subject to the following conditions:
16
-
17
- The above copyright notice and this permission notice shall be included in
18
- all copies or substantial portions of the Software.
19
-
20
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
26
- THE SOFTWARE.
27
-
28
- ---------------------------------------------------------------------------*/
29
3
  Object.defineProperty(exports, "__esModule", { value: true });
30
4
  exports.TypeCompilerUnknownTypeError = exports.TypeCompilerTypeGuardError = exports.TypeCheck = exports.TypeCompiler = exports.ValueErrorIterator = exports.ValueErrorType = void 0;
31
5
  var index_1 = require("../errors/index");