@oxog/vld 1.5.0 → 2.0.1

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 (279) hide show
  1. package/CHANGELOG.md +116 -0
  2. package/README.md +558 -517
  3. package/dist/chunks/bigint-ZKkWLdmi.js +1628 -0
  4. package/dist/chunks/bigint-ZKkWLdmi.js.map +1 -0
  5. package/dist/{coercion/string.js → chunks/date-7Iz2BGsL.js} +271 -5
  6. package/dist/chunks/date-7Iz2BGsL.js.map +1 -0
  7. package/dist/chunks/index-BoV-4S1F.js +894 -0
  8. package/dist/chunks/index-BoV-4S1F.js.map +1 -0
  9. package/dist/chunks/index-eWXdjyyy.js +426 -0
  10. package/dist/chunks/index-eWXdjyyy.js.map +1 -0
  11. package/dist/chunks/json-nIhyRPOU.js +1934 -0
  12. package/dist/chunks/json-nIhyRPOU.js.map +1 -0
  13. package/dist/{validators/unknown.js → chunks/unknown-CjSRcELI.js} +6 -3
  14. package/dist/chunks/unknown-CjSRcELI.js.map +1 -0
  15. package/dist/cjs/errors.cjs +387 -0
  16. package/dist/cjs/errors.cjs.map +1 -0
  17. package/dist/cjs/index.cjs +9815 -0
  18. package/dist/cjs/index.cjs.map +1 -0
  19. package/dist/cjs/locales/index.cjs +2877 -0
  20. package/dist/cjs/locales/index.cjs.map +1 -0
  21. package/dist/cjs/locales/lazy.cjs +3169 -0
  22. package/dist/cjs/locales/lazy.cjs.map +1 -0
  23. package/dist/cjs/mini.cjs +7161 -0
  24. package/dist/cjs/mini.cjs.map +1 -0
  25. package/dist/codecs/index.js +4 -275
  26. package/dist/codecs/index.js.map +1 -1
  27. package/dist/coercion/index.d.ts +11 -0
  28. package/dist/coercion/index.d.ts.map +1 -0
  29. package/dist/coercion/{bigint.js → index.js} +7 -4
  30. package/dist/coercion/index.js.map +1 -0
  31. package/dist/compat/emitter.js +6 -4
  32. package/dist/compat/emitter.js.map +1 -1
  33. package/dist/compat/result.js +21 -19
  34. package/dist/compat/result.js.map +1 -1
  35. package/dist/errors.js +13 -10
  36. package/dist/errors.js.map +1 -1
  37. package/dist/index.js +225 -126
  38. package/dist/index.js.map +1 -1
  39. package/dist/kernel.js +10 -7
  40. package/dist/kernel.js.map +1 -1
  41. package/dist/locales/af.js +4 -2
  42. package/dist/locales/af.js.map +1 -1
  43. package/dist/locales/ar.js +4 -2
  44. package/dist/locales/ar.js.map +1 -1
  45. package/dist/locales/bn.js +4 -2
  46. package/dist/locales/bn.js.map +1 -1
  47. package/dist/locales/da.js +4 -2
  48. package/dist/locales/da.js.map +1 -1
  49. package/dist/locales/de.js +4 -2
  50. package/dist/locales/de.js.map +1 -1
  51. package/dist/locales/en.js +4 -2
  52. package/dist/locales/en.js.map +1 -1
  53. package/dist/locales/es-MX.js +4 -2
  54. package/dist/locales/es-MX.js.map +1 -1
  55. package/dist/locales/es.js +4 -2
  56. package/dist/locales/es.js.map +1 -1
  57. package/dist/locales/fi.js +4 -2
  58. package/dist/locales/fi.js.map +1 -1
  59. package/dist/locales/fr.js +4 -2
  60. package/dist/locales/fr.js.map +1 -1
  61. package/dist/locales/hi.js +4 -2
  62. package/dist/locales/hi.js.map +1 -1
  63. package/dist/locales/id.js +4 -2
  64. package/dist/locales/id.js.map +1 -1
  65. package/dist/locales/index.js +3 -91
  66. package/dist/locales/index.js.map +1 -1
  67. package/dist/locales/it.js +4 -2
  68. package/dist/locales/it.js.map +1 -1
  69. package/dist/locales/ja.js +4 -2
  70. package/dist/locales/ja.js.map +1 -1
  71. package/dist/locales/ko.js +4 -2
  72. package/dist/locales/ko.js.map +1 -1
  73. package/dist/locales/lazy.d.ts +111 -0
  74. package/dist/locales/lazy.d.ts.map +1 -0
  75. package/dist/locales/lazy.js +220 -0
  76. package/dist/locales/lazy.js.map +1 -0
  77. package/dist/locales/nl.js +4 -2
  78. package/dist/locales/nl.js.map +1 -1
  79. package/dist/locales/no.js +4 -2
  80. package/dist/locales/no.js.map +1 -1
  81. package/dist/locales/pl.js +4 -2
  82. package/dist/locales/pl.js.map +1 -1
  83. package/dist/locales/pt-BR.js +4 -2
  84. package/dist/locales/pt-BR.js.map +1 -1
  85. package/dist/locales/pt.js +4 -2
  86. package/dist/locales/pt.js.map +1 -1
  87. package/dist/locales/ru.js +4 -2
  88. package/dist/locales/ru.js.map +1 -1
  89. package/dist/locales/sv.js +4 -2
  90. package/dist/locales/sv.js.map +1 -1
  91. package/dist/locales/sw.js +4 -2
  92. package/dist/locales/sw.js.map +1 -1
  93. package/dist/locales/th.js +4 -2
  94. package/dist/locales/th.js.map +1 -1
  95. package/dist/locales/tr.js +4 -2
  96. package/dist/locales/tr.js.map +1 -1
  97. package/dist/locales/vi.js +4 -2
  98. package/dist/locales/vi.js.map +1 -1
  99. package/dist/locales/zh.js +4 -2
  100. package/dist/locales/zh.js.map +1 -1
  101. package/dist/mini.d.ts +182 -0
  102. package/dist/mini.d.ts.map +1 -0
  103. package/dist/mini.js +132 -0
  104. package/dist/mini.js.map +1 -0
  105. package/dist/pigment.js +8 -7
  106. package/dist/pigment.js.map +1 -1
  107. package/dist/validators/index.js +5 -45
  108. package/dist/validators/index.js.map +1 -1
  109. package/package.json +69 -11
  110. package/dist/cli/benchmark.d.ts +0 -15
  111. package/dist/cli/benchmark.d.ts.map +0 -1
  112. package/dist/cli/benchmark.js +0 -248
  113. package/dist/cli/benchmark.js.map +0 -1
  114. package/dist/cli/bin.js +0 -35
  115. package/dist/cli/bin.js.map +0 -1
  116. package/dist/cli/commands/benchmark.js +0 -204
  117. package/dist/cli/commands/benchmark.js.map +0 -1
  118. package/dist/cli/commands/validate.js +0 -157
  119. package/dist/cli/commands/validate.js.map +0 -1
  120. package/dist/cli/generate.d.ts +0 -14
  121. package/dist/cli/generate.d.ts.map +0 -1
  122. package/dist/cli/generate.js +0 -233
  123. package/dist/cli/generate.js.map +0 -1
  124. package/dist/cli/index.js +0 -182
  125. package/dist/cli/index.js.map +0 -1
  126. package/dist/cli/validate.d.ts +0 -15
  127. package/dist/cli/validate.d.ts.map +0 -1
  128. package/dist/cli/validate.js +0 -162
  129. package/dist/cli/validate.js.map +0 -1
  130. package/dist/coercion/bigint.js.map +0 -1
  131. package/dist/coercion/boolean.js +0 -59
  132. package/dist/coercion/boolean.js.map +0 -1
  133. package/dist/coercion/date.js +0 -52
  134. package/dist/coercion/date.js.map +0 -1
  135. package/dist/coercion/number.js +0 -160
  136. package/dist/coercion/number.js.map +0 -1
  137. package/dist/coercion/string.js.map +0 -1
  138. package/dist/compat/index.js +0 -14
  139. package/dist/compat/index.js.map +0 -1
  140. package/dist/events.js +0 -8
  141. package/dist/events.js.map +0 -1
  142. package/dist/guards.d.ts +0 -143
  143. package/dist/guards.d.ts.map +0 -1
  144. package/dist/guards.js +0 -238
  145. package/dist/guards.js.map +0 -1
  146. package/dist/index-new.d.ts.map +0 -1
  147. package/dist/locales/backup-en.js +0 -105
  148. package/dist/locales/backup-en.js.map +0 -1
  149. package/dist/locales/types.js +0 -2
  150. package/dist/locales/types.js.map +0 -1
  151. package/dist/locales.d.ts +0 -54
  152. package/dist/locales.d.ts.map +0 -1
  153. package/dist/locales.js +0 -732
  154. package/dist/locales.js.map +0 -1
  155. package/dist/logger.js +0 -184
  156. package/dist/logger.js.map +0 -1
  157. package/dist/plugins/codecs.d.ts +0 -17
  158. package/dist/plugins/codecs.d.ts.map +0 -1
  159. package/dist/plugins/codecs.js +0 -29
  160. package/dist/plugins/codecs.js.map +0 -1
  161. package/dist/plugins/coercion.d.ts +0 -13
  162. package/dist/plugins/coercion.d.ts.map +0 -1
  163. package/dist/plugins/coercion.js +0 -34
  164. package/dist/plugins/coercion.js.map +0 -1
  165. package/dist/plugins/core-validators.d.ts +0 -13
  166. package/dist/plugins/core-validators.d.ts.map +0 -1
  167. package/dist/plugins/core-validators.js +0 -96
  168. package/dist/plugins/core-validators.js.map +0 -1
  169. package/dist/plugins/index.js +0 -8
  170. package/dist/plugins/index.js.map +0 -1
  171. package/dist/plugins/kernel.d.ts +0 -29
  172. package/dist/plugins/kernel.d.ts.map +0 -1
  173. package/dist/plugins/kernel.js +0 -486
  174. package/dist/plugins/kernel.js.map +0 -1
  175. package/dist/plugins/types.js +0 -8
  176. package/dist/plugins/types.js.map +0 -1
  177. package/dist/style.d.ts +0 -123
  178. package/dist/style.d.ts.map +0 -1
  179. package/dist/style.js +0 -369
  180. package/dist/style.js.map +0 -1
  181. package/dist/utils/codec-utils.js +0 -229
  182. package/dist/utils/codec-utils.js.map +0 -1
  183. package/dist/utils/deep-merge.js +0 -76
  184. package/dist/utils/deep-merge.js.map +0 -1
  185. package/dist/utils/ip-validation.js +0 -98
  186. package/dist/utils/ip-validation.js.map +0 -1
  187. package/dist/utils/security.js +0 -61
  188. package/dist/utils/security.js.map +0 -1
  189. package/dist/validators/any.js +0 -25
  190. package/dist/validators/any.js.map +0 -1
  191. package/dist/validators/array.js +0 -190
  192. package/dist/validators/array.js.map +0 -1
  193. package/dist/validators/base.js +0 -499
  194. package/dist/validators/base.js.map +0 -1
  195. package/dist/validators/base64.js +0 -65
  196. package/dist/validators/base64.js.map +0 -1
  197. package/dist/validators/bigint.js +0 -142
  198. package/dist/validators/bigint.js.map +0 -1
  199. package/dist/validators/boolean.js +0 -114
  200. package/dist/validators/boolean.js.map +0 -1
  201. package/dist/validators/codec.js +0 -182
  202. package/dist/validators/codec.js.map +0 -1
  203. package/dist/validators/custom.js +0 -50
  204. package/dist/validators/custom.js.map +0 -1
  205. package/dist/validators/date.js +0 -227
  206. package/dist/validators/date.js.map +0 -1
  207. package/dist/validators/discriminated-union.js +0 -98
  208. package/dist/validators/discriminated-union.js.map +0 -1
  209. package/dist/validators/enum.js +0 -82
  210. package/dist/validators/enum.js.map +0 -1
  211. package/dist/validators/file.js +0 -114
  212. package/dist/validators/file.js.map +0 -1
  213. package/dist/validators/function.js +0 -45
  214. package/dist/validators/function.js.map +0 -1
  215. package/dist/validators/hex.js +0 -62
  216. package/dist/validators/hex.js.map +0 -1
  217. package/dist/validators/intersection.js +0 -64
  218. package/dist/validators/intersection.js.map +0 -1
  219. package/dist/validators/json.js +0 -64
  220. package/dist/validators/json.js.map +0 -1
  221. package/dist/validators/lazy.js +0 -42
  222. package/dist/validators/lazy.js.map +0 -1
  223. package/dist/validators/literal.js +0 -45
  224. package/dist/validators/literal.js.map +0 -1
  225. package/dist/validators/map.js +0 -54
  226. package/dist/validators/map.js.map +0 -1
  227. package/dist/validators/nan.js +0 -32
  228. package/dist/validators/nan.js.map +0 -1
  229. package/dist/validators/never.js +0 -29
  230. package/dist/validators/never.js.map +0 -1
  231. package/dist/validators/null.js +0 -31
  232. package/dist/validators/null.js.map +0 -1
  233. package/dist/validators/number.js +0 -225
  234. package/dist/validators/number.js.map +0 -1
  235. package/dist/validators/object-optimized.d.ts +0 -23
  236. package/dist/validators/object-optimized.d.ts.map +0 -1
  237. package/dist/validators/object-optimized.js +0 -179
  238. package/dist/validators/object-optimized.js.map +0 -1
  239. package/dist/validators/object-ultra.d.ts +0 -34
  240. package/dist/validators/object-ultra.d.ts.map +0 -1
  241. package/dist/validators/object-ultra.js +0 -175
  242. package/dist/validators/object-ultra.js.map +0 -1
  243. package/dist/validators/object.js +0 -458
  244. package/dist/validators/object.js.map +0 -1
  245. package/dist/validators/record.js +0 -128
  246. package/dist/validators/record.js.map +0 -1
  247. package/dist/validators/set.js +0 -51
  248. package/dist/validators/set.js.map +0 -1
  249. package/dist/validators/string-bool.js +0 -127
  250. package/dist/validators/string-bool.js.map +0 -1
  251. package/dist/validators/string-formats.js +0 -120
  252. package/dist/validators/string-formats.js.map +0 -1
  253. package/dist/validators/string-ultra.d.ts +0 -49
  254. package/dist/validators/string-ultra.d.ts.map +0 -1
  255. package/dist/validators/string-ultra.js +0 -217
  256. package/dist/validators/string-ultra.js.map +0 -1
  257. package/dist/validators/string.js +0 -253
  258. package/dist/validators/string.js.map +0 -1
  259. package/dist/validators/symbol.js +0 -42
  260. package/dist/validators/symbol.js.map +0 -1
  261. package/dist/validators/template-literal.js +0 -102
  262. package/dist/validators/template-literal.js.map +0 -1
  263. package/dist/validators/tuple.js +0 -55
  264. package/dist/validators/tuple.js.map +0 -1
  265. package/dist/validators/uint8array.js +0 -98
  266. package/dist/validators/uint8array.js.map +0 -1
  267. package/dist/validators/undefined.js +0 -31
  268. package/dist/validators/undefined.js.map +0 -1
  269. package/dist/validators/union-optimized.d.ts +0 -15
  270. package/dist/validators/union-optimized.d.ts.map +0 -1
  271. package/dist/validators/union-optimized.js +0 -92
  272. package/dist/validators/union-optimized.js.map +0 -1
  273. package/dist/validators/union.js +0 -126
  274. package/dist/validators/union.js.map +0 -1
  275. package/dist/validators/unknown.js.map +0 -1
  276. package/dist/validators/void.js +0 -35
  277. package/dist/validators/void.js.map +0 -1
  278. package/dist/validators/xor.js +0 -64
  279. package/dist/validators/xor.js.map +0 -1
