@getcommunity/gc-validators 0.0.270 → 0.0.271-alpha.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 (334) hide show
  1. package/README.md +2 -40
  2. package/dist/base/index.cjs +106 -0
  3. package/dist/base/index.d.cts +5 -0
  4. package/dist/base/index.d.mts +5 -0
  5. package/dist/base/index.mjs +21 -0
  6. package/dist/component-BPHZTfVY.mjs +6 -0
  7. package/dist/component-DLjTD_qK.cjs +19 -0
  8. package/dist/components/blocks/index.cjs +207 -0
  9. package/dist/components/blocks/index.d.cts +1322 -0
  10. package/dist/components/blocks/index.d.mts +1322 -0
  11. package/dist/components/blocks/index.mjs +175 -0
  12. package/dist/components/brand/index.cjs +37 -0
  13. package/dist/components/brand/index.d.cts +315 -0
  14. package/dist/components/brand/index.d.mts +315 -0
  15. package/dist/components/brand/index.mjs +31 -0
  16. package/dist/components/forms/index.cjs +70 -0
  17. package/dist/components/forms/index.d.cts +333 -0
  18. package/dist/components/forms/index.d.mts +333 -0
  19. package/dist/components/forms/index.mjs +58 -0
  20. package/dist/components/shared/index.cjs +127 -0
  21. package/dist/components/shared/index.d.cts +917 -0
  22. package/dist/components/shared/index.d.mts +917 -0
  23. package/dist/components/shared/index.mjs +107 -0
  24. package/dist/components/slideshow/index.cjs +129 -0
  25. package/dist/components/slideshow/index.d.cts +742 -0
  26. package/dist/components/slideshow/index.d.mts +742 -0
  27. package/dist/components/slideshow/index.mjs +106 -0
  28. package/dist/components/utm/index.cjs +55 -0
  29. package/dist/components/utm/index.d.cts +32 -0
  30. package/dist/components/utm/index.d.mts +32 -0
  31. package/dist/components/utm/index.mjs +47 -0
  32. package/dist/constants/index.cjs +243 -0
  33. package/dist/constants/index.d.cts +197 -0
  34. package/dist/constants/index.d.mts +197 -0
  35. package/dist/constants/index.mjs +182 -0
  36. package/dist/constants-L2goO7Eg.mjs +85 -0
  37. package/dist/constants-PBZKggHL.cjs +102 -0
  38. package/dist/document-BAro2Mrj.cjs +18 -0
  39. package/dist/document-BAzLIprH.d.mts +100 -0
  40. package/dist/document-BFukanLe.mjs +54 -0
  41. package/dist/document-BK1ASowb.d.cts +17 -0
  42. package/dist/document-BMxLOdrT.d.cts +267 -0
  43. package/dist/document-BNoXPGwF.d.mts +27 -0
  44. package/dist/document-B_pJW777.d.mts +30 -0
  45. package/dist/document-Bd2AyLs8.d.mts +16 -0
  46. package/dist/document-BezYxNmb.d.cts +16 -0
  47. package/dist/document-Bj7SRTOn.d.cts +18 -0
  48. package/dist/document-Bo869pZx.d.mts +18 -0
  49. package/dist/document-Bpr9mbCs.d.mts +15 -0
  50. package/dist/document-Bqoi1MdT.mjs +11 -0
  51. package/dist/document-Bs8c1mok.d.cts +15 -0
  52. package/dist/document-C0c7azOe.d.mts +434 -0
  53. package/dist/document-CTTDXzOF.mjs +13 -0
  54. package/dist/document-CUl_Ys6-.mjs +23 -0
  55. package/dist/document-CWYzG60q.d.cts +19 -0
  56. package/dist/document-Ccszj8lR.cjs +20 -0
  57. package/dist/document-CjNHI7Eb.d.cts +27 -0
  58. package/dist/document-Cu_HUDC5.mjs +51 -0
  59. package/dist/document-D-KvyEb5.d.cts +238 -0
  60. package/dist/document-D2nLVGig.d.mts +238 -0
  61. package/dist/document-D5yDIDIx.d.mts +15 -0
  62. package/dist/document-D73dqRle.d.cts +19 -0
  63. package/dist/document-DA6YVZz-.d.cts +100 -0
  64. package/dist/document-DJ0YiVte.d.cts +30 -0
  65. package/dist/document-DMHIUE3J.d.mts +17 -0
  66. package/dist/document-DN3g0EFx.d.cts +434 -0
  67. package/dist/document-DWapIF7V.d.cts +12223 -0
  68. package/dist/document-DYzRVV1C.d.mts +16 -0
  69. package/dist/document-D_ZMbzn6.d.cts +18 -0
  70. package/dist/document-DeoRGh7p.d.mts +19 -0
  71. package/dist/document-DsIPBTG8.cjs +30 -0
  72. package/dist/document-DsSaMVGb.cjs +106 -0
  73. package/dist/document-Gx2Vrg_w.d.mts +267 -0
  74. package/dist/document-IIJpsOIO.d.cts +16 -0
  75. package/dist/document-WHS8GHY5.d.mts +18 -0
  76. package/dist/document-dqrWptdY.d.cts +244 -0
  77. package/dist/document-hEBlSep8.d.cts +15 -0
  78. package/dist/document-qcC-10Nd.d.mts +12223 -0
  79. package/dist/document-rbMXLGxt.cjs +103 -0
  80. package/dist/document-si7GYS5g.d.mts +19 -0
  81. package/dist/document-vq-7rcU5.d.mts +244 -0
  82. package/dist/entities/audit-log/index.cjs +127 -0
  83. package/dist/entities/audit-log/index.d.cts +134 -0
  84. package/dist/entities/audit-log/index.d.mts +134 -0
  85. package/dist/entities/audit-log/index.mjs +115 -0
  86. package/dist/entities/blog-page/index.cjs +16 -0
  87. package/dist/entities/blog-page/index.d.cts +257 -0
  88. package/dist/entities/blog-page/index.d.mts +257 -0
  89. package/dist/entities/blog-page/index.mjs +13 -0
  90. package/dist/entities/blog-post/index.cjs +33 -0
  91. package/dist/entities/blog-post/index.d.cts +917 -0
  92. package/dist/entities/blog-post/index.d.mts +917 -0
  93. package/dist/entities/blog-post/index.mjs +21 -0
  94. package/dist/entities/careers-page/index.cjs +16 -0
  95. package/dist/entities/careers-page/index.d.cts +257 -0
  96. package/dist/entities/careers-page/index.d.mts +257 -0
  97. package/dist/entities/careers-page/index.mjs +13 -0
  98. package/dist/entities/category/index.cjs +63 -0
  99. package/dist/entities/category/index.d.cts +300 -0
  100. package/dist/entities/category/index.d.mts +300 -0
  101. package/dist/entities/category/index.mjs +52 -0
  102. package/dist/entities/client/index.cjs +96 -0
  103. package/dist/entities/client/index.d.cts +85 -0
  104. package/dist/entities/client/index.d.mts +85 -0
  105. package/dist/entities/client/index.mjs +83 -0
  106. package/dist/entities/client-content-pillar/index.cjs +70 -0
  107. package/dist/entities/client-content-pillar/index.d.cts +49 -0
  108. package/dist/entities/client-content-pillar/index.d.mts +49 -0
  109. package/dist/entities/client-content-pillar/index.mjs +59 -0
  110. package/dist/entities/client-media-platform/index.cjs +74 -0
  111. package/dist/entities/client-media-platform/index.d.cts +53 -0
  112. package/dist/entities/client-media-platform/index.d.mts +53 -0
  113. package/dist/entities/client-media-platform/index.mjs +63 -0
  114. package/dist/entities/client-project/index.cjs +205 -0
  115. package/dist/entities/client-project/index.d.cts +147 -0
  116. package/dist/entities/client-project/index.d.mts +147 -0
  117. package/dist/entities/client-project/index.mjs +188 -0
  118. package/dist/entities/client-report/index.cjs +82 -0
  119. package/dist/entities/client-report/index.d.cts +63 -0
  120. package/dist/entities/client-report/index.d.mts +63 -0
  121. package/dist/entities/client-report/index.mjs +71 -0
  122. package/dist/entities/client-styleguide/index.cjs +77 -0
  123. package/dist/entities/client-styleguide/index.d.cts +48 -0
  124. package/dist/entities/client-styleguide/index.d.mts +48 -0
  125. package/dist/entities/client-styleguide/index.mjs +66 -0
  126. package/dist/entities/client-user/index.cjs +78 -0
  127. package/dist/entities/client-user/index.d.cts +47 -0
  128. package/dist/entities/client-user/index.d.mts +47 -0
  129. package/dist/entities/client-user/index.mjs +64 -0
  130. package/dist/entities/comment/index.cjs +137 -0
  131. package/dist/entities/comment/index.d.cts +2 -0
  132. package/dist/entities/comment/index.d.mts +2 -0
  133. package/dist/entities/comment/index.mjs +116 -0
  134. package/dist/entities/content-pillar/index.cjs +59 -0
  135. package/dist/entities/content-pillar/index.d.cts +50 -0
  136. package/dist/entities/content-pillar/index.d.mts +50 -0
  137. package/dist/entities/content-pillar/index.mjs +48 -0
  138. package/dist/entities/faq-page/index.cjs +17 -0
  139. package/dist/entities/faq-page/index.d.cts +335 -0
  140. package/dist/entities/faq-page/index.d.mts +335 -0
  141. package/dist/entities/faq-page/index.mjs +14 -0
  142. package/dist/entities/formatter/index.cjs +258 -0
  143. package/dist/entities/formatter/index.d.cts +121 -0
  144. package/dist/entities/formatter/index.d.mts +121 -0
  145. package/dist/entities/formatter/index.mjs +233 -0
  146. package/dist/entities/gcflytour/index.cjs +79 -0
  147. package/dist/entities/gcflytour/index.d.cts +61 -0
  148. package/dist/entities/gcflytour/index.d.mts +61 -0
  149. package/dist/entities/gcflytour/index.mjs +68 -0
  150. package/dist/entities/gcflytour-snap/index.cjs +78 -0
  151. package/dist/entities/gcflytour-snap/index.d.cts +59 -0
  152. package/dist/entities/gcflytour-snap/index.d.mts +59 -0
  153. package/dist/entities/gcflytour-snap/index.mjs +67 -0
  154. package/dist/entities/landing-page/index.cjs +28 -0
  155. package/dist/entities/landing-page/index.d.cts +479 -0
  156. package/dist/entities/landing-page/index.d.mts +479 -0
  157. package/dist/entities/landing-page/index.mjs +25 -0
  158. package/dist/entities/lead/index.cjs +63 -0
  159. package/dist/entities/lead/index.d.cts +75 -0
  160. package/dist/entities/lead/index.d.mts +75 -0
  161. package/dist/entities/lead/index.mjs +57 -0
  162. package/dist/entities/media-content-type/index.cjs +100 -0
  163. package/dist/entities/media-content-type/index.d.cts +66 -0
  164. package/dist/entities/media-content-type/index.d.mts +66 -0
  165. package/dist/entities/media-content-type/index.mjs +89 -0
  166. package/dist/entities/media-creative-format/index.cjs +79 -0
  167. package/dist/entities/media-creative-format/index.d.cts +54 -0
  168. package/dist/entities/media-creative-format/index.d.mts +54 -0
  169. package/dist/entities/media-creative-format/index.mjs +68 -0
  170. package/dist/entities/media-medium/index.cjs +90 -0
  171. package/dist/entities/media-medium/index.d.cts +77 -0
  172. package/dist/entities/media-medium/index.d.mts +77 -0
  173. package/dist/entities/media-medium/index.mjs +79 -0
  174. package/dist/entities/media-platform/index.cjs +118 -0
  175. package/dist/entities/media-platform/index.d.cts +74 -0
  176. package/dist/entities/media-platform/index.d.mts +74 -0
  177. package/dist/entities/media-platform/index.mjs +107 -0
  178. package/dist/entities/monday-workspace/index.cjs +66 -0
  179. package/dist/entities/monday-workspace/index.d.cts +47 -0
  180. package/dist/entities/monday-workspace/index.d.mts +47 -0
  181. package/dist/entities/monday-workspace/index.mjs +55 -0
  182. package/dist/entities/newsletter-signup/index.cjs +67 -0
  183. package/dist/entities/newsletter-signup/index.d.cts +76 -0
  184. package/dist/entities/newsletter-signup/index.d.mts +76 -0
  185. package/dist/entities/newsletter-signup/index.mjs +60 -0
  186. package/dist/entities/policy-page/index.cjs +23 -0
  187. package/dist/entities/policy-page/index.d.cts +331 -0
  188. package/dist/entities/policy-page/index.d.mts +331 -0
  189. package/dist/entities/policy-page/index.mjs +20 -0
  190. package/dist/entities/product/index.cjs +28 -0
  191. package/dist/entities/product/index.d.cts +325 -0
  192. package/dist/entities/product/index.d.mts +325 -0
  193. package/dist/entities/product/index.mjs +23 -0
  194. package/dist/entities/product-highlight/index.cjs +28 -0
  195. package/dist/entities/product-highlight/index.d.cts +245 -0
  196. package/dist/entities/product-highlight/index.d.mts +245 -0
  197. package/dist/entities/product-highlight/index.mjs +23 -0
  198. package/dist/entities/resume/index.cjs +129 -0
  199. package/dist/entities/resume/index.d.cts +198 -0
  200. package/dist/entities/resume/index.d.mts +198 -0
  201. package/dist/entities/resume/index.mjs +119 -0
  202. package/dist/entities/sharpspring/index.cjs +19 -0
  203. package/dist/entities/sharpspring/index.d.cts +16 -0
  204. package/dist/entities/sharpspring/index.d.mts +16 -0
  205. package/dist/entities/sharpspring/index.mjs +16 -0
  206. package/dist/entities/tag/index.cjs +61 -0
  207. package/dist/entities/tag/index.d.cts +54 -0
  208. package/dist/entities/tag/index.d.mts +54 -0
  209. package/dist/entities/tag/index.mjs +50 -0
  210. package/dist/entities/team-member/index.cjs +29 -0
  211. package/dist/entities/team-member/index.d.cts +210 -0
  212. package/dist/entities/team-member/index.d.mts +210 -0
  213. package/dist/entities/team-member/index.mjs +17 -0
  214. package/dist/entities/team-page/index.cjs +16 -0
  215. package/dist/entities/team-page/index.d.cts +257 -0
  216. package/dist/entities/team-page/index.d.mts +257 -0
  217. package/dist/entities/team-page/index.mjs +13 -0
  218. package/dist/entities/teamwork/index.cjs +74 -0
  219. package/dist/entities/teamwork/index.d.cts +512 -0
  220. package/dist/entities/teamwork/index.d.mts +512 -0
  221. package/dist/entities/teamwork/index.mjs +68 -0
  222. package/dist/entities/trend/index.cjs +34 -0
  223. package/dist/entities/trend/index.d.cts +347 -0
  224. package/dist/entities/trend/index.d.mts +347 -0
  225. package/dist/entities/trend/index.mjs +28 -0
  226. package/dist/entities/up-auth/index.cjs +56 -0
  227. package/dist/entities/up-auth/index.d.cts +2 -0
  228. package/dist/entities/up-auth/index.d.mts +2 -0
  229. package/dist/entities/up-auth/index.mjs +44 -0
  230. package/dist/entities/up-permission/index.cjs +12 -0
  231. package/dist/entities/up-permission/index.d.cts +14 -0
  232. package/dist/entities/up-permission/index.d.mts +14 -0
  233. package/dist/entities/up-permission/index.mjs +9 -0
  234. package/dist/entities/up-role/index.cjs +28 -0
  235. package/dist/entities/up-role/index.d.cts +7 -0
  236. package/dist/entities/up-role/index.d.mts +7 -0
  237. package/dist/entities/up-role/index.mjs +23 -0
  238. package/dist/entities/up-user/index.cjs +64 -0
  239. package/dist/entities/up-user/index.d.cts +38 -0
  240. package/dist/entities/up-user/index.d.mts +38 -0
  241. package/dist/entities/up-user/index.mjs +54 -0
  242. package/dist/entities/upload/index.cjs +35 -0
  243. package/dist/entities/upload/index.d.cts +31 -0
  244. package/dist/entities/upload/index.d.mts +31 -0
  245. package/dist/entities/upload/index.mjs +29 -0
  246. package/dist/entities/url-redirect/index.cjs +67 -0
  247. package/dist/entities/url-redirect/index.d.cts +45 -0
  248. package/dist/entities/url-redirect/index.d.mts +45 -0
  249. package/dist/entities/url-redirect/index.mjs +54 -0
  250. package/dist/entities/user-account/index.cjs +48 -0
  251. package/dist/entities/user-account/index.d.cts +39 -0
  252. package/dist/entities/user-account/index.d.mts +39 -0
  253. package/dist/entities/user-account/index.mjs +39 -0
  254. package/dist/entities/utm-link-builder/index.cjs +84 -0
  255. package/dist/entities/utm-link-builder/index.d.cts +191 -0
  256. package/dist/entities/utm-link-builder/index.d.mts +191 -0
  257. package/dist/entities/utm-link-builder/index.mjs +76 -0
  258. package/dist/entities/utm-meta/index.cjs +19 -0
  259. package/dist/entities/utm-meta/index.d.cts +83 -0
  260. package/dist/entities/utm-meta/index.d.mts +83 -0
  261. package/dist/entities/utm-meta/index.mjs +16 -0
  262. package/dist/entities/utm-tracking-link/index.cjs +199 -0
  263. package/dist/entities/utm-tracking-link/index.d.cts +235 -0
  264. package/dist/entities/utm-tracking-link/index.d.mts +235 -0
  265. package/dist/entities/utm-tracking-link/index.mjs +184 -0
  266. package/dist/fields-BQHSYj70.d.cts +7 -0
  267. package/dist/fields-qx-5saY5.d.mts +7 -0
  268. package/dist/fonts-CGSHKgp0.cjs +125 -0
  269. package/dist/fonts-tMy55UFs.mjs +58 -0
  270. package/dist/index-CPUGB8lZ.d.mts +95 -0
  271. package/dist/index-DDYmaYSm.d.mts +200 -0
  272. package/dist/index-Dl6KBLdT.d.mts +422 -0
  273. package/dist/index-DmLVZdb3.d.cts +200 -0
  274. package/dist/index-Dv9bgrpo.d.cts +422 -0
  275. package/dist/index-H4RC0v4h.d.cts +95 -0
  276. package/dist/json-BJ8GyrtC.d.cts +9 -0
  277. package/dist/json-BgewUW_1.cjs +19 -0
  278. package/dist/json-CTduX6Ak.mjs +12 -0
  279. package/dist/json-CqAaKeHA.d.mts +9 -0
  280. package/dist/media-upload-B6aQYeRM.cjs +59 -0
  281. package/dist/media-upload-DiRJksSU.mjs +40 -0
  282. package/dist/pagination-4pZafglS.cjs +23 -0
  283. package/dist/pagination-owwfYJS6.mjs +6 -0
  284. package/dist/{permissions.cjs → permissions/index.cjs} +6 -89
  285. package/dist/permissions/index.d.cts +2 -0
  286. package/dist/permissions/index.d.mts +2 -0
  287. package/dist/{permissions.mjs → permissions/index.mjs} +3 -86
  288. package/dist/query.schema-BOn5Kk_p.d.mts +41 -0
  289. package/dist/query.schema-CItKlb0x.d.cts +41 -0
  290. package/dist/query.schema-DHTf6rTw.cjs +95 -0
  291. package/dist/query.schema-YKoOuBnk.mjs +40 -0
  292. package/dist/regex-BnKGcdS4.mjs +55 -0
  293. package/dist/regex-Cl5goNwp.cjs +342 -0
  294. package/dist/relations-C04F46xL.mjs +41 -0
  295. package/dist/relations-CGu18hfT.cjs +90 -0
  296. package/dist/response-C-7nyNVD.d.mts +57 -0
  297. package/dist/response-c6SgLvi9.d.cts +57 -0
  298. package/dist/strapi-C0DtxJLD.mjs +9 -0
  299. package/dist/strapi-C7POOPEf.cjs +34 -0
  300. package/dist/strapi-COeswSwJ.mjs +49 -0
  301. package/dist/strapi-DmhV7ODq.cjs +72 -0
  302. package/dist/theme-Ba9vW4PA.cjs +230 -0
  303. package/dist/theme-BhQd4eMI.mjs +97 -0
  304. package/dist/{utilities.cjs → utilities/index.cjs} +9 -28
  305. package/dist/utilities/index.d.cts +24 -0
  306. package/dist/utilities/index.d.mts +24 -0
  307. package/dist/{utilities.mjs → utilities/index.mjs} +9 -25
  308. package/dist/validators-Bc9Is5Sr.cjs +222 -0
  309. package/dist/validators-P5E_3qzc.mjs +95 -0
  310. package/package.json +64 -40
  311. package/dist/constants.cjs +0 -461
  312. package/dist/constants.d.cts +0 -2
  313. package/dist/constants.d.mts +0 -2
  314. package/dist/constants.mjs +0 -353
  315. package/dist/index-CiWVYf_f.d.cts +0 -291
  316. package/dist/index-D5uEXy4J.d.mts +0 -4509
  317. package/dist/index-DOR_It7I.d.mts +0 -291
  318. package/dist/index-Df4iWapE.d.cts +0 -4509
  319. package/dist/index.cjs +0 -384
  320. package/dist/index.d.cts +0 -3
  321. package/dist/index.d.mts +0 -3
  322. package/dist/index.mjs +0 -6
  323. package/dist/permissions.d.cts +0 -2
  324. package/dist/permissions.d.mts +0 -2
  325. package/dist/schemas.cjs +0 -2326
  326. package/dist/schemas.d.cts +0 -2
  327. package/dist/schemas.d.mts +0 -2
  328. package/dist/schemas.mjs +0 -2068
  329. package/dist/types.cjs +0 -0
  330. package/dist/types.d.cts +0 -2
  331. package/dist/types.d.mts +0 -2
  332. package/dist/types.mjs +0 -1
  333. package/dist/utilities.d.cts +0 -2
  334. package/dist/utilities.d.mts +0 -2
