bytekit 0.1.12

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 (200) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +2241 -0
  3. package/bin/sutils.js +9 -0
  4. package/dist/api-client.d.ts +2 -0
  5. package/dist/api-client.d.ts.map +1 -0
  6. package/dist/api-client.js +2 -0
  7. package/dist/api-client.js.map +1 -0
  8. package/dist/cli/index.d.ts +2 -0
  9. package/dist/cli/index.d.ts.map +1 -0
  10. package/dist/cli/index.js +401 -0
  11. package/dist/cli/index.js.map +1 -0
  12. package/dist/cli/type-generator.d.ts +12 -0
  13. package/dist/cli/type-generator.d.ts.map +1 -0
  14. package/dist/cli/type-generator.js +152 -0
  15. package/dist/cli/type-generator.js.map +1 -0
  16. package/dist/date-utils.d.ts +2 -0
  17. package/dist/date-utils.d.ts.map +1 -0
  18. package/dist/date-utils.js +2 -0
  19. package/dist/date-utils.js.map +1 -0
  20. package/dist/debug.d.ts +2 -0
  21. package/dist/debug.d.ts.map +1 -0
  22. package/dist/debug.js +2 -0
  23. package/dist/debug.js.map +1 -0
  24. package/dist/env-manager.d.ts +2 -0
  25. package/dist/env-manager.d.ts.map +1 -0
  26. package/dist/env-manager.js +2 -0
  27. package/dist/env-manager.js.map +1 -0
  28. package/dist/file-upload.d.ts +2 -0
  29. package/dist/file-upload.d.ts.map +1 -0
  30. package/dist/file-upload.js +2 -0
  31. package/dist/file-upload.js.map +1 -0
  32. package/dist/index.d.ts +2 -0
  33. package/dist/index.d.ts.map +1 -0
  34. package/dist/index.js +2 -0
  35. package/dist/index.js.map +1 -0
  36. package/dist/logger.d.ts +2 -0
  37. package/dist/logger.d.ts.map +1 -0
  38. package/dist/logger.js +2 -0
  39. package/dist/logger.js.map +1 -0
  40. package/dist/profiler.d.ts +2 -0
  41. package/dist/profiler.d.ts.map +1 -0
  42. package/dist/profiler.js +2 -0
  43. package/dist/profiler.js.map +1 -0
  44. package/dist/response-validator.d.ts +2 -0
  45. package/dist/response-validator.d.ts.map +1 -0
  46. package/dist/response-validator.js +2 -0
  47. package/dist/response-validator.js.map +1 -0
  48. package/dist/retry-policy.d.ts +2 -0
  49. package/dist/retry-policy.d.ts.map +1 -0
  50. package/dist/retry-policy.js +2 -0
  51. package/dist/retry-policy.js.map +1 -0
  52. package/dist/storage-utils.d.ts +2 -0
  53. package/dist/storage-utils.d.ts.map +1 -0
  54. package/dist/storage-utils.js +2 -0
  55. package/dist/storage-utils.js.map +1 -0
  56. package/dist/streaming.d.ts +2 -0
  57. package/dist/streaming.d.ts.map +1 -0
  58. package/dist/streaming.js +2 -0
  59. package/dist/streaming.js.map +1 -0
  60. package/dist/string-utils.d.ts +2 -0
  61. package/dist/string-utils.d.ts.map +1 -0
  62. package/dist/string-utils.js +2 -0
  63. package/dist/string-utils.js.map +1 -0
  64. package/dist/utils/core/ApiClient.d.ts +94 -0
  65. package/dist/utils/core/ApiClient.d.ts.map +1 -0
  66. package/dist/utils/core/ApiClient.js +291 -0
  67. package/dist/utils/core/ApiClient.js.map +1 -0
  68. package/dist/utils/core/ErrorBoundary.d.ts +141 -0
  69. package/dist/utils/core/ErrorBoundary.d.ts.map +1 -0
  70. package/dist/utils/core/ErrorBoundary.js +322 -0
  71. package/dist/utils/core/ErrorBoundary.js.map +1 -0
  72. package/dist/utils/core/Logger.d.ts +39 -0
  73. package/dist/utils/core/Logger.d.ts.map +1 -0
  74. package/dist/utils/core/Logger.js +154 -0
  75. package/dist/utils/core/Logger.js.map +1 -0
  76. package/dist/utils/core/Profiler.d.ts +8 -0
  77. package/dist/utils/core/Profiler.d.ts.map +1 -0
  78. package/dist/utils/core/Profiler.js +18 -0
  79. package/dist/utils/core/Profiler.js.map +1 -0
  80. package/dist/utils/core/RateLimiter.d.ts +74 -0
  81. package/dist/utils/core/RateLimiter.d.ts.map +1 -0
  82. package/dist/utils/core/RateLimiter.js +170 -0
  83. package/dist/utils/core/RateLimiter.js.map +1 -0
  84. package/dist/utils/core/RequestCache.d.ts +64 -0
  85. package/dist/utils/core/RequestCache.d.ts.map +1 -0
  86. package/dist/utils/core/RequestCache.js +139 -0
  87. package/dist/utils/core/RequestCache.js.map +1 -0
  88. package/dist/utils/core/RequestDeduplicator.d.ts +41 -0
  89. package/dist/utils/core/RequestDeduplicator.d.ts.map +1 -0
  90. package/dist/utils/core/RequestDeduplicator.js +83 -0
  91. package/dist/utils/core/RequestDeduplicator.js.map +1 -0
  92. package/dist/utils/core/ResponseValidator.d.ts +26 -0
  93. package/dist/utils/core/ResponseValidator.d.ts.map +1 -0
  94. package/dist/utils/core/ResponseValidator.js +140 -0
  95. package/dist/utils/core/ResponseValidator.js.map +1 -0
  96. package/dist/utils/core/RetryPolicy.d.ts +43 -0
  97. package/dist/utils/core/RetryPolicy.d.ts.map +1 -0
  98. package/dist/utils/core/RetryPolicy.js +119 -0
  99. package/dist/utils/core/RetryPolicy.js.map +1 -0
  100. package/dist/utils/core/debug.d.ts +46 -0
  101. package/dist/utils/core/debug.d.ts.map +1 -0
  102. package/dist/utils/core/debug.js +83 -0
  103. package/dist/utils/core/debug.js.map +1 -0
  104. package/dist/utils/core/index.d.ts +11 -0
  105. package/dist/utils/core/index.d.ts.map +1 -0
  106. package/dist/utils/core/index.js +11 -0
  107. package/dist/utils/core/index.js.map +1 -0
  108. package/dist/utils/helpers/ArrayUtils.d.ts +134 -0
  109. package/dist/utils/helpers/ArrayUtils.d.ts.map +1 -0
  110. package/dist/utils/helpers/ArrayUtils.js +301 -0
  111. package/dist/utils/helpers/ArrayUtils.js.map +1 -0
  112. package/dist/utils/helpers/CacheManager.d.ts +67 -0
  113. package/dist/utils/helpers/CacheManager.d.ts.map +1 -0
  114. package/dist/utils/helpers/CacheManager.js +222 -0
  115. package/dist/utils/helpers/CacheManager.js.map +1 -0
  116. package/dist/utils/helpers/CompressionUtils.d.ts +80 -0
  117. package/dist/utils/helpers/CompressionUtils.d.ts.map +1 -0
  118. package/dist/utils/helpers/CompressionUtils.js +224 -0
  119. package/dist/utils/helpers/CompressionUtils.js.map +1 -0
  120. package/dist/utils/helpers/CryptoUtils.d.ts +70 -0
  121. package/dist/utils/helpers/CryptoUtils.d.ts.map +1 -0
  122. package/dist/utils/helpers/CryptoUtils.js +215 -0
  123. package/dist/utils/helpers/CryptoUtils.js.map +1 -0
  124. package/dist/utils/helpers/DateUtils.d.ts +31 -0
  125. package/dist/utils/helpers/DateUtils.d.ts.map +1 -0
  126. package/dist/utils/helpers/DateUtils.js +104 -0
  127. package/dist/utils/helpers/DateUtils.js.map +1 -0
  128. package/dist/utils/helpers/DiffUtils.d.ts +61 -0
  129. package/dist/utils/helpers/DiffUtils.d.ts.map +1 -0
  130. package/dist/utils/helpers/DiffUtils.js +249 -0
  131. package/dist/utils/helpers/DiffUtils.js.map +1 -0
  132. package/dist/utils/helpers/EnvManager.d.ts +7 -0
  133. package/dist/utils/helpers/EnvManager.d.ts.map +1 -0
  134. package/dist/utils/helpers/EnvManager.js +19 -0
  135. package/dist/utils/helpers/EnvManager.js.map +1 -0
  136. package/dist/utils/helpers/EventEmitter.d.ts +78 -0
  137. package/dist/utils/helpers/EventEmitter.d.ts.map +1 -0
  138. package/dist/utils/helpers/EventEmitter.js +208 -0
  139. package/dist/utils/helpers/EventEmitter.js.map +1 -0
  140. package/dist/utils/helpers/FileUploadHelper.d.ts +44 -0
  141. package/dist/utils/helpers/FileUploadHelper.d.ts.map +1 -0
  142. package/dist/utils/helpers/FileUploadHelper.js +127 -0
  143. package/dist/utils/helpers/FileUploadHelper.js.map +1 -0
  144. package/dist/utils/helpers/FormUtils.d.ts +162 -0
  145. package/dist/utils/helpers/FormUtils.d.ts.map +1 -0
  146. package/dist/utils/helpers/FormUtils.js +378 -0
  147. package/dist/utils/helpers/FormUtils.js.map +1 -0
  148. package/dist/utils/helpers/ObjectUtils.d.ts +102 -0
  149. package/dist/utils/helpers/ObjectUtils.d.ts.map +1 -0
  150. package/dist/utils/helpers/ObjectUtils.js +297 -0
  151. package/dist/utils/helpers/ObjectUtils.js.map +1 -0
  152. package/dist/utils/helpers/PaginationHelper.d.ts +127 -0
  153. package/dist/utils/helpers/PaginationHelper.d.ts.map +1 -0
  154. package/dist/utils/helpers/PaginationHelper.js +259 -0
  155. package/dist/utils/helpers/PaginationHelper.js.map +1 -0
  156. package/dist/utils/helpers/PollingHelper.d.ts +64 -0
  157. package/dist/utils/helpers/PollingHelper.d.ts.map +1 -0
  158. package/dist/utils/helpers/PollingHelper.js +131 -0
  159. package/dist/utils/helpers/PollingHelper.js.map +1 -0
  160. package/dist/utils/helpers/StorageUtils.d.ts +9 -0
  161. package/dist/utils/helpers/StorageUtils.d.ts.map +1 -0
  162. package/dist/utils/helpers/StorageUtils.js +33 -0
  163. package/dist/utils/helpers/StorageUtils.js.map +1 -0
  164. package/dist/utils/helpers/StreamingHelper.d.ts +35 -0
  165. package/dist/utils/helpers/StreamingHelper.d.ts.map +1 -0
  166. package/dist/utils/helpers/StreamingHelper.js +167 -0
  167. package/dist/utils/helpers/StreamingHelper.js.map +1 -0
  168. package/dist/utils/helpers/StringUtils.d.ts +42 -0
  169. package/dist/utils/helpers/StringUtils.d.ts.map +1 -0
  170. package/dist/utils/helpers/StringUtils.js +173 -0
  171. package/dist/utils/helpers/StringUtils.js.map +1 -0
  172. package/dist/utils/helpers/TimeUtils.d.ts +87 -0
  173. package/dist/utils/helpers/TimeUtils.d.ts.map +1 -0
  174. package/dist/utils/helpers/TimeUtils.js +234 -0
  175. package/dist/utils/helpers/TimeUtils.js.map +1 -0
  176. package/dist/utils/helpers/Validator.d.ts +31 -0
  177. package/dist/utils/helpers/Validator.d.ts.map +1 -0
  178. package/dist/utils/helpers/Validator.js +156 -0
  179. package/dist/utils/helpers/Validator.js.map +1 -0
  180. package/dist/utils/helpers/WebSocketHelper.d.ts +63 -0
  181. package/dist/utils/helpers/WebSocketHelper.d.ts.map +1 -0
  182. package/dist/utils/helpers/WebSocketHelper.js +200 -0
  183. package/dist/utils/helpers/WebSocketHelper.js.map +1 -0
  184. package/dist/utils/helpers/index.d.ts +20 -0
  185. package/dist/utils/helpers/index.d.ts.map +1 -0
  186. package/dist/utils/helpers/index.js +20 -0
  187. package/dist/utils/helpers/index.js.map +1 -0
  188. package/dist/utils/index.d.ts +21 -0
  189. package/dist/utils/index.d.ts.map +1 -0
  190. package/dist/utils/index.js +21 -0
  191. package/dist/utils/index.js.map +1 -0
  192. package/dist/validator.d.ts +2 -0
  193. package/dist/validator.d.ts.map +1 -0
  194. package/dist/validator.js +2 -0
  195. package/dist/validator.js.map +1 -0
  196. package/dist/websocket.d.ts +2 -0
  197. package/dist/websocket.d.ts.map +1 -0
  198. package/dist/websocket.js +2 -0
  199. package/dist/websocket.js.map +1 -0
  200. package/package.json +189 -0
