@undp/data-viz 1.2.7 → 1.3.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 (497) hide show
  1. package/dist/AreaChart.d.ts +224 -0
  2. package/dist/AreaChart.js +2 -0
  3. package/dist/AreaChart.js.map +1 -0
  4. package/dist/Axis-BlyBRMNw.cjs +2 -0
  5. package/dist/Axis-BlyBRMNw.cjs.map +1 -0
  6. package/dist/Axis-CvK-w3E2.js +44 -0
  7. package/dist/Axis-CvK-w3E2.js.map +1 -0
  8. package/dist/AxisTitle-BY8MI9jC.cjs +2 -0
  9. package/dist/AxisTitle-BY8MI9jC.cjs.map +1 -0
  10. package/dist/AxisTitle-BeMxcw5I.js +21 -0
  11. package/dist/AxisTitle-BeMxcw5I.js.map +1 -0
  12. package/dist/BarGraph.d.ts +460 -0
  13. package/dist/BarGraph.js +2 -0
  14. package/dist/BarGraph.js.map +1 -0
  15. package/dist/BasicStatCard.d.ts +106 -0
  16. package/dist/BasicStatCard.js +2 -0
  17. package/dist/BasicStatCard.js.map +1 -0
  18. package/dist/BeeSwarmChart.d.ts +189 -0
  19. package/dist/BeeSwarmChart.js +2 -0
  20. package/dist/BeeSwarmChart.js.map +1 -0
  21. package/dist/BiVariateChoroplethMap.d.ts +189 -0
  22. package/dist/BiVariateChoroplethMap.js +2 -0
  23. package/dist/BiVariateChoroplethMap.js.map +1 -0
  24. package/dist/BulletChart.d.ts +219 -0
  25. package/dist/BulletChart.js +2 -0
  26. package/dist/BulletChart.js.map +1 -0
  27. package/dist/ButterflyChart.d.ts +201 -0
  28. package/dist/ButterflyChart.js +2 -0
  29. package/dist/ButterflyChart.js.map +1 -0
  30. package/dist/ChoroplethMap.d.ts +190 -0
  31. package/dist/ChoroplethMap.js +2 -0
  32. package/dist/ChoroplethMap.js.map +1 -0
  33. package/dist/CirclePackingGraph.d.ts +161 -0
  34. package/dist/CirclePackingGraph.js +2 -0
  35. package/dist/CirclePackingGraph.js.map +1 -0
  36. package/dist/ColorLegend.d.ts +17 -0
  37. package/dist/ColorLegend.js +2 -0
  38. package/dist/ColorLegend.js.map +1 -0
  39. package/dist/ColorLegendWithMouseOver.d.ts +16 -0
  40. package/dist/ColorLegendWithMouseOver.js +2 -0
  41. package/dist/ColorLegendWithMouseOver.js.map +1 -0
  42. package/dist/Colors.d.ts +174 -0
  43. package/dist/Colors.js +2 -0
  44. package/dist/Colors.js.map +1 -0
  45. package/dist/CopyTextButton.d.ts +13 -0
  46. package/dist/CopyTextButton.js +17 -0
  47. package/dist/CopyTextButton.js.map +1 -0
  48. package/dist/CsvDownloadButton.d.ts +22 -0
  49. package/dist/CsvDownloadButton.js +23 -0
  50. package/dist/CsvDownloadButton.js.map +1 -0
  51. package/dist/DataCards.d.ts +131 -0
  52. package/dist/DataCards.js +2 -0
  53. package/dist/DataCards.js.map +1 -0
  54. package/dist/DataTable.d.ts +122 -0
  55. package/dist/DataTable.js +2 -0
  56. package/dist/DataTable.js.map +1 -0
  57. package/dist/DifferenceLineChart.d.ts +237 -0
  58. package/dist/DifferenceLineChart.js +2 -0
  59. package/dist/DifferenceLineChart.js.map +1 -0
  60. package/dist/DonutChart.d.ts +148 -0
  61. package/dist/DonutChart.js +2 -0
  62. package/dist/DonutChart.js.map +1 -0
  63. package/dist/DotDensityMap.d.ts +191 -0
  64. package/dist/DotDensityMap.js +2 -0
  65. package/dist/DotDensityMap.js.map +1 -0
  66. package/dist/DropdownSelect-CuzV7gdj.cjs +29 -0
  67. package/dist/DropdownSelect-CuzV7gdj.cjs.map +1 -0
  68. package/dist/DropdownSelect-DmZsXrhY.js +2698 -0
  69. package/dist/DropdownSelect-DmZsXrhY.js.map +1 -0
  70. package/dist/DualAxisLineChart.d.ts +180 -0
  71. package/dist/DualAxisLineChart.js +2 -0
  72. package/dist/DualAxisLineChart.js.map +1 -0
  73. package/dist/DumbbellChart.d.ts +224 -0
  74. package/dist/DumbbellChart.js +2 -0
  75. package/dist/DumbbellChart.js.map +1 -0
  76. package/dist/EmptyState-BQguKAp5.cjs +2 -0
  77. package/dist/EmptyState-BQguKAp5.cjs.map +1 -0
  78. package/dist/EmptyState-b2Ln487i.js +22 -0
  79. package/dist/EmptyState-b2Ln487i.js.map +1 -0
  80. package/dist/ExcelDownloadButton.d.ts +22 -0
  81. package/dist/ExcelDownloadButton.js +2 -0
  82. package/dist/ExcelDownloadButton.js.map +1 -0
  83. package/dist/FootNote.d.ts +12 -0
  84. package/dist/FootNote.js +2 -0
  85. package/dist/FootNote.js.map +1 -0
  86. package/dist/GeoHubCompareMaps.d.ts +103 -0
  87. package/dist/GeoHubCompareMaps.js +2 -0
  88. package/dist/GeoHubCompareMaps.js.map +1 -0
  89. package/dist/GeoHubMap.d.ts +118 -0
  90. package/dist/GeoHubMap.js +2 -0
  91. package/dist/GeoHubMap.js.map +1 -0
  92. package/dist/GeoHubMapWithLayerSelection.d.ts +117 -0
  93. package/dist/GeoHubMapWithLayerSelection.js +2 -0
  94. package/dist/GeoHubMapWithLayerSelection.js.map +1 -0
  95. package/dist/GraphDescription.d.ts +12 -0
  96. package/dist/GraphDescription.js +2 -0
  97. package/dist/GraphDescription.js.map +1 -0
  98. package/dist/GraphFooter.d.ts +24 -0
  99. package/dist/GraphFooter.js +2 -0
  100. package/dist/GraphFooter.js.map +1 -0
  101. package/dist/GraphHeader.d.ts +22 -0
  102. package/dist/GraphHeader.js +2 -0
  103. package/dist/GraphHeader.js.map +1 -0
  104. package/dist/GraphTitle.d.ts +13 -0
  105. package/dist/GraphTitle.js +2 -0
  106. package/dist/GraphTitle.js.map +1 -0
  107. package/dist/GriddedGraphs.d.ts +540 -0
  108. package/dist/GriddedGraphs.js +2 -0
  109. package/dist/GriddedGraphs.js.map +1 -0
  110. package/dist/GriddedGraphsFromConfig.d.ts +543 -0
  111. package/dist/GriddedGraphsFromConfig.js +2 -0
  112. package/dist/GriddedGraphsFromConfig.js.map +1 -0
  113. package/dist/HeatMap.d.ts +166 -0
  114. package/dist/HeatMap.js +2 -0
  115. package/dist/HeatMap.js.map +1 -0
  116. package/dist/Histogram.d.ts +165 -0
  117. package/dist/Histogram.js +2 -0
  118. package/dist/Histogram.js.map +1 -0
  119. package/dist/ImageDownloadButton.d.ts +15 -0
  120. package/dist/ImageDownloadButton.js +2 -0
  121. package/dist/ImageDownloadButton.js.map +1 -0
  122. package/dist/LineChartWithConfidenceInterval.d.ts +250 -0
  123. package/dist/LineChartWithConfidenceInterval.js +2 -0
  124. package/dist/LineChartWithConfidenceInterval.js.map +1 -0
  125. package/dist/LinearColorLegend.d.ts +13 -0
  126. package/dist/LinearColorLegend.js +2 -0
  127. package/dist/LinearColorLegend.js.map +1 -0
  128. package/dist/Modal-C9txyGOk.js +723 -0
  129. package/dist/Modal-C9txyGOk.js.map +1 -0
  130. package/dist/Modal-cQF2UQIa.cjs +46 -0
  131. package/dist/Modal-cQF2UQIa.cjs.map +1 -0
  132. package/dist/MultiGraphDashboard.d.ts +558 -0
  133. package/dist/MultiGraphDashboard.js +2 -0
  134. package/dist/MultiGraphDashboard.js.map +1 -0
  135. package/dist/MultiGraphDashboardFromConfig.d.ts +562 -0
  136. package/dist/MultiGraphDashboardFromConfig.js +2 -0
  137. package/dist/MultiGraphDashboardFromConfig.js.map +1 -0
  138. package/dist/MultiGraphDashboardWideToLongFormat.d.ts +128 -0
  139. package/dist/MultiGraphDashboardWideToLongFormat.js +2 -0
  140. package/dist/MultiGraphDashboardWideToLongFormat.js.map +1 -0
  141. package/dist/MultiGraphDashboardWideToLongFormatFromConfig.d.ts +133 -0
  142. package/dist/MultiGraphDashboardWideToLongFormatFromConfig.js +2 -0
  143. package/dist/MultiGraphDashboardWideToLongFormatFromConfig.js.map +1 -0
  144. package/dist/MultiLineAltChart.d.ts +244 -0
  145. package/dist/MultiLineAltChart.js +2 -0
  146. package/dist/MultiLineAltChart.js.map +1 -0
  147. package/dist/MultiLineChart.d.ts +246 -0
  148. package/dist/MultiLineChart.js +2 -0
  149. package/dist/MultiLineChart.js.map +1 -0
  150. package/dist/ParetoChart.d.ts +178 -0
  151. package/dist/ParetoChart.js +2 -0
  152. package/dist/ParetoChart.js.map +1 -0
  153. package/dist/RadarChart.d.ts +176 -0
  154. package/dist/RadarChart.js +2 -0
  155. package/dist/RadarChart.js.map +1 -0
  156. package/dist/ReferenceLine-BgDdQbDI.js +129 -0
  157. package/dist/ReferenceLine-BgDdQbDI.js.map +1 -0
  158. package/dist/ReferenceLine-Bsb5jeE4.cjs +2 -0
  159. package/dist/ReferenceLine-Bsb5jeE4.cjs.map +1 -0
  160. package/dist/RegressionLine-BfpCuD7B.cjs +2 -0
  161. package/dist/RegressionLine-BfpCuD7B.cjs.map +1 -0
  162. package/dist/RegressionLine-cSljpHaE.js +49 -0
  163. package/dist/RegressionLine-cSljpHaE.js.map +1 -0
  164. package/dist/SVGDownloadButton.d.ts +15 -0
  165. package/dist/SVGDownloadButton.js +2 -0
  166. package/dist/SVGDownloadButton.js.map +1 -0
  167. package/dist/SankeyChart.d.ts +178 -0
  168. package/dist/SankeyChart.js +2 -0
  169. package/dist/SankeyChart.js.map +1 -0
  170. package/dist/ScatterPlot.d.ts +266 -0
  171. package/dist/ScatterPlot.js +2 -0
  172. package/dist/ScatterPlot.js.map +1 -0
  173. package/dist/ScrollStory.d.ts +491 -0
  174. package/dist/ScrollStory.js +2 -0
  175. package/dist/ScrollStory.js.map +1 -0
  176. package/dist/SimpleLineChart.d.ts +230 -0
  177. package/dist/SimpleLineChart.js +2 -0
  178. package/dist/SimpleLineChart.js.map +1 -0
  179. package/dist/SingleGraphDashboard.d.ts +545 -0
  180. package/dist/SingleGraphDashboard.js +2 -0
  181. package/dist/SingleGraphDashboard.js.map +1 -0
  182. package/dist/SingleGraphDashboardFromConfig.d.ts +547 -0
  183. package/dist/SingleGraphDashboardFromConfig.js +2 -0
  184. package/dist/SingleGraphDashboardFromConfig.js.map +1 -0
  185. package/dist/SlopeChart.d.ts +167 -0
  186. package/dist/SlopeChart.js +2 -0
  187. package/dist/SlopeChart.js.map +1 -0
  188. package/dist/Source.d.ts +16 -0
  189. package/dist/Source.js +2 -0
  190. package/dist/Source.js.map +1 -0
  191. package/dist/SparkLine.d.ts +139 -0
  192. package/dist/SparkLine.js +2 -0
  193. package/dist/SparkLine.js.map +1 -0
  194. package/dist/Spinner-DN3s4S0H.js +17 -0
  195. package/dist/Spinner-DN3s4S0H.js.map +1 -0
  196. package/dist/Spinner-UmN-KPe9.cjs +2 -0
  197. package/dist/Spinner-UmN-KPe9.cjs.map +1 -0
  198. package/dist/StatCardFromData.d.ts +115 -0
  199. package/dist/StatCardFromData.js +2 -0
  200. package/dist/StatCardFromData.js.map +1 -0
  201. package/dist/StripChart.d.ts +178 -0
  202. package/dist/StripChart.js +2 -0
  203. package/dist/StripChart.js.map +1 -0
  204. package/dist/ThreeDGlobe.d.ts +158 -0
  205. package/dist/ThreeDGlobe.js +2 -0
  206. package/dist/ThreeDGlobe.js.map +1 -0
  207. package/dist/ThresholdColorLegendWithMouseOver.d.ts +16 -0
  208. package/dist/ThresholdColorLegendWithMouseOver.js +2 -0
  209. package/dist/ThresholdColorLegendWithMouseOver.js.map +1 -0
  210. package/dist/Tooltip-BM18N_3l.cjs +2 -0
  211. package/dist/Tooltip-BM18N_3l.cjs.map +1 -0
  212. package/dist/Tooltip-CzZ1wFyF.js +47 -0
  213. package/dist/Tooltip-CzZ1wFyF.js.map +1 -0
  214. package/dist/TreeMapGraph.d.ts +158 -0
  215. package/dist/TreeMapGraph.js +2 -0
  216. package/dist/TreeMapGraph.js.map +1 -0
  217. package/dist/Types.d.ts +883 -0
  218. package/dist/Types.js +2 -0
  219. package/dist/Types.js.map +1 -0
  220. package/dist/Typography-CDR-DAHH.cjs +2 -0
  221. package/dist/Typography-CDR-DAHH.cjs.map +1 -0
  222. package/dist/Typography-XJoSE-By.js +58 -0
  223. package/dist/Typography-XJoSE-By.js.map +1 -0
  224. package/dist/UnitChart.d.ts +132 -0
  225. package/dist/UnitChart.js +2 -0
  226. package/dist/UnitChart.js.map +1 -0
  227. package/dist/XAxesLabels-C9REbQQs.cjs +2 -0
  228. package/dist/XAxesLabels-C9REbQQs.cjs.map +1 -0
  229. package/dist/XAxesLabels-DVw7Lvuz.js +58 -0
  230. package/dist/XAxesLabels-DVw7Lvuz.js.map +1 -0
  231. package/dist/XTicksAndGridLines-CUefTINd.js +57 -0
  232. package/dist/XTicksAndGridLines-CUefTINd.js.map +1 -0
  233. package/dist/XTicksAndGridLines-DuK35ROS.cjs +2 -0
  234. package/dist/XTicksAndGridLines-DuK35ROS.cjs.map +1 -0
  235. package/dist/YAxesLabels-CYVY053X.js +53 -0
  236. package/dist/YAxesLabels-CYVY053X.js.map +1 -0
  237. package/dist/YAxesLabels-DhBdLk3Z.cjs +2 -0
  238. package/dist/YAxesLabels-DhBdLk3Z.cjs.map +1 -0
  239. package/dist/YTicksAndGridLines-BJRXuBdC.js +57 -0
  240. package/dist/YTicksAndGridLines-BJRXuBdC.js.map +1 -0
  241. package/dist/YTicksAndGridLines-CtLvzExe.cjs +2 -0
  242. package/dist/YTicksAndGridLines-CtLvzExe.cjs.map +1 -0
  243. package/dist/_commonjsHelpers-DKOUU3wS.cjs +2 -0
  244. package/dist/_commonjsHelpers-DKOUU3wS.cjs.map +1 -0
  245. package/dist/_commonjsHelpers-DaMA6jEr.js +9 -0
  246. package/dist/_commonjsHelpers-DaMA6jEr.js.map +1 -0
  247. package/dist/area-BE2wo7fv.js +53 -0
  248. package/dist/area-BE2wo7fv.js.map +1 -0
  249. package/dist/area-D3Qx7k7K.cjs +2 -0
  250. package/dist/area-D3Qx7k7K.cjs.map +1 -0
  251. package/dist/array-B7TkkRH0.js +89 -0
  252. package/dist/array-B7TkkRH0.js.map +1 -0
  253. package/dist/array-DKbXV8lR.cjs +2 -0
  254. package/dist/array-DKbXV8lR.cjs.map +1 -0
  255. package/dist/band-BEjh2CHI.js +47 -0
  256. package/dist/band-BEjh2CHI.js.map +1 -0
  257. package/dist/band-CAApY4Pd.cjs +2 -0
  258. package/dist/band-CAApY4Pd.cjs.map +1 -0
  259. package/dist/checkIfMultiple-CaefP4X2.js +2264 -0
  260. package/dist/checkIfMultiple-CaefP4X2.js.map +1 -0
  261. package/dist/checkIfMultiple-D3h8to1T.cjs +12 -0
  262. package/dist/checkIfMultiple-D3h8to1T.cjs.map +1 -0
  263. package/dist/checkIfNullOrUndefined.d.ts +15 -0
  264. package/dist/checkIfNullOrUndefined.js +2 -0
  265. package/dist/checkIfNullOrUndefined.js.map +1 -0
  266. package/dist/customArea-B47Ew5cT.cjs +2 -0
  267. package/dist/customArea-B47Ew5cT.cjs.map +1 -0
  268. package/dist/customArea-I3MsoqIl.js +176 -0
  269. package/dist/customArea-I3MsoqIl.js.map +1 -0
  270. package/dist/defaultLocale-BEa-49Qz.js +172 -0
  271. package/dist/defaultLocale-BEa-49Qz.js.map +1 -0
  272. package/dist/defaultLocale-DIVzfLaQ.cjs +2 -0
  273. package/dist/defaultLocale-DIVzfLaQ.cjs.map +1 -0
  274. package/dist/delaunay-C1uAf38t.js +684 -0
  275. package/dist/delaunay-C1uAf38t.js.map +1 -0
  276. package/dist/delaunay-rcy0HhZi.cjs +2 -0
  277. package/dist/delaunay-rcy0HhZi.cjs.map +1 -0
  278. package/dist/ensureCompleteData-BBDZbDCE.js +102 -0
  279. package/dist/ensureCompleteData-BBDZbDCE.js.map +1 -0
  280. package/dist/ensureCompleteData-DqWQ2Zbi.cjs +2 -0
  281. package/dist/ensureCompleteData-DqWQ2Zbi.cjs.map +1 -0
  282. package/dist/excelDownload.d.ts +31 -0
  283. package/dist/excelDownload.js +2 -0
  284. package/dist/excelDownload.js.map +1 -0
  285. package/dist/fetchAndParseData.d.ts +84 -0
  286. package/dist/fetchAndParseData.js +16 -0
  287. package/dist/fetchAndParseData.js.map +1 -0
  288. package/dist/filterData-B8ocT57s.js +14 -0
  289. package/dist/filterData-B8ocT57s.js.map +1 -0
  290. package/dist/filterData-DN6py7y_.cjs +2 -0
  291. package/dist/filterData-DN6py7y_.cjs.map +1 -0
  292. package/dist/generateCodes.d.ts +25 -0
  293. package/dist/generateCodes.js +2 -0
  294. package/dist/generateCodes.js.map +1 -0
  295. package/dist/generateRandomString-B5zBiJzS.cjs +2 -0
  296. package/dist/generateRandomString-B5zBiJzS.cjs.map +1 -0
  297. package/dist/generateRandomString-za3IQGfQ.js +11 -0
  298. package/dist/generateRandomString-za3IQGfQ.js.map +1 -0
  299. package/dist/getJenks.d.ts +17 -0
  300. package/dist/getJenks.js +2 -0
  301. package/dist/getJenks.js.map +1 -0
  302. package/dist/getPercentileValue.d.ts +13 -0
  303. package/dist/getPercentileValue.js +2 -0
  304. package/dist/getPercentileValue.js.map +1 -0
  305. package/dist/getQueryParamsFromLink.d.ts +18 -0
  306. package/dist/getQueryParamsFromLink.js +2 -0
  307. package/dist/getQueryParamsFromLink.js.map +1 -0
  308. package/dist/getSchema.d.ts +3256 -0
  309. package/dist/getSchema.js +2 -0
  310. package/dist/getSchema.js.map +1 -0
  311. package/dist/getSliderMarks-CWajGCGq.js +719 -0
  312. package/dist/getSliderMarks-CWajGCGq.js.map +1 -0
  313. package/dist/getSliderMarks-DDJ1CdhL.cjs +6 -0
  314. package/dist/getSliderMarks-DDJ1CdhL.cjs.map +1 -0
  315. package/dist/getTextColorBasedOnBgColor.d.ts +13 -0
  316. package/dist/getTextColorBasedOnBgColor.js +2 -0
  317. package/dist/getTextColorBasedOnBgColor.js.map +1 -0
  318. package/dist/getUniqValue.d.ts +18 -0
  319. package/dist/getUniqValue.js +2 -0
  320. package/dist/getUniqValue.js.map +1 -0
  321. package/dist/graphList.d.ts +9 -0
  322. package/dist/graphList.js +2 -0
  323. package/dist/graphList.js.map +1 -0
  324. package/dist/imageDownload.d.ts +16 -0
  325. package/dist/imageDownload.js +3 -0
  326. package/dist/imageDownload.js.map +1 -0
  327. package/dist/index-01r5X3Gr-9jE0ObrK.cjs +2 -0
  328. package/dist/index-01r5X3Gr-9jE0ObrK.cjs.map +1 -0
  329. package/dist/index-01r5X3Gr-kH7FxQ7P.js +451 -0
  330. package/dist/index-01r5X3Gr-kH7FxQ7P.js.map +1 -0
  331. package/dist/index-27yTRcko.js +35 -0
  332. package/dist/index-27yTRcko.js.map +1 -0
  333. package/dist/index-B0rbzOoC.cjs +2 -0
  334. package/dist/index-B0rbzOoC.cjs.map +1 -0
  335. package/dist/index-BGMGC-HN.cjs +22 -0
  336. package/dist/index-BGMGC-HN.cjs.map +1 -0
  337. package/dist/index-BHm2KTjD-2e-Fu8L-.js +702 -0
  338. package/dist/index-BHm2KTjD-2e-Fu8L-.js.map +1 -0
  339. package/dist/index-BHm2KTjD-D8FylaKc.cjs +44 -0
  340. package/dist/index-BHm2KTjD-D8FylaKc.cjs.map +1 -0
  341. package/dist/index-BIPNFFja.js +506 -0
  342. package/dist/index-BIPNFFja.js.map +1 -0
  343. package/dist/index-BLizQDlg.js +658 -0
  344. package/dist/index-BLizQDlg.js.map +1 -0
  345. package/dist/index-BXns0-ng.cjs +2 -0
  346. package/dist/index-BXns0-ng.cjs.map +1 -0
  347. package/dist/index-BYroABPm.cjs +2 -0
  348. package/dist/index-BYroABPm.cjs.map +1 -0
  349. package/dist/index-BczVvEBZ.cjs +2 -0
  350. package/dist/index-BczVvEBZ.cjs.map +1 -0
  351. package/dist/index-BzeLQvXk.cjs +2 -0
  352. package/dist/index-BzeLQvXk.cjs.map +1 -0
  353. package/dist/index-C1rRk_50.js +273 -0
  354. package/dist/index-C1rRk_50.js.map +1 -0
  355. package/dist/index-C21TvELx.cjs +2 -0
  356. package/dist/index-C21TvELx.cjs.map +1 -0
  357. package/dist/index-CEc_9zWy.cjs +2 -0
  358. package/dist/index-CEc_9zWy.cjs.map +1 -0
  359. package/dist/index-CZbIGs8q.cjs +2 -0
  360. package/dist/index-CZbIGs8q.cjs.map +1 -0
  361. package/dist/index-CaAIPGZo.js +631 -0
  362. package/dist/index-CaAIPGZo.js.map +1 -0
  363. package/dist/index-CbVeVrla.cjs +2 -0
  364. package/dist/index-CbVeVrla.cjs.map +1 -0
  365. package/dist/index-CqzhBPuO-CfQywbdq.js +41 -0
  366. package/dist/index-CqzhBPuO-CfQywbdq.js.map +1 -0
  367. package/dist/index-CqzhBPuO-raKZqS7l.cjs +2 -0
  368. package/dist/index-CqzhBPuO-raKZqS7l.cjs.map +1 -0
  369. package/dist/index-D7ltPi18.js +26 -0
  370. package/dist/index-D7ltPi18.js.map +1 -0
  371. package/dist/index-DSnvdkHZ.js +495 -0
  372. package/dist/index-DSnvdkHZ.js.map +1 -0
  373. package/dist/index-DXmF_0ez.js +308 -0
  374. package/dist/index-DXmF_0ez.js.map +1 -0
  375. package/dist/index-Db-Yg_Ud.js +120 -0
  376. package/dist/index-Db-Yg_Ud.js.map +1 -0
  377. package/dist/index-Ds0uHjK9.cjs +2 -0
  378. package/dist/index-Ds0uHjK9.cjs.map +1 -0
  379. package/dist/index-DxagiOHo.js +707 -0
  380. package/dist/index-DxagiOHo.js.map +1 -0
  381. package/dist/index-DzdwZ2OA.js +77 -0
  382. package/dist/index-DzdwZ2OA.js.map +1 -0
  383. package/dist/index-UV9hjG_S.js +53 -0
  384. package/dist/index-UV9hjG_S.js.map +1 -0
  385. package/dist/index-a2C2Bqn2.cjs +10 -0
  386. package/dist/index-a2C2Bqn2.cjs.map +1 -0
  387. package/dist/index.d.ts +5 -2
  388. package/dist/index.js +1 -52484
  389. package/dist/index.js.map +1 -1
  390. package/dist/init-BhZylTFx.js +63 -0
  391. package/dist/init-BhZylTFx.js.map +1 -0
  392. package/dist/init-DU0ybBc_.cjs +2 -0
  393. package/dist/init-DU0ybBc_.cjs.map +1 -0
  394. package/dist/line-CPfhohvF.js +68 -0
  395. package/dist/line-CPfhohvF.js.map +1 -0
  396. package/dist/line-DHV4JwCR.cjs +2 -0
  397. package/dist/line-DHV4JwCR.cjs.map +1 -0
  398. package/dist/linear-BVckp9RD.cjs +2 -0
  399. package/dist/linear-BVckp9RD.cjs.map +1 -0
  400. package/dist/linear-DUdu7l2G.js +221 -0
  401. package/dist/linear-DUdu7l2G.js.map +1 -0
  402. package/dist/numberFormattingFunction.d.ts +22 -0
  403. package/dist/numberFormattingFunction.js +2 -0
  404. package/dist/numberFormattingFunction.js.map +1 -0
  405. package/dist/ordinal-BOeNbyae.cjs +2 -0
  406. package/dist/ordinal-BOeNbyae.cjs.map +1 -0
  407. package/dist/ordinal-w9Lu4Stb.js +62 -0
  408. package/dist/ordinal-w9Lu4Stb.js.map +1 -0
  409. package/dist/parse-DlCRUFh_.js +2768 -0
  410. package/dist/parse-DlCRUFh_.js.map +1 -0
  411. package/dist/parse-hMnG_lRV.cjs +2 -0
  412. package/dist/parse-hMnG_lRV.cjs.map +1 -0
  413. package/dist/pointer-CWRWOsrb.js +23 -0
  414. package/dist/pointer-CWRWOsrb.js.map +1 -0
  415. package/dist/pointer-Dkq5NV1q.cjs +2 -0
  416. package/dist/pointer-Dkq5NV1q.cjs.map +1 -0
  417. package/dist/pow-B5-jkdHU.cjs +2 -0
  418. package/dist/pow-B5-jkdHU.cjs.map +1 -0
  419. package/dist/pow-e8zx3AQJ.js +35 -0
  420. package/dist/pow-e8zx3AQJ.js.map +1 -0
  421. package/dist/removeOutliers.d.ts +16 -0
  422. package/dist/removeOutliers.js +2 -0
  423. package/dist/removeOutliers.js.map +1 -0
  424. package/dist/select-Bnfk0lJx.cjs +2 -0
  425. package/dist/select-Bnfk0lJx.cjs.map +1 -0
  426. package/dist/select-DKy99ogv.js +584 -0
  427. package/dist/select-DKy99ogv.js.map +1 -0
  428. package/dist/simple-statistics-flVzqVtt.js +65 -0
  429. package/dist/simple-statistics-flVzqVtt.js.map +1 -0
  430. package/dist/simple-statistics-xm8c0LQQ.cjs +2 -0
  431. package/dist/simple-statistics-xm8c0LQQ.cjs.map +1 -0
  432. package/dist/step-BZ3C8QFW.cjs +2 -0
  433. package/dist/step-BZ3C8QFW.cjs.map +1 -0
  434. package/dist/step-BrDul-H4.js +119 -0
  435. package/dist/step-BrDul-H4.js.map +1 -0
  436. package/dist/string-B8KlVSPX.js +364 -0
  437. package/dist/string-B8KlVSPX.js.map +1 -0
  438. package/dist/string-CRoCZCYa.cjs +2 -0
  439. package/dist/string-CRoCZCYa.cjs.map +1 -0
  440. package/dist/string2HTML-BX0oNw83.js +758 -0
  441. package/dist/string2HTML-BX0oNw83.js.map +1 -0
  442. package/dist/string2HTML-X4ZYX5jI.cjs +3 -0
  443. package/dist/string2HTML-X4ZYX5jI.cjs.map +1 -0
  444. package/dist/style.css +1 -1
  445. package/dist/svgDownload.d.ts +16 -0
  446. package/dist/svgDownload.js +2 -0
  447. package/dist/svgDownload.js.map +1 -0
  448. package/dist/threshold-DFfqcDMa.js +23 -0
  449. package/dist/threshold-DFfqcDMa.js.map +1 -0
  450. package/dist/threshold-DNsSUf8Q.cjs +2 -0
  451. package/dist/threshold-DNsSUf8Q.cjs.map +1 -0
  452. package/dist/time-Byw_jYQ7.cjs +2 -0
  453. package/dist/time-Byw_jYQ7.cjs.map +1 -0
  454. package/dist/time-BzJP5SPC.js +715 -0
  455. package/dist/time-BzJP5SPC.js.map +1 -0
  456. package/dist/timer-B39XOBYL.js +124 -0
  457. package/dist/timer-B39XOBYL.js.map +1 -0
  458. package/dist/timer-CKyBCVzT.cjs +2 -0
  459. package/dist/timer-CKyBCVzT.cjs.map +1 -0
  460. package/dist/toConsumableArray-BSMMWi3w-Cu4vcE-m.js +139 -0
  461. package/dist/toConsumableArray-BSMMWi3w-Cu4vcE-m.js.map +1 -0
  462. package/dist/toConsumableArray-BSMMWi3w-DJL7-zAp.cjs +4 -0
  463. package/dist/toConsumableArray-BSMMWi3w-DJL7-zAp.cjs.map +1 -0
  464. package/dist/transformColumnsToArray.d.ts +38 -0
  465. package/dist/transformColumnsToArray.js +2 -0
  466. package/dist/transformColumnsToArray.js.map +1 -0
  467. package/dist/transformDataForAggregation.d.ts +38 -0
  468. package/dist/transformDataForAggregation.js +2 -0
  469. package/dist/transformDataForAggregation.js.map +1 -0
  470. package/dist/transformDataForGraph.d.ts +47 -0
  471. package/dist/transformDataForGraph.js +2 -0
  472. package/dist/transformDataForGraph.js.map +1 -0
  473. package/dist/transformDataForGraphFromFile.d.ts +66 -0
  474. package/dist/transformDataForGraphFromFile.js +2 -0
  475. package/dist/transformDataForGraphFromFile.js.map +1 -0
  476. package/dist/use-in-view-CZPXmTZM.js +4645 -0
  477. package/dist/use-in-view-CZPXmTZM.js.map +1 -0
  478. package/dist/use-in-view-Dl1CsAIo.cjs +2 -0
  479. package/dist/use-in-view-Dl1CsAIo.cjs.map +1 -0
  480. package/dist/validateSchema.d.ts +68 -0
  481. package/dist/validateSchema.js +2 -0
  482. package/dist/validateSchema.js.map +1 -0
  483. package/dist/x-Dft9NVe_-DcB7wtv5.js +61 -0
  484. package/dist/x-Dft9NVe_-DcB7wtv5.js.map +1 -0
  485. package/dist/x-Dft9NVe_-LeyJu02C.cjs +27 -0
  486. package/dist/x-Dft9NVe_-LeyJu02C.cjs.map +1 -0
  487. package/dist/y-D0sAaVii.js +421 -0
  488. package/dist/y-D0sAaVii.js.map +1 -0
  489. package/dist/y-QcCbqrzx.cjs +2 -0
  490. package/dist/y-QcCbqrzx.cjs.map +1 -0
  491. package/dist/zoom-Lo7IAUfC.cjs +2 -0
  492. package/dist/zoom-Lo7IAUfC.cjs.map +1 -0
  493. package/dist/zoom-_lqdiGoI.js +1983 -0
  494. package/dist/zoom-_lqdiGoI.js.map +1 -0
  495. package/package.json +415 -4
  496. package/dist/index.cjs +0 -68
  497. package/dist/index.cjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"y-D0sAaVii.js","sources":["../node_modules/d3-quadtree/src/add.js","../node_modules/d3-quadtree/src/cover.js","../node_modules/d3-quadtree/src/data.js","../node_modules/d3-quadtree/src/extent.js","../node_modules/d3-quadtree/src/quad.js","../node_modules/d3-quadtree/src/find.js","../node_modules/d3-quadtree/src/remove.js","../node_modules/d3-quadtree/src/root.js","../node_modules/d3-quadtree/src/size.js","../node_modules/d3-quadtree/src/visit.js","../node_modules/d3-quadtree/src/visitAfter.js","../node_modules/d3-quadtree/src/x.js","../node_modules/d3-quadtree/src/y.js","../node_modules/d3-quadtree/src/quadtree.js","../node_modules/d3-force/src/constant.js","../node_modules/d3-force/src/jiggle.js","../node_modules/d3-force/src/collide.js","../node_modules/d3-force/src/lcg.js","../node_modules/d3-force/src/simulation.js","../node_modules/d3-force/src/manyBody.js","../node_modules/d3-force/src/x.js","../node_modules/d3-force/src/y.js"],"sourcesContent":["export default function(d) {\n const x = +this._x.call(null, d),\n y = +this._y.call(null, d);\n return add(this.cover(x, y), x, y, d);\n}\n\nfunction add(tree, x, y, d) {\n if (isNaN(x) || isNaN(y)) return tree; // ignore invalid points\n\n var parent,\n node = tree._root,\n leaf = {data: d},\n x0 = tree._x0,\n y0 = tree._y0,\n x1 = tree._x1,\n y1 = tree._y1,\n xm,\n ym,\n xp,\n yp,\n right,\n bottom,\n i,\n j;\n\n // If the tree is empty, initialize the root as a leaf.\n if (!node) return tree._root = leaf, tree;\n\n // Find the existing leaf for the new point, or add it.\n while (node.length) {\n if (right = x >= (xm = (x0 + x1) / 2)) x0 = xm; else x1 = xm;\n if (bottom = y >= (ym = (y0 + y1) / 2)) y0 = ym; else y1 = ym;\n if (parent = node, !(node = node[i = bottom << 1 | right])) return parent[i] = leaf, tree;\n }\n\n // Is the new point is exactly coincident with the existing point?\n xp = +tree._x.call(null, node.data);\n yp = +tree._y.call(null, node.data);\n if (x === xp && y === yp) return leaf.next = node, parent ? parent[i] = leaf : tree._root = leaf, tree;\n\n // Otherwise, split the leaf node until the old and new point are separated.\n do {\n parent = parent ? parent[i] = new Array(4) : tree._root = new Array(4);\n if (right = x >= (xm = (x0 + x1) / 2)) x0 = xm; else x1 = xm;\n if (bottom = y >= (ym = (y0 + y1) / 2)) y0 = ym; else y1 = ym;\n } while ((i = bottom << 1 | right) === (j = (yp >= ym) << 1 | (xp >= xm)));\n return parent[j] = node, parent[i] = leaf, tree;\n}\n\nexport function addAll(data) {\n var d, i, n = data.length,\n x,\n y,\n xz = new Array(n),\n yz = new Array(n),\n x0 = Infinity,\n y0 = Infinity,\n x1 = -Infinity,\n y1 = -Infinity;\n\n // Compute the points and their extent.\n for (i = 0; i < n; ++i) {\n if (isNaN(x = +this._x.call(null, d = data[i])) || isNaN(y = +this._y.call(null, d))) continue;\n xz[i] = x;\n yz[i] = y;\n if (x < x0) x0 = x;\n if (x > x1) x1 = x;\n if (y < y0) y0 = y;\n if (y > y1) y1 = y;\n }\n\n // If there were no (valid) points, abort.\n if (x0 > x1 || y0 > y1) return this;\n\n // Expand the tree to cover the new points.\n this.cover(x0, y0).cover(x1, y1);\n\n // Add the new points.\n for (i = 0; i < n; ++i) {\n add(this, xz[i], yz[i], data[i]);\n }\n\n return this;\n}\n","export default function(x, y) {\n if (isNaN(x = +x) || isNaN(y = +y)) return this; // ignore invalid points\n\n var x0 = this._x0,\n y0 = this._y0,\n x1 = this._x1,\n y1 = this._y1;\n\n // If the quadtree has no extent, initialize them.\n // Integer extent are necessary so that if we later double the extent,\n // the existing quadrant boundaries don’t change due to floating point error!\n if (isNaN(x0)) {\n x1 = (x0 = Math.floor(x)) + 1;\n y1 = (y0 = Math.floor(y)) + 1;\n }\n\n // Otherwise, double repeatedly to cover.\n else {\n var z = x1 - x0 || 1,\n node = this._root,\n parent,\n i;\n\n while (x0 > x || x >= x1 || y0 > y || y >= y1) {\n i = (y < y0) << 1 | (x < x0);\n parent = new Array(4), parent[i] = node, node = parent, z *= 2;\n switch (i) {\n case 0: x1 = x0 + z, y1 = y0 + z; break;\n case 1: x0 = x1 - z, y1 = y0 + z; break;\n case 2: x1 = x0 + z, y0 = y1 - z; break;\n case 3: x0 = x1 - z, y0 = y1 - z; break;\n }\n }\n\n if (this._root && this._root.length) this._root = node;\n }\n\n this._x0 = x0;\n this._y0 = y0;\n this._x1 = x1;\n this._y1 = y1;\n return this;\n}\n","export default function() {\n var data = [];\n this.visit(function(node) {\n if (!node.length) do data.push(node.data); while (node = node.next)\n });\n return data;\n}\n","export default function(_) {\n return arguments.length\n ? this.cover(+_[0][0], +_[0][1]).cover(+_[1][0], +_[1][1])\n : isNaN(this._x0) ? undefined : [[this._x0, this._y0], [this._x1, this._y1]];\n}\n","export default function(node, x0, y0, x1, y1) {\n this.node = node;\n this.x0 = x0;\n this.y0 = y0;\n this.x1 = x1;\n this.y1 = y1;\n}\n","import Quad from \"./quad.js\";\n\nexport default function(x, y, radius) {\n var data,\n x0 = this._x0,\n y0 = this._y0,\n x1,\n y1,\n x2,\n y2,\n x3 = this._x1,\n y3 = this._y1,\n quads = [],\n node = this._root,\n q,\n i;\n\n if (node) quads.push(new Quad(node, x0, y0, x3, y3));\n if (radius == null) radius = Infinity;\n else {\n x0 = x - radius, y0 = y - radius;\n x3 = x + radius, y3 = y + radius;\n radius *= radius;\n }\n\n while (q = quads.pop()) {\n\n // Stop searching if this quadrant can’t contain a closer node.\n if (!(node = q.node)\n || (x1 = q.x0) > x3\n || (y1 = q.y0) > y3\n || (x2 = q.x1) < x0\n || (y2 = q.y1) < y0) continue;\n\n // Bisect the current quadrant.\n if (node.length) {\n var xm = (x1 + x2) / 2,\n ym = (y1 + y2) / 2;\n\n quads.push(\n new Quad(node[3], xm, ym, x2, y2),\n new Quad(node[2], x1, ym, xm, y2),\n new Quad(node[1], xm, y1, x2, ym),\n new Quad(node[0], x1, y1, xm, ym)\n );\n\n // Visit the closest quadrant first.\n if (i = (y >= ym) << 1 | (x >= xm)) {\n q = quads[quads.length - 1];\n quads[quads.length - 1] = quads[quads.length - 1 - i];\n quads[quads.length - 1 - i] = q;\n }\n }\n\n // Visit this point. (Visiting coincident points isn’t necessary!)\n else {\n var dx = x - +this._x.call(null, node.data),\n dy = y - +this._y.call(null, node.data),\n d2 = dx * dx + dy * dy;\n if (d2 < radius) {\n var d = Math.sqrt(radius = d2);\n x0 = x - d, y0 = y - d;\n x3 = x + d, y3 = y + d;\n data = node.data;\n }\n }\n }\n\n return data;\n}\n","export default function(d) {\n if (isNaN(x = +this._x.call(null, d)) || isNaN(y = +this._y.call(null, d))) return this; // ignore invalid points\n\n var parent,\n node = this._root,\n retainer,\n previous,\n next,\n x0 = this._x0,\n y0 = this._y0,\n x1 = this._x1,\n y1 = this._y1,\n x,\n y,\n xm,\n ym,\n right,\n bottom,\n i,\n j;\n\n // If the tree is empty, initialize the root as a leaf.\n if (!node) return this;\n\n // Find the leaf node for the point.\n // While descending, also retain the deepest parent with a non-removed sibling.\n if (node.length) while (true) {\n if (right = x >= (xm = (x0 + x1) / 2)) x0 = xm; else x1 = xm;\n if (bottom = y >= (ym = (y0 + y1) / 2)) y0 = ym; else y1 = ym;\n if (!(parent = node, node = node[i = bottom << 1 | right])) return this;\n if (!node.length) break;\n if (parent[(i + 1) & 3] || parent[(i + 2) & 3] || parent[(i + 3) & 3]) retainer = parent, j = i;\n }\n\n // Find the point to remove.\n while (node.data !== d) if (!(previous = node, node = node.next)) return this;\n if (next = node.next) delete node.next;\n\n // If there are multiple coincident points, remove just the point.\n if (previous) return (next ? previous.next = next : delete previous.next), this;\n\n // If this is the root point, remove it.\n if (!parent) return this._root = next, this;\n\n // Remove this leaf.\n next ? parent[i] = next : delete parent[i];\n\n // If the parent now contains exactly one leaf, collapse superfluous parents.\n if ((node = parent[0] || parent[1] || parent[2] || parent[3])\n && node === (parent[3] || parent[2] || parent[1] || parent[0])\n && !node.length) {\n if (retainer) retainer[j] = node;\n else this._root = node;\n }\n\n return this;\n}\n\nexport function removeAll(data) {\n for (var i = 0, n = data.length; i < n; ++i) this.remove(data[i]);\n return this;\n}\n","export default function() {\n return this._root;\n}\n","export default function() {\n var size = 0;\n this.visit(function(node) {\n if (!node.length) do ++size; while (node = node.next)\n });\n return size;\n}\n","import Quad from \"./quad.js\";\n\nexport default function(callback) {\n var quads = [], q, node = this._root, child, x0, y0, x1, y1;\n if (node) quads.push(new Quad(node, this._x0, this._y0, this._x1, this._y1));\n while (q = quads.pop()) {\n if (!callback(node = q.node, x0 = q.x0, y0 = q.y0, x1 = q.x1, y1 = q.y1) && node.length) {\n var xm = (x0 + x1) / 2, ym = (y0 + y1) / 2;\n if (child = node[3]) quads.push(new Quad(child, xm, ym, x1, y1));\n if (child = node[2]) quads.push(new Quad(child, x0, ym, xm, y1));\n if (child = node[1]) quads.push(new Quad(child, xm, y0, x1, ym));\n if (child = node[0]) quads.push(new Quad(child, x0, y0, xm, ym));\n }\n }\n return this;\n}\n","import Quad from \"./quad.js\";\n\nexport default function(callback) {\n var quads = [], next = [], q;\n if (this._root) quads.push(new Quad(this._root, this._x0, this._y0, this._x1, this._y1));\n while (q = quads.pop()) {\n var node = q.node;\n if (node.length) {\n var child, x0 = q.x0, y0 = q.y0, x1 = q.x1, y1 = q.y1, xm = (x0 + x1) / 2, ym = (y0 + y1) / 2;\n if (child = node[0]) quads.push(new Quad(child, x0, y0, xm, ym));\n if (child = node[1]) quads.push(new Quad(child, xm, y0, x1, ym));\n if (child = node[2]) quads.push(new Quad(child, x0, ym, xm, y1));\n if (child = node[3]) quads.push(new Quad(child, xm, ym, x1, y1));\n }\n next.push(q);\n }\n while (q = next.pop()) {\n callback(q.node, q.x0, q.y0, q.x1, q.y1);\n }\n return this;\n}\n","export function defaultX(d) {\n return d[0];\n}\n\nexport default function(_) {\n return arguments.length ? (this._x = _, this) : this._x;\n}\n","export function defaultY(d) {\n return d[1];\n}\n\nexport default function(_) {\n return arguments.length ? (this._y = _, this) : this._y;\n}\n","import tree_add, {addAll as tree_addAll} from \"./add.js\";\nimport tree_cover from \"./cover.js\";\nimport tree_data from \"./data.js\";\nimport tree_extent from \"./extent.js\";\nimport tree_find from \"./find.js\";\nimport tree_remove, {removeAll as tree_removeAll} from \"./remove.js\";\nimport tree_root from \"./root.js\";\nimport tree_size from \"./size.js\";\nimport tree_visit from \"./visit.js\";\nimport tree_visitAfter from \"./visitAfter.js\";\nimport tree_x, {defaultX} from \"./x.js\";\nimport tree_y, {defaultY} from \"./y.js\";\n\nexport default function quadtree(nodes, x, y) {\n var tree = new Quadtree(x == null ? defaultX : x, y == null ? defaultY : y, NaN, NaN, NaN, NaN);\n return nodes == null ? tree : tree.addAll(nodes);\n}\n\nfunction Quadtree(x, y, x0, y0, x1, y1) {\n this._x = x;\n this._y = y;\n this._x0 = x0;\n this._y0 = y0;\n this._x1 = x1;\n this._y1 = y1;\n this._root = undefined;\n}\n\nfunction leaf_copy(leaf) {\n var copy = {data: leaf.data}, next = copy;\n while (leaf = leaf.next) next = next.next = {data: leaf.data};\n return copy;\n}\n\nvar treeProto = quadtree.prototype = Quadtree.prototype;\n\ntreeProto.copy = function() {\n var copy = new Quadtree(this._x, this._y, this._x0, this._y0, this._x1, this._y1),\n node = this._root,\n nodes,\n child;\n\n if (!node) return copy;\n\n if (!node.length) return copy._root = leaf_copy(node), copy;\n\n nodes = [{source: node, target: copy._root = new Array(4)}];\n while (node = nodes.pop()) {\n for (var i = 0; i < 4; ++i) {\n if (child = node.source[i]) {\n if (child.length) nodes.push({source: child, target: node.target[i] = new Array(4)});\n else node.target[i] = leaf_copy(child);\n }\n }\n }\n\n return copy;\n};\n\ntreeProto.add = tree_add;\ntreeProto.addAll = tree_addAll;\ntreeProto.cover = tree_cover;\ntreeProto.data = tree_data;\ntreeProto.extent = tree_extent;\ntreeProto.find = tree_find;\ntreeProto.remove = tree_remove;\ntreeProto.removeAll = tree_removeAll;\ntreeProto.root = tree_root;\ntreeProto.size = tree_size;\ntreeProto.visit = tree_visit;\ntreeProto.visitAfter = tree_visitAfter;\ntreeProto.x = tree_x;\ntreeProto.y = tree_y;\n","export default function(x) {\n return function() {\n return x;\n };\n}\n","export default function(random) {\n return (random() - 0.5) * 1e-6;\n}\n","import {quadtree} from \"d3-quadtree\";\nimport constant from \"./constant.js\";\nimport jiggle from \"./jiggle.js\";\n\nfunction x(d) {\n return d.x + d.vx;\n}\n\nfunction y(d) {\n return d.y + d.vy;\n}\n\nexport default function(radius) {\n var nodes,\n radii,\n random,\n strength = 1,\n iterations = 1;\n\n if (typeof radius !== \"function\") radius = constant(radius == null ? 1 : +radius);\n\n function force() {\n var i, n = nodes.length,\n tree,\n node,\n xi,\n yi,\n ri,\n ri2;\n\n for (var k = 0; k < iterations; ++k) {\n tree = quadtree(nodes, x, y).visitAfter(prepare);\n for (i = 0; i < n; ++i) {\n node = nodes[i];\n ri = radii[node.index], ri2 = ri * ri;\n xi = node.x + node.vx;\n yi = node.y + node.vy;\n tree.visit(apply);\n }\n }\n\n function apply(quad, x0, y0, x1, y1) {\n var data = quad.data, rj = quad.r, r = ri + rj;\n if (data) {\n if (data.index > node.index) {\n var x = xi - data.x - data.vx,\n y = yi - data.y - data.vy,\n l = x * x + y * y;\n if (l < r * r) {\n if (x === 0) x = jiggle(random), l += x * x;\n if (y === 0) y = jiggle(random), l += y * y;\n l = (r - (l = Math.sqrt(l))) / l * strength;\n node.vx += (x *= l) * (r = (rj *= rj) / (ri2 + rj));\n node.vy += (y *= l) * r;\n data.vx -= x * (r = 1 - r);\n data.vy -= y * r;\n }\n }\n return;\n }\n return x0 > xi + r || x1 < xi - r || y0 > yi + r || y1 < yi - r;\n }\n }\n\n function prepare(quad) {\n if (quad.data) return quad.r = radii[quad.data.index];\n for (var i = quad.r = 0; i < 4; ++i) {\n if (quad[i] && quad[i].r > quad.r) {\n quad.r = quad[i].r;\n }\n }\n }\n\n function initialize() {\n if (!nodes) return;\n var i, n = nodes.length, node;\n radii = new Array(n);\n for (i = 0; i < n; ++i) node = nodes[i], radii[node.index] = +radius(node, i, nodes);\n }\n\n force.initialize = function(_nodes, _random) {\n nodes = _nodes;\n random = _random;\n initialize();\n };\n\n force.iterations = function(_) {\n return arguments.length ? (iterations = +_, force) : iterations;\n };\n\n force.strength = function(_) {\n return arguments.length ? (strength = +_, force) : strength;\n };\n\n force.radius = function(_) {\n return arguments.length ? (radius = typeof _ === \"function\" ? _ : constant(+_), initialize(), force) : radius;\n };\n\n return force;\n}\n","// https://en.wikipedia.org/wiki/Linear_congruential_generator#Parameters_in_common_use\nconst a = 1664525;\nconst c = 1013904223;\nconst m = 4294967296; // 2^32\n\nexport default function() {\n let s = 1;\n return () => (s = (a * s + c) % m) / m;\n}\n","import {dispatch} from \"d3-dispatch\";\nimport {timer} from \"d3-timer\";\nimport lcg from \"./lcg.js\";\n\nexport function x(d) {\n return d.x;\n}\n\nexport function y(d) {\n return d.y;\n}\n\nvar initialRadius = 10,\n initialAngle = Math.PI * (3 - Math.sqrt(5));\n\nexport default function(nodes) {\n var simulation,\n alpha = 1,\n alphaMin = 0.001,\n alphaDecay = 1 - Math.pow(alphaMin, 1 / 300),\n alphaTarget = 0,\n velocityDecay = 0.6,\n forces = new Map(),\n stepper = timer(step),\n event = dispatch(\"tick\", \"end\"),\n random = lcg();\n\n if (nodes == null) nodes = [];\n\n function step() {\n tick();\n event.call(\"tick\", simulation);\n if (alpha < alphaMin) {\n stepper.stop();\n event.call(\"end\", simulation);\n }\n }\n\n function tick(iterations) {\n var i, n = nodes.length, node;\n\n if (iterations === undefined) iterations = 1;\n\n for (var k = 0; k < iterations; ++k) {\n alpha += (alphaTarget - alpha) * alphaDecay;\n\n forces.forEach(function(force) {\n force(alpha);\n });\n\n for (i = 0; i < n; ++i) {\n node = nodes[i];\n if (node.fx == null) node.x += node.vx *= velocityDecay;\n else node.x = node.fx, node.vx = 0;\n if (node.fy == null) node.y += node.vy *= velocityDecay;\n else node.y = node.fy, node.vy = 0;\n }\n }\n\n return simulation;\n }\n\n function initializeNodes() {\n for (var i = 0, n = nodes.length, node; i < n; ++i) {\n node = nodes[i], node.index = i;\n if (node.fx != null) node.x = node.fx;\n if (node.fy != null) node.y = node.fy;\n if (isNaN(node.x) || isNaN(node.y)) {\n var radius = initialRadius * Math.sqrt(0.5 + i), angle = i * initialAngle;\n node.x = radius * Math.cos(angle);\n node.y = radius * Math.sin(angle);\n }\n if (isNaN(node.vx) || isNaN(node.vy)) {\n node.vx = node.vy = 0;\n }\n }\n }\n\n function initializeForce(force) {\n if (force.initialize) force.initialize(nodes, random);\n return force;\n }\n\n initializeNodes();\n\n return simulation = {\n tick: tick,\n\n restart: function() {\n return stepper.restart(step), simulation;\n },\n\n stop: function() {\n return stepper.stop(), simulation;\n },\n\n nodes: function(_) {\n return arguments.length ? (nodes = _, initializeNodes(), forces.forEach(initializeForce), simulation) : nodes;\n },\n\n alpha: function(_) {\n return arguments.length ? (alpha = +_, simulation) : alpha;\n },\n\n alphaMin: function(_) {\n return arguments.length ? (alphaMin = +_, simulation) : alphaMin;\n },\n\n alphaDecay: function(_) {\n return arguments.length ? (alphaDecay = +_, simulation) : +alphaDecay;\n },\n\n alphaTarget: function(_) {\n return arguments.length ? (alphaTarget = +_, simulation) : alphaTarget;\n },\n\n velocityDecay: function(_) {\n return arguments.length ? (velocityDecay = 1 - _, simulation) : 1 - velocityDecay;\n },\n\n randomSource: function(_) {\n return arguments.length ? (random = _, forces.forEach(initializeForce), simulation) : random;\n },\n\n force: function(name, _) {\n return arguments.length > 1 ? ((_ == null ? forces.delete(name) : forces.set(name, initializeForce(_))), simulation) : forces.get(name);\n },\n\n find: function(x, y, radius) {\n var i = 0,\n n = nodes.length,\n dx,\n dy,\n d2,\n node,\n closest;\n\n if (radius == null) radius = Infinity;\n else radius *= radius;\n\n for (i = 0; i < n; ++i) {\n node = nodes[i];\n dx = x - node.x;\n dy = y - node.y;\n d2 = dx * dx + dy * dy;\n if (d2 < radius) closest = node, radius = d2;\n }\n\n return closest;\n },\n\n on: function(name, _) {\n return arguments.length > 1 ? (event.on(name, _), simulation) : event.on(name);\n }\n };\n}\n","import {quadtree} from \"d3-quadtree\";\nimport constant from \"./constant.js\";\nimport jiggle from \"./jiggle.js\";\nimport {x, y} from \"./simulation.js\";\n\nexport default function() {\n var nodes,\n node,\n random,\n alpha,\n strength = constant(-30),\n strengths,\n distanceMin2 = 1,\n distanceMax2 = Infinity,\n theta2 = 0.81;\n\n function force(_) {\n var i, n = nodes.length, tree = quadtree(nodes, x, y).visitAfter(accumulate);\n for (alpha = _, i = 0; i < n; ++i) node = nodes[i], tree.visit(apply);\n }\n\n function initialize() {\n if (!nodes) return;\n var i, n = nodes.length, node;\n strengths = new Array(n);\n for (i = 0; i < n; ++i) node = nodes[i], strengths[node.index] = +strength(node, i, nodes);\n }\n\n function accumulate(quad) {\n var strength = 0, q, c, weight = 0, x, y, i;\n\n // For internal nodes, accumulate forces from child quadrants.\n if (quad.length) {\n for (x = y = i = 0; i < 4; ++i) {\n if ((q = quad[i]) && (c = Math.abs(q.value))) {\n strength += q.value, weight += c, x += c * q.x, y += c * q.y;\n }\n }\n quad.x = x / weight;\n quad.y = y / weight;\n }\n\n // For leaf nodes, accumulate forces from coincident quadrants.\n else {\n q = quad;\n q.x = q.data.x;\n q.y = q.data.y;\n do strength += strengths[q.data.index];\n while (q = q.next);\n }\n\n quad.value = strength;\n }\n\n function apply(quad, x1, _, x2) {\n if (!quad.value) return true;\n\n var x = quad.x - node.x,\n y = quad.y - node.y,\n w = x2 - x1,\n l = x * x + y * y;\n\n // Apply the Barnes-Hut approximation if possible.\n // Limit forces for very close nodes; randomize direction if coincident.\n if (w * w / theta2 < l) {\n if (l < distanceMax2) {\n if (x === 0) x = jiggle(random), l += x * x;\n if (y === 0) y = jiggle(random), l += y * y;\n if (l < distanceMin2) l = Math.sqrt(distanceMin2 * l);\n node.vx += x * quad.value * alpha / l;\n node.vy += y * quad.value * alpha / l;\n }\n return true;\n }\n\n // Otherwise, process points directly.\n else if (quad.length || l >= distanceMax2) return;\n\n // Limit forces for very close nodes; randomize direction if coincident.\n if (quad.data !== node || quad.next) {\n if (x === 0) x = jiggle(random), l += x * x;\n if (y === 0) y = jiggle(random), l += y * y;\n if (l < distanceMin2) l = Math.sqrt(distanceMin2 * l);\n }\n\n do if (quad.data !== node) {\n w = strengths[quad.data.index] * alpha / l;\n node.vx += x * w;\n node.vy += y * w;\n } while (quad = quad.next);\n }\n\n force.initialize = function(_nodes, _random) {\n nodes = _nodes;\n random = _random;\n initialize();\n };\n\n force.strength = function(_) {\n return arguments.length ? (strength = typeof _ === \"function\" ? _ : constant(+_), initialize(), force) : strength;\n };\n\n force.distanceMin = function(_) {\n return arguments.length ? (distanceMin2 = _ * _, force) : Math.sqrt(distanceMin2);\n };\n\n force.distanceMax = function(_) {\n return arguments.length ? (distanceMax2 = _ * _, force) : Math.sqrt(distanceMax2);\n };\n\n force.theta = function(_) {\n return arguments.length ? (theta2 = _ * _, force) : Math.sqrt(theta2);\n };\n\n return force;\n}\n","import constant from \"./constant.js\";\n\nexport default function(x) {\n var strength = constant(0.1),\n nodes,\n strengths,\n xz;\n\n if (typeof x !== \"function\") x = constant(x == null ? 0 : +x);\n\n function force(alpha) {\n for (var i = 0, n = nodes.length, node; i < n; ++i) {\n node = nodes[i], node.vx += (xz[i] - node.x) * strengths[i] * alpha;\n }\n }\n\n function initialize() {\n if (!nodes) return;\n var i, n = nodes.length;\n strengths = new Array(n);\n xz = new Array(n);\n for (i = 0; i < n; ++i) {\n strengths[i] = isNaN(xz[i] = +x(nodes[i], i, nodes)) ? 0 : +strength(nodes[i], i, nodes);\n }\n }\n\n force.initialize = function(_) {\n nodes = _;\n initialize();\n };\n\n force.strength = function(_) {\n return arguments.length ? (strength = typeof _ === \"function\" ? _ : constant(+_), initialize(), force) : strength;\n };\n\n force.x = function(_) {\n return arguments.length ? (x = typeof _ === \"function\" ? _ : constant(+_), initialize(), force) : x;\n };\n\n return force;\n}\n","import constant from \"./constant.js\";\n\nexport default function(y) {\n var strength = constant(0.1),\n nodes,\n strengths,\n yz;\n\n if (typeof y !== \"function\") y = constant(y == null ? 0 : +y);\n\n function force(alpha) {\n for (var i = 0, n = nodes.length, node; i < n; ++i) {\n node = nodes[i], node.vy += (yz[i] - node.y) * strengths[i] * alpha;\n }\n }\n\n function initialize() {\n if (!nodes) return;\n var i, n = nodes.length;\n strengths = new Array(n);\n yz = new Array(n);\n for (i = 0; i < n; ++i) {\n strengths[i] = isNaN(yz[i] = +y(nodes[i], i, nodes)) ? 0 : +strength(nodes[i], i, nodes);\n }\n }\n\n force.initialize = function(_) {\n nodes = _;\n initialize();\n };\n\n force.strength = function(_) {\n return arguments.length ? (strength = typeof _ === \"function\" ? _ : constant(+_), initialize(), force) : strength;\n };\n\n force.y = function(_) {\n return arguments.length ? (y = typeof _ === \"function\" ? _ : constant(+_), initialize(), force) : y;\n };\n\n return force;\n}\n"],"names":["tree_add","d","x","y","add","tree","parent","node","leaf","x0","y0","x1","y1","xm","ym","xp","yp","right","bottom","i","j","addAll","data","n","xz","yz","tree_cover","z","tree_data","tree_extent","_","Quad","tree_find","radius","x2","y2","x3","y3","quads","q","dx","dy","d2","tree_remove","retainer","previous","next","removeAll","tree_root","tree_size","size","tree_visit","callback","child","tree_visitAfter","defaultX","tree_x","defaultY","tree_y","quadtree","nodes","Quadtree","leaf_copy","copy","treeProto","tree_addAll","tree_removeAll","constant","jiggle","random","forceCollide","radii","strength","iterations","force","xi","yi","ri","ri2","k","prepare","apply","quad","rj","r","l","initialize","_nodes","_random","a","c","m","lcg","s","initialRadius","initialAngle","forceSimulation","simulation","alpha","alphaMin","alphaDecay","alphaTarget","velocityDecay","forces","stepper","timer","step","event","dispatch","tick","initializeNodes","angle","initializeForce","name","closest","forceManyBody","strengths","distanceMin2","distanceMax2","theta2","accumulate","weight","w","forceX","forceY"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21]}
