@warlock.js/seal 5.30.0 → 5.32.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (318) hide show
  1. package/CHANGELOG.md +46 -7
  2. package/README.md +57 -9
  3. package/cjs/index.cjs +41 -29
  4. package/cjs/index.cjs.map +1 -1
  5. package/cjs/{object--LXRt5RF.cjs → object-BoVGJ68E.cjs} +43 -24
  6. package/cjs/object-BoVGJ68E.cjs.map +1 -0
  7. package/cjs/object.cjs +2 -2
  8. package/cjs/{required-methods-DYsRO9aZ.cjs → required-methods-BJlnLnwa.cjs} +343 -258
  9. package/cjs/required-methods-BJlnLnwa.cjs.map +1 -0
  10. package/cjs/{string-DsqnKoSB.cjs → string-CM8x0u2w.cjs} +46 -44
  11. package/cjs/string-CM8x0u2w.cjs.map +1 -0
  12. package/cjs/string.cjs +2 -2
  13. package/esm/config.d.mts +7 -8
  14. package/esm/config.d.mts.map +1 -1
  15. package/esm/config.mjs.map +1 -1
  16. package/esm/factory/index.d.mts +2 -1
  17. package/esm/factory/index.mjs +1 -1
  18. package/esm/factory/validate.d.mts +3 -6
  19. package/esm/factory/validate.d.mts.map +1 -1
  20. package/esm/factory/validators.d.mts +16 -13
  21. package/esm/factory/validators.d.mts.map +1 -1
  22. package/esm/factory/validators.mjs +7 -1
  23. package/esm/factory/validators.mjs.map +1 -1
  24. package/esm/helpers/date-helpers.d.mts +1 -2
  25. package/esm/helpers/date-helpers.d.mts.map +1 -1
  26. package/esm/helpers/file.utils.d.mts +2 -4
  27. package/esm/helpers/file.utils.d.mts.map +1 -1
  28. package/esm/helpers/get-field-value.d.mts +2 -3
  29. package/esm/helpers/get-field-value.d.mts.map +1 -1
  30. package/esm/helpers/get-field-value.mjs +2 -1
  31. package/esm/helpers/get-field-value.mjs.map +1 -1
  32. package/esm/helpers/index.d.mts +6 -0
  33. package/esm/helpers/index.mjs +1 -1
  34. package/esm/helpers/path-helpers.d.mts +1 -2
  35. package/esm/helpers/path-helpers.d.mts.map +1 -1
  36. package/esm/helpers/validation-helpers.d.mts +4 -10
  37. package/esm/helpers/validation-helpers.d.mts.map +1 -1
  38. package/esm/index.d.mts +7 -0
  39. package/esm/mutators/array-mutators.d.mts +6 -7
  40. package/esm/mutators/array-mutators.d.mts.map +1 -1
  41. package/esm/mutators/boolean-mutators.d.mts +3 -4
  42. package/esm/mutators/boolean-mutators.d.mts.map +1 -1
  43. package/esm/mutators/date-mutators.d.mts +18 -19
  44. package/esm/mutators/date-mutators.d.mts.map +1 -1
  45. package/esm/mutators/index.d.mts +8 -0
  46. package/esm/mutators/index.mjs +1 -1
  47. package/esm/mutators/number-mutators.d.mts +10 -11
  48. package/esm/mutators/number-mutators.d.mts.map +1 -1
  49. package/esm/mutators/object-mutators.d.mts +4 -5
  50. package/esm/mutators/object-mutators.d.mts.map +1 -1
  51. package/esm/mutators/object-mutators.mjs +5 -4
  52. package/esm/mutators/object-mutators.mjs.map +1 -1
  53. package/esm/mutators/scalar-mutators.d.mts +2 -3
  54. package/esm/mutators/scalar-mutators.d.mts.map +1 -1
  55. package/esm/mutators/string-mutators.d.mts +37 -38
  56. package/esm/mutators/string-mutators.d.mts.map +1 -1
  57. package/esm/mutators/string-mutators.mjs +5 -3
  58. package/esm/mutators/string-mutators.mjs.map +1 -1
  59. package/esm/object.d.mts +3 -5
  60. package/esm/object.d.mts.map +1 -1
  61. package/esm/object.mjs.map +1 -1
  62. package/esm/plugins/plugin-system.d.mts +11 -9
  63. package/esm/plugins/plugin-system.d.mts.map +1 -1
  64. package/esm/rules/array/array-rules.d.mts +3 -4
  65. package/esm/rules/array/array-rules.d.mts.map +1 -1
  66. package/esm/rules/array/index.d.mts +2 -0
  67. package/esm/rules/array/index.mjs +1 -1
  68. package/esm/rules/color/color-rules.d.mts +8 -9
  69. package/esm/rules/color/color-rules.d.mts.map +1 -1
  70. package/esm/rules/color/index.d.mts +2 -0
  71. package/esm/rules/color/index.mjs +1 -1
  72. package/esm/rules/common/enum.d.mts +5 -6
  73. package/esm/rules/common/enum.d.mts.map +1 -1
  74. package/esm/rules/common/equals-field-rules.d.mts +3 -4
  75. package/esm/rules/common/equals-field-rules.d.mts.map +1 -1
  76. package/esm/rules/common/index.d.mts +7 -0
  77. package/esm/rules/common/index.mjs +1 -1
  78. package/esm/rules/common/instanceof.d.mts +2 -3
  79. package/esm/rules/common/instanceof.d.mts.map +1 -1
  80. package/esm/rules/common/literal.d.mts +2 -3
  81. package/esm/rules/common/literal.d.mts.map +1 -1
  82. package/esm/rules/common/literal.mjs.map +1 -1
  83. package/esm/rules/common/type-rules.d.mts +10 -11
  84. package/esm/rules/common/type-rules.d.mts.map +1 -1
  85. package/esm/rules/common/unknown-key.d.mts +2 -3
  86. package/esm/rules/common/unknown-key.d.mts.map +1 -1
  87. package/esm/rules/conditional/forbidden-if-rules.d.mts +7 -8
  88. package/esm/rules/conditional/forbidden-if-rules.d.mts.map +1 -1
  89. package/esm/rules/conditional/index.d.mts +11 -0
  90. package/esm/rules/conditional/index.mjs +1 -1
  91. package/esm/rules/conditional/present-if-rules.d.mts +6 -7
  92. package/esm/rules/conditional/present-if-rules.d.mts.map +1 -1
  93. package/esm/rules/conditional/present-unless-rules.d.mts +2 -3
  94. package/esm/rules/conditional/present-unless-rules.d.mts.map +1 -1
  95. package/esm/rules/conditional/present-with-rules.d.mts +4 -5
  96. package/esm/rules/conditional/present-with-rules.d.mts.map +1 -1
  97. package/esm/rules/conditional/present-without-rules.d.mts +4 -5
  98. package/esm/rules/conditional/present-without-rules.d.mts.map +1 -1
  99. package/esm/rules/conditional/required-if-rules.d.mts +10 -11
  100. package/esm/rules/conditional/required-if-rules.d.mts.map +1 -1
  101. package/esm/rules/conditional/required-unless-rules.d.mts +2 -3
  102. package/esm/rules/conditional/required-unless-rules.d.mts.map +1 -1
  103. package/esm/rules/conditional/required-when-rule.d.mts +2 -3
  104. package/esm/rules/conditional/required-when-rule.d.mts.map +1 -1
  105. package/esm/rules/conditional/required-with-rules.d.mts +4 -5
  106. package/esm/rules/conditional/required-with-rules.d.mts.map +1 -1
  107. package/esm/rules/conditional/required-without-rules.d.mts +4 -5
  108. package/esm/rules/conditional/required-without-rules.d.mts.map +1 -1
  109. package/esm/rules/core/equal.d.mts +2 -3
  110. package/esm/rules/core/equal.d.mts.map +1 -1
  111. package/esm/rules/core/forbidden.d.mts +2 -3
  112. package/esm/rules/core/forbidden.d.mts.map +1 -1
  113. package/esm/rules/core/index.d.mts +6 -0
  114. package/esm/rules/core/index.mjs +1 -1
  115. package/esm/rules/core/required.d.mts +3 -4
  116. package/esm/rules/core/required.d.mts.map +1 -1
  117. package/esm/rules/core/union.d.mts +10 -4
  118. package/esm/rules/core/union.d.mts.map +1 -1
  119. package/esm/rules/core/union.mjs +56 -10
  120. package/esm/rules/core/union.mjs.map +1 -1
  121. package/esm/rules/core/when.d.mts +2 -3
  122. package/esm/rules/core/when.d.mts.map +1 -1
  123. package/esm/rules/core/when.mjs.map +1 -1
  124. package/esm/rules/date/date-comparison-rules.d.mts +6 -7
  125. package/esm/rules/date/date-comparison-rules.d.mts.map +1 -1
  126. package/esm/rules/date/date-day-rules.d.mts +5 -6
  127. package/esm/rules/date/date-day-rules.d.mts.map +1 -1
  128. package/esm/rules/date/date-field-comparison-rules.d.mts +4 -5
  129. package/esm/rules/date/date-field-comparison-rules.d.mts.map +1 -1
  130. package/esm/rules/date/date-field-comparison-rules.mjs +6 -3
  131. package/esm/rules/date/date-field-comparison-rules.mjs.map +1 -1
  132. package/esm/rules/date/date-period-rules.d.mts +16 -16
  133. package/esm/rules/date/date-period-rules.d.mts.map +1 -1
  134. package/esm/rules/date/date-period-rules.mjs +24 -12
  135. package/esm/rules/date/date-period-rules.mjs.map +1 -1
  136. package/esm/rules/date/date-relative-rules.d.mts +4 -5
  137. package/esm/rules/date/date-relative-rules.d.mts.map +1 -1
  138. package/esm/rules/date/date-relative-rules.mjs +3 -3
  139. package/esm/rules/date/date-relative-rules.mjs.map +1 -1
  140. package/esm/rules/date/date-special-rules.d.mts +4 -5
  141. package/esm/rules/date/date-special-rules.d.mts.map +1 -1
  142. package/esm/rules/date/date.d.mts +16 -17
  143. package/esm/rules/date/date.d.mts.map +1 -1
  144. package/esm/rules/date/date.mjs +4 -2
  145. package/esm/rules/date/date.mjs.map +1 -1
  146. package/esm/rules/date/index.d.mts +8 -0
  147. package/esm/rules/date/index.mjs +1 -1
  148. package/esm/rules/file/dimensions.d.mts +5 -6
  149. package/esm/rules/file/dimensions.d.mts.map +1 -1
  150. package/esm/rules/file/file-size.d.mts +3 -4
  151. package/esm/rules/file/file-size.d.mts.map +1 -1
  152. package/esm/rules/file/index.d.mts +3 -0
  153. package/esm/rules/file/index.mjs +1 -1
  154. package/esm/rules/index.d.mts +56 -0
  155. package/esm/rules/index.mjs +1 -1
  156. package/esm/rules/length/index.d.mts +2 -0
  157. package/esm/rules/length/index.mjs +1 -1
  158. package/esm/rules/length/length-rules.d.mts +8 -9
  159. package/esm/rules/length/length-rules.d.mts.map +1 -1
  160. package/esm/rules/number/index.d.mts +2 -0
  161. package/esm/rules/number/index.mjs +1 -1
  162. package/esm/rules/number/number-rules.d.mts +11 -12
  163. package/esm/rules/number/number-rules.d.mts.map +1 -1
  164. package/esm/rules/number/number-rules.mjs +12 -6
  165. package/esm/rules/number/number-rules.mjs.map +1 -1
  166. package/esm/rules/scalar/index.mjs +1 -1
  167. package/esm/rules/string/alpha.d.mts +4 -5
  168. package/esm/rules/string/alpha.d.mts.map +1 -1
  169. package/esm/rules/string/credit-card.d.mts +2 -3
  170. package/esm/rules/string/credit-card.d.mts.map +1 -1
  171. package/esm/rules/string/email.d.mts +2 -3
  172. package/esm/rules/string/email.d.mts.map +1 -1
  173. package/esm/rules/string/id-formats.d.mts +6 -7
  174. package/esm/rules/string/id-formats.d.mts.map +1 -1
  175. package/esm/rules/string/index.d.mts +12 -0
  176. package/esm/rules/string/index.mjs +1 -1
  177. package/esm/rules/string/ip.d.mts +7 -8
  178. package/esm/rules/string/ip.d.mts.map +1 -1
  179. package/esm/rules/string/matches.d.mts +2 -3
  180. package/esm/rules/string/matches.d.mts.map +1 -1
  181. package/esm/rules/string/pattern.d.mts +2 -3
  182. package/esm/rules/string/pattern.d.mts.map +1 -1
  183. package/esm/rules/string/string-comparison.d.mts +5 -6
  184. package/esm/rules/string/string-comparison.d.mts.map +1 -1
  185. package/esm/rules/string/strong-password-rule.d.mts +2 -3
  186. package/esm/rules/string/strong-password-rule.d.mts.map +1 -1
  187. package/esm/rules/string/url.d.mts +2 -3
  188. package/esm/rules/string/url.d.mts.map +1 -1
  189. package/esm/rules/string/without-whitespace.d.mts +2 -3
  190. package/esm/rules/string/without-whitespace.d.mts.map +1 -1
  191. package/esm/standard-schema/index.d.mts +4 -0
  192. package/esm/standard-schema/json-schema.d.mts +5 -7
  193. package/esm/standard-schema/json-schema.d.mts.map +1 -1
  194. package/esm/standard-schema/json-schema.mjs.map +1 -1
  195. package/esm/standard-schema/map-result.d.mts +2 -3
  196. package/esm/standard-schema/map-result.d.mts.map +1 -1
  197. package/esm/standard-schema/map-result.mjs.map +1 -1
  198. package/esm/standard-schema/types.d.mts +4 -5
  199. package/esm/standard-schema/types.d.mts.map +1 -1
  200. package/esm/string.d.mts +2 -3
  201. package/esm/string.d.mts.map +1 -1
  202. package/esm/types/conditional-types.d.mts +8 -6
  203. package/esm/types/conditional-types.d.mts.map +1 -1
  204. package/esm/types/context-types.d.mts +24 -15
  205. package/esm/types/context-types.d.mts.map +1 -1
  206. package/esm/types/data-transformer-types.d.mts +3 -5
  207. package/esm/types/data-transformer-types.d.mts.map +1 -1
  208. package/esm/types/date-types.d.mts +2 -3
  209. package/esm/types/date-types.d.mts.map +1 -1
  210. package/esm/types/file.types.d.mts +1 -2
  211. package/esm/types/file.types.d.mts.map +1 -1
  212. package/esm/types/index.d.mts +11 -0
  213. package/esm/types/inference-types.d.mts +15 -14
  214. package/esm/types/inference-types.d.mts.map +1 -1
  215. package/esm/types/mutator-types.d.mts +9 -7
  216. package/esm/types/mutator-types.d.mts.map +1 -1
  217. package/esm/types/result-types.d.mts +12 -7
  218. package/esm/types/result-types.d.mts.map +1 -1
  219. package/esm/types/rule-types.d.mts +33 -15
  220. package/esm/types/rule-types.d.mts.map +1 -1
  221. package/esm/types/schema-types.d.mts +1 -3
  222. package/esm/types/schema-types.d.mts.map +1 -1
  223. package/esm/validators/any-validator.d.mts +1 -3
  224. package/esm/validators/any-validator.d.mts.map +1 -1
  225. package/esm/validators/array-validator.d.mts +2 -3
  226. package/esm/validators/array-validator.d.mts.map +1 -1
  227. package/esm/validators/array-validator.mjs +3 -3
  228. package/esm/validators/array-validator.mjs.map +1 -1
  229. package/esm/validators/base-validator.d.mts +10 -11
  230. package/esm/validators/base-validator.d.mts.map +1 -1
  231. package/esm/validators/base-validator.mjs +52 -21
  232. package/esm/validators/base-validator.mjs.map +1 -1
  233. package/esm/validators/boolean-validator.d.mts +1 -3
  234. package/esm/validators/boolean-validator.d.mts.map +1 -1
  235. package/esm/validators/computed-validator.d.mts +3 -4
  236. package/esm/validators/computed-validator.d.mts.map +1 -1
  237. package/esm/validators/computed-validator.mjs +4 -4
  238. package/esm/validators/computed-validator.mjs.map +1 -1
  239. package/esm/validators/date-validator.d.mts +2 -3
  240. package/esm/validators/date-validator.d.mts.map +1 -1
  241. package/esm/validators/discriminated-union-validator.d.mts +3 -3
  242. package/esm/validators/discriminated-union-validator.d.mts.map +1 -1
  243. package/esm/validators/discriminated-union-validator.mjs +1 -1
  244. package/esm/validators/discriminated-union-validator.mjs.map +1 -1
  245. package/esm/validators/float-validator.d.mts +1 -3
  246. package/esm/validators/float-validator.d.mts.map +1 -1
  247. package/esm/validators/index.d.mts +2 -1
  248. package/esm/validators/index.mjs +1 -1
  249. package/esm/validators/instanceof-validator.d.mts +1 -3
  250. package/esm/validators/instanceof-validator.d.mts.map +1 -1
  251. package/esm/validators/int-validator.d.mts +1 -3
  252. package/esm/validators/int-validator.d.mts.map +1 -1
  253. package/esm/validators/lazy-validator.d.mts +2 -3
  254. package/esm/validators/lazy-validator.d.mts.map +1 -1
  255. package/esm/validators/lazy-validator.mjs +1 -1
  256. package/esm/validators/lazy-validator.mjs.map +1 -1
  257. package/esm/validators/literal-validator.d.mts +1 -3
  258. package/esm/validators/literal-validator.d.mts.map +1 -1
  259. package/esm/validators/managed-validator.d.mts +3 -4
  260. package/esm/validators/managed-validator.d.mts.map +1 -1
  261. package/esm/validators/methods/equality-conditional-methods.d.mts +3 -4
  262. package/esm/validators/methods/equality-conditional-methods.d.mts.map +1 -1
  263. package/esm/validators/methods/forbidden-methods.d.mts +2 -3
  264. package/esm/validators/methods/forbidden-methods.d.mts.map +1 -1
  265. package/esm/validators/methods/present-methods.d.mts +2 -3
  266. package/esm/validators/methods/present-methods.d.mts.map +1 -1
  267. package/esm/validators/methods/required-methods.d.mts +3 -4
  268. package/esm/validators/methods/required-methods.d.mts.map +1 -1
  269. package/esm/validators/number-validator.d.mts +1 -3
  270. package/esm/validators/number-validator.d.mts.map +1 -1
  271. package/esm/validators/number-validator.mjs +12 -8
  272. package/esm/validators/number-validator.mjs.map +1 -1
  273. package/esm/validators/numeric-validator.d.mts +1 -3
  274. package/esm/validators/numeric-validator.d.mts.map +1 -1
  275. package/esm/validators/object-validator.d.mts +2 -3
  276. package/esm/validators/object-validator.d.mts.map +1 -1
  277. package/esm/validators/object-validator.mjs +9 -7
  278. package/esm/validators/object-validator.mjs.map +1 -1
  279. package/esm/validators/primitive-validator.d.mts +1 -3
  280. package/esm/validators/primitive-validator.d.mts.map +1 -1
  281. package/esm/validators/record-validator.d.mts +2 -3
  282. package/esm/validators/record-validator.d.mts.map +1 -1
  283. package/esm/validators/record-validator.mjs +3 -3
  284. package/esm/validators/record-validator.mjs.map +1 -1
  285. package/esm/validators/scalar-validator.d.mts +1 -3
  286. package/esm/validators/scalar-validator.d.mts.map +1 -1
  287. package/esm/validators/scalar-validator.mjs.map +1 -1
  288. package/esm/validators/string-validator.d.mts +1 -3
  289. package/esm/validators/string-validator.d.mts.map +1 -1
  290. package/esm/validators/tuple-validator.d.mts +2 -3
  291. package/esm/validators/tuple-validator.d.mts.map +1 -1
  292. package/esm/validators/tuple-validator.mjs +3 -3
  293. package/esm/validators/tuple-validator.mjs.map +1 -1
  294. package/esm/validators/union-validator.d.mts +4 -4
  295. package/esm/validators/union-validator.d.mts.map +1 -1
  296. package/esm/validators/union-validator.mjs +3 -1
  297. package/esm/validators/union-validator.mjs.map +1 -1
  298. package/llms-full.txt +656 -527
  299. package/llms.txt +1 -1
  300. package/package.json +1 -1
  301. package/skills/bridge-standard-schema/SKILL.md +60 -36
  302. package/skills/compose-seal-modifiers/SKILL.md +89 -53
  303. package/skills/define-structural-shape/SKILL.md +41 -27
  304. package/skills/define-structural-shape/array-methods.md +27 -27
  305. package/skills/define-structural-shape/object-methods.md +38 -30
  306. package/skills/extend-seal-with-plugins/SKILL.md +39 -5
  307. package/skills/generate-json-schema/SKILL.md +13 -13
  308. package/skills/handle-seal-errors/SKILL.md +23 -23
  309. package/skills/index.md +4 -1
  310. package/skills/overview/SKILL.md +10 -2
  311. package/skills/pick-seal-primitive/SKILL.md +45 -45
  312. package/skills/pick-seal-primitive/date-methods.md +96 -96
  313. package/skills/pick-seal-primitive/number-methods.md +55 -55
  314. package/skills/pick-seal-primitive/string-methods.md +107 -102
  315. package/skills/seal-basics/SKILL.md +14 -14
  316. package/cjs/object--LXRt5RF.cjs.map +0 -1
  317. package/cjs/required-methods-DYsRO9aZ.cjs.map +0 -1
  318. package/cjs/string-DsqnKoSB.cjs.map +0 -1
