@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,30 +1,3 @@
1
- /*--------------------------------------------------------------------------
2
-
3
- @sinclair/typebox/type
4
-
5
- The MIT License (MIT)
6
-
7
- Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
8
-
9
- Permission is hereby granted, free of charge, to any person obtaining a copy
10
- of this software and associated documentation files (the "Software"), to deal
11
- in the Software without restriction, including without limitation the rights
12
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
- copies of the Software, and to permit persons to whom the Software is
14
- furnished to do so, subject to the following conditions:
15
-
16
- The above copyright notice and this permission notice shall be included in
17
- all copies or substantial portions of the Software.
18
-
19
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
- THE SOFTWARE.
26
-
27
- ---------------------------------------------------------------------------*/
28
1
  import { Readonly } from '../readonly/index.mjs';
29
2
  import { Optional } from '../optional/index.mjs';
30
3
  /** `[Json]` Creates a Readonly and Optional property */
@@ -1,28 +1 @@
1
- /*--------------------------------------------------------------------------
2
-
3
- @sinclair/typebox/type
4
-
5
- The MIT License (MIT)
6
-
7
- Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
8
-
9
- Permission is hereby granted, free of charge, to any person obtaining a copy
10
- of this software and associated documentation files (the "Software"), to deal
11
- in the Software without restriction, including without limitation the rights
12
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
- copies of the Software, and to permit persons to whom the Software is
14
- furnished to do so, subject to the following conditions:
15
-
16
- The above copyright notice and this permission notice shall be included in
17
- all copies or substantial portions of the Software.
18
-
19
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
- THE SOFTWARE.
26
-
27
- ---------------------------------------------------------------------------*/
28
1
  export * from './record.mjs';
@@ -16,7 +16,7 @@ type FromTemplateLiteralKeyFinite<K extends TTemplateLiteral, T extends TSchema,
16
16
  [_ in I]: T;
17
17
  }>>>);
18
18
  type FromTemplateLiteralKey<K extends TTemplateLiteral, T extends TSchema> = IsTemplateLiteralFinite<K> extends false ? FromTemplateLiteralKeyInfinite<K, T> : FromTemplateLiteralKeyFinite<K, T>;
19
- declare function FromTemplateLiteralKey<K extends TTemplateLiteral, T extends TSchema>(K: K, T: T): FromTemplateLiteralKey<K, T>;
19
+ declare function FromTemplateLiteralKey<K extends TTemplateLiteral, T extends TSchema>(K: K, T: T, options: ObjectOptions): FromTemplateLiteralKey<K, T>;
20
20
  type FromEnumKey<K extends Record<string, string | number>, T extends TSchema> = Ensure<TObject<{
21
21
  [_ in K[keyof K]]: T;
22
22
  }>>;
@@ -28,27 +28,28 @@ type FromUnionKeyLiteralNumber<K extends TLiteral<number>, T extends TSchema> =
28
28
  };
29
29
  type FromUnionKeyRest<K extends TSchema[], T extends TSchema> = K extends [infer L extends TSchema, ...infer R extends TSchema[]] ? (L extends TUnion<infer S> ? FromUnionKeyRest<S, T> & FromUnionKeyRest<R, T> : L extends TLiteral<string> ? FromUnionKeyLiteralString<L, T> & FromUnionKeyRest<R, T> : L extends TLiteral<number> ? FromUnionKeyLiteralNumber<L, T> & FromUnionKeyRest<R, T> : {}) : {};
30
30
  type FromUnionKey<K extends TSchema[], T extends TSchema, P extends TProperties = FromUnionKeyRest<K, T>> = (Ensure<TObject<P>>);
31
- declare function FromUnionKey<K extends TSchema[], T extends TSchema>(K: K, T: T): FromUnionKey<K, T>;
31
+ declare function FromUnionKey<K extends TSchema[], T extends TSchema>(K: K, T: T, options: ObjectOptions): FromUnionKey<K, T>;
32
32
  type FromLiteralKey<K extends TLiteralValue, T extends TSchema> = (Ensure<TObject<{
33
33
  [_ in Assert<K, PropertyKey>]: T;
34
34
  }>>);
35
- declare function FromLiteralKey<K extends TLiteralValue, T extends TSchema>(K: K, T: T): FromLiteralKey<K, T>;
35
+ declare function FromLiteralKey<K extends TLiteralValue, T extends TSchema>(K: K, T: T, options: ObjectOptions): FromLiteralKey<K, T>;
36
36
  type FromStringKey<_ extends TString, T extends TSchema> = (Ensure<TRecord<TString, T>>);
