@catbee/utils 0.0.8-rc.0 → 0.0.8-rc.2

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 (281) hide show
  1. package/README.md +25 -1
  2. package/build/esm/config.d.ts +0 -1
  3. package/build/esm/config.js +6 -7
  4. package/build/esm/index.d.ts +0 -1
  5. package/build/esm/index.js +0 -1
  6. package/build/esm/servers/server.builder.d.ts +0 -1
  7. package/build/esm/servers/server.builder.js +99 -147
  8. package/build/esm/servers/server.d.ts +0 -1
  9. package/build/esm/servers/server.js +591 -876
  10. package/build/esm/types/api-response.d.ts +0 -1
  11. package/build/esm/types/api-response.js +0 -1
  12. package/build/esm/types/index.d.ts +0 -1
  13. package/build/esm/types/index.js +0 -1
  14. package/build/esm/types/server.d.ts +0 -1
  15. package/build/esm/types/server.js +0 -1
  16. package/build/esm/utils/array.utils.d.ts +0 -1
  17. package/build/esm/utils/array.utils.js +48 -86
  18. package/build/esm/utils/async.utils.d.ts +0 -1
  19. package/build/esm/utils/async.utils.js +247 -524
  20. package/build/esm/utils/cache.utils.d.ts +0 -1
  21. package/build/esm/utils/cache.utils.js +96 -301
  22. package/build/esm/utils/context-store.utils.d.ts +0 -1
  23. package/build/esm/utils/context-store.utils.js +62 -79
  24. package/build/esm/utils/crypto.utils.d.ts +0 -1
  25. package/build/esm/utils/crypto.utils.js +78 -175
  26. package/build/esm/utils/date.utils.d.ts +0 -1
  27. package/build/esm/utils/date.utils.js +47 -53
  28. package/build/esm/utils/decorators.utils.d.ts +201 -5
  29. package/build/esm/utils/decorators.utils.js +632 -285
  30. package/build/esm/utils/dir.utils.d.ts +0 -1
  31. package/build/esm/utils/dir.utils.js +264 -786
  32. package/build/esm/utils/env.utils.d.ts +0 -1
  33. package/build/esm/utils/env.utils.js +180 -271
  34. package/build/esm/utils/exception.utils.d.ts +0 -1
  35. package/build/esm/utils/exception.utils.js +112 -289
  36. package/build/esm/utils/fs.utils.d.ts +0 -1
  37. package/build/esm/utils/fs.utils.js +169 -401
  38. package/build/esm/utils/http-status-codes.d.ts +0 -1
  39. package/build/esm/utils/http-status-codes.js +0 -1
  40. package/build/esm/utils/id.utils.d.ts +0 -1
  41. package/build/esm/utils/id.utils.js +5 -9
  42. package/build/esm/utils/logger.utils.d.ts +0 -1
  43. package/build/esm/utils/logger.utils.js +34 -71
  44. package/build/esm/utils/middleware.utils.d.ts +0 -1
  45. package/build/esm/utils/middleware.utils.js +65 -155
  46. package/build/esm/utils/obj.utils.d.ts +0 -1
  47. package/build/esm/utils/obj.utils.js +69 -176
  48. package/build/esm/utils/performance.utils.d.ts +0 -1
  49. package/build/esm/utils/performance.utils.js +92 -195
  50. package/build/esm/utils/request.utils.d.ts +0 -1
  51. package/build/esm/utils/request.utils.js +41 -74
  52. package/build/esm/utils/response.utils.d.ts +0 -1
  53. package/build/esm/utils/response.utils.js +84 -107
  54. package/build/esm/utils/stream.utils.d.ts +0 -1
  55. package/build/esm/utils/stream.utils.js +38 -113
  56. package/build/esm/utils/string.utils.d.ts +0 -1
  57. package/build/esm/utils/string.utils.js +6 -11
  58. package/build/esm/utils/type.utils.d.ts +0 -1
  59. package/build/esm/utils/type.utils.js +8 -12
  60. package/build/esm/utils/url.utils.d.ts +0 -1
  61. package/build/esm/utils/url.utils.js +49 -127
  62. package/build/esm/utils/validate.utils.d.ts +0 -1
  63. package/build/esm/utils/validate.utils.js +23 -40
  64. package/package.json +3 -33
  65. package/build/esm/config.js.map +0 -1
  66. package/build/esm/index.js.map +0 -1
  67. package/build/esm/servers/server.builder.js.map +0 -1
  68. package/build/esm/servers/server.js.map +0 -1
  69. package/build/esm/types/api-response.js.map +0 -1
  70. package/build/esm/types/index.js.map +0 -1
  71. package/build/esm/types/server.js.map +0 -1
  72. package/build/esm/utils/array.utils.js.map +0 -1
  73. package/build/esm/utils/async.utils.js.map +0 -1
  74. package/build/esm/utils/cache.utils.js.map +0 -1
  75. package/build/esm/utils/context-store.utils.js.map +0 -1
  76. package/build/esm/utils/crypto.utils.js.map +0 -1
  77. package/build/esm/utils/date.utils.js.map +0 -1
  78. package/build/esm/utils/decorators.utils.js.map +0 -1
  79. package/build/esm/utils/dir.utils.js.map +0 -1
  80. package/build/esm/utils/env.utils.js.map +0 -1
  81. package/build/esm/utils/exception.utils.js.map +0 -1
  82. package/build/esm/utils/fs.utils.js.map +0 -1
  83. package/build/esm/utils/http-status-codes.js.map +0 -1
  84. package/build/esm/utils/id.utils.js.map +0 -1
  85. package/build/esm/utils/logger.utils.js.map +0 -1
  86. package/build/esm/utils/middleware.utils.js.map +0 -1
  87. package/build/esm/utils/obj.utils.js.map +0 -1
  88. package/build/esm/utils/performance.utils.js.map +0 -1
  89. package/build/esm/utils/request.utils.js.map +0 -1
  90. package/build/esm/utils/response.utils.js.map +0 -1
  91. package/build/esm/utils/stream.utils.js.map +0 -1
  92. package/build/esm/utils/string.utils.js.map +0 -1
  93. package/build/esm/utils/type.utils.js.map +0 -1
  94. package/build/esm/utils/url.utils.js.map +0 -1
  95. package/build/esm/utils/validate.utils.js.map +0 -1
  96. package/build/esnext/config.d.ts +0 -122
  97. package/build/esnext/config.js +0 -133
  98. package/build/esnext/config.js.map +0 -1
  99. package/build/esnext/index.d.ts +0 -27
  100. package/build/esnext/index.js +0 -50
  101. package/build/esnext/index.js.map +0 -1
  102. package/build/esnext/servers/server.builder.d.ts +0 -508
  103. package/build/esnext/servers/server.builder.js +0 -657
  104. package/build/esnext/servers/server.builder.js.map +0 -1
  105. package/build/esnext/servers/server.d.ts +0 -256
  106. package/build/esnext/servers/server.js +0 -955
  107. package/build/esnext/servers/server.js.map +0 -1
  108. package/build/esnext/types/api-response.d.ts +0 -152
  109. package/build/esnext/types/api-response.js +0 -34
  110. package/build/esnext/types/api-response.js.map +0 -1
  111. package/build/esnext/types/index.d.ts +0 -125
  112. package/build/esnext/types/index.js +0 -25
  113. package/build/esnext/types/index.js.map +0 -1
  114. package/build/esnext/types/server.d.ts +0 -268
  115. package/build/esnext/types/server.js +0 -25
  116. package/build/esnext/types/server.js.map +0 -1
  117. package/build/esnext/utils/array.utils.d.ts +0 -168
  118. package/build/esnext/utils/array.utils.js +0 -345
  119. package/build/esnext/utils/array.utils.js.map +0 -1
  120. package/build/esnext/utils/async.utils.d.ts +0 -265
  121. package/build/esnext/utils/async.utils.js +0 -620
  122. package/build/esnext/utils/async.utils.js.map +0 -1
  123. package/build/esnext/utils/cache.utils.d.ts +0 -153
  124. package/build/esnext/utils/cache.utils.js +0 -293
  125. package/build/esnext/utils/cache.utils.js.map +0 -1
  126. package/build/esnext/utils/context-store.utils.d.ts +0 -189
  127. package/build/esnext/utils/context-store.utils.js +0 -289
  128. package/build/esnext/utils/context-store.utils.js.map +0 -1
  129. package/build/esnext/utils/crypto.utils.d.ts +0 -160
  130. package/build/esnext/utils/crypto.utils.js +0 -276
  131. package/build/esnext/utils/crypto.utils.js.map +0 -1
  132. package/build/esnext/utils/date.utils.d.ts +0 -159
  133. package/build/esnext/utils/date.utils.js +0 -384
  134. package/build/esnext/utils/date.utils.js.map +0 -1
  135. package/build/esnext/utils/decorators.utils.d.ts +0 -315
  136. package/build/esnext/utils/decorators.utils.js +0 -504
  137. package/build/esnext/utils/decorators.utils.js.map +0 -1
  138. package/build/esnext/utils/dir.utils.d.ts +0 -196
  139. package/build/esnext/utils/dir.utils.js +0 -477
  140. package/build/esnext/utils/dir.utils.js.map +0 -1
  141. package/build/esnext/utils/env.utils.d.ts +0 -377
  142. package/build/esnext/utils/env.utils.js +0 -785
  143. package/build/esnext/utils/env.utils.js.map +0 -1
  144. package/build/esnext/utils/exception.utils.d.ts +0 -230
  145. package/build/esnext/utils/exception.utils.js +0 -381
  146. package/build/esnext/utils/exception.utils.js.map +0 -1
  147. package/build/esnext/utils/fs.utils.d.ts +0 -164
  148. package/build/esnext/utils/fs.utils.js +0 -349
  149. package/build/esnext/utils/fs.utils.js.map +0 -1
  150. package/build/esnext/utils/http-status-codes.d.ts +0 -266
  151. package/build/esnext/utils/http-status-codes.js +0 -295
  152. package/build/esnext/utils/http-status-codes.js.map +0 -1
  153. package/build/esnext/utils/id.utils.d.ts +0 -36
  154. package/build/esnext/utils/id.utils.js +0 -84
  155. package/build/esnext/utils/id.utils.js.map +0 -1
  156. package/build/esnext/utils/logger.utils.d.ts +0 -160
  157. package/build/esnext/utils/logger.utils.js +0 -300
  158. package/build/esnext/utils/logger.utils.js.map +0 -1
  159. package/build/esnext/utils/middleware.utils.d.ts +0 -100
  160. package/build/esnext/utils/middleware.utils.js +0 -236
  161. package/build/esnext/utils/middleware.utils.js.map +0 -1
  162. package/build/esnext/utils/obj.utils.d.ts +0 -124
  163. package/build/esnext/utils/obj.utils.js +0 -413
  164. package/build/esnext/utils/obj.utils.js.map +0 -1
  165. package/build/esnext/utils/performance.utils.d.ts +0 -136
  166. package/build/esnext/utils/performance.utils.js +0 -271
  167. package/build/esnext/utils/performance.utils.js.map +0 -1
  168. package/build/esnext/utils/request.utils.d.ts +0 -86
  169. package/build/esnext/utils/request.utils.js +0 -186
  170. package/build/esnext/utils/request.utils.js.map +0 -1
  171. package/build/esnext/utils/response.utils.d.ts +0 -163
  172. package/build/esnext/utils/response.utils.js +0 -247
  173. package/build/esnext/utils/response.utils.js.map +0 -1
  174. package/build/esnext/utils/stream.utils.d.ts +0 -88
  175. package/build/esnext/utils/stream.utils.js +0 -210
  176. package/build/esnext/utils/stream.utils.js.map +0 -1
  177. package/build/esnext/utils/string.utils.d.ts +0 -93
  178. package/build/esnext/utils/string.utils.js +0 -165
  179. package/build/esnext/utils/string.utils.js.map +0 -1
  180. package/build/esnext/utils/type.utils.d.ts +0 -90
  181. package/build/esnext/utils/type.utils.js +0 -187
  182. package/build/esnext/utils/type.utils.js.map +0 -1
  183. package/build/esnext/utils/url.utils.d.ts +0 -141
  184. package/build/esnext/utils/url.utils.js +0 -304
  185. package/build/esnext/utils/url.utils.js.map +0 -1
  186. package/build/esnext/utils/validate.utils.d.ts +0 -177
  187. package/build/esnext/utils/validate.utils.js +0 -320
  188. package/build/esnext/utils/validate.utils.js.map +0 -1
  189. package/build/src/config.d.ts +0 -122
  190. package/build/src/config.js +0 -138
  191. package/build/src/config.js.map +0 -1
  192. package/build/src/index.d.ts +0 -27
  193. package/build/src/index.js +0 -69
  194. package/build/src/index.js.map +0 -1
  195. package/build/src/servers/server.builder.d.ts +0 -508
  196. package/build/src/servers/server.builder.js +0 -661
  197. package/build/src/servers/server.builder.js.map +0 -1
  198. package/build/src/servers/server.d.ts +0 -256
  199. package/build/src/servers/server.js +0 -962
  200. package/build/src/servers/server.js.map +0 -1
  201. package/build/src/types/api-response.d.ts +0 -152
  202. package/build/src/types/api-response.js +0 -37
  203. package/build/src/types/api-response.js.map +0 -1
  204. package/build/src/types/index.d.ts +0 -125
  205. package/build/src/types/index.js +0 -26
  206. package/build/src/types/index.js.map +0 -1
  207. package/build/src/types/server.d.ts +0 -268
  208. package/build/src/types/server.js +0 -26
  209. package/build/src/types/server.js.map +0 -1
  210. package/build/src/utils/array.utils.d.ts +0 -168
  211. package/build/src/utils/array.utils.js +0 -364
  212. package/build/src/utils/array.utils.js.map +0 -1
  213. package/build/src/utils/async.utils.d.ts +0 -265
  214. package/build/src/utils/async.utils.js +0 -641
  215. package/build/src/utils/async.utils.js.map +0 -1
  216. package/build/src/utils/cache.utils.d.ts +0 -153
  217. package/build/src/utils/cache.utils.js +0 -297
  218. package/build/src/utils/cache.utils.js.map +0 -1
  219. package/build/src/utils/context-store.utils.d.ts +0 -189
  220. package/build/src/utils/context-store.utils.js +0 -296
  221. package/build/src/utils/context-store.utils.js.map +0 -1
  222. package/build/src/utils/crypto.utils.d.ts +0 -160
  223. package/build/src/utils/crypto.utils.js +0 -293
  224. package/build/src/utils/crypto.utils.js.map +0 -1
  225. package/build/src/utils/date.utils.d.ts +0 -159
  226. package/build/src/utils/date.utils.js +0 -396
  227. package/build/src/utils/date.utils.js.map +0 -1
  228. package/build/src/utils/decorators.utils.d.ts +0 -315
  229. package/build/src/utils/decorators.utils.js +0 -516
  230. package/build/src/utils/decorators.utils.js.map +0 -1
  231. package/build/src/utils/dir.utils.d.ts +0 -196
  232. package/build/src/utils/dir.utils.js +0 -501
  233. package/build/src/utils/dir.utils.js.map +0 -1
  234. package/build/src/utils/env.utils.d.ts +0 -377
  235. package/build/src/utils/env.utils.js +0 -789
  236. package/build/src/utils/env.utils.js.map +0 -1
  237. package/build/src/utils/exception.utils.d.ts +0 -230
  238. package/build/src/utils/exception.utils.js +0 -407
  239. package/build/src/utils/exception.utils.js.map +0 -1
  240. package/build/src/utils/fs.utils.d.ts +0 -164
  241. package/build/src/utils/fs.utils.js +0 -372
  242. package/build/src/utils/fs.utils.js.map +0 -1
  243. package/build/src/utils/http-status-codes.d.ts +0 -266
  244. package/build/src/utils/http-status-codes.js +0 -298
  245. package/build/src/utils/http-status-codes.js.map +0 -1
  246. package/build/src/utils/id.utils.d.ts +0 -36
  247. package/build/src/utils/id.utils.js +0 -91
  248. package/build/src/utils/id.utils.js.map +0 -1
  249. package/build/src/utils/logger.utils.d.ts +0 -160
  250. package/build/src/utils/logger.utils.js +0 -346
  251. package/build/src/utils/logger.utils.js.map +0 -1
  252. package/build/src/utils/middleware.utils.d.ts +0 -100
  253. package/build/src/utils/middleware.utils.js +0 -244
  254. package/build/src/utils/middleware.utils.js.map +0 -1
  255. package/build/src/utils/obj.utils.d.ts +0 -124
  256. package/build/src/utils/obj.utils.js +0 -429
  257. package/build/src/utils/obj.utils.js.map +0 -1
  258. package/build/src/utils/performance.utils.d.ts +0 -136
  259. package/build/src/utils/performance.utils.js +0 -278
  260. package/build/src/utils/performance.utils.js.map +0 -1
  261. package/build/src/utils/request.utils.d.ts +0 -86
  262. package/build/src/utils/request.utils.js +0 -195
  263. package/build/src/utils/request.utils.js.map +0 -1
  264. package/build/src/utils/response.utils.d.ts +0 -163
  265. package/build/src/utils/response.utils.js +0 -260
  266. package/build/src/utils/response.utils.js.map +0 -1
  267. package/build/src/utils/stream.utils.d.ts +0 -88
  268. package/build/src/utils/stream.utils.js +0 -218
  269. package/build/src/utils/stream.utils.js.map +0 -1
  270. package/build/src/utils/string.utils.d.ts +0 -93
  271. package/build/src/utils/string.utils.js +0 -179
  272. package/build/src/utils/string.utils.js.map +0 -1
  273. package/build/src/utils/type.utils.d.ts +0 -90
  274. package/build/src/utils/type.utils.js +0 -196
  275. package/build/src/utils/type.utils.js.map +0 -1
  276. package/build/src/utils/url.utils.d.ts +0 -141
  277. package/build/src/utils/url.utils.js +0 -317
  278. package/build/src/utils/url.utils.js.map +0 -1
  279. package/build/src/utils/validate.utils.d.ts +0 -177
  280. package/build/src/utils/validate.utils.js +0 -345
  281. package/build/src/utils/validate.utils.js.map +0 -1