@@ -1,18 +1,18 @@
1
1
  import { Mutator } from "../types/mutator-types.mjs";
2
-
2
+ import "../types/index.mjs";
3
3
  //#region ../../packages/seal/src/mutators/string-mutators.d.ts
4
4
  /** Convert string to lowercase */
5
- declare const lowercaseMutator: Mutator;
5
+ export declare const lowercaseMutator: Mutator;
6
6
  /** Convert string to uppercase */
7
- declare const uppercaseMutator: Mutator;
7
+ export declare const uppercaseMutator: Mutator;
8
8
  /** Capitalize only the first letter of the string */
9
- declare const capitalizeMutator: Mutator;
9
+ export declare const capitalizeMutator: Mutator;
10
10
  /** Capitalize the first letter of each word (Title Case) */
11
- declare const titleCaseMutator: Mutator;
11
+ export declare const titleCaseMutator: Mutator;
12
12
  /** Convert value to string */
13
- declare const stringifyMutator: Mutator;
13
+ export declare const stringifyMutator: Mutator;
14
14
  /** Trim whitespace */
15
- declare const trimMutator: Mutator;
15
+ export declare const trimMutator: Mutator;
16
16
  /**
17
17
  * Strip HTML tags with a naive `<...>` regex.
18
18
  *
@@ -22,69 +22,68 @@ declare const trimMutator: Mutator;
22
22
  * untrusted rich text safe to render — use a real parser-based sanitizer
23
23
  * (e.g. DOMPurify / sanitize-html) for that.
24
24
  */
