@visactor/vutils 1.0.24 → 1.0.26

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 (452) hide show
  1. package/README.zh-CN.md +12 -0
  2. package/REGRESSION.md +36 -0
  3. package/cjs/angle.d.ts +61 -0
  4. package/cjs/angle.js +73 -7
  5. package/cjs/angle.js.map +1 -1
  6. package/cjs/color/Color.d.ts +3 -0
  7. package/cjs/color/Color.js +64 -10
  8. package/cjs/color/Color.js.map +1 -1
  9. package/cjs/color/hexToRgb.d.ts +5 -0
  10. package/cjs/color/hexToRgb.js +5 -0
  11. package/cjs/color/hexToRgb.js.map +1 -1
  12. package/cjs/color/rgbToHsl.js +5 -1
  13. package/cjs/color/rgbToHsl.js.map +1 -1
  14. package/cjs/common/array.d.ts +43 -0
  15. package/cjs/common/array.js +44 -0
  16. package/cjs/common/array.js.map +1 -1
  17. package/cjs/common/bisect.d.ts +21 -0
  18. package/cjs/common/bisect.js +29 -0
  19. package/cjs/common/bisect.js.map +1 -1
  20. package/cjs/common/bootstrap.d.ts +5 -0
  21. package/cjs/common/bootstrap.js +22 -0
  22. package/cjs/common/bootstrap.js.map +1 -0
  23. package/cjs/common/clone.js +6 -0
  24. package/cjs/common/clone.js.map +1 -1
  25. package/cjs/common/cloneDeep.js +4 -1
  26. package/cjs/common/cloneDeep.js.map +1 -1
  27. package/cjs/common/correlation.d.ts +3 -0
  28. package/cjs/common/correlation.js +83 -0
  29. package/cjs/common/correlation.js.map +1 -0
  30. package/cjs/common/debounce.js +22 -4
  31. package/cjs/common/debounce.js.map +1 -1
  32. package/cjs/common/deviation.js +1 -2
  33. package/cjs/common/ecdf.d.ts +8 -0
  34. package/cjs/common/ecdf.js +11 -2
  35. package/cjs/common/ecdf.js.map +1 -1
  36. package/cjs/common/extent.d.ts +4 -0
  37. package/cjs/common/extent.js +4 -2
  38. package/cjs/common/extent.js.map +1 -1
  39. package/cjs/common/field.d.ts +6 -0
  40. package/cjs/common/field.js +3 -0
  41. package/cjs/common/field.js.map +1 -1
  42. package/cjs/common/has.d.ts +17 -0
  43. package/cjs/common/has.js +18 -1
  44. package/cjs/common/has.js.map +1 -1
  45. package/cjs/common/index.d.ts +5 -0
  46. package/cjs/common/index.js +34 -6
  47. package/cjs/common/index.js.map +1 -1
  48. package/cjs/common/interpolate.js +16 -3
  49. package/cjs/common/interpolate.js.map +1 -1
  50. package/cjs/common/isBase64.d.ts +6 -0
  51. package/cjs/common/isBase64.js +6 -0
  52. package/cjs/common/isBase64.js.map +1 -1
  53. package/cjs/common/isBoolean.d.ts +13 -0
  54. package/cjs/common/isBoolean.js +13 -1
  55. package/cjs/common/isBoolean.js.map +1 -1
  56. package/cjs/common/isEmpty.js +11 -1
  57. package/cjs/common/isEmpty.js.map +1 -1
  58. package/cjs/common/isEqual.js +19 -7
  59. package/cjs/common/isEqual.js.map +1 -1
  60. package/cjs/common/isFunction.d.ts +25 -0
  61. package/cjs/common/isFunction.js +27 -2
  62. package/cjs/common/isFunction.js.map +1 -1
  63. package/cjs/common/isNull.js +2 -1
  64. package/cjs/common/isNumber.d.ts +23 -0
  65. package/cjs/common/isNumber.js +23 -1
  66. package/cjs/common/isNumber.js.map +1 -1
  67. package/cjs/common/isNumeric.d.ts +25 -0
  68. package/cjs/common/isNumeric.js +25 -0
  69. package/cjs/common/isNumeric.js.map +1 -1
  70. package/cjs/common/isObject.d.ts +21 -0
  71. package/cjs/common/isObject.js +22 -0
  72. package/cjs/common/isObject.js.map +1 -1
  73. package/cjs/common/isObjectLike.d.ts +20 -0
  74. package/cjs/common/isObjectLike.js +21 -0
  75. package/cjs/common/isObjectLike.js.map +1 -1
  76. package/cjs/common/isPlainObject.d.ts +25 -0
  77. package/cjs/common/isPlainObject.js.map +1 -1
  78. package/cjs/common/isPrototype.js +1 -1
  79. package/cjs/common/isRegExp.js +1 -1
  80. package/cjs/common/isShallowEqual.js +1 -0
  81. package/cjs/common/isShallowEqual.js.map +1 -1
  82. package/cjs/common/isString.d.ts +13 -0
  83. package/cjs/common/isString.js +13 -1
  84. package/cjs/common/isString.js.map +1 -1
  85. package/cjs/common/isType.d.ts +6 -0
  86. package/cjs/common/isType.js +6 -0
  87. package/cjs/common/isType.js.map +1 -1
  88. package/cjs/common/isValidNumber.js.map +1 -1
  89. package/cjs/common/isValidUrl.js.map +1 -1
  90. package/cjs/common/kde.d.ts +28 -0
  91. package/cjs/common/kde.js +29 -5
  92. package/cjs/common/kde.js.map +1 -1
  93. package/cjs/common/mean.d.ts +2 -0
  94. package/cjs/common/mean.js +25 -0
  95. package/cjs/common/mean.js.map +1 -0
  96. package/cjs/common/merge.js +20 -4
  97. package/cjs/common/merge.js.map +1 -1
  98. package/cjs/common/mixin.js +14 -3
  99. package/cjs/common/mixin.js.map +1 -1
  100. package/cjs/common/normalQuantile.d.ts +5 -0
  101. package/cjs/common/normalQuantile.js +21 -0
  102. package/cjs/common/normalQuantile.js.map +1 -0
  103. package/cjs/common/number.d.ts +24 -0
  104. package/cjs/common/number.js +24 -1
  105. package/cjs/common/number.js.map +1 -1
  106. package/cjs/common/pad.d.ts +21 -0
  107. package/cjs/common/pad.js +21 -1
  108. package/cjs/common/pad.js.map +1 -1
  109. package/cjs/common/random.d.ts +3 -0
  110. package/cjs/common/random.js +13 -0
  111. package/cjs/common/random.js.map +1 -1
  112. package/cjs/common/regression-bootstrap.d.ts +14 -0
  113. package/cjs/common/regression-bootstrap.js +37 -0
  114. package/cjs/common/regression-bootstrap.js.map +1 -0
  115. package/cjs/common/regression-linear.d.ts +5 -0
  116. package/cjs/common/regression-linear.js +28 -39
  117. package/cjs/common/regression-linear.js.map +1 -1
  118. package/cjs/common/regression-logistic.d.ts +6 -0
  119. package/cjs/common/regression-logistic.js +25 -14
  120. package/cjs/common/regression-logistic.js.map +1 -1
  121. package/cjs/common/regression-lowess.d.ts +11 -1
  122. package/cjs/common/regression-lowess.js +125 -118
  123. package/cjs/common/regression-lowess.js.map +1 -1
  124. package/cjs/common/regression-polynomial.d.ts +1 -0
  125. package/cjs/common/regression-polynomial.js +24 -94
  126. package/cjs/common/regression-polynomial.js.map +1 -1
  127. package/cjs/common/regression-solver.d.ts +26 -0
  128. package/cjs/common/regression-solver.js +180 -0
  129. package/cjs/common/regression-solver.js.map +1 -0
  130. package/cjs/common/regression-utils.d.ts +13 -1
  131. package/cjs/common/regression-utils.js +27 -12
  132. package/cjs/common/regression-utils.js.map +1 -1
  133. package/cjs/common/throttle.js +3 -0
  134. package/cjs/common/throttle.js.map +1 -1
  135. package/cjs/common/toDate.js +22 -3
  136. package/cjs/common/toDate.js.map +1 -1
  137. package/cjs/common/uuid.d.ts +7 -0
  138. package/cjs/common/uuid.js +15 -1
  139. package/cjs/common/uuid.js.map +1 -1
  140. package/cjs/data-structure/bounds.d.ts +101 -0
  141. package/cjs/data-structure/bounds.js +74 -7
  142. package/cjs/data-structure/bounds.js.map +1 -1
  143. package/cjs/data-structure/hashTable.d.ts +4 -0
  144. package/cjs/data-structure/hashTable.js +11 -2
  145. package/cjs/data-structure/hashTable.js.map +1 -1
  146. package/cjs/data-structure/index.js +6 -2
  147. package/cjs/data-structure/index.js.map +1 -1
  148. package/cjs/data-structure/matrix.d.ts +91 -0
  149. package/cjs/data-structure/matrix.js +52 -4
  150. package/cjs/data-structure/matrix.js.map +1 -1
  151. package/cjs/data-structure/point.d.ts +3 -0
  152. package/cjs/data-structure/point.js +5 -1
  153. package/cjs/data-structure/point.js.map +1 -1
  154. package/cjs/dom.d.ts +36 -0
  155. package/cjs/dom.js +43 -1
  156. package/cjs/dom.js.map +1 -1
  157. package/cjs/fmin/blas1.js +10 -1
  158. package/cjs/fmin/blas1.js.map +1 -1
  159. package/cjs/fmin/conjugate-gradient.js +18 -3
  160. package/cjs/fmin/conjugate-gradient.js.map +1 -1
  161. package/cjs/fmin/linesearch.js +15 -1
  162. package/cjs/fmin/linesearch.js.map +1 -1
  163. package/cjs/fmin/nelder-mead.d.ts +1 -0
  164. package/cjs/fmin/nelder-mead.js +30 -10
  165. package/cjs/fmin/nelder-mead.js.map +1 -1
  166. package/cjs/format/number/formatDecimal.js +9 -1
  167. package/cjs/format/number/formatDecimal.js.map +1 -1
  168. package/cjs/format/number/formatGroup.js +7 -0
  169. package/cjs/format/number/formatGroup.js.map +1 -1
  170. package/cjs/format/number/formatPrefixAuto.js +8 -0
  171. package/cjs/format/number/formatPrefixAuto.js.map +1 -1
  172. package/cjs/format/number/formatRounded.js +7 -0
  173. package/cjs/format/number/formatRounded.js.map +1 -1
  174. package/cjs/format/number/formatTrim.js +7 -0
  175. package/cjs/format/number/formatTrim.js.map +1 -1
  176. package/cjs/format/number/number.js +39 -9
  177. package/cjs/format/number/number.js.map +1 -1
  178. package/cjs/format/time.js +23 -6
  179. package/cjs/format/time.js.map +1 -1
  180. package/cjs/geo/circle-intersection.d.ts +12 -0
  181. package/cjs/geo/circle-intersection.js +54 -9
  182. package/cjs/geo/circle-intersection.js.map +1 -1
  183. package/cjs/geo/constant.js +8 -1
  184. package/cjs/geo/constant.js.map +1 -1
  185. package/cjs/geo/invariant.d.ts +22 -0
  186. package/cjs/geo/invariant.js +24 -1
  187. package/cjs/geo/invariant.js.map +1 -1
  188. package/cjs/graphics/algorithm/aabb.js +7 -3
  189. package/cjs/graphics/algorithm/aabb.js.map +1 -1
  190. package/cjs/graphics/algorithm/intersect.d.ts +48 -0
  191. package/cjs/graphics/algorithm/intersect.js +75 -7
  192. package/cjs/graphics/algorithm/intersect.js.map +1 -1
  193. package/cjs/graphics/bounds-util.js +4 -2
  194. package/cjs/graphics/bounds-util.js.map +1 -1
  195. package/cjs/graphics/graph-util.js +4 -0
  196. package/cjs/graphics/graph-util.js.map +1 -1
  197. package/cjs/graphics/index.js +7 -4
  198. package/cjs/graphics/index.js.map +1 -1
  199. package/cjs/graphics/polygon.d.ts +12 -0
  200. package/cjs/graphics/polygon.js +28 -5
  201. package/cjs/graphics/polygon.js.map +1 -1
  202. package/cjs/graphics/text/measure/interface.d.ts +12 -0
  203. package/cjs/graphics/text/measure/textMeasure.d.ts +23 -0
  204. package/cjs/graphics/text/measure/textMeasure.js +50 -22
  205. package/cjs/graphics/text/measure/textMeasure.js.map +1 -1
  206. package/cjs/graphics/text/measure/util.js +1 -0
  207. package/cjs/graphics/text/measure/util.js.map +1 -1
  208. package/cjs/graphics/text/stringWidth.js +7 -3
  209. package/cjs/graphics/text/stringWidth.js.map +1 -1
  210. package/cjs/index.d.ts +6 -0
  211. package/cjs/index.js +19 -4
  212. package/cjs/index.js.map +1 -1
  213. package/cjs/logger.js +12 -2
  214. package/cjs/logger.js.map +1 -1
  215. package/cjs/lru.js +14 -6
  216. package/cjs/lru.js.map +1 -1
  217. package/cjs/math.d.ts +9 -0
  218. package/cjs/math.js +10 -0
  219. package/cjs/math.js.map +1 -1
  220. package/cjs/padding.d.ts +5 -0
  221. package/cjs/padding.js +5 -0
  222. package/cjs/padding.js.map +1 -1
  223. package/cjs/time/formatUtils.d.ts +6 -0
  224. package/cjs/time/formatUtils.js +7 -0
  225. package/cjs/time/formatUtils.js.map +1 -1
  226. package/dist/index.js +2035 -411
  227. package/dist/index.min.js +128 -1
  228. package/es/angle.d.ts +61 -0
  229. package/es/angle.js +66 -10
  230. package/es/angle.js.map +1 -1
  231. package/es/color/Color.d.ts +3 -0
  232. package/es/color/Color.js +64 -9
  233. package/es/color/Color.js.map +1 -1
  234. package/es/color/hexToRgb.d.ts +5 -0
  235. package/es/color/hexToRgb.js +5 -0
  236. package/es/color/hexToRgb.js.map +1 -1
  237. package/es/color/rgbToHsl.js +5 -1
  238. package/es/color/rgbToHsl.js.map +1 -1
  239. package/es/common/array.d.ts +43 -0
  240. package/es/common/array.js +44 -8
  241. package/es/common/array.js.map +1 -1
  242. package/es/common/bisect.d.ts +21 -0
  243. package/es/common/bisect.js +29 -4
  244. package/es/common/bisect.js.map +1 -1
  245. package/es/common/bootstrap.d.ts +5 -0
  246. package/es/common/bootstrap.js +14 -0
  247. package/es/common/bootstrap.js.map +1 -0
  248. package/es/common/clone.js +6 -0
  249. package/es/common/clone.js.map +1 -1
  250. package/es/common/cloneDeep.js +4 -1
  251. package/es/common/cloneDeep.js.map +1 -1
  252. package/es/common/correlation.d.ts +3 -0
  253. package/es/common/correlation.js +77 -0
  254. package/es/common/correlation.js.map +1 -0
  255. package/es/common/debounce.js +22 -4
  256. package/es/common/debounce.js.map +1 -1
  257. package/es/common/deviation.js +1 -2
  258. package/es/common/ecdf.d.ts +8 -0
  259. package/es/common/ecdf.js +11 -1
  260. package/es/common/ecdf.js.map +1 -1
  261. package/es/common/extent.d.ts +4 -0
  262. package/es/common/extent.js +8 -3
  263. package/es/common/extent.js.map +1 -1
  264. package/es/common/field.d.ts +6 -0
  265. package/es/common/field.js +3 -1
  266. package/es/common/field.js.map +1 -1
  267. package/es/common/has.d.ts +17 -0
  268. package/es/common/has.js +18 -1
  269. package/es/common/has.js.map +1 -1
  270. package/es/common/index.d.ts +5 -0
  271. package/es/common/index.js +24 -0
  272. package/es/common/index.js.map +1 -1
  273. package/es/common/interpolate.js +16 -3
  274. package/es/common/interpolate.js.map +1 -1
  275. package/es/common/isBase64.d.ts +6 -0
  276. package/es/common/isBase64.js +6 -0
  277. package/es/common/isBase64.js.map +1 -1
  278. package/es/common/isBoolean.d.ts +13 -0
  279. package/es/common/isBoolean.js +13 -1
  280. package/es/common/isBoolean.js.map +1 -1
  281. package/es/common/isEmpty.js +11 -1
  282. package/es/common/isEmpty.js.map +1 -1
  283. package/es/common/isEqual.js +19 -7
  284. package/es/common/isEqual.js.map +1 -1
  285. package/es/common/isFunction.d.ts +25 -0
  286. package/es/common/isFunction.js +27 -2
  287. package/es/common/isFunction.js.map +1 -1
  288. package/es/common/isNull.js +2 -1
  289. package/es/common/isNumber.d.ts +23 -0
  290. package/es/common/isNumber.js +23 -1
  291. package/es/common/isNumber.js.map +1 -1
  292. package/es/common/isNumeric.d.ts +25 -0
  293. package/es/common/isNumeric.js +25 -0
  294. package/es/common/isNumeric.js.map +1 -1
  295. package/es/common/isObject.d.ts +21 -0
  296. package/es/common/isObject.js +22 -0
  297. package/es/common/isObject.js.map +1 -1
  298. package/es/common/isObjectLike.d.ts +20 -0
  299. package/es/common/isObjectLike.js +21 -0
  300. package/es/common/isObjectLike.js.map +1 -1
  301. package/es/common/isPlainObject.d.ts +25 -0
  302. package/es/common/isPlainObject.js +26 -0
  303. package/es/common/isPlainObject.js.map +1 -1
  304. package/es/common/isPrototype.js +1 -1
  305. package/es/common/isRegExp.js +1 -1
  306. package/es/common/isShallowEqual.js +1 -0
  307. package/es/common/isShallowEqual.js.map +1 -1
  308. package/es/common/isString.d.ts +13 -0
  309. package/es/common/isString.js +13 -1
  310. package/es/common/isString.js.map +1 -1
  311. package/es/common/isType.d.ts +6 -0
  312. package/es/common/isType.js +6 -0
  313. package/es/common/isType.js.map +1 -1
  314. package/es/common/isValidNumber.js.map +1 -1
  315. package/es/common/isValidUrl.js.map +1 -1
  316. package/es/common/kde.d.ts +28 -0
  317. package/es/common/kde.js +29 -7
  318. package/es/common/kde.js.map +1 -1
  319. package/es/common/mean.d.ts +2 -0
  320. package/es/common/mean.js +19 -0
  321. package/es/common/mean.js.map +1 -0
  322. package/es/common/merge.js +22 -5
  323. package/es/common/merge.js.map +1 -1
  324. package/es/common/mixin.js +14 -3
  325. package/es/common/mixin.js.map +1 -1
  326. package/es/common/normalQuantile.d.ts +5 -0
  327. package/es/common/normalQuantile.js +15 -0
  328. package/es/common/normalQuantile.js.map +1 -0
  329. package/es/common/number.d.ts +24 -0
  330. package/es/common/number.js +24 -2
  331. package/es/common/number.js.map +1 -1
  332. package/es/common/pad.d.ts +21 -0
  333. package/es/common/pad.js +21 -1
  334. package/es/common/pad.js.map +1 -1
  335. package/es/common/random.d.ts +3 -0
  336. package/es/common/random.js +13 -1
  337. package/es/common/random.js.map +1 -1
  338. package/es/common/regression-bootstrap.d.ts +14 -0
  339. package/es/common/regression-bootstrap.js +31 -0
  340. package/es/common/regression-bootstrap.js.map +1 -0
  341. package/es/common/regression-linear.d.ts +5 -0
  342. package/es/common/regression-linear.js +25 -39
  343. package/es/common/regression-linear.js.map +1 -1
  344. package/es/common/regression-logistic.d.ts +6 -0
  345. package/es/common/regression-logistic.js +24 -16
  346. package/es/common/regression-logistic.js.map +1 -1
  347. package/es/common/regression-lowess.d.ts +11 -1
  348. package/es/common/regression-lowess.js +120 -118
  349. package/es/common/regression-lowess.js.map +1 -1
  350. package/es/common/regression-polynomial.d.ts +1 -0
  351. package/es/common/regression-polynomial.js +21 -89
  352. package/es/common/regression-polynomial.js.map +1 -1
  353. package/es/common/regression-solver.d.ts +26 -0
  354. package/es/common/regression-solver.js +168 -0
  355. package/es/common/regression-solver.js.map +1 -0
  356. package/es/common/regression-utils.d.ts +13 -1
  357. package/es/common/regression-utils.js +18 -9
  358. package/es/common/regression-utils.js.map +1 -1
  359. package/es/common/throttle.js +3 -0
  360. package/es/common/throttle.js.map +1 -1
  361. package/es/common/toDate.js +23 -3
  362. package/es/common/toDate.js.map +1 -1
  363. package/es/common/uuid.d.ts +7 -0
  364. package/es/common/uuid.js +15 -1
  365. package/es/common/uuid.js.map +1 -1
  366. package/es/data-structure/bounds.d.ts +101 -0
  367. package/es/data-structure/bounds.js +74 -8
  368. package/es/data-structure/bounds.js.map +1 -1
  369. package/es/data-structure/hashTable.d.ts +4 -0
  370. package/es/data-structure/hashTable.js +11 -2
  371. package/es/data-structure/hashTable.js.map +1 -1
  372. package/es/data-structure/index.js +2 -0
  373. package/es/data-structure/index.js.map +1 -1
  374. package/es/data-structure/matrix.d.ts +91 -0
  375. package/es/data-structure/matrix.js +52 -5
  376. package/es/data-structure/matrix.js.map +1 -1
  377. package/es/data-structure/point.d.ts +3 -0
  378. package/es/data-structure/point.js +5 -1
  379. package/es/data-structure/point.js.map +1 -1
  380. package/es/dom.d.ts +36 -0
  381. package/es/dom.js +43 -8
  382. package/es/dom.js.map +1 -1
  383. package/es/fmin/blas1.js +10 -0
  384. package/es/fmin/blas1.js.map +1 -1
  385. package/es/fmin/conjugate-gradient.js +18 -2
  386. package/es/fmin/conjugate-gradient.js.map +1 -1
  387. package/es/fmin/linesearch.js +15 -0
  388. package/es/fmin/linesearch.js.map +1 -1
  389. package/es/fmin/nelder-mead.d.ts +1 -0
  390. package/es/fmin/nelder-mead.js +29 -9
  391. package/es/fmin/nelder-mead.js.map +1 -1
  392. package/es/format/number/formatDecimal.js +9 -1
  393. package/es/format/number/formatDecimal.js.map +1 -1
  394. package/es/format/number/formatGroup.js +7 -0
  395. package/es/format/number/formatGroup.js.map +1 -1
  396. package/es/format/number/formatPrefixAuto.js +8 -0
  397. package/es/format/number/formatPrefixAuto.js.map +1 -1
  398. package/es/format/number/formatRounded.js +7 -0
  399. package/es/format/number/formatRounded.js.map +1 -1
  400. package/es/format/number/formatTrim.js +7 -0
  401. package/es/format/number/formatTrim.js.map +1 -1
  402. package/es/format/number/number.js +40 -8
  403. package/es/format/number/number.js.map +1 -1
  404. package/es/format/time.js +23 -5
  405. package/es/format/time.js.map +1 -1
  406. package/es/geo/circle-intersection.d.ts +12 -0
  407. package/es/geo/circle-intersection.js +54 -14
  408. package/es/geo/circle-intersection.js.map +1 -1
  409. package/es/geo/constant.js +8 -0
  410. package/es/geo/constant.js.map +1 -1
  411. package/es/geo/invariant.d.ts +22 -0
  412. package/es/geo/invariant.js +24 -0
  413. package/es/geo/invariant.js.map +1 -1
  414. package/es/graphics/algorithm/aabb.js +7 -3
  415. package/es/graphics/algorithm/aabb.js.map +1 -1
  416. package/es/graphics/algorithm/intersect.d.ts +48 -0
  417. package/es/graphics/algorithm/intersect.js +75 -12
  418. package/es/graphics/algorithm/intersect.js.map +1 -1
  419. package/es/graphics/bounds-util.js +4 -2
  420. package/es/graphics/bounds-util.js.map +1 -1
  421. package/es/graphics/graph-util.js +4 -0
  422. package/es/graphics/graph-util.js.map +1 -1
  423. package/es/graphics/index.js +2 -0
  424. package/es/graphics/index.js.map +1 -1
  425. package/es/graphics/polygon.d.ts +12 -0
  426. package/es/graphics/polygon.js +28 -6
  427. package/es/graphics/polygon.js.map +1 -1
  428. package/es/graphics/text/measure/interface.d.ts +12 -0
  429. package/es/graphics/text/measure/textMeasure.d.ts +23 -0
  430. package/es/graphics/text/measure/textMeasure.js +46 -21
  431. package/es/graphics/text/measure/textMeasure.js.map +1 -1
  432. package/es/graphics/text/measure/util.js +1 -0
  433. package/es/graphics/text/measure/util.js.map +1 -1
  434. package/es/graphics/text/stringWidth.js +7 -3
  435. package/es/graphics/text/stringWidth.js.map +1 -1
  436. package/es/index.d.ts +6 -0
  437. package/es/index.js +15 -1
  438. package/es/index.js.map +1 -1
  439. package/es/logger.js +12 -1
  440. package/es/logger.js.map +1 -1
  441. package/es/lru.js +14 -6
  442. package/es/lru.js.map +1 -1
  443. package/es/math.d.ts +9 -0
  444. package/es/math.js +10 -1
  445. package/es/math.js.map +1 -1
  446. package/es/padding.d.ts +5 -0
  447. package/es/padding.js +5 -1
  448. package/es/padding.js.map +1 -1
  449. package/es/time/formatUtils.d.ts +6 -0
  450. package/es/time/formatUtils.js +7 -1
  451. package/es/time/formatUtils.js.map +1 -1
  452. package/package.json +4 -3
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["// type check\nexport { default as isBoolean } from './isBoolean';\nexport { default as isFunction } from './isFunction';\nexport { default as isNil } from './isNil';\nexport { default as isNull } from './isNull';\nexport { default as isValid } from './isValid';\nexport { default as isObject } from './isObject';\nexport { default as isObjectLike } from './isObjectLike';\nexport { default as isPlainObject } from './isPlainObject';\nexport { default as isType } from './isType';\nexport { default as isUndefined } from './isUndefined';\nexport { default as isString } from './isString';\nexport { default as isArray } from './isArray';\nexport { default as isArrayLike } from './isArrayLike';\nexport { default as isDate } from './isDate';\nexport { default as isNumber } from './isNumber';\nexport { default as isNumeric } from './isNumeric';\nexport { default as isValidNumber } from './isValidNumber';\nexport { default as isValidUrl } from './isValidUrl';\nexport { default as isRegExp } from './isRegExp';\nexport { default as isBase64 } from './isBase64';\n\nexport { default as isEmpty } from './isEmpty';\n\n// object\nexport { default as get } from './get';\nexport { default as has } from './has';\nexport { default as clone } from './clone';\nexport { default as cloneDeep } from './cloneDeep';\nexport { default as merge, baseMerge } from './merge';\nexport { default as pick } from './pick';\nexport { default as pickWithout } from './pickWithout';\nexport { isEqual } from './isEqual';\nexport { isShallowEqual } from './isShallowEqual';\nexport * from './mixin';\n\n// array\nexport * from './array';\nexport { range } from './range';\nexport { ascending } from './ascending';\nexport * from './quantileSorted';\nexport { bisect, findZeroOfFunction, binaryFuzzySearch, binaryFuzzySearchInNumberRange } from './bisect';\nexport { deviation } from './deviation';\nexport { median } from './median';\nexport { variance } from './variance';\n\n// tick\nexport { tickStep } from './tickStep';\n\n// number\nexport * from './number';\n\n// function\nexport { default as constant } from './constant';\nexport { memoize } from './memoize';\n\n// pad\nexport { default as pad } from './pad';\nexport { default as truncate } from './truncate';\n\n// uuid\nexport { default as uuid } from './uuid';\n\n// clamp\nexport { default as clamp } from './clamp';\nexport { default as clampRange } from './clampRange';\nexport { clamper } from './clamper';\n\n// debounce & throttle\nexport { default as debounce } from './debounce';\nexport { default as throttle } from './throttle';\n\n// interpolate\nexport * from './interpolate';\n\n// type convert\nexport { toDate } from './toDate';\nexport { toNumber } from './toNumber';\nexport { toValidNumber } from './toValidNumber';\n\n// string\nexport { default as lowerFirst } from './lowerFirst';\nexport { default as upperFirst } from './upperFirst';\n\n// string format\nexport { default as substitute } from './substitute';\n\nexport * from './random';\nexport * from './field';\nexport * from './toPercent';\nexport * from './zero';\nexport * from './extent';\nexport * from './regression-linear';\nexport * from './regression-logistic';\nexport * from './regression-lowess';\nexport * from './regression-polynomial';\nexport * from './kde';\nexport * from './ecdf';\n"]}
1
+ {"version":3,"sources":["../src/common/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["// type check\nexport { default as isBoolean } from './isBoolean';\nexport { default as isFunction } from './isFunction';\nexport { default as isNil } from './isNil';\nexport { default as isNull } from './isNull';\nexport { default as isValid } from './isValid';\nexport { default as isObject } from './isObject';\nexport { default as isObjectLike } from './isObjectLike';\nexport { default as isPlainObject } from './isPlainObject';\nexport { default as isType } from './isType';\nexport { default as isUndefined } from './isUndefined';\nexport { default as isString } from './isString';\nexport { default as isArray } from './isArray';\nexport { default as isArrayLike } from './isArrayLike';\nexport { default as isDate } from './isDate';\nexport { default as isNumber } from './isNumber';\nexport { default as isNumeric } from './isNumeric';\nexport { default as isValidNumber } from './isValidNumber';\nexport { default as isValidUrl } from './isValidUrl';\nexport { default as isRegExp } from './isRegExp';\nexport { default as isBase64 } from './isBase64';\n\nexport { default as isEmpty } from './isEmpty';\n\n// object\nexport { default as get } from './get';\nexport { default as has } from './has';\nexport { default as clone } from './clone';\nexport { default as cloneDeep } from './cloneDeep';\nexport { default as merge, baseMerge } from './merge';\nexport { default as pick } from './pick';\nexport { default as pickWithout } from './pickWithout';\nexport { isEqual } from './isEqual';\nexport { isShallowEqual } from './isShallowEqual';\nexport * from './mixin';\n\n// array\nexport * from './array';\nexport { range } from './range';\nexport { ascending } from './ascending';\nexport * from './quantileSorted';\nexport { normalQuantile } from './normalQuantile';\nexport { bisect, findZeroOfFunction, binaryFuzzySearch, binaryFuzzySearchInNumberRange } from './bisect';\nexport { deviation } from './deviation';\nexport { median } from './median';\nexport { variance } from './variance';\n\n// tick\nexport { tickStep } from './tickStep';\n\n// number\nexport * from './number';\n\n// function\nexport { default as constant } from './constant';\nexport { memoize } from './memoize';\n\n// pad\nexport { default as pad } from './pad';\nexport { default as truncate } from './truncate';\n\n// uuid\nexport { default as uuid } from './uuid';\n\n// clamp\nexport { default as clamp } from './clamp';\nexport { default as clampRange } from './clampRange';\nexport { clamper } from './clamper';\n\n// debounce & throttle\nexport { default as debounce } from './debounce';\nexport { default as throttle } from './throttle';\n\n// interpolate\nexport * from './interpolate';\n\n// type convert\nexport { toDate } from './toDate';\nexport { toNumber } from './toNumber';\nexport { toValidNumber } from './toValidNumber';\n\n// string\nexport { default as lowerFirst } from './lowerFirst';\nexport { default as upperFirst } from './upperFirst';\n\n// string format\nexport { default as substitute } from './substitute';\n\nexport * from './random';\nexport * from './field';\nexport * from './toPercent';\nexport * from './zero';\nexport * from './extent';\nexport * from './regression-linear';\nexport * from './regression-logistic';\nexport * from './regression-lowess';\nexport * from './regression-polynomial';\nexport * from './kde';\nexport * from './ecdf';\n\nexport * from './correlation';\nexport * from './mean';\nexport * from './bootstrap';\nexport * from './regression-bootstrap';\n"]}
@@ -37,13 +37,26 @@ function one(b) {
37
37
 
38
38
  function interpolateString(a, b) {
39
39
  let am, bm, bs, bi = reA.lastIndex = reB.lastIndex = 0, i = -1;
40
+ // scan index for next number in b
41
+ // index in s
40
42
  const s = [], q = [];
41
- for (a += "", b += ""; (am = reA.exec(a)) && (bm = reB.exec(b)); ) (bs = bm.index) > bi && (bs = b.slice(bi, bs),
42
- s[i] ? s[i] += bs : s[++i] = bs), (am = am[0]) === (bm = bm[0]) ? s[i] ? s[i] += bm : s[++i] = bm : (s[++i] = null,
43
- q.push({
43
+ // string constants and placeholders
44
+ // Interpolate pairs of numbers in a & b.
45
+ for (// number interpolators
46
+ // Coerce inputs to strings.
47
+ a += "", b += ""; (am = reA.exec(a)) && (bm = reB.exec(b)); ) (bs = bm.index) > bi && (
48
+ // a string precedes the next number in b
49
+ bs = b.slice(bi, bs), s[i] ? s[i] += bs : s[++i] = bs), (am = am[0]) === (bm = bm[0]) ?
50
+ // numbers in a & b match
51
+ s[i] ? s[i] += bm : s[++i] = bm : (
52
+ // interpolate non-matching numbers
53
+ s[++i] = null, q.push({
44
54
  i: i,
45
55
  x: interpolateNumber(am, bm)
46
56
  })), bi = reB.lastIndex;
57
+ // Add remains of b.
58
+ // Special optimization for only a single match.
59
+ // Otherwise, interpolate each of the numbers and rejoin the string.
47
60
  return bi < b.length && (bs = b.slice(bi), s[i] ? s[i] += bs : s[++i] = bs), s.length < 2 ? q[0] ? one(q[0].x) : zero(b) : (b = q.length,
48
61
  function(t) {
49
62
  for (let o, i = 0; i < b; ++i) s[(o = q[i]).i] = o.x(t);
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/interpolate.ts"],"names":[],"mappings":"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","file":"interpolate.js","sourcesContent":["export function interpolateNumber(a: number, b: number): (x: number) => number {\n return (t: number) => {\n return a * (1 - t) + b * t;\n };\n}\n\nexport function interpolateNumberRound(a: number, b: number): (x: number) => number {\n return function (t) {\n return Math.round(a * (1 - t) + b * t);\n };\n}\n\nexport function interpolateDate(a: Date, b: Date) {\n const aVal = a.valueOf();\n const bVal = b.valueOf();\n\n const d = new Date();\n return (t: number) => {\n d.setTime(aVal * (1 - t) + bVal * t);\n return d;\n };\n}\n\nconst reA = /[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g;\nconst reB = new RegExp(reA.source, 'g');\n\nfunction zero(b: any) {\n return function () {\n return b;\n };\n}\n\nfunction one(b: any) {\n return function (t: any) {\n return b(t) + '';\n };\n}\n\nexport function interpolateString(a: any, b: any) {\n let bi = (reA.lastIndex = reB.lastIndex = 0); // scan index for next number in b\n let am: any; // current match in a\n let bm: any; // current match in b\n let bs; // string preceding current number in b, if any\n let i = -1; // index in s\n const s: any[] = []; // string constants and placeholders\n const q: any[] = []; // number interpolators\n\n // Coerce inputs to strings.\n (a = a + ''), (b = b + '');\n\n // Interpolate pairs of numbers in a & b.\n while ((am = reA.exec(a)) && (bm = reB.exec(b))) {\n if ((bs = bm.index) > bi) {\n // a string precedes the next number in b\n bs = b.slice(bi, bs);\n if (s[i]) {\n s[i] += bs;\n } // coalesce with previous string\n else {\n s[++i] = bs;\n }\n }\n if ((am = am[0]) === (bm = bm[0])) {\n // numbers in a & b match\n if (s[i]) {\n s[i] += bm;\n } // coalesce with previous string\n else {\n s[++i] = bm;\n }\n } else {\n // interpolate non-matching numbers\n s[++i] = null;\n q.push({ i: i, x: interpolateNumber(am, bm) });\n }\n bi = reB.lastIndex;\n }\n\n // Add remains of b.\n if (bi < b.length) {\n bs = b.slice(bi);\n if (s[i]) {\n s[i] += bs;\n } // coalesce with previous string\n else {\n s[++i] = bs;\n }\n }\n\n // Special optimization for only a single match.\n // Otherwise, interpolate each of the numbers and rejoin the string.\n return s.length < 2\n ? q[0]\n ? one(q[0].x)\n : zero(b)\n : ((b = q.length),\n function (t: any) {\n for (let i = 0, o; i < b; ++i) {\n s[(o = q[i]).i] = o.x(t);\n }\n return s.join('');\n });\n}\n"]}
1
+ {"version":3,"sources":["../src/common/interpolate.ts"],"names":[],"mappings":"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","file":"interpolate.js","sourcesContent":["export function interpolateNumber(a: number, b: number): (x: number) => number {\n return (t: number) => {\n return a * (1 - t) + b * t;\n };\n}\n\nexport function interpolateNumberRound(a: number, b: number): (x: number) => number {\n return function (t) {\n return Math.round(a * (1 - t) + b * t);\n };\n}\n\nexport function interpolateDate(a: Date, b: Date) {\n const aVal = a.valueOf();\n const bVal = b.valueOf();\n\n const d = new Date();\n return (t: number) => {\n d.setTime(aVal * (1 - t) + bVal * t);\n return d;\n };\n}\n\nconst reA = /[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g;\nconst reB = new RegExp(reA.source, 'g');\n\nfunction zero(b: any) {\n return function () {\n return b;\n };\n}\n\nfunction one(b: any) {\n return function (t: any) {\n return b(t) + '';\n };\n}\n\nexport function interpolateString(a: any, b: any) {\n let bi = (reA.lastIndex = reB.lastIndex = 0); // scan index for next number in b\n let am: any; // current match in a\n let bm: any; // current match in b\n let bs; // string preceding current number in b, if any\n let i = -1; // index in s\n const s: any[] = []; // string constants and placeholders\n const q: any[] = []; // number interpolators\n\n // Coerce inputs to strings.\n (a = a + ''), (b = b + '');\n\n // Interpolate pairs of numbers in a & b.\n while ((am = reA.exec(a)) && (bm = reB.exec(b))) {\n if ((bs = bm.index) > bi) {\n // a string precedes the next number in b\n bs = b.slice(bi, bs);\n if (s[i]) {\n s[i] += bs;\n } // coalesce with previous string\n else {\n s[++i] = bs;\n }\n }\n if ((am = am[0]) === (bm = bm[0])) {\n // numbers in a & b match\n if (s[i]) {\n s[i] += bm;\n } // coalesce with previous string\n else {\n s[++i] = bm;\n }\n } else {\n // interpolate non-matching numbers\n s[++i] = null;\n q.push({ i: i, x: interpolateNumber(am, bm) });\n }\n bi = reB.lastIndex;\n }\n\n // Add remains of b.\n if (bi < b.length) {\n bs = b.slice(bi);\n if (s[i]) {\n s[i] += bs;\n } // coalesce with previous string\n else {\n s[++i] = bs;\n }\n }\n\n // Special optimization for only a single match.\n // Otherwise, interpolate each of the numbers and rejoin the string.\n return s.length < 2\n ? q[0]\n ? one(q[0].x)\n : zero(b)\n : ((b = q.length),\n function (t: any) {\n for (let i = 0, o; i < b; ++i) {\n s[(o = q[i]).i] = o.x(t);\n }\n return s.join('');\n });\n}\n"]}
@@ -1,2 +1,8 @@
1
+ /**
2
+ * 迁移至 sirius
3
+ * Checks if `value` is classified as a `Base64` string;
4
+ * @param {string} The value to check.
5
+ * @returns {boolean} Returns `true` if `value` is a boolean, else `false`.
6
+ */
1
7
  declare const isBase64: (value: string) => boolean;
2
8
  export default isBase64;
@@ -4,6 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  });
6
6
 
7
+ /**
8
+ * 迁移至 sirius
9
+ * Checks if `value` is classified as a `Base64` string;
10
+ * @param {string} The value to check.
11
+ * @returns {boolean} Returns `true` if `value` is a boolean, else `false`.
12
+ */
7
13
  const isBase64 = value => new RegExp(/^data:image\/(?:gif|png|jpeg|bmp|webp|svg\+xml)(?:;charset=utf-8)?;base64,(?:[A-Za-z0-9]|[+/])+={0,2}/g).test(value);
8
14
 
9
15
  exports.default = isBase64;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/isBase64.ts"],"names":[],"mappings":";;AAMA,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAW,EAAE;IAC1C,MAAM,GAAG,GAAG,wGAAwG,CAAC;IACrH,MAAM,UAAU,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;IACnC,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF,kBAAe,QAAQ,CAAC","file":"isBase64.js","sourcesContent":["/**\n * 迁移至 sirius\n * Checks if `value` is classified as a `Base64` string;\n * @param {string} The value to check.\n * @returns {boolean} Returns `true` if `value` is a boolean, else `false`.\n */\nconst isBase64 = (value: string): boolean => {\n const exp = /^data:image\\/(?:gif|png|jpeg|bmp|webp|svg\\+xml)(?:;charset=utf-8)?;base64,(?:[A-Za-z0-9]|[+/])+={0,2}/g;\n const urlPattern = new RegExp(exp);\n return urlPattern.test(value);\n};\n\nexport default isBase64;\n"]}
1
+ {"version":3,"sources":["../src/common/isBase64.ts"],"names":[],"mappings":";;AAAA;;;;;GAKG;AACH,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAW,EAAE;IAC1C,MAAM,GAAG,GAAG,wGAAwG,CAAC;IACrH,MAAM,UAAU,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;IACnC,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF,kBAAe,QAAQ,CAAC","file":"isBase64.js","sourcesContent":["/**\n * 迁移至 sirius\n * Checks if `value` is classified as a `Base64` string;\n * @param {string} The value to check.\n * @returns {boolean} Returns `true` if `value` is a boolean, else `false`.\n */\nconst isBase64 = (value: string): boolean => {\n const exp = /^data:image\\/(?:gif|png|jpeg|bmp|webp|svg\\+xml)(?:;charset=utf-8)?;base64,(?:[A-Za-z0-9]|[+/])+={0,2}/g;\n const urlPattern = new RegExp(exp);\n return urlPattern.test(value);\n};\n\nexport default isBase64;\n"]}
@@ -1,2 +1,15 @@
1
+ /**
2
+ * Checks if `value` is classified as a boolean primitive or object.
3
+ * @param {*} value The value to check.
4
+ * @param {boolean} fuzzy Whether to perform fuzzy judgment, for better performance,default to `false`.
5
+ * @returns {boolean} Returns `true` if `value` is a boolean, else `false`.
6
+ * @example
7
+ *
8
+ * isBoolean(false)
9
+ * // => true
10
+ *
11
+ * isBoolean(null)
12
+ * // => false
13
+ */
1
14
  declare const isBoolean: (value: any, fuzzy?: boolean) => value is boolean;
2
15
  export default isBoolean;
@@ -13,5 +13,17 @@ Object.defineProperty(exports, "__esModule", {
13
13
  const isType_1 = __importDefault(require("./isType")), isBoolean = (value, fuzzy = !1) => fuzzy ? "boolean" == typeof value : !0 === value || !1 === value || (0,
14
14
  isType_1.default)(value, "Boolean");
15
15
 
16
- exports.default = isBoolean;
16
+ /**
17
+ * Checks if `value` is classified as a boolean primitive or object.
18
+ * @param {*} value The value to check.
19
+ * @param {boolean} fuzzy Whether to perform fuzzy judgment, for better performance,default to `false`.
20
+ * @returns {boolean} Returns `true` if `value` is a boolean, else `false`.
21
+ * @example
22
+ *
23
+ * isBoolean(false)
24
+ * // => true
25
+ *
26
+ * isBoolean(null)
27
+ * // => false
28
+ */ exports.default = isBoolean;
17
29
  //# sourceMappingURL=isBoolean.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/isBoolean.ts"],"names":[],"mappings":";;;;;AAAA,sDAA8B;AAe9B,MAAM,SAAS,GAAG,CAAC,KAAU,EAAE,QAAiB,KAAK,EAAoB,EAAE;IACzE,IAAI,KAAK,EAAE;QACT,OAAO,OAAO,KAAK,KAAK,SAAS,CAAC;KACnC;IACD,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,KAAK,IAAI,IAAA,gBAAM,EAAC,KAAK,EAAE,SAAS,CAAC,CAAC;AACvE,CAAC,CAAC;AAEF,kBAAe,SAAS,CAAC","file":"isBoolean.js","sourcesContent":["import isType from './isType';\n\n/**\n * Checks if `value` is classified as a boolean primitive or object.\n * @param {*} value The value to check.\n * @param {boolean} fuzzy Whether to perform fuzzy judgment, for better performance,default to `false`.\n * @returns {boolean} Returns `true` if `value` is a boolean, else `false`.\n * @example\n *\n * isBoolean(false)\n * // => true\n *\n * isBoolean(null)\n * // => false\n */\nconst isBoolean = (value: any, fuzzy: boolean = false): value is boolean => {\n if (fuzzy) {\n return typeof value === 'boolean';\n }\n return value === true || value === false || isType(value, 'Boolean');\n};\n\nexport default isBoolean;\n"]}
1
+ {"version":3,"sources":["../src/common/isBoolean.ts"],"names":[],"mappings":";;;;;AAAA,sDAA8B;AAE9B;;;;;;;;;;;;GAYG;AACH,MAAM,SAAS,GAAG,CAAC,KAAU,EAAE,QAAiB,KAAK,EAAoB,EAAE;IACzE,IAAI,KAAK,EAAE;QACT,OAAO,OAAO,KAAK,KAAK,SAAS,CAAC;KACnC;IACD,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,KAAK,IAAI,IAAA,gBAAM,EAAC,KAAK,EAAE,SAAS,CAAC,CAAC;AACvE,CAAC,CAAC;AAEF,kBAAe,SAAS,CAAC","file":"isBoolean.js","sourcesContent":["import isType from './isType';\n\n/**\n * Checks if `value` is classified as a boolean primitive or object.\n * @param {*} value The value to check.\n * @param {boolean} fuzzy Whether to perform fuzzy judgment, for better performance,default to `false`.\n * @returns {boolean} Returns `true` if `value` is a boolean, else `false`.\n * @example\n *\n * isBoolean(false)\n * // => true\n *\n * isBoolean(null)\n * // => false\n */\nconst isBoolean = (value: any, fuzzy: boolean = false): value is boolean => {\n if (fuzzy) {\n return typeof value === 'boolean';\n }\n return value === true || value === false || isType(value, 'Boolean');\n};\n\nexport default isBoolean;\n"]}
@@ -13,9 +13,19 @@ Object.defineProperty(exports, "__esModule", {
13
13
  const isNil_1 = __importDefault(require("./isNil")), isArrayLike_1 = __importDefault(require("./isArrayLike")), getType_1 = __importDefault(require("./getType")), isPrototype_1 = __importDefault(require("./isPrototype")), hasOwnProperty = Object.prototype.hasOwnProperty;
14
14
 
15
15
  function isEmpty(value) {
16
+ /**
17
+ * isEmpty(null) => true
18
+ * isEmpty() => true
19
+ * isEmpty(true) => true
20
+ * isEmpty(1) => true
21
+ * isEmpty([1, 2, 3]) => false
22
+ * isEmpty('abc') => false
23
+ * isEmpty({ a: 1 }) => false
24
+ */
16
25
  if ((0, isNil_1.default)(value)) return !0;
17
26
  if ((0, isArrayLike_1.default)(value)) return !value.length;
18
- const type = (0, getType_1.default)(value);
27
+ // TODO: 这里需要优化下
28
+ const type = (0, getType_1.default)(value);
19
29
  if ("Map" === type || "Set" === type) return !value.size;
20
30
  if ((0, isPrototype_1.default)(value)) return !Object.keys(value).length;
21
31
  for (const key in value) if (hasOwnProperty.call(value, key)) return !1;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/isEmpty.ts"],"names":[],"mappings":";;;;;AAAA,oDAA4B;AAC5B,gEAAwC;AACxC,wDAAgC;AAChC,gEAAwC;AAExC,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AAEvD,SAAS,OAAO,CAAC,KAAU;IAUzB,IAAI,IAAA,eAAK,EAAC,KAAK,CAAC,EAAE;QAChB,OAAO,IAAI,CAAC;KACb;IACD,IAAI,IAAA,qBAAW,EAAC,KAAK,CAAC,EAAE;QACtB,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;KACtB;IAED,MAAM,IAAI,GAAG,IAAA,iBAAO,EAAC,KAAK,CAAC,CAAC;IAC5B,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE;QACpC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;KACpB;IACD,IAAI,IAAA,qBAAW,EAAC,KAAK,CAAC,EAAE;QACtB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;KACnC;IACD,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE;QACvB,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE;YACnC,OAAO,KAAK,CAAC;SACd;KACF;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,kBAAe,OAAO,CAAC","file":"isEmpty.js","sourcesContent":["import isNil from './isNil';\nimport isArrayLike from './isArrayLike';\nimport getType from './getType';\nimport isPrototype from './isPrototype';\n\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\n\nfunction isEmpty(value: any): boolean {\n /**\n * isEmpty(null) => true\n * isEmpty() => true\n * isEmpty(true) => true\n * isEmpty(1) => true\n * isEmpty([1, 2, 3]) => false\n * isEmpty('abc') => false\n * isEmpty({ a: 1 }) => false\n */\n if (isNil(value)) {\n return true;\n }\n if (isArrayLike(value)) {\n return !value.length;\n }\n // TODO: 这里需要优化下\n const type = getType(value);\n if (type === 'Map' || type === 'Set') {\n return !value.size;\n }\n if (isPrototype(value)) {\n return !Object.keys(value).length;\n }\n for (const key in value) {\n if (hasOwnProperty.call(value, key)) {\n return false;\n }\n }\n return true;\n}\n\nexport default isEmpty;\n"]}
1
+ {"version":3,"sources":["../src/common/isEmpty.ts"],"names":[],"mappings":";;;;;AAAA,oDAA4B;AAC5B,gEAAwC;AACxC,wDAAgC;AAChC,gEAAwC;AAExC,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AAEvD,SAAS,OAAO,CAAC,KAAU;IACzB;;;;;;;;OAQG;IACH,IAAI,IAAA,eAAK,EAAC,KAAK,CAAC,EAAE;QAChB,OAAO,IAAI,CAAC;KACb;IACD,IAAI,IAAA,qBAAW,EAAC,KAAK,CAAC,EAAE;QACtB,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;KACtB;IACD,gBAAgB;IAChB,MAAM,IAAI,GAAG,IAAA,iBAAO,EAAC,KAAK,CAAC,CAAC;IAC5B,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE;QACpC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;KACpB;IACD,IAAI,IAAA,qBAAW,EAAC,KAAK,CAAC,EAAE;QACtB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;KACnC;IACD,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE;QACvB,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE;YACnC,OAAO,KAAK,CAAC;SACd;KACF;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,kBAAe,OAAO,CAAC","file":"isEmpty.js","sourcesContent":["import isNil from './isNil';\nimport isArrayLike from './isArrayLike';\nimport getType from './getType';\nimport isPrototype from './isPrototype';\n\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\n\nfunction isEmpty(value: any): boolean {\n /**\n * isEmpty(null) => true\n * isEmpty() => true\n * isEmpty(true) => true\n * isEmpty(1) => true\n * isEmpty([1, 2, 3]) => false\n * isEmpty('abc') => false\n * isEmpty({ a: 1 }) => false\n */\n if (isNil(value)) {\n return true;\n }\n if (isArrayLike(value)) {\n return !value.length;\n }\n // TODO: 这里需要优化下\n const type = getType(value);\n if (type === 'Map' || type === 'Set') {\n return !value.size;\n }\n if (isPrototype(value)) {\n return !Object.keys(value).length;\n }\n for (const key in value) {\n if (hasOwnProperty.call(value, key)) {\n return false;\n }\n }\n return true;\n}\n\nexport default isEmpty;\n"]}
@@ -20,14 +20,20 @@ function objectKeys(obj) {
20
20
  return Object.keys(obj);
21
21
  }
22
22
 
23
+ // Adapted from https://github.com/antvis/F2/blob/master/packages/f2/src/base/equal.ts by zengyue
24
+ // License: https://github.com/antvis/F2/blob/master/packages/f2/LICENSE
23
25
  function isEqual(a, b, options) {
24
26
  if (a === b) return !0;
25
27
  if (typeof a != typeof b) return !1;
26
- if (null == a || null == b) return !1;
27
- if (Number.isNaN(a) && Number.isNaN(b)) return !0;
28
+ // null 和 undefined
29
+ if (null == a || null == b) return !1;
30
+ // 特殊处理NaN
31
+ if (Number.isNaN(a) && Number.isNaN(b)) return !0;
28
32
  if (objToString(a) !== objToString(b)) return !1;
29
- if ((0, isFunction_1.default)(a)) return !!(null == options ? void 0 : options.skipFunction);
30
- if ("object" != typeof a) return !1;
33
+ // 如果是function,则不相等
34
+ if ((0, isFunction_1.default)(a)) return !!(null == options ? void 0 : options.skipFunction);
35
+ // 值类型,Number String Boolean
36
+ if ("object" != typeof a) return !1;
31
37
  if ((0, isArray_1.default)(a)) {
32
38
  if (a.length !== b.length) return !1;
33
39
  for (let i = a.length - 1; i >= 0; i--) if (!isEqual(a[i], b[i], options)) return !1;
@@ -35,10 +41,16 @@ function isEqual(a, b, options) {
35
41
  }
36
42
  if (!(0, isPlainObject_1.default)(a)) return !1;
37
43
  const ka = objectKeys(a), kb = objectKeys(b);
44
+ // having the same number of owned properties (keys incorporates hasOwnProperty)
38
45
  if (ka.length !== kb.length) return !1;
39
- ka.sort(), kb.sort();
40
- for (let i = ka.length - 1; i >= 0; i--) if (ka[i] != kb[i]) return !1;
41
- for (let i = ka.length - 1; i >= 0; i--) {
46
+ // the same set of keys (although not necessarily the same order),
47
+ ka.sort(), kb.sort();
48
+ // ~~~cheap key test
49
+ for (let i = ka.length - 1; i >= 0; i--)
50
+ // eslint-disable-next-line eqeqeq
51
+ if (ka[i] != kb[i]) return !1;
52
+ // equivalent values for every corresponding key, and ~~~possibly expensive deep test
53
+ for (let i = ka.length - 1; i >= 0; i--) {
42
54
  const key = ka[i];
43
55
  if (!isEqual(a[key], b[key], options)) return !1;
44
56
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/isEqual.ts"],"names":[],"mappings":";;;;;;AAAA,wDAAgC;AAChC,8DAAsC;AACtC,oEAA4C;AAE5C,SAAS,WAAW,CAAC,GAAQ;IAC3B,OAAO,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,UAAU,CAAC,GAAQ;IAC1B,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC1B,CAAC;AAID,SAAgB,OAAO,CAAC,CAAM,EAAE,CAAM,EAAE,OAAoC;IAC1E,IAAI,CAAC,KAAK,CAAC,EAAE;QACX,OAAO,IAAI,CAAC;KACb;IAED,IAAI,OAAO,CAAC,KAAK,OAAO,CAAC,EAAE;QACzB,OAAO,KAAK,CAAC;KACd;IAGD,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE;QAC1B,OAAO,KAAK,CAAC;KACd;IAGD,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;QACtC,OAAO,IAAI,CAAC;KACb;IAED,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC,CAAC,EAAE;QACrC,OAAO,KAAK,CAAC;KACd;IAGD,IAAI,IAAA,oBAAU,EAAC,CAAC,CAAC,EAAE;QACjB,OAAO,CAAC,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,YAAY,CAAA,CAAC;KAChC;IAGD,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE;QACzB,OAAO,KAAK,CAAC;KACd;IAED,IAAI,IAAA,iBAAO,EAAC,CAAC,CAAC,EAAE;QACd,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE;YACzB,OAAO,KAAK,CAAC;SACd;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YACtC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,EAAE;gBACjC,OAAO,KAAK,CAAC;aACd;SACF;QACD,OAAO,IAAI,CAAC;KACb;IAED,IAAI,CAAC,IAAA,uBAAa,EAAC,CAAC,CAAC,EAAE;QACrB,OAAO,KAAK,CAAC;KACd;IAED,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IACzB,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IAEzB,IAAI,EAAE,CAAC,MAAM,KAAK,EAAE,CAAC,MAAM,EAAE;QAC3B,OAAO,KAAK,CAAC;KACd;IAGD,EAAE,CAAC,IAAI,EAAE,CAAC;IACV,EAAE,CAAC,IAAI,EAAE,CAAC;IAEV,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;QAEvC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;YAClB,OAAO,KAAK,CAAC;SACd;KACF;IAGD,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;QACvC,MAAM,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QAClB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,EAAE;YACrC,OAAO,KAAK,CAAC;SACd;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AA5ED,0BA4EC","file":"isEqual.js","sourcesContent":["import isArray from './isArray';\nimport isFunction from './isFunction';\nimport isPlainObject from './isPlainObject';\n\nfunction objToString(obj: any) {\n return Object.prototype.toString.call(obj);\n}\n\nfunction objectKeys(obj: any) {\n return Object.keys(obj);\n}\n\n// Adapted from https://github.com/antvis/F2/blob/master/packages/f2/src/base/equal.ts by zengyue\n// License: https://github.com/antvis/F2/blob/master/packages/f2/LICENSE\nexport function isEqual(a: any, b: any, options?: { skipFunction?: boolean }): boolean {\n if (a === b) {\n return true;\n }\n\n if (typeof a !== typeof b) {\n return false;\n }\n\n // null 和 undefined\n if (a == null || b == null) {\n return false;\n }\n\n // 特殊处理NaN\n if (Number.isNaN(a) && Number.isNaN(b)) {\n return true;\n }\n\n if (objToString(a) !== objToString(b)) {\n return false;\n }\n\n // 如果是function,则不相等\n if (isFunction(a)) {\n return !!options?.skipFunction;\n }\n\n // 值类型,Number String Boolean\n if (typeof a !== 'object') {\n return false;\n }\n\n if (isArray(a)) {\n if (a.length !== b.length) {\n return false;\n }\n for (let i = a.length - 1; i >= 0; i--) {\n if (!isEqual(a[i], b[i], options)) {\n return false;\n }\n }\n return true;\n }\n\n if (!isPlainObject(a)) {\n return false;\n }\n\n const ka = objectKeys(a);\n const kb = objectKeys(b);\n // having the same number of owned properties (keys incorporates hasOwnProperty)\n if (ka.length !== kb.length) {\n return false;\n }\n\n // the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n // ~~~cheap key test\n for (let i = ka.length - 1; i >= 0; i--) {\n // eslint-disable-next-line eqeqeq\n if (ka[i] != kb[i]) {\n return false;\n }\n }\n\n // equivalent values for every corresponding key, and ~~~possibly expensive deep test\n for (let i = ka.length - 1; i >= 0; i--) {\n const key = ka[i];\n if (!isEqual(a[key], b[key], options)) {\n return false;\n }\n }\n\n return true;\n}\n"]}
1
+ {"version":3,"sources":["../src/common/isEqual.ts"],"names":[],"mappings":"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","file":"isEqual.js","sourcesContent":["import isArray from './isArray';\nimport isFunction from './isFunction';\nimport isPlainObject from './isPlainObject';\n\nfunction objToString(obj: any) {\n return Object.prototype.toString.call(obj);\n}\n\nfunction objectKeys(obj: any) {\n return Object.keys(obj);\n}\n\n// Adapted from https://github.com/antvis/F2/blob/master/packages/f2/src/base/equal.ts by zengyue\n// License: https://github.com/antvis/F2/blob/master/packages/f2/LICENSE\nexport function isEqual(a: any, b: any, options?: { skipFunction?: boolean }): boolean {\n if (a === b) {\n return true;\n }\n\n if (typeof a !== typeof b) {\n return false;\n }\n\n // null 和 undefined\n if (a == null || b == null) {\n return false;\n }\n\n // 特殊处理NaN\n if (Number.isNaN(a) && Number.isNaN(b)) {\n return true;\n }\n\n if (objToString(a) !== objToString(b)) {\n return false;\n }\n\n // 如果是function,则不相等\n if (isFunction(a)) {\n return !!options?.skipFunction;\n }\n\n // 值类型,Number String Boolean\n if (typeof a !== 'object') {\n return false;\n }\n\n if (isArray(a)) {\n if (a.length !== b.length) {\n return false;\n }\n for (let i = a.length - 1; i >= 0; i--) {\n if (!isEqual(a[i], b[i], options)) {\n return false;\n }\n }\n return true;\n }\n\n if (!isPlainObject(a)) {\n return false;\n }\n\n const ka = objectKeys(a);\n const kb = objectKeys(b);\n // having the same number of owned properties (keys incorporates hasOwnProperty)\n if (ka.length !== kb.length) {\n return false;\n }\n\n // the same set of keys (although not necessarily the same order),\n ka.sort();\n kb.sort();\n // ~~~cheap key test\n for (let i = ka.length - 1; i >= 0; i--) {\n // eslint-disable-next-line eqeqeq\n if (ka[i] != kb[i]) {\n return false;\n }\n }\n\n // equivalent values for every corresponding key, and ~~~possibly expensive deep test\n for (let i = ka.length - 1; i >= 0; i--) {\n const key = ka[i];\n if (!isEqual(a[key], b[key], options)) {\n return false;\n }\n }\n\n return true;\n}\n"]}
@@ -1,2 +1,27 @@
1
+ /**
2
+ * Checks if `value` is classified as a `Function` object.
3
+ *
4
+ * @param {*} value The value to check.
5
+ * @returns {boolean} Returns `true` if `value` is a function, else `false`.
6
+ * @example
7
+ *
8
+ * isFunction(class Any{})
9
+ * // => true
10
+ *
11
+ * isFunction(() => {})
12
+ * // => true
13
+ *
14
+ * isFunction(async () => {})
15
+ * // => true
16
+ *
17
+ * isFunction(function * Any() {})
18
+ * // => true
19
+ *
20
+ * isFunction(Math.round)
21
+ * // => true
22
+ *
23
+ * isFunction(/abc/)
24
+ * // => false
25
+ */
1
26
  declare const isFunction: (value: any) => value is Function;
2
27
  export default isFunction;
@@ -4,7 +4,32 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  });
6
6
 
7
+ /**
8
+ * Checks if `value` is classified as a `Function` object.
9
+ *
10
+ * @param {*} value The value to check.
11
+ * @returns {boolean} Returns `true` if `value` is a function, else `false`.
12
+ * @example
13
+ *
14
+ * isFunction(class Any{})
15
+ * // => true
16
+ *
17
+ * isFunction(() => {})
18
+ * // => true
19
+ *
20
+ * isFunction(async () => {})
21
+ * // => true
22
+ *
23
+ * isFunction(function * Any() {})
24
+ * // => true
25
+ *
26
+ * isFunction(Math.round)
27
+ * // => true
28
+ *
29
+ * isFunction(/abc/)
30
+ * // => false
31
+ */
32
+ // eslint-disable-next-line @typescript-eslint/ban-types
7
33
  const isFunction = value => "function" == typeof value;
8
34
 
9
- exports.default = isFunction;
10
- //# sourceMappingURL=isFunction.js.map
35
+ exports.default = isFunction;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/isFunction.ts"],"names":[],"mappings":";;AA0BA,MAAM,UAAU,GAAG,CAAC,KAAU,EAAqB,EAAE;IACnD,OAAO,OAAO,KAAK,KAAK,UAAU,CAAC;AACrC,CAAC,CAAC;AAEF,kBAAe,UAAU,CAAC","file":"isFunction.js","sourcesContent":["/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * isFunction(class Any{})\n * // => true\n *\n * isFunction(() => {})\n * // => true\n *\n * isFunction(async () => {})\n * // => true\n *\n * isFunction(function * Any() {})\n * // => true\n *\n * isFunction(Math.round)\n * // => true\n *\n * isFunction(/abc/)\n * // => false\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nconst isFunction = (value: any): value is Function => {\n return typeof value === 'function';\n};\n\nexport default isFunction;\n"]}
1
+ {"version":3,"sources":["../src/common/isFunction.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wDAAwD;AACxD,MAAM,UAAU,GAAG,CAAC,KAAU,EAAqB,EAAE;IACnD,OAAO,OAAO,KAAK,KAAK,UAAU,CAAC;AACrC,CAAC,CAAC;AAEF,kBAAe,UAAU,CAAC","file":"isFunction.js","sourcesContent":["/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * isFunction(class Any{})\n * // => true\n *\n * isFunction(() => {})\n * // => true\n *\n * isFunction(async () => {})\n * // => true\n *\n * isFunction(function * Any() {})\n * // => true\n *\n * isFunction(Math.round)\n * // => true\n *\n * isFunction(/abc/)\n * // => false\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nconst isFunction = (value: any): value is Function => {\n return typeof value === 'function';\n};\n\nexport default isFunction;\n"]}
@@ -6,4 +6,5 @@ Object.defineProperty(exports, "__esModule", {
6
6
 
7
7
  const isNull = value => null === value;
8
8
 
9
- exports.default = isNull;
9
+ exports.default = isNull;
10
+ //# sourceMappingURL=isNull.js.map
@@ -1,2 +1,25 @@
1
+ /**
2
+ * Checks if `value` is classified as a `Number` primitive or object.
3
+ *
4
+ * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are
5
+ * classified as numbers, use the `Number.isFinite` method.
6
+ *
7
+ * @param {*} value The value to check.
8
+ * @param {boolean} fuzzy Whether to perform fuzzy judgment, for better performance,default to `false`.
9
+ * @returns {boolean} Returns `true` if `value` is a number, else `false`.
10
+ * @example
11
+ *
12
+ * isNumber(3)
13
+ * // => true
14
+ *
15
+ * isNumber(Number.MIN_VALUE)
16
+ * // => true
17
+ *
18
+ * isNumber(Infinity)
19
+ * // => true
20
+ *
21
+ * isNumber('3')
22
+ * // => false
23
+ */
1
24
  declare const isNumber: (value: any, fuzzy?: boolean) => value is number;
2
25
  export default isNumber;
@@ -15,5 +15,27 @@ const isType_1 = __importDefault(require("./isType")), isNumber = (value, fuzzy
15
15
  return fuzzy ? "number" === type : "number" === type || (0, isType_1.default)(value, "Number");
16
16
  };
17
17
 
18
- exports.default = isNumber;
18
+ /**
19
+ * Checks if `value` is classified as a `Number` primitive or object.
20
+ *
21
+ * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are
22
+ * classified as numbers, use the `Number.isFinite` method.
23
+ *
24
+ * @param {*} value The value to check.
25
+ * @param {boolean} fuzzy Whether to perform fuzzy judgment, for better performance,default to `false`.
26
+ * @returns {boolean} Returns `true` if `value` is a number, else `false`.
27
+ * @example
28
+ *
29
+ * isNumber(3)
30
+ * // => true
31
+ *
32
+ * isNumber(Number.MIN_VALUE)
33
+ * // => true
34
+ *
35
+ * isNumber(Infinity)
36
+ * // => true
37
+ *
38
+ * isNumber('3')
39
+ * // => false
40
+ */ exports.default = isNumber;
19
41
  //# sourceMappingURL=isNumber.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/isNumber.ts"],"names":[],"mappings":";;;;;AAAA,sDAA8B;AAyB9B,MAAM,QAAQ,GAAG,CAAC,KAAU,EAAE,QAAiB,KAAK,EAAmB,EAAE;IACvE,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC;IAC1B,IAAI,KAAK,EAAE;QACT,OAAO,IAAI,KAAK,QAAQ,CAAC;KAC1B;IACD,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAA,gBAAM,EAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AACtD,CAAC,CAAC;AAEF,kBAAe,QAAQ,CAAC","file":"isNumber.js","sourcesContent":["import isType from './isType';\n\n/**\n * Checks if `value` is classified as a `Number` primitive or object.\n *\n * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are\n * classified as numbers, use the `Number.isFinite` method.\n *\n * @param {*} value The value to check.\n * @param {boolean} fuzzy Whether to perform fuzzy judgment, for better performance,default to `false`.\n * @returns {boolean} Returns `true` if `value` is a number, else `false`.\n * @example\n *\n * isNumber(3)\n * // => true\n *\n * isNumber(Number.MIN_VALUE)\n * // => true\n *\n * isNumber(Infinity)\n * // => true\n *\n * isNumber('3')\n * // => false\n */\nconst isNumber = (value: any, fuzzy: boolean = false): value is number => {\n const type = typeof value;\n if (fuzzy) {\n return type === 'number';\n }\n return type === 'number' || isType(value, 'Number');\n};\n\nexport default isNumber;\n"]}
1
+ {"version":3,"sources":["../src/common/isNumber.ts"],"names":[],"mappings":";;;;;AAAA,sDAA8B;AAE9B;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,QAAQ,GAAG,CAAC,KAAU,EAAE,QAAiB,KAAK,EAAmB,EAAE;IACvE,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC;IAC1B,IAAI,KAAK,EAAE;QACT,OAAO,IAAI,KAAK,QAAQ,CAAC;KAC1B;IACD,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAA,gBAAM,EAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;AACtD,CAAC,CAAC;AAEF,kBAAe,QAAQ,CAAC","file":"isNumber.js","sourcesContent":["import isType from './isType';\n\n/**\n * Checks if `value` is classified as a `Number` primitive or object.\n *\n * **Note:** To exclude `Infinity`, `-Infinity`, and `NaN`, which are\n * classified as numbers, use the `Number.isFinite` method.\n *\n * @param {*} value The value to check.\n * @param {boolean} fuzzy Whether to perform fuzzy judgment, for better performance,default to `false`.\n * @returns {boolean} Returns `true` if `value` is a number, else `false`.\n * @example\n *\n * isNumber(3)\n * // => true\n *\n * isNumber(Number.MIN_VALUE)\n * // => true\n *\n * isNumber(Infinity)\n * // => true\n *\n * isNumber('3')\n * // => false\n */\nconst isNumber = (value: any, fuzzy: boolean = false): value is number => {\n const type = typeof value;\n if (fuzzy) {\n return type === 'number';\n }\n return type === 'number' || isType(value, 'Number');\n};\n\nexport default isNumber;\n"]}
@@ -1,2 +1,27 @@
1
+ /**
2
+ * Checks if `value` is classified as a legal string number
3
+ *
4
+ * @param {*} value The string value to check.
5
+ * @returns {boolean} Returns `true` if `value` is a legal string number, else `false`.
6
+ * @example
7
+ *
8
+ * isNumeric(1)
9
+ * // => false
10
+ *
11
+ * isNumeric('2.0')
12
+ * // => true
13
+ *
14
+ * isNumeric('3a')
15
+ * // => false
16
+ *
17
+ * isNumeric('4.a')
18
+ * // => false
19
+ *
20
+ * isNumeric(Infinity)
21
+ * // => false
22
+ *
23
+ * isNumeric('01')
24
+ * // => true
25
+ */
1
26
  declare const isNumeric: (value: string) => boolean;
2
27
  export default isNumeric;
@@ -4,6 +4,31 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  });
6
6
 
7
+ /**
8
+ * Checks if `value` is classified as a legal string number
9
+ *
10
+ * @param {*} value The string value to check.
11
+ * @returns {boolean} Returns `true` if `value` is a legal string number, else `false`.
12
+ * @example
13
+ *
14
+ * isNumeric(1)
15
+ * // => false
16
+ *
17
+ * isNumeric('2.0')
18
+ * // => true
19
+ *
20
+ * isNumeric('3a')
21
+ * // => false
22
+ *
23
+ * isNumeric('4.a')
24
+ * // => false
25
+ *
26
+ * isNumeric(Infinity)
27
+ * // => false
28
+ *
29
+ * isNumeric('01')
30
+ * // => true
31
+ */
7
32
  const isNumeric = value => "string" == typeof value && (!isNaN(Number(value)) && !isNaN(parseFloat(value)));
8
33
 
9
34
  exports.default = isNumeric;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/isNumeric.ts"],"names":[],"mappings":";;AAyBA,MAAM,SAAS,GAAG,CAAC,KAAa,EAAW,EAAE;IAC3C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC7B,OAAO,KAAK,CAAC;KACd;IACD,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;AAC5D,CAAC,CAAC;AAEF,kBAAe,SAAS,CAAC","file":"isNumeric.js","sourcesContent":["/**\n * Checks if `value` is classified as a legal string number\n *\n * @param {*} value The string value to check.\n * @returns {boolean} Returns `true` if `value` is a legal string number, else `false`.\n * @example\n *\n * isNumeric(1)\n * // => false\n *\n * isNumeric('2.0')\n * // => true\n *\n * isNumeric('3a')\n * // => false\n *\n * isNumeric('4.a')\n * // => false\n *\n * isNumeric(Infinity)\n * // => false\n *\n * isNumeric('01')\n * // => true\n */\nconst isNumeric = (value: string): boolean => {\n if (typeof value !== 'string') {\n return false;\n }\n return !isNaN(Number(value)) && !isNaN(parseFloat(value));\n};\n\nexport default isNumeric;\n"]}
1
+ {"version":3,"sources":["../src/common/isNumeric.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,SAAS,GAAG,CAAC,KAAa,EAAW,EAAE;IAC3C,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;QAC7B,OAAO,KAAK,CAAC;KACd;IACD,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;AAC5D,CAAC,CAAC;AAEF,kBAAe,SAAS,CAAC","file":"isNumeric.js","sourcesContent":["/**\n * Checks if `value` is classified as a legal string number\n *\n * @param {*} value The string value to check.\n * @returns {boolean} Returns `true` if `value` is a legal string number, else `false`.\n * @example\n *\n * isNumeric(1)\n * // => false\n *\n * isNumeric('2.0')\n * // => true\n *\n * isNumeric('3a')\n * // => false\n *\n * isNumeric('4.a')\n * // => false\n *\n * isNumeric(Infinity)\n * // => false\n *\n * isNumeric('01')\n * // => true\n */\nconst isNumeric = (value: string): boolean => {\n if (typeof value !== 'string') {\n return false;\n }\n return !isNaN(Number(value)) && !isNaN(parseFloat(value));\n};\n\nexport default isNumeric;\n"]}
@@ -1,2 +1,23 @@
1
+ /**
2
+ * Checks if `value` is the
3
+ * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
4
+ * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
5
+ *
6
+ * @param {*} value The value to check.
7
+ * @returns {boolean} Returns `true` if `value` is an object, else `false`.
8
+ * @example
9
+ *
10
+ * isObject({})
11
+ * // => true
12
+ *
13
+ * isObject([1, 2, 3])
14
+ * // => true
15
+ *
16
+ * isObject(Function)
17
+ * // => true
18
+ *
19
+ * isObject(null)
20
+ * // => false
21
+ */
1
22
  declare const isObject: <T = object>(value: any) => value is T;
2
23
  export default isObject;
@@ -4,6 +4,28 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  });
6
6
 
7
+ /**
8
+ * Checks if `value` is the
9
+ * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
10
+ * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
11
+ *
12
+ * @param {*} value The value to check.
13
+ * @returns {boolean} Returns `true` if `value` is an object, else `false`.
14
+ * @example
15
+ *
16
+ * isObject({})
17
+ * // => true
18
+ *
19
+ * isObject([1, 2, 3])
20
+ * // => true
21
+ *
22
+ * isObject(Function)
23
+ * // => true
24
+ *
25
+ * isObject(null)
26
+ * // => false
27
+ */
28
+ // eslint-disable-next-line @typescript-eslint/ban-types
7
29
  const isObject = value => {
8
30
  const type = typeof value;
9
31
  return null !== value && "object" === type || "function" === type;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/isObject.ts"],"names":[],"mappings":";;AAsBA,MAAM,QAAQ,GAAG,CAAa,KAAU,EAAc,EAAE;IACtD,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC;IAC1B,OAAO,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,KAAK,QAAQ,CAAC,IAAI,IAAI,KAAK,UAAU,CAAC;AACtE,CAAC,CAAC;AAEF,kBAAe,QAAQ,CAAC","file":"isObject.js","sourcesContent":["/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * isObject({})\n * // => true\n *\n * isObject([1, 2, 3])\n * // => true\n *\n * isObject(Function)\n * // => true\n *\n * isObject(null)\n * // => false\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nconst isObject = <T = object>(value: any): value is T => {\n const type = typeof value;\n return (value !== null && type === 'object') || type === 'function';\n};\n\nexport default isObject;\n"]}
1
+ {"version":3,"sources":["../src/common/isObject.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wDAAwD;AACxD,MAAM,QAAQ,GAAG,CAAa,KAAU,EAAc,EAAE;IACtD,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC;IAC1B,OAAO,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,KAAK,QAAQ,CAAC,IAAI,IAAI,KAAK,UAAU,CAAC;AACtE,CAAC,CAAC;AAEF,kBAAe,QAAQ,CAAC","file":"isObject.js","sourcesContent":["/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * isObject({})\n * // => true\n *\n * isObject([1, 2, 3])\n * // => true\n *\n * isObject(Function)\n * // => true\n *\n * isObject(null)\n * // => false\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nconst isObject = <T = object>(value: any): value is T => {\n const type = typeof value;\n return (value !== null && type === 'object') || type === 'function';\n};\n\nexport default isObject;\n"]}
@@ -1,2 +1,22 @@
1
+ /**
2
+ * Checks if `value` is object-like. A value is object-like if it's not `null`
3
+ * and has a `typeof` result of "object".
4
+ *
5
+ * @param {*} value The value to check.
6
+ * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
7
+ * @example
8
+ *
9
+ * isObjectLike({})
10
+ * // => true
11
+ *
12
+ * isObjectLike([1, 2, 3])
13
+ * // => true
14
+ *
15
+ * isObjectLike(Function)
16
+ * // => false
17
+ *
18
+ * isObjectLike(null)
19
+ * // => false
20
+ */
1
21
  declare const isObjectLike: (value: any) => value is object | Function | any[];
2
22
  export default isObjectLike;
@@ -4,6 +4,27 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: !0
5
5
  });
6
6
 
7
+ /**
8
+ * Checks if `value` is object-like. A value is object-like if it's not `null`
9
+ * and has a `typeof` result of "object".
10
+ *
11
+ * @param {*} value The value to check.
12
+ * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
13
+ * @example
14
+ *
15
+ * isObjectLike({})
16
+ * // => true
17
+ *
18
+ * isObjectLike([1, 2, 3])
19
+ * // => true
20
+ *
21
+ * isObjectLike(Function)
22
+ * // => false
23
+ *
24
+ * isObjectLike(null)
25
+ * // => false
26
+ */
27
+ // eslint-disable-next-line @typescript-eslint/ban-types
7
28
  const isObjectLike = value => "object" == typeof value && null !== value;
8
29
 
9
30
  exports.default = isObjectLike;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/common/isObjectLike.ts"],"names":[],"mappings":";;AAqBA,MAAM,YAAY,GAAG,CAAC,KAAU,EAA2C,EAAE;IAC3E,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACrD,CAAC,CAAC;AAEF,kBAAe,YAAY,CAAC","file":"isObjectLike.js","sourcesContent":["/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * isObjectLike({})\n * // => true\n *\n * isObjectLike([1, 2, 3])\n * // => true\n *\n * isObjectLike(Function)\n * // => false\n *\n * isObjectLike(null)\n * // => false\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nconst isObjectLike = (value: any): value is object | Function | Array<any> => {\n return typeof value === 'object' && value !== null;\n};\n\nexport default isObjectLike;\n"]}
1
+ {"version":3,"sources":["../src/common/isObjectLike.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wDAAwD;AACxD,MAAM,YAAY,GAAG,CAAC,KAAU,EAA2C,EAAE;IAC3E,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACrD,CAAC,CAAC;AAEF,kBAAe,YAAY,CAAC","file":"isObjectLike.js","sourcesContent":["/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * isObjectLike({})\n * // => true\n *\n * isObjectLike([1, 2, 3])\n * // => true\n *\n * isObjectLike(Function)\n * // => false\n *\n * isObjectLike(null)\n * // => false\n */\n// eslint-disable-next-line @typescript-eslint/ban-types\nconst isObjectLike = (value: any): value is object | Function | Array<any> => {\n return typeof value === 'object' && value !== null;\n};\n\nexport default isObjectLike;\n"]}