@@ -0,0 +1,222 @@
1
+ const require_chunk = require("./chunk-CKQMccvm.cjs");
2
+ const require_regex = require("./regex-Cl5goNwp.cjs");
3
+ let valibot = require("valibot");
4
+ valibot = require_chunk.__toESM(valibot, 1);
5
+ //#region src/base/validators.ts
6
+ /**
7
+ * Basic number validator
8
+ */
9
+ const VNumberNullable = () => valibot.optional(valibot.nullable(valibot.number()));
10
+ const VIntegerNullable = () => valibot.optional(valibot.nullable(valibot.pipe(valibot.number(), valibot.integer())));
11
+ /**
12
+ * Basic string validator with trim and min length
13
+ */
14
+ const VString = (minLength = 1) => valibot.pipe(valibot.string(), valibot.trim(), valibot.minLength(minLength));
15
+ /**
16
+ * String validator with trim, min length, and max length (Short)
17
+ */
18
+ const VStringShort = (minLength = 1) => valibot.pipe(valibot.string(), valibot.trim(), valibot.minLength(minLength), valibot.maxLength(255));
19
+ /**
20
+ * String validator with trim, min length, and max length (Long)
21
+ */
22
+ const VStringLong = (minLength = 1) => valibot.pipe(valibot.string(), valibot.trim(), valibot.minLength(minLength), valibot.maxLength(require_regex.LIMIT_LONG_STRING_MAX_LENGTH));
23
+ /**
24
+ * String validator with trim, and max length
25
+ */
26
+ const VStringMax = (maxLength = 255) => valibot.pipe(valibot.string(), valibot.trim(), valibot.maxLength(maxLength));
27
+ /**
28
+ * String validator with trim, and max length
29
+ */
30
+ const VStringMaxRegex = (maxLength = 255, pattern, message) => valibot.pipe(valibot.string(), valibot.trim(), valibot.maxLength(maxLength), valibot.regex(pattern, message));
31
+ /**
32
+ * String validator with trim, min length, and max length
33
+ */
34
+ const VStringMinMax = (minLength = 1, maxLength = 255) => valibot.pipe(valibot.string(), valibot.trim(), valibot.minLength(minLength), valibot.maxLength(maxLength));
35
+ /**
36
+ * String validator with trim, min length, max length, and regex pattern
37
+ */
38
+ const VStringMinMaxRegex = (minLength = 1, maxLength = 255, pattern, message) => valibot.pipe(valibot.string(), valibot.trim(), valibot.minLength(minLength), valibot.maxLength(maxLength), valibot.regex(pattern, message));
39
+ /**
40
+ * Optional Nullable String validator (Long)
41
+ */
42
+ const VStringLongNullable = () => valibot.optional(valibot.nullable(valibot.pipe(valibot.string(), valibot.trim(), valibot.maxLength(require_regex.LIMIT_LONG_STRING_MAX_LENGTH))));
43
+ /**
44
+ * Optional Nullable String validator
45
+ * Commonly used for optional fields that might be null in the database or API
46
+ */
47
+ const VStringShortNullable = () => valibot.optional(valibot.nullable(valibot.pipe(valibot.string(), valibot.trim(), valibot.maxLength(255))));
48
+ /**
49
+ * URL Validator
50
+ * Checks for http/https prefix and valid URL format
51
+ */
52
+ const VStringUrl = () => valibot.pipe(valibot.string(), valibot.trim(), valibot.startsWith("http", require_regex.ERROR_MESSAGE_URL_PREFIX), valibot.url(require_regex.ERROR_MESSAGE_INVALID_URL));
53
+ /**
54
+ * UTM URL Validator
55
+ * Checks for valid URL format that does contain utm params
56
+ */
57
+ const VStringUrlUtm = () => valibot.pipe(valibot.string(), valibot.trim(), valibot.url(require_regex.ERROR_MESSAGE_INVALID_URL), valibot.check((input) => {
58
+ return input.includes("utm_");
59
+ }, require_regex.ERROR_MESSAGE_UTM_URL));
60
+ /**
61
+ * URL no utm params Validator
62
+ * Checks for valid URL format that does not contain utm params
63
+ */
64
+ const VStringUrlNoUtm = () => valibot.pipe(valibot.string(), valibot.trim(), valibot.url(require_regex.ERROR_MESSAGE_INVALID_URL), valibot.check((input) => {
65
+ if (input === "") return false;
66
+ return input.indexOf("?") === -1;
67
+ }, require_regex.ERROR_MESSAGE_URL_NO_QUERY_PARAMS));
68
+ /**
69
+ * Optional Nullable URL Validator
70
+ */
71
+ const VStringUrlNullable = () => valibot.optional(valibot.nullable(valibot.pipe(valibot.string(), valibot.trim(), valibot.startsWith("http", require_regex.ERROR_MESSAGE_URL_PREFIX), valibot.url(require_regex.ERROR_MESSAGE_INVALID_URL))));
72
+ /**
73
+ * Slug Validator
74
+ */
75
+ const VStringSlug = () => valibot.pipe(valibot.string(), valibot.trim(), valibot.minLength(1), valibot.maxLength(255), valibot.regex(require_regex.REGEX_URL_SLUG, require_regex.ERROR_MESSAGE_REGEX_URL_SLUG));
76
+ /**
77
+ * Email Validator
78
+ */
79
+ const VStringEmail = () => valibot.pipe(valibot.string(), valibot.trim(), valibot.minLength(5), valibot.maxLength(255), valibot.email());
80
+ /**
81
+ * Phone Validator (NANP)
82
+ */
83
+ const VStringPhone = () => valibot.pipe(valibot.string(), valibot.trim(), valibot.minLength(7), valibot.maxLength(24), valibot.regex(require_regex.REGEX_NANP_PHONE, require_regex.ERROR_MESSAGE_REGEX_PHONE));
84
+ /**
85
+ * Optional Nullable Phone Validator
86
+ */
87
+ const VStringPhoneNullable = () => valibot.optional(valibot.nullable(VStringPhone()));
88
+ /**
89
+ * Pagination Page Validator
90
+ */
91
+ const VPage = () => valibot.optional(valibot.pipe(valibot.number(), valibot.minValue(1)));
92
+ /**
93
+ * Pagination Size Validator
94
+ */
95
+ const VSize = (maxSize) => valibot.optional(valibot.pipe(valibot.number(), valibot.minValue(1), valibot.maxValue(maxSize)));
96
+ //#endregion
97
+ Object.defineProperty(exports, "VIntegerNullable", {
98
+ enumerable: true,
99
+ get: function() {
100
+ return VIntegerNullable;
101
+ }
102
+ });
103
+ Object.defineProperty(exports, "VNumberNullable", {
104
+ enumerable: true,
105
+ get: function() {
106
+ return VNumberNullable;
107
+ }
108
+ });
109
+ Object.defineProperty(exports, "VPage", {
110
+ enumerable: true,
111
+ get: function() {
112
+ return VPage;
113
+ }
114
+ });
115
+ Object.defineProperty(exports, "VSize", {
116
+ enumerable: true,
117
+ get: function() {
118
+ return VSize;
119
+ }
120
+ });
121
+ Object.defineProperty(exports, "VString", {
122
+ enumerable: true,
123
+ get: function() {
124
+ return VString;
125
+ }
126
+ });
127
+ Object.defineProperty(exports, "VStringEmail", {
128
+ enumerable: true,
129
+ get: function() {
130
+ return VStringEmail;
131
+ }
132
+ });
133
+ Object.defineProperty(exports, "VStringLong", {
134
+ enumerable: true,
135
+ get: function() {
136
+ return VStringLong;
137
+ }
138
+ });
139
+ Object.defineProperty(exports, "VStringLongNullable", {
140
+ enumerable: true,
141
+ get: function() {
142
+ return VStringLongNullable;
143
+ }
144
+ });
145
+ Object.defineProperty(exports, "VStringMax", {
146
+ enumerable: true,
147
+ get: function() {
148
+ return VStringMax;
149
+ }
150
+ });
151
+ Object.defineProperty(exports, "VStringMaxRegex", {
152
+ enumerable: true,
153
+ get: function() {
154
+ return VStringMaxRegex;
155
+ }
156
+ });
157
+ Object.defineProperty(exports, "VStringMinMax", {
158
+ enumerable: true,
159
+ get: function() {
160
+ return VStringMinMax;
161
+ }
162
+ });
163
+ Object.defineProperty(exports, "VStringMinMaxRegex", {
164
+ enumerable: true,
165
+ get: function() {
166
+ return VStringMinMaxRegex;
167
+ }
168
+ });
169
+ Object.defineProperty(exports, "VStringPhone", {
170
+ enumerable: true,
171
+ get: function() {
172
+ return VStringPhone;
173
+ }
174
+ });
175
+ Object.defineProperty(exports, "VStringPhoneNullable", {
176
+ enumerable: true,
177
+ get: function() {
178
+ return VStringPhoneNullable;
179
+ }
180
+ });
181
+ Object.defineProperty(exports, "VStringShort", {
182
+ enumerable: true,
183
+ get: function() {
184
+ return VStringShort;
185
+ }
186
+ });
187
+ Object.defineProperty(exports, "VStringShortNullable", {
188
+ enumerable: true,
189
+ get: function() {
190
+ return VStringShortNullable;
191
+ }
192
+ });
193
+ Object.defineProperty(exports, "VStringSlug", {
194
+ enumerable: true,
195
+ get: function() {
196
+ return VStringSlug;
197
+ }
198
+ });
199
+ Object.defineProperty(exports, "VStringUrl", {
200
+ enumerable: true,
201
+ get: function() {
202
+ return VStringUrl;
203
+ }
204
+ });
205
+ Object.defineProperty(exports, "VStringUrlNoUtm", {
206
+ enumerable: true,
207
+ get: function() {
208
+ return VStringUrlNoUtm;
209
+ }
210
+ });
211
+ Object.defineProperty(exports, "VStringUrlNullable", {
212
+ enumerable: true,
213
+ get: function() {
214
+ return VStringUrlNullable;
215
+ }
216
+ });
217
+ Object.defineProperty(exports, "VStringUrlUtm", {
218
+ enumerable: true,
219
+ get: function() {
220
+ return VStringUrlUtm;
221
+ }
222
+ });
@@ -0,0 +1,95 @@
1
+ import { J as ERROR_MESSAGE_UTM_URL, K as ERROR_MESSAGE_URL_NO_QUERY_PARAMS, U as ERROR_MESSAGE_INVALID_URL, a as REGEX_NANP_PHONE, c as LIMIT_LONG_STRING_MAX_LENGTH, n as ERROR_MESSAGE_REGEX_URL_SLUG, o as REGEX_URL_SLUG, q as ERROR_MESSAGE_URL_PREFIX, t as ERROR_MESSAGE_REGEX_PHONE } from "./regex-BnKGcdS4.mjs";
2
+ import * as v from "valibot";
3
+ //#region src/base/validators.ts
4
+ /**
5
+ * Basic number validator
6
+ */
7
+ const VNumberNullable = () => v.optional(v.nullable(v.number()));
8
+ const VIntegerNullable = () => v.optional(v.nullable(v.pipe(v.number(), v.integer())));
9
+ /**
10
+ * Basic string validator with trim and min length
11
+ */
12
+ const VString = (minLength = 1) => v.pipe(v.string(), v.trim(), v.minLength(minLength));
13
+ /**
14
+ * String validator with trim, min length, and max length (Short)
15
+ */
16
+ const VStringShort = (minLength = 1) => v.pipe(v.string(), v.trim(), v.minLength(minLength), v.maxLength(255));
17
+ /**
18
+ * String validator with trim, min length, and max length (Long)
19
+ */
20
+ const VStringLong = (minLength = 1) => v.pipe(v.string(), v.trim(), v.minLength(minLength), v.maxLength(LIMIT_LONG_STRING_MAX_LENGTH));
21
+ /**
22
+ * String validator with trim, and max length
23
+ */
24
+ const VStringMax = (maxLength = 255) => v.pipe(v.string(), v.trim(), v.maxLength(maxLength));
25
+ /**
26
+ * String validator with trim, and max length
27
+ */
28
+ const VStringMaxRegex = (maxLength = 255, pattern, message) => v.pipe(v.string(), v.trim(), v.maxLength(maxLength), v.regex(pattern, message));
29
+ /**
30
+ * String validator with trim, min length, and max length
31
+ */
32
+ const VStringMinMax = (minLength = 1, maxLength = 255) => v.pipe(v.string(), v.trim(), v.minLength(minLength), v.maxLength(maxLength));
33
+ /**
34
+ * String validator with trim, min length, max length, and regex pattern
35
+ */
36
+ const VStringMinMaxRegex = (minLength = 1, maxLength = 255, pattern, message) => v.pipe(v.string(), v.trim(), v.minLength(minLength), v.maxLength(maxLength), v.regex(pattern, message));
37
+ /**
38
+ * Optional Nullable String validator (Long)
39
+ */
40
+ const VStringLongNullable = () => v.optional(v.nullable(v.pipe(v.string(), v.trim(), v.maxLength(LIMIT_LONG_STRING_MAX_LENGTH))));
41
+ /**
42
+ * Optional Nullable String validator
43
+ * Commonly used for optional fields that might be null in the database or API
44
+ */
45
+ const VStringShortNullable = () => v.optional(v.nullable(v.pipe(v.string(), v.trim(), v.maxLength(255))));
46
+ /**
47
+ * URL Validator
48
+ * Checks for http/https prefix and valid URL format
49
+ */
50
+ const VStringUrl = () => v.pipe(v.string(), v.trim(), v.startsWith("http", ERROR_MESSAGE_URL_PREFIX), v.url(ERROR_MESSAGE_INVALID_URL));
51
+ /**
52
+ * UTM URL Validator
53
+ * Checks for valid URL format that does contain utm params
54
+ */
55
+ const VStringUrlUtm = () => v.pipe(v.string(), v.trim(), v.url(ERROR_MESSAGE_INVALID_URL), v.check((input) => {
56
+ return input.includes("utm_");
57
+ }, ERROR_MESSAGE_UTM_URL));
58
+ /**
59
+ * URL no utm params Validator
60
+ * Checks for valid URL format that does not contain utm params
61
+ */
62
+ const VStringUrlNoUtm = () => v.pipe(v.string(), v.trim(), v.url(ERROR_MESSAGE_INVALID_URL), v.check((input) => {
63
+ if (input === "") return false;
64
+ return input.indexOf("?") === -1;
65
+ }, ERROR_MESSAGE_URL_NO_QUERY_PARAMS));
66
+ /**
67
+ * Optional Nullable URL Validator
68
+ */
69
+ const VStringUrlNullable = () => v.optional(v.nullable(v.pipe(v.string(), v.trim(), v.startsWith("http", ERROR_MESSAGE_URL_PREFIX), v.url(ERROR_MESSAGE_INVALID_URL))));
70
+ /**
71
+ * Slug Validator
72
+ */
73
+ const VStringSlug = () => v.pipe(v.string(), v.trim(), v.minLength(1), v.maxLength(255), v.regex(REGEX_URL_SLUG, ERROR_MESSAGE_REGEX_URL_SLUG));
74
+ /**
75
+ * Email Validator
76
+ */
77
+ const VStringEmail = () => v.pipe(v.string(), v.trim(), v.minLength(5), v.maxLength(255), v.email());
78
+ /**
79
+ * Phone Validator (NANP)
80
+ */
81
+ const VStringPhone = () => v.pipe(v.string(), v.trim(), v.minLength(7), v.maxLength(24), v.regex(REGEX_NANP_PHONE, ERROR_MESSAGE_REGEX_PHONE));
82
+ /**
83
+ * Optional Nullable Phone Validator
84
+ */
85
+ const VStringPhoneNullable = () => v.optional(v.nullable(VStringPhone()));
86
+ /**
87
+ * Pagination Page Validator
88
+ */
89
+ const VPage = () => v.optional(v.pipe(v.number(), v.minValue(1)));
90
+ /**
91
+ * Pagination Size Validator
92
+ */
93
+ const VSize = (maxSize) => v.optional(v.pipe(v.number(), v.minValue(1), v.maxValue(maxSize)));
94
+ //#endregion
95
+ export { VStringSlug as _, VString as a, VStringUrlNullable as b, VStringLongNullable as c, VStringMinMax as d, VStringMinMaxRegex as f, VStringShortNullable as g, VStringShort as h, VSize as i, VStringMax as l, VStringPhoneNullable as m, VNumberNullable as n, VStringEmail as o, VStringPhone as p, VPage as r, VStringLong as s, VIntegerNullable as t, VStringMaxRegex as u, VStringUrl as v, VStringUrlUtm as x, VStringUrlNoUtm as y };
package/package.json CHANGED
@@ -1,81 +1,99 @@
1
1
  {
2
2
  "name": "@getcommunity/gc-validators",
3
3
  "description": "Schema Validator for GetCommunity web-stack types",
4
- "version": "0.0.270",
4
+ "version": "0.0.271-alpha.0",
5
5
  "author": "Joey Grable <joey@getcommunity.com> (https://joeygrable.com)",
6
6
  "contributors": [],
7
7
  "type": "module",
8
- "files": [
9
- "dist"
10
- ],
11
- "main": "dist/index.cjs",
12
- "module": "dist/index.mjs",
13
- "types": "dist/index.d.mts",
14
8
  "exports": {
15
- ".": {
9
+ "./base": {
16
10
  "import": {
17
- "types": "./dist/index.d.mts",
18
- "default": "./dist/index.mjs"
11
+ "types": "./dist/base/index.d.mts",
12
+ "default": "./dist/base/index.mjs"
19
13
  },
20
14
  "require": {
21
- "types": "./dist/index.d.cts",
22
- "default": "./dist/index.cjs"
15
+ "types": "./dist/base/index.d.cts",
16
+ "default": "./dist/base/index.cjs"
23
17
  }
24
18
  },
25
- "./constants": {
19
+ "./components/*": {
26
20
  "import": {
27
- "types": "./dist/constants.d.mts",
28
- "default": "./dist/constants.mjs"
21
+ "types": "./dist/components/*/index.d.mts",
22
+ "default": "./dist/components/*/index.mjs"
29
23
  },
30
24
  "require": {
31
- "types": "./dist/constants.d.cts",
32
- "default": "./dist/constants.cjs"
25
+ "types": "./dist/components/*/index.d.cts",
26
+ "default": "./dist/components/*/index.cjs"
33
27
  }
34
28
  },
35
- "./permissions": {
29
+ "./constants": {
36
30
  "import": {
37
- "types": "./dist/permissions.d.mts",
38
- "default": "./dist/permissions.mjs"
31
+ "types": "./dist/constants/index.d.mts",
32
+ "default": "./dist/constants/index.mjs"
39
33
  },
40
34
  "require": {
41
- "types": "./dist/permissions.d.cts",
42
- "default": "./dist/permissions.cjs"
35
+ "types": "./dist/constants/index.d.cts",
36
+ "default": "./dist/constants/index.cjs"
43
37
  }
44
38
  },
45
- "./schemas": {
39
+ "./entities/*": {
46
40
  "import": {
47
- "types": "./dist/schemas.d.mts",
48
- "default": "./dist/schemas.mjs"
41
+ "types": "./dist/entities/*/index.d.mts",
42
+ "default": "./dist/entities/*/index.mjs"
49
43
  },
50
44
  "require": {
51
- "types": "./dist/schemas.d.cts",
52
- "default": "./dist/schemas.cjs"
45
+ "types": "./dist/entities/*/index.d.cts",
46
+ "default": "./dist/entities/*/index.cjs"
53
47
  }
54
48
  },
55
- "./types": {
49
+ "./permissions": {
56
50
  "import": {
57
- "types": "./dist/types.d.mts",
58
- "default": "./dist/types.mjs"
51
+ "types": "./dist/permissions/index.d.mts",
52
+ "default": "./dist/permissions/index.mjs"
59
53
  },
60
54
  "require": {
61
- "types": "./dist/types.d.cts",
62
- "default": "./dist/types.cjs"
55
+ "types": "./dist/permissions/index.d.cts",
56
+ "default": "./dist/permissions/index.cjs"
63
57
  }
64
58
  },
65
59
  "./utilities": {
66
60
  "import": {
67
- "types": "./dist/utilities.d.mts",
68
- "default": "./dist/utilities.mjs"
61
+ "types": "./dist/utilities/index.d.mts",
62
+ "default": "./dist/utilities/index.mjs"
69
63
  },
70
64
  "require": {
71
- "types": "./dist/utilities.d.cts",
72
- "default": "./dist/utilities.cjs"
65
+ "types": "./dist/utilities/index.d.cts",
66
+ "default": "./dist/utilities/index.cjs"
73
67
  }
74
68
  }
75
69
  },
76
- "source": "src/index.ts",
70
+ "typesVersions": {
71
+ "*": {
72
+ "base": [
73
+ "./dist/base/index.d.mts"
74
+ ],
75
+ "components/*": [
76
+ "./dist/components/*/index.d.mts"
77
+ ],
78
+ "constants": [
79
+ "./dist/constants/index.d.mts"
80
+ ],
81
+ "entities/*": [
82
+ "./dist/entities/*/index.d.mts"
83
+ ],
84
+ "permissions": [
85
+ "./dist/permissions/index.d.mts"
86
+ ],
87
+ "utilities": [
88
+ "./dist/utilities/index.d.mts"
89
+ ]
90
+ }
91
+ },
92
+ "files": [
93
+ "dist"
94
+ ],
77
95
  "peerDependencies": {
78
- "valibot": "^1.3.1"
96
+ "valibot": "^1.4.0"
79
97
  },
80
98
  "keywords": [],
81
99
  "license": "ISC",
@@ -92,16 +110,22 @@
92
110
  "build": "tsdown",
93
111
  "dev": "tsdown --watch",
94
112
  "format": "prettier --write \"./src/**/*.{ts,tsx}\"",
95
- "lint": "prettier --check \"src/**/*.{ts,tsx}\"",
113
+ "lint": "eslint ./src",
114
+ "lint:fix": "eslint ./src --fix",
96
115
  "typecheck": "tsc --noEmit",
97
116
  "clean": "rm -rf dist .turbo node_modules"
98
117
  },
99
118
  "devDependencies": {
119
+ "@eslint/js": "^10.0.1",
100
120
  "@getcommunity/config-prettier": "^0.1.1",
121
+ "@ospm/eslint-plugin-valibot": "^1.0.1",
122
+ "@typescript-eslint/utils": "^8.59.3",
123
+ "jiti": "^2.7.0",
101
124
  "prettier": "^3.8.3",
102
125
  "prettier-plugin-organize-imports": "^4.3.0",
103
126
  "tsdown": "^0.22.0",
104
- "typescript": "^6.0.2"
127
+ "typescript": "^6.0.2",
128
+ "typescript-eslint": "^8.59.3"
105
129
  },
106
130
  "bugs": {
107
131
  "url": "https://github.com/getcommunity/gc-validators/issues"