zhiaiwan-utils 1.0.3

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 (761) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +92 -0
  3. package/dist/cjs/_internal/MapCache.js +29 -0
  4. package/dist/cjs/_internal/assignSources.js +24 -0
  5. package/dist/cjs/_internal/assignValue.js +20 -0
  6. package/dist/cjs/_internal/baseClone.js +190 -0
  7. package/dist/cjs/_internal/baseCollectionKeys.js +59 -0
  8. package/dist/cjs/_internal/baseDefaultsDeep.js +59 -0
  9. package/dist/cjs/_internal/baseDifference.js +25 -0
  10. package/dist/cjs/_internal/baseExtremum.js +34 -0
  11. package/dist/cjs/_internal/baseExtremumBy.js +63 -0
  12. package/dist/cjs/_internal/baseFilter.js +61 -0
  13. package/dist/cjs/_internal/baseFind.js +153 -0
  14. package/dist/cjs/_internal/baseFlatten.js +32 -0
  15. package/dist/cjs/_internal/baseForEach.js +92 -0
  16. package/dist/cjs/_internal/baseForOwn.js +33 -0
  17. package/dist/cjs/_internal/baseIsEqual.js +161 -0
  18. package/dist/cjs/_internal/baseIsMatch.js +80 -0
  19. package/dist/cjs/_internal/baseIteratee.js +46 -0
  20. package/dist/cjs/_internal/baseKeysIn.js +44 -0
  21. package/dist/cjs/_internal/baseMap.js +49 -0
  22. package/dist/cjs/_internal/baseMerge.js +139 -0
  23. package/dist/cjs/_internal/basePad.js +40 -0
  24. package/dist/cjs/_internal/basePath.js +85 -0
  25. package/dist/cjs/_internal/baseRange.js +18 -0
  26. package/dist/cjs/_internal/baseReduce.js +77 -0
  27. package/dist/cjs/_internal/baseSum.js +27 -0
  28. package/dist/cjs/_internal/baseTreeTraverse.js +225 -0
  29. package/dist/cjs/_internal/baseTrim.js +32 -0
  30. package/dist/cjs/_internal/baseUnset.js +49 -0
  31. package/dist/cjs/_internal/baseUpdate.js +65 -0
  32. package/dist/cjs/_internal/coerceToString.js +21 -0
  33. package/dist/cjs/_internal/colorMath.js +66 -0
  34. package/dist/cjs/_internal/compareValues.js +49 -0
  35. package/dist/cjs/_internal/composePartials.js +39 -0
  36. package/dist/cjs/_internal/createCompounder.js +24 -0
  37. package/dist/cjs/_internal/deburr.js +74 -0
  38. package/dist/cjs/_internal/flattenPaths.js +21 -0
  39. package/dist/cjs/_internal/htmlEscape.js +36 -0
  40. package/dist/cjs/_internal/identity.js +11 -0
  41. package/dist/cjs/_internal/index.js +21 -0
  42. package/dist/cjs/_internal/isArguments.js +31 -0
  43. package/dist/cjs/_internal/isArrayLike.js +15 -0
  44. package/dist/cjs/_internal/isArrayLikeObject.js +15 -0
  45. package/dist/cjs/_internal/isEmptyValue.js +11 -0
  46. package/dist/cjs/_internal/isFlattenable.js +15 -0
  47. package/dist/cjs/_internal/isIndex.js +23 -0
  48. package/dist/cjs/_internal/isLength.js +15 -0
  49. package/dist/cjs/_internal/isPlainObject.js +17 -0
  50. package/dist/cjs/_internal/mergeInto.js +33 -0
  51. package/dist/cjs/_internal/repeatString.js +15 -0
  52. package/dist/cjs/_internal/toInteger.js +24 -0
  53. package/dist/cjs/_internal/toLength.js +17 -0
  54. package/dist/cjs/_internal/toPath.js +29 -0
  55. package/dist/cjs/_internal/upperFirst.js +14 -0
  56. package/dist/cjs/_internal/validateFieldRule.js +138 -0
  57. package/dist/cjs/_internal/words.js +13 -0
  58. package/dist/cjs/array/chunk.js +37 -0
  59. package/dist/cjs/array/compact.js +34 -0
  60. package/dist/cjs/array/concat.js +37 -0
  61. package/dist/cjs/array/difference.js +44 -0
  62. package/dist/cjs/array/differenceBy.js +55 -0
  63. package/dist/cjs/array/drop.js +31 -0
  64. package/dist/cjs/array/each.js +23 -0
  65. package/dist/cjs/array/every.js +69 -0
  66. package/dist/cjs/array/filter.js +26 -0
  67. package/dist/cjs/array/find.js +29 -0
  68. package/dist/cjs/array/findIndex.js +24 -0
  69. package/dist/cjs/array/findLast.js +24 -0
  70. package/dist/cjs/array/findLastIndex.js +24 -0
  71. package/dist/cjs/array/flatten.js +27 -0
  72. package/dist/cjs/array/flattenDeep.js +28 -0
  73. package/dist/cjs/array/forEach.js +32 -0
  74. package/dist/cjs/array/forEachRight.js +29 -0
  75. package/dist/cjs/array/groupBy.js +67 -0
  76. package/dist/cjs/array/head.js +21 -0
  77. package/dist/cjs/array/includes.js +60 -0
  78. package/dist/cjs/array/index.js +92 -0
  79. package/dist/cjs/array/intersection.js +51 -0
  80. package/dist/cjs/array/keyBy.js +79 -0
  81. package/dist/cjs/array/last.js +23 -0
  82. package/dist/cjs/array/map.js +26 -0
  83. package/dist/cjs/array/max.js +25 -0
  84. package/dist/cjs/array/maxBy.js +27 -0
  85. package/dist/cjs/array/mean.js +27 -0
  86. package/dist/cjs/array/meanBy.js +30 -0
  87. package/dist/cjs/array/min.js +25 -0
  88. package/dist/cjs/array/minBy.js +27 -0
  89. package/dist/cjs/array/orderBy.js +95 -0
  90. package/dist/cjs/array/partition.js +68 -0
  91. package/dist/cjs/array/reduce.js +30 -0
  92. package/dist/cjs/array/reduceRight.js +30 -0
  93. package/dist/cjs/array/some.js +66 -0
  94. package/dist/cjs/array/sortBy.js +27 -0
  95. package/dist/cjs/array/sum.js +25 -0
  96. package/dist/cjs/array/sumBy.js +31 -0
  97. package/dist/cjs/array/take.js +31 -0
  98. package/dist/cjs/array/union.js +35 -0
  99. package/dist/cjs/array/uniq.js +33 -0
  100. package/dist/cjs/array/uniqBy.js +41 -0
  101. package/dist/cjs/array/without.js +30 -0
  102. package/dist/cjs/color/getCssVariable.js +31 -0
  103. package/dist/cjs/color/getThemePalette.js +56 -0
  104. package/dist/cjs/color/hexToRgb.js +26 -0
  105. package/dist/cjs/color/index.js +16 -0
  106. package/dist/cjs/color/rgbStringToHex.js +42 -0
  107. package/dist/cjs/color/rgbToHex.js +24 -0
  108. package/dist/cjs/convert/index.js +32 -0
  109. package/dist/cjs/convert/toArray.js +56 -0
  110. package/dist/cjs/convert/toFinite.js +34 -0
  111. package/dist/cjs/convert/toInteger.js +33 -0
  112. package/dist/cjs/convert/toLength.js +30 -0
  113. package/dist/cjs/convert/toLower.js +25 -0
  114. package/dist/cjs/convert/toNumber.js +55 -0
  115. package/dist/cjs/convert/toPairs.js +24 -0
  116. package/dist/cjs/convert/toPairsIn.js +32 -0
  117. package/dist/cjs/convert/toPath.js +23 -0
  118. package/dist/cjs/convert/toPlainObject.js +39 -0
  119. package/dist/cjs/convert/toSafeInteger.js +34 -0
  120. package/dist/cjs/convert/toString.js +34 -0
  121. package/dist/cjs/convert/toUpper.js +25 -0
  122. package/dist/cjs/function/after.js +32 -0
  123. package/dist/cjs/function/before.js +32 -0
  124. package/dist/cjs/function/curry.js +57 -0
  125. package/dist/cjs/function/debounce.js +107 -0
  126. package/dist/cjs/function/flow.js +51 -0
  127. package/dist/cjs/function/flowRight.js +46 -0
  128. package/dist/cjs/function/index.js +30 -0
  129. package/dist/cjs/function/memoize.js +26 -0
  130. package/dist/cjs/function/once.js +31 -0
  131. package/dist/cjs/function/partial.js +35 -0
  132. package/dist/cjs/function/partialRight.js +33 -0
  133. package/dist/cjs/function/throttle.js +20 -0
  134. package/dist/cjs/index.js +28 -0
  135. package/dist/cjs/object/assign.js +24 -0
  136. package/dist/cjs/object/clone.js +29 -0
  137. package/dist/cjs/object/cloneDeep.js +30 -0
  138. package/dist/cjs/object/cloneDeepWith.js +30 -0
  139. package/dist/cjs/object/cloneWith.js +30 -0
  140. package/dist/cjs/object/defaults.js +23 -0
  141. package/dist/cjs/object/defaultsDeep.js +44 -0
  142. package/dist/cjs/object/findKey.js +26 -0
  143. package/dist/cjs/object/findLastKey.js +26 -0
  144. package/dist/cjs/object/forIn.js +29 -0
  145. package/dist/cjs/object/forOwn.js +29 -0
  146. package/dist/cjs/object/fromPairs.js +28 -0
  147. package/dist/cjs/object/get.js +37 -0
  148. package/dist/cjs/object/has.js +39 -0
  149. package/dist/cjs/object/index.js +64 -0
  150. package/dist/cjs/object/invert.js +34 -0
  151. package/dist/cjs/object/keys.js +25 -0
  152. package/dist/cjs/object/mapKeys.js +37 -0
  153. package/dist/cjs/object/mapValues.js +37 -0
  154. package/dist/cjs/object/merge.js +29 -0
  155. package/dist/cjs/object/mergeWith.js +41 -0
  156. package/dist/cjs/object/omit.js +36 -0
  157. package/dist/cjs/object/omitBy.js +38 -0
  158. package/dist/cjs/object/pick.js +37 -0
  159. package/dist/cjs/object/pickBy.js +38 -0
  160. package/dist/cjs/object/set.js +67 -0
  161. package/dist/cjs/object/unset.js +28 -0
  162. package/dist/cjs/object/update.js +31 -0
  163. package/dist/cjs/object/updateWith.js +33 -0
  164. package/dist/cjs/object/values.js +25 -0
  165. package/dist/cjs/string/camelCase.js +37 -0
  166. package/dist/cjs/string/capitalize.js +25 -0
  167. package/dist/cjs/string/endsWith.js +36 -0
  168. package/dist/cjs/string/escape.js +26 -0
  169. package/dist/cjs/string/index.js +40 -0
  170. package/dist/cjs/string/kebabCase.js +27 -0
  171. package/dist/cjs/string/lowerCase.js +24 -0
  172. package/dist/cjs/string/pad.js +31 -0
  173. package/dist/cjs/string/padEnd.js +31 -0
  174. package/dist/cjs/string/padStart.js +31 -0
  175. package/dist/cjs/string/repeat.js +30 -0
  176. package/dist/cjs/string/snakeCase.js +27 -0
  177. package/dist/cjs/string/startsWith.js +34 -0
  178. package/dist/cjs/string/trim.js +30 -0
  179. package/dist/cjs/string/trimEnd.js +30 -0
  180. package/dist/cjs/string/trimStart.js +30 -0
  181. package/dist/cjs/string/unescape.js +26 -0
  182. package/dist/cjs/string/upperFirst.js +25 -0
  183. package/dist/cjs/tree/filterTreeNodes.js +51 -0
  184. package/dist/cjs/tree/findTreeNode.js +45 -0
  185. package/dist/cjs/tree/forEachTree.js +33 -0
  186. package/dist/cjs/tree/getParentNodes.js +49 -0
  187. package/dist/cjs/tree/getTreeDepth.js +38 -0
  188. package/dist/cjs/tree/index.js +30 -0
  189. package/dist/cjs/tree/mapTree.js +98 -0
  190. package/dist/cjs/tree/pruneTree.js +126 -0
  191. package/dist/cjs/tree/toFlatList.js +57 -0
  192. package/dist/cjs/tree/toTree.js +71 -0
  193. package/dist/cjs/tree/traverseTree.js +29 -0
  194. package/dist/cjs/tree/traverseTreeBfs.js +29 -0
  195. package/dist/cjs/util/clamp.js +56 -0
  196. package/dist/cjs/util/constant.js +21 -0
  197. package/dist/cjs/util/defaultTo.js +28 -0
  198. package/dist/cjs/util/defer.js +25 -0
  199. package/dist/cjs/util/delay.js +25 -0
  200. package/dist/cjs/util/identity.js +22 -0
  201. package/dist/cjs/util/inRange.js +41 -0
  202. package/dist/cjs/util/index.js +48 -0
  203. package/dist/cjs/util/iteratee.js +30 -0
  204. package/dist/cjs/util/matches.js +27 -0
  205. package/dist/cjs/util/matchesProperty.js +37 -0
  206. package/dist/cjs/util/negate.js +25 -0
  207. package/dist/cjs/util/noop.js +20 -0
  208. package/dist/cjs/util/now.js +20 -0
  209. package/dist/cjs/util/property.js +33 -0
  210. package/dist/cjs/util/random.js +71 -0
  211. package/dist/cjs/util/range.js +46 -0
  212. package/dist/cjs/util/size.js +47 -0
  213. package/dist/cjs/util/sleep.js +22 -0
  214. package/dist/cjs/util/times.js +41 -0
  215. package/dist/cjs/util/uniqueId.js +26 -0
  216. package/dist/cjs/util/validateFields.js +106 -0
  217. package/dist/cjs/verify/index.js +78 -0
  218. package/dist/cjs/verify/isArguments.js +25 -0
  219. package/dist/cjs/verify/isArray.js +21 -0
  220. package/dist/cjs/verify/isArrayBuffer.js +21 -0
  221. package/dist/cjs/verify/isArrayLike.js +31 -0
  222. package/dist/cjs/verify/isBoolean.js +21 -0
  223. package/dist/cjs/verify/isBuffer.js +23 -0
  224. package/dist/cjs/verify/isDate.js +21 -0
  225. package/dist/cjs/verify/isElement.js +26 -0
  226. package/dist/cjs/verify/isEmpty.js +44 -0
  227. package/dist/cjs/verify/isEqual.js +30 -0
  228. package/dist/cjs/verify/isEqualWith.js +31 -0
  229. package/dist/cjs/verify/isError.js +23 -0
  230. package/dist/cjs/verify/isFinite.js +28 -0
  231. package/dist/cjs/verify/isFunction.js +22 -0
  232. package/dist/cjs/verify/isInteger.js +22 -0
  233. package/dist/cjs/verify/isLength.js +26 -0
  234. package/dist/cjs/verify/isMap.js +21 -0
  235. package/dist/cjs/verify/isMatch.js +30 -0
  236. package/dist/cjs/verify/isMatchWith.js +31 -0
  237. package/dist/cjs/verify/isNaN.js +28 -0
  238. package/dist/cjs/verify/isNative.js +25 -0
  239. package/dist/cjs/verify/isNil.js +27 -0
  240. package/dist/cjs/verify/isNull.js +21 -0
  241. package/dist/cjs/verify/isNumber.js +24 -0
  242. package/dist/cjs/verify/isObject.js +26 -0
  243. package/dist/cjs/verify/isObjectLike.js +30 -0
  244. package/dist/cjs/verify/isPlainObject.js +25 -0
  245. package/dist/cjs/verify/isRegExp.js +21 -0
  246. package/dist/cjs/verify/isSafeInteger.js +30 -0
  247. package/dist/cjs/verify/isSet.js +21 -0
  248. package/dist/cjs/verify/isString.js +21 -0
  249. package/dist/cjs/verify/isSymbol.js +21 -0
  250. package/dist/cjs/verify/isTypedArray.js +38 -0
  251. package/dist/cjs/verify/isUndefined.js +21 -0
  252. package/dist/cjs/verify/isWeakMap.js +21 -0
  253. package/dist/cjs/verify/isWeakSet.js +21 -0
  254. package/dist/cjs/version.js +17 -0
  255. package/dist/esm/_internal/MapCache.js +26 -0
  256. package/dist/esm/_internal/assignSources.js +21 -0
  257. package/dist/esm/_internal/assignValue.js +17 -0
  258. package/dist/esm/_internal/baseClone.js +187 -0
  259. package/dist/esm/_internal/baseCollectionKeys.js +52 -0
  260. package/dist/esm/_internal/baseDefaultsDeep.js +53 -0
  261. package/dist/esm/_internal/baseDifference.js +22 -0
  262. package/dist/esm/_internal/baseExtremum.js +28 -0
  263. package/dist/esm/_internal/baseExtremumBy.js +57 -0
  264. package/dist/esm/_internal/baseFilter.js +55 -0
  265. package/dist/esm/_internal/baseFind.js +145 -0
  266. package/dist/esm/_internal/baseFlatten.js +26 -0
  267. package/dist/esm/_internal/baseForEach.js +86 -0
  268. package/dist/esm/_internal/baseForOwn.js +26 -0
  269. package/dist/esm/_internal/baseIsEqual.js +158 -0
  270. package/dist/esm/_internal/baseIsMatch.js +74 -0
  271. package/dist/esm/_internal/baseIteratee.js +40 -0
  272. package/dist/esm/_internal/baseKeysIn.js +38 -0
  273. package/dist/esm/_internal/baseMap.js +43 -0
  274. package/dist/esm/_internal/baseMerge.js +132 -0
  275. package/dist/esm/_internal/basePad.js +34 -0
  276. package/dist/esm/_internal/basePath.js +77 -0
  277. package/dist/esm/_internal/baseRange.js +15 -0
  278. package/dist/esm/_internal/baseReduce.js +71 -0
  279. package/dist/esm/_internal/baseSum.js +21 -0
  280. package/dist/esm/_internal/baseTreeTraverse.js +219 -0
  281. package/dist/esm/_internal/baseTrim.js +29 -0
  282. package/dist/esm/_internal/baseUnset.js +43 -0
  283. package/dist/esm/_internal/baseUpdate.js +59 -0
  284. package/dist/esm/_internal/coerceToString.js +18 -0
  285. package/dist/esm/_internal/colorMath.js +56 -0
  286. package/dist/esm/_internal/compareValues.js +45 -0
  287. package/dist/esm/_internal/composePartials.js +35 -0
  288. package/dist/esm/_internal/createCompounder.js +18 -0
  289. package/dist/esm/_internal/deburr.js +71 -0
  290. package/dist/esm/_internal/flattenPaths.js +18 -0
  291. package/dist/esm/_internal/htmlEscape.js +32 -0
  292. package/dist/esm/_internal/identity.js +8 -0
  293. package/dist/esm/_internal/index.js +8 -0
  294. package/dist/esm/_internal/isArguments.js +28 -0
  295. package/dist/esm/_internal/isArrayLike.js +9 -0
  296. package/dist/esm/_internal/isArrayLikeObject.js +9 -0
  297. package/dist/esm/_internal/isEmptyValue.js +8 -0
  298. package/dist/esm/_internal/isFlattenable.js +9 -0
  299. package/dist/esm/_internal/isIndex.js +20 -0
  300. package/dist/esm/_internal/isLength.js +12 -0
  301. package/dist/esm/_internal/isPlainObject.js +14 -0
  302. package/dist/esm/_internal/mergeInto.js +27 -0
  303. package/dist/esm/_internal/repeatString.js +12 -0
  304. package/dist/esm/_internal/toInteger.js +21 -0
  305. package/dist/esm/_internal/toLength.js +11 -0
  306. package/dist/esm/_internal/toPath.js +26 -0
  307. package/dist/esm/_internal/upperFirst.js +11 -0
  308. package/dist/esm/_internal/validateFieldRule.js +132 -0
  309. package/dist/esm/_internal/words.js +10 -0
  310. package/dist/esm/array/chunk.js +31 -0
  311. package/dist/esm/array/compact.js +31 -0
  312. package/dist/esm/array/concat.js +34 -0
  313. package/dist/esm/array/difference.js +38 -0
  314. package/dist/esm/array/differenceBy.js +49 -0
  315. package/dist/esm/array/drop.js +25 -0
  316. package/dist/esm/array/each.js +18 -0
  317. package/dist/esm/array/every.js +63 -0
  318. package/dist/esm/array/filter.js +20 -0
  319. package/dist/esm/array/find.js +26 -0
  320. package/dist/esm/array/findIndex.js +21 -0
  321. package/dist/esm/array/findLast.js +21 -0
  322. package/dist/esm/array/findLastIndex.js +21 -0
  323. package/dist/esm/array/flatten.js +21 -0
  324. package/dist/esm/array/flattenDeep.js +22 -0
  325. package/dist/esm/array/forEach.js +26 -0
  326. package/dist/esm/array/forEachRight.js +23 -0
  327. package/dist/esm/array/groupBy.js +61 -0
  328. package/dist/esm/array/head.js +18 -0
  329. package/dist/esm/array/includes.js +54 -0
  330. package/dist/esm/array/index.js +43 -0
  331. package/dist/esm/array/intersection.js +48 -0
  332. package/dist/esm/array/keyBy.js +73 -0
  333. package/dist/esm/array/last.js +20 -0
  334. package/dist/esm/array/map.js +20 -0
  335. package/dist/esm/array/max.js +19 -0
  336. package/dist/esm/array/maxBy.js +21 -0
  337. package/dist/esm/array/mean.js +21 -0
  338. package/dist/esm/array/meanBy.js +24 -0
  339. package/dist/esm/array/min.js +19 -0
  340. package/dist/esm/array/minBy.js +21 -0
  341. package/dist/esm/array/orderBy.js +89 -0
  342. package/dist/esm/array/partition.js +62 -0
  343. package/dist/esm/array/reduce.js +24 -0
  344. package/dist/esm/array/reduceRight.js +24 -0
  345. package/dist/esm/array/some.js +60 -0
  346. package/dist/esm/array/sortBy.js +21 -0
  347. package/dist/esm/array/sum.js +19 -0
  348. package/dist/esm/array/sumBy.js +25 -0
  349. package/dist/esm/array/take.js +25 -0
  350. package/dist/esm/array/union.js +32 -0
  351. package/dist/esm/array/uniq.js +30 -0
  352. package/dist/esm/array/uniqBy.js +35 -0
  353. package/dist/esm/array/without.js +24 -0
  354. package/dist/esm/color/getCssVariable.js +28 -0
  355. package/dist/esm/color/getThemePalette.js +53 -0
  356. package/dist/esm/color/hexToRgb.js +23 -0
  357. package/dist/esm/color/index.js +5 -0
  358. package/dist/esm/color/rgbStringToHex.js +36 -0
  359. package/dist/esm/color/rgbToHex.js +21 -0
  360. package/dist/esm/convert/index.js +13 -0
  361. package/dist/esm/convert/toArray.js +50 -0
  362. package/dist/esm/convert/toFinite.js +28 -0
  363. package/dist/esm/convert/toInteger.js +27 -0
  364. package/dist/esm/convert/toLength.js +24 -0
  365. package/dist/esm/convert/toLower.js +19 -0
  366. package/dist/esm/convert/toNumber.js +52 -0
  367. package/dist/esm/convert/toPairs.js +21 -0
  368. package/dist/esm/convert/toPairsIn.js +29 -0
  369. package/dist/esm/convert/toPath.js +16 -0
  370. package/dist/esm/convert/toPlainObject.js +36 -0
  371. package/dist/esm/convert/toSafeInteger.js +28 -0
  372. package/dist/esm/convert/toString.js +31 -0
  373. package/dist/esm/convert/toUpper.js +19 -0
  374. package/dist/esm/function/after.js +29 -0
  375. package/dist/esm/function/before.js +29 -0
  376. package/dist/esm/function/curry.js +53 -0
  377. package/dist/esm/function/debounce.js +104 -0
  378. package/dist/esm/function/flow.js +49 -0
  379. package/dist/esm/function/flowRight.js +43 -0
  380. package/dist/esm/function/index.js +11 -0
  381. package/dist/esm/function/memoize.js +20 -0
  382. package/dist/esm/function/once.js +28 -0
  383. package/dist/esm/function/partial.js +31 -0
  384. package/dist/esm/function/partialRight.js +30 -0
  385. package/dist/esm/function/throttle.js +14 -0
  386. package/dist/esm/index.js +10 -0
  387. package/dist/esm/object/assign.js +21 -0
  388. package/dist/esm/object/clone.js +23 -0
  389. package/dist/esm/object/cloneDeep.js +24 -0
  390. package/dist/esm/object/cloneDeepWith.js +24 -0
  391. package/dist/esm/object/cloneWith.js +24 -0
  392. package/dist/esm/object/defaults.js +20 -0
  393. package/dist/esm/object/defaultsDeep.js +38 -0
  394. package/dist/esm/object/findKey.js +23 -0
  395. package/dist/esm/object/findLastKey.js +23 -0
  396. package/dist/esm/object/forIn.js +23 -0
  397. package/dist/esm/object/forOwn.js +23 -0
  398. package/dist/esm/object/fromPairs.js +25 -0
  399. package/dist/esm/object/get.js +31 -0
  400. package/dist/esm/object/has.js +33 -0
  401. package/dist/esm/object/index.js +29 -0
  402. package/dist/esm/object/invert.js +31 -0
  403. package/dist/esm/object/keys.js +22 -0
  404. package/dist/esm/object/mapKeys.js +31 -0
  405. package/dist/esm/object/mapValues.js +31 -0
  406. package/dist/esm/object/merge.js +23 -0
  407. package/dist/esm/object/mergeWith.js +35 -0
  408. package/dist/esm/object/omit.js +30 -0
  409. package/dist/esm/object/omitBy.js +32 -0
  410. package/dist/esm/object/pick.js +31 -0
  411. package/dist/esm/object/pickBy.js +32 -0
  412. package/dist/esm/object/set.js +61 -0
  413. package/dist/esm/object/unset.js +22 -0
  414. package/dist/esm/object/update.js +25 -0
  415. package/dist/esm/object/updateWith.js +27 -0
  416. package/dist/esm/object/values.js +22 -0
  417. package/dist/esm/string/camelCase.js +31 -0
  418. package/dist/esm/string/capitalize.js +19 -0
  419. package/dist/esm/string/endsWith.js +30 -0
  420. package/dist/esm/string/escape.js +20 -0
  421. package/dist/esm/string/index.js +17 -0
  422. package/dist/esm/string/kebabCase.js +22 -0
  423. package/dist/esm/string/lowerCase.js +19 -0
  424. package/dist/esm/string/pad.js +25 -0
  425. package/dist/esm/string/padEnd.js +25 -0
  426. package/dist/esm/string/padStart.js +25 -0
  427. package/dist/esm/string/repeat.js +24 -0
  428. package/dist/esm/string/snakeCase.js +22 -0
  429. package/dist/esm/string/startsWith.js +28 -0
  430. package/dist/esm/string/trim.js +24 -0
  431. package/dist/esm/string/trimEnd.js +24 -0
  432. package/dist/esm/string/trimStart.js +24 -0
  433. package/dist/esm/string/unescape.js +20 -0
  434. package/dist/esm/string/upperFirst.js +19 -0
  435. package/dist/esm/tree/filterTreeNodes.js +45 -0
  436. package/dist/esm/tree/findTreeNode.js +39 -0
  437. package/dist/esm/tree/forEachTree.js +27 -0
  438. package/dist/esm/tree/getParentNodes.js +43 -0
  439. package/dist/esm/tree/getTreeDepth.js +32 -0
  440. package/dist/esm/tree/index.js +12 -0
  441. package/dist/esm/tree/mapTree.js +95 -0
  442. package/dist/esm/tree/pruneTree.js +123 -0
  443. package/dist/esm/tree/toFlatList.js +51 -0
  444. package/dist/esm/tree/toTree.js +68 -0
  445. package/dist/esm/tree/traverseTree.js +23 -0
  446. package/dist/esm/tree/traverseTreeBfs.js +23 -0
  447. package/dist/esm/util/clamp.js +53 -0
  448. package/dist/esm/util/constant.js +18 -0
  449. package/dist/esm/util/defaultTo.js +25 -0
  450. package/dist/esm/util/defer.js +19 -0
  451. package/dist/esm/util/delay.js +22 -0
  452. package/dist/esm/util/identity.js +17 -0
  453. package/dist/esm/util/inRange.js +38 -0
  454. package/dist/esm/util/index.js +21 -0
  455. package/dist/esm/util/iteratee.js +24 -0
  456. package/dist/esm/util/matches.js +21 -0
  457. package/dist/esm/util/matchesProperty.js +31 -0
  458. package/dist/esm/util/negate.js +22 -0
  459. package/dist/esm/util/noop.js +17 -0
  460. package/dist/esm/util/now.js +17 -0
  461. package/dist/esm/util/property.js +27 -0
  462. package/dist/esm/util/random.js +68 -0
  463. package/dist/esm/util/range.js +40 -0
  464. package/dist/esm/util/size.js +41 -0
  465. package/dist/esm/util/sleep.js +19 -0
  466. package/dist/esm/util/times.js +35 -0
  467. package/dist/esm/util/uniqueId.js +23 -0
  468. package/dist/esm/util/validateFields.js +100 -0
  469. package/dist/esm/verify/index.js +36 -0
  470. package/dist/esm/verify/isArguments.js +18 -0
  471. package/dist/esm/verify/isArray.js +18 -0
  472. package/dist/esm/verify/isArrayBuffer.js +18 -0
  473. package/dist/esm/verify/isArrayLike.js +25 -0
  474. package/dist/esm/verify/isBoolean.js +18 -0
  475. package/dist/esm/verify/isBuffer.js +20 -0
  476. package/dist/esm/verify/isDate.js +18 -0
  477. package/dist/esm/verify/isElement.js +20 -0
  478. package/dist/esm/verify/isEmpty.js +38 -0
  479. package/dist/esm/verify/isEqual.js +24 -0
  480. package/dist/esm/verify/isEqualWith.js +25 -0
  481. package/dist/esm/verify/isError.js +20 -0
  482. package/dist/esm/verify/isFinite.js +22 -0
  483. package/dist/esm/verify/isFunction.js +19 -0
  484. package/dist/esm/verify/isInteger.js +19 -0
  485. package/dist/esm/verify/isLength.js +19 -0
  486. package/dist/esm/verify/isMap.js +18 -0
  487. package/dist/esm/verify/isMatch.js +24 -0
  488. package/dist/esm/verify/isMatchWith.js +25 -0
  489. package/dist/esm/verify/isNaN.js +22 -0
  490. package/dist/esm/verify/isNative.js +22 -0
  491. package/dist/esm/verify/isNil.js +24 -0
  492. package/dist/esm/verify/isNull.js +18 -0
  493. package/dist/esm/verify/isNumber.js +21 -0
  494. package/dist/esm/verify/isObject.js +23 -0
  495. package/dist/esm/verify/isObjectLike.js +27 -0
  496. package/dist/esm/verify/isPlainObject.js +18 -0
  497. package/dist/esm/verify/isRegExp.js +18 -0
  498. package/dist/esm/verify/isSafeInteger.js +24 -0
  499. package/dist/esm/verify/isSet.js +18 -0
  500. package/dist/esm/verify/isString.js +18 -0
  501. package/dist/esm/verify/isSymbol.js +18 -0
  502. package/dist/esm/verify/isTypedArray.js +35 -0
  503. package/dist/esm/verify/isUndefined.js +18 -0
  504. package/dist/esm/verify/isWeakMap.js +18 -0
  505. package/dist/esm/verify/isWeakSet.js +18 -0
  506. package/dist/esm/version.js +14 -0
  507. package/dist/types/_internal/MapCache.d.ts +13 -0
  508. package/dist/types/_internal/assignSources.d.ts +6 -0
  509. package/dist/types/_internal/assignValue.d.ts +6 -0
  510. package/dist/types/_internal/baseClone.d.ts +11 -0
  511. package/dist/types/_internal/baseCollectionKeys.d.ts +12 -0
  512. package/dist/types/_internal/baseDefaultsDeep.d.ts +6 -0
  513. package/dist/types/_internal/baseDifference.d.ts +6 -0
  514. package/dist/types/_internal/baseExtremum.d.ts +6 -0
  515. package/dist/types/_internal/baseExtremumBy.d.ts +7 -0
  516. package/dist/types/_internal/baseFilter.d.ts +7 -0
  517. package/dist/types/_internal/baseFind.d.ts +20 -0
  518. package/dist/types/_internal/baseFlatten.d.ts +6 -0
  519. package/dist/types/_internal/baseForEach.d.ts +6 -0
  520. package/dist/types/_internal/baseForOwn.d.ts +14 -0
  521. package/dist/types/_internal/baseIsEqual.d.ts +10 -0
  522. package/dist/types/_internal/baseIsMatch.d.ts +10 -0
  523. package/dist/types/_internal/baseIteratee.d.ts +7 -0
  524. package/dist/types/_internal/baseKeysIn.d.ts +6 -0
  525. package/dist/types/_internal/baseMap.d.ts +7 -0
  526. package/dist/types/_internal/baseMerge.d.ts +13 -0
  527. package/dist/types/_internal/basePad.d.ts +6 -0
  528. package/dist/types/_internal/basePath.d.ts +20 -0
  529. package/dist/types/_internal/baseRange.d.ts +6 -0
  530. package/dist/types/_internal/baseReduce.d.ts +7 -0
  531. package/dist/types/_internal/baseSum.d.ts +6 -0
  532. package/dist/types/_internal/baseTreeTraverse.d.ts +86 -0
  533. package/dist/types/_internal/baseTrim.d.ts +6 -0
  534. package/dist/types/_internal/baseUnset.d.ts +6 -0
  535. package/dist/types/_internal/baseUpdate.d.ts +6 -0
  536. package/dist/types/_internal/coerceToString.d.ts +6 -0
  537. package/dist/types/_internal/colorMath.d.ts +14 -0
  538. package/dist/types/_internal/compareValues.d.ts +12 -0
  539. package/dist/types/_internal/composePartials.d.ts +8 -0
  540. package/dist/types/_internal/createCompounder.d.ts +6 -0
  541. package/dist/types/_internal/deburr.d.ts +6 -0
  542. package/dist/types/_internal/flattenPaths.d.ts +6 -0
  543. package/dist/types/_internal/htmlEscape.d.ts +12 -0
  544. package/dist/types/_internal/identity.d.ts +6 -0
  545. package/dist/types/_internal/index.d.ts +10 -0
  546. package/dist/types/_internal/isArguments.d.ts +6 -0
  547. package/dist/types/_internal/isArrayLike.d.ts +6 -0
  548. package/dist/types/_internal/isArrayLikeObject.d.ts +6 -0
  549. package/dist/types/_internal/isEmptyValue.d.ts +6 -0
  550. package/dist/types/_internal/isFlattenable.d.ts +6 -0
  551. package/dist/types/_internal/isIndex.d.ts +6 -0
  552. package/dist/types/_internal/isLength.d.ts +6 -0
  553. package/dist/types/_internal/isPlainObject.d.ts +8 -0
  554. package/dist/types/_internal/mergeInto.d.ts +7 -0
  555. package/dist/types/_internal/repeatString.d.ts +6 -0
  556. package/dist/types/_internal/toInteger.d.ts +6 -0
  557. package/dist/types/_internal/toLength.d.ts +6 -0
  558. package/dist/types/_internal/toPath.d.ts +7 -0
  559. package/dist/types/_internal/upperFirst.d.ts +6 -0
  560. package/dist/types/_internal/validateFieldRule.d.ts +26 -0
  561. package/dist/types/_internal/words.d.ts +6 -0
  562. package/dist/types/array/chunk.d.ts +17 -0
  563. package/dist/types/array/compact.d.ts +16 -0
  564. package/dist/types/array/concat.d.ts +17 -0
  565. package/dist/types/array/difference.d.ts +17 -0
  566. package/dist/types/array/differenceBy.d.ts +18 -0
  567. package/dist/types/array/drop.d.ts +17 -0
  568. package/dist/types/array/each.d.ts +18 -0
  569. package/dist/types/array/every.d.ts +21 -0
  570. package/dist/types/array/filter.d.ts +18 -0
  571. package/dist/types/array/find.d.ts +23 -0
  572. package/dist/types/array/findIndex.d.ts +18 -0
  573. package/dist/types/array/findLast.d.ts +18 -0
  574. package/dist/types/array/findLastIndex.d.ts +18 -0
  575. package/dist/types/array/flatten.d.ts +16 -0
  576. package/dist/types/array/flattenDeep.d.ts +16 -0
  577. package/dist/types/array/forEach.d.ts +23 -0
  578. package/dist/types/array/forEachRight.d.ts +20 -0
  579. package/dist/types/array/groupBy.d.ts +18 -0
  580. package/dist/types/array/head.d.ts +16 -0
  581. package/dist/types/array/includes.d.ts +21 -0
  582. package/dist/types/array/index.d.ts +43 -0
  583. package/dist/types/array/intersection.d.ts +16 -0
  584. package/dist/types/array/keyBy.d.ts +24 -0
  585. package/dist/types/array/last.d.ts +16 -0
  586. package/dist/types/array/map.d.ts +18 -0
  587. package/dist/types/array/max.d.ts +16 -0
  588. package/dist/types/array/maxBy.d.ts +18 -0
  589. package/dist/types/array/mean.d.ts +16 -0
  590. package/dist/types/array/meanBy.d.ts +18 -0
  591. package/dist/types/array/min.d.ts +16 -0
  592. package/dist/types/array/minBy.d.ts +18 -0
  593. package/dist/types/array/orderBy.d.ts +23 -0
  594. package/dist/types/array/partition.d.ts +18 -0
  595. package/dist/types/array/reduce.d.ts +19 -0
  596. package/dist/types/array/reduceRight.d.ts +19 -0
  597. package/dist/types/array/some.d.ts +18 -0
  598. package/dist/types/array/sortBy.d.ts +18 -0
  599. package/dist/types/array/sum.d.ts +16 -0
  600. package/dist/types/array/sumBy.d.ts +18 -0
  601. package/dist/types/array/take.d.ts +17 -0
  602. package/dist/types/array/union.d.ts +16 -0
  603. package/dist/types/array/uniq.d.ts +16 -0
  604. package/dist/types/array/uniqBy.d.ts +18 -0
  605. package/dist/types/array/without.d.ts +17 -0
  606. package/dist/types/color/getCssVariable.d.ts +18 -0
  607. package/dist/types/color/getThemePalette.d.ts +28 -0
  608. package/dist/types/color/hexToRgb.d.ts +16 -0
  609. package/dist/types/color/index.d.ts +6 -0
  610. package/dist/types/color/rgbStringToHex.d.ts +16 -0
  611. package/dist/types/color/rgbToHex.d.ts +18 -0
  612. package/dist/types/convert/index.d.ts +13 -0
  613. package/dist/types/convert/toArray.d.ts +19 -0
  614. package/dist/types/convert/toFinite.d.ts +19 -0
  615. package/dist/types/convert/toInteger.d.ts +19 -0
  616. package/dist/types/convert/toLength.d.ts +19 -0
  617. package/dist/types/convert/toLower.d.ts +16 -0
  618. package/dist/types/convert/toNumber.d.ts +19 -0
  619. package/dist/types/convert/toPairs.d.ts +16 -0
  620. package/dist/types/convert/toPairsIn.d.ts +20 -0
  621. package/dist/types/convert/toPath.d.ts +16 -0
  622. package/dist/types/convert/toPlainObject.d.ts +19 -0
  623. package/dist/types/convert/toSafeInteger.d.ts +19 -0
  624. package/dist/types/convert/toString.d.ts +19 -0
  625. package/dist/types/convert/toUpper.d.ts +16 -0
  626. package/dist/types/function/after.d.ts +20 -0
  627. package/dist/types/function/before.d.ts +20 -0
  628. package/dist/types/function/curry.d.ts +27 -0
  629. package/dist/types/function/debounce.d.ts +31 -0
  630. package/dist/types/function/flow.d.ts +18 -0
  631. package/dist/types/function/flowRight.d.ts +18 -0
  632. package/dist/types/function/index.d.ts +11 -0
  633. package/dist/types/function/memoize.d.ts +41 -0
  634. package/dist/types/function/once.d.ts +18 -0
  635. package/dist/types/function/partial.d.ts +26 -0
  636. package/dist/types/function/partialRight.d.ts +25 -0
  637. package/dist/types/function/throttle.d.ts +26 -0
  638. package/dist/types/index.d.ts +10 -0
  639. package/dist/types/object/assign.d.ts +18 -0
  640. package/dist/types/object/clone.d.ts +20 -0
  641. package/dist/types/object/cloneDeep.d.ts +21 -0
  642. package/dist/types/object/cloneDeepWith.d.ts +23 -0
  643. package/dist/types/object/cloneWith.d.ts +23 -0
  644. package/dist/types/object/defaults.d.ts +17 -0
  645. package/dist/types/object/defaultsDeep.d.ts +17 -0
  646. package/dist/types/object/findKey.d.ts +17 -0
  647. package/dist/types/object/findLastKey.d.ts +17 -0
  648. package/dist/types/object/forIn.d.ts +16 -0
  649. package/dist/types/object/forOwn.d.ts +16 -0
  650. package/dist/types/object/fromPairs.d.ts +16 -0
  651. package/dist/types/object/get.d.ts +20 -0
  652. package/dist/types/object/has.d.ts +19 -0
  653. package/dist/types/object/index.d.ts +29 -0
  654. package/dist/types/object/invert.d.ts +16 -0
  655. package/dist/types/object/keys.d.ts +19 -0
  656. package/dist/types/object/mapKeys.d.ts +18 -0
  657. package/dist/types/object/mapValues.d.ts +18 -0
  658. package/dist/types/object/merge.d.ts +20 -0
  659. package/dist/types/object/mergeWith.d.ts +27 -0
  660. package/dist/types/object/omit.d.ts +18 -0
  661. package/dist/types/object/omitBy.d.ts +18 -0
  662. package/dist/types/object/pick.d.ts +18 -0
  663. package/dist/types/object/pickBy.d.ts +18 -0
  664. package/dist/types/object/set.d.ts +23 -0
  665. package/dist/types/object/unset.d.ts +19 -0
  666. package/dist/types/object/update.d.ts +19 -0
  667. package/dist/types/object/updateWith.d.ts +21 -0
  668. package/dist/types/object/values.d.ts +19 -0
  669. package/dist/types/string/camelCase.d.ts +19 -0
  670. package/dist/types/string/capitalize.d.ts +16 -0
  671. package/dist/types/string/endsWith.d.ts +21 -0
  672. package/dist/types/string/escape.d.ts +16 -0
  673. package/dist/types/string/index.d.ts +17 -0
  674. package/dist/types/string/kebabCase.d.ts +20 -0
  675. package/dist/types/string/lowerCase.d.ts +17 -0
  676. package/dist/types/string/pad.d.ts +21 -0
  677. package/dist/types/string/padEnd.d.ts +21 -0
  678. package/dist/types/string/padStart.d.ts +21 -0
  679. package/dist/types/string/repeat.d.ts +20 -0
  680. package/dist/types/string/snakeCase.d.ts +20 -0
  681. package/dist/types/string/startsWith.d.ts +21 -0
  682. package/dist/types/string/trim.d.ts +20 -0
  683. package/dist/types/string/trimEnd.d.ts +20 -0
  684. package/dist/types/string/trimStart.d.ts +20 -0
  685. package/dist/types/string/unescape.d.ts +16 -0
  686. package/dist/types/string/upperFirst.d.ts +16 -0
  687. package/dist/types/tree/filterTreeNodes.d.ts +29 -0
  688. package/dist/types/tree/findTreeNode.d.ts +22 -0
  689. package/dist/types/tree/forEachTree.d.ts +25 -0
  690. package/dist/types/tree/getParentNodes.d.ts +26 -0
  691. package/dist/types/tree/getTreeDepth.d.ts +22 -0
  692. package/dist/types/tree/index.d.ts +14 -0
  693. package/dist/types/tree/mapTree.d.ts +23 -0
  694. package/dist/types/tree/pruneTree.d.ts +32 -0
  695. package/dist/types/tree/toFlatList.d.ts +26 -0
  696. package/dist/types/tree/toTree.d.ts +22 -0
  697. package/dist/types/tree/traverseTree.d.ts +22 -0
  698. package/dist/types/tree/traverseTreeBfs.d.ts +22 -0
  699. package/dist/types/util/clamp.d.ts +18 -0
  700. package/dist/types/util/constant.d.ts +16 -0
  701. package/dist/types/util/defaultTo.d.ts +23 -0
  702. package/dist/types/util/defer.d.ts +16 -0
  703. package/dist/types/util/delay.d.ts +17 -0
  704. package/dist/types/util/identity.d.ts +17 -0
  705. package/dist/types/util/inRange.d.ts +18 -0
  706. package/dist/types/util/index.d.ts +22 -0
  707. package/dist/types/util/iteratee.d.ts +17 -0
  708. package/dist/types/util/matches.d.ts +16 -0
  709. package/dist/types/util/matchesProperty.d.ts +17 -0
  710. package/dist/types/util/negate.d.ts +16 -0
  711. package/dist/types/util/noop.d.ts +15 -0
  712. package/dist/types/util/now.d.ts +15 -0
  713. package/dist/types/util/property.d.ts +16 -0
  714. package/dist/types/util/random.d.ts +18 -0
  715. package/dist/types/util/range.d.ts +18 -0
  716. package/dist/types/util/size.d.ts +22 -0
  717. package/dist/types/util/sleep.d.ts +15 -0
  718. package/dist/types/util/times.d.ts +17 -0
  719. package/dist/types/util/uniqueId.d.ts +19 -0
  720. package/dist/types/util/validateFields.d.ts +46 -0
  721. package/dist/types/verify/index.d.ts +36 -0
  722. package/dist/types/verify/isArguments.d.ts +18 -0
  723. package/dist/types/verify/isArray.d.ts +16 -0
  724. package/dist/types/verify/isArrayBuffer.d.ts +16 -0
  725. package/dist/types/verify/isArrayLike.d.ts +24 -0
  726. package/dist/types/verify/isBoolean.d.ts +16 -0
  727. package/dist/types/verify/isBuffer.d.ts +17 -0
  728. package/dist/types/verify/isDate.d.ts +16 -0
  729. package/dist/types/verify/isElement.d.ts +17 -0
  730. package/dist/types/verify/isEmpty.d.ts +21 -0
  731. package/dist/types/verify/isEqual.d.ts +21 -0
  732. package/dist/types/verify/isEqualWith.d.ts +24 -0
  733. package/dist/types/verify/isError.d.ts +18 -0
  734. package/dist/types/verify/isFinite.d.ts +19 -0
  735. package/dist/types/verify/isFunction.d.ts +16 -0
  736. package/dist/types/verify/isInteger.d.ts +17 -0
  737. package/dist/types/verify/isLength.d.ts +19 -0
  738. package/dist/types/verify/isMap.d.ts +16 -0
  739. package/dist/types/verify/isMatch.d.ts +21 -0
  740. package/dist/types/verify/isMatchWith.d.ts +24 -0
  741. package/dist/types/verify/isNaN.d.ts +19 -0
  742. package/dist/types/verify/isNative.d.ts +19 -0
  743. package/dist/types/verify/isNil.d.ts +22 -0
  744. package/dist/types/verify/isNull.d.ts +16 -0
  745. package/dist/types/verify/isNumber.d.ts +19 -0
  746. package/dist/types/verify/isObject.d.ts +20 -0
  747. package/dist/types/verify/isObjectLike.d.ts +25 -0
  748. package/dist/types/verify/isPlainObject.d.ts +18 -0
  749. package/dist/types/verify/isRegExp.d.ts +16 -0
  750. package/dist/types/verify/isSafeInteger.d.ts +19 -0
  751. package/dist/types/verify/isSet.d.ts +16 -0
  752. package/dist/types/verify/isString.d.ts +16 -0
  753. package/dist/types/verify/isSymbol.d.ts +16 -0
  754. package/dist/types/verify/isTypedArray.d.ts +19 -0
  755. package/dist/types/verify/isUndefined.d.ts +16 -0
  756. package/dist/types/verify/isWeakMap.d.ts +16 -0
  757. package/dist/types/verify/isWeakSet.d.ts +16 -0
  758. package/dist/types/version.d.ts +13 -0
  759. package/dist/umd/zhiaiwan-utils.js +8178 -0
  760. package/dist/umd/zhiaiwan-utils.min.js +2 -0
  761. package/package.json +99 -0
