@odinlin/utils 0.0.2 → 1.0.0

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 (376) hide show
  1. package/README.md +16 -20
  2. package/dist/browser/_virtual/rolldown_runtime.cjs +29 -0
  3. package/dist/browser/array/arrayCast.cjs +29 -0
  4. package/dist/browser/array/arrayCast.d.ts +27 -0
  5. package/dist/browser/array/arrayCast.d.ts.map +1 -0
  6. package/dist/browser/array/arrayCast.js +30 -0
  7. package/dist/browser/array/arrayCast.js.map +1 -0
  8. package/dist/browser/array/index.cjs +3 -0
  9. package/dist/browser/array/index.d.ts +2 -0
  10. package/dist/browser/array/index.js +3 -0
  11. package/dist/browser/browser.cjs +196 -0
  12. package/dist/browser/browser.d.ts +37 -0
  13. package/dist/browser/browser.js +30 -0
  14. package/dist/browser/constants/index.cjs +19 -0
  15. package/dist/browser/constants/index.d.ts +16 -0
  16. package/dist/browser/constants/index.d.ts.map +1 -0
  17. package/dist/browser/constants/index.js +17 -0
  18. package/dist/browser/constants/index.js.map +1 -0
  19. package/dist/browser/date/index.cjs +8 -0
  20. package/dist/browser/date/index.d.ts +3 -0
  21. package/dist/browser/date/index.js +4 -0
  22. package/dist/browser/date/prettyMs.cjs +9 -0
  23. package/dist/browser/date/prettyMs.d.ts +8 -0
  24. package/dist/browser/date/prettyMs.d.ts.map +1 -0
  25. package/dist/browser/date/prettyMs.js +8 -0
  26. package/dist/browser/date/prettyMs.js.map +1 -0
  27. package/dist/browser/date/timeAgo.cjs +14 -0
  28. package/dist/browser/date/timeAgo.d.ts +15 -0
  29. package/dist/browser/date/timeAgo.d.ts.map +1 -0
  30. package/dist/browser/date/timeAgo.js +11 -0
  31. package/dist/browser/date/timeAgo.js.map +1 -0
  32. package/dist/browser/file/browser.cjs +25 -0
  33. package/dist/browser/file/browser.d.ts +7 -0
  34. package/dist/browser/file/browser.js +7 -0
  35. package/dist/browser/file/fileBuffer.browser.cjs +115 -0
  36. package/dist/browser/file/fileBuffer.browser.d.ts +88 -0
  37. package/dist/browser/file/fileBuffer.browser.d.ts.map +1 -0
  38. package/dist/browser/file/fileBuffer.browser.js +115 -0
  39. package/dist/browser/file/fileBuffer.browser.js.map +1 -0
  40. package/dist/browser/file/fileBytes.cjs +9 -0
  41. package/dist/browser/file/fileBytes.d.ts +8 -0
  42. package/dist/browser/file/fileBytes.d.ts.map +1 -0
  43. package/dist/browser/file/fileBytes.js +8 -0
  44. package/dist/browser/file/fileBytes.js.map +1 -0
  45. package/dist/browser/file/fileType.browser.cjs +22 -0
  46. package/dist/browser/file/fileType.browser.d.ts +19 -0
  47. package/dist/browser/file/fileType.browser.d.ts.map +1 -0
  48. package/dist/browser/file/fileType.browser.js +15 -0
  49. package/dist/browser/file/fileType.browser.js.map +1 -0
  50. package/dist/browser/file/fileXml.browser.cjs +8 -0
  51. package/dist/browser/file/fileXml.browser.d.ts +12 -0
  52. package/dist/browser/file/fileXml.browser.d.ts.map +1 -0
  53. package/dist/browser/file/fileXml.browser.js +7 -0
  54. package/dist/browser/file/fileXml.browser.js.map +1 -0
  55. package/dist/browser/file/interface.d.ts +26 -0
  56. package/dist/browser/file/interface.d.ts.map +1 -0
  57. package/dist/browser/function/index.cjs +10 -0
  58. package/dist/browser/function/index.d.ts +8 -0
  59. package/dist/browser/function/index.d.ts.map +1 -0
  60. package/dist/browser/function/index.js +9 -0
  61. package/dist/browser/function/index.js.map +1 -0
  62. package/dist/browser/is/index.cjs +42 -0
  63. package/dist/browser/is/index.d.ts +7 -0
  64. package/dist/browser/is/index.js +8 -0
  65. package/dist/browser/is/isJSON.cjs +44 -0
  66. package/dist/browser/is/isJSON.d.ts +30 -0
  67. package/dist/browser/is/isJSON.d.ts.map +1 -0
  68. package/dist/browser/is/isJSON.js +41 -0
  69. package/dist/browser/is/isJSON.js.map +1 -0
  70. package/dist/browser/is/isPlatform.cjs +20 -0
  71. package/dist/browser/is/isPlatform.d.ts +16 -0
  72. package/dist/browser/is/isPlatform.d.ts.map +1 -0
  73. package/dist/browser/is/isPlatform.js +19 -0
  74. package/dist/browser/is/isPlatform.js.map +1 -0
  75. package/dist/browser/is/isPrimitive.cjs +91 -0
  76. package/dist/browser/is/isPrimitive.d.ts +79 -0
  77. package/dist/browser/is/isPrimitive.d.ts.map +1 -0
  78. package/dist/browser/is/isPrimitive.js +79 -0
  79. package/dist/browser/is/isPrimitive.js.map +1 -0
  80. package/dist/browser/is/isPrimitiveWithout.cjs +86 -0
  81. package/dist/browser/is/isPrimitiveWithout.d.ts +72 -0
  82. package/dist/browser/is/isPrimitiveWithout.d.ts.map +1 -0
  83. package/dist/browser/is/isPrimitiveWithout.js +74 -0
  84. package/dist/browser/is/isPrimitiveWithout.js.map +1 -0
  85. package/dist/browser/is/isTagOf.cjs +21 -0
  86. package/dist/browser/is/isTagOf.d.ts +12 -0
  87. package/dist/browser/is/isTagOf.d.ts.map +1 -0
  88. package/dist/browser/is/isTagOf.js +21 -0
  89. package/dist/browser/is/isTagOf.js.map +1 -0
  90. package/dist/browser/is/isTypeOf.cjs +29 -0
  91. package/dist/browser/is/isTypeOf.d.ts +16 -0
  92. package/dist/browser/is/isTypeOf.d.ts.map +1 -0
  93. package/dist/browser/is/isTypeOf.js +28 -0
  94. package/dist/browser/is/isTypeOf.js.map +1 -0
  95. package/dist/browser/object/index.cjs +3 -0
  96. package/dist/browser/object/index.d.ts +2 -0
  97. package/dist/browser/object/index.js +3 -0
  98. package/dist/browser/object/objectClone.cjs +22 -0
  99. package/dist/browser/object/objectClone.d.ts +8 -0
  100. package/dist/browser/object/objectClone.d.ts.map +1 -0
  101. package/dist/browser/object/objectClone.js +22 -0
  102. package/dist/browser/object/objectClone.js.map +1 -0
  103. package/dist/browser/promise/awaitTo.cjs +8 -0
  104. package/dist/browser/promise/awaitTo.d.ts +7 -0
  105. package/dist/browser/promise/awaitTo.d.ts.map +1 -0
  106. package/dist/browser/promise/awaitTo.js +8 -0
  107. package/dist/browser/promise/awaitTo.js.map +1 -0
  108. package/dist/browser/promise/index.cjs +6 -0
  109. package/dist/browser/promise/index.d.ts +3 -0
  110. package/dist/browser/promise/index.js +4 -0
  111. package/dist/browser/promise/pLimit.cjs +11 -0
  112. package/dist/browser/promise/pLimit.d.ts +10 -0
  113. package/dist/browser/promise/pLimit.d.ts.map +1 -0
  114. package/dist/browser/promise/pLimit.js +9 -0
  115. package/dist/browser/promise/pLimit.js.map +1 -0
  116. package/dist/browser/regexp/OTHERS.cjs +16 -0
  117. package/dist/browser/regexp/OTHERS.d.ts +14 -0
  118. package/dist/browser/regexp/OTHERS.d.ts.map +1 -0
  119. package/dist/browser/regexp/OTHERS.js +15 -0
  120. package/dist/browser/regexp/OTHERS.js.map +1 -0
  121. package/dist/browser/regexp/RULES.cjs +698 -0
  122. package/dist/browser/regexp/RULES.d.ts +434 -0
  123. package/dist/browser/regexp/RULES.d.ts.map +1 -0
  124. package/dist/browser/regexp/RULES.js +615 -0
  125. package/dist/browser/regexp/RULES.js.map +1 -0
  126. package/dist/browser/regexp/index.cjs +89 -0
  127. package/dist/browser/regexp/index.d.ts +13 -0
  128. package/dist/browser/regexp/index.d.ts.map +1 -0
  129. package/dist/browser/regexp/index.js +4 -0
  130. package/dist/browser/request/browser.cjs +8 -0
  131. package/dist/browser/request/browser.d.ts +4 -0
  132. package/dist/browser/request/browser.js +4 -0
  133. package/dist/browser/request/instance.cjs +135 -0
  134. package/dist/browser/request/instance.d.ts +45 -0
  135. package/dist/browser/request/instance.d.ts.map +1 -0
  136. package/dist/browser/request/instance.js +134 -0
  137. package/dist/browser/request/instance.js.map +1 -0
  138. package/dist/browser/request/interceptors.browser.cjs +66 -0
  139. package/dist/browser/request/interceptors.browser.d.ts +25 -0
  140. package/dist/browser/request/interceptors.browser.d.ts.map +1 -0
  141. package/dist/browser/request/interceptors.browser.js +63 -0
  142. package/dist/browser/request/interceptors.browser.js.map +1 -0
  143. package/dist/browser/request/interface.d.ts +54 -0
  144. package/dist/browser/request/interface.d.ts.map +1 -0
  145. package/dist/browser/string/className.cjs +13 -0
  146. package/dist/browser/string/className.d.ts +11 -0
  147. package/dist/browser/string/className.d.ts.map +1 -0
  148. package/dist/browser/string/className.js +10 -0
  149. package/dist/browser/string/className.js.map +1 -0
  150. package/dist/browser/string/index.cjs +7 -0
  151. package/dist/browser/string/index.d.ts +3 -0
  152. package/dist/browser/string/index.js +4 -0
  153. package/dist/browser/string/proto.cjs +37 -0
  154. package/dist/browser/string/proto.d.ts +19 -0
  155. package/dist/browser/string/proto.d.ts.map +1 -0
  156. package/dist/browser/string/proto.js +36 -0
  157. package/dist/browser/string/proto.js.map +1 -0
  158. package/dist/browser/tree/index.cjs +7 -0
  159. package/dist/browser/tree/index.d.ts +5 -0
  160. package/dist/browser/tree/index.js +5 -0
  161. package/dist/browser/tree/interface.d.ts +40 -0
  162. package/dist/browser/tree/interface.d.ts.map +1 -0
  163. package/dist/browser/tree/treeFilter.cjs +58 -0
  164. package/dist/browser/tree/treeFilter.d.ts +14 -0
  165. package/dist/browser/tree/treeFilter.d.ts.map +1 -0
  166. package/dist/browser/tree/treeFilter.js +59 -0
  167. package/dist/browser/tree/treeFilter.js.map +1 -0
  168. package/dist/browser/tree/treeFlatten.cjs +23 -0
  169. package/dist/browser/tree/treeFlatten.d.ts +15 -0
  170. package/dist/browser/tree/treeFlatten.d.ts.map +1 -0
  171. package/dist/browser/tree/treeFlatten.js +24 -0
  172. package/dist/browser/tree/treeFlatten.js.map +1 -0
  173. package/dist/browser/tree/treeGenerate.cjs +37 -0
  174. package/dist/browser/tree/treeGenerate.d.ts +16 -0
  175. package/dist/browser/tree/treeGenerate.d.ts.map +1 -0
  176. package/dist/browser/tree/treeGenerate.js +37 -0
  177. package/dist/browser/tree/treeGenerate.js.map +1 -0
  178. package/dist/noExternal/browser.esm.html +94 -0
  179. package/dist/noExternal/browser.esm.js +10734 -0
  180. package/dist/noExternal/browser.esm.min.js +16 -0
  181. package/dist/noExternal/browser.esm.min.js.map +1 -0
  182. package/dist/noExternal/browser.umd.html +28 -0
  183. package/dist/noExternal/browser.umd.js +10905 -0
  184. package/dist/noExternal/browser.umd.min.js +16 -0
  185. package/dist/noExternal/browser.umd.min.js.map +1 -0
  186. package/dist/noExternal/node.cjs.js +18282 -0
  187. package/dist/noExternal/node.cjs.min.js +0 -0
  188. package/dist/noExternal/node.cjs.min.js.map +1 -0
  189. package/dist/noExternal/node.esm.js +21727 -0
  190. package/dist/noExternal/node.esm.min.js +36 -0
  191. package/dist/noExternal/node.esm.min.js.map +1 -0
  192. package/dist/node/_virtual/rolldown_runtime.cjs +29 -0
  193. package/dist/node/array/arrayCast.cjs +29 -0
  194. package/dist/node/array/arrayCast.d.ts +27 -0
  195. package/dist/node/array/arrayCast.d.ts.map +1 -0
  196. package/dist/node/array/arrayCast.js +30 -0
  197. package/dist/node/array/arrayCast.js.map +1 -0
  198. package/dist/node/array/index.cjs +3 -0
  199. package/dist/node/array/index.d.ts +2 -0
  200. package/dist/node/array/index.js +3 -0
  201. package/dist/node/constants/index.cjs +19 -0
  202. package/dist/node/constants/index.d.ts +16 -0
  203. package/dist/node/constants/index.d.ts.map +1 -0
  204. package/dist/node/constants/index.js +17 -0
  205. package/dist/node/constants/index.js.map +1 -0
  206. package/dist/node/date/index.cjs +8 -0
  207. package/dist/node/date/index.d.ts +3 -0
  208. package/dist/node/date/index.js +4 -0
  209. package/dist/node/date/prettyMs.cjs +9 -0
  210. package/dist/node/date/prettyMs.d.ts +8 -0
  211. package/dist/node/date/prettyMs.d.ts.map +1 -0
  212. package/dist/node/date/prettyMs.js +8 -0
  213. package/dist/node/date/prettyMs.js.map +1 -0
  214. package/dist/node/date/timeAgo.cjs +14 -0
  215. package/dist/node/date/timeAgo.d.ts +15 -0
  216. package/dist/node/date/timeAgo.d.ts.map +1 -0
  217. package/dist/node/date/timeAgo.js +11 -0
  218. package/dist/node/date/timeAgo.js.map +1 -0
  219. package/dist/node/file/fileBuffer.node.cjs +115 -0
  220. package/dist/node/file/fileBuffer.node.d.ts +88 -0
  221. package/dist/node/file/fileBuffer.node.d.ts.map +1 -0
  222. package/dist/node/file/fileBuffer.node.js +115 -0
  223. package/dist/node/file/fileBuffer.node.js.map +1 -0
  224. package/dist/node/file/fileBytes.cjs +9 -0
  225. package/dist/node/file/fileBytes.d.ts +8 -0
  226. package/dist/node/file/fileBytes.d.ts.map +1 -0
  227. package/dist/node/file/fileBytes.js +8 -0
  228. package/dist/node/file/fileBytes.js.map +1 -0
  229. package/dist/node/file/fileType.node.cjs +22 -0
  230. package/dist/node/file/fileType.node.d.ts +19 -0
  231. package/dist/node/file/fileType.node.d.ts.map +1 -0
  232. package/dist/node/file/fileType.node.js +15 -0
  233. package/dist/node/file/fileType.node.js.map +1 -0
  234. package/dist/node/file/fileXml.node.cjs +10 -0
  235. package/dist/node/file/fileXml.node.d.ts +8 -0
  236. package/dist/node/file/fileXml.node.d.ts.map +1 -0
  237. package/dist/node/file/fileXml.node.js +9 -0
  238. package/dist/node/file/fileXml.node.js.map +1 -0
  239. package/dist/node/file/interface.d.ts +26 -0
  240. package/dist/node/file/interface.d.ts.map +1 -0
  241. package/dist/node/file/node.cjs +25 -0
  242. package/dist/node/file/node.d.ts +7 -0
  243. package/dist/node/file/node.js +7 -0
  244. package/dist/node/function/index.cjs +10 -0
  245. package/dist/node/function/index.d.ts +8 -0
  246. package/dist/node/function/index.d.ts.map +1 -0
  247. package/dist/node/function/index.js +9 -0
  248. package/dist/node/function/index.js.map +1 -0
  249. package/dist/node/is/index.cjs +42 -0
  250. package/dist/node/is/index.d.ts +7 -0
  251. package/dist/node/is/index.js +8 -0
  252. package/dist/node/is/isJSON.cjs +44 -0
  253. package/dist/node/is/isJSON.d.ts +30 -0
  254. package/dist/node/is/isJSON.d.ts.map +1 -0
  255. package/dist/node/is/isJSON.js +41 -0
  256. package/dist/node/is/isJSON.js.map +1 -0
  257. package/dist/node/is/isPlatform.cjs +20 -0
  258. package/dist/node/is/isPlatform.d.ts +16 -0
  259. package/dist/node/is/isPlatform.d.ts.map +1 -0
  260. package/dist/node/is/isPlatform.js +19 -0
  261. package/dist/node/is/isPlatform.js.map +1 -0
  262. package/dist/node/is/isPrimitive.cjs +91 -0
  263. package/dist/node/is/isPrimitive.d.ts +79 -0
  264. package/dist/node/is/isPrimitive.d.ts.map +1 -0
  265. package/dist/node/is/isPrimitive.js +79 -0
  266. package/dist/node/is/isPrimitive.js.map +1 -0
  267. package/dist/node/is/isPrimitiveWithout.cjs +86 -0
  268. package/dist/node/is/isPrimitiveWithout.d.ts +72 -0
  269. package/dist/node/is/isPrimitiveWithout.d.ts.map +1 -0
  270. package/dist/node/is/isPrimitiveWithout.js +74 -0
  271. package/dist/node/is/isPrimitiveWithout.js.map +1 -0
  272. package/dist/node/is/isTagOf.cjs +21 -0
  273. package/dist/node/is/isTagOf.d.ts +12 -0
  274. package/dist/node/is/isTagOf.d.ts.map +1 -0
  275. package/dist/node/is/isTagOf.js +21 -0
  276. package/dist/node/is/isTagOf.js.map +1 -0
  277. package/dist/node/is/isTypeOf.cjs +29 -0
  278. package/dist/node/is/isTypeOf.d.ts +16 -0
  279. package/dist/node/is/isTypeOf.d.ts.map +1 -0
  280. package/dist/node/is/isTypeOf.js +28 -0
  281. package/dist/node/is/isTypeOf.js.map +1 -0
  282. package/dist/node/node.cjs +196 -0
  283. package/dist/node/node.d.ts +37 -0
  284. package/dist/node/node.js +30 -0
  285. package/dist/node/object/index.cjs +3 -0
  286. package/dist/node/object/index.d.ts +2 -0
  287. package/dist/node/object/index.js +3 -0
  288. package/dist/node/object/objectClone.cjs +22 -0
  289. package/dist/node/object/objectClone.d.ts +8 -0
  290. package/dist/node/object/objectClone.d.ts.map +1 -0
  291. package/dist/node/object/objectClone.js +22 -0
  292. package/dist/node/object/objectClone.js.map +1 -0
  293. package/dist/node/promise/awaitTo.cjs +8 -0
  294. package/dist/node/promise/awaitTo.d.ts +7 -0
  295. package/dist/node/promise/awaitTo.d.ts.map +1 -0
  296. package/dist/node/promise/awaitTo.js +8 -0
  297. package/dist/node/promise/awaitTo.js.map +1 -0
  298. package/dist/node/promise/index.cjs +6 -0
  299. package/dist/node/promise/index.d.ts +3 -0
  300. package/dist/node/promise/index.js +4 -0
  301. package/dist/node/promise/pLimit.cjs +11 -0
  302. package/dist/node/promise/pLimit.d.ts +10 -0
  303. package/dist/node/promise/pLimit.d.ts.map +1 -0
  304. package/dist/node/promise/pLimit.js +9 -0
  305. package/dist/node/promise/pLimit.js.map +1 -0
  306. package/dist/node/regexp/OTHERS.cjs +16 -0
  307. package/dist/node/regexp/OTHERS.d.ts +14 -0
  308. package/dist/node/regexp/OTHERS.d.ts.map +1 -0
  309. package/dist/node/regexp/OTHERS.js +15 -0
  310. package/dist/node/regexp/OTHERS.js.map +1 -0
  311. package/dist/node/regexp/RULES.cjs +698 -0
  312. package/dist/node/regexp/RULES.d.ts +434 -0
  313. package/dist/node/regexp/RULES.d.ts.map +1 -0
  314. package/dist/node/regexp/RULES.js +615 -0
  315. package/dist/node/regexp/RULES.js.map +1 -0
  316. package/dist/node/regexp/index.cjs +89 -0
  317. package/dist/node/regexp/index.d.ts +13 -0
  318. package/dist/node/regexp/index.d.ts.map +1 -0
  319. package/dist/node/regexp/index.js +4 -0
  320. package/dist/node/request/instance.cjs +135 -0
  321. package/dist/node/request/instance.d.ts +45 -0
  322. package/dist/node/request/instance.d.ts.map +1 -0
  323. package/dist/node/request/instance.js +134 -0
  324. package/dist/node/request/instance.js.map +1 -0
  325. package/dist/node/request/interceptors.node.cjs +66 -0
  326. package/dist/node/request/interceptors.node.d.ts +25 -0
  327. package/dist/node/request/interceptors.node.d.ts.map +1 -0
  328. package/dist/node/request/interceptors.node.js +63 -0
  329. package/dist/node/request/interceptors.node.js.map +1 -0
  330. package/dist/node/request/interface.d.ts +54 -0
  331. package/dist/node/request/interface.d.ts.map +1 -0
  332. package/dist/node/request/node.cjs +8 -0
  333. package/dist/node/request/node.d.ts +4 -0
  334. package/dist/node/request/node.js +4 -0
  335. package/dist/node/string/className.cjs +13 -0
  336. package/dist/node/string/className.d.ts +11 -0
  337. package/dist/node/string/className.d.ts.map +1 -0
  338. package/dist/node/string/className.js +10 -0
  339. package/dist/node/string/className.js.map +1 -0
  340. package/dist/node/string/index.cjs +7 -0
  341. package/dist/node/string/index.d.ts +3 -0
  342. package/dist/node/string/index.js +4 -0
  343. package/dist/node/string/proto.cjs +37 -0
  344. package/dist/node/string/proto.d.ts +19 -0
  345. package/dist/node/string/proto.d.ts.map +1 -0
  346. package/dist/node/string/proto.js +36 -0
  347. package/dist/node/string/proto.js.map +1 -0
  348. package/dist/node/tree/index.cjs +7 -0
  349. package/dist/node/tree/index.d.ts +5 -0
  350. package/dist/node/tree/index.js +5 -0
  351. package/dist/node/tree/interface.d.ts +40 -0
  352. package/dist/node/tree/interface.d.ts.map +1 -0
  353. package/dist/node/tree/treeFilter.cjs +58 -0
  354. package/dist/node/tree/treeFilter.d.ts +14 -0
  355. package/dist/node/tree/treeFilter.d.ts.map +1 -0
  356. package/dist/node/tree/treeFilter.js +59 -0
  357. package/dist/node/tree/treeFilter.js.map +1 -0
  358. package/dist/node/tree/treeFlatten.cjs +23 -0
  359. package/dist/node/tree/treeFlatten.d.ts +15 -0
  360. package/dist/node/tree/treeFlatten.d.ts.map +1 -0
  361. package/dist/node/tree/treeFlatten.js +24 -0
  362. package/dist/node/tree/treeFlatten.js.map +1 -0
  363. package/dist/node/tree/treeGenerate.cjs +37 -0
  364. package/dist/node/tree/treeGenerate.d.ts +16 -0
  365. package/dist/node/tree/treeGenerate.d.ts.map +1 -0
  366. package/dist/node/tree/treeGenerate.js +37 -0
  367. package/dist/node/tree/treeGenerate.js.map +1 -0
  368. package/dist/version.d.ts +5 -0
  369. package/dist/version.d.ts.map +1 -0
  370. package/dist/version.js +10 -0
  371. package/dist/version.js.map +1 -0
  372. package/package.json +95 -53
  373. package/LICENSE +0 -21
  374. package/dist/index.cjs +0 -403
  375. package/dist/index.d.ts +0 -496
  376. package/dist/index.mjs +0 -307
