typia 6.0.5 → 6.0.6-dev.20240604

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.
package/lib/index.mjs ADDED
@@ -0,0 +1,1921 @@
1
+ import RandExp from "randexp";
2
+
3
+ const ALPHABETS = "abcdefghijklmnopqrstuvwxyz";
4
+
5
+ const boolean$4 = () => Math.random() < .5;
6
+
7
+ const integer = (min, max) => {
8
+ min ?? (min = 0);
9
+ max ?? (max = 100);
10
+ return Math.floor(Math.random() * (max - min + 1)) + min;
11
+ };
12
+
13
+ const bigint$4 = (min, max) => BigInt(integer(Number(min ?? BigInt(0)), Number(max ?? BigInt(100))));
14
+
15
+ const number$4 = (min, max) => {
16
+ min ?? (min = 0);
17
+ max ?? (max = 100);
18
+ return Math.random() * (max - min) + min;
19
+ };
20
+
21
+ const string$4 = length => new Array(length ?? integer(5, 10)).fill(0).map((() => ALPHABETS[integer(0, ALPHABETS.length - 1)])).join("");
22
+
23
+ const array$2 = (closure, count) => new Array(count ?? length()).fill(0).map(((_e, index) => closure(index)));
24
+
25
+ const pick = array => array[integer(0, array.length - 1)];
26
+
27
+ const length = () => integer(0, 3);
28
+
29
+ const pattern = regex => {
30
+ const r = new RandExp(regex);
31
+ for (let i = 0; i < 10; ++i) {
32
+ const str = r.gen();
33
+ if (regex.test(str)) return str;
34
+ }
35
+ return r.gen();
36
+ };
37
+
38
+ const byte = () => "vt7ekz4lIoNTTS9sDQYdWKharxIFAR54+z/umIxSgUM=";
39
+
40
+ const password = () => string$4(integer(4, 16));
41
+
42
+ const regex = () => "/^(?:(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]?\\d)$/";
43
+
44
+ const uuid = () => "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, (c => {
45
+ const r = Math.random() * 16 | 0;
46
+ const v = c === "x" ? r : r & 3 | 8;
47
+ return v.toString(16);
48
+ }));
49
+
50
+ const email = () => `${string$4(10)}@${string$4(10)}.${string$4(3)}`;
51
+
52
+ const hostname = () => `${string$4(10)}.${string$4(3)}`;
53
+
54
+ const idnEmail = () => email();
55
+
56
+ const idnHostname = () => hostname();
57
+
58
+ const iri = () => url();
59
+
60
+ const iriReference = () => url();
61
+
62
+ const ipv4 = () => array$2((() => integer(0, 255)), 4).join(".");
63
+
64
+ const ipv6 = () => array$2((() => integer(0, 65535).toString(16)), 8).join(":");
65
+
66
+ const uri = () => url();
67
+
68
+ const uriReference = () => url();
69
+
70
+ const uriTemplate = () => url();
71
+
72
+ const url = () => `https://${string$4(10)}.${string$4(3)}`;
73
+
74
+ const datetime = (min, max) => new Date(number$4(min ?? Date.now() - 30 * DAY, max ?? Date.now() + 7 * DAY)).toISOString();
75
+
76
+ const date = (min, max) => new Date(number$4(min ?? 0, max ?? Date.now() * 2)).toISOString().substring(0, 10);
77
+
78
+ const time = () => new Date(number$4(0, DAY)).toISOString().substring(11);
79
+
80
+ const duration = () => {
81
+ const period = durate([ [ "Y", integer(0, 100) ], [ "M", integer(0, 12) ], [ "D", integer(0, 31) ] ]);
82
+ const time = durate([ [ "H", integer(0, 24) ], [ "M", integer(0, 60) ], [ "S", integer(0, 60) ] ]);
83
+ if (period.length + time.length === 0) return "PT0S";
84
+ return `P${period}${time.length ? "T" : ""}${time}`;
85
+ };
86
+
87
+ const jsonPointer = () => `/components/schemas/${string$4(10)}`;
88
+
89
+ const relativeJsonPointer = () => `${integer(0, 10)}#`;
90
+
91
+ const DAY = 864e5;
92
+
93
+ const durate = elements => elements.filter((([_unit, value]) => value !== 0)).map((([unit, value]) => `${value}${unit}`)).join("");
94
+
95
+ var RandomGenerator = Object.freeze({
96
+ __proto__: null,
97
+ array: array$2,
98
+ bigint: bigint$4,
99
+ boolean: boolean$4,
100
+ byte,
101
+ date,
102
+ datetime,
103
+ duration,
104
+ email,
105
+ hostname,
106
+ idnEmail,
107
+ idnHostname,
108
+ integer,
109
+ ipv4,
110
+ ipv6,
111
+ iri,
112
+ iriReference,
113
+ jsonPointer,
114
+ length,
115
+ number: number$4,
116
+ password,
117
+ pattern,
118
+ pick,
119
+ regex,
120
+ relativeJsonPointer,
121
+ string: string$4,
122
+ time,
123
+ uri,
124
+ uriReference,
125
+ uriTemplate,
126
+ url,
127
+ uuid
128
+ });
129
+
130
+ const $every = (array, pred) => {
131
+ let error = null;
132
+ for (let i = 0; i < array.length; ++i) if (null !== (error = pred(array[i], i))) return error;
133
+ return null;
134
+ };
135
+
136
+ class TypeGuardError extends Error {
137
+ constructor(props) {
138
+ super(props.message || `Error on ${props.method}(): invalid type${props.path ? ` on ${props.path}` : ""}, expect to be ${props.expected}`);
139
+ const proto = new.target.prototype;
140
+ if (Object.setPrototypeOf) Object.setPrototypeOf(this, proto); else this.__proto__ = proto;
141
+ this.method = props.method;
142
+ this.path = props.path;
143
+ this.expected = props.expected;
144
+ this.value = props.value;
145
+ }
146
+ }
147
+
148
+ const $guard = method => (exceptionable, props, factory) => {
149
+ if (exceptionable === true) throw (factory ?? (props => new TypeGuardError(props)))({
150
+ method,
151
+ path: props.path,
152
+ expected: props.expected,
153
+ value: props.value
154
+ });
155
+ return false;
156
+ };
157
+
158
+ const $join = str => variable(str) ? `.${str}` : `[${JSON.stringify(str)}]`;
159
+
160
+ const variable = str => reserved(str) === false && /^[a-zA-Z_$][a-zA-Z_$0-9]*$/g.test(str);
161
+
162
+ const reserved = str => RESERVED.has(str);
163
+
164
+ const RESERVED = new Set([ "break", "case", "catch", "class", "const", "continue", "debugger", "default", "delete", "do", "else", "enum", "export", "extends", "false", "finally", "for", "function", "if", "import", "in", "instanceof", "new", "null", "return", "super", "switch", "this", "throw", "true", "try", "typeof", "var", "void", "while", "with" ]);
165
+
166
+ const $report = array => {
167
+ const reportable = path => {
168
+ if (array.length === 0) return true;
169
+ const last = array[array.length - 1].path;
170
+ return path.length > last.length || last.substring(0, path.length) !== path;
171
+ };
172
+ return (exceptable, error) => {
173
+ if (exceptable && reportable(error.path)) array.push(error);
174
+ return false;
175
+ };
176
+ };
177
+
178
+ const $is_between = (value, minimum, maximum) => minimum <= value && value <= maximum;
179
+
180
+ const $is_bigint_string = str => {
181
+ try {
182
+ BigInt(str);
183
+ return true;
184
+ } catch {
185
+ return false;
186
+ }
187
+ };
188
+
189
+ const is$1 = () => ({
190
+ is_between: $is_between,
191
+ is_bigint_string: $is_bigint_string
192
+ });
193
+
194
+ const functionalAssert = () => ({
195
+ errorFactory: p => new TypeGuardError(p)
196
+ });
197
+
198
+ const $number = value => {
199
+ if (isFinite(value) === false) throw new TypeGuardError({
200
+ method: "typia.json.stringify",
201
+ expected: "number",
202
+ value,
203
+ message: "Error on typia.json.stringify(): infinite or not a number."
204
+ });
205
+ return value;
206
+ };
207
+
208
+ const $rest = str => str.length === 2 ? "" : "," + str.substring(1, str.length - 1);
209
+
210
+ const $string = str => {
211
+ const len = str.length;
212
+ let result = "";
213
+ let last = -1;
214
+ let point = 255;
215
+ for (var i = 0; i < len; i++) {
216
+ point = str.charCodeAt(i);
217
+ if (point < 32) {
218
+ return JSON.stringify(str);
219
+ }
220
+ if (point >= 55296 && point <= 57343) {
221
+ return JSON.stringify(str);
222
+ }
223
+ if (point === 34 || point === 92) {
224
+ last === -1 && (last = 0);
225
+ result += str.slice(last, i) + "\\";
226
+ last = i;
227
+ }
228
+ }
229
+ return last === -1 && '"' + str + '"' || '"' + result + str.slice(last) + '"';
230
+ };
231
+
232
+ const $tail = str => str[str.length - 1] === "," ? str.substring(0, str.length - 1) : str;
233
+
234
+ const $throws = method => props => {
235
+ throw new TypeGuardError({
236
+ ...props,
237
+ method: `typia.${method}`
238
+ });
239
+ };
240
+
241
+ const stringify$1 = method => ({
242
+ ...is$1(),
243
+ number: $number,
244
+ string: $string,
245
+ tail: $tail,
246
+ rest: $rest,
247
+ throws: $throws(`json.${method}`)
248
+ });
249
+
250
+ const boolean$3 = input => input instanceof File ? input : input === null ? undefined : input === "null" ? null : input.length === 0 ? true : input === "true" || input === "1" ? true : input === "false" || input === "0" ? false : input;
251
+
252
+ const number$3 = input => input instanceof File ? input : !!input?.length ? input === "null" ? null : toNumber$3(input) : undefined;
253
+
254
+ const bigint$3 = input => input instanceof File ? input : !!input?.length ? input === "null" ? null : toBigint$3(input) : undefined;
255
+
256
+ const string$3 = input => input instanceof File ? input : input === null ? undefined : input === "null" ? null : input;
257
+
258
+ const array$1 = (input, alternative) => input.length ? input : alternative;
259
+
260
+ const blob = input => input instanceof Blob ? input : input === null ? undefined : input === "null" ? null : input;
261
+
262
+ const file = input => input instanceof File ? input : input === null ? undefined : input === "null" ? null : input;
263
+
264
+ const toNumber$3 = str => {
265
+ const value = Number(str);
266
+ return isNaN(value) ? str : value;
267
+ };
268
+
269
+ const toBigint$3 = str => {
270
+ try {
271
+ return BigInt(str);
272
+ } catch {
273
+ return str;
274
+ }
275
+ };
276
+
277
+ var $FormDataReader = Object.freeze({
278
+ __proto__: null,
279
+ array: array$1,
280
+ bigint: bigint$3,
281
+ blob,
282
+ boolean: boolean$3,
283
+ file,
284
+ number: number$3,
285
+ string: string$3
286
+ });
287
+
288
+ const boolean$2 = value => value !== undefined ? value === "true" ? true : value === "false" ? false : value : undefined;
289
+
290
+ const bigint$2 = value => value !== undefined ? toBigint$2(value) : undefined;
291
+
292
+ const number$2 = value => value !== undefined ? toNumber$2(value) : undefined;
293
+
294
+ const string$2 = value => value;
295
+
296
+ const toBigint$2 = str => {
297
+ try {
298
+ return BigInt(str);
299
+ } catch {
300
+ return str;
301
+ }
302
+ };
303
+
304
+ const toNumber$2 = str => {
305
+ const value = Number(str);
306
+ return isNaN(value) ? str : value;
307
+ };
308
+
309
+ var $HeadersReader = Object.freeze({
310
+ __proto__: null,
311
+ bigint: bigint$2,
312
+ boolean: boolean$2,
313
+ number: number$2,
314
+ string: string$2
315
+ });
316
+
317
+ const boolean$1 = value => value !== "null" ? value === "true" || value === "1" ? true : value === "false" || value === "0" ? false : value : null;
318
+
319
+ const bigint$1 = value => value !== "null" ? toBigint$1(value) : null;
320
+
321
+ const number$1 = value => value !== "null" ? toNumber$1(value) : null;
322
+
323
+ const string$1 = value => value !== "null" ? value : null;
324
+
325
+ const toNumber$1 = str => {
326
+ const value = Number(str);
327
+ return isNaN(value) ? str : value;
328
+ };
329
+
330
+ const toBigint$1 = str => {
331
+ try {
332
+ return BigInt(str);
333
+ } catch {
334
+ return str;
335
+ }
336
+ };
337
+
338
+ var $ParameterReader = Object.freeze({
339
+ __proto__: null,
340
+ bigint: bigint$1,
341
+ boolean: boolean$1,
342
+ number: number$1,
343
+ string: string$1
344
+ });
345
+
346
+ const boolean = str => str === null ? undefined : str === "null" ? null : str.length === 0 ? true : str === "true" || str === "1" ? true : str === "false" || str === "0" ? false : str;
347
+
348
+ const number = str => !!str?.length ? str === "null" ? null : toNumber(str) : undefined;
349
+
350
+ const bigint = str => !!str?.length ? str === "null" ? null : toBigint(str) : undefined;
351
+
352
+ const string = str => str === null ? undefined : str === "null" ? null : str;
353
+
354
+ const params = input => {
355
+ if (typeof input === "string") {
356
+ const index = input.indexOf("?");
357
+ input = index === -1 ? "" : input.substring(index + 1);
358
+ return new URLSearchParams(input);
359
+ }
360
+ return input;
361
+ };
362
+
363
+ const array = (input, alternative) => input.length ? input : alternative;
364
+
365
+ const toNumber = str => {
366
+ const value = Number(str);
367
+ return isNaN(value) ? str : value;
368
+ };
369
+
370
+ const toBigint = str => {
371
+ try {
372
+ return BigInt(str);
373
+ } catch {
374
+ return str;
375
+ }
376
+ };
377
+
378
+ var $QueryReader = Object.freeze({
379
+ __proto__: null,
380
+ array,
381
+ bigint,
382
+ boolean,
383
+ number,
384
+ params,
385
+ string
386
+ });
387
+
388
+ const formData$1 = () => $FormDataReader;
389
+
390
+ const headers$1 = () => $HeadersReader;
391
+
392
+ const parameter$1 = () => $ParameterReader;
393
+
394
+ const query$1 = () => $QueryReader;
395
+
396
+ const capitalize = str => str.length ? str[0].toUpperCase() + str.slice(1) : str;
397
+
398
+ function snake$2(str) {
399
+ const indexes = [];
400
+ for (let i = 0; i < str.length; i++) {
401
+ const code = str.charCodeAt(i);
402
+ if (65 <= code && code <= 90) indexes.push(i);
403
+ }
404
+ for (let i = indexes.length - 1; i > 0; --i) {
405
+ const now = indexes[i];
406
+ const prev = indexes[i - 1];
407
+ if (now - prev === 1) indexes.splice(i, 1);
408
+ }
409
+ if (indexes.length !== 0 && indexes[0] === 0) indexes.splice(0, 1);
410
+ if (indexes.length === 0) return str.toLowerCase();
411
+ let ret = "";
412
+ for (let i = 0; i < indexes.length; i++) {
413
+ const first = i === 0 ? 0 : indexes[i - 1];
414
+ const last = indexes[i];
415
+ ret += str.substring(first, last).toLowerCase();
416
+ ret += "_";
417
+ }
418
+ ret += str.substring(indexes[indexes.length - 1]).toLowerCase();
419
+ return ret;
420
+ }
421
+
422
+ function camel$2(str) {
423
+ return unsnake((str => {
424
+ if (str.length === 0) return str; else if (str[0] === str[0].toUpperCase()) return str[0].toLowerCase() + str.substring(1); else return str;
425
+ }))(str);
426
+ }
427
+
428
+ function pascal$2(str) {
429
+ return unsnake((str => {
430
+ if (str.length === 0) return str; else if (str[0] === str[0].toLowerCase()) return str[0].toUpperCase() + str.substring(1); else return str;
431
+ }))(str);
432
+ }
433
+
434
+ const unsnake = escaper => str => {
435
+ let prefix = "";
436
+ for (let i = 0; i < str.length; i++) {
437
+ if (str[i] === "_") prefix += "_"; else break;
438
+ }
439
+ if (prefix.length !== 0) str = str.substring(prefix.length);
440
+ const indexes = [];
441
+ for (let i = 0; i < str.length; i++) {
442
+ const ch = str[i];
443
+ if (ch !== "_") continue;
444
+ const last = indexes[indexes.length - 1];
445
+ if (last === undefined || last[0] + last[1] !== i) indexes.push([ i, 1 ]); else ++last[1];
446
+ }
447
+ if (indexes.length === 0) return prefix + escaper(str);
448
+ let ret = "";
449
+ for (let i = 0; i < indexes.length; i++) {
450
+ const [first] = indexes[i];
451
+ if (i === 0) if (first === 0) ret += "_"; else ret += str.substring(0, first); else {
452
+ const [prevFirst, prevLength] = indexes[i - 1];
453
+ const piece = str.substring(prevFirst + prevLength, first);
454
+ if (piece.length) ret += capitalize(piece);
455
+ }
456
+ }
457
+ const last = indexes[indexes.length - 1];
458
+ const piece = str.substring(last[0] + last[1]);
459
+ if (last.length) ret += capitalize(piece);
460
+ return prefix + escaper(ret);
461
+ };
462
+
463
+ const $convention = rename => {
464
+ const main = input => {
465
+ if (typeof input === "object") if (input === null) return null; else if (Array.isArray(input)) return input.map(main); else if (input instanceof Boolean || input instanceof BigInt || input instanceof Number || input instanceof String) return input.valueOf(); else if (input instanceof Date) return new Date(input); else if (input instanceof Uint8Array || input instanceof Uint8ClampedArray || input instanceof Uint16Array || input instanceof Uint32Array || input instanceof BigUint64Array || input instanceof Int8Array || input instanceof Int16Array || input instanceof Int32Array || input instanceof BigInt64Array || input instanceof Float32Array || input instanceof Float64Array || input instanceof DataView) return input; else return object(input);
466
+ return input;
467
+ };
468
+ const object = input => Object.fromEntries(Object.entries(input).map((([key, value]) => [ rename(key), main(value) ])));
469
+ return main;
470
+ };
471
+
472
+ const camel$1 = method => ({
473
+ ...base(method),
474
+ any: $convention(camel$2)
475
+ });
476
+
477
+ const pascal$1 = method => ({
478
+ ...base(method),
479
+ any: $convention(pascal$2)
480
+ });
481
+
482
+ const snake$1 = method => ({
483
+ ...base(method),
484
+ any: $convention(snake$2)
485
+ });
486
+
487
+ const base = method => ({
488
+ ...is$1(),
489
+ throws: $throws(`notations.${method}`)
490
+ });
491
+
492
+ const $clone = value => JSON.parse(JSON.stringify(value));
493
+
494
+ const $any = val => val !== undefined ? $clone(val) : undefined;
495
+
496
+ const clone$1 = method => ({
497
+ ...is$1(),
498
+ throws: $throws(`misc.${method}`),
499
+ any: $any
500
+ });
501
+
502
+ const prune$1 = method => ({
503
+ ...is$1(),
504
+ throws: $throws(`misc.${method}`)
505
+ });
506
+
507
+ class $ProtobufReader {
508
+ constructor(buf) {
509
+ this.buf = buf;
510
+ this.ptr = 0;
511
+ this.view = new DataView(buf.buffer, buf.byteOffset, buf.byteLength);
512
+ }
513
+ index() {
514
+ return this.ptr;
515
+ }
516
+ size() {
517
+ return this.buf.length;
518
+ }
519
+ uint32() {
520
+ return this.varint32();
521
+ }
522
+ int32() {
523
+ return this.varint32();
524
+ }
525
+ sint32() {
526
+ const value = this.varint32();
527
+ return value >>> 1 ^ -(value & 1);
528
+ }
529
+ uint64() {
530
+ return this.varint64();
531
+ }
532
+ int64() {
533
+ return this.varint64();
534
+ }
535
+ sint64() {
536
+ const value = this.varint64();
537
+ return value >> N01 ^ -(value & N01);
538
+ }
539
+ bool() {
540
+ return this.varint32() !== 0;
541
+ }
542
+ float() {
543
+ const value = this.view.getFloat32(this.ptr, true);
544
+ this.ptr += 4;
545
+ return value;
546
+ }
547
+ double() {
548
+ const value = this.view.getFloat64(this.ptr, true);
549
+ this.ptr += 8;
550
+ return value;
551
+ }
552
+ bytes() {
553
+ const length = this.uint32();
554
+ const from = this.ptr;
555
+ this.ptr += length;
556
+ return this.buf.subarray(from, from + length);
557
+ }
558
+ string() {
559
+ return utf8$1.decode(this.bytes());
560
+ }
561
+ skip(length) {
562
+ if (length === 0) while (this.u8() & 128) ; else {
563
+ if (this.index() + length > this.size()) throw new Error("Error on typia.protobuf.decode(): buffer overflow.");
564
+ this.ptr += length;
565
+ }
566
+ }
567
+ skipType(wireType) {
568
+ switch (wireType) {
569
+ case 0:
570
+ this.skip(0);
571
+ break;
572
+
573
+ case 1:
574
+ this.skip(8);
575
+ break;
576
+
577
+ case 2:
578
+ this.skip(this.uint32());
579
+ break;
580
+
581
+ case 3:
582
+ while ((wireType = this.uint32() & 7) !== 4) this.skipType(wireType);
583
+ break;
584
+
585
+ case 5:
586
+ this.skip(4);
587
+ break;
588
+
589
+ default:
590
+ throw new Error(`Invalid wire type ${wireType} at offset ${this.ptr}.`);
591
+ }
592
+ }
593
+ varint32() {
594
+ let loaded;
595
+ let value;
596
+ value = (loaded = this.u8()) & 127;
597
+ if (loaded < 128) return value;
598
+ value |= ((loaded = this.u8()) & 127) << 7;
599
+ if (loaded < 128) return value;
600
+ value |= ((loaded = this.u8()) & 127) << 14;
601
+ if (loaded < 128) return value;
602
+ value |= ((loaded = this.u8()) & 127) << 21;
603
+ if (loaded < 128) return value;
604
+ value |= ((loaded = this.u8()) & 15) << 28;
605
+ if (loaded < 128) return value;
606
+ if (this.u8() < 128) return value;
607
+ if (this.u8() < 128) return value;
608
+ if (this.u8() < 128) return value;
609
+ if (this.u8() < 128) return value;
610
+ if (this.u8() < 128) return value;
611
+ return value;
612
+ }
613
+ varint64() {
614
+ let loaded;
615
+ let value;
616
+ value = (loaded = this.u8n()) & N7F;
617
+ if (loaded < N80) return value;
618
+ value |= ((loaded = this.u8n()) & N7F) << BigInt(7);
619
+ if (loaded < N80) return value;
620
+ value |= ((loaded = this.u8n()) & N7F) << BigInt(14);
621
+ if (loaded < N80) return value;
622
+ value |= ((loaded = this.u8n()) & N7F) << BigInt(21);
623
+ if (loaded < N80) return value;
624
+ value |= ((loaded = this.u8n()) & N7F) << BigInt(28);
625
+ if (loaded < N80) return value;
626
+ value |= ((loaded = this.u8n()) & N7F) << BigInt(35);
627
+ if (loaded < N80) return value;
628
+ value |= ((loaded = this.u8n()) & N7F) << BigInt(42);
629
+ if (loaded < N80) return value;
630
+ value |= ((loaded = this.u8n()) & N7F) << BigInt(49);
631
+ if (loaded < N80) return value;
632
+ value |= ((loaded = this.u8n()) & N7F) << BigInt(56);
633
+ if (loaded < N80) return value;
634
+ value |= (this.u8n() & N01) << BigInt(63);
635
+ return BigInt.asIntN(64, value);
636
+ }
637
+ u8() {
638
+ return this.view.getUint8(this.ptr++);
639
+ }
640
+ u8n() {
641
+ return BigInt(this.u8());
642
+ }
643
+ }
644
+
645
+ const utf8$1 = new TextDecoder;
646
+
647
+ const N01 = BigInt(1);
648
+
649
+ const N7F = BigInt(127);
650
+
651
+ const N80 = BigInt(128);
652
+
653
+ const $strlen = s => {
654
+ let b;
655
+ let i;
656
+ let c;
657
+ for (b = i = 0; c = s.charCodeAt(i++); b += c >> 11 ? 3 : c >> 7 ? 2 : 1) ;
658
+ return b;
659
+ };
660
+
661
+ class $ProtobufSizer {
662
+ constructor(length = 0) {
663
+ this.len = length;
664
+ this.pos = [];
665
+ this.varlen = [];
666
+ this.varlenidx = [];
667
+ }
668
+ bool() {
669
+ this.len += 1;
670
+ }
671
+ int32(value) {
672
+ if (value < 0) {
673
+ this.len += 10;
674
+ } else {
675
+ this.varint32(value);
676
+ }
677
+ }
678
+ sint32(value) {
679
+ this.varint32(value << 1 ^ value >> 31);
680
+ }
681
+ uint32(value) {
682
+ this.varint32(value);
683
+ }
684
+ int64(value) {
685
+ this.varint64(typeof value === "number" ? BigInt(value) : value);
686
+ }
687
+ sint64(value) {
688
+ if (typeof value === "number") value = BigInt(value);
689
+ this.varint64(value << BigInt(1) ^ value >> BigInt(63));
690
+ }
691
+ uint64(value) {
692
+ this.varint64(typeof value === "number" ? BigInt(value) : value);
693
+ }
694
+ float(_value) {
695
+ this.len += 4;
696
+ }
697
+ double(_value) {
698
+ this.len += 8;
699
+ }
700
+ bytes(value) {
701
+ this.uint32(value.byteLength);
702
+ this.len += value.byteLength;
703
+ }
704
+ string(value) {
705
+ const len = $strlen(value);
706
+ this.varlen.push(len);
707
+ this.uint32(len);
708
+ this.len += len;
709
+ }
710
+ fork() {
711
+ this.pos.push(this.len);
712
+ this.varlenidx.push(this.varlen.length);
713
+ this.varlen.push(0);
714
+ }
715
+ ldelim() {
716
+ if (!(this.pos.length && this.varlenidx.length)) throw new Error("Error on typia.protobuf.encode(): missing fork() before ldelim() call.");
717
+ const endPos = this.len;
718
+ const startPos = this.pos.pop();
719
+ const idx = this.varlenidx.pop();
720
+ const len = endPos - startPos;
721
+ this.varlen[idx] = len;
722
+ this.uint32(len);
723
+ }
724
+ reset() {
725
+ this.len = 0;
726
+ this.pos.length = 0;
727
+ this.varlen.length = 0;
728
+ this.varlenidx.length = 0;
729
+ }
730
+ varint32(value) {
731
+ this.len += value < 0 ? 10 : value < 128 ? 1 : value < 16384 ? 2 : value < 2097152 ? 3 : value < 268435456 ? 4 : 5;
732
+ }
733
+ varint64(val) {
734
+ val = BigInt.asUintN(64, val);
735
+ while (val > NX7F$1) {
736
+ ++this.len;
737
+ val = val >> ND07$1;
738
+ }
739
+ ++this.len;
740
+ }
741
+ }
742
+
743
+ const ND07$1 = BigInt(7);
744
+
745
+ const NX7F$1 = BigInt(127);
746
+
747
+ class $ProtobufWriter {
748
+ constructor(sizer) {
749
+ this.sizer = sizer;
750
+ this.buf = new Uint8Array(sizer.len);
751
+ this.view = new DataView(this.buf.buffer);
752
+ this.ptr = 0;
753
+ this.varlenidx = 0;
754
+ }
755
+ buffer() {
756
+ return this.buf;
757
+ }
758
+ bool(value) {
759
+ this.byte(value ? 1 : 0);
760
+ }
761
+ byte(value) {
762
+ this.buf[this.ptr++] = value & 255;
763
+ }
764
+ int32(value) {
765
+ if (value < 0) this.int64(value); else this.variant32(value >>> 0);
766
+ }
767
+ sint32(value) {
768
+ this.variant32(value << 1 ^ value >> 31);
769
+ }
770
+ uint32(value) {
771
+ this.variant32(value);
772
+ }
773
+ sint64(value) {
774
+ value = BigInt(value);
775
+ this.variant64(value << ND01 ^ value >> ND63);
776
+ }
777
+ int64(value) {
778
+ this.variant64(BigInt(value));
779
+ }
780
+ uint64(value) {
781
+ this.variant64(BigInt(value));
782
+ }
783
+ float(val) {
784
+ this.view.setFloat32(this.ptr, val, true);
785
+ this.ptr += 4;
786
+ }
787
+ double(val) {
788
+ this.view.setFloat64(this.ptr, val, true);
789
+ this.ptr += 8;
790
+ }
791
+ bytes(value) {
792
+ this.uint32(value.byteLength);
793
+ for (let i = 0; i < value.byteLength; i++) this.buf[this.ptr++] = value[i];
794
+ }
795
+ string(value) {
796
+ const len = this.varlen();
797
+ this.uint32(len);
798
+ const binary = utf8.encode(value);
799
+ for (let i = 0; i < binary.byteLength; i++) this.buf[this.ptr++] = binary[i];
800
+ }
801
+ fork() {
802
+ this.uint32(this.varlen());
803
+ }
804
+ ldelim() {}
805
+ finish() {
806
+ return this.buf;
807
+ }
808
+ reset() {
809
+ this.buf = new Uint8Array(this.sizer.len);
810
+ this.view = new DataView(this.buf.buffer);
811
+ this.ptr = 0;
812
+ this.varlenidx = 0;
813
+ }
814
+ variant32(val) {
815
+ while (val > 127) {
816
+ this.buf[this.ptr++] = val & 127 | 128;
817
+ val = val >>> 7;
818
+ }
819
+ this.buf[this.ptr++] = val;
820
+ }
821
+ variant64(val) {
822
+ val = BigInt.asUintN(64, val);
823
+ while (val > NX7F) {
824
+ this.buf[this.ptr++] = Number(val & NX7F | NX80);
825
+ val = val >> ND07;
826
+ }
827
+ this.buf[this.ptr++] = Number(val);
828
+ }
829
+ varlen() {
830
+ return this.varlenidx >= this.sizer.varlen.length ? 0 : this.sizer.varlen[this.varlenidx++];
831
+ }
832
+ }
833
+
834
+ const utf8 = new TextEncoder;
835
+
836
+ const ND01 = BigInt(1);
837
+
838
+ const ND07 = BigInt(7);
839
+
840
+ const ND63 = BigInt(63);
841
+
842
+ const NX7F = BigInt(127);
843
+
844
+ const NX80 = BigInt(128);
845
+
846
+ const decode$1 = method => ({
847
+ ...is$1(),
848
+ Reader: $ProtobufReader,
849
+ throws: $throws(`protobuf.${method}`)
850
+ });
851
+
852
+ const encode$1 = method => ({
853
+ ...is$1(),
854
+ Sizer: $ProtobufSizer,
855
+ Writer: $ProtobufWriter,
856
+ strlen: $strlen,
857
+ throws: $throws(method)
858
+ });
859
+
860
+ const assert$1 = method => ({
861
+ ...is$1(),
862
+ join: $join,
863
+ every: $every,
864
+ guard: $guard(`typia.${method}`),
865
+ predicate: (matched, exceptionable, closure) => {
866
+ if (matched === false && exceptionable === true) throw new TypeGuardError({
867
+ ...closure(),
868
+ method: `typia.${method}`
869
+ });
870
+ return matched;
871
+ }
872
+ });
873
+
874
+ const validate$1 = () => ({
875
+ ...is$1(),
876
+ join: $join,
877
+ report: $report,
878
+ predicate: res => (matched, exceptionable, closure) => {
879
+ if (matched === false && exceptionable === true) (() => {
880
+ res.success && (res.success = false);
881
+ const errorList = res.errors;
882
+ const error = closure();
883
+ if (errorList.length) {
884
+ const last = errorList[errorList.length - 1].path;
885
+ if (last.length >= error.path.length && last.substring(0, error.path.length) === error.path) return;
886
+ }
887
+ errorList.push(error);
888
+ return;
889
+ })();
890
+ return matched;
891
+ }
892
+ });
893
+
894
+ const random$1 = () => ({
895
+ generator: RandomGenerator,
896
+ pick
897
+ });
898
+
899
+ function assertFunction() {
900
+ halt$7("assertFunction");
901
+ }
902
+
903
+ const assertFunctionPure = Object.assign(assertFunction, assert$1("functional.assertFunction"), functionalAssert());
904
+
905
+ const assertParametersPure = Object.assign(assertFunction, assert$1("functional.assertFunction"), functionalAssert());
906
+
907
+ function assertReturn() {
908
+ halt$7("assertReturn");
909
+ }
910
+
911
+ const assertReturnPure = Object.assign(assertReturn, assert$1("functional.assertReturn"), functionalAssert());
912
+
913
+ function assertEqualsFunction() {
914
+ halt$7("assertEqualsFunction");
915
+ }
916
+
917
+ const assertEqualsFunctionPure = Object.assign(assertEqualsFunction, assert$1("functional.assertEqualsFunction"), functionalAssert());
918
+
919
+ function assertEqualsParameters() {
920
+ halt$7("assertEqualsParameters");
921
+ }
922
+
923
+ const assertEqualsParametersPure = Object.assign(assertEqualsParameters, assert$1("functional.assertEqualsParameters"), functionalAssert());
924
+
925
+ function assertEqualsReturn() {
926
+ halt$7("assertEqualsReturn");
927
+ }
928
+
929
+ const assertEqualsReturnPure = Object.assign(assertEqualsReturn, assert$1("functional.assertEqualsReturn"), functionalAssert());
930
+
931
+ function isFunction() {
932
+ halt$7("isFunction");
933
+ }
934
+
935
+ const isFunctionPure = Object.assign(isFunction, is$1());
936
+
937
+ function isParameters() {
938
+ halt$7("isParameters");
939
+ }
940
+
941
+ const isParametersPure = Object.assign(isParameters, is$1());
942
+
943
+ function isReturn() {
944
+ halt$7("isReturn");
945
+ }
946
+
947
+ const isReturnPure = Object.assign(isReturn, is$1());
948
+
949
+ function equalsFunction() {
950
+ halt$7("equalsFunction");
951
+ }
952
+
953
+ const equalsFunctionPure = Object.assign(equalsFunction, is$1());
954
+
955
+ function equalsParameters() {
956
+ halt$7("equalsParameters");
957
+ }
958
+
959
+ const equalsParametersPure = Object.assign(equalsParameters, is$1());
960
+
961
+ function equalsReturn() {
962
+ halt$7("equalsReturn");
963
+ }
964
+
965
+ const equalsReturnPure = Object.assign(equalsReturn, is$1());
966
+
967
+ function validateFunction() {
968
+ halt$7("validateFunction");
969
+ }
970
+
971
+ const validateFunctionPure = Object.assign(validateFunction, validate$1());
972
+
973
+ function validateParameters() {
974
+ halt$7("validateReturn");
975
+ }
976
+
977
+ const validateParametersPure = Object.assign(validateParameters, validate$1());
978
+
979
+ function validateReturn() {
980
+ halt$7("validateReturn");
981
+ }
982
+
983
+ const validateReturnPure = Object.assign(validateReturn, validate$1());
984
+
985
+ function validateEqualsFunction() {
986
+ halt$7("validateEqualsFunction");
987
+ }
988
+
989
+ const validateEqualsFunctionPure = Object.assign(validateEqualsFunction, validate$1());
990
+
991
+ function validateEqualsParameters() {
992
+ halt$7("validateEqualsParameters");
993
+ }
994
+
995
+ const validateEqualsParametersPure = Object.assign(validateEqualsParameters, validate$1());
996
+
997
+ function validateEqualsReturn() {
998
+ halt$7("validateEqualsReturn");
999
+ }
1000
+
1001
+ const validateEqualsReturnPure = Object.assign(validateEqualsReturn, validate$1());
1002
+
1003
+ function halt$7(name) {
1004
+ throw new Error(`Error on typia.functional.${name}(): no transform has been configured. Read and follow https://typia.io/docs/setup please.`);
1005
+ }
1006
+
1007
+ var functional = Object.freeze({
1008
+ __proto__: null,
1009
+ assertEqualsFunction: assertEqualsFunctionPure,
1010
+ assertEqualsParameters: assertEqualsParametersPure,
1011
+ assertEqualsReturn: assertEqualsReturnPure,
1012
+ assertFunction: assertFunctionPure,
1013
+ assertParameters: assertParametersPure,
1014
+ assertReturn: assertReturnPure,
1015
+ equalsFunction: equalsFunctionPure,
1016
+ equalsParameters: equalsParametersPure,
1017
+ equalsReturn: equalsReturnPure,
1018
+ isFunction: isFunctionPure,
1019
+ isParameters: isParametersPure,
1020
+ isReturn: isReturnPure,
1021
+ validateEqualsFunction: validateEqualsFunctionPure,
1022
+ validateEqualsParameters: validateEqualsParametersPure,
1023
+ validateEqualsReturn: validateEqualsReturnPure,
1024
+ validateFunction: validateFunctionPure,
1025
+ validateParameters: validateParametersPure,
1026
+ validateReturn: validateReturnPure
1027
+ });
1028
+
1029
+ function formData() {
1030
+ halt$6("formData");
1031
+ }
1032
+
1033
+ const formDataPure = Object.assign(formData, formData$1());
1034
+
1035
+ function assertFormData() {
1036
+ halt$6("assertFormData");
1037
+ }
1038
+
1039
+ const assertFormDataPure = Object.assign(assertFormData, formData$1(), assert$1("http.assertFormData"));
1040
+
1041
+ function isFormData() {
1042
+ halt$6("isFormData");
1043
+ }
1044
+
1045
+ const isFormDataPure = Object.assign(isFormData, formData$1(), is$1());
1046
+
1047
+ function validateFormData() {
1048
+ halt$6("validateFormData");
1049
+ }
1050
+
1051
+ const validateFormDataPure = Object.assign(validateFormData, formData$1(), validate$1());
1052
+
1053
+ function query() {
1054
+ halt$6("query");
1055
+ }
1056
+
1057
+ const queryPure = Object.assign(query, query$1());
1058
+
1059
+ function assertQuery() {
1060
+ halt$6("assertQuery");
1061
+ }
1062
+
1063
+ const assertQueryPure = Object.assign(assertQuery, query$1(), assert$1("http.assertQuery"));
1064
+
1065
+ function isQuery() {
1066
+ halt$6("isQuery");
1067
+ }
1068
+
1069
+ const isQueryPure = Object.assign(isQuery, query$1(), is$1());
1070
+
1071
+ function validateQuery() {
1072
+ halt$6("validateQuery");
1073
+ }
1074
+
1075
+ const validateQueryPure = Object.assign(validateQuery, query$1(), validate$1());
1076
+
1077
+ function headers() {
1078
+ halt$6("headers");
1079
+ }
1080
+
1081
+ const headersPure = Object.assign(headers, headers$1());
1082
+
1083
+ function assertHeaders() {
1084
+ halt$6("assertHeaders");
1085
+ }
1086
+
1087
+ const assertHeadersPure = Object.assign(assertHeaders, headers$1(), assert$1("http.assertHeaders"));
1088
+
1089
+ function isHeaders() {
1090
+ halt$6("isHeaders");
1091
+ }
1092
+
1093
+ const isHeadersPure = Object.assign(isHeaders, headers$1(), is$1());
1094
+
1095
+ function validateHeaders() {
1096
+ halt$6("validateHeaders");
1097
+ }
1098
+
1099
+ const validateHeadersPure = Object.assign(validateHeaders, headers$1(), validate$1());
1100
+
1101
+ function parameter() {
1102
+ halt$6("parameter");
1103
+ }
1104
+
1105
+ const parameterPure = Object.assign(parameter, parameter$1(), assert$1("http.parameter"));
1106
+
1107
+ function createFormData() {
1108
+ halt$6("createFormData");
1109
+ }
1110
+
1111
+ const createFormDataPure = Object.assign(createFormData, formData$1());
1112
+
1113
+ function createAssertFormData() {
1114
+ halt$6("createAssertFormData");
1115
+ }
1116
+
1117
+ const createAssertFormDataPure = Object.assign(createAssertFormData, formData$1(), assert$1("http.createAssertFormData"));
1118
+
1119
+ function createIsFormData() {
1120
+ halt$6("createIsFormData");
1121
+ }
1122
+
1123
+ const createIsFormDataPure = Object.assign(createIsFormData, formData$1(), is$1());
1124
+
1125
+ function createValidateFormData() {
1126
+ halt$6("createValidateFormData");
1127
+ }
1128
+
1129
+ const createValidateFormDataPure = Object.assign(createValidateFormData, formData$1(), validate$1());
1130
+
1131
+ function createQuery() {
1132
+ halt$6("createQuery");
1133
+ }
1134
+
1135
+ const createQueryPure = Object.assign(createQuery, query$1());
1136
+
1137
+ function createAssertQuery() {
1138
+ halt$6("createAssertQuery");
1139
+ }
1140
+
1141
+ const createAssertQueryPure = Object.assign(createAssertQuery, query$1(), assert$1("http.createAssertQuery"));
1142
+
1143
+ function createIsQuery() {
1144
+ halt$6("createIsQuery");
1145
+ }
1146
+
1147
+ const createIsQueryPure = Object.assign(createIsQuery, query$1(), is$1());
1148
+
1149
+ function createValidateQuery() {
1150
+ halt$6("createValidateQuery");
1151
+ }
1152
+
1153
+ const createValidateQueryPure = Object.assign(createValidateQuery, query$1(), validate$1());
1154
+
1155
+ function createHeaders() {
1156
+ halt$6("createHeaders");
1157
+ }
1158
+
1159
+ const createHeadersPure = Object.assign(createHeaders, headers$1());
1160
+
1161
+ function createAssertHeaders() {
1162
+ halt$6("createAssertHeaders");
1163
+ }
1164
+
1165
+ const createAssertHeadersPure = Object.assign(createAssertHeaders, headers$1(), assert$1("http.createAssertHeaders"));
1166
+
1167
+ function createIsHeaders() {
1168
+ halt$6("createIsHeaders");
1169
+ }
1170
+
1171
+ const createIsHeadersPure = Object.assign(createIsHeaders, headers$1(), is$1());
1172
+
1173
+ function createValidateHeaders() {
1174
+ halt$6("createValidateHeaders");
1175
+ }
1176
+
1177
+ const createValidateHeadersPure = Object.assign(createValidateHeaders, headers$1(), validate$1());
1178
+
1179
+ function createParameter() {
1180
+ halt$6("createParameter");
1181
+ }
1182
+
1183
+ const createParameterPure = Object.assign(createParameter, parameter$1(), assert$1("http.createParameter"));
1184
+
1185
+ function halt$6(name) {
1186
+ throw new Error(`Error on typia.http.${name}(): no transform has been configured. Read and follow https://typia.io/docs/setup please.`);
1187
+ }
1188
+
1189
+ var http = Object.freeze({
1190
+ __proto__: null,
1191
+ assertFormData: assertFormDataPure,
1192
+ assertHeaders: assertHeadersPure,
1193
+ assertQuery: assertQueryPure,
1194
+ createAssertFormData: createAssertFormDataPure,
1195
+ createAssertHeaders: createAssertHeadersPure,
1196
+ createAssertQuery: createAssertQueryPure,
1197
+ createFormData: createFormDataPure,
1198
+ createHeaders: createHeadersPure,
1199
+ createIsFormData: createIsFormDataPure,
1200
+ createIsHeaders: createIsHeadersPure,
1201
+ createIsQuery: createIsQueryPure,
1202
+ createParameter: createParameterPure,
1203
+ createQuery: createQueryPure,
1204
+ createValidateFormData: createValidateFormDataPure,
1205
+ createValidateHeaders: createValidateHeadersPure,
1206
+ createValidateQuery: createValidateQueryPure,
1207
+ formData: formDataPure,
1208
+ headers: headersPure,
1209
+ isFormData: isFormDataPure,
1210
+ isHeaders: isHeadersPure,
1211
+ isQuery: isQueryPure,
1212
+ parameter: parameterPure,
1213
+ query: queryPure,
1214
+ validateFormData: validateFormDataPure,
1215
+ validateHeaders: validateHeadersPure,
1216
+ validateQuery: validateQueryPure
1217
+ });
1218
+
1219
+ function application() {
1220
+ halt$5("application");
1221
+ }
1222
+
1223
+ function assertParse() {
1224
+ halt$5("assertParse");
1225
+ }
1226
+
1227
+ const assertParsePure = Object.assign(assertParse, assert$1("json.assertParse"));
1228
+
1229
+ function isParse() {
1230
+ halt$5("isParse");
1231
+ }
1232
+
1233
+ const isParsePure = Object.assign(isParse, is$1());
1234
+
1235
+ function validateParse() {
1236
+ halt$5("validateParse");
1237
+ }
1238
+
1239
+ const validateParsePure = Object.assign(validateParse, validate$1());
1240
+
1241
+ function stringify() {
1242
+ halt$5("stringify");
1243
+ }
1244
+
1245
+ const stringifyPure = Object.assign(stringify, stringify$1("stringify"));
1246
+
1247
+ function assertStringify() {
1248
+ halt$5("assertStringify");
1249
+ }
1250
+
1251
+ const assertStringifyPure = Object.assign(assertStringify, assert$1("json.assertStringify"), stringify$1("assertStringify"));
1252
+
1253
+ function isStringify() {
1254
+ halt$5("isStringify");
1255
+ }
1256
+
1257
+ const isStringifyPure = Object.assign(isStringify, is$1(), stringify$1("isStringify"));
1258
+
1259
+ function validateStringify() {
1260
+ halt$5("validateStringify");
1261
+ }
1262
+
1263
+ const validateStringifyPure = Object.assign(validateStringify, validate$1(), stringify$1("validateStringify"));
1264
+
1265
+ function createIsParse() {
1266
+ halt$5("createIsParse");
1267
+ }
1268
+
1269
+ const createIsParsePure = Object.assign(createIsParse, isParsePure);
1270
+
1271
+ function createAssertParse() {
1272
+ halt$5("createAssertParse");
1273
+ }
1274
+
1275
+ const createAssertParsePure = Object.assign(createAssertParse, assertParsePure);
1276
+
1277
+ function createValidateParse() {
1278
+ halt$5("createValidateParse");
1279
+ }
1280
+
1281
+ const createValidateParsePure = Object.assign(createValidateParse, validateParsePure);
1282
+
1283
+ function createStringify() {
1284
+ halt$5("createStringify");
1285
+ }
1286
+
1287
+ const createStringifyPure = Object.assign(createStringify, stringifyPure);
1288
+
1289
+ function createAssertStringify() {
1290
+ halt$5("createAssertStringify");
1291
+ }
1292
+
1293
+ const createAssertStringifyPure = Object.assign(createAssertStringify, assertStringifyPure);
1294
+
1295
+ function createIsStringify() {
1296
+ halt$5("createIsStringify");
1297
+ }
1298
+
1299
+ const createIsStringifyPure = Object.assign(createIsStringify, isStringifyPure);
1300
+
1301
+ function createValidateStringify() {
1302
+ halt$5("createValidateStringify");
1303
+ }
1304
+
1305
+ const createValidateStringifyPure = Object.assign(createValidateStringify, validateStringifyPure);
1306
+
1307
+ function halt$5(name) {
1308
+ throw new Error(`Error on typia.json.${name}(): no transform has been configured. Read and follow https://typia.io/docs/setup please.`);
1309
+ }
1310
+
1311
+ var json = Object.freeze({
1312
+ __proto__: null,
1313
+ application,
1314
+ assertParse: assertParsePure,
1315
+ assertStringify: assertStringifyPure,
1316
+ createAssertParse: createAssertParsePure,
1317
+ createAssertStringify: createAssertStringifyPure,
1318
+ createIsParse: createIsParsePure,
1319
+ createIsStringify: createIsStringifyPure,
1320
+ createStringify: createStringifyPure,
1321
+ createValidateParse: createValidateParsePure,
1322
+ createValidateStringify: createValidateStringifyPure,
1323
+ isParse: isParsePure,
1324
+ isStringify: isStringifyPure,
1325
+ stringify: stringifyPure,
1326
+ validateParse: validateParsePure,
1327
+ validateStringify: validateStringifyPure
1328
+ });
1329
+
1330
+ function literals() {
1331
+ halt$4("literals");
1332
+ }
1333
+
1334
+ function clone() {
1335
+ halt$4("clone");
1336
+ }
1337
+
1338
+ const clonePure = Object.assign(clone, clone$1("clone"));
1339
+
1340
+ function assertClone() {
1341
+ halt$4("assertClone");
1342
+ }
1343
+
1344
+ const assertClonePure = Object.assign(assertClone, assert$1("misc.assertClone"), clone$1("assertClone"));
1345
+
1346
+ function isClone() {
1347
+ halt$4("isClone");
1348
+ }
1349
+
1350
+ const isClonePure = Object.assign(isClone, is$1(), clone$1("isClone"));
1351
+
1352
+ function validateClone() {
1353
+ halt$4("validateClone");
1354
+ }
1355
+
1356
+ const validateClonePure = Object.assign(validateClone, validate$1(), clone$1("validateClone"));
1357
+
1358
+ function prune() {
1359
+ halt$4("prune");
1360
+ }
1361
+
1362
+ const prunePure = Object.assign(prune, prune$1("prune"));
1363
+
1364
+ function assertPrune() {
1365
+ halt$4("assertPrune");
1366
+ }
1367
+
1368
+ const assertPrunePure = Object.assign(assertPrune, assert$1("misc.assertPrune"), prune$1("assertPrune"));
1369
+
1370
+ function isPrune() {
1371
+ halt$4("isPrune");
1372
+ }
1373
+
1374
+ const isPrunePure = Object.assign(isPrune, is$1(), prune$1("isPrune"));
1375
+
1376
+ function validatePrune() {
1377
+ halt$4("validatePrune");
1378
+ }
1379
+
1380
+ const validatePrunePure = Object.assign(validatePrune, prune$1("validatePrune"), validate$1());
1381
+
1382
+ function createClone() {
1383
+ halt$4("createClone");
1384
+ }
1385
+
1386
+ const createClonePure = Object.assign(createClone, clonePure);
1387
+
1388
+ function createAssertClone() {
1389
+ halt$4("createAssertClone");
1390
+ }
1391
+
1392
+ const createAssertClonePure = Object.assign(createAssertClone, assertClonePure);
1393
+
1394
+ function createIsClone() {
1395
+ halt$4("createIsClone");
1396
+ }
1397
+
1398
+ const createIsClonePure = Object.assign(createIsClone, isClonePure);
1399
+
1400
+ function createValidateClone() {
1401
+ halt$4("createValidateClone");
1402
+ }
1403
+
1404
+ const createValidateClonePure = Object.assign(createValidateClone, validateClonePure);
1405
+
1406
+ function createPrune() {
1407
+ halt$4("createPrune");
1408
+ }
1409
+
1410
+ const createPrunePure = Object.assign(createPrune, prunePure);
1411
+
1412
+ function createAssertPrune() {
1413
+ halt$4("createAssertPrune");
1414
+ }
1415
+
1416
+ const createAssertPrunePure = Object.assign(createAssertPrune, assertPrunePure);
1417
+
1418
+ function createIsPrune() {
1419
+ halt$4("createIsPrune");
1420
+ }
1421
+
1422
+ const createIsPrunePure = Object.assign(createIsPrune, isPrunePure);
1423
+
1424
+ function createValidatePrune() {
1425
+ halt$4("createValidatePrune");
1426
+ }
1427
+
1428
+ const createValidatePrunePure = Object.assign(createValidatePrune, validatePrunePure);
1429
+
1430
+ function halt$4(name) {
1431
+ throw new Error(`Error on typia.misc.${name}(): no transform has been configured. Read and follow https://typia.io/docs/setup please.`);
1432
+ }
1433
+
1434
+ var misc = Object.freeze({
1435
+ __proto__: null,
1436
+ assertClone: assertClonePure,
1437
+ assertPrune: assertPrunePure,
1438
+ clone: clonePure,
1439
+ createAssertClone: createAssertClonePure,
1440
+ createAssertPrune: createAssertPrunePure,
1441
+ createClone: createClonePure,
1442
+ createIsClone: createIsClonePure,
1443
+ createIsPrune: createIsPrunePure,
1444
+ createPrune: createPrunePure,
1445
+ createValidateClone: createValidateClonePure,
1446
+ createValidatePrune: createValidatePrunePure,
1447
+ isClone: isClonePure,
1448
+ isPrune: isPrunePure,
1449
+ literals,
1450
+ prune: prunePure,
1451
+ validateClone: validateClonePure,
1452
+ validatePrune: validatePrunePure
1453
+ });
1454
+
1455
+ function camel() {
1456
+ return halt$3("camel");
1457
+ }
1458
+
1459
+ const camelPure = Object.assign(camel, camel$1("camel"));
1460
+
1461
+ function assertCamel() {
1462
+ return halt$3("assertCamel");
1463
+ }
1464
+
1465
+ const assertCamelPure = Object.assign(assertCamel, camel$1("assertCamel"), assert$1("notations.assertCamel"));
1466
+
1467
+ function isCamel() {
1468
+ return halt$3("isCamel");
1469
+ }
1470
+
1471
+ const isCamelPure = Object.assign(isCamel, camel$1("isCamel"), is$1());
1472
+
1473
+ function validateCamel() {
1474
+ return halt$3("validateCamel");
1475
+ }
1476
+
1477
+ const validateCamelPure = Object.assign(validateCamel, camel$1("validateCamel"), validate$1());
1478
+
1479
+ function pascal() {
1480
+ return halt$3("pascal");
1481
+ }
1482
+
1483
+ const pascalPure = Object.assign(pascal, pascal$1("pascal"));
1484
+
1485
+ function assertPascal() {
1486
+ return halt$3("assertPascal");
1487
+ }
1488
+
1489
+ const assertPascalPure = Object.assign(assertPascal, pascal$1("assertPascal"), assert$1("notations.assertPascal"));
1490
+
1491
+ function isPascal() {
1492
+ return halt$3("isPascal");
1493
+ }
1494
+
1495
+ const isPascalPure = Object.assign(isPascal, pascal$1("isPascal"), is$1());
1496
+
1497
+ function validatePascal() {
1498
+ return halt$3("validatePascal");
1499
+ }
1500
+
1501
+ const validatePascalPure = Object.assign(validatePascal, pascal$1("validatePascal"), validate$1());
1502
+
1503
+ function snake() {
1504
+ return halt$3("snake");
1505
+ }
1506
+
1507
+ const snakePure = Object.assign(snake, snake$1("snake"));
1508
+
1509
+ function assertSnake() {
1510
+ return halt$3("assertSnake");
1511
+ }
1512
+
1513
+ const assertSnakePure = Object.assign(assertSnake, snake$1("assertSnake"), assert$1("notations.assertSnake"));
1514
+
1515
+ function isSnake() {
1516
+ return halt$3("isSnake");
1517
+ }
1518
+
1519
+ const isSnakePure = Object.assign(isSnake, snake$1("isSnake"), is$1());
1520
+
1521
+ function validateSnake() {
1522
+ return halt$3("validateSnake");
1523
+ }
1524
+
1525
+ const validateSnakePure = Object.assign(validateSnake, snake$1("validateSnake"), validate$1());
1526
+
1527
+ function createCamel() {
1528
+ halt$3("createCamel");
1529
+ }
1530
+
1531
+ const createCamelPure = Object.assign(createCamel, camel$1("createCamel"));
1532
+
1533
+ function createAssertCamel() {
1534
+ halt$3("createAssertCamel");
1535
+ }
1536
+
1537
+ const createAssertCamelPure = Object.assign(createAssertCamel, camel$1("createAssertCamel"), assert$1("notations.createAssertCamel"));
1538
+
1539
+ function createIsCamel() {
1540
+ halt$3("createIsCamel");
1541
+ }
1542
+
1543
+ const createIsCamelPure = Object.assign(createIsCamel, camel$1("createIsCamel"), is$1());
1544
+
1545
+ function createValidateCamel() {
1546
+ halt$3("createValidateCamel");
1547
+ }
1548
+
1549
+ const createValidateCamelPure = Object.assign(createValidateCamel, camel$1("createValidateCamel"), validate$1());
1550
+
1551
+ function createPascal() {
1552
+ halt$3("createPascal");
1553
+ }
1554
+
1555
+ const createPascalPure = Object.assign(createPascal, pascal$1("createPascal"));
1556
+
1557
+ function createAssertPascal() {
1558
+ halt$3("createAssertPascal");
1559
+ }
1560
+
1561
+ const createAssertPascalPure = Object.assign(createAssertPascal, pascal$1("createAssertPascal"), assert$1("notations.createAssertPascal"));
1562
+
1563
+ function createIsPascal() {
1564
+ halt$3("createIsPascal");
1565
+ }
1566
+
1567
+ const createIsPascalPure = Object.assign(createIsPascal, pascal$1("createIsPascal"), is$1());
1568
+
1569
+ function createValidatePascal() {
1570
+ halt$3("createValidatePascal");
1571
+ }
1572
+
1573
+ const createValidatePascalPure = Object.assign(createValidatePascal, pascal$1("createValidatePascal"), validate$1());
1574
+
1575
+ function createSnake() {
1576
+ halt$3("createSnake");
1577
+ }
1578
+
1579
+ const createSnakePure = Object.assign(createSnake, snake$1("createSnake"));
1580
+
1581
+ function createAssertSnake() {
1582
+ halt$3("createAssertSnake");
1583
+ }
1584
+
1585
+ const createAssertSnakePure = Object.assign(createAssertSnake, snake$1("createAssertSnake"), assert$1("notations.createAssertSnake"));
1586
+
1587
+ function createIsSnake() {
1588
+ halt$3("createIsSnake");
1589
+ }
1590
+
1591
+ const createIsSnakePure = Object.assign(createIsSnake, snake$1("createIsSnake"), is$1());
1592
+
1593
+ function createValidateSnake() {
1594
+ halt$3("createValidateSnake");
1595
+ }
1596
+
1597
+ const createValidateSnakePure = Object.assign(createValidateSnake, snake$1("createValidateSnake"), validate$1());
1598
+
1599
+ function halt$3(name) {
1600
+ throw new Error(`Error on typia.notations.${name}(): no transform has been configured. Read and follow https://typia.io/docs/setup please.`);
1601
+ }
1602
+
1603
+ var notations = Object.freeze({
1604
+ __proto__: null,
1605
+ assertCamel: assertCamelPure,
1606
+ assertPascal: assertPascalPure,
1607
+ assertSnake: assertSnakePure,
1608
+ camel: camelPure,
1609
+ createAssertCamel: createAssertCamelPure,
1610
+ createAssertPascal: createAssertPascalPure,
1611
+ createAssertSnake: createAssertSnakePure,
1612
+ createCamel: createCamelPure,
1613
+ createIsCamel: createIsCamelPure,
1614
+ createIsPascal: createIsPascalPure,
1615
+ createIsSnake: createIsSnakePure,
1616
+ createPascal: createPascalPure,
1617
+ createSnake: createSnakePure,
1618
+ createValidateCamel: createValidateCamelPure,
1619
+ createValidatePascal: createValidatePascalPure,
1620
+ createValidateSnake: createValidateSnakePure,
1621
+ isCamel: isCamelPure,
1622
+ isPascal: isPascalPure,
1623
+ isSnake: isSnakePure,
1624
+ pascal: pascalPure,
1625
+ snake: snakePure,
1626
+ validateCamel: validateCamelPure,
1627
+ validatePascal: validatePascalPure,
1628
+ validateSnake: validateSnakePure
1629
+ });
1630
+
1631
+ function message() {
1632
+ halt$2("message");
1633
+ }
1634
+
1635
+ function decode() {
1636
+ halt$2("decode");
1637
+ }
1638
+
1639
+ const decodePure = Object.assign(decode, decode$1("decode"));
1640
+
1641
+ function assertDecode() {
1642
+ halt$2("assertDecode");
1643
+ }
1644
+
1645
+ const assertDecodePure = Object.assign(assertDecode, assert$1("protobuf.assertDecode"), decode$1("assertDecode"));
1646
+
1647
+ function isDecode() {
1648
+ halt$2("isDecode");
1649
+ }
1650
+
1651
+ const isDecodePure = Object.assign(isDecode, is$1(), decode$1("isDecode"));
1652
+
1653
+ function validateDecode() {
1654
+ halt$2("validateDecode");
1655
+ }
1656
+
1657
+ const validateDecodePure = Object.assign(validateDecode, validate$1(), decode$1("validateDecode"));
1658
+
1659
+ function encode() {
1660
+ halt$2("encode");
1661
+ }
1662
+
1663
+ const encodePure = Object.assign(encode, encode$1("encode"));
1664
+
1665
+ function assertEncode() {
1666
+ halt$2("assertEncode");
1667
+ }
1668
+
1669
+ const assertEncodePure = Object.assign(assertEncode, assert$1("protobuf.assertEncode"), encode$1("assertEncode"));
1670
+
1671
+ function isEncode() {
1672
+ halt$2("isEncode");
1673
+ }
1674
+
1675
+ const isEncodePure = Object.assign(isEncode, is$1(), encode$1("isEncode"));
1676
+
1677
+ function validateEncode() {
1678
+ halt$2("validateEncode");
1679
+ }
1680
+
1681
+ const validateEncodePure = Object.assign(validateEncode, validate$1(), encode$1("validateEncode"));
1682
+
1683
+ function createDecode() {
1684
+ halt$2("createDecode");
1685
+ }
1686
+
1687
+ const createDecodePure = Object.assign(createDecode, decode$1("createDecode"));
1688
+
1689
+ function createIsDecode() {
1690
+ halt$2("createIsDecode");
1691
+ }
1692
+
1693
+ const createIsDecodePure = Object.assign(createIsDecode, is$1(), decode$1("createIsDecode"));
1694
+
1695
+ function createAssertDecode() {
1696
+ halt$2("createAssertDecode");
1697
+ }
1698
+
1699
+ const createAssertDecodePure = Object.assign(createAssertDecode, assert$1("protobuf.createAssertDecode"), decode$1("createAssertDecode"));
1700
+
1701
+ function createValidateDecode() {
1702
+ halt$2("createValidateDecode");
1703
+ }
1704
+
1705
+ const createValidateDecodePure = Object.assign(createValidateDecode, validate$1(), decode$1("createValidateDecode"));
1706
+
1707
+ function createEncode() {
1708
+ halt$2("createEncode");
1709
+ }
1710
+
1711
+ const createEncodePure = Object.assign(createEncode, encode$1("createEncode"));
1712
+
1713
+ function createIsEncode() {
1714
+ halt$2("createIsEncode");
1715
+ }
1716
+
1717
+ const createIsEncodePure = Object.assign(createIsEncode, is$1(), encode$1("createIsEncode"));
1718
+
1719
+ function createAssertEncode() {
1720
+ halt$2("createAssertEncode");
1721
+ }
1722
+
1723
+ const createAssertEncodePure = Object.assign(createAssertEncode, assert$1("protobuf.createAssertEncode"), encode$1("createAssertEncode"));
1724
+
1725
+ function createValidateEncode() {
1726
+ halt$2("createValidateEncode");
1727
+ }
1728
+
1729
+ const createValidateEncodePure = Object.assign(createValidateEncode, validate$1(), encode$1("createValidateEncode"));
1730
+
1731
+ function halt$2(name) {
1732
+ throw new Error(`Error on typia.protobuf.${name}(): no transform has been configured. Read and follow https://typia.io/docs/setup please.`);
1733
+ }
1734
+
1735
+ var protobuf = Object.freeze({
1736
+ __proto__: null,
1737
+ assertDecode: assertDecodePure,
1738
+ assertEncode: assertEncodePure,
1739
+ createAssertDecode: createAssertDecodePure,
1740
+ createAssertEncode: createAssertEncodePure,
1741
+ createDecode: createDecodePure,
1742
+ createEncode: createEncodePure,
1743
+ createIsDecode: createIsDecodePure,
1744
+ createIsEncode: createIsEncodePure,
1745
+ createValidateDecode: createValidateDecodePure,
1746
+ createValidateEncode: createValidateEncodePure,
1747
+ decode: decodePure,
1748
+ encode: encodePure,
1749
+ isDecode: isDecodePure,
1750
+ isEncode: isEncodePure,
1751
+ message,
1752
+ validateDecode: validateDecodePure,
1753
+ validateEncode: validateEncodePure
1754
+ });
1755
+
1756
+ function metadata() {
1757
+ halt$1("metadata");
1758
+ }
1759
+
1760
+ const metadataPure = Object.assign(metadata, {
1761
+ from: input => input
1762
+ });
1763
+
1764
+ function halt$1(name) {
1765
+ throw new Error(`Error on typia.reflect.${name}(): no transform has been configured. Read and follow https://typia.io/docs/setup please.`);
1766
+ }
1767
+
1768
+ var reflect = Object.freeze({
1769
+ __proto__: null,
1770
+ metadata: metadataPure
1771
+ });
1772
+
1773
+ var index = Object.freeze({
1774
+ __proto__: null
1775
+ });
1776
+
1777
+ function assert() {
1778
+ halt("assert");
1779
+ }
1780
+
1781
+ const assertPure = Object.assign(assert, assert$1("assert"));
1782
+
1783
+ function assertGuard() {
1784
+ halt("assertGuard");
1785
+ }
1786
+
1787
+ const assertGuardPure = Object.assign(assertGuard, assert$1("assertGuard"));
1788
+
1789
+ function is() {
1790
+ halt("is");
1791
+ }
1792
+
1793
+ const isPure = Object.assign(is, assert$1("is"));
1794
+
1795
+ function validate() {
1796
+ halt("validate");
1797
+ }
1798
+
1799
+ const validatePure = Object.assign(validate, validate$1());
1800
+
1801
+ function assertEquals() {
1802
+ halt("assertEquals");
1803
+ }
1804
+
1805
+ const assertEqualsPure = Object.assign(assertEquals, assert$1("assertEquals"));
1806
+
1807
+ function assertGuardEquals() {
1808
+ halt("assertGuardEquals");
1809
+ }
1810
+
1811
+ const assertGuardEqualsPure = Object.assign(assertGuardEquals, assert$1("assertGuardEquals"));
1812
+
1813
+ function equals() {
1814
+ halt("equals");
1815
+ }
1816
+
1817
+ const equalsPure = Object.assign(equals, is$1());
1818
+
1819
+ function validateEquals() {
1820
+ halt("validateEquals");
1821
+ }
1822
+
1823
+ const validateEqualsPure = Object.assign(validateEquals, validate$1());
1824
+
1825
+ function random() {
1826
+ halt("random");
1827
+ }
1828
+
1829
+ const randomPure = Object.assign(random, random$1());
1830
+
1831
+ function createAssert() {
1832
+ halt("createAssert");
1833
+ }
1834
+
1835
+ const createAssertPure = Object.assign(createAssert, assertPure);
1836
+
1837
+ function createAssertGuard() {
1838
+ halt("createAssertGuard");
1839
+ }
1840
+
1841
+ const createAssertGuardPure = Object.assign(createAssertGuard, assertGuardPure);
1842
+
1843
+ function createIs() {
1844
+ halt("createIs");
1845
+ }
1846
+
1847
+ const createIsPure = Object.assign(createIs, isPure);
1848
+
1849
+ function createValidate() {
1850
+ halt("createValidate");
1851
+ }
1852
+
1853
+ const createValidatePure = Object.assign(createValidate, validatePure);
1854
+
1855
+ function createAssertEquals() {
1856
+ halt("createAssertEquals");
1857
+ }
1858
+
1859
+ const createAssertEqualsPure = Object.assign(createAssertEquals, assertEqualsPure);
1860
+
1861
+ function createAssertGuardEquals() {
1862
+ halt("createAssertGuardEquals");
1863
+ }
1864
+
1865
+ const createAssertGuardEqualsPure = Object.assign(createAssertGuardEquals, assertGuardEqualsPure);
1866
+
1867
+ function createEquals() {
1868
+ halt("createEquals");
1869
+ }
1870
+
1871
+ const createEqualsPure = Object.assign(createEquals, equalsPure);
1872
+
1873
+ function createValidateEquals() {
1874
+ halt("createValidateEquals");
1875
+ }
1876
+
1877
+ const createValidateEqualsPure = Object.assign(createValidateEquals, validateEqualsPure);
1878
+
1879
+ function createRandom() {
1880
+ halt("createRandom");
1881
+ }
1882
+
1883
+ const createRandomPure = Object.assign(createRandom, randomPure);
1884
+
1885
+ function halt(name) {
1886
+ throw new Error(`Error on typia.${name}(): no transform has been configured. Read and follow https://typia.io/docs/setup please.`);
1887
+ }
1888
+
1889
+ var typia = Object.freeze({
1890
+ __proto__: null,
1891
+ TypeGuardError,
1892
+ assert: assertPure,
1893
+ assertEquals: assertEqualsPure,
1894
+ assertGuard: assertGuardPure,
1895
+ assertGuardEquals: assertGuardEqualsPure,
1896
+ createAssert: createAssertPure,
1897
+ createAssertEquals: createAssertEqualsPure,
1898
+ createAssertGuard: createAssertGuardPure,
1899
+ createAssertGuardEquals: createAssertGuardEqualsPure,
1900
+ createEquals: createEqualsPure,
1901
+ createIs: createIsPure,
1902
+ createRandom: createRandomPure,
1903
+ createValidate: createValidatePure,
1904
+ createValidateEquals: createValidateEqualsPure,
1905
+ equals: equalsPure,
1906
+ functional,
1907
+ http,
1908
+ is: isPure,
1909
+ json,
1910
+ misc,
1911
+ notations,
1912
+ protobuf,
1913
+ random: randomPure,
1914
+ reflect,
1915
+ tags: index,
1916
+ validate: validatePure,
1917
+ validateEquals: validateEqualsPure
1918
+ });
1919
+
1920
+ export { TypeGuardError, assertPure as assert, assertEqualsPure as assertEquals, assertGuardPure as assertGuard, assertGuardEqualsPure as assertGuardEquals, createAssertPure as createAssert, createAssertEqualsPure as createAssertEquals, createAssertGuardPure as createAssertGuard, createAssertGuardEqualsPure as createAssertGuardEquals, createEqualsPure as createEquals, createIsPure as createIs, createRandomPure as createRandom, createValidatePure as createValidate, createValidateEqualsPure as createValidateEquals, typia as default, equalsPure as equals, functional, http, isPure as is, json, misc, notations, protobuf, randomPure as random, reflect, index as tags, validatePure as validate, validateEqualsPure as validateEquals };
1921
+ //# sourceMappingURL=index.mjs.map