25
- declare const stripTagsMutator: Mutator;
25
+ export declare const stripTagsMutator: Mutator;
26
26
  /**
27
27
  * @deprecated Renamed to {@link stripTagsMutator} — the old name implied
28
28
  * XSS safety this tag-stripping regex does not provide. Kept as an alias
29
29
  * for backward compatibility; switch to `stripTagsMutator`.
30
30
  */
31
- declare const safeHtmlMutator: Mutator;
31
+ export declare const safeHtmlMutator: Mutator;
32
32
  /** HTML escape */
33
- declare const htmlEscapeMutator: Mutator;
33
+ export declare const htmlEscapeMutator: Mutator;
34
34
  /** Remove special characters */
35
- declare const removeSpecialCharactersMutator: Mutator;
35
+ export declare const removeSpecialCharactersMutator: Mutator;
36
36
  /** URL decode */
37
- declare const urlDecodeMutator: Mutator;
37
+ export declare const urlDecodeMutator: Mutator;
38
38
  /** URL encode */
39
- declare const urlEncodeMutator: Mutator;
39
+ export declare const urlEncodeMutator: Mutator;
40
40
  /** Convert to camelCase */
41
- declare const camelCaseMutator: Mutator;
41
+ export declare const camelCaseMutator: Mutator;
42
42
  /** Convert to PascalCase */
43
- declare const pascalCaseMutator: Mutator;
43
+ export declare const pascalCaseMutator: Mutator;
44
44
  /** Convert to snake_case */
45
- declare const snakeCaseMutator: Mutator;
45
+ export declare const snakeCaseMutator: Mutator;
46
46
  /** Convert to kebab-case */
47
- declare const kebabCaseMutator: Mutator;
47
+ export declare const kebabCaseMutator: Mutator;
48
48
  /** Convert to URL-friendly slug */
49
- declare const slugMutator: Mutator;
49
+ export declare const slugMutator: Mutator;
50
50
  /** Trim from the left/start */
51
- declare const ltrimMutator: Mutator;
51
+ export declare const ltrimMutator: Mutator;
52
52
  /** Trim from the right/end */
53
- declare const rtrimMutator: Mutator;
53
+ export declare const rtrimMutator: Mutator;
54
54
  /** Base64 encode */
55
- declare const base64EncodeMutator: Mutator;
55
+ export declare const base64EncodeMutator: Mutator;
56
56
  /** Base64 decode */
57
- declare const base64DecodeMutator: Mutator;
57
+ export declare const base64DecodeMutator: Mutator;
58
58
  /** Replace substring or pattern */
59
- declare const replaceMutator: Mutator;
59
+ export declare const replaceMutator: Mutator;
60
60
  /** Replace all occurrences of substring or pattern */
61
- declare const replaceAllMutator: Mutator;
61
+ export declare const replaceAllMutator: Mutator;
62
62
  /** Append/suffix text to the end */
63
- declare const appendMutator: Mutator;
63
+ export declare const appendMutator: Mutator;
64
64
  /** Prepend/prefix text to the beginning */
65
- declare const prependMutator: Mutator;
65
+ export declare const prependMutator: Mutator;
66
66
  /** Reverse the string */
67
- declare const reverseMutator: Mutator;
67
+ export declare const reverseMutator: Mutator;
68
68
  /** Truncate to a maximum length */
69
- declare const truncateMutator: Mutator;
69
+ export declare const truncateMutator: Mutator;
70
70
  /** Trim multiple whitespace into single space */
71
- declare const trimMultipleWhitespaceMutator: Mutator;
71
+ export declare const trimMultipleWhitespaceMutator: Mutator;
72
72
  /** Pad string from the start to reach target length */
73
- declare const padStartMutator: Mutator;
73
+ export declare const padStartMutator: Mutator;
74
74
  /** Pad string from the end to reach target length */
75
- declare const padEndMutator: Mutator;
75
+ export declare const padEndMutator: Mutator;
76
76
  /** Repeat string N times */
77
- declare const repeatMutator: Mutator;
77
+ export declare const repeatMutator: Mutator;
78
78
  /** Mask part of string */
79
- declare const maskMutator: Mutator;
79
+ export declare const maskMutator: Mutator;
80
80
  /** Unescape HTML entities */
81
- declare const unescapeHtmlMutator: Mutator;
81
+ export declare const unescapeHtmlMutator: Mutator;
82
82
  /** Keep only alphabetic characters */
83
- declare const alphaOnlyMutator: Mutator;
83
+ export declare const alphaOnlyMutator: Mutator;
84
84
  /** Keep only alphanumeric characters */
85
- declare const alphanumericOnlyMutator: Mutator;
85
+ export declare const alphanumericOnlyMutator: Mutator;
86
86
  /** Remove all numeric characters */
87
- declare const removeNumbersMutator: Mutator;
87
+ export declare const removeNumbersMutator: Mutator;
88
88
  //#endregion
89
- export { alphaOnlyMutator, alphanumericOnlyMutator, appendMutator, base64DecodeMutator, base64EncodeMutator, camelCaseMutator, capitalizeMutator, htmlEscapeMutator, kebabCaseMutator, lowercaseMutator, ltrimMutator, maskMutator, padEndMutator, padStartMutator, pascalCaseMutator, prependMutator, removeNumbersMutator, removeSpecialCharactersMutator, repeatMutator, replaceAllMutator, replaceMutator, reverseMutator, rtrimMutator, safeHtmlMutator, slugMutator, snakeCaseMutator, stringifyMutator, stripTagsMutator, titleCaseMutator, trimMultipleWhitespaceMutator, trimMutator, truncateMutator, unescapeHtmlMutator, uppercaseMutator, urlDecodeMutator, urlEncodeMutator };
90
89
  //# sourceMappingURL=string-mutators.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"string-mutators.d.mts","names":[],"sources":["../../../../../../../../packages/seal/src/mutators/string-mutators.ts"],"mappings":";;;;cAca,gBAAA,EAAkB,OAE9B;AAFD;AAAA,cAKa,gBAAA,EAAkB,OAE9B;;cAGY,iBAAA,EAAmB,OAG/B;AAXA;AAAA,cAcY,gBAAA,EAAkB,OAE9B;;cAGY,gBAAA,EAAkB,OAW9B;;cAGY,WAAA,EAAa,OAEzB;AA3BD;;;;AAGC;AAGD;;;;AANA,cAsCa,gBAAA,EAAkB,OAE9B;AA7BD;;;;AAWC;AAXD,cAoCa,eAAA,EAAiB,OAA0B;;cAG3C,iBAAA,EAAmB,OAQ/B;;cAGY,8BAAA,EAAgC,OAE5C;AAzBD;AAAA,cA4Ba,gBAAA,EAAkB,OAE9B;;cAGY,gBAAA,EAAkB,OAE9B;AAjCA;AAAA,cAoCY,gBAAA,EAAkB,OAE9B;;cAGY,iBAAA,EAAmB,OAE/B;;cAGY,gBAAA,EAAkB,OAE9B;AAtCD;AAAA,cAyCa,gBAAA,EAAkB,OAE9B;;cAGY,WAAA,EAAa,OASzB;AA/CA;AAAA,cAkDY,YAAA,EAAc,OAE1B;;cAGY,YAAA,EAAc,OAE1B;;cAGY,mBAAA,EAAqB,OAEjC;AAtDD;AAAA,cAyDa,mBAAA,EAAqB,OAEjC;;cAGY,cAAA,EAAgB,OAI5B;AAhEA;AAAA,cAmEY,iBAAA,EAAmB,OAK/B;;cAGY,aAAA,EAAe,OAG3B;;cAGY,cAAA,EAAgB,OAG5B;AA5ED;AAAA,cA+Ea,cAAA,EAAgB,OAE5B;;cAGY,eAAA,EAAiB,OAK7B;AAvFA;AAAA,cA0FY,6BAAA,EAA+B,OAE3C;;cAGY,eAAA,EAAiB,OAI7B;;cAGY,aAAA,EAAe,OAI3B;AAlGD;AAAA,cAqGa,aAAA,EAAe,OAG3B;;cAGY,WAAA,EAAa,OASzB;AAlHA;AAAA,cAqHY,mBAAA,EAAqB,OAQjC;;cAGY,gBAAA,EAAkB,OAE9B;;cAGY,uBAAA,EAAyB,OAErC;AA/HD;AAAA,cAkIa,oBAAA,EAAsB,OAElC"}
