es-toolkit 1.13.1-dev.318 → 1.13.1-dev.320

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 (41) hide show
  1. package/dist/array/index.mjs +60 -60
  2. package/dist/browser.js +11 -0
  3. package/dist/browser.js.map +1 -1
  4. package/dist/browser.mjs +33 -32
  5. package/dist/browser.mjs.map +1 -1
  6. package/dist/chunk-STL6TD3L.mjs +1 -0
  7. package/dist/chunk-SXFMQQ6F.mjs +9 -0
  8. package/dist/chunk-SXFMQQ6F.mjs.map +1 -0
  9. package/dist/{chunk-36ZJSTNA.mjs → chunk-YNJH6GEG.mjs} +83 -73
  10. package/dist/chunk-YNJH6GEG.mjs.map +1 -0
  11. package/dist/compat/index.d.mts +19 -1
  12. package/dist/compat/index.d.ts +19 -1
  13. package/dist/compat/index.js +12 -0
  14. package/dist/compat/index.js.map +1 -1
  15. package/dist/compat/index.mjs +77 -74
  16. package/dist/error/index.mjs +3 -3
  17. package/dist/index.d.mts +1 -0
  18. package/dist/index.d.ts +1 -0
  19. package/dist/index.js +7 -0
  20. package/dist/index.js.map +1 -1
  21. package/dist/index.mjs +78 -74
  22. package/dist/predicate/index.d.mts +1 -0
  23. package/dist/predicate/index.d.ts +1 -0
  24. package/dist/predicate/index.js +7 -0
  25. package/dist/predicate/index.js.map +1 -1
  26. package/dist/predicate/index.mjs +5 -1
  27. package/dist/predicate/isTypedArray.d.mts +19 -0
  28. package/dist/predicate/isTypedArray.d.ts +19 -0
  29. package/dist/predicate/isTypedArray.js +33 -0
  30. package/dist/predicate/isTypedArray.js.map +1 -0
  31. package/dist/predicate/isTypedArray.mjs +8 -0
  32. package/dist/predicate/isTypedArray.mjs.map +1 -0
  33. package/dist/promise/index.mjs +1 -1
  34. package/dist/promise/timeout.mjs +1 -1
  35. package/dist/promise/withTimeout.mjs +1 -1
  36. package/dist/string/index.mjs +3 -3
  37. package/package.json +1 -1
  38. package/umd/browser.global.js +1 -1
  39. package/dist/chunk-36ZJSTNA.mjs.map +0 -1
  40. package/dist/chunk-U4JWMVQK.mjs +0 -1
  41. /package/dist/{chunk-U4JWMVQK.mjs.map → chunk-STL6TD3L.mjs.map} +0 -0
package/dist/browser.mjs CHANGED
@@ -1,24 +1,25 @@
1
1
  import {
2
2
  compat_exports
3
- } from "./chunk-36ZJSTNA.mjs";
3
+ } from "./chunk-YNJH6GEG.mjs";
4
4
  import "./chunk-NKLIE2OI.mjs";
5
5
  import "./chunk-4OIZM4HS.mjs";
6
6
  import "./chunk-IIDZ3KAJ.mjs";
7
7
  import "./chunk-CVVZHOJX.mjs";
8
+ import "./chunk-O64NE2P4.mjs";
8
9
  import "./chunk-XT74R35S.mjs";
10
+ import "./chunk-5IKVJGHO.mjs";
9
11
  import "./chunk-F3WCQQET.mjs";
10
12
  import "./chunk-QXTNZR7B.mjs";
11
13
  import "./chunk-Y5V7UAZZ.mjs";
12
14
  import "./chunk-U56ZOM7L.mjs";
13
15
  import "./chunk-EYYZQFOP.mjs";
14
- import "./chunk-5IKVJGHO.mjs";
15
16
  import "./chunk-WVQ7YVRK.mjs";
16
- import "./chunk-O64NE2P4.mjs";
17
- import "./chunk-U4JWMVQK.mjs";
17
+ import "./chunk-STL6TD3L.mjs";
18
18
  import "./chunk-74CREQXW.mjs";
19
19
  import "./chunk-WMM7TZLG.mjs";
20
20
  import "./chunk-BMRTZMRE.mjs";
21
21
  import "./chunk-AIRSKN47.mjs";
22
+ import "./chunk-SXFMQQ6F.mjs";
22
23
  import "./chunk-VH2PV426.mjs";
23
24
  import "./chunk-LPZZIY5Z.mjs";
24
25
  import "./chunk-27QMXBLJ.mjs";
@@ -42,6 +43,8 @@ import "./chunk-BH6HLGBA.mjs";
42
43
  import "./chunk-MY4G7R3I.mjs";
43
44
  import "./chunk-5ASRKEB4.mjs";
44
45
  import "./chunk-2SLTL4KL.mjs";
46
+ import "./chunk-F47GLYUU.mjs";
47
+ import "./chunk-KIOYQRMQ.mjs";
45
48
  import "./chunk-ZA2XI3OV.mjs";
46
49
  import "./chunk-QOJGMVVR.mjs";
47
50
  import "./chunk-OGZMEWPR.mjs";
@@ -49,63 +52,61 @@ import "./chunk-3IP4JVLL.mjs";
49
52
  import "./chunk-BOOQBJN2.mjs";
50
53
  import "./chunk-LKXCOLNY.mjs";
51
54
  import "./chunk-CMBC4MXG.mjs";
55
+ import "./chunk-DXB7EZUQ.mjs";
52
56
  import "./chunk-DDH7K4QM.mjs";
57
+ import "./chunk-L7FQX5MN.mjs";
58
+ import "./chunk-Q47NGNXT.mjs";
59
+ import "./chunk-QRSJBBFY.mjs";
60
+ import "./chunk-OLORW442.mjs";
53
61
  import "./chunk-6GWEY5EL.mjs";
54
62
  import "./chunk-4KYXHZ4R.mjs";
63
+ import "./chunk-NFS7RWWE.mjs";
64
+ import "./chunk-2ZCITDMK.mjs";
65
+ import "./chunk-B4COTK4K.mjs";
66
+ import "./chunk-237HGSZS.mjs";
55
67
  import "./chunk-UYZKMBDO.mjs";
56
68
  import "./chunk-IFNXROZR.mjs";
57
69
  import "./chunk-PYEYV7BY.mjs";
58
- import "./chunk-L7FQX5MN.mjs";
59
- import "./chunk-Q47NGNXT.mjs";
60
- import "./chunk-QRSJBBFY.mjs";
61
- import "./chunk-OLORW442.mjs";
70
+ import "./chunk-G7UQ5PUR.mjs";
71
+ import "./chunk-TJ4Z5I7M.mjs";
72
+ import "./chunk-ME352XO7.mjs";
73
+ import "./chunk-N3QYJX4T.mjs";
62
74
  import "./chunk-NTLX2MPV.mjs";
63
75
  import "./chunk-2IXFGSUA.mjs";
64
76
  import "./chunk-OP4OAKQJ.mjs";
65
77
  import "./chunk-R6QA7PLZ.mjs";
66
- import "./chunk-NFS7RWWE.mjs";
67
- import "./chunk-2ZCITDMK.mjs";
68
- import "./chunk-237HGSZS.mjs";
69
78
  import "./chunk-DVK2N4KC.mjs";
70
- import "./chunk-B4COTK4K.mjs";
79
+ import "./chunk-AJKZMN2V.mjs";
80
+ import "./chunk-KPBQ7OUY.mjs";
81
+ import "./chunk-OOKNBU4V.mjs";
82
+ import "./chunk-IJD7FE2Z.mjs";
71
83
  import "./chunk-7B7W36UP.mjs";
72
84
  import "./chunk-DN3NOZ3H.mjs";
73
85
  import "./chunk-2KNLZB7V.mjs";
74
86
  import "./chunk-EHSKB6DF.mjs";
75
87
  import "./chunk-GIWAOOFY.mjs";
76
88
  import "./chunk-SYWMYQYJ.mjs";