@@ -0,0 +1,37 @@
1
+
2
+ //#region src/tree/treeGenerate.ts
3
+ /**
4
+ * @title 借助对象的引用将平铺结构转化为树形结构
5
+ * @param {any[]} items 平铺结构数组
6
+ * @param {Omit<TreeOptions, 'filter'>} options 配置项
7
+ * @returns 树形结构数组
8
+ *
9
+ * @reference https://juejin.cn/post/6983904373508145189#heading-8
10
+ */
11
+ function treeGenerate(items, options) {
12
+ const { parentIdKey = "pid", primaryIdKey = "id", childrenKey = "children", rootValue = null } = options || {};
13
+ const aTree = [];
14
+ const oItem = {};
15
+ for (const item of items) {
16
+ const primaryId = item[primaryIdKey];
17
+ const parentId = item[parentIdKey];
18
+ if (!oItem[primaryId]) oItem[primaryId] = {
19
+ ...item,
20
+ [childrenKey]: []
21
+ };
22
+ else oItem[primaryId] = {
23
+ ...item,
24
+ [childrenKey]: oItem[primaryId][childrenKey]
25
+ };
26
+ const treeItem = oItem[primaryId];
27
+ if (parentId === rootValue) aTree.push(treeItem);
28
+ else {
29
+ if (!oItem[parentId]) oItem[parentId] = { [childrenKey]: [] };
30
+ oItem[parentId][childrenKey].push(treeItem);
31
+ }
32
+ }
33
+ return aTree;
34
+ }
35
+
36
+ //#endregion
37
+ exports.treeGenerate = treeGenerate;
@@ -0,0 +1,16 @@
1
+ import { TreeOptions } from "./interface.js";
2
+
3
+ //#region src/tree/treeGenerate.d.ts
4
+
5
+ /**
6
+ * @title 借助对象的引用将平铺结构转化为树形结构
7
+ * @param {any[]} items 平铺结构数组
8
+ * @param {Omit<TreeOptions, 'filter'>} options 配置项
9
+ * @returns 树形结构数组
10
+ *
11
+ * @reference https://juejin.cn/post/6983904373508145189#heading-8
12
+ */
13
+ declare function treeGenerate(items: any[], options?: Omit<TreeOptions, 'filter'>): any[];
14
+ //#endregion
15
+ export { treeGenerate };
16
+ //# sourceMappingURL=treeGenerate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"treeGenerate.d.ts","names":[],"sources":["../../../src/tree/treeGenerate.ts"],"sourcesContent":[],"mappings":";;;;;;AAUA;;;;;;iBAAgB,YAAA,yBAAqC,KAAK"}
@@ -0,0 +1,37 @@
1
+ //#region src/tree/treeGenerate.ts
2
+ /**
3
+ * @title 借助对象的引用将平铺结构转化为树形结构
4
+ * @param {any[]} items 平铺结构数组
5
+ * @param {Omit<TreeOptions, 'filter'>} options 配置项
6
+ * @returns 树形结构数组
7
+ *
8
+ * @reference https://juejin.cn/post/6983904373508145189#heading-8
9
+ */
10
+ function treeGenerate(items, options) {
11
+ const { parentIdKey = "pid", primaryIdKey = "id", childrenKey = "children", rootValue = null } = options || {};
12
+ const aTree = [];
13
+ const oItem = {};
14
+ for (const item of items) {
15
+ const primaryId = item[primaryIdKey];
16
+ const parentId = item[parentIdKey];
17
+ if (!oItem[primaryId]) oItem[primaryId] = {
18
+ ...item,
19
+ [childrenKey]: []
20
+ };
21
+ else oItem[primaryId] = {
22
+ ...item,
23
+ [childrenKey]: oItem[primaryId][childrenKey]
24
+ };
25
+ const treeItem = oItem[primaryId];
26
+ if (parentId === rootValue) aTree.push(treeItem);
27
+ else {
28
+ if (!oItem[parentId]) oItem[parentId] = { [childrenKey]: [] };
29
+ oItem[parentId][childrenKey].push(treeItem);
30
+ }
31
+ }
32
+ return aTree;
33
+ }
34
+
35
+ //#endregion
36
+ export { treeGenerate };
37
+ //# sourceMappingURL=treeGenerate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"treeGenerate.js","names":["aTree: any[]","oItem: Record<PropertyKey, any>"],"sources":["../../../src/tree/treeGenerate.ts"],"sourcesContent":["import type { TreeOptions } from './interface'\n\n/**\n * @title 借助对象的引用将平铺结构转化为树形结构\n * @param {any[]} items 平铺结构数组\n * @param {Omit<TreeOptions, 'filter'>} options 配置项\n * @returns 树形结构数组\n *\n * @reference https://juejin.cn/post/6983904373508145189#heading-8\n */\nexport function treeGenerate(items: any[], options?: Omit<TreeOptions, 'filter'>): any[] {\n const { parentIdKey = 'pid', primaryIdKey = 'id', childrenKey = 'children', rootValue = null } = options || {}\n\n // 树形结构最终结果\n const aTree: any[] = []\n // 原始数据项的主键映射\n const oItem: Record<PropertyKey, any> = {}\n\n for (const item of items) {\n const primaryId = item[primaryIdKey] as PropertyKey\n const parentId = item[parentIdKey] as PropertyKey\n\n // 更新映射\n if (!oItem[primaryId]) {\n oItem[primaryId] = { ...item, [childrenKey]: [] }\n }\n else {\n oItem[primaryId] = { ...item, [childrenKey]: oItem[primaryId][childrenKey] }\n }\n\n const treeItem = oItem[primaryId]\n // 根节点直接添加到树形结构最终结果,非根节点则添加到父节点的 children 数组中(注意此时父节点可能未加入 oItem 映射)\n if (parentId === rootValue) {\n aTree.push(treeItem)\n }\n else {\n if (!oItem[parentId]) {\n oItem[parentId] = { [childrenKey]: [] }\n }\n oItem[parentId][childrenKey].push(treeItem)\n }\n }\n\n return aTree\n}\n"],"mappings":";;;;;;;;;AAUA,SAAgB,aAAa,OAAc,SAA8C;CACvF,MAAM,EAAE,cAAc,OAAO,eAAe,MAAM,cAAc,YAAY,YAAY,SAAS,WAAW,EAAE;CAG9G,MAAMA,QAAe,EAAE;CAEvB,MAAMC,QAAkC,EAAE;AAE1C,MAAK,MAAM,QAAQ,OAAO;EACxB,MAAM,YAAY,KAAK;EACvB,MAAM,WAAW,KAAK;AAGtB,MAAI,CAAC,MAAM,WACT,OAAM,aAAa;GAAE,GAAG;IAAO,cAAc,EAAE;GAAE;MAGjD,OAAM,aAAa;GAAE,GAAG;IAAO,cAAc,MAAM,WAAW;GAAc;EAG9E,MAAM,WAAW,MAAM;AAEvB,MAAI,aAAa,UACf,OAAM,KAAK,SAAS;OAEjB;AACH,OAAI,CAAC,MAAM,UACT,OAAM,YAAY,GAAG,cAAc,EAAE,EAAE;AAEzC,SAAM,UAAU,aAAa,KAAK,SAAS;;;AAI/C,QAAO"}
@@ -0,0 +1,5 @@
1
+ //#region src/version.d.ts
2
+ declare const version: string;
3
+ //#endregion
4
+ export { version };
5
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","names":[],"sources":["../src/version.ts"],"sourcesContent":[],"mappings":";cAEa"}
@@ -0,0 +1,10 @@
1
+ //#region package.json
2
+ var version$1 = "1.0.0";
3
+
4
+ //#endregion
5
+ //#region src/version.ts
6
+ const version = version$1;
7
+
8
+ //#endregion
9
+ export { version };
10
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","names":["packageJson.version"],"sources":["../package.json","../src/version.ts"],"sourcesContent":["{\n \"$schema\": \"https://json.schemastore.org/package\",\n \"name\": \"@odinlin/utils\",\n \"type\": \"module\",\n \"version\": \"1.0.0\",\n \"description\": \"utils\",\n \"author\": \"odinlin <topazur@163.com>\",\n \"license\": \"MIT\",\n \"keywords\": [\n \"array\",\n \"constants\",\n \"date\",\n \"file\",\n \"is\",\n \"object\",\n \"promise\",\n \"regexp\",\n \"request\",\n \"string\",\n \"tree\"\n ],\n \"sideEffects\": false,\n \"exports\": {\n \".\": {\n \"browser\": {\n \"types\": \"./dist/browser/browser.d.ts\",\n \"import\": \"./dist/browser/browser.js\",\n \"require\": \"./dist/browser/browser.cjs\",\n \"default\": \"./dist/browser/browser.js\"\n },\n \"node\": {\n \"types\": \"./dist/node/node.d.ts\",\n \"import\": \"./dist/node/node.js\",\n \"require\": \"./dist/node/node.cjs\",\n \"default\": \"./dist/node/node.js\"\n },\n \"default\": {\n \"types\": \"./dist/node/node.d.ts\",\n \"require\": \"./dist/node/node.cjs\",\n \"default\": \"./dist/node/node.js\"\n }\n },\n \"./internal/*\": {\n \"browser\": {\n \"types\": \"./dist/browser/*.d.ts\",\n \"import\": \"./dist/browser/*.js\",\n \"require\": \"./dist/browser/*.cjs\",\n \"default\": \"./dist/browser/*.js\"\n },\n \"node\": {\n \"types\": \"./dist/node/*.d.ts\",\n \"import\": \"./dist/node/*.js\",\n \"require\": \"./dist/node/*.cjs\",\n \"default\": \"./dist/node/*.js\"\n },\n \"default\": {\n \"types\": \"./dist/node/*.d.ts\",\n \"require\": \"./dist/node/*.cjs\",\n \"default\": \"./dist/node/*.js\"\n }\n },\n \"./version.js\": \"./dist/version.js\",\n \"./package.json\": \"./package.json\"\n },\n \"main\": \"./dist/node/node.cjs\",\n \"module\": \"./dist/node/node.js\",\n \"unpkg\": \"dist/noExternal/browser.umd.js\",\n \"jsdelivr\": \"dist/noExternal/browser.umd.js\",\n \"types\": \"./dist/node/node.d.ts\",\n \"files\": [\n \"README.md\",\n \"dist\",\n \"package.json\"\n ],\n \"scripts\": {\n \"postinstall\": \"playwright install chromium\",\n \"prepublishOnly\": \"npm run build\",\n \"typecheck\": \"tsc --noEmit\",\n \"test\": \"vitest\",\n \"dev\": \"tsdown --watch\",\n \"build\": \"tsdown\",\n \"bumpp\": \"bumpp --commit 'chore(package/utils): release v%s' --no-tag --no-push\",\n \"publish\": \"npm publish --registry=https://registry.npmjs.org/ --access public\",\n \"release\": \"npm run bumpp && npm run publish\",\n \"anyRule\": \"node ./__scripts__/anyRule.cjs\"\n },\n \"dependencies\": {\n \"await-to-js\": \"^3.0.0\",\n \"axios\": \"^1.13.1\",\n \"buffer-npm\": \"npm:buffer@6\",\n \"classnames\": \"^2.5.1\",\n \"clsx\": \"^2.1.1\",\n \"es-toolkit\": \"^1.41.0\",\n \"file-type\": \"^21.1.1\",\n \"p-limit\": \"^7.2.0\",\n \"pretty-bytes\": \"^7.1.0\",\n \"pretty-ms\": \"^9.3.0\",\n \"throttle-debounce\": \"^5.0.2\",\n \"timeago.js\": \"^4.0.2\",\n \"xmldom\": \"^0.6.0\"\n },\n \"devDependencies\": {\n \"@types/throttle-debounce\": \"^5.0.2\",\n \"@types/xmldom\": \"^0.1.34\",\n \"@vitest/browser\": \"^4.0.14\",\n \"@vitest/browser-playwright\": \"^4.0.14\",\n \"@vitest/coverage-v8\": \"^4.0.14\",\n \"bumpp\": \"^10.3.2\",\n \"fast-glob\": \"^3.3.3\",\n \"memfs\": \"^4.51.0\",\n \"msw\": \"^2.11.6\",\n \"playwright\": \"^1.56.1\",\n \"tsdown\": \"^0.16.7\",\n \"typescript\": \"catalog:typescript\",\n \"vitest\": \"^4.0.14\"\n }\n}\n","import packageJson from '../package.json'\n\nexport const version = packageJson.version\n"],"mappings":";gBAIa;;;;ACFb,MAAa,UAAUA"}
package/package.json CHANGED
@@ -1,75 +1,117 @@
1
1
  {
2
+ "$schema": "https://json.schemastore.org/package",
2
3
  "name": "@odinlin/utils",
3
- "version": "0.0.2",
4
- "description": "Opinionated collection of common JavaScript / TypeScript utils by @odinlin",
4
+ "type": "module",
5
+ "version": "1.0.0",
6
+ "description": "utils",
5
7
  "author": "odinlin <topazur@163.com>",
6
8
  "license": "MIT",
7
- "homepage": "https://github.com/topazur/utils#readme",
8
- "repository": {
9
- "type": "git",
10
- "url": "git+https://github.com/topazur/utils.git"
11
- },
12
- "bugs": {
13
- "url": "https://github.com/topazur/utils/issues"
14
- },
15
9
  "keywords": [
16
- "utils"
10
+ "array",
11
+ "constants",
12
+ "date",
13
+ "file",
14
+ "is",
15
+ "object",
16
+ "promise",
17
+ "regexp",
18
+ "request",
19
+ "string",
20
+ "tree"
17
21
  ],
18
22
  "sideEffects": false,
19
23
  "exports": {
20
24
  ".": {
21
- "types": "./dist/index.d.ts",
22
- "require": "./dist/index.cjs",
23
- "import": "./dist/index.mjs"
24
- }
25
+ "browser": {
26
+ "types": "./dist/browser/browser.d.ts",
27
+ "import": "./dist/browser/browser.js",
28
+ "require": "./dist/browser/browser.cjs",
29
+ "default": "./dist/browser/browser.js"
30
+ },
31
+ "node": {
32
+ "types": "./dist/node/node.d.ts",
33
+ "import": "./dist/node/node.js",
34
+ "require": "./dist/node/node.cjs",
35
+ "default": "./dist/node/node.js"
36
+ },
37
+ "default": {
38
+ "types": "./dist/node/node.d.ts",
39
+ "require": "./dist/node/node.cjs",
40
+ "default": "./dist/node/node.js"
41
+ }
42
+ },
43
+ "./internal/*": {
44
+ "browser": {
45
+ "types": "./dist/browser/*.d.ts",
46
+ "import": "./dist/browser/*.js",
47
+ "require": "./dist/browser/*.cjs",
48
+ "default": "./dist/browser/*.js"
49
+ },
50
+ "node": {
51
+ "types": "./dist/node/*.d.ts",
52
+ "import": "./dist/node/*.js",
53
+ "require": "./dist/node/*.cjs",
54
+ "default": "./dist/node/*.js"
55
+ },
56
+ "default": {
57
+ "types": "./dist/node/*.d.ts",
58
+ "require": "./dist/node/*.cjs",
59
+ "default": "./dist/node/*.js"
60
+ }
61
+ },
62
+ "./version.js": "./dist/version.js",
63
+ "./package.json": "./package.json"
25
64
  },
