@stndrds/schema 1.0.0-alpha.294 → 1.0.0-alpha.296

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 (175) hide show
  1. package/LICENSE +111 -0
  2. package/README.md +7 -0
  3. package/dist/{all-Cru_CaSY.d.mts → all-BekDmUP1.d.mts} +32 -32
  4. package/dist/{all-CDJSpI46.d.ts → all-Bl3DlCEn.d.ts} +32 -32
  5. package/dist/{attributes-CWPLbp7c.d.mts → attributes-CtS5Gf_i.d.mts} +1 -1
  6. package/dist/{attributes-CNYwg_Nr.d.ts → attributes-SIbTof03.d.ts} +1 -1
  7. package/dist/capabilities.js +2 -77
  8. package/dist/capabilities.mjs +2 -70
  9. package/dist/chunk-23KPS33D.js +2 -0
  10. package/dist/chunk-47EGJRW7.js +4 -0
  11. package/dist/chunk-47KVYDKG.js +2 -0
  12. package/dist/chunk-4OTKOCGB.mjs +2 -0
  13. package/dist/chunk-4VCADZK4.mjs +2 -0
  14. package/dist/chunk-5QAE5NPN.js +6 -0
  15. package/dist/chunk-72TQRSNX.js +12 -0
  16. package/dist/chunk-DPD6ZWL2.js +2 -0
  17. package/dist/chunk-GKXTXH4Y.mjs +2 -0
  18. package/dist/chunk-GWAHL4A2.mjs +2 -0
  19. package/dist/chunk-GXSNLYRR.js +2 -0
  20. package/dist/chunk-JCPAOH76.mjs +2 -0
  21. package/dist/chunk-JFSQ24XR.js +2 -0
  22. package/dist/chunk-JOS2XMXY.js +2 -0
  23. package/dist/chunk-JVLH3DVZ.js +2 -0
  24. package/dist/chunk-KG2ADZG6.mjs +2 -0
  25. package/dist/chunk-KLR22JMC.js +2 -0
  26. package/dist/chunk-KSPJP74K.mjs +2 -0
  27. package/dist/chunk-KYPEBOPW.mjs +2 -0
  28. package/dist/chunk-LB4TNMZU.mjs +2 -0
  29. package/dist/chunk-LQYUPOWB.js +2 -0
  30. package/dist/chunk-LSCBR4VS.js +2 -0
  31. package/dist/chunk-LWSOKXPF.js +2 -0
  32. package/dist/chunk-O34B5KOW.mjs +2 -0
  33. package/dist/chunk-PFO7NWQW.mjs +2 -0
  34. package/dist/chunk-PT25FZ62.mjs +12 -0
  35. package/dist/chunk-Q7TQCRSD.mjs +2 -0
  36. package/dist/chunk-RFKNNT2Q.mjs +4 -0
  37. package/dist/chunk-SDOYGWU4.js +2 -0
  38. package/dist/chunk-SLYRQ72J.js +2 -0
  39. package/dist/chunk-UXISKZ5Y.js +2 -0
  40. package/dist/chunk-V43RXKN2.mjs +6 -0
  41. package/dist/chunk-VKFLXFPP.mjs +2 -0
  42. package/dist/chunk-WMQRTFOP.mjs +2 -0
  43. package/dist/chunk-XHEBV2HE.js +2 -0
  44. package/dist/chunk-XMQV2WFY.mjs +2 -0
  45. package/dist/chunk-XRDP2Y4J.mjs +2 -0
  46. package/dist/chunk-XUAP7KWK.js +2 -0
  47. package/dist/chunk-XXTKNIBK.js +2 -0
  48. package/dist/chunk-YIXNAWH6.mjs +2 -0
  49. package/dist/exceptions.d.mts +8 -2
  50. package/dist/exceptions.d.ts +8 -2
  51. package/dist/exceptions.js +1 -158
  52. package/dist/exceptions.mjs +1 -1
  53. package/dist/{helpers-Dul_r9rJ.d.mts → helpers-BUsoR80N.d.mts} +3 -3
  54. package/dist/{helpers-CXkVwpsl.d.ts → helpers-DZFOorZt.d.ts} +3 -3
  55. package/dist/{index-CFhPHQaI.d.ts → index-DaY37pqb.d.ts} +2 -2
  56. package/dist/{index-BdVnHL3F.d.mts → index-EHhbbH-p.d.mts} +2 -2
  57. package/dist/index.d.mts +500 -146
  58. package/dist/index.d.ts +500 -146
  59. package/dist/index.js +30 -10514
  60. package/dist/index.mjs +30 -9626
  61. package/dist/{migrations-fRvadl6i.d.mts → migrations-DRBic-QO.d.mts} +1 -1
  62. package/dist/{migrations-DaFneOfx.d.ts → migrations-DhQ05TqN.d.ts} +1 -1
  63. package/dist/{objects-DJv6WrDE.d.ts → objects-DMOfJNYg.d.ts} +2 -2
  64. package/dist/{objects-CDwMSnqv.d.mts → objects-KU7alqZq.d.mts} +2 -2
  65. package/dist/{types-NGEww_ln.d.ts → types-BNaHEz_n.d.ts} +1 -1
  66. package/dist/{types-CVYiFc69.d.mts → types-ldo4nJxP.d.mts} +1 -1
  67. package/dist/utils.js +1 -31
  68. package/dist/utils.mjs +1 -2
  69. package/dist/validation/all.d.mts +7 -7
  70. package/dist/validation/all.d.ts +7 -7
  71. package/dist/validation/all.js +1 -131
  72. package/dist/validation/all.mjs +1 -18
  73. package/dist/validation/complex/currency.d.mts +2 -2
  74. package/dist/validation/complex/currency.d.ts +2 -2
  75. package/dist/validation/complex/currency.js +1 -11
  76. package/dist/validation/complex/currency.mjs +1 -2
  77. package/dist/validation/complex/location.d.mts +2 -2
  78. package/dist/validation/complex/location.d.ts +2 -2
  79. package/dist/validation/complex/location.js +1 -11
  80. package/dist/validation/complex/location.mjs +1 -2
  81. package/dist/validation/complex/phone.d.mts +2 -2
  82. package/dist/validation/complex/phone.d.ts +2 -2
  83. package/dist/validation/complex/phone.js +1 -11
  84. package/dist/validation/complex/phone.mjs +1 -2
  85. package/dist/validation/complex/relation.d.mts +2 -2
  86. package/dist/validation/complex/relation.d.ts +2 -2
  87. package/dist/validation/complex/relation.js +1 -19
  88. package/dist/validation/complex/relation.mjs +1 -2
  89. package/dist/validation/complex/richtext.d.mts +2 -2
  90. package/dist/validation/complex/richtext.d.ts +2 -2
  91. package/dist/validation/complex/richtext.js +1 -11
  92. package/dist/validation/complex/richtext.mjs +1 -2
  93. package/dist/validation/complex/select.d.mts +2 -2
  94. package/dist/validation/complex/select.d.ts +2 -2
  95. package/dist/validation/complex/select.js +1 -19
  96. package/dist/validation/complex/select.mjs +1 -2
  97. package/dist/validation/complex/user.d.mts +2 -2
  98. package/dist/validation/complex/user.d.ts +2 -2
  99. package/dist/validation/complex/user.js +1 -11
  100. package/dist/validation/complex/user.mjs +1 -2
  101. package/dist/validation/computed/formula.d.mts +2 -2
  102. package/dist/validation/computed/formula.d.ts +2 -2
  103. package/dist/validation/computed/formula.js +1 -11
  104. package/dist/validation/computed/formula.mjs +1 -2
  105. package/dist/validation/computed/rollup.d.mts +2 -2
  106. package/dist/validation/computed/rollup.d.ts +2 -2
  107. package/dist/validation/computed/rollup.js +1 -11
  108. package/dist/validation/computed/rollup.mjs +1 -2
  109. package/dist/validation/config/index.d.mts +4 -4
  110. package/dist/validation/config/index.d.ts +4 -4
  111. package/dist/validation/config/index.js +1 -52
  112. package/dist/validation/config/index.mjs +1 -7
  113. package/dist/validation/core/index.d.mts +3 -3
  114. package/dist/validation/core/index.d.ts +3 -3
  115. package/dist/validation/core/index.js +1 -14
  116. package/dist/validation/core/index.mjs +1 -1
  117. package/dist/validation/object/index.d.mts +5 -5
  118. package/dist/validation/object/index.d.ts +5 -5
  119. package/dist/validation/object/index.js +1 -69
  120. package/dist/validation/object/index.mjs +1 -16
  121. package/dist/validation/primitives/checkbox.d.mts +2 -2
  122. package/dist/validation/primitives/checkbox.d.ts +2 -2
  123. package/dist/validation/primitives/checkbox.js +1 -11
  124. package/dist/validation/primitives/checkbox.mjs +1 -2
  125. package/dist/validation/primitives/date.d.mts +2 -2
  126. package/dist/validation/primitives/date.d.ts +2 -2
  127. package/dist/validation/primitives/date.js +1 -11
  128. package/dist/validation/primitives/date.mjs +1 -2
  129. package/dist/validation/primitives/number.d.mts +2 -2
  130. package/dist/validation/primitives/number.d.ts +2 -2
  131. package/dist/validation/primitives/number.js +1 -11
  132. package/dist/validation/primitives/number.mjs +1 -2
  133. package/dist/validation/primitives/text.d.mts +2 -2
  134. package/dist/validation/primitives/text.d.ts +2 -2
  135. package/dist/validation/primitives/text.js +1 -11
  136. package/dist/validation/primitives/text.mjs +1 -2
  137. package/package.json +7 -5
  138. package/dist/chunk-2WWGHULM.mjs +0 -226
  139. package/dist/chunk-4KMUATDG.js +0 -609
  140. package/dist/chunk-5WATIVCA.js +0 -10
  141. package/dist/chunk-ACKMC6FL.js +0 -17
  142. package/dist/chunk-AYVHMVKQ.mjs +0 -15
  143. package/dist/chunk-CLZORRMS.mjs +0 -570
  144. package/dist/chunk-DVXGSTWJ.js +0 -81
  145. package/dist/chunk-E6JUYGJX.js +0 -22
  146. package/dist/chunk-EEH4XQ7W.js +0 -61
  147. package/dist/chunk-EW5XR2X3.js +0 -12
  148. package/dist/chunk-GO6LQADH.mjs +0 -57
  149. package/dist/chunk-HRQEZUAA.mjs +0 -29
  150. package/dist/chunk-HTSTPTNZ.js +0 -10
  151. package/dist/chunk-HURC6CW3.js +0 -241
  152. package/dist/chunk-JZNR4HKQ.mjs +0 -1432
  153. package/dist/chunk-KAWYU7TE.js +0 -657
  154. package/dist/chunk-KNGWHQLR.js +0 -16
  155. package/dist/chunk-LV3FEUKU.mjs +0 -14
  156. package/dist/chunk-NS63SPNN.mjs +0 -8
  157. package/dist/chunk-O73ROMWQ.mjs +0 -85
  158. package/dist/chunk-OSSGN43B.mjs +0 -8
  159. package/dist/chunk-Q44QKLN4.mjs +0 -43
  160. package/dist/chunk-Q4SZAMJT.js +0 -72
  161. package/dist/chunk-QT35SI3K.mjs +0 -641
  162. package/dist/chunk-QVLQPW3O.mjs +0 -10
  163. package/dist/chunk-QWKLQRBX.js +0 -35
  164. package/dist/chunk-R2DAEDRF.mjs +0 -74
  165. package/dist/chunk-R5LAJCBU.mjs +0 -67
  166. package/dist/chunk-SI34M4IC.js +0 -45
  167. package/dist/chunk-T5PM73EF.js +0 -1504
  168. package/dist/chunk-UANQJ2GH.mjs +0 -25
  169. package/dist/chunk-UXAHLSWC.mjs +0 -8
  170. package/dist/chunk-V2UA2D4E.js +0 -10
  171. package/dist/chunk-YIP5FJ5H.js +0 -27
  172. package/dist/chunk-YKWSHBT5.js +0 -32
  173. package/dist/chunk-YUFTHPOE.mjs +0 -20
  174. package/dist/chunk-ZDQ5AP26.mjs +0 -31
  175. package/dist/chunk-ZPFOKBIN.js +0 -89