package/dist/mini.d.ts ADDED
@@ -0,0 +1,182 @@
1
+ /**
2
+ * VLD Mini - Tree-Shakable Functional API
3
+ *
4
+ * This module provides a functional, tree-shakable alternative to the main `v` object.
5
+ * Use this when bundle size is critical.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * import { string, number, object, optional } from '@oxog/vld/mini';
10
+ *
11
+ * const schema = object({
12
+ * name: string().min(1),
13
+ * age: optional(number().int())
14
+ * });
15
+ * ```
16
+ */
17
+ export { VldBase, ParseResult, VldRefine, VldTransform, VldDefault, VldCatch, VldOptional, VldNullable, VldNullish, VldPipe, VldReadonly, VldBrand, VldPreprocess, SuperRefineContext, VldSuperRefine } from './validators/base';
18
+ export { VldString } from './validators/string';
19
+ export { VldNumber } from './validators/number';
20
+ export { VldBoolean } from './validators/boolean';
21
+ export { VldDate } from './validators/date';
22
+ export { VldBigInt } from './validators/bigint';
23
+ export { VldSymbol } from './validators/symbol';
24
+ export { VldStringBool } from './validators/string-bool';
25
+ export { VldArray } from './validators/array';
26
+ export { VldObject } from './validators/object';
27
+ export { VldTuple } from './validators/tuple';
28
+ export { VldRecord } from './validators/record';
29
+ export { VldSet } from './validators/set';
30
+ export { VldMap } from './validators/map';
31
+ export { VldUnion } from './validators/union';
32
+ export { VldIntersection } from './validators/intersection';
33
+ export { VldLiteral } from './validators/literal';
34
+ export { VldEnum } from './validators/enum';
35
+ export { VldAny } from './validators/any';
36
+ export { VldUnknown } from './validators/unknown';
37
+ export { VldVoid } from './validators/void';
38
+ export { VldNever } from './validators/never';
39
+ export { VldNull } from './validators/null';
40
+ export { VldUndefined } from './validators/undefined';
41
+ export { VldNan } from './validators/nan';
42
+ export { VldLazy } from './validators/lazy';
43
+ export { VldDiscriminatedUnion } from './validators/discriminated-union';
44
+ export { VldXor } from './validators/xor';
45
+ export { VldJson } from './validators/json';
46
+ import type { VldBase } from './validators/base';
47
+ /** Infer the output type of a validator */
48
+ export type Infer<T extends VldBase<any, any>> = T extends VldBase<any, infer U> ? U : never;
49
+ /** Infer the input type of a validator */
50
+ export type Input<T extends VldBase<any, any>> = T extends VldBase<infer I, any> ? I : never;
51
+ /** Infer the output type of a validator (alias for Infer) */
52
+ export type Output<T extends VldBase<any, any>> = Infer<T>;
53
+ import { VldString } from './validators/string';
54
+ import { VldNumber } from './validators/number';
55
+ import { VldBoolean } from './validators/boolean';
56
+ import { VldDate } from './validators/date';
57
+ import { VldBigInt } from './validators/bigint';
58
+ import { VldSymbol } from './validators/symbol';
59
+ import { VldStringBool } from './validators/string-bool';
60
+ import { VldArray } from './validators/array';
61
+ import { VldObject } from './validators/object';
62
+ import { VldTuple } from './validators/tuple';
63
+ import { VldRecord } from './validators/record';
64
+ import { VldSet } from './validators/set';
65
+ import { VldMap } from './validators/map';
66
+ import { VldUnion } from './validators/union';
67
+ import { VldIntersection } from './validators/intersection';
68
+ import { VldLiteral } from './validators/literal';
69
+ import { VldEnum } from './validators/enum';
70
+ import { VldAny } from './validators/any';
71
+ import { VldUnknown } from './validators/unknown';
72
+ import { VldVoid } from './validators/void';
73
+ import { VldNever } from './validators/never';
74
+ import { VldNull } from './validators/null';
75
+ import { VldUndefined } from './validators/undefined';
76
+ import { VldNan } from './validators/nan';
77
+ import { VldLazy } from './validators/lazy';
78
+ import { VldDiscriminatedUnion } from './validators/discriminated-union';
79
+ import { VldXor } from './validators/xor';
80
+ import { VldJson } from './validators/json';
81
+ import { VldOptional, VldNullable, VldNullish, VldPreprocess } from './validators/base';
82
+ /** Create a string validator */
83
+ export declare const string: () => VldString;
84
+ /** Create a number validator */
85
+ export declare const number: () => VldNumber;
86
+ /** Create an integer validator */
87
+ export declare const int: () => VldNumber;
88
+ /** Create an int32 validator (-2147483648 to 2147483647) */
89
+ export declare const int32: () => VldNumber;
90
+ /** Create a boolean validator */
91
+ export declare const boolean: () => VldBoolean;
92
+ /** Create a date validator */
93
+ export declare const date: () => VldDate;
94
+ /** Create a bigint validator */
95
+ export declare const bigint: () => VldBigInt;
96
+ /** Create a symbol validator */
97
+ export declare const symbol: () => VldSymbol;
98
+ /** Create a string-to-boolean validator */
99
+ export declare const stringbool: (options?: {
100
+ truthy?: readonly string[];
101
+ falsy?: readonly string[];
102
+ caseSensitive?: boolean;
103
+ }) => VldStringBool;
104
+ /** Create an array validator */
105
+ export declare const array: <T>(item: VldBase<unknown, T>) => VldArray<T>;
106
+ /** Create an object validator */
107
+ export declare const object: <T extends Record<string, any>>(shape: { [K in keyof T]: VldBase<unknown, T[K]>; }) => VldObject<T>;
108
+ /** Create a strict object validator (no extra keys allowed) */
109
+ export declare const strictObject: <T extends Record<string, any>>(shape: { [K in keyof T]: VldBase<unknown, T[K]>; }) => VldObject<T>;
110
+ /** Create a loose object validator (extra keys passed through) */
111
+ export declare const looseObject: <T extends Record<string, any>>(shape: { [K in keyof T]: VldBase<unknown, T[K]>; }) => VldObject<T>;
112
+ /** Create a tuple validator */
113
+ export declare const tuple: <T extends readonly VldBase<any, any>[]>(...items: T) => VldTuple<[...T]>;
114
+ /** Create a record validator */
115
+ export declare const record: <T>(value: VldBase<unknown, T>) => VldRecord<T>;
116
+ /** Create a partial record validator */
117
+ export declare const partialRecord: <T>(value: VldBase<unknown, T>) => VldRecord<T | undefined>;
118
+ /** Create a loose record validator */
119
+ export declare const looseRecord: <T>(value: VldBase<unknown, T>) => VldBase<unknown, Record<string, T>>;
120
+ /** Create a set validator */
121
+ export declare const set: <T>(item: VldBase<unknown, T>) => VldSet<T>;
122
+ /** Create a map validator */
123
+ export declare const map: <K, V>(key: VldBase<unknown, K>, value: VldBase<unknown, V>) => VldMap<K, V>;
124
+ /** Create a union validator (value must match one of the validators) */
125
+ export declare const union: <T extends readonly VldBase<any, any>[]>(...validators: T) => VldUnion<[...T]>;
126
+ /** Create an intersection validator (value must match both validators) */
127
+ export declare const intersection: <A, B>(first: VldBase<unknown, A>, second: VldBase<unknown, B>) => VldIntersection<A, B>;
128
+ /** Create a discriminated union validator */
129
+ export declare const discriminatedUnion: <K extends string, T extends readonly VldBase<any, any>[]>(discriminator: K, ...options: T) => VldDiscriminatedUnion<K, any>;
130
+ /** Create an XOR validator (value must match exactly one of the validators) */
131
+ export declare const xor: <T extends readonly VldBase<any, any>[]>(...options: T) => VldXor<any>;
132
+ /** Create a literal validator */
133
+ export declare const literal: <T extends string | number | boolean | null | undefined>(value: T) => VldLiteral<T>;
134
+ /** Create an enum validator */
135
+ export declare const enumValidator: <T extends readonly [string, ...string[]]>(...values: T) => VldEnum<any>;
136
+ /** Create a validator that accepts any value */
137
+ export declare const any: () => VldAny;
138
+ /** Create a validator that accepts unknown values */
139
+ export declare const unknown: () => VldUnknown;
140
+ /** Create a void validator */
141
+ export declare const voidValidator: () => VldVoid;
142
+ /** Create a never validator (always fails) */
143
+ export declare const never: () => VldNever;
144
+ /** Create a null validator */
145
+ export declare const nullValidator: () => VldNull;
146
+ /** Create an undefined validator */
147
+ export declare const undefinedValidator: () => VldUndefined;
148
+ /** Create a NaN validator */
149
+ export declare const nan: () => VldNan;
150
+ /** Create a lazy validator for recursive schemas */
151
+ export declare const lazy: <T>(schemaGetter: () => VldBase<unknown, T>) => VldLazy<unknown, T>;
152
+ /** Create a JSON validator */
153
+ export declare const json: <T = unknown>(schema?: VldBase<unknown, T>) => VldJson<T>;
154
+ /** Make a validator optional (allows undefined) */
155
+ export declare const optional: <TInput, TOutput>(validator: VldBase<TInput, TOutput>) => VldOptional<TInput, TOutput>;
156
+ /** Make a validator nullable (allows null) */
157
+ export declare const nullable: <TInput, TOutput>(validator: VldBase<TInput, TOutput>) => VldNullable<TInput, TOutput>;
158
+ /** Make a validator nullish (allows null or undefined) */
159
+ export declare const nullish: <TInput, TOutput>(validator: VldBase<TInput, TOutput>) => VldNullish<TInput, TOutput>;
160
+ /** Preprocess input before validation */
161
+ export declare const preprocess: <TInput, TOutput>(preprocessor: (input: unknown) => unknown, schema: VldBase<TInput, TOutput>) => VldPreprocess<TInput, TOutput>;
162
+ import { VldCoerceString } from './coercion/string';
163
+ import { VldCoerceNumber } from './coercion/number';
164
+ import { VldCoerceBoolean } from './coercion/boolean';
165
+ import { VldCoerceDate } from './coercion/date';
166
+ import { VldCoerceBigInt } from './coercion/bigint';
167
+ /** Coercion validators - convert values to target type before validation */
168
+ export declare const coerce: {
169
+ /** Coerce to string */
170
+ string: () => VldCoerceString;
171
+ /** Coerce to number */
172
+ number: () => VldCoerceNumber;
173
+ /** Coerce to boolean */
174
+ boolean: () => VldCoerceBoolean;
175
+ /** Coerce to date */
176
+ date: () => VldCoerceDate;
177
+ /** Coerce to bigint */
178
+ bigint: () => VldCoerceBigInt;
179
+ };
180
+ /** NEVER constant for use in transforms - Zod 4 API parity */
181
+ export declare const NEVER: VldNever;
182
+ //# sourceMappingURL=mini.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mini.d.ts","sourceRoot":"","sources":["../src/mini.ts"],"names":[],"mappings":"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"}
package/dist/mini.js ADDED
@@ -0,0 +1,132 @@
1
+ import { V as VldString, a as VldNumber, b as VldBoolean, c as VldDate, d as VldBigInt, e as VldOptional, f as VldNullable, g as VldNullish, h as VldPreprocess } from './chunks/bigint-ZKkWLdmi.js';
2
+ export { i as VldBase, p as VldBrand, m as VldCatch, l as VldDefault, n as VldPipe, o as VldReadonly, j as VldRefine, q as VldSuperRefine, k as VldTransform } from './chunks/bigint-ZKkWLdmi.js';
3
+ import { V as VldSymbol, a as VldStringBool, b as VldArray, c as VldObject, d as VldTuple, e as VldRecord, f as VldSet, g as VldMap, h as VldUnion, i as VldIntersection, j as VldDiscriminatedUnion, k as VldXor, l as VldLiteral, m as VldEnum, n as VldAny, o as VldVoid, p as VldNever, q as VldNull, r as VldUndefined, s as VldNan, t as VldLazy, u as VldJson } from './chunks/json-nIhyRPOU.js';
4
+ import { V as VldUnknown } from './chunks/unknown-CjSRcELI.js';
5
+ import { V as VldCoerceDate, a as VldCoerceBoolean, b as VldCoerceNumber, c as VldCoerceString } from './chunks/date-7Iz2BGsL.js';
6
+ import { VldCoerceBigInt } from './coercion/index.js';
7
+
8
+ /**
9
+ * VLD Mini - Tree-Shakable Functional API
10
+ *
11
+ * This module provides a functional, tree-shakable alternative to the main `v` object.
12
+ * Use this when bundle size is critical.
13
+ *
14
+ * @example
15
+ * ```typescript
16
+ * import { string, number, object, optional } from '@oxog/vld/mini';
17
+ *
18
+ * const schema = object({
19
+ * name: string().min(1),
20
+ * age: optional(number().int())
21
+ * });
22
+ * ```
23
+ */
24
+ // ============================================
25
+ // Base Types & Classes
26
+ // ============================================
27
+ // --- Primitive Validators ---
28
+ /** Create a string validator */
29
+ const string = () => VldString.create();
30
+ /** Create a number validator */
31
+ const number = () => VldNumber.create();
32
+ /** Create an integer validator */
33
+ const int = () => VldNumber.create().int();
34
+ /** Create an int32 validator (-2147483648 to 2147483647) */
35
+ const int32 = () => VldNumber.create().int().min(-2147483648).max(2147483647);
36
+ /** Create a boolean validator */
37
+ const boolean = () => VldBoolean.create();
38
+ /** Create a date validator */
39
+ const date = () => VldDate.create();
40
+ /** Create a bigint validator */
41
+ const bigint = () => VldBigInt.create();
42
+ /** Create a symbol validator */
43
+ const symbol = () => VldSymbol.create();
44
+ /** Create a string-to-boolean validator */
45
+ const stringbool = (options) => VldStringBool.create(options);
46
+ // --- Complex Validators ---
47
+ /** Create an array validator */
48
+ const array = (item) => VldArray.create(item);
49
+ /** Create an object validator */
50
+ const object = (shape) => VldObject.create(shape);
51
+ /** Create a strict object validator (no extra keys allowed) */
52
+ const strictObject = (shape) => VldObject.create(shape).strict();
53
+ /** Create a loose object validator (extra keys passed through) */
54
+ const looseObject = (shape) => VldObject.create(shape).passthrough();
55
+ /** Create a tuple validator */
56
+ const tuple = (...items) => VldTuple.create(...items);
57
+ /** Create a record validator */
58
+ const record = (value) => VldRecord.create(value);
59
+ /** Create a partial record validator */
60
+ const partialRecord = (value) => VldRecord.create(value).partial();
61
+ /** Create a loose record validator */
62
+ const looseRecord = (value) => VldRecord.create(value).loose();
63
+ /** Create a set validator */
64
+ const set = (item) => VldSet.create(item);
65
+ /** Create a map validator */
66
+ const map = (key, value) => VldMap.create(key, value);
67
+ // --- Union & Intersection ---
68
+ /** Create a union validator (value must match one of the validators) */
69
+ const union = (...validators) => VldUnion.create(...validators);
70
+ /** Create an intersection validator (value must match both validators) */
71
+ const intersection = (first, second) => VldIntersection.create(first, second);
72
+ /** Create a discriminated union validator */
73
+ const discriminatedUnion = (discriminator, ...options) => VldDiscriminatedUnion.create(discriminator, [...options]);
74
+ /** Create an XOR validator (value must match exactly one of the validators) */
75
+ const xor = (...options) => VldXor.create([...options]);
76
+ // --- Literal & Enum ---
77
+ /** Create a literal validator */
78
+ const literal = (value) => VldLiteral.create(value);
79
+ /** Create an enum validator */
80
+ const enumValidator = (...values) => VldEnum.create(values);
81
+ // --- Special Validators ---
82
+ /** Create a validator that accepts any value */
83
+ const any = () => VldAny.create();
84
+ /** Create a validator that accepts unknown values */
85
+ const unknown = () => VldUnknown.create();
86
+ /** Create a void validator */
87
+ const voidValidator = () => VldVoid.create();
88
+ /** Create a never validator (always fails) */
89
+ const never = () => VldNever.create();
90
+ /** Create a null validator */
91
+ const nullValidator = () => VldNull.create();
92
+ /** Create an undefined validator */
93
+ const undefinedValidator = () => VldUndefined.create();
94
+ /** Create a NaN validator */
95
+ const nan = () => VldNan.create();
96
+ // --- Utility Validators ---
97
+ /** Create a lazy validator for recursive schemas */
98
+ const lazy = (schemaGetter) => VldLazy.create(schemaGetter);
99
+ /** Create a JSON validator */
100
+ const json = (schema) => VldJson.create(schema);
101
+ // ============================================
102
+ // Utility Functions (Wrappers)
103
+ // ============================================
104
+ /** Make a validator optional (allows undefined) */
105
+ const optional = (validator) => VldOptional.create(validator);
106
+ /** Make a validator nullable (allows null) */
107
+ const nullable = (validator) => VldNullable.create(validator);
108
+ /** Make a validator nullish (allows null or undefined) */
109
+ const nullish = (validator) => VldNullish.create(validator);
110
+ /** Preprocess input before validation */
111
+ const preprocess = (preprocessor, schema) => VldPreprocess.create(preprocessor, schema);
112
+ /** Coercion validators - convert values to target type before validation */
113
+ const coerce = {
114
+ /** Coerce to string */
115
+ string: () => VldCoerceString.create(),
116
+ /** Coerce to number */
117
+ number: () => VldCoerceNumber.create(),
118
+ /** Coerce to boolean */
119
+ boolean: () => VldCoerceBoolean.create(),
120
+ /** Coerce to date */
121
+ date: () => VldCoerceDate.create(),
122
+ /** Coerce to bigint */
123
+ bigint: () => VldCoerceBigInt.create(),
124
+ };
125
+ // ============================================
126
+ // NEVER Constant (for transforms)
127
+ // ============================================
128
+ /** NEVER constant for use in transforms - Zod 4 API parity */
129
+ const NEVER = VldNever.create();
130
+
131
+ export { NEVER, VldAny, VldArray, VldBigInt, VldBoolean, VldDate, VldDiscriminatedUnion, VldEnum, VldIntersection, VldJson, VldLazy, VldLiteral, VldMap, VldNan, VldNever, VldNull, VldNullable, VldNullish, VldNumber, VldObject, VldOptional, VldPreprocess, VldRecord, VldSet, VldString, VldStringBool, VldSymbol, VldTuple, VldUndefined, VldUnion, VldUnknown, VldVoid, VldXor, any, array, bigint, boolean, coerce, date, discriminatedUnion, enumValidator, int, int32, intersection, json, lazy, literal, looseObject, looseRecord, map, nan, never, nullValidator, nullable, nullish, number, object, optional, partialRecord, preprocess, record, set, strictObject, string, stringbool, symbol, tuple, undefinedValidator, union, unknown, voidValidator, xor };
132
+ //# sourceMappingURL=mini.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mini.js","sources":["../src/mini.ts"],"sourcesContent":["/**\r\n * VLD Mini - Tree-Shakable Functional API\r\n *\r\n * This module provides a functional, tree-shakable alternative to the main `v` object.\r\n * Use this when bundle size is critical.\r\n *\r\n * @example\r\n * ```typescript\r\n * import { string, number, object, optional } from '@oxog/vld/mini';\r\n *\r\n * const schema = object({\r\n * name: string().min(1),\r\n * age: optional(number().int())\r\n * });\r\n * ```\r\n */\r\n\r\n// ============================================\r\n// Base Types & Classes\r\n// ============================================\r\n\r\nexport {\r\n VldBase,\r\n ParseResult,\r\n VldRefine,\r\n VldTransform,\r\n VldDefault,\r\n VldCatch,\r\n VldOptional,\r\n VldNullable,\r\n VldNullish,\r\n VldPipe,\r\n VldReadonly,\r\n VldBrand,\r\n VldPreprocess,\r\n SuperRefineContext,\r\n VldSuperRefine\r\n} from './validators/base';\r\n\r\n// ============================================\r\n// Validator Classes (for advanced usage)\r\n// ============================================\r\n\r\nexport { VldString } from './validators/string';\r\nexport { VldNumber } from './validators/number';\r\nexport { VldBoolean } from './validators/boolean';\r\nexport { VldDate } from './validators/date';\r\nexport { VldBigInt } from './validators/bigint';\r\nexport { VldSymbol } from './validators/symbol';\r\nexport { VldStringBool } from './validators/string-bool';\r\nexport { VldArray } from './validators/array';\r\nexport { VldObject } from './validators/object';\r\nexport { VldTuple } from './validators/tuple';\r\nexport { VldRecord } from './validators/record';\r\nexport { VldSet } from './validators/set';\r\nexport { VldMap } from './validators/map';\r\nexport { VldUnion } from './validators/union';\r\nexport { VldIntersection } from './validators/intersection';\r\nexport { VldLiteral } from './validators/literal';\r\nexport { VldEnum } from './validators/enum';\r\nexport { VldAny } from './validators/any';\r\nexport { VldUnknown } from './validators/unknown';\r\nexport { VldVoid } from './validators/void';\r\nexport { VldNever } from './validators/never';\r\nexport { VldNull } from './validators/null';\r\nexport { VldUndefined } from './validators/undefined';\r\nexport { VldNan } from './validators/nan';\r\nexport { VldLazy } from './validators/lazy';\r\nexport { VldDiscriminatedUnion } from './validators/discriminated-union';\r\nexport { VldXor } from './validators/xor';\r\nexport { VldJson } from './validators/json';\r\n\r\n// ============================================\r\n// Type Inference Helpers\r\n// ============================================\r\n\r\nimport type { VldBase } from './validators/base';\r\n\r\n/** Infer the output type of a validator */\r\nexport type Infer<T extends VldBase<any, any>> = T extends VldBase<any, infer U> ? U : never;\r\n\r\n/** Infer the input type of a validator */\r\nexport type Input<T extends VldBase<any, any>> = T extends VldBase<infer I, any> ? I : never;\r\n\r\n/** Infer the output type of a validator (alias for Infer) */\r\nexport type Output<T extends VldBase<any, any>> = Infer<T>;\r\n\r\n// ============================================\r\n// Factory Functions (Tree-Shakable)\r\n// ============================================\r\n\r\nimport { VldString } from './validators/string';\r\nimport { VldNumber } from './validators/number';\r\nimport { VldBoolean } from './validators/boolean';\r\nimport { VldDate } from './validators/date';\r\nimport { VldBigInt } from './validators/bigint';\r\nimport { VldSymbol } from './validators/symbol';\r\nimport { VldStringBool } from './validators/string-bool';\r\nimport { VldArray } from './validators/array';\r\nimport { VldObject } from './validators/object';\r\nimport { VldTuple } from './validators/tuple';\r\nimport { VldRecord } from './validators/record';\r\nimport { VldSet } from './validators/set';\r\nimport { VldMap } from './validators/map';\r\nimport { VldUnion } from './validators/union';\r\nimport { VldIntersection } from './validators/intersection';\r\nimport { VldLiteral } from './validators/literal';\r\nimport { VldEnum } from './validators/enum';\r\nimport { VldAny } from './validators/any';\r\nimport { VldUnknown } from './validators/unknown';\r\nimport { VldVoid } from './validators/void';\r\nimport { VldNever } from './validators/never';\r\nimport { VldNull } from './validators/null';\r\nimport { VldUndefined } from './validators/undefined';\r\nimport { VldNan } from './validators/nan';\r\nimport { VldLazy } from './validators/lazy';\r\nimport { VldDiscriminatedUnion } from './validators/discriminated-union';\r\nimport { VldXor } from './validators/xor';\r\nimport { VldJson } from './validators/json';\r\nimport { VldOptional, VldNullable, VldNullish, VldPreprocess } from './validators/base';\r\n\r\n// --- Primitive Validators ---\r\n\r\n/** Create a string validator */\r\nexport const string = () => VldString.create();\r\n\r\n/** Create a number validator */\r\nexport const number = () => VldNumber.create();\r\n\r\n/** Create an integer validator */\r\nexport const int = () => VldNumber.create().int();\r\n\r\n/** Create an int32 validator (-2147483648 to 2147483647) */\r\nexport const int32 = () => VldNumber.create().int().min(-2147483648).max(2147483647);\r\n\r\n/** Create a boolean validator */\r\nexport const boolean = () => VldBoolean.create();\r\n\r\n/** Create a date validator */\r\nexport const date = () => VldDate.create();\r\n\r\n/** Create a bigint validator */\r\nexport const bigint = () => VldBigInt.create();\r\n\r\n/** Create a symbol validator */\r\nexport const symbol = () => VldSymbol.create();\r\n\r\n/** Create a string-to-boolean validator */\r\nexport const stringbool = (options?: { truthy?: readonly string[]; falsy?: readonly string[]; caseSensitive?: boolean }) =>\r\n VldStringBool.create(options);\r\n\r\n// --- Complex Validators ---\r\n\r\n/** Create an array validator */\r\nexport const array = <T>(item: VldBase<unknown, T>) => VldArray.create(item);\r\n\r\n/** Create an object validator */\r\nexport const object = <T extends Record<string, any>>(shape: { [K in keyof T]: VldBase<unknown, T[K]> }) =>\r\n VldObject.create(shape);\r\n\r\n/** Create a strict object validator (no extra keys allowed) */\r\nexport const strictObject = <T extends Record<string, any>>(shape: { [K in keyof T]: VldBase<unknown, T[K]> }) =>\r\n VldObject.create(shape).strict();\r\n\r\n/** Create a loose object validator (extra keys passed through) */\r\nexport const looseObject = <T extends Record<string, any>>(shape: { [K in keyof T]: VldBase<unknown, T[K]> }) =>\r\n VldObject.create(shape).passthrough();\r\n\r\n/** Create a tuple validator */\r\nexport const tuple = <T extends readonly VldBase<any, any>[]>(...items: T) => VldTuple.create(...items);\r\n\r\n/** Create a record validator */\r\nexport const record = <T>(value: VldBase<unknown, T>) => VldRecord.create(value);\r\n\r\n/** Create a partial record validator */\r\nexport const partialRecord = <T>(value: VldBase<unknown, T>) => VldRecord.create(value).partial();\r\n\r\n/** Create a loose record validator */\r\nexport const looseRecord = <T>(value: VldBase<unknown, T>) => VldRecord.create(value).loose();\r\n\r\n/** Create a set validator */\r\nexport const set = <T>(item: VldBase<unknown, T>) => VldSet.create(item);\r\n\r\n/** Create a map validator */\r\nexport const map = <K, V>(key: VldBase<unknown, K>, value: VldBase<unknown, V>) => VldMap.create(key, value);\r\n\r\n// --- Union & Intersection ---\r\n\r\n/** Create a union validator (value must match one of the validators) */\r\nexport const union = <T extends readonly VldBase<any, any>[]>(...validators: T) =>\r\n VldUnion.create(...validators);\r\n\r\n/** Create an intersection validator (value must match both validators) */\r\nexport const intersection = <A, B>(first: VldBase<unknown, A>, second: VldBase<unknown, B>) =>\r\n VldIntersection.create(first, second);\r\n\r\n/** Create a discriminated union validator */\r\nexport const discriminatedUnion = <K extends string, T extends readonly VldBase<any, any>[]>(\r\n discriminator: K,\r\n ...options: T\r\n) => VldDiscriminatedUnion.create(discriminator, [...options] as any);\r\n\r\n/** Create an XOR validator (value must match exactly one of the validators) */\r\nexport const xor = <T extends readonly VldBase<any, any>[]>(...options: T) =>\r\n VldXor.create([...options] as any);\r\n\r\n// --- Literal & Enum ---\r\n\r\n/** Create a literal validator */\r\nexport const literal = <T extends string | number | boolean | null | undefined>(value: T) =>\r\n VldLiteral.create(value);\r\n\r\n/** Create an enum validator */\r\nexport const enumValidator = <T extends readonly [string, ...string[]]>(...values: T) => VldEnum.create(values as any);\r\n\r\n// --- Special Validators ---\r\n\r\n/** Create a validator that accepts any value */\r\nexport const any = () => VldAny.create();\r\n\r\n/** Create a validator that accepts unknown values */\r\nexport const unknown = () => VldUnknown.create();\r\n\r\n/** Create a void validator */\r\nexport const voidValidator = () => VldVoid.create();\r\n\r\n/** Create a never validator (always fails) */\r\nexport const never = () => VldNever.create();\r\n\r\n/** Create a null validator */\r\nexport const nullValidator = () => VldNull.create();\r\n\r\n/** Create an undefined validator */\r\nexport const undefinedValidator = () => VldUndefined.create();\r\n\r\n/** Create a NaN validator */\r\nexport const nan = () => VldNan.create();\r\n\r\n// --- Utility Validators ---\r\n\r\n/** Create a lazy validator for recursive schemas */\r\nexport const lazy = <T>(schemaGetter: () => VldBase<unknown, T>) => VldLazy.create(schemaGetter);\r\n\r\n/** Create a JSON validator */\r\nexport const json = <T = unknown>(schema?: VldBase<unknown, T>) => VldJson.create(schema);\r\n\r\n// ============================================\r\n// Utility Functions (Wrappers)\r\n// ============================================\r\n\r\n/** Make a validator optional (allows undefined) */\r\nexport const optional = <TInput, TOutput>(validator: VldBase<TInput, TOutput>) =>\r\n VldOptional.create(validator);\r\n\r\n/** Make a validator nullable (allows null) */\r\nexport const nullable = <TInput, TOutput>(validator: VldBase<TInput, TOutput>) =>\r\n VldNullable.create(validator);\r\n\r\n/** Make a validator nullish (allows null or undefined) */\r\nexport const nullish = <TInput, TOutput>(validator: VldBase<TInput, TOutput>) =>\r\n VldNullish.create(validator);\r\n\r\n/** Preprocess input before validation */\r\nexport const preprocess = <TInput, TOutput>(\r\n preprocessor: (input: unknown) => unknown,\r\n schema: VldBase<TInput, TOutput>\r\n) => VldPreprocess.create(preprocessor, schema);\r\n\r\n// ============================================\r\n// Coercion Validators\r\n// ============================================\r\n\r\nimport { VldCoerceString } from './coercion/string';\r\nimport { VldCoerceNumber } from './coercion/number';\r\nimport { VldCoerceBoolean } from './coercion/boolean';\r\nimport { VldCoerceDate } from './coercion/date';\r\nimport { VldCoerceBigInt } from './coercion/bigint';\r\n\r\n/** Coercion validators - convert values to target type before validation */\r\nexport const coerce = {\r\n /** Coerce to string */\r\n string: () => VldCoerceString.create(),\r\n /** Coerce to number */\r\n number: () => VldCoerceNumber.create(),\r\n /** Coerce to boolean */\r\n boolean: () => VldCoerceBoolean.create(),\r\n /** Coerce to date */\r\n date: () => VldCoerceDate.create(),\r\n /** Coerce to bigint */\r\n bigint: () => VldCoerceBigInt.create(),\r\n};\r\n\r\n// ============================================\r\n// NEVER Constant (for transforms)\r\n// ============================================\r\n\r\n/** NEVER constant for use in transforms - Zod 4 API parity */\r\nexport const NEVER = VldNever.create();\r\n"],"names":[],"mappings":"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"}
package/dist/pigment.js CHANGED
@@ -8,7 +8,7 @@
8
8
  /**
9
9
  * Check if colors are supported in the current environment
10
10
  */
