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
@@ -0,0 +1,6 @@
1
+
2
+ /* Smart UI v15.0.11 (2023-02-01)
3
+ Copyright (c) 2011-2023 jQWidgets.
4
+ License: https://htmlelements.com/license/ */ //
5
+
6
+ Smart("bootstrap-button",class extends Smart.ContentElement{static get properties(){return{value:{type:"string"},name:{type:"string"},type:{type:"string"},styleMode:{value:"primary",type:"string"},outlined:{value:!1,type:"boolean"},sizeMode:{value:"",allowedValue:["lg","sm",""],type:"string"}}}template(){return"<button inner-h-t-m-l='[[innerHTML]]' id='button' type='[[type]]' name='[[name]]' value='[[value]]' disabled='[[disabled]]' role='button'></button>"}ready(){this.render()}render(){const t=this;t.classList.contains("close")?t.$.button.classList.add("close"):(t.$.button.className="btn",t.outlined?t.$.button.classList.add("btn-outline-"+t.styleMode):t.$.button.classList.add("btn-"+t.styleMode),""!==t.sizeMode&&t.$.button.classList.add("btn-"+t.sizeMode))}propertyChangedHandler(){this.render()}}),Smart("bootstrap-check-box",class extends Smart.ContentElement{static get properties(){return{checked:{value:!1,type:"boolean"},indeterminate:{value:!1,type:"boolean"},name:{type:"string"},styleMode:{value:"secondary",type:"string"},type:{value:"checkbox",type:"string"}}}static get listeners(){return{click:"toggle","input.focus":"focus","input.blur":"blur"}}template(){return'<div><div id="button" class="btn">\n\t\t\t\t \t<input indeterminate=[[indeterminate]] checked=[[checked]] id="input" type="checkbox" name=\'[[name]]\' autocomplete="off"/>\n\t\t\t\t \t<label id="label"><span><content></content></span></label>\n\t\t\t </div></div>'}ready(){const t=this;t.$.button.classList.add("component"),t.$.label.classList.add("component-label"),t.$.input.classList.add("component-input"),t.$.button.classList.remove("btn"),t.$.button.classList.remove("switch"),t.$.button.classList.remove("checkbox"),t.$.button.classList.remove("radio"),"switch"===t.type&&t.$.button.classList.add("switch"),"button"===t.type&&(t.$.button.classList.add("btn"),t.$.button.classList.add("btn-"+t.styleMode)),"checkbox"===t.type&&t.$.button.classList.add("checkbox"),"radio"===t.type&&(t.$.button.classList.add("radio"),t.$.input.type="radio"),t instanceof Smart.Bootstrap.ToggleButton||t.classList.add("btn-group-toggle"),t.checked?t.$.button.classList.add("active"):t.$.button.classList.remove("active")}propertyChangedHandler(t){"checked"===t&&this.toggle()}toggle(t){const e=this,n=e.querySelector("input");if(t&&t.preventDefault(),!e.disabled){if(e.indeterminate&&(e.indeterminate=!1),e.checked)e.$.button.classList.remove("active"),e.checked=!1;else{if(e instanceof Smart.Bootstrap.RadioButton){const t=document.querySelectorAll("bootstrap-radio-button");for(let n=0;n<t.length;n++)t[n].group===e.group&&(t[n].set("checked",!1),t[n].$.button.classList.remove("active"))}e.$.button.classList.add("active"),e.checked=!0}e.$.fireEvent("change"),n.focus()}}dispose(){const t=this;t.parentElement&&t.parentElement.removeChild(t)}blur(){this.$.button.classList.remove("focus")}focus(){this.$.button.classList.add("focus")}}),Smart("bootstrap-switch-button",class extends Smart.Bootstrap.CheckBox{static get properties(){return{type:{value:"switch",type:"string"}}}}),Smart("bootstrap-toggle-button",class extends Smart.Bootstrap.CheckBox{static get properties(){return{styleMode:{value:"primary",type:"string"},type:{value:"button",type:"string"}}}static get listeners(){return{click:"toggle","button.focus":"focus","button.blur":"blur"}}template(){return'<div><div id="button" class="btn">\n\t\t\t\t \t<input class="hide" indeterminate=[[indeterminate]] checked=[[checked]] id="input" type="checkbox" name=\'[[name]]\' autocomplete="off"/>\n\t\t\t\t \t<label id="label"><content></content></label>\n\t\t\t </div></div>'}toggle(t){const e=this;if(t&&t.preventDefault(),!e.disabled){if(e.checked){if(e instanceof Smart.Bootstrap.RadioButton)return void e.$.button.focus();e.$.button.classList.remove("active"),e.set("checked",!1)}else e.$.button.classList.add("active"),e.set("checked",!0);e.$.fireEvent("change"),e.$.button.focus(),e.$.button.setAttribute("area-pressed",e.checked)}}}),Smart("bootstrap-radio-button",class extends Smart.Bootstrap.CheckBox{static get properties(){return{styleMode:{value:"secondary",type:"string"},group:{value:"",type:"string"},type:{value:"radio",type:"string"}}}}),Smart("bootstrap-drop-down",class extends Smart.ContentElement{static get properties(){return{styleMode:{value:"secondary",type:"string"},label:{value:"",type:"string"},labelType:{allowedValues:["a","button"],value:"button",type:"string"},href:{value:"#",type:"string"},opened:{value:!1,type:"boolean"},outlined:{value:!1,type:"boolean"},dropDownPosition:{allowedValues:["auto","top","bottom","left","right","custom"],value:"auto",type:"string"},customDropDownPositionCallback:{value:null,type:"function"},sizeMode:{value:"",allowedValue:["lg","sm",""],type:"string"}}}static get listeners(){return{"document.click":"_clearMenus","document.keyup":"_clearMenus","button.keydown":"_dataApiKeydownHandler","container.click":"_clickHandler","dropDownContainer.click":"_clickHandler",keydown:"_dataApiKeydownHandler"}}propertyChangedHandler(t,e,n){const o=this;"styleMode"===t||"sizeMode"===t?(o.$.button.classList.remove("button-"+e),"styleMode"===t?(o.$.button.classList.remove("button-outline-"+n),o.$.actionButton&&o.$.actionButton.classList.remove("button-outline-"+e),"outlined"===t?(o.$.button.classList.add("button-outline-"+n),o.$.actionButton&&o.$.actionButton.classList.add("button-outline-"+n)):(o.$.button.classList.add("button-"+n),o.$.actionButton&&o.$.actionButton.classList.add("button-"+n))):(o.$.button.classList.add("button-"+n),o.$.actionButton&&(o.$.actionButton.classList.remove("button-"+e),o.$.actionButton.classList.add("button-"+n)))):"dropDownPosition"===t?(o._positionDetection.dropDownPositionChangedHandler(),o._setArrowPosition()):"opened"===t?n?o.show():o.hide():"labelType"===t?(o.$.button.outerHTML=o.$.button.outerHTML.replace("<"+e+" ","<"+n+" ").replace("</"+e+">","</"+n+">"),o.$.button=o.querySelector('[smart-id="button"]'),"a"===n?o.$.button.setAttribute("href",o.href):(o.$.button.classList.add("button"),o.$.button.removeAttribute("href"))):"href"===t&&"a"===o.labelType&&o.$.button.setAttribute("href",n)}template(){return'<div class="dropdown btn-group" id="container">\n\t\t\t\t\t<button id="button" class="btn dropdown-toggle" data-toggle="dropdown">[[label]]</button>\n\t\t\t\t\t<div id="dropDownContainer" class="dropdown-menu"><content></content></div>\n\t\t\t\t</div>'}ready(){const t=this;t.ESCAPE_KEYCODE=27,t.SPACE_KEYCODE=32,t.TAB_KEYCODE=9,t.ARROW_UP_KEYCODE=38,t.ARROW_DOWN_KEYCODE=40,t.RIGHT_MOUSE_BUTTON_WHICH=3,t.REGEXP_KEYDOWN=new RegExp(`${t.ARROW_UP_KEYCODE}|${t.ARROW_DOWN_KEYCODE}|${t.ESCAPE_KEYCODE}`),"a"===t.labelType&&(t.$.button.outerHTML=t.$.button.outerHTML.replace("<button ","<a ").replace("</button>","</a>"),t.$.button=t.querySelector('[smart-id="button"]'),t.$.button.setAttribute("href",t.href),t.$.button.classList.remove("btn")),t.dropDownAppendTo||(t.dropDownAppendTo=t.$.container),t._positionDetection=new Smart.Utilities.PositionDetection(t,t.$.dropDownContainer,t.$.container,"hide"),t._positionDetection.getDropDownParent(!0),t._positionDetection.handleAutoPositioning(),t._positionDetection.setDropDownPosition(),t._positionDetection.customPositionDropDown=t._customPositionDropDown.bind(t),t._setArrowPosition(),t.styleMode&&(t.outlined?t.$.button.classList.add("btn-outline-"+t.styleMode):t.$.button.classList.add("btn-"+t.styleMode)),t.sizeMode&&t.$.button.classList.add("btn-"+t.sizeMode),t.$.actionButton&&(t.outlined?t.$.actionButton.classList.add("btn-outline-"+t.styleMode):t.$.actionButton.classList.add("btn-"+t.styleMode),t.sizeMode&&t.$.actionButton.classList.add("btn-"+t.sizeMode)),t.opened&&(t.$.dropDownContainer.classList.add("show"),t.$.container.classList.add("show"),t.set("opened",!0))}toggle(){const t=this;if(t.disabled||t.classList.contains("disabled"))return;const e=!t.opened;t._clearMenus(),e&&t.show()}show(){const t=this;t.disabled||t.classList.contains("disabled")||t.$.dropDownContainer.classList.contains("show")||t.$.fireEvent("show").defaultPrevented||(t.setAttribute("aria-expanded",!0),t.$.dropDownContainer.classList.add("show"),t.$.container.classList.add("show"),t.set("opened",!0),t.customDropDownPositionCallback?t.customDropDownPositionCallback(t.$.dropDownContainer):(t._positionDetection.checkBrowserBounds("vertically"),t._positionDetection.positionDropDown(),t._positionDetection.checkBrowserBounds("horizontally"),t.$.dropDownContainer.setAttribute("x-placement",t._dropDownListPosition+"-start")),t.$.fireEvent("shown"),t.$.button.focus())}_setArrowPosition(){const t=this;if(t.$.container.classList.remove("dropup"),t.$.container.classList.remove("dropleft"),t.$.container.classList.remove("dropright"),"auto"!==t.dropDownPosition)switch(t._dropDownListPosition){case"top":t.$.container.classList.add("dropup");break;case"right":t.$.container.classList.add("dropright");break;case"left":t.$.container.classList.add("dropleft")}t._repositionButtons&&t._repositionButtons()}hide(){const t=this;t.disabled||t.classList.contains("disabled")||!t.$.dropDownContainer.classList.contains("show")||t.$.fireEvent("hide").defaultPrevented||(t.removeAttribute("aria-expanded",!0),t.$.dropDownContainer.classList.remove("show"),t.$.container.classList.remove("show"),t.set("opened",!1),t.$.fireEvent("hidden"),t.$.button.focus())}dispose(){const t=this;t.parentElement&&t.parentElement.removeChild(t)}_dataApiKeydownHandler(t){const e=this;if(/input|textarea/i.test(t.target.tagName)?t.which===e.SPACE_KEYCODE||t.which!==e.ESCAPE_KEYCODE&&(t.which!==e.ARROW_DOWN_KEYCODE&&t.which!==e.ARROW_UP_KEYCODE||t.target.closest(".dropdown-menu")):!e.REGEXP_KEYDOWN.test(t.which))return;if(t.preventDefault(),t.stopPropagation(),this.disabled||e.classList.contains("disabled"))return;const n=e.opened;if(!n||n&&(t.which===e.ESCAPE_KEYCODE||t.which===e.SPACE_KEYCODE))return t.which===e.ESCAPE_KEYCODE&&e.$.button.focus(t),void e._clickHandler(t);const o=[].slice.call(e.querySelectorAll(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)"));if(0===o.length)return;let s=o.indexOf(t.target);t.which===e.ARROW_UP_KEYCODE&&s>0&&s--,t.which===e.ARROW_DOWN_KEYCODE&&s<o.length-1&&s++,s<0&&(s=0),o[s].focus()}_clickHandler(t){t.stopPropagation(),(t.target.closest(".dropdown-menu")||t.target.closest(".dropdown-toggle"))&&(t.preventDefault(),this.toggle())}_getParentFromElement(t){return t.closest("bootstrap-drop-down")}_clearMenus(t){const e=this;if(t&&(t.which===e.RIGHT_MOUSE_BUTTON_WHICH||"keyup"===t.type&&t.which!==e.TAB_KEYCODE&&t.which!==e.ESCAPE_KEYCODE))return;const n=[].slice.call(document.querySelectorAll(".dropdown-menu"));for(let o=0,s=n.length;o<s;o++){const s=n[o].closest("bootstrap-drop-down")||n[o].closest("bootstrap-split-button");if(!s)continue;const i=s.$.dropDownContainer;if(s.opened&&!(t&&("click"===t.type&&/input|textarea/i.test(t.target.tagName)||"keyup"===t.type&&t.which===e.TAB_KEYCODE)&&s.contains(t.target))){if(e.$.fireEvent("hide").defaultPrevented)return;s.setAttribute("aria-expanded","false"),s.$.container.classList.remove("show"),s.set("opened",!1),i.classList.remove("show"),s.$.fireEvent("hidden")}}}_customPositionDropDown(){const t=this,e=t.$[t instanceof Smart.Bootstrap.SplitButton?"button":"container"].getBoundingClientRect(),n=t.$.dropDownContainer;let o=e.top,s=e.left;switch(t._dropDownListPosition){case"bottom":o=e.bottom;break;case"top":o=e.top-n.offsetHeight;break;case"left":o=e.top,s-=n.offsetWidth;break;case"right":o=e.top,s+=e.width}return{left:s,top:o}}}),Smart("bootstrap-split-button",class extends Smart.Bootstrap.DropDown{template(){return'<div class="dropdown btn-group" id="container">\n\t\t\t\t\t<div id="buttonGroup" class="btn-group"></div>\n\t\t\t\t\t<button id="actionButton" class="btn">[[label]]</button>\n\t\t\t\t\t<button id="button" class="btn dropdown-toggle dropdown-toggle-split" data-toggle="dropdown"></button>\n\t\t\t\t\t<div id="dropDownContainer" class="dropdown-menu"><content></content></div>\n\t\t\t\t\t</div>\n\t\t\t\t</div>'}_repositionButtons(){const t=this,e=t.$.actionButton,n=t.$.dropDownContainer,o=t.$.button,s=t.$.container,i=t.$.buttonGroup;e.parentElement.removeChild(e),o.parentElement.removeChild(o),n.parentElement.removeChild(n),s.appendChild(e),s.appendChild(o),s.appendChild(n),"left"!==t.dropDownPosition||i.contains(o)?"right"!==t.dropDownPosition||i.contains(e)||i.appendChild(e):(i.appendChild(o),i.appendChild(n)),"left"!==t.dropDownPosition&&"right"!==t.dropDownPosition?t.$.container.removeChild(i):i.parentElement||t.$.container.insertBefore(i,e)}}),Smart("bootstrap-input-group",class extends Smart.ContentElement{static get properties(){return{contentBefore:{value:"",type:"string"},contentAfter:{value:"",type:"string"},type:{value:"text",type:"string"},name:{value:"",type:"string"},placeholder:{value:"",type:"string"},styleMode:{value:"",type:"string"},noWrap:{value:!1,type:"boolean"},sizeMode:{value:"",allowedValue:["lg","sm",""],type:"string"},value:{value:"",allowedValue:[],type:"string"}}}template(){return'<div class="input-group" id="container">\n\t\t\t\t\t<div id="prependContainer" class="input-group-prepend">[[contentBefore]]</div>\n\t\t\t\t\t<div id="contentContainer"><content></content></div>\n\t\t\t\t\t<div id="appendContainer" class="input-group-append">[[contentAfter]]</div>\n\t\t\t\t</div>'}ready(){const t=this;t.noWrap?t.$.container.classList.add("flex-nowrap"):t.$.container.classList.remove("flex-nowrap")}propertyChangedHandler(t,e,n){const o=this;if("noWrap"===t)n?o.$.container.classList.add("flex-nowrap"):o.$.container.classList.remove("flex-nowrap");else if("value"===t){o.input&&(o.input.value=n);const e=o.$.inputContainer.querySelectorAll(".form-component");for(let o=0;o<e.length;o++)e[o][t]=n}else if("placeholder"===t||"name"===t||"type"===t){const e=o.$.inputContainer.querySelectorAll(".form-component");for(let o=0;o<e.length;o++)e[o][t]=n}else if("styleMode"===t||"sizeMode"===t)o.$.container.classList.remove("input-group-"+e),o.$.container.classList.add("input-group-"+n);else if("contentBefore"===t||"contentAfter"===t){const e=o.$["contentBefore"===t?"prependContainer":"appendContainer"];e.innerHTML=n,n&&!e.parentElement?"contentBefore"===t?o.$.container.insertBefore(e,o.$.container.firstElementChild):o.$.container.appendChild(e):n||o.$.container.removeChild(e)}}render(){const t=this,e=t.$.contentContainer,n=t.$.prependContainer,o=t.$.appendContainer;let s=e.querySelector(".form-component");if(!s){const n=document.createElement("input");n.type=t.type,n.placeholder=t.placeholder,n.name=t.name,n.value=t.value,n.classList.add("form-component"),n.onchange=function(){t.value=n.value},n.onkeyup=function(){t.value=n.value},t.input=n,e.appendChild(n),s=n}let i=s.previousElementSibling;for(;i;){const t=i;if(t===n)break;i=i.previousElementSibling,t.classList.contains("form-component")||n.insertBefore(t,n.firstElementChild)}for(let t=0;t<n.children.length;t++)n.children[t].classList.add("input-group-item");let a=s.nextElementSibling;for(;a;){const t=a;if(t===o)break;a=a.nextElementSibling,t.classList.contains("form-component")||o.appendChild(t)}for(let t=0;t<o.children.length;t++)o.children[t].classList.add("input-group-item");for(;e.firstElementChild;)t.$.container.insertBefore(e.firstElementChild,o);o.children.length||t.$.container.removeChild(o),n.children.length||t.$.container.removeChild(n),e.children.length||t.$.container.removeChild(e),t.sizeMode&&t.$.container.classList.add("input-group-"+t.sizeMode),t.styleMode&&t.$.container.classList.add("input-group-"+t.styleMode)}}),Smart("bootstrap-modal",class extends Smart.ContentElement{static get properties(){return{sizeMode:{value:"",allowedValue:["sm","","lg","xl"],type:"string"},scrollable:{value:!1,type:"boolean"},focusable:{value:!0,type:"boolean"},centered:{value:!1,type:"boolean"},opened:{value:!1,type:"boolean"},backdrop:{allowedValues:["static","default","none"],value:"default",type:"string"},keyboard:{value:!0,type:"boolean"}}}static get listeners(){return{keydown:"_keydownHandler",click:"_clickHandler"}}template(){return'<div><div class="modal-dialog" id="dialog">\n\t\t\t\t\t<div class="modal-content" inner-h-t-m-l="[[innerHTML]]">\n\t\t\t\t\t\t<content></content>\n\t\t\t\t</div></div>'}ready(){}propertyChangedHandler(t,e,n){const o=this;"focusable"===t?n?o.setAttribute("tabindex",-1):o.removeAttribute("tabindex"):"scrollable"===t||"centered"===t?o.$.dialog.classList[n?"add":"remove"]("modal-dialog-"+t):"sizeMode"===t&&(o.$.dialog.classList.remove("modal-"+e),o.$.dialog.classList.add("modal-"+n))}render(){const t=this;t.classList.add("modal"),t.$.dialog.classList[t.scrollable?"add":"remove"]("modal-dialog-scrollable"),t.$.dialog.classList[t.centered?"add":"remove"]("modal-dialog-centered"),""!==t.sizeMode&&t.$.dialog.classList.add("modal-"+t.sizeMode),t.opened&&t.show(!0),t.setAttribute("tabindex",t.tabindex),super.render()}handleUpdate(){this._adjustDialog()}toggle(){return this.opened?this.hide():this.show()}show(t){const e=this;!t&&e.opened||e._isTransitioning||(e.classList.contains("fade")&&(this._isTransitioning=!0),e.$.fireEvent("show").defaultPrevented||(e.set("opened",!0),e._setScrollbar(),e._adjustDialog(),e._setResizeEvent(),e._showBackdrop((()=>e._showElement()))))}hide(t){const e=this;if(t&&t.preventDefault(),!e.opened||e._isTransitioning)return;if(e.$.fireEvent("hide").defaultPrevented)return;e.set("opened",!1);const n=e.classList.contains("fade");n&&(e._isTransitioning=!0),e._setResizeEvent(),e.classList.remove("show"),n?e.addEventListener("transitionend",(t=>e._hideModal(t)),{once:!0}):e._hideModal()}dispose(){const t=this;t.parentElement&&t.parentElement.removeChild(t),window.removeEventListener("resize",t._windowResizeHandler),document.removeEventListener("focusin",t._forceFocusHandler)}_hideModal(){const t=this;t.style.display="none",t.setAttribute("aria-hidden",!0),t.removeAttribute("aria-modal"),t._isTransitioning=!1,t._showBackdrop((()=>{document.body.classList.remove("modal-open"),t.style.paddingLeft="",t.style.paddingRight="",[].slice.call(document.querySelectorAll(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top")).forEach(((t,e)=>{const n=e._paddingRight;delete e._paddingRight,e.style.paddingRight=n||""})),[].slice.call(document.querySelectorAll(".sticky-top")).forEach(((t,e)=>{const n=e._marginRight;void 0!==n&&(delete e._marginRight,e.style.marginRight=n||"")}));const e=document.body._paddingRight;delete document.body._paddingRight,document.body.style.paddingRight=e||"",t.$.fireEvent("hidden")}))}_keydownHandler(t){27===t.which&&this.keyboard&&(t.preventDefault(),this.hide())}_clickHandler(t){const e=this;t.target.closest('[data-dismiss="modal"]')?e.hide():e._ignoreBackdropClick?e._ignoreBackdropClick=!1:t.target===t.currentTarget&&("static"!==e.backdrop?e.hide():e.focus())}_setScrollbar(){const t=this,e=document.body.getBoundingClientRect();if(e.left+e.right<window.innerWidth){const e=[].slice.call(document.querySelectorAll(".fixed-top, .fixed-bottom, .is-fixed, .sticky-top")),n=[].slice.call(document.querySelectorAll(".sticky-top"));for(let n=0;n<e.length;n++){const o=e[n],s=parseFloat(getComputedStyle(o).getPropertyValue("padding-right"))||0;o.style.paddingRight=(o._paddingRight=s+t._getScrollbarWidth())+"px"}for(let e=0;e<n.length;e++){const o=n[e],s=parseFloat(getComputedStyle(o).getPropertyValue("margin-right"))||0;o.style.marginRight=(o._marginRight=s+t._getScrollbarWidth())+"px"}document.body._paddingRight=document.body.style.paddingRight,document.body.style.paddingRight=(parseFloat(getComputedStyle(document.body).getPropertyValue("padding-right"))||0)+t._getScrollbarWidth()+"px"}document.body.classList.add("modal-open")}_getScrollbarWidth(){const t=document.createElement("div");t.className="modal-scrollbar-measure",document.body.appendChild(t);const e=t.getBoundingClientRect().width-t.clientWidth;return document.body.removeChild(t),e}_adjustDialog(){const t=this,e=t.scrollHeight>document.documentElement.clientHeight,n=document.body.getBoundingClientRect(),o=n.left+n.right<window.innerWidth;o&&e&&(t.style.paddingLeft=t._getScrollbarWidth()+"px"),o&&!e&&(t.style.paddingRight=t._getScrollbarWidth()+"px")}_windowResizeHandler(){this._adjustDialog()}_setResizeEvent(){const t=this;t.opened?window.addEventListener("resize",t._windowResizeHandler):window.removeEventListener("resize",t._windowResizeHandler)}_showElement(){const t=this,e=t.classList.contains("fade"),n=t.$.dialog;t.style.display="block",t.removeAttribute("aria-hidden"),t.setAttribute("aria-modal",!0),n.classList.contains("modal-dialog-scrollable")?n.querySelector(".modal-body").scrollTop=0:t.scrollTop=0,e&&t.offsetHeight,t.classList.add("show"),t._enforceFocus();const o=()=>{t.focus(),t._isTransitioning=!1,t.$.fireEvent("shown")};e?t.$.dialog.addEventListener("transitionend",o,{once:!0}):o()}_forceFocusHandler(t){const e=this;document===t.target||e===t.target||e.contains(t.target)||(t.preventDefault(),e.hide())}_enforceFocus(){document.removeEventListener("focusin",this._forceFocusHandler),document.addEventListener("focusin",this._forceFocusHandler)}_showBackdrop(t){const e=this,n=e.classList.contains("fade");if(e.opened&&"none"!==e.backdrop){if(e._backdrop||(e._backdrop=document.createElement("div"),e._backdrop.className="modal-backdrop"),n&&this._backdrop.classList.add("fade"),e._backdrop.parentElement||document.body.appendChild(e._backdrop),n&&e._backdrop.offsetHeight,this._backdrop.classList.add("show"),!t)return;if(!n)return void t();0===e._backdrop.offsetHeight&&t(),e._backdrop.addEventListener("transitionend",t,{once:!0})}else if(!e.opened&&e._backdrop){e._backdrop.classList.remove("show");const n=()=>{e._backdrop.parentElement&&e._backdrop.parentElement.removeChild(e._backdrop),t&&t()};e.classList.contains("fade")?e._backdrop.addEventListener("transitionend",n,{once:!0}):n()}else t&&t()}}),Smart("bootstrap-tabs",class extends Smart.ContentElement{static get properties(){return{sizeMode:{value:"",allowedValue:["sm","","lg","xl"],type:"string"},tabType:{value:"tabs",allowedValue:["tabs","nav","pills"],type:"string"},listType:{value:"ul",allowedValue:["ul","ol","nav"],type:"string"},alignment:{value:"",allowedValue:["","center","end","vertical"],type:"string"},fill:{value:!1,type:"boolean"},justified:{value:!1,type:"boolean"},styleMode:{value:"",type:"string"}}}static get listeners(){return{click:"_clickHandler"}}template(){return'<div id="container"><content></content></div>'}ready(){}appendChild(t){const e=this;if(!e.isCompleted){const t=Array.prototype.slice.call(arguments,2);return HTMLElement.prototype.appendChild.apply(e,t.concat(Array.prototype.slice.call(arguments)))}t&&e.$.container.appendChild(t)}removeChild(t){const e=this;if(!e.isCompleted){const t=Array.prototype.slice.call(arguments,2);return HTMLElement.prototype.removeChild.apply(e,t.concat(Array.prototype.slice.call(arguments)))}t||e.$.container.removeChild(t)}insertBefore(t,e){const n=this;if(!n.isCompleted){const t=Array.prototype.slice.call(arguments,2);return HTMLElement.prototype.insertBefore.apply(n,t.concat(Array.prototype.slice.call(arguments)))}t&&n.$.container.insertBefore(t,e)}propertyChangedHandler(t,e,n){const o=this;if("listType"===t){const t=o.querySelectorAll(".nav-link");o.$.container.innerHTML="";for(let e=0;e<t.length;e++)o.appendChild(t[e]);o.render()}"styleMode"===t&&(o.classList.remove(e),o.styleMode&&o.classList.add(o.styleMode)),o._list&&("alignment"===t?(o._list.classList.remove("vertical"===n?"flex-column":"justify-content-"+e),n&&o._list.classList.add("vertical"===n?"flex-column":"justify-content-"+n)):"tabType"===t?(o._list.classList.remove("nav-"+e),"nav"!==n&&o._list.classList.add("nav-"+n)):"fill"!==t&&"justified"!==t||o._list.classList[n?"add":"remove"]("nav-"+t))}render(){const t=this,e=t.$.container,n=document.createDocumentFragment();for(;e.firstElementChild;){const t=e.firstElementChild;t&&(t instanceof Smart.Bootstrap.DropDown?t.querySelector(".dropdown-toggle").classList.add("nav-link"):t.classList.add("nav-link"),n.appendChild(t))}if(t.$.container.innerHTML="",!n.children.length)return;const o=document.createElement(t.listType);if(t._list=o,o.classList.add("nav"),"nav"===t.listType)for(;n.firstElementChild;)n.firstElementChild.classList.contains("tab-content")?t.$.container.appendChild(n.firstElementChild):o.appendChild(n.firstElementChild);else for(;n.firstElementChild;){if(n.firstElementChild.classList.contains("tab-content")){t.$.container.appendChild(n.firstElementChild);continue}const e=document.createElement("li");e.classList.add("nav-item"),e.appendChild(n.firstElementChild),o.appendChild(e)}t.$.container.insertBefore(o,t.$.container.lastElementChild),t._refreshBarPosition(),t._list&&(t.alignment&&t._list&&t._list.classList.add("vertical"===t.alignment?"flex-column":"justify-content-"+t.alignment),"nav"!==t.tabType&&t._list.classList.add("nav-"+t.tabType),t.fill&&t._list.classList.add("nav-fill"),t.justified&&t._list.classList.add("nav-justified"),t.styleMode&&t.classList.add(t.styleMode))}_getSelectorFromElement(t){let e=t.getAttribute("data-target");if(!e||"#"===e){const n=t.getAttribute("href");e=n&&"#"!==n?n.trim():""}return document.querySelector(e)}show(t){const e=this;if(e.disabled)return;const n=Array.from(e.getElementsByClassName("nav-link")).find((t=>t.classList.contains("active"))),o=e._getSelectorFromElement(t);if(!t||!t.classList.contains("nav-link")||t===n)return;if(e.$.fireEvent("show",{relatedTarget:n,target:t}),e.$.fireEvent("show",{relatedTarget:n,target:t}).defaultPrevented)return;e._activate(t,e);const s=()=>{e.$.fireEvent("shown",{relatedTarget:n,target:t})};o?e._activate(o,o.parentElement,s):s()}dispose(){const t=this;t.parentElement&&t.parentElement.removeChild(t)}_refreshBarPosition(){const t=this;if(!t.bar){const e=document.createElement("span");t._list.appendChild(e),e.classList.add("bar"),t.bar=e}setTimeout((function(){const e=Array.from(t.getElementsByClassName("nav-link")),n=e.find((t=>t.classList.contains("active")));let o=0,s=0;for(let t=0;t<e.length;t++)o+=e[t].getBoundingClientRect().width,e[t]===n&&(s=o);if(n){const e=n.getBoundingClientRect();t.bar.style.left=-o+s-n.offsetWidth+"px",t.bar.style.top=e.height+"px",t.bar.style.width=n.offsetWidth+"px"}}))}_activate(t,e,n){const o=e&&e.querySelector(".active"),s=()=>this._transitionComplete(t,o,n);n&&o&&o.classList.contains("fade")?(o.classList.remove("show"),o.addEventListener("transitionend",s,{once:!0})):s()}_transitionComplete(t,e,n){if(e){e.classList.remove("active");const t=e.parentElement.querySelector(".dropdown-menu .active");t&&t.classList.remove("active"),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!1)}if(t.classList.add("active"),this._refreshBarPosition(),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),t.offsetHeight,t.classList.contains("fade")&&t.classList.add("show"),t.parentElement&&t.parentElement.classList.contains("dropdown-menu")){const e=t.closest(".dropdown");e&&e.querySelector(".dropdown-toggle").classList.add("active"),t.setAttribute("aria-expanded",!0)}n&&n()}_clickHandler(t){const e=this;if(e.disabled)return;const n=t.target;["tab","pill","list"].indexOf(n.getAttribute("data-toggle"))>-1&&e.show(n),t.stopPropagation(),t.preventDefault()}}),Smart("bootstrap-range",class extends Smart.BaseElement{static get properties(){return{min:{value:0,type:"number"},max:{value:10,type:"number"},name:{type:"string"},value:{value:5,type:"number"}}}static get listeners(){return{"input.focus":"focus","input.blur":"blur"}}template(){return'<div><div id="range" class="slider">\n\t\t\t\t \t<input value=[[value]] max=[[max]] min=[[min]] disabled=[[disabled]] id="input" type="range" name=\'[[name]]\'/>\n\t\t\t </div></div>'}ready(){const t=this;t.$.range.classList.add("component"),t.$.input.classList.add("component-input"),t.$.input.classList.add("range")}propertyChangedHandler(){}blur(){this.$.range.classList.remove("focus")}focus(){this.$.range.classList.add("focus")}}),Smart("bootstrap-progress-bar",class extends Smart.ContentElement{static get properties(){return{min:{value:0,type:"number"},max:{value:10,type:"number"},name:{type:"string"},type:{value:"",type:"string"},value:{value:5,type:"number"},striped:{value:!1,type:"boolean"},styleMode:{value:"primary",type:"string"}}}template(){return'<div><div id="progress" class="progress">\n\t\t\t\t \t<div class="progress-bar" role="progressbar" aria-valuenow==[[value]] aria-valuemax==[[max]] aria-valuemin==[[min]] disabled=[[disabled]] id="progressbar" name=\'[[name]]\'><content></content></div>\n\t\t\t </div>\n\t\t\t <progress id="circular" class="hide circular"/>\n\t\t\t </div>'}refresh(){const t=this;let e=Math.max(t.min,t.value);e=Math.min(t.value,t.max);const n=e*t.offsetWidth/(t.max-t.min);t.$.progressbar.style.width=n+"px",t.$.progressbar.classList.add("bg-"+t.styleMode),t.$.circular.classList.add("bg-"+t.styleMode),t.$.progressbar.classList.remove("progress-bar-striped"),t.striped&&t.$.progressbar.classList.add("progress-bar-striped"),"circular"===t.type?(t.$.progress.classList.add("hide"),t.$.circular.classList.remove("hide")):(t.$.progress.classList.remove("hide"),t.$.circular.classList.add("hide"))}ready(){this.$.progress.classList.add("component"),this.refresh()}propertyChangedHandler(){this.refresh()}}),Smart("bootstrap-circular",class extends Smart.Bootstrap.ProgressBar{static get properties(){return{type:{value:"circular",type:"string"}}}}),Smart("bootstrap-input",class extends Smart.ContentElement{static get properties(){return{name:{value:"",type:"string"},value:{value:"",type:"string"},placeholder:{value:"",type:"string"},required:{value:!1,type:"boolean"},outlined:{value:!1,type:"boolean"},filled:{value:!1,type:"boolean"},styleMode:{value:"outlined",type:"string"}}}template(){return'<div><label input id="label">\n <input name=[[name]] type="text" class="form-component" id="input" placeholder="[[placeholder]]"\n\t\t\t\t\t\t\t\t\tvalue="{{value::keydown}}" required="[[required]]"/>\n <span id="span">[[placeholder]]</span>\n </label></div>'}refresh(){const t=this;t.$.label.removeAttribute("outlined"),t.$.label.removeAttribute("filled"),t.$.label.removeAttribute("default"),t.outlined?t.$.label.setAttribute("outlined",""):t.filled?t.$.label.setAttribute("filled",""):t.$.label.setAttribute("default",""),t.$.label.className="",t.styleMode&&(t.$.label.classList.add(t.styleMode),t.$.label.setAttribute("highlight",""))}ready(){this.refresh()}propertyChangedHandler(){this.refresh()}}),Smart("bootstrap-textarea",class extends Smart.Bootstrap.Input{template(){return'<div><label input id="label">\n <textarea name=[[name]] type="text" class="form-component" id="input" placeholder="[[placeholder]]"\n\t\t\t\t\t\t\t\t\tvalue="{{value::keydown}}" required="[[required]]"></textarea>\n <span id="span">[[placeholder]]</span>\n </label></div>'}}),Smart("bootstrap-file-input",class extends Smart.ContentElement{static get properties(){return{name:{value:"",type:"string"},placeholder:{value:"",type:"string"},styleMode:{value:"",type:"string"},value:{value:"",type:"string"}}}template(){return'<div><div class="file">\n\t\t\t\t\t<input id="input" placeholder=[[placeholder]] name=[[name]] type="file" class="file-input" />\n\t\t\t\t\t<label class="file-label" for="inputGroupFile01"><content></content></label>\n\t\t\t\t</div></div>'}refresh(){const t=this;t.$.input.value=t.value,t.$.input.onchange=function(){t.value=t.$.input.value}}ready(){this.refresh()}propertyChangedHandler(){this.refresh()}});
@@ -0,0 +1,6 @@
1
+
2
+ /* Smart UI v15.0.11 (2023-02-01)
3
+ Copyright (c) 2011-2023 jQWidgets.
4
+ License: https://htmlelements.com/license/ */ //
5
+
6
+ Smart.Utilities.Assign("DragDrop",class{constructor(e){const t=this;t.ownerElement=e,t._dragDetails=null,t._items=null,t._showFeedback=!0}capture(e,t){this._dragDetails={element:e.element||e,item:e,x:t.pageX,y:t.pageY}}get isDragging(){return null!==this.feedback}get items(){return this._items}set items(e){this._items=e}get showFeedback(){return this._showFeedback}set showFeedback(e){this._showFeedback=e}findTarget(e){const t=this,i=t.ownerElement.rightToLeft;let a=null;if(!t._itemCoordinates)return null;for(let n=0;n<t._itemCoordinates.coordinates.length;n++)for(let r=0;r<t._itemCoordinates.coordinates[n].length;r++){const s=t._itemCoordinates.coordinates[n][r];if(t._items[r]&&(t._items[r].classList.contains("smart-visibility-hidden")||t._items[r].classList.contains("smart-hidden")))continue;if(t._items[s.index]&&(t._items[s.index].classList.contains("smart-visibility-hidden")||t._items[s.index].classList.contains("smart-hidden")))continue;const o=s.rect;if(o.top<=e.clientY&&o.left<=e.clientX&&(a=t._items[s.index],i))break}return a}createFeedback(e){const t=this,i=t.dragDetails;let a;if(t.showFeedback)return i?i.feedback?i.feedback:Math.abs(i.x-e.pageX)>5||Math.abs(i.y-e.pageY)>5?(a=document.createElement("div"),a.className="smart-breadcrumb-feedback",a.style.height=t.dragDetails.element.offsetHeight+"px",a.innerHTML=t.dragDetails.element.innerHTML,document.body.appendChild(a),i.feedback=a,i.element.classList.add("dragged"),t.getItemCoordinates(t.items),t.ownerElement.$.fireEvent("dragStart",{item:i.item,element:i.element,target:i.item,originalEvent:e.originalEvent}),t.ownerElement.rightToLeft?a.setAttribute("right-to-left",!0):a.removeAttribute("right-to-left"),a):null:null}get feedback(){const e=this;return e.dragDetails&&e.dragDetails.feedback?e.dragDetails.feedback:null}removeFeedback(e){const t=this,i=t.dragDetails;if(t.showFeedback){if(i)if(i.feedback&&document.body.removeChild(i.feedback),t.ownerElement.allowDrop){if("Escape"===e.key)return t.ownerElement.$.fireEvent("dragCancel",{item:i.item,element:i.element,originalEvent:e.originalEvent}),void t.removeCapture();t.ownerElement.$.fireEvent("dragEnd",{item:i.item,element:i.element,target:i.target,droppedBeforeTarget:i.before,originalEvent:e.originalEvent}),t.removeCapture()}else t.removeCapture()}else t.removeCapture()}removeCapture(){const e=this,t=e.dragDetails;t&&(e.clearItemDragClass(),t.element.classList.remove("dragged"),e._dragDetails=null)}moveFeedback(e,t){const i=this,a=i.dragDetails;if(!i.showFeedback)return;if(!a)return;const n=i.dragDetails.feedback;n&&(n.style.left=e+"px",n.style.top=t+"px"),delete a.target}drag(e){const t=this;if(!t.dragDetails)return;t.createFeedback(e),t.moveFeedback(e.pageX+5,e.pageY+5);const i=t.findTarget(e);if(i){let a=i.element?i.element:i;if(a)return void t.applyItemDragClass(a,a.getBoundingClientRect(),e)}else t.ownerElement.$.fireEvent("dragging",{item:t.dragDetails.item,element:t.dragDetails.element,target:null,originalEvent:e.pageX?e:e.originalEvent}),t.clearItemDragClass()}error(){const e=this;e.dragDetails&&e.dragDetails.feedback&&e.dragDetails.feedback.classList.add("error")}data(){const e=this;e.dragDetails&&e.dragDetails.feedback&&e.dragDetails.feedback.classList.add("data")}success(){const e=this;e.dragDetails&&e.dragDetails.feedback&&(e.dragDetails.feedback.classList.remove("error"),e.dragDetails.feedback.classList.remove("data"))}applyItemDragClass(e,t,i){const a=this,n=a._dragDetails;let r,s,o;a.clearItemDragClass(),n.target=e,n&&a.showFeedback&&n.feedback&&(n.feedback.classList.remove("error"),n.before=!1),a._minimized?(r=i.clientY,s="top",o="height"):(r=i.clientX,s="left",o="width");const l=e[(a.ownerElement.rightToLeft?"previous":"next")+"ElementSibling"];r<=t[s]+t[o]/2?(e.classList.add("target"),n&&(n.before=!0)):l?l.classList.add("target"):e.classList.add("afterTarget"),n&&(a.ownerElement.rightToLeft&&(n.before=!n.before),a.ownerElement.$.fireEvent("dragging",{item:n.item,element:n.element,target:e,originalEvent:i.originalEvent}))}clearItemDragClass(){const e=this;e.items&&e.items.forEach((e=>{const t=e instanceof HTMLElement?e:e.element;t.classList.remove("target"),t.classList.remove("afterTarget")})),e.ownerElement._addNewItemButton&&e.ownerElement._addNewItemButton.classList.remove("target")}getItemCoordinates(e){if(!e)return{coordinate:[],rows:[]};const t=e.map((e=>e.nodeName?e:e.element)),i=[[]],a=[];let n=t[0].offsetTop,r=0;i[0].push({index:0,rect:t[0].getBoundingClientRect()}),a[0]={top:i[0][0].rect.top,bottom:i[0][0].rect.bottom};for(let e=1;e<t.length;e++){const s=t[e].getBoundingClientRect(),o=t[e].offsetTop;o>n&&(n=o,r++,i[r]=[],a[r]={top:s.top,bottom:s.bottom}),i[r].push({index:e,rect:s})}this._itemCoordinates={coordinates:i,rows:a}}get dragDetails(){return this._dragDetails}}),Smart("smart-breadcrumb",class extends Smart.BaseElement{static get properties(){return{addNewItem:{value:!1,type:"boolean"},allowDrag:{value:!1,type:"boolean"},allowDrop:{value:!1,type:"boolean"},closeButtons:{value:!1,type:"boolean"},dataSource:{value:[],type:"array",reflectToAttribute:!1},itemTemplate:{value:null,type:"any"},minimizeWidth:{value:150,type:"number?"},placeholder:{value:"",type:"string"}}}static get listeners(){return{move:"_moveHandler",resize:"_resizeHandler","container.click":"_containerClickHandler","container.down":"_containerDownHandler","container.transitionend":"_containerTransitionendHandler","hamburgerIcon.click":"_hamburgerIconClickHandler","document.move":"_documentMoveHandler","document.keyup":"_documentKeyUpHandler","document.up":"_documentUpHandler"}}static get styleUrls(){return["smart.breadcrumb.css"]}template(){return'<div id="container" role="presentation">\n <div id="minimizedHeader" class="smart-header smart-minimized-header smart-hidden" role="presentation">\n <div id="hamburgerIcon" class="smart-hamburger-icon" role="button" aria-label="Toggle" aria-haspopup="dialog" aria-expanded="false">\n <div id="hamburgerIconLineTop" class="smart-hamburger-icon-line smart-hamburger-icon-line-top" role="presentation"></div>\n <div id="hamburgerIconLineCenter" class="smart-hamburger-icon-line smart-hamburger-icon-line-center" role="presentation"></div>\n <div id="hamburgerIconLineBottom" class="smart-hamburger-icon-line smart-hamburger-icon-line-bottom" role="presentation"></div>\n </div>\n </div>\n <template>\n <div class="smart-breadcrumb-items" *items={{dataSource}} role="list">\n <div class="smart-breadcrumb-item" role="listitem" aria-label={{item.label}}>\n <div class="smart-breadcrumb-item-label" inner-H-T-M-L={{item.label}} role="presentation"></div>\n <div class="smart-close-button" role="button" aria-label="Close"></div>\n </div>\n </div>\n </template>\n <div id="placeholder" class="smart-breadcrumb-placeholder smart-hidden" inner-H-T-M-L={{placeholder}}></div>\n </div>'}propertyChangedHandler(e,t,i){super.propertyChangedHandler(e,t,i);const a=this;switch(e){case"addNewItem":i?a._appendNewItemButton():(a.$.templateContainer.firstElementChild.removeChild(a._addNewItemButton),delete a._addNewItemButton),a._setIndentation();break;case"animation":case"disabled":case"unfocusable":a.addNewItem&&(a._addNewItemButton[e]=i),"disabled"===e&&a._minimizedDropDownOpened&&a._hamburgerIconClickHandler();break;case"itemTemplate":for(let e=0;e<a._items.length;e++)a._items[e].firstElementChild.innerHTML=a.dataSource[e].label;i&&a._applyTemplate();break;case"minimizeWidth":null!==i&&a.offsetWidth<=i?a.minimize():a.maximize();break;case"closeButtons":a._minimized||a._setIndentation()}}ready(){super.ready();const e=this;e.setAttribute("role","navigation"),e.$.container.children[1].setAttribute("id",e.id+"TemplateContainer"),e.$.container.children[1].setAttribute("role","presentation"),e.$.hamburgerIcon.setAttribute("aria-controls",e.id+"TemplateContainer"),e._edgeMacFF=Smart.Utilities.Core.Browser.Edge||Smart.Utilities.Core.Browser.Firefox&&-1!==navigator.platform.toLowerCase().indexOf("mac"),e.templateContainer=e.$.container.children[1],e._dragDrop=new Smart.Utilities.DragDrop(e),null!==e.minimizeWidth&&e.offsetWidth<=e.minimizeWidth&&e.minimize()}templateAttached(){this._handleDataSourceRefresh()}addItem(e){const t=this.dataSource.slice(0);!e||"object"!=typeof e||isNaN(e.index)||e.index<0||(t.splice(e.index,0,{label:e.label,value:e.value}),this.dataSource=t)}maximize(){const e=this;e._minimized&&(e.$minimizedHeader.addClass("smart-hidden"),e.templateContainer.classList.remove("smart-visibility-hidden"),e._edgeMacFF&&e.templateContainer.classList.remove("not-in-view"),e.$hamburgerIcon.removeClass("smart-close-button"),e.removeAttribute("minimized"),e.$.container.children[1].setAttribute("role","presentation"),e._minimizedDropDownOpened=!1,e._minimized=!1,e.$.fireEvent("maximize"),e._setIndentation())}minimize(){const e=this;if(e._minimized||0===e.offsetWidth||0===e.offsetHeight)return;const t=e.animation,i=e.hasAnimation;i&&(e.animation="none"),e.$minimizedHeader.removeClass("smart-hidden"),e.templateContainer.classList.add("smart-visibility-hidden"),e._edgeMacFF&&e.templateContainer.classList.add("not-in-view"),i&&setTimeout((function(){e.animation=t}),0),e.setAttribute("minimized",""),e.$.container.children[1].setAttribute("role","dialog"),e._minimized=!0,e.$.fireEvent("minimize"),e._setIndentation()}removeItem(e){const t=this,i=t._items.indexOf(e),a=t.dataSource.slice(0);-1!==i&&(a.splice(i,1),t.dataSource=a)}_moveHandler(e){"touchmove"===e.originalEvent.type&&e.originalEvent.preventDefault()}_resizeHandler(){this.refresh()}refresh(){const e=this;null!==e.minimizeWidth&&e.offsetWidth<=e.minimizeWidth?e.minimize():e._minimized?e.maximize():e._setIndentation()}_containerClickHandler(e){const t=this;if(t.disabled||!t.templateContainer.contains(e.target))return;const i=e.target.closest(".smart-close-button");if(!i){const i=e.target.closest(".smart-breadcrumb-item"),a=t.dataSource[t._items.indexOf(i)];return void t.$.fireEvent("itemClick",{item:a,element:i})}const a=i.closest(".smart-breadcrumb-item"),n=t.dataSource[t._items.indexOf(a)];if(!t.$.fireEvent("closing",{item:n,element:a}).defaultPrevented){const e=t.dataSource.slice(0);e.splice(t._items.indexOf(a),1),t.dataSource=e,t.$.fireEvent("close",{item:n,element:a})}}_containerDownHandler(e){const t=this,i=e.originalEvent.target;if(!t.allowDrag||t.disabled||i.classList.contains("smart-close-button"))return;const a=i.closest(".smart-breadcrumb-item");a&&(t._dragDrop.items=t._items,t._dragDrop.capture(a,e))}_containerTransitionendHandler(e){const t=this;t._edgeMacFF&&e.target===t.templateContainer&&!t._minimizedDropDownOpened&&t.hasAnimation&&t.templateContainer.classList.add("not-in-view")}_hamburgerIconClickHandler(){const e=this;e._minimizedDropDownOpened?(e.$hamburgerIcon.removeClass("smart-close-button"),e.templateContainer.classList.add("smart-visibility-hidden"),e.$.hamburgerIcon.setAttribute("aria-expanded",!1),e._minimizedDropDownOpened=!1):(e.$hamburgerIcon.addClass("smart-close-button"),e._edgeMacFF&&e.templateContainer.classList.remove("not-in-view"),e.templateContainer.classList.remove("smart-visibility-hidden"),e.$.hamburgerIcon.setAttribute("aria-expanded",!0),e._minimizedDropDownOpened=!0)}_documentKeyUpHandler(e){const t=this;t.contains(t.getRootNode().activeElement)&&"Escape"===e.key&&t.dragDrop.removeFeedback(e)}_documentMoveHandler(e){this._dragDrop.dragDetails&&(e.originalEvent.preventDefault(),this._dragDrop.drag(e))}_documentUpHandler(e){const t=this,i=t._dragDrop.dragDetails;if(i)if(i.feedback){if(i.item===i.target)return void t._dragDrop.removeFeedback(e);const a=t._items.slice(0),n=a.indexOf(i.item),r=t.dataSource.slice(0),s=r.splice(n,1);a.splice(n,1);const o=a.indexOf(i.target)+(i.before?0:1);n!==o&&n>=0&&(r.splice(o,0,s[0]),t.dataSource=r),t._dragDrop.removeFeedback(e)}else t._dragDrop.removeCapture()}_handleDataSourceRefresh(){const e=this;e._items=Array.from(e.$.templateContainer.firstElementChild.children),e._items.forEach(((t,i)=>{t.data=e.dataSource[i]})),e.addNewItem&&e._appendNewItemButton(),e._applyTemplate(),e._setIndentation(),0===e._items.length?e.$.placeholder.classList.remove("smart-hidden"):e.$.placeholder.classList.add("smart-hidden")}_appendNewItemButton(){const e=this,t=document.createElement("smart-button");t.innerHTML="+",t.animation=e.animation,t.disabled=e.disabled,t.unfocusable=e.unfocusable,t.setAttribute("aria-label","Add"),t.addEventListener("click",(function(){e.$.fireEvent("addNewItem")})),e.$.templateContainer.firstElementChild.appendChild(t),e._addNewItemButton=t}_setIndentation(){const e=this,t=e._items.slice(0);if(e._addNewItemButton&&t.push(e._addNewItemButton),0===t.length)return;let i=t[0].offsetTop,a=0;if(t.forEach((function(e){e.style.marginLeft=e.style.marginRight=null})),!e._minimized)for(let n=1;n<t.length;n++){const r=t[n],s=t[n].offsetTop;s>i&&(i=s,a++,r.style["margin"+(e.rightToLeft?"Right":"Left")]=10*a+"px")}}_applyTemplate(){const e=this,t=e.itemTemplate;if(null===t)return;let i;if(i=t instanceof HTMLTemplateElement?t:document.getElementById(t),null!==i&&i instanceof HTMLTemplateElement){const t=document.importNode(i.content,!0),a=document.createElement("div");a.appendChild(t);const n=a.innerHTML;for(let t=0;t<e._items.length;t++){const i=e.dataSource,a=i[t].label,r=i[t].value;e._items[t].firstElementChild.innerHTML=n.replace(/{{label}}/g,a).replace(/{{value}}/g,r)}}}});
@@ -0,0 +1,6 @@
1
+
2
+ /* Smart UI v15.0.11 (2023-02-01)
3
+ Copyright (c) 2011-2023 jQWidgets.
4
+ License: https://htmlelements.com/license/ */ //
5
+
6
+ Smart("smart-button",class extends Smart.ContentElement{static get properties(){return{value:{type:"string"},name:{type:"string"},type:{value:"button",type:"string"},clickMode:{allowedValues:["hover","press","release","pressAndRelease"],type:"string",value:"release"}}}static get styleUrls(){return["smart.button.css"]}template(){return"<button class=\"smart-button smart-unselectable\" inner-h-t-m-l='[[innerHTML]]' id='button' type='[[type]]' name='[[name]]' value='[[value]]' disabled='[[disabled]]' role=\"presentation\"></button>"}refresh(){}static get listeners(){return{"button.down":"_downHandler","button.mouseenter":"_mouseEnterHandler","button.mouseleave":"_mouseLeaveHandler","button.touchend":"_touchEndHandler","button.click":"_clickHandler","button.up":"_upHandler",up:"_upHandler","button.focus":"_focusHandler","button.blur":"_blurHandler"}}focus(){const e=this;e.$.button?e.$.button.focus():HTMLElement.prototype.focus.call(e)}blur(){const e=this;e.$.button?e.$.button.blur():HTMLElement.prototype.blur.call(e)}_upHandler(e){const t=this;if(e.stopPropagation(),t.$.setAttributeValue("active",!1),t.dataset.target){const n=document.querySelector(t.dataset.target);let a=t.dataset.toggle;const r="smart-window".toLowerCase();if(n&&n.nodeName.toLowerCase()===r&&"modal"===a&&(a="openModal"),"tab"===a||"pill"===a||"list"===a){const e=this.closest(".nav, .list-group"),a='[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',r=!e||"UL"!==e.nodeName&&"OL"!==e.nodeName?e.children(".active"):e.querySelectorAll("li > .active");if(e){const n=e.querySelectorAll(a);for(let e=0;e<n.length;e++)n[e].classList.remove("primary");for(let e=0;e<r.length;e++)r[e].classList.remove("active");let i=t.parentNode;for(;i;){if("LI"===i.nodeName){i.classList.add("active");break}i=i.parentNode}t.classList.add("primary")}return n.parentNode.querySelectorAll(".active").forEach((e=>{e.classList.remove("active"),e.classList.add("smart-hidden")})),n.classList.add("active"),void n.classList.remove("smart-hidden")}a&&n&&!n[a]&&"collapse"===a&&(setTimeout((()=>{n.classList.contains("smart-hidden")?n.classList.remove("smart-hidden"):n.classList.add("smart-hidden")})),e.originalEvent.preventDefault()),a&&n&&!n[a]&&"dropdown"===a?(setTimeout((()=>{n.opened=!n.opened})),e.originalEvent.preventDefault()):a&&n&&n[a]&&(setTimeout((()=>{n[a]()}),50),e.originalEvent.preventDefault())}}_focusHandler(){this.$.setAttributeValue("focus",!0),this.$.fireEvent("focus")}_blurHandler(){this.$.setAttributeValue("focus",!1),this.$.fireEvent("blur")}_clickHandler(e){const t=this;("release"!==t.clickMode&&"pressAndRelease"!==t.clickMode||t.readonly)&&(e.preventDefault(),e.stopPropagation())}_downHandler(e){const t=this;if(!(t.disabled||(t.hasRippleAnimation&&Smart.Utilities.Animation.Ripple.animate(t,e.pageX,e.pageY),t.$.setAttributeValue("active",!0),"press"!==t.clickMode&&"pressAndRelease"!==t.clickMode||t.readonly))){if(t.hasAttribute("smart-blazor"))return void t.$.dispatchEvent(new Event("click"));const n="buttons"in e?e.buttons:e.which;t.$.fireEvent("click",{buttons:n,clientX:e.clientX,clientY:e.clientY,pageX:e.pageX,pageY:e.pageY,screenX:e.screenX,screenY:e.screenY})}}_mouseEnterHandler(e){const t=this;if(!t.readonly&&(t.$button.setAttributeValue("hover",!0),t.$.setAttributeValue("hover",!0),"hover"===t.clickMode)){const n="buttons"in e?e.buttons:e.which;if(t.hasAttribute("smart-blazor"))return void t.$.dispatchEvent(new Event("click"));t.$.fireEvent("click",{buttons:n,clientX:e.clientX,clientY:e.clientY,pageX:e.pageX,pageY:e.pageY,screenX:e.screenX,screenY:e.screenY})}}_touchEndHandler(){const e=this;setTimeout((function(){e.$button.setAttributeValue("hover",!1),e.$.setAttributeValue("hover",!1)}),300)}_mouseLeaveHandler(){this.$button.setAttributeValue("hover",!1),this.$.setAttributeValue("hover",!1)}propertyChangedHandler(e,t,n){super.propertyChangedHandler(e,t,n);const a=this;"disabled"===e?(a._setFocusable(),a.$button&&a.$button.setAttributeValue("hover",!1),a.$.setAttributeValue("hover",!1),a instanceof Smart.RepeatButton&&a._stopRepeat()):"unfocusable"===e&&a._setFocusable()}_setFocusable(){const e=this,t=e.$.button?e.$.button:e;if(e.disabled||e.unfocusable)return t.removeAttribute("tabindex"),void(t.tabIndex=-1);t.tabIndex=e.tabIndex>0?e.tabIndex:0}ready(){const e=this;super.ready(),e.setAttribute("role","button"),e._setFocusable(),e.enableShadowDOM&&e.$.hiddenInput&&e.appendChild(e.$.hiddenInput)}}),Smart("smart-repeat-button",class extends Smart.Button{static get properties(){return{delay:{value:50,type:"number"},initialDelay:{value:150,type:"number"}}}static get listeners(){return{"button.down":"_startRepeat","button.mouseenter":"_overriddenHandler","button.mouseleave":"_overriddenHandler","button.pointerenter":"_updateInBoundsFlag","button.pointerleave":"_updateInBoundsFlag","button.touchmove":"_touchmoveHandler","document.up":"_stopRepeat"}}_clickHandler(e){const t=this;("release"!==t.clickMode||t.preventDefaultClick||t.readonly||t.disabled)&&(e.preventDefault(),e.stopPropagation(),t.preventDefaultClick=!1)}_updateInBoundsFlag(e){const t=this;-1!==e.type.indexOf("leave")?(t._isPointerInBounds=!1,t.$button.setAttributeValue("hover",!1),t.$.setAttributeValue("hover",!1)):(t._isPointerInBounds=!0,t.$button.setAttributeValue("hover",!0),t.$.setAttributeValue("hover",!0)),1!==("buttons"in e?e.buttons:e.which)&&t._stopRepeat(e)}_startRepeat(e){const t=this;t.setAttribute("active",""),t._initialTimer||t.readonly||(t._initialTimer=setTimeout((function(){t._repeatTimer=setInterval((()=>{if(t._isPointerInBounds){if(t.hasAttribute("smart-blazor"))return t.$.dispatchEvent(new Event("click")),void(t.preventDefaultClick=!0);const n="buttons"in e?e.buttons:e.which;t.$.fireEvent("click",{buttons:n,clientX:e.clientX,clientY:e.clientY,pageX:e.pageX,pageY:e.pageY,screenX:e.screenX,screenY:e.screenY}),t.preventDefaultClick=!0}}),t.delay)}),t.initialDelay))}_stopRepeat(e){const t=this;t.readonly||e&&("pointercancel"===e.type||e.originalEvent&&"pointercancel"===e.originalEvent.type)||(t.$.setAttributeValue("active",!1),t._repeatTimer&&(clearInterval(t._repeatTimer),t._repeatTimer=null),t._initialTimer&&(clearTimeout(t._initialTimer),t._initialTimer=null))}_touchmoveHandler(e){this.preventDefaultClick&&e.cancelable&&(e.preventDefault(),e.stopPropagation())}_overriddenHandler(){}}),Smart("smart-toggle-button",class extends Smart.Button{static get properties(){return{checked:{value:!1,type:"boolean?"},falseContent:{value:"",reflectToAttribute:!1,type:"string"},indeterminateContent:{value:"",reflectToAttribute:!1,type:"string"},indeterminate:{value:!1,type:"boolean"},trueContent:{value:"",reflectToAttribute:!1,type:"string"},indeterminateTemplate:{value:null,type:"any"},trueTemplate:{value:null,type:"any"},falseTemplate:{value:null,type:"any"},type:{value:"toggle",type:"string",defaultReflectToAttribute:!0,readonly:!0}}}static get listeners(){return{keydown:"_keyHandler",keyup:"_keyHandler",dragstart:"_dragStartHandler","button.click":"_buttonClickHandler","button.mouseenter":"_buttonMouseEnterHandler","button.mouseleave":"_buttonMouseLeaveHandler","document.up":"_documentUpHandler"}}ready(){super.ready(),this._setAriaState(),this._updateGroupValue()}_setAriaState(){const e=this,t=e.checked;null!==t?e.setAttribute("aria-pressed",t):e.setAttribute("aria-pressed","mixed")}_buttonClickHandler(){}_buttonMouseLeaveHandler(){this.removeAttribute("hover")}_buttonMouseEnterHandler(){const e=this;e.setAttribute("hover",""),e.disabled||e.readonly||"hover"!==e.clickMode||(e._changeCheckState("pointer"),e.focus(),e._updateHidenInputNameAndValue())}_documentUpHandler(e){const t=this;t._pressed&&(t._pressed=!1,t.disabled||t.readonly||"press"===t.clickMode||"pointercancel"===e.originalEvent.type||(t._changeCheckState("pointer"),t.focus(),t._updateHidenInputNameAndValue()))}_downHandler(e){const t=this;t.disabled||t.readonly||(t.hasRippleAnimation&&Smart.Utilities.Animation.Ripple.animate(t,e.pageX,e.pageY),t._pressed=!0,"press"!==t.clickMode&&"pressAndRelease"!==t.clickMode||(t._changeCheckState("pointer"),t.hasAttribute("smart-blazor")?t.$.dispatchEvent(new Event("click")):t.$.fireEvent("click"),t._updateHidenInputNameAndValue()),"press"===t.clickMode&&(e.preventDefault(),e.stopPropagation()))}_dragStartHandler(e){e.preventDefault()}_keyHandler(e){const t=this;if(!0!==t.disabled&&!t.readonly&&32===e.keyCode){if("keydown"===e.type)return void e.preventDefault();if("none"===t.switchMode)return;t._changeCheckState("keyboard"),t._updateHidenInputNameAndValue()}}_updateGroupValue(){const e=this;if(e.dataset.target){const t=document.querySelector(e.dataset.target);if(t){const n=document.querySelectorAll('[data-target="'+e.dataset.target+'"]'),a=[];if(e.checked){const n=e.dataset.property,a=e.dataset.value;if(n&&void 0!==t[n]){let e=a;"true"===e&&(e=!0),"false"===e&&(e=!1),t[n]=e}}for(let t=0;t<n.length;t++){const r=n[t];r.checked&&(r.name?(a.push(r.name),e.id&&r.setAttribute("data-id",e.id)):e.id&&a.push(e.id))}t.value=a.toString(),e._targetDispatchTimer&&clearTimeout(e._targetDispatchTimer),e._targetDispatchTimer=setTimeout((()=>{t.dispatchEvent(new Event("change"))}),100)}}}_changeCheckState(e){const t=this;let n=null;null===t.checked?t.checked=!0:(n=t.checked,t.checked=!t.checked),t._handleTextSelection(),t.$.fireEvent("change",{value:t.checked,oldValue:n,changeType:e}),t.checked?t.$.fireEvent("checkValue",{changeType:e}):t.$.fireEvent("uncheckValue",{changeType:e}),t._updateGroupValue(),t._setAriaState()}_handleTextSelection(){const e=this;e.$.addClass("smart-unselectable"),e.timer&&clearTimeout(e.timer),e.timer=setTimeout((()=>e.$.removeClass("smart-unselectable")),500)}propertyChangedHandler(e,t,n){super.propertyChangedHandler(e,t,n);const a=this;if("checked"===e)return a.$.fireEvent("change",{value:n,oldValue:t,changeType:"api"}),void a._setAriaState();switch(e){case"trueTemplate":a._handleTemplate(!0);break;case"falseTemplate":a._handleTemplate(!1);break;case"indeterminateTemplate":a._handleTemplate()}}_htmlBindOnInitialization(){const e=this;e._bindContentProperty("trueContent","smart-true-content"),e._bindContentProperty("falseContent","smart-false-content"),e._bindContentProperty("indeterminateContent","smart-indeterminate-content")}_bindContentProperty(e,t){const n=this;if(!n.$[e+"Container"])return;let a=document.createElement("div");a.innerHTML=n.innerHTML;let r,i=a.getElementsByClassName(t);if(i.length>0)for(let e=0;e<i.length;e++)r=i[e];""===n[e]&&(n[e]=void 0===r?"":r.outerHTML),n.$[e+"Container"].innerHTML=n[e]}_updateContentProperties(){const e=this;function t(t){e.$[t+"Container"]&&(e[t]=e.$[t+"Container"].innerHTML)}t("trueContent"),t("falseContent"),t("indeterminateContent")}_updateHidenInputValue(){const e=this;if(!e.$.hiddenInput)return;let t;t=null===e.checked?"null":!1===e.checked?"off":e.value||"on",e.$.hiddenInput.setAttribute("value",t)}_updateHidenInputName(){const e=this;if(!e.$.hiddenInput)return;let t=!1===e.checked?"":e.name||"";e.$.hiddenInput.setAttribute("name",t)}_updateHidenInputNameAndValue(){this._updateHidenInputName(),this._updateHidenInputValue()}_handleTemplate(e,t){const n=this;let a,r,i;if(!0===e?(a=n.trueTemplate,r=n.$.trueContentContainer,i=n.trueContent):!1===e?(a=n.falseTemplate,r=n.$.falseContentContainer,i=n.falseContent):(a=n.indeterminateTemplate,r=n.$.indeterminateContentContainer,i=n.indeterminateContent),t&&(r.innerHTML=i||""),null===a||!a)return;if("function"==typeof a)return void a(r,{value:i});if(!("content"in document.createElement("template")))return void n.error(n.localize("htmlTemplateNotSuported",{elementType:n.nodeName.toLowerCase()}));if(a=document.getElementById(a),null===a||!("content"in a))return void n.error(n.localize("invalidTemplate",{elementType:n.nodeName.toLowerCase(),property:"template"}));const o=a.content,l=o.childNodes.length,s=/{{\w+}}/g;let u,d=[];for(let e=0;e<l;e++)for(u=s.exec(o.childNodes[e].innerHTML);u;)d.push({childNodeIndex:e,bindingString:u[0]}),u=s.exec(o.childNodes[e].innerHTML);const c=d.length;let p,h,m=document.importNode(a.content,!0);for(let e=0;e<c;e++){p=m.childNodes[d[e].childNodeIndex],h=d.length;for(let t=0;t<h;t++)p.innerHTML=p.innerHTML.replace(d[e].bindingString,i)}r.innerHTML="";for(let e=0;e<m.childNodes.length;e++)m.childNodes[e].outerHTML&&(r.innerHTML+=m.childNodes[e].outerHTML)}});
@@ -0,0 +1,6 @@
1
+
2
+ /* Smart UI v15.0.11 (2023-02-01)
3
+ Copyright (c) 2011-2023 jQWidgets.
4
+ License: https://htmlelements.com/license/ */ //
5
+
6
+ Smart("smart-button-group",class extends Smart.ContentElement{static get properties(){return{dataSource:{type:"any",value:[],reflectToAttribute:!1},name:{value:"",type:"string"},selectionMode:{allowedValues:["none","one","zeroOrOne","zeroOrMany"],type:"string",value:"one"},selectedIndexes:{value:[],type:"array"},selectedValues:{value:[],type:"array"}}}static get styleUrls(){return["smart.buttongroup.css"]}template(){return"<div id='container' class='smart-container' role=\"presentation\">\n <div id=\"itemsContainer\" class=\"smart-button-group-items\" role=\"presentation\"></div>\n <input id='hiddenInput' type='hidden' name='[[name]]' value='[[value]]' class='smart-hidden-input'>\n </div>"}static get listeners(){return{click:"_clickHandler",keydown:"_keyDownHandler",focus:"_focusHandler",blur:"_focusHandler"}}propertyChangedHandler(e,t,r){super.propertyChangedHandler(e,t,r);const s=this;switch(e){case"dataSource":s._handleDataSource();break;case"unfocusable":s._setFocusable();break;case"selectionMode":s._handleSelection();break;case"selectedValues":case"selectedIndexes":s._handleValue(e)}}render(){const e=this;e._handleDataSource(),e.setAttribute("role","group"),e._setFocusable(),e.enableShadowDOM&&e.$.hiddenInput&&e.appendChild(e.$.hiddenInput),super.render()}select(e){const t=this;if(null==e||"none"===t.selection)return;const r=t.$.itemsContainer.children;if("number"!=typeof e){e+="";for(let s=0;s<r.length;s++){const a=r[s];a.getAttribute("value")===e&&t._selectItem(a)}}else t._selectItem(r[e])}_clickHandler(e){const t=this,r=t.shadowRoot||t.isInShadowDOM?e.composedPath()[0]:e.target;e.stopPropagation(),t._selectItem(r)}_handleDataSource(){const e=this,t=e.$.itemsContainer,r=e.dataSource,s=e.selectedValues,a=e.selectedIndexes;let n="function"==typeof r?e.dataSource():r;if("string"==typeof n&&(n=JSON.parse(e.dataSource)),Array.isArray(n)||(n=Array.from(n)),t.innerHTML="",!n)return void e._updateValue();const i=document.createDocumentFragment();for(let t=0;t<n.length;t++){const r=n[t];let o,l=r,c=r;"object"==typeof r&&(l=r.label+""||"",c=r.value+""||l||"",o=r.disabled);const u=document.createElement("div");u.innerHTML=`<div>${l}</div>`,u.id=e.id+"Item"+Math.floor(65536*(1+Math.random())).toString(16).substring(1),u.classList.add("smart-button-group-item"),u.setAttribute("data-label",l),u.setAttribute("value",c),u.setAttribute("role","option"),u.setAttribute("aria-label",l),s.indexOf(c)>-1||a.indexOf("value")>-1?(u.setAttribute("active",""),u.setAttribute("aria-selected",!0)):u.setAttribute("aria-selected",!1),o&&u.setAttribute("disabled",""),i.appendChild(u)}t.appendChild(i),e._handleSelection()}_handleSelection(){const e=this,t=e.$.itemsContainer,r=Array.from(t.children);if(!r.length)return;const s=e.selectionMode;switch(t.setAttribute("aria-multiselectable",!1),s){case"none":r.forEach((e=>{e.removeAttribute("active"),e.removeAttribute("focus"),e.setAttribute("aria-selected",!1)}));break;case"one":case"zeroOrOne":{const e=r.filter((e=>e.hasAttribute("active"))),t=r[0];"one"===s&&!e.length&&t&&(t.setAttribute("active",""),t.setAttribute("aria-selected",!0));for(let t=0;t<e.length;t++){const r=e[t];0!==t&&(r.removeAttribute("active"),r.removeAttribute("focus"),r.setAttribute("aria-selected",!1))}break}case"zeroOrMany":t.setAttribute("aria-multiselectable",!0)}e._updateValue()}_handleValue(e){const t=this,r=t.$.itemsContainer.children,s=t.selectionMode;let a=t.selectedValues,n=t.selectedIndexes;"selectedValues"===e?n=[]:"selectedIndexes"===e&&(a=[]);for(let e=0;e<r.length;e++){const t=r[e];"none"!==s&&(a.indexOf(t.getAttribute("value"))>-1||n.indexOf(e)>-1)?(t.setAttribute("active",""),t.setAttribute("focus",""),t.setAttribute("aria-selected",!0)):(t.removeAttribute("active"),t.removeAttribute("focus"),t.setAttribute("aria-selected",!1))}t._handleSelection()}_keyDownHandler(e){const t=this;if(t.readonly)return;const r=t.$.itemsContainer.children;let s,a;for(let e=0;e<r.length;e++){const t=r[e];t.hasAttribute("focus")&&(s=t),t.hasAttribute("active")&&(a=t)}switch(s=s||a||r[0],e.key){case"ArrowLeft":case"ArrowRight":e.preventDefault(),s="ArrowLeft"===e.key?s.previousElementSibling:s.nextElementSibling;break;case"Enter":case" ":return e.preventDefault(),void t._selectItem(s);case"Home":case"End":e.preventDefault(),s="Home"===e.key?r[0]:r[r.length-1]}if(s)for(let e=0;e<r.length;e++)r[e]===s?s.setAttribute("focus",""):r[e].removeAttribute("focus")}_focusHandler(e){const t=this.$.itemsContainer;if("focus"!==e.type||this.readonly){const e=t.children;for(let t=0;t<e.length;t++)e[t].removeAttribute("focus")}else{const e=t.querySelector(".smart-button-group-item[active]")||t.children[0];e&&e.setAttribute("focus","")}}_setFocusable(){const e=this;if(e.disabled||e.unfocusable)return e.removeAttribute("tabindex"),void(e.tabIndex=-1);e.tabIndex=e.tabIndex>0?e.tabIndex:0}_selectItem(e){if(!e||!e.closest)return;const t=this,r=t.selectionMode;if(!(e=e.closest(".smart-button-group-item"))||"none"===r)return;const s=t.$.itemsContainer.children;if("one"!==r||!e.hasAttribute("active")){if(r.toLowerCase().indexOf("one")>-1){"zeroOrOne"===r&&e.hasAttribute("active")&&(e=void 0);for(let e=0;e<s.length;e++){const t=s[e];t.removeAttribute("active"),t.removeAttribute("focus"),t.setAttribute("aria-selected",!1)}}for(let t=0;t<s.length;t++){const r=s[t];r===e?(e.hasAttribute("active")?(e.removeAttribute("active"),e.setAttribute("aria-selected",!1)):(e.setAttribute("active",""),e.setAttribute("aria-selected",!0)),e.setAttribute("focus","")):r.removeAttribute("focus")}t._updateValue()}}_updateValue(){const e=this,t=Array.from(e.$.itemsContainer.children),r=t.filter((e=>e.hasAttribute("active"))),s=r.map((e=>e.getAttribute("value"))),a=e.selectedValues;if(a.length!==s.length||a.some((e=>s.indexOf(e)<0))){const n=r.map((e=>t.indexOf(e))),i=e.selectedIndexes;e.set("selectedValues",s),e.set("selectedIndexes",n),e.$.fireEvent("change",{oldValue:a,oldIndexes:i,values:s,indexes:n})}}});
@@ -0,0 +1,6 @@
1
+
2
+ /* Smart UI v15.0.11 (2023-02-01)
3
+ Copyright (c) 2011-2023 jQWidgets.
4
+ License: https://htmlelements.com/license/ */ //
5
+
6
+ Smart("smart-calendar",class extends Smart.BaseElement{static get properties(){return{animationSettings:{value:null,type:"object"},calendarMode:{value:"default",allowedValues:["default","classic"],type:"string"},dayNameFormat:{value:"firstTwoLetters",allowedValues:["narrow","firstTwoLetters","long","short"],type:"string"},dateFormatFunction:{value:null,type:"function"},disableAutoNavigation:{value:!1,type:"boolean"},displayMode:{value:"month",allowedValues:["month","year","decade"],type:"string"},displayModeView:{value:"table",allowedValues:["table","list"],type:"string"},dropDownHeight:{value:"200",type:"string"},dropDownWidth:{value:"",type:"string"},firstDayOfWeek:{value:0,type:"number",defaultValue:0,validator:"_firstDayOfWeekValidator"},footerTemplate:{value:null,type:"any"},headerTemplate:{value:null,type:"any"},hideDayNames:{value:!1,type:"boolean"},hideOtherMonthDays:{value:!1,type:"boolean"},hideTooltipArrow:{value:!1,type:"boolean"},importantDates:{value:[],type:"array",defaultValue:[]},importantDatesTemplate:{value:null,type:"any"},max:{value:new Date(2100,0,1),type:"any",defaultValue:new Date(2100,0,1)},min:{value:new Date(1900,0,1),type:"any",defaultValue:new Date(1900,0,1)},months:{value:1,type:"number",defaultValue:1,validator:"_monthsValidator"},monthNameFormat:{value:"long",allowedValues:["narrow","firstTwoLetters","long","short","2-digit","numeric"],type:"string"},name:{value:"",type:"string"},restrictedDates:{value:[],type:"array",defaultValue:[]},scrollButtonsNavigationMode:{value:"landscape",allowedValues:["portrait","landscape"],type:"string"},scrollButtonsPosition:{value:"both",allowedValues:["near","far","both"],type:"string"},selectedDates:{value:[],reflectToAttribute:!1,type:"array"},selectionMode:{value:"default",allowedValues:["none","default","one","oneExtended","many","zeroOrMany","oneOrMany","zeroOrOne","week","range"],type:"string"},spinButtonsDelay:{value:80,type:"number"},spinButtonsInitialDelay:{value:0,type:"number"},titleTemplate:{value:null,type:"any"},tooltip:{value:!1,type:"boolean"},tooltipArrow:{value:!0,type:"boolean"},tooltipArrowDirection:{allowedValues:["bottom","top","left","right","none"],value:"bottom",type:"string"},tooltipDelay:{value:100,type:"number"},tooltipOffset:{value:[],type:"array"},tooltipPosition:{value:"auto",allowedValues:["auto","bottom","top","left","right","absolute"],type:"string"},tooltipTemplate:{value:null,type:"any"},view:{value:"portrait",allowedValues:["landscape","portrait"],type:"string"},viewSections:{value:["header"],type:"array"},weekNumbers:{value:!1,type:"boolean"},weeks:{value:6,type:"number",defaultValue:6,validator:"_weeksValidator"},yearFormat:{value:"numeric",allowedValues:["2-digit","numeric"],type:"string"}}}static get listeners(){return{"container.down":"_downHandler","document.up":"_documentUpHandler","body.move":"_moveHandler","container.wheel":"_containerWheelHandler","body.focus":"_bodyFocusStateHandler","body.blur":"_bodyBlurStateHandler","header.click":"_headerClickHandler","header.change":"_headerChangeHandler",keydown:"_keyDownHandler",keyup:"_keyUpHandler",mouseenter:"_mouseEventsHandler",mouseleave:"_mouseEventsHandler","container.mouseover":"_mouseEventsHandler","container.mouseout":"_mouseEventsHandler","container.open":"_popupEventHandler","container.close":"_popupEventHandler"}}static get methods(){return{select:"select(date=new Date(): date|string): void",clearSelection:"clearSelection(): void",today:"today(): date",navigate:"navigate(step: date|string|int): bool"}}static get styleUrls(){return["smart.calendar.css"]}template(){return'<div id="container" role="presentation">\n <div id="title" class="smart-calendar-title" role="heading" aria-level="1">\n <div id="yearContainer" class="smart-calendar-year-container" role="button"></div>\n <div id="dateContainer" class="smart-calendar-date-container smart-calendar-selected" role="button"></div>\n </div>\n <div id="calendarContainer" class="smart-calendar-container">\n <div id="header" class="smart-calendar-header">\n <smart-repeat-button prev-month class="smart-calendar-button" id="previousMonthButton" animation="[[animation]]" initial-delay="[[spinButtonsInitialDelay]]" delay="[[spinButtonsDelay]]" disabled="[[disabled]]" readonly="[[readonly]]" right-to-left="[[rightToLeft]]" aria-label="Previous month">\n <span aria-hidden="true"></span>\n </smart-repeat-button>\n <div id="dateElement" class="smart-calendar-date-element" role="presentation">\n <div id="defaultHeaderDate" role="button"></div>\n <div id="classicHeaderDate">\n <div id="monthElement" class="smart-calendar-month-element" disabled="[[disabled]]" role="presentation">\n </div>\n <input class="smart-calendar-year-element" id="yearElement" disabled="[[disabled]]" readonly="[[readonly]]" aria-label="Year" />\n <span class="smart-calendar-year-elements">\n <smart-repeat-button next-year class="smart-calendar-button" id="nextYearButton" animation="[[animation]]" initial-delay="[[spinButtonsInitialDelay]]" delay="[[spinButtonsDelay]]" disabled="[[disabled]]" readonly="[[readonly]]" right-to-left="[[rightToLeft]]" aria-label="Next year">\n <span aria-hidden="true"></span>\n </smart-repeat-button>\n <smart-repeat-button prev-year class="smart-calendar-button" id="previousYearButton" animation="[[animation]]" initial-delay="[[spinButtonsInitialDelay]]" delay="[[spinButtonsDelay]]" disabled="[[disabled]]" readonly="[[readonly]]" right-to-left="[[rightToLeft]]" aria-label="Previous year">\n <span aria-hidden="true"></span>\n </smart-repeat-button>\n </span>\n </div>\n </div>\n <smart-repeat-button next-month class="smart-calendar-button" id="nextMonthButton" animation="[[animation]]" initial-delay="[[spinButtonsInitialDelay]]" delay="[[spinButtonsDelay]]" disabled="[[disabled]]" readonly="[[readonly]]" right-to-left="[[rightToLeft]]" aria-label="Next month">\n <span aria-hidden="true"></span>\n </smart-repeat-button>\n </div>\n <div id="body" class="smart-content smart-calendar-body" role="presentation">\n <div id="monthsContainer" class="smart-calendar-months-container" role="presentation">\n <div id="month" class="smart-calendar-month" role="grid">\n <div id="monthName" class="smart-calendar-month-name"></div>\n <div id="weekTitles" class="smart-calendar-week-titles" role="row">\n <div class="smart-calendar-week-title" role="columnheader"></div>\n <div class="smart-calendar-week-title" role="columnheader"></div>\n <div class="smart-calendar-week-title" role="columnheader"></div>\n <div class="smart-calendar-week-title" role="columnheader"></div>\n <div class="smart-calendar-week-title" role="columnheader"></div>\n <div class="smart-calendar-week-title" role="columnheader"></div>\n <div class="smart-calendar-week-title" role="columnheader"></div>\n <div class="smart-calendar-week-title" role="columnheader"></div>\n </div>\n <div id="weeks" class="smart-calendar-weeks" role="rowgroup">\n <div class="smart-calendar-week" role="row">\n <div class="smart-calendar-week-number" role="rowheader"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"> </div>\n </div>\n <div class="smart-calendar-week" role="row">\n <div class="smart-calendar-week-number" role="rowheader"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"> </div>\n <div class="smart-calendar-cell" role="gridcell"> </div>\n <div class="smart-calendar-cell" role="gridcell"> </div>\n </div>\n <div class="smart-calendar-week" role="row">\n <div class="smart-calendar-week-number" role="rowheader"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"> </div>\n <div class="smart-calendar-cell" role="gridcell"> </div>\n <div class="smart-calendar-cell" role="gridcell"> </div>\n </div>\n <div class="smart-calendar-week" role="row">\n <div class="smart-calendar-week-number" role="rowheader"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"> </div>\n <div class="smart-calendar-cell" role="gridcell"> </div>\n <div class="smart-calendar-cell" role="gridcell"> </div>\n </div>\n <div class="smart-calendar-week" role="row">\n <div class="smart-calendar-week-number" role="rowheader"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"> </div>\n <div class="smart-calendar-cell" role="gridcell"> </div>\n <div class="smart-calendar-cell" role="gridcell"> </div>\n </div>\n <div class="smart-calendar-week" role="row">\n <div class="smart-calendar-week-number" role="rowheader"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"></div>\n <div class="smart-calendar-cell" role="gridcell"> </div>\n <div class="smart-calendar-cell" role="gridcell"> </div>\n <div class="smart-calendar-cell" role="gridcell"> </div>\n </div>\n </div>\n </div>\n </div>\n <div id="dateViewContainer" class="smart-calendar-date-view-container smart-hidden">\n <div class="smart-calendar-cell" role="button"></div>\n <div class="smart-calendar-cell" role="button"></div>\n <div class="smart-calendar-cell" role="button"></div>\n <div class="smart-calendar-cell" role="button"></div>\n <div class="smart-calendar-cell" role="button"></div>\n <div class="smart-calendar-cell" role="button"></div>\n <div class="smart-calendar-cell" role="button"></div>\n <div class="smart-calendar-cell" role="button"></div>\n <div class="smart-calendar-cell" role="button"></div>\n <div class="smart-calendar-cell" role="button"></div>\n <div class="smart-calendar-cell" role="button"></div>\n <div class="smart-calendar-cell" role="button"></div>\n </div>\n <div id="monthsSeparator" class="smart-calendar-month-separator"></div>\n <div id="nextMonthsContainer" class="smart-calendar-next-months-container" aria-hidden="true"></div>\n <div id="animationPanel" class="smart-calendar-animation-panel smart-hidden"></div>\n </div>\n <div id="footer" class="smart-calendar-footer smart-hidden">\n <div id="selectedDatesRange"></div>\n </div>\n <input id="hiddenInput" type="hidden" name="[[name]]">\n </div>\n </div>'}_updateTargetValue(){const e=this;if(e.dataset.target){const t=document.querySelector(e.dataset.target);if(t){const a=e.dataset.property,n=e.selectedDates.toString();a&&void 0!==t[a]&&(t[a]=n)}}}propertyChangedHandler(e,t,a){super.propertyChangedHandler(e,t,a);const n=this;switch(e){case"animationSettings":n._applyAnimationSettings();break;case"disabled":case"unfocusable":n._setFocusable();break;case"calendarMode":case"dropDownWidth":case"dropDownHeight":n.displayMode="month",n._refreshHeaderElements(),n._refreshCalendarMode(),n._setDisplayModeContent();break;case"dayNameFormat":n._refreshDayOfWeekTitles(n.$.month);break;case"dateFormatFunction":{let e=n.$.monthsContainer.children;for(let t=0;t<e.length;t++)e[t].firstElementChild.innerHTML=a?a(e[t]._date):n._monthsNames[e[t]._date.getMonth()]+" "+e[t]._date.toLocaleDateString(n.locale,{year:n.yearFormat});n._refreshHeaderTitle();break}case"displayMode":if("classic"===n.calendarMode&&"month"!==a){n[e]="month";break}n._setDisplayMode(t,a);break;case"displayModeView":n._applyAnimationSettings(!0),"month"!==n.displayMode&&n._setDisplayModeContent();break;case"firstDayOfWeek":n._handleMonths(),n._refreshDayOfWeekTitles();break;case"hideTooltipArrow":n.$.tooltip&&(n.$.tooltip.arrow=!a);break;case"titleTemplate":case"headerTemplate":case"footerTemplate":n._handleLayoutTemplate(n.$[e.split(/[T]/)[0]],a),"titleTemplate"===e?n._refreshTitle():"headerTemplate"===e?n._refreshHeaderTitle():n._refreshFooter();break;case"importantDates":n.importantDates=n._getValidDates(a),n._refreshImportantDates();break;case"importantDatesTemplate":n._handleImportantDateTemplate(),n._refreshImportantDates();break;case"locale":n._refreshMonthNames(),n._refreshDayOfWeekTitles(),n._refreshHeaderTitle(),n._refreshTitle(),n._refreshFooter(),n.displayMode&&"month"!==n.displayMode&&n._setDisplayModeContent();break;case"max":case"min":n._validateMinMax(e,a,t),n._validateSelectedDates(),n._noFocusingRequired=!1,n._refreshHeaderElements();break;case"months":n._handleMonths();break;case"monthNameFormat":n._refreshCalendarMode(),n._refreshHeaderTitle();break;case"restrictedDates":n._setRestrictedDates(n.restrictedDates=n._getValidDates(a));break;case"rightToLeft":n._refreshDayOfWeekTitles(),n._handleMonths();break;case"scrollButtonsNavigationMode":n._setScrollButtonsNavigationMode();break;case"selectedDates":if(n._clearSelection(!0),n._validateSelectedDates(n._getValidDates(a)),n._applySelectionMode(!0),n._viewDates){let e=n.selectedDates[n.selectedDates.length-1];n._isDateInView(e)?n.selectedDates.map((e=>n._selectDate(e,!0,!0))):n._handleMonths(e)}n._refreshFooter(),n._setWeeksVisibility(n.$.monthsContainer),n.$.hiddenInput.value=n.selectedDates.toString(),n.isInitialized&&(n.$.fireEvent("change",{value:n.selectedDates}),n._updateTargetValue()),n._refreshTitle(),"month"!==n.displayMode&&n._setDisplayModeContent();break;case"selectionMode":n._applySelectionMode(!1,t),n._refreshTitle();break;case"tooltip":n._handleTooltip();break;case"tooltipArrow":case"tooltipArrowDirection":case"tooltipDelay":case"tooltipOffset":case"tooltipPosition":case"tooltipTemplate":if(n.$.tooltip){const t=e.replace("tooltip","");n.$.tooltip[t.charAt(0).toLowerCase()+t.slice(1)]=a}break;case"view":n._refreshTitle();break;case"viewSections":a.indexOf("title")>-1?n.$title.removeClass("smart-hidden"):n.$title.addClass("smart-hidden"),n._refreshTitle(),a.indexOf("header")>-1?n.$header.removeClass("smart-hidden"):n.$header.addClass("smart-hidden"),n._refreshHeaderTitle(),a.indexOf("footer")>-1?n.$footer.removeClass("smart-hidden"):n.$footer.addClass("smart-hidden"),n._refreshFooter(),n._setFocusable();break;case"weeks":n._setWeeksVisibility(n.$.monthsContainer);break;case"yearFormat":if(n._refreshCalendarMode(),n._refreshFooter(),n.months>1&&"month"===n.displayMode){let e=n._animationStarted?n.$.nextMonthsContainer.children:n.$.monthsContainer.children;for(let t=0;t<e.length;t++)e[t].firstElementChild.innerHTML=n.dateFormatFunction?n.dateFormatFunction(e[t]._date):n._monthsNames[e[t]._date.getMonth()]+" "+e[t]._date.toLocaleDateString(n.locale,{year:a})}n._refreshTitle(),n._refreshHeaderTitle()}}ready(){super.ready();const e=this;e._keysPressed={},e._applyAnimationSettings(),e.importantDates=e._getValidDates(e.importantDates),e.restrictedDates=e._getValidDates(e.restrictedDates)}render(){const e=this;e.setAttribute("role","dialog"),e._refreshMonthNames(),e._validateMinMax(),e._validateSelectedDates(e._getValidDates(e.selectedDates)),e._handleLayoutTemplate(e.$.title,e.titleTemplate),e._handleLayoutTemplate(e.$.header,e.headerTemplate),e._handleLayoutTemplate(e.$.footer,e.footerTemplate),e._handleImportantDateTemplate(),e._setFocusable(),e._refreshDayOfWeekTitles(),e._applySelectionMode(!0),e._handleMonths(0===e.selectedDates.length?new Date((new Date).setHours(0,0,0,0)):e.selectedDates[e.selectedDates.length-1]),e._handleTooltip(),e._updateViewSectionsVisibility(),e._setScrollButtonsNavigationMode(),e._refreshCalendarMode(),e._setDisplayMode(),e._refreshTitle(),e._refreshFooter(),e._refreshImportantDates(),e.$.monthElement&&e.$.monthElement._setDropDownSize&&e.$.monthElement._setDropDownSize(),e._changeEventFired=0,e.$.hiddenInput.value=e.selectedDates.toString(),e.shadowRoot&&e.appendChild(e.$.hiddenInput),e.isInitialized=!0,super.render()}refresh(){this.isInitialized&&this.render()}_updateViewSectionsVisibility(){const e=this;e.viewSections.indexOf("title")>-1?e.$title.removeClass("smart-hidden"):e.$title.addClass("smart-hidden"),e.viewSections.indexOf("header")>-1?e.$header.removeClass("smart-hidden"):e.$header.addClass("smart-hidden"),e.viewSections.indexOf("footer")>-1?e.$footer.removeClass("smart-hidden"):e.$footer.addClass("smart-hidden")}clearSelection(){this._clearSelection()}_setFocusable(){const e=this;let t=e.tabIndex>0?e.tabIndex:0;function a(e,a){if(a)return e&&e instanceof a?("function"==typeof e._setFocusable&&e.isCompleted?e.unfocusable=t<=-1:e.setAttribute("tabindex",t),e):e||void 0}(e.disabled||e.unfocusable)&&(t=-1),e.$.previousMonthButton=a(e.$.previousMonthButton,Smart.Button),e.$.nextMonthButton=a(e.$.nextMonthButton,Smart.Button),e.$.nextYearButton=a(e.$.nextYearButton,Smart.Button),e.$.previousYearButton=a(e.$.previousYearButton,Smart.Button),e.$.monthElement=a(e.$.monthElement,Smart.Input),e.$.yearElement=a(e.$.yearElement,HTMLInputElement),e.viewSections.indexOf("title")>-1&&(e.$.dateContainer.setAttribute("tabindex",t),e.$.yearContainer.setAttribute("tabindex",t)),e.$.body.setAttribute("tabindex",t),"default"===e.calendarMode?e.$.dateElement.setAttribute("tabindex",t):e.$.dateElement.removeAttribute("tabindex"),e.unfocusable?e.removeAttribute("tabindex"):e.tabIndex=e.readonly&&!e.disabled?e.tabIndex>0?e.tabIndex:0:t}static get requires(){return{"Smart.DropDownList":"smart.dropdownlist.js","Smart.ListBox":"smart.listbox.js","Smart.RepeatButton":"smart.button.js","Smart.Tooltip":"smart.tooltip.js"}}navigate(e){const t=this;let a,n,l;if(e){if("number"==typeof e){if(e=parseInt(e),isNaN(e)||0===e)return!1;if(6!==t.weeks&&0!==t.weeks&&"month"===t.displayMode){let l,i;t._focusedCell||t._focusCell();const s=[].slice.call(t._focusedCell.closest(".smart-calendar-weeks").children).filter((e=>!e.classList.contains("smart-hidden")));e<0?(i=s[0].querySelectorAll(".smart-calendar-cell"),l=t.rightToLeft?i[i.length-1]:i[0]):(i=s[s.length-1].querySelectorAll(".smart-calendar-cell"),l=t.rightToLeft?i[0]:i[i.length-1]),n=new Date(l.value),n.setDate(n.getDate()+e),a=n}else a=t._getNextDate(e)}else{if(a=e=t._getValidDate(e),l=!0,isNaN(a.getTime()))return!1;const i=t._viewDates[0];if(i&&a.getMonth()===i.getMonth()&&a.getFullYear()===i.getFullYear())return!1;6!==t.weeks&&0!==t.weeks&&"month"===t.displayMode&&(n=a)}return!(!a||t.$.fireEvent("navigationChanging",{value:new Date(a),type:t.displayMode}).defaultPrevented||("month"!==t.displayMode?(!l&&t.hasAnimation?(t.$nextMonthsContainer.addClass("smart-calendar-date-view-container"),"list"===t.displayModeView?t._setDisplayModeContent(a):t._navigationDate&&t._navigationDate.getTime()===a.getTime()||t._animateNavigation(a,e)):t._setDisplayModeContent(a),t.$.fireEvent("navigationChange",{value:new Date(a),type:t.displayMode}),0):(t.hasAnimation?(t._animateNavigation(a,e),t.$nextMonthsContainer.hasClass("smart-date-view-container")&&t.$nextMonthsContainer.removeClass("smart-date-view-container")):(t._handleMonths(a),t._refreshHeaderElements(),t._refreshHeaderTitle()),n&&(t._focusCell(t._getCellByDate(n,t._animationStarted?t.$.nextMonthsContainer:void 0),!0),t._updateWeeksVisibility(e)),t.$.fireEvent("navigationChange",{value:new Date(a),type:t.displayMode}),0)))}}set value(e){this._select(e)}get value(){return this.selectedDates&&this.selectedDates.length>0?this.selectedDates[0]:null}select(e){this._select(e)}_select(e){const t=this;t._viewDates&&void 0!==t._viewDates[0]&&"none"!==t.selectionMode&&e&&(e=t._getValidDate(e))instanceof Date&&("one"===t.selectionMode&&t.selectedDates.map(Number).indexOf(e.getTime())>-1||e.getTime()<t.min.getTime()||e.getTime()>t.max.getTime()||("one"!==t.selectionMode&&"default"!==t.selectionMode&&"zeroOrOne"!==t.selectionMode||t._clearSelection(!0),t._selectDate(e),1!==t.selectedDates.length||t._isDateInView(t.selectedDates[0])||t._handleMonths(t.selectedDates[0])))}today(){const e=this;let t=new Date;return t.setHours(0,0,0,0),t.getTime()<e.min.getTime()||t.getTime()>e.max.getTime()?t=new Date(e.max):e._selectDate(t),e._handleMonths(t),t}_animateNavigation(e,t,a){const n=this;n._navigationDate=e,n._animationSettings||n._applyAnimationSettings(),n.$animationPanel.addClass("smart-hidden"),n.$.dateViewContainer.style.transform="",n.$.dateViewContainer.style.opacity="",n.$.monthsContainer.style.transform="",n.$.monthsContainer.style.opacity="";const l="month"!==n.displayMode?n.$.dateViewContainer:n.$.monthsContainer,i=n.$.body[n._animationSettings.scrollMax]-n.$.body[n._animationSettings.size];n._scrollStep=n.$.body[n._animationSettings.size]*n._animationSettings.startSpeed,n._animationStarted&&n._getMonthCells(n.$.monthsContainer,n.rightToLeft).map((e=>{n._setCellState(e,"restricted",!1),n._setCellState(e,"selected",!1),n._setCellState(e,"otherMonth",!1),n._setCellState(e,"focus",!1),n._setCellState(e,"important",!1),n._setCellState(e,"today",!1),n._setCellState(e,"disabled",!1),n._setCellState(e,"hover",!1)})),n._animationStarted=!0,"month"!==n.displayMode?(n._setCellState(n._focusedCell,"focus",!1),n._setDisplayModeContent(e,n.$.nextMonthsContainer)):n._handleMonths(e,n.$.nextMonthsContainer),n.rightToLeft&&(t*=-1),a||(t>0?(l.style.order=1,n.$.nextMonthsContainer.style.order=3,(!n._animationStarted||n._animationStarted&&n.$.body[n._animationSettings.scrollSize]>n.$.body[n._animationSettings.scrollMax]*n._animationSettings.resetThreshold*2)&&(n.$.body[n._animationSettings.scrollSize]=0)):(l.style.order=3,n.$.nextMonthsContainer.style.order=1,(!n._animationStarted||n._animationStarted&&n.$.body[n._animationSettings.scrollSize]<n.$.body[n._animationSettings.scrollMax]*n._animationSettings.resetThreshold)&&(n.$.body[n._animationSettings.scrollSize]=n.$.body[n._animationSettings.scrollMax]))),cancelAnimationFrame(n._animationId),n._animationId=requestAnimationFrame((function e(){let a=t>0?n.$.body[n._animationSettings.scrollSize]>=i:0===n.$.body[n._animationSettings.scrollSize],l=n._scrollStep/2;a?n._animateNavigationCompleted():(t>0&&n.$.body[n._animationSettings.scrollSize]>i*n._animationSettings.easeThreshold?(l=Math.max(n.$.body[n._animationSettings.scrollSize]/n._animationSettings.stepEaseSize,Math.abs(l-(i-n.$.body[n._animationSettings.scrollSize])*n._animationSettings.step)),n._scrollStep=n._scrollStep*n._animationSettings.step+l):t<0&&n.$.body[n._animationSettings.scrollSize]<i*n._animationSettings.easeThreshold&&(l=Math.max(n.$.body[n._animationSettings.scrollMax]/n._animationSettings.stepEaseSize,Math.abs(l-n.$.body[n._animationSettings.scrollSize]*n._animationSettings.step)),n._scrollStep=n._scrollStep*n._animationSettings.step+l),n.$.body[n._animationSettings.scrollSize]+=t>0?n._scrollStep:-n._scrollStep,n._animationId=requestAnimationFrame(e))}))}_animateNavigationCompleted(){const e=this;let t,a,n,l="month"!==e.displayMode?e.$.dateViewContainer:e.$.monthsContainer;if(cancelAnimationFrame(e._animationId),"month"!==e.displayMode){let i=[].slice.call(l.children).indexOf(e._focusedCell);l.innerHTML=e.$.nextMonthsContainer.innerHTML;let s,o=l.children[i];a=l.children,n=e.$.nextMonthsContainer.children;for(let t=0;t<a.length;t++)a[t].value=n[t].value,a[t].restricted=n[t].restricted,a[t].important=n[t].important,a[t].otherMonth=n[t].otherMonth,a[t].value.getTime()<=e.max.getTime()&&(s=a[t]);t=o&&o.value.getTime()>=e.max.getTime()?s.value:e._focusedCell?e._focusedCell.value:void 0}else{let i=l.children,s=e.$.nextMonthsContainer.children;e._focusedCell&&e.$.nextMonthsContainer.contains(e._focusedCell)&&(t=e._focusedCell.value);for(let t=0;t<i.length&&s[t]._date;t++){i[t]._date=s[t]._date,i[t].innerHTML=s[t].innerHTML,a=e._getMonthCells(i[t]),n=e._getMonthCells(s[t]);for(let e=0;e<a.length;e++)a[e].value=n[e].value,a[e].restricted=n[e].restricted,a[e].important=n[e].important,a[e].otherMonth=n[e].otherMonth,a[e].removeAttribute("focus")}e._selectedCells.length>0&&(e._selectedCells=e._selectedCells.map((t=>e._getCellByDate(t.value))).filter((e=>void 0!==e)))}e._focusCell(e._getCellByDate(t)),l.style.order=1,e.$.nextMonthsContainer.style.order=3,e.$.body[e._animationSettings.scrollSize]=0,e._animationStarted=!1,delete e._navigationDate}_applyAnimationSettings(e){const t=this;t._animationSettings=t.animationSettings?t.animationSettings:t._animationSettings||{},"portrait"===t.scrollButtonsNavigationMode?(t._animationSettings.scrollMax="scrollHeight",t._animationSettings.size="offsetHeight",t._animationSettings.scrollSize="scrollTop"):(t._animationSettings.scrollMax="scrollWidth",t._animationSettings.size="offsetWidth",t._animationSettings.scrollSize="scrollLeft"),e||(t._animationSettings.startSpeed=t._animationSettings.startSpeed?t._animationSettings.startSpeed:.2,t._animationSettings.easeThreshold=t._animationSettings.easeThreshold?t._animationSettings.easeThreshold:.5,t._animationSettings.step=t._animationSettings.step?t._animationSettings.step:.25,t._animationSettings.stepEaseSize=t._animationSettings.stepEaseSize?t._animationSettings.stepEaseSize:200,t._animationSettings.resetThreshold=t._animationSettings.resetThreshold?t._animationSettings.resetThreshold:.2)}_applySelectionMode(e,t){const a=this;let n=[],l=!!e,i=a.selectionMode;function s(e,t){const n=a.$.monthsContainer.children;for(let l=0;l<n.length;l++)a._getMonthCells(n[l]).map((n=>{a._setCellState(n,e,t)}))}switch("many"===i&&"range"===i||s("hover",!1),a._newRangeSelectionStarted=a.selectedDates.length>0&&"range"===i,-1!==["default","many","zeroOrMany","oneOrMany","week","range"].indexOf(i)?Array.from(a.getElementsByClassName("smart-calendar-month")).forEach((e=>e.setAttribute("aria-multiselectable",!0))):Array.from(a.getElementsByClassName("smart-calendar-month")).forEach((e=>e.removeAttribute("aria-multiselectable"))),"none"!==i&&"none"!==t||s("selected",!1),i){case"none":return void a._clearSelection(l);case"range":return void(a.selectedDates.length>1&&a._selectMultipleDates(a.selectedDates[0],a.selectedDates[a.selectedDates.length-1]));case"many":case"default":case"oneOrMany":if(0===a.selectedDates.length){n.push(new Date(Math.min(Math.max(a.min.getTime(),(new Date).setHours(0,0,0,0)),a.max.getTime())));break}return;case"oneExtended":case"one":if(1===a.selectedDates.length)return;a.selectedDates.length>1?(n.push(a.selectedDates[a.selectedDates.length-1]),a._clearSelection(l)):n.push(new Date(Math.min(Math.max(a.min.getTime(),(new Date).setHours(0,0,0,0)),a.max.getTime())));break;case"zeroOrOne":if(a.selectedDates.length>1){n.push(a.selectedDates[a.selectedDates.length-1]),a._clearSelection(l);break}return;case"zeroOrMany":return;case"week":if(a.selectedDates.length>=1){let e=a.selectedDates[a.selectedDates.length-1];for(let t=0;t<7;t++)n.push(new Date(e)),e.setDate(e.getDate()+1);a._clearSelection(l)}}if(a.selectedDates=[],e)return void(a.selectedDates=n);const o=n.length;for(let e=0;e<o;e++)a._selectDate(n[e],e<o-1)}_clearSelection(e){const t=this,a=t.selectedDates.slice(0),n=t.selectionMode;if(t.isRendered){if(t._selectedCells&&t._selectedCells.map((e=>{t._setCellState(e,"selected",!1)})),t.selectedDates=[],t._selectedCells=[],"many"===n||"range"===n){const e=t.$.monthsContainer.children;for(let a=0;a<e.length;a++)t._getMonthCells(e[a]).map((e=>{t._setCellState(e,"hover",!1)}))}t.$.footer&&t._refreshFooter(),t.$.hiddenInput.value=t.selectedDates.toString(),!e&&t.isInitialized&&a.length&&(t.$.fireEvent("change",{value:[]}),t._updateTargetValue()),t.$.title&&t._refreshTitle()}else t.set("selectedDates",[])}_bodyBlurStateHandler(e){this._bodyStateHandler(e),this.$.fireEvent("blur")}_bodyFocusStateHandler(e){this._bodyStateHandler(e),this.$.fireEvent("focus")}_bodyStateHandler(e){const t=this;if(t._focusedCell){if("blur"===e.type||"focus"===e.type&&t._noFocusingRequired)return t._noFocusingRequired=!1,void t._setCellState(t._focusedCell,"focus",!1);if("month"!==t.displayMode)return void("focus"!==e.type||t.$.dateViewContainer.querySelector("smart-calendar-cell[focus]")||t._setCellState(t._focusedCell||t.$.dateViewContainer.querySelector(".smart-calendar-cell"),"focus",!0))}"focus"===e.type&&t._focusCell()}_containerWheelHandler(e){const t=this;if(t.disabled||t.readonly||"month"!==t.displayMode&&"list"===t.displayModeView)return;let a,n;n=document.activeElement,t.shadowRoot?n=t.shadowRoot.activeElement:t.isInShadowDOM&&(n=t.getRootNode().activeElement),t.$.yearElement===n&&(a=12),(n&&t.shadowRoot||n.closest("smart-calendar")===t)&&(a=e.target===t.$.yearElement?12:1),a&&(e.preventDefault(),a=12===a?a:a*t.months,e.deltaY>0?t.navigate(-a):t.navigate(a))}_downHandler(e){const t=this;let a=e.originalEvent.target;if(t._dragStartDetails=void 0,t.disabled||t.readonly)return;if(t.hasRippleAnimation&&(a.value instanceof Date||a.parentElement&&a.parentElement.classList.contains("smart-calendar-title")||a.parentElement===t.$.dateElement)&&Smart.Utilities.Animation.Ripple.animate(a,e.pageX,e.pageY),a=e.originalEvent.target.closest(".smart-calendar-header"),e.originalEvent.target.closest(".smart-calendar-year-container")&&"decade"!==t.displayMode){if("classic"===t.calendarMode)return;return void t._showDateView("year")}if(e.originalEvent.target.closest(".smart-calendar-date-container")&&"month"!==t.displayMode){if("classic"===t.calendarMode)return;return void t._displayModeHandler("list"===t.displayModeView?t.$.listViewContainer.querySelector("li.active"):t._focusedCell,"month")}if(t._animationStarted&&t._animateNavigationCompleted(),Smart.Utilities.Core.isMobile&&e.originalEvent.target.closest(".smart-calendar-body")===t.$.body)return void(t._dragStartDetails={x:e.pageX,y:e.pageY,startTime:Date.now(),target:e.originalEvent.target});if(a=e.originalEvent.target,a.closest(".smart-calendar-week")||a.parentElement===t.$.dateViewContainer){for(;a&&!(a.value instanceof Date);)a=a.parentElement;return void(a&&("month"!==t.displayMode?t._displayModeHandler(a):t._weeksDownHandler(e,a)))}if(a.closest(".smart-calendar-month-element"))return;if(e.originalEvent.stopPropagation(),"list"===t.displayModeView&&"month"!==t.displayMode)return a=(t.shadowRoot||t.isInShadowDOM?e.originalEvent.composedPath()[0]:e.originalEvent.target).closest("smart-list-item"),void(a&&t._displayModeHandler(a));const n=document.scrollingElement||document.documentElement,l=n.scrollLeft,i=n.scrollTop;t.unfocusable||t.focus(),window.scrollTo(l,i)}_displayModeHandler(e,t){const a=this;if(a._animationStarted&&a._animateNavigationCompleted(),e instanceof HTMLElement&&e.closest(".smart-calendar-week")&&e.otherMonth){if("decade"===a.displayMode&&(e.value.getFullYear()<a.min.getFullYear()||e.value.getFullYear()>a.max.getFullYear()))return;if("year"===a.displayMode&&(e.value.getFullYear()<a.min.getFullYear()||e.value.getFullYear()===a.min.getFullYear()&&e.value.getMonth()<a.min.getMonth()||e.value.getFullYear()>a.max.getFullYear()||e.value.getFullYear()===a.max.getFullYear()&&e.value.getMonth()>a.max.getMonth()))return}switch(t=t||a.displayMode){case"year":t="month";break;case"decade":t="year"}if(a.displayMode===t)return;const n=a.$.listViewContainer,l=n&&n.contains(e);a.$.fireEvent("displayModeChanging",{oldDisplayMode:a.displayMode,newDisplayMode:t}).defaultPrevented||(a.set("displayMode",t),a.$nextMonthsContainer.removeClass("smart-calendar-date-view-container"),e.parentElement!==a.$.dateViewContainer||e.disabled||e.restricted||a._focusCell(e),a.hasAnimation?(l&&e instanceof HTMLLIElement?e.offsetHeight?a.$.animationPanel.style.transformOrigin=e.offsetWidth/2+"px "+(e.offsetTop+e.offsetHeight/2)+"px":a.$.animationPanel.style.transformOrigin=n.offsetLeft+n.offsetWidth/2+"px "+(n.offsetTop+n.offsetHeight/2)+"px":(a.$.dateViewContainer.style.order=1,a.$.nextMonthsContainer.style.order=3,e=a._focusedCell,a.$.animationPanel.style.transformOrigin=e.offsetLeft+e.offsetWidth/2+"px "+(e.offsetTop+e.offsetHeight/2)+"px"),a._animateView(1,e)):a._setDisplayModeContent(e.value instanceof Date?e.value:new Date(e.getAttribute("value")||e.value)))}_animateView(e,t){const a=this;let n,l,i=t instanceof Date?t:new Date(t.getAttribute("value")||t.value),s=!1,o=1,r=1;const d=a.$.listViewContainer;"list"===a.displayModeView?n=d.contains(t)?d:l="month"!==a.displayMode?a.$.monthsContainer:d:t.value instanceof Date||(t=a._focusedCell?a._focusedCell:a._selectedCells.length>0?a._selectedCells[a._selectedCells.length-1]:a._getCellByDate(new Date)),n||(n=t.parentElement===a.$.dateViewContainer?a.$.dateViewContainer:a.$.monthsContainer),l||(l="month"===a.displayMode?a.$.monthsContainer:"list"===a.displayModeView?d:a.$.dateViewContainer),l.style.transformOrigin=a.$.animationPanel.style.transformOrigin,n===d?(a.$.animationPanel.innerHTML="",a.$.animationPanel.appendChild(n.cloneNode(!0))):a.$.animationPanel.innerHTML=n.innerHTML,a._setDisplayModeContent(i),n.style.order=1,a.$.nextMonthsContainer.style.order=3,a.$.body[a._animationSettings.scrollSize]=0,a.$.animationPanel.style.width=a.$.body.offsetWidth+"px",a.$.animationPanel.style.height=a.$.body.offsetHeight+"px",a.$.animationPanel.style.transform="scale(1)",a.$.animationPanel.style.opacity=1,a.$animationPanel.removeClass("smart-hidden"),l.style.opacity="0",l.style.transform="scale(3.5)",n.$.hasClass("smart-calendar-date-view-container")?a.$animationPanel.addClass("smart-calendar-date-view-container"):a.$animationPanel.removeClass("smart-calendar-date-view-container"),cancelAnimationFrame(a._animationId),a._animationId=requestAnimationFrame((function t(){if((e>0&&o>=3.5||e<0&&o<=0)&&(s=!0),s){if(cancelAnimationFrame(a._animationId),a.$animationPanel.addClass("smart-hidden"),a.$.animationPanel.style.transform="",a.$.animationPanel.style.opacity="",n.style.order=1,a.$.nextMonthsContainer.style.order=3,a.$.body[a._animationSettings.scrollSize]=0,l.style.transform="",l.style.opacity="",a.unfocusable)return;"month"===a.displayMode?a.$.body.focus():"list"===a.displayModeView&&a.focus()}else a.$.animationPanel.style.opacity=r,l.style.opacity=1-r,r-=.05,e>0?(a.$.animationPanel.style.transform="scale("+o+")",l.style.transform="scale("+Math.min((o-1)/2,1)+")",o+=.125):(a.$.animationPanel.style.transform="scale("+Math.max(o,0)+")",l.style.transform="scale("+Math.max(1+o,1)+")",o-=.06),a._animationId=requestAnimationFrame(t)}))}_documentUpHandler(e){const t=this;let a=e.originalEvent.target;if((t.isInShadowDOM||t.shadowRoot&&a===t)&&(a=e.originalEvent.composedPath()[0]),t._newRangeSelectionStarted&&!t.$.container.contains(a)&&delete t._newRangeSelectionStarted,a&&a.classList&&a.classList.contains("smart-calendar-cell")&&(e.originalEvent.stopPropagation(),e.originalEvent.preventDefault(),e.preventDefault()),!Smart.Utilities.Core.isMobile||!t._dragStartDetails||e.originalEvent.target.closest(".smart-calendar-list-view"))return;delete t._previousIteration;const n=Date.now();let l={};(t.isInShadowDOM||t.shadowRoot&&a===t)&&(a=e.originalEvent.composedPath()[0]),"portrait"===t.scrollButtonsNavigationMode?(l.coordinate="y",l.direction="pageY"):(l.coordinate="x",l.direction="pageX");const i=t._dragStartDetails.step*(t.rightToLeft?-1:1);if(Math.abs(t._dragStartDetails[l.coordinate]-e[l.direction])<=10){if(a="list"===t.displayModeView&&"month"!==t.displayMode?a.closest("smart-list-item"):a,!a)return void(t._dragStartDetails=void 0);if("month"!==t.displayMode)return t._displayModeHandler(a),"portrait"===t.scrollButtonsNavigationMode?t.$.body.scrollTop=0:t.$.body.scrollLeft=0,void(t._dragStartDetails=void 0);if(t._weeksDownHandler(e,a),!t.disableAutoNavigation&&a.otherMonth)return}else{const a=Math.abs((e[l.direction]-t._dragStartDetails[l.coordinate])/(n-t._dragStartDetails.startTime));if(a>1){const e=parseInt(a);for(let a=0;a<e;a++)if(!t.navigate(i)){t._cancelAnimation();break}return void(t._dragStartDetails=void 0)}}if(!t.hasAnimation)return t.navigate(t._dragStartDetails.step),void(t._dragStartDetails=void 0);let s=("month"!==t.displayMode?t.$.dateViewContainer[t._animationSettings.scrollMax]:t.$.monthsContainer[t._animationSettings.scrollMax])+t.$.monthsSeparator[t._animationSettings.size];if(t._dragStartDetails.step>0&&t.$.body[t._animationSettings.scrollSize]>s*t._animationSettings.easeThreshold||t._dragStartDetails.step<0&&t.$.body[t._animationSettings.scrollSize]<s*t._animationSettings.easeThreshold)return t._animateNavigation(t._dragStartDetails.navigationDate,i,!0),6!==t.weeks&&0!==t.weeks&&"month"===t.displayMode&&t._updateWeeksVisibility(i,t._getCellByDate(t._dragStartDetails.navigationDate,t.$.nextMonthsContainer)),t.$.fireEvent("navigationChange",{value:new Date(t._dragStartDetails.navigationDate),type:t.displayMode}),void(t._dragStartDetails=void 0);t._cancelAnimation(),t._dragStartDetails=void 0}_cancelAnimation(){const e=this,t="month"!==e.displayMode?e.$.dateViewContainer:e.$.monthsContainer;let a=e.$.animationPanel.style.transform,n=e.$.animationPanel.style.opacity;a&&(a=parseFloat(a.substring(a.indexOf("(")+1||0,a.indexOf(")")))),t.style.order=1,e.$.nextMonthsContainer.style.order=3,e.$.body[e._animationSettings.scrollSize]=0,e._animationId=requestAnimationFrame((function t(){if(!a||a>=3.5){cancelAnimationFrame(e._animationId),e.$animationPanel.addClass("smart-hidden"),e.$.animationPanel.style.transform="",e.$.animationPanel.style.opacity="";const t="month"===e.displayMode?e.$.monthsContainer:e.$.listViewContainer;return t.style.transform="",t.style.opacity="",e.unfocusable||("month"===e.displayMode?e.$.body.focus():"list"===e.displayModeView&&e.focus()),void(e._animationStarted=!1)}e.$.animationPanel.style.opacity=n-=.25,e.$.animationPanel.style.transform="scale("+(a+=.5)+")",e._animationId=requestAnimationFrame(t)}))}_focusCell(e,t){const a=this;if(a._focusedCell&&a._setCellState(a._focusedCell,"focus",!1),a.disabled||a.readonly)return;if(e){if("month"!==a.displayMode)return a._setCellState(e,"focus",!0),void(a._focusedCell=e);if(e.disabled||e.restricted)return;return t||a._setCellState(e,"focus",!0),void(a._focusedCell=e)}if("month"!==a.displayMode&&0===a.$.monthsContainer.offsetHeight)return;const n=a._selectedCells[a._selectedCells.length-1];if(n&&n.offsetHeight)a._setCellState(n,"focus",!0),a._focusedCell=n;else{const e=a.$.monthsContainer.children;if(!e[0]._date||a.min.getTime<e[0]._date.getTime())return;const t=a._getMonthCells(e[0],a.rightToLeft);for(let e=0;e<t.length;e++){const n=t[e];if(!n.otherMonth){if(n.disabled||n.restricted||!n.offsetHeight)continue;a._focusedCell=n;break}}}a._focusedCell&&a._setCellState(a._focusedCell,"focus",!0)}_getDays(e,t){const a=t.length;let n=[];if(a>0)for(let l=0;l<a;l++)t[l].getFullYear()===e.getFullYear()&&t[l].getMonth()===e.getMonth()&&n.push(t[l].getDate());return n}_getCellByDate(e,t){const a=this;if(!(e instanceof Date))return;if(t||(t=a.$.monthsContainer),"month"!==a.displayMode){if("list"===a.displayModeView)return;let t=arguments[1]?a.$.nextMonthsContainer.children:a.$.dateViewContainer.children;for(let n=0;n<t.length;n++)if("year"!==a.displayMode){if(t[n].value.getFullYear()===e.getFullYear())return t[n]}else if(t[n].value.getMonth()===e.getMonth())return t[n];return}let n,l,i=t.children;for(let t=0;t<i.length;t++)if(e.getFullYear()===i[t]._date.getFullYear()&&e.getMonth()===i[t]._date.getMonth()){n=i[t];break}if(n){l=a._getMonthCells(n);for(let t=0;t<l.length;t++)if((!l[t].otherMonth||l[t].hover)&&l[t].value.getMonth()===e.getMonth()&&l[t].value.getDate()===e.getDate())return l[t]}}_getMonthCells(e,t){const a=e.getElementsByClassName("smart-calendar-week");let n=[];if(t)for(let e=0;e<a.length;e++){let t=a[e].children;for(let e=t.length-1;e>0;e--)t[e].classList.contains("smart-calendar-cell")&&n.push(t[e])}else for(let e=0;e<a.length;e++){let t=a[e].children;for(let e=1;e<t.length;e++)t[e].classList.contains("smart-calendar-cell")&&n.push(t[e])}return n}_getWeekNumber(e){const t=this;let a,n=new Date(e.getFullYear(),0,1),l=Math.round((e.getTime()-n.getTime()-6e4*(e.getTimezoneOffset()-n.getTimezoneOffset()))/864e5)+1,i=n.getDay()-t.firstDayOfWeek;return i=i>=0?i:i+7,i<4?(a=Math.floor((l+i-1)/7)+1,a>52&&(n=new Date(e.getFullYear()+1,0,1),i=n.getDay()-t.firstDayOfWeek,i=i>=0?i:i+7,a=i<4?1:53)):a=Math.round((l+i-1)/7),a}_handleDateSelection(e){const t=this;if(void 0!==e&&!e.disabled&&!e.restricted)switch(t.selectionMode){case"none":t._focusCell(e);break;case"oneExtended":case"one":case"default":if(t._keysPressed.Control)return t.selectedDates.length>1||1===t.selectedDates.length&&!e.selected?void t._selectDate(e.value):void t._focusCell(e);if(t._keysPressed.Shift)return void t._selectMultipleDates(new Date(t.selectedDates[0]),e);t._clearSelection(!0),t._selectDate(e.value,t._selectedCells.indexOf(e.value)>-1);break;case"many":{if(0===t.selectedDates.length)return void t._selectDate(e.value);const a=t.selectedDates[t.selectedDates.length-1];let n=new Date(t.selectedDates[0]);if(e.value.getTime()===n.getTime()||e.value.getTime()===a.getTime())return t._clearSelection(),void t._focusCell(e);t.selectedDates.length>0&&t._selectMultipleDates(n,e);break}case"range":{if(t.selectedDates.length>1&&!t._keysPressed.Control&&!t._newRangeSelectionStarted&&t._clearSelection(!0),0===t.selectedDates.length||t._keysPressed.Control&&t.selectedDates.length>1&&!t._newRangeSelectionStarted){if(e.value&&t.selectedDates.find((t=>t.getTime()===e.value.getTime())))return;return t._newRangeSelectionStarted=!0,void t._selectDate(e.value)}const a=t.selectedDates[t.selectedDates.length-1];let n=t._keysPressed.Control||t._newRangeSelectionStarted?a:new Date(t.selectedDates[0]);t.selectedDates.length>0&&t._selectMultipleDates(n,e),delete t._newRangeSelectionStarted;break}case"zeroOrMany":t._selectDate(e.value);break;case"oneOrMany":if(1===t.selectedDates.length&&e.selected)return void t._focusCell(e);t._selectDate(e.value);break;case"zeroOrOne":if(1===t.selectedDates.length&&e.selected)return void t._selectDate(e.value);t._clearSelection(!0),t._selectDate(e.value);break;case"week":{if(e.selected&&(e.value.getTime()===t.selectedDates[0].getTime()||e.value.getTime()===t.selectedDates[t.selectedDates.length-1].getTime()))return t._clearSelection(),void t._focusCell(e);t._clearSelection(!0);let a=new Date(e.value);t._selectDate(a);for(let e=1;e<7;e++)a.setDate(a.getDate()+1),t._selectDate(a);t._isDateInView(a)||t.navigate(1);break}}}_handleImportantDateTemplate(){const e=this;if(e._importantDatesTemplate=e._validateTemplate("importantDatesTemplate",e.importantDatesTemplate),!e._importantDatesTemplate||!e._importantDatesTemplate.content)return;let t=e._importantDatesTemplate.content;const a=t.childNodes.length,n=/{{\w+}}/g;let l;e._bindingDetails=[];for(let i=0;i<a;i++)if(l=n.exec(t.childNodes[i].innerHTML),l)return void e._bindingDetails.push({childNodeIndex:i,bindingString:l[0]})}_handleLayoutTemplate(e,t){const a=this,n=a._validateTemplate(e.$.hasClass("smart-header")?"headerTemplate":e.$.hasClass("smart-calendar-footer")?"footerTemplate":"titleTemplate",t);if(!n||!n.content)return void("function"==typeof t&&t(e,{}));a._layoutTemplates||(a._layoutTemplates=[]);let l=document.importNode(n.content,!0);e.innerHTML="";const i=l.childNodes.length,s=/{{\w+}}/g;let o,r=[];for(let e=0;e<i;e++)o=s.exec(l.childNodes[e].innerHTML),o&&r.push({childNodeIndex:e,bindingString:o[0]});if(a._layoutTemplates=a._layoutTemplates.filter((t=>t.selector!==e)),a._layoutTemplates.push({selector:e,template:n,bindings:r}),a.shadowRoot)return e.innerHTML="<slot></slot>",void a.appendChild(l);e.appendChild(l)}_handleCalendarCellHover(e,t){const a=this;if(!a._animationStarted){if("month"===a.displayMode)if("mouseover"===e.type&&("many"===a.selectionMode||"range"===a.selectionMode&&a._newRangeSelectionStarted)&&a.selectedDates.length>0){const e=a.$.monthsContainer.children;for(let t=0;t<e.length;t++)a._getMonthCells(e[t]).map((e=>{a._setCellState(e,"hover",!1)}));let n=new Date("range"===a.selectionMode?a.selectedDates[a.selectedDates.length-1]:a.selectedDates[0]),l=new Date(t.value),i=t;const s=n.getTime()>l.getTime()?-1:1,o=function(){i=a._getCellByDate(n),!i||i.selected||i.restricted||a._setCellState(i,"hover",!0)};if(n.getTime()!==l.getTime()){for(n.setDate(n.getDate()+s);n.getTime()!==l.getTime();)o(),n.setDate(n.getDate()+s);o()}}else a._setCellState(t,"hover",!1);"mouseover"!==e.type||t.otherMonth?a._setCellState(t,"hover",!1):a._setCellState(t,"hover",!0)}}_handleMonths(e,t){const a=this;let n;function l(e){let t,n=e.children.length,l=document.createDocumentFragment();for(;n<a.months;n++)t=a.$.month.cloneNode(!1),t.innerHTML=a.$.month.innerHTML,l.appendChild(t);return l}function i(t){let n=t.children;for(let t=0;t<n.length;t++)a._setMonth(e,n[t]),e.setMonth(e.getMonth()+1);a._setWeeksVisibility(t),a._refreshHeaderElements(),a._refreshHeaderTitle(),a.tooltip&&a.$.tooltip&&a.$.tooltip.close(),a.$.body===document.activeElement&&a._focusCell()}if(e||(e=a._viewDates&&a._viewDates.length>0?a._viewDates[0]:new Date),e=new Date(Math.min(Math.max(a.min.getTime(),e.getTime()),a.max.getTime())),t||(t=a.$.monthsContainer),a._selectedCells=[],a.hasAnimation){for(n=a.$.nextMonthsContainer.children,n.length>0&&n[0].value instanceof Date&&(a.$.nextMonthsContainer.innerHTML="");a.$.nextMonthsContainer.childElementCount<a.months;)a.$.nextMonthsContainer.appendChild(l(a.$.nextMonthsContainer));for(;a.$.nextMonthsContainer.childElementCount>a.months;)a.$.nextMonthsContainer.removeChild(n[a.$.nextMonthsContainer.childElementCount-1]);if(arguments[1]===a.$.nextMonthsContainer)return void i(a.$.nextMonthsContainer)}if(n=a.$.monthsContainer.children,n.length>a.months){for(;a.$.monthsContainer.childElementCount>a.months;)a.$.monthsContainer.removeChild(n[a.$.monthsContainer.childElementCount-1]),a._viewDates.pop();i(a.$.monthsContainer)}else a.$.monthsContainer.children.length!==a.months?(a._viewDates=[],a.$.monthsContainer.appendChild(l(a.$.monthsContainer)),i(a.$.monthsContainer)):i(a.$.monthsContainer)}_headerChangeHandler(e){const t=this;if(e.stopPropagation(),t.disabled||t.readonly)return;if(e.target.ownerElement===t.$.monthElement&&0!==t._changeEventFired)return void t._changeEventFired--;const a=t.displayMode;e.target===t.$.yearElement&&(t._viewDates[0].setFullYear(Math.min(Math.max(t.min.getFullYear(),isNaN(parseInt(t.$.yearElement.value))?0:parseInt(t.$.yearElement.value)),t.max.getFullYear())),t._handleMonths(t._viewDates[0])),!t.$.monthElement||e.target!==t.$.monthElement&&e.target.ownerElement!==t.$.monthElement||(t._handleMonths(new Date(t.$.monthsContainer.children[0]._date.getFullYear(),t.$.monthElement.selectedIndex,1)),"month"!==a&&t._setDisplayMode(t.displayMode,t.displayMode="month"))}_headerClickHandler(e){const t=this;if(t.disabled||t.readonly)return;let a=e.target.closest("smart-repeat-button");if(!a||!a.disabled){switch(a){case t.$.previousMonthButton:return t._isInteractiveNavigation=!0,void t.navigate(-1*t.months*(t.rightToLeft?-1:1));case t.$.nextMonthButton:return t._isInteractiveNavigation=!0,void t.navigate(1*t.months*(t.rightToLeft?-1:1));case t.$.previousYearButton:return void t.navigate(-12);case t.$.nextYearButton:return void t.navigate(12)}"classic"!==t.calendarMode&&e.target.closest(".smart-calendar-date-element")&&(t._animationStarted&&t._animateNavigationCompleted(),t._isInteractiveNavigation=!0,t._showDateView())}}_selectMultipleDates(e,t){const a=this;if(t instanceof HTMLElement&&(t=t.value),a._newRangeSelectionStarted?a._selectDate(e,!0):a._clearSelection(!0),"range"!==a.selectionMode||t.getTime()!==e.getTime()){if((e=new Date(e)).getTime()<t.getTime())for(;e.getTime()<=t.getTime();)a.selectedDates.find((t=>t.getTime()===e.getTime()))||a._selectDate(e,!0),e.setDate(e.getDate()+1);else if(e.getTime()>t.getTime())for(;e.getTime()>=t.getTime();)a.selectedDates.find((t=>t.getTime()===e.getTime()))||a._selectDate(e,!0),e.setDate(e.getDate()-1);else a._selectDate(t,!0);a.$.hiddenInput.value=a.selectedDates.toString(),a._refreshFooter(),a.isInitialized&&(a.$.fireEvent("change",{value:a.selectedDates}),a._updateTargetValue()),a._refreshTitle()}}_setDisplayMode(e,t,a){const n=this;if(n.$nextMonthsContainer.removeClass("smart-calendar-date-view-container"),0!==arguments.length&&n.hasAnimation)if(n._animationStarted&&(n.displayMode=e,n._animateNavigationCompleted(),n.displayMode=t),"month"===e&&"year"===t||"year"===e&&"decade"===t)n.displayMode=e,n._showDateView(a?void 0:n.displayMode);else if("month"===e&&"decade"===t)n._showDateView(n.displayMode="year");else{let e;"list"===n.displayModeView?(e=n.$.listViewContainer.querySelector("li.active"),n.$.animationPanel.style.transformOrigin=e.offsetLeft+e.offsetWidth/2+"px "+(e.offsetTop>0?e.offsetTop-e.offsetHeight/2:e.offsetTop+e.offsetHeight/2)+"px"):(n.$.dateViewContainer.style.order=1,n.$.nextMonthsContainer.style.order=3,e=n._focusedCell,n.$.animationPanel.style.transformOrigin=e.offsetLeft+e.offsetWidth/2+"px "+(e.offsetTop+e.offsetHeight/2)+"px"),n._animateView(1,e)}else{if("classic"===n.calendarMode)return void(n.displayMode="month");if("month"!==n.displayMode&&(n.$monthsContainer.addClass("smart-hidden"),n.$dateViewContainer.hasClass("smart-hidden")&&n.$dateViewContainer.removeClass("smart-hidden")),!n.isCompleted&&"month"===n.displayMode)return;n._setDisplayModeContent()}}_setDisplayModeContent(e,t){const a=this;let n=e&&"Invalid Date"!==e.toString()?e:a.selectedDates.length>0?a.selectedDates[a.selectedDates.length-1]:new Date;n.setTime(Math.min(Math.max(n.getTime(),a.min.getTime()),a.max.getTime())),n.setHours(0,0,0,0);const l=a._prepareView(n);if(!l)return;let i;t?(a.$.nextMonthsContainer.innerHTML=a.$.dateViewContainer.innerHTML,i=a.$.nextMonthsContainer):i=a.$.dateViewContainer;const s=i.children;let o;for(let e=0;e<s.length;e++){const t=s[e];t.innerHTML=l.viewContent[e],t.value=l.dates[e],"year"===a.displayMode?(t.value.getFullYear()<a.min.getFullYear()||t.value.getFullYear()===a.min.getFullYear()&&t.value.getMonth()<a.min.getMonth()||t.value.getFullYear()>a.max.getFullYear()||t.value.getFullYear()===a.max.getFullYear()&&t.value.getMonth()>a.max.getMonth()?a._setCellState(t,"otherMonth",!0):a._setCellState(t,"otherMonth",!1),n.getFullYear()===t.value.getFullYear()&&n.getMonth()===t.value.getMonth()&&(o=t)):"decade"===a.displayMode&&(0===e||e===s.length-1||t.value.getFullYear()<a.min.getFullYear()||t.value.getFullYear()>a.max.getFullYear()?a._setCellState(t,"otherMonth",!0):a._setCellState(t,"otherMonth",!1),n.getFullYear()===t.value.getFullYear()&&(o=t)),a._setCellState(t,"hover",!1),a._setCellState(t,"focus",!1)}if(o.otherMonth)for(let e=0;e<s.length;e++)if(!s[e].otherMonth){o=s[e];break}a._mobileScrolling||(a._focusedCell&&a._setCellState(a._focusedCell,"focus",!1),a._focusedCell=o,a._focusCell(a._focusedCell),a._refreshHeaderTitle(),a._refreshHeaderElements(),a.$.fireEvent("displayModeChange"),a._isInteractiveNavigation?a._isInteractiveNavigation=void 0:(a._setCellState(o,"focus",!0),setTimeout((function(){a.unfocusable||(a.$.body.focus(),a._focusCell(a._focusedCell))}),0)))}_prepareView(e){const t=this,a=t.$.listViewContainer;let n,l,i=[],s=[];function o(e,t,a){let n=new Date(e,t+1,0),l=n.getDate();return a>l?n.setDate(l):n.setDate(a),n}if("month"===t.displayMode)return t.$nextMonthsContainer.hasClass("smart-date-view-container")&&t.$nextMonthsContainer.removeClass("smart-date-view-container"),a&&a.classList.add("smart-hidden"),t.$dateViewContainer.hasClass("smart-visibility-hidden")&&t.$dateViewContainer.removeClass("smart-visibility-hidden"),t._isDateInView(e)||t._handleMonths(e),t.$header.hasClass("smart-hidden")&&t.$header.removeClass("smart-hidden"),t.$body.hasClass("smart-calendar-list-view")&&t.$body.removeClass("smart-calendar-list-view"),t.$dateContainer.addClass("smart-calendar-selected"),t.$yearContainer.removeClass("smart-calendar-selected"),t.$dateViewContainer.addClass("smart-hidden"),t.$monthsContainer.removeClass("smart-hidden"),t._refreshHeaderTitle(),t.$.body.setAttribute("tabindex",t.tabIndex>0?t.tabIndex:0),t._refreshHeaderElements(),t.unfocusable||t.$.body.focus(),t._focusCell(t._getCellByDate(e)),void t.$.fireEvent("displayModeChange");if("list"===t.displayModeView)return t._setDisplayModeListContent(e),void t.$.fireEvent("displayModeChange");if(t.$header.hasClass("smart-hidden")&&t.$header.removeClass("smart-hidden"),t.$dateViewContainer.hasClass("smart-visibility-hidden")&&t.$dateViewContainer.removeClass("smart-visibility-hidden"),a&&a.classList.add("smart-hidden"),t.$.body.setAttribute("tabindex",t.tabIndex>0?t.tabIndex:0),"year"===t.displayMode){let a=new Date;for(let n=0;n<12;n++)a=o(a.getFullYear(),n,a.getDate()),i.push(a.toLocaleDateString(t.locale,{month:"short"})),s.push(o(e.getFullYear(),n,e.getDate()))}else{n=e?e.getFullYear():t._viewDates[0].getFullYear(),l=n%10,0!==l&&(n-=l),n-=1;for(let t=0;t<12;t++)i.push(n+""),s.push(new Date(n,e.getMonth(),e.getDate())),++n}return{viewContent:i,dates:s}}_setDisplayModeListContent(e){const t=this;let a=[];function n(e,t,a){let n=new Date(e,t+1,0),l=n.getDate();return a>l?n.setDate(l):n.setDate(a),n}if(t.$dateViewContainer.addClass("smart-visibility-hidden"),"year"===t.displayMode){let l=new Date;for(let i=0;i<12;i++)l=n(l.getFullYear(),i,l.getDate()),a.push({label:l.toLocaleDateString(t.locale,{month:"short"}),value:n(e.getFullYear(),i,e.getDate()).toDateString()});t.$yearContainer.removeClass("smart-calendar-selected"),t.$dateContainer.addClass("smart-calendar-selected")}else{let n=t.min.getFullYear(),l=t.max.getFullYear();l=Math.min(t.max.getFullYear(),e.getFullYear()+10),n=Math.max(t.min.getFullYear(),l-10);for(let t=n;t<l;t++)a.push({label:t.toString(),value:new Date(t,e.getMonth(),e.getDate()).toDateString()});t.$yearContainer.addClass("smart-calendar-selected"),t.$dateContainer.removeClass("smart-calendar-selected")}t._prepareListViewer(a,e.toDateString()),t._refreshHeaderTitle(),t._refreshHeaderElements(),t.unfocusable||t.focus()}_prepareListViewer(e=[],t){const a=this,n=a.$.body;let l=a.$.listViewContainer;l||(a.$.listViewContainer=l=document.createElement("smart-scroll-viewer"),l.classList.add("smart-input-drop-down-menu","smart-calendar-list-view"),l.ensureVisible=a._listViewerEnsureVisible.bind(a),l._handleKeyStrokes=a._listViewerKeyStrokesHandler.bind(a),l._setActiveDescendant=a._listViewerSetActiveDescendant.bind(a));let i=l.querySelector("ul");i||(i=document.createElement("ul"),i.onclick=a._listViewContainerItemClickHandler.bind(a),l.appendChild(i)),n.contains(l)&&n.removeChild(l),i.innerHTML="";for(let a=0;a<e.length;a++){const n=e[a],s=n.label,o=n.value,r=document.createElement("li"),d=document.createElement("a");t===o?(r.setAttribute("aria-selected",!0),r.classList.add("active"),t=r):r.setAttribute("aria-selected",!1),r.id=l.id+"Item"+Math.floor(65536*(1+Math.random())).toString(16).substring(1),r.setAttribute("value",o),r.setAttribute("role","option"),r.setAttribute("aria-label",s),d.innerHTML=s,d.setAttribute("aria-hidden",!0),r.appendChild(d),i.appendChild(r)}l.classList.remove("smart-hidden"),n.classList.add("smart-calendar-list-view"),n.removeAttribute("tabindex"),n.insertBefore(l,a.$.animationPanel),l.refresh(),l.ensureVisible()}_listViewerEnsureVisible(){const e=this.$.listViewContainer,t=e.querySelector(".active");if(!t)return;const a=Array.from(e.querySelectorAll("li"));t.offsetTop+t.offsetHeight>=e.scrollTop+e.offsetHeight&&(e.scrollTop=t.offsetTop+t.offsetHeight),(t.offsetTop<=e.scrollTop||t.offsetTop>=e.scrollTop+e.offsetHeight)&&(e.scrollTop=t.offsetTop),0===a.indexOf(t)?e.scrollTop=0:a.indexOf(t)===a.length-1&&(e.scrollTop=e.scrollHeight)}_listViewerKeyStrokesHandler(e){if(["ArrowUp","ArrowDown"].indexOf(e)<0)return;event.preventDefault();const t=this.$.listViewContainer,a=t.querySelector(".active");if(!a){const e=t.querySelector("li");return e.classList.add("active"),void t._setActiveDescendant(e)}const n=a["ArrowDown"===e?"nextElementSibling":"previousElementSibling"];n&&(a.classList.remove("active"),n.classList.add("active"),t._setActiveDescendant(n),t.ensureVisible())}_listViewerSetActiveDescendant(e){const t=this.$.listViewContainer;e?t.setAttribute("aria-activedescendant",e.id):t.removeAttribute("aria-activedescendant")}_listViewContainerItemClickHandler(e){const t=this,a=e.target.closest("li");a&&"list"===t.displayModeView&&"month"!==t.displayMode&&t._displayModeHandler(a)}_isDateInView(e){const t=this;if(!e)return!1;for(let a=0;a<t._viewDates.length;a++)if(e.getFullYear()===t._viewDates[a].getFullYear()&&e.getMonth()===t._viewDates[a].getMonth()){let a=t._getCellByDate(e,t._animationStarted?t.$.nextMonthsContainer:void 0);if(!a)return;return!(a.otherMonth||!a.offsetHeight||a.classList.contains("smart-visibility-hidden"))}return!1}_keyDownHandler(e){const t=this;if(t.disabled||t.readonly)return;const a=(t.shadowRoot||t.getRootNode()).activeElement||document.activeElement;switch(a){case t.$.yearElement:"Escape"===e.key&&t._refreshHeaderElements();break;case t.$.dateElement:if("default"===t.calendarMode&&" "===e.key||"Enter"===e.key)return e.preventDefault(),t._isInteractiveNavigation=!0,void t._showDateView();t._focusedCell||t._focusCell(),e.key.indexOf("Arrow")>-1&&t.$.dateElement===a&&!t.unfocusable&&t.$.body.focus(),t._navigateDays(e);break;case t.$.body:" "===e.key&&e.preventDefault(),t._navigateDays(e);break;case t.$.yearContainer:if(" "!==e.key&&"Enter"!==e.key||"decade"===t.displayMode||(e.preventDefault(),t._isInteractiveNavigation=!0,t._showDateView("year")),e.key.indexOf("Arrow")>-1){if(e.preventDefault(),t._focusedCell||t._focusCell(),"month"!==t.displayMode&&"list"===t.displayModeView)return t.unfocusable||t.focus(),void t.$.listViewContainer._handleKeyStrokes(e.key);t._navigateDays(e)}break;case t.$.dateContainer:if(" "!==e.key&&"Enter"!==e.key||"month"===t.displayMode||(e.preventDefault(),t._displayModeHandler("list"===t.displayModeView?t.$.listViewContainer.querySelector("li.active"):t._focusedCell,"month")),e.key.indexOf("Arrow")>-1){if(t._focusedCell||t._focusCell(),"month"!==t.displayMode&&"list"===t.displayModeView)return t.unfocusable||t.focus(),void t.$.listViewContainer._handleKeyStrokes(e.key);t._navigateDays(e)}break;default:if("month"!==t.displayMode&&"list"===t.displayModeView)return["Arrow","End","Home","Page"].indexOf(e.key)&&e.preventDefault()," "===e.key||"Enter"===e.key||e.ctrlKey&&("ArrowUp"===e.key||"ArrowDown"===e.key)?void t._navigateDays(e):void t.$.listViewContainer._handleKeyStrokes(e.key);e.key.indexOf("Arrow")>-1&&(t._focusedCell||t._focusCell(),t._navigateDays(e))}}_showDateView(e){const t=this;switch(e=e||t.displayMode){case"month":e="year";break;case"year":e="decade"}if(t.displayMode===e)return;if(t.$.fireEvent("displayModeChanging",{oldDisplayMode:t.displayMode,newDisplayMode:e}).defaultPrevented)return;let a;if(t.displayMode=e,"list"===t.displayModeView&&"month"!==t.displayMode){t._setDisplayModeListContent(t._focusedCell?t._focusedCell.value:t._viewDates[0]);const e=t.$.listViewContainer;e.classList.remove("smart-hidden"),a=e.querySelector("li.active"),a.offsetHeight?t.$.animationPanel.style.transformOrigin=a.offsetLeft+a.offsetWidth/2+"px "+(a.offsetTop>0?a.offsetTop-a.offsetHeight/2:a.offsetTop+a.offsetHeight/2)+"px":t.$.animationPanel.style.transformOrigin=e.offsetLeft+e.offsetWidth/2+"px "+(a.offsetTop>0?a.offsetTop-a.offsetHeight/2:e.offsetTop+e.offsetHeight/2)+"px"}else t._focusedCell||t._focusCell(),a=t._focusedCell,t.$.animationPanel.style.transformOrigin=a.offsetLeft+a.offsetWidth/2+"px "+(a.offsetTop+a.offsetHeight/2)+"px";t.$monthsContainer.addClass("smart-hidden"),t.$dateViewContainer.hasClass("smart-hidden")&&t.$dateViewContainer.removeClass("smart-hidden"),"decade"===t.displayMode&&(t.$yearContainer.addClass("smart-calendar-selected"),t.$dateContainer.removeClass("smart-calendar-selected")),t.hasAnimation?t._animateView(-1,a):t._setDisplayModeContent(t._focusedCell?t._focusedCell.value:t._viewDates[0])}_keyUpHandler(e){const t=this;t.disabled||t.readonly||"default"!==t.selectionMode&&"range"!==t.selectionMode||"Shift"!==e.key&&"Control"!==e.key||(t._keysPressed[e.key]=!1)}_handleTooltip(){const e=this,t=e.tooltip;let a=e.$.tooltip;t?(a||(a=document.createElement("smart-tooltip"),a.tooltipTemplate=e.tooltipTemplate,a.arrow=e.tooltipArrow,a.arrowDirection=e.tooltipArrowDirection,a.offset=e.tooltipOffset,a.position=e.tooltipPosition,a.delay=e.tooltipDelay,a.rightToLeft=e.rightToLeft,a.openMode="manual",e.$.tooltip=a),a.parentElement||e.$.calendarContainer.appendChild(a)):a&&a.remove()}_mouseEventsHandler(e){const t=this;if(t.disabled||t.readonly)return;const a=t.$.tooltip;if("mouseenter"===e.type)return void t.$.setAttributeValue("hover",!0);if("mouseleave"===e.type){if(t.$.setAttributeValue("hover",!1),t._newRangeSelectionStarted&&"range"===t.selectionMode){const e=t.$.monthsContainer.children;for(let a=0;a<e.length;a++)t._getMonthCells(e[a]).map((e=>{t._setCellState(e,"hover",!1)}))}return void(t.tooltip&&a&&a.close())}const n=t.shadowRoot||t.isInShadowDOM?e.composedPath()[0]:e.target;if(!n.closest(".smart-calendar-week"))return void(t.tooltip&&a&&(clearTimeout(t._tooltipAutoCloseTimeout),a[a.contains(n)?"open":"close"]()));const l=n.closest(".smart-calendar-cell");if(!l)return;if(Smart.Utilities.Core.isMobile||t._handleCalendarCellHover(e,l),!t.tooltip&&a)return void a.close();const i=l.hasAttribute("important");if(clearTimeout(t._tooltipAutoCloseTimeout),i&&a&&"mouseover"===e.type)return a.selector=l,void(a.selector!==l?a.close():(t.tooltipTemplate||(a.innerHTML=0===a.innerHTML.trim().length?"Important day!":a.innerHTML),a.open(),t.$.fireEvent("open",{target:a,value:new Date(l.value)})));t._tooltipAutoCloseTimeout=setTimeout(function(){!a||"mouseout"!==e.type&&l&&i||a.close(),clearTimeout(t._tooltipAutoCloseTimeout)}.bind(t),t.tooltipDelay)}_popupEventHandler(e){const t=this,a=t.$.tooltip;if(e.stopPropagation(),e.target!==t.$.monthElement)if(e.target===a)if("close"!==e.type);else{const e=a.selector;t.$.fireEvent("close",{target:a,value:e?new Date(e.value):null})}else t.$.fireEvent(e.type,{target:e.target})}_moveHandler(e){const t=this;if(!Smart.Utilities.Core.isMobile||!t._dragStartDetails||"list"===t.displayModeView&&"month"!==t.displayMode)return;e.originalEvent.preventDefault(),e.preventDefault(),e.stopPropagation();const a={x:Math.round(e.pageX),y:Math.round(e.pageY)};let n,l,i;if(n="portrait"===t.scrollButtonsNavigationMode?a.y>t._dragStartDetails.y?-1*t.months:1*t.months:a.x<t._dragStartDetails.x?1*t.months:-1*t.months,t._previousIteration&&n===t._previousIteration.step)l=t._previousIteration.date;else if(6!==t.weeks&&0!==t.weeks&&"month"===t.displayMode){let e,a;t._focusedCell||t._focusCell();const i=[].slice.call(t._focusedCell.closest(".smart-calendar-weeks").children).filter((e=>!e.classList.contains("smart-hidden")));if(i.length){let s;!t.rightToLeft&&n<0||t.rightToLeft&&n>0?(s=i[0].querySelectorAll(".smart-calendar-cell"),a=t.rightToLeft?s[s.length-1]:s[0]):(s=i[i.length-1].querySelectorAll(".smart-calendar-cell"),a=t.rightToLeft?s[0]:s[s.length-1]),e=new Date(a.value),e.setDate(e.getDate()+n*(t.rightToLeft?-1:1)),l=e}else l=t._getNextDate(n*(t.rightToLeft?-1:1))}else l=t._getNextDate(n*(t.rightToLeft?-1:1));if(!l)return;if(!t._dragStartDetails.navigationDate&&t.$.fireEvent("navigationChanging",{value:new Date(l),type:t.displayMode}).defaultPrevented)return t._cancelAnimation(),void(t._dragStartDetails=void 0);if(t._dragStartDetails.step=n,t._dragStartDetails.navigationDate=new Date(l),!t.hasAnimation)return;if(t._previousIteration={step:n,date:l},t._mobileScrolling=!0,"month"!==t.displayMode)t.$nextMonthsContainer.addClass("smart-calendar-date-view-container"),i=t.$.dateViewContainer,t.$.nextMonthsContainer.children[0].value instanceof Date&&t.$.nextMonthsContainer.children[1].value.getFullYear()===l.getFullYear()||t._setDisplayModeContent(l,t.$.nextMonthsContainer);else if(t.$nextMonthsContainer.hasClass("smart-calendar-date-view-container")&&t.$nextMonthsContainer.removeClass("smart-calendar-date-view-container"),i=t.$.monthsContainer,!t.$.nextMonthsContainer.children[0]._date||t.$.nextMonthsContainer.children[0]._date.getTime()!==l.getTime()){let e=t.$.nextMonthsContainer.children;for(let a=0;a<e.length;a++)l.setMonth(t._dragStartDetails.navigationDate.getMonth()+a*(t.rightToLeft?-1:1)),t._setMonth(new Date(l),e[a],!0)}6!==t.weeks&&0!==t.weeks&&"month"===t.displayMode&&t._updateWeeksVisibility(n*(t.rightToLeft?-1:1),t._getCellByDate(l,t.$.nextMonthsContainer)),delete t._mobileScrolling,n<0?(i.style.order=3,t.$.nextMonthsContainer.style.order=1,t.$.body[t._animationSettings.scrollSize]=t.$.body[t._animationSettings.scrollMax]):(i.style.order=1,t.$.nextMonthsContainer.style.order=3,t.$.body[t._animationSettings.scrollSize]=0);const s="portrait"===t.scrollButtonsNavigationMode?"y":"x";Math.abs(t._dragStartDetails[s]-a[s])>5&&(t.$.body[t._animationSettings.scrollSize]+=2*-(a[s]-t._dragStartDetails[s]))}_getNextDate(e){const t=this;let a;if("month"!==t.displayMode){let n;const l=t._focusedCell&&t._focusedCell.value.getFullYear();if("list"===t.displayModeView)a=new Date(t.$.listViewContainer.querySelector("li").getAttribute("value"));else{let e=t._animationStarted?t.$.nextMonthsContainer:t.$.dateViewContainer;a=new Date("year"===t.displayMode?e.children[0].value:e.children[1].value)}n="year"===t.displayMode?1:0!==e?10:1,a.setFullYear(a.getFullYear()+(e>0?n:-n)),a.getTime()<t.min.getTime()&&(a=t.min),a.getTime()>t.max.getTime()&&(a=t.max);const i="month"!==t.displayMode&&"list"===t.displayModeView;if(a.getFullYear()<t.min.getFullYear()||a.getFullYear()>t.max.getFullYear()||!i&&l===a.getFullYear())return}else{let n=t._viewDates[0];if(a=new Date(n),a.setDate(1),a.setMonth(a.getMonth()+e),a.setTime(Math.min(Math.max(a.getTime(),t.min.getTime()),t.max.getTime())),n.getMonth()===a.getMonth()&&n.getFullYear()===a.getFullYear())return}return a}_navigateDays(e){const t=this;let a="ArrowUp"===e.key||"ArrowDown"===e.key?7:1,n="ArrowUp"===e.key||"ArrowLeft"===e.key||"PageUp"===e.key?-1:1;switch(e.key){case"ArrowUp":case"ArrowLeft":case"ArrowDown":case"ArrowRight":if(!t._handleArrowKeys(e,a,n))return;break;case" ":case"Enter":{if("month"!==t.displayMode)return void t._displayModeHandler("list"===t.displayModeView?t.$.listViewContainer.querySelector("li.active"):t._focusedCell);const e=t._focusedCell;if("oneExtended"===t.selectionMode&&e)return t._clearSelection(!0),void t._selectDate(e.value,t._selectedCells.indexOf(e.value)>-1);break}case"Control":case"Shift":return"default"===t.selectionMode&&(t._keysPressed[e.key]=!0),void("range"===t.selectionMode&&(t._keysPressed[e.key]="Control"===e.key));case"Home":case"End":{e.preventDefault();let a,n=function(t){if("Home"===e.key){for(let e=0;e<t.length;e++)if(!t[e].otherMonth&&(!t[e].disabled||!t[e].restricted)&&t[e].offsetHeight)return t[e]}else for(let e=t.length-1;e>=0;e--)if(!t[e].otherMonth&&(!t[e].disabled||!t[e].restricted)&&t[e].offsetHeight)return t[e]};if(a="month"!==t.displayMode?n(t.$.dateViewContainer.children):n(t._getMonthCells(t._focusedCell.closest(".smart-calendar-month"),t.rightToLeft)),!a)return;if(t._focusCell(a),"month"!==t.displayMode)return;break}case"PageUp":case"PageDown":if(!t._handlePageUpDownKeys(e,n))return;break;default:return}"oneExtended"!==t.selectionMode&&t._focusedCell&&t._handleDateSelection(t._focusedCell)}_handleArrowKeys(e,t,a){const n=this;let l;if("month"!==n.displayMode||n._animationStarted||n.unfocusable||n.$.body.focus(),n._focusedCell||n._focusCell(n._getCellByDate(new Date)),e.altKey)return;if(e.ctrlKey){if("ArrowDown"===e.key||"ArrowUp"===e.key){if("classic"===n.calendarMode)return;let t;switch(n.displayMode){case"month":t="ArrowDown"===e.key?"month":"year";break;case"year":t="ArrowDown"===e.key?"month":"decade";break;case"decade":t="ArrowDown"===e.key?"year":"decade"}if(t!==n.displayMode){const e=n.displayMode;n.displayMode=t,n._setDisplayMode(e,t,"month"===e),n._keysPressed&&delete n._keysPressed.Control}}return}if(e.preventDefault(),!n.rightToLeft||"ArrowLeft"!==e.key&&"ArrowRight"!==e.key||(a*=-1),"month"!==n.displayMode&&"list"!==n.displayModeView){const i=n._animationStarted?n.$.nextMonthsContainer.children:n.$.dateViewContainer.children;if(t="ArrowUp"===e.key||"ArrowDown"===e.key?4:1,"year"===n.displayMode){const e=n._focusedCell.value.getMonth()+a*t;let i=new Date(n._focusedCell.value.getFullYear(),e+1,0);n._focusedCell.value.getDate()<=i.getDate()&&(i=n._focusedCell.value),l=new Date(n._focusedCell.value.getFullYear(),e,i.getDate())}else l=new Date(n._focusedCell.value.getFullYear()+a*t,n._focusedCell.value.getMonth(),n._focusedCell.value.getDate());if("year"===n.displayMode){if(l.getFullYear()<n.min.getFullYear()||l.getFullYear()===n.min.getFullYear()&&l.getMonth()<n.min.getMonth()||l.getFullYear()>n.max.getFullYear()||l.getFullYear()===n.max.getFullYear()&&l.getMonth()>n.max.getMonth())return;l.getTime()>i[i.length-1].value.getTime()?n.navigate(1):l.getTime()<i[0].value.getTime()&&n.navigate(-1)}else{if(l.getFullYear()<n.min.getFullYear()||l.getFullYear()>n.max.getFullYear())return;if(l.getFullYear()<i[1].value.getFullYear()||l.getFullYear()>i[10].value.getFullYear()){let t=n._focusedCell;n.navigate(a),"ArrowUp"!==e.key&&"ArrowDown"!==e.key||(t===i[3]||t===i[4]||t===i[7]||t===i[8]?l.setFullYear(l.getFullYear()+2*a):l.setFullYear(l.getFullYear()-2*a))}}return void n._focusCell(n._getCellByDate(l,n._animationStarted?n.$.nextMonthsContainer:void 0))}if(!n._focusedCell)return;const i=n.restrictedDates.map(Number);for(l=new Date(n._focusedCell.value.getFullYear(),n._focusedCell.value.getMonth(),n._focusedCell.value.getDate()+a*t,0,0,0,0);i.indexOf(l.getTime())>-1;)l.setDate(l.getDate()+a);if(l.getTime()<n.min.getTime()||l.getTime()>n.max.getTime())return;n._isDateInView(l)||n.navigate(a*n.months);let s=n._getCellByDate(l,n._animationStarted?n.$.nextMonthsContainer:void 0);return n._focusCell(s),n._updateWeeksVisibility(a),!(["zeroOrMany","oneOrMany","none","many","week","range"].indexOf(n.selectionMode)>-1)||void 0}_handlePageUpDownKeys(e,t){const a=this;let n;if(e.preventDefault(),"month"!==a.displayMode){if(n=a._focusedCell,!a.navigate(t))return;for(;n&&n.classList.contains("smart-visibility-hidden");)n=null===n.previousElementSibling?n.nextElementSibling:n.previousElementSibling;return a._focusCell(n),void(a.hasAnimation&&"decade"===a.displayMode&&a._focusedCell.value.setFullYear(a._focusedCell.value.getFullYear()+10*t))}n=new Date(a._focusedCell.value.getFullYear(),a._focusedCell.value.getMonth()+t,1,0,0,0,0);let l=new Date(n.getFullYear(),n.getMonth()+1,0).getDate();return a._focusedCell.value.getDate()>l?n.setDate(l):n.setDate(a._focusedCell.value.getDate()),a._isDateInView(n)||a.navigate(n),a._animationStarted?a._focusCell(a._getCellByDate(n,a.$.nextMonthsContainer)):a._focusCell(a._getCellByDate(n)),!0}_selectDate(e,t,a){const n=this;if(void 0===n._viewDates||"none"===n.selectionMode)return;let l,i=n.selectedDates.slice(0),s=n._getCellByDate(e,n._animationStarted?n.$.nextMonthsContainer:void 0);s&&n._selectCell(s),(e=new Date(e)).setHours(0,0,0,0),l=i.map(Number).indexOf(e.getTime()),n.restrictedDates.map(Number).indexOf(e.getTime())>-1||e.getTime()<n.min.getTime()||e.getTime()>n.max.getTime()||(l>-1?i.splice(l,1):i.push(e),a||(n.selectedDates=i),n._refreshFooter(),n.$.hiddenInput.value=n.selectedDates.toString(),!t&&n.isInitialized&&(n.$.fireEvent("change",{value:[e]}),n._updateTargetValue()),n._refreshTitle())}_selectCell(e){const t=this;if(!e||t.restrictedDates.map(Number).indexOf(e.value.getTime())>-1||t.disableAutoNavigation&&!1===e.otherMonth||e.value.getTime()<t.min.getTime()||e.value.getTime()>t.max.getTime())return;const a=t._selectedCells.indexOf(e);a>-1?(t._setCellState(e,"selected",!1),t._selectedCells.splice(a,1)):(t._setCellState(e,"selected",!0),t._selectedCells.push(e)),t._focusCell(e)}_refreshDayOfWeekTitles(){const e=this;let t,a=[],n=new Date;function l(t){let a;return"firstTwoLetters"===e.dayNameFormat?(a=new Intl.DateTimeFormat(e.locale,{weekday:"long"}).format(t),a=8206===a.charCodeAt(0)?a.substring(1,3):a.substring(0,2)):a=new Intl.DateTimeFormat(e.locale,{weekday:e.dayNameFormat}).format(t),a}for(let e=1;e<8;e++)n.setDate(e),t={number:n.getDay(),name:l(n)},a.push(t);a.sort(((e,t)=>e.number>t.number?1:-1));const i=e.$.monthsContainer.children;let s,o;for(let t=0;t<i.length;t++)if(s=i[t].getElementsByClassName("smart-calendar-week-titles")[0].children,o=e.firstDayOfWeek>6?0:e.firstDayOfWeek,e.rightToLeft)for(let e=s.length-1;e>=1;e--)s[e].textContent=a[o++].name,o=o>6?0:o;else for(let e=1;e<s.length;e++)s[e].textContent=a[o++].name,o=o>6?0:o;if(e.hasAnimation){const t=e.$.monthsContainer.getElementsByClassName("smart-calendar-week-titles")[0].innerHTML,a=e.$.nextMonthsContainer.getElementsByClassName("smart-calendar-week-titles");for(let e=0;e<a.length;e++)a[e].innerHTML=t}}_refreshCalendarMode(){const e=this;if(!e.headerTemplate)if(e._refreshMonthNames(),"default"===e.calendarMode){e.$classicHeaderDate.addClass("smart-hidden"),e.$defaultHeaderDate.removeClass("smart-hidden");const t=e._viewDates.slice(0).sort(((e,t)=>e.getTime()-t.getTime())),a=t[0],n=t[t.length-1];a.setDate(2);let l=e.monthNameFormat;"firstTwoLetters"===l&&(l="long");let i=a.toLocaleDateString(e.locale,{year:e.yearFormat,month:l});e.months>1&&(n.setDate(2),i+=" - "+n.toLocaleDateString(e.locale,{year:e.yearFormat,month:l})),e.$.defaultHeaderDate.innerHTML=i,e.unfocusable||e.$.dateElement.setAttribute("tabindex",e.tabIndex>0?e.tabIndex:0)}else e.$defaultHeaderDate.addClass("smart-hidden"),e.$classicHeaderDate.removeClass("smart-hidden"),e.$.dateElement.removeAttribute("tabindex")}_refreshFooter(){const e=this;if(!(e.viewSections.indexOf("footer")<0||0===e.$.footer.offsetHeight))if(e.footerTemplate){if("function"==typeof e.footerTemplate)return;let a=e._layoutTemplates.filter((t=>t.selector===e.$.footer))[0],n=document.importNode(a.template.content,!0);if(a.bindings.length>0){let e=n.childNodes[a.bindings[0].childNodeIndex];a.selector.childNodes[a.bindings[0].childNodeIndex].innerHTML=e.innerHTML.replace(a.bindings[0].bindingString,t())}}else e.$.selectedDatesRange.innerHTML=t();function t(){if(0===e.selectedDates.length)return"";if(1===e.selectedDates.length)return e.selectedDates[0].toLocaleDateString(e.locale,{year:e.yearFormat,weekday:"short",month:"short",day:"numeric"});{let t=e.selectedDates.slice(0).sort(((e,t)=>e.getTime()-t.getTime()));return t[0].toLocaleDateString(e.locale,{year:e.yearFormat,weekday:"short",month:"short",day:"numeric"})+" - "+t[t.length-1].toLocaleDateString(e.locale,{year:e.yearFormat,weekday:"short",month:"short",day:"numeric"})}}}_refreshImportantDates(){const e=this;if("month"===e.displayMode){e._clearImportantDates();for(let t=0;t<e.importantDates.length;t++)e._setImportantDate(e.importantDates[t])}}_clearImportantDates(){const e=this,t=e.$.monthsContainer.children;for(let a=0;a<t.length;a++)e._getMonthCells(t[a]).map((t=>{e._setCellState(t,"important",!1)}))}_setImportantDate(e,t){const a=this,n=a._getCellByDate(e);t||(t=n),t&&(a._setCellState(t,"important",!0),a._applyImportantDateTemplate(t))}_applyImportantDateTemplate(e){const t=this;if(!t._importantDatesTemplate)return"function"==typeof t.importantDatesTemplate?void t.importantDatesTemplate(e,{value:e.value}):void(e.innerHTML=e.value.getDate()+"");let a=document.importNode(t._importantDatesTemplate.content,!0);if(t._bindingDetails&&t._bindingDetails.length>0){let n=a.childNodes[t._bindingDetails[0].childNodeIndex];n.innerHTML=n.innerHTML.replace(t._bindingDetails[0].bindingString,e.value.getDate())}e.innerHTML="";for(let t=0;t<a.childNodes.length;t++)a.childNodes[t].outerHTML&&(e.innerHTML+=a.childNodes[t].outerHTML)}_setMonth(e,t,a){const n=this,l=n._getDays(e,n.selectedDates),i=n._getDays(e,n.importantDates),s=n._getDays(e,n.restrictedDates);e.setDate(1),t||(t=n.$.month),t._date=new Date(e),a||((!n._viewDates||n._viewDates.length>=n.months)&&(n._viewDates=[]),n._viewDates.push(new Date(e)));let o=((e=new Date(e)).getDay()-n.firstDayOfWeek+7)%7;e.setDate(0);let r=e.getDate();if(e.setDate(32),e.setDate(1),e.setDate(32),n._selectedCells)for(let e=0;e<n._selectedCells.length;e++)n._selectedCells[e].closest(".smart-calendar-month")===t&&n._setCellState(n._selectedCells[e],"selected",!1);n._setMonthContent(e,t,{previusMonthDays:r,firstDayOfWeek:o,selectedDates:l,importantDates:i,restrictedDates:s})}_setMonthContent(e,t,a){const n=this,l=32-e.getDate(),i=n._getMonthCells(t,n.rightToLeft),s=t._date.getMonth(),o=t._date.getFullYear(),r=new Date;let d,c=1,m=1;r.setHours(0,0,0,0),i.map((e=>{n._setCellState(e,"restricted",!1),n._setCellState(e,"selected",!1),n._setCellState(e,"otherMonth",!1),n._setCellState(e,"focus",!1),n._setCellState(e,"important",!1),n._setCellState(e,"today",!1),n._setCellState(e,"disabled",!1),n._setCellState(e,"hover",!1)}));for(let e=0;e<i.length;e++){const h=i[e];e===a.firstDayOfWeek&&m<=l?(h.className="smart-calendar-cell",h.value=new Date(o,s,m),h.innerHTML=h.value.getDate().toString(),a.restrictedDates.indexOf(m)>-1||h.value.getTime()<n.min.getTime()||h.value.getTime()>n.max.getTime()?n._setCellState(h,"restricted",!0):a.selectedDates.indexOf(m)>-1&&(n._setCellState(h,"selected",!0),n._selectedCells.indexOf(h)<0&&n._selectedCells.push(h)),a.importantDates.indexOf(m)>-1&&(n._setImportantDate(h.value,h),a.importantDates.splice(a.importantDates.indexOf(m),1)),h.value.getTime()===r.getTime()&&n._setCellState(h,"today",!0),a.firstDayOfWeek++,m++):(1===m?(h.value=new Date(o,s-1,++a.previusMonthDays-a.firstDayOfWeek),d=!!(h.value.getTime()<n.min.getTime()||t.previousElementSibling)):(h.value=new Date(o,s+1,c++),d=!!(h.value.getTime()>n.max.getTime()||t.nextElementSibling)),h.innerHTML=h.value.getDate().toString(),n._setCellState(h,"otherMonth",!0),d?h.classList.add("smart-visibility-hidden"):h.classList.remove("smart-visibility-hidden"))}n.months>1&&(t.firstElementChild.innerHTML=n.dateFormatFunction?n.dateFormatFunction(t._date):n._monthsNames[s]+" "+t._date.toLocaleDateString(n.locale,{year:n.yearFormat})),n._setMonthWeekNumbers(t)}_refreshMonthNames(){const e=this;let t,a=new Date;function n(t){let a=e.monthNameFormat;"firstTwoLetters"===a&&(a="long");let n=new Intl.DateTimeFormat(e.locale,{month:a}).format(t);return"firstTwoLetters"===e.monthNameFormat&&(n=8206===n.charCodeAt(0)?n.substring(0,2):n.substring(1,3)),n}a.setDate(1),e._monthsNames=[];for(let l=0;l<12;l++)a.setMonth(l),t=n(a),e._monthsNames.push(t);if("classic"===e.calendarMode&&e.$.monthElement){let t=e.$.monthsContainer.children;if(e.$.monthElement.dataSource&&(e._changeEventFired=1),e.shadowRoot?e._setMonthElementPropertyInShadowDOM("dataSource",e._monthsNames):e.$.monthElement.dataSource=e._monthsNames,e._viewDates){for(let a=0;a<t.length;a++)t[a].firstElementChild.textContent=e._monthsNames[t[a]._date.getMonth()]+" "+t[a]._date.getFullYear();e._changeEventFired=1,e.shadowRoot?e._setMonthElementPropertyInShadowDOM("selectedIndex",e._viewDates.map((e=>e.getMonth()))[0]):e.$.monthElement.selectedIndex=e._viewDates.map((e=>e.getMonth()))[0]}}}_setMonthWeekNumbers(e){const t=this,a=function(e){for(let t=1;t<e.children.length;t++)if(!e.children[t].classList.contains("smart-visibility-hidden"))return!0};let n=e.getElementsByClassName("smart-calendar-week");n=[].slice.call(n);for(let l=0;l<n.length;l++){if(!a(n[l])){n[l].children[0].innerHTML="";continue}const i=n[l].children[1],s=i.otherMonth?i.value.getTime()>e._date.getTime()?1:-1:0;n[l].children[0].innerHTML=t._getWeekNumber(new Date(e._date.getFullYear(),e._date.getMonth()+s,i.value.getDate()))}}_setRestrictedDates(e){const t=this,a=t.$.monthsContainer.children;for(let e=0;e<a.length;e++)t._getMonthCells(a[e]).map((e=>{t._setCellState(e,"restricted",!1)}));if(t._viewDates){const a=function(e){for(let a=0;a<t._viewDates.length;a++)if(t._viewDates[a].getFullYear()===e.getFullYear()&&t._viewDates[a].getMonth()===e.getMonth())return!0};for(let n=0;n<e.length;n++)if(a(e[n])){const a=t._getCellByDate(e[n]);t._setCellState(a,"restricted",!0)}}}_setScrollButtonsNavigationMode(){const e=this;"landscape"!==e.scrollButtonsNavigationMode?(e.$.previousMonthButton&&(e.$.previousMonthButton.$.button.firstElementChild.className="smart-arrow-down smart-arrow"),e.$.nextMonthButton&&(e.$.nextMonthButton.$.button.firstElementChild.className="smart-arrow-up smart-arrow")):(e.$.previousMonthButton&&(e.$.previousMonthButton.$.button.firstElementChild.className="smart-arrow-left smart-arrow"),e.$.nextMonthButton&&(e.$.nextMonthButton.$.button.firstElementChild.className="smart-arrow-right smart-arrow")),e._applyAnimationSettings(!0)}_refreshTitle(){const e=this;let t=e.selectedDates.length>0?e.selectedDates[e.selectedDates.length-1]:new Date;if(e.titleTemplate){if("function"==typeof e.titleTemplate)return;let a=e._layoutTemplates.filter((t=>t.selector===e.$.title))[0],n=document.importNode(a.template.content,!0);if(a.bindings.length>0){let l=n.childNodes[a.bindings[0].childNodeIndex];return t=t.toLocaleDateString(e.locale,{year:e.yearFormat,weekday:"short",month:"short",day:"numeric"}),void(a.selector.childNodes[a.bindings[0].childNodeIndex].innerHTML=l.innerHTML.replace(a.bindings[0].bindingString,t))}}e.$.title.children[0].innerHTML=t.toLocaleDateString(e.locale,{year:e.yearFormat}),e.$.title.children[1].innerHTML="landscape"===e.view?t.toLocaleDateString(e.locale,{weekday:"short"})+",</br>"+t.toLocaleDateString(e.locale,{month:"short",day:"numeric"}):t.toLocaleDateString(e.locale,{weekday:"short"})+", "+t.toLocaleDateString(e.locale,{month:"short",day:"numeric"})}_setWeeksVisibility(e){const t=this,a=e.children;let n;function l(e){(function(e){for(let t=1;t<e.children.length;t++)if(!e.children[t].classList.contains("smart-visibility-hidden"))return!1;return!0})(e)||n>=t.weeks?e.classList.add("smart-hidden"):n<t.weeks&&(e.classList.remove("smart-hidden"),n++)}for(let e=0;e<a.length;e++){let i=a[e].getElementsByClassName("smart-calendar-week");i=[].slice.call(i);let s=t._selectedCells.filter((t=>t.closest(".smart-calendar-month")===a[e]));if(6!==t.weeks)if(n=0,s.length>0){let e=s[s.length-1],t=i.indexOf(e.parentElement);for(let e=t;e<i.length;e++)l(i[e]);for(let e=t-1;e>=0;e--)l(i[e])}else for(let e=0;e<i.length;e++)l(i[e]);else i.map((e=>e.classList.remove("smart-hidden")))}}_refreshHeaderElements(){const e=this,t=document.activeElement.closest("smart-calendar")===e,a=e._animationStarted?e.$.nextMonthsContainer:e.$.dateViewContainer;let n,l,i=e._viewDates[e._viewDates.length-1],s=e._viewDates.map((e=>e.getFullYear()));if("month"===e.displayMode||"list"!==e.displayModeView){if("classic"===e.calendarMode&&e.$.monthElement&&e.$.monthElement instanceof HTMLDivElement){const t=document.createElement("smart-input");t.setAttribute("smart-id","monthElement"),t.classList.add("smart-calendar-month-element"),t.dropDownPosition="bottom",t.selectionMode="one",t.disabled=e.disabled,t.rightToLeft=e.rightToLeft,t.theme=e.theme,t.dropDownWidth=e.dropDownWidth,t.dropDownHeight=e.dropDownHeight,t.readonly=!0,t.dropDownButtonPosition="right";const a=e.$.monthElement;e.$.monthElement.parentNode.insertBefore(t,e.$.monthElement),e.$.monthElement=t,a.remove()}if(e.$.previousMonthButton&&!e.disabled&&("month"!==e.displayMode&&e.$.dateViewContainer.children[0].value?l="year"===e.displayMode?a.children[0].value.getFullYear()-1:a.children[1].value.getFullYear()-1:e._viewDates[0].getMonth()-1<0?(n=11,l=e._viewDates[0].getFullYear()-1):(n=e._viewDates[0].getMonth()-1,l=e._viewDates[0].getFullYear()),e.$.previousMonthButton.disabled=l<e.min.getFullYear()||l===e.min.getFullYear()&&n<e.min.getMonth(),e.$.previousMonthButton.disabled&&t&&e.$.body.focus()),e.$.nextMonthButton&&!e.disabled&&("month"!==e.displayMode&&e.$.dateViewContainer.children[0].value?l="year"===e.displayMode?a.children[0].value.getFullYear()+1:a.children[1].value.getFullYear()+11:i.getMonth()+1>11?(n=0,l=i.getFullYear()+1):(n=i.getMonth()+1,l=i.getFullYear()),e.$.nextMonthButton.disabled=l>e.max.getFullYear()||l===e.max.getFullYear()&&n>e.max.getMonth(),e.$.nextMonthButton.disabled&&t&&e.$.body.focus()),"classic"===e.calendarMode&&e.$.monthElement){let t=[...e._monthsNames];if(s.indexOf(e.min.getFullYear())>-1)for(let a=0;a<e.min.getMonth();a++)t[a]="";if(s.indexOf(e.max.getFullYear())>-1)for(let a=e.max.getMonth()+1;a<t.length;a++)t[a]="";t=t.filter((e=>""!==e));const a=Math.max(0,e.$.monthElement.selectedIndex);e.$.monthElement.dataSource=t,e._changeEventFired=0!==e.$.monthElement.selectedIndex,e.shadowRoot?e._setMonthElementPropertyInShadowDOM("selectedIndex",e._viewDates[0].getMonth()):e.$.monthElement.selectedIndex=a,e._changeEventFired=0}e.$.previousYearButton&&!e.disabled&&(l=e._viewDates[0].getFullYear()-1,e.$.previousYearButton.disabled=l<e.min.getFullYear(),e.$.previousYearButton.disabled&&t&&e.$.body.focus()),e.$.nextYearButton&&!e.disabled&&(l=i.getFullYear()+1,e.$.nextYearButton.disabled=l>e.max.getFullYear(),e.$.nextYearButton.disabled&&t&&e.$.body.focus()),e.$.yearElement&&(e.$.yearElement.value=s[0],e.$.yearElement.disabled=i.getFullYear()+1>e.max.getFullYear()&&e._viewDates[0].getFullYear()-1<e.min.getFullYear())}}_setMonthElementPropertyInShadowDOM(e,t){const a=this.$.monthElement,n=a.context;a.context=document,this.$.monthElement[e]=t,a.context=n}_refreshHeaderTitle(){const e=this;let t;function a(){if("month"!==e.displayMode){if("list"===e.displayModeView){const a=e.$.listViewContainer;if(!a)return;const n=a.querySelectorAll("li");if(!n.length)return"";let l;a.querySelector("li.active")&&(l=a.querySelector("li.active").getAttribute("value")),t="year"===e.displayMode?new Date(l||n[0].getAttribute("value")).getFullYear():new Date(n[0].getAttribute("value")).getFullYear()+" - "+new Date(n[n.length-1].getAttribute("value")).getFullYear()}else if(e.$.dateViewContainer.children[0].value){let a=e._animationStarted?e.$.nextMonthsContainer.children:e.$.dateViewContainer.children;t="year"===e.displayMode?a[0].value.getFullYear():a[1].value.getFullYear()+" - "+a[a.length-2].value.getFullYear()}if(t)return t}const a=e._viewDates.slice(0).sort(((e,t)=>e.getTime()-t.getTime())),n=a[0],l=a[a.length-1];n.setDate(2);let i=e.monthNameFormat;return"firstTwoLetters"===i&&(i="long"),t=n.toLocaleDateString(e.locale,{year:e.yearFormat,month:i}),e.months>1&&(l.setDate(2),t+=" - "+l.toLocaleDateString(e.locale,{year:e.yearFormat,month:i})),t}if("default"===e.calendarMode&&(e.$.defaultHeaderDate.innerHTML=a()),"function"==typeof e.headerTemplate||!e._layoutTemplates)return;let n=e._layoutTemplates.filter((t=>t.selector===e.$.header))[0];if(!n)return;let l=document.importNode(n.template.content,!0);if(n.bindings.length>0){const t=l.childNodes[n.bindings[0].childNodeIndex];(e.shadowRoot?e:n.selector).childNodes[n.bindings[0].childNodeIndex].innerHTML=t.innerHTML.replace(n.bindings[0].bindingString,e.dateFormatFunction?e.dateFormatFunction(e._viewDates):a())}}_updateWeeksVisibility(e,t){const a=this;let n=(t||a._focusedCell).parentElement;function l(){for(let e=o;e<s.length;e++)if(s[e].classList.contains("smart-hidden")&&!r(s[e])&&(s[e].classList.remove("smart-hidden"),d++,d===a.weeks))return!0}function i(){for(let e=o;e>=0;--e)if(s[e].classList.contains("smart-hidden")&&!r(s[e])&&(s[e].classList.remove("smart-hidden"),d++,d===a.weeks))return!0}if(!t&&!n.classList.contains("smart-hidden"))return;const s=[].slice.call(n.parentElement.children),o=s.indexOf(n),r=function(e){for(let t=1;t<e.children.length;t++)if(!e.children[t].classList.contains("smart-visibility-hidden"))return!1;return!0};let d=0;if(s.map((e=>e.classList.add("smart-hidden"))),e>0){if(l())return;i()}else{if(i())return;l()}}_getValidDates(e){let t=[];function a(e){if(e instanceof Date)return e;if(Smart.Utilities.DateTime&&e instanceof Smart.Utilities.DateTime)return e.toDate();if("string"==typeof e){if("new Date()"===e.trim()||"new Smart.Utilities.DateTime()"===e.trim())return new Date;let t=/(\d+[,-.\/]{1}\s*\d+[,-.\/]{1}\s*\d+)/;const a=()=>(e=e.replace(/[,-.\/]/g,",").split(",")).length>2?e=new Date(parseInt(e[0]),parseInt(e[1])-1,parseInt(e[2])):new Date;return t.test(e)&&(e=t.exec(e)[0].replace(/[,-.\/]/g,",").split(","))?new Date(parseInt(e[0]),parseInt(e[1])-1,parseInt(e[2])):a()}}if(void 0===e)return null;if(Array.isArray(e))for(let n=0;n<e.length;n++)t.push(a(e[n]));else t.push(a(e));return t=t.filter((e=>e&&"Invalid Date"!==e.toDateString())),t.map((e=>e.setHours(0,0,0,0))),t}_getValidDate(e){const t=this._getValidDates(e);return t.length>0?t[0]:null}_validateSelectedDates(e){const t=this;let a=[];e||(e=t.selectedDates);let n=e.slice(0),l=function(e){for(let a=0;a<t.restrictedDates.length;a++)if(t.restrictedDates[a].getTime()===e.getTime())return!0};t.selectedDates=n.filter((function(e){if(e.getTime()>=t.min.getTime()&&e.getTime()<=t.max.getTime()&&!l(e))return!0;a.push(e)})),t._viewDates&&(a.map((e=>t._selectDate(e))),t._focusCell())}_validateMinMax(e,t,a){const n=this;switch(e){case"min":t=n._getValidDate(n[e]),n.min=t||a||n.properties.min.defaultValue;break;case"max":t=n._getValidDate(n[e]),n.max=t||a||n.properties.max.defaultValue;break;default:t=n._getValidDate(n.min),n.min=t||a||n.properties.min.defaultValue,t=n._getValidDate(n.max),n.max=t||a||n.properties.max.defaultValue}n.min=n.min.getTime()>n.max.getTime()?n.max:n.min,n.min.setHours(0,0,0,0),n.max.setHours(0,0,0,0);let l,i=n.$.monthsContainer.children;if(n._viewDates){if(n._viewDates[0].getTime()>n.max.getTime()||n._viewDates[0].getTime()<n.min.getTime())return void n._handleMonths();for(let e=0;e<i.length;e++){l=n._getMonthCells(i[e]);for(let t=0;t<l.length;t++){const a=l[t];if(a.value.getTime()>=n.min.getTime()&&a.value.getTime()<=n.max.getTime())n._setCellState(a,"restricted",!1),a.value.getMonth()===i[e]._date.getMonth()?a.classList.remove("smart-visibility-hidden"):n.hideOtherMonthDays||(n._setCellState(a,"otherMonth",!0),a.classList.remove("smart-visibility-hidden")),"month"!==n.displayMode&&n._setCellState(a,"otherMonth",!1);else{if(a.otherMonth){if(a.classList.contains("smart-visibility-hidden")){n._setCellState(a,"restricted",!1);continue}}else n._setCellState(a,"restricted",!0);"month"!==n.displayMode&&(a.classList.remove("smart-visibility-hidden"),n._setCellState(a,"otherMonth",!0))}}}}}_setCellState(e,t,a){e[t]=a;const n=Smart.Utilities.Core.toDash(t);a?(e.setAttribute(n,""),"selected"===t?e.setAttribute("aria-selected",!0):"today"===t?e.setAttribute("aria-current","date"):"restricted"===t?e.removeAttribute("aria-selected"):"disabled"===t&&(e.removeAttribute("aria-selected"),e.setAttribute("aria-disabled",!0))):(e.removeAttribute(n),"selected"===t?"none"===this.selectionMode||e.restricted||e.disabled?e.removeAttribute("aria-selected"):e.setAttribute("aria-selected",!1):"today"===t?e.removeAttribute("aria-current"):"restricted"!==t||e.disabled?"disabled"===t&&(e.removeAttribute("aria-disabled"),e.restricted||e.setAttribute("aria-selected",!1)):e.setAttribute("aria-selected",!1))}_validateTemplate(e,t){if(null===t||!t)return;if("function"==typeof t)return;const a=this;if("content"in document.createElement("template")){if("string"==typeof t&&(t=document.getElementById(t)),null!==t&&"content"in t)return t;a.error(a.localize("invalidTemplate",{elementType:a.nodeName.toLowerCase(),property:e}))}else a.error(a.localize("htmlTemplateNotSuported",{elementType:a.nodeName.toLowerCase()}))}_weeksDownHandler(e,t){const a=this,n=t.value;let l;if(a.$.body.contains(t))if(t.otherMonth&&(l=t.value.getTime()>t.closest(".smart-calendar-month")._date.getTime()?1:-1),n&&a.hasRippleAnimation&&Smart.Utilities.Animation.Ripple.animate(t,e.pageX,e.pageY),l){if(a._isDateInView(n))return;a.disableAutoNavigation||a.navigate(l*a.months)}else(t=a._getCellByDate(n))&&(t.disabled||t.restricted)||a._handleDateSelection(t)}_firstDayOfWeekValidator(e,t){return Math.min(Math.max(0,isNaN(t)?6:t),6)}_weeksValidator(e,t){return Math.min(Math.max(1,isNaN(t)?6:t),6)}_monthsValidator(e,t){return Math.min(Math.max(1,isNaN(t)?1:t),12)}});
@@ -0,0 +1,6 @@
1
+
2
+ /* Smart UI v15.0.11 (2023-02-01)
3
+ Copyright (c) 2011-2023 jQWidgets.
4
+ License: https://htmlelements.com/license/ */ //
5
+
6
+ Smart("smart-card",class extends Smart.ContentElement{static get properties(){return{dataSource:{value:null,type:"object?",reflectToAttribute:!1},itemTemplate:{value:null,type:"any?",reflectToAttribute:!1},contentHandler:{value:null,type:"function?",reflectToAttribute:!1}}}static get listeners(){return{mouseenter:"_mouseEnterHandler",mouseleave:"_mouseLeaveHandler",swipeleft:"_swipeHandler",swiperight:"_swipeHandler",swipetop:"_swipeHandler",swipebottom:"_swipeHandler"}}static get styleUrls(){return["smart.card.css"]}template(){return'<div id="container" inner-h-t-m-l="[[innerHTML]]" role="presentation">\n <content></content>\n </div>'}propertyChangedHandler(e,t,n){super.propertyChangedHandler(e,t,n);const r=this;switch(e){case"itemTemplate":r._template=r._handleTemplate(),r.innerHTML=r._processTemplate(),r.contentHandler&&r.contentHandler(r);break;case"dataSource":r.innerHTML=r._processTemplate(),r.contentHandler&&r.contentHandler(r);break;case"contentHandler":r.contentHandler&&r.contentHandler(r)}}ready(){super.ready()}render(){const e=this;e.setAttribute("role","group"),e._template=e._handleTemplate(),e._template.hasBindings?e.innerHTML=e._processTemplate():e.itemTemplate&&(e.innerHTML=e._template.content),e.contentHandler&&e.contentHandler(e),super.render()}_handleTemplate(){const e=this;let t=e.itemTemplate,n="",r=!1;return e.itemTemplate?t instanceof HTMLElement?n=t.innerHTML:(t=document.getElementById(t),n=t?t.innerHTML:""):n=e.innerHTML,/{{\w+}}/g.exec(n)&&(r=!0),{content:n,hasBindings:r}}_processTemplate(){const e=this,t=e._template.content.match(/{{\w+}}/g),n=e.dataSource||{};let r=e._template.content;return t&&0!==t.length?(t.forEach((function(e){const t=e.replace("{{","").replace("}}","");let a=n[t];void 0===a&&(a=""),r=r.replace(e,a)})),r):r}_swipeHandler(){}});