1
+ {"version":3,"file":"string-mutators.d.mts","names":[],"sources":["../../../../../../../../packages/seal/src/mutators/string-mutators.ts"],"mappings":";;;;qBAca,kBAAkB;;qBAKlB,kBAAkB;;qBAKlB,mBAAmB;;qBAMnB,kBAAkB;;qBAKlB,kBAAkB;;qBAclB,aAAa;;;;;;;;;;qBAab,kBAAkB;;;;;;qBASlB,iBAAiB;;qBAGjB,mBAAmB;;qBAWnB,gCAAgC;;qBAKhC,kBAAkB;;qBAKlB,kBAAkB;;qBAKlB,kBAAkB;;qBAKlB,mBAAmB;;qBAKnB,kBAAkB;;qBAKlB,kBAAkB;;qBAKlB,aAAa;;qBAYb,cAAc;;qBAKd,cAAc;;qBAKd,qBAAqB;;qBAKrB,qBAAqB;;qBAKrB,gBAAgB;;qBAOhB,mBAAmB;;qBAQnB,eAAe;;qBAMf,gBAAgB;;qBAMhB,gBAAgB;;qBAKhB,iBAAiB;;qBAQjB,+BAA+B;;qBAK/B,iBAAiB;;qBAOjB,eAAe;;qBAOf,eAAe;;qBAMf,aAAa;;qBAYb,qBAAqB;;qBAWrB,kBAAkB;;qBAKlB,yBAAyB;;qBAKzB,sBAAsB"}
@@ -100,13 +100,13 @@ const base64DecodeMutator = async (value) => {
100
100
  };
101
101
  /** Replace substring or pattern */
102
102
  const replaceMutator = async (value, context) => {
103
- const { search, replace } = context?.options;
103
+ const { search, replace } = context?.options ?? {};
104
104
  if (!search) return value?.toString();
105
105
  return value?.toString().replace(search, replace ?? "");
106
106
  };
107
107
  /** Replace all occurrences of substring or pattern */