@@ -0,0 +1,378 @@
1
+ /**
2
+ * Form validation and management utilities
3
+ * Framework-agnostic form handling with built-in validators
4
+ */
5
+ /**
6
+ * Built-in validators
7
+ */
8
+ export const Validators = {
9
+ required: (value, message = "This field is required") => {
10
+ if (value === null || value === undefined || value === "") {
11
+ return message;
12
+ }
13
+ if (Array.isArray(value) && value.length === 0) {
14
+ return message;
15
+ }
16
+ return true;
17
+ },
18
+ minLength: (value, min, message) => {
19
+ if (typeof value !== "string")
20
+ return true;
21
+ if (value.length < min) {
22
+ return message || `Minimum length is ${min}`;
23
+ }
24
+ return true;
25
+ },
26
+ maxLength: (value, max, message) => {
27
+ if (typeof value !== "string")
28
+ return true;
29
+ if (value.length > max) {
30
+ return message || `Maximum length is ${max}`;
31
+ }
32
+ return true;
33
+ },
34
+ min: (value, min, message) => {
35
+ if (typeof value !== "number")
36
+ return true;
37
+ if (value < min) {
38
+ return message || `Minimum value is ${min}`;
39
+ }
40
+ return true;
41
+ },
42
+ max: (value, max, message) => {
43
+ if (typeof value !== "number")
44
+ return true;
45
+ if (value > max) {
46
+ return message || `Maximum value is ${max}`;
47
+ }
48
+ return true;
49
+ },
50
+ email: (value, message = "Invalid email address") => {
51
+ if (typeof value !== "string" || !value)
52
+ return true;
53
+ const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
54
+ return emailRegex.test(value) ? true : message;
55
+ },
56
+ url: (value, message = "Invalid URL") => {
57
+ if (typeof value !== "string" || !value)
58
+ return true;
59
+ try {
60
+ new URL(value);
61
+ return true;
62
+ }
63
+ catch {
64
+ return message;
65
+ }
66
+ },
67
+ pattern: (value, pattern, message) => {
68
+ if (typeof value !== "string" || !value)
69
+ return true;
70
+ return pattern.test(value) ? true : message || "Invalid format";
71
+ },
72
+ match: (value, other, message = "Fields do not match") => {
73
+ return value === other ? true : message;
74
+ },
75
+ };
76
+ /**
77
+ * Form validation and state management
78
+ */
79
+ export class FormUtils {
80
+ state;
81
+ rules;
82
+ config;
83
+ validationTimeouts = new Map();
84
+ constructor(config) {
85
+ this.config = config;
86
+ this.rules = config.rules ?? {};
87
+ this.state = {
88
+ values: { ...config.initialValues },
89
+ errors: {},
90
+ touched: {},
91
+ dirty: {},
92
+ isValidating: false,
93
+ isValid: true,
94
+ };
95
+ }
96
+ /**
97
+ * Get current form state
98
+ */
99
+ getState() {
100
+ return { ...this.state };
101
+ }
102
+ /**
103
+ * Get field value
104
+ */
105
+ getValue(field) {
106
+ return this.state.values[field];
107
+ }
108
+ /**
109
+ * Set field value
110
+ */
111
+ setValue(field, value) {
112
+ this.state.values[field] = value;
113
+ this.state.dirty[field] = true;
114
+ if (this.config.validateOnChange) {
115
+ this.validateField(field);
116
+ }
117
+ }
118
+ /**
119
+ * Set multiple values
120
+ */
121
+ setValues(values) {
122
+ this.state.values = { ...this.state.values, ...values };
123
+ Object.keys(values).forEach((field) => {
124
+ this.state.dirty[field] = true;
125
+ });
126
+ if (this.config.validateOnChange) {
127
+ Object.keys(values).forEach((field) => {
128
+ this.validateField(field);
129
+ });
130
+ }
131
+ }
132
+ /**
133
+ * Mark field as touched
134
+ */
135
+ touchField(field) {
136
+ this.state.touched[field] = true;
137
+ if (this.config.validateOnBlur) {
138
+ this.validateField(field);
139
+ }
140
+ }
141
+ /**
142
+ * Reset form to initial state
143
+ */
144
+ reset() {
145
+ this.state = {
146
+ values: { ...this.config.initialValues },
147
+ errors: {},
148
+ touched: {},
149
+ dirty: {},
150
+ isValidating: false,
151
+ isValid: true,
152
+ };
153
+ this.validationTimeouts.forEach((timeout) => clearTimeout(timeout));
154
+ this.validationTimeouts.clear();
155
+ }
156
+ /**
157
+ * Validate single field
158
+ */
159
+ async validateField(field) {
160
+ const rule = this.rules[field];
161
+ if (!rule)
162
+ return null;
163
+ const value = this.state.values[field];
164
+ const errors = [];
165
+ // Required validation
166
+ if (rule.required) {
167
+ const result = Validators.required(value, typeof rule.required === "string" ? rule.required : undefined);
168
+ if (result !== true) {
169
+ errors.push(result);
170
+ }
171
+ }
172
+ // String validations
173
+ if (typeof value === "string") {
174
+ if (rule.minLength !== undefined) {
175
+ const result = Validators.minLength(value, typeof rule.minLength === "number"
176
+ ? rule.minLength
177
+ : parseInt(rule.minLength), typeof rule.minLength === "string"
178
+ ? rule.minLength
179
+ : undefined);
180
+ if (result !== true)
181
+ errors.push(result);
182
+ }
183
+ if (rule.maxLength !== undefined) {
184
+ const result = Validators.maxLength(value, typeof rule.maxLength === "number"
185
+ ? rule.maxLength
186
+ : parseInt(rule.maxLength), typeof rule.maxLength === "string"
187
+ ? rule.maxLength
188
+ : undefined);
189
+ if (result !== true)
190
+ errors.push(result);
191
+ }
192
+ if (rule.email) {
193
+ const result = Validators.email(value, typeof rule.email === "string" ? rule.email : undefined);
194
+ if (result !== true)
195
+ errors.push(result);
196
+ }
197
+ if (rule.url) {
198
+ const result = Validators.url(value, typeof rule.url === "string" ? rule.url : undefined);
199
+ if (result !== true)
200
+ errors.push(result);
201
+ }
202
+ if (rule.pattern) {
203
+ const pattern = typeof rule.pattern === "string"
204
+ ? new RegExp(rule.pattern)
205
+ : rule.pattern;
206
+ const result = Validators.pattern(value, pattern);
207
+ if (result !== true)
208
+ errors.push(result);
209
+ }
210
+ }
211
+ // Number validations
212
+ if (typeof value === "number") {
213
+ if (rule.min !== undefined) {
214
+ const result = Validators.min(value, typeof rule.min === "number"
215
+ ? rule.min
216
+ : parseInt(rule.min), typeof rule.min === "string" ? rule.min : undefined);
217
+ if (result !== true)
218
+ errors.push(result);
219
+ }
220
+ if (rule.max !== undefined) {
221
+ const result = Validators.max(value, typeof rule.max === "number"
222
+ ? rule.max
223
+ : parseInt(rule.max), typeof rule.max === "string" ? rule.max : undefined);
224
+ if (result !== true)
225
+ errors.push(result);
226
+ }
227
+ }
228
+ // Custom validators
229
+ if (rule.custom) {
230
+ const validators = Array.isArray(rule.custom)
231
+ ? rule.custom
232
+ : [rule.custom];
233
+ for (const validator of validators) {
234
+ const result = validator(value);
235
+ if (result !== true) {
236
+ errors.push(result);
237
+ }
238
+ }
239
+ }
240
+ // Async custom validators
241
+ if (rule.asyncCustom) {
242
+ const asyncValidators = Array.isArray(rule.asyncCustom)
243
+ ? rule.asyncCustom
244
+ : [rule.asyncCustom];
245
+ for (const validator of asyncValidators) {
246
+ const result = await validator(value);
247
+ if (result !== true) {
248
+ errors.push(result);
249
+ }
250
+ }
251
+ }
252
+ const error = errors[0] || null;
253
+ this.state.errors[field] = error || "";
254
+ return error;
255
+ }
256
+ /**
257
+ * Validate all fields
258
+ */
259
+ async validate() {
260
+ this.state.isValidating = true;
261
+ const fieldErrors = [];
262
+ for (const field of Object.keys(this.rules)) {
263
+ const error = await this.validateField(field);
264
+ if (error) {
265
+ fieldErrors.push({
266
+ field: field,
267
+ message: error,
268
+ });
269
+ }
270
+ }
271
+ this.state.isValid = fieldErrors.length === 0;
272
+ this.state.isValidating = false;
273
+ if (fieldErrors.length > 0 && this.config.onError) {
274
+ this.config.onError(fieldErrors);
275
+ }
276
+ return fieldErrors;
277
+ }
278
+ /**
279
+ * Submit form
280
+ */
281
+ async submit() {
282
+ const errors = await this.validate();
283
+ if (errors.length === 0 && this.config.onSubmit) {
284
+ try {
285
+ await this.config.onSubmit(this.state.values);
286
+ return true;
287
+ }
288
+ catch (error) {
289
+ return false;
290
+ }
291
+ }
292
+ return errors.length === 0;
293
+ }
294
+ /**
295
+ * Get field error
296
+ */
297
+ getFieldError(field) {
298
+ return this.state.errors[field] || "";
299
+ }
300
+ /**
301
+ * Check if field has error
302
+ */
303
+ hasError(field) {
304
+ return !!this.state.errors[field];
305
+ }
306
+ /**
307
+ * Check if field is touched
308
+ */
309
+ isTouched(field) {
310
+ return !!this.state.touched[field];
311
+ }
312
+ /**
313
+ * Check if field is dirty
314
+ */
315
+ isDirty(field) {
316
+ return !!this.state.dirty[field];
317
+ }
318
+ /**
319
+ * Get all errors
320
+ */
321
+ getErrors() {
322
+ return { ...this.state.errors };
323
+ }
324
+ /**
325
+ * Clear field error
326
+ */
327
+ clearFieldError(field) {
328
+ this.state.errors[field] = "";
329
+ }
330
+ /**
331
+ * Clear all errors
332
+ */
333
+ clearErrors() {
334
+ this.state.errors = {};
335
+ }
336
+ /**
337
+ * Serialize form data
338
+ */
339
+ serialize() {
340
+ return { ...this.state.values };
341
+ }
342
+ /**
343
+ * Deserialize form data
344
+ */
345
+ deserialize(data) {
346
+ this.setValues(data);
347
+ }
348
+ /**
349
+ * Create form binding for framework integration
350
+ */
351
+ createBinding(field) {
352
+ return {
353
+ value: this.getValue(field),
354
+ onChange: (value) => this.setValue(field, value),
355
+ onBlur: () => this.touchField(field),
356
+ error: this.getFieldError(field),
357
+ touched: this.isTouched(field),
358
+ dirty: this.isDirty(field),
359
+ };
360
+ }
361
+ /**
362
+ * Create form bindings for all fields
363
+ */
364
+ createBindings() {
365
+ const bindings = {};
366
+ for (const field of Object.keys(this.state.values)) {
367
+ bindings[field] = this.createBinding(field);
368
+ }
369
+ return bindings;
370
+ }
371
+ }
372
+ /**
373
+ * Factory function for creating forms
374
+ */
375
+ export function createForm(config) {
376
+ return new FormUtils(config);
377
+ }
378
+ //# sourceMappingURL=FormUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FormUtils.js","sourceRoot":"","sources":["../../../src/utils/helpers/FormUtils.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,102 @@
1
+ /**
2
+ * Object manipulation utilities for everyday development tasks
3
+ */
4
+ export declare class ObjectUtils {
5
+ /**
6
+ * Check if value is empty (null, undefined, empty string, empty array, empty object)
7
+ */
8
+ static isEmpty(value: unknown): boolean;
9
+ /**
10
+ * Check if value is NOT empty
11
+ */
12
+ static isNotEmpty(value: unknown): boolean;
13
+ /**
14
+ * Deep clone an object
15
+ */
16
+ static deepClone<T>(obj: T): T;
17
+ /**
18
+ * Shallow merge objects (right overwrites left)
19
+ */
20
+ static merge<T extends Record<string, unknown>>(...objects: Partial<T>[]): T;
21
+ /**
22
+ * Deep merge objects (recursive)
23
+ */
24
+ static deepMerge(...objects: Array<Record<string, unknown>>): Record<string, unknown>;
25
+ /**
26
+ * Pick specific keys from object
27
+ */
28
+ static pick<T extends Record<string, unknown>, K extends keyof T>(obj: T, keys: K[]): Partial<T>;
29
+ /**
30
+ * Omit specific keys from object
31
+ */
32
+ static omit<T extends Record<string, unknown>, K extends keyof T>(obj: T, keys: K[]): Partial<T>;
33
+ /**
34
+ * Get nested value using dot notation
35
+ */
36
+ static get<T = unknown>(obj: Record<string, unknown>, path: string, defaultValue?: T): T;
37
+ /**
38
+ * Set nested value using dot notation
39
+ */
40
+ static set(obj: Record<string, unknown>, path: string, value: unknown): Record<string, unknown>;
41
+ /**
42
+ * Flatten nested object
43
+ */
44
+ static flatten(obj: Record<string, unknown>, prefix?: string): Record<string, unknown>;
45
+ /**
46
+ * Unflatten object (reverse of flatten)
47
+ */
48
+ static unflatten(obj: Record<string, unknown>): Record<string, unknown>;
49
+ /**
50
+ * Filter object by predicate
51
+ */
52
+ static filter<T extends Record<string, unknown>>(obj: T, predicate: (key: string, value: unknown) => boolean): Partial<T>;
53
+ /**
54
+ * Map object values
55
+ */
56
+ static mapValues<T extends Record<string, unknown>, R>(obj: T, mapper: (value: unknown, key: string) => R): Record<string, R>;
57
+ /**
58
+ * Check if object has all keys
59
+ */
60
+ static hasKeys<T extends Record<string, unknown>>(obj: T, keys: (keyof T)[]): boolean;
61
+ /**
62
+ * Check if object has any of the keys
63
+ */
64
+ static hasAnyKey<T extends Record<string, unknown>>(obj: T, keys: (keyof T)[]): boolean;
65
+ /**
66
+ * Invert object keys and values
67
+ */
68
+ static invert<T extends Record<string, string | number>>(obj: T): Record<string | number, string>;
69
+ /**
70
+ * Group array of objects by key
71
+ */
72
+ static groupBy<T extends Record<string, unknown>>(arr: T[], key: keyof T): Record<string, T[]>;
73
+ /**
74
+ * Index array of objects by key
75
+ */
76
+ static indexBy<T extends Record<string, unknown>>(arr: T[], key: keyof T): Record<string, T>;
77
+ /**
78
+ * Check if two objects are deeply equal
79
+ */
80
+ static deepEqual(a: unknown, b: unknown): boolean;
81
+ /**
82
+ * Get object size (number of keys)
83
+ */
84
+ static size(obj: Record<string, unknown>): number;
85
+ /**
86
+ * Convert object to array of [key, value] pairs
87
+ */
88
+ static entries<T extends Record<string, unknown>>(obj: T): Array<[string, unknown]>;
89
+ /**
90
+ * Convert array of [key, value] pairs to object
91
+ */
92
+ static fromEntries(entries: Array<[string, unknown]>): Record<string, unknown>;
93
+ /**
94
+ * Assign properties from source to target (like Object.assign)
95
+ */
96
+ static assign<T extends Record<string, unknown>>(target: T, ...sources: Partial<T>[]): T;
97
+ /**
98
+ * Create object from keys with same value
99
+ */
100
+ static fromKeys<T extends string | number>(keys: T[], value: unknown): Record<T, unknown>;
101
+ }
102
+ //# sourceMappingURL=ObjectUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ObjectUtils.d.ts","sourceRoot":"","sources":["../../../src/utils/helpers/ObjectUtils.ts"],"names":[],"mappings":"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"}