37
- declare function FromStringKey<K extends TString, T extends TSchema>(K: K, T: T): FromStringKey<K, T>;
37
+ declare function FromStringKey<K extends TString, T extends TSchema>(K: K, T: T, options: ObjectOptions): FromStringKey<K, T>;
38
38
  type FromIntegerKey<_ extends TSchema, T extends TSchema> = (Ensure<TRecord<TNumber, T>>);
39
- declare function FromIntegerKey<K extends TInteger, T extends TSchema>(_: K, T: T): FromIntegerKey<K, T>;
39
+ declare function FromIntegerKey<K extends TInteger, T extends TSchema>(_: K, T: T, options: ObjectOptions): FromIntegerKey<K, T>;
40
40
  type FromNumberKey<_ extends TSchema, T extends TSchema> = (Ensure<TRecord<TNumber, T>>);
41
- declare function FromNumberKey<K extends TNumber, T extends TSchema>(_: K, T: T): FromIntegerKey<K, T>;
42
- export type RecordResolve<K extends TSchema, T extends TSchema> = K extends TEnum<infer S> ? FromEnumKey<S, T> : K extends TUnion<infer S> ? FromUnionKey<S, T> : K extends TTemplateLiteral ? FromTemplateLiteralKey<K, T> : K extends TLiteral<infer S> ? FromLiteralKey<S, T> : K extends TInteger ? FromIntegerKey<K, T> : K extends TNumber ? FromNumberKey<K, T> : K extends TString ? FromStringKey<K, T> : TNever;
41
+ declare function FromNumberKey<K extends TNumber, T extends TSchema>(_: K, T: T, options: ObjectOptions): FromIntegerKey<K, T>;
42
+ type RecordStatic<K extends TSchema, T extends TSchema, P extends unknown[]> = (Record<Assert<Static<K>, PropertyKey>, Static<T, P>>);
43
43
  export interface TRecord<K extends TSchema = TSchema, T extends TSchema = TSchema> extends TSchema {
44
44
  [Kind]: 'Record';
45
- static: Record<Assert<Static<K>, string | number>, Static<T, this['params']>>;
45
+ static: RecordStatic<K, T, this['params']>;
46
46
  type: 'object';
47
47
  patternProperties: {
48
48
  [pattern: string]: T;
49
49
  };
50
50
  additionalProperties: TAdditionalProperties;
51
51
  }
52
+ export type TRecordOrObject<K extends TSchema, T extends TSchema> = K extends TTemplateLiteral ? FromTemplateLiteralKey<K, T> : K extends TEnum<infer S> ? FromEnumKey<S, T> : K extends TUnion<infer S> ? FromUnionKey<S, T> : K extends TLiteral<infer S> ? FromLiteralKey<S, T> : K extends TInteger ? FromIntegerKey<K, T> : K extends TNumber ? FromNumberKey<K, T> : K extends TString ? FromStringKey<K, T> : TNever;
52
53
  /** `[Json]` Creates a Record type */
53
- export declare function Record<K extends TSchema, T extends TSchema>(K: K, T: T, options?: ObjectOptions): RecordResolve<K, T>;
54
+ export declare function Record<K extends TSchema, T extends TSchema>(K: K, T: T, options?: ObjectOptions): TRecordOrObject<K, T>;
54
55
  export {};
@@ -1,30 +1,3 @@
1
- /*--------------------------------------------------------------------------
2
-
3
- @sinclair/typebox/type
4
-
5
- The MIT License (MIT)
6
-
7
- Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
8
-
9
- Permission is hereby granted, free of charge, to any person obtaining a copy
10
- of this software and associated documentation files (the "Software"), to deal
11
- in the Software without restriction, including without limitation the rights
12
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
- copies of the Software, and to permit persons to whom the Software is
14
- furnished to do so, subject to the following conditions:
15
-
16
- The above copyright notice and this permission notice shall be included in
17
- all copies or substantial portions of the Software.
18
-
19
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
- THE SOFTWARE.
26
-
27
- ---------------------------------------------------------------------------*/
28
1
  import { Object } from '../object/index.mjs';
29
2
  import { Never } from '../never/index.mjs';
30
3
  import { Union } from '../union/index.mjs';