77
- import "./chunk-G7UQ5PUR.mjs";
78
- import "./chunk-TJ4Z5I7M.mjs";
79
- import "./chunk-ME352XO7.mjs";
80
- import "./chunk-N3QYJX4T.mjs";
89
+ import "./chunk-IEA53J7P.mjs";
90
+ import "./chunk-E6E4RZLN.mjs";
91
+ import "./chunk-HM2JT2RX.mjs";
81
92
  import "./chunk-XPSOKBRZ.mjs";
82
93
  import "./chunk-FVVSE2F2.mjs";
83
94
  import "./chunk-O6UXZR3U.mjs";
84
95
  import "./chunk-XI7KRD2C.mjs";
85
- import "./chunk-AJKZMN2V.mjs";
86
- import "./chunk-KPBQ7OUY.mjs";
87
- import "./chunk-OOKNBU4V.mjs";
88
- import "./chunk-IJD7FE2Z.mjs";
96
+ import "./chunk-3EZAFZG3.mjs";
97
+ import "./chunk-OXZCMC5I.mjs";
98
+ import "./chunk-M7SBBYV2.mjs";
99
+ import "./chunk-LJ2C6MVP.mjs";
89
100
  import "./chunk-YFN6KOC4.mjs";
90
101
  import "./chunk-UY76KTPE.mjs";
91
102
  import "./chunk-ML727RRJ.mjs";
92
103
  import "./chunk-33MSBDC6.mjs";
93
- import "./chunk-IEA53J7P.mjs";
94
- import "./chunk-E6E4RZLN.mjs";
95
- import "./chunk-HM2JT2RX.mjs";
104
+ import "./chunk-E6C5EZQA.mjs";
105
+ import "./chunk-DTJJIMKJ.mjs";
96
106
  import "./chunk-CRSKT4WW.mjs";
97
107
  import "./chunk-JPUKH67K.mjs";
98
108
  import "./chunk-LVWX5B43.mjs";
99
109
  import "./chunk-6NVQAHXP.mjs";
100
- import "./chunk-3EZAFZG3.mjs";
101
- import "./chunk-OXZCMC5I.mjs";
102
- import "./chunk-M7SBBYV2.mjs";
103
- import "./chunk-LJ2C6MVP.mjs";
104
- import "./chunk-F47GLYUU.mjs";
105
- import "./chunk-DXB7EZUQ.mjs";
106
- import "./chunk-KIOYQRMQ.mjs";
107
- import "./chunk-E6C5EZQA.mjs";
108
- import "./chunk-DTJJIMKJ.mjs";
109
110
  import "./chunk-24FKGR6U.mjs";
110
111
 
111
112
  // src/browser.ts
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/browser.ts"],"sourcesContent":["import * as toolkit from './compat/index.ts';\n\ninterface Window {\n _: typeof toolkit;\n}\n\ndeclare let window: Window;\nwindow._ = toolkit;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,OAAO,IAAI;","names":[]}
1
+ {"version":3,"sources":["../src/browser.ts"],"sourcesContent":["import * as toolkit from './compat/index.ts';\n\ninterface Window {\n _: typeof toolkit;\n}\n\ndeclare let window: Window;\nwindow._ = toolkit;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,OAAO,IAAI;","names":[]}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=chunk-STL6TD3L.mjs.map
@@ -0,0 +1,9 @@
1
+ // src/predicate/isTypedArray.ts
2
+ function isTypedArray(x) {
3
+ return x instanceof Uint8Array || x instanceof Uint8ClampedArray || x instanceof Uint16Array || x instanceof Uint32Array || x instanceof BigUint64Array || x instanceof Int8Array || x instanceof Int16Array || x instanceof Int32Array || x instanceof BigInt64Array || x instanceof Float32Array || x instanceof Float64Array;
4
+ }
5
+
6
+ export {
7
+ isTypedArray
8
+ };
9
+ //# sourceMappingURL=chunk-SXFMQQ6F.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/predicate/isTypedArray.ts"],"sourcesContent":["/**\n * Checks if a value is a TypedArray.\n * @param {unknown} x The value to check.\n * @returns {x is\n * | Uint8Array\n * | Uint8ClampedArray\n * | Uint16Array\n * | Uint32Array\n * | BigUint64Array\n * | Int8Array\n * | Int16Array\n * | Int32Array\n * | BigInt64Array\n * | Float32Array\n * | Float64Array} Returns true if `x` is a TypedArray, false otherwise.\n */\nexport function isTypedArray(\n x: unknown\n): x is\n | Uint8Array\n | Uint8ClampedArray\n | Uint16Array\n | Uint32Array\n | BigUint64Array\n | Int8Array\n | Int16Array\n | Int32Array\n | BigInt64Array\n | Float32Array\n | Float64Array {\n return (\n x instanceof Uint8Array ||\n x instanceof Uint8ClampedArray ||\n x instanceof Uint16Array ||\n x instanceof Uint32Array ||\n x instanceof BigUint64Array ||\n x instanceof Int8Array ||\n x instanceof Int16Array ||\n x instanceof Int32Array ||\n x instanceof BigInt64Array ||\n x instanceof Float32Array ||\n x instanceof Float64Array\n );\n}\n"],"mappings":";AAgBO,SAAS,aACd,GAYe;AACf,SACE,aAAa,cACb,aAAa,qBACb,aAAa,eACb,aAAa,eACb,aAAa,kBACb,aAAa,aACb,aAAa,cACb,aAAa,cACb,aAAa,iBACb,aAAa,gBACb,aAAa;AAEjB;","names":[]}
@@ -1,6 +1,12 @@
1
1
  import {
2
2
  withTimeout
3
3
  } from "./chunk-IIDZ3KAJ.mjs";
4
+ import {
5
+ delay
6
+ } from "./chunk-O64NE2P4.mjs";
7
+ import {
8
+ lowerCase
9
+ } from "./chunk-5IKVJGHO.mjs";
4
10
  import {
5
11
  snakeCase
6
12
  } from "./chunk-F3WCQQET.mjs";
@@ -16,12 +22,6 @@ import {
16
22
  import {
17
23
  kebabCase
18
24
  } from "./chunk-EYYZQFOP.mjs";
19
- import {
20
- lowerCase
21
- } from "./chunk-5IKVJGHO.mjs";
22
- import {
23
- delay
24
- } from "./chunk-O64NE2P4.mjs";
25
25
  import {
26
26
  isFunction
27
27
  } from "./chunk-74CREQXW.mjs";
@@ -34,6 +34,9 @@ import {
34
34
  import {
35
35
  isNull
36
36
  } from "./chunk-AIRSKN47.mjs";
37
+ import {
38
+ isTypedArray
39
+ } from "./chunk-SXFMQQ6F.mjs";
37
40
  import {
38
41
  isUndefined
39
42
  } from "./chunk-VH2PV426.mjs";
@@ -94,6 +97,9 @@ import {
94
97
  import {
95
98
  sum
96
99
  } from "./chunk-2SLTL4KL.mjs";
100
+ import {
101
+ TimeoutError
102
+ } from "./chunk-KIOYQRMQ.mjs";
97
103
  import {
98
104
  throttle
99
105
  } from "./chunk-QOJGMVVR.mjs";
@@ -112,12 +118,39 @@ import {
112
118
  import {
113
119
  once
114
120
  } from "./chunk-CMBC4MXG.mjs";
121
+ import {
122
+ AbortError
123
+ } from "./chunk-DXB7EZUQ.mjs";
124
+ import {
125
+ xor
126
+ } from "./chunk-L7FQX5MN.mjs";
127
+ import {
128
+ xorBy
129
+ } from "./chunk-Q47NGNXT.mjs";
130
+ import {
131
+ xorWith
132
+ } from "./chunk-QRSJBBFY.mjs";
133
+ import {
134
+ zip
135
+ } from "./chunk-OLORW442.mjs";
115
136
  import {
116
137
  zipObject
117
138
  } from "./chunk-6GWEY5EL.mjs";
118
139
  import {
119
140
  zipWith
120
141
  } from "./chunk-4KYXHZ4R.mjs";
142
+ import {
143
+ unionBy
144
+ } from "./chunk-NFS7RWWE.mjs";
145
+ import {
146
+ unionWith
147
+ } from "./chunk-2ZCITDMK.mjs";
148
+ import {
149
+ uniqBy
150
+ } from "./chunk-B4COTK4K.mjs";
151
+ import {
152
+ uniqWith
153
+ } from "./chunk-237HGSZS.mjs";
121
154
  import {
122
155
  unzip
123
156
  } from "./chunk-UYZKMBDO.mjs";
@@ -128,17 +161,17 @@ import {
128
161
  without
129
162
  } from "./chunk-PYEYV7BY.mjs";
130
163
  import {
131
- xor
132
- } from "./chunk-L7FQX5MN.mjs";
164
+ shuffle
165
+ } from "./chunk-G7UQ5PUR.mjs";
133
166
  import {
134
- xorBy
135
- } from "./chunk-Q47NGNXT.mjs";
167
+ tail
168
+ } from "./chunk-TJ4Z5I7M.mjs";
136
169
  import {
137
- xorWith
138
- } from "./chunk-QRSJBBFY.mjs";
170
+ take
171
+ } from "./chunk-ME352XO7.mjs";
139
172
  import {
140
- zip
141
- } from "./chunk-OLORW442.mjs";
173
+ takeRight
174
+ } from "./chunk-N3QYJX4T.mjs";
142
175
  import {
143
176
  takeRightWhile
144
177
  } from "./chunk-NTLX2MPV.mjs";
@@ -152,20 +185,20 @@ import {
152
185
  union
153
186
  } from "./chunk-R6QA7PLZ.mjs";
154
187
  import {
155
- unionBy
156
- } from "./chunk-NFS7RWWE.mjs";
188
+ uniq
189
+ } from "./chunk-DVK2N4KC.mjs";
157
190
  import {
158
- unionWith
159
- } from "./chunk-2ZCITDMK.mjs";
191
+ keyBy
192
+ } from "./chunk-AJKZMN2V.mjs";
160
193
  import {
161
- uniqWith
162
- } from "./chunk-237HGSZS.mjs";
194
+ last
195
+ } from "./chunk-KPBQ7OUY.mjs";
163
196
  import {
164
- uniq
165
- } from "./chunk-DVK2N4KC.mjs";
197
+ maxBy
198
+ } from "./chunk-OOKNBU4V.mjs";
166
199
  import {
167
- uniqBy
168
- } from "./chunk-B4COTK4K.mjs";
200
+ minBy
201
+ } from "./chunk-IJD7FE2Z.mjs";
169
202
  import {
170
203
  orderBy
171
204
  } from "./chunk-7B7W36UP.mjs";
