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,30 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = maxIndex;
7
+
8
+ function maxIndex(values, valueof) {
9
+ let max;
10
+ let maxIndex = -1;
11
+ let index = -1;
12
+
13
+ if (valueof === undefined) {
14
+ for (const value of values) {
15
+ ++index;
16
+
17
+ if (value != null && (max < value || max === undefined && value >= value)) {
18
+ max = value, maxIndex = index;
19
+ }
20
+ }
21
+ } else {
22
+ for (let value of values) {
23
+ if ((value = valueof(value, ++index, values)) != null && (max < value || max === undefined && value >= value)) {
24
+ max = value, maxIndex = index;
25
+ }
26
+ }
27
+ }
28
+
29
+ return maxIndex;
30
+ }
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = mean;
7
+
8
+ function mean(values, valueof) {
9
+ let count = 0;
10
+ let sum = 0;
11
+
12
+ if (valueof === undefined) {
13
+ for (let value of values) {
14
+ if (value != null && (value = +value) >= value) {
15
+ ++count, sum += value;
16
+ }
17
+ }
18
+ } else {
19
+ let index = -1;
20
+
21
+ for (let value of values) {
22
+ if ((value = valueof(value, ++index, values)) != null && (value = +value) >= value) {
23
+ ++count, sum += value;
24
+ }
25
+ }
26
+ }
27
+
28
+ if (count) return sum / count;
29
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = median;
7
+
8
+ var _quantile = _interopRequireDefault(require("./quantile.js"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ function median(values, valueof) {
13
+ return (0, _quantile.default)(values, 0.5, valueof);
14
+ }
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = merge;
7
+
8
+ function* flatten(arrays) {
9
+ for (const array of arrays) {
10
+ yield* array;
11
+ }
12
+ }
13
+
14
+ function merge(arrays) {
15
+ return Array.from(flatten(arrays));
16
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = min;
7
+
8
+ function min(values, valueof) {
9
+ let min;
10
+
11
+ if (valueof === undefined) {
12
+ for (const value of values) {
13
+ if (value != null && (min > value || min === undefined && value >= value)) {
14
+ min = value;
15
+ }
16
+ }
17
+ } else {
18
+ let index = -1;
19
+
20
+ for (let value of values) {
21
+ if ((value = valueof(value, ++index, values)) != null && (min > value || min === undefined && value >= value)) {
22
+ min = value;
23
+ }
24
+ }
25
+ }
26
+
27
+ return min;
28
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = minIndex;
7
+
8
+ function minIndex(values, valueof) {
9
+ let min;
10
+ let minIndex = -1;
11
+ let index = -1;
12
+
13
+ if (valueof === undefined) {
14
+ for (const value of values) {
15
+ ++index;
16
+
17
+ if (value != null && (min > value || min === undefined && value >= value)) {
18
+ min = value, minIndex = index;
19
+ }
20
+ }
21
+ } else {
22
+ for (let value of values) {
23
+ if ((value = valueof(value, ++index, values)) != null && (min > value || min === undefined && value >= value)) {
24
+ min = value, minIndex = index;
25
+ }
26
+ }
27
+ }
28
+
29
+ return minIndex;
30
+ }
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = mode;
7
+
8
+ var _index = require("../../../lib-vendor/internmap/src/index.js");
9
+
10
+ function mode(values, valueof) {
11
+ const counts = new _index.InternMap();
12
+
13
+ if (valueof === undefined) {
14
+ for (let value of values) {
15
+ if (value != null && value >= value) {
16
+ counts.set(value, (counts.get(value) || 0) + 1);
17
+ }
18
+ }
19
+ } else {
20
+ let index = -1;
21
+
22
+ for (let value of values) {
23
+ if ((value = valueof(value, ++index, values)) != null && value >= value) {
24
+ counts.set(value, (counts.get(value) || 0) + 1);
25
+ }
26
+ }
27
+ }
28
+
29
+ let modeValue;
30
+ let modeCount = 0;
31
+
32
+ for (const [value, count] of counts) {
33
+ if (count > modeCount) {
34
+ modeCount = count;
35
+ modeValue = value;
36
+ }
37
+ }
38
+
39
+ return modeValue;
40
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = nice;
7
+
8
+ var _ticks = require("./ticks.js");
9
+
10
+ function nice(start, stop, count) {
11
+ let prestep;
12
+
13
+ while (true) {
14
+ const step = (0, _ticks.tickIncrement)(start, stop, count);
15
+
16
+ if (step === prestep || step === 0 || !isFinite(step)) {
17
+ return [start, stop];
18
+ } else if (step > 0) {
19
+ start = Math.floor(start / step) * step;
20
+ stop = Math.ceil(stop / step) * step;
21
+ } else if (step < 0) {
22
+ start = Math.ceil(start * step) / step;
23
+ stop = Math.floor(stop * step) / step;
24
+ }
25
+
26
+ prestep = step;
27
+ }
28
+ }
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = number;
7
+ exports.numbers = numbers;
8
+
9
+ function number(x) {
10
+ return x === null ? NaN : +x;
11
+ }
12
+
13
+ function* numbers(values, valueof) {
14
+ if (valueof === undefined) {
15
+ for (let value of values) {
16
+ if (value != null && (value = +value) >= value) {
17
+ yield value;
18
+ }
19
+ }
20
+ } else {
21
+ let index = -1;
22
+
23
+ for (let value of values) {
24
+ if ((value = valueof(value, ++index, values)) != null && (value = +value) >= value) {
25
+ yield value;
26
+ }
27
+ }
28
+ }
29
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = pairs;
7
+ exports.pair = pair;
8
+
9
+ function pairs(values, pairof = pair) {
10
+ const pairs = [];
11
+ let previous;
12
+ let first = false;
13
+
14
+ for (const value of values) {
15
+ if (first) pairs.push(pairof(previous, value));
16
+ previous = value;
17
+ first = true;
18
+ }
19
+
20
+ return pairs;
21
+ }
22
+
23
+ function pair(a, b) {
24
+ return [a, b];
25
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = permute;
7
+
8
+ function permute(source, keys) {
9
+ return Array.from(keys, key => source[key]);
10
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = quantile;
7
+ exports.quantileSorted = quantileSorted;
8
+
9
+ var _max = _interopRequireDefault(require("./max.js"));
10
+
11
+ var _min = _interopRequireDefault(require("./min.js"));
12
+
13
+ var _quickselect = _interopRequireDefault(require("./quickselect.js"));
14
+
15
+ var _number = _interopRequireWildcard(require("./number.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 _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
22
+
23
+ function quantile(values, p, valueof) {
24
+ values = Float64Array.from((0, _number.numbers)(values, valueof));
25
+ if (!(n = values.length)) return;
26
+ if ((p = +p) <= 0 || n < 2) return (0, _min.default)(values);
27
+ if (p >= 1) return (0, _max.default)(values);
28
+ var n,
29
+ i = (n - 1) * p,
30
+ i0 = Math.floor(i),
31
+ value0 = (0, _max.default)((0, _quickselect.default)(values, i0).subarray(0, i0 + 1)),
32
+ value1 = (0, _min.default)(values.subarray(i0 + 1));
33
+ return value0 + (value1 - value0) * (i - i0);
34
+ }
35
+
36
+ function quantileSorted(values, p, valueof = _number.default) {
37
+ if (!(n = values.length)) return;
38
+ if ((p = +p) <= 0 || n < 2) return +valueof(values[0], 0, values);
39
+ if (p >= 1) return +valueof(values[n - 1], n - 1, values);
40
+ var n,
41
+ i = (n - 1) * p,
42
+ i0 = Math.floor(i),
43
+ value0 = +valueof(values[i0], i0, values),
44
+ value1 = +valueof(values[i0 + 1], i0 + 1, values);
45
+ return value0 + (value1 - value0) * (i - i0);
46
+ }
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = quickselect;
7
+
8
+ var _sort = require("./sort.js");
9
+
10
+ // Based on https://github.com/mourner/quickselect
11
+ // ISC license, Copyright 2018 Vladimir Agafonkin.
12
+ function quickselect(array, k, left = 0, right = array.length - 1, compare) {
13
+ compare = compare === undefined ? _sort.ascendingDefined : (0, _sort.compareDefined)(compare);
14
+
15
+ while (right > left) {
16
+ if (right - left > 600) {
17
+ const n = right - left + 1;
18
+ const m = k - left + 1;
19
+ const z = Math.log(n);
20
+ const s = 0.5 * Math.exp(2 * z / 3);
21
+ const sd = 0.5 * Math.sqrt(z * s * (n - s) / n) * (m - n / 2 < 0 ? -1 : 1);
22
+ const newLeft = Math.max(left, Math.floor(k - m * s / n + sd));
23
+ const newRight = Math.min(right, Math.floor(k + (n - m) * s / n + sd));
24
+ quickselect(array, k, newLeft, newRight, compare);
25
+ }
26
+
27
+ const t = array[k];
28
+ let i = left;
29
+ let j = right;
30
+ swap(array, left, k);
31
+ if (compare(array[right], t) > 0) swap(array, left, right);
32
+
33
+ while (i < j) {
34
+ swap(array, i, j), ++i, --j;
35
+
36
+ while (compare(array[i], t) < 0) ++i;
37
+
38
+ while (compare(array[j], t) > 0) --j;
39
+ }
40
+
41
+ if (compare(array[left], t) === 0) swap(array, left, j);else ++j, swap(array, j, right);
42
+ if (j <= k) left = j + 1;
43
+ if (k <= j) right = j - 1;
44
+ }
45
+
46
+ return array;
47
+ }
48
+
49
+ function swap(array, i, j) {
50
+ const t = array[i];
51
+ array[i] = array[j];
52
+ array[j] = t;
53
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = range;
7
+
8
+ function range(start, stop, step) {
9
+ start = +start, stop = +stop, step = (n = arguments.length) < 2 ? (stop = start, start = 0, 1) : n < 3 ? 1 : +step;
10
+ var i = -1,
11
+ n = Math.max(0, Math.ceil((stop - start) / step)) | 0,
12
+ range = new Array(n);
13
+
14
+ while (++i < n) {
15
+ range[i] = start + i * step;
16
+ }
17
+
18
+ return range;
19
+ }
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = rank;
7
+
8
+ var _ascending = _interopRequireDefault(require("./ascending.js"));
9
+
10
+ var _sort = require("./sort.js");
11
+
12
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+
14
+ function rank(values, valueof = _ascending.default) {
15
+ if (typeof values[Symbol.iterator] !== "function") throw new TypeError("values is not iterable");
16
+ let V = Array.from(values);
17
+ const R = new Float64Array(V.length);
18
+ if (valueof.length !== 2) V = V.map(valueof), valueof = _ascending.default;
19
+
20
+ const compareIndex = (i, j) => valueof(V[i], V[j]);
21
+
22
+ let k, r;
23
+ Uint32Array.from(V, (_, i) => i).sort(valueof === _ascending.default ? (i, j) => (0, _sort.ascendingDefined)(V[i], V[j]) : (0, _sort.compareDefined)(compareIndex)).forEach((j, i) => {
24
+ const c = compareIndex(j, k === undefined ? j : k);
25
+
26
+ if (c >= 0) {
27
+ if (k === undefined || c > 0) k = j, r = i;
28
+ R[j] = r;
29
+ } else {
30
+ R[j] = NaN;
31
+ }
32
+ });
33
+ return R;
34
+ }
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = reduce;
7
+
8
+ function reduce(values, reducer, value) {
9
+ if (typeof reducer !== "function") throw new TypeError("reducer is not a function");
10
+ const iterator = values[Symbol.iterator]();
11
+ let done,
12
+ next,
13
+ index = -1;
14
+
15
+ if (arguments.length < 3) {
16
+ ({
17
+ done,
18
+ value
19
+ } = iterator.next());
20
+ if (done) return;
21
+ ++index;
22
+ }
23
+
24
+ while (({
25
+ done,
26
+ value: next
27
+ } = iterator.next()), !done) {
28
+ value = reducer(value, next, ++index, values);
29
+ }
30
+
31
+ return value;
32
+ }
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = reverse;
7
+
8
+ function reverse(values) {
9
+ if (typeof values[Symbol.iterator] !== "function") throw new TypeError("values is not iterable");
10
+ return Array.from(values).reverse();
11
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = scan;
7
+
8
+ var _leastIndex = _interopRequireDefault(require("./leastIndex.js"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ function scan(values, compare) {
13
+ const index = (0, _leastIndex.default)(values, compare);
14
+ return index < 0 ? undefined : index;
15
+ }
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ exports.shuffler = shuffler;
8
+
9
+ var _default = shuffler(Math.random);
10
+
11
+ exports.default = _default;
12
+
13
+ function shuffler(random) {
14
+ return function shuffle(array, i0 = 0, i1 = array.length) {
15
+ let m = i1 - (i0 = +i0);
16
+
17
+ while (m) {
18
+ const i = random() * m-- | 0,
19
+ t = array[m + i0];
20
+ array[m + i0] = array[i + i0];
21
+ array[i + i0] = t;
22
+ }
23
+
24
+ return array;
25
+ };
26
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = some;
7
+
8
+ function some(values, test) {
9
+ if (typeof test !== "function") throw new TypeError("test is not a function");
10
+ let index = -1;
11
+
12
+ for (const value of values) {
13
+ if (test(value, ++index, values)) {
14
+ return true;
15
+ }
16
+ }
17
+
18
+ return false;
19
+ }
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.ascendingDefined = ascendingDefined;
7
+ exports.compareDefined = compareDefined;
8
+ exports.default = sort;
9
+
10
+ var _ascending = _interopRequireDefault(require("./ascending.js"));
11
+
12
+ var _permute = _interopRequireDefault(require("./permute.js"));
13
+
14
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
15
+
16
+ function sort(values, ...F) {
17
+ if (typeof values[Symbol.iterator] !== "function") throw new TypeError("values is not iterable");
18
+ values = Array.from(values);
19
+ let [f] = F;
20
+
21
+ if (f && f.length !== 2 || F.length > 1) {
22
+ const index = Uint32Array.from(values, (d, i) => i);
23
+
24
+ if (F.length > 1) {
25
+ F = F.map(f => values.map(f));
26
+ index.sort((i, j) => {
27
+ for (const f of F) {
28
+ const c = ascendingDefined(f[i], f[j]);
29
+ if (c) return c;
30
+ }
31
+ });
32
+ } else {
33
+ f = values.map(f);
34
+ index.sort((i, j) => ascendingDefined(f[i], f[j]));
35
+ }
36
+
37
+ return (0, _permute.default)(values, index);
38
+ }
39
+
40
+ return values.sort(compareDefined(f));
41
+ }
42
+
43
+ function compareDefined(compare = _ascending.default) {
44
+ if (compare === _ascending.default) return ascendingDefined;
45
+ if (typeof compare !== "function") throw new TypeError("compare is not a function");
46
+ return (a, b) => {
47
+ const x = compare(a, b);
48
+ if (x || x === 0) return x;
49
+ return (compare(b, b) === 0) - (compare(a, a) === 0);
50
+ };
51
+ }
52
+
53
+ function ascendingDefined(a, b) {
54
+ return (a == null || !(a >= a)) - (b == null || !(b >= b)) || (a < b ? -1 : a > b ? 1 : 0);
55
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = subset;
7
+
8
+ var _superset = _interopRequireDefault(require("./superset.js"));
9
+
10
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+
12
+ function subset(values, other) {
13
+ return (0, _superset.default)(other, values);
14
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = sum;
7
+
8
+ function sum(values, valueof) {
9
+ let sum = 0;
10
+
11
+ if (valueof === undefined) {
12
+ for (let value of values) {
13
+ if (value = +value) {
14
+ sum += value;
15
+ }
16
+ }
17
+ } else {
18
+ let index = -1;
19
+
20
+ for (let value of values) {
21
+ if (value = +valueof(value, ++index, values)) {
22
+ sum += value;
23
+ }
24
+ }
25
+ }
26
+
27
+ return sum;
28
+ }