@rudderstack/integrations-lib 0.2.17 → 0.2.19

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.
@@ -0,0 +1,368 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const json_schema_generator_1 = require("./json-schema-generator");
4
+ const tests_1 = require("./tests");
5
+ describe('JsonSchemaGenerator', () => {
6
+ describe('generate()', () => {
7
+ const testCases = [
8
+ {
9
+ name: 'primitive - string',
10
+ input: 'test',
11
+ expected: { type: 'string' },
12
+ },
13
+ {
14
+ name: 'primitive - number',
15
+ input: 123,
16
+ expected: { type: 'number' },
17
+ },
18
+ {
19
+ name: 'primitive - boolean',
20
+ input: true,
21
+ expected: { type: 'boolean' },
22
+ },
23
+ {
24
+ name: 'primitive - null',
25
+ input: null,
26
+ expected: { type: 'null' },
27
+ },
28
+ {
29
+ name: 'empty array',
30
+ input: [],
31
+ expected: { type: 'array', items: { type: 'any' } },
32
+ },
33
+ {
34
+ name: 'simple array of numbers',
35
+ input: [1, 2, 3],
36
+ expected: { type: 'array', items: { type: 'number' } },
37
+ },
38
+ {
39
+ name: 'enum detection from array',
40
+ input: ['red', 'green', 'red', 'blue'],
41
+ options: { detectEnums: true },
42
+ expected: {
43
+ type: 'array',
44
+ items: {
45
+ type: 'string',
46
+ enum: ['red', 'green', 'blue'],
47
+ },
48
+ },
49
+ },
50
+ {
51
+ name: 'enum detection disabled',
52
+ input: ['red', 'green', 'red', 'blue'],
53
+ options: { detectEnums: false },
54
+ expected: { type: 'array', items: { type: 'string' } },
55
+ },
56
+ {
57
+ name: 'simple object',
58
+ input: { name: 'John', age: 30 },
59
+ expected: {
60
+ type: 'object',
61
+ properties: {
62
+ name: { type: 'string' },
63
+ age: { type: 'number' },
64
+ },
65
+ },
66
+ },
67
+ {
68
+ name: 'object with required properties',
69
+ input: { name: 'John', age: 30 },
70
+ options: { requireAll: true },
71
+ expected: {
72
+ type: 'object',
73
+ properties: {
74
+ name: { type: 'string' },
75
+ age: { type: 'number' },
76
+ },
77
+ required: ['name', 'age'],
78
+ },
79
+ },
80
+ {
81
+ name: 'nested object',
82
+ input: {
83
+ name: 'John',
84
+ address: {
85
+ street: '123 Main St',
86
+ city: 'Boston',
87
+ },
88
+ },
89
+ expected: {
90
+ type: 'object',
91
+ properties: {
92
+ name: { type: 'string' },
93
+ address: {
94
+ type: 'object',
95
+ properties: {
96
+ street: { type: 'string' },
97
+ city: { type: 'string' },
98
+ },
99
+ },
100
+ },
101
+ },
102
+ },
103
+ {
104
+ name: 'mixed array of primitives',
105
+ input: [1, 'test', true],
106
+ expected: {
107
+ type: 'array',
108
+ items: { type: ['number', 'string', 'boolean'] },
109
+ },
110
+ },
111
+ {
112
+ name: 'object with array',
113
+ input: {
114
+ name: 'John',
115
+ hobbies: ['reading', 'gaming'],
116
+ },
117
+ expected: {
118
+ type: 'object',
119
+ properties: {
120
+ name: { type: 'string' },
121
+ hobbies: { type: 'array', items: { type: 'string' } },
122
+ },
123
+ },
124
+ },
125
+ {
126
+ name: 'array of objects',
127
+ input: [
128
+ { id: 1, name: 'John' },
129
+ { id: 2, name: 'Jane' },
130
+ ],
131
+ expected: {
132
+ type: 'array',
133
+ items: {
134
+ type: 'object',
135
+ properties: {
136
+ id: { type: 'number' },
137
+ name: { type: 'string' },
138
+ },
139
+ },
140
+ },
141
+ },
142
+ {
143
+ name: 'mixed array with objects',
144
+ input: [123, 'test', { name: 'John' }, true],
145
+ expected: {
146
+ type: 'array',
147
+ items: {
148
+ anyOf: [
149
+ { type: 'number' },
150
+ { type: 'string' },
151
+ {
152
+ type: 'object',
153
+ properties: { name: { type: 'string' } },
154
+ },
155
+ { type: 'boolean' },
156
+ ],
157
+ },
158
+ },
159
+ },
160
+ {
161
+ name: 'array of arrays',
162
+ input: [
163
+ [1, 2],
164
+ [3, 4],
165
+ ],
166
+ expected: {
167
+ type: 'array',
168
+ items: { type: 'array', items: { type: 'number' } },
169
+ },
170
+ },
171
+ {
172
+ name: 'complex nested object',
173
+ input: {
174
+ id: 1,
175
+ user: {
176
+ name: 'John',
177
+ contacts: {
178
+ email: ['john@example.com', 'john.doe@example.com'],
179
+ phone: null,
180
+ },
181
+ preferences: {
182
+ notifications: true,
183
+ theme: {
184
+ dark: false,
185
+ colors: ['blue', 'green'],
186
+ },
187
+ },
188
+ },
189
+ },
190
+ options: { requireAll: true },
191
+ expected: {
192
+ type: 'object',
193
+ required: ['id', 'user'],
194
+ properties: {
195
+ id: { type: 'number' },
196
+ user: {
197
+ type: 'object',
198
+ required: ['name', 'contacts', 'preferences'],
199
+ properties: {
200
+ name: { type: 'string' },
201
+ contacts: {
202
+ type: 'object',
203
+ required: ['email', 'phone'],
204
+ properties: {
205
+ email: { type: 'array', items: { type: 'string' } },
206
+ phone: { type: 'null' },
207
+ },
208
+ },
209
+ preferences: {
210
+ type: 'object',
211
+ required: ['notifications', 'theme'],
212
+ properties: {
213
+ notifications: { type: 'boolean' },
214
+ theme: {
215
+ type: 'object',
216
+ required: ['dark', 'colors'],
217
+ properties: {
218
+ dark: { type: 'boolean' },
219
+ colors: { type: 'array', items: { type: 'string' } },
220
+ },
221
+ },
222
+ },
223
+ },
224
+ },
225
+ },
226
+ },
227
+ },
228
+ },
229
+ {
230
+ name: 'string array with no enum detection',
231
+ input: ['red', 'red', 'blue'],
232
+ options: { detectEnums: false },
233
+ expected: { type: 'array', items: { type: 'string' } },
234
+ },
235
+ {
236
+ name: 'array with mixed object types that can be merged',
237
+ input: [
238
+ { id: 1, name: 'John' },
239
+ { id: 2, name: 'Jane', age: 30 },
240
+ ],
241
+ expected: {
242
+ type: 'array',
243
+ items: {
244
+ type: 'object',
245
+ properties: {
246
+ id: { type: 'number' },
247
+ name: { type: 'string' },
248
+ age: { type: 'number' },
249
+ },
250
+ },
251
+ },
252
+ },
253
+ {
254
+ name: 'array with mixed object types that cannot be merged',
255
+ input: [
256
+ { id: 1, name: 'John' },
257
+ { id: 'ABC', name: 'Jane' }, // id is string instead of number
258
+ ],
259
+ expected: {
260
+ type: 'array',
261
+ items: {
262
+ anyOf: [
263
+ {
264
+ type: 'object',
265
+ properties: {
266
+ id: { type: 'number' },
267
+ name: { type: 'string' },
268
+ },
269
+ },
270
+ {
271
+ type: 'object',
272
+ properties: {
273
+ id: { type: 'string' },
274
+ name: { type: 'string' },
275
+ },
276
+ },
277
+ ],
278
+ },
279
+ },
280
+ },
281
+ {
282
+ name: 'empty array',
283
+ input: [],
284
+ expected: {
285
+ type: 'array',
286
+ items: { type: 'any' },
287
+ },
288
+ },
289
+ {
290
+ name: 'array with single item',
291
+ input: ['test'],
292
+ expected: {
293
+ type: 'array',
294
+ items: { type: 'string' },
295
+ },
296
+ },
297
+ {
298
+ name: 'array with single object',
299
+ input: [{ id: 1, name: 'John' }],
300
+ expected: {
301
+ type: 'array',
302
+ items: {
303
+ type: 'object',
304
+ properties: {
305
+ id: { type: 'number' },
306
+ name: { type: 'string' },
307
+ },
308
+ },
309
+ },
310
+ },
311
+ {
312
+ name: 'array with single nested array',
313
+ input: [[1, 2, 3]],
314
+ expected: {
315
+ type: 'array',
316
+ items: {
317
+ type: 'array',
318
+ items: { type: 'number' },
319
+ },
320
+ },
321
+ },
322
+ {
323
+ name: 'array with objects having common required properties',
324
+ input: [
325
+ { id: 1, name: 'John', age: 30 },
326
+ { id: 2, name: 'Jane', email: 'jane@example.com' },
327
+ ],
328
+ options: { requireAll: true },
329
+ expected: {
330
+ type: 'array',
331
+ items: {
332
+ type: 'object',
333
+ properties: {
334
+ id: { type: 'number' },
335
+ name: { type: 'string' },
336
+ age: { type: 'number' },
337
+ email: { type: 'string' },
338
+ },
339
+ required: ['id', 'name'],
340
+ },
341
+ },
342
+ },
343
+ ];
344
+ // Run all test cases
345
+ (0, tests_1.filter)(testCases).forEach(({ name, input, options, expected }) => {
346
+ it(name, () => {
347
+ const result = json_schema_generator_1.JsonSchemaGenerator.generate(input, options);
348
+ expect(result).toEqual(expected);
349
+ });
350
+ });
351
+ });
352
+ describe('validate()', () => {
353
+ const errorTestCases = [
354
+ {
355
+ name: 'invalid schema type',
356
+ input: 123,
357
+ schema: { type: 'string' },
358
+ expectedError: 'Validation failed',
359
+ },
360
+ ];
361
+ (0, tests_1.filter)(errorTestCases).forEach(({ name, input, schema, expectedError }) => {
362
+ it(name, () => {
363
+ expect(() => json_schema_generator_1.JsonSchemaGenerator.validate(input, schema)).toThrow(expectedError);
364
+ });
365
+ });
366
+ });
367
+ });
368
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoianNvbi1zY2hlbWEtZ2VuZXJhdG9yLnRlc3QuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvanNvbi1zY2hlbWEtZ2VuZXJhdG9yLnRlc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxtRUFJaUM7QUFDakMsbUNBQStDO0FBUy9DLFFBQVEsQ0FBQyxxQkFBcUIsRUFBRSxHQUFHLEVBQUU7SUFDbkMsUUFBUSxDQUFDLFlBQVksRUFBRSxHQUFHLEVBQUU7UUFDMUIsTUFBTSxTQUFTLEdBQXFCO1lBQ2xDO2dCQUNFLElBQUksRUFBRSxvQkFBb0I7Z0JBQzFCLEtBQUssRUFBRSxNQUFNO2dCQUNiLFFBQVEsRUFBRSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUU7YUFDN0I7WUFDRDtnQkFDRSxJQUFJLEVBQUUsb0JBQW9CO2dCQUMxQixLQUFLLEVBQUUsR0FBRztnQkFDVixRQUFRLEVBQUUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFO2FBQzdCO1lBQ0Q7Z0JBQ0UsSUFBSSxFQUFFLHFCQUFxQjtnQkFDM0IsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRTthQUM5QjtZQUNEO2dCQUNFLElBQUksRUFBRSxrQkFBa0I7Z0JBQ3hCLEtBQUssRUFBRSxJQUFJO2dCQUNYLFFBQVEsRUFBRSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7YUFDM0I7WUFDRDtnQkFDRSxJQUFJLEVBQUUsYUFBYTtnQkFDbkIsS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsUUFBUSxFQUFFLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEVBQUU7YUFDcEQ7WUFDRDtnQkFDRSxJQUFJLEVBQUUseUJBQXlCO2dCQUMvQixLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDaEIsUUFBUSxFQUFFLEVBQUUs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Q0FBQyxDQUFDO0lBRUgsUUFBUSxDQUFDLFlBQVksRUFBRSxHQUFHLEVBQUU7UUFRMUIsTUFBTSxjQUFjLEdBQXVCO1lBQ3pDO2dCQUNFLElBQUksRUFBRSxxQkFBcUI7Z0JBQzNCLEtBQUssRUFBRSxHQUFHO2dCQUNWLE1BQU0sRUFBRSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUU7Z0JBQzFCLGFBQWEsRUFBRSxtQkFBbUI7YUFDbkM7U0FDRixDQUFDO1FBRUYsSUFBQSxjQUFNLEVBQUMsY0FBYyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxhQUFhLEVBQUUsRUFBRSxFQUFFO1lBQ3hFLEVBQUUsQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFO2dCQUNaLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQywyQ0FBbUIsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1lBQ25GLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgSnNvblNjaGVtYUdlbmVyYXRvcixcbiAgSlNPTlNjaGVtYVR5cGUsXG4gIEpzb25TY2hlbWFHZW5lcmF0b3JPcHRpb25zLFxufSBmcm9tICcuL2pzb24tc2NoZW1hLWdlbmVyYXRvcic7XG5pbXBvcnQgeyBCYXNlVGVzdENhc2UsIGZpbHRlciB9IGZyb20gJy4vdGVzdHMnO1xuXG50eXBlIFNjaGVtYVRlc3RDYXNlID0gQmFzZVRlc3RDYXNlICYge1xuICBuYW1lOiBzdHJpbmc7XG4gIGlucHV0OiB1bmtub3duO1xuICBvcHRpb25zPzogSnNvblNjaGVtYUdlbmVyYXRvck9wdGlvbnM7XG4gIGV4cGVjdGVkOiBKU09OU2NoZW1hVHlwZTtcbn07XG5cbmRlc2NyaWJlKCdKc29uU2NoZW1hR2VuZXJhdG9yJywgKCkgPT4ge1xuICBkZXNjcmliZSgnZ2VuZXJhdGUoKScsICgpID0+IHtcbiAgICBjb25zdCB0ZXN0Q2FzZXM6IFNjaGVtYVRlc3RDYXNlW10gPSBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdwcmltaXRpdmUgLSBzdHJpbmcnLFxuICAgICAgICBpbnB1dDogJ3Rlc3QnLFxuICAgICAgICBleHBlY3RlZDogeyB0eXBlOiAnc3RyaW5nJyB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ3ByaW1pdGl2ZSAtIG51bWJlcicsXG4gICAgICAgIGlucHV0OiAxMjMsXG4gICAgICAgIGV4cGVjdGVkOiB7IHR5cGU6ICdudW1iZXInIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAncHJpbWl0aXZlIC0gYm9vbGVhbicsXG4gICAgICAgIGlucHV0OiB0cnVlLFxuICAgICAgICBleHBlY3RlZDogeyB0eXBlOiAnYm9vbGVhbicgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdwcmltaXRpdmUgLSBudWxsJyxcbiAgICAgICAgaW5wdXQ6IG51bGwsXG4gICAgICAgIGV4cGVjdGVkOiB7IHR5cGU6ICdudWxsJyB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2VtcHR5IGFycmF5JyxcbiAgICAgICAgaW5wdXQ6IFtdLFxuICAgICAgICBleHBlY3RlZDogeyB0eXBlOiAnYXJyYXknLCBpdGVtczogeyB0eXBlOiAnYW55JyB9IH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnc2ltcGxlIGFycmF5IG9mIG51bWJlcnMnLFxuICAgICAgICBpbnB1dDogWzEsIDIsIDNdLFxuICAgICAgICBleHBlY3RlZDogeyB0eXBlOiAnYXJyYXknLCBpdGVtczogeyB0eXBlOiAnbnVtYmVyJyB9IH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnZW51bSBkZXRlY3Rpb24gZnJvbSBhcnJheScsXG4gICAgICAgIGlucHV0OiBbJ3JlZCcsICdncmVlbicsICdyZWQnLCAnYmx1ZSddLFxuICAgICAgICBvcHRpb25zOiB7IGRldGVjdEVudW1zOiB0cnVlIH0sXG4gICAgICAgIGV4cGVjdGVkOiB7XG4gICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICBpdGVtczoge1xuICAgICAgICAgICAgdHlwZTogJ3N0cmluZycsXG4gICAgICAgICAgICBlbnVtOiBbJ3JlZCcsICdncmVlbicsICdibHVlJ10sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdlbnVtIGRldGVjdGlvbiBkaXNhYmxlZCcsXG4gICAgICAgIGlucHV0OiBbJ3JlZCcsICdncmVlbicsICdyZWQnLCAnYmx1ZSddLFxuICAgICAgICBvcHRpb25zOiB7IGRldGVjdEVudW1zOiBmYWxzZSB9LFxuICAgICAgICBleHBlY3RlZDogeyB0eXBlOiAnYXJyYXknLCBpdGVtczogeyB0eXBlOiAnc3RyaW5nJyB9IH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnc2ltcGxlIG9iamVjdCcsXG4gICAgICAgIGlucHV0OiB7IG5hbWU6ICdKb2huJywgYWdlOiAzMCB9LFxuICAgICAgICBleHBlY3RlZDoge1xuICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgIG5hbWU6IHsgdHlwZTogJ3N0cmluZycgfSxcbiAgICAgICAgICAgIGFnZTogeyB0eXBlOiAnbnVtYmVyJyB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnb2JqZWN0IHdpdGggcmVxdWlyZWQgcHJvcGVydGllcycsXG4gICAgICAgIGlucHV0OiB7IG5hbWU6ICdKb2huJywgYWdlOiAzMCB9LFxuICAgICAgICBvcHRpb25zOiB7IHJlcXVpcmVBbGw6IHRydWUgfSxcbiAgICAgICAgZXhwZWN0ZWQ6IHtcbiAgICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICBuYW1lOiB7IHR5cGU6ICdzdHJpbmcnIH0sXG4gICAgICAgICAgICBhZ2U6IHsgdHlwZTogJ251bWJlcicgfSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIHJlcXVpcmVkOiBbJ25hbWUnLCAnYWdlJ10sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnbmVzdGVkIG9iamVjdCcsXG4gICAgICAgIGlucHV0OiB7XG4gICAgICAgICAgbmFtZTogJ0pvaG4nLFxuICAgICAgICAgIGFkZHJlc3M6IHtcbiAgICAgICAgICAgIHN0cmVldDogJzEyMyBNYWluIFN0JyxcbiAgICAgICAgICAgIGNpdHk6ICdCb3N0b24nLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIGV4cGVjdGVkOiB7XG4gICAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgICAgbmFtZTogeyB0eXBlOiAnc3RyaW5nJyB9LFxuICAgICAgICAgICAgYWRkcmVzczoge1xuICAgICAgICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgICAgICAgIHN0cmVldDogeyB0eXBlOiAnc3RyaW5nJyB9LFxuICAgICAgICAgICAgICAgIGNpdHk6IHsgdHlwZTogJ3N0cmluZycgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtaXhlZCBhcnJheSBvZiBwcmltaXRpdmVzJyxcbiAgICAgICAgaW5wdXQ6IFsxLCAndGVzdCcsIHRydWVdLFxuICAgICAgICBleHBlY3RlZDoge1xuICAgICAgICAgIHR5cGU6ICdhcnJheScsXG4gICAgICAgICAgaXRlbXM6IHsgdHlwZTogWydudW1iZXInLCAnc3RyaW5nJywgJ2Jvb2xlYW4nXSB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ29iamVjdCB3aXRoIGFycmF5JyxcbiAgICAgICAgaW5wdXQ6IHtcbiAgICAgICAgICBuYW1lOiAnSm9obicsXG4gICAgICAgICAgaG9iYmllczogWydyZWFkaW5nJywgJ2dhbWluZyddLFxuICAgICAgICB9LFxuICAgICAgICBleHBlY3RlZDoge1xuICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgIG5hbWU6IHsgdHlwZTogJ3N0cmluZycgfSxcbiAgICAgICAgICAgIGhvYmJpZXM6IHsgdHlwZTogJ2FycmF5JywgaXRlbXM6IHsgdHlwZTogJ3N0cmluZycgfSB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnYXJyYXkgb2Ygb2JqZWN0cycsXG4gICAgICAgIGlucHV0OiBbXG4gICAgICAgICAgeyBpZDogMSwgbmFtZTogJ0pvaG4nIH0sXG4gICAgICAgICAgeyBpZDogMiwgbmFtZTogJ0phbmUnIH0sXG4gICAgICAgIF0sXG4gICAgICAgIGV4cGVjdGVkOiB7XG4gICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICBpdGVtczoge1xuICAgICAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAgIGlkOiB7IHR5cGU6ICdudW1iZXInIH0sXG4gICAgICAgICAgICAgIG5hbWU6IHsgdHlwZTogJ3N0cmluZycgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdtaXhlZCBhcnJheSB3aXRoIG9iamVjdHMnLFxuICAgICAgICBpbnB1dDogWzEyMywgJ3Rlc3QnLCB7IG5hbWU6ICdKb2huJyB9LCB0cnVlXSxcbiAgICAgICAgZXhwZWN0ZWQ6IHtcbiAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgIGl0ZW1zOiB7XG4gICAgICAgICAgICBhbnlPZjogW1xuICAgICAgICAgICAgICB7IHR5cGU6ICdudW1iZXInIH0sXG4gICAgICAgICAgICAgIHsgdHlwZTogJ3N0cmluZycgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHsgbmFtZTogeyB0eXBlOiAnc3RyaW5nJyB9IH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHsgdHlwZTogJ2Jvb2xlYW4nIH0sXG4gICAgICAgICAgICBdLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnYXJyYXkgb2YgYXJyYXlzJyxcbiAgICAgICAgaW5wdXQ6IFtcbiAgICAgICAgICBbMSwgMl0sXG4gICAgICAgICAgWzMsIDRdLFxuICAgICAgICBdLFxuICAgICAgICBleHBlY3RlZDoge1xuICAgICAgICAgIHR5cGU6ICdhcnJheScsXG4gICAgICAgICAgaXRlbXM6IHsgdHlwZTogJ2FycmF5JywgaXRlbXM6IHsgdHlwZTogJ251bWJlcicgfSB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHtcbiAgICAgICAgbmFtZTogJ2NvbXBsZXggbmVzdGVkIG9iamVjdCcsXG4gICAgICAgIGlucHV0OiB7XG4gICAgICAgICAgaWQ6IDEsXG4gICAgICAgICAgdXNlcjoge1xuICAgICAgICAgICAgbmFtZTogJ0pvaG4nLFxuICAgICAgICAgICAgY29udGFjdHM6IHtcbiAgICAgICAgICAgICAgZW1haWw6IFsnam9obkBleGFtcGxlLmNvbScsICdqb2huLmRvZUBleGFtcGxlLmNvbSddLFxuICAgICAgICAgICAgICBwaG9uZTogbnVsbCxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBwcmVmZXJlbmNlczoge1xuICAgICAgICAgICAgICBub3RpZmljYXRpb25zOiB0cnVlLFxuICAgICAgICAgICAgICB0aGVtZToge1xuICAgICAgICAgICAgICAgIGRhcms6IGZhbHNlLFxuICAgICAgICAgICAgICAgIGNvbG9yczogWydibHVlJywgJ2dyZWVuJ10sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIG9wdGlvbnM6IHsgcmVxdWlyZUFsbDogdHJ1ZSB9LFxuICAgICAgICBleHBlY3RlZDoge1xuICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgIHJlcXVpcmVkOiBbJ2lkJywgJ3VzZXInXSxcbiAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICBpZDogeyB0eXBlOiAnbnVtYmVyJyB9LFxuICAgICAgICAgICAgdXNlcjoge1xuICAgICAgICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICAgICAgcmVxdWlyZWQ6IFsnbmFtZScsICdjb250YWN0cycsICdwcmVmZXJlbmNlcyddLFxuICAgICAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAgICAgbmFtZTogeyB0eXBlOiAnc3RyaW5nJyB9LFxuICAgICAgICAgICAgICAgIGNvbnRhY3RzOiB7XG4gICAgICAgICAgICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiBbJ2VtYWlsJywgJ3Bob25lJ10sXG4gICAgICAgICAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAgICAgICAgIGVtYWlsOiB7IHR5cGU6ICdhcnJheScsIGl0ZW1zOiB7IHR5cGU6ICdzdHJpbmcnIH0gfSxcbiAgICAgICAgICAgICAgICAgICAgcGhvbmU6IHsgdHlwZTogJ251bGwnIH0sXG4gICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgcHJlZmVyZW5jZXM6IHtcbiAgICAgICAgICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgICAgICAgICAgcmVxdWlyZWQ6IFsnbm90aWZpY2F0aW9ucycsICd0aGVtZSddLFxuICAgICAgICAgICAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgICAgICAgICAgICBub3RpZmljYXRpb25zOiB7IHR5cGU6ICdib29sZWFuJyB9LFxuICAgICAgICAgICAgICAgICAgICB0aGVtZToge1xuICAgICAgICAgICAgICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgICAgICAgICAgICAgIHJlcXVpcmVkOiBbJ2RhcmsnLCAnY29sb3JzJ10sXG4gICAgICAgICAgICAgICAgICAgICAgcHJvcGVydGllczoge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGFyazogeyB0eXBlOiAnYm9vbGVhbicgfSxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yczogeyB0eXBlOiAnYXJyYXknLCBpdGVtczogeyB0eXBlOiAnc3RyaW5nJyB9IH0sXG4gICAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdzdHJpbmcgYXJyYXkgd2l0aCBubyBlbnVtIGRldGVjdGlvbicsXG4gICAgICAgIGlucHV0OiBbJ3JlZCcsICdyZWQnLCAnYmx1ZSddLFxuICAgICAgICBvcHRpb25zOiB7IGRldGVjdEVudW1zOiBmYWxzZSB9LFxuICAgICAgICBleHBlY3RlZDogeyB0eXBlOiAnYXJyYXknLCBpdGVtczogeyB0eXBlOiAnc3RyaW5nJyB9IH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnYXJyYXkgd2l0aCBtaXhlZCBvYmplY3QgdHlwZXMgdGhhdCBjYW4gYmUgbWVyZ2VkJyxcbiAgICAgICAgaW5wdXQ6IFtcbiAgICAgICAgICB7IGlkOiAxLCBuYW1lOiAnSm9obicgfSxcbiAgICAgICAgICB7IGlkOiAyLCBuYW1lOiAnSmFuZScsIGFnZTogMzAgfSxcbiAgICAgICAgXSxcbiAgICAgICAgZXhwZWN0ZWQ6IHtcbiAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgIGl0ZW1zOiB7XG4gICAgICAgICAgICB0eXBlOiAnb2JqZWN0JyxcbiAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgaWQ6IHsgdHlwZTogJ251bWJlcicgfSxcbiAgICAgICAgICAgICAgbmFtZTogeyB0eXBlOiAnc3RyaW5nJyB9LFxuICAgICAgICAgICAgICBhZ2U6IHsgdHlwZTogJ251bWJlcicgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdhcnJheSB3aXRoIG1peGVkIG9iamVjdCB0eXBlcyB0aGF0IGNhbm5vdCBiZSBtZXJnZWQnLFxuICAgICAgICBpbnB1dDogW1xuICAgICAgICAgIHsgaWQ6IDEsIG5hbWU6ICdKb2huJyB9LFxuICAgICAgICAgIHsgaWQ6ICdBQkMnLCBuYW1lOiAnSmFuZScgfSwgLy8gaWQgaXMgc3RyaW5nIGluc3RlYWQgb2YgbnVtYmVyXG4gICAgICAgIF0sXG4gICAgICAgIGV4cGVjdGVkOiB7XG4gICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICBpdGVtczoge1xuICAgICAgICAgICAgYW55T2Y6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICAgIGlkOiB7IHR5cGU6ICdudW1iZXInIH0sXG4gICAgICAgICAgICAgICAgICBuYW1lOiB7IHR5cGU6ICdzdHJpbmcnIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIHR5cGU6ICdvYmplY3QnLFxuICAgICAgICAgICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICAgICAgICAgIGlkOiB7IHR5cGU6ICdzdHJpbmcnIH0sXG4gICAgICAgICAgICAgICAgICBuYW1lOiB7IHR5cGU6ICdzdHJpbmcnIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdlbXB0eSBhcnJheScsXG4gICAgICAgIGlucHV0OiBbXSxcbiAgICAgICAgZXhwZWN0ZWQ6IHtcbiAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgIGl0ZW1zOiB7IHR5cGU6ICdhbnknIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnYXJyYXkgd2l0aCBzaW5nbGUgaXRlbScsXG4gICAgICAgIGlucHV0OiBbJ3Rlc3QnXSxcbiAgICAgICAgZXhwZWN0ZWQ6IHtcbiAgICAgICAgICB0eXBlOiAnYXJyYXknLFxuICAgICAgICAgIGl0ZW1zOiB7IHR5cGU6ICdzdHJpbmcnIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBuYW1lOiAnYXJyYXkgd2l0aCBzaW5nbGUgb2JqZWN0JyxcbiAgICAgICAgaW5wdXQ6IFt7IGlkOiAxLCBuYW1lOiAnSm9obicgfV0sXG4gICAgICAgIGV4cGVjdGVkOiB7XG4gICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICBpdGVtczoge1xuICAgICAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAgIGlkOiB7IHR5cGU6ICdudW1iZXInIH0sXG4gICAgICAgICAgICAgIG5hbWU6IHsgdHlwZTogJ3N0cmluZycgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdhcnJheSB3aXRoIHNpbmdsZSBuZXN0ZWQgYXJyYXknLFxuICAgICAgICBpbnB1dDogW1sxLCAyLCAzXV0sXG4gICAgICAgIGV4cGVjdGVkOiB7XG4gICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICBpdGVtczoge1xuICAgICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICAgIGl0ZW1zOiB7IHR5cGU6ICdudW1iZXInIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdhcnJheSB3aXRoIG9iamVjdHMgaGF2aW5nIGNvbW1vbiByZXF1aXJlZCBwcm9wZXJ0aWVzJyxcbiAgICAgICAgaW5wdXQ6IFtcbiAgICAgICAgICB7IGlkOiAxLCBuYW1lOiAnSm9obicsIGFnZTogMzAgfSxcbiAgICAgICAgICB7IGlkOiAyLCBuYW1lOiAnSmFuZScsIGVtYWlsOiAnamFuZUBleGFtcGxlLmNvbScgfSxcbiAgICAgICAgXSxcbiAgICAgICAgb3B0aW9uczogeyByZXF1aXJlQWxsOiB0cnVlIH0sXG4gICAgICAgIGV4cGVjdGVkOiB7XG4gICAgICAgICAgdHlwZTogJ2FycmF5JyxcbiAgICAgICAgICBpdGVtczoge1xuICAgICAgICAgICAgdHlwZTogJ29iamVjdCcsXG4gICAgICAgICAgICBwcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICAgIGlkOiB7IHR5cGU6ICdudW1iZXInIH0sXG4gICAgICAgICAgICAgIG5hbWU6IHsgdHlwZTogJ3N0cmluZycgfSxcbiAgICAgICAgICAgICAgYWdlOiB7IHR5cGU6ICdudW1iZXInIH0sXG4gICAgICAgICAgICAgIGVtYWlsOiB7IHR5cGU6ICdzdHJpbmcnIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcmVxdWlyZWQ6IFsnaWQnLCAnbmFtZSddLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIF07XG5cbiAgICAvLyBSdW4gYWxsIHRlc3QgY2FzZXNcbiAgICBmaWx0ZXIodGVzdENhc2VzKS5mb3JFYWNoKCh7IG5hbWUsIGlucHV0LCBvcHRpb25zLCBleHBlY3RlZCB9KSA9PiB7XG4gICAgICBpdChuYW1lLCAoKSA9PiB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IEpzb25TY2hlbWFHZW5lcmF0b3IuZ2VuZXJhdGUoaW5wdXQsIG9wdGlvbnMpO1xuICAgICAgICBleHBlY3QocmVzdWx0KS50b0VxdWFsKGV4cGVjdGVkKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9KTtcblxuICBkZXNjcmliZSgndmFsaWRhdGUoKScsICgpID0+IHtcbiAgICB0eXBlIFZhbGlkYXRlVGVzdENhc2UgPSBCYXNlVGVzdENhc2UgJiB7XG4gICAgICBuYW1lOiBzdHJpbmc7XG4gICAgICBpbnB1dDogdW5rbm93bjtcbiAgICAgIHNjaGVtYTogSlNPTlNjaGVtYVR5cGU7XG4gICAgICBleHBlY3RlZEVycm9yOiBzdHJpbmc7XG4gICAgfTtcblxuICAgIGNvbnN0IGVycm9yVGVzdENhc2VzOiBWYWxpZGF0ZVRlc3RDYXNlW10gPSBbXG4gICAgICB7XG4gICAgICAgIG5hbWU6ICdpbnZhbGlkIHNjaGVtYSB0eXBlJyxcbiAgICAgICAgaW5wdXQ6IDEyMyxcbiAgICAgICAgc2NoZW1hOiB7IHR5cGU6ICdzdHJpbmcnIH0sXG4gICAgICAgIGV4cGVjdGVkRXJyb3I6ICdWYWxpZGF0aW9uIGZhaWxlZCcsXG4gICAgICB9LFxuICAgIF07XG5cbiAgICBmaWx0ZXIoZXJyb3JUZXN0Q2FzZXMpLmZvckVhY2goKHsgbmFtZSwgaW5wdXQsIHNjaGVtYSwgZXhwZWN0ZWRFcnJvciB9KSA9PiB7XG4gICAgICBpdChuYW1lLCAoKSA9PiB7XG4gICAgICAgIGV4cGVjdCgoKSA9PiBKc29uU2NoZW1hR2VuZXJhdG9yLnZhbGlkYXRlKGlucHV0LCBzY2hlbWEpKS50b1Rocm93KGV4cGVjdGVkRXJyb3IpO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH0pO1xufSk7XG4iXX0=
@@ -1,7 +1,6 @@
1
1
  /// <reference types="node" />