@@ -38,62 +11,66 @@ import { IsUndefined } from '../guard/value.mjs';
38
11
  // TypeGuard
39
12
  // ------------------------------------------------------------------
40
13
  // prettier-ignore
41
- import { TInteger as IsIntegerType, TLiteral as IsLiteralType, TNumber as IsNumberType, TString as IsStringType, TTemplateLiteral as IsTemplateLiteralType, TUnion as IsUnionType, } from '../guard/type.mjs';
14
+ import { IsInteger, IsLiteral, IsNumber, IsString, IsTemplateLiteral, IsUnion } from '../guard/type.mjs';
42
15
  // ------------------------------------------------------------------
43
- // FromPattern
16
+ // RecordCreateFromPattern
44
17
  // ------------------------------------------------------------------
45
18
  // prettier-ignore
46
- function FromPattern(pattern, T) {
47
- return { [Kind]: 'Record', type: 'object', patternProperties: { [pattern]: CloneType(T) } };
19
+ function RecordCreateFromPattern(pattern, T, options) {
20
+ return {
21
+ ...options,
22
+ [Kind]: 'Record',
23
+ type: 'object',
24
+ patternProperties: { [pattern]: CloneType(T) }
25
+ };
48
26
  }
49
27
  // ------------------------------------------------------------------
50
- // FromKeys
28
+ // RecordCreateFromKeys
51
29
  // ------------------------------------------------------------------
52
30
  // prettier-ignore
53
- function FromKeys(keys, T) {
54
- const properties = keys.reduce((acc, key) => ({ ...acc, [key]: CloneType(T) }), {});
55
- return Object(properties, { [Hint]: 'Record' });
31
+ function RecordCreateFromKeys(K, T, options) {
32
+ const P = K.reduce((Acc, K) => ({ ...Acc, [K]: CloneType(T) }), {});
33
+ return Object(P, { ...options, [Hint]: 'Record' });
56
34
  }
57
35
  // prettier-ignore
58
- function FromTemplateLiteralKey(K, T) {
36
+ function FromTemplateLiteralKey(K, T, options) {
59
37
  const expression = TemplateLiteralParseExact(K.pattern);
60
38
  return (IsTemplateLiteralFinite(expression)
61
- ? FromKeys(IndexPropertyKeys(K), T)
62
- : FromPattern(K.pattern, T));
39
+ ? RecordCreateFromKeys(IndexPropertyKeys(K), T, options)
40
+ : RecordCreateFromPattern(K.pattern, T, options));
63
41
  }
64
42
  // prettier-ignore
65
- function FromUnionKey(K, T) {
66
- return FromKeys(IndexPropertyKeys(Union(K)), T);
43
+ function FromUnionKey(K, T, options) {
44
+ return RecordCreateFromKeys(IndexPropertyKeys(Union(K)), T, options);
67
45
  }
68
46
  // prettier-ignore
69
- function FromLiteralKey(K, T) {
70
- return FromKeys([K.toString()], T);
47
+ function FromLiteralKey(K, T, options) {
48
+ return RecordCreateFromKeys([K.toString()], T, options);
71
49
  }
72
50
  // prettier-ignore
73
- function FromStringKey(K, T) {
51
+ function FromStringKey(K, T, options) {
74
52
  const pattern = IsUndefined(K.pattern) ? PatternStringExact : K.pattern;
75
- return FromPattern(pattern, T);
53
+ return RecordCreateFromPattern(pattern, T, options);
76
54
  }
77
55
  // prettier-ignore
78
- function FromIntegerKey(_, T) {
79
- return FromPattern(PatternNumberExact, T);
56
+ function FromIntegerKey(_, T, options) {
57
+ return RecordCreateFromPattern(PatternNumberExact, T, options);
80
58
  }
81
59
  // prettier-ignore
82
- function FromNumberKey(_, T) {
83
- return FromPattern(PatternNumberExact, T);
60
+ function FromNumberKey(_, T, options) {
61
+ return RecordCreateFromPattern(PatternNumberExact, T, options);
84
62
  }
85
- // prettier-ignore
86
- function RecordResolve(K, T) {
87
- return (IsUnionType(K) ? FromUnionKey(K.anyOf, T) :
88
- IsTemplateLiteralType(K) ? FromTemplateLiteralKey(K, T) :
89
- IsLiteralType(K) ? FromLiteralKey(K.const, T) :
90
- IsStringType(K) ? FromStringKey(K, T) :
91
- IsIntegerType(K) ? FromIntegerKey(K, T) :
92
- IsNumberType(K) ? FromNumberKey(K, T) :
93
- Never());
94
- }
95
- // prettier-ignore
63
+ // ------------------------------------------------------------------
64
+ // TRecordOrObject
65
+ // ------------------------------------------------------------------
96
66
  /** `[Json]` Creates a Record type */
97
67
  export function Record(K, T, options = {}) {
98
- return CloneType(RecordResolve(K, T), options);
68
+ // prettier-ignore
69
+ return (IsUnion(K) ? FromUnionKey(K.anyOf, T, options) :
70
+ IsTemplateLiteral(K) ? FromTemplateLiteralKey(K, T, options) :
71
+ IsLiteral(K) ? FromLiteralKey(K.const, T, options) :
72
+ IsString(K) ? FromStringKey(K, T, options) :
73
+ IsInteger(K) ? FromIntegerKey(K, T, options) :
74
+ IsNumber(K) ? FromNumberKey(K, T, options) :
75
+ Never(options));
99
76
  }
@@ -1,28 +1 @@
1
- /*--------------------------------------------------------------------------
2
-
3
- @sinclair/typebox/type
4
-
5
- The MIT License (MIT)
6
-
7
- Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
8
-
9
- Permission is hereby granted, free of charge, to any person obtaining a copy
10
- of this software and associated documentation files (the "Software"), to deal
11
- in the Software without restriction, including without limitation the rights
12
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
- copies of the Software, and to permit persons to whom the Software is
14
- furnished to do so, subject to the following conditions:
15
-
16
- The above copyright notice and this permission notice shall be included in
17
- all copies or substantial portions of the Software.
18
-
19
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
- THE SOFTWARE.
26
-
27
- ---------------------------------------------------------------------------*/
28
1
  export * from './recursive.mjs';
@@ -1,30 +1,3 @@
1
- /*--------------------------------------------------------------------------
2
-
3
- @sinclair/typebox/type
4
-
5
- The MIT License (MIT)
6
-
7
- Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
8
-
9
- Permission is hereby granted, free of charge, to any person obtaining a copy
10
- of this software and associated documentation files (the "Software"), to deal
11
- in the Software without restriction, including without limitation the rights
12
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
- copies of the Software, and to permit persons to whom the Software is
14
- furnished to do so, subject to the following conditions:
15
-
16
- The above copyright notice and this permission notice shall be included in
17
- all copies or substantial portions of the Software.
18
-
19
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
- THE SOFTWARE.
26
-
27
- ---------------------------------------------------------------------------*/
28
1
  import { CloneType } from '../clone/type.mjs';
29
2
  import { IsUndefined } from '../guard/value.mjs';
30
3
  import { Kind, Hint } from '../symbols/index.mjs';
@@ -1,28 +1 @@
1
- /*--------------------------------------------------------------------------
2
-
3
- @sinclair/typebox/type
4
-
5
- The MIT License (MIT)
6
-
7
- Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
8
-
9
- Permission is hereby granted, free of charge, to any person obtaining a copy
10
- of this software and associated documentation files (the "Software"), to deal
11
- in the Software without restriction, including without limitation the rights
12
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
- copies of the Software, and to permit persons to whom the Software is
14
- furnished to do so, subject to the following conditions:
15
-
16
- The above copyright notice and this permission notice shall be included in
17
- all copies or substantial portions of the Software.
18
-
19
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
- THE SOFTWARE.
26
-
27
- ---------------------------------------------------------------------------*/
28
1
  export * from './ref.mjs';
@@ -1,30 +1,3 @@
1
- /*--------------------------------------------------------------------------
2
-
3
- @sinclair/typebox/type
4
-
5
- The MIT License (MIT)
6
-
7
- Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
8
-
9
- Permission is hereby granted, free of charge, to any person obtaining a copy
10
- of this software and associated documentation files (the "Software"), to deal
11
- in the Software without restriction, including without limitation the rights
12
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
- copies of the Software, and to permit persons to whom the Software is
14
- furnished to do so, subject to the following conditions:
15
-
16
- The above copyright notice and this permission notice shall be included in
17
- all copies or substantial portions of the Software.
18
-
19
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
- THE SOFTWARE.
26
-
27
- ---------------------------------------------------------------------------*/
28
1
  import { Kind } from '../symbols/index.mjs';
29
2
  import { IsString, IsUndefined } from '../guard/value.mjs';
30
3
  /** `[Json]` Creates a Ref type. */
@@ -1,28 +1 @@
1
- /*--------------------------------------------------------------------------
2
-
3
- @sinclair/typebox/type
4
-
5
- The MIT License (MIT)
6
-
7
- Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
8
-
9
- Permission is hereby granted, free of charge, to any person obtaining a copy
10
- of this software and associated documentation files (the "Software"), to deal
11
- in the Software without restriction, including without limitation the rights
12
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
- copies of the Software, and to permit persons to whom the Software is
14
- furnished to do so, subject to the following conditions:
15
-
16
- The above copyright notice and this permission notice shall be included in
17
- all copies or substantial portions of the Software.
18
-
19
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
- THE SOFTWARE.
26
-
27
- ---------------------------------------------------------------------------*/
28
1
  export * from './regexp.mjs';
@@ -1,30 +1,3 @@
1
- /*--------------------------------------------------------------------------
2
-
3
- @sinclair/typebox/type
4
-
5
- The MIT License (MIT)
6
-
7
- Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
8
-
9
- Permission is hereby granted, free of charge, to any person obtaining a copy
10
- of this software and associated documentation files (the "Software"), to deal
11
- in the Software without restriction, including without limitation the rights
12
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
- copies of the Software, and to permit persons to whom the Software is
14
- furnished to do so, subject to the following conditions:
15
-
16
- The above copyright notice and this permission notice shall be included in
17
- all copies or substantial portions of the Software.
18
-
19
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
- THE SOFTWARE.
26
-
27
- ---------------------------------------------------------------------------*/
28
1
  import { IsString } from '../guard/value.mjs';
29
2
  import { Kind } from '../symbols/index.mjs';
30
3
  /** `[JavaScript]` Creates a String type */
@@ -1,30 +1,3 @@
1
- /*--------------------------------------------------------------------------
2
-
3
- @sinclair/typebox/type
4
-
5
- The MIT License (MIT)
6
-
7
- Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
8
-
9
- Permission is hereby granted, free of charge, to any person obtaining a copy
10
- of this software and associated documentation files (the "Software"), to deal
11
- in the Software without restriction, including without limitation the rights
12
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
- copies of the Software, and to permit persons to whom the Software is
14
- furnished to do so, subject to the following conditions:
15
-
16
- The above copyright notice and this permission notice shall be included in
17
- all copies or substantial portions of the Software.
18
-
19
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
- THE SOFTWARE.
26
-
27
- ---------------------------------------------------------------------------*/
28
1
  /** A registry for user defined string formats */
29
2
  const map = new Map();
30
3
  /** Returns the entries in this registry */
@@ -1,29 +1,2 @@
1
- /*--------------------------------------------------------------------------
2
-
3
- @sinclair/typebox/type
4
-
5
- The MIT License (MIT)
6
-
7
- Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
8
-
9
- Permission is hereby granted, free of charge, to any person obtaining a copy
10
- of this software and associated documentation files (the "Software"), to deal
11
- in the Software without restriction, including without limitation the rights
12
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
- copies of the Software, and to permit persons to whom the Software is
14
- furnished to do so, subject to the following conditions:
15
-
16
- The above copyright notice and this permission notice shall be included in
17
- all copies or substantial portions of the Software.
18
-
19
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
- THE SOFTWARE.
26
-
27
- ---------------------------------------------------------------------------*/
28
1
  export * as FormatRegistry from './format.mjs';
29
2
  export * as TypeRegistry from './type.mjs';
@@ -1,30 +1,3 @@
1
- /*--------------------------------------------------------------------------
2
-
3
- @sinclair/typebox/type
4
-
5
- The MIT License (MIT)
6
-
7
- Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
8
-
9
- Permission is hereby granted, free of charge, to any person obtaining a copy
10
- of this software and associated documentation files (the "Software"), to deal
11
- in the Software without restriction, including without limitation the rights
12
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
- copies of the Software, and to permit persons to whom the Software is
14
- furnished to do so, subject to the following conditions:
15
-
16
- The above copyright notice and this permission notice shall be included in
17
- all copies or substantial portions of the Software.
18
-
19
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
- THE SOFTWARE.
26
-
27
- ---------------------------------------------------------------------------*/
28
1
  /** A registry for user defined types */
29
2
  const map = new Map();
30
3
  /** Returns the entries in this registry */
@@ -1,29 +1,2 @@
1
- /*--------------------------------------------------------------------------
2
-
3
- @sinclair/typebox/type
4
-
5
- The MIT License (MIT)
6
-
7
- Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
8
-
9
- Permission is hereby granted, free of charge, to any person obtaining a copy
10
- of this software and associated documentation files (the "Software"), to deal
11
- in the Software without restriction, including without limitation the rights
12
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
- copies of the Software, and to permit persons to whom the Software is
14
- furnished to do so, subject to the following conditions:
15
-
16
- The above copyright notice and this permission notice shall be included in
17
- all copies or substantial portions of the Software.
18
-
19
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
- THE SOFTWARE.
26
-
27
- ---------------------------------------------------------------------------*/
28
1
  export * from './required-from-mapped-result.mjs';
29
2
  export * from './required.mjs';
@@ -1,30 +1,3 @@
1
- /*--------------------------------------------------------------------------
2
-
3
- @sinclair/typebox/type
4
-
5
- The MIT License (MIT)
6
-
7
- Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
8
-
9
- Permission is hereby granted, free of charge, to any person obtaining a copy
10
- of this software and associated documentation files (the "Software"), to deal
11
- in the Software without restriction, including without limitation the rights
12
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
- copies of the Software, and to permit persons to whom the Software is
14
- furnished to do so, subject to the following conditions:
15
-
16
- The above copyright notice and this permission notice shall be included in
17
- all copies or substantial portions of the Software.
18
-
19
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
- THE SOFTWARE.
26
-
27
- ---------------------------------------------------------------------------*/
28
1
  import { MappedResult } from '../mapped/index.mjs';
29
2
  import { Required } from './required.mjs';
30
3
  // prettier-ignore
@@ -1,30 +1,3 @@
1
- /*--------------------------------------------------------------------------
2
-
3
- @sinclair/typebox/type
4
-
5
- The MIT License (MIT)
6
-
7
- Copyright (c) 2017-2023 Haydn Paterson (sinclair) <haydn.developer@gmail.com>
8
-
9
- Permission is hereby granted, free of charge, to any person obtaining a copy
10
- of this software and associated documentation files (the "Software"), to deal
11
- in the Software without restriction, including without limitation the rights
12
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
13
- copies of the Software, and to permit persons to whom the Software is
14
- furnished to do so, subject to the following conditions:
15
-
16
- The above copyright notice and this permission notice shall be included in
17
- all copies or substantial portions of the Software.
18
-
19
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
20
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
21
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
22
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
23
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
24
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
25
- THE SOFTWARE.
26
-
27
- ---------------------------------------------------------------------------*/
28
1
  import { Intersect } from '../intersect/index.mjs';
29
2
  import { Union } from '../union/index.mjs';
30
3
  import { Object } from '../object/index.mjs';
@@ -36,7 +9,7 @@ import { RequiredFromMappedResult } from './required-from-mapped-result.mjs';
36
9
  // TypeGuard
37
10
  // ------------------------------------------------------------------
38
11
  // prettier-ignore
39
- import { TMappedResult as IsMappedResultType, TIntersect as IsIntersectType, TUnion as IsUnionType, TObject as IsObjectType } from '../guard/type.mjs';
12
+ import { IsMappedResult, IsIntersect, IsUnion, IsObject } from '../guard/type.mjs';
40
13
  // prettier-ignore
41
14
  function FromIntersect(T) {
42
15
  const [L, ...R] = T;
@@ -59,14 +32,14 @@ function FromProperties(T) {
59
32
  }
60
33
  // prettier-ignore
61
34
  function RequiredResolve(T) {
62
- return (IsIntersectType(T) ? Intersect(FromIntersect(T.allOf)) :
63
- IsUnionType(T) ? Union(FromUnion(T.anyOf)) :
64
- IsObjectType(T) ? Object(FromProperties(T.properties)) :
35
+ return (IsIntersect(T) ? Intersect(FromIntersect(T.allOf)) :
36
+ IsUnion(T) ? Union(FromUnion(T.anyOf)) :
37
+ IsObject(T) ? Object(FromProperties(T.properties)) :
65
38
  Object({}));
66
39
  }
67
40
  /** `[Json]` Constructs a type where all properties are required */
68
41
  export function Required(T, options = {}) {
69
- if (IsMappedResultType(T)) {
42
+ if (IsMappedResult(T)) {
70
43
  return RequiredFromMappedResult(T, options);
71
44
  }
72
45
  else {