smart-webcomponents 15.0.1 → 15.0.11

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 (929) hide show
  1. package/bootstrap/source/smart.element.js +1 -1
  2. package/framework/smart.element.js +1 -1
  3. package/package.json +1 -1
  4. package/source/angular/accordion/index.ts +1 -0
  5. package/source/angular/accordion/public_api.ts +5 -0
  6. package/source/angular/accordion/smart.accordion.module.ts +13 -0
  7. package/source/angular/accordion/smart.accordion.ts +370 -0
  8. package/source/angular/accordion/smart.accordionitem.ts +142 -0
  9. package/source/angular/accordion/smart.element.ts +104 -0
  10. package/source/angular/array/index.ts +1 -0
  11. package/source/angular/array/public_api.ts +3 -0
  12. package/source/angular/array/smart.array.module.ts +12 -0
  13. package/source/angular/array/smart.array.ts +817 -0
  14. package/source/angular/array/smart.element.ts +104 -0
  15. package/source/angular/barcode/index.ts +1 -0
  16. package/source/angular/barcode/public_api.ts +3 -0
  17. package/source/angular/barcode/smart.barcode.module.ts +12 -0
  18. package/source/angular/barcode/smart.barcode.ts +288 -0
  19. package/source/angular/barcode/smart.element.ts +104 -0
  20. package/source/angular/bootstrap/bootstrap.button.ts +160 -0
  21. package/source/angular/bootstrap/bootstrap.checkbox.ts +165 -0
  22. package/source/angular/bootstrap/bootstrap.circular.ts +151 -0
  23. package/source/angular/bootstrap/bootstrap.dropdown.ts +253 -0
  24. package/source/angular/bootstrap/bootstrap.fileinput.ts +133 -0
  25. package/source/angular/bootstrap/bootstrap.input.ts +160 -0
  26. package/source/angular/bootstrap/bootstrap.inputgroup.ts +178 -0
  27. package/source/angular/bootstrap/bootstrap.modal.ts +204 -0
  28. package/source/angular/bootstrap/bootstrap.progressbar.ts +151 -0
  29. package/source/angular/bootstrap/bootstrap.radiobutton.ts +156 -0
  30. package/source/angular/bootstrap/bootstrap.range.ts +133 -0
  31. package/source/angular/bootstrap/bootstrap.splitbutton.ts +253 -0
  32. package/source/angular/bootstrap/bootstrap.switchbutton.ts +165 -0
  33. package/source/angular/bootstrap/bootstrap.tabs.ts +175 -0
  34. package/source/angular/bootstrap/bootstrap.textarea.ts +160 -0
  35. package/source/angular/bootstrap/bootstrap.togglebutton.ts +156 -0
  36. package/source/angular/bootstrap/index.ts +1 -0
  37. package/source/angular/bootstrap/public_api.ts +17 -0
  38. package/source/angular/bootstrap/smart.element.ts +104 -0
  39. package/source/angular/breadcrumb/index.ts +1 -0
  40. package/source/angular/breadcrumb/public_api.ts +3 -0
  41. package/source/angular/breadcrumb/smart.breadcrumb.module.ts +12 -0
  42. package/source/angular/breadcrumb/smart.breadcrumb.ts +306 -0
  43. package/source/angular/breadcrumb/smart.element.ts +104 -0
  44. package/source/angular/button/index.ts +1 -0
  45. package/source/angular/button/public_api.ts +9 -0
  46. package/source/angular/button/smart.button.module.ts +15 -0
  47. package/source/angular/button/smart.button.ts +230 -0
  48. package/source/angular/button/smart.element.ts +104 -0
  49. package/source/angular/button/smart.powerbutton.ts +283 -0
  50. package/source/angular/button/smart.repeatbutton.ts +214 -0
  51. package/source/angular/button/smart.togglebutton.ts +235 -0
  52. package/source/angular/buttongroup/index.ts +1 -0
  53. package/source/angular/buttongroup/public_api.ts +3 -0
  54. package/source/angular/buttongroup/smart.buttongroup.module.ts +12 -0
  55. package/source/angular/buttongroup/smart.buttongroup.ts +229 -0
  56. package/source/angular/buttongroup/smart.element.ts +104 -0
  57. package/source/angular/calendar/index.ts +1 -0
  58. package/source/angular/calendar/public_api.ts +3 -0
  59. package/source/angular/calendar/smart.calendar.module.ts +12 -0
  60. package/source/angular/calendar/smart.calendar.ts +787 -0
  61. package/source/angular/calendar/smart.element.ts +104 -0
  62. package/source/angular/card/index.ts +1 -0
  63. package/source/angular/card/public_api.ts +3 -0
  64. package/source/angular/card/smart.card.module.ts +12 -0
  65. package/source/angular/card/smart.card.ts +220 -0
  66. package/source/angular/card/smart.element.ts +104 -0
  67. package/source/angular/cardview/index.ts +1 -0
  68. package/source/angular/cardview/public_api.ts +3 -0
  69. package/source/angular/cardview/smart.cardview.module.ts +12 -0
  70. package/source/angular/cardview/smart.cardview.ts +573 -0
  71. package/source/angular/cardview/smart.element.ts +104 -0
  72. package/source/angular/carousel/index.ts +1 -0
  73. package/source/angular/carousel/public_api.ts +3 -0
  74. package/source/angular/carousel/smart.carousel.module.ts +12 -0
  75. package/source/angular/carousel/smart.carousel.ts +414 -0
  76. package/source/angular/carousel/smart.element.ts +104 -0
  77. package/source/angular/chart/index.ts +1 -0
  78. package/source/angular/chart/public_api.ts +3 -0
  79. package/source/angular/chart/smart.chart.module.ts +12 -0
  80. package/source/angular/chart/smart.chart.ts +930 -0
  81. package/source/angular/chart/smart.element.ts +104 -0
  82. package/source/angular/checkbox/index.ts +1 -0
  83. package/source/angular/checkbox/public_api.ts +3 -0
  84. package/source/angular/checkbox/smart.checkbox.module.ts +12 -0
  85. package/source/angular/checkbox/smart.checkbox.ts +341 -0
  86. package/source/angular/checkbox/smart.element.ts +104 -0
  87. package/source/angular/checkinput/index.ts +1 -0
  88. package/source/angular/checkinput/public_api.ts +3 -0
  89. package/source/angular/checkinput/smart.checkinput.module.ts +12 -0
  90. package/source/angular/checkinput/smart.checkinput.ts +497 -0
  91. package/source/angular/checkinput/smart.element.ts +104 -0
  92. package/source/angular/chip/index.ts +1 -0
  93. package/source/angular/chip/public_api.ts +3 -0
  94. package/source/angular/chip/smart.chip.module.ts +12 -0
  95. package/source/angular/chip/smart.chip.ts +221 -0
  96. package/source/angular/chip/smart.element.ts +104 -0
  97. package/source/angular/colorinput/index.ts +1 -0
  98. package/source/angular/colorinput/public_api.ts +3 -0
  99. package/source/angular/colorinput/smart.colorinput.module.ts +12 -0
  100. package/source/angular/colorinput/smart.colorinput.ts +456 -0
  101. package/source/angular/colorinput/smart.element.ts +104 -0
  102. package/source/angular/colorpanel/index.ts +1 -0
  103. package/source/angular/colorpanel/public_api.ts +3 -0
  104. package/source/angular/colorpanel/smart.colorpanel.module.ts +12 -0
  105. package/source/angular/colorpanel/smart.colorpanel.ts +501 -0
  106. package/source/angular/colorpanel/smart.element.ts +104 -0
  107. package/source/angular/colorpicker/index.ts +1 -0
  108. package/source/angular/colorpicker/public_api.ts +3 -0
  109. package/source/angular/colorpicker/smart.colorpicker.module.ts +12 -0
  110. package/source/angular/colorpicker/smart.colorpicker.ts +756 -0
  111. package/source/angular/colorpicker/smart.element.ts +104 -0
  112. package/source/angular/columnpanel/index.ts +1 -0
  113. package/source/angular/columnpanel/public_api.ts +3 -0
  114. package/source/angular/columnpanel/smart.columnpanel.module.ts +12 -0
  115. package/source/angular/columnpanel/smart.columnpanel.ts +183 -0
  116. package/source/angular/columnpanel/smart.element.ts +104 -0
  117. package/source/angular/combobox/index.ts +1 -0
  118. package/source/angular/combobox/public_api.ts +7 -0
  119. package/source/angular/combobox/smart.combobox.module.ts +14 -0
  120. package/source/angular/combobox/smart.combobox.ts +1125 -0
  121. package/source/angular/combobox/smart.element.ts +104 -0
  122. package/source/angular/combobox/smart.listitem.ts +162 -0
  123. package/source/angular/combobox/smart.listitemsgroup.ts +72 -0
  124. package/source/angular/countryinput/index.ts +1 -0
  125. package/source/angular/countryinput/public_api.ts +3 -0
  126. package/source/angular/countryinput/smart.countryinput.module.ts +12 -0
  127. package/source/angular/countryinput/smart.countryinput.ts +391 -0
  128. package/source/angular/countryinput/smart.element.ts +104 -0
  129. package/source/angular/customizationdialog/index.ts +1 -0
  130. package/source/angular/customizationdialog/public_api.ts +3 -0
  131. package/source/angular/customizationdialog/smart.customizationdialog.module.ts +12 -0
  132. package/source/angular/customizationdialog/smart.customizationdialog.ts +311 -0
  133. package/source/angular/customizationdialog/smart.element.ts +104 -0
  134. package/source/angular/dateinput/index.ts +1 -0
  135. package/source/angular/dateinput/public_api.ts +3 -0
  136. package/source/angular/dateinput/smart.dateinput.module.ts +12 -0
  137. package/source/angular/dateinput/smart.dateinput.ts +465 -0
  138. package/source/angular/dateinput/smart.element.ts +104 -0
  139. package/source/angular/daterangeinput/index.ts +1 -0
  140. package/source/angular/daterangeinput/public_api.ts +3 -0
  141. package/source/angular/daterangeinput/smart.daterangeinput.module.ts +12 -0
  142. package/source/angular/daterangeinput/smart.daterangeinput.ts +456 -0
  143. package/source/angular/daterangeinput/smart.element.ts +104 -0
  144. package/source/angular/datetimepicker/index.ts +1 -0
  145. package/source/angular/datetimepicker/public_api.ts +3 -0
  146. package/source/angular/datetimepicker/smart.datetimepicker.module.ts +12 -0
  147. package/source/angular/datetimepicker/smart.datetimepicker.ts +835 -0
  148. package/source/angular/datetimepicker/smart.element.ts +104 -0
  149. package/source/angular/dockinglayout/index.ts +1 -0
  150. package/source/angular/dockinglayout/public_api.ts +3 -0
  151. package/source/angular/dockinglayout/smart.dockinglayout.module.ts +12 -0
  152. package/source/angular/dockinglayout/smart.dockinglayout.ts +866 -0
  153. package/source/angular/dockinglayout/smart.element.ts +104 -0
  154. package/source/angular/dropdownbutton/index.ts +1 -0
  155. package/source/angular/dropdownbutton/public_api.ts +3 -0
  156. package/source/angular/dropdownbutton/smart.dropdownbutton.module.ts +12 -0
  157. package/source/angular/dropdownbutton/smart.dropdownbutton.ts +542 -0
  158. package/source/angular/dropdownbutton/smart.element.ts +104 -0
  159. package/source/angular/dropdownlist/index.ts +1 -0
  160. package/source/angular/dropdownlist/public_api.ts +7 -0
  161. package/source/angular/dropdownlist/smart.dropdownlist.module.ts +14 -0
  162. package/source/angular/dropdownlist/smart.dropdownlist.ts +1082 -0
  163. package/source/angular/dropdownlist/smart.element.ts +104 -0
  164. package/source/angular/dropdownlist/smart.listitem.ts +162 -0
  165. package/source/angular/dropdownlist/smart.listitemsgroup.ts +72 -0
  166. package/source/angular/editor/index.ts +1 -0
  167. package/source/angular/editor/public_api.ts +3 -0
  168. package/source/angular/editor/smart.editor.module.ts +12 -0
  169. package/source/angular/editor/smart.editor.ts +1307 -0
  170. package/source/angular/editor/smart.element.ts +104 -0
  171. package/source/angular/element/index.ts +1 -0
  172. package/source/angular/element/public_api.ts +3 -0
  173. package/source/angular/element/smart.element.module.ts +10 -0
  174. package/source/angular/element/smart.element.ts +104 -0
  175. package/source/angular/fileupload/index.ts +1 -0
  176. package/source/angular/fileupload/public_api.ts +3 -0
  177. package/source/angular/fileupload/smart.element.ts +104 -0
  178. package/source/angular/fileupload/smart.fileupload.module.ts +12 -0
  179. package/source/angular/fileupload/smart.fileupload.ts +517 -0
  180. package/source/angular/filterbuilder/index.ts +1 -0
  181. package/source/angular/filterbuilder/public_api.ts +3 -0
  182. package/source/angular/filterbuilder/smart.element.ts +104 -0
  183. package/source/angular/filterbuilder/smart.filterbuilder.module.ts +12 -0
  184. package/source/angular/filterbuilder/smart.filterbuilder.ts +506 -0
  185. package/source/angular/filterpanel/index.ts +1 -0
  186. package/source/angular/filterpanel/public_api.ts +3 -0
  187. package/source/angular/filterpanel/smart.element.ts +104 -0
  188. package/source/angular/filterpanel/smart.filterpanel.module.ts +12 -0
  189. package/source/angular/filterpanel/smart.filterpanel.ts +334 -0
  190. package/source/angular/form/index.ts +1 -0
  191. package/source/angular/form/public_api.ts +7 -0
  192. package/source/angular/form/smart.element.ts +104 -0
  193. package/source/angular/form/smart.form.module.ts +14 -0
  194. package/source/angular/form/smart.form.ts +288 -0
  195. package/source/angular/form/smart.formcontrol.ts +336 -0
  196. package/source/angular/form/smart.formgroup.ts +220 -0
  197. package/source/angular/ganttchart/index.ts +1 -0
  198. package/source/angular/ganttchart/public_api.ts +3 -0
  199. package/source/angular/ganttchart/smart.element.ts +104 -0
  200. package/source/angular/ganttchart/smart.ganttchart.module.ts +12 -0
  201. package/source/angular/ganttchart/smart.ganttchart.ts +2142 -0
  202. package/source/angular/gauge/index.ts +1 -0
  203. package/source/angular/gauge/public_api.ts +3 -0
  204. package/source/angular/gauge/smart.element.ts +104 -0
  205. package/source/angular/gauge/smart.gauge.module.ts +12 -0
  206. package/source/angular/gauge/smart.gauge.ts +650 -0
  207. package/source/angular/grid/index.ts +1 -0
  208. package/source/angular/grid/public_api.ts +3 -0
  209. package/source/angular/grid/smart.element.ts +104 -0
  210. package/source/angular/grid/smart.grid.module.ts +12 -0
  211. package/source/angular/grid/smart.grid.ts +3091 -0
  212. package/source/angular/grouppanel/index.ts +1 -0
  213. package/source/angular/grouppanel/public_api.ts +3 -0
  214. package/source/angular/grouppanel/smart.element.ts +104 -0
  215. package/source/angular/grouppanel/smart.grouppanel.module.ts +12 -0
  216. package/source/angular/grouppanel/smart.grouppanel.ts +220 -0
  217. package/source/angular/index.d.ts +32978 -0
  218. package/source/angular/input/index.ts +1 -0
  219. package/source/angular/input/public_api.ts +3 -0
  220. package/source/angular/input/smart.element.ts +104 -0
  221. package/source/angular/input/smart.input.module.ts +12 -0
  222. package/source/angular/input/smart.input.ts +590 -0
  223. package/source/angular/kanban/index.ts +1 -0
  224. package/source/angular/kanban/public_api.ts +3 -0
  225. package/source/angular/kanban/smart.element.ts +104 -0
  226. package/source/angular/kanban/smart.kanban.module.ts +12 -0
  227. package/source/angular/kanban/smart.kanban.ts +1682 -0
  228. package/source/angular/layout/index.ts +1 -0
  229. package/source/angular/layout/public_api.ts +11 -0
  230. package/source/angular/layout/smart.element.ts +104 -0
  231. package/source/angular/layout/smart.layout.module.ts +16 -0
  232. package/source/angular/layout/smart.layout.ts +363 -0
  233. package/source/angular/layout/smart.layoutgroup.ts +140 -0
  234. package/source/angular/layout/smart.layoutitem.ts +129 -0
  235. package/source/angular/layout/smart.tablayoutgroup.ts +147 -0
  236. package/source/angular/layout/smart.tablayoutitem.ts +138 -0
  237. package/source/angular/led/index.ts +1 -0
  238. package/source/angular/led/public_api.ts +3 -0
  239. package/source/angular/led/smart.element.ts +104 -0
  240. package/source/angular/led/smart.led.module.ts +12 -0
  241. package/source/angular/led/smart.led.ts +280 -0
  242. package/source/angular/listbox/index.ts +1 -0
  243. package/source/angular/listbox/public_api.ts +7 -0
  244. package/source/angular/listbox/smart.element.ts +104 -0
  245. package/source/angular/listbox/smart.listbox.module.ts +14 -0
  246. package/source/angular/listbox/smart.listbox.ts +1007 -0
  247. package/source/angular/listbox/smart.listitem.ts +162 -0
  248. package/source/angular/listbox/smart.listitemsgroup.ts +72 -0
  249. package/source/angular/listmenu/index.ts +1 -0
  250. package/source/angular/listmenu/public_api.ts +7 -0
  251. package/source/angular/listmenu/smart.element.ts +104 -0
  252. package/source/angular/listmenu/smart.listmenu.module.ts +14 -0
  253. package/source/angular/listmenu/smart.listmenu.ts +597 -0
  254. package/source/angular/listmenu/smart.menuitem.ts +126 -0
  255. package/source/angular/listmenu/smart.menuitemsgroup.ts +153 -0
  256. package/source/angular/map/index.ts +1 -0
  257. package/source/angular/map/public_api.ts +3 -0
  258. package/source/angular/map/smart.element.ts +104 -0
  259. package/source/angular/map/smart.map.module.ts +12 -0
  260. package/source/angular/map/smart.map.ts +128 -0
  261. package/source/angular/maskedtextbox/index.ts +1 -0
  262. package/source/angular/maskedtextbox/public_api.ts +3 -0
  263. package/source/angular/maskedtextbox/smart.element.ts +104 -0
  264. package/source/angular/maskedtextbox/smart.maskedtextbox.module.ts +12 -0
  265. package/source/angular/maskedtextbox/smart.maskedtextbox.ts +539 -0
  266. package/source/angular/menu/index.ts +1 -0
  267. package/source/angular/menu/public_api.ts +7 -0
  268. package/source/angular/menu/smart.element.ts +104 -0
  269. package/source/angular/menu/smart.menu.module.ts +14 -0
  270. package/source/angular/menu/smart.menu.ts +695 -0
  271. package/source/angular/menu/smart.menuitem.ts +126 -0
  272. package/source/angular/menu/smart.menuitemsgroup.ts +153 -0
  273. package/source/angular/multicolumnfilterpanel/index.ts +1 -0
  274. package/source/angular/multicolumnfilterpanel/public_api.ts +3 -0
  275. package/source/angular/multicolumnfilterpanel/smart.element.ts +104 -0
  276. package/source/angular/multicolumnfilterpanel/smart.multicolumnfilterpanel.module.ts +12 -0
  277. package/source/angular/multicolumnfilterpanel/smart.multicolumnfilterpanel.ts +256 -0
  278. package/source/angular/multicomboinput/index.ts +1 -0
  279. package/source/angular/multicomboinput/public_api.ts +3 -0
  280. package/source/angular/multicomboinput/smart.element.ts +104 -0
  281. package/source/angular/multicomboinput/smart.multicomboinput.module.ts +12 -0
  282. package/source/angular/multicomboinput/smart.multicomboinput.ts +542 -0
  283. package/source/angular/multiinput/index.ts +1 -0
  284. package/source/angular/multiinput/public_api.ts +3 -0
  285. package/source/angular/multiinput/smart.element.ts +104 -0
  286. package/source/angular/multiinput/smart.multiinput.module.ts +12 -0
  287. package/source/angular/multiinput/smart.multiinput.ts +497 -0
  288. package/source/angular/multilinetextbox/index.ts +1 -0
  289. package/source/angular/multilinetextbox/public_api.ts +7 -0
  290. package/source/angular/multilinetextbox/smart.element.ts +104 -0
  291. package/source/angular/multilinetextbox/smart.listitem.ts +162 -0
  292. package/source/angular/multilinetextbox/smart.listitemsgroup.ts +72 -0
  293. package/source/angular/multilinetextbox/smart.multilinetextbox.module.ts +14 -0
  294. package/source/angular/multilinetextbox/smart.multilinetextbox.ts +561 -0
  295. package/source/angular/multisplitbutton/index.ts +1 -0
  296. package/source/angular/multisplitbutton/public_api.ts +7 -0
  297. package/source/angular/multisplitbutton/smart.element.ts +104 -0
  298. package/source/angular/multisplitbutton/smart.listitem.ts +162 -0
  299. package/source/angular/multisplitbutton/smart.listitemsgroup.ts +72 -0
  300. package/source/angular/multisplitbutton/smart.multisplitbutton.module.ts +14 -0
  301. package/source/angular/multisplitbutton/smart.multisplitbutton.ts +620 -0
  302. package/source/angular/numberinput/index.ts +1 -0
  303. package/source/angular/numberinput/public_api.ts +3 -0
  304. package/source/angular/numberinput/smart.element.ts +104 -0
  305. package/source/angular/numberinput/smart.numberinput.module.ts +12 -0
  306. package/source/angular/numberinput/smart.numberinput.ts +398 -0
  307. package/source/angular/numerictextbox/index.ts +1 -0
  308. package/source/angular/numerictextbox/public_api.ts +3 -0
  309. package/source/angular/numerictextbox/smart.element.ts +104 -0
  310. package/source/angular/numerictextbox/smart.numerictextbox.module.ts +12 -0
  311. package/source/angular/numerictextbox/smart.numerictextbox.ts +644 -0
  312. package/source/angular/pager/index.ts +1 -0
  313. package/source/angular/pager/public_api.ts +3 -0
  314. package/source/angular/pager/smart.element.ts +104 -0
  315. package/source/angular/pager/smart.pager.module.ts +12 -0
  316. package/source/angular/pager/smart.pager.ts +386 -0
  317. package/source/angular/passwordinput/index.ts +1 -0
  318. package/source/angular/passwordinput/public_api.ts +3 -0
  319. package/source/angular/passwordinput/smart.element.ts +104 -0
  320. package/source/angular/passwordinput/smart.passwordinput.module.ts +12 -0
  321. package/source/angular/passwordinput/smart.passwordinput.ts +218 -0
  322. package/source/angular/passwordtextbox/index.ts +1 -0
  323. package/source/angular/passwordtextbox/public_api.ts +3 -0
  324. package/source/angular/passwordtextbox/smart.element.ts +104 -0
  325. package/source/angular/passwordtextbox/smart.passwordtextbox.module.ts +12 -0
  326. package/source/angular/passwordtextbox/smart.passwordtextbox.ts +463 -0
  327. package/source/angular/path/index.ts +1 -0
  328. package/source/angular/path/public_api.ts +3 -0
  329. package/source/angular/path/smart.element.ts +104 -0
  330. package/source/angular/path/smart.path.module.ts +12 -0
  331. package/source/angular/path/smart.path.ts +491 -0
  332. package/source/angular/phoneinput/index.ts +1 -0
  333. package/source/angular/phoneinput/public_api.ts +3 -0
  334. package/source/angular/phoneinput/smart.element.ts +104 -0
  335. package/source/angular/phoneinput/smart.phoneinput.module.ts +12 -0
  336. package/source/angular/phoneinput/smart.phoneinput.ts +493 -0
  337. package/source/angular/pivottable/index.ts +1 -0
  338. package/source/angular/pivottable/public_api.ts +3 -0
  339. package/source/angular/pivottable/smart.element.ts +104 -0
  340. package/source/angular/pivottable/smart.pivottable.module.ts +12 -0
  341. package/source/angular/pivottable/smart.pivottable.ts +840 -0
  342. package/source/angular/progressbar/index.ts +1 -0
  343. package/source/angular/progressbar/public_api.ts +5 -0
  344. package/source/angular/progressbar/smart.circularprogressbar.ts +223 -0
  345. package/source/angular/progressbar/smart.element.ts +104 -0
  346. package/source/angular/progressbar/smart.progressbar.module.ts +13 -0
  347. package/source/angular/progressbar/smart.progressbar.ts +235 -0
  348. package/source/angular/qrcode/index.ts +1 -0
  349. package/source/angular/qrcode/public_api.ts +3 -0
  350. package/source/angular/qrcode/smart.element.ts +104 -0
  351. package/source/angular/qrcode/smart.qrcode.module.ts +12 -0
  352. package/source/angular/qrcode/smart.qrcode.ts +306 -0
  353. package/source/angular/querybuilder/index.ts +1 -0
  354. package/source/angular/querybuilder/public_api.ts +3 -0
  355. package/source/angular/querybuilder/smart.element.ts +104 -0
  356. package/source/angular/querybuilder/smart.querybuilder.module.ts +12 -0
  357. package/source/angular/querybuilder/smart.querybuilder.ts +460 -0
  358. package/source/angular/radiobutton/index.ts +1 -0
  359. package/source/angular/radiobutton/public_api.ts +3 -0
  360. package/source/angular/radiobutton/smart.element.ts +104 -0
  361. package/source/angular/radiobutton/smart.radiobutton.module.ts +12 -0
  362. package/source/angular/radiobutton/smart.radiobutton.ts +350 -0
  363. package/source/angular/rating/index.ts +1 -0
  364. package/source/angular/rating/public_api.ts +3 -0
  365. package/source/angular/rating/smart.element.ts +104 -0
  366. package/source/angular/rating/smart.rating.module.ts +12 -0
  367. package/source/angular/rating/smart.rating.ts +309 -0
  368. package/source/angular/scheduler/index.ts +1 -0
  369. package/source/angular/scheduler/public_api.ts +3 -0
  370. package/source/angular/scheduler/smart.element.ts +104 -0
  371. package/source/angular/scheduler/smart.scheduler.module.ts +12 -0
  372. package/source/angular/scheduler/smart.scheduler.ts +2328 -0
  373. package/source/angular/scrollbar/index.ts +1 -0
  374. package/source/angular/scrollbar/public_api.ts +3 -0
  375. package/source/angular/scrollbar/smart.element.ts +104 -0
  376. package/source/angular/scrollbar/smart.scrollbar.module.ts +12 -0
  377. package/source/angular/scrollbar/smart.scrollbar.ts +260 -0
  378. package/source/angular/slider/index.ts +1 -0
  379. package/source/angular/slider/public_api.ts +3 -0
  380. package/source/angular/slider/smart.element.ts +104 -0
  381. package/source/angular/slider/smart.slider.module.ts +12 -0
  382. package/source/angular/slider/smart.slider.ts +632 -0
  383. package/source/angular/sortable/index.ts +1 -0
  384. package/source/angular/sortable/public_api.ts +3 -0
  385. package/source/angular/sortable/smart.element.ts +104 -0
  386. package/source/angular/sortable/smart.sortable.module.ts +12 -0
  387. package/source/angular/sortable/smart.sortable.ts +217 -0
  388. package/source/angular/sortpanel/index.ts +1 -0
  389. package/source/angular/sortpanel/public_api.ts +3 -0
  390. package/source/angular/sortpanel/smart.element.ts +104 -0
  391. package/source/angular/sortpanel/smart.sortpanel.module.ts +12 -0
  392. package/source/angular/sortpanel/smart.sortpanel.ts +180 -0
  393. package/source/angular/splitter/index.ts +1 -0
  394. package/source/angular/splitter/public_api.ts +7 -0
  395. package/source/angular/splitter/smart.element.ts +104 -0
  396. package/source/angular/splitter/smart.splitter.module.ts +14 -0
  397. package/source/angular/splitter/smart.splitter.ts +530 -0
  398. package/source/angular/splitter/smart.splitterbar.ts +121 -0
  399. package/source/angular/splitter/smart.splitteritem.ts +192 -0
  400. package/source/angular/switchbutton/index.ts +1 -0
  401. package/source/angular/switchbutton/public_api.ts +3 -0
  402. package/source/angular/switchbutton/smart.element.ts +104 -0
  403. package/source/angular/switchbutton/smart.switchbutton.module.ts +12 -0
  404. package/source/angular/switchbutton/smart.switchbutton.ts +386 -0
  405. package/source/angular/table/index.ts +1 -0
  406. package/source/angular/table/public_api.ts +3 -0
  407. package/source/angular/table/smart.element.ts +104 -0
  408. package/source/angular/table/smart.table.module.ts +12 -0
  409. package/source/angular/table/smart.table.ts +1493 -0
  410. package/source/angular/tabs/index.ts +1 -0
  411. package/source/angular/tabs/public_api.ts +7 -0
  412. package/source/angular/tabs/smart.element.ts +104 -0
  413. package/source/angular/tabs/smart.tabitem.ts +126 -0
  414. package/source/angular/tabs/smart.tabitemsgroup.ts +81 -0
  415. package/source/angular/tabs/smart.tabs.module.ts +14 -0
  416. package/source/angular/tabs/smart.tabs.ts +622 -0
  417. package/source/angular/tank/index.ts +1 -0
  418. package/source/angular/tank/public_api.ts +3 -0
  419. package/source/angular/tank/smart.element.ts +104 -0
  420. package/source/angular/tank/smart.tank.module.ts +12 -0
  421. package/source/angular/tank/smart.tank.ts +593 -0
  422. package/source/angular/textarea/index.ts +1 -0
  423. package/source/angular/textarea/public_api.ts +3 -0
  424. package/source/angular/textarea/smart.element.ts +104 -0
  425. package/source/angular/textarea/smart.textarea.module.ts +12 -0
  426. package/source/angular/textarea/smart.textarea.ts +484 -0
  427. package/source/angular/textbox/index.ts +1 -0
  428. package/source/angular/textbox/public_api.ts +7 -0
  429. package/source/angular/textbox/smart.element.ts +104 -0
  430. package/source/angular/textbox/smart.listitem.ts +162 -0
  431. package/source/angular/textbox/smart.listitemsgroup.ts +72 -0
  432. package/source/angular/textbox/smart.textbox.module.ts +14 -0
  433. package/source/angular/textbox/smart.textbox.ts +708 -0
  434. package/source/angular/threedchart/index.ts +1 -0
  435. package/source/angular/threedchart/public_api.ts +3 -0
  436. package/source/angular/threedchart/smart.element.ts +104 -0
  437. package/source/angular/threedchart/smart.threedchart.module.ts +12 -0
  438. package/source/angular/threedchart/smart.threedchart.ts +1043 -0
  439. package/source/angular/timeinput/index.ts +1 -0
  440. package/source/angular/timeinput/public_api.ts +3 -0
  441. package/source/angular/timeinput/smart.element.ts +104 -0
  442. package/source/angular/timeinput/smart.timeinput.module.ts +12 -0
  443. package/source/angular/timeinput/smart.timeinput.ts +427 -0
  444. package/source/angular/timepicker/index.ts +1 -0
  445. package/source/angular/timepicker/public_api.ts +3 -0
  446. package/source/angular/timepicker/smart.element.ts +104 -0
  447. package/source/angular/timepicker/smart.timepicker.module.ts +12 -0
  448. package/source/angular/timepicker/smart.timepicker.ts +370 -0
  449. package/source/angular/toast/index.ts +1 -0
  450. package/source/angular/toast/public_api.ts +3 -0
  451. package/source/angular/toast/smart.element.ts +104 -0
  452. package/source/angular/toast/smart.toast.module.ts +12 -0
  453. package/source/angular/toast/smart.toast.ts +405 -0
  454. package/source/angular/tooltip/index.ts +1 -0
  455. package/source/angular/tooltip/public_api.ts +3 -0
  456. package/source/angular/tooltip/smart.element.ts +104 -0
  457. package/source/angular/tooltip/smart.tooltip.module.ts +12 -0
  458. package/source/angular/tooltip/smart.tooltip.ts +339 -0
  459. package/source/angular/tree/index.ts +1 -0
  460. package/source/angular/tree/public_api.ts +7 -0
  461. package/source/angular/tree/smart.element.ts +104 -0
  462. package/source/angular/tree/smart.tree.module.ts +14 -0
  463. package/source/angular/tree/smart.tree.ts +1042 -0
  464. package/source/angular/tree/smart.treeitem.ts +135 -0
  465. package/source/angular/tree/smart.treeitemsgroup.ts +135 -0
  466. package/source/angular/validator/index.ts +1 -0
  467. package/source/angular/validator/public_api.ts +3 -0
  468. package/source/angular/validator/smart.element.ts +104 -0
  469. package/source/angular/validator/smart.validator.module.ts +12 -0
  470. package/source/angular/validator/smart.validator.ts +124 -0
  471. package/source/angular/window/index.ts +1 -0
  472. package/source/angular/window/public_api.ts +3 -0
  473. package/source/angular/window/smart.element.ts +104 -0
  474. package/source/angular/window/smart.window.module.ts +12 -0
  475. package/source/angular/window/smart.window.ts +1180 -0
  476. package/source/components/smart.ui.chart.js +1 -1
  477. package/source/components/smart.ui.pivottable.js +1 -1
  478. package/source/modules/smart.3dchart.js +1 -1
  479. package/source/modules/smart.accordion.js +1 -1
  480. package/source/modules/smart.array.js +1 -1
  481. package/source/modules/smart.barcode.js +1 -1
  482. package/source/modules/smart.breadcrumb.js +1 -1
  483. package/source/modules/smart.button.js +1 -1
  484. package/source/modules/smart.buttongroup.js +1 -1
  485. package/source/modules/smart.calendar.js +1 -1
  486. package/source/modules/smart.card.js +1 -1
  487. package/source/modules/smart.cardview.js +1 -1
  488. package/source/modules/smart.carousel.js +1 -1
  489. package/source/modules/smart.chart.js +2 -2
  490. package/source/modules/smart.checkbox.js +1 -1
  491. package/source/modules/smart.checkinput.js +1 -1
  492. package/source/modules/smart.chip.js +1 -1
  493. package/source/modules/smart.colorinput.js +1 -1
  494. package/source/modules/smart.colorpanel.js +1 -1
  495. package/source/modules/smart.colorpicker.js +1 -1
  496. package/source/modules/smart.combobox.js +1 -1
  497. package/source/modules/smart.common.js +1 -1
  498. package/source/modules/smart.countryinput.js +1 -1
  499. package/source/modules/smart.dateinput.js +1 -1
  500. package/source/modules/smart.daterangeinput.js +1 -1
  501. package/source/modules/smart.datetimepicker.js +1 -1
  502. package/source/modules/smart.dockinglayout.js +1 -1
  503. package/source/modules/smart.dropdownbutton.js +1 -1
  504. package/source/modules/smart.dropdownlist.js +1 -1
  505. package/source/modules/smart.editor.js +1 -1
  506. package/source/modules/smart.element.js +1 -1
  507. package/source/modules/smart.fileupload.js +1 -1
  508. package/source/modules/smart.form.js +1 -1
  509. package/source/modules/smart.formulaparser.js +1 -1
  510. package/source/modules/smart.ganttchart.js +1 -1
  511. package/source/modules/smart.gauge.js +1 -1
  512. package/source/modules/smart.grid.js +1 -1
  513. package/source/modules/smart.gridpanel.js +1 -1
  514. package/source/modules/smart.input.js +1 -1
  515. package/source/modules/smart.kanban.js +1 -1
  516. package/source/modules/smart.layout.js +1 -1
  517. package/source/modules/smart.led.js +1 -1
  518. package/source/modules/smart.listbox.js +1 -1
  519. package/source/modules/smart.listmenu.js +1 -1
  520. package/source/modules/smart.map.js +1 -1
  521. package/source/modules/smart.maskedtextbox.js +1 -1
  522. package/source/modules/smart.menu.js +1 -1
  523. package/source/modules/smart.multicomboinput.js +1 -1
  524. package/source/modules/smart.multiinput.js +1 -1
  525. package/source/modules/smart.multilinetextbox.js +1 -1
  526. package/source/modules/smart.multisplitbutton.js +1 -1
  527. package/source/modules/smart.numberinput.js +1 -1
  528. package/source/modules/smart.numerictextbox.js +1 -1
  529. package/source/modules/smart.pager.js +1 -1
  530. package/source/modules/smart.passwordinput.js +1 -1
  531. package/source/modules/smart.passwordtextbox.js +1 -1
  532. package/source/modules/smart.path.js +1 -1
  533. package/source/modules/smart.phoneinput.js +1 -1
  534. package/source/modules/smart.pivottable.js +2 -2
  535. package/source/modules/smart.progressbar.js +1 -1
  536. package/source/modules/smart.qrcode.js +1 -1
  537. package/source/modules/smart.querybuilder.js +1 -1
  538. package/source/modules/smart.radiobutton.js +1 -1
  539. package/source/modules/smart.rating.js +1 -1
  540. package/source/modules/smart.router.js +1 -1
  541. package/source/modules/smart.scheduler.js +1 -1
  542. package/source/modules/smart.scrollbar.js +1 -1
  543. package/source/modules/smart.slider.js +1 -1
  544. package/source/modules/smart.sortable.js +1 -1
  545. package/source/modules/smart.splitter.js +1 -1
  546. package/source/modules/smart.switchbutton.js +1 -1
  547. package/source/modules/smart.table.js +1 -1
  548. package/source/modules/smart.tabs.js +1 -1
  549. package/source/modules/smart.tank.js +1 -1
  550. package/source/modules/smart.textarea.js +1 -1
  551. package/source/modules/smart.textbox.js +1 -1
  552. package/source/modules/smart.timeinput.js +1 -1
  553. package/source/modules/smart.timepicker.js +1 -1
  554. package/source/modules/smart.toast.js +1 -1
  555. package/source/modules/smart.tooltip.js +1 -1
  556. package/source/modules/smart.tree.js +1 -1
  557. package/source/modules/smart.validator.js +1 -1
  558. package/source/modules/smart.window.js +1 -1
  559. package/source/react/accordion/accordion.jsx +462 -0
  560. package/source/react/accordion/accordion.tsx +466 -0
  561. package/source/react/accordion/accordionitem.jsx +211 -0
  562. package/source/react/accordion/accordionitem.tsx +229 -0
  563. package/source/react/alertwindow/alertwindow.jsx +1391 -0
  564. package/source/react/alertwindow/alertwindow.tsx +1349 -0
  565. package/source/react/array/array.jsx +907 -0
  566. package/source/react/array/array.tsx +909 -0
  567. package/source/react/barcode/barcode.jsx +372 -0
  568. package/source/react/barcode/barcode.tsx +394 -0
  569. package/source/react/breadcrumb/breadcrumb.jsx +399 -0
  570. package/source/react/breadcrumb/breadcrumb.tsx +405 -0
  571. package/source/react/button/button.jsx +331 -0
  572. package/source/react/button/button.tsx +359 -0
  573. package/source/react/button/powerbutton.jsx +301 -0
  574. package/source/react/button/powerbutton.tsx +323 -0
  575. package/source/react/button/repeatbutton.jsx +325 -0
  576. package/source/react/button/repeatbutton.tsx +347 -0
  577. package/source/react/button/togglebutton.jsx +337 -0
  578. package/source/react/button/togglebutton.tsx +351 -0
  579. package/source/react/buttongroup/buttongroup.jsx +340 -0
  580. package/source/react/buttongroup/buttongroup.tsx +362 -0
  581. package/source/react/calendar/calendar.jsx +868 -0
  582. package/source/react/calendar/calendar.tsx +866 -0
  583. package/source/react/card/card.jsx +313 -0
  584. package/source/react/card/card.tsx +323 -0
  585. package/source/react/cardview/cardview.jsx +664 -0
  586. package/source/react/cardview/cardview.tsx +656 -0
  587. package/source/react/carousel/carousel.jsx +546 -0
  588. package/source/react/carousel/carousel.tsx +556 -0
  589. package/source/react/chart/chart.jsx +1014 -0
  590. package/source/react/chart/chart.tsx +996 -0
  591. package/source/react/checkbox/checkbox.jsx +361 -0
  592. package/source/react/checkbox/checkbox.tsx +375 -0
  593. package/source/react/checkinput/checkinput.jsx +566 -0
  594. package/source/react/checkinput/checkinput.tsx +588 -0
  595. package/source/react/chip/chip.jsx +329 -0
  596. package/source/react/chip/chip.tsx +351 -0
  597. package/source/react/colorinput/colorinput.jsx +516 -0
  598. package/source/react/colorinput/colorinput.tsx +538 -0
  599. package/source/react/colorpanel/colorpanel.jsx +570 -0
  600. package/source/react/colorpanel/colorpanel.tsx +580 -0
  601. package/source/react/colorpicker/colorpicker.jsx +846 -0
  602. package/source/react/colorpicker/colorpicker.tsx +824 -0
  603. package/source/react/columnpanel/columnpanel.jsx +276 -0
  604. package/source/react/columnpanel/columnpanel.tsx +294 -0
  605. package/source/react/combobox/combobox.jsx +1212 -0
  606. package/source/react/combobox/combobox.tsx +1198 -0
  607. package/source/react/combobox/listitem.jsx +279 -0
  608. package/source/react/combobox/listitem.tsx +305 -0
  609. package/source/react/combobox/listitemsgroup.jsx +159 -0
  610. package/source/react/combobox/listitemsgroup.tsx +185 -0
  611. package/source/react/countryinput/countryinput.jsx +409 -0
  612. package/source/react/countryinput/countryinput.tsx +423 -0
  613. package/source/react/customizationdialog/customizationdialog.jsx +425 -0
  614. package/source/react/customizationdialog/customizationdialog.tsx +435 -0
  615. package/source/react/dateinput/dateinput.jsx +513 -0
  616. package/source/react/dateinput/dateinput.tsx +535 -0
  617. package/source/react/daterangeinput/daterangeinput.jsx +516 -0
  618. package/source/react/daterangeinput/daterangeinput.tsx +538 -0
  619. package/source/react/datetimepicker/datetimepicker.jsx +967 -0
  620. package/source/react/datetimepicker/datetimepicker.tsx +973 -0
  621. package/source/react/dialogwindow/dialogwindow.jsx +1391 -0
  622. package/source/react/dialogwindow/dialogwindow.tsx +1349 -0
  623. package/source/react/dockinglayout/dockinglayout.jsx +923 -0
  624. package/source/react/dockinglayout/dockinglayout.tsx +925 -0
  625. package/source/react/dropdownbutton/dropdownbutton.jsx +665 -0
  626. package/source/react/dropdownbutton/dropdownbutton.tsx +659 -0
  627. package/source/react/dropdownlist/dropdownlist.jsx +1148 -0
  628. package/source/react/dropdownlist/dropdownlist.tsx +1130 -0
  629. package/source/react/dropdownlist/listitem.jsx +279 -0
  630. package/source/react/dropdownlist/listitem.tsx +305 -0
  631. package/source/react/dropdownlist/listitemsgroup.jsx +159 -0
  632. package/source/react/dropdownlist/listitemsgroup.tsx +185 -0
  633. package/source/react/editor/editor.jsx +1373 -0
  634. package/source/react/editor/editor.tsx +1287 -0
  635. package/source/react/element/element.jsx +392 -0
  636. package/source/react/element/element.tsx +410 -0
  637. package/source/react/fileupload/fileupload.jsx +643 -0
  638. package/source/react/fileupload/fileupload.tsx +641 -0
  639. package/source/react/filterbuilder/filterbuilder.jsx +608 -0
  640. package/source/react/filterbuilder/filterbuilder.tsx +594 -0
  641. package/source/react/filterpanel/filterpanel.jsx +433 -0
  642. package/source/react/filterpanel/filterpanel.tsx +447 -0
  643. package/source/react/form/form.jsx +383 -0
  644. package/source/react/form/form.tsx +413 -0
  645. package/source/react/form/formcontrol.jsx +495 -0
  646. package/source/react/form/formcontrol.tsx +521 -0
  647. package/source/react/form/formgroup.jsx +310 -0
  648. package/source/react/form/formgroup.tsx +336 -0
  649. package/source/react/ganttchart/ganttchart.jsx +2202 -0
  650. package/source/react/ganttchart/ganttchart.tsx +2116 -0
  651. package/source/react/gauge/gauge.jsx +755 -0
  652. package/source/react/gauge/gauge.tsx +777 -0
  653. package/source/react/grid/grid.jsx +2906 -0
  654. package/source/react/grid/grid.tsx +2782 -0
  655. package/source/react/grouppanel/grouppanel.jsx +313 -0
  656. package/source/react/grouppanel/grouppanel.tsx +323 -0
  657. package/source/react/input/input.jsx +626 -0
  658. package/source/react/input/input.tsx +632 -0
  659. package/source/react/kanban/kanban.jsx +1824 -0
  660. package/source/react/kanban/kanban.tsx +1736 -0
  661. package/source/react/layout/layout.jsx +449 -0
  662. package/source/react/layout/layout.tsx +451 -0
  663. package/source/react/layout/layoutgroup.jsx +233 -0
  664. package/source/react/layout/layoutgroup.tsx +259 -0
  665. package/source/react/layout/layoutitem.jsx +219 -0
  666. package/source/react/layout/layoutitem.tsx +245 -0
  667. package/source/react/layout/tablayoutgroup.jsx +243 -0
  668. package/source/react/layout/tablayoutgroup.tsx +269 -0
  669. package/source/react/layout/tablayoutitem.jsx +231 -0
  670. package/source/react/layout/tablayoutitem.tsx +257 -0
  671. package/source/react/led/led.jsx +412 -0
  672. package/source/react/led/led.tsx +434 -0
  673. package/source/react/listbox/listbox.jsx +1044 -0
  674. package/source/react/listbox/listbox.tsx +1030 -0
  675. package/source/react/listbox/listitem.jsx +279 -0
  676. package/source/react/listbox/listitem.tsx +305 -0
  677. package/source/react/listbox/listitemsgroup.jsx +159 -0
  678. package/source/react/listbox/listitemsgroup.tsx +185 -0
  679. package/source/react/listmenu/listmenu.jsx +740 -0
  680. package/source/react/listmenu/listmenu.tsx +746 -0
  681. package/source/react/listmenu/menuitem.jsx +231 -0
  682. package/source/react/listmenu/menuitem.tsx +257 -0
  683. package/source/react/listmenu/menuitemsgroup.jsx +267 -0
  684. package/source/react/listmenu/menuitemsgroup.tsx +293 -0
  685. package/source/react/map/map.jsx +233 -0
  686. package/source/react/map/map.tsx +259 -0
  687. package/source/react/maskedtextbox/maskedtextbox.jsx +617 -0
  688. package/source/react/maskedtextbox/maskedtextbox.tsx +631 -0
  689. package/source/react/menu/menu.jsx +817 -0
  690. package/source/react/menu/menu.tsx +807 -0
  691. package/source/react/menu/menuitem.jsx +231 -0
  692. package/source/react/menu/menuitem.tsx +257 -0
  693. package/source/react/menu/menuitemsgroup.jsx +267 -0
  694. package/source/react/menu/menuitemsgroup.tsx +293 -0
  695. package/source/react/multicolumnfilterpanel/multicolumnfilterpanel.jsx +361 -0
  696. package/source/react/multicolumnfilterpanel/multicolumnfilterpanel.tsx +371 -0
  697. package/source/react/multicomboinput/multicomboinput.jsx +626 -0
  698. package/source/react/multicomboinput/multicomboinput.tsx +648 -0
  699. package/source/react/multiinput/multiinput.jsx +566 -0
  700. package/source/react/multiinput/multiinput.tsx +588 -0
  701. package/source/react/multilinetextbox/listitem.jsx +279 -0
  702. package/source/react/multilinetextbox/listitem.tsx +305 -0
  703. package/source/react/multilinetextbox/listitemsgroup.jsx +159 -0
  704. package/source/react/multilinetextbox/listitemsgroup.tsx +185 -0
  705. package/source/react/multilinetextbox/multilinetextbox.jsx +638 -0
  706. package/source/react/multilinetextbox/multilinetextbox.tsx +664 -0
  707. package/source/react/multilinewindow/multilinewindow.jsx +1391 -0
  708. package/source/react/multilinewindow/multilinewindow.tsx +1349 -0
  709. package/source/react/multisplitbutton/listitem.jsx +279 -0
  710. package/source/react/multisplitbutton/listitem.tsx +305 -0
  711. package/source/react/multisplitbutton/listitemsgroup.jsx +159 -0
  712. package/source/react/multisplitbutton/listitemsgroup.tsx +185 -0
  713. package/source/react/multisplitbutton/multisplitbutton.jsx +751 -0
  714. package/source/react/multisplitbutton/multisplitbutton.tsx +745 -0
  715. package/source/react/numberinput/numberinput.jsx +413 -0
  716. package/source/react/numberinput/numberinput.tsx +435 -0
  717. package/source/react/numerictextbox/numerictextbox.jsx +721 -0
  718. package/source/react/numerictextbox/numerictextbox.tsx +719 -0
  719. package/source/react/pager/pager.jsx +524 -0
  720. package/source/react/pager/pager.tsx +542 -0
  721. package/source/react/passwordinput/passwordinput.jsx +317 -0
  722. package/source/react/passwordinput/passwordinput.tsx +335 -0
  723. package/source/react/passwordtextbox/passwordtextbox.jsx +523 -0
  724. package/source/react/passwordtextbox/passwordtextbox.tsx +541 -0
  725. package/source/react/path/path.jsx +629 -0
  726. package/source/react/path/path.tsx +623 -0
  727. package/source/react/phoneinput/phoneinput.jsx +481 -0
  728. package/source/react/phoneinput/phoneinput.tsx +495 -0
  729. package/source/react/pivottable/pivottable.jsx +990 -0
  730. package/source/react/pivottable/pivottable.tsx +980 -0
  731. package/source/react/progressbar/circularprogressbar.jsx +337 -0
  732. package/source/react/progressbar/circularprogressbar.tsx +359 -0
  733. package/source/react/progressbar/progressbar.jsx +351 -0
  734. package/source/react/progressbar/progressbar.tsx +375 -0
  735. package/source/react/progresswindow/progresswindow.jsx +1391 -0
  736. package/source/react/progresswindow/progresswindow.tsx +1349 -0
  737. package/source/react/promptwindow/promptwindow.jsx +1391 -0
  738. package/source/react/promptwindow/promptwindow.tsx +1349 -0
  739. package/source/react/qrcode/qrcode.jsx +396 -0
  740. package/source/react/qrcode/qrcode.tsx +418 -0
  741. package/source/react/querybuilder/querybuilder.jsx +589 -0
  742. package/source/react/querybuilder/querybuilder.tsx +587 -0
  743. package/source/react/radiobutton/radiobutton.jsx +373 -0
  744. package/source/react/radiobutton/radiobutton.tsx +387 -0
  745. package/source/react/rating/rating.jsx +315 -0
  746. package/source/react/rating/rating.tsx +337 -0
  747. package/source/react/scheduler/scheduler.jsx +2452 -0
  748. package/source/react/scheduler/scheduler.tsx +2336 -0
  749. package/source/react/scrollbar/scrollbar.jsx +380 -0
  750. package/source/react/scrollbar/scrollbar.tsx +402 -0
  751. package/source/react/slider/slider.jsx +731 -0
  752. package/source/react/slider/slider.tsx +753 -0
  753. package/source/react/sortable/sortable.jsx +319 -0
  754. package/source/react/sortable/sortable.tsx +341 -0
  755. package/source/react/sortpanel/sortpanel.jsx +273 -0
  756. package/source/react/sortpanel/sortpanel.tsx +291 -0
  757. package/source/react/splitter/splitter.jsx +613 -0
  758. package/source/react/splitter/splitter.tsx +627 -0
  759. package/source/react/splitter/splitterbar.jsx +205 -0
  760. package/source/react/splitter/splitterbar.tsx +231 -0
  761. package/source/react/splitter/splitteritem.jsx +288 -0
  762. package/source/react/splitter/splitteritem.tsx +314 -0
  763. package/source/react/switchbutton/switchbutton.jsx +421 -0
  764. package/source/react/switchbutton/switchbutton.tsx +435 -0
  765. package/source/react/table/table.jsx +1628 -0
  766. package/source/react/table/table.tsx +1590 -0
  767. package/source/react/tabs/tabitem.jsx +219 -0
  768. package/source/react/tabs/tabitem.tsx +245 -0
  769. package/source/react/tabs/tabitemsgroup.jsx +171 -0
  770. package/source/react/tabs/tabitemsgroup.tsx +197 -0
  771. package/source/react/tabs/tabs.jsx +720 -0
  772. package/source/react/tabs/tabs.tsx +722 -0
  773. package/source/react/tabswindow/tabswindow.jsx +1391 -0
  774. package/source/react/tabswindow/tabswindow.tsx +1349 -0
  775. package/source/react/tank/tank.jsx +680 -0
  776. package/source/react/tank/tank.tsx +702 -0
  777. package/source/react/textarea/textarea.jsx +541 -0
  778. package/source/react/textarea/textarea.tsx +559 -0
  779. package/source/react/textbox/listitem.jsx +279 -0
  780. package/source/react/textbox/listitem.tsx +305 -0
  781. package/source/react/textbox/listitemsgroup.jsx +159 -0
  782. package/source/react/textbox/listitemsgroup.tsx +185 -0
  783. package/source/react/textbox/textbox.jsx +842 -0
  784. package/source/react/textbox/textbox.tsx +864 -0
  785. package/source/react/threedchart/threedchart.jsx +1124 -0
  786. package/source/react/threedchart/threedchart.tsx +1106 -0
  787. package/source/react/timeinput/timeinput.jsx +463 -0
  788. package/source/react/timeinput/timeinput.tsx +485 -0
  789. package/source/react/timepicker/timepicker.jsx +406 -0
  790. package/source/react/timepicker/timepicker.tsx +428 -0
  791. package/source/react/toast/toast.jsx +510 -0
  792. package/source/react/toast/toast.tsx +508 -0
  793. package/source/react/tooltip/tooltip.jsx +453 -0
  794. package/source/react/tooltip/tooltip.tsx +463 -0
  795. package/source/react/tree/tree.jsx +1176 -0
  796. package/source/react/tree/tree.tsx +1158 -0
  797. package/source/react/tree/treeitem.jsx +243 -0
  798. package/source/react/tree/treeitem.tsx +269 -0
  799. package/source/react/tree/treeitemsgroup.jsx +243 -0
  800. package/source/react/tree/treeitemsgroup.tsx +269 -0
  801. package/source/react/validator/validator.jsx +202 -0
  802. package/source/react/validator/validator.tsx +228 -0
  803. package/source/react/waitwindow/waitwindow.jsx +1391 -0
  804. package/source/react/waitwindow/waitwindow.tsx +1349 -0
  805. package/source/react/window/window.jsx +1375 -0
  806. package/source/react/window/window.tsx +1349 -0
  807. package/source/smart.3dchart.js +6 -0
  808. package/source/smart.accordion.js +6 -0
  809. package/source/smart.ajax.js +5 -0
  810. package/source/smart.array.js +6 -0
  811. package/source/smart.barcode.js +6 -0
  812. package/source/smart.bootstrap.js +6 -0
  813. package/source/smart.breadcrumb.js +6 -0
  814. package/source/smart.button.js +6 -0
  815. package/source/smart.buttongroup.js +6 -0
  816. package/source/smart.calendar.js +6 -0
  817. package/source/smart.card.js +6 -0
  818. package/source/smart.cardview.js +6 -0
  819. package/source/smart.carousel.js +6 -0
  820. package/source/smart.chart.annotations.js +6 -0
  821. package/source/smart.chart.api.js +6 -0
  822. package/source/smart.chart.core.js +6 -0
  823. package/source/smart.chart.js +6 -0
  824. package/source/smart.chart.rangeselector.js +6 -0
  825. package/source/smart.chart.waterfall.js +6 -0
  826. package/source/smart.checkbox.js +6 -0
  827. package/source/smart.checkinput.js +6 -0
  828. package/source/smart.chip.js +6 -0
  829. package/source/smart.colorinput.js +6 -0
  830. package/source/smart.colorpanel.js +6 -0
  831. package/source/smart.colorpicker.js +6 -0
  832. package/source/smart.combobox.js +6 -0
  833. package/source/smart.complex.js +6 -0
  834. package/source/smart.core.js +6 -0
  835. package/source/smart.countryinput.js +6 -0
  836. package/source/smart.data.js +6 -0
  837. package/source/smart.date.js +6 -0
  838. package/source/smart.dateformatpanel.js +6 -0
  839. package/source/smart.dateinput.js +6 -0
  840. package/source/smart.daterangeinput.js +6 -0
  841. package/source/smart.datetimepicker.js +6 -0
  842. package/source/smart.dockinglayout.js +6 -0
  843. package/source/smart.draw.js +6 -0
  844. package/source/smart.dropdownbutton.js +6 -0
  845. package/source/smart.dropdownlist.js +6 -0
  846. package/source/smart.editor.js +6 -0
  847. package/source/smart.element.js +6 -0
  848. package/source/smart.elements.js +3 -3
  849. package/source/smart.export.js +6 -0
  850. package/source/smart.fileupload.js +6 -0
  851. package/source/smart.filter.js +6 -0
  852. package/source/smart.filterbuilder.js +6 -0
  853. package/source/smart.filterpanel.js +6 -0
  854. package/source/smart.form.js +6 -0
  855. package/source/smart.format.js +6 -0
  856. package/source/smart.formulaparser.js +6 -0
  857. package/source/smart.ganttchart.js +6 -0
  858. package/source/smart.gauge.js +6 -0
  859. package/source/smart.grid.cell.js +6 -0
  860. package/source/smart.grid.chart.js +6 -0
  861. package/source/smart.grid.column.js +6 -0
  862. package/source/smart.grid.core.js +6 -0
  863. package/source/smart.grid.dialog.js +6 -0
  864. package/source/smart.grid.edit.js +6 -0
  865. package/source/smart.grid.export.js +6 -0
  866. package/source/smart.grid.filter.js +6 -0
  867. package/source/smart.grid.group.js +6 -0
  868. package/source/smart.grid.js +6 -0
  869. package/source/smart.grid.menu.js +6 -0
  870. package/source/smart.grid.pager.js +6 -0
  871. package/source/smart.grid.reorder.js +6 -0
  872. package/source/smart.grid.resize.js +6 -0
  873. package/source/smart.grid.row.js +6 -0
  874. package/source/smart.grid.select.js +6 -0
  875. package/source/smart.grid.sort.js +6 -0
  876. package/source/smart.grid.toolbar.js +6 -0
  877. package/source/smart.grid.tree.js +6 -0
  878. package/source/smart.grid.view.js +6 -0
  879. package/source/smart.gridpanel.js +6 -0
  880. package/source/smart.input.js +6 -0
  881. package/source/smart.kanban.js +6 -0
  882. package/source/smart.layout.js +6 -0
  883. package/source/smart.led.js +6 -0
  884. package/source/smart.listbox.js +6 -0
  885. package/source/smart.listmenu.js +6 -0
  886. package/source/smart.map.js +6 -0
  887. package/source/smart.maskedtextbox.js +6 -0
  888. package/source/smart.math.js +6 -0
  889. package/source/smart.menu.js +6 -0
  890. package/source/smart.multicomboinput.js +6 -0
  891. package/source/smart.multiinput.js +6 -0
  892. package/source/smart.multilinetextbox.js +6 -0
  893. package/source/smart.multisplitbutton.js +6 -0
  894. package/source/smart.numberformatpanel.js +6 -0
  895. package/source/smart.numberinput.js +6 -0
  896. package/source/smart.numeric.js +6 -0
  897. package/source/smart.numerictextbox.js +6 -0
  898. package/source/smart.pager.js +6 -0
  899. package/source/smart.passwordinput.js +6 -0
  900. package/source/smart.passwordtextbox.js +6 -0
  901. package/source/smart.path.js +6 -0
  902. package/source/smart.phoneinput.js +6 -0
  903. package/source/smart.pivottable.js +6 -0
  904. package/source/smart.powerbutton.js +6 -0
  905. package/source/smart.progressbar.js +6 -0
  906. package/source/smart.qrcode.js +6 -0
  907. package/source/smart.radiobutton.js +6 -0
  908. package/source/smart.rating.js +6 -0
  909. package/source/smart.router.js +6 -0
  910. package/source/smart.scheduler.js +6 -0
  911. package/source/smart.scrollbar.js +6 -0
  912. package/source/smart.slider.js +6 -0
  913. package/source/smart.sortable.js +6 -0
  914. package/source/smart.splitter.js +6 -0
  915. package/source/smart.switchbutton.js +6 -0
  916. package/source/smart.table.js +6 -0
  917. package/source/smart.tabs.js +6 -0
  918. package/source/smart.tank.js +6 -0
  919. package/source/smart.textarea.js +6 -0
  920. package/source/smart.textbox.js +6 -0
  921. package/source/smart.tickintervalhandler.js +6 -0
  922. package/source/smart.timeinput.js +6 -0
  923. package/source/smart.timepicker.js +6 -0
  924. package/source/smart.toast.js +6 -0
  925. package/source/smart.tooltip.js +6 -0
  926. package/source/smart.tree.js +6 -0
  927. package/source/smart.validationpanel.js +6 -0
  928. package/source/smart.validator.js +6 -0
  929. package/source/smart.window.js +6 -0
@@ -31,7 +31,7 @@ Smart.Chart&&(Smart.Chart.prototype._moduleApi=!0,Smart.Chart.prototype.getItems
31
31
  /***/ 7799:
32
32
  /***/ (() => {
33
33
 
34
- Smart("smart-chart",class extends Smart.BaseElement{static get properties(){return{animationDuration:{value:300,type:"number"},backgroundColor:{value:null,type:"string?"},backgroundImage:{value:"",type:"string"},borderLineColor:{value:null,type:"string?"},borderLineWidth:{value:1,type:"number"},caption:{value:"Caption",type:"string"},clip:{value:!0,type:"boolean"},colorScheme:{value:"scheme01",type:"string"},columnSeriesOverlap:{value:!1,type:"boolean"},crosshairsColor:{value:null,type:"string?"},crosshairsDashStyle:{value:"2,2",type:"string"},crosshairsLineWidth:{value:1,type:"number"},dataSource:{value:[],type:"object",reflectToAttribute:!1},description:{value:"Description",type:"string"},draw:{value:null,type:"function?"},drawBefore:{value:null,type:"function?"},enableAxisTextAnimation:{value:!1,type:"boolean"},enableCrosshairs:{value:!1,type:"boolean"},greyScale:{value:!1,type:"boolean"},legendLayout:{value:{flow:{value:"horizontal",allowedValues:["horizontal","vertical"],type:"string"},height:{value:null,type:"number?"},left:{value:null,type:"number?"},top:{value:null,type:"number?"},width:{value:null,type:"number?"}},type:"object?"},localization:{value:{decimalSeparator:{value:".",type:"string"},patterns:{value:null,type:"object?"},thousandsSeparator:{value:"",type:"string"}},type:"object"},messages:{value:{en:{invalidRadiusDataField:"smart-chart: Invalid radiusDataField value at [{{index}}]",invalidSeries:"smart-chart: Invalid property: each series group must have a 'series' property which must be a valid array.",invalidSeriesGroups:"smart-chart: Invalid property: 'seriesGroups' property is required and must be a valid array.",invalidType:'smart-chart: Invalid serie type "{{type}}".',missingAxis:"smart-chart: seriesGroup[{{index}}] is missing {{axis}} definition.",missingReference:"smart-chart: Missing reference to {{files}}.",missingType:"smart-chart: Invalid property: each series group must have a valid 'type' property."}},type:"object",extend:!0},padding:{value:{bottom:{value:5,type:"number"},left:{value:5,type:"number"},right:{value:5,type:"number"},top:{value:5,type:"number"}},type:"object"},renderEngine:{value:"",allowedValues:["","SVG","HTML5"],type:"string"},rightToLeft:{value:!1,type:"boolean"},seriesGroups:{value:[],type:"any",reflectToAttribute:!1},showBorderLine:{value:!0,type:"boolean"},showLegend:{value:!0,type:"boolean"},showToolTips:{value:!0,type:"boolean"},showToolTipsOnAllSeries:{value:!1,type:"boolean"},theme:{value:"light",allowedValues:["light","dark"],type:"string"},titlePadding:{value:{bottom:{value:10,type:"number"},left:{value:5,type:"number"},right:{value:5,type:"number"},top:{value:5,type:"number"}},type:"object"},toolTipBackground:{value:null,type:"string?"},toolTipFormatFunction:{value:null,type:"function?"},toolTipHideDelay:{value:4e3,type:"number"},toolTipLineColor:{value:null,type:"string?"},toolTipShowDelay:{value:300,type:"number"},valueAxis:{value:{alternatingBackgroundColor:{value:"",type:"string"},alternatingBackgroundColor2:{value:"",type:"string"},alternatingBackgroundOpacity:{value:1,type:"number"},axisSize:{value:null,type:"any"},bands:{value:null,type:"array?"},baselineValue:{value:0,type:"any"},customDraw:{value:!1,type:"boolean"},flip:{value:!1,type:"boolean"},formatFunction:{value:null,type:"function?"},formatSettings:{value:{dateFormat:{value:null,type:"string?"},decimalPlaces:{value:null,type:"number?"},decimalSeparator:{value:null,type:"string?"},negativeWithBrackets:{value:!1,type:"boolean"},prefix:{value:"",type:"string"},sufix:{value:"",type:"string"},thousandsSeparator:{value:null,type:"string?"}},type:"object"},gridLines:{value:{color:{value:"",type:"string"},custom:{value:null,type:"array?"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},visible:{value:!0,type:"any"}},type:"object"},labels:{value:{angle:{value:0,type:"number"},autoRotate:{value:!1,type:"boolean"},class:{value:null,type:"string?"},custom:{value:null,type:"array?"},formatFunction:{value:null,type:"function?"},formatSettings:{value:{dateFormat:{value:null,type:"string?"},decimalPlaces:{value:null,type:"number?"},decimalSeparator:{value:null,type:"string?"},negativeWithBrackets:{value:!1,type:"boolean"},prefix:{value:"",type:"string"},sufix:{value:"",type:"string"},thousandsSeparator:{value:null,type:"string?"}},type:"object"},horizontalAlignment:{value:"center",allowedValues:["left","center","right"],type:"string"},offset:{value:{x:{value:0,type:"number"},y:{value:0,type:"number"}},type:"object"},rotationPoint:{value:"auto",allowedValues:["auto","left","center","right","topleft","topcenter","topright","bottomleft","bottomcenter","bottomright","centermiddle"],type:"string"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},verticalAlignment:{value:"center",allowedValues:["top","center","bottom"],type:"string"},visible:{value:!0,type:"any"}},type:"object"},line:{value:{color:{value:"",type:"string"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},visible:{value:!0,type:"any"}},type:"object"},logarithmicScale:{value:!1,type:"boolean"},logarithmicScaleBase:{value:10,type:"number"},maxValue:{value:NaN,type:"any"},minValue:{value:NaN,type:"any"},padding:{value:{bottom:{value:0,type:"number"},left:{value:0,type:"number"},right:{value:0,type:"number"},top:{value:0,type:"number"}},type:"object"},position:{value:"left",allowedValues:["left","right","top","bottom"],type:"string"},textRotationAngle:{value:null,type:"number?"},textRotationPoint:{value:"auto",allowedValues:["auto","left","center","right","topleft","topcenter","topright","bottomleft","bottomcenter","bottomright","centermiddle"],type:"string"},tickMarks:{value:{color:{value:"",type:"string"},custom:{value:null,type:"array?"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},size:{value:4,type:"number"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},visible:{value:!0,type:"any"}},type:"object"},title:{value:{class:{value:null,type:"string?"},horizontalAlignment:{value:"center",allowedValues:["left","center","right"],type:"string"},text:{value:"",type:"string"},verticalAlignment:{value:"center",allowedValues:["top","center","bottom"],type:"string"},visible:{value:!0,type:"boolean"}},type:"object"},unitInterval:{value:null,type:"number?"},valuesOnTicks:{value:!0,type:"boolean"},visible:{value:!0,type:"boolean"}},type:"object"},xAxis:{value:{alternatingBackgroundColor:{value:"",type:"string"},alternatingBackgroundColor2:{value:"",type:"string"},alternatingBackgroundOpacity:{value:1,type:"number"},axisSize:{value:null,type:"any"},bands:{value:null,type:"array?"},baseUnit:{value:null,allowedValues:["year","month","day","hour","minute","second","millisecond",null],type:"string?"},customDraw:{value:!1,type:"boolean"},dataField:{value:"",type:"string"},dateFormat:{value:null,type:"string?"},displayText:{value:null,type:"string?"},flip:{value:!1,type:"boolean"},formatFunction:{value:null,type:"function?"},formatSettings:{value:{dateFormat:{value:null,type:"string?"},decimalPlaces:{value:null,type:"number?"},decimalSeparator:{value:null,type:"string?"},negativeWithBrackets:{value:!1,type:"boolean"},prefix:{value:"",type:"string"},sufix:{value:"",type:"string"},thousandsSeparator:{value:null,type:"string?"}},type:"object"},gridLines:{value:{color:{value:"",type:"string"},custom:{value:null,type:"array?"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},visible:{value:!0,type:"any"}},type:"object"},labels:{value:{angle:{value:0,type:"number"},autoRotate:{value:!1,type:"boolean"},class:{value:null,type:"string?"},custom:{value:null,type:"array?"},formatFunction:{value:null,type:"function?"},formatSettings:{value:{dateFormat:{value:null,type:"string?"},decimalPlaces:{value:null,type:"number?"},decimalSeparator:{value:null,type:"string?"},negativeWithBrackets:{value:!1,type:"boolean"},prefix:{value:"",type:"string"},sufix:{value:"",type:"string"},thousandsSeparator:{value:null,type:"string?"}},type:"object"},horizontalAlignment:{value:"center",allowedValues:["left","center","right"],type:"string"},offset:{value:{x:{value:0,type:"number"},y:{value:0,type:"number"}},type:"object"},rotationPoint:{value:"auto",allowedValues:["auto","left","center","right","topleft","topcenter","topright","bottomleft","bottomcenter","bottomright","centermiddle"],type:"string"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},verticalAlignment:{value:"center",allowedValues:["top","center","bottom"],type:"string"},visible:{value:!0,type:"any"}},type:"object"},line:{value:{color:{value:"",type:"string"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},visible:{value:!0,type:"any"}},type:"object"},logarithmicScale:{value:!1,type:"boolean"},logarithmicScaleBase:{value:10,type:"number"},maxValue:{value:NaN,type:"any"},minValue:{value:NaN,type:"any"},padding:{value:{bottom:{value:0,type:"number"},left:{value:0,type:"number"},right:{value:0,type:"number"},top:{value:0,type:"number"}},type:"object"},position:{value:"bottom",allowedValues:["bottom","top","left","right"],type:"string"},rangeSelector:{value:{backgroundColor:{value:null,type:"string?"},backgroundImage:{value:"",type:"string"},baseUnit:{value:null,allowedValues:["year","month","day","hour","minute","second","millisecond",null],type:"string?"},borderLineColor:{value:null,type:"string?"},borderLineWidth:{value:null,type:"number?"},caption:{value:"",type:"string"},colorScheme:{value:null,type:"string?"},columnSeriesOverlap:{value:!1,type:"boolean"},columnsGapPercent:{value:25,type:"number"},dataField:{value:null,type:"string?"},description:{value:"",type:"string"},greyScale:{value:null,type:"boolean?"},gridLines:{value:{color:{value:"",type:"string"},custom:{value:null,type:"array?"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},visible:{value:!0,type:"any"}},type:"object"},labels:{value:{angle:{value:0,type:"number"},autoRotate:{value:!1,type:"boolean"},class:{value:null,type:"string?"},custom:{value:null,type:"array?"},formatFunction:{value:null,type:"function?"},formatSettings:{value:{dateFormat:{value:null,type:"string?"},decimalPlaces:{value:null,type:"number?"},decimalSeparator:{value:null,type:"string?"},negativeWithBrackets:{value:!1,type:"boolean"},prefix:{value:"",type:"string"},sufix:{value:"",type:"string"},thousandsSeparator:{value:null,type:"string?"}},type:"object"},horizontalAlignment:{value:"center",allowedValues:["left","center","right"],type:"string"},offset:{value:{x:{value:0,type:"number"},y:{value:0,type:"number"}},type:"object"},rotationPoint:{value:"auto",allowedValues:["auto","left","center","right","topleft","topcenter","topright","bottomleft","bottomcenter","bottomright","centermiddle"],type:"string"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},verticalAlignment:{value:"center",allowedValues:["top","center","bottom"],type:"string"},visible:{value:!0,type:"any"}},type:"object"},maxValue:{value:NaN,type:"any"},minValue:{value:NaN,type:"any"},padding:{value:{bottom:{value:0,type:"number"},left:{value:0,type:"number"},right:{value:0,type:"number"},top:{value:0,type:"number"}},type:"object"},position:{value:null,allowedValues:["bottom","top","left","right"],type:"string?"},renderTo:{value:null,type:"any"},rightToLeft:{value:null,type:"boolean?"},seriesGapPercent:{value:10,type:"number"},seriesGroups:{value:null,type:"array?"},serieType:{value:"area",type:"string"},showBorderLine:{value:null,type:"boolean?"},size:{value:null,type:"number?"},skipOverlappingPoints:{value:!0,type:"boolean"},titlePadding:{value:{bottom:{value:10,type:"number"},left:{value:5,type:"number"},right:{value:5,type:"number"},top:{value:5,type:"number"}},type:"object"},unitInterval:{value:null,type:"number?"},valueAxis:{value:{alternatingBackgroundColor:{value:"",type:"string"},alternatingBackgroundColor2:{value:"",type:"string"},alternatingBackgroundOpacity:{value:1,type:"number"},axisSize:{value:null,type:"any"},bands:{value:null,type:"array?"},baselineValue:{value:0,type:"any"},customDraw:{value:!1,type:"boolean"},flip:{value:!1,type:"boolean"},formatFunction:{value:null,type:"function?"},formatSettings:{value:{dateFormat:{value:null,type:"string?"},decimalPlaces:{value:null,type:"number?"},decimalSeparator:{value:null,type:"string?"},negativeWithBrackets:{value:!1,type:"boolean"},prefix:{value:"",type:"string"},sufix:{value:"",type:"string"},thousandsSeparator:{value:null,type:"string?"}},type:"object"},gridLines:{value:{color:{value:"",type:"string"},custom:{value:null,type:"array?"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},visible:{value:!0,type:"any"}},type:"object"},labels:{value:{angle:{value:0,type:"number"},autoRotate:{value:!1,type:"boolean"},class:{value:null,type:"string?"},custom:{value:null,type:"array?"},formatFunction:{value:null,type:"function?"},formatSettings:{value:{dateFormat:{value:null,type:"string?"},decimalPlaces:{value:null,type:"number?"},decimalSeparator:{value:null,type:"string?"},negativeWithBrackets:{value:!1,type:"boolean"},prefix:{value:"",type:"string"},sufix:{value:"",type:"string"},thousandsSeparator:{value:null,type:"string?"}},type:"object"},horizontalAlignment:{value:"center",allowedValues:["left","center","right"],type:"string"},offset:{value:{x:{value:0,type:"number"},y:{value:0,type:"number"}},type:"object"},rotationPoint:{value:"auto",allowedValues:["auto","left","center","right","topleft","topcenter","topright","bottomleft","bottomcenter","bottomright","centermiddle"],type:"string"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},verticalAlignment:{value:"center",allowedValues:["top","center","bottom"],type:"string"},visible:{value:!0,type:"any"}},type:"object"},line:{value:{color:{value:"",type:"string"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},visible:{value:!0,type:"any"}},type:"object"},logarithmicScale:{value:!1,type:"boolean"},logarithmicScaleBase:{value:10,type:"number"},maxValue:{value:NaN,type:"any"},minValue:{value:NaN,type:"any"},padding:{value:{bottom:{value:0,type:"number"},left:{value:0,type:"number"},right:{value:0,type:"number"},top:{value:0,type:"number"}},type:"object"},position:{value:"left",allowedValues:["left","right","top","bottom"],type:"string"},textRotationAngle:{value:null,type:"number?"},textRotationPoint:{value:"auto",allowedValues:["auto","left","center","right","topleft","topcenter","topright","bottomleft","bottomcenter","bottomright","centermiddle"],type:"string"},tickMarks:{value:{color:{value:"",type:"string"},custom:{value:null,type:"array?"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},size:{value:4,type:"number"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},visible:{value:!0,type:"any"}},type:"object"},title:{value:{class:{value:null,type:"string?"},horizontalAlignment:{value:"center",allowedValues:["left","center","right"],type:"string"},text:{value:"",type:"string"},verticalAlignment:{value:"center",allowedValues:["top","center","bottom"],type:"string"},visible:{value:!0,type:"boolean"}},type:"object"},unitInterval:{value:null,type:"number?"},valuesOnTicks:{value:!0,type:"boolean"},visible:{value:!1,type:"boolean"}},type:"object"},visible:{value:!1,type:"boolean"}},type:"object"},textRotationAngle:{value:null,type:"number?"},textRotationPoint:{value:"auto",allowedValues:["auto","left","center","right","topleft","topcenter","topright","bottomleft","bottomcenter","bottomright","centermiddle"],type:"string"},tickMarks:{value:{color:{value:"",type:"string"},custom:{value:null,type:"array?"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},size:{value:4,type:"number"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},visible:{value:!0,type:"any"}},type:"object"},title:{value:{class:{value:null,type:"string?"},horizontalAlignment:{value:"center",allowedValues:["left","center","right"],type:"string"},text:{value:"",type:"string"},verticalAlignment:{value:"center",allowedValues:["top","center","bottom"],type:"string"},visible:{value:!0,type:"boolean"}},type:"object"},toolTipFormatFunction:{value:null,type:"function?"},toolTipFormatSettings:{value:{dateFormat:{value:null,type:"string?"},decimalPlaces:{value:null,type:"number?"},decimalSeparator:{value:null,type:"string?"},negativeWithBrackets:{value:!1,type:"boolean"},prefix:{value:"",type:"string"},sufix:{value:"",type:"string"},thousandsSeparator:{value:null,type:"string?"}},type:"object"},type:{value:"auto",allowedValues:["auto","date","basic","linear"],type:"string"},unitInterval:{value:null,type:"number?"},valuesOnTicks:{value:!0,type:"boolean"},visible:{value:!0,type:"boolean"}},type:"object",reflectToAttribute:!1}}}get _legendLayout(){const e=this.legendLayout;return null!==e.height||null!==e.left||null!==e.top||null!==e.width||"vertical"===e.flow}_getFormatSettings(e,t){if(!e)return null;const i=e[t||"formatSettings"];return i&&(i.dateFormat||null!==i.decimalPlaces||i.decimalSeparator||i.negativeWithBrackets||i.prefix||i.sufix||i.thousandsSeparator)?i:null}static get listeners(){return{click:"_clickHandler",down:"_downMoveHandler",mouseleave:"_mouseleaveHandler",move:"_moveHandler",resize:"_resizeHandler","document.move":"_downMoveHandler","document.up":"_documentUpHandler"}}static get requires(){return{"Smart.Utilities.Draw":"smart.draw.js"}}static get styleUrls(){return["smart.chart.css"]}template(){return'<div role="presentation"></div>'}ready(){super.ready(),this.checkLicense()}render(){const e=this;e._observeSeriesGroups(),e._isTouchDevice=Smart.Utilities.Core.isMobile,e._setDefaults(),e._createColorsCache(),e.refresh(),e._setAriaProperties(),super.render()}attached(){const e=this;super.attached(),e.isCompleted&&!e._isRangeSelectorInstance&&Object.values(e._rangeSelectorInstances).forEach((e=>{e.parentDiv.parentDiv.appendChild(e.parentDiv)}))}detached(){const e=this;super.detached(),e._isRangeSelectorInstance||(e._ttEl&&e._ttEl.box&&e._ttEl.box.remove(),delete e._ttEl,Object.values(e._rangeSelectorInstances).forEach((e=>{e.parentDiv.remove()})))}_setAriaProperties(){const e=this;if(e._isRangeSelectorInstance)return;const t=e.xAxis,i=e.valueAxis,r=e.seriesGroups;let s=e.$.content.children[1],a="",l=!0;function n(e,t){e&&(e.title&&e.title.text||e.description||e.dataField)&&(a+='; "',e.title&&e.title.text?a+=e.title.text:a+=e.description||e.dataField,a+='" on the '+t,isNaN(e.minValue)||(a+=" from "+e.minValue),isNaN(e.maxValue)||(a+=" up to "+e.maxValue))}e.setAttribute("role","figure"),s||(s=document.createElement("div"),s.id=e.id+"DescriptionContainer",s.className="smart-hidden",e.$.content.appendChild(s)),e.setAttribute("aria-labelledby",e.id+"TitleText"),e.setAttribute("aria-describedby",e.id+"TitleDescription "+s.id),a+="This chart displays:",n(t,"x-axis"),n(i,"y-axis");for(let e=0;e<r.length;e++){const t=r[e];if(n(t.valueAxis,"y-axis"),t.series){l=l&&"horizontal"===t.orientation;for(let i=0;i<t.series.length;i++){const r=t.series[i];0===i&&(a+=0===e?" for ":"; "),a+='"'+(r.displayText||r.dataField)+'"',i!==t.series.length-1&&(a+=", ")}}}a=a.replace(":;",":"),a=a.replace(/<.+?>/g,""),l&&(a=a.replace(/x-axis/g,"@@@"),a=a.replace(/y-axis/g,"x-axis"),a=a.replace(/@@@/g,"y-axis")),e.description&&(a="; "+a),s.innerHTML=a}_observeSeriesGroups(){const e=this;function t(t){e.context!==e&&t.newValue!==t.oldValue&&e.update()}if(e._validateSeriesGroups(),Array.isArray(e.seriesGroups)){e.seriesGroups=new Smart.ObservableArray(e.seriesGroups),e.seriesGroups.canNotify=!0;for(let i=0;i<e.seriesGroups.length;i++)Array.isArray(e.seriesGroups[i].series)&&(e.seriesGroups[i].series=new Smart.ObservableArray(e.seriesGroups[i].series),e.seriesGroups[i].series.canNotify=!0,e.seriesGroups[i].series.notify(t));e.seriesGroups.notify(t)}}_downMoveHandler(e){const t=this;let i=e.originalEvent.target;t.shadowRoot&&i===t&&(i=e.originalEvent.composedPath()[0]);const r=i.closest(".smart-chart-range-selector");if(!r)return;const s=r.firstElementChild,a=s.parentChart;t!==s&&t!==a||a["_onSliderMouse"+e.type.slice(0,1).toUpperCase()+e.type.slice(1)](e)}_documentUpHandler(e){const t=this;t._draggingRangeSelector&&t._onSliderMouseUp(e)}_setDefaults(){const e=this;e.axisPadding=5,e.enableEvents=!0,e.enableSampling=!0,e._itemsToggleState=[],e._isToggleRefresh=!1,e._isSelectorRefresh=!1,e._sliders=[],e._selectorRange=[],e._rangeSelectorInstances={},e._resizeState={},e._isRangeSelectorInstance=e._isRangeSelectorInstance||!1,e._renderData={},e._smartPlot=null,e._animTickInt=50,e._seriesTypes=["line","stackedline","stackedline100","spline","stackedspline","stackedspline100","stepline","stackedstepline","stackedstepline100","area","stackedarea","stackedarea100","splinearea","stackedsplinearea","stackedsplinearea100","steparea","stackedsteparea","stackedsteparea100","rangearea","splinerangearea","steprangearea","column","stackedcolumn","stackedcolumn100","rangecolumn","scatter","stackedscatter","stackedscatter100","bubble","stackedbubble","stackedbubble100","pie","donut","candlestick","ohlc","waterfall","stackedwaterfall"],e.colorSchemes=[{name:"scheme01",colors:["#307DD7","#AA4643","#89A54E","#71588F","#4198AF"]},{name:"scheme02",colors:["#7FD13B","#EA157A","#FEB80A","#00ADDC","#738AC8"]},{name:"scheme03",colors:["#E8601A","#FF9639","#F5BD6A","#599994","#115D6E"]},{name:"scheme04",colors:["#D02841","#FF7C41","#FFC051","#5B5F4D","#364651"]},{name:"scheme05",colors:["#25A0DA","#309B46","#8EBC00","#FF7515","#FFAE00"]},{name:"scheme06",colors:["#0A3A4A","#196674","#33A6B2","#9AC836","#D0E64B"]},{name:"scheme07",colors:["#CC6B32","#FFAB48","#FFE7AD","#A7C9AE","#888A63"]},{name:"scheme08",colors:["#3F3943","#01A2A6","#29D9C2","#BDF271","#FFFFA6"]},{name:"scheme09",colors:["#1B2B32","#37646F","#A3ABAF","#E1E7E8","#B22E2F"]},{name:"scheme10",colors:["#5A4B53","#9C3C58","#DE2B5B","#D86A41","#D2A825"]},{name:"scheme11",colors:["#993144","#FFA257","#CCA56A","#ADA072","#949681"]},{name:"scheme12",colors:["#105B63","#EEEAC5","#FFD34E","#DB9E36","#BD4932"]},{name:"scheme13",colors:["#BBEBBC","#F0EE94","#F5C465","#FA7642","#FF1E54"]},{name:"scheme14",colors:["#60573E","#F2EEAC","#BFA575","#A63841","#BFB8A3"]},{name:"scheme15",colors:["#444546","#FFBB6E","#F28D00","#D94F00","#7F203B"]},{name:"scheme16",colors:["#583C39","#674E49","#948658","#F0E99A","#564E49"]},{name:"scheme17",colors:["#142D58","#447F6E","#E1B65B","#C8782A","#9E3E17"]},{name:"scheme18",colors:["#4D2B1F","#635D61","#7992A2","#97BFD5","#BFDCF5"]},{name:"scheme19",colors:["#844341","#D5CC92","#BBA146","#897B26","#55591C"]},{name:"scheme20",colors:["#56626B","#6C9380","#C0CA55","#F07C6C","#AD5472"]},{name:"scheme21",colors:["#96003A","#FF7347","#FFBC7B","#FF4154","#642223"]},{name:"scheme22",colors:["#5D7359","#E0D697","#D6AA5C","#8C5430","#661C0E"]},{name:"scheme23",colors:["#16193B","#35478C","#4E7AC7","#7FB2F0","#ADD5F7"]},{name:"scheme24",colors:["#7B1A25","#BF5322","#9DA860","#CEA457","#B67818"]},{name:"scheme25",colors:["#0081DA","#3AAFFF","#99C900","#FFEB3D","#309B46"]},{name:"scheme26",colors:["#0069A5","#0098EE","#7BD2F6","#FFB800","#FF6800"]},{name:"scheme27",colors:["#FF6800","#A0A700","#FF8D00","#678900","#0069A5"]},{name:"scheme28",colors:["#3A43BA","#281E5D","#48AAAD","#0492C2","#1E456E","#59788D","#52B2C0","#82EDFD"]},{name:"scheme29",colors:["#003F5C","#BC5090","#58508D","#FF6361","#FFA600"]},{name:"scheme30",colors:["#16736F","#A2D56A","#1C515C","#62B773","#EEEF63","#1F313F","#309577"]},{name:"scheme31",colors:["#74CC66","#191A4D","#2D867A","#EEE3CD","#224D19","#0D261B","#5771C7","#B6D7E7","#206052","#6B5724","#C3AF4B","#603620","#536722","#B6E7B9","#34819D","#94ACDB"]},{name:"scheme32",colors:["#87C5FF","#5B5B60","#9BE076","#F7A384","#7479D3","#F13A80","#E4D388","#2BC6B2","#F45B14"]}]}_clickHandler(e){const t=this;if(t.disabled||t._isRangeSelectorInstance)return;let i=e.pageX||e.clientX||e.screenX,r=e.pageY||e.clientY||e.screenY;const s=t.getBoundingClientRect();t._isTouchDevice&&(i=e.pageX,r=e.pageY),i-=s.left,r-=s.top,t._mouseX=i,t._mouseY=r,!isNaN(t._lastClickTs)&&(new Date).valueOf()-t._lastClickTs<100||(this._hostClickTimer=setTimeout((function(){if(t._isTouchDevice||(t._cancelTooltipTimer(),t._hideToolTip(),t._unselect()),t._pointMarker&&t._pointMarker.element){const i=t.seriesGroups[t._pointMarker.gidx],r=i.series[t._pointMarker.sidx];e.stopImmediatePropagation(),t._raiseItemEvent("click",i,r,t._pointMarker.iidx)}}),100),"HTML5"===t.renderEngine&&t._canvasClickHandler(i,r))}_canvasClickHandler(e,t){const i=this,r=i.renderer._elements;let s;for(let i in r)if(Object.prototype.hasOwnProperty.call(r,i)&&"0"!==i){const a=r[i];if(t>a.y&&t<a.y+a.height&&e>a.x&&e<a.x+a.width){s=a;break}}if(s&&s.purpose&&"legend-toggle"===s.purpose){const e=s.data;i._toggleSerie(e.groupIndex,e.seriesIndex,e.itemIndex)}}_mouseleaveHandler(){const e=this;if(e.disabled||e._isRangeSelectorInstance)return;const t=e._mouseX,i=e._mouseY,r=e._plotRect;r&&t>=r.x&&t<=r.x+r.width&&i>=r.y&&i<=r.y+r.height||(e._cancelTooltipTimer(),e._hideToolTip(0),e._unselect())}_moveHandler(e){const t=this;if(t.disabled)return;if(t._isRangeSelectorInstance){const i=t.parentChart;null===i.xAxis.rangeSelector.renderTo&&(i._unselect(),i._hideToolTip()),"touchmove"===e.originalEvent.type&&e.originalEvent.preventDefault()}else t.style.cursor="default";let i=e.pageX||e.clientX||e.screenX,r=e.pageY||e.clientY||e.screenY;const s=t.getBoundingClientRect();t._isTouchDevice&&(i=e.pageX,r=e.pageY),i-=s.left,r-=s.top,t.onmousemove(i,r)}_resizeHandler(){const e=this,t=e.animation;e._isRangeSelectorInstance||(e.animation="none",e.refresh(),e.animation=t)}propertyChangedHandler(e,t,i){const r=this;switch(e){case"animation":case"theme":r._ttEl&&r._ttEl.box.setAttribute(e,i);break;case"rightToLeft":if(!r._ttEl||!r._ttEl.box)break;i?r._ttEl.box.setAttribute("right-to-left",i):r._ttEl.box.removeAttribute("right-to-left");break;case"seriesGroups":r._observeSeriesGroups();break;case"xAxis_rangeSelector_renderTo":if(null===i){const e=t.getElementsByClassName("smart-chart-range-selector")[0];e.parentElement.removeChild(e)}}this.refresh()}_initRenderer(){const e=this;e._draw=new Smart.Utilities.Draw(e.$.content,e.renderEngine),e.renderer=e._draw.renderer,e._smartPlot||(e._smartPlot=new Smart.Utilities.Plot(e.renderer)),e.$.content.firstElementChild.setAttribute("role","presentation")}_internalRefresh(){const e=this;if(!(e.offsetWidth||e.offsetHeight||e.getClientRects().length))return;e._stopAnimations(),e.renderer&&(e._isToggleRefresh||e._isUpdate)||(e._hideToolTip(0),e.$.content.innerHTML="",e._initRenderer());const t=e.renderer;if(!t)return;const i=t.getRect();e._render({x:1,y:1,width:i.width,height:i.height}),this.$.fireEvent("refreshBegin",{instance:this}),t instanceof Smart.Utilities.HTML5Renderer&&t.refresh(),e._isUpdate=!1,this.$.fireEvent("refreshEnd",{instance:this})}saveAsPNG(e){return this._saveAsImage("png",e)}saveAsJPEG(e){return this._saveAsImage("jpeg",e)}saveAsPDF(e,t){return this._saveAsImage("pdf",e,t)}print(){return this._saveAsImage("print")}_saveAsImage(e,t,i){const r=this;return r._draw._widgetToImage(r,e,t,r._hasRangeSelector?r._selectorSaveAsImageCallback:void 0,i)}_selectorSaveAsImageCallback(e,t){let i=e;for(let e=0;e<i.seriesGroups.length;e++){let r=i._getXAxis(e);if(!r||!r.rangeSelector||!r.rangeSelector.visible||r.rangeSelector.renderTo)continue;let s=i._rangeSelectorInstances[e];if(!s)continue;let a=s.renderer.getRect(),l=s.renderer.getContainer().getElementsByTagName("canvas")[0].getContext("2d"),n=i._sliders[e],o="horizontal"===i.seriesGroups[e].orientation,h=o?"height":"width",d=o?"width":"height",u=o?"y":"x",g=o?"x":"y",f={};f[u]=n.startOffset+n.rect[u],f[g]=n.rect[g],f[h]=n.endOffset-n.startOffset,f[d]=n.rect[d];let p=r.rangeSelector.colorSelectedRange||"blue",c=r.rangeSelector.colorRangeLine||"grey",m=[];m.push(s.renderer.rect(f.x,f.y,f.width,f.height,{fill:p,opacity:.1}));const y=i.renderer;o?(m.push(s.renderer.line(y._ptrnd(n.rect.x+n.rect.width),y._ptrnd(n.rect.y),y._ptrnd(n.rect.x+n.rect.width),y._ptrnd(f.y),{stroke:c,opacity:.5})),m.push(s.renderer.line(y._ptrnd(n.rect.x+n.rect.width),y._ptrnd(f.y+f.height),y._ptrnd(n.rect.x+n.rect.width),y._ptrnd(n.rect.y+n.rect.height),{stroke:c,opacity:.5})),m.push(s.renderer.line(y._ptrnd(n.rect.x),y._ptrnd(f.y),y._ptrnd(n.rect.x+n.rect.width),y._ptrnd(f.y),{stroke:c,opacity:.5})),m.push(s.renderer.line(y._ptrnd(n.rect.x),y._ptrnd(f.y+f.height),y._ptrnd(n.rect.x+n.rect.width),y._ptrnd(f.y+f.height),{stroke:c,opacity:.5}))):(m.push(s.renderer.line(y._ptrnd(n.rect.x),y._ptrnd(n.rect.y),y._ptrnd(f.x),y._ptrnd(n.rect.y),{stroke:c,opacity:.5})),m.push(s.renderer.line(y._ptrnd(f.x+f.width),y._ptrnd(n.rect.y),y._ptrnd(n.rect.x+n.rect.width),y._ptrnd(n.rect.y),{stroke:c,opacity:.5})),m.push(s.renderer.line(y._ptrnd(f.x),y._ptrnd(n.rect.y),y._ptrnd(f.x),y._ptrnd(n.rect.y+n.rect.height),{stroke:c,opacity:.5})),m.push(s.renderer.line(y._ptrnd(f.x+f.width),y._ptrnd(n.rect.y),y._ptrnd(f.x+f.width),y._ptrnd(n.rect.y+n.rect.height),{stroke:c,opacity:.5}))),s.renderer.refresh();let _=l.getImageData(a.x,a.y,a.width,a.height);const x=t.getContext("2d"),v=i.getBoundingClientRect(),b=s.getBoundingClientRect();x.putImageData(_,b.left-v.left,b.top-v.top,1,1,a.width,a.height);for(let e=0;e<m.length;e++)s.renderer.removeElement(m[e]);s.renderer.refresh()}return!0}refresh(){this._internalRefresh(),this._setAriaProperties()}update(){this._isUpdate=!0,this._internalRefresh()}clear(){const e=this;e.caption="",e.description="",e.refresh()}_validateSeriesGroups(){const e=this;Array.isArray(this.seriesGroups)||e.seriesGroups instanceof Smart.ObservableArray||e.error(e.localize("invalidSeriesGroups"));for(let t=0;t<this.seriesGroups.length;t++){const i=this.seriesGroups[t];i.type||e.error(e.localize("missingType")),Array.isArray(i.series)||i.series instanceof Smart.ObservableArray||e.error(e.localize("invalidSeries"))}}_render(e){var t=this,i=t.renderer;t._colorsCache.clear(),!t._isToggleRefresh&&t._isUpdate&&t._renderData&&t._renderDataClone(),t._renderData=[],i.clear(),t._unselect(),t._hideToolTip(0);var r=t.backgroundImage;t.style.backgroundImage=null==r||""===r?"":-1!==r.indexOf("(")?r:'url("'+r+'")',t._rect=e;var s=t.padding||{left:5,top:5,right:5,bottom:5},a=i.createClipRect(e),l=i.beginGroup();i.setClip(l,a);var n=i.rect(e.x,e.y,e.width-2,e.height-2);if(null==r||""===r?i.attr(n,{fill:t.backgroundColor||t._getThemeColor("background")}):i.attr(n,{fill:"transparent"}),!1!==t.showBorderLine){var o=this.borderLineWidth;(isNaN(o)||o<0||o>10)&&(o=1),i.attr(n,{"stroke-width":o,stroke:t.borderLineColor||t._getThemeColor("line")})}"function"==typeof t.drawBefore&&t.drawBefore(i,e);var h={x:s.left,y:s.top,width:e.width-s.left-s.right,height:e.height-s.top-s.bottom};t._paddedRect=h;var d,u=t.titlePadding||{left:2,top:2,right:2,bottom:2};t.caption&&t.caption.length>0&&(d=i.measureText(t.caption,0,{class:"smart-chart-title-text"}),i.text(t.caption,h.x+u.left,h.y+u.top,h.width-(u.left+u.right),d.height,0,{class:"smart-chart-title-text"},!0,"center","center").id=t.id+"TitleText",h.y+=d.height,h.height-=d.height),t.description&&t.description.length>0&&(d=i.measureText(t.description,0,{class:"smart-chart-title-description"}),i.text(t.description,h.x+u.left,h.y+u.top,h.width-(u.left+u.right),d.height,0,{class:"smart-chart-title-description"},!0,"center","center").id=t.id+"TitleDescription",h.y+=d.height,h.height-=d.height),(t.caption||t.description)&&(h.y+=u.bottom+u.top,h.height-=u.bottom+u.top);var g={x:h.x,y:h.y,width:h.width,height:h.height};t._plotRect=g,t._buildStats(g);var f,p=t._isPieOnlySeries(),c=t.seriesGroups,m={xAxis:{},valueAxis:{}};for(let e=0;e<c.length&&!p;e++){if("pie"===c[e].type||"donut"===c[e].type)continue;var y=t._getXAxis(e);y||t.error(t.localize("missingAxis",{index:e,axis:"xAxis"}));let i=y===t._getXAxis()?-1:e;m.xAxis[i]=0}var _=t.axisPadding;isNaN(_)&&(_=5);var x={left:0,right:0,leftCount:0,rightCount:0},v=[];for(let e=0;e<c.length;e++){const i=c[e];if("pie"===i.type||"donut"===i.type||!0===i.spider||!0===i.polar){v.push({width:0,position:0,xRel:0});continue}f="horizontal"===i.orientation;let r=t._getXAxis(e),s=r===t._getXAxis()?-1:e;var b=t._getValueAxis(e),N=b===t._getValueAxis()?-1:e,M=f?r.axisSize:b.axisSize,A={x:0,y:g.y,width:g.width,height:g.height},w=f?t._getXAxis(e).position:b.position;M&&"auto"!==M||(f?(M=this._renderXAxis(e,A,!0,g).width,1==(1&m.xAxis[s])?M=0:M>0&&(m.xAxis[s]|=1)):(M=t._renderValueAxis(e,A,!0,g).width,1==(1&m.valueAxis[N])?M=0:M>0&&(m.valueAxis[N]|=1))),"left"!==w&&!0===t.rightToLeft&&(w="right"),"right"!==w&&(w="left"),x[w+"Count"]>0&&x[w]>0&&M>0&&(x[w]+=_),v.push({width:M,position:w,xRel:x[w]}),x[w]+=M,x[w+"Count"]++}var S=Math.max(1,Math.max(e.width,e.height)),C={top:0,bottom:0,topCount:0,bottomCount:0},k=[];for(let e=0;e<c.length;e++){const i=c[e];if("pie"===i.type||"donut"===i.type||!0===i.spider||!0===i.polar){k.push({height:0,position:0,yRel:0});continue}f="horizontal"===i.orientation;let r=this._getValueAxis(e),s=r===t._getValueAxis()?-1:e,a=t._getXAxis(e),l=a===t._getXAxis()?-1:e,n=f?r.axisSize:a.axisSize,o=f?r.position:a.position;n&&"auto"!==n||(f?(n=t._renderValueAxis(e,{x:0,y:0,width:S,height:0},!0,g).height,2==(2&m.valueAxis[s])?n=0:n>0&&(m.valueAxis[s]|=2)):(n=t._renderXAxis(e,{x:0,y:0,width:S,height:0},!0).height,2==(2&m.xAxis[l])?n=0:n>0&&(m.xAxis[l]|=2))),"top"!==o&&(o="bottom"),C[o+"Count"]>0&&C[o]>0&&n>0&&(C[o]+=_),k.push({height:n,position:o,yRel:C[o]}),C[o]+=n,C[o+"Count"]++}t._createAnimationGroup("series");const D=!1!==t.showLegend,T=t._legendLayout;var F=D?t._renderLegend(T?t._rect:h,!0):{width:0,height:0};if(!T||isNaN(this.legendLayout.left)&&isNaN(this.legendLayout.top)||(F={width:0,height:0}),h.height<C.top+C.bottom+F.height||h.width<x.left+x.right)i.endGroup();else{g.height-=C.top+C.bottom+F.height,g.x+=x.left,g.width-=x.left+x.right,g.y+=C.top;var O=[];if(!p)for(let e=0;e<c.length;e++){const i=c[e];if(!0===i.polar||!0===i.spider||"pie"===i.type||"donut"===i.type)continue;f="horizontal"===i.orientation;let r=t._getXAxis(e)===t._getXAxis()?-1:e,s=t._getValueAxis(e)===t._getValueAxis()?-1:e,a={x:g.x,y:0,width:g.width,height:k[e].height};if("top"!==k[e].position?a.y=g.y+g.height+k[e].yRel:a.y=g.y-k[e].yRel-k[e].height,f){if(4==(4&m.valueAxis[s]))continue;if(!t._isGroupVisible(e))continue;t._renderValueAxis(e,a,!1,g),m.valueAxis[s]|=4}else{if(O.push(a),4==(4&m.xAxis[r]))continue;if(!t._isGroupVisible(e))continue;t._renderXAxis(e,a,!1,g),m.xAxis[r]|=4}}if(D){const e=t._legendLayout,i=e?t._rect:h;let r=h.x+this.renderer._ptrnd((h.width-F.width)/2),s=g.y+g.height+C.bottom,a=h.width,l=F.height;e&&(isNaN(t.legendLayout.left)||(r=t.legendLayout.left),isNaN(t.legendLayout.top)||(s=t.legendLayout.top),isNaN(t.legendLayout.width)||(a=t.legendLayout.width),isNaN(t.legendLayout.height)||(l=t.legendLayout.height)),r+a>i.x+i.width&&(a=i.x+i.width-r),s+l>i.y+i.height&&(l=i.y+i.height-s),t._renderLegend({x:r,y:s,width:a,height:l})}if(t._hasHorizontalLines=!1,!p)for(let e=0;e<c.length;e++){const i=c[e];if(!0===i.polar||!0===i.spider||"pie"===i.type||"donut"===i.type)continue;f="horizontal"===c[e].orientation;let r={x:g.x-v[e].xRel-v[e].width,y:g.y,width:v[e].width,height:g.height};"left"!==v[e].position&&(r.x=g.x+g.width+v[e].xRel);let s=t._getXAxis(e)===t._getXAxis()?-1:e,a=t._getValueAxis(e)===t._getValueAxis()?-1:e;if(f){if(O.push(r),8==(8&m.xAxis[s]))continue;if(!t._isGroupVisible(e))continue;t._renderXAxis(e,r,!1,g),m.xAxis[s]|=8}else{if(8==(8&m.valueAxis[a]))continue;if(!t._isGroupVisible(e))continue;t._renderValueAxis(e,r,!1,g),m.valueAxis[a]|=8}}if(!(g.width<=0||g.height<=0)){t._plotRect={x:g.x,y:g.y,width:g.width,height:g.height};for(let e=0;e<c.length;e++)this._drawPlotAreaLines(e,!0,{gridLines:!1,tickMarks:!1,alternatingBackground:!0}),this._drawPlotAreaLines(e,!1,{gridLines:!1,tickMarks:!1,alternatingBackground:!0});for(let e=0;e<c.length;e++)this._drawPlotAreaLines(e,!0,{gridLines:!0,tickMarks:!0,alternatingBackground:!1}),this._drawPlotAreaLines(e,!1,{gridLines:!0,tickMarks:!0,alternatingBackground:!1});var I=!1;for(let e=0;e<c.length&&!I;e++){const t=c[e];if(void 0!==t.annotations||"function"==typeof t.draw||"function"==typeof t.drawBefore){I=!0;break}}var P=i.beginGroup();if(t.clip&&!I){var R=i.createClipRect({x:g.x-2,y:g.y,width:g.width+4,height:g.height});i.setClip(P,R)}for(let r=0;r<c.length;r++){const s=c[r];var L=!1;for(var G in t._seriesTypes)if(t._seriesTypes[G]===s.type){L=!0;break}L||t.error(t.localize("invalidType",{type:s.type})),"function"==typeof s.drawBefore&&s.drawBefore(i,e,r,this),!0!==s.polar&&!0!==s.spider||-1===s.type.indexOf("pie")&&-1===s.type.indexOf("donut")&&t._renderSpiderAxis(r,g),t._renderAxisBands(r,g,!0),t._renderAxisBands(r,g,!1)}for(let r=0;r<c.length;r++){const s=c[r];if(t._isColumnType(s.type)?t._renderColumnSeries(r,g):-1!==s.type.indexOf("pie")||-1!==s.type.indexOf("donut")?t._renderPieSeries(r,g):-1!==s.type.indexOf("line")||-1!==s.type.indexOf("area")?t._renderLineSeries(r,g):-1!==s.type.indexOf("scatter")||-1!==s.type.indexOf("bubble")?t._renderScatterSeries(r,g):-1===s.type.indexOf("candlestick")&&-1===s.type.indexOf("ohlc")||t._renderCandleStickSeries(r,g,-1!==s.type.indexOf("ohlc")),s.annotations){this._moduleAnnotations||t.error(t.localize("missingReference",{files:"smart.chart.annotations.js"}));for(let e=0;e<s.annotations.length;e++)t._renderAnnotation(r,s.annotations[e],g)}"function"==typeof s.draw&&s.draw(i,e,r,this)}if(i.endGroup(),t.disabled){var V=i.rect(e.x,e.y,e.width,e.height);i.attr(V,{fill:"#777777",opacity:.5,stroke:"#00FFFFFF"})}"function"==typeof t.draw&&t.draw(i,e),i.endGroup(),t._startAnimation("series"),t._credits&&t._credits();var E=!1;for(let e=0;e<t.seriesGroups.length&&!E;e++){let i=t._getXAxis(e);i&&i.rangeSelector&&i.rangeSelector.visible&&(E=!0,t._hasRangeSelector=!0)}if(E){this._moduleRangeSelector||t.error(t.localize("missingReference",{files:"smart.chart.rangeselector.js"}));var B=[];t._isSelectorRefresh||(t._rangeSelectorInstances={});for(let e=0;e<t.seriesGroups.length;e++){var H=this._getXAxis(e);-1===B.indexOf(H)&&this._renderXAxisRangeSelector(e,O[e])&&B.push(H)}}}}}_credits(){}_isPieOnlySeries(){let e=this.seriesGroups;if(0===e.length)return!1;for(let t=0;t<e.length;t++)if("pie"!==e[t].type&&"donut"!==e[t].type)return!1;return!0}_renderChartLegend(e,t,i,r){var s=this,a=s.renderer,l={x:t.x,y:t.y,width:t.width,height:t.height};l.width>=6&&(l.x+=3,l.width-=6),l.height>=6&&(l.y+=3,l.height-=6);var n={width:l.width,height:0},o=0,h=0,d=20,u=0,g=10,f=0;for(let I=0;I<e.length;I++){var p=e[I].css;p||(p="smart-chart-legend-text"),d=20;var c=e[I].text,m=a.measureText(c,0,{class:p});m.height>d&&(d=m.height),m.width>f&&(f=m.width),r?(0!==I&&(h+=d),h>l.height&&(h=0,o+=f+20+g,f=m.width,n.width=o+f)):(0!==o&&(o+=10),o+20+m.width>l.width&&m.width<l.width&&(o=0,h+=d,d=20,u=l.width,n.height=h+d));var y=!1;if(m.width>l.width){y=!0;var _=l.width,x=c.split(/\s+/);let e=[],t="";for(let i=0;i<x.length;i++){var v=t+(t.length>0?" ":"")+x[i];s.renderer.measureText(v,0,{class:p}).width>_&&v.length>0&&t.length>0?(e.push({text:t}),t=x[i]):t=v,i+1===x.length&&e.push({text:t})}m.width=0;var b=0;for(let t=0;t<e.length;t++){var N=e[t].text;let i=s.renderer.measureText(N,0,{class:p});m.width=Math.max(m.width,i.width),b+=m.height}m.height=b}var M=o+m.width<l.width&&h+m.height<t.height;if(s._legendLayout){let e=l.x+o+m.width<s._rect.x+s._rect.width&&l.y+h+m.height<s._rect.y+s._rect.height;this._renderInBounds=e}if(!i&&M){var A=e[I].seriesIndex,w=e[I].groupIndex,S=e[I].itemIndex,C=e[I].fillColor,k=e[I].lineColor,D=s._isSerieVisible(w,A,S),T=a.beginGroup(),F=D?e[I].opacity:.1;if(y){let t=c,i=l.width,n=t.split(/\s+/);var O=0;let u=[],f="";for(let e=0;e<n.length;e++){let t=f+(f.length>0?" ":"")+n[e],r=s.renderer.measureText(t,0,{class:p});r.width>i&&t.length>0&&f.length>0?(u.push({text:f,dy:O}),O+=r.height,f=n[e]):f=t,e+1===n.length&&u.push({text:f,dy:O})}for(let e=0;e<u.length;e++){let t=u[e].text;O=u[e].dy,s.renderer.measureText(t,0,{class:p}),r?s.renderer.text(t,l.x+o+15,l.y+h+O,m.width,d,0,{class:p},!1,"left","center"):s.renderer.text(t,l.x+o+15,l.y+h+O,m.width,d,0,{class:p},!1,"center","center")}let y=a.rect(l.x+o,l.y+h+5+O/2,g,g);r&&(h+=O),s.renderer.attr(y,{fill:C,"fill-opacity":F,stroke:k,"stroke-width":1,"stroke-opacity":e[I].opacity})}else{let t,i=a.rect(l.x+o,l.y+h+5,g,g);s.renderer.attr(i,{fill:C,"fill-opacity":F,stroke:k,"stroke-width":1,"stroke-opacity":e[I].opacity,purpose:"legend-toggle",data:e[I]}),t=r?s.renderer.text(c,l.x+o+15,l.y+h,m.width,m.height+5,0,{class:p},!1,"left","center"):s.renderer.text(c,l.x+o+15,l.y+h,m.width,d,0,{class:p},!1,"center","center"),a.attr(t,{purpose:"legend-toggle",data:e[I]})}s.renderer.endGroup(),s._setLegendToggleHandler(w,A,S,T)}r||u<(o+=m.width+20)&&(u=o)}if(i)return n.height=this.renderer._ptrnd(h+d+5),n.width=this.renderer._ptrnd(u),n}isSerieVisible(e,t,i){return this._isSerieVisible(e,t,i)}_isSerieVisible(e,t,i){for(;this._itemsToggleState.length<e+1;)this._itemsToggleState.push([]);let r=this._itemsToggleState[e];for(;r.length<t+1;)r.push(!!isNaN(i)||[]);let s=r[t];if(isNaN(i))return s;for(Array.isArray(s)||(r[t]=s=[]);s.length<i+1;)s.push(!0);return s[i]}isGroupVisible(e){return this._isGroupVisible(e)}_isGroupVisible(e){let t=!1,i=this.seriesGroups[e].series;if(!i)return t;for(let r=0;r<i.length;r++)if(this._isSerieVisible(e,r)){t=!0;break}return t}_toggleSerie(e,t,i,r){let s=!this._isSerieVisible(e,t,i);void 0!==r&&(s=r);let a=this.seriesGroups[e],l=a.series[t];if(this.$.fireEvent("toggle",{state:s,seriesGroup:a,serie:l,elementIndex:i}),isNaN(i))this._itemsToggleState[e][t]=s;else{let r=this._itemsToggleState[e][t];for(Array.isArray(r)||(r=[]);r.length<i;)r.push(!0);r[i]=s}this._isToggleRefresh=!0,this.update(),this._isToggleRefresh=!1}showSerie(e,t,i){this._toggleSerie(e,t,i,!0)}hideSerie(e,t,i){this._toggleSerie(e,t,i,!1)}_setLegendToggleHandler(e,t,i,r){let s=this.seriesGroups[e],a=s.series[t].enableSeriesToggle;if(null==a&&(a=!1!==s.enableSeriesToggle),a){let s=this;this.renderer.addHandler(r,"click",(function(){s._toggleSerie(e,t,i)}))}}_renderLegend(e,t){let i=this,r=[];for(let e=0;e<i.seriesGroups.length;e++){let t=i.seriesGroups[e];if(!1!==t.showLegend)for(let s=0;s<t.series.length;s++){let a=t.series[s];if(!1===a.showLegend)continue;let l,n=i._getSerieSettings(e,s);if("pie"===t.type||"donut"===t.type){let o=i._getXAxis(e);const h=a.legendFormatSettings||t.legendFormatSettings||i._getFormatSettings(o)||i._getFormatSettings(a)||i._getFormatSettings(t);let d=a.legendFormatFunction||t.legendFormatFunction||o.formatFunction||a.formatFunction||t.formatFunction,u=i._getDataLen(e);for(let t=0;t<u;t++){l=i._getDataValue(t,a.displayText,e),l=i._formatValue(l,h,d,e,s,t);let o=i._getColors(e,s,t);r.push({groupIndex:e,seriesIndex:s,itemIndex:t,text:l,css:a.displayTextClass,fillColor:o.fillColor,lineColor:o.lineColor,opacity:n.opacity})}continue}const o=a.legendFormatSettings||t.legendFormatSettings;let h=a.legendFormatFunction||t.legendFormatFunction;l=i._formatValue(a.displayText||a.dataField||"",o,h,e,s,NaN);let d=i._getSeriesColors(e,s),u=this._get([a.legendFillColor,a.legendColor,d.fillColor]),g=this._get([a.legendLineColor,a.legendColor,d.lineColor]);r.push({groupIndex:e,seriesIndex:s,text:l,css:a.displayTextClass,fillColor:u,lineColor:g,opacity:n.opacity})}}return i._renderChartLegend(r,e,t,i._legendLayout&&"vertical"===i.legendLayout.flow)}_getInterval(e,t){if(!e)return t;let i=this._get([e.unitInterval,t]);return isNaN(e.step)||null===e.step||(i=e.step*t),i}_getOffsets(e,t,i,r,s,a,l,n,o){let h,d=this._getInterval(s[e],n),u=[];if((""===e||s[e].visible&&"custom"!==s[e].visible)&&(u=this._generateIntervalValues(r,d,n,l,o)),"labels"!==e){let e=l?a.left:0;if(!l&&n>1&&(e=a.left*(n+1)),1===u.length&&(e*=2),h=this._valuesToOffsets(u,t,r,i,a,!1,e),!l){let e=(a.left+a.right)*d/n;t.flip?h.unshift(h[0]+e):h.push(h[h.length-1]+e)}}else{let e=a.left;1===u.length&&(e*=2),h=this._valuesToOffsets(u,t,r,i,a,l,e)}let g=this._arraysToObjectsArray([u,h],["value","offset"]);if(t[e]&&t[e].custom){let s=this._objectsArraysToArray(t[e].custom,"value"),n=this._objectsArraysToArray(t[e].custom,"offset"),o=this._valuesToOffsets(s,t,r,i,a,l,a.left);for(let i=0;i<t[e].custom.length;i++)g.push({value:s[i],offset:isNaN(n[i])?o[i]:n[i]})}return g}_renderXAxis(e,t,i,r){let s=this,a=s._getXAxis(e),l=s.seriesGroups[e],n="horizontal"===l.orientation,o={width:0,height:0},h=s._getAxisSettings(a);if(!a||!h.visible||"spider"===l.type)return o;if(!s._isGroupVisible(e)||this._isPieGroup(e))return o;let d=s._alignValuesWithTicks(e);for(;s._renderData.length<e+1;)s._renderData.push({});s.rightToLeft?(a._flip=a.flip,a.flip=!0):void 0!==a._flip&&(a.flip=a._flip);let u=n?t.height:t.width,g=s._calculateXOffsets(e,u),f=g.axisStats,p=a.rangeSelector&&a.rangeSelector.visible,c=0;p&&(this._moduleRangeSelector||s.error(s.localize("missingReference",{files:"smart.chart.rangeselector.js"})),c=this._selectorGetSize(a));let m=n&&"right"===a.position||!n&&"top"===a.position;!i&&p&&(n?(t.width-=c,"right"!==a.position&&(t.x+=c)):(t.height-=c,"top"===a.position&&(t.y+=c)));let y={rangeLength:g.rangeLength,itemWidth:g.itemWidth,intervalWidth:g.intervalWidth,data:g,settings:h,isMirror:m,rect:t};s._renderData[e].xAxis=y;let _=f.interval;if(isNaN(_))return o;n&&(h.title.angle-=90,h.labels.angle-=90);let x,v,b=this._getInterval(h.gridLines,_),N=this._getInterval(h.tickMarks,_),M=this._getInterval(h.labels,_),A=f.min,w=f.max,S=g.padding,C=!0===a.flip||s.rightToLeft,k={min:A,max:w};f.logAxis.enabled&&(k.min=f.logAxis.minPow,k.max=f.logAxis.maxPow),"date"===a.type?(h.gridLines.offsets=this._generateDTOffsets(A,w,u,S,b,_,f.dateTimeUnit,d,NaN,!1,C),h.tickMarks.offsets=this._generateDTOffsets(A,w,u,S,N,_,f.dateTimeUnit,d,NaN,!1,C),x=this._generateDTOffsets(A,w,u,S,M,_,f.dateTimeUnit,d,NaN,!0,C)):(h.gridLines.offsets=this._getOffsets("gridLines",a,u,f,h,S,d,_),h.tickMarks.offsets=this._getOffsets("tickMarks",a,u,f,h,S,d,_),x=this._getOffsets("labels",a,u,f,h,S,d,_)),s._elementRenderInfo&&s._elementRenderInfo.length>e&&(v=s._elementRenderInfo[e].xAxis);let D,T=[];h.labels.formatFunction&&(D=h.labels.formatFunction);const F=s._getFormatSettings(h.labels);let O;F&&(O=Object.assign({},F)),"date"===a.type&&(a.dateFormat&&!D?O?O.dateFormat=O.dateFormat||a.dateFormat:O={dateFormat:a.dateFormat}:D||O&&(!O||O.dateFormat)||(D=this._getDefaultDTFormatFn(a.baseUnit||"day")));for(let t=0;t<x.length;t++){let i,r=x[t].value,l=x[t].offset;if(isNaN(l))continue;"date"!==a.type&&f.useIndeces&&a.dataField&&(i=Math.round(r),r=s._getDataValue(i,a.dataField,e),null==r&&(r=""));let n=s._formatValue(r,O,D,e,void 0,i);null!=n&&""!==n.toString()||(isNaN(i)&&(i=t),i>=f.filterRange.min&&i<=f.filterRange.max&&(n=f.useIndeces?(f.min+i).toString():void 0===r?"":r.toString()));let o={key:r,text:n,targetX:l,x:l};v&&v.itemOffsets[r]&&(o.x=v.itemOffsets[r].x,o.y=v.itemOffsets[r].y),T.push(o)}let I=s._getAnimProps(e),P=I.enabled&&T.length<500?I.duration:0;!1===s.enableAxisTextAnimation&&(P=0);let R={items:T,renderData:y},L=s._renderAxis(n,m,h,{x:t.x,y:t.y,width:t.width,height:t.height},r,_,!1,!0,R,i,P);return n?L.width+=c:L.height+=c,L}_animateAxisText(e,t){let i=e.items,r=e.textSettings;for(let e=0;e<i.length;e++){let s=i[e];if(!s)continue;if(!s.visible)continue;let a=s.targetX,l=s.targetY;isNaN(s.x)||isNaN(s.y)||(a=s.x+(a-s.x)*t,l=s.y+(l-s.y)*t),s.element&&(this.renderer.removeElement(s.element),s.element=void 0),s.element=this.renderer.text(s.text,a,l,s.width,s.height,r.angle,{class:r.style},!1,r.halign,r.valign,r.textRotationPoint)}}_getPolarAxisCoords(e,t){let i=this.seriesGroups[e],r=t.x+this._draw.getNum([i.offsetX,t.width/2]),s=t.y+this._draw.getNum([i.offsetY,t.height/2]),a=Math.min(t.width,t.height),l=i.radius;this._isPercent(l)&&(l=parseFloat(l)/100*a/2),isNaN(l)&&(l=a/2*.6);let n=this._alignValuesWithTicks(e),o=this._get([i.startAngle,i.minAngle,0])-90;o=isNaN(o)?0:2*Math.PI*o/360;let h=this._get([i.endAngle,i.maxAngle,360])-90;if(h=isNaN(h)?2*Math.PI:2*Math.PI*h/360,o>h){let e=o;o=h,h=e}let d=this.renderer._rnd(Math.abs(o-h)/(2*Math.PI),.001,!0),u=2*Math.PI*l*d,g=this._calcGroupOffsets(e,t).xoffsets;if(!g)return;let f,p=!(Math.abs(Math.abs(h-o)-2*Math.PI)>1e-5);if(i.spider){const t=this._getXAxisStats(e,this._getXAxis(e),u);let i=t.interval;(isNaN(i)||0===i)&&(i=1);let r=(t.max-t.min)/i+(p?1:0);if(r=Math.round(r),r>2){let e=Math.cos(Math.abs(h-o)/2/r);e=this.renderer._rnd(e,.01),0===e&&(e=1),f=l/e,f>l&&n&&(l=f)}}return l=this.renderer._ptrnd(l),{x:r,y:s,r:l,adjR:this._get([f,l]),itemWidth:g.itemWidth,rangeLength:g.rangeLength,valuesOnTicks:n,startAngle:o,endAngle:h,isClosedCircle:p,axisSize:u}}_toPolarCoord(e,t,i,r){let s=Math.abs(e.startAngle-e.endAngle)/(2*Math.PI),a=2*(i-t.x)*Math.PI*s/Math.max(1,t.width)+e.startAngle,l=(t.height+t.y-r)*e.r/Math.max(1,t.height),n=e.x+l*Math.cos(a),o=e.y+l*Math.sin(a);return{x:this.renderer._ptrnd(n),y:this.renderer._ptrnd(o)}}_renderSpiderAxis(e,t){let i=this,r=i._getXAxis(e),s=this._getAxisSettings(r);if(!r||!s.visible)return;let a=i.seriesGroups[e],l=i._getPolarAxisCoords(e,t);if(!l)return;let n=this.renderer._ptrnd(l.x),o=this.renderer._ptrnd(l.y),h=l.adjR,d=l.startAngle,u=l.endAngle;if(h<1)return;let g=this.renderer._rnd(Math.abs(d-u)/(2*Math.PI),.001,!0),f=2*Math.PI*h*g,p=l.isClosedCircle,c=this._renderData[e].xoffsets;if(!c.rangeLength)return;let m=c.axisStats.interval;for((isNaN(m)||m<1)&&(m=1);i._renderData.length<e+1;)i._renderData.push({});let y={rangeLength:c.rangeLength,itemWidth:c.itemWidth,data:c,rect:t,settings:s};i._renderData[e].xAxis=y,i._renderData[e].polarCoords=l;let _=!0;for(let t=0;t<e;t++){let e=i._renderData[t].polarCoords,s=i._getXAxis(t),a=!1;for(let t in l)if(l[t]!==e[t]){a=!0;break}a&&s===r||(_=!1)}let x,v,b=s.gridLines,N=s.tickMarks,M=s.labels,A=this._getInterval(b,m),w=this._getInterval(N,m),S=this._getInterval(M,m),C=i._alignValuesWithTicks(e),k=i.renderer,D=c.axisStats,T=D.min,F=D.max,O=this._getPaddingSize(c.axisStats,r,C,f,!0,p,!1),I=!0===r.flip||i.rightToLeft;"date"===r.type?(b.offsets=this._generateDTOffsets(T,F,f,O,A,m,r.baseUnit,!0,0,!1,I),N.offsets=this._generateDTOffsets(T,F,f,O,w,m,r.baseUnit,!0,0,!1,I),x=this._generateDTOffsets(T,F,f,O,S,m,r.baseUnit,!0,0,!0,I)):(s.gridLines.offsets=this._getOffsets("gridLines",r,f,D,s,O,!0,m),s.tickMarks.offsets=this._getOffsets("tickMarks",r,f,D,s,O,!0,m),x=this._getOffsets("labels",r,f,D,s,O,!0,m)),i._elementRenderInfo&&i._elementRenderInfo.length>e&&(v=i._elementRenderInfo[e].xAxis);let P=[],R=this._getDataLen(e);for(let t=0;t<x.length;t++){let s,a=x[t].offset,l=x[t].value;if("date"!==r.type&&D.useIndeces&&r.dataField){if(s=Math.round(l),s>=R)continue;l=i._getDataValue(s,r.dataField),null==l&&(l="")}let n=i._formatValue(l,i._getFormatSettings(M.formatSettings),M.formatFunction,e,void 0,s);null!=n&&""!==n.toString()||(n=D.useIndeces?(D.min+t).toString():null==l?"":l.toString());let o={key:l,text:n,targetX:a,x:a};v&&v.itemOffsets[l]&&(o.x=v.itemOffsets[l].x,o.y=v.itemOffsets[l].y),P.push(o)}let L={stroke:b.color||i._getThemeColor("line"),fill:"none","stroke-width":b.width,"stroke-dasharray":b.dashStyle||""};if(!a.spider)if(1===g)k.circle(n,o,h,L);else{let e=-d/Math.PI*180,t=-u/Math.PI*180;this.renderer.pieslice(n,o,0,h,Math.min(e,t),Math.max(e,t),void 0,L)}let G=d;if(b.visible&&_){C||p||b.offsets.unshift({offset:-O.right});for(let e=0;e<b.offsets.length;e++){let t=b.offsets[e].offset;C||(t+=p?O.right/2:O.right);const i=G+2*t*Math.PI*g/Math.max(1,f);if(i-u>.01)continue;let r=this.renderer._ptrnd(n+h*Math.cos(i)),s=this.renderer._ptrnd(o+h*Math.sin(i));k.line(n,o,r,s,L)}}if(N.visible&&_){let e=5,t={stroke:N.color||i._getThemeColor("line"),fill:"none","stroke-width":N.width,"stroke-dasharray":N.dashStyle||""};C||p||N.offsets.unshift({offset:-O.right});for(let i=0;i<N.offsets.length;i++){let r=N.offsets[i].offset;C||(r+=p?O.right/2:O.right);const s=G+2*r*Math.PI*g/Math.max(1,f);if(s-u>.01)continue;let a={x:n+h*Math.cos(s),y:o+h*Math.sin(s)},l={x:n+(h+e)*Math.cos(s),y:o+(h+e)*Math.sin(s)};k.line(this.renderer._ptrnd(a.x),this.renderer._ptrnd(a.y),this.renderer._ptrnd(l.x),this.renderer._ptrnd(l.y),t)}}let V=[];if(a.spider){let e=[];e="date"===r.type?this._generateDTOffsets(T,F,f,O,m,m,r.baseUnit,!0,0,!1,I):this._getOffsets("",r,f,D,s,O,!0,m),C||p||e.unshift({offset:-O.right});for(let t=0;t<e.length;t++){let i=e[t].offset;C||(i+=p?O.right/2:O.right);const r=G+2*i*Math.PI*g/Math.max(1,f);r-u>.01||V.push(r)}y.offsetAngles=V}let E=i._renderSpiderValueAxis(e,t,C?l.adjR:l.r,V);if(E||(E=[]),a.spider){if(!C)for(let e=0;e<E.length;e++)E[e]=E[e]*l.adjR/l.r;E.push(h),this._renderSpiderLines(n,o,E,l,V,L)}if(_&&M.visible){y.polarLabels=[];for(let e=0;e<P.length;e++){let t=G+2*P[e].x*Math.PI*g/Math.max(1,f);t=(360-t/(2*Math.PI)*360)%360,t<0&&(t=360+t);let i,r=k.measureText(P[e].text,0,{class:s.labels.style}),a=(C?l.adjR:l.r)+(N.visible?7:2),h=s.labels;if(h.autoRotate){let e=this._draw._ptRotate(n-r.width/2,o-a-r.height,n,o,-t/180*Math.PI),s=this._draw._ptRotate(n+r.width/2,o-a,n,o,-t/180*Math.PI);r.width=Math.abs(e.x-s.x),r.height=Math.abs(e.y-s.y),i={x:Math.min(e.x,s.x),y:Math.min(e.y,s.y)}}else i=this._adjustTextBoxPosition(n,o,r,a,t,!1,!1,!1);y.polarLabels.push({x:i.x,y:i.y,value:P[e].text}),k.text(P[e].text,i.x,i.y,r.width,r.height,h.autoRotate?90-t:h.angle,{class:h.style},!1,h.halign,h.valign)}}}_renderSpiderLines(e,t,i,r,s,a){let l=this.renderer,n=r.isClosedCircle;for(let r=0;r<i.length;r++){let o,h,d=i[r];for(let i=0;i<s.length;i++){let r=s[i],n=this.renderer._ptrnd(e+d*Math.cos(r)),u=this.renderer._ptrnd(t+d*Math.sin(r));o&&l.line(o.x,o.y,n,u,a),o={x:n,y:u},h||(h={x:n,y:u})}h&&n&&l.line(o.x,o.y,h.x,h.y,a)}}_renderSpiderValueAxis(e,t,i,r){var s=this,a=this.seriesGroups[e],l=this._getPolarAxisCoords(e,t);if(!l)return;var n=this.renderer._ptrnd(l.x),o=this.renderer._ptrnd(l.y);i=i||l.r;var h=l.startAngle,d=l.endAngle,u=this.renderer._rnd(Math.abs(h-d)/(2*Math.PI),.001,!0);if(i<1)return;i=this.renderer._ptrnd(i);var g=this._getValueAxis(e);const f=this._getAxisSettings(g);if(g&&!1!==f.visible){var p=this._stats.seriesGroups[e].mu,c=f.labels,m=s._getFormatSettings(c);-1!==a.type.indexOf("stacked")&&-1!==a.type.indexOf("100")&&!m&&(m={sufix:"%"});var y=this._get([c.step,c.unitInterval/p]);isNaN(y)&&(y=1),y=Math.max(1,Math.round(y)),this._calcValueAxisItems(e,i,y);var _=f.gridLines,x=f.tickMarks,v=f.labels,b={stroke:_.color||s._getThemeColor("line"),fill:"none","stroke-width":1,"stroke-dasharray":_.dashStyle||""},N=this._renderData[e].valueAxis,M=N.items,A=h;if(M.length&&f.line.visible){isNaN(f.line.angle)||(A=2*Math.PI*f.line.angle/360);var w=n+Math.cos(A)*i,S=o+Math.sin(A)*i;if(-1===r.indexOf(A)){var C=Object.assign({},b);C["stroke-width"]=f.line.lineWidth,C.stroke=f.line.color||s._getThemeColor("line"),C["stroke-dasharray"]=f.line.dashStyle,this.renderer.line(n,o,w,S,C)}}M=M.reverse();var k=this.renderer;N.polarLabels=[];for(let e=0;e<M.length-1;e++){var D=M[e];if(isNaN(D))continue;var T=v.formatFunction?v.formatFunction(D):this._formatNumber(D,m),F=k.measureText(T,0,{class:v.style}),O=n+(!1!==g.showTickMarks?3:2);let t=o-N.itemWidth*e-F.height/2;var I=this._draw._ptRotate(O,t,n,o,A),P=this._draw._ptRotate(O+F.width,t+F.height,n,o,A);O=Math.min(I.x,P.x),t=Math.min(I.y,P.y),F.width=Math.abs(I.x-P.x),F.height=Math.abs(I.y-P.y),O+=f.labels.textOffset.x,t+=f.labels.textOffset.y,N.polarLabels.push({x:O,y:t,value:T}),k.text(T,O,t,F.width,F.height,v.autoRotate?90+180*h/Math.PI:v.angle,{class:v.style},!1,v.halign,v.valign)}var R=!1!==g.valuesOnTicks,L=this._stats.seriesGroups[e],G=L.mu,V=!0===g.logarithmicScale;V&&(G=1);var E={min:L.min,max:L.max,logAxis:{enabled:!0===V,base:g.logarithmicScaleBase,minPow:L.minPow,maxPow:L.maxPow}};(_.visible||a.spider||g.alternatingBackgroundColor||g.alternatingBackgroundColor2)&&(_.offsets=this._getOffsets("gridLines",g,i,E,f,{left:0,right:0},R,G));var B=[];if(_.visible||a.spider){let e={stroke:_.color||s._getThemeColor("line"),fill:"none","stroke-width":1,"stroke-dasharray":_.dashStyle||""};for(let t=0;t<_.offsets.length;t++){let r=this.renderer._ptrnd(_.offsets[t].offset);if(r!==i)if(a.spider)B.push(r);else if(1!==u){var H=-h/Math.PI*180,z=-d/Math.PI*180;this.renderer.pieslice(n,o,0,r,Math.min(H,z),Math.max(H,z),void 0,e)}else k.circle(n,o,r,e)}}if(g.tickMarks&&(g.tickMarks.visible||g.showTickMarks)||(x.visible=!1),x.visible){x.offsets=this._getOffsets("tickMarks",g,i,E,f,{left:0,right:0},R,G);const e=2*x.size;let t={stroke:x.color||s._getThemeColor("line"),fill:"none","stroke-width":1,"stroke-dasharray":x.dashStyle||""};for(let i=0;i<x.offsets.length;i++){var W=x.offsets[i].offset;let r={x:n+W*Math.cos(A)-e/2*Math.sin(A+Math.PI/2),y:o+W*Math.sin(A)-e/2*Math.cos(A+Math.PI/2)},s={x:n+W*Math.cos(A)+e/2*Math.sin(A+Math.PI/2),y:o+W*Math.sin(A)+e/2*Math.cos(A+Math.PI/2)};k.line(this.renderer._ptrnd(r.x),this.renderer._ptrnd(r.y),this.renderer._ptrnd(s.x),this.renderer._ptrnd(s.y),t)}}return B}}_renderAxis(e,t,i,r,s,a,l,n,o,h,d){if(i.customDraw&&!h)return{width:NaN,height:NaN};let u=i.title,g=i.labels,f=i.tickMarks,p=i.padding,c=f.visible?f.size:0,m={width:0,height:0},y={width:0,height:0};e?m.height=y.height=r.height:m.width=y.width=r.width,!h&&t&&e&&(r.x-=r.width);let _=o.renderData,x=_.itemWidth;if(u.visible&&void 0!==u.text&&null!==u.text&&""!==u){let i=u.angle,s=this.renderer.measureText(u.text,i,{class:u.style});y.width=s.width,y.height=s.height,h||this.renderer.text(u.text,r.x+u.offset.x+(e?t?-p.right-2+2*r.width-y.width:2+p.left:0),r.y+u.offset.y+(e?0:t?p.top+2:r.height-2-y.height-p.bottom),e?y.width:r.width,e?r.height:y.height,i,{class:u.style},!0,u.halign,u.valign,u.rotationPoint)}let v=0,b=n?-x/2:0;n&&!e&&(g.halign="center");let N=r.x,M=r.y,A=g.textOffset;A&&(isNaN(A.x)||(N+=A.x),isNaN(A.y)||(M+=A.y)),e?(N+=p.left+2+(y.width>0?y.width+2:0)+(t?r.width-y.width:0),M+=b):(N+=b,t?(M+=y.height>0?y.height+6:4,M+=c-(n?c:c/4)):M+=n?c:c/4,M+=p.top);let w=0,S=0,C=o.items;_.itemOffsets={},!this._isToggleRefresh&&this._isUpdate||(d=0);let k=!1,D=0;for(let i=0;i<C.length&&g.visible;i++,v+=x){if(!C[i]||isNaN(x))continue;let s=C[i].text;isNaN(C[i].targetX)||(v=C[i].targetX);let a=this.renderer.measureText(s,g.angle,{class:g.style});if(a.width>S&&(S=a.width),a.height>w&&(w=a.height),D+=e?w:S,!h){if(e&&v>r.height+2||!e&&v>r.width+2)continue;const s=e?N+(t?0===y.width?c:c-2:0):N+v;let a=e?M+v:M;_.itemOffsets[C[i].key]={x:s,y:a},k||(!isNaN(C[i].x)||!isNaN(C[i].y)&&d)&&(k=!0),C[i].targetX=s,C[i].targetY=a,C[i].width=e?r.width-p.left-p.right-4-c-(y.width>0?y.width+2:0):x,C[i].height=e?x:r.height-p.top-p.bottom-4-c-(y.height>0?y.height+2:0),C[i].visible=!0}}if(_.avgWidth=0===C.length?0:D/C.length,!h){let e={items:C,textSettings:g};if(!isNaN(d)&&k||(d=0),this._animateAxisText(e,0===d?1:0),0!==d){let t=this;this._enqueueAnimation("series",void 0,void 0,d,(function(e,i,r){t._animateAxisText(i,r)}),e)}}if(m.width+=4+c+y.width+S+(e&&y.width>0?2:0),m.height+=4+c+y.height+w+(!e&&y.height>0?2:0),e?m.width+=p.left+p.right:m.height+=p.top+p.bottom,!h&&i.line.visible){let s={stroke:i.line.color||self._getThemeColor("line"),"stroke-width":i.line.width,"stroke-dasharray":i.line.dashStyle||""};if(e){let e=r.x+r.width+(t?p.left:-p.right);e=this.renderer._ptrnd(e),this.renderer.line(e,r.y,e,r.y+r.height,s)}else{let e=this.renderer._ptrnd(r.y+(t?r.height-p.bottom:p.top));this.renderer.line(this.renderer._ptrnd(r.x),e,this.renderer._ptrnd(r.x+r.width+1),e,s)}}return m.width=this.renderer._rup(m.width),m.height=this.renderer._rup(m.height),m}_drawPlotAreaLines(e,t,i){var r=this.seriesGroups[e],s="horizontal"!==r.orientation;if(!this._renderData||this._renderData.length<=e)return;var a=t?"valueAxis":"xAxis",l=this._renderData[e][a];if(!l)return;var n=this._renderData.axisDrawState;n||(n=this._renderData.axisDrawState={});var o,h="";t?(h="valueAxis_"+(r.valueAxis?e:"")+(s?"swap":""),o=this._getValueAxis(e)):(h="xAxis_"+(r.xAxis?e:"")+(s?"swap":""),o=this._getXAxis(e)),n=n[h]?n[h]:n[h]={},t||(s=!s);var d=l.settings;if(!d)return;if(d.customDraw)return;var u=d.gridLines,g=d.tickMarks,f=d.padding,p=l.rect,c=this._plotRect;if(!u||!g)return;var m=.5,y={};let _={stroke:u.color||self._getThemeColor("line"),"stroke-width":u.width,"stroke-dasharray":u.dashStyle||""};var x=t?p.y+p.height:p.x,v=u.offsets;let b;if(t&&!o.flip&&(v=(v=v.slice(0)).reverse()),v&&v.length>0){var N=NaN;for(let e=0;e<v.length;e++)if(s?(b=this.renderer._ptrnd(p.y+v[e].offset),b<p.y-m&&(b=this.renderer._ptrnd(p.y)),b>p.y+p.height&&(b=p.y+p.height)):(b=this.renderer._ptrnd(p.x+v[e].offset),b>p.x+p.width+m&&(b=this.renderer._ptrnd(p.x+p.width))),!isNaN(b)&&(isNaN(N)||!(Math.abs(b-N)<2))){if(N=b,i.gridLines&&!1!==u.visible&&!0!==n.gridLines&&(s?this.renderer.line(this.renderer._ptrnd(c.x),b,this.renderer._ptrnd(c.x+c.width),b,_):this.renderer.line(b,this.renderer._ptrnd(c.y),b,this.renderer._ptrnd(c.y+c.height),_)),y[b]=!0,i.alternatingBackground&&(u.alternatingBackgroundColor||u.alternatingBackgroundColor2)&&!0!==n.alternatingBackground){var M,A=e%2==0?u.alternatingBackgroundColor2:u.alternatingBackgroundColor;e>0&&A&&(M=s?this.renderer.rect(this.renderer._ptrnd(c.x),x,this.renderer._ptrnd(c.width-1),b-x,_):this.renderer.rect(x,this.renderer._ptrnd(c.y),b-x,this.renderer._ptrnd(c.height),_),this.renderer.attr(M,{"stroke-width":0,fill:A,opacity:u.alternatingBackgroundOpacity||1}))}x=b}}if(_={stroke:g.color||self._getThemeColor("line"),"stroke-width":g.width,"stroke-dasharray":g.dashStyle||""},i.tickMarks&&g.visible&&!0!==n.tickMarks){var w=g.size;let e=g.offsets,i=NaN;for(let r=0;r<e.length;r++)if(s?(b=this.renderer._ptrnd(p.y+e[r].offset),b<p.y-m&&(b=this.renderer._ptrnd(p.y)),b>p.y+p.height&&(b=p.y+p.height)):(b=this.renderer._ptrnd(p.x+e[r].offset),b>p.x+p.width+m&&(b=this.renderer._ptrnd(p.x+p.width))),!isNaN(b)&&(isNaN(i)||!(Math.abs(b-i)<2))){if(y[b-1]?b--:y[b+1]&&b++,s){if(b>p.y+p.height+m)break}else if(b>p.x+p.width+m)break;i=b;var S=l.isMirror?w:-w;if(s){var C=p.x+p.width+("right"===o.position?f.left:-f.right);t||(C=p.x+(l.isMirror?f.left:-f.right+p.width)),this.renderer.line(C,b,C+S,b,_)}else{var k=p.y+(l.isMirror?p.height:0);k+=l.isMirror?-f.bottom:f.top,k=this.renderer._ptrnd(k),this.renderer.line(b,k,b,k-S,_)}}}n.tickMarks=n.tickMarks||i.tickMarks,n.gridLines=n.gridLines||i.gridLines,n.alternatingBackground=n.alternatingBackground||i.alternatingBackground}_calcValueAxisItems(e,t,i){let r=this._stats.seriesGroups[e];if(!r||!r.isValid)return!1;let s=this.seriesGroups[e],a=this._getValueAxis(e),l=!1!==a.valuesOnTicks,n=r.intervals,o=t/n,h=r.min,d=r.mu,u=!0===a.logarithmicScale,g=a.logarithmicScaleBase||10,f=-1!==s.type.indexOf("stacked")&&-1!==s.type.indexOf("100");for(u&&(d=isNaN(a.unitInterval)?1:a.unitInterval),l||(n=Math.max(n-1,1));this._renderData.length<e+1;)this._renderData.push({});this._renderData[e].valueAxis={};let p=this._renderData[e].valueAxis;p.itemWidth=p.intervalWidth=o,p.items=[];let c=p.items;for(let e=0;e<=n;e++){let t=0;t=u?f?r.max/Math.pow(g,n-e):h*Math.pow(g,e):l?h+e*d:h+(e+.5)*d,e%i==0?c.push(t):c.push(NaN)}return p.rangeLength=u&&!f?r.intervals:r.intervals*d,!0!==a.flip&&(c=c.reverse()),!0}_getDecimalPlaces(e,t,i){let r=0;isNaN(i)&&(i=10);for(let s=0;s<e.length;s++){let a=void 0===t?e[s]:e[s][t];if(isNaN(a))continue;let l=a.toString();for(let e=0;e<l.length;e++)if((l[e]<"0"||l[e]>"9")&&(r=l.length-(e+1),r>=0))return Math.min(r,i);for(r>0&&(a*=Math.pow(10,r));Math.round(a)!==a&&r<i;)r++,a*=10}return r}_renderValueAxis(e,t,i,r){let s=this.seriesGroups[e],a="horizontal"===s.orientation,l=this._getValueAxis(e);l||this.error(this.localize("missingAxis",{index:e,axis:"valueAxis"}));let n={width:0,height:0};if(!this._isGroupVisible(e)||this._isPieOnlySeries()||"spider"===s.type)return n;let o=!1!==l.valuesOnTicks,h=this._stats.seriesGroups[e],d=h.mu,u=!0===l.logarithmicScale,g=l.logarithmicScaleBase||10;if(u&&(d=isNaN(l.unitInterval)?1:l.unitInterval),0===d&&(d=1),isNaN(d))return n;let f=this._getAxisSettings(l),p=f.title,c=f.labels,m=l.labels||{};this._get([l.horizontalTextAlignment,m.horizontalAlignment])||0!==c.angle||(c.halign=a?"center":"right"===l.position?"left":"right");let y=this._get([c.step,c.unitInterval/d]);if(isNaN(y)&&(y=1),y=Math.max(1,Math.round(y)),!this._calcValueAxisItems(e,a?t.width:t.height,y)||!f.visible)return n;a||(p.angle=this.rightToLeft?90:-90,"centercenter"===p.rotationPoint&&("top"===p.valign?p.rotationPoint="rightcenter":"bottom"===p.valign&&(p.rotationPoint="leftcenter")));let _=this._renderData[e].valueAxis,x=this._getFormatSettings(c);-1!==s.type.indexOf("stacked")&&-1!==s.type.indexOf("100")&&!x&&(x={sufix:"%"}),c.formatFunction||x&&null!==x.decimalPlaces&&void 0!==x.decimalPlaces||(x=x||{},x.decimalPlaces=this._getDecimalPlaces([h.min,h.max,d],void 0,3));let v=f.gridLines,b=a?t.width:t.height,N=!0===l.flip;l.flip=!N;let M={min:h.min,max:h.max,logAxis:{enabled:!0===u,base:g,minPow:h.minPow,maxPow:h.maxPow}};(v.visible||l.alternatingBackgroundColor||l.alternatingBackgroundColor2)&&(v.offsets=this._getOffsets("gridLines",l,b,M,f,{left:0,right:0},o,d));let A=f.tickMarks;A.visible&&(A.offsets=this._getOffsets("tickMarks",l,b,M,f,{left:0,right:0},o,d));const w=this._getOffsets("labels",l,b,M,f,{left:0,right:0},o,d,!o);l.flip=N;let S,C=[];this._elementRenderInfo&&this._elementRenderInfo.length>e&&(S=this._elementRenderInfo[e].valueAxis);for(let e=0;e<w.length;e++){let t=w[e].value;if(isNaN(w[e].offset)){C.push(void 0);continue}let i={key:t,text:c.formatFunction?c.formatFunction(t):isNaN(t)?t:this._formatNumber(t,x)};S&&S.itemOffsets[t]&&(i.x=S.itemOffsets[t].x,i.y=S.itemOffsets[t].y),i.targetX=w[e].offset,isNaN(i.targetX)||C.push(i)}let k=a&&"top"===l.position||!a&&"right"===l.position||!a&&this.rightToLeft&&"left"!==l.position,D={items:C,renderData:_},T=this._getAnimProps(e),F=T.enabled&&C.length<500?T.duration:0;return!1===this.enableAxisTextAnimation&&(F=0),_.settings=f,_.isMirror=k,_.rect=t,this._renderAxis(!a,k,f,t,r,d,u,!0,D,i,F)}_objectsArraysToArray(e,t){let i=[];if(!Array.isArray(e))return i;for(let r=0;r<e.length;r++)i.push(e[r][t]);return i}_arraysToObjectsArray(e,t){let i=[];if(e.length!==t.length)return i;for(let r=0;r<e.length;r++)for(let s=0;s<e[r].length;s++)i.length<=s&&i.push({}),i[s][t[r]]=e[r][s];return i}_valuesToOffsets(e,t,i,r,s,a,l){let n=[];if(!t||!Array.isArray(e))return n;let o=i.logAxis.base,h=i.logAxis.enabled?"logarithmic":"linear",d=t.flip,u=r,g=0,f=0;s&&!isNaN(s.left)&&(g=s.left),s&&!isNaN(s.right)&&(f=s.right),u=r-g-f,r=u;for(let t=0;t<e.length;t++){let s=this._smartPlot.scale(e[t],{min:i.min.valueOf(),max:i.max.valueOf(),type:h,base:o},{min:0,max:a?r:u,flip:d},{});isNaN(s)?n.push(NaN):(isNaN(l)||(s+=l),s<=r+g+f+1?n.push(this.renderer._ptrnd(s)):n.push(NaN))}return n}_generateIntervalValues(e,t,i,r,s){let a=[],l=e.min,n=e.max;if(e.logAxis&&e.logAxis.enabled&&(l=e.logAxis.minPow,n=e.logAxis.maxPow),null==l||null==n)return a;if(l===n)return e.logAxis&&e.logAxis.enabled?[Math.pow(e.logAxis.base,l)]:[l];let o=1;i<1&&(o=1e6,l*=o,n*=o,i*=o);for(let e=l;e<=n;e+=i)a.push(e/o+(s?i/2:0));if(t>i){let e=[],r=Math.round(t/i);for(let t=0;t<a.length;t++)t%r==0&&e.push(a[t]);a=e}if(e.logAxis&&e.logAxis.enabled)for(let t=0;t<a.length;t++)a[t]=Math.pow(e.logAxis.base,a[t]);return a}_generateDTOffsets(e,t,i,r,s,a,l,n,o,h,d){l||(l="day");var u=[];if(e>t)return u;if(e===t)return h?u.push({offset:n?i/2:r.left,value:e}):n&&u.push({offset:i/2,value:e}),u;var g=i-r.left-r.right,f=e,p=r.left,c=p,m=a=Math.max(a,1),y=Math.min(1,a);for(a>1&&"millisecond"!==l&&(a=1);this.renderer._ptrnd(c)<=this.renderer._ptrnd(r.left+g+(n?0:r.right));){u.push({offset:c,value:f});var _=new Date(f.valueOf());if("millisecond"===l)_.setMilliseconds(f.getMilliseconds()+a);else if("second"===l)_.setSeconds(f.getSeconds()+a);else if("minute"===l)_.setMinutes(f.getMinutes()+a);else if("hour"===l){var x=_.valueOf();_.setHours(f.getHours()+a),x===_.valueOf()&&_.setHours(f.getHours()+a+1)}else"day"===l?_.setDate(f.getDate()+a):"month"===l?_.setMonth(f.getMonth()+a):"year"===l&&_.setFullYear(f.getFullYear()+a);c=p+((f=_).valueOf()-e.valueOf())*y/(t.valueOf()-e.valueOf())*g}if(d)for(let e=0;e<u.length;e++)u[e].offset=i-u[e].offset;if(m>1&&"millisecond"!==l){var v=[];for(let e=0;e<u.length;e+=m)v.push({offset:u[e].offset,value:u[e].value});u=v}if(!n&&!h&&u.length>1){let e=[];e.push({offset:0,value:void 0});for(let t=1;t<u.length;t++)e.push({offset:u[t-1].offset+(u[t].offset-u[t-1].offset)/2,value:void 0});var b=e.length;b>1?e.push({offset:e[b-1].offset+(e[b-1].offset-e[b-2].offset)}):e.push({offset:i,value:void 0}),u=e}if(s>a){let e=[];var N=Math.round(s/m);for(let t=0;t<u.length;t++)t%N==0&&e.push({offset:u[t].offset,value:u[t].value});u=e}return u}_hasStackValueReversal(e,t){let i=this.seriesGroups[e];if(-1===i.type.indexOf("stacked"))return!1;let r=-1!==i.type.indexOf("waterfall"),s=this._getDataLen(e),a=0,l=!1,n=[];for(let t=0;t<i.series.length;t++)n[t]=this._isSerieVisible(e,t);for(let o=0;o<s;o++){let s;r||(l=!1);for(let r=0;r<i.series.length;r++){if(!n[r])continue;const h=this._getDataValueAsNumber(o,i.series[r].dataField,e);if(isNaN(h))continue;if(i.series[r].summary&&void 0!==this._getDataValue(o,i.series[r].summary,e))continue;let d=l?h<0:h<t;if(l=!0,void 0===s&&(s=d),d!==s)return!0;s=d,a+=h}}return this.waterfallStackSum=a,!1}_getValueAxis(e){let t=null==e?this.valueAxis:this.seriesGroups[e].valueAxis||this.valueAxis;return t||(t=this.valueAxis={}),t}_buildStats(e){var t={seriesGroups:[]};this._stats=t;for(let B=0;B<this.seriesGroups.length;B++){var i=this.seriesGroups[B];t.seriesGroups[B]={};var r=this._getXAxis(B),s=this._getValueAxis(B),a=this._getXAxisStats(B,r,"horizontal"!==i.orientation?e.width:e.height);let H=t.seriesGroups[B];H.isValid=!0;var l="horizontal"===i.orientation?e.width:e.height,n=!0===s.logarithmicScale,o=s.logarithmicScaleBase;isNaN(o)&&(o=10);var h=-1!==i.type.indexOf("stacked"),d=h&&-1!==i.type.indexOf("100"),u=-1!==i.type.indexOf("range"),g=-1!==i.type.indexOf("waterfall");g&&!this._moduleWaterfall&&self.error(self.localize("missingReference",{files:"smart.chart.waterfall.js"})),d&&(H.psums=[],H.nsums=[]);var f=NaN,p=NaN,c=NaN,m=NaN,y=s?s.baselineValue:NaN;isNaN(y)&&(y=n&&!d?1:0);var _=!1;0!==y&&h&&(_=this._hasStackValueReversal(B,y))&&(y=0),h&&g&&(_=this._hasStackValueReversal(B,y));var x=this._getDataLen(B),v=0,b=NaN,N=[];if(g)for(let e=0;e<i.series.length;e++)N.push(NaN);var M=NaN;for(let e=0;e<x&&H.isValid;e++){if(r.rangeSelector&&r.rangeSelector.visible){var A=r.dataField?this._getDataValue(e,r.dataField,B):e;if(A&&a.isDateTime&&(A=this._castAsDate(A,r.dateFormat)),a.useIndeces&&(A=e),A&&(A.valueOf()<a.min.valueOf()||A.valueOf()>a.max.valueOf()))continue}var w=s.minValue,S=s.maxValue;s.baselineValue&&(w=isNaN(w)?y:Math.min(y,w),S=isNaN(S)?y:Math.max(y,S));var C=0,k=0;for(let t=0;i.series&&t<i.series.length;t++)if(this._isSerieVisible(B,t)){var D=NaN,T=NaN,F=NaN;if(-1!==i.type.indexOf("candle")||-1!==i.type.indexOf("ohlc")){var O=["Open","Low","Close","High"];for(var I in O){var P=this._getDataValueAsNumber(e,i.series[t]["dataField"+O[I]],B);isNaN(P)||(F=isNaN(T)?P:Math.min(F,P),T=isNaN(T)?P:Math.max(T,P))}}else if(u){var R=this._getDataValueAsNumber(e,i.series[t].dataFieldFrom,B),L=this._getDataValueAsNumber(e,i.series[t].dataFieldTo,B);T=Math.max(R,L),F=Math.min(R,L)}else{if(D=this._getDataValueAsNumber(e,i.series[t].dataField,B),g){if(this._isSummary(B,e)&&void 0!==this._getDataValue(e,i.series[t].summary,B))continue;h?(isNaN(M)||(D+=M),M=D):(isNaN(N[t])?N[t]=D:D+=N[t],N[t]=D)}if(isNaN(D)||n&&D<=0)continue;F=T=D}(isNaN(S)||T>S)&&(isNaN(s.maxValue)||T<=s.maxValue)&&(S=T),(isNaN(w)||F<w)&&(isNaN(s.minValue)||F>=s.minValue)&&(w=F),isNaN(D)||!h||g||(D>y?C+=D:D<y&&(k+=D))}if(d||(isNaN(s.maxValue)||(C=Math.min(s.maxValue,C)),isNaN(s.minValue)||(k=Math.max(s.minValue,k))),n&&d)for(let t=0;t<i.series.length;t++){if(!this._isSerieVisible(B,t)){b=.01;continue}let r=this._getDataValueAsNumber(e,i.series[t].dataField,B);if(isNaN(r)||r<=0)b=.01;else{var G=0===C?0:r/C;(isNaN(b)||G<b)&&(b=G)}}var V=C-k;v<V&&(v=V),d&&(H.psums[e]=C,H.nsums[e]=k),(S>p||isNaN(p))&&(p=S),(w<f||isNaN(f))&&(f=w),(C>c||isNaN(c))&&(c=C),(k<m||isNaN(m))&&(m=k)}d&&(c=0===c?0:Math.max(c,-m),m=0===m?0:Math.min(m,-c)),f===p&&(!isNaN(s.minValue)&&isNaN(s.maxValue)?(f=s.minValue,p=n?f*o:f+1):isNaN(s.minValue)&&!isNaN(s.maxValue)&&(p=s.maxValue,f=n?p/o:p-1)),f===p&&(0===f?(f=-1,p=1):f<0?p=0:n?1===f&&(f/=o,p*=o):f=0);var E={gmin:f,gmax:p,gsumP:c,gsumN:m,gbase:y,isLogAxis:n,logBase:o,minPercent:b,gMaxRange:v,isStacked:h,isStacked100:d,isWaterfall:g,hasStackValueReversal:_,valueAxis:s,valueAxisSize:l};E.isStacked&&(E.gsumN<0&&(E.gmin=Math.min(E.gmin,E.gbase+E.gsumN)),E.gsumP>0&&(E.gmax=Math.max(E.gmax,E.gbase+E.gsumP))),H.context=E}this._mergeCommonValueAxisStats();for(let e=0;e<t.seriesGroups.length;e++){let i=t.seriesGroups[e];if(i.isValid){var B=this._calcOutputGroupStats(i.context);for(let e in B)i[e]=B[e];delete i.context}}}_mergeCommonValueAxisStats(){let e={};for(let t=0;t<this.seriesGroups.length;t++){if(!this._isGroupVisible(t))continue;if(this.seriesGroups[t].valueAxis)continue;let i=this._stats.seriesGroups[t].context;e.gbase=i.gbase,(isNaN(e.gmin)||i.gmin<e.gmin)&&(e.gmin=i.gmin),(isNaN(e.gmax)||i.gmax>e.gmax)&&(e.gmax=i.gmax),(isNaN(e.gsumP)||i.gsumP>e.gsumP)&&(e.gsumP=i.gsumP),(isNaN(e.gsumN)||i.gsumN<e.gsumN)&&(e.gsumN=i.gsumN),(isNaN(e.logBase)||i.logBase<e.logBase)&&(e.logBase=i.logBase),(isNaN(e.minPercent)||i.minPercent<e.minPercent)&&(e.minPercent=i.minPercent),e.gsumN>0&&(e.gmin=Math.min(e.gmin,e.gbase+e.gsumN)),e.gsumP>0&&(e.gmax=Math.max(e.gmax,e.gbase+e.gsumP))}for(let t=0;t<this.seriesGroups.length;t++){if(this.seriesGroups[t].valueAxis)continue;let i=this._stats.seriesGroups[t].context;for(let t in e)i[t]=e[t]}}_calcOutputGroupStats(e){let t=e.gmin,i=e.gmax,r=e.gsumP,s=e.gsumN,a=e.gbase,l=e.isLogAxis,n=e.logBase,o=e.minPercent,h=e.gMaxRange,d=e.isStacked,u=e.isStacked100,g=e.isWaterfall,f=e.hasStackValueReversal,p=e.valueAxis,c=e.valueAxisSize,m=e.valueAxis.unitInterval;m||(m=this._calcInterval(t,i,Math.max(c/80,2))),t===i&&(t=a,i*=2);let y=NaN,_=0,x=0;if(l){if(u){y=0;let e=1;for(_=x=this._draw.log(100,n);e>o;)e/=n,_--,y++;t=Math.pow(n,_)}else d&&!g&&(i=Math.max(i,r)),x=this.renderer._rnd(this._draw.log(i,n),1,!0),i=Math.pow(n,x),_=this.renderer._rnd(this._draw.log(t,n),1,!1),t=Math.pow(n,_);m=n}t<s&&(s=t),i>r&&(r=i);let v=t,b=i;if(l||0!=Math.abs(b-v)%m&&(v=this.renderer._rnd(t,m,!1),b=this.renderer._rnd(i,m,!0)),u&&b>100&&(b=100),u&&!l&&(b=b>0?100:0,v=v<0?-100:0,m=p.unitInterval,(isNaN(m)||m<=0||m>=100)&&(m=10),100%m!=0))for(;m>=1&&100%m!=0;m--);return isNaN(b)||isNaN(v)||isNaN(m)?{}:(isNaN(y)&&(y=parseInt(((b-v)/(0===m?1:m)).toFixed())),l&&!u&&(y=x-_,h=Math.pow(n,y)),y<1?{}:{min:v,max:b,logarithmic:l,logBase:n,base:l?v:a,minPow:_,maxPow:x,sumP:r,sumN:s,mu:m,maxRange:h,intervals:y,hasStackValueReversal:f})}_getDataLen(e){let t=this.dataSource;return null!=e&&-1!==e&&this.seriesGroups[e].dataSource&&(t=this.seriesGroups[e].dataSource),t?t.length:0}_getDataValue(e,t,i){let r=this.dataSource;if(null!=i&&-1!==i&&(r=this.seriesGroups[i].dataSource||r),!(!r||e<0||e>r.length-1))return"function"==typeof t?t(e,r):t&&""!==t?r[e][t]:r[e]}_getDataValueAsNumber(e,t,i){let r=this._getDataValue(e,t,i);return this._isDate(r)?r.valueOf():("number"!=typeof r&&(r=parseFloat(r)),"number"!=typeof r&&(r=void 0),r)}_isPieGroup(e){let t=this.seriesGroups[e];return!(!t||!t.type||-1===t.type.indexOf("pie")&&-1===t.type.indexOf("donut"))}_renderPieSeries(e,t){let i=this._getDataLen(e),r=this.seriesGroups[e],s=this._calcGroupOffsets(e,t).offsets;for(let a=0;a<r.series.length;a++){let l=r.series[a];if(l.customDraw)continue;let n=this._getSerieSettings(e,a),o=this._getAnimProps(e,a),h=o.enabled&&i<5e3&&!this._isToggleRefresh&&o.duration;this._isTouchDevice&&this.renderer instanceof Smart.Utilities.HTML5Renderer&&(h=0);let d=this._get([l.minAngle,l.startAngle]);(isNaN(d)||d<0||d>360)&&(d=0);let u=this._get([l.maxAngle,l.endAngle]);(isNaN(u)||u<0||u>360)&&(u=360);let g={rect:t,minAngle:d,maxAngle:u,groupIndex:e,serieIndex:a,settings:n,items:[]};for(let t=0;t<i;t++){let i=s[a][t];if(!i.visible)continue;let r=i.fromAngle,l=i.toAngle,n=this.renderer.pieslice(i.x,i.y,i.innerRadius,i.outerRadius,r,0===h?l:r,i.centerOffset);this._setRenderInfo(e,a,t,{element:n});let o={displayValue:i.displayValue,itemIndex:t,visible:i.visible,x:i.x,y:i.y,innerRadius:i.innerRadius,outerRadius:i.outerRadius,fromAngle:r,toAngle:l,centerOffset:i.centerOffset};g.items.push(o)}this._animatePieSlices(g,0);let f=this;this._enqueueAnimation("series",void 0,void 0,h,(function(e,t,i){f._animatePieSlices(t,i)}),g)}}_sliceSortFunction(e,t){return e.fromAngle-t.fromAngle}_animatePieSlices(e,t){var i;this._elementRenderInfo&&this._elementRenderInfo.length>e.groupIndex&&this._elementRenderInfo[e.groupIndex].series&&this._elementRenderInfo[e.groupIndex].series.length>e.serieIndex&&(i=this._elementRenderInfo[e.groupIndex].series[e.serieIndex]);var r=this._getLabelsSettings(e.groupIndex,e.serieIndex,NaN),s=r.visible,a=[];for(let r=0;r<e.items.length;r++){const s=e.items[r];if(!s.visible)continue;let h=s.fromAngle;var l=s.fromAngle+t*(s.toAngle-s.fromAngle);if(i&&i[s.displayValue]){var n=i[s.displayValue].fromAngle,o=i[s.displayValue].toAngle;h=n+(h-n)*t,l=o+(l-o)*t}a.push({index:r,from:h,to:l})}i&&a.sort(this._sliceSortFunction);var h=NaN;for(let l=0;l<a.length;l++){const n=e.items[a[l].index];var d=this._getRenderInfo(e.groupIndex,e.serieIndex,n.itemIndex);let o=a[l].from,p=a[l].to;i&&(!isNaN(h)&&o>h&&(o=h),h=p,l===a.length-1&&p!==a[0].from&&(p=e.maxAngle+a[0].from));var u=this.renderer.pieSlicePath(n.x,n.y,n.innerRadius,n.outerRadius,o,p,n.centerOffset);this.renderer.attr(d.element,{d:u});var g=this._getColors(e.groupIndex,e.serieIndex,n.itemIndex,"radialGradient",n.outerRadius),f=e.settings;d.colors=g,d.settings=f,this.renderer.attr(d.element,{fill:g.fillColor,stroke:g.lineColor,"stroke-width":f.stroke,"fill-opacity":f.opacity,"stroke-opacity":f.opacity,"stroke-dasharray":"none"}),s&&this._showPieLabel(e.groupIndex,e.serieIndex,n.itemIndex,r,void 0,d.colors.lineColor),1===t&&this._installHandlers(d.element,"pieslice",e.groupIndex,e.serieIndex,n.itemIndex)}}_showPieLabel(e,t,i,r,s){let a=this._renderData[e].offsets[t][i];if(a.elementInfo.labelElement&&this.renderer.removeElement(a.elementInfo.labelElement),r||(r=this._getLabelsSettings(e,t,NaN)),!r.visible)return;let l=a.fromAngle,n=a.toAngle,o=Math.abs(l-n);o>360&&(l=0,n=360);let h=o/2+l;h%=360;let d,u=h*Math.PI*2/360;!0===r.autoRotate&&(d=h<90||h>270?360-h:180-h);let g=r.linesEnabled,f=this._showLabel(e,t,i,{x:0,y:0,width:0,height:0},"center","center",!0,!1,!1,d),p=r.radius||a.outerRadius+Math.max(f.width,f.height);this._isPercent(p)&&(p=parseFloat(p)/100*Math.min(this._plotRect.width,this._plotRect.height)/2),p+=a.centerOffset,isNaN(s)&&(s=0),p+=s;let c=this.seriesGroups[e],m=c.series[t],y=this._draw.getNum([m.offsetX,c.offsetX,this._plotRect.width/2]),_=this._draw.getNum([m.offsetY,c.offsetY,this._plotRect.height/2]),x=this._plotRect.x+y,v=this._plotRect.y+_,b=this._adjustTextBoxPosition(x,v,f,p,h,a.outerRadius>p,!1!==r.linesAngles,!0===r.autoRotate);const N={},M=b.x<x?0:f.width/2,A=Math.sqrt(Math.pow(b.x-x,2)+Math.pow(b.y-v,2))+M<a.outerRadius?arguments[5]:void 0;if(a.elementInfo.labelElement=this._showLabel(e,t,i,{x:b.x,y:b.y,width:f.width,height:f.height},"left","top",!1,!1,!1,d,N,A),p>a.outerRadius+s+5&&!1!==g){let e={lineColor:a.elementInfo.colors.lineColor,stroke:a.elementInfo.settings.stroke,opacity:a.elementInfo.settings.opacity,dashStyle:a.elementInfo.settings.dashStyle};a.elementInfo.labelArrowPath=this._updateLebelArrowPath(a.elementInfo.labelArrowPath,x,v,p,a.outerRadius+s,u,!1!==r.linesAngles,e,N)}}_updateLebelArrowPath(e,t,i,r,s,a,l,n,o){const h=this.renderer;let d=h._ptrnd(t+(r-0)*Math.cos(a)),u=h._ptrnd(i-(r-0)*Math.sin(a)),g=h._ptrnd(t+(s+2)*Math.cos(a)),f=h._ptrnd(i-(s+2)*Math.sin(a)),p=[];p.push({x:o.x+o.width/2,y:o.y}),p.push({x:o.x+o.width/2,y:o.y+o.height}),p.push({x:o.x,y:o.y+o.height/2}),p.push({x:o.x+o.width,y:o.y+o.height/2}),l||(p.push({x:o.x,y:o.y}),p.push({x:o.x+o.width,y:o.y}),p.push({x:o.x+o.width,y:o.y+o.height}),p.push({x:o.x,y:o.y+o.height})),p=p.sort((function(e,r){return h._ptdist(e.x,e.y,t,i)-h._ptdist(r.x,r.y,t,i)})),p=p.sort((function(e,r){return Math.abs(e.x-t)+Math.abs(e.y-i)-(Math.abs(r.x-t)+Math.abs(r.y-i))}));for(let e=0;e<p.length;e++)p[e].x=h._ptrnd(p[e].x),p[e].y=h._ptrnd(p[e].y);d=p[0].x,u=p[0].y;let c="M "+d+","+u+" L"+g+","+f;return l&&(c="M "+d+","+u+" L"+g+","+u+" L"+g+","+f),e?h.attr(e,{d:c}):e=h.path(c,{}),h.attr(e,{fill:"none",stroke:n.lineColor,"stroke-width":n.stroke,"stroke-opacity":n.opacity,"stroke-dasharray":"none"}),e}_adjustTextBoxPosition(e,t,i,r,s,a,l,n){let o=s*Math.PI*2/360,h=this.renderer._ptrnd(e+r*Math.cos(o)),d=this.renderer._ptrnd(t-r*Math.sin(o));if(n){let s=i.width,a=i.height,l=Math.atan(a/s)%(2*Math.PI),n=o%(2*Math.PI),h=0;n<=l?h=s/2*Math.cos(o):n>=l&&n<Math.PI-l?h=a/2*Math.sin(o):n>=Math.PI-l&&n<Math.PI+l?h=s/2*Math.cos(o):n>=Math.PI+l&&n<2*Math.PI-l?h=a/2*Math.sin(o):n>=2*Math.PI-l&&n<2*Math.PI&&(h=s/2*Math.cos(o)),r+=Math.abs(h)+3;let d=this.renderer._ptrnd(e+r*Math.cos(o)),u=this.renderer._ptrnd(t-r*Math.sin(o));return d-=i.width/2,u-=i.height/2,{x:d,y:u}}return a?(h-=i.width/2,d-=i.height/2):l?s>=90&&s<270?(d-=i.height/2,h-=i.width):d-=i.height/2:s>=0&&s<45||s>=315&&s<360?d-=i.height/2:s>=45&&s<135?(d-=i.height,h-=i.width/2):s>=135&&s<225?(d-=i.height/2,h-=i.width):s>=225&&s<315&&(h-=i.width/2),{x:h,y:d}}_isColumnType(e){return-1!==e.indexOf("column")||-1!==e.indexOf("waterfall")}_getColumnGroupsCount(e){let t=0;e=e||"vertical";let i=this.seriesGroups;for(let r=0;r<i.length;r++){let s=i[r].orientation||"vertical";this._isColumnType(i[r].type)&&s===e&&t++}return this.columnSeriesOverlap&&(t=1),t}_getColumnGroupIndex(e){let t=0,i=this.seriesGroups[e].orientation||"vertical";for(let r=0;r<e;r++){let e=this.seriesGroups[r],s=e.orientation||"vertical";this._isColumnType(e.type)&&s===i&&t++}return t}_renderAxisBands(e,t,i){var r=i?this._getXAxis(e):this._getValueAxis(e),s=this.seriesGroups[e],a=i?void 0:s.bands;if(!a){for(let t=0;t<e;t++)if((i?this._getXAxis(t):this._getValueAxis(t))===r)return;a=r.bands}if(Array.isArray(a)){var l=t,n="horizontal"===s.orientation;n&&(l={x:t.y,y:t.x,width:t.height,height:t.width}),this._calcGroupOffsets(e,l);for(let r=0;r<a.length;r++){var o=a[r],h=o.minValue,d=o.maxValue,u=i?this.getXAxisDataPointOffset(h,e):this.getValueAxisDataPointOffset(h,e),g=i?this.getXAxisDataPointOffset(d,e):this.getValueAxisDataPointOffset(d,e);if(!isNaN(u)&&!isNaN(g)){var f,p=Math.abs(u-g);if(s.polar||s.spider){var c=this._renderData[e],m=c.polarCoords;if(i)if(s.spider){const t=this.getPolarDataPointOffset(h,this._stats.seriesGroups[e].max,e),i=this.getPolarDataPointOffset(d,this._stats.seriesGroups[e].max,e);let r="M "+m.x+","+m.y;r+=" L "+t.x+","+t.y,r+=" L "+i.x+","+i.y,f=this.renderer.path(r)}else{var y={},_={x:Math.min(u,g),y:t.y,width:p,height:t.height};this._columnAsPieSlice(y,t,m,_),f=y.element}else{var x=this._toPolarCoord(m,t,t.x,c.baseOffset),v=this._toPolarCoord(m,t,t.x,u),b=this._toPolarCoord(m,t,t.x,g),N=this.renderer._ptdist(x.x,x.y,v.x,v.y),M=this.renderer._ptdist(x.x,x.y,b.x,b.y),A=Math.round(360*-m.startAngle/(2*Math.PI)),w=Math.round(360*-m.endAngle/(2*Math.PI));if(A>w){const e=A;A=w,w=e}if(s.spider){var S=c.xAxis.offsetAngles;let e="";var C=[M,N],k=S;for(var D in m.isClosedCircle&&(k=S.slice(0)).push(k[0]),C){for(let t=0;t<k.length;t++){var T=0===D?t:S.length-t-1;let i=m.x+C[D]*Math.cos(k[T]),r=m.y+C[D]*Math.sin(k[T]);e+=""===e?"M ":" L",e+=this.renderer._ptrnd(i)+","+this.renderer._ptrnd(r)}if(0===D){let t=m.x+C[1]*Math.cos(k[T]),i=m.y+C[1]*Math.sin(k[T]);e+=" L"+this.renderer._ptrnd(t)+","+this.renderer._ptrnd(i)}}e+=" Z",f=this.renderer.path(e)}else f=this.renderer.pieslice(m.x,m.y,N,M,A,w)}}else{var F={x:Math.min(u,g),y:l.y,width:p,height:l.height};if(i||(F={x:l.x,y:Math.min(u,g),width:l.width,height:p}),n){let e=F.x;F.x=F.y,F.y=e,e=F.width,F.width=F.height,F.height=e}f=0===p||1===p?this.renderer.line(this.renderer._ptrnd(F.x),this.renderer._ptrnd(F.y),this.renderer._ptrnd(F.x+(n?0:F.width)),this.renderer._ptrnd(F.y+(n?F.height:0))):this.renderer.rect(F.x,F.y,F.width,F.height)}var O=o.color||this._getThemeColor("band"),I=o.lineColor||O,P=o.lineWidth;isNaN(P)&&(P=1);var R=o.opacity;(isNaN(R)||R<0||R>1)&&(R=1),this.renderer.attr(f,{fill:O,"fill-opacity":R,stroke:I,"stroke-opacity":R,"stroke-width":P,"stroke-dasharray":o.dashStyle})}}}}_getColumnGroupWidth(e,t,i){let r=this.seriesGroups[e],s=-1!==r.type.indexOf("stacked"),a=this._getColumnGroupsCount(r.orientation);(isNaN(a)||0===a)&&(a=1);let l=t.rangeLength>=1?t.itemWidth:.9*i,n=r.columnsMinWidth;isNaN(n)&&(n=1),isNaN(r.columnsMaxWidth)||(n=Math.min(r.columnsMaxWidth,n)),n>l&&t.length>0&&(l=Math.max(l,.9*i/t.length));let o=n;if(!s){let e=r.seriesGapPercent;(isNaN(e)||e<0)&&(e=10),e/=100;let t=n;t*=1+e,o+=r.series.length*t}return{requiredWidth:o,availableWidth:l,targetWidth:Math.max(l/a,o)}}_getColumnSerieWidthAndOffset(e,t){let i=this.seriesGroups[e],r="horizontal"===i.orientation,s=this._plotRect;r&&(s={x:s.y,y:s.x,width:s.height,height:s.width});let a=this._calcGroupOffsets(e,s);if(!a||0===a.xoffsets.length)return;let l=this._getColumnGroupsCount(i.orientation);"candlestick"!==i.type&&"ohlc"!==i.type||(l=1);let n=this._getColumnGroupIndex(e),o=this._getColumnGroupWidth(e,a.xoffsets,r?s.height:s.width),h=0,d=o.targetWidth;(!0===this.columnSeriesOverlap||Math.round(d)>Math.round(o.availableWidth/l))&&(l=1,n=0),h-=d*l/2,h+=d*n;let u=i.columnsGapPercent;u<=0&&(u=0),(isNaN(u)||u>=100)&&(u=25),u/=100;let g=d*u;g+o.requiredWidth>o.targetWidth&&(g=Math.max(0,o.targetWidth-o.requiredWidth)),Math.round(d)>Math.round(o.availableWidth)&&(g=0),d-=g,h+=g/2;let f=i.seriesGapPercent;(isNaN(f)||f<0)&&(f=10);let p=-1!==i.type.indexOf("stacked"),c=d;p||(c/=i.series.length);let m=this._get([i.seriesGap,d*f/100/(i.series.length-1)]);(!0===i.polar||!0===i.spider||p||i.series.length<=1)&&(m=0);let y=m*(i.series.length-1);i.series.length>1&&y>d-1*i.series.length&&(y=d-1*i.series.length,m=y/Math.max(1,i.series.length-1));let _=c-y/i.series.length,x=0,v=i.columnsMaxWidth;isNaN(v)||_>v&&(x=_-v,_=v);let b=0;return b=p?x/2:(d-_*i.series.length-y)/2+_*t+Math.max(0,t)*m,{width:_,offset:h+b}}_renderColumnSeries(e,t){let i=this.seriesGroups[e];if(!i.series||0===i.series.length)return;let r="horizontal"===i.orientation,s=t;r&&(s={x:t.y,y:t.x,width:t.height,height:t.width});let a,l=this._calcGroupOffsets(e,s);if(!l||0===l.xoffsets.length)return;!0!==i.polar&&!0!==i.spider||(a=this._getPolarAxisCoords(e,s));let n={groupIndex:e,rect:t,vertical:!r,seriesCtx:[],renderData:l,polarAxisCoords:a};n.columnGroupWidth=this._getColumnGroupWidth(e,l.xoffsets,r?s.height:s.width);let o,h=this._getGroupGradientType(e);for(let t=0;t<i.series.length;t++){let r=i.series[t];if(r.customDraw)continue;let s=this._getAnimProps(e,t);o=s.enabled&&!this._isToggleRefresh&&l.xoffsets.length<100?s.duration:0;let d=this._getColumnSerieWidthAndOffset(e,t),u=this._isSerieVisible(e,t),g=this._getSerieSettings(e,t),f=this._getColors(e,t,NaN,this._getGroupGradientType(e),4),p=[];if("function"==typeof r.colorFunction&&!a)for(let i=l.xoffsets.first;i<=l.xoffsets.last;i++)p.push(this._getColors(e,t,i,h,4));let c={seriesIndex:t,serieColors:f,itemsColors:p,settings:g,columnWidth:d.width,xAdjust:d.offset,isVisible:u};n.seriesCtx.push(c)}this._animColumns(n,0===o?1:0);let d=this;this._enqueueAnimation("series",void 0,void 0,o,(function(e,t,i){d._animColumns(t,i)}),n)}_getPercent(e,t,i,r){return isNaN(e)&&(e=t),!isNaN(i)&&!isNaN(e)&&e<i&&(e=i),!isNaN(r)&&!isNaN(e)&&e>r&&(e=r),isNaN(e)?NaN:e}_getColumnVOffsets(e,t,i,r,s,a){var l=this.seriesGroups[t],n=this._getPercent(l.columnsTopWidthPercent,100,0,100),o=this._getPercent(l.columnsBottomWidthPercent,100,0,100);0===n&&0===o&&(o=100);var h=this._getPercent(l.columnsNeckHeightPercent,NaN,0,100)/100,d=this._getPercent(l.columnsNeckWidthPercent,100,0,100)/100,u=[],g=NaN;for(let l=0;l<i.length;l++){var f,p=i[l],c=p.seriesIndex,m=e.offsets[c][r].from,y=e.offsets[c][r].to,_=e.xoffsets.data[r],x=p.isVisible;x||(y=m);var v=this._elementRenderInfo;if(x&&v&&v.length>t&&v[t].series.length>c){var b=e.xoffsets.xvalues[r];!(f=v[t].series[c][b])||isNaN(f.from)||isNaN(f.to)||(m=f.from+(m-f.from)*a,y=f.to+(y-f.to)*a,_=f.xoffset+(_-f.xoffset)*a)}f||(y=m+(y-m)*(s?1:a)),isNaN(m)&&(m=isNaN(g)?e.baseOffset:g),g=!isNaN(y)&&s?y:m,isNaN(y)&&(y=m);var N={from:m,to:y,xOffset:_};100===n&&100===o||(N.funnel=!0,N.toWidthPercent=n,N.fromWidthPercent=o),u.push(N)}if(s&&u.length>1&&!(this._elementRenderInfo&&this._elementRenderInfo.length>t)){var M=0,A=0,w=-1/0,S=1/0,C=1/0,k=-1/0;for(let e=0;e<u.length;e++)i[e].isVisible&&(u[e].to>=u[e].from?(A+=u[e].to-u[e].from,C=Math.min(C,u[e].from),k=Math.max(k,u[e].to)):(M+=u[e].from-u[e].to,w=Math.max(w,u[e].from),S=Math.min(S,u[e].to)));var D=M,T=A;M*=a,A*=a;var F=0,O=0;for(let e=0;e<u.length;e++)if(u[e].to>=u[e].from){let t=u[e].to-u[e].from;t+O>A&&(t=Math.max(0,A-O),u[e].to=u[e].from+t),100===n&&100===o||(u[e].funnel=!0,!isNaN(h)&&T*h>=O?u[e].fromWidthPercent=100*d:u[e].fromWidthPercent=Math.abs(u[e].from-C)/T*(n-o)+o,!isNaN(h)&&T*h>=0+(O+t)?u[e].toWidthPercent=100*d:u[e].toWidthPercent=Math.abs(u[e].to-C)/T*(n-o)+o),O+=t}else{let t=u[e].from-u[e].to;t+F>M&&(t=Math.max(0,M-F),u[e].to=u[e].from-t),100===n&&100===o||(u[e].funnel=!0,!isNaN(h)&&D*h>=F?u[e].fromWidthPercent=100*d:u[e].fromWidthPercent=Math.abs(u[e].from-w)/D*(n-o)+o,!isNaN(h)&&D*h>=0+(F+t)?u[e].toWidthPercent=100*d:u[e].toWidthPercent=Math.abs(u[e].to-w)/D*(n-o)+o),F+=t}}return u}_columnAsPieSlice(e,t,i,r){let s=this._toPolarCoord(i,t,r.x,r.y),a=this._toPolarCoord(i,t,r.x,r.y+r.height),l=this.renderer._ptdist(i.x,i.y,a.x,a.y),n=this.renderer._ptdist(i.x,i.y,s.x,s.y),o=t.width,h=180*Math.abs(i.startAngle-i.endAngle)/Math.PI,d=-(r.x-t.x)*h/o,u=-(r.x+r.width-t.x)*h/o,g=i.startAngle;if(g=360*g/(2*Math.PI),d-=g,u-=g,e)if(void 0!==e.element&&null!==e.element){let t=this.renderer.pieSlicePath(i.x,i.y,l,n,u,d,0);t+=" Z",this.renderer.attr(e.element,{d:t})}else e.element=this.renderer.pieslice(i.x,i.y,l,n,u,d,0);return{fromAngle:u,toAngle:d,innerRadius:l,outerRadius:n}}_setRenderInfo(e,t,i,r){this._renderData[e].offsets[t][i].elementInfo=r}_getRenderInfo(e,t,i){return this._renderData[e].offsets[t][i].elementInfo||{}}_animColumns(e,t){var i=this,r=e.groupIndex,s=this.seriesGroups[r],a=e.renderData,l=-1!==s.type.indexOf("waterfall"),n=this._getXAxis(r),o=-1!==s.type.indexOf("stacked"),h=e.polarAxisCoords,d=-1;for(let e=0;e<s.series.length;e++)if(this._isSerieVisible(r,e)){d=e;break}var u=NaN,g=NaN;for(let t=0;t<e.seriesCtx.length;t++){var f=e.seriesCtx[t];(isNaN(u)||u>f.xAdjust)&&(u=f.xAdjust),(isNaN(g)||g<f.xAdjust+f.columnWidth)&&(g=f.xAdjust+f.columnWidth)}var p=Math.abs(g-u),c=this._get([s.columnsGapPercent,25])/100;(isNaN(c)<0||c>=1)&&(c=.25);var m=c*p,y=e.renderData.xoffsets,_=-1,x={},v=!0===s.skipOverlappingPoints;for(let u=y.first;u<=y.last;u++){var b=y.data[u];if(!(isNaN(b)||-1!==_&&Math.abs(b-_)<p-1+m&&v)){_=b;var N=this._getColumnVOffsets(a,r,e.seriesCtx,u,o,t),M=!1;if(l)for(let e=0;e<s.series.length;e++)s.series[e].summary&&y.xvalues[u][s.series[e].summary]&&(M=!0);for(let g=0;g<e.seriesCtx.length;g++){let f=e.seriesCtx[g];var A=f.seriesIndex,w=s.series[A],S=N[g].from,C=N[g].to,k=N[g].xOffset,D=(e.vertical?e.rect.x:e.rect.y)+f.xAdjust,T=f.settings;let p=0!==f.itemsColors.length?f.itemsColors[u-a.xoffsets.first]:f.serieColors;var F=this._isSerieVisible(r,A);if(!F)continue;let c=this.renderer._ptrnd(D+k);var O={x:c,width:f.columnWidth};N[g].funnel&&(O.fromWidthPercent=N[g].fromWidthPercent,O.toWidthPercent=N[g].toWidthPercent);var I=!0;e.vertical?(O.y=S,O.height=C-S,O.height<0&&(O.y+=O.height,O.height=-O.height,I=!1)):(O.x=S<C?S:C,O.width=Math.abs(S-C),I=S-C<0,O.y=c,O.height=f.columnWidth);var P=S-C;if(!isNaN(P)){P=Math.abs(P);var R=void 0,L=i._getRenderInfo(r,A,u),G=L.element,V=L.labelElement,E=null==G;if(V&&(i.renderer.removeElement(V),V=void 0),h){var B={element:G};R=this._columnAsPieSlice(B,e.rect,h,O),G=B.element,p=this._getColors(r,A,void 0,"radialGradient",R.outerRadius)}else if(N[g].funnel){var H=this._getTrapezoidPath(Object.assign({},O),e.vertical,I);E?G=this.renderer.path(H,{}):this.renderer.attr(G,{d:H})}else E?G=this.renderer.rect(O.x,O.y,e.vertical?O.width:0,e.vertical?0:O.height):!0===e.vertical?this.renderer.attr(G,{x:O.x,y:O.y,height:P}):this.renderer.attr(G,{x:O.x,y:O.y,width:P});if(P<1&&(1!==t||h)?this.renderer.attr(G,{display:"none"}):this.renderer.attr(G,{display:"block"}),E&&this.renderer.attr(G,{fill:p.fillColor,"fill-opacity":T.opacity,"stroke-opacity":T.opacity,stroke:p.lineColor,"stroke-width":T.stroke,"stroke-dasharray":T.dashStyle}),V&&this.renderer.removeElement(V),!F||0===P&&t<1)L={element:G,labelElement:V},i._setRenderInfo(r,A,u,L);else{if(l&&!1!==this._get([w.showWaterfallLines,s.showWaterfallLines])){if(!o||o&&g===d){var z=o?-1:g;if(1===t&&!isNaN(a.offsets[g][u].from)&&!isNaN(a.offsets[g][u].to)){var W=x[z];if(null!=W){var j={x:W.x,y:this.renderer._ptrnd(W.y)},X={x:c,y:j.y},U=s.columnsTopWidthPercent/100;(isNaN(U)||U>1||U<0)&&(U=1);var Y=s.columnsBottomWidthPercent/100;(isNaN(Y)||Y>1||Y<0)&&(Y=1);var q=e.vertical?O.width:O.height;if(j.x=j.x-q/2+q/2*U,M){let e=q*U/2;X.x=X.x+q/2-(n.flip?-e:e)}else{let e=q*Y/2;X.x=X.x+q/2-(n.flip?-e:e)}e.vertical||(this._swapXY([j]),this._swapXY([X])),this.renderer.line(j.x,j.y,X.x,X.y,{stroke:W.color,"stroke-width":T.stroke,"stroke-opacity":T.opacity,"fill-opacity":T.opacity,"stroke-dasharray":T.dashStyle})}}}1===t&&0!==P&&(x[o?-1:g]={y:C,x:e.vertical?O.x+O.width:O.y+O.height,color:p.lineColor})}if(h){let e=this._showLabel(r,A,u,O,void 0,void 0,!0);var Z=R.outerRadius+10;const t=this._adjustTextBoxPosition(h.x,h.y,e,Z,(R.fromAngle+R.toAngle)/2,!0,!1,!1);V=this._showLabel(r,A,u,{x:t.x,y:t.y},void 0,void 0,!1,!1,!1)}else V=this._showLabel(r,A,u,O,void 0,void 0,!1,!1,I);L={element:G,labelElement:V},i._setRenderInfo(r,A,u,L),1===t&&this._installHandlers(G,"column",r,A,u)}}}}}}_getTrapezoidPath(e,t,i){let r="",s=e.fromWidthPercent/100,a=e.toWidthPercent/100;if(!t){let t=e.width;e.width=e.height,e.height=t,t=e.x,e.x=e.y,e.y=t}let l=e.x+e.width/2,n=[{x:l-e.width*(i?a:s)/2,y:e.y+e.height},{x:l-e.width*(i?s:a)/2,y:e.y},{x:l+e.width*(i?s:a)/2,y:e.y},{x:l+e.width*(i?a:s)/2,y:e.y+e.height}];t||this._swapXY(n),r+="M "+this.renderer._ptrnd(n[0].x)+","+this.renderer._ptrnd(n[0].y);for(let e=1;e<n.length;e++)r+=" L "+this.renderer._ptrnd(n[e].x)+","+this.renderer._ptrnd(n[e].y);return r+=" Z",r}_swapXY(e){for(let t=0;t<e.length;t++){let i=e[t].x;e[t].x=e[t].y,e[t].y=i}}_renderCandleStickSeries(e,t,i){let r=this,s=r.seriesGroups[e];if(!s.series||0===s.series.length)return;let a="horizontal"===s.orientation,l=t;a&&(l={x:t.y,y:t.x,width:t.height,height:t.width});let n,o=r._calcGroupOffsets(e,l);if(!o||0===o.xoffsets.length)return;(s.polar||s.spider)&&(n=r._getPolarAxisCoords(e,l));let h=r._getGroupGradientType(e),d=[];for(let t=0;t<s.series.length;t++)d[t]=r._getColumnSerieWidthAndOffset(e,t);for(let l=0;l<s.series.length;l++){if(!this._isSerieVisible(e,l))continue;let u=r._getSerieSettings(e,l),g=s.series[l];if(g.customDraw)continue;let f="function"==typeof g.colorFunction?void 0:r._getColors(e,l,NaN,h),p={rect:t,inverse:a,groupIndex:e,seriesIndex:l,symbolType:g.symbolType,symbolSize:g.symbolSize,"fill-opacity":u.opacity,"stroke-opacity":u.opacity,"stroke-width":u.stroke,"stroke-dasharray":u.dashStyle,gradientType:h,colors:f,renderData:o,polarAxisCoords:n,columnsInfo:d,isOHLC:i,items:[],self:r},c=r._getAnimProps(e,l),m=c.enabled&&!r._isToggleRefresh&&o.xoffsets.length<5e3?c.duration:0;r._animCandleStick(p,0),r._enqueueAnimation("series",void 0,void 0,m,(function(e,t,i){r._animCandleStick(t,i,e)}),p)}}_animCandleStick(e,t){var i=["Open","Low","Close","High"],r=e.columnsInfo[e.seriesIndex].width,s=e.self.seriesGroups[e.groupIndex],a=e.renderData.xoffsets,l=-1,n=Math.abs(a.data[a.last]-a.data[a.first]);n*=t;var o=NaN,h=NaN;for(let t=0;t<e.columnsInfo.length;t++){var d=e.columnsInfo[t];(isNaN(o)||o>d.offset)&&(o=d.offset),(isNaN(h)||h<d.offset+d.width)&&(h=d.offset+d.width)}var u=Math.abs(h-o),g=!1!==s.skipOverlappingPoints;for(let o=a.first;o<=a.last;o++){var f=a.data[o];if(!(isNaN(f)||-1!==l&&Math.abs(f-l)<u&&g)){if(Math.abs(a.data[o]-a.data[a.first])>n)break;l=f;var p=e.items[o]=e.items[o]||{};for(let t in i){var c=e.self._getDataValueAsNumber(o,s.series[e.seriesIndex]["dataField"+i[t]],e.groupIndex);if(isNaN(c))break;var m=e.renderData.offsets[e.seriesIndex][o][i[t]];if(isNaN(m))break;p[i[t]]=m}if(f+=e.inverse?e.rect.y:e.rect.x,e.polarAxisCoords){var y=this._toPolarCoord(e.polarAxisCoords,this._plotRect,f,m);f=y.x,m=y.y}for(var _ in f=this.renderer._ptrnd(f),i)p[_]=this.renderer._ptrnd(p[_]);var x=e.colors;if(x||(x=e.self._getColors(e.groupIndex,e.seriesIndex,o,e.gradientType)),e.isOHLC){var v="M"+f+","+p.Low+" L"+f+","+p.High+" M"+(f-r/2)+","+p.Open+" L"+f+","+p.Open+" M"+(f+r/2)+","+p.Close+" L"+f+","+p.Close;e.inverse&&(v="M"+p.Low+","+f+" L"+p.High+","+f+" M"+p.Open+","+(f-r/2)+" L"+p.Open+","+f+" M"+p.Close+","+f+" L"+p.Close+","+(f+r/2));let i=p.lineElement;i||(i=this.renderer.path(v,{}),this.renderer.attr(i,{fill:x.fillColor,"fill-opacity":e["fill-opacity"],"stroke-opacity":e["fill-opacity"],stroke:x.lineColor,"stroke-width":e["stroke-width"],"stroke-dasharray":e["stroke-dasharray"]}),p.lineElement=i),1===t&&this._installHandlers(i,"column",e.groupIndex,e.seriesIndex,o)}else{var b=p.lineElement;b||(b=e.inverse?this.renderer.line(p.Low,f,p.High,f):this.renderer.line(f,p.Low,f,p.High),this.renderer.attr(b,{fill:x.fillColor,"fill-opacity":e["fill-opacity"],"stroke-opacity":e["fill-opacity"],stroke:x.lineColor,"stroke-width":e["stroke-width"],"stroke-dasharray":e["stroke-dasharray"]}),p.lineElement=b);var N=p.stickElement;if(f-=r/2,!N){var M=x.fillColor;p.Close<=p.Open&&x.fillColorAlt&&(M=x.fillColorAlt),N=e.inverse?this.renderer.rect(Math.min(p.Open,p.Close),f,Math.abs(p.Close-p.Open),r):this.renderer.rect(f,Math.min(p.Open,p.Close),r,Math.abs(p.Close-p.Open)),this.renderer.attr(N,{fill:M,"fill-opacity":e["fill-opacity"],"stroke-opacity":e["fill-opacity"],stroke:x.lineColor,"stroke-width":e["stroke-width"],"stroke-dasharray":e["stroke-dasharray"]}),p.stickElement=N}1===t&&this._installHandlers(N,"column",e.groupIndex,e.seriesIndex,o)}}}}_renderScatterSeries(e,t,i){var r=this.seriesGroups[e];if(r.series&&0!==r.series.length){var s=-1!==r.type.indexOf("bubble"),a="horizontal"===r.orientation,l=t;a&&(l={x:t.y,y:t.x,width:t.height,height:t.width});var n=this._calcGroupOffsets(e,l);if(n&&0!==n.xoffsets.length){var o,h=l.width;(r.polar||r.spider)&&(h=2*(o=this._getPolarAxisCoords(e,l)).r);var d=this._getGroupGradientType(e);i||(i="to");for(let V=0;V<r.series.length;V++){var u=this._getSerieSettings(e,V),g=r.series[V];if(!g.customDraw){var f=g.dataField,p="function"==typeof g.colorFunction,c=this._getColors(e,V,NaN,d),m=NaN,y=NaN;if(s)for(let t=n.xoffsets.first;t<=n.xoffsets.last;t++){var _=this._getDataValueAsNumber(t,g.radiusDataField||g.sizeDataField,e);"number"!=typeof _&&this.error(this.localize("invalidRadiusDataField",{index:t})),isNaN(_)||((isNaN(m)||_<m)&&(m=_),(isNaN(y)||_>y)&&(y=_))}var x=g.minRadius||g.minSymbolSize;isNaN(x)&&(x=h/50);var v=g.maxRadius||g.maxSymbolSize;isNaN(v)&&(v=h/25),x>v&&(v=x);var b=g.radius;b=isNaN(b)&&!isNaN(g.symbolSize)?"circle"===g.symbolType?g.symbolSize/2:g.symbolSize:5;var N=this._getAnimProps(e,V),M=N.enabled&&!this._isToggleRefresh&&n.xoffsets.length<5e3?N.duration:0,A={groupIndex:e,seriesIndex:V,symbolType:g.symbolType,symbolSize:g.symbolSize,"fill-opacity":u.opacity,"stroke-opacity":u.opacity,"stroke-width":u.stroke,"stroke-width-symbol":u.strokeSymbol,"stroke-dasharray":u.dashStyle,items:[],polarAxisCoords:o},w=void 0;for(let r=n.xoffsets.first;r<=n.xoffsets.last;r++)if("number"==typeof this._getDataValueAsNumber(r,f,e)){var S=n.xoffsets.data[r],C=n.xoffsets.xvalues[r],k=n.offsets[V][r][i];if(!(k<l.y||k>l.y+l.height||isNaN(S)||isNaN(k))){if(a){var D=S;S=k,k=D+t.y}else S+=t.x;if(!(!p&&w&&this.enableSampling&&this.renderer._ptdist(w.x,w.y,S,k)<1)){w={x:S,y:k};var T=b;if(s){var F=this._getDataValueAsNumber(r,g.radiusDataField||g.sizeDataField,e);if("number"!=typeof F)continue;T=x+(v-x)*(F-m)/Math.max(1,y-m),isNaN(T)&&(T=x)}n.offsets[V][r].radius=T;var O=NaN,I=NaN,P=0,R=this._elementRenderInfo;if(null!=C&&R&&R.length>e&&R[e].series.length>V){var L=R[e].series[V][C];if(L&&!isNaN(L.to)){if(O=L.to,I=L.xoffset,P=b,a){let e=I;I=O,O=e+t.y}else I+=t.x;s&&(P=x+(v-x)*(L.valueRadius-m)/Math.max(1,y-m),isNaN(P)&&(P=x))}}p&&(c=this._getColors(e,V,r,d)),A.items.push({from:P,to:T,itemIndex:r,fill:c.fillColor,stroke:c.lineColor,x:S,y:k,xFrom:I,yFrom:O})}}}this._animR(A,0);var G=this;this._enqueueAnimation("series",void 0,void 0,M,(function(e,t,i){G._animR(t,i,e)}),A)}}}}}_animR(e,t){let i=e.items,r=e.symbolType||"circle",s=e.symbolSize;for(let a=0;a<i.length;a++){let l=i[a],n=l.x,o=l.y,h=Math.round((l.to-l.from)*t+l.from);if(isNaN(l.yFrom)||(o=l.yFrom+(o-l.yFrom)*t),isNaN(l.xFrom)||(n=l.xFrom+(n-l.xFrom)*t),e.polarAxisCoords){let t=this._toPolarCoord(e.polarAxisCoords,this._plotRect,n,o);n=t.x,o=t.y}n=this.renderer._ptrnd(n),o=this.renderer._ptrnd(o),h=this.renderer._ptrnd(h);let d=this._getRenderInfo(e.groupIndex,e.seriesIndex,i[a].itemIndex),u=d.element,g=d.labelElement;"circle"===r?(u||(u=this.renderer.circle(n,o,h),this.renderer.attr(u,{fill:l.fill,"fill-opacity":e["fill-opacity"],"stroke-opacity":e["fill-opacity"],stroke:l.stroke,"stroke-width":e["stroke-width"],"stroke-dasharray":e["stroke-dasharray"]})),this.renderer.attr(u,{r:h,cy:o,cx:n})):(u&&this.renderer.removeElement(u),u=this._drawSymbol(r,n,o,l.fill,e["fill-opacity"],l.stroke,e["stroke-opacity"]||e["fill-opacity"],e["stroke-width-symbol"],e["stroke-dasharray"],s||h)),g&&this.renderer.removeElement(g),g=this._showLabel(e.groupIndex,e.seriesIndex,l.itemIndex,{x:n-h,y:o-h,width:2*h,height:2*h}),t>=1&&this._installHandlers(u,"circle",e.groupIndex,e.seriesIndex,l.itemIndex),this._setRenderInfo(e.groupIndex,e.seriesIndex,i[a].itemIndex,{element:u,labelElement:g})}}_showMultiSeriesToolTip(e){let t=this,i="<div style='text-align:left'>",r="";for(let s=0;s<t.seriesGroups.length;s++){if(t._isPieGroup(s))continue;let a=t._getXAxis(s),l=t._getValueAxis(s),n=t.seriesGroups[s],o=this._getAxisSettings(a),h=this._getFormatSettings(o,"toolTipFormatSettings"),d=o.toolTipFormatFunction,u=t._getDataValue(e,a.dataField,s);void 0!==a.dataField&&null!==a.dataField&&""!==a.dataField||(u=e),"date"===a.type&&(u=t._castAsDate(u,(h?h.dateFormat:void 0)||a.dateFormat)),d||h||"date"!==a.type||(d=this._getDefaultDTFormatFn(a.baseUnit||"day"));let g=a.displayText||a.dataField||"";""!==g&&(g+=": ");let f=g+t._formatValue(u,h,d,s,void 0,e);r!==f&&(""!==r&&(i+="<br />"),i+=f+"<br /><br />",r=f);for(let r=0;r<n.series.length;r++){let a=n.series[r];if(!1===n.showToolTips||!1===a.showToolTips)continue;if(!t._isSerieVisible(s,r))continue;let o=t._get([t._getFormatSettings(a,"toolTipFormatSettings"),t._getFormatSettings(n,"toolTipFormatSettings"),t._getFormatSettings(l,"toolTipFormatSettings"),t._getFormatSettings(t,"toolTipFormatSettings")]),h=t._get([a.toolTipFormatFunction,n.toolTipFormatFunction,l.toolTipFormatFunction,t.toolTipFormatFunction]),d=t._getFormattedValue(s,r,e,o,h);i+='<span style="color:'+t._getColors(s,r,e).lineColor+';">'+d+"</span><br />\n"}}let s=this._get([t.toolTipClass,"smart-chart-tooltip-text"]),a=this._get([t.toolTipBackground,t._getThemeColor("background")]),l=this._get([t.toolTipLineColor,t._getThemeColor("line")]),n=this._get([t.toolTipOpacity,1]);i+="</div>";let o=this.getItemCoord(t._ttEl.gidx,t._ttEl.sidx,t._ttEl.iidx);o.x+=window.pageXOffset,o.y+=window.pageYOffset,t._createTooltip(o,t.seriesGroups[t._ttEl.gidx],i,{css:s,fill:a,stroke:l,fillOpacity:n,symbolSize:3})}_showToolTip(e,t,i,r,s){let a=this,l=a._getXAxis(i),n=a._getValueAxis(i);if(a._ttEl&&i===a._ttEl.gidx&&r===a._ttEl.sidx&&s===a._ttEl.iidx)return;let o=a.seriesGroups[i],h=o.series[r],d=a.enableCrosshairs;a._pointMarker?(e=parseInt(a._pointMarker.x+5),t=parseInt(a._pointMarker.y-5)):d=!1;let u=d&&!1===a.showToolTips;if(e=this.renderer._ptrnd(e),t=this.renderer._ptrnd(t),!1===o.showToolTips||!1===h.showToolTips)return;a._ttEl||(a._ttEl={}),a._ttEl.sidx=r,a._ttEl.gidx=i,a._ttEl.iidx=s;let g=0;for(let e=0;e<a.seriesGroups.length;e++)for(let t=0;t<a.seriesGroups[e].series.length;t++)g++;if(d){let e=this.renderer._ptrnd(a._pointMarker.x),t=this.renderer._ptrnd(a._pointMarker.y),r=a.crosshairsColor||a._getThemeColor("line");if(o.polar||o.spider){let s=this._getPolarAxisCoords(i,this._plotRect);if(this.renderer._ptdist(e,t,s.x,s.y)>s.r)return;let l=Math.atan2(t-s.y,e-s.x),n=Math.cos(l)*s.r+s.x,o=Math.sin(l)*s.r+s.y;a._ttEl.vLine?a.renderer.attr(a._ttEl.vLine,{x1:s.x,y1:s.y,x2:n,y2:o}):a._ttEl.vLine=a.renderer.line(s.x,s.y,n,o,{stroke:r,"stroke-width":a.crosshairsLineWidth||1,"stroke-dasharray":a.crosshairsDashStyle||""})}else a._ttEl.vLine&&a._ttEl.hLine?(a.renderer.attr(a._ttEl.vLine,{x1:e,x2:e}),a.renderer.attr(a._ttEl.hLine,{y1:t,y2:t})):(a._ttEl.vLine=a.renderer.line(e,a._plotRect.y,e,a._plotRect.y+a._plotRect.height,{stroke:r,"stroke-width":a.crosshairsLineWidth||1,"stroke-dasharray":a.crosshairsDashStyle||""}),a._ttEl.hLine=a.renderer.line(a._plotRect.x,t,a._plotRect.x+a._plotRect.width,t,{stroke:r,"stroke-width":a.crosshairsLineWidth||1,"stroke-dasharray":a.crosshairsDashStyle||""}))}if(a.showToolTipsOnAllSeries&&!a._isPieGroup(i)&&g>1)return void a._showMultiSeriesToolTip(s);let f=a._get([a._getFormatSettings(h,"toolTipFormatSettings"),a._getFormatSettings(o,"toolTipFormatSettings"),a._getFormatSettings(n,"toolTipFormatSettings"),a._getFormatSettings(a,"toolTipFormatSettings")]),p=a._get([h.toolTipFormatFunction,o.toolTipFormatFunction,n.toolTipFormatFunction,a.toolTipFormatFunction]),c=a._getColors(i,r,s),m=a._getDataValue(s,l.dataField,i);void 0!==l.dataField&&null!==l.dataField&&""!==l.dataField||(m=s),"date"===l.type&&(m=a._castAsDate(m,(f?f.dateFormat:void 0)||l.dateFormat));let y="";if("function"==typeof p){let e={},t=0;for(let r in h)0===r.indexOf("dataField")&&(e[r.substring(9,r.length).toLowerCase()]=a._getDataValue(s,h[r],i),t++);0===t?e=a._getDataValue(s,void 0,i):1===t&&(e=e[""]),y=p(e,s,h,o,m,l)}else{y=a._getFormattedValue(i,r,s,f,p);let e=this._getAxisSettings(l),t=a._getFormatSettings(e,"toolTipFormatSettings"),n=e.toolTipFormatFunction;n||t||"date"!==l.type||(n=this._getDefaultDTFormatFn(l.baseUnit||"day"));let o=a._formatValue(m,t,n,i,r,s);if(a._isPieGroup(i))m=a._getDataValue(s,h.displayText||h.dataField,i),o=a._formatValue(m,t,n,i,r,s),y=o+": "+y;else{let e=l.displayText||l.dataField||"";y=e.length>0?e+": "+o+"<br>"+y:o+"<br>"+y}}if(!u&&!1!==a.showToolTips){let e=this._get([h.toolTipClass,o.toolTipClass,a.toolTipClass,"smart-chart-tooltip-text"]),t=this._get([h.toolTipBackground,o.toolTipBackground,a.toolTipBackground,a._getThemeColor("background")]),l=this._get([h.toolTipLineColor,o.toolTipLineColor,a.toolTipLineColor,c.lineColor,a._getThemeColor("line")]),n=this._get([h.toolTipOpacity,o.toolTipOpacity,a.toolTipOpacity,1]),d=this.getItemCoord(i,r,s);d.y=Math.min(Math.max(d.y,this._plotRect.y),this._plotRect.y+this._plotRect.y+this._plotRect.height);let u=0;a._pointMarker&&a._pointMarker.element&&(u=h.symbolSizeSelected,isNaN(u)&&(u=h.symbolSize),(isNaN(u)||u>50||u<0)&&(u=o.symbolSize),(isNaN(u)||u>50||u<0)&&(u=8)),a._createTooltip(d,o,y,{css:e,fill:t,stroke:l,fillOpacity:n,symbolSize:u})}}_fitTooltip(e,t,i,r,s){let a={},l=2+s/2;if(t.x-i.width-7-l>e.x&&t.y+t.height/2-i.height/2>e.y&&t.y+t.height/2+i.height/2<e.y+e.height&&(a.left={arrowLocation:"right",x:t.x-i.width-7-l,y:t.y+t.height/2-i.height/2,width:i.width+7,height:i.height}),t.x+t.width+i.width+7+l<e.x+e.width&&t.y+t.height/2-i.height/2>e.y&&t.y+t.height/2+i.height/2<e.y+e.height&&(a.right={arrowLocation:"left",x:t.x+t.width+l,y:t.y+t.height/2-i.height/2,width:i.width+7,height:i.height}),t.y-i.height-l-7>e.y&&t.x+t.width/2-i.width/2>e.x&&t.x+t.width/2+i.width/2<e.x+e.width&&(a.top={arrowLocation:"bottom",x:t.x+t.width/2-i.width/2,y:t.y-i.height-l-7,width:i.width,height:i.height+7}),t.y+t.height+i.height+7+l<e.y+e.height&&t.x+t.width/2-i.width/2>e.x&&t.x+t.width/2+i.width/2<e.x+e.width&&(a.bottom={arrowLocation:"top",x:t.x+t.width/2-i.width/2,y:t.y+t.height+l,width:i.width,height:i.height+7}),t.width>t.height||(-1!==r.type.indexOf("stackedcolumn")||-1!==r.type.indexOf("stackedwaterfall"))&&"horizontal"!==r.orientation){if(a.left)return a.left;if(a.right)return a.right}else{if(a.top)return a.top;if(a.bottom)return a.bottom}for(let e in a)if(a[e])return a[e];return{arrowLocation:""}}_createTooltip(e,t,i,r){const s=this,a=t.type;let l=s._ttEl.box;if(!l){l=s._ttEl.box=document.createElement("div"),l.id=s.id+"Tooltip",l.className="smart-chart-tooltip",l.setAttribute("animation",s.animation),l.setAttribute("theme",s.theme),l.setAttribute("role","tooltip");const e=document.createElement("div"),t=document.createElement("div"),i=document.createElement("div");if(e.className="smart-chart-tooltip-arrow-outer",e.setAttribute("role","presentation"),t.className="smart-chart-tooltip-arrow-inner",t.setAttribute("role","presentation"),i.className="smart-chart-tooltip-content",i.setAttribute("role","presentation"),l.appendChild(i),l.appendChild(e),l.appendChild(t),s.getRootNode().host?s.getShadowRootOrBody().appendChild(l):document.body.appendChild(l),s.hasAttribute("aria-owns")){const e=s.getAttribute("aria-owns");s.setAttribute("aria-owns",e+" "+l.id)}else s.setAttribute("aria-owns",l.id)}if(!i||0===i.length)return void l.classList.add("smart-visibility-hidden");s.rightToLeft?l.setAttribute("right-to-left",""):l.removeAttribute("right-to-left"),l.classList.add("smart-visibility-hidden");const n=l.firstElementChild,o=l.children[1],h=l.children[2];h.style.opacity=o.style.opacity=r.fillOpacity,n.style.backgroundColor=r.fill,n.style.borderColor=r.stroke,n.style.opacity=r.fillOpacity;const d='<span class="'+r.css+'" role="presentation">'+i+"</span>";n.innerHTML=d;const u=s._measureHtml(d),g=s._plotRect;if(u.width>g.width||u.height>g.height)return;let f={width:u.width,height:u.height},p="",c=s._isColumnType(a),m=Math.max(e.x,g.x),y=Math.max(e.y,g.y);if(-1!==a.indexOf("pie")||-1!==a.indexOf("donut")){let t=(e.fromAngle+e.toAngle)/2;t*=Math.PI/180;let i=!isNaN(e.innerRadius)&&e.innerRadius>0?(e.innerRadius+e.outerRadius)/2:.75*e.outerRadius;m=e.x=e.center.x+Math.cos(t)*i,y=e.y=e.center.y-Math.sin(t)*i,e.width=e.height=1}else c&&(t.polar||t.spider)&&(e.width=e.height=1);let _=this._fitTooltip(this._plotRect,e,f,t,r.symbolSize);""!==_.arrowLocation&&(p=_.arrowLocation,m=_.x,y=_.y,f.width=_.width,f.height=_.height),"top"===p||"bottom"===p?(f.height+=7,m-=3.5,"bottom"===p&&(y-=7)):"left"!==p&&"right"!==p||(f.width+=7,y-=3.5,"right"===p&&(m-=7)),m+f.width>g.x+g.width&&(p="",m=g.x+g.width-f.width),y+f.height>g.y+g.height&&(p="",y=g.y+g.height-f.height);let x={x:0,y:0},v={x:0,y:0};n.style.width=u.width+"px",n.style.height=u.height+"px",o.style["margin-top"]=o.style["margin-left"]=0,h.style["margin-top"]=h.style["margin-left"]=0,n.style["margin-top"]=n.style["margin-left"]=0;let b="7px solid transparent";switch(p){case"left":x={x:0,y:(u.height-7)/2},v={x:7,y:0},n.style["margin-left"]="7px",o.style["margin-left"]="0px",o.style["margin-top"]=x.y+"px",o.style["border-left"]="",o.style["border-right"]="7px solid "+r.stroke,o.style["border-top"]=b,o.style["border-bottom"]=b,h.style["margin-left"]="1px",h.style["margin-top"]=x.y+"px",h.style["border-left"]="",h.style["border-right"]="7px solid "+r.fill,h.style["border-top"]=b,h.style["border-bottom"]=b;break;case"right":x={x:f.width-7,y:(u.height-7)/2},v={x:0,y:0},o.style["margin-left"]=x.x+"px",o.style["margin-top"]=x.y+"px",o.style["border-left"]="7px solid "+r.stroke,o.style["border-right"]="",o.style["border-top"]=b,o.style["border-bottom"]=b,h.style["margin-left"]=x.x-1+"px",h.style["margin-top"]=x.y+"px",h.style["border-left"]="7px solid "+r.fill,h.style["border-right"]="",h.style["border-top"]=b,h.style["border-bottom"]=b;break;case"top":x={x:f.width/2-3.5,y:0},v={x:0,y:7},n.style["margin-top"]=v.y+"px",o.style["margin-left"]=x.x+"px",o.style["border-top"]="",o.style["border-bottom"]="7px solid "+r.stroke,o.style["border-left"]=b,o.style["border-right"]=b,h.style["margin-left"]=x.x+"px",h.style["margin-top"]="1px",h.style["border-top"]="",h.style["border-bottom"]="7px solid "+r.fill,h.style["border-left"]=b,h.style["border-right"]=b;break;case"bottom":x={x:f.width/2-3.5,y:f.height-7},v={x:0,y:0},o.style["margin-left"]=x.x+"px",o.style["margin-top"]=x.y+"px",o.style["border-top"]="7px solid "+r.stroke,o.style["border-bottom"]="",o.style["border-left"]=b,o.style["border-right"]=b,h.style["margin-left"]=x.x+"px",h.style["margin-top"]=x.y-1+"px",h.style["border-top"]="7px solid "+r.fill,h.style["border-bottom"]="",h.style["border-left"]=b,h.style["border-right"]=b}""===p?(o.classList.add("smart-hidden"),h.classList.add("smart-hidden")):(o.classList.remove("smart-hidden"),h.classList.remove("smart-hidden")),l.style.width=f.width+"px",l.style.height=f.height+"px";const N=s.getBoundingClientRect();l.style.left=m+N.left+window.pageXOffset+"px",l.style.top=y+N.top+window.pageYOffset+"px",l.classList.remove("smart-visibility-hidden")}_measureHtml(e){const t=this;let i=t._measureDiv;i||(t._measureDiv=i=document.createElement("div"),i.className="smart-chart-tooltip",i.style.position="absolute",i.style.visibility="hidden",i.style.left=0,i.style.top=0,(t.shadowRoot||t).appendChild(i)),i.innerHTML=e;const r={width:i.offsetWidth+2,height:i.offsetHeight+2};return Smart.Utilities.Core.Browser.Firefox&&(r.height+=3),r}_hideToolTip(){this._ttEl&&(this._ttEl.box&&this._ttEl.box.classList.add("smart-visibility-hidden"),this._hideCrosshairs(),this._ttEl.gidx=void 0)}_hideCrosshairs(){this._ttEl&&(this._ttEl.vLine&&(this.renderer.removeElement(this._ttEl.vLine),this._ttEl.vLine=void 0),this._ttEl.hLine&&(this.renderer.removeElement(this._ttEl.hLine),this._ttEl.hLine=void 0))}_get(e){return this._draw.getByPriority(e)}_getAxisSettings(e){if(!e)return{};let t=this,i=e.gridLines||{},r={visible:t._get([i.visible,!0]),color:t._get([i.color,t._getThemeColor("line")]),unitInterval:i.unitInterval,step:i.step,dashStyle:i.dashStyle,width:t._get([i.lineWidth,1]),offsets:[],alternatingBackgroundColor:e.alternatingBackgroundColor,alternatingBackgroundColor2:e.alternatingBackgroundColor2,alternatingBackgroundOpacity:e.alternatingBackgroundOpacity},s=e.tickMarks||{},a={visible:t._get([s.visible,e.showTickMarks,!0]),color:t._get([s.color,e.tickMarksColor,t._getThemeColor("line")]),unitInterval:t._get([s.unitInterval,s.interval,e.tickMarksInterval]),step:t._get([s.step,e.tickMarksStep]),dashStyle:t._get([s.dashStyle,e.tickMarksDashStyle]),width:t._get([s.lineWidth,1]),size:t._get([s.size,4]),offsets:[]},l=e.title||{},n={visible:t._get([l.visible,!0]),text:t._get([e.description,l.text]),style:t._get([e.descriptionClass,l.class,"smart-chart-axis-description"]),halign:t._get([e.horizontalDescriptionAlignment,l.horizontalAlignment,"center"]),valign:t._get([e.verticalDescriptionAlignment,l.verticalAlignment,"center"]),angle:0,rotationPoint:t._get([l.rotationPoint,"centercenter"]),offset:t._get([l.offset,{x:0,y:0}])},o=e.line||{},h={visible:t._get([o.visible,!0]),color:t._get([o.color,r.color,t._getThemeColor("line")]),dashStyle:t._get([o.dashStyle,r.dashStyle,""]),width:t._get([o.lineWidth,1]),angle:t._get([o.angle,NaN])},d=e.padding||{};d={left:d.left||0,right:d.right||0,top:d.top||0,bottom:d.bottom||0};let u=this._getAxisLabelsSettings(e);return{visible:this._get([e.visible,!0]),customDraw:this._get([e.customDraw,!1]),gridLines:r,tickMarks:a,line:h,title:n,labels:u,padding:d,toolTipFormatFunction:this._get([e.toolTipFormatFunction,e.formatFunction,u.formatFunction]),toolTipFormatSettings:this._get([t._getFormatSettings(e,"toolTipFormatSettings"),t._getFormatSettings(e),t._getFormatSettings(u)])}}_getAxisLabelsSettings(e){let t=this,i=e.labels||{};return{visible:t._get([e.showLabels,i.visible,!0]),unitInterval:t._get([i.unitInterval,i.interval,e.labelsInterval]),step:t._get([i.step,e.labelsStep]),angle:t._get([e.textRotationAngle,i.angle,0]),style:t._get([e.class,i.class,"smart-chart-axis-text"]),halign:t._get([e.horizontalTextAlignment,i.horizontalAlignment,"center"]),valign:t._get([e.verticalTextAlignment,i.verticalAlignment,"center"]),textRotationPoint:t._get([e.textRotationPoint,i.rotationPoint,"auto"]),textOffset:t._get([e.textOffset,i.offset,{x:0,y:0}]),autoRotate:t._get([e.labelsAutoRotate,i.autoRotate,!1]),formatSettings:t._get([t._getFormatSettings(e),t._getFormatSettings(i),void 0]),formatFunction:t._get([e.formatFunction,i.formatFunction,void 0])}}_getLabelsSettings(e,t,i,r){let s=this.seriesGroups[e],a=s.series[t],l=isNaN(i)?void 0:this._getDataValue(i,a.dataField,e),n=r||["Visible","Offset","Angle","HorizontalAlignment","VerticalAlignment","Class","BackgroundColor","BorderColor","BorderOpacity","Padding","Opacity","BackgroundOpacity","LinesAngles","LinesEnabled","AutoRotate","Radius"],o={};for(let e=0;e<n.length;e++){let t,r=n[e],h="labels"+r,d="label"+r,u=r.substring(0,1).toLowerCase()+r.substring(1);s.labels&&"object"==typeof s.labels&&(t=s.labels[u]),a.labels&&"object"==typeof a.labels&&void 0!==a.labels[u]&&null!==a.labels[u]&&(t=a.labels[u]),t=this._get([a[h],a[d],t,s[h],s[d]]),o[u]="function"==typeof t?t(l,i,a,s):t}o.class=o.class||"smart-chart-label-text",o.visible=this._get([o.visible,a.showLabels,s.showLabels,void 0!==a.labels&&null!==a.labels||void 0,void 0!==s.labels&&null!==s.labels||void 0]);let h=o.padding||1;return o.padding={left:this._get([h.left,isNaN(h)?1:h]),right:this._get([h.right,isNaN(h)?1:h]),top:this._get([h.top,isNaN(h)?1:h]),bottom:this._get([h.bottom,isNaN(h)?1:h])},o}_showLabel(e,t,i,r,s,a,l,n,o,h,d){let u={width:0,height:0};if(isNaN(i))return;let g=this._getLabelsSettings(e,t,i);if(!g.visible)return l?u:void 0;if(r.width<0||r.height<0)return l?u:void 0;let f=g.angle;isNaN(h)||(f=h);let p=g.offset||{},c={x:p.x,y:p.y};isNaN(c.x)&&(c.x=0),isNaN(c.y)&&(c.y=0),s=s||g.horizontalAlignment||"center",a=a||g.verticalAlignment||"center";let m=this._getFormattedValue(e,t,i,void 0,void 0,!0),y=r.width,_=r.height;if(!0===n&&"center"!==s&&(s="right"===s?"left":"right"),!0===o&&"center"!==a&&"middle"!==a&&(a="top"===a?"bottom":"top",c.y*=-1),u=this.renderer.measureText(m,f,{class:g.class}),l)return u;let x=0,v=0;y>0&&(""===s||"center"===s?x+=(y-u.width)/2:"right"===s&&(x+=y-u.width)),_>0&&(""===a||"center"===a?v+=(_-u.height)/2:"bottom"===a&&(v+=_-u.height)),x+=r.x+c.x,v+=r.y+c.y;let b=this._plotRect;x<=b.x&&(x=b.x+2),v<=b.y&&(v=b.y+2);let N,M=Math.max(u.width,1),A=Math.max(u.height,1);v+A>=b.y+b.height&&(v=b.y+b.height-A-2),x+M>=b.x+b.width&&(x=b.x+b.width-M-2);let w=g.backgroundColor,S=g.borderColor,C=g.padding;(w||S)&&(N=this.renderer.beginGroup(),this.renderer.rect(x-C.left,v-C.top,u.width+C.left+C.right,u.height+C.bottom+C.bottom,{fill:w||"transparent","fill-opacity":g.backgroundOpacity||1,stroke:S||"transparent","stroke-opacity":g.borderOpacity,"stroke-width":1}));let k=this.renderer.text(m,x,v,u.width,u.height,f,{class:g.class,opacity:g.opacity||1},!1,"center","center",void 0,arguments[11]);return d&&(d.x=x-C.left,d.y=v-C.top,d.width=u.width+C.left+C.right,d.height=u.height+C.bottom+C.bottom),N&&this.renderer.endGroup(),N||k}_getAnimProps(e,t){let i=this.seriesGroups[e],r=isNaN(t)?void 0:i.series[t],s=this.hasAnimation;i.animation&&(s="none"!==i.animation),r&&r.animation&&(s="none"!==r.animation);let a=this.animationDuration;isNaN(a)&&(a=1e3);let l=i.animationDuration;if(isNaN(l)||(a=l),r){let e=r.animationDuration;isNaN(e)||(a=e)}return a>5e3&&(a=1e3),{enabled:s,duration:a}}_isColorTransition(e,t,i,r){if(r-1<i.xoffsets.first)return!1;let s=this._getColors(e,t,r,this._getGroupGradientType(e)),a=this._getColors(e,t,r-1,this._getGroupGradientType(e));return s.fillColor!==a.fillColor}_renderLineSeries(e,t){var i=this.seriesGroups[e];if(i.series&&0!==i.series.length){var r=-1!==i.type.indexOf("area"),s=-1!==i.type.indexOf("stacked"),a=s&&-1!==i.type.indexOf("100"),l=-1!==i.type.indexOf("spline"),n=-1!==i.type.indexOf("step"),o=-1!==i.type.indexOf("range"),h=!0===i.polar||!0===i.spider;if(h&&(n=!1),!n||!l){var d="horizontal"===i.orientation,u=!0===this._getXAxis(e).flip,g=t;d&&(g={x:t.y,y:t.x,width:t.height,height:t.width});var f=this._calcGroupOffsets(e,g);if(f&&0!==f.xoffsets.length){this._linesRenderInfo||(this._linesRenderInfo={}),this._linesRenderInfo[e]={};for(let t=i.series.length-1;t>=0;t--){var p=this._getSerieSettings(e,t),c={groupIndex:e,rect:g,serieIndex:t,swapXY:d,isArea:r,isSpline:l,isRange:o,isPolar:h,settings:p,segments:[],pointsLength:0};if(this._isSerieVisible(e,t)){var m=i.series[t];if(!m.customDraw){var y,_="function"==typeof m.colorFunction,x=f.xoffsets.first,v=x,b=this._getColors(e,t,NaN,this._getGroupGradientType(e));do{var N=[],M=[],A=[],w=0,S=0,C=NaN,k=NaN,D=NaN;if(!(f.xoffsets.length<1)){var T=this._getAnimProps(e,t),F=T.enabled&&!this._isToggleRefresh&&f.xoffsets.length<1e4&&T.duration,O=x;y=!1;var I=void 0;for(let s=x;s<=f.xoffsets.last;s++){x=s;var P=f.xoffsets.data[s],R=f.xoffsets.xvalues[s];if(!(isNaN(P)||(w=P=Math.max(P,1),S=f.offsets[t][s].to,!_&&I&&this.enableSampling&&this.renderer._ptdist(I.x,I.y,w,S)<1))){I={x:w,y:S};var L=f.offsets[t][s].from;if(isNaN(S)||isNaN(L)){if("connect"===m.emptyPointsDisplay)continue;if("zero"!==m.emptyPointsDisplay){y=!0;break}isNaN(S)&&(S=f.baseOffset),isNaN(L)&&(L=f.baseOffset)}if(_&&this._isColorTransition(e,t,f,x)&&N.length>1){x--;break}var G=this._elementRenderInfo;if(G&&G.length>e&&G[e].series.length>t){var V=G[e].series[t][R];let i=this.renderer._ptrnd(V?V.to:void 0),r=this.renderer._ptrnd(g.x+(V?V.xoffset:void 0));A.push(d?{y:r,x:i,index:s}:{x:r,y:i,index:s})}v=s,p.stroke<2&&(S-g.y<=1&&(S=g.y+1),L-g.y<=1&&(L=g.y+1),g.y+g.height-S<=1&&(S=g.y+g.height-1),g.y+g.height-L<=1&&(L=g.y+g.height-1)),!r&&a&&(S<=g.y&&(S=g.y+1),S>=g.y+g.height&&(S=g.y+g.height-1),L<=g.y&&(L=g.y+1),L>=g.y+g.height&&(L=g.y+g.height-1)),w=(P=Math.max(P,1))+g.x,!0===i.skipOverlappingPoints&&!isNaN(C)&&Math.abs(C-w)<=1||(!n||isNaN(C)||isNaN(k)||k!==S&&N.push(d?{y:w,x:this.renderer._ptrnd(k)}:{x:w,y:this.renderer._ptrnd(k)}),N.push(d?{y:w,x:this.renderer._ptrnd(S),index:s}:{x:w,y:this.renderer._ptrnd(S),index:s}),M.push(d?{y:w,x:this.renderer._ptrnd(L),index:s}:{x:w,y:this.renderer._ptrnd(L),index:s}),C=w,k=S,isNaN(D)&&(D=S))}}if(0!==N.length){var E=N[N.length-1].index;_&&(b=this._getColors(e,t,E,this._getGroupGradientType(e)));var B=g.x+f.xoffsets.data[O],H=g.x+f.xoffsets.data[v];if(r&&!0===i.alignEndPointsWithIntervals&&(B>g.x&&(B=g.x),H<g.x+g.width&&(H=g.x+g.width),u)){var z=B;B=H,H=z}H=this.renderer._ptrnd(H),B=this.renderer._ptrnd(B);var W=f.baseOffset;D=this.renderer._ptrnd(D);var j=this.renderer._ptrnd(S)||W;o&&(N=N.concat(M.reverse())),c.pointsLength+=N.length;var X={lastItemIndex:E,colorSettings:b,pointsArray:N,pointsStart:A,left:B,right:H,pyStart:D,pyEnd:j,yBase:W,labelElements:[],symbolElements:[]};c.segments.push(X)}else x++}}while(x<f.xoffsets.first+f.xoffsets.length-1||y);this._linesRenderInfo[e][t]=c}}else this._linesRenderInfo[e][t]=c}var U=this._linesRenderInfo[e],Y=[];for(let e in U)Y.push(U[e]);Y=Y.sort((function(e,t){return e.serieIndex-t.serieIndex})),r&&s&&Y.reverse();for(let e=0;e<Y.length;e++){let t=Y[e];this._animateLine(t,0===F?1:0);var q=this;this._enqueueAnimation("series",void 0,void 0,F,(function(e,t,i){q._animateLine(t,i)}),t)}}}}}_animateLine(e,t){let i=e.settings,r=e.groupIndex,s=e.serieIndex,a=this.seriesGroups[r],l=a.series[s],n=this._getSymbol(r,s),o=this._getLabelsSettings(r,s,NaN,["Visible"]).visible,h=!0;e.isPolar&&(isNaN(a.endAngle)||360===Math.round(Math.abs((isNaN(a.startAngle)?0:a.startAngle)-a.endAngle))||(h=!1)),!1===l.endPointsConnect&&(h=!1);let d=0;for(let a=0;a<e.segments.length;a++){let u=e.segments[a],g=this._calculateLine(r,e.pointsLength,d,u.pointsArray,u.pointsStart,u.yBase,t,e.isArea,e.swapXY);if(d+=u.pointsArray.length,""===g)continue;let f=g.split(" "),p=g;p=""!==p?this._buildLineCmd(g,e.isRange,u.left,u.right,u.pyStart,u.pyEnd,u.yBase,e.isArea,e.isPolar,h,e.isSpline,e.swapXY):"M 0 0";let c=u.colorSettings;if(u.pathElement?this.renderer.attr(u.pathElement,{d:p}):(u.pathElement=this.renderer.path(p,{"stroke-width":i.stroke,stroke:c.lineColor,"stroke-opacity":i.opacity,"fill-opacity":i.opacity,"stroke-dasharray":i.dashStyle,fill:e.isArea?c.fillColor:"none"}),this._installHandlers(u.pathElement,"path",r,s,u.lastItemIndex)),u.labelElements){for(let e=0;e<u.labelElements.length;e++)this.renderer.removeElement(u.labelElements[e]);u.labelElements=[]}if(u.symbolElements){for(let e=0;e<u.symbolElements.length;e++)this.renderer.removeElement(u.symbolElements[e]);u.symbolElements=[]}if(u.pointsArray.length===f.length&&("none"!==n||o)){let e=l.symbolSize,t=this._plotRect;for(let a=0;a<f.length;a++){let l=f[a].split(",");if(l={x:parseFloat(l[0]),y:parseFloat(l[1])},!(l.x<t.x||l.x>t.x+t.width||l.y<t.y||l.y>t.y+t.height)){if("none"!==n){let t=this._getColors(r,s,u.pointsArray[a].index,this._getGroupGradientType(r)),o=this._drawSymbol(n,l.x,l.y,t.fillColorSymbol,i.opacity,t.lineColorSymbol,i.opacity,i.strokeSymbol,void 0,e);u.symbolElements.push(o)}if(o&&(l=this._adjustLineLabelPosition(r,s,u.pointsArray[a].index,l),l)){let e=this._showLabel(r,s,u.pointsArray[a].index,{x:l.x,y:l.y,width:0,height:0});u.labelElements.push(e)}}}}if(1===t&&"none"!==n)for(let e=0;e<u.symbolElements.length;e++)isNaN(u.pointsArray[e].index)||this._installHandlers(u.symbolElements[e],"symbol",r,s,u.pointsArray[e].index)}}_adjustLineLabelPosition(e,t,i,r){let s=this._showLabel(e,t,i,{width:0,height:0},"","",!0);if(!s)return;let a={x:r.x-s.width/2,y:0};return a.y=r.y-1.5*s.height,a}_calculateLine(e,t,i,r,s,a,l,n,o){let h,d=this.seriesGroups[e];!0!==d.polar&&!0!==d.spider||(h=this._getPolarAxisCoords(e,this._plotRect));let u="",g=r.length;n||0!==s.length||(g=t*l-i);for(let e=0;e<g+1&&e<r.length;e++){e>0&&(u+=" ");let t=r[e].y,i=r[e].x,d=n?a:t,f=i;if(s&&s.length>e&&(d=s[e].y,f=s[e].x,(isNaN(d)||isNaN(f))&&(d=t,f=i)),g<=r.length&&e>0&&e===g&&(f=r[e-1].x,d=r[e-1].y),o?(i=this.renderer._ptrnd((i-d)*(n?l:1)+d),t=this.renderer._ptrnd(t)):(i=this.renderer._ptrnd((i-f)*l+f),t=this.renderer._ptrnd((t-d)*l+d)),h){let e=this._toPolarCoord(h,this._plotRect,i,t);i=e.x,t=e.y}u+=i+","+t}return u}_buildLineCmd(e,t,i,r,s,a,l,n,o,h,d,u){let g=e,f=u?l+","+i:i+","+l;!n||o||t||(g=f+" "+e+" "+(u?l+","+r:r+","+l)),d&&(g=this._getBezierPoints(g));let p=g.split(" ");if(0===p.length)return"";if(1===p.length){let e=p[0].split(",");return"M "+p[0]+" L"+(parseFloat(e[0])+1)+","+(parseFloat(e[1])+1)}let c=p[0].replace("M","");return n&&!o?g=t?"M "+c+" L "+c+(d?"":" L "+c+" ")+g:"M "+f+" L "+c+" "+g:d||(g="M "+c+" L "+c+" "+g),(o&&h||t)&&(g+=" Z"),g}_getSerieSettings(e,t){let i=this.seriesGroups[e],r=-1!==i.type.indexOf("area"),s=-1!==i.type.indexOf("line"),a=i.series[t],l=a.dashStyle||i.dashStyle||"",n=a.opacity||i.opacity;(isNaN(n)||n<0||n>1)&&(n=1);let o=a.lineWidth;isNaN(o)&&"auto"!==o&&(o=i.lineWidth),("auto"===o||isNaN(o)||o<0||o>15)&&(o=r?2:s?3:1);let h=a.lineWidthSymbol;return isNaN(h)&&(h=1),{stroke:o,strokeSymbol:h,opacity:n,dashStyle:l}}_getColors(e,t,i,r,s){let a=this.seriesGroups[e],l=a.series[t],n=this._get([l.useGradientColors,a.useGradientColors,!1]),o=this._getSeriesColors(e,t,i),h=[[0,1.4],[100,1]],d=[[0,1],[25,1.1],[50,1.4],[100,1]],u=[[0,1.3],[90,1.2],[100,1]],g=NaN;if(isNaN(s)||(g=2===s?h:d),n){let s={};for(let e in o)s[e]=o[e];if(o=s,"verticalLinearGradient"===r||"horizontalLinearGradient"===r){let e="verticalLinearGradient"===r?g||h:g||d,t=["fillColor","fillColorSelected","fillColorAlt","fillColorAltSelected"];for(let i in t){let s=o[t[i]];s&&(o[t[i]]=this.renderer._toLinearGradient(s,"verticalLinearGradient"===r,e))}}else if("radialGradient"===r){let r,s=h;("pie"===a.type||"donut"===a.type||a.polar)&&null!=i&&this._renderData[e]&&this._renderData[e].offsets[t]&&(r=this._renderData[e].offsets[t][i],s=u),o.fillColor=this.renderer._toRadialGradient(o.fillColor,s,r),o.fillColorSelected=this.renderer._toRadialGradient(o.fillColorSelected,s,r)}}return o}_installHandlers(e,t,i,r,s){if(!this.enableEvents)return!1;var a=this,l=this.seriesGroups[i],n=this.seriesGroups[i].series[r],o=-1!==l.type.indexOf("line")||-1!==l.type.indexOf("area");o||!1===l.enableSelection||!1===n.enableSelection||this.renderer.addHandler(e,"mousemove",(function(){var e=a._selected;e&&e.isLineType&&"click"===e.linesUnselectMode&&(e.group!==i||e.series!==r)||a._ttEl&&a._ttEl.gidx===i&&a._ttEl.sidx===r&&a._ttEl.iidx===s||a._startTooltipTimer(i,r,s)})),!1!==l.enableSelection&&!1!==n.enableSelection&&this.renderer.addHandler(e,"mouseover",(function(){var l=a._selected;l&&l.isLineType&&"click"===l.linesUnselectMode&&(l.group!==i||l.series!==r)||a._select(e,t,i,r,s,s)})),this.renderer.addHandler(e,"click",(function(e){clearTimeout(a._hostClickTimer),a._lastClickTs=(new Date).valueOf(),o&&"symbol"!==t&&"pointMarker"!==t||(a._isColumnType(l.type)&&a._unselect(),isNaN(s)||(e.stopImmediatePropagation(),a._raiseItemEvent("click",l,n,s)))}))}_getHorizontalOffset(e,t,i,r){let s=this._plotRect;if(0===this._getDataLen(e))return{index:void 0,value:i};let a=this._calcGroupOffsets(e,this._plotRect);if(0===a.xoffsets.length)return{index:void 0,value:void 0};let l,n,o,h,d,u=i,g=r,f=this.seriesGroups[e];(f.polar||f.spider)&&(l=this._getPolarAxisCoords(e,s));for(let e=a.xoffsets.first;e<=a.xoffsets.last;e++){let i=a.xoffsets.data[e],r=a.offsets[t][e].to,p=0;if(l){let e=this._toPolarCoord(l,s,i+s.x,r);i=e.x,r=e.y,p=this.renderer._ptdist(u,g,i,r)}else if("horizontal"===f.orientation){i+=s.y;let e=r;r=i,i=e,p=this.renderer._ptdist(u,g,i,r)}else i+=s.x,p=Math.abs(u-i);(isNaN(n)||n>p)&&(n=p,o=e,h=i,d=r)}return{index:o,value:a.xoffsets.data[o],polarAxisCoords:l,x:h,y:d}}onmousemove(e,t){if(this._mouseX===e&&this._mouseY===t)return;if(this._mouseX=e,this._mouseY=t,!this._selected)return;let i=this._selected.group,r=this._selected.series,s=this.seriesGroups[i],a=s.series[r],l=this._plotRect;if(this.renderer&&(l=this.renderer.getRect(),l.x+=5,l.y+=5,l.width-=10,l.height-=10),e<l.x+window.scrollX||e>l.x+l.width+window.scrollX||t<l.y+window.scrollY||t>l.y+l.height+window.scrollY)return this._hideToolTip(),void this._unselect();let n="horizontal"===s.orientation;if(l=this._plotRect,-1!==s.type.indexOf("line")||-1!==s.type.indexOf("area")){let o=this._getHorizontalOffset(i,this._selected.series,e,t),h=o.index;if(null==h)return;if(this._selected.item!==h){let e=this._linesRenderInfo[i][r].segments,t=0;for(;h>e[t].lastItemIndex;)if(t++,t>=e.length)return;let s=e[t].pathElement,a=e[t].lastItemIndex;this._unselect(!1),this._select(s,"path",i,r,h,a)}let d=this._getSymbol(this._selected.group,this._selected.series);"none"===d&&(d="circle");let u=this._calcGroupOffsets(i,l),g=u.offsets[this._selected.series][h].to,f=g;-1!==s.type.indexOf("range")&&(f=u.offsets[this._selected.series][h].from);let p=n?e:t;if(t=!isNaN(f)&&Math.abs(p-f)<Math.abs(p-g)?f:g,isNaN(t))return;if(e=o.value,n){let i=e;e=t,t=i+l.y}else e+=l.x;if(o.polarAxisCoords&&(e=o.x,t=o.y),t=this.renderer._ptrnd(t),e=this.renderer._ptrnd(e),this._pointMarker&&this._pointMarker.element&&(this.renderer.removeElement(this._pointMarker.element),this._pointMarker.element=void 0),isNaN(e)||isNaN(t))return;let c=this._getSeriesColors(i,r,h),m=this._getSerieSettings(i,r),y=a.symbolSizeSelected;isNaN(y)&&(y=a.symbolSize),(isNaN(y)||y>50||y<0)&&(y=s.symbolSize),(isNaN(y)||y>50||y<0)&&(y=8),(this.showToolTips||this.enableCrosshairs)&&(this._pointMarker={type:d,x:e,y:t,gidx:i,sidx:r,iidx:h},this._pointMarker.element=this._drawSymbol(d,e,t,c.fillColorSymbolSelected,m.opacity,c.lineColorSymbolSelected,m.opacity,m.strokeSymbol,m.dashStyle,y),this._installHandlers(this._pointMarker.element,"pointMarker",i,r,h)),this._startTooltipTimer(i,this._selected.series,h)}}_drawSymbol(e,t,i,r,s,a,l,n,o,h){let d,u,g=h||6,f=g/2;switch(e){case"none":return;case"circle":d=this.renderer.circle(t,i,g/2);break;case"square":g-=1,f=g/2,d=this.renderer.rect(t-f,i-f,g,g);break;case"diamond":u="M "+(t-f)+","+i+" L"+t+","+(i-f)+" L"+(t+f)+","+i+" L"+t+","+(i+f)+" Z",d=this.renderer.path(u);break;case"triangle_up":case"triangle":u="M "+(t-f)+","+(i+f)+" L "+(t+f)+","+(i+f)+" L "+t+","+(i-f)+" Z",d=this.renderer.path(u);break;case"triangle_down":u="M "+(t-f)+","+(i-f)+" L "+t+","+(i+f)+" L "+(t+f)+","+(i-f)+" Z",d=this.renderer.path(u);break;case"triangle_left":u="M "+(t-f)+","+i+" L "+(t+f)+","+(i+f)+" L "+(t+f)+","+(i-f)+" Z",d=this.renderer.path(u);break;case"triangle_right":u="M "+(t-f)+","+(i-f)+" L "+(t-f)+","+(i+f)+" L "+(t+f)+","+i+" Z",d=this.renderer.path(u);break;default:d=this.renderer.circle(t,i,g)}return this.renderer.attr(d,{fill:r,"fill-opacity":s,stroke:a,"stroke-width":n,"stroke-opacity":l,"stroke-dasharray":o||""}),"circle"!==e&&(this.renderer.attr(d,{r:g/2}),"square"!==e&&this.renderer.attr(d,{x:t,y:i})),d}_getSymbol(e,t){let i,r=["circle","square","diamond","triangle_up","triangle_down","triangle_left","triangle_right"],s=this.seriesGroups[e],a=s.series[t];return void 0!==a.symbolType&&null!==a.symbolType&&(i=a.symbolType),null==i&&(i=s.symbolType),"default"===i?r[t%r.length]:null!=i?i:"none"}_startTooltipTimer(e,t,i,r,s,a,l){this._cancelTooltipTimer();let n=this,o=this.toolTipShowDelay;(isNaN(o)||o>1e4||o<0)&&(o=500),(this._ttEl||!0===this.enableCrosshairs&&!1===this.showToolTips)&&(o=0),isNaN(a)||(o=a),clearTimeout(this._tttimerHide),isNaN(r)&&(r=n._mouseX),isNaN(s)&&(s=n._mouseY-3),0===o&&n._showToolTip(r,s,e,t,i),this._tttimer=setTimeout((function(){0!==o&&n._showToolTip(r,s,e,t,i);let a=n.toolTipHideDelay;isNaN(l)||(a=l),isNaN(a)&&(a=4e3),n._tttimerHide=setTimeout((function(){n._hideToolTip(),n._unselect()}),a)}),o)}_cancelTooltipTimer(){clearTimeout(this._tttimer)}_getGroupGradientType(e){let t=this.seriesGroups[e];return-1!==t.type.indexOf("area")?"horizontal"===t.orientation?"horizontalLinearGradient":"verticalLinearGradient":this._isColumnType(t.type)||-1!==t.type.indexOf("candle")?t.polar?"radialGradient":"horizontal"===t.orientation?"verticalLinearGradient":"horizontalLinearGradient":-1!==t.type.indexOf("scatter")||-1!==t.type.indexOf("bubble")||this._isPieGroup(e)?"radialGradient":void 0}_select(e,t,i,r,s,a){if(this._selected){if(this._selected.item===s&&this._selected.series===r&&this._selected.group===i)return;this._unselect()}let l=this.seriesGroups[i],n=l.series[r];if(!1===l.enableSelection||!1===n.enableSelection)return;let o=-1!==l.type.indexOf("line")&&-1===l.type.indexOf("area");this._selected={element:e,type:t,group:i,series:r,item:s,iidxBase:a,isLineType:o,linesUnselectMode:n.linesUnselectMode||l.linesUnselectMode};let h=this._getColors(i,r,a||s,this._getGroupGradientType(i)),d=h.fillColorSelected;o&&(d="none");let u=this._getSerieSettings(i,r),g="symbol"===t?h.lineColorSymbolSelected:h.lineColorSelected;d="symbol"===t?h.fillColorSymbolSelected:d;let f="symbol"===t?1:u.stroke;"symbol"!==t&&this.renderer.getAttr(e,"fill")===h.fillColorAlt&&(d=h.fillColorAltSelected),this.renderer.attr(e,{stroke:g,fill:d,"stroke-width":f}),-1===l.type.indexOf("pie")&&-1===l.type.indexOf("donut")||this._applyPieSelect(),this._raiseItemEvent("mouseover",l,n,s),this._isTouchDevice&&this._startTooltipTimer(i,r,s)}_applyPieSelect(){var e=this;e._createAnimationGroup("animPieSlice");var t=this._selected;if(t){var i=this.getItemCoord(t.group,t.series,t.item);if(i){var r={element:this._getRenderInfo(t.group,t.series,t.item),coord:i};this._enqueueAnimation("animPieSlice",void 0,void 0,300,(function(i,r,s){var a=r.coord,l=a.selectedRadiusChange*s,n=e.renderer.pieSlicePath(a.center.x,a.center.y,0===a.innerRadius?0:a.innerRadius+l,a.outerRadius+l,a.fromAngle,a.toAngle,a.centerOffset);e.renderer.attr(r.element.element,{d:n}),e._showPieLabel(t.group,t.series,t.item,void 0,l,r.element.colors.lineColor)}),r),e._startAnimation("animPieSlice")}}}_applyPieUnselect(){this._stopAnimations();let e=this._selected;if(!e)return;let t=this.getItemCoord(e.group,e.series,e.item);if(!t||!t.center)return;let i=this.renderer.pieSlicePath(t.center.x,t.center.y,t.innerRadius,t.outerRadius,t.fromAngle,t.toAngle,t.centerOffset);this.renderer.attr(e.element,{d:i}),this._showPieLabel(e.group,e.series,e.item,void 0,0,this._getRenderInfo(e.group,e.series,e.item).colors.lineColor)}_unselect(){let e=this;if(e._selected){let t=e._selected.group,i=e._selected.series,r=e._selected.item,s=e._selected.iidxBase,a=e._selected.type,l=e.seriesGroups[t],n=l.series[i],o=-1!==l.type.indexOf("line")&&-1===l.type.indexOf("area"),h=e._getColors(t,i,s||r,e._getGroupGradientType(t)),d=h.fillColor;o&&(d="none");let u=e._getSerieSettings(t,i),g="symbol"===a?h.lineColorSymbol:h.lineColor;d="symbol"===a?h.fillColorSymbol:d,"symbol"!==a&&this.renderer.getAttr(e._selected.element,"fill")===h.fillColorAltSelected&&(d=h.fillColorAlt);let f="symbol"===a?1:u.stroke;e.renderer.attr(e._selected.element,{stroke:g,fill:d,"stroke-width":f}),-1===l.type.indexOf("pie")&&-1===l.type.indexOf("donut")||this._applyPieUnselect(),e._selected=void 0,isNaN(r)||e._raiseItemEvent("mouseout",l,n,r)}e._pointMarker&&(e._pointMarker.element&&(e.renderer.removeElement(e._pointMarker.element),e._pointMarker.element=void 0),e._pointMarker=void 0,e._hideCrosshairs())}_raiseItemEvent(e,t,i,r){let s=i[e]||t[e],a=0;for(;a<this.seriesGroups.length&&this.seriesGroups[a]!==t;a++);if(a===this.seriesGroups.length)return;let l={event:e,seriesGroup:t,serie:i,elementIndex:r,elementValue:this._getDataValue(r,i.dataField,a)};s&&"function"==typeof s&&s(l),this.$.fireEvent(e,l)}_calcInterval(e,t,i){let r=Math.abs(t-e)/i,s=.1,a=[1,2,3,4,5,10,15,20,25,50,100];r<1&&(a=[.5,.25,.125,.1],s=10);let l=0;do{l=0,r>=1?s*=10:s/=10;for(let e=1;e<a.length&&Math.abs(a[l]*s-r)>Math.abs(a[e]*s-r);e++)l=e}while(l===a.length-1);return a[l]*s}_renderDataClone(){if(!this._renderData||this._isToggleRefresh)return;let e=this._elementRenderInfo=[];if(!this._isSelectorRefresh)for(let t=0;t<this._renderData.length;t++){for(;e.length<=t;)e.push({});let i=e[t],r=this._renderData[t];if(!r.offsets)continue;if(r.valueAxis){i.valueAxis={itemOffsets:{}};for(let e in r.valueAxis.itemOffsets)i.valueAxis.itemOffsets[e]=r.valueAxis.itemOffsets[e]}if(r.xAxis){i.xAxis={itemOffsets:{}};for(let e in r.xAxis.itemOffsets)i.xAxis.itemOffsets[e]=r.xAxis.itemOffsets[e]}i.series=[];let s=i.series,a=this._isPieGroup(t);for(let e=0;e<r.offsets.length;e++){s.push({});for(let i=0;i<r.offsets[e].length;i++)if(a){let t=r.offsets[e][i];s[e][t.displayValue]={value:t.value,x:t.x,y:t.y,fromAngle:t.fromAngle,toAngle:t.toAngle}}else r.xoffsets?s[e][r.xoffsets.xvalues[i]]={value:r.offsets[e][i].value,valueRadius:r.offsets[e][i].valueRadius,xoffset:r.xoffsets.data[i],from:r.offsets[e][i].from,to:r.offsets[e][i].to}:(r.xoffsets=this._calculateXOffsets(t,self._plotRect.width),r.xoffsets&&(s[e][r.xoffsets.xvalues[i]]={value:r.offsets[e][i].value,valueRadius:r.offsets[e][i].valueRadius,xoffset:r.xoffsets.data[i],from:r.offsets[e][i].from,to:r.offsets[e][i].to}))}}}getPolarDataPointOffset(e,t,i){let r=this._renderData[i];if(!r)return{x:NaN,y:NaN};let s=this.getValueAxisDataPointOffset(t,i),a=this.getXAxisDataPointOffset(e,i),l=this._toPolarCoord(r.polarCoords,r.xAxis.rect,a,s);return{x:l.x,y:l.y}}_getDataPointOffsetDiff(e,t,i,r,s,a,l){let n=this._getDataPointOffset(e,i,r,s,a,l),o=this._getDataPointOffset(t,i,r,s,a,l);return Math.abs(n-o)}_getXAxisRenderData(e){if(e>=this._renderData.length)return;let t=this.seriesGroups[e],i=this._renderData[e].xAxis;if(i){if(void 0===t.xAxis||null===t.xAxis)for(let t=0;t<=e;t++)if(void 0===this.seriesGroups[t].xAxis||null===this.seriesGroups[t].xAxis){i=this._renderData[t].xAxis;break}return i}}getXAxisDataPointOffset(e,t){let i=this.seriesGroups[t];if(isNaN(e))return NaN;const r=this._getXAxisRenderData(t);if(!r)return NaN;let s=r.data.axisStats,a=s.min.valueOf(),l=s.max.valueOf(),n=l-a;if(0===n&&(n=1),e.valueOf()>l||e.valueOf()<a)return NaN;let o=this._getXAxis(t),h="horizontal"===i.orientation?"height":"width",d="horizontal"===i.orientation?"y":"x",u=(e.valueOf()-a)/n,g=r.rect[h]-r.data.padding.left-r.data.padding.right;return(i.polar||i.spider)&&this._renderData[t].polarCoords.isClosedCircle&&(g=r.data.axisSize),this._plotRect[d]+r.data.padding.left+g*(o.flip?1-u:u)}getValueAxisDataPointOffset(e,t){let i=this._getValueAxis(t);if(!i)return NaN;let r=this._renderData[t];if(!r)return NaN;let s=!0===i.flip,a=r.logBase,l=r.scale,n=r.gbase,o=r.baseOffset;return this._getDataPointOffset(e,n,a,l,o,s)}_getDataPointOffset(e,t,i,r,s,a){let l;return isNaN(e)&&(e=t),l=isNaN(i)?(e-t)*r:(this._draw.log(e,i)-this._draw.log(t,i))*r,l=a?s+l:s-l,l}_calcGroupOffsets(e,t){let i=this.seriesGroups[e];for(;this._renderData.length<e+1;)this._renderData.push({});if(null!==this._renderData[e]&&void 0!==this._renderData[e].offsets)return this._renderData[e];if(this._isPieGroup(e))return this._calcPieSeriesGroupOffsets(e,t);let r=this._getValueAxis(e);if(!r||!i.series||0===i.series.length)return this._renderData[e];let s=!0===r.flip,a=!0===r.logarithmicScale,l=r.logarithmicScaleBase||10,n=[],o=-1!==i.type.indexOf("stacked"),h=o&&-1!==i.type.indexOf("100"),d=-1!==i.type.indexOf("range"),u=this._isColumnType(i.type),g=-1!==i.type.indexOf("waterfall"),f=this._getDataLen(e),p=i.baselineValue||r.baselineValue||0;h&&(p=0);let c=this._stats.seriesGroups[e];if(!c||!c.isValid)return;let m=c.hasStackValueReversal;if(m&&(p=0),g&&o){if(m)return;p=c.base}p>c.max&&(p=c.max),p<c.min&&(p=c.min);let y=h||a?c.maxRange:c.max-c.min,_=c.min,x=c.max,v=t.height/(a?c.intervals:y),b=0;h?_*x<0?(y/=2,b=-(y+p)*v):b=-p*v:b=-(p-_)*v,s?b=t.y-b:b+=t.y+t.height;let N,M=[],A=[],w=[];a&&(N=this._draw.log(x,l)-this._draw.log(p,l),o&&(N=c.intervals,p=h?0:_),s||(b=t.y+N/c.intervals*t.height)),b=this.renderer._ptrnd(b);let S=_*x<0?t.height/2:t.height,C=[],k=[],D=o&&(u||a),T=[];n=new Array(i.series.length);for(let e=0;e<i.series.length;e++)n[e]=new Array(f);for(let t=0;t<f;t++){!g&&o&&(k=[]);for(let r=0;r<i.series.length;r++){!o&&a&&(C=[]);let u=i.series[r],g=u.dataField,f=u.dataFieldFrom,m=u.dataFieldTo,y=u.radiusDataField||u.sizeDataField;n[r][t]={};let _=this._isSerieVisible(e,r);if(-1!==i.type.indexOf("candle")||-1!==i.type.indexOf("ohlc")){let i=["Open","Close","High","Low"];for(let o in i){let h="dataField"+i[o];u[h]&&(n[r][t][i[o]]=this._getDataPointOffset(this._getDataValueAsNumber(t,u[h],e),p,a?l:NaN,v,b,s))}continue}if(o)for(;k.length<=t;)k.push(0);let x=NaN;d&&(x=this._getDataValueAsNumber(t,f,e),isNaN(x)&&(x=p));let N=NaN;N=d?this._getDataValueAsNumber(t,m,e):this._getDataValueAsNumber(t,g,e);let F,O=this._getDataValueAsNumber(t,y,e);if(o&&(k[t]+=_?N:0),_||(N=NaN),isNaN(N)||a&&N<=0){n[r][t]={from:void 0,to:void 0};continue}o&&(D?F=N>=p?M:A:N=k[t]);let I=v*(N-p);if(d&&(I=v*(N-x)),o&&D&&(T[t]?I=v*N:(T[t]=!0,I=v*(N-p))),a){for(;C.length<=t;)C.push({p:{value:0,height:0},n:{value:0,height:0}});let e=d||d?x:p,i=N>e?C[t].p:C[t].n;i.value+=N,h?(N=i.value/(c.psums[t]+c.nsums[t])*100,I=(this._draw.log(N,l)-c.minPow)*v):(I=this._draw.log(i.value,l)-this._draw.log(e,l),I*=v),I-=i.height,i.height+=I}let P=b;if(d){let e=0;e=a?(this._draw.log(x,l)-this._draw.log(p,l))*v:(x-p)*v,P+=s?e:-e}if(o){if(h&&!a){let e=c.psums[t]-c.nsums[t];N>p?(I=c.psums[t]/e*S,0!==c.psums[t]&&(I*=N/c.psums[t])):(I=c.nsums[t]/e*S,0!==c.nsums[t]&&(I*=N/c.nsums[t]))}D&&(isNaN(F[t])&&(F[t]=P),P=F[t])}isNaN(w[t])&&(w[t]=0);let R=w[t];I=Math.abs(I);let L=I;if(I>=1){const e=this.renderer._ptrnd(I)-1;I=Math.abs(I-e)>.5?Math.round(I):e}if(R+=I-L,o||(R=0),Math.abs(R)>.5&&(R>0?(I-=1,R-=1):(I+=1,R+=1)),w[t]=R,r===i.series.length-1&&h){let e=0;for(let i=0;i<r;i++)e+=Math.abs(n[i][t].to-n[i][t].from);if(e+=I,e<S)if(I>.5)I=this.renderer._ptrnd(I+S-e);else{let i=r-1;for(;i>=0;){if(Math.abs(n[i][t].to-n[i][t].from)>1){n[i][t].from>n[i][t].to&&(n[i][t].from+=S-e);break}i--}}}s&&(I*=-1);let G=N<p;d&&(G=x>N);let V=isNaN(x)?N:{from:x,to:N};G?(D&&(F[t]+=I),n[r][t]={from:P,to:P+I,value:V,valueRadius:O}):(D&&(F[t]-=I),n[r][t]={from:P,to:P-I,value:V,valueRadius:O})}}let F=this._renderData[e];return F.baseOffset=b,F.gbase=p,F.logBase=a?l:NaN,F.scale=v,F.offsets=g?this._applyWaterfall(n,f,e,b,p,a?l:NaN,v,s,o):n,F.xoffsets=this._calculateXOffsets(e,t.width),this._renderData[e]}_isPercent(e){return"string"==typeof e&&e.length>0&&e.indexOf("%")===e.length-1}_calcPieSeriesGroupOffsets(e,t){var i=this,r=this._getDataLen(e),s=this.seriesGroups[e],a=this._renderData[e]={},l=a.offsets=[];for(let a=0;a<s.series.length;a++){var n=s.series[a],o=this._get([n.minAngle,n.startAngle]);(isNaN(o)||o<0||o>360)&&(o=0);var h=this._get([n.maxAngle,n.endAngle]);(isNaN(h)||h<0||h>360)&&(h=360);var d=h-o,u=n.initialAngle||0;u<o&&(u=o),u>h&&(u=h);var g=n.centerOffset||0,f=this._draw.getNum([n.offsetX,s.offsetX,t.width/2]),p=this._draw.getNum([n.offsetY,s.offsetY,t.height/2]),c=Math.min(t.width,t.height)/2,m=u,y=n.radius;i._isPercent(y)&&(y=parseFloat(y)/100*c),isNaN(y)&&(y=.4*c);var _=n.innerRadius;i._isPercent(_)&&(_=parseFloat(_)/100*c),(isNaN(_)||_>=y)&&(_=0);var x=n.selectedRadiusChange;i._isPercent(x)&&(x=parseFloat(x)/100*(y-_)),isNaN(x)&&(x=.1*(y-_)),l.push([]);var v=0,b=0;for(let t=0;t<r;t++){var N=this._getDataValueAsNumber(t,n.dataField,e);isNaN(N)||(this._isSerieVisible(e,a,t)||!0===n.hiddenPointsDisplay)&&(N>0?v+=N:b+=N)}var M=v-b;0===M&&(M=1);for(let i=0;i<r;i++){let r=this._getDataValueAsNumber(i,n.dataField,e);if(isNaN(r))l[a].push({});else{var A=n.displayText||n.displayField,w=this._getDataValue(i,A,e);null==w&&(w=i);var S=0,C=this._isSerieVisible(e,a,i);(C||!0===n.hiddenPointsDisplay)&&(S=Math.abs(r)/M*d);var k=t.x+f,D=t.y+p,T=g;"function"==typeof g&&(T=g({seriesIndex:a,seriesGroupIndex:e,itemIndex:i})),isNaN(T)&&(T=0);var F={key:e+"_"+a+"_"+i,value:r,displayValue:w,x:k,y:D,fromAngle:m,toAngle:m+S,centerOffset:T,innerRadius:_,outerRadius:y,selectedRadiusChange:x,visible:C};l[a].push(F),m+=S}}}return a}_isPointSeriesOnly(){for(let e=0;e<this.seriesGroups.length;e++){let t=this.seriesGroups[e];if(-1===t.type.indexOf("line")&&-1===t.type.indexOf("area")&&-1===t.type.indexOf("scatter")&&-1===t.type.indexOf("bubble"))return!1}return!0}_hasColumnSeries(){let e=["column","ohlc","candlestick","waterfall"];for(let t=0;t<this.seriesGroups.length;t++){let i=this.seriesGroups[t];for(let t in e)if(-1!==i.type.indexOf(e[t]))return!0}return!1}_alignValuesWithTicks(e){let t=this._isPointSeriesOnly(),i=this.seriesGroups[e],r=this._getXAxis(e),s=void 0===r.valuesOnTicks||null===r.valuesOnTicks?t:!1!==r.valuesOnTicks;return r.logarithmicScale&&(s=!0),null==e||void 0===i.valuesOnTicks||null===i.valuesOnTicks?s:i.valuesOnTicks}_getYearsDiff(e,t){return t.getFullYear()-e.getFullYear()}_getMonthsDiff(e,t){return 12*(t.getFullYear()-e.getFullYear())+t.getMonth()-e.getMonth()}_getDateDiff(e,t,i,r){let s=0;switch("year"!==i&&"month"!==i&&(s=t.valueOf()-e.valueOf()),i){case"year":s=this._getYearsDiff(e,t);break;case"month":s=this._getMonthsDiff(e,t);break;case"day":s/=864e5;break;case"hour":s/=36e5;break;case"minute":s/=6e4;break;case"second":s/=1e3}return"year"!==i&&"month"!==i&&!1!==r&&(s=this.renderer._rnd(s,1,!0)),s}_getBestDTUnit(e,t,i,r,s){let a="day",l=t.valueOf()-e.valueOf();a=l<1e3?"second":l<36e5?"minute":l<864e5?"hour":l<2592e6?"day":l<31104e6?"month":"year";let n=[{key:"year",cnt:l/31536e6},{key:"month",cnt:l/2592e6},{key:"day",cnt:l/864e5},{key:"hour",cnt:l/36e5},{key:"minute",cnt:l/6e4},{key:"second",cnt:l/1e3},{key:"millisecond",cnt:l}],o=-1;for(let e=0;e<n.length;e++)if(n[e].key===a){o=e;break}let h=-1,d=-1;for(;o<n.length&&!(n[o].cnt/100>r);o++){let a=this._estAxisInterval(e,t,i,r,n[o].key,s),l=this._getDTIntCnt(e,t,a,n[o].key);(-1===h||h<l)&&(h=l,d=o)}return a=n[d].key,a}_getXAxisStats(e,t,i){let r=this._getDataLen(e),s="date"===t.type||"time"===t.type;if(s&&!this._autoDateFormats){this._autoDateFormats||(this._autoDateFormats=[]);let e=this._testXAxisDateFormat();e&&this._autoDateFormats.push(e)}let a=s?this._castAsDate(t.minValue,t.dateFormat):this._castAsNumber(t.minValue),l=s?this._castAsDate(t.maxValue,t.dateFormat):this._castAsNumber(t.maxValue);if(this._selectorRange&&this._selectorRange[e]){let i=this._selectorRange[e].min;isNaN(i)||(a=s?this._castAsDate(i,t.dateFormat):this._castAsNumber(i));let r=this._selectorRange[e].max;isNaN(r)||(l=s?this._castAsDate(r,t.dateFormat):this._castAsNumber(r))}let n,o,h=a,d=l,u=void 0===t.type||null===t.type||"auto"===t.type,g=u||"basic"===t.type,f=0,p=0;for(let i=0;i<r&&t.dataField;i++){let r=this._getDataValue(i,t.dataField,e);r=s?this._castAsDate(r,t.dateFormat):this._castAsNumber(r),isNaN(r)||(s?f++:p++,(isNaN(n)||r<n)&&(n=r),(isNaN(o)||r>=o)&&(o=r))}u&&(!s&&p===r||s&&f===r)&&(g=!1),g&&(n=0,o=Math.max(0,r-1)),isNaN(h)&&(h=n),isNaN(d)&&(d=o),s?(this._isDate(h)||(h=this._isDate(d)?d:new Date),this._isDate(d)||(d=this._isDate(h)?h:new Date)):(isNaN(h)&&(h=0),isNaN(d)&&(d=g?Math.max(0,r-1):h)),null==n&&(n=h),null==o&&(o=d);let c,m,y=t.rangeSelector&&t.rangeSelector.visible;if(y){let e=y.minValue||h;e&&s&&(e=this._castAsDate(e,y.dateFormat||t.dateFormat));let i=y.maxValue||d;i&&s&&(i=this._castAsDate(i,y.dateFormat||t.rangeSelector)),h<e&&(h=e),d<e&&(d=i),h>i&&(h=e),d>i&&(d=i)}s&&(c=t.baseUnit,c||(c=this._getBestDTUnit(h,d,e,i)),m="hour"===c||"minute"===c||"second"===c||"millisecond"===c);let _=!0===t.logarithmicScale,x=t.logarithmicScaleBase;(isNaN(x)||x<=1)&&(x=10);let v=t.unitInterval;_?v=1:(isNaN(v)||v<=0)&&(v=this._estAxisInterval(h,d,e,i,c));let b,N,M={min:h,max:d},A=this.seriesGroups[e];return _?(h||(h=1,d&&h>d&&(h=d)),d||(d=h),M={min:h,max:d},b=this.renderer._rnd(this._draw.log(h,x),1,!1),N=this.renderer._rnd(this._draw.log(d,x),1,!0),d=Math.pow(x,N),h=Math.pow(x,b)):s||!A.polar&&!A.spider||(h=this.renderer._rnd(h,v,!1),d=this.renderer._rnd(d,v,!0)),{min:h,max:d,logAxis:{enabled:_,base:x,minPow:b,maxPow:N},dsRange:{min:n,max:o},filterRange:M,useIndeces:g,isDateTime:s,isTimeUnit:m,dateTimeUnit:c,interval:v}}_getDefaultDTFormatFn(e){let t,i=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];return t="year"===e||"month"===e||"day"===e?function(e){return e.getDate()+"-"+i[e.getMonth()]+"-"+e.getFullYear()}:function(e){return e.getDate()+"-"+i[e.getMonth()]+"-"+e.getFullYear()+"<br>"+e.getHours()+":"+e.getMinutes()+":"+e.getSeconds()},t}_getDTIntCnt(e,t,i,r){let s=0,a=new Date(e),l=new Date(t);if(l=l.valueOf(),i<=0)return 1;for(;a.valueOf()<l;)"millisecond"===r?a=new Date(a.valueOf()+i):"second"===r?a=new Date(a.valueOf()+1e3*i):"minute"===r?a=new Date(a.valueOf()+6e4*i):"hour"===r?a=new Date(a.valueOf()+6e4*i*24):"day"===r?a.setDate(a.getDate()+i):"month"===r?a.setMonth(a.getMonth()+i):"year"===r&&a.setFullYear(a.getFullYear()+i),s++;return s}_estAxisInterval(e,t,i,r,s,a){if(isNaN(e)||isNaN(t))return NaN;let l=[1,2,5,10,15,20,50,100,200,500],n=0,o=r/(!isNaN(a)&&a>0?a:50);if(this._renderData&&this._renderData.length>i&&this._renderData[i].xAxis&&!isNaN(this._renderData[i].xAxis.avgWidth)){let e=Math.max(1,this._renderData[i].xAxis.avgWidth);0!==e&&isNaN(a)&&(o=.9*r/e)}if(o<=1)return Math.abs(t-e);let h,d=0;for(;h=n>=l.length?Math.pow(10,3+n-l.length):l[n],d=this._isDate(e)&&this._isDate(t)?this._getDTIntCnt(e,t,h,s):(t-e)/h,!(d<=o);)n++;let u=this.seriesGroups[i];return(u.spider||u.polar)&&2*h>t-e&&(h=t-e),h}_getPaddingSize(e,t,i,r,s,a,l){var n=e.min,o=e.max;e.logAxis.enabled&&(n=e.logAxis.minPow,o=e.logAxis.maxPow);var h=e.interval,d=e.dateTimeUnit;if(s){var u=r/Math.max(1,o-n+h)*h;return a?{left:0,right:u}:i?{left:0,right:0}:{left:u/2,right:u/2}}if(i&&!l)return{left:0,right:0};if(this._isDate(n)&&this._isDate(o)){let e=this._getDTIntCnt(n,o,Math.min(h,o-n),d),t=r/Math.max(2,e);return{left:t/2,right:t/2}}let g=Math.max(1,o-n);if(1===g){const e=r/4;return{left:e,right:e}}let f=r/(g+1);return{left:f/2,right:f/2}}_calculateXOffsets(e,t){var i=this.seriesGroups[e],r=this._getXAxis(e),s=[],a=[],l=this._getDataLen(e),n=this._getXAxisStats(e,r,t),o=n.min,h=n.max,d=n.isDateTime,u=n.isTimeUnit,g=this._hasColumnSeries(),f=i.polar||i.spider,p=this._get([i.startAngle,i.minAngle,0]),c=this._get([i.endAngle,i.maxAngle,360]),m=f&&!(Math.abs(Math.abs(c-p)-360)>1e-4),y=this._alignValuesWithTicks(e),_=this._getPaddingSize(n,r,y,t,f,m,g),x=h-o,v=n.filterRange;0===x&&(x=1);var b=t-_.left-_.right;f&&y&&!m&&(_.left=_.right=0);var N=-1,M=-1;for(let t=0;t<l;t++){var A=void 0===r.dataField?t:this._getDataValue(t,r.dataField,e);if(n.useIndeces){if(t<v.min||t>v.max){s.push(NaN),a.push(void 0);continue}if(S=_.left+(t-o)/x*b,!0===n.logAxis.enabled){var w=n.logAxis.base;S=this._smartPlot.scale(A,{min:o.valueOf(),max:h.valueOf(),type:"logarithmic",base:w},{min:0,max:b,flip:!1})}s.push(this.renderer._ptrnd(S)),a.push(A),-1===N&&(N=t),(-1===M||M<t)&&(M=t)}else if(A=d?this._castAsDate(A,r.dateFormat):this._castAsNumber(A),isNaN(A)||A<v.min||A>v.max)s.push(NaN),a.push(void 0);else{var S=0;if(!0===n.logAxis.enabled){let e=n.logAxis.base;S=this._smartPlot.scale(A,{min:o.valueOf(),max:h.valueOf(),type:"logarithmic",base:e},{min:0,max:b,flip:!1})}else S=!d||d&&u?(A-o)*b/x:(A.valueOf()-o.valueOf())/(h.valueOf()-o.valueOf())*b;S=this.renderer._ptrnd(_.left+S),s.push(S),a.push(A),-1===N&&(N=t),(-1===M||M<t)&&(M=t)}}if(!0===r.flip)for(let e=0;e<s.length;e++)isNaN(s[e])||(s[e]=t-s[e]);(u||d)&&(x=this._getDateDiff(o,h,r.baseUnit),x=this.renderer._rnd(x,1,!1));var C=Math.max(1,x),k=b/C;return N===M&&1===C&&(s[N]=_.left+b/2),{axisStats:n,data:s,xvalues:a,first:N,last:M,length:-1===M?0:M-N+1,itemWidth:k,intervalWidth:k*n.interval,rangeLength:x,useIndeces:n.useIndeces,padding:_,axisSize:b}}_getXAxis(e){return null==e||this.seriesGroups.length<=e?this.xAxis:this.seriesGroups[e].xAxis||this.xAxis}_isGreyScale(e,t){let i=this.seriesGroups[e],r=i.series[t];return!0===r.greyScale||!1!==r.greyScale&&(!0===i.greyScale||!1!==i.greyScale&&!0===this.greyScale)}_getSeriesColors(e,t,i){let r=this._getSeriesColorsInternal(e,t,i);if(this._isGreyScale(e,t))for(let e in r)r[e]=this._draw.toGreyScale(r[e]);return r}_getColorFromScheme(e,t,i){let r="#000000",s=this.seriesGroups[e],a=s.series[t];if(this._isPieGroup(e)){let l=this._getDataLen(e);r=this._getItemColorFromScheme(a.colorScheme||s.colorScheme||this.colorScheme,t*l+i,e,t)}else{let i=0;for(let r=0;r<=e;r++)for(let s=0;s<this.seriesGroups[r].series.length&&(r!==e||parseInt(s)!==t);s++)i++;let a=this.colorScheme;if(s.colorScheme&&(a=s.colorScheme),null!=a&&""!==a||(a=this.colorSchemes[0].name),!a)return r;for(let e=0;e<this.colorSchemes.length;e++){let t=this.colorSchemes[e];if(t.name===a){for(;i>t.colors.length;)i-=t.colors.length,++e>=this.colorSchemes.length&&(e=0),t=this.colorSchemes[e];r=t.colors[i%t.colors.length]}}}return r}_createColorsCache(){this._colorsCache={get:function(e){if(this._store[e])return this._store[e]},set:function(e,t){this._size<1e4&&(this._store[e]=t,this._size++)},clear:function(){this._store={},this._size=0},_size:0,_store:{}}}_getSeriesColorsInternal(e,t,i){let r=this.seriesGroups[e],s=r.series[t];"function"===(s.colorFunction,!1)&&"pie"!==r.type&&"donut"!==r.type&&(i=NaN);let a=e+"_"+t+"_"+(isNaN(i)?"NaN":i);if(this._colorsCache.get(a))return this._colorsCache.get(a);let l,n={lineColor:"#222222",lineColorSelected:"#151515",lineColorSymbol:"#222222",lineColorSymbolSelected:"#151515",fillColor:"#222222",fillColorSelected:"#333333",fillColorSymbol:"#222222",fillColorSymbolSelected:"#333333",fillColorAlt:"#222222",fillColorAltSelected:"#333333"};if("function"==typeof s.colorFunction){let t=isNaN(i)?NaN:this._getDataValue(i,s.dataField,e);if(-1===r.type.indexOf("range")||isNaN(i)||(t={from:this._getDataValue(i,s.dataFieldFrom,e),to:this._getDataValue(i,s.dataFieldTo,e)}),l=s.colorFunction(t,i,s,r),"object"==typeof l)for(let e in l)n[e]=l[e];else n.fillColor=l}else{for(let e in n)s[e]&&(n[e]=s[e]);s.fillColor||s.color?s.fillColor=s.fillColor||s.color:n.fillColor=this._getColorFromScheme(e,t,i)}let o={fillColor:{baseColor:"fillColor",adjust:1},fillColorSelected:{baseColor:"fillColor",adjust:1.1},fillColorSymbol:{baseColor:"fillColor",adjust:1},fillColorSymbolSelected:{baseColor:"fillColorSymbol",adjust:2},fillColorAlt:{baseColor:"fillColor",adjust:4},fillColorAltSelected:{baseColor:"fillColor",adjust:3},lineColor:{baseColor:"fillColor",adjust:.95},lineColorSelected:{baseColor:"lineColor",adjust:.95},lineColorSymbol:{baseColor:"lineColor",adjust:1},lineColorSymbolSelected:{baseColor:"lineColorSelected",adjust:1}};for(let e in n)"object"==typeof l&&l[e]||s[e]&&(n[e]=s[e]);for(let e in n)"object"==typeof l&&l[e]||s[e]||(n[e]=this.renderer.adjustColor(n[o[e].baseColor],o[e].adjust));return this._colorsCache.set(a,n),n}_getItemColorFromScheme(e,t,i,r){let s;for(void 0!==e&&""!==e||(e=this.colorSchemes[0].name),s=0;s<this.colorSchemes.length&&e!==this.colorSchemes[s].name;s++);let a=0;for(;a<=t;){s===this.colorSchemes.length&&(s=0);let e=this.colorSchemes[s].colors.length;if(!(a+e<=t)){let e=this.colorSchemes[s].colors[t-a];return this._isGreyScale(i,r)&&0===e.indexOf("#")&&(e=this._draw.toGreyScale(e)),e}a+=e,s++}}getColorScheme(e){for(let t=0;t<this.colorSchemes.length;t++)if(this.colorSchemes[t].name===e)return this.colorSchemes[t].colors}addColorScheme(e,t){for(let i=0;i<this.colorSchemes.length;i++)if(this.colorSchemes[i].name===e)return void(this.colorSchemes[i].colors=t);this.colorSchemes.push({name:e,colors:t})}removeColorScheme(e){for(let t=0;t<this.colorSchemes.length;t++)if(this.colorSchemes[t].name===e){this.colorSchemes.splice(t,1);break}}_formatValue(e,t,i,r,s,a){if(null==e)return"";if(this._isObject(e)&&!this._isDate(e)&&!i)return"";if(i){if("function"!=typeof i)return e.toString();try{return i(e,a,s,r)}catch(e){return e.message}}return this._isNumber(e)?this._formatNumber(e,t):this._isDate(e)?this._formatDate(e,t):t?(t.prefix||"")+e.toString()+(t.sufix||""):e.toString()}_getFormattedValue(e,t,i,r,s,a){let l=this.seriesGroups[e],n=l.series[t],o="",h=r,d=s;n.labels&&(h=h||this._getFormatSettings(n.labels),d=d||n.labels.formatFunction),h||d||(h=this._getFormatSettings(n),d=n.formatFunction,h||d||(h=this._getFormatSettings(l),d=l.formatFunction));let u={},g=0;for(let t in n)0===t.indexOf("dataField")&&(u[t.substring(9).toLowerCase()]=this._getDataValue(i,n[t],e),g++);if(0===g&&(u=this._getDataValue(i,void 0,e)),-1!==l.type.indexOf("waterfall")&&this._isSummary(e,i)&&(u=this._renderData[e].offsets[t][i].value,g=0),d&&"function"==typeof d)try{return d(1===g?u[""]:u,i,n,l)}catch(e){return e.message}if(1===g&&this._isPieGroup(e))return this._formatValue(u[""],h,d,e,t,i);if(g>0){let r=0;for(let s in u){r>0&&""!==o&&(o+="<br>");let l="dataField"+(s.length>0?s.substring(0,1).toUpperCase()+s.substring(1):""),g=n["displayText"+(s.length>0?s.substring(0,1).toUpperCase()+s.substring(1):"")]||n[l],f=u[s];void 0!==f&&(f=this._formatValue(f,h,d,e,t,i),o+=!0===a?f:g+": "+f,r++)}}else null!=u&&(o=this._formatValue(u,h,d,e,t,i));return o||""}_isNumberAsString(e){if("string"!=typeof e)return!1;e=e.trim();for(let t=0;t<e.length;t++){let i=e.charAt(t);if(!(i>="0"&&i<="9"||","===i||"."===i||"-"===i&&0===t||"("===i&&0===t||")"===i&&t===e.length-1))return!1}return!0}_castAsDate(e,t){if(e instanceof Date&&!isNaN(e))return e;if("string"==typeof e){let i=new Date(e);if(this._isDate(i))return-1===e.indexOf(":")&&i.setHours(0,0,0,0),i;try{if(t&&(i=Smart.Utilities.DateTime.parseDateString(e,void 0,t).toDate(),this._isDate(i)))return i;if(this._autoDateFormats)for(let t=0;t<this._autoDateFormats.length;t++)if(i=Smart.Utilities.DateTime.parseDateString(e,void 0,this._autoDateFormats[t]).toDate(),this._isDate(i))return i;let r=this._detectDateFormat(e);if(r&&(i=Smart.Utilities.DateTime.parseDateString(e,void 0,r).toDate(),this._isDate(i)))return this._autoDateFormats.push(r),i}catch(e){}}}_castAsNumber(e){if(e instanceof Date&&!isNaN(e))return e.valueOf();if("string"==typeof e)if(this._isNumber(e))e=parseFloat(e);else if(!/[a-zA-Z]/.test(e)){let t=new Date(e);null!=t&&(e=t.valueOf())}return isNaN(e)?void 0:e}_isNumber(e){return"string"==typeof e&&this._isNumberAsString(e)&&(e=parseFloat(e)),"number"==typeof e&&isFinite(e)}_isDate(e){return e instanceof Date&&!isNaN(e.getDate())}_isBoolean(e){return"boolean"==typeof e}_isObject(e){return e&&("object"==typeof e||"function"==typeof e)||!1}_formatDate(e,t){let i=e.toString();return t&&(t.dateFormat&&(i=new Smart.Utilities.DateTime(e).toString(t.dateFormat)),i=(t.prefix||"")+i+(t.sufix||"")),i}_formatNumber(e,t){if(!this._isNumber(e))return e;t=t||{};let i=this.localization.decimalSeparator,r=this.localization.thousandsSeparator;t.decimalSeparator&&(i=t.decimalSeparator),t.thousandsSeparator&&(r=t.thousandsSeparator);let s=t.prefix||"",a=t.sufix||"",l=t.decimalPlaces;isNaN(l)&&(l=this._getDecimalPlaces([e],void 0,3));let n=t.negativeWithBrackets||!1,o=e<0;o&&n&&(e*=-1);let h,d=e.toString(),u=Math.pow(10,l);if(d=(Math.round(e*u)/u).toString(),isNaN(d)&&(d=""),h=d.lastIndexOf("."),l>0)for(h<0?(d+=i,h=d.length-1):"."!==i&&(d=d.replace(".",i));d.length-1-h<l;)d+="0";h=d.lastIndexOf(i),h=h>-1?h:d.length;let g=d.substring(h),f=0;for(let e=h;e>0;e--,f++)f%3==0&&e!==h&&(!o||e>1||o&&n)&&(g=r+g),g=d.charAt(e-1)+g;return d=g,o&&n&&(d="("+d+")"),s+d+a}_calculateControlPoints(e,t){let i=e[t],r=e[t+1],s=e[t+2],a=e[t+3],l=e[t+4],n=e[t+5],o=Math.sqrt(Math.pow(s-i,2)+Math.pow(a-r,2)),h=o+Math.sqrt(Math.pow(l-s,2)+Math.pow(n-a,2));0===h&&(h=1);let d=.4*o/h,u=.4-d;return[s+d*(i-l),a+d*(r-n),s-u*(i-l),a-u*(r-n)]}_getBezierPoints(e){let t="",i=[],r=[],s=e.split(" ");for(let e=0;e<s.length;e++){let t=s[e].split(",");i.push(parseFloat(t[0])),i.push(parseFloat(t[1])),!isNaN(i[i.length-1])&&isNaN(i[i.length-2])}let a=i.length;if(a<=1)return"";if(2===a)return t="M"+this.renderer._ptrnd(i[0])+","+this.renderer._ptrnd(i[1])+" L"+this.renderer._ptrnd(i[0]+1)+","+this.renderer._ptrnd(i[1]+1)+" ",t;for(let e=0;e<a-4;e+=2)r=r.concat(this._calculateControlPoints(i,e));for(let e=2;e<a-5;e+=2)t+=" C"+this.renderer._ptrnd(r[2*e-2])+","+this.renderer._ptrnd(r[2*e-1])+" "+this.renderer._ptrnd(r[2*e])+","+this.renderer._ptrnd(r[2*e+1])+" "+this.renderer._ptrnd(i[e+2])+","+this.renderer._ptrnd(i[e+3])+" ";return t=a<=4||Math.abs(i[0]-i[2])<3||Math.abs(i[1]-i[3])<3?"M"+this.renderer._ptrnd(i[0])+","+this.renderer._ptrnd(i[1])+" L"+this.renderer._ptrnd(i[2])+","+this.renderer._ptrnd(i[3])+" "+t:"M"+this.renderer._ptrnd(i[0])+","+this.renderer._ptrnd(i[1])+" Q"+this.renderer._ptrnd(r[0])+","+this.renderer._ptrnd(r[1])+" "+this.renderer._ptrnd(i[2])+","+this.renderer._ptrnd(i[3])+" "+t,a>=4&&(Math.abs(i[a-2]-i[a-4])<3||Math.abs(i[a-1]-i[a-3])<3)?t+=" L"+this.renderer._ptrnd(i[a-2])+","+this.renderer._ptrnd(i[a-1])+" ":a>=5&&(t+=" Q"+this.renderer._ptrnd(r[2*a-10])+","+this.renderer._ptrnd(r[2*a-9])+" "+this.renderer._ptrnd(i[a-2])+","+this.renderer._ptrnd(i[a-1])+" "),t}_createAnimationGroup(e){this._animGroups||(this._animGroups={}),this._animGroups[e]={animations:[],startTick:NaN}}_startAnimation(e){let t=(new Date).getTime();this._animGroups[e].startTick=t,this._runAnimation(),this._enableAnimTimer()}_enqueueAnimation(e,t,i,r,s,a,l){r<0&&(r=0),void 0===l&&(l="easeInOutSine"),this._animGroups[e].animations.push({key:t,properties:i,duration:r,fn:s,context:a,easing:l})}_stopAnimations(){clearTimeout(this._animtimer),this._animtimer=void 0,this._animGroups=void 0}_enableAnimTimer(){if(!this._animtimer){let e=this;this._animtimer=setTimeout((function(){e._runAnimation()}),this._animTickInt)}}_runAnimation(){if(this._animGroups){let e=(new Date).getTime(),t={};for(let i in this._animGroups){let r=this._animGroups[i].animations,s=this._animGroups[i].startTick,a=0;for(let t=0;t<r.length;t++){let i=r[t],l=e-s;i.duration>a&&(a=i.duration);let n=i.duration>0?l/i.duration:1,o=n;if(i.easing&&0!==i.duration&&!1!==i.duration&&(o=Smart.Utilities.Animation.Easings[i.easing](l,0,1,i.duration)),n>1&&(n=1,o=1),i.fn){i.fn(i.key,i.context,o);continue}let h={};for(let e=0;e<i.properties.length;e++){let t=i.properties[e],r=0;r=1===n?t.to:o*(t.to-t.from)+t.from,h[t.key]=r}this.renderer.attr(i.key,h)}s+a>e&&(t[i]={startTick:s,animations:r})}this._animGroups=t,this.renderer instanceof Smart.Utilities.HTML5Renderer&&this.renderer.refresh()}this._animtimer=null,Object.values(this._animGroups).length>0&&this._enableAnimTimer()}_fixCoords(e,t){if("horizontal"!==this.seriesGroups[t].orientation)return e;var i=e.x;return e.x=e.y,e.y=i+this._plotRect.y-this._plotRect.x,i=e.width,e.width=e.height,e.height=i,e}getItemCoord(e,t,i){var r=this;if(r._isPieGroup(e)&&(!r._isSerieVisible(e,t,i)||!r._renderData||r._renderData.length<=e))return{x:NaN,y:NaN};if(!r._isSerieVisible(e,t)||!r._renderData||r._renderData.length<=e)return{x:NaN,y:NaN};var s=r.seriesGroups[e],a=s.series[t],l=r._getItemCoord(e,t,i);if(r._isPieGroup(e)){if(isNaN(l.x)||isNaN(l.y)||isNaN(l.fromAngle)||isNaN(l.toAngle))return{x:NaN,y:NaN};var n=this._plotRect,o=l.fromAngle*(Math.PI/180),h=l.toAngle*(Math.PI/180);const e=n.x+l.center.x+Math.cos(o)*l.outerRadius,t=n.x+l.center.x+Math.cos(h)*l.outerRadius,i=n.y+l.center.y-Math.sin(o)*l.outerRadius,r=n.y+l.center.y-Math.sin(h)*l.outerRadius;var d=Math.min(e,t),u=Math.abs(t-e);return l={x:d,y:Math.min(i,r),width:u,height:Math.abs(r-i),center:l.center,centerOffset:l.centerOffset,innerRadius:l.innerRadius,outerRadius:l.outerRadius,selectedRadiusChange:l.selectedRadiusChange,fromAngle:l.fromAngle,toAngle:l.toAngle}}if(-1!==s.type.indexOf("column")||-1!==s.type.indexOf("waterfall")){var g=this._getColumnSerieWidthAndOffset(e,t);l.height=Math.abs(l.y.to-l.y.from),l.y=Math.min(l.y.to,l.y.from),l.x+=g.offset,l.width=g.width}else if(-1!==s.type.indexOf("ohlc")||-1!==s.type.indexOf("candlestick")){let i=this._getColumnSerieWidthAndOffset(e,t),r=l.y;var f=Math.min(r.Open,r.Close,r.Low,r.High),p=Math.max(r.Open,r.Close,r.Low,r.High);l.height=Math.abs(p-f),l.y=f,l.x+=i.offset,l.width=i.width}else if(-1!==s.type.indexOf("line")||-1!==s.type.indexOf("area"))l.width=l.height=0,l.y=l.y.to;else if(-1!==s.type.indexOf("bubble")||-1!==s.type.indexOf("scatter")){l.center={x:l.x,y:l.y.to};var c=l.y.radius;"circle"!==a.symbolType&&void 0!==a.symbolType&&null!==a.symbolType&&(c/=2),l.y=l.y.to,l.radius=c,l.width=2*c,l.height=2*c}if(l=this._fixCoords(l,e),s.polar||s.spider){var m=this._toPolarCoord(this._renderData[e].polarCoords,this._plotRect,l.x,l.y);l.x=m.x,l.y=m.y,l.center&&(l.center=this._toPolarCoord(this._renderData[e].polarCoords,this._plotRect,l.center.x,l.center.y))}return-1===s.type.indexOf("bubble")&&-1===s.type.indexOf("scatter")||(l.x-=c,l.y-=c),l}_getItemCoord(e,t,i){let r,s,a=this.seriesGroups[e];if(!a||!this._renderData)return{x:NaN,y:NaN};if(!a.series[t])return{x:NaN,y:NaN};let l=this._plotRect;if(this._isPieGroup(e)){let a=this._renderData[e].offsets[t][i];if(!a)return{x:NaN,y:NaN};let n=(a.fromAngle+a.toAngle)/2*(Math.PI/180);return r=l.x+a.x+Math.cos(n)*a.outerRadius,s=l.y+a.y-Math.sin(n)*a.outerRadius,{x:r,y:s,center:{x:a.x,y:a.y},centerOffset:a.centerOffset,innerRadius:a.innerRadius,outerRadius:a.outerRadius,selectedRadiusChange:a.selectedRadiusChange,fromAngle:a.fromAngle,toAngle:a.toAngle}}if(r=l.x+this._renderData[e].xoffsets.data[i],s=this._renderData[e].offsets[t][i],isNaN(r)||!s)return{x:NaN,y:NaN};let n={};for(let e in s)n[e]=s[e];return{x:r,y:n}}getXAxisValue(e,t){var i=this.seriesGroups[t];if(i){var r=this._getXAxis(t),s=this._plotRect,a=0,l=NaN,n=this._renderData[0].xoffsets.axisStats,o=0,h=0;if(i.polar||i.spider){if(isNaN(e.x)||isNaN(e.y))return NaN;var d=this._getPolarAxisCoords(t,s);if(this.renderer._ptdist(e.x,e.y,d.x,d.y)>d.r)return NaN;var u=Math.atan2(d.y-e.y,e.x-d.x);(u=Math.PI/2-u)<0&&(u=2*Math.PI+u),l=u*d.r;var g=d.startAngle+Math.PI/2,f=d.endAngle+Math.PI/2;o=g*d.r,h=f*d.r,a=(f-g)*d.r;var p=this._getPaddingSize(n,r,r.valuesOnTicks,a,!0,d.isClosedCircle,this._hasColumnSeries());d.isClosedCircle?(a-=p.left+p.right,h-=p.left+p.right):r.valuesOnTicks||(o+=p.left,h-=p.right)}else{if("horizontal"!==i.orientation){if(e<s.x||e>s.x+s.width)return NaN;l=e-s.x,a=s.width}else{if(e<s.y||e>s.y+s.height)return NaN;l=e-s.y,a=s.height}if(this._renderData[t]&&this._renderData[t].xoffsets){let e=this._renderData[t].xoffsets.padding;a-=e.left+e.right,l-=e.left}h=a}return this._smartPlot.scale(l,{min:o,max:h},{min:n.min.valueOf(),max:n.max.valueOf(),type:n.logAxis.enabled?"logarithmic":"linear",base:n.logAxis.base,flip:r.flip})}}getValueAxisValue(e,t){let i=this.seriesGroups[t];if(!i)return;let r=this._getValueAxis(t),s=this._plotRect,a=0,l=NaN;if(i.polar||i.spider){if(isNaN(e.x)||isNaN(e.y))return NaN;let i=this._getPolarAxisCoords(t,s);l=this.renderer._ptdist(e.x,e.y,i.x,i.y),a=i.r,l=a-l}else if("horizontal"===i.orientation){if(e<s.x||e>s.x+s.width)return NaN;l=e-s.x,a=s.width}else{if(e<s.y||e>s.y+s.height)return NaN;l=e-s.y,a=s.height}let n=this._stats.seriesGroups[t];return this._smartPlot.scale(l,{min:0,max:a},{min:n.min.valueOf(),max:n.max.valueOf(),type:n.logarithmic?"logarithmic":"linear",base:n.logBase,flip:!r.flip})}_detectDateFormat(e,t){let i={en_US_d:"M/d/yyyy",en_US_D:"dddd, MMMM dd, yyyy",en_US_t:"h:mm tt",en_US_T:"h:mm:ss tt",en_US_f:"dddd, MMMM dd, yyyy h:mm tt",en_US_F:"dddd, MMMM dd, yyyy h:mm:ss tt",en_US_M:"MMMM dd",en_US_Y:"yyyy MMMM",en_US_S:"yyyy'-'MM'-'dd'T'HH':'mm':'ss",en_CA_d:"dd/MM/yyyy",en_CA_D:"MMMM-dd-yy",en_CA_f:"MMMM-dd-yy h:mm tt",en_CA_F:"MMMM-dd-yy h:mm:ss tt",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",zone1:"yyyy-MM-ddTHH:mm:ss-HH:mm",zone2:"yyyy-MM-ddTHH:mm:ss+HH:mm",custom:"yyyy-MM-ddTHH:mm:ss.fff",custom2:"yyyy-MM-dd HH:mm:ss.fff",de_DE_d:"dd.MM.yyyy",de_DE_D:"dddd, d. MMMM yyyy",de_DE_t:"HH:mm",de_DE_T:"HH:mm:ss",de_DE_f:"dddd, d. MMMM yyyy HH:mm",de_DE_F:"dddd, d. MMMM yyyy HH:mm:ss",de_DE_M:"dd MMMM",de_DE_Y:"MMMM yyyy",fr_FR_d:"dd/MM/yyyy",fr_FR_D:"dddd d MMMM yyyy",fr_FR_t:"HH:mm",fr_FR_T:"HH:mm:ss",fr_FR_f:"dddd d MMMM yyyy HH:mm",fr_FR_F:"dddd d MMMM yyyy HH:mm:ss",fr_FR_M:"d MMMM",fr_FR_Y:"MMMM yyyy",it_IT_d:"dd/MM/yyyy",it_IT_D:"dddd d MMMM yyyy",it_IT_t:"HH:mm",it_IT_T:"HH:mm:ss",it_IT_f:"dddd d MMMM yyyy HH:mm",it_IT_F:"dddd d MMMM yyyy HH:mm:ss",it_IT_M:"dd MMMM",it_IT_Y:"MMMM yyyy",ru_RU_d:"dd.MM.yyyy",ru_RU_D:"d MMMM yyyy '?.'",ru_RU_t:"H:mm",ru_RU_T:"H:mm:ss",ru_RU_f:"d MMMM yyyy '?.' H:mm",ru_RU_F:"d MMMM yyyy '?.' H:mm:ss",ru_RU_Y:"MMMM yyyy",cs_CZ_d:"d.M.yyyy",cs_CZ_D:"d. MMMM yyyy",cs_CZ_t:"H:mm",cs_CZ_T:"H:mm:ss",cs_CZ_f:"d. MMMM yyyy H:mm",cs_CZ_F:"d. MMMM yyyy H:mm:ss",cs_CZ_M:"dd MMMM",cs_CZ_Y:"MMMM yyyy",he_IL_d:"dd MMMM yyyy",he_IL_D:"dddd dd MMMM yyyy",he_IL_t:"HH:mm",he_IL_T:"HH:mm:ss",he_IL_f:"dddd dd MMMM yyyy HH:mm",he_IL_F:"dddd dd MMMM yyyy HH:mm:ss",he_IL_M:"dd MMMM",he_IL_Y:"MMMM yyyy",hr_HR_d:"d.M.yyyy.",hr_HR_D:"d. MMMM yyyy.",hr_HR_t:"H:mm",hr_HR_T:"H:mm:ss",hr_HR_f:"d. MMMM yyyy. H:mm",hr_HR_F:"d. MMMM yyyy. H:mm:ss",hr_HR_M:"d. MMMM",hu_HU_d:"yyyy.MM.dd.",hu_HU_D:"yyyy. MMMM d.",hu_HU_t:"H:mm",hu_HU_T:"H:mm:ss",hu_HU_f:"yyyy. MMMM d. H:mm",hu_HU_F:"yyyy. MMMM d. H:mm:ss",hu_HU_M:"MMMM d.",hu_HU_Y:"yyyy. MMMM",jp_JP_d:"gg y/M/d",jp_JP_D:"gg y'?'M'?'d'?'",jp_JP_t:"H:mm",jp_JP_T:"H:mm:ss",jp_JP_f:"gg y'?'M'?'d'?' H:mm",jp_JP_F:"gg y'?'M'?'d'?' H:mm:ss",jp_JP_M:"M'?'d'?'",jp_JP_Y:"gg y'?'M'?'",lt_LT_d:"yyyy.MM.dd",lt_LT_D:"yyyy 'm.' MMMM d 'd.'",lt_LT_t:"HH:mm",lt_LT_T:"HH:mm:ss",lt_LT_f:"yyyy 'm.' MMMM d 'd.' HH:mm",lt_LT_F:"yyyy 'm.' MMMM d 'd.' HH:mm:ss",lt_LT_M:"MMMM d 'd.'",lt_LT_Y:"yyyy 'm.' MMMM",sa_IN_d:"dd-MM-yyyy",sa_IN_D:"dd MMMM yyyy dddd",sa_IN_t:"HH:mm",sa_IN_T:"HH:mm:ss",sa_IN_f:"dd MMMM yyyy dddd HH:mm",sa_IN_F:"dd MMMM yyyy dddd HH:mm:ss",sa_IN_M:"dd MMMM",basic_y:"yyyy",basic_ym:"yyyy-MM",basic_d:"yyyy-MM-dd",basic_dhm:"yyyy-MM-dd hh:mm",basic_bhms:"yyyy-MM-dd hh:mm:ss",basic2_ym:"MM-yyyy",basic2_d:"MM-dd-yyyy",basic2_dhm:"MM-dd-yyyy hh:mm",basic2_dhms:"MM-dd-yyyy hh:mm:ss",basic3_ym:"yyyy/MM",basic3_d:"yyyy/MM/dd",basic3_dhm:"yyyy/MM/dd hh:mm",basic3_bhms:"yyyy/MM/dd hh:mm:ss",basic4_ym:"MM/yyyy",basic4_d:"MM/dd/yyyy",basic4_dhm:"MM/dd/yyyy hh:mm",basic4_dhms:"MM/dd/yyyy hh:mm:ss"};t&&(i=Object.assign({},i,t));let r=[];Array.isArray(e)?r=e:r.push(e);for(let e in i)i[e]={format:i[e],count:0};for(let e=0;e<r.length;e++){const t=r[e];if(null!=t)for(let e in i)try{(t instanceof Date||Smart.Utilities.DateTime.parseDateString(t,void 0,i[e].format))&&i[e].count++}catch(e){}}let s={key:void 0,count:0};for(let e in i)i[e].count>s.count&&(s.key=e,s.count=i[e].count);return s.key?i[s.key].format:""}_testXAxisDateFormat(e){let t=this,i=t._getXAxis(e),r=t._getDataLen(e),s={};if(t.localization.patterns)for(let e in t.localization.patterns)s["local_"+e]=t.localization.patterns[e];let a=[];for(let s=0;s<r&&s<10;s++){const r=t._getDataValue(s,i.dataField,e);null!=r&&a.push(r)}return t._detectDateFormat(a,s)}_getThemeColor(e){if("light"===this.theme)switch(e){case"background":return"#FFFFFF";case"line":return"#BCBCBC";case"band":return"#AAAAAA"}switch(e){case"background":return"#2E2E2E";case"line":return"#707070";case"band":return"#565656"}}});
34
+ Smart("smart-chart",class extends Smart.BaseElement{static get properties(){return{animationDuration:{value:300,type:"number"},backgroundColor:{value:null,type:"string?"},backgroundImage:{value:"",type:"string"},borderLineColor:{value:null,type:"string?"},borderLineWidth:{value:1,type:"number"},caption:{value:"Caption",type:"string"},clip:{value:!0,type:"boolean"},colorScheme:{value:"scheme01",type:"string"},columnSeriesOverlap:{value:!1,type:"boolean"},crosshairsColor:{value:null,type:"string?"},crosshairsDashStyle:{value:"2,2",type:"string"},crosshairsLineWidth:{value:1,type:"number"},dataSource:{value:[],type:"object",reflectToAttribute:!1},description:{value:"Description",type:"string"},draw:{value:null,type:"function?"},drawBefore:{value:null,type:"function?"},enableAxisTextAnimation:{value:!1,type:"boolean"},enableCrosshairs:{value:!1,type:"boolean"},greyScale:{value:!1,type:"boolean"},legendLayout:{value:{flow:{value:"horizontal",allowedValues:["horizontal","vertical"],type:"string"},height:{value:null,type:"number?"},left:{value:null,type:"number?"},top:{value:null,type:"number?"},width:{value:null,type:"number?"}},type:"object?"},localization:{value:{decimalSeparator:{value:".",type:"string"},patterns:{value:null,type:"object?"},thousandsSeparator:{value:"",type:"string"}},type:"object"},messages:{value:{en:{invalidRadiusDataField:"smart-chart: Invalid radiusDataField value at [{{index}}]",invalidSeries:"smart-chart: Invalid property: each series group must have a 'series' property which must be a valid array.",invalidSeriesGroups:"smart-chart: Invalid property: 'seriesGroups' property is required and must be a valid array.",invalidType:'smart-chart: Invalid serie type "{{type}}".',missingAxis:"smart-chart: seriesGroup[{{index}}] is missing {{axis}} definition.",missingReference:"smart-chart: Missing reference to {{files}}.",missingType:"smart-chart: Invalid property: each series group must have a valid 'type' property."}},type:"object",extend:!0},padding:{value:{bottom:{value:5,type:"number"},left:{value:5,type:"number"},right:{value:5,type:"number"},top:{value:5,type:"number"}},type:"object"},renderEngine:{value:"",allowedValues:["","SVG","HTML5"],type:"string"},rightToLeft:{value:!1,type:"boolean"},seriesGroups:{value:[],type:"any",reflectToAttribute:!1},showBorderLine:{value:!0,type:"boolean"},showLegend:{value:!0,type:"boolean"},showToolTips:{value:!0,type:"boolean"},showToolTipsOnAllSeries:{value:!1,type:"boolean"},theme:{value:"light",allowedValues:["light","dark"],type:"string"},titlePadding:{value:{bottom:{value:10,type:"number"},left:{value:5,type:"number"},right:{value:5,type:"number"},top:{value:5,type:"number"}},type:"object"},toolTipBackground:{value:null,type:"string?"},toolTipFormatFunction:{value:null,type:"function?"},toolTipHideDelay:{value:4e3,type:"number"},toolTipLineColor:{value:null,type:"string?"},toolTipShowDelay:{value:300,type:"number"},valueAxis:{value:{alternatingBackgroundColor:{value:"",type:"string"},alternatingBackgroundColor2:{value:"",type:"string"},alternatingBackgroundOpacity:{value:1,type:"number"},axisSize:{value:null,type:"any"},bands:{value:null,type:"array?"},baselineValue:{value:0,type:"any"},customDraw:{value:!1,type:"boolean"},flip:{value:!1,type:"boolean"},formatFunction:{value:null,type:"function?"},formatSettings:{value:{dateFormat:{value:null,type:"string?"},decimalPlaces:{value:null,type:"number?"},decimalSeparator:{value:null,type:"string?"},negativeWithBrackets:{value:!1,type:"boolean"},prefix:{value:"",type:"string"},sufix:{value:"",type:"string"},thousandsSeparator:{value:null,type:"string?"}},type:"object"},gridLines:{value:{color:{value:"",type:"string"},custom:{value:null,type:"array?"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},visible:{value:!0,type:"any"}},type:"object"},labels:{value:{angle:{value:0,type:"number"},autoRotate:{value:!1,type:"boolean"},class:{value:null,type:"string?"},custom:{value:null,type:"array?"},formatFunction:{value:null,type:"function?"},formatSettings:{value:{dateFormat:{value:null,type:"string?"},decimalPlaces:{value:null,type:"number?"},decimalSeparator:{value:null,type:"string?"},negativeWithBrackets:{value:!1,type:"boolean"},prefix:{value:"",type:"string"},sufix:{value:"",type:"string"},thousandsSeparator:{value:null,type:"string?"}},type:"object"},horizontalAlignment:{value:"center",allowedValues:["left","center","right"],type:"string"},offset:{value:{x:{value:0,type:"number"},y:{value:0,type:"number"}},type:"object"},rotationPoint:{value:"auto",allowedValues:["auto","left","center","right","topleft","topcenter","topright","bottomleft","bottomcenter","bottomright","centermiddle"],type:"string"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},verticalAlignment:{value:"center",allowedValues:["top","center","bottom"],type:"string"},visible:{value:!0,type:"any"}},type:"object"},line:{value:{color:{value:"",type:"string"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},visible:{value:!0,type:"any"}},type:"object"},logarithmicScale:{value:!1,type:"boolean"},logarithmicScaleBase:{value:10,type:"number"},maxValue:{value:NaN,type:"any"},minValue:{value:NaN,type:"any"},padding:{value:{bottom:{value:0,type:"number"},left:{value:0,type:"number"},right:{value:0,type:"number"},top:{value:0,type:"number"}},type:"object"},position:{value:"left",allowedValues:["left","right","top","bottom"],type:"string"},textRotationAngle:{value:null,type:"number?"},textRotationPoint:{value:"auto",allowedValues:["auto","left","center","right","topleft","topcenter","topright","bottomleft","bottomcenter","bottomright","centermiddle"],type:"string"},tickMarks:{value:{color:{value:"",type:"string"},custom:{value:null,type:"array?"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},size:{value:4,type:"number"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},visible:{value:!0,type:"any"}},type:"object"},title:{value:{class:{value:null,type:"string?"},horizontalAlignment:{value:"center",allowedValues:["left","center","right"],type:"string"},text:{value:"",type:"string"},verticalAlignment:{value:"center",allowedValues:["top","center","bottom"],type:"string"},visible:{value:!0,type:"boolean"}},type:"object"},unitInterval:{value:null,type:"number?"},valuesOnTicks:{value:!0,type:"boolean"},visible:{value:!0,type:"boolean"}},type:"object"},xAxis:{value:{alternatingBackgroundColor:{value:"",type:"string"},alternatingBackgroundColor2:{value:"",type:"string"},alternatingBackgroundOpacity:{value:1,type:"number"},axisSize:{value:null,type:"any"},bands:{value:null,type:"array?"},baseUnit:{value:null,allowedValues:["year","month","day","hour","minute","second","millisecond",null],type:"string?"},customDraw:{value:!1,type:"boolean"},dataField:{value:"",type:"string"},dateFormat:{value:null,type:"string?"},displayText:{value:null,type:"string?"},flip:{value:!1,type:"boolean"},formatFunction:{value:null,type:"function?"},formatSettings:{value:{dateFormat:{value:null,type:"string?"},decimalPlaces:{value:null,type:"number?"},decimalSeparator:{value:null,type:"string?"},negativeWithBrackets:{value:!1,type:"boolean"},prefix:{value:"",type:"string"},sufix:{value:"",type:"string"},thousandsSeparator:{value:null,type:"string?"}},type:"object"},gridLines:{value:{color:{value:"",type:"string"},custom:{value:null,type:"array?"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},visible:{value:!0,type:"any"}},type:"object"},labels:{value:{angle:{value:0,type:"number"},autoRotate:{value:!1,type:"boolean"},class:{value:null,type:"string?"},custom:{value:null,type:"array?"},formatFunction:{value:null,type:"function?"},formatSettings:{value:{dateFormat:{value:null,type:"string?"},decimalPlaces:{value:null,type:"number?"},decimalSeparator:{value:null,type:"string?"},negativeWithBrackets:{value:!1,type:"boolean"},prefix:{value:"",type:"string"},sufix:{value:"",type:"string"},thousandsSeparator:{value:null,type:"string?"}},type:"object"},horizontalAlignment:{value:"center",allowedValues:["left","center","right"],type:"string"},offset:{value:{x:{value:0,type:"number"},y:{value:0,type:"number"}},type:"object"},rotationPoint:{value:"auto",allowedValues:["auto","left","center","right","topleft","topcenter","topright","bottomleft","bottomcenter","bottomright","centermiddle"],type:"string"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},verticalAlignment:{value:"center",allowedValues:["top","center","bottom"],type:"string"},visible:{value:!0,type:"any"}},type:"object"},line:{value:{color:{value:"",type:"string"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},visible:{value:!0,type:"any"}},type:"object"},logarithmicScale:{value:!1,type:"boolean"},logarithmicScaleBase:{value:10,type:"number"},maxValue:{value:NaN,type:"any"},minValue:{value:NaN,type:"any"},padding:{value:{bottom:{value:0,type:"number"},left:{value:0,type:"number"},right:{value:0,type:"number"},top:{value:0,type:"number"}},type:"object"},position:{value:"bottom",allowedValues:["bottom","top","left","right"],type:"string"},rangeSelector:{value:{backgroundColor:{value:null,type:"string?"},backgroundImage:{value:"",type:"string"},baseUnit:{value:null,allowedValues:["year","month","day","hour","minute","second","millisecond",null],type:"string?"},borderLineColor:{value:null,type:"string?"},borderLineWidth:{value:null,type:"number?"},caption:{value:"",type:"string"},colorScheme:{value:null,type:"string?"},columnSeriesOverlap:{value:!1,type:"boolean"},columnsGapPercent:{value:25,type:"number"},dataField:{value:null,type:"string?"},description:{value:"",type:"string"},greyScale:{value:null,type:"boolean?"},gridLines:{value:{color:{value:"",type:"string"},custom:{value:null,type:"array?"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},visible:{value:!0,type:"any"}},type:"object"},labels:{value:{angle:{value:0,type:"number"},autoRotate:{value:!1,type:"boolean"},class:{value:null,type:"string?"},custom:{value:null,type:"array?"},formatFunction:{value:null,type:"function?"},formatSettings:{value:{dateFormat:{value:null,type:"string?"},decimalPlaces:{value:null,type:"number?"},decimalSeparator:{value:null,type:"string?"},negativeWithBrackets:{value:!1,type:"boolean"},prefix:{value:"",type:"string"},sufix:{value:"",type:"string"},thousandsSeparator:{value:null,type:"string?"}},type:"object"},horizontalAlignment:{value:"center",allowedValues:["left","center","right"],type:"string"},offset:{value:{x:{value:0,type:"number"},y:{value:0,type:"number"}},type:"object"},rotationPoint:{value:"auto",allowedValues:["auto","left","center","right","topleft","topcenter","topright","bottomleft","bottomcenter","bottomright","centermiddle"],type:"string"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},verticalAlignment:{value:"center",allowedValues:["top","center","bottom"],type:"string"},visible:{value:!0,type:"any"}},type:"object"},maxValue:{value:NaN,type:"any"},minValue:{value:NaN,type:"any"},padding:{value:{bottom:{value:0,type:"number"},left:{value:0,type:"number"},right:{value:0,type:"number"},top:{value:0,type:"number"}},type:"object"},position:{value:null,allowedValues:["bottom","top","left","right"],type:"string?"},renderTo:{value:null,type:"any"},rightToLeft:{value:null,type:"boolean?"},seriesGapPercent:{value:10,type:"number"},seriesGroups:{value:null,type:"array?"},serieType:{value:"area",type:"string"},showBorderLine:{value:null,type:"boolean?"},size:{value:null,type:"number?"},skipOverlappingPoints:{value:!0,type:"boolean"},titlePadding:{value:{bottom:{value:10,type:"number"},left:{value:5,type:"number"},right:{value:5,type:"number"},top:{value:5,type:"number"}},type:"object"},unitInterval:{value:null,type:"number?"},valueAxis:{value:{alternatingBackgroundColor:{value:"",type:"string"},alternatingBackgroundColor2:{value:"",type:"string"},alternatingBackgroundOpacity:{value:1,type:"number"},axisSize:{value:null,type:"any"},bands:{value:null,type:"array?"},baselineValue:{value:0,type:"any"},customDraw:{value:!1,type:"boolean"},flip:{value:!1,type:"boolean"},formatFunction:{value:null,type:"function?"},formatSettings:{value:{dateFormat:{value:null,type:"string?"},decimalPlaces:{value:null,type:"number?"},decimalSeparator:{value:null,type:"string?"},negativeWithBrackets:{value:!1,type:"boolean"},prefix:{value:"",type:"string"},sufix:{value:"",type:"string"},thousandsSeparator:{value:null,type:"string?"}},type:"object"},gridLines:{value:{color:{value:"",type:"string"},custom:{value:null,type:"array?"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},visible:{value:!0,type:"any"}},type:"object"},labels:{value:{angle:{value:0,type:"number"},autoRotate:{value:!1,type:"boolean"},class:{value:null,type:"string?"},custom:{value:null,type:"array?"},formatFunction:{value:null,type:"function?"},formatSettings:{value:{dateFormat:{value:null,type:"string?"},decimalPlaces:{value:null,type:"number?"},decimalSeparator:{value:null,type:"string?"},negativeWithBrackets:{value:!1,type:"boolean"},prefix:{value:"",type:"string"},sufix:{value:"",type:"string"},thousandsSeparator:{value:null,type:"string?"}},type:"object"},horizontalAlignment:{value:"center",allowedValues:["left","center","right"],type:"string"},offset:{value:{x:{value:0,type:"number"},y:{value:0,type:"number"}},type:"object"},rotationPoint:{value:"auto",allowedValues:["auto","left","center","right","topleft","topcenter","topright","bottomleft","bottomcenter","bottomright","centermiddle"],type:"string"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},verticalAlignment:{value:"center",allowedValues:["top","center","bottom"],type:"string"},visible:{value:!0,type:"any"}},type:"object"},line:{value:{color:{value:"",type:"string"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},visible:{value:!0,type:"any"}},type:"object"},logarithmicScale:{value:!1,type:"boolean"},logarithmicScaleBase:{value:10,type:"number"},maxValue:{value:NaN,type:"any"},minValue:{value:NaN,type:"any"},padding:{value:{bottom:{value:0,type:"number"},left:{value:0,type:"number"},right:{value:0,type:"number"},top:{value:0,type:"number"}},type:"object"},position:{value:"left",allowedValues:["left","right","top","bottom"],type:"string"},textRotationAngle:{value:null,type:"number?"},textRotationPoint:{value:"auto",allowedValues:["auto","left","center","right","topleft","topcenter","topright","bottomleft","bottomcenter","bottomright","centermiddle"],type:"string"},tickMarks:{value:{color:{value:"",type:"string"},custom:{value:null,type:"array?"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},size:{value:4,type:"number"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},visible:{value:!0,type:"any"}},type:"object"},title:{value:{class:{value:null,type:"string?"},horizontalAlignment:{value:"center",allowedValues:["left","center","right"],type:"string"},text:{value:"",type:"string"},verticalAlignment:{value:"center",allowedValues:["top","center","bottom"],type:"string"},visible:{value:!0,type:"boolean"}},type:"object"},unitInterval:{value:null,type:"number?"},valuesOnTicks:{value:!0,type:"boolean"},visible:{value:!1,type:"boolean"}},type:"object"},visible:{value:!1,type:"boolean"}},type:"object"},textRotationAngle:{value:null,type:"number?"},textRotationPoint:{value:"auto",allowedValues:["auto","left","center","right","topleft","topcenter","topright","bottomleft","bottomcenter","bottomright","centermiddle"],type:"string"},tickMarks:{value:{color:{value:"",type:"string"},custom:{value:null,type:"array?"},dashStyle:{value:"",type:"string"},lineWidth:{value:1,type:"number"},size:{value:4,type:"number"},step:{value:null,type:"number?"},unitInterval:{value:null,type:"number?"},visible:{value:!0,type:"any"}},type:"object"},title:{value:{class:{value:null,type:"string?"},horizontalAlignment:{value:"center",allowedValues:["left","center","right"],type:"string"},text:{value:"",type:"string"},verticalAlignment:{value:"center",allowedValues:["top","center","bottom"],type:"string"},visible:{value:!0,type:"boolean"}},type:"object"},toolTipFormatFunction:{value:null,type:"function?"},toolTipFormatSettings:{value:{dateFormat:{value:null,type:"string?"},decimalPlaces:{value:null,type:"number?"},decimalSeparator:{value:null,type:"string?"},negativeWithBrackets:{value:!1,type:"boolean"},prefix:{value:"",type:"string"},sufix:{value:"",type:"string"},thousandsSeparator:{value:null,type:"string?"}},type:"object"},type:{value:"auto",allowedValues:["auto","date","basic","linear"],type:"string"},unitInterval:{value:null,type:"number?"},valuesOnTicks:{value:!0,type:"boolean"},visible:{value:!0,type:"boolean"}},type:"object",reflectToAttribute:!1}}}get _legendLayout(){const e=this.legendLayout;return null!==e.height||null!==e.left||null!==e.top||null!==e.width||"vertical"===e.flow}_getFormatSettings(e,t){if(!e)return null;const i=e[t||"formatSettings"];return i&&(i.dateFormat||null!==i.decimalPlaces||i.decimalSeparator||i.negativeWithBrackets||i.prefix||i.sufix||i.thousandsSeparator)?i:null}static get listeners(){return{click:"_clickHandler",down:"_downMoveHandler",mouseleave:"_mouseleaveHandler",move:"_moveHandler",resize:"_resizeHandler","document.move":"_downMoveHandler","document.up":"_documentUpHandler"}}static get requires(){return{"Smart.Utilities.Draw":"smart.draw.js"}}static get styleUrls(){return["smart.chart.css"]}template(){return'<div role="presentation"></div>'}ready(){super.ready(),this.checkLicense()}render(){const e=this;e._observeSeriesGroups(),e._isTouchDevice=Smart.Utilities.Core.isMobile,e._setDefaults(),e._createColorsCache(),e.refresh(),e._setAriaProperties(),super.render()}attached(){const e=this;super.attached(),e.isCompleted&&!e._isRangeSelectorInstance&&Object.values(e._rangeSelectorInstances).forEach((e=>{e.parentDiv.parentDiv.appendChild(e.parentDiv)}))}detached(){const e=this;super.detached(),e._isRangeSelectorInstance||(e._ttEl&&e._ttEl.box&&e._ttEl.box.remove(),delete e._ttEl,Object.values(e._rangeSelectorInstances).forEach((e=>{e.parentDiv.remove()})))}_setAriaProperties(){const e=this;if(e._isRangeSelectorInstance)return;const t=e.xAxis,i=e.valueAxis,r=e.seriesGroups;let s=e.$.content.children[1],a="",l=!0;function n(e,t){e&&(e.title&&e.title.text||e.description||e.dataField)&&(a+='; "',e.title&&e.title.text?a+=e.title.text:a+=e.description||e.dataField,a+='" on the '+t,isNaN(e.minValue)||(a+=" from "+e.minValue),isNaN(e.maxValue)||(a+=" up to "+e.maxValue))}e.setAttribute("role","figure"),s||(s=document.createElement("div"),s.id=e.id+"DescriptionContainer",s.className="smart-hidden",e.$.content.appendChild(s)),e.setAttribute("aria-labelledby",e.id+"TitleText"),e.setAttribute("aria-describedby",e.id+"TitleDescription "+s.id),a+="This chart displays:",n(t,"x-axis"),n(i,"y-axis");for(let e=0;e<r.length;e++){const t=r[e];if(n(t.valueAxis,"y-axis"),t.series){l=l&&"horizontal"===t.orientation;for(let i=0;i<t.series.length;i++){const r=t.series[i];0===i&&(a+=0===e?" for ":"; "),a+='"'+(r.displayText||r.dataField)+'"',i!==t.series.length-1&&(a+=", ")}}}a=a.replace(":;",":"),a=a.replace(/<.+?>/g,""),l&&(a=a.replace(/x-axis/g,"@@@"),a=a.replace(/y-axis/g,"x-axis"),a=a.replace(/@@@/g,"y-axis")),e.description&&(a="; "+a),s.innerHTML=a}_observeSeriesGroups(){const e=this;function t(t){e.context!==e&&t.newValue!==t.oldValue&&e.update()}if(e._validateSeriesGroups(),Array.isArray(e.seriesGroups)){e.seriesGroups=new Smart.ObservableArray(e.seriesGroups),e.seriesGroups.canNotify=!0;for(let i=0;i<e.seriesGroups.length;i++)Array.isArray(e.seriesGroups[i].series)&&(e.seriesGroups[i].series=new Smart.ObservableArray(e.seriesGroups[i].series),e.seriesGroups[i].series.canNotify=!0,e.seriesGroups[i].series.notify(t));e.seriesGroups.notify(t)}}_downMoveHandler(e){const t=this;let i=e.originalEvent.target;t.shadowRoot&&i===t&&(i=e.originalEvent.composedPath()[0]);const r=i.closest(".smart-chart-range-selector");if(!r)return;const s=r.firstElementChild,a=s.parentChart;t!==s&&t!==a||a["_onSliderMouse"+e.type.slice(0,1).toUpperCase()+e.type.slice(1)](e)}_documentUpHandler(e){const t=this;t._draggingRangeSelector&&t._onSliderMouseUp(e)}_setDefaults(){const e=this;e.axisPadding=5,e.enableEvents=!0,e.enableSampling=!0,e._itemsToggleState=[],e._isToggleRefresh=!1,e._isSelectorRefresh=!1,e._sliders=[],e._selectorRange=[],e._rangeSelectorInstances={},e._resizeState={},e._isRangeSelectorInstance=e._isRangeSelectorInstance||!1,e._renderData={},e._smartPlot=null,e._animTickInt=50,e._seriesTypes=["line","stackedline","stackedline100","spline","stackedspline","stackedspline100","stepline","stackedstepline","stackedstepline100","area","stackedarea","stackedarea100","splinearea","stackedsplinearea","stackedsplinearea100","steparea","stackedsteparea","stackedsteparea100","rangearea","splinerangearea","steprangearea","column","stackedcolumn","stackedcolumn100","rangecolumn","scatter","stackedscatter","stackedscatter100","bubble","stackedbubble","stackedbubble100","pie","donut","candlestick","ohlc","waterfall","stackedwaterfall"],e.colorSchemes=[{name:"scheme01",colors:["#307DD7","#AA4643","#89A54E","#71588F","#4198AF"]},{name:"scheme02",colors:["#7FD13B","#EA157A","#FEB80A","#00ADDC","#738AC8"]},{name:"scheme03",colors:["#E8601A","#FF9639","#F5BD6A","#599994","#115D6E"]},{name:"scheme04",colors:["#D02841","#FF7C41","#FFC051","#5B5F4D","#364651"]},{name:"scheme05",colors:["#25A0DA","#309B46","#8EBC00","#FF7515","#FFAE00"]},{name:"scheme06",colors:["#0A3A4A","#196674","#33A6B2","#9AC836","#D0E64B"]},{name:"scheme07",colors:["#CC6B32","#FFAB48","#FFE7AD","#A7C9AE","#888A63"]},{name:"scheme08",colors:["#3F3943","#01A2A6","#29D9C2","#BDF271","#FFFFA6"]},{name:"scheme09",colors:["#1B2B32","#37646F","#A3ABAF","#E1E7E8","#B22E2F"]},{name:"scheme10",colors:["#5A4B53","#9C3C58","#DE2B5B","#D86A41","#D2A825"]},{name:"scheme11",colors:["#993144","#FFA257","#CCA56A","#ADA072","#949681"]},{name:"scheme12",colors:["#105B63","#EEEAC5","#FFD34E","#DB9E36","#BD4932"]},{name:"scheme13",colors:["#BBEBBC","#F0EE94","#F5C465","#FA7642","#FF1E54"]},{name:"scheme14",colors:["#60573E","#F2EEAC","#BFA575","#A63841","#BFB8A3"]},{name:"scheme15",colors:["#444546","#FFBB6E","#F28D00","#D94F00","#7F203B"]},{name:"scheme16",colors:["#583C39","#674E49","#948658","#F0E99A","#564E49"]},{name:"scheme17",colors:["#142D58","#447F6E","#E1B65B","#C8782A","#9E3E17"]},{name:"scheme18",colors:["#4D2B1F","#635D61","#7992A2","#97BFD5","#BFDCF5"]},{name:"scheme19",colors:["#844341","#D5CC92","#BBA146","#897B26","#55591C"]},{name:"scheme20",colors:["#56626B","#6C9380","#C0CA55","#F07C6C","#AD5472"]},{name:"scheme21",colors:["#96003A","#FF7347","#FFBC7B","#FF4154","#642223"]},{name:"scheme22",colors:["#5D7359","#E0D697","#D6AA5C","#8C5430","#661C0E"]},{name:"scheme23",colors:["#16193B","#35478C","#4E7AC7","#7FB2F0","#ADD5F7"]},{name:"scheme24",colors:["#7B1A25","#BF5322","#9DA860","#CEA457","#B67818"]},{name:"scheme25",colors:["#0081DA","#3AAFFF","#99C900","#FFEB3D","#309B46"]},{name:"scheme26",colors:["#0069A5","#0098EE","#7BD2F6","#FFB800","#FF6800"]},{name:"scheme27",colors:["#FF6800","#A0A700","#FF8D00","#678900","#0069A5"]},{name:"scheme28",colors:["#3A43BA","#281E5D","#48AAAD","#0492C2","#1E456E","#59788D","#52B2C0","#82EDFD"]},{name:"scheme29",colors:["#003F5C","#BC5090","#58508D","#FF6361","#FFA600"]},{name:"scheme30",colors:["#16736F","#A2D56A","#1C515C","#62B773","#EEEF63","#1F313F","#309577"]},{name:"scheme31",colors:["#74CC66","#191A4D","#2D867A","#EEE3CD","#224D19","#0D261B","#5771C7","#B6D7E7","#206052","#6B5724","#C3AF4B","#603620","#536722","#B6E7B9","#34819D","#94ACDB"]},{name:"scheme32",colors:["#87C5FF","#5B5B60","#9BE076","#F7A384","#7479D3","#F13A80","#E4D388","#2BC6B2","#F45B14"]}]}_clickHandler(e){const t=this;if(t.disabled||t._isRangeSelectorInstance)return;let i=e.pageX||e.clientX||e.screenX,r=e.pageY||e.clientY||e.screenY;const s=t.getBoundingClientRect();t._isTouchDevice&&(i=e.pageX,r=e.pageY),i-=s.left,r-=s.top,t._mouseX=i,t._mouseY=r,!isNaN(t._lastClickTs)&&(new Date).valueOf()-t._lastClickTs<100||(this._hostClickTimer=setTimeout((function(){if(t._isTouchDevice||(t._cancelTooltipTimer(),t._hideToolTip(),t._unselect()),t._pointMarker&&t._pointMarker.element){const i=t.seriesGroups[t._pointMarker.gidx],r=i.series[t._pointMarker.sidx];e.stopImmediatePropagation(),t._raiseItemEvent("click",i,r,t._pointMarker.iidx)}}),100),"HTML5"===t.renderEngine&&t._canvasClickHandler(i,r))}_canvasClickHandler(e,t){const i=this,r=i.renderer._elements;let s;for(let i in r)if(Object.prototype.hasOwnProperty.call(r,i)&&"0"!==i){const a=r[i];if(t>a.y&&t<a.y+a.height&&e>a.x&&e<a.x+a.width){s=a;break}}if(s&&s.purpose&&"legend-toggle"===s.purpose){const e=s.data;i._toggleSerie(e.groupIndex,e.seriesIndex,e.itemIndex)}}_mouseleaveHandler(){const e=this;if(e.disabled||e._isRangeSelectorInstance)return;const t=e._mouseX,i=e._mouseY,r=e._plotRect;r&&t>=r.x&&t<=r.x+r.width&&i>=r.y&&i<=r.y+r.height||(e._cancelTooltipTimer(),e._hideToolTip(0),e._unselect())}_moveHandler(e){const t=this;if(t.disabled)return;if(t._isRangeSelectorInstance){const i=t.parentChart;null===i.xAxis.rangeSelector.renderTo&&(i._unselect(),i._hideToolTip()),"touchmove"===e.originalEvent.type&&e.originalEvent.preventDefault()}else t.style.cursor="default";let i=e.pageX||e.clientX||e.screenX,r=e.pageY||e.clientY||e.screenY;const s=t.getBoundingClientRect();t._isTouchDevice&&(i=e.pageX,r=e.pageY),i-=s.left,r-=s.top,t.onmousemove(i,r)}_resizeHandler(){const e=this,t=e.animation;e._isRangeSelectorInstance||(e.animation="none",e.refresh(),e.animation=t)}propertyChangedHandler(e,t,i){const r=this;switch(e){case"animation":case"theme":r._ttEl&&r._ttEl.box.setAttribute(e,i);break;case"rightToLeft":if(!r._ttEl||!r._ttEl.box)break;i?r._ttEl.box.setAttribute("right-to-left",i):r._ttEl.box.removeAttribute("right-to-left");break;case"seriesGroups":r._observeSeriesGroups();break;case"xAxis_rangeSelector_renderTo":if(null===i){const e=t.getElementsByClassName("smart-chart-range-selector")[0];e.parentElement.removeChild(e)}}this.refresh()}_initRenderer(){const e=this;e._draw=new Smart.Utilities.Draw(e.$.content,e.renderEngine),e.renderer=e._draw.renderer,e._smartPlot||(e._smartPlot=new Smart.Utilities.Plot(e.renderer)),e.$.content.firstElementChild.setAttribute("role","presentation")}_internalRefresh(){const e=this;if(!(e.offsetWidth||e.offsetHeight||e.getClientRects().length))return;e._stopAnimations(),e.renderer&&(e._isToggleRefresh||e._isUpdate)||(e._hideToolTip(0),e.$.content.innerHTML="",e._initRenderer());const t=e.renderer;if(!t)return;const i=t.getRect();e._render({x:1,y:1,width:i.width,height:i.height}),this.$.fireEvent("refreshBegin",{instance:this}),t instanceof Smart.Utilities.HTML5Renderer&&t.refresh(),e._isUpdate=!1,this.$.fireEvent("refreshEnd",{instance:this})}saveAsPNG(e){return this._saveAsImage("png",e)}saveAsJPEG(e){return this._saveAsImage("jpeg",e)}saveAsPDF(e,t){return this._saveAsImage("pdf",e,t)}print(){return this._saveAsImage("print")}_saveAsImage(e,t,i){const r=this;return r._draw._widgetToImage(r,e,t,r._hasRangeSelector?r._selectorSaveAsImageCallback:void 0,i)}_selectorSaveAsImageCallback(e,t){let i=e;for(let e=0;e<i.seriesGroups.length;e++){let r=i._getXAxis(e);if(!r||!r.rangeSelector||!r.rangeSelector.visible||r.rangeSelector.renderTo)continue;let s=i._rangeSelectorInstances[e];if(!s)continue;let a=s.renderer.getRect(),l=s.renderer.getContainer().getElementsByTagName("canvas")[0].getContext("2d"),n=i._sliders[e],o="horizontal"===i.seriesGroups[e].orientation,h=o?"height":"width",d=o?"width":"height",u=o?"y":"x",g=o?"x":"y",f={};f[u]=n.startOffset+n.rect[u],f[g]=n.rect[g],f[h]=n.endOffset-n.startOffset,f[d]=n.rect[d];let p=r.rangeSelector.colorSelectedRange||"blue",c=r.rangeSelector.colorRangeLine||"grey",m=[];m.push(s.renderer.rect(f.x,f.y,f.width,f.height,{fill:p,opacity:.1}));const y=i.renderer;o?(m.push(s.renderer.line(y._ptrnd(n.rect.x+n.rect.width),y._ptrnd(n.rect.y),y._ptrnd(n.rect.x+n.rect.width),y._ptrnd(f.y),{stroke:c,opacity:.5})),m.push(s.renderer.line(y._ptrnd(n.rect.x+n.rect.width),y._ptrnd(f.y+f.height),y._ptrnd(n.rect.x+n.rect.width),y._ptrnd(n.rect.y+n.rect.height),{stroke:c,opacity:.5})),m.push(s.renderer.line(y._ptrnd(n.rect.x),y._ptrnd(f.y),y._ptrnd(n.rect.x+n.rect.width),y._ptrnd(f.y),{stroke:c,opacity:.5})),m.push(s.renderer.line(y._ptrnd(n.rect.x),y._ptrnd(f.y+f.height),y._ptrnd(n.rect.x+n.rect.width),y._ptrnd(f.y+f.height),{stroke:c,opacity:.5}))):(m.push(s.renderer.line(y._ptrnd(n.rect.x),y._ptrnd(n.rect.y),y._ptrnd(f.x),y._ptrnd(n.rect.y),{stroke:c,opacity:.5})),m.push(s.renderer.line(y._ptrnd(f.x+f.width),y._ptrnd(n.rect.y),y._ptrnd(n.rect.x+n.rect.width),y._ptrnd(n.rect.y),{stroke:c,opacity:.5})),m.push(s.renderer.line(y._ptrnd(f.x),y._ptrnd(n.rect.y),y._ptrnd(f.x),y._ptrnd(n.rect.y+n.rect.height),{stroke:c,opacity:.5})),m.push(s.renderer.line(y._ptrnd(f.x+f.width),y._ptrnd(n.rect.y),y._ptrnd(f.x+f.width),y._ptrnd(n.rect.y+n.rect.height),{stroke:c,opacity:.5}))),s.renderer.refresh();let _=l.getImageData(a.x,a.y,a.width,a.height);const x=t.getContext("2d"),v=i.getBoundingClientRect(),b=s.getBoundingClientRect();x.putImageData(_,b.left-v.left,b.top-v.top,1,1,a.width,a.height);for(let e=0;e<m.length;e++)s.renderer.removeElement(m[e]);s.renderer.refresh()}return!0}refresh(){this._internalRefresh(),this._setAriaProperties()}update(){this._isUpdate=!0,this._internalRefresh()}clear(){const e=this;e.caption="",e.description="",e.refresh()}_validateSeriesGroups(){const e=this;Array.isArray(this.seriesGroups)||e.seriesGroups instanceof Smart.ObservableArray||e.error(e.localize("invalidSeriesGroups"));for(let t=0;t<this.seriesGroups.length;t++){const i=this.seriesGroups[t];i.type||e.error(e.localize("missingType")),Array.isArray(i.series)||i.series instanceof Smart.ObservableArray||e.error(e.localize("invalidSeries"))}}_render(e){var t=this,i=t.renderer;t._colorsCache.clear(),!t._isToggleRefresh&&t._isUpdate&&t._renderData&&t._renderDataClone(),t._renderData=[],i.clear(),t._unselect(),t._hideToolTip(0);var r=t.backgroundImage;t.style.backgroundImage=null==r||""===r?"":-1!==r.indexOf("(")?r:'url("'+r+'")',t._rect=e;var s=t.padding||{left:5,top:5,right:5,bottom:5},a=i.createClipRect(e),l=i.beginGroup();i.setClip(l,a);var n=i.rect(e.x,e.y,e.width-2,e.height-2);if(null==r||""===r?i.attr(n,{fill:t.backgroundColor||t._getThemeColor("background")}):i.attr(n,{fill:"transparent"}),!1!==t.showBorderLine){var o=this.borderLineWidth;(isNaN(o)||o<0||o>10)&&(o=1),i.attr(n,{"stroke-width":o,stroke:t.borderLineColor||t._getThemeColor("line")})}"function"==typeof t.drawBefore&&t.drawBefore(i,e);var h={x:s.left,y:s.top,width:e.width-s.left-s.right,height:e.height-s.top-s.bottom};t._paddedRect=h;var d,u=t.titlePadding||{left:2,top:2,right:2,bottom:2};t.caption&&t.caption.length>0&&(d=i.measureText(t.caption,0,{class:"smart-chart-title-text"}),i.text(t.caption,h.x+u.left,h.y+u.top,h.width-(u.left+u.right),d.height,0,{class:"smart-chart-title-text"},!0,"center","center").id=t.id+"TitleText",h.y+=d.height,h.height-=d.height),t.description&&t.description.length>0&&(d=i.measureText(t.description,0,{class:"smart-chart-title-description"}),i.text(t.description,h.x+u.left,h.y+u.top,h.width-(u.left+u.right),d.height,0,{class:"smart-chart-title-description"},!0,"center","center").id=t.id+"TitleDescription",h.y+=d.height,h.height-=d.height),(t.caption||t.description)&&(h.y+=u.bottom+u.top,h.height-=u.bottom+u.top);var g={x:h.x,y:h.y,width:h.width,height:h.height};t._plotRect=g,t._buildStats(g);var f,p=t._isPieOnlySeries(),c=t.seriesGroups,m={xAxis:{},valueAxis:{}};for(let e=0;e<c.length&&!p;e++){if("pie"===c[e].type||"donut"===c[e].type)continue;var y=t._getXAxis(e);y||t.error(t.localize("missingAxis",{index:e,axis:"xAxis"}));let i=y===t._getXAxis()?-1:e;m.xAxis[i]=0}var _=t.axisPadding;isNaN(_)&&(_=5);var x={left:0,right:0,leftCount:0,rightCount:0},v=[];for(let e=0;e<c.length;e++){const i=c[e];if("pie"===i.type||"donut"===i.type||!0===i.spider||!0===i.polar){v.push({width:0,position:0,xRel:0});continue}f="horizontal"===i.orientation;let r=t._getXAxis(e),s=r===t._getXAxis()?-1:e;var b=t._getValueAxis(e),N=b===t._getValueAxis()?-1:e,M=f?r.axisSize:b.axisSize,A={x:0,y:g.y,width:g.width,height:g.height},w=f?t._getXAxis(e).position:b.position;M&&"auto"!==M||(f?(M=this._renderXAxis(e,A,!0,g).width,1==(1&m.xAxis[s])?M=0:M>0&&(m.xAxis[s]|=1)):(M=t._renderValueAxis(e,A,!0,g).width,1==(1&m.valueAxis[N])?M=0:M>0&&(m.valueAxis[N]|=1))),"left"!==w&&!0===t.rightToLeft&&(w="right"),"right"!==w&&(w="left"),x[w+"Count"]>0&&x[w]>0&&M>0&&(x[w]+=_),v.push({width:M,position:w,xRel:x[w]}),x[w]+=M,x[w+"Count"]++}var S=Math.max(1,Math.max(e.width,e.height)),C={top:0,bottom:0,topCount:0,bottomCount:0},k=[];for(let e=0;e<c.length;e++){const i=c[e];if("pie"===i.type||"donut"===i.type||!0===i.spider||!0===i.polar){k.push({height:0,position:0,yRel:0});continue}f="horizontal"===i.orientation;let r=this._getValueAxis(e),s=r===t._getValueAxis()?-1:e,a=t._getXAxis(e),l=a===t._getXAxis()?-1:e,n=f?r.axisSize:a.axisSize,o=f?r.position:a.position;n&&"auto"!==n||(f?(n=t._renderValueAxis(e,{x:0,y:0,width:S,height:0},!0,g).height,2==(2&m.valueAxis[s])?n=0:n>0&&(m.valueAxis[s]|=2)):(n=t._renderXAxis(e,{x:0,y:0,width:S,height:0},!0).height,2==(2&m.xAxis[l])?n=0:n>0&&(m.xAxis[l]|=2))),"top"!==o&&(o="bottom"),C[o+"Count"]>0&&C[o]>0&&n>0&&(C[o]+=_),k.push({height:n,position:o,yRel:C[o]}),C[o]+=n,C[o+"Count"]++}t._createAnimationGroup("series");const D=!1!==t.showLegend,T=t._legendLayout;var F=D?t._renderLegend(T?t._rect:h,!0):{width:0,height:0};if(!T||isNaN(this.legendLayout.left)&&isNaN(this.legendLayout.top)||(F={width:0,height:0}),h.height<C.top+C.bottom+F.height||h.width<x.left+x.right)i.endGroup();else{g.height-=C.top+C.bottom+F.height,g.x+=x.left,g.width-=x.left+x.right,g.y+=C.top;var O=[];if(!p)for(let e=0;e<c.length;e++){const i=c[e];if(!0===i.polar||!0===i.spider||"pie"===i.type||"donut"===i.type)continue;f="horizontal"===i.orientation;let r=t._getXAxis(e)===t._getXAxis()?-1:e,s=t._getValueAxis(e)===t._getValueAxis()?-1:e,a={x:g.x,y:0,width:g.width,height:k[e].height};if("top"!==k[e].position?a.y=g.y+g.height+k[e].yRel:a.y=g.y-k[e].yRel-k[e].height,f){if(4==(4&m.valueAxis[s]))continue;if(!t._isGroupVisible(e))continue;t._renderValueAxis(e,a,!1,g),m.valueAxis[s]|=4}else{if(O.push(a),4==(4&m.xAxis[r]))continue;if(!t._isGroupVisible(e))continue;t._renderXAxis(e,a,!1,g),m.xAxis[r]|=4}}if(D){const e=t._legendLayout,i=e?t._rect:h;let r=h.x+this.renderer._ptrnd((h.width-F.width)/2),s=g.y+g.height+C.bottom,a=h.width,l=F.height;e&&(isNaN(t.legendLayout.left)||(r=t.legendLayout.left),isNaN(t.legendLayout.top)||(s=t.legendLayout.top),isNaN(t.legendLayout.width)||(a=t.legendLayout.width),isNaN(t.legendLayout.height)||(l=t.legendLayout.height)),r+a>i.x+i.width&&(a=i.x+i.width-r),s+l>i.y+i.height&&(l=i.y+i.height-s),t._renderLegend({x:r,y:s,width:a,height:l})}if(t._hasHorizontalLines=!1,!p)for(let e=0;e<c.length;e++){const i=c[e];if(!0===i.polar||!0===i.spider||"pie"===i.type||"donut"===i.type)continue;f="horizontal"===c[e].orientation;let r={x:g.x-v[e].xRel-v[e].width,y:g.y,width:v[e].width,height:g.height};"left"!==v[e].position&&(r.x=g.x+g.width+v[e].xRel);let s=t._getXAxis(e)===t._getXAxis()?-1:e,a=t._getValueAxis(e)===t._getValueAxis()?-1:e;if(f){if(O.push(r),8==(8&m.xAxis[s]))continue;if(!t._isGroupVisible(e))continue;t._renderXAxis(e,r,!1,g),m.xAxis[s]|=8}else{if(8==(8&m.valueAxis[a]))continue;if(!t._isGroupVisible(e))continue;t._renderValueAxis(e,r,!1,g),m.valueAxis[a]|=8}}if(!(g.width<=0||g.height<=0)){t._plotRect={x:g.x,y:g.y,width:g.width,height:g.height};for(let e=0;e<c.length;e++)this._drawPlotAreaLines(e,!0,{gridLines:!1,tickMarks:!1,alternatingBackground:!0}),this._drawPlotAreaLines(e,!1,{gridLines:!1,tickMarks:!1,alternatingBackground:!0});for(let e=0;e<c.length;e++)this._drawPlotAreaLines(e,!0,{gridLines:!0,tickMarks:!0,alternatingBackground:!1}),this._drawPlotAreaLines(e,!1,{gridLines:!0,tickMarks:!0,alternatingBackground:!1});var I=!1;for(let e=0;e<c.length&&!I;e++){const t=c[e];if(void 0!==t.annotations||"function"==typeof t.draw||"function"==typeof t.drawBefore){I=!0;break}}var P=i.beginGroup();if(t.clip&&!I){var R=i.createClipRect({x:g.x-2,y:g.y,width:g.width+4,height:g.height});i.setClip(P,R)}for(let r=0;r<c.length;r++){const s=c[r];var L=!1;for(var G in t._seriesTypes)if(t._seriesTypes[G]===s.type){L=!0;break}L||t.error(t.localize("invalidType",{type:s.type})),"function"==typeof s.drawBefore&&s.drawBefore(i,e,r,this),!0!==s.polar&&!0!==s.spider||-1===s.type.indexOf("pie")&&-1===s.type.indexOf("donut")&&t._renderSpiderAxis(r,g),t._renderAxisBands(r,g,!0),t._renderAxisBands(r,g,!1)}for(let r=0;r<c.length;r++){const s=c[r];if(t._isColumnType(s.type)?t._renderColumnSeries(r,g):-1!==s.type.indexOf("pie")||-1!==s.type.indexOf("donut")?t._renderPieSeries(r,g):-1!==s.type.indexOf("line")||-1!==s.type.indexOf("area")?t._renderLineSeries(r,g):-1!==s.type.indexOf("scatter")||-1!==s.type.indexOf("bubble")?t._renderScatterSeries(r,g):-1===s.type.indexOf("candlestick")&&-1===s.type.indexOf("ohlc")||t._renderCandleStickSeries(r,g,-1!==s.type.indexOf("ohlc")),s.annotations){this._moduleAnnotations||t.error(t.localize("missingReference",{files:"smart.chart.annotations.js"}));for(let e=0;e<s.annotations.length;e++)t._renderAnnotation(r,s.annotations[e],g)}"function"==typeof s.draw&&s.draw(i,e,r,this)}if(i.endGroup(),t.disabled){var V=i.rect(e.x,e.y,e.width,e.height);i.attr(V,{fill:"#777777",opacity:.5,stroke:"#00FFFFFF"})}"function"==typeof t.draw&&t.draw(i,e),i.endGroup(),t._startAnimation("series"),t._credits&&t._credits();var E=!1;for(let e=0;e<t.seriesGroups.length&&!E;e++){let i=t._getXAxis(e);i&&i.rangeSelector&&i.rangeSelector.visible&&(E=!0,t._hasRangeSelector=!0)}if(E){this._moduleRangeSelector||t.error(t.localize("missingReference",{files:"smart.chart.rangeselector.js"}));var B=[];t._isSelectorRefresh||(t._rangeSelectorInstances={});for(let e=0;e<t.seriesGroups.length;e++){var H=this._getXAxis(e);-1===B.indexOf(H)&&this._renderXAxisRangeSelector(e,O[e])&&B.push(H)}}}}}_credits(){}_isPieOnlySeries(){let e=this.seriesGroups;if(0===e.length)return!1;for(let t=0;t<e.length;t++)if("pie"!==e[t].type&&"donut"!==e[t].type)return!1;return!0}_renderChartLegend(e,t,i,r){var s=this,a=s.renderer,l={x:t.x,y:t.y,width:t.width,height:t.height};l.width>=6&&(l.x+=3,l.width-=6),l.height>=6&&(l.y+=3,l.height-=6);var n={width:l.width,height:0},o=0,h=0,d=20,u=0,g=10,f=0;for(let I=0;I<e.length;I++){var p=e[I].css;p||(p="smart-chart-legend-text"),d=20;var c=e[I].text,m=a.measureText(c,0,{class:p});m.height>d&&(d=m.height),m.width>f&&(f=m.width),r?(0!==I&&(h+=d),h>l.height&&(h=0,o+=f+20+g,f=m.width,n.width=o+f)):(0!==o&&(o+=10),o+20+m.width>l.width&&m.width<l.width&&(o=0,h+=d,d=20,u=l.width,n.height=h+d));var y=!1;if(m.width>l.width){y=!0;var _=l.width,x=c.split(/\s+/);let e=[],t="";for(let i=0;i<x.length;i++){var v=t+(t.length>0?" ":"")+x[i];s.renderer.measureText(v,0,{class:p}).width>_&&v.length>0&&t.length>0?(e.push({text:t}),t=x[i]):t=v,i+1===x.length&&e.push({text:t})}m.width=0;var b=0;for(let t=0;t<e.length;t++){var N=e[t].text;let i=s.renderer.measureText(N,0,{class:p});m.width=Math.max(m.width,i.width),b+=m.height}m.height=b}var M=o+m.width<l.width&&h+m.height<t.height;if(s._legendLayout){let e=l.x+o+m.width<s._rect.x+s._rect.width&&l.y+h+m.height<s._rect.y+s._rect.height;this._renderInBounds=e}if(!i&&M){var A=e[I].seriesIndex,w=e[I].groupIndex,S=e[I].itemIndex,C=e[I].fillColor,k=e[I].lineColor,D=s._isSerieVisible(w,A,S),T=a.beginGroup(),F=D?e[I].opacity:.1;if(y){let t=c,i=l.width,n=t.split(/\s+/);var O=0;let u=[],f="";for(let e=0;e<n.length;e++){let t=f+(f.length>0?" ":"")+n[e],r=s.renderer.measureText(t,0,{class:p});r.width>i&&t.length>0&&f.length>0?(u.push({text:f,dy:O}),O+=r.height,f=n[e]):f=t,e+1===n.length&&u.push({text:f,dy:O})}for(let e=0;e<u.length;e++){let t=u[e].text;O=u[e].dy,s.renderer.measureText(t,0,{class:p}),r?s.renderer.text(t,l.x+o+15,l.y+h+O,m.width,d,0,{class:p},!1,"left","center"):s.renderer.text(t,l.x+o+15,l.y+h+O,m.width,d,0,{class:p},!1,"center","center")}let y=a.rect(l.x+o,l.y+h+5+O/2,g,g);r&&(h+=O),s.renderer.attr(y,{fill:C,"fill-opacity":F,stroke:k,"stroke-width":1,"stroke-opacity":e[I].opacity})}else{let t,i=a.rect(l.x+o,l.y+h+5,g,g);s.renderer.attr(i,{fill:C,"fill-opacity":F,stroke:k,"stroke-width":1,"stroke-opacity":e[I].opacity,purpose:"legend-toggle",data:e[I]}),t=r?s.renderer.text(c,l.x+o+15,l.y+h,m.width,m.height+5,0,{class:p},!1,"left","center"):s.renderer.text(c,l.x+o+15,l.y+h,m.width,d,0,{class:p},!1,"center","center"),a.attr(t,{purpose:"legend-toggle",data:e[I]})}s.renderer.endGroup(),s._setLegendToggleHandler(w,A,S,T)}r||u<(o+=m.width+20)&&(u=o)}if(i)return n.height=this.renderer._ptrnd(h+d+5),n.width=this.renderer._ptrnd(u),n}isSerieVisible(e,t,i){return this._isSerieVisible(e,t,i)}_isSerieVisible(e,t,i){for(;this._itemsToggleState.length<e+1;)this._itemsToggleState.push([]);let r=this._itemsToggleState[e];for(;r.length<t+1;)r.push(!!isNaN(i)||[]);let s=r[t];if(isNaN(i))return s;for(Array.isArray(s)||(r[t]=s=[]);s.length<i+1;)s.push(!0);return s[i]}isGroupVisible(e){return this._isGroupVisible(e)}_isGroupVisible(e){let t=!1,i=this.seriesGroups[e].series;if(!i)return t;for(let r=0;r<i.length;r++)if(this._isSerieVisible(e,r)){t=!0;break}return t}_toggleSerie(e,t,i,r){let s=!this._isSerieVisible(e,t,i);void 0!==r&&(s=r);let a=this.seriesGroups[e],l=a.series[t];if(this.$.fireEvent("toggle",{state:s,seriesGroup:a,serie:l,elementIndex:i}),isNaN(i))this._itemsToggleState[e][t]=s;else{let r=this._itemsToggleState[e][t];for(Array.isArray(r)||(r=[]);r.length<i;)r.push(!0);r[i]=s}this._isToggleRefresh=!0,this.update(),this._isToggleRefresh=!1}showSerie(e,t,i){this._toggleSerie(e,t,i,!0)}hideSerie(e,t,i){this._toggleSerie(e,t,i,!1)}_setLegendToggleHandler(e,t,i,r){let s=this.seriesGroups[e],a=s.series[t].enableSeriesToggle;if(null==a&&(a=!1!==s.enableSeriesToggle),a){let s=this;this.renderer.addHandler(r,"click",(function(){s._toggleSerie(e,t,i)}))}}_renderLegend(e,t){let i=this,r=[];for(let e=0;e<i.seriesGroups.length;e++){let t=i.seriesGroups[e];if(!1!==t.showLegend)for(let s=0;s<t.series.length;s++){let a=t.series[s];if(!1===a.showLegend)continue;let l,n=i._getSerieSettings(e,s);if("pie"===t.type||"donut"===t.type){let o=i._getXAxis(e);const h=a.legendFormatSettings||t.legendFormatSettings||i._getFormatSettings(o)||i._getFormatSettings(a)||i._getFormatSettings(t);let d=a.legendFormatFunction||t.legendFormatFunction||o.formatFunction||a.formatFunction||t.formatFunction,u=i._getDataLen(e);for(let t=0;t<u;t++){l=i._getDataValue(t,a.displayText,e),l=i._formatValue(l,h,d,e,s,t);let o=i._getColors(e,s,t);r.push({groupIndex:e,seriesIndex:s,itemIndex:t,text:l,css:a.displayTextClass,fillColor:o.fillColor,lineColor:o.lineColor,opacity:n.opacity})}continue}const o=a.legendFormatSettings||t.legendFormatSettings;let h=a.legendFormatFunction||t.legendFormatFunction;l=i._formatValue(a.displayText||a.dataField||"",o,h,e,s,NaN);let d=i._getSeriesColors(e,s),u=this._get([a.legendFillColor,a.legendColor,d.fillColor]),g=this._get([a.legendLineColor,a.legendColor,d.lineColor]);r.push({groupIndex:e,seriesIndex:s,text:l,css:a.displayTextClass,fillColor:u,lineColor:g,opacity:n.opacity})}}return i._renderChartLegend(r,e,t,i._legendLayout&&"vertical"===i.legendLayout.flow)}_getInterval(e,t){if(!e)return t;let i=this._get([e.unitInterval,t]);return isNaN(e.step)||null===e.step||(i=e.step*t),i}_getOffsets(e,t,i,r,s,a,l,n,o){let h,d=this._getInterval(s[e],n),u=[];if((""===e||s[e].visible&&"custom"!==s[e].visible)&&(u=this._generateIntervalValues(r,d,n,l,o)),"labels"!==e){let e=l?a.left:0;if(!l&&n>1&&(e=a.left*(n+1)),1===u.length&&(e*=2),h=this._valuesToOffsets(u,t,r,i,a,!1,e),!l){let e=(a.left+a.right)*d/n;t.flip?h.unshift(h[0]+e):h.push(h[h.length-1]+e)}}else{let e=a.left;1===u.length&&(e*=2),h=this._valuesToOffsets(u,t,r,i,a,l,e)}let g=this._arraysToObjectsArray([u,h],["value","offset"]);if(t[e]&&t[e].custom){let s=this._objectsArraysToArray(t[e].custom,"value"),n=this._objectsArraysToArray(t[e].custom,"offset"),o=this._valuesToOffsets(s,t,r,i,a,l,a.left);for(let i=0;i<t[e].custom.length;i++)g.push({value:s[i],offset:isNaN(n[i])?o[i]:n[i]})}return g}_renderXAxis(e,t,i,r){let s=this,a=s._getXAxis(e),l=s.seriesGroups[e],n="horizontal"===l.orientation,o={width:0,height:0},h=s._getAxisSettings(a);if(!a||!h.visible||"spider"===l.type)return o;if(!s._isGroupVisible(e)||this._isPieGroup(e))return o;let d=s._alignValuesWithTicks(e);for(;s._renderData.length<e+1;)s._renderData.push({});s.rightToLeft?(a._flip=a.flip,a.flip=!0):void 0!==a._flip&&(a.flip=a._flip);let u=n?t.height:t.width,g=s._calculateXOffsets(e,u),f=g.axisStats,p=a.rangeSelector&&a.rangeSelector.visible,c=0;p&&(this._moduleRangeSelector||s.error(s.localize("missingReference",{files:"smart.chart.rangeselector.js"})),c=this._selectorGetSize(a));let m=n&&"right"===a.position||!n&&"top"===a.position;!i&&p&&(n?(t.width-=c,"right"!==a.position&&(t.x+=c)):(t.height-=c,"top"===a.position&&(t.y+=c)));let y={rangeLength:g.rangeLength,itemWidth:g.itemWidth,intervalWidth:g.intervalWidth,data:g,settings:h,isMirror:m,rect:t};s._renderData[e].xAxis=y;let _=f.interval;if(isNaN(_))return o;n&&(h.title.angle-=90,h.labels.angle-=90);let x,v,b=this._getInterval(h.gridLines,_),N=this._getInterval(h.tickMarks,_),M=this._getInterval(h.labels,_),A=f.min,w=f.max,S=g.padding,C=!0===a.flip||s.rightToLeft,k={min:A,max:w};f.logAxis.enabled&&(k.min=f.logAxis.minPow,k.max=f.logAxis.maxPow),"date"===a.type?(h.gridLines.offsets=this._generateDTOffsets(A,w,u,S,b,_,f.dateTimeUnit,d,NaN,!1,C),h.tickMarks.offsets=this._generateDTOffsets(A,w,u,S,N,_,f.dateTimeUnit,d,NaN,!1,C),x=this._generateDTOffsets(A,w,u,S,M,_,f.dateTimeUnit,d,NaN,!0,C)):(h.gridLines.offsets=this._getOffsets("gridLines",a,u,f,h,S,d,_),h.tickMarks.offsets=this._getOffsets("tickMarks",a,u,f,h,S,d,_),x=this._getOffsets("labels",a,u,f,h,S,d,_)),s._elementRenderInfo&&s._elementRenderInfo.length>e&&(v=s._elementRenderInfo[e].xAxis);let D,T=[];h.labels.formatFunction&&(D=h.labels.formatFunction);const F=s._getFormatSettings(h.labels);let O;F&&(O=Object.assign({},F)),"date"===a.type&&(a.dateFormat&&!D?O?O.dateFormat=O.dateFormat||a.dateFormat:O={dateFormat:a.dateFormat}:D||O&&(!O||O.dateFormat)||(D=this._getDefaultDTFormatFn(a.baseUnit||"day")));for(let t=0;t<x.length;t++){let i,r=x[t].value,l=x[t].offset;if(isNaN(l))continue;"date"!==a.type&&f.useIndeces&&a.dataField&&(i=Math.round(r),r=s._getDataValue(i,a.dataField,e),null==r&&(r=""));let n=s._formatValue(r,O,D,e,void 0,i);null!=n&&""!==n.toString()||(isNaN(i)&&(i=t),i>=f.filterRange.min&&i<=f.filterRange.max&&(n=f.useIndeces?(f.min+i).toString():void 0===r?"":r.toString()));let o={key:r,text:n,targetX:l,x:l};v&&v.itemOffsets[r]&&(o.x=v.itemOffsets[r].x,o.y=v.itemOffsets[r].y),T.push(o)}let I=s._getAnimProps(e),P=I.enabled&&T.length<500?I.duration:0;!1===s.enableAxisTextAnimation&&(P=0);let R={items:T,renderData:y},L=s._renderAxis(n,m,h,{x:t.x,y:t.y,width:t.width,height:t.height},r,_,!1,!0,R,i,P);return n?L.width+=c:L.height+=c,L}_animateAxisText(e,t){let i=e.items,r=e.textSettings;for(let e=0;e<i.length;e++){let s=i[e];if(!s)continue;if(!s.visible)continue;let a=s.targetX,l=s.targetY;isNaN(s.x)||isNaN(s.y)||(a=s.x+(a-s.x)*t,l=s.y+(l-s.y)*t),s.element&&(this.renderer.removeElement(s.element),s.element=void 0),s.element=this.renderer.text(s.text,a,l,s.width,s.height,r.angle,{class:r.style},!1,r.halign,r.valign,r.textRotationPoint)}}_getPolarAxisCoords(e,t){let i=this.seriesGroups[e],r=t.x+this._draw.getNum([i.offsetX,t.width/2]),s=t.y+this._draw.getNum([i.offsetY,t.height/2]),a=Math.min(t.width,t.height),l=i.radius;this._isPercent(l)&&(l=parseFloat(l)/100*a/2),isNaN(l)&&(l=a/2*.6);let n=this._alignValuesWithTicks(e),o=this._get([i.startAngle,i.minAngle,0])-90;o=isNaN(o)?0:2*Math.PI*o/360;let h=this._get([i.endAngle,i.maxAngle,360])-90;if(h=isNaN(h)?2*Math.PI:2*Math.PI*h/360,o>h){let e=o;o=h,h=e}let d=this.renderer._rnd(Math.abs(o-h)/(2*Math.PI),.001,!0),u=2*Math.PI*l*d,g=this._calcGroupOffsets(e,t).xoffsets;if(!g)return;let f,p=!(Math.abs(Math.abs(h-o)-2*Math.PI)>1e-5);if(i.spider){const t=this._getXAxisStats(e,this._getXAxis(e),u);let i=t.interval;(isNaN(i)||0===i)&&(i=1);let r=(t.max-t.min)/i+(p?1:0);if(r=Math.round(r),r>2){let e=Math.cos(Math.abs(h-o)/2/r);e=this.renderer._rnd(e,.01),0===e&&(e=1),f=l/e,f>l&&n&&(l=f)}}return l=this.renderer._ptrnd(l),{x:r,y:s,r:l,adjR:this._get([f,l]),itemWidth:g.itemWidth,rangeLength:g.rangeLength,valuesOnTicks:n,startAngle:o,endAngle:h,isClosedCircle:p,axisSize:u}}_toPolarCoord(e,t,i,r){let s=Math.abs(e.startAngle-e.endAngle)/(2*Math.PI),a=2*(i-t.x)*Math.PI*s/Math.max(1,t.width)+e.startAngle,l=(t.height+t.y-r)*e.r/Math.max(1,t.height),n=e.x+l*Math.cos(a),o=e.y+l*Math.sin(a);return{x:this.renderer._ptrnd(n),y:this.renderer._ptrnd(o)}}_renderSpiderAxis(e,t){let i=this,r=i._getXAxis(e),s=this._getAxisSettings(r);if(!r||!s.visible)return;let a=i.seriesGroups[e],l=i._getPolarAxisCoords(e,t);if(!l)return;let n=this.renderer._ptrnd(l.x),o=this.renderer._ptrnd(l.y),h=l.adjR,d=l.startAngle,u=l.endAngle;if(h<1)return;let g=this.renderer._rnd(Math.abs(d-u)/(2*Math.PI),.001,!0),f=2*Math.PI*h*g,p=l.isClosedCircle,c=this._renderData[e].xoffsets;if(!c.rangeLength)return;let m=c.axisStats.interval;for((isNaN(m)||m<1)&&(m=1);i._renderData.length<e+1;)i._renderData.push({});let y={rangeLength:c.rangeLength,itemWidth:c.itemWidth,data:c,rect:t,settings:s};i._renderData[e].xAxis=y,i._renderData[e].polarCoords=l;let _=!0;for(let t=0;t<e;t++){let e=i._renderData[t].polarCoords,s=i._getXAxis(t),a=!1;for(let t in l)if(l[t]!==e[t]){a=!0;break}a&&s===r||(_=!1)}let x,v,b=s.gridLines,N=s.tickMarks,M=s.labels,A=this._getInterval(b,m),w=this._getInterval(N,m),S=this._getInterval(M,m),C=i._alignValuesWithTicks(e),k=i.renderer,D=c.axisStats,T=D.min,F=D.max,O=this._getPaddingSize(c.axisStats,r,C,f,!0,p,!1),I=!0===r.flip||i.rightToLeft;"date"===r.type?(b.offsets=this._generateDTOffsets(T,F,f,O,A,m,r.baseUnit,!0,0,!1,I),N.offsets=this._generateDTOffsets(T,F,f,O,w,m,r.baseUnit,!0,0,!1,I),x=this._generateDTOffsets(T,F,f,O,S,m,r.baseUnit,!0,0,!0,I)):(s.gridLines.offsets=this._getOffsets("gridLines",r,f,D,s,O,!0,m),s.tickMarks.offsets=this._getOffsets("tickMarks",r,f,D,s,O,!0,m),x=this._getOffsets("labels",r,f,D,s,O,!0,m)),i._elementRenderInfo&&i._elementRenderInfo.length>e&&(v=i._elementRenderInfo[e].xAxis);let P=[],R=this._getDataLen(e);for(let t=0;t<x.length;t++){let s,a=x[t].offset,l=x[t].value;if("date"!==r.type&&D.useIndeces&&r.dataField){if(s=Math.round(l),s>=R)continue;l=i._getDataValue(s,r.dataField),null==l&&(l="")}let n=i._formatValue(l,i._getFormatSettings(M.formatSettings),M.formatFunction,e,void 0,s);null!=n&&""!==n.toString()||(n=D.useIndeces?(D.min+t).toString():null==l?"":l.toString());let o={key:l,text:n,targetX:a,x:a};v&&v.itemOffsets[l]&&(o.x=v.itemOffsets[l].x,o.y=v.itemOffsets[l].y),P.push(o)}let L={stroke:b.color||i._getThemeColor("line"),fill:"none","stroke-width":b.width,"stroke-dasharray":b.dashStyle||""};if(!a.spider)if(1===g)k.circle(n,o,h,L);else{let e=-d/Math.PI*180,t=-u/Math.PI*180;this.renderer.pieslice(n,o,0,h,Math.min(e,t),Math.max(e,t),void 0,L)}let G=d;if(b.visible&&_){C||p||b.offsets.unshift({offset:-O.right});for(let e=0;e<b.offsets.length;e++){let t=b.offsets[e].offset;C||(t+=p?O.right/2:O.right);const i=G+2*t*Math.PI*g/Math.max(1,f);if(i-u>.01)continue;let r=this.renderer._ptrnd(n+h*Math.cos(i)),s=this.renderer._ptrnd(o+h*Math.sin(i));k.line(n,o,r,s,L)}}if(N.visible&&_){let e=5,t={stroke:N.color||i._getThemeColor("line"),fill:"none","stroke-width":N.width,"stroke-dasharray":N.dashStyle||""};C||p||N.offsets.unshift({offset:-O.right});for(let i=0;i<N.offsets.length;i++){let r=N.offsets[i].offset;C||(r+=p?O.right/2:O.right);const s=G+2*r*Math.PI*g/Math.max(1,f);if(s-u>.01)continue;let a={x:n+h*Math.cos(s),y:o+h*Math.sin(s)},l={x:n+(h+e)*Math.cos(s),y:o+(h+e)*Math.sin(s)};k.line(this.renderer._ptrnd(a.x),this.renderer._ptrnd(a.y),this.renderer._ptrnd(l.x),this.renderer._ptrnd(l.y),t)}}let V=[];if(a.spider){let e=[];e="date"===r.type?this._generateDTOffsets(T,F,f,O,m,m,r.baseUnit,!0,0,!1,I):this._getOffsets("",r,f,D,s,O,!0,m),C||p||e.unshift({offset:-O.right});for(let t=0;t<e.length;t++){let i=e[t].offset;C||(i+=p?O.right/2:O.right);const r=G+2*i*Math.PI*g/Math.max(1,f);r-u>.01||V.push(r)}y.offsetAngles=V}let E=i._renderSpiderValueAxis(e,t,C?l.adjR:l.r,V);if(E||(E=[]),a.spider){if(!C)for(let e=0;e<E.length;e++)E[e]=E[e]*l.adjR/l.r;E.push(h),this._renderSpiderLines(n,o,E,l,V,L)}if(_&&M.visible){y.polarLabels=[];for(let e=0;e<P.length;e++){let t=G+2*P[e].x*Math.PI*g/Math.max(1,f);t=(360-t/(2*Math.PI)*360)%360,t<0&&(t=360+t);let i,r=k.measureText(P[e].text,0,{class:s.labels.style}),a=(C?l.adjR:l.r)+(N.visible?7:2),h=s.labels;if(h.autoRotate){let e=this._draw._ptRotate(n-r.width/2,o-a-r.height,n,o,-t/180*Math.PI),s=this._draw._ptRotate(n+r.width/2,o-a,n,o,-t/180*Math.PI);r.width=Math.abs(e.x-s.x),r.height=Math.abs(e.y-s.y),i={x:Math.min(e.x,s.x),y:Math.min(e.y,s.y)}}else i=this._adjustTextBoxPosition(n,o,r,a,t,!1,!1,!1);y.polarLabels.push({x:i.x,y:i.y,value:P[e].text}),k.text(P[e].text,i.x,i.y,r.width,r.height,h.autoRotate?90-t:h.angle,{class:h.style},!1,h.halign,h.valign)}}}_renderSpiderLines(e,t,i,r,s,a){let l=this.renderer,n=r.isClosedCircle;for(let r=0;r<i.length;r++){let o,h,d=i[r];for(let i=0;i<s.length;i++){let r=s[i],n=this.renderer._ptrnd(e+d*Math.cos(r)),u=this.renderer._ptrnd(t+d*Math.sin(r));o&&l.line(o.x,o.y,n,u,a),o={x:n,y:u},h||(h={x:n,y:u})}h&&n&&l.line(o.x,o.y,h.x,h.y,a)}}_renderSpiderValueAxis(e,t,i,r){var s=this,a=this.seriesGroups[e],l=this._getPolarAxisCoords(e,t);if(!l)return;var n=this.renderer._ptrnd(l.x),o=this.renderer._ptrnd(l.y);i=i||l.r;var h=l.startAngle,d=l.endAngle,u=this.renderer._rnd(Math.abs(h-d)/(2*Math.PI),.001,!0);if(i<1)return;i=this.renderer._ptrnd(i);var g=this._getValueAxis(e);const f=this._getAxisSettings(g);if(g&&!1!==f.visible){var p=this._stats.seriesGroups[e].mu,c=f.labels,m=s._getFormatSettings(c);-1!==a.type.indexOf("stacked")&&-1!==a.type.indexOf("100")&&!m&&(m={sufix:"%"});var y=this._get([c.step,c.unitInterval/p]);isNaN(y)&&(y=1),y=Math.max(1,Math.round(y)),this._calcValueAxisItems(e,i,y);var _=f.gridLines,x=f.tickMarks,v=f.labels,b={stroke:_.color||s._getThemeColor("line"),fill:"none","stroke-width":1,"stroke-dasharray":_.dashStyle||""},N=this._renderData[e].valueAxis,M=N.items,A=h;if(M.length&&f.line.visible){isNaN(f.line.angle)||(A=2*Math.PI*f.line.angle/360);var w=n+Math.cos(A)*i,S=o+Math.sin(A)*i;if(-1===r.indexOf(A)){var C=Object.assign({},b);C["stroke-width"]=f.line.lineWidth,C.stroke=f.line.color||s._getThemeColor("line"),C["stroke-dasharray"]=f.line.dashStyle,this.renderer.line(n,o,w,S,C)}}M=M.reverse();var k=this.renderer;N.polarLabels=[];for(let e=0;e<M.length-1;e++){var D=M[e];if(isNaN(D))continue;var T=v.formatFunction?v.formatFunction(D):this._formatNumber(D,m),F=k.measureText(T,0,{class:v.style}),O=n+(!1!==g.showTickMarks?3:2);let t=o-N.itemWidth*e-F.height/2;var I=this._draw._ptRotate(O,t,n,o,A),P=this._draw._ptRotate(O+F.width,t+F.height,n,o,A);O=Math.min(I.x,P.x),t=Math.min(I.y,P.y),F.width=Math.abs(I.x-P.x),F.height=Math.abs(I.y-P.y),O+=f.labels.textOffset.x,t+=f.labels.textOffset.y,N.polarLabels.push({x:O,y:t,value:T}),k.text(T,O,t,F.width,F.height,v.autoRotate?90+180*h/Math.PI:v.angle,{class:v.style},!1,v.halign,v.valign)}var R=!1!==g.valuesOnTicks,L=this._stats.seriesGroups[e],G=L.mu,V=!0===g.logarithmicScale;V&&(G=1);var E={min:L.min,max:L.max,logAxis:{enabled:!0===V,base:g.logarithmicScaleBase,minPow:L.minPow,maxPow:L.maxPow}};(_.visible||a.spider||g.alternatingBackgroundColor||g.alternatingBackgroundColor2)&&(_.offsets=this._getOffsets("gridLines",g,i,E,f,{left:0,right:0},R,G));var B=[];if(_.visible||a.spider){let e={stroke:_.color||s._getThemeColor("line"),fill:"none","stroke-width":1,"stroke-dasharray":_.dashStyle||""};for(let t=0;t<_.offsets.length;t++){let r=this.renderer._ptrnd(_.offsets[t].offset);if(r!==i)if(a.spider)B.push(r);else if(1!==u){var H=-h/Math.PI*180,z=-d/Math.PI*180;this.renderer.pieslice(n,o,0,r,Math.min(H,z),Math.max(H,z),void 0,e)}else k.circle(n,o,r,e)}}if(g.tickMarks&&(g.tickMarks.visible||g.showTickMarks)||(x.visible=!1),x.visible){x.offsets=this._getOffsets("tickMarks",g,i,E,f,{left:0,right:0},R,G);const e=2*x.size;let t={stroke:x.color||s._getThemeColor("line"),fill:"none","stroke-width":1,"stroke-dasharray":x.dashStyle||""};for(let i=0;i<x.offsets.length;i++){var W=x.offsets[i].offset;let r={x:n+W*Math.cos(A)-e/2*Math.sin(A+Math.PI/2),y:o+W*Math.sin(A)-e/2*Math.cos(A+Math.PI/2)},s={x:n+W*Math.cos(A)+e/2*Math.sin(A+Math.PI/2),y:o+W*Math.sin(A)+e/2*Math.cos(A+Math.PI/2)};k.line(this.renderer._ptrnd(r.x),this.renderer._ptrnd(r.y),this.renderer._ptrnd(s.x),this.renderer._ptrnd(s.y),t)}}return B}}_renderAxis(e,t,i,r,s,a,l,n,o,h,d){if(i.customDraw&&!h)return{width:NaN,height:NaN};let u=i.title,g=i.labels,f=i.tickMarks,p=i.padding,c=f.visible?f.size:0,m={width:0,height:0},y={width:0,height:0};e?m.height=y.height=r.height:m.width=y.width=r.width,!h&&t&&e&&(r.x-=r.width);let _=o.renderData,x=_.itemWidth;if(u.visible&&void 0!==u.text&&null!==u.text&&""!==u){let i=u.angle,s=this.renderer.measureText(u.text,i,{class:u.style});y.width=s.width,y.height=s.height,h||this.renderer.text(u.text,r.x+u.offset.x+(e?t?-p.right-2+2*r.width-y.width:2+p.left:0),r.y+u.offset.y+(e?0:t?p.top+2:r.height-2-y.height-p.bottom),e?y.width:r.width,e?r.height:y.height,i,{class:u.style},!0,u.halign,u.valign,u.rotationPoint)}let v=0,b=n?-x/2:0;n&&!e&&(g.halign="center");let N=r.x,M=r.y,A=g.textOffset;A&&(isNaN(A.x)||(N+=A.x),isNaN(A.y)||(M+=A.y)),e?(N+=p.left+2+(y.width>0?y.width+2:0)+(t?r.width-y.width:0),M+=b):(N+=b,t?(M+=y.height>0?y.height+6:4,M+=c-(n?c:c/4)):M+=n?c:c/4,M+=p.top);let w=0,S=0,C=o.items;_.itemOffsets={},!this._isToggleRefresh&&this._isUpdate||(d=0);let k=!1,D=0;for(let i=0;i<C.length&&g.visible;i++,v+=x){if(!C[i]||isNaN(x))continue;let s=C[i].text;isNaN(C[i].targetX)||(v=C[i].targetX);let a=this.renderer.measureText(s,g.angle,{class:g.style});if(a.width>S&&(S=a.width),a.height>w&&(w=a.height),D+=e?w:S,!h){if(e&&v>r.height+2||!e&&v>r.width+2)continue;const s=e?N+(t?0===y.width?c:c-2:0):N+v;let a=e?M+v:M;_.itemOffsets[C[i].key]={x:s,y:a},k||(!isNaN(C[i].x)||!isNaN(C[i].y)&&d)&&(k=!0),C[i].targetX=s,C[i].targetY=a,C[i].width=e?r.width-p.left-p.right-4-c-(y.width>0?y.width+2:0):x,C[i].height=e?x:r.height-p.top-p.bottom-4-c-(y.height>0?y.height+2:0),C[i].visible=!0}}if(_.avgWidth=0===C.length?0:D/C.length,!h){let e={items:C,textSettings:g};if(!isNaN(d)&&k||(d=0),this._animateAxisText(e,0===d?1:0),0!==d){let t=this;this._enqueueAnimation("series",void 0,void 0,d,(function(e,i,r){t._animateAxisText(i,r)}),e)}}if(m.width+=4+c+y.width+S+(e&&y.width>0?2:0),m.height+=4+c+y.height+w+(!e&&y.height>0?2:0),e?m.width+=p.left+p.right:m.height+=p.top+p.bottom,!h&&i.line.visible){let s={stroke:i.line.color||self._getThemeColor("line"),"stroke-width":i.line.width,"stroke-dasharray":i.line.dashStyle||""};if(e){let e=r.x+r.width+(t?p.left:-p.right);e=this.renderer._ptrnd(e),this.renderer.line(e,r.y,e,r.y+r.height,s)}else{let e=this.renderer._ptrnd(r.y+(t?r.height-p.bottom:p.top));this.renderer.line(this.renderer._ptrnd(r.x),e,this.renderer._ptrnd(r.x+r.width+1),e,s)}}return m.width=this.renderer._rup(m.width),m.height=this.renderer._rup(m.height),m}_drawPlotAreaLines(e,t,i){var r=this.seriesGroups[e],s="horizontal"!==r.orientation;if(!this._renderData||this._renderData.length<=e)return;var a=t?"valueAxis":"xAxis",l=this._renderData[e][a];if(!l)return;var n=this._renderData.axisDrawState;n||(n=this._renderData.axisDrawState={});var o,h="";t?(h="valueAxis_"+(r.valueAxis?e:"")+(s?"swap":""),o=this._getValueAxis(e)):(h="xAxis_"+(r.xAxis?e:"")+(s?"swap":""),o=this._getXAxis(e)),n=n[h]?n[h]:n[h]={},t||(s=!s);var d=l.settings;if(!d)return;if(d.customDraw)return;var u=d.gridLines,g=d.tickMarks,f=d.padding,p=l.rect,c=this._plotRect;if(!u||!g)return;var m=.5,y={};let _={stroke:u.color||self._getThemeColor("line"),"stroke-width":u.width,"stroke-dasharray":u.dashStyle||""};var x=t?p.y+p.height:p.x,v=u.offsets;let b;if(t&&!o.flip&&(v=(v=v.slice(0)).reverse()),v&&v.length>0){var N=NaN;for(let e=0;e<v.length;e++)if(s?(b=this.renderer._ptrnd(p.y+v[e].offset),b<p.y-m&&(b=this.renderer._ptrnd(p.y)),b>p.y+p.height&&(b=p.y+p.height)):(b=this.renderer._ptrnd(p.x+v[e].offset),b>p.x+p.width+m&&(b=this.renderer._ptrnd(p.x+p.width))),!isNaN(b)&&(isNaN(N)||!(Math.abs(b-N)<2))){if(N=b,i.gridLines&&!1!==u.visible&&!0!==n.gridLines&&(s?this.renderer.line(this.renderer._ptrnd(c.x),b,this.renderer._ptrnd(c.x+c.width),b,_):this.renderer.line(b,this.renderer._ptrnd(c.y),b,this.renderer._ptrnd(c.y+c.height),_)),y[b]=!0,i.alternatingBackground&&(u.alternatingBackgroundColor||u.alternatingBackgroundColor2)&&!0!==n.alternatingBackground){var M,A=e%2==0?u.alternatingBackgroundColor2:u.alternatingBackgroundColor;e>0&&A&&(M=s?this.renderer.rect(this.renderer._ptrnd(c.x),x,this.renderer._ptrnd(c.width-1),b-x,_):this.renderer.rect(x,this.renderer._ptrnd(c.y),b-x,this.renderer._ptrnd(c.height),_),this.renderer.attr(M,{"stroke-width":0,fill:A,opacity:u.alternatingBackgroundOpacity||1}))}x=b}}if(_={stroke:g.color||self._getThemeColor("line"),"stroke-width":g.width,"stroke-dasharray":g.dashStyle||""},i.tickMarks&&g.visible&&!0!==n.tickMarks){var w=g.size;let e=g.offsets,i=NaN;for(let r=0;r<e.length;r++)if(s?(b=this.renderer._ptrnd(p.y+e[r].offset),b<p.y-m&&(b=this.renderer._ptrnd(p.y)),b>p.y+p.height&&(b=p.y+p.height)):(b=this.renderer._ptrnd(p.x+e[r].offset),b>p.x+p.width+m&&(b=this.renderer._ptrnd(p.x+p.width))),!isNaN(b)&&(isNaN(i)||!(Math.abs(b-i)<2))){if(y[b-1]?b--:y[b+1]&&b++,s){if(b>p.y+p.height+m)break}else if(b>p.x+p.width+m)break;i=b;var S=l.isMirror?w:-w;if(s){var C=p.x+p.width+("right"===o.position?f.left:-f.right);t||(C=p.x+(l.isMirror?f.left:-f.right+p.width)),this.renderer.line(C,b,C+S,b,_)}else{var k=p.y+(l.isMirror?p.height:0);k+=l.isMirror?-f.bottom:f.top,k=this.renderer._ptrnd(k),this.renderer.line(b,k,b,k-S,_)}}}n.tickMarks=n.tickMarks||i.tickMarks,n.gridLines=n.gridLines||i.gridLines,n.alternatingBackground=n.alternatingBackground||i.alternatingBackground}_calcValueAxisItems(e,t,i){let r=this._stats.seriesGroups[e];if(!r||!r.isValid)return!1;let s=this.seriesGroups[e],a=this._getValueAxis(e),l=!1!==a.valuesOnTicks,n=r.intervals,o=t/n,h=r.min,d=r.mu,u=!0===a.logarithmicScale,g=a.logarithmicScaleBase||10,f=-1!==s.type.indexOf("stacked")&&-1!==s.type.indexOf("100");for(u&&(d=isNaN(a.unitInterval)?1:a.unitInterval),l||(n=Math.max(n-1,1));this._renderData.length<e+1;)this._renderData.push({});this._renderData[e].valueAxis={};let p=this._renderData[e].valueAxis;p.itemWidth=p.intervalWidth=o,p.items=[];let c=p.items;for(let e=0;e<=n;e++){let t=0;t=u?f?r.max/Math.pow(g,n-e):h*Math.pow(g,e):l?h+e*d:h+(e+.5)*d,e%i==0?c.push(t):c.push(NaN)}return p.rangeLength=u&&!f?r.intervals:r.intervals*d,!0!==a.flip&&(c=c.reverse()),!0}_getDecimalPlaces(e,t,i){let r=0;isNaN(i)&&(i=10);for(let s=0;s<e.length;s++){let a=void 0===t?e[s]:e[s][t];if(isNaN(a))continue;let l=a.toString();for(let e=0;e<l.length;e++)if((l[e]<"0"||l[e]>"9")&&(r=l.length-(e+1),r>=0))return Math.min(r,i);for(r>0&&(a*=Math.pow(10,r));Math.round(a)!==a&&r<i;)r++,a*=10}return r}_renderValueAxis(e,t,i,r){let s=this.seriesGroups[e],a="horizontal"===s.orientation,l=this._getValueAxis(e);l||this.error(this.localize("missingAxis",{index:e,axis:"valueAxis"}));let n={width:0,height:0};if(!this._isGroupVisible(e)||this._isPieOnlySeries()||"spider"===s.type)return n;let o=!1!==l.valuesOnTicks,h=this._stats.seriesGroups[e],d=h.mu,u=!0===l.logarithmicScale,g=l.logarithmicScaleBase||10;if(u&&(d=isNaN(l.unitInterval)?1:l.unitInterval),0===d&&(d=1),isNaN(d))return n;let f=this._getAxisSettings(l),p=f.title,c=f.labels,m=l.labels||{};this._get([l.horizontalTextAlignment,m.horizontalAlignment])||0!==c.angle||(c.halign=a?"center":"right"===l.position?"left":"right");let y=this._get([c.step,c.unitInterval/d]);if(isNaN(y)&&(y=1),y=Math.max(1,Math.round(y)),!this._calcValueAxisItems(e,a?t.width:t.height,y)||!f.visible)return n;a||(p.angle=this.rightToLeft?90:-90,"centercenter"===p.rotationPoint&&("top"===p.valign?p.rotationPoint="rightcenter":"bottom"===p.valign&&(p.rotationPoint="leftcenter")));let _=this._renderData[e].valueAxis,x=this._getFormatSettings(c);-1!==s.type.indexOf("stacked")&&-1!==s.type.indexOf("100")&&!x&&(x={sufix:"%"}),c.formatFunction||x&&null!==x.decimalPlaces&&void 0!==x.decimalPlaces||(x=x||{},x.decimalPlaces=this._getDecimalPlaces([h.min,h.max,d],void 0,3));let v=f.gridLines,b=a?t.width:t.height,N=!0===l.flip;l.flip=!N;let M={min:h.min,max:h.max,logAxis:{enabled:!0===u,base:g,minPow:h.minPow,maxPow:h.maxPow}};(v.visible||l.alternatingBackgroundColor||l.alternatingBackgroundColor2)&&(v.offsets=this._getOffsets("gridLines",l,b,M,f,{left:0,right:0},o,d));let A=f.tickMarks;A.visible&&(A.offsets=this._getOffsets("tickMarks",l,b,M,f,{left:0,right:0},o,d));const w=this._getOffsets("labels",l,b,M,f,{left:0,right:0},o,d,!o);l.flip=N;let S,C=[];this._elementRenderInfo&&this._elementRenderInfo.length>e&&(S=this._elementRenderInfo[e].valueAxis);for(let e=0;e<w.length;e++){let t=w[e].value;if(isNaN(w[e].offset)){C.push(void 0);continue}let i={key:t,text:c.formatFunction?c.formatFunction(t):isNaN(t)?t:this._formatNumber(t,x)};S&&S.itemOffsets[t]&&(i.x=S.itemOffsets[t].x,i.y=S.itemOffsets[t].y),i.targetX=w[e].offset,isNaN(i.targetX)||C.push(i)}let k=a&&"top"===l.position||!a&&"right"===l.position||!a&&this.rightToLeft&&"left"!==l.position,D={items:C,renderData:_},T=this._getAnimProps(e),F=T.enabled&&C.length<500?T.duration:0;return!1===this.enableAxisTextAnimation&&(F=0),_.settings=f,_.isMirror=k,_.rect=t,this._renderAxis(!a,k,f,t,r,d,u,!0,D,i,F)}_objectsArraysToArray(e,t){let i=[];if(!Array.isArray(e))return i;for(let r=0;r<e.length;r++)i.push(e[r][t]);return i}_arraysToObjectsArray(e,t){let i=[];if(e.length!==t.length)return i;for(let r=0;r<e.length;r++)for(let s=0;s<e[r].length;s++)i.length<=s&&i.push({}),i[s][t[r]]=e[r][s];return i}_valuesToOffsets(e,t,i,r,s,a,l){let n=[];if(!t||!Array.isArray(e))return n;let o=i.logAxis.base,h=i.logAxis.enabled?"logarithmic":"linear",d=t.flip,u=r,g=0,f=0;s&&!isNaN(s.left)&&(g=s.left),s&&!isNaN(s.right)&&(f=s.right),u=r-g-f,r=u;for(let t=0;t<e.length;t++){let s=this._smartPlot.scale(e[t],{min:i.min.valueOf(),max:i.max.valueOf(),type:h,base:o},{min:0,max:a?r:u,flip:d},{});isNaN(s)?n.push(NaN):(isNaN(l)||(s+=l),s<=r+g+f+1?n.push(this.renderer._ptrnd(s)):n.push(NaN))}return n}_generateIntervalValues(e,t,i,r,s){let a=[],l=e.min,n=e.max;if(e.logAxis&&e.logAxis.enabled&&(l=e.logAxis.minPow,n=e.logAxis.maxPow),null==l||null==n)return a;if(l===n)return e.logAxis&&e.logAxis.enabled?[Math.pow(e.logAxis.base,l)]:[l];let o=1;i<1&&(o=1e6,l*=o,n*=o,i*=o);for(let e=l;e<=n;e+=i)a.push(e/o+(s?i/2:0));if(t>i){let e=[],r=Math.round(t/i);for(let t=0;t<a.length;t++)t%r==0&&e.push(a[t]);a=e}if(e.logAxis&&e.logAxis.enabled)for(let t=0;t<a.length;t++)a[t]=Math.pow(e.logAxis.base,a[t]);return a}_generateDTOffsets(e,t,i,r,s,a,l,n,o,h,d){l||(l="day");var u=[];if(e>t)return u;if(e===t)return h?u.push({offset:n?i/2:r.left,value:e}):n&&u.push({offset:i/2,value:e}),u;var g=i-r.left-r.right,f=e,p=r.left,c=p,m=a=Math.max(a,1),y=Math.min(1,a);for(a>1&&"millisecond"!==l&&(a=1);this.renderer._ptrnd(c)<=this.renderer._ptrnd(r.left+g+(n?0:r.right));){u.push({offset:c,value:f});var _=new Date(f.valueOf());if("millisecond"===l)_.setMilliseconds(f.getMilliseconds()+a);else if("second"===l)_.setSeconds(f.getSeconds()+a);else if("minute"===l)_.setMinutes(f.getMinutes()+a);else if("hour"===l){var x=_.valueOf();_.setHours(f.getHours()+a),x===_.valueOf()&&_.setHours(f.getHours()+a+1)}else"day"===l?_.setDate(f.getDate()+a):"month"===l?_.setMonth(f.getMonth()+a):"year"===l&&_.setFullYear(f.getFullYear()+a);c=p+((f=_).valueOf()-e.valueOf())*y/(t.valueOf()-e.valueOf())*g}if(d)for(let e=0;e<u.length;e++)u[e].offset=i-u[e].offset;if(m>1&&"millisecond"!==l){var v=[];for(let e=0;e<u.length;e+=m)v.push({offset:u[e].offset,value:u[e].value});u=v}if(!n&&!h&&u.length>1){let e=[];e.push({offset:0,value:void 0});for(let t=1;t<u.length;t++)e.push({offset:u[t-1].offset+(u[t].offset-u[t-1].offset)/2,value:void 0});var b=e.length;b>1?e.push({offset:e[b-1].offset+(e[b-1].offset-e[b-2].offset)}):e.push({offset:i,value:void 0}),u=e}if(s>a){let e=[];var N=Math.round(s/m);for(let t=0;t<u.length;t++)t%N==0&&e.push({offset:u[t].offset,value:u[t].value});u=e}return u}_hasStackValueReversal(e,t){let i=this.seriesGroups[e];if(-1===i.type.indexOf("stacked"))return!1;let r=-1!==i.type.indexOf("waterfall"),s=this._getDataLen(e),a=0,l=!1,n=[];for(let t=0;t<i.series.length;t++)n[t]=this._isSerieVisible(e,t);for(let o=0;o<s;o++){let s;r||(l=!1);for(let r=0;r<i.series.length;r++){if(!n[r])continue;const h=this._getDataValueAsNumber(o,i.series[r].dataField,e);if(isNaN(h))continue;if(i.series[r].summary&&void 0!==this._getDataValue(o,i.series[r].summary,e))continue;let d=l?h<0:h<t;if(l=!0,void 0===s&&(s=d),d!==s)return!0;s=d,a+=h}}return this.waterfallStackSum=a,!1}_getValueAxis(e){let t=null==e?this.valueAxis:this.seriesGroups[e].valueAxis||this.valueAxis;return t||(t=this.valueAxis={}),t}_buildStats(e){var t={seriesGroups:[]};this._stats=t;for(let B=0;B<this.seriesGroups.length;B++){var i=this.seriesGroups[B];t.seriesGroups[B]={};var r=this._getXAxis(B),s=this._getValueAxis(B),a=this._getXAxisStats(B,r,"horizontal"!==i.orientation?e.width:e.height);let H=t.seriesGroups[B];H.isValid=!0;var l="horizontal"===i.orientation?e.width:e.height,n=!0===s.logarithmicScale,o=s.logarithmicScaleBase;isNaN(o)&&(o=10);var h=-1!==i.type.indexOf("stacked"),d=h&&-1!==i.type.indexOf("100"),u=-1!==i.type.indexOf("range"),g=-1!==i.type.indexOf("waterfall");g&&!this._moduleWaterfall&&self.error(self.localize("missingReference",{files:"smart.chart.waterfall.js"})),d&&(H.psums=[],H.nsums=[]);var f=NaN,p=NaN,c=NaN,m=NaN,y=s?s.baselineValue:NaN;isNaN(y)&&(y=n&&!d?1:0);var _=!1;0!==y&&h&&(_=this._hasStackValueReversal(B,y))&&(y=0),h&&g&&(_=this._hasStackValueReversal(B,y));var x=this._getDataLen(B),v=0,b=NaN,N=[];if(g)for(let e=0;e<i.series.length;e++)N.push(NaN);var M=NaN;for(let e=0;e<x&&H.isValid;e++){if(r.rangeSelector&&r.rangeSelector.visible){var A=r.dataField?this._getDataValue(e,r.dataField,B):e;if(A&&a.isDateTime&&(A=this._castAsDate(A,r.dateFormat)),a.useIndeces&&(A=e),A&&(A.valueOf()<a.min.valueOf()||A.valueOf()>a.max.valueOf()))continue}var w=s.minValue,S=s.maxValue;s.baselineValue&&(w=isNaN(w)?y:Math.min(y,w),S=isNaN(S)?y:Math.max(y,S));var C=0,k=0;for(let t=0;i.series&&t<i.series.length;t++)if(this._isSerieVisible(B,t)){var D=NaN,T=NaN,F=NaN;if(-1!==i.type.indexOf("candle")||-1!==i.type.indexOf("ohlc")){var O=["Open","Low","Close","High"];for(var I in O){var P=this._getDataValueAsNumber(e,i.series[t]["dataField"+O[I]],B);isNaN(P)||(F=isNaN(T)?P:Math.min(F,P),T=isNaN(T)?P:Math.max(T,P))}}else if(u){var R=this._getDataValueAsNumber(e,i.series[t].dataFieldFrom,B),L=this._getDataValueAsNumber(e,i.series[t].dataFieldTo,B);T=Math.max(R,L),F=Math.min(R,L)}else{if(D=this._getDataValueAsNumber(e,i.series[t].dataField,B),g){if(this._isSummary(B,e)&&void 0!==this._getDataValue(e,i.series[t].summary,B))continue;h?(isNaN(M)||(D+=M),M=D):(isNaN(N[t])?N[t]=D:D+=N[t],N[t]=D)}if(isNaN(D)||n&&D<=0)continue;F=T=D}(isNaN(S)||T>S)&&(isNaN(s.maxValue)||T<=s.maxValue)&&(S=T),(isNaN(w)||F<w)&&(isNaN(s.minValue)||F>=s.minValue)&&(w=F),isNaN(D)||!h||g||(D>y?C+=D:D<y&&(k+=D))}if(d||(isNaN(s.maxValue)||(C=Math.min(s.maxValue,C)),isNaN(s.minValue)||(k=Math.max(s.minValue,k))),n&&d)for(let t=0;t<i.series.length;t++){if(!this._isSerieVisible(B,t)){b=.01;continue}let r=this._getDataValueAsNumber(e,i.series[t].dataField,B);if(isNaN(r)||r<=0)b=.01;else{var G=0===C?0:r/C;(isNaN(b)||G<b)&&(b=G)}}var V=C-k;v<V&&(v=V),d&&(H.psums[e]=C,H.nsums[e]=k),(S>p||isNaN(p))&&(p=S),(w<f||isNaN(f))&&(f=w),(C>c||isNaN(c))&&(c=C),(k<m||isNaN(m))&&(m=k)}d&&(c=0===c?0:Math.max(c,-m),m=0===m?0:Math.min(m,-c)),f===p&&(!isNaN(s.minValue)&&isNaN(s.maxValue)?(f=s.minValue,p=n?f*o:f+1):isNaN(s.minValue)&&!isNaN(s.maxValue)&&(p=s.maxValue,f=n?p/o:p-1)),f===p&&(0===f?(f=-1,p=1):f<0?p=0:n?1===f&&(f/=o,p*=o):f=0);var E={gmin:f,gmax:p,gsumP:c,gsumN:m,gbase:y,isLogAxis:n,logBase:o,minPercent:b,gMaxRange:v,isStacked:h,isStacked100:d,isWaterfall:g,hasStackValueReversal:_,valueAxis:s,valueAxisSize:l};E.isStacked&&(E.gsumN<0&&(E.gmin=Math.min(E.gmin,E.gbase+E.gsumN)),E.gsumP>0&&(E.gmax=Math.max(E.gmax,E.gbase+E.gsumP))),H.context=E}this._mergeCommonValueAxisStats();for(let e=0;e<t.seriesGroups.length;e++){let i=t.seriesGroups[e];if(i.isValid){var B=this._calcOutputGroupStats(i.context);for(let e in B)i[e]=B[e];delete i.context}}}_mergeCommonValueAxisStats(){let e={};for(let t=0;t<this.seriesGroups.length;t++){if(!this._isGroupVisible(t))continue;if(this.seriesGroups[t].valueAxis)continue;let i=this._stats.seriesGroups[t].context;e.gbase=i.gbase,(isNaN(e.gmin)||i.gmin<e.gmin)&&(e.gmin=i.gmin),(isNaN(e.gmax)||i.gmax>e.gmax)&&(e.gmax=i.gmax),(isNaN(e.gsumP)||i.gsumP>e.gsumP)&&(e.gsumP=i.gsumP),(isNaN(e.gsumN)||i.gsumN<e.gsumN)&&(e.gsumN=i.gsumN),(isNaN(e.logBase)||i.logBase<e.logBase)&&(e.logBase=i.logBase),(isNaN(e.minPercent)||i.minPercent<e.minPercent)&&(e.minPercent=i.minPercent),e.gsumN>0&&(e.gmin=Math.min(e.gmin,e.gbase+e.gsumN)),e.gsumP>0&&(e.gmax=Math.max(e.gmax,e.gbase+e.gsumP))}for(let t=0;t<this.seriesGroups.length;t++){if(this.seriesGroups[t].valueAxis)continue;let i=this._stats.seriesGroups[t].context;for(let t in e)i[t]=e[t]}}_calcOutputGroupStats(e){let t=e.gmin,i=e.gmax,r=e.gsumP,s=e.gsumN,a=e.gbase,l=e.isLogAxis,n=e.logBase,o=e.minPercent,h=e.gMaxRange,d=e.isStacked,u=e.isStacked100,g=e.isWaterfall,f=e.hasStackValueReversal,p=e.valueAxis,c=e.valueAxisSize,m=e.valueAxis.unitInterval;m||(m=this._calcInterval(t,i,Math.max(c/80,2))),t===i&&(t=a,i*=2);let y=NaN,_=0,x=0;if(l){if(u){y=0;let e=1;for(_=x=this._draw.log(100,n);e>o;)e/=n,_--,y++;t=Math.pow(n,_)}else d&&!g&&(i=Math.max(i,r)),x=this.renderer._rnd(this._draw.log(i,n),1,!0),i=Math.pow(n,x),_=this.renderer._rnd(this._draw.log(t,n),1,!1),t=Math.pow(n,_);m=n}t<s&&(s=t),i>r&&(r=i);let v=t,b=i;if(l||0!=Math.abs(b-v)%m&&(v=this.renderer._rnd(t,m,!1),b=this.renderer._rnd(i,m,!0)),u&&b>100&&(b=100),u&&!l&&(b=b>0?100:0,v=v<0?-100:0,m=p.unitInterval,(isNaN(m)||m<=0||m>=100)&&(m=10),100%m!=0))for(;m>=1&&100%m!=0;m--);return isNaN(b)||isNaN(v)||isNaN(m)?{}:(isNaN(y)&&(y=parseInt(((b-v)/(0===m?1:m)).toFixed())),l&&!u&&(y=x-_,h=Math.pow(n,y)),y<1?{}:{min:v,max:b,logarithmic:l,logBase:n,base:l?v:a,minPow:_,maxPow:x,sumP:r,sumN:s,mu:m,maxRange:h,intervals:y,hasStackValueReversal:f})}_getDataLen(e){let t=this.dataSource;return null!=e&&-1!==e&&this.seriesGroups[e].dataSource&&(t=this.seriesGroups[e].dataSource),t?t.length:0}_getDataValue(e,t,i){let r=this.dataSource;if(null!=i&&-1!==i&&(r=this.seriesGroups[i].dataSource||r),!(!r||e<0||e>r.length-1))return"function"==typeof t?t(e,r):t&&""!==t?r[e][t]:r[e]}_getDataValueAsNumber(e,t,i){let r=this._getDataValue(e,t,i);return this._isDate(r)?r.valueOf():("number"!=typeof r&&(r=parseFloat(r)),"number"!=typeof r&&(r=void 0),r)}_isPieGroup(e){let t=this.seriesGroups[e];return!(!t||!t.type||-1===t.type.indexOf("pie")&&-1===t.type.indexOf("donut"))}_renderPieSeries(e,t){let i=this._getDataLen(e),r=this.seriesGroups[e],s=this._calcGroupOffsets(e,t).offsets;for(let a=0;a<r.series.length;a++){let l=r.series[a];if(l.customDraw)continue;let n=this._getSerieSettings(e,a),o=this._getAnimProps(e,a),h=o.enabled&&i<5e3&&!this._isToggleRefresh&&o.duration;this._isTouchDevice&&this.renderer instanceof Smart.Utilities.HTML5Renderer&&(h=0);let d=this._get([l.minAngle,l.startAngle]);(isNaN(d)||d<0||d>360)&&(d=0);let u=this._get([l.maxAngle,l.endAngle]);(isNaN(u)||u<0||u>360)&&(u=360);let g={rect:t,minAngle:d,maxAngle:u,groupIndex:e,serieIndex:a,settings:n,items:[]};for(let t=0;t<i;t++){let i=s[a][t];if(!i.visible)continue;let r=i.fromAngle,l=i.toAngle,n=this.renderer.pieslice(i.x,i.y,i.innerRadius,i.outerRadius,r,0===h?l:r,i.centerOffset);this._setRenderInfo(e,a,t,{element:n});let o={displayValue:i.displayValue,itemIndex:t,visible:i.visible,x:i.x,y:i.y,innerRadius:i.innerRadius,outerRadius:i.outerRadius,fromAngle:r,toAngle:l,centerOffset:i.centerOffset};g.items.push(o)}this._animatePieSlices(g,0);let f=this;this._enqueueAnimation("series",void 0,void 0,h,(function(e,t,i){f._animatePieSlices(t,i)}),g)}}_sliceSortFunction(e,t){return e.fromAngle-t.fromAngle}_animatePieSlices(e,t){var i;this._elementRenderInfo&&this._elementRenderInfo.length>e.groupIndex&&this._elementRenderInfo[e.groupIndex].series&&this._elementRenderInfo[e.groupIndex].series.length>e.serieIndex&&(i=this._elementRenderInfo[e.groupIndex].series[e.serieIndex]);var r=this._getLabelsSettings(e.groupIndex,e.serieIndex,NaN),s=r.visible,a=[];for(let r=0;r<e.items.length;r++){const s=e.items[r];if(!s.visible)continue;let h=s.fromAngle;var l=s.fromAngle+t*(s.toAngle-s.fromAngle);if(i&&i[s.displayValue]){var n=i[s.displayValue].fromAngle,o=i[s.displayValue].toAngle;h=n+(h-n)*t,l=o+(l-o)*t}a.push({index:r,from:h,to:l})}i&&a.sort(this._sliceSortFunction);var h=NaN;for(let l=0;l<a.length;l++){const n=e.items[a[l].index];var d=this._getRenderInfo(e.groupIndex,e.serieIndex,n.itemIndex);let o=a[l].from,p=a[l].to;i&&(!isNaN(h)&&o>h&&(o=h),h=p,l===a.length-1&&p!==a[0].from&&(p=e.maxAngle+a[0].from));var u=this.renderer.pieSlicePath(n.x,n.y,n.innerRadius,n.outerRadius,o,p,n.centerOffset);this.renderer.attr(d.element,{d:u});var g=this._getColors(e.groupIndex,e.serieIndex,n.itemIndex,"radialGradient",n.outerRadius),f=e.settings;d.colors=g,d.settings=f,this.renderer.attr(d.element,{fill:g.fillColor,stroke:g.lineColor,"stroke-width":f.stroke,"fill-opacity":f.opacity,"stroke-opacity":f.opacity,"stroke-dasharray":"none"}),s&&this._showPieLabel(e.groupIndex,e.serieIndex,n.itemIndex,r,void 0,d.colors.lineColor),1===t&&this._installHandlers(d.element,"pieslice",e.groupIndex,e.serieIndex,n.itemIndex)}}_showPieLabel(e,t,i,r,s){let a=this._renderData[e].offsets[t][i];if(a.elementInfo.labelElement&&this.renderer.removeElement(a.elementInfo.labelElement),r||(r=this._getLabelsSettings(e,t,NaN)),!r.visible)return;let l=a.fromAngle,n=a.toAngle,o=Math.abs(l-n);o>360&&(l=0,n=360);let h=o/2+l;h%=360;let d,u=h*Math.PI*2/360;!0===r.autoRotate&&(d=h<90||h>270?360-h:180-h);let g=r.linesEnabled,f=this._showLabel(e,t,i,{x:0,y:0,width:0,height:0},"center","center",!0,!1,!1,d),p=r.radius||a.outerRadius+Math.max(f.width,f.height);this._isPercent(p)&&(p=parseFloat(p)/100*Math.min(this._plotRect.width,this._plotRect.height)/2),p+=a.centerOffset,isNaN(s)&&(s=0),p+=s;let c=this.seriesGroups[e],m=c.series[t],y=this._draw.getNum([m.offsetX,c.offsetX,this._plotRect.width/2]),_=this._draw.getNum([m.offsetY,c.offsetY,this._plotRect.height/2]),x=this._plotRect.x+y,v=this._plotRect.y+_,b=this._adjustTextBoxPosition(x,v,f,p,h,a.outerRadius>p,!1!==r.linesAngles,!0===r.autoRotate);const N={},M=b.x<x?0:f.width/2,A=Math.sqrt(Math.pow(b.x-x,2)+Math.pow(b.y-v,2))+M<a.outerRadius?arguments[5]:void 0;if(a.elementInfo.labelElement=this._showLabel(e,t,i,{x:b.x,y:b.y,width:f.width,height:f.height},"left","top",!1,!1,!1,d,N,A),p>a.outerRadius+s+5&&!1!==g){let e={lineColor:a.elementInfo.colors.lineColor,stroke:a.elementInfo.settings.stroke,opacity:a.elementInfo.settings.opacity,dashStyle:a.elementInfo.settings.dashStyle};a.elementInfo.labelArrowPath=this._updateLebelArrowPath(a.elementInfo.labelArrowPath,x,v,p,a.outerRadius+s,u,!1!==r.linesAngles,e,N)}}_updateLebelArrowPath(e,t,i,r,s,a,l,n,o){const h=this.renderer;let d=h._ptrnd(t+(r-0)*Math.cos(a)),u=h._ptrnd(i-(r-0)*Math.sin(a)),g=h._ptrnd(t+(s+2)*Math.cos(a)),f=h._ptrnd(i-(s+2)*Math.sin(a)),p=[];p.push({x:o.x+o.width/2,y:o.y}),p.push({x:o.x+o.width/2,y:o.y+o.height}),p.push({x:o.x,y:o.y+o.height/2}),p.push({x:o.x+o.width,y:o.y+o.height/2}),l||(p.push({x:o.x,y:o.y}),p.push({x:o.x+o.width,y:o.y}),p.push({x:o.x+o.width,y:o.y+o.height}),p.push({x:o.x,y:o.y+o.height})),p=p.sort((function(e,r){return h._ptdist(e.x,e.y,t,i)-h._ptdist(r.x,r.y,t,i)})),p=p.sort((function(e,r){return Math.abs(e.x-t)+Math.abs(e.y-i)-(Math.abs(r.x-t)+Math.abs(r.y-i))}));for(let e=0;e<p.length;e++)p[e].x=h._ptrnd(p[e].x),p[e].y=h._ptrnd(p[e].y);d=p[0].x,u=p[0].y;let c="M "+d+","+u+" L"+g+","+f;return l&&(c="M "+d+","+u+" L"+g+","+u+" L"+g+","+f),e?h.attr(e,{d:c}):e=h.path(c,{}),h.attr(e,{fill:"none",stroke:n.lineColor,"stroke-width":n.stroke,"stroke-opacity":n.opacity,"stroke-dasharray":"none"}),e}_adjustTextBoxPosition(e,t,i,r,s,a,l,n){let o=s*Math.PI*2/360,h=this.renderer._ptrnd(e+r*Math.cos(o)),d=this.renderer._ptrnd(t-r*Math.sin(o));if(n){let s=i.width,a=i.height,l=Math.atan(a/s)%(2*Math.PI),n=o%(2*Math.PI),h=0;n<=l?h=s/2*Math.cos(o):n>=l&&n<Math.PI-l?h=a/2*Math.sin(o):n>=Math.PI-l&&n<Math.PI+l?h=s/2*Math.cos(o):n>=Math.PI+l&&n<2*Math.PI-l?h=a/2*Math.sin(o):n>=2*Math.PI-l&&n<2*Math.PI&&(h=s/2*Math.cos(o)),r+=Math.abs(h)+3;let d=this.renderer._ptrnd(e+r*Math.cos(o)),u=this.renderer._ptrnd(t-r*Math.sin(o));return d-=i.width/2,u-=i.height/2,{x:d,y:u}}return a?(h-=i.width/2,d-=i.height/2):l?s>=90&&s<270?(d-=i.height/2,h-=i.width):d-=i.height/2:s>=0&&s<45||s>=315&&s<360?d-=i.height/2:s>=45&&s<135?(d-=i.height,h-=i.width/2):s>=135&&s<225?(d-=i.height/2,h-=i.width):s>=225&&s<315&&(h-=i.width/2),{x:h,y:d}}_isColumnType(e){return-1!==e.indexOf("column")||-1!==e.indexOf("waterfall")}_getColumnGroupsCount(e){let t=0;e=e||"vertical";let i=this.seriesGroups;for(let r=0;r<i.length;r++){let s=i[r].orientation||"vertical";this._isColumnType(i[r].type)&&s===e&&t++}return this.columnSeriesOverlap&&(t=1),t}_getColumnGroupIndex(e){let t=0,i=this.seriesGroups[e].orientation||"vertical";for(let r=0;r<e;r++){let e=this.seriesGroups[r],s=e.orientation||"vertical";this._isColumnType(e.type)&&s===i&&t++}return t}_renderAxisBands(e,t,i){var r=i?this._getXAxis(e):this._getValueAxis(e),s=this.seriesGroups[e],a=i?void 0:s.bands;if(!a){for(let t=0;t<e;t++)if((i?this._getXAxis(t):this._getValueAxis(t))===r)return;a=r.bands}if(Array.isArray(a)){var l=t,n="horizontal"===s.orientation;n&&(l={x:t.y,y:t.x,width:t.height,height:t.width}),this._calcGroupOffsets(e,l);for(let r=0;r<a.length;r++){var o=a[r],h=o.minValue,d=o.maxValue,u=i?this.getXAxisDataPointOffset(h,e):this.getValueAxisDataPointOffset(h,e),g=i?this.getXAxisDataPointOffset(d,e):this.getValueAxisDataPointOffset(d,e);if(!isNaN(u)&&!isNaN(g)){var f,p=Math.abs(u-g);if(s.polar||s.spider){var c=this._renderData[e],m=c.polarCoords;if(i)if(s.spider){const t=this.getPolarDataPointOffset(h,this._stats.seriesGroups[e].max,e),i=this.getPolarDataPointOffset(d,this._stats.seriesGroups[e].max,e);let r="M "+m.x+","+m.y;r+=" L "+t.x+","+t.y,r+=" L "+i.x+","+i.y,f=this.renderer.path(r)}else{var y={},_={x:Math.min(u,g),y:t.y,width:p,height:t.height};this._columnAsPieSlice(y,t,m,_),f=y.element}else{var x=this._toPolarCoord(m,t,t.x,c.baseOffset),v=this._toPolarCoord(m,t,t.x,u),b=this._toPolarCoord(m,t,t.x,g),N=this.renderer._ptdist(x.x,x.y,v.x,v.y),M=this.renderer._ptdist(x.x,x.y,b.x,b.y),A=Math.round(360*-m.startAngle/(2*Math.PI)),w=Math.round(360*-m.endAngle/(2*Math.PI));if(A>w){const e=A;A=w,w=e}if(s.spider){var S=c.xAxis.offsetAngles;let e="";var C=[M,N],k=S;for(var D in m.isClosedCircle&&(k=S.slice(0)).push(k[0]),C){for(let t=0;t<k.length;t++){var T=0===D?t:S.length-t-1;let i=m.x+C[D]*Math.cos(k[T]),r=m.y+C[D]*Math.sin(k[T]);e+=""===e?"M ":" L",e+=this.renderer._ptrnd(i)+","+this.renderer._ptrnd(r)}if(0===D){let t=m.x+C[1]*Math.cos(k[T]),i=m.y+C[1]*Math.sin(k[T]);e+=" L"+this.renderer._ptrnd(t)+","+this.renderer._ptrnd(i)}}e+=" Z",f=this.renderer.path(e)}else f=this.renderer.pieslice(m.x,m.y,N,M,A,w)}}else{var F={x:Math.min(u,g),y:l.y,width:p,height:l.height};if(i||(F={x:l.x,y:Math.min(u,g),width:l.width,height:p}),n){let e=F.x;F.x=F.y,F.y=e,e=F.width,F.width=F.height,F.height=e}f=0===p||1===p?this.renderer.line(this.renderer._ptrnd(F.x),this.renderer._ptrnd(F.y),this.renderer._ptrnd(F.x+(n?0:F.width)),this.renderer._ptrnd(F.y+(n?F.height:0))):this.renderer.rect(F.x,F.y,F.width,F.height)}var O=o.color||this._getThemeColor("band"),I=o.lineColor||O,P=o.lineWidth;isNaN(P)&&(P=1);var R=o.opacity;(isNaN(R)||R<0||R>1)&&(R=1),this.renderer.attr(f,{fill:O,"fill-opacity":R,stroke:I,"stroke-opacity":R,"stroke-width":P,"stroke-dasharray":o.dashStyle})}}}}_getColumnGroupWidth(e,t,i){let r=this.seriesGroups[e],s=-1!==r.type.indexOf("stacked"),a=this._getColumnGroupsCount(r.orientation);(isNaN(a)||0===a)&&(a=1);let l=t.rangeLength>=1?t.itemWidth:.9*i,n=r.columnsMinWidth;isNaN(n)&&(n=1),isNaN(r.columnsMaxWidth)||(n=Math.min(r.columnsMaxWidth,n)),n>l&&t.length>0&&(l=Math.max(l,.9*i/t.length));let o=n;if(!s){let e=r.seriesGapPercent;(isNaN(e)||e<0)&&(e=10),e/=100;let t=n;t*=1+e,o+=r.series.length*t}return{requiredWidth:o,availableWidth:l,targetWidth:Math.max(l/a,o)}}_getColumnSerieWidthAndOffset(e,t){let i=this.seriesGroups[e],r="horizontal"===i.orientation,s=this._plotRect;r&&(s={x:s.y,y:s.x,width:s.height,height:s.width});let a=this._calcGroupOffsets(e,s);if(!a||0===a.xoffsets.length)return;let l=this._getColumnGroupsCount(i.orientation);"candlestick"!==i.type&&"ohlc"!==i.type||(l=1);let n=this._getColumnGroupIndex(e),o=this._getColumnGroupWidth(e,a.xoffsets,r?s.height:s.width),h=0,d=o.targetWidth;(!0===this.columnSeriesOverlap||Math.round(d)>Math.round(o.availableWidth/l))&&(l=1,n=0),h-=d*l/2,h+=d*n;let u=i.columnsGapPercent;u<=0&&(u=0),(isNaN(u)||u>=100)&&(u=25),u/=100;let g=d*u;g+o.requiredWidth>o.targetWidth&&(g=Math.max(0,o.targetWidth-o.requiredWidth)),Math.round(d)>Math.round(o.availableWidth)&&(g=0),d-=g,h+=g/2;let f=i.seriesGapPercent;(isNaN(f)||f<0)&&(f=10);let p=-1!==i.type.indexOf("stacked"),c=d;p||(c/=i.series.length);let m=this._get([i.seriesGap,d*f/100/(i.series.length-1)]);(!0===i.polar||!0===i.spider||p||i.series.length<=1)&&(m=0);let y=m*(i.series.length-1);i.series.length>1&&y>d-1*i.series.length&&(y=d-1*i.series.length,m=y/Math.max(1,i.series.length-1));let _=c-y/i.series.length,x=0,v=i.columnsMaxWidth;isNaN(v)||_>v&&(x=_-v,_=v);let b=0;return b=p?x/2:(d-_*i.series.length-y)/2+_*t+Math.max(0,t)*m,{width:_,offset:h+b}}_renderColumnSeries(e,t){let i=this.seriesGroups[e];if(!i.series||0===i.series.length)return;let r="horizontal"===i.orientation,s=t;r&&(s={x:t.y,y:t.x,width:t.height,height:t.width});let a,l=this._calcGroupOffsets(e,s);if(!l||0===l.xoffsets.length)return;!0!==i.polar&&!0!==i.spider||(a=this._getPolarAxisCoords(e,s));let n={groupIndex:e,rect:t,vertical:!r,seriesCtx:[],renderData:l,polarAxisCoords:a};n.columnGroupWidth=this._getColumnGroupWidth(e,l.xoffsets,r?s.height:s.width);let o,h=this._getGroupGradientType(e);for(let t=0;t<i.series.length;t++){let r=i.series[t];if(r.customDraw)continue;let s=this._getAnimProps(e,t);o=s.enabled&&!this._isToggleRefresh&&l.xoffsets.length<100?s.duration:0;let d=this._getColumnSerieWidthAndOffset(e,t),u=this._isSerieVisible(e,t),g=this._getSerieSettings(e,t),f=this._getColors(e,t,NaN,this._getGroupGradientType(e),4),p=[];if("function"==typeof r.colorFunction&&!a)for(let i=l.xoffsets.first;i<=l.xoffsets.last;i++)p.push(this._getColors(e,t,i,h,4));let c={seriesIndex:t,serieColors:f,itemsColors:p,settings:g,columnWidth:d.width,xAdjust:d.offset,isVisible:u};n.seriesCtx.push(c)}this._animColumns(n,0===o?1:0);let d=this;this._enqueueAnimation("series",void 0,void 0,o,(function(e,t,i){d._animColumns(t,i)}),n)}_getPercent(e,t,i,r){return isNaN(e)&&(e=t),!isNaN(i)&&!isNaN(e)&&e<i&&(e=i),!isNaN(r)&&!isNaN(e)&&e>r&&(e=r),isNaN(e)?NaN:e}_getColumnVOffsets(e,t,i,r,s,a){var l=this.seriesGroups[t],n=this._getPercent(l.columnsTopWidthPercent,100,0,100),o=this._getPercent(l.columnsBottomWidthPercent,100,0,100);0===n&&0===o&&(o=100);var h=this._getPercent(l.columnsNeckHeightPercent,NaN,0,100)/100,d=this._getPercent(l.columnsNeckWidthPercent,100,0,100)/100,u=[],g=NaN;for(let l=0;l<i.length;l++){var f,p=i[l],c=p.seriesIndex,m=e.offsets[c][r].from,y=e.offsets[c][r].to,_=e.xoffsets.data[r],x=p.isVisible;x||(y=m);var v=this._elementRenderInfo;if(x&&v&&v.length>t&&v[t].series.length>c){var b=e.xoffsets.xvalues[r];!(f=v[t].series[c][b])||isNaN(f.from)||isNaN(f.to)||(m=f.from+(m-f.from)*a,y=f.to+(y-f.to)*a,_=f.xoffset+(_-f.xoffset)*a)}f||(y=m+(y-m)*(s?1:a)),isNaN(m)&&(m=isNaN(g)?e.baseOffset:g),g=!isNaN(y)&&s?y:m,isNaN(y)&&(y=m);var N={from:m,to:y,xOffset:_};100===n&&100===o||(N.funnel=!0,N.toWidthPercent=n,N.fromWidthPercent=o),u.push(N)}if(s&&u.length>1&&!(this._elementRenderInfo&&this._elementRenderInfo.length>t)){var M=0,A=0,w=-1/0,S=1/0,C=1/0,k=-1/0;for(let e=0;e<u.length;e++)i[e].isVisible&&(u[e].to>=u[e].from?(A+=u[e].to-u[e].from,C=Math.min(C,u[e].from),k=Math.max(k,u[e].to)):(M+=u[e].from-u[e].to,w=Math.max(w,u[e].from),S=Math.min(S,u[e].to)));var D=M,T=A;M*=a,A*=a;var F=0,O=0;for(let e=0;e<u.length;e++)if(u[e].to>=u[e].from){let t=u[e].to-u[e].from;t+O>A&&(t=Math.max(0,A-O),u[e].to=u[e].from+t),100===n&&100===o||(u[e].funnel=!0,!isNaN(h)&&T*h>=O?u[e].fromWidthPercent=100*d:u[e].fromWidthPercent=Math.abs(u[e].from-C)/T*(n-o)+o,!isNaN(h)&&T*h>=0+(O+t)?u[e].toWidthPercent=100*d:u[e].toWidthPercent=Math.abs(u[e].to-C)/T*(n-o)+o),O+=t}else{let t=u[e].from-u[e].to;t+F>M&&(t=Math.max(0,M-F),u[e].to=u[e].from-t),100===n&&100===o||(u[e].funnel=!0,!isNaN(h)&&D*h>=F?u[e].fromWidthPercent=100*d:u[e].fromWidthPercent=Math.abs(u[e].from-w)/D*(n-o)+o,!isNaN(h)&&D*h>=0+(F+t)?u[e].toWidthPercent=100*d:u[e].toWidthPercent=Math.abs(u[e].to-w)/D*(n-o)+o),F+=t}}return u}_columnAsPieSlice(e,t,i,r){let s=this._toPolarCoord(i,t,r.x,r.y),a=this._toPolarCoord(i,t,r.x,r.y+r.height),l=this.renderer._ptdist(i.x,i.y,a.x,a.y),n=this.renderer._ptdist(i.x,i.y,s.x,s.y),o=t.width,h=180*Math.abs(i.startAngle-i.endAngle)/Math.PI,d=-(r.x-t.x)*h/o,u=-(r.x+r.width-t.x)*h/o,g=i.startAngle;if(g=360*g/(2*Math.PI),d-=g,u-=g,e)if(void 0!==e.element&&null!==e.element){let t=this.renderer.pieSlicePath(i.x,i.y,l,n,u,d,0);t+=" Z",this.renderer.attr(e.element,{d:t})}else e.element=this.renderer.pieslice(i.x,i.y,l,n,u,d,0);return{fromAngle:u,toAngle:d,innerRadius:l,outerRadius:n}}_setRenderInfo(e,t,i,r){this._renderData[e].offsets[t][i].elementInfo=r}_getRenderInfo(e,t,i){return this._renderData[e].offsets[t][i].elementInfo||{}}_animColumns(e,t){var i=this,r=e.groupIndex,s=this.seriesGroups[r],a=e.renderData,l=-1!==s.type.indexOf("waterfall"),n=this._getXAxis(r),o=-1!==s.type.indexOf("stacked"),h=e.polarAxisCoords,d=-1;for(let e=0;e<s.series.length;e++)if(this._isSerieVisible(r,e)){d=e;break}var u=NaN,g=NaN;for(let t=0;t<e.seriesCtx.length;t++){var f=e.seriesCtx[t];(isNaN(u)||u>f.xAdjust)&&(u=f.xAdjust),(isNaN(g)||g<f.xAdjust+f.columnWidth)&&(g=f.xAdjust+f.columnWidth)}var p=Math.abs(g-u),c=this._get([s.columnsGapPercent,25])/100;(isNaN(c)<0||c>=1)&&(c=.25);var m=c*p,y=e.renderData.xoffsets,_=-1,x={},v=!0===s.skipOverlappingPoints;for(let u=y.first;u<=y.last;u++){var b=y.data[u];if(!(isNaN(b)||-1!==_&&Math.abs(b-_)<p-1+m&&v)){_=b;var N=this._getColumnVOffsets(a,r,e.seriesCtx,u,o,t),M=!1;if(l)for(let e=0;e<s.series.length;e++)s.series[e].summary&&y.xvalues[u][s.series[e].summary]&&(M=!0);for(let g=0;g<e.seriesCtx.length;g++){let f=e.seriesCtx[g];var A=f.seriesIndex,w=s.series[A],S=N[g].from,C=N[g].to,k=N[g].xOffset,D=(e.vertical?e.rect.x:e.rect.y)+f.xAdjust,T=f.settings;let p=0!==f.itemsColors.length?f.itemsColors[u-a.xoffsets.first]:f.serieColors;var F=this._isSerieVisible(r,A);if(!F)continue;let c=this.renderer._ptrnd(D+k);var O={x:c,width:f.columnWidth};N[g].funnel&&(O.fromWidthPercent=N[g].fromWidthPercent,O.toWidthPercent=N[g].toWidthPercent);var I=!0;e.vertical?(O.y=S,O.height=C-S,O.height<0&&(O.y+=O.height,O.height=-O.height,I=!1)):(O.x=S<C?S:C,O.width=Math.abs(S-C),I=S-C<0,O.y=c,O.height=f.columnWidth);var P=S-C;if(!isNaN(P)){P=Math.abs(P);var R=void 0,L=i._getRenderInfo(r,A,u),G=L.element,V=L.labelElement,E=null==G;if(V&&(i.renderer.removeElement(V),V=void 0),h){var B={element:G};R=this._columnAsPieSlice(B,e.rect,h,O),G=B.element,p=this._getColors(r,A,void 0,"radialGradient",R.outerRadius)}else if(N[g].funnel){var H=this._getTrapezoidPath(Object.assign({},O),e.vertical,I);E?G=this.renderer.path(H,{}):this.renderer.attr(G,{d:H})}else E?G=this.renderer.rect(O.x,O.y,e.vertical?O.width:0,e.vertical?0:O.height):!0===e.vertical?this.renderer.attr(G,{x:O.x,y:O.y,height:P}):this.renderer.attr(G,{x:O.x,y:O.y,width:P});if(P<1&&(1!==t||h)?this.renderer.attr(G,{display:"none"}):this.renderer.attr(G,{display:"block"}),E&&this.renderer.attr(G,{fill:p.fillColor,"fill-opacity":T.opacity,"stroke-opacity":T.opacity,stroke:p.lineColor,"stroke-width":T.stroke,"stroke-dasharray":T.dashStyle}),V&&this.renderer.removeElement(V),!F||0===P&&t<1)L={element:G,labelElement:V},i._setRenderInfo(r,A,u,L);else{if(l&&!1!==this._get([w.showWaterfallLines,s.showWaterfallLines])){if(!o||o&&g===d){var z=o?-1:g;if(1===t&&!isNaN(a.offsets[g][u].from)&&!isNaN(a.offsets[g][u].to)){var W=x[z];if(null!=W){var j={x:W.x,y:this.renderer._ptrnd(W.y)},X={x:c,y:j.y},U=s.columnsTopWidthPercent/100;(isNaN(U)||U>1||U<0)&&(U=1);var Y=s.columnsBottomWidthPercent/100;(isNaN(Y)||Y>1||Y<0)&&(Y=1);var q=e.vertical?O.width:O.height;if(j.x=j.x-q/2+q/2*U,M){let e=q*U/2;X.x=X.x+q/2-(n.flip?-e:e)}else{let e=q*Y/2;X.x=X.x+q/2-(n.flip?-e:e)}e.vertical||(this._swapXY([j]),this._swapXY([X])),this.renderer.line(j.x,j.y,X.x,X.y,{stroke:W.color,"stroke-width":T.stroke,"stroke-opacity":T.opacity,"fill-opacity":T.opacity,"stroke-dasharray":T.dashStyle})}}}1===t&&0!==P&&(x[o?-1:g]={y:C,x:e.vertical?O.x+O.width:O.y+O.height,color:p.lineColor})}if(h){let e=this._showLabel(r,A,u,O,void 0,void 0,!0);var Z=R.outerRadius+10;const t=this._adjustTextBoxPosition(h.x,h.y,e,Z,(R.fromAngle+R.toAngle)/2,!0,!1,!1);V=this._showLabel(r,A,u,{x:t.x,y:t.y},void 0,void 0,!1,!1,!1)}else V=this._showLabel(r,A,u,O,void 0,void 0,!1,!1,I);L={element:G,labelElement:V},i._setRenderInfo(r,A,u,L),1===t&&this._installHandlers(G,"column",r,A,u)}}}}}}_getTrapezoidPath(e,t,i){let r="",s=e.fromWidthPercent/100,a=e.toWidthPercent/100;if(!t){let t=e.width;e.width=e.height,e.height=t,t=e.x,e.x=e.y,e.y=t}let l=e.x+e.width/2,n=[{x:l-e.width*(i?a:s)/2,y:e.y+e.height},{x:l-e.width*(i?s:a)/2,y:e.y},{x:l+e.width*(i?s:a)/2,y:e.y},{x:l+e.width*(i?a:s)/2,y:e.y+e.height}];t||this._swapXY(n),r+="M "+this.renderer._ptrnd(n[0].x)+","+this.renderer._ptrnd(n[0].y);for(let e=1;e<n.length;e++)r+=" L "+this.renderer._ptrnd(n[e].x)+","+this.renderer._ptrnd(n[e].y);return r+=" Z",r}_swapXY(e){for(let t=0;t<e.length;t++){let i=e[t].x;e[t].x=e[t].y,e[t].y=i}}_renderCandleStickSeries(e,t,i){let r=this,s=r.seriesGroups[e];if(!s.series||0===s.series.length)return;let a="horizontal"===s.orientation,l=t;a&&(l={x:t.y,y:t.x,width:t.height,height:t.width});let n,o=r._calcGroupOffsets(e,l);if(!o||0===o.xoffsets.length)return;(s.polar||s.spider)&&(n=r._getPolarAxisCoords(e,l));let h=r._getGroupGradientType(e),d=[];for(let t=0;t<s.series.length;t++)d[t]=r._getColumnSerieWidthAndOffset(e,t);for(let l=0;l<s.series.length;l++){if(!this._isSerieVisible(e,l))continue;let u=r._getSerieSettings(e,l),g=s.series[l];if(g.customDraw)continue;let f="function"==typeof g.colorFunction?void 0:r._getColors(e,l,NaN,h),p={rect:t,inverse:a,groupIndex:e,seriesIndex:l,symbolType:g.symbolType,symbolSize:g.symbolSize,"fill-opacity":u.opacity,"stroke-opacity":u.opacity,"stroke-width":u.stroke,"stroke-dasharray":u.dashStyle,gradientType:h,colors:f,renderData:o,polarAxisCoords:n,columnsInfo:d,isOHLC:i,items:[],self:r},c=r._getAnimProps(e,l),m=c.enabled&&!r._isToggleRefresh&&o.xoffsets.length<5e3?c.duration:0;r._animCandleStick(p,0),r._enqueueAnimation("series",void 0,void 0,m,(function(e,t,i){r._animCandleStick(t,i,e)}),p)}}_animCandleStick(e,t){var i=["Open","Low","Close","High"],r=e.columnsInfo[e.seriesIndex].width,s=e.self.seriesGroups[e.groupIndex],a=e.renderData.xoffsets,l=-1,n=Math.abs(a.data[a.last]-a.data[a.first]);n*=t;var o=NaN,h=NaN;for(let t=0;t<e.columnsInfo.length;t++){var d=e.columnsInfo[t];(isNaN(o)||o>d.offset)&&(o=d.offset),(isNaN(h)||h<d.offset+d.width)&&(h=d.offset+d.width)}var u=Math.abs(h-o),g=!1!==s.skipOverlappingPoints;for(let o=a.first;o<=a.last;o++){var f=a.data[o];if(!(isNaN(f)||-1!==l&&Math.abs(f-l)<u&&g)){if(Math.abs(a.data[o]-a.data[a.first])>n)break;l=f;var p=e.items[o]=e.items[o]||{};for(let t in i){var c=e.self._getDataValueAsNumber(o,s.series[e.seriesIndex]["dataField"+i[t]],e.groupIndex);if(isNaN(c))break;var m=e.renderData.offsets[e.seriesIndex][o][i[t]];if(isNaN(m))break;p[i[t]]=m}if(f+=e.inverse?e.rect.y:e.rect.x,e.polarAxisCoords){var y=this._toPolarCoord(e.polarAxisCoords,this._plotRect,f,m);f=y.x,m=y.y}for(var _ in f=this.renderer._ptrnd(f),i)p[_]=this.renderer._ptrnd(p[_]);var x=e.colors;if(x||(x=e.self._getColors(e.groupIndex,e.seriesIndex,o,e.gradientType)),e.isOHLC){var v="M"+f+","+p.Low+" L"+f+","+p.High+" M"+(f-r/2)+","+p.Open+" L"+f+","+p.Open+" M"+(f+r/2)+","+p.Close+" L"+f+","+p.Close;e.inverse&&(v="M"+p.Low+","+f+" L"+p.High+","+f+" M"+p.Open+","+(f-r/2)+" L"+p.Open+","+f+" M"+p.Close+","+f+" L"+p.Close+","+(f+r/2));let i=p.lineElement;i||(i=this.renderer.path(v,{}),this.renderer.attr(i,{fill:x.fillColor,"fill-opacity":e["fill-opacity"],"stroke-opacity":e["fill-opacity"],stroke:x.lineColor,"stroke-width":e["stroke-width"],"stroke-dasharray":e["stroke-dasharray"]}),p.lineElement=i),1===t&&this._installHandlers(i,"column",e.groupIndex,e.seriesIndex,o)}else{var b=p.lineElement;b||(b=e.inverse?this.renderer.line(p.Low,f,p.High,f):this.renderer.line(f,p.Low,f,p.High),this.renderer.attr(b,{fill:x.fillColor,"fill-opacity":e["fill-opacity"],"stroke-opacity":e["fill-opacity"],stroke:x.lineColor,"stroke-width":e["stroke-width"],"stroke-dasharray":e["stroke-dasharray"]}),p.lineElement=b);var N=p.stickElement;if(f-=r/2,!N){var M=x.fillColor;p.Close<=p.Open&&x.fillColorAlt&&(M=x.fillColorAlt),N=e.inverse?this.renderer.rect(Math.min(p.Open,p.Close),f,Math.abs(p.Close-p.Open),r):this.renderer.rect(f,Math.min(p.Open,p.Close),r,Math.abs(p.Close-p.Open)),this.renderer.attr(N,{fill:M,"fill-opacity":e["fill-opacity"],"stroke-opacity":e["fill-opacity"],stroke:x.lineColor,"stroke-width":e["stroke-width"],"stroke-dasharray":e["stroke-dasharray"]}),p.stickElement=N}1===t&&this._installHandlers(N,"column",e.groupIndex,e.seriesIndex,o)}}}}_renderScatterSeries(e,t,i){var r=this.seriesGroups[e];if(r.series&&0!==r.series.length){var s=-1!==r.type.indexOf("bubble"),a="horizontal"===r.orientation,l=t;a&&(l={x:t.y,y:t.x,width:t.height,height:t.width});var n=this._calcGroupOffsets(e,l);if(n&&0!==n.xoffsets.length){var o,h=l.width;(r.polar||r.spider)&&(h=2*(o=this._getPolarAxisCoords(e,l)).r);var d=this._getGroupGradientType(e);i||(i="to");for(let V=0;V<r.series.length;V++){var u=this._getSerieSettings(e,V),g=r.series[V];if(!g.customDraw){var f=g.dataField,p="function"==typeof g.colorFunction,c=this._getColors(e,V,NaN,d),m=NaN,y=NaN;if(s)for(let t=n.xoffsets.first;t<=n.xoffsets.last;t++){var _=this._getDataValueAsNumber(t,g.radiusDataField||g.sizeDataField,e);"number"!=typeof _&&this.error(this.localize("invalidRadiusDataField",{index:t})),isNaN(_)||((isNaN(m)||_<m)&&(m=_),(isNaN(y)||_>y)&&(y=_))}var x=g.minRadius||g.minSymbolSize;isNaN(x)&&(x=h/50);var v=g.maxRadius||g.maxSymbolSize;isNaN(v)&&(v=h/25),x>v&&(v=x);var b=g.radius;b=isNaN(b)&&!isNaN(g.symbolSize)?"circle"===g.symbolType?g.symbolSize/2:g.symbolSize:5;var N=this._getAnimProps(e,V),M=N.enabled&&!this._isToggleRefresh&&n.xoffsets.length<5e3?N.duration:0,A={groupIndex:e,seriesIndex:V,symbolType:g.symbolType,symbolSize:g.symbolSize,"fill-opacity":u.opacity,"stroke-opacity":u.opacity,"stroke-width":u.stroke,"stroke-width-symbol":u.strokeSymbol,"stroke-dasharray":u.dashStyle,items:[],polarAxisCoords:o},w=void 0;for(let r=n.xoffsets.first;r<=n.xoffsets.last;r++)if("number"==typeof this._getDataValueAsNumber(r,f,e)){var S=n.xoffsets.data[r],C=n.xoffsets.xvalues[r],k=n.offsets[V][r][i];if(!(k<l.y||k>l.y+l.height||isNaN(S)||isNaN(k))){if(a){var D=S;S=k,k=D+t.y}else S+=t.x;if(!(!p&&w&&this.enableSampling&&this.renderer._ptdist(w.x,w.y,S,k)<1)){w={x:S,y:k};var T=b;if(s){var F=this._getDataValueAsNumber(r,g.radiusDataField||g.sizeDataField,e);if("number"!=typeof F)continue;T=x+(v-x)*(F-m)/Math.max(1,y-m),isNaN(T)&&(T=x)}n.offsets[V][r].radius=T;var O=NaN,I=NaN,P=0,R=this._elementRenderInfo;if(null!=C&&R&&R.length>e&&R[e].series.length>V){var L=R[e].series[V][C];if(L&&!isNaN(L.to)){if(O=L.to,I=L.xoffset,P=b,a){let e=I;I=O,O=e+t.y}else I+=t.x;s&&(P=x+(v-x)*(L.valueRadius-m)/Math.max(1,y-m),isNaN(P)&&(P=x))}}p&&(c=this._getColors(e,V,r,d)),A.items.push({from:P,to:T,itemIndex:r,fill:c.fillColor,stroke:c.lineColor,x:S,y:k,xFrom:I,yFrom:O})}}}this._animR(A,0);var G=this;this._enqueueAnimation("series",void 0,void 0,M,(function(e,t,i){G._animR(t,i,e)}),A)}}}}}_animR(e,t){let i=e.items,r=e.symbolType||"circle",s=e.symbolSize;for(let a=0;a<i.length;a++){let l=i[a],n=l.x,o=l.y,h=Math.round((l.to-l.from)*t+l.from);if(isNaN(l.yFrom)||(o=l.yFrom+(o-l.yFrom)*t),isNaN(l.xFrom)||(n=l.xFrom+(n-l.xFrom)*t),e.polarAxisCoords){let t=this._toPolarCoord(e.polarAxisCoords,this._plotRect,n,o);n=t.x,o=t.y}n=this.renderer._ptrnd(n),o=this.renderer._ptrnd(o),h=this.renderer._ptrnd(h);let d=this._getRenderInfo(e.groupIndex,e.seriesIndex,i[a].itemIndex),u=d.element,g=d.labelElement;"circle"===r?(u||(u=this.renderer.circle(n,o,h),this.renderer.attr(u,{fill:l.fill,"fill-opacity":e["fill-opacity"],"stroke-opacity":e["fill-opacity"],stroke:l.stroke,"stroke-width":e["stroke-width"],"stroke-dasharray":e["stroke-dasharray"]})),this.renderer.attr(u,{r:h,cy:o,cx:n})):(u&&this.renderer.removeElement(u),u=this._drawSymbol(r,n,o,l.fill,e["fill-opacity"],l.stroke,e["stroke-opacity"]||e["fill-opacity"],e["stroke-width-symbol"],e["stroke-dasharray"],s||h)),g&&this.renderer.removeElement(g),g=this._showLabel(e.groupIndex,e.seriesIndex,l.itemIndex,{x:n-h,y:o-h,width:2*h,height:2*h}),t>=1&&this._installHandlers(u,"circle",e.groupIndex,e.seriesIndex,l.itemIndex),this._setRenderInfo(e.groupIndex,e.seriesIndex,i[a].itemIndex,{element:u,labelElement:g})}}_showMultiSeriesToolTip(e){let t=this,i="<div style='text-align:left'>",r="";for(let s=0;s<t.seriesGroups.length;s++){if(t._isPieGroup(s))continue;let a=t._getXAxis(s),l=t._getValueAxis(s),n=t.seriesGroups[s],o=this._getAxisSettings(a),h=this._getFormatSettings(o,"toolTipFormatSettings"),d=o.toolTipFormatFunction,u=t._getDataValue(e,a.dataField,s);void 0!==a.dataField&&null!==a.dataField&&""!==a.dataField||(u=e),"date"===a.type&&(u=t._castAsDate(u,(h?h.dateFormat:void 0)||a.dateFormat)),d||h||"date"!==a.type||(d=this._getDefaultDTFormatFn(a.baseUnit||"day"));let g=a.displayText||a.dataField||"";""!==g&&(g+=": ");let f=g+t._formatValue(u,h,d,s,void 0,e);r!==f&&(""!==r&&(i+="<br />"),i+=f+"<br /><br />",r=f);for(let r=0;r<n.series.length;r++){let a=n.series[r];if(!1===n.showToolTips||!1===a.showToolTips)continue;if(!t._isSerieVisible(s,r))continue;let o=t._get([t._getFormatSettings(a,"toolTipFormatSettings"),t._getFormatSettings(n,"toolTipFormatSettings"),t._getFormatSettings(l,"toolTipFormatSettings"),t._getFormatSettings(t,"toolTipFormatSettings")]),h=t._get([a.toolTipFormatFunction,n.toolTipFormatFunction,l.toolTipFormatFunction,t.toolTipFormatFunction]),d=t._getFormattedValue(s,r,e,o,h);i+='<span style="color:'+t._getColors(s,r,e).lineColor+';">'+d+"</span><br />\n"}}let s=this._get([t.toolTipClass,"smart-chart-tooltip-text"]),a=this._get([t.toolTipBackground,t._getThemeColor("background")]),l=this._get([t.toolTipLineColor,t._getThemeColor("line")]),n=this._get([t.toolTipOpacity,1]);i+="</div>";let o=this.getItemCoord(t._ttEl.gidx,t._ttEl.sidx,t._ttEl.iidx);o.x+=window.pageXOffset,o.y+=window.pageYOffset,t._createTooltip(o,t.seriesGroups[t._ttEl.gidx],i,{css:s,fill:a,stroke:l,fillOpacity:n,symbolSize:3})}_showToolTip(e,t,i,r,s){let a=this,l=a._getXAxis(i),n=a._getValueAxis(i);if(a._ttEl&&i===a._ttEl.gidx&&r===a._ttEl.sidx&&s===a._ttEl.iidx)return;let o=a.seriesGroups[i],h=o.series[r],d=a.enableCrosshairs;a._pointMarker?(e=parseInt(a._pointMarker.x+5),t=parseInt(a._pointMarker.y-5)):d=!1;let u=d&&!1===a.showToolTips;if(e=this.renderer._ptrnd(e),t=this.renderer._ptrnd(t),!1===o.showToolTips||!1===h.showToolTips)return;a._ttEl||(a._ttEl={}),a._ttEl.sidx=r,a._ttEl.gidx=i,a._ttEl.iidx=s;let g=0;for(let e=0;e<a.seriesGroups.length;e++)for(let t=0;t<a.seriesGroups[e].series.length;t++)g++;if(d){let e=this.renderer._ptrnd(a._pointMarker.x),t=this.renderer._ptrnd(a._pointMarker.y),r=a.crosshairsColor||a._getThemeColor("line");if(o.polar||o.spider){let s=this._getPolarAxisCoords(i,this._plotRect);if(this.renderer._ptdist(e,t,s.x,s.y)>s.r)return;let l=Math.atan2(t-s.y,e-s.x),n=Math.cos(l)*s.r+s.x,o=Math.sin(l)*s.r+s.y;a._ttEl.vLine?a.renderer.attr(a._ttEl.vLine,{x1:s.x,y1:s.y,x2:n,y2:o}):a._ttEl.vLine=a.renderer.line(s.x,s.y,n,o,{stroke:r,"stroke-width":a.crosshairsLineWidth||1,"stroke-dasharray":a.crosshairsDashStyle||""})}else a._ttEl.vLine&&a._ttEl.hLine?(a.renderer.attr(a._ttEl.vLine,{x1:e,x2:e}),a.renderer.attr(a._ttEl.hLine,{y1:t,y2:t})):(a._ttEl.vLine=a.renderer.line(e,a._plotRect.y,e,a._plotRect.y+a._plotRect.height,{stroke:r,"stroke-width":a.crosshairsLineWidth||1,"stroke-dasharray":a.crosshairsDashStyle||""}),a._ttEl.hLine=a.renderer.line(a._plotRect.x,t,a._plotRect.x+a._plotRect.width,t,{stroke:r,"stroke-width":a.crosshairsLineWidth||1,"stroke-dasharray":a.crosshairsDashStyle||""}))}if(a.showToolTipsOnAllSeries&&!a._isPieGroup(i)&&g>1)return void a._showMultiSeriesToolTip(s);let f=a._get([a._getFormatSettings(h,"toolTipFormatSettings"),a._getFormatSettings(o,"toolTipFormatSettings"),a._getFormatSettings(n,"toolTipFormatSettings"),a._getFormatSettings(a,"toolTipFormatSettings")]),p=a._get([h.toolTipFormatFunction,o.toolTipFormatFunction,n.toolTipFormatFunction,a.toolTipFormatFunction]),c=a._getColors(i,r,s),m=a._getDataValue(s,l.dataField,i);void 0!==l.dataField&&null!==l.dataField&&""!==l.dataField||(m=s),"date"===l.type&&(m=a._castAsDate(m,(f?f.dateFormat:void 0)||l.dateFormat));let y="";if("function"==typeof p){let e={},t=0;for(let r in h)0===r.indexOf("dataField")&&(e[r.substring(9,r.length).toLowerCase()]=a._getDataValue(s,h[r],i),t++);0===t?e=a._getDataValue(s,void 0,i):1===t&&(e=e[""]),y=p(e,s,h,o,m,l)}else{y=a._getFormattedValue(i,r,s,f,p);let e=this._getAxisSettings(l),t=a._getFormatSettings(e,"toolTipFormatSettings"),n=e.toolTipFormatFunction;n||t||"date"!==l.type||(n=this._getDefaultDTFormatFn(l.baseUnit||"day"));let o=a._formatValue(m,t,n,i,r,s);if(a._isPieGroup(i))m=a._getDataValue(s,h.displayText||h.dataField,i),o=a._formatValue(m,t,n,i,r,s),y=o+": "+y;else{let e=l.displayText||l.dataField||"";y=e.length>0?e+": "+o+"<br>"+y:o+"<br>"+y}}if(!u&&!1!==a.showToolTips){let e=this._get([h.toolTipClass,o.toolTipClass,a.toolTipClass,"smart-chart-tooltip-text"]),t=this._get([h.toolTipBackground,o.toolTipBackground,a.toolTipBackground,a._getThemeColor("background")]),l=this._get([h.toolTipLineColor,o.toolTipLineColor,a.toolTipLineColor,c.lineColor,a._getThemeColor("line")]),n=this._get([h.toolTipOpacity,o.toolTipOpacity,a.toolTipOpacity,1]),d=this.getItemCoord(i,r,s);d.y=Math.min(Math.max(d.y,this._plotRect.y),this._plotRect.y+this._plotRect.y+this._plotRect.height);let u=0;a._pointMarker&&a._pointMarker.element&&(u=h.symbolSizeSelected,isNaN(u)&&(u=h.symbolSize),(isNaN(u)||u>50||u<0)&&(u=o.symbolSize),(isNaN(u)||u>50||u<0)&&(u=8)),a._createTooltip(d,o,y,{css:e,fill:t,stroke:l,fillOpacity:n,symbolSize:u})}}_fitTooltip(e,t,i,r,s){let a={},l=2+s/2;if(t.x-i.width-7-l>e.x&&t.y+t.height/2-i.height/2>e.y&&t.y+t.height/2+i.height/2<e.y+e.height&&(a.left={arrowLocation:"right",x:t.x-i.width-7-l,y:t.y+t.height/2-i.height/2,width:i.width+7,height:i.height}),t.x+t.width+i.width+7+l<e.x+e.width&&t.y+t.height/2-i.height/2>e.y&&t.y+t.height/2+i.height/2<e.y+e.height&&(a.right={arrowLocation:"left",x:t.x+t.width+l,y:t.y+t.height/2-i.height/2,width:i.width+7,height:i.height}),t.y-i.height-l-7>e.y&&t.x+t.width/2-i.width/2>e.x&&t.x+t.width/2+i.width/2<e.x+e.width&&(a.top={arrowLocation:"bottom",x:t.x+t.width/2-i.width/2,y:t.y-i.height-l-7,width:i.width,height:i.height+7}),t.y+t.height+i.height+7+l<e.y+e.height&&t.x+t.width/2-i.width/2>e.x&&t.x+t.width/2+i.width/2<e.x+e.width&&(a.bottom={arrowLocation:"top",x:t.x+t.width/2-i.width/2,y:t.y+t.height+l,width:i.width,height:i.height+7}),t.width>t.height||(-1!==r.type.indexOf("stackedcolumn")||-1!==r.type.indexOf("stackedwaterfall"))&&"horizontal"!==r.orientation){if(a.left)return a.left;if(a.right)return a.right}else{if(a.top)return a.top;if(a.bottom)return a.bottom}for(let e in a)if(a[e])return a[e];return{arrowLocation:""}}_createTooltip(e,t,i,r){const s=this,a=t.type;let l=s._ttEl.box;if(!l){l=s._ttEl.box=document.createElement("div"),l.id=s.id+"Tooltip",l.className="smart-chart-tooltip",l.setAttribute("animation",s.animation),l.setAttribute("theme",s.theme),l.setAttribute("role","tooltip");const e=document.createElement("div"),t=document.createElement("div"),i=document.createElement("div");if(e.className="smart-chart-tooltip-arrow-outer",e.setAttribute("role","presentation"),t.className="smart-chart-tooltip-arrow-inner",t.setAttribute("role","presentation"),i.className="smart-chart-tooltip-content",i.setAttribute("role","presentation"),l.appendChild(i),l.appendChild(e),l.appendChild(t),s.getRootNode().host?s.getShadowRootOrBody().appendChild(l):document.body.appendChild(l),s.hasAttribute("aria-owns")){const e=s.getAttribute("aria-owns");s.setAttribute("aria-owns",e+" "+l.id)}else s.setAttribute("aria-owns",l.id)}if(!i||0===i.length)return void l.classList.add("smart-visibility-hidden");s.rightToLeft?l.setAttribute("right-to-left",""):l.removeAttribute("right-to-left"),l.classList.add("smart-visibility-hidden");const n=l.firstElementChild,o=l.children[1],h=l.children[2];h.style.opacity=o.style.opacity=r.fillOpacity,n.style.backgroundColor=r.fill,n.style.borderColor=r.stroke,n.style.opacity=r.fillOpacity;const d='<span class="'+r.css+'" role="presentation">'+i+"</span>";n.innerHTML=d;const u=s._measureHtml(d),g=s._plotRect;if(u.width>g.width||u.height>g.height)return;let f={width:u.width,height:u.height},p="",c=s._isColumnType(a),m=Math.max(e.x,g.x),y=Math.max(e.y,g.y);if(-1!==a.indexOf("pie")||-1!==a.indexOf("donut")){let t=(e.fromAngle+e.toAngle)/2;t*=Math.PI/180;let i=!isNaN(e.innerRadius)&&e.innerRadius>0?(e.innerRadius+e.outerRadius)/2:.75*e.outerRadius;m=e.x=e.center.x+Math.cos(t)*i,y=e.y=e.center.y-Math.sin(t)*i,e.width=e.height=1}else c&&(t.polar||t.spider)&&(e.width=e.height=1);let _=this._fitTooltip(this._plotRect,e,f,t,r.symbolSize);""!==_.arrowLocation&&(p=_.arrowLocation,m=_.x,y=_.y,f.width=_.width,f.height=_.height),"top"===p||"bottom"===p?(f.height+=7,m-=3.5,"bottom"===p&&(y-=7)):"left"!==p&&"right"!==p||(f.width+=7,y-=3.5,"right"===p&&(m-=7)),m+f.width>g.x+g.width&&(p="",m=g.x+g.width-f.width),y+f.height>g.y+g.height&&(p="",y=g.y+g.height-f.height);let x={x:0,y:0},v={x:0,y:0};n.style.width=u.width+"px",n.style.height=u.height+"px",o.style["margin-top"]=o.style["margin-left"]=0,h.style["margin-top"]=h.style["margin-left"]=0,n.style["margin-top"]=n.style["margin-left"]=0;let b="7px solid transparent";switch(p){case"left":x={x:0,y:(u.height-7)/2},v={x:7,y:0},n.style["margin-left"]="7px",o.style["margin-left"]="0px",o.style["margin-top"]=x.y+"px",o.style["border-left"]="",o.style["border-right"]="7px solid "+r.stroke,o.style["border-top"]=b,o.style["border-bottom"]=b,h.style["margin-left"]="1px",h.style["margin-top"]=x.y+"px",h.style["border-left"]="",h.style["border-right"]="7px solid "+r.fill,h.style["border-top"]=b,h.style["border-bottom"]=b;break;case"right":x={x:f.width-7,y:(u.height-7)/2},v={x:0,y:0},o.style["margin-left"]=x.x+"px",o.style["margin-top"]=x.y+"px",o.style["border-left"]="7px solid "+r.stroke,o.style["border-right"]="",o.style["border-top"]=b,o.style["border-bottom"]=b,h.style["margin-left"]=x.x-1+"px",h.style["margin-top"]=x.y+"px",h.style["border-left"]="7px solid "+r.fill,h.style["border-right"]="",h.style["border-top"]=b,h.style["border-bottom"]=b;break;case"top":x={x:f.width/2-3.5,y:0},v={x:0,y:7},n.style["margin-top"]=v.y+"px",o.style["margin-left"]=x.x+"px",o.style["border-top"]="",o.style["border-bottom"]="7px solid "+r.stroke,o.style["border-left"]=b,o.style["border-right"]=b,h.style["margin-left"]=x.x+"px",h.style["margin-top"]="1px",h.style["border-top"]="",h.style["border-bottom"]="7px solid "+r.fill,h.style["border-left"]=b,h.style["border-right"]=b;break;case"bottom":x={x:f.width/2-3.5,y:f.height-7},v={x:0,y:0},o.style["margin-left"]=x.x+"px",o.style["margin-top"]=x.y+"px",o.style["border-top"]="7px solid "+r.stroke,o.style["border-bottom"]="",o.style["border-left"]=b,o.style["border-right"]=b,h.style["margin-left"]=x.x+"px",h.style["margin-top"]=x.y-1+"px",h.style["border-top"]="7px solid "+r.fill,h.style["border-bottom"]="",h.style["border-left"]=b,h.style["border-right"]=b}""===p?(o.classList.add("smart-hidden"),h.classList.add("smart-hidden")):(o.classList.remove("smart-hidden"),h.classList.remove("smart-hidden")),l.style.width=f.width+"px",l.style.height=f.height+"px";const N=s.getBoundingClientRect();l.style.left=m+N.left+window.pageXOffset+"px",l.style.top=y+N.top+window.pageYOffset+"px",l.classList.remove("smart-visibility-hidden")}_measureHtml(e){const t=this;let i=t._measureDiv;i||(t._measureDiv=i=document.createElement("div"),i.className="smart-chart-tooltip",i.style.position="absolute",i.style.visibility="hidden",i.style.left=0,i.style.top=0,(t.shadowRoot||t).appendChild(i)),i.innerHTML=e;const r={width:i.offsetWidth+2,height:i.offsetHeight+2};return Smart.Utilities.Core.Browser.Firefox&&(r.height+=3),r}_hideToolTip(){this._ttEl&&(this._ttEl.box&&this._ttEl.box.classList.add("smart-visibility-hidden"),this._hideCrosshairs(),this._ttEl.gidx=void 0)}_hideCrosshairs(){this._ttEl&&(this._ttEl.vLine&&(this.renderer.removeElement(this._ttEl.vLine),this._ttEl.vLine=void 0),this._ttEl.hLine&&(this.renderer.removeElement(this._ttEl.hLine),this._ttEl.hLine=void 0))}_get(e){return this._draw.getByPriority(e)}_getAxisSettings(e){if(!e)return{};let t=this,i=e.gridLines||{},r={visible:t._get([i.visible,!0]),color:t._get([i.color,t._getThemeColor("line")]),unitInterval:i.unitInterval,step:i.step,dashStyle:i.dashStyle,width:t._get([i.lineWidth,1]),offsets:[],alternatingBackgroundColor:e.alternatingBackgroundColor,alternatingBackgroundColor2:e.alternatingBackgroundColor2,alternatingBackgroundOpacity:e.alternatingBackgroundOpacity},s=e.tickMarks||{},a={visible:t._get([s.visible,e.showTickMarks,!0]),color:t._get([s.color,e.tickMarksColor,t._getThemeColor("line")]),unitInterval:t._get([s.unitInterval,s.interval,e.tickMarksInterval]),step:t._get([s.step,e.tickMarksStep]),dashStyle:t._get([s.dashStyle,e.tickMarksDashStyle]),width:t._get([s.lineWidth,1]),size:t._get([s.size,4]),offsets:[]},l=e.title||{},n={visible:t._get([l.visible,!0]),text:t._get([e.description,l.text]),style:t._get([e.descriptionClass,l.class,"smart-chart-axis-description"]),halign:t._get([e.horizontalDescriptionAlignment,l.horizontalAlignment,"center"]),valign:t._get([e.verticalDescriptionAlignment,l.verticalAlignment,"center"]),angle:0,rotationPoint:t._get([l.rotationPoint,"centercenter"]),offset:t._get([l.offset,{x:0,y:0}])},o=e.line||{},h={visible:t._get([o.visible,!0]),color:t._get([o.color,r.color,t._getThemeColor("line")]),dashStyle:t._get([o.dashStyle,r.dashStyle,""]),width:t._get([o.lineWidth,1]),angle:t._get([o.angle,NaN])},d=e.padding||{};d={left:d.left||0,right:d.right||0,top:d.top||0,bottom:d.bottom||0};let u=this._getAxisLabelsSettings(e);return{visible:this._get([e.visible,!0]),customDraw:this._get([e.customDraw,!1]),gridLines:r,tickMarks:a,line:h,title:n,labels:u,padding:d,toolTipFormatFunction:this._get([e.toolTipFormatFunction,e.formatFunction,u.formatFunction]),toolTipFormatSettings:this._get([t._getFormatSettings(e,"toolTipFormatSettings"),t._getFormatSettings(e),t._getFormatSettings(u)])}}_getAxisLabelsSettings(e){let t=this,i=e.labels||{};return{visible:t._get([e.showLabels,i.visible,!0]),unitInterval:t._get([i.unitInterval,i.interval,e.labelsInterval]),step:t._get([i.step,e.labelsStep]),angle:t._get([e.textRotationAngle,i.angle,0]),style:t._get([e.class,i.class,"smart-chart-axis-text"]),halign:t._get([e.horizontalTextAlignment,i.horizontalAlignment,"center"]),valign:t._get([e.verticalTextAlignment,i.verticalAlignment,"center"]),textRotationPoint:t._get([e.textRotationPoint,i.rotationPoint,"auto"]),textOffset:t._get([e.textOffset,i.offset,{x:0,y:0}]),autoRotate:t._get([e.labelsAutoRotate,i.autoRotate,!1]),formatSettings:t._get([t._getFormatSettings(e),t._getFormatSettings(i),void 0]),formatFunction:t._get([e.formatFunction,i.formatFunction,void 0])}}_getLabelsSettings(e,t,i,r){let s=this.seriesGroups[e],a=s.series[t],l=isNaN(i)?void 0:this._getDataValue(i,a.dataField,e),n=r||["Visible","Offset","Angle","HorizontalAlignment","VerticalAlignment","Class","BackgroundColor","BorderColor","BorderOpacity","Padding","Opacity","BackgroundOpacity","LinesAngles","LinesEnabled","AutoRotate","Radius"],o={};for(let e=0;e<n.length;e++){let t,r=n[e],h="labels"+r,d="label"+r,u=r.substring(0,1).toLowerCase()+r.substring(1);s.labels&&"object"==typeof s.labels&&(t=s.labels[u]),a.labels&&"object"==typeof a.labels&&void 0!==a.labels[u]&&null!==a.labels[u]&&(t=a.labels[u]),t=this._get([a[h],a[d],t,s[h],s[d]]),o[u]="function"==typeof t?t(l,i,a,s):t}o.class=o.class||"smart-chart-label-text",o.visible=this._get([o.visible,a.showLabels,s.showLabels,void 0!==a.labels&&null!==a.labels||void 0,void 0!==s.labels&&null!==s.labels||void 0]);let h=o.padding||1;return o.padding={left:this._get([h.left,isNaN(h)?1:h]),right:this._get([h.right,isNaN(h)?1:h]),top:this._get([h.top,isNaN(h)?1:h]),bottom:this._get([h.bottom,isNaN(h)?1:h])},o}_showLabel(e,t,i,r,s,a,l,n,o,h,d){let u={width:0,height:0};if(isNaN(i))return;let g=this._getLabelsSettings(e,t,i);if(!g.visible)return l?u:void 0;if(r.width<0||r.height<0)return l?u:void 0;let f=g.angle;isNaN(h)||(f=h);let p=g.offset||{},c={x:p.x,y:p.y};isNaN(c.x)&&(c.x=0),isNaN(c.y)&&(c.y=0),s=s||g.horizontalAlignment||"center",a=a||g.verticalAlignment||"center";let m=this._getFormattedValue(e,t,i,void 0,void 0,!0),y=r.width,_=r.height;if(!0===n&&"center"!==s&&(s="right"===s?"left":"right"),!0===o&&"center"!==a&&"middle"!==a&&(a="top"===a?"bottom":"top",c.y*=-1),u=this.renderer.measureText(m,f,{class:g.class}),l)return u;let x=0,v=0;y>0&&(""===s||"center"===s?x+=(y-u.width)/2:"right"===s&&(x+=y-u.width)),_>0&&(""===a||"center"===a?v+=(_-u.height)/2:"bottom"===a&&(v+=_-u.height)),x+=r.x+c.x,v+=r.y+c.y;let b=this._plotRect;x<=b.x&&(x=b.x+2),v<=b.y&&(v=b.y+2);let N,M=Math.max(u.width,1),A=Math.max(u.height,1);v+A>=b.y+b.height&&(v=b.y+b.height-A-2),x+M>=b.x+b.width&&(x=b.x+b.width-M-2);let w=g.backgroundColor,S=g.borderColor,C=g.padding;(w||S)&&(N=this.renderer.beginGroup(),this.renderer.rect(x-C.left,v-C.top,u.width+C.left+C.right,u.height+C.bottom+C.bottom,{fill:w||"transparent","fill-opacity":g.backgroundOpacity||1,stroke:S||"transparent","stroke-opacity":g.borderOpacity,"stroke-width":1}));let k=this.renderer.text(m,x,v,u.width,u.height,f,{class:g.class,opacity:g.opacity||1},!1,"center","center",void 0,arguments[11]);return d&&(d.x=x-C.left,d.y=v-C.top,d.width=u.width+C.left+C.right,d.height=u.height+C.bottom+C.bottom),N&&this.renderer.endGroup(),N||k}_getAnimProps(e,t){let i=this.seriesGroups[e],r=isNaN(t)?void 0:i.series[t],s=this.hasAnimation;i.animation&&(s="none"!==i.animation),r&&r.animation&&(s="none"!==r.animation);let a=this.animationDuration;isNaN(a)&&(a=1e3);let l=i.animationDuration;if(isNaN(l)||(a=l),r){let e=r.animationDuration;isNaN(e)||(a=e)}return a>5e3&&(a=1e3),{enabled:s,duration:a}}_isColorTransition(e,t,i,r){if(r-1<i.xoffsets.first)return!1;let s=this._getColors(e,t,r,this._getGroupGradientType(e)),a=this._getColors(e,t,r-1,this._getGroupGradientType(e));return s.fillColor!==a.fillColor}_renderLineSeries(e,t){var i=this.seriesGroups[e];if(i.series&&0!==i.series.length){var r=-1!==i.type.indexOf("area"),s=-1!==i.type.indexOf("stacked"),a=s&&-1!==i.type.indexOf("100"),l=-1!==i.type.indexOf("spline"),n=-1!==i.type.indexOf("step"),o=-1!==i.type.indexOf("range"),h=!0===i.polar||!0===i.spider;if(h&&(n=!1),!n||!l){var d="horizontal"===i.orientation,u=!0===this._getXAxis(e).flip,g=t;d&&(g={x:t.y,y:t.x,width:t.height,height:t.width});var f=this._calcGroupOffsets(e,g);if(f&&0!==f.xoffsets.length){this._linesRenderInfo||(this._linesRenderInfo={}),this._linesRenderInfo[e]={};for(let t=i.series.length-1;t>=0;t--){var p=this._getSerieSettings(e,t),c={groupIndex:e,rect:g,serieIndex:t,swapXY:d,isArea:r,isSpline:l,isRange:o,isPolar:h,settings:p,segments:[],pointsLength:0};if(this._isSerieVisible(e,t)){var m=i.series[t];if(!m.customDraw){var y,_="function"==typeof m.colorFunction,x=f.xoffsets.first,v=x,b=this._getColors(e,t,NaN,this._getGroupGradientType(e));do{var N=[],M=[],A=[],w=0,S=0,C=NaN,k=NaN,D=NaN;if(!(f.xoffsets.length<1)){var T=this._getAnimProps(e,t),F=T.enabled&&!this._isToggleRefresh&&f.xoffsets.length<1e4&&T.duration,O=x;y=!1;var I=void 0;for(let s=x;s<=f.xoffsets.last;s++){x=s;var P=f.xoffsets.data[s],R=f.xoffsets.xvalues[s];if(!(isNaN(P)||(w=P=Math.max(P,1),S=f.offsets[t][s].to,!_&&I&&this.enableSampling&&this.renderer._ptdist(I.x,I.y,w,S)<1))){I={x:w,y:S};var L=f.offsets[t][s].from;if(isNaN(S)||isNaN(L)){if("connect"===m.emptyPointsDisplay)continue;if("zero"!==m.emptyPointsDisplay){y=!0;break}isNaN(S)&&(S=f.baseOffset),isNaN(L)&&(L=f.baseOffset)}if(_&&this._isColorTransition(e,t,f,x)&&N.length>1){x--;break}var G=this._elementRenderInfo;if(G&&G.length>e&&G[e].series.length>t){var V=G[e].series[t][R];let i=this.renderer._ptrnd(V?V.to:void 0),r=this.renderer._ptrnd(g.x+(V?V.xoffset:void 0));A.push(d?{y:r,x:i,index:s}:{x:r,y:i,index:s})}v=s,p.stroke<2&&(S-g.y<=1&&(S=g.y+1),L-g.y<=1&&(L=g.y+1),g.y+g.height-S<=1&&(S=g.y+g.height-1),g.y+g.height-L<=1&&(L=g.y+g.height-1)),!r&&a&&(S<=g.y&&(S=g.y+1),S>=g.y+g.height&&(S=g.y+g.height-1),L<=g.y&&(L=g.y+1),L>=g.y+g.height&&(L=g.y+g.height-1)),w=(P=Math.max(P,1))+g.x,!0===i.skipOverlappingPoints&&!isNaN(C)&&Math.abs(C-w)<=1||(!n||isNaN(C)||isNaN(k)||k!==S&&N.push(d?{y:w,x:this.renderer._ptrnd(k)}:{x:w,y:this.renderer._ptrnd(k)}),N.push(d?{y:w,x:this.renderer._ptrnd(S),index:s}:{x:w,y:this.renderer._ptrnd(S),index:s}),M.push(d?{y:w,x:this.renderer._ptrnd(L),index:s}:{x:w,y:this.renderer._ptrnd(L),index:s}),C=w,k=S,isNaN(D)&&(D=S))}}if(0!==N.length){var E=N[N.length-1].index;_&&(b=this._getColors(e,t,E,this._getGroupGradientType(e)));var B=g.x+f.xoffsets.data[O],H=g.x+f.xoffsets.data[v];if(r&&!0===i.alignEndPointsWithIntervals&&(B>g.x&&(B=g.x),H<g.x+g.width&&(H=g.x+g.width),u)){var z=B;B=H,H=z}H=this.renderer._ptrnd(H),B=this.renderer._ptrnd(B);var W=f.baseOffset;D=this.renderer._ptrnd(D);var j=this.renderer._ptrnd(S)||W;o&&(N=N.concat(M.reverse())),c.pointsLength+=N.length;var X={lastItemIndex:E,colorSettings:b,pointsArray:N,pointsStart:A,left:B,right:H,pyStart:D,pyEnd:j,yBase:W,labelElements:[],symbolElements:[]};c.segments.push(X)}else x++}}while(x<f.xoffsets.first+f.xoffsets.length-1||y);this._linesRenderInfo[e][t]=c}}else this._linesRenderInfo[e][t]=c}var U=this._linesRenderInfo[e],Y=[];for(let e in U)Y.push(U[e]);Y=Y.sort((function(e,t){return e.serieIndex-t.serieIndex})),r&&s&&Y.reverse();for(let e=0;e<Y.length;e++){let t=Y[e];this._animateLine(t,0===F?1:0);var q=this;this._enqueueAnimation("series",void 0,void 0,F,(function(e,t,i){q._animateLine(t,i)}),t)}}}}}_animateLine(e,t){let i=e.settings,r=e.groupIndex,s=e.serieIndex,a=this.seriesGroups[r],l=a.series[s],n=this._getSymbol(r,s),o=this._getLabelsSettings(r,s,NaN,["Visible"]).visible,h=!0;e.isPolar&&(isNaN(a.endAngle)||360===Math.round(Math.abs((isNaN(a.startAngle)?0:a.startAngle)-a.endAngle))||(h=!1)),!1===l.endPointsConnect&&(h=!1);let d=0;for(let a=0;a<e.segments.length;a++){let u=e.segments[a],g=this._calculateLine(r,e.pointsLength,d,u.pointsArray,u.pointsStart,u.yBase,t,e.isArea,e.swapXY);if(d+=u.pointsArray.length,""===g)continue;let f=g.split(" "),p=g;p=""!==p?this._buildLineCmd(g,e.isRange,u.left,u.right,u.pyStart,u.pyEnd,u.yBase,e.isArea,e.isPolar,h,e.isSpline,e.swapXY):"M 0 0";let c=u.colorSettings;if(u.pathElement?this.renderer.attr(u.pathElement,{d:p}):(u.pathElement=this.renderer.path(p,{"stroke-width":i.stroke,stroke:c.lineColor,"stroke-opacity":i.opacity,"fill-opacity":i.opacity,"stroke-dasharray":i.dashStyle,fill:e.isArea?c.fillColor:"none"}),this._installHandlers(u.pathElement,"path",r,s,u.lastItemIndex)),u.labelElements){for(let e=0;e<u.labelElements.length;e++)this.renderer.removeElement(u.labelElements[e]);u.labelElements=[]}if(u.symbolElements){for(let e=0;e<u.symbolElements.length;e++)this.renderer.removeElement(u.symbolElements[e]);u.symbolElements=[]}if(u.pointsArray.length===f.length&&("none"!==n||o)){let e=l.symbolSize,t=this._plotRect;for(let a=0;a<f.length;a++){let l=f[a].split(",");if(l={x:parseFloat(l[0]),y:parseFloat(l[1])},!(l.x<t.x||l.x>t.x+t.width||l.y<t.y||l.y>t.y+t.height)){if("none"!==n){let t=this._getColors(r,s,u.pointsArray[a].index,this._getGroupGradientType(r)),o=this._drawSymbol(n,l.x,l.y,t.fillColorSymbol,i.opacity,t.lineColorSymbol,i.opacity,i.strokeSymbol,void 0,e);u.symbolElements.push(o)}if(o&&(l=this._adjustLineLabelPosition(r,s,u.pointsArray[a].index,l),l)){let e=this._showLabel(r,s,u.pointsArray[a].index,{x:l.x,y:l.y,width:0,height:0});u.labelElements.push(e)}}}}if(1===t&&"none"!==n)for(let e=0;e<u.symbolElements.length;e++)isNaN(u.pointsArray[e].index)||this._installHandlers(u.symbolElements[e],"symbol",r,s,u.pointsArray[e].index)}}_adjustLineLabelPosition(e,t,i,r){let s=this._showLabel(e,t,i,{width:0,height:0},"","",!0);if(!s)return;let a={x:r.x-s.width/2,y:0};return a.y=r.y-1.5*s.height,a}_calculateLine(e,t,i,r,s,a,l,n,o){let h,d=this.seriesGroups[e];!0!==d.polar&&!0!==d.spider||(h=this._getPolarAxisCoords(e,this._plotRect));let u="",g=r.length;n||0!==s.length||(g=t*l-i);for(let e=0;e<g+1&&e<r.length;e++){e>0&&(u+=" ");let t=r[e].y,i=r[e].x,d=n?a:t,f=i;if(s&&s.length>e&&(d=s[e].y,f=s[e].x,(isNaN(d)||isNaN(f))&&(d=t,f=i)),g<=r.length&&e>0&&e===g&&(f=r[e-1].x,d=r[e-1].y),o?(i=this.renderer._ptrnd((i-d)*(n?l:1)+d),t=this.renderer._ptrnd(t)):(i=this.renderer._ptrnd((i-f)*l+f),t=this.renderer._ptrnd((t-d)*l+d)),h){let e=this._toPolarCoord(h,this._plotRect,i,t);i=e.x,t=e.y}u+=i+","+t}return u}_buildLineCmd(e,t,i,r,s,a,l,n,o,h,d,u){let g=e,f=u?l+","+i:i+","+l;!n||o||t||(g=f+" "+e+" "+(u?l+","+r:r+","+l)),d&&(g=this._getBezierPoints(g));let p=g.split(" ");if(0===p.length)return"";if(1===p.length){let e=p[0].split(",");return"M "+p[0]+" L"+(parseFloat(e[0])+1)+","+(parseFloat(e[1])+1)}let c=p[0].replace("M","");return n&&!o?g=t?"M "+c+" L "+c+(d?"":" L "+c+" ")+g:"M "+f+" L "+c+" "+g:d||(g="M "+c+" L "+c+" "+g),(o&&h||t)&&(g+=" Z"),g}_getSerieSettings(e,t){let i=this.seriesGroups[e],r=-1!==i.type.indexOf("area"),s=-1!==i.type.indexOf("line"),a=i.series[t],l=a.dashStyle||i.dashStyle||"",n=a.opacity||i.opacity;(isNaN(n)||n<0||n>1)&&(n=1);let o=a.lineWidth;isNaN(o)&&"auto"!==o&&(o=i.lineWidth),("auto"===o||isNaN(o)||o<0||o>15)&&(o=r?2:s?3:1);let h=a.lineWidthSymbol;return isNaN(h)&&(h=1),{stroke:o,strokeSymbol:h,opacity:n,dashStyle:l}}_getColors(e,t,i,r,s){let a=this.seriesGroups[e],l=a.series[t],n=this._get([l.useGradientColors,a.useGradientColors,!1]),o=this._getSeriesColors(e,t,i),h=[[0,1.4],[100,1]],d=[[0,1],[25,1.1],[50,1.4],[100,1]],u=[[0,1.3],[90,1.2],[100,1]],g=NaN;if(isNaN(s)||(g=2===s?h:d),n){let s={};for(let e in o)s[e]=o[e];if(o=s,"verticalLinearGradient"===r||"horizontalLinearGradient"===r){let e="verticalLinearGradient"===r?g||h:g||d,t=["fillColor","fillColorSelected","fillColorAlt","fillColorAltSelected"];for(let i in t){let s=o[t[i]];s&&(o[t[i]]=this.renderer._toLinearGradient(s,"verticalLinearGradient"===r,e))}}else if("radialGradient"===r){let r,s=h;("pie"===a.type||"donut"===a.type||a.polar)&&null!=i&&this._renderData[e]&&this._renderData[e].offsets[t]&&(r=this._renderData[e].offsets[t][i],s=u),o.fillColor=this.renderer._toRadialGradient(o.fillColor,s,r),o.fillColorSelected=this.renderer._toRadialGradient(o.fillColorSelected,s,r)}}return o}_installHandlers(e,t,i,r,s){if(!this.enableEvents)return!1;var a=this,l=this.seriesGroups[i],n=this.seriesGroups[i].series[r],o=-1!==l.type.indexOf("line")||-1!==l.type.indexOf("area");o||!1===l.enableSelection||!1===n.enableSelection||this.renderer.addHandler(e,"mousemove",(function(){var e=a._selected;e&&e.isLineType&&"click"===e.linesUnselectMode&&(e.group!==i||e.series!==r)||a._ttEl&&a._ttEl.gidx===i&&a._ttEl.sidx===r&&a._ttEl.iidx===s||a._startTooltipTimer(i,r,s)})),!1!==l.enableSelection&&!1!==n.enableSelection&&this.renderer.addHandler(e,"mouseover",(function(){var l=a._selected;l&&l.isLineType&&"click"===l.linesUnselectMode&&(l.group!==i||l.series!==r)||a._select(e,t,i,r,s,s)})),this.renderer.addHandler(e,"click",(function(e){clearTimeout(a._hostClickTimer),a._lastClickTs=(new Date).valueOf(),o&&"symbol"!==t&&"pointMarker"!==t||(a._isColumnType(l.type)&&a._unselect(),isNaN(s)||(e.stopImmediatePropagation(),a._raiseItemEvent("click",l,n,s)))}))}_getHorizontalOffset(e,t,i,r){let s=this._plotRect;if(0===this._getDataLen(e))return{index:void 0,value:i};let a=this._calcGroupOffsets(e,this._plotRect);if(0===a.xoffsets.length)return{index:void 0,value:void 0};let l,n,o,h,d,u=i,g=r,f=this.seriesGroups[e];(f.polar||f.spider)&&(l=this._getPolarAxisCoords(e,s));for(let e=a.xoffsets.first;e<=a.xoffsets.last;e++){let i=a.xoffsets.data[e],r=a.offsets[t][e].to,p=0;if(l){let e=this._toPolarCoord(l,s,i+s.x,r);i=e.x,r=e.y,p=this.renderer._ptdist(u,g,i,r)}else if("horizontal"===f.orientation){i+=s.y;let e=r;r=i,i=e,p=this.renderer._ptdist(u,g,i,r)}else i+=s.x,p=Math.abs(u-i);(isNaN(n)||n>p)&&(n=p,o=e,h=i,d=r)}return{index:o,value:a.xoffsets.data[o],polarAxisCoords:l,x:h,y:d}}onmousemove(e,t){if(this._mouseX===e&&this._mouseY===t)return;if(this._mouseX=e,this._mouseY=t,!this._selected)return;let i=this._selected.group,r=this._selected.series,s=this.seriesGroups[i],a=s.series[r],l=this._plotRect;if(this.renderer&&(l=this.renderer.getRect(),l.x+=5,l.y+=5,l.width-=10,l.height-=10),e<l.x+window.scrollX||e>l.x+l.width+window.scrollX||t<l.y+window.scrollY||t>l.y+l.height+window.scrollY)return this._hideToolTip(),void this._unselect();let n="horizontal"===s.orientation;if(l=this._plotRect,-1!==s.type.indexOf("line")||-1!==s.type.indexOf("area")){let o=this._getHorizontalOffset(i,this._selected.series,e,t),h=o.index;if(null==h)return;if(this._selected.item!==h){let e=this._linesRenderInfo[i][r].segments,t=0;for(;h>e[t].lastItemIndex;)if(t++,t>=e.length)return;let s=e[t].pathElement,a=e[t].lastItemIndex;this._unselect(!1),this._select(s,"path",i,r,h,a)}let d=this._getSymbol(this._selected.group,this._selected.series);"none"===d&&(d="circle");let u=this._calcGroupOffsets(i,l),g=u.offsets[this._selected.series][h].to,f=g;-1!==s.type.indexOf("range")&&(f=u.offsets[this._selected.series][h].from);let p=n?e:t;if(t=!isNaN(f)&&Math.abs(p-f)<Math.abs(p-g)?f:g,isNaN(t))return;if(e=o.value,n){let i=e;e=t,t=i+l.y}else e+=l.x;if(o.polarAxisCoords&&(e=o.x,t=o.y),t=this.renderer._ptrnd(t),e=this.renderer._ptrnd(e),this._pointMarker&&this._pointMarker.element&&(this.renderer.removeElement(this._pointMarker.element),this._pointMarker.element=void 0),isNaN(e)||isNaN(t))return;let c=this._getSeriesColors(i,r,h),m=this._getSerieSettings(i,r),y=a.symbolSizeSelected;isNaN(y)&&(y=a.symbolSize),(isNaN(y)||y>50||y<0)&&(y=s.symbolSize),(isNaN(y)||y>50||y<0)&&(y=8),(this.showToolTips||this.enableCrosshairs)&&(this._pointMarker={type:d,x:e,y:t,gidx:i,sidx:r,iidx:h},this._pointMarker.element=this._drawSymbol(d,e,t,c.fillColorSymbolSelected,m.opacity,c.lineColorSymbolSelected,m.opacity,m.strokeSymbol,m.dashStyle,y),this._installHandlers(this._pointMarker.element,"pointMarker",i,r,h)),this._startTooltipTimer(i,this._selected.series,h)}}_drawSymbol(e,t,i,r,s,a,l,n,o,h){let d,u,g=h||6,f=g/2;switch(e){case"none":return;case"circle":d=this.renderer.circle(t,i,g/2);break;case"square":g-=1,f=g/2,d=this.renderer.rect(t-f,i-f,g,g);break;case"diamond":u="M "+(t-f)+","+i+" L"+t+","+(i-f)+" L"+(t+f)+","+i+" L"+t+","+(i+f)+" Z",d=this.renderer.path(u);break;case"triangle_up":case"triangle":u="M "+(t-f)+","+(i+f)+" L "+(t+f)+","+(i+f)+" L "+t+","+(i-f)+" Z",d=this.renderer.path(u);break;case"triangle_down":u="M "+(t-f)+","+(i-f)+" L "+t+","+(i+f)+" L "+(t+f)+","+(i-f)+" Z",d=this.renderer.path(u);break;case"triangle_left":u="M "+(t-f)+","+i+" L "+(t+f)+","+(i+f)+" L "+(t+f)+","+(i-f)+" Z",d=this.renderer.path(u);break;case"triangle_right":u="M "+(t-f)+","+(i-f)+" L "+(t-f)+","+(i+f)+" L "+(t+f)+","+i+" Z",d=this.renderer.path(u);break;default:d=this.renderer.circle(t,i,g)}return this.renderer.attr(d,{fill:r,"fill-opacity":s,stroke:a,"stroke-width":n,"stroke-opacity":l,"stroke-dasharray":o||""}),"circle"!==e&&(this.renderer.attr(d,{r:g/2}),"square"!==e&&this.renderer.attr(d,{x:t,y:i})),d}_getSymbol(e,t){let i,r=["circle","square","diamond","triangle_up","triangle_down","triangle_left","triangle_right"],s=this.seriesGroups[e],a=s.series[t];return void 0!==a.symbolType&&null!==a.symbolType&&(i=a.symbolType),null==i&&(i=s.symbolType),"default"===i?r[t%r.length]:null!=i?i:"none"}_startTooltipTimer(e,t,i,r,s,a,l){this._cancelTooltipTimer();let n=this,o=this.toolTipShowDelay;(isNaN(o)||o>1e4||o<0)&&(o=500),(this._ttEl||!0===this.enableCrosshairs&&!1===this.showToolTips)&&(o=0),isNaN(a)||(o=a),clearTimeout(this._tttimerHide),isNaN(r)&&(r=n._mouseX),isNaN(s)&&(s=n._mouseY-3),0===o&&n._showToolTip(r,s,e,t,i),this._tttimer=setTimeout((function(){0!==o&&n._showToolTip(r,s,e,t,i);let a=n.toolTipHideDelay;isNaN(l)||(a=l),isNaN(a)&&(a=4e3),n._tttimerHide=setTimeout((function(){n._hideToolTip(),n._unselect()}),a)}),o)}_cancelTooltipTimer(){clearTimeout(this._tttimer)}_getGroupGradientType(e){let t=this.seriesGroups[e];return-1!==t.type.indexOf("area")?"horizontal"===t.orientation?"horizontalLinearGradient":"verticalLinearGradient":this._isColumnType(t.type)||-1!==t.type.indexOf("candle")?t.polar?"radialGradient":"horizontal"===t.orientation?"verticalLinearGradient":"horizontalLinearGradient":-1!==t.type.indexOf("scatter")||-1!==t.type.indexOf("bubble")||this._isPieGroup(e)?"radialGradient":void 0}_select(e,t,i,r,s,a){if(this._selected){if(this._selected.item===s&&this._selected.series===r&&this._selected.group===i)return;this._unselect()}let l=this.seriesGroups[i],n=l.series[r];if(!1===l.enableSelection||!1===n.enableSelection)return;let o=-1!==l.type.indexOf("line")&&-1===l.type.indexOf("area");this._selected={element:e,type:t,group:i,series:r,item:s,iidxBase:a,isLineType:o,linesUnselectMode:n.linesUnselectMode||l.linesUnselectMode};let h=this._getColors(i,r,a||s,this._getGroupGradientType(i)),d=h.fillColorSelected;o&&(d="none");let u=this._getSerieSettings(i,r),g="symbol"===t?h.lineColorSymbolSelected:h.lineColorSelected;d="symbol"===t?h.fillColorSymbolSelected:d;let f="symbol"===t?1:u.stroke;"symbol"!==t&&this.renderer.getAttr(e,"fill")===h.fillColorAlt&&(d=h.fillColorAltSelected),this.renderer.attr(e,{stroke:g,fill:d,"stroke-width":f}),-1===l.type.indexOf("pie")&&-1===l.type.indexOf("donut")||this._applyPieSelect(),this._raiseItemEvent("mouseover",l,n,s),this._isTouchDevice&&this._startTooltipTimer(i,r,s)}_applyPieSelect(){var e=this;e._createAnimationGroup("animPieSlice");var t=this._selected;if(t){var i=this.getItemCoord(t.group,t.series,t.item);if(i){var r={element:this._getRenderInfo(t.group,t.series,t.item),coord:i};this._enqueueAnimation("animPieSlice",void 0,void 0,300,(function(i,r,s){var a=r.coord,l=a.selectedRadiusChange*s,n=e.renderer.pieSlicePath(a.center.x,a.center.y,0===a.innerRadius?0:a.innerRadius+l,a.outerRadius+l,a.fromAngle,a.toAngle,a.centerOffset);e.renderer.attr(r.element.element,{d:n}),e._showPieLabel(t.group,t.series,t.item,void 0,l,r.element.colors.lineColor)}),r),e._startAnimation("animPieSlice")}}}_applyPieUnselect(){this._stopAnimations();let e=this._selected;if(!e)return;let t=this.getItemCoord(e.group,e.series,e.item);if(!t||!t.center)return;let i=this.renderer.pieSlicePath(t.center.x,t.center.y,t.innerRadius,t.outerRadius,t.fromAngle,t.toAngle,t.centerOffset);this.renderer.attr(e.element,{d:i}),this._showPieLabel(e.group,e.series,e.item,void 0,0,this._getRenderInfo(e.group,e.series,e.item).colors.lineColor)}_unselect(){let e=this;if(e._selected){let t=e._selected.group,i=e._selected.series,r=e._selected.item,s=e._selected.iidxBase,a=e._selected.type,l=e.seriesGroups[t],n=l.series[i],o=-1!==l.type.indexOf("line")&&-1===l.type.indexOf("area"),h=e._getColors(t,i,s||r,e._getGroupGradientType(t)),d=h.fillColor;o&&(d="none");let u=e._getSerieSettings(t,i),g="symbol"===a?h.lineColorSymbol:h.lineColor;d="symbol"===a?h.fillColorSymbol:d,"symbol"!==a&&this.renderer.getAttr(e._selected.element,"fill")===h.fillColorAltSelected&&(d=h.fillColorAlt);let f="symbol"===a?1:u.stroke;e.renderer.attr(e._selected.element,{stroke:g,fill:d,"stroke-width":f}),-1===l.type.indexOf("pie")&&-1===l.type.indexOf("donut")||this._applyPieUnselect(),e._selected=void 0,isNaN(r)||e._raiseItemEvent("mouseout",l,n,r)}e._pointMarker&&(e._pointMarker.element&&(e.renderer.removeElement(e._pointMarker.element),e._pointMarker.element=void 0),e._pointMarker=void 0,e._hideCrosshairs())}_raiseItemEvent(e,t,i,r){let s=i[e]||t[e],a=0;for(;a<this.seriesGroups.length&&this.seriesGroups[a]!==t;a++);if(a===this.seriesGroups.length)return;let l={event:e,seriesGroup:t,serie:i,elementIndex:r,elementValue:this._getDataValue(r,i.dataField,a)};s&&"function"==typeof s&&s(l),this.$.fireEvent(e,l)}_calcInterval(e,t,i){let r=Math.abs(t-e)/i,s=.1,a=[1,2,3,4,5,10,15,20,25,50,100];r<1&&(a=[.5,.25,.125,.1],s=10);let l=0;do{l=0,r>=1?s*=10:s/=10;for(let e=1;e<a.length&&Math.abs(a[l]*s-r)>Math.abs(a[e]*s-r);e++)l=e}while(l===a.length-1);return a[l]*s}_renderDataClone(){if(!this._renderData||this._isToggleRefresh)return;let e=this._elementRenderInfo=[];if(!this._isSelectorRefresh)for(let t=0;t<this._renderData.length;t++){for(;e.length<=t;)e.push({});let i=e[t],r=this._renderData[t];if(!r.offsets)continue;if(r.valueAxis){i.valueAxis={itemOffsets:{}};for(let e in r.valueAxis.itemOffsets)i.valueAxis.itemOffsets[e]=r.valueAxis.itemOffsets[e]}if(r.xAxis){i.xAxis={itemOffsets:{}};for(let e in r.xAxis.itemOffsets)i.xAxis.itemOffsets[e]=r.xAxis.itemOffsets[e]}i.series=[];let s=i.series,a=this._isPieGroup(t);for(let e=0;e<r.offsets.length;e++){s.push({});for(let i=0;i<r.offsets[e].length;i++)if(a){let t=r.offsets[e][i];s[e][t.displayValue]={value:t.value,x:t.x,y:t.y,fromAngle:t.fromAngle,toAngle:t.toAngle}}else r.xoffsets?s[e][r.xoffsets.xvalues[i]]={value:r.offsets[e][i].value,valueRadius:r.offsets[e][i].valueRadius,xoffset:r.xoffsets.data[i],from:r.offsets[e][i].from,to:r.offsets[e][i].to}:(r.xoffsets=this._calculateXOffsets(t,this._plotRect.width),r.xoffsets&&(s[e][r.xoffsets.xvalues[i]]={value:r.offsets[e][i].value,valueRadius:r.offsets[e][i].valueRadius,xoffset:r.xoffsets.data[i],from:r.offsets[e][i].from,to:r.offsets[e][i].to}))}}}getPolarDataPointOffset(e,t,i){let r=this._renderData[i];if(!r)return{x:NaN,y:NaN};let s=this.getValueAxisDataPointOffset(t,i),a=this.getXAxisDataPointOffset(e,i),l=this._toPolarCoord(r.polarCoords,r.xAxis.rect,a,s);return{x:l.x,y:l.y}}_getDataPointOffsetDiff(e,t,i,r,s,a,l){let n=this._getDataPointOffset(e,i,r,s,a,l),o=this._getDataPointOffset(t,i,r,s,a,l);return Math.abs(n-o)}_getXAxisRenderData(e){if(e>=this._renderData.length)return;let t=this.seriesGroups[e],i=this._renderData[e].xAxis;if(i){if(void 0===t.xAxis||null===t.xAxis)for(let t=0;t<=e;t++)if(void 0===this.seriesGroups[t].xAxis||null===this.seriesGroups[t].xAxis){i=this._renderData[t].xAxis;break}return i}}getXAxisDataPointOffset(e,t){let i=this.seriesGroups[t];if(isNaN(e))return NaN;const r=this._getXAxisRenderData(t);if(!r)return NaN;let s=r.data.axisStats,a=s.min.valueOf(),l=s.max.valueOf(),n=l-a;if(0===n&&(n=1),e.valueOf()>l||e.valueOf()<a)return NaN;let o=this._getXAxis(t),h="horizontal"===i.orientation?"height":"width",d="horizontal"===i.orientation?"y":"x",u=(e.valueOf()-a)/n,g=r.rect[h]-r.data.padding.left-r.data.padding.right;return(i.polar||i.spider)&&this._renderData[t].polarCoords.isClosedCircle&&(g=r.data.axisSize),this._plotRect[d]+r.data.padding.left+g*(o.flip?1-u:u)}getValueAxisDataPointOffset(e,t){let i=this._getValueAxis(t);if(!i)return NaN;let r=this._renderData[t];if(!r)return NaN;let s=!0===i.flip,a=r.logBase,l=r.scale,n=r.gbase,o=r.baseOffset;return this._getDataPointOffset(e,n,a,l,o,s)}_getDataPointOffset(e,t,i,r,s,a){let l;return isNaN(e)&&(e=t),l=isNaN(i)?(e-t)*r:(this._draw.log(e,i)-this._draw.log(t,i))*r,l=a?s+l:s-l,l}_calcGroupOffsets(e,t){let i=this.seriesGroups[e];for(;this._renderData.length<e+1;)this._renderData.push({});if(null!==this._renderData[e]&&void 0!==this._renderData[e].offsets)return this._renderData[e];if(this._isPieGroup(e))return this._calcPieSeriesGroupOffsets(e,t);let r=this._getValueAxis(e);if(!r||!i.series||0===i.series.length)return this._renderData[e];let s=!0===r.flip,a=!0===r.logarithmicScale,l=r.logarithmicScaleBase||10,n=[],o=-1!==i.type.indexOf("stacked"),h=o&&-1!==i.type.indexOf("100"),d=-1!==i.type.indexOf("range"),u=this._isColumnType(i.type),g=-1!==i.type.indexOf("waterfall"),f=this._getDataLen(e),p=i.baselineValue||r.baselineValue||0;h&&(p=0);let c=this._stats.seriesGroups[e];if(!c||!c.isValid)return;let m=c.hasStackValueReversal;if(m&&(p=0),g&&o){if(m)return;p=c.base}p>c.max&&(p=c.max),p<c.min&&(p=c.min);let y=h||a?c.maxRange:c.max-c.min,_=c.min,x=c.max,v=t.height/(a?c.intervals:y),b=0;h?_*x<0?(y/=2,b=-(y+p)*v):b=-p*v:b=-(p-_)*v,s?b=t.y-b:b+=t.y+t.height;let N,M=[],A=[],w=[];a&&(N=this._draw.log(x,l)-this._draw.log(p,l),o&&(N=c.intervals,p=h?0:_),s||(b=t.y+N/c.intervals*t.height)),b=this.renderer._ptrnd(b);let S=_*x<0?t.height/2:t.height,C=[],k=[],D=o&&(u||a),T=[];n=new Array(i.series.length);for(let e=0;e<i.series.length;e++)n[e]=new Array(f);for(let t=0;t<f;t++){!g&&o&&(k=[]);for(let r=0;r<i.series.length;r++){!o&&a&&(C=[]);let u=i.series[r],g=u.dataField,f=u.dataFieldFrom,m=u.dataFieldTo,y=u.radiusDataField||u.sizeDataField;n[r][t]={};let _=this._isSerieVisible(e,r);if(-1!==i.type.indexOf("candle")||-1!==i.type.indexOf("ohlc")){let i=["Open","Close","High","Low"];for(let o in i){let h="dataField"+i[o];u[h]&&(n[r][t][i[o]]=this._getDataPointOffset(this._getDataValueAsNumber(t,u[h],e),p,a?l:NaN,v,b,s))}continue}if(o)for(;k.length<=t;)k.push(0);let x=NaN;d&&(x=this._getDataValueAsNumber(t,f,e),isNaN(x)&&(x=p));let N=NaN;N=d?this._getDataValueAsNumber(t,m,e):this._getDataValueAsNumber(t,g,e);let F,O=this._getDataValueAsNumber(t,y,e);if(o&&(k[t]+=_?N:0),_||(N=NaN),isNaN(N)||a&&N<=0){n[r][t]={from:void 0,to:void 0};continue}o&&(D?F=N>=p?M:A:N=k[t]);let I=v*(N-p);if(d&&(I=v*(N-x)),o&&D&&(T[t]?I=v*N:(T[t]=!0,I=v*(N-p))),a){for(;C.length<=t;)C.push({p:{value:0,height:0},n:{value:0,height:0}});let e=d||d?x:p,i=N>e?C[t].p:C[t].n;i.value+=N,h?(N=i.value/(c.psums[t]+c.nsums[t])*100,I=(this._draw.log(N,l)-c.minPow)*v):(I=this._draw.log(i.value,l)-this._draw.log(e,l),I*=v),I-=i.height,i.height+=I}let P=b;if(d){let e=0;e=a?(this._draw.log(x,l)-this._draw.log(p,l))*v:(x-p)*v,P+=s?e:-e}if(o){if(h&&!a){let e=c.psums[t]-c.nsums[t];N>p?(I=c.psums[t]/e*S,0!==c.psums[t]&&(I*=N/c.psums[t])):(I=c.nsums[t]/e*S,0!==c.nsums[t]&&(I*=N/c.nsums[t]))}D&&(isNaN(F[t])&&(F[t]=P),P=F[t])}isNaN(w[t])&&(w[t]=0);let R=w[t];I=Math.abs(I);let L=I;if(I>=1){const e=this.renderer._ptrnd(I)-1;I=Math.abs(I-e)>.5?Math.round(I):e}if(R+=I-L,o||(R=0),Math.abs(R)>.5&&(R>0?(I-=1,R-=1):(I+=1,R+=1)),w[t]=R,r===i.series.length-1&&h){let e=0;for(let i=0;i<r;i++)e+=Math.abs(n[i][t].to-n[i][t].from);if(e+=I,e<S)if(I>.5)I=this.renderer._ptrnd(I+S-e);else{let i=r-1;for(;i>=0;){if(Math.abs(n[i][t].to-n[i][t].from)>1){n[i][t].from>n[i][t].to&&(n[i][t].from+=S-e);break}i--}}}s&&(I*=-1);let G=N<p;d&&(G=x>N);let V=isNaN(x)?N:{from:x,to:N};G?(D&&(F[t]+=I),n[r][t]={from:P,to:P+I,value:V,valueRadius:O}):(D&&(F[t]-=I),n[r][t]={from:P,to:P-I,value:V,valueRadius:O})}}let F=this._renderData[e];return F.baseOffset=b,F.gbase=p,F.logBase=a?l:NaN,F.scale=v,F.offsets=g?this._applyWaterfall(n,f,e,b,p,a?l:NaN,v,s,o):n,F.xoffsets=this._calculateXOffsets(e,t.width),this._renderData[e]}_isPercent(e){return"string"==typeof e&&e.length>0&&e.indexOf("%")===e.length-1}_calcPieSeriesGroupOffsets(e,t){var i=this,r=this._getDataLen(e),s=this.seriesGroups[e],a=this._renderData[e]={},l=a.offsets=[];for(let a=0;a<s.series.length;a++){var n=s.series[a],o=this._get([n.minAngle,n.startAngle]);(isNaN(o)||o<0||o>360)&&(o=0);var h=this._get([n.maxAngle,n.endAngle]);(isNaN(h)||h<0||h>360)&&(h=360);var d=h-o,u=n.initialAngle||0;u<o&&(u=o),u>h&&(u=h);var g=n.centerOffset||0,f=this._draw.getNum([n.offsetX,s.offsetX,t.width/2]),p=this._draw.getNum([n.offsetY,s.offsetY,t.height/2]),c=Math.min(t.width,t.height)/2,m=u,y=n.radius;i._isPercent(y)&&(y=parseFloat(y)/100*c),isNaN(y)&&(y=.4*c);var _=n.innerRadius;i._isPercent(_)&&(_=parseFloat(_)/100*c),(isNaN(_)||_>=y)&&(_=0);var x=n.selectedRadiusChange;i._isPercent(x)&&(x=parseFloat(x)/100*(y-_)),isNaN(x)&&(x=.1*(y-_)),l.push([]);var v=0,b=0;for(let t=0;t<r;t++){var N=this._getDataValueAsNumber(t,n.dataField,e);isNaN(N)||(this._isSerieVisible(e,a,t)||!0===n.hiddenPointsDisplay)&&(N>0?v+=N:b+=N)}var M=v-b;0===M&&(M=1);for(let i=0;i<r;i++){let r=this._getDataValueAsNumber(i,n.dataField,e);if(isNaN(r))l[a].push({});else{var A=n.displayText||n.displayField,w=this._getDataValue(i,A,e);null==w&&(w=i);var S=0,C=this._isSerieVisible(e,a,i);(C||!0===n.hiddenPointsDisplay)&&(S=Math.abs(r)/M*d);var k=t.x+f,D=t.y+p,T=g;"function"==typeof g&&(T=g({seriesIndex:a,seriesGroupIndex:e,itemIndex:i})),isNaN(T)&&(T=0);var F={key:e+"_"+a+"_"+i,value:r,displayValue:w,x:k,y:D,fromAngle:m,toAngle:m+S,centerOffset:T,innerRadius:_,outerRadius:y,selectedRadiusChange:x,visible:C};l[a].push(F),m+=S}}}return a}_isPointSeriesOnly(){for(let e=0;e<this.seriesGroups.length;e++){let t=this.seriesGroups[e];if(-1===t.type.indexOf("line")&&-1===t.type.indexOf("area")&&-1===t.type.indexOf("scatter")&&-1===t.type.indexOf("bubble"))return!1}return!0}_hasColumnSeries(){let e=["column","ohlc","candlestick","waterfall"];for(let t=0;t<this.seriesGroups.length;t++){let i=this.seriesGroups[t];for(let t in e)if(-1!==i.type.indexOf(e[t]))return!0}return!1}_alignValuesWithTicks(e){let t=this._isPointSeriesOnly(),i=this.seriesGroups[e],r=this._getXAxis(e),s=void 0===r.valuesOnTicks||null===r.valuesOnTicks?t:!1!==r.valuesOnTicks;return r.logarithmicScale&&(s=!0),null==e||void 0===i.valuesOnTicks||null===i.valuesOnTicks?s:i.valuesOnTicks}_getYearsDiff(e,t){return t.getFullYear()-e.getFullYear()}_getMonthsDiff(e,t){return 12*(t.getFullYear()-e.getFullYear())+t.getMonth()-e.getMonth()}_getDateDiff(e,t,i,r){let s=0;switch("year"!==i&&"month"!==i&&(s=t.valueOf()-e.valueOf()),i){case"year":s=this._getYearsDiff(e,t);break;case"month":s=this._getMonthsDiff(e,t);break;case"day":s/=864e5;break;case"hour":s/=36e5;break;case"minute":s/=6e4;break;case"second":s/=1e3}return"year"!==i&&"month"!==i&&!1!==r&&(s=this.renderer._rnd(s,1,!0)),s}_getBestDTUnit(e,t,i,r,s){let a="day",l=t.valueOf()-e.valueOf();a=l<1e3?"second":l<36e5?"minute":l<864e5?"hour":l<2592e6?"day":l<31104e6?"month":"year";let n=[{key:"year",cnt:l/31536e6},{key:"month",cnt:l/2592e6},{key:"day",cnt:l/864e5},{key:"hour",cnt:l/36e5},{key:"minute",cnt:l/6e4},{key:"second",cnt:l/1e3},{key:"millisecond",cnt:l}],o=-1;for(let e=0;e<n.length;e++)if(n[e].key===a){o=e;break}let h=-1,d=-1;for(;o<n.length&&!(n[o].cnt/100>r);o++){let a=this._estAxisInterval(e,t,i,r,n[o].key,s),l=this._getDTIntCnt(e,t,a,n[o].key);(-1===h||h<l)&&(h=l,d=o)}return a=n[d].key,a}_getXAxisStats(e,t,i){let r=this._getDataLen(e),s="date"===t.type||"time"===t.type;if(s&&!this._autoDateFormats){this._autoDateFormats||(this._autoDateFormats=[]);let e=this._testXAxisDateFormat();e&&this._autoDateFormats.push(e)}let a=s?this._castAsDate(t.minValue,t.dateFormat):this._castAsNumber(t.minValue),l=s?this._castAsDate(t.maxValue,t.dateFormat):this._castAsNumber(t.maxValue);if(this._selectorRange&&this._selectorRange[e]){let i=this._selectorRange[e].min;isNaN(i)||(a=s?this._castAsDate(i,t.dateFormat):this._castAsNumber(i));let r=this._selectorRange[e].max;isNaN(r)||(l=s?this._castAsDate(r,t.dateFormat):this._castAsNumber(r))}let n,o,h=a,d=l,u=void 0===t.type||null===t.type||"auto"===t.type,g=u||"basic"===t.type,f=0,p=0;for(let i=0;i<r&&t.dataField;i++){let r=this._getDataValue(i,t.dataField,e);r=s?this._castAsDate(r,t.dateFormat):this._castAsNumber(r),isNaN(r)||(s?f++:p++,(isNaN(n)||r<n)&&(n=r),(isNaN(o)||r>=o)&&(o=r))}u&&(!s&&p===r||s&&f===r)&&(g=!1),g&&(n=0,o=Math.max(0,r-1)),isNaN(h)&&(h=n),isNaN(d)&&(d=o),s?(this._isDate(h)||(h=this._isDate(d)?d:new Date),this._isDate(d)||(d=this._isDate(h)?h:new Date)):(isNaN(h)&&(h=0),isNaN(d)&&(d=g?Math.max(0,r-1):h)),null==n&&(n=h),null==o&&(o=d);let c,m,y=t.rangeSelector&&t.rangeSelector.visible;if(y){let e=y.minValue||h;e&&s&&(e=this._castAsDate(e,y.dateFormat||t.dateFormat));let i=y.maxValue||d;i&&s&&(i=this._castAsDate(i,y.dateFormat||t.rangeSelector)),h<e&&(h=e),d<e&&(d=i),h>i&&(h=e),d>i&&(d=i)}s&&(c=t.baseUnit,c||(c=this._getBestDTUnit(h,d,e,i)),m="hour"===c||"minute"===c||"second"===c||"millisecond"===c);let _=!0===t.logarithmicScale,x=t.logarithmicScaleBase;(isNaN(x)||x<=1)&&(x=10);let v=t.unitInterval;_?v=1:(isNaN(v)||v<=0)&&(v=this._estAxisInterval(h,d,e,i,c));let b,N,M={min:h,max:d},A=this.seriesGroups[e];return _?(h||(h=1,d&&h>d&&(h=d)),d||(d=h),M={min:h,max:d},b=this.renderer._rnd(this._draw.log(h,x),1,!1),N=this.renderer._rnd(this._draw.log(d,x),1,!0),d=Math.pow(x,N),h=Math.pow(x,b)):s||!A.polar&&!A.spider||(h=this.renderer._rnd(h,v,!1),d=this.renderer._rnd(d,v,!0)),{min:h,max:d,logAxis:{enabled:_,base:x,minPow:b,maxPow:N},dsRange:{min:n,max:o},filterRange:M,useIndeces:g,isDateTime:s,isTimeUnit:m,dateTimeUnit:c,interval:v}}_getDefaultDTFormatFn(e){let t,i=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];return t="year"===e||"month"===e||"day"===e?function(e){return e.getDate()+"-"+i[e.getMonth()]+"-"+e.getFullYear()}:function(e){return e.getDate()+"-"+i[e.getMonth()]+"-"+e.getFullYear()+"<br>"+e.getHours()+":"+e.getMinutes()+":"+e.getSeconds()},t}_getDTIntCnt(e,t,i,r){let s=0,a=new Date(e),l=new Date(t);if(l=l.valueOf(),i<=0)return 1;for(;a.valueOf()<l;)"millisecond"===r?a=new Date(a.valueOf()+i):"second"===r?a=new Date(a.valueOf()+1e3*i):"minute"===r?a=new Date(a.valueOf()+6e4*i):"hour"===r?a=new Date(a.valueOf()+6e4*i*24):"day"===r?a.setDate(a.getDate()+i):"month"===r?a.setMonth(a.getMonth()+i):"year"===r&&a.setFullYear(a.getFullYear()+i),s++;return s}_estAxisInterval(e,t,i,r,s,a){if(isNaN(e)||isNaN(t))return NaN;let l=[1,2,5,10,15,20,50,100,200,500],n=0,o=r/(!isNaN(a)&&a>0?a:50);if(this._renderData&&this._renderData.length>i&&this._renderData[i].xAxis&&!isNaN(this._renderData[i].xAxis.avgWidth)){let e=Math.max(1,this._renderData[i].xAxis.avgWidth);0!==e&&isNaN(a)&&(o=.9*r/e)}if(o<=1)return Math.abs(t-e);let h,d=0;for(;h=n>=l.length?Math.pow(10,3+n-l.length):l[n],d=this._isDate(e)&&this._isDate(t)?this._getDTIntCnt(e,t,h,s):(t-e)/h,!(d<=o);)n++;let u=this.seriesGroups[i];return(u.spider||u.polar)&&2*h>t-e&&(h=t-e),h}_getPaddingSize(e,t,i,r,s,a,l){var n=e.min,o=e.max;e.logAxis.enabled&&(n=e.logAxis.minPow,o=e.logAxis.maxPow);var h=e.interval,d=e.dateTimeUnit;if(s){var u=r/Math.max(1,o-n+h)*h;return a?{left:0,right:u}:i?{left:0,right:0}:{left:u/2,right:u/2}}if(i&&!l)return{left:0,right:0};if(this._isDate(n)&&this._isDate(o)){let e=this._getDTIntCnt(n,o,Math.min(h,o-n),d),t=r/Math.max(2,e);return{left:t/2,right:t/2}}let g=Math.max(1,o-n);if(1===g){const e=r/4;return{left:e,right:e}}let f=r/(g+1);return{left:f/2,right:f/2}}_calculateXOffsets(e,t){var i=this.seriesGroups[e],r=this._getXAxis(e),s=[],a=[],l=this._getDataLen(e),n=this._getXAxisStats(e,r,t),o=n.min,h=n.max,d=n.isDateTime,u=n.isTimeUnit,g=this._hasColumnSeries(),f=i.polar||i.spider,p=this._get([i.startAngle,i.minAngle,0]),c=this._get([i.endAngle,i.maxAngle,360]),m=f&&!(Math.abs(Math.abs(c-p)-360)>1e-4),y=this._alignValuesWithTicks(e),_=this._getPaddingSize(n,r,y,t,f,m,g),x=h-o,v=n.filterRange;0===x&&(x=1);var b=t-_.left-_.right;f&&y&&!m&&(_.left=_.right=0);var N=-1,M=-1;for(let t=0;t<l;t++){var A=void 0===r.dataField?t:this._getDataValue(t,r.dataField,e);if(n.useIndeces){if(t<v.min||t>v.max){s.push(NaN),a.push(void 0);continue}if(S=_.left+(t-o)/x*b,!0===n.logAxis.enabled){var w=n.logAxis.base;S=this._smartPlot.scale(A,{min:o.valueOf(),max:h.valueOf(),type:"logarithmic",base:w},{min:0,max:b,flip:!1})}s.push(this.renderer._ptrnd(S)),a.push(A),-1===N&&(N=t),(-1===M||M<t)&&(M=t)}else if(A=d?this._castAsDate(A,r.dateFormat):this._castAsNumber(A),isNaN(A)||A<v.min||A>v.max)s.push(NaN),a.push(void 0);else{var S=0;if(!0===n.logAxis.enabled){let e=n.logAxis.base;S=this._smartPlot.scale(A,{min:o.valueOf(),max:h.valueOf(),type:"logarithmic",base:e},{min:0,max:b,flip:!1})}else S=!d||d&&u?(A-o)*b/x:(A.valueOf()-o.valueOf())/(h.valueOf()-o.valueOf())*b;S=this.renderer._ptrnd(_.left+S),s.push(S),a.push(A),-1===N&&(N=t),(-1===M||M<t)&&(M=t)}}if(!0===r.flip)for(let e=0;e<s.length;e++)isNaN(s[e])||(s[e]=t-s[e]);(u||d)&&(x=this._getDateDiff(o,h,r.baseUnit),x=this.renderer._rnd(x,1,!1));var C=Math.max(1,x),k=b/C;return N===M&&1===C&&(s[N]=_.left+b/2),{axisStats:n,data:s,xvalues:a,first:N,last:M,length:-1===M?0:M-N+1,itemWidth:k,intervalWidth:k*n.interval,rangeLength:x,useIndeces:n.useIndeces,padding:_,axisSize:b}}_getXAxis(e){return null==e||this.seriesGroups.length<=e?this.xAxis:this.seriesGroups[e].xAxis||this.xAxis}_isGreyScale(e,t){let i=this.seriesGroups[e],r=i.series[t];return!0===r.greyScale||!1!==r.greyScale&&(!0===i.greyScale||!1!==i.greyScale&&!0===this.greyScale)}_getSeriesColors(e,t,i){let r=this._getSeriesColorsInternal(e,t,i);if(this._isGreyScale(e,t))for(let e in r)r[e]=this._draw.toGreyScale(r[e]);return r}_getColorFromScheme(e,t,i){let r="#000000",s=this.seriesGroups[e],a=s.series[t];if(this._isPieGroup(e)){let l=this._getDataLen(e);r=this._getItemColorFromScheme(a.colorScheme||s.colorScheme||this.colorScheme,t*l+i,e,t)}else{let i=0;for(let r=0;r<=e;r++)for(let s=0;s<this.seriesGroups[r].series.length&&(r!==e||parseInt(s)!==t);s++)i++;let a=this.colorScheme;if(s.colorScheme&&(a=s.colorScheme),null!=a&&""!==a||(a=this.colorSchemes[0].name),!a)return r;for(let e=0;e<this.colorSchemes.length;e++){let t=this.colorSchemes[e];if(t.name===a){for(;i>t.colors.length;)i-=t.colors.length,++e>=this.colorSchemes.length&&(e=0),t=this.colorSchemes[e];r=t.colors[i%t.colors.length]}}}return r}_createColorsCache(){this._colorsCache={get:function(e){if(this._store[e])return this._store[e]},set:function(e,t){this._size<1e4&&(this._store[e]=t,this._size++)},clear:function(){this._store={},this._size=0},_size:0,_store:{}}}_getSeriesColorsInternal(e,t,i){let r=this.seriesGroups[e],s=r.series[t];"function"===(s.colorFunction,!1)&&"pie"!==r.type&&"donut"!==r.type&&(i=NaN);let a=e+"_"+t+"_"+(isNaN(i)?"NaN":i);if(this._colorsCache.get(a))return this._colorsCache.get(a);let l,n={lineColor:"#222222",lineColorSelected:"#151515",lineColorSymbol:"#222222",lineColorSymbolSelected:"#151515",fillColor:"#222222",fillColorSelected:"#333333",fillColorSymbol:"#222222",fillColorSymbolSelected:"#333333",fillColorAlt:"#222222",fillColorAltSelected:"#333333"};if("function"==typeof s.colorFunction){let t=isNaN(i)?NaN:this._getDataValue(i,s.dataField,e);if(-1===r.type.indexOf("range")||isNaN(i)||(t={from:this._getDataValue(i,s.dataFieldFrom,e),to:this._getDataValue(i,s.dataFieldTo,e)}),l=s.colorFunction(t,i,s,r),"object"==typeof l)for(let e in l)n[e]=l[e];else n.fillColor=l}else{for(let e in n)s[e]&&(n[e]=s[e]);s.fillColor||s.color?s.fillColor=s.fillColor||s.color:n.fillColor=this._getColorFromScheme(e,t,i)}let o={fillColor:{baseColor:"fillColor",adjust:1},fillColorSelected:{baseColor:"fillColor",adjust:1.1},fillColorSymbol:{baseColor:"fillColor",adjust:1},fillColorSymbolSelected:{baseColor:"fillColorSymbol",adjust:2},fillColorAlt:{baseColor:"fillColor",adjust:4},fillColorAltSelected:{baseColor:"fillColor",adjust:3},lineColor:{baseColor:"fillColor",adjust:.95},lineColorSelected:{baseColor:"lineColor",adjust:.95},lineColorSymbol:{baseColor:"lineColor",adjust:1},lineColorSymbolSelected:{baseColor:"lineColorSelected",adjust:1}};for(let e in n)"object"==typeof l&&l[e]||s[e]&&(n[e]=s[e]);for(let e in n)"object"==typeof l&&l[e]||s[e]||(n[e]=this.renderer.adjustColor(n[o[e].baseColor],o[e].adjust));return this._colorsCache.set(a,n),n}_getItemColorFromScheme(e,t,i,r){let s;for(void 0!==e&&""!==e||(e=this.colorSchemes[0].name),s=0;s<this.colorSchemes.length&&e!==this.colorSchemes[s].name;s++);let a=0;for(;a<=t;){s===this.colorSchemes.length&&(s=0);let e=this.colorSchemes[s].colors.length;if(!(a+e<=t)){let e=this.colorSchemes[s].colors[t-a];return this._isGreyScale(i,r)&&0===e.indexOf("#")&&(e=this._draw.toGreyScale(e)),e}a+=e,s++}}getColorScheme(e){for(let t=0;t<this.colorSchemes.length;t++)if(this.colorSchemes[t].name===e)return this.colorSchemes[t].colors}addColorScheme(e,t){for(let i=0;i<this.colorSchemes.length;i++)if(this.colorSchemes[i].name===e)return void(this.colorSchemes[i].colors=t);this.colorSchemes.push({name:e,colors:t})}removeColorScheme(e){for(let t=0;t<this.colorSchemes.length;t++)if(this.colorSchemes[t].name===e){this.colorSchemes.splice(t,1);break}}_formatValue(e,t,i,r,s,a){if(null==e)return"";if(this._isObject(e)&&!this._isDate(e)&&!i)return"";if(i){if("function"!=typeof i)return e.toString();try{return i(e,a,s,r)}catch(e){return e.message}}return this._isNumber(e)?this._formatNumber(e,t):this._isDate(e)?this._formatDate(e,t):t?(t.prefix||"")+e.toString()+(t.sufix||""):e.toString()}_getFormattedValue(e,t,i,r,s,a){let l=this.seriesGroups[e],n=l.series[t],o="",h=r,d=s;n.labels&&(h=h||this._getFormatSettings(n.labels),d=d||n.labels.formatFunction),h||d||(h=this._getFormatSettings(n),d=n.formatFunction,h||d||(h=this._getFormatSettings(l),d=l.formatFunction));let u={},g=0;for(let t in n)0===t.indexOf("dataField")&&(u[t.substring(9).toLowerCase()]=this._getDataValue(i,n[t],e),g++);if(0===g&&(u=this._getDataValue(i,void 0,e)),-1!==l.type.indexOf("waterfall")&&this._isSummary(e,i)&&(u=this._renderData[e].offsets[t][i].value,g=0),d&&"function"==typeof d)try{return d(1===g?u[""]:u,i,n,l)}catch(e){return e.message}if(1===g&&this._isPieGroup(e))return this._formatValue(u[""],h,d,e,t,i);if(g>0){let r=0;for(let s in u){r>0&&""!==o&&(o+="<br>");let l="dataField"+(s.length>0?s.substring(0,1).toUpperCase()+s.substring(1):""),g=n["displayText"+(s.length>0?s.substring(0,1).toUpperCase()+s.substring(1):"")]||n[l],f=u[s];void 0!==f&&(f=this._formatValue(f,h,d,e,t,i),o+=!0===a?f:g+": "+f,r++)}}else null!=u&&(o=this._formatValue(u,h,d,e,t,i));return o||""}_isNumberAsString(e){if("string"!=typeof e)return!1;e=e.trim();for(let t=0;t<e.length;t++){let i=e.charAt(t);if(!(i>="0"&&i<="9"||","===i||"."===i||"-"===i&&0===t||"("===i&&0===t||")"===i&&t===e.length-1))return!1}return!0}_castAsDate(e,t){if(e instanceof Date&&!isNaN(e))return e;if("string"==typeof e){let i=new Date(e);if(this._isDate(i))return-1===e.indexOf(":")&&i.setHours(0,0,0,0),i;try{if(t&&(i=Smart.Utilities.DateTime.parseDateString(e,void 0,t).toDate(),this._isDate(i)))return i;if(this._autoDateFormats)for(let t=0;t<this._autoDateFormats.length;t++)if(i=Smart.Utilities.DateTime.parseDateString(e,void 0,this._autoDateFormats[t]).toDate(),this._isDate(i))return i;let r=this._detectDateFormat(e);if(r&&(i=Smart.Utilities.DateTime.parseDateString(e,void 0,r).toDate(),this._isDate(i)))return this._autoDateFormats.push(r),i}catch(e){}}}_castAsNumber(e){if(e instanceof Date&&!isNaN(e))return e.valueOf();if("string"==typeof e)if(this._isNumber(e))e=parseFloat(e);else if(!/[a-zA-Z]/.test(e)){let t=new Date(e);null!=t&&(e=t.valueOf())}return isNaN(e)?void 0:e}_isNumber(e){return"string"==typeof e&&this._isNumberAsString(e)&&(e=parseFloat(e)),"number"==typeof e&&isFinite(e)}_isDate(e){return e instanceof Date&&!isNaN(e.getDate())}_isBoolean(e){return"boolean"==typeof e}_isObject(e){return e&&("object"==typeof e||"function"==typeof e)||!1}_formatDate(e,t){let i=e.toString();return t&&(t.dateFormat&&(i=new Smart.Utilities.DateTime(e).toString(t.dateFormat)),i=(t.prefix||"")+i+(t.sufix||"")),i}_formatNumber(e,t){if(!this._isNumber(e))return e;t=t||{};let i=this.localization.decimalSeparator,r=this.localization.thousandsSeparator;t.decimalSeparator&&(i=t.decimalSeparator),t.thousandsSeparator&&(r=t.thousandsSeparator);let s=t.prefix||"",a=t.sufix||"",l=t.decimalPlaces;isNaN(l)&&(l=this._getDecimalPlaces([e],void 0,3));let n=t.negativeWithBrackets||!1,o=e<0;o&&n&&(e*=-1);let h,d=e.toString(),u=Math.pow(10,l);if(d=(Math.round(e*u)/u).toString(),isNaN(d)&&(d=""),h=d.lastIndexOf("."),l>0)for(h<0?(d+=i,h=d.length-1):"."!==i&&(d=d.replace(".",i));d.length-1-h<l;)d+="0";h=d.lastIndexOf(i),h=h>-1?h:d.length;let g=d.substring(h),f=0;for(let e=h;e>0;e--,f++)f%3==0&&e!==h&&(!o||e>1||o&&n)&&(g=r+g),g=d.charAt(e-1)+g;return d=g,o&&n&&(d="("+d+")"),s+d+a}_calculateControlPoints(e,t){let i=e[t],r=e[t+1],s=e[t+2],a=e[t+3],l=e[t+4],n=e[t+5],o=Math.sqrt(Math.pow(s-i,2)+Math.pow(a-r,2)),h=o+Math.sqrt(Math.pow(l-s,2)+Math.pow(n-a,2));0===h&&(h=1);let d=.4*o/h,u=.4-d;return[s+d*(i-l),a+d*(r-n),s-u*(i-l),a-u*(r-n)]}_getBezierPoints(e){let t="",i=[],r=[],s=e.split(" ");for(let e=0;e<s.length;e++){let t=s[e].split(",");i.push(parseFloat(t[0])),i.push(parseFloat(t[1])),!isNaN(i[i.length-1])&&isNaN(i[i.length-2])}let a=i.length;if(a<=1)return"";if(2===a)return t="M"+this.renderer._ptrnd(i[0])+","+this.renderer._ptrnd(i[1])+" L"+this.renderer._ptrnd(i[0]+1)+","+this.renderer._ptrnd(i[1]+1)+" ",t;for(let e=0;e<a-4;e+=2)r=r.concat(this._calculateControlPoints(i,e));for(let e=2;e<a-5;e+=2)t+=" C"+this.renderer._ptrnd(r[2*e-2])+","+this.renderer._ptrnd(r[2*e-1])+" "+this.renderer._ptrnd(r[2*e])+","+this.renderer._ptrnd(r[2*e+1])+" "+this.renderer._ptrnd(i[e+2])+","+this.renderer._ptrnd(i[e+3])+" ";return t=a<=4||Math.abs(i[0]-i[2])<3||Math.abs(i[1]-i[3])<3?"M"+this.renderer._ptrnd(i[0])+","+this.renderer._ptrnd(i[1])+" L"+this.renderer._ptrnd(i[2])+","+this.renderer._ptrnd(i[3])+" "+t:"M"+this.renderer._ptrnd(i[0])+","+this.renderer._ptrnd(i[1])+" Q"+this.renderer._ptrnd(r[0])+","+this.renderer._ptrnd(r[1])+" "+this.renderer._ptrnd(i[2])+","+this.renderer._ptrnd(i[3])+" "+t,a>=4&&(Math.abs(i[a-2]-i[a-4])<3||Math.abs(i[a-1]-i[a-3])<3)?t+=" L"+this.renderer._ptrnd(i[a-2])+","+this.renderer._ptrnd(i[a-1])+" ":a>=5&&(t+=" Q"+this.renderer._ptrnd(r[2*a-10])+","+this.renderer._ptrnd(r[2*a-9])+" "+this.renderer._ptrnd(i[a-2])+","+this.renderer._ptrnd(i[a-1])+" "),t}_createAnimationGroup(e){this._animGroups||(this._animGroups={}),this._animGroups[e]={animations:[],startTick:NaN}}_startAnimation(e){let t=(new Date).getTime();this._animGroups[e].startTick=t,this._runAnimation(),this._enableAnimTimer()}_enqueueAnimation(e,t,i,r,s,a,l){r<0&&(r=0),void 0===l&&(l="easeInOutSine"),this._animGroups[e].animations.push({key:t,properties:i,duration:r,fn:s,context:a,easing:l})}_stopAnimations(){clearTimeout(this._animtimer),this._animtimer=void 0,this._animGroups=void 0}_enableAnimTimer(){if(!this._animtimer){let e=this;this._animtimer=setTimeout((function(){e._runAnimation()}),this._animTickInt)}}_runAnimation(){if(this._animGroups){let e=(new Date).getTime(),t={};for(let i in this._animGroups){let r=this._animGroups[i].animations,s=this._animGroups[i].startTick,a=0;for(let t=0;t<r.length;t++){let i=r[t],l=e-s;i.duration>a&&(a=i.duration);let n=i.duration>0?l/i.duration:1,o=n;if(i.easing&&0!==i.duration&&!1!==i.duration&&(o=Smart.Utilities.Animation.Easings[i.easing](l,0,1,i.duration)),n>1&&(n=1,o=1),i.fn){i.fn(i.key,i.context,o);continue}let h={};for(let e=0;e<i.properties.length;e++){let t=i.properties[e],r=0;r=1===n?t.to:o*(t.to-t.from)+t.from,h[t.key]=r}this.renderer.attr(i.key,h)}s+a>e&&(t[i]={startTick:s,animations:r})}this._animGroups=t,this.renderer instanceof Smart.Utilities.HTML5Renderer&&this.renderer.refresh()}this._animtimer=null,Object.values(this._animGroups).length>0&&this._enableAnimTimer()}_fixCoords(e,t){if("horizontal"!==this.seriesGroups[t].orientation)return e;var i=e.x;return e.x=e.y,e.y=i+this._plotRect.y-this._plotRect.x,i=e.width,e.width=e.height,e.height=i,e}getItemCoord(e,t,i){var r=this;if(r._isPieGroup(e)&&(!r._isSerieVisible(e,t,i)||!r._renderData||r._renderData.length<=e))return{x:NaN,y:NaN};if(!r._isSerieVisible(e,t)||!r._renderData||r._renderData.length<=e)return{x:NaN,y:NaN};var s=r.seriesGroups[e],a=s.series[t],l=r._getItemCoord(e,t,i);if(r._isPieGroup(e)){if(isNaN(l.x)||isNaN(l.y)||isNaN(l.fromAngle)||isNaN(l.toAngle))return{x:NaN,y:NaN};var n=this._plotRect,o=l.fromAngle*(Math.PI/180),h=l.toAngle*(Math.PI/180);const e=n.x+l.center.x+Math.cos(o)*l.outerRadius,t=n.x+l.center.x+Math.cos(h)*l.outerRadius,i=n.y+l.center.y-Math.sin(o)*l.outerRadius,r=n.y+l.center.y-Math.sin(h)*l.outerRadius;var d=Math.min(e,t),u=Math.abs(t-e);return l={x:d,y:Math.min(i,r),width:u,height:Math.abs(r-i),center:l.center,centerOffset:l.centerOffset,innerRadius:l.innerRadius,outerRadius:l.outerRadius,selectedRadiusChange:l.selectedRadiusChange,fromAngle:l.fromAngle,toAngle:l.toAngle}}if(-1!==s.type.indexOf("column")||-1!==s.type.indexOf("waterfall")){var g=this._getColumnSerieWidthAndOffset(e,t);l.height=Math.abs(l.y.to-l.y.from),l.y=Math.min(l.y.to,l.y.from),l.x+=g.offset,l.width=g.width}else if(-1!==s.type.indexOf("ohlc")||-1!==s.type.indexOf("candlestick")){let i=this._getColumnSerieWidthAndOffset(e,t),r=l.y;var f=Math.min(r.Open,r.Close,r.Low,r.High),p=Math.max(r.Open,r.Close,r.Low,r.High);l.height=Math.abs(p-f),l.y=f,l.x+=i.offset,l.width=i.width}else if(-1!==s.type.indexOf("line")||-1!==s.type.indexOf("area"))l.width=l.height=0,l.y=l.y.to;else if(-1!==s.type.indexOf("bubble")||-1!==s.type.indexOf("scatter")){l.center={x:l.x,y:l.y.to};var c=l.y.radius;"circle"!==a.symbolType&&void 0!==a.symbolType&&null!==a.symbolType&&(c/=2),l.y=l.y.to,l.radius=c,l.width=2*c,l.height=2*c}if(l=this._fixCoords(l,e),s.polar||s.spider){var m=this._toPolarCoord(this._renderData[e].polarCoords,this._plotRect,l.x,l.y);l.x=m.x,l.y=m.y,l.center&&(l.center=this._toPolarCoord(this._renderData[e].polarCoords,this._plotRect,l.center.x,l.center.y))}return-1===s.type.indexOf("bubble")&&-1===s.type.indexOf("scatter")||(l.x-=c,l.y-=c),l}_getItemCoord(e,t,i){let r,s,a=this.seriesGroups[e];if(!a||!this._renderData)return{x:NaN,y:NaN};if(!a.series[t])return{x:NaN,y:NaN};let l=this._plotRect;if(this._isPieGroup(e)){let a=this._renderData[e].offsets[t][i];if(!a)return{x:NaN,y:NaN};let n=(a.fromAngle+a.toAngle)/2*(Math.PI/180);return r=l.x+a.x+Math.cos(n)*a.outerRadius,s=l.y+a.y-Math.sin(n)*a.outerRadius,{x:r,y:s,center:{x:a.x,y:a.y},centerOffset:a.centerOffset,innerRadius:a.innerRadius,outerRadius:a.outerRadius,selectedRadiusChange:a.selectedRadiusChange,fromAngle:a.fromAngle,toAngle:a.toAngle}}if(r=l.x+this._renderData[e].xoffsets.data[i],s=this._renderData[e].offsets[t][i],isNaN(r)||!s)return{x:NaN,y:NaN};let n={};for(let e in s)n[e]=s[e];return{x:r,y:n}}getXAxisValue(e,t){var i=this.seriesGroups[t];if(i){var r=this._getXAxis(t),s=this._plotRect,a=0,l=NaN,n=this._renderData[0].xoffsets.axisStats,o=0,h=0;if(i.polar||i.spider){if(isNaN(e.x)||isNaN(e.y))return NaN;var d=this._getPolarAxisCoords(t,s);if(this.renderer._ptdist(e.x,e.y,d.x,d.y)>d.r)return NaN;var u=Math.atan2(d.y-e.y,e.x-d.x);(u=Math.PI/2-u)<0&&(u=2*Math.PI+u),l=u*d.r;var g=d.startAngle+Math.PI/2,f=d.endAngle+Math.PI/2;o=g*d.r,h=f*d.r,a=(f-g)*d.r;var p=this._getPaddingSize(n,r,r.valuesOnTicks,a,!0,d.isClosedCircle,this._hasColumnSeries());d.isClosedCircle?(a-=p.left+p.right,h-=p.left+p.right):r.valuesOnTicks||(o+=p.left,h-=p.right)}else{if("horizontal"!==i.orientation){if(e<s.x||e>s.x+s.width)return NaN;l=e-s.x,a=s.width}else{if(e<s.y||e>s.y+s.height)return NaN;l=e-s.y,a=s.height}if(this._renderData[t]&&this._renderData[t].xoffsets){let e=this._renderData[t].xoffsets.padding;a-=e.left+e.right,l-=e.left}h=a}return this._smartPlot.scale(l,{min:o,max:h},{min:n.min.valueOf(),max:n.max.valueOf(),type:n.logAxis.enabled?"logarithmic":"linear",base:n.logAxis.base,flip:r.flip})}}getValueAxisValue(e,t){let i=this.seriesGroups[t];if(!i)return;let r=this._getValueAxis(t),s=this._plotRect,a=0,l=NaN;if(i.polar||i.spider){if(isNaN(e.x)||isNaN(e.y))return NaN;let i=this._getPolarAxisCoords(t,s);l=this.renderer._ptdist(e.x,e.y,i.x,i.y),a=i.r,l=a-l}else if("horizontal"===i.orientation){if(e<s.x||e>s.x+s.width)return NaN;l=e-s.x,a=s.width}else{if(e<s.y||e>s.y+s.height)return NaN;l=e-s.y,a=s.height}let n=this._stats.seriesGroups[t];return this._smartPlot.scale(l,{min:0,max:a},{min:n.min.valueOf(),max:n.max.valueOf(),type:n.logarithmic?"logarithmic":"linear",base:n.logBase,flip:!r.flip})}_detectDateFormat(e,t){let i={en_US_d:"M/d/yyyy",en_US_D:"dddd, MMMM dd, yyyy",en_US_t:"h:mm tt",en_US_T:"h:mm:ss tt",en_US_f:"dddd, MMMM dd, yyyy h:mm tt",en_US_F:"dddd, MMMM dd, yyyy h:mm:ss tt",en_US_M:"MMMM dd",en_US_Y:"yyyy MMMM",en_US_S:"yyyy'-'MM'-'dd'T'HH':'mm':'ss",en_CA_d:"dd/MM/yyyy",en_CA_D:"MMMM-dd-yy",en_CA_f:"MMMM-dd-yy h:mm tt",en_CA_F:"MMMM-dd-yy h:mm:ss tt",ISO:"yyyy-MM-dd hh:mm:ss",ISO2:"yyyy-MM-dd HH:mm:ss",d1:"dd.MM.yyyy",d2:"dd-MM-yyyy",zone1:"yyyy-MM-ddTHH:mm:ss-HH:mm",zone2:"yyyy-MM-ddTHH:mm:ss+HH:mm",custom:"yyyy-MM-ddTHH:mm:ss.fff",custom2:"yyyy-MM-dd HH:mm:ss.fff",de_DE_d:"dd.MM.yyyy",de_DE_D:"dddd, d. MMMM yyyy",de_DE_t:"HH:mm",de_DE_T:"HH:mm:ss",de_DE_f:"dddd, d. MMMM yyyy HH:mm",de_DE_F:"dddd, d. MMMM yyyy HH:mm:ss",de_DE_M:"dd MMMM",de_DE_Y:"MMMM yyyy",fr_FR_d:"dd/MM/yyyy",fr_FR_D:"dddd d MMMM yyyy",fr_FR_t:"HH:mm",fr_FR_T:"HH:mm:ss",fr_FR_f:"dddd d MMMM yyyy HH:mm",fr_FR_F:"dddd d MMMM yyyy HH:mm:ss",fr_FR_M:"d MMMM",fr_FR_Y:"MMMM yyyy",it_IT_d:"dd/MM/yyyy",it_IT_D:"dddd d MMMM yyyy",it_IT_t:"HH:mm",it_IT_T:"HH:mm:ss",it_IT_f:"dddd d MMMM yyyy HH:mm",it_IT_F:"dddd d MMMM yyyy HH:mm:ss",it_IT_M:"dd MMMM",it_IT_Y:"MMMM yyyy",ru_RU_d:"dd.MM.yyyy",ru_RU_D:"d MMMM yyyy '?.'",ru_RU_t:"H:mm",ru_RU_T:"H:mm:ss",ru_RU_f:"d MMMM yyyy '?.' H:mm",ru_RU_F:"d MMMM yyyy '?.' H:mm:ss",ru_RU_Y:"MMMM yyyy",cs_CZ_d:"d.M.yyyy",cs_CZ_D:"d. MMMM yyyy",cs_CZ_t:"H:mm",cs_CZ_T:"H:mm:ss",cs_CZ_f:"d. MMMM yyyy H:mm",cs_CZ_F:"d. MMMM yyyy H:mm:ss",cs_CZ_M:"dd MMMM",cs_CZ_Y:"MMMM yyyy",he_IL_d:"dd MMMM yyyy",he_IL_D:"dddd dd MMMM yyyy",he_IL_t:"HH:mm",he_IL_T:"HH:mm:ss",he_IL_f:"dddd dd MMMM yyyy HH:mm",he_IL_F:"dddd dd MMMM yyyy HH:mm:ss",he_IL_M:"dd MMMM",he_IL_Y:"MMMM yyyy",hr_HR_d:"d.M.yyyy.",hr_HR_D:"d. MMMM yyyy.",hr_HR_t:"H:mm",hr_HR_T:"H:mm:ss",hr_HR_f:"d. MMMM yyyy. H:mm",hr_HR_F:"d. MMMM yyyy. H:mm:ss",hr_HR_M:"d. MMMM",hu_HU_d:"yyyy.MM.dd.",hu_HU_D:"yyyy. MMMM d.",hu_HU_t:"H:mm",hu_HU_T:"H:mm:ss",hu_HU_f:"yyyy. MMMM d. H:mm",hu_HU_F:"yyyy. MMMM d. H:mm:ss",hu_HU_M:"MMMM d.",hu_HU_Y:"yyyy. MMMM",jp_JP_d:"gg y/M/d",jp_JP_D:"gg y'?'M'?'d'?'",jp_JP_t:"H:mm",jp_JP_T:"H:mm:ss",jp_JP_f:"gg y'?'M'?'d'?' H:mm",jp_JP_F:"gg y'?'M'?'d'?' H:mm:ss",jp_JP_M:"M'?'d'?'",jp_JP_Y:"gg y'?'M'?'",lt_LT_d:"yyyy.MM.dd",lt_LT_D:"yyyy 'm.' MMMM d 'd.'",lt_LT_t:"HH:mm",lt_LT_T:"HH:mm:ss",lt_LT_f:"yyyy 'm.' MMMM d 'd.' HH:mm",lt_LT_F:"yyyy 'm.' MMMM d 'd.' HH:mm:ss",lt_LT_M:"MMMM d 'd.'",lt_LT_Y:"yyyy 'm.' MMMM",sa_IN_d:"dd-MM-yyyy",sa_IN_D:"dd MMMM yyyy dddd",sa_IN_t:"HH:mm",sa_IN_T:"HH:mm:ss",sa_IN_f:"dd MMMM yyyy dddd HH:mm",sa_IN_F:"dd MMMM yyyy dddd HH:mm:ss",sa_IN_M:"dd MMMM",basic_y:"yyyy",basic_ym:"yyyy-MM",basic_d:"yyyy-MM-dd",basic_dhm:"yyyy-MM-dd hh:mm",basic_bhms:"yyyy-MM-dd hh:mm:ss",basic2_ym:"MM-yyyy",basic2_d:"MM-dd-yyyy",basic2_dhm:"MM-dd-yyyy hh:mm",basic2_dhms:"MM-dd-yyyy hh:mm:ss",basic3_ym:"yyyy/MM",basic3_d:"yyyy/MM/dd",basic3_dhm:"yyyy/MM/dd hh:mm",basic3_bhms:"yyyy/MM/dd hh:mm:ss",basic4_ym:"MM/yyyy",basic4_d:"MM/dd/yyyy",basic4_dhm:"MM/dd/yyyy hh:mm",basic4_dhms:"MM/dd/yyyy hh:mm:ss"};t&&(i=Object.assign({},i,t));let r=[];Array.isArray(e)?r=e:r.push(e);for(let e in i)i[e]={format:i[e],count:0};for(let e=0;e<r.length;e++){const t=r[e];if(null!=t)for(let e in i)try{(t instanceof Date||Smart.Utilities.DateTime.parseDateString(t,void 0,i[e].format))&&i[e].count++}catch(e){}}let s={key:void 0,count:0};for(let e in i)i[e].count>s.count&&(s.key=e,s.count=i[e].count);return s.key?i[s.key].format:""}_testXAxisDateFormat(e){let t=this,i=t._getXAxis(e),r=t._getDataLen(e),s={};if(t.localization.patterns)for(let e in t.localization.patterns)s["local_"+e]=t.localization.patterns[e];let a=[];for(let s=0;s<r&&s<10;s++){const r=t._getDataValue(s,i.dataField,e);null!=r&&a.push(r)}return t._detectDateFormat(a,s)}_getThemeColor(e){if("light"===this.theme)switch(e){case"background":return"#FFFFFF";case"line":return"#BCBCBC";case"band":return"#AAAAAA"}switch(e){case"background":return"#2E2E2E";case"line":return"#707070";case"band":return"#565656"}}});
35
35
 
36
36
  /***/ }),
37
37
 
@@ -169,7 +169,7 @@ var __webpack_exports__ = {};
169
169
  /* harmony import */ var _smart_export_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(6802);
170
170
  /* harmony import */ var _smart_export_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(_smart_export_js__WEBPACK_IMPORTED_MODULE_10__);
171
171
 
172
- /* Smart UI v15.0.9 (2023-01-31)
172
+ /* Smart UI v15.0.11 (2023-02-01)
173
173
  Copyright (c) 2011-2023 jQWidgets.
174
174
  License: https://htmlelements.com/license/ */ //
175
175