2
2
  import get from 'get-value';
3
3
  import set from 'set-value';
4
- import { Metadata, RudderStackEvent } from '../types';
5
4
  export { get, set };
6
5
  export declare const isDefined: (x: unknown) => boolean;
7
6
  export declare const isNotEmpty: (x: unknown) => boolean;
@@ -19,7 +18,6 @@ export declare const removeUndefinedAndNullAndEmptyValues: (obj: unknown) => unk
19
18
  * @returns
20
19
  */
21
20
  export declare const flattenMap: (collection: unknown) => unknown;
22
- export declare const getEventTime: (message: RudderStackEvent) => Date;
23
21
  export declare const base64Convertor: (string: string) => string;
24
22
  export declare const isValidUrl: (url: string | URL) => URL | null;
25
23
  export declare const stripTrailingSlash: (str: string) => string;
@@ -33,7 +31,7 @@ export declare const isPrimitive: (arg: unknown) => boolean;
33
31
  * for null argss returns "NULL" insted of "object"
34
32
  *
35
33
  */
36
- export declare const getType: (arg: unknown) => "string" | "number" | "bigint" | "boolean" | "symbol" | "undefined" | "object" | "function" | "NULL" | "array";
34
+ export declare const getType: (arg: unknown) => "string" | "number" | "bigint" | "boolean" | "symbol" | "undefined" | "object" | "function" | "array" | "NULL";
37
35
  export declare const isObject: (value: unknown) => boolean;
