@almadar/std 1.0.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 (78) hide show
  1. package/LICENSE +72 -0
  2. package/dist/behaviors/action-affinity.d.ts +88 -0
  3. package/dist/behaviors/action-affinity.js +290 -0
  4. package/dist/behaviors/action-affinity.js.map +1 -0
  5. package/dist/behaviors/async.d.ts +20 -0
  6. package/dist/behaviors/async.js +542 -0
  7. package/dist/behaviors/async.js.map +1 -0
  8. package/dist/behaviors/data-management.d.ts +40 -0
  9. package/dist/behaviors/data-management.js +495 -0
  10. package/dist/behaviors/data-management.js.map +1 -0
  11. package/dist/behaviors/feedback.d.ts +18 -0
  12. package/dist/behaviors/feedback.js +307 -0
  13. package/dist/behaviors/feedback.js.map +1 -0
  14. package/dist/behaviors/game-core.d.ts +40 -0
  15. package/dist/behaviors/game-core.js +443 -0
  16. package/dist/behaviors/game-core.js.map +1 -0
  17. package/dist/behaviors/game-entity.d.ts +39 -0
  18. package/dist/behaviors/game-entity.js +643 -0
  19. package/dist/behaviors/game-entity.js.map +1 -0
  20. package/dist/behaviors/game-ui.d.ts +29 -0
  21. package/dist/behaviors/game-ui.js +493 -0
  22. package/dist/behaviors/game-ui.js.map +1 -0
  23. package/dist/behaviors/index.d.ts +11 -0
  24. package/dist/behaviors/index.js +4539 -0
  25. package/dist/behaviors/index.js.map +1 -0
  26. package/dist/behaviors/registry.d.ts +103 -0
  27. package/dist/behaviors/registry.js +4166 -0
  28. package/dist/behaviors/registry.js.map +1 -0
  29. package/dist/behaviors/types.d.ts +179 -0
  30. package/dist/behaviors/types.js +111 -0
  31. package/dist/behaviors/types.js.map +1 -0
  32. package/dist/behaviors/ui-interaction.d.ts +36 -0
  33. package/dist/behaviors/ui-interaction.js +1104 -0
  34. package/dist/behaviors/ui-interaction.js.map +1 -0
  35. package/dist/index.d.ts +195 -0
  36. package/dist/index.js +8209 -0
  37. package/dist/index.js.map +1 -0
  38. package/dist/modules/array.d.ts +28 -0
  39. package/dist/modules/array.js +556 -0
  40. package/dist/modules/array.js.map +1 -0
  41. package/dist/modules/async.d.ts +22 -0
  42. package/dist/modules/async.js +112 -0
  43. package/dist/modules/async.js.map +1 -0
  44. package/dist/modules/format.d.ts +21 -0
  45. package/dist/modules/format.js +129 -0
  46. package/dist/modules/format.js.map +1 -0
  47. package/dist/modules/index.d.ts +12 -0
  48. package/dist/modules/index.js +3131 -0
  49. package/dist/modules/index.js.map +1 -0
  50. package/dist/modules/math.d.ts +22 -0
  51. package/dist/modules/math.js +215 -0
  52. package/dist/modules/math.js.map +1 -0
  53. package/dist/modules/nn.d.ts +23 -0
  54. package/dist/modules/nn.js +189 -0
  55. package/dist/modules/nn.js.map +1 -0
  56. package/dist/modules/object.d.ts +22 -0
  57. package/dist/modules/object.js +257 -0
  58. package/dist/modules/object.js.map +1 -0
  59. package/dist/modules/str.d.ts +21 -0
  60. package/dist/modules/str.js +344 -0
  61. package/dist/modules/str.js.map +1 -0
  62. package/dist/modules/tensor.d.ts +23 -0
  63. package/dist/modules/tensor.js +427 -0
  64. package/dist/modules/tensor.js.map +1 -0
  65. package/dist/modules/time.d.ts +24 -0
  66. package/dist/modules/time.js +323 -0
  67. package/dist/modules/time.js.map +1 -0
  68. package/dist/modules/train.d.ts +23 -0
  69. package/dist/modules/train.js +308 -0
  70. package/dist/modules/train.js.map +1 -0
  71. package/dist/modules/validate.d.ts +23 -0
  72. package/dist/modules/validate.js +301 -0
  73. package/dist/modules/validate.js.map +1 -0
  74. package/dist/registry.d.ts +140 -0
  75. package/dist/registry.js +3240 -0
  76. package/dist/registry.js.map +1 -0
  77. package/dist/types-I95R8_FN.d.ts +91 -0
  78. package/package.json +59 -0