26
- "main": "dist/index.cjs",
27
- "module": "dist/index.mjs",
28
- "types": "dist/index.d.ts",
65
+ "main": "./dist/node/node.cjs",
66
+ "module": "./dist/node/node.js",
67
+ "unpkg": "dist/noExternal/browser.umd.js",
68
+ "jsdelivr": "dist/noExternal/browser.umd.js",
69
+ "types": "./dist/node/node.d.ts",
29
70
  "files": [
71
+ "README.md",
30
72
  "dist",
31
- "*.d.ts"
73
+ "package.json"
32
74
  ],
33
75
  "scripts": {
34
- "prepublishOnly": "nr build",
35
- "start": "esno src/index.ts",
36
- "build": "rollup -c",
37
- "dev": "nr build --watch",
38
- "build:pkgroll": "pkgroll --minify",
39
- "dev:pkgroll": "pkgroll --watch",
40
- "release": "bumpp --commit --push --tag && npm publish",
76
+ "postinstall": "playwright install chromium",
77
+ "prepublishOnly": "npm run build",
41
78
  "typecheck": "tsc --noEmit",
42
79
  "test": "vitest",
43
- "lint": "eslint --fix --ext .ts ."
80
+ "dev": "tsdown --watch",
81
+ "build": "tsdown",
82
+ "bumpp": "bumpp --commit 'chore(package/utils): release v%s' --no-tag --no-push",
83
+ "publish": "npm publish --registry=https://registry.npmjs.org/ --access public",
84
+ "release": "npm run bumpp && npm run publish",
85
+ "anyRule": "node ./__scripts__/anyRule.cjs"
44
86
  },
