@wener/utils 1.0.0-alpha.8 → 1.1.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 (360) hide show
  1. package/LICENSE.md +7 -0
  2. package/README.md +28 -0
  3. package/dist/utils.cjs +497 -0
  4. package/dist/utils.cjs.map +7 -0
  5. package/dist/utils.js +445 -0
  6. package/dist/utils.js.map +7 -0
  7. package/dist/utils.mjs +475 -0
  8. package/dist/utils.mjs.map +7 -0
  9. package/jest.config.js +8 -6
  10. package/lib/{arrays → cjs/arrays}/MaybeArray.d.ts +1 -0
  11. package/lib/{arrays → cjs/arrays}/MaybeArray.js +8 -0
  12. package/lib/cjs/arrays/MaybeArray.js.map +1 -0
  13. package/lib/{arrays → cjs/arrays}/index.d.ts +0 -0
  14. package/lib/cjs/arrays/index.js +5 -0
  15. package/lib/cjs/arrays/index.js.map +1 -0
  16. package/lib/{asyncs → cjs/asyncs}/AsyncInterval.d.ts +0 -0
  17. package/lib/{asyncs → cjs/asyncs}/AsyncInterval.js +2 -1
  18. package/lib/cjs/asyncs/AsyncInterval.js.map +1 -0
  19. package/lib/{asyncs → cjs/asyncs}/LazyPromise.d.ts +0 -0
  20. package/lib/cjs/asyncs/LazyPromise.js +26 -0
  21. package/lib/cjs/asyncs/LazyPromise.js.map +1 -0
  22. package/lib/cjs/asyncs/MaybePromise.d.ts +1 -0
  23. package/lib/cjs/asyncs/MaybePromise.js +3 -0
  24. package/lib/cjs/asyncs/MaybePromise.js.map +1 -0
  25. package/lib/cjs/asyncs/generatorOfStream.d.ts +1 -0
  26. package/lib/cjs/asyncs/generatorOfStream.js +18 -0
  27. package/lib/cjs/asyncs/generatorOfStream.js.map +1 -0
  28. package/lib/cjs/asyncs/index.d.ts +7 -0
  29. package/lib/cjs/asyncs/index.js +11 -0
  30. package/lib/cjs/asyncs/index.js.map +1 -0
  31. package/lib/cjs/asyncs/isPromise.d.ts +1 -0
  32. package/lib/cjs/asyncs/isPromise.js +8 -0
  33. package/lib/cjs/asyncs/isPromise.js.map +1 -0
  34. package/lib/cjs/asyncs/promiseOfCallback.d.ts +1 -0
  35. package/lib/cjs/asyncs/promiseOfCallback.js +22 -0
  36. package/lib/cjs/asyncs/promiseOfCallback.js.map +1 -0
  37. package/lib/{asyncs → cjs/asyncs}/sleep.d.ts +0 -0
  38. package/lib/cjs/asyncs/sleep.js +6 -0
  39. package/lib/cjs/asyncs/sleep.js.map +1 -0
  40. package/lib/cjs/asyncs/timeout.d.ts +4 -0
  41. package/lib/cjs/asyncs/timeout.js +27 -0
  42. package/lib/cjs/asyncs/timeout.js.map +1 -0
  43. package/lib/{browsers/clipboard.d.ts → cjs/browsers/copy.d.ts} +0 -0
  44. package/lib/{browsers/clipboard.js → cjs/browsers/copy.js} +3 -3
  45. package/lib/cjs/browsers/copy.js.map +1 -0
  46. package/lib/{browsers → cjs/browsers}/download.d.ts +0 -0
  47. package/lib/{browsers → cjs/browsers}/download.js +1 -0
  48. package/lib/cjs/browsers/download.js.map +1 -0
  49. package/lib/cjs/browsers/getFileFromDataTransfer.d.ts +4 -0
  50. package/lib/{browsers/transfers.js → cjs/browsers/getFileFromDataTransfer.js} +15 -11
  51. package/lib/cjs/browsers/getFileFromDataTransfer.js.map +1 -0
  52. package/lib/cjs/browsers/index.d.ts +4 -0
  53. package/lib/cjs/browsers/index.js +8 -0
  54. package/lib/cjs/browsers/index.js.map +1 -0
  55. package/lib/{browsers → cjs/browsers}/loaders.d.ts +0 -0
  56. package/lib/{browsers → cjs/browsers}/loaders.js +2 -1
  57. package/lib/cjs/browsers/loaders.js.map +1 -0
  58. package/lib/cjs/formats/formatBytes.d.ts +11 -0
  59. package/lib/cjs/formats/formatBytes.js +31 -0
  60. package/lib/cjs/formats/formatBytes.js.map +1 -0
  61. package/lib/cjs/index.d.ts +9 -0
  62. package/lib/cjs/index.js +15 -0
  63. package/lib/cjs/index.js.map +1 -0
  64. package/lib/{io → cjs/io}/index.d.ts +0 -0
  65. package/lib/cjs/io/index.js +5 -0
  66. package/lib/{io → cjs/io}/index.js.map +1 -1
  67. package/lib/{io → cjs/io}/isBuffer.d.ts +0 -0
  68. package/lib/{io → cjs/io}/isBuffer.js +1 -0
  69. package/lib/cjs/io/isBuffer.js.map +1 -0
  70. package/lib/{isomorphics → cjs/isomorphics}/getGlobalThis.d.ts +1 -1
  71. package/lib/{isomorphics → cjs/isomorphics}/getGlobalThis.js +5 -6
  72. package/lib/cjs/isomorphics/getGlobalThis.js.map +1 -0
  73. package/lib/{isomorphics → cjs/isomorphics}/index.d.ts +0 -0
  74. package/lib/cjs/isomorphics/index.js +5 -0
  75. package/lib/cjs/isomorphics/index.js.map +1 -0
  76. package/lib/{maths → cjs/maths}/index.d.ts +0 -0
  77. package/lib/cjs/maths/index.js +5 -0
  78. package/lib/{arrays → cjs/maths}/index.js.map +1 -1
  79. package/lib/cjs/maths/random.d.ts +3 -0
  80. package/lib/{maths → cjs/maths}/random.js +6 -5
  81. package/lib/cjs/maths/random.js.map +1 -0
  82. package/lib/{strings → cjs/strings}/camelCase.d.ts +0 -0
  83. package/lib/{strings → cjs/strings}/camelCase.js +2 -1
  84. package/lib/cjs/strings/camelCase.js.map +1 -0
  85. package/lib/{strings → cjs/strings}/index.d.ts +1 -0
  86. package/lib/cjs/strings/index.js +7 -0
  87. package/lib/cjs/strings/index.js.map +1 -0
  88. package/lib/{strings → cjs/strings}/templates.d.ts +1 -1
  89. package/lib/{strings → cjs/strings}/templates.js +3 -3
  90. package/lib/cjs/strings/templates.js.map +1 -0
  91. package/lib/cjs/strings/urljoin.d.ts +2 -0
  92. package/lib/cjs/strings/urljoin.js +69 -0
  93. package/lib/cjs/strings/urljoin.js.map +1 -0
  94. package/lib/cjs/strings/urljoin.test.d.ts +1 -0
  95. package/lib/cjs/strings/urljoin.test.js +7 -0
  96. package/lib/cjs/strings/urljoin.test.js.map +1 -0
  97. package/lib/{validations → cjs/validations}/asserts.d.ts +0 -0
  98. package/lib/{validations → cjs/validations}/asserts.js +1 -0
  99. package/lib/cjs/validations/asserts.js.map +1 -0
  100. package/lib/cjs/validations/index.d.ts +4 -0
  101. package/lib/cjs/validations/index.js +8 -0
  102. package/lib/cjs/validations/index.js.map +1 -0
  103. package/lib/cjs/validations/isClass.d.ts +1 -0
  104. package/lib/cjs/validations/isClass.js +8 -0
  105. package/lib/cjs/validations/isClass.js.map +1 -0
  106. package/lib/cjs/validations/isDefined.d.ts +1 -0
  107. package/lib/cjs/validations/isDefined.js +8 -0
  108. package/lib/cjs/validations/isDefined.js.map +1 -0
  109. package/lib/cjs/validations/isEmptyObject.d.ts +1 -0
  110. package/lib/cjs/validations/isEmptyObject.js +11 -0
  111. package/lib/cjs/validations/isEmptyObject.js.map +1 -0
  112. package/lib/esm/arrays/MaybeArray.d.ts +5 -0
  113. package/lib/esm/arrays/MaybeArray.js +33 -0
  114. package/lib/esm/arrays/index.d.ts +1 -0
  115. package/lib/esm/arrays/index.js +1 -0
  116. package/lib/esm/asyncs/AsyncInterval.d.ts +3 -0
  117. package/lib/esm/asyncs/AsyncInterval.js +16 -0
  118. package/lib/esm/asyncs/LazyPromise.d.ts +5 -0
  119. package/lib/esm/asyncs/LazyPromise.js +24 -0
  120. package/lib/esm/asyncs/MaybePromise.d.ts +1 -0
  121. package/lib/esm/asyncs/MaybePromise.js +0 -0
  122. package/lib/esm/asyncs/generatorOfStream.d.ts +1 -0
  123. package/lib/esm/asyncs/generatorOfStream.js +16 -0
  124. package/lib/esm/asyncs/index.d.ts +7 -0
  125. package/lib/esm/asyncs/index.js +7 -0
  126. package/lib/esm/asyncs/isPromise.d.ts +1 -0
  127. package/lib/esm/asyncs/isPromise.js +6 -0
  128. package/lib/esm/asyncs/promiseOfCallback.d.ts +1 -0
  129. package/lib/esm/asyncs/promiseOfCallback.js +18 -0
  130. package/lib/esm/asyncs/sleep.d.ts +1 -0
  131. package/lib/esm/asyncs/sleep.js +4 -0
  132. package/lib/esm/asyncs/timeout.d.ts +4 -0
  133. package/lib/esm/asyncs/timeout.js +25 -0
  134. package/lib/esm/browsers/copy.d.ts +1 -0
  135. package/lib/esm/browsers/copy.js +52 -0
  136. package/lib/esm/browsers/download.d.ts +4 -0
  137. package/lib/esm/browsers/download.js +28 -0
  138. package/lib/esm/browsers/getFileFromDataTransfer.d.ts +4 -0
  139. package/lib/esm/browsers/getFileFromDataTransfer.js +29 -0
  140. package/lib/esm/browsers/index.d.ts +4 -0
  141. package/lib/esm/browsers/index.js +4 -0
  142. package/lib/esm/browsers/loaders.d.ts +6 -0
  143. package/lib/esm/browsers/loaders.js +35 -0
  144. package/lib/esm/formats/formatBytes.d.ts +11 -0
  145. package/lib/esm/formats/formatBytes.js +17 -0
  146. package/lib/esm/index.d.ts +9 -0
  147. package/lib/esm/index.js +12 -0
  148. package/lib/esm/io/index.d.ts +1 -0
  149. package/lib/esm/io/index.js +1 -0
  150. package/lib/esm/io/isBuffer.d.ts +2 -0
  151. package/lib/esm/io/isBuffer.js +6 -0
  152. package/lib/esm/isomorphics/getGlobalThis.d.ts +9 -0
  153. package/lib/esm/isomorphics/getGlobalThis.js +14 -0
  154. package/lib/esm/isomorphics/index.d.ts +1 -0
  155. package/lib/esm/isomorphics/index.js +1 -0
  156. package/lib/esm/maths/index.d.ts +1 -0
  157. package/lib/esm/maths/index.js +1 -0
  158. package/lib/esm/maths/random.d.ts +3 -0
  159. package/lib/esm/maths/random.js +17 -0
  160. package/lib/esm/strings/camelCase.d.ts +4 -0
  161. package/lib/esm/strings/camelCase.js +57 -0
  162. package/lib/esm/strings/index.d.ts +3 -0
  163. package/lib/esm/strings/index.js +3 -0
  164. package/lib/esm/strings/templates.d.ts +7 -0
  165. package/lib/esm/strings/templates.js +8 -0
  166. package/lib/esm/strings/urljoin.d.ts +2 -0
  167. package/lib/esm/strings/urljoin.js +53 -0
  168. package/lib/esm/strings/urljoin.test.d.ts +1 -0
  169. package/lib/esm/strings/urljoin.test.js +4 -0
  170. package/lib/esm/validations/asserts.d.ts +2 -0
  171. package/lib/esm/validations/asserts.js +10 -0
  172. package/lib/esm/validations/index.d.ts +4 -0
  173. package/lib/esm/validations/index.js +4 -0
  174. package/lib/esm/validations/isClass.d.ts +1 -0
  175. package/lib/esm/validations/isClass.js +6 -0
  176. package/lib/esm/validations/isDefined.d.ts +1 -0
  177. package/lib/esm/validations/isDefined.js +6 -0
  178. package/lib/esm/validations/isEmptyObject.d.ts +1 -0
  179. package/lib/esm/validations/isEmptyObject.js +9 -0
  180. package/lib/esnext/arrays/MaybeArray.d.ts +5 -0
  181. package/lib/esnext/arrays/MaybeArray.js +28 -0
  182. package/lib/esnext/arrays/MaybeArray.js.map +1 -0
  183. package/lib/esnext/arrays/index.d.ts +1 -0
  184. package/lib/esnext/arrays/index.js +2 -0
  185. package/lib/esnext/arrays/index.js.map +1 -0
  186. package/lib/esnext/asyncs/AsyncInterval.d.ts +3 -0
  187. package/lib/esnext/asyncs/AsyncInterval.js +13 -0
  188. package/lib/esnext/asyncs/AsyncInterval.js.map +1 -0
  189. package/lib/esnext/asyncs/LazyPromise.d.ts +5 -0
  190. package/lib/esnext/asyncs/LazyPromise.js +22 -0
  191. package/lib/esnext/asyncs/LazyPromise.js.map +1 -0
  192. package/lib/esnext/asyncs/MaybePromise.d.ts +1 -0
  193. package/lib/esnext/asyncs/MaybePromise.js +2 -0
  194. package/lib/esnext/asyncs/MaybePromise.js.map +1 -0
  195. package/lib/esnext/asyncs/generatorOfStream.d.ts +1 -0
  196. package/lib/esnext/asyncs/generatorOfStream.js +14 -0
  197. package/lib/esnext/asyncs/generatorOfStream.js.map +1 -0
  198. package/lib/esnext/asyncs/index.d.ts +7 -0
  199. package/lib/esnext/asyncs/index.js +8 -0
  200. package/lib/esnext/asyncs/index.js.map +1 -0
  201. package/lib/esnext/asyncs/isPromise.d.ts +1 -0
  202. package/lib/esnext/asyncs/isPromise.js +4 -0
  203. package/lib/esnext/asyncs/isPromise.js.map +1 -0
  204. package/lib/esnext/asyncs/promiseOfCallback.d.ts +1 -0
  205. package/lib/esnext/asyncs/promiseOfCallback.js +18 -0
  206. package/lib/esnext/asyncs/promiseOfCallback.js.map +1 -0
  207. package/lib/esnext/asyncs/sleep.d.ts +1 -0
  208. package/lib/esnext/asyncs/sleep.js +2 -0
  209. package/lib/esnext/asyncs/sleep.js.map +1 -0
  210. package/lib/esnext/asyncs/timeout.d.ts +4 -0
  211. package/lib/esnext/asyncs/timeout.js +22 -0
  212. package/lib/esnext/asyncs/timeout.js.map +1 -0
  213. package/lib/esnext/browsers/copy.d.ts +1 -0
  214. package/lib/esnext/browsers/copy.js +51 -0
  215. package/lib/esnext/browsers/copy.js.map +1 -0
  216. package/lib/esnext/browsers/download.d.ts +4 -0
  217. package/lib/esnext/browsers/download.js +31 -0
  218. package/lib/esnext/browsers/download.js.map +1 -0
  219. package/lib/esnext/browsers/getFileFromDataTransfer.d.ts +4 -0
  220. package/lib/esnext/browsers/getFileFromDataTransfer.js +37 -0
  221. package/lib/esnext/browsers/getFileFromDataTransfer.js.map +1 -0
  222. package/lib/esnext/browsers/index.d.ts +4 -0
  223. package/lib/esnext/browsers/index.js +5 -0
  224. package/lib/esnext/browsers/index.js.map +1 -0
  225. package/lib/esnext/browsers/loaders.d.ts +6 -0
  226. package/lib/esnext/browsers/loaders.js +33 -0
  227. package/lib/esnext/browsers/loaders.js.map +1 -0
  228. package/lib/esnext/formats/formatBytes.d.ts +11 -0
  229. package/lib/esnext/formats/formatBytes.js +27 -0
  230. package/lib/esnext/formats/formatBytes.js.map +1 -0
  231. package/lib/esnext/index.d.ts +9 -0
  232. package/lib/esnext/index.js +10 -0
  233. package/lib/esnext/index.js.map +1 -0
  234. package/lib/esnext/io/index.d.ts +1 -0
  235. package/lib/esnext/io/index.js +2 -0
  236. package/lib/esnext/io/index.js.map +1 -0
  237. package/lib/esnext/io/isBuffer.d.ts +2 -0
  238. package/lib/esnext/io/isBuffer.js +8 -0
  239. package/lib/esnext/io/isBuffer.js.map +1 -0
  240. package/lib/esnext/isomorphics/getGlobalThis.d.ts +9 -0
  241. package/lib/esnext/isomorphics/getGlobalThis.js +21 -0
  242. package/lib/esnext/isomorphics/getGlobalThis.js.map +1 -0
  243. package/lib/esnext/isomorphics/index.d.ts +1 -0
  244. package/lib/esnext/isomorphics/index.js +2 -0
  245. package/lib/esnext/isomorphics/index.js.map +1 -0
  246. package/lib/esnext/maths/index.d.ts +1 -0
  247. package/lib/esnext/maths/index.js +2 -0
  248. package/lib/esnext/maths/index.js.map +1 -0
  249. package/lib/esnext/maths/random.d.ts +3 -0
  250. package/lib/esnext/maths/random.js +16 -0
  251. package/lib/esnext/maths/random.js.map +1 -0
  252. package/lib/esnext/strings/camelCase.d.ts +4 -0
  253. package/lib/esnext/strings/camelCase.js +68 -0
  254. package/lib/esnext/strings/camelCase.js.map +1 -0
  255. package/lib/esnext/strings/index.d.ts +3 -0
  256. package/lib/esnext/strings/index.js +4 -0
  257. package/lib/esnext/strings/index.js.map +1 -0
  258. package/lib/esnext/strings/templates.d.ts +7 -0
  259. package/lib/esnext/strings/templates.js +14 -0
  260. package/lib/esnext/strings/templates.js.map +1 -0
  261. package/lib/esnext/strings/urljoin.d.ts +2 -0
  262. package/lib/esnext/strings/urljoin.js +65 -0
  263. package/lib/esnext/strings/urljoin.js.map +1 -0
  264. package/lib/esnext/strings/urljoin.test.d.ts +1 -0
  265. package/lib/esnext/strings/urljoin.test.js +5 -0
  266. package/lib/esnext/strings/urljoin.test.js.map +1 -0
  267. package/lib/esnext/validations/asserts.d.ts +2 -0
  268. package/lib/esnext/validations/asserts.js +13 -0
  269. package/lib/esnext/validations/asserts.js.map +1 -0
  270. package/lib/esnext/validations/index.d.ts +4 -0
  271. package/lib/esnext/validations/index.js +5 -0
  272. package/lib/esnext/validations/index.js.map +1 -0
  273. package/lib/esnext/validations/isClass.d.ts +1 -0
  274. package/lib/esnext/validations/isClass.js +4 -0
  275. package/lib/esnext/validations/isClass.js.map +1 -0
  276. package/lib/esnext/validations/isDefined.d.ts +1 -0
  277. package/lib/esnext/validations/isDefined.js +4 -0
  278. package/lib/esnext/validations/isDefined.js.map +1 -0
  279. package/lib/esnext/validations/isEmptyObject.d.ts +1 -0
  280. package/lib/esnext/validations/isEmptyObject.js +7 -0
  281. package/lib/esnext/validations/isEmptyObject.js.map +1 -0
  282. package/package.json +36 -32
  283. package/src/arrays/MaybeArray.ts +13 -0
  284. package/src/asyncs/LazyPromise.ts +16 -9
  285. package/src/asyncs/MaybePromise.ts +1 -0
  286. package/src/asyncs/generatorOfStream.ts +13 -0
  287. package/src/asyncs/index.ts +8 -3
  288. package/src/asyncs/isPromise.ts +3 -0
  289. package/src/asyncs/promiseOfCallback.ts +15 -0
  290. package/src/asyncs/timeout.ts +25 -0
  291. package/src/browsers/{clipboard.ts → copy.ts} +0 -0
  292. package/src/browsers/{transfers.ts → getFileFromDataTransfer.ts} +13 -8
  293. package/src/browsers/index.ts +4 -4
  294. package/src/browsers/loaders.ts +7 -2
  295. package/src/formats/formatBytes.ts +30 -0
  296. package/src/index.ts +5 -3
  297. package/src/isomorphics/getGlobalThis.ts +2 -4
  298. package/src/maths/random.ts +5 -5
  299. package/src/strings/camelCase.ts +2 -2
  300. package/src/strings/index.ts +1 -0
  301. package/src/strings/templates.ts +2 -4
  302. package/src/strings/urljoin.test.ts +5 -0
  303. package/src/strings/urljoin.ts +79 -0
  304. package/src/validations/index.ts +3 -0
  305. package/src/validations/isClass.ts +3 -0
  306. package/src/validations/isDefined.ts +3 -0
  307. package/src/validations/isEmptyObject.ts +6 -0
  308. package/tsconfig.json +26 -6
  309. package/dist/utils.es5.js +0 -1759
  310. package/dist/utils.es5.js.map +0 -1
  311. package/dist/utils.umd.js +0 -1769
  312. package/dist/utils.umd.js.map +0 -1
  313. package/lib/arrays/MaybeArray.js.map +0 -1
  314. package/lib/arrays/index.js +0 -7
  315. package/lib/asyncs/AsyncInterval.js.map +0 -1
  316. package/lib/asyncs/LazyPromise.js +0 -18
  317. package/lib/asyncs/LazyPromise.js.map +0 -1
  318. package/lib/asyncs/index.d.ts +0 -3
  319. package/lib/asyncs/index.js +0 -9
  320. package/lib/asyncs/index.js.map +0 -1
  321. package/lib/asyncs/sleep.js +0 -4
  322. package/lib/asyncs/sleep.js.map +0 -1
  323. package/lib/browsers/clipboard.js.map +0 -1
  324. package/lib/browsers/download.js.map +0 -1
  325. package/lib/browsers/index.d.ts +0 -4
  326. package/lib/browsers/index.js +0 -10
  327. package/lib/browsers/index.js.map +0 -1
  328. package/lib/browsers/loaders.js.map +0 -1
  329. package/lib/browsers/transfers.d.ts +0 -4
  330. package/lib/browsers/transfers.js.map +0 -1
  331. package/lib/envs/index.d.ts +0 -1
  332. package/lib/envs/index.js +0 -7
  333. package/lib/envs/index.js.map +0 -1
  334. package/lib/envs/isDev.d.ts +0 -1
  335. package/lib/envs/isDev.js +0 -4
  336. package/lib/envs/isDev.js.map +0 -1
  337. package/lib/index.d.ts +0 -8
  338. package/lib/index.js +0 -14
  339. package/lib/index.js.map +0 -1
  340. package/lib/io/index.js +0 -7
  341. package/lib/io/isBuffer.js.map +0 -1
  342. package/lib/isomorphics/getGlobalThis.js.map +0 -1
  343. package/lib/isomorphics/index.js +0 -7
  344. package/lib/isomorphics/index.js.map +0 -1
  345. package/lib/maths/index.js +0 -7
  346. package/lib/maths/index.js.map +0 -1
  347. package/lib/maths/random.d.ts +0 -3
  348. package/lib/maths/random.js.map +0 -1
  349. package/lib/strings/camelCase.js.map +0 -1
  350. package/lib/strings/index.js +0 -8
  351. package/lib/strings/index.js.map +0 -1
  352. package/lib/strings/templates.js.map +0 -1
  353. package/lib/validations/asserts.js.map +0 -1
  354. package/lib/validations/index.d.ts +0 -1
  355. package/lib/validations/index.js +0 -7
  356. package/lib/validations/index.js.map +0 -1
  357. package/rollup.config.ts +0 -34
  358. package/src/envs/index.ts +0 -1
  359. package/src/envs/isDev.ts +0 -1
  360. package/tsconfig.rollup.json +0 -9