@@ -185,17 +218,14 @@ import {
185
218
  random
186
219
  } from "./chunk-SYWMYQYJ.mjs";
187
220
  import {
188
- shuffle
189
- } from "./chunk-G7UQ5PUR.mjs";
190
- import {
191
- tail
192
- } from "./chunk-TJ4Z5I7M.mjs";
221
+ forEachRight
222
+ } from "./chunk-IEA53J7P.mjs";
193
223
  import {
194
- take
195
- } from "./chunk-ME352XO7.mjs";
224
+ groupBy
225
+ } from "./chunk-E6E4RZLN.mjs";
196
226
  import {
197
- takeRight
198
- } from "./chunk-N3QYJX4T.mjs";
227
+ head
228
+ } from "./chunk-HM2JT2RX.mjs";
199
229
  import {
200
230
  initial
201
231
  } from "./chunk-XPSOKBRZ.mjs";
@@ -209,17 +239,17 @@ import {
209
239
  intersectionWith
210
240
  } from "./chunk-XI7KRD2C.mjs";
211
241
  import {
212
- keyBy
213
- } from "./chunk-AJKZMN2V.mjs";
242
+ drop
243
+ } from "./chunk-3EZAFZG3.mjs";
214
244
  import {
215
- last
216
- } from "./chunk-KPBQ7OUY.mjs";
245
+ dropRight
246
+ } from "./chunk-OXZCMC5I.mjs";
217
247
  import {
218
- maxBy
219
- } from "./chunk-OOKNBU4V.mjs";
248
+ dropRightWhile
249
+ } from "./chunk-M7SBBYV2.mjs";
220
250
  import {
221
- minBy
222
- } from "./chunk-IJD7FE2Z.mjs";
251
+ dropWhile
252
+ } from "./chunk-LJ2C6MVP.mjs";
223
253
  import {
224
254
  fill
225
255
  } from "./chunk-YFN6KOC4.mjs";
@@ -233,14 +263,11 @@ import {
233
263
  flatten
234
264
  } from "./chunk-33MSBDC6.mjs";
235
265
  import {
236
- forEachRight
237
- } from "./chunk-IEA53J7P.mjs";
238
- import {
239
- groupBy
240
- } from "./chunk-E6E4RZLN.mjs";
266
+ chunk
267
+ } from "./chunk-E6C5EZQA.mjs";
241
268
  import {
242
- head
243
- } from "./chunk-HM2JT2RX.mjs";
269
+ compact
270
+ } from "./chunk-DTJJIMKJ.mjs";
244
271
  import {
245
272
  countBy
246
273
  } from "./chunk-CRSKT4WW.mjs";
