typia 6.3.3 → 6.4.0-dev.20240703

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 (113) hide show
  1. package/lib/TypeGuardError.mjs +26 -0
  2. package/lib/TypeGuardError.mjs.map +1 -0
  3. package/lib/_external/node_modules_drange_lib/index.mjs +180 -0
  4. package/lib/_external/node_modules_drange_lib/index.mjs.map +1 -0
  5. package/lib/_external/node_modules_randexp_lib/randexp.mjs +270 -0
  6. package/lib/_external/node_modules_randexp_lib/randexp.mjs.map +1 -0
  7. package/lib/_external/node_modules_ret_lib/index.mjs +296 -0
  8. package/lib/_external/node_modules_ret_lib/index.mjs.map +1 -0
  9. package/lib/_external/node_modules_ret_lib/positions.mjs +11 -0
  10. package/lib/_external/node_modules_ret_lib/positions.mjs.map +1 -0
  11. package/lib/_external/node_modules_ret_lib/sets.mjs +55 -0
  12. package/lib/_external/node_modules_ret_lib/sets.mjs.map +1 -0
  13. package/lib/_external/node_modules_ret_lib/types.mjs +13 -0
  14. package/lib/_external/node_modules_ret_lib/types.mjs.map +1 -0
  15. package/lib/_external/node_modules_ret_lib/util.mjs +116 -0
  16. package/lib/_external/node_modules_ret_lib/util.mjs.map +1 -0
  17. package/lib/_virtual/_commonjsHelpers.mjs +6 -0
  18. package/lib/_virtual/_commonjsHelpers.mjs.map +1 -0
  19. package/lib/_virtual/index.mjs +4 -0
  20. package/lib/_virtual/index.mjs.map +1 -0
  21. package/lib/_virtual/positions.mjs +4 -0
  22. package/lib/_virtual/positions.mjs.map +1 -0
  23. package/lib/_virtual/sets.mjs +4 -0
  24. package/lib/_virtual/sets.mjs.map +1 -0
  25. package/lib/_virtual/util.mjs +4 -0
  26. package/lib/_virtual/util.mjs.map +1 -0
  27. package/lib/functional/Namespace/functional.mjs +8 -0
  28. package/lib/functional/Namespace/functional.mjs.map +1 -0
  29. package/lib/functional/Namespace/http.mjs +12 -0
  30. package/lib/functional/Namespace/http.mjs.map +1 -0
  31. package/lib/functional/Namespace/index.mjs +54 -0
  32. package/lib/functional/Namespace/index.mjs.map +1 -0
  33. package/lib/functional/Namespace/json.mjs +18 -0
  34. package/lib/functional/Namespace/json.mjs.map +1 -0
  35. package/lib/functional/Namespace/misc.mjs +16 -0
  36. package/lib/functional/Namespace/misc.mjs.map +1 -0
  37. package/lib/functional/Namespace/notations.mjs +24 -0
  38. package/lib/functional/Namespace/notations.mjs.map +1 -0
  39. package/lib/functional/Namespace/protobuf.mjs +22 -0
  40. package/lib/functional/Namespace/protobuf.mjs.map +1 -0
  41. package/lib/functional/_FormDataReader/_FormDataReader.mjs +64 -0
  42. package/lib/functional/_FormDataReader/_FormDataReader.mjs.map +1 -0
  43. package/lib/functional/_HeadersReader/_HeadersReader.mjs +25 -0
  44. package/lib/functional/_HeadersReader/_HeadersReader.mjs.map +1 -0
  45. package/lib/functional/_ParameterReader/_ParameterReader.mjs +25 -0
  46. package/lib/functional/_ParameterReader/_ParameterReader.mjs.map +1 -0
  47. package/lib/functional/_ProtobufReader.mjs +177 -0
  48. package/lib/functional/_ProtobufReader.mjs.map +1 -0
  49. package/lib/functional/_ProtobufSizer.mjs +133 -0
  50. package/lib/functional/_ProtobufSizer.mjs.map +1 -0
  51. package/lib/functional/_ProtobufWriter.mjs +125 -0
  52. package/lib/functional/_ProtobufWriter.mjs.map +1 -0
  53. package/lib/functional/_QueryReader/_QueryReader.mjs +38 -0
  54. package/lib/functional/_QueryReader/_QueryReader.mjs.map +1 -0
  55. package/lib/functional/_any.mjs +6 -0
  56. package/lib/functional/_any.mjs.map +1 -0
  57. package/lib/functional/_clone.mjs +4 -0
  58. package/lib/functional/_clone.mjs.map +1 -0
  59. package/lib/functional/_convention.mjs +37 -0
  60. package/lib/functional/_convention.mjs.map +1 -0
  61. package/lib/functional/_every.mjs +10 -0
  62. package/lib/functional/_every.mjs.map +1 -0
  63. package/lib/functional/_guard.mjs +18 -0
  64. package/lib/functional/_guard.mjs.map +1 -0
  65. package/lib/functional/_is_between.mjs +4 -0
  66. package/lib/functional/_is_between.mjs.map +1 -0
  67. package/lib/functional/_join.mjs +44 -0
  68. package/lib/functional/_join.mjs.map +1 -0
  69. package/lib/functional/_number.mjs +15 -0
  70. package/lib/functional/_number.mjs.map +1 -0
  71. package/lib/functional/_report.mjs +16 -0
  72. package/lib/functional/_report.mjs.map +1 -0
  73. package/lib/functional/_rest.mjs +6 -0
  74. package/lib/functional/_rest.mjs.map +1 -0
  75. package/lib/functional/_stoll.mjs +12 -0
  76. package/lib/functional/_stoll.mjs.map +1 -0
  77. package/lib/functional/_string.mjs +41 -0
  78. package/lib/functional/_string.mjs.map +1 -0
  79. package/lib/functional/_strlen.mjs +11 -0
  80. package/lib/functional/_strlen.mjs.map +1 -0
  81. package/lib/functional/_tail.mjs +7 -0
  82. package/lib/functional/_tail.mjs.map +1 -0
  83. package/lib/functional/_throws.mjs +11 -0
  84. package/lib/functional/_throws.mjs.map +1 -0
  85. package/lib/functional/is.mjs +13 -0
  86. package/lib/functional/is.mjs.map +1 -0
  87. package/lib/functional.mjs +150 -0
  88. package/lib/functional.mjs.map +1 -0
  89. package/lib/http.mjs +239 -0
  90. package/lib/http.mjs.map +1 -0
  91. package/lib/index.mjs +23 -2681
  92. package/lib/index.mjs.map +1 -1
  93. package/lib/json.mjs +126 -0
  94. package/lib/json.mjs.map +1 -0
  95. package/lib/misc.mjs +154 -0
  96. package/lib/misc.mjs.map +1 -0
  97. package/lib/module.mjs +161 -0
  98. package/lib/module.mjs.map +1 -0
  99. package/lib/notations.mjs +222 -0
  100. package/lib/notations.mjs.map +1 -0
  101. package/lib/protobuf.mjs +157 -0
  102. package/lib/protobuf.mjs.map +1 -0
  103. package/lib/reflect.mjs +19 -0
  104. package/lib/reflect.mjs.map +1 -0
  105. package/lib/tags/index.mjs +2 -0
  106. package/lib/tags/index.mjs.map +1 -0
  107. package/lib/utils/NamingConvention/NamingConvention.mjs +98 -0
  108. package/lib/utils/NamingConvention/NamingConvention.mjs.map +1 -0
  109. package/lib/utils/RandomGenerator/RandomGenerator.mjs +104 -0
  110. package/lib/utils/RandomGenerator/RandomGenerator.mjs.map +1 -0
  111. package/lib/utils/StringUtil/StringUtil.mjs +4 -0
  112. package/lib/utils/StringUtil/StringUtil.mjs.map +1 -0
  113. package/package.json +5 -6