@@ -0,0 +1,6 @@
1
+ /**
2
+ * 判断 value 是否为合法类数组长度。
3
+ *
4
+ * @internal
5
+ */
6
+ export default function isLength(value: unknown): value is number;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * 内部辅助:判断值是否为“纯对象”(由 `{}` 或 `new Object()` 创建,或原型为 null)。
3
+ *
4
+ * 该函数仅供库内部复用,不作为公共 API 导出。
5
+ *
6
+ * @internal
7
+ */
8
+ export default function isPlainObject(value: unknown): value is Record<string, unknown>;
@@ -0,0 +1,7 @@
1
+ import { type MergeCustomizer } from './baseMerge';
2
+ /**
3
+ * 内部辅助:将 sources 合并到 object,可选自定义合并器。
4
+ *
5
+ * @internal
6
+ */
7
+ export default function mergeInto<T>(object: T, sources: unknown[], customizer?: MergeCustomizer): T;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * 内部辅助:将字符串重复 n 次。
3
+ *
4
+ * @internal
5
+ */
6
+ export default function repeatString(string: string, count: number): string;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * 内部辅助:将值转为整数,语义对齐 convert/toInteger。
3
+ *
4
+ * @internal
5
+ */
6
+ export default function toInteger(value: unknown): number;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * 内部辅助:将值转为合法类数组长度,语义对齐 convert/toLength。
3
+ *
4
+ * @internal
5
+ */
6
+ export default function toLength(value: unknown): number;
@@ -0,0 +1,7 @@
1
+ /**
2
+ * 内部辅助:将属性路径规范化为字符串键数组。
3
+ * 支持点号与方括号写法,如 `'a.b[0].c'` → `['a', 'b', '0', 'c']`。
4
+ *
5
+ * @internal
6
+ */
7
+ export default function toPath(path: string | ReadonlyArray<string | number>): string[];
@@ -0,0 +1,6 @@
1
+ /**
2
+ * 首字母大写,对齐 Lodash upperFirst。
3
+ *
4
+ * @internal
5
+ */
6
+ export default function upperFirst(string: string): string;
@@ -0,0 +1,26 @@
1
+ export type FieldRuleType = 'string' | 'number' | 'boolean' | 'integer' | 'array' | 'object' | 'email' | 'url' | 'date';
2
+ export interface FieldRule {
3
+ required?: boolean;
4
+ type?: FieldRuleType;
5
+ pattern?: RegExp;
6
+ min?: number;
7
+ max?: number;
8
+ len?: number;
9
+ enum?: readonly unknown[];
10
+ message?: string | ((value: unknown, rule: FieldRule) => string);
11
+ validator?: (ctx: ValidatorContext) => ValidatorReturn;
12
+ }
13
+ export interface ValidatorContext {
14
+ value: unknown;
15
+ values: Record<string, unknown>;
16
+ field: string;
17
+ rule: FieldRule;
18
+ }
19
+ export type ValidatorReturn = boolean | string | void | Promise<boolean | string | void>;
20
+ export type FieldRuleResult = string | null | Promise<string | null>;
21
+ /**
22
+ * 执行单条字段规则,失败时返回错误文案,通过时返回 null。
23
+ *
24
+ * @internal
25
+ */
26
+ export default function validateFieldRule(ctx: ValidatorContext): FieldRuleResult;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * 拆分字符串为单词数组,对齐 Lodash words 默认 pattern。
3
+ *
4
+ * @internal
5
+ */
6
+ export default function words(string: string): string[];
@@ -0,0 +1,17 @@
1
+ /**
2
+ * 将 array 按指定长度切分为多个子数组。
3
+ *
4
+ * @param array - 待切分的数组
5
+ * @param size - 每个分块的长度,默认 1
6
+ * @returns 分块后的二维数组
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * zhiaiwanUtils.chunk(['a', 'b', 'c', 'd'], 2);
11
+ * // => [['a', 'b'], ['c', 'd']]
12
+ * ```
13
+ *
14
+ * @since 1.0.0
15
+ * @category Array
16
+ */
17
+ export default function chunk(array: unknown[] | null | undefined, size?: number): unknown[][];
@@ -0,0 +1,16 @@
1
+ /**
2
+ * 移除数组中所有假值(`false`、`null`、`0`、`""`、`undefined`、`NaN`)。
3
+ *
4
+ * @param array - 待处理的数组
5
+ * @returns 过滤后的新数组
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * zhiaiwanUtils.compact([0, 1, false, 2, '', 3]);
10
+ * // => [1, 2, 3]
11
+ * ```
12
+ *
13
+ * @since 1.0.0
14
+ * @category Array
15
+ */
16
+ export default function compact(array: unknown): unknown[];
@@ -0,0 +1,17 @@
1
+ /**
2
+ * 创建一个新数组,按顺序拼接各参数;数组参数会展开一层。
3
+ *
4
+ * @param array - 第一个数组或元素
5
+ * @param values - 后续数组或元素
6
+ * @returns 拼接后的新数组
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * zhiaiwanUtils.concat([1], 2, [3], [[4]]);
11
+ * // => [1, 2, 3, [4]]
12
+ * ```
13
+ *
14
+ * @since 1.0.0
15
+ * @category Array
16
+ */
17
+ export default function concat(array: unknown, ...values: unknown[]): unknown[];
@@ -0,0 +1,17 @@
1
+ /**
2
+ * 创建按 SameValueZero 排除其余数组元素后的新数组。
3
+ *
4
+ * @param array - 待处理的数组
5
+ * @param values - 要排除的数组(可传多个)
6
+ * @returns 差集数组
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * zhiaiwanUtils.difference([2, 1], [2, 3]);
11
+ * // => [1]
12
+ * ```
13
+ *
14
+ * @since 1.0.0
15
+ * @category Array
16
+ */
17
+ export default function difference(array: unknown[], ...values: unknown[][]): unknown[];
@@ -0,0 +1,18 @@
1
+ /**
2
+ * 类似 difference,但按 iteratee 返回值比较排除项。
3
+ *
4
+ * @param array - 待处理的数组
5
+ * @param values - 要排除的数组(可传多个),最后一项可为 iteratee
6
+ * @param iteratee - 比较依据的函数或简写
7
+ * @returns 差集数组
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * zhiaiwanUtils.differenceBy([2.1, 1.2], [2.3, 3.4], Math.floor);
12
+ * // => [1.2]
13
+ * ```
14
+ *
15
+ * @since 1.0.0
16
+ * @category Array
17
+ */
18
+ export default function differenceBy(array: unknown[], ...args: unknown[]): unknown[];
@@ -0,0 +1,17 @@
1
+ /**
2
+ * 从 array 头部跳过 n 个元素。
3
+ *
4
+ * @param array - 待处理的数组
5
+ * @param n - 跳过数量,默认 1
6
+ * @returns 剩余元素组成的新数组
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * zhiaiwanUtils.drop([1, 2, 3], 2);
11
+ * // => [3]
12
+ * ```
13
+ *
14
+ * @since 1.0.0
15
+ * @category Array
16
+ */
17
+ export default function drop(array: unknown[], n?: number): unknown[];
@@ -0,0 +1,18 @@
1
+ import forEach from './forEach';
2
+ /**
3
+ * `forEach` 的别名,遍历集合元素;iteratee 返回 `false` 时立即停止。
4
+ *
5
+ * @param collection - 待遍历的集合(数组、对象、字符串或类数组)
6
+ * @param iteratee - 每次迭代调用的函数,接收 `(value, index|key, collection)`
7
+ * @returns 原集合
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * zhiaiwanUtils.each([1, 2, 3], (n) => console.log(n));
12
+ * // => [1, 2, 3]
13
+ * ```
14
+ *
15
+ * @since 1.0.0
16
+ * @category Array
17
+ */
18
+ export default forEach;
@@ -0,0 +1,21 @@
1
+ import { type IterateeShorthand } from '../_internal/baseIteratee';
2
+ /**
3
+ * 检查 collection 中是否所有元素均满足 predicate。
4
+ *
5
+ * @param collection - 待检查的集合
6
+ * @param predicate - 每次迭代调用的断言函数或简写
7
+ * @returns 若全部通过返回 true;空集合返回 true
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * zhiaiwanUtils.every([true, 1, null, 'yes'], Boolean);
12
+ * // => false
13
+ *
14
+ * zhiaiwanUtils.every([], Boolean);
15
+ * // => true
16
+ * ```
17
+ *
18
+ * @since 1.0.0
19
+ * @category Array
20
+ */
21
+ export default function every(collection: unknown, predicate?: IterateeShorthand): boolean;
@@ -0,0 +1,18 @@
1
+ import type { IterateeShorthand } from '../_internal/baseIteratee';
2
+ /**
3
+ * 遍历 collection,返回 predicate 为真值的所有元素组成的新数组。
4
+ *
5
+ * @param collection - 待筛选的集合
6
+ * @param predicate - 每次迭代调用的断言函数或简写
7
+ * @returns 筛选后的新数组
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * zhiaiwanUtils.filter([1, 2, 3, 4], (n) => n % 2 === 0);
12
+ * // => [2, 4]
13
+ * ```
14
+ *
15
+ * @since 1.0.0
16
+ * @category Array
17
+ */
18
+ export default function filter(collection: unknown, predicate?: IterateeShorthand): unknown[];
@@ -0,0 +1,23 @@
1
+ /**
2
+ * 返回集合中第一个满足 `predicate` 的元素。
3
+ *
4
+ * @param collection - 待查找的集合(数组、对象、字符串或类数组)
5
+ * @param predicate - 匹配函数,接收 `(value, index|key, collection)`,默认匹配真值
6
+ * @param fromIndex - 类数组的起始下标
7
+ * @returns 匹配元素,未找到时返回 `undefined`
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * const users = [
12
+ * { user: 'barney', age: 36, active: true },
13
+ * { user: 'fred', age: 40, active: false },
14
+ * ];
15
+ *
16
+ * find(users, ({ age }) => age < 40);
17
+ * // => { user: 'barney', age: 36, active: true }
18
+ * ```
19
+ *
20
+ * @since 1.0.0
21
+ * @category Array
22
+ */
23
+ export default function find<C>(collection: C, predicate?: (value: unknown, indexOrKey: number | string, collection: C) => unknown, fromIndex?: number): unknown;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * 返回数组中第一个满足 `predicate` 的下标。
3
+ *
4
+ * @param array - 待查找的数组或类数组
5
+ * @param predicate - 匹配函数,接收 `(value, index, array)`,默认匹配真值
6
+ * @param fromIndex - 起始下标
7
+ * @returns 匹配下标,未找到时返回 `-1`
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * findIndex([1, 2, 3, 4], (n) => n % 2 === 0);
12
+ * // => 1
13
+ * ```
14
+ *
15
+ * @since 1.0.0
16
+ * @category Array
17
+ */
18
+ export default function findIndex<T>(array: T, predicate?: (value: unknown, index: number, array: T) => unknown, fromIndex?: number): number;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * 从右往左返回集合中最后一个满足 `predicate` 的元素。
3
+ *
4
+ * @param collection - 待查找的集合(数组、对象、字符串或类数组)
5
+ * @param predicate - 匹配函数,接收 `(value, index|key, collection)`,默认匹配真值
6
+ * @param fromIndex - 类数组的起始下标
7
+ * @returns 匹配元素,未找到时返回 `undefined`
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * findLast([1, 2, 3, 4], (n) => n % 2 === 1);
12
+ * // => 3
13
+ * ```
14
+ *
15
+ * @since 1.0.0
16
+ * @category Array
17
+ */
18
+ export default function findLast<C>(collection: C, predicate?: (value: unknown, indexOrKey: number | string, collection: C) => unknown, fromIndex?: number): unknown;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * 从右往左返回数组中最后一个满足 `predicate` 的下标。
3
+ *
4
+ * @param array - 待查找的数组或类数组
5
+ * @param predicate - 匹配函数,接收 `(value, index, array)`,默认匹配真值
6
+ * @param fromIndex - 起始下标
7
+ * @returns 匹配下标,未找到时返回 `-1`
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * findLastIndex([1, 2, 3, 4], (n) => n % 2 === 1);
12
+ * // => 2
13
+ * ```
14
+ *
15
+ * @since 1.0.0
16
+ * @category Array
17
+ */
18
+ export default function findLastIndex<T>(array: T, predicate?: (value: unknown, index: number, array: T) => unknown, fromIndex?: number): number;
@@ -0,0 +1,16 @@
1
+ /**
2
+ * 将 array 展平一层。
3
+ *
4
+ * @param array - 待展平的数组
5
+ * @returns 展平后的新数组
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * zhiaiwanUtils.flatten([1, [2, [3, [4]], 5]]);
10
+ * // => [1, 2, [3, [4]], 5]
11
+ * ```
12
+ *
13
+ * @since 1.0.0
14
+ * @category Array
15
+ */
16
+ export default function flatten(array: unknown): unknown[];
@@ -0,0 +1,16 @@
1
+ /**
2
+ * 递归展平 array 的所有嵌套层级。
3
+ *
4
+ * @param array - 待展平的数组
5
+ * @returns 完全展平后的新数组
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * zhiaiwanUtils.flattenDeep([1, [2, [3, [4]], 5]]);
10
+ * // => [1, 2, 3, 4, 5]
11
+ * ```
12
+ *
13
+ * @since 1.0.0
14
+ * @category Array
15
+ */
16
+ export default function flattenDeep(array: unknown): unknown[];
@@ -0,0 +1,23 @@
1
+ /**
2
+ * 遍历集合元素;iteratee 返回 `false` 时立即停止。
3
+ *
4
+ * @param collection - 待遍历的集合(数组、对象、字符串或类数组)
5
+ * @param iteratee - 每次迭代调用的函数,接收 `(value, index|key, collection)`
6
+ * @returns 原集合
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * forEach([1, 2, 3], (n) => {
11
+ * if (n === 2) return false;
12
+ * console.log(n);
13
+ * });
14
+ * // 输出 1
15
+ *
16
+ * forEach({ a: 1, b: 2 }, (value, key) => console.log(key, value));
17
+ * // => { a: 1, b: 2 }
18
+ * ```
19
+ *
20
+ * @since 1.0.0
21
+ * @category Array
22
+ */
23
+ export default function forEach<C>(collection: C, iteratee: (value: unknown, indexOrKey: number | string, collection: C) => unknown): C;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * 从右向左遍历集合元素;iteratee 返回 `false` 时立即停止。
3
+ *
4
+ * @param collection - 待遍历的集合(数组、对象、字符串或类数组)
5
+ * @param iteratee - 每次迭代调用的函数,接收 `(value, index|key, collection)`
6
+ * @returns 原集合
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * forEachRight([1, 2, 3], (n) => console.log(n));
11
+ * // 输出 3, 2, 1
12
+ *
13
+ * forEachRight({ a: 1, b: 2 }, (value, key) => console.log(key, value));
14
+ * // 输出 b 2, a 1
15
+ * ```
16
+ *
17
+ * @since 1.0.0
18
+ * @category Array
19
+ */
20
+ export default function forEachRight<C>(collection: C, iteratee: (value: unknown, indexOrKey: number | string, collection: C) => unknown): C;
@@ -0,0 +1,18 @@
1
+ import { type IterateeShorthand } from '../_internal/baseIteratee';
2
+ /**
3
+ * 根据 iteratee 返回值对 collection 分组,返回键为分组值、值为元素数组的对象。
4
+ *
5
+ * @param collection - 待分组的集合
6
+ * @param iteratee - 分组依据的函数或简写
7
+ * @returns 分组结果
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * zhiaiwanUtils.groupBy([6.1, 4.2, 6.3], Math.floor);
12
+ * // => { '4': [4.2], '6': [6.1, 6.3] }
13
+ * ```
14
+ *
15
+ * @since 1.0.0
16
+ * @category Array
17
+ */
18
+ export default function groupBy(collection: unknown, iteratee?: IterateeShorthand): Record<string, unknown[]>;
@@ -0,0 +1,16 @@
1
+ /**
2
+ * 获取 array 的第一个元素。
3
+ *
4
+ * @param array - 待查询的数组
5
+ * @returns 第一个元素
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * zhiaiwanUtils.head([1, 2, 3]);
10
+ * // => 1
11
+ * ```
12
+ *
13
+ * @since 1.0.0
14
+ * @category Array
15
+ */
16
+ export default function head(array: unknown[]): unknown;
@@ -0,0 +1,21 @@
1
+ /**
2
+ * 检查 collection 是否包含 value;数组与字符串支持 fromIndex。
3
+ *
4
+ * @param collection - 待检查的集合
5
+ * @param value - 要查找的值
6
+ * @param fromIndex - 数组或字符串的起始下标
7
+ * @returns 若包含返回 true,否则返回 false
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * zhiaiwanUtils.includes([1, 2, 3], 2);
12
+ * // => true
13
+ *
14
+ * zhiaiwanUtils.includes({ a: 1, b: 2 }, 2);
15
+ * // => true
16
+ * ```
17
+ *
18
+ * @since 1.0.0
19
+ * @category Array
20
+ */
21
+ export default function includes(collection: unknown, value: unknown, fromIndex?: number): boolean;
@@ -0,0 +1,43 @@
1
+ export { default as forEach } from './forEach';
2
+ export { default as forEachRight } from './forEachRight';
3
+ export { default as each } from './each';
4
+ export { default as find } from './find';
5
+ export { default as findLast } from './findLast';
6
+ export { default as findIndex } from './findIndex';
7
+ export { default as findLastIndex } from './findLastIndex';
8
+ export { default as filter } from './filter';
9
+ export { default as map } from './map';
10
+ export { default as union } from './union';
11
+ export { default as groupBy } from './groupBy';
12
+ export { default as orderBy } from './orderBy';
13
+ export { default as uniqBy } from './uniqBy';
14
+ export { default as concat } from './concat';
15
+ export { default as includes } from './includes';
16
+ export { default as intersection } from './intersection';
17
+ export { default as maxBy } from './maxBy';
18
+ export { default as minBy } from './minBy';
19
+ export { default as sortBy } from './sortBy';
20
+ export { default as some } from './some';
21
+ export { default as sum } from './sum';
22
+ export { default as sumBy } from './sumBy';
23
+ export { default as meanBy } from './meanBy';
24
+ export { default as partition } from './partition';
25
+ export { default as every } from './every';
26
+ export { default as reduce } from './reduce';
27
+ export { default as reduceRight } from './reduceRight';
28
+ export { default as compact } from './compact';
29
+ export { default as flatten } from './flatten';
30
+ export { default as flattenDeep } from './flattenDeep';
31
+ export { default as uniq } from './uniq';
32
+ export { default as keyBy } from './keyBy';
33
+ export { default as chunk } from './chunk';
34
+ export { default as difference } from './difference';
35
+ export { default as differenceBy } from './differenceBy';
36
+ export { default as without } from './without';
37
+ export { default as head } from './head';
38
+ export { default as last } from './last';
39
+ export { default as take } from './take';
40
+ export { default as drop } from './drop';
41
+ export { default as min } from './min';
42
+ export { default as max } from './max';
43
+ export { default as mean } from './mean';
@@ -0,0 +1,16 @@
1
+ /**
2
+ * 创建各数组按 SameValueZero 取交集后的新数组,保留首次出现顺序。
3
+ *
4
+ * @param arrays - 一个或多个数组
5
+ * @returns 交集数组
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * zhiaiwanUtils.intersection([2, 1], [2, 3]);
10
+ * // => [2]
11
+ * ```
12
+ *
13
+ * @since 1.0.0
14
+ * @category Array
15
+ */
16
+ export default function intersection(...arrays: unknown[][]): unknown[];
@@ -0,0 +1,24 @@
1
+ import { type IterateeShorthand } from '../_internal/baseIteratee';
2
+ /**
3
+ * 根据 iteratee 返回值将 collection 转为键值对象,同键保留最后一个元素。
4
+ *
5
+ * @param collection - 待转换的集合
6
+ * @param iteratee - 生成键名的函数或简写
7
+ * @returns 键值映射对象
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * zhiaiwanUtils.keyBy(
12
+ * [
13
+ * { dir: 'left', code: 97 },
14
+ * { dir: 'right', code: 100 },
15
+ * ],
16
+ * 'dir',
17
+ * );
18
+ * // => { left: { dir: 'left', code: 97 }, right: { dir: 'right', code: 100 } }
19
+ * ```
20
+ *
21
+ * @since 1.0.0
22
+ * @category Array
23
+ */
24
+ export default function keyBy(collection: unknown, iteratee?: IterateeShorthand): Record<string, unknown>;
@@ -0,0 +1,16 @@
1
+ /**
2
+ * 获取 array 的最后一个元素。
3
+ *
4
+ * @param array - 待查询的数组
5
+ * @returns 最后一个元素
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * zhiaiwanUtils.last([1, 2, 3]);
10
+ * // => 3
11
+ * ```
12
+ *
13
+ * @since 1.0.0
14
+ * @category Array
15
+ */
16
+ export default function last(array: unknown[]): unknown;
@@ -0,0 +1,18 @@
1
+ import type { IterateeShorthand } from '../_internal/baseIteratee';
2
+ /**
3
+ * 遍历 collection,对每个元素执行 iteratee 并返回结果组成的新数组。
4
+ *
5
+ * @param collection - 待映射的集合
6
+ * @param iteratee - 每次迭代调用的函数或简写
7
+ * @returns 映射后的新数组
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * zhiaiwanUtils.map([1, 2, 3], (n) => n * 2);
12
+ * // => [2, 4, 6]
13
+ * ```
14
+ *
15
+ * @since 1.0.0
16
+ * @category Array
17
+ */
18
+ export default function map(collection: unknown, iteratee?: IterateeShorthand): unknown[];
@@ -0,0 +1,16 @@
1
+ /**
2
+ * 计算 array 中的最大值。
3
+ *
4
+ * @param array - 待计算的数组
5
+ * @returns 最大值;空数组返回 undefined
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * zhiaiwanUtils.max([4, 2, 8, 6]);
10
+ * // => 8
11
+ * ```
12
+ *
13
+ * @since 1.0.0
14
+ * @category Array
15
+ */
16
+ export default function max(array: unknown[]): unknown;
@@ -0,0 +1,18 @@
1
+ import { type IterateeShorthand } from '../_internal/baseIteratee';
2
+ /**
3
+ * 返回 iteratee 返回值最大的元素。
4
+ *
5
+ * @param collection - 待查找的集合
6
+ * @param iteratee - 比较依据的函数或简写
7
+ * @returns 最大值对应的元素
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * zhiaiwanUtils.maxBy([{ n: 1 }, { n: 2 }], 'n');
12
+ * // => { n: 2 }
13
+ * ```
14
+ *
15
+ * @since 1.0.0
16
+ * @category Array
17
+ */
18
+ export default function maxBy(collection: unknown, iteratee?: IterateeShorthand): unknown;