@@ -0,0 +1,301 @@
1
+ // modules/validate.ts
2
+ var VALIDATE_OPERATORS = {
3
+ "validate/required": {
4
+ module: "validate",
5
+ category: "std-validate",
6
+ minArity: 1,
7
+ maxArity: 1,
8
+ description: "Check if value is not null, undefined, or empty string",
9
+ hasSideEffects: false,
10
+ returnType: "boolean",
11
+ params: [{ name: "value", type: "any", description: "Value to check" }],
12
+ example: '["validate/required", "@payload.name"]'
13
+ },
14
+ "validate/string": {
15
+ module: "validate",
16
+ category: "std-validate",
17
+ minArity: 1,
18
+ maxArity: 1,
19
+ description: "Check if value is a string",
20
+ hasSideEffects: false,
21
+ returnType: "boolean",
22
+ params: [{ name: "value", type: "any", description: "Value to check" }],
23
+ example: '["validate/string", "@payload.name"]'
24
+ },
25
+ "validate/number": {
26
+ module: "validate",
27
+ category: "std-validate",
28
+ minArity: 1,
29
+ maxArity: 1,
30
+ description: "Check if value is a number",
31
+ hasSideEffects: false,
32
+ returnType: "boolean",
33
+ params: [{ name: "value", type: "any", description: "Value to check" }],
34
+ example: '["validate/number", "@payload.age"]'
35
+ },
36
+ "validate/boolean": {
37
+ module: "validate",
38
+ category: "std-validate",
39
+ minArity: 1,
40
+ maxArity: 1,
41
+ description: "Check if value is a boolean",
42
+ hasSideEffects: false,
43
+ returnType: "boolean",
44
+ params: [{ name: "value", type: "any", description: "Value to check" }],
45
+ example: '["validate/boolean", "@payload.active"]'
46
+ },
47
+ "validate/array": {
48
+ module: "validate",
49
+ category: "std-validate",
50
+ minArity: 1,
51
+ maxArity: 1,
52
+ description: "Check if value is an array",
53
+ hasSideEffects: false,
54
+ returnType: "boolean",
55
+ params: [{ name: "value", type: "any", description: "Value to check" }],
56
+ example: '["validate/array", "@payload.items"]'
57
+ },
58
+ "validate/object": {
59
+ module: "validate",
60
+ category: "std-validate",
61
+ minArity: 1,
62
+ maxArity: 1,
63
+ description: "Check if value is an object",
64
+ hasSideEffects: false,
65
+ returnType: "boolean",
66
+ params: [{ name: "value", type: "any", description: "Value to check" }],
67
+ example: '["validate/object", "@payload.data"]'
68
+ },
69
+ "validate/email": {
70
+ module: "validate",
71
+ category: "std-validate",
72
+ minArity: 1,
73
+ maxArity: 1,
74
+ description: "Check if value is a valid email format",
75
+ hasSideEffects: false,
76
+ returnType: "boolean",
77
+ params: [{ name: "value", type: "string", description: "Email to validate" }],
78
+ example: '["validate/email", "@payload.email"]'
79
+ },
80
+ "validate/url": {
81
+ module: "validate",
82
+ category: "std-validate",
83
+ minArity: 1,
84
+ maxArity: 1,
85
+ description: "Check if value is a valid URL format",
86
+ hasSideEffects: false,
87
+ returnType: "boolean",
88
+ params: [{ name: "value", type: "string", description: "URL to validate" }],
89
+ example: '["validate/url", "@payload.website"]'
90
+ },
91
+ "validate/uuid": {
92
+ module: "validate",
93
+ category: "std-validate",
94
+ minArity: 1,
95
+ maxArity: 1,
96
+ description: "Check if value is a valid UUID",
97
+ hasSideEffects: false,
98
+ returnType: "boolean",
99
+ params: [{ name: "value", type: "string", description: "UUID to validate" }],
100
+ example: '["validate/uuid", "@payload.id"]'
101
+ },
102
+ "validate/phone": {
103
+ module: "validate",
104
+ category: "std-validate",
105
+ minArity: 1,
106
+ maxArity: 1,
107
+ description: "Check if value is a valid phone number",
108
+ hasSideEffects: false,
109
+ returnType: "boolean",
110
+ params: [{ name: "value", type: "string", description: "Phone number to validate" }],
111
+ example: '["validate/phone", "@payload.phone"]'
112
+ },
113
+ "validate/creditCard": {
114
+ module: "validate",
115
+ category: "std-validate",
116
+ minArity: 1,
117
+ maxArity: 1,
118
+ description: "Check if value is a valid credit card number (Luhn algorithm)",
119
+ hasSideEffects: false,
120
+ returnType: "boolean",
121
+ params: [{ name: "value", type: "string", description: "Card number to validate" }],
122
+ example: '["validate/creditCard", "@payload.cardNumber"]'
123
+ },
124
+ "validate/date": {
125
+ module: "validate",
126
+ category: "std-validate",
127
+ minArity: 1,
128
+ maxArity: 1,
129
+ description: "Check if value is a valid date",
130
+ hasSideEffects: false,
131
+ returnType: "boolean",
132
+ params: [{ name: "value", type: "any", description: "Value to check" }],
133
+ example: '["validate/date", "@payload.birthDate"]'
134
+ },
135
+ "validate/minLength": {
136
+ module: "validate",
137
+ category: "std-validate",
138
+ minArity: 2,
139
+ maxArity: 2,
140
+ description: "Check if string/array has minimum length",
141
+ hasSideEffects: false,
142
+ returnType: "boolean",
143
+ params: [
144
+ { name: "value", type: "string | array", description: "Value to check" },
145
+ { name: "min", type: "number", description: "Minimum length" }
146
+ ],
147
+ example: '["validate/minLength", "@payload.password", 8]'
148
+ },
149
+ "validate/maxLength": {
150
+ module: "validate",
151
+ category: "std-validate",
152
+ minArity: 2,
153
+ maxArity: 2,
154
+ description: "Check if string/array has maximum length",
155
+ hasSideEffects: false,
156
+ returnType: "boolean",
157
+ params: [
158
+ { name: "value", type: "string | array", description: "Value to check" },
159
+ { name: "max", type: "number", description: "Maximum length" }
160
+ ],
161
+ example: '["validate/maxLength", "@payload.name", 50]'
162
+ },
163
+ "validate/length": {
164
+ module: "validate",
165
+ category: "std-validate",
166
+ minArity: 2,
167
+ maxArity: 2,
168
+ description: "Check if string/array has exact length",
169
+ hasSideEffects: false,
170
+ returnType: "boolean",
171
+ params: [
172
+ { name: "value", type: "string | array", description: "Value to check" },
173
+ { name: "exact", type: "number", description: "Required length" }
174
+ ],
175
+ example: '["validate/length", "@payload.code", 6]'
176
+ },
177
+ "validate/min": {
178
+ module: "validate",
179
+ category: "std-validate",
180
+ minArity: 2,
181
+ maxArity: 2,
182
+ description: "Check if number is >= minimum",
183
+ hasSideEffects: false,
184
+ returnType: "boolean",
185
+ params: [
186
+ { name: "value", type: "number", description: "Number to check" },
187
+ { name: "min", type: "number", description: "Minimum value" }
188
+ ],
189
+ example: '["validate/min", "@payload.age", 18]'
190
+ },
191
+ "validate/max": {
192
+ module: "validate",
193
+ category: "std-validate",
194
+ minArity: 2,
195
+ maxArity: 2,
196
+ description: "Check if number is <= maximum",
197
+ hasSideEffects: false,
198
+ returnType: "boolean",
199
+ params: [
200
+ { name: "value", type: "number", description: "Number to check" },
201
+ { name: "max", type: "number", description: "Maximum value" }
202
+ ],
203
+ example: '["validate/max", "@payload.quantity", 100]'
204
+ },
205
+ "validate/range": {
206
+ module: "validate",
207
+ category: "std-validate",
208
+ minArity: 3,
209
+ maxArity: 3,
210
+ description: "Check if number is within range [min, max]",
211
+ hasSideEffects: false,
212
+ returnType: "boolean",
213
+ params: [
214
+ { name: "value", type: "number", description: "Number to check" },
215
+ { name: "min", type: "number", description: "Minimum value" },
216
+ { name: "max", type: "number", description: "Maximum value" }
217
+ ],
218
+ example: '["validate/range", "@payload.rating", 1, 5]'
219
+ },
220
+ "validate/pattern": {
221
+ module: "validate",
222
+ category: "std-validate",
223
+ minArity: 2,
224
+ maxArity: 2,
225
+ description: "Check if string matches regex pattern",
226
+ hasSideEffects: false,
227
+ returnType: "boolean",
228
+ params: [
229
+ { name: "value", type: "string", description: "String to check" },
230
+ { name: "regex", type: "string", description: "Regex pattern" }
231
+ ],
232
+ example: '["validate/pattern", "@payload.code", "^[A-Z]{3}[0-9]{3}$"]'
233
+ },
234
+ "validate/oneOf": {
235
+ module: "validate",
236
+ category: "std-validate",
237
+ minArity: 2,
238
+ maxArity: 2,
239
+ description: "Check if value is in list of allowed values",
240
+ hasSideEffects: false,
241
+ returnType: "boolean",
242
+ params: [
243
+ { name: "value", type: "any", description: "Value to check" },
244
+ { name: "options", type: "array", description: "Allowed values" }
245
+ ],
246
+ example: '["validate/oneOf", "@payload.role", ["admin", "user", "guest"]]'
247
+ },
248
+ "validate/noneOf": {
249
+ module: "validate",
250
+ category: "std-validate",
251
+ minArity: 2,
252
+ maxArity: 2,
253
+ description: "Check if value is not in list of disallowed values",
254
+ hasSideEffects: false,
255
+ returnType: "boolean",
256
+ params: [
257
+ { name: "value", type: "any", description: "Value to check" },
258
+ { name: "options", type: "array", description: "Disallowed values" }
259
+ ],
260
+ example: '["validate/noneOf", "@payload.username", ["admin", "root", "system"]]'
261
+ },
262
+ "validate/equals": {
263
+ module: "validate",
264
+ category: "std-validate",
265
+ minArity: 2,
266
+ maxArity: 2,
267
+ description: "Deep equality check",
268
+ hasSideEffects: false,
269
+ returnType: "boolean",
270
+ params: [
271
+ { name: "a", type: "any", description: "First value" },
272
+ { name: "b", type: "any", description: "Second value" }
273
+ ],
274
+ example: '["validate/equals", "@payload.password", "@payload.confirmPassword"]'
275
+ },
276
+ "validate/check": {
277
+ module: "validate",
278
+ category: "std-validate",
279
+ minArity: 2,
280
+ maxArity: 2,
281
+ description: "Run multiple validation rules, return { valid, errors }",
282
+ hasSideEffects: false,
283
+ returnType: "any",
284
+ params: [
285
+ { name: "value", type: "any", description: "Value or object to validate" },
286
+ { name: "rules", type: "object", description: "Validation rules by field" }
287
+ ],
288
+ example: `["validate/check", "@payload.data", {
289
+ "name": [["required"], ["minLength", 2], ["maxLength", 50]],
290
+ "email": [["required"], ["email"]],
291
+ "age": [["number"], ["min", 18]]
292
+ }]`
293
+ }
294
+ };
295
+ function getValidateOperators() {
296
+ return Object.keys(VALIDATE_OPERATORS);
297
+ }
298
+
299
+ export { VALIDATE_OPERATORS, getValidateOperators };
300
+ //# sourceMappingURL=validate.js.map
301
+ //# sourceMappingURL=validate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../modules/validate.ts"],"names":[],"mappings":"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","file":"validate.js","sourcesContent":["/**\n * Validate Module - Input Validation\n *\n * Provides validation functions for form inputs and data.\n * Returns true/false for single validations.\n * validate/check returns { valid: boolean, errors: [...] } for multiple rules.\n *\n * @packageDocumentation\n */\n\nimport type { StdOperatorMeta } from '../types.js';\n\n/**\n * Validate module operators.\n * All operators return boolean or validation result objects and have no side effects.\n */\nexport const VALIDATE_OPERATORS: Record<string, StdOperatorMeta> = {\n 'validate/required': {\n module: 'validate',\n category: 'std-validate',\n minArity: 1,\n maxArity: 1,\n description: 'Check if value is not null, undefined, or empty string',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [{ name: 'value', type: 'any', description: 'Value to check' }],\n example: '[\"validate/required\", \"@payload.name\"]',\n },\n 'validate/string': {\n module: 'validate',\n category: 'std-validate',\n minArity: 1,\n maxArity: 1,\n description: 'Check if value is a string',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [{ name: 'value', type: 'any', description: 'Value to check' }],\n example: '[\"validate/string\", \"@payload.name\"]',\n },\n 'validate/number': {\n module: 'validate',\n category: 'std-validate',\n minArity: 1,\n maxArity: 1,\n description: 'Check if value is a number',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [{ name: 'value', type: 'any', description: 'Value to check' }],\n example: '[\"validate/number\", \"@payload.age\"]',\n },\n 'validate/boolean': {\n module: 'validate',\n category: 'std-validate',\n minArity: 1,\n maxArity: 1,\n description: 'Check if value is a boolean',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [{ name: 'value', type: 'any', description: 'Value to check' }],\n example: '[\"validate/boolean\", \"@payload.active\"]',\n },\n 'validate/array': {\n module: 'validate',\n category: 'std-validate',\n minArity: 1,\n maxArity: 1,\n description: 'Check if value is an array',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [{ name: 'value', type: 'any', description: 'Value to check' }],\n example: '[\"validate/array\", \"@payload.items\"]',\n },\n 'validate/object': {\n module: 'validate',\n category: 'std-validate',\n minArity: 1,\n maxArity: 1,\n description: 'Check if value is an object',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [{ name: 'value', type: 'any', description: 'Value to check' }],\n example: '[\"validate/object\", \"@payload.data\"]',\n },\n 'validate/email': {\n module: 'validate',\n category: 'std-validate',\n minArity: 1,\n maxArity: 1,\n description: 'Check if value is a valid email format',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [{ name: 'value', type: 'string', description: 'Email to validate' }],\n example: '[\"validate/email\", \"@payload.email\"]',\n },\n 'validate/url': {\n module: 'validate',\n category: 'std-validate',\n minArity: 1,\n maxArity: 1,\n description: 'Check if value is a valid URL format',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [{ name: 'value', type: 'string', description: 'URL to validate' }],\n example: '[\"validate/url\", \"@payload.website\"]',\n },\n 'validate/uuid': {\n module: 'validate',\n category: 'std-validate',\n minArity: 1,\n maxArity: 1,\n description: 'Check if value is a valid UUID',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [{ name: 'value', type: 'string', description: 'UUID to validate' }],\n example: '[\"validate/uuid\", \"@payload.id\"]',\n },\n 'validate/phone': {\n module: 'validate',\n category: 'std-validate',\n minArity: 1,\n maxArity: 1,\n description: 'Check if value is a valid phone number',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [{ name: 'value', type: 'string', description: 'Phone number to validate' }],\n example: '[\"validate/phone\", \"@payload.phone\"]',\n },\n 'validate/creditCard': {\n module: 'validate',\n category: 'std-validate',\n minArity: 1,\n maxArity: 1,\n description: 'Check if value is a valid credit card number (Luhn algorithm)',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [{ name: 'value', type: 'string', description: 'Card number to validate' }],\n example: '[\"validate/creditCard\", \"@payload.cardNumber\"]',\n },\n 'validate/date': {\n module: 'validate',\n category: 'std-validate',\n minArity: 1,\n maxArity: 1,\n description: 'Check if value is a valid date',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [{ name: 'value', type: 'any', description: 'Value to check' }],\n example: '[\"validate/date\", \"@payload.birthDate\"]',\n },\n 'validate/minLength': {\n module: 'validate',\n category: 'std-validate',\n minArity: 2,\n maxArity: 2,\n description: 'Check if string/array has minimum length',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [\n { name: 'value', type: 'string | array', description: 'Value to check' },\n { name: 'min', type: 'number', description: 'Minimum length' },\n ],\n example: '[\"validate/minLength\", \"@payload.password\", 8]',\n },\n 'validate/maxLength': {\n module: 'validate',\n category: 'std-validate',\n minArity: 2,\n maxArity: 2,\n description: 'Check if string/array has maximum length',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [\n { name: 'value', type: 'string | array', description: 'Value to check' },\n { name: 'max', type: 'number', description: 'Maximum length' },\n ],\n example: '[\"validate/maxLength\", \"@payload.name\", 50]',\n },\n 'validate/length': {\n module: 'validate',\n category: 'std-validate',\n minArity: 2,\n maxArity: 2,\n description: 'Check if string/array has exact length',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [\n { name: 'value', type: 'string | array', description: 'Value to check' },\n { name: 'exact', type: 'number', description: 'Required length' },\n ],\n example: '[\"validate/length\", \"@payload.code\", 6]',\n },\n 'validate/min': {\n module: 'validate',\n category: 'std-validate',\n minArity: 2,\n maxArity: 2,\n description: 'Check if number is >= minimum',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [\n { name: 'value', type: 'number', description: 'Number to check' },\n { name: 'min', type: 'number', description: 'Minimum value' },\n ],\n example: '[\"validate/min\", \"@payload.age\", 18]',\n },\n 'validate/max': {\n module: 'validate',\n category: 'std-validate',\n minArity: 2,\n maxArity: 2,\n description: 'Check if number is <= maximum',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [\n { name: 'value', type: 'number', description: 'Number to check' },\n { name: 'max', type: 'number', description: 'Maximum value' },\n ],\n example: '[\"validate/max\", \"@payload.quantity\", 100]',\n },\n 'validate/range': {\n module: 'validate',\n category: 'std-validate',\n minArity: 3,\n maxArity: 3,\n description: 'Check if number is within range [min, max]',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [\n { name: 'value', type: 'number', description: 'Number to check' },\n { name: 'min', type: 'number', description: 'Minimum value' },\n { name: 'max', type: 'number', description: 'Maximum value' },\n ],\n example: '[\"validate/range\", \"@payload.rating\", 1, 5]',\n },\n 'validate/pattern': {\n module: 'validate',\n category: 'std-validate',\n minArity: 2,\n maxArity: 2,\n description: 'Check if string matches regex pattern',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [\n { name: 'value', type: 'string', description: 'String to check' },\n { name: 'regex', type: 'string', description: 'Regex pattern' },\n ],\n example: '[\"validate/pattern\", \"@payload.code\", \"^[A-Z]{3}[0-9]{3}$\"]',\n },\n 'validate/oneOf': {\n module: 'validate',\n category: 'std-validate',\n minArity: 2,\n maxArity: 2,\n description: 'Check if value is in list of allowed values',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [\n { name: 'value', type: 'any', description: 'Value to check' },\n { name: 'options', type: 'array', description: 'Allowed values' },\n ],\n example: '[\"validate/oneOf\", \"@payload.role\", [\"admin\", \"user\", \"guest\"]]',\n },\n 'validate/noneOf': {\n module: 'validate',\n category: 'std-validate',\n minArity: 2,\n maxArity: 2,\n description: 'Check if value is not in list of disallowed values',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [\n { name: 'value', type: 'any', description: 'Value to check' },\n { name: 'options', type: 'array', description: 'Disallowed values' },\n ],\n example: '[\"validate/noneOf\", \"@payload.username\", [\"admin\", \"root\", \"system\"]]',\n },\n 'validate/equals': {\n module: 'validate',\n category: 'std-validate',\n minArity: 2,\n maxArity: 2,\n description: 'Deep equality check',\n hasSideEffects: false,\n returnType: 'boolean',\n params: [\n { name: 'a', type: 'any', description: 'First value' },\n { name: 'b', type: 'any', description: 'Second value' },\n ],\n example: '[\"validate/equals\", \"@payload.password\", \"@payload.confirmPassword\"]',\n },\n 'validate/check': {\n module: 'validate',\n category: 'std-validate',\n minArity: 2,\n maxArity: 2,\n description: 'Run multiple validation rules, return { valid, errors }',\n hasSideEffects: false,\n returnType: 'any',\n params: [\n { name: 'value', type: 'any', description: 'Value or object to validate' },\n { name: 'rules', type: 'object', description: 'Validation rules by field' },\n ],\n example: `[\"validate/check\", \"@payload.data\", {\n \"name\": [[\"required\"], [\"minLength\", 2], [\"maxLength\", 50]],\n \"email\": [[\"required\"], [\"email\"]],\n \"age\": [[\"number\"], [\"min\", 18]]\n}]`,\n },\n};\n\n/**\n * Get all validate operator names.\n */\nexport function getValidateOperators(): string[] {\n return Object.keys(VALIDATE_OPERATORS);\n}\n"]}
@@ -0,0 +1,140 @@
1
+ import { OperatorMeta } from '@almadar/core/types';
2
+ import { a as StdOperatorMeta, S as StdModule } from './types-I95R8_FN.js';
3
+
4
+ /**
5
+ * Standard Library Registry
6
+ *
7
+ * Combined registry of all standard library operators.
8
+ * Provides lookup and validation functions for std/* operators.
9
+ *
10
+ * @packageDocumentation
11
+ */
12
+
13
+ /**
14
+ * Combined registry of all standard library operators.
15
+ */
16
+ declare const STD_OPERATORS: Record<string, StdOperatorMeta>;
17
+ /**
18
+ * Module-specific operator registries.
19
+ */
20
+ declare const STD_OPERATORS_BY_MODULE: Record<StdModule, Record<string, StdOperatorMeta>>;
21
+ /**
22
+ * Get std operator metadata by name.
23
+ *
24
+ * @param operator - Operator name (e.g., 'math/clamp')
25
+ * @returns Operator metadata or undefined if not found
26
+ */
27
+ declare function getStdOperatorMeta(operator: string): StdOperatorMeta | undefined;
28
+ /**
29
+ * Check if an operator is a known std library operator.
30
+ *
31
+ * @param operator - Operator name
32
+ * @returns true if operator exists in std library
33
+ */
34
+ declare function isKnownStdOperator(operator: string): boolean;
35
+ /**
36
+ * Get all operators for a specific module.
37
+ *
38
+ * @param module - Module name
39
+ * @returns Record of operators in that module
40
+ */
41
+ declare function getModuleOperators(module: StdModule): Record<string, StdOperatorMeta>;
42
+ /**
43
+ * Get all std operator names.
44
+ *
45
+ * @returns Array of all std operator names
46
+ */
47
+ declare function getAllStdOperators(): string[];
48
+ /**
49
+ * Get all std operator names for a specific module.
50
+ *
51
+ * @param module - Module name
52
+ * @returns Array of operator names in that module
53
+ */
54
+ declare function getStdOperatorsByModule(module: StdModule): string[];
55
+ /**
56
+ * Get all std operators that accept lambda expressions.
57
+ *
58
+ * @returns Array of operator names that accept lambdas
59
+ */
60
+ declare function getLambdaOperators(): string[];
61
+ /**
62
+ * Get all std operators with side effects.
63
+ *
64
+ * @returns Array of operator names with side effects
65
+ */
66
+ declare function getStdEffectOperators(): string[];
67
+ /**
68
+ * Get all pure std operators (no side effects).
69
+ *
70
+ * @returns Array of operator names without side effects
71
+ */
72
+ declare function getStdPureOperators(): string[];
73
+ /**
74
+ * Validate std operator arity.
75
+ *
76
+ * @param operator - Operator name
77
+ * @param argCount - Number of arguments provided
78
+ * @returns Error message if invalid, null if valid
79
+ */
80
+ declare function validateStdOperatorArity(operator: string, argCount: number): string | null;
81
+ /**
82
+ * Check if a std operator is valid in guard context (no side effects).
83
+ *
84
+ * @param operator - Operator name
85
+ * @returns true if operator can be used in guards
86
+ */
87
+ declare function isStdGuardOperator(operator: string): boolean;
88
+ /**
89
+ * Check if a std operator has side effects.
90
+ *
91
+ * @param operator - Operator name
92
+ * @returns true if operator has side effects
93
+ */
94
+ declare function isStdEffectOperator(operator: string): boolean;
95
+ /**
96
+ * Get operator metadata, checking both core and std operators.
97
+ * This function integrates with the core operator system.
98
+ *
99
+ * @param operator - Operator name
100
+ * @param coreOperators - Core operator registry (OPERATORS from operators.ts)
101
+ * @returns Operator metadata or undefined
102
+ */
103
+ declare function getOperatorMetaExtended(operator: string, coreOperators: Record<string, OperatorMeta>): OperatorMeta | StdOperatorMeta | undefined;
104
+ /**
105
+ * Check if an operator is known (core or std).
106
+ *
107
+ * @param operator - Operator name
108
+ * @param coreOperators - Core operator registry
109
+ * @returns true if operator exists
110
+ */
111
+ declare function isKnownOperatorExtended(operator: string, coreOperators: Record<string, OperatorMeta>): boolean;
112
+ /**
113
+ * Validate operator arity (core or std).
114
+ *
115
+ * @param operator - Operator name
116
+ * @param argCount - Number of arguments
117
+ * @param coreOperators - Core operator registry
118
+ * @returns Error message or null
119
+ */
120
+ declare function validateOperatorArityExtended(operator: string, argCount: number, coreOperators: Record<string, OperatorMeta>): string | null;
121
+ /**
122
+ * Check if an operator has side effects (core or std).
123
+ *
124
+ * @param operator - Operator name
125
+ * @param coreOperators - Core operator registry
126
+ * @returns true if operator has side effects
127
+ */
128
+ declare function isEffectOperatorExtended(operator: string, coreOperators: Record<string, OperatorMeta>): boolean;
129
+ /**
130
+ * Get statistics about the standard library.
131
+ */
132
+ declare function getStdLibStats(): {
133
+ totalOperators: number;
134
+ byModule: Record<StdModule, number>;
135
+ pureOperators: number;
136
+ effectOperators: number;
137
+ lambdaOperators: number;
138
+ };
139
+
140
+ export { STD_OPERATORS, STD_OPERATORS_BY_MODULE, getAllStdOperators, getLambdaOperators, getModuleOperators, getOperatorMetaExtended, getStdEffectOperators, getStdLibStats, getStdOperatorMeta, getStdOperatorsByModule, getStdPureOperators, isEffectOperatorExtended, isKnownOperatorExtended, isKnownStdOperator, isStdEffectOperator, isStdGuardOperator, validateOperatorArityExtended, validateStdOperatorArity };