@@ -0,0 +1,54 @@
1
+ import * as RandomGenerator from '../../utils/RandomGenerator/RandomGenerator.mjs';
2
+ import { pick } from '../../utils/RandomGenerator/RandomGenerator.mjs';
3
+ import { $every } from '../_every.mjs';
4
+ import { $guard } from '../_guard.mjs';
5
+ import { $join } from '../_join.mjs';
6
+ import { $report } from '../_report.mjs';
7
+ import { TypeGuardError } from '../../TypeGuardError.mjs';
8
+ import { is } from '../is.mjs';
9
+
10
+ const assert = (method) => ({
11
+ ...is(),
12
+ join: $join,
13
+ every: $every,
14
+ guard: $guard(`typia.${method}`),
15
+ predicate: (matched, exceptionable, closure) => {
16
+ if (matched === false && exceptionable === true)
17
+ throw new TypeGuardError({
18
+ ...closure(),
19
+ method: `typia.${method}`,
20
+ });
21
+ return matched;
22
+ },
23
+ });
24
+ const validate = () => ({
25
+ ...is(),
26
+ join: $join,
27
+ report: $report,
28
+ predicate: (res) => (matched, exceptionable, closure) => {
29
+ // CHECK FAILURE
30
+ if (matched === false && exceptionable === true)
31
+ (() => {
32
+ res.success &&= false;
33
+ const errorList = res.errors;
34
+ // TRACE ERROR
35
+ const error = closure();
36
+ if (errorList.length) {
37
+ const last = errorList[errorList.length - 1].path;
38
+ if (last.length >= error.path.length &&
39
+ last.substring(0, error.path.length) === error.path)
40
+ return;
41
+ }
42
+ errorList.push(error);
43
+ return;
44
+ })();
45
+ return matched;
46
+ },
47
+ });
48
+ const random = () => ({
49
+ generator: RandomGenerator,
50
+ pick: pick,
51
+ });
52
+
53
+ export { assert, is, random, validate };
54
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/functional/Namespace/index.ts"],"sourcesContent":[null],"names":["RandomGenerator.pick"],"mappings":";;;;;;;;;MAmBa,MAAM,GAAG,CAAC,MAAc,MAAM;AACzC,IAAA,GAAG,EAAE,EAAE;AACP,IAAA,IAAI,EAAE,KAAK;AACX,IAAA,KAAK,EAAE,MAAM;AACb,IAAA,KAAK,EAAE,MAAM,CAAC,CAAS,MAAA,EAAA,MAAM,EAAE,CAAC;IAChC,SAAS,EAAE,CACT,OAAgB,EAChB,aAAsB,EACtB,OAAoD,KACzC;AACX,QAAA,IAAI,OAAO,KAAK,KAAK,IAAI,aAAa,KAAK,IAAI;YAC7C,MAAM,IAAI,cAAc,CAAC;AACvB,gBAAA,GAAG,OAAO,EAAE;gBACZ,MAAM,EAAE,CAAS,MAAA,EAAA,MAAM,CAAE,CAAA;AAC1B,aAAA,CAAC,CAAC;AACL,QAAA,OAAO,OAAO,CAAC;KAChB;AACF,CAAA,EAAE;AAEU,MAAA,QAAQ,GAAG,OAAO;AAC7B,IAAA,GAAG,EAAE,EAAE;AACP,IAAA,IAAI,EAAE,KAAK;AACX,IAAA,MAAM,EAAE,OAAO;AACf,IAAA,SAAS,EACP,CAAC,GAAgB,KACjB,CACE,OAAgB,EAChB,aAAsB,EACtB,OAAiC,KAC/B;;AAEF,QAAA,IAAI,OAAO,KAAK,KAAK,IAAI,aAAa,KAAK,IAAI;AAC7C,YAAA,CAAC,MAAK;AACJ,gBAAA,GAAG,CAAC,OAAO,KAAK,KAAK,CAAC;AACtB,gBAAA,MAAM,SAAS,GAAI,GAA4B,CAAC,MAAM,CAAC;;AAGvD,gBAAA,MAAM,KAAK,GAAG,OAAO,EAAE,CAAC;AACxB,gBAAA,IAAI,SAAS,CAAC,MAAM,EAAE;AACpB,oBAAA,MAAM,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,IAAI,CAAC;oBACnD,IACE,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM;AAChC,wBAAA,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,KAAK,CAAC,IAAI;wBAEnD,OAAO;iBACV;AACD,gBAAA,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACtB,OAAO;aACR,GAAG,CAAC;AACP,QAAA,OAAO,OAAO,CAAC;KAChB;AACJ,CAAA,EAAE;AAEU,MAAA,MAAM,GAAG,OAAO;AAC3B,IAAA,SAAS,EAAE,eAAe;IAC1B,IAAI,EAAEA,IAAoB;AAC3B,CAAA;;;;"}
@@ -0,0 +1,18 @@
1
+ import { $number } from '../_number.mjs';
2
+ import { $rest } from '../_rest.mjs';
3
+ import { $string } from '../_string.mjs';
4
+ import { $tail } from '../_tail.mjs';
5
+ import { $throws } from '../_throws.mjs';
6
+ import { is } from '../is.mjs';
7
+
8
+ const stringify = (method) => ({
9
+ ...is(),
10
+ number: $number,
11
+ string: $string,
12
+ tail: $tail,
13
+ rest: $rest,
14
+ throws: $throws(`json.${method}`),
15
+ });
16
+
17
+ export { stringify };
18
+ //# sourceMappingURL=json.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json.mjs","sources":["../../../src/functional/Namespace/json.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;MAOa,SAAS,GAAG,CAAC,MAAc,MAAM;AAC5C,IAAA,GAAG,EAAE,EAAE;AACP,IAAA,MAAM,EAAE,OAAO;AACf,IAAA,MAAM,EAAE,OAAO;AACf,IAAA,IAAI,EAAE,KAAK;AACX,IAAA,IAAI,EAAE,KAAK;AACX,IAAA,MAAM,EAAE,OAAO,CAAC,CAAQ,KAAA,EAAA,MAAM,EAAE,CAAC;AAClC,CAAA;;;;"}
@@ -0,0 +1,16 @@
1
+ import { $any } from '../_any.mjs';
2
+ import { $throws } from '../_throws.mjs';
3
+ import { is } from '../is.mjs';
4
+
5
+ const clone = (method) => ({
6
+ ...is(),
7
+ throws: $throws(`misc.${method}`),
8
+ any: $any,
9
+ });
10
+ const prune = (method) => ({
11
+ ...is(),
12
+ throws: $throws(`misc.${method}`),
13
+ });
14
+
15
+ export { clone, prune };
16
+ //# sourceMappingURL=misc.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"misc.mjs","sources":["../../../src/functional/Namespace/misc.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;MAIa,KAAK,GAAG,CAAC,MAAc,MAAM;AACxC,IAAA,GAAG,EAAE,EAAE;AACP,IAAA,MAAM,EAAE,OAAO,CAAC,CAAQ,KAAA,EAAA,MAAM,EAAE,CAAC;AACjC,IAAA,GAAG,EAAE,IAAI;AACV,CAAA,EAAE;MAEU,KAAK,GAAG,CAAC,MAAc,MAAM;AACxC,IAAA,GAAG,EAAE,EAAE;AACP,IAAA,MAAM,EAAE,OAAO,CAAC,CAAQ,KAAA,EAAA,MAAM,EAAE,CAAC;AAClC,CAAA;;;;"}
@@ -0,0 +1,24 @@
1
+ import { camel as camel$1, pascal as pascal$1, snake as snake$1 } from '../../utils/NamingConvention/NamingConvention.mjs';
2
+ import { $convention } from '../_convention.mjs';
3
+ import { $throws } from '../_throws.mjs';
4
+ import { is } from '../is.mjs';
5
+
6
+ const camel = (method) => ({
7
+ ...base(method),
8
+ any: $convention(camel$1),
9
+ });
10
+ const pascal = (method) => ({
11
+ ...base(method),
12
+ any: $convention(pascal$1),
13
+ });
14
+ const snake = (method) => ({
15
+ ...base(method),
16
+ any: $convention(snake$1),
17
+ });
18
+ const base = (method) => ({
19
+ ...is(),
20
+ throws: $throws(`notations.${method}`),
21
+ });
22
+
23
+ export { camel, pascal, snake };
24
+ //# sourceMappingURL=notations.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notations.mjs","sources":["../../../src/functional/Namespace/notations.ts"],"sourcesContent":[null],"names":["NamingConvention.camel","NamingConvention.pascal","NamingConvention.snake"],"mappings":";;;;;MAMa,KAAK,GAAG,CAAC,MAAc,MAAM;IACxC,GAAG,IAAI,CAAC,MAAM,CAAC;AACf,IAAA,GAAG,EAAE,WAAW,CAACA,OAAsB,CAAC;AACzC,CAAA,EAAE;MACU,MAAM,GAAG,CAAC,MAAc,MAAM;IACzC,GAAG,IAAI,CAAC,MAAM,CAAC;AACf,IAAA,GAAG,EAAE,WAAW,CAACC,QAAuB,CAAC;AAC1C,CAAA,EAAE;MACU,KAAK,GAAG,CAAC,MAAc,MAAM;IACxC,GAAG,IAAI,CAAC,MAAM,CAAC;AACf,IAAA,GAAG,EAAE,WAAW,CAACC,OAAsB,CAAC;AACzC,CAAA,EAAE;AAEH,MAAM,IAAI,GAAG,CAAC,MAAc,MAAM;AAChC,IAAA,GAAG,EAAE,EAAE;AACP,IAAA,MAAM,EAAE,OAAO,CAAC,CAAa,UAAA,EAAA,MAAM,EAAE,CAAC;AACvC,CAAA,CAAC;;;;"}
@@ -0,0 +1,22 @@
1
+ import { $ProtobufReader } from '../_ProtobufReader.mjs';
2
+ import { $ProtobufSizer } from '../_ProtobufSizer.mjs';
3
+ import { $ProtobufWriter } from '../_ProtobufWriter.mjs';
4
+ import { $strlen } from '../_strlen.mjs';
5
+ import { $throws } from '../_throws.mjs';
6
+ import { is } from '../is.mjs';
7
+
8
+ const decode = (method) => ({
9
+ ...is(),
10
+ Reader: $ProtobufReader,
11
+ throws: $throws(`protobuf.${method}`),
12
+ });
13
+ const encode = (method) => ({
14
+ ...is(),
15
+ Sizer: $ProtobufSizer,
16
+ Writer: $ProtobufWriter,
17
+ strlen: $strlen,
18
+ throws: $throws(method),
19
+ });
20
+
21
+ export { decode, encode };
22
+ //# sourceMappingURL=protobuf.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protobuf.mjs","sources":["../../../src/functional/Namespace/protobuf.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;MAOa,MAAM,GAAG,CAAC,MAAc,MAAM;AACzC,IAAA,GAAG,EAAE,EAAE;AACP,IAAA,MAAM,EAAE,eAAe;AACvB,IAAA,MAAM,EAAE,OAAO,CAAC,CAAY,SAAA,EAAA,MAAM,EAAE,CAAC;AACtC,CAAA,EAAE;MAEU,MAAM,GAAG,CAAC,MAAc,MAAM;AACzC,IAAA,GAAG,EAAE,EAAE;AACP,IAAA,KAAK,EAAE,cAAc;AACrB,IAAA,MAAM,EAAE,eAAe;AACvB,IAAA,MAAM,EAAE,OAAO;AACf,IAAA,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC;AACxB,CAAA;;;;"}
@@ -0,0 +1,64 @@
1
+ const boolean = (input) => input instanceof File
2
+ ? input
3
+ : input === null
4
+ ? undefined
5
+ : input === "null"
6
+ ? null
7
+ : input.length === 0
8
+ ? true
9
+ : input === "true" || input === "1"
10
+ ? true
11
+ : input === "false" || input === "0"
12
+ ? false
13
+ : input; // wrong type
14
+ const number = (input) => input instanceof File
15
+ ? input
16
+ : !!input?.length
17
+ ? input === "null"
18
+ ? null
19
+ : toNumber(input)
20
+ : undefined;
21
+ const bigint = (input) => input instanceof File
22
+ ? input
23
+ : !!input?.length
24
+ ? input === "null"
25
+ ? null
26
+ : toBigint(input)
27
+ : undefined;
28
+ const string = (input) => input instanceof File
29
+ ? input
30
+ : input === null
31
+ ? undefined
32
+ : input === "null"
33
+ ? null
34
+ : input;
35
+ const array = (input, alternative) => input.length ? input : alternative;
36
+ const blob = (input) => input instanceof Blob
37
+ ? input
38
+ : input === null
39
+ ? undefined
40
+ : input === "null"
41
+ ? null
42
+ : input;
43
+ const file = (input) => input instanceof File
44
+ ? input
45
+ : input === null
46
+ ? undefined
47
+ : input === "null"
48
+ ? null
49
+ : input;
50
+ const toNumber = (str) => {
51
+ const value = Number(str);
52
+ return isNaN(value) ? str : value;
53
+ };
54
+ const toBigint = (str) => {
55
+ try {
56
+ return BigInt(str);
57
+ }
58
+ catch {
59
+ return str;
60
+ }
61
+ };
62
+
63
+ export { array, bigint, blob, boolean, file, number, string };
64
+ //# sourceMappingURL=_FormDataReader.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_FormDataReader.mjs","sources":["../../../src/functional/$FormDataReader/$FormDataReader.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAa,MAAA,OAAO,GAAG,CACrB,KAA2B,KAE3B,KAAK,YAAY,IAAI;AACnB,MAAG,KAAa;MACd,KAAK,KAAK,IAAI;AACd,UAAE,SAAS;UACT,KAAK,KAAK,MAAM;AAChB,cAAE,IAAI;AACN,cAAE,KAAK,CAAC,MAAM,KAAK,CAAC;AAClB,kBAAE,IAAI;AACN,kBAAE,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,GAAG;AACjC,sBAAE,IAAI;AACN,sBAAE,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,GAAG;AAClC,0BAAE,KAAK;AACP,0BAAG,MAAc;AAElB,MAAA,MAAM,GAAG,CACpB,KAA2B,KAE3B,KAAK,YAAY,IAAI;AACnB,MAAG,KAAa;AAChB,MAAE,CAAC,CAAC,KAAK,EAAE,MAAM;UACb,KAAK,KAAK,MAAM;AAChB,cAAE,IAAI;AACN,cAAG,QAAQ,CAAC,KAAK,CAAS;UAC1B,UAAU;AAEL,MAAA,MAAM,GAAG,CACpB,KAA2B,KAE3B,KAAK,YAAY,IAAI;AACnB,MAAG,KAAa;AAChB,MAAE,CAAC,CAAC,KAAK,EAAE,MAAM;UACb,KAAK,KAAK,MAAM;AAChB,cAAE,IAAI;AACN,cAAG,QAAQ,CAAC,KAAK,CAAS;UAC1B,UAAU;AAEL,MAAA,MAAM,GAAG,CACpB,KAA2B,KAE3B,KAAK,YAAY,IAAI;AACnB,MAAG,KAAa;MACd,KAAK,KAAK,IAAI;AACd,UAAE,SAAS;UACT,KAAK,KAAK,MAAM;AAChB,cAAE,IAAI;cACJ,MAAM;MAEH,KAAK,GAAG,CAAC,KAAY,EAAE,WAA6B,KAC/D,KAAK,CAAC,MAAM,GAAG,KAAK,GAAG,YAAY;AAExB,MAAA,IAAI,GAAG,CAAC,KAA2B,KAC9C,KAAK,YAAY,IAAI;AACnB,MAAE,KAAK;MACL,KAAK,KAAK,IAAI;AACd,UAAE,SAAS;UACT,KAAK,KAAK,MAAM;AAChB,cAAE,IAAI;cACH,MAAc;AAEZ,MAAA,IAAI,GAAG,CAAC,KAA2B,KAC9C,KAAK,YAAY,IAAI;AACnB,MAAE,KAAK;MACL,KAAK,KAAK,IAAI;AACd,UAAE,SAAS;UACT,KAAK,KAAK,MAAM;AAChB,cAAE,IAAI;cACH,MAAc;AAEzB,MAAM,QAAQ,GAAG,CAAC,GAAW,KAAqB;AAChD,IAAA,MAAM,KAAK,GAAW,MAAM,CAAC,GAAG,CAAC,CAAC;AAClC,IAAA,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC;AACpC,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,GAAW,KAAqB;AAChD,IAAA,IAAI;AACF,QAAA,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;KACpB;AAAC,IAAA,MAAM;AACN,QAAA,OAAO,GAAG,CAAC;KACZ;AACH,CAAC;;;;"}
@@ -0,0 +1,25 @@
1
+ const boolean = (value) => value !== undefined
2
+ ? value === "true"
3
+ ? true
4
+ : value === "false"
5
+ ? false
6
+ : value
7
+ : undefined;
8
+ const bigint = (value) => value !== undefined ? toBigint(value) : undefined;
9
+ const number = (value) => value !== undefined ? toNumber(value) : undefined;
10
+ const string = (value) => value;
11
+ const toBigint = (str) => {
12
+ try {
13
+ return BigInt(str);
14
+ }
15
+ catch {
16
+ return str;
17
+ }
18
+ };
19
+ const toNumber = (str) => {
20
+ const value = Number(str);
21
+ return isNaN(value) ? str : value;
22
+ };
23
+
24
+ export { bigint, boolean, number, string };
25
+ //# sourceMappingURL=_HeadersReader.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_HeadersReader.mjs","sources":["../../../src/functional/$HeadersReader/$HeadersReader.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAa,MAAA,OAAO,GAAG,CAAC,KAAyB,KAC/C,KAAK,KAAK,SAAS;MACf,KAAK,KAAK,MAAM;AAChB,UAAE,IAAI;UACJ,KAAK,KAAK,OAAO;AACjB,cAAE,KAAK;AACP,cAAE,KAAK;MACT,UAAU;MACH,MAAM,GAAG,CAAC,KAAyB,KAC9C,KAAK,KAAK,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,UAAU;MACvC,MAAM,GAAG,CAAC,KAAyB,KAC9C,KAAK,KAAK,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,UAAU;AACvC,MAAA,MAAM,GAAG,CAAC,KAAyB,KAAK,MAAM;AAE3D,MAAM,QAAQ,GAAG,CAAC,GAAW,KAAqB;AAChD,IAAA,IAAI;AACF,QAAA,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;KACpB;AAAC,IAAA,MAAM;AACN,QAAA,OAAO,GAAG,CAAC;KACZ;AACH,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,GAAW,KAAqB;AAChD,IAAA,MAAM,KAAK,GAAW,MAAM,CAAC,GAAG,CAAC,CAAC;AAClC,IAAA,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC;AACpC,CAAC;;;;"}
@@ -0,0 +1,25 @@
1
+ const boolean = (value) => value !== "null"
2
+ ? value === "true" || value === "1"
3
+ ? true
4
+ : value === "false" || value === "0"
5
+ ? false
6
+ : value
7
+ : null;
8
+ const bigint = (value) => value !== "null" ? toBigint(value) : null;
9
+ const number = (value) => value !== "null" ? toNumber(value) : null;
10
+ const string = (value) => (value !== "null" ? value : null);
11
+ const toNumber = (str) => {
12
+ const value = Number(str);
13
+ return isNaN(value) ? str : value;
14
+ };
15
+ const toBigint = (str) => {
16
+ try {
17
+ return BigInt(str);
18
+ }
19
+ catch {
20
+ return str;
21
+ }
22
+ };
23
+
24
+ export { bigint, boolean, number, string };
25
+ //# sourceMappingURL=_ParameterReader.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_ParameterReader.mjs","sources":["../../../src/functional/$ParameterReader/$ParameterReader.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAa,MAAA,OAAO,GAAG,CAAC,KAAa,KACnC,KAAK,KAAK,MAAM;AACd,MAAE,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,GAAG;AACjC,UAAE,IAAI;AACN,UAAE,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,GAAG;AAClC,cAAE,KAAK;AACP,cAAE,KAAK;MACT,KAAK;MAEE,MAAM,GAAG,CAAC,KAAa,KAClC,KAAK,KAAK,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,KAAK;MAE/B,MAAM,GAAG,CAAC,KAAa,KAClC,KAAK,KAAK,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,KAAK;MAE/B,MAAM,GAAG,CAAC,KAAa,MAAM,KAAK,KAAK,MAAM,GAAG,KAAK,GAAG,IAAI,EAAE;AAE3E,MAAM,QAAQ,GAAG,CAAC,GAAW,KAAqB;AAChD,IAAA,MAAM,KAAK,GAAW,MAAM,CAAC,GAAG,CAAC,CAAC;AAClC,IAAA,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC;AACpC,CAAC,CAAC;AAEF,MAAM,QAAQ,GAAG,CAAC,GAAW,KAAqB;AAChD,IAAA,IAAI;AACF,QAAA,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;KACpB;AAAC,IAAA,MAAM;AACN,QAAA,OAAO,GAAG,CAAC;KACZ;AACH,CAAC;;;;"}
@@ -0,0 +1,177 @@
1
+ /// @reference https://github.com/piotr-oles/as-proto/blob/main/packages/as-proto/assembly/internal/FixedReader.ts
2
+ class $ProtobufReader {
3
+ /**
4
+ * Read buffer
5
+ */
6
+ buf;
7
+ /**
8
+ * Read buffer pointer.
9
+ */
10
+ ptr;
11
+ /**
12
+ * DataView for buffer.
13
+ */
14
+ view;
15
+ constructor(buf) {
16
+ this.buf = buf;
17
+ this.ptr = 0;
18
+ this.view = new DataView(buf.buffer, buf.byteOffset, buf.byteLength);
19
+ }
20
+ index() {
21
+ return this.ptr;
22
+ }
23
+ size() {
24
+ return this.buf.length;
25
+ }
26
+ uint32() {
27
+ return this.varint32();
28
+ }
29
+ int32() {
30
+ return this.varint32();
31
+ }
32
+ sint32() {
33
+ const value = this.varint32();
34
+ return (value >>> 1) ^ -(value & 1);
35
+ }
36
+ uint64() {
37
+ return this.varint64();
38
+ }
39
+ int64() {
40
+ return this.varint64();
41
+ }
42
+ sint64() {
43
+ const value = this.varint64();
44
+ return (value >> N01) ^ -(value & N01);
45
+ }
46
+ bool() {
47
+ return this.varint32() !== 0;
48
+ }
49
+ float() {
50
+ const value = this.view.getFloat32(this.ptr, true);
51
+ this.ptr += 4;
52
+ return value;
53
+ }
54
+ double() {
55
+ const value = this.view.getFloat64(this.ptr, true);
56
+ this.ptr += 8;
57
+ return value;
58
+ }
59
+ bytes() {
60
+ const length = this.uint32();
61
+ const from = this.ptr;
62
+ this.ptr += length;
63
+ return this.buf.subarray(from, from + length);
64
+ }
65
+ string() {
66
+ return utf8.decode(this.bytes());
67
+ }
68
+ skip(length) {
69
+ if (length === 0)
70
+ while (this.u8() & 0x80)
71
+ ;
72
+ else {
73
+ if (this.index() + length > this.size())
74
+ throw new Error("Error on typia.protobuf.decode(): buffer overflow.");
75
+ this.ptr += length;
76
+ }
77
+ }
78
+ skipType(wireType) {
79
+ switch (wireType) {
80
+ case 0 /* ProtobufWire.VARIANT */:
81
+ this.skip(0);
82
+ break;
83
+ case 1 /* ProtobufWire.I64 */:
84
+ this.skip(8);
85
+ break;
86
+ case 2 /* ProtobufWire.LEN */:
87
+ this.skip(this.uint32());
88
+ break;
89
+ case 3 /* ProtobufWire.START_GROUP */:
90
+ while ((wireType = this.uint32() & 0x07) !== 4 /* ProtobufWire.END_GROUP */)
91
+ this.skipType(wireType);
92
+ break;
93
+ case 5 /* ProtobufWire.I32 */:
94
+ this.skip(4);
95
+ break;
96
+ default:
97
+ throw new Error(`Invalid wire type ${wireType} at offset ${this.ptr}.`);
98
+ }
99
+ }
100
+ varint32() {
101
+ let loaded;
102
+ let value;
103
+ value = (loaded = this.u8()) & 0x7f;
104
+ if (loaded < 0x80)
105
+ return value;
106
+ value |= ((loaded = this.u8()) & 0x7f) << 7;
107
+ if (loaded < 0x80)
108
+ return value;
109
+ value |= ((loaded = this.u8()) & 0x7f) << 14;
110
+ if (loaded < 0x80)
111
+ return value;
112
+ value |= ((loaded = this.u8()) & 0x7f) << 21;
113
+ if (loaded < 0x80)
114
+ return value;
115
+ value |= ((loaded = this.u8()) & 0xf) << 28;
116
+ if (loaded < 0x80)
117
+ return value;
118
+ // increment position until there is no continuation bit or until we read 10 bytes
119
+ if (this.u8() < 0x80)
120
+ return value;
121
+ if (this.u8() < 0x80)
122
+ return value;
123
+ if (this.u8() < 0x80)
124
+ return value;
125
+ if (this.u8() < 0x80)
126
+ return value;
127
+ if (this.u8() < 0x80)
128
+ return value;
129
+ return value;
130
+ }
131
+ varint64() {
132
+ let loaded;
133
+ let value;
134
+ value = (loaded = this.u8n()) & N7F;
135
+ if (loaded < N80)
136
+ return value;
137
+ value |= ((loaded = this.u8n()) & N7F) << BigInt(7);
138
+ if (loaded < N80)
139
+ return value;
140
+ value |= ((loaded = this.u8n()) & N7F) << BigInt(14);
141
+ if (loaded < N80)
142
+ return value;
143
+ value |= ((loaded = this.u8n()) & N7F) << BigInt(21);
144
+ if (loaded < N80)
145
+ return value;
146
+ value |= ((loaded = this.u8n()) & N7F) << BigInt(28);
147
+ if (loaded < N80)
148
+ return value;
149
+ value |= ((loaded = this.u8n()) & N7F) << BigInt(35);
150
+ if (loaded < N80)
151
+ return value;
152
+ value |= ((loaded = this.u8n()) & N7F) << BigInt(42);
153
+ if (loaded < N80)
154
+ return value;
155
+ value |= ((loaded = this.u8n()) & N7F) << BigInt(49);
156
+ if (loaded < N80)
157
+ return value;
158
+ value |= ((loaded = this.u8n()) & N7F) << BigInt(56);
159
+ if (loaded < N80)
160
+ return value;
161
+ value |= (this.u8n() & N01) << BigInt(63);
162
+ return BigInt.asIntN(64, value);
163
+ }
164
+ u8() {
165
+ return this.view.getUint8(this.ptr++);
166
+ }
167
+ u8n() {
168
+ return BigInt(this.u8());
169
+ }
170
+ }
171
+ const utf8 = /** @__PURE__ */ new TextDecoder();
172
+ const N01 = /** @__PURE__ */ BigInt(0x01);
173
+ const N7F = /** @__PURE__ */ BigInt(0x7f);
174
+ const N80 = /** @__PURE__ */ BigInt(0x80);
175
+
176
+ export { $ProtobufReader };
177
+ //# sourceMappingURL=_ProtobufReader.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_ProtobufReader.mjs","sources":["../../src/functional/$ProtobufReader.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,133 @@
1
+ import { $strlen } from './_strlen.mjs';
2
+
3
+ /// @reference https://github.com/piotr-oles/as-proto/blob/main/packages/as-proto/assembly/internal/FixedSizer.ts
4
+ class $ProtobufSizer {
5
+ /**
6
+ * Total length.
7
+ */
8
+ len;
9
+ /**
10
+ * Position stack.
11
+ */
12
+ pos;
13
+ /**
14
+ * Variable length list.
15
+ */
16
+ varlen;
17
+ /**
18
+ * Variable length index stack.
19
+ */
20
+ varlenidx;
21
+ constructor(length = 0) {
22
+ this.len = length;
23
+ this.pos = [];
24
+ this.varlen = [];
25
+ this.varlenidx = [];
26
+ }
27
+ bool() {
28
+ this.len += 1;
29
+ }
30
+ int32(value) {
31
+ if (value < 0) {
32
+ // 10 bytes to encode negative number
33
+ this.len += 10;
34
+ }
35
+ else {
36
+ this.varint32(value);
37
+ }
38
+ }
39
+ sint32(value) {
40
+ this.varint32((value << 1) ^ (value >> 31));
41
+ }
42
+ uint32(value) {
43
+ this.varint32(value);
44
+ }
45
+ int64(value) {
46
+ this.varint64(typeof value === "number" ? BigInt(value) : value);
47
+ }
48
+ sint64(value) {
49
+ if (typeof value === "number")
50
+ value = BigInt(value);
51
+ this.varint64((value << BigInt(1)) ^ (value >> BigInt(63)));
52
+ }
53
+ uint64(value) {
54
+ this.varint64(typeof value === "number" ? BigInt(value) : value);
55
+ }
56
+ // public fixed32(_value: number): void {
57
+ // this.len += 4;
58
+ // }
59
+ // public sfixed32(_value: number): void {
60
+ // this.len += 4;
61
+ // }
62
+ // public fixed64(_value: number | bigint): void {
63
+ // this.len += 8;
64
+ // }
65
+ // public sfixed64(_value: number | bigint): void {
66
+ // this.len += 8;
67
+ // }
68
+ float(_value) {
69
+ this.len += 4;
70
+ }
71
+ double(_value) {
72
+ this.len += 8;
73
+ }
74
+ bytes(value) {
75
+ this.uint32(value.byteLength);
76
+ this.len += value.byteLength;
77
+ }
78
+ string(value) {
79
+ const len = $strlen(value);
80
+ this.varlen.push(len);
81
+ this.uint32(len);
82
+ this.len += len;
83
+ }
84
+ fork() {
85
+ this.pos.push(this.len); // save current position
86
+ this.varlenidx.push(this.varlen.length); // save current index in varlen array
87
+ this.varlen.push(0); // add 0 length to varlen array (to be updated in ldelim())
88
+ }
89
+ ldelim() {
90
+ if (!(this.pos.length && this.varlenidx.length))
91
+ throw new Error("Error on typia.protobuf.encode(): missing fork() before ldelim() call.");
92
+ const endPos = this.len; // current position is end position
93
+ const startPos = this.pos.pop(); // get start position from stack
94
+ const idx = this.varlenidx.pop(); // get varlen index from stack
95
+ const len = endPos - startPos; // calculate length
96
+ this.varlen[idx] = len; // update variable length
97
+ this.uint32(len); // add uint32 that should be called in fork()
98
+ }
99
+ reset() {
100
+ this.len = 0;
101
+ // re-use arrays
102
+ this.pos.length = 0;
103
+ this.varlen.length = 0;
104
+ this.varlenidx.length = 0;
105
+ }
106
+ varint32(value) {
107
+ this.len +=
108
+ value < 0
109
+ ? 10 // 10 bits with leading 1's
110
+ : value < 0x80
111
+ ? 1
112
+ : value < 0x4000
113
+ ? 2
114
+ : value < 0x200000
115
+ ? 3
116
+ : value < 0x10000000
117
+ ? 4
118
+ : 5;
119
+ }
120
+ varint64(val) {
121
+ val = BigInt.asUintN(64, val);
122
+ while (val > NX7F) {
123
+ ++this.len;
124
+ val = val >> ND07;
125
+ }
126
+ ++this.len;
127
+ }
128
+ }
129
+ const ND07 = /** @__PURE__ */ BigInt(7);
130
+ const NX7F = /** @__PURE__ */ BigInt(0x7f);
131
+
132
+ export { $ProtobufSizer };
133
+ //# sourceMappingURL=_ProtobufSizer.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_ProtobufSizer.mjs","sources":["../../src/functional/$ProtobufSizer.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}