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,16 @@
1
+ /**
2
+ * 反转 object 的键值;重复值时后者覆盖前者。
3
+ *
4
+ * @param object - 源对象
5
+ * @returns 键值反转后的新对象
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * zhiaiwanUtils.invert({ a: 1, b: 2, c: 1 });
10
+ * // => { '1': 'c', '2': 'b' }
11
+ * ```
12
+ *
13
+ * @since 1.0.0
14
+ * @category Object
15
+ */
16
+ export default function invert(object: object | null | undefined): Record<string, string>;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * 返回 object 的自有可枚举属性名数组;数组与类数组返回下标字符串。
3
+ *
4
+ * @param object - 要查询的对象或集合
5
+ * @returns 属性名数组
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * zhiaiwanUtils.keys({ a: 1, b: 2 });
10
+ * // => ['a', 'b']
11
+ *
12
+ * zhiaiwanUtils.keys([1, 2, 3]);
13
+ * // => ['0', '1', '2']
14
+ * ```
15
+ *
16
+ * @since 1.0.0
17
+ * @category Object
18
+ */
19
+ export default function keys(object: unknown): string[];
@@ -0,0 +1,18 @@
1
+ import { type IterateeShorthand } from '../_internal/baseIteratee';
2
+ /**
3
+ * 遍历 object 自有属性并生成新键名。
4
+ *
5
+ * @param object - 源对象
6
+ * @param iteratee - 生成新键名的函数或简写
7
+ * @returns 键名映射后的新对象
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * zhiaiwanUtils.mapKeys({ a: 1, b: 2 }, (value, key) => key + value);
12
+ * // => { a1: 1, b2: 2 }
13
+ * ```
14
+ *
15
+ * @since 1.0.0
16
+ * @category Object
17
+ */
18
+ export default function mapKeys<T extends object>(object: T, iteratee?: IterateeShorthand): Record<string, unknown>;
@@ -0,0 +1,18 @@
1
+ import { type IterateeShorthand } from '../_internal/baseIteratee';
2
+ /**
3
+ * 遍历 object 自有属性并生成新值。
4
+ *
5
+ * @param object - 源对象
6
+ * @param iteratee - 生成新值的函数或简写
7
+ * @returns 值映射后的新对象
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * zhiaiwanUtils.mapValues({ a: 1, b: 2 }, (n) => (n as number) * 3);
12
+ * // => { a: 3, b: 6 }
13
+ * ```
14
+ *
15
+ * @since 1.0.0
16
+ * @category Object
17
+ */
18
+ export default function mapValues<T extends object>(object: T, iteratee?: IterateeShorthand): Record<string, unknown>;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * 递归合并 sources 到 object。普通对象深合并,数组合并按索引覆盖。
3
+ * 若 object 为 null 或 undefined,会创建并返回新对象。
4
+ *
5
+ * @param object - 目标对象
6
+ * @param sources - 一个或多个源对象
7
+ * @returns 合并后的 object
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * const object = { a: [{ b: 2 }, { d: 4 }] };
12
+ * const other = { a: [{ c: 3 }, { e: 5 }] };
13
+ * zhiaiwanUtils.merge(object, other);
14
+ * // => { a: [{ b: 2, c: 3 }, { d: 4, e: 5 }] }
15
+ * ```
16
+ *
17
+ * @since 1.0.0
18
+ * @category Object
19
+ */
20
+ export default function merge<T>(object: T, ...sources: unknown[]): T;
@@ -0,0 +1,27 @@
1
+ import type { MergeCustomizer } from '../_internal/baseMerge';
2
+ /**
3
+ * 与 merge 相同,但允许通过 customizer 定制合并结果。
4
+ * customizer 返回 undefined 时回退到默认合并逻辑。
5
+ *
6
+ * @param object - 目标对象
7
+ * @param sources - 一个或多个源对象
8
+ * @param customizer - 自定义合并函数
9
+ * @returns 合并后的 object
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * const object = { users: [{ name: 'a' }] };
14
+ * const other = { users: [{ name: 'b' }] };
15
+ * zhiaiwanUtils.mergeWith(object, other, (obj, src) => {
16
+ * if (Array.isArray(obj)) {
17
+ * return obj.concat(src);
18
+ * }
19
+ * });
20
+ * // => { users: [{ name: 'a' }, { name: 'b' }] }
21
+ * ```
22
+ *
23
+ * @since 1.0.0
24
+ * @category Object
25
+ */
26
+ export default function mergeWith<T>(object: T, ...args: unknown[]): T;
27
+ export type { MergeCustomizer };
@@ -0,0 +1,18 @@
1
+ /**
2
+ * 从 object 中排除指定路径上的自有属性,返回深拷贝后的新对象。
3
+ *
4
+ * @param object - 源对象
5
+ * @param paths - 要排除的属性路径,支持 `'a.b'` 字符串、键数组或混合传入
6
+ * @returns 排除指定属性后的新对象
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * const obj = { a: { b: 1, c: 2 }, d: 3 };
11
+ * zhiaiwanUtils.omit(obj, 'a.b');
12
+ * // => { a: { c: 2 }, d: 3 }
13
+ * ```
14
+ *
15
+ * @since 1.0.0
16
+ * @category Object
17
+ */
18
+ export default function omit<T extends object>(object: T, ...paths: Array<PropertyKey | ReadonlyArray<PropertyKey>>): Partial<T>;
@@ -0,0 +1,18 @@
1
+ import { type IterateeShorthand } from '../_internal/baseIteratee';
2
+ /**
3
+ * 返回 object 中 predicate 不为真值的属性组成的新对象。
4
+ *
5
+ * @param object - 源对象
6
+ * @param predicate - 每次属性检查调用的函数或简写
7
+ * @returns 排除后的新对象
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * zhiaiwanUtils.omitBy({ a: 1, b: '2', c: 3 }, (value) => typeof value === 'number');
12
+ * // => { b: '2' }
13
+ * ```
14
+ *
15
+ * @since 1.0.0
16
+ * @category Object
17
+ */
18
+ export default function omitBy<T extends object>(object: T, predicate?: IterateeShorthand): Partial<T>;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * 从 object 中选取指定路径上的自有属性,组成新对象。
3
+ *
4
+ * @param object - 源对象
5
+ * @param paths - 要选取的属性路径,支持 `'a.b'` 字符串、键数组或混合传入
6
+ * @returns 由选取属性组成的新对象
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * const obj = { a: { b: 1 }, c: 3 };
11
+ * zhiaiwanUtils.pick(obj, 'a.b', 'c');
12
+ * // => { a: { b: 1 }, c: 3 }
13
+ * ```
14
+ *
15
+ * @since 1.0.0
16
+ * @category Object
17
+ */
18
+ export default function pick<T extends object>(object: T, ...paths: Array<PropertyKey | ReadonlyArray<PropertyKey>>): Partial<T>;
@@ -0,0 +1,18 @@
1
+ import { type IterateeShorthand } from '../_internal/baseIteratee';
2
+ /**
3
+ * 返回 object 中 predicate 为真值的属性组成的新对象。
4
+ *
5
+ * @param object - 源对象
6
+ * @param predicate - 每次属性检查调用的函数或简写
7
+ * @returns 筛选后的新对象
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * zhiaiwanUtils.pickBy({ a: 1, b: '2', c: 3 }, (value) => typeof value === 'number');
12
+ * // => { a: 1, c: 3 }
13
+ * ```
14
+ *
15
+ * @since 1.0.0
16
+ * @category Object
17
+ */
18
+ export default function pickBy<T extends object>(object: T, predicate?: IterateeShorthand): Partial<T>;
@@ -0,0 +1,23 @@
1
+ /**
2
+ * 设置 object 上 path 路径对应的值。若中间路径不存在会自动创建对象或数组
3
+ * (下一级为数字下标时创建数组);当 object 为 null 或 undefined 时会创建并返回新对象。
4
+ *
5
+ * @param object - 要修改的对象
6
+ * @param path - 属性路径,支持 `'a.b[0].c'` 字符串或键数组
7
+ * @param value - 要设置的值
8
+ * @returns 修改后的 object(可能与入参为同一引用)
9
+ *
10
+ * @example
11
+ * ```ts
12
+ * const obj = { a: [{ b: 2 }] };
13
+ * set(obj, 'a[0].b', 3);
14
+ * // => { a: [{ b: 3 }] }
15
+ *
16
+ * set({}, 'a.b.c', 4);
17
+ * // => { a: { b: { c: 4 } } }
18
+ * ```
19
+ *
20
+ * @since 1.0.0
21
+ * @category Object
22
+ */
23
+ export default function set<T extends object>(object: T, path: string | ReadonlyArray<string | number>, value: unknown): T;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * 删除 object 上 path 路径对应的属性。
3
+ *
4
+ * @param object - 要修改的对象
5
+ * @param path - 属性路径,支持 `'a.b[0].c'` 字符串或键数组
6
+ * @returns 删除成功返回 true,路径不存在或无法到达时返回 false
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * const obj = { a: [{ b: 2 }, { b: 3 }] };
11
+ * zhiaiwanUtils.unset(obj, 'a[0].b');
12
+ * // => true
13
+ * // obj => { a: [{}, { b: 3 }] }
14
+ * ```
15
+ *
16
+ * @since 1.0.0
17
+ * @category Object
18
+ */
19
+ export default function unset(object: unknown, path: string | ReadonlyArray<string | number>): boolean;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * 按 path 更新 object 上的值,updater 接收当前值并返回新值。
3
+ *
4
+ * @param object - 待修改对象
5
+ * @param path - 属性路径
6
+ * @param updater - 更新函数
7
+ * @returns 修改后的 object
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * const object = { a: [{ b: 1 }] };
12
+ * zhiaiwanUtils.update(object, 'a[0].b', (n) => (n as number) * 2);
13
+ * // object.a[0].b => 2
14
+ * ```
15
+ *
16
+ * @since 1.0.0
17
+ * @category Object
18
+ */
19
+ export default function update<T extends object>(object: T | null | undefined, path: string | ReadonlyArray<string | number>, updater: (value: unknown) => unknown): T | null | undefined;
@@ -0,0 +1,21 @@
1
+ export type UpdateCustomizer = (objValue: unknown, key: string, object: object) => unknown;
2
+ /**
3
+ * 类似 update,但允许 customizer 控制中间路径节点的创建。
4
+ *
5
+ * @param object - 待修改对象
6
+ * @param path - 属性路径
7
+ * @param updater - 更新函数
8
+ * @param customizer - 路径节点创建函数
9
+ * @returns 修改后的 object
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * const object = {};
14
+ * zhiaiwanUtils.updateWith(object, '[0][1]', () => 'a', Object);
15
+ * // => { '0': { '1': 'a' } }
16
+ * ```
17
+ *
18
+ * @since 1.0.0
19
+ * @category Object
20
+ */
21
+ export default function updateWith<T extends object>(object: T | null | undefined, path: string | ReadonlyArray<string | number>, updater: (value: unknown) => unknown, customizer?: UpdateCustomizer): T | null | undefined;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * 返回 object 的自有可枚举属性值数组。
3
+ *
4
+ * @param object - 要查询的对象或集合
5
+ * @returns 属性值数组
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * zhiaiwanUtils.values({ a: 1, b: 2 });
10
+ * // => [1, 2]
11
+ *
12
+ * zhiaiwanUtils.values([1, 2, 3]);
13
+ * // => [1, 2, 3]
14
+ * ```
15
+ *
16
+ * @since 1.0.0
17
+ * @category Object
18
+ */
19
+ export default function values(object: unknown): unknown[];
@@ -0,0 +1,19 @@
1
+ /**
2
+ * 将字符串转换为 camelCase。
3
+ *
4
+ * @param string - 待转换的字符串
5
+ * @returns camelCase 字符串
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * zhiaiwanUtils.camelCase('Foo Bar');
10
+ * // => 'fooBar'
11
+ *
12
+ * zhiaiwanUtils.camelCase('__FOO_BAR__');
13
+ * // => 'fooBar'
14
+ * ```
15
+ *
16
+ * @since 1.0.0
17
+ * @category String
18
+ */
19
+ export default function camelCase(string?: unknown): string;
@@ -0,0 +1,16 @@
1
+ /**
2
+ * 首字母大写,其余小写。
3
+ *
4
+ * @param string - 待转换字符串
5
+ * @returns 首字母大写后的字符串
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * zhiaiwanUtils.capitalize('FRED');
10
+ * // => 'Fred'
11
+ * ```
12
+ *
13
+ * @since 1.0.0
14
+ * @category String
15
+ */
16
+ export default function capitalize(string?: unknown): string;
@@ -0,0 +1,21 @@
1
+ /**
2
+ * 检查字符串是否以 target 结尾。
3
+ *
4
+ * @param value - 待检查的字符串
5
+ * @param target - 要匹配的后缀
6
+ * @param position - 检索结束位置,默认为字符串长度
7
+ * @returns 若匹配返回 true,否则返回 false
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * zhiaiwanUtils.endsWith('abc', 'c');
12
+ * // => true
13
+ *
14
+ * zhiaiwanUtils.endsWith('abc', 'b');
15
+ * // => false
16
+ * ```
17
+ *
18
+ * @since 1.0.0
19
+ * @category String
20
+ */
21
+ export default function endsWith(value: unknown, target: unknown, position?: number): boolean;
@@ -0,0 +1,16 @@
1
+ /**
2
+ * 将字符串中的 `&`、`<`、`>`、`"`、`'` 转为对应 HTML 实体。
3
+ *
4
+ * @param value - 待转义的值
5
+ * @returns 转义后的字符串
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * zhiaiwanUtils.escape('fred, barney, & pebbles');
10
+ * // => 'fred, barney, &amp; pebbles'
11
+ * ```
12
+ *
13
+ * @since 1.0.0
14
+ * @category String
15
+ */
16
+ export default function escape(value: unknown): string;
@@ -0,0 +1,17 @@
1
+ export { default as trim } from './trim';
2
+ export { default as trimStart } from './trimStart';
3
+ export { default as trimEnd } from './trimEnd';
4
+ export { default as startsWith } from './startsWith';
5
+ export { default as endsWith } from './endsWith';
6
+ export { default as pad } from './pad';
7
+ export { default as padStart } from './padStart';
8
+ export { default as padEnd } from './padEnd';
9
+ export { default as escape } from './escape';
10
+ export { default as unescape } from './unescape';
11
+ export { default as repeat } from './repeat';
12
+ export { default as camelCase } from './camelCase';
13
+ export { default as kebabCase } from './kebabCase';
14
+ export { default as snakeCase } from './snakeCase';
15
+ export { default as capitalize } from './capitalize';
16
+ export { default as lowerCase } from './lowerCase';
17
+ export { default as upperFirst } from './upperFirst';
@@ -0,0 +1,20 @@
1
+ /**
2
+ * 将字符串转换为 kebab-case。
3
+ *
4
+ * @param string - 待转换的字符串
5
+ * @returns kebab-case 字符串
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * zhiaiwanUtils.kebabCase('Foo Bar');
10
+ * // => 'foo-bar'
11
+ *
12
+ * zhiaiwanUtils.kebabCase('fooBar');
13
+ * // => 'foo-bar'
14
+ * ```
15
+ *
16
+ * @since 1.0.0
17
+ * @category String
18
+ */
19
+ declare const _default: (string?: unknown) => string;
20
+ export default _default;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * 将字符串按单词拆分为空格分隔的小写形式。
3
+ *
4
+ * @param string - 待转换字符串
5
+ * @returns 小写空格分隔字符串
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * zhiaiwanUtils.lowerCase('--Foo-Bar--');
10
+ * // => 'foo bar'
11
+ * ```
12
+ *
13
+ * @since 1.0.0
14
+ * @category String
15
+ */
16
+ declare const _default: (string?: unknown) => string;
17
+ export default _default;
@@ -0,0 +1,21 @@
1
+ /**
2
+ * 将字符串填充到指定长度,默认用空格在两端补齐,多余填充优先加在右侧。
3
+ *
4
+ * @param value - 待处理的值
5
+ * @param length - 目标长度
6
+ * @param chars - 填充字符,默认为空格
7
+ * @returns 填充后的字符串
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * zhiaiwanUtils.pad('abc', 8);
12
+ * // => ' abc '
13
+ *
14
+ * zhiaiwanUtils.pad('abc', 8, '_-');
15
+ * // => '_-abc_-_'
16
+ * ```
17
+ *
18
+ * @since 1.0.0
19
+ * @category String
20
+ */
21
+ export default function pad(value: unknown, length: number, chars?: string): string;
@@ -0,0 +1,21 @@
1
+ /**
2
+ * 在字符串末尾填充到指定长度,默认使用空格。
3
+ *
4
+ * @param value - 待处理的值
5
+ * @param length - 目标长度
6
+ * @param chars - 填充字符,默认为空格
7
+ * @returns 填充后的字符串
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * zhiaiwanUtils.padEnd('abc', 6);
12
+ * // => 'abc '
13
+ *
14
+ * zhiaiwanUtils.padEnd('abc', 6, '_-');
15
+ * // => 'abc_-_'
16
+ * ```
17
+ *
18
+ * @since 1.0.0
19
+ * @category String
20
+ */
21
+ export default function padEnd(value: unknown, length: number, chars?: string): string;
@@ -0,0 +1,21 @@
1
+ /**
2
+ * 在字符串开头填充到指定长度,默认使用空格。
3
+ *
4
+ * @param value - 待处理的值
5
+ * @param length - 目标长度
6
+ * @param chars - 填充字符,默认为空格
7
+ * @returns 填充后的字符串
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * zhiaiwanUtils.padStart('abc', 6);
12
+ * // => ' abc'
13
+ *
14
+ * zhiaiwanUtils.padStart('abc', 6, '_-');
15
+ * // => '_-_abc'
16
+ * ```
17
+ *
18
+ * @since 1.0.0
19
+ * @category String
20
+ */
21
+ export default function padStart(value: unknown, length: number, chars?: string): string;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * 将字符串重复 n 次;n 小于 1 时返回空字符串。
3
+ *
4
+ * @param value - 待重复的值
5
+ * @param n - 重复次数
6
+ * @returns 重复后的字符串
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * zhiaiwanUtils.repeat('*', 3);
11
+ * // => '***'
12
+ *
13
+ * zhiaiwanUtils.repeat('abc', 2);
14
+ * // => 'abcabc'
15
+ * ```
16
+ *
17
+ * @since 1.0.0
18
+ * @category String
19
+ */
20
+ export default function repeat(value: unknown, n: number): string;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * 将字符串转换为 snake_case。
3
+ *
4
+ * @param string - 待转换的字符串
5
+ * @returns snake_case 字符串
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * zhiaiwanUtils.snakeCase('Foo Bar');
10
+ * // => 'foo_bar'
11
+ *
12
+ * zhiaiwanUtils.snakeCase('fooBar');
13
+ * // => 'foo_bar'
14
+ * ```
15
+ *
16
+ * @since 1.0.0
17
+ * @category String
18
+ */
19
+ declare const _default: (string?: unknown) => string;
20
+ export default _default;
@@ -0,0 +1,21 @@
1
+ /**
2
+ * 检查字符串是否以 target 开头。
3
+ *
4
+ * @param value - 待检查的字符串
5
+ * @param target - 要匹配的前缀
6
+ * @param position - 开始匹配的位置,默认为 0
7
+ * @returns 若匹配返回 true,否则返回 false
8
+ *
9
+ * @example
10
+ * ```ts
11
+ * zhiaiwanUtils.startsWith('abc', 'a');
12
+ * // => true
13
+ *
14
+ * zhiaiwanUtils.startsWith('abc', 'b');
15
+ * // => false
16
+ * ```
17
+ *
18
+ * @since 1.0.0
19
+ * @category String
20
+ */
21
+ export default function startsWith(value: unknown, target: unknown, position?: number): boolean;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * 移除字符串两端的空白字符,或移除两端在 chars 中出现的字符。
3
+ *
4
+ * @param value - 待处理的值
5
+ * @param chars - 要移除的字符集合;省略时移除空白字符
6
+ * @returns 裁剪后的字符串
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * zhiaiwanUtils.trim(' abc ');
11
+ * // => 'abc'
12
+ *
13
+ * zhiaiwanUtils.trim('-_-abc-_-', '_-');
14
+ * // => 'abc'
15
+ * ```
16
+ *
17
+ * @since 1.0.0
18
+ * @category String
19
+ */
20
+ export default function trim(value: unknown, chars?: string): string;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * 移除字符串末尾的空白字符,或移除末尾在 chars 中出现的字符。
3
+ *
4
+ * @param value - 待处理的值
5
+ * @param chars - 要移除的字符集合;省略时移除空白字符
6
+ * @returns 裁剪后的字符串
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * zhiaiwanUtils.trimEnd(' abc ');
11
+ * // => ' abc'
12
+ *
13
+ * zhiaiwanUtils.trimEnd('-_-abc-_-', '_-');
14
+ * // => '-_-abc'
15
+ * ```
16
+ *
17
+ * @since 1.0.0
18
+ * @category String
19
+ */
20
+ export default function trimEnd(value: unknown, chars?: string): string;
@@ -0,0 +1,20 @@
1
+ /**
2
+ * 移除字符串开头的空白字符,或移除开头在 chars 中出现的字符。
3
+ *
4
+ * @param value - 待处理的值
5
+ * @param chars - 要移除的字符集合;省略时移除空白字符
6
+ * @returns 裁剪后的字符串
7
+ *
8
+ * @example
9
+ * ```ts
10
+ * zhiaiwanUtils.trimStart(' abc ');
11
+ * // => 'abc '
12
+ *
13
+ * zhiaiwanUtils.trimStart('-_-abc-_-', '_-');
14
+ * // => 'abc-_-'
15
+ * ```
16
+ *
17
+ * @since 1.0.0
18
+ * @category String
19
+ */
20
+ export default function trimStart(value: unknown, chars?: string): string;
@@ -0,0 +1,16 @@
1
+ /**
2
+ * 将 HTML 实体还原为对应字符。
3
+ *
4
+ * @param value - 待反转义的值
5
+ * @returns 反转义后的字符串
6
+ *
7
+ * @example
8
+ * ```ts
9
+ * zhiaiwanUtils.unescape('fred, barney, &amp; pebbles');
10
+ * // => 'fred, barney, & pebbles'
11
+ * ```
12
+ *
13
+ * @since 1.0.0
14
+ * @category String
15
+ */
16
+ export default function unescape(value: unknown): string;