@@ -0,0 +1,2 @@
1
+ "use strict";const C=require("./timer-CKyBCVzT.cjs");function $(t){const n=+this._x.call(null,t),i=+this._y.call(null,t);return T(this.cover(n,i),n,i,t)}function T(t,n,i,o){if(isNaN(n)||isNaN(i))return t;var f,a=t._root,s={data:o},e=t._x0,l=t._y0,r=t._x1,y=t._y1,p,_,h,x,u,g,c,v;if(!a)return t._root=s,t;for(;a.length;)if((u=n>=(p=(e+r)/2))?e=p:r=p,(g=i>=(_=(l+y)/2))?l=_:y=_,f=a,!(a=a[c=g<<1|u]))return f[c]=s,t;if(h=+t._x.call(null,a.data),x=+t._y.call(null,a.data),n===h&&i===x)return s.next=a,f?f[c]=s:t._root=s,t;do f=f?f[c]=new Array(4):t._root=new Array(4),(u=n>=(p=(e+r)/2))?e=p:r=p,(g=i>=(_=(l+y)/2))?l=_:y=_;while((c=g<<1|u)===(v=(x>=_)<<1|h>=p));return f[v]=a,f[c]=s,t}function F(t){var n,i,o=t.length,f,a,s=new Array(o),e=new Array(o),l=1/0,r=1/0,y=-1/0,p=-1/0;for(i=0;i<o;++i)isNaN(f=+this._x.call(null,n=t[i]))||isNaN(a=+this._y.call(null,n))||(s[i]=f,e[i]=a,f<l&&(l=f),f>y&&(y=f),a<r&&(r=a),a>p&&(p=a));if(l>y||r>p)return this;for(this.cover(l,r).cover(y,p),i=0;i<o;++i)T(this,s[i],e[i],t[i]);return this}function R(t,n){if(isNaN(t=+t)||isNaN(n=+n))return this;var i=this._x0,o=this._y0,f=this._x1,a=this._y1;if(isNaN(i))f=(i=Math.floor(t))+1,a=(o=Math.floor(n))+1;else{for(var s=f-i||1,e=this._root,l,r;i>t||t>=f||o>n||n>=a;)switch(r=(n<o)<<1|t<i,l=new Array(4),l[r]=e,e=l,s*=2,r){case 0:f=i+s,a=o+s;break;case 1:i=f-s,a=o+s;break;case 2:f=i+s,o=a-s;break;case 3:i=f-s,o=a-s;break}this._root&&this._root.length&&(this._root=e)}return this._x0=i,this._y0=o,this._x1=f,this._y1=a,this}function G(){var t=[];return this.visit(function(n){if(!n.length)do t.push(n.data);while(n=n.next)}),t}function H(t){return arguments.length?this.cover(+t[0][0],+t[0][1]).cover(+t[1][0],+t[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}function M(t,n,i,o,f){this.node=t,this.x0=n,this.y0=i,this.x1=o,this.y1=f}function J(t,n,i){var o,f=this._x0,a=this._y0,s,e,l,r,y=this._x1,p=this._y1,_=[],h=this._root,x,u;for(h&&_.push(new M(h,f,a,y,p)),i==null?i=1/0:(f=t-i,a=n-i,y=t+i,p=n+i,i*=i);x=_.pop();)if(!(!(h=x.node)||(s=x.x0)>y||(e=x.y0)>p||(l=x.x1)<f||(r=x.y1)<a))if(h.length){var g=(s+l)/2,c=(e+r)/2;_.push(new M(h[3],g,c,l,r),new M(h[2],s,c,g,r),new M(h[1],g,e,l,c),new M(h[0],s,e,g,c)),(u=(n>=c)<<1|t>=g)&&(x=_[_.length-1],_[_.length-1]=_[_.length-1-u],_[_.length-1-u]=x)}else{var v=t-+this._x.call(null,h.data),N=n-+this._y.call(null,h.data),w=v*v+N*N;if(w<i){var b=Math.sqrt(i=w);f=t-b,a=n-b,y=t+b,p=n+b,o=h.data}}return o}function K(t){if(isNaN(y=+this._x.call(null,t))||isNaN(p=+this._y.call(null,t)))return this;var n,i=this._root,o,f,a,s=this._x0,e=this._y0,l=this._x1,r=this._y1,y,p,_,h,x,u,g,c;if(!i)return this;if(i.length)for(;;){if((x=y>=(_=(s+l)/2))?s=_:l=_,(u=p>=(h=(e+r)/2))?e=h:r=h,n=i,!(i=i[g=u<<1|x]))return this;if(!i.length)break;(n[g+1&3]||n[g+2&3]||n[g+3&3])&&(o=n,c=g)}for(;i.data!==t;)if(f=i,!(i=i.next))return this;return(a=i.next)&&delete i.next,f?(a?f.next=a:delete f.next,this):n?(a?n[g]=a:delete n[g],(i=n[0]||n[1]||n[2]||n[3])&&i===(n[3]||n[2]||n[1]||n[0])&&!i.length&&(o?o[c]=i:this._root=i),this):(this._root=a,this)}function L(t){for(var n=0,i=t.length;n<i;++n)this.remove(t[n]);return this}function O(){return this._root}function U(){var t=0;return this.visit(function(n){if(!n.length)do++t;while(n=n.next)}),t}function V(t){var n=[],i,o=this._root,f,a,s,e,l;for(o&&n.push(new M(o,this._x0,this._y0,this._x1,this._y1));i=n.pop();)if(!t(o=i.node,a=i.x0,s=i.y0,e=i.x1,l=i.y1)&&o.length){var r=(a+e)/2,y=(s+l)/2;(f=o[3])&&n.push(new M(f,r,y,e,l)),(f=o[2])&&n.push(new M(f,a,y,r,l)),(f=o[1])&&n.push(new M(f,r,s,e,y)),(f=o[0])&&n.push(new M(f,a,s,r,y))}return this}function W(t){var n=[],i=[],o;for(this._root&&n.push(new M(this._root,this._x0,this._y0,this._x1,this._y1));o=n.pop();){var f=o.node;if(f.length){var a,s=o.x0,e=o.y0,l=o.x1,r=o.y1,y=(s+l)/2,p=(e+r)/2;(a=f[0])&&n.push(new M(a,s,e,y,p)),(a=f[1])&&n.push(new M(a,y,e,l,p)),(a=f[2])&&n.push(new M(a,s,p,y,r)),(a=f[3])&&n.push(new M(a,y,p,l,r))}i.push(o)}for(;o=i.pop();)t(o.node,o.x0,o.y0,o.x1,o.y1);return this}function Z(t){return t[0]}function q(t){return arguments.length?(this._x=t,this):this._x}function tt(t){return t[1]}function nt(t){return arguments.length?(this._y=t,this):this._y}function Y(t,n,i){var o=new B(n??Z,i??tt,NaN,NaN,NaN,NaN);return t==null?o:o.addAll(t)}function B(t,n,i,o,f,a){this._x=t,this._y=n,this._x0=i,this._y0=o,this._x1=f,this._y1=a,this._root=void 0}function P(t){for(var n={data:t.data},i=n;t=t.next;)i=i.next={data:t.data};return n}var A=Y.prototype=B.prototype;A.copy=function(){var t=new B(this._x,this._y,this._x0,this._y0,this._x1,this._y1),n=this._root,i,o;if(!n)return t;if(!n.length)return t._root=P(n),t;for(i=[{source:n,target:t._root=new Array(4)}];n=i.pop();)for(var f=0;f<4;++f)(o=n.source[f])&&(o.length?i.push({source:o,target:n.target[f]=new Array(4)}):n.target[f]=P(o));return t};A.add=$;A.addAll=F;A.cover=R;A.data=G;A.extent=H;A.find=J;A.remove=K;A.removeAll=L;A.root=O;A.size=U;A.visit=V;A.visitAfter=W;A.x=q;A.y=nt;function d(t){return function(){return t}}function E(t){return(t()-.5)*1e-6}function it(t){return t.x+t.vx}function et(t){return t.y+t.vy}function rt(t){var n,i,o,f=1,a=1;typeof t!="function"&&(t=d(t==null?1:+t));function s(){for(var r,y=n.length,p,_,h,x,u,g,c=0;c<a;++c)for(p=Y(n,it,et).visitAfter(e),r=0;r<y;++r)_=n[r],u=i[_.index],g=u*u,h=_.x+_.vx,x=_.y+_.vy,p.visit(v);function v(N,w,b,S,D){var z=N.data,X=N.r,m=u+X;if(z){if(z.index>_.index){var k=h-z.x-z.vx,j=x-z.y-z.vy,I=k*k+j*j;I<m*m&&(k===0&&(k=E(o),I+=k*k),j===0&&(j=E(o),I+=j*j),I=(m-(I=Math.sqrt(I)))/I*f,_.vx+=(k*=I)*(m=(X*=X)/(g+X)),_.vy+=(j*=I)*m,z.vx-=k*(m=1-m),z.vy-=j*m)}return}return w>h+m||S<h-m||b>x+m||D<x-m}}function e(r){if(r.data)return r.r=i[r.data.index];for(var y=r.r=0;y<4;++y)r[y]&&r[y].r>r.r&&(r.r=r[y].r)}function l(){if(n){var r,y=n.length,p;for(i=new Array(y),r=0;r<y;++r)p=n[r],i[p.index]=+t(p,r,n)}}return s.initialize=function(r,y){n=r,o=y,l()},s.iterations=function(r){return arguments.length?(a=+r,s):a},s.strength=function(r){return arguments.length?(f=+r,s):f},s.radius=function(r){return arguments.length?(t=typeof r=="function"?r:d(+r),l(),s):t},s}const ft=1664525,ot=1013904223,Q=4294967296;function at(){let t=1;return()=>(t=(ft*t+ot)%Q)/Q}function ut(t){return t.x}function ht(t){return t.y}var st=10,lt=Math.PI*(3-Math.sqrt(5));function ct(t){var n,i=1,o=.001,f=1-Math.pow(o,1/300),a=0,s=.6,e=new Map,l=C.timer(p),r=C.dispatch("tick","end"),y=at();t==null&&(t=[]);function p(){_(),r.call("tick",n),i<o&&(l.stop(),r.call("end",n))}function _(u){var g,c=t.length,v;u===void 0&&(u=1);for(var N=0;N<u;++N)for(i+=(a-i)*f,e.forEach(function(w){w(i)}),g=0;g<c;++g)v=t[g],v.fx==null?v.x+=v.vx*=s:(v.x=v.fx,v.vx=0),v.fy==null?v.y+=v.vy*=s:(v.y=v.fy,v.vy=0);return n}function h(){for(var u=0,g=t.length,c;u<g;++u){if(c=t[u],c.index=u,c.fx!=null&&(c.x=c.fx),c.fy!=null&&(c.y=c.fy),isNaN(c.x)||isNaN(c.y)){var v=st*Math.sqrt(.5+u),N=u*lt;c.x=v*Math.cos(N),c.y=v*Math.sin(N)}(isNaN(c.vx)||isNaN(c.vy))&&(c.vx=c.vy=0)}}function x(u){return u.initialize&&u.initialize(t,y),u}return h(),n={tick:_,restart:function(){return l.restart(p),n},stop:function(){return l.stop(),n},nodes:function(u){return arguments.length?(t=u,h(),e.forEach(x),n):t},alpha:function(u){return arguments.length?(i=+u,n):i},alphaMin:function(u){return arguments.length?(o=+u,n):o},alphaDecay:function(u){return arguments.length?(f=+u,n):+f},alphaTarget:function(u){return arguments.length?(a=+u,n):a},velocityDecay:function(u){return arguments.length?(s=1-u,n):1-s},randomSource:function(u){return arguments.length?(y=u,e.forEach(x),n):y},force:function(u,g){return arguments.length>1?(g==null?e.delete(u):e.set(u,x(g)),n):e.get(u)},find:function(u,g,c){var v=0,N=t.length,w,b,S,D,z;for(c==null?c=1/0:c*=c,v=0;v<N;++v)D=t[v],w=u-D.x,b=g-D.y,S=w*w+b*b,S<c&&(z=D,c=S);return z},on:function(u,g){return arguments.length>1?(r.on(u,g),n):r.on(u)}}}function yt(){var t,n,i,o,f=d(-30),a,s=1,e=1/0,l=.81;function r(h){var x,u=t.length,g=Y(t,ut,ht).visitAfter(p);for(o=h,x=0;x<u;++x)n=t[x],g.visit(_)}function y(){if(t){var h,x=t.length,u;for(a=new Array(x),h=0;h<x;++h)u=t[h],a[u.index]=+f(u,h,t)}}function p(h){var x=0,u,g,c=0,v,N,w;if(h.length){for(v=N=w=0;w<4;++w)(u=h[w])&&(g=Math.abs(u.value))&&(x+=u.value,c+=g,v+=g*u.x,N+=g*u.y);h.x=v/c,h.y=N/c}else{u=h,u.x=u.data.x,u.y=u.data.y;do x+=a[u.data.index];while(u=u.next)}h.value=x}function _(h,x,u,g){if(!h.value)return!0;var c=h.x-n.x,v=h.y-n.y,N=g-x,w=c*c+v*v;if(N*N/l<w)return w<e&&(c===0&&(c=E(i),w+=c*c),v===0&&(v=E(i),w+=v*v),w<s&&(w=Math.sqrt(s*w)),n.vx+=c*h.value*o/w,n.vy+=v*h.value*o/w),!0;if(h.length||w>=e)return;(h.data!==n||h.next)&&(c===0&&(c=E(i),w+=c*c),v===0&&(v=E(i),w+=v*v),w<s&&(w=Math.sqrt(s*w)));do h.data!==n&&(N=a[h.data.index]*o/w,n.vx+=c*N,n.vy+=v*N);while(h=h.next)}return r.initialize=function(h,x){t=h,i=x,y()},r.strength=function(h){return arguments.length?(f=typeof h=="function"?h:d(+h),y(),r):f},r.distanceMin=function(h){return arguments.length?(s=h*h,r):Math.sqrt(s)},r.distanceMax=function(h){return arguments.length?(e=h*h,r):Math.sqrt(e)},r.theta=function(h){return arguments.length?(l=h*h,r):Math.sqrt(l)},r}function vt(t){var n=d(.1),i,o,f;typeof t!="function"&&(t=d(t==null?0:+t));function a(e){for(var l=0,r=i.length,y;l<r;++l)y=i[l],y.vx+=(f[l]-y.x)*o[l]*e}function s(){if(i){var e,l=i.length;for(o=new Array(l),f=new Array(l),e=0;e<l;++e)o[e]=isNaN(f[e]=+t(i[e],e,i))?0:+n(i[e],e,i)}}return a.initialize=function(e){i=e,s()},a.strength=function(e){return arguments.length?(n=typeof e=="function"?e:d(+e),s(),a):n},a.x=function(e){return arguments.length?(t=typeof e=="function"?e:d(+e),s(),a):t},a}function gt(t){var n=d(.1),i,o,f;typeof t!="function"&&(t=d(t==null?0:+t));function a(e){for(var l=0,r=i.length,y;l<r;++l)y=i[l],y.vy+=(f[l]-y.y)*o[l]*e}function s(){if(i){var e,l=i.length;for(o=new Array(l),f=new Array(l),e=0;e<l;++e)o[e]=isNaN(f[e]=+t(i[e],e,i))?0:+n(i[e],e,i)}}return a.initialize=function(e){i=e,s()},a.strength=function(e){return arguments.length?(n=typeof e=="function"?e:d(+e),s(),a):n},a.y=function(e){return arguments.length?(t=typeof e=="function"?e:d(+e),s(),a):t},a}exports.forceCollide=rt;exports.forceManyBody=yt;exports.forceSimulation=ct;exports.forceX=vt;exports.forceY=gt;
2
+ //# sourceMappingURL=y-QcCbqrzx.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"y-QcCbqrzx.cjs","sources":["../node_modules/d3-quadtree/src/add.js","../node_modules/d3-quadtree/src/cover.js","../node_modules/d3-quadtree/src/data.js","../node_modules/d3-quadtree/src/extent.js","../node_modules/d3-quadtree/src/quad.js","../node_modules/d3-quadtree/src/find.js","../node_modules/d3-quadtree/src/remove.js","../node_modules/d3-quadtree/src/root.js","../node_modules/d3-quadtree/src/size.js","../node_modules/d3-quadtree/src/visit.js","../node_modules/d3-quadtree/src/visitAfter.js","../node_modules/d3-quadtree/src/x.js","../node_modules/d3-quadtree/src/y.js","../node_modules/d3-quadtree/src/quadtree.js","../node_modules/d3-force/src/constant.js","../node_modules/d3-force/src/jiggle.js","../node_modules/d3-force/src/collide.js","../node_modules/d3-force/src/lcg.js","../node_modules/d3-force/src/simulation.js","../node_modules/d3-force/src/manyBody.js","../node_modules/d3-force/src/x.js","../node_modules/d3-force/src/y.js"],"sourcesContent":["export default function(d) {\n const x = +this._x.call(null, d),\n y = +this._y.call(null, d);\n return add(this.cover(x, y), x, y, d);\n}\n\nfunction add(tree, x, y, d) {\n if (isNaN(x) || isNaN(y)) return tree; // ignore invalid points\n\n var parent,\n node = tree._root,\n leaf = {data: d},\n x0 = tree._x0,\n y0 = tree._y0,\n x1 = tree._x1,\n y1 = tree._y1,\n xm,\n ym,\n xp,\n yp,\n right,\n bottom,\n i,\n j;\n\n // If the tree is empty, initialize the root as a leaf.\n if (!node) return tree._root = leaf, tree;\n\n // Find the existing leaf for the new point, or add it.\n while (node.length) {\n if (right = x >= (xm = (x0 + x1) / 2)) x0 = xm; else x1 = xm;\n if (bottom = y >= (ym = (y0 + y1) / 2)) y0 = ym; else y1 = ym;\n if (parent = node, !(node = node[i = bottom << 1 | right])) return parent[i] = leaf, tree;\n }\n\n // Is the new point is exactly coincident with the existing point?\n xp = +tree._x.call(null, node.data);\n yp = +tree._y.call(null, node.data);\n if (x === xp && y === yp) return leaf.next = node, parent ? parent[i] = leaf : tree._root = leaf, tree;\n\n // Otherwise, split the leaf node until the old and new point are separated.\n do {\n parent = parent ? parent[i] = new Array(4) : tree._root = new Array(4);\n if (right = x >= (xm = (x0 + x1) / 2)) x0 = xm; else x1 = xm;\n if (bottom = y >= (ym = (y0 + y1) / 2)) y0 = ym; else y1 = ym;\n } while ((i = bottom << 1 | right) === (j = (yp >= ym) << 1 | (xp >= xm)));\n return parent[j] = node, parent[i] = leaf, tree;\n}\n\nexport function addAll(data) {\n var d, i, n = data.length,\n x,\n y,\n xz = new Array(n),\n yz = new Array(n),\n x0 = Infinity,\n y0 = Infinity,\n x1 = -Infinity,\n y1 = -Infinity;\n\n // Compute the points and their extent.\n for (i = 0; i < n; ++i) {\n if (isNaN(x = +this._x.call(null, d = data[i])) || isNaN(y = +this._y.call(null, d))) continue;\n xz[i] = x;\n yz[i] = y;\n if (x < x0) x0 = x;\n if (x > x1) x1 = x;\n if (y < y0) y0 = y;\n if (y > y1) y1 = y;\n }\n\n // If there were no (valid) points, abort.\n if (x0 > x1 || y0 > y1) return this;\n\n // Expand the tree to cover the new points.\n this.cover(x0, y0).cover(x1, y1);\n\n // Add the new points.\n for (i = 0; i < n; ++i) {\n add(this, xz[i], yz[i], data[i]);\n }\n\n return this;\n}\n","export default function(x, y) {\n if (isNaN(x = +x) || isNaN(y = +y)) return this; // ignore invalid points\n\n var x0 = this._x0,\n y0 = this._y0,\n x1 = this._x1,\n y1 = this._y1;\n\n // If the quadtree has no extent, initialize them.\n // Integer extent are necessary so that if we later double the extent,\n // the existing quadrant boundaries don’t change due to floating point error!\n if (isNaN(x0)) {\n x1 = (x0 = Math.floor(x)) + 1;\n y1 = (y0 = Math.floor(y)) + 1;\n }\n\n // Otherwise, double repeatedly to cover.\n else {\n var z = x1 - x0 || 1,\n node = this._root,\n parent,\n i;\n\n while (x0 > x || x >= x1 || y0 > y || y >= y1) {\n i = (y < y0) << 1 | (x < x0);\n parent = new Array(4), parent[i] = node, node = parent, z *= 2;\n switch (i) {\n case 0: x1 = x0 + z, y1 = y0 + z; break;\n case 1: x0 = x1 - z, y1 = y0 + z; break;\n case 2: x1 = x0 + z, y0 = y1 - z; break;\n case 3: x0 = x1 - z, y0 = y1 - z; break;\n }\n }\n\n if (this._root && this._root.length) this._root = node;\n }\n\n this._x0 = x0;\n this._y0 = y0;\n this._x1 = x1;\n this._y1 = y1;\n return this;\n}\n","export default function() {\n var data = [];\n this.visit(function(node) {\n if (!node.length) do data.push(node.data); while (node = node.next)\n });\n return data;\n}\n","export default function(_) {\n return arguments.length\n ? this.cover(+_[0][0], +_[0][1]).cover(+_[1][0], +_[1][1])\n : isNaN(this._x0) ? undefined : [[this._x0, this._y0], [this._x1, this._y1]];\n}\n","export default function(node, x0, y0, x1, y1) {\n this.node = node;\n this.x0 = x0;\n this.y0 = y0;\n this.x1 = x1;\n this.y1 = y1;\n}\n","import Quad from \"./quad.js\";\n\nexport default function(x, y, radius) {\n var data,\n x0 = this._x0,\n y0 = this._y0,\n x1,\n y1,\n x2,\n y2,\n x3 = this._x1,\n y3 = this._y1,\n quads = [],\n node = this._root,\n q,\n i;\n\n if (node) quads.push(new Quad(node, x0, y0, x3, y3));\n if (radius == null) radius = Infinity;\n else {\n x0 = x - radius, y0 = y - radius;\n x3 = x + radius, y3 = y + radius;\n radius *= radius;\n }\n\n while (q = quads.pop()) {\n\n // Stop searching if this quadrant can’t contain a closer node.\n if (!(node = q.node)\n || (x1 = q.x0) > x3\n || (y1 = q.y0) > y3\n || (x2 = q.x1) < x0\n || (y2 = q.y1) < y0) continue;\n\n // Bisect the current quadrant.\n if (node.length) {\n var xm = (x1 + x2) / 2,\n ym = (y1 + y2) / 2;\n\n quads.push(\n new Quad(node[3], xm, ym, x2, y2),\n new Quad(node[2], x1, ym, xm, y2),\n new Quad(node[1], xm, y1, x2, ym),\n new Quad(node[0], x1, y1, xm, ym)\n );\n\n // Visit the closest quadrant first.\n if (i = (y >= ym) << 1 | (x >= xm)) {\n q = quads[quads.length - 1];\n quads[quads.length - 1] = quads[quads.length - 1 - i];\n quads[quads.length - 1 - i] = q;\n }\n }\n\n // Visit this point. (Visiting coincident points isn’t necessary!)\n else {\n var dx = x - +this._x.call(null, node.data),\n dy = y - +this._y.call(null, node.data),\n d2 = dx * dx + dy * dy;\n if (d2 < radius) {\n var d = Math.sqrt(radius = d2);\n x0 = x - d, y0 = y - d;\n x3 = x + d, y3 = y + d;\n data = node.data;\n }\n }\n }\n\n return data;\n}\n","export default function(d) {\n if (isNaN(x = +this._x.call(null, d)) || isNaN(y = +this._y.call(null, d))) return this; // ignore invalid points\n\n var parent,\n node = this._root,\n retainer,\n previous,\n next,\n x0 = this._x0,\n y0 = this._y0,\n x1 = this._x1,\n y1 = this._y1,\n x,\n y,\n xm,\n ym,\n right,\n bottom,\n i,\n j;\n\n // If the tree is empty, initialize the root as a leaf.\n if (!node) return this;\n\n // Find the leaf node for the point.\n // While descending, also retain the deepest parent with a non-removed sibling.\n if (node.length) while (true) {\n if (right = x >= (xm = (x0 + x1) / 2)) x0 = xm; else x1 = xm;\n if (bottom = y >= (ym = (y0 + y1) / 2)) y0 = ym; else y1 = ym;\n if (!(parent = node, node = node[i = bottom << 1 | right])) return this;\n if (!node.length) break;\n if (parent[(i + 1) & 3] || parent[(i + 2) & 3] || parent[(i + 3) & 3]) retainer = parent, j = i;\n }\n\n // Find the point to remove.\n while (node.data !== d) if (!(previous = node, node = node.next)) return this;\n if (next = node.next) delete node.next;\n\n // If there are multiple coincident points, remove just the point.\n if (previous) return (next ? previous.next = next : delete previous.next), this;\n\n // If this is the root point, remove it.\n if (!parent) return this._root = next, this;\n\n // Remove this leaf.\n next ? parent[i] = next : delete parent[i];\n\n // If the parent now contains exactly one leaf, collapse superfluous parents.\n if ((node = parent[0] || parent[1] || parent[2] || parent[3])\n && node === (parent[3] || parent[2] || parent[1] || parent[0])\n && !node.length) {\n if (retainer) retainer[j] = node;\n else this._root = node;\n }\n\n return this;\n}\n\nexport function removeAll(data) {\n for (var i = 0, n = data.length; i < n; ++i) this.remove(data[i]);\n return this;\n}\n","export default function() {\n return this._root;\n}\n","export default function() {\n var size = 0;\n this.visit(function(node) {\n if (!node.length) do ++size; while (node = node.next)\n });\n return size;\n}\n","import Quad from \"./quad.js\";\n\nexport default function(callback) {\n var quads = [], q, node = this._root, child, x0, y0, x1, y1;\n if (node) quads.push(new Quad(node, this._x0, this._y0, this._x1, this._y1));\n while (q = quads.pop()) {\n if (!callback(node = q.node, x0 = q.x0, y0 = q.y0, x1 = q.x1, y1 = q.y1) && node.length) {\n var xm = (x0 + x1) / 2, ym = (y0 + y1) / 2;\n if (child = node[3]) quads.push(new Quad(child, xm, ym, x1, y1));\n if (child = node[2]) quads.push(new Quad(child, x0, ym, xm, y1));\n if (child = node[1]) quads.push(new Quad(child, xm, y0, x1, ym));\n if (child = node[0]) quads.push(new Quad(child, x0, y0, xm, ym));\n }\n }\n return this;\n}\n","import Quad from \"./quad.js\";\n\nexport default function(callback) {\n var quads = [], next = [], q;\n if (this._root) quads.push(new Quad(this._root, this._x0, this._y0, this._x1, this._y1));\n while (q = quads.pop()) {\n var node = q.node;\n if (node.length) {\n var child, x0 = q.x0, y0 = q.y0, x1 = q.x1, y1 = q.y1, xm = (x0 + x1) / 2, ym = (y0 + y1) / 2;\n if (child = node[0]) quads.push(new Quad(child, x0, y0, xm, ym));\n if (child = node[1]) quads.push(new Quad(child, xm, y0, x1, ym));\n if (child = node[2]) quads.push(new Quad(child, x0, ym, xm, y1));\n if (child = node[3]) quads.push(new Quad(child, xm, ym, x1, y1));\n }\n next.push(q);\n }\n while (q = next.pop()) {\n callback(q.node, q.x0, q.y0, q.x1, q.y1);\n }\n return this;\n}\n","export function defaultX(d) {\n return d[0];\n}\n\nexport default function(_) {\n return arguments.length ? (this._x = _, this) : this._x;\n}\n","export function defaultY(d) {\n return d[1];\n}\n\nexport default function(_) {\n return arguments.length ? (this._y = _, this) : this._y;\n}\n","import tree_add, {addAll as tree_addAll} from \"./add.js\";\nimport tree_cover from \"./cover.js\";\nimport tree_data from \"./data.js\";\nimport tree_extent from \"./extent.js\";\nimport tree_find from \"./find.js\";\nimport tree_remove, {removeAll as tree_removeAll} from \"./remove.js\";\nimport tree_root from \"./root.js\";\nimport tree_size from \"./size.js\";\nimport tree_visit from \"./visit.js\";\nimport tree_visitAfter from \"./visitAfter.js\";\nimport tree_x, {defaultX} from \"./x.js\";\nimport tree_y, {defaultY} from \"./y.js\";\n\nexport default function quadtree(nodes, x, y) {\n var tree = new Quadtree(x == null ? defaultX : x, y == null ? defaultY : y, NaN, NaN, NaN, NaN);\n return nodes == null ? tree : tree.addAll(nodes);\n}\n\nfunction Quadtree(x, y, x0, y0, x1, y1) {\n this._x = x;\n this._y = y;\n this._x0 = x0;\n this._y0 = y0;\n this._x1 = x1;\n this._y1 = y1;\n this._root = undefined;\n}\n\nfunction leaf_copy(leaf) {\n var copy = {data: leaf.data}, next = copy;\n while (leaf = leaf.next) next = next.next = {data: leaf.data};\n return copy;\n}\n\nvar treeProto = quadtree.prototype = Quadtree.prototype;\n\ntreeProto.copy = function() {\n var copy = new Quadtree(this._x, this._y, this._x0, this._y0, this._x1, this._y1),\n node = this._root,\n nodes,\n child;\n\n if (!node) return copy;\n\n if (!node.length) return copy._root = leaf_copy(node), copy;\n\n nodes = [{source: node, target: copy._root = new Array(4)}];\n while (node = nodes.pop()) {\n for (var i = 0; i < 4; ++i) {\n if (child = node.source[i]) {\n if (child.length) nodes.push({source: child, target: node.target[i] = new Array(4)});\n else node.target[i] = leaf_copy(child);\n }\n }\n }\n\n return copy;\n};\n\ntreeProto.add = tree_add;\ntreeProto.addAll = tree_addAll;\ntreeProto.cover = tree_cover;\ntreeProto.data = tree_data;\ntreeProto.extent = tree_extent;\ntreeProto.find = tree_find;\ntreeProto.remove = tree_remove;\ntreeProto.removeAll = tree_removeAll;\ntreeProto.root = tree_root;\ntreeProto.size = tree_size;\ntreeProto.visit = tree_visit;\ntreeProto.visitAfter = tree_visitAfter;\ntreeProto.x = tree_x;\ntreeProto.y = tree_y;\n","export default function(x) {\n return function() {\n return x;\n };\n}\n","export default function(random) {\n return (random() - 0.5) * 1e-6;\n}\n","import {quadtree} from \"d3-quadtree\";\nimport constant from \"./constant.js\";\nimport jiggle from \"./jiggle.js\";\n\nfunction x(d) {\n return d.x + d.vx;\n}\n\nfunction y(d) {\n return d.y + d.vy;\n}\n\nexport default function(radius) {\n var nodes,\n radii,\n random,\n strength = 1,\n iterations = 1;\n\n if (typeof radius !== \"function\") radius = constant(radius == null ? 1 : +radius);\n\n function force() {\n var i, n = nodes.length,\n tree,\n node,\n xi,\n yi,\n ri,\n ri2;\n\n for (var k = 0; k < iterations; ++k) {\n tree = quadtree(nodes, x, y).visitAfter(prepare);\n for (i = 0; i < n; ++i) {\n node = nodes[i];\n ri = radii[node.index], ri2 = ri * ri;\n xi = node.x + node.vx;\n yi = node.y + node.vy;\n tree.visit(apply);\n }\n }\n\n function apply(quad, x0, y0, x1, y1) {\n var data = quad.data, rj = quad.r, r = ri + rj;\n if (data) {\n if (data.index > node.index) {\n var x = xi - data.x - data.vx,\n y = yi - data.y - data.vy,\n l = x * x + y * y;\n if (l < r * r) {\n if (x === 0) x = jiggle(random), l += x * x;\n if (y === 0) y = jiggle(random), l += y * y;\n l = (r - (l = Math.sqrt(l))) / l * strength;\n node.vx += (x *= l) * (r = (rj *= rj) / (ri2 + rj));\n node.vy += (y *= l) * r;\n data.vx -= x * (r = 1 - r);\n data.vy -= y * r;\n }\n }\n return;\n }\n return x0 > xi + r || x1 < xi - r || y0 > yi + r || y1 < yi - r;\n }\n }\n\n function prepare(quad) {\n if (quad.data) return quad.r = radii[quad.data.index];\n for (var i = quad.r = 0; i < 4; ++i) {\n if (quad[i] && quad[i].r > quad.r) {\n quad.r = quad[i].r;\n }\n }\n }\n\n function initialize() {\n if (!nodes) return;\n var i, n = nodes.length, node;\n radii = new Array(n);\n for (i = 0; i < n; ++i) node = nodes[i], radii[node.index] = +radius(node, i, nodes);\n }\n\n force.initialize = function(_nodes, _random) {\n nodes = _nodes;\n random = _random;\n initialize();\n };\n\n force.iterations = function(_) {\n return arguments.length ? (iterations = +_, force) : iterations;\n };\n\n force.strength = function(_) {\n return arguments.length ? (strength = +_, force) : strength;\n };\n\n force.radius = function(_) {\n return arguments.length ? (radius = typeof _ === \"function\" ? _ : constant(+_), initialize(), force) : radius;\n };\n\n return force;\n}\n","// https://en.wikipedia.org/wiki/Linear_congruential_generator#Parameters_in_common_use\nconst a = 1664525;\nconst c = 1013904223;\nconst m = 4294967296; // 2^32\n\nexport default function() {\n let s = 1;\n return () => (s = (a * s + c) % m) / m;\n}\n","import {dispatch} from \"d3-dispatch\";\nimport {timer} from \"d3-timer\";\nimport lcg from \"./lcg.js\";\n\nexport function x(d) {\n return d.x;\n}\n\nexport function y(d) {\n return d.y;\n}\n\nvar initialRadius = 10,\n initialAngle = Math.PI * (3 - Math.sqrt(5));\n\nexport default function(nodes) {\n var simulation,\n alpha = 1,\n alphaMin = 0.001,\n alphaDecay = 1 - Math.pow(alphaMin, 1 / 300),\n alphaTarget = 0,\n velocityDecay = 0.6,\n forces = new Map(),\n stepper = timer(step),\n event = dispatch(\"tick\", \"end\"),\n random = lcg();\n\n if (nodes == null) nodes = [];\n\n function step() {\n tick();\n event.call(\"tick\", simulation);\n if (alpha < alphaMin) {\n stepper.stop();\n event.call(\"end\", simulation);\n }\n }\n\n function tick(iterations) {\n var i, n = nodes.length, node;\n\n if (iterations === undefined) iterations = 1;\n\n for (var k = 0; k < iterations; ++k) {\n alpha += (alphaTarget - alpha) * alphaDecay;\n\n forces.forEach(function(force) {\n force(alpha);\n });\n\n for (i = 0; i < n; ++i) {\n node = nodes[i];\n if (node.fx == null) node.x += node.vx *= velocityDecay;\n else node.x = node.fx, node.vx = 0;\n if (node.fy == null) node.y += node.vy *= velocityDecay;\n else node.y = node.fy, node.vy = 0;\n }\n }\n\n return simulation;\n }\n\n function initializeNodes() {\n for (var i = 0, n = nodes.length, node; i < n; ++i) {\n node = nodes[i], node.index = i;\n if (node.fx != null) node.x = node.fx;\n if (node.fy != null) node.y = node.fy;\n if (isNaN(node.x) || isNaN(node.y)) {\n var radius = initialRadius * Math.sqrt(0.5 + i), angle = i * initialAngle;\n node.x = radius * Math.cos(angle);\n node.y = radius * Math.sin(angle);\n }\n if (isNaN(node.vx) || isNaN(node.vy)) {\n node.vx = node.vy = 0;\n }\n }\n }\n\n function initializeForce(force) {\n if (force.initialize) force.initialize(nodes, random);\n return force;\n }\n\n initializeNodes();\n\n return simulation = {\n tick: tick,\n\n restart: function() {\n return stepper.restart(step), simulation;\n },\n\n stop: function() {\n return stepper.stop(), simulation;\n },\n\n nodes: function(_) {\n return arguments.length ? (nodes = _, initializeNodes(), forces.forEach(initializeForce), simulation) : nodes;\n },\n\n alpha: function(_) {\n return arguments.length ? (alpha = +_, simulation) : alpha;\n },\n\n alphaMin: function(_) {\n return arguments.length ? (alphaMin = +_, simulation) : alphaMin;\n },\n\n alphaDecay: function(_) {\n return arguments.length ? (alphaDecay = +_, simulation) : +alphaDecay;\n },\n\n alphaTarget: function(_) {\n return arguments.length ? (alphaTarget = +_, simulation) : alphaTarget;\n },\n\n velocityDecay: function(_) {\n return arguments.length ? (velocityDecay = 1 - _, simulation) : 1 - velocityDecay;\n },\n\n randomSource: function(_) {\n return arguments.length ? (random = _, forces.forEach(initializeForce), simulation) : random;\n },\n\n force: function(name, _) {\n return arguments.length > 1 ? ((_ == null ? forces.delete(name) : forces.set(name, initializeForce(_))), simulation) : forces.get(name);\n },\n\n find: function(x, y, radius) {\n var i = 0,\n n = nodes.length,\n dx,\n dy,\n d2,\n node,\n closest;\n\n if (radius == null) radius = Infinity;\n else radius *= radius;\n\n for (i = 0; i < n; ++i) {\n node = nodes[i];\n dx = x - node.x;\n dy = y - node.y;\n d2 = dx * dx + dy * dy;\n if (d2 < radius) closest = node, radius = d2;\n }\n\n return closest;\n },\n\n on: function(name, _) {\n return arguments.length > 1 ? (event.on(name, _), simulation) : event.on(name);\n }\n };\n}\n","import {quadtree} from \"d3-quadtree\";\nimport constant from \"./constant.js\";\nimport jiggle from \"./jiggle.js\";\nimport {x, y} from \"./simulation.js\";\n\nexport default function() {\n var nodes,\n node,\n random,\n alpha,\n strength = constant(-30),\n strengths,\n distanceMin2 = 1,\n distanceMax2 = Infinity,\n theta2 = 0.81;\n\n function force(_) {\n var i, n = nodes.length, tree = quadtree(nodes, x, y).visitAfter(accumulate);\n for (alpha = _, i = 0; i < n; ++i) node = nodes[i], tree.visit(apply);\n }\n\n function initialize() {\n if (!nodes) return;\n var i, n = nodes.length, node;\n strengths = new Array(n);\n for (i = 0; i < n; ++i) node = nodes[i], strengths[node.index] = +strength(node, i, nodes);\n }\n\n function accumulate(quad) {\n var strength = 0, q, c, weight = 0, x, y, i;\n\n // For internal nodes, accumulate forces from child quadrants.\n if (quad.length) {\n for (x = y = i = 0; i < 4; ++i) {\n if ((q = quad[i]) && (c = Math.abs(q.value))) {\n strength += q.value, weight += c, x += c * q.x, y += c * q.y;\n }\n }\n quad.x = x / weight;\n quad.y = y / weight;\n }\n\n // For leaf nodes, accumulate forces from coincident quadrants.\n else {\n q = quad;\n q.x = q.data.x;\n q.y = q.data.y;\n do strength += strengths[q.data.index];\n while (q = q.next);\n }\n\n quad.value = strength;\n }\n\n function apply(quad, x1, _, x2) {\n if (!quad.value) return true;\n\n var x = quad.x - node.x,\n y = quad.y - node.y,\n w = x2 - x1,\n l = x * x + y * y;\n\n // Apply the Barnes-Hut approximation if possible.\n // Limit forces for very close nodes; randomize direction if coincident.\n if (w * w / theta2 < l) {\n if (l < distanceMax2) {\n if (x === 0) x = jiggle(random), l += x * x;\n if (y === 0) y = jiggle(random), l += y * y;\n if (l < distanceMin2) l = Math.sqrt(distanceMin2 * l);\n node.vx += x * quad.value * alpha / l;\n node.vy += y * quad.value * alpha / l;\n }\n return true;\n }\n\n // Otherwise, process points directly.\n else if (quad.length || l >= distanceMax2) return;\n\n // Limit forces for very close nodes; randomize direction if coincident.\n if (quad.data !== node || quad.next) {\n if (x === 0) x = jiggle(random), l += x * x;\n if (y === 0) y = jiggle(random), l += y * y;\n if (l < distanceMin2) l = Math.sqrt(distanceMin2 * l);\n }\n\n do if (quad.data !== node) {\n w = strengths[quad.data.index] * alpha / l;\n node.vx += x * w;\n node.vy += y * w;\n } while (quad = quad.next);\n }\n\n force.initialize = function(_nodes, _random) {\n nodes = _nodes;\n random = _random;\n initialize();\n };\n\n force.strength = function(_) {\n return arguments.length ? (strength = typeof _ === \"function\" ? _ : constant(+_), initialize(), force) : strength;\n };\n\n force.distanceMin = function(_) {\n return arguments.length ? (distanceMin2 = _ * _, force) : Math.sqrt(distanceMin2);\n };\n\n force.distanceMax = function(_) {\n return arguments.length ? (distanceMax2 = _ * _, force) : Math.sqrt(distanceMax2);\n };\n\n force.theta = function(_) {\n return arguments.length ? (theta2 = _ * _, force) : Math.sqrt(theta2);\n };\n\n return force;\n}\n","import constant from \"./constant.js\";\n\nexport default function(x) {\n var strength = constant(0.1),\n nodes,\n strengths,\n xz;\n\n if (typeof x !== \"function\") x = constant(x == null ? 0 : +x);\n\n function force(alpha) {\n for (var i = 0, n = nodes.length, node; i < n; ++i) {\n node = nodes[i], node.vx += (xz[i] - node.x) * strengths[i] * alpha;\n }\n }\n\n function initialize() {\n if (!nodes) return;\n var i, n = nodes.length;\n strengths = new Array(n);\n xz = new Array(n);\n for (i = 0; i < n; ++i) {\n strengths[i] = isNaN(xz[i] = +x(nodes[i], i, nodes)) ? 0 : +strength(nodes[i], i, nodes);\n }\n }\n\n force.initialize = function(_) {\n nodes = _;\n initialize();\n };\n\n force.strength = function(_) {\n return arguments.length ? (strength = typeof _ === \"function\" ? _ : constant(+_), initialize(), force) : strength;\n };\n\n force.x = function(_) {\n return arguments.length ? (x = typeof _ === \"function\" ? _ : constant(+_), initialize(), force) : x;\n };\n\n return force;\n}\n","import constant from \"./constant.js\";\n\nexport default function(y) {\n var strength = constant(0.1),\n nodes,\n strengths,\n yz;\n\n if (typeof y !== \"function\") y = constant(y == null ? 0 : +y);\n\n function force(alpha) {\n for (var i = 0, n = nodes.length, node; i < n; ++i) {\n node = nodes[i], node.vy += (yz[i] - node.y) * strengths[i] * alpha;\n }\n }\n\n function initialize() {\n if (!nodes) return;\n var i, n = nodes.length;\n strengths = new Array(n);\n yz = new Array(n);\n for (i = 0; i < n; ++i) {\n strengths[i] = isNaN(yz[i] = +y(nodes[i], i, nodes)) ? 0 : +strength(nodes[i], i, nodes);\n }\n }\n\n force.initialize = function(_) {\n nodes = _;\n initialize();\n };\n\n force.strength = function(_) {\n return arguments.length ? (strength = typeof _ === \"function\" ? _ : constant(+_), initialize(), force) : strength;\n };\n\n force.y = function(_) {\n return arguments.length ? (y = typeof _ === \"function\" ? _ : constant(+_), initialize(), force) : y;\n };\n\n return force;\n}\n"],"names":["tree_add","d","x","y","add","tree","parent","node","leaf","x0","y0","x1","y1","xm","ym","xp","yp","right","bottom","i","j","addAll","data","n","xz","yz","tree_cover","z","tree_data","tree_extent","_","Quad","tree_find","radius","x2","y2","x3","y3","quads","q","dx","dy","d2","tree_remove","retainer","previous","next","removeAll","tree_root","tree_size","size","tree_visit","callback","child","tree_visitAfter","defaultX","tree_x","defaultY","tree_y","quadtree","nodes","Quadtree","leaf_copy","copy","treeProto","tree_addAll","tree_removeAll","constant","jiggle","random","forceCollide","radii","strength","iterations","force","xi","yi","ri","ri2","k","prepare","apply","quad","rj","r","l","initialize","_nodes","_random","a","c","m","lcg","s","initialRadius","initialAngle","forceSimulation","simulation","alpha","alphaMin","alphaDecay","alphaTarget","velocityDecay","forces","stepper","timer","step","event","dispatch","tick","initializeNodes","angle","initializeForce","name","closest","forceManyBody","strengths","distanceMin2","distanceMax2","theta2","accumulate","weight","w","forceX","forceY"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21]}
@@ -0,0 +1,2 @@
1
+ "use strict";const Et=require("./timer-CKyBCVzT.cjs"),J=require("./string-CRoCZCYa.cjs"),H=require("./select-Bnfk0lJx.cjs"),st=require("./pointer-Dkq5NV1q.cjs");class bn{constructor(){this._partials=new Float64Array(32),this._n=0}add(n){const e=this._partials;let i=0;for(let r=0;r<this._n&&r<32;r++){const u=e[r],o=n+u,f=Math.abs(n)<Math.abs(u)?n-(o-u):u-(o-n);f&&(e[i++]=f),n=o}return e[i]=n,this._n=i+1,this}valueOf(){const n=this._partials;let e=this._n,i,r,u,o=0;if(e>0){for(o=n[--e];e>0&&(i=o,r=n[--e],o=i+r,u=r-(o-i),!u););e>0&&(u<0&&n[e-1]<0||u>0&&n[e-1]>0)&&(r=u*2,i=o+r,r==i-o&&(o=i))}return o}}function*te(t){for(const n of t)yield*n}function Dn(t){return Array.from(te(t))}var cn=180/Math.PI,Bt={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Xn(t,n,e,i,r,u){var o,f,p;return(o=Math.sqrt(t*t+n*n))&&(t/=o,n/=o),(p=t*e+n*i)&&(e-=t*p,i-=n*p),(f=Math.sqrt(e*e+i*i))&&(e/=f,i/=f,p/=f),t*i<n*e&&(t=-t,n=-n,p=-p,o=-o),{translateX:r,translateY:u,rotate:Math.atan2(n,t)*cn,skewX:Math.atan(p)*cn,scaleX:o,scaleY:f}}var St;function ne(t){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return n.isIdentity?Bt:Xn(n.a,n.b,n.c,n.d,n.e,n.f)}function ee(t){return t==null||(St||(St=document.createElementNS("http://www.w3.org/2000/svg","g")),St.setAttribute("transform",t),!(t=St.transform.baseVal.consolidate()))?Bt:(t=t.matrix,Xn(t.a,t.b,t.c,t.d,t.e,t.f))}function qn(t,n,e,i){function r(c){return c.length?c.pop()+" ":""}function u(c,a,s,l,h,m){if(c!==s||a!==l){var d=h.push("translate(",null,n,null,e);m.push({i:d-4,x:J.interpolateNumber(c,s)},{i:d-2,x:J.interpolateNumber(a,l)})}else(s||l)&&h.push("translate("+s+n+l+e)}function o(c,a,s,l){c!==a?(c-a>180?a+=360:a-c>180&&(c+=360),l.push({i:s.push(r(s)+"rotate(",null,i)-2,x:J.interpolateNumber(c,a)})):a&&s.push(r(s)+"rotate("+a+i)}function f(c,a,s,l){c!==a?l.push({i:s.push(r(s)+"skewX(",null,i)-2,x:J.interpolateNumber(c,a)}):a&&s.push(r(s)+"skewX("+a+i)}function p(c,a,s,l,h,m){if(c!==s||a!==l){var d=h.push(r(h)+"scale(",null,",",null,")");m.push({i:d-4,x:J.interpolateNumber(c,s)},{i:d-2,x:J.interpolateNumber(a,l)})}else(s!==1||l!==1)&&h.push(r(h)+"scale("+s+","+l+")")}return function(c,a){var s=[],l=[];return c=t(c),a=t(a),u(c.translateX,c.translateY,a.translateX,a.translateY,s,l),o(c.rotate,a.rotate,s,l),f(c.skewX,a.skewX,s,l),p(c.scaleX,c.scaleY,a.scaleX,a.scaleY,s,l),c=a=null,function(h){for(var m=-1,d=l.length,_;++m<d;)s[(_=l[m]).i]=_.x(h);return s.join("")}}}var ie=qn(ne,"px, ","px)","deg)"),re=qn(ee,", ",")",")"),oe=1e-12;function fn(t){return((t=Math.exp(t))+1/t)/2}function ue(t){return((t=Math.exp(t))-1/t)/2}function ae(t){return((t=Math.exp(2*t))-1)/(t+1)}const le=function t(n,e,i){function r(u,o){var f=u[0],p=u[1],c=u[2],a=o[0],s=o[1],l=o[2],h=a-f,m=s-p,d=h*h+m*m,_,w;if(d<oe)w=Math.log(l/c)/n,_=function(D){return[f+D*h,p+D*m,c*Math.exp(n*D*w)]};else{var z=Math.sqrt(d),M=(l*l-c*c+i*d)/(2*c*e*z),S=(l*l-c*c-i*d)/(2*l*e*z),T=Math.log(Math.sqrt(M*M+1)-M),N=Math.log(Math.sqrt(S*S+1)-S);w=(N-T)/n,_=function(D){var X=D*w,q=fn(T),V=c/(e*z)*(q*ae(n*X+T)-ue(T));return[f+V*h,p+V*m,c*q/fn(n*X+T)]}}return _.duration=w*1e3*n/Math.SQRT2,_}return r.rho=function(u){var o=Math.max(.001,+u),f=o*o,p=f*f;return t(o,f,p)},r}(Math.SQRT2,2,4);function hn(t,n,e){var i=new Et.Timer;return n=n==null?0:+n,i.restart(r=>{i.stop(),t(r+n)},n,e),i}function se(t,n,e={}){const i={type:"Feature"};return(e.id===0||e.id)&&(i.id=e.id),e.bbox&&(i.bbox=e.bbox),i.properties=n||{},i.geometry=t,i}function ce(t,n,e={}){if(!t)throw new Error("coordinates is required");if(!Array.isArray(t))throw new Error("coordinates must be an Array");if(t.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!pn(t[0])||!pn(t[1]))throw new Error("coordinates must contain numbers");return se({type:"Point",coordinates:t},n,e)}function pn(t){return!isNaN(t)&&t!==null&&!Array.isArray(t)}function en(t,n,e){if(t!==null)for(var i,r,u,o,f,p,c,a=0,s=0,l,h=t.type,m=h==="FeatureCollection",d=h==="Feature",_=m?t.features.length:1,w=0;w<_;w++){c=m?t.features[w].geometry:d?t.geometry:t,l=c?c.type==="GeometryCollection":!1,f=l?c.geometries.length:1;for(var z=0;z<f;z++){var M=0,S=0;if(o=l?c.geometries[z]:c,o!==null){p=o.coordinates;var T=o.type;switch(a=e&&(T==="Polygon"||T==="MultiPolygon")?1:0,T){case null:break;case"Point":if(n(p,s,w,M,S)===!1)return!1;s++,M++;break;case"LineString":case"MultiPoint":for(i=0;i<p.length;i++){if(n(p[i],s,w,M,S)===!1)return!1;s++,T==="MultiPoint"&&M++}T==="LineString"&&M++;break;case"Polygon":case"MultiLineString":for(i=0;i<p.length;i++){for(r=0;r<p[i].length-a;r++){if(n(p[i][r],s,w,M,S)===!1)return!1;s++}T==="MultiLineString"&&M++,T==="Polygon"&&S++}T==="Polygon"&&M++;break;case"MultiPolygon":for(i=0;i<p.length;i++){for(S=0,r=0;r<p[i].length;r++){for(u=0;u<p[i][r].length-a;u++){if(n(p[i][r][u],s,w,M,S)===!1)return!1;s++}S++}M++}break;case"GeometryCollection":for(i=0;i<o.geometries.length;i++)if(en(o.geometries[i],n,e)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function fe(t,n={}){if(t.bbox!=null&&n.recompute!==!0)return t.bbox;const e=[1/0,1/0,-1/0,-1/0];return en(t,i=>{e[0]>i[0]&&(e[0]=i[0]),e[1]>i[1]&&(e[1]=i[1]),e[2]<i[0]&&(e[2]=i[0]),e[3]<i[1]&&(e[3]=i[1])}),e}var he=fe;function pe(t,n={}){let e=0,i=0,r=0;return en(t,function(u){e+=u[0],i+=u[1],r++},!0),ce([e/r,i/r],n.properties)}var ve=pe,k=1e-6,Yn=1e-12,x=Math.PI,$=x/2,vn=x/4,j=x*2,Z=180/x,B=x/180,O=Math.abs,xn=Math.atan,ct=Math.atan2,L=Math.cos,ge=Math.exp,ye=Math.log,I=Math.sin,Pt=Math.sign||function(t){return t>0?1:t<0?-1:0},lt=Math.sqrt,me=Math.tan;function we(t){return t>1?0:t<-1?x:Math.acos(t)}function tt(t){return t>1?$:t<-1?-$:Math.asin(t)}function vt(){}function Xt(t,n){t&&yn.hasOwnProperty(t.type)&&yn[t.type](t,n)}var gn={Feature:function(t,n){Xt(t.geometry,n)},FeatureCollection:function(t,n){for(var e=t.features,i=-1,r=e.length;++i<r;)Xt(e[i].geometry,n)}},yn={Sphere:function(t,n){n.sphere()},Point:function(t,n){t=t.coordinates,n.point(t[0],t[1],t[2])},MultiPoint:function(t,n){for(var e=t.coordinates,i=-1,r=e.length;++i<r;)t=e[i],n.point(t[0],t[1],t[2])},LineString:function(t,n){Ht(t.coordinates,n,0)},MultiLineString:function(t,n){for(var e=t.coordinates,i=-1,r=e.length;++i<r;)Ht(e[i],n,0)},Polygon:function(t,n){mn(t.coordinates,n)},MultiPolygon:function(t,n){for(var e=t.coordinates,i=-1,r=e.length;++i<r;)mn(e[i],n)},GeometryCollection:function(t,n){for(var e=t.geometries,i=-1,r=e.length;++i<r;)Xt(e[i],n)}};function Ht(t,n,e){var i=-1,r=t.length-e,u;for(n.lineStart();++i<r;)u=t[i],n.point(u[0],u[1],u[2]);n.lineEnd()}function mn(t,n){var e=-1,i=t.length;for(n.polygonStart();++e<i;)Ht(t[e],n,1);n.polygonEnd()}function de(t,n){t&&gn.hasOwnProperty(t.type)?gn[t.type](t,n):Xt(t,n)}function Wt(t){return[ct(t[1],t[0]),tt(t[2])]}function ft(t){var n=t[0],e=t[1],i=L(e);return[i*L(n),i*I(n),I(e)]}function Mt(t,n){return t[0]*n[0]+t[1]*n[1]+t[2]*n[2]}function qt(t,n){return[t[1]*n[2]-t[2]*n[1],t[2]*n[0]-t[0]*n[2],t[0]*n[1]-t[1]*n[0]]}function Ot(t,n){t[0]+=n[0],t[1]+=n[1],t[2]+=n[2]}function zt(t,n){return[t[0]*n,t[1]*n,t[2]*n]}function Kt(t){var n=lt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=n,t[1]/=n,t[2]/=n}function Qt(t,n){function e(i,r){return i=t(i,r),n(i[0],i[1])}return t.invert&&n.invert&&(e.invert=function(i,r){return i=n.invert(i,r),i&&t.invert(i[0],i[1])}),e}function Zt(t,n){return O(t)>x&&(t-=Math.round(t/j)*j),[t,n]}Zt.invert=Zt;function In(t,n,e){return(t%=j)?n||e?Qt(dn(t),_n(n,e)):dn(t):n||e?_n(n,e):Zt}function wn(t){return function(n,e){return n+=t,O(n)>x&&(n-=Math.round(n/j)*j),[n,e]}}function dn(t){var n=wn(t);return n.invert=wn(-t),n}function _n(t,n){var e=L(t),i=I(t),r=L(n),u=I(n);function o(f,p){var c=L(p),a=L(f)*c,s=I(f)*c,l=I(p),h=l*e+a*i;return[ct(s*r-h*u,a*e-l*i),tt(h*r+s*u)]}return o.invert=function(f,p){var c=L(p),a=L(f)*c,s=I(f)*c,l=I(p),h=l*r-s*u;return[ct(s*r+l*u,a*e+h*i),tt(h*e-a*i)]},o}function _e(t){t=In(t[0]*B,t[1]*B,t.length>2?t[2]*B:0);function n(e){return e=t(e[0]*B,e[1]*B),e[0]*=Z,e[1]*=Z,e}return n.invert=function(e){return e=t.invert(e[0]*B,e[1]*B),e[0]*=Z,e[1]*=Z,e},n}function Ee(t,n,e,i,r,u){if(e){var o=L(n),f=I(n),p=i*e;r==null?(r=n+i*j,u=n-p/2):(r=En(o,r),u=En(o,u),(i>0?r<u:r>u)&&(r+=i*j));for(var c,a=r;i>0?a>u:a<u;a-=p)c=Wt([o,-f*L(a),-f*I(a)]),t.point(c[0],c[1])}}function En(t,n){n=ft(n),n[0]-=t,Kt(n);var e=we(-n[1]);return((-n[2]<0?-e:e)+j-k)%j}function Vn(){var t=[],n;return{point:function(e,i,r){n.push([e,i,r])},lineStart:function(){t.push(n=[])},lineEnd:vt,rejoin:function(){t.length>1&&t.push(t.pop().concat(t.shift()))},result:function(){var e=t;return t=[],n=null,e}}}function Rt(t,n){return O(t[0]-n[0])<k&&O(t[1]-n[1])<k}function Tt(t,n,e,i){this.x=t,this.z=n,this.o=e,this.e=i,this.v=!1,this.n=this.p=null}function Gn(t,n,e,i,r){var u=[],o=[],f,p;if(t.forEach(function(m){if(!((d=m.length-1)<=0)){var d,_=m[0],w=m[d],z;if(Rt(_,w)){if(!_[2]&&!w[2]){for(r.lineStart(),f=0;f<d;++f)r.point((_=m[f])[0],_[1]);r.lineEnd();return}w[0]+=2*k}u.push(z=new Tt(_,m,null,!0)),o.push(z.o=new Tt(_,null,z,!1)),u.push(z=new Tt(w,m,null,!1)),o.push(z.o=new Tt(w,null,z,!0))}}),!!u.length){for(o.sort(n),Sn(u),Sn(o),f=0,p=o.length;f<p;++f)o[f].e=e=!e;for(var c=u[0],a,s;;){for(var l=c,h=!0;l.v;)if((l=l.n)===c)return;a=l.z,r.lineStart();do{if(l.v=l.o.v=!0,l.e){if(h)for(f=0,p=a.length;f<p;++f)r.point((s=a[f])[0],s[1]);else i(l.x,l.n.x,1,r);l=l.n}else{if(h)for(a=l.p.z,f=a.length-1;f>=0;--f)r.point((s=a[f])[0],s[1]);else i(l.x,l.p.x,-1,r);l=l.p}l=l.o,a=l.z,h=!h}while(!l.v);r.lineEnd()}}}function Sn(t){if(n=t.length){for(var n,e=0,i=t[0],r;++e<n;)i.n=r=t[e],r.p=i,i=r;i.n=r=t[0],r.p=i}}function Ft(t){return O(t[0])<=x?t[0]:Pt(t[0])*((O(t[0])+x)%j-x)}function Se(t,n){var e=Ft(n),i=n[1],r=I(i),u=[I(e),-L(e),0],o=0,f=0,p=new bn;r===1?i=$+k:r===-1&&(i=-$-k);for(var c=0,a=t.length;c<a;++c)if(l=(s=t[c]).length)for(var s,l,h=s[l-1],m=Ft(h),d=h[1]/2+vn,_=I(d),w=L(d),z=0;z<l;++z,m=S,_=N,w=D,h=M){var M=s[z],S=Ft(M),T=M[1]/2+vn,N=I(T),D=L(T),X=S-m,q=X>=0?1:-1,V=q*X,R=V>x,Q=_*N;if(p.add(ct(Q*q*I(V),w*D+Q*L(V))),o+=R?X+q*j:X,R^m>=e^S>=e){var F=qt(ft(h),ft(M));Kt(F);var v=qt(u,F);Kt(v);var g=(R^X>=0?-1:1)*tt(v[2]);(i>g||i===g&&(F[0]||F[1]))&&(f+=R^X>=0?1:-1)}}return(o<-k||o<k&&p<-Yn)^f&1}function Ln(t,n,e,i){return function(r){var u=n(r),o=Vn(),f=n(o),p=!1,c,a,s,l={point:h,lineStart:d,lineEnd:_,polygonStart:function(){l.point=w,l.lineStart=z,l.lineEnd=M,a=[],c=[]},polygonEnd:function(){l.point=h,l.lineStart=d,l.lineEnd=_,a=Dn(a);var S=Se(c,i);a.length?(p||(r.polygonStart(),p=!0),Gn(a,ze,S,e,r)):S&&(p||(r.polygonStart(),p=!0),r.lineStart(),e(null,null,1,r),r.lineEnd()),p&&(r.polygonEnd(),p=!1),a=c=null},sphere:function(){r.polygonStart(),r.lineStart(),e(null,null,1,r),r.lineEnd(),r.polygonEnd()}};function h(S,T){t(S,T)&&r.point(S,T)}function m(S,T){u.point(S,T)}function d(){l.point=m,u.lineStart()}function _(){l.point=h,u.lineEnd()}function w(S,T){s.push([S,T]),f.point(S,T)}function z(){f.lineStart(),s=[]}function M(){w(s[0][0],s[0][1]),f.lineEnd();var S=f.clean(),T=o.result(),N,D=T.length,X,q,V;if(s.pop(),c.push(s),s=null,!!D){if(S&1){if(q=T[0],(X=q.length-1)>0){for(p||(r.polygonStart(),p=!0),r.lineStart(),N=0;N<X;++N)r.point((V=q[N])[0],V[1]);r.lineEnd()}return}D>1&&S&2&&T.push(T.pop().concat(T.shift())),a.push(T.filter(Me))}}return l}}function Me(t){return t.length>1}function ze(t,n){return((t=t.x)[0]<0?t[1]-$-k:$-t[1])-((n=n.x)[0]<0?n[1]-$-k:$-n[1])}const Mn=Ln(function(){return!0},Te,Ne,[-x,-$]);function Te(t){var n=NaN,e=NaN,i=NaN,r;return{lineStart:function(){t.lineStart(),r=1},point:function(u,o){var f=u>0?x:-x,p=O(u-n);O(p-x)<k?(t.point(n,e=(e+o)/2>0?$:-$),t.point(i,e),t.lineEnd(),t.lineStart(),t.point(f,e),t.point(u,e),r=0):i!==f&&p>=x&&(O(n-i)<k&&(n-=i*k),O(u-f)<k&&(u-=f*k),e=Ae(n,e,u,o),t.point(i,e),t.lineEnd(),t.lineStart(),t.point(f,e),r=0),t.point(n=u,e=o),i=f},lineEnd:function(){t.lineEnd(),n=e=NaN},clean:function(){return 2-r}}}function Ae(t,n,e,i){var r,u,o=I(t-e);return O(o)>k?xn((I(n)*(u=L(i))*I(e)-I(i)*(r=L(n))*I(t))/(r*u*o)):(n+i)/2}function Ne(t,n,e,i){var r;if(t==null)r=e*$,i.point(-x,r),i.point(0,r),i.point(x,r),i.point(x,0),i.point(x,-r),i.point(0,-r),i.point(-x,-r),i.point(-x,0),i.point(-x,r);else if(O(t[0]-n[0])>k){var u=t[0]<n[0]?x:-x;r=e*u/2,i.point(-u,r),i.point(0,r),i.point(u,r)}else i.point(n[0],n[1])}function Pe(t){var n=L(t),e=2*B,i=n>0,r=O(n)>k;function u(a,s,l,h){Ee(h,t,e,l,a,s)}function o(a,s){return L(a)*L(s)>n}function f(a){var s,l,h,m,d;return{lineStart:function(){m=h=!1,d=1},point:function(_,w){var z=[_,w],M,S=o(_,w),T=i?S?0:c(_,w):S?c(_+(_<0?x:-x),w):0;if(!s&&(m=h=S)&&a.lineStart(),S!==h&&(M=p(s,z),(!M||Rt(s,M)||Rt(z,M))&&(z[2]=1)),S!==h)d=0,S?(a.lineStart(),M=p(z,s),a.point(M[0],M[1])):(M=p(s,z),a.point(M[0],M[1],2),a.lineEnd()),s=M;else if(r&&s&&i^S){var N;!(T&l)&&(N=p(z,s,!0))&&(d=0,i?(a.lineStart(),a.point(N[0][0],N[0][1]),a.point(N[1][0],N[1][1]),a.lineEnd()):(a.point(N[1][0],N[1][1]),a.lineEnd(),a.lineStart(),a.point(N[0][0],N[0][1],3)))}S&&(!s||!Rt(s,z))&&a.point(z[0],z[1]),s=z,h=S,l=T},lineEnd:function(){h&&a.lineEnd(),s=null},clean:function(){return d|(m&&h)<<1}}}function p(a,s,l){var h=ft(a),m=ft(s),d=[1,0,0],_=qt(h,m),w=Mt(_,_),z=_[0],M=w-z*z;if(!M)return!l&&a;var S=n*w/M,T=-n*z/M,N=qt(d,_),D=zt(d,S),X=zt(_,T);Ot(D,X);var q=N,V=Mt(D,q),R=Mt(q,q),Q=V*V-R*(Mt(D,D)-1);if(!(Q<0)){var F=lt(Q),v=zt(q,(-V-F)/R);if(Ot(v,D),v=Wt(v),!l)return v;var g=a[0],y=s[0],E=a[1],A=s[1],P;y<g&&(P=g,g=y,y=P);var C=y-g,Y=O(C-x)<k,G=Y||C<k;if(!Y&&A<E&&(P=E,E=A,A=P),G?Y?E+A>0^v[1]<(O(v[0]-g)<k?E:A):E<=v[1]&&v[1]<=A:C>x^(g<=v[0]&&v[0]<=y)){var W=zt(q,(-V+F)/R);return Ot(W,D),[v,Wt(W)]}}}function c(a,s){var l=i?t:x-t,h=0;return a<-l?h|=1:a>l&&(h|=2),s<-l?h|=4:s>l&&(h|=8),h}return Ln(o,f,u,i?[0,-t]:[-x,t-x])}function Re(t,n,e,i,r,u){var o=t[0],f=t[1],p=n[0],c=n[1],a=0,s=1,l=p-o,h=c-f,m;if(m=e-o,!(!l&&m>0)){if(m/=l,l<0){if(m<a)return;m<s&&(s=m)}else if(l>0){if(m>s)return;m>a&&(a=m)}if(m=r-o,!(!l&&m<0)){if(m/=l,l<0){if(m>s)return;m>a&&(a=m)}else if(l>0){if(m<a)return;m<s&&(s=m)}if(m=i-f,!(!h&&m>0)){if(m/=h,h<0){if(m<a)return;m<s&&(s=m)}else if(h>0){if(m>s)return;m>a&&(a=m)}if(m=u-f,!(!h&&m<0)){if(m/=h,h<0){if(m>s)return;m>a&&(a=m)}else if(h>0){if(m<a)return;m<s&&(s=m)}return a>0&&(t[0]=o+a*l,t[1]=f+a*h),s<1&&(n[0]=o+s*l,n[1]=f+s*h),!0}}}}}var gt=1e9,At=-gt;function Ce(t,n,e,i){function r(c,a){return t<=c&&c<=e&&n<=a&&a<=i}function u(c,a,s,l){var h=0,m=0;if(c==null||(h=o(c,s))!==(m=o(a,s))||p(c,a)<0^s>0)do l.point(h===0||h===3?t:e,h>1?i:n);while((h=(h+s+4)%4)!==m);else l.point(a[0],a[1])}function o(c,a){return O(c[0]-t)<k?a>0?0:3:O(c[0]-e)<k?a>0?2:1:O(c[1]-n)<k?a>0?1:0:a>0?3:2}function f(c,a){return p(c.x,a.x)}function p(c,a){var s=o(c,1),l=o(a,1);return s!==l?s-l:s===0?a[1]-c[1]:s===1?c[0]-a[0]:s===2?c[1]-a[1]:a[0]-c[0]}return function(c){var a=c,s=Vn(),l,h,m,d,_,w,z,M,S,T,N,D={point:X,lineStart:Q,lineEnd:F,polygonStart:V,polygonEnd:R};function X(g,y){r(g,y)&&a.point(g,y)}function q(){for(var g=0,y=0,E=h.length;y<E;++y)for(var A=h[y],P=1,C=A.length,Y=A[0],G,W,U=Y[0],K=Y[1];P<C;++P)G=U,W=K,Y=A[P],U=Y[0],K=Y[1],W<=i?K>i&&(U-G)*(i-W)>(K-W)*(t-G)&&++g:K<=i&&(U-G)*(i-W)<(K-W)*(t-G)&&--g;return g}function V(){a=s,l=[],h=[],N=!0}function R(){var g=q(),y=N&&g,E=(l=Dn(l)).length;(y||E)&&(c.polygonStart(),y&&(c.lineStart(),u(null,null,1,c),c.lineEnd()),E&&Gn(l,f,g,u,c),c.polygonEnd()),a=c,l=h=m=null}function Q(){D.point=v,h&&h.push(m=[]),T=!0,S=!1,z=M=NaN}function F(){l&&(v(d,_),w&&S&&s.rejoin(),l.push(s.result())),D.point=X,S&&a.lineEnd()}function v(g,y){var E=r(g,y);if(h&&m.push([g,y]),T)d=g,_=y,w=E,T=!1,E&&(a.lineStart(),a.point(g,y));else if(E&&S)a.point(g,y);else{var A=[z=Math.max(At,Math.min(gt,z)),M=Math.max(At,Math.min(gt,M))],P=[g=Math.max(At,Math.min(gt,g)),y=Math.max(At,Math.min(gt,y))];Re(A,P,t,n,e,i)?(S||(a.lineStart(),a.point(A[0],A[1])),a.point(P[0],P[1]),E||a.lineEnd(),N=!1):E&&(a.lineStart(),a.point(g,y),N=!1)}z=g,M=y,S=E}return D}}const zn=t=>t;var ht=1/0,Yt=ht,_t=-ht,xt=_t,Tn={point:ke,lineStart:vt,lineEnd:vt,polygonStart:vt,polygonEnd:vt,result:function(){var t=[[ht,Yt],[_t,xt]];return _t=xt=-(Yt=ht=1/0),t}};function ke(t,n){t<ht&&(ht=t),t>_t&&(_t=t),n<Yt&&(Yt=n),n>xt&&(xt=n)}function rn(t){return function(n){var e=new $t;for(var i in t)e[i]=t[i];return e.stream=n,e}}function $t(){}$t.prototype={constructor:$t,point:function(t,n){this.stream.point(t,n)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function on(t,n,e){var i=t.clipExtent&&t.clipExtent();return t.scale(150).translate([0,0]),i!=null&&t.clipExtent(null),de(e,t.stream(Tn)),n(Tn.result()),i!=null&&t.clipExtent(i),t}function un(t,n,e){return on(t,function(i){var r=n[1][0]-n[0][0],u=n[1][1]-n[0][1],o=Math.min(r/(i[1][0]-i[0][0]),u/(i[1][1]-i[0][1])),f=+n[0][0]+(r-o*(i[1][0]+i[0][0]))/2,p=+n[0][1]+(u-o*(i[1][1]+i[0][1]))/2;t.scale(150*o).translate([f,p])},e)}function On(t,n,e){return un(t,[[0,0],n],e)}function Fn(t,n,e){return on(t,function(i){var r=+n,u=r/(i[1][0]-i[0][0]),o=(r-u*(i[1][0]+i[0][0]))/2,f=-u*i[0][1];t.scale(150*u).translate([o,f])},e)}function Un(t,n,e){return on(t,function(i){var r=+n,u=r/(i[1][1]-i[0][1]),o=-u*i[0][0],f=(r-u*(i[1][1]+i[0][1]))/2;t.scale(150*u).translate([o,f])},e)}var An=16,De=L(30*B);function Nn(t,n){return+n?qe(t,n):Xe(t)}function Xe(t){return rn({point:function(n,e){n=t(n,e),this.stream.point(n[0],n[1])}})}function qe(t,n){function e(i,r,u,o,f,p,c,a,s,l,h,m,d,_){var w=c-i,z=a-r,M=w*w+z*z;if(M>4*n&&d--){var S=o+l,T=f+h,N=p+m,D=lt(S*S+T*T+N*N),X=tt(N/=D),q=O(O(N)-1)<k||O(u-s)<k?(u+s)/2:ct(T,S),V=t(q,X),R=V[0],Q=V[1],F=R-i,v=Q-r,g=z*F-w*v;(g*g/M>n||O((w*F+z*v)/M-.5)>.3||o*l+f*h+p*m<De)&&(e(i,r,u,o,f,p,R,Q,q,S/=D,T/=D,N,d,_),_.point(R,Q),e(R,Q,q,S,T,N,c,a,s,l,h,m,d,_))}}return function(i){var r,u,o,f,p,c,a,s,l,h,m,d,_={point:w,lineStart:z,lineEnd:S,polygonStart:function(){i.polygonStart(),_.lineStart=T},polygonEnd:function(){i.polygonEnd(),_.lineStart=z}};function w(X,q){X=t(X,q),i.point(X[0],X[1])}function z(){s=NaN,_.point=M,i.lineStart()}function M(X,q){var V=ft([X,q]),R=t(X,q);e(s,l,a,h,m,d,s=R[0],l=R[1],a=X,h=V[0],m=V[1],d=V[2],An,i),i.point(s,l)}function S(){_.point=w,i.lineEnd()}function T(){z(),_.point=N,_.lineEnd=D}function N(X,q){M(r=X,q),u=s,o=l,f=h,p=m,c=d,_.point=M}function D(){e(s,l,a,h,m,d,u,o,r,f,p,c,An,i),_.lineEnd=S,S()}return _}}var Ye=rn({point:function(t,n){this.stream.point(t*B,n*B)}});function xe(t){return rn({point:function(n,e){var i=t(n,e);return this.stream.point(i[0],i[1])}})}function Ie(t,n,e,i,r){function u(o,f){return o*=i,f*=r,[n+t*o,e-t*f]}return u.invert=function(o,f){return[(o-n)/t*i,(e-f)/t*r]},u}function Pn(t,n,e,i,r,u){if(!u)return Ie(t,n,e,i,r);var o=L(u),f=I(u),p=o*t,c=f*t,a=o/t,s=f/t,l=(f*e-o*n)/t,h=(f*n+o*e)/t;function m(d,_){return d*=i,_*=r,[p*d-c*_+n,e-c*d-p*_]}return m.invert=function(d,_){return[i*(a*d-s*_+l),r*(h-s*d-a*_)]},m}function Vt(t){return Bn(function(){return t})()}function Bn(t){var n,e=150,i=480,r=250,u=0,o=0,f=0,p=0,c=0,a,s=0,l=1,h=1,m=null,d=Mn,_=null,w,z,M,S=zn,T=.5,N,D,X,q,V;function R(g){return X(g[0]*B,g[1]*B)}function Q(g){return g=X.invert(g[0],g[1]),g&&[g[0]*Z,g[1]*Z]}R.stream=function(g){return q&&V===g?q:q=Ye(xe(a)(d(N(S(V=g)))))},R.preclip=function(g){return arguments.length?(d=g,m=void 0,v()):d},R.postclip=function(g){return arguments.length?(S=g,_=w=z=M=null,v()):S},R.clipAngle=function(g){return arguments.length?(d=+g?Pe(m=g*B):(m=null,Mn),v()):m*Z},R.clipExtent=function(g){return arguments.length?(S=g==null?(_=w=z=M=null,zn):Ce(_=+g[0][0],w=+g[0][1],z=+g[1][0],M=+g[1][1]),v()):_==null?null:[[_,w],[z,M]]},R.scale=function(g){return arguments.length?(e=+g,F()):e},R.translate=function(g){return arguments.length?(i=+g[0],r=+g[1],F()):[i,r]},R.center=function(g){return arguments.length?(u=g[0]%360*B,o=g[1]%360*B,F()):[u*Z,o*Z]},R.rotate=function(g){return arguments.length?(f=g[0]%360*B,p=g[1]%360*B,c=g.length>2?g[2]%360*B:0,F()):[f*Z,p*Z,c*Z]},R.angle=function(g){return arguments.length?(s=g%360*B,F()):s*Z},R.reflectX=function(g){return arguments.length?(l=g?-1:1,F()):l<0},R.reflectY=function(g){return arguments.length?(h=g?-1:1,F()):h<0},R.precision=function(g){return arguments.length?(N=Nn(D,T=g*g),v()):lt(T)},R.fitExtent=function(g,y){return un(R,g,y)},R.fitSize=function(g,y){return On(R,g,y)},R.fitWidth=function(g,y){return Fn(R,g,y)},R.fitHeight=function(g,y){return Un(R,g,y)};function F(){var g=Pn(e,0,0,l,h,s).apply(null,n(u,o)),y=Pn(e,i-g[0],r-g[1],l,h,s);return a=In(f,p,c),D=Qt(n,y),X=Qt(a,D),N=Nn(D,T),v()}function v(){return q=V=null,R}return function(){return n=t.apply(this,arguments),R.invert=n.invert&&Q,F()}}function Ve(t){var n=0,e=x/3,i=Bn(t),r=i(n,e);return r.parallels=function(u){return arguments.length?i(n=u[0]*B,e=u[1]*B):[n*Z,e*Z]},r}function Ge(t){var n=L(t);function e(i,r){return[i*n,I(r)/n]}return e.invert=function(i,r){return[i/n,tt(r*n)]},e}function Le(t,n){var e=I(t),i=(e+I(n))/2;if(O(i)<k)return Ge(t);var r=1+e*(2*i-e),u=lt(r)/i;function o(f,p){var c=lt(r-2*i*I(p))/i;return[c*I(f*=i),u-c*L(f)]}return o.invert=function(f,p){var c=u-p,a=ct(f,O(c))*Pt(c);return c*i<0&&(a-=x*Pt(f)*Pt(c)),[a/i,tt((r-(f*f+c*c)*i*i)/(2*i))]},o}function Jt(){return Ve(Le).scale(155.424).center([0,33.6442])}function Oe(){return Jt().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function Fe(t){var n=t.length;return{point:function(e,i){for(var r=-1;++r<n;)t[r].point(e,i)},sphere:function(){for(var e=-1;++e<n;)t[e].sphere()},lineStart:function(){for(var e=-1;++e<n;)t[e].lineStart()},lineEnd:function(){for(var e=-1;++e<n;)t[e].lineEnd()},polygonStart:function(){for(var e=-1;++e<n;)t[e].polygonStart()},polygonEnd:function(){for(var e=-1;++e<n;)t[e].polygonEnd()}}}function Ue(){var t,n,e=Oe(),i,r=Jt().rotate([154,0]).center([-2,58.5]).parallels([55,65]),u,o=Jt().rotate([157,0]).center([-3,19.9]).parallels([8,18]),f,p,c={point:function(l,h){p=[l,h]}};function a(l){var h=l[0],m=l[1];return p=null,i.point(h,m),p||(u.point(h,m),p)||(f.point(h,m),p)}a.invert=function(l){var h=e.scale(),m=e.translate(),d=(l[0]-m[0])/h,_=(l[1]-m[1])/h;return(_>=.12&&_<.234&&d>=-.425&&d<-.214?r:_>=.166&&_<.234&&d>=-.214&&d<-.115?o:e).invert(l)},a.stream=function(l){return t&&n===l?t:t=Fe([e.stream(n=l),r.stream(l),o.stream(l)])},a.precision=function(l){return arguments.length?(e.precision(l),r.precision(l),o.precision(l),s()):e.precision()},a.scale=function(l){return arguments.length?(e.scale(l),r.scale(l*.35),o.scale(l),a.translate(e.translate())):e.scale()},a.translate=function(l){if(!arguments.length)return e.translate();var h=e.scale(),m=+l[0],d=+l[1];return i=e.translate(l).clipExtent([[m-.455*h,d-.238*h],[m+.455*h,d+.238*h]]).stream(c),u=r.translate([m-.307*h,d+.201*h]).clipExtent([[m-.425*h+k,d+.12*h+k],[m-.214*h-k,d+.234*h-k]]).stream(c),f=o.translate([m-.205*h,d+.212*h]).clipExtent([[m-.214*h+k,d+.166*h+k],[m-.115*h-k,d+.234*h-k]]).stream(c),s()},a.fitExtent=function(l,h){return un(a,l,h)},a.fitSize=function(l,h){return On(a,l,h)},a.fitWidth=function(l,h){return Fn(a,l,h)},a.fitHeight=function(l,h){return Un(a,l,h)};function s(){return t=n=null,a}return a.scale(1070)}function Be(t){return function(n,e){var i=lt(n*n+e*e),r=t(i),u=I(r),o=L(r);return[ct(n*u,i*o),tt(i&&e*u/i)]}}function an(t,n){return[t,ye(me(($+n)/2))]}an.invert=function(t,n){return[t,2*xn(ge(n))-$]};function He(){return We(an).scale(961/j)}function We(t){var n=Vt(t),e=n.center,i=n.scale,r=n.translate,u=n.clipExtent,o=null,f,p,c;n.scale=function(s){return arguments.length?(i(s),a()):i()},n.translate=function(s){return arguments.length?(r(s),a()):r()},n.center=function(s){return arguments.length?(e(s),a()):e()},n.clipExtent=function(s){return arguments.length?(s==null?o=f=p=c=null:(o=+s[0][0],f=+s[0][1],p=+s[1][0],c=+s[1][1]),a()):o==null?null:[[o,f],[p,c]]};function a(){var s=x*i(),l=n(_e(n.rotate()).invert([0,0]));return u(o==null?[[l[0]-s,l[1]-s],[l[0]+s,l[1]+s]]:t===an?[[Math.max(l[0]-s,o),f],[Math.min(l[0]+s,p),c]]:[[o,Math.max(l[1]-s,f)],[p,Math.min(l[1]+s,c)]])}return a()}var yt=1.340264,mt=-.081106,wt=893e-6,dt=.003796,It=lt(3)/2,Ke=12;function Hn(t,n){var e=tt(It*I(n)),i=e*e,r=i*i*i;return[t*L(e)/(It*(yt+3*mt*i+r*(7*wt+9*dt*i))),e*(yt+mt*i+r*(wt+dt*i))]}Hn.invert=function(t,n){for(var e=n,i=e*e,r=i*i*i,u=0,o,f,p;u<Ke&&(f=e*(yt+mt*i+r*(wt+dt*i))-n,p=yt+3*mt*i+r*(7*wt+9*dt*i),e-=o=f/p,i=e*e,r=i*i*i,!(O(o)<Yn));++u);return[It*t*(yt+3*mt*i+r*(7*wt+9*dt*i))/L(e),tt(I(e)/It)]};function Qe(){return Vt(Hn).scale(177.158)}function Wn(t,n){var e=n*n,i=e*e;return[t*(.8707-.131979*e+i*(-.013791+i*(.003971*e-.001529*i))),n*(1.007226+e*(.015085+i*(-.044475+.028874*e-.005916*i)))]}Wn.invert=function(t,n){var e=n,i=25,r;do{var u=e*e,o=u*u;e-=r=(e*(1.007226+u*(.015085+o*(-.044475+.028874*u-.005916*o)))-n)/(1.007226+u*(.015085*3+o*(-.044475*7+.028874*9*u-.005916*11*o)))}while(O(r)>k&&--i>0);return[t/(.8707+(u=e*e)*(-.131979+u*(-.013791+u*u*u*(.003971-.001529*u)))),e]};function Ze(){return Vt(Wn).scale(175.295)}function Kn(t,n){return[L(n)*I(t),I(n)]}Kn.invert=Be(tt);function $e(){return Vt(Kn).scale(249.5).clipAngle(90+k)}const jt={capture:!0,passive:!1};function bt(t){t.preventDefault(),t.stopImmediatePropagation()}function Je(t){var n=t.document.documentElement,e=H.select(t).on("dragstart.drag",bt,jt);"onselectstart"in n?e.on("selectstart.drag",bt,jt):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function je(t,n){var e=t.document.documentElement,i=H.select(t).on("dragstart.drag",null);n&&(i.on("click.drag",bt,jt),setTimeout(function(){i.on("click.drag",null)},0)),"onselectstart"in e?i.on("selectstart.drag",null):(e.style.MozUserSelect=e.__noselect,delete e.__noselect)}var be=Et.dispatch("start","end","cancel","interrupt"),ti=[],Qn=0,Rn=1,tn=2,Ct=3,Cn=4,nn=5,kt=6;function Gt(t,n,e,i,r,u){var o=t.__transition;if(!o)t.__transition={};else if(e in o)return;ni(t,e,{name:n,index:i,group:r,on:be,tween:ti,time:u.time,delay:u.delay,duration:u.duration,ease:u.ease,timer:null,state:Qn})}function ln(t,n){var e=nt(t,n);if(e.state>Qn)throw new Error("too late; already scheduled");return e}function et(t,n){var e=nt(t,n);if(e.state>Ct)throw new Error("too late; already running");return e}function nt(t,n){var e=t.__transition;if(!e||!(e=e[n]))throw new Error("transition not found");return e}function ni(t,n,e){var i=t.__transition,r;i[n]=e,e.timer=Et.timer(u,0,e.time);function u(c){e.state=Rn,e.timer.restart(o,e.delay,e.time),e.delay<=c&&o(c-e.delay)}function o(c){var a,s,l,h;if(e.state!==Rn)return p();for(a in i)if(h=i[a],h.name===e.name){if(h.state===Ct)return hn(o);h.state===Cn?(h.state=kt,h.timer.stop(),h.on.call("interrupt",t,t.__data__,h.index,h.group),delete i[a]):+a<n&&(h.state=kt,h.timer.stop(),h.on.call("cancel",t,t.__data__,h.index,h.group),delete i[a])}if(hn(function(){e.state===Ct&&(e.state=Cn,e.timer.restart(f,e.delay,e.time),f(c))}),e.state=tn,e.on.call("start",t,t.__data__,e.index,e.group),e.state===tn){for(e.state=Ct,r=new Array(l=e.tween.length),a=0,s=-1;a<l;++a)(h=e.tween[a].value.call(t,t.__data__,e.index,e.group))&&(r[++s]=h);r.length=s+1}}function f(c){for(var a=c<e.duration?e.ease.call(null,c/e.duration):(e.timer.restart(p),e.state=nn,1),s=-1,l=r.length;++s<l;)r[s].call(t,a);e.state===nn&&(e.on.call("end",t,t.__data__,e.index,e.group),p())}function p(){e.state=kt,e.timer.stop(),delete i[n];for(var c in i)return;delete t.__transition}}function Dt(t,n){var e=t.__transition,i,r,u=!0,o;if(e){n=n==null?null:n+"";for(o in e){if((i=e[o]).name!==n){u=!1;continue}r=i.state>tn&&i.state<nn,i.state=kt,i.timer.stop(),i.on.call(r?"interrupt":"cancel",t,t.__data__,i.index,i.group),delete e[o]}u&&delete t.__transition}}function ei(t){return this.each(function(){Dt(this,t)})}function ii(t,n){var e,i;return function(){var r=et(this,t),u=r.tween;if(u!==e){i=e=u;for(var o=0,f=i.length;o<f;++o)if(i[o].name===n){i=i.slice(),i.splice(o,1);break}}r.tween=i}}function ri(t,n,e){var i,r;if(typeof e!="function")throw new Error;return function(){var u=et(this,t),o=u.tween;if(o!==i){r=(i=o).slice();for(var f={name:n,value:e},p=0,c=r.length;p<c;++p)if(r[p].name===n){r[p]=f;break}p===c&&r.push(f)}u.tween=r}}function oi(t,n){var e=this._id;if(t+="",arguments.length<2){for(var i=nt(this.node(),e).tween,r=0,u=i.length,o;r<u;++r)if((o=i[r]).name===t)return o.value;return null}return this.each((n==null?ii:ri)(e,t,n))}function sn(t,n,e){var i=t._id;return t.each(function(){var r=et(this,i);(r.value||(r.value={}))[n]=e.apply(this,arguments)}),function(r){return nt(r,i).value[n]}}function Zn(t,n){var e;return(typeof n=="number"?J.interpolateNumber:n instanceof J.color?J.interpolateRgb:(e=J.color(n))?(n=e,J.interpolateRgb):J.interpolateString)(t,n)}function ui(t){return function(){this.removeAttribute(t)}}function ai(t){return function(){this.removeAttributeNS(t.space,t.local)}}function li(t,n,e){var i,r=e+"",u;return function(){var o=this.getAttribute(t);return o===r?null:o===i?u:u=n(i=o,e)}}function si(t,n,e){var i,r=e+"",u;return function(){var o=this.getAttributeNS(t.space,t.local);return o===r?null:o===i?u:u=n(i=o,e)}}function ci(t,n,e){var i,r,u;return function(){var o,f=e(this),p;return f==null?void this.removeAttribute(t):(o=this.getAttribute(t),p=f+"",o===p?null:o===i&&p===r?u:(r=p,u=n(i=o,f)))}}function fi(t,n,e){var i,r,u;return function(){var o,f=e(this),p;return f==null?void this.removeAttributeNS(t.space,t.local):(o=this.getAttributeNS(t.space,t.local),p=f+"",o===p?null:o===i&&p===r?u:(r=p,u=n(i=o,f)))}}function hi(t,n){var e=H.namespace(t),i=e==="transform"?re:Zn;return this.attrTween(t,typeof n=="function"?(e.local?fi:ci)(e,i,sn(this,"attr."+t,n)):n==null?(e.local?ai:ui)(e):(e.local?si:li)(e,i,n))}function pi(t,n){return function(e){this.setAttribute(t,n.call(this,e))}}function vi(t,n){return function(e){this.setAttributeNS(t.space,t.local,n.call(this,e))}}function gi(t,n){var e,i;function r(){var u=n.apply(this,arguments);return u!==i&&(e=(i=u)&&vi(t,u)),e}return r._value=n,r}function yi(t,n){var e,i;function r(){var u=n.apply(this,arguments);return u!==i&&(e=(i=u)&&pi(t,u)),e}return r._value=n,r}function mi(t,n){var e="attr."+t;if(arguments.length<2)return(e=this.tween(e))&&e._value;if(n==null)return this.tween(e,null);if(typeof n!="function")throw new Error;var i=H.namespace(t);return this.tween(e,(i.local?gi:yi)(i,n))}function wi(t,n){return function(){ln(this,t).delay=+n.apply(this,arguments)}}function di(t,n){return n=+n,function(){ln(this,t).delay=n}}function _i(t){var n=this._id;return arguments.length?this.each((typeof t=="function"?wi:di)(n,t)):nt(this.node(),n).delay}function Ei(t,n){return function(){et(this,t).duration=+n.apply(this,arguments)}}function Si(t,n){return n=+n,function(){et(this,t).duration=n}}function Mi(t){var n=this._id;return arguments.length?this.each((typeof t=="function"?Ei:Si)(n,t)):nt(this.node(),n).duration}function zi(t,n){if(typeof n!="function")throw new Error;return function(){et(this,t).ease=n}}function Ti(t){var n=this._id;return arguments.length?this.each(zi(n,t)):nt(this.node(),n).ease}function Ai(t,n){return function(){var e=n.apply(this,arguments);if(typeof e!="function")throw new Error;et(this,t).ease=e}}function Ni(t){if(typeof t!="function")throw new Error;return this.each(Ai(this._id,t))}function Pi(t){typeof t!="function"&&(t=H.matcher(t));for(var n=this._groups,e=n.length,i=new Array(e),r=0;r<e;++r)for(var u=n[r],o=u.length,f=i[r]=[],p,c=0;c<o;++c)(p=u[c])&&t.call(p,p.__data__,c,u)&&f.push(p);return new at(i,this._parents,this._name,this._id)}function Ri(t){if(t._id!==this._id)throw new Error;for(var n=this._groups,e=t._groups,i=n.length,r=e.length,u=Math.min(i,r),o=new Array(i),f=0;f<u;++f)for(var p=n[f],c=e[f],a=p.length,s=o[f]=new Array(a),l,h=0;h<a;++h)(l=p[h]||c[h])&&(s[h]=l);for(;f<i;++f)o[f]=n[f];return new at(o,this._parents,this._name,this._id)}function Ci(t){return(t+"").trim().split(/^|\s+/).every(function(n){var e=n.indexOf(".");return e>=0&&(n=n.slice(0,e)),!n||n==="start"})}function ki(t,n,e){var i,r,u=Ci(n)?ln:et;return function(){var o=u(this,t),f=o.on;f!==i&&(r=(i=f).copy()).on(n,e),o.on=r}}function Di(t,n){var e=this._id;return arguments.length<2?nt(this.node(),e).on.on(t):this.each(ki(e,t,n))}function Xi(t){return function(){var n=this.parentNode;for(var e in this.__transition)if(+e!==t)return;n&&n.removeChild(this)}}function qi(){return this.on("end.remove",Xi(this._id))}function Yi(t){var n=this._name,e=this._id;typeof t!="function"&&(t=H.selector(t));for(var i=this._groups,r=i.length,u=new Array(r),o=0;o<r;++o)for(var f=i[o],p=f.length,c=u[o]=new Array(p),a,s,l=0;l<p;++l)(a=f[l])&&(s=t.call(a,a.__data__,l,f))&&("__data__"in a&&(s.__data__=a.__data__),c[l]=s,Gt(c[l],n,e,l,c,nt(a,e)));return new at(u,this._parents,n,e)}function xi(t){var n=this._name,e=this._id;typeof t!="function"&&(t=H.selectorAll(t));for(var i=this._groups,r=i.length,u=[],o=[],f=0;f<r;++f)for(var p=i[f],c=p.length,a,s=0;s<c;++s)if(a=p[s]){for(var l=t.call(a,a.__data__,s,p),h,m=nt(a,e),d=0,_=l.length;d<_;++d)(h=l[d])&&Gt(h,n,e,d,l,m);u.push(l),o.push(a)}return new at(u,o,n,e)}var Ii=H.selection.prototype.constructor;function Vi(){return new Ii(this._groups,this._parents)}function Gi(t,n){var e,i,r;return function(){var u=H.styleValue(this,t),o=(this.style.removeProperty(t),H.styleValue(this,t));return u===o?null:u===e&&o===i?r:r=n(e=u,i=o)}}function $n(t){return function(){this.style.removeProperty(t)}}function Li(t,n,e){var i,r=e+"",u;return function(){var o=H.styleValue(this,t);return o===r?null:o===i?u:u=n(i=o,e)}}function Oi(t,n,e){var i,r,u;return function(){var o=H.styleValue(this,t),f=e(this),p=f+"";return f==null&&(p=f=(this.style.removeProperty(t),H.styleValue(this,t))),o===p?null:o===i&&p===r?u:(r=p,u=n(i=o,f))}}function Fi(t,n){var e,i,r,u="style."+n,o="end."+u,f;return function(){var p=et(this,t),c=p.on,a=p.value[u]==null?f||(f=$n(n)):void 0;(c!==e||r!==a)&&(i=(e=c).copy()).on(o,r=a),p.on=i}}function Ui(t,n,e){var i=(t+="")=="transform"?ie:Zn;return n==null?this.styleTween(t,Gi(t,i)).on("end.style."+t,$n(t)):typeof n=="function"?this.styleTween(t,Oi(t,i,sn(this,"style."+t,n))).each(Fi(this._id,t)):this.styleTween(t,Li(t,i,n),e).on("end.style."+t,null)}function Bi(t,n,e){return function(i){this.style.setProperty(t,n.call(this,i),e)}}function Hi(t,n,e){var i,r;function u(){var o=n.apply(this,arguments);return o!==r&&(i=(r=o)&&Bi(t,o,e)),i}return u._value=n,u}function Wi(t,n,e){var i="style."+(t+="");if(arguments.length<2)return(i=this.tween(i))&&i._value;if(n==null)return this.tween(i,null);if(typeof n!="function")throw new Error;return this.tween(i,Hi(t,n,e??""))}function Ki(t){return function(){this.textContent=t}}function Qi(t){return function(){var n=t(this);this.textContent=n??""}}function Zi(t){return this.tween("text",typeof t=="function"?Qi(sn(this,"text",t)):Ki(t==null?"":t+""))}function $i(t){return function(n){this.textContent=t.call(this,n)}}function Ji(t){var n,e;function i(){var r=t.apply(this,arguments);return r!==e&&(n=(e=r)&&$i(r)),n}return i._value=t,i}function ji(t){var n="text";if(arguments.length<1)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!="function")throw new Error;return this.tween(n,Ji(t))}function bi(){for(var t=this._name,n=this._id,e=Jn(),i=this._groups,r=i.length,u=0;u<r;++u)for(var o=i[u],f=o.length,p,c=0;c<f;++c)if(p=o[c]){var a=nt(p,n);Gt(p,t,e,c,o,{time:a.time+a.delay+a.duration,delay:0,duration:a.duration,ease:a.ease})}return new at(i,this._parents,t,e)}function tr(){var t,n,e=this,i=e._id,r=e.size();return new Promise(function(u,o){var f={value:o},p={value:function(){--r===0&&u()}};e.each(function(){var c=et(this,i),a=c.on;a!==t&&(n=(t=a).copy(),n._.cancel.push(f),n._.interrupt.push(f),n._.end.push(p)),c.on=n}),r===0&&u()})}var nr=0;function at(t,n,e,i){this._groups=t,this._parents=n,this._name=e,this._id=i}function Jn(){return++nr}var ot=H.selection.prototype;at.prototype={constructor:at,select:Yi,selectAll:xi,selectChild:ot.selectChild,selectChildren:ot.selectChildren,filter:Pi,merge:Ri,selection:Vi,transition:bi,call:ot.call,nodes:ot.nodes,node:ot.node,size:ot.size,empty:ot.empty,each:ot.each,on:Di,attr:hi,attrTween:mi,style:Ui,styleTween:Wi,text:Zi,textTween:ji,remove:qi,tween:oi,delay:_i,duration:Mi,ease:Ti,easeVarying:Ni,end:tr,[Symbol.iterator]:ot[Symbol.iterator]};function er(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var ir={time:null,delay:0,duration:250,ease:er};function rr(t,n){for(var e;!(e=t.__transition)||!(e=e[n]);)if(!(t=t.parentNode))throw new Error(`transition ${n} not found`);return e}function or(t){var n,e;t instanceof at?(n=t._id,t=t._name):(n=Jn(),(e=ir).time=Et.now(),t=t==null?null:t+"");for(var i=this._groups,r=i.length,u=0;u<r;++u)for(var o=i[u],f=o.length,p,c=0;c<f;++c)(p=o[c])&&Gt(p,t,n,c,o,e||rr(p,n));return new at(i,this._parents,t,n)}H.selection.prototype.interrupt=ei;H.selection.prototype.transition=or;const Nt=t=>()=>t;function ur(t,{sourceEvent:n,target:e,transform:i,dispatch:r}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},target:{value:e,enumerable:!0,configurable:!0},transform:{value:i,enumerable:!0,configurable:!0},_:{value:r}})}function ut(t,n,e){this.k=t,this.x=n,this.y=e}ut.prototype={constructor:ut,scale:function(t){return t===1?this:new ut(this.k*t,this.x,this.y)},translate:function(t,n){return t===0&n===0?this:new ut(this.k,this.x+this.k*t,this.y+this.k*n)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var jn=new ut(1,0,0);ut.prototype;function Ut(t){t.stopImmediatePropagation()}function pt(t){t.preventDefault(),t.stopImmediatePropagation()}function ar(t){return(!t.ctrlKey||t.type==="wheel")&&!t.button}function lr(){var t=this;return t instanceof SVGElement?(t=t.ownerSVGElement||t,t.hasAttribute("viewBox")?(t=t.viewBox.baseVal,[[t.x,t.y],[t.x+t.width,t.y+t.height]]):[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]):[[0,0],[t.clientWidth,t.clientHeight]]}function kn(){return this.__zoom||jn}function sr(t){return-t.deltaY*(t.deltaMode===1?.05:t.deltaMode?1:.002)*(t.ctrlKey?10:1)}function cr(){return navigator.maxTouchPoints||"ontouchstart"in this}function fr(t,n,e){var i=t.invertX(n[0][0])-e[0][0],r=t.invertX(n[1][0])-e[1][0],u=t.invertY(n[0][1])-e[0][1],o=t.invertY(n[1][1])-e[1][1];return t.translate(r>i?(i+r)/2:Math.min(0,i)||Math.max(0,r),o>u?(u+o)/2:Math.min(0,u)||Math.max(0,o))}function hr(){var t=ar,n=lr,e=fr,i=sr,r=cr,u=[0,1/0],o=[[-1/0,-1/0],[1/0,1/0]],f=250,p=le,c=Et.dispatch("start","zoom","end"),a,s,l,h=500,m=150,d=0,_=10;function w(v){v.property("__zoom",kn).on("wheel.zoom",X,{passive:!1}).on("mousedown.zoom",q).on("dblclick.zoom",V).filter(r).on("touchstart.zoom",R).on("touchmove.zoom",Q).on("touchend.zoom touchcancel.zoom",F).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}w.transform=function(v,g,y,E){var A=v.selection?v.selection():v;A.property("__zoom",kn),v!==A?T(v,g,y,E):A.interrupt().each(function(){N(this,arguments).event(E).start().zoom(null,typeof g=="function"?g.apply(this,arguments):g).end()})},w.scaleBy=function(v,g,y,E){w.scaleTo(v,function(){var A=this.__zoom.k,P=typeof g=="function"?g.apply(this,arguments):g;return A*P},y,E)},w.scaleTo=function(v,g,y,E){w.transform(v,function(){var A=n.apply(this,arguments),P=this.__zoom,C=y==null?S(A):typeof y=="function"?y.apply(this,arguments):y,Y=P.invert(C),G=typeof g=="function"?g.apply(this,arguments):g;return e(M(z(P,G),C,Y),A,o)},y,E)},w.translateBy=function(v,g,y,E){w.transform(v,function(){return e(this.__zoom.translate(typeof g=="function"?g.apply(this,arguments):g,typeof y=="function"?y.apply(this,arguments):y),n.apply(this,arguments),o)},null,E)},w.translateTo=function(v,g,y,E,A){w.transform(v,function(){var P=n.apply(this,arguments),C=this.__zoom,Y=E==null?S(P):typeof E=="function"?E.apply(this,arguments):E;return e(jn.translate(Y[0],Y[1]).scale(C.k).translate(typeof g=="function"?-g.apply(this,arguments):-g,typeof y=="function"?-y.apply(this,arguments):-y),P,o)},E,A)};function z(v,g){return g=Math.max(u[0],Math.min(u[1],g)),g===v.k?v:new ut(g,v.x,v.y)}function M(v,g,y){var E=g[0]-y[0]*v.k,A=g[1]-y[1]*v.k;return E===v.x&&A===v.y?v:new ut(v.k,E,A)}function S(v){return[(+v[0][0]+ +v[1][0])/2,(+v[0][1]+ +v[1][1])/2]}function T(v,g,y,E){v.on("start.zoom",function(){N(this,arguments).event(E).start()}).on("interrupt.zoom end.zoom",function(){N(this,arguments).event(E).end()}).tween("zoom",function(){var A=this,P=arguments,C=N(A,P).event(E),Y=n.apply(A,P),G=y==null?S(Y):typeof y=="function"?y.apply(A,P):y,W=Math.max(Y[1][0]-Y[0][0],Y[1][1]-Y[0][1]),U=A.__zoom,K=typeof g=="function"?g.apply(A,P):g,it=p(U.invert(G).concat(W/U.k),K.invert(G).concat(W/K.k));return function(b){if(b===1)b=K;else{var rt=it(b),Lt=W/rt[2];b=new ut(Lt,G[0]-rt[0]*Lt,G[1]-rt[1]*Lt)}C.zoom(null,b)}})}function N(v,g,y){return!y&&v.__zooming||new D(v,g)}function D(v,g){this.that=v,this.args=g,this.active=0,this.sourceEvent=null,this.extent=n.apply(v,g),this.taps=0}D.prototype={event:function(v){return v&&(this.sourceEvent=v),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(v,g){return this.mouse&&v!=="mouse"&&(this.mouse[1]=g.invert(this.mouse[0])),this.touch0&&v!=="touch"&&(this.touch0[1]=g.invert(this.touch0[0])),this.touch1&&v!=="touch"&&(this.touch1[1]=g.invert(this.touch1[0])),this.that.__zoom=g,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(v){var g=H.select(this.that).datum();c.call(v,this.that,new ur(v,{sourceEvent:this.sourceEvent,target:w,transform:this.that.__zoom,dispatch:c}),g)}};function X(v,...g){if(!t.apply(this,arguments))return;var y=N(this,g).event(v),E=this.__zoom,A=Math.max(u[0],Math.min(u[1],E.k*Math.pow(2,i.apply(this,arguments)))),P=st.pointer(v);if(y.wheel)(y.mouse[0][0]!==P[0]||y.mouse[0][1]!==P[1])&&(y.mouse[1]=E.invert(y.mouse[0]=P)),clearTimeout(y.wheel);else{if(E.k===A)return;y.mouse=[P,E.invert(P)],Dt(this),y.start()}pt(v),y.wheel=setTimeout(C,m),y.zoom("mouse",e(M(z(E,A),y.mouse[0],y.mouse[1]),y.extent,o));function C(){y.wheel=null,y.end()}}function q(v,...g){if(l||!t.apply(this,arguments))return;var y=v.currentTarget,E=N(this,g,!0).event(v),A=H.select(v.view).on("mousemove.zoom",G,!0).on("mouseup.zoom",W,!0),P=st.pointer(v,y),C=v.clientX,Y=v.clientY;Je(v.view),Ut(v),E.mouse=[P,this.__zoom.invert(P)],Dt(this),E.start();function G(U){if(pt(U),!E.moved){var K=U.clientX-C,it=U.clientY-Y;E.moved=K*K+it*it>d}E.event(U).zoom("mouse",e(M(E.that.__zoom,E.mouse[0]=st.pointer(U,y),E.mouse[1]),E.extent,o))}function W(U){A.on("mousemove.zoom mouseup.zoom",null),je(U.view,E.moved),pt(U),E.event(U).end()}}function V(v,...g){if(t.apply(this,arguments)){var y=this.__zoom,E=st.pointer(v.changedTouches?v.changedTouches[0]:v,this),A=y.invert(E),P=y.k*(v.shiftKey?.5:2),C=e(M(z(y,P),E,A),n.apply(this,g),o);pt(v),f>0?H.select(this).transition().duration(f).call(T,C,E,v):H.select(this).call(w.transform,C,E,v)}}function R(v,...g){if(t.apply(this,arguments)){var y=v.touches,E=y.length,A=N(this,g,v.changedTouches.length===E).event(v),P,C,Y,G;for(Ut(v),C=0;C<E;++C)Y=y[C],G=st.pointer(Y,this),G=[G,this.__zoom.invert(G),Y.identifier],A.touch0?!A.touch1&&A.touch0[2]!==G[2]&&(A.touch1=G,A.taps=0):(A.touch0=G,P=!0,A.taps=1+!!a);a&&(a=clearTimeout(a)),P&&(A.taps<2&&(s=G[0],a=setTimeout(function(){a=null},h)),Dt(this),A.start())}}function Q(v,...g){if(this.__zooming){var y=N(this,g).event(v),E=v.changedTouches,A=E.length,P,C,Y,G;for(pt(v),P=0;P<A;++P)C=E[P],Y=st.pointer(C,this),y.touch0&&y.touch0[2]===C.identifier?y.touch0[0]=Y:y.touch1&&y.touch1[2]===C.identifier&&(y.touch1[0]=Y);if(C=y.that.__zoom,y.touch1){var W=y.touch0[0],U=y.touch0[1],K=y.touch1[0],it=y.touch1[1],b=(b=K[0]-W[0])*b+(b=K[1]-W[1])*b,rt=(rt=it[0]-U[0])*rt+(rt=it[1]-U[1])*rt;C=z(C,Math.sqrt(b/rt)),Y=[(W[0]+K[0])/2,(W[1]+K[1])/2],G=[(U[0]+it[0])/2,(U[1]+it[1])/2]}else if(y.touch0)Y=y.touch0[0],G=y.touch0[1];else return;y.zoom("touch",e(M(C,Y,G),y.extent,o))}}function F(v,...g){if(this.__zooming){var y=N(this,g).event(v),E=v.changedTouches,A=E.length,P,C;for(Ut(v),l&&clearTimeout(l),l=setTimeout(function(){l=null},h),P=0;P<A;++P)C=E[P],y.touch0&&y.touch0[2]===C.identifier?delete y.touch0:y.touch1&&y.touch1[2]===C.identifier&&delete y.touch1;if(y.touch1&&!y.touch0&&(y.touch0=y.touch1,delete y.touch1),y.touch0)y.touch0[1]=this.__zoom.invert(y.touch0[0]);else if(y.end(),y.taps===2&&(C=st.pointer(C,this),Math.hypot(s[0]-C[0],s[1]-C[1])<_)){var Y=H.select(this).on("dblclick.zoom");Y&&Y.apply(this,arguments)}}}return w.wheelDelta=function(v){return arguments.length?(i=typeof v=="function"?v:Nt(+v),w):i},w.filter=function(v){return arguments.length?(t=typeof v=="function"?v:Nt(!!v),w):t},w.touchable=function(v){return arguments.length?(r=typeof v=="function"?v:Nt(!!v),w):r},w.extent=function(v){return arguments.length?(n=typeof v=="function"?v:Nt([[+v[0][0],+v[0][1]],[+v[1][0],+v[1][1]]]),w):n},w.scaleExtent=function(v){return arguments.length?(u[0]=+v[0],u[1]=+v[1],w):[u[0],u[1]]},w.translateExtent=function(v){return arguments.length?(o[0][0]=+v[0][0],o[1][0]=+v[1][0],o[0][1]=+v[0][1],o[1][1]=+v[1][1],w):[[o[0][0],o[0][1]],[o[1][0],o[1][1]]]},w.constrain=function(v){return arguments.length?(e=v,w):e},w.duration=function(v){return arguments.length?(f=+v,w):f},w.interpolate=function(v){return arguments.length?(p=v,w):p},w.on=function(){var v=c.on.apply(c,arguments);return v===c?w:v},w.clickDistance=function(v){return arguments.length?(d=(v=+v)*v,w):Math.sqrt(d)},w.tapDistance=function(v){return arguments.length?(_=+v,w):_},w}exports.geoAlbersUsa=Ue;exports.geoEqualEarth=Qe;exports.geoMercator=He;exports.geoNaturalEarth1=Ze;exports.geoOrthographic=$e;exports.turf_bbox_default=he;exports.turf_centroid_default=ve;exports.zoom=hr;
2
+ //# sourceMappingURL=zoom-Lo7IAUfC.cjs.map