@@ -1,25 +0,0 @@
1
- import { DEFAULT_VALIDATION_MESSAGES } from './chunk-HRQEZUAA.mjs';
2
- import { z } from 'zod';
3
-
4
- function createNumberValidator(attr, messages = DEFAULT_VALIDATION_MESSAGES) {
5
- let schema = z.number();
6
- if (attr.min !== void 0) {
7
- schema = schema.min(attr.min, messages.minValue(attr, attr.min));
8
- }
9
- if (attr.max !== void 0) {
10
- schema = schema.max(attr.max, messages.maxValue(attr, attr.max));
11
- }
12
- if (attr.renderAs === "rating") {
13
- schema = schema.min(attr.min ?? 0);
14
- schema = schema.max(attr.max ?? 5);
15
- }
16
- if (attr.unit === "percentage") {
17
- schema = schema.min(attr.min ?? 0).max(attr.max ?? 100);
18
- }
19
- if (attr.unit === "integer") {
20
- schema = schema.int(messages.mustBeInteger(attr));
21
- }
22
- return schema;
23
- }
24
-
25
- export { createNumberValidator };
@@ -1,8 +0,0 @@
1
- import { DEFAULT_VALIDATION_MESSAGES } from './chunk-HRQEZUAA.mjs';
2
- import { z } from 'zod';
3
-
4
- function createFormulaValidator(_attr, _messages = DEFAULT_VALIDATION_MESSAGES) {
5
- return z.unknown();
6
- }
7
-
8
- export { createFormulaValidator };
@@ -1,10 +0,0 @@
1
- 'use strict';
2
-
3
- var chunkYKWSHBT5_js = require('./chunk-YKWSHBT5.js');
4
- var zod = require('zod');
5
-
6
- function createRollupValidator(_attr, _messages = chunkYKWSHBT5_js.DEFAULT_VALIDATION_MESSAGES) {
7
- return zod.z.unknown();
8
- }
9
-
10
- exports.createRollupValidator = createRollupValidator;
@@ -1,27 +0,0 @@
1
- 'use strict';
2
-
3
- var chunkYKWSHBT5_js = require('./chunk-YKWSHBT5.js');
4
- var zod = require('zod');
5
-
6
- function createNumberValidator(attr, messages = chunkYKWSHBT5_js.DEFAULT_VALIDATION_MESSAGES) {
7
- let schema = zod.z.number();
8
- if (attr.min !== void 0) {
9
- schema = schema.min(attr.min, messages.minValue(attr, attr.min));
10
- }
11
- if (attr.max !== void 0) {
12
- schema = schema.max(attr.max, messages.maxValue(attr, attr.max));
13
- }
14
- if (attr.renderAs === "rating") {
15
- schema = schema.min(attr.min ?? 0);
16
- schema = schema.max(attr.max ?? 5);
17
- }
18
- if (attr.unit === "percentage") {
19
- schema = schema.min(attr.min ?? 0).max(attr.max ?? 100);
20
- }
21
- if (attr.unit === "integer") {
22
- schema = schema.int(messages.mustBeInteger(attr));
23
- }
24
- return schema;
25
- }
26
-
27
- exports.createNumberValidator = createNumberValidator;
@@ -1,32 +0,0 @@
1
- 'use strict';
2
-
3
- // src/validation/core/messages.ts
4
- var DEFAULT_VALIDATION_MESSAGES = {
5
- required: (attr) => `${attr.label} is required`,
6
- invalidType: (attr, expected) => `${attr.label} must be a ${expected}`,
7
- minLength: (attr, min) => `${attr.label} must be at least ${min} characters`,
8
- maxLength: (attr, max) => `${attr.label} must be at most ${max} characters`,
9
- invalidPattern: (attr) => `${attr.label} format is invalid`,
10
- minValue: (attr, min) => `${attr.label} must be at least ${min}`,
11
- maxValue: (attr, max) => `${attr.label} must be at most ${max}`,
12
- mustBeInteger: (attr) => `${attr.label} must be an integer`,
13
- invalidDate: (attr) => `${attr.label} must be a valid date`,
14
- invalidOption: (attr, options) => `${attr.label} must be one of: ${options.join(", ")}`,
15
- invalidId: (attr) => `${attr.label} must be a valid ID`,
16
- maxItems: (attr, max) => `${attr.label} must have at most ${max} item${max > 1 ? "s" : ""}`,
17
- invalidRichtext: (attr) => `${attr.label} must be valid rich text content`,
18
- invalidPhone: (attr) => `${attr.label} must be a valid phone number`,
19
- invalidCurrency: (attr) => `${attr.label} must be a valid currency value`,
20
- invalidLocation: (attr) => `${attr.label} must be a valid location`
21
- };
22
-
23
- // src/validation/core/errors.ts
24
- function formatZodErrors(error) {
25
- return error.issues.map((err) => ({
26
- path: err.path.map(String),
27
- message: err.message
28
- }));
29
- }
30
-
31
- exports.DEFAULT_VALIDATION_MESSAGES = DEFAULT_VALIDATION_MESSAGES;
32
- exports.formatZodErrors = formatZodErrors;
@@ -1,20 +0,0 @@
1
- import { DEFAULT_VALIDATION_MESSAGES } from './chunk-HRQEZUAA.mjs';
2
- import { z } from 'zod';
3
-
4
- function createLocationValidator(attr, messages = DEFAULT_VALIDATION_MESSAGES) {
5
- return z.object(
6
- {
7
- address: z.string().optional(),
8
- address2: z.string().optional(),
9
- city: z.string().optional(),
10
- state: z.string().optional(),
11
- postalCode: z.string().optional(),
12
- country: z.string().length(3).optional(),
13
- latitude: z.number().min(-90).max(90).optional(),
14
- longitude: z.number().min(-180).max(180).optional()
15
- },
16
- { message: messages.invalidLocation(attr) }
17
- );
18
- }
19
-
20
- export { createLocationValidator };
@@ -1,31 +0,0 @@
1
- import { DEFAULT_VALIDATION_MESSAGES } from './chunk-HRQEZUAA.mjs';
2
- import { z } from 'zod';
3
-
4
- function createSelectValidator(attr, messages = DEFAULT_VALIDATION_MESSAGES) {
5
- const validValues = attr.options.map((opt) => opt.value);
6
- if (validValues.length === 0) return z.never();
7
- const validLabels = attr.options.map((opt) => opt.label);
8
- return z.enum(validValues, {
9
- message: messages.invalidOption(attr, validLabels)
10
- });
11
- }
12
- function createMultiselectValidator(attr, messages = DEFAULT_VALIDATION_MESSAGES) {
13
- const validValues = attr.options.map((opt) => opt.value);
14
- if (validValues.length === 0) return z.never();
15
- const validLabels = attr.options.map((opt) => opt.label);
16
- return z.array(
17
- z.enum(validValues, {
18
- message: messages.invalidOption(attr, validLabels)
19
- })
20
- );
21
- }
22
- function createStatusValidator(attr, messages = DEFAULT_VALIDATION_MESSAGES) {
23
- const validValues = attr.options.map((opt) => opt.value);
24
- if (validValues.length === 0) return z.never();
25
- const validLabels = attr.options.map((opt) => opt.label);
26
- return z.enum(validValues, {
27
- message: messages.invalidOption(attr, validLabels)
28
- });
29
- }
30
-
31
- export { createMultiselectValidator, createSelectValidator, createStatusValidator };
@@ -1,89 +0,0 @@
1
- 'use strict';
2
-
3
- var chunkYKWSHBT5_js = require('./chunk-YKWSHBT5.js');
4
- var zod = require('zod');
5
-
6
- // src/lib/text-format.ts
7
- var TEXT_FORMAT_PATTERNS = {
8
- email: "^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-zA-Z]{2,}$",
9
- url: "^https?:\\/\\/[\\w\\-]+(\\.[\\w\\-]+)+[/#?]?.*$",
10
- slug: "^[a-z0-9]+(?:-[a-z0-9]+)*$"
11
- };
12
- function resolveTextPattern(attr) {
13
- if (attr.pattern) return attr.pattern;
14
- return attr.format ? TEXT_FORMAT_PATTERNS[attr.format] : void 0;
15
- }
16
-
17
- // src/lib/lru-cache.ts
18
- var LRUCache = class {
19
- constructor(capacity) {
20
- if (!Number.isInteger(capacity) || capacity <= 0) {
21
- throw new Error("LRU cache capacity must be greater than 0");
22
- }
23
- this.capacity = capacity;
24
- this.cache = /* @__PURE__ */ new Map();
25
- }
26
- get(key) {
27
- if (!this.cache.has(key)) {
28
- return void 0;
29
- }
30
- const value = this.cache.get(key);
31
- this.cache.delete(key);
32
- this.cache.set(key, value);
33
- return value;
34
- }
35
- set(key, value) {
36
- if (this.cache.has(key)) {
37
- this.cache.delete(key);
38
- } else if (this.cache.size >= this.capacity) {
39
- const first = this.cache.keys().next();
40
- if (!first.done) {
41
- this.cache.delete(first.value);
42
- }
43
- }
44
- this.cache.set(key, value);
45
- }
46
- has(key) {
47
- return this.cache.has(key);
48
- }
49
- clear() {
50
- this.cache.clear();
51
- }
52
- get size() {
53
- return this.cache.size;
54
- }
55
- };
56
-
57
- // src/validation/core/regex-cache.ts
58
- function createRegexCache(capacity = 100) {
59
- return new LRUCache(capacity);
60
- }
61
- function getCachedRegex(cache, pattern) {
62
- let cached = cache.get(pattern);
63
- if (!cached) {
64
- cached = new RegExp(pattern);
65
- cache.set(pattern, cached);
66
- }
67
- return cached;
68
- }
69
-
70
- // src/validation/primitives/text.ts
71
- var textRegexCache = createRegexCache();
72
- function createTextValidator(attr, messages = chunkYKWSHBT5_js.DEFAULT_VALIDATION_MESSAGES) {
73
- let schema = zod.z.string();
74
- if (attr.minLength !== void 0) {
75
- schema = schema.min(attr.minLength, messages.minLength(attr, attr.minLength));
76
- }
77
- if (attr.maxLength !== void 0) {
78
- schema = schema.max(attr.maxLength, messages.maxLength(attr, attr.maxLength));
79
- }
80
- const pattern = resolveTextPattern(attr);
81
- if (pattern) {
82
- schema = schema.regex(getCachedRegex(textRegexCache, pattern), messages.invalidPattern(attr));
83
- }
84
- return schema;
85
- }
86
-
87
- exports.TEXT_FORMAT_PATTERNS = TEXT_FORMAT_PATTERNS;
88
- exports.createTextValidator = createTextValidator;
89
- exports.resolveTextPattern = resolveTextPattern;