@kenyaemr/esm-express-workflow-app 5.4.4-pre.4 → 5.4.4-pre.401

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 (481) hide show
  1. package/.turbo/turbo-build.log +13 -11
  2. package/dist/1074.js +1 -0
  3. package/dist/1074.js.map +1 -0
  4. package/dist/1084.js +1 -0
  5. package/dist/1084.js.map +1 -0
  6. package/dist/12.js +17 -0
  7. package/dist/12.js.map +1 -0
  8. package/dist/126.js +1 -0
  9. package/dist/126.js.map +1 -0
  10. package/dist/1311.js +1 -0
  11. package/dist/1311.js.map +1 -0
  12. package/dist/1323.js +1 -0
  13. package/dist/1323.js.map +1 -0
  14. package/dist/1469.js +1 -0
  15. package/dist/1469.js.map +1 -0
  16. package/dist/1506.js +13 -0
  17. package/dist/1506.js.map +1 -0
  18. package/dist/1760.js +1 -0
  19. package/dist/1760.js.map +1 -0
  20. package/dist/1780.js +1 -0
  21. package/dist/1780.js.map +1 -0
  22. package/dist/1791.js +1 -0
  23. package/dist/1791.js.map +1 -0
  24. package/dist/1884.js +1 -0
  25. package/dist/1884.js.map +1 -0
  26. package/dist/1972.js +1 -0
  27. package/dist/1972.js.map +1 -0
  28. package/dist/1990.js +1 -0
  29. package/dist/1990.js.map +1 -0
  30. package/dist/2016.js +1 -0
  31. package/dist/2016.js.map +1 -0
  32. package/dist/2024.js +1 -0
  33. package/dist/2024.js.map +1 -0
  34. package/dist/2153.js +1 -0
  35. package/dist/2153.js.map +1 -0
  36. package/dist/216.js +1 -0
  37. package/dist/216.js.map +1 -0
  38. package/dist/2225.js +1 -0
  39. package/dist/2225.js.map +1 -0
  40. package/dist/2294.js +1 -0
  41. package/dist/2294.js.map +1 -0
  42. package/dist/2345.js +1 -0
  43. package/dist/2345.js.map +1 -0
  44. package/dist/2386.js +1 -0
  45. package/dist/2386.js.map +1 -0
  46. package/dist/2438.js +1 -0
  47. package/dist/2438.js.map +1 -0
  48. package/dist/2499.js +1 -0
  49. package/dist/2499.js.map +1 -0
  50. package/dist/2500.js +1 -0
  51. package/dist/2500.js.map +1 -0
  52. package/dist/2586.js +1 -0
  53. package/dist/2586.js.map +1 -0
  54. package/dist/2625.js +1 -0
  55. package/dist/2625.js.map +1 -0
  56. package/dist/2685.js +1 -0
  57. package/dist/2685.js.map +1 -0
  58. package/dist/2757.js +1 -0
  59. package/dist/2757.js.map +1 -0
  60. package/dist/2851.js +1 -0
  61. package/dist/2851.js.map +1 -0
  62. package/dist/2881.js +1 -0
  63. package/dist/2881.js.map +1 -0
  64. package/dist/2948.js +1 -0
  65. package/dist/2948.js.map +1 -0
  66. package/dist/2968.js +1 -0
  67. package/dist/2968.js.map +1 -0
  68. package/dist/2998.js +1 -0
  69. package/dist/2998.js.map +1 -0
  70. package/dist/30.js +1 -0
  71. package/dist/30.js.map +1 -0
  72. package/dist/3089.js +1 -0
  73. package/dist/3089.js.map +1 -0
  74. package/dist/3139.js +1 -0
  75. package/dist/3139.js.map +1 -0
  76. package/dist/3220.js +1 -0
  77. package/dist/3220.js.map +1 -0
  78. package/dist/3265.js +1 -0
  79. package/dist/3265.js.map +1 -0
  80. package/dist/3548.js +1 -0
  81. package/dist/3548.js.map +1 -0
  82. package/dist/3567.js +1 -0
  83. package/dist/3567.js.map +1 -0
  84. package/dist/3571.js +1 -0
  85. package/dist/3571.js.map +1 -0
  86. package/dist/3691.js +1 -0
  87. package/dist/3691.js.map +1 -0
  88. package/dist/3730.js +1 -0
  89. package/dist/3730.js.map +1 -0
  90. package/dist/3923.js +1 -0
  91. package/dist/3923.js.map +1 -0
  92. package/dist/3963.js +1 -0
  93. package/dist/3963.js.map +1 -0
  94. package/dist/4024.js +1 -0
  95. package/dist/4024.js.map +1 -0
  96. package/dist/405.js +1 -0
  97. package/dist/405.js.map +1 -0
  98. package/dist/4296.js +1 -0
  99. package/dist/4296.js.map +1 -0
  100. package/dist/4504.js +1 -0
  101. package/dist/4504.js.map +1 -0
  102. package/dist/4564.js +1 -0
  103. package/dist/4564.js.map +1 -0
  104. package/dist/4581.js +1 -0
  105. package/dist/4581.js.map +1 -0
  106. package/dist/4670.js +1 -0
  107. package/dist/4670.js.map +1 -0
  108. package/dist/4680.js +1 -0
  109. package/dist/4680.js.map +1 -0
  110. package/dist/4682.js +1 -0
  111. package/dist/4682.js.map +1 -0
  112. package/dist/4735.js +1 -0
  113. package/dist/4735.js.map +1 -0
  114. package/dist/4737.js +1 -0
  115. package/dist/4737.js.map +1 -0
  116. package/dist/4744.js +1 -0
  117. package/dist/4744.js.map +1 -0
  118. package/dist/4795.js +1 -0
  119. package/dist/4795.js.map +1 -0
  120. package/dist/4813.js +2 -0
  121. package/dist/4813.js.map +1 -0
  122. package/dist/4818.js +1 -0
  123. package/dist/4818.js.map +1 -0
  124. package/dist/4858.js +1 -0
  125. package/dist/4858.js.map +1 -0
  126. package/dist/487.js +1 -0
  127. package/dist/487.js.map +1 -0
  128. package/dist/4970.js +1 -0
  129. package/dist/4970.js.map +1 -0
  130. package/dist/5047.js +1 -0
  131. package/dist/5047.js.map +1 -0
  132. package/dist/5054.js +1 -0
  133. package/dist/5054.js.map +1 -0
  134. package/dist/5202.js +1 -0
  135. package/dist/5202.js.map +1 -0
  136. package/dist/5491.js +1 -0
  137. package/dist/5491.js.map +1 -0
  138. package/dist/5592.js +1 -0
  139. package/dist/5592.js.map +1 -0
  140. package/dist/5669.js +1 -0
  141. package/dist/5669.js.map +1 -0
  142. package/dist/5787.js +1 -0
  143. package/dist/5787.js.map +1 -0
  144. package/dist/586.js +1 -0
  145. package/dist/586.js.map +1 -0
  146. package/dist/5879.js +1 -0
  147. package/dist/5879.js.map +1 -0
  148. package/dist/5904.js +1 -0
  149. package/dist/5904.js.map +1 -0
  150. package/dist/5986.js +1 -0
  151. package/dist/5986.js.map +1 -0
  152. package/dist/6007.js +11 -0
  153. package/dist/6007.js.map +1 -0
  154. package/dist/6075.js +1 -0
  155. package/dist/6075.js.map +1 -0
  156. package/dist/6258.js +1 -0
  157. package/dist/6258.js.map +1 -0
  158. package/dist/629.js +1 -0
  159. package/dist/629.js.map +1 -0
  160. package/dist/6328.js +1 -0
  161. package/dist/6328.js.map +1 -0
  162. package/dist/6355.js +1 -0
  163. package/dist/6355.js.map +1 -0
  164. package/dist/64.js +1 -0
  165. package/dist/64.js.map +1 -0
  166. package/dist/6445.js +1 -0
  167. package/dist/6445.js.map +1 -0
  168. package/dist/6456.js +1 -0
  169. package/dist/6466.js +3 -0
  170. package/dist/6466.js.map +1 -0
  171. package/dist/6663.js +1 -0
  172. package/dist/6663.js.map +1 -0
  173. package/dist/6720.js +1 -0
  174. package/dist/6720.js.map +1 -0
  175. package/dist/6798.js +66 -0
  176. package/dist/6798.js.map +1 -0
  177. package/dist/6925.js +1 -0
  178. package/dist/6925.js.map +1 -0
  179. package/dist/7201.js +1 -0
  180. package/dist/7201.js.map +1 -0
  181. package/dist/7234.js +1 -0
  182. package/dist/7234.js.map +1 -0
  183. package/dist/7261.js +1 -0
  184. package/dist/7261.js.map +1 -0
  185. package/dist/7326.js +1 -0
  186. package/dist/7359.js +1 -0
  187. package/dist/7405.js +1 -0
  188. package/dist/7405.js.map +1 -0
  189. package/dist/7591.js +1 -0
  190. package/dist/7591.js.map +1 -0
  191. package/dist/7602.js +1 -0
  192. package/dist/7602.js.map +1 -0
  193. package/dist/7607.js +1 -0
  194. package/dist/7701.js +1 -0
  195. package/dist/7701.js.map +1 -0
  196. package/dist/7717.js +1 -0
  197. package/dist/7717.js.map +1 -0
  198. package/dist/7739.js +1 -0
  199. package/dist/7739.js.map +1 -0
  200. package/dist/7788.js +1 -0
  201. package/dist/7788.js.map +1 -0
  202. package/dist/7819.js +1 -0
  203. package/dist/7819.js.map +1 -0
  204. package/dist/7820.js +1 -0
  205. package/dist/7820.js.map +1 -0
  206. package/dist/7844.js +1 -0
  207. package/dist/7844.js.map +1 -0
  208. package/dist/7971.js +1 -0
  209. package/dist/7971.js.map +1 -0
  210. package/dist/807.js +1 -0
  211. package/dist/807.js.map +1 -0
  212. package/dist/8159.js +7 -0
  213. package/dist/8159.js.map +1 -0
  214. package/dist/8338.js +1 -0
  215. package/dist/8338.js.map +1 -0
  216. package/dist/845.js +1 -0
  217. package/dist/845.js.map +1 -0
  218. package/dist/8566.js +1 -0
  219. package/dist/8566.js.map +1 -0
  220. package/dist/8570.js +1 -0
  221. package/dist/8570.js.map +1 -0
  222. package/dist/8613.js +1 -0
  223. package/dist/8613.js.map +1 -0
  224. package/dist/8682.js +1 -0
  225. package/dist/8682.js.map +1 -0
  226. package/dist/87.js +1 -0
  227. package/dist/87.js.map +1 -0
  228. package/dist/8727.js +1 -0
  229. package/dist/8766.js +1 -0
  230. package/dist/8766.js.map +1 -0
  231. package/dist/8799.js +1 -0
  232. package/dist/8799.js.map +1 -0
  233. package/dist/8828.js +1 -0
  234. package/dist/8828.js.map +1 -0
  235. package/dist/8860.js +1 -0
  236. package/dist/8860.js.map +1 -0
  237. package/dist/8911.js +1 -0
  238. package/dist/8911.js.map +1 -0
  239. package/dist/8930.js +1 -0
  240. package/dist/8930.js.map +1 -0
  241. package/dist/8971.js +1 -0
  242. package/dist/8971.js.map +1 -0
  243. package/dist/9011.js +1 -0
  244. package/dist/9011.js.map +1 -0
  245. package/dist/9111.js +1 -0
  246. package/dist/9111.js.map +1 -0
  247. package/dist/9124.js +1 -0
  248. package/dist/9124.js.map +1 -0
  249. package/dist/9157.js +1 -0
  250. package/dist/9157.js.map +1 -0
  251. package/dist/9161.js +1 -0
  252. package/dist/9161.js.map +1 -0
  253. package/dist/9182.js +1 -0
  254. package/dist/921.js +1 -0
  255. package/dist/921.js.map +1 -0
  256. package/dist/9212.js +1 -0
  257. package/dist/9212.js.map +1 -0
  258. package/dist/9255.js +1 -0
  259. package/dist/9255.js.map +1 -0
  260. package/dist/9257.js +1 -0
  261. package/dist/9257.js.map +1 -0
  262. package/dist/9343.js +1 -0
  263. package/dist/9343.js.map +1 -0
  264. package/dist/9404.js +1 -0
  265. package/dist/9404.js.map +1 -0
  266. package/dist/9446.js +1 -0
  267. package/dist/9446.js.map +1 -0
  268. package/dist/9449.js +1 -0
  269. package/dist/9449.js.map +1 -0
  270. package/dist/9488.js +1 -0
  271. package/dist/9488.js.map +1 -0
  272. package/dist/9514.js +1 -0
  273. package/dist/9514.js.map +1 -0
  274. package/dist/9528.js +1 -0
  275. package/dist/9528.js.map +1 -0
  276. package/dist/9535.js +1 -0
  277. package/dist/9535.js.map +1 -0
  278. package/dist/9606.js +1 -0
  279. package/dist/9606.js.map +1 -0
  280. package/dist/9834.js +1 -0
  281. package/dist/9834.js.map +1 -0
  282. package/dist/9845.js +1 -0
  283. package/dist/9845.js.map +1 -0
  284. package/dist/9848.js +1 -0
  285. package/dist/9848.js.map +1 -0
  286. package/dist/kenyaemr-esm-express-workflow-app.js +5 -5
  287. package/dist/kenyaemr-esm-express-workflow-app.js.buildmanifest.json +3395 -174
  288. package/dist/kenyaemr-esm-express-workflow-app.js.map +1 -1
  289. package/dist/main.js +7 -106
  290. package/dist/main.js.map +1 -1
  291. package/dist/routes.json +1 -1
  292. package/package.json +5 -7
  293. package/rspack.config.js +1 -1
  294. package/src/components/accounting/index.tsx +11 -10
  295. package/src/components/admissions/admissions-dashboard.component.tsx +2 -2
  296. package/src/components/admissions/index.tsx +11 -10
  297. package/src/components/anaesthetic/anaesthetic-dashboard.meta.ts +8 -0
  298. package/src/components/anaesthetic/anaesthetic-data-form.component.tsx +442 -0
  299. package/src/components/anaesthetic/anaesthetic-data-form.scss +278 -0
  300. package/src/components/anaesthetic/anaesthetic-link.component.tsx +21 -0
  301. package/src/components/anaesthetic/anaesthetic.component.tsx +618 -0
  302. package/src/components/anaesthetic/anaesthetic.resource.ts +1503 -0
  303. package/src/components/anaesthetic/anaesthetic.scss +1885 -0
  304. package/src/components/anaesthetic/forms/anaesthetic-form.component.tsx +304 -0
  305. package/src/components/anaesthetic/forms/anaesthetic-record-form.component.tsx +707 -0
  306. package/src/components/anaesthetic/forms/icd11-diagnosis-search.component.tsx +178 -0
  307. package/src/components/anaesthetic/forms/icd11-diagnosis-search.scss +126 -0
  308. package/src/components/anaesthetic/forms/index.ts +2 -0
  309. package/src/components/anaesthetic/forms/interoperative-record-drug-given-form.component.tsx +231 -0
  310. package/src/components/anaesthetic/forms/post-operative-summary-form.component.tsx +171 -0
  311. package/src/components/anaesthetic/forms/time-picker-dropdown.component.tsx +202 -0
  312. package/src/components/anaesthetic/forms/time-picker-dropdown.scss +107 -0
  313. package/src/components/anaesthetic/forms/time-picker-with-clock.component.tsx +174 -0
  314. package/src/components/anaesthetic/forms/time-picker-with-clock.scss +178 -0
  315. package/src/components/anaesthetic/forms/useAnaestheticData.ts +16 -0
  316. package/src/components/anaesthetic/graphs/anaesthetic-graph-wrapper.component.tsx +266 -0
  317. package/src/components/anaesthetic/graphs/anaesthetic-graph.component.tsx +185 -0
  318. package/src/components/anaesthetic/graphs/index.ts +2 -0
  319. package/src/components/anaesthetic/graphs/interoperative-record-drug-given-graph-wrapper.component.tsx +197 -0
  320. package/src/components/anaesthetic/graphs/interoperative-record-drug-given-graph.component.tsx +93 -0
  321. package/src/components/anaesthetic/resources/anaesthetic-amniotic-fluid.resource.ts +277 -0
  322. package/src/components/anaesthetic/resources/anaesthetic-form.resource.ts +716 -0
  323. package/src/components/anaesthetic/resources/anaesthetic.resource.ts +378 -0
  324. package/src/components/anaesthetic/types/index.ts +1349 -0
  325. package/src/components/appointments/index.ts +10 -8
  326. package/src/components/consultation/clinical-encounter/clinical-encounter.component.tsx +4 -20
  327. package/src/components/consultation/clinical-encounter/encounter-details.component.tsx +9 -9
  328. package/src/components/consultation/clinical-encounter/encounter-details.test.tsx +19 -18
  329. package/src/components/consultation/consultation-context.tsx +19 -0
  330. package/src/components/consultation/consultation-summary-cards.component.tsx +124 -0
  331. package/src/components/consultation/consultation.component.tsx +40 -131
  332. package/src/components/consultation/consultation.resource.ts +53 -20
  333. package/src/components/consultation/consultation.scss +5 -0
  334. package/src/components/consultation/consultation.utils.tsx +1 -1
  335. package/src/components/consultation/dashboard.component.tsx +0 -2
  336. package/src/components/consultation/index.ts +28 -21
  337. package/src/components/consultation/tabs/index.ts +67 -0
  338. package/src/components/facility-dashboard/index.tsx +10 -9
  339. package/src/components/laboratory/index.ts +22 -10
  340. package/src/components/laboratory/lab-table.component.tsx +40 -12
  341. package/src/components/laboratory/laboratory-tabs.component.tsx +3 -17
  342. package/src/components/mch/dashboard.component.tsx +0 -2
  343. package/src/components/mch/index.tsx +10 -9
  344. package/src/components/mch/mch.component.tsx +1 -3
  345. package/src/components/pharmacy/index.ts +21 -19
  346. package/src/components/pharmacy/orders/pharmacy-orders.component.tsx +35 -13
  347. package/src/components/pharmacy/orders/pharmacy-orders.test.tsx +8 -7
  348. package/src/components/pharmacy/pharmacy-tabs.component.tsx +4 -20
  349. package/src/components/pharmacy/tabs/index.ts +21 -0
  350. package/src/components/preauth/index.ts +22 -0
  351. package/src/components/preauth/preauth-dashboard.component.tsx +20 -0
  352. package/src/components/procedures/index.ts +27 -10
  353. package/src/components/procedures/procedure-queues/index.ts +13 -0
  354. package/src/components/procedures/procedure-queues/procedure-form-extras.component.tsx +33 -0
  355. package/src/components/procedures/procedure-queues/procedure-form-extras.scss +5 -0
  356. package/src/components/procedures/procedure-queues/procedure-queues.component.tsx +35 -0
  357. package/src/components/procedures/procedure-queues/procedure-queues.resources.ts +37 -0
  358. package/src/components/procedures/procedure-queues/procedure-room-tabs.component.tsx +80 -0
  359. package/src/components/procedures/procedure-queues/procedure-rooms.scss +13 -0
  360. package/src/components/procedures/procedure-queues/queue-procedure-tabs.component.tsx +34 -0
  361. package/src/components/procedures/procedure-queues/summary-cards.component.tsx +81 -0
  362. package/src/components/procedures/procedure-queues/summary-cards.scss +35 -0
  363. package/src/components/procedures/procedures-table.component.tsx +69 -19
  364. package/src/components/procedures/procedures-tabs.component.test.tsx +57 -0
  365. package/src/components/procedures/procedures-tabs.component.tsx +3 -18
  366. package/src/components/radiology-and-imaging/index.ts +25 -10
  367. package/src/components/radiology-and-imaging/radiology-and-imaging-table.component.tsx +62 -21
  368. package/src/components/radiology-and-imaging/radiology-and-imaging.component.tsx +3 -19
  369. package/src/components/registration/card/HIE-card/hie-card.component.tsx +32 -44
  370. package/src/components/registration/card/Local-card/local-card.component.tsx +22 -24
  371. package/src/components/registration/checkin-form-extra/checkin-form-extra.extension.tsx +8 -2
  372. package/src/components/registration/checkin-form-extra/queue-fields.component.tsx +18 -19
  373. package/src/components/registration/dependants/dependants.component.tsx +32 -60
  374. package/src/components/registration/dependants/dependants.resource.ts +79 -50
  375. package/src/components/registration/end-visit-modal/end-visit-dialog.modal.tsx +320 -0
  376. package/src/components/registration/end-visit-modal/end-visit-dialog.scss +12 -0
  377. package/src/components/registration/end-visit-modal/end-visit.resource.tsx +59 -0
  378. package/src/components/registration/end-visit-modal/sha-end-visit.resource.ts +285 -0
  379. package/src/components/registration/helper/index.ts +4 -0
  380. package/src/components/registration/index.ts +10 -9
  381. package/src/components/registration/search-bar/search-bar.resource.ts +32 -93
  382. package/src/components/registration/start-visit-form/hooks/useDefaultFacilityLocation.tsx +15 -0
  383. package/src/components/registration/start-visit-form/hooks/useDefaultVisitLocation.tsx +24 -0
  384. package/src/components/registration/start-visit-form/hooks/useOfflineVisitType.tsx +18 -0
  385. package/src/components/registration/start-visit-form/hooks/useRecommendedVisitTypes.tsx +36 -0
  386. package/src/components/registration/start-visit-form/hooks/useVisitAttributeType.tsx +102 -0
  387. package/src/components/registration/start-visit-form/overflow-menu-extension/custom-end-active-visit.extension.tsx +44 -0
  388. package/src/components/registration/start-visit-form/overflow-menu-extension/overflow-menu-item.extension.tsx +57 -0
  389. package/src/components/registration/start-visit-form/overflow-menu-extension/overflow-menu-item.scss +3 -0
  390. package/src/components/registration/start-visit-form/start-visit-workspace/base-visit-type.component.tsx +126 -0
  391. package/src/components/registration/start-visit-form/start-visit-workspace/base-visit-type.scss +75 -0
  392. package/src/components/registration/start-visit-form/start-visit-workspace/exported-visit-form.workspace.tsx +759 -0
  393. package/src/components/registration/start-visit-form/start-visit-workspace/location-selector.component.tsx +86 -0
  394. package/src/components/registration/start-visit-form/start-visit-workspace/recommended-visit-type.component.tsx +32 -0
  395. package/src/components/registration/start-visit-form/start-visit-workspace/visit-attribute-type.component.tsx +257 -0
  396. package/src/components/registration/start-visit-form/start-visit-workspace/visit-attribute-type.scss +5 -0
  397. package/src/components/registration/start-visit-form/start-visit-workspace/visit-date-time.component.tsx +193 -0
  398. package/src/components/registration/start-visit-form/start-visit-workspace/visit-form.resource.ts +389 -0
  399. package/src/components/registration/start-visit-form/start-visit-workspace/visit-form.scss +144 -0
  400. package/src/components/registration/start-visit-form/visit-form-workspace/visit-form.workspace.tsx +48 -0
  401. package/src/components/registration/type/index.ts +101 -0
  402. package/src/components/reports/index.ts +11 -9
  403. package/src/components/triage/dashboard.component.tsx +0 -2
  404. package/src/components/triage/index.ts +10 -9
  405. package/src/components/triage/triage.component.tsx +85 -52
  406. package/src/components/triage/triage.scss +6 -0
  407. package/src/config-schema.ts +482 -0
  408. package/src/hooks/useOrders.tsx +2 -2
  409. package/src/hooks/useServiceQueues.tsx +6 -4
  410. package/src/index.ts +84 -28
  411. package/src/routes.json +290 -32
  412. package/src/shared/dashboard-link/dashboard-link.component.tsx +11 -8
  413. package/src/shared/orders/OrderTable.tsx +19 -3
  414. package/src/shared/otp-verification/index.ts +112 -29
  415. package/src/shared/otp-verification/otp-verification.modal.tsx +1110 -122
  416. package/src/shared/otp-verification/otp-verification.scss +374 -0
  417. package/src/shared/patient-chart/patient-summary-dashboard/patient-summary-dashboard.component.tsx +5 -85
  418. package/src/shared/pin-put/pinput.component.test.tsx +7 -6
  419. package/src/shared/queue/queue-entry/queue-entry-table.component.tsx +31 -12
  420. package/src/shared/queue/queue-entry/queue-entry-table.scss +4 -0
  421. package/src/shared/queue/queue-tab.component.tsx +165 -48
  422. package/src/shared/queue/queue-workflow-context.tsx +90 -0
  423. package/src/shared/tabs/create-tab-extension.tsx +33 -0
  424. package/src/shared/tabs/extension-tabs.component.tsx +51 -30
  425. package/src/shared/utils/index.ts +119 -5
  426. package/src/types/index.ts +13 -0
  427. package/translations/am.json +426 -133
  428. package/translations/en.json +312 -19
  429. package/translations/fr.json +351 -63
  430. package/translations/sw.json +330 -37
  431. package/dist/127.js +0 -1
  432. package/dist/200.js +0 -1
  433. package/dist/200.js.map +0 -1
  434. package/dist/267.js +0 -1
  435. package/dist/267.js.map +0 -1
  436. package/dist/285.js +0 -1
  437. package/dist/285.js.map +0 -1
  438. package/dist/329.js +0 -1
  439. package/dist/329.js.map +0 -1
  440. package/dist/40.js +0 -1
  441. package/dist/466.js +0 -1
  442. package/dist/466.js.map +0 -1
  443. package/dist/472.js +0 -66
  444. package/dist/472.js.map +0 -1
  445. package/dist/490.js +0 -1
  446. package/dist/490.js.map +0 -1
  447. package/dist/54.js +0 -1
  448. package/dist/54.js.map +0 -1
  449. package/dist/689.js +0 -1
  450. package/dist/689.js.map +0 -1
  451. package/dist/697.js +0 -1
  452. package/dist/697.js.map +0 -1
  453. package/dist/704.js +0 -1
  454. package/dist/704.js.map +0 -1
  455. package/dist/710.js +0 -1
  456. package/dist/710.js.map +0 -1
  457. package/dist/729.js +0 -17
  458. package/dist/729.js.map +0 -1
  459. package/dist/805.js +0 -37
  460. package/dist/805.js.map +0 -1
  461. package/dist/847.js +0 -1
  462. package/dist/847.js.map +0 -1
  463. package/dist/85.js +0 -1
  464. package/dist/85.js.map +0 -1
  465. package/dist/882.js +0 -1
  466. package/dist/91.js +0 -1
  467. package/dist/91.js.map +0 -1
  468. package/dist/916.js +0 -1
  469. package/dist/971.js +0 -1
  470. package/dist/971.js.map +0 -1
  471. package/dist/994.js +0 -1
  472. package/dist/994.js.map +0 -1
  473. package/dist/998.js +0 -1
  474. package/dist/998.js.map +0 -1
  475. package/jest.config.js +0 -3
  476. package/src/shared/orders/OrdersTabs.tsx +0 -58
  477. package/src/shared/patient-chart/patient-chart.component.tsx +0 -61
  478. package/src/shared/patient-chart/patient-chart.resources.ts +0 -184
  479. package/src/shared/patient-chart/patient-chart.scss +0 -15
  480. package/src/shared/patient-chart/useInitialize.ts +0 -24
  481. /package/src/shared/{patient-chart/patient-summary-dashboard → tabs}/patient-summary-dashboard.scss +0 -0
package/dist/6798.js ADDED
@@ -0,0 +1,66 @@
1
+ "use strict";(globalThis.webpackChunk_kenyaemr_esm_express_workflow_app=globalThis.webpackChunk_kenyaemr_esm_express_workflow_app||[]).push([["6798"],{79099:function(t,e,n){let i,r,a,o,s,l,c,u,h,d,f,p,m,g,v,y,_,b,x,E,w,T,S,O,M,A,k,C,D,L,R,I,N,P,U,B,H,F,$,z,V,G,j,W,Y,Z,X,q,K,Q,J,tt,te,tn,ti,tr,ta,to,ts,tl;n.d(e,{Zd:()=>t1,bS:()=>gF,vY:()=>t0,wW:()=>gH});var tc,tu,th,td,tf,tp,tm,tg,tv,ty=n(91111),t_=((i=t_||{}).RENDER_FINISHED="render-finished",i.RESIZE="chart-resize",i.MOUSEOVER="chart-mouseover",i.MOUSEOUT="chart-mouseout",i),tb=((r=tb||{}).SHOW="show-modal",r.HIDE="hide-modal",r),tx=((a=tx||{}).UPDATE="model-update",a),tE=((o=tE||{}).SHOW_OVERFLOW_MENU="show-toolbar-overflow-menu",o.HIDE_OVERFLOW_MENU="hide-toolbar-overflow-menu",o.BUTTON_CLICK="toolbar-button-click",o.SHOW_TOOLTIP="toolbar-show-tooltip",o.HIDE_TOOLTIP="toolbar-hide-tooltip",o),tw=((s=tw||{}).UPDATE="zoom-bar-update",s.SELECTION_START="zoom-bar-selection-start",s.SELECTION_IN_PROGRESS="zoom-bar-selection-in-progress",s.SELECTION_END="zoom-bar-selection-end",s),tT=((l=tT||{}).CHANGE="zoom-domain-change",l),tS=((c=tS||{}).CANVAS_ZOOM_IN="canvas-zoom-in",c.CANVAS_ZOOM_OUT="canvas-zoom-out",c),tO=((u=tO||{}).LABEL_MOUSEOVER="axis-label-mouseover",u.LABEL_MOUSEMOVE="axis-label-mousemove",u.LABEL_CLICK="axis-label-click",u.LABEL_MOUSEOUT="axis-label-mouseout",u.LABEL_FOCUS="axis-label-focus",u.LABEL_BLUR="axis-label-blur",u.RENDER_COMPLETE="axis-render-complete",u),tM=((h=tM||{}).POINT_MOUSEOVER="scatter-mouseover",h.POINT_MOUSEMOVE="scatter-mousemove",h.POINT_CLICK="scatter-click",h.POINT_MOUSEOUT="scatter-mouseout",h),tA=((d=tA||{}).WORD_MOUSEOVER="wordcloud-word-mouseover",d.WORD_MOUSEMOVE="wordcloud-word-mousemove",d.WORD_CLICK="wordcloud-word-click",d.WORD_MOUSEOUT="wordcloud-word-mouseout",d),tk=((f=tk||{}).SLICE_MOUSEOVER="pie-slice-mouseover",f.SLICE_MOUSEMOVE="pie-slice-mousemove",f.SLICE_CLICK="pie-slice-click",f.SLICE_MOUSEOUT="pie-slice-mouseout",f),tC=((p=tC||{}).ARC_MOUSEOVER="gauge-arc-mouseover",p.ARC_MOUSEMOVE="gauge-arc-mousemove",p.ARC_CLICK="gauge-arc-click",p.ARC_MOUSEOUT="gauge-arc-mouseout",p),tD=((m=tD||{}).BAR_MOUSEOVER="bar-mouseover",m.BAR_MOUSEMOVE="bar-mousemove",m.BAR_CLICK="bar-click",m.BAR_MOUSEOUT="bar-mouseout",m),tL=((g=tL||{}).BOX_MOUSEOVER="box-mouseover",g.BOX_MOUSEMOVE="box-mousemove",g.BOX_CLICK="box-click",g.BOX_MOUSEOUT="box-mouseout",g.OUTLIER_MOUSEOVER="outlier-mouseover",g.OUTLIER_MOUSEMOVE="outlier-mousemove",g.OUTLIER_CLICK="outlier-click",g.OUTLIER_MOUSEOUT="outlier-mouseout",g),tR=((v=tR||{}).SCATTER_MOUSEOVER="scatter-mouseover",v.SCATTER_MOUSEMOVE="scatter-mousemove",v.SCATTER_CLICK="scatter-click",v.SCATTER_MOUSEOUT="scatter-mouseout",v),tI=((y=tI||{}).POINT_MOUSEOVER="scatter-mouseover",y.POINT_MOUSEMOVE="scatter-mousemove",y.POINT_CLICK="scatter-click",y.POINT_MOUSEOUT="scatter-mouseout",y),tN=((_=tN||{}).X_AXIS_MOUSEOVER="radar-x-axis-mouseover",_.X_AXIS_MOUSEMOVE="radar-x-axis-mousemove",_.X_AXIS_CLICK="radar-x-axis-click",_.X_AXIS_MOUSEOUT="radar-x-axis-mouseout",_),tP=((b=tP||{}).NODE_MOUSEOVER="tree-node-mouseover",b.NODE_CLICK="tree-node-click",b.NODE_MOUSEOUT="tree-node-mouseout",b),tU=((x=tU||{}).LEAF_MOUSEOVER="leaf-mouseover",x.LEAF_MOUSEMOVE="leaf-mousemove",x.LEAF_CLICK="leaf-click",x.LEAF_MOUSEOUT="leaf-mouseout",x),tB=((E=tB||{}).SHOW="show-tooltip",E.MOVE="move-tooltip",E.HIDE="hide-tooltip",E),tH=((w=tH||{}).SHOW="show-threshold",w.HIDE="hide-threshold",w),tF=((T=tF||{}).ITEM_HOVER="legend-item-onhover",T.ITEM_CLICK="legend-item-onclick",T.ITEM_MOUSEOUT="legend-item-onmouseout",T.ITEMS_UPDATE="legend-items-update",T),t$=((S=t$||{}).CIRCLE_MOUSEOVER="circle-leaf-mouseover",S.CIRCLE_CLICK="circle-leaf-click",S.CIRCLE_MOUSEOUT="circle-leaf-mouseout",S.CIRCLE_MOUSEMOVE="circle-leaf-mousemove",S),tz=((O=tz||{}).NODE_MOUSEOVER="alluvial-node-mouseover",O.NODE_CLICK="alluvial-node-click",O.NODE_MOUSEOUT="alluvial-node-mouseout",O.NODE_MOUSEMOVE="alluvial-node-mousemove",O.LINE_MOUSEOVER="alluvial-line-mouseover",O.LINE_CLICK="alluvial-line-click",O.LINE_MOUSEOUT="alluvial-line-mouseout",O.LINE_MOUSEMOVE="alluvial-line-mousemove",O),tV=((M=tV||{}).METER_MOUSEOVER="meter-mouseover",M.METER_CLICK="meter-click",M.METER_MOUSEOUT="meter-mouseout",M.METER_MOUSEMOVE="meter-mousemove",M),tG=((A=tG||{}).HEATMAP_MOUSEOVER="heatmap-mouseover",A.HEATMAP_CLICK="heatmap-click",A.HEATMAP_MOUSEOUT="heatmap-mouseout",A.HEATMAP_MOUSEMOVE="hetmap-mousemove",A),tj=((k=tj||{}).CHOROPLETH_MOUSEOVER="choropleth-mouseover",k.CHOROPLETH_CLICK="choropleth-click",k.CHOROPLETH_MOUSEOUT="choropleth-mouseout",k.CHOROPLETH_MOUSEMOVE="choropleth-mousemove",k);let tW=Object.freeze(Object.defineProperty({__proto__:null,Alluvial:tz,Area:tM,Axis:tO,Bar:tD,Boxplot:tL,CanvasZoom:tS,Chart:t_,Choropleth:tj,CirclePack:t$,Gauge:tC,Heatmap:tG,Legend:tF,Line:tI,Meter:tV,Modal:tb,Model:tx,Pie:tk,Radar:tN,Scatter:tR,Threshold:tH,Toolbar:tE,Tooltip:tB,Tree:tP,Treemap:tU,WordCloud:tA,ZoomBar:tw,ZoomDomain:tT},Symbol.toStringTag,{value:"Module"}));var tY=((C=tY||{}).HTML="html",C.SVG="svg",C),tZ=((D=tZ||{}).WHITE="white",D.G100="g100",D.G90="g90",D.G10="g10",D),tX=((L=tX||{}).BACKGROUND="background",L.FILL="fill",L.STROKE="stroke",L.TOOLTIP="tooltip",L),tq=((R=tq||{}).LEFT="left",R.RIGHT="right",R.TOP="top",R.BOTTOM="bottom",R),tK=((I=tK||{}).GRAPH_VIEW="graph_view",I.SLIDER_VIEW="slider_view",I),tQ=((N=tQ||{}).END_LINE="end_line",N.MID_LINE="mid_line",N.FRONT_LINE="front_line",N.NONE="none",N),tJ=((P=tJ||{}).VERTICAL="vertical",P.HORIZONTAL="horizontal",P),t0=((U=t0||{}).TIME="time",U.LINEAR="linear",U.LOG="log",U.LABELS="labels",U.LABELS_RATIO="labels-ratio",U),t1=((B=t1||{}).RIGHT="right",B.LEFT="left",B.TOP="top",B.BOTTOM="bottom",B),t2=((H=t2||{}).LEFT="left",H.CENTER="center",H.RIGHT="right",H),t3=((F=t3||{}).HORIZONTAL="horizontal",F.VERTICAL="vertical",F),t5=(($=t5||{}).TREE="tree",$.DENDROGRAM="dendrogram",$),t4=((z=t4||{}).ROW="row",z.COLUMN="column",z.ROW_REVERSE="row-reverse",z.COLUMN_REVERSE="column-reverse",z),t8=((V=t8||{}).FIXED="fixed",V.PREFERRED="preferred",V.STRETCH="stretch",V),t6=((G=t6||{}).CENTER="center",G),t9=((j=t9||{}).LEFT="left",j.RIGHT="right",j),t7=((W=t7||{}).GRID="grid",W.VERT_OR_HORIZ="vertOrHoriz",W.PIE="pie",W.DONUT="donut",W),et=((Y=et||{}).START="start",Y.MIDDLE="middle",Y.END="end",Y),ee=((Z=ee||{}).BASELINE="baseline",Z.MIDDLE="middle",Z.HANGING="hanging",Z),en=((X=en||{}).SEMI="semi",X.FULL="full",X),ei=((q=ei||{}).UP="up",q.DOWN="down",q),er=((K=er||{}).SUCCESS="success",K.WARNING="warning",K.DANGER="danger",K),ea=((Q=ea||{}).ALWAYS="always",Q.AUTO="auto",Q.NEVER="never",Q),eo=((J=eo||{}).SCATTER="scatter",J.LINE="line",J.SIMPLE_BAR="simple-bar",J.STACKED_BAR="stacked-bar",J.GROUPED_BAR="grouped-bar",J.AREA="area",J.STACKED_AREA="stacked-area",J),es=((tt=es||{}).EXPORT_CSV="Export as CSV",tt.EXPORT_PNG="Export as PNG",tt.EXPORT_JPG="Export as JPG",tt.ZOOM_IN="Zoom in",tt.ZOOM_OUT="Zoom out",tt.RESET_ZOOM="Reset zoom",tt.MAKE_FULLSCREEN="Make fullscreen",tt.EXIT_FULLSCREEN="Exit fullscreen",tt.SHOW_AS_DATATABLE="Show as data-table",tt.CUSTOM="Custom",tt),el=((te=el||{}).LEFT="left",te.RIGHT="right",te),ec=((tn=ec||{}).CHECKBOX="checkbox",tn.RADIUS="radius",tn.AREA="area",tn.SIZE="size",tn.LINE="line",tn.QUARTILE="quartile",tn.ZOOM="zoom",tn),eu=((ti=eu||{}).LINEAR="linear",ti.QUANTIZE="quantize",ti),eh=((tr=eh||{}).ON="on",tr.AUTO="auto",tr.OFF="off",tr),ed=((ta=ed||{}).DEFAULT="default",ta.HOVERABLE="hoverable",ta),ef=((to=ef||{}).geoEqualEarth="geoEqualEarth",to.geoAlbers="geoAlbers",to.geoConicEqualArea="geoConicEqualArea",to.geoConicEquidistant="geoConicEquidistant",to.geoEquirectangular="geoEquirectangular",to.geoMercator="geoMercator",to.geoNaturalEarth1="geoNaturalEarth1",to),ep=((ts=ep||{})["15seconds"]="15seconds",ts.minute="minute",ts["30minutes"]="30minutes",ts.hourly="hourly",ts.daily="daily",ts.weekly="weekly",ts.monthly="monthly",ts.quarterly="quarterly",ts.yearly="yearly",ts);function em(t){return (e={})=>{let n=e.width?String(e.width):t.defaultWidth;return t.formats[n]||t.formats[t.defaultWidth]}}function eg(t){return(e,n)=>{let i;if("formatting"===(n?.context?String(n.context):"standalone")&&t.formattingValues){let e=t.defaultFormattingWidth||t.defaultWidth,r=n?.width?String(n.width):e;i=t.formattingValues[r]||t.formattingValues[e]}else{let e=t.defaultWidth,r=n?.width?String(n.width):t.defaultWidth;i=t.values[r]||t.values[e]}return i[t.argumentCallback?t.argumentCallback(e):e]}}function ev(t){return(e,n={})=>{let i,r=n.width,a=r&&t.matchPatterns[r]||t.matchPatterns[t.defaultMatchWidth],o=e.match(a);if(!o)return null;let s=o[0],l=r&&t.parsePatterns[r]||t.parsePatterns[t.defaultParseWidth],c=Array.isArray(l)?function(t,e){for(let n=0;n<t.length;n++)if(e(t[n]))return n}(l,t=>t.test(s)):function(t,e){for(let n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&e(t[n]))return n}(l,t=>t.test(s));return i=t.valueCallback?t.valueCallback(c):c,{value:i=n.valueCallback?n.valueCallback(i):i,rest:e.slice(s.length)}}}let ey=Symbol.for("constructDateFrom");function e_(t,e){return"function"==typeof t?t(e):t&&"object"==typeof t&&ey in t?t[ey](e):t instanceof Date?new t.constructor(e):new Date(e)}function eb(t,...e){let n=e_.bind(null,e.find(t=>"object"==typeof t));return e.map(n)}let ex={};function eE(t,e){return e_(e||t,t)}function ew(t,e){let n=e?.weekStartsOn??e?.locale?.options?.weekStartsOn??ex.weekStartsOn??ex.locale?.options?.weekStartsOn??0,i=eE(t,e?.in),r=i.getDay();return i.setDate(i.getDate()-(7*(r<n)+r-n)),i.setHours(0,0,0,0),i}let eT={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},eS={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},eO={ordinalNumber:(t,e)=>{let n=Number(t),i=n%100;if(i>20||i<10)switch(i%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},era:eg({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:eg({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:t=>t-1}),month:eg({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:eg({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:eg({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})},eM={ordinalNumber:(oi={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:t=>parseInt(t,10)},(t,e={})=>{let n=t.match(oi.matchPattern);if(!n)return null;let i=n[0],r=t.match(oi.parsePattern);if(!r)return null;let a=oi.valueCallback?oi.valueCallback(r[0]):r[0];return{value:a=e.valueCallback?e.valueCallback(a):a,rest:t.slice(i.length)}}),era:ev({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:ev({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:t=>t+1}),month:ev({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:ev({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:ev({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})},eA={code:"en-US",formatDistance:(t,e,n)=>{let i,r=eT[t];return i="string"==typeof r?r:1===e?r.one:r.other.replace("{{count}}",e.toString()),n?.addSuffix?n.comparison&&n.comparison>0?"in "+i:i+" ago":i},formatLong:{date:em({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:em({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:em({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},formatRelative:(t,e,n,i)=>eS[t],localize:eO,match:eM,options:{weekStartsOn:0,firstWeekContainsDate:1}};var ek="object"==typeof global&&global&&global.Object===Object&&global,eC="object"==typeof self&&self&&self.Object===Object&&self,eD=ek||eC||Function("return this")(),eL=eD.Symbol,eR=Object.prototype,eI=eR.hasOwnProperty,eN=eR.toString,eP=eL?eL.toStringTag:void 0,eU=Object.prototype.toString,eB=eL?eL.toStringTag:void 0;function eH(t){return null==t?void 0===t?"[object Undefined]":"[object Null]":eB&&eB in Object(t)?function(t){var e=eI.call(t,eP),n=t[eP];try{t[eP]=void 0;var i=!0}catch{}var r=eN.call(t);return i&&(e?t[eP]=n:delete t[eP]),r}(t):eU.call(t)}function eF(t){return null!=t&&"object"==typeof t}function e$(t){return"symbol"==typeof t||eF(t)&&"[object Symbol]"==eH(t)}function ez(t,e){for(var n=-1,i=null==t?0:t.length,r=Array(i);++n<i;)r[n]=e(t[n],n,t);return r}var eV=Array.isArray,eG=eL?eL.prototype:void 0,ej=eG?eG.toString:void 0;function eW(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function eY(t){return t}function eZ(t){if(!eW(t))return!1;var e=eH(t);return"[object Function]"==e||"[object GeneratorFunction]"==e||"[object AsyncFunction]"==e||"[object Proxy]"==e}var eX=eD["__core-js_shared__"],eq=(or=/[^.]+$/.exec(eX&&eX.keys&&eX.keys.IE_PROTO||""))?"Symbol(src)_1."+or:"",eK=Function.prototype.toString;function eQ(t){if(null!=t){try{return eK.call(t)}catch{}try{return t+""}catch{}}return""}var eJ=/^\[object .+?Constructor\]$/,e0=Object.prototype,e1=Function.prototype.toString,e2=e0.hasOwnProperty,e3=RegExp("^"+e1.call(e2).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function e5(t,e){var n=t?.[e];return eW(n)&&(!eq||!(eq in n))&&(eZ(n)?e3:eJ).test(eQ(n))?n:void 0}var e4=e5(eD,"WeakMap"),e8=Object.create,e6=function(){function t(){}return function(e){if(!eW(e))return{};if(e8)return e8(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();function e9(t,e){var n=-1,i=t.length;for(e||(e=Array(i));++n<i;)e[n]=t[n];return e}var e7=Date.now,nt=function(){try{var t=e5(Object,"defineProperty");return t({},"",{}),t}catch{}}(),ne=(oa=nt?function(t,e){return nt(t,"toString",{configurable:!0,enumerable:!1,value:function(){return e},writable:!0})}:eY,oo=0,os=0,function(){var t=e7(),e=16-(t-os);if(os=t,e>0){if(++oo>=800)return arguments[0]}else oo=0;return oa.apply(void 0,arguments)});function nn(t){return t!=t}function ni(t,e){return!!(null==t?0:t.length)&&(e==e?function(t,e,n){for(var i=-1,r=t.length;++i<r;)if(t[i]===e)return i;return -1}(t,e,0):function(t,e,n,i){for(var r=t.length,a=-1;++a<r;)if(e(t[a],a,t))return a;return -1}(t,nn,0))>-1}var nr=/^(?:0|[1-9]\d*)$/;function na(t,e){var n=typeof t;return!!(e=e??0x1fffffffffffff)&&("number"==n||"symbol"!=n&&nr.test(t))&&t>-1&&t%1==0&&t<e}function no(t,e,n){"__proto__"==e&&nt?nt(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}function ns(t,e){return t===e||t!=t&&e!=e}var nl=Object.prototype.hasOwnProperty;function nc(t,e,n){var i=t[e];nl.call(t,e)&&ns(i,n)&&(void 0!==n||e in t)||no(t,e,n)}function nu(t,e,n,i){var r=!n;n||(n={});for(var a=-1,o=e.length;++a<o;){var s=e[a],l=void 0;void 0===l&&(l=t[s]),r?no(n,s,l):nc(n,s,l)}return n}var nh=Math.max;function nd(t,e,n){return e=nh(void 0===e?t.length-1:e,0),function(){for(var i=arguments,r=-1,a=nh(i.length-e,0),o=Array(a);++r<a;)o[r]=i[e+r];r=-1;for(var s=Array(e+1);++r<e;)s[r]=i[r];return s[e]=n(o),function(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}(t,this,s)}}function nf(t,e){return ne(nd(t,e,eY),t+"")}function np(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=0x1fffffffffffff}function nm(t){return null!=t&&np(t.length)&&!eZ(t)}var ng=Object.prototype;function nv(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||ng)}function ny(t){return eF(t)&&"[object Arguments]"==eH(t)}var n_=Object.prototype,nb=n_.hasOwnProperty,nx=n_.propertyIsEnumerable,nE=ny(function(){return arguments}())?ny:function(t){return eF(t)&&nb.call(t,"callee")&&!nx.call(t,"callee")},nw="object"==typeof exports&&exports&&!exports.nodeType&&exports,nT=nw&&"object"==typeof module&&module&&!module.nodeType&&module,nS=nT&&nT.exports===nw?eD.Buffer:void 0,nO=(nS?nS.isBuffer:void 0)||function(){return!1},nM={};function nA(t){return function(e){return t(e)}}nM["[object Float32Array]"]=nM["[object Float64Array]"]=nM["[object Int8Array]"]=nM["[object Int16Array]"]=nM["[object Int32Array]"]=nM["[object Uint8Array]"]=nM["[object Uint8ClampedArray]"]=nM["[object Uint16Array]"]=nM["[object Uint32Array]"]=!0,nM["[object Arguments]"]=nM["[object Array]"]=nM["[object ArrayBuffer]"]=nM["[object Boolean]"]=nM["[object DataView]"]=nM["[object Date]"]=nM["[object Error]"]=nM["[object Function]"]=nM["[object Map]"]=nM["[object Number]"]=nM["[object Object]"]=nM["[object RegExp]"]=nM["[object Set]"]=nM["[object String]"]=nM["[object WeakMap]"]=!1;var nk="object"==typeof exports&&exports&&!exports.nodeType&&exports,nC=nk&&"object"==typeof module&&module&&!module.nodeType&&module,nD=nC&&nC.exports===nk&&ek.process,nL=function(){try{return nC&&nC.require&&nC.require("util").types||nD&&nD.binding&&nD.binding("util")}catch{}}(),nR=nL&&nL.isTypedArray,nI=nR?nA(nR):function(t){return eF(t)&&np(t.length)&&!!nM[eH(t)]},nN=Object.prototype.hasOwnProperty;function nP(t,e){var n=eV(t),i=!n&&nE(t),r=!n&&!i&&nO(t),a=!n&&!i&&!r&&nI(t),o=n||i||r||a,s=o?function(t,e){for(var n=-1,i=Array(t);++n<t;)i[n]=e(n);return i}(t.length,String):[],l=s.length;for(var c in t)(e||nN.call(t,c))&&!(o&&("length"==c||r&&("offset"==c||"parent"==c)||a&&("buffer"==c||"byteLength"==c||"byteOffset"==c)||na(c,l)))&&s.push(c);return s}function nU(t,e){return function(n){return t(e(n))}}var nB=nU(Object.keys,Object),nH=Object.prototype.hasOwnProperty;function nF(t){if(!nv(t))return nB(t);var e=[];for(var n in Object(t))nH.call(t,n)&&"constructor"!=n&&e.push(n);return e}function n$(t){return nm(t)?nP(t):nF(t)}var nz=Object.prototype.hasOwnProperty;function nV(t){return nm(t)?nP(t,!0):function(t){if(!eW(t)){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e}var i=nv(t),r=[];for(var a in t)"constructor"==a&&(i||!nz.call(t,a))||r.push(a);return r}(t)}var nG=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,nj=/^\w*$/;function nW(t,e){if(eV(t))return!1;var n=typeof t;return!!("number"==n||"symbol"==n||"boolean"==n||null==t||e$(t))||nj.test(t)||!nG.test(t)||null!=e&&t in Object(e)}var nY=e5(Object,"create"),nZ=Object.prototype.hasOwnProperty,nX=Object.prototype.hasOwnProperty;function nq(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var i=t[e];this.set(i[0],i[1])}}function nK(t,e){for(var n=t.length;n--;)if(ns(t[n][0],e))return n;return -1}nq.prototype.clear=function(){this.__data__=nY?nY(null):{},this.size=0},nq.prototype.delete=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=!!e,e},nq.prototype.get=function(t){var e=this.__data__;if(nY){var n=e[t];return"__lodash_hash_undefined__"===n?void 0:n}return nZ.call(e,t)?e[t]:void 0},nq.prototype.has=function(t){var e=this.__data__;return nY?void 0!==e[t]:nX.call(e,t)},nq.prototype.set=function(t,e){var n=this.__data__;return this.size+=+!this.has(t),n[t]=nY&&void 0===e?"__lodash_hash_undefined__":e,this};var nQ=Array.prototype.splice;function nJ(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var i=t[e];this.set(i[0],i[1])}}nJ.prototype.clear=function(){this.__data__=[],this.size=0},nJ.prototype.delete=function(t){var e=this.__data__,n=nK(e,t);return!(n<0)&&(n==e.length-1?e.pop():nQ.call(e,n,1),--this.size,!0)},nJ.prototype.get=function(t){var e=this.__data__,n=nK(e,t);return n<0?void 0:e[n][1]},nJ.prototype.has=function(t){return nK(this.__data__,t)>-1},nJ.prototype.set=function(t,e){var n=this.__data__,i=nK(n,t);return i<0?(++this.size,n.push([t,e])):n[i][1]=e,this};var n0=e5(eD,"Map");function n1(t,e){var n,i=t.__data__;return("string"==(n=typeof e)||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==e:null===e)?i["string"==typeof e?"string":"hash"]:i.map}function n2(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var i=t[e];this.set(i[0],i[1])}}function n3(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw TypeError("Expected a function");var n=function(){var i=arguments,r=e?e.apply(this,i):i[0],a=n.cache;if(a.has(r))return a.get(r);var o=t.apply(this,i);return n.cache=a.set(r,o)||a,o};return n.cache=new(n3.Cache||n2),n}n2.prototype.clear=function(){this.size=0,this.__data__={hash:new nq,map:new(n0||nJ),string:new nq}},n2.prototype.delete=function(t){var e=n1(this,t).delete(t);return this.size-=!!e,e},n2.prototype.get=function(t){return n1(this,t).get(t)},n2.prototype.has=function(t){return n1(this,t).has(t)},n2.prototype.set=function(t,e){var n=n1(this,t),i=n.size;return n.set(t,e),this.size+=+(n.size!=i),this},n3.Cache=n2;var n5=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,n4=/\\(\\)?/g,n8=(oc=(ol=n3(function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(""),t.replace(n5,function(t,n,i,r){e.push(i?r.replace(n4,"$1"):n||t)}),e},function(t){return 500===oc.size&&oc.clear(),t})).cache,ol);function n6(t){return null==t?"":function t(e){if("string"==typeof e)return e;if(eV(e))return ez(e,t)+"";if(e$(e))return ej?ej.call(e):"";var n=e+"";return"0"==n&&1/e==-1/0?"-0":n}(t)}function n9(t,e){return eV(t)?t:nW(t,e)?[t]:n8(n6(t))}function n7(t){if("string"==typeof t||e$(t))return t;var e=t+"";return"0"==e&&1/t==-1/0?"-0":e}function it(t,e){e=n9(e,t);for(var n=0,i=e.length;null!=t&&n<i;)t=t[n7(e[n++])];return n&&n==i?t:void 0}function ie(t,e,n){var i=null==t?void 0:it(t,e);return void 0===i?n:i}function ii(t,e){for(var n=-1,i=e.length,r=t.length;++n<i;)t[r+n]=e[n];return t}var ir=eL?eL.isConcatSpreadable:void 0;function ia(t){return eV(t)||nE(t)||!!(ir&&t&&t[ir])}function io(t,e,n,i,r){var a=-1,o=t.length;for(n||(n=ia),r||(r=[]);++a<o;){var s=t[a];e>0&&n(s)?e>1?io(s,e-1,n,i,r):ii(r,s):i||(r[r.length]=s)}return r}var is=nU(Object.getPrototypeOf,Object),il=Object.prototype,ic=Function.prototype.toString,iu=il.hasOwnProperty,ih=ic.call(Object);function id(t){if(!eF(t)||"[object Object]"!=eH(t))return!1;var e=is(t);if(null===e)return!0;var n=iu.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&ic.call(n)==ih}function ip(t){var e=this.__data__=new nJ(t);this.size=e.size}ip.prototype.clear=function(){this.__data__=new nJ,this.size=0},ip.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},ip.prototype.get=function(t){return this.__data__.get(t)},ip.prototype.has=function(t){return this.__data__.has(t)},ip.prototype.set=function(t,e){var n=this.__data__;if(n instanceof nJ){var i=n.__data__;if(!n0||i.length<199)return i.push([t,e]),this.size=++n.size,this;n=this.__data__=new n2(i)}return n.set(t,e),this.size=n.size,this};var im="object"==typeof exports&&exports&&!exports.nodeType&&exports,ig=im&&"object"==typeof module&&module&&!module.nodeType&&module,iv=ig&&ig.exports===im?eD.Buffer:void 0,iy=iv?iv.allocUnsafe:void 0;function i_(t,e){if(e)return t.slice();var n=t.length,i=iy?iy(n):new t.constructor(n);return t.copy(i),i}function ib(){return[]}var ix=Object.prototype.propertyIsEnumerable,iE=Object.getOwnPropertySymbols,iw=iE?function(t){return null==t?[]:function(t,e){for(var n=-1,i=null==t?0:t.length,r=0,a=[];++n<i;){var o=t[n];e(o,n,t)&&(a[r++]=o)}return a}(iE(t=Object(t)),function(e){return ix.call(t,e)})}:ib,iT=Object.getOwnPropertySymbols?function(t){for(var e=[];t;)ii(e,iw(t)),t=is(t);return e}:ib;function iS(t,e,n){var i=e(t);return eV(t)?i:ii(i,n(t))}function iO(t){return iS(t,n$,iw)}function iM(t){return iS(t,nV,iT)}var iA=e5(eD,"DataView"),ik=e5(eD,"Promise"),iC=e5(eD,"Set"),iD="[object Map]",iL="[object Promise]",iR="[object Set]",iI="[object WeakMap]",iN="[object DataView]",iP=eQ(iA),iU=eQ(n0),iB=eQ(ik),iH=eQ(iC),iF=eQ(e4),i$=eH;(iA&&i$(new iA(new ArrayBuffer(1)))!=iN||n0&&i$(new n0)!=iD||ik&&i$(ik.resolve())!=iL||iC&&i$(new iC)!=iR||e4&&i$(new e4)!=iI)&&(i$=function(t){var e=eH(t),n="[object Object]"==e?t.constructor:void 0,i=n?eQ(n):"";if(i)switch(i){case iP:return iN;case iU:return iD;case iB:return iL;case iH:return iR;case iF:return iI}return e});var iz=Object.prototype.hasOwnProperty,iV=eD.Uint8Array;function iG(t){var e=new t.constructor(t.byteLength);return new iV(e).set(new iV(t)),e}var ij=/\w*$/,iW=eL?eL.prototype:void 0,iY=iW?iW.valueOf:void 0;function iZ(t,e){var n=e?iG(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function iX(t){return"function"!=typeof t.constructor||nv(t)?{}:e6(is(t))}var iq=nL&&nL.isMap,iK=iq?nA(iq):function(t){return eF(t)&&"[object Map]"==i$(t)},iQ=nL&&nL.isSet,iJ=iQ?nA(iQ):function(t){return eF(t)&&"[object Set]"==i$(t)},i0="[object Arguments]",i1="[object Function]",i2="[object Object]",i3={};function i5(t,e,n,i,r,a){var o,s=1&e,l=2&e,c=4&e;if(n&&(o=r?n(t,i,r,a):n(t)),void 0!==o)return o;if(!eW(t))return t;var u=eV(t);if(u){if(h=t.length,d=new t.constructor(h),h&&"string"==typeof t[0]&&iz.call(t,"index")&&(d.index=t.index,d.input=t.input),o=d,!s)return e9(t,o)}else{var h,d,f,p,m,g,v=i$(t),y=v==i1||"[object GeneratorFunction]"==v;if(nO(t))return i_(t,s);if(v==i2||v==i0||y&&!r){if(o=l||y?{}:iX(t),!s)return l?(p=(f=o)&&nu(t,nV(t),f),nu(t,iT(t),p)):(g=(m=o)&&nu(t,n$(t),m),nu(t,iw(t),g))}else{if(!i3[v])return r?t:{};o=function(t,e,n){var i,r,a=t.constructor;switch(e){case"[object ArrayBuffer]":return iG(t);case"[object Boolean]":case"[object Date]":return new a(+t);case"[object DataView]":return i=n?iG(t.buffer):t.buffer,new t.constructor(i,t.byteOffset,t.byteLength);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return iZ(t,n);case"[object Map]":case"[object Set]":return new a;case"[object Number]":case"[object String]":return new a(t);case"[object RegExp]":return(r=new t.constructor(t.source,ij.exec(t))).lastIndex=t.lastIndex,r;case"[object Symbol]":return iY?Object(iY.call(t)):{}}}(t,v,s)}}a||(a=new ip);var _=a.get(t);if(_)return _;a.set(t,o),iJ(t)?t.forEach(function(i){o.add(i5(i,e,n,i,t,a))}):iK(t)&&t.forEach(function(i,r){o.set(r,i5(i,e,n,r,t,a))});var b=c?l?iM:iO:l?nV:n$,x=u?void 0:b(t);return function(t,e){for(var n=-1,i=null==t?0:t.length;++n<i&&!1!==e(t[n],n,t););}(x||t,function(i,r){x&&(i=t[r=i]),nc(o,r,i5(i,e,n,r,t,a))}),o}function i4(t){return i5(t,5)}function i8(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new n2;++e<n;)this.add(t[e])}function i6(t,e){for(var n=-1,i=null==t?0:t.length;++n<i;)if(e(t[n],n,t))return!0;return!1}function i9(t,e){return t.has(e)}function i7(t,e,n,i,r,a){var o=1&n,s=t.length,l=e.length;if(s!=l&&!(o&&l>s))return!1;var c=a.get(t),u=a.get(e);if(c&&u)return c==e&&u==t;var h=-1,d=!0,f=2&n?new i8:void 0;for(a.set(t,e),a.set(e,t);++h<s;){var p=t[h],m=e[h];if(i)var g=o?i(m,p,h,e,t,a):i(p,m,h,t,e,a);if(void 0!==g){if(g)continue;d=!1;break}if(f){if(!i6(e,function(t,e){if(!i9(f,e)&&(p===t||r(p,t,n,i,a)))return f.push(e)})){d=!1;break}}else if(!(p===m||r(p,m,n,i,a))){d=!1;break}}return a.delete(t),a.delete(e),d}function rt(t){var e=-1,n=Array(t.size);return t.forEach(function(t,i){n[++e]=[i,t]}),n}function re(t){var e=-1,n=Array(t.size);return t.forEach(function(t){n[++e]=t}),n}i3[i0]=i3["[object Array]"]=i3["[object ArrayBuffer]"]=i3["[object DataView]"]=i3["[object Boolean]"]=i3["[object Date]"]=i3["[object Float32Array]"]=i3["[object Float64Array]"]=i3["[object Int8Array]"]=i3["[object Int16Array]"]=i3["[object Int32Array]"]=i3["[object Map]"]=i3["[object Number]"]=i3[i2]=i3["[object RegExp]"]=i3["[object Set]"]=i3["[object String]"]=i3["[object Symbol]"]=i3["[object Uint8Array]"]=i3["[object Uint8ClampedArray]"]=i3["[object Uint16Array]"]=i3["[object Uint32Array]"]=!0,i3["[object Error]"]=i3[i1]=i3["[object WeakMap]"]=!1,i8.prototype.add=i8.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},i8.prototype.has=function(t){return this.__data__.has(t)};var rn=eL?eL.prototype:void 0,ri=rn?rn.valueOf:void 0,rr=Object.prototype.hasOwnProperty,ra="[object Arguments]",ro="[object Array]",rs="[object Object]",rl=Object.prototype.hasOwnProperty;function rc(t,e,n,i,r){return t===e||(null!=t&&null!=e&&(eF(t)||eF(e))?function(t,e,n,i,r,a){var o=eV(t),s=eV(e),l=o?ro:i$(t),c=s?ro:i$(e);l=l==ra?rs:l,c=c==ra?rs:c;var u=l==rs,h=c==rs,d=l==c;if(d&&nO(t)){if(!nO(e))return!1;o=!0,u=!1}if(d&&!u)return a||(a=new ip),o||nI(t)?i7(t,e,n,i,r,a):function(t,e,n,i,r,a,o){switch(n){case"[object DataView]":if(t.byteLength!=e.byteLength||t.byteOffset!=e.byteOffset)break;t=t.buffer,e=e.buffer;case"[object ArrayBuffer]":return!(t.byteLength!=e.byteLength||!a(new iV(t),new iV(e)));case"[object Boolean]":case"[object Date]":case"[object Number]":return ns(+t,+e);case"[object Error]":return t.name==e.name&&t.message==e.message;case"[object RegExp]":case"[object String]":return t==e+"";case"[object Map]":var s=rt;case"[object Set]":var l=1&i;if(s||(s=re),t.size!=e.size&&!l)break;var c=o.get(t);if(c)return c==e;i|=2,o.set(t,e);var u=i7(s(t),s(e),i,r,a,o);return o.delete(t),u;case"[object Symbol]":if(ri)return ri.call(t)==ri.call(e)}return!1}(t,e,l,n,i,r,a);if(!(1&n)){var f=u&&rl.call(t,"__wrapped__"),p=h&&rl.call(e,"__wrapped__");if(f||p){var m=f?t.value():t,g=p?e.value():e;return a||(a=new ip),r(m,g,n,i,a)}}return!!d&&(a||(a=new ip),function(t,e,n,i,r,a){var o=1&n,s=iO(t),l=s.length;if(l!=iO(e).length&&!o)return!1;for(var c=l;c--;){var u=s[c];if(!(o?u in e:rr.call(e,u)))return!1}var h=a.get(t),d=a.get(e);if(h&&d)return h==e&&d==t;var f=!0;a.set(t,e),a.set(e,t);for(var p=o;++c<l;){var m=t[u=s[c]],g=e[u];if(i)var v=o?i(g,m,u,e,t,a):i(m,g,u,t,e,a);if(!(void 0===v?m===g||r(m,g,n,i,a):v)){f=!1;break}p||(p="constructor"==u)}if(f&&!p){var y=t.constructor,_=e.constructor;y!=_&&"constructor"in t&&"constructor"in e&&!("function"==typeof y&&y instanceof y&&"function"==typeof _&&_ instanceof _)&&(f=!1)}return a.delete(t),a.delete(e),f}(t,e,n,i,r,a))}(t,e,n,i,rc,r):t!=t&&e!=e)}function ru(t,e){return function(n){return null!=n&&n[t]===e&&(void 0!==e||t in Object(n))}}function rh(t,e){return null!=t&&e in Object(t)}function rd(t){var e,n,i,r,a;return"function"==typeof t?t:null==t?eY:"object"==typeof t?eV(t)?(e=t[0],n=t[1],nW(e)&&(i=n)==i&&!eW(i)?ru(n7(e),n):function(t){var i=ie(t,e);return void 0===i&&i===n?null!=t&&function(t,e,n){e=n9(e,t);for(var i=-1,r=e.length,a=!1;++i<r;){var o=n7(e[i]);if(!(a=null!=t&&n(t,o)))break;t=t[o]}return a||++i!=r?a:!!(r=null==t?0:t.length)&&np(r)&&na(o,r)&&(eV(t)||nE(t))}(t,e,rh):rc(n,i,3)}):1==(r=function(t){for(var e=n$(t),n=e.length;n--;){var i=e[n],r=t[i];e[n]=[i,r,r==r&&!eW(r)]}return e}(t)).length&&r[0][2]?ru(r[0][0],r[0][1]):function(e){return e===t||function(t,e,n,i){var r=n.length,a=r;if(null==t)return!a;for(t=Object(t);r--;){var o=n[r];if(o[2]?o[1]!==t[o[0]]:!(o[0]in t))return!1}for(;++r<a;){var s=(o=n[r])[0],l=t[s],c=o[1];if(o[2]){if(void 0===l&&!(s in t))return!1}else{var u,h=new ip;if(!(void 0===u?rc(c,l,3,void 0,h):u))return!1}}return!0}(e,0,r)}:nW(t)?(a=n7(t),function(t){return t?.[a]}):function(e){return it(e,t)}}var rf=function(t,e,n){for(var i=-1,r=Object(t),a=n(t),o=a.length;o--;){var s=a[++i];if(!1===e(r[s],s,r))break}return t};function rp(t,e,n){(void 0===n||ns(t[e],n))&&(void 0!==n||e in t)||no(t,e,n)}function rm(t){return eF(t)&&nm(t)}function rg(t,e){if(("constructor"!==e||"function"!=typeof t[e])&&"__proto__"!=e)return t[e]}function rv(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}var ry=Object.prototype.hasOwnProperty,r_=(ou=function(t,e,n){!function t(e,n,i,r,a){e!==n&&rf(n,function(o,s){if(a||(a=new ip),eW(o))!function(t,e,n,i,r,a,o){var s=rg(t,n),l=rg(e,n),c=o.get(l);if(c)return rp(t,n,c);var u=a?a(s,l,n+"",t,e,o):void 0,h=void 0===u;if(h){var d=eV(l),f=!d&&nO(l),p=!d&&!f&&nI(l);u=l,d||f||p?eV(s)?u=s:rm(s)?u=e9(s):f?(h=!1,u=i_(l,!0)):p?(h=!1,u=iZ(l,!0)):u=[]:id(l)||nE(l)?(u=s,nE(s)?u=nu(s,nV(s)):(!eW(s)||eZ(s))&&(u=iX(l))):h=!1}h&&(o.set(l,u),r(u,l,i,a,o),o.delete(l)),rp(t,n,u)}(e,n,s,i,t,r,a);else{var l=r?r(rg(e,s),o,s+"",e,n,a):void 0;void 0===l&&(l=o),rp(e,s,l)}},nV)}(t,e,n)},nf(function(t,e){var n=-1,i=e.length,r=i>1?e[i-1]:void 0,a=i>2?e[2]:void 0;for(r=ou.length>3&&"function"==typeof r?(i--,r):void 0,a&&function(t,e,n){if(!eW(n))return!1;var i=typeof e;return("number"==i?!!(nm(n)&&na(e,n.length)):"string"==i&&e in n)&&ns(n[e],t)}(e[0],e[1],a)&&(r=i<3?void 0:r,i=1),t=Object(t);++n<i;){var o=e[n];o&&ou(t,o,n,r)}return t})),rb=iC&&1/re(new iC([,-0]))[1]==1/0?function(t){return new iC(t)}:function(){};function rx(t,e,n){var i=-1,r=ni,a=t.length,o=!0,s=[],l=s;if(a>=200){var c=e?null:rb(t);if(c)return re(c);o=!1,r=i9,l=new i8}else l=e?[]:s;t:for(;++i<a;){var u=t[i],h=e?e(u):u;if(u=0!==u?u:0,o&&h==h){for(var d=l.length;d--;)if(l[d]===h)continue t;e&&l.push(h),s.push(u)}else r(l,h,n)||(l!==s&&l.push(h),s.push(u))}return s}var rE=nf(function(t){var e=rv(t);return rm(e)&&(e=void 0),rx(io(t,1,rm,!0),rd(e))});function rw(t){return t&&t.length?rx(t):[]}function rT(t,e){return null==t||null==e?NaN:t<e?-1:t>e?1:t>=e?0:NaN}function rS(t,e){return null==t||null==e?NaN:e<t?-1:e>t?1:e>=t?0:NaN}function rO(t){let e,n,i;function r(t,i,a=0,o=t.length){if(a<o){if(0!==e(i,i))return o;do{let e=a+o>>>1;0>n(t[e],i)?a=e+1:o=e}while(a<o)}return a}return 2!==t.length?(e=rT,n=(e,n)=>rT(t(e),n),i=(e,n)=>t(e)-n):(e=t===rT||t===rS?t:rM,n=t,i=t),{left:r,center:function(t,e,n=0,a=t.length){let o=r(t,e,n,a-1);return o>n&&i(t[o-1],e)>-i(t[o],e)?o-1:o},right:function(t,i,r=0,a=t.length){if(r<a){if(0!==e(i,i))return a;do{let e=r+a>>>1;0>=n(t[e],i)?r=e+1:a=e}while(r<a)}return r}}}function rM(){return 0}let rA=rO(rT).right;function rk(t,e){let n,i;if(void 0===e)for(let e of t)null!=e&&(void 0===n?e>=e&&(n=i=e):(n>e&&(n=e),i<e&&(i=e)));else{let r=-1;for(let a of t)null!=(a=e(a,++r,t))&&(void 0===n?a>=a&&(n=i=a):(n>a&&(n=a),i<a&&(i=a)))}return[n,i]}rO(function(t){return null===t?NaN:+t}).center;let rC=class extends Map{constructor(t,e=rL){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:e}}),null!=t)for(let[e,n]of t)this.set(e,n)}get(t){return super.get(rD(this,t))}has(t){return super.has(rD(this,t))}set(t,e){return super.set(function({_intern:t,_key:e},n){let i=e(n);return t.has(i)?t.get(i):(t.set(i,n),n)}(this,t),e)}delete(t){return super.delete(function({_intern:t,_key:e},n){let i=e(n);return t.has(i)&&(n=t.get(i),t.delete(i)),n}(this,t))}};function rD({_intern:t,_key:e},n){let i=e(n);return t.has(i)?t.get(i):n}function rL(t){return null!==t&&"object"==typeof t?t.valueOf():t}let rR=Math.sqrt(50),rI=Math.sqrt(10),rN=Math.sqrt(2);function rP(t,e,n){let i,r,a,o=(e-t)/Math.max(0,n),s=Math.floor(Math.log10(o)),l=o/Math.pow(10,s),c=l>=rR?10:l>=rI?5:l>=rN?2:1;return s<0?(i=Math.round(t*(a=Math.pow(10,-s)/c)),r=Math.round(e*a),i/a<t&&++i,r/a>e&&--r,a=-a):(i=Math.round(t/(a=Math.pow(10,s)*c)),r=Math.round(e/a),i*a<t&&++i,r*a>e&&--r),r<i&&.5<=n&&n<2?rP(t,e,2*n):[i,r,a]}function rU(t,e,n){if(e*=1,t*=1,!((n*=1)>0))return[];if(t===e)return[t];let i=e<t,[r,a,o]=i?rP(e,t,n):rP(t,e,n);if(!(a>=r))return[];let s=a-r+1,l=Array(s);if(i)if(o<0)for(let t=0;t<s;++t)l[t]=-((a-t)/o);else for(let t=0;t<s;++t)l[t]=(a-t)*o;else if(o<0)for(let t=0;t<s;++t)l[t]=-((r+t)/o);else for(let t=0;t<s;++t)l[t]=(r+t)*o;return l}function rB(t,e,n){return rP(t*=1,e*=1,n*=1)[2]}function rH(t,e,n){e*=1,t*=1,n*=1;let i=e<t,r=i?rB(e,t,n):rB(t,e,n);return(i?-1:1)*(r<0?-(1/r):r)}var rF={value:()=>{}};function r$(){for(var t,e=0,n=arguments.length,i={};e<n;++e){if(!(t=arguments[e]+"")||t in i||/[\s.]/.test(t))throw Error("illegal type: "+t);i[t]=[]}return new rz(i)}function rz(t){this._=t}function rV(t,e,n){for(var i=0,r=t.length;i<r;++i)if(t[i].name===e){t[i]=rF,t=t.slice(0,i).concat(t.slice(i+1));break}return null!=n&&t.push({name:e,value:n}),t}rz.prototype=r$.prototype={constructor:rz,on:function(t,e){var n,i=this._,r=(t+"").trim().split(/^|\s+/).map(function(t){var e="",n=t.indexOf(".");if(n>=0&&(e=t.slice(n+1),t=t.slice(0,n)),t&&!i.hasOwnProperty(t))throw Error("unknown type: "+t);return{type:t,name:e}}),a=-1,o=r.length;if(arguments.length<2){for(;++a<o;)if((n=(t=r[a]).type)&&(n=function(t,e){for(var n,i=0,r=t.length;i<r;++i)if((n=t[i]).name===e)return n.value}(i[n],t.name)))return n;return}if(null!=e&&"function"!=typeof e)throw Error("invalid callback: "+e);for(;++a<o;)if(n=(t=r[a]).type)i[n]=rV(i[n],t.name,e);else if(null==e)for(n in i)i[n]=rV(i[n],t.name,null);return this},copy:function(){var t={},e=this._;for(var n in e)t[n]=e[n].slice();return new rz(t)},call:function(t,e){if((n=arguments.length-2)>0)for(var n,i,r=Array(n),a=0;a<n;++a)r[a]=arguments[a+2];if(!this._.hasOwnProperty(t))throw Error("unknown type: "+t);for(i=this._[t],a=0,n=i.length;a<n;++a)i[a].value.apply(e,r)},apply:function(t,e,n){if(!this._.hasOwnProperty(t))throw Error("unknown type: "+t);for(var i=this._[t],r=0,a=i.length;r<a;++r)i[r].value.apply(e,n)}};var rG="http://www.w3.org/1999/xhtml";let rj={svg:"http://www.w3.org/2000/svg",xhtml:rG,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function rW(t){var e=t+="",n=e.indexOf(":");return n>=0&&"xmlns"!==(e=t.slice(0,n))&&(t=t.slice(n+1)),rj.hasOwnProperty(e)?{space:rj[e],local:t}:t}function rY(t){var e=rW(t);return(e.local?function(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}:function(t){return function(){var e=this.ownerDocument,n=this.namespaceURI;return n===rG&&e.documentElement.namespaceURI===rG?e.createElement(t):e.createElementNS(n,t)}})(e)}function rZ(){}function rX(t){return null==t?rZ:function(){return this.querySelector(t)}}function rq(){return[]}function rK(t){return null==t?rq:function(){return this.querySelectorAll(t)}}function rQ(t){return function(){return this.matches(t)}}function rJ(t){return function(e){return e.matches(t)}}var r0=Array.prototype.find;function r1(){return this.firstElementChild}var r2=Array.prototype.filter;function r3(){return Array.from(this.children)}function r5(t){return Array(t.length)}function r4(t,e){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=e}function r8(t,e,n,i,r,a){for(var o,s=0,l=e.length,c=a.length;s<c;++s)(o=e[s])?(o.__data__=a[s],i[s]=o):n[s]=new r4(t,a[s]);for(;s<l;++s)(o=e[s])&&(r[s]=o)}function r6(t,e,n,i,r,a,o){var s,l,c,u=new Map,h=e.length,d=a.length,f=Array(h);for(s=0;s<h;++s)(l=e[s])&&(f[s]=c=o.call(l,l.__data__,s,e)+"",u.has(c)?r[s]=l:u.set(c,l));for(s=0;s<d;++s)c=o.call(t,a[s],s,a)+"",(l=u.get(c))?(i[s]=l,l.__data__=a[s],u.delete(c)):n[s]=new r4(t,a[s]);for(s=0;s<h;++s)(l=e[s])&&u.get(f[s])===l&&(r[s]=l)}function r9(t){return t.__data__}function r7(t,e){return t<e?-1:t>e?1:t>=e?0:NaN}function at(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function ae(t,e){return t.style.getPropertyValue(e)||at(t).getComputedStyle(t,null).getPropertyValue(e)}function an(t){return t.trim().split(/^|\s+/)}function ai(t){return t.classList||new ar(t)}function ar(t){this._node=t,this._names=an(t.getAttribute("class")||"")}function aa(t,e){for(var n=ai(t),i=-1,r=e.length;++i<r;)n.add(e[i])}function ao(t,e){for(var n=ai(t),i=-1,r=e.length;++i<r;)n.remove(e[i])}function as(){this.textContent=""}function al(){this.innerHTML=""}function ac(){this.nextSibling&&this.parentNode.appendChild(this)}function au(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function ah(){return null}function ad(){var t=this.parentNode;t&&t.removeChild(this)}function af(){var t=this.cloneNode(!1),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function ap(){var t=this.cloneNode(!0),e=this.parentNode;return e?e.insertBefore(t,this.nextSibling):t}function am(t){return function(){var e=this.__on;if(e){for(var n,i=0,r=-1,a=e.length;i<a;++i)n=e[i],t.type&&n.type!==t.type||n.name!==t.name?e[++r]=n:this.removeEventListener(n.type,n.listener,n.options);++r?e.length=r:delete this.__on}}}function ag(t,e,n){return function(){var i,r=this.__on,a=function(t){e.call(this,t,this.__data__)};if(r){for(var o=0,s=r.length;o<s;++o)if((i=r[o]).type===t.type&&i.name===t.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=n),i.value=e;return}}this.addEventListener(t.type,a,n),i={type:t.type,name:t.name,value:e,listener:a,options:n},r?r.push(i):this.__on=[i]}}function av(t,e,n){var i=at(t),r=i.CustomEvent;"function"==typeof r?r=new r(e,n):(r=i.document.createEvent("Event"),n?(r.initEvent(e,n.bubbles,n.cancelable),r.detail=n.detail):r.initEvent(e,!1,!1)),t.dispatchEvent(r)}r4.prototype={constructor:r4,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,e){return this._parent.insertBefore(t,e)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}},ar.prototype={add:function(t){0>this._names.indexOf(t)&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var e=this._names.indexOf(t);e>=0&&(this._names.splice(e,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};var ay=[null];function a_(t,e){this._groups=t,this._parents=e}function ab(){return new a_([[document.documentElement]],ay)}function ax(t,e){if(t=function(t){let e;for(;e=t.sourceEvent;)t=e;return t}(t),void 0===e&&(e=t.currentTarget),e){var n=e.ownerSVGElement||e;if(n.createSVGPoint){var i=n.createSVGPoint();return i.x=t.clientX,i.y=t.clientY,[(i=i.matrixTransform(e.getScreenCTM().inverse())).x,i.y]}if(e.getBoundingClientRect){var r=e.getBoundingClientRect();return[t.clientX-r.left-e.clientLeft,t.clientY-r.top-e.clientTop]}}return[t.pageX,t.pageY]}function aE(t,e,n){t.prototype=e.prototype=n,n.constructor=t}function aw(t,e){var n=Object.create(t.prototype);for(var i in e)n[i]=e[i];return n}function aT(){}a_.prototype=ab.prototype={constructor:a_,select:function(t){"function"!=typeof t&&(t=rX(t));for(var e=this._groups,n=e.length,i=Array(n),r=0;r<n;++r)for(var a,o,s=e[r],l=s.length,c=i[r]=Array(l),u=0;u<l;++u)(a=s[u])&&(o=t.call(a,a.__data__,u,s))&&("__data__"in a&&(o.__data__=a.__data__),c[u]=o);return new a_(i,this._parents)},selectAll:function(t){var e;"function"==typeof t?(e=t,t=function(){var t;return t=e.apply(this,arguments),null==t?[]:Array.isArray(t)?t:Array.from(t)}):t=rK(t);for(var n=this._groups,i=n.length,r=[],a=[],o=0;o<i;++o)for(var s,l=n[o],c=l.length,u=0;u<c;++u)(s=l[u])&&(r.push(t.call(s,s.__data__,u,l)),a.push(s));return new a_(r,a)},selectChild:function(t){var e;return this.select(null==t?r1:(e="function"==typeof t?t:rJ(t),function(){return r0.call(this.children,e)}))},selectChildren:function(t){var e;return this.selectAll(null==t?r3:(e="function"==typeof t?t:rJ(t),function(){return r2.call(this.children,e)}))},filter:function(t){"function"!=typeof t&&(t=rQ(t));for(var e=this._groups,n=e.length,i=Array(n),r=0;r<n;++r)for(var a,o=e[r],s=o.length,l=i[r]=[],c=0;c<s;++c)(a=o[c])&&t.call(a,a.__data__,c,o)&&l.push(a);return new a_(i,this._parents)},data:function(t,e){if(!arguments.length)return Array.from(this,r9);var n=e?r6:r8,i=this._parents,r=this._groups;"function"!=typeof t&&(y=t,t=function(){return y});for(var a=r.length,o=Array(a),s=Array(a),l=Array(a),c=0;c<a;++c){var u=i[c],h=r[c],d=h.length,f="object"==typeof(v=t.call(u,u&&u.__data__,c,i))&&"length"in v?v:Array.from(v),p=f.length,m=s[c]=Array(p),g=o[c]=Array(p);n(u,h,m,g,l[c]=Array(d),f,e);for(var v,y,_,b,x=0,E=0;x<p;++x)if(_=m[x]){for(x>=E&&(E=x+1);!(b=g[E])&&++E<p;);_._next=b||null}}return(o=new a_(o,i))._enter=s,o._exit=l,o},enter:function(){return new a_(this._enter||this._groups.map(r5),this._parents)},exit:function(){return new a_(this._exit||this._groups.map(r5),this._parents)},join:function(t,e,n){var i=this.enter(),r=this,a=this.exit();return"function"==typeof t?(i=t(i))&&(i=i.selection()):i=i.append(t+""),null!=e&&(r=e(r))&&(r=r.selection()),null==n?a.remove():n(a),i&&r?i.merge(r).order():r},merge:function(t){for(var e=t.selection?t.selection():t,n=this._groups,i=e._groups,r=n.length,a=i.length,o=Math.min(r,a),s=Array(r),l=0;l<o;++l)for(var c,u=n[l],h=i[l],d=u.length,f=s[l]=Array(d),p=0;p<d;++p)(c=u[p]||h[p])&&(f[p]=c);for(;l<r;++l)s[l]=n[l];return new a_(s,this._parents)},selection:function(){return this},order:function(){for(var t=this._groups,e=-1,n=t.length;++e<n;)for(var i,r=t[e],a=r.length-1,o=r[a];--a>=0;)(i=r[a])&&(o&&4^i.compareDocumentPosition(o)&&o.parentNode.insertBefore(i,o),o=i);return this},sort:function(t){function e(e,n){return e&&n?t(e.__data__,n.__data__):!e-!n}t||(t=r7);for(var n=this._groups,i=n.length,r=Array(i),a=0;a<i;++a){for(var o,s=n[a],l=s.length,c=r[a]=Array(l),u=0;u<l;++u)(o=s[u])&&(c[u]=o);c.sort(e)}return new a_(r,this._parents).order()},call:function(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this},nodes:function(){return Array.from(this)},node:function(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var i=t[e],r=0,a=i.length;r<a;++r){var o=i[r];if(o)return o}return null},size:function(){let t=0;for(let e of this)++t;return t},empty:function(){return!this.node()},each:function(t){for(var e=this._groups,n=0,i=e.length;n<i;++n)for(var r,a=e[n],o=0,s=a.length;o<s;++o)(r=a[o])&&t.call(r,r.__data__,o,a);return this},attr:function(t,e){var n=rW(t);if(arguments.length<2){var i=this.node();return n.local?i.getAttributeNS(n.space,n.local):i.getAttribute(n)}return this.each((null==e?n.local?function(t){return function(){this.removeAttributeNS(t.space,t.local)}}:function(t){return function(){this.removeAttribute(t)}}:"function"==typeof e?n.local?function(t,e){return function(){var n=e.apply(this,arguments);null==n?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,n)}}:function(t,e){return function(){var n=e.apply(this,arguments);null==n?this.removeAttribute(t):this.setAttribute(t,n)}}:n.local?function(t,e){return function(){this.setAttributeNS(t.space,t.local,e)}}:function(t,e){return function(){this.setAttribute(t,e)}})(n,e))},style:function(t,e,n){return arguments.length>1?this.each((null==e?function(t){return function(){this.style.removeProperty(t)}}:"function"==typeof e?function(t,e,n){return function(){var i=e.apply(this,arguments);null==i?this.style.removeProperty(t):this.style.setProperty(t,i,n)}}:function(t,e,n){return function(){this.style.setProperty(t,e,n)}})(t,e,n??"")):ae(this.node(),t)},property:function(t,e){return arguments.length>1?this.each((null==e?function(t){return function(){delete this[t]}}:"function"==typeof e?function(t,e){return function(){var n=e.apply(this,arguments);null==n?delete this[t]:this[t]=n}}:function(t,e){return function(){this[t]=e}})(t,e)):this.node()[t]},classed:function(t,e){var n=an(t+"");if(arguments.length<2){for(var i=ai(this.node()),r=-1,a=n.length;++r<a;)if(!i.contains(n[r]))return!1;return!0}return this.each(("function"==typeof e?function(t,e){return function(){(e.apply(this,arguments)?aa:ao)(this,t)}}:e?function(t){return function(){aa(this,t)}}:function(t){return function(){ao(this,t)}})(n,e))},text:function(t){return arguments.length?this.each(null==t?as:("function"==typeof t?function(t){return function(){var e=t.apply(this,arguments);this.textContent=e??""}}:function(t){return function(){this.textContent=t}})(t)):this.node().textContent},html:function(t){return arguments.length?this.each(null==t?al:("function"==typeof t?function(t){return function(){var e=t.apply(this,arguments);this.innerHTML=e??""}}:function(t){return function(){this.innerHTML=t}})(t)):this.node().innerHTML},raise:function(){return this.each(ac)},lower:function(){return this.each(au)},append:function(t){var e="function"==typeof t?t:rY(t);return this.select(function(){return this.appendChild(e.apply(this,arguments))})},insert:function(t,e){var n="function"==typeof t?t:rY(t),i=null==e?ah:"function"==typeof e?e:rX(e);return this.select(function(){return this.insertBefore(n.apply(this,arguments),i.apply(this,arguments)||null)})},remove:function(){return this.each(ad)},clone:function(t){return this.select(t?ap:af)},datum:function(t){return arguments.length?this.property("__data__",t):this.node().__data__},on:function(t,e,n){var i,r,a=(t+"").trim().split(/^|\s+/).map(function(t){var e="",n=t.indexOf(".");return n>=0&&(e=t.slice(n+1),t=t.slice(0,n)),{type:t,name:e}}),o=a.length;if(arguments.length<2){var s=this.node().__on;if(s){for(var l,c=0,u=s.length;c<u;++c)for(i=0,l=s[c];i<o;++i)if((r=a[i]).type===l.type&&r.name===l.name)return l.value}return}for(s=e?ag:am,i=0;i<o;++i)this.each(s(a[i],e,n));return this},dispatch:function(t,e){return this.each(("function"==typeof e?function(t,e){return function(){return av(this,t,e.apply(this,arguments))}}:function(t,e){return function(){return av(this,t,e)}})(t,e))},[Symbol.iterator]:function*(){for(var t=this._groups,e=0,n=t.length;e<n;++e)for(var i,r=t[e],a=0,o=r.length;a<o;++a)(i=r[a])&&(yield i)}};var aS="\\s*([+-]?\\d+)\\s*",aO="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",aM="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",aA=/^#([0-9a-f]{3,8})$/,ak=RegExp(`^rgb\\(${aS},${aS},${aS}\\)$`),aC=RegExp(`^rgb\\(${aM},${aM},${aM}\\)$`),aD=RegExp(`^rgba\\(${aS},${aS},${aS},${aO}\\)$`),aL=RegExp(`^rgba\\(${aM},${aM},${aM},${aO}\\)$`),aR=RegExp(`^hsl\\(${aO},${aM},${aM}\\)$`),aI=RegExp(`^hsla\\(${aO},${aM},${aM},${aO}\\)$`),aN={aliceblue:0xf0f8ff,antiquewhite:0xfaebd7,aqua:65535,aquamarine:8388564,azure:0xf0ffff,beige:0xf5f5dc,bisque:0xffe4c4,black:0,blanchedalmond:0xffebcd,blue:255,blueviolet:9055202,brown:0xa52a2a,burlywood:0xdeb887,cadetblue:6266528,chartreuse:8388352,chocolate:0xd2691e,coral:0xff7f50,cornflowerblue:6591981,cornsilk:0xfff8dc,crimson:0xdc143c,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:0xb8860b,darkgray:0xa9a9a9,darkgreen:25600,darkgrey:0xa9a9a9,darkkhaki:0xbdb76b,darkmagenta:9109643,darkolivegreen:5597999,darkorange:0xff8c00,darkorchid:0x9932cc,darkred:9109504,darksalmon:0xe9967a,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:0xff1493,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:0xb22222,floralwhite:0xfffaf0,forestgreen:2263842,fuchsia:0xff00ff,gainsboro:0xdcdcdc,ghostwhite:0xf8f8ff,gold:0xffd700,goldenrod:0xdaa520,gray:8421504,green:32768,greenyellow:0xadff2f,grey:8421504,honeydew:0xf0fff0,hotpink:0xff69b4,indianred:0xcd5c5c,indigo:4915330,ivory:0xfffff0,khaki:0xf0e68c,lavender:0xe6e6fa,lavenderblush:0xfff0f5,lawngreen:8190976,lemonchiffon:0xfffacd,lightblue:0xadd8e6,lightcoral:0xf08080,lightcyan:0xe0ffff,lightgoldenrodyellow:0xfafad2,lightgray:0xd3d3d3,lightgreen:9498256,lightgrey:0xd3d3d3,lightpink:0xffb6c1,lightsalmon:0xffa07a,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:0xb0c4de,lightyellow:0xffffe0,lime:65280,limegreen:3329330,linen:0xfaf0e6,magenta:0xff00ff,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:0xba55d3,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:0xc71585,midnightblue:1644912,mintcream:0xf5fffa,mistyrose:0xffe4e1,moccasin:0xffe4b5,navajowhite:0xffdead,navy:128,oldlace:0xfdf5e6,olive:8421376,olivedrab:7048739,orange:0xffa500,orangered:0xff4500,orchid:0xda70d6,palegoldenrod:0xeee8aa,palegreen:0x98fb98,paleturquoise:0xafeeee,palevioletred:0xdb7093,papayawhip:0xffefd5,peachpuff:0xffdab9,peru:0xcd853f,pink:0xffc0cb,plum:0xdda0dd,powderblue:0xb0e0e6,purple:8388736,rebeccapurple:6697881,red:0xff0000,rosybrown:0xbc8f8f,royalblue:4286945,saddlebrown:9127187,salmon:0xfa8072,sandybrown:0xf4a460,seagreen:3050327,seashell:0xfff5ee,sienna:0xa0522d,silver:0xc0c0c0,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:0xfffafa,springgreen:65407,steelblue:4620980,tan:0xd2b48c,teal:32896,thistle:0xd8bfd8,tomato:0xff6347,turquoise:4251856,violet:0xee82ee,wheat:0xf5deb3,white:0xffffff,whitesmoke:0xf5f5f5,yellow:0xffff00,yellowgreen:0x9acd32};function aP(){return this.rgb().formatHex()}function aU(){return this.rgb().formatRgb()}function aB(t){var e,n;return t=(t+"").trim().toLowerCase(),(e=aA.exec(t))?(n=e[1].length,e=parseInt(e[1],16),6===n?aH(e):3===n?new az(e>>8&15|e>>4&240,e>>4&15|240&e,(15&e)<<4|15&e,1):8===n?aF(e>>24&255,e>>16&255,e>>8&255,(255&e)/255):4===n?aF(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|240&e,((15&e)<<4|15&e)/255):null):(e=ak.exec(t))?new az(e[1],e[2],e[3],1):(e=aC.exec(t))?new az(255*e[1]/100,255*e[2]/100,255*e[3]/100,1):(e=aD.exec(t))?aF(e[1],e[2],e[3],e[4]):(e=aL.exec(t))?aF(255*e[1]/100,255*e[2]/100,255*e[3]/100,e[4]):(e=aR.exec(t))?aZ(e[1],e[2]/100,e[3]/100,1):(e=aI.exec(t))?aZ(e[1],e[2]/100,e[3]/100,e[4]):aN.hasOwnProperty(t)?aH(aN[t]):"transparent"===t?new az(NaN,NaN,NaN,0):null}function aH(t){return new az(t>>16&255,t>>8&255,255&t,1)}function aF(t,e,n,i){return i<=0&&(t=e=n=NaN),new az(t,e,n,i)}function a$(t,e,n,i){var r;return 1==arguments.length?((r=t)instanceof aT||(r=aB(r)),r?new az((r=r.rgb()).r,r.g,r.b,r.opacity):new az):new az(t,e,n,i??1)}function az(t,e,n,i){this.r=+t,this.g=+e,this.b=+n,this.opacity=+i}function aV(){return`#${aY(this.r)}${aY(this.g)}${aY(this.b)}`}function aG(){let t=aj(this.opacity);return`${1===t?"rgb(":"rgba("}${aW(this.r)}, ${aW(this.g)}, ${aW(this.b)}${1===t?")":`, ${t})`}`}function aj(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function aW(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function aY(t){return((t=aW(t))<16?"0":"")+t.toString(16)}function aZ(t,e,n,i){return i<=0?t=e=n=NaN:n<=0||n>=1?t=e=NaN:e<=0&&(t=NaN),new aq(t,e,n,i)}function aX(t){if(t instanceof aq)return new aq(t.h,t.s,t.l,t.opacity);if(t instanceof aT||(t=aB(t)),!t)return new aq;if(t instanceof aq)return t;var e=(t=t.rgb()).r/255,n=t.g/255,i=t.b/255,r=Math.min(e,n,i),a=Math.max(e,n,i),o=NaN,s=a-r,l=(a+r)/2;return s?(o=e===a?(n-i)/s+(n<i)*6:n===a?(i-e)/s+2:(e-n)/s+4,s/=l<.5?a+r:2-a-r,o*=60):s=l>0&&l<1?0:o,new aq(o,s,l,t.opacity)}function aq(t,e,n,i){this.h=+t,this.s=+e,this.l=+n,this.opacity=+i}function aK(t){return(t=(t||0)%360)<0?t+360:t}function aQ(t){return Math.max(0,Math.min(1,t||0))}function aJ(t,e,n){return(t<60?e+(n-e)*t/60:t<180?n:t<240?e+(n-e)*(240-t)/60:e)*255}aE(aT,aB,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:aP,formatHex:aP,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return aX(this).formatHsl()},formatRgb:aU,toString:aU}),aE(az,a$,aw(aT,{brighter(t){return t=null==t?1.4285714285714286:Math.pow(1.4285714285714286,t),new az(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=null==t?.7:Math.pow(.7,t),new az(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new az(aW(this.r),aW(this.g),aW(this.b),aj(this.opacity))},displayable(){return -.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:aV,formatHex:aV,formatHex8:function(){return`#${aY(this.r)}${aY(this.g)}${aY(this.b)}${aY((isNaN(this.opacity)?1:this.opacity)*255)}`},formatRgb:aG,toString:aG})),aE(aq,function(t,e,n,i){return 1==arguments.length?aX(t):new aq(t,e,n,i??1)},aw(aT,{brighter(t){return t=null==t?1.4285714285714286:Math.pow(1.4285714285714286,t),new aq(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=null==t?.7:Math.pow(.7,t),new aq(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,e=isNaN(t)||isNaN(this.s)?0:this.s,n=this.l,i=n+(n<.5?n:1-n)*e,r=2*n-i;return new az(aJ(t>=240?t-240:t+120,r,i),aJ(t,r,i),aJ(t<120?t+240:t-120,r,i),this.opacity)},clamp(){return new aq(aK(this.h),aQ(this.s),aQ(this.l),aj(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let t=aj(this.opacity);return`${1===t?"hsl(":"hsla("}${aK(this.h)}, ${100*aQ(this.s)}%, ${100*aQ(this.l)}%${1===t?")":`, ${t})`}`}}));let a0=t=>()=>t;function a1(t,e){var n=e-t;return n?function(e){return t+e*n}:a0(isNaN(t)?e:t)}let a2=function t(e){var n,i=1==(n=+e)?a1:function(t,e){var i,r,a;return e-t?(i=t,r=e,i=Math.pow(i,a=n),r=Math.pow(r,a)-i,a=1/a,function(t){return Math.pow(i+t*r,a)}):a0(isNaN(t)?e:t)};function r(t,e){var n=i((t=a$(t)).r,(e=a$(e)).r),r=i(t.g,e.g),a=i(t.b,e.b),o=a1(t.opacity,e.opacity);return function(e){return t.r=n(e),t.g=r(e),t.b=a(e),t.opacity=o(e),t+""}}return r.gamma=t,r}(1);function a3(t,e){return t*=1,e*=1,function(n){return t*(1-n)+e*n}}var a5=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,a4=RegExp(a5.source,"g");function a8(t,e){var n,i,r,a,o,s=a5.lastIndex=a4.lastIndex=0,l=-1,c=[],u=[];for(t+="",e+="";(r=a5.exec(t))&&(a=a4.exec(e));)(o=a.index)>s&&(o=e.slice(s,o),c[l]?c[l]+=o:c[++l]=o),(r=r[0])===(a=a[0])?c[l]?c[l]+=a:c[++l]=a:(c[++l]=null,u.push({i:l,x:a3(r,a)})),s=a4.lastIndex;return s<e.length&&(o=e.slice(s),c[l]?c[l]+=o:c[++l]=o),c.length<2?u[0]?(n=u[0].x,function(t){return n(t)+""}):(i=e,function(){return i}):(e=u.length,function(t){for(var n,i=0;i<e;++i)c[(n=u[i]).i]=n.x(t);return c.join("")})}function a6(t,e){var n,i,r=typeof e;return null==e||"boolean"===r?a0(e):("number"===r?a3:"string"===r?(i=aB(e))?(e=i,a2):a8:e instanceof aB?a2:e instanceof Date?function(t,e){var n=new Date;return t*=1,e*=1,function(i){return n.setTime(t*(1-i)+e*i),n}}:!ArrayBuffer.isView(n=e)||n instanceof DataView?Array.isArray(e)?function(t,e){var n,i=e?e.length:0,r=t?Math.min(i,t.length):0,a=Array(r),o=Array(i);for(n=0;n<r;++n)a[n]=a6(t[n],e[n]);for(;n<i;++n)o[n]=e[n];return function(t){for(n=0;n<r;++n)o[n]=a[n](t);return o}}:"function"!=typeof e.valueOf&&"function"!=typeof e.toString||isNaN(e)?function(t,e){var n,i={},r={};for(n in(null===t||"object"!=typeof t)&&(t={}),(null===e||"object"!=typeof e)&&(e={}),e)n in t?i[n]=a6(t[n],e[n]):r[n]=e[n];return function(t){for(n in i)r[n]=i[n](t);return r}}:a3:function(t,e){e||(e=[]);var n,i=t?Math.min(e.length,t.length):0,r=e.slice();return function(a){for(n=0;n<i;++n)r[n]=t[n]*(1-a)+e[n]*a;return r}})(t,e)}function a9(t,e){return t*=1,e*=1,function(n){return Math.round(t*(1-n)+e*n)}}var a7=180/Math.PI,ot={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function oe(t,e,n,i,r,a){var o,s,l;return(o=Math.sqrt(t*t+e*e))&&(t/=o,e/=o),(l=t*n+e*i)&&(n-=t*l,i-=e*l),(s=Math.sqrt(n*n+i*i))&&(n/=s,i/=s,l/=s),t*i<e*n&&(t=-t,e=-e,l=-l,o=-o),{translateX:r,translateY:a,rotate:Math.atan2(e,t)*a7,skewX:Math.atan(l)*a7,scaleX:o,scaleY:s}}function on(t,e,n,i){function r(t){return t.length?t.pop()+" ":""}return function(a,o){var s,l,c,u,h=[],d=[];return a=t(a),o=t(o),function(t,i,r,a,o,s){if(t!==r||i!==a){var l=o.push("translate(",null,e,null,n);s.push({i:l-4,x:a3(t,r)},{i:l-2,x:a3(i,a)})}else(r||a)&&o.push("translate("+r+e+a+n)}(a.translateX,a.translateY,o.translateX,o.translateY,h,d),s=a.rotate,l=o.rotate,s!==l?(s-l>180?l+=360:l-s>180&&(s+=360),d.push({i:h.push(r(h)+"rotate(",null,i)-2,x:a3(s,l)})):l&&h.push(r(h)+"rotate("+l+i),c=a.skewX,u=o.skewX,c!==u?d.push({i:h.push(r(h)+"skewX(",null,i)-2,x:a3(c,u)}):u&&h.push(r(h)+"skewX("+u+i),function(t,e,n,i,a,o){if(t!==n||e!==i){var s=a.push(r(a)+"scale(",null,",",null,")");o.push({i:s-4,x:a3(t,n)},{i:s-2,x:a3(e,i)})}else(1!==n||1!==i)&&a.push(r(a)+"scale("+n+","+i+")")}(a.scaleX,a.scaleY,o.scaleX,o.scaleY,h,d),a=o=null,function(t){for(var e,n=-1,i=d.length;++n<i;)h[(e=d[n]).i]=e.x(t);return h.join("")}}}var oi,or,oa,oo,os,ol,oc,ou,oh,od,of,op=on(function(t){let e=new("function"==typeof DOMMatrix?DOMMatrix:WebKitCSSMatrix)(t+"");return e.isIdentity?ot:oe(e.a,e.b,e.c,e.d,e.e,e.f)},"px, ","px)","deg)"),om=on(function(t){return null!=t&&(oh||(oh=document.createElementNS("http://www.w3.org/2000/svg","g")),oh.setAttribute("transform",t),t=oh.transform.baseVal.consolidate())?oe((t=t.matrix).a,t.b,t.c,t.d,t.e,t.f):ot},", ",")",")"),og=0,ov=0,oy=0,o_=0,ob=0,ox=0,oE="object"==typeof performance&&performance.now?performance:Date,ow="object"==typeof window&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function oT(){return ob||(ow(oS),ob=oE.now()+ox)}function oS(){ob=0}function oO(){this._call=this._time=this._next=null}function oM(t,e,n){var i=new oO;return i.restart(t,e,n),i}function oA(){ob=(o_=oE.now())+ox,og=ov=0;try{oT(),++og;for(var t,e=od;e;)(t=ob-e._time)>=0&&e._call.call(void 0,t),e=e._next;--og}finally{og=0,function(){for(var t,e,n=od,i=1/0;n;)n._call?(i>n._time&&(i=n._time),t=n,n=n._next):(e=n._next,n._next=null,n=t?t._next=e:od=e);of=t,oC(i)}(),ob=0}}function ok(){var t=oE.now(),e=t-o_;e>1e3&&(ox-=e,o_=t)}function oC(t){!og&&(ov&&(ov=clearTimeout(ov)),t-ob>24?(t<1/0&&(ov=setTimeout(oA,t-oE.now()-ox)),oy&&(oy=clearInterval(oy))):(oy||(o_=oE.now(),oy=setInterval(ok,1e3)),og=1,ow(oA)))}function oD(t,e,n){var i=new oO;return e=null==e?0:+e,i.restart(n=>{i.stop(),t(n+e)},e,n),i}oO.prototype=oM.prototype={constructor:oO,restart:function(t,e,n){if("function"!=typeof t)throw TypeError("callback is not a function");n=(null==n?oT():+n)+(null==e?0:+e),this._next||of===this||(of?of._next=this:od=this,of=this),this._call=t,this._time=n,oC()},stop:function(){this._call&&(this._call=null,this._time=1/0,oC())}};var oL=r$("start","end","cancel","interrupt"),oR=[];function oI(t,e,n,i,r,a){var o=t.__transition;if(o){if(n in o)return}else t.__transition={};!function(t,e,n){var i,r=t.__transition;function a(l){var c,u,h,d;if(1!==n.state)return s();for(c in r)if((d=r[c]).name===n.name){if(3===d.state)return oD(a);4===d.state?(d.state=6,d.timer.stop(),d.on.call("interrupt",t,t.__data__,d.index,d.group),delete r[c]):+c<e&&(d.state=6,d.timer.stop(),d.on.call("cancel",t,t.__data__,d.index,d.group),delete r[c])}if(oD(function(){3===n.state&&(n.state=4,n.timer.restart(o,n.delay,n.time),o(l))}),n.state=2,n.on.call("start",t,t.__data__,n.index,n.group),2===n.state){for(n.state=3,i=Array(h=n.tween.length),c=0,u=-1;c<h;++c)(d=n.tween[c].value.call(t,t.__data__,n.index,n.group))&&(i[++u]=d);i.length=u+1}}function o(e){for(var r=e<n.duration?n.ease.call(null,e/n.duration):(n.timer.restart(s),n.state=5,1),a=-1,o=i.length;++a<o;)i[a].call(t,r);5===n.state&&(n.on.call("end",t,t.__data__,n.index,n.group),s())}function s(){for(var i in n.state=6,n.timer.stop(),delete r[e],r)return;delete t.__transition}r[e]=n,n.timer=oM(function(t){n.state=1,n.timer.restart(a,n.delay,n.time),n.delay<=t&&a(t-n.delay)},0,n.time)}(t,n,{name:e,index:i,group:r,on:oL,tween:oR,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:0})}function oN(t,e){var n=oU(t,e);if(n.state>0)throw Error("too late; already scheduled");return n}function oP(t,e){var n=oU(t,e);if(n.state>3)throw Error("too late; already running");return n}function oU(t,e){var n=t.__transition;if(!n||!(n=n[e]))throw Error("transition not found");return n}function oB(t,e){var n,i,r,a=t.__transition,o=!0;if(a){for(r in e=null==e?null:e+"",a){if((n=a[r]).name!==e){o=!1;continue}i=n.state>2&&n.state<5,n.state=6,n.timer.stop(),n.on.call(i?"interrupt":"cancel",t,t.__data__,n.index,n.group),delete a[r]}o&&delete t.__transition}}function oH(t,e,n){var i=t._id;return t.each(function(){var t=oP(this,i);(t.value||(t.value={}))[e]=n.apply(this,arguments)}),function(t){return oU(t,i).value[e]}}function oF(t,e){var n;return("number"==typeof e?a3:e instanceof aB?a2:(n=aB(e))?(e=n,a2):a8)(t,e)}var o$=ab.prototype.constructor;function oz(t){return function(){this.style.removeProperty(t)}}var oV=0;function oG(t,e,n,i){this._groups=t,this._parents=e,this._name=n,this._id=i}var oj=ab.prototype;function oW(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}oG.prototype={constructor:oG,select:function(t){var e=this._name,n=this._id;"function"!=typeof t&&(t=rX(t));for(var i=this._groups,r=i.length,a=Array(r),o=0;o<r;++o)for(var s,l,c=i[o],u=c.length,h=a[o]=Array(u),d=0;d<u;++d)(s=c[d])&&(l=t.call(s,s.__data__,d,c))&&("__data__"in s&&(l.__data__=s.__data__),h[d]=l,oI(h[d],e,n,d,h,oU(s,n)));return new oG(a,this._parents,e,n)},selectAll:function(t){var e=this._name,n=this._id;"function"!=typeof t&&(t=rK(t));for(var i=this._groups,r=i.length,a=[],o=[],s=0;s<r;++s)for(var l,c=i[s],u=c.length,h=0;h<u;++h)if(l=c[h]){for(var d,f=t.call(l,l.__data__,h,c),p=oU(l,n),m=0,g=f.length;m<g;++m)(d=f[m])&&oI(d,e,n,m,f,p);a.push(f),o.push(l)}return new oG(a,o,e,n)},selectChild:oj.selectChild,selectChildren:oj.selectChildren,filter:function(t){"function"!=typeof t&&(t=rQ(t));for(var e=this._groups,n=e.length,i=Array(n),r=0;r<n;++r)for(var a,o=e[r],s=o.length,l=i[r]=[],c=0;c<s;++c)(a=o[c])&&t.call(a,a.__data__,c,o)&&l.push(a);return new oG(i,this._parents,this._name,this._id)},merge:function(t){if(t._id!==this._id)throw Error();for(var e=this._groups,n=t._groups,i=e.length,r=n.length,a=Math.min(i,r),o=Array(i),s=0;s<a;++s)for(var l,c=e[s],u=n[s],h=c.length,d=o[s]=Array(h),f=0;f<h;++f)(l=c[f]||u[f])&&(d[f]=l);for(;s<i;++s)o[s]=e[s];return new oG(o,this._parents,this._name,this._id)},selection:function(){return new o$(this._groups,this._parents)},transition:function(){for(var t=this._name,e=this._id,n=++oV,i=this._groups,r=i.length,a=0;a<r;++a)for(var o,s=i[a],l=s.length,c=0;c<l;++c)if(o=s[c]){var u=oU(o,e);oI(o,t,n,c,s,{time:u.time+u.delay+u.duration,delay:0,duration:u.duration,ease:u.ease})}return new oG(i,this._parents,t,n)},call:oj.call,nodes:oj.nodes,node:oj.node,size:oj.size,empty:oj.empty,each:oj.each,on:function(t,e){var n,i,r,a,o,s,l=this._id;return arguments.length<2?oU(this.node(),l).on.on(t):this.each((n=l,i=t,r=e,s=(i+"").trim().split(/^|\s+/).every(function(t){var e=t.indexOf(".");return e>=0&&(t=t.slice(0,e)),!t||"start"===t})?oN:oP,function(){var t=s(this,n),e=t.on;e!==a&&(o=(a=e).copy()).on(i,r),t.on=o}))},attr:function(t,e){var n=rW(t),i="transform"===n?om:oF;return this.attrTween(t,"function"==typeof e?(n.local?function(t,e,n){var i,r,a;return function(){var o,s,l=n(this);return null==l?void this.removeAttributeNS(t.space,t.local):(o=this.getAttributeNS(t.space,t.local))===(s=l+"")?null:o===i&&s===r?a:(r=s,a=e(i=o,l))}}:function(t,e,n){var i,r,a;return function(){var o,s,l=n(this);return null==l?void this.removeAttribute(t):(o=this.getAttribute(t))===(s=l+"")?null:o===i&&s===r?a:(r=s,a=e(i=o,l))}})(n,i,oH(this,"attr."+t,e)):null==e?(n.local?function(t){return function(){this.removeAttributeNS(t.space,t.local)}}:function(t){return function(){this.removeAttribute(t)}})(n):(n.local?function(t,e,n){var i,r,a=n+"";return function(){var o=this.getAttributeNS(t.space,t.local);return o===a?null:o===i?r:r=e(i=o,n)}}:function(t,e,n){var i,r,a=n+"";return function(){var o=this.getAttribute(t);return o===a?null:o===i?r:r=e(i=o,n)}})(n,i,e))},attrTween:function(t,e){var n="attr."+t;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(null==e)return this.tween(n,null);if("function"!=typeof e)throw Error();var i=rW(t);return this.tween(n,(i.local?function(t,e){var n,i;function r(){var r=e.apply(this,arguments);return r!==i&&(n=(i=r)&&function(e){this.setAttributeNS(t.space,t.local,r.call(this,e))}),n}return r._value=e,r}:function(t,e){var n,i;function r(){var r=e.apply(this,arguments);return r!==i&&(n=(i=r)&&function(e){this.setAttribute(t,r.call(this,e))}),n}return r._value=e,r})(i,e))},style:function(t,e,n){var i,r,a,o,s,l,c,u,h,d,f,p,m,g,v,y,_,b,x,E,w,T="transform"==(t+="")?op:oF;return null==e?this.styleTween(t,(i=t,function(){var t=ae(this,i),e=(this.style.removeProperty(i),ae(this,i));return t===e?null:t===r&&e===a?o:o=T(r=t,a=e)})).on("end.style."+t,oz(t)):"function"==typeof e?this.styleTween(t,(s=t,l=oH(this,"style."+t,e),function(){var t=ae(this,s),e=l(this),n=e+"";return null==e&&(this.style.removeProperty(s),n=e=ae(this,s)),t===n?null:t===c&&n===u?h:(u=n,h=T(c=t,e))})).each((d=this._id,_="end."+(y="style."+(f=t)),function(){var t=oP(this,d),e=t.on,n=null==t.value[y]?v||(v=oz(f)):void 0;(e!==p||g!==n)&&(m=(p=e).copy()).on(_,g=n),t.on=m})):this.styleTween(t,(b=t,w=e+"",function(){var t=ae(this,b);return t===w?null:t===x?E:E=T(x=t,e)}),n).on("end.style."+t,null)},styleTween:function(t,e,n){var i="style."+(t+="");if(arguments.length<2)return(i=this.tween(i))&&i._value;if(null==e)return this.tween(i,null);if("function"!=typeof e)throw Error();return this.tween(i,function(t,e,n){var i,r;function a(){var a=e.apply(this,arguments);return a!==r&&(i=(r=a)&&function(e){this.style.setProperty(t,a.call(this,e),n)}),i}return a._value=e,a}(t,e,n??""))},text:function(t){var e,n;return this.tween("text","function"==typeof t?(e=oH(this,"text",t),function(){var t=e(this);this.textContent=t??""}):(n=null==t?"":t+"",function(){this.textContent=n}))},textTween:function(t){var e="text";if(arguments.length<1)return(e=this.tween(e))&&e._value;if(null==t)return this.tween(e,null);if("function"!=typeof t)throw Error();return this.tween(e,function(t){var e,n;function i(){var i=t.apply(this,arguments);return i!==n&&(e=(n=i)&&function(t){this.textContent=i.call(this,t)}),e}return i._value=t,i}(t))},remove:function(){var t;return this.on("end.remove",(t=this._id,function(){var e=this.parentNode;for(var n in this.__transition)if(+n!==t)return;e&&e.removeChild(this)}))},tween:function(t,e){var n=this._id;if(t+="",arguments.length<2){for(var i,r=oU(this.node(),n).tween,a=0,o=r.length;a<o;++a)if((i=r[a]).name===t)return i.value;return null}return this.each((null==e?function(t,e){var n,i;return function(){var r=oP(this,t),a=r.tween;if(a!==n){i=n=a;for(var o=0,s=i.length;o<s;++o)if(i[o].name===e){(i=i.slice()).splice(o,1);break}}r.tween=i}}:function(t,e,n){var i,r;if("function"!=typeof n)throw Error();return function(){var a=oP(this,t),o=a.tween;if(o!==i){r=(i=o).slice();for(var s={name:e,value:n},l=0,c=r.length;l<c;++l)if(r[l].name===e){r[l]=s;break}l===c&&r.push(s)}a.tween=r}})(n,t,e))},delay:function(t){var e=this._id;return arguments.length?this.each(("function"==typeof t?function(t,e){return function(){oN(this,t).delay=+e.apply(this,arguments)}}:function(t,e){return e*=1,function(){oN(this,t).delay=e}})(e,t)):oU(this.node(),e).delay},duration:function(t){var e=this._id;return arguments.length?this.each(("function"==typeof t?function(t,e){return function(){oP(this,t).duration=+e.apply(this,arguments)}}:function(t,e){return e*=1,function(){oP(this,t).duration=e}})(e,t)):oU(this.node(),e).duration},ease:function(t){var e=this._id;return arguments.length?this.each(function(t,e){if("function"!=typeof e)throw Error();return function(){oP(this,t).ease=e}}(e,t)):oU(this.node(),e).ease},easeVarying:function(t){var e;if("function"!=typeof t)throw Error();return this.each((e=this._id,function(){var n=t.apply(this,arguments);if("function"!=typeof n)throw Error();oP(this,e).ease=n}))},end:function(){var t,e,n=this,i=n._id,r=n.size();return new Promise(function(a,o){var s={value:o},l={value:function(){0==--r&&a()}};n.each(function(){var n=oP(this,i),r=n.on;r!==t&&((e=(t=r).copy())._.cancel.push(s),e._.interrupt.push(s),e._.end.push(l)),n.on=e}),0===r&&a()})},[Symbol.iterator]:oj[Symbol.iterator]};var oY={time:null,delay:0,duration:250,ease:oW};function oZ(t,e){if((n=(t=e?t.toExponential(e-1):t.toExponential()).indexOf("e"))<0)return null;var n,i=t.slice(0,n);return[i.length>1?i[0]+i.slice(2):i,+t.slice(n+1)]}function oX(t){return(t=oZ(Math.abs(t)))?t[1]:NaN}ab.prototype.interrupt=function(t){return this.each(function(){oB(this,t)})},ab.prototype.transition=function(t){t instanceof oG?(r=t._id,t=t._name):(r=++oV,(a=oY).time=oT(),t=null==t?null:t+"");for(var e=this._groups,n=e.length,i=0;i<n;++i)for(var r,a,o,s=e[i],l=s.length,c=0;c<l;++c)(o=s[c])&&oI(o,t,r,c,s,a||function(t,e){for(var n;!(n=t.__transition)||!(n=n[e]);)if(!(t=t.parentNode))throw Error(`transition ${e} not found`);return n}(o,r));return new oG(e,this._parents,t,r)};var oq=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function oK(t){var e;if(!(e=oq.exec(t)))throw Error("invalid format: "+t);return new oQ({fill:e[1],align:e[2],sign:e[3],symbol:e[4],zero:e[5],width:e[6],comma:e[7],precision:e[8]&&e[8].slice(1),trim:e[9],type:e[10]})}function oQ(t){this.fill=void 0===t.fill?" ":t.fill+"",this.align=void 0===t.align?">":t.align+"",this.sign=void 0===t.sign?"-":t.sign+"",this.symbol=void 0===t.symbol?"":t.symbol+"",this.zero=!!t.zero,this.width=void 0===t.width?void 0:+t.width,this.comma=!!t.comma,this.precision=void 0===t.precision?void 0:+t.precision,this.trim=!!t.trim,this.type=void 0===t.type?"":t.type+""}function oJ(t,e){var n=oZ(t,e);if(!n)return t+"";var i=n[0],r=n[1];return r<0?"0."+Array(-r).join("0")+i:i.length>r+1?i.slice(0,r+1)+"."+i.slice(r+1):i+Array(r-i.length+2).join("0")}oK.prototype=oQ.prototype,oQ.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(void 0===this.width?"":Math.max(1,0|this.width))+(this.comma?",":"")+(void 0===this.precision?"":"."+Math.max(0,0|this.precision))+(this.trim?"~":"")+this.type};let o0={"%":(t,e)=>(100*t).toFixed(e),b:t=>Math.round(t).toString(2),c:t=>t+"",d:function(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)},e:(t,e)=>t.toExponential(e),f:(t,e)=>t.toFixed(e),g:(t,e)=>t.toPrecision(e),o:t=>Math.round(t).toString(8),p:(t,e)=>oJ(100*t,e),r:oJ,s:function(t,e){var n=oZ(t,e);if(!n)return t+"";var i=n[0],r=n[1],a=r-(dX=3*Math.max(-8,Math.min(8,Math.floor(r/3))))+1,o=i.length;return a===o?i:a>o?i+Array(a-o+1).join("0"):a>0?i.slice(0,a)+"."+i.slice(a):"0."+Array(1-a).join("0")+oZ(t,Math.max(0,e+a-1))[0]},X:t=>Math.round(t).toString(16).toUpperCase(),x:t=>Math.round(t).toString(16)};function o1(t){return t}var o2=Array.prototype.map,o3=["y","z","a","f","p","n","\xb5","m","","k","M","G","T","P","E","Z","Y"];function o5(t,e){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(e).domain(t)}return this}dK=(dq=function(t){var e,n,i,r=void 0===t.grouping||void 0===t.thousands?o1:(e=o2.call(t.grouping,Number),n=t.thousands+"",function(t,i){for(var r=t.length,a=[],o=0,s=e[0],l=0;r>0&&s>0&&(l+s+1>i&&(s=Math.max(1,i-l)),a.push(t.substring(r-=s,r+s)),!((l+=s+1)>i));)s=e[o=(o+1)%e.length];return a.reverse().join(n)}),a=void 0===t.currency?"":t.currency[0]+"",o=void 0===t.currency?"":t.currency[1]+"",s=void 0===t.decimal?".":t.decimal+"",l=void 0===t.numerals?o1:(i=o2.call(t.numerals,String),function(t){return t.replace(/[0-9]/g,function(t){return i[+t]})}),c=void 0===t.percent?"%":t.percent+"",u=void 0===t.minus?"−":t.minus+"",h=void 0===t.nan?"NaN":t.nan+"";function d(t){var e=(t=oK(t)).fill,n=t.align,i=t.sign,d=t.symbol,f=t.zero,p=t.width,m=t.comma,g=t.precision,v=t.trim,y=t.type;"n"===y?(m=!0,y="g"):o0[y]||(void 0===g&&(g=12),v=!0,y="g"),(f||"0"===e&&"="===n)&&(f=!0,e="0",n="=");var _="$"===d?a:"#"===d&&/[boxX]/.test(y)?"0"+y.toLowerCase():"",b="$"===d?o:/[%p]/.test(y)?c:"",x=o0[y],E=/[defgprs%]/.test(y);function w(t){var a,o,c,d=_,w=b;if("c"===y)w=x(t)+w,t="";else{var T=(t*=1)<0||1/t<0;if(t=isNaN(t)?h:x(Math.abs(t),g),v&&(t=function(t){t:for(var e,n=t.length,i=1,r=-1;i<n;++i)switch(t[i]){case".":r=e=i;break;case"0":0===r&&(r=i),e=i;break;default:if(!+t[i])break t;r>0&&(r=0)}return r>0?t.slice(0,r)+t.slice(e+1):t}(t)),T&&0==+t&&"+"!==i&&(T=!1),d=(T?"("===i?i:u:"-"===i||"("===i?"":i)+d,w=("s"===y?o3[8+dX/3]:"")+w+(T&&"("===i?")":""),E){for(a=-1,o=t.length;++a<o;)if(48>(c=t.charCodeAt(a))||c>57){w=(46===c?s+t.slice(a+1):t.slice(a))+w,t=t.slice(0,a);break}}}m&&!f&&(t=r(t,1/0));var S=d.length+t.length+w.length,O=S<p?Array(p-S+1).join(e):"";switch(m&&f&&(t=r(O+t,O.length?p-w.length:1/0),O=""),n){case"<":t=d+t+w+O;break;case"=":t=d+O+t+w;break;case"^":t=O.slice(0,S=O.length>>1)+d+t+w+O.slice(S);break;default:t=O+d+t+w}return l(t)}return g=void 0===g?6:/[gprs]/.test(y)?Math.max(1,Math.min(21,g)):Math.max(0,Math.min(20,g)),w.toString=function(){return t+""},w}return{format:d,formatPrefix:function(t,e){var n=d(((t=oK(t)).type="f",t)),i=3*Math.max(-8,Math.min(8,Math.floor(oX(e)/3))),r=Math.pow(10,-i),a=o3[8+i/3];return function(t){return n(r*t)+a}}}}({thousands:",",grouping:[3],currency:["$",""]})).format,dQ=dq.formatPrefix;let o4=Symbol("implicit");function o8(){var t=new rC,e=[],n=[],i=o4;function r(r){let a=t.get(r);if(void 0===a){if(i!==o4)return i;t.set(r,a=e.push(r)-1)}return n[a%n.length]}return r.domain=function(n){if(!arguments.length)return e.slice();for(let i of(e=[],t=new rC,n))t.has(i)||t.set(i,e.push(i)-1);return r},r.range=function(t){return arguments.length?(n=Array.from(t),r):n.slice()},r.unknown=function(t){return arguments.length?(i=t,r):i},r.copy=function(){return o8(e,n).unknown(i)},o5.apply(r,arguments),r}function o6(t){return+t}var o9=[0,1];function o7(t){return t}function st(t,e){var n;return(e-=t*=1)?function(n){return(n-t)/e}:(n=isNaN(e)?NaN:.5,function(){return n})}function se(t,e,n){var i=t[0],r=t[1],a=e[0],o=e[1];return r<i?(i=st(r,i),a=n(o,a)):(i=st(i,r),a=n(a,o)),function(t){return a(i(t))}}function sn(t,e,n){var i=Math.min(t.length,e.length)-1,r=Array(i),a=Array(i),o=-1;for(t[i]<t[0]&&(t=t.slice().reverse(),e=e.slice().reverse());++o<i;)r[o]=st(t[o],t[o+1]),a[o]=n(e[o],e[o+1]);return function(e){var n=rA(t,e,1,i)-1;return a[n](r[n](e))}}function si(t,e){return e.domain(t.domain()).range(t.range()).interpolate(t.interpolate()).clamp(t.clamp()).unknown(t.unknown())}function sr(){var t,e,n,i,r,a,o=o9,s=o9,l=a6,c=o7;function u(){var t,e,n,l=Math.min(o.length,s.length);return c!==o7&&(t=o[0],e=o[l-1],t>e&&(n=t,t=e,e=n),c=function(n){return Math.max(t,Math.min(e,n))}),i=l>2?sn:se,r=a=null,h}function h(e){return null==e||isNaN(e*=1)?n:(r||(r=i(o.map(t),s,l)))(t(c(e)))}return h.invert=function(n){return c(e((a||(a=i(s,o.map(t),a3)))(n)))},h.domain=function(t){return arguments.length?(o=Array.from(t,o6),u()):o.slice()},h.range=function(t){return arguments.length?(s=Array.from(t),u()):s.slice()},h.rangeRound=function(t){return s=Array.from(t),l=a9,u()},h.clamp=function(t){return arguments.length?(c=!!t||o7,u()):c!==o7},h.interpolate=function(t){return arguments.length?(l=t,u()):l},h.unknown=function(t){return arguments.length?(n=t,h):n},function(n,i){return t=n,e=i,u()}}function sa(){var t,e=sr()(o7,o7);return e.copy=function(){return si(e,sa())},o5.apply(e,arguments),t=e.domain,e.ticks=function(e){var n=t();return rU(n[0],n[n.length-1],e??10)},e.tickFormat=function(e,n){var i=t();return function(t,e,n,i){var r,a,o,s=rH(t,e,n);switch((i=oK(i??",f")).type){case"s":var l=Math.max(Math.abs(t),Math.abs(e));return null!=i.precision||isNaN(o=Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(oX(l)/3)))-oX(Math.abs(s))))||(i.precision=o),dQ(i,l);case"":case"e":case"g":case"p":case"r":null!=i.precision||isNaN(o=Math.max(0,oX(Math.abs(Math.max(Math.abs(t),Math.abs(e)))-(r=Math.abs(r=s)))-oX(r))+1)||(i.precision=o-("e"===i.type));break;case"f":case"%":null!=i.precision||isNaN(o=Math.max(0,-oX(Math.abs(s))))||(i.precision=o-("%"===i.type)*2)}return dK(i)}(i[0],i[i.length-1],e??10,n)},e.nice=function(n){null==n&&(n=10);var i,r,a=t(),o=0,s=a.length-1,l=a[o],c=a[s],u=10;for(c<l&&(r=l,l=c,c=r,r=o,o=s,s=r);u-- >0;){if((r=rB(l,c,n))===i)return a[o]=l,a[s]=c,t(a);if(r>0)l=Math.floor(l/r)*r,c=Math.ceil(c/r)*r;else if(r<0)l=Math.ceil(l*r)/r,c=Math.floor(c*r)/r;else break;i=r}return e},e}function so(t,e,n){this.k=t,this.x=e,this.y=n}so.prototype={constructor:so,scale:function(t){return 1===t?this:new so(this.k*t,this.x,this.y)},translate:function(t,e){return 0===t&0===e?this:new so(this.k,this.x+this.k*t,this.y+this.k*e)},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+")"}},so.prototype;let ss={ticks:{number:7,verticalSpaceRatio:2.5,horizontalSpaceRatio:3.5},ratio:{reference:"value",compareTo:"marker"},paddingRatio:.1,hover:{rectanglePadding:4}},sl={duration:1e3,ease:oW,zoomLevel:3},sc={"1-color":4,"2-color":5,"3-color":5,"4-color":3,"5-color":2,"14-color":1},su={items:{status:{ACTIVE:1,DISABLED:0},horizontalSpace:12,verticalSpace:24,textYOffset:8,spaceAfter:4},checkbox:{radius:6.5},radius:{iconData:[{cx:7,cy:7,r:6.5},{cx:7,cy:10,r:3.5}],fill:null,stroke:"#8c8c8c"},line:{yPosition:6,width:24,strokeWidth:1.4,fill:null,stroke:"#999999"},area:{width:24,height:14,fill:"#6f6f6f",stroke:null},size:{iconData:[{width:23,height:12},{width:13,height:6}],fill:null,stroke:"#8D8D8D"},quartile:{iconData:[{x:0,y:0,width:24,height:13},{x:11,y:4,width:1,height:4}]},zoom:{iconData:[{x:0,y:0,width:12,height:12}],color:"#8D8D8D"},color:{barWidth:300,barHeight:8,axisYTranslation:10}},sh={opacity:{unselected:.3,selected:1}},sd={radiusOffset:-15,xOffset:30,yOffset:20},sf={default:{size:24}},sp={defaultOffset:4,horizontalOffset:10},sm={default:{duration:300},pie_slice_mouseover:{duration:100},pie_slice_mouseout:{duration:100},pie_chart_titles:{duration:375},graph_element_mouseover_fill_update:{duration:100},graph_element_mouseout_fill_update:{duration:100}},sg={height:{[tK.GRAPH_VIEW]:32,[tK.SLIDER_VIEW]:10},spacerHeight:8,handleWidth:5,handleBarWidth:1,handleBarHeight:12},sv=[{type:ec.RADIUS,name:"Radius"},{type:ec.AREA,name:"Poor area"},{type:ec.AREA,name:"Satisfactory area"},{type:ec.AREA,name:"Great area"},{type:ec.QUARTILE,name:"Quartiles"}],sy={type:tQ.END_LINE,threshold:16,numCharacter:14},s_={code:"u">typeof navigator&&navigator?.language||"en-US",number:(t,e=navigator?.language||"en-US")=>t?.toLocaleString?.(e),date:(t,e=navigator?.language||"en-US",n={},i=null)=>i||t.toLocaleDateString(e,n),time:(t,e=navigator?.language||"en-US",n={},i=null)=>i||t.toLocaleTimeString(e,n),optionsObject:{"15seconds":{primary:{"MMM d, pp":{month:"short",day:"numeric",hour:"numeric",minute:"2-digit",second:"2-digit",hourCycle:"h12"},"MMM d, h:mm:ss.SSS a":{month:"short",day:"numeric",hour:"numeric",minute:"2-digit",fractionalSecondDigits:3,hourCycle:"h12"}},secondary:{pp:{hour:"numeric",minute:"2-digit",second:"2-digit",hourCycle:"h12"},"h:mm:ss.SSS a":{hour:"numeric",minute:"2-digit",fractionalSecondDigits:3,hourCycle:"h12"}},type:"time"},minute:{primary:{"MMM d, p":{month:"short",day:"numeric",hour:"numeric",minute:"2-digit",hourCycle:"h12"}},secondary:{p:{hour:"numeric",minute:"2-digit",hourCycle:"h12"}},type:"time"},"30minutes":{primary:{"MMM d, p":{month:"short",day:"numeric",hour:"numeric",minute:"2-digit",hourCycle:"h12"}},secondary:{p:{hour:"numeric",minute:"2-digit",hourCycle:"h12"}},type:"time"},hourly:{primary:{"MMM d, hh a":{month:"short",day:"numeric",hour:"2-digit",hourCycle:"h12"}},secondary:{"hh a":{hour:"2-digit",hourCycle:"h12"}},type:"time"},daily:{primary:{"MMM d":{month:"short",day:"numeric"}},secondary:{d:{day:"numeric"}},type:"date"},weekly:{primary:{"eee, MMM d":{weekday:"short",month:"short",day:"numeric"}},secondary:{eee:{weekday:"short"}},type:"date"},monthly:{primary:{"MMM yyyy":{month:"short",year:"numeric"}},secondary:{MMM:{month:"short"}},type:"date"},quarterly:{primary:{},secondary:{},type:"date"},yearly:{primary:{yyyy:{year:"numeric"}},secondary:{yyyy:{year:"numeric"}},type:"date"}},translations:{group:"Group",total:"Total",meter:{title:""},tabularRep:{title:"Tabular representation",downloadAsCSV:"Download as CSV"},toolbar:{exportAsCSV:"Export to CSV",exportAsJPG:"Export to JPG",exportAsPNG:"Export to PNG",zoomIn:"Zoom in",zoomOut:"Zoom out",resetZoom:"Reset zoom",moreOptions:"More options",makeFullScreen:"Make fullscreen",exitFullScreen:"Exit fullscreen",showAsTable:"Show as table"}}},sb={enabled:!0,position:t1.BOTTOM,clickable:!0,truncation:sy,alignment:t2.LEFT,order:null,additionalItems:[]},sx={enabled:!0,showTotal:!0,truncation:sy,groupLabel:"Group"},sE={top:{visible:!0,includeZero:!0,truncation:sy},bottom:{visible:!0,includeZero:!0,truncation:sy},left:{visible:!0,includeZero:!0,truncation:sy},right:{visible:!0,includeZero:!0,truncation:sy}},sw={addSpaceOnEdges:1,showDayName:!1,localeObject:eA,timeIntervalFormats:{"15seconds":{primary:"MMM d, pp",secondary:"pp"},minute:{primary:"MMM d, p",secondary:"p"},"30minutes":{primary:"MMM d, p",secondary:"p"},hourly:{primary:"MMM d, hh a",secondary:"hh a"},daily:{primary:"MMM d",secondary:"d"},weekly:{primary:"eee, MMM d",secondary:"eee"},monthly:{primary:"MMM yyyy",secondary:"MMM"},quarterly:{primary:"QQQ ''yy",secondary:"QQQ"},yearly:{primary:"yyyy",secondary:"yyyy"}}},sT=!1;try{sT="u">typeof document&&(document.fullscreenEnabled||document.webkitFullscreenEnabled||document.mozFullScreenEnabled||document.msFullscreenEnabled)}catch(t){console.warn("Fullscreen capabilities check failed: ",t.message)}let sS={width:null,height:null,resizable:!0,theme:tZ.WHITE,tooltip:sx,legend:sb,locale:s_,style:{prefix:"cc"},data:{groupMapsTo:"group",loading:!1,selectedGroups:[]},color:{scale:null,pairing:{numberOfVariants:null,option:1},gradient:{enabled:!1}},toolbar:{enabled:!0,numberOfIcons:3,controls:[{type:es.SHOW_AS_DATATABLE},...sT?[{type:es.MAKE_FULLSCREEN}]:[],{type:es.EXPORT_CSV},{type:es.EXPORT_PNG},{type:es.EXPORT_JPG}]}},sO=r_({},sS,{thematic:{projection:ef.geoNaturalEarth1}}),sM=r_({},sS,{axes:sE,timeScale:sw,grid:{x:{enabled:!0,numberOfTicks:15,alignWithAxisTicks:!1},y:{enabled:!0,numberOfTicks:5,alignWithAxisTicks:!1}},ruler:{enabled:!0},zoomBar:{zoomRatio:.4,minZoomRatio:.01,top:{enabled:!1,type:tK.GRAPH_VIEW}}}),sA=r_({},sM,{bars:{maxWidth:16,spacingFactor:.25,preserveSpaceForMissingBars:!0},timeScale:r_(sw,{addSpaceOnEdges:1})}),sk=r_({},sA,{}),sC=(r_({},sA,{}),r_({},sA,{bars:r_({},sA.bars,{dividerSize:1.5})}),r_({},sA,{}),r_({},sM,{points:{radius:4,fillOpacity:.3,filled:!0,enabled:!0}})),sD=r_({},sC,{points:{radius:3,filled:!1,enabled:!0}}),sL=(r_({},sD,{timeScale:r_(sw,{addSpaceOnEdges:0})}),r_({},sM,{bubble:{radiusMapsTo:"radius",radiusLabel:"Radius",radiusRange:t=>{let e=Math.min(t.width,t.height);return[3*e/400,25*e/400]},fillOpacity:.2,enabled:!0},points:{filled:!0},legend:{additionalItems:[{type:ec.RADIUS,name:"Radius"}]}}),r_({},sM,{bullet:{performanceAreaTitles:["Poor","Satisfactory","Great"]},grid:{x:{enabled:!1},y:{enabled:!1}},legend:{additionalItems:[{type:ec.AREA,name:"Poor area"},{type:ec.AREA,name:"Satisfactory area"},{type:ec.AREA,name:"Great area"},{type:ec.QUARTILE,name:"Quartiles"}]}}),r_({},sA,{bars:{dividerSize:1.5},timeScale:r_(sw,{addSpaceOnEdges:0})}),r_({},sS,{tooltip:r_({},sx,{wordLabel:"Word",valueLabel:"Value"}),wordCloud:{fontSizeMapsTo:"value",fontSizeRange:t=>{let e=Math.min(t.width,t.height);return[20*e/400,75*e/400]},wordMapsTo:"word"}}),r_({},sS,{pie:{labels:{formatter:null,enabled:!0},alignment:t2.LEFT,sortFunction:null,valueMapsTo:"value"}})),sR=(r_({},sS,{legend:{enabled:!1},gauge:{type:en.SEMI,arcWidth:16,deltaArrow:{size:t=>t/8,enabled:!0},showPercentageSymbol:!0,status:null,numberSpacing:10,deltaFontSize:t=>t/8,valueFontSize:t=>t/2.5,alignment:t2.LEFT}}),r_({},sL,{donut:{center:{numberFontSize:t=>`${Math.min(t/100*24,24)}px`,titleFontSize:t=>`${Math.min(t/100*15,15)}px`,titleYPosition:t=>Math.min(t/80*20,20)},alignment:t2.LEFT}}),r_({},sS,{legend:{enabled:!1,clickable:!1},meter:{showLabels:!0,proportional:null,statusBar:{percentageIndicator:{enabled:!0}}}}));function sI(t,e){let n=i5(t,5),i=Object.keys(e.axes||{});for(let t in e?.toolbar?.controls&&delete n.toolbar.controls,0===i.length&&delete n.axes,n.axes)if(i.includes(t)){let n=e.axes[t];if((n.primary||n.secondary)&&console.warn("`primary` & `secondary` are no longer needed for axis configurations. Read more here https://charts.carbondesignsystem.com/"),null==n.mapsTo){let t=n.scaleType;null==t?n.mapsTo="value":t===t0.TIME?n.mapsTo="date":t===t0.LABELS&&(n.mapsTo="key")}}else delete n.axes[t];return sU(n,e),r_(n,e)}function sN(t){if(!t)return;let e=t.getAttribute("transform").match(/translate\([0-9]+\.?[0-9]*,[0-9]+\.?[0-9]*\)/);if(!e)return null;if(e[0]){let t=e[0].replace(/translate\(/,"").replace(/\)/,"").split(",");return{tx:t[0],ty:t[1]}}return null}function sP(t,e,n){return n>t.length?t:e===tQ.MID_LINE?t.substr(0,n/2)+"..."+t.substr(-n/2):e===tQ.FRONT_LINE?"..."+t.substr(-n):e===tQ.END_LINE?t.substr(0,n)+"...":void 0}function sU(t,e){let n=sB(t,"legend","additionalItems"),i=sB(e,"legend","additionalItems");if(n&&i){let r=i.map(t=>t.type),a=n.map(t=>t.type),o=sv.filter(t=>a.includes(t.type)&&!r.includes(t.type));t.legend.additionalItems=o,e.legend.additionalItems=rE(o,i,"name")}}r_({},sR,{legend:{enabled:!0}}),r_({},sS,{radar:{axes:{angle:"key",value:"value"},alignment:t2.LEFT},tooltip:{gridline:{enabled:!0}}}),r_({},sA,{comboChartTypes:[]}),r_({tree:{type:t5.TREE}},sS,{}),r_({},sS,{data:r_(sS.data,{groupMapsTo:"name"})}),r_({},sS,{circles:{fillOpacity:.3,hover:{stroke:"#FFF"}},padding:{mainGroup:4,children:2},depth:2},{data:r_(sS.data,{groupMapsTo:"name"})}),r_({},sS,{alluvial:{data:r_(sS.data,{groupMapsTo:"source"}),nodeAlignment:t2.CENTER,nodePadding:24,monochrome:!1,nodes:[]}}),r_({},sS,{axes:sE,heatmap:{divider:{state:eh.AUTO},colorLegend:{type:"linear"}}}),r_({},sO,{choropleth:{colorLegend:{type:"linear"}}});let sB=(t,...e)=>{let n=t;if(n){for(let t of e)if(null===n[t]||void 0===n[t])return null;else n=n[t];return n}return null},sH=(t,e)=>e===tJ.HORIZONTAL?{y0:t.x0,y1:t.x1,x0:t.y0,x1:t.y1}:t,sF=(t,e)=>{let{x0:n,x1:i,y0:r,y1:a}=sH(t,e);return`M${n},${r}L${n},${a}L${i},${a}L${i},${r}L${n},${r}`};function s$(t,e,n){return n===tJ.VERTICAL?[t,e]:[e,t]}function sz(t){let e=eE(t),n=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return n.setUTCFullYear(e.getFullYear()),t-n}function sV(t,e){let n=eE(t,e?.in);return n.setHours(0,0,0,0),n}function sG(t,e,n){let[i,r]=eb(n?.in,t,e),a=sV(i),o=sV(r);return Math.round((a-sz(a)-(o-sz(o)))/864e5)}function sj(t,e){return ew(t,{...e,weekStartsOn:1})}function sW(t,e){let n=eE(t,e?.in),i=n.getFullYear(),r=e_(n,0);r.setFullYear(i+1,0,4),r.setHours(0,0,0,0);let a=sj(r),o=e_(n,0);o.setFullYear(i,0,4),o.setHours(0,0,0,0);let s=sj(o);return n.getTime()>=a.getTime()?i+1:n.getTime()>=s.getTime()?i:i-1}function sY(t,e){let n=eE(t,e?.in),i=n.getFullYear(),r=e?.firstWeekContainsDate??e?.locale?.options?.firstWeekContainsDate??ex.firstWeekContainsDate??ex.locale?.options?.firstWeekContainsDate??1,a=e_(e?.in||t,0);a.setFullYear(i+1,0,r),a.setHours(0,0,0,0);let o=ew(a,e),s=e_(e?.in||t,0);s.setFullYear(i,0,r),s.setHours(0,0,0,0);let l=ew(s,e);return+n>=+o?i+1:+n>=+l?i:i-1}function sZ(t,e){let n=Math.abs(t).toString().padStart(e,"0");return(t<0?"-":"")+n}let sX={y(t,e){let n=t.getFullYear(),i=n>0?n:1-n;return sZ("yy"===e?i%100:i,e.length)},M(t,e){let n=t.getMonth();return"M"===e?String(n+1):sZ(n+1,2)},d:(t,e)=>sZ(t.getDate(),e.length),a(t,e){let n=t.getHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];default:return"am"===n?"a.m.":"p.m."}},h:(t,e)=>sZ(t.getHours()%12||12,e.length),H:(t,e)=>sZ(t.getHours(),e.length),m:(t,e)=>sZ(t.getMinutes(),e.length),s:(t,e)=>sZ(t.getSeconds(),e.length),S(t,e){let n=e.length;return sZ(Math.trunc(t.getMilliseconds()*Math.pow(10,n-3)),e.length)}},sq={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},sK={G:function(t,e,n){let i=+(t.getFullYear()>0);switch(e){case"G":case"GG":case"GGG":return n.era(i,{width:"abbreviated"});case"GGGGG":return n.era(i,{width:"narrow"});default:return n.era(i,{width:"wide"})}},y:function(t,e,n){if("yo"===e){let e=t.getFullYear();return n.ordinalNumber(e>0?e:1-e,{unit:"year"})}return sX.y(t,e)},Y:function(t,e,n,i){let r=sY(t,i),a=r>0?r:1-r;return"YY"===e?sZ(a%100,2):"Yo"===e?n.ordinalNumber(a,{unit:"year"}):sZ(a,e.length)},R:function(t,e){return sZ(sW(t),e.length)},u:function(t,e){return sZ(t.getFullYear(),e.length)},Q:function(t,e,n){let i=Math.ceil((t.getMonth()+1)/3);switch(e){case"Q":return String(i);case"QQ":return sZ(i,2);case"Qo":return n.ordinalNumber(i,{unit:"quarter"});case"QQQ":return n.quarter(i,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(i,{width:"narrow",context:"formatting"});default:return n.quarter(i,{width:"wide",context:"formatting"})}},q:function(t,e,n){let i=Math.ceil((t.getMonth()+1)/3);switch(e){case"q":return String(i);case"qq":return sZ(i,2);case"qo":return n.ordinalNumber(i,{unit:"quarter"});case"qqq":return n.quarter(i,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(i,{width:"narrow",context:"standalone"});default:return n.quarter(i,{width:"wide",context:"standalone"})}},M:function(t,e,n){let i=t.getMonth();switch(e){case"M":case"MM":return sX.M(t,e);case"Mo":return n.ordinalNumber(i+1,{unit:"month"});case"MMM":return n.month(i,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(i,{width:"narrow",context:"formatting"});default:return n.month(i,{width:"wide",context:"formatting"})}},L:function(t,e,n){let i=t.getMonth();switch(e){case"L":return String(i+1);case"LL":return sZ(i+1,2);case"Lo":return n.ordinalNumber(i+1,{unit:"month"});case"LLL":return n.month(i,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(i,{width:"narrow",context:"standalone"});default:return n.month(i,{width:"wide",context:"standalone"})}},w:function(t,e,n,i){let r=function(t,e){let n=eE(t,e?.in);return Math.round((ew(n,e)-function(t,e){let n=e?.firstWeekContainsDate??e?.locale?.options?.firstWeekContainsDate??ex.firstWeekContainsDate??ex.locale?.options?.firstWeekContainsDate??1,i=sY(t,e),r=e_(e?.in||t,0);return r.setFullYear(i,0,n),r.setHours(0,0,0,0),ew(r,e)}(n,e))/6048e5)+1}(t,i);return"wo"===e?n.ordinalNumber(r,{unit:"week"}):sZ(r,e.length)},I:function(t,e,n){let i=function(t,e){let n=eE(t,void 0);return Math.round((sj(n)-function(t,e){let n=sW(t,void 0),i=e_(t,0);return i.setFullYear(n,0,4),i.setHours(0,0,0,0),sj(i)}(n))/6048e5)+1}(t);return"Io"===e?n.ordinalNumber(i,{unit:"week"}):sZ(i,e.length)},d:function(t,e,n){return"do"===e?n.ordinalNumber(t.getDate(),{unit:"date"}):sX.d(t,e)},D:function(t,e,n){let i=function(t,e){let n=eE(t,void 0);return sG(n,function(t,e){let n=eE(t,void 0);return n.setFullYear(n.getFullYear(),0,1),n.setHours(0,0,0,0),n}(n))+1}(t);return"Do"===e?n.ordinalNumber(i,{unit:"dayOfYear"}):sZ(i,e.length)},E:function(t,e,n){let i=t.getDay();switch(e){case"E":case"EE":case"EEE":return n.day(i,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(i,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(i,{width:"short",context:"formatting"});default:return n.day(i,{width:"wide",context:"formatting"})}},e:function(t,e,n,i){let r=t.getDay(),a=(r-i.weekStartsOn+8)%7||7;switch(e){case"e":return String(a);case"ee":return sZ(a,2);case"eo":return n.ordinalNumber(a,{unit:"day"});case"eee":return n.day(r,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(r,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(r,{width:"short",context:"formatting"});default:return n.day(r,{width:"wide",context:"formatting"})}},c:function(t,e,n,i){let r=t.getDay(),a=(r-i.weekStartsOn+8)%7||7;switch(e){case"c":return String(a);case"cc":return sZ(a,e.length);case"co":return n.ordinalNumber(a,{unit:"day"});case"ccc":return n.day(r,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(r,{width:"narrow",context:"standalone"});case"cccccc":return n.day(r,{width:"short",context:"standalone"});default:return n.day(r,{width:"wide",context:"standalone"})}},i:function(t,e,n){let i=t.getDay(),r=0===i?7:i;switch(e){case"i":return String(r);case"ii":return sZ(r,e.length);case"io":return n.ordinalNumber(r,{unit:"day"});case"iii":return n.day(i,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(i,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(i,{width:"short",context:"formatting"});default:return n.day(i,{width:"wide",context:"formatting"})}},a:function(t,e,n){let i=t.getHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(i,{width:"narrow",context:"formatting"});default:return n.dayPeriod(i,{width:"wide",context:"formatting"})}},b:function(t,e,n){let i,r=t.getHours();switch(i=12===r?sq.noon:0===r?sq.midnight:r/12>=1?"pm":"am",e){case"b":case"bb":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(i,{width:"narrow",context:"formatting"});default:return n.dayPeriod(i,{width:"wide",context:"formatting"})}},B:function(t,e,n){let i,r=t.getHours();switch(i=r>=17?sq.evening:r>=12?sq.afternoon:r>=4?sq.morning:sq.night,e){case"B":case"BB":case"BBB":return n.dayPeriod(i,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(i,{width:"narrow",context:"formatting"});default:return n.dayPeriod(i,{width:"wide",context:"formatting"})}},h:function(t,e,n){if("ho"===e){let e=t.getHours()%12;return 0===e&&(e=12),n.ordinalNumber(e,{unit:"hour"})}return sX.h(t,e)},H:function(t,e,n){return"Ho"===e?n.ordinalNumber(t.getHours(),{unit:"hour"}):sX.H(t,e)},K:function(t,e,n){let i=t.getHours()%12;return"Ko"===e?n.ordinalNumber(i,{unit:"hour"}):sZ(i,e.length)},k:function(t,e,n){let i=t.getHours();return 0===i&&(i=24),"ko"===e?n.ordinalNumber(i,{unit:"hour"}):sZ(i,e.length)},m:function(t,e,n){return"mo"===e?n.ordinalNumber(t.getMinutes(),{unit:"minute"}):sX.m(t,e)},s:function(t,e,n){return"so"===e?n.ordinalNumber(t.getSeconds(),{unit:"second"}):sX.s(t,e)},S:function(t,e){return sX.S(t,e)},X:function(t,e,n){let i=t.getTimezoneOffset();if(0===i)return"Z";switch(e){case"X":return sJ(i);case"XXXX":case"XX":return s0(i);default:return s0(i,":")}},x:function(t,e,n){let i=t.getTimezoneOffset();switch(e){case"x":return sJ(i);case"xxxx":case"xx":return s0(i);default:return s0(i,":")}},O:function(t,e,n){let i=t.getTimezoneOffset();switch(e){case"O":case"OO":case"OOO":return"GMT"+sQ(i,":");default:return"GMT"+s0(i,":")}},z:function(t,e,n){let i=t.getTimezoneOffset();switch(e){case"z":case"zz":case"zzz":return"GMT"+sQ(i,":");default:return"GMT"+s0(i,":")}},t:function(t,e,n){return sZ(Math.trunc(t/1e3),e.length)},T:function(t,e,n){return sZ(+t,e.length)}};function sQ(t,e=""){let n=t>0?"-":"+",i=Math.abs(t),r=Math.trunc(i/60),a=i%60;return 0===a?n+String(r):n+String(r)+e+sZ(a,2)}function sJ(t,e){return t%60==0?(t>0?"-":"+")+sZ(Math.abs(t)/60,2):s0(t,e)}function s0(t,e=""){let n=Math.abs(t);return(t>0?"-":"+")+sZ(Math.trunc(n/60),2)+e+sZ(n%60,2)}let s1=(t,e)=>{switch(t){case"P":return e.date({width:"short"});case"PP":return e.date({width:"medium"});case"PPP":return e.date({width:"long"});default:return e.date({width:"full"})}},s2=(t,e)=>{switch(t){case"p":return e.time({width:"short"});case"pp":return e.time({width:"medium"});case"ppp":return e.time({width:"long"});default:return e.time({width:"full"})}},s3={p:s2,P:(t,e)=>{let n,i=t.match(/(P+)(p+)?/)||[],r=i[1],a=i[2];if(!a)return s1(t,e);switch(r){case"P":n=e.dateTime({width:"short"});break;case"PP":n=e.dateTime({width:"medium"});break;case"PPP":n=e.dateTime({width:"long"});break;default:n=e.dateTime({width:"full"})}return n.replace("{{date}}",s1(r,e)).replace("{{time}}",s2(a,e))}},s5=/^D+$/,s4=/^Y+$/,s8=["D","DD","YY","YYYY"],s6=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,s9=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,s7=/^'([^]*?)'?$/,lt=/''/g,le=/[a-zA-Z]/;function ln(t,e,n){let i=n?.locale??ex.locale??eA,r=n?.firstWeekContainsDate??n?.locale?.options?.firstWeekContainsDate??ex.firstWeekContainsDate??ex.locale?.options?.firstWeekContainsDate??1,a=n?.weekStartsOn??n?.locale?.options?.weekStartsOn??ex.weekStartsOn??ex.locale?.options?.weekStartsOn??0,o=eE(t,n?.in);if(!(o instanceof Date||"object"==typeof o&&"[object Date]"===Object.prototype.toString.call(o))&&"number"!=typeof o||isNaN(+eE(o)))throw RangeError("Invalid time value");let s=e.match(s9).map(t=>{let e=t[0];return"p"===e||"P"===e?(0,s3[e])(t,i.formatLong):t}).join("").match(s6).map(t=>{if("''"===t)return{isToken:!1,value:"'"};let e=t[0];if("'"===e)return{isToken:!1,value:function(t){let e=t.match(s7);return e?e[1].replace(lt,"'"):t}(t)};if(sK[e])return{isToken:!0,value:t};if(e.match(le))throw RangeError("Format string contains an unescaped latin alphabet character `"+e+"`");return{isToken:!1,value:t}});i.localize.preprocessor&&(s=i.localize.preprocessor(o,s));let l={firstWeekContainsDate:r,weekStartsOn:a,locale:i};return s.map(r=>{if(!r.isToken)return r.value;let a=r.value;return(!n?.useAdditionalWeekYearTokens&&s4.test(a)||!n?.useAdditionalDayOfYearTokens&&s5.test(a))&&function(t,e,n){let i=function(t,e,n){let i="Y"===t[0]?"years":"days of the month";return`Use \`${t.toLowerCase()}\` instead of \`${t}\` (in \`${e}\`) for formatting ${i} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}(t,e,n);if(console.warn(i),s8.includes(t))throw RangeError(i)}(a,e,String(t)),(0,sK[a[0]])(o,a,i.localize,l)}).join("")}let li=[["15seconds",15e3],["minute",6e4],["30minutes",18e5],["hourly",36e5],["daily",864e5],["monthly",2592e6],["quarterly",7776e6],["yearly",31104e6]];function lr(t,e,n,i,r){let a=0===e,o=2===Number(ln(new Date(t),"c")),s=1===Number(ln(new Date(t),"q")),l=0!==e?n[e-1]:null;switch(i){case"15seconds":case"minute":case"30minutes":case"hourly":return a||function(t){let{s:e,m:n,H:i}=lo(t);return 0===i&&0===n&&0===e}(t)||ll(t,l)||lc(t);case"daily":return r?a||o||lc(t):a||ll(t,l)||lc(t);case"weekly":return a||o||lc(t);case"monthly":return a||lc(t);case"quarterly":return a||s;case"yearly":return!1;default:throw Error(`${i} is not a valid time interval.`)}}function la(t,e,n,i,r,a){let o=r.showDayName,s="daily"===i&&o?"weekly":i,l=new Date(t),c=sB(r,"timeIntervalFormats")[s],u=sB(c,"primary"),h=sB(c,"secondary"),d=lr(t,e,n,i,o),f=d?u:h;"15seconds"===i&&0!==l.getMilliseconds()&&(f=f.replace("pp","h:mm:ss.SSS a"));let p=r.localeObject,{code:m,optionsObject:g}=a,v=g[i].type,y=g[i][d?"primary":"secondary"][f];if("quarterly"!==i&&y)return a[v](l,m,y);{let t=ln(l,f,{locale:p}).split("").map(t=>{let e=Number(t);return" "===t||Number.isNaN(e)?t:e?.toLocaleString?.(m)});return a[v](l,m,{},t.join(""))}}function lo(t){let e=new Date(t);return{M:e.getMonth()+1,d:e.getDate(),H:e.getHours(),m:e.getMinutes(),s:e.getSeconds()}}function ls(t,e){if(ep[e])return e;if(1===t.length)return"15seconds";var n=function(t,e){let n;for(let e of t)null!=e&&(n>e||void 0===n&&e>=e)&&(n=e);return n}(function(t){if(t)return t.slice(1).map((e,n)=>e-t[n])}(t));let i=li.reduce((t,[,e],i)=>Math.abs(li[t][1]-n)<Math.abs(e-n)?t:i,0);return li[i][0]}function ll(t,e){return lo(t).M!==lo(e).M}function lc(t){let{M:e,d:n,s:i,m:r,H:a}=lo(t);return 1===e&&1===n&&0===a&&0===r&&0===i}function lu(t){return void 0===t?"":t.toISOString()}var lh=((tl=lh||{}).GRAPHICS_DOCUMENT="graphics-document",tl.GRAPHICS_OBJECT="graphics-object",tl.GRAPHICS_SYMBOL="graphics-symbol",tl.GROUP="group",tl.DOCUMENT="document",tl.CHECKBOX="checkbox",tl.BUTTON="button",tl.MENU="menu",tl.MENU_ITEM="menuitem",tl.IMG="img",tl),ld=(dj=function(t,e){return t&&rf(t,e,n$)},function(t,e){if(null==t)return t;if(!nm(t))return dj(t,e);for(var n=t.length,i=-1,r=Object(t);++i<n&&!1!==e(r[i],i,r););return t});function lf(t){return function(){return t}}function lp(t){return"object"==typeof t&&"length"in t?t:Array.from(t)}Array.prototype.slice;var lm=Object.prototype.hasOwnProperty,lg=(dW=function(t,e,n){lm.call(t,n)?t[n].push(e):no(t,n,[e])},function(t,e){return(eV(t)?function(t,e,n,i){for(var r=-1,a=null==t?0:t.length;++r<a;){var o=t[r];e(i,o,n(o),t)}return i}:function(t,e,n,i){return ld(t,function(t,r,a){e(i,t,n(t),a)}),i})(t,dW,rd(e),{})});function lv(t){return t}var ly=Array.prototype.slice;function l_(t){return Math.max(1,Math.ceil(Math.log(function(t,e){let n=0;for(let e of t)null!=e&&(e*=1)>=e&&++n;return n}(t))/Math.LN2)+1)}function lb(t,e){if((r=t.length)>1)for(var n,i,r,a=1,o=t[e[0]],s=o.length;a<r;++a)for(i=o,o=t[e[a]],n=0;n<s;++n)o[n][1]+=o[n][0]=isNaN(i[n][1])?i[n][0]:i[n][1]}function lx(t){for(var e=t.length,n=Array(e);--e>=0;)n[e]=e;return n}function lE(t,e){return t[e]}function lw(t){let e=[];return e.key=t,e}function lT(){var t=lf([]),e=lx,n=lb,i=lE;function r(r){var a,o,s=Array.from(t.apply(this,arguments),lw),l=s.length,c=-1;for(let t of r)for(a=0,++c;a<l;++a)(s[a][c]=[0,+i(t,s[a].key,c,r)]).data=t;for(a=0,o=lp(e(s));a<l;++a)s[o[a]].index=a;return n(s,o),s}return r.keys=function(e){return arguments.length?(t="function"==typeof e?e:lf(Array.from(e)),r):t},r.value=function(t){return arguments.length?(i="function"==typeof t?t:lf(+t),r):i},r.order=function(t){return arguments.length?(e=null==t?lx:"function"==typeof t?t:lf(Array.from(t)),r):e},r.offset=function(t){return arguments.length?(n=t??lb,r):n},r}function lS(t,e){if((s=t.length)>0)for(var n,i,r,a,o,s,l=0,c=t[e[0]].length;l<c;++l)for(a=o=0,n=0;n<s;++n)(r=(i=t[e[n]][l])[1]-i[0])>0?(i[0]=a,i[1]=a+=r):r<0?(i[1]=o,i[0]=o+=r):(i[0]=0,i[1]=r)}class lO{constructor(t){this.state={options:{}},this.colorScale={},this.colorClassNames={},this.services=t}formatTable({headers:t,cells:e}){let n,i=this.getOptions(),{code:r,date:a,number:o}=sB(i,"locale"),s=sB(i,"tabularRepModal","tableHeadingFormatter"),l=sB(i,"tabularRepModal","tableCellFormatter"),{cartesianScales:c}=this.services;return c?.getDomainAxisScaleType()===t0.TIME&&(n=t=>a(t,r,{month:"short",day:"numeric",year:"numeric"})),["function"==typeof s?s(t):t,..."function"==typeof l?l(e):e.map(t=>{for(let e in n&&(t[1]=n(t[1])),t){let n=t[e];"number"==typeof n&&(t[e]=o(n,r))}return t})]}getAllDataFromDomain(t){if(!this.getData())return null;let e=this.getOptions(),n=this.getData(),i=this.getDataGroups(),{groupMapsTo:r}=sB(e,"data"),a=sB(e,"axes");return t&&(n=n.filter(e=>t.includes(e[r]))),a&&Object.keys(a).forEach(t=>{let e=a[t].mapsTo,i=a[t].scaleType;if((i===t0.LINEAR||i===t0.LOG)&&(n=n.map(t=>({...t,[e]:null===t[e]?t[e]:Number(t[e])}))),e&&a[t].domain)if(i===t0.LABELS)n=n.filter(n=>a[t].domain.includes(n[e]));else{let[i,r]=a[t].domain;n=n.filter(t=>!(e in t)||t[e]>=i&&t[e]<=r)}}),n.filter(t=>i.find(e=>e.name===t[r]))}getDisplayData(t){if(!this.get("data"))return null;let{ACTIVE:e}=su.items.status,n=this.getDataGroups(t),{groupMapsTo:i}=this.getOptions().data;return this.getAllDataFromDomain(t).filter(t=>n.find(n=>n.name===t[i]&&n.status===e))}getData(){return this.get("data")}isDataEmpty(){return!this.getData().length}setData(t){let e=this.sanitize(i5(t,5)),n=this.generateDataGroups(e);return this.set({data:e,dataGroups:n}),e}getDataGroups(t){return sB(this.getOptions(),"data","loading")?[]:t?this.get("dataGroups").filter(e=>t.includes(e.name)):this.get("dataGroups")}getActiveDataGroups(t){let{ACTIVE:e}=su.items.status;return this.getDataGroups(t).filter(t=>t.status===e)}getDataGroupNames(t){return this.getDataGroups(t).map(t=>t.name)}getActiveDataGroupNames(t){return this.getActiveDataGroups(t).map(t=>t.name)}aggregateBinDataByGroup(t){return lg(t,"group")}getBinConfigurations(){let t=this.getDisplayData(),e=this.getOptions(),n=this.services.cartesianScales.getMainXAxisPosition(),i=this.services.cartesianScales.getDomainIdentifier(),r=e.axes[n],{groupMapsTo:a}=e.data,{bins:o=10}=r,s=Array.isArray(o),l=(function(){var t=lv,e=rk,n=l_;function i(i){Array.isArray(i)||(i=Array.from(i));var r,a,o,s=i.length,l=Array(s);for(r=0;r<s;++r)l[r]=t(i[r],r,i);var c=e(l),u=c[0],h=c[1],d=n(l,u,h);if(!Array.isArray(d)){let t=h,n=+d;if(e===rk&&([u,h]=function(t,e,n){let i;for(;;){let r=rB(t,e,n);if(r===i||0===r||!isFinite(r))return[t,e];r>0?(t=Math.floor(t/r)*r,e=Math.ceil(e/r)*r):r<0&&(t=Math.ceil(t*r)/r,e=Math.floor(e*r)/r),i=r}}(u,h,n)),(d=rU(u,h,n))[0]<=u&&(o=rB(u,h,n)),d[d.length-1]>=h)if(t>=h&&e===rk){let t=rB(u,h,n);isFinite(t)&&(t>0?h=(Math.floor(h/t)+1)*t:t<0&&(h=-((Math.ceil(-(h*t))+1)/t)))}else d.pop()}for(var f=d.length,p=0,m=f;d[p]<=u;)++p;for(;d[m-1]>h;)--m;(p||m<f)&&(d=d.slice(p,m),f=m-p);var g,v=Array(f+1);for(r=0;r<=f;++r)(g=v[r]=[]).x0=r>0?d[r-1]:u,g.x1=r<f?d[r]:h;if(isFinite(o)){if(o>0)for(r=0;r<s;++r)null!=(a=l[r])&&u<=a&&a<=h&&v[Math.min(f,Math.floor((a-u)/o))].push(i[r]);else if(o<0){for(r=0;r<s;++r)if(null!=(a=l[r])&&u<=a&&a<=h){let t=Math.floor((u-a)*o);v[Math.min(f,t+(d[t]<=a))].push(i[r])}}}else for(r=0;r<s;++r)null!=(a=l[r])&&u<=a&&a<=h&&v[rA(d,a,0,f)].push(i[r]);return v}return i.value=function(e){return arguments.length?(t="function"==typeof e?e:()=>e,i):t},i.domain=function(t){var n;return arguments.length?(e="function"==typeof t?t:(n=[t[0],t[1]],()=>n),i):e},i.thresholds=function(t){var e;return arguments.length?(n="function"==typeof t?t:(e=Array.isArray(t)?ly.call(t):t,()=>e),i):n},i})().value(t=>t[i]).thresholds(o)(t);if(s)l[l.length-1].x1=o[o.length-1];else{let t=l[0].x1-l[0].x0;l[l.length-1].x1=+l[l.length-1].x0+t}let c=s?[o[0],o[o.length-1]]:[l[0].x0,l[l.length-1].x1],u=Array.from(new Set(t.map(t=>t[a]))),h=[];return l.forEach(t=>{let e=`${t.x0}-${t.x1}`,n=this.aggregateBinDataByGroup(t);u.forEach(i=>{h.push({group:i,key:e,value:n[i]||0,bin:t.x0})})}),{bins:l,binsDomain:c}}getBinnedStackedData(){let{groupMapsTo:t}=this.getOptions().data,e=this.getActiveDataGroupNames(),{bins:n}=this.getBinConfigurations(),i=this.getDataValuesGroupedByKeys({bins:n});return lT().keys(e)(i).map((n,i)=>Object.keys(n).filter(t=>!isNaN(t)).map(r=>{let a=n[r];return a[t]=e[i],a}))}getGroupedData(t){let e=this.getDisplayData(t),n={},{groupMapsTo:i}=this.getOptions().data;return e.map(t=>{let e=t[i];null!==n[e]&&void 0!==n[e]?n[e].push(t):n[e]=[t]}),Object.keys(n).map(t=>({name:t,data:n[t]}))}getStackKeys({bins:t=null,groups:e=null}={bins:null,groups:null}){let n,i=this.getOptions(),r=this.getDisplayData(e);n=t?t.map(t=>`${t.x0}:${t.x1}`):rw(r.map(t=>{let e=this.services.cartesianScales.getDomainIdentifier(t);return t[e]instanceof Date?lu(t[e]):t[e]&&"function"==typeof t[e].toString?t[e].toString():t[e]}));let a=this.services.cartesianScales.domainAxisPosition,o=i.axes[a].scaleType;return o===t0.TIME?n.sort((t,e)=>new Date(t)-new Date(e)):(o===t0.LOG||o===t0.LINEAR)&&n.sort((t,e)=>t-e),n}getDataValuesGroupedByKeys({bins:t=null,groups:e=null}){let{groupMapsTo:n}=this.getOptions().data,i=this.getDisplayData(e),r=this.getDataGroupNames(),a=this.getStackKeys({bins:t,groups:e});return t?a.map(e=>{let[i,a]=e.split(":"),o={x0:i,x1:a},s=t.find(t=>t.x0.toString()===i.toString());return r.forEach(t=>{o[t]=s.filter(e=>e[n]===t).length}),o}):a.map(t=>{let e={sharedStackKey:t};return r.forEach(r=>{let a=i.find(e=>{let i=this.services.cartesianScales.getDomainIdentifier(e);return e[n]===r&&Object.prototype.hasOwnProperty.call(e,i)&&(e[i]instanceof Date?lu(e[i])===t:e[i].toString()===t)}),o=this.services.cartesianScales.getRangeIdentifier(e);e[r]=a?a[o]:null}),e})}getStackedData({percentage:t=!1,groups:e=null,divergent:n=!1}){let{groupMapsTo:i}=this.getOptions().data,r=this.getActiveDataGroupNames(e),a=this.getDataValuesGroupedByKeys({groups:e});if(t){let t=function(t){for(var e=-1,n=null==t?0:t.length,i={};++e<n;){var r=t[e];i[r[0]]=r[1]}return i}(a.map(t=>[t.sharedStackKey,0]));a.forEach(e=>{r.forEach(n=>{t[e.sharedStackKey]+=e[n]})}),a.forEach(e=>{r.forEach(n=>{let i=t[e.sharedStackKey];t[e.sharedStackKey]?e[n]=e[n]/i*100:e[n]=0})})}return(n?lT().offset(lS):lT()).keys(r)(a).map((t,e)=>Object.keys(t).filter(t=>!isNaN(t)).map(n=>{let a=t[n];return a[i]=r[e],a}))}getOptions(){return this.state.options}set(t,e){this.state=Object.assign({},this.state,t);let n=Object.assign({skipUpdate:!1,animate:!0},e);n.skipUpdate||this.update(n.animate)}get(t){return t?this.state[t]:this.state}setOptions(t){let e=this.getOptions();sU(e,t),this.set({options:r_(e,t)})}update(t=!0){this.getDisplayData()&&(this.updateAllDataGroups(),this.setCustomColorScale(),this.setColorClassNames(),this.services.events.dispatchEvent(tW.Model.UPDATE,{animate:t}))}toggleDataLabel(t){let{ACTIVE:e,DISABLED:n}=su.items.status,i=this.getDataGroups(),r=i.some(t=>t.status===n),a=i.filter(t=>t.status===e);if(r)if(1===a.length&&a[0].name===t)i.forEach((t,n)=>{i[n].status=e});else{let r=i.findIndex(e=>e.name===t);i[r].status=i[r].status===n?e:n}else i.forEach((r,a)=>{i[a].status=r.name===t?e:n});let o=i.filter(t=>t.status===e),s=this.getOptions();i.some(t=>t.status===n)?s.data.selectedGroups=o.map(t=>t.name):s.data.selectedGroups=[],this.services.events.dispatchEvent(tW.Legend.ITEMS_UPDATE,{dataGroups:i}),this.set({dataGroups:i})}getIsFilled(t,e,n,i){let r=this.getOptions();return r.getIsFilled?r.getIsFilled(t,e,n,i):i}getFillColor(t,e,n){let i=this.getOptions(),r=sB(this.colorScale,t);return i.getFillColor?i.getFillColor(t,e,n,r):r}getStrokeColor(t,e,n){let i=this.getOptions(),r=sB(this.colorScale,t);return i.getStrokeColor?i.getStrokeColor(t,e,n,r):r}isUserProvidedColorScaleValid(){let t=sB(this.getOptions(),"color","scale"),e=this.getDataGroups();return null!=t&&0!=Object.keys(t).length&&e.some(e=>Object.keys(t).includes(e.name))}getColorClassName(t){let e=this.colorClassNames(t.dataGroupName),n=t.originalClassName;return t.classNameTypes.forEach(i=>n=t.originalClassName?`${n} ${i}-${e}`:`${i}-${e}`),n||""}getStatus(){return null}getAllDataGroupsNames(){return this.allDataGroups}transformToTabularData(t){console.warn("We've updated the charting data format to be tabular by default. The current format you're using is deprecated and will be removed in v1.0, read more here https://charts.carbondesignsystem.com/");let e=[],{datasets:n,labels:i}=t;return n.forEach(t=>{t.data.forEach((n,r)=>{let a,o=sB(t,"label");if(null===o){let t=sB(i,r);a=t||"Ungrouped"}else a=o;let s={group:a,key:i[r]};isNaN(n)?(s.value=n.value,s.date=n.date):s.value=n,e.push(s)})}),e}getTabularDataArray(){return[]}exportToCSV(){let t=this.getTabularDataArray().map(t=>t.map(t=>`"${("&ndash;"===t?"–":t).split(/[,;'"`]/).map(t=>(function(t){let e=t.trim();return["=","+","-","@"," ","\r"].includes(e.charAt(0))?`\xa0${e}`:/[,\"\n]/.test(e)?`"${e}"`:e})(t)).join("")}"`)).map(t=>t.join(",")).join(`
2
+ `),e=this.getOptions(),n="myChart",i=sB(e,"fileDownload","fileName");"function"==typeof i?n=i("csv"):"string"==typeof i&&(n=i),this.services.files.downloadCSV(t,`${n}.csv`)}getTabularData(t){return Array.isArray(t)?t:this.transformToTabularData(t)}sanitize(t){return t=this.getTabularData(t)}updateAllDataGroups(){this.allDataGroups?this.getDataGroupNames().forEach(t=>{-1===this.allDataGroups.indexOf(t)&&this.allDataGroups.push(t)}):this.allDataGroups=this.getDataGroupNames()}generateDataGroups(t){let{groupMapsTo:e}=this.getOptions().data,{ACTIVE:n,DISABLED:i}=su.items.status,r=this.getOptions(),a=rw(t.map(t=>t[e]));r.data.selectedGroups.length&&(r.data.selectedGroups.every(t=>a.includes(t))||(r.data.selectedGroups=[]));let o=t=>!r.data.selectedGroups.length||r.data.selectedGroups.includes(t)?n:i;return a.map(t=>({name:t,status:o(t)}))}setCustomColorScale(){if(!this.isUserProvidedColorScaleValid())return;let t=sB(this.getOptions(),"color","scale");Object.keys(t).forEach(t=>{this.allDataGroups.includes(t)||console.warn(`"${t}" does not exist in data groups.`)}),this.allDataGroups.filter(e=>t[e]).forEach(e=>this.colorScale[e]=t[e])}setColorClassNames(){let t=sB(this.getOptions(),"color","pairing"),e=sB(t,"numberOfVariants");(!e||e<this.allDataGroups.length)&&(e=this.allDataGroups.length);let n=sB(t,"option"),i=e>5?14:e,r=`${i}-color`;n=n<=sc[r]?n:1;let a=this.allDataGroups.map((t,e)=>`${i}-${n}-${e%14+1}`);this.colorClassNames=o8().range(a).domain(this.allDataGroups)}}class lM extends lO{constructor(t){super(t),this.axisFlavor=ed.DEFAULT}assignRangeAndDomains(){let{cartesianScales:t}=this.services,e=this.getOptions(),n=t.isDualAxes(),i={primaryDomain:t.domainAxisPosition,primaryRange:t.rangeAxisPosition,secondaryDomain:null,secondaryRange:null};return n&&(i.secondaryDomain=t.secondaryDomainAxisPosition,i.secondaryRange=t.secondaryRangeAxisPosition),Object.keys(i).forEach(n=>{let r=i[n];t.scales[r]?i[n]={position:r,label:t.getScaleLabel(r),identifier:sB(e,"axes",r,"mapsTo")}:i[n]=null}),i}getTabularDataArray(){let t=this.getDisplayData(),{groupMapsTo:e}=this.getOptions().data,{primaryDomain:n,primaryRange:i,secondaryDomain:r,secondaryRange:a}=this.assignRangeAndDomains(),{number:o,code:s}=sB(this.getOptions(),"locale"),l=["Group",n.label,i.label,...r?[r.label]:[],...a?[a.label]:[]],c=t.map(t=>[t[e],null===t[n.identifier]?"&ndash;":t[n.identifier],null===t[i.identifier]||isNaN(t[i.identifier])?"&ndash;":o(t[i.identifier],s),...r?[null===t[r.identifier]?"&ndash;":t[r.identifier]]:[],...a?[null===t[a.identifier]||isNaN(t[a.identifier])?"&ndash;":t[a.identifier]]:[]]);return super.formatTable({headers:l,cells:c})}setData(t){let e;if(t&&(e=super.setData(t),sB(this.getOptions(),"zoomBar",tq.TOP,"enabled"))){let t=sB(this.getOptions(),"zoomBar",tq.TOP,"data");this.setZoomBarData(t)}return e}setZoomBarData(t){let e=t?this.sanitize(i5(t,5)):this.getDisplayData(),n=e,{cartesianScales:i}=this.services;if(e&&i.domainAxisPosition&&i.rangeAxisPosition){let t=i.getDomainIdentifier(),r=i.getRangeIdentifier(),a=e.map(e=>e[t].getTime());n=(a=rw(a).sort()).map(n=>{let i=0,a={};return e.forEach(e=>{e[t].getTime()===n&&(i+=e[r])}),a[t]=new Date(n),a[r]=i,a})}this.set({zoomBarData:n})}getZoomBarData(){return this.get("zoomBarData")}sanitizeDateValues(t){let e=this.getOptions();if(!e.axes)return t;let n=[];return Object.keys(tq).forEach(t=>{let i=tq[t],r=e.axes[i];if(r&&r.scaleType===t0.TIME){let t=r.mapsTo;(null!==t||void 0!==t)&&n.push(t)}}),n.length>0&&t.forEach(t=>{n.forEach(e=>{null===sB(t,e,"getTime")&&(t[e]=new Date(t[e]))})}),t}sanitize(t){return t=super.sanitize(t),t=this.sanitizeDateValues(t)}}var lA=/\s/,lk=/^\s+/,lC=NaN,lD=/^[-+]0x[0-9a-f]+$/i,lL=/^0b[01]+$/i,lR=/^0o[0-7]+$/i,lI=parseInt;function lN(t){if("number"==typeof t)return t;if(e$(t))return lC;if(eW(t)){var e,n="function"==typeof t.valueOf?t.valueOf():t;t=eW(n)?n+"":n}if("string"!=typeof t)return 0===t?t:+t;t=(e=t)&&e.slice(0,function(t){for(var e=t.length;e--&&lA.test(t.charAt(e)););return e}(e)+1).replace(lk,"");var i=lL.test(t);return i||lR.test(t)?lI(t.slice(2),i?2:8):lD.test(t)?lC:+t}var lP=function(){return eD.Date.now()},lU=Math.max,lB=Math.min;function lH(t){return"string"==typeof t?new a_([[document.querySelector(t)]],[document.documentElement]):new a_([[t]],ay)}function lF(t,e){t=t.slice();var n,i=0,r=t.length-1,a=t[i],o=t[r];return o<a&&(n=i,i=r,r=n,n=a,a=o,o=n),t[i]=e.floor(a),t[r]=e.ceil(o),t}let l$=new Date,lz=new Date;function lV(t,e,n,i){function r(e){return t(e=0==arguments.length?new Date:new Date(+e)),e}return r.floor=e=>(t(e=new Date(+e)),e),r.ceil=n=>(t(n=new Date(n-1)),e(n,1),t(n),n),r.round=t=>{let e=r(t),n=r.ceil(t);return t-e<n-t?e:n},r.offset=(t,n)=>(e(t=new Date(+t),null==n?1:Math.floor(n)),t),r.range=(n,i,a)=>{let o,s=[];if(n=r.ceil(n),a=null==a?1:Math.floor(a),!(n<i)||!(a>0))return s;do s.push(o=new Date(+n)),e(n,a),t(n);while(o<n&&n<i);return s},r.filter=n=>lV(e=>{if(e>=e)for(;t(e),!n(e);)e.setTime(e-1)},(t,i)=>{if(t>=t)if(i<0)for(;++i<=0;)for(;e(t,-1),!n(t););else for(;--i>=0;)for(;e(t,1),!n(t););}),n&&(r.count=(e,i)=>(l$.setTime(+e),lz.setTime(+i),t(l$),t(lz),Math.floor(n(l$,lz))),r.every=t=>isFinite(t=Math.floor(t))&&t>0?t>1?r.filter(i?e=>i(e)%t==0:e=>r.count(0,e)%t==0):r:null),r}let lG=lV(()=>{},(t,e)=>{t.setTime(+t+e)},(t,e)=>e-t);lG.every=t=>isFinite(t=Math.floor(t))&&t>0?t>1?lV(e=>{e.setTime(Math.floor(e/t)*t)},(e,n)=>{e.setTime(+e+n*t)},(e,n)=>(n-e)/t):lG:null,lG.range;let lj=lV(t=>{t.setTime(t-t.getMilliseconds())},(t,e)=>{t.setTime(+t+1e3*e)},(t,e)=>(e-t)/1e3,t=>t.getUTCSeconds());lj.range;let lW=lV(t=>{t.setTime(t-t.getMilliseconds()-1e3*t.getSeconds())},(t,e)=>{t.setTime(+t+6e4*e)},(t,e)=>(e-t)/6e4,t=>t.getMinutes());lW.range,lV(t=>{t.setUTCSeconds(0,0)},(t,e)=>{t.setTime(+t+6e4*e)},(t,e)=>(e-t)/6e4,t=>t.getUTCMinutes()).range;let lY=lV(t=>{t.setTime(t-t.getMilliseconds()-1e3*t.getSeconds()-6e4*t.getMinutes())},(t,e)=>{t.setTime(+t+36e5*e)},(t,e)=>(e-t)/36e5,t=>t.getHours());lY.range,lV(t=>{t.setUTCMinutes(0,0,0)},(t,e)=>{t.setTime(+t+36e5*e)},(t,e)=>(e-t)/36e5,t=>t.getUTCHours()).range;let lZ=lV(t=>t.setHours(0,0,0,0),(t,e)=>t.setDate(t.getDate()+e),(t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*6e4)/864e5,t=>t.getDate()-1);lZ.range;let lX=lV(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/864e5,t=>t.getUTCDate()-1);function lq(t){return lV(e=>{e.setDate(e.getDate()-(e.getDay()+7-t)%7),e.setHours(0,0,0,0)},(t,e)=>{t.setDate(t.getDate()+7*e)},(t,e)=>(e-t-(e.getTimezoneOffset()-t.getTimezoneOffset())*6e4)/6048e5)}lX.range,lV(t=>{t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+e)},(t,e)=>(e-t)/864e5,t=>Math.floor(t/864e5)).range;let lK=lq(0),lQ=lq(1),lJ=lq(2),l0=lq(3),l1=lq(4),l2=lq(5),l3=lq(6);function l5(t){return lV(e=>{e.setUTCDate(e.getUTCDate()-(e.getUTCDay()+7-t)%7),e.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCDate(t.getUTCDate()+7*e)},(t,e)=>(e-t)/6048e5)}lK.range,lQ.range,lJ.range,l0.range,l1.range,l2.range,l3.range;let l4=l5(0),l8=l5(1),l6=l5(2),l9=l5(3),l7=l5(4),ct=l5(5),ce=l5(6);l4.range,l8.range,l6.range,l9.range,l7.range,ct.range,ce.range;let cn=lV(t=>{t.setDate(1),t.setHours(0,0,0,0)},(t,e)=>{t.setMonth(t.getMonth()+e)},(t,e)=>e.getMonth()-t.getMonth()+(e.getFullYear()-t.getFullYear())*12,t=>t.getMonth());cn.range,lV(t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCMonth(t.getUTCMonth()+e)},(t,e)=>e.getUTCMonth()-t.getUTCMonth()+(e.getUTCFullYear()-t.getUTCFullYear())*12,t=>t.getUTCMonth()).range;let ci=lV(t=>{t.setMonth(0,1),t.setHours(0,0,0,0)},(t,e)=>{t.setFullYear(t.getFullYear()+e)},(t,e)=>e.getFullYear()-t.getFullYear(),t=>t.getFullYear());ci.every=t=>isFinite(t=Math.floor(t))&&t>0?lV(e=>{e.setFullYear(Math.floor(e.getFullYear()/t)*t),e.setMonth(0,1),e.setHours(0,0,0,0)},(e,n)=>{e.setFullYear(e.getFullYear()+n*t)}):null,ci.range;let cr=lV(t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,e)=>{t.setUTCFullYear(t.getUTCFullYear()+e)},(t,e)=>e.getUTCFullYear()-t.getUTCFullYear(),t=>t.getUTCFullYear());cr.every=t=>isFinite(t=Math.floor(t))&&t>0?lV(e=>{e.setUTCFullYear(Math.floor(e.getUTCFullYear()/t)*t),e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,n)=>{e.setUTCFullYear(e.getUTCFullYear()+n*t)}):null,cr.range;let[ca,co]=function(t,e,n,i,r,a){let o=[[lj,1,1e3],[lj,5,5e3],[lj,15,15e3],[lj,30,3e4],[a,1,6e4],[a,5,3e5],[a,15,9e5],[a,30,18e5],[r,1,36e5],[r,3,108e5],[r,6,216e5],[r,12,432e5],[i,1,864e5],[i,2,1728e5],[n,1,6048e5],[e,1,2592e6],[e,3,7776e6],[t,1,31536e6]];function s(e,n,i){let r=Math.abs(n-e)/i,a=rO(([,,t])=>t).right(o,r);if(a===o.length)return t.every(rH(e/31536e6,n/31536e6,i));if(0===a)return lG.every(Math.max(rH(e,n,i),1));let[s,l]=o[r/o[a-1][2]<o[a][2]/r?a-1:a];return s.every(l)}return[function(t,e,n){let i=e<t;i&&([t,e]=[e,t]);let r=n&&"function"==typeof n.range?n:s(t,e,n),a=r?r.range(t,+e+1):[];return i?a.reverse():a},s]}(ci,cn,lK,lZ,lY,lW);function cs(t){if(0<=t.y&&t.y<100){var e=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return e.setFullYear(t.y),e}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function cl(t){if(0<=t.y&&t.y<100){var e=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return e.setUTCFullYear(t.y),e}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function cc(t,e,n){return{y:t,m:e,d:n,H:0,M:0,S:0,L:0}}var cu={"-":"",_:" ",0:"0"},ch=/^\s*\d+/,cd=/^%/,cf=/[\\^$*+?|[\]().{}]/g;function cp(t,e,n){var i=t<0?"-":"",r=(i?-t:t)+"",a=r.length;return i+(a<n?Array(n-a+1).join(e)+r:r)}function cm(t){return t.replace(cf,"\\$&")}function cg(t){return RegExp("^(?:"+t.map(cm).join("|")+")","i")}function cv(t){return new Map(t.map((t,e)=>[t.toLowerCase(),e]))}function cy(t,e,n){var i=ch.exec(e.slice(n,n+1));return i?(t.w=+i[0],n+i[0].length):-1}function c_(t,e,n){var i=ch.exec(e.slice(n,n+1));return i?(t.u=+i[0],n+i[0].length):-1}function cb(t,e,n){var i=ch.exec(e.slice(n,n+2));return i?(t.U=+i[0],n+i[0].length):-1}function cx(t,e,n){var i=ch.exec(e.slice(n,n+2));return i?(t.V=+i[0],n+i[0].length):-1}function cE(t,e,n){var i=ch.exec(e.slice(n,n+2));return i?(t.W=+i[0],n+i[0].length):-1}function cw(t,e,n){var i=ch.exec(e.slice(n,n+4));return i?(t.y=+i[0],n+i[0].length):-1}function cT(t,e,n){var i=ch.exec(e.slice(n,n+2));return i?(t.y=+i[0]+(+i[0]>68?1900:2e3),n+i[0].length):-1}function cS(t,e,n){var i=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(e.slice(n,n+6));return i?(t.Z=i[1]?0:-(i[2]+(i[3]||"00")),n+i[0].length):-1}function cO(t,e,n){var i=ch.exec(e.slice(n,n+1));return i?(t.q=3*i[0]-3,n+i[0].length):-1}function cM(t,e,n){var i=ch.exec(e.slice(n,n+2));return i?(t.m=i[0]-1,n+i[0].length):-1}function cA(t,e,n){var i=ch.exec(e.slice(n,n+2));return i?(t.d=+i[0],n+i[0].length):-1}function ck(t,e,n){var i=ch.exec(e.slice(n,n+3));return i?(t.m=0,t.d=+i[0],n+i[0].length):-1}function cC(t,e,n){var i=ch.exec(e.slice(n,n+2));return i?(t.H=+i[0],n+i[0].length):-1}function cD(t,e,n){var i=ch.exec(e.slice(n,n+2));return i?(t.M=+i[0],n+i[0].length):-1}function cL(t,e,n){var i=ch.exec(e.slice(n,n+2));return i?(t.S=+i[0],n+i[0].length):-1}function cR(t,e,n){var i=ch.exec(e.slice(n,n+3));return i?(t.L=+i[0],n+i[0].length):-1}function cI(t,e,n){var i=ch.exec(e.slice(n,n+6));return i?(t.L=Math.floor(i[0]/1e3),n+i[0].length):-1}function cN(t,e,n){var i=cd.exec(e.slice(n,n+1));return i?n+i[0].length:-1}function cP(t,e,n){var i=ch.exec(e.slice(n));return i?(t.Q=+i[0],n+i[0].length):-1}function cU(t,e,n){var i=ch.exec(e.slice(n));return i?(t.s=+i[0],n+i[0].length):-1}function cB(t,e){return cp(t.getDate(),e,2)}function cH(t,e){return cp(t.getHours(),e,2)}function cF(t,e){return cp(t.getHours()%12||12,e,2)}function c$(t,e){return cp(1+lZ.count(ci(t),t),e,3)}function cz(t,e){return cp(t.getMilliseconds(),e,3)}function cV(t,e){return cz(t,e)+"000"}function cG(t,e){return cp(t.getMonth()+1,e,2)}function cj(t,e){return cp(t.getMinutes(),e,2)}function cW(t,e){return cp(t.getSeconds(),e,2)}function cY(t){var e=t.getDay();return 0===e?7:e}function cZ(t,e){return cp(lK.count(ci(t)-1,t),e,2)}function cX(t){var e=t.getDay();return e>=4||0===e?l1(t):l1.ceil(t)}function cq(t,e){return t=cX(t),cp(l1.count(ci(t),t)+(4===ci(t).getDay()),e,2)}function cK(t){return t.getDay()}function cQ(t,e){return cp(lQ.count(ci(t)-1,t),e,2)}function cJ(t,e){return cp(t.getFullYear()%100,e,2)}function c0(t,e){return cp((t=cX(t)).getFullYear()%100,e,2)}function c1(t,e){return cp(t.getFullYear()%1e4,e,4)}function c2(t,e){var n=t.getDay();return cp((t=n>=4||0===n?l1(t):l1.ceil(t)).getFullYear()%1e4,e,4)}function c3(t){var e=t.getTimezoneOffset();return(e>0?"-":(e*=-1,"+"))+cp(e/60|0,"0",2)+cp(e%60,"0",2)}function c5(t,e){return cp(t.getUTCDate(),e,2)}function c4(t,e){return cp(t.getUTCHours(),e,2)}function c8(t,e){return cp(t.getUTCHours()%12||12,e,2)}function c6(t,e){return cp(1+lX.count(cr(t),t),e,3)}function c9(t,e){return cp(t.getUTCMilliseconds(),e,3)}function c7(t,e){return c9(t,e)+"000"}function ut(t,e){return cp(t.getUTCMonth()+1,e,2)}function ue(t,e){return cp(t.getUTCMinutes(),e,2)}function un(t,e){return cp(t.getUTCSeconds(),e,2)}function ui(t){var e=t.getUTCDay();return 0===e?7:e}function ur(t,e){return cp(l4.count(cr(t)-1,t),e,2)}function ua(t){var e=t.getUTCDay();return e>=4||0===e?l7(t):l7.ceil(t)}function uo(t,e){return t=ua(t),cp(l7.count(cr(t),t)+(4===cr(t).getUTCDay()),e,2)}function us(t){return t.getUTCDay()}function ul(t,e){return cp(l8.count(cr(t)-1,t),e,2)}function uc(t,e){return cp(t.getUTCFullYear()%100,e,2)}function uu(t,e){return cp((t=ua(t)).getUTCFullYear()%100,e,2)}function uh(t,e){return cp(t.getUTCFullYear()%1e4,e,4)}function ud(t,e){var n=t.getUTCDay();return cp((t=n>=4||0===n?l7(t):l7.ceil(t)).getUTCFullYear()%1e4,e,4)}function uf(){return"+0000"}function up(){return"%"}function um(t){return+t}function ug(t){return Math.floor(t/1e3)}function uv(t){return new Date(t)}function uy(t){return t instanceof Date?+t:+new Date(+t)}function u_(){return o5.apply((function t(e,n,i,r,a,o,s,l,c,u){var h=sr()(o7,o7),d=h.invert,f=h.domain,p=u(".%L"),m=u(":%S"),g=u("%I:%M"),v=u("%I %p"),y=u("%a %d"),_=u("%b %d"),b=u("%B"),x=u("%Y");function E(t){return(c(t)<t?p:l(t)<t?m:s(t)<t?g:o(t)<t?v:r(t)<t?a(t)<t?y:_:i(t)<t?b:x)(t)}return h.invert=function(t){return new Date(d(t))},h.domain=function(t){return arguments.length?f(Array.from(t,uy)):f().map(uv)},h.ticks=function(t){var n=f();return e(n[0],n[n.length-1],t??10)},h.tickFormat=function(t,e){return null==e?E:u(e)},h.nice=function(t){var e=f();return t&&"function"==typeof t.range||(t=n(e[0],e[e.length-1],t??10)),t?f(lF(e,t)):h},h.copy=function(){return si(h,t(e,n,i,r,a,o,s,l,c,u))},h})(ca,co,ci,cn,lK,lZ,lY,lW,lj,d0).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)}d0=(dJ=function(t){var e=t.dateTime,n=t.date,i=t.time,r=t.periods,a=t.days,o=t.shortDays,s=t.months,l=t.shortMonths,c=cg(r),u=cv(r),h=cg(a),d=cv(a),f=cg(o),p=cv(o),m=cg(s),g=cv(s),v=cg(l),y=cv(l),_={a:function(t){return o[t.getDay()]},A:function(t){return a[t.getDay()]},b:function(t){return l[t.getMonth()]},B:function(t){return s[t.getMonth()]},c:null,d:cB,e:cB,f:cV,g:c0,G:c2,H:cH,I:cF,j:c$,L:cz,m:cG,M:cj,p:function(t){return r[+(t.getHours()>=12)]},q:function(t){return 1+~~(t.getMonth()/3)},Q:um,s:ug,S:cW,u:cY,U:cZ,V:cq,w:cK,W:cQ,x:null,X:null,y:cJ,Y:c1,Z:c3,"%":up},b={a:function(t){return o[t.getUTCDay()]},A:function(t){return a[t.getUTCDay()]},b:function(t){return l[t.getUTCMonth()]},B:function(t){return s[t.getUTCMonth()]},c:null,d:c5,e:c5,f:c7,g:uu,G:ud,H:c4,I:c8,j:c6,L:c9,m:ut,M:ue,p:function(t){return r[+(t.getUTCHours()>=12)]},q:function(t){return 1+~~(t.getUTCMonth()/3)},Q:um,s:ug,S:un,u:ui,U:ur,V:uo,w:us,W:ul,x:null,X:null,y:uc,Y:uh,Z:uf,"%":up},x={a:function(t,e,n){var i=f.exec(e.slice(n));return i?(t.w=p.get(i[0].toLowerCase()),n+i[0].length):-1},A:function(t,e,n){var i=h.exec(e.slice(n));return i?(t.w=d.get(i[0].toLowerCase()),n+i[0].length):-1},b:function(t,e,n){var i=v.exec(e.slice(n));return i?(t.m=y.get(i[0].toLowerCase()),n+i[0].length):-1},B:function(t,e,n){var i=m.exec(e.slice(n));return i?(t.m=g.get(i[0].toLowerCase()),n+i[0].length):-1},c:function(t,n,i){return T(t,e,n,i)},d:cA,e:cA,f:cI,g:cT,G:cw,H:cC,I:cC,j:ck,L:cR,m:cM,M:cD,p:function(t,e,n){var i=c.exec(e.slice(n));return i?(t.p=u.get(i[0].toLowerCase()),n+i[0].length):-1},q:cO,Q:cP,s:cU,S:cL,u:c_,U:cb,V:cx,w:cy,W:cE,x:function(t,e,i){return T(t,n,e,i)},X:function(t,e,n){return T(t,i,e,n)},y:cT,Y:cw,Z:cS,"%":cN};function E(t,e){return function(n){var i,r,a,o=[],s=-1,l=0,c=t.length;for(n instanceof Date||(n=new Date(+n));++s<c;)37===t.charCodeAt(s)&&(o.push(t.slice(l,s)),null!=(r=cu[i=t.charAt(++s)])?i=t.charAt(++s):r="e"===i?" ":"0",(a=e[i])&&(i=a(n,r)),o.push(i),l=s+1);return o.push(t.slice(l,s)),o.join("")}}function w(t,e){return function(n){var i,r,a=cc(1900,void 0,1);if(T(a,t,n+="",0)!=n.length)return null;if("Q"in a)return new Date(a.Q);if("s"in a)return new Date(1e3*a.s+("L"in a?a.L:0));if(!e||"Z"in a||(a.Z=0),"p"in a&&(a.H=a.H%12+12*a.p),void 0===a.m&&(a.m="q"in a?a.q:0),"V"in a){if(a.V<1||a.V>53)return null;"w"in a||(a.w=1),"Z"in a?(i=(r=(i=cl(cc(a.y,0,1))).getUTCDay())>4||0===r?l8.ceil(i):l8(i),i=lX.offset(i,(a.V-1)*7),a.y=i.getUTCFullYear(),a.m=i.getUTCMonth(),a.d=i.getUTCDate()+(a.w+6)%7):(i=(r=(i=cs(cc(a.y,0,1))).getDay())>4||0===r?lQ.ceil(i):lQ(i),i=lZ.offset(i,(a.V-1)*7),a.y=i.getFullYear(),a.m=i.getMonth(),a.d=i.getDate()+(a.w+6)%7)}else("W"in a||"U"in a)&&("w"in a||(a.w="u"in a?a.u%7:+("W"in a)),r="Z"in a?cl(cc(a.y,0,1)).getUTCDay():cs(cc(a.y,0,1)).getDay(),a.m=0,a.d="W"in a?(a.w+6)%7+7*a.W-(r+5)%7:a.w+7*a.U-(r+6)%7);return"Z"in a?(a.H+=a.Z/100|0,a.M+=a.Z%100,cl(a)):cs(a)}}function T(t,e,n,i){for(var r,a,o=0,s=e.length,l=n.length;o<s;){if(i>=l)return -1;if(37===(r=e.charCodeAt(o++))){if(!(a=x[(r=e.charAt(o++))in cu?e.charAt(o++):r])||(i=a(t,n,i))<0)return -1}else if(r!=n.charCodeAt(i++))return -1}return i}return _.x=E(n,_),_.X=E(i,_),_.c=E(e,_),b.x=E(n,b),b.X=E(i,b),b.c=E(e,b),{format:function(t){var e=E(t+="",_);return e.toString=function(){return t},e},parse:function(t){var e=w(t+="",!1);return e.toString=function(){return t},e},utcFormat:function(t){var e=E(t+="",b);return e.toString=function(){return t},e},utcParse:function(t){var e=w(t+="",!0);return e.toString=function(){return t},e}}}({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]})).format,dJ.parse,dJ.utcFormat,dJ.utcParse;let ub=Math.abs,ux=Math.atan2,uE=Math.cos,uw=Math.max,uT=Math.min,uS=Math.sin,uO=Math.sqrt,uM=Math.PI,uA=uM/2,uk=2*uM;function uC(t){return t>=1?uA:t<=-1?-uA:Math.asin(t)}function uD(t){this._context=t}function uL(t){return new uD(t)}function uR(){}function uI(t){this._context=t}function uN(t){return new uI(t)}uD.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t*=1,e*=1,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:this._context.lineTo(t,e)}}},uI.prototype={areaStart:uR,areaEnd:uR,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(t,e){t*=1,e*=1,this._point?this._context.lineTo(t,e):(this._point=1,this._context.moveTo(t,e))}};let uP=(()=>{let t=0,e=()=>`0000${(1679616*Math.random()|0).toString(36)}`.slice(-4);return()=>(t+=1,`u${e()}${t}`)})();function uU(t){let e=[];for(let n=0,i=t.length;n<i;n++)e.push(t[n]);return e}function uB(t,e){let n=(t.ownerDocument.defaultView||window).getComputedStyle(t).getPropertyValue(e);return n?parseFloat(n.replace("px","")):0}function uH(t,e={}){return{width:e.width||function(t){let e=uB(t,"border-left-width"),n=uB(t,"border-right-width");return t.clientWidth+e+n}(t),height:e.height||function(t){let e=uB(t,"border-top-width"),n=uB(t,"border-bottom-width");return t.clientHeight+e+n}(t)}}function uF(t){return new Promise((e,n)=>{let i=new Image;i.decode=()=>e(i),i.onload=()=>e(i),i.onerror=n,i.crossOrigin="anonymous",i.decoding="async",i.src=t})}async function u$(t){return Promise.resolve().then(()=>new XMLSerializer().serializeToString(t)).then(encodeURIComponent).then(t=>`data:image/svg+xml;charset=utf-8,${t}`)}async function uz(t,e,n){let i="http://www.w3.org/2000/svg",r=document.createElementNS(i,"svg"),a=document.createElementNS(i,"foreignObject");return r.setAttribute("width",`${e}`),r.setAttribute("height",`${n}`),r.setAttribute("viewBox",`0 0 ${e} ${n}`),a.setAttribute("width","100%"),a.setAttribute("height","100%"),a.setAttribute("x","0"),a.setAttribute("y","0"),a.setAttribute("externalResourcesRequired","true"),r.appendChild(a),a.appendChild(t),u$(r)}let uV=(t,e)=>{if(t instanceof e)return!0;let n=Object.getPrototypeOf(t);return null!==n&&(n.constructor.name===e.name||uV(n,e))};function uG(t,e,n){let i=window.getComputedStyle(t,n),r=i.getPropertyValue("content");if(""===r||"none"===r)return;let a=uP();try{e.className=`${e.className} ${a}`}catch{return}let o=document.createElement("style");o.appendChild(function(t,e,n){let i=`.${t}:${e}`,r=n.cssText?function(t){let e=t.getPropertyValue("content");return`${t.cssText} content: '${e.replace(/'|"/g,"")}';`}(n):uU(n).map(t=>{let e=n.getPropertyValue(t),i=n.getPropertyPriority(t);return`${t}: ${e}${i?" !important":""};`}).join(" ");return document.createTextNode(`${i}{${r}}`)}(a,n,i)),e.appendChild(o)}let uj="application/font-woff",uW="image/jpeg",uY={woff:uj,woff2:uj,ttf:"application/font-truetype",eot:"application/vnd.ms-fontobject",png:"image/png",jpg:uW,jpeg:uW,gif:"image/gif",tiff:"image/tiff",svg:"image/svg+xml",webp:"image/webp"};function uZ(t){return uY[(function(t){let e=/\.([^./]*?)$/g.exec(t);return e?e[1]:""})(t).toLowerCase()]||""}function uX(t){return -1!==t.search(/^(data:)/)}async function uq(t,e,n){let i=await fetch(t,e);if(404===i.status)throw Error(`Resource "${i.url}" not found`);let r=await i.blob();return new Promise((t,e)=>{let a=new FileReader;a.onerror=e,a.onloadend=()=>{try{t(n({res:i,result:a.result}))}catch(t){e(t)}},a.readAsDataURL(r)})}let uK={};async function uQ(t,e,n){var i,r,a,o,s;let l,c,u=(i=t,r=e,a=n.includeQueryParams,c=i.replace(/\?.*/,""),a&&(c=i),/ttf|otf|eot|woff2?/i.test(c)&&(c=c.replace(/.*\//,"")),r?`[${r}]${c}`:c);if(null!=uK[u])return uK[u];n.cacheBust&&(t+=(/\?/.test(t)?"&":"?")+new Date().getTime());try{o=await uq(t,n.fetchRequestInit,({res:t,result:n})=>(e||(e=t.headers.get("Content-Type")||""),n.split(/,/)[1])),s=e,l=`data:${s};base64,${o}`}catch(i){l=n.imagePlaceholder||"";let e=`Failed to fetch resource: ${t}`;i&&(e="string"==typeof i?i:i.message),e&&console.warn(e)}return uK[u]=l,l}async function uJ(t){let e=t.toDataURL();return"data:,"===e?t.cloneNode(!1):uF(e)}async function u0(t,e){if(t.currentSrc){let e=document.createElement("canvas"),n=e.getContext("2d");return e.width=t.clientWidth,e.height=t.clientHeight,n?.drawImage(t,0,0,e.width,e.height),uF(e.toDataURL())}let n=t.poster,i=uZ(n);return uF(await uQ(n,i,e))}async function u1(t){var e;try{if(null!=(e=t?.contentDocument)&&e.body)return await u8(t.contentDocument.body,{},!0)}catch{}return t.cloneNode(!1)}async function u2(t,e){return uV(t,HTMLCanvasElement)?uJ(t):uV(t,HTMLVideoElement)?u0(t,e):uV(t,HTMLIFrameElement)?u1(t):t.cloneNode(!1)}let u3=t=>null!=t.tagName&&"SLOT"===t.tagName.toUpperCase();async function u5(t,e,n){var i,r;let a=[];return 0===(a=u3(t)&&t.assignedNodes?uU(t.assignedNodes()):uV(t,HTMLIFrameElement)&&null!=(i=t.contentDocument)&&i.body?uU(t.contentDocument.body.childNodes):uU((null!=(r=t.shadowRoot)?r:t).childNodes)).length||uV(t,HTMLVideoElement)||await a.reduce((t,i)=>t.then(()=>u8(i,n)).then(t=>{t&&e.appendChild(t)}),Promise.resolve()),e}async function u4(t,e){let n=t.querySelectorAll?t.querySelectorAll("use"):[];if(0===n.length)return t;let i={};for(let r=0;r<n.length;r++){let a=n[r].getAttribute("xlink:href");if(a){let n=t.querySelector(a),r=document.querySelector(a);n||!r||i[a]||(i[a]=await u8(r,e,!0))}}let r=Object.values(i);if(r.length){let e="http://www.w3.org/1999/xhtml",n=document.createElementNS(e,"svg");n.setAttribute("xmlns",e),n.style.position="absolute",n.style.width="0",n.style.height="0",n.style.overflow="hidden",n.style.display="none";let i=document.createElementNS(e,"defs");n.appendChild(i);for(let t=0;t<r.length;t++)i.appendChild(r[t]);t.appendChild(n)}return t}async function u8(t,e,n){return n||!e.filter||e.filter(t)?Promise.resolve(t).then(t=>u2(t,e)).then(n=>u5(t,n,e)).then(e=>(uV(e,Element)&&(function(t,e){let n=e.style;if(!n)return;let i=window.getComputedStyle(t);i.cssText?(n.cssText=i.cssText,n.transformOrigin=i.transformOrigin):uU(i).forEach(r=>{let a=i.getPropertyValue(r);"font-size"===r&&a.endsWith("px")&&(a=`${Math.floor(parseFloat(a.substring(0,a.length-2)))-.1}px`),uV(t,HTMLIFrameElement)&&"display"===r&&"inline"===a&&(a="block"),"d"===r&&e.getAttribute("d")&&(a=`path(${e.getAttribute("d")})`),n.setProperty(r,a,i.getPropertyPriority(r))})}(t,e),uG(t,e,":before"),uG(t,e,":after"),uV(t,HTMLTextAreaElement)&&(e.innerHTML=t.value),uV(t,HTMLInputElement)&&e.setAttribute("value",t.value),function(t,e){if(uV(t,HTMLSelectElement)){let n=Array.from(e.children).find(e=>t.value===e.getAttribute("value"));n&&n.setAttribute("selected","")}}(t,e)),e)).then(t=>u4(t,e)):null}let u6=/url\((['"]?)([^'"]+?)\1\)/g,u9=/url\([^)]+\)\s*format\((["']?)([^"']+)\1\)/g,u7=/src:\s*(?:url\([^)]+\)\s*format\([^)]+\)[,;]\s*)+/g;async function ht(t,e,n,i,r){try{let a,o=n?function(t,e){if(t.match(/^[a-z]+:\/\//i))return t;if(t.match(/^\/\//))return window.location.protocol+t;if(t.match(/^[a-z]+:/i))return t;let n=document.implementation.createHTMLDocument(),i=n.createElement("base"),r=n.createElement("a");return n.head.appendChild(i),n.body.appendChild(r),e&&(i.href=e),r.href=t,r.href}(e,n):e,s=uZ(e);return r||(a=await uQ(o,s,i)),t.replace(function(t){let e=t.replace(/([.*+?^${}()|\[\]\/\\])/g,"\\$1");return RegExp(`(url\\(['"]?)(${e})(['"]?\\))`,"g")}(e),`$1${a}$3`)}catch{}return t}function he(t){return -1!==t.search(u6)}async function hn(t,e,n){if(!he(t))return t;let i=function(t,{preferredFontFormat:e}){return e?t.replace(u7,t=>{for(;;){let[n,,i]=u9.exec(t)||[];if(!i)return"";if(i===e)return`src: ${n};`}}):t}(t,n);return(function(t){let e=[];return t.replace(u6,(t,n,i)=>(e.push(i),t)),e.filter(t=>!uX(t))})(i).reduce((t,i)=>t.then(t=>ht(t,i,e,n)),Promise.resolve(i))}async function hi(t,e,n){var i;let r=null==(i=e.style)?void 0:i.getPropertyValue(t);if(r){let i=await hn(r,null,n);return e.style.setProperty(t,i,e.style.getPropertyPriority(t)),!0}return!1}async function hr(t,e){await hi("background",t,e)||await hi("background-image",t,e),await hi("mask",t,e)||await hi("mask-image",t,e)}async function ha(t,e){let n=uV(t,HTMLImageElement);if(!(n&&!uX(t.src))&&!(uV(t,SVGImageElement)&&!uX(t.href.baseVal)))return;let i=n?t.src:t.href.baseVal,r=await uQ(i,uZ(i),e);await new Promise((e,i)=>{t.onload=e,t.onerror=i,t.decode&&(t.decode=e),"lazy"===t.loading&&(t.loading="eager"),n?(t.srcset="",t.src=r):t.href.baseVal=r})}async function ho(t,e){let n=uU(t.childNodes).map(t=>hs(t,e));await Promise.all(n).then(()=>t)}async function hs(t,e){uV(t,Element)&&(await hr(t,e),await ha(t,e),await ho(t,e))}let hl={};async function hc(t){let e=hl[t];if(null!=e)return e;let n=await (await fetch(t)).text();return e={url:t,cssText:n},hl[t]=e,e}async function hu(t,e){let n=t.cssText,i=/url\(["']?([^"')]+)["']?\)/g;return Promise.all((n.match(/url\([^)]+\)/g)||[]).map(async r=>{let a=r.replace(i,"$1");return a.startsWith("https://")||(a=new URL(a,t.url).href),uq(a,e.fetchRequestInit,({result:t})=>(n=n.replace(r,`url(${t})`),[r,t]))})).then(()=>n)}function hh(t){if(null==t)return[];let e=[],n=t.replace(/(\/\*[\s\S]*?\*\/)/gi,""),i=RegExp("((@.*?keyframes [\\s\\S]*?){([\\s\\S]*?}\\s*?)})","gi");for(;;){let t=i.exec(n);if(null===t)break;e.push(t[0])}n=n.replace(i,"");let r=/@import[\s\S]*?url\([^)]*\)[\s\S]*?;/gi,a=RegExp("((\\s*?(?:\\/\\*[\\s\\S]*?\\*\\/)?\\s*?@media[\\s\\S]*?){([\\s\\S]*?)}\\s*?})|(([\\s\\S]*?){([\\s\\S]*?)})","gi");for(;;){let t=r.exec(n);if(null===t){if(null===(t=a.exec(n)))break;r.lastIndex=a.lastIndex}else a.lastIndex=r.lastIndex;e.push(t[0])}return e}async function hd(t,e){let n=[],i=[];return t.forEach(n=>{if("cssRules"in n)try{uU(n.cssRules||[]).forEach((t,r)=>{if(t.type===CSSRule.IMPORT_RULE){let a=r+1,o=t.href,s=hc(o).then(t=>hu(t,e)).then(t=>hh(t).forEach(t=>{try{n.insertRule(t,t.startsWith("@import")?a+=1:n.cssRules.length)}catch(e){console.error("Error inserting rule from remote css",{rule:t,error:e})}})).catch(t=>{console.error("Error loading remote css",t.toString())});i.push(s)}})}catch(a){let r=t.find(t=>null==t.href)||document.styleSheets[0];null!=n.href&&i.push(hc(n.href).then(t=>hu(t,e)).then(t=>hh(t).forEach(t=>{r.insertRule(t,n.cssRules.length)})).catch(t=>{console.error("Error loading remote stylesheet",t)})),console.error("Error inlining remote css file",a)}}),Promise.all(i).then(()=>(t.forEach(t=>{if("cssRules"in t)try{uU(t.cssRules||[]).forEach(t=>{n.push(t)})}catch(e){console.error(`Error while reading CSS rules from ${t.href}`,e)}}),n))}async function hf(t,e){if(null==t.ownerDocument)throw Error("Provided element is not within a Document");let n=uU(t.ownerDocument.styleSheets);return(await hd(n,e)).filter(t=>t.type===CSSRule.FONT_FACE_RULE).filter(t=>he(t.style.getPropertyValue("src")))}async function hp(t,e){let n=await hf(t,e);return(await Promise.all(n.map(t=>{let n=t.parentStyleSheet?t.parentStyleSheet.href:null;return hn(t.cssText,n,e)}))).join(`
3
+ `)}async function hm(t,e){let n=null!=e.fontEmbedCSS?e.fontEmbedCSS:e.skipFonts?null:await hp(t,e);if(n){let e=document.createElement("style"),i=document.createTextNode(n);e.appendChild(i),t.firstChild?t.insertBefore(e,t.firstChild):t.appendChild(e)}}async function hg(t,e={}){let{width:n,height:i}=uH(t,e),r=await u8(t,e,!0);return await hm(r,e),await hs(r,e),function(t,e){let{style:n}=t;e.backgroundColor&&(n.backgroundColor=e.backgroundColor),e.width&&(n.width=`${e.width}px`),e.height&&(n.height=`${e.height}px`);let i=e.style;null!=i&&Object.keys(i).forEach(t=>{n[t]=i[t]})}(r,e),await uz(r,n,i)}async function hv(t,e={}){let{width:n,height:i}=uH(t,e),r=await hg(t,e),a=await uF(r),o=document.createElement("canvas"),s=o.getContext("2d"),l=e.pixelRatio||function(){let t,e;try{e=process}catch{}let n=e&&e.env?e.env.devicePixelRatio:null;return n&&Number.isNaN(t=parseInt(n,10))&&(t=1),t||window.devicePixelRatio||1}(),c=e.canvasWidth||n,u=e.canvasHeight||i;return o.width=c*l,o.height=u*l,e.skipAutoScale||(o.width>16384||o.height>16384)&&(o.width>16384&&o.height>16384?o.width>o.height?(o.height*=16384/o.width,o.width=16384):(o.width*=16384/o.height,o.height=16384):o.width>16384?(o.height*=16384/o.width,o.width=16384):(o.width*=16384/o.height,o.height=16384)),o.style.width=`${c}`,o.style.height=`${u}`,e.backgroundColor&&(s.fillStyle=e.backgroundColor,s.fillRect(0,0,o.width,o.height)),s.drawImage(a,0,0,o.width,o.height),o}async function hy(t,e={}){return(await hv(t,e)).toDataURL()}async function h_(t,e={}){return(await hv(t,e)).toDataURL("image/jpeg",e.quality||1)}let hb=class{constructor(t,e){this.model=t,this.services=e,this.init()}init(){}update(){}setModel(t){this.model=t}setServices(t){this.services=t}},hx=class t extends hb{constructor(t,e){super(t,e)}static getHTMLElementSize(t){return{width:t.clientWidth,height:t.clientHeight}}static getSVGElementSize(t,e={useAttrs:!1,useClientDimensions:!1,useBBox:!1,useBoundingRect:!1}){let n,i,r,a,o;t.attr||(t=lH(t));let s={width:0,height:0},l=t=>{t&&Object.keys(s).forEach(e=>{if(t[e]){let n=t[e],i=parseFloat(n);n&&i>s[e]&&-1===(""+n).indexOf("%")&&(s[e]=i)}})},c={width:t.attr("width"),height:t.attr("height")},u=t.node();try{"function"==typeof u.getBBox&&(i={width:(n=u.getBBox()).width,height:n.height})}catch(t){console.error(t)}try{"function"==typeof u?.getBoundingClientRect&&(a={width:(r=u.getBoundingClientRect()).width,height:r.height})}catch(t){console.error(t)}if(u instanceof SVGSVGElement&&(o={width:u.clientWidth,height:u.clientHeight}),e){if(e.useAttrs&&(l(c),s.width>0&&s.height>0))return s;if(e.useClientDimensions&&(l(o),s.width>0&&s.height>0))return o;if(e.useBBox&&(l(i),s.width>0&&s.height>0))return i;if(e.useBoundingRect&&(l(a),s.width>0&&s.height>0))return a}try{let e={width:sB(t.node(),"width","baseVal","value"),height:sB(t.node(),"height","baseVal","value")};l(e)}catch{l(o),l(i),l(c)}return s}static appendOrSelect(t,e){let n=t.select(`${e}`);if(n.empty()){let n=e.split("#"),i,r;return 2===n.length?(i=n[0],r=(n=n[1].split("."))[0]):i=(n=e.split("."))[0],t.append(i).attr("id",r).attr("class",n.slice(1).join(" "))}return n}init(){this.initializeID(),this.styleHolderElement(),this.addMainContainer(),this.model.getOptions().resizable&&this.addResizeListener(),this.addHolderListeners(),this.handleFullscreenChange()}getChartID(){return this.chartID}getElementOffset(t,e=!1){let n={left:0,top:0},i=t.getBoundingClientRect(),r=e?{left:0,top:0}:this.getHolder().getBoundingClientRect();try{n.left=i.left-r.left,n.top=i.top-r.top}catch(t){console.error(t)}return n}generateElementIDString(t){return`chart-${this.chartID}-${t}`}initializeID(){let t=this.model.getOptions().chartId;t?this.chartID=t:this.chartID=Math.floor((1+Math.random())*0x1000000000000).toString(16)}addMainContainer(){let t=sB(this.model.getOptions(),"style","prefix"),e=lH(this.getHolder()).append("div").classed(`cds--${t}--chart-wrapper`,!0).attr("id",`chart-${this.getChartID()}`).style("height","100%").style("width","100%");e.append("g").attr("class","DONT_STYLE_ME_css_styles_verifier"),this.mainContainer=e.node()}update(){this.styleHolderElement()}styleHolderElement(){let t=this.getHolder(),{width:e,height:n,theme:i}=this.model.getOptions();e!==this.width&&(t.style.width=e,this.width=e),n!==this.height&&(t.style.height=n,this.height=n),lH(this.getHolder()).classed("cds--chart-holder",!0).attr("data-carbon-theme",i)}getHolder(){return this.model.get("holder")}exportToJPG(){let t=this,e=this.model.getOptions(),n=lH(this.getHolder());n.classed("filled",!0),h_(this.getMainContainer(),{quality:1,filter:t=>!(t.classList&&t.classList.contains("cds--cc--toolbar"))}).then(function(i){let r="myChart",a=sB(e,"fileDownload","fileName");"function"==typeof a?r=a("jpg"):"string"==typeof a&&(r=a),t.services.files?.downloadImage(i,`${r}.jpg`),n.classed("filled",!1)})}exportToPNG(){let t=this,e=this.model.getOptions(),n=lH(this.getHolder());n.classed("filled",!0),hy(this.getMainContainer(),{quality:1,filter:t=>!(t.classList&&t.classList.contains("cds--cc--toolbar"))}).then(function(i){let r="myChart",a=sB(e,"fileDownload","fileName");"function"==typeof a?r=a("png"):"string"==typeof a&&(r=a),t.services.files?.downloadImage(i,`${r}.png`),n.classed("filled",!1)}).catch(function(t){console.error("oops, something went wrong!",t)})}isFullScreenMode(){return lH(this.getHolder()).classed("fullscreen")}toggleFullscreen(){let t=this.getHolder();lH(t).classed("fullscreen")&&(document.fullscreenElement||document.webkitFullscreenElement||document.mozFullScreenElement||document.msFullscreenElement)?document.exitFullscreen?document.exitFullscreen():document.webkitExitFullscreen?document.webkitExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.msExitFullscreen&&document.msExitFullscreen():t.requestFullscreen?t.requestFullscreen():t.webkitRequestFullscreen?t.webkitRequestFullscreen():t.mozRequestFullScreen?t.mozRequestFullScreen():t.msRequestFullscreen&&t.msRequestFullscreen()}handleFullscreenChange(){document.addEventListener("fullscreenchange",()=>{let t=lH(this.getHolder()),e=t.classed("fullscreen");t.classed("fullscreen",!e)})}setSVGMaxHeight(){if(!this.model.getOptions().height){let{height:e}=t.getSVGElementSize(lH(this.mainContainer),{useBBox:!0}),n=lH(this.mainContainer).attr("class"),i=lH(this.mainContainer).selectAll(`.${n} > svg`),r=0;i.nodes().forEach(function(e){r+=Number(t.getSVGElementSize(lH(e),{useBBox:!0}).height)}),r<=e?lH(this.mainContainer).attr("height",r):lH(this.mainContainer).attr("height","100%")}}getMainContainer(){return this.mainContainer}addHolderListeners(){let t=this.getHolder();t&&lH(t).on("mouseover",()=>{this.services.events?.dispatchEvent(tW.Chart.MOUSEOVER)}).on("mouseout",()=>{this.services.events?.dispatchEvent(tW.Chart.MOUSEOUT)})}addResizeListener(){let t=this.getHolder();if(!t)return;let e=t.clientWidth,n=t.clientHeight;new ResizeObserver(function(t,e,n){var i,r,a,o,s,l,c=0,u=!1,h=!1,d=!0;if("function"!=typeof t)throw TypeError("Expected a function");function f(e){var n=i,a=r;return i=r=void 0,c=e,o=t.apply(a,n)}function p(t){var n=t-l,i=t-c;return void 0===l||n>=e||n<0||h&&i>=a}function m(){var t,n,i,r=lP();if(p(r))return g(r);s=setTimeout(m,(t=r-l,n=r-c,i=e-t,h?lB(i,a-n):i))}function g(t){return s=void 0,d&&i?f(t):(i=r=void 0,o)}function v(){var t,n=lP(),a=p(n);if(i=arguments,r=this,l=n,a){if(void 0===s)return c=t=l,s=setTimeout(m,e),u?f(t):o;if(h)return clearTimeout(s),s=setTimeout(m,e),f(l)}return void 0===s&&(s=setTimeout(m,e)),o}return e=lN(e)||0,eW(n)&&(u=!!n.leading,a=(h="maxWait"in n)?lU(lN(n.maxWait)||0,e):a,d="trailing"in n?!!n.trailing:d),v.cancel=function(){void 0!==s&&clearTimeout(s),c=0,i=l=r=s=void 0},v.flush=function(){return void 0===s?o:g(lP())},v}(()=>{t&&(Math.abs(e-t.clientWidth)>1||Math.abs(n-t.clientHeight)>1)&&(e=t.clientWidth,n=t.clientHeight,this.services.events?.dispatchEvent(tW.Chart.RESIZE))},12.5)).observe(t)}},hE=class t extends hb{static appendOrUpdateLinearGradient(t){let e=t.svg.select(`defs linearGradient#${t.id}`);e.empty()&&(e=t.svg.append("defs").append("linearGradient").attr("id",t.id).attr("x1",t.x1).attr("x2",t.x2).attr("y1",t.y1).attr("y2",t.y2)),e.selectAll("stop").remove(),e.selectAll("stop").data(t.stops).enter().append("stop").attr("offset",t=>t.offset).style("stop-color",t=>t.color).style("stop-opacity",t=>t.opacity)}static getOffsetRatio(t){return(100*Math.abs(t[1])/Math.abs(t[0]-t[1])).toFixed(2)+"%"}static getStops(e,n){let i=e[0]<0&&e[1]>0,r=[{offset:"0%",color:n,opacity:"0.6"},{offset:"80%",color:n,opacity:"0"}];return i&&(r=[{offset:"0%",color:n,opacity:"0.6"},{offset:t.getOffsetRatio(e),color:n,opacity:"0"},{offset:"100%",color:n,opacity:"0.6"}]),r}};var hw=(dY={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},function(t){return dY?.[t]}),hT=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,hS=RegExp("[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]","g"),hO=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,hM=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,hA="\ud800-\udfff",hk="\\u2700-\\u27bf",hC="a-z\\xdf-\\xf6\\xf8-\\xff",hD="A-Z\\xc0-\\xd6\\xd8-\\xde",hL="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",hR="['’]",hI="["+hL+"]",hN="["+hC+"]",hP="[^"+hA+hL+"\\d+"+hk+hC+hD+"]",hU="(?:\ud83c[\udde6-\uddff]){2}",hB="[\ud800-\udbff][\udc00-\udfff]",hH="["+hD+"]",hF="(?:"+hN+"|"+hP+")",h$="(?:"+hH+"|"+hP+")",hz="(?:"+hR+"(?:d|ll|m|re|s|t|ve))?",hV="(?:"+hR+"(?:D|LL|M|RE|S|T|VE))?",hG="(?:[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]|\ud83c[\udffb-\udfff])?",hj="[\\ufe0e\\ufe0f]?",hW="(?:\\u200d(?:"+["[^"+hA+"]",hU,hB].join("|")+")"+hj+hG+")*",hY="(?:"+["["+hk+"]",hU,hB].join("|")+")"+(hj+hG+hW),hZ=RegExp([hH+"?"+hN+"+"+hz+"(?="+[hI,hH,"$"].join("|")+")",h$+"+"+hV+"(?="+[hI,hH+hF,"$"].join("|")+")",hH+"?"+hF+"+"+hz,hH+"+"+hV,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])","\\d+",hY].join("|"),"g"),hX=RegExp("['’]","g");function hq(t){return function(e){var n,i,r,a,o;return function(t,e,n,i){for(var r=-1,a=null==t?0:t.length;++r<a;)n=e(n,t[r],r,t);return n}((i=((n=n6(n=e))&&n.replace(hT,hw).replace(hS,"")).replace(hX,""),(o=i=n6(i),hM.test(o))?i.match(hZ)||[]:i.match(hO)||[]),t,"")}}nf(function(t,e,n){var i=lN(e)||0;if("function"!=typeof t)throw TypeError("Expected a function");return setTimeout(function(){t.apply(void 0,n)},i)});hq(function(t,e,n){return t+(n?"-":"")+e.toLowerCase()});class hK{constructor(){this._partials=new Float64Array(32),this._n=0}add(t){let e=this._partials,n=0;for(let i=0;i<this._n&&i<32;i++){let r=e[i],a=t+r,o=Math.abs(t)<Math.abs(r)?t-(a-r):r-(a-t);o&&(e[n++]=o),t=a}return e[n]=t,this._n=n+1,this}valueOf(){let t=this._partials,e=this._n,n,i,r,a=0;if(e>0){for(a=t[--e];e>0&&(a=(n=a)+(i=t[--e]),!(r=i-(a-n))););e>0&&(r<0&&t[e-1]<0||r>0&&t[e-1]>0)&&(n=a+(i=2*r),i==n-a&&(a=n))}return a}}function hQ(t){return t}function hJ(t){return"translate("+t+",0)"}function h0(t){return"translate(0,"+t+")"}function h1(){return!this.__axis}function h2(t,e){var n=[],i=null,r=null,a=6,o=6,s=3,l="u">typeof window&&window.devicePixelRatio>1?0:.5,c=1===t||4===t?-1:1,u=4===t||2===t?"x":"y",h=1===t||3===t?hJ:h0;function d(d){var f=i??(e.ticks?e.ticks.apply(e,n):e.domain()),p=r??(e.tickFormat?e.tickFormat.apply(e,n):hQ),m=Math.max(a,0)+s,g=e.range(),v=+g[0]+l,y=+g[g.length-1]+l,_=(e.bandwidth?function(t,e){return e=Math.max(0,t.bandwidth()-2*e)/2,t.round()&&(e=Math.round(e)),n=>+t(n)+e}:function(t){return e=>+t(e)})(e.copy(),l),b=d.selection?d.selection():d,x=b.selectAll(".domain").data([null]),E=b.selectAll(".tick").data(f,e).order(),w=E.exit(),T=E.enter().append("g").attr("class","tick"),S=E.select("line"),O=E.select("text");x=x.merge(x.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),E=E.merge(T),S=S.merge(T.append("line").attr("stroke","currentColor").attr(u+"2",c*a)),O=O.merge(T.append("text").attr("fill","currentColor").attr(u,c*m).attr("dy",1===t?"0em":3===t?"0.71em":"0.32em")),d!==b&&(x=x.transition(d),E=E.transition(d),S=S.transition(d),O=O.transition(d),w=w.transition(d).attr("opacity",1e-6).attr("transform",function(t){return isFinite(t=_(t))?h(t+l):this.getAttribute("transform")}),T.attr("opacity",1e-6).attr("transform",function(t){var e=this.parentNode.__axis;return h((e&&isFinite(e=e(t))?e:_(t))+l)})),w.remove(),x.attr("d",4===t||2===t?o?"M"+c*o+","+v+"H"+l+"V"+y+"H"+c*o:"M"+l+","+v+"V"+y:o?"M"+v+","+c*o+"V"+l+"H"+y+"V"+c*o:"M"+v+","+l+"H"+y),E.attr("opacity",1).attr("transform",function(t){return h(_(t)+l)}),S.attr(u+"2",c*a),O.attr(u,c*m).text(p),b.filter(h1).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",2===t?"start":4===t?"end":"middle"),b.each(function(){this.__axis=_})}return d.scale=function(t){return arguments.length?(e=t,d):e},d.ticks=function(){return n=Array.from(arguments),d},d.tickArguments=function(t){return arguments.length?(n=null==t?[]:Array.from(t),d):n.slice()},d.tickValues=function(t){return arguments.length?(i=null==t?null:Array.from(t),d):i&&i.slice()},d.tickFormat=function(t){return arguments.length?(r=t,d):r},d.tickSize=function(t){return arguments.length?(a=o=+t,d):a},d.tickSizeInner=function(t){return arguments.length?(a=+t,d):a},d.tickSizeOuter=function(t){return arguments.length?(o=+t,d):o},d.tickPadding=function(t){return arguments.length?(s=+t,d):s},d.offset=function(t){return arguments.length?(l=+t,d):l},d}function h3(t){return h2(1,t)}function h5(t){return h2(2,t)}function h4(t){return h2(3,t)}function h8(t){return h2(4,t)}let h6={capture:!0,passive:!1};function h9(t){t.preventDefault(),t.stopImmediatePropagation()}let h7=t=>+t,dt=t=>()=>t;function de(t,{sourceEvent:e,target:n,selection:i,mode:r,dispatch:a}){Object.defineProperties(this,{type:{value:t,enumerable:!0,configurable:!0},sourceEvent:{value:e,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},selection:{value:i,enumerable:!0,configurable:!0},mode:{value:r,enumerable:!0,configurable:!0},_:{value:a}})}function dn(t){t.preventDefault(),t.stopImmediatePropagation()}var di={name:"drag"},dr={name:"space"},da={name:"handle"},ds={name:"center"};let{abs:dl,max:dc,min:du}=Math;function dh(t){return[+t[0],+t[1]]}function dd(t){return[dh(t[0]),dh(t[1])]}var df={name:"x",handles:["w","e"].map(db),input:function(t,e){return null==t?null:[[+t[0],e[0][1]],[+t[1],e[1][1]]]},output:function(t){return t&&[t[0][0],t[1][0]]}},dp={},dm={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},dg={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"},dv={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"},dy={overlay:1,selection:1,n:null,e:1,s:null,w:-1,nw:-1,ne:1,se:1,sw:-1},d_={overlay:1,selection:1,n:-1,e:null,s:1,w:null,nw:-1,ne:-1,se:1,sw:1};function db(t){return{type:t}}function dx(t){return!t.ctrlKey&&!t.button}function dE(){var t=this.ownerSVGElement||this;return t.hasAttribute("viewBox")?[[(t=t.viewBox.baseVal).x,t.y],[t.x+t.width,t.y+t.height]]:[[0,0],[t.width.baseVal.value,t.height.baseVal.value]]}function dw(){return navigator.maxTouchPoints||"ontouchstart"in this}function dT(t){for(;!t.__brush;)if(!(t=t.parentNode))return;return t.__brush}function dS(t){var e,n=dE,i=dx,r=dw,a=!0,o=r$("start","brush","end"),s=6;function l(e){var n=e.property("__brush",m).selectAll(".overlay").data([db("overlay")]);n.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",dm.overlay).merge(n).each(function(){var t=dT(this).extent;lH(this).attr("x",t[0][0]).attr("y",t[0][1]).attr("width",t[1][0]-t[0][0]).attr("height",t[1][1]-t[0][1])}),e.selectAll(".selection").data([db("selection")]).enter().append("rect").attr("class","selection").attr("cursor",dm.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var i=e.selectAll(".handle").data(t.handles,function(t){return t.type});i.exit().remove(),i.enter().append("rect").attr("class",function(t){return"handle handle--"+t.type}).attr("cursor",function(t){return dm[t.type]}),e.each(c).attr("fill","none").attr("pointer-events","all").on("mousedown.brush",d).filter(r).on("touchstart.brush",d).on("touchmove.brush",f).on("touchend.brush touchcancel.brush",p).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function c(){var t=lH(this),e=dT(this).selection;e?(t.selectAll(".selection").style("display",null).attr("x",e[0][0]).attr("y",e[0][1]).attr("width",e[1][0]-e[0][0]).attr("height",e[1][1]-e[0][1]),t.selectAll(".handle").style("display",null).attr("x",function(t){return"e"===t.type[t.type.length-1]?e[1][0]-s/2:e[0][0]-s/2}).attr("y",function(t){return"s"===t.type[0]?e[1][1]-s/2:e[0][1]-s/2}).attr("width",function(t){return"n"===t.type||"s"===t.type?e[1][0]-e[0][0]+s:s}).attr("height",function(t){return"e"===t.type||"w"===t.type?e[1][1]-e[0][1]+s:s})):t.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}function u(t,e,n){var i=t.__brush.emitter;return!i||n&&i.clean?new h(t,e,n):i}function h(t,e,n){this.that=t,this.args=e,this.state=t.__brush,this.active=0,this.clean=n}function d(n){if((!e||n.touches)&&i.apply(this,arguments)){var r,o,s,l,h,d,f,p,m,g,v,y=this,_=n.target.__data__.type,b=(a&&n.metaKey?_="overlay":_)==="selection"?di:a&&n.altKey?ds:da,x=t===dp?null:dy[_],E=t===df?null:d_[_],w=dT(y),T=w.extent,S=w.selection,O=T[0][0],M=T[0][1],A=T[1][0],k=T[1][1],C=0,D=0,L=x&&E&&a&&n.shiftKey,R=Array.from(n.touches||[n],t=>{let e=t.identifier;return(t=ax(t,y)).point0=t.slice(),t.identifier=e,t});oB(y);var I=u(y,arguments,!0).beforestart();if("overlay"===_){S&&(m=!0);let e=[R[0],R[1]||R[0]];w.selection=S=[[r=t===dp?O:du(e[0][0],e[1][0]),s=t===df?M:du(e[0][1],e[1][1])],[h=t===dp?A:dc(e[0][0],e[1][0]),f=t===df?k:dc(e[0][1],e[1][1])]],R.length>1&&z(n)}else r=S[0][0],s=S[0][1],h=S[1][0],f=S[1][1];o=r,l=s,d=h,p=f;var N=lH(y).attr("pointer-events","none"),P=N.selectAll(".overlay").attr("cursor",dm[_]);if(n.touches)I.moved=$,I.ended=V;else{var U,B,H,F=lH(n.view).on("mousemove.brush",$,!0).on("mouseup.brush",V,!0);a&&F.on("keydown.brush",function(t){switch(t.keyCode){case 16:L=x&&E;break;case 18:b===da&&(x&&(h=d-C*x,r=o+C*x),E&&(f=p-D*E,s=l+D*E),b=ds,z(t));break;case 32:(b===da||b===ds)&&(x<0?h=d-C:x>0&&(r=o-C),E<0?f=p-D:E>0&&(s=l-D),b=dr,P.attr("cursor",dm.selection),z(t));break;default:return}dn(t)},!0).on("keyup.brush",function(t){switch(t.keyCode){case 16:L&&(g=v=L=!1,z(t));break;case 18:b===ds&&(x<0?h=d:x>0&&(r=o),E<0?f=p:E>0&&(s=l),b=da,z(t));break;case 32:b===dr&&(t.altKey?(x&&(h=d-C*x,r=o+C*x),E&&(f=p-D*E,s=l+D*E),b=ds):(x<0?h=d:x>0&&(r=o),E<0?f=p:E>0&&(s=l),b=da),P.attr("cursor",dm[_]),z(t));break;default:return}dn(t)},!0),B=(U=n.view).document.documentElement,H=lH(U).on("dragstart.drag",h9,h6),"onselectstart"in B?H.on("selectstart.drag",h9,h6):(B.__noselect=B.style.MozUserSelect,B.style.MozUserSelect="none")}c.call(y),I.start(n,b.name)}function $(t){for(let e of t.changedTouches||[t])for(let t of R)t.identifier===e.identifier&&(t.cur=ax(e,y));if(L&&!g&&!v&&1===R.length){let t=R[0];dl(t.cur[0]-t[0])>dl(t.cur[1]-t[1])?v=!0:g=!0}for(let t of R)t.cur&&(t[0]=t.cur[0],t[1]=t.cur[1]);m=!0,dn(t),z(t)}function z(t){var e;let n=R[0],i=n.point0;switch(C=n[0]-i[0],D=n[1]-i[1],b){case dr:case di:x&&(C=dc(O-r,du(A-h,C)),o=r+C,d=h+C),E&&(D=dc(M-s,du(k-f,D)),l=s+D,p=f+D);break;case da:R[1]?(x&&(o=dc(O,du(A,R[0][0])),d=dc(O,du(A,R[1][0])),x=1),E&&(l=dc(M,du(k,R[0][1])),p=dc(M,du(k,R[1][1])),E=1)):(x<0?(C=dc(O-r,du(A-r,C)),o=r+C,d=h):x>0&&(C=dc(O-h,du(A-h,C)),o=r,d=h+C),E<0?(D=dc(M-s,du(k-s,D)),l=s+D,p=f):E>0&&(D=dc(M-f,du(k-f,D)),l=s,p=f+D));break;case ds:x&&(o=dc(O,du(A,r-C*x)),d=dc(O,du(A,h+C*x))),E&&(l=dc(M,du(k,s-D*E)),p=dc(M,du(k,f+D*E)))}d<o&&(x*=-1,e=r,r=h,h=e,e=o,o=d,d=e,_ in dg&&P.attr("cursor",dm[_=dg[_]])),p<l&&(E*=-1,e=s,s=f,f=e,e=l,l=p,p=e,_ in dv&&P.attr("cursor",dm[_=dv[_]])),w.selection&&(S=w.selection),g&&(o=S[0][0],d=S[1][0]),v&&(l=S[0][1],p=S[1][1]),(S[0][0]!==o||S[0][1]!==l||S[1][0]!==d||S[1][1]!==p)&&(w.selection=[[o,l],[d,p]],c.call(y),I.brush(t,b.name))}function V(t){var n,i,r,a,o;if(t.stopImmediatePropagation(),t.touches){if(t.touches.length)return;e&&clearTimeout(e),e=setTimeout(function(){e=null},500)}else n=t.view,i=m,r=n.document.documentElement,a=lH(n).on("dragstart.drag",null),i&&(a.on("click.drag",h9,h6),setTimeout(function(){a.on("click.drag",null)},0)),"onselectstart"in r?a.on("selectstart.drag",null):(r.style.MozUserSelect=r.__noselect,delete r.__noselect),F.on("keydown.brush keyup.brush mousemove.brush mouseup.brush",null);N.attr("pointer-events","all"),P.attr("cursor",dm.overlay),w.selection&&(S=w.selection),((o=S)[0][0]===o[1][0]||o[0][1]===o[1][1])&&(w.selection=null,c.call(y)),I.end(t,b.name)}}function f(t){u(this,arguments).moved(t)}function p(t){u(this,arguments).ended(t)}function m(){var e=this.__brush||{selection:null};return e.extent=dd(n.apply(this,arguments)),e.dim=t,e}return l.move=function(e,n,i){e.tween?e.on("start.brush",function(t){u(this,arguments).beforestart().start(t)}).on("interrupt.brush end.brush",function(t){u(this,arguments).end(t)}).tween("brush",function(){var e=this,i=e.__brush,r=u(e,arguments),a=i.selection,o=t.input("function"==typeof n?n.apply(this,arguments):n,i.extent),s=a6(a,o);function l(t){i.selection=1===t&&null===o?null:s(t),c.call(e),r.brush()}return null!==a&&null!==o?l:l(1)}):e.each(function(){var e=arguments,r=this.__brush,a=t.input("function"==typeof n?n.apply(this,e):n,r.extent),o=u(this,e).beforestart();oB(this),r.selection=null===a?null:a,c.call(this),o.start(i).brush(i).end(i)})},l.clear=function(t,e){l.move(t,null,e)},h.prototype={beforestart:function(){return 1==++this.active&&(this.state.emitter=this,this.starting=!0),this},start:function(t,e){return this.starting?(this.starting=!1,this.emit("start",t,e)):this.emit("brush",t),this},brush:function(t,e){return this.emit("brush",t,e),this},end:function(t,e){return 0==--this.active&&(delete this.state.emitter,this.emit("end",t,e)),this},emit:function(e,n,i){var r=lH(this.that).datum();o.call(e,this.that,new de(e,{sourceEvent:n,target:l,selection:t.output(this.state.selection),mode:i,dispatch:o}),r)}},l.extent=function(t){return arguments.length?(n="function"==typeof t?t:dt(dd(t)),l):n},l.filter=function(t){return arguments.length?(i="function"==typeof t?t:dt(!!t),l):i},l.touchable=function(t){return arguments.length?(r="function"==typeof t?t:dt(!!t),l):r},l.handleSize=function(t){return arguments.length?(s=+t,l):s},l.keyModifiers=function(t){return arguments.length?(a=!!t,l):a},l.on=function(){var t=o.on.apply(o,arguments);return t===o?l:t},l}let dO=Math.PI,dM=2*dO,dA=dM-1e-6;function dk(t){this._+=t[0];for(let e=1,n=t.length;e<n;++e)this._+=arguments[e]+t[e]}let dC=class{constructor(t){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=null==t?dk:function(t){let e=Math.floor(t);if(!(e>=0))throw Error(`invalid digits: ${t}`);if(e>15)return dk;let n=10**e;return function(t){this._+=t[0];for(let e=1,i=t.length;e<i;++e)this._+=Math.round(arguments[e]*n)/n+t[e]}}(t)}moveTo(t,e){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+e}`}closePath(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(t,e){this._append`L${this._x1=+t},${this._y1=+e}`}quadraticCurveTo(t,e,n,i){this._append`Q${+t},${+e},${this._x1=+n},${this._y1=+i}`}bezierCurveTo(t,e,n,i,r,a){this._append`C${+t},${+e},${+n},${+i},${this._x1=+r},${this._y1=+a}`}arcTo(t,e,n,i,r){if(t*=1,e*=1,n*=1,i*=1,(r*=1)<0)throw Error(`negative radius: ${r}`);let a=this._x1,o=this._y1,s=n-t,l=i-e,c=a-t,u=o-e,h=c*c+u*u;if(null===this._x1)this._append`M${this._x1=t},${this._y1=e}`;else if(h>1e-6)if(Math.abs(u*s-l*c)>1e-6&&r){let d=n-a,f=i-o,p=s*s+l*l,m=Math.sqrt(p),g=Math.sqrt(h),v=r*Math.tan((dO-Math.acos((p+h-(d*d+f*f))/(2*m*g)))/2),y=v/g,_=v/m;Math.abs(y-1)>1e-6&&this._append`L${t+y*c},${e+y*u}`,this._append`A${r},${r},0,0,${+(u*d>c*f)},${this._x1=t+_*s},${this._y1=e+_*l}`}else this._append`L${this._x1=t},${this._y1=e}`}arc(t,e,n,i,r,a){if(t*=1,e*=1,n*=1,a=!!a,n<0)throw Error(`negative radius: ${n}`);let o=n*Math.cos(i),s=n*Math.sin(i),l=t+o,c=e+s,u=1^a,h=a?i-r:r-i;null===this._x1?this._append`M${l},${c}`:(Math.abs(this._x1-l)>1e-6||Math.abs(this._y1-c)>1e-6)&&this._append`L${l},${c}`,n&&(h<0&&(h=h%dM+dM),h>dA?this._append`A${n},${n},0,1,${u},${t-o},${e-s}A${n},${n},0,1,${u},${this._x1=l},${this._y1=c}`:h>1e-6&&this._append`A${n},${n},0,${+(h>=dO)},${u},${this._x1=t+n*Math.cos(r)},${this._y1=e+n*Math.sin(r)}`)}rect(t,e,n,i){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+e}h${n*=1}v${+i}h${-n}Z`}toString(){return this._}};dC.prototype;var dD=Math.PI,dL=dD/2,dR=2*dD,dI=dD/180,dN=Math.abs,dP=Math.atan,dU=Math.cos,dB=Math.sin,dH=Math.sign||function(t){return t>0?1:t<0?-1:0},dF=Math.sqrt;function d$(){}function dz(t,e,n){var i,r=-1,a=t.length-n;for(e.lineStart();++r<a;)i=t[r],e.point(i[0],i[1],i[2]);e.lineEnd()}function dV(t,e){var n=-1,i=t.length;for(e.polygonStart();++n<i;)dz(t[n],e,1);e.polygonEnd()}function dG(t,e){return dN(t)>dD&&(t-=Math.round(t/dR)*dR),[t,e]}dG.invert=dG;var dj,dW,dY,dZ,dX,dq,dK,dQ,dJ,d0,d1,d2,d3,d5,d4=new hK,d8=new hK,d6={point:d$,lineStart:d$,lineEnd:d$,polygonStart:function(){d6.lineStart=d9,d6.lineEnd=fe},polygonEnd:function(){d6.lineStart=d6.lineEnd=d6.point=d$,d4.add(dN(d8)),d8=new hK},result:function(){var t=d4/2;return d4=new hK,t}};function d9(){d6.point=d7}function d7(t,e){d6.point=ft,d1=d3=t,d2=d5=e}function ft(t,e){d8.add(d5*t-d3*e),d3=t,d5=e}function fe(){ft(d1,d2)}var fn,fi,fr,fa,fo=0,fs=0,fl=0,fc=0,fu=0,fh=0,fd=0,ff=0,fp=0,fm={point:fg,lineStart:fv,lineEnd:fb,polygonStart:function(){fm.lineStart=fx,fm.lineEnd=fE},polygonEnd:function(){fm.point=fg,fm.lineStart=fv,fm.lineEnd=fb},result:function(){var t=fp?[fd/fp,ff/fp]:fh?[fc/fh,fu/fh]:fl?[fo/fl,fs/fl]:[NaN,NaN];return fo=fs=fl=fc=fu=fh=fd=ff=fp=0,t}};function fg(t,e){fo+=t,fs+=e,++fl}function fv(){fm.point=fy}function fy(t,e){fm.point=f_,fg(fr=t,fa=e)}function f_(t,e){var n=t-fr,i=e-fa,r=dF(n*n+i*i);fc+=r*(fr+t)/2,fu+=r*(fa+e)/2,fh+=r,fg(fr=t,fa=e)}function fb(){fm.point=fg}function fx(){fm.point=fw}function fE(){fT(fn,fi)}function fw(t,e){fm.point=fT,fg(fn=fr=t,fi=fa=e)}function fT(t,e){var n=t-fr,i=e-fa,r=dF(n*n+i*i);fc+=r*(fr+t)/2,fu+=r*(fa+e)/2,fh+=r,fd+=(r=fa*t-fr*e)*(fr+t),ff+=r*(fa+e),fp+=3*r,fg(fr=t,fa=e)}var fS,fO,fM,fA,fk,fC=new hK,fD={point:d$,lineStart:function(){fD.point=fL},lineEnd:function(){fS&&fR(fO,fM),fD.point=d$},polygonStart:function(){fS=!0},polygonEnd:function(){fS=null},result:function(){var t=+fC;return fC=new hK,t}};function fL(t,e){fD.point=fR,fO=fA=t,fM=fk=e}function fR(t,e){fA-=t,fk-=e,fC.add(dF(fA*fA+fk*fk)),fA=t,fk=e}function fI(){}function fN(t,e){return[t,e]}function fP(t){var e=0,n=t.children,i=n&&n.length;if(i)for(;--i>=0;)e+=n[i].value;else e=1;t.value=e}function fU(t,e){t instanceof Map?(t=[void 0,t],void 0===e&&(e=fH)):void 0===e&&(e=fB);for(var n,i,r,a,o,s=new fz(t),l=[s];n=l.pop();)if((r=e(n.data))&&(o=(r=Array.from(r)).length))for(n.children=r,a=o-1;a>=0;--a)l.push(i=r[a]=new fz(r[a])),i.parent=n,i.depth=n.depth+1;return s.eachBefore(f$)}function fB(t){return t.children}function fH(t){return Array.isArray(t)?t[1]:null}function fF(t){void 0!==t.data.value&&(t.value=t.data.value),t.data=t.data.data}function f$(t){var e=0;do t.height=e;while((t=t.parent)&&t.height<++e)}function fz(t){this.data=t,this.depth=this.height=0,this.parent=null}function fV(t){let e=3;return t.digits=function(n){if(!arguments.length)return e;if(null==n)e=null;else{let t=Math.floor(n);if(!(t>=0))throw RangeError(`invalid digits: ${n}`);e=t}return t},()=>new dC(e)}function fG(t){return t.innerRadius}function fj(t){return t.outerRadius}function fW(t){return t.startAngle}function fY(t){return t.endAngle}function fZ(t){return t&&t.padAngle}function fX(t,e,n,i,r,a,o){var s=t-n,l=e-i,c=(o?a:-a)/uO(s*s+l*l),u=c*l,h=-c*s,d=t+u,f=e+h,p=n+u,m=i+h,g=(d+p)/2,v=(f+m)/2,y=p-d,_=m-f,b=y*y+_*_,x=r-a,E=d*m-p*f,w=(_<0?-1:1)*uO(uw(0,x*x*b-E*E)),T=(E*_-y*w)/b,S=(-E*y-_*w)/b,O=(E*_+y*w)/b,M=(-E*y+_*w)/b,A=T-g,k=S-v,C=O-g,D=M-v;return A*A+k*k>C*C+D*D&&(T=O,S=M),{cx:T,cy:S,x01:-u,y01:-h,x11:T*(r/x-1),y11:S*(r/x-1)}}function fq(t){return t[0]}function fK(t){return t[1]}function fQ(t,e){var n=lf(!0),i=null,r=uL,a=null,o=fV(s);function s(s){var l,c,u,h=(s=lp(s)).length,d=!1;for(null==i&&(a=r(u=o())),l=0;l<=h;++l)!(l<h&&n(c=s[l],l,s))===d&&((d=!d)?a.lineStart():a.lineEnd()),d&&a.point(+t(c,l,s),+e(c,l,s));if(u)return a=null,u+""||null}return t="function"==typeof t?t:void 0===t?fq:lf(t),e="function"==typeof e?e:void 0===e?fK:lf(e),s.x=function(e){return arguments.length?(t="function"==typeof e?e:lf(+e),s):t},s.y=function(t){return arguments.length?(e="function"==typeof t?t:lf(+t),s):e},s.defined=function(t){return arguments.length?(n="function"==typeof t?t:lf(!!t),s):n},s.curve=function(t){return arguments.length?(r=t,null!=i&&(a=r(i)),s):r},s.context=function(t){return arguments.length?(null==t?i=a=null:a=r(i=t),s):i},s}fI.prototype={constructor:fI,point:function(t,e){this.stream.point(t,e)},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()}},dU(30*dI),fN.invert=fN,dF(3),fz.prototype=fU.prototype={constructor:fz,count:function(){return this.eachAfter(fP)},each:function(t,e){let n=-1;for(let i of this)t.call(e,i,++n,this);return this},eachAfter:function(t,e){for(var n,i,r,a=this,o=[a],s=[],l=-1;a=o.pop();)if(s.push(a),n=a.children)for(i=0,r=n.length;i<r;++i)o.push(n[i]);for(;a=s.pop();)t.call(e,a,++l,this);return this},eachBefore:function(t,e){for(var n,i,r=this,a=[r],o=-1;r=a.pop();)if(t.call(e,r,++o,this),n=r.children)for(i=n.length-1;i>=0;--i)a.push(n[i]);return this},find:function(t,e){let n=-1;for(let i of this)if(t.call(e,i,++n,this))return i},sum:function(t){return this.eachAfter(function(e){for(var n=+t(e.data)||0,i=e.children,r=i&&i.length;--r>=0;)n+=i[r].value;e.value=n})},sort:function(t){return this.eachBefore(function(e){e.children&&e.children.sort(t)})},path:function(t){for(var e=this,n=function(t,e){if(t===e)return t;var n=t.ancestors(),i=e.ancestors(),r=null;for(t=n.pop(),e=i.pop();t===e;)r=t,t=n.pop(),e=i.pop();return r}(e,t),i=[e];e!==n;)i.push(e=e.parent);for(var r=i.length;t!==n;)i.splice(r,0,t),t=t.parent;return i},ancestors:function(){for(var t=this,e=[t];t=t.parent;)e.push(t);return e},descendants:function(){return Array.from(this)},leaves:function(){var t=[];return this.eachBefore(function(e){e.children||t.push(e)}),t},links:function(){var t=this,e=[];return t.each(function(n){n!==t&&e.push({source:n.parent,target:n})}),e},copy:function(){return fU(this).eachBefore(fF)},[Symbol.iterator]:function*(){var t,e,n,i,r=this,a=[r];do for(t=a.reverse(),a=[];r=t.pop();)if(yield r,e=r.children)for(n=0,i=e.length;n<i;++n)a.push(e[n]);while(a.length)}},Object.create(fz.prototype),!function t(e){function n(t,n,i,r,a){!function(t,e,n,i,r,a){for(var o,s,l,c,u,h,d,f,p,m,g,v=[],y=e.children,_=0,b=0,x=y.length,E=e.value;_<x;){l=r-n,c=a-i;do u=y[b++].value;while(!u&&b<x);for(h=d=u,p=Math.max(d/(g=u*u*(m=Math.max(c/l,l/c)/(E*t))),g/h);b<x;++b){if(u+=s=y[b].value,s<h&&(h=s),s>d&&(d=s),(f=Math.max(d/(g=u*u*m),g/h))>p){u-=s;break}p=f}v.push(o={value:u,dice:l<c,children:y.slice(_,b)}),o.dice?function(t,e,n,i,r){for(var a,o=t.children,s=-1,l=o.length,c=t.value&&(i-e)/t.value;++s<l;)(a=o[s]).y0=n,a.y1=r,a.x0=e,a.x1=e+=a.value*c}(o,n,i,r,E?i+=c*u/E:a):function(t,e,n,i,r){for(var a,o=t.children,s=-1,l=o.length,c=t.value&&(r-n)/t.value;++s<l;)(a=o[s]).x0=e,a.x1=i,a.y0=n,a.y1=n+=a.value*c}(o,n,i,E?n+=l*u/E:r,a),E-=u,_=b}}(e,t,n,i,r,a)}return n.ratio=function(e){return t((e*=1)>1?e:1)},n}((1+Math.sqrt(5))/2);function fJ(t){this._curve=t}tc=uL,fJ.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(t,e){this._curve.point(e*Math.sin(t),-(e*Math.cos(t)))}};let f0=class{constructor(t,e,n){if(this.type="",this.renderType=tY.HTML,this.id="",this.parent=void 0,this.configs={},this.model=t,this.services=e,n&&(this.configs=n,this.configs.id)){let t=sB(this.model.getOptions(),"style","prefix");this.id=`${t}--${this.configs.id}`}this.parent||this.setParent(lH(this.services.domUtils.getMainContainer()))}init(){}render(t=!0){console.error("Error: Component did not provide the required render function.")}destroy(){}setModel(t){this.model=t}setServices(t){this.services=t}setParent(t){let e=this.parent;if(this.parent=t,!(e&&e.node()===t.node())&&this.type){let t=sB(this.model.getOptions(),"style","prefix");this.parent?.classed(`cds--${t}--${this.type}`,!0),e&&e.classed(`cds--${t}--${this.type}`,!1)}}getParent(){return this.parent}getComponentContainer(t={ariaLabel:null,isPresentational:!1,withinChartClip:!1}){if(this.type){let e=sB(this.model.getOptions(),"style","prefix"),n=this.id?`#${this.id}`:"",i=hx.appendOrSelect(this.parent,`${this.renderType===tY.SVG?"svg":"div"}${n}.cds--${e}--${this.type}`);if(t.ariaLabel&&i.attr("aria-label",t.ariaLabel),t.isPresentational&&i.attr("role","presentation"),t.withinChartClip){let t=this.model.get("chartClipId");if(t){let e=lH(`#${t}`).select("rect");if(0!==e.size()){let n=parseFloat(e.attr("height")),r=parseFloat(e.attr("width"));!isNaN(n)&&!isNaN(r)&&n>0&&r>0&&i.attr("clip-path",`url(#${t})`)}}}return i.attr("width","100%").attr("height","100%")}return this.parent}getOptions(){return this.configs.options?r_({},this.model.getOptions(),this.configs.options):this.model.getOptions()}},{entries:f1,setPrototypeOf:f2,isFrozen:f3,getPrototypeOf:f5,getOwnPropertyDescriptor:f4}=Object,{freeze:f8,seal:f6,create:f9}=Object,{apply:f7,construct:pt}="u">typeof Reflect&&Reflect;f8||(f8=function(t){return t}),f6||(f6=function(t){return t}),f7||(f7=function(t,e,n){return t.apply(e,n)}),pt||(pt=function(t,e){return new t(...e)});let pe=pm(Array.prototype.forEach),pn=pm(Array.prototype.lastIndexOf),pi=pm(Array.prototype.pop),pr=pm(Array.prototype.push),pa=pm(Array.prototype.splice),po=pm(String.prototype.toLowerCase),ps=pm(String.prototype.toString),pl=pm(String.prototype.match),pc=pm(String.prototype.replace),pu=pm(String.prototype.indexOf),ph=pm(String.prototype.trim),pd=pm(Object.prototype.hasOwnProperty),pf=pm(RegExp.prototype.test),pp=(tu=TypeError,function(){for(var t=arguments.length,e=Array(t),n=0;n<t;n++)e[n]=arguments[n];return pt(tu,e)});function pm(t){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var n=arguments.length,i=Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];return f7(t,e,i)}}function pg(t,e){let n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:po;f2&&f2(t,null);let i=e.length;for(;i--;){let r=e[i];if("string"==typeof r){let t=n(r);t!==r&&(f3(e)||(e[i]=t),r=t)}t[r]=!0}return t}function pv(t){let e=f9(null);for(let[n,i]of f1(t))pd(t,n)&&(Array.isArray(i)?e[n]=function(t){for(let e=0;e<t.length;e++)pd(t,e)||(t[e]=null);return t}(i):i&&"object"==typeof i&&i.constructor===Object?e[n]=pv(i):e[n]=i);return e}function py(t,e){for(;null!==t;){let n=f4(t,e);if(n){if(n.get)return pm(n.get);if("function"==typeof n.value)return pm(n.value)}t=f5(t)}return function(){return null}}let p_=f8(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),pb=f8(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),px=f8(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),pE=f8(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),pw=f8(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),pT=f8(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),pS=f8(["#text"]),pO=f8(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","face","for","headers","height","hidden","high","href","hreflang","id","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns","slot"]),pM=f8(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),pA=f8(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),pk=f8(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),pC=f6(/\{\{[\w\W]*|[\w\W]*\}\}/gm),pD=f6(/<%[\w\W]*|[\w\W]*%>/gm),pL=f6(/\$\{[\w\W]*/gm),pR=f6(/^data-[\-\w.\u00B7-\uFFFF]+$/),pI=f6(/^aria-[\-\w]+$/),pN=f6(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),pP=f6(/^(?:\w+script|data):/i),pU=f6(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),pB=f6(/^html$/i);var pH=Object.freeze({__proto__:null,ARIA_ATTR:pI,ATTR_WHITESPACE:pU,CUSTOM_ELEMENT:f6(/^[a-z][.\w]*(-[.\w]+)+$/i),DATA_ATTR:pR,DOCTYPE_NAME:pB,ERB_EXPR:pD,IS_ALLOWED_URI:pN,IS_SCRIPT_OR_DATA:pP,MUSTACHE_EXPR:pC,TMPLIT_EXPR:pL});let pF={element:1,text:3,progressingInstruction:7,comment:8,document:9},p$=function(t,e){if("object"!=typeof t||"function"!=typeof t.createPolicy)return null;let n=null,i="data-tt-policy-suffix";e&&e.hasAttribute(i)&&(n=e.getAttribute(i));let r="dompurify"+(n?"#"+n:"");try{return t.createPolicy(r,{createHTML:t=>t,createScriptURL:t=>t})}catch{return console.warn("TrustedTypes policy "+r+" could not be created."),null}},pz=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};var pV=function t(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:typeof window>"u"?null:window,n=e=>t(e);if(n.version="3.2.6",n.removed=[],!e||!e.document||e.document.nodeType!==pF.document||!e.Element)return n.isSupported=!1,n;let{document:i}=e,r=i,a=r.currentScript,{DocumentFragment:o,HTMLTemplateElement:s,Node:l,Element:c,NodeFilter:u,NamedNodeMap:h=e.NamedNodeMap||e.MozNamedAttrMap,HTMLFormElement:d,DOMParser:f,trustedTypes:p}=e,m=c.prototype,g=py(m,"cloneNode"),v=py(m,"remove"),y=py(m,"nextSibling"),_=py(m,"childNodes"),b=py(m,"parentNode");if("function"==typeof s){let t=i.createElement("template");t.content&&t.content.ownerDocument&&(i=t.content.ownerDocument)}let x,E="",{implementation:w,createNodeIterator:T,createDocumentFragment:S,getElementsByTagName:O}=i,{importNode:M}=r,A=pz();n.isSupported="function"==typeof f1&&"function"==typeof b&&w&&void 0!==w.createHTMLDocument;let{MUSTACHE_EXPR:k,ERB_EXPR:C,TMPLIT_EXPR:D,DATA_ATTR:L,ARIA_ATTR:R,IS_SCRIPT_OR_DATA:I,ATTR_WHITESPACE:N,CUSTOM_ELEMENT:P}=pH,{IS_ALLOWED_URI:U}=pH,B=null,H=pg({},[...p_,...pb,...px,...pw,...pS]),F=null,$=pg({},[...pO,...pM,...pA,...pk]),z=Object.seal(f9(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),V=null,G=null,j=!0,W=!0,Y=!1,Z=!0,X=!1,q=!0,K=!1,Q=!1,J=!1,tt=!1,te=!1,tn=!1,ti=!0,tr=!1,ta=!0,to=!1,ts={},tl=null,tc=pg({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),tu=null,th=pg({},["audio","video","img","source","image","track"]),td=null,tf=pg({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),tp="http://www.w3.org/1998/Math/MathML",tm="http://www.w3.org/2000/svg",tg="http://www.w3.org/1999/xhtml",tv=tg,ty=!1,t_=null,tb=pg({},[tp,tm,tg],ps),tx=pg({},["mi","mo","mn","ms","mtext"]),tE=pg({},["annotation-xml"]),tw=pg({},["title","style","font","a","script"]),tT=null,tS=["application/xhtml+xml","text/html"],tO=null,tM=null,tA=i.createElement("form"),tk=function(t){return t instanceof RegExp||t instanceof Function},tC=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(!(tM&&tM===t)){if(t&&"object"==typeof t||(t={}),t=pv(t),tO="application/xhtml+xml"===(tT=-1===tS.indexOf(t.PARSER_MEDIA_TYPE)?"text/html":t.PARSER_MEDIA_TYPE)?ps:po,B=pd(t,"ALLOWED_TAGS")?pg({},t.ALLOWED_TAGS,tO):H,F=pd(t,"ALLOWED_ATTR")?pg({},t.ALLOWED_ATTR,tO):$,t_=pd(t,"ALLOWED_NAMESPACES")?pg({},t.ALLOWED_NAMESPACES,ps):tb,td=pd(t,"ADD_URI_SAFE_ATTR")?pg(pv(tf),t.ADD_URI_SAFE_ATTR,tO):tf,tu=pd(t,"ADD_DATA_URI_TAGS")?pg(pv(th),t.ADD_DATA_URI_TAGS,tO):th,tl=pd(t,"FORBID_CONTENTS")?pg({},t.FORBID_CONTENTS,tO):tc,V=pd(t,"FORBID_TAGS")?pg({},t.FORBID_TAGS,tO):pv({}),G=pd(t,"FORBID_ATTR")?pg({},t.FORBID_ATTR,tO):pv({}),ts=!!pd(t,"USE_PROFILES")&&t.USE_PROFILES,j=!1!==t.ALLOW_ARIA_ATTR,W=!1!==t.ALLOW_DATA_ATTR,Y=t.ALLOW_UNKNOWN_PROTOCOLS||!1,Z=!1!==t.ALLOW_SELF_CLOSE_IN_ATTR,X=t.SAFE_FOR_TEMPLATES||!1,q=!1!==t.SAFE_FOR_XML,K=t.WHOLE_DOCUMENT||!1,tt=t.RETURN_DOM||!1,te=t.RETURN_DOM_FRAGMENT||!1,tn=t.RETURN_TRUSTED_TYPE||!1,J=t.FORCE_BODY||!1,ti=!1!==t.SANITIZE_DOM,tr=t.SANITIZE_NAMED_PROPS||!1,ta=!1!==t.KEEP_CONTENT,to=t.IN_PLACE||!1,U=t.ALLOWED_URI_REGEXP||pN,tv=t.NAMESPACE||tg,tx=t.MATHML_TEXT_INTEGRATION_POINTS||tx,tE=t.HTML_INTEGRATION_POINTS||tE,z=t.CUSTOM_ELEMENT_HANDLING||{},t.CUSTOM_ELEMENT_HANDLING&&tk(t.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(z.tagNameCheck=t.CUSTOM_ELEMENT_HANDLING.tagNameCheck),t.CUSTOM_ELEMENT_HANDLING&&tk(t.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(z.attributeNameCheck=t.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),t.CUSTOM_ELEMENT_HANDLING&&"boolean"==typeof t.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements&&(z.allowCustomizedBuiltInElements=t.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),X&&(W=!1),te&&(tt=!0),ts&&(B=pg({},pS),F=[],!0===ts.html&&(pg(B,p_),pg(F,pO)),!0===ts.svg&&(pg(B,pb),pg(F,pM),pg(F,pk)),!0===ts.svgFilters&&(pg(B,px),pg(F,pM),pg(F,pk)),!0===ts.mathMl&&(pg(B,pw),pg(F,pA),pg(F,pk))),t.ADD_TAGS&&(B===H&&(B=pv(B)),pg(B,t.ADD_TAGS,tO)),t.ADD_ATTR&&(F===$&&(F=pv(F)),pg(F,t.ADD_ATTR,tO)),t.ADD_URI_SAFE_ATTR&&pg(td,t.ADD_URI_SAFE_ATTR,tO),t.FORBID_CONTENTS&&(tl===tc&&(tl=pv(tl)),pg(tl,t.FORBID_CONTENTS,tO)),ta&&(B["#text"]=!0),K&&pg(B,["html","head","body"]),B.table&&(pg(B,["tbody"]),delete V.tbody),t.TRUSTED_TYPES_POLICY){if("function"!=typeof t.TRUSTED_TYPES_POLICY.createHTML)throw pp('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if("function"!=typeof t.TRUSTED_TYPES_POLICY.createScriptURL)throw pp('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');E=(x=t.TRUSTED_TYPES_POLICY).createHTML("")}else void 0===x&&(x=p$(p,a)),null!==x&&"string"==typeof E&&(E=x.createHTML(""));f8&&f8(t),tM=t}},tD=pg({},[...pb,...px,...pE]),tL=pg({},[...pw,...pT]),tR=function(t){let e=b(t);e&&e.tagName||(e={namespaceURI:tv,tagName:"template"});let n=po(t.tagName),i=po(e.tagName);return!!t_[t.namespaceURI]&&(t.namespaceURI===tm?e.namespaceURI===tg?"svg"===n:e.namespaceURI===tp?"svg"===n&&("annotation-xml"===i||tx[i]):!!tD[n]:t.namespaceURI===tp?e.namespaceURI===tg?"math"===n:e.namespaceURI===tm?"math"===n&&tE[i]:!!tL[n]:t.namespaceURI===tg?(e.namespaceURI!==tm||!!tE[i])&&(e.namespaceURI!==tp||!!tx[i])&&!tL[n]&&(tw[n]||!tD[n]):!!("application/xhtml+xml"===tT&&t_[t.namespaceURI]))},tI=function(t){pr(n.removed,{element:t});try{b(t).removeChild(t)}catch{v(t)}},tN=function(t,e){try{pr(n.removed,{attribute:e.getAttributeNode(t),from:e})}catch{pr(n.removed,{attribute:null,from:e})}if(e.removeAttribute(t),"is"===t)if(tt||te)try{tI(e)}catch{}else try{e.setAttribute(t,"")}catch{}},tP=function(t){let e=null,n=null;if(J)t="<remove></remove>"+t;else{let e=pl(t,/^[\r\n\t ]+/);n=e&&e[0]}"application/xhtml+xml"===tT&&tv===tg&&(t='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+t+"</body></html>");let r=x?x.createHTML(t):t;if(tv===tg)try{e=new f().parseFromString(r,tT)}catch{}if(!e||!e.documentElement){e=w.createDocument(tv,"template",null);try{e.documentElement.innerHTML=ty?E:r}catch{}}let a=e.body||e.documentElement;return t&&n&&a.insertBefore(i.createTextNode(n),a.childNodes[0]||null),tv===tg?O.call(e,K?"html":"body")[0]:K?e.documentElement:a},tU=function(t){return T.call(t.ownerDocument||t,t,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT|u.SHOW_PROCESSING_INSTRUCTION|u.SHOW_CDATA_SECTION,null)},tB=function(t){return t instanceof d&&("string"!=typeof t.nodeName||"string"!=typeof t.textContent||"function"!=typeof t.removeChild||!(t.attributes instanceof h)||"function"!=typeof t.removeAttribute||"function"!=typeof t.setAttribute||"string"!=typeof t.namespaceURI||"function"!=typeof t.insertBefore||"function"!=typeof t.hasChildNodes)},tH=function(t){return"function"==typeof l&&t instanceof l};function tF(t,e,i){pe(t,t=>{t.call(n,e,i,tM)})}let t$=function(t){let e=null;if(tF(A.beforeSanitizeElements,t,null),tB(t))return tI(t),!0;let i=tO(t.nodeName);if(tF(A.uponSanitizeElement,t,{tagName:i,allowedTags:B}),q&&t.hasChildNodes()&&!tH(t.firstElementChild)&&pf(/<[/\w!]/g,t.innerHTML)&&pf(/<[/\w!]/g,t.textContent)||t.nodeType===pF.progressingInstruction||q&&t.nodeType===pF.comment&&pf(/<[/\w]/g,t.data))return tI(t),!0;if(!B[i]||V[i]){if(!V[i]&&tV(i)&&(z.tagNameCheck instanceof RegExp&&pf(z.tagNameCheck,i)||z.tagNameCheck instanceof Function&&z.tagNameCheck(i)))return!1;if(ta&&!tl[i]){let e=b(t)||t.parentNode,n=_(t)||t.childNodes;if(n&&e){let i=n.length;for(let r=i-1;r>=0;--r){let i=g(n[r],!0);i.__removalCount=(t.__removalCount||0)+1,e.insertBefore(i,y(t))}}}return tI(t),!0}return t instanceof c&&!tR(t)||("noscript"===i||"noembed"===i||"noframes"===i)&&pf(/<\/no(script|embed|frames)/i,t.innerHTML)?(tI(t),!0):(X&&t.nodeType===pF.text&&(e=t.textContent,pe([k,C,D],t=>{e=pc(e,t," ")}),t.textContent!==e&&(pr(n.removed,{element:t.cloneNode()}),t.textContent=e)),tF(A.afterSanitizeElements,t,null),!1)},tz=function(t,e,n){if(ti&&("id"===e||"name"===e)&&(n in i||n in tA))return!1;if(!(W&&!G[e]&&pf(L,e))&&!(j&&pf(R,e))){if(!F[e]||G[e]){if(!(tV(t)&&(z.tagNameCheck instanceof RegExp&&pf(z.tagNameCheck,t)||z.tagNameCheck instanceof Function&&z.tagNameCheck(t))&&(z.attributeNameCheck instanceof RegExp&&pf(z.attributeNameCheck,e)||z.attributeNameCheck instanceof Function&&z.attributeNameCheck(e))||"is"===e&&z.allowCustomizedBuiltInElements&&(z.tagNameCheck instanceof RegExp&&pf(z.tagNameCheck,n)||z.tagNameCheck instanceof Function&&z.tagNameCheck(n))))return!1}else if(!td[e]&&!pf(U,pc(n,N,""))&&!(("src"===e||"xlink:href"===e||"href"===e)&&"script"!==t&&0===pu(n,"data:")&&tu[t])&&!(Y&&!pf(I,pc(n,N,"")))&&n)return!1}return!0},tV=function(t){return"annotation-xml"!==t&&pl(t,P)},tG=function(t){tF(A.beforeSanitizeAttributes,t,null);let{attributes:e}=t;if(!e||tB(t))return;let i={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:F,forceKeepAttr:void 0},r=e.length;for(;r--;){let{name:a,namespaceURI:o,value:s}=e[r],l=tO(a),c="value"===a?s:ph(s);if(i.attrName=l,i.attrValue=c,i.keepAttr=!0,i.forceKeepAttr=void 0,tF(A.uponSanitizeAttribute,t,i),c=i.attrValue,tr&&("id"===l||"name"===l)&&(tN(a,t),c="user-content-"+c),q&&pf(/((--!?|])>)|<\/(style|title)/i,c)){tN(a,t);continue}if(i.forceKeepAttr)continue;if(!i.keepAttr||!Z&&pf(/\/>/i,c)){tN(a,t);continue}X&&pe([k,C,D],t=>{c=pc(c,t," ")});let u=tO(t.nodeName);if(!tz(u,l,c)){tN(a,t);continue}if(x&&"object"==typeof p&&"function"==typeof p.getAttributeType&&!o)switch(p.getAttributeType(u,l)){case"TrustedHTML":c=x.createHTML(c);break;case"TrustedScriptURL":c=x.createScriptURL(c)}if(c!==s)try{o?t.setAttributeNS(o,a,c):t.setAttribute(a,c),tB(t)?tI(t):pi(n.removed)}catch{tN(a,t)}}tF(A.afterSanitizeAttributes,t,null)},tj=function t(e){let n=null,i=tU(e);for(tF(A.beforeSanitizeShadowDOM,e,null);n=i.nextNode();)tF(A.uponSanitizeShadowNode,n,null),t$(n),tG(n),n.content instanceof o&&t(n.content);tF(A.afterSanitizeShadowDOM,e,null)};return n.sanitize=function(t){let e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},i=null,a=null,s=null,c=null;if((ty=!t)&&(t="\x3c!--\x3e"),"string"!=typeof t&&!tH(t))if("function"==typeof t.toString){if("string"!=typeof(t=t.toString()))throw pp("dirty is not a string, aborting")}else throw pp("toString is not a function");if(!n.isSupported)return t;if(Q||tC(e),n.removed=[],"string"==typeof t&&(to=!1),to){if(t.nodeName){let e=tO(t.nodeName);if(!B[e]||V[e])throw pp("root node is forbidden and cannot be sanitized in-place")}}else if(t instanceof l)(a=(i=tP("\x3c!----\x3e")).ownerDocument.importNode(t,!0)).nodeType===pF.element&&"BODY"===a.nodeName||"HTML"===a.nodeName?i=a:i.appendChild(a);else{if(!tt&&!X&&!K&&-1===t.indexOf("<"))return x&&tn?x.createHTML(t):t;if(!(i=tP(t)))return tt?null:tn?E:""}i&&J&&tI(i.firstChild);let u=tU(to?t:i);for(;s=u.nextNode();)t$(s),tG(s),s.content instanceof o&&tj(s.content);if(to)return t;if(tt){if(te)for(c=S.call(i.ownerDocument);i.firstChild;)c.appendChild(i.firstChild);else c=i;return(F.shadowroot||F.shadowrootmode)&&(c=M.call(r,c,!0)),c}let h=K?i.outerHTML:i.innerHTML;return K&&B["!doctype"]&&i.ownerDocument&&i.ownerDocument.doctype&&i.ownerDocument.doctype.name&&pf(pB,i.ownerDocument.doctype.name)&&(h="<!DOCTYPE "+i.ownerDocument.doctype.name+`>
4
+ `+h),X&&pe([k,C,D],t=>{h=pc(h,t," ")}),x&&tn?x.createHTML(h):h},n.setConfig=function(){let t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};tC(t),Q=!0},n.clearConfig=function(){tM=null,Q=!1},n.isValidAttribute=function(t,e,n){return tM||tC({}),tz(tO(t),tO(e),n)},n.addHook=function(t,e){"function"==typeof e&&pr(A[t],e)},n.removeHook=function(t,e){if(void 0!==e){let n=pn(A[t],e);return -1===n?void 0:pa(A[t],n,1)[0]}return pi(A[t])},n.removeHooks=function(t){A[t]=[]},n.removeAllHooks=function(){A=pz()},n}();let pG=t=>pV.sanitize(t,{USE_PROFILES:{html:!0,svg:!0,svgFilters:!0}}),pj=t=>pV.sanitize(t,{NAMESPACE:"http://www.w3.org/2000/svg",USE_PROFILES:{html:!0,svg:!0,svgFilters:!0}}),pW=t=>pV.sanitize(t,{ALLOWED_TAGS:[]}),pY=class t extends f0{constructor(){super(...arguments),this.type="toolbar",this.renderType=tY.HTML}init(){let t=()=>this.updateOverflowMenu(!1);this.services.events.addEventListener(tW.Toolbar.SHOW_OVERFLOW_MENU,()=>{this.renderOverflowMenu(),document.body.addEventListener("click",t)}),this.services.events.addEventListener(tW.Toolbar.HIDE_OVERFLOW_MENU,()=>{document.body.removeEventListener("click",t)})}render(t=!0){let e=this.getComponentContainer({ariaLabel:"toolbar"}).attr("role","group");if(sB(this.getOptions(),"data","loading"))e.html(""),this.overflowMenu=null;else{this.overflowMenu||(this.overflowMenu=e.append("div").attr("class","cds--overflow-menu-options cds--overflow-menu--flip cds--overflow-menu-options cds--overflow-menu--flip").attr("tabindex",-1).html("<ul role='menu'></ul>"));let{buttonList:t,overflowMenuItemList:n}=this.getControlConfigs();n&&t.push(this.getOverflowButtonConfig());let i=e.selectAll("div.toolbar-control").data(t,t=>t.id);i.exit().remove();let r=i.enter().append("div").attr("class","toolbar-control cds--overflow-menu cds--overflow-menu"),a=this;r.merge(i).classed("disabled",t=>t.shouldBeDisabled()).attr("role","button").attr("aria-disabled",t=>t.shouldBeDisabled()).attr("aria-label",t=>t.title).html(t=>`
5
+ <button
6
+ type="button"
7
+ class="cds--overflow-menu__trigger cds--overflow-menu__trigger"
8
+ aria-haspopup="true" aria-expanded="false" id="${this.services.domUtils.generateElementIDString(`control-${pW(t.id)}`)}" aria-label="${pW(t.title)}">
9
+ <svg focusable="false" preserveAspectRatio="xMidYMid meet" xmlns="http://www.w3.org/2000/svg" class="cds--overflow-menu__icon cds--overflow-menu__icon" viewBox="0 0 32 32" aria-hidden="true">
10
+ ${pj(t.iconSVG.content)}
11
+ </svg>
12
+ </button>`).each(function(t,e){lH(this).select("svg").style("pointer-events","none").style("will-change","transform").style("width",void 0!==t.iconSVG.width?t.iconSVG.width:"20px").style("height",void 0!==t.iconSVG.height?t.iconSVG.height:"20px"),lH(this).select("button").on("mouseover focus",function(e){let n=lH(this);n.classed("hovered",!0),a.services.events.dispatchEvent(tW.Toolbar.SHOW_TOOLTIP,{event:e,hoveredElement:n,content:t.title,noWrap:!0,placements:["top","bottom"]})}).on("mouseout blur",function(){a.services.events.dispatchEvent(tW.Toolbar.HIDE_TOOLTIP)}).on("click",e=>{t.shouldBeDisabled()||a.triggerFunctionAndEvent(t,e,this)}).on("keydown",n=>{n.key&&"Enter"===n.key||" "===n.key?(n.preventDefault(),a.triggerFunctionAndEvent(t,n,this)):n.key&&"ArrowLeft"===n.key?a.focusOnPreviousEnabledToolbarItem(e):n.key&&"ArrowRight"===n.key&&a.focusOnNextEnabledToolbarItem(e)})}),this.overflowButton=this.getComponentContainer().select(`button.cds--overflow-menu__trigger#${this.services.domUtils.generateElementIDString("control-toolbar-overflow-menu")}`)}}renderOverflowMenu(){let{overflowMenuItemList:t}=this.getControlConfigs(),e=this.overflowMenu.select("ul").selectAll("li.cds--overflow-menu-options__option").data(t,t=>sB(t,"id"));e.exit().remove();let n=e.enter().append("li").attr("id",t=>this.services.domUtils.generateElementIDString(`control-${t.id}`)).attr("class","cds--overflow-menu-options__option cds--overflow-menu-options__option").attr("role","menuitem").attr("tabindex",1);n.append("button").attr("type","button").attr("class","cds--overflow-menu-options__btn cds--overflow-menu-options__btn"),n.merge(e).classed("cds--overflow-menu-options__option--disabled",t=>t.shouldBeDisabled()).classed("cds--overflow-menu-options__option--disabled",t=>t.shouldBeDisabled()).attr("aria-disabled",t=>t.shouldBeDisabled()).selectAll("button").text(t=>t.title)}isOverflowMenuOpen(){return this.overflowMenu.classed("is-open")}updateOverflowMenu(t){this.overflowMenu&&(this.overflowMenu.classed("is-open",t),this.overflowButton&&(this.overflowButton.attr("aria-expanded",t),lH(this.overflowButton.node().parentNode).classed("cds--overflow-menu--open",t).classed("cds--overflow-menu--open",t)),t?this.services.events.dispatchEvent(tW.Toolbar.SHOW_OVERFLOW_MENU):this.services.events.dispatchEvent(tW.Toolbar.HIDE_OVERFLOW_MENU))}focusOnPreviousEnabledToolbarItem(t){let e=this.getToolbarButtonItems(),n=e.length;for(let i=t-1;i>=0;i--)if(!e[i].shouldBeDisabled()){n=i;break}if(n<e.length){let t=lH(`button#${this.services.domUtils.generateElementIDString(`control-${e[n].id}`)}`).node();"focus"in t&&t.focus()}}focusOnNextEnabledToolbarItem(t){let e=this.getToolbarButtonItems(),n=-1;for(let i=t+1;i<e.length;i++)if(!e[i].shouldBeDisabled()){n=i;break}if(n>-1){let t=lH(`button#${this.services.domUtils.generateElementIDString(`control-${e[n].id}`)}`).node();"focus"in t&&t.focus()}}focusOnPreviousEnabledMenuItem(t){let e=this.getOverflowMenuItems(),n=e.length;for(let i=t-1;i>=0;i--)if(!e[i].shouldBeDisabled()){n=i;break}if(n<e.length){let t=lH(`#${this.services.domUtils.generateElementIDString(`control-${e[n].id}`)} button`).node();"focus"in t&&t.focus()}}focusOnNextEnabledMenuItem(t){let e=this.getOverflowMenuItems(),n=-1;for(let i=t+1;i<e.length;i++)if(!e[i].shouldBeDisabled()){n=i;break}if(n>-1){let t=lH(`#${this.services.domUtils.generateElementIDString(`control-${e[n].id}`)} button`).node();"focus"in t&&t.focus()}}toggleOverflowMenu(t){if(this.isOverflowMenuOpen())this.updateOverflowMenu(!1);else{this.updateOverflowMenu(!0);let e=this;this.getOverflowMenuItems().forEach((n,i)=>{let r=lH(`#${this.services.domUtils.generateElementIDString(`control-${n.id}`)}`);null!==r&&(r.on("click",()=>{e.triggerFunctionAndEvent(n,t,r.node()),e.updateOverflowMenu(!1)}),r.on("keydown",a=>{a&&"Enter"===a.key?e.triggerFunctionAndEvent(n,t,r.node()):a&&"ArrowUp"===a.key?e.focusOnPreviousEnabledMenuItem(i):a&&"ArrowDown"===a.key?e.focusOnNextEnabledMenuItem(i):a&&"Escape"===a.key&&e.updateOverflowMenu(!1),a.preventDefault()}))}),e.focusOnNextEnabledMenuItem(-1)}t&&t.stopImmediatePropagation()}triggerFunctionAndEvent(t,e,n){"function"==typeof t.shouldBeDisabled&&t.shouldBeDisabled()||("function"==typeof t.clickFunction&&t.clickFunction(e),this.services.events.dispatchEvent(tW.Toolbar.BUTTON_CLICK,{control:t,event:e,element:n}))}getControlConfigs(){let e=sB(this.getOptions(),"toolbar","numberOfIcons")-1,n=sB(this.getOptions(),"toolbar","controls"),i=[],r=[],a=[];return n.forEach(n=>{let o=null;if(n.type===es.CUSTOM)null===sB(n,"id")&&(n.id=`toolbar-button-${t.buttonID++}`),null===sB(n,"shouldBeDisabled")&&(n.shouldBeDisabled=()=>!1),o=n;else{let t=this.services.domUtils.isFullScreenMode();n.type===es.MAKE_FULLSCREEN&&t?n.type=es.EXIT_FULLSCREEN:n.type!==es.EXIT_FULLSCREEN||t||(n.type=es.MAKE_FULLSCREEN),o=this.getControlConfigByType(n.type)}o&&(o.text=n.text?n.text:n.type,-1!==o.id.indexOf("toolbar-export")?i.push(o):r.length<e?null===sB(o,"iconSVG","content")?a.push(o):r.push(o):a.push(o))}),a.push(...i),a.length?{buttonList:r,overflowMenuItemList:a}:{buttonList:r}}getToolbarButtonItems(){let{buttonList:t,overflowMenuItemList:e}=this.getControlConfigs();return e&&t.push(this.getOverflowButtonConfig()),t||[]}getOverflowMenuItems(){let{overflowMenuItemList:t}=this.getControlConfigs();return t||[]}getOverflowButtonConfig(){let{moreOptions:t}=sB(this.model.getOptions(),"locale","translations","toolbar");return{id:"toolbar-overflow-menu",title:t,shouldBeDisabled:()=>!1,iconSVG:{content:`<circle cx="16" cy="8" r="2"></circle>
13
+ <circle cx="16" cy="16" r="2"></circle>
14
+ <circle cx="16" cy="24" r="2"></circle>`},clickFunction:t=>this.toggleOverflowMenu(t)}}getControlConfigByType(t){let e,n=this.services.zoom&&this.services.zoom.isZoomBarEnabled()&&!this.services.zoom.isEmptyState(),i=this.model.getDisplayData(),{exportAsCSV:r,exportAsJPG:a,exportAsPNG:o,zoomIn:s,zoomOut:l,resetZoom:c,makeFullScreen:u,exitFullScreen:h,showAsTable:d}=sB(this.model.getOptions(),"locale","translations","toolbar");switch(t){case es.ZOOM_IN:n&&(e={id:"toolbar-zoomIn",title:s,shouldBeDisabled:()=>this.services.zoom.isMinZoomDomain(),iconSVG:{content:this.getControlIconByType(t)},clickFunction:()=>this.services.zoom.zoomIn()});break;case es.ZOOM_OUT:n&&(e={id:"toolbar-zoomOut",title:l,shouldBeDisabled:()=>this.services.zoom.isMaxZoomDomain(),iconSVG:{content:this.getControlIconByType(t)},clickFunction:()=>this.services.zoom.zoomOut()});break;case es.RESET_ZOOM:n&&(e={id:"toolbar-resetZoom",title:c,shouldBeDisabled:()=>this.services.zoom.isMaxZoomDomain(),iconSVG:{content:this.getControlIconByType(t)},clickFunction:()=>this.services.zoom.resetZoomDomain()});break;case es.MAKE_FULLSCREEN:e={id:"toolbar-makefullscreen",iconSVG:{content:this.getControlIconByType(t),width:"15px",height:"15px"},title:u,shouldBeDisabled:()=>!1,clickFunction:()=>{this.services.domUtils.toggleFullscreen()}};break;case es.EXIT_FULLSCREEN:e={id:"toolbar-exitfullscreen",iconSVG:{content:this.getControlIconByType(t),width:"15px",height:"15px"},title:h,shouldBeDisabled:()=>!1,clickFunction:()=>{this.services.domUtils.toggleFullscreen()}};break;case es.SHOW_AS_DATATABLE:e={id:"toolbar-showasdatatable",iconSVG:{content:this.getControlIconByType(t)},title:d,shouldBeDisabled:()=>0===i.length,clickFunction:()=>this.services.events.dispatchEvent(tW.Modal.SHOW)};break;case es.EXPORT_CSV:e={id:"toolbar-export-CSV",title:r,shouldBeDisabled:()=>!1,iconSVG:{content:this.getControlIconByType(t)},clickFunction:()=>this.model.exportToCSV()};break;case es.EXPORT_PNG:e={id:"toolbar-export-PNG",title:o,shouldBeDisabled:()=>!1,iconSVG:{content:this.getControlIconByType(t)},clickFunction:()=>this.services.domUtils.exportToPNG()};break;case es.EXPORT_JPG:e={id:"toolbar-export-JPG",title:a,shouldBeDisabled:()=>!1,iconSVG:{content:this.getControlIconByType(t)},clickFunction:()=>this.services.domUtils.exportToJPG()};break;default:throw Error("Not supported toolbar control type: "+t)}return e}getControlIconByType(t){switch(t){case es.ZOOM_IN:return`<polygon points="19 13 15 13 15 9 13 9 13 13 9 13 9 15 13 15 13 19 15 19 15 15 19 15 19 13"/>
15
+ <path d="M22.45,21A10.87,10.87,0,0,0,25,14,11,11,0,1,0,14,25a10.87,10.87,0,0,0,7-2.55L28.59,30,30,28.59ZM14,23a9,9,0,1,1,9-9A9,9,0,0,1,14,23Z"/>`;case es.ZOOM_OUT:return`<rect x="9" y="13" width="10" height="2"/>
16
+ <path d="M22.45,21A10.87,10.87,0,0,0,25,14,11,11,0,1,0,14,25a10.87,10.87,0,0,0,7-2.55L28.59,30,30,28.59ZM14,23a9,9,0,1,1,9-9A9,9,0,0,1,14,23Z"/>`;case es.RESET_ZOOM:return'<path d="M22.4478,21A10.855,10.855,0,0,0,25,14,10.99,10.99,0,0,0,6,6.4658V2H4v8h8V8H7.332a8.9768,8.9768,0,1,1-2.1,8H3.1912A11.0118,11.0118,0,0,0,14,25a10.855,10.855,0,0,0,7-2.5522L28.5859,30,30,28.5859Z"/>';case es.MAKE_FULLSCREEN:return'<polygon points="21 2 21 4 26.59 4 17 13.58 18.41 15 28 5.41 28 11 30 11 30 2 21 2"/><polygon points="15 18.42 13.59 17 4 26.59 4 21 2 21 2 30 11 30 11 28 5.41 28 15 18.42"/>';case es.EXIT_FULLSCREEN:return'<polygon points="4 18 4 20 10.586 20 2 28.582 3.414 30 12 21.414 12 28 14 28 14 18 4 18"/><polygon points="30 3.416 28.592 2 20 10.586 20 4 18 4 18 14 28 14 28 12 21.414 12 30 3.416"/>';case es.SHOW_AS_DATATABLE:return'<rect x="4" y="6" width="18" height="2"/><rect x="4" y="12" width="18" height="2"/><rect x="4" y="18" width="18" height="2"/><rect x="4" y="24" width="18" height="2"/><rect x="26" y="6" width="2" height="2"/><rect x="26" y="12" width="2" height="2"/><rect x="26" y="18" width="2" height="2"/><rect x="26" y="24" width="2" height="2"/>';case es.EXPORT_CSV:case es.EXPORT_JPG:case es.EXPORT_PNG:return'<path d="M22.4478,21A10.855,10.855,0,0,0,25,14,10.99,10.99,0,0,0,6,6.4658V2H4v8h8V8H7.332a8.9768,8.9768,0,1,1-2.1,8H3.1912A11.0118,11.0118,0,0,0,14,25a10.855,10.855,0,0,0,7-2.5522L28.5859,30,30,28.5859Z"/>';default:throw Error("Not supported toolbar control type: "+t)}}};pY.buttonID=0;let pZ=class t extends f0{constructor(e,n,i,r){super(e,n,r),this.type="layout",this.configs=r,this.children=i,this._instanceID=t.instanceID++,this.init()}init(){this.children.forEach(t=>{t.components.forEach(t=>{t.init()})})}getPreferedAndFixedSizeSum(){let t=this.parent,e=0;return t.selectAll(`div.layout-child-${this._instanceID}`).filter(t=>{let e=sB(t,"growth");return e===t8.PREFERRED||e===t8.FIXED}).each(function(t){e+=t.size}),e}getNumOfStretchChildren(){return this.parent.selectAll(`div.layout-child-${this._instanceID}`).filter(t=>sB(t,"growth")===t8.STRETCH).size()}render(t=!0){let e=this.model.getOptions(),n=this.parent,{width:i,height:r}=hx.getHTMLElementSize(n.node()),a=this.configs.direction===t4.ROW||this.configs.direction===t4.ROW_REVERSE,o=sB(this.model.getOptions(),"style","prefix"),s=n.classed(`cds--${o}--layout-row`,this.configs.direction===t4.ROW).classed(`cds--${o}--layout-row-reverse`,this.configs.direction===t4.ROW_REVERSE).classed(`cds--${o}--layout-column`,this.configs.direction===t4.COLUMN).classed(`cds--${o}--layout-column-reverse`,this.configs.direction===t4.COLUMN_REVERSE).classed(`cds--${o}--layout-alignitems-center`,this.configs.alignItems===t6.CENTER).selectAll(`div.layout-child-${this._instanceID}`).data(this.children,t=>t.id);s.enter().append("div").merge(n.selectAll(`div.layout-child-${this._instanceID}`)).attr("class",t=>`layout-child layout-child-${this._instanceID} ${t.id}`).each(function(n){n.components.forEach(i=>{let r=lH(this),a=sB(n,"renderType")===tY.SVG;i.setParent(a?hx.appendOrSelect(r,"svg.layout-svg-wrapper").attr("width","100%").attr("height","100%"):r),a&&!r.select("svg.layout-svg-wrapper").attr("aria-label")&&r.select("svg.layout-svg-wrapper").attr("aria-label",e?.accessibility?.svgAriaLabel||e?.title);let o=sB(n,"growth");(o===t8.PREFERRED||o===t8.FIXED)&&i.render(t)})}),n.selectAll(`div.layout-child-${this._instanceID}`).style("height",null).style("width",null).each(function(t){let e=sB(t,"growth"),n=sB(t,"renderType")===tY.SVG?hx.getSVGElementSize(lH(this).select("svg.layout-svg-wrapper"),{useBBox:!0}):hx.getHTMLElementSize(this);e===t8.PREFERRED&&(t.size=(a?n.width:n.height)/(a?i:r)*100)}),s.exit().remove(),this.children.filter(t=>sB(t,"growth")===t8.STRETCH).forEach(t=>{t.size=(100-this.getPreferedAndFixedSizeSum())/this.getNumOfStretchChildren()});let l=n.selectAll(`div.layout-child-${this._instanceID}`).data(this.children,t=>t.id);a?l.style("width",t=>`${t.size/100*i}px`).style("height","100%"):l.style("height",t=>`${t.size/100*r}px`).style("width","100%"),l.each(function(e){e.components.forEach(n=>{sB(e,"growth")===t8.STRETCH&&n.render(t)})})}setModel(t){super.setModel(t),this.children.forEach(e=>{e.components.forEach(e=>e.setModel(t))})}setServices(t){super.setServices(t),this.children.forEach(e=>{e.components.forEach(e=>e.setServices(t))})}destroy(){this.children.forEach(t=>{t.components.forEach(t=>t.destroy())})}};pZ.instanceID=Math.floor(0x174876e7ff*Math.random());class pX extends f0{constructor(){super(...arguments),this.type="spacer"}render(t=!1){this.getComponentContainer({isPresentational:!0}).style("width",`${this.configs.size||sf.default.size}px`).style("height",`${this.configs.size||sf.default.size}px`).attr("opacity",0)}}class pq extends f0{constructor(t,e,n){super(t,e,n),this.type="modal",this.isEventListenerAdded=!1,this.handleShowModal=()=>{let t=this.services.domUtils.getChartID();this.modal.attr("data-modal",!0).attr("class","cds--modal").attr("role","dialog").attr("aria-modal",!0).attr("aria-labelledby",`${t}__modal-title`).attr("aria-describedby",`${t}__modal-description`).attr("tabindex",-1).style("opacity",1).style("visibility","visible"),this.modal.html(this.getModalHTML()),this.modal.select("div.cds--modal-footer button.cds--btn").on("click",()=>this.model.exportToCSV()),this.modal.on("click",this.handleHideModal),this.modal.select(".cds--modal-container").on("click",t=>{t.stopPropagation()}),this.modal.select(".cds--modal-close").on("click",this.handleHideModal),"u">typeof window&&window.addEventListener("keydown",this.handleEscapeKey)},this.handleEscapeKey=t=>{"Escape"===t.key&&this.handleHideModal()},this.handleHideModal=()=>{this.modal.attr("role",null).attr("aria-modal",null).attr("aria-labelledby",null).attr("aria-describedby",null).attr("tabindex",null).style("opacity",0).style("visibility","hidden"),this.modal.on("click",null),this.modal.select(".cds--modal-container").on("click",null),this.modal.select(".cds--modal-close").on("click",null),"u">typeof window&&window.removeEventListener("keydown",this.handleEscapeKey)},this.init()}addEventListeners(){this.services.events.addEventListener(tW.Modal.SHOW,this.handleShowModal)}removeEventListeners(){this.services.events.removeEventListener(tW.Modal.SHOW,this.handleShowModal)}getModalHTML(){let t=this.services.domUtils.getChartID(),e=this.model.getOptions(),{title:n,downloadAsCSV:i}=sB(e,"locale","translations","tabularRep"),r=sB(e,"style","prefix"),a=this.model.getTabularDataArray();return`
17
+ <div class="cds--modal-container">
18
+ <div class="cds--modal-header">
19
+
20
+ <p class="cds--modal-header__label cds--type-delta" id="${t}__modal-title">${n}</p>
21
+
22
+ <p class="cds--modal-header__heading cds--type-beta" id="${t}__modal-description">${pW(e.title)}</p>
23
+
24
+ <button class="cds--modal-close" type="button" data-modal-close aria-label="close modal" data-modal-primary-focus>
25
+ <svg focusable="false" preserveAspectRatio="xMidYMid meet" xmlns="http://www.w3.org/2000/svg" fill="currentColor" aria-label="Close" width="20" height="20" viewBox="0 0 32 32" role="img" class="cds--modal-close__icon">
26
+ <path d="M24 9.4L22.6 8 16 14.6 9.4 8 8 9.4 14.6 16 8 22.6 9.4 24 16 17.4 22.6 24 24 22.6 17.4 16 24 9.4z"></path>
27
+ </svg>
28
+ </button>
29
+ </div>
30
+
31
+ <div class="cds--modal-content">
32
+ <table class="cds--data-table cds--data-table--no-border">
33
+ <thead>
34
+ <tr>
35
+ ${ie(a,0).map(t=>`<th scope="col">
36
+ <div class="cds--table-header-label">${pW(t)}</div>
37
+ </th>`).join("")}
38
+ </tr>
39
+ </thead>
40
+
41
+ <tbody>${a.slice(1).map(t=>`
42
+ <tr>
43
+ ${t.map(t=>`<td>${pW(t)}</td>`).join("")}
44
+ </tr>`).join("")}
45
+ </tbody>
46
+ </table>
47
+ </div>
48
+
49
+ <div class="cds--modal-footer">
50
+ <div class="cds--${r}-modal-footer-spacer"></div>
51
+ <button class="cds--btn cds--btn--primary" type="button" data-modal-primary-focus>${i}</button>
52
+ </div>
53
+ </div>`}render(t=!1){let e=this.model.getOptions();if(!this.isEventListenerAdded){let t=lH(this.services.domUtils.getHolder()),n=sB(e,"style","prefix");this.modal=hx.appendOrSelect(t,`div.cds--${n}--modal`),this.addEventListeners(),this.isEventListenerAdded=!0}}destroy(){this.removeEventListeners(),this.isEventListenerAdded=!1}}class pK extends f0{constructor(){super(...arguments),this.type="title",this.renderType=tY.HTML}render(t=!1){let e=this.getComponentContainer(),n=sB(this.getOptions(),"title"),i=e.selectAll("p.title").data([n]);if(i.enter().append("p").classed("title",!0).attr("role","heading").attr("aria-level",2).merge(i).html(t=>pW(t)),i.node()&&i.node().offsetWidth<i.node().scrollWidth){let t=this;i.on("mouseover",function(e){t.services.events.dispatchEvent(tW.Tooltip.SHOW,{event:e,hoveredElement:i,content:i.text()})}).on("mousemove",function(e){t.services.events.dispatchEvent(tW.Tooltip.MOVE,{event:e})}).on("mouseout",function(){t.services.events.dispatchEvent(tW.Tooltip.HIDE)})}i.exit().remove()}truncateTitle(t,e){if(e<=0)return;let n=t.text();if(t.node().getComputedTextLength()>e){t.append("tspan").text("...");let i=hx.appendOrSelect(t,"tspan").node().getComputedTextLength(),r=t.text(),a=this.getSubstringIndex(t.node(),0,r.length-1,e-i);t.html(r.substring(0,a-1)).append("tspan").text("...");let o=this;t.on("mouseover",function(e){o.services.events.dispatchEvent(tW.Tooltip.SHOW,{event:e,hoveredElement:t,content:n})}).on("mousemove",function(t){o.services.events.dispatchEvent(tW.Tooltip.MOVE,{event:t})}).on("mouseout",function(){o.services.events.dispatchEvent(tW.Tooltip.HIDE)})}}getMaxTitleWidth(){return hx.getSVGElementSize(this.parent.node(),{useAttrs:!0}).width}getSubstringIndex(t,e,n,i){let r=Math.floor((n+e)/2);return t.getSubStringLength(0,r)>i?this.getSubstringIndex(t,e,r,i):t.getSubStringLength(0,r)<i?t.getSubStringLength(0,r+1)>i?r:this.getSubstringIndex(t,r,n,i):r}}class pQ extends f0{constructor(){super(...arguments),this.type="legend",this.renderType=tY.HTML}render(t=!1){let e=this.getOptions(),n=sB(e,"legend"),i=sB(n,"alignment"),r=sB(e,"legend","orientation"),a=this.model.getDataGroups(),{DISABLED:o}=su.items.status,s=a.some(t=>t.status===o),l=sB(n,"order"),c=this.getComponentContainer().classed("center-aligned",i===t2.CENTER).classed("right-aligned",i===t2.RIGHT).classed(r||"horizontal",!0).classed("has-deactivated-items",s).attr("role",lh.GROUP).attr("aria-label","Data groups").attr("data-name","legend-items");l&&(a=this.sortDataGroups(a,l));let u=c.selectAll("div.legend-item").data(a,t=>t.name),h=u.enter().append("div").attr("class","legend-item");h.merge(c.selectAll("div.legend-item")).classed("active",function(t){return t.status===su.items.status.ACTIVE});let d=sB(this.getOptions(),"legend","clickable");c.classed("clickable",d&&a.length>1);let f=su.checkbox.radius,p=h.append("div").classed("checkbox",!0),m=p.merge(u.select("div.checkbox")).attr("role",lh.CHECKBOX).attr("tabindex",d?0:-1).attr("aria-labelledby",(t,e)=>this.services.domUtils.generateElementIDString(`legend-datagroup-${e}-title`)).attr("aria-checked",({status:t})=>t===su.items.status.ACTIVE).attr("width",2*f).attr("height",2*f).attr("class",t=>this.model.getColorClassName({classNameTypes:[tX.BACKGROUND],dataGroupName:t.name,originalClassName:"checkbox"})).style("background",t=>t.status===su.items.status.ACTIVE?this.model.getFillColor(t.name)||this.model.getStrokeColor(t.name):null).classed("active",function(t){return t.status===su.items.status.ACTIVE});p.append("svg").attr("focusable",!1).attr("preserveAspectRatio","xMidYMid meet").attr("xmlns","http://www.w3.org/2000/svg").attr("width","11").attr("height","11").attr("viewBox","0 0 31 28").attr("aria-hidden",!0).style("will-change","transform").append("path").attr("d","M13 21.2l-7.1-7.1-1.4 1.4 7.1 7.1L13 24 27.1 9.9l-1.4-1.5z"),h.append("p").merge(u.select("p"));let g=sB(e,"legend","additionalItems");if(g&&a.length){let t=this,e=c.selectAll("div.additional-item").data(g);e.exit().remove();let n=e.enter().append("div").merge(e).classed("legend-item",!0).classed("additional",!0).attr("role","img").attr("aria-labelledby",(t,e)=>this.services.domUtils.generateElementIDString(`legend-datagroup-${m.size()+e}-title`));n.selectAll("*").remove();let i,r=1;n.append("svg").classed("icon",!0).each(function(e){let n=lH(this);i&&i==e.type?r++:(i=e.type,r=1),t.addAdditionalItem(n,e,r)}),n.append("p").merge(n.select("p")),this.truncateLegendText()}u.exit().on("mouseover",null).on("click",null).on("mouseout",null).remove(),d&&h.size()>1&&this.addEventListeners()}sortDataGroups(t,e){if(t.sort((t,n)=>e.indexOf(t.name)-e.indexOf(n.name)),e.length<t.length){let n=t.length-e.length;return t.slice(n).concat(t.slice(0,n))}return t}addAdditionalItem(t,e,n){let{width:i,height:r}=su.area;if(e.type===ec.RADIUS?t.style("width",`${r}px`).style("height",`${r}px`):t.style("width",`${i}px`).style("height",`${r}px`),e.type===ec.RADIUS){let{iconData:n,fill:i,stroke:r}=su.radius;t.attr("fill","none").selectAll("circle").data(n).enter().append("circle").classed("radius",!0).attr("role",lh.IMG).attr("aria-label","radius").attr("cx",t=>t.cx).attr("cy",t=>t.cy).attr("r",t=>t.r).style("fill",e.fill?e.fill:i).style("stroke",e.stroke?e.stroke:r)}else if(e.type===ec.LINE){let r=su.line;t.select("line.line").empty()&&t.append("line").classed(`line-${n}`,!0).attr("role",lh.IMG).attr("aria-label","line").attr("x1",0).attr("y1",r.yPosition).attr("x2",i).attr("y2",r.yPosition).style("stroke",e.stroke?e.stroke:r.stroke).style("stroke-width",r.strokeWidth)}else if(e.type===ec.AREA)t.select("rect.area").empty()&&t.append("rect").classed(`area-${n}`,!0).attr("role",lh.IMG).attr("aria-label","area").attr("width",i).attr("height",r).style("fill",n>3&&!e.fill?su.area.fill:e.fill).style("stroke",e.stroke);else if(e.type===ec.SIZE){let{iconData:n,fill:i,stroke:r}=su.size;t.attr("fill","none").attr("role",lh.IMG).attr("aria-label","size").selectAll("rect").data(n).enter().append("rect").classed("size",!0).attr("width",t=>t.width).attr("height",t=>t.height).attr("y",()=>0).style("fill",e.fill?e.fill:i).style("stroke",e.stroke?e.stroke:r).style("stroke-width",1)}else if(e.type===ec.QUARTILE){let{iconData:e}=su.quartile;t.selectAll("rect").attr("role",lh.IMG).attr("aria-label","quartile").data(e).enter().append("rect").attr("class",(t,e)=>`quartile-${0===e?"wrapper":"line"}`).attr("x",t=>t.x).attr("y",t=>t.y).attr("width",t=>t.width).attr("height",t=>t.height)}else if(e.type===ec.ZOOM){let{iconData:n,color:i}=sB(su,"zoom"),r=t.attr("role",lh.IMG).attr("aria-label","zoom").selectAll("g.icon").data(n).enter();r.append("g").attr("x",t=>t.x).attr("y",t=>t.y).attr("width",t=>t.width).attr("height",t=>t.height).append("polygon").attr("points","7.7 4.82 5.78 4.82 5.78 2.89 4.82 2.89 4.82 4.82 2.89 4.82 2.89 5.78 4.82 5.78 4.82 7.7 5.78 7.7 5.78 5.78 7.7 5.78 7.7 4.82").attr("fill",()=>e.color?e.color:i),r.append("path").attr("d","M9.36,8.67A5.22,5.22,0,0,0,10.59,5.3,5.3,5.3,0,1,0,5.3,10.59,5.22,5.22,0,0,0,8.67,9.36L12.32,13l.68-.68Zm-4.06,1A4.34,4.34,0,1,1,9.63,5.3,4.33,4.33,0,0,1,5.3,9.63Z").attr("fill",()=>e.color?e.color:i)}}truncateLegendText(){let t=this.getComponentContainer(),e=sB(this.getOptions(),"legend","truncation"),n=sB(e,"type"),i=sB(e,"threshold"),r=sB(e,"numCharacter"),a=t.selectAll("div.legend-item p");a.attr("id",function(){return(this.parentNode.querySelector("div.checkbox")||this.parentNode).getAttribute("aria-labelledby")}),n!==tQ.NONE?a.html(function(t){let e=pW(t.name);return e.length>i&&e.length!==r?sP(e,n,r):e}):a.html(t=>pW(t.name))}addEventListeners(){let t=this,e=this.getComponentContainer(),n=sB(this.getOptions(),"legend"),i=sB(n,"truncation");e.selectAll("div.legend-item").on("mouseover",function(e){t.services.events.dispatchEvent(tW.Legend.ITEM_HOVER,{hoveredElement:lH(this)});let n=lH(this);n.select("div.checkbox").classed("hovered",!0);let r=n.datum();r.name.length>i.threshold&&i.numCharacter<r.name.length&&i.type!==tQ.NONE&&t.services.events.dispatchEvent(tW.Tooltip.SHOW,{event:e,hoveredElement:n,content:r.name})}).on("mousemove",function(e){lH(this).datum().name.length>i.threshold&&i.type!==tQ.NONE&&t.services.events.dispatchEvent(tW.Tooltip.MOVE,{event:e})}).on("click",function(){t.services.events.dispatchEvent(tW.Legend.ITEM_CLICK,{clickedElement:lH(this)});let e=lH(this).datum();t.model.toggleDataLabel(e.name)}).on("mouseout",function(){let e=lH(this);e.select("div.checkbox").classed("hovered",!1),e.datum().name.length>i.threshold&&i.type!==tQ.NONE&&t.services.events.dispatchEvent(tW.Tooltip.HIDE),t.services.events.dispatchEvent(tW.Legend.ITEM_MOUSEOUT,{hoveredElement:e})}),e.selectAll("div.legend-item div.checkbox").on("keyup",function(e){e.key&&"Tab"===e.key&&t.services.events.dispatchEvent(tW.Legend.ITEM_HOVER,{hoveredElement:lH(this)})}),e.selectAll("div.legend-item div.checkbox").on("keydown",function(e,n){e.key&&" "===e.key?(e.preventDefault(),t.model.toggleDataLabel(n.name)):e.key&&"Tab"===e.key&&t.services.events.dispatchEvent(tW.Legend.ITEM_MOUSEOUT,{hoveredElement:lH(this)})}),e.selectAll("g.additional-item").on("mouseover",function(e){let n=lH(this),r=n.datum();r.name.length>i.threshold&&t.services.events.dispatchEvent(tW.Tooltip.SHOW,{event:e,hoveredElement:n,content:r.name})})}}class pJ extends f0{constructor(t,e,n){super(t,e,n),this.type="chart-clip",this.renderType=tY.SVG,this.chartClipId="chart-clip-id-"+Math.floor(0x174876e7ff*Math.random()),this.init()}init(){this.model.set({chartClipId:this.chartClipId},{skipUpdate:!0})}render(t=!0){this.createClipPath()}createClipPath(){let t=this.parent,{cartesianScales:e}=this.services;if(!e)throw Error("Service cartesianScales was undefined");let n=e.getMainXScale(),i=e.getMainYScale(),[r,a]=n.range(),[o,s]=i.range();if(!t)throw Error("svg is undefined");this.chartClipPath=hx.appendOrSelect(t,`clipPath.${this.type}`).attr("id",this.chartClipId);let l=hx.appendOrSelect(this.chartClipPath,`rect.${this.type}`);a-r>0&&l.attr("x",r).attr("y",s).attr("width",a-r).attr("height",o-s),this.chartClipPath.merge(l).lower()}}class p0 extends pJ{constructor(){super(...arguments),this.type="canvas-chart-clip",this.chartClipId="canvas-chart-clip-id-"+Math.floor(0x174876e7ff*Math.random())}createClipPath(){let t=this.parent,{width:e,height:n}=hx.getSVGElementSize(this.parent,{useAttrs:!0});this.chartClipPath=hx.appendOrSelect(t,`clipPath.${this.type}`).attr("id",this.chartClipId);let i=hx.appendOrSelect(this.chartClipPath,`rect.${this.type}`);i.attr("x",0).attr("y",0).attr("width",e).attr("height",n),this.chartClipPath.merge(i).lower()}}(th=tp||(tp={})).LEFT="left",th.RIGHT="right",th.TOP="top",th.BOTTOM="bottom";var p1=((tf={})[tp.LEFT]=function(t,e,n){return{top:t.top-Math.round(e.offsetHeight/2)+Math.round(n.height/2),left:Math.round(t.left-e.offsetWidth)}},tf[tp.RIGHT]=function(t,e,n){return{top:t.top-Math.round(e.offsetHeight/2)+Math.round(n.height/2),left:Math.round(t.left+n.width)}},tf[tp.TOP]=function(t,e,n){return{top:Math.round(t.top-e.offsetHeight),left:t.left-Math.round(e.offsetWidth/2)+Math.round(n.width/2)}},tf[tp.BOTTOM]=function(t,e,n){return{top:Math.round(t.top+n.height),left:t.left-Math.round(e.offsetWidth/2)+Math.round(n.width/2)}},tf),p2="u">typeof window?window:{innerHeight:0,innerWidth:0},p3=function(){function t(t){void 0===t&&(t={}),this.positions=p1,this.positions=Object.assign({},p1,t)}return t.prototype.getRelativeOffset=function(t){for(var e={left:t.offsetLeft,top:t.offsetTop};t.offsetParent&&"static"===getComputedStyle(t.offsetParent).position;)e.left+=t.offsetLeft,e.top+=t.offsetTop,t=t.offsetParent;return e},t.prototype.getAbsoluteOffset=function(t){for(var e=t,n={top:0,left:0};e.offsetParent;){var i=getComputedStyle(e.offsetParent);"static"===i.position&&i.marginLeft&&i.marginTop&&(parseInt(i.marginTop,10)&&(n.top+=parseInt(i.marginTop,10)),parseInt(i.marginLeft,10)&&(n.left+=parseInt(i.marginLeft,10))),e=e.offsetParent}var r=t.getBoundingClientRect(),a=document.body.getBoundingClientRect();return{top:r.top-a.top+n.top,left:r.left-a.left+n.left}},t.prototype.findRelative=function(t,e,n){var i=this.getRelativeOffset(t),r=t.getBoundingClientRect();return this.calculatePosition(i,r,e,n)},t.prototype.findAbsolute=function(t,e,n){var i=this.getAbsoluteOffset(t),r=t.getBoundingClientRect();return this.calculatePosition(i,r,e,n)},t.prototype.findPosition=function(t,e,n,i){void 0===i&&(i=this.getAbsoluteOffset.bind(this));var r=i(t),a=t.getBoundingClientRect();return this.calculatePosition(r,a,e,n)},t.prototype.findPositionAt=function(t,e,n){return this.calculatePosition(t,{top:0,left:0,height:0,width:0},e,n)},t.prototype.getPlacementBox=function(t,e){var n=t.offsetHeight+e.top,i=t.offsetWidth+e.left;return{top:e.top,bottom:n,left:e.left,right:i}},t.prototype.addOffset=function(t,e,n){return void 0===e&&(e=0),void 0===n&&(n=0),Object.assign({},t,{top:t.top+e,left:t.left+n})},t.prototype.setElement=function(t,e){t.style.top=e.top+"px",t.style.left=e.left+"px"},t.prototype.findBestPlacement=function(t,e,n,i,r){var a=this;void 0===i&&(i=this.defaultContainerFunction.bind(this)),void 0===r&&(r=this.findPosition.bind(this));var o=n.map(function(n){var o=r(t,e,n),s=a.getPlacementBox(e,o),l=0,c=0,u=i();s.top<u.top?l=u.top-s.top:s.bottom>u.height&&(l=s.bottom-u.height),s.left<u.left?c=u.left-s.left:s.right>u.width&&(c=s.right-u.width),l&&!c?c=1:c&&!l&&(l=1);var h=e.offsetHeight*e.offsetWidth;return{placement:n,weight:(h-l*c)/h}});return o.sort(function(t,e){return e.weight-t.weight}),o[0].placement},t.prototype.findBestPlacementAt=function(t,e,n,i){var r=this;return void 0===i&&(i=this.defaultContainerFunction.bind(this)),this.findBestPlacement(null,e,n,i,function(e,n,i){return r.findPositionAt(t,n,i)})},t.prototype.defaultContainerFunction=function(){return{top:0,left:0,height:p2.innerHeight,width:p2.innerWidth}},t.prototype.calculatePosition=function(t,e,n,i){return this.positions[i]?this.positions[i](t,n,e):(console.error("No function found for placement, defaulting to 0,0"),{left:0,top:0})},t}();new p3;class p5 extends f0{constructor(t,e,n){super(t,e,n),this.type="tooltip",this.renderType=tY.HTML,this.isEventListenerAdded=!1,this.lastTriggeredEventType="",this.positionService=new p3,this.handleShowTooltip=t=>{let e,n=t.detail.data||t.detail.items,i=lH(t.detail.event.target).datum(),r=this.formatItems(this.getItems(t));e=t.detail.content?`<div class="title-tooltip"><p>${pG(t.detail.content)}</p></div>`:pG(this.getTooltipHTML(r));let a=hx.appendOrSelect(this.tooltip,"div.content-box");if(sB(this.getOptions(),"tooltip","customHTML"))if(t.detail.content){let e=`<div class="title-tooltip"><p>${pG(t.detail.content)}</p></div>`;a.html(e)}else a.html(`<div class="title-tooltip"><p>${pG(this.model.getOptions().tooltip.customHTML(n,e,i))}</p></div>`);else a.html(e);a.selectAll(".datapoint-tooltip").each(function(t,e){let n=r[e];r[e]&&r[e].color&&lH(this).select(".tooltip-color").attr("class","tooltip-color").style("background-color",n.color)}),this.positionTooltip(t),this.tooltip.classed("hidden",!1).attr("aria-hidden",!1),this.lastTriggeredEventType=t.type},this.handleHideTooltip=()=>{this.tooltip.classed("hidden",!0).attr("aria-hidden",!0)},this.init()}addTooltipEventListener(){this.services.events.addEventListener(tW.Tooltip.MOVE,t=>{this.lastTriggeredEventType!==tW.Toolbar.SHOW_TOOLTIP&&!1===this.tooltip.classed("hidden")&&this.positionTooltip(t)}),this.services.events.addEventListener(tW.Tooltip.SHOW,this.handleShowTooltip),this.services.events.addEventListener(tW.Tooltip.HIDE,this.handleHideTooltip),this.services.events.addEventListener(tW.Chart.MOUSEOUT,this.handleHideTooltip),this.services.events.addEventListener(tW.Toolbar.SHOW_TOOLTIP,this.handleShowTooltip),this.services.events.addEventListener(tW.Toolbar.HIDE_TOOLTIP,this.handleHideTooltip)}removeTooltipEventListener(){this.services.events.removeEventListener(tW.Tooltip.MOVE,null),this.services.events.removeEventListener(tW.Tooltip.SHOW,this.handleShowTooltip),this.services.events.removeEventListener(tW.Tooltip.HIDE,this.handleHideTooltip),this.services.events.removeEventListener(tW.Chart.MOUSEOUT,this.handleHideTooltip),this.services.events.removeEventListener(tW.Toolbar.SHOW_TOOLTIP,this.handleShowTooltip),this.services.events.removeEventListener(tW.Toolbar.HIDE_TOOLTIP,this.handleHideTooltip)}getItems(t){return t.detail.items?t.detail.items:[]}formatItems(t){let e=this.getOptions(),n=sB(e,"tooltip","truncation","type"),i=sB(e,"tooltip","truncation","threshold"),r=sB(e,"tooltip","truncation","numCharacter");return n!==tQ.NONE?t.map(t=>{let e=12*!!t.labelIcon;return t.value=this.valueFormatter(t.value,t.label),t.label&&t.label.length+e>i&&(t.label=sP(t.label,n,r)),t.value&&t.value.length>i&&(t.value=sP(t.value,n,r)),t}):t.map(t=>(t.value=this.valueFormatter(t.value,t.label),t))}getTooltipHTML(t){return'<ul class="multi-tooltip">'+t.map(t=>`<li>
54
+ <div class="datapoint-tooltip${t.bold?" bold":""}">
55
+ ${t.class||t.color?`<div class="tooltip-color ${t.class}"></div>`:""}
56
+ <div class="label">
57
+ <p>${t.label||""}</p>
58
+ ${t.labelIcon?`<span class="label-icon"/>${t.labelIcon}</span>`:""}
59
+ </div>
60
+ ${void 0===t.value||null===t.value?"":`<p class="value"/>${t.value}</p>`}
61
+ </div>
62
+ </li>`).join("")+"</ul>"}isDate(t){return t instanceof Date}valueFormatter(t,e){let n=this.getOptions(),i=sB(n,"tooltip","valueFormatter"),{code:r,number:a,date:o}=sB(n,"locale");if(i)return i(t,e);if(this.isDate(t))return o(t,r,{month:"short",day:"numeric",year:"numeric"});try{if("string"==typeof t&&/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}Z/.test(t)){let e=new Date(t);return o(e,r,{month:"short",day:"numeric",year:"numeric"})}}catch{}return a(t,r)}render(t=!1){let e=this.getOptions(),n=sB(e,"tooltip","enabled");if(n){let t=lH(this.services.domUtils.getHolder()),n=sB(e,"style","prefix");this.tooltip=hx.appendOrSelect(t,`div.cds--${n}--tooltip`),this.tooltip.style("max-width",null).attr("role","tooltip"),this.isEventListenerAdded||(this.addTooltipEventListener(),this.isEventListenerAdded=!0),this.tooltip.classed("hidden",!0)}else!n&&this.isEventListenerAdded&&(this.removeTooltipEventListener(),this.isEventListenerAdded=!1)}addOffsetByPlacement(t,e,n){let i=Object.assign({},t);return e==tp.LEFT?i.left-=n:e==tp.RIGHT?i.left+=n:e==tp.TOP?i.top-=n:e==tp.BOTTOM&&(i.top+=n),i}positionTooltip(t){let e=this.services.domUtils.getHolder(),n=e.offsetWidth,i=e.offsetHeight,r=this.tooltip.node(),a=this.getOptions(),o=sB(a,"zoomBar","top","enabled"),s=!!sB(t,"detail","noWrap"),l=Array.isArray(sB(t,"detail","placements")),c=l?sB(t,"detail","placements"):[tp.RIGHT,tp.LEFT,tp.TOP,tp.BOTTOM],u,{horizontalOffset:h}=sp,{defaultOffset:d}=sp;if(this.tooltip.select("div.title-tooltip").classed("title-tooltip-nowrap",s),l){let e=sB(t,"detail","event","target"),a=this.services.domUtils.getElementOffset(e,!0);u=this.positionService.findBestPlacementAt(a,r,c,()=>({top:0,left:0,width:n,height:i}));let o=this.positionService.findPosition(e,r,u,()=>this.services.domUtils.getElementOffset(e));o=this.addOffsetByPlacement(o,u,d),this.positionService.setElement(r,o);return}let f=sB(t,"detail","mousePosition");if(f){let t=sB(a,"zoomBar","top","type"),e=sg.height[t];o&&(f[1]+=e+sg.spacerHeight)}else f=ax(sB(t,"detail","event"),e);(u=f[0]/n>.9?tp.LEFT:f[0]/n<.1?tp.RIGHT:this.positionService.findBestPlacementAt({left:f[0],top:f[1]},r,c,()=>({top:void 0,left:void 0,width:n,height:i})))===tp.LEFT&&(h*=-1);let p=this.positionService.findPositionAt({left:f[0]+h,top:f[1]},r,u);this.positionService.setElement(r,p)}}let p4=class t extends f0{constructor(){super(...arguments),this.type="grid-brush",this.renderType=tY.SVG,this.selectionSelector="rect.selection",this.frontSelectionSelector="rect.frontSelection"}render(e=!0){let n=this.parent,i=this.getComponentContainer({isPresentational:!0});if(!n)throw Error("SVG was not defined");let r=hx.appendOrSelect(n,"svg.chart-grid-backdrop"),a=hx.appendOrSelect(r,`g.${this.type}`),o=hx.appendOrSelect(a,this.selectionSelector),{width:s,height:l}=hx.getSVGElementSize(r,{useAttrs:!0}),{cartesianScales:c}=this.services,u=c.getMainXScaleType(),h=c.getMainXScale(),[d]=h.range();i.attr("transform",`translate(${d},0)`);let f=hx.appendOrSelect(i,this.frontSelectionSelector);if(h&&u===t0.TIME){let e,n=this.model.get("zoomDomain");void 0===n&&(n=this.services.zoom.getDefaultZoomBarDomain())&&this.model.set({zoomDomain:n},{animate:!1});let i=e=>{let n=e[1]-e[0],i="0,"+n.toString(),r=Math.floor(l/t.DASH_LENGTH),a=r*t.DASH_LENGTH;for(let e=0;e<r;e++)i+=","+t.DASH_LENGTH;i+=","+(l-a),r%2==1&&(i+=",0"),i+=","+n.toString()+","+l.toString(),f.attr("stroke-dasharray",i)},c=(t,e)=>{let i=u_().range([0,s]).domain(n),r=[i.invert(t),i.invert(e)],a="manual";r[0].valueOf()===r[1].valueOf()?(r=this.services.zoom.getDefaultZoomBarDomain(),a="reset"):a="manual",(n[0].valueOf()!==r[0].valueOf()||n[1].valueOf()!==r[1].valueOf())&&this.services.zoom.handleDomainChange(r,{dispatchEvent:!0,type:a})};0!=l&&0!=s&&(e=dS(df).extent([[0,0],[s-1,l]]).on("start brush end",t=>{let e=t.selection;null===e||e[0]===e[1]||(f.attr("x",parseFloat(o.attr("x"))+parseFloat(r.attr("x"))).attr("y",o.attr("y")).attr("width",o.attr("width")).attr("height",o.attr("height")).style("cursor","pointer").style("display",null),i(e))}).on("end.brushed",t=>{let n=t.selection;null!==n&&(c(n[0],n[1]),a.call(e.move,null),f.style("display","none"))}),a.call(e));let u=this.services.zoom.getZoomRatio();r.on("click",function(t){if(t.shiftKey){let t=this.services.domUtils.getHolder(),e=ax(a.node(),t)[0],n=e-s*u/2;n<0&&(n=0);let i=e+s*u/2;i>s&&(i=s),c(n,i)}})}}};p4.DASH_LENGTH=4;class p8 extends f0{constructor(){super(...arguments),this.type="zoom-bar",this.renderType=tY.SVG,this.MIN_SELECTION_DIFF=9e-10,this.brushSelector="g.zoom-bar-brush",this.clipId="zoomBarClip-"+Math.floor(0x174876e7ff*Math.random()),this.brush=dS(df),this.highlightStrokeWidth=1}init(){this.services.events.addEventListener(tW.ZoomBar.UPDATE,this.render.bind(this));let t=sB(this.getOptions(),"zoomBar",tq.TOP,"data");this.model.setZoomBarData(t)}render(t=!0){let e=this.getComponentContainer({ariaLabel:"zoom bar"}),n=this.services.zoom.isZoomBarLoading(tq.TOP),i=this.services.zoom.isZoomBarLocked(tq.TOP),r=sB(this.getOptions(),"zoomBar",tq.TOP,"type"),a=sB(this.getOptions(),"axes",tq.BOTTOM,"highlights"),o=sg.height[r],{width:s}=hx.getSVGElementSize(this.parent,{useAttrs:!0});if(0===s)return;let l=0,c=this.model.get("axesMargins");c&&c.left&&(l=c.left);let u=hx.appendOrSelect(e,"svg.zoom-container").attr("width","100%").attr("height",o).attr("opacity",1).attr("role","presentation");if(hx.appendOrSelect(e,"rect.zoom-spacer").attr("x",0).attr("y",o).attr("width","100%").attr("height",sg.spacerHeight).attr("opacity",1).attr("fill","none"),r===tK.GRAPH_VIEW?hx.appendOrSelect(u,"rect.zoom-bg").attr("x",l).attr("y",0).attr("width",s-l).attr("height","100%").classed("zoom-bg-skeleton",n).style("stroke",n?`url(#${this.services.domUtils.generateElementIDString("shimmer-lines")})`:null):r===tK.SLIDER_VIEW&&hx.appendOrSelect(u,"rect.zoom-slider-bg").attr("x",l).attr("y",o/2-1).attr("width",s-l).attr("height",2).classed("zoom-slider-bg-skeleton",n).style("stroke",n?`url(#${this.services.domUtils.generateElementIDString("shimmer-lines")})`:null),n)return void this.renderSkeleton(u,l,s);let{cartesianScales:h}=this.services,d=h.getMainXScale(),f=h.getMainYScale(),p=h.getMainXScaleType();if(d&&p===t0.TIME){let t=this.services.zoom.getZoomBarData();if(function(t){if(null==t)return!0;if(nm(t)&&(eV(t)||"string"==typeof t||"function"==typeof t.splice||nO(t)||nI(t)||nE(t)))return!t.length;var e=i$(t);if("[object Map]"==e||"[object Set]"==e)return!t.size;if(nv(t))return!nF(t).length;for(var n in t)if(ry.call(t,n))return!1;return!0}(t)||1===t.length)return;this.xScale=d.copy(),this.yScale=f.copy();let n=this.services.zoom.getDefaultZoomBarDomain(t);t=this.compensateDataForDefaultDomain(t,n);let c=this.model.get("initialZoomDomain"),h=sB(this.getOptions(),"zoomBar",tq.TOP,"initialZoomDomain");h&&h[0]&&h[1]&&(h[0]=new Date(h[0]),h[1]=new Date(h[1])),h&&!(c&&c[0].valueOf()===h[0].valueOf()&&c[1].valueOf()===h[1].valueOf())?this.model.set({initialZoomDomain:r_([],h),zoomDomain:h?r_([],h):n},{skipUpdate:!0}):null===h&&null!==c&&this.model.set({initialZoomDomain:null,zoomDomain:r_([],n)},{skipUpdate:!0}),this.xScale.range([l,s]).domain(n),this.maxSelectionRange=this.xScale.range(),this.yScale.range([0,o-6]).domain(rk(t,t=>t.value));let p=this.model.get("zoomDomain");if(r===tK.GRAPH_VIEW&&(this.renderZoomBarArea(u,"path.zoom-graph-area-unselected",t,null),this.updateClipPath(e,this.clipId,0,0,0,0),this.renderZoomBarArea(u,"path.zoom-graph-area",t,this.clipId),this.renderZoomBarBaseline(u,l,s),a)){let t=a.highlightStartMapsTo,e=a.highlightEndMapsTo,n=a.color,i=a.labelMapsTo;a.data.forEach((r,a)=>{hx.appendOrSelect(u,`rect.highlight-${a}`).attr("height",o-2*this.highlightStrokeWidth).attr("y",this.highlightStrokeWidth).attr("x",this.xScale(r[t])).attr("width",this.xScale(r[e])-this.xScale(r[t])).style("fill",n&&n.scale[r[i]]?n.scale[r[i]]:null).style("fill-opacity",.1).style("stroke",n&&n.scale[r[i]]?n.scale[r[i]]:null).style("stroke-dasharray","2, 2").attr("stroke-width","1px")})}this.addBrushEventListener(p,l,s);let m=hx.appendOrSelect(e,this.brushSelector).call(this.brush);if(void 0!==p)if(p[0].valueOf()===p[1].valueOf())m.call(this.brush.move,this.xScale.range()),this.updateBrushHandle(this.getComponentContainer(),this.xScale.range());else{let t=p.map(t=>this.xScale(t));t[1]-t[0]<this.MIN_SELECTION_DIFF||(m.call(this.brush.move,t),this.updateBrushHandle(this.getComponentContainer(),t))}i&&(this.brush.filter(()=>!1),m.selectAll("rect").attr("cursor","auto"))}}addBrushEventListener(t,e,n){let i=sB(this.getOptions(),"zoomBar",tq.TOP,"type"),r=sg.height[i];this.brush.extent([[e,0],[n,r]]).on("start brush end",null).on("start brush end",e=>{let n=e.selection;null===n?this.handleBrushedEvent(e,t,this.xScale,this.xScale.range()):n[0]===n[1]||this.handleBrushedEvent(e,t,this.xScale,n)})}handleBrushedEvent(t,e,n,i){let r=[n.invert(i[0]),n.invert(i[1])];if(this.updateBrushHandle(this.getComponentContainer(),i),null!=t.sourceEvent&&("mousemove"===t.sourceEvent.type||"mouseup"===t.sourceEvent.type||"mousedown"===t.sourceEvent.type||"touchstart"===t.sourceEvent.type||"touchmove"===t.sourceEvent.type||"touchend"===t.sourceEvent.type)){let n,a="manual";if(e&&e[0]&&e[1]){let t=this.services.zoom.getDefaultZoomBarDomain();a=r[0].valueOf()===t[0].valueOf()&&r[1].valueOf()===t[1].valueOf()?"reset":"manual"}(void 0===e||e[0]!==r[0]||e[1]!==r[1])&&this.services.zoom.handleDomainChange(r,{dispatchEvent:!1,type:a}),"start"===t.type?n=tW.ZoomBar.SELECTION_START:"brush"===t.type?n=tW.ZoomBar.SELECTION_IN_PROGRESS:"end"===t.type&&(n=tW.ZoomBar.SELECTION_END,this.services.events.dispatchEvent(tW.ZoomDomain.CHANGE,{newDomain:r,type:a})),this.services.events.dispatchEvent(n,{selection:i,newDomain:r})}}updateBrushHandle(t,e){let n=this,i=sg.handleWidth,r=sB(this.getOptions(),"zoomBar",tq.TOP,"type"),a=sg.height[r],o=-i/2,s=sg.handleBarWidth,l=r===tK.GRAPH_VIEW?sg.handleBarHeight:6,c=-s/2,u=(a-l)/2;t.select(this.brushSelector).selectAll("rect.handle").data([{type:"w"},{type:"e"}]).attr("x",function(t){return"w"===t.type?Math.max(e[0]+o,n.maxSelectionRange[0]):"e"===t.type?Math.min(e[1]+o,n.maxSelectionRange[1]-i):void 0}).attr("y",0).attr("width",i).attr("height",a).attr("cursor","ew-resize").style("display",null);let h=t.select(this.brushSelector).selectAll("rect.handle-bar").data([{type:"w"},{type:"e"}]);h.enter().append("rect").attr("class",function(t){return"handle-bar handle-bar--"+t.type}),h.attr("x",function(t){return"w"===t.type?Math.max(e[0]+c,n.maxSelectionRange[0]-o+c):"e"===t.type?Math.min(e[1]+c,n.maxSelectionRange[1]+o+c):void 0}).attr("y",u).attr("width",s).attr("height",l).attr("cursor","ew-resize"),r===tK.SLIDER_VIEW&&this.updateSliderSelectedArea(e),this.updateClipPath(t,this.clipId,e[0],0,e[1]-e[0],a)}updateSliderSelectedArea(t){let e=sB(this.getOptions(),"zoomBar",tq.TOP,"type"),n=sg.height[e],i=this.getComponentContainer().select("svg.zoom-container");hx.appendOrSelect(i,"rect.zoom-slider-selected-area").attr("x",t[0]).attr("y",n/2-1).attr("width",t[1]-t[0]).attr("height",2)}renderZoomBarArea(t,e,n,i){let{cartesianScales:r}=this.services,a=r.getMainXAxisPosition(),o=r.getMainYAxisPosition(),s=r.getMainXScaleType(),l=r.getMainYScaleType(),c=(t,e,n)=>i=>r.getValueFromScale(t,e,n,i),u=c(this.xScale,s,a),h=c(this.yScale,l,o),d=sB(this.getOptions(),"zoomBar",tq.TOP,"type"),f=sg.height[d],p=(function(t,e,n){var i=null,r=lf(!0),a=null,o=uL,s=null,l=fV(c);function c(c){var u,h,d,f,p,m=(c=lp(c)).length,g=!1,v=Array(m),y=Array(m);for(null==a&&(s=o(p=l())),u=0;u<=m;++u){if(!(u<m&&r(f=c[u],u,c))===g)if(g=!g)h=u,s.areaStart(),s.lineStart();else{for(s.lineEnd(),s.lineStart(),d=u-1;d>=h;--d)s.point(v[d],y[d]);s.lineEnd(),s.areaEnd()}g&&(v[u]=+t(f,u,c),y[u]=+e(f,u,c),s.point(i?+i(f,u,c):v[u],n?+n(f,u,c):y[u]))}if(p)return s=null,p+""||null}function u(){return fQ().defined(r).curve(o).context(a)}return t="function"==typeof t?t:void 0===t?fq:lf(+t),e="function"==typeof e?e:lf(void 0===e?0:+e),n="function"==typeof n?n:void 0===n?fK:lf(+n),c.x=function(e){return arguments.length?(t="function"==typeof e?e:lf(+e),i=null,c):t},c.x0=function(e){return arguments.length?(t="function"==typeof e?e:lf(+e),c):t},c.x1=function(t){return arguments.length?(i=null==t?null:"function"==typeof t?t:lf(+t),c):i},c.y=function(t){return arguments.length?(e="function"==typeof t?t:lf(+t),n=null,c):e},c.y0=function(t){return arguments.length?(e="function"==typeof t?t:lf(+t),c):e},c.y1=function(t){return arguments.length?(n=null==t?null:"function"==typeof t?t:lf(+t),c):n},c.lineX0=c.lineY0=function(){return u().x(t).y(e)},c.lineY1=function(){return u().x(t).y(n)},c.lineX1=function(){return u().x(i).y(e)},c.defined=function(t){return arguments.length?(r="function"==typeof t?t:lf(!!t),c):r},c.curve=function(t){return arguments.length?(o=t,null!=a&&(s=o(a)),c):o},c.context=function(t){return arguments.length?(null==t?a=s=null:s=o(a=t),c):a},c})().x(t=>u(t)).y0(f).y1(t=>f-h(t)),m=hx.appendOrSelect(t,e).datum(n).attr("d",p);i&&m.attr("clip-path",`url(#${i})`)}updateClipPath(t,e,n,i,r,a){let o=hx.appendOrSelect(t,"clipPath").attr("id",e);hx.appendOrSelect(o,"rect").attr("x",n).attr("y",i).attr("width",r).attr("height",a)}compensateDataForDefaultDomain(t,e){if(!t||t.length<2)return;let n=i5(t,5),i=this.services.cartesianScales.getDomainIdentifier(),r=this.services.cartesianScales.getRangeIdentifier();if(Number(e[0])<Number(n[0][i])){let t={};t[i]=e[0],t[r]=0,n.unshift(t)}if(Number(e[1])>Number(n[n.length-1][i])){let t={};t[i]=e[1],t[r]=0,n.push(t)}return n}renderZoomBarBaseline(t,e,n,i=!1){let r=sB(this.model.getOptions(),"zoomBar",tq.TOP,"type"),a=sg.height[r],o=fQ()([[e,a],[n,a]]);hx.appendOrSelect(t,"path.zoom-bg-baseline").attr("d",o).classed("zoom-bg-baseline-skeleton",i).style("stroke",i?`url(#${this.services.domUtils.generateElementIDString("shimmer-lines")})`:null)}renderSkeleton(t,e,n){this.renderZoomBarArea(t,"path.zoom-graph-area-unselected",[],null),this.renderZoomBarArea(t,"path.zoom-graph-area",[],this.clipId),this.brush.on("start brush end",null),hx.appendOrSelect(this.getComponentContainer(),this.brushSelector).html(null),sB(this.getOptions(),"zoomBar",tq.TOP,"type")===tK.GRAPH_VIEW&&this.renderZoomBarBaseline(t,e,n,!0)}destroy(){this.brush.on("start brush end",null),this.services.events.removeEventListener(tW.ZoomBar.UPDATE,this.render.bind(this))}}class p6 extends f0{constructor(t,e){super(t,e),this.type="threshold",this.renderType=tY.SVG,this.positionService=new p3}render(t=!1){let e=sB(this.getOptions(),"axes"),n=[];Object.keys(e).forEach(t=>{if(Object.values(tq).includes(t)){let i=e[t];i.thresholds&&i.thresholds.length>0&&n.push({axisPosition:t,thresholds:i.thresholds,correspondingDatasets:i?.correspondingDatasets,mapsTo:i?.mapsTo})}});let i=this.getComponentContainer({ariaLabel:"threshold lines",withinChartClip:!0}).selectAll("g.axis-thresholds").data(n,t=>t.axisPosition);i.exit().attr("opacity",0).remove();let r=i.enter().append("g").merge(i);r.attr("class",t=>`axis-thresholds ${t.axisPosition}`);let a=r.selectAll("g.threshold-group").data(t=>t.thresholds.map(e=>(e.axisPosition=t.axisPosition,e.datum=this.constructDatumObj(t,e),e)));a.exit().attr("opacity",0).remove();let o=a.enter().append("g");o.append("line").attr("class","threshold-line"),o.append("rect").attr("class","threshold-hoverable-area"),o.merge(a).attr("class","threshold-group");let s=this;r.each(function({axisPosition:e}){let n=s.services.cartesianScales.getScaleByPosition(e),i=s.services.cartesianScales.getScaleTypeByPosition(e),r=null,a=null;e===tq.LEFT||e===tq.RIGHT?(a=n,r=s.services.cartesianScales.getMainXScale()):(r=n,a=s.services.cartesianScales.getMainYScale());let o=i===t0.LABELS,[l,c]=r.range(),[u,h]=a.range(),{cartesianScales:d}=s.services,[f,p]=s$(t=>d.getDomainValue(t),t=>d.getRangeValue(t),d.getOrientation()),m=lH(this);e===tq.TOP||e===tq.BOTTOM?(m.selectAll("line.threshold-line").transition().call(e=>s.services.transitions.setupTransition({transition:e,name:"threshold-line-update",animate:t})).attr("y1",h).attr("y2",u).attr("x1",({datum:t})=>f(t)+(o?n.step()/2:0)).attr("x2",({datum:t})=>f(t)+(o?n.step()/2:0)).style("stroke",({fillColor:t})=>t),m.selectAll("rect.threshold-hoverable-area").attr("x",0).attr("y",({datum:t})=>-f(t)).attr("width",Math.abs(u-h)).classed("rotate",!0)):(m.selectAll("line.threshold-line").transition().call(e=>s.services.transitions.setupTransition({transition:e,name:"threshold-line-update",animate:t})).attr("x1",l).attr("x2",c).attr("y1",({datum:t})=>p(t)+(o?n.step()/2:0)).attr("y2",({datum:t})=>p(t)+(o?n.step()/2:0)).style("stroke",({fillColor:t})=>t),m.selectAll("rect.threshold-hoverable-area").attr("x",l).attr("y",({datum:t})=>p(t)).attr("width",Math.abs(c-l)).classed("rotate",!1))}),this.services.events.addEventListener(tW.Threshold.SHOW,t=>{this.setThresholdLabelPosition(t.detail),this.label.classed("hidden",!1)}),this.services.events.addEventListener(tW.Threshold.HIDE,()=>{this.label.classed("hidden",!0)}),this.appendThresholdLabel(),this.addEventListeners()}getFormattedValue(t){let{value:e,axisPosition:n}=t,i=this.getOptions(),r=this.services.cartesianScales.getScaleTypeByPosition(n),{code:a,number:o}=sB(i,"locale");if(r===t0.TIME){let t=[tq.LEFT,tq.RIGHT].includes(n),r=this.services.cartesianScales.getMainXScale(),a=this.services.cartesianScales.getMainYScale(),o=t?a:r,s=sB(i,"timeScale"),l=ls(o.ticks(),sB(s,"timeInterval"));return la(e,0,o.ticks(),l,s,i.locale)}return o(e,a)}appendThresholdLabel(){let t=lH(this.services.domUtils.getHolder()),e=sB(this.getOptions(),"style","prefix");this.label=hx.appendOrSelect(t,`div.cds--${e}--threshold--label`).classed("hidden",!0)}setThresholdLabelPosition({event:t,datum:e}){let n=this.services.domUtils.getHolder(),i=ax(t,n),r=e.valueFormatter?e.valueFormatter(e.value):this.getFormattedValue(e);this.label.html(pW(`${e.label||"Threshold"}: ${r}`)).style("background-color",e.fillColor);let a=this.label.node(),o=this.positionService.findBestPlacementAt({left:i[0],top:i[1]},a,[tp.RIGHT,tp.LEFT,tp.TOP,tp.BOTTOM],()=>({top:void 0,left:void 0,width:n.offsetWidth,height:n.offsetHeight})),s=this.positionService.findPositionAt({left:i[0],top:i[1]},a,o);this.positionService.setElement(a,s)}constructDatumObj(t,e){let n={};return t.correspondingDatasets&&(n.group=sB(t,"correspondingDatasets",0)),n[t.mapsTo]=e.value,n}addEventListeners(){let t=this;this.getComponentContainer({withinChartClip:!0}).selectAll("rect.threshold-hoverable-area").on("mouseover mousemove",function(e){lH(this.parentNode).select("line.threshold-line").classed("active",!0),t.services.events.dispatchEvent(tW.Threshold.SHOW,{event:e,hoveredElement:lH(this),datum:lH(this).datum()})}).on("mouseout",function(e){lH(this.parentNode).select("line.threshold-line").classed("active",!1),t.services.events.dispatchEvent(tW.Threshold.HIDE,{event:e,hoveredElement:lH(this),datum:lH(this).datum()})})}}class p9 extends f0{constructor(t,e){super(t,e),this.type="highlight",this.renderType=tY.SVG,this.positionService=new p3,this.highlightStrokeWidth=1}render(t=!1){let e=sB(this.getOptions(),"axes"),n=[];Object.keys(e).forEach(t=>{if(Object.values(tq).includes(t)){let i=e[t];i.highlights&&i.highlights.data.length>0&&n.push({axisPosition:t,highlightStartMapsTo:i.highlights.highlightStartMapsTo,highlightEndMapsTo:i.highlights.highlightEndMapsTo,labelMapsTo:i.highlights.labelMapsTo,highlight:i.highlights.data,color:i.highlights.color})}});let i=this.getComponentContainer({ariaLabel:"highlight areas",withinChartClip:!0}).selectAll("g.axis-highlight").data(n,t=>t.axisPosition);i.exit().attr("opacity",0).remove();let r=i.enter().append("g").merge(i);r.attr("class",t=>`axis-highlight ${t.axisPosition}`);let a=r.selectAll("g.highlight-group").data(t=>t.highlight.map(e=>(e.axisPosition=t.axisPosition,e.highlightStartMapsTo=t.highlightStartMapsTo,e.labelMapsTo=t.labelMapsTo,e.color=t.color,e.highlightEndMapsTo=t.highlightEndMapsTo,e)));a.exit().attr("opacity",0).remove();let o=a.enter().append("g");o.append("rect").attr("class","highlight-bar"),o.append("line").attr("class","highlight-line"),o.merge(a).attr("class","highlight-group");let s=this;r.each(function({axisPosition:e}){let n=s.services.cartesianScales.getMainXScale(),i=s.services.cartesianScales.getMainYScale(),[r,a]=n.range(),[o,l]=i.range(),{cartesianScales:c}=s.services,[u,h]=s$(t=>c.getDomainValue(t),t=>c.getRangeValue(t),c.getOrientation()),d=lH(this);e===tq.TOP||e===tq.BOTTOM?d.selectAll("rect.highlight-bar").transition().call(e=>s.services.transitions.setupTransition({transition:e,name:"highlight-bar-update",animate:t})).attr("y",Math.max(l+s.highlightStrokeWidth,0)).attr("height",Math.max(o-2*s.highlightStrokeWidth,0)).attr("x",({highlightStartMapsTo:t,...e})=>u(e[t])).attr("width",({highlightStartMapsTo:t,highlightEndMapsTo:e,...n})=>Math.max(u(n[e])-u(n[t]),0)).style("stroke",({color:t,labelMapsTo:e,...n})=>t&&t.scale[n[e]]?t.scale[n[e]]:null).style("stroke-dasharray","2, 2").attr("stroke-width",s.highlightStrokeWidth+"px").style("fill-opacity",.1).style("fill",({color:t,labelMapsTo:e,...n})=>t&&t.scale[n[e]]?t.scale[n[e]]:null):d.selectAll("rect.highlight-bar").transition().call(e=>s.services.transitions.setupTransition({transition:e,name:"highlight-bar-update",animate:t})).attr("x",r).attr("width",Math.max(a-r,0)).attr("y",({highlightEndMapsTo:t,...e})=>h(e[t])).attr("height",({highlightStartMapsTo:t,highlightEndMapsTo:e,...n})=>Math.max(h(n[t])-h(n[e]),0)).style("stroke",({color:t,labelMapsTo:e,...n})=>t&&t.scale[n[e]]?t.scale[n[e]]:null).style("stroke-dasharray","2, 2").attr("stroke-width",s.highlightStrokeWidth+"px").style("fill-opacity",.1).style("fill",({color:t,labelMapsTo:e,...n})=>t&&t.scale[n[e]]?t.scale[n[e]]:null)})}}class p7 extends p5{getItems(t){let e;if(t.detail.items)return t.detail.items;let{data:n}=t.detail;if(!n||!n.length||!n[0])return[];let i=this.getOptions(),{cartesianScales:r}=this.services,a=r.getDomainIdentifier(),o=r.isDualAxes(),{groupMapsTo:s}=i.data,l=r.getDomainLabel(),c=r.getRangeLabel(),u=n[0][a];if(1===n.length){let a=n[0],h=r.getRangeIdentifier(a);if(o){let t=r.getRangeAxisPosition({datum:a,groups:[a[s]]});c=r.getScaleLabel(t)}let d=a[h];e=[{label:l,value:u},...Array.isArray(d)&&2===d.length?[{label:"Start",value:d[0]},{label:"End",value:d[1]}]:[{label:c,value:a[h]}]],t.detail.additionalItems&&t.detail.additionalItems.forEach(t=>e.push({label:t.label,value:t.value})),e.push({label:ie(i,"locale.translations.group")||ie(i,"tooltip.groupLabel"),value:a[s],color:this.model.getFillColor(a[s]),class:this.model.getColorClassName({classNameTypes:[tX.TOOLTIP],dataGroupName:a[s]})})}else if(n.length>1&&(e=(e=[{label:l,value:u}]).concat(n.map(t=>{let e=t[r.getRangeIdentifier(t)];return{label:t[s],value:Array.isArray(e)&&2===e.length?`${e[0]} - ${e[1]}`:e,color:this.model.getFillColor(t[s]),class:this.model.getColorClassName({classNameTypes:[tX.TOOLTIP],dataGroupName:t[s]})}}).sort((t,e)=>e.value-t.value)),!o&&!0===sB(i,"tooltip","showTotal"))){let t,a=r.getRangeIdentifier(),o=sB(i,"tooltip","customTotalCalculation");t=o?o(n):n.reduce((t,e)=>t+e[a],0),e.push({label:ie(i,"tooltip.totalLabel")||ie(i,"locale.translations.total")||"Total",value:t,bold:!0})}return e}}var mt=Math.PI,me=2*mt,mn=me-1e-6;function mi(){this._x0=this._y0=this._x1=this._y1=null,this._=""}mi.prototype=(function(){return new mi}).prototype={constructor:mi,moveTo:function(t,e){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)},closePath:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")},lineTo:function(t,e){this._+="L"+(this._x1=+t)+","+(this._y1=+e)},quadraticCurveTo:function(t,e,n,i){this._+="Q"+ +t+","+ +e+","+(this._x1=+n)+","+(this._y1=+i)},bezierCurveTo:function(t,e,n,i,r,a){this._+="C"+ +t+","+ +e+","+ +n+","+ +i+","+(this._x1=+r)+","+(this._y1=+a)},arcTo:function(t,e,n,i,r){t*=1,e*=1,n*=1,i*=1,r*=1;var a=this._x1,o=this._y1,s=n-t,l=i-e,c=a-t,u=o-e,h=c*c+u*u;if(r<0)throw Error("negative radius: "+r);if(null===this._x1)this._+="M"+(this._x1=t)+","+(this._y1=e);else if(h>1e-6)if(Math.abs(u*s-l*c)>1e-6&&r){var d=n-a,f=i-o,p=s*s+l*l,m=Math.sqrt(p),g=Math.sqrt(h),v=r*Math.tan((mt-Math.acos((p+h-(d*d+f*f))/(2*m*g)))/2),y=v/g,_=v/m;Math.abs(y-1)>1e-6&&(this._+="L"+(t+y*c)+","+(e+y*u)),this._+="A"+r+","+r+",0,0,"+ +(u*d>c*f)+","+(this._x1=t+_*s)+","+(this._y1=e+_*l)}else this._+="L"+(this._x1=t)+","+(this._y1=e)},arc:function(t,e,n,i,r,a){t*=1,e*=1,n*=1,a=!!a;var o=n*Math.cos(i),s=n*Math.sin(i),l=t+o,c=e+s,u=1^a,h=a?i-r:r-i;if(n<0)throw Error("negative radius: "+n);null===this._x1?this._+="M"+l+","+c:(Math.abs(this._x1-l)>1e-6||Math.abs(this._y1-c)>1e-6)&&(this._+="L"+l+","+c),n&&(h<0&&(h=h%me+me),h>mn?this._+="A"+n+","+n+",0,1,"+u+","+(t-o)+","+(e-s)+"A"+n+","+n+",0,1,"+u+","+(this._x1=l)+","+(this._y1=c):h>1e-6&&(this._+="A"+n+","+n+",0,"+ +(h>=mt)+","+u+","+(this._x1=t+n*Math.cos(r))+","+(this._y1=e+n*Math.sin(r))))},rect:function(t,e,n,i){this._+="M"+(this._x0=this._x1=+t)+","+(this._y0=this._y1=+e)+"h"+ +n+"v"+ +i+"h"+-n+"Z"},toString:function(){return this._}},Array.prototype.slice;class mr extends f0{constructor(){super(...arguments),this.type="grid",this.renderType=tY.SVG}render(t=!0){let e=sB(this.getOptions(),"grid","x","enabled"),n=sB(this.getOptions(),"grid","y","enabled");this.drawBackdrop(e,n),!(!e&&!n)&&(e&&(hx.appendOrSelect(this.backdrop,"g.x.grid"),this.drawXGrid(t)),n&&(hx.appendOrSelect(this.backdrop,"g.y.grid"),this.drawYGrid(t)))}drawXGrid(t){let e=this.parent,n=this.backdrop.attr("height"),i=h4(this.services.cartesianScales.getMainXScale()).tickSizeInner(-n).tickSizeOuter(0);if(sB(this.getOptions(),"grid","x","alignWithAxisTicks")){let t=this.services.cartesianScales.getDomainAxisPosition(),e=sB(this.getOptions(),"axes",t,"ticks","values");e&&i.tickValues(e)}else{let t=sB(this.getOptions(),"grid","x","numberOfTicks");i.ticks(t)}let r=e.select(".x.grid").attr("transform",`translate(${-this.backdrop.attr("x")}, ${n})`);t?r.transition().call(e=>this.services.transitions.setupTransition({transition:e,name:"grid-update",animate:t})).call(i):r.call(i),this.cleanGrid(r)}drawYGrid(t){let e=this.parent,n=this.backdrop.attr("width"),i=h8(this.services.cartesianScales.getMainYScale()).tickSizeInner(-n).tickSizeOuter(0);if(sB(this.getOptions(),"grid","y","alignWithAxisTicks")){let t=this.services.cartesianScales.getRangeAxisPosition(),e=sB(this.getOptions(),"axes",t,"ticks","values");e&&i.tickValues(e)}else{let t=sB(this.getOptions(),"grid","y","numberOfTicks");i.ticks(t)}let r=e.select(".y.grid").attr("transform",`translate(0, ${-this.backdrop.attr("y")})`);t?r.transition().call(e=>this.services.transitions.setupTransition({transition:e,name:"grid-update",animate:t})).call(i):r.call(i),this.cleanGrid(r)}getGridlineThreshold(t){let e,n=this.parent,i=n.selectAll(".x.grid .tick").nodes().sort((t,e)=>Number(sN(t).tx)-Number(sN(e).tx)),r=-1;if(!i.length)return;i.forEach(e=>{t[0]>=+sN(e).tx&&r++});let a=r+1<i.length?r+1:i.length,o=i[r],s=i[a];if(o)if(s)e=sN(s).tx-sN(o).tx;else{let t=n.select("rect.chart-grid-backdrop").node();e=hx.getSVGElementSize(t).width-sN(o).tx}else e=+sN(s).tx;let{threshold:l}=this.getOptions().tooltip.gridline;return e*l}getActiveGridline(t){let e=sB(this.getOptions,"tooltip","gridline","threshold")||this.getGridlineThreshold(t);return this.parent.selectAll(".x.grid .tick").filter(function(){let n=sN(this),i={min:Number(n.tx)-e,max:Number(n.tx)+e};return i.min<=t[0]&&t[0]<=i.max})}drawBackdrop(t,e){let n=this.parent,i=this.services.cartesianScales.getMainXScale(),r=this.services.cartesianScales.getMainYScale(),[a,o]=i.range(),[s,l]=r.range();this.backdrop=hx.appendOrSelect(n,"svg.chart-grid-backdrop").attr("role","presentation");let c=hx.appendOrSelect(this.backdrop,t||e?"rect.chart-grid-backdrop.stroked":"rect.chart-grid-backdrop");this.backdrop.merge(c).attr("x",a).attr("y",l).attr("width",Math.abs(o-a)).attr("height",Math.abs(s-l)).lower(),c.attr("width","100%").attr("height","100%")}cleanGrid(t){t.selectAll("text").remove(),t.select(".domain").remove()}}class ma extends f0{constructor(){super(...arguments),this.type="line",this.renderType=tY.SVG,this.handleLegendOnHover=t=>{let{hoveredElement:e}=t.detail;this.parent.selectAll("path.line").transition("legend-hover-line").call(t=>this.services.transitions.setupTransition({transition:t,name:"legend-hover-line"})).attr("opacity",t=>t.name!==e.datum().name?sh.opacity.unselected:sh.opacity.selected)},this.handleLegendMouseOut=()=>{this.parent.selectAll("path.line").transition("legend-mouseout-line").call(t=>this.services.transitions.setupTransition({transition:t,name:"legend-mouseout-line"})).attr("opacity",sh.opacity.selected)}}init(){let{events:t}=this.services;t.addEventListener(tW.Legend.ITEM_HOVER,this.handleLegendOnHover),t.addEventListener(tW.Legend.ITEM_MOUSEOUT,this.handleLegendMouseOut)}render(t=!0){let e=navigator.userAgent.toLowerCase().indexOf("firefox")>-1,n=void 0!==this.model.get("zoomDomain"),i=e&&n?this.getComponentContainer({ariaLabel:"lines",withinChartClip:!1}):this.getComponentContainer({ariaLabel:"lines",withinChartClip:!0}),{cartesianScales:r,curves:a}=this.services,[o,s]=s$(t=>r.getDomainValue(t),t=>r.getRangeValue(t),r.getOrientation()),l=this.getOptions(),c=fQ().x(o).y(s).curve(a.getD3Curve()).defined(t=>{let e=r.getRangeIdentifier(t);return null!=t[e]}),u=[];if(this.configs.stacked){let t=Object.keys(l.axes).some(t=>l.axes[t].percentage),{groupMapsTo:e}=l.data;u=this.model.getStackedData({groups:this.configs.groups,percentage:t}).map(t=>{var n;let i=this.services.cartesianScales.getDomainIdentifier(t),r=this.services.cartesianScales.getRangeIdentifier(t);return{name:sB(t,0,e),data:t.map(t=>({[i]:t.data.sharedStackKey,[e]:t[e],[r]:t[1]})),hidden:(n=t=>t[0]!==t[1],!(eV(t)?i6:function(t,e){var n;return ld(t,function(t,i,r){return!(n=e(t,i,r))}),!!n})(t,rd(n)))}})}else u=this.model.getGroupedData(this.configs.groups);let h=i.selectAll("path.line").data(u,t=>t.name);h.exit().attr("opacity",0).remove();let d=h.enter().append("path").classed("line",!0).attr("opacity",0).merge(h).data(u,t=>t.name).attr("class",t=>this.model.getColorClassName({classNameTypes:[tX.STROKE],dataGroupName:t.name,originalClassName:"line"})).style("stroke",t=>this.model.getStrokeColor(t.name,null,t.data)).attr("role",lh.GRAPHICS_SYMBOL).attr("aria-roledescription","line").attr("aria-label",t=>{let{data:e}=t;return e.map(t=>{let e=this.services.cartesianScales.getRangeIdentifier(t);return t[e]}).join(",")});if(e&&n){let t=r.getMainXScale(),e=r.getMainYScale();if(t&&e){let[n,r]=t.range(),[a,o]=e.range();i.style("overflow","hidden").style("clip",`rect(${o}px, ${r}px, ${a}px, ${n}px)`)}}d.transition().call(e=>this.services.transitions.setupTransition({transition:e,name:"line-update-enter",animate:t})).attr("opacity",t=>+!t.hidden).attr("d",t=>{let{data:e}=t;return c(e)})}destroy(){let t=this.services.events;t.removeEventListener(tW.Legend.ITEM_HOVER,this.handleLegendOnHover),t.removeEventListener(tW.Legend.ITEM_MOUSEOUT,this.handleLegendMouseOut)}}class mo extends f0{constructor(){super(...arguments),this.type="ruler",this.renderType=tY.SVG,this.isXGridEnabled=sB(this.getOptions(),"grid","x","enabled"),this.isYGridEnabled=sB(this.getOptions(),"grid","y","enabled"),this.isEventListenerAdded=!1}render(t=!1){let e=sB(this.getOptions(),"ruler","enabled"),n=sB(this.getOptions(),"tooltip","alwaysShowRulerTooltip"),i=e||n;this.drawBackdrop(),i&&!this.isEventListenerAdded?this.addBackdropEventListeners():!i&&this.isEventListenerAdded&&this.removeBackdropEventListeners()}removeBackdropEventListeners(){this.isEventListenerAdded=!1,this.backdrop.on("mousemove mouseover mouseout",null)}formatTooltipData(t){return t}showRuler(t,[e,n]){let i=this.parent,r=this.services.cartesianScales.getOrientation(),a=this.model.getDisplayData(),[o,s]=this.services.cartesianScales.getRangeScale().range(),l=r===tJ.HORIZONTAL?n:e,c=hx.appendOrSelect(i,"g.ruler").attr("aria-label","ruler"),u=hx.appendOrSelect(c,"line.ruler-line"),h=i.selectAll("[role=graphics-symbol]"),d=a.map(t=>({domainValue:this.services.cartesianScales.getDomainValue(t),originalData:t})).filter(t=>{var e;return(e=t.domainValue)>l-5&&e<l+5});if(this.pointsWithinLine&&d.length===this.pointsWithinLine.length&&d.map(t=>t.domainValue).join()===this.pointsWithinLine.map(t=>t.domainValue).join())return this.pointsWithinLine=d,this.services.events.dispatchEvent(tW.Tooltip.MOVE,{mousePosition:[e,n]});this.pointsWithinLine=d;let f=this.pointsWithinLine.reduce((t,e)=>{if(0===t.length)return t.push(e),t;let n=t[0].domainValue,i=Math.abs(l-e.domainValue),r=Math.abs(l-n);return i>r||(i<r?t=[e]:t.push(e)),t},[]);if(f.length>0){let i=f.map(t=>t.originalData).filter(t=>{let e=this.services.cartesianScales.getRangeIdentifier(t);return null!=t[e]}),a=f.map(t=>t.domainValue),l=h.filter(t=>{let e=this.services.cartesianScales.getDomainValue(t);return a.includes(e)});this.elementsToHighlight&&this.elementsToHighlight.size()>0&&!rc(this.elementsToHighlight,l)&&this.hideRuler(),l.dispatch("mouseover"),this.elementsToHighlight=l,this.services.events.dispatchEvent(tW.Tooltip.SHOW,{event:t,mousePosition:[e,n],hoveredElement:u,data:this.formatTooltipData(i)}),c.attr("opacity",1);let d=f[0];"horizontal"===r?u.attr("x1",s).attr("x2",o).attr("y1",d.domainValue).attr("y2",d.domainValue):u.attr("y1",s).attr("y2",o).attr("x1",d.domainValue).attr("x2",d.domainValue)}else this.hideRuler()}hideRuler(){let t=this.parent,e=hx.appendOrSelect(t,"g.ruler");t.selectAll("[role=graphics-symbol]").dispatch("mouseout"),this.services.events.dispatchEvent(tW.Tooltip.HIDE),e.attr("opacity",0)}addBackdropEventListeners(){this.isEventListenerAdded=!0;let t=this,e=this.services.domUtils.getHolder(),n=this.model.getDisplayData(),i=function(e){let n=ax(e,t.parent.node());t.showRuler(e,n)};if(n.length>100){var r;let a,o=n.length%50*12.5;r=function(e){let{mousePosition:n}=this;t.showRuler(e,n)},a=null,i=function(...t){let n=this;n.mousePosition=ax(t[0],e),clearTimeout(a),a=setTimeout(function(){r.apply(n,t)},o)}}this.backdrop.on("mousemove mouseover",i).on("mouseout",this.hideRuler.bind(this))}drawBackdrop(){let t=this.parent;this.backdrop=hx.appendOrSelect(t,"svg.chart-grid-backdrop")}}let ms=class extends f0{constructor(){super(...arguments),this.type="scatter",this.renderType=tY.SVG,this.handleChartHolderOnHover=()=>{if(!this.parent)throw Error("Parent not defined");this.parent.selectAll("circle.dot").transition("chart-holder-hover-scatter").call(t=>this.services.transitions?.setupTransition({transition:t,name:"chart-holder-hover-scatter"})).attr("opacity",1)},this.handleChartHolderOnMouseOut=()=>{if(!this.parent)throw Error("Parent not defined");this.parent.selectAll("circle.dot").transition("chart-holder-mouseout-scatter").call(t=>this.services.transitions?.setupTransition({transition:t,name:"chart-holder-mouseout-scatter"})).attr("opacity",0)},this.handleLegendOnHover=t=>{let{hoveredElement:e}=t.detail,{groupMapsTo:n}=this.getOptions().data;if(!this.parent)throw Error("Parent not defined");this.parent.selectAll("circle.dot").transition("legend-hover-scatter").call(t=>this.services.transitions?.setupTransition({transition:t,name:"legend-hover-scatter"})).attr("opacity",t=>t[n]!==e.datum().name?.3:1)},this.handleLegendMouseOut=()=>{if(!this.parent)throw Error("Parent not defined");this.parent.selectAll("circle.dot").transition("legend-mouseout-scatter").call(t=>this.services.transitions?.setupTransition({transition:t,name:"legend-mouseout-scatter"})).attr("opacity",1)}}init(){let{events:t}=this.services;if(!t)throw Error("Services events are undefined.");t.addEventListener(tW.Legend.ITEM_HOVER,this.handleLegendOnHover),t.addEventListener(tW.Legend.ITEM_MOUSEOUT,this.handleLegendMouseOut);let{fadeInOnChartHolderMouseover:e}=this.configs;e&&(t.addEventListener(tW.Chart.MOUSEOVER,this.handleChartHolderOnHover),t.addEventListener(tW.Chart.MOUSEOUT,this.handleChartHolderOnMouseOut))}filterBasedOnZoomDomain(t){let{cartesianScales:e}=this.services;if(!e)throw Error("Services cartesianScales are undefined.");let n=e.getDomainIdentifier(t),i=this.model.get("zoomDomain");return void 0!==i?t.filter(t=>t[n].getTime()>=i[0].getTime()&&t[n].getTime()<=i[1].getTime()):t}getScatterData(){let t,e=this.getOptions(),{stacked:n}=this.configs;if(n){let n=Object.keys(e.axes).some(t=>e.axes[t].percentage);t=this.model.getStackedData({groups:this.configs.groups,percentage:n})}else{let{cartesianScales:e}=this.services;if(!e)throw Error("Services cartesianScales are undefined.");t=this.model.getDisplayData(this.configs.groups).filter(t=>{let n=e.getRangeIdentifier(t);return void 0!==t[n]&&null!==t[n]})}return this.filterBasedOnZoomDomain(t)}render(t){if(!(sB(this.getOptions(),"points","enabled")||sB(this.getOptions(),"bubble","enabled")))return;let e=this.services.zoom?.isZoomBarEnabled()||!1,n=this.getComponentContainer({ariaLabel:"scatter points",withinChartClip:e}),{groupMapsTo:i}=this.getOptions().data,{cartesianScales:r}=this.services;if(!r)throw Error("Services cartesianScales are undefined.");let a=r.getDomainIdentifier(),o=n.selectAll("circle.dot").data(this.getScatterData(),t=>`${t[i]}-${t[a]}`);o.exit().attr("opacity",0).remove();let s=o.enter().append("circle").classed("dot",!0).attr("opacity",0).merge(o);this.styleCircles(s,t),this.addEventListeners()}isDatapointThresholdAnomaly(t){let{handleThresholds:e}=this.configs;if(!e)return!1;let{cartesianScales:n}=this.services;if(!n)throw Error("Cartesian scales service is undefined");let i=n.getOrientation(),[r,a]=s$(n.getHighestDomainThreshold(),n.getHighestRangeThreshold(),i),[o,s]=s$(t=>n.getDomainValue(t),t=>n.getRangeValue(t),i),l=o(t),c=s(t);return a&&r?c<=a.scaleValue&&l>=r.scaleValue:a?c<=a.scaleValue:!!r&&l>=r.scaleValue}styleCircles(t,e){let n=this.getOptions(),{filled:i,fillOpacity:r}=n.points,{cartesianScales:a}=this.services;if(!a)throw Error("Cartesian scales service is undefined");let{groupMapsTo:o}=n.data,[s,l]=s$(t=>a.getDomainValue(t),t=>a.getRangeValue(t),a.getOrientation()),{fadeInOnChartHolderMouseover:c}=this.configs;t.raise().classed("dot",!0).attr("class",t=>{let e=a.getDomainIdentifier(t),n=this.model.getIsFilled(t[o],t[e],t,i)?[tX.FILL,tX.STROKE]:[tX.STROKE];return this.model.getColorClassName({classNameTypes:n,dataGroupName:t[o],originalClassName:"dot"})||""}).classed("threshold-anomaly",t=>this.isDatapointThresholdAnomaly(t)).classed("filled",t=>{let e=a.getDomainIdentifier(t);return this.model.getIsFilled(t[o],t[e],t,i)}).classed("unfilled",t=>{let e=a.getDomainIdentifier(t);return!this.model.getIsFilled(t[o],t[e],t,i)}).transition().call(t=>this.services.transitions?.setupTransition({transition:t,name:"scatter-update-enter",animate:e})).attr("cx",s).attr("cy",l).attr("r",n.points.radius).style("fill",t=>{let e=a.getDomainIdentifier(t);if(this.model.getIsFilled(t[o],t[e],t,i))return this.model.getFillColor(t[o],t[e],t)}).style("stroke",t=>{let e=a.getDomainIdentifier(t);return this.model.getStrokeColor(t[o],t[e],t)}).attr("fill-opacity",i?r:1).attr("opacity",+!c).attr("role",lh.GRAPHICS_SYMBOL).attr("aria-roledescription","point").attr("aria-label",t=>{let e=a.getRangeIdentifier(t);return t[e]}),this.addEventListeners()}getTooltipAdditionalItems(t){return null}addEventListeners(){let t=this,{groupMapsTo:e}=t.getOptions().data,n=sB(this.getOptions(),"tooltip","alwaysShowRulerTooltip");if(!this.parent)throw Error("Parent not defined");let i=this.parent.selectAll("circle");n?i.style("pointer-events","none"):i.style("pointer-events",null),i.on("mouseover",function(i,r){let a=lH(this);a.classed("hovered",!0).attr("class",n=>t.model.getColorClassName({classNameTypes:[tX.FILL],dataGroupName:n[e],originalClassName:a.attr("class")})).style("fill",n=>{let i=t.services.cartesianScales?.getDomainIdentifier(n);return t.model.getFillColor(n[e],n[i],n)}).classed("unfilled",!1),n||t.services.events?.dispatchEvent(tW.Tooltip.SHOW,{event:i,hoveredElement:a,data:[r],additionalItems:t.getTooltipAdditionalItems(r)}),t.services.events?.dispatchEvent(tW.Scatter.SCATTER_MOUSEOVER,{event:i,element:a,datum:r})}).on("mousemove",function(e,n){let i=lH(this);t.services.events?.dispatchEvent(tW.Scatter.SCATTER_MOUSEMOVE,{event:e,element:i,datum:n}),t.services.events?.dispatchEvent(tW.Tooltip.MOVE,{event:e})}).on("click",function(e,n){t.services.events?.dispatchEvent(tW.Scatter.SCATTER_CLICK,{event:e,element:lH(this),datum:n})}).on("mouseout",function(n,i){let r=lH(this);if(r.classed("hovered",!1),!t.configs.filled){let{filled:n}=t.getOptions().points,a=t.services.cartesianScales?.getDomainIdentifier(i),o=t.model.getIsFilled(i[e],i[a],i,n);r.classed("unfilled",!o).style("fill",i=>o||n?t.model.getFillColor(i[e],i[a],i):null)}t.services.events?.dispatchEvent(tW.Scatter.SCATTER_MOUSEOUT,{event:n,element:r,datum:i}),t.services.events?.dispatchEvent(tW.Tooltip.HIDE,{hoveredElement:r})})}destroy(){this.parent?.selectAll("circle").on("mousemove",null).on("mouseout",null);let{events:t}=this.services;if(!t)throw Error("Services events undefined");t.removeEventListener(tW.Legend.ITEM_HOVER,this.handleLegendOnHover),t.removeEventListener(tW.Legend.ITEM_MOUSEOUT,this.handleLegendMouseOut),t.removeEventListener(tW.Chart.MOUSEOVER,this.handleChartHolderOnHover),t.removeEventListener(tW.Chart.MOUSEOUT,this.handleChartHolderOnMouseOut)}};class ml extends f0{constructor(t,e,n){super(t,e,n),this.type="axes",this.renderType=tY.SVG,this.truncation={[tq.LEFT]:!1,[tq.RIGHT]:!1,[tq.TOP]:!1,[tq.BOTTOM]:!1},n&&(this.configs=n),this.margins=this.configs.margins}render(t=!0){let e,n,i,r,a,{position:o}=this.configs,s=this.getOptions(),l=sB(s,"axes",o,"visible"),c=this.getComponentContainer({ariaLabel:"axes"}),{width:u,height:h}=hx.getSVGElementSize(c,{useAttrs:!0}),d=hx.appendOrSelect(c,`g.axis.${o}`);if(o===tq.BOTTOM||o===tq.TOP?(e=this.configs.axes[tq.LEFT]?this.margins.left:0,n=this.configs.axes[tq.RIGHT]?u-this.margins.right:u):(e=h-this.margins.bottom,n=this.margins.top),!this.services.cartesianScales)throw Error("Services cartesianScales undefined");let f=this.services.cartesianScales.getScaleByPosition(o);switch(this.scaleType===t0.LABELS||this.scaleType===t0.LABELS_RATIO?f.rangeRound([e,n]):f.range([e,n]),o){case tq.LEFT:i=h8;break;case tq.BOTTOM:i=h4;break;case tq.RIGHT:i=h5;break;case tq.TOP:i=h3}d.attr("aria-label",`${o} axis`);let p=!d.select("g.ticks").empty(),m=hx.appendOrSelect(d,"g.ticks");p||(m.attr("role",`${lh.GRAPHICS_OBJECT} ${lh.GROUP}`),m.attr("aria-label",`${o} ticks`));let g=hx.appendOrSelect(d,"g.ticks.invisible").style("opacity","0").style("pointer-events","none").attr("aria-hidden",!0).attr("aria-label",`invisible ${o} ticks`),v=sB(s,"axes",o),y=this.scaleType===t0.TIME||v.scaleType===t0.TIME,_=o===tq.LEFT||o===tq.RIGHT,b=this.model.get("zoomDomain");if(b&&y&&!_&&f.domain(b),!l)return void m.attr("aria-hidden",!0);let x=sB(v,"scaleType"),E=sB(s,"data","loading"),w=sB(v,"ticks","number"),T=sB(v,"ticks","values"),S=sB(v,"truncation","type"),O=sB(v,"truncation","threshold"),M=sB(v,"truncation","numCharacter"),A=null!==w,k=sB(s,"timeScale"),C=hx.appendOrSelect(g,"g.tick"),D=hx.appendOrSelect(C,"text").text("0"),L=hx.getSVGElementSize(D.node(),{useBBox:!0}).height;C.remove();let R=this.scaleType||v.scaleType||t0.LINEAR,I=i(f).tickSizeOuter(0);if(f.ticks){let t;if(A?t=w:(t=ss.ticks.number,_&&(t=this.getNumberOfFittingTicks(h,L,ss.ticks.verticalSpaceRatio))),1===f.ticks().length&&0===f.ticks()[0]&&(t=0),I.ticks(t),y)if(f.ticks(t).length){let e=sB(s,"timeScale","addSpaceOnEdges"),n=sB(s,"axes",o,"domain"),i=f.copy();e&&!n&&i.nice(t);let r=i.ticks(t);e&&r.length>2&&!n&&(r.splice(r.length-1,1),r.splice(0,1)),I.tickValues(r)}else I.tickValues([])}let N=sB(v,"ticks","formatter"),{code:P,number:U}=sB(s,"locale");if(y){let t=ls(I.tickValues(),sB(s,"timeScale","timeInterval"));r=null===N?(e,n)=>la(e,n,I.tickValues(),t,k,s.locale):(e,n)=>{let i=la(e,n,I.tickValues(),t,k,s.locale);return N(e,n,i)}}else null===N?R===t0.LINEAR&&(r=t=>U(t,P)):r=N;I.tickFormat(r);let[B,H]=this.services.cartesianScales.getScaleByPosition(o).domain();if(T){if(y)T.forEach((t,e)=>{void 0===t.getTime&&(T[e]=new Date(t))}),a=T.filter(t=>{let e=t.getTime();return e>=new Date(B).getTime()&&e<=new Date(H).getTime()});else if(x===t0.LABELS){let t=this.services.cartesianScales.getScaleByPosition(o).domain();a=T.filter(e=>t.includes(e))}else a=T.filter(t=>t>=B&&t<=H);I.tickValues(a)}switch(o){case tq.LEFT:m.attr("transform",`translate(${this.margins.left}, 0)`);break;case tq.BOTTOM:m.attr("transform",`translate(0, ${h-this.margins.bottom})`);break;case tq.RIGHT:m.attr("transform",`translate(${u-this.margins.right}, 0)`);break;case tq.TOP:m.attr("transform",`translate(0, ${this.margins.top})`)}let F=this.model.isDataEmpty();if(v.title){let t,e=hx.appendOrSelect(d,"text.axis-title").html(F||E?"":pW(v.title)),n=sB(v,"titleOrientation");switch(o){case tq.LEFT:n===el.RIGHT?e.attr("transform","rotate(90)").attr("y",0).attr("x",f.range()[0]/2).attr("dy","-0.5em").style("text-anchor","middle"):e.attr("transform","rotate(-90)").attr("y",0).attr("x",-(f.range()[0]/2)).attr("dy","0.75em").style("text-anchor","middle");break;case tq.BOTTOM:let i=h-4;e.attr("transform",`translate(${this.margins.left/2+f.range()[1]/2}, ${i})`);break;case tq.RIGHT:n===el.LEFT?e.attr("transform","rotate(-90)").attr("y",u).attr("x",-(f.range()[0]/2)).style("text-anchor","middle"):e.attr("transform","rotate(90)").attr("y",-u).attr("x",f.range()[0]/2).attr("dy","0.75em").style("text-anchor","middle");break;case tq.TOP:t=hx.getSVGElementSize(e,{useBBox:!0}).height,e.attr("transform",`translate(${this.margins.left/2+f.range()[1]/2}, ${t/2})`).style("text-anchor","middle")}}if(y){let e=ls(I.tickValues(),sB(s,"timeScale","timeInterval")),n=k.showDayName,i=m;t&&(m=m.transition().call(e=>this.services.transitions.setupTransition({transition:e,name:"axis-update",animate:t}))),m=m.call(I),i.selectAll(".tick").data(I.tickValues(),f).order().select("text").attr("class",(t,i)=>lr(t,i,I.tickValues(),e,n)?"tick-label--primary":"tick-label")}else m=t&&p?m.transition().call(e=>this.services.transitions.setupTransition({transition:e,name:"axis-update",animate:t})).call(I):m.call(I);if(g.call(I),o===tq.BOTTOM||o===tq.TOP){let t=!1,e=sB(v,"ticks","rotation");if(e===ea.ALWAYS)t=!0;else if(e===ea.NEVER)t=!1;else if(!e||e===ea.AUTO)if(f.step)t=g.selectAll("g.tick text").nodes().some(t=>hx.getSVGElementSize(t,{useBBox:!0}).width>=f.step());else{let e;t=!1;let n=g.append("text").text("A"),i=hx.getSVGElementSize(n.node(),{useBBox:!0}).width;g.selectAll("g.tick").each(function(){let n=lH(this),r=parseFloat(sB(sN(this),"tx"));null!==r&&e+n.text().length*i*.8>=r&&(t=!0),e=r}),n.remove()}t?(A||(I.ticks(this.getNumberOfFittingTicks(u,L,ss.ticks.horizontalSpaceRatio)),g.call(I),m.call(I)),d.selectAll("g.ticks g.tick text").attr("transform","rotate(-45)").attr("text-anchor",o===tq.TOP?"start":"end")):d.selectAll("g.ticks g.tick text").attr("transform",null).attr("text-anchor",null)}if(E?d.attr("opacity",0):d.attr("opacity",1),m.selectAll("g.tick").attr("aria-label",t=>t),g.selectAll("g.tick").attr("aria-label",t=>t),S!==tQ.NONE&&x===t0.LABELS&&!T){let t=this.services.cartesianScales.getScaleDomain(o);if(t.length>0){let e=c.select(`g.axis.${o} g.ticks g.tick`).html();d.selectAll("g.ticks g.tick").html(e);let n=this;d.selectAll("g.tick text").data(t).text(function(t){return t.length>O?(n.truncation[o]=!0,sP(t,S,M)):t}),this.getInvisibleAxisRef().selectAll("g.tick text").data(t).text(function(t){return t.length>O?sP(t,S,M):t}),d.selectAll("g.ticks").html(this.getInvisibleAxisRef().html()),d.selectAll("g.tick text").data(t)}}this.addEventListeners()}addEventListeners(){let t=this.getComponentContainer(),{position:e}=this.configs,n=hx.appendOrSelect(t,`g.axis.${e}`),i=sB(this.getOptions(),"axes",e),r=sB(i,"scaleType"),a=sB(i,"truncation","threshold"),o=this;n.selectAll("g.tick text").on("mouseover",function(t,e){o.services.events.dispatchEvent(tW.Axis.LABEL_MOUSEOVER,{event:t,element:lH(this),datum:e}),r===t0.LABELS&&e.length>a&&o.services.events.dispatchEvent(tW.Tooltip.SHOW,{event:t,hoveredElement:lH(this),content:e})}).on("mousemove",function(t,e){o.services.events.dispatchEvent(tW.Axis.LABEL_MOUSEMOVE,{event:t,element:lH(this),datum:e}),r===t0.LABELS&&e.length>a&&o.services.events.dispatchEvent(tW.Tooltip.MOVE,{event:t})}).on("click",function(t,e){o.services.events.dispatchEvent(tW.Axis.LABEL_CLICK,{event:t,element:lH(this),datum:e})}).on("mouseout",function(t,e){o.services.events.dispatchEvent(tW.Axis.LABEL_MOUSEOUT,{event:t,element:lH(this),datum:e}),r===t0.LABELS&&o.services.events.dispatchEvent(tW.Tooltip.HIDE)})}getInvisibleAxisRef(){let{position:t}=this.configs;return this.getComponentContainer().select(`g.axis.${t} g.ticks.invisible`)}getTitleRef(){let{position:t}=this.configs;return this.getComponentContainer().select(`g.axis.${t} text.axis-title`)}getNumberOfFittingTicks(t,e,n){var i,r,a,o,s,l;return i=Math.floor(t/(e*n)),r=2,void 0===(a=ss.ticks.number)&&(a=r,r=void 0),void 0!==a&&(a=(a=lN(a))==a?a:0),void 0!==r&&(r=(r=lN(r))==r?r:0),o=lN(i),s=r,l=a,o==o&&(void 0!==l&&(o=o<=l?o:l),void 0!==s&&(o=o>=s?o:s)),o}destroy(){let t=this.getComponentContainer(),{position:e}=this.configs;hx.appendOrSelect(t,`g.axis.${e}`).selectAll("g.tick text").on("mouseover",null).on("mousemove",null).on("mouseout",null)}}class mc extends ml{constructor(t,e,n){super(t,e,n)}render(t=!0){super.render(t),super.destroy();let e=this.configs.position,n=this.getComponentContainer({ariaLabel:"axes"}),i=hx.appendOrSelect(n,`g.axis.${e}`),r=this;i.selectAll("g.tick").each(function(t,n){let i=lH(this);i.classed("tick-hover",!0).attr("tabindex",0===n?0:-1);let a=i.select("text"),{width:o,height:s}=hx.getSVGElementSize(a,{useBBox:!0}),l=hx.appendOrSelect(i,"rect.axis-holder"),c=0,u=0;switch(e){case tq.LEFT:c=-o+Number(a.attr("x")),u=-(s/2);break;case tq.RIGHT:c=Math.abs(Number(a.attr("x"))),u=-(s/2);break;case tq.TOP:c=-(o/2),u=-s+Number(a.attr("y"))/2,r.truncation[e]&&(c=0,l.attr("transform","rotate(-45)"));break;case tq.BOTTOM:c=-(o/2),u=s/2-2,r.truncation[e]&&(c=-o,l.attr("transform","rotate(-45)"))}l.attr("x",c-ss.hover.rectanglePadding).attr("y",u).attr("width",o+2*ss.hover.rectanglePadding).attr("height",s).lower()}),this.addEventListeners()}addEventListeners(){let t=this.getComponentContainer(),{position:e}=this.configs,n=hx.appendOrSelect(t,`g.axis.${e}`),i=sB(this.getOptions(),"axes",e),r=sB(i,"scaleType"),a=sB(i,"truncation","threshold"),o=this;n.selectAll("g.tick.tick-hover").on("mouseover",function(t){let e=lH(this).select("text"),n=e.datum();o.services.events.dispatchEvent(tW.Axis.LABEL_MOUSEOVER,{event:t,element:e,datum:n}),r===t0.LABELS&&n.length>a&&o.services.events.dispatchEvent(tW.Tooltip.SHOW,{event:t,element:e,datum:n})}).on("mousemove",function(t){let e=lH(this).select("text"),n=e.datum();o.services.events.dispatchEvent(tW.Axis.LABEL_MOUSEMOVE,{event:t,element:e,datum:n}),o.services.events.dispatchEvent(tW.Tooltip.MOVE,{event:t})}).on("click",function(t){o.services.events.dispatchEvent(tW.Axis.LABEL_CLICK,{event:t,element:lH(this).select("text"),datum:lH(this).select("text").datum()})}).on("mouseout",function(t){o.services.events.dispatchEvent(tW.Axis.LABEL_MOUSEOUT,{event:t,element:lH(this).select("text"),datum:lH(this).select("text").datum()}),r===t0.LABELS&&o.services.events.dispatchEvent(tW.Tooltip.HIDE)}).on("focus",function(t){let e={clientX:0,clientY:0};if(t.target){t.target.focus();let n=t.target.getBoundingClientRect();e.clientX=n.x,e.clientY=n.y}o.services.events.dispatchEvent(tW.Axis.LABEL_FOCUS,{event:{...t,...e},element:lH(this),datum:lH(this).select("text").datum()})}).on("blur",function(t){o.services.events.dispatchEvent(tW.Axis.LABEL_BLUR,{event:t,element:lH(this),datum:lH(this).select("text").datum()})}).on("keydown",function(t){t.key&&"Escape"===t.key&&(o.services.events.dispatchEvent(tW.Tooltip.HIDE),o.services.events.dispatchEvent(tW.Axis.LABEL_BLUR,{event:t,element:lH(this),datum:lH(this).select("text").datum()})),e===tq.LEFT||e===tq.RIGHT?t.key&&"ArrowUp"===t.key?o.goNext(this,t):t.key&&"ArrowDown"===t.key&&o.goPrevious(this,t):t.key&&"ArrowLeft"===t.key?o.goPrevious(this,t):t.key&&"ArrowRight"===t.key&&o.goNext(this,t)})}goNext(t,e){t.nextElementSibling&&"path"!==t.nextElementSibling.tagName&&t.nextElementSibling.dispatchEvent(new Event("focus")),e.preventDefault()}goPrevious(t,e){t.previousElementSibling&&"path"!==t.previousElementSibling.tagName&&t.previousElementSibling.dispatchEvent(new Event("focus")),e.preventDefault()}destroy(){let t=this.getComponentContainer(),{position:e}=this.configs;hx.appendOrSelect(t,`g.axis.${e}`).selectAll("g.tick.tick-hover").on("mouseover",null).on("mousemove",null).on("mouseout",null).on("focus",null).on("blur",null)}}class mu extends f0{constructor(){super(...arguments),this.type="2D-axes",this.renderType=tY.SVG,this.children={},this.thresholds=[],this.margins={top:0,right:0,bottom:0,left:0}}render(t=!1){let e={},n=Object.keys(tq),i=sB(this.getOptions(),"axes");n.forEach(t=>{i[tq[t]]&&(e[tq[t]]=!0)}),this.configs.axes=e,n.forEach(t=>{let e=tq[t];if(this.configs.axes[e]&&!this.children[e]){let t={position:e,axes:this.configs.axes,margins:this.margins},n=this.model.axisFlavor===ed.DEFAULT?new ml(this.model,this.services,t):new mc(this.model,this.services,t);n.setModel(this.model),n.setServices(this.services),n.setParent(this.parent),this.children[e]=n}}),Object.keys(this.children).forEach(e=>{this.children[e].render(t)});let r={};Object.keys(this.children).forEach(t=>{let e=this.children[t],n=e.configs.position,i=e.getInvisibleAxisRef(),{width:a,height:o}=hx.getSVGElementSize(i,{useBBox:!0}),s=0;if(!e.getTitleRef().empty()){let t=hx.getSVGElementSize(e.getTitleRef(),{useBBox:!0}).height;s=n===tq.LEFT||n===tq.RIGHT?t+5:n===tq.BOTTOM?t+4:t}switch(n){case tq.TOP:r.top=o+s;break;case tq.BOTTOM:r.bottom=o+s;break;case tq.LEFT:r.left=a+s;break;case tq.RIGHT:r.right=a+s}}),this.services.events.dispatchEvent(tW.Axis.RENDER_COMPLETE),Object.keys(r).some(t=>this.margins[t]!==r[t])&&(this.margins=Object.assign(this.margins,r),this.model.set({axesMargins:this.margins},{skipUpdate:!0}),this.services.events.dispatchEvent(tW.ZoomBar.UPDATE),Object.keys(this.children).forEach(t=>{this.children[t].margins=this.margins}),this.render(!0))}}class mh extends f0{constructor(){super(...arguments),this.type="skeleton"}render(t=!0){let e=sB(this.getOptions(),"data","loading");e?this.renderSkeleton(e):this.removeSkeleton()}renderSkeleton(t){if(this.configs.skeleton===t7.GRID)this.renderGridSkeleton(t);else if(this.configs.skeleton===t7.VERT_OR_HORIZ)this.renderVertOrHorizSkeleton(t);else if(this.configs.skeleton===t7.PIE)this.renderPieSkeleton(t);else if(this.configs.skeleton===t7.DONUT)this.renderDonutSkeleton(t);else throw Error(`"${this.configs.skeleton}" is not a valid Skeleton type.`)}renderGridSkeleton(t){this.setScales(),this.drawBackdrop(t),this.drawXGrid(t),this.drawYGrid(t),t&&this.setShimmerEffect("shimmer-lines")}renderVertOrHorizSkeleton(t){let e=this.services.cartesianScales.getOrientation();this.setScales(),this.drawBackdrop(t),e===tJ.VERTICAL&&this.drawYGrid(t),e===tJ.HORIZONTAL&&this.drawXGrid(t),this.setShimmerEffect("shimmer-lines")}renderPieSkeleton(t){let e=this.computeOuterRadius();this.drawRing(e,0,t),t&&this.setShimmerEffect("shimmer-areas")}renderDonutSkeleton(t){let e=this.computeOuterRadius(),n=this.computeInnerRadius();this.drawRing(e,n,t),t&&this.setShimmerEffect("shimmer-areas")}setScales(){let t=this.services.cartesianScales.getMainXScale().range(),e=this.services.cartesianScales.getMainYScale().range();this.xScale=sa().domain([0,1]).range(t),this.yScale=sa().domain([0,1]).range(e)}drawBackdrop(t){let e=this.parent,{width:n,height:i}=hx.getSVGElementSize(e,{useAttrs:!0});this.backdrop=hx.appendOrSelect(e,"svg.chart-skeleton.DAII").attr("role","presentation").attr("width",n).attr("height",i);let r=hx.appendOrSelect(this.backdrop,"rect.chart-skeleton-backdrop");r.attr("width","100%").attr("height","100%");let[a]=this.xScale.range(),[,o]=this.yScale.range();this.backdrop.merge(r).attr("x",a).attr("y",o),r.classed("shimmer-effect-lines",t).classed("empty-state-lines",!t).style("stroke",t?`url(#${this.services.domUtils.generateElementIDString("shimmer-lines")})`:null)}drawXGrid(t){let e=+this.backdrop.attr("width"),n=sB(this.getOptions(),"grid","x","numberOfTicks"),i=this.xScale.ticks(n).map(t=>t*e),r=hx.appendOrSelect(this.backdrop,"g.x.skeleton"),a=r.selectAll("line").data(i);a.enter().append("line").merge(a).attr("x1",t=>t).attr("x2",t=>t).attr("y1",0).attr("y2","100%"),r.selectAll("line").classed("shimmer-effect-lines",t).classed("empty-state-lines",!t).style("stroke",t?`url(#${this.services.domUtils.generateElementIDString("shimmer-lines")})`:null)}drawYGrid(t){let e=+this.backdrop.attr("height"),n=this.backdrop.attr("width"),i=sB(this.getOptions(),"grid","y","numberOfTicks"),r=this.xScale.ticks(i).map(t=>t*e),a=hx.appendOrSelect(this.backdrop,"g.y.skeleton"),o=a.selectAll("line").data(r);o.enter().append("line").merge(o).attr("x1",0).attr("x2",n).attr("y1",t=>t).attr("y2",t=>t),a.selectAll("line").classed("shimmer-effect-lines",t).classed("empty-state-lines",!t).style("stroke",t?`url(#${this.services.domUtils.generateElementIDString("shimmer-lines")})`:null)}drawRing(t,e,n=!0){let i=this.parent,{width:r,height:a}=hx.getSVGElementSize(i,{useAttrs:!0}),o=hx.appendOrSelect(i,"svg.chart-skeleton").attr("width",r).attr("height",a).attr("role","presentation"),s=sB(this.getOptions(),0===e?"pie":"donut","alignment");hx.appendOrSelect(o,"rect.chart-skeleton-area-container").attr("width",r).attr("height",a).attr("fill","none");let l=(function(){var t=fG,e=fj,n=lf(0),i=null,r=fW,a=fY,o=fZ,s=null,l=fV(c);function c(){var c,u,h=+t.apply(this,arguments),d=+e.apply(this,arguments),f=r.apply(this,arguments)-uA,p=a.apply(this,arguments)-uA,m=ub(p-f),g=p>f;if(s||(s=c=l()),d<h&&(u=d,d=h,h=u),d>1e-12)if(m>uk-1e-12)s.moveTo(d*uE(f),d*uS(f)),s.arc(0,0,d,f,p,!g),h>1e-12&&(s.moveTo(h*uE(p),h*uS(p)),s.arc(0,0,h,p,f,g));else{var v,y,_=f,b=p,x=f,E=p,w=m,T=m,S=o.apply(this,arguments)/2,O=S>1e-12&&(i?+i.apply(this,arguments):uO(h*h+d*d)),M=uT(ub(d-h)/2,+n.apply(this,arguments)),A=M,k=M;if(O>1e-12){var C=uC(O/h*uS(S)),D=uC(O/d*uS(S));(w-=2*C)>1e-12?(C*=g?1:-1,x+=C,E-=C):(w=0,x=E=(f+p)/2),(T-=2*D)>1e-12?(D*=g?1:-1,_+=D,b-=D):(T=0,_=b=(f+p)/2)}var L=d*uE(_),R=d*uS(_),I=h*uE(E),N=h*uS(E);if(M>1e-12){var P,U=d*uE(b),B=d*uS(b),H=h*uE(x),F=h*uS(x);if(m<uM)if(P=function(t,e,n,i,r,a,o,s){var l=n-t,c=i-e,u=o-r,h=s-a,d=h*l-u*c;if(!(d*d<1e-12))return d=(u*(e-a)-h*(t-r))/d,[t+d*l,e+d*c]}(L,R,H,F,U,B,I,N)){var $,z=L-P[0],V=R-P[1],G=U-P[0],j=B-P[1],W=1/uS((($=(z*G+V*j)/(uO(z*z+V*V)*uO(G*G+j*j)))>1?0:$<-1?uM:Math.acos($))/2),Y=uO(P[0]*P[0]+P[1]*P[1]);A=uT(M,(h-Y)/(W-1)),k=uT(M,(d-Y)/(W+1))}else A=k=0}T>1e-12?k>1e-12?(v=fX(H,F,L,R,d,k,g),y=fX(U,B,I,N,d,k,g),s.moveTo(v.cx+v.x01,v.cy+v.y01),k<M?s.arc(v.cx,v.cy,k,ux(v.y01,v.x01),ux(y.y01,y.x01),!g):(s.arc(v.cx,v.cy,k,ux(v.y01,v.x01),ux(v.y11,v.x11),!g),s.arc(0,0,d,ux(v.cy+v.y11,v.cx+v.x11),ux(y.cy+y.y11,y.cx+y.x11),!g),s.arc(y.cx,y.cy,k,ux(y.y11,y.x11),ux(y.y01,y.x01),!g))):(s.moveTo(L,R),s.arc(0,0,d,_,b,!g)):s.moveTo(L,R),h>1e-12&&w>1e-12?A>1e-12?(v=fX(I,N,U,B,h,-A,g),y=fX(L,R,H,F,h,-A,g),s.lineTo(v.cx+v.x01,v.cy+v.y01),A<M?s.arc(v.cx,v.cy,A,ux(v.y01,v.x01),ux(y.y01,y.x01),!g):(s.arc(v.cx,v.cy,A,ux(v.y01,v.x01),ux(v.y11,v.x11),!g),s.arc(0,0,h,ux(v.cy+v.y11,v.cx+v.x11),ux(y.cy+y.y11,y.cx+y.x11),g),s.arc(y.cx,y.cy,A,ux(y.y11,y.x11),ux(y.y01,y.x01),!g))):s.arc(0,0,h,E,x,g):s.lineTo(I,N)}else s.moveTo(0,0);if(s.closePath(),c)return s=null,c+""||null}return c.centroid=function(){var n=(+t.apply(this,arguments)+ +e.apply(this,arguments))/2,i=(+r.apply(this,arguments)+ +a.apply(this,arguments))/2-uM/2;return[uE(i)*n,uS(i)*n]},c.innerRadius=function(e){return arguments.length?(t="function"==typeof e?e:lf(+e),c):t},c.outerRadius=function(t){return arguments.length?(e="function"==typeof t?t:lf(+t),c):e},c.cornerRadius=function(t){return arguments.length?(n="function"==typeof t?t:lf(+t),c):n},c.padRadius=function(t){return arguments.length?(i=null==t?null:"function"==typeof t?t:lf(+t),c):i},c.startAngle=function(t){return arguments.length?(r="function"==typeof t?t:lf(+t),c):r},c.endAngle=function(t){return arguments.length?(a="function"==typeof t?t:lf(+t),c):a},c.padAngle=function(t){return arguments.length?(o="function"==typeof t?t:lf(+t),c):o},c.context=function(t){return arguments.length?(s=t??null,c):s},c})().innerRadius(e).outerRadius(t).startAngle(0).endAngle(2*Math.PI),c=t+Math.abs(sd.radiusOffset),u=t+(Math.min(r,a)-2*t)/2,h=hx.appendOrSelect(o,"path").attr("class","skeleton-area-shape").attr("transform",`translate(${c}, ${u})`).attr("d",l).classed("shimmer-effect-areas",n).classed("empty-state-areas",!n).style("fill",n?`url(#${this.services.domUtils.generateElementIDString("shimmer-areas")})`:null),d=t+sd.xOffset;s===t2.CENTER?d=r/2:s===t2.RIGHT&&(d=r-t-sd.xOffset);let f=t+sd.yOffset;h.attr("transform",`translate(${d}, ${f})`)}computeOuterRadius(){let{width:t,height:e}=hx.getSVGElementSize(this.parent,{useAttrs:!0});return Math.min(t,e)/2+sd.radiusOffset}computeInnerRadius(){return this.computeOuterRadius()*(3/4)}setShimmerEffect(t){let e="stop-bg-shimmer",n=this.parent.select(".chart-skeleton"),{width:i}=hx.getSVGElementSize(this.parent,{useAttrs:!0}),r=hx.appendOrSelect(n,"defs").lower(),a=hx.appendOrSelect(r,"linearGradient").attr("id",this.services.domUtils.generateElementIDString(t)).attr("class",t).attr("x1",0-3*.2*i).attr("x2",i).attr("y1",0).attr("y2",0).attr("gradientUnits","userSpaceOnUse").attr("gradientTransform","translate(0, 0)"),o=`
63
+ <stop class="${e}" offset="0"></stop>
64
+ <stop class="stop-shimmer" offset="0.2"></stop>
65
+ <stop class="${e}" offset="0.4"></stop>
66
+ `;a.html(o),function t(){a.attr("gradientTransform",`translate(${0-3*.2*i}, 0)`).transition().duration(2e3).delay(1e3).ease(h7).attr("gradientTransform",`translate(${i+3*.2*i}, 0)`).on("end",t)}()}removeSkeleton(){this.parent.select(".chart-skeleton").remove()}}class md extends f0{constructor(){super(...arguments),this.type="zero-line",this.renderType=tY.SVG}render(t){let e=this.services.cartesianScales.getRangeAxisPosition({groups:this.configs.groups}),n=this.services.cartesianScales.getScaleByPosition(e),[i,r]=n.domain(),a=this.getComponentContainer({isPresentational:!0});if(!(i>0&&r<0||i<0&&r>0))return void a.selectAll("line.domain").remove();let[o,s]=this.services.cartesianScales.getDomainScale().range(),l=+n(0)+.5;l||(l=n.range()[0]);let c=sH({x0:o,x1:s,y0:l,y1:l},this.services.cartesianScales.getOrientation());hx.appendOrSelect(a,"line.domain").transition().call(e=>this.services.transitions.setupTransition({transition:e,name:"zero-line-update",animate:t})).attr("y1",c.y0).attr("y2",c.y1).attr("x1",c.x0).attr("x2",c.x1)}}class mf extends f0{getBarWidth(){let t=this.getOptions();if(t.bars.width)return t.bars.width;let e=this.model.getDisplayData().length,n=this.services.cartesianScales.getMainXScale(),i=hx.getSVGElementSize(this.parent,{useAttrs:!0}).width;if(!n.step){let n=sB(t,"bars","spacingFactor");return Math.min(t.bars.maxWidth,i*n/e)}return Math.min(t.bars.maxWidth,n.step()/2)}isOutsideZoomedDomain(t,e){if(this.model.getDisplayData().length<=1)return!1;let n=this.model.get("zoomDomain");if(void 0!==n){let i=this.services.cartesianScales.getDomainScale();return t<i(n[0])||e>i(n[1])}return!1}}class mp extends mf{constructor(){super(...arguments),this.type="simple-bar",this.renderType=tY.SVG,this.handleLegendOnHover=t=>{let{hoveredElement:e}=t.detail,{groupMapsTo:n}=this.getOptions().data;this.parent.selectAll("path.bar").transition("legend-hover-simple-bar").call(t=>this.services.transitions.setupTransition({transition:t,name:"legend-hover-simple-bar"})).attr("opacity",t=>t[n]!==e.datum().name?.3:1)},this.handleLegendMouseOut=()=>{this.parent.selectAll("path.bar").transition("legend-mouseout-simple-bar").call(t=>this.services.transitions.setupTransition({transition:t,name:"legend-mouseout-simple-bar"})).attr("opacity",1)}}init(){let t=this.services.events;t.addEventListener(tW.Legend.ITEM_HOVER,this.handleLegendOnHover),t.addEventListener(tW.Legend.ITEM_MOUSEOUT,this.handleLegendMouseOut)}render(t){let{groupMapsTo:e}=this.getOptions().data,n=this.getComponentContainer({ariaLabel:"bar graphs",withinChartClip:!0}),i=this.model.getDisplayData(this.configs.groups),r=this.services.cartesianScales.getOrientation(),a=n.selectAll("path.bar").data(i,t=>t[e]);a.exit().attr("opacity",0).remove(),a.enter().append("path").attr("opacity",0).merge(a).classed("bar",!0).attr("width",this.getBarWidth.bind(this)).transition().call(e=>this.services.transitions.setupTransition({transition:e,name:"bar-update-enter",animate:t})).attr("class",t=>this.model.getColorClassName({classNameTypes:[tX.FILL],dataGroupName:t[e],originalClassName:"bar"})).style("fill",t=>{let n=this.services.cartesianScales.getDomainIdentifier(t);return this.model.getFillColor(t[e],t[n],t)}).attr("d",t=>{let e,n,i=this.services.cartesianScales.getRangeIdentifier(),a=this.getBarWidth(),o=t[i],s=this.services.cartesianScales.getDomainValue(t)-a/2,l=s+a;if(Array.isArray(o)&&2===o.length)e=this.services.cartesianScales.getRangeValue(o[0]),n=this.services.cartesianScales.getRangeValue(o[1]);else{let i=this.services.cartesianScales.getRangeScale().domain()[0];e=this.services.cartesianScales.getRangeValue(Math.max(0,i)),n=this.services.cartesianScales.getRangeValue(t)}let c=Math.abs(n-e);if(0!==c&&c<2&&(n=o>0&&r===tJ.VERTICAL||o<0&&r===tJ.HORIZONTAL?e-2:e+2),!this.isOutsideZoomedDomain(s,l))return sF({x0:s,x1:l,y0:e,y1:n},r)}).attr("opacity",1).attr("role",lh.GRAPHICS_SYMBOL).attr("aria-roledescription","bar").attr("aria-label",t=>t.value),this.addEventListeners()}addEventListeners(){let t=this,e=sB(this.getOptions(),"tooltip","alwaysShowRulerTooltip"),n=this.parent.selectAll("path.bar");e?n.style("pointer-events","none"):n.style("pointer-events",null),n.on("mouseover",function(n,i){let r=lH(this);r.classed("hovered",!0),t.services.events.dispatchEvent(tW.Bar.BAR_MOUSEOVER,{event:n,element:r,datum:i}),e||t.services.events.dispatchEvent(tW.Tooltip.SHOW,{event:n,hoveredElement:r,data:[i]})}).on("mousemove",function(e,n){t.services.events.dispatchEvent(tW.Bar.BAR_MOUSEMOVE,{event:e,element:lH(this),datum:n}),t.services.events.dispatchEvent(tW.Tooltip.MOVE,{event:e})}).on("click",function(e,n){t.services.events.dispatchEvent(tW.Bar.BAR_CLICK,{event:e,element:lH(this),datum:n})}).on("mouseout",function(e,n){let i=lH(this);i.classed("hovered",!1),t.services.events.dispatchEvent(tW.Bar.BAR_MOUSEOUT,{event:e,element:i,datum:n}),t.services.events.dispatchEvent(tW.Tooltip.HIDE,{hoveredElement:i})})}destroy(){this.parent.selectAll("path.bar").on("mouseover",null).on("mousemove",null).on("mouseout",null);let t=this.services.events;t.removeEventListener(tW.Legend.ITEM_HOVER,this.handleLegendOnHover),t.removeEventListener(tW.Legend.ITEM_MOUSEOUT,this.handleLegendMouseOut)}}class mm extends mh{constructor(){super(...arguments),this.type="skeleton-lines"}render(t=!0){let e=sB(this.getOptions(),"data","loading"),n=!sB(this.getOptions(),"grid","x","enabled")&&!sB(this.getOptions(),"grid","y","enabled")&&!sB(this.getOptions(),"axes","bottom","visible")&&!sB(this.getOptions(),"axes","left","visible");e&&!n?super.renderGridSkeleton(e):e&&n?this.renderSparklineSkeleton(e):this.removeSkeleton()}renderSparklineSkeleton(t){this.setScales(),this.drawBackdrop(t),this.drawSparkline(t),this.updateBackdropStyle(),t&&this.setShimmerEffect("shimmer-lines")}drawSparkline(t){let e=this.backdrop.attr("width"),n=hx.appendOrSelect(this.backdrop,"g.y.skeleton"),i=n.selectAll("line").data([100]);i.enter().append("line").merge(i).attr("x1",0).attr("x2",e).attr("y1",t=>t).attr("y2",t=>t),n.selectAll("line").classed("shimmer-effect-lines",t).classed("empty-state-lines",!t).style("stroke",t?`url(#${this.services.domUtils.generateElementIDString("shimmer-lines")})`:null)}updateBackdropStyle(){let t=this.parent;this.backdrop=hx.appendOrSelect(t,"svg.chart-skeleton.DAII").attr("role","presentation"),hx.appendOrSelect(this.backdrop,"rect.chart-skeleton-backdrop").classed("shimmer-effect-lines",!1).classed("shimmer-effect-sparkline",!0).style("stroke",null)}}var mg={value:function(){}};function mv(){for(var t,e=0,n=arguments.length,i={};e<n;++e){if(!(t=arguments[e]+"")||t in i||/[\s.]/.test(t))throw Error("illegal type: "+t);i[t]=[]}return new my(i)}function my(t){this._=t}function m_(t,e,n){for(var i=0,r=t.length;i<r;++i)if(t[i].name===e){t[i]=mg,t=t.slice(0,i).concat(t.slice(i+1));break}return null!=n&&t.push({name:e,value:n}),t}my.prototype=mv.prototype={constructor:my,on:function(t,e){var n,i=this._,r=(t+"").trim().split(/^|\s+/).map(function(t){var e="",n=t.indexOf(".");if(n>=0&&(e=t.slice(n+1),t=t.slice(0,n)),t&&!i.hasOwnProperty(t))throw Error("unknown type: "+t);return{type:t,name:e}}),a=-1,o=r.length;if(arguments.length<2){for(;++a<o;)if((n=(t=r[a]).type)&&(n=function(t,e){for(var n,i=0,r=t.length;i<r;++i)if((n=t[i]).name===e)return n.value}(i[n],t.name)))return n;return}if(null!=e&&"function"!=typeof e)throw Error("invalid callback: "+e);for(;++a<o;)if(n=(t=r[a]).type)i[n]=m_(i[n],t.name,e);else if(null==e)for(n in i)i[n]=m_(i[n],t.name,null);return this},copy:function(){var t={},e=this._;for(var n in e)t[n]=e[n].slice();return new my(t)},call:function(t,e){if((n=arguments.length-2)>0)for(var n,i,r=Array(n),a=0;a<n;++a)r[a]=arguments[a+2];if(!this._.hasOwnProperty(t))throw Error("unknown type: "+t);for(i=this._[t],a=0,n=i.length;a<n;++a)i[a].value.apply(e,r)},apply:function(t,e,n){if(!this._.hasOwnProperty(t))throw Error("unknown type: "+t);for(var i=this._[t],r=0,a=i.length;r<a;++r)i[r].value.apply(e,n)}};let mb=function(t){if(Object.prototype.hasOwnProperty.call(t,"__esModule"))return t;var e=t.default;if("function"==typeof e){var n=function t(){var n=!1;try{n=this instanceof t}catch{}return n?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};n.prototype=e.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(t).forEach(function(e){var i=Object.getOwnPropertyDescriptor(t,e);Object.defineProperty(n,e,i.get?i:{enumerable:!0,get:function(){return t[e]}})}),n}(Object.freeze(Object.defineProperty({__proto__:null,dispatch:mv},Symbol.toStringTag,{value:"Module"})));function mx(t){return(null==t?0:t.length)?io(t,1):[]}function mE(t,e,n){var i=-1,r=t.length;e<0&&(e=-e>r?0:r+e),(n=n>r?r:n)<0&&(n+=r),r=e>n?0:n-e>>>0,e>>>=0;for(var a=Array(r);++i<r;)a[i]=t[i+e];return a}function mw(t){return id(t)?void 0:t}!function(){if(tg)return;tg=1;let t=mb.dispatch,e=Math.PI/180,n={archimedean:c,rectangular:function(t){var e=4*t[0]/t[1],n=0,i=0;return function(t){var r=t<0?-1:1;switch(Math.sqrt(1+4*r*t)-r&3){case 0:n+=e;break;case 1:i+=4;break;case 2:n-=e;break;default:i-=4}return[n,i]}}};function i(t){return t.text}function r(){return"serif"}function a(){return"normal"}function o(t){return Math.sqrt(t.value)}function s(){return(~~(6*random())-3)*30}function l(){return 1}function c(t){var e=t[0]/t[1];return function(t){return[e*(t*=.1)*Math.cos(t),t*Math.sin(t)]}}function u(){return document.createElement("canvas")}function h(t){return"function"==typeof t?t:function(){return t}}}();var mT=ne(nd(td=function(t,e){var n={};if(null==t)return n;var i=!1;e=ez(e,function(e){return e=n9(e,t),i||(i=e.length>1),e}),nu(t,iM(t),n),i&&(n=i5(n,7,mw));for(var r=e.length;r--;)!function(t,e){var n,i;e=n9(e,t),n=t,null==(t=(i=e).length<2?n:it(n,mE(i,0,-1)))||delete t[n7(rv(e))]}(n,e[r]);return n},void 0,mx),td+"");function mS(t){return Math.log(t)}function mO(t){return Math.exp(t)}function mM(t){return-Math.log(-t)}function mA(t){return-Math.exp(-t)}function mk(t){return isFinite(t)?+("1e"+t):t<0?0:t}function mC(t){return(e,n)=>-t(-e,n)}function mD(t,e,n){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+e)/6,(t._y0+4*t._y1+n)/6)}function mL(t){this._context=t}function mR(t){return new mL(t)}function mI(t){this._context=t}function mN(t){return new mI(t)}function mP(t){this._context=t}function mU(t){return new mP(t)}function mB(t,e){this._basis=new mL(t),this._beta=e}mL.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:mD(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t*=1,e*=1,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:mD(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},mI.prototype={areaStart:uR,areaEnd:uR,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x2,this._y2),this._context.closePath();break;case 2:this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break;case 3:this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4)}},point:function(t,e){switch(t*=1,e*=1,this._point){case 0:this._point=1,this._x2=t,this._y2=e;break;case 1:this._point=2,this._x3=t,this._y3=e;break;case 2:this._point=3,this._x4=t,this._y4=e,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+e)/6);break;default:mD(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},mP.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t*=1,e*=1,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+t)/6,i=(this._y0+4*this._y1+e)/6;this._line?this._context.lineTo(n,i):this._context.moveTo(n,i);break;case 3:this._point=4;default:mD(this,t,e)}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e}},mB.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var t=this._x,e=this._y,n=t.length-1;if(n>0)for(var i,r=t[0],a=e[0],o=t[n]-r,s=e[n]-a,l=-1;++l<=n;)i=l/n,this._basis.point(this._beta*t[l]+(1-this._beta)*(r+i*o),this._beta*e[l]+(1-this._beta)*(a+i*s));this._x=this._y=null,this._basis.lineEnd()},point:function(t,e){this._x.push(+t),this._y.push(+e)}};let mH=function t(e){function n(t){return 1===e?new mL(t):new mB(t,e)}return n.beta=function(e){return t(+e)},n}(.85);function mF(t,e,n){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-e),t._y2+t._k*(t._y1-n),t._x2,t._y2)}function m$(t,e){this._context=t,this._k=(1-e)/6}m$.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:mF(this,this._x1,this._y1)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t*=1,e*=1,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2,this._x1=t,this._y1=e;break;case 2:this._point=3;default:mF(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};let mz=function t(e){function n(t){return new m$(t,e)}return n.tension=function(e){return t(+e)},n}(0);function mV(t,e){this._context=t,this._k=(1-e)/6}mV.prototype={areaStart:uR,areaEnd:uR,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){switch(t*=1,e*=1,this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:mF(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};let mG=function t(e){function n(t){return new mV(t,e)}return n.tension=function(e){return t(+e)},n}(0);function mj(t,e){this._context=t,this._k=(1-e)/6}mj.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){switch(t*=1,e*=1,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:mF(this,t,e)}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};let mW=function t(e){function n(t){return new mj(t,e)}return n.tension=function(e){return t(+e)},n}(0);function mY(t,e,n){var i=t._x1,r=t._y1,a=t._x2,o=t._y2;if(t._l01_a>1e-12){var s=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,l=3*t._l01_a*(t._l01_a+t._l12_a);i=(i*s-t._x0*t._l12_2a+t._x2*t._l01_2a)/l,r=(r*s-t._y0*t._l12_2a+t._y2*t._l01_2a)/l}if(t._l23_a>1e-12){var c=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,u=3*t._l23_a*(t._l23_a+t._l12_a);a=(a*c+t._x1*t._l23_2a-e*t._l12_2a)/u,o=(o*c+t._y1*t._l23_2a-n*t._l12_2a)/u}t._context.bezierCurveTo(i,r,a,o,t._x2,t._y2)}function mZ(t,e){this._context=t,this._alpha=e}mZ.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2)}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t*=1,e*=1,this._point){var n=this._x2-t,i=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+i*i,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3;default:mY(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};let mX=function t(e){function n(t){return e?new mZ(t,e):new m$(t,0)}return n.alpha=function(e){return t(+e)},n}(.5);function mq(t,e){this._context=t,this._alpha=e}mq.prototype={areaStart:uR,areaEnd:uR,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:this._context.moveTo(this._x3,this._y3),this._context.closePath();break;case 2:this._context.lineTo(this._x3,this._y3),this._context.closePath();break;case 3:this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5)}},point:function(t,e){if(t*=1,e*=1,this._point){var n=this._x2-t,i=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+i*i,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=e;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=e);break;case 2:this._point=3,this._x5=t,this._y5=e;break;default:mY(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};let mK=function t(e){function n(t){return e?new mq(t,e):new mV(t,0)}return n.alpha=function(e){return t(+e)},n}(.5);function mQ(t,e){this._context=t,this._alpha=e}mQ.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||0!==this._line&&3===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){if(t*=1,e*=1,this._point){var n=this._x2-t,i=this._y2-e;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+i*i,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:mY(this,t,e)}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=e}};let mJ=function t(e){function n(t){return e?new mQ(t,e):new mj(t,0)}return n.alpha=function(e){return t(+e)},n}(.5);function m0(t,e,n){var i=t._x1-t._x0,r=e-t._x1,a=(t._y1-t._y0)/(i||r<0&&-0),o=(n-t._y1)/(r||i<0&&-0);return((a<0?-1:1)+(o<0?-1:1))*Math.min(Math.abs(a),Math.abs(o),.5*Math.abs((a*r+o*i)/(i+r)))||0}function m1(t,e){var n=t._x1-t._x0;return n?(3*(t._y1-t._y0)/n-e)/2:e}function m2(t,e,n){var i=t._x0,r=t._y0,a=t._x1,o=t._y1,s=(a-i)/3;t._context.bezierCurveTo(i+s,r+s*e,a-s,o-s*n,a,o)}function m3(t){this._context=t}function m5(t){this._context=new m4(t)}function m4(t){this._context=t}function m8(t){return new m3(t)}function m6(t){return new m5(t)}function m9(t){this._context=t}function m7(t){var e,n,i=t.length-1,r=Array(i),a=Array(i),o=Array(i);for(r[0]=0,a[0]=2,o[0]=t[0]+2*t[1],e=1;e<i-1;++e)r[e]=1,a[e]=4,o[e]=4*t[e]+2*t[e+1];for(r[i-1]=2,a[i-1]=7,o[i-1]=8*t[i-1]+t[i],e=1;e<i;++e)n=r[e]/a[e-1],a[e]-=n,o[e]-=n*o[e-1];for(r[i-1]=o[i-1]/a[i-1],e=i-2;e>=0;--e)r[e]=(o[e]-r[e+1])/a[e];for(a[i-1]=(t[i]+r[i-1])/2,e=0;e<i-1;++e)a[e]=2*t[e+1]-r[e+1];return[r,a]}function gt(t){return new m9(t)}function ge(t,e){this._context=t,this._t=e}function gn(t){return new ge(t,.5)}function gi(t){return new ge(t,0)}function gr(t){return new ge(t,1)}m3.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:m2(this,this._t0,m1(this,this._t0))}(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line=1-this._line},point:function(t,e){var n=NaN;if(e*=1,(t*=1)!==this._x1||e!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;break;case 2:this._point=3,m2(this,m1(this,n=m0(this,t,e)),n);break;default:m2(this,this._t0,n=m0(this,t,e))}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=e,this._t0=n}}},(m5.prototype=Object.create(m3.prototype)).point=function(t,e){m3.prototype.point.call(this,e,t)},m4.prototype={moveTo:function(t,e){this._context.moveTo(e,t)},closePath:function(){this._context.closePath()},lineTo:function(t,e){this._context.lineTo(e,t)},bezierCurveTo:function(t,e,n,i,r,a){this._context.bezierCurveTo(e,t,i,n,a,r)}},m9.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var t=this._x,e=this._y,n=t.length;if(n)if(this._line?this._context.lineTo(t[0],e[0]):this._context.moveTo(t[0],e[0]),2===n)this._context.lineTo(t[1],e[1]);else for(var i=m7(t),r=m7(e),a=0,o=1;o<n;++a,++o)this._context.bezierCurveTo(i[0][a],r[0][a],i[1][a],r[1][a],t[o],e[o]);(this._line||0!==this._line&&1===n)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(t,e){this._x.push(+t),this._y.push(+e)}},ge.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&2===this._point&&this._context.lineTo(this._x,this._y),(this._line||0!==this._line&&1===this._point)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(t,e){switch(t*=1,e*=1,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,e):this._context.moveTo(t,e);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,e),this._context.lineTo(t,e);else{var n=this._x*(1-this._t)+t*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,e)}}this._x=t,this._y=e}};class ga extends hb{zoomIn(t,e,n){let i,r,a,o=n||sl;t&&(i=t.x,r=t.y,a=2);let{width:s,height:l}=hx.getSVGElementSize(this.services.domUtils.getHolder(),{useClientDimensions:!0});e.transition().duration(o.duration).ease(o.ease).attr("transform",`translate(${s/2}, ${l/2}) scale(${a}) translate(${-i},${-r})`),this.services.events.dispatchEvent(tW.CanvasZoom.CANVAS_ZOOM_IN,{element:lH(t)})}zoomOut(t,e){let n=e||sl;t.transition().duration(n.duration).ease(n.ease).attr("transform",""),this.services.events.dispatchEvent(tW.CanvasZoom.CANVAS_ZOOM_OUT)}}class go extends hb{init(){this.documentFragment=document.createDocumentFragment()}addEventListener(t,e){this.documentFragment.addEventListener(t,e)}removeEventListener(t,e){this.documentFragment.removeEventListener(t,e)}dispatchEvent(t,e){let n;e?n=new CustomEvent(t,{detail:e}):(n=document.createEvent("Event")).initEvent(t,!1,!0),this.documentFragment.dispatchEvent(n)}}class gs extends hb{constructor(t,e){super(t,e)}downloadCSV(t,e){let n=document.createElement("a"),i="text/csv;encoding:utf-8";if(navigator.msSaveBlob)navigator.msSaveBlob(new Blob([t],{type:i}),e);else if(URL&&"download"in n){let r=URL.createObjectURL(new Blob([t],{type:i}));n.href=r,n.setAttribute("download",e),document.body.appendChild(n),n.click(),document.body.removeChild(n),URL.revokeObjectURL(r)}else location.href=`data:application/octet-stream,${encodeURIComponent(t)}`}downloadImage(t,e){let n=document.createElement("a");n.download=e,n.href=t,document.body.appendChild(n),n.click(),document.body.removeChild(n)}}class gl extends hb{constructor(){super(...arguments),this.pendingTransitions={}}init(){this.services.events?.addEventListener(tW.Model.UPDATE,()=>{this.pendingTransitions={}})}setupTransition({transition:t,name:e,animate:n}){return this.pendingTransitions[t._id]=t,t.on("end interrupt cancel",()=>{delete this.pendingTransitions[t._id]}),!1===this.model.getOptions().animations||!1===n?t.duration(0):t.duration(sB(sm,e,"duration")||sm.default.duration)}getPendingTransitions(){return this.pendingTransitions}}function gc(t,e){let n=eE(t)-eE(e);return n<0?-1:n>0?1:n}function gu(t,e,n){let i=eE(t,n?.in);if(isNaN(e))return e_(t,NaN);if(!e)return i;let r=i.getDate(),a=e_(t,i.getTime());return a.setMonth(i.getMonth()+e+1,0),r>=a.getDate()?a:(i.setFullYear(a.getFullYear(),a.getMonth(),r),i)}function gh(t,e){let n=t.getFullYear()-e.getFullYear()||t.getMonth()-e.getMonth()||t.getDate()-e.getDate()||t.getHours()-e.getHours()||t.getMinutes()-e.getMinutes()||t.getSeconds()-e.getSeconds()||t.getMilliseconds()-e.getMilliseconds();return n<0?-1:n>0?1:n}function gd(t,e,n){let i=eE(t,n?.in);return isNaN(e)?e_(t,NaN):(e&&i.setDate(i.getDate()+e),i)}function gf(t){return t=>{let e=(0,Math.trunc)(t);return 0===e?0:e}}function gp(t,e,n){var i;return i=36e5*e,e_(t,+eE(t)+i)}function gm(t,e,n){let i=(eE(t)-eE(e))/6e4;return gf()(i)}function gg(t,e,n){let i=eE(t,n?.in);return i.setTime(i.getTime()+6e4*e),i}function gv(t,e,n){let i=(eE(t)-eE(e))/1e3;return gf()(i)}function gy(t,e,n){var i;return i=1e3*e,e_(t,+eE(t)+i)}class g_ extends hb{constructor(){super(...arguments),this.scaleTypes={top:null,right:null,bottom:null,left:null},this.scales={top:null,right:null,bottom:null,left:null}}getDomainAxisPosition({datum:t=null}={}){if(this.dualAxes&&t){let e=this.model.getOptions(),{groupMapsTo:n}=e.data,i=sB(e,"axes",this.secondaryDomainAxisPosition),r=t[n];if(i?.correspondingDatasets&&i.correspondingDatasets.includes(r))return this.secondaryDomainAxisPosition}return this.domainAxisPosition}getRangeAxisPosition({datum:t=null,groups:e=null}={}){if(this.dualAxes){let n,i=this.model.getOptions(),{groupMapsTo:r}=i.data,a=sB(i,"axes",this.secondaryRangeAxisPosition);if(null!==t?n=t[r]:e&&e.length>0&&(n=e[0]),a?.correspondingDatasets&&a.correspondingDatasets.includes(n))return this.secondaryRangeAxisPosition}return this.rangeAxisPosition}getAxisOptions(t){return sB(this.model.getOptions(),"axes",t)}getDomainAxisOptions(){let t=this.getDomainAxisPosition();return this.getAxisOptions(t)}getRangeAxisOptions(){let t=this.getRangeAxisPosition();return this.getAxisOptions(t)}getScaleLabel(t){return this.getAxisOptions(t).title||(t===tq.BOTTOM||t===tq.TOP?"x-value":"y-value")}getDomainLabel(){return this.getScaleLabel(this.getDomainAxisPosition())}getRangeLabel(){return this.getScaleLabel(this.getRangeAxisPosition())}update(){this.determineAxisDuality(),this.findDomainAndRangeAxes(),this.determineOrientation(),Object.keys(tq).map(t=>tq[t]).forEach(t=>{this.scales[t]=this.createScale(t)})}findDomainAndRangeAxes(){let t=this.findVerticalAxesPositions(),e=this.findHorizontalAxesPositions(),n=this.findDomainAndRangeAxesPositions(t,e);this.domainAxisPosition=n.primaryDomainAxisPosition,this.rangeAxisPosition=n.primaryRangeAxisPosition,this.isDualAxes()&&(this.secondaryDomainAxisPosition=n.secondaryDomainAxisPosition,this.secondaryRangeAxisPosition=n.secondaryRangeAxisPosition)}determineOrientation(){(this.rangeAxisPosition===tq.LEFT||this.rangeAxisPosition===tq.RIGHT)&&(this.domainAxisPosition===tq.BOTTOM||this.domainAxisPosition===tq.TOP)?this.orientation=tJ.VERTICAL:this.orientation=tJ.HORIZONTAL}isDualAxes(){return this.dualAxes}determineAxisDuality(){let t=sB(this.model.getOptions(),"axes");(t[tq.LEFT]?.correspondingDatasets&&t[tq.RIGHT]||t[tq.RIGHT]?.correspondingDatasets&&t[tq.LEFT]||t[tq.TOP]?.correspondingDatasets&&t[tq.BOTTOM]||t[tq.BOTTOM]?.correspondingDatasets&&t[tq.TOP])&&(this.dualAxes=!0)}getCustomDomainValuesByposition(t){let e=sB(this.model.getOptions(),"axes",t,"domain");if(e&&!Array.isArray(e))throw Error(`Domain in ${t} axis is not a valid array`);if(Array.isArray(e)&&(this.scaleTypes[t]===t0.LINEAR||this.scaleTypes[t]===t0.TIME)&&2!==e.length)throw Error(`There can only be 2 elements in domain for scale type: ${this.scaleTypes[t]}`);return e}getOrientation(){return this.orientation}getScaleByPosition(t){return this.scales[t]}getScaleTypeByPosition(t){return this.scaleTypes[t]}getDomainAxisScaleType(){let t=this.getDomainAxisPosition();return this.getScaleTypeByPosition(t)}getRangeAxisScaleType(){let t=this.getRangeAxisPosition();return this.getScaleTypeByPosition(t)}getDomainScale(){return this.scales[this.domainAxisPosition]}getRangeScale(){return this.scales[this.rangeAxisPosition]}getMainXAxisPosition(){let t=[tq.BOTTOM,tq.TOP];return[this.domainAxisPosition,this.rangeAxisPosition].find(e=>t.indexOf(e)>-1)}getMainYAxisPosition(){let t=[tq.LEFT,tq.RIGHT];return[this.domainAxisPosition,this.rangeAxisPosition].find(e=>t.indexOf(e)>-1)}getMainXScale(){return this.scales[this.getMainXAxisPosition()]}getMainYScale(){return this.scales[this.getMainYAxisPosition()]}getValueFromScale(t,e,n,i){let r,{mapsTo:a}=sB(this.model.getOptions(),"axes")[n],o=null!==sB(i,a)?i[a]:i;switch(e){case t0.LABELS:r=t(o)+t.step()/2;break;case t0.TIME:r=t(new Date(o));break;default:r=t(o)}return r}getBoundedScaledValues(t){let{bounds:e}=this.model.getOptions(),n=this.getRangeAxisPosition({datum:t}),i=this.scales[n],{mapsTo:r}=sB(this.model.getOptions(),"axes")[n],a=void 0!==t[r]?t[r]:t;return[i(null!==sB(t,e.upperBoundMapsTo)?t[e.upperBoundMapsTo]:a),i(null!==sB(t,e.lowerBoundMapsTo)?t[e.lowerBoundMapsTo]:a)]}getValueThroughAxisPosition(t,e){let n=this.scaleTypes[t],i=this.scales[t];return this.getValueFromScale(i,n,t,e)}getDomainValue(t){let e=this.getDomainAxisPosition({datum:t});return this.getValueThroughAxisPosition(e,t)}getRangeValue(t){let e=this.getRangeAxisPosition({datum:t});return this.getValueThroughAxisPosition(e,t)}getMainXScaleType(){return this.getScaleTypeByPosition(this.getMainXAxisPosition())}getMainYScaleType(){return this.getScaleTypeByPosition(this.getMainYAxisPosition())}getDomainIdentifier(t){return sB(this.model.getOptions(),"axes",this.getDomainAxisPosition({datum:t}),"mapsTo")}getRangeIdentifier(t){return sB(this.model.getOptions(),"axes",this.getRangeAxisPosition({datum:t}),"mapsTo")}extendsDomain(t,e){let n=this.model.getOptions(),i=sB(n,"axes",t);return i.scaleType===t0.TIME?function(t,e){var n;let i=new Date(t[0]),r=new Date(t[1]);return function(t,e,n){let[i,r]=eb(void 0,t,e),a=gc(i,r),o=Math.abs(function(t,e,n){let[i,r]=eb(void 0,t,e);return i.getFullYear()-r.getFullYear()}(i,r));i.setFullYear(1584),r.setFullYear(1584);let s=gc(i,r)===-a,l=a*(o-s);return 0===l?0:l}(r,i)>1?[gu(i,-(12*e),void 0),gu(r,12*e,void 0)]:function(t,e,n){let[i,r,a]=eb(void 0,t,t,e),o=gc(r,a),s=Math.abs(function(t,e,n){let[i,r]=eb(void 0,t,e);return 12*(i.getFullYear()-r.getFullYear())+(i.getMonth()-r.getMonth())}(r,a));if(s<1)return 0;1===r.getMonth()&&r.getDate()>27&&r.setDate(30),r.setMonth(r.getMonth()-o*s);let l=gc(r,a)===-o;(function(t,e){let n=eE(t,void 0);return+function(t,e){let n=eE(t,e?.in);return n.setHours(23,59,59,999),n}(n,void 0)==+function(t,e){let n=eE(t,e?.in),i=n.getMonth();return n.setFullYear(n.getFullYear(),i+1,0),n.setHours(23,59,59,999),n}(n,e)})(i)&&1===s&&1===gc(i,a)&&(l=!1);let c=o*(s-l);return 0===c?0:c}(r,i)>1?[gu(i,-e,void 0),gu(r,e)]:function(t,e,n){let[i,r]=eb(void 0,t,e),a=gh(i,r),o=Math.abs(sG(i,r));i.setDate(i.getDate()-a*o);let s=+(gh(i,r)===-a),l=a*(o-s);return 0===l?0:l}(r,i)>1?[gd(i,-e,void 0),gd(r,e)]:function(t,e,n){let[i,r]=eb(void 0,t,e);return gf()((i-r)/36e5)}(r,i)>1?[gp(i,-e),gp(r,e)]:gm(r,i)>30?[gg(i,-(30*e),void 0),gg(r,30*e)]:gm(r,i)>1?[gg(i,-e,void 0),gg(r,e)]:gv(r,i)>15?[gy(i,-(15*e)),gy(r,15*e)]:gv(r,i)>1?[gy(i,-e),gy(r,e)]:[i,r]}(e,sB(n,"timeScale","addSpaceOnEdges")):function([t,e],n,i){let r=(e-t)*n,a=t>=0&&t-r<0?0:t-r;if(i===t0.LOG&&a<=0){if(t<=0)throw Error("Data must have values greater than 0 if log scale type is used.");a=t}return[a,e<=0&&e+r>0?0:e+r]}(e,ss.paddingRatio,i.scaleType)}findVerticalAxesPositions(){let t=sB(this.model.getOptions(),"axes"),e=this.isDualAxes();return null===sB(t,tq.LEFT)&&null!==sB(t,tq.RIGHT)||!0===sB(t,tq.RIGHT,"main")||e&&sB(t,tq.LEFT,"correspondingDatasets")?{primary:tq.RIGHT,secondary:tq.LEFT}:{primary:tq.LEFT,secondary:tq.RIGHT}}findHorizontalAxesPositions(){let t=sB(this.model.getOptions(),"axes"),e=this.isDualAxes();return null===sB(t,tq.BOTTOM)&&null!==sB(t,tq.TOP)||!0===sB(t,tq.TOP,"main")||e&&sB(t,tq.BOTTOM,"correspondingDatasets")?{primary:tq.TOP,secondary:tq.BOTTOM}:{primary:tq.BOTTOM,secondary:tq.TOP}}findDomainAndRangeAxesPositions(t,e){let n=this.model.getOptions(),i=sB(n,"axes",t.primary),r=sB(n,"axes",e.primary),a=i.scaleType||t0.LINEAR,o=r.scaleType||t0.LINEAR,s={primaryDomainAxisPosition:null,secondaryDomainAxisPosition:null,primaryRangeAxisPosition:null,secondaryRangeAxisPosition:null};return s.primaryDomainAxisPosition=e.primary,s.primaryRangeAxisPosition=t.primary,s.secondaryDomainAxisPosition=e.secondary,s.secondaryRangeAxisPosition=t.secondary,(o!==t0.LABELS&&o!==t0.TIME&&a===t0.LABELS||a===t0.TIME)&&(s.primaryDomainAxisPosition=t.primary,s.primaryRangeAxisPosition=e.primary,s.secondaryDomainAxisPosition=t.secondary,s.secondaryRangeAxisPosition=e.secondary),s}getScaleDomain(t){let e,n,i=this.model.getOptions(),r=sB(i,"axes",t),a=sB(i,"bounds"),{includeZero:o}=r,s=sB(r,"scaleType")||t0.LINEAR;if(this.model.isDataEmpty())return[];if(r.binned){let{bins:t}=this.model.getBinConfigurations();return[0,function(t,e){let n;if(void 0===e)for(let e of t)null!=e&&(n<e||void 0===n&&e>=e)&&(n=e);else{let i=-1;for(let r of t)null!=(r=e(r,++i,t))&&(n<r||void 0===n&&r>=r)&&(n=r)}return n}(t,t=>t.length)]}if(r.limitDomainToBins){let{bins:t}=this.model.getBinConfigurations(),e=this.model.getStackKeys({bins:t});return[e[0].split(":")[0],e[e.length-1].split(":")[1]]}let l=this.model.getDisplayData(),{extendLinearDomainBy:c,mapsTo:u,percentage:h,thresholds:d}=r,{reference:f,compareTo:p}=ss.ratio;if(r.domain)return s===t0.LABELS?r.domain:(s===t0.TIME&&(r.domain=r.domain.map(t=>void 0===t.getTime?new Date(t):t)),this.extendsDomain(t,r.domain));if(h)return[0,100];if(r&&s===t0.LABELS)return rw(l.map(t=>t[u]));let m=this.model.getDataGroupNames();if(s===t0.LABELS_RATIO)return l.map(t=>`${t[f]}/${t[p]}`);if(s===t0.TIME)n=l.map(t=>+new Date(t[u]));else if(a&&i.axes)n=[],l.forEach(t=>{n.push(t[u]),t[a.upperBoundMapsTo]&&n.push(t[a.upperBoundMapsTo]),t[a.lowerBoundMapsTo]&&n.push(t[a.lowerBoundMapsTo])});else if(!0===r.stacked&&m&&t===this.getRangeAxisPosition()){let{groupMapsTo:t}=i.data,e=this.model.getDataValuesGroupedByKeys({groups:m}),r=l.filter(e=>!m.includes(e[t])),a=[];e.forEach(t=>{let{...e}=t,n=0,i=0;Object.values(mT(e,"sharedStackKey")).forEach(t=>{isNaN(t)||(t<0?i+=t:n+=t)}),a.push([i,n])}),n=[...mx(a),...r.map(t=>t[u])]}else n=[],l.forEach(t=>{let e=t[u];Array.isArray(e)&&2===e.length?(n.push(e[0]),n.push(e[1])):(c&&n.push(Math.max(t[u],t[c])),n.push(e))});return s!==t0.TIME&&s!==t0.LOG&&o&&n.push(0),d&&d.length>0&&d.forEach(t=>{let e=sB(t,"value");null!==e&&n.push(e)}),e=rk(n),e=this.extendsDomain(t,e)}createScale(t){let e,n=sB(this.model.getOptions(),"axes",t);if(!n)return null;let i=sB(n,"scaleType")||t0.LINEAR;return this.scaleTypes[t]=i,(e=i===t0.TIME?u_():i===t0.LOG?(function t(){let e=(function(t){let e=t(mS,mO),n=e.domain,i=10,r,a;function o(){var o,s;return r=(o=i)===Math.E?Math.log:10===o&&Math.log10||2===o&&Math.log2||(o=Math.log(o),t=>Math.log(t)/o),a=10===(s=i)?mk:s===Math.E?Math.exp:t=>Math.pow(s,t),n()[0]<0?(r=mC(r),a=mC(a),t(mM,mA)):t(mS,mO),e}return e.base=function(t){return arguments.length?(i=+t,o()):i},e.domain=function(t){return arguments.length?(n(t),o()):n()},e.ticks=t=>{let e=n(),o=e[0],s=e[e.length-1],l=s<o;l&&([o,s]=[s,o]);let c=r(o),u=r(s),h,d,f=null==t?10:+t,p=[];if(!(i%1)&&u-c<f){if(c=Math.floor(c),u=Math.ceil(u),o>0){for(;c<=u;++c)for(h=1;h<i;++h)if(!((d=c<0?h/a(-c):h*a(c))<o)){if(d>s)break;p.push(d)}}else for(;c<=u;++c)for(h=i-1;h>=1;--h)if(!((d=c>0?h/a(-c):h*a(c))<o)){if(d>s)break;p.push(d)}2*p.length<f&&(p=rU(o,s,f))}else p=rU(c,u,Math.min(u-c,f)).map(a);return l?p.reverse():p},e.tickFormat=(t,n)=>{if(null==t&&(t=10),null==n&&(n=10===i?"s":","),"function"!=typeof n&&(i%1||null!=(n=oK(n)).precision||(n.trim=!0),n=dK(n)),t===1/0)return n;let o=Math.max(1,i*t/e.ticks().length);return t=>{let e=t/a(Math.round(r(t)));return e*i<i-.5&&(e*=i),e<=o?n(t):""}},e.nice=()=>n(lF(n(),{floor:t=>a(Math.floor(r(t))),ceil:t=>a(Math.ceil(r(t)))})),e})(sr()).domain([1,10]);return e.copy=()=>si(e,t()).base(e.base()),o5.apply(e,arguments),e})().base(n.base||10):i===t0.LABELS||i===t0.LABELS_RATIO?function t(){var e,n,i=o8().unknown(void 0),r=i.domain,a=i.range,o=0,s=1,l=!1,c=0,u=0,h=.5;function d(){var t=r().length,i=s<o,d=i?s:o,f=i?o:s;e=(f-d)/Math.max(1,t-c+2*u),l&&(e=Math.floor(e)),d+=(f-d-e*(t-c))*h,n=e*(1-c),l&&(d=Math.round(d),n=Math.round(n));var p=(function(t,e,n){t*=1,e*=1,n=(r=arguments.length)<2?(e=t,t=0,1):r<3?1:+n;for(var i=-1,r=0|Math.max(0,Math.ceil((e-t)/n)),a=Array(r);++i<r;)a[i]=t+i*n;return a})(t).map(function(t){return d+e*t});return a(i?p.reverse():p)}return delete i.unknown,i.domain=function(t){return arguments.length?(r(t),d()):r()},i.range=function(t){return arguments.length?([o,s]=t,o*=1,s*=1,d()):[o,s]},i.rangeRound=function(t){return[o,s]=t,o*=1,s*=1,l=!0,d()},i.bandwidth=function(){return n},i.step=function(){return e},i.round=function(t){return arguments.length?(l=!!t,d()):l},i.padding=function(t){return arguments.length?(c=Math.min(1,u=+t),d()):c},i.paddingInner=function(t){return arguments.length?(c=Math.min(1,t),d()):c},i.paddingOuter=function(t){return arguments.length?(u=+t,d()):u},i.align=function(t){return arguments.length?(h=Math.max(0,Math.min(1,t)),d()):h},i.copy=function(){return t(r(),[o,s]).round(l).paddingInner(c).paddingOuter(u).align(h)},o5.apply(d(),arguments)}():sa()).domain(this.getScaleDomain(t)),e}getDomainLowerBound(t){let e,n=0;return e=this.getOrientation()===tJ.VERTICAL?this.getMainYScale().domain():this.getMainXScale().domain(),!1===sB(this.model.getOptions(),"axes",t,"includeZero")&&e[0]>0&&e[1]>0&&(n=e[0]),n}getHighestDomainThreshold(){let t=sB(this.model.getOptions(),"axes"),e=this.getDomainAxisPosition(),{thresholds:n}=t[e];if(!Array.isArray(n)||Array.isArray(n)&&!n.length)return null;let i=this.getDomainScale(),r=n.sort((t,e)=>e.value-t.value)[0];return this.getScaleTypeByPosition(e)===t0.TIME&&("string"==typeof r.value||void 0===r.value.getTime)&&(r.value=new Date(r.value)),{threshold:r,scaleValue:i(r.value)}}getHighestRangeThreshold(){let{thresholds:t}=sB(this.model.getOptions(),"axes")[this.getRangeAxisPosition()];if(!Array.isArray(t)||Array.isArray(t)&&!t.length)return null;let e=this.getRangeScale(),n=t.sort((t,e)=>e.value-t.value)[0];return{threshold:n,scaleValue:e(n.value)}}}class gb extends hb{constructor(){super(...arguments),this.curveTypes={curveLinear:uL,curveLinearClosed:uN,curveBasis:mR,curveBasisClosed:mN,curveBasisOpen:mU,curveBundle:mH,curveCardinal:mz,curveCardinalClosed:mG,curveCardinalOpen:mW,curveCatmullRom:mX,curveCatmullRomClosed:mK,curveCatmullRomOpen:mJ,curveMonotoneX:m8,curveMonotoneY:m6,curveNatural:gt,curveStep:gn,curveStepAfter:gr,curveStepBefore:gi}}getD3Curve(){let t="curveLinear",e=this.model.getOptions().curve;if(e&&(t="string"==typeof e?e:e.name),this.curveTypes[t]){let n=this.curveTypes[t];return e&&Object.keys(e).forEach(t=>{n[t]&&(n=n[t](e[t]))}),n}return console.warn(`The curve type '${t}' is invalid, using 'curveLinear' instead`),this.curveTypes.curveLinear}}class gx extends hb{isZoomBarEnabled(){if(!this.services.cartesianScales||!sB(this.model.getOptions(),"zoomBar","top","enabled"))return!1;this.services.cartesianScales.findDomainAndRangeAxes();let t=this.services.cartesianScales.getMainXAxisPosition(),e=sB(this.model.getOptions(),"axes",t,"scaleType");return t===tq.BOTTOM&&e===t0.TIME}getZoomBarData(){let t=this.model.getZoomBarData();return t&&t.length>1?t:this.model.getDisplayData()}getDefaultZoomBarDomain(t){if(!this.services.zoom)throw Error("Services zoom not defined");let e=t||this.services.zoom.getZoomBarData(),{cartesianScales:n}=this.services;if(!n)throw Error("Services cartesianScales undefined");let i=n.getMainXAxisPosition(),r=n.getDomainIdentifier(),a=sB(this.model.getOptions(),"axes",i,"domain");if(Array.isArray(a)&&2===a.length)return a;if(!i)throw Error("Not defined: mainXAxisPosition");return n.extendsDomain(i,rk(e,t=>t[r]))}handleDomainChange(t,e={dispatchEvent:!0,type:"manual"}){this.model.set({zoomDomain:t},{animate:!1}),e.dispatchEvent&&this.services.events?.dispatchEvent(tW.ZoomDomain.CHANGE,{newDomain:t,type:e.type})}getZoomRatio(){return sB(this.model.getOptions(),"zoomBar","zoomRatio")}filterDataForRangeAxis(t,e){let n=this.model.get("zoomDomain"),i=Object.assign({stacked:!1},e),r=sB(this.model.getOptions(),"zoomBar","updateRangeAxis");if(this.isZoomBarEnabled()&&r&&n){let e=i.stacked?"sharedStackKey":this.services.cartesianScales?.getDomainIdentifier(),r=t.filter(t=>new Date(t[e])>=n[0]&&new Date(t[e])<=n[1]);if(r.length>0)return r}return t}zoomIn(t=this.getZoomRatio()){let e=this.model.get("zoomDomain"),n=sg.handleWidth,i=this.services.cartesianScales?.getMainXScale().copy();i.domain(this.getDefaultZoomBarDomain());let r=i(e[0]),a=i(e[1]);if(a-r<n+1)return;let o=i.range(),s=a-r,l=Math.min((o[1]-o[0])/2*(t/2),s/2),c=r+l,u=a-l;c>=u&&(c=r+s/2-n/2,u=a-s/2+n/2);let h=[i.invert(c),i.invert(u)];(e[0].valueOf()!==h[0].valueOf()||e[1].valueOf()!==h[1].valueOf())&&this.handleDomainChange(h,{dispatchEvent:!0,type:"in"})}zoomOut(t=this.getZoomRatio()){let e=this.model.get("zoomDomain");if(!this.services.cartesianScales)throw Error("Services cartesianScales undefined");let n=this.services.cartesianScales.getMainXScale().copy();n.domain(this.getDefaultZoomBarDomain());let i=n(e[0]),r=n(e[1]),a=n.range(),o=(a[1]-a[0])/2*(t/2),s=Math.max(i-o,a[0]),l=Math.min(r+o,a[1]),c=[n.invert(s),n.invert(l)];(e[0].valueOf()!==c[0].valueOf()||e[1].valueOf()!==c[1].valueOf())&&this.handleDomainChange(c,{dispatchEvent:!0,type:"out"})}resetZoomDomain(){let t=this.model.get("zoomDomain"),e=this.getDefaultZoomBarDomain();(t[0].valueOf()!==e[0].valueOf()||t[1].valueOf()!==e[1].valueOf())&&this.handleDomainChange(e,{dispatchEvent:!0,type:"reset"})}isMinZoomDomain(){let t=this.model.get("zoomDomain"),e=this.getDefaultZoomBarDomain();if(!t||!e)return!1;let n=t[1].valueOf()-t[0].valueOf();return n/(e[1].valueOf()-e[0].valueOf())<sB(this.model.getOptions(),"zoomBar","minZoomRatio")}isMaxZoomDomain(){let t=this.model.get("zoomDomain"),e=this.getDefaultZoomBarDomain();return!!(t&&e&&t[0].valueOf()===e[0].valueOf()&&t[1].valueOf()===e[1].valueOf())}isEmptyState(){return 0===this.getZoomBarData().length}isZoomBarLoading(t){return sB(this.model.getOptions(),"zoomBar",t,"loading")}isZoomBarLocked(t){return sB(this.model.getOptions(),"zoomBar",t,"locked")}}var gE=RegExp("[\\u200d\ud800-\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]"),gw="\ud800-\udfff",gT="[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]",gS="\ud83c[\udffb-\udfff]",gO="[^"+gw+"]",gM="(?:\ud83c[\udde6-\uddff]){2}",gA="[\ud800-\udbff][\udc00-\udfff]",gk="(?:"+gT+"|"+gS+")?",gC="[\\ufe0e\\ufe0f]?",gD="(?:\\u200d(?:"+[gO,gM,gA].join("|")+")"+gC+gk+")*",gL=RegExp(gS+"(?="+gS+")|"+("(?:"+[gO+gT+"?",gT,gM,gA,"["+gw+"]"].join("|"))+")"+(gC+gk+gD),"g"),gR=function(t){var e,n,i,r=(e=t=n6(t),gE.test(e))?function(t){return gE.test(t)?t.match(gL)||[]:t.split("")}(t):void 0,a=r?r[0]:t.charAt(0),o=r?(i=r.length,mE(r,1,n=void 0===n?i:n)).join(""):t.slice(1);return a.toUpperCase()+o};hq(function(t,e,n){return e=e.toLowerCase(),t+(n?gR(n6(e).toLowerCase()):e)});class gI{constructor(t,e){this.components=[],this.services={canvasZoom:ga,domUtils:hx,events:go,files:gs,gradientUtils:hE,transitions:gl},this.model=new lO(this.services)}init(t,e){this.model.set({holder:t},{skipUpdate:!0}),Object.keys(this.services).forEach(t=>{let e=this.services[t];this.services[t]=new e(this.model,this.services)}),this.services.events.addEventListener(tW.Model.UPDATE,t=>{let e=!!sB(t,"detail","animate");this.update(e)}),this.model.setData(e.data),this.services.events.addEventListener(tW.Chart.RESIZE,()=>{this.update(!1)}),this.components=this.getComponents(),this.update()}getComponents(){return console.error("getComponents() method is not implemented"),[]}update(t=!0){if(!this.components)return;Object.keys(this.services).forEach(t=>{this.services[t].update()}),this.components.forEach(e=>e.render(t));let e=this.services.transitions.getPendingTransitions();Promise.all(Object.keys(e).map(t=>e[t].end().catch(t=>t))).then(()=>this.services.events.dispatchEvent(tW.Chart.RENDER_FINISHED))}destroy(){this.components.forEach(t=>t.destroy()),this.services.domUtils.getHolder().remove(),this.model.set({destroyed:!0},{skipUpdate:!0})}getChartComponents(t,e){let n=this.model.getOptions(),i=sB(n,"toolbar","enabled"),r={id:"legend",components:[new pQ(this.model,this.services)],growth:t8.PREFERRED},a=sB(n,"canvasZoom","enabled");a&&!0===a&&t.push(new p0(this.model,this.services));let o=!!this.model.getOptions().title,s={id:"title",components:[new pK(this.model,this.services)],growth:t8.STRETCH},l={id:"toolbar",components:[new pY(this.model,this.services)],growth:t8.PREFERRED},c={id:"header",components:[new pZ(this.model,this.services,[s,...i?[l]:[]],{direction:t4.ROW,alignItems:t6.CENTER})],growth:t8.PREFERRED},u={id:"graph-frame",components:t,growth:t8.STRETCH,renderType:sB(e,"graphFrameRenderType")||tY.SVG},h=!0!==sB(e,"excludeLegend")&&!1!==n.legend.enabled,d=t4.COLUMN;if(h){let t=sB(n,"legend","position");"left"===t?(d=t4.ROW,n.legend.orientation||(n.legend.orientation=t3.VERTICAL)):"right"===t?(d=t4.ROW_REVERSE,n.legend.orientation||(n.legend.orientation=t3.VERTICAL)):"bottom"===t&&(d=t4.COLUMN_REVERSE)}let f={id:"spacer",components:[new pX(this.model,this.services)],growth:t8.PREFERRED},p={id:"full-frame",components:[new pZ(this.model,this.services,[...h?[r]:[],...h?[f]:[],u],{direction:d})],growth:t8.STRETCH},m=[];if(o||i){m.push(c);let t={id:"spacer",components:[new pX(this.model,this.services,i?{size:15}:void 0)],growth:t8.PREFERRED};m.push(t)}return m.push(p),[new p5(this.model,this.services),new pq(this.model,this.services),new pZ(this.model,this.services,m,{direction:t4.COLUMN})]}}class gN extends gI{constructor(t,e){super(t,e),this.services=Object.assign(this.services,{cartesianScales:g_,curves:gb,zoom:gx}),this.model=new lM(this.services)}getAxisChartComponents(t,e){let n=this.model.getOptions(),i=sB(n,"zoomBar",tq.TOP,"enabled"),r=sB(n,"toolbar","enabled");this.services.cartesianScales.determineAxisDuality(),this.services.cartesianScales.findDomainAndRangeAxes(),this.services.cartesianScales.determineOrientation();let a=this.services.cartesianScales.getMainXAxisPosition(),o=sB(n,"axes",a,"scaleType"),s=i&&a===tq.BOTTOM&&o===t0.TIME,l=this.services.zoom.isZoomBarLocked(tq.TOP),c=!!this.model.getOptions().title,u={id:"title",components:[new pK(this.model,this.services)],growth:t8.STRETCH},h={id:"toolbar",components:[new pY(this.model,this.services)],growth:t8.PREFERRED},d={id:"header",components:[new pZ(this.model,this.services,[u,...r?[h]:[]],{direction:t4.ROW,alignItems:t6.CENTER})],growth:t8.PREFERRED},f={id:"legend",components:[new pQ(this.model,this.services)],growth:t8.PREFERRED};s&&!l&&t.push(new pJ(this.model,this.services),new p4(this.model,this.services)),t.push(new p6(this.model,this.services)),t.push(new p9(this.model,this.services));let p={id:"graph-frame",components:t,growth:t8.STRETCH,renderType:tY.SVG},m=!1!==sB(e,"legend","enabled")&&!1!==this.model.getOptions().legend.enabled,g=t4.COLUMN;if(m){let t=sB(this.model.getOptions(),"legend","position");t===t1.LEFT?(g=t4.ROW,this.model.getOptions().legend.orientation||(this.model.getOptions().legend.orientation=t3.VERTICAL)):t===t1.RIGHT?(g=t4.ROW_REVERSE,this.model.getOptions().legend.orientation||(this.model.getOptions().legend.orientation=t3.VERTICAL)):t===t1.BOTTOM&&(g=t4.COLUMN_REVERSE)}let v={id:"spacer",components:[new pX(this.model,this.services)],growth:t8.PREFERRED},y={id:"full-frame",components:[new pZ(this.model,this.services,[...m?[f]:[],...m?[v]:[],p],{direction:g})],growth:t8.STRETCH},_={id:"zoom-bar",components:[new p8(this.model,this.services)],growth:t8.PREFERRED,renderType:tY.SVG},b=[];if(c||r){b.push(d);let t={id:"spacer",components:[new pX(this.model,this.services,r?{size:15}:void 0)],growth:t8.PREFERRED};b.push(t)}return s&&b.push(_),b.push(y),[new p7(this.model,this.services),new pq(this.model,this.services),new pZ(this.model,this.services,b,{direction:t4.COLUMN})]}}eo.LINE,eo.SCATTER,eo.AREA,eo.STACKED_AREA,eo.SIMPLE_BAR,eo.GROUPED_BAR,eo.STACKED_BAR;class gP extends gN{constructor(t,e){super(t,e),this.model.setOptions(sI(sD,e.options)),this.init(t,e)}getComponents(){let t=[new mu(this.model,this.services),new mr(this.model,this.services),new mo(this.model,this.services),new ma(this.model,this.services),new ms(this.model,this.services,{handleThresholds:!0}),new mm(this.model,this.services),new md(this.model,this.services)];return this.getAxisChartComponents(t)}}class gU extends gN{constructor(t,e){super(t,e),this.model.setOptions(sI(sk,e.options)),this.init(t,e)}getComponents(){let t=[new mu(this.model,this.services),new mr(this.model,this.services),new mp(this.model,this.services),new md(this.model,this.services),new mh(this.model,this.services,{skeleton:t7.VERT_OR_HORIZ})];return this.getAxisChartComponents(t)}}class gB extends ty.PureComponent{chart;chartRef=ty.createRef();createChart(t,e,n){throw Error("Method not implemented.")}componentDidMount(){this.chartRef.current&&!this.chart&&(this.chart=this.createChart(this.chartRef.current,this.props.data,this.props.options))}componentDidUpdate(t){this.props.data!==t.data&&this.chart?.model.setData(this.props.data),this.props.options!==t.options&&this.chart?.model.setOptions(this.props.options)}render(){return ty.createElement("div",{ref:this.chartRef,className:"chart-holder"})}}class gH extends gB{createChart(t,e,n){return new gP(t,{data:e,options:n})}}class gF extends gB{createChart(t,e,n){return new gU(t,{data:e,options:n})}}var g$={exports:{}};tv||(tv=1,function(t){var e={}.hasOwnProperty;function n(){for(var t="",r=0;r<arguments.length;r++){var a=arguments[r];a&&(t=i(t,function(t){if("string"==typeof t||"number"==typeof t)return t;if("object"!=typeof t)return"";if(Array.isArray(t))return n.apply(null,t);if(t.toString!==Object.prototype.toString&&!t.toString.toString().includes("[native code]"))return t.toString();var r="";for(var a in t)e.call(t,a)&&t[a]&&(r=i(r,a));return r}(a)))}return t}function i(t,e){return e?t?t+" "+e:t+e:t}t.exports?(n.default=n,t.exports=n):window.classNames=n}(g$)),g$.exports}}]);