@@ -21,42 +21,6 @@
21
21
  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
22
  * SOFTWARE.
23
23
  */
24
- var __read = (this && this.__read) || function (o, n) {
25
- var m = typeof Symbol === "function" && o[Symbol.iterator];
26
- if (!m) return o;
27
- var i = m.call(o), r, ar = [], e;
28
- try {
29
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
30
- }
31
- catch (error) { e = { error: error }; }
32
- finally {
33
- try {
34
- if (r && !r.done && (m = i["return"])) m.call(i);
35
- }
36
- finally { if (e) throw e.error; }
37
- }
38
- return ar;
39
- };
40
- var __values = (this && this.__values) || function(o) {
41
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
42
- if (m) return m.call(o);
43
- if (o && typeof o.length === "number") return {
44
- next: function () {
45
- if (o && i >= o.length) o = void 0;
46
- return { value: o && o[i++], done: !o };
47
- }
48
- };
49
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
50
- };
51
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
52
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
53
- if (ar || !(i in from)) {
54
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
55
- ar[i] = from[i];
56
- }
57
- }
58
- return to.concat(ar || Array.prototype.slice.call(from));
59
- };
60
24
  /**
61
25
  * Checks whether the object has no own enumerable properties.
62
26
  *
@@ -76,7 +40,7 @@ export function isObjEmpty(obj) {
76
40
  * @returns {Pick<T, K>} New object with picked keys.
77
41
  */
