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.
- package/bootstrap/source/smart.element.js +1 -1
- package/framework/smart.element.js +1 -1
- package/package.json +1 -1
- package/source/angular/accordion/index.ts +1 -0
- package/source/angular/accordion/public_api.ts +5 -0
- package/source/angular/accordion/smart.accordion.module.ts +13 -0
- package/source/angular/accordion/smart.accordion.ts +370 -0
- package/source/angular/accordion/smart.accordionitem.ts +142 -0
- package/source/angular/accordion/smart.element.ts +104 -0
- package/source/angular/array/index.ts +1 -0
- package/source/angular/array/public_api.ts +3 -0
- package/source/angular/array/smart.array.module.ts +12 -0
- package/source/angular/array/smart.array.ts +817 -0
- package/source/angular/array/smart.element.ts +104 -0
- package/source/angular/barcode/index.ts +1 -0
- package/source/angular/barcode/public_api.ts +3 -0
- package/source/angular/barcode/smart.barcode.module.ts +12 -0
- package/source/angular/barcode/smart.barcode.ts +288 -0
- package/source/angular/barcode/smart.element.ts +104 -0
- package/source/angular/bootstrap/bootstrap.button.ts +160 -0
- package/source/angular/bootstrap/bootstrap.checkbox.ts +165 -0
- package/source/angular/bootstrap/bootstrap.circular.ts +151 -0
- package/source/angular/bootstrap/bootstrap.dropdown.ts +253 -0
- package/source/angular/bootstrap/bootstrap.fileinput.ts +133 -0
- package/source/angular/bootstrap/bootstrap.input.ts +160 -0
- package/source/angular/bootstrap/bootstrap.inputgroup.ts +178 -0
- package/source/angular/bootstrap/bootstrap.modal.ts +204 -0
- package/source/angular/bootstrap/bootstrap.progressbar.ts +151 -0
- package/source/angular/bootstrap/bootstrap.radiobutton.ts +156 -0
- package/source/angular/bootstrap/bootstrap.range.ts +133 -0
- package/source/angular/bootstrap/bootstrap.splitbutton.ts +253 -0
- package/source/angular/bootstrap/bootstrap.switchbutton.ts +165 -0
- package/source/angular/bootstrap/bootstrap.tabs.ts +175 -0
- package/source/angular/bootstrap/bootstrap.textarea.ts +160 -0
- package/source/angular/bootstrap/bootstrap.togglebutton.ts +156 -0
- package/source/angular/bootstrap/index.ts +1 -0
- package/source/angular/bootstrap/public_api.ts +17 -0
- package/source/angular/bootstrap/smart.element.ts +104 -0
- package/source/angular/breadcrumb/index.ts +1 -0
- package/source/angular/breadcrumb/public_api.ts +3 -0
- package/source/angular/breadcrumb/smart.breadcrumb.module.ts +12 -0
- package/source/angular/breadcrumb/smart.breadcrumb.ts +306 -0
- package/source/angular/breadcrumb/smart.element.ts +104 -0
- package/source/angular/button/index.ts +1 -0
- package/source/angular/button/public_api.ts +9 -0
- package/source/angular/button/smart.button.module.ts +15 -0
- package/source/angular/button/smart.button.ts +230 -0
- package/source/angular/button/smart.element.ts +104 -0
- package/source/angular/button/smart.powerbutton.ts +283 -0
- package/source/angular/button/smart.repeatbutton.ts +214 -0
- package/source/angular/button/smart.togglebutton.ts +235 -0
- package/source/angular/buttongroup/index.ts +1 -0
- package/source/angular/buttongroup/public_api.ts +3 -0
- package/source/angular/buttongroup/smart.buttongroup.module.ts +12 -0
- package/source/angular/buttongroup/smart.buttongroup.ts +229 -0
- package/source/angular/buttongroup/smart.element.ts +104 -0
- package/source/angular/calendar/index.ts +1 -0
- package/source/angular/calendar/public_api.ts +3 -0
- package/source/angular/calendar/smart.calendar.module.ts +12 -0
- package/source/angular/calendar/smart.calendar.ts +787 -0
- package/source/angular/calendar/smart.element.ts +104 -0
- package/source/angular/card/index.ts +1 -0
- package/source/angular/card/public_api.ts +3 -0
- package/source/angular/card/smart.card.module.ts +12 -0
- package/source/angular/card/smart.card.ts +220 -0
- package/source/angular/card/smart.element.ts +104 -0
- package/source/angular/cardview/index.ts +1 -0
- package/source/angular/cardview/public_api.ts +3 -0
- package/source/angular/cardview/smart.cardview.module.ts +12 -0
- package/source/angular/cardview/smart.cardview.ts +573 -0
- package/source/angular/cardview/smart.element.ts +104 -0
- package/source/angular/carousel/index.ts +1 -0
- package/source/angular/carousel/public_api.ts +3 -0
- package/source/angular/carousel/smart.carousel.module.ts +12 -0
- package/source/angular/carousel/smart.carousel.ts +414 -0
- package/source/angular/carousel/smart.element.ts +104 -0
- package/source/angular/chart/index.ts +1 -0
- package/source/angular/chart/public_api.ts +3 -0
- package/source/angular/chart/smart.chart.module.ts +12 -0
- package/source/angular/chart/smart.chart.ts +930 -0
- package/source/angular/chart/smart.element.ts +104 -0
- package/source/angular/checkbox/index.ts +1 -0
- package/source/angular/checkbox/public_api.ts +3 -0
- package/source/angular/checkbox/smart.checkbox.module.ts +12 -0
- package/source/angular/checkbox/smart.checkbox.ts +341 -0
- package/source/angular/checkbox/smart.element.ts +104 -0
- package/source/angular/checkinput/index.ts +1 -0
- package/source/angular/checkinput/public_api.ts +3 -0
- package/source/angular/checkinput/smart.checkinput.module.ts +12 -0
- package/source/angular/checkinput/smart.checkinput.ts +497 -0
- package/source/angular/checkinput/smart.element.ts +104 -0
- package/source/angular/chip/index.ts +1 -0
- package/source/angular/chip/public_api.ts +3 -0
- package/source/angular/chip/smart.chip.module.ts +12 -0
- package/source/angular/chip/smart.chip.ts +221 -0
- package/source/angular/chip/smart.element.ts +104 -0
- package/source/angular/colorinput/index.ts +1 -0
- package/source/angular/colorinput/public_api.ts +3 -0
- package/source/angular/colorinput/smart.colorinput.module.ts +12 -0
- package/source/angular/colorinput/smart.colorinput.ts +456 -0
- package/source/angular/colorinput/smart.element.ts +104 -0
- package/source/angular/colorpanel/index.ts +1 -0
- package/source/angular/colorpanel/public_api.ts +3 -0
- package/source/angular/colorpanel/smart.colorpanel.module.ts +12 -0
- package/source/angular/colorpanel/smart.colorpanel.ts +501 -0
- package/source/angular/colorpanel/smart.element.ts +104 -0
- package/source/angular/colorpicker/index.ts +1 -0
- package/source/angular/colorpicker/public_api.ts +3 -0
- package/source/angular/colorpicker/smart.colorpicker.module.ts +12 -0
- package/source/angular/colorpicker/smart.colorpicker.ts +756 -0
- package/source/angular/colorpicker/smart.element.ts +104 -0
- package/source/angular/columnpanel/index.ts +1 -0
- package/source/angular/columnpanel/public_api.ts +3 -0
- package/source/angular/columnpanel/smart.columnpanel.module.ts +12 -0
- package/source/angular/columnpanel/smart.columnpanel.ts +183 -0
- package/source/angular/columnpanel/smart.element.ts +104 -0
- package/source/angular/combobox/index.ts +1 -0
- package/source/angular/combobox/public_api.ts +7 -0
- package/source/angular/combobox/smart.combobox.module.ts +14 -0
- package/source/angular/combobox/smart.combobox.ts +1125 -0
- package/source/angular/combobox/smart.element.ts +104 -0
- package/source/angular/combobox/smart.listitem.ts +162 -0
- package/source/angular/combobox/smart.listitemsgroup.ts +72 -0
- package/source/angular/countryinput/index.ts +1 -0
- package/source/angular/countryinput/public_api.ts +3 -0
- package/source/angular/countryinput/smart.countryinput.module.ts +12 -0
- package/source/angular/countryinput/smart.countryinput.ts +391 -0
- package/source/angular/countryinput/smart.element.ts +104 -0
- package/source/angular/customizationdialog/index.ts +1 -0
- package/source/angular/customizationdialog/public_api.ts +3 -0
- package/source/angular/customizationdialog/smart.customizationdialog.module.ts +12 -0
- package/source/angular/customizationdialog/smart.customizationdialog.ts +311 -0
- package/source/angular/customizationdialog/smart.element.ts +104 -0
- package/source/angular/dateinput/index.ts +1 -0
- package/source/angular/dateinput/public_api.ts +3 -0
- package/source/angular/dateinput/smart.dateinput.module.ts +12 -0
- package/source/angular/dateinput/smart.dateinput.ts +465 -0
- package/source/angular/dateinput/smart.element.ts +104 -0
- package/source/angular/daterangeinput/index.ts +1 -0
- package/source/angular/daterangeinput/public_api.ts +3 -0
- package/source/angular/daterangeinput/smart.daterangeinput.module.ts +12 -0
- package/source/angular/daterangeinput/smart.daterangeinput.ts +456 -0
- package/source/angular/daterangeinput/smart.element.ts +104 -0
- package/source/angular/datetimepicker/index.ts +1 -0
- package/source/angular/datetimepicker/public_api.ts +3 -0
- package/source/angular/datetimepicker/smart.datetimepicker.module.ts +12 -0
- package/source/angular/datetimepicker/smart.datetimepicker.ts +835 -0
- package/source/angular/datetimepicker/smart.element.ts +104 -0
- package/source/angular/dockinglayout/index.ts +1 -0
- package/source/angular/dockinglayout/public_api.ts +3 -0
- package/source/angular/dockinglayout/smart.dockinglayout.module.ts +12 -0
- package/source/angular/dockinglayout/smart.dockinglayout.ts +866 -0
- package/source/angular/dockinglayout/smart.element.ts +104 -0
- package/source/angular/dropdownbutton/index.ts +1 -0
- package/source/angular/dropdownbutton/public_api.ts +3 -0
- package/source/angular/dropdownbutton/smart.dropdownbutton.module.ts +12 -0
- package/source/angular/dropdownbutton/smart.dropdownbutton.ts +542 -0
- package/source/angular/dropdownbutton/smart.element.ts +104 -0
- package/source/angular/dropdownlist/index.ts +1 -0
- package/source/angular/dropdownlist/public_api.ts +7 -0
- package/source/angular/dropdownlist/smart.dropdownlist.module.ts +14 -0
- package/source/angular/dropdownlist/smart.dropdownlist.ts +1082 -0
- package/source/angular/dropdownlist/smart.element.ts +104 -0
- package/source/angular/dropdownlist/smart.listitem.ts +162 -0
- package/source/angular/dropdownlist/smart.listitemsgroup.ts +72 -0
- package/source/angular/editor/index.ts +1 -0
- package/source/angular/editor/public_api.ts +3 -0
- package/source/angular/editor/smart.editor.module.ts +12 -0
- package/source/angular/editor/smart.editor.ts +1307 -0
- package/source/angular/editor/smart.element.ts +104 -0
- package/source/angular/element/index.ts +1 -0
- package/source/angular/element/public_api.ts +3 -0
- package/source/angular/element/smart.element.module.ts +10 -0
- package/source/angular/element/smart.element.ts +104 -0
- package/source/angular/fileupload/index.ts +1 -0
- package/source/angular/fileupload/public_api.ts +3 -0
- package/source/angular/fileupload/smart.element.ts +104 -0
- package/source/angular/fileupload/smart.fileupload.module.ts +12 -0
- package/source/angular/fileupload/smart.fileupload.ts +517 -0
- package/source/angular/filterbuilder/index.ts +1 -0
- package/source/angular/filterbuilder/public_api.ts +3 -0
- package/source/angular/filterbuilder/smart.element.ts +104 -0
- package/source/angular/filterbuilder/smart.filterbuilder.module.ts +12 -0
- package/source/angular/filterbuilder/smart.filterbuilder.ts +506 -0
- package/source/angular/filterpanel/index.ts +1 -0
- package/source/angular/filterpanel/public_api.ts +3 -0
- package/source/angular/filterpanel/smart.element.ts +104 -0
- package/source/angular/filterpanel/smart.filterpanel.module.ts +12 -0
- package/source/angular/filterpanel/smart.filterpanel.ts +334 -0
- package/source/angular/form/index.ts +1 -0
- package/source/angular/form/public_api.ts +7 -0
- package/source/angular/form/smart.element.ts +104 -0
- package/source/angular/form/smart.form.module.ts +14 -0
- package/source/angular/form/smart.form.ts +288 -0
- package/source/angular/form/smart.formcontrol.ts +336 -0
- package/source/angular/form/smart.formgroup.ts +220 -0
- package/source/angular/ganttchart/index.ts +1 -0
- package/source/angular/ganttchart/public_api.ts +3 -0
- package/source/angular/ganttchart/smart.element.ts +104 -0
- package/source/angular/ganttchart/smart.ganttchart.module.ts +12 -0
- package/source/angular/ganttchart/smart.ganttchart.ts +2142 -0
- package/source/angular/gauge/index.ts +1 -0
- package/source/angular/gauge/public_api.ts +3 -0
- package/source/angular/gauge/smart.element.ts +104 -0
- package/source/angular/gauge/smart.gauge.module.ts +12 -0
- package/source/angular/gauge/smart.gauge.ts +650 -0
- package/source/angular/grid/index.ts +1 -0
- package/source/angular/grid/public_api.ts +3 -0
- package/source/angular/grid/smart.element.ts +104 -0
- package/source/angular/grid/smart.grid.module.ts +12 -0
- package/source/angular/grid/smart.grid.ts +3091 -0
- package/source/angular/grouppanel/index.ts +1 -0
- package/source/angular/grouppanel/public_api.ts +3 -0
- package/source/angular/grouppanel/smart.element.ts +104 -0
- package/source/angular/grouppanel/smart.grouppanel.module.ts +12 -0
- package/source/angular/grouppanel/smart.grouppanel.ts +220 -0
- package/source/angular/index.d.ts +32978 -0
- package/source/angular/input/index.ts +1 -0
- package/source/angular/input/public_api.ts +3 -0
- package/source/angular/input/smart.element.ts +104 -0
- package/source/angular/input/smart.input.module.ts +12 -0
- package/source/angular/input/smart.input.ts +590 -0
- package/source/angular/kanban/index.ts +1 -0
- package/source/angular/kanban/public_api.ts +3 -0
- package/source/angular/kanban/smart.element.ts +104 -0
- package/source/angular/kanban/smart.kanban.module.ts +12 -0
- package/source/angular/kanban/smart.kanban.ts +1682 -0
- package/source/angular/layout/index.ts +1 -0
- package/source/angular/layout/public_api.ts +11 -0
- package/source/angular/layout/smart.element.ts +104 -0
- package/source/angular/layout/smart.layout.module.ts +16 -0
- package/source/angular/layout/smart.layout.ts +363 -0
- package/source/angular/layout/smart.layoutgroup.ts +140 -0
- package/source/angular/layout/smart.layoutitem.ts +129 -0
- package/source/angular/layout/smart.tablayoutgroup.ts +147 -0
- package/source/angular/layout/smart.tablayoutitem.ts +138 -0
- package/source/angular/led/index.ts +1 -0
- package/source/angular/led/public_api.ts +3 -0
- package/source/angular/led/smart.element.ts +104 -0
- package/source/angular/led/smart.led.module.ts +12 -0
- package/source/angular/led/smart.led.ts +280 -0
- package/source/angular/listbox/index.ts +1 -0
- package/source/angular/listbox/public_api.ts +7 -0
- package/source/angular/listbox/smart.element.ts +104 -0
- package/source/angular/listbox/smart.listbox.module.ts +14 -0
- package/source/angular/listbox/smart.listbox.ts +1007 -0
- package/source/angular/listbox/smart.listitem.ts +162 -0
- package/source/angular/listbox/smart.listitemsgroup.ts +72 -0
- package/source/angular/listmenu/index.ts +1 -0
- package/source/angular/listmenu/public_api.ts +7 -0
- package/source/angular/listmenu/smart.element.ts +104 -0
- package/source/angular/listmenu/smart.listmenu.module.ts +14 -0
- package/source/angular/listmenu/smart.listmenu.ts +597 -0
- package/source/angular/listmenu/smart.menuitem.ts +126 -0
- package/source/angular/listmenu/smart.menuitemsgroup.ts +153 -0
- package/source/angular/map/index.ts +1 -0
- package/source/angular/map/public_api.ts +3 -0
- package/source/angular/map/smart.element.ts +104 -0
- package/source/angular/map/smart.map.module.ts +12 -0
- package/source/angular/map/smart.map.ts +128 -0
- package/source/angular/maskedtextbox/index.ts +1 -0
- package/source/angular/maskedtextbox/public_api.ts +3 -0
- package/source/angular/maskedtextbox/smart.element.ts +104 -0
- package/source/angular/maskedtextbox/smart.maskedtextbox.module.ts +12 -0
- package/source/angular/maskedtextbox/smart.maskedtextbox.ts +539 -0
- package/source/angular/menu/index.ts +1 -0
- package/source/angular/menu/public_api.ts +7 -0
- package/source/angular/menu/smart.element.ts +104 -0
- package/source/angular/menu/smart.menu.module.ts +14 -0
- package/source/angular/menu/smart.menu.ts +695 -0
- package/source/angular/menu/smart.menuitem.ts +126 -0
- package/source/angular/menu/smart.menuitemsgroup.ts +153 -0
- package/source/angular/multicolumnfilterpanel/index.ts +1 -0
- package/source/angular/multicolumnfilterpanel/public_api.ts +3 -0
- package/source/angular/multicolumnfilterpanel/smart.element.ts +104 -0
- package/source/angular/multicolumnfilterpanel/smart.multicolumnfilterpanel.module.ts +12 -0
- package/source/angular/multicolumnfilterpanel/smart.multicolumnfilterpanel.ts +256 -0
- package/source/angular/multicomboinput/index.ts +1 -0
- package/source/angular/multicomboinput/public_api.ts +3 -0
- package/source/angular/multicomboinput/smart.element.ts +104 -0
- package/source/angular/multicomboinput/smart.multicomboinput.module.ts +12 -0
- package/source/angular/multicomboinput/smart.multicomboinput.ts +542 -0
- package/source/angular/multiinput/index.ts +1 -0
- package/source/angular/multiinput/public_api.ts +3 -0
- package/source/angular/multiinput/smart.element.ts +104 -0
- package/source/angular/multiinput/smart.multiinput.module.ts +12 -0
- package/source/angular/multiinput/smart.multiinput.ts +497 -0
- package/source/angular/multilinetextbox/index.ts +1 -0
- package/source/angular/multilinetextbox/public_api.ts +7 -0
- package/source/angular/multilinetextbox/smart.element.ts +104 -0
- package/source/angular/multilinetextbox/smart.listitem.ts +162 -0
- package/source/angular/multilinetextbox/smart.listitemsgroup.ts +72 -0
- package/source/angular/multilinetextbox/smart.multilinetextbox.module.ts +14 -0
- package/source/angular/multilinetextbox/smart.multilinetextbox.ts +561 -0
- package/source/angular/multisplitbutton/index.ts +1 -0
- package/source/angular/multisplitbutton/public_api.ts +7 -0
- package/source/angular/multisplitbutton/smart.element.ts +104 -0
- package/source/angular/multisplitbutton/smart.listitem.ts +162 -0
- package/source/angular/multisplitbutton/smart.listitemsgroup.ts +72 -0
- package/source/angular/multisplitbutton/smart.multisplitbutton.module.ts +14 -0
- package/source/angular/multisplitbutton/smart.multisplitbutton.ts +620 -0
- package/source/angular/numberinput/index.ts +1 -0
- package/source/angular/numberinput/public_api.ts +3 -0
- package/source/angular/numberinput/smart.element.ts +104 -0
- package/source/angular/numberinput/smart.numberinput.module.ts +12 -0
- package/source/angular/numberinput/smart.numberinput.ts +398 -0
- package/source/angular/numerictextbox/index.ts +1 -0
- package/source/angular/numerictextbox/public_api.ts +3 -0
- package/source/angular/numerictextbox/smart.element.ts +104 -0
- package/source/angular/numerictextbox/smart.numerictextbox.module.ts +12 -0
- package/source/angular/numerictextbox/smart.numerictextbox.ts +644 -0
- package/source/angular/pager/index.ts +1 -0
- package/source/angular/pager/public_api.ts +3 -0
- package/source/angular/pager/smart.element.ts +104 -0
- package/source/angular/pager/smart.pager.module.ts +12 -0
- package/source/angular/pager/smart.pager.ts +386 -0
- package/source/angular/passwordinput/index.ts +1 -0
- package/source/angular/passwordinput/public_api.ts +3 -0
- package/source/angular/passwordinput/smart.element.ts +104 -0
- package/source/angular/passwordinput/smart.passwordinput.module.ts +12 -0
- package/source/angular/passwordinput/smart.passwordinput.ts +218 -0
- package/source/angular/passwordtextbox/index.ts +1 -0
- package/source/angular/passwordtextbox/public_api.ts +3 -0
- package/source/angular/passwordtextbox/smart.element.ts +104 -0
- package/source/angular/passwordtextbox/smart.passwordtextbox.module.ts +12 -0
- package/source/angular/passwordtextbox/smart.passwordtextbox.ts +463 -0
- package/source/angular/path/index.ts +1 -0
- package/source/angular/path/public_api.ts +3 -0
- package/source/angular/path/smart.element.ts +104 -0
- package/source/angular/path/smart.path.module.ts +12 -0
- package/source/angular/path/smart.path.ts +491 -0
- package/source/angular/phoneinput/index.ts +1 -0
- package/source/angular/phoneinput/public_api.ts +3 -0
- package/source/angular/phoneinput/smart.element.ts +104 -0
- package/source/angular/phoneinput/smart.phoneinput.module.ts +12 -0
- package/source/angular/phoneinput/smart.phoneinput.ts +493 -0
- package/source/angular/pivottable/index.ts +1 -0
- package/source/angular/pivottable/public_api.ts +3 -0
- package/source/angular/pivottable/smart.element.ts +104 -0
- package/source/angular/pivottable/smart.pivottable.module.ts +12 -0
- package/source/angular/pivottable/smart.pivottable.ts +840 -0
- package/source/angular/progressbar/index.ts +1 -0
- package/source/angular/progressbar/public_api.ts +5 -0
- package/source/angular/progressbar/smart.circularprogressbar.ts +223 -0
- package/source/angular/progressbar/smart.element.ts +104 -0
- package/source/angular/progressbar/smart.progressbar.module.ts +13 -0
- package/source/angular/progressbar/smart.progressbar.ts +235 -0
- package/source/angular/qrcode/index.ts +1 -0
- package/source/angular/qrcode/public_api.ts +3 -0
- package/source/angular/qrcode/smart.element.ts +104 -0
- package/source/angular/qrcode/smart.qrcode.module.ts +12 -0
- package/source/angular/qrcode/smart.qrcode.ts +306 -0
- package/source/angular/querybuilder/index.ts +1 -0
- package/source/angular/querybuilder/public_api.ts +3 -0
- package/source/angular/querybuilder/smart.element.ts +104 -0
- package/source/angular/querybuilder/smart.querybuilder.module.ts +12 -0
- package/source/angular/querybuilder/smart.querybuilder.ts +460 -0
- package/source/angular/radiobutton/index.ts +1 -0
- package/source/angular/radiobutton/public_api.ts +3 -0
- package/source/angular/radiobutton/smart.element.ts +104 -0
- package/source/angular/radiobutton/smart.radiobutton.module.ts +12 -0
- package/source/angular/radiobutton/smart.radiobutton.ts +350 -0
- package/source/angular/rating/index.ts +1 -0
- package/source/angular/rating/public_api.ts +3 -0
- package/source/angular/rating/smart.element.ts +104 -0
- package/source/angular/rating/smart.rating.module.ts +12 -0
- package/source/angular/rating/smart.rating.ts +309 -0
- package/source/angular/scheduler/index.ts +1 -0
- package/source/angular/scheduler/public_api.ts +3 -0
- package/source/angular/scheduler/smart.element.ts +104 -0
- package/source/angular/scheduler/smart.scheduler.module.ts +12 -0
- package/source/angular/scheduler/smart.scheduler.ts +2328 -0
- package/source/angular/scrollbar/index.ts +1 -0
- package/source/angular/scrollbar/public_api.ts +3 -0
- package/source/angular/scrollbar/smart.element.ts +104 -0
- package/source/angular/scrollbar/smart.scrollbar.module.ts +12 -0
- package/source/angular/scrollbar/smart.scrollbar.ts +260 -0
- package/source/angular/slider/index.ts +1 -0
- package/source/angular/slider/public_api.ts +3 -0
- package/source/angular/slider/smart.element.ts +104 -0
- package/source/angular/slider/smart.slider.module.ts +12 -0
- package/source/angular/slider/smart.slider.ts +632 -0
- package/source/angular/sortable/index.ts +1 -0
- package/source/angular/sortable/public_api.ts +3 -0
- package/source/angular/sortable/smart.element.ts +104 -0
- package/source/angular/sortable/smart.sortable.module.ts +12 -0
- package/source/angular/sortable/smart.sortable.ts +217 -0
- package/source/angular/sortpanel/index.ts +1 -0
- package/source/angular/sortpanel/public_api.ts +3 -0
- package/source/angular/sortpanel/smart.element.ts +104 -0
- package/source/angular/sortpanel/smart.sortpanel.module.ts +12 -0
- package/source/angular/sortpanel/smart.sortpanel.ts +180 -0
- package/source/angular/splitter/index.ts +1 -0
- package/source/angular/splitter/public_api.ts +7 -0
- package/source/angular/splitter/smart.element.ts +104 -0
- package/source/angular/splitter/smart.splitter.module.ts +14 -0
- package/source/angular/splitter/smart.splitter.ts +530 -0
- package/source/angular/splitter/smart.splitterbar.ts +121 -0
- package/source/angular/splitter/smart.splitteritem.ts +192 -0
- package/source/angular/switchbutton/index.ts +1 -0
- package/source/angular/switchbutton/public_api.ts +3 -0
- package/source/angular/switchbutton/smart.element.ts +104 -0
- package/source/angular/switchbutton/smart.switchbutton.module.ts +12 -0
- package/source/angular/switchbutton/smart.switchbutton.ts +386 -0
- package/source/angular/table/index.ts +1 -0
- package/source/angular/table/public_api.ts +3 -0
- package/source/angular/table/smart.element.ts +104 -0
- package/source/angular/table/smart.table.module.ts +12 -0
- package/source/angular/table/smart.table.ts +1493 -0
- package/source/angular/tabs/index.ts +1 -0
- package/source/angular/tabs/public_api.ts +7 -0
- package/source/angular/tabs/smart.element.ts +104 -0
- package/source/angular/tabs/smart.tabitem.ts +126 -0
- package/source/angular/tabs/smart.tabitemsgroup.ts +81 -0
- package/source/angular/tabs/smart.tabs.module.ts +14 -0
- package/source/angular/tabs/smart.tabs.ts +622 -0
- package/source/angular/tank/index.ts +1 -0
- package/source/angular/tank/public_api.ts +3 -0
- package/source/angular/tank/smart.element.ts +104 -0
- package/source/angular/tank/smart.tank.module.ts +12 -0
- package/source/angular/tank/smart.tank.ts +593 -0
- package/source/angular/textarea/index.ts +1 -0
- package/source/angular/textarea/public_api.ts +3 -0
- package/source/angular/textarea/smart.element.ts +104 -0
- package/source/angular/textarea/smart.textarea.module.ts +12 -0
- package/source/angular/textarea/smart.textarea.ts +484 -0
- package/source/angular/textbox/index.ts +1 -0
- package/source/angular/textbox/public_api.ts +7 -0
- package/source/angular/textbox/smart.element.ts +104 -0
- package/source/angular/textbox/smart.listitem.ts +162 -0
- package/source/angular/textbox/smart.listitemsgroup.ts +72 -0
- package/source/angular/textbox/smart.textbox.module.ts +14 -0
- package/source/angular/textbox/smart.textbox.ts +708 -0
- package/source/angular/threedchart/index.ts +1 -0
- package/source/angular/threedchart/public_api.ts +3 -0
- package/source/angular/threedchart/smart.element.ts +104 -0
- package/source/angular/threedchart/smart.threedchart.module.ts +12 -0
- package/source/angular/threedchart/smart.threedchart.ts +1043 -0
- package/source/angular/timeinput/index.ts +1 -0
- package/source/angular/timeinput/public_api.ts +3 -0
- package/source/angular/timeinput/smart.element.ts +104 -0
- package/source/angular/timeinput/smart.timeinput.module.ts +12 -0
- package/source/angular/timeinput/smart.timeinput.ts +427 -0
- package/source/angular/timepicker/index.ts +1 -0
- package/source/angular/timepicker/public_api.ts +3 -0
- package/source/angular/timepicker/smart.element.ts +104 -0
- package/source/angular/timepicker/smart.timepicker.module.ts +12 -0
- package/source/angular/timepicker/smart.timepicker.ts +370 -0
- package/source/angular/toast/index.ts +1 -0
- package/source/angular/toast/public_api.ts +3 -0
- package/source/angular/toast/smart.element.ts +104 -0
- package/source/angular/toast/smart.toast.module.ts +12 -0
- package/source/angular/toast/smart.toast.ts +405 -0
- package/source/angular/tooltip/index.ts +1 -0
- package/source/angular/tooltip/public_api.ts +3 -0
- package/source/angular/tooltip/smart.element.ts +104 -0
- package/source/angular/tooltip/smart.tooltip.module.ts +12 -0
- package/source/angular/tooltip/smart.tooltip.ts +339 -0
- package/source/angular/tree/index.ts +1 -0
- package/source/angular/tree/public_api.ts +7 -0
- package/source/angular/tree/smart.element.ts +104 -0
- package/source/angular/tree/smart.tree.module.ts +14 -0
- package/source/angular/tree/smart.tree.ts +1042 -0
- package/source/angular/tree/smart.treeitem.ts +135 -0
- package/source/angular/tree/smart.treeitemsgroup.ts +135 -0
- package/source/angular/validator/index.ts +1 -0
- package/source/angular/validator/public_api.ts +3 -0
- package/source/angular/validator/smart.element.ts +104 -0
- package/source/angular/validator/smart.validator.module.ts +12 -0
- package/source/angular/validator/smart.validator.ts +124 -0
- package/source/angular/window/index.ts +1 -0
- package/source/angular/window/public_api.ts +3 -0
- package/source/angular/window/smart.element.ts +104 -0
- package/source/angular/window/smart.window.module.ts +12 -0
- package/source/angular/window/smart.window.ts +1180 -0
- package/source/components/smart.ui.chart.js +1 -1
- package/source/components/smart.ui.pivottable.js +1 -1
- package/source/modules/smart.3dchart.js +1 -1
- package/source/modules/smart.accordion.js +1 -1
- package/source/modules/smart.array.js +1 -1
- package/source/modules/smart.barcode.js +1 -1
- package/source/modules/smart.breadcrumb.js +1 -1
- package/source/modules/smart.button.js +1 -1
- package/source/modules/smart.buttongroup.js +1 -1
- package/source/modules/smart.calendar.js +1 -1
- package/source/modules/smart.card.js +1 -1
- package/source/modules/smart.cardview.js +1 -1
- package/source/modules/smart.carousel.js +1 -1
- package/source/modules/smart.chart.js +2 -2
- package/source/modules/smart.checkbox.js +1 -1
- package/source/modules/smart.checkinput.js +1 -1
- package/source/modules/smart.chip.js +1 -1
- package/source/modules/smart.colorinput.js +1 -1
- package/source/modules/smart.colorpanel.js +1 -1
- package/source/modules/smart.colorpicker.js +1 -1
- package/source/modules/smart.combobox.js +1 -1
- package/source/modules/smart.common.js +1 -1
- package/source/modules/smart.countryinput.js +1 -1
- package/source/modules/smart.dateinput.js +1 -1
- package/source/modules/smart.daterangeinput.js +1 -1
- package/source/modules/smart.datetimepicker.js +1 -1
- package/source/modules/smart.dockinglayout.js +1 -1
- package/source/modules/smart.dropdownbutton.js +1 -1
- package/source/modules/smart.dropdownlist.js +1 -1
- package/source/modules/smart.editor.js +1 -1
- package/source/modules/smart.element.js +1 -1
- package/source/modules/smart.fileupload.js +1 -1
- package/source/modules/smart.form.js +1 -1
- package/source/modules/smart.formulaparser.js +1 -1
- package/source/modules/smart.ganttchart.js +1 -1
- package/source/modules/smart.gauge.js +1 -1
- package/source/modules/smart.grid.js +1 -1
- package/source/modules/smart.gridpanel.js +1 -1
- package/source/modules/smart.input.js +1 -1
- package/source/modules/smart.kanban.js +1 -1
- package/source/modules/smart.layout.js +1 -1
- package/source/modules/smart.led.js +1 -1
- package/source/modules/smart.listbox.js +1 -1
- package/source/modules/smart.listmenu.js +1 -1
- package/source/modules/smart.map.js +1 -1
- package/source/modules/smart.maskedtextbox.js +1 -1
- package/source/modules/smart.menu.js +1 -1
- package/source/modules/smart.multicomboinput.js +1 -1
- package/source/modules/smart.multiinput.js +1 -1
- package/source/modules/smart.multilinetextbox.js +1 -1
- package/source/modules/smart.multisplitbutton.js +1 -1
- package/source/modules/smart.numberinput.js +1 -1
- package/source/modules/smart.numerictextbox.js +1 -1
- package/source/modules/smart.pager.js +1 -1
- package/source/modules/smart.passwordinput.js +1 -1
- package/source/modules/smart.passwordtextbox.js +1 -1
- package/source/modules/smart.path.js +1 -1
- package/source/modules/smart.phoneinput.js +1 -1
- package/source/modules/smart.pivottable.js +2 -2
- package/source/modules/smart.progressbar.js +1 -1
- package/source/modules/smart.qrcode.js +1 -1
- package/source/modules/smart.querybuilder.js +1 -1
- package/source/modules/smart.radiobutton.js +1 -1
- package/source/modules/smart.rating.js +1 -1
- package/source/modules/smart.router.js +1 -1
- package/source/modules/smart.scheduler.js +1 -1
- package/source/modules/smart.scrollbar.js +1 -1
- package/source/modules/smart.slider.js +1 -1
- package/source/modules/smart.sortable.js +1 -1
- package/source/modules/smart.splitter.js +1 -1
- package/source/modules/smart.switchbutton.js +1 -1
- package/source/modules/smart.table.js +1 -1
- package/source/modules/smart.tabs.js +1 -1
- package/source/modules/smart.tank.js +1 -1
- package/source/modules/smart.textarea.js +1 -1
- package/source/modules/smart.textbox.js +1 -1
- package/source/modules/smart.timeinput.js +1 -1
- package/source/modules/smart.timepicker.js +1 -1
- package/source/modules/smart.toast.js +1 -1
- package/source/modules/smart.tooltip.js +1 -1
- package/source/modules/smart.tree.js +1 -1
- package/source/modules/smart.validator.js +1 -1
- package/source/modules/smart.window.js +1 -1
- package/source/react/accordion/accordion.jsx +462 -0
- package/source/react/accordion/accordion.tsx +466 -0
- package/source/react/accordion/accordionitem.jsx +211 -0
- package/source/react/accordion/accordionitem.tsx +229 -0
- package/source/react/alertwindow/alertwindow.jsx +1391 -0
- package/source/react/alertwindow/alertwindow.tsx +1349 -0
- package/source/react/array/array.jsx +907 -0
- package/source/react/array/array.tsx +909 -0
- package/source/react/barcode/barcode.jsx +372 -0
- package/source/react/barcode/barcode.tsx +394 -0
- package/source/react/breadcrumb/breadcrumb.jsx +399 -0
- package/source/react/breadcrumb/breadcrumb.tsx +405 -0
- package/source/react/button/button.jsx +331 -0
- package/source/react/button/button.tsx +359 -0
- package/source/react/button/powerbutton.jsx +301 -0
- package/source/react/button/powerbutton.tsx +323 -0
- package/source/react/button/repeatbutton.jsx +325 -0
- package/source/react/button/repeatbutton.tsx +347 -0
- package/source/react/button/togglebutton.jsx +337 -0
- package/source/react/button/togglebutton.tsx +351 -0
- package/source/react/buttongroup/buttongroup.jsx +340 -0
- package/source/react/buttongroup/buttongroup.tsx +362 -0
- package/source/react/calendar/calendar.jsx +868 -0
- package/source/react/calendar/calendar.tsx +866 -0
- package/source/react/card/card.jsx +313 -0
- package/source/react/card/card.tsx +323 -0
- package/source/react/cardview/cardview.jsx +664 -0
- package/source/react/cardview/cardview.tsx +656 -0
- package/source/react/carousel/carousel.jsx +546 -0
- package/source/react/carousel/carousel.tsx +556 -0
- package/source/react/chart/chart.jsx +1014 -0
- package/source/react/chart/chart.tsx +996 -0
- package/source/react/checkbox/checkbox.jsx +361 -0
- package/source/react/checkbox/checkbox.tsx +375 -0
- package/source/react/checkinput/checkinput.jsx +566 -0
- package/source/react/checkinput/checkinput.tsx +588 -0
- package/source/react/chip/chip.jsx +329 -0
- package/source/react/chip/chip.tsx +351 -0
- package/source/react/colorinput/colorinput.jsx +516 -0
- package/source/react/colorinput/colorinput.tsx +538 -0
- package/source/react/colorpanel/colorpanel.jsx +570 -0
- package/source/react/colorpanel/colorpanel.tsx +580 -0
- package/source/react/colorpicker/colorpicker.jsx +846 -0
- package/source/react/colorpicker/colorpicker.tsx +824 -0
- package/source/react/columnpanel/columnpanel.jsx +276 -0
- package/source/react/columnpanel/columnpanel.tsx +294 -0
- package/source/react/combobox/combobox.jsx +1212 -0
- package/source/react/combobox/combobox.tsx +1198 -0
- package/source/react/combobox/listitem.jsx +279 -0
- package/source/react/combobox/listitem.tsx +305 -0
- package/source/react/combobox/listitemsgroup.jsx +159 -0
- package/source/react/combobox/listitemsgroup.tsx +185 -0
- package/source/react/countryinput/countryinput.jsx +409 -0
- package/source/react/countryinput/countryinput.tsx +423 -0
- package/source/react/customizationdialog/customizationdialog.jsx +425 -0
- package/source/react/customizationdialog/customizationdialog.tsx +435 -0
- package/source/react/dateinput/dateinput.jsx +513 -0
- package/source/react/dateinput/dateinput.tsx +535 -0
- package/source/react/daterangeinput/daterangeinput.jsx +516 -0
- package/source/react/daterangeinput/daterangeinput.tsx +538 -0
- package/source/react/datetimepicker/datetimepicker.jsx +967 -0
- package/source/react/datetimepicker/datetimepicker.tsx +973 -0
- package/source/react/dialogwindow/dialogwindow.jsx +1391 -0
- package/source/react/dialogwindow/dialogwindow.tsx +1349 -0
- package/source/react/dockinglayout/dockinglayout.jsx +923 -0
- package/source/react/dockinglayout/dockinglayout.tsx +925 -0
- package/source/react/dropdownbutton/dropdownbutton.jsx +665 -0
- package/source/react/dropdownbutton/dropdownbutton.tsx +659 -0
- package/source/react/dropdownlist/dropdownlist.jsx +1148 -0
- package/source/react/dropdownlist/dropdownlist.tsx +1130 -0
- package/source/react/dropdownlist/listitem.jsx +279 -0
- package/source/react/dropdownlist/listitem.tsx +305 -0
- package/source/react/dropdownlist/listitemsgroup.jsx +159 -0
- package/source/react/dropdownlist/listitemsgroup.tsx +185 -0
- package/source/react/editor/editor.jsx +1373 -0
- package/source/react/editor/editor.tsx +1287 -0
- package/source/react/element/element.jsx +392 -0
- package/source/react/element/element.tsx +410 -0
- package/source/react/fileupload/fileupload.jsx +643 -0
- package/source/react/fileupload/fileupload.tsx +641 -0
- package/source/react/filterbuilder/filterbuilder.jsx +608 -0
- package/source/react/filterbuilder/filterbuilder.tsx +594 -0
- package/source/react/filterpanel/filterpanel.jsx +433 -0
- package/source/react/filterpanel/filterpanel.tsx +447 -0
- package/source/react/form/form.jsx +383 -0
- package/source/react/form/form.tsx +413 -0
- package/source/react/form/formcontrol.jsx +495 -0
- package/source/react/form/formcontrol.tsx +521 -0
- package/source/react/form/formgroup.jsx +310 -0
- package/source/react/form/formgroup.tsx +336 -0
- package/source/react/ganttchart/ganttchart.jsx +2202 -0
- package/source/react/ganttchart/ganttchart.tsx +2116 -0
- package/source/react/gauge/gauge.jsx +755 -0
- package/source/react/gauge/gauge.tsx +777 -0
- package/source/react/grid/grid.jsx +2906 -0
- package/source/react/grid/grid.tsx +2782 -0
- package/source/react/grouppanel/grouppanel.jsx +313 -0
- package/source/react/grouppanel/grouppanel.tsx +323 -0
- package/source/react/input/input.jsx +626 -0
- package/source/react/input/input.tsx +632 -0
- package/source/react/kanban/kanban.jsx +1824 -0
- package/source/react/kanban/kanban.tsx +1736 -0
- package/source/react/layout/layout.jsx +449 -0
- package/source/react/layout/layout.tsx +451 -0
- package/source/react/layout/layoutgroup.jsx +233 -0
- package/source/react/layout/layoutgroup.tsx +259 -0
- package/source/react/layout/layoutitem.jsx +219 -0
- package/source/react/layout/layoutitem.tsx +245 -0
- package/source/react/layout/tablayoutgroup.jsx +243 -0
- package/source/react/layout/tablayoutgroup.tsx +269 -0
- package/source/react/layout/tablayoutitem.jsx +231 -0
- package/source/react/layout/tablayoutitem.tsx +257 -0
- package/source/react/led/led.jsx +412 -0
- package/source/react/led/led.tsx +434 -0
- package/source/react/listbox/listbox.jsx +1044 -0
- package/source/react/listbox/listbox.tsx +1030 -0
- package/source/react/listbox/listitem.jsx +279 -0
- package/source/react/listbox/listitem.tsx +305 -0
- package/source/react/listbox/listitemsgroup.jsx +159 -0
- package/source/react/listbox/listitemsgroup.tsx +185 -0
- package/source/react/listmenu/listmenu.jsx +740 -0
- package/source/react/listmenu/listmenu.tsx +746 -0
- package/source/react/listmenu/menuitem.jsx +231 -0
- package/source/react/listmenu/menuitem.tsx +257 -0
- package/source/react/listmenu/menuitemsgroup.jsx +267 -0
- package/source/react/listmenu/menuitemsgroup.tsx +293 -0
- package/source/react/map/map.jsx +233 -0
- package/source/react/map/map.tsx +259 -0
- package/source/react/maskedtextbox/maskedtextbox.jsx +617 -0
- package/source/react/maskedtextbox/maskedtextbox.tsx +631 -0
- package/source/react/menu/menu.jsx +817 -0
- package/source/react/menu/menu.tsx +807 -0
- package/source/react/menu/menuitem.jsx +231 -0
- package/source/react/menu/menuitem.tsx +257 -0
- package/source/react/menu/menuitemsgroup.jsx +267 -0
- package/source/react/menu/menuitemsgroup.tsx +293 -0
- package/source/react/multicolumnfilterpanel/multicolumnfilterpanel.jsx +361 -0
- package/source/react/multicolumnfilterpanel/multicolumnfilterpanel.tsx +371 -0
- package/source/react/multicomboinput/multicomboinput.jsx +626 -0
- package/source/react/multicomboinput/multicomboinput.tsx +648 -0
- package/source/react/multiinput/multiinput.jsx +566 -0
- package/source/react/multiinput/multiinput.tsx +588 -0
- package/source/react/multilinetextbox/listitem.jsx +279 -0
- package/source/react/multilinetextbox/listitem.tsx +305 -0
- package/source/react/multilinetextbox/listitemsgroup.jsx +159 -0
- package/source/react/multilinetextbox/listitemsgroup.tsx +185 -0
- package/source/react/multilinetextbox/multilinetextbox.jsx +638 -0
- package/source/react/multilinetextbox/multilinetextbox.tsx +664 -0
- package/source/react/multilinewindow/multilinewindow.jsx +1391 -0
- package/source/react/multilinewindow/multilinewindow.tsx +1349 -0
- package/source/react/multisplitbutton/listitem.jsx +279 -0
- package/source/react/multisplitbutton/listitem.tsx +305 -0
- package/source/react/multisplitbutton/listitemsgroup.jsx +159 -0
- package/source/react/multisplitbutton/listitemsgroup.tsx +185 -0
- package/source/react/multisplitbutton/multisplitbutton.jsx +751 -0
- package/source/react/multisplitbutton/multisplitbutton.tsx +745 -0
- package/source/react/numberinput/numberinput.jsx +413 -0
- package/source/react/numberinput/numberinput.tsx +435 -0
- package/source/react/numerictextbox/numerictextbox.jsx +721 -0
- package/source/react/numerictextbox/numerictextbox.tsx +719 -0
- package/source/react/pager/pager.jsx +524 -0
- package/source/react/pager/pager.tsx +542 -0
- package/source/react/passwordinput/passwordinput.jsx +317 -0
- package/source/react/passwordinput/passwordinput.tsx +335 -0
- package/source/react/passwordtextbox/passwordtextbox.jsx +523 -0
- package/source/react/passwordtextbox/passwordtextbox.tsx +541 -0
- package/source/react/path/path.jsx +629 -0
- package/source/react/path/path.tsx +623 -0
- package/source/react/phoneinput/phoneinput.jsx +481 -0
- package/source/react/phoneinput/phoneinput.tsx +495 -0
- package/source/react/pivottable/pivottable.jsx +990 -0
- package/source/react/pivottable/pivottable.tsx +980 -0
- package/source/react/progressbar/circularprogressbar.jsx +337 -0
- package/source/react/progressbar/circularprogressbar.tsx +359 -0
- package/source/react/progressbar/progressbar.jsx +351 -0
- package/source/react/progressbar/progressbar.tsx +375 -0
- package/source/react/progresswindow/progresswindow.jsx +1391 -0
- package/source/react/progresswindow/progresswindow.tsx +1349 -0
- package/source/react/promptwindow/promptwindow.jsx +1391 -0
- package/source/react/promptwindow/promptwindow.tsx +1349 -0
- package/source/react/qrcode/qrcode.jsx +396 -0
- package/source/react/qrcode/qrcode.tsx +418 -0
- package/source/react/querybuilder/querybuilder.jsx +589 -0
- package/source/react/querybuilder/querybuilder.tsx +587 -0
- package/source/react/radiobutton/radiobutton.jsx +373 -0
- package/source/react/radiobutton/radiobutton.tsx +387 -0
- package/source/react/rating/rating.jsx +315 -0
- package/source/react/rating/rating.tsx +337 -0
- package/source/react/scheduler/scheduler.jsx +2452 -0
- package/source/react/scheduler/scheduler.tsx +2336 -0
- package/source/react/scrollbar/scrollbar.jsx +380 -0
- package/source/react/scrollbar/scrollbar.tsx +402 -0
- package/source/react/slider/slider.jsx +731 -0
- package/source/react/slider/slider.tsx +753 -0
- package/source/react/sortable/sortable.jsx +319 -0
- package/source/react/sortable/sortable.tsx +341 -0
- package/source/react/sortpanel/sortpanel.jsx +273 -0
- package/source/react/sortpanel/sortpanel.tsx +291 -0
- package/source/react/splitter/splitter.jsx +613 -0
- package/source/react/splitter/splitter.tsx +627 -0
- package/source/react/splitter/splitterbar.jsx +205 -0
- package/source/react/splitter/splitterbar.tsx +231 -0
- package/source/react/splitter/splitteritem.jsx +288 -0
- package/source/react/splitter/splitteritem.tsx +314 -0
- package/source/react/switchbutton/switchbutton.jsx +421 -0
- package/source/react/switchbutton/switchbutton.tsx +435 -0
- package/source/react/table/table.jsx +1628 -0
- package/source/react/table/table.tsx +1590 -0
- package/source/react/tabs/tabitem.jsx +219 -0
- package/source/react/tabs/tabitem.tsx +245 -0
- package/source/react/tabs/tabitemsgroup.jsx +171 -0
- package/source/react/tabs/tabitemsgroup.tsx +197 -0
- package/source/react/tabs/tabs.jsx +720 -0
- package/source/react/tabs/tabs.tsx +722 -0
- package/source/react/tabswindow/tabswindow.jsx +1391 -0
- package/source/react/tabswindow/tabswindow.tsx +1349 -0
- package/source/react/tank/tank.jsx +680 -0
- package/source/react/tank/tank.tsx +702 -0
- package/source/react/textarea/textarea.jsx +541 -0
- package/source/react/textarea/textarea.tsx +559 -0
- package/source/react/textbox/listitem.jsx +279 -0
- package/source/react/textbox/listitem.tsx +305 -0
- package/source/react/textbox/listitemsgroup.jsx +159 -0
- package/source/react/textbox/listitemsgroup.tsx +185 -0
- package/source/react/textbox/textbox.jsx +842 -0
- package/source/react/textbox/textbox.tsx +864 -0
- package/source/react/threedchart/threedchart.jsx +1124 -0
- package/source/react/threedchart/threedchart.tsx +1106 -0
- package/source/react/timeinput/timeinput.jsx +463 -0
- package/source/react/timeinput/timeinput.tsx +485 -0
- package/source/react/timepicker/timepicker.jsx +406 -0
- package/source/react/timepicker/timepicker.tsx +428 -0
- package/source/react/toast/toast.jsx +510 -0
- package/source/react/toast/toast.tsx +508 -0
- package/source/react/tooltip/tooltip.jsx +453 -0
- package/source/react/tooltip/tooltip.tsx +463 -0
- package/source/react/tree/tree.jsx +1176 -0
- package/source/react/tree/tree.tsx +1158 -0
- package/source/react/tree/treeitem.jsx +243 -0
- package/source/react/tree/treeitem.tsx +269 -0
- package/source/react/tree/treeitemsgroup.jsx +243 -0
- package/source/react/tree/treeitemsgroup.tsx +269 -0
- package/source/react/validator/validator.jsx +202 -0
- package/source/react/validator/validator.tsx +228 -0
- package/source/react/waitwindow/waitwindow.jsx +1391 -0
- package/source/react/waitwindow/waitwindow.tsx +1349 -0
- package/source/react/window/window.jsx +1375 -0
- package/source/react/window/window.tsx +1349 -0
- package/source/smart.3dchart.js +6 -0
- package/source/smart.accordion.js +6 -0
- package/source/smart.ajax.js +5 -0
- package/source/smart.array.js +6 -0
- package/source/smart.barcode.js +6 -0
- package/source/smart.bootstrap.js +6 -0
- package/source/smart.breadcrumb.js +6 -0
- package/source/smart.button.js +6 -0
- package/source/smart.buttongroup.js +6 -0
- package/source/smart.calendar.js +6 -0
- package/source/smart.card.js +6 -0
- package/source/smart.cardview.js +6 -0
- package/source/smart.carousel.js +6 -0
- package/source/smart.chart.annotations.js +6 -0
- package/source/smart.chart.api.js +6 -0
- package/source/smart.chart.core.js +6 -0
- package/source/smart.chart.js +6 -0
- package/source/smart.chart.rangeselector.js +6 -0
- package/source/smart.chart.waterfall.js +6 -0
- package/source/smart.checkbox.js +6 -0
- package/source/smart.checkinput.js +6 -0
- package/source/smart.chip.js +6 -0
- package/source/smart.colorinput.js +6 -0
- package/source/smart.colorpanel.js +6 -0
- package/source/smart.colorpicker.js +6 -0
- package/source/smart.combobox.js +6 -0
- package/source/smart.complex.js +6 -0
- package/source/smart.core.js +6 -0
- package/source/smart.countryinput.js +6 -0
- package/source/smart.data.js +6 -0
- package/source/smart.date.js +6 -0
- package/source/smart.dateformatpanel.js +6 -0
- package/source/smart.dateinput.js +6 -0
- package/source/smart.daterangeinput.js +6 -0
- package/source/smart.datetimepicker.js +6 -0
- package/source/smart.dockinglayout.js +6 -0
- package/source/smart.draw.js +6 -0
- package/source/smart.dropdownbutton.js +6 -0
- package/source/smart.dropdownlist.js +6 -0
- package/source/smart.editor.js +6 -0
- package/source/smart.element.js +6 -0
- package/source/smart.elements.js +3 -3
- package/source/smart.export.js +6 -0
- package/source/smart.fileupload.js +6 -0
- package/source/smart.filter.js +6 -0
- package/source/smart.filterbuilder.js +6 -0
- package/source/smart.filterpanel.js +6 -0
- package/source/smart.form.js +6 -0
- package/source/smart.format.js +6 -0
- package/source/smart.formulaparser.js +6 -0
- package/source/smart.ganttchart.js +6 -0
- package/source/smart.gauge.js +6 -0
- package/source/smart.grid.cell.js +6 -0
- package/source/smart.grid.chart.js +6 -0
- package/source/smart.grid.column.js +6 -0
- package/source/smart.grid.core.js +6 -0
- package/source/smart.grid.dialog.js +6 -0
- package/source/smart.grid.edit.js +6 -0
- package/source/smart.grid.export.js +6 -0
- package/source/smart.grid.filter.js +6 -0
- package/source/smart.grid.group.js +6 -0
- package/source/smart.grid.js +6 -0
- package/source/smart.grid.menu.js +6 -0
- package/source/smart.grid.pager.js +6 -0
- package/source/smart.grid.reorder.js +6 -0
- package/source/smart.grid.resize.js +6 -0
- package/source/smart.grid.row.js +6 -0
- package/source/smart.grid.select.js +6 -0
- package/source/smart.grid.sort.js +6 -0
- package/source/smart.grid.toolbar.js +6 -0
- package/source/smart.grid.tree.js +6 -0
- package/source/smart.grid.view.js +6 -0
- package/source/smart.gridpanel.js +6 -0
- package/source/smart.input.js +6 -0
- package/source/smart.kanban.js +6 -0
- package/source/smart.layout.js +6 -0
- package/source/smart.led.js +6 -0
- package/source/smart.listbox.js +6 -0
- package/source/smart.listmenu.js +6 -0
- package/source/smart.map.js +6 -0
- package/source/smart.maskedtextbox.js +6 -0
- package/source/smart.math.js +6 -0
- package/source/smart.menu.js +6 -0
- package/source/smart.multicomboinput.js +6 -0
- package/source/smart.multiinput.js +6 -0
- package/source/smart.multilinetextbox.js +6 -0
- package/source/smart.multisplitbutton.js +6 -0
- package/source/smart.numberformatpanel.js +6 -0
- package/source/smart.numberinput.js +6 -0
- package/source/smart.numeric.js +6 -0
- package/source/smart.numerictextbox.js +6 -0
- package/source/smart.pager.js +6 -0
- package/source/smart.passwordinput.js +6 -0
- package/source/smart.passwordtextbox.js +6 -0
- package/source/smart.path.js +6 -0
- package/source/smart.phoneinput.js +6 -0
- package/source/smart.pivottable.js +6 -0
- package/source/smart.powerbutton.js +6 -0
- package/source/smart.progressbar.js +6 -0
- package/source/smart.qrcode.js +6 -0
- package/source/smart.radiobutton.js +6 -0
- package/source/smart.rating.js +6 -0
- package/source/smart.router.js +6 -0
- package/source/smart.scheduler.js +6 -0
- package/source/smart.scrollbar.js +6 -0
- package/source/smart.slider.js +6 -0
- package/source/smart.sortable.js +6 -0
- package/source/smart.splitter.js +6 -0
- package/source/smart.switchbutton.js +6 -0
- package/source/smart.table.js +6 -0
- package/source/smart.tabs.js +6 -0
- package/source/smart.tank.js +6 -0
- package/source/smart.textarea.js +6 -0
- package/source/smart.textbox.js +6 -0
- package/source/smart.tickintervalhandler.js +6 -0
- package/source/smart.timeinput.js +6 -0
- package/source/smart.timepicker.js +6 -0
- package/source/smart.toast.js +6 -0
- package/source/smart.tooltip.js +6 -0
- package/source/smart.tree.js +6 -0
- package/source/smart.validationpanel.js +6 -0
- package/source/smart.validator.js +6 -0
- 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("smart-menu-item",class extends Smart.BaseElement{static get properties(){return{checked:{value:!1,type:"boolean"},label:{value:"",type:"any"},level:{value:null,type:"number?"},separator:{value:!1,type:"boolean"},shortcut:{value:"",type:"string"},value:{value:null,type:"any"}}}get enableShadowDOM(){return!1}template(){return""}ready(){const e=this;if(super.ready(),e.$.addClass("smart-unselectable"),e.setAttribute("role","menuitem"),e.checked&&e.setAttribute("aria-checked",!0),!1===e.isDirty)return;const t=e.closest("smart-menu, smart-tree");t&&t.isRendered&&(cancelAnimationFrame(Smart.Menu.processTimer),Smart.Menu.processTimer=requestAnimationFrame((()=>{t._lazyInitItems()})))}propertyChangedHandler(e,t,n){const o=this;if(super.propertyChangedHandler(e,t,n),"smart-tree-item"===o.tagName.toLowerCase())return;const i=o.menu,r=o.parentItem,a=r||i;if("label"===e)return""===n?void(o.label=t):(o.setAttribute("aria-label",n),void(i&&i._setItemLabel(o,n)));if(!i)return;if("separator"===e)return void i._refreshCheckableItems(a);if("disabled"!==e||!1===n||!o.checked)return;super.propertyChangedHandler(e,t,n),o.checked=!1;const s=a.checkMode;"radioButton"===s?i._validateRadioButtonSelection(r,o.level,[]):"checkbox"!==s&&i._refreshCheckableItems(a)}}),Smart("smart-menu-items-group",class extends Smart.BaseElement{static get properties(){return{checkable:{value:!1,type:"boolean"},checked:{value:!1,type:"boolean"},checkMode:{value:"checkbox",type:"string"},dropDownHeight:{value:null,type:"number?"},expanded:{value:!1,type:"boolean"},label:{value:"",type:"any"},level:{value:null,type:"number?"},separator:{value:!1,type:"boolean"},value:{value:null,type:"any"}}}get enableShadowDOM(){return!1}template(){return""}ready(){const e=this;if(super.ready(),e.$.addClass("smart-unselectable"),e.setAttribute("role","menuitem"),e.setAttribute("aria-haspopup",!0),e.setAttribute("aria-expanded",e.expanded),e.checked&&e.setAttribute("aria-checked",!0),!1===e.isDirty)return;const t=e.closest("smart-menu, smart-tree");t&&t.isRendered&&(cancelAnimationFrame(Smart.Menu.processTimer),Smart.Menu.processTimer=requestAnimationFrame((()=>{t._lazyInitItems()})))}propertyChangedHandler(e,t,n){const o=this;if(super.propertyChangedHandler(e,t,n),"smart-tree-items-group"===o.tagName.toLowerCase())return;const i=o.menu,r=o.parentItem,a=r||i;if("label"===e)return""===n?void(o.label=t):(o.setAttribute("aria-label",n),void(i&&i._setItemLabel(o,n)));if(i&&-1!==["checkable","checkMode","disabled","separator"].indexOf(e))switch(e){case"checkable":n?o.itemContainer.setAttribute("checkable",""):o.itemContainer.removeAttribute("checkable"),i._isContainerOpened(o.container.level,o.container)&&"tree"!==i.mode&&!i._minimized&&i._closeSubContainers(o.level+2),i._updateItemRoles(o);break;case"checkMode":o.itemContainer.setAttribute("check-mode",n),i._changeToRadioButtonMode(n,o.itemContainer,o),i._updateItemRoles(o);break;case"disabled":{if(Smart.ListMenu&&i instanceof Smart.ListMenu){if(i._view)for(;o.contains(i._view);)i._backButtonClickHandler()}else i._isContainerOpened(o.container.level,o.container)&&i._closeSubContainers(o.level+1,o.container);if(!o.checked)return;o.checked=!1;const e=a.checkMode;"radioButton"===e?i._validateRadioButtonSelection(r,o.level,[]):"checkbox"!==e&&i._refreshCheckableItems(a);break}case"separator":i._refreshCheckableItems(a)}}}),Smart("smart-menu",class extends Smart.BaseElement{static get properties(){return{autoCloseDelay:{value:100,type:"number"},autoFocusOnMouseenter:{value:!1,type:"boolean"},checkable:{value:!1,type:"boolean"},checkboxes:{value:!1,type:"boolean"},checkMode:{value:"checkbox",type:"string"},closeAction:{value:"up",allowedValues:["up","down","none"],type:"string"},disableAutoCheck:{value:!1,type:"boolean"},dataSource:{value:null,type:"array?",reflectToAttribute:!1},displayMember:{value:"label",type:"string"},dropDownAppendTo:{value:null,type:"any?"},dropDownOverlay:{value:!1,type:"boolean"},dropDownPosition:{value:"auto",allowedValues:["top-left","top-right","bottom-left","bottom-right","overlay-left","overlay-right","auto"],type:"string"},enableMouseWheelAction:{value:!1,type:"boolean"},innerHTML:{type:"string",reflectToAttribute:!1},itemsMember:{value:"items",type:"string"},minimizeIconTemplate:{value:null,type:"string?"},minimizeWidth:{value:null,type:"number?"},mode:{value:"horizontal",allowedValues:["horizontal","vertical","dropDown","tree"],type:"string"},opened:{value:!1,type:"boolean"},overflow:{value:"auto",allowedValues:["auto","hidden","scroll"],type:"string"},preventCloseOnCheck:{value:!1,type:"boolean"},selectionMode:{value:"click",allowedValues:["click","mouseenter"],type:"string"},valueMember:{value:"value",type:"string"}}}static get listeners(){return{"container.click":"_selectionHandler",keydown:"_keydownHandler",mouseenter:"_mouseenterHandler",mouseleave:"_mouseleaveHandler","container.mouseout":"_mouseoutMouseoverHandler","container.mouseover":"_mouseoutMouseoverHandler",resize:"_resizeHandler",transitionend:"_transitionendHandler","hamburgerIcon.click":"_hamburgerIconClickHandler","mainContainer.click":"_mainContainerHandler","mainContainer.mouseleave":"_mainContainerHandler","mainContainer.mouseout":"_mainContainerHandler","mainContainer.mouseover":"_mainContainerHandler","document.down":"_documentDownHandler","document.up":"_documentUpHandler"}}static get requires(){return{"Smart.RepeatButton":"smart.button.js"}}static get styleUrls(){return["smart.button.css","smart.menu.css"]}get items(){return this._menuItems}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 smart-hidden" role="button" aria-label="Toggle minimized menu" aria-haspopup="true">\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 id="customIconContainer" class="smart-hamburger-icon-custom-container smart-hidden" role="presentation"></div>\n </div>\n </div>\n <smart-repeat-button id="scrollButtonNear" class="smart-menu-scroll-button smart-spin-button smart-scroll-button-near smart-hidden" animation="[[animation]]" unfocusable right-to-left="[[rightToLeft]]">\n <div id="arrowNear" class="smart-arrow" aria-hidden="true"></div>\n </smart-repeat-button>\n <div id="mainContainer" class="smart-menu-main-container" role="presentation">\n <content></content>\n </div>\n <smart-repeat-button id="scrollButtonFar" class="smart-menu-scroll-button smart-spin-button smart-scroll-button-far smart-hidden" animation="[[animation]]" unfocusable right-to-left="[[rightToLeft]]">\n <div id="arrowFar" class="smart-arrow" aria-hidden="true"></div>\n </smart-repeat-button>\n </div>'}attached(){const e=this;if(super.attached(),!e.isCompleted||!e.isRendered||"tree"===e._element||Smart.ListMenu&&e instanceof Smart.ListMenu)return;const t=e._scrollInfo;if(null!==e.dropDownAppendTo){if(e._minimized)e._dropDownParent.appendChild(e.$.mainContainer);else for(let t=0;t<e._containersInBody.length;t++)e._dropDownParent.appendChild(e._containersInBody[t]);"dropDown"===e.mode&&(e._dropDownParent===e.parentElement?e._dynamicallyReparented?delete e._dynamicallyReparented:e._positionRelativeTo=null:(e._positionRelativeTo=e.parentElement,e._dynamicallyReparented=!0,setTimeout((function(){e._dropDownParent.appendChild(e)}),0)))}t&&t.forEach((function(e,t){t.scrollLeft=e.left,t.scrollTop=e.top}))}detached(){const e=this;super.detached(),"tree"===e._element||Smart.ListMenu&&e instanceof Smart.ListMenu||(e._close(),null!==e.dropDownAppendTo&&(e._minimized?e._dropDownParent.removeChild(e.$.mainContainer):e._removeContainersInBody()))}ready(){super.ready()}render(){const e=this;e._element="menu",e._edgeMacFF=Smart.Utilities.Core.Browser.Edge||Smart.Utilities.Core.Browser.Firefox&&-1!==navigator.platform.toLowerCase().indexOf("mac"),e._containers=[],e._containersInBody=[],e._openedContainers=[],e._containersFixedHeight=[],e._menuItemsGroupsToExpand=[],e._additionalScrollButtons=[],e._scrollInfo=new Map,e._createElement(),super.render()}addItem(e,t){const n=this;if(!(e instanceof Smart.MenuItem||e instanceof Smart.MenuItemsGroup))if("string"==typeof e){const t=document.createElement("smart-menu-item");t.label=e,e=t}else{if(!e||!e.label)return;{const t=document.createElement("smart-menu-item");t.label=e.label,e=t}}let o,i,r;if(e.isDirty=!1,void 0===t)o=n,i=1,r=t=n.$.mainContainer;else{if((t=n.getItem(t))instanceof Smart.MenuItemsGroup==0)return;o=t,i=t.level+1,r=t.itemContainer}if(n._createItemHTMLStructure(e,i,t,r.childElementCount,0),e instanceof Smart.MenuItemsGroup&&(n._processHTML(e,i+1),n._checkContainersLength()),r.appendChild(e),n._checkOverflowAddRemove(e.level,r),e instanceof Smart.MenuItemsGroup&&("tree"===n.mode||n._minimized)){const t=e.getElementsByClassName("smart-menu-items-group-arrow");for(let e=0;e<t.length;e++)t[e].className="smart-menu-items-group-arrow down smart-arrow-down";n._expandItemsByDefault()}n._refreshCheckableItems(o)}checkItem(e){void 0===(e=this.getItem(e))||e.checked||e.disabled||e.templateApplied||this._toggleItem(e)}clear(){const e=this;e.$.mainContainer.innerHTML="",e._removeContainersInBody(),e._menuItems={},e._containers=[],e._containersInBody=[],e._openedContainers=[],e._containersFixedHeight=[],e._menuItemsGroupsToExpand=[],e._additionalScrollButtons=[]}clickItem(e){const t=this;"string"==typeof e&&(e=t.getItem(e)),e&&e.nodeName&&t._selectionHandler({type:"click",isTrusted:!0,target:e,stopPropagation:()=>{},preventDefault:()=>{}})}close(){const e=this;"dropDown"!==e.mode||!1===e.opened&&e.$.hasClass("smart-visibility-hidden")||(e.$.fireEvent("closing",arguments[0]||{trigger:"programmatic"}).defaultPrevented?e.opened=!0:(e.opened=!1,e.$.addClass("smart-visibility-hidden"),e._close(),e.$.fireEvent("close")))}collapseItem(e,t){const n=this,o=n.animation,i=!1===t&&n.hasAnimation;if(void 0===e)return i&&(n.animation="none"),n._close(),void(i&&setTimeout((function(){n.animation=o}),0));if(void 0===(e=n.getItem(e))||e instanceof Smart.MenuItem)return;const r=e.level;if(n._openedContainers[r+1]&&n._isContainerOpened(r+1,e.container)){const t=n.mode;i&&(n.animation="none"),n._closeSubContainers(r+1,e.container,void 0,!1!==arguments[2]),1!==r&&"tree"!==t||n._checkOverflow(n.$.mainContainer,"horizontal"===t,[n.$.scrollButtonNear,n.$.scrollButtonFar]),i&&(n.animation=o)}}expandItem(e,t){const n=this;if(void 0===(e=n.getItem(e))||e instanceof Smart.MenuItemsGroup&&n._isContainerOpened(e.level+1,e.container)&&n._isBranchExpanded(e))return;void 0!==Smart.Menu.processTimer&&n._lazyInitItems();const o=[e],i=n.animation,r=!1===t&&n.hasAnimation;let a=e.parentItem;for(r&&(n.animation="none"),n._discardKeyboardHover();a;)o.unshift(a),a=a.parentItem;for(let e=0;e<o.length;e++){const t=o[e];if(e===o.length-1&&t instanceof Smart.MenuItem){t.disabled||t.templateApplied||n._hoverViaKeyboard(t);break}n._isContainerOpened(t.container.level,t.container)||n._menuItemsGroupSelectionHandler(t,{target:t,type:"expand",isTrusted:!0},arguments[2])}r&&(n.animation=i)}getItem(e){const t=this;let n;if(null!=e&&t._menuItems){if("string"==typeof e){if(/^[0-9]*([.]?[0-9]*)*$/gm.test(e))return t._menuItems[e];if(n=t.$.mainContainer.querySelector('[id="'+e+'"]'),null===n)return t._menuItems[e]}else{if(!isNaN(e))return t._menuItems[e.toString()];n=e}if((n instanceof Smart.MenuItem||n instanceof Smart.MenuItemsGroup)&&(t.contains(n)||t.$.mainContainer.contains(n)||n.parentElement.parentElement.ownerElement===t))return n}}maximize(){const e=this;if(!e._minimized)return;const t=e.animation;if(e.$.mainContainer.style.marginTop="",e.$.mainContainer.style.marginLeft="",e.enableShadowDOM&&!e.$.mainContainer.id&&(e.$.mainContainer.id=e.$.mainContainer.getAttribute("smart-id")),"none"!==t&&(e.animation="none"),e._positionDetection.removeOverlay(),e._closeSubContainers(2),e.$minimizedHeader.addClass("smart-hidden"),e._minimized=!1,e._minimizedDropDownOpened&&(e.$hamburgerIcon.removeClass("smart-close-button"),e._minimizedDropDownOpened=!1),null!==e.dropDownAppendTo&&e._appendMinimizedContainerToMenu(e.$.mainContainer,e.$.scrollButtonFar),"tree"!==e.mode){e.$mainContainer.addClass("smart-menu-main-container"),e.$mainContainer.removeClass("smart-menu-minimized-items-container");const t=e.$.mainContainer.getElementsByClassName("smart-menu-items-group-arrow");for(let n=0;n<t.length;n++)e._setArrowDirection(t[n],t[n].parentElement.parentElement.level+1);null!==e.dropDownAppendTo&&e._moveDropDownsToExternalContainer(),e._applyContainerFixedHeight()}e.$mainContainer.removeClass("smart-visibility-hidden"),e.$hamburgerIcon.addClass("smart-hidden"),e.removeAttribute("minimized"),e._checkOverflow(e.$.mainContainer,"horizontal"===e.mode,[e.$.scrollButtonNear,e.$.scrollButtonFar]),"none"!==t&&setTimeout((function(){e.animation=t}),0),e.$.mainContainer.removeAttribute("drop-down"),e.$.hamburgerIcon.removeAttribute("aria-expanded"),e.$.hamburgerIcon.removeAttribute("aria-owns"),e.$.mainContainer.setAttribute("role","presentation"),e.$.mainContainer.removeAttribute("aria-orientation"),e.setAttribute("role","menu"),e.setAttribute("aria-orientation","horizontal"===e.mode?"horizontal":"vertical")}minimize(){const e=this;if(e._minimized||"dropDown"===e.mode)return;e.$minimizedHeader.removeClass("smart-hidden");const t=null!==e.dropDownAppendTo,n=e.animation,o=e.hasAnimation;if(o&&(e.animation="none"),e._positionDetection.removeOverlay(),e._closeSubContainers(2),o&&t&&(e.animation=n),"tree"!==e.mode&&(t&&e._moveDropDownsToMenu(),e._removeContainerFixedHeight()),e._hideMainContainerScrollButtons(),e.$mainContainer.removeClass("smart-menu-main-container"),e.$mainContainer.addClass("smart-visibility-hidden"),e.enableShadowDOM&&e.$.mainContainer.removeAttribute("id"),e._edgeMacFF&&(e.$.mainContainer.style.left="",e.$.mainContainer.style.top="",e.$mainContainer.addClass("not-in-view")),e.$hamburgerIcon.removeClass("smart-hidden"),t&&e._appendMinimizedContainerToExternalElement(e.$.mainContainer),setTimeout((function(){e.$mainContainer.addClass("smart-menu-minimized-items-container"),o&&!t&&(e.animation=n)}),0),e._minimized=!0,e.setAttribute("minimized",""),"tree"!==e.mode)for(let t=0;t<e._containers.length;t++){const n=e._containers[t];n.level>2&&e._setArrowDirection(n.menuItemsGroup.children[0].children[1],n.level)}e.$.mainContainer.setAttribute("drop-down",""),e.setAttribute("role","presentation"),e.removeAttribute("aria-orientation"),e.$.hamburgerIcon.setAttribute("aria-expanded",!1),e.$.hamburgerIcon.setAttribute("aria-owns",e.$.mainContainer.id),e.$.mainContainer.setAttribute("role","menu"),e.$.mainContainer.setAttribute("aria-orientation","vertical")}open(e,t){const n=this;if("dropDown"!==n.mode)return;if(n.$.fireEvent("opening").defaultPrevented)return void(n.opened=!1);let o;if(n.opened=!0,n._positionRelativeTo){const i=n._positionRelativeTo.getBoundingClientRect();e+=i.left,t+=i.top,n._positionedParent?(o=n._positionedParent.getBoundingClientRect(),e-=o.left,t-=o.top):(e+=window.pageXOffset,t+=window.pageYOffset)}let i=e+n.offsetWidth-document.documentElement.clientWidth,r=t+n.offsetHeight-document.documentElement.clientHeight;o?(i+=o.left,r+=o.top):(i-=window.pageXOffset,r-=window.pageYOffset),i>0?e-=i:e=o?Math.max(e,-o.left):Math.max(e,window.pageXOffset),r>0?t-=r:t=o?Math.max(t,-o.top):Math.max(t,window.pageYOffset),n.style.right="",isNaN(e)||(n.rightToLeft&&(n.style.right="initial"),n.style.left=e+"px"),isNaN(t)||(n.style.top=t+"px"),n.$.removeClass("smart-visibility-hidden"),n.$.fireEvent("open"),n.hasAnimation||(n._checkOverflowOnOpen&&(n._checkOverflow(n.$.mainContainer,!1,[n.$.scrollButtonNear,n.$.scrollButtonFar]),delete n._checkOverflowOnOpen),n._noAutoFocus||n.focus())}removeItem(e){const t=this;if(void 0===(e=t.getItem(e)))return;const n=e.parentElement,o=e.parentItem||t;if(e instanceof Smart.MenuItemsGroup){const n=e.container;if(t._isContainerOpened(n.level,n)&&t._closeSubContainers(n.level,n),1===e.level){const e=t._containersInBody.indexOf(n);-1!==e&&(t._containersInBody.splice(e,1),null===t.dropDownAppendTo||"tree"===t.mode||t._minimized||t._dropDownParent.removeChild(n))}}n.removeChild(e),t._refreshContainersArrays(),t._menuItems={},t._refreshItemPaths(t.$.mainContainer,!0),t._checkOverflowAddRemove(e.level,n),t._refreshCheckableItems(o)}uncheckItem(e){void 0===(e=this.getItem(e))||!e.checked||e.disabled||e.templateApplied||this._toggleItem(e)}propertyChangedHandler(e,t,n){super.propertyChangedHandler(e,t,n);const o=this;if("tree"!==o._element)switch(e){case"animation":o.$.mainContainer.setAttribute("animation",n),o._additionalScrollButtons.forEach((function(e){e[0].animation=n,e[1].animation=n})),null!==o._dropDownParent&&o._containers.forEach((function(e){e.setAttribute("animation",n)}));break;case"checkable":"tree"===o.mode||o._minimized?o._minimized&&null!==o.dropDownAppendTo&&r("checkable",o.$.mainContainer,n):o._closeSubContainers(2),o._updateItemRoles(o);break;case"checkboxes":if(o._close(),null!==o.dropDownAppendTo){for(let e=0;e<o._containers.length;e++)r("checkboxes",o._containers[e],n);o._minimized&&r("checkboxes",o.$.mainContainer,n)}o._updateItemRoles();break;case"checkMode":o._changeToRadioButtonMode(n,o.$.mainContainer),o._minimized&&null!==o.dropDownAppendTo&&o.$.mainContainer.setAttribute("check-mode",n),o._updateItemRoles(o);break;case"dataSource":{let e=!1;o._minimized&&(o.maximize(),e=!0),o._removeContainersInBody(),o._containersInBody=[],o._menuItems={},o._processDataSource(),o._checkContainersLength(),e?o.minimize():i(),o._expandItemsByDefault(),o._refreshCheckableItems(),o._suppressResizeHandler=!0,setTimeout((()=>delete o._suppressResizeHandler),500);break}case"innerHTML":o.$.mainContainer.innerHTML=n,o._lazyInitItems();break;case"dropDownAppendTo":{const e=o._dropDownParent;if(o._positionDetection.getDropDownParent(),o._dropDownParent===e||"tree"===o.mode&&!o._minimized)return;if(o._close(),o._minimized)return void(null===n?o._appendMinimizedContainerToMenu(o.$.mainContainer,o.$.scrollButtonFar):o._appendMinimizedContainerToExternalElement(o.$.mainContainer));if(null!==o._dropDownParent&&null===e)o._moveDropDownsToExternalContainer();else if(null===o._dropDownParent&&null!==e)o._moveDropDownsToMenu();else if(null!==o._dropDownParent&&null!==e)for(let e=0;e<o._containersInBody.length;e++)o._dropDownParent.appendChild(o._containersInBody[e]);null!==n||o.$mainContainer.hasClass("simple")?o._checkOverflow(o.$.mainContainer,"horizontal"===o.mode,[o.$.scrollButtonNear,o.$.scrollButtonFar]):o._hideMainContainerScrollButtons();for(let e=0;e<o._containersFixedHeight.length;e++)o._containersFixedHeight[e].itemContainer.checkOverflow=!0;"dropDown"===o.mode&&(o.close({trigger:"internal"}),o._reparentMenu(!0,e));break}case"dropDownOverlay":n||o._positionDetection.removeOverlay();break;case"disabled":n&&o._close(),o._setFocusable(),o.$.scrollButtonNear.disabled=n,o.$.scrollButtonFar.disabled=n,n||null===o.dropDownAppendTo&&!o.$mainContainer.hasClass("simple")&&"tree"!==o.mode||o._updateScrollButtonVisibility(o.$.mainContainer,"horizontal"===o.mode,[o.$.scrollButtonNear,o.$.scrollButtonFar]);break;case"dropDownPosition":case"mode":{if("mode"===e){if(delete o._dynamicallyReparented,"tree"===t||o._minimized?(o._closeSubContainersTreeMode(2,void 0,void 0,void 0,!0),o._openedContainers=[]):o._closeSubContainersDefaultMode(2),o._discardKeyboardHover(!0),o._minimized&&o._minimizedDropDownOpened&&(o.$mainContainer.addClass("smart-visibility-hidden"),o.$hamburgerIcon.removeClass("smart-close-button"),o.$.hamburgerIcon.setAttribute("aria-expanded",!1),o._minimizedDropDownOpened=!1),"horizontal"!==n&&"horizontal"!==t||o._changeScrollButtonsArrows(),o._minimized)return void("dropDown"===n&&(o.mode=t));o.setAttribute("aria-orientation","horizontal"===o.mode?"horizontal":"vertical"),!1===o.opened&&("dropDown"===n?o.$.addClass("smart-visibility-hidden"):"dropDown"===t&&o.$.removeClass("smart-visibility-hidden")),"tree"===t?(null!==o.dropDownAppendTo&&o._moveDropDownsToExternalContainer(),o.$mainContainer.addClass("smart-menu-main-container"),o.$mainContainer.removeClass("smart-menu-minimized-items-container"),o._applyContainerFixedHeight()):"tree"===n&&(null!==o.dropDownAppendTo&&o._moveDropDownsToMenu(),o._applyTreeMode()),"auto"===o.overflow&&o._hideMainContainerScrollButtons(),i()}if("tree"===o.mode||o._minimized)return o._minimizedDropDownOpened&&o._close(),void(o._minimized&&null!==o.dropDownAppendTo&&o.$.mainContainer.setAttribute(o.properties[e].attributeName,n));"dropDownPosition"===e&&o._close();const r=o._containers.map((e=>e.menuItemsGroup));for(let e=0;e<r.length;e++){const t=r[e];o._setArrowDirection(t.children[0].children[1],t.level+1)}if(null!==o.dropDownAppendTo)for(let t=0;t<o._containers.length;t++){const i=o._containers[t];i.setAttribute(Smart.Utilities.Core.toDash(e),n),i.level>2&&o._setArrowDirection(i.menuItemsGroup.children[0].children[1],i.level)}break}case"minimizeIconTemplate":o._applyMinimizeIconTemplate(n,t);break;case"minimizeWidth":o._resizeHandler();break;case"opened":n?o.open():o.close({trigger:"internal"});break;case"overflow":o._handleOverflowChange();break;case"rightToLeft":if("tree"!==o.mode){const e=o._containers.map((e=>e.menuItemsGroup));for(let t=0;t<e.length;t++){const n=e[t];o._setArrowDirection(n.children[0].children[1],n.level+1)}if(null!==o.dropDownAppendTo){n?o.$.mainContainer.setAttribute("right-to-left",""):o.$.mainContainer.removeAttribute("right-to-left");for(let e=0;e<o._containers.length;e++){const t=o._containers[e];n?t.setAttribute("right-to-left",""):t.removeAttribute("right-to-left"),t.level>2&&o._setArrowDirection(t.menuItemsGroup.children[0].children[1],t.level)}}}break;case"theme":if(null===o.dropDownAppendTo||Smart.ListMenu&&o instanceof Smart.ListMenu)return;if(o._minimized)""!==t&&o.$mainContainer.removeClass(t),""!==n&&o.$mainContainer.addClass(n);else for(let e=0;e<o._containers.length;e++){const i=o._containers[e];""!==t&&i.classList.remove(t),""!==n&&i.classList.add(n)}break;case"unfocusable":o._setFocusable()}function i(){null===o.dropDownAppendTo&&"tree"!==o.mode||o._checkOverflow(o.$.mainContainer,"horizontal"===o.mode,[o.$.scrollButtonNear,o.$.scrollButtonFar])}function r(e,t,n){n?t.setAttribute(e,""):t.removeAttribute(e)}}_addOpenedContainer(e,t){const n=this;if("tree"===n.mode||n._minimized){n._openedContainers[e]||(n._openedContainers[e]=[]);const o=t.menuItemsGroup;return o.set("expanded",!0),o.setAttribute("aria-expanded",!0),n._updateState&&n._updateState("expanded",o.id,!0),n._openedContainers[e].push(t)}n._openedContainers[e]=t}_appendMinimizedContainerToExternalElement(e){const t=this;e.ownerElement=t,t._dropDownParent.appendChild(e),e.setAttribute("animation",t.animation),""!==t.theme&&e.$.addClass(t.theme),e.$.addClass("smart-menu-drop-down smart-drop-down"),e.$.addClass("smart-drop-down-repositioned"),e.setAttribute("check-mode",t.checkMode),e.setAttribute("drop-down-position",t.dropDownPosition),e.setAttribute("mode",t.mode),e.setAttribute("loading-indicator-position",t.loadingIndicatorPosition),t.rightToLeft&&e.setAttribute("right-to-left",""),t.checkable&&e.setAttribute("checkable",""),t.checkboxes&&e.setAttribute("checkboxes",""),t.$.view&&t.detachedChildren.indexOf(t.$.view)&&t.detachedChildren.push(t.$.view)}_appendMinimizedContainerToMenu(e,t){const n=this;delete e.ownerElement,n.$.container.insertBefore(e,t),e.removeAttribute("animation"),""!==n.theme&&e.$.removeClass(n.theme),e.$.removeClass("smart-menu-drop-down smart-drop-down"),e.$.removeClass("smart-drop-down-repositioned"),e.removeAttribute("checkable"),e.removeAttribute("checkboxes"),e.removeAttribute("check-mode"),e.removeAttribute("drop-down-position"),e.removeAttribute("mode"),e.removeAttribute("loading-indicator-position"),e.removeAttribute("style"),e.removeAttribute("right-to-left")}_applyContainerFixedHeight(){const e=this;for(let t=0;t<e._containers.length;t++){const n=e._containers[t];-1!==e._containersFixedHeight.indexOf(n)?(n.style.height=n.menuItemsGroup.dropDownHeight+"px",n.itemContainer.checkOverflow=!0):n.style.height=""}}_applyGrouping(e,t){const n=this;let o;o=e===n.$.mainContainer?Array.from(e.children):Array.from(e.container.firstElementChild.children);for(let e=0;e<o.length;e++){const i=o[e];i.originalIndex=e,i instanceof Smart.MenuItemsGroup&&void 0===t&&n._applyGrouping(i)}n._sortItems(e)}_applyMinimizeIconTemplate(e,t){const n=this;if(null===e){if(null===t)return;n.$customIconContainer.addClass("smart-hidden"),n.$.customIconContainer.innerHTML="",n.$hamburgerIconLineTop.removeClass("smart-hidden"),n.$hamburgerIconLineCenter.removeClass("smart-hidden"),n.$hamburgerIconLineBottom.removeClass("smart-hidden")}else{const o=document.getElementById(e);if(null!==o&&"template"===o.tagName.toLowerCase()){const e=document.importNode(o.content,!0);n.$hamburgerIconLineTop.addClass("smart-hidden"),n.$hamburgerIconLineCenter.addClass("smart-hidden"),n.$hamburgerIconLineBottom.addClass("smart-hidden"),n.$.customIconContainer.innerHTML="",n.$.customIconContainer.appendChild(e),n.$customIconContainer.removeClass("smart-hidden")}else n.minimizeIconTemplate=t}}_applyTreeMode(){const e=this,t=e.$.mainContainer.getElementsByClassName("smart-menu-items-group-arrow");if(e.$mainContainer.removeClass("smart-menu-main-container"),e.$mainContainer.addClass("smart-menu-minimized-items-container"),e.isCompleted&&e.isRendered)for(let e=0;e<t.length;e++)t[e].className="smart-menu-items-group-arrow down";e._removeContainerFixedHeight()}_arrowLeftHandler(e,t,n,o){const i=this;1===e?"horizontal"===t&&i._levelOneNavigate("_getLastEnabledChild",n,o):2===e?i._levelOneNavigateFromLowerLevel("_getPreviousEnabledChild",n):i._escapeHandler(n,e,o)}_arrowRightHandler(e,t,n,o){const i=this;1===e?"horizontal"===t?i._levelOneNavigate("_getFirstEnabledChild",n,o):i._levelOneOpenDropDown(n):n instanceof Smart.MenuItemsGroup?i._selectionHandler({target:n,isTrusted:!0}):i._levelOneNavigateFromLowerLevel("_getNextEnabledChild",n)}_browserBoundsDetection(e){const t=this;if("tree"===t.mode&&!t._minimized)return;if(e.style.marginTop="",e.style.marginLeft="","auto"!==t.dropDownPosition)return;const n=1===window.devicePixelRatio?document.documentElement.clientWidth:window.innerWidth,o=1===window.devicePixelRatio?document.documentElement.clientHeight:window.innerHeight,i=e.getBoundingClientRect(),r=n-i.left-e.offsetWidth,a=o-i.top-e.offsetHeight;r<10&&(e.style.marginLeft=Math.min(r-10,-10)+"px"),a<10&&(e.style.marginTop=Math.min(a-10,-10)+"px")}_changeScrollButtonsArrows(){const e=this;"horizontal"===e.mode?(e.$.scrollButtonNear.setAttribute("aria-label","Scroll left"),e.$.scrollButtonFar.setAttribute("aria-label","Scroll right"),e.$arrowNear.removeClass("smart-arrow-up"),e.$arrowFar.removeClass("smart-arrow-down"),e.$arrowNear.addClass("smart-arrow-left"),e.$arrowFar.addClass("smart-arrow-right")):(e.$.scrollButtonNear.setAttribute("aria-label","Scroll up"),e.$.scrollButtonFar.setAttribute("aria-label","Scroll down"),e.$arrowNear.removeClass("smart-arrow-left"),e.$arrowFar.removeClass("smart-arrow-right"),e.$arrowNear.addClass("smart-arrow-up"),e.$arrowFar.addClass("smart-arrow-down"))}_changeToRadioButtonMode(e,t,n){if("radioButton"===e){const e=[];for(let n=0;n<t.childElementCount;n++){const o=t.children[n];!o.checked||o.disabled||o.templateApplied||e.push(o)}this._validateRadioButtonSelection(n,n?n.level+1:1,e)}}_checkContainersLength(e){const t=this;0===t._containers.length?(t.$mainContainer.addClass("simple"),e||t._checkOverflow(t.$.mainContainer,"horizontal"===t.mode,[t.$.scrollButtonNear,t.$.scrollButtonFar])):e||(t.$mainContainer.removeClass("simple"),null===t.dropDownAppendTo&&"tree"!==t.mode&&t.$mainContainer.removeClass("scroll-buttons-shown one-button-shown"))}_checkOverflow(e,t,n){const o=this,i=o.$.mainContainer,r=e===i?o.overflow:"auto";if(o._minimized||"hidden"===r||null===o.dropDownAppendTo&&"tree"!==o.mode&&e===i&&!i.classList.contains("simple"))return;if("dropDown"===o.mode&&!o.opened)return void(o._checkOverflowOnOpen=!0);const a=e.scrollLeft,s=a/(e.scrollWidth-e.offsetWidth),l=e.scrollTop,d=l/(e.scrollHeight-e.offsetHeight);let m,c,u;"auto"===r&&(e.classList.remove("scroll-buttons-shown"),e.classList.remove("one-button-shown"),n[0].$.addClass("smart-hidden"),n[1].$.addClass("smart-hidden")),t?(m=Math.round(e.scrollWidth)>Math.round(e.offsetWidth),c=s>0,u=s<1):(m=Math.round(e.scrollHeight)>Math.round(e.offsetHeight),c=d>0,u=d<1),m?"auto"===r?(e.classList.add("scroll-buttons-shown"),c&&n[0].$.removeClass("smart-hidden"),u&&n[1].$.removeClass("smart-hidden"),!1===(c&&u)&&e.classList.add("one-button-shown"),o.disabled||(n[0].disabled=!1,n[1].disabled=!1),e.scrollLeft=a,e.scrollTop=l):(n[0].$.removeClass("smart-hidden"),n[1].$.removeClass("smart-hidden"),o.disabled?(n[0].disabled=!0,n[1].disabled=!0):(n[0].disabled=!c,n[1].disabled=!u)):"scroll"===r&&(n[0].disabled=!0,n[1].disabled=!0),e===i&&"tree"!==o.mode&&o._close(),o._scrollInfo.set(e,{left:e.scrollLeft,top:e.scrollTop})}_checkOverflowAddRemove(e,t){const n=this;1===e&&null!==n.dropDownAppendTo||"tree"===n.mode?n._checkOverflow(n.$.mainContainer,"horizontal"===n.mode,[n.$.scrollButtonNear,n.$.scrollButtonFar]):e>1&&t.dropDownHeightSet&&(n._isContainerOpened(e,t.container)?n._checkOverflow(t,!1,[t.container.children[0],t.container.children[2]]):t.checkOverflow=!0)}_close(){const e=this;e._positionDetection.removeOverlay(),e._closeSubContainers(2),e._discardKeyboardHover(!0),e._minimized&&e._minimizedDropDownOpened&&(e.$mainContainer.addClass("smart-visibility-hidden"),e._edgeMacFF&&(e.$.mainContainer.style.left="",e.$.mainContainer.style.top="",e.$mainContainer.addClass("not-in-view")),e.$hamburgerIcon.removeClass("smart-close-button"),e.$.hamburgerIcon.setAttribute("aria-expanded",!1),e._minimizedDropDownOpened=!1)}_closeSubContainers(e,t,n,o){const i=this;"tree"===i.mode||i._minimized?i._closeSubContainersTreeMode(e,t,n,o):i._closeSubContainersDefaultMode(e,t,n)}_closeSubContainersDefaultMode(e,t,n){const o=this,i=o._openedContainers;function r(t){const r=i[t].menuItemsGroup;n&&t===e||(r.$.removeClass("focus"),r.removeAttribute("focus"),r.$.removeClass("hover"),r.removeAttribute("hover")),r.$.removeClass("smart-menu-items-group-opened"),r.$.removeClass("smart-menu-items-group-expanded"),r.setAttribute("aria-expanded",!1),i[t].$.addClass("smart-visibility-hidden"),o._edgeMacFF&&2===t&&!o.hasAnimation&&(i[t].style.left="",i[t].style.top="",i[t].$.addClass("not-in-view")),o._minimized&&o._browserBoundsDetection(o.$.mainContainer),o.$.fireEvent("collapse",{item:r,label:r.label,path:r.path,value:r.value,children:r.itemContainer.children}),i[t]=void 0}for(let t=i.length-1;t>=e;t--)void 0!==i[t]&&r(t)}_closeSubContainersTreeMode(e,t,n,o,i){const r=this;if(o){const e=t.menuItemsGroup;if(r.$.fireEvent("collapsing",{item:e,label:e.label,path:e.path,value:e.value,children:t.itemContainer.children}).defaultPrevented)return}if(void 0===t)return void r._collapseAll(!1,i);const a=t.menuItemsGroup;if(a.set("expanded",!1),a.setAttribute("aria-expanded",!1),"menu"===r._element)if(n){const e=r.$.mainContainer.getElementsByClassName("focus")[0];e&&(e.$.removeClass("focus"),e.removeAttribute("focus")),a.$.addClass("focus"),a.setAttribute("focus",""),r._focusedViaKeyboard=a}else a.$.removeClass("focus"),a.removeAttribute("focus");else r._updateState("expanded",a.id,!1);if(a.$.removeClass("smart-"+r._element+"-items-group-opened"),i||!r.hasAnimation?(a.$.removeClass("smart-"+r._element+"-items-group-expanded"),a.setAttribute("aria-expanded",!1),t.$.addClass("smart-visibility-hidden"),r._minimized&&r._browserBoundsDetection(r.$.mainContainer)):r._collapseSection(t),o){const e={item:a,label:a.label,path:a.path,value:a.value,children:a.itemContainer.children};r.toggleCallback?(e.type="collapse",r.toggleCallback(e)):r.$.fireEvent("collapse",e)}if(!r._openedContainers[e])return;const s=r._openedContainers[e].indexOf(t);-1!==s&&r._openedContainers[e].splice(s,1)}_collapseAll(e,t){const n=this;for(let o=n._openedContainers.length-1;o>=2&&void 0!==n._openedContainers[o];o--)for(let i=n._openedContainers[o].length-1;i>=0;i--)n._closeSubContainersTreeMode(o,n._openedContainers[o][i],void 0,e,t);n.hasAnimation||n._checkOverflow(n.$.mainContainer,!1,[n.$.scrollButtonNear,n.$.scrollButtonFar]);for(let e=n._openedContainers.length-1;e>=2;e--){const t=n._openedContainers[e];if(void 0!==t&&0!==t.length)break;n._openedContainers.splice(e,1)}2===n._openedContainers.length&&(n._openedContainers=[])}_collapseSection(e){const t=this,n=e.scrollHeight+"px";t._treeAnimationInProgress=e,e.style.transition="none",requestAnimationFrame((function(){"tree"===t.mode||t._minimized?(e.style.height=n,e.style.transition="",requestAnimationFrame((function(){e.style.height="0px","smart-tree"===t.tagName.toLowerCase()&&e.$.addClass("smart-visibility-hidden"),"0px"===n&&t._transitionendHandlerCollapse(t,e)}))):e.style.transition=""})),e.addEventListener("transitionend",t._transitionendHandlerCollapse)}_createElement(){const e=this,t=e.mode;e.setAttribute("role","menu"),e.$.mainContainer.id=e.id+"MainContainer",e.setAttribute("aria-orientation","horizontal"===e.mode?"horizontal":"vertical"),e._positionDetection=new Smart.Utilities.PositionDetection(e),e._positionDetection.getDropDownParent(),e._reparentMenu(),e.disabled&&(e.$.scrollButtonNear.disabled=!0,e.$.scrollButtonFar.disabled=!0),null===e.dataSource&&e.$.mainContainer.firstElementChild instanceof HTMLUListElement&&e._processUList();const n=(e.shadowRoot||e).querySelectorAll("smart-menu-item, smart-menu-items-group"),o=function(){const n=e.animation;e._changeScrollButtonsArrows(),e._setFocusable(),"dropDown"===t&&!1===e.opened&&(e.hasAnimation?(e.animation="none",e.$.addClass("smart-visibility-hidden"),e.animation=n):e.$.addClass("smart-visibility-hidden")),e._menuItems={},e.$.mainContainer.setAttribute("animation",n),null===e.dataSource?e._processHTML(e.$.mainContainer,1):e._processDataSource(),e._checkContainersLength(!0),null===e.dropDownAppendTo&&!e.$mainContainer.hasClass("simple")&&"tree"!==e.mode||"scroll"!==e.overflow||(e.$mainContainer.addClass("scroll-buttons-shown"),e.$scrollButtonNear.removeClass("smart-hidden"),e.$scrollButtonFar.removeClass("smart-hidden"),e._updateScrollButtonVisibility(e.$.mainContainer,"horizontal"===t,[e.$.scrollButtonNear,e.$.scrollButtonFar])),e._applyMinimizeIconTemplate(e.minimizeIconTemplate,null),"tree"===t&&e._applyTreeMode(),null!==e.minimizeWidth&&e.offsetWidth<=e.minimizeWidth?e.minimize():e._checkOverflow(e.$.mainContainer,"horizontal"===t,[e.$.scrollButtonNear,e.$.scrollButtonFar]),e._expandItemsByDefault(),e._refreshCheckableItems(),e.__onCompleted&&(e._onCompleted=e.__onCompleted,e.__onCompleted=null,e._onCompleted())};0===n.length||e.enableShadowDOM||e.isInShadowDOM?o():(e._onCompleted&&(e.__onCompleted=e._onCompleted,e._onCompleted=null),e._ensureItemsReady(n,o))}_ensureItemsReady(e,t){const n=this,o=function(){const n=function(t){for(let n=0;n<e.length;n++)e[n].context="node"===t?e[n]:document};n("node"),t(),n()};if(0===e.length)o();else{n._nodesReadyListeners=0;for(let t=0;t<e.length;t++){const i=e[t],r=function(){const e=n.context;n.context=n,n._nodesReadyListeners--,0===n._nodesReadyListeners&&(o(),delete n._nodesReadyListeners),n.context=e}.bind(n);i.isCompleted||(n._nodesReadyListeners++,i.completeHandlers=[],i._onCompleted=r)}0===n._nodesReadyListeners&&o()}}_createItemHTMLStructure(e,t,n,o){const i=this,r="smart-"+i._element+"-item-label-container",a="smart-"+i._element+"-item-label-element",s=document.createDocumentFragment(),l=e.children;let d,m,c,u;for(let e=0;e<l.length;e++){const t=l[e];if(t.classList&&(t.classList&&t.classList.contains(r)?d=t:t.classList&&t.classList.contains(a)&&(m=t),d&&m))break}if(d){const t=d.querySelector("."+a);if(null!==t){e.insertBefore(t.firstElementChild,e.children[0]);const n="smart-"+i._element+"-drop-down",o="smart-"+i._element+"-item-container",r=e.querySelector("."+n);if(r){const t=e.querySelector("."+o);for(;t.childNodes.length;)e.appendChild(t.firstChild);r.remove()}}d.remove()}m&&m.remove(),d=document.createElement("div"),m=document.createElement("div");let p=document.createElement("span");e.menu=i,t>1?(e.originalIndex=o,c=n.path+"."+e.originalIndex,e.parentItem=n,u=n):(e.originalIndex=o,c=""+o,u=i),i.checkboxes&&u.checkable&&("checkbox"===u.checkMode?e.setAttribute("role","menuitemcheckbox"):"radioButton"===u.checkMode&&e.setAttribute("role","menuitemradio")),e.path=c,i._menuItems[c]=e,d.className=r,m.className=a,"tree"===i._element&&i._setIndentation(d,t,i.rightToLeft?"paddingRight":"paddingLeft");const h=Array.from(e.childNodes);for(let e=0;e<h.length;e++){const t=h[e];if(t instanceof Smart.MenuItem||t instanceof Smart.MenuItemsGroup)break;p.appendChild(t)}if(""===p.innerHTML.trim()){const t=e.label||e.getAttribute("label");t&&""!==t?i._setLabel(t,p,e,!0):(e.set("label","Item "+o),p.innerHTML="Item "+o)}else e.set("label",p.innerHTML.trim());if(e.setAttribute("aria-label",e.label),e instanceof Smart.MenuItemsGroup&&void 0===e.titleLabel&&(e.titleLabel=e.label),m.appendChild(p),s.appendChild(m),e.set("level",t),e.set("shortcut",e.shortcut||e.getAttribute("shortcut")||""),e.shortcut&&e instanceof Smart.MenuItem){const t=document.createElement("div");t.id=e.id+"Shortcut",t.className="smart-"+i._element+"-item-shortcut",t.innerHTML=e.shortcut,s.appendChild(t),e.setAttribute("aria-describedby",t.id)}d.appendChild(s),e.insertBefore(d,e.children[0]),e.id||(e.id=i.id+"ItemP"+e.path.replace(/\./g,"_")+"L"+e.label.replace(/[^a-zA-Z0-9\-\_]/g,""))}_createMenuItemsGroupContainer(e,t){const n=this,o=e.children,i="smart-"+n._element+"-drop-down",r="smart-"+n._element+"-item-container";let a,s;for(let e=0;e<o.length;e++){const t=o[e];if(t.classList&&(t.classList&&t.classList.contains(i)?a=t:t.classList&&t.classList.contains(r)&&(s=t),a&&s))break}if(a||(a=document.createElement("div")),s||(s=document.createElement("div")),a.innerHTML=s.innerHTML="",a.id=e.id+"Container",a.className="smart-"+n._element+"-drop-down smart-visibility-hidden",n._edgeMacFF&&2===t&&"tree"!==n.mode&&(a.className+=" not-in-view"),a.$||(a.$=Smart.Utilities.Extend(a)),a.level=t,a.setAttribute("level",t),"menu"===n._element?(e.setAttribute("aria-owns",a.id),a.setAttribute("role","menu")):a.setAttribute("role","group"),a.menuItemsGroup=e,s.className=r,s.$||(s.$=Smart.Utilities.Extend(s)),s.container=a,s.menuItemsGroup=e,e.checkable&&s.setAttribute("checkable",""),s.setAttribute("check-mode",e.checkMode),s.setAttribute("role","presentation"),a.itemContainer=s,a.contains(s)||a.appendChild(s),null!==e.dropDownHeight){let t=a.querySelector(".smart-spin-button.smart-scroll-button-near"),o=a.querySelector(".smart-spin-button.smart-scroll-button-far");t||(t=document.createElement("smart-repeat-button")),o||(o=document.createElement("smart-repeat-button")),t.className="smart-menu-scroll-button smart-spin-button smart-scroll-button-near smart-hidden",t.setAttribute("aria-label","Scroll up"),t.innerHTML='<div class="smart-arrow smart-arrow-up" aria-hidden="true"></div>',t.animation=n.animation,t.unfocusable=!0,t.rightToLeft=n.rightToLeft,o.className="smart-menu-scroll-button smart-spin-button smart-scroll-button-far smart-hidden",o.setAttribute("aria-label","Scroll down"),o.innerHTML='<div class="smart-arrow smart-arrow-down" aria-hidden="true"></div>',o.animation=n.animation,o.unfocusable=!0,o.rightToLeft=n.rightToLeft,a.contains(t)||a.insertBefore(t,s),a.contains(o)||a.appendChild(o),a.$.addClass("drop-down-height-set"),s.dropDownHeightSet=!0,s.checkOverflow=!0,a.style.height=e.dropDownHeight+"px",n._containersFixedHeight.push(a),n._additionalScrollButtons.push([t,o])}return a}_discardKeyboardHover(e){const t=this;t._focusedViaKeyboard&&(!e&&t._focusedViaKeyboard instanceof Smart.MenuItemsGroup&&t._isContainerOpened(t._focusedViaKeyboard.level+1,t._focusedViaKeyboard.container)||(t._focusedViaKeyboard.$.removeClass("focus"),t._focusedViaKeyboard.removeAttribute("focus"),t._focusedViaKeyboard.$.removeClass("hover"),t._focusedViaKeyboard.removeAttribute("hover"),t._focusedViaKeyboard=void 0))}_documentDownHandler(e){const t=this;"down"===t.closeAction&&t._closeOnDocumentInteraction(e.originalEvent)}_documentUpHandler(e){const t=this,n=e.originalEvent.target;if(t.disabled||t.displayLoadingIndicator||!n.closest)return;const o="up"===t.closeAction&&t._closeOnDocumentInteraction(e.originalEvent);if(o)return;let i,r;if(t.isInShadowDOM?(i=t.isInShadowDOM?t.getRootNode().activeElement:t.shadowRoot&&t.shadowRoot.activeElement||document.activeElement,r=t.$.container.contains(e.originalEvent.composedPath()[0])):(i=document.activeElement,r=t.contains(n)),!o&&t!==i&&null===i.closest("[template-applied]")){if(r||n.closest(".smart-list-menu-view")===t.$.view)return void t.focus();const e=n.closest(".smart-drop-down-repositioned");e&&e.ownerElement===t&&t.focus()}}_closeOnDocumentInteraction(e){const t=this,n=e.target;let o,i;if(t.isInShadowDOM?(o=e.composedPath()[0],i=t.$.container.contains(o)):i=t.contains(n),"dropDown"===t.mode&&t.opened){const e=n.closest(".smart-drop-down-repositioned");if(!(i||e&&e.ownerElement===t))return t.close({trigger:"interaction",target:t.isInShadowDOM?o:n}),!0}const r=(o||n).closest(".smart-input-drop-down-menu");return(!r||!t.contains(r.ownerElement))&&(!i&&null===n.closest(".smart-menu-drop-down")||o&&o===t.$.mainContainer||n===t.$.mainContainer?("tree"===t.mode||t._close(),!0):void 0)}_ensureVisible(e){const t=this;if(t._minimized)return;const n=t.mode,o=t.$.mainContainer;let i,r;if("tree"!==n&&e.parentElement!==o){if(null===e.dropDownHeight)return;i=e.parentElement,r=[i.container.children[0],i.container.children[2]]}else i=o,r=[t.$.scrollButtonNear,t.$.scrollButtonFar];if(i===o&&(null===t.dropDownAppendTo&&"tree"!==t.mode&&!o.classList.contains("simple")||!i.$.hasClass("scroll-buttons-shown")&&"hidden"!==t.overflow))return;const a=i.getBoundingClientRect(),s=e.getBoundingClientRect();function l(t,n,o){let r=e.firstElementChild[o]+t-i[o];r<0&&(r=t),i["scroll"+n]=r}function d(n,a){let s=e["offset"+n],d=i[a];"Top"!==n||i===o||r[0].$.hasClass("smart-hidden")||(s-=r[0][a]),l(s,n,a),t._updateScrollButtonVisibility(i,"Left"===n,r),d!==i[a]&&l(s,n,a)}"tree"!==n?(i===o&&"horizontal"===n&&(a.left>s.left||a.right<s.right)?d("Left","offsetWidth"):(a.top>s.top||a.bottom<s.bottom)&&d("Top","offsetHeight"),t._scrollInfo.set(i,{left:i.scrollLeft,top:i.scrollTop})):t._ensureVisibleTreeMode(e,s,i,a,0)}_ensureVisibleTreeMode(e,t,n,o,i){const r=this;if(("menu"===r._element||"scrollButtons"===r.scrollMode)&&!n.$.hasClass("scroll-buttons-shown")&&"hidden"!==r.overflow)return;const a=n.offsetHeight,s=r.$scrollButtonNear.hasClass("smart-hidden");let l;if(o.top>t.top)l=r._getOffsetTop(e);else{let n=e.expanded?e.firstElementChild.offsetHeight+parseInt(window.getComputedStyle(e.children[1]).marginTop,10):e.offsetHeight;if("tree"===r._element&&(n+=parseFloat(getComputedStyle(r).getPropertyValue("--smart-tree-item-vertical-offset"))||0),!(o.bottom<t.top+n))return;l=r._getOffsetTop(e)-a+n+i}"tree"===r._element&&"0"===e.path&&(l-=parseFloat(getComputedStyle(r).getPropertyValue("--smart-tree-item-vertical-offset"))),n.scrollTop=l,"menu"!==r._element&&"scrollButtons"!==r.scrollMode||r._updateScrollButtonVisibility(n,!1,[r.$.scrollButtonNear,r.$.scrollButtonFar]),"auto"===r.overflow&&s&&!r.$scrollButtonNear.hasClass("smart-hidden")&&(n.scrollTop+=a-n.offsetHeight),r._scrollInfo.set(n,{left:n.scrollLeft,top:n.scrollTop})}_escapeHandler(e,t,n){e&&(e.$.removeClass("focus"),e.removeAttribute("focus")),this._closeSubContainers(t,void 0,void 0,!0),this._hoverViaKeyboard(n.menuItemsGroup)}_expandItemsByDefault(e){const t=this;if(0===t._menuItemsGroupsToExpand.length&&!e||"tree"!==t.mode&&!t._minimized)return;const n=t.hasAnimation,o=t.animation;n&&(t.animation="none"),e&&t._collapseAll(!1);for(let e=0;e<t._menuItemsGroupsToExpand.length;e++)t.expandItem(t._menuItemsGroupsToExpand[e].path,void 0,!1);n&&(t.animation=o),t._menuItemsGroupsToExpand=[]}_expandSection(e){const t=this,n=e.style.height,o=e.scrollHeight+"px";e.style.height=o,t._treeAnimationInProgress=e,n!==o&&(parseFloat(n)||parseFloat(o))?e.addEventListener("transitionend",t._transitionendHandlerExpand):t._transitionendHandlerExpand(t,e)}_filterInputKeyupHandler(){const e=this;e._filterTimer&&clearTimeout(e._filterTimer),e._filterTimer=setTimeout((function(){const t=e.context;e.context=e,e._applyFilter(e.$.filterInput.value,e._view),e._checkOverflow(),e.context=t}),300)}_findItem(e,t){if(""===t)return e;const n=e[this.filterMember||"label"];if("string"!=typeof n)return null;switch(this.filterMode){case"startsWith":if(0===n.indexOf(t))return e;break;case"startsWithIgnoreCase":if(0===n.toLowerCase().indexOf(t.toLowerCase()))return e;break;case"doesNotContain":if(n.indexOf(t)<0)return e;break;case"doesNotContainIgnoreCase":if(n.toLowerCase().indexOf(t.toLowerCase())<0)return e;break;case"contains":if(n.indexOf(t)>-1)return e;break;case"containsIgnoreCase":if(n.toLowerCase().indexOf(t.toLowerCase())>-1)return e;break;case"equals":if(0===n.localeCompare(t))return e;break;case"equalsIgnoreCase":if(0===n.toLowerCase().localeCompare(t.toLowerCase()))return e;break;case"endsWith":if(n.endsWith(t))return e;break;case"endsWithIgnoreCase":if(n.toLowerCase().endsWith(t.toLowerCase()))return e}return null}_getFirstEnabledChild(e){const t=e.children;for(let e=0;e<t.length;e++)if(this._isChildEnabled(t[e]))return t[e]}_getLastEnabledChild(e){const t=e.children;for(let e=t.length-1;e>=0;e--)if(this._isChildEnabled(t[e]))return t[e]}_getNextEnabledChild(e){if(e)for(;e.nextElementSibling;){const t=e.nextElementSibling;if(this._isChildEnabled(t))return t;e=t}}_getOffsetTop(e){if(!e)return 0;let t=e.offsetTop;for(;e.offsetParent!==this.$.mainContainer;){if(!(e=e.offsetParent))return t;t+=e.offsetTop}return t}_getPreviousEnabledChild(e){if(e)for(;e.previousElementSibling;){const t=e.previousElementSibling;if(this._isChildEnabled(t))return t;e=t}}_hamburgerIconClickHandler(e,t){e&&e.stopPropagation();const n=this;if(void 0===t&&(t=Smart.ListMenu&&n instanceof Smart.ListMenu?n.$.view:n.$.mainContainer),!n.disabled)if(n._minimizedDropDownOpened)n._close();else{if(n._positionDetection.placeOverlay(),null!==n.dropDownAppendTo){const e=n.dropDownPosition,o=n.getBoundingClientRect(),i=n._positionDetection.getDropDownOffset();-1!==e.indexOf("right")||"auto"===e?n.rightToLeft?(t.style.right="initial",t.style.left=o.left+o.width-t.offsetWidth-i.x+"px"):(t.style.left=o.left+i.x+"px",t.style.right="initial"):-1!==e.indexOf("left")&&(t.style.left=o.right-t.offsetWidth+i.x+"px",t.style.right="initial"),-1!==e.indexOf("bottom")||-1!==e.indexOf("overlay")||"auto"===e?t.style.top=o.bottom+i.y+"px":-1!==e.indexOf("top")&&(t.style.top=o.top+i.y+"px")}else t.style.right="";n._edgeMacFF&&t.$.removeClass("not-in-view"),t.$.removeClass("smart-visibility-hidden"),n.$hamburgerIcon.addClass("smart-close-button"),n.$.hamburgerIcon.setAttribute("aria-expanded",!0),n._minimizedDropDownOpened=!0,n._browserBoundsDetection(t)}}_handleOverflowChange(){const e=this,t=e.$.mainContainer;if((e._minimized||null===e.dropDownAppendTo&&!t.classList.contains("simple")&&"tree"!==e.mode)&&!(Smart.ListMenu&&e instanceof Smart.ListMenu))return;const n=e.overflow;let o;"horizontal"===e.mode?(o=!0,t.scrollLeft=0):(o=!1,t.scrollTop=0),"hidden"===n?(t.classList.remove("scroll-buttons-shown"),e.$scrollButtonNear.addClass("smart-hidden"),e.$scrollButtonFar.addClass("smart-hidden")):(e.$.scrollButtonNear.disabled=e.disabled,e.$.scrollButtonFar.disabled=e.disabled,"auto"===n?(e.$scrollButtonNear.addClass("smart-hidden"),e.$scrollButtonFar.addClass("smart-hidden"),e._checkOverflow(t,o,[e.$.scrollButtonNear,e.$.scrollButtonFar])):(t.classList.add("scroll-buttons-shown"),t.classList.remove("one-button-shown"),e.$scrollButtonNear.removeClass("smart-hidden"),e.$scrollButtonFar.removeClass("smart-hidden"),e._updateScrollButtonVisibility(t,o,[e.$.scrollButtonNear,e.$.scrollButtonFar]))),e._scrollInfo.set(t,{left:t.scrollLeft,top:t.scrollTop})}_hideMainContainerScrollButtons(){const e=this;e.$scrollButtonNear.addClass("smart-hidden"),e.$scrollButtonFar.addClass("smart-hidden"),e.$mainContainer.removeClass("scroll-buttons-shown"),e.$mainContainer.removeClass("one-button-shown")}_hoverViaKeyboard(e){e&&(e.$.addClass("focus"),e.setAttribute("focus",""),this._focusedViaKeyboard=e,this._ensureVisible(e))}_isBranchExpanded(e){if("tree"!==this.mode)return!0;let t=!0;for(;e.parentItem;)t=t&&e.parentItem.expanded,e=e.parentItem;return t}_isChildEnabled(e){return!(e.disabled||e.templateApplied||e.hidden||e instanceof HTMLDivElement||0===e.offsetHeight)}_isContainerOpened(e,t){const n=this;return"tree"===n.mode||n._minimized?(n._openedContainers[e]||(n._openedContainers[e]=[]),-1!==n._openedContainers[e].indexOf(t)):n._openedContainers[e]===t}_keydownHandler(e){const t=this;let n=e.key;if(t.getRootNode().activeElement!==t||-1===["ArrowDown","ArrowLeft","ArrowRight","ArrowUp","End","Enter","Escape","Home"," "].indexOf(n)||t.disabled)return;e.preventDefault();const o=t.mode;if("tree"===o||t._minimized)return void t._keydownHandlerTreeMode(n);const i=t.dropDownPosition,r=-1!==i.indexOf("left"),a="top-left"===i||"top-right"===i,s=t._openedContainers;let l,d=t.$.mainContainer,m=1;for(let e=s.length-1;e>=0;e--)if(void 0!==s[e]){d=s[e],m=d.level,d=d.itemContainer;break}switch(l=d.querySelector('[focus][level="'+m+'"]'),t.rightToLeft&&("ArrowLeft"===n?n="ArrowRight":"ArrowRight"===n&&(n="ArrowLeft")),n){case"ArrowDown":1===m?"horizontal"!==o||a?"horizontal"!==o&&t._levelOneNavigate("_getFirstEnabledChild",l,d):t._levelOneOpenDropDown(l):t._navigate("_getNextEnabledChild",l,d);break;case"ArrowLeft":r?1===m?"horizontal"===o?t._levelOneNavigate("_getLastEnabledChild",l,d):t._levelOneOpenDropDown(l):l instanceof Smart.MenuItemsGroup?t._selectionHandler({target:l,isTrusted:!0}):t._levelOneNavigateFromLowerLevel("_getPreviousEnabledChild",l):t._arrowLeftHandler(m,o,l,d);break;case"ArrowRight":r?1===m?"horizontal"===o&&t._levelOneNavigate("_getFirstEnabledChild",l,d):2===m?t._levelOneNavigateFromLowerLevel("_getNextEnabledChild",l):t._escapeHandler(l,m,d):t._arrowRightHandler(m,o,l,d);break;case"ArrowUp":1===m?"horizontal"===o&&a?t._levelOneOpenDropDown(l):"horizontal"!==o&&t._levelOneNavigate("_getLastEnabledChild",l,d):t._navigate("_getPreviousEnabledChild",l,d);break;case"End":case"Home":{const e="End"===n?t._getLastEnabledChild(d):t._getFirstEnabledChild(d);if(!e||l===e)return;l&&(l.$.removeClass("focus"),l.removeAttribute("focus")),t._hoverViaKeyboard(e);break}case"Enter":l&&t._selectionHandler({target:l,isTrusted:!0});break;case"Escape":m>1?(2===m&&t._positionDetection.removeOverlay(),t._escapeHandler(l,m,d)):"dropDown"===o&&t.opened&&t.close({trigger:"interaction",target:"Escape"});break;case" ":l&&t._toggleItem(l)}}_keydownHandlerTreeMode(e){const t=this,n=Array.from(t.$.mainContainer.querySelectorAll("smart-menu-item, smart-menu-items-group")),o=t.$.mainContainer.getElementsByClassName("focus")[0];function i(e){const n=e.level;return!1===e.disabled&&!0!==e.templateApplied&&(1===n||n>1&&t._isContainerOpened(n,e.parentElement.container)&&e.getBoundingClientRect().height>0)}function r(e){for(let r=e;r<n.length;r++){const e=n[r];if(i(e)){if(o){if(o===e)break;o.$.removeClass("focus"),o.removeAttribute("focus")}t._hoverViaKeyboard(e);break}}}function a(e){for(let r=e;r>=0;r--){const e=n[r];if(i(e)){if(o){if(o===e)break;o.$.removeClass("focus"),o.removeAttribute("focus")}t._hoverViaKeyboard(e);break}}}function s(){o.level>1&&(o.$.removeClass("focus"),o.removeAttribute("focus"),t._hoverViaKeyboard(o.parentItem))}let l;switch(e){case"ArrowDown":l=o?n.indexOf(o)+1:0,r(l);break;case"ArrowLeft":if(!o)return;if(o instanceof Smart.MenuItem)s();else{if(t._isContainerOpened(o.level+1,o.container))return void t._closeSubContainers(o.level+1,o.container,!0,!0);s()}break;case"ArrowRight":if(!o||o instanceof Smart.MenuItem)return;t._isContainerOpened(o.level+1,o.container)?(o.$.removeClass("focus"),o.removeAttribute("focus"),t._hoverViaKeyboard(t._getFirstEnabledChild(o.itemContainer))):t._selectionHandler({target:o,type:"keydown",isTrusted:!0},o);break;case"ArrowUp":l=o?n.indexOf(o)-1:n.length-1,a(l);break;case"End":a(n.length-1);break;case"Enter":t._minimized&&!t._minimizedDropDownOpened?t._hamburgerIconClickHandler(void 0,t.$.mainContainer):o&&t._selectionHandler({target:o,type:"keydown",isTrusted:!0});break;case"Escape":t._minimized&&t._minimizedDropDownOpened&&t._close();break;case"Home":r(0);break;case" ":o&&t._toggleItem(o)}}_lazyInitItems(){const e=this;e._inLazyInit||(e._inLazyInit=!0,e._menuItems={},e._processHTML(e.$.mainContainer,1),e._expandItemsByDefault(),e._refreshCheckableItems(),cancelAnimationFrame(Smart.Menu.processTimer),delete Smart.Menu.processTimer,e._inLazyInit=!1,e.$.scrollViewer&&e.$.scrollViewer.refresh())}_levelOneNavigate(e,t,n){const o=this;if(t)"_getLastEnabledChild"===e?o._navigate("_getPreviousEnabledChild",t,n):o._navigate("_getNextEnabledChild",t,n);else{const t=o[e](n);t&&o._hoverViaKeyboard(t)}}_levelOneNavigateFromLowerLevel(e,t){const n=this,o=n[e](n._openedContainers[2].menuItemsGroup);o&&(t&&(t.$.removeClass("focus"),t.removeAttribute("focus")),n._closeSubContainers(2),o instanceof Smart.MenuItemsGroup?n._selectionHandler({target:o,isTrusted:!0}):n._hoverViaKeyboard(o))}_levelOneOpenDropDown(e){e&&e instanceof Smart.MenuItemsGroup&&this._selectionHandler({target:e,isTrusted:!0})}_mainContainerHandler(e){const t=this;if(t._minimized&&null!==t.dropDownAppendTo)switch(e.type){case"click":t._selectionHandler(e);break;case"mouseleave":t._mouseleaveHandler(e);break;case"mouseout":case"mouseover":t._mouseoutMouseoverHandler(e)}}_menuItemSelectionHandler(e,t){const n=this;function o(){n.enableShadowDOM&&(n.shadowRoot.activeElement||document.activeElement)!==n&&null!==n.dropDownAppendTo&&"click"===t.type&&!n.shadowRoot.contains(e)?n.focus():document.activeElement===n||null===n.dropDownAppendTo||"click"!==t.type||n.contains(e)||n.focus()}if(e.disabled||e.templateApplied)o();else{if(!n._toggleItem(e)){if(n.$.fireEvent("itemClick",{item:e,label:e.label,value:e.value}),t.target&&"A"!==t.target.nodeName){const t=e.querySelector("a");t&&t.click()}if("tree"!==n.mode&&(n._close(),"dropDown"===n.mode))return n._ripple(e,t),void n.close({trigger:"interaction",target:e})}n._ripple(e,t),o()}}_menuItemsGroupSelectionHandler(e,t,n){const o=this,i=o.mode,r=e.container,a=r.level,s="tree"!==i&&!o._minimized;if(o._treeAnimationInProgress===r)return;if(o._discardKeyboardHover(),o.getRootNode().activeElement===o||null===o.dropDownAppendTo||"click"!==t.type||o.contains(t.target)||o.focus(),"click"===t.type&&(!t.target.classList.contains("smart-"+o._element+"-items-group-arrow")&&o._toggleItem(e)||"mouseenter"===o.selectionMode&&"tree"!==i&&!o._minimized))return;let l=o.hasAnimation;if(o._isContainerOpened(a,r))o._closeSubContainers(a,r,!0,!1!==n),s&&e.hasAttribute("focus")&&(o._focusedViaKeyboard=e);else{if(o.$.fireEvent("expanding",{item:e,label:e.label,path:e.path,value:e.value,children:e.itemContainer.children}).defaultPrevented)return;if(o._positionDetection.placeOverlay(),s&&o._closeSubContainers(a),l&&!s&&("expand"!==t.type&&(o._ensureVisibleOnTransitionend=e),o._expandSection(r)),o._edgeMacFF&&2===a&&s&&r.$.removeClass("not-in-view"),r.$.removeClass("smart-visibility-hidden"),s||"expand"!==t.type){if(s)"keydown"===t.type&&(o._focusedViaKeyboard=e);else{const t=o.$.mainContainer.getElementsByClassName("focus")[0];t&&(t.$.removeClass("focus"),t.removeAttribute("focus")),o._focusedViaKeyboard=e}e.$.addClass("focus"),e.setAttribute("focus","")}if(e.$.addClass("smart-"+o._element+"-items-group-opened"),e.$.addClass("smart-"+o._element+"-items-group-expanded"),e.setAttribute("aria-expanded",!0),o._addOpenedContainer(a,r),s){if(o._ensureVisible(e),e.level>1&&e.parentElement.dropDownHeightSet){const t=o.dropDownPosition,n=e.getBoundingClientRect().top-e.parentElement.container.getBoundingClientRect().top;-1!==t.indexOf("bottom")||"auto"===t?r.style.top=n+"px":-1!==t.indexOf("top")?r.style.top=n+e.offsetHeight+"px":r.style.top=n+e.offsetHeight/2+"px"}r.itemContainer.checkOverflow&&r.itemContainer.dropDownHeightSet&&(o._checkOverflow(r.itemContainer,!1,[r.children[0],r.children[2]]),delete r.itemContainer.checkOverflow)}o._positionExternalContainer(r,e),"tree"===i||o._minimized?l||o._browserBoundsDetection(o.$.mainContainer):o._browserBoundsDetection(r),void 0===t.type&&o._hoverViaKeyboard(o._getFirstEnabledChild(e.itemContainer)),!1!==n&&o.$.fireEvent("expand",{item:e,label:e.label,path:e.path,value:e.value,children:e.itemContainer.children})}s?o._ripple(e,t):"tree"!==i||l||(o._checkOverflow(o.$.mainContainer,!1,[o.$.scrollButtonNear,o.$.scrollButtonFar]),o._minimized||"expand"===t.type||o._ensureVisible(e))}_mouseenterHandler(){const e=this;e.autoFocusOnMouseenter&&e.getRootNode().activeElement!==e&&e.focus()}_mouseleaveHandler(e){const t=this;if("mouseenter"===t.selectionMode&&"tree"!==t.mode&&!t._minimized){if(null!==t.dropDownAppendTo&&e.relatedTarget)if(t.contains(e.target)){const n=e.relatedTarget.closest(".smart-menu-drop-down");if(n&&n.ownerElement===t)return}else if(t.contains(e.relatedTarget))return;t._isElementHovered=!1,t._autoCloseTimeout=setTimeout((function(){const e=t.context;clearTimeout(t._autoCloseTimeout),t._isElementHovered||(t.context=t,t._close(),t.context=e)}),t.autoCloseDelay)}}_mouseoutMouseoverHandler(e){const t=this;if(t.disabled||t.displayLoadingIndicator)return;let n=e.target.closest("smart-menu-item")||e.target.closest("smart-menu-items-group");if(t.enableShadowDOM&&(n=e.composedPath()[0].closest("smart-menu-item")||e.composedPath()[0].closest("smart-menu-items-group")||n),"mouseover"===e.type&&(t._isElementHovered=!0),null!==n&&!n.disabled&&!n.templateApplied&&("tree"!==t.mode&&!t._minimized||!n.hasAttribute("focus")||!e.relatedTarget||e.target.parentElement!==e.relatedTarget&&e.relatedTarget.parentElement!==e.target))if(t._discardKeyboardHover(!1),"mouseover"===e.type){"mouseenter"!==t.selectionMode||"tree"===t.mode||t._minimized||(n instanceof Smart.MenuItemsGroup&&!n.hasAttribute("hover")?t._selectionHandler(e,n):n instanceof Smart.MenuItem&&t._closeSubContainers(n.level+1));const o=e.target.closest(".smart-menu-drop-down");(!o||o&&!n.contains(o))&&(n.$.addClass("hover"),n.setAttribute("hover",""),t._discardKeyboardHover(!0))}else{if("tree"!==t.mode&&!t._minimized&&("mouseenter"===t.selectionMode&&e.relatedTarget===t.$.mainContainer&&t._close(),n instanceof Smart.MenuItemsGroup&&n.container&&!n.container.$.hasClass("smart-visibility-hidden")))return;n.$.removeClass("hover"),n.removeAttribute("hover")}}_moveDropDownsToExternalContainer(){const e=this;for(let t=0;t<e._containersInBody.length;t++){const n=e._containersInBody[t];e._dropDownParent.appendChild(n),n.$.listen("click",e._selectionHandler.bind(e)),n.$.listen("mouseleave",e._mouseleaveHandler.bind(e)),n.$.listen("mouseout",e._mouseoutMouseoverHandler.bind(e)),n.$.listen("mouseover",e._mouseoutMouseoverHandler.bind(e))}for(let t=0;t<e._containers.length;t++){const n=e._containers[t];n.ownerElement=e,""!==e.theme&&n.classList.add(e.theme),e.rightToLeft&&n.setAttribute("right-to-left",""),n.classList.add("smart-drop-down-repositioned"),n.setAttribute("mode",e.mode),n.setAttribute("drop-down-position",e.dropDownPosition),e.checkboxes&&n.setAttribute("checkboxes","")}}_moveDropDownsToMenu(){const e=this;for(let t=0;t<e._containersInBody.length;t++){const n=e._containersInBody[t];n.$.unlisten("click"),n.$.unlisten("mouseleave"),n.$.unlisten("mouseout"),n.$.unlisten("mouseover"),n.style.left="",n.style.right="",n.style.top="",n.style.marginLeft="",n.style.marginTop="",n.menuItemsGroup.appendChild(n)}for(let t=0;t<e._containers.length;t++){const n=e._containers[t];""!==e.theme&&n.classList.remove(e.theme),n.classList.remove("smart-drop-down-repositioned"),n.removeAttribute("mode"),n.removeAttribute("drop-down-position"),n.removeAttribute("checkboxes"),n.removeAttribute("right-to-left")}}_navigate(e,t,n){const o=this;if(!t)return void("_getNextEnabledChild"===e?o._hoverViaKeyboard(o._getFirstEnabledChild(n)):o._hoverViaKeyboard(o._getLastEnabledChild(n)));const i=o[e](t);i&&(t.$.removeClass("focus"),t.removeAttribute("focus"),o._hoverViaKeyboard(i))}_positionExternalContainer(e,t){const n=this;if(null===n.dropDownAppendTo||2!==e.level)return;const o=n.dropDownPosition,i=n.mode,r=t.getBoundingClientRect(),a=n._positionDetection.getDropDownOffset(),s=r.top+a.y,l=r.bottom+a.y;let d=r.left+a.x,m=r.right+a.x;switch(e.style.top=e.style.left=e.style.right="",n.rightToLeft&&(e.style.right="initial"),-1!==o.indexOf("left")?(d-=e.offsetWidth,"horizontal"!==i&&"overlay-left"!==o||(d+=r.width),e.style.left=d+"px",e.style.right="initial"):"horizontal"===i||"overlay-right"===o?e.style.left=d+"px":n.rightToLeft?e.style.left=m-e.offsetWidth+"px":e.style.left=d+r.width+"px",o){case"bottom-right":case"bottom-left":case"auto":e.style.top="horizontal"===i?l+"px":s+"px";break;case"top-right":case"top-left":e.style.top="horizontal"===i?s-e.offsetHeight+"px":l-e.offsetHeight+"px";break;case"overlay-right":case"overlay-left":e.style.top=s+r.height/2+"px"}}_processDataSource(){const e=this,t=e.dataSource,n=e.displayMember,o=e.itemsMember,i=e.valueMember,r=e.$.mainContainer,a=document.createDocumentFragment();function s(t,r){let a;if(Array.isArray(t[o])&&t[o].length>0){a=document.createElement("smart-"+e._element+"-items-group"),!0===t.checkable&&a.set("checkable",!0),"string"==typeof t.checkMode&&a.set("checkMode",t.checkMode),t.dropDownHeight&&a.set("dropDownHeight",t.dropDownHeight),!0===t.expanded&&"tree"===e.mode&&(a.set("expanded",!0),a.setAttribute("aria-expanded",!0));for(let e=0;e<t[o].length;e++)s(t[o][e],a)}else a=document.createElement("smart-"+e._element+"-item"),void 0!==t.shortcut&&a.set("shortcut",t.shortcut),t.customAttribute&&a.setAttribute(t.customAttribute,"");a.isDirty=!1,void 0!==t.id&&/^[A-Za-z]+[\w\-\:\.]*$/.test(t.id)&&(a.id=t.id),!0===t.checked&&(a.set("checked",!0),a.setAttribute("aria-checked",!0)),!0===t.disabled&&a.set("disabled",!0),void 0!==t[n]?a.set("label",t[n]):"string"==typeof t[o]&&a.set("label",t[o]),!0===t.selected&&a.set("selected",!0),!0===t.separator&&a.set("separator",!0),void 0!==t[i]&&a.set("value",t[i]),r.appendChild(a)}r.innerHTML="",r instanceof Smart.ScrollViewer&&r.removeAll();for(let e=0;e<t.length;e++)s(t[e],a);e.$.mainContainer.appendChild(a),e._processHTML(e.$.mainContainer,1)}_processHTML(e,t,n){const o=this;let i,r;t>1&&(i=o._createMenuItemsGroupContainer(e,t),r=i.itemContainer,(e.expanded||e.hasAttribute("expanded"))&&"tree"===o.mode?o._menuItemsGroupsToExpand.push(e):(e.set("expanded",!1),e.removeAttribute("expanded"),e.setAttribute("aria-expanded",!1)));const a=Array.from(e.children),s=[],l=document.createDocumentFragment();let d=0;for(let n=0;n<a.length;n++){if(t>1&&0===n){d++;continue}const i=a[n];i instanceof Smart.MenuItem||i instanceof Smart.MenuItemsGroup?(o._createItemHTMLStructure(i,t,e,n-d),(i.checked||i.hasAttribute("checked"))&&(i.disabled||i.hasAttribute("disabled")||i.templateApplied?(i.set("checked",!1),i.removeAttribute("checked"),i.removeAttribute("aria-checked")):s.push(i)),t>1&&l.appendChild(i),i instanceof Smart.MenuItemsGroup&&o._processHTML(i,t+1)):(i.parentElement.removeChild(i),d++)}if(t>1){if(r.appendChild(l),e.container=i,e.itemContainer=r,e instanceof Smart.MenuItemsGroup){const n=document.createElement("div");n.className="smart-"+o._element+"-items-group-arrow","menu"===o._element?n.setAttribute("role","presentation"):(n.setAttribute("role","button"),n.setAttribute("aria-label","Toggle")),o._setArrowDirection(n,t),e.firstElementChild.appendChild(n)}o._containers.push(i),2===t&&(o._containersInBody.push(i),o._edgeMacFF&&i.addEventListener("transitionend",(function(e){e.target===this&&this.$.hasClass("smart-visibility-hidden")&&(this.style.left="",this.style.top="",this.$.addClass("not-in-view"))}))),null===o.dropDownAppendTo||"tree"===o.mode||o._minimized?e.appendChild(i):(i.ownerElement=o,o.rightToLeft?i.setAttribute("right-to-left",""):i.removeAttribute("right-to-left"),i.classList.add("smart-drop-down-repositioned"),i.setAttribute("mode",o.mode),i.setAttribute("drop-down-position",o.dropDownPosition),o.checkboxes&&i.setAttribute("checkboxes",""),""!==o.theme&&i.$.addClass(o.theme),i.setAttribute("animation",o.animation),2===t?(o._dropDownParent.appendChild(i),i.$.listen("click",o._selectionHandler.bind(o)),i.$.listen("mouseleave",o._mouseleaveHandler.bind(o)),i.$.listen("mouseout",o._mouseoutMouseoverHandler.bind(o)),i.$.listen("mouseover",o._mouseoutMouseoverHandler.bind(o))):e.appendChild(i))}o._validateRadioButtonSelection(e,t,s),o._sortItems&&!1!==n&&o._sortItems(e)}_processUList(){const e=this,t=new RegExp(/<li>(.(?!<\/li>)|\n)*?<ul>/),n=new RegExp(/<\/ul>(.|\n)*?<\/li>/);let o=e.$.mainContainer.firstElementChild.innerHTML;for(o=o.replace(/\r?\n|\r/g,""),o=o.replace(/<li(.|\n)*?>/g,"<li>"),o=o.replace(/<li><\/li>/g,"<li> </li>"),o=o.replace(/<ul(.|\n)*?>/g,"<ul>");t.test(o);){const n=t.exec(o),i="<smart-"+e._element+"-items-group>"+n[0].slice(4,n[0].length-4);o=o.replace(n[0],i)}for(;n.test(o);){const t=n.exec(o),i="</smart-"+e._element+"-items-group>";o=o.replace(t[0],i)}o=o.replace(/li>/g,"smart-"+e._element+"-item>"),e.$.mainContainer.innerHTML=o}_refreshContainersArrays(){const e=this;for(let t=e._containers.length-1;t>=0;t--){const n=e._containers[t];if(!document.body.contains(n)){e._containers.splice(t,1);const o=e._containersFixedHeight.indexOf(n);o>-1&&(e._containersFixedHeight.splice(o,1),e._additionalScrollButtons.splice(o,1))}}e._checkContainersLength()}_refreshItemPaths(e,t,n,o){const i=this;let r;r=t?e:e.container.itemContainer;const a=n?n(e):r.children;for(let r=0;r<a.length;r++){const s=a[r];let l;o&&(s.originalIndex=r),l=t?""+r:e.path+"."+r,s.path=l,i._menuItems[l]=s,s instanceof Smart.MenuItemsGroup&&i._refreshItemPaths(s,void 0,n,o)}}_removeContainerFixedHeight(){const e=this;for(let t=0;t<e._containersFixedHeight.length;t++){const n=e._containersFixedHeight[t];n.style.height="",n.itemContainer.$.removeClass("scroll-buttons-shown"),n.itemContainer.$.removeClass("one-button-shown"),n.children[0].$.addClass("smart-hidden"),n.children[2].$.addClass("smart-hidden"),n.itemContainer.checkOverflow=!0}}_removeContainersInBody(){const e=this;if(null!==e.dropDownAppendTo&&!e._minimized)for(let t=0;t<e._containersInBody.length;t++)e._containersInBody[t].remove()}_reparentMenu(e,t){const n=this;if("dropDown"===n.mode&&(null!==n._dropDownParent||e)&&n._dropDownParent!==n.parentElement){if(e&&null!==t){if(null===n._dropDownParent)return n._positionRelativeTo.appendChild(n),void(n._positionRelativeTo=null)}else n._positionRelativeTo=n.parentElement;n._dropDownParent.appendChild(n)}}refresh(){const e=this;if(e._suppressResizeHandler)return void delete e._suppressResizeHandler;const t=e.minimizeWidth,n=e.mode;if(null!==t&&"dropDown"!==n){if(e.offsetWidth<=t&&!e._minimized)return void e.minimize();e.offsetWidth>t&&e.maximize()}(null!==e.dropDownAppendTo||"tree"===n||e.$mainContainer.hasClass("simple"))&&e._checkOverflow(e.$.mainContainer,"horizontal"===n,[e.$.scrollButtonNear,e.$.scrollButtonFar])}_resizeHandler(){this.refresh()}_ripple(e,t){if(this.hasRippleAnimation&&"click"===t.type)return Smart.Utilities.Animation.Ripple.animate(e,t.pageX,t.pageY),!0}_scroll(e){if(e.closest("[template-applied]"))return;const t=this,n=t.$.mainContainer,o=t.mode,i=e.classList.contains("smart-scroll-button-near")?-1:1;let r;if(e.parentElement===t.$.container)r=n,"tree"!==o&&t._closeSubContainers(2),"horizontal"===t.mode?(n.scrollLeft=n.scrollLeft+10*i,t._updateScrollButtonVisibility(n,!0,[t.$.scrollButtonNear,t.$.scrollButtonFar])):(n.scrollTop=n.scrollTop+10*i,t._updateScrollButtonVisibility(n,!1,[t.$.scrollButtonNear,t.$.scrollButtonFar]));else{const n=e.parentElement,o=n.itemContainer;r=o,t._closeSubContainers(n.level+1),o.scrollTop=o.scrollTop+10*i,t._updateScrollButtonVisibility(o,!1,[n.children[0],n.children[2]])}t._scrollInfo.set(r,{left:r.scrollLeft,top:r.scrollTop})}_selectionHandler(e,t){const n=this,o=e.target;if(o.closest("[template-applied]")&&e.stopPropagation(),!n.disabled&&!n.displayLoadingIndicator){if(void 0===t){if("click"===e.type){const t=o.closest("smart-repeat-button");if(t)return void n._scroll(t,e)}if(!e.isTrusted)return;const i=o.closest("smart-"+n._element+"-item");if(i)return void n._menuItemSelectionHandler(i,e);if((t=o.closest("smart-"+n._element+"-items-group"))&&(o===t.container||o===t.container.firstElementChild))return}t&&!t.disabled&&n._menuItemsGroupSelectionHandler(t,e)}}_setArrowDirection(e,t){const n=this,o=n.mode;"tree"===o||n._minimized?e.className="smart-"+n._element+"-items-group-arrow down smart-arrow-down":"overlay"!==n.dropDownPosition.slice(0,7)?2===t&&"horizontal"===o?"top"!==n.dropDownPosition.slice(0,3)?e.className="smart-menu-items-group-arrow down smart-arrow-down":e.className="smart-menu-items-group-arrow up smart-arrow-up":e.className="smart-menu-items-group-arrow "+(n.rightToLeft?"left smart-arrow-left":"right smart-arrow-right"):e.className="smart-menu-items-group-arrow minus"}_setFocusable(){const e=this;if(e.disabled||e.unfocusable)return void e.removeAttribute("tabindex");const t=e.getAttribute("tabindex");(null===t||t<0)&&e.setAttribute("tabindex",0)}_setItemLabel(e,t){const n=this,o=n.context,i=e.querySelector(".smart-menu-item-label-element>span");n.context=n,n._setLabel(t,i,e,!0),n._checkOverflow(n.$.mainContainer,"horizontal"===n.mode,[n.$.scrollButtonNear,n.$.scrollButtonFar]),n.context=o}_setLabel(e,t,n,o){const i=document.getElementById(e);if(null!==i&&"template"===i.tagName.toLowerCase()){const r=document.importNode(i.content,!0);if(n instanceof Smart.MenuItem)t.appendChild(r),o&&(n.setAttribute("template-applied",""),n.templateApplied=!0);else if(Smart.ListMenu&&this instanceof Smart.ListMenu){const e=new RegExp(/{{title="(.*)"}}/);for(let t=0;t<r.childNodes.length;t++)e.test(r.childNodes[t].innerHTML)?(n.titleLabel=e.exec(r.childNodes[t].innerHTML)[1],r.childNodes[t].innerHTML=r.childNodes[t].innerHTML.replace(e,"")):e.test(r.childNodes[t].textContent)&&(n.titleLabel=e.exec(r.childNodes[t].textContent)[1],r.childNodes[t].textContent=r.childNodes[t].textContent.replace(e,""));void 0===n.titleLabel&&(n.titleLabel=r.textContent),t.appendChild(r)}else t.innerHTML=e,n.titleLabel=e}else t.innerHTML=e,n instanceof Smart.MenuItemsGroup&&(n.titleLabel=e)}_toggleItem(e){const t=this;if(t.checkboxes){const n=1===e.level?t:e.parentItem;if(n.checkable){const o=t._getItemCheckableInfo(e,n);let i=!1;return"none"!==o.checkMode&&("checkbox"===o.checkMode?(i=!0,e.set("checked",!e.checked),e.checked?e.setAttribute("aria-checked",!0):e.removeAttribute("aria-checked"),t.$.fireEvent("itemCheckChange",{item:e,label:e.label,value:e.value,checked:e.checked})):"radioButton"!==o.checkMode||e.checked||(i=!0,e.set("checked",!0),e.setAttribute("aria-checked",!0),t._uncheckSiblings(e,o.siblings),t.$.fireEvent("itemCheckChange",{item:e,label:e.label,value:e.value,checked:!0})),e instanceof Smart.MenuItem&&i&&t.$.fireEvent("itemClick",{item:e,label:e.label,value:e.value}),"tree"===t.mode||"ListMenu"===t.elementName||t.preventCloseOnCheck||(t._close(),t.close()),!0)}}return!1}_getItemCheckableInfo(e,t){const n=Array.from(e.parentElement.children),o=t.checkMode.replace(/\s/g,"").split(",");let i,r;if(1===o.length)i=o[0],r=n;else{let t=0,a=!1;r=[];for(let o=0;o<n.length;o++){const i=n[o];if(r.push(i),i===e&&(a=!0),i.separator){if(!0===a)break;t++,r=[]}}i=o[t]}return{checkMode:i,siblings:r}}_refreshCheckableItems(e){const t=this,n=!t.checkboxes;(e?[e]:[t].concat(t._containers.map((e=>e.menuItemsGroup)))).forEach((e=>{const o=Array.from((e===t?t.$.mainContainer:e.itemContainer).children);let i=e.checkMode.replace(/\s/g,"").split(",");if(n||!e.checkable||1===i.length)return void o.forEach((e=>e.removeAttribute("check-type")));let r=0;i=i.map((e=>-1===["checkbox","radioButton","none"].indexOf(e)?"none":e));let a=[],s=[];for(let e=0;e<o.length;e++){const n=o[e];let l=i[r];if(void 0===l&&(l=i[r]="none"),"none"!==l&&t._isChildEnabled(n)||(n.checked=!1,n.removeAttribute("aria-checked")),"none"===l?n.setAttribute("role","menuitem"):"checkbox"===l?n.setAttribute("role","menuitemcheckbox"):"radioButton"===l&&(n.setAttribute("role","menuitemradio"),a.push(n),n.checked&&s.push(n)),n.setAttribute("check-type",l),n.separator){if(a.length>0)if(s.length>1)for(let e=0;e<s.length-1;e++)s[e].checked=!1;else if(0===s.length)for(let e=0;e<a.length;e++)if(t._isChildEnabled(a[e])){a[e].checked=!0;break}a=[],s=[],r++}}e.checkMode=i.join(", ")}))}_transitionendHandler(e){const t=this;"dropDown"===t.mode&&t.opened&&e.target===t&&"opacity"===e.propertyName&&(t._checkOverflowOnOpen&&(t._checkOverflow(t.$.mainContainer,!1,[t.$.scrollButtonNear,t.$.scrollButtonFar]),delete t._checkOverflowOnOpen),t.getRootNode().activeElement===t||t._noAutoFocus||t.focus())}_transitionendHandlerCollapse(){let e,t;if(1===arguments.length){if("visibility"===arguments[0].propertyName)return;t=this,e=t.menuItemsGroup.menu}else e=arguments[0],t=arguments[1];t.menuItemsGroup.$.removeClass("smart-"+e._element+"-items-group-expanded"),t.menuItemsGroup.setAttribute("aria-expanded",!1),t.removeEventListener("transitionend",e._transitionendHandlerCollapse),t.style.height=null,t.$.addClass("smart-visibility-hidden"),e._checkOverflow(e.$.mainContainer,!1,[e.$.scrollButtonNear,e.$.scrollButtonFar]),e._minimized&&e._browserBoundsDetection(e.$.mainContainer),delete e._treeAnimationInProgress}_transitionendHandlerExpand(){let e,t;if(1===arguments.length){if("visibility"===arguments[0].propertyName)return;t=this,e=t.menuItemsGroup.menu}else e=arguments[0],t=arguments[1];t.removeEventListener("transitionend",e._transitionendHandlerExpand),t.style.height=null,e._checkOverflow(e.$.mainContainer,!1,[e.$.scrollButtonNear,e.$.scrollButtonFar]),e._minimized&&e._browserBoundsDetection(e.$.mainContainer),e._ensureVisibleOnTransitionend&&(e._ensureVisible(e._ensureVisibleOnTransitionend),delete e._ensureVisibleOnTransitionend),delete e._treeAnimationInProgress}_uncheckSiblings(e,t){for(let n=0;n<t.length;n++){const o=t[n];o!==e&&o.checked&&(o.set("checked",!1),o.removeAttribute("aria-checked"),this.$.fireEvent("itemCheckChange",{item:o,label:o.label,value:o.value,checked:!1}))}}_unsortItems(e,t){const n=this;let o,i,r=[];e===n.$.mainContainer?(i=e,o=e.children):(i=e.container.firstElementChild,o=i.children);for(let e=0;e<o.length;e++){const i=o[e];r[i.originalIndex]=i,i instanceof Smart.MenuItemsGroup&&void 0===t&&n._unsortItems(i)}if(!(r.length<2))for(let e=0;e<r.length;e++)i.appendChild(r[e])}_updateItemRoles(e){const t=this;for(let n in t._menuItems){const o=t._menuItems[n],i=o.parentItem||t;e&&i!==e||(t.checkboxes&&i.checkable?o.setAttribute("role","checkbox"===i.checkMode?"menuitemcheckbox":"menuitemradio"):o.setAttribute("role","menuitem"))}t._refreshCheckableItems(e)}_updateScrollButtonVisibility(e,t,n){const o=this,i=o.overflow,r=e===o.$.mainContainer;if(r&&"hidden"===i)return;let a,s,l,d=!0,m=!0;if(t?(a="scrollLeft",s="offsetWidth",l="scrollWidth"):(a="scrollTop",s="offsetHeight",l="scrollHeight"),0===Math.round(e[a])&&(d=!1),Math.round(e[s]+e[a])>=Math.round(e[l])&&(m=!1),r&&"auto"!==i)"scroll"!==i||o.disabled||(n[0].disabled=!d,n[1].disabled=!m);else{if(d&&m)return n[0].$.removeClass("smart-hidden"),n[1].$.removeClass("smart-hidden"),void e.classList.remove("one-button-shown");d?n[0].$.removeClass("smart-hidden"):n[0].$.addClass("smart-hidden"),m?n[1].$.removeClass("smart-hidden"):n[1].$.addClass("smart-hidden"),e.classList.add("one-button-shown")}}_validateRadioButtonSelection(e,t,n){const o=this;if(o.checkboxes){let i,r;if(1===t?(i=o,r=o.$.mainContainer):(i=e,r=e.itemContainer),"radioButton"===i.checkMode&&i.checkable)if(n.length>1)for(let e=n.length-2;e>=0;e--)n[e].set("checked",!1),n[e].removeAttribute("aria-checked");else if(0===n.length){const e=o._getFirstEnabledChild(r);e&&!o.disableAutoCheck&&(e.set("checked",!0),e.setAttribute("aria-checked",!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("smart-multi-combo-input",class extends Smart.CheckInput{static get properties(){return{allowItemsAdd:{value:!1,type:"boolean"},allowItemsRemove:{value:!1,type:"boolean"},autoAddNewTags:{value:!0,type:"boolean"},colorItems:{value:!0,type:"boolean"},inputTagsMode:{allowedValues:["one","many"],value:"many",type:"string"},hideInputTagsCloseButton:{value:!1,type:"boolean"},messages:{value:{en:{newItem:"New item",tagLabelOne:"{{value}} item selected",tagLabel:"{{value}} items selected",selectAll:"Select All",unselectAll:"Unselect All"}},type:"object",extend:!0},pills:{value:!1,type:"boolean"},singleSelect:{value:!1,type:"boolean"},selectAll:{value:!1,type:"boolean"}}}template(){return'<div id="inputContainer" role="presentation"><div id="optionsContainer" inner-h-t-m-l=\'{{innerHTML}}\' class="smart-hidden"></div><div class="smart-action-button" role="presentation" id="actionButton"> <input class="smart-input" id=\'input\' readonly=\'[[readonly]]\' placeholder=\'[[placeholder]]\' type=\'[[type]]\' name=\'[[name]]\' disabled=\'[[disabled]]\' aria-label="[[placeholder]]" /></div><span class="smart-hidden smart-hint" id="span">[[hint]]</span><div id="dropDownButton" tabindex=-1 class="smart-drop-down-button" role="button" aria-label="Toggle popup"><div id="arrow" class="arrow" aria-hidden="true"></div></div></div>'}_downHandler(e){const t=this,l=e.originalEvent.target;t.readonly&&l&&l.classList&&!l.classList.contains("smart-drop-down-list-unselect-button")?t._dropDownButtonDownHandler(e):t._tokenCloseButtonClick!==l.closest(".smart-drop-down-list-unselect-button")&&(t._tokenCloseButtonClick=l.closest(".smart-drop-down-list-unselect-button"),t.readonly&&!t._tokenCloseButtonClick&&t._dropDownButtonDownHandler(e))}focus(){const e=this;e.readonly?HTMLElement.prototype.focus.apply(e,[]):e.$.input.focus()}_setFocusable(){const e=this;if(e.readonly){if(e.disabled||e.unfocusable)return void e.removeAttribute("tabindex");e.tabIndex=e.tabIndex>0?e.tabIndex:0,e.$.listen("keydown",e._keyDownHandler),e.$.listen("keyup",e._keyUpHandler)}}_documentUpHandler(e){const t=this,l=t.shadowRoot||t.isInShadowDOM?e.originalEvent.composedPath()[0]:e.originalEvent.target;if(l!==t&&l!==t.$.dropDownButton&&l!==t.$.input&&l!==t.$.arrow){if(t._tokenCloseButtonClick&&t._tokenCloseButtonClick===l.closest(".smart-drop-down-list-unselect-button")){const e=l.closest(".smart-token"),[o,n]=[e.getAttribute("data-label"),e.getAttribute("value")];let s,a,i=t._selectedItems.findIndex((e=>o===e.label&&n===e.value)),[r,d]=[t.value,t.$.input.dataValue];return-1===i&&o===n&&(i=t._selectedItems.findIndex((e=>o===e))),i>-1&&t._selectedItems.splice(i,1),t.set("value",a=t._selectedItems.map((e=>e.label)).join(t.separator)),t.$.input.dataValue=s=t._selectedItems.map((e=>e.value)).join(t.separator),t._updateValue(),t.$.actionButton.contains(e)&&t.$.actionButton.removeChild(e),t.close(),void(a===r&&s===d||(t.$.fireEvent("change",{value:s,label:a,oldValue:d,oldLabel:r}),t._updateTargetValue()))}if(!t.contains(l))if(t.$.dropDownContainer.contains(l.shadowParent||l)){if(t._isPointerDown){if(t._isPointerDown=!1,t.opened&&(t._preventLookup=!0),l.hasAttribute("add-new"))return;t.focus()}}else t.opened&&(t._preventLookup=!0),t._isPointerDown||t.close(),t._isPointerDown=!1}else t._isPointerDown=!1}get selectedItems(){return this._selectedItems?this._selectedItems:[]}set selectedItems(e){this._selectedItems=e,this._updateValue()}_performSelect(e,t){const l=this;if(!e)return void l.close();const o=e.target?e.target.closest("li"):e;if(!o)return;l._selectedItems||(l._selectedItems=[]),o.classList.toggle("selected"),l.singleSelect&&(l._selectedItems=[],o.classList.add("selected"));const n=o.classList.contains("selected"),s={label:o.getAttribute("data-label"),value:o.getAttribute("value"),color:o.getAttribute("color"),image:o.getAttribute("image")},a=l.$.menu.children;for(let e=0;e<a.length;e++)l.singleSelect&&a[e]!==o&&a[e].classList.remove("selected"),a[e].classList.remove("active"),a[e].setAttribute("aria-selected",!1);if(n){if(l.dataSource&&l.dataSource[0]&&"string"==typeof l.dataSource[0])l._selectedItems.push(s);else{const e=l.dataSource.findIndex((e=>e.label===s.label&&""+e.value===s.value));l.dataSource&&e>=0?l._selectedItems.push(l.dataSource[e]):l._selectedItems.push(s)}if(e.noActiveState||(l._setActiveDescendant(o),o.classList.add("active")),l.dataSource)if(l.dataSource[0]&&"string"==typeof l.dataSource[0]){const e=l.dataSource.findIndex((e=>e===s.label));l.set("selectedIndex",e)}else{const e=l.dataSource.findIndex((e=>e.label===s.label&&""+e.value===s.value));l.set("selectedIndex",e)}}else{if(l.dataSource&&l.dataSource[0]&&"string"==typeof l.dataSource[0]){const e=l.dataSource.findIndex((e=>e===s.label));if(e>-1){const e=l._selectedItems.findIndex((e=>e===s.label));l._selectedItems.splice(e,1),l.set("selectedIndex",-1)}else l.set("selectedIndex",e)}else{const e=l.dataSource.findIndex((e=>e.label===s.label&&""+e.value===s.value));if(l.dataSource)if(e>-1){const e=l._selectedItems.findIndex((e=>e.label===s.label&&""+e.value===s.value));l._selectedItems.splice(e,1),l.set("selectedIndex",-1)}else l.set("selectedIndex",e)}o.classList.remove("active")}o.setAttribute("aria-selected",n),l._updateValue(t),l.singleSelect&&l.close()}_updateValue(e){const t=this;if(!t.isInitialized)return;let l=t._selectedItems,o=t.value,n=t.$.input.dataValue,[s,a]=[[],[]];l||(l=[]);for(let e=0;e<l.length;e++){const t=l[e];t?"string"==typeof t?(s.push(t),a.push(t)):(s.push(t.label),a.push(t.value)):(s.push(""),a.push(""))}t._createTags();let i=[];for(let e=0;e<l.length;e++){const t=l[e];"string"==typeof t?i.push(t):t.value&&i.push(t.value)}if(t.set("selectedValues",i),s=s.join(t.separator),t.set("value",s),t.$.input.dataValue=a=a.join(t.separator),t.$.input.value="",t.setAttribute("value",t.value),e||s===o&&a===n||(t.$.fireEvent("change",{value:a,label:s,oldValue:n,oldLabel:o}),t._updateTargetValue()),t.selectAll&&t._setSelectAllItemState(),!t.opened)return;const r=t.getBoundingClientRect(),d=window.scrollX,c=window.scrollY;t.$.dropDownContainer.style.left=-3+r.left+d+"px",t.$.dropDownContainer.style.top=r.bottom+c+1+"px"}_setSelection(){const e=this;super._setSelection(),e.singleSelect&&(e._selectedItems.length>0&&(e._selectedItems=[e._selectedItems[e._selectedItems.length-1]]),e.selectedValues.length>0&&(e.selectedValues=[e.selectedValues[e.selectedValues.length-1]])),this._createTags()}_createTags(){const e=this,t=e._selectedItems||[];let l,o=document.createDocumentFragment();for(;"SPAN"===e.$.actionButton.firstElementChild.nodeName;)e.$.actionButton.removeChild(e.$.actionButton.firstElementChild);if(0===t.length&&"one"===e.inputTagsMode&&e.readonly){const n="one"===e.inputTagsMode?t.length>1?e.localize("tagLabel",{value:t.length,count:e.dataSource.length}):e.localize("tagLabelOne",{value:t.length,count:e.dataSource.length}):"";l=document.createElement("span"),l.classList.add("smart-token"),l.innerHTML="<span class='smart-drop-down-list-selection-label' role=\"presentation\">"+n+"</span>",o.appendChild(l)}for(let n=0;n<t.length;n++){const s=t[n];if("one"===e.inputTagsMode&&!l||"many"===e.inputTagsMode){let n="one"===e.inputTagsMode?t.length>1?e.localize("tagLabel",{value:t.length,count:e.dataSource.length}):e.localize("tagLabelOne",{value:t.length,count:e.dataSource.length}):"string"==typeof s?s:s.label;"many"===e.inputTagsMode&&void 0===n&&(n=""),l=document.createElement("span"),l.classList.add("smart-token");let a=null,i="";if(s.image&&"many"===e.inputTagsMode&&(a=document.createElement("span"),a.style.backgroundImage=`url('${s.image}')`,a.className="smart-drop-down-list-selection-image",i=a.outerHTML),l.innerHTML=i+"<span class='smart-drop-down-list-selection-label' role=\"presentation\">"+n+"</span>",e.singleSelect||"one"===e.inputTagsMode||(l.innerHTML+='<span class=\'smart-drop-down-list-unselect-button\' role="button" aria-label="Unselect"></span>'),"many"===e.inputTagsMode){s.label?(l.setAttribute("data-label",s.label),l.setAttribute("value",s.value)):"string"==typeof s&&s.length>0?(l.setAttribute("data-label",s),l.setAttribute("value",s)):(l.setAttribute("data-label",""),l.setAttribute("value","")),l.setAttribute("separator",e.separator);const t=s.color;if(t&&e.colorItems){l.setAttribute("color",t),l.style.setProperty("--smart-primary",t);const e=new Smart.Color(t).getInvertedColor();l.style.setProperty("--smart-primary-color",e)}}if(""===n&&e.singleSelect)continue;o.appendChild(l)}}e.$.actionButton.insertBefore(o,e.$.input);const n=e.getBoundingClientRect(),s=window.scrollX,a=window.scrollY;e.$.scrollView.style.left=-3+n.left+s+"px",e.$.scrollView.style.top=n.bottom+a+1+"px"}_render(e){const t=this,l=(e,l)=>{let o=e,n=e,s=e,a=null;"object"==typeof e&&(o=e.label,n=void 0!==e.value?e.value:o,a=void 0!==e.color?e.color:"",s=void 0!==e.id?e.id:l);const i=document.createElement("li"),r=document.createElement("a");if(r.href="#",i.id=t.id+"Item"+Math.floor(65536*(1+Math.random())).toString(16).substring(1),i.setAttribute("data-label",o),i.setAttribute("value",n),i.setAttribute("role","option"),i.setAttribute("aria-selected",!1),i.setAttribute("aria-label",o),void 0!==s&&(i.id=s),a&&t.colorItems){i.setAttribute("color",a),i.style.setProperty("--smart-primary",a);const e=new Smart.Color(a).getInvertedColor();i.style.setProperty("--smart-primary-color",e)}if(r.innerHTML=t.highlighter?t.highlighter(o):t._highlighter(o),r.setAttribute("aria-hidden",!0),e.icon&&(r.classList.add("icon"),r.classList.add(e.icon)),e.image){const t=document.createElement("span");t.style.backgroundImage=`url('${e.image}')`,t.className="smart-drop-down-list-selection-image",i.setAttribute("image",e.image),r.innerHTML=t.outerHTML+r.innerHTML}if(i.appendChild(r),t.allowItemsRemove){const l=document.createElement("span");l.classList.add("close-button"),r.appendChild(l),l.onpointerdown=l=>{l.preventDefault(),l.stopPropagation();const s=t.dataSource.findIndex((t=>t.value===e.value));if(s>=0){if(t.dataSource.splice(s,1),i.remove(),t.$.scrollView.refresh&&t.$.scrollView.refresh(),"one"===t.inputTagsMode){const e=t._selectedItems.findIndex((e=>e.label===o&&e.value===n));e>=0&&t._selectedItems.splice(e,1),t._createTags()}t.$.fireEvent("remove",{index:s,label:e.label,value:e.value})}}}return(t.singleSelect&&""===e||t.singleSelect&&e&&""===e.label)&&(i.innerHTML=""),i},o=e.map((function(e,t){return l(e,t)}));t.$.menu.innerHTML="",t._selectedItems||(t._selectedItems=[]);let n=t._selectedItems.map((e=>"string"==typeof e?e:e.value));n.length||(n=(t.$.input.dataValue||t.$.input.value).split(t.separator).map((e=>e.trim())));let s=Array.from(t.$.actionButton.getElementsByClassName("smart-token")).map((e=>e.textContent.trim()));if(t.allowItemsAdd){const e=document.createElement("div"),o=document.createElement("smart-button"),n=document.createElement("input");e.classList.add("add-new-item"),o.setAttribute("add-new",""),n.setAttribute("add-new",""),n.placeholder=t.localize("newItem"),n.classList.add("smart-input"),o.onclick=()=>{if(!n.value)return;const e={label:n.value,value:n.value.trim().replace(/ /gi,"")};t.dataSource||(t.dataSource=[]),t.dataSource.push(e);const o=l(e,t.dataSource.length-1);t.$.menu.appendChild(o),t.$.scrollView.refresh&&t.$.scrollView.refresh(),n.value="","one"===t.inputTagsMode&&t._createTags(),t.$.fireEvent("add",{label:e.label,value:e.value,index:t.dataSource.length-1})},n.onkeydown=e=>{"Enter"===e.key&&o.click()},e.appendChild(n),e.appendChild(o),t.$.menu.appendChild(e)}for(let e=0;e<o.length;e++){const l=o[e],a=l.getAttribute("value"),i=l.getAttribute("data-label"),r=n.findIndex((e=>""+e==""+a));r>-1&&("one"===t.inputTagsMode||s[r]===i)&&(l.classList.add("selected"),l.setAttribute("aria-selected",!0),t._setActiveDescendant(l),t._selectedItems.findIndex((e=>"string"==typeof e?e===i:e.label===i&&e.value===a))<0&&t._selectedItems.findIndex((e=>"string"==typeof e?e===a:""+e.value==""+a))<0&&t._selectedItems.push({label:l.getAttribute("data-label"),value:l.getAttribute("value")})),t._setSelectAllItemState(),t.$.menu.appendChild(l)}}_next(){const e=this;let t=e._selectedItems?e._selectedItems[e._selectedItems.length-1]:void 0;t&&(t=e.$.menu.querySelector(`.active[data-label="${t.label}"][value="${t.value}"]`));const l=t||e.$.menu.querySelector(".active");if(!l){const t=e.$.menu.firstElementChild;return t.classList.add("active","focused"),void e._setActiveDescendant(t)}const o=e.$.menu.children;for(let e=0;e<o.length;e++)o[e].classList.remove("active","focused");e._setActiveDescendant();let n=l.nextElementSibling;n||(n=e.$.menu.firstElementChild),n.classList.add("active","focused"),e._setActiveDescendant(n),e.ensureVisible()}_prev(){const e=this;let t=e._selectedItems?e._selectedItems[e._selectedItems.length-1]:void 0;t&&(t=e.$.menu.querySelector(`.active[data-label="${t.label}"][value="${t.value}"]`));const l=t||e.$.menu.querySelector(".active");if(!l){const t=e.$.menu.firstElementChild;return t.classList.add("active","focused"),void e._setActiveDescendant(t)}const o=e.$.menu.children;for(let e=0;e<o.length;e++)o[e].classList.remove("active","focused");e._setActiveDescendant();let n=l.previousElementSibling;n||(n=e.$.menu.lastElementChild),n.classList.add("active","focused"),e._setActiveDescendant(n),e.ensureVisible()}_keyDownHandler(e){const t=this;t._suppressKeyPressRepeat=![40,38,9,13,27,16,17,18].includes(e.keyCode),e.shiftKey||e.altKey||e.ctrlKey?delete t._inputValue:(t._move(e),t._inputValue=t.$.input.value)}_keyUpHandler(e){const t=this;let l=t.$.input.value;if(t._selectedItems&&(l=t._selectedItems.map((e=>"string"==typeof e?e:e.label)),t.$.input.value&&l.push(t.$.input.value),l=l.join(t.separator)),t.set("value",l),!e.shiftKey&&"F2"!==e.key)if(","!==e.key){switch(e.keyCode){case 40:case 38:case 16:case 17:case 18:40===e.keyCode&&e.altKey&&t.open(),38===e.keyCode&&e.altKey&&t.close();break;case 8:{if(t.readonly)break;if(t.opened&&t.close(),t._inputValue&&t._inputValue.length)break;if(!t._selectedItems){t.readonly||(t.$.input.dataValue=t.$.input.value);break}const e=t._selectedItems[t._selectedItems.length-1];if(!e)break;(t.$.menu.querySelector(`li[data-label="${e.label}"][value="${e.value}"]`)||0===t.$.menu.offsetHeight)&&(t._selectedItems.pop(),t._updateValue());break}case 9:case 13:if(!t.opened)return void(t.autoAddNewTags&&13===e.keyCode&&"many"===t.inputTagsMode&&t._autoCreateTags());t._performSelect(t.$.menu.querySelector(".active")),e.stopPropagation(),e.preventDefault();break;case 27:if(!t.opened)return;t.close(),e.stopPropagation(),e.preventDefault();break;default:t._lookup(e),!t.opened||e.ctrlKey||e.shiftKey||(e.stopPropagation(),e.preventDefault())}delete t._inputValue}else t._autoCreateTags()}_blurHandler(){super._blurHandler(),this._autoCreateTags()}_autoCreateTags(){const e=this;if(!e.autoAddNewTags||"many"===!e.inputTagsMode)return;e.dataSource||(e.dataSource=[]);const t=e.$.input.value.trim();if(!e.dataSource.find((e=>"string"==typeof e?e===t:e.label===t))){e._tempItems||(e._tempItems=[]);let l=t.trim();if(t.indexOf(",")>=0){l=t.split(",");for(let t=0;t<l.length;t++){const o=l[t].trim();""!==o&&(e._tempItems.push(o),e._createTagsFromValue(o))}}else""!==l&&(e._tempItems.push(l),e._createTagsFromValue(l));e.query="",e._updateValue(!0)}}propertyChangedHandler(e,t,l){const o=this;if("disabled"===e&&o._setFocusable(),"value"===e){o.displayMember!==o.valueMember&&"string"!=typeof l?(o.value=l[o.displayMember],o.$.input.dataValue=l[o.valueMember]):o.$.input.dataValue="";const e=o.$.menu.children;for(let t=0;t<e.length;t++)e[t].classList.remove("selected"),e[t].setAttribute("aria-selected",!1);o._setActiveDescendant(o.$.menu.querySelector("active")),o._createTagsFromValue(l)}else if("separator"===e){const e=o.$.actionButton.children;for(let t=0;t<e.length;t++){const o=e[t];o.classList.contains("smart-token")&&o.setAttribute("separator",l)}}else if("inputTagsMode"===e)o._createTags();else if("theme"===e||"rightToLeft"===e)o.$.scrollView[e]=l,l?o.$.dropDownContainer.setAttribute(Smart.Utilities.Core.toDash(e),""):o.$.dropDownContainer.removeAttribute(Smart.Utilities.Core.toDash(e));else if("inverted"===e)l?o.$.dropDownContainer.setAttribute("inverted",""):o.$.dropDownContainer.removeAttribute("inverted");else if("selectAll"===e)o._handleSelectAllItem();else if("selectedIndex"===e){if(super.propertyChangedHandler(e,t,l),o._selectedItems=[],o.dataSource){const e=o.dataSource[l];e&&o._selectedItems.push(e),o._updateValue(!0)}}else if("selectedValues"===e){if(super.propertyChangedHandler(e,t,l),o.dataSource){o._selectedItems=[];const e=o.dataSource.filter((e=>{if("string"==typeof e){if(o.selectedValues.indexOf(e)>=0)return!0}else if(o.selectedValues.indexOf(e.value)>=0)return!0}));o._selectedItems=e,o._updateValue(!0)}}else super.propertyChangedHandler(e,t,l)}_createElement(){const e=this,t=document.createElement("ul"),l=document.createElement("smart-scroll-viewer"),o=document.createElement("div");if(l.rightToLeft=e.rightToLeft,l.theme=e.theme,l.horizontalScrollBarVisibility="hidden",l.classList.add("smart-multi-combo-input-scroll-viewer"),e.rightToLeft&&o.setAttribute("right-to-left",""),e.dataSource&&"string"==typeof e.dataSource&&(e.dataSource=e.$.deserialize(e.dataSource,"array")),o.setAttribute("theme",e.theme),o.classList.add("smart-multi-combo-input-drop-down-menu","smart-input-drop-down-menu","smart-check-input-drop-down-menu"),e.pills&&o.setAttribute("pills",""),e.singleSelect&&o.setAttribute("single-select",""),e.inverted?o.setAttribute("inverted",""):o.removeAttribute("inverted"),e.classList.add("smart-input"),o.appendChild(l),t.setAttribute("aria-multiselectable",!0),e.$.scrollView=l,e.$.menu=t,e.$.dropDownContainer=o,e.$.menu.onclick=function(t){const l=t.target.closest("li");t.stopPropagation(),t.preventDefault(),t.target&&t.target.hasAttribute("add-new")||(e._performSelect(t),l&&e.$.fireEvent("itemClick",{index:[...l.parentNode.children].indexOf(l),item:l,label:l.getAttribute("aria-label"),value:l.dataValue}),e.focus())},e.classList.add("smart-input"),e.$.input.value="",e.selectedValues&&e.selectedValues.length>0){const t=e.dataSource.filter((t=>{if("string"==typeof t){if(e.selectedValues.indexOf(t)>=0)return!0}else if(e.selectedValues.indexOf(t.value)>=0)return!0}));e.selectedItems=t}else{const t=e.value;t&&e._createTagsFromValue(t)}e._handleSelectAllItem(),e._setFocusable()}_createTagsFromValue(e=""){const t=this;if(e){const e=t.value.split(",");for(t.$.input.value="",t._selectedItems=[];"SPAN"===t.$.actionButton.firstElementChild.nodeName;)t.$.actionButton.removeChild(t.$.actionButton.firstElementChild);for(let l=0,o=e.length;l<o;l+=1){const o=e[l].trim();if(o)if(t.dataSource){const e=t.dataSource.find((e=>{if("string"==typeof e){if(e===o)return e}else if(""+e.value===o)return e}));e&&e.label?e.color?t._selectedItems.push({color:e.color,label:e.label,value:e.value}):t._selectedItems.push({label:e.label,value:e.value}):t._selectedItems.push({label:o,value:o})}else t._selectedItems.push({label:o,value:o})}t._createTags()}else t.$.input.value="",t._selectedItems=[],t._createTags()}_handleSelectAllItem(){const e=this;if(e.selectAll){if(!e.$.selectAll){const t=document.createElement("ul"),l=document.createElement("li"),o=document.createElement("a");o.href="#",o.innerHTML=e.localize("selectAll"),o.setAttribute("aria-hidden",!0),l.id=e.id+"Item"+Math.floor(65536*(1+Math.random())).toString(16).substring(1),l.setAttribute("role","option"),l.setAttribute("value",e.localize("selectAll")),l.setAttribute("aria-label",e.localize("selectAll")),l.classList.add("smart-select-all"),l.appendChild(o),l.onclick=function(t){t.stopPropagation(),t.preventDefault(),Array.from(e.$.menu.children).find((e=>!e.classList.contains("selected")))?e._selectAll():e._clearSelection(),e._setSelectAllItemState(),l.classList.contains("selected")&&l.classList.add("active"),e.focus()},t.appendChild(l),e.$.selectAll=t}e._setSelectAllItemState(),e.$.dropDownContainer.insertBefore(e.$.selectAll,e.$.scrollView)}else e.$.selectAll&&e.$.selectAll.remove()}_setSelectAllItemState(){const e=this;if(!e.$.selectAll)return;const t=e.$.selectAll.firstElementChild,l=t.firstElementChild,o=!Array.from(e.$.menu.children).find((e=>!e.classList.contains("selected")));t.removeAttribute("indeterminate"),t.classList.remove("selected","active"),l.innerHTML=e.localize("selectAll"),e._selectedItems&&e._selectedItems.length>0&&(o?(t.classList.add("selected"),l.innerHTML=e.localize("unselectAll")):t.setAttribute("indeterminate",""))}_selectAll(){const e=this,t=e._selectedItems.length,l=e.$.input.dataValue,o=e.value;e._clearSelection(!0);const n=e.$.menu.children;for(let t=0;t<n.length;t++)n[t].classList.contains("selected")||e._performSelect({target:n[t],noActiveState:!0},!0);t!==e._selectedItems.length&&(e.$.fireEvent("change",{value:e.$.input.dataValue,label:e.value,oldValue:l,oldLabel:o}),e._updateTargetValue())}_clearSelection(e){const t=this;if(!t._selectedItems.length)return;const l=t.$.input.dataValue,o=t.value;for(t.$.input.dataValue="",t.value=t.$.input.value,t._selectedItems=[];"SPAN"===t.$.actionButton.firstElementChild.nodeName;)t.$.actionButton.removeChild(t.$.actionButton.firstElementChild);const n=t.$.menu.children;for(let e=0;e<n.length;e++)n[e].classList.remove("selected"),n[e].classList.remove("active"),n[e].setAttribute("aria-selected",!1);t._setActiveDescendant(t.$.menu.querySelector("active")),e||(t.$.fireEvent("change",{value:"",label:"",oldValue:l,oldLabel:o}),t._updateTargetValue());const s=t.getBoundingClientRect(),a=window.scrollX,i=window.scrollY;t.$.dropDownContainer.style.left=-3+s.left+a+"px",t.$.dropDownContainer.style.top=s.bottom+i+1+"px"}_open(){const e=this;let t=e.getBoundingClientRect(),l=window.scrollX,o=window.scrollY,n=0,s=0;if(!this.opened&&!e._preventOpen){if(e.timer&&clearTimeout(e.timer),e.$.scrollView.classList.remove("smart-input-drop-down-menu"),e.$.dropDownContainer.id=e.id+"_"+e.tagName.toLowerCase()+"_menu_"+Math.floor(65536*(1+Math.random())).toString(16).substring(1),document.body.appendChild(e.$.dropDownContainer),e.setAttribute("aria-owns",e.$.dropDownContainer.id),e.readonly||e.$.input.setAttribute("aria-controls",e.$.dropDownContainer.id),e.$.scrollView.enableShadowDOM&&!e._importedStyle&&(e.$.scrollView.importStyle(e._getStyleUrl("smart.textbox.css")),e._importedStyle=!0),"static"!==getComputedStyle(document.body).position){const e=document.body.getBoundingClientRect();n=e.left,s=e.top}if(e.$.dropDownContainer.style.setProperty("--smart-input-drop-down-menu-width",""),e.$.dropDownContainer.style.left=-3+t.left+l-n+"px",e.$.dropDownContainer.style.top=t.bottom+o-s+1+"px",e.$.dropDownContainer.classList.remove("open"),"bottom"===e.dropDownOpenPosition)e.$.dropDownContainer.style.top=t.bottom+o-s+1+"px";else if("top"===e.dropDownOpenPosition)e.$.dropDownContainer.style.top=t.top-e.$.dropDownContainer.offsetHeight+o-s-2+"px",e.$.dropDownContainer.setAttribute("top","");else if("auto"===e.dropDownOpenPosition)if(e.$.dropDownContainer.removeAttribute("top"),window.innerHeight<parseInt(e.$.dropDownContainer.style.top)+e.$.dropDownContainer.offsetHeight-o){const l=t.top-e.$.dropDownContainer.offsetHeight+o-s-2;l>=0&&(e.$.dropDownContainer.style.top=l+"px",e.$.dropDownContainer.setAttribute("top",""))}else e.$.dropDownContainer.style.top=t.bottom+o-s+1+"px";e._positionTimer&&clearInterval(e._positionTimer),e.dropDownAppendTo||(e._positionTimer=setInterval((()=>{const l=e.getBoundingClientRect();if(e.opening)e.opening=!1,t=l;else if(Math.abs(parseInt(l.top)-parseInt(t.top))>=10||Math.abs(parseInt(l.left)-parseInt(t.left))>=10){const t=window.scrollX,o=window.scrollY;return e.$.dropDownContainer.style.left=-3+l.left+t-n+"px",void("bottom"===e.dropDownOpenPosition?e.$.dropDownContainer.style.top=l.bottom+o-s+1+"px":"top"===e.dropDownOpenPosition?e.$.dropDownContainer.style.top=l.top-e.$.dropDownContainer.offsetHeight+o-s+1+"px":"auto"===e.dropDownOpenPosition&&(e.$.dropDownContainer.removeAttribute("top"),e.$.dropDownContainer.style.top=l.bottom+o-s+1+"px",window.innerHeight<parseInt(e.$.dropDownContainer.style.top)+e.$.dropDownContainer.offsetHeight-o?(e.$.dropDownContainer.style.top=l.top-e.$.dropDownContainer.offsetHeight+o-s+1+"px",e.$.dropDownContainer.setAttribute("top","")):e.$.dropDownContainer.style.top=l.bottom+o-s+1+"px"))}}),50)),e.$.dropDownContainer.onpointerdown=function(){e._isPointerDown=!0},requestAnimationFrame((function(){const t=e.dropDownWidth;if(e.$.scrollView.refresh&&e.$.scrollView.refresh(),e._refreshMenu(),e.$.dropDownContainer.setAttribute("open",""),e.setAttribute("open",""),e.$.dropDownButton.setAttribute("open",""),e.$.input.setAttribute("open",""),t&&"string"==typeof t&&-1!==t.indexOf("%")){const l=parseFloat(t)/100;e.$.dropDownContainer.style.setProperty("--smart-input-drop-down-menu-width",e.offsetWidth*l+"px")}else if("auto"!==t&&t)e.$.dropDownContainer.style.setProperty("--smart-input-drop-down-menu-width",parseFloat(t)+"px");else if("auto"===t){if(e.$.dropDownContainer.style.setProperty("--smart-input-drop-down-menu-width",""),e.$.scrollView.$.scrollViewerContainer.classList.contains("vscroll")){const t=e.$.scrollView.offsetWidth+parseFloat(getComputedStyle(e.$.scrollView).getPropertyValue("--smart-scroll-bar-size"));e.$.dropDownContainer.style.setProperty("--smart-input-drop-down-menu-width",t+"px")}}else{e.$.menu.style.width="auto";let t=e.$.menu.offsetWidth;const l=e.$.menu.querySelectorAll("li");for(let t=0;t<l.length;t++)e._maxDropDownWidth=Math.max((l[t].firstElementChild||l[t]).offsetWidth,e._maxDropDownWidth);e.$.scrollView.computedVerticalScrollBarVisibility&&(t+=e.$.scrollView.$&&e.$.scrollView.$.verticalScrollBar?e.$.scrollView.$.verticalScrollBar.offsetWidth:30),e.$.dropDownContainer.style.setProperty("--smart-input-drop-down-menu-width",Math.max(t,e.offsetWidth-8)+"px"),e.$.menu.style.width=""}(e.shadowRoot||e.isInShadowDOM)&&e.$.scrollView._scrollView&&Smart.ScrollBar&&requestAnimationFrame((()=>e.$.scrollView._scrollView.vScrollBar.refresh()))})),e.$.scrollView.refresh&&e.$.scrollView.refresh(),e._refreshMenu(),this.opened=!0,e.setAttribute("aria-expanded",!0)}}close(){const e=this;return!!e.opened&&(e.timer&&clearTimeout(e.timer),e._positionTimer&&clearInterval(e._positionTimer),e.timer=setTimeout((function(){e.$.dropDownContainer.parentNode&&!e.opened&&(document.body.removeChild(e.$.dropDownContainer),e.removeAttribute("aria-owns"),e.readonly||e.$.input.removeAttribute("aria-controls"))}),1e3),e.$.dropDownContainer.removeAttribute("open"),e.$.dropDownButton.removeAttribute("open"),e.$.input.removeAttribute("open"),e.removeAttribute("open"),e.opened=!1,e.setAttribute("aria-expanded",!1),e.focus(),e.$.fireEvent("close"),!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("smart-multi-input",class extends Smart.Input{static get properties(){return{dropDownButtonPosition:{allowedValues:["none","left","right"],defaultReflectToAttribute:!0,value:"right",type:"string"},separator:{value:", ",type:"string"},selectedValues:{value:[],type:"array"}}}_performSelect(e){const t=this;if(!e)return void t.close();const a=e.target?e.target.closest("li"):e;if(!a)return;t._selectedItems||(t._selectedItems=[]),a.classList.toggle("active");const l=a.classList.contains("active"),s={label:a.getAttribute("data-label"),value:a.getAttribute("value")};if(l)t._selectedItems.push(s),a.setAttribute("aria-selected",!0),t._setActiveDescendant(a);else{const e=t._selectedItems.findIndex((e=>e.label===s.label&&e.value===s.value));e>-1&&t._selectedItems.splice(e,1),a.setAttribute("aria-selected",!1)}a.setAttribute("aria-selected",l);const i=t._selectedItems,r=t.value,n=t.$.input.dataValue;let[o,u]=[[],[]];for(let e=0;e<i.length;e++){const t=i[e];o.push(t.label),u.push(t.value)}t.set("selectedValues",i.map((e=>e.value))),o=o.join(t.separator),t.set("value",o),t.$.input.dataValue=u=u.join(t.separator),o===r&&u===n||(t.$.fireEvent("change",{value:u,label:o,oldValue:n,oldLabel:r}),t._updateTargetValue())}close(){const e=this;return!!e.opened&&(e.timer&&clearTimeout(e.timer),e.timer=setTimeout((function(){e.$.scrollView.parentNode&&!e.opened&&(e.$.scrollView.remove(),e.removeAttribute("aria-owns"),e.readonly||e.$.input.removeAttribute("aria-controls"))}),1e3),e.$.scrollView.removeAttribute("open"),e.$.dropDownButton.removeAttribute("open"),e.$.input.removeAttribute("open"),e.removeAttribute("open"),e.opened=!1,e.setAttribute("aria-expanded",!1),e.$.input.focus(),!0)}open(){const e=this;let t;if(e.dropDownDataSource?(e.query="",t="function"==typeof e.dataSource?e.dataSource(e.query):e.dataSource):t="function"==typeof e.dropDownDataSource?e.dropDownDataSource(e.query):e.dropDownDataSource,e._tempItems){t=JSON.parse(JSON.stringify(t));for(let a=0;a<e._tempItems.length;a++){const l=e._tempItems[a];-1===t.indexOf(l)&&t.push(l)}}e._process(t),e.ensureVisible(),e.$.input.focus(),setTimeout((function(){e.$.input.focus()}),25)}_render(e){const t=this,a=e.map((function(e){let a=e,l=e;"object"==typeof e&&(a=e.label,l=void 0!==e.value?e.value:a);const s=document.createElement("li"),i=document.createElement("a");return i.href="#",s.id=t.id+"Item"+Math.floor(65536*(1+Math.random())).toString(16).substring(1),s.setAttribute("data-label",a),s.setAttribute("value",l),s.setAttribute("role","option"),s.setAttribute("aria-selected",!1),s.setAttribute("aria-label",a),void 0!==e.menuLabel&&(a=e.menuLabel),i.innerHTML=t.highlighter?t.highlighter(a):t._highlighter(a),i.setAttribute("aria-hidden",!0),e.icon&&(i.classList.add("icon"),i.classList.add(e.icon)),s.appendChild(i),s}));t.$.menu.innerHTML="";let l=[],s=[],i=t._selectedItems;i||(i=t._selectedItems=[]);const r=i.length;i.length&&i.forEach((e=>{s.push(e.label),l.push(e.value)})),l=l.concat((t.$.input.dataValue||t.$.input.value).split(",").map((e=>e.trim()))),s=s.concat(t.$.input.value.split(",").map((e=>e.trim())));for(let e=0;e<a.length;e++){const n=a[e],o=n.getAttribute("value"),u=n.getAttribute("data-label"),c=r?l.indexOf(o):s.indexOf(u);c>-1&&s[c]===u&&(n.classList.add("active"),n.setAttribute("aria-selected",!0),t._setActiveDescendant(n),i.findIndex((e=>e.label===u&&e.value===o))<0&&i.push({label:n.getAttribute("data-label"),value:n.getAttribute("value")})),t.$.menu.appendChild(n)}t.set("selectedValues",i.map((e=>e.value)))}_next(){const e=this;let t=e._selectedItems?e._selectedItems[e._selectedItems.length-1]:void 0;t&&(t=e.$.menu.querySelector(`.active[data-label="${t.label}"][value="${t.value}"]`));const a=t||e.$.menu.querySelector(".active");if(!a){const t=e.$.menu.firstElementChild;return void e._performSelect(t)}e._selectedItems&&(e._selectedItems=[]);const l=e.$.menu.children;for(let e=0;e<l.length;e++)l[e].classList.remove("active"),l[e].setAttribute("aria-selected",!1);e._setActiveDescendant();let s=a.nextElementSibling;s||(s=e.$.menu.firstElementChild),e._performSelect(s),e.ensureVisible()}_prev(){const e=this;let t=e._selectedItems?e._selectedItems[e._selectedItems.length-1]:void 0;t&&(t=e.$.menu.querySelector(`.active[data-label="${t.label}"][value="${t.value}"]`));const a=t||e.$.menu.querySelector(".active");if(!a){const t=e.$.menu.firstElementChild;return void e._performSelect(t)}e._selectedItems&&(e._selectedItems=[]);const l=e.$.menu.children;for(let e=0;e<l.length;e++)l[e].classList.remove("active"),l[e].setAttribute("aria-selected",!1);e._setActiveDescendant();let s=a.previousElementSibling;s||(s=e.$.menu.lastElementChild),e._performSelect(s),e.ensureVisible()}_keyUpHandler(e){const t=this;if(!e.shiftKey)switch(e.keyCode){case 40:case 38:case 16:case 17:case 18:40===e.keyCode&&e.altKey&&t.open(),38===e.keyCode&&e.altKey&&t.close();break;case 9:case 13:if(!t.opened)return;t._performSelect(),e.stopPropagation(),e.preventDefault();break;case 27:if(!t.opened)return;t.close(),e.stopPropagation(),e.preventDefault();break;default:t._lookup(e),!t.opened||e.ctrlKey||e.shiftKey||(e.stopPropagation(),e.preventDefault()),t.readonly||(t.$.input.dataValue=t.$.input.value)}}propertyChangedHandler(e,t,a){const l=this;if("value"===e){l.displayMember!==l.valueMember&&"string"!=typeof a?(l.value=a[l.displayMember],l.$.input.dataValue=a[l.valueMember]):l.$.input.dataValue=l.$.input.value=a,l._selectedItems=[],l.set("selectedValues",[]);const e=l.$.menu.children;for(let t=0;t<e.length;t++)e[t].classList.remove("active"),e[t].setAttribute("aria-selected",!1);l._setActiveDescendant()}else"separator"===e?(l.set("value",l.value.replace(new RegExp(t,"g"),a)),l.$.input.dataValue&&(l.$.input.dataValue=l.$.input.dataValue.replace(new RegExp(t,"g"),a))):super.propertyChangedHandler(e,t,a)}_createElement(){const e=this,t=document.createElement("ul"),a=document.createElement("smart-scroll-viewer");a.rightToLeft=e.rightToLeft,a.theme=e.theme,a.horizontalScrollBarVisibility="hidden",a.classList.add("smart-multi-input-drop-down-menu"),e.inverted?a.setAttribute("inverted",""):a.removeAttribute("inverted"),e.classList.add("smart-input"),t.setAttribute("aria-multiselectable",!0),e.$.scrollView=a,e.$.menu=t,e.$.menu.onclick=function(t){const a=t.target.closest("li");t.stopPropagation(),t.preventDefault(),e._performSelect(t),a&&e.$.fireEvent("itemClick",{index:[...a.parentNode.children].indexOf(a),item:a,label:a.getAttribute("aria-label"),value:a.dataValue}),e.$.input.focus()}}_setSelection(){const e=this;let t=e.dataSource;"string"==typeof t&&(t=e.$.deserialize(t,"array"));const a=e.selectedValues;if(t){e._selectedItems=[],a.length>0?t.forEach((e=>{void 0!==e.selected&&delete e.selected})):t.forEach((e=>{if("number"!=typeof e&&"boolean"!=typeof e||(e=""+e),e.selected){const t=void 0!==e.value?e.value:e;a.push(t)}}));let l=[];for(let s=0;s<a.length;s++){const i=a[s];t.find((t=>{if("string"==typeof t||"number"==typeof t)t===i&&(e._selectedItems.push(t),l.push(t));else{let a=t.value;"number"==typeof i&&(a=parseFloat(a)),a===i&&(e._selectedItems.push(t),l.push(t.label))}}))}l=l.join(e.separator),e.set("value",l),e.$.input.dataValue=a.join(e.separator)}}_setActiveDescendant(e){const t=this;t.readonly||(e?t.setAttribute("aria-activedescendant",e.id):t.removeAttribute("aria-activedescendant"))}});
|
|
@@ -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-multiline-text-box",class extends Smart.TextBox{static get properties(){return{autoCapitalize:{value:"none",allowedValues:["none","words","characters"],type:"string"},autoComplete:{value:"off",allowedValues:["on","off"],type:"string"},autoExpand:{value:!1,type:"boolean"},cols:{value:20,type:"number?"},enterKeyBehavior:{value:"newLine",allowedValues:["submit","clearOnSubmit","newLine"],type:"string"},horizontalScrollBarVisibility:{type:"string",value:"auto",allowedValues:["auto","disabled","hidden","visible"]},minLength:{value:0,type:"number"},resizable:{value:!1,type:"boolean"},rows:{value:5,type:"number?"},selectionDirection:{value:"none",allowedValues:["forward","backward","none"],type:"string"},selectionEnd:{value:0,reflectToAttribute:!1,type:"number"},selectionStart:{value:0,reflectToAttribute:!1,type:"number"},spellCheck:{value:!1,type:"boolean"},type:{value:"textarea",type:"string",defaultReflectToAttribute:!0,readonly:!0},verticalScrollBarVisibility:{type:"string",value:"auto",allowedValues:["auto","disabled","hidden","visible"]},wrap:{value:"soft",allowedValues:["hard","soft","off"],type:"string"}}}static get styleUrls(){return["smart.textbox.css","smart.multilinetextbox.css"]}static get listeners(){return{"document.mousemove":"_documentSelectionOutsideHandler","container.resize":"_handleScrollbarsDisplay","document.move":"_resizeMoveHandler","document.up":"_upHandler",focus:"_focusHandler","horizontalScrollBar.change":"_horizontalScrollbarHandler",keydown:"_keyDownHandler",mouseenter:"_mouseEventsHandler",mouseleave:"_mouseEventsHandler",resize:"_handleScrollbarsDisplay","resizeElement.down":"_resizeDownHandler",styleChanged:"_handleScrollbarsDisplay","input.change":"_textBoxChangeHandler","input.focus":"_focusHandler","input.blur":"_blurHandler","input.keydown":"_textBoxKeyDownHandler","input.keyup":"_keyUpHandler","input.paste":"_textBoxChangeHandler","input.select":"_textBoxSelectHandler","input.touchmove":"_inputTouchmoveHandler","input.touchstart":"_inputTouchstartHandler",wheel:"_mouseWheelHandler","verticalScrollBar.change":"_verticalScrollbarHandler"}}attached(){const e=this;super.attached(),e._scrollView||(e._scrollView=new Smart.Utilities.Scroll(e.$.input,e.$.horizontalScrollBar,e.$.verticalScrollBar))}detached(){const e=this;super.detached(),e._scrollView&&(e._scrollView.unlisten(),delete e._scrollView)}static get requires(){return{"Smart.ScrollBar":"smart.scrollbar.js"}}template(){return'<div id="container" role="presentation">\n <span id="label" class="smart-label">[[label]]</span>\n <div id="innerContainer" class="smart-inner-container" role="presentation">\n <textarea class="smart-input" id="input"\n autocapitalize="[[autoCapitalize]]"\n autocomplete="off"\n cols="[[cols]]"\n disabled="[[disabled]]"\n maxlength="[[maxLength]]"\n minlength="[[minLength]]"\n name="[[name]]"\n placeholder="[[placeholder]]"\n readonly="[[readonly]]"\n required="[[required]]"\n rows="[[rows]]"\n spellcheck="[[spellCheck]]"\n wrap="[[wrap]]"\n aria-label="[[placeholder]]"\n autocomplete="[[inputPurpose]]"></textarea>\n <smart-scroll-bar id="verticalScrollBar" theme="[[theme]]" right-to-left="[[rightToLeft]]" animation="[[animation]]" disabled="[[disabled]]" orientation="vertical"></smart-scroll-bar>\n <smart-scroll-bar id="horizontalScrollBar" theme="[[theme]]" right-to-left="[[rightToLeft]]" animation="[[animation]]" disabled="[[disabled]]"></smart-scroll-bar>\n <div id="resizeElement" class="smart-resize-element" aria-label="Resize"></div>\n\n <textarea id="textBoxHidden"\n class="smart-text-box-hidden"\n autocapitalize="[[autoCapitalize]]"\n autocomplete="off"\n cols="[[cols]]"\n disabled="[[disabled]]"\n inner-h-t-m-l="[[value]]"\n maxlength="[[maxLength]]"\n minlength="[[minLength]]"\n name="[[name]]"\n placeholder="[[placeholder]]"\n readonly="[[readonly]]"\n required="[[required]]"\n rows="[[rows]]"\n spellcheck="[[spellCheck]]"\n wrap="[[wrap]]"></textarea>\n </div>\n <span id="hint" class="smart-hidden smart-hint">[[hint]]</span>\n </div>'}propertyChangedHandler(e,t,l){const a=this;switch(e){case"autoExpand":a._autoExpandUpdate();break;case"displayMode":switch(l){case"escaped":a.$.input.value=a._toEscapedDisplayMode(a.value);break;default:a.$.input.value=a.value=a._toDefaultDisplayMode(a.$.input.value)}a._autoExpandUpdate(),a._handleScrollbarsDisplay();break;case"value":switch(a._preventProgramaticValueChange?(a._userValue="escaped"===a.displayMode?a._toDefaultDisplayMode(a.$.input.value):a.$.input.value,a._programmaticValue=l):a._userValue=a._programmaticValue=l,a.displayMode){case"escaped":a.$.input.value=a._toEscapedDisplayMode(a._userValue);break;default:a.$.input.value=a._userValue}a._oldValue=t,a._autoExpandUpdate(),a._handleScrollbarsDisplay();break;case"horizontalScrollBarVisibility":case"verticalScrollBarVisibility":case"singleLine":case"wrap":case"resizable":case"placeholder":a._autoExpandUpdate(),a._handleScrollbarsDisplay();break;case"selectionEnd":case"selectionStart":a._handleSelectedText();break;case"rows":case"cols":a._updateSizeRowsCols();break;case"disabled":a._setFocusable(),a._ariaPropertyChangedHandler("disabled",l);break;case"animation":break;case"readonly":a._ariaPropertyChangedHandler("readonly",l);break;default:super.propertyChangedHandler(e,t,l)}}selection(e){const t=this;let l=t.$.input.selectionStart,a=t.$.input.selectionEnd,i=t.value;return"escaped"===t.displayMode?(i=t.$.input.value.substring(l,a),"escaped"===e?i:t._toDefaultDisplayMode(i)):"escaped"===e?(i=i.substring(l,a),t._toEscapedDisplayMode(i)):(i=i.substring(l,a),i)}select(e,t){const l=this,a=Array.from(arguments).slice(0,2);let i,n;for(let e in a)a[e]=parseInt(a[e])||0;return 2===a.length?(i=Math.min([e,t]),n=Math.max([e,t])):i=a[0],2===a.length?(i=parseInt(i),i=i>0?i<l.$.input.length?l.$.input.length:i:0,n<i?n=i:n>l.$.input.length&&(i=0),l.$.input.focus(),void l.$.input.setSelectionRange(i,n)):1===a.length?(l.$.input.focus(),void l.$.input.setSelectionRange(i,i+1)):void l.$.input.select()}_autoExpandUpdate(){const e=this,t=e.$.input,l=e.$.textBoxHidden,a=e.$.verticalScrollBar;if(!e.autoExpand)return void(t.style.height=a.style.height=l.style.height=null);const i=parseFloat(window.getComputedStyle(e).getPropertyValue("max-height"));l.style.height=0,l.value=t.value;let n=0;e.resizeTrigger&&(n=e.resizeTrigger.clientHeight,n===e.clientHeight&&(n=0)),t.style.height=a.style.height=(isNaN(i)?l.scrollHeight:Math.min((i||0)-n,l.scrollHeight))+"px"}_blurHandler(){const e=this;e._outsideAutoScroll&&clearInterval(e._outsideAutoScroll),e.removeAttribute("focus"),e._preventProgramaticValueChange=!1,e._oldValue=e.value,e.value=e._userValue||e.value,e.$.fireEvent("blur")}_createElement(){const e=this;e.$.input.id||(e.$.input.id=e.id+"Input"),e.autoFocus&&(navigator.userAgent.match(/Edge/)?setTimeout((function(){e.$.input.focus(),e.setAttribute("focus","")}),10):(e.$.input.focus(),e.setAttribute("focus","")));const t=e.$.input.innerHTML;e.value?e.$.input.innerHTML="escaped"===e.displayMode?e._toEscapedDisplayMode(e.value):e.value:t.length>0&&"escaped"===e.displayMode?(e.value=t,e.$.input.innerHTML=e._toEscapedDisplayMode(t)):t.length>0&&(e.value=t),e._setFocusable(),e._syncTextBoxContentOnInitialization(),e._scrollView=new Smart.Utilities.Scroll(e.$.input,e.$.horizontalScrollBar,e.$.verticalScrollBar),e._autoExpandUpdate(),e._handleScrollbarsDisplay(),e._initializationValue=e._oldValue=e.value,e.value.length>0?e.$.addClass("has-value"):e.$.removeClass("has-value"),e._handleHintContainer(),e.setAttribute("role","textbox"),e.setAttribute("aria-multiline",!0),e.setAttribute("aria-describedby",e.$.hint.id),e.setAttribute("aria-labelledby",e.$.label.id),e.$.verticalScrollBar.setAttribute("aria-controls",e.$.input.id),e.$.horizontalScrollBar.setAttribute("aria-controls",e.$.input.id)}_handleScrollbarsDisplay(e){const t=this,l=t.$.input;requestAnimationFrame((()=>{switch(t._autoExpandUpdate(),t.horizontalScrollBarVisibility){case"disabled":t.$container.addClass("hscroll"),t.$.horizontalScrollBar.disabled=!0;break;case"hidden":t.$container.removeClass("hscroll");break;case"visible":t.$container.addClass("hscroll"),t._scrollView.scrollWidth=l.scrollWidth-l.clientWidth,t._scrollView.scrollTo(t.$.input.scrollLeft,!0),t.$.horizontalScrollBar.disabled=!1;break;default:l.scrollWidth>l.clientWidth?(t.$container.addClass("hscroll"),t._scrollView.scrollWidth=l.scrollWidth-l.clientWidth,e&&"resize"===e.type?t.$.input.scrollLeft=t._scrollView.scrollLeft:t._scrollView.scrollTo(t.$.input.scrollLeft,!0)):t.$container.removeClass("hscroll"),t.$.horizontalScrollBar.disabled=!1}switch(t.verticalScrollBarVisibility){case"disabled":t.$container.addClass("vscroll"),t.$.verticalScrollBar.disabled=!0;break;case"hidden":t.$container.removeClass("vscroll");break;case"visible":t.$container.addClass("vscroll"),t._scrollView.scrollHeight=l.scrollHeight-l.clientHeight,t._scrollView.scrollTo(t.$.input.scrollTop),t.$.verticalScrollBar.disabled=!1;break;default:l.scrollHeight>l.clientHeight?(t.$container.addClass("vscroll"),t._scrollView.scrollHeight=l.scrollHeight-l.clientHeight,e&&"resize"===e.type?t.$.input.scrollTop=t._scrollView.scrollTop:t._scrollView.scrollTo(t.$.input.scrollTop)):t.$container.removeClass("vscroll"),t.$.verticalScrollBar.disabled=!1}}))}_focusHandler(e){const t=this;if(!t.disabled){if(e.target===t)return t.$.input.focus(),void(t._edgeSelect=!1);if(t.setAttribute("focus",""),t.selectAllOnFocus)if(navigator.userAgent.match(/Edge/)){const e=t.$.input.scrollTop;if(t._edgeSelect)return void(t._edgeSelect=!1);setTimeout((function(){t._edgeSelect=!0,t.$.input.select(),t.$.input.scrollTop=e}),5)}else t.$.input.select();t.$.fireEvent("focus")}}_getScrollLeft(e,t){const l=this;return l.rightToLeft?(Smart.Utilities.Core.Browser.Chrome?(t||(t=l.$.input.scrollWidth-l.$.input.offsetWidth),e=t-e):e*=-1,e):e}_horizontalScrollbarHandler(e){const t=this;t.disabled||"hidden"===t.horizontalScrollBarVisibility||"disabled"===t.horizontalScrollBarVisibility||(e.stopPropagation(),t.$.input.scrollLeft=t._getScrollLeft(e.detail.value))}_keyDownHandler(e){const t=this,l=e.key,a=e.shiftKey,i=e.ctrlKey,n=t.$.input.value;function r(l){let a=t.$.input.selectionStart,i=t.$.input.selectionEnd,n=t.$.input.value;e.preventDefault(),t.$.input.value=n.substring(0,a)+l+n.substring(i,n.length),t.value=t._toDefaultDisplayMode(t.$.input.value),t.$.input.selectionStart=a+2,t.$.input.selectionEnd=a+2}if(t.allowVerticalScrollbar&&t.$.input.selectionEnd>t.$.input.value.length-5&&t._scrollView.scrollTo(t._scrollView.scrollTop+(e.deltaY<0?-t.offsetHeight:t.offsetHeight)),l.indexOf("Arrow")>-1)e.stopPropagation();else switch(l){case"Enter":if("newLine"===t.enterKeyBehavior&&!i&&!a||"newLine"!==t.enterKeyBehavior&&(i||a)){"escaped"===t.displayMode&&r("\\n");break}e.preventDefault(),t._userValue="escaped"===t.displayMode?t._toDefaultDisplayMode(t.$.input.value):t.$.input.value,t.value=t._userValue,("submit"===t.enterKeyBehavior||"clearOnSubmit"===t.enterKeyBehavior||""!==n&&t._userValue!==t._oldValue)&&t.$.fireEvent("change",{oldValue:t._oldValue,value:n,type:"submit"}),"clearOnSubmit"===t.enterKeyBehavior&&(t.$.input.value=""),t._oldValue=t.value=t._toDefaultDisplayMode(t.$.input.value),t._submitted=!0,"escaped"===t.displayMode&&t.enterKeyBehavior.toLowerCase().indexOf("submit")<0&&!i&&!a&&r("\\n"),("submit"===t.enterKeyBehavior||"newLine"===t.enterKeyBehavior&&i)&&t.$.input.blur();break;case"Escape":if("none"===t.escKeyMode)return;switch(t.escKeyMode){case"none":break;case"clearValue":t.value=t.$.input.value="";break;case"previousValue":t.$.input.value="escaped"===t.displayMode?t._toEscapedDisplayMode(t._oldValue):t._oldValue}break;case" ":"escaped"===t.displayMode&&r("\\s");break;case"Backspace":if("escaped"===t.displayMode&&t.$.input.selectionStart===t.$.input.selectionEnd){let e=t.$.input.selectionStart;"\\"!==n[e-2]||"s"!==n[e-1]&&"n"!==n[e-1]||(t.$.input.value=t.$.input.value.substring(0,e-2)+t.$.input.value.substring(e-2,t.$.input.value.length),t.$.input.selectionStart=e-2)}t._scrollView&&t._handleScrollbarsDisplay()}}_keyUpHandler(e){const t=this;switch(e.key){case"ArrowLeft":case"ArrowUp":case"ArrowDown":t._handlePointerInEscapedSymbol();break;case"ArrowRight":t._handlePointerInEscapedSymbol("next")}t._userValue="escaped"===t.displayMode?t._toDefaultDisplayMode(t.$.input.value):t.$.input.value,t._submitKeyUpHandler()}_textBoxKeyDownHandler(e){const t=this,l=e.key;t._scrollView&&t._handleScrollbarsDisplay(),t.value&&t.value.length>0?t.$.addClass("has-value"):t.$.removeClass("has-value"),-1===["Enter","Escape"].indexOf(l)&&(t._preventProgramaticValueChange=!0),["ArrowLeft","ArrowUp","ArrowDown","ArrowRight"].indexOf(l)>-1&&t._scrollView.scrollTo(t.$.input.scrollTop),["PageUp","PageDown"].indexOf(l)>-1&&Smart.Utilities.Core.Browser.Chrome&&("PageUp"===e.key&&(t.$.input.setSelectionRange(0,0),t.$.input.scrollTop=0),"PageDown"===e.key&&(t.$.input.setSelectionRange(t.$.input.value.length,t.$.input.value.length),t.$.input.scrollTop=t._scrollView.verticalScrollBar.max),e.preventDefault())}_mouseWheelHandler(e){const t=this;t.disabled||t.$.verticalScrollBar.disabled||(t._scrollView.scrollTo(t._scrollView.scrollTop+(e.deltaY<0?-t.offsetHeight:t.offsetHeight)),t.$.input.scrollTop+=e.deltaY<0?-t.offsetHeight:t.offsetHeight,t.$.input.scrollTop>0&&e.preventDefault())}_syncTextBoxContentOnInitialization(){const e=this;let t;t=""===e.value?e.innerHTML:e.value,"escaped"!==e.displayMode?e.$.input.value=e.value=e._initializationValue=t:t.match(/\r\n|\n\r|\n|\r|\s|\t|\f|\r/g)?(e.value=e._initializationValue=t,e.$.input.value=e._toEscapedDisplayMode(t)):(e.value=e._initializationValue=e._toDefaultDisplayMode(t),e.$.input.value=t)}_textBoxChangeHandler(e){const t=this,l=e.clipboardData||e.originalEvent&&e.originalEvent.clipboardData||window.clipboardData,a=t.value;if("escaped"===t.displayMode){const a=t.$.input.selectionStart,i=t.$.input.selectionEnd;if(l){let n=l.getData("text"),r=t.$.input.value;e.preventDefault(),n=t._toEscapedDisplayMode(n),t.$.input.value=r.substring(0,a)+n+r.substring(i,r.length)}t.value=t._toDefaultDisplayMode(t.$.input.value)}else t.value=t.$.input.value;t._handleScrollbarsDisplay(),t.value.length>0?t.$.addClass("has-value"):t.$.removeClass("has-value"),l||t.$.fireEvent("change",{value:t.value,oldValue:a,type:"blur"}),t._handleHintContainer()}_inputTouchmoveHandler(e){const t=this;if((t._resizeStarted||t._touchmoveInside)&&e.cancelable)return e.preventDefault(),void e.stopPropagation();const l=t.$.container.classList.contains("vscroll"),a=t._touchCoords;if(!t.$.container.classList.contains("hscroll")&&!l||!a)return;const i=t._scrollView,n=e.touches[0];let r,o,s,c;t._touchCoords=[n.pageX,n.pageY],l?(r=i.scrollTop,o=i.scrollHeight,s=n.pageY,c=a[1]):(r=i.scrollLeft,o=i.scrollWidth,s=n.pageX,c=a[0]);const u=parseFloat(s.toFixed(5)),d=parseFloat(c.toFixed(5));0===r&&u>=d||r===o&&u<=d||(s!==c&&(t._touchmoveInside=!0),e.cancelable&&(e.preventDefault(),e.stopPropagation()))}_inputTouchstartHandler(e){const t=e.touches[0];this._touchCoords=[t.pageX,t.pageY]}_resizeDownHandler(){const e=this;!e.disabled&&e.resizable&&(e._resizeStarted=!0,e.$container.addClass("smart-resize"),e.readonly||e.$.input.setAttribute("readonly",""))}_resizeMoveHandler(e){const t=this;if(t.disabled||!t.resizable||!t._resizeStarted)return;const l=t.getBoundingClientRect(),a=50,i=50,n=t.rightToLeft?l.width+l.left-e.clientX:e.clientX-l.left,r=e.clientY-l.top;n>a&&(t.style.width=n+"px"),r>i&&(t.style.height=r+"px")}_updateSizeRowsCols(){const e=this;e.$.container.removeAttribute("style"),setTimeout((function(){if(!("disabled"!==e.horizontalScrollBarVisibility&&"hidden"!==e.horizontalScrollBarVisibility||"disabled"!==e.verticalScrollBarVisibility&&"hidden"!==e.verticalScrollBarVisibility))return;const t=e.getBoundingClientRect();e.$.container.style.width=t.width+"px",e.$.container.style.height=t.height+"px"}),0)}_upHandler(e){const t=this;delete t._touchCoords,delete t._touchmoveInside,t._selectionStarted=!1,t.disabled||(e.originalEvent.target!==t.$.input?(t.$container.removeClass("smart-resize"),t.readonly||t.$.input.removeAttribute("readonly"),t._resizeStarted&&t.$.input.focus(),t._resizeStarted=!1):t._handlePointerInEscapedSymbol())}_verticalScrollbarHandler(e){const t=this;t.disabled||"disabled"===t.verticalScrollBarVisibility||"hidden"===t.verticalScrollBarVisibility||(e.stopPropagation(),t.$.input.scrollTop=e.detail.value)}_documentDownHandler(e){const t=this;t._selectionStarted=!1,e.originalEvent&&t.$.input.contains(e.originalEvent.target)&&(t._selectionStarted=!0,t._selectionStartTime=new Date,t._pointerDown={pageX:e.pageX,pageY:e.pageY},t._edgeSelect=!1)}_documentSelectionOutsideHandler(e){const t=this;if(clearInterval(t._outsideAutoScroll),!t._selectionStarted)return;const l=t.$.input.getBoundingClientRect(),a=l.y+10,i=l.y+l.height-10;function n(l){const a=t.getBoundingClientRect(),i=document.documentElement,n=l?"Left":"Top";(l?a.left+i.scrollLeft-e.pageX:a.top+i.scrollTop-e.pageY)>0?(t.$.input["scroll"+n]-=10,t._scrollView["scroll"+n]-=10):(t.$.input["scroll"+n]+=10,t._scrollView["scroll"+n]+=10)}e.pageY>a&&e.pageY<i||!(new Date-t._selectionStartTime<300)&&(Math.abs(t._pointerDown.pageX-e.pageX)>=3||Math.abs(t._pointerDown.pageY-e.pageY)>=3)&&(t._outsideAutoScroll=setInterval((function(){n(),n(!0)}),10))}_selectStartHandler(){}_styleChangedHandler(){}});
|
|
@@ -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-multi-split-button",class extends Smart.DropDownList{static get properties(){return{buttonsDataSource:{value:[],type:"array"},dropDownOpenMode:{allowedValues:["none","dropDownButton","auto"],value:"dropDownButton",type:"string"}}}template(){return'<div id="container" role="presentation">\n <span class="smart-label" id="label">[[label]]</span>\n <div id="content" class="smart-content" role="presentation">\n <div id="actionButton" class ="smart-input smart-action-button" role="presentation">\n <template>\n <div class="smart-multi-split-button-buttons" *items={{buttonsDataSource}} role="presentation"><span class="smart-action-split-button" inner-H-T-M-L={{item}} role="button"></span></div>\n </template>\n </div>\n <span id="dropDownButton" class="smart-drop-down-button" role="button" aria-label="Toggle popup">\n <span class ="smart-drop-down-button-icon" id="arrow" aria-hidden="true"></span>\n </span>\n <div id="dropDownContainer" class="smart-drop-down smart-drop-down-container smart-visibility-hidden" role="presentation">\n <smart-list-box id="listBox" unfocusable\n animation="[[animation]]"\n data-source="[[dataSource]]"\n disabled="[[disabled]]"\n display-loading-indicator="[[displayLoadingIndicator]]"\n display-member="[[displayMember]]"\n filterable="[[filterable]]"\n filter-mode="[[filterMode]]"\n filter-input-placeholder="[[filterInputPlaceholder]]"\n grouped="[[grouped]]"\n group-member="[[groupMember]]"\n item-height="[[itemHeight]]"\n item-template="[[itemTemplate]]"\n incremental-search-delay="[[incrementalSearchDelay]]"\n incremental-search-mode="[[incrementalSearchMode]]"\n loading-indicator-placeholder="[[loadingIndicatorPlaceholder]]"\n loading-indicator-position="[[loadingIndicatorPosition]]"\n name="[[name]]"\n placeholder="[[dropDownPlaceholder]]"\n readonly="[[readonly]]"\n right-to-left="[[rightToLeft]]"\n selected-indexes="{{selectedIndexes}}"\n selection-mode="[[selectionMode]]"\n selected-values="{{selectedValues}}"\n sorted="[[sorted]]"\n theme="[[theme]]"\n value-member="[[valueMember]]"\n horizontal-scroll-bar-visibility="[[horizontalScrollBarVisibility]]"\n vertical-scroll-bar-visibility="[[verticalScrollBarVisibility]]"\n virtualized="[[virtualized]]">\n <content></content>\n </smart-list-box>\n <div id="resizeBar" class="smart-drop-down-resize-bar" aria-label="Resize">\n <div></div>\n </div>\n </div>\n </div>\n <span class="smart-hint" id="hint">[[hint]]</span>\n </div>'}static get listeners(){return{"actionButton.down":"_buttonsDownHandler","actionButton.mouseenter":"_buttonsMouseEventsHandler","actionButton.move":"_buttonsMouseEventsHandler","actionButton.mouseleave":"_buttonsMouseEventsHandler","dropDownButton.mouseenter":"_dropDownButtonMouseEventsHandler","dropDownButton.mouseleave":"_dropDownButtonMouseEventsHandler","actionButton.focus":"_focusEventHandler","actionButton.blur":"_blurEventHandler","dropDownButton.focus":"_focusEventHandler","dropDownButton.blur":"_blurEventHandler"}}static get styleUrls(){return["smart.dropdown.css","smart.multisplitbutton.css"]}_blurEventHandler(){const t=this;t.removeAttribute("focus"),t._preventDropDownClose||t.close()}_focusEventHandler(){this.setAttribute("focus","")}_documentUpHandler(t){const e=this;super._documentUpHandler(t);const n=(e.shadowRoot||e).querySelectorAll(".smart-action-split-button");for(let t=0;t<n.length;t++)n[t].removeAttribute("active");e.removeAttribute("active")}_dropDownButtonMouseEventsHandler(t){const e=this;"mouseleave"===t.type?(e.$.dropDownButton.removeAttribute("hover"),e.removeAttribute("hover")):(e.$.dropDownButton.setAttribute("hover",""),e.setAttribute("hover",""))}_buttonsDownHandler(t){const e=this,n=(e.shadowRoot||e).querySelectorAll(".smart-action-split-button");for(let o=0;o<n.length;o++){const r=n[o].getBoundingClientRect();"mouseleave"!==t.type?(e.setAttribute("active",""),n[o].removeAttribute("active"),r.left<=t.pageX&&t.pageX<=r.width+r.left&&(n[o].setAttribute("active",""),e.$.fireEvent("buttonClick",{index:o,label:e.buttonsDataSource[o]}))):(n[o].removeAttribute("active"),e.removeAttribute("active",""))}}_buttonsMouseEventsHandler(t){const e=this,n=(e.shadowRoot||e).querySelectorAll(".smart-action-split-button");for(let o=0;o<n.length;o++){const r=n[o].getBoundingClientRect();"mouseleave"!==t.type?(e.setAttribute("hover",""),n[o].removeAttribute("hover"),r.left<=t.pageX&&t.pageX<=r.width+r.left&&n[o].setAttribute("hover","")):(n[o].removeAttribute("hover"),e.removeAttribute("hover",""))}}_applySelection(){const t=this;if(0===t.buttonsDataSource.length){if("placeholder"===t.selectionDisplayMode||0===t.selectedIndexes.length)return void((t.shadowRoot||t).querySelector(".smart-template-container").innerHTML=t.placeholder);if(!t.$.listBox._items||0===t.$.listBox._items.length)return;(t.shadowRoot||t).querySelector(".smart-template-container").innerHTML='<div class="smart-multi-split-button-buttons"><span class="smart-action-split-button"></span></div>',t.$.actionButton.querySelector(".smart-action-split-button").appendChild(t._createToken())}}propertyChangedHandler(t,e,n){const o=this;"dataSource"===t||"displayMember"===t?(o._setDropDownSize(),o._positionDetection.checkBrowserBounds("vertically"),o._positionDetection.positionDropDown(),o._positionDetection.checkBrowserBounds("horizontally")):super.propertyChangedHandler(t,e,n)}_setAriaRelations(){const t=this;t.setAttribute("role","group"),t.setAttribute("aria-describedby",t.$.hint.id),t.setAttribute("aria-labelledby",t.$.label.id),t.getElementsByClassName("smart-template-container")[0].setAttribute("role","presentation");const e=t._ariaButton=t.$.dropDownButton;e.setAttribute("aria-haspopup","listbox"),e.setAttribute("aria-expanded",t.opened),e.setAttribute("aria-owns",t.$.listBox.id)}});
|
|
@@ -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("CurrencyFormatPanel",class{constructor(e,n="en",a=""){const r=this;r.currencies=[{currency:"US Dollar",sign:"$",abbreviation:"USD"},{currency:"Afghan Afghani",sign:"Af.",abbreviation:"AFN"},{currency:"Albanian Lek",sign:"Lek",abbreviation:"ALL"},{currency:"Algerian Dinar",sign:"din",abbreviation:"DZD"},{currency:"Angolan Kwanza",sign:"Kz",abbreviation:"AOA"},{currency:"Argentine Peso",sign:"$",abbreviation:"ARS"},{currency:"Armenian Dram",sign:"Dram",abbreviation:"AMD"},{currency:"Aruban Florin",sign:"Afl.",abbreviation:"AWG"},{currency:"Australian Dollar",sign:"$",abbreviation:"AUD"},{currency:"Azerbaijani Manat",sign:"₼",abbreviation:"AZN"},{currency:"Bahamian Dollar",sign:"$",abbreviation:"BSD"},{currency:"Bahraini Dinar",sign:"din",abbreviation:"BHD"},{currency:"Bangladeshi Taka",sign:"৳",abbreviation:"BDT"},{currency:"Barbadian Dollar",sign:"$",abbreviation:"BBD"},{currency:"Belarusian Ruble",sign:"р.",abbreviation:"BYN"},{currency:"Belarusian Ruble",sign:"р.",abbreviation:"BYR"},{currency:"Belize Dollar",sign:"$",abbreviation:"BZD"},{currency:"Bermudan Dollar",sign:"$",abbreviation:"BMD"},{currency:"Bhutanese Ngultrum",sign:"Nu.",abbreviation:"BTN"},{currency:"Bolivian Boliviano",sign:"Bs",abbreviation:"BOB"},{currency:"Bosnia-Herzegovina Convertible Mark",sign:"KM",abbreviation:"BAM"},{currency:"Botswanan Pula",sign:"P",abbreviation:"BWP"},{currency:"Brazilian Real",sign:"R$",abbreviation:"BRL"},{currency:"British Pound Sterling",sign:"£",abbreviation:"GBP"},{currency:"Brunei Dollar",sign:"$",abbreviation:"BND"},{currency:"Bulgarian Lev",sign:"lev",abbreviation:"BGN"},{currency:"Burundian Franc",sign:"FBu",abbreviation:"BIF"},{currency:"Cambodian Riel",sign:"Riel",abbreviation:"KHR"},{currency:"Canadian Dollar",sign:"$",abbreviation:"CAD"},{currency:"Cape Verdean Escudo",sign:"CVE",abbreviation:"CVE"},{currency:"Cayman Islands Dollar",sign:"$",abbreviation:"KYD"},{currency:"CFA Franc BCEAO",sign:"CFA",abbreviation:"XOF"},{currency:"CFA Franc BEAC",sign:"FCFA",abbreviation:"XAF"},{currency:"CFP Franc",sign:"FCFP",abbreviation:"XPF"},{currency:"Chilean Peso",sign:"$",abbreviation:"CLP"},{currency:"Chinese Yuan",sign:"¥",abbreviation:"CNY"},{currency:"Chinese Yuan (offshore)",sign:"¥",abbreviation:"RMB"},{currency:"Colombian Peso",sign:"$",abbreviation:"COP"},{currency:"Comorian Franc",sign:"CF",abbreviation:"KMF"},{currency:"Congolese Franc",sign:"FrCD",abbreviation:"CDF"},{currency:"Costa Rican Colon",sign:"₡",abbreviation:"CRC"},{currency:"Croatian Kuna",sign:"kn",abbreviation:"HRK"},{currency:"Cuban Convertible Peso",sign:"$",abbreviation:"CUC"},{currency:"Cuban Peso",sign:"$",abbreviation:"CUP"},{currency:"Czech Republic Koruna",sign:"Kč",abbreviation:"CZK"},{currency:"Danish Krone",sign:"kr.",abbreviation:"DKK"},{currency:"Djiboutian Franc",sign:"Fdj",abbreviation:"DJF"},{currency:"Dominican Peso",sign:"RD$",abbreviation:"DOP"},{currency:"East Caribbean Dollar",sign:"$",abbreviation:"XCD"},{currency:"Egyptian Pound",sign:"£",abbreviation:"EGP"},{currency:"Eritrean Nakfa",sign:"Nfk",abbreviation:"ERN"},{currency:"Ethiopian Birr",sign:"Birr",abbreviation:"ETB"},{currency:"Euro",sign:"€",abbreviation:"EUR"},{currency:"Falkland Islands Pound",sign:"£",abbreviation:"FKP"},{currency:"Fijian Dollar",sign:"$",abbreviation:"FJD"},{currency:"Gambian Dalasi",sign:"GMD",abbreviation:"GMD"},{currency:"Georgian Lari",sign:"GEL",abbreviation:"GEL"},{currency:"Ghanaian Cedi",sign:"GHS",abbreviation:"GHS"},{currency:"Gibraltar Pound",sign:"£",abbreviation:"GIP"},{currency:"Guatemalan Quetzal",sign:"Q",abbreviation:"GTQ"},{currency:"Guinean Franc",sign:"FG",abbreviation:"GNF"},{currency:"Guyanaese Dollar",sign:"$",abbreviation:"GYD"},{currency:"Haitian Gourde",sign:"HTG",abbreviation:"HTG"},{currency:"Honduran Lempira",sign:"L",abbreviation:"HNL"},{currency:"Hong Kong Dollar",sign:"$",abbreviation:"HKD"},{currency:"Hungarian Forint",sign:"Ft",abbreviation:"HUF"},{currency:"Icelandic Krona",sign:"kr",abbreviation:"ISK"},{currency:"Indian Rupee",sign:"₹",abbreviation:"INR"},{currency:"Indonesian Rupiah",sign:"Rp",abbreviation:"IDR"},{currency:"Iranian Rial",sign:"Rial",abbreviation:"IRR"},{currency:"Iraqi Dinar",sign:"din",abbreviation:""},{currency:"Israeli New Sheqel",sign:" ₪",abbreviation:"ILS"},{currency:"Jamaican Dollar",sign:"$",abbreviation:"JMD"},{currency:"Japanese Yen",sign:"¥",abbreviation:"JPY"},{currency:"Jordanian Dinar",sign:"din",abbreviation:"JOD"},{currency:"Kazakhstani Tenge",sign:"₸",abbreviation:"KZT"},{currency:"Kenyan Shilling",sign:"Ksh",abbreviation:"KES"},{currency:"Kuwaiti Dinar",sign:"din",abbreviation:"KWD"},{currency:"Kyrgystani Som",sign:"KGS",abbreviation:"KGS"},{currency:"Laotian Kip",sign:"₭",abbreviation:"LAK"},{currency:"Lebanese Pound",sign:"L£",abbreviation:"LBP"},{currency:"Lesotho Loti",sign:"LSL",abbreviation:"LSL"},{currency:"Liberian Dollar",sign:"$",abbreviation:"LRD"},{currency:"Libyan Dinar",sign:"din",abbreviation:"LYD"},{currency:"Lithuanian Litas",sign:"Lt",abbreviation:"LTL"},{currency:"Macanese Pataca",sign:"MOP",abbreviation:"MOP"},{currency:"Macedonian Denar",sign:"din",abbreviation:"MKD"},{currency:"Malagasy Ariary",sign:"Ar",abbreviation:"MGA"},{currency:"Malawian Kwacha",sign:"MWK",abbreviation:"MWK"},{currency:"Malaysian Ringgit",sign:"RM",abbreviation:"MYR"},{currency:"Maldivian Rufiyaa",sign:"Rf",abbreviation:"MVR"},{currency:"Mauritanian Ouguiya",sign:"MRO",abbreviation:"MRO"},{currency:"Mauritian Rupee",sign:"MURs",abbreviation:"MUR"},{currency:"Mexican Peso",sign:"$",abbreviation:"MXN"},{currency:"Moldovan Leu",sign:"MDL",abbreviation:"MDL"},{currency:"Mongolian Tugrik",sign:"₮",abbreviation:"MNT"},{currency:"Moroccan Dirham",sign:"dh",abbreviation:"MAD"},{currency:"Mozambican Metical",sign:"MTn",abbreviation:"MZN"},{currency:"Myanma Kyat",sign:"K",abbreviation:"MMK"},{currency:"Namibian Dollar",sign:"$",abbreviation:"NAD"},{currency:"Nepalese Rupee",sign:"Rs",abbreviation:"NPR"},{currency:"Netherlands Antillean Guilder",sign:"NAf.",abbreviation:"ANG"},{currency:"New Taiwan Dollar",sign:"NT$",abbreviation:"TWD"},{currency:"New Zealand Dollar",sign:"$",abbreviation:"NZD"},{currency:"Nicaraguan Cordoba",sign:"C$",abbreviation:"NIO"},{currency:"Nigerian Naira",sign:"₦",abbreviation:"NGN"},{currency:"North Korean Won",sign:"₩KP",abbreviation:"KPW"},{currency:"Norwegian Krone",sign:"kr",abbreviation:"NOK"},{currency:"Omani Rial",sign:"Rial",abbreviation:"OMR"},{currency:"Pakistani Rupee",sign:"Rs",abbreviation:"PKR"},{currency:"Panamanian Balboa",sign:"B/.",abbreviation:"PAB"},{currency:"Papua New Guinean Kina",sign:"PGK",abbreviation:"PGK"},{currency:"Paraguayan Guarani",sign:"Gs.",abbreviation:"PYG"},{currency:"Peruvian Nuevo Sol",sign:"S/.",abbreviation:"PEN"},{currency:"Philippine Peso",sign:"₱",abbreviation:"PHP"},{currency:"Polish Zloty",sign:"zł",abbreviation:"PLN"},{currency:"Qatari Rial",sign:"Rial",abbreviation:"QAR"},{currency:"Romanian Leu",sign:"RON",abbreviation:"RON"},{currency:"Russian Ruble",sign:"₽",abbreviation:"RUB"},{currency:"Rwandan Franc",sign:"RF",abbreviation:"RWF"},{currency:"Saint Helena Pound",sign:"£",abbreviation:"SHP"},{currency:"Samoan Tala",sign:"WST",abbreviation:"WST"},{currency:"Sao Tomean Dobra",sign:"Db",abbreviation:"STD"},{currency:"Saudi Riyal",sign:"Rial",abbreviation:"SAR"},{currency:"Serbian Dinar",sign:"din",abbreviation:"RSD"},{currency:"Seychellois Rupee",sign:"SCR",abbreviation:"SCR"},{currency:"Sierra Leonean Leone",sign:"SLL",abbreviation:"SLL"},{currency:"Singapore Dollar",sign:"$",abbreviation:"SGD"},{currency:"Solomon Islands Dollar",sign:"$",abbreviation:"SBD"},{currency:"Somali Shilling",sign:"SOS",abbreviation:"SOS"},{currency:"South African Rand",sign:"R",abbreviation:"ZAR"},{currency:"South Korean Won",sign:"₩",abbreviation:"KRW"},{currency:"South Sudanese Pound",sign:"£",abbreviation:"SSP"},{currency:"Sri Lankan Rupee",sign:"Rs",abbreviation:"LKR"},{currency:"Sudanese Pound",sign:"SDG",abbreviation:"SDG"},{currency:"Surinamese Dollar",sign:"$",abbreviation:"SRD"},{currency:"Swazi Lilangeni",sign:"SZL",abbreviation:"SZL"},{currency:"Swedish Krona",sign:"kr",abbreviation:"SEK"},{currency:"Swiss Franc",sign:"CHF",abbreviation:"CHF"},{currency:"Syrian Pound",sign:"£",abbreviation:"SYP"},{currency:"Tajikistani Somoni",sign:"Som",abbreviation:"TJS"},{currency:"Tanzanian Shilling",sign:"TSh",abbreviation:"TZS"},{currency:"Thai Baht",sign:"฿",abbreviation:"THB"},{currency:"Tongan Pa'anga",sign:"T$",abbreviation:"TOP"},{currency:"Trinidad and Tobago Dollar",sign:"$",abbreviation:"TTD"},{currency:"Tunisian Dinar",sign:"din",abbreviation:"TND"},{currency:"Turkish Lira",sign:"₺",abbreviation:"TRY"},{currency:"Turkmenistani Manat",sign:"m",abbreviation:"TMT"},{currency:"Ugandan Shilling",sign:"UGX",abbreviation:"UGX"},{currency:"Ukrainian Hryvnia",sign:"грн.",abbreviation:"UAH"},{currency:"United Arab Emirates Dirham",sign:"dh",abbreviation:"AED"},{currency:"Uruguayan Peso",sign:"$",abbreviation:"UYU"},{currency:"Uzbekistan Som",sign:"soʼm",abbreviation:"UZS"},{currency:"Vanuatu Vatu",sign:"VUV",abbreviation:"VUV"},{currency:"Venezuelan Bolivar",sign:"Bs",abbreviation:"VEF"},{currency:"Venezuelan Bolivar",sign:"Bs",abbreviation:"VES"},{currency:"Vietnamese Dong",sign:"₫",abbreviation:"VND"},{currency:"Yemeni Rial",sign:"Rial",abbreviation:"YER"},{currency:"Zambian Kwacha",sign:"ZMW",abbreviation:"ZMW"},{currency:"Zimbabwean Dollar",sign:"$",abbreviation:"ZWD"}],r.mainContainer=document.querySelector(e),r.selectedCurrencyFullValue="1,000.00",r.selectedCurrencyValue="1,000",r.demoContainerHolder=document.createElement("div"),r.demoContainerHolder.classList.add("currency-format-panel-demo-container"),r._setLocalizationSettings(n,a),r._generateSelectedCurrencyHolderAndApply(),r._generateCurrencyHolder(),r.mainContainer.appendChild(r.demoContainerHolder)}_setLocalizationSettings(e,n){const a=this;a.locale=e,a.messages=n,a.defaultLocale="en",a.defaultMessages={en:{apply:"apply"}},a.messages||(a.messages=a.defaultMessages),a.messages[a.locale]||(a.messages[a.defaultLocale]||(a.messages=a.defaultMessages),a.locale=a.defaultLocale)}_generateSelectedCurrencyHolderAndApply(){const e=this;let n=document.createElement("div");n.classList.add("selected-currency-holder-and-apply-holder");let a=document.createElement("div");a.classList.add("selected-currency-holder");let r=document.createElement("div");r.classList.add("currency-sign-input-holder"),e.currencySignTextBox=document.createElement("smart-text-box"),e.currencySignTextBox.classList.add("currency-sign-input");const i=()=>e._filterCurrencies();e.currencySignTextBox.addEventListener("keyup",i),e.currencySignTextBox["currency-sign-input"]=i,r.appendChild(e.currencySignTextBox),a.appendChild(r);let t=document.createElement("div");t.classList.add("currency-smart-input-holder"),e.inputCurrencyFormats=document.createElement("smart-input"),e.inputCurrencyFormats.dropDownWidth="auto",e.inputCurrencyFormats.dropDownButtonPosition="right",e.inputCurrencyFormats.readonly=!0,e.inputCurrencyFormats.classList.add("input-currency-formats"),t.appendChild(e.inputCurrencyFormats),a.appendChild(t);let o=document.createElement("div");o.classList.add("apply-button-holder"),e.applyButton=document.createElement("smart-button"),e.applyButton.classList.add("use-format-button"),e.applyButton.classList.add("success"),e.applyButton.innerHTML=e.messages[e.locale].apply?e.messages[e.locale].apply:e.defaultMessages[e.defaultLocale].apply;const s=()=>e.value=e.getFormat();e.applyButton.addEventListener("click",s),e.applyButton["apply-button-event-listener"]=s,o.appendChild(e.applyButton),n.appendChild(a),n.appendChild(o),e.demoContainerHolder.appendChild(n)}detach(){this._removeEventListeners()}_removeEventListeners(){const e=this;e.currencySignTextBox.removeEventListener("keyup",e.currencySignTextBox["currency-sign-input"]),delete e.currencySignTextBox["currency-sign-input"],e.applyButton.removeEventListener("click",e.applyButton["apply-button-event-listener"]),delete e.applyButton["apply-button-event-listener"];let n=document.querySelectorAll(".currency-item");for(let e=0;e<n.length;e++){let a=n[e],r=n[e].dataset.currency;a.removeEventListener("click",a[r]),delete a[r]}}getFormat(){const e=this;let n,a=e.inputCurrencyFormats.value;return a.includes(e.selectedCurrencyFullValue)?n=a.replace(e.selectedCurrencyFullValue,'"#,#.00"'):a.includes(e.selectedCurrencyValue)&&(n=a.replace(e.selectedCurrencyValue,'"#,#"')),n}_generateCurrencyHolder(){const e=this;e.currencyHolder=document.createElement("div"),e.currencyHolder.classList.add("currency-list"),e._setCurrencies(e.currencies),e.demoContainerHolder.appendChild(e.currencyHolder)}_setCurrencies(e){const n=this;n.currencyHolder.innerHTML="";for(let a=0;a<e.length;a++){let r=e[a],i=e[a].currency,t=e[a].sign,o=document.createElement("div");o.classList.add("currency-item"),o.innerHTML=i,o.dataset.currency=i.replace(" ","_")+"_"+a;let s=document.createElement("div");s.classList.add("currency-item-default-format"),s.innerHTML=t+" "+n.selectedCurrencyFullValue,o.appendChild(s),n.currencyHolder.appendChild(o),0===a&&n.useThisFormat(r);const c=()=>n.useThisFormat(r);o.addEventListener("click",c),o[i.replace(" ","_")+"_"+a]=c}}_filterCurrencies(){const e=this;let n=e.currencySignTextBox.value.toLowerCase(),a=[];for(let r=0;r<e.currencies.length;r++)-1!==e.currencies[r].currency.toLowerCase().indexOf(n)&&a.push(e.currencies[r]);e._setCurrencies(a);let r=[];0!==n.length&&(r.push(n+e.selectedCurrencyFullValue),r.push(n+e.selectedCurrencyValue)),r.push(e.selectedCurrencyFullValue+n),r.push(e.selectedCurrencyValue+n),e.inputCurrencyFormats.dataSource=r,e.inputCurrencyFormats.value=r[0]}useThisFormat(e){const n=this;let a=e.sign,r=e.abbreviation;n.currencySignTextBox.value=a;let i=[];i.push(a+n.selectedCurrencyFullValue),i.push(r+" "+a+n.selectedCurrencyFullValue),i.push(a+n.selectedCurrencyValue),i.push(n.selectedCurrencyFullValue+a),i.push(n.selectedCurrencyValue+a),n.inputCurrencyFormats.dataSource=i,n.inputCurrencyFormats.value=i[0]}}),Smart.Utilities.Assign("NumberFormatPanel",class{constructor(e,n="en",a=""){const r=this;r.formats=["0","0.00","#,##0","#,##0.00","#,##0_);(#,##0)","$#,##0_);($#,##0)","#,##0.00_);(#,##0.00)","$#,##0.00_);($#,##0.00)","@","0%","0.00%","0.00E+00","##0.0E+0","# ?/?","# ??/??",'_($* #,##0_);_($* (#,##0);_($* "-"_);_(@_)','_(* #,##0_);_(* (#,##0);_(* "-"_);_(@_)','_($* #,##0.00_);_($* (#,##0.00);_($* "-"??_);_(@_)','_(* #,##0.00_);_(* (#,##0.00);_(* "-"??_);_(@_)'],r.sampleDemoValue=1234.56,r.mainContainer=document.querySelector(e),r.demoContainerHolder=document.createElement("div"),r.demoContainerHolder.classList.add("number-format-panel-demo-container"),r._setLocalizationSettings(n,a),r._generateSelectedNumberFormatHolderAndApply(),r._generateExampleContainer(),r._generateCustomFormatsHolder(),r.useThisFormat(r.initialCustomNumberFormatValue),r.mainContainer.appendChild(r.demoContainerHolder)}_setLocalizationSettings(e,n){const a=this;a.locale=e,a.messages=n,a.defaultLocale="en",a.defaultMessages={en:{apply:"apply",sample:"Sample",positive:"Positive",negative:"Negative",zero:"Zero",text:"Text"}},a.messages||(a.messages=a.defaultMessages),a.messages[a.locale]||(a.messages[a.defaultLocale]||(a.messages=a.defaultMessages),a.locale=a.defaultLocale)}_generateSelectedNumberFormatHolderAndApply(){const e=this;let n=document.createElement("div");n.classList.add("selected-custom-number-format-holder-and-apply-holder");let a=document.createElement("div");a.classList.add("selected-custom-number-format-holder");let r=document.createElement("div");r.classList.add("custom-number-format-input-holder"),e.customNumberFormatTextBox=document.createElement("smart-text-box"),e.customNumberFormatTextBox.classList.add("custom-number-format-input");const i=()=>e._filterCustomFormat();e.customNumberFormatTextBox.addEventListener("keyup",i),e.customNumberFormatTextBox["custom-number-format-input"]=i,r.appendChild(e.customNumberFormatTextBox),a.appendChild(r);let t=document.createElement("div");t.classList.add("apply-button-holder"),e.applyButton=document.createElement("smart-button"),e.applyButton.classList.add("use-number-format-button"),e.applyButton.classList.add("success"),e.applyButton.innerHTML=e.messages[e.locale].apply?e.messages[e.locale].apply:e.defaultMessages[e.defaultLocale].apply;const o=()=>e.value=e.getFormat();e.applyButton.addEventListener("click",o),e.applyButton["apply-button-event-listener"]=o,t.appendChild(e.applyButton),n.appendChild(a),n.appendChild(t),e.demoContainerHolder.appendChild(n)}detach(){this._removeEventListeners()}_removeEventListeners(){const e=this;e.customNumberFormatTextBox.removeEventListener("keyup",e.customNumberFormatTextBox["custom-number-format-input"]),delete e.customNumberFormatTextBox["custom-number-format-input"],e.applyButton.removeEventListener("click",e.applyButton["apply-button-event-listener"]),delete e.applyButton["apply-button-event-listener"];let n=document.querySelectorAll(".custom-number-format-item");for(let e=0;e<n.length;e++){let a=n[e];a.removeEventListener("click",a[e]),delete a[e]}}getFormat(){return this.customNumberFormatTextBox.value}_generateExampleContainer(){const e=this;let n=document.createElement("div");n.classList.add("sample-container"),e.sampleTextHolder=document.createElement("div"),e.sampleTextHolder.classList.add("sample-text-container"),e.positiveTextHolder=document.createElement("div"),e.positiveTextHolder.classList.add("positive-text-container"),e.negativeTextHolder=document.createElement("div"),e.negativeTextHolder.classList.add("negative-text-container"),e.zeroTextHolder=document.createElement("div"),e.zeroTextHolder.classList.add("zero-text-container"),e.textHolder=document.createElement("div"),e.textHolder.classList.add("text-container"),n.appendChild(e.sampleTextHolder),n.appendChild(e.positiveTextHolder),n.appendChild(e.negativeTextHolder),n.appendChild(e.zeroTextHolder),n.appendChild(e.textHolder),e.demoContainerHolder.appendChild(n)}_generateCustomFormatsHolder(){const e=this;e.customNumberFormatHolder=document.createElement("div"),e.customNumberFormatHolder.classList.add("custom-number-format-list"),e._setNumberFormats(e.formats),e.demoContainerHolder.appendChild(e.customNumberFormatHolder)}_setNumberFormats(e){const n=this;n.customNumberFormatHolder.innerHTML="";for(let a=0;a<e.length;a++){let r=e[a],i=document.createElement("div");i.classList.add("custom-number-format-item"),i.innerHTML=r;let t=document.createElement("div");t.classList.add("custom-number-format-item-default-format"),t.innerHTML=(new Smart.Utilities.NumberRenderer).formatNumber(n.sampleDemoValue,r),i.appendChild(t),n.customNumberFormatHolder.appendChild(i),0===a&&(n.initialCustomNumberFormatValue=r);const o=()=>n.useThisFormat(r);i.addEventListener("click",o),i[a]=o}}_filterCustomFormat(){const e=this;let n=e.customNumberFormatTextBox.value,a=[];for(let r=0;r<e.formats.length;r++)-1!==e.formats[r].indexOf(n)&&a.push(e.formats[r]);e._setNumberFormats(a),e.useThisFormat(n)}useThisFormat(e){const n=this;let a="",r="",i="",t="",o="",s=(n.messages[n.locale].sample?n.messages[n.locale].sample:n.defaultMessages[n.defaultLocale].sample)+": "+(new Smart.Utilities.NumberRenderer).formatNumber(n.sampleDemoValue,e),c=(n.messages[n.locale].positive?n.messages[n.locale].positive:n.defaultMessages[n.defaultLocale].positive)+": "+(new Smart.Utilities.NumberRenderer).formatNumber(Math.abs(n.sampleDemoValue),e),l=(n.messages[n.locale].negative?n.messages[n.locale].negative:n.defaultMessages[n.defaultLocale].negative)+": "+(new Smart.Utilities.NumberRenderer).formatNumber(-Math.abs(n.sampleDemoValue),e),u=(n.messages[n.locale].zero?n.messages[n.locale].zero:n.defaultMessages[n.defaultLocale].zero)+": "+(new Smart.Utilities.NumberRenderer).formatNumber(0,e),b=(n.messages[n.locale].text?n.messages[n.locale].text:n.defaultMessages[n.defaultLocale].text)+": "+(new Smart.Utilities.NumberRenderer).formatNumber(n.messages[n.locale].text.toLowerCase()?n.messages[n.locale].text.toLowerCase():n.defaultMessages[n.defaultLocale].text.toLowerCase(),e);var d=(e.match(/;/g)||[]).length;if(0===d?a=s:1===d?(r=c,i=l):2===d?(r=c,i=l,t=u):(r=c,i=l,t=u,o=b),n.sampleTextHolder.innerHTML=a,n.positiveTextHolder.innerHTML=r,n.negativeTextHolder.innerHTML=i,n.zeroTextHolder.innerHTML=t,n.textHolder.innerHTML=o,n.customNumberFormatTextBox.value=e,null===n.demoContainerHolder.querySelector(".custom-number-format-item"))n.demoContainerHolder.querySelector(".custom-number-format-list").classList.add("smart-hidden");else{let e=n.demoContainerHolder.querySelector(".custom-number-format-list").classList;for(let n=0;n<e.length;n++)"smart-hidden"!==e[n]||e.remove("smart-hidden")}}});
|