@visactor/vutils 0.9.0-alpha.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 (611) hide show
  1. package/README.md +34 -0
  2. package/README.zh-CN.md +0 -0
  3. package/cjs/angle.d.ts +12 -0
  4. package/cjs/angle.js +40 -0
  5. package/cjs/angle.js.map +1 -0
  6. package/cjs/color/Color.d.ts +181 -0
  7. package/cjs/color/Color.js +298 -0
  8. package/cjs/color/Color.js.map +1 -0
  9. package/cjs/color/hexToRgb.d.ts +1 -0
  10. package/cjs/color/hexToRgb.js +13 -0
  11. package/cjs/color/hexToRgb.js.map +1 -0
  12. package/cjs/color/hslToRgb.d.ts +5 -0
  13. package/cjs/color/hslToRgb.js +21 -0
  14. package/cjs/color/hslToRgb.js.map +1 -0
  15. package/cjs/color/index.d.ts +6 -0
  16. package/cjs/color/index.js +80 -0
  17. package/cjs/color/index.js.map +1 -0
  18. package/cjs/color/interpolate.d.ts +2 -0
  19. package/cjs/color/interpolate.js +18 -0
  20. package/cjs/color/interpolate.js.map +1 -0
  21. package/cjs/color/rgbToHex.d.ts +1 -0
  22. package/cjs/color/rgbToHex.js +10 -0
  23. package/cjs/color/rgbToHex.js.map +1 -0
  24. package/cjs/color/rgbToHsl.d.ts +5 -0
  25. package/cjs/color/rgbToHsl.js +19 -0
  26. package/cjs/color/rgbToHsl.js.map +1 -0
  27. package/cjs/common/array.d.ts +9 -0
  28. package/cjs/common/array.js +64 -0
  29. package/cjs/common/array.js.map +1 -0
  30. package/cjs/common/ascending.d.ts +1 -0
  31. package/cjs/common/ascending.js +10 -0
  32. package/cjs/common/ascending.js.map +1 -0
  33. package/cjs/common/bisect.d.ts +1 -0
  34. package/cjs/common/bisect.js +24 -0
  35. package/cjs/common/bisect.js.map +1 -0
  36. package/cjs/common/clamp.d.ts +2 -0
  37. package/cjs/common/clamp.js +12 -0
  38. package/cjs/common/clamp.js.map +1 -0
  39. package/cjs/common/clampRange.d.ts +2 -0
  40. package/cjs/common/clampRange.js +16 -0
  41. package/cjs/common/clampRange.js.map +1 -0
  42. package/cjs/common/clamper.d.ts +1 -0
  43. package/cjs/common/clamper.js +11 -0
  44. package/cjs/common/clamper.js.map +1 -0
  45. package/cjs/common/clone.d.ts +1 -0
  46. package/cjs/common/clone.js +42 -0
  47. package/cjs/common/clone.js.map +1 -0
  48. package/cjs/common/cloneDeep.d.ts +1 -0
  49. package/cjs/common/cloneDeep.js +31 -0
  50. package/cjs/common/cloneDeep.js.map +1 -0
  51. package/cjs/common/constant.d.ts +2 -0
  52. package/cjs/common/constant.js +17 -0
  53. package/cjs/common/constant.js.map +1 -0
  54. package/cjs/common/debounce.d.ts +7 -0
  55. package/cjs/common/debounce.js +76 -0
  56. package/cjs/common/debounce.js.map +1 -0
  57. package/cjs/common/deviation.d.ts +1 -0
  58. package/cjs/common/deviation.js +15 -0
  59. package/cjs/common/deviation.js.map +1 -0
  60. package/cjs/common/get.d.ts +3 -0
  61. package/cjs/common/get.js +20 -0
  62. package/cjs/common/get.js.map +1 -0
  63. package/cjs/common/getType.d.ts +2 -0
  64. package/cjs/common/getType.js +9 -0
  65. package/cjs/common/getType.js.map +1 -0
  66. package/cjs/common/has.d.ts +3 -0
  67. package/cjs/common/has.js +10 -0
  68. package/cjs/common/has.js.map +1 -0
  69. package/cjs/common/index.d.ts +56 -0
  70. package/cjs/common/index.js +485 -0
  71. package/cjs/common/index.js.map +1 -0
  72. package/cjs/common/interpolate.d.ts +4 -0
  73. package/cjs/common/interpolate.js +55 -0
  74. package/cjs/common/interpolate.js.map +1 -0
  75. package/cjs/common/isArray.d.ts +2 -0
  76. package/cjs/common/isArray.js +17 -0
  77. package/cjs/common/isArray.js.map +1 -0
  78. package/cjs/common/isArrayLike.d.ts +2 -0
  79. package/cjs/common/isArrayLike.js +12 -0
  80. package/cjs/common/isArrayLike.js.map +1 -0
  81. package/cjs/common/isBase64.d.ts +2 -0
  82. package/cjs/common/isBase64.js +10 -0
  83. package/cjs/common/isBase64.js.map +1 -0
  84. package/cjs/common/isBoolean.d.ts +2 -0
  85. package/cjs/common/isBoolean.js +17 -0
  86. package/cjs/common/isBoolean.js.map +1 -0
  87. package/cjs/common/isDate.d.ts +2 -0
  88. package/cjs/common/isDate.js +16 -0
  89. package/cjs/common/isDate.js.map +1 -0
  90. package/cjs/common/isEmpty.d.ts +2 -0
  91. package/cjs/common/isEmpty.js +26 -0
  92. package/cjs/common/isEmpty.js.map +1 -0
  93. package/cjs/common/isEqual.d.ts +1 -0
  94. package/cjs/common/isEqual.js +49 -0
  95. package/cjs/common/isEqual.js.map +1 -0
  96. package/cjs/common/isFunction.d.ts +2 -0
  97. package/cjs/common/isFunction.js +10 -0
  98. package/cjs/common/isFunction.js.map +1 -0
  99. package/cjs/common/isNil.d.ts +2 -0
  100. package/cjs/common/isNil.js +10 -0
  101. package/cjs/common/isNil.js.map +1 -0
  102. package/cjs/common/isNull.d.ts +2 -0
  103. package/cjs/common/isNull.js +10 -0
  104. package/cjs/common/isNull.js.map +1 -0
  105. package/cjs/common/isNumber.d.ts +2 -0
  106. package/cjs/common/isNumber.js +19 -0
  107. package/cjs/common/isNumber.js.map +1 -0
  108. package/cjs/common/isNumeric.d.ts +2 -0
  109. package/cjs/common/isNumeric.js +10 -0
  110. package/cjs/common/isNumeric.js.map +1 -0
  111. package/cjs/common/isObject.d.ts +2 -0
  112. package/cjs/common/isObject.js +12 -0
  113. package/cjs/common/isObject.js.map +1 -0
  114. package/cjs/common/isObjectLike.d.ts +2 -0
  115. package/cjs/common/isObjectLike.js +10 -0
  116. package/cjs/common/isObjectLike.js.map +1 -0
  117. package/cjs/common/isPlainObject.d.ts +2 -0
  118. package/cjs/common/isPlainObject.js +22 -0
  119. package/cjs/common/isPlainObject.js.map +1 -0
  120. package/cjs/common/isPrototype.d.ts +2 -0
  121. package/cjs/common/isPrototype.js +13 -0
  122. package/cjs/common/isPrototype.js.map +1 -0
  123. package/cjs/common/isRegExp.d.ts +2 -0
  124. package/cjs/common/isRegExp.js +16 -0
  125. package/cjs/common/isRegExp.js.map +1 -0
  126. package/cjs/common/isShallowEqual.d.ts +1 -0
  127. package/cjs/common/isShallowEqual.js +34 -0
  128. package/cjs/common/isShallowEqual.js.map +1 -0
  129. package/cjs/common/isString.d.ts +2 -0
  130. package/cjs/common/isString.js +19 -0
  131. package/cjs/common/isString.js.map +1 -0
  132. package/cjs/common/isType.d.ts +2 -0
  133. package/cjs/common/isType.js +10 -0
  134. package/cjs/common/isType.js.map +1 -0
  135. package/cjs/common/isUndefined.d.ts +2 -0
  136. package/cjs/common/isUndefined.js +10 -0
  137. package/cjs/common/isUndefined.js.map +1 -0
  138. package/cjs/common/isValid.d.ts +2 -0
  139. package/cjs/common/isValid.js +10 -0
  140. package/cjs/common/isValid.js.map +1 -0
  141. package/cjs/common/isValidNumber.d.ts +2 -0
  142. package/cjs/common/isValidNumber.js +17 -0
  143. package/cjs/common/isValidNumber.js.map +1 -0
  144. package/cjs/common/isValidUrl.d.ts +2 -0
  145. package/cjs/common/isValidUrl.js +10 -0
  146. package/cjs/common/isValidUrl.js.map +1 -0
  147. package/cjs/common/lowerFirst.d.ts +2 -0
  148. package/cjs/common/lowerFirst.js +12 -0
  149. package/cjs/common/lowerFirst.js.map +1 -0
  150. package/cjs/common/median.d.ts +1 -0
  151. package/cjs/common/median.js +13 -0
  152. package/cjs/common/median.js.map +1 -0
  153. package/cjs/common/merge.d.ts +1 -0
  154. package/cjs/common/merge.js +63 -0
  155. package/cjs/common/merge.js.map +1 -0
  156. package/cjs/common/mixin.d.ts +5 -0
  157. package/cjs/common/mixin.js +35 -0
  158. package/cjs/common/mixin.js.map +1 -0
  159. package/cjs/common/number.d.ts +3 -0
  160. package/cjs/common/number.js +23 -0
  161. package/cjs/common/number.js.map +1 -0
  162. package/cjs/common/pad.d.ts +2 -0
  163. package/cjs/common/pad.js +17 -0
  164. package/cjs/common/pad.js.map +1 -0
  165. package/cjs/common/pick.d.ts +1 -0
  166. package/cjs/common/pick.js +24 -0
  167. package/cjs/common/pick.js.map +1 -0
  168. package/cjs/common/pickWithout.d.ts +1 -0
  169. package/cjs/common/pickWithout.js +28 -0
  170. package/cjs/common/pickWithout.js.map +1 -0
  171. package/cjs/common/quantileSorted.d.ts +1 -0
  172. package/cjs/common/quantileSorted.js +19 -0
  173. package/cjs/common/quantileSorted.js.map +1 -0
  174. package/cjs/common/range.d.ts +1 -0
  175. package/cjs/common/range.js +24 -0
  176. package/cjs/common/range.js.map +1 -0
  177. package/cjs/common/throttle.d.ts +5 -0
  178. package/cjs/common/throttle.js +27 -0
  179. package/cjs/common/throttle.js.map +1 -0
  180. package/cjs/common/tickStep.d.ts +1 -0
  181. package/cjs/common/tickStep.js +18 -0
  182. package/cjs/common/tickStep.js.map +1 -0
  183. package/cjs/common/toDate.d.ts +2 -0
  184. package/cjs/common/toDate.js +28 -0
  185. package/cjs/common/toDate.js.map +1 -0
  186. package/cjs/common/toNumber.d.ts +1 -0
  187. package/cjs/common/toNumber.js +10 -0
  188. package/cjs/common/toNumber.js.map +1 -0
  189. package/cjs/common/toValidNumber.d.ts +1 -0
  190. package/cjs/common/toValidNumber.js +22 -0
  191. package/cjs/common/toValidNumber.js.map +1 -0
  192. package/cjs/common/truncate.d.ts +2 -0
  193. package/cjs/common/truncate.js +19 -0
  194. package/cjs/common/truncate.js.map +1 -0
  195. package/cjs/common/upperFirst.d.ts +2 -0
  196. package/cjs/common/upperFirst.js +12 -0
  197. package/cjs/common/upperFirst.js.map +1 -0
  198. package/cjs/common/uuid.d.ts +2 -0
  199. package/cjs/common/uuid.js +19 -0
  200. package/cjs/common/uuid.js.map +1 -0
  201. package/cjs/common/variance.d.ts +1 -0
  202. package/cjs/common/variance.js +17 -0
  203. package/cjs/common/variance.js.map +1 -0
  204. package/cjs/data-structure/bounds.d.ts +81 -0
  205. package/cjs/data-structure/bounds.js +139 -0
  206. package/cjs/data-structure/bounds.js.map +1 -0
  207. package/cjs/data-structure/hashTable.d.ts +35 -0
  208. package/cjs/data-structure/hashTable.js +114 -0
  209. package/cjs/data-structure/hashTable.js.map +1 -0
  210. package/cjs/data-structure/index.d.ts +4 -0
  211. package/cjs/data-structure/index.js +22 -0
  212. package/cjs/data-structure/index.js.map +1 -0
  213. package/cjs/data-structure/matrix.d.ts +80 -0
  214. package/cjs/data-structure/matrix.js +113 -0
  215. package/cjs/data-structure/matrix.js.map +1 -0
  216. package/cjs/data-structure/point.d.ts +62 -0
  217. package/cjs/data-structure/point.js +81 -0
  218. package/cjs/data-structure/point.js.map +1 -0
  219. package/cjs/dom.d.ts +10 -0
  220. package/cjs/dom.js +86 -0
  221. package/cjs/dom.js.map +1 -0
  222. package/cjs/geo/index.d.ts +2 -0
  223. package/cjs/geo/index.js +21 -0
  224. package/cjs/geo/index.js.map +1 -0
  225. package/cjs/geo/interface.d.ts +1 -0
  226. package/cjs/geo/interface.js +6 -0
  227. package/cjs/geo/interface.js.map +1 -0
  228. package/cjs/geo/invariant.d.ts +9 -0
  229. package/cjs/geo/invariant.js +45 -0
  230. package/cjs/geo/invariant.js.map +1 -0
  231. package/cjs/graphics/algorithm/aabb.d.ts +6 -0
  232. package/cjs/graphics/algorithm/aabb.js +58 -0
  233. package/cjs/graphics/algorithm/aabb.js.map +1 -0
  234. package/cjs/graphics/algorithm/index.d.ts +3 -0
  235. package/cjs/graphics/algorithm/index.js +22 -0
  236. package/cjs/graphics/algorithm/index.js.map +1 -0
  237. package/cjs/graphics/algorithm/interface.d.ts +20 -0
  238. package/cjs/graphics/algorithm/interface.js +6 -0
  239. package/cjs/graphics/algorithm/interface.js.map +1 -0
  240. package/cjs/graphics/algorithm/intersect.d.ts +25 -0
  241. package/cjs/graphics/algorithm/intersect.js +143 -0
  242. package/cjs/graphics/algorithm/intersect.js.map +1 -0
  243. package/cjs/graphics/algorithm/obb.d.ts +5 -0
  244. package/cjs/graphics/algorithm/obb.js +80 -0
  245. package/cjs/graphics/algorithm/obb.js.map +1 -0
  246. package/cjs/graphics/graph-util.d.ts +23 -0
  247. package/cjs/graphics/graph-util.js +47 -0
  248. package/cjs/graphics/graph-util.js.map +1 -0
  249. package/cjs/graphics/image.d.ts +2 -0
  250. package/cjs/graphics/image.js +18 -0
  251. package/cjs/graphics/image.js.map +1 -0
  252. package/cjs/graphics/index.d.ts +5 -0
  253. package/cjs/graphics/index.js +23 -0
  254. package/cjs/graphics/index.js.map +1 -0
  255. package/cjs/graphics/polygon.d.ts +5 -0
  256. package/cjs/graphics/polygon.js +54 -0
  257. package/cjs/graphics/polygon.js.map +1 -0
  258. package/cjs/graphics/text/index.d.ts +2 -0
  259. package/cjs/graphics/text/index.js +39 -0
  260. package/cjs/graphics/text/index.js.map +1 -0
  261. package/cjs/graphics/text/measure/index.d.ts +4 -0
  262. package/cjs/graphics/text/measure/index.js +22 -0
  263. package/cjs/graphics/text/measure/index.js.map +1 -0
  264. package/cjs/graphics/text/measure/interface.d.ts +31 -0
  265. package/cjs/graphics/text/measure/interface.js +6 -0
  266. package/cjs/graphics/text/measure/interface.js.map +1 -0
  267. package/cjs/graphics/text/measure/test.d.ts +14 -0
  268. package/cjs/graphics/text/measure/test.js +67 -0
  269. package/cjs/graphics/text/measure/test.js.map +1 -0
  270. package/cjs/graphics/text/measure/textMeasure.d.ts +38 -0
  271. package/cjs/graphics/text/measure/textMeasure.js +183 -0
  272. package/cjs/graphics/text/measure/textMeasure.js.map +1 -0
  273. package/cjs/graphics/text/measure/util.d.ts +2 -0
  274. package/cjs/graphics/text/measure/util.js +11 -0
  275. package/cjs/graphics/text/measure/util.js.map +1 -0
  276. package/cjs/graphics/text/stringWidth.d.ts +2 -0
  277. package/cjs/graphics/text/stringWidth.js +49 -0
  278. package/cjs/graphics/text/stringWidth.js.map +1 -0
  279. package/cjs/index.d.ts +15 -0
  280. package/cjs/index.js +47 -0
  281. package/cjs/index.js.map +1 -0
  282. package/cjs/logger.d.ts +12 -0
  283. package/cjs/logger.js +36 -0
  284. package/cjs/logger.js.map +1 -0
  285. package/cjs/lru.d.ts +25 -0
  286. package/cjs/lru.js +43 -0
  287. package/cjs/lru.js.map +1 -0
  288. package/cjs/math.d.ts +66 -0
  289. package/cjs/math.js +57 -0
  290. package/cjs/math.js.map +1 -0
  291. package/cjs/padding.d.ts +7 -0
  292. package/cjs/padding.js +41 -0
  293. package/cjs/padding.js.map +1 -0
  294. package/cjs/time/formatUtils.d.ts +17 -0
  295. package/cjs/time/formatUtils.js +95 -0
  296. package/cjs/time/formatUtils.js.map +1 -0
  297. package/cjs/time/index.d.ts +2 -0
  298. package/cjs/time/index.js +21 -0
  299. package/cjs/time/index.js.map +1 -0
  300. package/cjs/time/interval.d.ts +77 -0
  301. package/cjs/time/interval.js +324 -0
  302. package/cjs/time/interval.js.map +1 -0
  303. package/cjs/type.d.ts +5 -0
  304. package/cjs/type.js +6 -0
  305. package/cjs/type.js.map +1 -0
  306. package/dist/visactor_vutils.js +1 -0
  307. package/dist/visactor_vutils.min.js +1 -0
  308. package/es/angle.d.ts +12 -0
  309. package/es/angle.js +31 -0
  310. package/es/angle.js.map +1 -0
  311. package/es/color/Color.d.ts +181 -0
  312. package/es/color/Color.js +283 -0
  313. package/es/color/Color.js.map +1 -0
  314. package/es/color/hexToRgb.d.ts +1 -0
  315. package/es/color/hexToRgb.js +7 -0
  316. package/es/color/hexToRgb.js.map +1 -0
  317. package/es/color/hslToRgb.d.ts +5 -0
  318. package/es/color/hslToRgb.js +15 -0
  319. package/es/color/hslToRgb.js.map +1 -0
  320. package/es/color/index.d.ts +6 -0
  321. package/es/color/index.js +12 -0
  322. package/es/color/index.js.map +1 -0
  323. package/es/color/interpolate.d.ts +2 -0
  324. package/es/color/interpolate.js +10 -0
  325. package/es/color/interpolate.js.map +1 -0
  326. package/es/color/rgbToHex.d.ts +1 -0
  327. package/es/color/rgbToHex.js +4 -0
  328. package/es/color/rgbToHex.js.map +1 -0
  329. package/es/color/rgbToHsl.d.ts +5 -0
  330. package/es/color/rgbToHsl.js +13 -0
  331. package/es/color/rgbToHsl.js.map +1 -0
  332. package/es/common/array.d.ts +9 -0
  333. package/es/common/array.js +50 -0
  334. package/es/common/array.js.map +1 -0
  335. package/es/common/ascending.d.ts +1 -0
  336. package/es/common/ascending.js +4 -0
  337. package/es/common/ascending.js.map +1 -0
  338. package/es/common/bisect.d.ts +1 -0
  339. package/es/common/bisect.js +12 -0
  340. package/es/common/bisect.js.map +1 -0
  341. package/es/common/clamp.d.ts +2 -0
  342. package/es/common/clamp.js +6 -0
  343. package/es/common/clamp.js.map +1 -0
  344. package/es/common/clampRange.d.ts +2 -0
  345. package/es/common/clampRange.js +10 -0
  346. package/es/common/clampRange.js.map +1 -0
  347. package/es/common/clamper.d.ts +1 -0
  348. package/es/common/clamper.js +5 -0
  349. package/es/common/clamper.js.map +1 -0
  350. package/es/common/clone.d.ts +1 -0
  351. package/es/common/clone.js +32 -0
  352. package/es/common/clone.js.map +1 -0
  353. package/es/common/cloneDeep.d.ts +1 -0
  354. package/es/common/cloneDeep.js +26 -0
  355. package/es/common/cloneDeep.js.map +1 -0
  356. package/es/common/constant.d.ts +2 -0
  357. package/es/common/constant.js +6 -0
  358. package/es/common/constant.js.map +1 -0
  359. package/es/common/debounce.d.ts +7 -0
  360. package/es/common/debounce.js +68 -0
  361. package/es/common/debounce.js.map +1 -0
  362. package/es/common/deviation.d.ts +1 -0
  363. package/es/common/deviation.js +7 -0
  364. package/es/common/deviation.js.map +1 -0
  365. package/es/common/get.d.ts +3 -0
  366. package/es/common/get.js +10 -0
  367. package/es/common/get.js.map +1 -0
  368. package/es/common/getType.d.ts +2 -0
  369. package/es/common/getType.js +3 -0
  370. package/es/common/getType.js.map +1 -0
  371. package/es/common/has.d.ts +3 -0
  372. package/es/common/has.js +4 -0
  373. package/es/common/has.js.map +1 -0
  374. package/es/common/index.d.ts +56 -0
  375. package/es/common/index.js +112 -0
  376. package/es/common/index.js.map +1 -0
  377. package/es/common/interpolate.d.ts +4 -0
  378. package/es/common/interpolate.js +45 -0
  379. package/es/common/interpolate.js.map +1 -0
  380. package/es/common/isArray.d.ts +2 -0
  381. package/es/common/isArray.js +6 -0
  382. package/es/common/isArray.js.map +1 -0
  383. package/es/common/isArrayLike.d.ts +2 -0
  384. package/es/common/isArrayLike.js +6 -0
  385. package/es/common/isArrayLike.js.map +1 -0
  386. package/es/common/isBase64.d.ts +2 -0
  387. package/es/common/isBase64.js +4 -0
  388. package/es/common/isBase64.js.map +1 -0
  389. package/es/common/isBoolean.d.ts +2 -0
  390. package/es/common/isBoolean.js +6 -0
  391. package/es/common/isBoolean.js.map +1 -0
  392. package/es/common/isDate.d.ts +2 -0
  393. package/es/common/isDate.js +6 -0
  394. package/es/common/isDate.js.map +1 -0
  395. package/es/common/isEmpty.d.ts +2 -0
  396. package/es/common/isEmpty.js +22 -0
  397. package/es/common/isEmpty.js.map +1 -0
  398. package/es/common/isEqual.d.ts +1 -0
  399. package/es/common/isEqual.js +39 -0
  400. package/es/common/isEqual.js.map +1 -0
  401. package/es/common/isFunction.d.ts +2 -0
  402. package/es/common/isFunction.js +4 -0
  403. package/es/common/isFunction.js.map +1 -0
  404. package/es/common/isNil.d.ts +2 -0
  405. package/es/common/isNil.js +4 -0
  406. package/es/common/isNil.js.map +1 -0
  407. package/es/common/isNull.d.ts +2 -0
  408. package/es/common/isNull.js +4 -0
  409. package/es/common/isNull.js.map +1 -0
  410. package/es/common/isNumber.d.ts +2 -0
  411. package/es/common/isNumber.js +9 -0
  412. package/es/common/isNumber.js.map +1 -0
  413. package/es/common/isNumeric.d.ts +2 -0
  414. package/es/common/isNumeric.js +4 -0
  415. package/es/common/isNumeric.js.map +1 -0
  416. package/es/common/isObject.d.ts +2 -0
  417. package/es/common/isObject.js +6 -0
  418. package/es/common/isObject.js.map +1 -0
  419. package/es/common/isObjectLike.d.ts +2 -0
  420. package/es/common/isObjectLike.js +4 -0
  421. package/es/common/isObjectLike.js.map +1 -0
  422. package/es/common/isPlainObject.d.ts +2 -0
  423. package/es/common/isPlainObject.js +14 -0
  424. package/es/common/isPlainObject.js.map +1 -0
  425. package/es/common/isPrototype.d.ts +2 -0
  426. package/es/common/isPrototype.js +7 -0
  427. package/es/common/isPrototype.js.map +1 -0
  428. package/es/common/isRegExp.d.ts +2 -0
  429. package/es/common/isRegExp.js +6 -0
  430. package/es/common/isRegExp.js.map +1 -0
  431. package/es/common/isShallowEqual.d.ts +1 -0
  432. package/es/common/isShallowEqual.js +22 -0
  433. package/es/common/isShallowEqual.js.map +1 -0
  434. package/es/common/isString.d.ts +2 -0
  435. package/es/common/isString.js +9 -0
  436. package/es/common/isString.js.map +1 -0
  437. package/es/common/isType.d.ts +2 -0
  438. package/es/common/isType.js +4 -0
  439. package/es/common/isType.js.map +1 -0
  440. package/es/common/isUndefined.d.ts +2 -0
  441. package/es/common/isUndefined.js +4 -0
  442. package/es/common/isUndefined.js.map +1 -0
  443. package/es/common/isValid.d.ts +2 -0
  444. package/es/common/isValid.js +4 -0
  445. package/es/common/isValid.js.map +1 -0
  446. package/es/common/isValidNumber.d.ts +2 -0
  447. package/es/common/isValidNumber.js +6 -0
  448. package/es/common/isValidNumber.js.map +1 -0
  449. package/es/common/isValidUrl.d.ts +2 -0
  450. package/es/common/isValidUrl.js +4 -0
  451. package/es/common/isValidUrl.js.map +1 -0
  452. package/es/common/lowerFirst.d.ts +2 -0
  453. package/es/common/lowerFirst.js +6 -0
  454. package/es/common/lowerFirst.js.map +1 -0
  455. package/es/common/median.d.ts +1 -0
  456. package/es/common/median.js +9 -0
  457. package/es/common/median.js.map +1 -0
  458. package/es/common/merge.d.ts +1 -0
  459. package/es/common/merge.js +54 -0
  460. package/es/common/merge.js.map +1 -0
  461. package/es/common/mixin.d.ts +5 -0
  462. package/es/common/mixin.js +28 -0
  463. package/es/common/mixin.js.map +1 -0
  464. package/es/common/number.d.ts +3 -0
  465. package/es/common/number.js +15 -0
  466. package/es/common/number.js.map +1 -0
  467. package/es/common/pad.d.ts +2 -0
  468. package/es/common/pad.js +11 -0
  469. package/es/common/pad.js.map +1 -0
  470. package/es/common/pick.d.ts +1 -0
  471. package/es/common/pick.js +12 -0
  472. package/es/common/pick.js.map +1 -0
  473. package/es/common/pickWithout.d.ts +1 -0
  474. package/es/common/pickWithout.js +16 -0
  475. package/es/common/pickWithout.js.map +1 -0
  476. package/es/common/quantileSorted.d.ts +1 -0
  477. package/es/common/quantileSorted.js +11 -0
  478. package/es/common/quantileSorted.js.map +1 -0
  479. package/es/common/range.d.ts +1 -0
  480. package/es/common/range.js +10 -0
  481. package/es/common/range.js.map +1 -0
  482. package/es/common/throttle.d.ts +5 -0
  483. package/es/common/throttle.js +17 -0
  484. package/es/common/throttle.js.map +1 -0
  485. package/es/common/tickStep.d.ts +1 -0
  486. package/es/common/tickStep.js +10 -0
  487. package/es/common/tickStep.js.map +1 -0
  488. package/es/common/toDate.d.ts +2 -0
  489. package/es/common/toDate.js +18 -0
  490. package/es/common/toDate.js.map +1 -0
  491. package/es/common/toNumber.d.ts +1 -0
  492. package/es/common/toNumber.js +4 -0
  493. package/es/common/toNumber.js.map +1 -0
  494. package/es/common/toValidNumber.d.ts +1 -0
  495. package/es/common/toValidNumber.js +8 -0
  496. package/es/common/toValidNumber.js.map +1 -0
  497. package/es/common/truncate.d.ts +2 -0
  498. package/es/common/truncate.js +9 -0
  499. package/es/common/truncate.js.map +1 -0
  500. package/es/common/upperFirst.d.ts +2 -0
  501. package/es/common/upperFirst.js +6 -0
  502. package/es/common/upperFirst.js.map +1 -0
  503. package/es/common/uuid.d.ts +2 -0
  504. package/es/common/uuid.js +13 -0
  505. package/es/common/uuid.js.map +1 -0
  506. package/es/common/variance.d.ts +1 -0
  507. package/es/common/variance.js +11 -0
  508. package/es/common/variance.js.map +1 -0
  509. package/es/data-structure/bounds.d.ts +81 -0
  510. package/es/data-structure/bounds.js +127 -0
  511. package/es/data-structure/bounds.js.map +1 -0
  512. package/es/data-structure/hashTable.d.ts +35 -0
  513. package/es/data-structure/hashTable.js +104 -0
  514. package/es/data-structure/hashTable.js.map +1 -0
  515. package/es/data-structure/index.d.ts +4 -0
  516. package/es/data-structure/index.js +8 -0
  517. package/es/data-structure/index.js.map +1 -0
  518. package/es/data-structure/matrix.d.ts +80 -0
  519. package/es/data-structure/matrix.js +106 -0
  520. package/es/data-structure/matrix.js.map +1 -0
  521. package/es/data-structure/point.d.ts +62 -0
  522. package/es/data-structure/point.js +65 -0
  523. package/es/data-structure/point.js.map +1 -0
  524. package/es/dom.d.ts +10 -0
  525. package/es/dom.js +75 -0
  526. package/es/dom.js.map +1 -0
  527. package/es/geo/index.d.ts +2 -0
  528. package/es/geo/index.js +4 -0
  529. package/es/geo/index.js.map +1 -0
  530. package/es/geo/interface.d.ts +1 -0
  531. package/es/geo/interface.js +2 -0
  532. package/es/geo/interface.js.map +1 -0
  533. package/es/geo/invariant.d.ts +9 -0
  534. package/es/geo/invariant.js +40 -0
  535. package/es/geo/invariant.js.map +1 -0
  536. package/es/graphics/algorithm/aabb.d.ts +6 -0
  537. package/es/graphics/algorithm/aabb.js +49 -0
  538. package/es/graphics/algorithm/aabb.js.map +1 -0
  539. package/es/graphics/algorithm/index.d.ts +3 -0
  540. package/es/graphics/algorithm/index.js +6 -0
  541. package/es/graphics/algorithm/index.js.map +1 -0
  542. package/es/graphics/algorithm/interface.d.ts +20 -0
  543. package/es/graphics/algorithm/interface.js +2 -0
  544. package/es/graphics/algorithm/interface.js.map +1 -0
  545. package/es/graphics/algorithm/intersect.d.ts +25 -0
  546. package/es/graphics/algorithm/intersect.js +135 -0
  547. package/es/graphics/algorithm/intersect.js.map +1 -0
  548. package/es/graphics/algorithm/obb.d.ts +5 -0
  549. package/es/graphics/algorithm/obb.js +68 -0
  550. package/es/graphics/algorithm/obb.js.map +1 -0
  551. package/es/graphics/graph-util.d.ts +23 -0
  552. package/es/graphics/graph-util.js +39 -0
  553. package/es/graphics/graph-util.js.map +1 -0
  554. package/es/graphics/image.d.ts +2 -0
  555. package/es/graphics/image.js +12 -0
  556. package/es/graphics/image.js.map +1 -0
  557. package/es/graphics/index.d.ts +5 -0
  558. package/es/graphics/index.js +10 -0
  559. package/es/graphics/index.js.map +1 -0
  560. package/es/graphics/polygon.d.ts +5 -0
  561. package/es/graphics/polygon.js +47 -0
  562. package/es/graphics/polygon.js.map +1 -0
  563. package/es/graphics/text/index.d.ts +2 -0
  564. package/es/graphics/text/index.js +4 -0
  565. package/es/graphics/text/index.js.map +1 -0
  566. package/es/graphics/text/measure/index.d.ts +4 -0
  567. package/es/graphics/text/measure/index.js +8 -0
  568. package/es/graphics/text/measure/index.js.map +1 -0
  569. package/es/graphics/text/measure/interface.d.ts +31 -0
  570. package/es/graphics/text/measure/interface.js +2 -0
  571. package/es/graphics/text/measure/interface.js.map +1 -0
  572. package/es/graphics/text/measure/test.d.ts +14 -0
  573. package/es/graphics/text/measure/test.js +65 -0
  574. package/es/graphics/text/measure/test.js.map +1 -0
  575. package/es/graphics/text/measure/textMeasure.d.ts +38 -0
  576. package/es/graphics/text/measure/textMeasure.js +181 -0
  577. package/es/graphics/text/measure/textMeasure.js.map +1 -0
  578. package/es/graphics/text/measure/util.d.ts +2 -0
  579. package/es/graphics/text/measure/util.js +5 -0
  580. package/es/graphics/text/measure/util.js.map +1 -0
  581. package/es/graphics/text/stringWidth.d.ts +2 -0
  582. package/es/graphics/text/stringWidth.js +43 -0
  583. package/es/graphics/text/stringWidth.js.map +1 -0
  584. package/es/index.d.ts +15 -0
  585. package/es/index.js +30 -0
  586. package/es/index.js.map +1 -0
  587. package/es/logger.d.ts +12 -0
  588. package/es/logger.js +38 -0
  589. package/es/logger.js.map +1 -0
  590. package/es/lru.d.ts +25 -0
  591. package/es/lru.js +36 -0
  592. package/es/lru.js.map +1 -0
  593. package/es/math.d.ts +66 -0
  594. package/es/math.js +76 -0
  595. package/es/math.js.map +1 -0
  596. package/es/padding.d.ts +7 -0
  597. package/es/padding.js +31 -0
  598. package/es/padding.js.map +1 -0
  599. package/es/time/formatUtils.d.ts +17 -0
  600. package/es/time/formatUtils.js +72 -0
  601. package/es/time/formatUtils.js.map +1 -0
  602. package/es/time/index.d.ts +2 -0
  603. package/es/time/index.js +4 -0
  604. package/es/time/index.js.map +1 -0
  605. package/es/time/interval.d.ts +77 -0
  606. package/es/time/interval.js +227 -0
  607. package/es/time/interval.js.map +1 -0
  608. package/es/type.d.ts +5 -0
  609. package/es/type.js +2 -0
  610. package/es/type.js.map +1 -0
  611. package/package.json +51 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/graphics/text/stringWidth.ts"],"names":[],"mappings":"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AS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,MAAM,KAAK,SAAS;QACpB,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,CAAC,MAAM,IAAI,SAAS,IAAI,SAAS,IAAI,MAAM,CAAC;QAC5C,MAAM,KAAK,SAAS;QACpB,CAAC,OAAO,IAAI,SAAS,IAAI,SAAS,IAAI,OAAO,CAAC;QAC9C,CAAC,OAAO,IAAI,SAAS,IAAI,SAAS,IAAI,OAAO,CAAC;QAC9C,CAAC,OAAO,IAAI,SAAS,IAAI,SAAS,IAAI,OAAO,CAAC;QAC9C,CAAC,OAAO,IAAI,SAAS,IAAI,SAAS,IAAI,OAAO,CAAC;QAC9C,CAAC,OAAO,IAAI,SAAS,IAAI,SAAS,IAAI,OAAO,CAAC;QAC9C,CAAC,OAAO,IAAI,SAAS,IAAI,SAAS,IAAI,OAAO,CAAC;QAC9C,CAAC,QAAQ,IAAI,SAAS,IAAI,SAAS,IAAI,QAAQ,CAAC,EAChD;QACA,OAAO,GAAG,CAAC;KACZ;IAED,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,GAAG,EAAE;IAGtB,OAAO,62WAA62W,CAAC;AACv3W,CAAC,CAAC","file":"stringWidth.js","sourcesContent":["export default function stringWidth(string: string, ambiguousCharacterIsNarrow: boolean = true) {\n if (typeof string !== 'string' || string.length === 0) {\n return 0;\n }\n\n string = stripAnsi(string);\n\n if (string.length === 0) {\n return 0;\n }\n\n string = string.replace(emojiRegex(), ' ');\n\n const ambiguousCharacterWidth = ambiguousCharacterIsNarrow ? 1 : 2;\n let width = 0;\n\n for (const character of string) {\n const codePoint = character.codePointAt(0)!;\n\n // Ignore control characters\n if (codePoint <= 0x1f || (codePoint >= 0x7f && codePoint <= 0x9f)) {\n continue;\n }\n\n // Ignore combining characters\n if (codePoint >= 0x300 && codePoint <= 0x36f) {\n continue;\n }\n\n const code = eastAsianCharacterInfo(character);\n switch (code) {\n case 'F':\n case 'W':\n width += 2;\n break;\n case 'A':\n width += ambiguousCharacterWidth;\n break;\n default:\n width += 1;\n }\n }\n\n return width;\n}\n\nconst stripAnsi = (string: string) => {\n if (typeof string !== 'string') {\n throw new TypeError(`Expected a \\`string\\`, got \\`${typeof string}\\``);\n }\n\n return string.replace(ansiRegex(), '');\n};\n\nconst ansiRegex = ({ onlyFirst = false } = {}) => {\n const pattern = [\n // eslint-disable-next-line max-len\n '[\\\\u001B\\\\u009B][[\\\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\\\d\\\\/#&.:=?%@~_]+)*|[a-zA-Z\\\\d]+(?:;[-a-zA-Z\\\\d\\\\/#&.:=?%@~_]*)*)?\\\\u0007)',\n '(?:(?:\\\\d{1,4}(?:;\\\\d{0,4})*)?[\\\\dA-PR-TZcf-nq-uy=><~]))'\n ].join('|');\n\n return new RegExp(pattern, onlyFirst ? undefined : 'g');\n};\n\nexport const eastAsianCharacterInfo = (character: string) => {\n let x = character.charCodeAt(0);\n let y = character.length === 2 ? character.charCodeAt(1) : 0;\n let codePoint = x;\n if (0xd800 <= x && x <= 0xdbff && 0xdc00 <= y && y <= 0xdfff) {\n x &= 0x3ff;\n y &= 0x3ff;\n codePoint = (x << 10) | y;\n codePoint += 0x10000;\n }\n\n if (\n 0x3000 === codePoint ||\n (0xff01 <= codePoint && codePoint <= 0xff60) ||\n (0xffe0 <= codePoint && codePoint <= 0xffe6)\n ) {\n return 'F';\n }\n if (\n 0x20a9 === codePoint ||\n (0xff61 <= codePoint && codePoint <= 0xffbe) ||\n (0xffc2 <= codePoint && codePoint <= 0xffc7) ||\n (0xffca <= codePoint && codePoint <= 0xffcf) ||\n (0xffd2 <= codePoint && codePoint <= 0xffd7) ||\n (0xffda <= codePoint && codePoint <= 0xffdc) ||\n (0xffe8 <= codePoint && codePoint <= 0xffee)\n ) {\n return 'H';\n }\n if (\n (0x1100 <= codePoint && codePoint <= 0x115f) ||\n (0x11a3 <= codePoint && codePoint <= 0x11a7) ||\n (0x11fa <= codePoint && codePoint <= 0x11ff) ||\n (0x2329 <= codePoint && codePoint <= 0x232a) ||\n (0x2e80 <= codePoint && codePoint <= 0x2e99) ||\n (0x2e9b <= codePoint && codePoint <= 0x2ef3) ||\n (0x2f00 <= codePoint && codePoint <= 0x2fd5) ||\n (0x2ff0 <= codePoint && codePoint <= 0x2ffb) ||\n (0x3001 <= codePoint && codePoint <= 0x303e) ||\n (0x3041 <= codePoint && codePoint <= 0x3096) ||\n (0x3099 <= codePoint && codePoint <= 0x30ff) ||\n (0x3105 <= codePoint && codePoint <= 0x312d) ||\n (0x3131 <= codePoint && codePoint <= 0x318e) ||\n (0x3190 <= codePoint && codePoint <= 0x31ba) ||\n (0x31c0 <= codePoint && codePoint <= 0x31e3) ||\n (0x31f0 <= codePoint && codePoint <= 0x321e) ||\n (0x3220 <= codePoint && codePoint <= 0x3247) ||\n (0x3250 <= codePoint && codePoint <= 0x32fe) ||\n (0x3300 <= codePoint && codePoint <= 0x4dbf) ||\n (0x4e00 <= codePoint && codePoint <= 0xa48c) ||\n (0xa490 <= codePoint && codePoint <= 0xa4c6) ||\n (0xa960 <= codePoint && codePoint <= 0xa97c) ||\n (0xac00 <= codePoint && codePoint <= 0xd7a3) ||\n (0xd7b0 <= codePoint && codePoint <= 0xd7c6) ||\n (0xd7cb <= codePoint && codePoint <= 0xd7fb) ||\n (0xf900 <= codePoint && codePoint <= 0xfaff) ||\n (0xfe10 <= codePoint && codePoint <= 0xfe19) ||\n (0xfe30 <= codePoint && codePoint <= 0xfe52) ||\n (0xfe54 <= codePoint && codePoint <= 0xfe66) ||\n (0xfe68 <= codePoint && codePoint <= 0xfe6b) ||\n (0x1b000 <= codePoint && codePoint <= 0x1b001) ||\n (0x1f200 <= codePoint && codePoint <= 0x1f202) ||\n (0x1f210 <= codePoint && codePoint <= 0x1f23a) ||\n (0x1f240 <= codePoint && codePoint <= 0x1f248) ||\n (0x1f250 <= codePoint && codePoint <= 0x1f251) ||\n (0x20000 <= codePoint && codePoint <= 0x2f73f) ||\n (0x2b740 <= codePoint && codePoint <= 0x2fffd) ||\n (0x30000 <= codePoint && codePoint <= 0x3fffd)\n ) {\n return 'W';\n }\n if (\n (0x0020 <= codePoint && codePoint <= 0x007e) ||\n (0x00a2 <= codePoint && codePoint <= 0x00a3) ||\n (0x00a5 <= codePoint && codePoint <= 0x00a6) ||\n 0x00ac === codePoint ||\n 0x00af === codePoint ||\n (0x27e6 <= codePoint && codePoint <= 0x27ed) ||\n (0x2985 <= codePoint && codePoint <= 0x2986)\n ) {\n return 'Na';\n }\n if (\n 0x00a1 === codePoint ||\n 0x00a4 === codePoint ||\n (0x00a7 <= codePoint && codePoint <= 0x00a8) ||\n 0x00aa === codePoint ||\n (0x00ad <= codePoint && codePoint <= 0x00ae) ||\n (0x00b0 <= codePoint && codePoint <= 0x00b4) ||\n (0x00b6 <= codePoint && codePoint <= 0x00ba) ||\n (0x00bc <= codePoint && codePoint <= 0x00bf) ||\n 0x00c6 === codePoint ||\n 0x00d0 === codePoint ||\n (0x00d7 <= codePoint && codePoint <= 0x00d8) ||\n (0x00de <= codePoint && codePoint <= 0x00e1) ||\n 0x00e6 === codePoint ||\n (0x00e8 <= codePoint && codePoint <= 0x00ea) ||\n (0x00ec <= codePoint && codePoint <= 0x00ed) ||\n 0x00f0 === codePoint ||\n (0x00f2 <= codePoint && codePoint <= 0x00f3) ||\n (0x00f7 <= codePoint && codePoint <= 0x00fa) ||\n 0x00fc === codePoint ||\n 0x00fe === codePoint ||\n 0x0101 === codePoint ||\n 0x0111 === codePoint ||\n 0x0113 === codePoint ||\n 0x011b === codePoint ||\n (0x0126 <= codePoint && codePoint <= 0x0127) ||\n 0x012b === codePoint ||\n (0x0131 <= codePoint && codePoint <= 0x0133) ||\n 0x0138 === codePoint ||\n (0x013f <= codePoint && codePoint <= 0x0142) ||\n 0x0144 === codePoint ||\n (0x0148 <= codePoint && codePoint <= 0x014b) ||\n 0x014d === codePoint ||\n (0x0152 <= codePoint && codePoint <= 0x0153) ||\n (0x0166 <= codePoint && codePoint <= 0x0167) ||\n 0x016b === codePoint ||\n 0x01ce === codePoint ||\n 0x01d0 === codePoint ||\n 0x01d2 === codePoint ||\n 0x01d4 === codePoint ||\n 0x01d6 === codePoint ||\n 0x01d8 === codePoint ||\n 0x01da === codePoint ||\n 0x01dc === codePoint ||\n 0x0251 === codePoint ||\n 0x0261 === codePoint ||\n 0x02c4 === codePoint ||\n 0x02c7 === codePoint ||\n (0x02c9 <= codePoint && codePoint <= 0x02cb) ||\n 0x02cd === codePoint ||\n 0x02d0 === codePoint ||\n (0x02d8 <= codePoint && codePoint <= 0x02db) ||\n 0x02dd === codePoint ||\n 0x02df === codePoint ||\n (0x0300 <= codePoint && codePoint <= 0x036f) ||\n (0x0391 <= codePoint && codePoint <= 0x03a1) ||\n (0x03a3 <= codePoint && codePoint <= 0x03a9) ||\n (0x03b1 <= codePoint && codePoint <= 0x03c1) ||\n (0x03c3 <= codePoint && codePoint <= 0x03c9) ||\n 0x0401 === codePoint ||\n (0x0410 <= codePoint && codePoint <= 0x044f) ||\n 0x0451 === codePoint ||\n 0x2010 === codePoint ||\n (0x2013 <= codePoint && codePoint <= 0x2016) ||\n (0x2018 <= codePoint && codePoint <= 0x2019) ||\n (0x201c <= codePoint && codePoint <= 0x201d) ||\n (0x2020 <= codePoint && codePoint <= 0x2022) ||\n (0x2024 <= codePoint && codePoint <= 0x2027) ||\n 0x2030 === codePoint ||\n (0x2032 <= codePoint && codePoint <= 0x2033) ||\n 0x2035 === codePoint ||\n 0x203b === codePoint ||\n 0x203e === codePoint ||\n 0x2074 === codePoint ||\n 0x207f === codePoint ||\n (0x2081 <= codePoint && codePoint <= 0x2084) ||\n 0x20ac === codePoint ||\n 0x2103 === codePoint ||\n 0x2105 === codePoint ||\n 0x2109 === codePoint ||\n 0x2113 === codePoint ||\n 0x2116 === codePoint ||\n (0x2121 <= codePoint && codePoint <= 0x2122) ||\n 0x2126 === codePoint ||\n 0x212b === codePoint ||\n (0x2153 <= codePoint && codePoint <= 0x2154) ||\n (0x215b <= codePoint && codePoint <= 0x215e) ||\n (0x2160 <= codePoint && codePoint <= 0x216b) ||\n (0x2170 <= codePoint && codePoint <= 0x2179) ||\n 0x2189 === codePoint ||\n (0x2190 <= codePoint && codePoint <= 0x2199) ||\n (0x21b8 <= codePoint && codePoint <= 0x21b9) ||\n 0x21d2 === codePoint ||\n 0x21d4 === codePoint ||\n 0x21e7 === codePoint ||\n 0x2200 === codePoint ||\n (0x2202 <= codePoint && codePoint <= 0x2203) ||\n (0x2207 <= codePoint && codePoint <= 0x2208) ||\n 0x220b === codePoint ||\n 0x220f === codePoint ||\n 0x2211 === codePoint ||\n 0x2215 === codePoint ||\n 0x221a === codePoint ||\n (0x221d <= codePoint && codePoint <= 0x2220) ||\n 0x2223 === codePoint ||\n 0x2225 === codePoint ||\n (0x2227 <= codePoint && codePoint <= 0x222c) ||\n 0x222e === codePoint ||\n (0x2234 <= codePoint && codePoint <= 0x2237) ||\n (0x223c <= codePoint && codePoint <= 0x223d) ||\n 0x2248 === codePoint ||\n 0x224c === codePoint ||\n 0x2252 === codePoint ||\n (0x2260 <= codePoint && codePoint <= 0x2261) ||\n (0x2264 <= codePoint && codePoint <= 0x2267) ||\n (0x226a <= codePoint && codePoint <= 0x226b) ||\n (0x226e <= codePoint && codePoint <= 0x226f) ||\n (0x2282 <= codePoint && codePoint <= 0x2283) ||\n (0x2286 <= codePoint && codePoint <= 0x2287) ||\n 0x2295 === codePoint ||\n 0x2299 === codePoint ||\n 0x22a5 === codePoint ||\n 0x22bf === codePoint ||\n 0x2312 === codePoint ||\n (0x2460 <= codePoint && codePoint <= 0x24e9) ||\n (0x24eb <= codePoint && codePoint <= 0x254b) ||\n (0x2550 <= codePoint && codePoint <= 0x2573) ||\n (0x2580 <= codePoint && codePoint <= 0x258f) ||\n (0x2592 <= codePoint && codePoint <= 0x2595) ||\n (0x25a0 <= codePoint && codePoint <= 0x25a1) ||\n (0x25a3 <= codePoint && codePoint <= 0x25a9) ||\n (0x25b2 <= codePoint && codePoint <= 0x25b3) ||\n (0x25b6 <= codePoint && codePoint <= 0x25b7) ||\n (0x25bc <= codePoint && codePoint <= 0x25bd) ||\n (0x25c0 <= codePoint && codePoint <= 0x25c1) ||\n (0x25c6 <= codePoint && codePoint <= 0x25c8) ||\n 0x25cb === codePoint ||\n (0x25ce <= codePoint && codePoint <= 0x25d1) ||\n (0x25e2 <= codePoint && codePoint <= 0x25e5) ||\n 0x25ef === codePoint ||\n (0x2605 <= codePoint && codePoint <= 0x2606) ||\n 0x2609 === codePoint ||\n (0x260e <= codePoint && codePoint <= 0x260f) ||\n (0x2614 <= codePoint && codePoint <= 0x2615) ||\n 0x261c === codePoint ||\n 0x261e === codePoint ||\n 0x2640 === codePoint ||\n 0x2642 === codePoint ||\n (0x2660 <= codePoint && codePoint <= 0x2661) ||\n (0x2663 <= codePoint && codePoint <= 0x2665) ||\n (0x2667 <= codePoint && codePoint <= 0x266a) ||\n (0x266c <= codePoint && codePoint <= 0x266d) ||\n 0x266f === codePoint ||\n (0x269e <= codePoint && codePoint <= 0x269f) ||\n (0x26be <= codePoint && codePoint <= 0x26bf) ||\n (0x26c4 <= codePoint && codePoint <= 0x26cd) ||\n (0x26cf <= codePoint && codePoint <= 0x26e1) ||\n 0x26e3 === codePoint ||\n (0x26e8 <= codePoint && codePoint <= 0x26ff) ||\n 0x273d === codePoint ||\n 0x2757 === codePoint ||\n (0x2776 <= codePoint && codePoint <= 0x277f) ||\n (0x2b55 <= codePoint && codePoint <= 0x2b59) ||\n (0x3248 <= codePoint && codePoint <= 0x324f) ||\n (0xe000 <= codePoint && codePoint <= 0xf8ff) ||\n (0xfe00 <= codePoint && codePoint <= 0xfe0f) ||\n 0xfffd === codePoint ||\n (0x1f100 <= codePoint && codePoint <= 0x1f10a) ||\n (0x1f110 <= codePoint && codePoint <= 0x1f12d) ||\n (0x1f130 <= codePoint && codePoint <= 0x1f169) ||\n (0x1f170 <= codePoint && codePoint <= 0x1f19a) ||\n (0xe0100 <= codePoint && codePoint <= 0xe01ef) ||\n (0xf0000 <= codePoint && codePoint <= 0xffffd) ||\n (0x100000 <= codePoint && codePoint <= 0x10fffd)\n ) {\n return 'A';\n }\n\n return 'N';\n};\n\nconst emojiRegex = () => {\n // https://mths.be/emoji\n // eslint-disable-next-line max-len\n return /[#*0-9]\\uFE0F?\\u20E3|[\\xA9\\xAE\\u203C\\u2049\\u2122\\u2139\\u2194-\\u2199\\u21A9\\u21AA\\u231A\\u231B\\u2328\\u23CF\\u23ED-\\u23EF\\u23F1\\u23F2\\u23F8-\\u23FA\\u24C2\\u25AA\\u25AB\\u25B6\\u25C0\\u25FB\\u25FC\\u25FE\\u2600-\\u2604\\u260E\\u2611\\u2614\\u2615\\u2618\\u2620\\u2622\\u2623\\u2626\\u262A\\u262E\\u262F\\u2638-\\u263A\\u2640\\u2642\\u2648-\\u2653\\u265F\\u2660\\u2663\\u2665\\u2666\\u2668\\u267B\\u267E\\u267F\\u2692\\u2694-\\u2697\\u2699\\u269B\\u269C\\u26A0\\u26A7\\u26AA\\u26B0\\u26B1\\u26BD\\u26BE\\u26C4\\u26C8\\u26CF\\u26D1\\u26D3\\u26E9\\u26F0-\\u26F5\\u26F7\\u26F8\\u26FA\\u2702\\u2708\\u2709\\u270F\\u2712\\u2714\\u2716\\u271D\\u2721\\u2733\\u2734\\u2744\\u2747\\u2757\\u2763\\u27A1\\u2934\\u2935\\u2B05-\\u2B07\\u2B1B\\u2B1C\\u2B55\\u3030\\u303D\\u3297\\u3299]\\uFE0F?|[\\u261D\\u270C\\u270D](?:\\uFE0F|\\uD83C[\\uDFFB-\\uDFFF])?|[\\u270A\\u270B](?:\\uD83C[\\uDFFB-\\uDFFF])?|[\\u23E9-\\u23EC\\u23F0\\u23F3\\u25FD\\u2693\\u26A1\\u26AB\\u26C5\\u26CE\\u26D4\\u26EA\\u26FD\\u2705\\u2728\\u274C\\u274E\\u2753-\\u2755\\u2795-\\u2797\\u27B0\\u27BF\\u2B50]|\\u26F9(?:\\uFE0F|\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|\\u2764\\uFE0F?(?:\\u200D(?:\\uD83D\\uDD25|\\uD83E\\uDE79))?|\\uD83C(?:[\\uDC04\\uDD70\\uDD71\\uDD7E\\uDD7F\\uDE02\\uDE37\\uDF21\\uDF24-\\uDF2C\\uDF36\\uDF7D\\uDF96\\uDF97\\uDF99-\\uDF9B\\uDF9E\\uDF9F\\uDFCD\\uDFCE\\uDFD4-\\uDFDF\\uDFF5\\uDFF7]\\uFE0F?|[\\uDF85\\uDFC2\\uDFC7](?:\\uD83C[\\uDFFB-\\uDFFF])?|[\\uDFC3\\uDFC4\\uDFCA](?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDFCB\\uDFCC](?:\\uFE0F|\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDCCF\\uDD8E\\uDD91-\\uDD9A\\uDE01\\uDE1A\\uDE2F\\uDE32-\\uDE36\\uDE38-\\uDE3A\\uDE50\\uDE51\\uDF00-\\uDF20\\uDF2D-\\uDF35\\uDF37-\\uDF7C\\uDF7E-\\uDF84\\uDF86-\\uDF93\\uDFA0-\\uDFC1\\uDFC5\\uDFC6\\uDFC8\\uDFC9\\uDFCF-\\uDFD3\\uDFE0-\\uDFF0\\uDFF8-\\uDFFF]|\\uDDE6\\uD83C[\\uDDE8-\\uDDEC\\uDDEE\\uDDF1\\uDDF2\\uDDF4\\uDDF6-\\uDDFA\\uDDFC\\uDDFD\\uDDFF]|\\uDDE7\\uD83C[\\uDDE6\\uDDE7\\uDDE9-\\uDDEF\\uDDF1-\\uDDF4\\uDDF6-\\uDDF9\\uDDFB\\uDDFC\\uDDFE\\uDDFF]|\\uDDE8\\uD83C[\\uDDE6\\uDDE8\\uDDE9\\uDDEB-\\uDDEE\\uDDF0-\\uDDF5\\uDDF7\\uDDFA-\\uDDFF]|\\uDDE9\\uD83C[\\uDDEA\\uDDEC\\uDDEF\\uDDF0\\uDDF2\\uDDF4\\uDDFF]|\\uDDEA\\uD83C[\\uDDE6\\uDDE8\\uDDEA\\uDDEC\\uDDED\\uDDF7-\\uDDFA]|\\uDDEB\\uD83C[\\uDDEE-\\uDDF0\\uDDF2\\uDDF4\\uDDF7]|\\uDDEC\\uD83C[\\uDDE6\\uDDE7\\uDDE9-\\uDDEE\\uDDF1-\\uDDF3\\uDDF5-\\uDDFA\\uDDFC\\uDDFE]|\\uDDED\\uD83C[\\uDDF0\\uDDF2\\uDDF3\\uDDF7\\uDDF9\\uDDFA]|\\uDDEE\\uD83C[\\uDDE8-\\uDDEA\\uDDF1-\\uDDF4\\uDDF6-\\uDDF9]|\\uDDEF\\uD83C[\\uDDEA\\uDDF2\\uDDF4\\uDDF5]|\\uDDF0\\uD83C[\\uDDEA\\uDDEC-\\uDDEE\\uDDF2\\uDDF3\\uDDF5\\uDDF7\\uDDFC\\uDDFE\\uDDFF]|\\uDDF1\\uD83C[\\uDDE6-\\uDDE8\\uDDEE\\uDDF0\\uDDF7-\\uDDFB\\uDDFE]|\\uDDF2\\uD83C[\\uDDE6\\uDDE8-\\uDDED\\uDDF0-\\uDDFF]|\\uDDF3\\uD83C[\\uDDE6\\uDDE8\\uDDEA-\\uDDEC\\uDDEE\\uDDF1\\uDDF4\\uDDF5\\uDDF7\\uDDFA\\uDDFF]|\\uDDF4\\uD83C\\uDDF2|\\uDDF5\\uD83C[\\uDDE6\\uDDEA-\\uDDED\\uDDF0-\\uDDF3\\uDDF7-\\uDDF9\\uDDFC\\uDDFE]|\\uDDF6\\uD83C\\uDDE6|\\uDDF7\\uD83C[\\uDDEA\\uDDF4\\uDDF8\\uDDFA\\uDDFC]|\\uDDF8\\uD83C[\\uDDE6-\\uDDEA\\uDDEC-\\uDDF4\\uDDF7-\\uDDF9\\uDDFB\\uDDFD-\\uDDFF]|\\uDDF9\\uD83C[\\uDDE6\\uDDE8\\uDDE9\\uDDEB-\\uDDED\\uDDEF-\\uDDF4\\uDDF7\\uDDF9\\uDDFB\\uDDFC\\uDDFF]|\\uDDFA\\uD83C[\\uDDE6\\uDDEC\\uDDF2\\uDDF3\\uDDF8\\uDDFE\\uDDFF]|\\uDDFB\\uD83C[\\uDDE6\\uDDE8\\uDDEA\\uDDEC\\uDDEE\\uDDF3\\uDDFA]|\\uDDFC\\uD83C[\\uDDEB\\uDDF8]|\\uDDFD\\uD83C\\uDDF0|\\uDDFE\\uD83C[\\uDDEA\\uDDF9]|\\uDDFF\\uD83C[\\uDDE6\\uDDF2\\uDDFC]|\\uDFF3\\uFE0F?(?:\\u200D(?:\\u26A7\\uFE0F?|\\uD83C\\uDF08))?|\\uDFF4(?:\\u200D\\u2620\\uFE0F?|\\uDB40\\uDC67\\uDB40\\uDC62\\uDB40(?:\\uDC65\\uDB40\\uDC6E\\uDB40\\uDC67|\\uDC73\\uDB40\\uDC63\\uDB40\\uDC74|\\uDC77\\uDB40\\uDC6C\\uDB40\\uDC73)\\uDB40\\uDC7F)?)|\\uD83D(?:[\\uDC08\\uDC26](?:\\u200D\\u2B1B)?|[\\uDC3F\\uDCFD\\uDD49\\uDD4A\\uDD6F\\uDD70\\uDD73\\uDD76-\\uDD79\\uDD87\\uDD8A-\\uDD8D\\uDDA5\\uDDA8\\uDDB1\\uDDB2\\uDDBC\\uDDC2-\\uDDC4\\uDDD1-\\uDDD3\\uDDDC-\\uDDDE\\uDDE1\\uDDE3\\uDDE8\\uDDEF\\uDDF3\\uDDFA\\uDECB\\uDECD-\\uDECF\\uDEE0-\\uDEE5\\uDEE9\\uDEF0\\uDEF3]\\uFE0F?|[\\uDC42\\uDC43\\uDC46-\\uDC50\\uDC66\\uDC67\\uDC6B-\\uDC6D\\uDC72\\uDC74-\\uDC76\\uDC78\\uDC7C\\uDC83\\uDC85\\uDC8F\\uDC91\\uDCAA\\uDD7A\\uDD95\\uDD96\\uDE4C\\uDE4F\\uDEC0\\uDECC](?:\\uD83C[\\uDFFB-\\uDFFF])?|[\\uDC6E\\uDC70\\uDC71\\uDC73\\uDC77\\uDC81\\uDC82\\uDC86\\uDC87\\uDE45-\\uDE47\\uDE4B\\uDE4D\\uDE4E\\uDEA3\\uDEB4-\\uDEB6](?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDD74\\uDD90](?:\\uFE0F|\\uD83C[\\uDFFB-\\uDFFF])?|[\\uDC00-\\uDC07\\uDC09-\\uDC14\\uDC16-\\uDC25\\uDC27-\\uDC3A\\uDC3C-\\uDC3E\\uDC40\\uDC44\\uDC45\\uDC51-\\uDC65\\uDC6A\\uDC79-\\uDC7B\\uDC7D-\\uDC80\\uDC84\\uDC88-\\uDC8E\\uDC90\\uDC92-\\uDCA9\\uDCAB-\\uDCFC\\uDCFF-\\uDD3D\\uDD4B-\\uDD4E\\uDD50-\\uDD67\\uDDA4\\uDDFB-\\uDE2D\\uDE2F-\\uDE34\\uDE37-\\uDE44\\uDE48-\\uDE4A\\uDE80-\\uDEA2\\uDEA4-\\uDEB3\\uDEB7-\\uDEBF\\uDEC1-\\uDEC5\\uDED0-\\uDED2\\uDED5-\\uDED7\\uDEDC-\\uDEDF\\uDEEB\\uDEEC\\uDEF4-\\uDEFC\\uDFE0-\\uDFEB\\uDFF0]|\\uDC15(?:\\u200D\\uD83E\\uDDBA)?|\\uDC3B(?:\\u200D\\u2744\\uFE0F?)?|\\uDC41\\uFE0F?(?:\\u200D\\uD83D\\uDDE8\\uFE0F?)?|\\uDC68(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDC68\\uDC69]\\u200D\\uD83D(?:\\uDC66(?:\\u200D\\uD83D\\uDC66)?|\\uDC67(?:\\u200D\\uD83D[\\uDC66\\uDC67])?)|[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC66(?:\\u200D\\uD83D\\uDC66)?|\\uDC67(?:\\u200D\\uD83D[\\uDC66\\uDC67])?)|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C(?:\\uDFFB(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]|\\uDD1D\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFC-\\uDFFF])))?|\\uDFFC(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]|\\uDD1D\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])))?|\\uDFFD(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]|\\uDD1D\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])))?|\\uDFFE(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]|\\uDD1D\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])))?|\\uDFFF(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?\\uDC68\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]|\\uDD1D\\u200D\\uD83D\\uDC68\\uD83C[\\uDFFB-\\uDFFE])))?))?|\\uDC69(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:\\uDC8B\\u200D\\uD83D)?[\\uDC68\\uDC69]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D(?:[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uDC66(?:\\u200D\\uD83D\\uDC66)?|\\uDC67(?:\\u200D\\uD83D[\\uDC66\\uDC67])?|\\uDC69\\u200D\\uD83D(?:\\uDC66(?:\\u200D\\uD83D\\uDC66)?|\\uDC67(?:\\u200D\\uD83D[\\uDC66\\uDC67])?))|\\uD83E[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD])|\\uD83C(?:\\uDFFB(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFC-\\uDFFF])))?|\\uDFFC(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])))?|\\uDFFD(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])))?|\\uDFFE(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])))?|\\uDFFF(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D\\uD83D(?:[\\uDC68\\uDC69]|\\uDC8B\\u200D\\uD83D[\\uDC68\\uDC69])\\uD83C[\\uDFFB-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]|\\uDD1D\\u200D\\uD83D[\\uDC68\\uDC69]\\uD83C[\\uDFFB-\\uDFFE])))?))?|\\uDC6F(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|\\uDD75(?:\\uFE0F|\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|\\uDE2E(?:\\u200D\\uD83D\\uDCA8)?|\\uDE35(?:\\u200D\\uD83D\\uDCAB)?|\\uDE36(?:\\u200D\\uD83C\\uDF2B\\uFE0F?)?)|\\uD83E(?:[\\uDD0C\\uDD0F\\uDD18-\\uDD1F\\uDD30-\\uDD34\\uDD36\\uDD77\\uDDB5\\uDDB6\\uDDBB\\uDDD2\\uDDD3\\uDDD5\\uDEC3-\\uDEC5\\uDEF0\\uDEF2-\\uDEF8](?:\\uD83C[\\uDFFB-\\uDFFF])?|[\\uDD26\\uDD35\\uDD37-\\uDD39\\uDD3D\\uDD3E\\uDDB8\\uDDB9\\uDDCD-\\uDDCF\\uDDD4\\uDDD6-\\uDDDD](?:\\uD83C[\\uDFFB-\\uDFFF])?(?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDDDE\\uDDDF](?:\\u200D[\\u2640\\u2642]\\uFE0F?)?|[\\uDD0D\\uDD0E\\uDD10-\\uDD17\\uDD20-\\uDD25\\uDD27-\\uDD2F\\uDD3A\\uDD3F-\\uDD45\\uDD47-\\uDD76\\uDD78-\\uDDB4\\uDDB7\\uDDBA\\uDDBC-\\uDDCC\\uDDD0\\uDDE0-\\uDDFF\\uDE70-\\uDE7C\\uDE80-\\uDE88\\uDE90-\\uDEBD\\uDEBF-\\uDEC2\\uDECE-\\uDEDB\\uDEE0-\\uDEE8]|\\uDD3C(?:\\u200D[\\u2640\\u2642]\\uFE0F?|\\uD83C[\\uDFFB-\\uDFFF])?|\\uDDD1(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]|\\uDD1D\\u200D\\uD83E\\uDDD1))|\\uD83C(?:\\uDFFB(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFC-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF])))?|\\uDFFC(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFB\\uDFFD-\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF])))?|\\uDFFD(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF])))?|\\uDFFE(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFD\\uDFFF]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF])))?|\\uDFFF(?:\\u200D(?:[\\u2695\\u2696\\u2708]\\uFE0F?|\\u2764\\uFE0F?\\u200D(?:\\uD83D\\uDC8B\\u200D)?\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFE]|\\uD83C[\\uDF3E\\uDF73\\uDF7C\\uDF84\\uDF93\\uDFA4\\uDFA8\\uDFEB\\uDFED]|\\uD83D[\\uDCBB\\uDCBC\\uDD27\\uDD2C\\uDE80\\uDE92]|\\uD83E(?:[\\uDDAF-\\uDDB3\\uDDBC\\uDDBD]|\\uDD1D\\u200D\\uD83E\\uDDD1\\uD83C[\\uDFFB-\\uDFFF])))?))?|\\uDEF1(?:\\uD83C(?:\\uDFFB(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFC-\\uDFFF])?|\\uDFFC(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFB\\uDFFD-\\uDFFF])?|\\uDFFD(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFB\\uDFFC\\uDFFE\\uDFFF])?|\\uDFFE(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFB-\\uDFFD\\uDFFF])?|\\uDFFF(?:\\u200D\\uD83E\\uDEF2\\uD83C[\\uDFFB-\\uDFFE])?))?)/g;\n};\n"]}
package/es/index.d.ts ADDED
@@ -0,0 +1,15 @@
1
+ import EventEmitter from 'eventemitter3';
2
+ export { EventEmitter };
3
+ export * from './common';
4
+ export * from './data-structure';
5
+ export * from './lru';
6
+ export * from './math';
7
+ export * from './angle';
8
+ export * as ColorUtil from './color';
9
+ export * from './graphics';
10
+ export * from './type';
11
+ export * as Logger from './logger';
12
+ export * from './padding';
13
+ export * from './time';
14
+ export * from './dom';
15
+ export * from './geo';
package/es/index.js ADDED
@@ -0,0 +1,30 @@
1
+ import EventEmitter from "eventemitter3";
2
+
3
+ export { EventEmitter };
4
+
5
+ export * from "./common";
6
+
7
+ export * from "./data-structure";
8
+
9
+ export * from "./lru";
10
+
11
+ export * from "./math";
12
+
13
+ export * from "./angle";
14
+
15
+ export * as ColorUtil from "./color";
16
+
17
+ export * from "./graphics";
18
+
19
+ export * from "./type";
20
+
21
+ export * as Logger from "./logger";
22
+
23
+ export * from "./padding";
24
+
25
+ export * from "./time";
26
+
27
+ export * from "./dom";
28
+
29
+ export * from "./geo";
30
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAC;AAQzC,OAAO,EAAE,YAAY,EAAE,CAAC;AAExB,cAAc,UAAU,CAAC;AAGzB,cAAc,kBAAkB,CAAC;AAGjC,cAAc,OAAO,CAAC;AAGtB,cAAc,QAAQ,CAAC;AAGvB,cAAc,SAAS,CAAC;AAGxB,OAAO,KAAK,SAAS,MAAM,SAAS,CAAC;AAGrC,cAAc,YAAY,CAAC;AAG3B,cAAc,QAAQ,CAAC;AAGvB,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AAGnC,cAAc,WAAW,CAAC;AAE1B,cAAc,QAAQ,CAAC;AAGvB,cAAc,OAAO,CAAC;AAGtB,cAAc,OAAO,CAAC","file":"index.js","sourcesContent":["import EventEmitter from 'eventemitter3';\n\n/**\n * A high performance event emitter\n * @see {@link https://github.com/primus/eventemitter3}\n * @memberof PIXI.utils\n * @class EventEmitter\n */\nexport { EventEmitter };\n\nexport * from './common';\n\n// data structure\nexport * from './data-structure';\n\n// algorithm\nexport * from './lru';\n\n// math\nexport * from './math';\n\n// angle\nexport * from './angle';\n\n// color\nexport * as ColorUtil from './color';\n\n// methods about graphics\nexport * from './graphics';\n\n// type\nexport * from './type';\n\n// log\nexport * as Logger from './logger';\n\n// padding\nexport * from './padding';\n\nexport * from './time';\n\n// dom\nexport * from './dom';\n\n// geo\nexport * from './geo';\n"]}
package/es/logger.d.ts ADDED
@@ -0,0 +1,12 @@
1
+ export declare const None = 0;
2
+ export declare const Error = 1;
3
+ export declare const Warn = 2;
4
+ export declare const Info = 3;
5
+ export declare const Debug = 4;
6
+ export declare function logger(logLevel: number, method: string): {
7
+ level(levelValue: number): number | any;
8
+ error(...args: any[]): any;
9
+ warn(...args: any[]): any;
10
+ info(...args: any[]): any;
11
+ debug(...args: any[]): any;
12
+ };
package/es/logger.js ADDED
@@ -0,0 +1,38 @@
1
+ function log(method, level, input) {
2
+ if ("undefined" != typeof console) {
3
+ const args = [ level ].concat([].slice.call(input));
4
+ console[method].apply(console, args);
5
+ }
6
+ }
7
+
8
+ export const None = 0;
9
+
10
+ export const Error = 1;
11
+
12
+ export const Warn = 2;
13
+
14
+ export const Info = 3;
15
+
16
+ export const Debug = 4;
17
+
18
+ export function logger(logLevel, method) {
19
+ let level = logLevel || 0;
20
+ return {
21
+ level(levelValue) {
22
+ return arguments.length ? (level = +levelValue, this) : level;
23
+ },
24
+ error(...args) {
25
+ return level >= 1 && log(method || "error", "ERROR", args), this;
26
+ },
27
+ warn(...args) {
28
+ return level >= 2 && log(method || "warn", "WARN", args), this;
29
+ },
30
+ info(...args) {
31
+ return level >= 3 && log(method || "log", "INFO", args), this;
32
+ },
33
+ debug(...args) {
34
+ return level >= 4 && log(method || "log", "DEBUG", args), this;
35
+ }
36
+ };
37
+ }
38
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/logger.ts"],"names":[],"mappings":"AAAA,SAAS,GAAG,CAAC,MAAc,EAAE,KAAU,EAAE,KAAU;IACjD,MAAM,UAAU,GAAG,OAAO,OAAO,KAAK,WAAW,CAAC;IAElD,IAAI,UAAU,EAAE;QACd,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QAGlD,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;KACtC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC;AACtB,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC;AACvB,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC;AACtB,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,CAAC;AACtB,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC;AAEvB,MAAM,UAAU,MAAM,CAAC,QAAgB,EAAE,MAAc;IACrD,IAAI,KAAK,GAAG,QAAQ,IAAI,IAAI,CAAC;IAC7B,OAAO;QACL,KAAK,CAAC,UAAkB;YACtB,IAAI,SAAS,CAAC,MAAM,EAAE;gBACpB,KAAK,GAAG,CAAC,UAAU,CAAC;gBACpB,OAAO,IAAI,CAAC;aACb;YACD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,KAAK,CAAC,GAAG,IAAW;YAClB,IAAI,KAAK,IAAI,KAAK,EAAE;gBAClB,GAAG,CAAC,MAAM,IAAI,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;aACvC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,GAAG,IAAW;YACjB,IAAI,KAAK,IAAI,IAAI,EAAE;gBACjB,GAAG,CAAC,MAAM,IAAI,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;aACrC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,GAAG,IAAW;YACjB,IAAI,KAAK,IAAI,IAAI,EAAE;gBACjB,GAAG,CAAC,MAAM,IAAI,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;aACpC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,KAAK,CAAC,GAAG,IAAW;YAClB,IAAI,KAAK,IAAI,KAAK,EAAE;gBAClB,GAAG,CAAC,MAAM,IAAI,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;aACrC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;KACF,CAAC;AACJ,CAAC","file":"logger.js","sourcesContent":["function log(method: string, level: any, input: any) {\n const hasConsole = typeof console !== 'undefined';\n\n if (hasConsole) {\n const args = [level].concat([].slice.call(input));\n\n // eslint-disable-next-line prefer-spread\n console[method].apply(console, args); // eslint-disable-line no-console\n }\n}\n\nexport const None = 0;\nexport const Error = 1;\nexport const Warn = 2;\nexport const Info = 3;\nexport const Debug = 4;\n\nexport function logger(logLevel: number, method: string) {\n let level = logLevel || None;\n return {\n level(levelValue: number) {\n if (arguments.length) {\n level = +levelValue;\n return this;\n }\n return level;\n },\n error(...args: any[]) {\n if (level >= Error) {\n log(method || 'error', 'ERROR', args);\n }\n return this;\n },\n warn(...args: any[]) {\n if (level >= Warn) {\n log(method || 'warn', 'WARN', args);\n }\n return this;\n },\n info(...args: any[]) {\n if (level >= Info) {\n log(method || 'log', 'INFO', args);\n }\n return this;\n },\n debug(...args: any[]) {\n if (level >= Debug) {\n log(method || 'log', 'DEBUG', args);\n }\n return this;\n }\n };\n}\n"]}
package/es/lru.d.ts ADDED
@@ -0,0 +1,25 @@
1
+ interface Threshold {
2
+ CLEAN_THRESHOLD?: number;
3
+ L_TIME?: number;
4
+ R_COUNT?: number;
5
+ R_TIMESTAMP_MAX_SIZE?: number;
6
+ }
7
+ export declare class LRU {
8
+ private static CLEAN_THRESHOLD;
9
+ private static L_TIME;
10
+ private static R_COUNT;
11
+ private static R_TIMESTAMP_MAX_SIZE;
12
+ static clearCache<TK, TV extends {
13
+ timestamp: number[];
14
+ }>(cache: Map<TK, TV>, params: Threshold): number;
15
+ static addLimitedTimestamp<T extends {
16
+ timestamp: number[];
17
+ }>(cacheItem: T, t: number, params: Threshold): void;
18
+ static clearTimeStamp<TK, TV extends {
19
+ timestamp: number[];
20
+ }>(cache: Map<TK, TV>, params: Threshold): void;
21
+ static clearItemTimestamp<T extends {
22
+ timestamp: number[];
23
+ }>(cacheItem: T, params: Threshold): void;
24
+ }
25
+ export {};
package/es/lru.js ADDED
@@ -0,0 +1,36 @@
1
+ export class LRU {
2
+ static clearCache(cache, params) {
3
+ const {CLEAN_THRESHOLD: CLEAN_THRESHOLD = LRU.CLEAN_THRESHOLD, L_TIME: L_TIME = LRU.L_TIME, R_COUNT: R_COUNT = LRU.R_COUNT} = params;
4
+ if (cache.size < CLEAN_THRESHOLD) return 0;
5
+ let clearNum = 0;
6
+ const clear = key => {
7
+ clearNum++, cache.delete(key);
8
+ }, now = Date.now();
9
+ return cache.forEach(((item, key) => {
10
+ if (item.timestamp.length < R_COUNT) return clear(key);
11
+ let useCount = 0;
12
+ for (;now - item.timestamp[item.timestamp.length - 1 - useCount] < L_TIME && (useCount++,
13
+ !(useCount >= R_COUNT)); ) ;
14
+ if (useCount < R_COUNT) return clear(key);
15
+ for (;now - item.timestamp[0] > L_TIME; ) item.timestamp.shift();
16
+ })), clearNum;
17
+ }
18
+ static addLimitedTimestamp(cacheItem, t, params) {
19
+ const {R_TIMESTAMP_MAX_SIZE: R_TIMESTAMP_MAX_SIZE = LRU.R_TIMESTAMP_MAX_SIZE} = params;
20
+ cacheItem.timestamp.length > R_TIMESTAMP_MAX_SIZE && cacheItem.timestamp.shift(),
21
+ cacheItem.timestamp.push(t);
22
+ }
23
+ static clearTimeStamp(cache, params) {
24
+ const {L_TIME: L_TIME = LRU.L_TIME} = params, now = Date.now();
25
+ cache.forEach((item => {
26
+ for (;now - item.timestamp[0] > L_TIME; ) item.timestamp.shift();
27
+ }));
28
+ }
29
+ static clearItemTimestamp(cacheItem, params) {
30
+ const {L_TIME: L_TIME = LRU.L_TIME} = params, now = Date.now();
31
+ for (;now - cacheItem.timestamp[0] > L_TIME; ) cacheItem.timestamp.shift();
32
+ }
33
+ }
34
+
35
+ LRU.CLEAN_THRESHOLD = 1e3, LRU.L_TIME = 1e3, LRU.R_COUNT = 1, LRU.R_TIMESTAMP_MAX_SIZE = 20;
36
+ //# sourceMappingURL=lru.js.map
package/es/lru.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/lru.ts"],"names":[],"mappings":"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","file":"lru.js","sourcesContent":["interface Threshold {\n CLEAN_THRESHOLD?: number;\n L_TIME?: number;\n R_COUNT?: number;\n R_TIMESTAMP_MAX_SIZE?: number;\n}\n// LRU清除\nexport class LRU {\n private static CLEAN_THRESHOLD = 1e3;\n private static L_TIME = 1000; // 1000ms以内\n private static R_COUNT = 1; // 使用次数为0\n private static R_TIMESTAMP_MAX_SIZE = 20; // timestamp最大长度\n\n static clearCache<TK, TV extends { timestamp: number[] }>(cache: Map<TK, TV>, params: Threshold): number {\n const { CLEAN_THRESHOLD = LRU.CLEAN_THRESHOLD, L_TIME = LRU.L_TIME, R_COUNT = LRU.R_COUNT } = params;\n if (cache.size < CLEAN_THRESHOLD) {\n return 0;\n }\n // 开始清理,清理最近1000ms内使用次数为0的缓存\n let clearNum = 0;\n const clear = (key: TK) => {\n clearNum++;\n cache.delete(key);\n };\n const now = Date.now();\n cache.forEach((item, key) => {\n if (item.timestamp.length < R_COUNT) {\n return clear(key);\n } // 最近使用次数小于R_COUNT,清除\n let useCount = 0;\n while (now - item.timestamp[item.timestamp.length - 1 - useCount] < L_TIME) {\n useCount++;\n if (useCount >= R_COUNT) {\n break;\n }\n }\n if (useCount < R_COUNT) {\n return clear(key);\n } // 最近L_TIME以内使用次数小于R_COUNT,清除\n // 清除L_TIME以外的key,避免数组过长\n while (now - item.timestamp[0] > L_TIME) {\n item.timestamp.shift();\n }\n return;\n });\n return clearNum;\n }\n\n static addLimitedTimestamp<T extends { timestamp: number[] }>(cacheItem: T, t: number, params: Threshold) {\n const { R_TIMESTAMP_MAX_SIZE = LRU.R_TIMESTAMP_MAX_SIZE } = params;\n if (cacheItem.timestamp.length > R_TIMESTAMP_MAX_SIZE) {\n // cacheItem.timestamp[cacheItem.timestamp.length-1] =\n cacheItem.timestamp.shift();\n }\n cacheItem.timestamp.push(t);\n }\n\n static clearTimeStamp<TK, TV extends { timestamp: number[] }>(cache: Map<TK, TV>, params: Threshold) {\n const { L_TIME = LRU.L_TIME } = params;\n const now = Date.now();\n cache.forEach(item => {\n while (now - item.timestamp[0] > L_TIME) {\n item.timestamp.shift();\n }\n });\n }\n\n static clearItemTimestamp<T extends { timestamp: number[] }>(cacheItem: T, params: Threshold) {\n const { L_TIME = LRU.L_TIME } = params;\n const now = Date.now();\n while (now - cacheItem.timestamp[0] > L_TIME) {\n cacheItem.timestamp.shift();\n }\n }\n}\n"]}
package/es/math.d.ts ADDED
@@ -0,0 +1,66 @@
1
+ export declare const epsilon = 1e-12;
2
+ export declare const pi: number;
3
+ export declare const halfPi: number;
4
+ export declare const tau: number;
5
+ export declare const NEWTON_ITERATIONS = 4;
6
+ export declare const NEWTON_MIN_SLOPE = 0.001;
7
+ export declare const SUBDIVISION_PRECISION = 1e-7;
8
+ export declare const SUBDIVISION_MAX_ITERATIONS = 10;
9
+ export declare const pi2: number;
10
+ export type vec2 = [number, number] | Float32Array;
11
+ export type vec3 = [number, number, number] | Float32Array;
12
+ export type vec4 = [number, number, number, number] | Float32Array;
13
+ export type vec8 = [number, number, number, number, number, number, number, number] | Float32Array;
14
+ export type mat4 = [
15
+ number,
16
+ number,
17
+ number,
18
+ number,
19
+ number,
20
+ number,
21
+ number,
22
+ number,
23
+ number,
24
+ number,
25
+ number,
26
+ number,
27
+ number,
28
+ number,
29
+ number,
30
+ number
31
+ ] | Float32Array;
32
+ export declare const abs: (x: number) => number;
33
+ export declare const atan2: (y: number, x: number) => number;
34
+ export declare const cos: (x: number) => number;
35
+ export declare const max: (...values: number[]) => number;
36
+ export declare const min: (...values: number[]) => number;
37
+ export declare const sin: (x: number) => number;
38
+ export declare const sqrt: (x: number) => number;
39
+ export declare const pow: (x: number, y: number) => number;
40
+ export declare function acos(x: number): number;
41
+ export declare function asin(x: number): number;
42
+ export declare function pointAt(x1: number | null | undefined, y1: number | null | undefined, x2: number | null | undefined, y2: number | null | undefined, t: number): {
43
+ x: undefined | number;
44
+ y: undefined | number;
45
+ };
46
+ export declare function lengthFromPointToLine(point: {
47
+ x: number;
48
+ y: number;
49
+ }, point1: {
50
+ x: number;
51
+ y: number;
52
+ }, point2: {
53
+ x: number;
54
+ y: number;
55
+ }): number;
56
+ export declare function crossProduct(dir1: vec2, dir2: vec2): number;
57
+ export declare function crossProductPoint(dir1: {
58
+ x: number;
59
+ y: number;
60
+ }, dir2: {
61
+ x: number;
62
+ y: number;
63
+ }): number;
64
+ export declare function fuzzyEqualNumber(a: number, b: number): boolean;
65
+ export declare function fuzzyEqualVec(a: vec2, b: vec2): boolean;
66
+ export declare function fixPrecision(num: number, precision?: number): number;
package/es/math.js ADDED
@@ -0,0 +1,76 @@
1
+ export const epsilon = 1e-12;
2
+
3
+ export const pi = Math.PI;
4
+
5
+ export const halfPi = pi / 2;
6
+
7
+ export const tau = 2 * pi;
8
+
9
+ export const NEWTON_ITERATIONS = 4;
10
+
11
+ export const NEWTON_MIN_SLOPE = .001;
12
+
13
+ export const SUBDIVISION_PRECISION = 1e-7;
14
+
15
+ export const SUBDIVISION_MAX_ITERATIONS = 10;
16
+
17
+ export const pi2 = 2 * Math.PI;
18
+
19
+ export const abs = Math.abs;
20
+
21
+ export const atan2 = Math.atan2;
22
+
23
+ export const cos = Math.cos;
24
+
25
+ export const max = Math.max;
26
+
27
+ export const min = Math.min;
28
+
29
+ export const sin = Math.sin;
30
+
31
+ export const sqrt = Math.sqrt;
32
+
33
+ export const pow = Math.pow;
34
+
35
+ export function acos(x) {
36
+ return x > 1 ? 0 : x < -1 ? pi : Math.acos(x);
37
+ }
38
+
39
+ export function asin(x) {
40
+ return x >= 1 ? halfPi : x <= -1 ? -halfPi : Math.asin(x);
41
+ }
42
+
43
+ export function pointAt(x1, y1, x2, y2, t) {
44
+ let x, y;
45
+ return "number" == typeof x1 && "number" == typeof x2 && (x = (1 - t) * x1 + t * x2),
46
+ "number" == typeof y1 && "number" == typeof y2 && (y = (1 - t) * y1 + t * y2), {
47
+ x: x,
48
+ y: y
49
+ };
50
+ }
51
+
52
+ export function lengthFromPointToLine(point, point1, point2) {
53
+ const dir1X = point2.x - point1.x, dir1Y = point2.y - point1.y, dir2X = point.x - point1.x, dir2Y = point.y - point1.y;
54
+ return Math.abs(dir1X * dir2Y - dir2X * dir1Y) / Math.sqrt(dir1X * dir1X + dir1Y * dir1Y);
55
+ }
56
+
57
+ export function crossProduct(dir1, dir2) {
58
+ return dir1[0] * dir2[1] - dir1[1] * dir2[0];
59
+ }
60
+
61
+ export function crossProductPoint(dir1, dir2) {
62
+ return dir1.x * dir2.y - dir1.y * dir2.x;
63
+ }
64
+
65
+ export function fuzzyEqualNumber(a, b) {
66
+ return abs(a - b) < 1e-12;
67
+ }
68
+
69
+ export function fuzzyEqualVec(a, b) {
70
+ return abs(a[0] - b[0]) + abs(a[1] - b[1]) < 1e-12;
71
+ }
72
+
73
+ export function fixPrecision(num, precision = 10) {
74
+ return Math.round(num * precision) / precision;
75
+ }
76
+ //# sourceMappingURL=math.js.map
package/es/math.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/math.ts"],"names":[],"mappings":"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","file":"math.js","sourcesContent":["export const epsilon = 1e-12;\nexport const pi = Math.PI;\nexport const halfPi = pi / 2;\nexport const tau = 2 * pi;\nexport const NEWTON_ITERATIONS = 4;\nexport const NEWTON_MIN_SLOPE = 0.001;\nexport const SUBDIVISION_PRECISION = 0.0000001;\nexport const SUBDIVISION_MAX_ITERATIONS = 10;\nexport const pi2 = Math.PI * 2;\n\nexport type vec2 = [number, number] | Float32Array;\nexport type vec3 = [number, number, number] | Float32Array;\nexport type vec4 = [number, number, number, number] | Float32Array;\nexport type vec8 = [number, number, number, number, number, number, number, number] | Float32Array;\nexport type mat4 =\n | [\n number,\n number,\n number,\n number,\n number,\n number,\n number,\n number,\n number,\n number,\n number,\n number,\n number,\n number,\n number,\n number\n ]\n | Float32Array;\n\nexport const abs = Math.abs;\nexport const atan2 = Math.atan2;\nexport const cos = Math.cos;\nexport const max = Math.max;\nexport const min = Math.min;\nexport const sin = Math.sin;\nexport const sqrt = Math.sqrt;\nexport const pow = Math.pow;\n\nexport function acos(x: number) {\n return x > 1 ? 0 : x < -1 ? pi : Math.acos(x);\n}\n\nexport function asin(x: number) {\n return x >= 1 ? halfPi : x <= -1 ? -halfPi : Math.asin(x);\n}\n\n/**\n * 根据比例获直线上的点\n * @param {number} x1 起始点 x\n * @param {number} y1 起始点 y\n * @param {number} x2 结束点 x\n * @param {number} y2 结束点 y\n * @param {number} t 指定比例\n * @return {object} 包含 x, y 的点\n */\nexport function pointAt(\n x1: number | null | undefined,\n y1: number | null | undefined,\n x2: number | null | undefined,\n y2: number | null | undefined,\n t: number\n): {\n x: undefined | number;\n y: undefined | number;\n} {\n let x: number | undefined;\n let y: number | undefined;\n if (typeof x1 === 'number' && typeof x2 === 'number') {\n x = (1 - t) * x1 + t * x2;\n }\n if (typeof y1 === 'number' && typeof y2 === 'number') {\n y = (1 - t) * y1 + t * y2;\n }\n return {\n x,\n y\n };\n}\n\nexport function lengthFromPointToLine(\n point: { x: number; y: number },\n point1: { x: number; y: number },\n point2: { x: number; y: number }\n): number {\n // 面积\n const dir1X = point2.x - point1.x;\n const dir1Y = point2.y - point1.y;\n const dir2X = point.x - point1.x;\n const dir2Y = point.y - point1.y;\n const s = Math.abs(dir1X * dir2Y - dir2X * dir1Y);\n const length = Math.sqrt(dir1X * dir1X + dir1Y * dir1Y);\n return s / length;\n}\n\nexport function crossProduct(dir1: vec2, dir2: vec2): number {\n return dir1[0] * dir2[1] - dir1[1] * dir2[0];\n}\n\nexport function crossProductPoint(dir1: { x: number; y: number }, dir2: { x: number; y: number }): number {\n return dir1.x * dir2.y - dir1.y * dir2.x;\n}\n\nexport function fuzzyEqualNumber(a: number, b: number): boolean {\n return abs(a - b) < epsilon;\n}\n\nexport function fuzzyEqualVec(a: vec2, b: vec2): boolean {\n return abs(a[0] - b[0]) + abs(a[1] - b[1]) < epsilon;\n}\n\nexport function fixPrecision(num: number, precision = 10) {\n return Math.round(num * precision) / precision;\n}\n"]}
@@ -0,0 +1,7 @@
1
+ export type IPadding = {
2
+ top?: number;
3
+ bottom?: number;
4
+ left?: number;
5
+ right?: number;
6
+ };
7
+ export declare function normalizePadding(padding: number | number[] | IPadding): number[];
package/es/padding.js ADDED
@@ -0,0 +1,31 @@
1
+ import isValidNumber from "./common/isValidNumber";
2
+
3
+ import isArray from "./common/isArray";
4
+
5
+ import isObject from "./common/isObject";
6
+
7
+ export function normalizePadding(padding) {
8
+ if (isValidNumber(padding)) return [ padding, padding, padding, padding ];
9
+ if (isArray(padding)) {
10
+ const length = padding.length;
11
+ if (1 === length) {
12
+ const paddingValue = padding[0];
13
+ return [ paddingValue, paddingValue, paddingValue, paddingValue ];
14
+ }
15
+ if (2 === length) {
16
+ const [vertical, horizontal] = padding;
17
+ return [ vertical, horizontal, vertical, horizontal ];
18
+ }
19
+ if (3 === length) {
20
+ const [top, horizontal, bottom] = padding;
21
+ return [ top, horizontal, bottom, horizontal ];
22
+ }
23
+ if (4 === length) return padding;
24
+ }
25
+ if (isObject(padding)) {
26
+ const {top: top = 0, right: right = 0, bottom: bottom = 0, left: left = 0} = padding;
27
+ return [ top, right, bottom, left ];
28
+ }
29
+ return [ 0, 0, 0, 0 ];
30
+ }
31
+ //# sourceMappingURL=padding.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/padding.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,wBAAwB,CAAC;AACnD,OAAO,OAAO,MAAM,kBAAkB,CAAC;AACvC,OAAO,QAAQ,MAAM,mBAAmB,CAAC;AAczC,MAAM,UAAU,gBAAgB,CAAC,OAAqC;IACpE,IAAI,aAAa,CAAC,OAAO,CAAC,EAAE;QAC1B,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;KAC7C;IAED,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;QACpB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAE9B,IAAI,MAAM,KAAK,CAAC,EAAE;YAChB,MAAM,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YAChC,OAAO,CAAC,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;SACjE;QAED,IAAI,MAAM,KAAK,CAAC,EAAE;YAChB,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,GAAG,OAAO,CAAC;YACvC,OAAO,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;SACrD;QAED,IAAI,MAAM,KAAK,CAAC,EAAE;YAChB,MAAM,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC;YAC1C,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;SAC9C;QAED,IAAI,MAAM,KAAK,CAAC,EAAE;YAChB,OAAO,OAAO,CAAC;SAChB;KACF;IAED,IAAI,QAAQ,CAAC,OAAO,CAAC,EAAE;QACrB,MAAM,EAAE,GAAG,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,MAAM,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,EAAE,GAAG,OAAmB,CAAC;QACzE,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;KACnC;IAED,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACtB,CAAC","file":"padding.js","sourcesContent":["import isValidNumber from './common/isValidNumber';\nimport isArray from './common/isArray';\nimport isObject from './common/isObject';\n\nexport type IPadding = {\n top?: number;\n bottom?: number;\n left?: number;\n right?: number;\n};\n\n/**\n * 将 padding 转换为通用的格式([上,右,下,左])\n * @param padding\n * @return [ top, right, bottom, left ]\n */\nexport function normalizePadding(padding: number | number[] | IPadding) {\n if (isValidNumber(padding)) {\n return [padding, padding, padding, padding];\n }\n\n if (isArray(padding)) {\n const length = padding.length;\n\n if (length === 1) {\n const paddingValue = padding[0];\n return [paddingValue, paddingValue, paddingValue, paddingValue];\n }\n\n if (length === 2) {\n const [vertical, horizontal] = padding;\n return [vertical, horizontal, vertical, horizontal];\n }\n\n if (length === 3) {\n const [top, horizontal, bottom] = padding;\n return [top, horizontal, bottom, horizontal];\n }\n\n if (length === 4) {\n return padding;\n }\n }\n\n if (isObject(padding)) {\n const { top = 0, right = 0, bottom = 0, left = 0 } = padding as IPadding;\n return [top, right, bottom, left];\n }\n\n return [0, 0, 0, 0];\n}\n"]}
@@ -0,0 +1,17 @@
1
+ import type { DateLikeType } from '../common/toDate';
2
+ export declare function fullYearGetterName(isUTC?: boolean): "getUTCFullYear" | "getFullYear";
3
+ export declare function monthGetterName(isUTC?: boolean): "getUTCMonth" | "getMonth";
4
+ export declare function dateGetterName(isUTC?: boolean): "getUTCDate" | "getDate";
5
+ export declare function hoursGetterName(isUTC?: boolean): "getUTCHours" | "getHours";
6
+ export declare function minutesGetterName(isUTC?: boolean): "getUTCMinutes" | "getMinutes";
7
+ export declare function secondsGetterName(isUTC?: boolean): "getUTCSeconds" | "getSeconds";
8
+ export declare function millisecondsGetterName(isUTC?: boolean): "getUTCMilliseconds" | "getMilliseconds";
9
+ export declare function fullYearSetterName(isUTC?: boolean): "setUTCFullYear" | "setFullYear";
10
+ export declare function monthSetterName(isUTC?: boolean): "setUTCMonth" | "setMonth";
11
+ export declare function dateSetterName(isUTC?: boolean): "setUTCDate" | "setDate";
12
+ export declare function hoursSetterName(isUTC?: boolean): "setUTCHours" | "setHours";
13
+ export declare function minutesSetterName(isUTC?: boolean): "setUTCMinutes" | "setMinutes";
14
+ export declare function secondsSetterName(isUTC?: boolean): "setUTCSeconds" | "setSeconds";
15
+ export declare function millisecondsSetterName(isUTC?: boolean): "setUTCMilliseconds" | "setMilliseconds";
16
+ export declare function getFormatFromValue(value: DateLikeType, isUTC?: boolean): "YYYY" | "YYYY-MM" | "YYYY-MM-DD" | "HH" | "HH:mm" | "HH:mm:ss" | "HH:mm:ss SSS";
17
+ export declare function getTimeFormatter(template: string, isUTC?: boolean): (time: DateLikeType) => string;
@@ -0,0 +1,72 @@
1
+ import pad from "../common/pad";
2
+
3
+ import { toDate } from "../common/toDate";
4
+
5
+ export function fullYearGetterName(isUTC) {
6
+ return isUTC ? "getUTCFullYear" : "getFullYear";
7
+ }
8
+
9
+ export function monthGetterName(isUTC) {
10
+ return isUTC ? "getUTCMonth" : "getMonth";
11
+ }
12
+
13
+ export function dateGetterName(isUTC) {
14
+ return isUTC ? "getUTCDate" : "getDate";
15
+ }
16
+
17
+ export function hoursGetterName(isUTC) {
18
+ return isUTC ? "getUTCHours" : "getHours";
19
+ }
20
+
21
+ export function minutesGetterName(isUTC) {
22
+ return isUTC ? "getUTCMinutes" : "getMinutes";
23
+ }
24
+
25
+ export function secondsGetterName(isUTC) {
26
+ return isUTC ? "getUTCSeconds" : "getSeconds";
27
+ }
28
+
29
+ export function millisecondsGetterName(isUTC) {
30
+ return isUTC ? "getUTCMilliseconds" : "getMilliseconds";
31
+ }
32
+
33
+ export function fullYearSetterName(isUTC) {
34
+ return isUTC ? "setUTCFullYear" : "setFullYear";
35
+ }
36
+
37
+ export function monthSetterName(isUTC) {
38
+ return isUTC ? "setUTCMonth" : "setMonth";
39
+ }
40
+
41
+ export function dateSetterName(isUTC) {
42
+ return isUTC ? "setUTCDate" : "setDate";
43
+ }
44
+
45
+ export function hoursSetterName(isUTC) {
46
+ return isUTC ? "setUTCHours" : "setHours";
47
+ }
48
+
49
+ export function minutesSetterName(isUTC) {
50
+ return isUTC ? "setUTCMinutes" : "setMinutes";
51
+ }
52
+
53
+ export function secondsSetterName(isUTC) {
54
+ return isUTC ? "setUTCSeconds" : "setSeconds";
55
+ }
56
+
57
+ export function millisecondsSetterName(isUTC) {
58
+ return isUTC ? "setUTCMilliseconds" : "setMilliseconds";
59
+ }
60
+
61
+ export function getFormatFromValue(value, isUTC) {
62
+ const date = toDate(value), M = date[monthGetterName(isUTC)]() + 1, d = date[dateGetterName(isUTC)](), h = date[hoursGetterName(isUTC)](), m = date[minutesGetterName(isUTC)](), s = date[secondsGetterName(isUTC)](), isSecond = 0 === date[millisecondsGetterName(isUTC)](), isMinute = isSecond && 0 === s, isHour = isMinute && 0 === m, isDay = isHour && 0 === h, isMonth = isDay && 1 === d;
63
+ return isMonth && 1 === M ? "YYYY" : isMonth ? "YYYY-MM" : isDay ? "YYYY-MM-DD" : isHour ? "HH" : isMinute ? "HH:mm" : isSecond ? "HH:mm:ss" : "HH:mm:ss SSS";
64
+ }
65
+
66
+ export function getTimeFormatter(template, isUTC) {
67
+ return time => {
68
+ const date = toDate(time), y = date[fullYearGetterName(isUTC)](), M = date[monthGetterName(isUTC)]() + 1, q = Math.floor((M - 1) / 3) + 1, d = date[dateGetterName(isUTC)](), e = date["get" + (isUTC ? "UTC" : "") + "Day"](), H = date[hoursGetterName(isUTC)](), h = (H - 1) % 12 + 1, m = date[minutesGetterName(isUTC)](), s = date[secondsGetterName(isUTC)](), S = date[millisecondsGetterName(isUTC)]();
69
+ return (template || "").replace(/YYYY/g, pad(y + "", 4, "0", "left")).replace(/yyyy/g, y + "").replace(/yy/g, y % 100 + "").replace(/Q/g, q + "").replace(/MM/g, pad(M, 2, "0", "left")).replace(/M/g, M + "").replace(/dd/g, pad(d, 2, "0", "left")).replace(/d/g, d + "").replace(/e/g, e + "").replace(/HH/g, pad(H, 2, "0", "left")).replace(/H/g, H + "").replace(/hh/g, pad(h + "", 2, "0", "left")).replace(/h/g, h + "").replace(/mm/g, pad(m, 2, "0", "left")).replace(/m/g, m + "").replace(/ss/g, pad(s, 2, "0", "left")).replace(/s/g, s + "").replace(/SSS/g, pad(S, 3, "0", "left")).replace(/S/g, S + "");
70
+ };
71
+ }
72
+ //# sourceMappingURL=formatUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/time/formatUtils.ts"],"names":[],"mappings":"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","file":"formatUtils.js","sourcesContent":["import pad from '../common/pad';\nimport type { DateLikeType } from '../common/toDate';\nimport { toDate } from '../common/toDate';\n\nexport function fullYearGetterName(isUTC?: boolean) {\n return isUTC ? 'getUTCFullYear' : 'getFullYear';\n}\n\nexport function monthGetterName(isUTC?: boolean) {\n return isUTC ? 'getUTCMonth' : 'getMonth';\n}\n\nexport function dateGetterName(isUTC?: boolean) {\n return isUTC ? 'getUTCDate' : 'getDate';\n}\n\nexport function hoursGetterName(isUTC?: boolean) {\n return isUTC ? 'getUTCHours' : 'getHours';\n}\n\nexport function minutesGetterName(isUTC?: boolean) {\n return isUTC ? 'getUTCMinutes' : 'getMinutes';\n}\n\nexport function secondsGetterName(isUTC?: boolean) {\n return isUTC ? 'getUTCSeconds' : 'getSeconds';\n}\n\nexport function millisecondsGetterName(isUTC?: boolean) {\n return isUTC ? 'getUTCMilliseconds' : 'getMilliseconds';\n}\n\nexport function fullYearSetterName(isUTC?: boolean) {\n return isUTC ? 'setUTCFullYear' : 'setFullYear';\n}\n\nexport function monthSetterName(isUTC?: boolean) {\n return isUTC ? 'setUTCMonth' : 'setMonth';\n}\n\nexport function dateSetterName(isUTC?: boolean) {\n return isUTC ? 'setUTCDate' : 'setDate';\n}\n\nexport function hoursSetterName(isUTC?: boolean) {\n return isUTC ? 'setUTCHours' : 'setHours';\n}\n\nexport function minutesSetterName(isUTC?: boolean) {\n return isUTC ? 'setUTCMinutes' : 'setMinutes';\n}\n\nexport function secondsSetterName(isUTC?: boolean) {\n return isUTC ? 'setUTCSeconds' : 'setSeconds';\n}\n\nexport function millisecondsSetterName(isUTC?: boolean) {\n return isUTC ? 'setUTCMilliseconds' : 'setMilliseconds';\n}\n\n/**\n * 根据时间推断格式化字符串\n * @param value\n * @param isUTC\n * @returns\n */\nexport function getFormatFromValue(value: DateLikeType, isUTC?: boolean) {\n const date = toDate(value);\n const M = (date as any)[monthGetterName(isUTC)]() + 1;\n const d = (date as any)[dateGetterName(isUTC)]();\n const h = (date as any)[hoursGetterName(isUTC)]();\n const m = (date as any)[minutesGetterName(isUTC)]();\n const s = (date as any)[secondsGetterName(isUTC)]();\n const S = (date as any)[millisecondsGetterName(isUTC)]();\n\n const isSecond = S === 0;\n const isMinute = isSecond && s === 0;\n const isHour = isMinute && m === 0;\n const isDay = isHour && h === 0;\n const isMonth = isDay && d === 1;\n const isYear = isMonth && M === 1;\n\n if (isYear) {\n return 'YYYY';\n } else if (isMonth) {\n return 'YYYY-MM';\n } else if (isDay) {\n return 'YYYY-MM-DD';\n } else if (isHour) {\n return 'HH';\n } else if (isMinute) {\n return 'HH:mm';\n } else if (isSecond) {\n return 'HH:mm:ss';\n }\n return 'HH:mm:ss SSS';\n}\n\nexport function getTimeFormatter(template: string, isUTC?: boolean) {\n return (time: DateLikeType) => {\n const date = toDate(time);\n const y = date[fullYearGetterName(isUTC)]();\n const M = date[monthGetterName(isUTC)]() + 1;\n const q = Math.floor((M - 1) / 3) + 1;\n const d = date[dateGetterName(isUTC)]();\n const e = date[('get' + (isUTC ? 'UTC' : '') + 'Day') as 'getDay' | 'getUTCDay']();\n const H = date[hoursGetterName(isUTC)]();\n const h = ((H - 1) % 12) + 1;\n const m = date[minutesGetterName(isUTC)]();\n const s = date[secondsGetterName(isUTC)]();\n const S = date[millisecondsGetterName(isUTC)]();\n\n // 月份,周等需要管理管理locale的时间格式化暂时不支持\n return (\n (template || '')\n .replace(/YYYY/g, pad(y + '', 4, '0', 'left'))\n .replace(/yyyy/g, y + '')\n .replace(/yy/g, (y % 100) + '')\n .replace(/Q/g, q + '')\n // .replace(/{MMMM}/g, month[M - 1])\n // .replace(/{MMM}/g, monthAbbr[M - 1])\n .replace(/MM/g, pad(M, 2, '0', 'left'))\n .replace(/M/g, M + '')\n .replace(/dd/g, pad(d, 2, '0', 'left'))\n .replace(/d/g, d + '')\n // .replace(/{eeee}/g, dayOfWeek[e])\n // .replace(/{ee}/g, dayOfWeekAbbr[e])\n .replace(/e/g, e + '')\n .replace(/HH/g, pad(H, 2, '0', 'left'))\n .replace(/H/g, H + '')\n .replace(/hh/g, pad(h + '', 2, '0', 'left'))\n .replace(/h/g, h + '')\n .replace(/mm/g, pad(m, 2, '0', 'left'))\n .replace(/m/g, m + '')\n .replace(/ss/g, pad(s, 2, '0', 'left'))\n .replace(/s/g, s + '')\n .replace(/SSS/g, pad(S, 3, '0', 'left'))\n .replace(/S/g, S + '')\n );\n };\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export * from './formatUtils';
2
+ export * from './interval';
@@ -0,0 +1,4 @@
1
+ export * from "./formatUtils";
2
+
3
+ export * from "./interval";
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/time/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC","file":"index.js","sourcesContent":["export * from './formatUtils';\nexport * from './interval';\n"]}