@@ -253,30 +280,6 @@ import {
253
280
  import {
254
281
  differenceWith
255
282
  } from "./chunk-6NVQAHXP.mjs";
256
- import {
257
- drop
258
- } from "./chunk-3EZAFZG3.mjs";
259
- import {
260
- dropRight
261
- } from "./chunk-OXZCMC5I.mjs";
262
- import {
263
- dropRightWhile
264
- } from "./chunk-M7SBBYV2.mjs";
265
- import {
266
- dropWhile
267
- } from "./chunk-LJ2C6MVP.mjs";
268
- import {
269
- AbortError
270
- } from "./chunk-DXB7EZUQ.mjs";
271
- import {
272
- TimeoutError
273
- } from "./chunk-KIOYQRMQ.mjs";
274
- import {
275
- chunk
276
- } from "./chunk-E6C5EZQA.mjs";
277
- import {
278
- compact
279
- } from "./chunk-DTJJIMKJ.mjs";
280
283
  import {
281
284
  __export
282
285
  } from "./chunk-24FKGR6U.mjs";
@@ -331,6 +334,7 @@ __export(compat_exports, {
331
334
  isNotNil: () => isNotNil,
332
335
  isNull: () => isNull,
333
336
  isPlainObject: () => isPlainObject,
337
+ isTypedArray: () => isTypedArray2,
334
338
  isUndefined: () => isUndefined,
335
339
  kebabCase: () => kebabCase,
336
340
  keyBy: () => keyBy,
@@ -582,6 +586,11 @@ function isArray(value) {
582
586
  return Array.isArray(value);
583
587
  }
584
588
 
589
+ // src/compat/predicate/isTypedArray.ts
590
+ function isTypedArray2(x) {
591
+ return isTypedArray(x);
592
+ }
593
+
585
594
  // src/compat/string/startsWith.ts
586
595
  var startsWith = (str, target, position = 0) => {
587
596
  return str.startsWith(target, position);
@@ -628,10 +637,11 @@ export {
628
637
  get,
629
638
  isPlainObject,
630
639
  isArray,
640
+ isTypedArray2 as isTypedArray,
631
641
  startsWith,
632
642
  endsWith,
633
643
  max,
634
644
  min,
635
645
  compat_exports
636
646
  };
637
- //# sourceMappingURL=chunk-36ZJSTNA.mjs.map
647
+ //# sourceMappingURL=chunk-YNJH6GEG.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/compat/index.ts","../src/compat/array/chunk.ts","../src/compat/array/concat.ts","../src/compat/array/difference.ts","../src/compat/array/fill.ts","../src/compat/_internal/isIndex.ts","../src/compat/_internal/toPath.ts","../src/compat/object/set.ts","../src/compat/array/zipObjectDeep.ts","../src/compat/_internal/isDeepKey.ts","../src/compat/object/get.ts","../src/compat/predicate/isPlainObject.ts","../src/compat/predicate/isArray.ts","../src/compat/predicate/isTypedArray.ts","../src/compat/string/startsWith.ts","../src/compat/string/endsWith.ts","../src/compat/math/max.ts","../src/compat/math/min.ts"],"sourcesContent":["/**\n * es-toolkit compatibility layer with lodash (WIP)\n * ====================================\n * ```tsx\n * // es-toolkit/compat aims to provide 100% feature parity with lodash\n * import { chunk } from 'es-toolkit/compat';\n *\n * chunk([1, 2, 3, 4], 0);\n * // Returns [], which is identical to lodash\n * ```\n *\n * `es-toolkit/compat` will offer complete compatibility with lodash, ensuring a seamless transition.\n *\n * To guarantee identical behavior, `es-toolkit/compat` will be thoroughly tested using actual lodash test cases.\n *\n * The primary goal of `es-toolkit/compat` is to serve as a drop-in replacement for lodash.\n *\n * It's important to note that while `es-toolkit/compat` will mirror the behavior of lodash functions with 100% accuracy,\n * it will deliberately omit unsafe features, such as:\n *\n * - Implicit type casting from an empty string `''` to 0 or false, and similar cases.\n *\n * @module\n */\nexport * from '../index.ts';\n\nexport { chunk } from './array/chunk.ts';\nexport { concat } from './array/concat.ts';\nexport { difference } from './array/difference.ts';\nexport { fill } from './array/fill.ts';\nexport { zipObjectDeep } from './array/zipObjectDeep.ts';\nexport { head as first } from '../index.ts';\n\nexport { get } from './object/get.ts';\nexport { set } from './object/set.ts';\n\nexport { isPlainObject } from './predicate/isPlainObject.ts';\nexport { isArray } from './predicate/isArray.ts';\nexport { isTypedArray } from './predicate/isTypedArray.ts';\n\nexport { startsWith } from './string/startsWith.ts';\nexport { endsWith } from './string/endsWith.ts';\n\nexport { max } from './math/max.ts';\nexport { min } from './math/min.ts';\n","import { chunk as chunkToolkit } from '../../array/chunk.ts';\n\n/**\n * Splits an array into smaller arrays of a specified length.\n *\n * This function takes an input array and divides it into multiple smaller arrays,\n * each of a specified length. If the input array cannot be evenly divided,\n * the final sub-array will contain the remaining elements.\n *\n * @template T The type of elements in the array.\n * @param {T[]} arr - The array to be chunked into smaller arrays.\n * @param {number} size - The size of each smaller array. Must be a positive integer.\n * @returns {T[][]} A two-dimensional array where each sub-array has a maximum length of `size`.\n * @throws {Error} Throws an error if `size` is not a positive integer.\n *\n * @example\n * // Splits an array of numbers into sub-arrays of length 2\n * chunk([1, 2, 3, 4, 5], 2);\n * // Returns: [[1, 2], [3, 4], [5]]\n *\n * @example\n * // Splits an array of strings into sub-arrays of length 3\n * chunk(['a', 'b', 'c', 'd', 'e', 'f', 'g'], 3);\n * // Returns: [['a', 'b', 'c'], ['d', 'e', 'f'], ['g']]\n */\nexport function chunk<T>(arr: readonly T[], size = 1): T[][] {\n size = Math.max(Math.floor(size), 0);\n\n if (size === 0) {\n return [];\n }\n\n return chunkToolkit(arr, size);\n}\n","import { flatten } from \"../../array/flatten.ts\";\n\n/**\n * Concatenates multiple arrays and values into a single array.\n *\n * @template T The type of elements in the array.\n * @param {...(T | readonly T[])} values - The values and/or arrays to concatenate.\n * @returns {T[]} A new array containing all the input values.\n * \n * @example\n * // Concatenate individual values\n * concat(1, 2, 3); \n * // returns [1, 2, 3]\n *\n * @example\n * // Concatenate arrays of values\n * concat([1, 2], [3, 4]);\n * // returns [1, 2, 3, 4]\n *\n * @example\n * // Concatenate a mix of individual values and arrays\n * concat(1, [2, 3], 4);\n * // returns [1, 2, 3, 4]\n *\n * @example\n * // Concatenate nested arrays\n * concat([1, [2, 3]], 4);\n * // returns [1, [2, 3], 4]\n */\nexport function concat<T>(...values: Array<T | readonly T[]>): T[] {\n return flatten(values) as T[];\n}\n","import { difference as differenceToolkit } from '../../array/difference.ts';\nimport { flatten } from '../../array/flatten.ts';\n\nexport function difference<T>(arr: readonly T[], ...values: Array<readonly T[]>): T[] {\n const arr1 = arr;\n const arr2 = flatten(values);\n\n return differenceToolkit(arr1, arr2);\n}","import { fill as fillToolkit } from '../../array/fill.ts';\n\n/**\n * Fills elements of an array with a specified value from the start position up to, but not including, the end position.\n *\n * This function mutates the original array and replaces its elements with the provided value, starting from the specified\n * start index up to the end index (non-inclusive). If the start or end indices are not provided, it defaults to filling the\n * entire array.\n *\n * @param {Array<T | U>} array - The array to fill.\n * @param {U} value - The value to fill the array with.\n * @param {S} [start=0] - The start position. Defaults to 0.\n * @param {V} [end=arr.length] - The end position. Defaults to the array's length.\n * @returns {Array<T | U>} The array with the filled values.\n *\n * @example\n * const array = [1, 2, 3];\n * const result = fill(array, 'a');\n * // => ['a', 'a', 'a']\n *\n * const result = fill(Array(3), 2);\n * // => [2, 2, 2]\n *\n * const result = fill([4, 6, 8, 10], '*', 1, 3);\n * // => [4, '*', '*', 10]\n *\n * const result = fill(array, '*', -2, -1);\n * // => [1, '*', 3]\n */\nexport function fill<T>(array: unknown[], value?: T): T[];\nexport function fill<T, U, S>(array: Array<T | U>, value: U, start: S): Array<T | U>;\nexport function fill<T, U, S, V>(array: Array<T | U>, value: U, start: S, end: V): Array<T | U>;\nexport function fill<T, U>(array: Array<T | U>, value: U, start = 0, end = array.length): Array<T | U> {\n start = Math.floor(start);\n end = Math.floor(end);\n\n if (!start) {\n start = 0;\n }\n if (!end) {\n end = 0;\n }\n\n return fillToolkit(array, value, start, end);\n}\n","const IS_UNSIGNED_INTEGER = /^(?:0|[1-9]\\d*)$/\n\nexport function isIndex(value: PropertyKey) {\n switch (typeof value) {\n case 'number': {\n return Number.isInteger(value) && value >= 0 && value < Number.MAX_SAFE_INTEGER;\n }\n case 'symbol': {\n return false;\n }\n case 'string': {\n return IS_UNSIGNED_INTEGER.test(value);\n }\n }\n}","/**\n * Converts a deep key string into an array of path segments.\n *\n * This function takes a string representing a deep key (e.g., 'a.b.c' or 'a[b][c]') and breaks it down into an array of strings, each representing a segment of the path.\n *\n * @param deepKey - The deep key string to convert.\n * @returns An array of strings, each representing a segment of the path.\n *\n * Examples:\n *\n * toPath('a.b.c') // Returns ['a', 'b', 'c']\n * toPath('a[b][c]') // Returns ['a', 'b', 'c']\n * toPath('.a.b.c') // Returns ['', 'a', 'b', 'c']\n * toPath('a[\"b.c\"].d') // Returns ['a', 'b.c', 'd']\n * toPath('') // Returns []\n * toPath('.a[b].c.d[e][\"f.g\"].h') // Returns ['', 'a', 'b', 'c', 'd', 'e', 'f.g', 'h']\n */\nexport function toPath(deepKey: string): string[] {\n const ESCAPE_REGEXP = /\\\\(\\\\)?/g;\n const PROPERTY_REGEXP = RegExp(\n // Match anything that isn't a dot or bracket.\n '[^.[\\\\]]+' +\n '|' +\n // Or match property names within brackets.\n '\\\\[(?:' +\n // Match a non-string expression.\n '([^\"\\'][^[]*)' +\n '|' +\n // Or match strings (supports escaping characters).\n '([\"\\'])((?:(?!\\\\2)[^\\\\\\\\]|\\\\\\\\.)*?)\\\\2' +\n ')\\\\]' +\n '|' +\n // Or match \"\" as the space between consecutive dots or empty brackets.\n '(?=(?:\\\\.|\\\\[\\\\])(?:\\\\.|\\\\[\\\\]|$))',\n 'g'\n );\n\n const result: string[] = [];\n\n if (deepKey[0] === '.') {\n result.push('');\n }\n\n let match: RegExpExecArray | null;\n let lastIndex = 0;\n\n while ((match = PROPERTY_REGEXP.exec(deepKey)) !== null) {\n let key = match[0];\n const expr = match[1];\n const quote = match[2];\n const substr = match[3];\n\n if (quote) {\n key = substr.replace(ESCAPE_REGEXP, '$1');\n } else if (expr) {\n key = expr;\n }\n\n result.push(key);\n\n if (PROPERTY_REGEXP.lastIndex === lastIndex) {\n PROPERTY_REGEXP.lastIndex++;\n } else {\n lastIndex = PROPERTY_REGEXP.lastIndex;\n }\n }\n\n return result;\n}\n","import { isIndex } from \"../_internal/isIndex.ts\";\nimport { toPath } from \"../_internal/toPath.ts\";\n\n/**\n * Sets the value at the specified path of the given object. If any part of the path does not exist, it will be created.\n *\n * @template T - The type of the object.\n * @param {Settable} obj - The object to modify.\n * @param {Path} path - The path of the property to set.\n * @param {any} value - The value to set.\n * @returns {T} - The modified object.\n *\n * @example\n * // Set a value in a nested object\n * const obj = { a: { b: { c: 3 } } };\n * set(obj, 'a.b.c', 4);\n * console.log(obj.a.b.c); // 4\n *\n * @example\n * // Set a value in an array\n * const arr = [1, 2, 3];\n * set(arr, 1, 4);\n * console.log(arr[1]); // 4\n *\n * @example\n * // Create non-existent path and set value\n * const obj = {};\n * set(obj, 'a.b.c', 4);\n * console.log(obj); // { a: { b: { c: 4 } } }\n */\nexport function set<T>(obj: object, path: PropertyKey | readonly PropertyKey[], value: unknown): T;\nexport function set<T extends object>(obj: T, path: PropertyKey | readonly PropertyKey[], value: unknown): T {\n const resolvedPath = Array.isArray(path)\n ? path\n : typeof path === 'string'\n ? toPath(path)\n : [path];\n\n let current: any = obj;\n\n for (let i = 0; i < resolvedPath.length - 1; i++) {\n const key = resolvedPath[i];\n const nextKey = resolvedPath[i + 1];\n\n if (current[key] == null) {\n current[key] = isIndex(nextKey) ? [] : {};\n }\n\n current = current[key];\n }\n\n const lastKey = resolvedPath[resolvedPath.length - 1];\n current[lastKey] = value;\n\n return obj;\n}\n","import { zip } from \"../../array/zip.ts\";\nimport { set } from \"../object/set.ts\";\n\n/**\n * Creates a deeply nested object given arrays of paths and values.\n *\n * This function takes two arrays: one containing arrays of property paths, and the other containing corresponding values.\n * It returns a new object where paths from the first array are used as key paths to set values, with corresponding elements from the second array as values.\n * Paths can be dot-separated strings or arrays of property names.\n * \n * If the `keys` array is longer than the `values` array, the remaining keys will have `undefined` as their values.\n *\n * @template V - The type of elements in the array.\n * @param {string[] | string[][]} keys - An array of property paths, each path can be a dot-separated string or an array of property names.\n * @param {V[]} values - An array of values corresponding to the property paths.\n * @returns {object} A new object composed of the given property paths and values.\n *\n * @example\n * const paths = ['a.b.c', 'd.e.f'];\n * const values = [1, 2];\n * const result = zipObjectDeep(paths, values);\n * // result will be { a: { b: { c: 1 } }, d: { e: { f: 2 } } }\n *\n * @example\n * const paths = [['a', 'b', 'c'], ['d', 'e', 'f']];\n * const values = [1, 2];\n * const result = zipObjectDeep(paths, values);\n * // result will be { a: { b: { c: 1 } }, d: { e: { f: 2 } } }\n * \n * @example\n * const paths = ['a.b[0].c', 'a.b[1].d'];\n * const values = [1, 2];\n * const result = zipObjectDeep(paths, values);\n * // result will be { 'a': { 'b': [{ 'c': 1 }, { 'd': 2 }] } }\n */\nexport function zipObjectDeep<P extends string | number | symbol, V>(keys: P[], values: V[]): { [K in P]: V } {\n const result = {} as { [K in P]: V };\n const zipped = zip(keys, values);\n\n for (let i = 0; i < zipped.length; i++) {\n const [key, value] = zipped[i];\n\n if (key != null) {\n set(result, key, value);\n }\n }\n\n return result;\n}\n","const IS_PLAIN = /^\\w*$/;\nconst IS_DEEP = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/;\n\n/**\n * Checks if a given key is a deep key.\n *\n * A deep key is a string that contains a dot (.) or square brackets with a property accessor.\n *\n * @param key - The key to check.\n * @returns {boolean} - Returns true if the key is a deep key, otherwise false.\n *\n * Examples:\n *\n * isDeepKey('a.b') // true\n * isDeepKey('a[b]') // true\n * isDeepKey('a') // false\n * isDeepKey(123) // false\n * isDeepKey('a.b.c') // true\n * isDeepKey('a[b][c]') // true\n */\nexport function isDeepKey(key: PropertyKey): boolean {\n switch (typeof key) {\n case \"number\":\n case \"symbol\": {\n return false;\n }\n case \"string\": {\n return !IS_PLAIN.test(key) && IS_DEEP.test(key);\n }\n }\n}\n","import { isDeepKey } from \"../_internal/isDeepKey.ts\";\nimport { toPath } from \"../_internal/toPath.ts\";\nimport type { Get } from \"./get.types.ts\";\n\n/**\n * Retrieves the value at a given path from an object. If the resolved value is undefined, the defaultValue is returned instead.\n * \n * @template T - The type of the object.\n * @template K - The type of the key in the object.\n * @template D - The type of the default value.\n * \n * @param {T} object - The object to query.\n * @param {K | [K]} path - The path of the property to get.\n * @returns {T[K]} - Returns the resolved value.\n */\nexport function get<T extends object, K extends keyof T>(object: T, path: K | [K]): T[K];\n/**\n * Retrieves the value at a given path from an object. If the resolved value is undefined, the defaultValue is returned instead.\n * \n * @template T - The type of the object.\n * @template K - The type of the key in the object.\n * \n * @param {T | null | undefined} object - The object to query.\n * @param {K | [K]} path - The path of the property to get.\n * @returns {T[K] | undefined} - Returns the resolved value.\n */\nexport function get<T extends object, K extends keyof T>(object: T | null | undefined, path: K | [K]): T[K] | undefined;\n/**\n * Retrieves the value at a given path from an object. If the resolved value is undefined, the defaultValue is returned instead.\n * \n * @template T - The type of the object.\n * @template K - The type of the key in the object.\n * @template D - The type of the default value.\n * \n * @param {T | null | undefined} object - The object to query.\n * @param {K | [K]} path - The path of the property to get.\n * @param {D} defaultValue - The value returned if the resolved value is undefined.\n * @returns {Exclude<T[K], undefined> | D} - Returns the resolved value.\n */\nexport function get<T extends object, K extends keyof T, D>(object: T | null | undefined, path: K | [K], defaultValue: D): Exclude<T[K], undefined> | D;\n/**\n * Retrieves the value at a given path from an object. If the resolved value is undefined, the defaultValue is returned instead.\n * \n * @template T - The type of the object.\n * @template K1 - The type of the first key in the object.\n * @template K2 - The type of the second key in the object.\n * \n * @param {T} object - The object to query.\n * @param {[K1, K2]} path - The path of the property to get.\n * @returns {T[K1][K2]} - Returns the resolved value.\n */\nexport function get<T extends object, K1 extends keyof T, K2 extends keyof T[K1]>(object: T, path: [K1, K2]): T[K1][K2];\n/**\n * Retrieves the value at a given path from an object. If the resolved value is undefined, the defaultValue is returned instead.\n * \n * @template T - The type of the object.\n * @template K1 - The type of the first key in the object.\n * @template K2 - The type of the second key in the object.\n * \n * @param {T | null | undefined} object - The object to query.\n * @param {[K1, K2]} path - The path of the property to get.\n * @returns {T[K1][K2] | undefined} - Returns the resolved value.\n */\nexport function get<T extends object, K1 extends keyof T, K2 extends keyof T[K1]>(object: T | null | undefined, path: [K1, K2]): T[K1][K2] | undefined;\n/**\n * Retrieves the value at a given path from an object. If the resolved value is undefined, the defaultValue is returned instead.\n * \n * @template T - The type of the object.\n * @template K1 - The type of the first key in the object.\n * @template K2 - The type of the second key in the object.\n * @template D - The type of the default value.\n * \n * @param {T | null | undefined} object - The object to query.\n * @param {[K1, K2]} path - The path of the property to get.\n * @param {D} defaultValue - The value returned if the resolved value is undefined.\n * @returns {Exclude<T[K1][K2], undefined> | D} - Returns the resolved value.\n */\nexport function get<T extends object, K1 extends keyof T, K2 extends keyof T[K1], D>(object: T | null | undefined, path: [K1, K2], defaultValue: D): Exclude<T[K1][K2], undefined> | D;\n/**\n * Retrieves the value at a given path from an object. If the resolved value is undefined, the defaultValue is returned instead.\n * \n * @template T - The type of the object.\n * @template K1 - The type of the first key in the object.\n * @template K2 - The type of the second key in the object.\n * @template K3 - The type of the third key in the object.\n * \n * @param {T} object - The object to query.\n * @param {[K1, K2, K3]} path - The path of the property to get.\n * @returns {T[K1][K2][K3]} - Returns the resolved value.\n */\nexport function get<T extends object, K1 extends keyof T, K2 extends keyof T[K1], K3 extends keyof T[K1][K2]>(object: T, path: [K1, K2, K3]): T[K1][K2][K3];\n/**\n * Retrieves the value at a given path from an object. If the resolved value is undefined, the defaultValue is returned instead.\n * \n * @template T - The type of the object.\n * @template K1 - The type of the first key in the object.\n * @template K2 - The type of the second key in the object.\n * @template K3 - The type of the third key in the object.\n * \n * @param {T | null | undefined} object - The object to query.\n * @param {[K1, K2, K3]} path - The path of the property to get.\n * @returns {T[K1][K2][K3] | undefined} - Returns the resolved value.\n */\nexport function get<T extends object, K1 extends keyof T, K2 extends keyof T[K1], K3 extends keyof T[K1][K2]>(object: T | null | undefined, path: [K1, K2, K3]): T[K1][K2][K3] | undefined;\n/**\n * Retrieves the value at a given path from an object. If the resolved value is undefined, the defaultValue is returned instead.\n * \n * @template T - The type of the object.\n * @template K1 - The type of the first key in the object.\n * @template K2 - The type of the second key in the object.\n * @template K3 - The type of the third key in the object.\n * @template D - The type of the default value.\n * \n * @param {T | null | undefined} object - The object to query.\n * @param {[K1, K2, K3]} path - The path of the property to get.\n * @param {D} defaultValue - The value returned if the resolved value is undefined.\n * @returns {Exclude<T[K1][K2][K3], undefined> | D} - Returns the resolved value.\n */\nexport function get<T extends object, K1 extends keyof T, K2 extends keyof T[K1], K3 extends keyof T[K1][K2], D>(object: T | null | undefined, path: [K1, K2, K3], defaultValue: D): Exclude<T[K1][K2][K3], undefined> | D;\n/**\n * Retrieves the value at a given path from an object. If the resolved value is undefined, the defaultValue is returned instead.\n * \n * @template T - The type of the object.\n * @template K1 - The type of the first key in the object.\n * @template K2 - The type of the second key in the object.\n * @template K3 - The type of the third key in the object.\n * @template K4 - The type of the fourth key in the object.\n * \n * @param {T} object - The object to query.\n * @param {[K1, K2, K3, K4]} path - The path of the property to get.\n * @returns {T[K1][K2][K3][K4]} - Returns the resolved value.\n */\nexport function get<T extends object, K1 extends keyof T, K2 extends keyof T[K1], K3 extends keyof T[K1][K2], K4 extends keyof T[K1][K2][K3]>(object: T, path: [K1, K2, K3, K4]): T[K1][K2][K3][K4];\n/**\n * Retrieves the value at a given path from an object. If the resolved value is undefined, the defaultValue is returned instead.\n * \n * @template T - The type of the object.\n * @template K1 - The type of the first key in the object.\n * @template K2 - The type of the second key in the object.\n * @template K3 - The type of the third key in the object.\n * @template K4 - The type of the fourth key in the object.\n * \n * @param {T | null | undefined} object - The object to query.\n * @param {[K1, K2, K3, K4]} path - The path of the property to get.\n * @returns {T[K1][K2][K3][K4] | undefined} - Returns the resolved value.\n */\nexport function get<T extends object, K1 extends keyof T, K2 extends keyof T[K1], K3 extends keyof T[K1][K2], K4 extends keyof T[K1][K2][K3]>(object: T | null | undefined, path: [K1, K2, K3, K4]): T[K1][K2][K3][K4] | undefined;\n/**\n * Retrieves the value at a given path from an object. If the resolved value is undefined, the defaultValue is returned instead.\n * \n * @template T - The type of the object.\n * @template K1 - The type of the first key in the object.\n * @template K2 - The type of the second key in the object.\n * @template K3 - The type of the third key in the object.\n * @template K4 - The type of the fourth key in the object.\n * @template D - The type of the default value.\n * \n * @param {T | null | undefined} object - The object to query.\n * @param {[K1, K2, K3, K4]} path - The path of the property to get.\n * @param {D} defaultValue - The value returned if the resolved value is undefined.\n * @returns {Exclude<T[K1][K2][K3][K4], undefined> | D} - Returns the resolved value.\n */\nexport function get<T extends object, K1 extends keyof T, K2 extends keyof T[K1], K3 extends keyof T[K1][K2], K4 extends keyof T[K1][K2][K3], D>(object: T | null | undefined, path: [K1, K2, K3, K4], defaultValue: D): Exclude<T[K1][K2][K3][K4], undefined> | D;\n/**\n * Retrieves the value at a given path from an object with numeric keys. If the resolved value is undefined, the defaultValue is returned instead.\n * \n * @template T - The type of the value.\n * \n * @param {Record<number, T>} object - The object to query.\n * @param {number} path - The path of the property to get.\n * @returns {T} - Returns the resolved value.\n */\nexport function get<T>(object: Record<number, T>, path: number): T;\n/**\n * Retrieves the value at a given path from an object with numeric keys. If the resolved value is undefined, the defaultValue is returned instead.\n * \n * @template T - The type of the value.\n * \n * @param {Record<number, T> | null | undefined} object - The object to query.\n * @param {number} path - The path of the property to get.\n * @returns {T | undefined} - Returns the resolved value.\n */\nexport function get<T>(object: Record<number, T> | null | undefined, path: number): T | undefined;\n/**\n * Retrieves the value at a given path from an object with numeric keys. If the resolved value is undefined, the defaultValue is returned instead.\n * \n * @template T - The type of the value.\n * @template D - The type of the default value.\n * \n * @param {Record<number, T> | null | undefined} object - The object to query.\n * @param {number} path - The path of the property to get.\n * @param {D} defaultValue - The value returned if the resolved value is undefined.\n * @returns {T | D} - Returns the resolved value.\n */\nexport function get<T, D>(object: Record<number, T> | null | undefined, path: number, defaultValue: D): T | D;\n/**\n * Retrieves the value at a given path from a null or undefined object, returning the default value.\n * \n * @template D - The type of the default value.\n * \n * @param {null | undefined} object - The object to query.\n * @param {PropertyKey} path - The path of the property to get.\n * @param {D} defaultValue - The value returned if the resolved value is undefined.\n * @returns {D} - Returns the default value.\n */\nexport function get<D>(object: null | undefined, path: PropertyKey, defaultValue: D): D;\n/**\n * Retrieves the value at a given path from a null or undefined object, returning undefined.\n * \n * @param {null | undefined} object - The object to query.\n * @param {PropertyKey} path - The path of the property to get.\n * @returns {undefined} - Returns undefined.\n */\nexport function get(object: null | undefined, path: PropertyKey): undefined;\n/**\n * Retrieves the value at a given path from a string-keyed object. If the resolved value is undefined, the defaultValue is returned instead.\n * \n * @template T - The type of the object.\n * @template P - The type of the path.\n * \n * @param {T} data - The object to query.\n * @param {P} path - The path of the property to get.\n * @returns {string extends P ? any : Get<T, P>} - Returns the resolved value.\n */\nexport function get<T, P extends string>(data: T, path: P): string extends P ? any : Get<T, P>;\n/**\n * Retrieves the value at a given path from a string-keyed object. If the resolved value is undefined, the defaultValue is returned instead.\n * \n * @template T - The type of the object.\n * @template P - The type of the path.\n * @template D - The type of the default value.\n * \n * @param {T} data - The object to query.\n * @param {P} path - The path of the property to get.\n * @param {D} defaultValue - The value returned if the resolved value is undefined.\n * @returns {Exclude<Get<T, P>, null | undefined> | D} - Returns the resolved value.\n */\nexport function get<T, P extends string, D = Get<T, P>>(data: T, path: P, defaultValue: D): Exclude<Get<T, P>, null | undefined> | D;\n/**\n * Retrieves the value at a given path from an object. If the resolved value is undefined, the defaultValue is returned instead.\n * \n * @param {unknown} object - The object to query.\n * @param {PropertyKey | readonly PropertyKey[]} path - The path of the property to get.\n * @param {unknown} [defaultValue] - The value returned if the resolved value is undefined.\n * @returns {any} - Returns the resolved value.\n */\nexport function get(object: unknown, path: PropertyKey | readonly PropertyKey[], defaultValue?: unknown): any;\nexport function get(object: any, path: PropertyKey | readonly PropertyKey[], defaultValue?: any): any {\n let resolvedPath;\n\n if (Array.isArray(path)) {\n resolvedPath = path;\n } else if (typeof path === 'string' && isDeepKey(path) && object?.[path] == null) {\n resolvedPath = toPath(path);\n } else {\n resolvedPath = [path];\n }\n\n if (resolvedPath.length === 0) {\n return defaultValue;\n }\n\n let current = object;\n let index;\n\n for (index = 0; index < resolvedPath.length && current != null; index++) {\n let key = resolvedPath[index];\n\n if (Object.is(key.valueOf(), -0)) {\n key = '-0';\n }\n\n current = current[key];\n }\n\n if (current === null && index === resolvedPath.length) {\n return current;\n }\n\n return current ?? defaultValue;\n}","/**\n * Checks if a given value is a plain object.\n *\n * A plain object is an object created by the `{}` literal, `new Object()`, or\n * `Object.create(null)`.\n *\n * This function also handles objects with custom\n * `Symbol.toStringTag` properties.\n *\n * `Symbol.toStringTag` is a built-in symbol that a constructor can use to customize the\n * default string description of objects.\n *\n * @param {unknown} [object] - The value to check.\n * @returns {boolean} - True if the value is a plain object, otherwise false.\n *\n * @example\n * console.log(isPlainObject({})); // true\n * console.log(isPlainObject([])); // false\n * console.log(isPlainObject(null)); // false\n * console.log(isPlainObject(Object.create(null))); // true\n * console.log(isPlainObject(new Map())); // false\n */\nexport function isPlainObject(object?: unknown): boolean {\n if (typeof object !== 'object') {\n return false;\n }\n\n if (object == null) {\n return false;\n }\n\n if (Object.getPrototypeOf(object) === null) {\n return true;\n }\n\n if (object.toString() !== '[object Object]') {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore\n const tag = object[Symbol.toStringTag];\n\n if (tag == null) {\n return false;\n }\n\n const isTagReadonly = !Object.getOwnPropertyDescriptor(object, Symbol.toStringTag)?.writable;\n\n if (isTagReadonly) {\n return false;\n }\n\n return object.toString() === `[object ${tag}]`;\n }\n\n let proto = object;\n\n while (Object.getPrototypeOf(proto) !== null) {\n proto = Object.getPrototypeOf(proto);\n }\n\n return Object.getPrototypeOf(object) === proto;\n}\n","/**\n * Checks if the given value is an array.\n *\n * This function tests whether the provided value is an array or not.\n * It returns `true` if the value is an array, and `false` otherwise.\n *\n * This function can also serve as a type predicate in TypeScript, narrowing the type of the argument to an array.\n *\n * @template T - The type of value.\n * @param {T} value - The value to test if it is an array.\n * @returns {value is Extract<T, unknown[]>} `true` if the value is an array, `false` otherwise.\n *\n * @example\n * const value1 = [1, 2, 3];\n * const value2 = 'abc';\n * const value3 = () => {};\n *\n * console.log(isArray(value1)); // true\n * console.log(isArray(value2)); // false\n * console.log(isArray(value3)); // false\n */\nexport function isArray<T>(value?: T): value is Extract<T, readonly unknown[]> {\n return Array.isArray(value);\n}\n","import { isTypedArray as isTypedArrayToolkit } from '../../predicate/isTypedArray.ts';\n\n/**\n * Checks if a value is a TypedArray.\n * @param {unknown} x The value to check.\n * @returns {x is\n * | Uint8Array\n * | Uint8ClampedArray\n * | Uint16Array\n * | Uint32Array\n * | BigUint64Array\n * | Int8Array\n * | Int16Array\n * | Int32Array\n * | BigInt64Array\n * | Float32Array\n * | Float64Array} Returns true if `x` is a TypedArray, false otherwise.\n */\nexport function isTypedArray(\n x?: unknown\n): x is\n | Uint8Array\n | Uint8ClampedArray\n | Uint16Array\n | Uint32Array\n | BigUint64Array\n | Int8Array\n | Int16Array\n | Int32Array\n | BigInt64Array\n | Float32Array\n | Float64Array {\n return isTypedArrayToolkit(x);\n}\n","/**\n * Checks if a string contains another string at the beginning of the string.\n *\n * Checks if one string startsWith another string. Optional position parameter to start searching from a certain index.\n *\n * @param {string} str - The string that might contain the target string.\n * @param {string} target - The string to search for.\n * @param {number} position - An optional offset to start searching in the str string\n * @returns {boolean} - True if the str string starts with the target string.\n *\n * @example\n * const isPrefix = startsWith('fooBar', 'foo') // returns true\n * const isPrefix = startsWith('fooBar', 'bar') // returns false\n * const isPrefix = startsWith('fooBar', 'abc') // returns false\n * const isPrefix = startsWith('fooBar', 'Bar', 2) // returns true\n * const isPrefix = startsWith('fooBar', 'Bar', 5) // returns false\n */\nexport const startsWith = (str: string, target: string, position = 0): boolean => {\n return str.startsWith(target, position);\n};\n","/**\n * Checks if a string contains another string at the end of the string.\n *\n * Checks if one string endsWith another string. Optional position parameter to offset searching before a certain index.\n *\n * @param {string} str - The string that might contain the target string.\n * @param {string} target - The string to search for.\n * @param {number} position - An optional position from the start to search up to this index\n * @returns {boolean} - True if the str string ends with the target string.\n *\n * @example\n * const isPrefix = endsWith('fooBar', 'foo') // returns true\n * const isPrefix = endsWith('fooBar', 'bar') // returns false\n * const isPrefix = endsWith('fooBar', 'abc') // returns false\n * const isPrefix = endsWith('fooBar', 'foo', 3) // returns true\n * const isPrefix = endsWith('fooBar', 'abc', 5) // returns false\n */\nexport const endsWith = (str: string, target: string, position: number = str.length): boolean => {\n return str.endsWith(target, position);\n};\n","/**\n * Finds the element in an array that has the maximum value.\n *\n * @template T - The type of elements in the array.\n * @param {T[]} items The array of elements to search.\n * @returns {T | undefined} The element with the maximum value.\n * @example\n * // Returns 9\n * max([3, 1, 4, 1, 5, 9])\n *\n * @example\n * // Returns 8\n * max([0, -3, 2, 8, 7])\n */\nexport function max<T>(items: readonly [T, ...T[]]): T;\nexport function max(): undefined;\nexport function max<T>(items?: readonly T[]): T | undefined;\nexport function max<T>(items: readonly T[] = []): T | undefined {\n let maxElement = items[0];\n let max = undefined;\n\n for (const element of items) {\n if (max == null || element > max) {\n max = element;\n maxElement = element;\n }\n }\n\n return maxElement;\n}\n","/**\n * Finds the element in an array that has the minimum value.\n *\n * @template T - The type of elements in the array.\n * @param {T[]} items The array of elements to search.\n * @returns {T | undefined} The element with the minimum value.\n * @example\n * // Returns 1\n * min([3, 1, 4, 1, 5, 9])\n *\n * @example\n * // Returns -3\n * min([0, -3, 2, 8, 7])\n */\nexport function min<T>(items: readonly [T, ...T[]]): T;\nexport function min(): undefined;\nexport function min<T>(items?: readonly T[]): T | undefined;\nexport function min<T>(items: readonly T[] = []): T {\n let minElement = items[0];\n let min = undefined;\n\n for (const element of items) {\n if (min == null || element < min) {\n min = element;\n minElement = element;\n }\n }\n\n return minElement;\n}\n"],"mappings":"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","names":["chunk","difference","fill","isTypedArray","chunk","difference","fill","isTypedArray","max","min"]}
@@ -540,6 +540,24 @@ declare function isPlainObject(object?: unknown): boolean;
540
540
  */
541
541
  declare function isArray<T>(value?: T): value is Extract<T, readonly unknown[]>;
542
542
 
543
+ /**
544
+ * Checks if a value is a TypedArray.
545
+ * @param {unknown} x The value to check.
546
+ * @returns {x is
547
+ * | Uint8Array
548
+ * | Uint8ClampedArray
549
+ * | Uint16Array
550
+ * | Uint32Array
551
+ * | BigUint64Array
552
+ * | Int8Array
553
+ * | Int16Array
554
+ * | Int32Array
555
+ * | BigInt64Array
556
+ * | Float32Array
557
+ * | Float64Array} Returns true if `x` is a TypedArray, false otherwise.
558
+ */
559
+ declare function isTypedArray(x?: unknown): x is Uint8Array | Uint8ClampedArray | Uint16Array | Uint32Array | BigUint64Array | Int8Array | Int16Array | Int32Array | BigInt64Array | Float32Array | Float64Array;
560
+
543
561
  /**
544
562
  * Checks if a string contains another string at the beginning of the string.
545
563
  *
@@ -614,4 +632,4 @@ declare function min<T>(items: readonly [T, ...T[]]): T;
614
632
  declare function min(): undefined;
615
633
  declare function min<T>(items?: readonly T[]): T | undefined;
616
634
 
617
- export { chunk, concat, difference, endsWith, fill, get, isArray, isPlainObject, max, min, set, startsWith, zipObjectDeep };
635
+ export { chunk, concat, difference, endsWith, fill, get, isArray, isPlainObject, isTypedArray, max, min, set, startsWith, zipObjectDeep };
@@ -540,6 +540,24 @@ declare function isPlainObject(object?: unknown): boolean;
540
540
  */
541
541
  declare function isArray<T>(value?: T): value is Extract<T, readonly unknown[]>;
542
542
 
543
+ /**
544
+ * Checks if a value is a TypedArray.
545
+ * @param {unknown} x The value to check.
546
+ * @returns {x is
547
+ * | Uint8Array
548
+ * | Uint8ClampedArray
549
+ * | Uint16Array
550
+ * | Uint32Array
551
+ * | BigUint64Array
552
+ * | Int8Array
553
+ * | Int16Array
554
+ * | Int32Array
555
+ * | BigInt64Array
556
+ * | Float32Array
557
+ * | Float64Array} Returns true if `x` is a TypedArray, false otherwise.
558
+ */
559
+ declare function isTypedArray(x?: unknown): x is Uint8Array | Uint8ClampedArray | Uint16Array | Uint32Array | BigUint64Array | Int8Array | Int16Array | Int32Array | BigInt64Array | Float32Array | Float64Array;
560
+
543
561
  /**
544
562
  * Checks if a string contains another string at the beginning of the string.
545
563
  *
@@ -614,4 +632,4 @@ declare function min<T>(items: readonly [T, ...T[]]): T;
614
632
  declare function min(): undefined;
615
633
  declare function min<T>(items?: readonly T[]): T | undefined;
616
634
 
617
- export { chunk, concat, difference, endsWith, fill, get, isArray, isPlainObject, max, min, set, startsWith, zipObjectDeep };
635
+ export { chunk, concat, difference, endsWith, fill, get, isArray, isPlainObject, isTypedArray, max, min, set, startsWith, zipObjectDeep };
@@ -101,6 +101,7 @@ __export(compat_exports, {
101
101
  isNotNil: () => isNotNil,
102
102
  isNull: () => isNull,
103
103
  isPlainObject: () => isPlainObject2,
104
+ isTypedArray: () => isTypedArray3,
104
105
  isUndefined: () => isUndefined,
105
106
  kebabCase: () => kebabCase,
106
107
  keyBy: () => keyBy,
@@ -1154,6 +1155,11 @@ function isArrayLike(value) {
1154
1155
  return value != null && typeof value !== "function" && isLength(value.length);
1155
1156
  }
1156
1157
 
1158
+ // src/predicate/isTypedArray.ts
1159
+ function isTypedArray2(x) {
1160
+ return x instanceof Uint8Array || x instanceof Uint8ClampedArray || x instanceof Uint16Array || x instanceof Uint32Array || x instanceof BigUint64Array || x instanceof Int8Array || x instanceof Int16Array || x instanceof Int32Array || x instanceof BigInt64Array || x instanceof Float32Array || x instanceof Float64Array;
1161
+ }
1162
+
1157
1163
  // src/promise/delay.ts
1158
1164
  function delay(ms, { signal } = {}) {
1159
1165
  return new Promise((resolve, reject) => {
@@ -1436,6 +1442,11 @@ function isArray(value) {
1436
1442
  return Array.isArray(value);
1437
1443
  }
1438
1444
 
1445
+ // src/compat/predicate/isTypedArray.ts
1446
+ function isTypedArray3(x) {
1447
+ return isTypedArray2(x);
1448
+ }
1449
+
1439
1450
  // src/compat/string/startsWith.ts
1440
1451
  var startsWith = (str, target, position = 0) => {
1441
1452
  return str.startsWith(target, position);
@@ -1520,6 +1531,7 @@ function min(items = []) {
1520
1531
  isNotNil,
1521
1532
  isNull,
1522
1533
  isPlainObject,
1534
+ isTypedArray,
1523
1535
  isUndefined,
1524
1536
  kebabCase,
1525
1537
  keyBy,