victory-vendor 36.4.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 (279) hide show
  1. package/LICENSE.txt +30 -0
  2. package/README.md +70 -0
  3. package/d3-array.js +7 -0
  4. package/d3-ease.js +7 -0
  5. package/d3-interpolate.js +7 -0
  6. package/d3-scale.js +7 -0
  7. package/d3-shape.js +7 -0
  8. package/d3-time.js +7 -0
  9. package/d3-timer.js +7 -0
  10. package/es/d3-array.js +6 -0
  11. package/es/d3-color.js +6 -0
  12. package/es/d3-ease.js +6 -0
  13. package/es/d3-format.js +6 -0
  14. package/es/d3-interpolate.js +6 -0
  15. package/es/d3-path.js +6 -0
  16. package/es/d3-scale.js +6 -0
  17. package/es/d3-shape.js +6 -0
  18. package/es/d3-time-format.js +6 -0
  19. package/es/d3-time.js +6 -0
  20. package/es/d3-timer.js +6 -0
  21. package/es/internmap.js +6 -0
  22. package/lib/d3-array.js +6 -0
  23. package/lib/d3-color.js +6 -0
  24. package/lib/d3-ease.js +6 -0
  25. package/lib/d3-format.js +6 -0
  26. package/lib/d3-interpolate.js +6 -0
  27. package/lib/d3-path.js +6 -0
  28. package/lib/d3-scale.js +6 -0
  29. package/lib/d3-shape.js +6 -0
  30. package/lib/d3-time-format.js +6 -0
  31. package/lib/d3-time.js +6 -0
  32. package/lib/d3-timer.js +6 -0
  33. package/lib/internmap.js +6 -0
  34. package/lib-vendor/d3-array/LICENSE +13 -0
  35. package/lib-vendor/d3-array/src/array.js +11 -0
  36. package/lib-vendor/d3-array/src/ascending.js +10 -0
  37. package/lib-vendor/d3-array/src/bin.js +142 -0
  38. package/lib-vendor/d3-array/src/bisect.js +24 -0
  39. package/lib-vendor/d3-array/src/bisector.js +73 -0
  40. package/lib-vendor/d3-array/src/constant.js +10 -0
  41. package/lib-vendor/d3-array/src/count.js +28 -0
  42. package/lib-vendor/d3-array/src/cross.js +42 -0
  43. package/lib-vendor/d3-array/src/cumsum.js +12 -0
  44. package/lib-vendor/d3-array/src/descending.js +10 -0
  45. package/lib-vendor/d3-array/src/deviation.js +15 -0
  46. package/lib-vendor/d3-array/src/difference.js +20 -0
  47. package/lib-vendor/d3-array/src/disjoint.js +29 -0
  48. package/lib-vendor/d3-array/src/every.js +19 -0
  49. package/lib-vendor/d3-array/src/extent.js +39 -0
  50. package/lib-vendor/d3-array/src/filter.js +20 -0
  51. package/lib-vendor/d3-array/src/fsum.js +93 -0
  52. package/lib-vendor/d3-array/src/greatest.js +38 -0
  53. package/lib-vendor/d3-array/src/greatestIndex.js +30 -0
  54. package/lib-vendor/d3-array/src/group.js +85 -0
  55. package/lib-vendor/d3-array/src/groupSort.js +22 -0
  56. package/lib-vendor/d3-array/src/identity.js +10 -0
  57. package/lib-vendor/d3-array/src/index.js +567 -0
  58. package/lib-vendor/d3-array/src/intersection.js +28 -0
  59. package/lib-vendor/d3-array/src/least.js +38 -0
  60. package/lib-vendor/d3-array/src/leastIndex.js +30 -0
  61. package/lib-vendor/d3-array/src/map.js +12 -0
  62. package/lib-vendor/d3-array/src/max.js +28 -0
  63. package/lib-vendor/d3-array/src/maxIndex.js +30 -0
  64. package/lib-vendor/d3-array/src/mean.js +29 -0
  65. package/lib-vendor/d3-array/src/median.js +14 -0
  66. package/lib-vendor/d3-array/src/merge.js +16 -0
  67. package/lib-vendor/d3-array/src/min.js +28 -0
  68. package/lib-vendor/d3-array/src/minIndex.js +30 -0
  69. package/lib-vendor/d3-array/src/mode.js +40 -0
  70. package/lib-vendor/d3-array/src/nice.js +28 -0
  71. package/lib-vendor/d3-array/src/number.js +29 -0
  72. package/lib-vendor/d3-array/src/pairs.js +25 -0
  73. package/lib-vendor/d3-array/src/permute.js +10 -0
  74. package/lib-vendor/d3-array/src/quantile.js +46 -0
  75. package/lib-vendor/d3-array/src/quickselect.js +53 -0
  76. package/lib-vendor/d3-array/src/range.js +19 -0
  77. package/lib-vendor/d3-array/src/rank.js +34 -0
  78. package/lib-vendor/d3-array/src/reduce.js +32 -0
  79. package/lib-vendor/d3-array/src/reverse.js +11 -0
  80. package/lib-vendor/d3-array/src/scan.js +15 -0
  81. package/lib-vendor/d3-array/src/shuffle.js +26 -0
  82. package/lib-vendor/d3-array/src/some.js +19 -0
  83. package/lib-vendor/d3-array/src/sort.js +55 -0
  84. package/lib-vendor/d3-array/src/subset.js +14 -0
  85. package/lib-vendor/d3-array/src/sum.js +28 -0
  86. package/lib-vendor/d3-array/src/superset.js +33 -0
  87. package/lib-vendor/d3-array/src/threshold/freedmanDiaconis.js +16 -0
  88. package/lib-vendor/d3-array/src/threshold/scott.js +16 -0
  89. package/lib-vendor/d3-array/src/threshold/sturges.js +14 -0
  90. package/lib-vendor/d3-array/src/ticks.js +60 -0
  91. package/lib-vendor/d3-array/src/transpose.js +26 -0
  92. package/lib-vendor/d3-array/src/union.js +20 -0
  93. package/lib-vendor/d3-array/src/variance.js +35 -0
  94. package/lib-vendor/d3-array/src/zip.js +14 -0
  95. package/lib-vendor/d3-color/LICENSE +13 -0
  96. package/lib-vendor/d3-color/src/color.js +413 -0
  97. package/lib-vendor/d3-color/src/cubehelix.js +74 -0
  98. package/lib-vendor/d3-color/src/define.js +20 -0
  99. package/lib-vendor/d3-color/src/index.js +65 -0
  100. package/lib-vendor/d3-color/src/lab.js +146 -0
  101. package/lib-vendor/d3-color/src/math.js +10 -0
  102. package/lib-vendor/d3-ease/LICENSE +28 -0
  103. package/lib-vendor/d3-ease/src/back.js +46 -0
  104. package/lib-vendor/d3-ease/src/bounce.js +30 -0
  105. package/lib-vendor/d3-ease/src/circle.js +20 -0
  106. package/lib-vendor/d3-ease/src/cubic.js +20 -0
  107. package/lib-vendor/d3-ease/src/elastic.js +72 -0
  108. package/lib-vendor/d3-ease/src/exp.js +22 -0
  109. package/lib-vendor/d3-ease/src/index.js +247 -0
  110. package/lib-vendor/d3-ease/src/linear.js +10 -0
  111. package/lib-vendor/d3-ease/src/math.js +11 -0
  112. package/lib-vendor/d3-ease/src/poly.js +46 -0
  113. package/lib-vendor/d3-ease/src/quad.js +20 -0
  114. package/lib-vendor/d3-ease/src/sin.js +22 -0
  115. package/lib-vendor/d3-format/LICENSE +13 -0
  116. package/lib-vendor/d3-format/src/defaultLocale.js +29 -0
  117. package/lib-vendor/d3-format/src/exponent.js +12 -0
  118. package/lib-vendor/d3-format/src/formatDecimal.js +24 -0
  119. package/lib-vendor/d3-format/src/formatGroup.js +25 -0
  120. package/lib-vendor/d3-format/src/formatNumerals.js +14 -0
  121. package/lib-vendor/d3-format/src/formatPrefixAuto.js +22 -0
  122. package/lib-vendor/d3-format/src/formatRounded.js +16 -0
  123. package/lib-vendor/d3-format/src/formatSpecifier.js +45 -0
  124. package/lib-vendor/d3-format/src/formatTrim.js +29 -0
  125. package/lib-vendor/d3-format/src/formatTypes.js +31 -0
  126. package/lib-vendor/d3-format/src/identity.js +10 -0
  127. package/lib-vendor/d3-format/src/index.js +77 -0
  128. package/lib-vendor/d3-format/src/locale.js +159 -0
  129. package/lib-vendor/d3-format/src/precisionFixed.js +14 -0
  130. package/lib-vendor/d3-format/src/precisionPrefix.js +14 -0
  131. package/lib-vendor/d3-format/src/precisionRound.js +15 -0
  132. package/lib-vendor/d3-interpolate/LICENSE +13 -0
  133. package/lib-vendor/d3-interpolate/src/array.js +39 -0
  134. package/lib-vendor/d3-interpolate/src/basis.js +25 -0
  135. package/lib-vendor/d3-interpolate/src/basisClosed.js +20 -0
  136. package/lib-vendor/d3-interpolate/src/color.js +40 -0
  137. package/lib-vendor/d3-interpolate/src/constant.js +10 -0
  138. package/lib-vendor/d3-interpolate/src/cubehelix.js +43 -0
  139. package/lib-vendor/d3-interpolate/src/date.js +13 -0
  140. package/lib-vendor/d3-interpolate/src/discrete.js +13 -0
  141. package/lib-vendor/d3-interpolate/src/hcl.js +36 -0
  142. package/lib-vendor/d3-interpolate/src/hsl.js +36 -0
  143. package/lib-vendor/d3-interpolate/src/hue.js +16 -0
  144. package/lib-vendor/d3-interpolate/src/index.js +215 -0
  145. package/lib-vendor/d3-interpolate/src/lab.js +26 -0
  146. package/lib-vendor/d3-interpolate/src/number.js +12 -0
  147. package/lib-vendor/d3-interpolate/src/numberArray.js +23 -0
  148. package/lib-vendor/d3-interpolate/src/object.js +32 -0
  149. package/lib-vendor/d3-interpolate/src/piecewise.js +25 -0
  150. package/lib-vendor/d3-interpolate/src/quantize.js +14 -0
  151. package/lib-vendor/d3-interpolate/src/rgb.js +77 -0
  152. package/lib-vendor/d3-interpolate/src/round.js +12 -0
  153. package/lib-vendor/d3-interpolate/src/string.js +83 -0
  154. package/lib-vendor/d3-interpolate/src/transform/decompose.js +33 -0
  155. package/lib-vendor/d3-interpolate/src/transform/index.js +100 -0
  156. package/lib-vendor/d3-interpolate/src/transform/parse.js +30 -0
  157. package/lib-vendor/d3-interpolate/src/value.js +36 -0
  158. package/lib-vendor/d3-interpolate/src/zoom.js +75 -0
  159. package/lib-vendor/d3-path/LICENSE +13 -0
  160. package/lib-vendor/d3-path/src/index.js +15 -0
  161. package/lib-vendor/d3-path/src/path.js +120 -0
  162. package/lib-vendor/d3-scale/LICENSE +13 -0
  163. package/lib-vendor/d3-scale/src/band.js +109 -0
  164. package/lib-vendor/d3-scale/src/colors.js +12 -0
  165. package/lib-vendor/d3-scale/src/constant.js +12 -0
  166. package/lib-vendor/d3-scale/src/continuous.js +140 -0
  167. package/lib-vendor/d3-scale/src/diverging.js +121 -0
  168. package/lib-vendor/d3-scale/src/identity.js +37 -0
  169. package/lib-vendor/d3-scale/src/index.js +213 -0
  170. package/lib-vendor/d3-scale/src/init.js +46 -0
  171. package/lib-vendor/d3-scale/src/linear.js +88 -0
  172. package/lib-vendor/d3-scale/src/log.js +156 -0
  173. package/lib-vendor/d3-scale/src/nice.js +24 -0
  174. package/lib-vendor/d3-scale/src/number.js +10 -0
  175. package/lib-vendor/d3-scale/src/ordinal.js +60 -0
  176. package/lib-vendor/d3-scale/src/pow.js +59 -0
  177. package/lib-vendor/d3-scale/src/quantile.js +64 -0
  178. package/lib-vendor/d3-scale/src/quantize.js +61 -0
  179. package/lib-vendor/d3-scale/src/radial.js +72 -0
  180. package/lib-vendor/d3-scale/src/sequential.js +120 -0
  181. package/lib-vendor/d3-scale/src/sequentialQuantile.js +51 -0
  182. package/lib-vendor/d3-scale/src/symlog.js +46 -0
  183. package/lib-vendor/d3-scale/src/threshold.js +44 -0
  184. package/lib-vendor/d3-scale/src/tickFormat.js +44 -0
  185. package/lib-vendor/d3-scale/src/time.js +82 -0
  186. package/lib-vendor/d3-scale/src/utcTime.js +18 -0
  187. package/lib-vendor/d3-shape/LICENSE +13 -0
  188. package/lib-vendor/d3-shape/src/arc.js +243 -0
  189. package/lib-vendor/d3-shape/src/area.js +125 -0
  190. package/lib-vendor/d3-shape/src/areaRadial.js +51 -0
  191. package/lib-vendor/d3-shape/src/array.js +14 -0
  192. package/lib-vendor/d3-shape/src/constant.js +12 -0
  193. package/lib-vendor/d3-shape/src/curve/basis.js +76 -0
  194. package/lib-vendor/d3-shape/src/curve/basisClosed.js +90 -0
  195. package/lib-vendor/d3-shape/src/curve/basisOpen.js +64 -0
  196. package/lib-vendor/d3-shape/src/curve/bump.js +104 -0
  197. package/lib-vendor/d3-shape/src/curve/bundle.js +65 -0
  198. package/lib-vendor/d3-shape/src/curve/cardinal.js +85 -0
  199. package/lib-vendor/d3-shape/src/curve/cardinalClosed.js +99 -0
  200. package/lib-vendor/d3-shape/src/curve/cardinalOpen.js +74 -0
  201. package/lib-vendor/d3-shape/src/curve/catmullRom.js +114 -0
  202. package/lib-vendor/d3-shape/src/curve/catmullRomClosed.js +108 -0
  203. package/lib-vendor/d3-shape/src/curve/catmullRomOpen.js +83 -0
  204. package/lib-vendor/d3-shape/src/curve/linear.js +49 -0
  205. package/lib-vendor/d3-shape/src/curve/linearClosed.js +33 -0
  206. package/lib-vendor/d3-shape/src/curve/monotone.js +139 -0
  207. package/lib-vendor/d3-shape/src/curve/natural.js +82 -0
  208. package/lib-vendor/d3-shape/src/curve/radial.js +45 -0
  209. package/lib-vendor/d3-shape/src/curve/step.js +76 -0
  210. package/lib-vendor/d3-shape/src/descending.js +10 -0
  211. package/lib-vendor/d3-shape/src/identity.js +10 -0
  212. package/lib-vendor/d3-shape/src/index.js +483 -0
  213. package/lib-vendor/d3-shape/src/line.js +68 -0
  214. package/lib-vendor/d3-shape/src/lineRadial.js +33 -0
  215. package/lib-vendor/d3-shape/src/link.js +90 -0
  216. package/lib-vendor/d3-shape/src/math.js +39 -0
  217. package/lib-vendor/d3-shape/src/noop.js +8 -0
  218. package/lib-vendor/d3-shape/src/offset/diverging.js +22 -0
  219. package/lib-vendor/d3-shape/src/offset/expand.js +22 -0
  220. package/lib-vendor/d3-shape/src/offset/none.js +18 -0
  221. package/lib-vendor/d3-shape/src/offset/silhouette.js +22 -0
  222. package/lib-vendor/d3-shape/src/offset/wiggle.js +38 -0
  223. package/lib-vendor/d3-shape/src/order/appearance.js +29 -0
  224. package/lib-vendor/d3-shape/src/order/ascending.js +29 -0
  225. package/lib-vendor/d3-shape/src/order/descending.js +14 -0
  226. package/lib-vendor/d3-shape/src/order/insideOut.js +38 -0
  227. package/lib-vendor/d3-shape/src/order/none.js +15 -0
  228. package/lib-vendor/d3-shape/src/order/reverse.js +14 -0
  229. package/lib-vendor/d3-shape/src/pie.js +95 -0
  230. package/lib-vendor/d3-shape/src/point.js +15 -0
  231. package/lib-vendor/d3-shape/src/pointRadial.js +10 -0
  232. package/lib-vendor/d3-shape/src/stack.js +72 -0
  233. package/lib-vendor/d3-shape/src/symbol/asterisk.js +25 -0
  234. package/lib-vendor/d3-shape/src/symbol/circle.js +18 -0
  235. package/lib-vendor/d3-shape/src/symbol/cross.js +29 -0
  236. package/lib-vendor/d3-shape/src/symbol/diamond.js +24 -0
  237. package/lib-vendor/d3-shape/src/symbol/diamond2.js +21 -0
  238. package/lib-vendor/d3-shape/src/symbol/plus.js +20 -0
  239. package/lib-vendor/d3-shape/src/symbol/square.js +18 -0
  240. package/lib-vendor/d3-shape/src/symbol/square2.js +21 -0
  241. package/lib-vendor/d3-shape/src/symbol/star.js +34 -0
  242. package/lib-vendor/d3-shape/src/symbol/triangle.js +21 -0
  243. package/lib-vendor/d3-shape/src/symbol/triangle2.js +24 -0
  244. package/lib-vendor/d3-shape/src/symbol/wye.js +36 -0
  245. package/lib-vendor/d3-shape/src/symbol/x.js +20 -0
  246. package/lib-vendor/d3-shape/src/symbol.js +73 -0
  247. package/lib-vendor/d3-time/LICENSE +13 -0
  248. package/lib-vendor/d3-time/src/day.js +18 -0
  249. package/lib-vendor/d3-time/src/duration.js +20 -0
  250. package/lib-vendor/d3-time/src/hour.js +26 -0
  251. package/lib-vendor/d3-time/src/index.js +433 -0
  252. package/lib-vendor/d3-time/src/interval.js +79 -0
  253. package/lib-vendor/d3-time/src/millisecond.js +35 -0
  254. package/lib-vendor/d3-time/src/minute.js +26 -0
  255. package/lib-vendor/d3-time/src/month.js +25 -0
  256. package/lib-vendor/d3-time/src/second.js +26 -0
  257. package/lib-vendor/d3-time/src/ticks.js +71 -0
  258. package/lib-vendor/d3-time/src/utcDay.js +26 -0
  259. package/lib-vendor/d3-time/src/utcHour.js +26 -0
  260. package/lib-vendor/d3-time/src/utcMinute.js +26 -0
  261. package/lib-vendor/d3-time/src/utcMonth.js +25 -0
  262. package/lib-vendor/d3-time/src/utcWeek.js +52 -0
  263. package/lib-vendor/d3-time/src/utcYear.js +36 -0
  264. package/lib-vendor/d3-time/src/week.js +52 -0
  265. package/lib-vendor/d3-time/src/year.js +36 -0
  266. package/lib-vendor/d3-time-format/LICENSE +13 -0
  267. package/lib-vendor/d3-time-format/src/defaultLocale.js +40 -0
  268. package/lib-vendor/d3-time-format/src/index.js +67 -0
  269. package/lib-vendor/d3-time-format/src/isoFormat.js +19 -0
  270. package/lib-vendor/d3-time-format/src/isoParse.js +19 -0
  271. package/lib-vendor/d3-time-format/src/locale.js +713 -0
  272. package/lib-vendor/d3-timer/LICENSE +13 -0
  273. package/lib-vendor/d3-timer/src/index.js +43 -0
  274. package/lib-vendor/d3-timer/src/interval.js +30 -0
  275. package/lib-vendor/d3-timer/src/timeout.js +18 -0
  276. package/lib-vendor/d3-timer/src/timer.js +138 -0
  277. package/lib-vendor/internmap/LICENSE +13 -0
  278. package/lib-vendor/internmap/src/index.js +111 -0
  279. package/package.json +43 -0
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = superset;
7
+
8
+ function superset(values, other) {
9
+ const iterator = values[Symbol.iterator](),
10
+ set = new Set();
11
+
12
+ for (const o of other) {
13
+ const io = intern(o);
14
+ if (set.has(io)) continue;
15
+ let value, done;
16
+
17
+ while (({
18
+ value,
19
+ done
20
+ } = iterator.next())) {
21
+ if (done) return false;
22
+ const ivalue = intern(value);
23
+ set.add(ivalue);
24
+ if (Object.is(io, ivalue)) break;
25
+ }
26
+ }
27
+
28
+ return true;
29
+ }
30
+
31
+ function intern(value) {
32
+ return value !== null && typeof value === "object" ? value.valueOf() : value;
33
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = thresholdFreedmanDiaconis;
7
+
8
+ var _count = _interopRequireDefault(require("../count.js"));
9
+
10
+ var _quantile = _interopRequireDefault(require("../quantile.js"));
11
+
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+
14
+ function thresholdFreedmanDiaconis(values, min, max) {
15
+ return Math.ceil((max - min) / (2 * ((0, _quantile.default)(values, 0.75) - (0, _quantile.default)(values, 0.25)) * Math.pow((0, _count.default)(values), -1 / 3)));
16
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = thresholdScott;
7
+
8
+ var _count = _interopRequireDefault(require("../count.js"));
9
+
10
+ var _deviation = _interopRequireDefault(require("../deviation.js"));
11
+
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+
14
+ function thresholdScott(values, min, max) {
15
+ return Math.ceil((max - min) * Math.cbrt((0, _count.default)(values)) / (3.49 * (0, _deviation.default)(values)));
16
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = thresholdSturges;
7
+
8
+ var _count = _interopRequireDefault(require("../count.js"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ function thresholdSturges(values) {
13
+ return Math.ceil(Math.log((0, _count.default)(values)) / Math.LN2) + 1;
14
+ }
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = ticks;
7
+ exports.tickIncrement = tickIncrement;
8
+ exports.tickStep = tickStep;
9
+ var e10 = Math.sqrt(50),
10
+ e5 = Math.sqrt(10),
11
+ e2 = Math.sqrt(2);
12
+
13
+ function ticks(start, stop, count) {
14
+ var reverse,
15
+ i = -1,
16
+ n,
17
+ ticks,
18
+ step;
19
+ stop = +stop, start = +start, count = +count;
20
+ if (start === stop && count > 0) return [start];
21
+ if (reverse = stop < start) n = start, start = stop, stop = n;
22
+ if ((step = tickIncrement(start, stop, count)) === 0 || !isFinite(step)) return [];
23
+
24
+ if (step > 0) {
25
+ let r0 = Math.round(start / step),
26
+ r1 = Math.round(stop / step);
27
+ if (r0 * step < start) ++r0;
28
+ if (r1 * step > stop) --r1;
29
+ ticks = new Array(n = r1 - r0 + 1);
30
+
31
+ while (++i < n) ticks[i] = (r0 + i) * step;
32
+ } else {
33
+ step = -step;
34
+ let r0 = Math.round(start * step),
35
+ r1 = Math.round(stop * step);
36
+ if (r0 / step < start) ++r0;
37
+ if (r1 / step > stop) --r1;
38
+ ticks = new Array(n = r1 - r0 + 1);
39
+
40
+ while (++i < n) ticks[i] = (r0 + i) / step;
41
+ }
42
+
43
+ if (reverse) ticks.reverse();
44
+ return ticks;
45
+ }
46
+
47
+ function tickIncrement(start, stop, count) {
48
+ var step = (stop - start) / Math.max(0, count),
49
+ power = Math.floor(Math.log(step) / Math.LN10),
50
+ error = step / Math.pow(10, power);
51
+ return power >= 0 ? (error >= e10 ? 10 : error >= e5 ? 5 : error >= e2 ? 2 : 1) * Math.pow(10, power) : -Math.pow(10, -power) / (error >= e10 ? 10 : error >= e5 ? 5 : error >= e2 ? 2 : 1);
52
+ }
53
+
54
+ function tickStep(start, stop, count) {
55
+ var step0 = Math.abs(stop - start) / Math.max(0, count),
56
+ step1 = Math.pow(10, Math.floor(Math.log(step0) / Math.LN10)),
57
+ error = step0 / step1;
58
+ if (error >= e10) step1 *= 10;else if (error >= e5) step1 *= 5;else if (error >= e2) step1 *= 2;
59
+ return stop < start ? -step1 : step1;
60
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = transpose;
7
+
8
+ var _min = _interopRequireDefault(require("./min.js"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ function transpose(matrix) {
13
+ if (!(n = matrix.length)) return [];
14
+
15
+ for (var i = -1, m = (0, _min.default)(matrix, length), transpose = new Array(m); ++i < m;) {
16
+ for (var j = -1, n, row = transpose[i] = new Array(n); ++j < n;) {
17
+ row[j] = matrix[j][i];
18
+ }
19
+ }
20
+
21
+ return transpose;
22
+ }
23
+
24
+ function length(d) {
25
+ return d.length;
26
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = union;
7
+
8
+ var _index = require("../../../lib-vendor/internmap/src/index.js");
9
+
10
+ function union(...others) {
11
+ const set = new _index.InternSet();
12
+
13
+ for (const other of others) {
14
+ for (const o of other) {
15
+ set.add(o);
16
+ }
17
+ }
18
+
19
+ return set;
20
+ }
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = variance;
7
+
8
+ function variance(values, valueof) {
9
+ let count = 0;
10
+ let delta;
11
+ let mean = 0;
12
+ let sum = 0;
13
+
14
+ if (valueof === undefined) {
15
+ for (let value of values) {
16
+ if (value != null && (value = +value) >= value) {
17
+ delta = value - mean;
18
+ mean += delta / ++count;
19
+ sum += delta * (value - mean);
20
+ }
21
+ }
22
+ } else {
23
+ let index = -1;
24
+
25
+ for (let value of values) {
26
+ if ((value = valueof(value, ++index, values)) != null && (value = +value) >= value) {
27
+ delta = value - mean;
28
+ mean += delta / ++count;
29
+ sum += delta * (value - mean);
30
+ }
31
+ }
32
+ }
33
+
34
+ if (count > 1) return sum / (count - 1);
35
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = zip;
7
+
8
+ var _transpose = _interopRequireDefault(require("./transpose.js"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ function zip() {
13
+ return (0, _transpose.default)(arguments);
14
+ }
@@ -0,0 +1,13 @@
1
+ Copyright 2010-2022 Mike Bostock
2
+
3
+ Permission to use, copy, modify, and/or distribute this software for any purpose
4
+ with or without fee is hereby granted, provided that the above copyright notice
5
+ and this permission notice appear in all copies.
6
+
7
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
8
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
9
+ FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
10
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
11
+ OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
12
+ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
13
+ THIS SOFTWARE.
@@ -0,0 +1,413 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Color = Color;
7
+ exports.Rgb = Rgb;
8
+ exports.darker = exports.brighter = void 0;
9
+ exports.default = color;
10
+ exports.hsl = hsl;
11
+ exports.hslConvert = hslConvert;
12
+ exports.rgb = rgb;
13
+ exports.rgbConvert = rgbConvert;
14
+
15
+ var _define = _interopRequireWildcard(require("./define.js"));
16
+
17
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
18
+
19
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
20
+
21
+ function Color() {}
22
+
23
+ var darker = 0.7;
24
+ exports.darker = darker;
25
+ var brighter = 1 / darker;
26
+ exports.brighter = brighter;
27
+ var reI = "\\s*([+-]?\\d+)\\s*",
28
+ reN = "\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",
29
+ reP = "\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",
30
+ reHex = /^#([0-9a-f]{3,8})$/,
31
+ reRgbInteger = new RegExp(`^rgb\\(${reI},${reI},${reI}\\)$`),
32
+ reRgbPercent = new RegExp(`^rgb\\(${reP},${reP},${reP}\\)$`),
33
+ reRgbaInteger = new RegExp(`^rgba\\(${reI},${reI},${reI},${reN}\\)$`),
34
+ reRgbaPercent = new RegExp(`^rgba\\(${reP},${reP},${reP},${reN}\\)$`),
35
+ reHslPercent = new RegExp(`^hsl\\(${reN},${reP},${reP}\\)$`),
36
+ reHslaPercent = new RegExp(`^hsla\\(${reN},${reP},${reP},${reN}\\)$`);
37
+ var named = {
38
+ aliceblue: 0xf0f8ff,
39
+ antiquewhite: 0xfaebd7,
40
+ aqua: 0x00ffff,
41
+ aquamarine: 0x7fffd4,
42
+ azure: 0xf0ffff,
43
+ beige: 0xf5f5dc,
44
+ bisque: 0xffe4c4,
45
+ black: 0x000000,
46
+ blanchedalmond: 0xffebcd,
47
+ blue: 0x0000ff,
48
+ blueviolet: 0x8a2be2,
49
+ brown: 0xa52a2a,
50
+ burlywood: 0xdeb887,
51
+ cadetblue: 0x5f9ea0,
52
+ chartreuse: 0x7fff00,
53
+ chocolate: 0xd2691e,
54
+ coral: 0xff7f50,
55
+ cornflowerblue: 0x6495ed,
56
+ cornsilk: 0xfff8dc,
57
+ crimson: 0xdc143c,
58
+ cyan: 0x00ffff,
59
+ darkblue: 0x00008b,
60
+ darkcyan: 0x008b8b,
61
+ darkgoldenrod: 0xb8860b,
62
+ darkgray: 0xa9a9a9,
63
+ darkgreen: 0x006400,
64
+ darkgrey: 0xa9a9a9,
65
+ darkkhaki: 0xbdb76b,
66
+ darkmagenta: 0x8b008b,
67
+ darkolivegreen: 0x556b2f,
68
+ darkorange: 0xff8c00,
69
+ darkorchid: 0x9932cc,
70
+ darkred: 0x8b0000,
71
+ darksalmon: 0xe9967a,
72
+ darkseagreen: 0x8fbc8f,
73
+ darkslateblue: 0x483d8b,
74
+ darkslategray: 0x2f4f4f,
75
+ darkslategrey: 0x2f4f4f,
76
+ darkturquoise: 0x00ced1,
77
+ darkviolet: 0x9400d3,
78
+ deeppink: 0xff1493,
79
+ deepskyblue: 0x00bfff,
80
+ dimgray: 0x696969,
81
+ dimgrey: 0x696969,
82
+ dodgerblue: 0x1e90ff,
83
+ firebrick: 0xb22222,
84
+ floralwhite: 0xfffaf0,
85
+ forestgreen: 0x228b22,
86
+ fuchsia: 0xff00ff,
87
+ gainsboro: 0xdcdcdc,
88
+ ghostwhite: 0xf8f8ff,
89
+ gold: 0xffd700,
90
+ goldenrod: 0xdaa520,
91
+ gray: 0x808080,
92
+ green: 0x008000,
93
+ greenyellow: 0xadff2f,
94
+ grey: 0x808080,
95
+ honeydew: 0xf0fff0,
96
+ hotpink: 0xff69b4,
97
+ indianred: 0xcd5c5c,
98
+ indigo: 0x4b0082,
99
+ ivory: 0xfffff0,
100
+ khaki: 0xf0e68c,
101
+ lavender: 0xe6e6fa,
102
+ lavenderblush: 0xfff0f5,
103
+ lawngreen: 0x7cfc00,
104
+ lemonchiffon: 0xfffacd,
105
+ lightblue: 0xadd8e6,
106
+ lightcoral: 0xf08080,
107
+ lightcyan: 0xe0ffff,
108
+ lightgoldenrodyellow: 0xfafad2,
109
+ lightgray: 0xd3d3d3,
110
+ lightgreen: 0x90ee90,
111
+ lightgrey: 0xd3d3d3,
112
+ lightpink: 0xffb6c1,
113
+ lightsalmon: 0xffa07a,
114
+ lightseagreen: 0x20b2aa,
115
+ lightskyblue: 0x87cefa,
116
+ lightslategray: 0x778899,
117
+ lightslategrey: 0x778899,
118
+ lightsteelblue: 0xb0c4de,
119
+ lightyellow: 0xffffe0,
120
+ lime: 0x00ff00,
121
+ limegreen: 0x32cd32,
122
+ linen: 0xfaf0e6,
123
+ magenta: 0xff00ff,
124
+ maroon: 0x800000,
125
+ mediumaquamarine: 0x66cdaa,
126
+ mediumblue: 0x0000cd,
127
+ mediumorchid: 0xba55d3,
128
+ mediumpurple: 0x9370db,
129
+ mediumseagreen: 0x3cb371,
130
+ mediumslateblue: 0x7b68ee,
131
+ mediumspringgreen: 0x00fa9a,
132
+ mediumturquoise: 0x48d1cc,
133
+ mediumvioletred: 0xc71585,
134
+ midnightblue: 0x191970,
135
+ mintcream: 0xf5fffa,
136
+ mistyrose: 0xffe4e1,
137
+ moccasin: 0xffe4b5,
138
+ navajowhite: 0xffdead,
139
+ navy: 0x000080,
140
+ oldlace: 0xfdf5e6,
141
+ olive: 0x808000,
142
+ olivedrab: 0x6b8e23,
143
+ orange: 0xffa500,
144
+ orangered: 0xff4500,
145
+ orchid: 0xda70d6,
146
+ palegoldenrod: 0xeee8aa,
147
+ palegreen: 0x98fb98,
148
+ paleturquoise: 0xafeeee,
149
+ palevioletred: 0xdb7093,
150
+ papayawhip: 0xffefd5,
151
+ peachpuff: 0xffdab9,
152
+ peru: 0xcd853f,
153
+ pink: 0xffc0cb,
154
+ plum: 0xdda0dd,
155
+ powderblue: 0xb0e0e6,
156
+ purple: 0x800080,
157
+ rebeccapurple: 0x663399,
158
+ red: 0xff0000,
159
+ rosybrown: 0xbc8f8f,
160
+ royalblue: 0x4169e1,
161
+ saddlebrown: 0x8b4513,
162
+ salmon: 0xfa8072,
163
+ sandybrown: 0xf4a460,
164
+ seagreen: 0x2e8b57,
165
+ seashell: 0xfff5ee,
166
+ sienna: 0xa0522d,
167
+ silver: 0xc0c0c0,
168
+ skyblue: 0x87ceeb,
169
+ slateblue: 0x6a5acd,
170
+ slategray: 0x708090,
171
+ slategrey: 0x708090,
172
+ snow: 0xfffafa,
173
+ springgreen: 0x00ff7f,
174
+ steelblue: 0x4682b4,
175
+ tan: 0xd2b48c,
176
+ teal: 0x008080,
177
+ thistle: 0xd8bfd8,
178
+ tomato: 0xff6347,
179
+ turquoise: 0x40e0d0,
180
+ violet: 0xee82ee,
181
+ wheat: 0xf5deb3,
182
+ white: 0xffffff,
183
+ whitesmoke: 0xf5f5f5,
184
+ yellow: 0xffff00,
185
+ yellowgreen: 0x9acd32
186
+ };
187
+ (0, _define.default)(Color, color, {
188
+ copy(channels) {
189
+ return Object.assign(new this.constructor(), this, channels);
190
+ },
191
+
192
+ displayable() {
193
+ return this.rgb().displayable();
194
+ },
195
+
196
+ hex: color_formatHex,
197
+ // Deprecated! Use color.formatHex.
198
+ formatHex: color_formatHex,
199
+ formatHex8: color_formatHex8,
200
+ formatHsl: color_formatHsl,
201
+ formatRgb: color_formatRgb,
202
+ toString: color_formatRgb
203
+ });
204
+
205
+ function color_formatHex() {
206
+ return this.rgb().formatHex();
207
+ }
208
+
209
+ function color_formatHex8() {
210
+ return this.rgb().formatHex8();
211
+ }
212
+
213
+ function color_formatHsl() {
214
+ return hslConvert(this).formatHsl();
215
+ }
216
+
217
+ function color_formatRgb() {
218
+ return this.rgb().formatRgb();
219
+ }
220
+
221
+ function color(format) {
222
+ var m, l;
223
+ format = (format + "").trim().toLowerCase();
224
+ return (m = reHex.exec(format)) ? (l = m[1].length, m = parseInt(m[1], 16), l === 6 ? rgbn(m) // #ff0000
225
+ : l === 3 ? new Rgb(m >> 8 & 0xf | m >> 4 & 0xf0, m >> 4 & 0xf | m & 0xf0, (m & 0xf) << 4 | m & 0xf, 1) // #f00
226
+ : l === 8 ? rgba(m >> 24 & 0xff, m >> 16 & 0xff, m >> 8 & 0xff, (m & 0xff) / 0xff) // #ff000000
227
+ : l === 4 ? rgba(m >> 12 & 0xf | m >> 8 & 0xf0, m >> 8 & 0xf | m >> 4 & 0xf0, m >> 4 & 0xf | m & 0xf0, ((m & 0xf) << 4 | m & 0xf) / 0xff) // #f000
228
+ : null // invalid hex
229
+ ) : (m = reRgbInteger.exec(format)) ? new Rgb(m[1], m[2], m[3], 1) // rgb(255, 0, 0)
230
+ : (m = reRgbPercent.exec(format)) ? new Rgb(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, 1) // rgb(100%, 0%, 0%)
231
+ : (m = reRgbaInteger.exec(format)) ? rgba(m[1], m[2], m[3], m[4]) // rgba(255, 0, 0, 1)
232
+ : (m = reRgbaPercent.exec(format)) ? rgba(m[1] * 255 / 100, m[2] * 255 / 100, m[3] * 255 / 100, m[4]) // rgb(100%, 0%, 0%, 1)
233
+ : (m = reHslPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, 1) // hsl(120, 50%, 50%)
234
+ : (m = reHslaPercent.exec(format)) ? hsla(m[1], m[2] / 100, m[3] / 100, m[4]) // hsla(120, 50%, 50%, 1)
235
+ : named.hasOwnProperty(format) ? rgbn(named[format]) // eslint-disable-line no-prototype-builtins
236
+ : format === "transparent" ? new Rgb(NaN, NaN, NaN, 0) : null;
237
+ }
238
+
239
+ function rgbn(n) {
240
+ return new Rgb(n >> 16 & 0xff, n >> 8 & 0xff, n & 0xff, 1);
241
+ }
242
+
243
+ function rgba(r, g, b, a) {
244
+ if (a <= 0) r = g = b = NaN;
245
+ return new Rgb(r, g, b, a);
246
+ }
247
+
248
+ function rgbConvert(o) {
249
+ if (!(o instanceof Color)) o = color(o);
250
+ if (!o) return new Rgb();
251
+ o = o.rgb();
252
+ return new Rgb(o.r, o.g, o.b, o.opacity);
253
+ }
254
+
255
+ function rgb(r, g, b, opacity) {
256
+ return arguments.length === 1 ? rgbConvert(r) : new Rgb(r, g, b, opacity == null ? 1 : opacity);
257
+ }
258
+
259
+ function Rgb(r, g, b, opacity) {
260
+ this.r = +r;
261
+ this.g = +g;
262
+ this.b = +b;
263
+ this.opacity = +opacity;
264
+ }
265
+
266
+ (0, _define.default)(Rgb, rgb, (0, _define.extend)(Color, {
267
+ brighter(k) {
268
+ k = k == null ? brighter : Math.pow(brighter, k);
269
+ return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);
270
+ },
271
+
272
+ darker(k) {
273
+ k = k == null ? darker : Math.pow(darker, k);
274
+ return new Rgb(this.r * k, this.g * k, this.b * k, this.opacity);
275
+ },
276
+
277
+ rgb() {
278
+ return this;
279
+ },
280
+
281
+ clamp() {
282
+ return new Rgb(clampi(this.r), clampi(this.g), clampi(this.b), clampa(this.opacity));
283
+ },
284
+
285
+ displayable() {
286
+ return -0.5 <= this.r && this.r < 255.5 && -0.5 <= this.g && this.g < 255.5 && -0.5 <= this.b && this.b < 255.5 && 0 <= this.opacity && this.opacity <= 1;
287
+ },
288
+
289
+ hex: rgb_formatHex,
290
+ // Deprecated! Use color.formatHex.
291
+ formatHex: rgb_formatHex,
292
+ formatHex8: rgb_formatHex8,
293
+ formatRgb: rgb_formatRgb,
294
+ toString: rgb_formatRgb
295
+ }));
296
+
297
+ function rgb_formatHex() {
298
+ return `#${hex(this.r)}${hex(this.g)}${hex(this.b)}`;
299
+ }
300
+
301
+ function rgb_formatHex8() {
302
+ return `#${hex(this.r)}${hex(this.g)}${hex(this.b)}${hex((isNaN(this.opacity) ? 1 : this.opacity) * 255)}`;
303
+ }
304
+
305
+ function rgb_formatRgb() {
306
+ const a = clampa(this.opacity);
307
+ return `${a === 1 ? "rgb(" : "rgba("}${clampi(this.r)}, ${clampi(this.g)}, ${clampi(this.b)}${a === 1 ? ")" : `, ${a})`}`;
308
+ }
309
+
310
+ function clampa(opacity) {
311
+ return isNaN(opacity) ? 1 : Math.max(0, Math.min(1, opacity));
312
+ }
313
+
314
+ function clampi(value) {
315
+ return Math.max(0, Math.min(255, Math.round(value) || 0));
316
+ }
317
+
318
+ function hex(value) {
319
+ value = clampi(value);
320
+ return (value < 16 ? "0" : "") + value.toString(16);
321
+ }
322
+
323
+ function hsla(h, s, l, a) {
324
+ if (a <= 0) h = s = l = NaN;else if (l <= 0 || l >= 1) h = s = NaN;else if (s <= 0) h = NaN;
325
+ return new Hsl(h, s, l, a);
326
+ }
327
+
328
+ function hslConvert(o) {
329
+ if (o instanceof Hsl) return new Hsl(o.h, o.s, o.l, o.opacity);
330
+ if (!(o instanceof Color)) o = color(o);
331
+ if (!o) return new Hsl();
332
+ if (o instanceof Hsl) return o;
333
+ o = o.rgb();
334
+ var r = o.r / 255,
335
+ g = o.g / 255,
336
+ b = o.b / 255,
337
+ min = Math.min(r, g, b),
338
+ max = Math.max(r, g, b),
339
+ h = NaN,
340
+ s = max - min,
341
+ l = (max + min) / 2;
342
+
343
+ if (s) {
344
+ if (r === max) h = (g - b) / s + (g < b) * 6;else if (g === max) h = (b - r) / s + 2;else h = (r - g) / s + 4;
345
+ s /= l < 0.5 ? max + min : 2 - max - min;
346
+ h *= 60;
347
+ } else {
348
+ s = l > 0 && l < 1 ? 0 : h;
349
+ }
350
+
351
+ return new Hsl(h, s, l, o.opacity);
352
+ }
353
+
354
+ function hsl(h, s, l, opacity) {
355
+ return arguments.length === 1 ? hslConvert(h) : new Hsl(h, s, l, opacity == null ? 1 : opacity);
356
+ }
357
+
358
+ function Hsl(h, s, l, opacity) {
359
+ this.h = +h;
360
+ this.s = +s;
361
+ this.l = +l;
362
+ this.opacity = +opacity;
363
+ }
364
+
365
+ (0, _define.default)(Hsl, hsl, (0, _define.extend)(Color, {
366
+ brighter(k) {
367
+ k = k == null ? brighter : Math.pow(brighter, k);
368
+ return new Hsl(this.h, this.s, this.l * k, this.opacity);
369
+ },
370
+
371
+ darker(k) {
372
+ k = k == null ? darker : Math.pow(darker, k);
373
+ return new Hsl(this.h, this.s, this.l * k, this.opacity);
374
+ },
375
+
376
+ rgb() {
377
+ var h = this.h % 360 + (this.h < 0) * 360,
378
+ s = isNaN(h) || isNaN(this.s) ? 0 : this.s,
379
+ l = this.l,
380
+ m2 = l + (l < 0.5 ? l : 1 - l) * s,
381
+ m1 = 2 * l - m2;
382
+ return new Rgb(hsl2rgb(h >= 240 ? h - 240 : h + 120, m1, m2), hsl2rgb(h, m1, m2), hsl2rgb(h < 120 ? h + 240 : h - 120, m1, m2), this.opacity);
383
+ },
384
+
385
+ clamp() {
386
+ return new Hsl(clamph(this.h), clampt(this.s), clampt(this.l), clampa(this.opacity));
387
+ },
388
+
389
+ displayable() {
390
+ return (0 <= this.s && this.s <= 1 || isNaN(this.s)) && 0 <= this.l && this.l <= 1 && 0 <= this.opacity && this.opacity <= 1;
391
+ },
392
+
393
+ formatHsl() {
394
+ const a = clampa(this.opacity);
395
+ return `${a === 1 ? "hsl(" : "hsla("}${clamph(this.h)}, ${clampt(this.s) * 100}%, ${clampt(this.l) * 100}%${a === 1 ? ")" : `, ${a})`}`;
396
+ }
397
+
398
+ }));
399
+
400
+ function clamph(value) {
401
+ value = (value || 0) % 360;
402
+ return value < 0 ? value + 360 : value;
403
+ }
404
+
405
+ function clampt(value) {
406
+ return Math.max(0, Math.min(1, value || 0));
407
+ }
408
+ /* From FvD 13.37, CSS Color Module Level 3 */
409
+
410
+
411
+ function hsl2rgb(h, m1, m2) {
412
+ return (h < 60 ? m1 + (m2 - m1) * h / 60 : h < 180 ? m2 : h < 240 ? m1 + (m2 - m1) * (240 - h) / 60 : m1) * 255;
413
+ }