38
36
  export declare const isEmpty: (input: unknown) => boolean;
39
37
  /**
@@ -126,13 +124,7 @@ export declare const hashToSha256: (value: string | Buffer | number[]) => string
126
124
  * @see {@link https://nodejs.org/api/crypto.html#cryptorandomuuidoptions:~:text=options%20%3CObject%3E-,disableEntropyCache,-%3Cboolean%3E%20By}
127
125
  */
128
126
  export declare const generateUUID: () => string;
129
- export declare const getErrorRespEvents: (metadata: Metadata[], statusCode: number, error: string, statTags: Object, batched?: boolean) => {
130
- metadata: Metadata[];
131
- statusCode: number;
132
- error: string;
133
- statTags: Object;
134
- batched: boolean;
135
- };
136
127
  export declare const convertToString: (value: any) => string;
137
128
  export declare const uuidv5: (val: string) => string;
129
+ export declare const generateRandomString: (length?: number) => string;
138
130
  //# sourceMappingURL=misc.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"misc.d.ts","sourceRoot":"","sources":["../../src/utils/misc.ts"],"names":[],"mappings":";AACA,OAAO,GAAG,MAAM,WAAW,CAAC;AAC5B,OAAO,GAAG,MAAM,WAAW,CAAC;AAM5B,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAMtD,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;AACpB,eAAO,MAAM,SAAS,MAAO,OAAO,YAAsB,CAAC;AAC3D,eAAO,MAAM,UAAU,MAAO,OAAO,YAAkB,CAAC;AACxD,eAAO,MAAM,SAAS,MAAO,OAAO,YAAc,CAAC;AACnD,eAAO,MAAM,mBAAmB,MAAO,OAAO,YAAiC,CAAC;AAChF,eAAO,MAAM,8BAA8B,MAAO,OAAO,YACV,CAAC;AAChD,eAAO,MAAM,OAAO,UAAW,OAAO,YAAiC,CAAC;AAGxE,eAAO,MAAM,qBAAqB,QAAS,OAAO,YAGjD,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAS,OAAO,YAG5C,CAAC;AACF,eAAO,MAAM,4BAA4B,QAAS,OAAO,YAGxD,CAAC;AACF,eAAO,MAAM,oCAAoC,QAAS,OAAO,YAGhE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,UAAU,eAAgB,OAAO,YAG7C,CAAC;AAMF,eAAO,MAAM,YAAY,YAAa,gBAAgB,SASrD,CAAC;AAEF,eAAO,MAAM,eAAe,WAAY,MAAM,WAA2C,CAAC;AAG1F,eAAO,MAAM,UAAU,QAAS,MAAM,GAAG,GAAG,eAM3C,CAAC;AAEF,eAAO,MAAM,kBAAkB,QAAS,MAAM,WACK,CAAC;AAEpD,eAAO,MAAM,WAAW,QAAS,OAAO,YAGvC,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,OAAO,QAAS,OAAO,mHASnC,CAAC;AAEF,eAAO,MAAM,QAAQ,UAAW,OAAO,YAGtC,CAAC;AAEF,eAAO,MAAM,OAAO,UAAW,OAAO,YAAwC,CAAC;AAE/E;;;;GAIG;AACH,eAAO,MAAM,aAAa,QAAS,GAAG,YAMrC,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,UAAW,OAAO,YAOpD,CAAC;AAEJ,eAAO,MAAM,mCAAmC,QAAS,OAAO,YAG/D,CAAC;AAGF,eAAO,MAAM,gBAAgB,8EAU5B,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,6BAA6B,WAChC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,gEAsBvC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,iCAAiC,8DAS7C,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,8BAA8B;;;SAQ1C,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,SAAU,OAAO,0CA+BxC,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,UAAW,MAAM,uBAY3C,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,eAAe,YAAa,MAAM,WAAW,MAAM,oBAS/D,CAAC;AAEF,eAAO,MAAM,YAAY,UAAW,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,WAAkB,CAAC;AAEjF;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,QAAO,MAA0D,CAAC;AAI3F,eAAO,MAAM,kBAAkB,aACnB,QAAQ,EAAE,cACR,MAAM,SACX,MAAM,YACH,MAAM,YACP,OAAO;cAEN,QAAQ,EAAE;gBACR,MAAM;WACX,MAAM;cACH,MAAM;aACP,OAAO;CAOhB,CAAC;AAEH,eAAO,MAAM,eAAe,UAAW,GAAG,WAKzC,CAAC;AAGF,eAAO,MAAM,MAAM,QAAS,MAAM,WAA4B,CAAC"}