11
- export function supportsColor() {
11
+ function supportsColor() {
12
12
  // Check for NO_COLOR environment variable
13
13
  if (typeof process !== 'undefined' && process.env?.NO_COLOR) {
14
14
  return false;
@@ -93,7 +93,7 @@ function createColorFn(code) {
93
93
  /**
94
94
  * Pigment - Color utilities for terminal output
95
95
  */
96
- export const pigment = {
96
+ const pigment = {
97
97
  // Check support
98
98
  supportsColor,
99
99
  // Reset
@@ -152,11 +152,11 @@ export const pigment = {
152
152
  codes: ANSI
153
153
  };
154
154
  // Aliases for convenience
155
- export const { bold, dim, italic, underline, red, green, yellow, blue, magenta, cyan, white, gray, grey, success, error, warning, info, muted, strip } = pigment;
155
+ const { bold, dim, italic, underline, red, green, yellow, blue, magenta, cyan, white, gray, grey, success, error, warning, info, muted, strip } = pigment;
156
156
  /**
157
157
  * Default VLD theme for error formatting
158
158
  */
159
- export const vldTheme = {
159
+ const vldTheme = {
160
160
  error: red,
161
161
  success: green,
162
162
  warning: yellow,
@@ -170,8 +170,9 @@ export const vldTheme = {
170
170
  /**
171
171
  * Create a custom theme
172
172
  */
173
- export function createTheme(overrides = {}) {
173
+ function createTheme(overrides = {}) {
174
174
  return { ...vldTheme, ...overrides };
175
175
  }
176
- export default pigment;
177
- //# sourceMappingURL=pigment.js.map
176
+
177
+ export { blue, bold, createTheme, cyan, pigment as default, dim, error, gray, green, grey, info, italic, magenta, muted, pigment, red, strip, success, supportsColor, underline, vldTheme, warning, white, yellow };
178
+ //# sourceMappingURL=pigment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pigment.js","sourceRoot":"","sources":["../src/pigment.ts"],"names":[],"mappings":"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","sourcesContent":["/**\r\n * VLD Pigment - Colored Console Output\r\n *\r\n * This module provides ANSI color utilities for terminal output,\r\n * compatible with @oxog/pigment when available.\r\n */\r\n\r\n/* eslint-disable @typescript-eslint/no-explicit-any */\r\ndeclare const window: any;\r\n/* eslint-enable @typescript-eslint/no-explicit-any */\r\n\r\n/**\r\n * Check if colors are supported in the current environment\r\n */\r\nexport function supportsColor(): boolean {\r\n // Check for NO_COLOR environment variable\r\n if (typeof process !== 'undefined' && process.env?.NO_COLOR) {\r\n return false;\r\n }\r\n\r\n // Check for FORCE_COLOR environment variable\r\n if (typeof process !== 'undefined' && process.env?.FORCE_COLOR) {\r\n return true;\r\n }\r\n\r\n // Check for TTY\r\n if (typeof process !== 'undefined' && process.stdout?.isTTY) {\r\n return true;\r\n }\r\n\r\n // Browser environment - no ANSI colors\r\n if (typeof window !== 'undefined') {\r\n return false;\r\n }\r\n\r\n return false;\r\n}\r\n\r\n/**\r\n * ANSI escape codes\r\n */\r\nconst ANSI = {\r\n // Reset\r\n reset: '\\x1b[0m',\r\n\r\n // Styles\r\n bold: '\\x1b[1m',\r\n dim: '\\x1b[2m',\r\n italic: '\\x1b[3m',\r\n underline: '\\x1b[4m',\r\n blink: '\\x1b[5m',\r\n inverse: '\\x1b[7m',\r\n hidden: '\\x1b[8m',\r\n strikethrough: '\\x1b[9m',\r\n\r\n // Foreground colors\r\n black: '\\x1b[30m',\r\n red: '\\x1b[31m',\r\n green: '\\x1b[32m',\r\n yellow: '\\x1b[33m',\r\n blue: '\\x1b[34m',\r\n magenta: '\\x1b[35m',\r\n cyan: '\\x1b[36m',\r\n white: '\\x1b[37m',\r\n gray: '\\x1b[90m',\r\n grey: '\\x1b[90m',\r\n\r\n // Bright foreground colors\r\n brightRed: '\\x1b[91m',\r\n brightGreen: '\\x1b[92m',\r\n brightYellow: '\\x1b[93m',\r\n brightBlue: '\\x1b[94m',\r\n brightMagenta: '\\x1b[95m',\r\n brightCyan: '\\x1b[96m',\r\n brightWhite: '\\x1b[97m',\r\n\r\n // Background colors\r\n bgBlack: '\\x1b[40m',\r\n bgRed: '\\x1b[41m',\r\n bgGreen: '\\x1b[42m',\r\n bgYellow: '\\x1b[43m',\r\n bgBlue: '\\x1b[44m',\r\n bgMagenta: '\\x1b[45m',\r\n bgCyan: '\\x1b[46m',\r\n bgWhite: '\\x1b[47m',\r\n\r\n // Bright background colors\r\n bgBrightRed: '\\x1b[101m',\r\n bgBrightGreen: '\\x1b[102m',\r\n bgBrightYellow: '\\x1b[103m',\r\n bgBrightBlue: '\\x1b[104m',\r\n bgBrightMagenta: '\\x1b[105m',\r\n bgBrightCyan: '\\x1b[106m',\r\n bgBrightWhite: '\\x1b[107m'\r\n} as const;\r\n\r\n/**\r\n * Create a color function\r\n */\r\nfunction createColorFn(code: string): (text: string) => string {\r\n const enabled = supportsColor();\r\n return (text: string): string => {\r\n if (!enabled || text === '') return text;\r\n return `${code}${text}${ANSI.reset}`;\r\n };\r\n}\r\n\r\n/**\r\n * Pigment - Color utilities for terminal output\r\n */\r\nexport const pigment = {\r\n // Check support\r\n supportsColor,\r\n\r\n // Reset\r\n reset: (text: string): string => text,\r\n\r\n // Styles\r\n bold: createColorFn(ANSI.bold),\r\n dim: createColorFn(ANSI.dim),\r\n italic: createColorFn(ANSI.italic),\r\n underline: createColorFn(ANSI.underline),\r\n inverse: createColorFn(ANSI.inverse),\r\n hidden: createColorFn(ANSI.hidden),\r\n strikethrough: createColorFn(ANSI.strikethrough),\r\n\r\n // Foreground colors\r\n black: createColorFn(ANSI.black),\r\n red: createColorFn(ANSI.red),\r\n green: createColorFn(ANSI.green),\r\n yellow: createColorFn(ANSI.yellow),\r\n blue: createColorFn(ANSI.blue),\r\n magenta: createColorFn(ANSI.magenta),\r\n cyan: createColorFn(ANSI.cyan),\r\n white: createColorFn(ANSI.white),\r\n gray: createColorFn(ANSI.gray),\r\n grey: createColorFn(ANSI.grey),\r\n\r\n // Bright colors\r\n brightRed: createColorFn(ANSI.brightRed),\r\n brightGreen: createColorFn(ANSI.brightGreen),\r\n brightYellow: createColorFn(ANSI.brightYellow),\r\n brightBlue: createColorFn(ANSI.brightBlue),\r\n brightMagenta: createColorFn(ANSI.brightMagenta),\r\n brightCyan: createColorFn(ANSI.brightCyan),\r\n brightWhite: createColorFn(ANSI.brightWhite),\r\n\r\n // Background colors\r\n bgBlack: createColorFn(ANSI.bgBlack),\r\n bgRed: createColorFn(ANSI.bgRed),\r\n bgGreen: createColorFn(ANSI.bgGreen),\r\n bgYellow: createColorFn(ANSI.bgYellow),\r\n bgBlue: createColorFn(ANSI.bgBlue),\r\n bgMagenta: createColorFn(ANSI.bgMagenta),\r\n bgCyan: createColorFn(ANSI.bgCyan),\r\n bgWhite: createColorFn(ANSI.bgWhite),\r\n\r\n // Semantic colors\r\n success: createColorFn(ANSI.green),\r\n error: createColorFn(ANSI.red),\r\n warning: createColorFn(ANSI.yellow),\r\n info: createColorFn(ANSI.blue),\r\n muted: createColorFn(ANSI.gray),\r\n\r\n // Combine multiple styles\r\n combine: (...codes: string[]) =>\r\n (text: string): string => {\r\n if (!supportsColor()) return text;\r\n return `${codes.join('')}${text}${ANSI.reset}`;\r\n },\r\n\r\n // Strip ANSI codes from string\r\n strip: (text: string): string =>\r\n text.replace(\r\n /[\\u001b\\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g,\r\n ''\r\n ),\r\n\r\n // Get raw ANSI codes\r\n codes: ANSI\r\n};\r\n\r\n// Aliases for convenience\r\nexport const {\r\n bold,\r\n dim,\r\n italic,\r\n underline,\r\n red,\r\n green,\r\n yellow,\r\n blue,\r\n magenta,\r\n cyan,\r\n white,\r\n gray,\r\n grey,\r\n success,\r\n error,\r\n warning,\r\n info,\r\n muted,\r\n strip\r\n} = pigment;\r\n\r\n/**\r\n * Create a custom theme\r\n */\r\nexport interface Theme {\r\n error: (text: string) => string;\r\n success: (text: string) => string;\r\n warning: (text: string) => string;\r\n info: (text: string) => string;\r\n muted: (text: string) => string;\r\n path: (text: string) => string;\r\n value: (text: string) => string;\r\n key: (text: string) => string;\r\n symbol: (text: string) => string;\r\n}\r\n\r\n/**\r\n * Default VLD theme for error formatting\r\n */\r\nexport const vldTheme: Theme = {\r\n error: red,\r\n success: green,\r\n warning: yellow,\r\n info: blue,\r\n muted: dim,\r\n path: cyan,\r\n value: yellow,\r\n key: bold,\r\n symbol: red\r\n};\r\n\r\n/**\r\n * Create a custom theme\r\n */\r\nexport function createTheme(overrides: Partial<Theme> = {}): Theme {\r\n return { ...vldTheme, ...overrides };\r\n}\r\n\r\nexport default pigment;\r\n"]}
1
+ {"version":3,"file":"pigment.js","sources":["../src/pigment.ts"],"sourcesContent":["/**\r\n * VLD Pigment - Colored Console Output\r\n *\r\n * This module provides ANSI color utilities for terminal output,\r\n * compatible with @oxog/pigment when available.\r\n */\r\n\r\n/* eslint-disable @typescript-eslint/no-explicit-any */\r\ndeclare const window: any;\r\n/* eslint-enable @typescript-eslint/no-explicit-any */\r\n\r\n/**\r\n * Check if colors are supported in the current environment\r\n */\r\nexport function supportsColor(): boolean {\r\n // Check for NO_COLOR environment variable\r\n if (typeof process !== 'undefined' && process.env?.NO_COLOR) {\r\n return false;\r\n }\r\n\r\n // Check for FORCE_COLOR environment variable\r\n if (typeof process !== 'undefined' && process.env?.FORCE_COLOR) {\r\n return true;\r\n }\r\n\r\n // Check for TTY\r\n if (typeof process !== 'undefined' && process.stdout?.isTTY) {\r\n return true;\r\n }\r\n\r\n // Browser environment - no ANSI colors\r\n if (typeof window !== 'undefined') {\r\n return false;\r\n }\r\n\r\n return false;\r\n}\r\n\r\n/**\r\n * ANSI escape codes\r\n */\r\nconst ANSI = {\r\n // Reset\r\n reset: '\\x1b[0m',\r\n\r\n // Styles\r\n bold: '\\x1b[1m',\r\n dim: '\\x1b[2m',\r\n italic: '\\x1b[3m',\r\n underline: '\\x1b[4m',\r\n blink: '\\x1b[5m',\r\n inverse: '\\x1b[7m',\r\n hidden: '\\x1b[8m',\r\n strikethrough: '\\x1b[9m',\r\n\r\n // Foreground colors\r\n black: '\\x1b[30m',\r\n red: '\\x1b[31m',\r\n green: '\\x1b[32m',\r\n yellow: '\\x1b[33m',\r\n blue: '\\x1b[34m',\r\n magenta: '\\x1b[35m',\r\n cyan: '\\x1b[36m',\r\n white: '\\x1b[37m',\r\n gray: '\\x1b[90m',\r\n grey: '\\x1b[90m',\r\n\r\n // Bright foreground colors\r\n brightRed: '\\x1b[91m',\r\n brightGreen: '\\x1b[92m',\r\n brightYellow: '\\x1b[93m',\r\n brightBlue: '\\x1b[94m',\r\n brightMagenta: '\\x1b[95m',\r\n brightCyan: '\\x1b[96m',\r\n brightWhite: '\\x1b[97m',\r\n\r\n // Background colors\r\n bgBlack: '\\x1b[40m',\r\n bgRed: '\\x1b[41m',\r\n bgGreen: '\\x1b[42m',\r\n bgYellow: '\\x1b[43m',\r\n bgBlue: '\\x1b[44m',\r\n bgMagenta: '\\x1b[45m',\r\n bgCyan: '\\x1b[46m',\r\n bgWhite: '\\x1b[47m',\r\n\r\n // Bright background colors\r\n bgBrightRed: '\\x1b[101m',\r\n bgBrightGreen: '\\x1b[102m',\r\n bgBrightYellow: '\\x1b[103m',\r\n bgBrightBlue: '\\x1b[104m',\r\n bgBrightMagenta: '\\x1b[105m',\r\n bgBrightCyan: '\\x1b[106m',\r\n bgBrightWhite: '\\x1b[107m'\r\n} as const;\r\n\r\n/**\r\n * Create a color function\r\n */\r\nfunction createColorFn(code: string): (text: string) => string {\r\n const enabled = supportsColor();\r\n return (text: string): string => {\r\n if (!enabled || text === '') return text;\r\n return `${code}${text}${ANSI.reset}`;\r\n };\r\n}\r\n\r\n/**\r\n * Pigment - Color utilities for terminal output\r\n */\r\nexport const pigment = {\r\n // Check support\r\n supportsColor,\r\n\r\n // Reset\r\n reset: (text: string): string => text,\r\n\r\n // Styles\r\n bold: createColorFn(ANSI.bold),\r\n dim: createColorFn(ANSI.dim),\r\n italic: createColorFn(ANSI.italic),\r\n underline: createColorFn(ANSI.underline),\r\n inverse: createColorFn(ANSI.inverse),\r\n hidden: createColorFn(ANSI.hidden),\r\n strikethrough: createColorFn(ANSI.strikethrough),\r\n\r\n // Foreground colors\r\n black: createColorFn(ANSI.black),\r\n red: createColorFn(ANSI.red),\r\n green: createColorFn(ANSI.green),\r\n yellow: createColorFn(ANSI.yellow),\r\n blue: createColorFn(ANSI.blue),\r\n magenta: createColorFn(ANSI.magenta),\r\n cyan: createColorFn(ANSI.cyan),\r\n white: createColorFn(ANSI.white),\r\n gray: createColorFn(ANSI.gray),\r\n grey: createColorFn(ANSI.grey),\r\n\r\n // Bright colors\r\n brightRed: createColorFn(ANSI.brightRed),\r\n brightGreen: createColorFn(ANSI.brightGreen),\r\n brightYellow: createColorFn(ANSI.brightYellow),\r\n brightBlue: createColorFn(ANSI.brightBlue),\r\n brightMagenta: createColorFn(ANSI.brightMagenta),\r\n brightCyan: createColorFn(ANSI.brightCyan),\r\n brightWhite: createColorFn(ANSI.brightWhite),\r\n\r\n // Background colors\r\n bgBlack: createColorFn(ANSI.bgBlack),\r\n bgRed: createColorFn(ANSI.bgRed),\r\n bgGreen: createColorFn(ANSI.bgGreen),\r\n bgYellow: createColorFn(ANSI.bgYellow),\r\n bgBlue: createColorFn(ANSI.bgBlue),\r\n bgMagenta: createColorFn(ANSI.bgMagenta),\r\n bgCyan: createColorFn(ANSI.bgCyan),\r\n bgWhite: createColorFn(ANSI.bgWhite),\r\n\r\n // Semantic colors\r\n success: createColorFn(ANSI.green),\r\n error: createColorFn(ANSI.red),\r\n warning: createColorFn(ANSI.yellow),\r\n info: createColorFn(ANSI.blue),\r\n muted: createColorFn(ANSI.gray),\r\n\r\n // Combine multiple styles\r\n combine: (...codes: string[]) =>\r\n (text: string): string => {\r\n if (!supportsColor()) return text;\r\n return `${codes.join('')}${text}${ANSI.reset}`;\r\n },\r\n\r\n // Strip ANSI codes from string\r\n strip: (text: string): string =>\r\n text.replace(\r\n /[\\u001b\\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g,\r\n ''\r\n ),\r\n\r\n // Get raw ANSI codes\r\n codes: ANSI\r\n};\r\n\r\n// Aliases for convenience\r\nexport const {\r\n bold,\r\n dim,\r\n italic,\r\n underline,\r\n red,\r\n green,\r\n yellow,\r\n blue,\r\n magenta,\r\n cyan,\r\n white,\r\n gray,\r\n grey,\r\n success,\r\n error,\r\n warning,\r\n info,\r\n muted,\r\n strip\r\n} = pigment;\r\n\r\n/**\r\n * Create a custom theme\r\n */\r\nexport interface Theme {\r\n error: (text: string) => string;\r\n success: (text: string) => string;\r\n warning: (text: string) => string;\r\n info: (text: string) => string;\r\n muted: (text: string) => string;\r\n path: (text: string) => string;\r\n value: (text: string) => string;\r\n key: (text: string) => string;\r\n symbol: (text: string) => string;\r\n}\r\n\r\n/**\r\n * Default VLD theme for error formatting\r\n */\r\nexport const vldTheme: Theme = {\r\n error: red,\r\n success: green,\r\n warning: yellow,\r\n info: blue,\r\n muted: dim,\r\n path: cyan,\r\n value: yellow,\r\n key: bold,\r\n symbol: red\r\n};\r\n\r\n/**\r\n * Create a custom theme\r\n */\r\nexport function createTheme(overrides: Partial<Theme> = {}): Theme {\r\n return { ...vldTheme, ...overrides };\r\n}\r\n\r\nexport default pigment;\r\n"],"names":[],"mappings":"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"}
@@ -1,45 +1,5 @@
1
- /**
2
- * Main entry point for all validators
3
- */
4
- // Export base types and classes
5
- export { VldBase, VldRefine, VldTransform, VldDefault, VldCatch, VldOptional, VldNullable, VldNullish, VldPipe, VldReadonly, VldBrand, VldSuperRefine, VldPreprocess } from './base.js';
6
- // Export primitive validators
7
- export { VldString } from './string.js';
8
- export { VldNumber } from './number.js';
9
- export { VldBoolean } from './boolean.js';
10
- export { VldDate } from './date.js';
11
- export { VldStringBool } from './string-bool.js';
12
- // Export complex validators
13
- export { VldArray } from './array.js';
14
- export { VldObject } from './object.js';
15
- // Export utility validators (to be implemented)
16
- export { VldUnion } from './union.js';
17
- export { VldIntersection } from './intersection.js';
18
- export { VldLiteral } from './literal.js';
19
- export { VldEnum } from './enum.js';
20
- export { VldTuple } from './tuple.js';
21
- export { VldRecord } from './record.js';
22
- export { VldSet } from './set.js';
23
- export { VldMap } from './map.js';
24
- export { VldBigInt } from './bigint.js';
25
- export { VldSymbol } from './symbol.js';
26
- // Export special validators
27
- export { VldAny } from './any.js';
28
- export { VldUnknown } from './unknown.js';
29
- export { VldVoid } from './void.js';
30
- export { VldNever } from './never.js';
31
- // Export Zod 4 parity validators
32
- export { VldNull } from './null.js';
33
- export { VldUndefined } from './undefined.js';
34
- export { VldNan } from './nan.js';
35
- export { VldLazy } from './lazy.js';
36
- export { VldDiscriminatedUnion } from './discriminated-union.js';
37
- export { VldXor } from './xor.js';
38
- export { VldJson } from './json.js';
39
- export { VldTemplateLiteral, templateLiteral } from './template-literal.js';
40
- export { VldCustom, custom } from './custom.js';
41
- export { VldFile, file } from './file.js';
42
- export { VldFunction, functionValidator } from './function.js';
43
- // Export string format validators
44
- export { email, uuid, uuidv4, hostname, emoji, base64, base64url, hex, jwt, nanoid, cuid, cuid2, ulid, ipv4, ipv6, mac, cidrv4, e164, hash, iso, stringFormat, regexes } from './string-formats.js';
45
- //# sourceMappingURL=index.js.map
1
+ export { i as VldBase, d as VldBigInt, b as VldBoolean, p as VldBrand, m as VldCatch, c as VldDate, l as VldDefault, f as VldNullable, g as VldNullish, a as VldNumber, e as VldOptional, n as VldPipe, h as VldPreprocess, o as VldReadonly, j as VldRefine, V as VldString, q as VldSuperRefine, k as VldTransform } from '../chunks/bigint-ZKkWLdmi.js';
2
+ export { n as VldAny, b as VldArray, j as VldDiscriminatedUnion, m as VldEnum, i as VldIntersection, u as VldJson, t as VldLazy, l as VldLiteral, g as VldMap, s as VldNan, p as VldNever, q as VldNull, c as VldObject, e as VldRecord, f as VldSet, a as VldStringBool, V as VldSymbol, d as VldTuple, r as VldUndefined, h as VldUnion, o as VldVoid, k as VldXor } from '../chunks/json-nIhyRPOU.js';
3
+ export { V as VldUnknown } from '../chunks/unknown-CjSRcELI.js';
4
+ export { A as VldCustom, B as VldFile, C as VldFunction, V as VldTemplateLiteral, o as base64, l as base64url, a as cidrv4, g as cuid, f as cuid2, z as custom, e as e164, w as email, p as emoji, y as file, x as functionValidator, h as hash, k as hex, q as hostname, d as ipv4, b as ipv6, i as iso, j as jwt, m as mac, n as nanoid, R as regexes, s as stringFormat, t as templateLiteral, u as ulid, v as uuid, r as uuidv4 } from '../chunks/index-eWXdjyyy.js';
5
+ //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/validators/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,gCAAgC;AAChC,OAAO,EACL,OAAO,EAEP,SAAS,EACT,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,WAAW,EACX,WAAW,EACX,UAAU,EACV,OAAO,EACP,WAAW,EACX,QAAQ,EAER,cAAc,EACd,aAAa,EACd,MAAM,QAAQ,CAAC;AAEhB,8BAA8B;AAC9B,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,4BAA4B;AAC5B,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,gDAAgD;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,4BAA4B;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,iCAAiC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAE7C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAEvC,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE5D,kCAAkC;AAClC,OAAO,EACL,KAAK,EACL,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,KAAK,EACL,MAAM,EACN,SAAS,EACT,GAAG,EACH,GAAG,EACH,MAAM,EACN,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,IAAI,EACJ,GAAG,EACH,MAAM,EACN,IAAI,EACJ,IAAI,EACJ,GAAG,EACH,YAAY,EACZ,OAAO,EACR,MAAM,kBAAkB,CAAC","sourcesContent":["/**\r\n * Main entry point for all validators\r\n */\r\n\r\n// Export base types and classes\r\nexport {\r\n VldBase,\r\n ParseResult,\r\n VldRefine,\r\n VldTransform,\r\n VldDefault,\r\n VldCatch,\r\n VldOptional,\r\n VldNullable,\r\n VldNullish,\r\n VldPipe,\r\n VldReadonly,\r\n VldBrand,\r\n SuperRefineContext,\r\n VldSuperRefine,\r\n VldPreprocess\r\n} from './base';\r\n\r\n// Export primitive validators\r\nexport { VldString } from './string';\r\nexport { VldNumber } from './number';\r\nexport { VldBoolean } from './boolean';\r\nexport { VldDate } from './date';\r\nexport { VldStringBool } from './string-bool';\r\n\r\n// Export complex validators\r\nexport { VldArray } from './array';\r\nexport { VldObject } from './object';\r\n\r\n// Export utility validators (to be implemented)\r\nexport { VldUnion } from './union';\r\nexport { VldIntersection } from './intersection';\r\nexport { VldLiteral } from './literal';\r\nexport { VldEnum } from './enum';\r\nexport { VldTuple } from './tuple';\r\nexport { VldRecord } from './record';\r\nexport { VldSet } from './set';\r\nexport { VldMap } from './map';\r\nexport { VldBigInt } from './bigint';\r\nexport { VldSymbol } from './symbol';\r\n\r\n// Export special validators\r\nexport { VldAny } from './any';\r\nexport { VldUnknown } from './unknown';\r\nexport { VldVoid } from './void';\r\nexport { VldNever } from './never';\r\n\r\n// Export Zod 4 parity validators\r\nexport { VldNull } from './null';\r\nexport { VldUndefined } from './undefined';\r\nexport { VldNan } from './nan';\r\nexport { VldLazy } from './lazy';\r\nexport { VldDiscriminatedUnion } from './discriminated-union';\r\nexport { VldXor } from './xor';\r\nexport { VldJson } from './json';\r\nexport { VldTemplateLiteral, templateLiteral } from './template-literal';\r\nexport { VldCustom, custom } from './custom';\r\nexport type { CustomValidatorOptions } from './custom';\r\nexport { VldFile, file } from './file';\r\nexport type { VldFileValue } from './file';\r\nexport { VldFunction, functionValidator } from './function';\r\n\r\n// Export string format validators\r\nexport {\r\n email,\r\n uuid,\r\n uuidv4,\r\n hostname,\r\n emoji,\r\n base64,\r\n base64url,\r\n hex,\r\n jwt,\r\n nanoid,\r\n cuid,\r\n cuid2,\r\n ulid,\r\n ipv4,\r\n ipv6,\r\n mac,\r\n cidrv4,\r\n e164,\r\n hash,\r\n iso,\r\n stringFormat,\r\n regexes\r\n} from './string-formats';\r\n\r\n// Import base for type inference\r\nimport { VldBase } from './base';\r\n\r\n// Type inference helper\r\nexport type Infer<T extends VldBase<any, any>> = T extends VldBase<any, infer U> ? U : never;\r\n\r\n// Zod 4 API parity - Input and Output type utilities\r\nexport type Input<T extends VldBase<any, any>> = T extends VldBase<infer I, any> ? I : never;\r\nexport type Output<T extends VldBase<any, any>> = T extends VldBase<any, infer O> ? O : never;"]}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}