45
87
  "dependencies": {
46
- "throttle-debounce": "^5.0.0"
88
+ "await-to-js": "^3.0.0",
89
+ "axios": "^1.13.1",
90
+ "buffer-npm": "npm:buffer@6",
91
+ "classnames": "^2.5.1",
92
+ "clsx": "^2.1.1",
93
+ "es-toolkit": "^1.41.0",
94
+ "file-type": "^21.1.1",
95
+ "p-limit": "^7.2.0",
96
+ "pretty-bytes": "^7.1.0",
97
+ "pretty-ms": "^9.3.0",
98
+ "throttle-debounce": "^5.0.2",
99
+ "timeago.js": "^4.0.2",
100
+ "xmldom": "^0.6.0"
47
101
  },
48
102
  "devDependencies": {
49
- "@antfu/eslint-config": "^0.27.0",
50
- "@rollup/plugin-alias": "^3.1.9",
51
- "@rollup/plugin-commonjs": "^22.0.2",
52
- "@rollup/plugin-json": "^4.1.0",
53
- "@rollup/plugin-node-resolve": "^14.1.0",
54
- "@types/node": "^18.7.18",
55
- "@types/throttle-debounce": "^5.0.0",
56
- "bumpp": "^8.2.1",
57
- "eslint": "^8.23.1",
58
- "esno": "^0.16.3",
59
- "pkgroll": "^1.4.0",
60
- "rollup": "^2.79.0",
61
- "rollup-plugin-dts": "^4.2.2",
62
- "rollup-plugin-esbuild": "^4.10.1",
63
- "typescript": "^4.8.3",
64
- "vitest": "^0.23.4"
65
- },
66
- "eslintIgnore": [
67
- "dist",
68
- "node_modules",
69
- "*.d.ts"
70
- ],
71
- "publishConfig": {
72
- "access": "public",
73
- "registry": "https://registry.npmjs.org/"
103
+ "@types/throttle-debounce": "^5.0.2",
104
+ "@types/xmldom": "^0.1.34",
105
+ "@vitest/browser": "^4.0.14",
106
+ "@vitest/browser-playwright": "^4.0.14",
107
+ "@vitest/coverage-v8": "^4.0.14",
108
+ "bumpp": "^10.3.2",
109
+ "fast-glob": "^3.3.3",
110
+ "memfs": "^4.51.0",
111
+ "msw": "^2.11.6",
112
+ "playwright": "^1.56.1",
113
+ "tsdown": "^0.16.7",
114
+ "typescript": "catalog:typescript",
115
+ "vitest": "^4.0.14"
74
116
  }
75
117
  }
package/LICENSE DELETED
@@ -1,21 +0,0 @@
1
- MIT License
2
-
3
- Copyright (c) 2022 odinlin
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.