1
+ {"version":3,"file":"misc.d.ts","sourceRoot":"","sources":["../../src/utils/misc.ts"],"names":[],"mappings":";AACA,OAAO,GAAG,MAAM,WAAW,CAAC;AAC5B,OAAO,GAAG,MAAM,WAAW,CAAC;AAU5B,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;AACpB,eAAO,MAAM,SAAS,MAAO,OAAO,YAAsB,CAAC;AAC3D,eAAO,MAAM,UAAU,MAAO,OAAO,YAAkB,CAAC;AACxD,eAAO,MAAM,SAAS,MAAO,OAAO,YAAc,CAAC;AACnD,eAAO,MAAM,mBAAmB,MAAO,OAAO,YAAiC,CAAC;AAChF,eAAO,MAAM,8BAA8B,MAAO,OAAO,YACV,CAAC;AAChD,eAAO,MAAM,OAAO,UAAW,OAAO,YAAiC,CAAC;AAGxE,eAAO,MAAM,qBAAqB,QAAS,OAAO,YAGjD,CAAC;AAEF,eAAO,MAAM,gBAAgB,QAAS,OAAO,YAG5C,CAAC;AACF,eAAO,MAAM,4BAA4B,QAAS,OAAO,YAGxD,CAAC;AACF,eAAO,MAAM,oCAAoC,QAAS,OAAO,YAGhE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,UAAU,eAAgB,OAAO,YAG7C,CAAC;AAMF,eAAO,MAAM,eAAe,WAAY,MAAM,WAA2C,CAAC;AAG1F,eAAO,MAAM,UAAU,QAAS,MAAM,GAAG,GAAG,eAM3C,CAAC;AAEF,eAAO,MAAM,kBAAkB,QAAS,MAAM,WACK,CAAC;AAEpD,eAAO,MAAM,WAAW,QAAS,OAAO,YAGvC,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,OAAO,QAAS,OAAO,mHASnC,CAAC;AAEF,eAAO,MAAM,QAAQ,UAAW,OAAO,YAGtC,CAAC;AAEF,eAAO,MAAM,OAAO,UAAW,OAAO,YAAwC,CAAC;AAE/E;;;;GAIG;AACH,eAAO,MAAM,aAAa,QAAS,GAAG,YAMrC,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,UAAW,OAAO,YAOpD,CAAC;AAEJ,eAAO,MAAM,mCAAmC,QAAS,OAAO,YAG/D,CAAC;AAGF,eAAO,MAAM,gBAAgB,8EAU5B,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,6BAA6B,WAChC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,EAAE,gEAsBvC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,iCAAiC,8DAS7C,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,8BAA8B;;;SAQ1C,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,SAAU,OAAO,0CA+BxC,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,UAAW,MAAM,uBAY3C,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,eAAe,YAAa,MAAM,WAAW,MAAM,oBAS/D,CAAC;AAEF,eAAO,MAAM,YAAY,UAAW,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,WAAkB,CAAC;AAEjF;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY,QAAO,MAA0D,CAAC;AAE3F,eAAO,MAAM,eAAe,UAAW,GAAG,WAKzC,CAAC;AAGF,eAAO,MAAM,MAAM,QAAS,MAAM,WAA4B,CAAC;AAE/D,eAAO,MAAM,oBAAoB,YAAY,MAAM,WACU,CAAC"}