78
42
  export function pick(obj, keys) {
79
- return Object.fromEntries(keys.map(function (key) { return [key, obj[key]]; }));
43
+ return Object.fromEntries(keys.map(key => [key, obj[key]]));
80
44
  }
81
45
  /**
82
46
  * Returns a new object with the specified keys omitted.
@@ -88,10 +52,7 @@ export function pick(obj, keys) {
88
52
  * @returns {Omit<T, K>} New object without omitted keys.
89
53
  */
90
54
  export function omit(obj, keys) {
91
- return Object.fromEntries(Object.entries(obj).filter(function (_a) {
92
- var _b = __read(_a, 1), key = _b[0];
93
- return !keys.includes(key);
94
- }));
55
+ return Object.fromEntries(Object.entries(obj).filter(([key]) => !keys.includes(key)));
95
56
  }
96
57
  /**
97
58
  * Deeply merges multiple objects into the target object (mutates and returns the target object, not pure).
@@ -101,30 +62,15 @@ export function omit(obj, keys) {
101
62
  * @param {...any[]} sources - The objects to merge from.
102
63
  * @returns {T} The merged object (same as target).
103
64
  */
104
- export function deepObjMerge(target) {
105
- var e_1, _a, e_2, _b, e_3, _c;
106
- var sources = [];
107
- for (var _i = 1; _i < arguments.length; _i++) {
108
- sources[_i - 1] = arguments[_i];
109
- }
65
+ export function deepObjMerge(target, ...sources) {
110
66
  if (!sources.length)
111
67
  return target;
112
- var seen = new WeakMap();
68
+ const seen = new WeakMap();
113
69
  seen.set(target, target);
114
- try {
115
- for (var sources_1 = __values(sources), sources_1_1 = sources_1.next(); !sources_1_1.done; sources_1_1 = sources_1.next()) {
116
- var s = sources_1_1.value;
117
- if (s && typeof s === 'object') {
118
- seen.set(s, target);
119
- }
120
- }
121
- }
122
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
123
- finally {
124
- try {
125
- if (sources_1_1 && !sources_1_1.done && (_a = sources_1.return)) _a.call(sources_1);
70
+ for (const s of sources) {
71
+ if (s && typeof s === 'object') {
72
+ seen.set(s, target);
126
73
  }
127
- finally { if (e_1) throw e_1.error; }
128
74
  }
129
75
  function deepClone(value) {
130
76
  if (value === null || typeof value !== 'object')
@@ -137,24 +83,24 @@ export function deepObjMerge(target) {
137
83
  }
138
84
  // Array
139
85
  if (Array.isArray(value)) {
140
- var clone_1 = [];
141
- seen.set(value, clone_1);
142
- value.forEach(function (item, i) { return (clone_1[i] = deepClone(item)); });
143
- return clone_1;
86
+ const clone = [];
87
+ seen.set(value, clone);
88
+ value.forEach((item, i) => (clone[i] = deepClone(item)));
89
+ return clone;
144
90
  }
145
91
  // Set
146
92
  if (value instanceof Set) {
147
- var clone_2 = new Set();
148
- seen.set(value, clone_2);
149
- value.forEach(function (item) { return clone_2.add(deepClone(item)); });
150
- return clone_2;
93
+ const clone = new Set();
94
+ seen.set(value, clone);
95
+ value.forEach(item => clone.add(deepClone(item)));
96
+ return clone;
151
97
  }
152
98
  // Map
153
99
  if (value instanceof Map) {
154
- var clone_3 = new Map();
155
- seen.set(value, clone_3);
156
- value.forEach(function (val, key) { return clone_3.set(key, deepClone(val)); });
157
- return clone_3;
100
+ const clone = new Map();
101
+ seen.set(value, clone);
102
+ value.forEach((val, key) => clone.set(key, deepClone(val)));
103
+ return clone;
158
104
  }
159
105
  // RegExp
160
106
  if (value instanceof RegExp) {
@@ -166,10 +112,10 @@ export function deepObjMerge(target) {
166
112
  }
167
113
  // TypedArrays
168
114
  if (ArrayBuffer.isView(value) && !(value instanceof DataView)) {
169
- var typed = value; // cast for TS
170
- var ctor = typed.constructor;
115
+ const typed = value; // cast for TS
116
+ const ctor = typed.constructor;
171
117
  // List of standard TypedArray constructors
172
- var typedArrayCtors = [
118
+ const typedArrayCtors = [
173
119
  Int8Array,
174
120
  Uint8Array,
175
121
  Uint8ClampedArray,
@@ -182,29 +128,29 @@ export function deepObjMerge(target) {
182
128
  BigInt64Array,
183
129
  BigUint64Array
184
130
  ].filter(Boolean); // filter out undefined (for environments without BigInt)
185
- var typedArrayCtorSet = new Set(typedArrayCtors);
131
+ const typedArrayCtorSet = new Set(typedArrayCtors);
186
132
  if (typeof ctor === 'function' && typedArrayCtorSet.has(ctor)) {
187
133
  // Defensive: ensure buffer is an ArrayBuffer and slice is available
188
- var buffer = typed.buffer && typeof typed.buffer.slice === 'function' ? typed.buffer.slice(0) : typed.buffer;
189
- var clone_4 = new ctor(buffer, typed.byteOffset, typed.length);
190
- seen.set(value, clone_4);
191
- return clone_4;
134
+ const buffer = typed.buffer && typeof typed.buffer.slice === 'function' ? typed.buffer.slice(0) : typed.buffer;
135
+ const clone = new ctor(buffer, typed.byteOffset, typed.length);
136
+ seen.set(value, clone);
137
+ return clone;
192
138
  }
193
139
  else if (typeof typed.slice === 'function') {
194
140
  // Fallback: try using slice if available (e.g., Node.js Buffer)
195
- var clone_5 = typed.slice();
196
- seen.set(value, clone_5);
197
- return clone_5;
141
+ const clone = typed.slice();
142
+ seen.set(value, clone);
143
+ return clone;
198
144
  }
199
145
  else {
200
146
  // Could not safely clone, throw an error for better debugging
201
147
  throw new Error('Cannot deep clone unknown TypedArray type: ' + (typed && typed.constructor && typed.constructor.name));
202
148
  }
203
149
  }
204
- var clone = Object.create(Object.getPrototypeOf(value));
150
+ const clone = Object.create(Object.getPrototypeOf(value));
205
151
  seen.set(value, clone);
206
- Reflect.ownKeys(value).forEach(function (key) {
207
- var descriptor = Object.getOwnPropertyDescriptor(value, key);
152
+ Reflect.ownKeys(value).forEach(key => {
153
+ const descriptor = Object.getOwnPropertyDescriptor(value, key);
208
154
  if (descriptor.get || descriptor.set) {
209
155
  Object.defineProperty(clone, key, descriptor);
210
156
  }
@@ -215,9 +161,8 @@ export function deepObjMerge(target) {
215
161
  return clone;
216
162
  }
217
163
  function mergeProp(target, source, key) {
218
- var e_4, _a;
219
- var targetValue = target[key];
220
- var sourceValue = source[key];
164
+ const targetValue = target[key];
165
+ const sourceValue = source[key];
221
166
  // Ignore undefined in source
222
167
  if (sourceValue === undefined)
223
168
  return;
@@ -243,51 +188,21 @@ export function deepObjMerge(target) {
243
188
  }
244
189
  // Plain objects → recursive merge
245
190
  if (isPlainObject(sourceValue) && isPlainObject(targetValue)) {
246
- try {
247
- for (var _b = __values(Reflect.ownKeys(sourceValue)), _c = _b.next(); !_c.done; _c = _b.next()) {
248
- var k = _c.value;
249
- mergeProp(targetValue, sourceValue, k);
250
- }
251
- }
252
- catch (e_4_1) { e_4 = { error: e_4_1 }; }
253
- finally {
254
- try {
255
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
256
- }
257
- finally { if (e_4) throw e_4.error; }
191
+ for (const k of Reflect.ownKeys(sourceValue)) {
192
+ mergeProp(targetValue, sourceValue, k);
258
193
  }
259
194
  return;
260
195
  }
261
196
  // Default → overwrite with clone
262
197
  target[key] = deepClone(sourceValue);
263
198
  }
264
- try {
265
- for (var sources_2 = __values(sources), sources_2_1 = sources_2.next(); !sources_2_1.done; sources_2_1 = sources_2.next()) {
266
- var source = sources_2_1.value;
267
- if (source == null)
268
- continue;
269
- try {
270
- for (var _d = (e_3 = void 0, __values(Reflect.ownKeys(source))), _e = _d.next(); !_e.done; _e = _d.next()) {
271
- var key = _e.value;
272
- mergeProp(target, source, key);
273
- }
274
- }
275
- catch (e_3_1) { e_3 = { error: e_3_1 }; }
276
- finally {
277
- try {
278
- if (_e && !_e.done && (_c = _d.return)) _c.call(_d);
279
- }
280
- finally { if (e_3) throw e_3.error; }
281
- }
199
+ for (const source of sources) {
200
+ if (source == null)
201
+ continue;
202
+ for (const key of Reflect.ownKeys(source)) {
203
+ mergeProp(target, source, key);
282
204
  }
283
205
  }
284
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
285
- finally {
286
- try {
287
- if (sources_2_1 && !sources_2_1.done && (_b = sources_2.return)) _b.call(sources_2);
288
- }
289
- finally { if (e_2) throw e_2.error; }
290
- }
291
206
  return target;
292
207
  }
293
208
  /**
@@ -301,7 +216,7 @@ export function isPlainObject(value) {
301
216
  return false;
302
217
  if (Array.isArray(value))
303
218
  return false;
304
- var proto = Object.getPrototypeOf(value);
219
+ const proto = Object.getPrototypeOf(value);
305
220
  return proto === Object.prototype || proto === null;
306
221
  }
307
222
  /**
@@ -312,11 +227,9 @@ export function isPlainObject(value) {
312
227
  * @param {string} [prefix=""] - Optional prefix for nested keys (used internally).
313
228
  * @returns {Record<string, any>} A new object with flattened keys.
314
229
  */
315
- export function flattenObject(obj, prefix) {
316
- if (prefix === void 0) { prefix = ''; }
317
- return Object.entries(obj).reduce(function (acc, _a) {
318
- var _b = __read(_a, 2), key = _b[0], value = _b[1];
319
- var newKey = prefix ? "".concat(prefix, ".").concat(key) : key;
230
+ export function flattenObject(obj, prefix = '') {
231
+ return Object.entries(obj).reduce((acc, [key, value]) => {
232
+ const newKey = prefix ? `${prefix}.${key}` : key;
320
233
  if (value && typeof value === 'object' && !Array.isArray(value)) {
321
234
  Object.assign(acc, flattenObject(value, newKey));
322
235
  }
@@ -338,11 +251,11 @@ export function getValueByPath(obj, path) {
338
251
  if (!obj || typeof obj !== 'object')
339
252
  return undefined;
340
253
  // Convert path like "a.b[0].c" into ["a", "b", "0", "c"]
341
- var parts = path
254
+ const parts = path
342
255
  .replace(/\[(\d+)\]/g, '.$1') // convert [0] to .0
343
256
  .split('.')
344
257
  .filter(Boolean); // remove empty strings
345
- return parts.reduce(function (acc, key) { return acc === null || acc === void 0 ? void 0 : acc[key]; }, obj);
258
+ return parts.reduce((acc, key) => acc?.[key], obj);
346
259
  }
347
260
  /**
348
261
  * Sets a value at a deeply nested key in an object using dot/bracket notation path.
@@ -358,18 +271,18 @@ export function setValueByPath(obj, path, value) {
358
271
  if (!obj || typeof obj !== 'object')
359
272
  return obj;
360
273
  // Convert path like "a.b[0].c" into ["a", "b", "0", "c"]
361
- var parts = path
274
+ const parts = path
362
275
  .replace(/\[(\d+)\]/g, '.$1') // convert [0] to .0
363
276
  .split('.')
364
277
  .filter(Boolean); // remove empty strings
365
278
  // Handle empty path
366
279
  if (parts.length === 0)
367
280
  return obj;
368
- var current = obj;
281
+ let current = obj;
369
282
  // Navigate to the parent of the target property
370
- for (var i = 0; i < parts.length - 1; i++) {
371
- var key = parts[i];
372
- var isArrayIndex = !isNaN(Number(parts[i + 1]));
283
+ for (let i = 0; i < parts.length - 1; i++) {
284
+ const key = parts[i];
285
+ const isArrayIndex = !isNaN(Number(parts[i + 1]));
373
286
  if (current[key] === undefined) {
374
287
  // Create intermediate object or array based on next key type
375
288
  current[key] = isArrayIndex ? [] : {};
@@ -377,7 +290,7 @@ export function setValueByPath(obj, path, value) {
377
290
  current = current[key];
378
291
  }
379
292
  // Set the value at the final key
380
- var finalKey = parts[parts.length - 1];
293
+ const finalKey = parts[parts.length - 1];
381
294
  current[finalKey] = value;
382
295
  return obj;
383
296
  }
@@ -409,7 +322,7 @@ export function isEqual(a, b) {
409
322
  if (a.length !== b.length)
410
323
  return false;
411
324
  // Check each element
412
- for (var i = 0; i < a.length; i++) {
325
+ for (let i = 0; i < a.length; i++) {
413
326
  if (!isEqual(a[i], b[i]))
414
327
  return false;
415
328
  }
@@ -420,12 +333,12 @@ export function isEqual(a, b) {
420
333
  return false;
421
334
  }
422
335
  // Compare object keys
423
- var keysA = Object.keys(a);
424
- var keysB = Object.keys(b);
336
+ const keysA = Object.keys(a);
337
+ const keysB = Object.keys(b);
425
338
  if (keysA.length !== keysB.length)
426
339
  return false;
427
340
  // Check if every key in A exists in B and has the same value
428
- return keysA.every(function (key) { return Object.prototype.hasOwnProperty.call(b, key) && isEqual(a[key], b[key]); });
341
+ return keysA.every(key => Object.prototype.hasOwnProperty.call(b, key) && isEqual(a[key], b[key]));
429
342
  }
430
343
  /**
431
344
  * Filters object properties based on a predicate function.
@@ -436,10 +349,7 @@ export function isEqual(a, b) {
436
349
  * @returns {Partial<T>} New object with filtered properties.
437
350
  */
438
351
  export function filterObject(obj, predicate) {
439
- return Object.fromEntries(Object.entries(obj).filter(function (_a) {
440
- var _b = __read(_a, 2), key = _b[0], value = _b[1];
441
- return predicate(value, key, obj);
442
- }));
352
+ return Object.fromEntries(Object.entries(obj).filter(([key, value]) => predicate(value, key, obj)));
443
353
  }
444
354
  /**
445
355
  * Maps object values to new values using a mapping function.
@@ -451,10 +361,7 @@ export function filterObject(obj, predicate) {
451
361
  * @returns {Record<keyof T, U>} New object with mapped values.
452
362
  */
453
363
  export function mapObject(obj, mapFn) {
454
- return Object.fromEntries(Object.entries(obj).map(function (_a) {
455
- var _b = __read(_a, 2), key = _b[0], value = _b[1];
456
- return [key, mapFn(value, key, obj)];
457
- }));
364
+ return Object.fromEntries(Object.entries(obj).map(([key, value]) => [key, mapFn(value, key, obj)]));
458
365
  }
459
366
  /**
460
367
  * Recursively freezes an object and all its properties.
@@ -465,25 +372,14 @@ export function mapObject(obj, mapFn) {
465
372
  * @returns {Readonly<T>} The frozen object.
466
373
  */
467
374
  export function deepFreeze(obj) {
468
- var e_5, _a;
469
375
  // Freeze primitive properties
470
376
  Object.freeze(obj);
471
- try {
472
- // Recursively freeze nested objects
473
- for (var _b = __values(Object.getOwnPropertyNames(obj)), _c = _b.next(); !_c.done; _c = _b.next()) {
474
- var prop = _c.value;
475
- var value = obj[prop];
476
- if (value !== null && typeof value === 'object' && !Object.isFrozen(value)) {
477
- deepFreeze(value);
478
- }
479
- }
480
- }
481
- catch (e_5_1) { e_5 = { error: e_5_1 }; }
482
- finally {
483
- try {
484
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
377
+ // Recursively freeze nested objects
378
+ for (const prop of Object.getOwnPropertyNames(obj)) {
379
+ const value = obj[prop];
380
+ if (value !== null && typeof value === 'object' && !Object.isFrozen(value)) {
381
+ deepFreeze(value);
485
382
  }
486
- finally { if (e_5) throw e_5.error; }
487
383
  }
488
384
  return obj;
489
385
  }
@@ -503,17 +399,14 @@ export function isObject(value) {
503
399
  * @param {string} [parentPath=""] - Internal param for recursion.
504
400
  * @returns {string[]} Array of all paths in dot notation.
505
401
  */
506
- export function getAllPaths(obj, parentPath) {
507
- if (parentPath === void 0) { parentPath = ''; }
402
+ export function getAllPaths(obj, parentPath = '') {
508
403
  if (!isObject(obj))
509
404
  return [];
510
- return Object.entries(obj).flatMap(function (_a) {
511
- var _b = __read(_a, 2), key = _b[0], value = _b[1];
512
- var currentPath = parentPath ? "".concat(parentPath, ".").concat(key) : key;
405
+ return Object.entries(obj).flatMap(([key, value]) => {
406
+ const currentPath = parentPath ? `${parentPath}.${key}` : key;
513
407
  if (isObject(value)) {
514
- return __spreadArray([currentPath], __read(getAllPaths(value, currentPath)), false);
408
+ return [currentPath, ...getAllPaths(value, currentPath)];
515
409
  }
516
410
  return [currentPath];
517
411
  });
518
412
  }
519
- //# sourceMappingURL=obj.utils.js.map
@@ -133,4 +133,3 @@ export declare function trackMemoryUsage<T>(fn: () => T, options?: {
133
133
  diff: Record<string, number>;
134
134
  };
135
135
  };
136
- //# sourceMappingURL=performance.utils.d.ts.map