108
108
  const replaceAllMutator = async (value, context) => {
109
- const { search, replace } = context?.options;
109
+ const { search, replace } = context?.options ?? {};
110
110
  if (!search) return value?.toString();
111
111
  const searchValue = typeof search === "string" ? new RegExp(search, "g") : search;
112
112
  return value?.toString().replace(searchValue, replace ?? "");
@@ -127,7 +127,9 @@ const reverseMutator = async (value) => {
127
127
  /** Truncate to a maximum length */
128
128
  const truncateMutator = async (value, context) => {
129
129
  const str = value?.toString();
130
- return readMoreChars(str, context?.options?.maxLength ?? 100, context?.options?.suffix ?? "...");
130
+ const maxLength = context?.options?.maxLength ?? 100;
131
+ const suffix = context?.options?.suffix ?? "...";
132
+ return readMoreChars(str, maxLength, suffix);
131
133
  };
132
134
  /** Trim multiple whitespace into single space */
133
135
  const trimMultipleWhitespaceMutator = async (value) => {
@@ -1 +1 @@
1
- {"version":3,"file":"string-mutators.mjs","names":[],"sources":["../../../../../../../../packages/seal/src/mutators/string-mutators.ts"],"sourcesContent":["import {\n capitalize,\n ltrim,\n readMoreChars,\n rtrim,\n toCamelCase,\n toKebabCase,\n toSnakeCase,\n toStudlyCase,\n trim,\n} from \"@mongez/reinforcements\";\nimport type { Mutator } from \"../types\";\n\n/** Convert string to lowercase */\nexport const lowercaseMutator: Mutator = async (value) => {\n return value?.toString().toLowerCase();\n};\n\n/** Convert string to uppercase */\nexport const uppercaseMutator: Mutator = async (value) => {\n return value?.toString().toUpperCase();\n};\n\n/** Capitalize only the first letter of the string */\nexport const capitalizeMutator: Mutator = async (value) => {\n const str = value?.toString();\n return str.charAt(0).toUpperCase() + str.slice(1).toLowerCase();\n};\n\n/** Capitalize the first letter of each word (Title Case) */\nexport const titleCaseMutator: Mutator = async (value) => {\n return capitalize(value?.toString());\n};\n\n/** Convert value to string */\nexport const stringifyMutator: Mutator = async (value) => {\n if (!value && value !== 0) return \"\";\n // only convert numbers, boolean and strings\n\n // Handle strings (pass through)\n if (typeof value === \"string\") return value;\n\n // Handle scalar types (number, boolean)\n if (typeof value === \"number\" || typeof value === \"boolean\") {\n return String(value);\n }\n};\n\n/** Trim whitespace */\nexport const trimMutator: Mutator = async (value, context) => {\n return trim(value?.toString(), context?.options?.needle ?? \" \");\n};\n\n/**\n * Strip HTML tags with a naive `<...>` regex.\n *\n * This is a **tag stripper, not an XSS sanitizer**: it is not a parser, so\n * malformed/nested markup, attribute payloads, or content re-introduced\n * later in a pipeline can defeat it. Do not rely on this alone to make\n * untrusted rich text safe to render — use a real parser-based sanitizer\n * (e.g. DOMPurify / sanitize-html) for that.\n */\nexport const stripTagsMutator: Mutator = async (value) => {\n return value?.toString().replace(/<[^>]*>?/gm, \"\");\n};\n\n/**\n * @deprecated Renamed to {@link stripTagsMutator} — the old name implied\n * XSS safety this tag-stripping regex does not provide. Kept as an alias\n * for backward compatibility; switch to `stripTagsMutator`.\n */\nexport const safeHtmlMutator: Mutator = stripTagsMutator;\n\n/** HTML escape */\nexport const htmlEscapeMutator: Mutator = async (value) => {\n return value\n ?.toString()\n .replace(/&/g, \"&amp;\")\n .replace(/</g, \"&lt;\")\n .replace(/>/g, \"&gt;\")\n .replace(/\"/g, \"&quot;\")\n .replace(/'/g, \"&#039;\");\n};\n\n/** Remove special characters */\nexport const removeSpecialCharactersMutator: Mutator = async (value) => {\n return value?.toString().replace(/[^a-zA-Z0-9]/g, \"\");\n};\n\n/** URL decode */\nexport const urlDecodeMutator: Mutator = async (value) => {\n return decodeURIComponent(value);\n};\n\n/** URL encode */\nexport const urlEncodeMutator: Mutator = async (value) => {\n return encodeURIComponent(value);\n};\n\n/** Convert to camelCase */\nexport const camelCaseMutator: Mutator = async (value) => {\n return toCamelCase(value?.toString());\n};\n\n/** Convert to PascalCase */\nexport const pascalCaseMutator: Mutator = async (value) => {\n return toStudlyCase(value?.toString());\n};\n\n/** Convert to snake_case */\nexport const snakeCaseMutator: Mutator = async (value) => {\n return toSnakeCase(value?.toString());\n};\n\n/** Convert to kebab-case */\nexport const kebabCaseMutator: Mutator = async (value) => {\n return toKebabCase(value?.toString());\n};\n\n/** Convert to URL-friendly slug */\nexport const slugMutator: Mutator = async (value) => {\n return value\n ?.toString()\n .toLowerCase()\n .trim()\n .replace(/[^\\w\\s-]/g, \"\")\n .replace(/[\\s_]+/g, \"-\")\n .replace(/--+/g, \"-\")\n .replace(/^-+|-+$/g, \"\");\n};\n\n/** Trim from the left/start */\nexport const ltrimMutator: Mutator = async (value, context) => {\n return ltrim(value?.toString(), context?.options?.needle ?? \" \");\n};\n\n/** Trim from the right/end */\nexport const rtrimMutator: Mutator = async (value, context) => {\n return rtrim(value?.toString(), context?.options?.needle ?? \" \");\n};\n\n/** Base64 encode */\nexport const base64EncodeMutator: Mutator = async (value) => {\n return Buffer.from(value?.toString()).toString(\"base64\");\n};\n\n/** Base64 decode */\nexport const base64DecodeMutator: Mutator = async (value) => {\n return Buffer.from(value?.toString(), \"base64\").toString(\"utf-8\");\n};\n\n/** Replace substring or pattern */\nexport const replaceMutator: Mutator = async (value, context) => {\n const { search, replace } = context?.options;\n if (!search) return value?.toString();\n return value?.toString().replace(search, replace ?? \"\");\n};\n\n/** Replace all occurrences of substring or pattern */\nexport const replaceAllMutator: Mutator = async (value, context) => {\n const { search, replace } = context?.options;\n if (!search) return value?.toString();\n const searchValue = typeof search === \"string\" ? new RegExp(search, \"g\") : search;\n return value?.toString().replace(searchValue, replace ?? \"\");\n};\n\n/** Append/suffix text to the end */\nexport const appendMutator: Mutator = async (value, context) => {\n const suffix = context?.options?.suffix ?? \"\";\n return value?.toString() + suffix;\n};\n\n/** Prepend/prefix text to the beginning */\nexport const prependMutator: Mutator = async (value, context) => {\n const prefix = context?.options?.prefix ?? \"\";\n return prefix + value?.toString();\n};\n\n/** Reverse the string */\nexport const reverseMutator: Mutator = async (value) => {\n return value?.toString().split(\"\").reverse().join(\"\");\n};\n\n/** Truncate to a maximum length */\nexport const truncateMutator: Mutator = async (value, context) => {\n const str = value?.toString();\n const maxLength = context?.options?.maxLength ?? 100;\n const suffix = context?.options?.suffix ?? \"...\";\n return readMoreChars(str, maxLength, suffix);\n};\n\n/** Trim multiple whitespace into single space */\nexport const trimMultipleWhitespaceMutator: Mutator = async (value) => {\n return value?.toString().replace(/\\s+/g, \" \");\n};\n\n/** Pad string from the start to reach target length */\nexport const padStartMutator: Mutator = async (value, context) => {\n const length = context?.options?.length ?? 0;\n const char = context?.options?.char ?? \" \";\n return value?.toString().padStart(length, char);\n};\n\n/** Pad string from the end to reach target length */\nexport const padEndMutator: Mutator = async (value, context) => {\n const length = context?.options?.length ?? 0;\n const char = context?.options?.char ?? \" \";\n return value?.toString().padEnd(length, char);\n};\n\n/** Repeat string N times */\nexport const repeatMutator: Mutator = async (value, context) => {\n const count = context?.options?.count ?? 1;\n return value?.toString()?.repeat(count);\n};\n\n/** Mask part of string */\nexport const maskMutator: Mutator = async (value, context) => {\n const str = value?.toString();\n const maskChar = context?.options?.char ?? \"*\";\n const start = context?.options?.start ?? 0;\n const end = context?.options?.end ?? str?.length;\n const visibleStart = str?.substring(0, start);\n const visibleEnd = str?.substring(end);\n const maskedLength = end - start;\n return visibleStart + maskChar.repeat(maskedLength) + visibleEnd;\n};\n\n/** Unescape HTML entities */\nexport const unescapeHtmlMutator: Mutator = async (value) => {\n return value\n ?.toString()\n .replace(/&amp;/g, \"&\")\n .replace(/&lt;/g, \"<\")\n .replace(/&gt;/g, \">\")\n .replace(/&quot;/g, '\"')\n .replace(/&#039;/g, \"'\");\n};\n\n/** Keep only alphabetic characters */\nexport const alphaOnlyMutator: Mutator = async (value) => {\n return value.toString().replace(/[^a-zA-Z]/g, \"\");\n};\n\n/** Keep only alphanumeric characters */\nexport const alphanumericOnlyMutator: Mutator = async (value) => {\n return value.toString().replace(/[^a-zA-Z0-9]/g, \"\");\n};\n\n/** Remove all numeric characters */\nexport const removeNumbersMutator: Mutator = async (value) => {\n return value.toString().replace(/[0-9]/g, \"\");\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"string-mutators.mjs","names":[],"sources":["../../../../../../../../packages/seal/src/mutators/string-mutators.ts"],"sourcesContent":["import {\n capitalize,\n ltrim,\n readMoreChars,\n rtrim,\n toCamelCase,\n toKebabCase,\n toSnakeCase,\n toStudlyCase,\n trim,\n} from \"@mongez/reinforcements\";\nimport type { Mutator } from \"../types\";\n\n/** Convert string to lowercase */\nexport const lowercaseMutator: Mutator = async (value) => {\n return value?.toString().toLowerCase();\n};\n\n/** Convert string to uppercase */\nexport const uppercaseMutator: Mutator = async (value) => {\n return value?.toString().toUpperCase();\n};\n\n/** Capitalize only the first letter of the string */\nexport const capitalizeMutator: Mutator = async (value) => {\n const str = value?.toString();\n return str.charAt(0).toUpperCase() + str.slice(1).toLowerCase();\n};\n\n/** Capitalize the first letter of each word (Title Case) */\nexport const titleCaseMutator: Mutator = async (value) => {\n return capitalize(value?.toString());\n};\n\n/** Convert value to string */\nexport const stringifyMutator: Mutator = async (value) => {\n if (!value && value !== 0) return \"\";\n // only convert numbers, boolean and strings\n\n // Handle strings (pass through)\n if (typeof value === \"string\") return value;\n\n // Handle scalar types (number, boolean)\n if (typeof value === \"number\" || typeof value === \"boolean\") {\n return String(value);\n }\n};\n\n/** Trim whitespace */\nexport const trimMutator: Mutator = async (value, context) => {\n return trim(value?.toString(), context?.options?.needle ?? \" \");\n};\n\n/**\n * Strip HTML tags with a naive `<...>` regex.\n *\n * This is a **tag stripper, not an XSS sanitizer**: it is not a parser, so\n * malformed/nested markup, attribute payloads, or content re-introduced\n * later in a pipeline can defeat it. Do not rely on this alone to make\n * untrusted rich text safe to render — use a real parser-based sanitizer\n * (e.g. DOMPurify / sanitize-html) for that.\n */\nexport const stripTagsMutator: Mutator = async (value) => {\n return value?.toString().replace(/<[^>]*>?/gm, \"\");\n};\n\n/**\n * @deprecated Renamed to {@link stripTagsMutator} — the old name implied\n * XSS safety this tag-stripping regex does not provide. Kept as an alias\n * for backward compatibility; switch to `stripTagsMutator`.\n */\nexport const safeHtmlMutator: Mutator = stripTagsMutator;\n\n/** HTML escape */\nexport const htmlEscapeMutator: Mutator = async (value) => {\n return value\n ?.toString()\n .replace(/&/g, \"&amp;\")\n .replace(/</g, \"&lt;\")\n .replace(/>/g, \"&gt;\")\n .replace(/\"/g, \"&quot;\")\n .replace(/'/g, \"&#039;\");\n};\n\n/** Remove special characters */\nexport const removeSpecialCharactersMutator: Mutator = async (value) => {\n return value?.toString().replace(/[^a-zA-Z0-9]/g, \"\");\n};\n\n/** URL decode */\nexport const urlDecodeMutator: Mutator = async (value) => {\n return decodeURIComponent(value);\n};\n\n/** URL encode */\nexport const urlEncodeMutator: Mutator = async (value) => {\n return encodeURIComponent(value);\n};\n\n/** Convert to camelCase */\nexport const camelCaseMutator: Mutator = async (value) => {\n return toCamelCase(value?.toString());\n};\n\n/** Convert to PascalCase */\nexport const pascalCaseMutator: Mutator = async (value) => {\n return toStudlyCase(value?.toString());\n};\n\n/** Convert to snake_case */\nexport const snakeCaseMutator: Mutator = async (value) => {\n return toSnakeCase(value?.toString());\n};\n\n/** Convert to kebab-case */\nexport const kebabCaseMutator: Mutator = async (value) => {\n return toKebabCase(value?.toString());\n};\n\n/** Convert to URL-friendly slug */\nexport const slugMutator: Mutator = async (value) => {\n return value\n ?.toString()\n .toLowerCase()\n .trim()\n .replace(/[^\\w\\s-]/g, \"\")\n .replace(/[\\s_]+/g, \"-\")\n .replace(/--+/g, \"-\")\n .replace(/^-+|-+$/g, \"\");\n};\n\n/** Trim from the left/start */\nexport const ltrimMutator: Mutator = async (value, context) => {\n return ltrim(value?.toString(), context?.options?.needle ?? \" \");\n};\n\n/** Trim from the right/end */\nexport const rtrimMutator: Mutator = async (value, context) => {\n return rtrim(value?.toString(), context?.options?.needle ?? \" \");\n};\n\n/** Base64 encode */\nexport const base64EncodeMutator: Mutator = async (value) => {\n return Buffer.from(value?.toString()).toString(\"base64\");\n};\n\n/** Base64 decode */\nexport const base64DecodeMutator: Mutator = async (value) => {\n return Buffer.from(value?.toString(), \"base64\").toString(\"utf-8\");\n};\n\n/** Replace substring or pattern */\nexport const replaceMutator: Mutator = async (value, context) => {\n const { search, replace } = context?.options ?? {};\n if (!search) return value?.toString();\n return value?.toString().replace(search, replace ?? \"\");\n};\n\n/** Replace all occurrences of substring or pattern */\nexport const replaceAllMutator: Mutator = async (value, context) => {\n const { search, replace } = context?.options ?? {};\n if (!search) return value?.toString();\n const searchValue = typeof search === \"string\" ? new RegExp(search, \"g\") : search;\n return value?.toString().replace(searchValue, replace ?? \"\");\n};\n\n/** Append/suffix text to the end */\nexport const appendMutator: Mutator = async (value, context) => {\n const suffix = context?.options?.suffix ?? \"\";\n return value?.toString() + suffix;\n};\n\n/** Prepend/prefix text to the beginning */\nexport const prependMutator: Mutator = async (value, context) => {\n const prefix = context?.options?.prefix ?? \"\";\n return prefix + value?.toString();\n};\n\n/** Reverse the string */\nexport const reverseMutator: Mutator = async (value) => {\n return value?.toString().split(\"\").reverse().join(\"\");\n};\n\n/** Truncate to a maximum length */\nexport const truncateMutator: Mutator = async (value, context) => {\n const str = value?.toString();\n const maxLength = context?.options?.maxLength ?? 100;\n const suffix = context?.options?.suffix ?? \"...\";\n return readMoreChars(str, maxLength, suffix);\n};\n\n/** Trim multiple whitespace into single space */\nexport const trimMultipleWhitespaceMutator: Mutator = async (value) => {\n return value?.toString().replace(/\\s+/g, \" \");\n};\n\n/** Pad string from the start to reach target length */\nexport const padStartMutator: Mutator = async (value, context) => {\n const length = context?.options?.length ?? 0;\n const char = context?.options?.char ?? \" \";\n return value?.toString().padStart(length, char);\n};\n\n/** Pad string from the end to reach target length */\nexport const padEndMutator: Mutator = async (value, context) => {\n const length = context?.options?.length ?? 0;\n const char = context?.options?.char ?? \" \";\n return value?.toString().padEnd(length, char);\n};\n\n/** Repeat string N times */\nexport const repeatMutator: Mutator = async (value, context) => {\n const count = context?.options?.count ?? 1;\n return value?.toString()?.repeat(count);\n};\n\n/** Mask part of string */\nexport const maskMutator: Mutator = async (value, context) => {\n const str = value?.toString();\n const maskChar = context?.options?.char ?? \"*\";\n const start = context?.options?.start ?? 0;\n const end = context?.options?.end ?? str?.length;\n const visibleStart = str?.substring(0, start);\n const visibleEnd = str?.substring(end);\n const maskedLength = end - start;\n return visibleStart + maskChar.repeat(maskedLength) + visibleEnd;\n};\n\n/** Unescape HTML entities */\nexport const unescapeHtmlMutator: Mutator = async (value) => {\n return value\n ?.toString()\n .replace(/&amp;/g, \"&\")\n .replace(/&lt;/g, \"<\")\n .replace(/&gt;/g, \">\")\n .replace(/&quot;/g, '\"')\n .replace(/&#039;/g, \"'\");\n};\n\n/** Keep only alphabetic characters */\nexport const alphaOnlyMutator: Mutator = async (value) => {\n return value.toString().replace(/[^a-zA-Z]/g, \"\");\n};\n\n/** Keep only alphanumeric characters */\nexport const alphanumericOnlyMutator: Mutator = async (value) => {\n return value.toString().replace(/[^a-zA-Z0-9]/g, \"\");\n};\n\n/** Remove all numeric characters */\nexport const removeNumbersMutator: Mutator = async (value) => {\n return value.toString().replace(/[0-9]/g, \"\");\n};\n"],"mappings":"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"}
package/esm/object.d.mts CHANGED
@@ -1,15 +1,13 @@
1
- import { StandardSchemaV1 } from "./standard-schema/types.mjs";
2
1
  import { Schema } from "./types/schema-types.mjs";
3
- import { Infer } from "./types/inference-types.mjs";
2
+ import "./types/index.mjs";
4
3
  import { equalityConditionalMethodsApplied } from "./validators/methods/equality-conditional-methods.mjs";
5
4
  import { forbiddenMethodsApplied } from "./validators/methods/forbidden-methods.mjs";
6
5
  import { presentMethodsApplied } from "./validators/methods/present-methods.mjs";
7
6
  import { requiredMethodsApplied } from "./validators/methods/required-methods.mjs";
8
7
  import { ObjectValidator } from "./validators/object-validator.mjs";
9
-
10
8
  //#region ../../packages/seal/src/object.d.ts
11
9
  /** Create an object schema without importing the complete `v` factory. */
12
- declare const object: <T extends Schema>(schema: T, errorMessage?: string) => ObjectValidator<T> & StandardSchemaV1<Infer<ObjectValidator<T>>>;
10
+ export declare const object: <T extends Schema>(schema: T, errorMessage?: string) => ObjectValidator<T>;
13
11
  //#endregion
14
- export { ObjectValidator, equalityConditionalMethodsApplied, forbiddenMethodsApplied, object, presentMethodsApplied, requiredMethodsApplied };
12
+ export { ObjectValidator, equalityConditionalMethodsApplied, forbiddenMethodsApplied, presentMethodsApplied, requiredMethodsApplied };
15
13
  //# sourceMappingURL=object.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"object.d.mts","names":[],"sources":["../../../../../../../packages/seal/src/object.ts"],"mappings":";;;;;;;;;;;cAca,MAAA,aAAoB,MAAA,EAAQ,MAAA,EAAQ,CAAA,EAAG,YAAA,cACF,eAAA,CAAgB,CAAA,IAC9D,gBAAA,CAAiB,KAAA,CAAM,eAAA,CAAgB,CAAA"}
1
+ {"version":3,"file":"object.d.mts","names":[],"sources":["../../../../../../../packages/seal/src/object.ts"],"mappings":";;;;;;;;;qBAYa,SAAU,UAAU,QAAM,QAAU,GAAC,0BAAuB,gBAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"object.mjs","names":[],"sources":["../../../../../../../packages/seal/src/object.ts"],"sourcesContent":["import type { StandardSchemaV1 } from \"./standard-schema/types\";\nimport type { Schema } from \"./types\";\nimport type { Infer } from \"./types/inference-types\";\nimport { ObjectValidator } from \"./validators/object-validator\";\n\n// Keep both runtime chain methods and their declaration augmentations in\n// this standalone entry, without loading the complete validator factory.\nexport { equalityConditionalMethodsApplied } from \"./validators/methods/equality-conditional-methods\";\nexport { forbiddenMethodsApplied } from \"./validators/methods/forbidden-methods\";\nexport { presentMethodsApplied } from \"./validators/methods/present-methods\";\nexport { requiredMethodsApplied } from \"./validators/methods/required-methods\";\nexport { ObjectValidator };\n\n/** Create an object schema without importing the complete `v` factory. */\nexport const object = <T extends Schema>(schema: T, errorMessage?: string) =>\n new ObjectValidator<T>(schema, errorMessage) as ObjectValidator<T> &\n StandardSchemaV1<Infer<ObjectValidator<T>>>;\n"],"mappings":";;;;;;;;AAcA,MAAa,UAA4B,QAAW,iBAClD,IAAI,gBAAmB,QAAQ,YAAY"}
1
+ {"version":3,"file":"object.mjs","names":[],"sources":["../../../../../../../packages/seal/src/object.ts"],"sourcesContent":["import type { Schema } from \"./types\";\nimport { ObjectValidator } from \"./validators/object-validator\";\n\n// Keep both runtime chain methods and their declaration augmentations in\n// this standalone entry, without loading the complete validator factory.\nexport { equalityConditionalMethodsApplied } from \"./validators/methods/equality-conditional-methods\";\nexport { forbiddenMethodsApplied } from \"./validators/methods/forbidden-methods\";\nexport { presentMethodsApplied } from \"./validators/methods/present-methods\";\nexport { requiredMethodsApplied } from \"./validators/methods/required-methods\";\nexport { ObjectValidator };\n\n/** Create an object schema without importing the complete `v` factory. */\nexport const object = <T extends Schema>(schema: T, errorMessage?: string) =>\n new ObjectValidator<T>(schema, errorMessage);\n"],"mappings":";;;;;;;;AAYA,MAAa,UAA4B,QAAW,iBAClD,IAAI,gBAAmB,QAAQ,YAAY"}
@@ -4,12 +4,15 @@
4
4
  *
5
5
  * Allows extending validators with custom functionality via plugins
6
6
  */
7
- type PluginContext = {
8
- /** Plugin name */name: string; /** Plugin version */
7
+ export type PluginContext = {
8
+ /** Plugin name */
9
+ name: string;
10
+ /** Plugin version */
9
11
  version?: string;
10
12
  };
11
- type SealPlugin = {
12
- /** Plugin metadata */name: string;
13
+ export type SealPlugin = {
14
+ /** Plugin metadata */
15
+ name: string;
13
16
  version?: string;
14
17
  description?: string;
15
18
  /**
@@ -53,19 +56,18 @@ type SealPlugin = {
53
56
  * registerPlugin(slugPlugin);
54
57
  * ```
55
58
  */
56
- declare function registerPlugin(plugin: SealPlugin): Promise<void>;
59
+ export declare function registerPlugin(plugin: SealPlugin): Promise<void>;
57
60
  /**
58
61
  * Unregister a plugin
59
62
  */
60
- declare function unregisterPlugin(pluginName: string): Promise<void>;
63
+ export declare function unregisterPlugin(pluginName: string): Promise<void>;
61
64
  /**
62
65
  * Check if a plugin is installed
63
66
  */
64
- declare function hasPlugin(pluginName: string): boolean;
67
+ export declare function hasPlugin(pluginName: string): boolean;
65
68
  /**
66
69
  * Get list of installed plugins
67
70
  */
68
- declare function getInstalledPlugins(): SealPlugin[];
71
+ export declare function getInstalledPlugins(): SealPlugin[];
69
72
  //#endregion
70
- export { PluginContext, SealPlugin, getInstalledPlugins, hasPlugin, registerPlugin, unregisterPlugin };
71
73
  //# sourceMappingURL=plugin-system.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-system.d.mts","names":[],"sources":["../../../../../../../../packages/seal/src/plugins/plugin-system.ts"],"mappings":";;AAMA;;;;KAAY,aAAA;EAOA,kBALV,IAAA;EAEA,OAAO;AAAA;AAAA,KAGG,UAAA;EA2BsB,sBAzBhC,IAAA;EACA,OAAA;EACA,WAAA;EAAA;;;;;;;;AAuBgC;AA2BlC;;;;;;EAjCE,OAAA,GAAU,OAAA,EAAS,aAAA,YAAyB,OAAA;EAiCmB;AAAA;AAoBjE;;EA/CE,SAAA,gBAAyB,OAAA;AAAA;AA+CwC;AAkBnE;;;;AAA4C;AAO5C;;;;AAAiD;;;;;;;;;AAzBkB,iBApB7C,cAAA,CAAe,MAAA,EAAQ,UAAA,GAAa,OAAO;;;;iBAoB3C,gBAAA,CAAiB,UAAA,WAAqB,OAAO;;;;iBAkBnD,SAAA,CAAU,UAAkB;;;;iBAO5B,mBAAA,IAAuB,UAAU"}
1
+ {"version":3,"file":"plugin-system.d.mts","names":[],"sources":["../../../../../../../../packages/seal/src/plugins/plugin-system.ts"],"mappings":";;;;;;YAMY;;EAEV;;EAEA;;YAGU;;EAEV;EACA;EACA;;;;;;;;;;;;;;;;EAiBA,UAAU,SAAS,yBAAyB;;;;;EAM5C,yBAAyB;;;;;;;;;;;;;;;;;;;;;wBA2BL,eAAe,QAAQ,aAAa;;;;wBAoBpC,iBAAiB,qBAAqB;;;;wBAkB5C,UAAU;;;;wBAOV,uBAAuB"}
@@ -1,16 +1,15 @@
1
1
  import { SchemaRule } from "../../types/rule-types.mjs";
2
-
2
+ import "../../types/index.mjs";
3
3
  //#region ../../packages/seal/src/rules/array/array-rules.d.ts
4
4
  /**
5
5
  * Unique array rule - array must contain unique values
6
6
  */
7
- declare const uniqueArrayRule: SchemaRule;
7
+ export declare const uniqueArrayRule: SchemaRule;
8
8
  /**
9
9
  * Sorted array rule - array must be sorted
10
10
  */
11
- declare const sortedArrayRule: SchemaRule<{
11
+ export declare const sortedArrayRule: SchemaRule<{
12
12
  direction?: "asc" | "desc";
13
13
  }>;
14
14
  //#endregion
15
- export { sortedArrayRule, uniqueArrayRule };
16
15
  //# sourceMappingURL=array-rules.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"array-rules.d.mts","names":[],"sources":["../../../../../../../../../packages/seal/src/rules/array/array-rules.ts"],"mappings":";;;;;AAMA;cAAa,eAAA,EAAiB,UAa7B;;;AAAA;cAKY,eAAA,EAAiB,UAAU;EACtC,SAAS;AAAA"}
1
+ {"version":3,"file":"array-rules.d.mts","names":[],"sources":["../../../../../../../../../packages/seal/src/rules/array/array-rules.ts"],"mappings":";;;;;;qBAMa,iBAAiB;;;;qBAkBjB,iBAAiB;EAC5B"}
@@ -0,0 +1,2 @@
1
+ import { sortedArrayRule, uniqueArrayRule } from "./array-rules.mjs";
2
+ export { sortedArrayRule, uniqueArrayRule };
@@ -1,3 +1,3 @@
1
1
  import { sortedArrayRule, uniqueArrayRule } from "./array-rules.mjs";
2
2
 
3
- export { };
3
+ export { sortedArrayRule, uniqueArrayRule };
@@ -1,34 +1,33 @@
1
1
  import { SchemaRule } from "../../types/rule-types.mjs";
2
-
2
+ import "../../types/index.mjs";
3
3
  //#region ../../packages/seal/src/rules/color/color-rules.d.ts
4
4
  /**
5
5
  * Generic color rule - validates any color format
6
6
  */
7
- declare const colorRule: SchemaRule;
7
+ export declare const colorRule: SchemaRule;
8
8
  /**
9
9
  * Hex color rule
10
10
  */
11
- declare const hexColorRule: SchemaRule;
11
+ export declare const hexColorRule: SchemaRule;
12
12
  /**
13
13
  * RGB color rule
14
14
  */
15
- declare const rgbColorRule: SchemaRule;
15
+ export declare const rgbColorRule: SchemaRule;
16
16
  /**
17
17
  * RGBA color rule
18
18
  */
19
- declare const rgbaColorRule: SchemaRule;
19
+ export declare const rgbaColorRule: SchemaRule;
20
20
  /**
21
21
  * HSL color rule
22
22
  */
23
- declare const hslColorRule: SchemaRule;
23
+ export declare const hslColorRule: SchemaRule;
24
24
  /**
25
25
  * Light color rule
26
26
  */
27
- declare const lightColorRule: SchemaRule;
27
+ export declare const lightColorRule: SchemaRule;
28
28
  /**
29
29
  * Dark color rule
30
30
  */
31
- declare const darkColorRule: SchemaRule;
31
+ export declare const darkColorRule: SchemaRule;
32
32
  //#endregion
33
- export { colorRule, darkColorRule, hexColorRule, hslColorRule, lightColorRule, rgbColorRule, rgbaColorRule };
34
33
  //# sourceMappingURL=color-rules.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"color-rules.d.mts","names":[],"sources":["../../../../../../../../../packages/seal/src/rules/color/color-rules.ts"],"mappings":";;;;;AAgBA;cAAa,SAAA,EAAW,UAgBvB;;;AAAA;cAKY,YAAA,EAAc,UAS1B;;;;cAKY,YAAA,EAAc,UAS1B;AATD;;;AAAA,cAca,aAAA,EAAe,UAS3B;AAdA;AAKD;;AALC,cAmBY,YAAA,EAAc,UAS1B;;AAdA;AAKD;cAca,cAAA,EAAgB,UAoB5B;;;AAzBA;cA8BY,aAAA,EAAe,UAoB3B"}
1
+ {"version":3,"file":"color-rules.d.mts","names":[],"sources":["../../../../../../../../../packages/seal/src/rules/color/color-rules.ts"],"mappings":";;;;;;qBAgBa,WAAW;;;;qBAqBX,cAAc;;;;qBAcd,cAAc;;;;qBAcd,eAAe;;;;qBAcf,cAAc;;;;qBAcd,gBAAgB;;;;qBAyBhB,eAAe"}
@@ -0,0 +1,2 @@
1
+ import { colorRule, darkColorRule, hexColorRule, hslColorRule, lightColorRule, rgbColorRule, rgbaColorRule } from "./color-rules.mjs";
2
+ export { colorRule, darkColorRule, hexColorRule, hslColorRule, lightColorRule, rgbColorRule, rgbaColorRule };
@@ -1,3 +1,3 @@
1
1
  import { colorRule, darkColorRule, hexColorRule, hslColorRule, lightColorRule, rgbColorRule, rgbaColorRule } from "./color-rules.mjs";
2
2
 
3
- export { };
3
+ export { colorRule, darkColorRule, hexColorRule, hslColorRule, lightColorRule, rgbColorRule, rgbaColorRule };
@@ -1,30 +1,29 @@
1
1
  import { SchemaRule } from "../../types/rule-types.mjs";
2
-
2
+ import "../../types/index.mjs";
3
3
  //#region ../../packages/seal/src/rules/common/enum.d.ts
4
4
  /**
5
5
  * Enum rule - value must be one of the enum values
6
6
  */
7
- declare const enumRule: SchemaRule<{
7
+ export declare const enumRule: SchemaRule<{
8
8
  enum: any;
9
9
  }>;
10
10
  /**
11
11
  * In rule - value must be in the given array
12
12
  */
13
- declare const inRule: SchemaRule<{
13
+ export declare const inRule: SchemaRule<{
14
14
  values: any[];
15
15
  }>;
16
16
  /**
17
17
  * Allowed values rule - value must be one of allowed values
18
18
  */
19
- declare const allowedValuesRule: SchemaRule<{
19
+ export declare const allowedValuesRule: SchemaRule<{
20
20
  allowedValues: any[];
21
21
  }>;
22
22
  /**
23
23
  * Not allowed values rule - value must not be in forbidden list
24
24
  */
25
- declare const notAllowedValuesRule: SchemaRule<{
25
+ export declare const notAllowedValuesRule: SchemaRule<{
26
26
  notAllowedValues: any[];
27
27
  }>;
28
28
  //#endregion
29
- export { allowedValuesRule, enumRule, inRule, notAllowedValuesRule };
30
29
  //# sourceMappingURL=enum.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"enum.d.mts","names":[],"sources":["../../../../../../../../../packages/seal/src/rules/common/enum.ts"],"mappings":";;;;;AAMA;cAAa,QAAA,EAAU,UAAU;EAAG,IAAI;AAAA;AAAA;AAwBxC;;AAxBwC,cAwB3B,MAAA,EAAQ,UAAU;EAAG,MAAM;AAAA;AAsBxC;;;AAAA,cAAa,iBAAA,EAAmB,UAAU;EAAG,aAAa;AAAA;;;;cAsB7C,oBAAA,EAAsB,UAAU;EAAG,gBAAgB;AAAA"}
1
+ {"version":3,"file":"enum.d.mts","names":[],"sources":["../../../../../../../../../packages/seal/src/rules/common/enum.ts"],"mappings":";;;;;;qBAMa,UAAU;EAAa;;;;;qBAwBvB,QAAQ;EAAa;;;;;qBAsBrB,mBAAmB;EAAa;;;;;qBAsBhC,sBAAsB;EAAa"}
@@ -1,11 +1,11 @@
1
1
  import { SchemaRule } from "../../types/rule-types.mjs";
2
-
2
+ import "../../types/index.mjs";
3
3
  //#region ../../packages/seal/src/rules/common/equals-field-rules.d.ts
4
4
  /**
5
5
  * Equals field rule - value must equal another field's value
6
6
  * Supports both global and sibling scope
7
7
  */
8
- declare const equalsFieldRule: SchemaRule<{
8
+ export declare const equalsFieldRule: SchemaRule<{
9
9
  field: string;
10
10
  scope?: "global" | "sibling";
11
11
  }>;
@@ -13,10 +13,9 @@ declare const equalsFieldRule: SchemaRule<{
13
13
  * Not equals field rule - value must NOT equal another field's value
14
14
  * Supports both global and sibling scope
15
15
  */
16
- declare const notEqualsFieldRule: SchemaRule<{
16
+ export declare const notEqualsFieldRule: SchemaRule<{
17
17
  field: string;
18
18
  scope?: "global" | "sibling";
19
19
  }>;
20
20
  //#endregion
21
- export { equalsFieldRule, notEqualsFieldRule };
22
21
  //# sourceMappingURL=equals-field-rules.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"equals-field-rules.d.mts","names":[],"sources":["../../../../../../../../../packages/seal/src/rules/common/equals-field-rules.ts"],"mappings":";;;;;AAOA;;cAAa,eAAA,EAAiB,UAAU;EACtC,KAAA;EACA,KAAA;AAAA;;;AAAK;AAwBP;cAAa,kBAAA,EAAoB,UAAU;EACzC,KAAA;EACA,KAAA;AAAA"}
1
+ {"version":3,"file":"equals-field-rules.d.mts","names":[],"sources":["../../../../../../../../../packages/seal/src/rules/common/equals-field-rules.ts"],"mappings":";;;;;;;qBAOa,iBAAiB;EAC5B;EACA;;;;;;qBAwBW,oBAAoB;EAC/B;EACA"}
@@ -0,0 +1,7 @@
1
+ import { allowedValuesRule, enumRule, inRule, notAllowedValuesRule } from "./enum.mjs";
2
+ import { equalsFieldRule, notEqualsFieldRule } from "./equals-field-rules.mjs";
3
+ import { instanceofRule } from "./instanceof.mjs";
4
+ import { literalRule } from "./literal.mjs";
5
+ import { arrayRule, booleanRule, floatRule, intRule, numberRule, objectRule, plainObjectRule, scalarRule, stringRule } from "./type-rules.mjs";
6
+ import { unknownKeyRule } from "./unknown-key.mjs";
7
+ export { allowedValuesRule, arrayRule, booleanRule, enumRule, equalsFieldRule, floatRule, inRule, instanceofRule, intRule, literalRule, notAllowedValuesRule, notEqualsFieldRule, numberRule, objectRule, plainObjectRule, scalarRule, stringRule, unknownKeyRule };
@@ -5,4 +5,4 @@ import { literalRule } from "./literal.mjs";
5
5
  import { arrayRule, booleanRule, floatRule, intRule, numberRule, objectRule, plainObjectRule, scalarRule, stringRule } from "./type-rules.mjs";
6
6
  import { unknownKeyRule } from "./unknown-key.mjs";
7
7
 
8
- export { };
8
+ export { allowedValuesRule, arrayRule, booleanRule, enumRule, equalsFieldRule, floatRule, inRule, instanceofRule, intRule, literalRule, notAllowedValuesRule, notEqualsFieldRule, numberRule, objectRule, plainObjectRule, scalarRule, stringRule, unknownKeyRule };
@@ -1,5 +1,5 @@
1
1
  import { SchemaRule } from "../../types/rule-types.mjs";
2
-
2
+ import "../../types/index.mjs";
3
3
  //#region ../../packages/seal/src/rules/common/instanceof.d.ts
4
4
  /**
5
5
  * InstanceOf rule - value must be an instance of the given constructor.
@@ -7,10 +7,9 @@ import { SchemaRule } from "../../types/rule-types.mjs";
7
7
  * Uses the `instanceof` operator at runtime. Useful for class instances
8
8
  * not representable in JSON Schema (File, Buffer, custom domain classes).
9
9
  */
10
- declare const instanceofRule: SchemaRule<{
10
+ export declare const instanceofRule: SchemaRule<{
11
11
  ctor: new (...args: any[]) => any;
12
12
  name: string;
13
13
  }>;
14
14
  //#endregion
15
- export { instanceofRule };
16
15
  //# sourceMappingURL=instanceof.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"instanceof.d.mts","names":[],"sources":["../../../../../../../../../packages/seal/src/rules/common/instanceof.ts"],"mappings":";;;;;AASA;;;;cAAa,cAAA,EAAgB,UAAU;EAAG,IAAA,UAAc,IAAA;EAAqB,IAAA;AAAA"}
1
+ {"version":3,"file":"instanceof.d.mts","names":[],"sources":["../../../../../../../../../packages/seal/src/rules/common/instanceof.ts"],"mappings":";;;;;;;;;qBASa,gBAAgB;EAAa,cAAc;EAAqB"}
@@ -1,5 +1,5 @@
1
1
  import { SchemaRule } from "../../types/rule-types.mjs";
2
-
2
+ import "../../types/index.mjs";
3
3
  //#region ../../packages/seal/src/rules/common/literal.d.ts
4
4
  /**
5
5
  * Literal rule - value must be strictly equal to one of the literal values.
@@ -8,9 +8,8 @@ import { SchemaRule } from "../../types/rule-types.mjs";
8
8
  * true from "true", etc. Mirrors `v.string().oneOf([...])` but at the
9
9
  * literal type level (TypeScript narrows to the union of literals).
10
10
  */
11
- declare const literalRule: SchemaRule<{
11
+ export declare const literalRule: SchemaRule<{
12
12
  values: readonly (string | number | boolean)[];
13
13
  }>;
14
14
  //#endregion
15
- export { literalRule };
16
15
  //# sourceMappingURL=literal.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"literal.d.mts","names":[],"sources":["../../../../../../../../../packages/seal/src/rules/common/literal.ts"],"mappings":";;;;;AAUA;;;;AAA6C;cAAhC,WAAA,EAAa,UAAU;EAAG,MAAM;AAAA"}
1
+ {"version":3,"file":"literal.d.mts","names":[],"sources":["../../../../../../../../../packages/seal/src/rules/common/literal.ts"],"mappings":";;;;;;;;;;qBAUa,aAAa;EAAa"}
@@ -1 +1 @@
1
- {"version":3,"file":"literal.mjs","names":[],"sources":["../../../../../../../../../packages/seal/src/rules/common/literal.ts"],"sourcesContent":["import { invalidRule, resolveTranslation, VALID_RULE } from \"../../helpers\";\nimport type { SchemaRule } from \"../../types\";\n\n/**\n * Literal rule - value must be strictly equal to one of the literal values.\n *\n * Uses === (referential / strict equality), so distinguishes 1 from \"1\",\n * true from \"true\", etc. Mirrors `v.string().oneOf([...])` but at the\n * literal type level (TypeScript narrows to the union of literals).\n */\nexport const literalRule: SchemaRule<{ values: readonly (string | number | boolean)[] }> = {\n name: \"literal\",\n // Runs even on \"empty\" values. A literal set is an exact-match whitelist, so\n // there is no value it cannot safely be asked about — and `\"\"` is one of the\n // values callers most want to pin (`alt=\"\"` for a decorative image). Left at\n // the default, the empty string would skip this check entirely, which made\n // `v.literal(\"\").optional()` accept `\"\"`, `null` AND a missing key alike.\n requiresValue: false,\n defaultErrorMessage: \"The :input must be one of the following values: :values\",\n async validate(value: any, context) {\n // Absence is the required/present rule's question, not this one. Without\n // this, `requiresValue: false` above would make the literal check fire on a\n // missing key and defeat `.optional()`, which works by removing that rule.\n if (value === undefined) {\n return VALID_RULE;\n }\n\n if (this.context.options.values.includes(value)) {\n return VALID_RULE;\n }\n\n this.context.translationParams.values = this.context.options.values\n .map(v =>\n resolveTranslation({ key: String(v), rawValue: String(v), rule: this, context }),\n )\n .join(\", \");\n\n return invalidRule(this, context);\n },\n};\n"],"mappings":";;;;;;;;;;;AAUA,MAAa,cAA8E;CACzF,MAAM;CAMN,eAAe;CACf,qBAAqB;CACrB,MAAM,SAAS,OAAY,SAAS;EAIlC,IAAI,UAAU,QACZ,OAAO;EAGT,IAAI,KAAK,QAAQ,QAAQ,OAAO,SAAS,KAAK,GAC5C,OAAO;EAGT,KAAK,QAAQ,kBAAkB,SAAS,KAAK,QAAQ,QAAQ,OAC1D,KAAI,MACH,mBAAmB;GAAE,KAAK,OAAO,CAAC;GAAG,UAAU,OAAO,CAAC;GAAG,MAAM;GAAM;EAAQ,CAAC,CACjF,CAAC,CACA,KAAK,IAAI;EAEZ,OAAO,YAAY,MAAM,OAAO;CAClC;AACF"}
1
+ {"version":3,"file":"literal.mjs","names":[],"sources":["../../../../../../../../../packages/seal/src/rules/common/literal.ts"],"sourcesContent":["import { invalidRule, resolveTranslation, VALID_RULE } from \"../../helpers\";\nimport type { SchemaRule } from \"../../types\";\n\n/**\n * Literal rule - value must be strictly equal to one of the literal values.\n *\n * Uses === (referential / strict equality), so distinguishes 1 from \"1\",\n * true from \"true\", etc. Mirrors `v.string().oneOf([...])` but at the\n * literal type level (TypeScript narrows to the union of literals).\n */\nexport const literalRule: SchemaRule<{ values: readonly (string | number | boolean)[] }> = {\n name: \"literal\",\n // Runs even on \"empty\" values. A literal set is an exact-match whitelist, so\n // there is no value it cannot safely be asked about — and `\"\"` is one of the\n // values callers most want to pin (`alt=\"\"` for a decorative image). Left at\n // the default, the empty string would skip this check entirely, which made\n // `v.literal(\"\").optional()` accept `\"\"`, `null` AND a missing key alike.\n requiresValue: false,\n defaultErrorMessage: \"The :input must be one of the following values: :values\",\n async validate(value: any, context) {\n // Absence is the required/present rule's question, not this one. Without\n // this, `requiresValue: false` above would make the literal check fire on a\n // missing key and defeat `.optional()`, which works by removing that rule.\n if (value === undefined) {\n return VALID_RULE;\n }\n\n if (this.context.options.values.includes(value)) {\n return VALID_RULE;\n }\n\n this.context.translationParams.values = this.context.options.values\n .map((v) => resolveTranslation({ key: String(v), rawValue: String(v), rule: this, context }))\n .join(\", \");\n\n return invalidRule(this, context);\n },\n};\n"],"mappings":";;;;;;;;;;;AAUA,MAAa,cAA8E;CACzF,MAAM;CAMN,eAAe;CACf,qBAAqB;CACrB,MAAM,SAAS,OAAY,SAAS;EAIlC,IAAI,UAAU,QACZ,OAAO;EAGT,IAAI,KAAK,QAAQ,QAAQ,OAAO,SAAS,KAAK,GAC5C,OAAO;EAGT,KAAK,QAAQ,kBAAkB,SAAS,KAAK,QAAQ,QAAQ,OAC1D,KAAK,MAAM,mBAAmB;GAAE,KAAK,OAAO,CAAC;GAAG,UAAU,OAAO,CAAC;GAAG,MAAM;GAAM;EAAQ,CAAC,CAAC,CAAC,CAC5F,KAAK,IAAI;EAEZ,OAAO,YAAY,MAAM,OAAO;CAClC;AACF"}
@@ -1,42 +1,41 @@
1
1
  import { SchemaRule } from "../../types/rule-types.mjs";
2
-
2
+ import "../../types/index.mjs";
3
3
  //#region ../../packages/seal/src/rules/common/type-rules.d.ts
4
4
  /**
5
5
  * String rule - validates string type
6
6
  */
7
- declare const stringRule: SchemaRule;
7
+ export declare const stringRule: SchemaRule;
8
8
  /**
9
9
  * Number rule - validates number type
10
10
  */
11
- declare const numberRule: SchemaRule;
11
+ export declare const numberRule: SchemaRule;
12
12
  /**
13
13
  * Boolean rule - validates boolean type
14
14
  */
15
- declare const booleanRule: SchemaRule;
15
+ export declare const booleanRule: SchemaRule;
16
16
  /**
17
17
  * Int rule - validates integer type
18
18
  */
19
- declare const intRule: SchemaRule;
19
+ export declare const intRule: SchemaRule;
20
20
  /**
21
21
  * Float rule - validates float type
22
22
  */
23
- declare const floatRule: SchemaRule;
23
+ export declare const floatRule: SchemaRule;
24
24
  /**
25
25
  * Scalar rule - validates scalar value (string, number, or boolean)
26
26
  */
27
- declare const scalarRule: SchemaRule;
27
+ export declare const scalarRule: SchemaRule;
28
28
  /**
29
29
  * Object rule - validates object type
30
30
  */
31
- declare const objectRule: SchemaRule;
31
+ export declare const objectRule: SchemaRule;
32
32
  /**
33
33
  * Object rule - validates object type
34
34
  */
35
- declare const plainObjectRule: SchemaRule;
35
+ export declare const plainObjectRule: SchemaRule;
36
36
  /**
37
37
  * Array rule - validates array type
38
38
  */
39
- declare const arrayRule: SchemaRule;
39
+ export declare const arrayRule: SchemaRule;
40
40
  //#endregion
41
- export { arrayRule, booleanRule, floatRule, intRule, numberRule, objectRule, plainObjectRule, scalarRule, stringRule };
42
41
  //# sourceMappingURL=type-rules.d.mts.map