@@ -0,0 +1,31 @@
1
+ export function download(filename, data, { type = 'application/octet-stream', raw = false } = {}) {
2
+ const a = document.createElement('a');
3
+ let closer = () => null;
4
+ try {
5
+ a.download = filename;
6
+ // console.info(`downloading ${name}`, data);
7
+ // url or data url
8
+ if (typeof data === 'string' && /^(https?:|data:)/.test(data) && !raw) {
9
+ a.href = data;
10
+ }
11
+ else if (typeof data === 'string') {
12
+ data = new TextEncoder().encode(data);
13
+ }
14
+ if (data instanceof Uint8Array) {
15
+ data = new Blob([data], { type });
16
+ }
17
+ if (data instanceof File || data instanceof Blob || data instanceof MediaSource) {
18
+ a.href = URL.createObjectURL(data);
19
+ closer = () => URL.revokeObjectURL(a.href);
20
+ }
21
+ else {
22
+ console.error(`invalid download data`, data);
23
+ throw new Error(`can not download ${Object.getPrototypeOf(data)}`);
24
+ }
25
+ a.click();
26
+ }
27
+ finally {
28
+ closer();
29
+ }
30
+ }
31
+ //# sourceMappingURL=download.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"download.js","sourceRoot":"","sources":["../../../src/browsers/download.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,QAAQ,CAAC,QAAgB,EAAE,IAAS,EAAE,EAAE,IAAI,GAAG,0BAA0B,EAAE,GAAG,GAAG,KAAK,EAAE,GAAG,EAAE;IAC3G,MAAM,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IACtC,IAAI,MAAM,GAAe,GAAG,EAAE,CAAC,IAAI,CAAC;IACpC,IAAI;QACF,CAAC,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAEtB,6CAA6C;QAE7C,kBAAkB;QAClB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACrE,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;SACf;aAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YACnC,IAAI,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;SACvC;QAED,IAAI,IAAI,YAAY,UAAU,EAAE;YAC9B,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;SACnC;QAED,IAAI,IAAI,YAAY,IAAI,IAAI,IAAI,YAAY,IAAI,IAAI,IAAI,YAAY,WAAW,EAAE;YAC/E,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YACnC,MAAM,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;SAC5C;aAAM;YACL,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC;YAC7C,MAAM,IAAI,KAAK,CAAC,oBAAoB,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SACpE;QACD,CAAC,CAAC,KAAK,EAAE,CAAC;KACX;YAAS;QACR,MAAM,EAAE,CAAC;KACV;AACH,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare function getFileFromDataTransfer(dataTransfer?: DataTransfer | null): {
2
+ file?: File;
3
+ name?: string;
4
+ };
@@ -0,0 +1,37 @@
1
+ export function getFileFromDataTransfer(dataTransfer) {
2
+ if (!dataTransfer) {
3
+ return {};
4
+ }
5
+ const items = dataTransfer.items ?? [];
6
+ if (items.length >= 2 && items[0].kind === 'string' && items[1].kind === 'file') {
7
+ // name, file
8
+ const text = dataTransfer.getData('text');
9
+ const file = items[1].getAsFile() ?? dataTransfer.files?.item(0);
10
+ if (!file) {
11
+ console.error(`no file ${text}`, items[1]);
12
+ return {};
13
+ }
14
+ // let type = file.type;
15
+ // // fix type
16
+ // type = type;
17
+ // // NOTE paste file can not parse by libs
18
+ // if (type !== file.type) {
19
+ // const blob = file.slice(0, file.size);
20
+ // file = new File([blob], text, {type});
21
+ // }
22
+ return { file, name: text };
23
+ }
24
+ else if (items[0].kind === 'file') {
25
+ const file = items[0].getAsFile();
26
+ if (!file) {
27
+ console.error(`no file`, items[0]);
28
+ return {};
29
+ }
30
+ return { file, name: file.name };
31
+ }
32
+ else {
33
+ console.debug(`file item not match`, Array.from(items).map((v) => ({ type: v.type, kind: v.kind })));
34
+ }
35
+ return {};
36
+ }
37
+ //# sourceMappingURL=getFileFromDataTransfer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getFileFromDataTransfer.js","sourceRoot":"","sources":["../../../src/browsers/getFileFromDataTransfer.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,uBAAuB,CAAC,YAAkC;IACxE,IAAI,CAAC,YAAY,EAAE;QACjB,OAAO,EAAE,CAAC;KACX;IAED,MAAM,KAAK,GAAyB,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC;IAE7D,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE;QAC/E,aAAa;QACb,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;QACjE,IAAI,CAAC,IAAI,EAAE;YACT,OAAO,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,OAAO,EAAE,CAAC;SACX;QAED,wBAAwB;QACxB,cAAc;QACd,eAAe;QACf,2CAA2C;QAC3C,4BAA4B;QAC5B,2CAA2C;QAC3C,2CAA2C;QAC3C,IAAI;QAEJ,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;KAC7B;SAAM,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE;QACnC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,EAAE;YACT,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YACnC,OAAO,EAAE,CAAC;SACX;QACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;KAClC;SAAM;QACL,OAAO,CAAC,KAAK,CACX,qBAAqB,EACrB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAC/D,CAAC;KACH;IACD,OAAO,EAAE,CAAC;AACZ,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './copy';
2
+ export * from './download';
3
+ export * from './loaders';
4
+ export * from './getFileFromDataTransfer';
@@ -0,0 +1,5 @@
1
+ export * from './copy';
2
+ export * from './download';
3
+ export * from './loaders';
4
+ export * from './getFileFromDataTransfer';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/browsers/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC;AAC1B,cAAc,2BAA2B,CAAC"}
@@ -0,0 +1,6 @@
1
+ export declare function loadScripts(src: string, options?: {
2
+ attributes: Record<string, string>;
3
+ }): Promise<unknown>;
4
+ export declare function loadStyles(href: string, options?: {
5
+ attributes: Record<string, string>;
6
+ }): Promise<unknown>;
@@ -0,0 +1,33 @@
1
+ function load(el, resolve, reject, options) {
2
+ el.onload = resolve;
3
+ el.onerror = (e) => {
4
+ el.remove();
5
+ reject(e);
6
+ };
7
+ const { attributes = {} } = options || {};
8
+ Object.entries(attributes).forEach(([k, v]) => el.setAttribute(k, v));
9
+ document.head.appendChild(el);
10
+ }
11
+ export function loadScripts(src, options) {
12
+ // todo quote ?
13
+ if (document.querySelector(`script[src="${src}"]`)) {
14
+ return Promise.resolve();
15
+ }
16
+ return new Promise((resolve, reject) => {
17
+ const el = document.createElement('script');
18
+ el.src = src;
19
+ load(el, resolve, reject, options);
20
+ });
21
+ }
22
+ export function loadStyles(href, options) {
23
+ if (document.querySelector(`link[href="${href}"]`)) {
24
+ return Promise.resolve();
25
+ }
26
+ return new Promise((resolve, reject) => {
27
+ const el = document.createElement('link');
28
+ el.rel = 'stylesheet';
29
+ el.href = href;
30
+ load(el, resolve, reject, options);
31
+ });
32
+ }
33
+ //# sourceMappingURL=loaders.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loaders.js","sourceRoot":"","sources":["../../../src/browsers/loaders.ts"],"names":[],"mappings":"AAAA,SAAS,IAAI,CACX,EAAuC,EACvC,OAAyB,EACzB,MAAwB,EACxB,OAA2D;IAE3D,EAAE,CAAC,MAAM,GAAG,OAAO,CAAC;IACpB,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,EAAE;QACjB,EAAE,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,CAAC,CAAC,CAAC,CAAC;IACZ,CAAC,CAAC;IACF,MAAM,EAAE,UAAU,GAAG,EAAE,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;IAC1C,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAEtE,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,GAAW,EAAE,OAAgD;IACvF,eAAe;IACf,IAAI,QAAQ,CAAC,aAAa,CAAC,eAAe,GAAG,IAAI,CAAC,EAAE;QAClD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;KAC1B;IACD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC5C,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC;QACb,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAY,EAAE,OAAgD;IACvF,IAAI,QAAQ,CAAC,aAAa,CAAC,cAAc,IAAI,IAAI,CAAC,EAAE;QAClD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;KAC1B;IAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC1C,EAAE,CAAC,GAAG,GAAG,YAAY,CAAC;QACtB,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC;QACf,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Format bytes as human-readable text.
3
+ *
4
+ * @param bytes Number of bytes.
5
+ * @param si True to use metric (SI) units, aka powers of 1000. False to use
6
+ * binary (IEC), aka powers of 1024.
7
+ * @param dp Number of decimal places to display.
8
+ *
9
+ * @return Formatted string.
10
+ */
11
+ export declare function formatBytes(bytes: number, si?: boolean, dp?: number): string;
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Format bytes as human-readable text.
3
+ *
4
+ * @param bytes Number of bytes.
5
+ * @param si True to use metric (SI) units, aka powers of 1000. False to use
6
+ * binary (IEC), aka powers of 1024.
7
+ * @param dp Number of decimal places to display.
8
+ *
9
+ * @return Formatted string.
10
+ */
11
+ export function formatBytes(bytes, si = false, dp = 1) {
12
+ const thresh = si ? 1000 : 1024;
13
+ if (Math.abs(bytes) < thresh) {
14
+ return bytes + ' B';
15
+ }
16
+ const units = si
17
+ ? ['kB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB']
18
+ : ['KiB', 'MiB', 'GiB', 'TiB', 'PiB', 'EiB', 'ZiB', 'YiB'];
19
+ let u = -1;
20
+ const r = 10 ** dp;
21
+ do {
22
+ bytes /= thresh;
23
+ ++u;
24
+ } while (Math.round(Math.abs(bytes) * r) / r >= thresh && u < units.length - 1);
25
+ return bytes.toFixed(dp) + ' ' + units[u];
26
+ }
27
+ //# sourceMappingURL=formatBytes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatBytes.js","sourceRoot":"","sources":["../../../src/formats/formatBytes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,UAAU,WAAW,CAAC,KAAa,EAAE,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,CAAC;IAC3D,MAAM,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAEhC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,EAAE;QAC5B,OAAO,KAAK,GAAG,IAAI,CAAC;KACrB;IAED,MAAM,KAAK,GAAG,EAAE;QACd,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;QAClD,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAC7D,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACX,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;IAEnB,GAAG;QACD,KAAK,IAAI,MAAM,CAAC;QAChB,EAAE,CAAC,CAAC;KACL,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;IAEhF,OAAO,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC"}
@@ -0,0 +1,9 @@
1
+ export * from './arrays/index';
2
+ export * from './asyncs';
3
+ export * from './validations';
4
+ export * from './strings';
5
+ export * from './maths';
6
+ export * from './io';
7
+ export * from './browsers';
8
+ export * from './isomorphics';
9
+ export { formatBytes } from './formats/formatBytes';
@@ -0,0 +1,10 @@
1
+ export * from './arrays/index';
2
+ export * from './asyncs';
3
+ export * from './validations';
4
+ export * from './strings';
5
+ export * from './maths';
6
+ export * from './io';
7
+ export * from './browsers';
8
+ export * from './isomorphics';
9
+ export { formatBytes } from './formats/formatBytes';
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,SAAS,CAAC;AACxB,cAAc,MAAM,CAAC;AACrB,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAE9B,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1 @@
1
+ export * from './isBuffer';
@@ -0,0 +1,2 @@
1
+ export * from './isBuffer';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/io/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
@@ -0,0 +1,2 @@
1
+ /// <reference types="node" />
2
+ export declare function isBuffer(obj: any): obj is Buffer;
@@ -0,0 +1,8 @@
1
+ // https://github.com/feross/is-buffer/blob/master/index.js
2
+ export function isBuffer(obj) {
3
+ return (obj != null &&
4
+ obj.constructor != null &&
5
+ typeof obj.constructor.isBuffer === 'function' &&
6
+ obj.constructor.isBuffer(obj));
7
+ }
8
+ //# sourceMappingURL=isBuffer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isBuffer.js","sourceRoot":"","sources":["../../../src/io/isBuffer.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,MAAM,UAAU,QAAQ,CAAC,GAAQ;IAC/B,OAAO,CACL,GAAG,IAAI,IAAI;QACX,GAAG,CAAC,WAAW,IAAI,IAAI;QACvB,OAAO,GAAG,CAAC,WAAW,CAAC,QAAQ,KAAK,UAAU;QAC9C,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAC9B,CAAC;AACJ,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * isomorphic globalThis
3
+ *
4
+ * globalThis supported by ff 65, Chrome 71, Node 12, babel
5
+ *
6
+ * @see https://caniuse.com/#search=globalThis
7
+ * @see https://v8.dev/features/globalthis
8
+ */
9
+ export declare const getGlobalThis: () => typeof globalThis;
@@ -0,0 +1,21 @@
1
+ /**
2
+ * isomorphic globalThis
3
+ *
4
+ * globalThis supported by ff 65, Chrome 71, Node 12, babel
5
+ *
6
+ * @see https://caniuse.com/#search=globalThis
7
+ * @see https://v8.dev/features/globalthis
8
+ */
9
+ export const getGlobalThis = () => {
10
+ if (typeof globalThis !== 'undefined')
11
+ return globalThis;
12
+ if (typeof self !== 'undefined')
13
+ return self;
14
+ if (typeof window !== 'undefined')
15
+ return window;
16
+ if (typeof global !== 'undefined')
17
+ return global;
18
+ // if (typeof this !== 'undefined') return this;
19
+ throw new Error('Unable to locate global `this`');
20
+ };
21
+ //# sourceMappingURL=getGlobalThis.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getGlobalThis.js","sourceRoot":"","sources":["../../../src/isomorphics/getGlobalThis.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,GAAsB,EAAE;IACnD,IAAI,OAAO,UAAU,KAAK,WAAW;QAAE,OAAO,UAAU,CAAC;IACzD,IAAI,OAAO,IAAI,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IAC7C,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO,MAAM,CAAC;IACjD,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO,MAAa,CAAC;IACxD,gDAAgD;IAChD,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;AACpD,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ export * from './getGlobalThis';
@@ -0,0 +1,2 @@
1
+ export * from './getGlobalThis';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/isomorphics/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC"}
@@ -0,0 +1 @@
1
+ export * from './random';
@@ -0,0 +1,2 @@
1
+ export * from './random';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/maths/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare function createRandom(o?: {
2
+ seed?: string | number;
3
+ }): () => number;
@@ -0,0 +1,16 @@
1
+ /// javascript pseudo random
2
+ export function createRandom(o = {}) {
3
+ let seed = typeof o.seed === 'string' ? 0 : o.seed ?? 0;
4
+ if (typeof o.seed === 'string') {
5
+ let sum = 0;
6
+ for (let i = 0; i < o.seed.length; i++) {
7
+ sum += o.seed.charCodeAt(i);
8
+ }
9
+ seed = sum;
10
+ }
11
+ return () => {
12
+ const x = Math.sin(seed++) * 10000;
13
+ return x - Math.floor(x);
14
+ };
15
+ }
16
+ //# sourceMappingURL=random.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"random.js","sourceRoot":"","sources":["../../../src/maths/random.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAC5B,MAAM,UAAU,YAAY,CAAC,IAAgC,EAAE;IAC7D,IAAI,IAAI,GAAG,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;IACxD,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE;QAC9B,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACtC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;SAC7B;QACD,IAAI,GAAG,GAAG,CAAC;KACZ;IAED,OAAO,GAAG,EAAE;QACV,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC;QACnC,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare function pascalCase(input: string | string[]): string;
2
+ export declare function camelCase(input: string | string[], options?: {
3
+ pascalCase: boolean;
4
+ }): string;
@@ -0,0 +1,68 @@
1
+ // https://github.com/sindresorhus/camelcase/blob/master/index.js
2
+ function preserveCamelCase(string) {
3
+ let isLastCharLower = false;
4
+ let isLastCharUpper = false;
5
+ let isLastLastCharUpper = false;
6
+ for (let i = 0; i < string.length; i++) {
7
+ const character = string[i];
8
+ if (isLastCharLower && /[a-zA-Z]/.test(character) && character.toUpperCase() === character) {
9
+ string = string.slice(0, i) + '-' + string.slice(i);
10
+ isLastCharLower = false;
11
+ isLastLastCharUpper = isLastCharUpper;
12
+ isLastCharUpper = true;
13
+ i++;
14
+ }
15
+ else if (isLastCharUpper &&
16
+ isLastLastCharUpper &&
17
+ /[a-zA-Z]/.test(character) &&
18
+ character.toLowerCase() === character) {
19
+ string = string.slice(0, i - 1) + '-' + string.slice(i - 1);
20
+ isLastLastCharUpper = isLastCharUpper;
21
+ isLastCharUpper = false;
22
+ isLastCharLower = true;
23
+ }
24
+ else {
25
+ isLastCharLower = character.toLowerCase() === character && character.toUpperCase() !== character;
26
+ isLastLastCharUpper = isLastCharUpper;
27
+ isLastCharUpper = character.toUpperCase() === character && character.toLowerCase() !== character;
28
+ }
29
+ }
30
+ return string;
31
+ }
32
+ export function pascalCase(input) {
33
+ return camelCase(input, { pascalCase: true });
34
+ }
35
+ export function camelCase(input, options = {
36
+ pascalCase: false,
37
+ }) {
38
+ if (!(typeof input === 'string' || Array.isArray(input))) {
39
+ throw new TypeError('Expected the input to be `string | string[]`');
40
+ }
41
+ const postProcess = (x) => (options.pascalCase ? x.charAt(0).toUpperCase() + x.slice(1) : x);
42
+ if (Array.isArray(input)) {
43
+ input = input
44
+ .map((x) => x.trim())
45
+ .filter((x) => x.length)
46
+ .join('-');
47
+ }
48
+ else {
49
+ input = input.trim();
50
+ }
51
+ if (input.length === 0) {
52
+ return '';
53
+ }
54
+ if (input.length === 1) {
55
+ return options.pascalCase ? input.toUpperCase() : input.toLowerCase();
56
+ }
57
+ const hasUpperCase = input !== input.toLowerCase();
58
+ if (hasUpperCase) {
59
+ input = preserveCamelCase(input);
60
+ }
61
+ input = input
62
+ .replace(/^[_.\- ]+/, '')
63
+ .toLowerCase()
64
+ .replace(/[_.\- ]+(\w|$)/g, (_, p1) => p1.toUpperCase())
65
+ .replace(/\d+(\w|$)/g, (m) => m.toUpperCase());
66
+ return postProcess(input);
67
+ }
68
+ //# sourceMappingURL=camelCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"camelCase.js","sourceRoot":"","sources":["../../../src/strings/camelCase.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from './camelCase';
2
+ export * from './templates';
3
+ export * from './urljoin';
@@ -0,0 +1,4 @@
1
+ export * from './camelCase';
2
+ export * from './templates';
3
+ export * from './urljoin';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/strings/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * 替换类似于 JS 的模板字符串
3
+ *
4
+ * @example
5
+ * templateString('My name is ${name}',{name:'wener'})
6
+ */
7
+ export declare function templateString(template: string, getter: (v: string) => any): string;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * 替换类似于 JS 的模板字符串
3
+ *
4
+ * @example
5
+ * templateString('My name is ${name}',{name:'wener'})
6
+ */
7
+ export function templateString(template, getter) {
8
+ return template.replace(/\${(.*?)}/g, (_, g) => {
9
+ // variables[g.trim()]
10
+ // 支持路径 - 例如 a.b[0]
11
+ return getter(g.trim());
12
+ });
13
+ }
14
+ //# sourceMappingURL=templates.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templates.js","sourceRoot":"","sources":["../../../src/strings/templates.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,QAAgB,EAAE,MAA0B;IACzE,OAAO,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC7C,sBAAsB;QACtB,mBAAmB;QACnB,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function urljoin(...strArray: string[]): any;
2
+ export declare function urljoin(strArray: string[]): any;
@@ -0,0 +1,65 @@
1
+ /**
2
+ * @see {@link https://github.com/jfromaniello/url-join}
3
+ */
4
+ export function urljoin(...args) {
5
+ let input;
6
+ if (typeof args[0] === 'object') {
7
+ input = args[0];
8
+ }
9
+ else {
10
+ input = args;
11
+ }
12
+ return normalize(input);
13
+ }
14
+ function normalize(strArray) {
15
+ const resultArray = [];
16
+ if (strArray.length === 0) {
17
+ return '';
18
+ }
19
+ if (typeof strArray[0] !== 'string') {
20
+ throw new TypeError('Url must be a string. Received ' + strArray[0]);
21
+ }
22
+ // If the first part is a plain protocol, we combine it with the next part.
23
+ if (strArray[0].match(/^[^/:]+:\/*$/) && strArray.length > 1) {
24
+ const first = strArray.shift();
25
+ strArray[0] = first + strArray[0];
26
+ }
27
+ // There must be two or three slashes in the file protocol, two slashes in anything else.
28
+ if (strArray[0].match(/^file:\/\/\//)) {
29
+ strArray[0] = strArray[0].replace(/^([^/:]+):\/*/, '$1:///');
30
+ }
31
+ else {
32
+ strArray[0] = strArray[0].replace(/^([^/:]+):\/*/, '$1://');
33
+ }
34
+ for (let i = 0; i < strArray.length; i++) {
35
+ let component = strArray[i];
36
+ if (typeof component !== 'string') {
37
+ throw new TypeError('Url must be a string. Received ' + component);
38
+ }
39
+ if (component === '') {
40
+ continue;
41
+ }
42
+ if (i > 0) {
43
+ // Removing the starting slashes for each component but the first.
44
+ component = component.replace(/^[\/]+/, '');
45
+ }
46
+ if (i < strArray.length - 1) {
47
+ // Removing the ending slashes for each component but the last.
48
+ component = component.replace(/[\/]+$/, '');
49
+ }
50
+ else {
51
+ // For the last component we will combine multiple slashes to a single one.
52
+ component = component.replace(/[\/]+$/, '/');
53
+ }
54
+ resultArray.push(component);
55
+ }
56
+ let str = resultArray.join('/');
57
+ // Each input component is now separated by a single slash except the possible first plain protocol part.
58
+ // remove trailing slash before parameters or hash
59
+ str = str.replace(/\/(\?|&|#[^!])/g, '$1');
60
+ // replace ? in parameters with &
61
+ const parts = str.split('?');
62
+ str = parts.shift() + (parts.length > 0 ? '?' : '') + parts.join('&');
63
+ return str;
64
+ }
65
+ //# sourceMappingURL=urljoin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"urljoin.js","sourceRoot":"","sources":["../../../src/strings/urljoin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,5 @@
1
+ import { urljoin } from './urljoin';
2
+ test('join ext', () => {
3
+ expect(urljoin('http://wener.me/sub/', '/a/', '/hello.js')).toBe('http://wener.me/sub/a/hello.js');
4
+ });
5
+ //# sourceMappingURL=urljoin.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"urljoin.test.js","sourceRoot":"","sources":["../../../src/strings/urljoin.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,IAAI,CAAC,UAAU,EAAE,GAAG,EAAE;IACpB,MAAM,CAAC,OAAO,CAAC,sBAAsB,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;AACrG,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function assert(condition: any, msg?: string): asserts condition;
2
+ export declare function assertIsDefined<T>(val: T): asserts val is NonNullable<T>;
@@ -0,0 +1,13 @@
1
+ export function assert(condition, msg) {
2
+ // if (!condition) {
3
+ // throw new AssertionError(msg);
4
+ // }
5
+ console.assert(!condition, msg);
6
+ }
7
+ export function assertIsDefined(val) {
8
+ // if (val === undefined || val === null) {
9
+ // throw new AssertionError(`Expected 'val' to be defined, but received ${val}`);
10
+ // }
11
+ console.assert(val === undefined || val === null, 'Expected defined');
12
+ }
13
+ //# sourceMappingURL=asserts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asserts.js","sourceRoot":"","sources":["../../../src/validations/asserts.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,MAAM,CAAC,SAAc,EAAE,GAAY;IACjD,oBAAoB;IACpB,mCAAmC;IACnC,IAAI;IACJ,OAAO,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,eAAe,CAAI,GAAM;IACvC,2CAA2C;IAC3C,mFAAmF;IACnF,IAAI;IACJ,OAAO,CAAC,MAAM,CAAC,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE,kBAAkB,CAAC,CAAC;AACxE,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './asserts';
2
+ export * from './isDefined';
3
+ export * from './isEmptyObject';
4
+ export * from './isClass';
@@ -0,0 +1,5 @@
1
+ export * from './asserts';
2
+ export * from './isDefined';
3
+ export * from './isEmptyObject';
4
+ export * from './isClass';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/validations/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function isClass(func: any): boolean;
@@ -0,0 +1,4 @@
1
+ export function isClass(func) {
2
+ return typeof func === 'function' && /^class\s/.test(Function.prototype.toString.call(func));
3
+ }
4
+ //# sourceMappingURL=isClass.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isClass.js","sourceRoot":"","sources":["../../../src/validations/isClass.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,OAAO,CAAC,IAAS;IAC/B,OAAO,OAAO,IAAI,KAAK,UAAU,IAAI,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AAC/F,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function isDefined<T = any>(v: T): v is NonNullable<T>;
@@ -0,0 +1,4 @@
1
+ export function isDefined(v) {
2
+ return v !== null && v !== undefined;
3
+ }
4
+ //# sourceMappingURL=isDefined.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isDefined.js","sourceRoot":"","sources":["../../../src/validations/isDefined.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,SAAS,CAAU,CAAI;IACrC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,SAAS,CAAC;AACvC,CAAC"}