@qius.solutions/parallel-ui-angular 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +88 -0
- package/README.md +254 -0
- package/accordion/accordion.d.ts +77 -0
- package/accordion/index.d.ts +5 -0
- package/accordion/public_api.d.ts +1 -0
- package/animate/animate.d.ts +27 -0
- package/animate/index.d.ts +5 -0
- package/animate/public_api.d.ts +1 -0
- package/api/blockableui.d.ts +3 -0
- package/api/confirmaeventtype.d.ts +5 -0
- package/api/confirmation.d.ts +24 -0
- package/api/confirmationservice.d.ts +13 -0
- package/api/contextmenuservice.d.ts +10 -0
- package/api/filtermatchmode.d.ts +22 -0
- package/api/filtermetadata.d.ts +5 -0
- package/api/filteroperator.d.ts +4 -0
- package/api/filterservice.d.ts +29 -0
- package/api/index.d.ts +5 -0
- package/api/lazyloadevent.d.ts +15 -0
- package/api/megamenuitem.d.ts +36 -0
- package/api/menuitem.d.ts +55 -0
- package/api/message.d.ts +15 -0
- package/api/messageservice.d.ts +13 -0
- package/api/overlayoptions.d.ts +50 -0
- package/api/overlayservice.d.ts +9 -0
- package/api/parallel-ui-angular-config.d.ts +20 -0
- package/api/parallel-ui-icons.d.ts +260 -0
- package/api/public_api.d.ts +29 -0
- package/api/selectitem.d.ts +8 -0
- package/api/selectitemgroup.d.ts +6 -0
- package/api/shared.d.ts +25 -0
- package/api/sortevent.d.ts +8 -0
- package/api/sortmeta.d.ts +4 -0
- package/api/tablestate.d.ts +20 -0
- package/api/translation.d.ts +47 -0
- package/api/translationkeys.d.ts +42 -0
- package/api/treedragdropservice.d.ts +12 -0
- package/api/treenode.d.ts +19 -0
- package/api/treenodedragevent.d.ts +8 -0
- package/autocomplete/autocomplete.d.ts +183 -0
- package/autocomplete/index.d.ts +5 -0
- package/autocomplete/public_api.d.ts +1 -0
- package/autofocus/autofocus.d.ts +17 -0
- package/autofocus/index.d.ts +5 -0
- package/autofocus/public_api.d.ts +1 -0
- package/avatar/avatar.d.ts +28 -0
- package/avatar/index.d.ts +5 -0
- package/avatar/public_api.d.ts +1 -0
- package/avatargroup/avatargroup.d.ts +13 -0
- package/avatargroup/index.d.ts +5 -0
- package/avatargroup/public_api.d.ts +1 -0
- package/badge/badge.d.ts +56 -0
- package/badge/index.d.ts +5 -0
- package/badge/public_api.d.ts +1 -0
- package/baseicon/baseicon.d.ts +14 -0
- package/baseicon/index.d.ts +5 -0
- package/baseicon/public_api.d.ts +1 -0
- package/blockui/blockui.d.ts +37 -0
- package/blockui/index.d.ts +5 -0
- package/blockui/public_api.d.ts +1 -0
- package/breadcrumb/breadcrumb.d.ts +29 -0
- package/breadcrumb/index.d.ts +5 -0
- package/breadcrumb/public_api.d.ts +1 -0
- package/button/button.d.ts +87 -0
- package/button/index.d.ts +5 -0
- package/button/public_api.d.ts +1 -0
- package/calendar/calendar.d.ts +353 -0
- package/calendar/index.d.ts +5 -0
- package/calendar/public_api.d.ts +1 -0
- package/card/card.d.ts +30 -0
- package/card/index.d.ts +5 -0
- package/card/public_api.d.ts +1 -0
- package/carousel/carousel.d.ts +112 -0
- package/carousel/index.d.ts +5 -0
- package/carousel/public_api.d.ts +1 -0
- package/cascadeselect/cascadeselect.d.ts +156 -0
- package/cascadeselect/index.d.ts +5 -0
- package/cascadeselect/public_api.d.ts +1 -0
- package/chart/chart.d.ts +39 -0
- package/chart/index.d.ts +5 -0
- package/chart/public_api.d.ts +1 -0
- package/checkbox/checkbox.d.ts +56 -0
- package/checkbox/index.d.ts +5 -0
- package/checkbox/public_api.d.ts +1 -0
- package/chip/chip.d.ts +33 -0
- package/chip/index.d.ts +5 -0
- package/chip/public_api.d.ts +1 -0
- package/chips/chips.d.ts +73 -0
- package/chips/index.d.ts +5 -0
- package/chips/public_api.d.ts +1 -0
- package/colorpicker/colorpicker.d.ts +141 -0
- package/colorpicker/index.d.ts +5 -0
- package/colorpicker/public_api.d.ts +1 -0
- package/confirmdialog/confirmdialog.d.ts +116 -0
- package/confirmdialog/index.d.ts +5 -0
- package/confirmdialog/public_api.d.ts +1 -0
- package/confirmpopup/confirmpopup.d.ts +71 -0
- package/confirmpopup/index.d.ts +5 -0
- package/confirmpopup/public_api.d.ts +1 -0
- package/contextmenu/contextmenu.d.ts +92 -0
- package/contextmenu/index.d.ts +5 -0
- package/contextmenu/public_api.d.ts +1 -0
- package/dataview/dataview.d.ts +104 -0
- package/dataview/index.d.ts +5 -0
- package/dataview/public_api.d.ts +1 -0
- package/defer/defer.d.ts +29 -0
- package/defer/index.d.ts +5 -0
- package/defer/public_api.d.ts +1 -0
- package/dialog/dialog.d.ts +155 -0
- package/dialog/index.d.ts +5 -0
- package/dialog/public_api.d.ts +1 -0
- package/divider/divider.d.ts +29 -0
- package/divider/index.d.ts +5 -0
- package/divider/public_api.d.ts +1 -0
- package/dock/dock.d.ts +43 -0
- package/dock/index.d.ts +5 -0
- package/dock/public_api.d.ts +1 -0
- package/dom/connectedoverlayscrollhandler.d.ts +9 -0
- package/dom/domhandler.d.ts +82 -0
- package/dom/index.d.ts +5 -0
- package/dom/public_api.d.ts +2 -0
- package/dragdrop/dragdrop.d.ts +65 -0
- package/dragdrop/index.d.ts +5 -0
- package/dragdrop/public_api.d.ts +1 -0
- package/dropdown/dropdown.d.ts +225 -0
- package/dropdown/index.d.ts +5 -0
- package/dropdown/public_api.d.ts +1 -0
- package/dynamicdialog/dialogservice.d.ts +18 -0
- package/dynamicdialog/dynamicdialog-config.d.ts +29 -0
- package/dynamicdialog/dynamicdialog-injector.d.ts +8 -0
- package/dynamicdialog/dynamicdialog-ref.d.ts +25 -0
- package/dynamicdialog/dynamicdialog.d.ts +101 -0
- package/dynamicdialog/dynamicdialogcontent.d.ts +8 -0
- package/dynamicdialog/index.d.ts +5 -0
- package/dynamicdialog/public_api.d.ts +6 -0
- package/editor/editor.d.ts +50 -0
- package/editor/index.d.ts +5 -0
- package/editor/public_api.d.ts +1 -0
- package/esm2020/accordion/accordion.mjs +396 -0
- package/esm2020/accordion/public_api.mjs +2 -0
- package/esm2020/accordion/qius.solutions-parallel-ui-angular-accordion.mjs +5 -0
- package/esm2020/animate/animate.mjs +79 -0
- package/esm2020/animate/public_api.mjs +2 -0
- package/esm2020/animate/qius.solutions-parallel-ui-angular-animate.mjs +5 -0
- package/esm2020/api/blockableui.mjs +2 -0
- package/esm2020/api/confirmaeventtype.mjs +7 -0
- package/esm2020/api/confirmation.mjs +2 -0
- package/esm2020/api/confirmationservice.mjs +28 -0
- package/esm2020/api/contextmenuservice.mjs +23 -0
- package/esm2020/api/filtermatchmode.mjs +23 -0
- package/esm2020/api/filtermetadata.mjs +2 -0
- package/esm2020/api/filteroperator.mjs +5 -0
- package/esm2020/api/filterservice.mjs +221 -0
- package/esm2020/api/lazyloadevent.mjs +2 -0
- package/esm2020/api/megamenuitem.mjs +2 -0
- package/esm2020/api/menuitem.mjs +2 -0
- package/esm2020/api/message.mjs +2 -0
- package/esm2020/api/messageservice.mjs +30 -0
- package/esm2020/api/overlayoptions.mjs +2 -0
- package/esm2020/api/overlayservice.mjs +21 -0
- package/esm2020/api/parallel-ui-angular-config.mjs +84 -0
- package/esm2020/api/parallel-ui-icons.mjs +261 -0
- package/esm2020/api/public_api.mjs +30 -0
- package/esm2020/api/qius.solutions-parallel-ui-angular-api.mjs +5 -0
- package/esm2020/api/selectitem.mjs +2 -0
- package/esm2020/api/selectitemgroup.mjs +2 -0
- package/esm2020/api/shared.mjs +62 -0
- package/esm2020/api/sortevent.mjs +2 -0
- package/esm2020/api/sortmeta.mjs +2 -0
- package/esm2020/api/tablestate.mjs +2 -0
- package/esm2020/api/translation.mjs +2 -0
- package/esm2020/api/translationkeys.mjs +43 -0
- package/esm2020/api/treedragdropservice.mjs +23 -0
- package/esm2020/api/treenode.mjs +2 -0
- package/esm2020/api/treenodedragevent.mjs +2 -0
- package/esm2020/autocomplete/autocomplete.mjs +1144 -0
- package/esm2020/autocomplete/public_api.mjs +2 -0
- package/esm2020/autocomplete/qius.solutions-parallel-ui-angular-autocomplete.mjs +5 -0
- package/esm2020/autofocus/autofocus.mjs +51 -0
- package/esm2020/autofocus/public_api.mjs +2 -0
- package/esm2020/autofocus/qius.solutions-parallel-ui-angular-autofocus.mjs +5 -0
- package/esm2020/avatar/avatar.mjs +75 -0
- package/esm2020/avatar/public_api.mjs +2 -0
- package/esm2020/avatar/qius.solutions-parallel-ui-angular-avatar.mjs +5 -0
- package/esm2020/avatargroup/avatargroup.mjs +40 -0
- package/esm2020/avatargroup/public_api.mjs +2 -0
- package/esm2020/avatargroup/qius.solutions-parallel-ui-angular-avatargroup.mjs +5 -0
- package/esm2020/badge/badge.mjs +182 -0
- package/esm2020/badge/public_api.mjs +2 -0
- package/esm2020/badge/qius.solutions-parallel-ui-angular-badge.mjs +5 -0
- package/esm2020/baseicon/baseicon.mjs +41 -0
- package/esm2020/baseicon/public_api.mjs +2 -0
- package/esm2020/baseicon/qius.solutions-parallel-ui-angular-baseicon.mjs +5 -0
- package/esm2020/blockui/blockui.mjs +140 -0
- package/esm2020/blockui/public_api.mjs +2 -0
- package/esm2020/blockui/qius.solutions-parallel-ui-angular-blockui.mjs +5 -0
- package/esm2020/breadcrumb/breadcrumb.mjs +296 -0
- package/esm2020/breadcrumb/public_api.mjs +2 -0
- package/esm2020/breadcrumb/qius.solutions-parallel-ui-angular-breadcrumb.mjs +5 -0
- package/esm2020/button/button.mjs +362 -0
- package/esm2020/button/public_api.mjs +2 -0
- package/esm2020/button/qius.solutions-parallel-ui-angular-button.mjs +5 -0
- package/esm2020/calendar/calendar.mjs +3123 -0
- package/esm2020/calendar/public_api.mjs +2 -0
- package/esm2020/calendar/qius.solutions-parallel-ui-angular-calendar.mjs +5 -0
- package/esm2020/card/card.mjs +126 -0
- package/esm2020/card/public_api.mjs +2 -0
- package/esm2020/card/qius.solutions-parallel-ui-angular-card.mjs +5 -0
- package/esm2020/carousel/carousel.mjs +696 -0
- package/esm2020/carousel/public_api.mjs +2 -0
- package/esm2020/carousel/qius.solutions-parallel-ui-angular-carousel.mjs +5 -0
- package/esm2020/cascadeselect/cascadeselect.mjs +766 -0
- package/esm2020/cascadeselect/public_api.mjs +2 -0
- package/esm2020/cascadeselect/qius.solutions-parallel-ui-angular-cascadeselect.mjs +5 -0
- package/esm2020/chart/chart.mjs +142 -0
- package/esm2020/chart/public_api.mjs +2 -0
- package/esm2020/chart/qius.solutions-parallel-ui-angular-chart.mjs +5 -0
- package/esm2020/checkbox/checkbox.mjs +247 -0
- package/esm2020/checkbox/public_api.mjs +2 -0
- package/esm2020/checkbox/qius.solutions-parallel-ui-angular-checkbox.mjs +5 -0
- package/esm2020/chip/chip.mjs +113 -0
- package/esm2020/chip/public_api.mjs +2 -0
- package/esm2020/chip/qius.solutions-parallel-ui-angular-chip.mjs +5 -0
- package/esm2020/chips/chips.mjs +375 -0
- package/esm2020/chips/public_api.mjs +2 -0
- package/esm2020/chips/qius.solutions-parallel-ui-angular-chips.mjs +5 -0
- package/esm2020/colorpicker/colorpicker.mjs +685 -0
- package/esm2020/colorpicker/public_api.mjs +2 -0
- package/esm2020/colorpicker/qius.solutions-parallel-ui-angular-colorpicker.mjs +5 -0
- package/esm2020/confirmdialog/confirmdialog.mjs +606 -0
- package/esm2020/confirmdialog/public_api.mjs +2 -0
- package/esm2020/confirmdialog/qius.solutions-parallel-ui-angular-confirmdialog.mjs +5 -0
- package/esm2020/confirmpopup/confirmpopup.mjs +394 -0
- package/esm2020/confirmpopup/public_api.mjs +2 -0
- package/esm2020/confirmpopup/qius.solutions-parallel-ui-angular-confirmpopup.mjs +5 -0
- package/esm2020/contextmenu/contextmenu.mjs +691 -0
- package/esm2020/contextmenu/public_api.mjs +2 -0
- package/esm2020/contextmenu/qius.solutions-parallel-ui-angular-contextmenu.mjs +5 -0
- package/esm2020/dataview/dataview.mjs +512 -0
- package/esm2020/dataview/public_api.mjs +2 -0
- package/esm2020/dataview/qius.solutions-parallel-ui-angular-dataview.mjs +5 -0
- package/esm2020/defer/defer.mjs +92 -0
- package/esm2020/defer/public_api.mjs +2 -0
- package/esm2020/defer/qius.solutions-parallel-ui-angular-defer.mjs +5 -0
- package/esm2020/dialog/dialog.mjs +833 -0
- package/esm2020/dialog/public_api.mjs +2 -0
- package/esm2020/dialog/qius.solutions-parallel-ui-angular-dialog.mjs +5 -0
- package/esm2020/divider/divider.mjs +69 -0
- package/esm2020/divider/public_api.mjs +2 -0
- package/esm2020/divider/qius.solutions-parallel-ui-angular-divider.mjs +5 -0
- package/esm2020/dock/dock.mjs +210 -0
- package/esm2020/dock/public_api.mjs +2 -0
- package/esm2020/dock/qius.solutions-parallel-ui-angular-dock.mjs +5 -0
- package/esm2020/dom/connectedoverlayscrollhandler.mjs +27 -0
- package/esm2020/dom/domhandler.mjs +600 -0
- package/esm2020/dom/public_api.mjs +3 -0
- package/esm2020/dom/qius.solutions-parallel-ui-angular-dom.mjs +5 -0
- package/esm2020/dragdrop/dragdrop.mjs +251 -0
- package/esm2020/dragdrop/public_api.mjs +2 -0
- package/esm2020/dragdrop/qius.solutions-parallel-ui-angular-dragdrop.mjs +5 -0
- package/esm2020/dropdown/dropdown.mjs +1372 -0
- package/esm2020/dropdown/public_api.mjs +2 -0
- package/esm2020/dropdown/qius.solutions-parallel-ui-angular-dropdown.mjs +5 -0
- package/esm2020/dynamicdialog/dialogservice.mjs +60 -0
- package/esm2020/dynamicdialog/dynamicdialog-config.mjs +3 -0
- package/esm2020/dynamicdialog/dynamicdialog-injector.mjs +13 -0
- package/esm2020/dynamicdialog/dynamicdialog-ref.mjs +41 -0
- package/esm2020/dynamicdialog/dynamicdialog.mjs +562 -0
- package/esm2020/dynamicdialog/dynamicdialogcontent.mjs +19 -0
- package/esm2020/dynamicdialog/public_api.mjs +7 -0
- package/esm2020/dynamicdialog/qius.solutions-parallel-ui-angular-dynamicdialog.mjs +5 -0
- package/esm2020/editor/editor.mjs +309 -0
- package/esm2020/editor/public_api.mjs +2 -0
- package/esm2020/editor/qius.solutions-parallel-ui-angular-editor.mjs +5 -0
- package/esm2020/fieldset/fieldset.mjs +214 -0
- package/esm2020/fieldset/public_api.mjs +2 -0
- package/esm2020/fieldset/qius.solutions-parallel-ui-angular-fieldset.mjs +5 -0
- package/esm2020/fileupload/fileupload.mjs +754 -0
- package/esm2020/fileupload/public_api.mjs +2 -0
- package/esm2020/fileupload/qius.solutions-parallel-ui-angular-fileupload.mjs +5 -0
- package/esm2020/focustrap/focustrap.mjs +52 -0
- package/esm2020/focustrap/public_api.mjs +2 -0
- package/esm2020/focustrap/qius.solutions-parallel-ui-angular-focustrap.mjs +5 -0
- package/esm2020/galleria/galleria.mjs +1187 -0
- package/esm2020/galleria/public_api.mjs +2 -0
- package/esm2020/galleria/qius.solutions-parallel-ui-angular-galleria.mjs +5 -0
- package/esm2020/icons/angledoubledown/angledoubledown.mjs +35 -0
- package/esm2020/icons/angledoubledown/public_api.mjs +2 -0
- package/esm2020/icons/angledoubledown/qius.solutions-parallel-ui-angular-icons-angledoubledown.mjs +5 -0
- package/esm2020/icons/angledoubleleft/angledoubleleft.mjs +35 -0
- package/esm2020/icons/angledoubleleft/public_api.mjs +2 -0
- package/esm2020/icons/angledoubleleft/qius.solutions-parallel-ui-angular-icons-angledoubleleft.mjs +5 -0
- package/esm2020/icons/angledoubleright/angledoubleright.mjs +35 -0
- package/esm2020/icons/angledoubleright/public_api.mjs +2 -0
- package/esm2020/icons/angledoubleright/qius.solutions-parallel-ui-angular-icons-angledoubleright.mjs +5 -0
- package/esm2020/icons/angledoubleup/angledoubleup.mjs +35 -0
- package/esm2020/icons/angledoubleup/public_api.mjs +2 -0
- package/esm2020/icons/angledoubleup/qius.solutions-parallel-ui-angular-icons-angledoubleup.mjs +5 -0
- package/esm2020/icons/angledown/angledown.mjs +31 -0
- package/esm2020/icons/angledown/public_api.mjs +2 -0
- package/esm2020/icons/angledown/qius.solutions-parallel-ui-angular-icons-angledown.mjs +5 -0
- package/esm2020/icons/angleleft/angleleft.mjs +31 -0
- package/esm2020/icons/angleleft/public_api.mjs +2 -0
- package/esm2020/icons/angleleft/qius.solutions-parallel-ui-angular-icons-angleleft.mjs +5 -0
- package/esm2020/icons/angleright/angleright.mjs +31 -0
- package/esm2020/icons/angleright/public_api.mjs +2 -0
- package/esm2020/icons/angleright/qius.solutions-parallel-ui-angular-icons-angleright.mjs +5 -0
- package/esm2020/icons/angleup/angleup.mjs +31 -0
- package/esm2020/icons/angleup/public_api.mjs +2 -0
- package/esm2020/icons/angleup/qius.solutions-parallel-ui-angular-icons-angleup.mjs +5 -0
- package/esm2020/icons/arrowdown/arrowdown.mjs +49 -0
- package/esm2020/icons/arrowdown/public_api.mjs +2 -0
- package/esm2020/icons/arrowdown/qius.solutions-parallel-ui-angular-icons-arrowdown.mjs +5 -0
- package/esm2020/icons/arrowdownleft/arrowdownleft.mjs +31 -0
- package/esm2020/icons/arrowdownleft/public_api.mjs +2 -0
- package/esm2020/icons/arrowdownleft/qius.solutions-parallel-ui-angular-icons-arrowdownleft.mjs +5 -0
- package/esm2020/icons/arrowdownright/arrowdownright.mjs +31 -0
- package/esm2020/icons/arrowdownright/public_api.mjs +2 -0
- package/esm2020/icons/arrowdownright/qius.solutions-parallel-ui-angular-icons-arrowdownright.mjs +5 -0
- package/esm2020/icons/arrowleft/arrowleft.mjs +49 -0
- package/esm2020/icons/arrowleft/public_api.mjs +2 -0
- package/esm2020/icons/arrowleft/qius.solutions-parallel-ui-angular-icons-arrowleft.mjs +5 -0
- package/esm2020/icons/arrowright/arrowright.mjs +35 -0
- package/esm2020/icons/arrowright/public_api.mjs +2 -0
- package/esm2020/icons/arrowright/qius.solutions-parallel-ui-angular-icons-arrowright.mjs +5 -0
- package/esm2020/icons/arrowup/arrowup.mjs +49 -0
- package/esm2020/icons/arrowup/public_api.mjs +2 -0
- package/esm2020/icons/arrowup/qius.solutions-parallel-ui-angular-icons-arrowup.mjs +5 -0
- package/esm2020/icons/ban/ban.mjs +45 -0
- package/esm2020/icons/ban/public_api.mjs +2 -0
- package/esm2020/icons/ban/qius.solutions-parallel-ui-angular-icons-ban.mjs +5 -0
- package/esm2020/icons/bars/bars.mjs +35 -0
- package/esm2020/icons/bars/public_api.mjs +2 -0
- package/esm2020/icons/bars/qius.solutions-parallel-ui-angular-icons-bars.mjs +5 -0
- package/esm2020/icons/calendar/calendar.mjs +31 -0
- package/esm2020/icons/calendar/public_api.mjs +2 -0
- package/esm2020/icons/calendar/qius.solutions-parallel-ui-angular-icons-calendar.mjs +5 -0
- package/esm2020/icons/caretleft/caretleft.mjs +31 -0
- package/esm2020/icons/caretleft/public_api.mjs +2 -0
- package/esm2020/icons/caretleft/qius.solutions-parallel-ui-angular-icons-caretleft.mjs +5 -0
- package/esm2020/icons/caretright/caretright.mjs +31 -0
- package/esm2020/icons/caretright/public_api.mjs +2 -0
- package/esm2020/icons/caretright/qius.solutions-parallel-ui-angular-icons-caretright.mjs +5 -0
- package/esm2020/icons/check/check.mjs +31 -0
- package/esm2020/icons/check/public_api.mjs +2 -0
- package/esm2020/icons/check/qius.solutions-parallel-ui-angular-icons-check.mjs +5 -0
- package/esm2020/icons/chevrondown/chevrondown.mjs +31 -0
- package/esm2020/icons/chevrondown/public_api.mjs +2 -0
- package/esm2020/icons/chevrondown/qius.solutions-parallel-ui-angular-icons-chevrondown.mjs +5 -0
- package/esm2020/icons/chevronleft/chevronleft.mjs +31 -0
- package/esm2020/icons/chevronleft/public_api.mjs +2 -0
- package/esm2020/icons/chevronleft/qius.solutions-parallel-ui-angular-icons-chevronleft.mjs +5 -0
- package/esm2020/icons/chevronright/chevronright.mjs +31 -0
- package/esm2020/icons/chevronright/public_api.mjs +2 -0
- package/esm2020/icons/chevronright/qius.solutions-parallel-ui-angular-icons-chevronright.mjs +5 -0
- package/esm2020/icons/chevronup/chevronup.mjs +31 -0
- package/esm2020/icons/chevronup/public_api.mjs +2 -0
- package/esm2020/icons/chevronup/qius.solutions-parallel-ui-angular-icons-chevronup.mjs +5 -0
- package/esm2020/icons/exclamationtriangle/exclamationtriangle.mjs +61 -0
- package/esm2020/icons/exclamationtriangle/public_api.mjs +2 -0
- package/esm2020/icons/exclamationtriangle/qius.solutions-parallel-ui-angular-icons-exclamationtriangle.mjs +5 -0
- package/esm2020/icons/eye/eye.mjs +35 -0
- package/esm2020/icons/eye/public_api.mjs +2 -0
- package/esm2020/icons/eye/qius.solutions-parallel-ui-angular-icons-eye.mjs +5 -0
- package/esm2020/icons/eyeslash/eyeslash.mjs +49 -0
- package/esm2020/icons/eyeslash/public_api.mjs +2 -0
- package/esm2020/icons/eyeslash/qius.solutions-parallel-ui-angular-icons-eyeslash.mjs +5 -0
- package/esm2020/icons/filter/filter.mjs +45 -0
- package/esm2020/icons/filter/public_api.mjs +2 -0
- package/esm2020/icons/filter/qius.solutions-parallel-ui-angular-icons-filter.mjs +5 -0
- package/esm2020/icons/filterslash/filterslash.mjs +49 -0
- package/esm2020/icons/filterslash/public_api.mjs +2 -0
- package/esm2020/icons/filterslash/qius.solutions-parallel-ui-angular-icons-filterslash.mjs +5 -0
- package/esm2020/icons/home/home.mjs +49 -0
- package/esm2020/icons/home/public_api.mjs +2 -0
- package/esm2020/icons/home/qius.solutions-parallel-ui-angular-icons-home.mjs +5 -0
- package/esm2020/icons/infocircle/infocircle.mjs +49 -0
- package/esm2020/icons/infocircle/public_api.mjs +2 -0
- package/esm2020/icons/infocircle/qius.solutions-parallel-ui-angular-icons-infocircle.mjs +5 -0
- package/esm2020/icons/minus/minus.mjs +32 -0
- package/esm2020/icons/minus/public_api.mjs +2 -0
- package/esm2020/icons/minus/qius.solutions-parallel-ui-angular-icons-minus.mjs +5 -0
- package/esm2020/icons/pencil/pencil.mjs +45 -0
- package/esm2020/icons/pencil/public_api.mjs +2 -0
- package/esm2020/icons/pencil/qius.solutions-parallel-ui-angular-icons-pencil.mjs +5 -0
- package/esm2020/icons/plus/plus.mjs +45 -0
- package/esm2020/icons/plus/public_api.mjs +2 -0
- package/esm2020/icons/plus/qius.solutions-parallel-ui-angular-icons-plus.mjs +5 -0
- package/esm2020/icons/refresh/public_api.mjs +2 -0
- package/esm2020/icons/refresh/qius.solutions-parallel-ui-angular-icons-refresh.mjs +5 -0
- package/esm2020/icons/refresh/refresh.mjs +49 -0
- package/esm2020/icons/search/public_api.mjs +2 -0
- package/esm2020/icons/search/qius.solutions-parallel-ui-angular-icons-search.mjs +5 -0
- package/esm2020/icons/search/search.mjs +49 -0
- package/esm2020/icons/searchminus/public_api.mjs +2 -0
- package/esm2020/icons/searchminus/qius.solutions-parallel-ui-angular-icons-searchminus.mjs +5 -0
- package/esm2020/icons/searchminus/searchminus.mjs +49 -0
- package/esm2020/icons/searchplus/public_api.mjs +2 -0
- package/esm2020/icons/searchplus/qius.solutions-parallel-ui-angular-icons-searchplus.mjs +5 -0
- package/esm2020/icons/searchplus/searchplus.mjs +49 -0
- package/esm2020/icons/sortalt/public_api.mjs +2 -0
- package/esm2020/icons/sortalt/qius.solutions-parallel-ui-angular-icons-sortalt.mjs +5 -0
- package/esm2020/icons/sortalt/sortalt.mjs +57 -0
- package/esm2020/icons/sortamountdown/public_api.mjs +2 -0
- package/esm2020/icons/sortamountdown/qius.solutions-parallel-ui-angular-icons-sortamountdown.mjs +5 -0
- package/esm2020/icons/sortamountdown/sortamountdown.mjs +85 -0
- package/esm2020/icons/sortamountupalt/public_api.mjs +2 -0
- package/esm2020/icons/sortamountupalt/qius.solutions-parallel-ui-angular-icons-sortamountupalt.mjs +5 -0
- package/esm2020/icons/sortamountupalt/sortamountupalt.mjs +85 -0
- package/esm2020/icons/spinner/public_api.mjs +2 -0
- package/esm2020/icons/spinner/qius.solutions-parallel-ui-angular-icons-spinner.mjs +5 -0
- package/esm2020/icons/spinner/spinner.mjs +45 -0
- package/esm2020/icons/star/public_api.mjs +2 -0
- package/esm2020/icons/star/qius.solutions-parallel-ui-angular-icons-star.mjs +5 -0
- package/esm2020/icons/star/star.mjs +45 -0
- package/esm2020/icons/starfill/public_api.mjs +2 -0
- package/esm2020/icons/starfill/qius.solutions-parallel-ui-angular-icons-starfill.mjs +5 -0
- package/esm2020/icons/starfill/starfill.mjs +45 -0
- package/esm2020/icons/thlarge/public_api.mjs +2 -0
- package/esm2020/icons/thlarge/qius.solutions-parallel-ui-angular-icons-thlarge.mjs +5 -0
- package/esm2020/icons/thlarge/thlarge.mjs +49 -0
- package/esm2020/icons/times/public_api.mjs +2 -0
- package/esm2020/icons/times/qius.solutions-parallel-ui-angular-icons-times.mjs +5 -0
- package/esm2020/icons/times/times.mjs +31 -0
- package/esm2020/icons/timescircle/public_api.mjs +2 -0
- package/esm2020/icons/timescircle/qius.solutions-parallel-ui-angular-icons-timescircle.mjs +5 -0
- package/esm2020/icons/timescircle/timescircle.mjs +49 -0
- package/esm2020/icons/trash/public_api.mjs +2 -0
- package/esm2020/icons/trash/qius.solutions-parallel-ui-angular-icons-trash.mjs +5 -0
- package/esm2020/icons/trash/trash.mjs +49 -0
- package/esm2020/icons/undo/public_api.mjs +2 -0
- package/esm2020/icons/undo/qius.solutions-parallel-ui-angular-icons-undo.mjs +5 -0
- package/esm2020/icons/undo/undo.mjs +49 -0
- package/esm2020/icons/upload/public_api.mjs +2 -0
- package/esm2020/icons/upload/qius.solutions-parallel-ui-angular-icons-upload.mjs +5 -0
- package/esm2020/icons/upload/upload.mjs +49 -0
- package/esm2020/icons/windowmaximize/public_api.mjs +2 -0
- package/esm2020/icons/windowmaximize/qius.solutions-parallel-ui-angular-icons-windowmaximize.mjs +5 -0
- package/esm2020/icons/windowmaximize/windowmaximize.mjs +49 -0
- package/esm2020/icons/windowminimize/public_api.mjs +2 -0
- package/esm2020/icons/windowminimize/qius.solutions-parallel-ui-angular-icons-windowminimize.mjs +5 -0
- package/esm2020/icons/windowminimize/windowminimize.mjs +49 -0
- package/esm2020/image/image.mjs +321 -0
- package/esm2020/image/public_api.mjs +2 -0
- package/esm2020/image/qius.solutions-parallel-ui-angular-image.mjs +5 -0
- package/esm2020/inplace/inplace.mjs +168 -0
- package/esm2020/inplace/public_api.mjs +2 -0
- package/esm2020/inplace/qius.solutions-parallel-ui-angular-inplace.mjs +5 -0
- package/esm2020/inputmask/inputmask.mjs +697 -0
- package/esm2020/inputmask/public_api.mjs +2 -0
- package/esm2020/inputmask/qius.solutions-parallel-ui-angular-inputmask.mjs +5 -0
- package/esm2020/inputnumber/inputnumber.mjs +1189 -0
- package/esm2020/inputnumber/public_api.mjs +2 -0
- package/esm2020/inputnumber/qius.solutions-parallel-ui-angular-inputnumber.mjs +5 -0
- package/esm2020/inputswitch/inputswitch.mjs +160 -0
- package/esm2020/inputswitch/public_api.mjs +2 -0
- package/esm2020/inputswitch/qius.solutions-parallel-ui-angular-inputswitch.mjs +5 -0
- package/esm2020/inputtext/inputtext.mjs +55 -0
- package/esm2020/inputtext/public_api.mjs +2 -0
- package/esm2020/inputtext/qius.solutions-parallel-ui-angular-inputtext.mjs +5 -0
- package/esm2020/inputtextarea/inputtextarea.mjs +117 -0
- package/esm2020/inputtextarea/public_api.mjs +2 -0
- package/esm2020/inputtextarea/qius.solutions-parallel-ui-angular-inputtextarea.mjs +5 -0
- package/esm2020/keyfilter/keyfilter.mjs +214 -0
- package/esm2020/keyfilter/public_api.mjs +2 -0
- package/esm2020/keyfilter/qius.solutions-parallel-ui-angular-keyfilter.mjs +5 -0
- package/esm2020/knob/knob.mjs +283 -0
- package/esm2020/knob/public_api.mjs +2 -0
- package/esm2020/knob/qius.solutions-parallel-ui-angular-knob.mjs +5 -0
- package/esm2020/listbox/listbox.mjs +800 -0
- package/esm2020/listbox/public_api.mjs +2 -0
- package/esm2020/listbox/qius.solutions-parallel-ui-angular-listbox.mjs +5 -0
- package/esm2020/megamenu/megamenu.mjs +464 -0
- package/esm2020/megamenu/public_api.mjs +2 -0
- package/esm2020/megamenu/qius.solutions-parallel-ui-angular-megamenu.mjs +5 -0
- package/esm2020/menu/menu.mjs +548 -0
- package/esm2020/menu/public_api.mjs +2 -0
- package/esm2020/menu/qius.solutions-parallel-ui-angular-menu.mjs +5 -0
- package/esm2020/menubar/menubar.mjs +515 -0
- package/esm2020/menubar/public_api.mjs +2 -0
- package/esm2020/menubar/qius.solutions-parallel-ui-angular-menubar.mjs +5 -0
- package/esm2020/message/message.mjs +103 -0
- package/esm2020/message/public_api.mjs +2 -0
- package/esm2020/message/qius.solutions-parallel-ui-angular-message.mjs +5 -0
- package/esm2020/messages/messages.mjs +272 -0
- package/esm2020/messages/public_api.mjs +2 -0
- package/esm2020/messages/qius.solutions-parallel-ui-angular-messages.mjs +5 -0
- package/esm2020/multiselect/multiselect.mjs +1411 -0
- package/esm2020/multiselect/public_api.mjs +2 -0
- package/esm2020/multiselect/qius.solutions-parallel-ui-angular-multiselect.mjs +5 -0
- package/esm2020/orderlist/orderlist.mjs +621 -0
- package/esm2020/orderlist/public_api.mjs +2 -0
- package/esm2020/orderlist/qius.solutions-parallel-ui-angular-orderlist.mjs +5 -0
- package/esm2020/organizationchart/organizationchart.mjs +319 -0
- package/esm2020/organizationchart/public_api.mjs +2 -0
- package/esm2020/organizationchart/qius.solutions-parallel-ui-angular-organizationchart.mjs +5 -0
- package/esm2020/overlay/overlay.mjs +520 -0
- package/esm2020/overlay/public_api.mjs +2 -0
- package/esm2020/overlay/qius.solutions-parallel-ui-angular-overlay.mjs +5 -0
- package/esm2020/overlaypanel/overlaypanel.mjs +410 -0
- package/esm2020/overlaypanel/public_api.mjs +2 -0
- package/esm2020/overlaypanel/qius.solutions-parallel-ui-angular-overlaypanel.mjs +5 -0
- package/esm2020/paginator/paginator.mjs +405 -0
- package/esm2020/paginator/public_api.mjs +2 -0
- package/esm2020/paginator/qius.solutions-parallel-ui-angular-paginator.mjs +5 -0
- package/esm2020/panel/panel.mjs +296 -0
- package/esm2020/panel/public_api.mjs +2 -0
- package/esm2020/panel/qius.solutions-parallel-ui-angular-panel.mjs +5 -0
- package/esm2020/panelmenu/panelmenu.mjs +518 -0
- package/esm2020/panelmenu/public_api.mjs +2 -0
- package/esm2020/panelmenu/qius.solutions-parallel-ui-angular-panelmenu.mjs +5 -0
- package/esm2020/password/password.mjs +782 -0
- package/esm2020/password/public_api.mjs +2 -0
- package/esm2020/password/qius.solutions-parallel-ui-angular-password.mjs +5 -0
- package/esm2020/picklist/picklist.mjs +1268 -0
- package/esm2020/picklist/public_api.mjs +2 -0
- package/esm2020/picklist/qius.solutions-parallel-ui-angular-picklist.mjs +5 -0
- package/esm2020/progressbar/progressbar.mjs +81 -0
- package/esm2020/progressbar/public_api.mjs +2 -0
- package/esm2020/progressbar/qius.solutions-parallel-ui-angular-progressbar.mjs +5 -0
- package/esm2020/progressspinner/progressspinner.mjs +55 -0
- package/esm2020/progressspinner/public_api.mjs +2 -0
- package/esm2020/progressspinner/qius.solutions-parallel-ui-angular-progressspinner.mjs +5 -0
- package/esm2020/public_api.mjs +2 -0
- package/esm2020/qius.solutions-parallel-ui-angular.mjs +5 -0
- package/esm2020/radiobutton/public_api.mjs +2 -0
- package/esm2020/radiobutton/qius.solutions-parallel-ui-angular-radiobutton.mjs +5 -0
- package/esm2020/radiobutton/radiobutton.mjs +254 -0
- package/esm2020/rating/public_api.mjs +2 -0
- package/esm2020/rating/qius.solutions-parallel-ui-angular-rating.mjs +5 -0
- package/esm2020/rating/rating.mjs +199 -0
- package/esm2020/ripple/public_api.mjs +2 -0
- package/esm2020/ripple/qius.solutions-parallel-ui-angular-ripple.mjs +5 -0
- package/esm2020/ripple/ripple.mjs +126 -0
- package/esm2020/scroller/public_api.mjs +2 -0
- package/esm2020/scroller/qius.solutions-parallel-ui-angular-scroller.mjs +5 -0
- package/esm2020/scroller/scroller.mjs +928 -0
- package/esm2020/scrollpanel/public_api.mjs +2 -0
- package/esm2020/scrollpanel/qius.solutions-parallel-ui-angular-scrollpanel.mjs +5 -0
- package/esm2020/scrollpanel/scrollpanel.mjs +272 -0
- package/esm2020/scrolltop/public_api.mjs +2 -0
- package/esm2020/scrolltop/qius.solutions-parallel-ui-angular-scrolltop.mjs +5 -0
- package/esm2020/scrolltop/scrolltop.mjs +221 -0
- package/esm2020/selectbutton/public_api.mjs +2 -0
- package/esm2020/selectbutton/qius.solutions-parallel-ui-angular-selectbutton.mjs +5 -0
- package/esm2020/selectbutton/selectbutton.mjs +209 -0
- package/esm2020/sidebar/public_api.mjs +2 -0
- package/esm2020/sidebar/qius.solutions-parallel-ui-angular-sidebar.mjs +5 -0
- package/esm2020/sidebar/sidebar.mjs +369 -0
- package/esm2020/skeleton/public_api.mjs +2 -0
- package/esm2020/skeleton/qius.solutions-parallel-ui-angular-skeleton.mjs +5 -0
- package/esm2020/skeleton/skeleton.mjs +65 -0
- package/esm2020/slidemenu/public_api.mjs +2 -0
- package/esm2020/slidemenu/qius.solutions-parallel-ui-angular-slidemenu.mjs +5 -0
- package/esm2020/slidemenu/slidemenu.mjs +616 -0
- package/esm2020/slider/public_api.mjs +2 -0
- package/esm2020/slider/qius.solutions-parallel-ui-angular-slider.mjs +5 -0
- package/esm2020/slider/slider.mjs +588 -0
- package/esm2020/speeddial/public_api.mjs +2 -0
- package/esm2020/speeddial/qius.solutions-parallel-ui-angular-speeddial.mjs +5 -0
- package/esm2020/speeddial/speeddial.mjs +402 -0
- package/esm2020/spinner/public_api.mjs +2 -0
- package/esm2020/spinner/qius.solutions-parallel-ui-angular-spinner.mjs +5 -0
- package/esm2020/spinner/spinner.mjs +407 -0
- package/esm2020/splitbutton/public_api.mjs +2 -0
- package/esm2020/splitbutton/qius.solutions-parallel-ui-angular-splitbutton.mjs +5 -0
- package/esm2020/splitbutton/splitbutton.mjs +141 -0
- package/esm2020/splitter/public_api.mjs +2 -0
- package/esm2020/splitter/qius.solutions-parallel-ui-angular-splitter.mjs +5 -0
- package/esm2020/splitter/splitter.mjs +355 -0
- package/esm2020/steps/public_api.mjs +2 -0
- package/esm2020/steps/qius.solutions-parallel-ui-angular-steps.mjs +5 -0
- package/esm2020/steps/steps.mjs +205 -0
- package/esm2020/styleclass/public_api.mjs +2 -0
- package/esm2020/styleclass/qius.solutions-parallel-ui-angular-styleclass.mjs +5 -0
- package/esm2020/styleclass/styleclass.mjs +220 -0
- package/esm2020/table/public_api.mjs +2 -0
- package/esm2020/table/qius.solutions-parallel-ui-angular-table.mjs +5 -0
- package/esm2020/table/table.mjs +5314 -0
- package/esm2020/tabmenu/public_api.mjs +2 -0
- package/esm2020/tabmenu/qius.solutions-parallel-ui-angular-tabmenu.mjs +5 -0
- package/esm2020/tabmenu/tabmenu.mjs +374 -0
- package/esm2020/tabview/public_api.mjs +2 -0
- package/esm2020/tabview/qius.solutions-parallel-ui-angular-tabview.mjs +5 -0
- package/esm2020/tabview/tabview.mjs +527 -0
- package/esm2020/tag/public_api.mjs +2 -0
- package/esm2020/tag/qius.solutions-parallel-ui-angular-tag.mjs +5 -0
- package/esm2020/tag/tag.mjs +86 -0
- package/esm2020/terminal/public_api.mjs +3 -0
- package/esm2020/terminal/qius.solutions-parallel-ui-angular-terminal.mjs +5 -0
- package/esm2020/terminal/terminal.mjs +112 -0
- package/esm2020/terminal/terminalservice.mjs +27 -0
- package/esm2020/tieredmenu/public_api.mjs +2 -0
- package/esm2020/tieredmenu/qius.solutions-parallel-ui-angular-tieredmenu.mjs +5 -0
- package/esm2020/tieredmenu/tieredmenu.mjs +663 -0
- package/esm2020/timeline/public_api.mjs +2 -0
- package/esm2020/timeline/qius.solutions-parallel-ui-angular-timeline.mjs +5 -0
- package/esm2020/timeline/timeline.mjs +131 -0
- package/esm2020/toast/public_api.mjs +2 -0
- package/esm2020/toast/qius.solutions-parallel-ui-angular-toast.mjs +5 -0
- package/esm2020/toast/toast.mjs +443 -0
- package/esm2020/togglebutton/public_api.mjs +2 -0
- package/esm2020/togglebutton/qius.solutions-parallel-ui-angular-togglebutton.mjs +5 -0
- package/esm2020/togglebutton/togglebutton.mjs +133 -0
- package/esm2020/toolbar/public_api.mjs +2 -0
- package/esm2020/toolbar/qius.solutions-parallel-ui-angular-toolbar.mjs +5 -0
- package/esm2020/toolbar/toolbar.mjs +83 -0
- package/esm2020/tooltip/public_api.mjs +2 -0
- package/esm2020/tooltip/qius.solutions-parallel-ui-angular-tooltip.mjs +5 -0
- package/esm2020/tooltip/tooltip.mjs +546 -0
- package/esm2020/tree/public_api.mjs +2 -0
- package/esm2020/tree/qius.solutions-parallel-ui-angular-tree.mjs +5 -0
- package/esm2020/tree/tree.mjs +1584 -0
- package/esm2020/treeselect/public_api.mjs +2 -0
- package/esm2020/treeselect/qius.solutions-parallel-ui-angular-treeselect.mjs +5 -0
- package/esm2020/treeselect/treeselect.mjs +778 -0
- package/esm2020/treetable/public_api.mjs +2 -0
- package/esm2020/treetable/qius.solutions-parallel-ui-angular-treetable.mjs +5 -0
- package/esm2020/treetable/treetable.mjs +3217 -0
- package/esm2020/tristatecheckbox/public_api.mjs +2 -0
- package/esm2020/tristatecheckbox/qius.solutions-parallel-ui-angular-tristatecheckbox.mjs +5 -0
- package/esm2020/tristatecheckbox/tristatecheckbox.mjs +223 -0
- package/esm2020/utils/objectutils.mjs +198 -0
- package/esm2020/utils/public_api.mjs +5 -0
- package/esm2020/utils/qius.solutions-parallel-ui-angular-utils.mjs +5 -0
- package/esm2020/utils/uniquecomponentid.mjs +7 -0
- package/esm2020/utils/zindexutils.mjs +35 -0
- package/esm2020/virtualscroller/public_api.mjs +2 -0
- package/esm2020/virtualscroller/qius.solutions-parallel-ui-angular-virtualscroller.mjs +5 -0
- package/esm2020/virtualscroller/virtualscroller.mjs +153 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-accordion.mjs +405 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-accordion.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-animate.mjs +86 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-animate.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-api.mjs +817 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-api.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-autocomplete.mjs +1154 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-autocomplete.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-autofocus.mjs +58 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-autofocus.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-avatar.mjs +82 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-avatar.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-avatargroup.mjs +47 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-avatargroup.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-badge.mjs +191 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-badge.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-baseicon.mjs +48 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-baseicon.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-blockui.mjs +149 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-blockui.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-breadcrumb.mjs +303 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-breadcrumb.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-button.mjs +371 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-button.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-calendar.mjs +3133 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-calendar.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-card.mjs +133 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-card.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-carousel.mjs +706 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-carousel.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-cascadeselect.mjs +776 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-cascadeselect.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-chart.mjs +151 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-chart.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-checkbox.mjs +254 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-checkbox.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-chip.mjs +120 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-chip.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-chips.mjs +384 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-chips.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-colorpicker.mjs +694 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-colorpicker.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-confirmdialog.mjs +615 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-confirmdialog.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-confirmpopup.mjs +403 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-confirmpopup.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-contextmenu.mjs +702 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-contextmenu.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-dataview.mjs +519 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-dataview.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-defer.mjs +101 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-defer.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-dialog.mjs +842 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-dialog.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-divider.mjs +76 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-divider.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-dock.mjs +217 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-dock.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-dom.mjs +632 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-dom.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-dragdrop.mjs +258 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-dragdrop.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-dropdown.mjs +1379 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-dropdown.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-dynamicdialog.mjs +698 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-dynamicdialog.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-editor.mjs +317 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-editor.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-fieldset.mjs +221 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-fieldset.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-fileupload.mjs +764 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-fileupload.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-focustrap.mjs +60 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-focustrap.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-galleria.mjs +1199 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-galleria.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledoubledown.mjs +42 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledoubledown.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledoubleleft.mjs +42 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledoubleleft.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledoubleright.mjs +42 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledoubleright.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledoubleup.mjs +42 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledoubleup.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledown.mjs +38 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-angledown.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-angleleft.mjs +38 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-angleleft.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-angleright.mjs +38 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-angleright.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-angleup.mjs +38 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-angleup.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowdown.mjs +56 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowdown.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowdownleft.mjs +38 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowdownleft.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowdownright.mjs +38 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowdownright.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowleft.mjs +56 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowleft.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowright.mjs +42 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowright.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowup.mjs +56 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-arrowup.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-ban.mjs +52 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-ban.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-bars.mjs +42 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-bars.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-calendar.mjs +38 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-calendar.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-caretleft.mjs +38 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-caretleft.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-caretright.mjs +38 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-caretright.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-check.mjs +38 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-check.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-chevrondown.mjs +38 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-chevrondown.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-chevronleft.mjs +38 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-chevronleft.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-chevronright.mjs +38 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-chevronright.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-chevronup.mjs +38 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-chevronup.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-exclamationtriangle.mjs +68 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-exclamationtriangle.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-eye.mjs +42 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-eye.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-eyeslash.mjs +56 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-eyeslash.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-filter.mjs +52 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-filter.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-filterslash.mjs +56 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-filterslash.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-home.mjs +56 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-home.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-infocircle.mjs +56 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-infocircle.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-minus.mjs +39 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-minus.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-pencil.mjs +52 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-pencil.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-plus.mjs +52 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-plus.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-refresh.mjs +56 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-refresh.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-search.mjs +56 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-search.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-searchminus.mjs +56 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-searchminus.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-searchplus.mjs +56 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-searchplus.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-sortalt.mjs +64 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-sortalt.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-sortamountdown.mjs +92 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-sortamountdown.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-sortamountupalt.mjs +92 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-sortamountupalt.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-spinner.mjs +52 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-spinner.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-star.mjs +52 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-star.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-starfill.mjs +52 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-starfill.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-thlarge.mjs +56 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-thlarge.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-times.mjs +38 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-times.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-timescircle.mjs +56 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-timescircle.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-trash.mjs +56 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-trash.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-undo.mjs +56 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-undo.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-upload.mjs +56 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-upload.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-windowmaximize.mjs +56 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-windowmaximize.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-windowminimize.mjs +56 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-icons-windowminimize.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-image.mjs +330 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-image.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-inplace.mjs +175 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-inplace.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-inputmask.mjs +706 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-inputmask.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-inputnumber.mjs +1198 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-inputnumber.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-inputswitch.mjs +167 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-inputswitch.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-inputtext.mjs +64 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-inputtext.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-inputtextarea.mjs +126 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-inputtextarea.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-keyfilter.mjs +223 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-keyfilter.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-knob.mjs +292 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-knob.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-listbox.mjs +807 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-listbox.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-megamenu.mjs +473 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-megamenu.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-menu.mjs +559 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-menu.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-menubar.mjs +526 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-menubar.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-message.mjs +110 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-message.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-messages.mjs +283 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-messages.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-multiselect.mjs +1421 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-multiselect.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-orderlist.mjs +630 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-orderlist.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-organizationchart.mjs +327 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-organizationchart.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-overlay.mjs +554 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-overlay.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-overlaypanel.mjs +419 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-overlaypanel.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-paginator.mjs +411 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-paginator.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-panel.mjs +303 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-panel.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-panelmenu.mjs +525 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-panelmenu.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-password.mjs +793 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-password.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-picklist.mjs +1277 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-picklist.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-progressbar.mjs +88 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-progressbar.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-progressspinner.mjs +62 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-progressspinner.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-radiobutton.mjs +261 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-radiobutton.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-rating.mjs +206 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-rating.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-ripple.mjs +135 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-ripple.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-scroller.mjs +938 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-scroller.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-scrollpanel.mjs +281 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-scrollpanel.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-scrolltop.mjs +230 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-scrolltop.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-selectbutton.mjs +216 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-selectbutton.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-sidebar.mjs +378 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-sidebar.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-skeleton.mjs +72 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-skeleton.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-slidemenu.mjs +627 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-slidemenu.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-slider.mjs +597 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-slider.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-speeddial.mjs +408 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-speeddial.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-spinner.mjs +414 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-spinner.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-splitbutton.mjs +148 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-splitbutton.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-splitter.mjs +364 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-splitter.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-steps.mjs +212 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-steps.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-styleclass.mjs +227 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-styleclass.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-table.mjs +5329 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-table.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-tabmenu.mjs +385 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-tabmenu.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-tabview.mjs +539 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-tabview.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-tag.mjs +92 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-tag.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-terminal.mjs +143 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-terminal.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-tieredmenu.mjs +674 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-tieredmenu.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-timeline.mjs +138 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-timeline.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-toast.mjs +451 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-toast.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-togglebutton.mjs +140 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-togglebutton.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-toolbar.mjs +90 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-toolbar.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-tooltip.mjs +556 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-tooltip.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-tree.mjs +1596 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-tree.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-treeselect.mjs +791 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-treeselect.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-treetable.mjs +3228 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-treetable.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-tristatecheckbox.mjs +230 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-tristatecheckbox.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-utils.mjs +246 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-utils.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-virtualscroller.mjs +157 -0
- package/fesm2015/qius.solutions-parallel-ui-angular-virtualscroller.mjs.map +1 -0
- package/fesm2015/qius.solutions-parallel-ui-angular.mjs +6 -0
- package/fesm2015/qius.solutions-parallel-ui-angular.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-accordion.mjs +403 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-accordion.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-animate.mjs +86 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-animate.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-api.mjs +817 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-api.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-autocomplete.mjs +1151 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-autocomplete.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-autofocus.mjs +58 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-autofocus.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-avatar.mjs +82 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-avatar.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-avatargroup.mjs +47 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-avatargroup.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-badge.mjs +189 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-badge.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-baseicon.mjs +48 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-baseicon.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-blockui.mjs +147 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-blockui.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-breadcrumb.mjs +303 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-breadcrumb.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-button.mjs +369 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-button.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-calendar.mjs +3130 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-calendar.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-card.mjs +133 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-card.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-carousel.mjs +703 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-carousel.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-cascadeselect.mjs +773 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-cascadeselect.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-chart.mjs +149 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-chart.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-checkbox.mjs +254 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-checkbox.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-chip.mjs +120 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-chip.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-chips.mjs +382 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-chips.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-colorpicker.mjs +692 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-colorpicker.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-confirmdialog.mjs +613 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-confirmdialog.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-confirmpopup.mjs +401 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-confirmpopup.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-contextmenu.mjs +698 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-contextmenu.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-dataview.mjs +519 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-dataview.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-defer.mjs +99 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-defer.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-dialog.mjs +840 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-dialog.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-divider.mjs +76 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-divider.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-dock.mjs +217 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-dock.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-dom.mjs +632 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-dom.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-dragdrop.mjs +258 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-dragdrop.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-dropdown.mjs +1379 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-dropdown.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-dynamicdialog.mjs +693 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-dynamicdialog.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-editor.mjs +316 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-editor.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-fieldset.mjs +221 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-fieldset.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-fileupload.mjs +761 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-fileupload.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-focustrap.mjs +59 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-focustrap.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-galleria.mjs +1194 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-galleria.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledoubledown.mjs +42 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledoubledown.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledoubleleft.mjs +42 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledoubleleft.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledoubleright.mjs +42 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledoubleright.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledoubleup.mjs +42 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledoubleup.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledown.mjs +38 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-angledown.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-angleleft.mjs +38 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-angleleft.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-angleright.mjs +38 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-angleright.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-angleup.mjs +38 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-angleup.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowdown.mjs +56 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowdown.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowdownleft.mjs +38 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowdownleft.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowdownright.mjs +38 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowdownright.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowleft.mjs +56 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowleft.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowright.mjs +42 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowright.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowup.mjs +56 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-arrowup.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-ban.mjs +52 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-ban.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-bars.mjs +42 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-bars.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-calendar.mjs +38 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-calendar.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-caretleft.mjs +38 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-caretleft.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-caretright.mjs +38 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-caretright.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-check.mjs +38 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-check.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-chevrondown.mjs +38 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-chevrondown.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-chevronleft.mjs +38 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-chevronleft.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-chevronright.mjs +38 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-chevronright.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-chevronup.mjs +38 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-chevronup.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-exclamationtriangle.mjs +68 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-exclamationtriangle.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-eye.mjs +42 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-eye.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-eyeslash.mjs +56 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-eyeslash.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-filter.mjs +52 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-filter.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-filterslash.mjs +56 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-filterslash.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-home.mjs +56 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-home.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-infocircle.mjs +56 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-infocircle.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-minus.mjs +39 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-minus.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-pencil.mjs +52 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-pencil.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-plus.mjs +52 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-plus.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-refresh.mjs +56 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-refresh.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-search.mjs +56 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-search.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-searchminus.mjs +56 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-searchminus.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-searchplus.mjs +56 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-searchplus.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-sortalt.mjs +64 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-sortalt.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-sortamountdown.mjs +92 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-sortamountdown.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-sortamountupalt.mjs +92 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-sortamountupalt.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-spinner.mjs +52 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-spinner.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-star.mjs +52 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-star.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-starfill.mjs +52 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-starfill.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-thlarge.mjs +56 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-thlarge.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-times.mjs +38 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-times.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-timescircle.mjs +56 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-timescircle.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-trash.mjs +56 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-trash.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-undo.mjs +56 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-undo.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-upload.mjs +56 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-upload.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-windowmaximize.mjs +56 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-windowmaximize.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-windowminimize.mjs +56 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-icons-windowminimize.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-image.mjs +328 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-image.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-inplace.mjs +175 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-inplace.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-inputmask.mjs +704 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-inputmask.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-inputnumber.mjs +1196 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-inputnumber.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-inputswitch.mjs +167 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-inputswitch.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-inputtext.mjs +62 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-inputtext.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-inputtextarea.mjs +124 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-inputtextarea.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-keyfilter.mjs +221 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-keyfilter.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-knob.mjs +290 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-knob.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-listbox.mjs +807 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-listbox.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-megamenu.mjs +471 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-megamenu.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-menu.mjs +555 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-menu.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-menubar.mjs +522 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-menubar.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-message.mjs +110 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-message.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-messages.mjs +279 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-messages.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-multiselect.mjs +1418 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-multiselect.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-orderlist.mjs +628 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-orderlist.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-organizationchart.mjs +325 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-organizationchart.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-overlay.mjs +527 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-overlay.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-overlaypanel.mjs +417 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-overlaypanel.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-paginator.mjs +411 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-paginator.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-panel.mjs +303 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-panel.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-panelmenu.mjs +525 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-panelmenu.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-password.mjs +789 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-password.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-picklist.mjs +1275 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-picklist.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-progressbar.mjs +88 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-progressbar.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-progressspinner.mjs +62 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-progressspinner.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-radiobutton.mjs +261 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-radiobutton.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-rating.mjs +206 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-rating.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-ripple.mjs +133 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-ripple.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-scroller.mjs +935 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-scroller.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-scrollpanel.mjs +279 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-scrollpanel.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-scrolltop.mjs +228 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-scrolltop.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-selectbutton.mjs +216 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-selectbutton.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-sidebar.mjs +376 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-sidebar.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-skeleton.mjs +72 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-skeleton.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-slidemenu.mjs +623 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-slidemenu.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-slider.mjs +595 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-slider.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-speeddial.mjs +409 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-speeddial.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-spinner.mjs +414 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-spinner.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-splitbutton.mjs +148 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-splitbutton.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-splitter.mjs +362 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-splitter.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-steps.mjs +212 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-steps.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-styleclass.mjs +227 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-styleclass.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-table.mjs +5321 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-table.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-tabmenu.mjs +381 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-tabmenu.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-tabview.mjs +534 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-tabview.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-tag.mjs +92 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-tag.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-terminal.mjs +143 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-terminal.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-tieredmenu.mjs +670 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-tieredmenu.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-timeline.mjs +138 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-timeline.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-toast.mjs +449 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-toast.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-togglebutton.mjs +140 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-togglebutton.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-toolbar.mjs +90 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-toolbar.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-tooltip.mjs +553 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-tooltip.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-tree.mjs +1591 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-tree.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-treeselect.mjs +785 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-treeselect.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-treetable.mjs +3224 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-treetable.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-tristatecheckbox.mjs +230 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-tristatecheckbox.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-utils.mjs +246 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-utils.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-virtualscroller.mjs +160 -0
- package/fesm2020/qius.solutions-parallel-ui-angular-virtualscroller.mjs.map +1 -0
- package/fesm2020/qius.solutions-parallel-ui-angular.mjs +6 -0
- package/fesm2020/qius.solutions-parallel-ui-angular.mjs.map +1 -0
- package/fieldset/fieldset.d.ts +41 -0
- package/fieldset/index.d.ts +5 -0
- package/fieldset/public_api.d.ts +1 -0
- package/fileupload/fileupload.d.ts +139 -0
- package/fileupload/index.d.ts +5 -0
- package/fileupload/public_api.d.ts +1 -0
- package/focustrap/focustrap.d.ts +16 -0
- package/focustrap/index.d.ts +5 -0
- package/focustrap/public_api.d.ts +1 -0
- package/galleria/galleria.d.ts +218 -0
- package/galleria/index.d.ts +5 -0
- package/galleria/public_api.d.ts +1 -0
- package/icons/angledoubledown/angledoubledown.d.ts +6 -0
- package/icons/angledoubledown/index.d.ts +5 -0
- package/icons/angledoubledown/public_api.d.ts +1 -0
- package/icons/angledoubleleft/angledoubleleft.d.ts +6 -0
- package/icons/angledoubleleft/index.d.ts +5 -0
- package/icons/angledoubleleft/public_api.d.ts +1 -0
- package/icons/angledoubleright/angledoubleright.d.ts +6 -0
- package/icons/angledoubleright/index.d.ts +5 -0
- package/icons/angledoubleright/public_api.d.ts +1 -0
- package/icons/angledoubleup/angledoubleup.d.ts +6 -0
- package/icons/angledoubleup/index.d.ts +5 -0
- package/icons/angledoubleup/public_api.d.ts +1 -0
- package/icons/angledown/angledown.d.ts +6 -0
- package/icons/angledown/index.d.ts +5 -0
- package/icons/angledown/public_api.d.ts +1 -0
- package/icons/angleleft/angleleft.d.ts +6 -0
- package/icons/angleleft/index.d.ts +5 -0
- package/icons/angleleft/public_api.d.ts +1 -0
- package/icons/angleright/angleright.d.ts +6 -0
- package/icons/angleright/index.d.ts +5 -0
- package/icons/angleright/public_api.d.ts +1 -0
- package/icons/angleup/angleup.d.ts +6 -0
- package/icons/angleup/index.d.ts +5 -0
- package/icons/angleup/public_api.d.ts +1 -0
- package/icons/arrowdown/arrowdown.d.ts +6 -0
- package/icons/arrowdown/index.d.ts +5 -0
- package/icons/arrowdown/public_api.d.ts +1 -0
- package/icons/arrowdownleft/arrowdownleft.d.ts +6 -0
- package/icons/arrowdownleft/index.d.ts +5 -0
- package/icons/arrowdownleft/public_api.d.ts +1 -0
- package/icons/arrowdownright/arrowdownright.d.ts +6 -0
- package/icons/arrowdownright/index.d.ts +5 -0
- package/icons/arrowdownright/public_api.d.ts +1 -0
- package/icons/arrowleft/arrowleft.d.ts +6 -0
- package/icons/arrowleft/index.d.ts +5 -0
- package/icons/arrowleft/public_api.d.ts +1 -0
- package/icons/arrowright/arrowright.d.ts +6 -0
- package/icons/arrowright/index.d.ts +5 -0
- package/icons/arrowright/public_api.d.ts +1 -0
- package/icons/arrowup/arrowup.d.ts +6 -0
- package/icons/arrowup/index.d.ts +5 -0
- package/icons/arrowup/public_api.d.ts +1 -0
- package/icons/ban/ban.d.ts +6 -0
- package/icons/ban/index.d.ts +5 -0
- package/icons/ban/public_api.d.ts +1 -0
- package/icons/bars/bars.d.ts +6 -0
- package/icons/bars/index.d.ts +5 -0
- package/icons/bars/public_api.d.ts +1 -0
- package/icons/calendar/calendar.d.ts +6 -0
- package/icons/calendar/index.d.ts +5 -0
- package/icons/calendar/public_api.d.ts +1 -0
- package/icons/caretleft/caretleft.d.ts +6 -0
- package/icons/caretleft/index.d.ts +5 -0
- package/icons/caretleft/public_api.d.ts +1 -0
- package/icons/caretright/caretright.d.ts +6 -0
- package/icons/caretright/index.d.ts +5 -0
- package/icons/caretright/public_api.d.ts +1 -0
- package/icons/check/check.d.ts +6 -0
- package/icons/check/index.d.ts +5 -0
- package/icons/check/public_api.d.ts +1 -0
- package/icons/chevrondown/chevrondown.d.ts +6 -0
- package/icons/chevrondown/index.d.ts +5 -0
- package/icons/chevrondown/public_api.d.ts +1 -0
- package/icons/chevronleft/chevronleft.d.ts +6 -0
- package/icons/chevronleft/index.d.ts +5 -0
- package/icons/chevronleft/public_api.d.ts +1 -0
- package/icons/chevronright/chevronright.d.ts +6 -0
- package/icons/chevronright/index.d.ts +5 -0
- package/icons/chevronright/public_api.d.ts +1 -0
- package/icons/chevronup/chevronup.d.ts +6 -0
- package/icons/chevronup/index.d.ts +5 -0
- package/icons/chevronup/public_api.d.ts +1 -0
- package/icons/exclamationtriangle/exclamationtriangle.d.ts +6 -0
- package/icons/exclamationtriangle/index.d.ts +5 -0
- package/icons/exclamationtriangle/public_api.d.ts +1 -0
- package/icons/eye/eye.d.ts +6 -0
- package/icons/eye/index.d.ts +5 -0
- package/icons/eye/public_api.d.ts +1 -0
- package/icons/eyeslash/eyeslash.d.ts +6 -0
- package/icons/eyeslash/index.d.ts +5 -0
- package/icons/eyeslash/public_api.d.ts +1 -0
- package/icons/filter/filter.d.ts +6 -0
- package/icons/filter/index.d.ts +5 -0
- package/icons/filter/public_api.d.ts +1 -0
- package/icons/filterslash/filterslash.d.ts +6 -0
- package/icons/filterslash/index.d.ts +5 -0
- package/icons/filterslash/public_api.d.ts +1 -0
- package/icons/home/home.d.ts +6 -0
- package/icons/home/index.d.ts +5 -0
- package/icons/home/public_api.d.ts +1 -0
- package/icons/infocircle/index.d.ts +5 -0
- package/icons/infocircle/infocircle.d.ts +6 -0
- package/icons/infocircle/public_api.d.ts +1 -0
- package/icons/minus/index.d.ts +5 -0
- package/icons/minus/minus.d.ts +6 -0
- package/icons/minus/public_api.d.ts +1 -0
- package/icons/pencil/index.d.ts +5 -0
- package/icons/pencil/pencil.d.ts +6 -0
- package/icons/pencil/public_api.d.ts +1 -0
- package/icons/plus/index.d.ts +5 -0
- package/icons/plus/plus.d.ts +6 -0
- package/icons/plus/public_api.d.ts +1 -0
- package/icons/refresh/index.d.ts +5 -0
- package/icons/refresh/public_api.d.ts +1 -0
- package/icons/refresh/refresh.d.ts +6 -0
- package/icons/search/index.d.ts +5 -0
- package/icons/search/public_api.d.ts +1 -0
- package/icons/search/search.d.ts +6 -0
- package/icons/searchminus/index.d.ts +5 -0
- package/icons/searchminus/public_api.d.ts +1 -0
- package/icons/searchminus/searchminus.d.ts +6 -0
- package/icons/searchplus/index.d.ts +5 -0
- package/icons/searchplus/public_api.d.ts +1 -0
- package/icons/searchplus/searchplus.d.ts +6 -0
- package/icons/sortalt/index.d.ts +5 -0
- package/icons/sortalt/public_api.d.ts +1 -0
- package/icons/sortalt/sortalt.d.ts +6 -0
- package/icons/sortamountdown/index.d.ts +5 -0
- package/icons/sortamountdown/public_api.d.ts +1 -0
- package/icons/sortamountdown/sortamountdown.d.ts +6 -0
- package/icons/sortamountupalt/index.d.ts +5 -0
- package/icons/sortamountupalt/public_api.d.ts +1 -0
- package/icons/sortamountupalt/sortamountupalt.d.ts +6 -0
- package/icons/spinner/index.d.ts +5 -0
- package/icons/spinner/public_api.d.ts +1 -0
- package/icons/spinner/spinner.d.ts +6 -0
- package/icons/star/index.d.ts +5 -0
- package/icons/star/public_api.d.ts +1 -0
- package/icons/star/star.d.ts +6 -0
- package/icons/starfill/index.d.ts +5 -0
- package/icons/starfill/public_api.d.ts +1 -0
- package/icons/starfill/starfill.d.ts +6 -0
- package/icons/thlarge/index.d.ts +5 -0
- package/icons/thlarge/public_api.d.ts +1 -0
- package/icons/thlarge/thlarge.d.ts +6 -0
- package/icons/times/index.d.ts +5 -0
- package/icons/times/public_api.d.ts +1 -0
- package/icons/times/times.d.ts +6 -0
- package/icons/timescircle/index.d.ts +5 -0
- package/icons/timescircle/public_api.d.ts +1 -0
- package/icons/timescircle/timescircle.d.ts +6 -0
- package/icons/trash/index.d.ts +5 -0
- package/icons/trash/public_api.d.ts +1 -0
- package/icons/trash/trash.d.ts +6 -0
- package/icons/undo/index.d.ts +5 -0
- package/icons/undo/public_api.d.ts +1 -0
- package/icons/undo/undo.d.ts +6 -0
- package/icons/upload/index.d.ts +5 -0
- package/icons/upload/public_api.d.ts +1 -0
- package/icons/upload/upload.d.ts +6 -0
- package/icons/windowmaximize/index.d.ts +5 -0
- package/icons/windowmaximize/public_api.d.ts +1 -0
- package/icons/windowmaximize/windowmaximize.d.ts +6 -0
- package/icons/windowminimize/index.d.ts +5 -0
- package/icons/windowminimize/public_api.d.ts +1 -0
- package/icons/windowminimize/windowminimize.d.ts +6 -0
- package/image/image.d.ts +81 -0
- package/image/index.d.ts +5 -0
- package/image/public_api.d.ts +1 -0
- package/index.d.ts +5 -0
- package/inplace/index.d.ts +5 -0
- package/inplace/inplace.d.ts +45 -0
- package/inplace/public_api.d.ts +1 -0
- package/inputmask/index.d.ts +5 -0
- package/inputmask/inputmask.d.ts +108 -0
- package/inputmask/public_api.d.ts +1 -0
- package/inputnumber/index.d.ts +5 -0
- package/inputnumber/inputnumber.d.ts +177 -0
- package/inputnumber/public_api.d.ts +1 -0
- package/inputswitch/index.d.ts +5 -0
- package/inputswitch/inputswitch.d.ts +47 -0
- package/inputswitch/public_api.d.ts +1 -0
- package/inputtext/index.d.ts +5 -0
- package/inputtext/inputtext.d.ts +22 -0
- package/inputtext/public_api.d.ts +1 -0
- package/inputtextarea/index.d.ts +5 -0
- package/inputtextarea/inputtextarea.d.ts +34 -0
- package/inputtextarea/public_api.d.ts +1 -0
- package/keyfilter/index.d.ts +5 -0
- package/keyfilter/keyfilter.d.ts +39 -0
- package/keyfilter/public_api.d.ts +1 -0
- package/knob/index.d.ts +5 -0
- package/knob/knob.d.ts +81 -0
- package/knob/public_api.d.ts +1 -0
- package/listbox/index.d.ts +5 -0
- package/listbox/listbox.d.ts +125 -0
- package/listbox/public_api.d.ts +1 -0
- package/megamenu/index.d.ts +5 -0
- package/megamenu/megamenu.d.ts +42 -0
- package/megamenu/public_api.d.ts +1 -0
- package/menu/index.d.ts +5 -0
- package/menu/menu.d.ts +77 -0
- package/menu/public_api.d.ts +1 -0
- package/menubar/index.d.ts +5 -0
- package/menubar/menubar.d.ts +97 -0
- package/menubar/public_api.d.ts +1 -0
- package/message/index.d.ts +5 -0
- package/message/message.d.ts +21 -0
- package/message/public_api.d.ts +1 -0
- package/messages/index.d.ts +5 -0
- package/messages/messages.d.ts +49 -0
- package/messages/public_api.d.ts +1 -0
- package/multiselect/index.d.ts +5 -0
- package/multiselect/multiselect.d.ts +232 -0
- package/multiselect/public_api.d.ts +1 -0
- package/orderlist/index.d.ts +5 -0
- package/orderlist/orderlist.d.ts +105 -0
- package/orderlist/public_api.d.ts +1 -0
- package/organizationchart/index.d.ts +5 -0
- package/organizationchart/organizationchart.d.ts +63 -0
- package/organizationchart/public_api.d.ts +1 -0
- package/overlay/index.d.ts +5 -0
- package/overlay/overlay.d.ts +118 -0
- package/overlay/public_api.d.ts +1 -0
- package/overlaypanel/index.d.ts +5 -0
- package/overlaypanel/overlaypanel.d.ts +80 -0
- package/overlaypanel/public_api.d.ts +1 -0
- package/package.json +1267 -0
- package/paginator/index.d.ts +5 -0
- package/paginator/paginator.d.ts +79 -0
- package/paginator/public_api.d.ts +1 -0
- package/panel/index.d.ts +5 -0
- package/panel/panel.d.ts +52 -0
- package/panel/public_api.d.ts +1 -0
- package/panelmenu/index.d.ts +5 -0
- package/panelmenu/panelmenu.d.ts +66 -0
- package/panelmenu/public_api.d.ts +1 -0
- package/password/index.d.ts +5 -0
- package/password/password.d.ts +168 -0
- package/password/public_api.d.ts +1 -0
- package/picklist/index.d.ts +5 -0
- package/picklist/picklist.d.ts +183 -0
- package/picklist/public_api.d.ts +1 -0
- package/progressbar/index.d.ts +5 -0
- package/progressbar/progressbar.d.ts +18 -0
- package/progressbar/public_api.d.ts +1 -0
- package/progressspinner/index.d.ts +5 -0
- package/progressspinner/progressspinner.d.ts +16 -0
- package/progressspinner/public_api.d.ts +1 -0
- package/public_api.d.ts +2 -0
- package/radiobutton/index.d.ts +5 -0
- package/radiobutton/public_api.d.ts +1 -0
- package/radiobutton/radiobutton.d.ts +62 -0
- package/rating/index.d.ts +5 -0
- package/rating/public_api.d.ts +1 -0
- package/rating/rating.d.ts +52 -0
- package/resources/components/accordion/accordion.css +33 -0
- package/resources/components/autocomplete/autocomplete.css +100 -0
- package/resources/components/avatar/avatar.css +26 -0
- package/resources/components/avatargroup/avatargroup.css +8 -0
- package/resources/components/badge/badge.css +32 -0
- package/resources/components/blockui/blockui.css +24 -0
- package/resources/components/breadcrumb/breadcrumb.css +25 -0
- package/resources/components/button/button.css +69 -0
- package/resources/components/calendar/calendar.css +171 -0
- package/resources/components/card/card.css +3 -0
- package/resources/components/carousel/carousel.css +69 -0
- package/resources/components/cascadeselect/cascadeselect.css +96 -0
- package/resources/components/checkbox/checkbox.css +28 -0
- package/resources/components/chip/chip.css +24 -0
- package/resources/components/chips/chips.css +66 -0
- package/resources/components/colorpicker/colorpicker-images.css +7 -0
- package/resources/components/colorpicker/colorpicker.css +81 -0
- package/resources/components/colorpicker/images/color.png +0 -0
- package/resources/components/colorpicker/images/hue.png +0 -0
- package/resources/components/common/common.css +167 -0
- package/resources/components/confirmpopup/confirmpopup.css +49 -0
- package/resources/components/contextmenu/contextmenu.css +46 -0
- package/resources/components/dataview/dataview.css +11 -0
- package/resources/components/dialog/dialog.css +138 -0
- package/resources/components/divider/divider.css +84 -0
- package/resources/components/dock/dock.css +105 -0
- package/resources/components/dropdown/dropdown.css +78 -0
- package/resources/components/editor/editor.css +4 -0
- package/resources/components/fieldset/fieldset.css +25 -0
- package/resources/components/fileupload/fileupload.css +45 -0
- package/resources/components/galleria/galleria.css +274 -0
- package/resources/components/image/image.css +64 -0
- package/resources/components/inplace/inplace.css +17 -0
- package/resources/components/inputmask/inputmask.css +10 -0
- package/resources/components/inputnumber/inputnumber.css +113 -0
- package/resources/components/inputswitch/inputswitch.css +20 -0
- package/resources/components/inputtext/inputtext.css +105 -0
- package/resources/components/inputtextarea/inputtextarea.css +8 -0
- package/resources/components/knob/knob.css +18 -0
- package/resources/components/listbox/listbox.css +38 -0
- package/resources/components/megamenu/megamenu.css +107 -0
- package/resources/components/menu/menu.css +28 -0
- package/resources/components/menubar/menubar.css +75 -0
- package/resources/components/message/message.css +15 -0
- package/resources/components/messages/messages.css +20 -0
- package/resources/components/multiselect/multiselect.css +108 -0
- package/resources/components/orderlist/orderlist.css +76 -0
- package/resources/components/organizationchart/organizationchart.css +60 -0
- package/resources/components/overlay/overlay.css +78 -0
- package/resources/components/overlaypanel/overlaypanel.css +58 -0
- package/resources/components/paginator/paginator.css +35 -0
- package/resources/components/panel/panel.css +27 -0
- package/resources/components/panelmenu/panelmenu.css +40 -0
- package/resources/components/password/images/password-meter.png +0 -0
- package/resources/components/password/password.css +44 -0
- package/resources/components/picklist/picklist.css +58 -0
- package/resources/components/progressbar/progressbar.css +96 -0
- package/resources/components/progressspinner/progressspinner.css +72 -0
- package/resources/components/radiobutton/radiobutton.css +36 -0
- package/resources/components/rating/rating.css +11 -0
- package/resources/components/ripple/ripple.css +27 -0
- package/resources/components/scroller/scroller.css +56 -0
- package/resources/components/scrollpanel/scrollpanel.css +48 -0
- package/resources/components/scrolltop/scrolltop.css +16 -0
- package/resources/components/sidebar/sidebar.css +104 -0
- package/resources/components/skeleton/skeleton.css +33 -0
- package/resources/components/slidemenu/slidemenu.css +99 -0
- package/resources/components/slider/slider.css +39 -0
- package/resources/components/speeddial/speeddial.css +110 -0
- package/resources/components/spinner/spinner.css +61 -0
- package/resources/components/splitbutton/splitbutton.css +31 -0
- package/resources/components/splitter/splitter.css +62 -0
- package/resources/components/steps/steps.css +47 -0
- package/resources/components/table/table.css +242 -0
- package/resources/components/tabmenu/tabmenu.css +78 -0
- package/resources/components/tabview/tabview.css +73 -0
- package/resources/components/tag/tag.css +15 -0
- package/resources/components/terminal/terminal.css +22 -0
- package/resources/components/tieredmenu/tieredmenu.css +49 -0
- package/resources/components/timeline/timeline.css +110 -0
- package/resources/components/toast/toast.css +68 -0
- package/resources/components/toolbar/toolbar.css +17 -0
- package/resources/components/tooltip/tooltip.css +61 -0
- package/resources/components/tree/images/line.gif +0 -0
- package/resources/components/tree/tree.css +156 -0
- package/resources/components/treeselect/treeselect.css +95 -0
- package/resources/components/treetable/treetable.css +203 -0
- package/resources/images/color.png +0 -0
- package/resources/images/hue.png +0 -0
- package/resources/images/line.gif +0 -0
- package/resources/images/password-meter.png +0 -0
- package/resources/parallel-ui-angular.css +588 -0
- package/resources/parallel-ui-angular.min.css +1 -0
- package/resources/themes/arya-blue/theme.css +7757 -0
- package/resources/themes/arya-green/theme.css +7757 -0
- package/resources/themes/arya-orange/theme.css +7757 -0
- package/resources/themes/arya-purple/theme.css +7757 -0
- package/resources/themes/bootstrap4-dark-blue/theme.css +7763 -0
- package/resources/themes/bootstrap4-dark-purple/theme.css +7763 -0
- package/resources/themes/bootstrap4-light-blue/theme.css +7763 -0
- package/resources/themes/bootstrap4-light-purple/theme.css +7763 -0
- package/resources/themes/fluent-light/theme.css +7905 -0
- package/resources/themes/lara-dark-blue/theme.css +7737 -0
- package/resources/themes/lara-dark-indigo/theme.css +7737 -0
- package/resources/themes/lara-dark-purple/theme.css +7737 -0
- package/resources/themes/lara-dark-teal/theme.css +7737 -0
- package/resources/themes/lara-light-blue/theme.css +7737 -0
- package/resources/themes/lara-light-indigo/theme.css +7737 -0
- package/resources/themes/lara-light-purple/theme.css +7737 -0
- package/resources/themes/lara-light-teal/theme.css +7737 -0
- package/resources/themes/luna-amber/theme.css +7686 -0
- package/resources/themes/luna-blue/theme.css +7686 -0
- package/resources/themes/luna-green/theme.css +7686 -0
- package/resources/themes/luna-pink/theme.css +7686 -0
- package/resources/themes/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff +0 -0
- package/resources/themes/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff2 +0 -0
- package/resources/themes/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff +0 -0
- package/resources/themes/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff2 +0 -0
- package/resources/themes/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff +0 -0
- package/resources/themes/md-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff2 +0 -0
- package/resources/themes/md-dark-deeppurple/theme.css +9765 -0
- package/resources/themes/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-500.woff +0 -0
- package/resources/themes/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-500.woff2 +0 -0
- package/resources/themes/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-700.woff +0 -0
- package/resources/themes/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-700.woff2 +0 -0
- package/resources/themes/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff +0 -0
- package/resources/themes/md-dark-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff2 +0 -0
- package/resources/themes/md-dark-indigo/theme.css +9765 -0
- package/resources/themes/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff +0 -0
- package/resources/themes/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff2 +0 -0
- package/resources/themes/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff +0 -0
- package/resources/themes/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff2 +0 -0
- package/resources/themes/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff +0 -0
- package/resources/themes/md-light-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff2 +0 -0
- package/resources/themes/md-light-deeppurple/theme.css +9765 -0
- package/resources/themes/md-light-indigo/fonts/roboto-v20-latin-ext_latin-500.woff +0 -0
- package/resources/themes/md-light-indigo/fonts/roboto-v20-latin-ext_latin-500.woff2 +0 -0
- package/resources/themes/md-light-indigo/fonts/roboto-v20-latin-ext_latin-700.woff +0 -0
- package/resources/themes/md-light-indigo/fonts/roboto-v20-latin-ext_latin-700.woff2 +0 -0
- package/resources/themes/md-light-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff +0 -0
- package/resources/themes/md-light-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff2 +0 -0
- package/resources/themes/md-light-indigo/theme.css +9765 -0
- package/resources/themes/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff +0 -0
- package/resources/themes/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff2 +0 -0
- package/resources/themes/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff +0 -0
- package/resources/themes/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff2 +0 -0
- package/resources/themes/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff +0 -0
- package/resources/themes/mdc-dark-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff2 +0 -0
- package/resources/themes/mdc-dark-deeppurple/theme.css +9765 -0
- package/resources/themes/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-500.woff +0 -0
- package/resources/themes/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-500.woff2 +0 -0
- package/resources/themes/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-700.woff +0 -0
- package/resources/themes/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-700.woff2 +0 -0
- package/resources/themes/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff +0 -0
- package/resources/themes/mdc-dark-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff2 +0 -0
- package/resources/themes/mdc-dark-indigo/theme.css +9765 -0
- package/resources/themes/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff +0 -0
- package/resources/themes/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-500.woff2 +0 -0
- package/resources/themes/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff +0 -0
- package/resources/themes/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-700.woff2 +0 -0
- package/resources/themes/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff +0 -0
- package/resources/themes/mdc-light-deeppurple/fonts/roboto-v20-latin-ext_latin-regular.woff2 +0 -0
- package/resources/themes/mdc-light-deeppurple/theme.css +9765 -0
- package/resources/themes/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-500.woff +0 -0
- package/resources/themes/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-500.woff2 +0 -0
- package/resources/themes/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-700.woff +0 -0
- package/resources/themes/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-700.woff2 +0 -0
- package/resources/themes/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff +0 -0
- package/resources/themes/mdc-light-indigo/fonts/roboto-v20-latin-ext_latin-regular.woff2 +0 -0
- package/resources/themes/mdc-light-indigo/theme.css +9765 -0
- package/resources/themes/mira/fonts/Inter-Bold.woff +0 -0
- package/resources/themes/mira/fonts/Inter-Bold.woff2 +0 -0
- package/resources/themes/mira/fonts/Inter-Medium.woff +0 -0
- package/resources/themes/mira/fonts/Inter-Medium.woff2 +0 -0
- package/resources/themes/mira/fonts/Inter-Regular.woff +0 -0
- package/resources/themes/mira/fonts/Inter-Regular.woff2 +0 -0
- package/resources/themes/mira/fonts/Inter-SemiBold.woff +0 -0
- package/resources/themes/mira/fonts/Inter-SemiBold.woff2 +0 -0
- package/resources/themes/mira/theme.css +7990 -0
- package/resources/themes/nano/theme.css +7736 -0
- package/resources/themes/nova/theme.css +7702 -0
- package/resources/themes/nova-accent/theme.css +7714 -0
- package/resources/themes/nova-alt/theme.css +7714 -0
- package/resources/themes/rhea/theme.css +7690 -0
- package/resources/themes/saga-blue/theme.css +7753 -0
- package/resources/themes/saga-green/theme.css +7753 -0
- package/resources/themes/saga-orange/theme.css +7753 -0
- package/resources/themes/saga-purple/theme.css +7753 -0
- package/resources/themes/soho-dark/fonts/lato-v17-latin-ext_latin-300.woff +0 -0
- package/resources/themes/soho-dark/fonts/lato-v17-latin-ext_latin-300.woff2 +0 -0
- package/resources/themes/soho-dark/fonts/lato-v17-latin-ext_latin-700.woff +0 -0
- package/resources/themes/soho-dark/fonts/lato-v17-latin-ext_latin-700.woff2 +0 -0
- package/resources/themes/soho-dark/fonts/lato-v17-latin-ext_latin-regular.woff +0 -0
- package/resources/themes/soho-dark/fonts/lato-v17-latin-ext_latin-regular.woff2 +0 -0
- package/resources/themes/soho-dark/theme.css +7719 -0
- package/resources/themes/soho-light/fonts/lato-v17-latin-ext_latin-300.woff +0 -0
- package/resources/themes/soho-light/fonts/lato-v17-latin-ext_latin-300.woff2 +0 -0
- package/resources/themes/soho-light/fonts/lato-v17-latin-ext_latin-700.woff +0 -0
- package/resources/themes/soho-light/fonts/lato-v17-latin-ext_latin-700.woff2 +0 -0
- package/resources/themes/soho-light/fonts/lato-v17-latin-ext_latin-regular.woff +0 -0
- package/resources/themes/soho-light/fonts/lato-v17-latin-ext_latin-regular.woff2 +0 -0
- package/resources/themes/soho-light/theme.css +7785 -0
- package/resources/themes/tailwind-light/fonts/Inter-Bold.woff +0 -0
- package/resources/themes/tailwind-light/fonts/Inter-Bold.woff2 +0 -0
- package/resources/themes/tailwind-light/fonts/Inter-Light.woff +0 -0
- package/resources/themes/tailwind-light/fonts/Inter-Light.woff2 +0 -0
- package/resources/themes/tailwind-light/fonts/Inter-Medium.woff +0 -0
- package/resources/themes/tailwind-light/fonts/Inter-Medium.woff2 +0 -0
- package/resources/themes/tailwind-light/fonts/Inter-Regular.woff +0 -0
- package/resources/themes/tailwind-light/fonts/Inter-Regular.woff2 +0 -0
- package/resources/themes/tailwind-light/fonts/Inter-SemiBold.woff +0 -0
- package/resources/themes/tailwind-light/fonts/Inter-SemiBold.woff2 +0 -0
- package/resources/themes/tailwind-light/theme.css +7867 -0
- package/resources/themes/vela-blue/theme.css +7757 -0
- package/resources/themes/vela-green/theme.css +7757 -0
- package/resources/themes/vela-orange/theme.css +7757 -0
- package/resources/themes/vela-purple/theme.css +7757 -0
- package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-300.woff +0 -0
- package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-300.woff2 +0 -0
- package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-600.woff +0 -0
- package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-600.woff2 +0 -0
- package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-700.woff +0 -0
- package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-700.woff2 +0 -0
- package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-regular.woff +0 -0
- package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-regular.woff2 +0 -0
- package/resources/themes/viva-dark/theme.css +7910 -0
- package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-300.woff +0 -0
- package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-300.woff2 +0 -0
- package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-600.woff +0 -0
- package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-600.woff2 +0 -0
- package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-700.woff +0 -0
- package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-700.woff2 +0 -0
- package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-regular.woff +0 -0
- package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-regular.woff2 +0 -0
- package/resources/themes/viva-light/theme.css +7910 -0
- package/ripple/index.d.ts +5 -0
- package/ripple/public_api.d.ts +1 -0
- package/ripple/ripple.d.ts +31 -0
- package/scroller/index.d.ts +5 -0
- package/scroller/public_api.d.ts +1 -0
- package/scroller/scroller.d.ts +251 -0
- package/scrollpanel/index.d.ts +5 -0
- package/scrollpanel/public_api.d.ts +1 -0
- package/scrollpanel/scrollpanel.d.ts +59 -0
- package/scrolltop/index.d.ts +5 -0
- package/scrolltop/public_api.d.ts +1 -0
- package/scrolltop/scrolltop.d.ts +53 -0
- package/selectbutton/index.d.ts +5 -0
- package/selectbutton/public_api.d.ts +1 -0
- package/selectbutton/selectbutton.d.ts +45 -0
- package/sidebar/index.d.ts +5 -0
- package/sidebar/public_api.d.ts +1 -0
- package/sidebar/sidebar.d.ts +75 -0
- package/skeleton/index.d.ts +5 -0
- package/skeleton/public_api.d.ts +1 -0
- package/skeleton/skeleton.d.ts +25 -0
- package/slidemenu/index.d.ts +5 -0
- package/slidemenu/public_api.d.ts +1 -0
- package/slidemenu/slidemenu.d.ts +112 -0
- package/slider/index.d.ts +5 -0
- package/slider/public_api.d.ts +1 -0
- package/slider/slider.d.ts +92 -0
- package/speeddial/index.d.ts +5 -0
- package/speeddial/public_api.d.ts +1 -0
- package/speeddial/speeddial.d.ts +137 -0
- package/spinner/index.d.ts +5 -0
- package/spinner/public_api.d.ts +1 -0
- package/spinner/spinner.d.ts +80 -0
- package/splitbutton/index.d.ts +5 -0
- package/splitbutton/public_api.d.ts +1 -0
- package/splitbutton/splitbutton.d.ts +45 -0
- package/splitter/index.d.ts +5 -0
- package/splitter/public_api.d.ts +1 -0
- package/splitter/splitter.d.ts +88 -0
- package/steps/index.d.ts +5 -0
- package/steps/public_api.d.ts +1 -0
- package/steps/steps.d.ts +33 -0
- package/styleclass/index.d.ts +5 -0
- package/styleclass/public_api.d.ts +1 -0
- package/styleclass/styleclass.d.ts +45 -0
- package/table/index.d.ts +5 -0
- package/table/public_api.d.ts +1 -0
- package/table/table.d.ts +890 -0
- package/tabmenu/index.d.ts +5 -0
- package/tabmenu/public_api.d.ts +1 -0
- package/tabmenu/tabmenu.d.ts +61 -0
- package/tabview/index.d.ts +5 -0
- package/tabview/public_api.d.ts +1 -0
- package/tabview/tabview.d.ts +110 -0
- package/tag/index.d.ts +5 -0
- package/tag/public_api.d.ts +1 -0
- package/tag/tag.d.ts +30 -0
- package/terminal/index.d.ts +5 -0
- package/terminal/public_api.d.ts +2 -0
- package/terminal/terminal.d.ts +34 -0
- package/terminal/terminalservice.d.ts +11 -0
- package/tieredmenu/index.d.ts +5 -0
- package/tieredmenu/public_api.d.ts +1 -0
- package/tieredmenu/tieredmenu.d.ts +109 -0
- package/timeline/index.d.ts +5 -0
- package/timeline/public_api.d.ts +1 -0
- package/timeline/timeline.d.ts +27 -0
- package/toast/index.d.ts +5 -0
- package/toast/public_api.d.ts +1 -0
- package/toast/toast.d.ts +87 -0
- package/togglebutton/index.d.ts +5 -0
- package/togglebutton/public_api.d.ts +1 -0
- package/togglebutton/togglebutton.d.ts +40 -0
- package/toolbar/index.d.ts +5 -0
- package/toolbar/public_api.d.ts +1 -0
- package/toolbar/toolbar.d.ts +23 -0
- package/tooltip/index.d.ts +5 -0
- package/tooltip/public_api.d.ts +1 -0
- package/tooltip/tooltip.d.ts +115 -0
- package/tree/index.d.ts +5 -0
- package/tree/public_api.d.ts +1 -0
- package/tree/tree.d.ts +207 -0
- package/treeselect/index.d.ts +5 -0
- package/treeselect/public_api.d.ts +1 -0
- package/treeselect/treeselect.d.ts +149 -0
- package/treetable/index.d.ts +5 -0
- package/treetable/public_api.d.ts +1 -0
- package/treetable/treetable.d.ts +542 -0
- package/tristatecheckbox/index.d.ts +5 -0
- package/tristatecheckbox/public_api.d.ts +1 -0
- package/tristatecheckbox/tristatecheckbox.d.ts +49 -0
- package/utils/index.d.ts +5 -0
- package/utils/objectutils.d.ts +17 -0
- package/utils/public_api.d.ts +4 -0
- package/utils/uniquecomponentid.d.ts +2 -0
- package/utils/zindexutils.d.ts +7 -0
- package/virtualscroller/index.d.ts +5 -0
- package/virtualscroller/public_api.d.ts +1 -0
- package/virtualscroller/virtualscroller.d.ts +41 -0
|
@@ -0,0 +1,600 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @dynamic is for runtime initializing DomHandler.browser
|
|
3
|
+
*
|
|
4
|
+
* If delete below comment, we can see this error message:
|
|
5
|
+
* Metadata collected contains an error that will be reported at runtime:
|
|
6
|
+
* Only initialized variables and constants can be referenced
|
|
7
|
+
* because the value of this variable is needed by the template compiler.
|
|
8
|
+
*/
|
|
9
|
+
// @dynamic
|
|
10
|
+
export class DomHandler {
|
|
11
|
+
static addClass(element, className) {
|
|
12
|
+
if (element && className) {
|
|
13
|
+
if (element.classList)
|
|
14
|
+
element.classList.add(className);
|
|
15
|
+
else
|
|
16
|
+
element.className += ' ' + className;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
static addMultipleClasses(element, className) {
|
|
20
|
+
if (element && className) {
|
|
21
|
+
if (element.classList) {
|
|
22
|
+
let styles = className.trim().split(' ');
|
|
23
|
+
for (let i = 0; i < styles.length; i++) {
|
|
24
|
+
element.classList.add(styles[i]);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
let styles = className.split(' ');
|
|
29
|
+
for (let i = 0; i < styles.length; i++) {
|
|
30
|
+
element.className += ' ' + styles[i];
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
static removeClass(element, className) {
|
|
36
|
+
if (element && className) {
|
|
37
|
+
if (element.classList)
|
|
38
|
+
element.classList.remove(className);
|
|
39
|
+
else
|
|
40
|
+
element.className = element.className.replace(new RegExp('(^|\\b)' + className.split(' ').join('|') + '(\\b|$)', 'gi'), ' ');
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
static hasClass(element, className) {
|
|
44
|
+
if (element && className) {
|
|
45
|
+
if (element.classList)
|
|
46
|
+
return element.classList.contains(className);
|
|
47
|
+
else
|
|
48
|
+
return new RegExp('(^| )' + className + '( |$)', 'gi').test(element.className);
|
|
49
|
+
}
|
|
50
|
+
return false;
|
|
51
|
+
}
|
|
52
|
+
static siblings(element) {
|
|
53
|
+
return Array.prototype.filter.call(element.parentNode.children, function (child) {
|
|
54
|
+
return child !== element;
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
static find(element, selector) {
|
|
58
|
+
return Array.from(element.querySelectorAll(selector));
|
|
59
|
+
}
|
|
60
|
+
static findSingle(element, selector) {
|
|
61
|
+
if (element) {
|
|
62
|
+
return element.querySelector(selector);
|
|
63
|
+
}
|
|
64
|
+
return null;
|
|
65
|
+
}
|
|
66
|
+
static index(element) {
|
|
67
|
+
let children = element.parentNode.childNodes;
|
|
68
|
+
let num = 0;
|
|
69
|
+
for (var i = 0; i < children.length; i++) {
|
|
70
|
+
if (children[i] == element)
|
|
71
|
+
return num;
|
|
72
|
+
if (children[i].nodeType == 1)
|
|
73
|
+
num++;
|
|
74
|
+
}
|
|
75
|
+
return -1;
|
|
76
|
+
}
|
|
77
|
+
static indexWithinGroup(element, attributeName) {
|
|
78
|
+
let children = element.parentNode ? element.parentNode.childNodes : [];
|
|
79
|
+
let num = 0;
|
|
80
|
+
for (var i = 0; i < children.length; i++) {
|
|
81
|
+
if (children[i] == element)
|
|
82
|
+
return num;
|
|
83
|
+
if (children[i].attributes && children[i].attributes[attributeName] && children[i].nodeType == 1)
|
|
84
|
+
num++;
|
|
85
|
+
}
|
|
86
|
+
return -1;
|
|
87
|
+
}
|
|
88
|
+
static appendOverlay(overlay, target, appendTo = 'self') {
|
|
89
|
+
if (appendTo !== 'self' && overlay && target) {
|
|
90
|
+
this.appendChild(overlay, target);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
static alignOverlay(overlay, target, appendTo = 'self', calculateMinWidth = true) {
|
|
94
|
+
if (overlay && target) {
|
|
95
|
+
if (calculateMinWidth) {
|
|
96
|
+
overlay.style.minWidth = `${DomHandler.getOuterWidth(target)}px`;
|
|
97
|
+
}
|
|
98
|
+
if (appendTo === 'self') {
|
|
99
|
+
this.relativePosition(overlay, target);
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
this.absolutePosition(overlay, target);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
static relativePosition(element, target) {
|
|
107
|
+
const getClosestRelativeElement = (el) => {
|
|
108
|
+
if (!el)
|
|
109
|
+
return;
|
|
110
|
+
return getComputedStyle(el).getPropertyValue('position') === 'relative' ? el : getClosestRelativeElement(el.parentElement);
|
|
111
|
+
};
|
|
112
|
+
const elementDimensions = element.offsetParent ? { width: element.offsetWidth, height: element.offsetHeight } : this.getHiddenElementDimensions(element);
|
|
113
|
+
const targetHeight = target.offsetHeight;
|
|
114
|
+
const targetOffset = target.getBoundingClientRect();
|
|
115
|
+
const windowScrollTop = this.getWindowScrollTop();
|
|
116
|
+
const windowScrollLeft = this.getWindowScrollLeft();
|
|
117
|
+
const viewport = this.getViewport();
|
|
118
|
+
const relativeElement = getClosestRelativeElement(element);
|
|
119
|
+
const relativeElementOffset = relativeElement?.getBoundingClientRect() || { top: -1 * windowScrollTop, left: -1 * windowScrollLeft };
|
|
120
|
+
let top, left;
|
|
121
|
+
if (targetOffset.top + targetHeight + elementDimensions.height > viewport.height) {
|
|
122
|
+
top = targetOffset.top - relativeElementOffset.top - elementDimensions.height;
|
|
123
|
+
element.style.transformOrigin = 'bottom';
|
|
124
|
+
if (targetOffset.top + top < 0) {
|
|
125
|
+
top = -1 * targetOffset.top;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
top = targetHeight + targetOffset.top - relativeElementOffset.top;
|
|
130
|
+
element.style.transformOrigin = 'top';
|
|
131
|
+
}
|
|
132
|
+
if (elementDimensions.width > viewport.width) {
|
|
133
|
+
// element wider then viewport and cannot fit on screen (align at left side of viewport)
|
|
134
|
+
left = (targetOffset.left - relativeElementOffset.left) * -1;
|
|
135
|
+
}
|
|
136
|
+
else if (targetOffset.left - relativeElementOffset.left + elementDimensions.width > viewport.width) {
|
|
137
|
+
// element wider then viewport but can be fit on screen (align at right side of viewport)
|
|
138
|
+
left = (targetOffset.left - relativeElementOffset.left + elementDimensions.width - viewport.width) * -1;
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
// element fits on screen (align with target)
|
|
142
|
+
left = targetOffset.left - relativeElementOffset.left;
|
|
143
|
+
}
|
|
144
|
+
element.style.top = top + 'px';
|
|
145
|
+
element.style.left = left + 'px';
|
|
146
|
+
}
|
|
147
|
+
static absolutePosition(element, target) {
|
|
148
|
+
const elementDimensions = element.offsetParent ? { width: element.offsetWidth, height: element.offsetHeight } : this.getHiddenElementDimensions(element);
|
|
149
|
+
const elementOuterHeight = elementDimensions.height;
|
|
150
|
+
const elementOuterWidth = elementDimensions.width;
|
|
151
|
+
const targetOuterHeight = target.offsetHeight;
|
|
152
|
+
const targetOuterWidth = target.offsetWidth;
|
|
153
|
+
const targetOffset = target.getBoundingClientRect();
|
|
154
|
+
const windowScrollTop = this.getWindowScrollTop();
|
|
155
|
+
const windowScrollLeft = this.getWindowScrollLeft();
|
|
156
|
+
const viewport = this.getViewport();
|
|
157
|
+
let top, left;
|
|
158
|
+
if (targetOffset.top + targetOuterHeight + elementOuterHeight > viewport.height) {
|
|
159
|
+
top = targetOffset.top + windowScrollTop - elementOuterHeight;
|
|
160
|
+
element.style.transformOrigin = 'bottom';
|
|
161
|
+
if (top < 0) {
|
|
162
|
+
top = windowScrollTop;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
else {
|
|
166
|
+
top = targetOuterHeight + targetOffset.top + windowScrollTop;
|
|
167
|
+
element.style.transformOrigin = 'top';
|
|
168
|
+
}
|
|
169
|
+
if (targetOffset.left + elementOuterWidth > viewport.width)
|
|
170
|
+
left = Math.max(0, targetOffset.left + windowScrollLeft + targetOuterWidth - elementOuterWidth);
|
|
171
|
+
else
|
|
172
|
+
left = targetOffset.left + windowScrollLeft;
|
|
173
|
+
element.style.top = top + 'px';
|
|
174
|
+
element.style.left = left + 'px';
|
|
175
|
+
}
|
|
176
|
+
static getParents(element, parents = []) {
|
|
177
|
+
return element['parentNode'] === null ? parents : this.getParents(element.parentNode, parents.concat([element.parentNode]));
|
|
178
|
+
}
|
|
179
|
+
static getScrollableParents(element) {
|
|
180
|
+
let scrollableParents = [];
|
|
181
|
+
if (element) {
|
|
182
|
+
let parents = this.getParents(element);
|
|
183
|
+
const overflowRegex = /(auto|scroll)/;
|
|
184
|
+
const overflowCheck = (node) => {
|
|
185
|
+
let styleDeclaration = window['getComputedStyle'](node, null);
|
|
186
|
+
return overflowRegex.test(styleDeclaration.getPropertyValue('overflow')) || overflowRegex.test(styleDeclaration.getPropertyValue('overflowX')) || overflowRegex.test(styleDeclaration.getPropertyValue('overflowY'));
|
|
187
|
+
};
|
|
188
|
+
for (let parent of parents) {
|
|
189
|
+
let scrollSelectors = parent.nodeType === 1 && parent.dataset['scrollselectors'];
|
|
190
|
+
if (scrollSelectors) {
|
|
191
|
+
let selectors = scrollSelectors.split(',');
|
|
192
|
+
for (let selector of selectors) {
|
|
193
|
+
let el = this.findSingle(parent, selector);
|
|
194
|
+
if (el && overflowCheck(el)) {
|
|
195
|
+
scrollableParents.push(el);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
if (parent.nodeType !== 9 && overflowCheck(parent)) {
|
|
200
|
+
scrollableParents.push(parent);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
return scrollableParents;
|
|
205
|
+
}
|
|
206
|
+
static getHiddenElementOuterHeight(element) {
|
|
207
|
+
element.style.visibility = 'hidden';
|
|
208
|
+
element.style.display = 'block';
|
|
209
|
+
let elementHeight = element.offsetHeight;
|
|
210
|
+
element.style.display = 'none';
|
|
211
|
+
element.style.visibility = 'visible';
|
|
212
|
+
return elementHeight;
|
|
213
|
+
}
|
|
214
|
+
static getHiddenElementOuterWidth(element) {
|
|
215
|
+
element.style.visibility = 'hidden';
|
|
216
|
+
element.style.display = 'block';
|
|
217
|
+
let elementWidth = element.offsetWidth;
|
|
218
|
+
element.style.display = 'none';
|
|
219
|
+
element.style.visibility = 'visible';
|
|
220
|
+
return elementWidth;
|
|
221
|
+
}
|
|
222
|
+
static getHiddenElementDimensions(element) {
|
|
223
|
+
let dimensions = {};
|
|
224
|
+
element.style.visibility = 'hidden';
|
|
225
|
+
element.style.display = 'block';
|
|
226
|
+
dimensions.width = element.offsetWidth;
|
|
227
|
+
dimensions.height = element.offsetHeight;
|
|
228
|
+
element.style.display = 'none';
|
|
229
|
+
element.style.visibility = 'visible';
|
|
230
|
+
return dimensions;
|
|
231
|
+
}
|
|
232
|
+
static scrollInView(container, item) {
|
|
233
|
+
let borderTopValue = getComputedStyle(container).getPropertyValue('borderTopWidth');
|
|
234
|
+
let borderTop = borderTopValue ? parseFloat(borderTopValue) : 0;
|
|
235
|
+
let paddingTopValue = getComputedStyle(container).getPropertyValue('paddingTop');
|
|
236
|
+
let paddingTop = paddingTopValue ? parseFloat(paddingTopValue) : 0;
|
|
237
|
+
let containerRect = container.getBoundingClientRect();
|
|
238
|
+
let itemRect = item.getBoundingClientRect();
|
|
239
|
+
let offset = itemRect.top + document.body.scrollTop - (containerRect.top + document.body.scrollTop) - borderTop - paddingTop;
|
|
240
|
+
let scroll = container.scrollTop;
|
|
241
|
+
let elementHeight = container.clientHeight;
|
|
242
|
+
let itemHeight = this.getOuterHeight(item);
|
|
243
|
+
if (offset < 0) {
|
|
244
|
+
container.scrollTop = scroll + offset;
|
|
245
|
+
}
|
|
246
|
+
else if (offset + itemHeight > elementHeight) {
|
|
247
|
+
container.scrollTop = scroll + offset - elementHeight + itemHeight;
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
static fadeIn(element, duration) {
|
|
251
|
+
element.style.opacity = 0;
|
|
252
|
+
let last = +new Date();
|
|
253
|
+
let opacity = 0;
|
|
254
|
+
let tick = function () {
|
|
255
|
+
opacity = +element.style.opacity.replace(',', '.') + (new Date().getTime() - last) / duration;
|
|
256
|
+
element.style.opacity = opacity;
|
|
257
|
+
last = +new Date();
|
|
258
|
+
if (+opacity < 1) {
|
|
259
|
+
(window.requestAnimationFrame && requestAnimationFrame(tick)) || setTimeout(tick, 16);
|
|
260
|
+
}
|
|
261
|
+
};
|
|
262
|
+
tick();
|
|
263
|
+
}
|
|
264
|
+
static fadeOut(element, ms) {
|
|
265
|
+
var opacity = 1, interval = 50, duration = ms, gap = interval / duration;
|
|
266
|
+
let fading = setInterval(() => {
|
|
267
|
+
opacity = opacity - gap;
|
|
268
|
+
if (opacity <= 0) {
|
|
269
|
+
opacity = 0;
|
|
270
|
+
clearInterval(fading);
|
|
271
|
+
}
|
|
272
|
+
element.style.opacity = opacity;
|
|
273
|
+
}, interval);
|
|
274
|
+
}
|
|
275
|
+
static getWindowScrollTop() {
|
|
276
|
+
let doc = document.documentElement;
|
|
277
|
+
return (window.pageYOffset || doc.scrollTop) - (doc.clientTop || 0);
|
|
278
|
+
}
|
|
279
|
+
static getWindowScrollLeft() {
|
|
280
|
+
let doc = document.documentElement;
|
|
281
|
+
return (window.pageXOffset || doc.scrollLeft) - (doc.clientLeft || 0);
|
|
282
|
+
}
|
|
283
|
+
static matches(element, selector) {
|
|
284
|
+
var p = Element.prototype;
|
|
285
|
+
var f = p['matches'] ||
|
|
286
|
+
p.webkitMatchesSelector ||
|
|
287
|
+
p['mozMatchesSelector'] ||
|
|
288
|
+
p['msMatchesSelector'] ||
|
|
289
|
+
function (s) {
|
|
290
|
+
return [].indexOf.call(document.querySelectorAll(s), this) !== -1;
|
|
291
|
+
};
|
|
292
|
+
return f.call(element, selector);
|
|
293
|
+
}
|
|
294
|
+
static getOuterWidth(el, margin) {
|
|
295
|
+
let width = el.offsetWidth;
|
|
296
|
+
if (margin) {
|
|
297
|
+
let style = getComputedStyle(el);
|
|
298
|
+
width += parseFloat(style.marginLeft) + parseFloat(style.marginRight);
|
|
299
|
+
}
|
|
300
|
+
return width;
|
|
301
|
+
}
|
|
302
|
+
static getHorizontalPadding(el) {
|
|
303
|
+
let style = getComputedStyle(el);
|
|
304
|
+
return parseFloat(style.paddingLeft) + parseFloat(style.paddingRight);
|
|
305
|
+
}
|
|
306
|
+
static getHorizontalMargin(el) {
|
|
307
|
+
let style = getComputedStyle(el);
|
|
308
|
+
return parseFloat(style.marginLeft) + parseFloat(style.marginRight);
|
|
309
|
+
}
|
|
310
|
+
static innerWidth(el) {
|
|
311
|
+
let width = el.offsetWidth;
|
|
312
|
+
let style = getComputedStyle(el);
|
|
313
|
+
width += parseFloat(style.paddingLeft) + parseFloat(style.paddingRight);
|
|
314
|
+
return width;
|
|
315
|
+
}
|
|
316
|
+
static width(el) {
|
|
317
|
+
let width = el.offsetWidth;
|
|
318
|
+
let style = getComputedStyle(el);
|
|
319
|
+
width -= parseFloat(style.paddingLeft) + parseFloat(style.paddingRight);
|
|
320
|
+
return width;
|
|
321
|
+
}
|
|
322
|
+
static getInnerHeight(el) {
|
|
323
|
+
let height = el.offsetHeight;
|
|
324
|
+
let style = getComputedStyle(el);
|
|
325
|
+
height += parseFloat(style.paddingTop) + parseFloat(style.paddingBottom);
|
|
326
|
+
return height;
|
|
327
|
+
}
|
|
328
|
+
static getOuterHeight(el, margin) {
|
|
329
|
+
let height = el.offsetHeight;
|
|
330
|
+
if (margin) {
|
|
331
|
+
let style = getComputedStyle(el);
|
|
332
|
+
height += parseFloat(style.marginTop) + parseFloat(style.marginBottom);
|
|
333
|
+
}
|
|
334
|
+
return height;
|
|
335
|
+
}
|
|
336
|
+
static getHeight(el) {
|
|
337
|
+
let height = el.offsetHeight;
|
|
338
|
+
let style = getComputedStyle(el);
|
|
339
|
+
height -= parseFloat(style.paddingTop) + parseFloat(style.paddingBottom) + parseFloat(style.borderTopWidth) + parseFloat(style.borderBottomWidth);
|
|
340
|
+
return height;
|
|
341
|
+
}
|
|
342
|
+
static getWidth(el) {
|
|
343
|
+
let width = el.offsetWidth;
|
|
344
|
+
let style = getComputedStyle(el);
|
|
345
|
+
width -= parseFloat(style.paddingLeft) + parseFloat(style.paddingRight) + parseFloat(style.borderLeftWidth) + parseFloat(style.borderRightWidth);
|
|
346
|
+
return width;
|
|
347
|
+
}
|
|
348
|
+
static getViewport() {
|
|
349
|
+
let win = window, d = document, e = d.documentElement, g = d.getElementsByTagName('body')[0], w = win.innerWidth || e.clientWidth || g.clientWidth, h = win.innerHeight || e.clientHeight || g.clientHeight;
|
|
350
|
+
return { width: w, height: h };
|
|
351
|
+
}
|
|
352
|
+
static getOffset(el) {
|
|
353
|
+
var rect = el.getBoundingClientRect();
|
|
354
|
+
return {
|
|
355
|
+
top: rect.top + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0),
|
|
356
|
+
left: rect.left + (window.pageXOffset || document.documentElement.scrollLeft || document.body.scrollLeft || 0)
|
|
357
|
+
};
|
|
358
|
+
}
|
|
359
|
+
static replaceElementWith(element, replacementElement) {
|
|
360
|
+
let parentNode = element.parentNode;
|
|
361
|
+
if (!parentNode)
|
|
362
|
+
throw `Can't replace element`;
|
|
363
|
+
return parentNode.replaceChild(replacementElement, element);
|
|
364
|
+
}
|
|
365
|
+
static getUserAgent() {
|
|
366
|
+
if (navigator && this.isClient()) {
|
|
367
|
+
return navigator.userAgent;
|
|
368
|
+
}
|
|
369
|
+
}
|
|
370
|
+
static isIE() {
|
|
371
|
+
var ua = window.navigator.userAgent;
|
|
372
|
+
var msie = ua.indexOf('MSIE ');
|
|
373
|
+
if (msie > 0) {
|
|
374
|
+
// IE 10 or older => return version number
|
|
375
|
+
return true;
|
|
376
|
+
}
|
|
377
|
+
var trident = ua.indexOf('Trident/');
|
|
378
|
+
if (trident > 0) {
|
|
379
|
+
// IE 11 => return version number
|
|
380
|
+
var rv = ua.indexOf('rv:');
|
|
381
|
+
return true;
|
|
382
|
+
}
|
|
383
|
+
var edge = ua.indexOf('Edge/');
|
|
384
|
+
if (edge > 0) {
|
|
385
|
+
// Edge (IE 12+) => return version number
|
|
386
|
+
return true;
|
|
387
|
+
}
|
|
388
|
+
// other browser
|
|
389
|
+
return false;
|
|
390
|
+
}
|
|
391
|
+
static isIOS() {
|
|
392
|
+
return /iPad|iPhone|iPod/.test(navigator.userAgent) && !window['MSStream'];
|
|
393
|
+
}
|
|
394
|
+
static isAndroid() {
|
|
395
|
+
return /(android)/i.test(navigator.userAgent);
|
|
396
|
+
}
|
|
397
|
+
static isTouchDevice() {
|
|
398
|
+
return 'ontouchstart' in window || navigator.maxTouchPoints > 0;
|
|
399
|
+
}
|
|
400
|
+
static appendChild(element, target) {
|
|
401
|
+
if (this.isElement(target))
|
|
402
|
+
target.appendChild(element);
|
|
403
|
+
else if (target.el && target.el.nativeElement)
|
|
404
|
+
target.el.nativeElement.appendChild(element);
|
|
405
|
+
else
|
|
406
|
+
throw 'Cannot append ' + target + ' to ' + element;
|
|
407
|
+
}
|
|
408
|
+
static removeChild(element, target) {
|
|
409
|
+
if (this.isElement(target))
|
|
410
|
+
target.removeChild(element);
|
|
411
|
+
else if (target.el && target.el.nativeElement)
|
|
412
|
+
target.el.nativeElement.removeChild(element);
|
|
413
|
+
else
|
|
414
|
+
throw 'Cannot remove ' + element + ' from ' + target;
|
|
415
|
+
}
|
|
416
|
+
static removeElement(element) {
|
|
417
|
+
if (!('remove' in Element.prototype))
|
|
418
|
+
element.parentNode.removeChild(element);
|
|
419
|
+
else
|
|
420
|
+
element.remove();
|
|
421
|
+
}
|
|
422
|
+
static isElement(obj) {
|
|
423
|
+
return typeof HTMLElement === 'object' ? obj instanceof HTMLElement : obj && typeof obj === 'object' && obj !== null && obj.nodeType === 1 && typeof obj.nodeName === 'string';
|
|
424
|
+
}
|
|
425
|
+
static calculateScrollbarWidth(el) {
|
|
426
|
+
if (el) {
|
|
427
|
+
let style = getComputedStyle(el);
|
|
428
|
+
return el.offsetWidth - el.clientWidth - parseFloat(style.borderLeftWidth) - parseFloat(style.borderRightWidth);
|
|
429
|
+
}
|
|
430
|
+
else {
|
|
431
|
+
if (this.calculatedScrollbarWidth !== null)
|
|
432
|
+
return this.calculatedScrollbarWidth;
|
|
433
|
+
let scrollDiv = document.createElement('div');
|
|
434
|
+
scrollDiv.className = 'p-scrollbar-measure';
|
|
435
|
+
document.body.appendChild(scrollDiv);
|
|
436
|
+
let scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth;
|
|
437
|
+
document.body.removeChild(scrollDiv);
|
|
438
|
+
this.calculatedScrollbarWidth = scrollbarWidth;
|
|
439
|
+
return scrollbarWidth;
|
|
440
|
+
}
|
|
441
|
+
}
|
|
442
|
+
static calculateScrollbarHeight() {
|
|
443
|
+
if (this.calculatedScrollbarHeight !== null)
|
|
444
|
+
return this.calculatedScrollbarHeight;
|
|
445
|
+
let scrollDiv = document.createElement('div');
|
|
446
|
+
scrollDiv.className = 'p-scrollbar-measure';
|
|
447
|
+
document.body.appendChild(scrollDiv);
|
|
448
|
+
let scrollbarHeight = scrollDiv.offsetHeight - scrollDiv.clientHeight;
|
|
449
|
+
document.body.removeChild(scrollDiv);
|
|
450
|
+
this.calculatedScrollbarWidth = scrollbarHeight;
|
|
451
|
+
return scrollbarHeight;
|
|
452
|
+
}
|
|
453
|
+
static invokeElementMethod(element, methodName, args) {
|
|
454
|
+
element[methodName].apply(element, args);
|
|
455
|
+
}
|
|
456
|
+
static clearSelection() {
|
|
457
|
+
if (window.getSelection) {
|
|
458
|
+
if (window.getSelection().empty) {
|
|
459
|
+
window.getSelection().empty();
|
|
460
|
+
}
|
|
461
|
+
else if (window.getSelection().removeAllRanges && window.getSelection().rangeCount > 0 && window.getSelection().getRangeAt(0).getClientRects().length > 0) {
|
|
462
|
+
window.getSelection().removeAllRanges();
|
|
463
|
+
}
|
|
464
|
+
}
|
|
465
|
+
else if (document['selection'] && document['selection'].empty) {
|
|
466
|
+
try {
|
|
467
|
+
document['selection'].empty();
|
|
468
|
+
}
|
|
469
|
+
catch (error) {
|
|
470
|
+
//ignore IE bug
|
|
471
|
+
}
|
|
472
|
+
}
|
|
473
|
+
}
|
|
474
|
+
static getBrowser() {
|
|
475
|
+
if (!this.browser) {
|
|
476
|
+
let matched = this.resolveUserAgent();
|
|
477
|
+
this.browser = {};
|
|
478
|
+
if (matched.browser) {
|
|
479
|
+
this.browser[matched.browser] = true;
|
|
480
|
+
this.browser['version'] = matched.version;
|
|
481
|
+
}
|
|
482
|
+
if (this.browser['chrome']) {
|
|
483
|
+
this.browser['webkit'] = true;
|
|
484
|
+
}
|
|
485
|
+
else if (this.browser['webkit']) {
|
|
486
|
+
this.browser['safari'] = true;
|
|
487
|
+
}
|
|
488
|
+
}
|
|
489
|
+
return this.browser;
|
|
490
|
+
}
|
|
491
|
+
static resolveUserAgent() {
|
|
492
|
+
let ua = navigator.userAgent.toLowerCase();
|
|
493
|
+
let match = /(chrome)[ \/]([\w.]+)/.exec(ua) || /(webkit)[ \/]([\w.]+)/.exec(ua) || /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) || /(msie) ([\w.]+)/.exec(ua) || (ua.indexOf('compatible') < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua)) || [];
|
|
494
|
+
return {
|
|
495
|
+
browser: match[1] || '',
|
|
496
|
+
version: match[2] || '0'
|
|
497
|
+
};
|
|
498
|
+
}
|
|
499
|
+
static isInteger(value) {
|
|
500
|
+
if (Number.isInteger) {
|
|
501
|
+
return Number.isInteger(value);
|
|
502
|
+
}
|
|
503
|
+
else {
|
|
504
|
+
return typeof value === 'number' && isFinite(value) && Math.floor(value) === value;
|
|
505
|
+
}
|
|
506
|
+
}
|
|
507
|
+
static isHidden(element) {
|
|
508
|
+
return !element || element.offsetParent === null;
|
|
509
|
+
}
|
|
510
|
+
static isVisible(element) {
|
|
511
|
+
return element && element.offsetParent != null;
|
|
512
|
+
}
|
|
513
|
+
static isExist(element) {
|
|
514
|
+
return element !== null && typeof element !== 'undefined' && element.nodeName && element.parentNode;
|
|
515
|
+
}
|
|
516
|
+
static focus(element, options) {
|
|
517
|
+
element && document.activeElement !== element && element.focus(options);
|
|
518
|
+
}
|
|
519
|
+
static getFocusableElements(element) {
|
|
520
|
+
let focusableElements = DomHandler.find(element, `button:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]),
|
|
521
|
+
[href]:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]),
|
|
522
|
+
input:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]), select:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]),
|
|
523
|
+
textarea:not([tabindex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]), [tabIndex]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]),
|
|
524
|
+
[contenteditable]:not([tabIndex = "-1"]):not([disabled]):not([style*="display:none"]):not([hidden]):not(.p-disabled)`);
|
|
525
|
+
let visibleFocusableElements = [];
|
|
526
|
+
for (let focusableElement of focusableElements) {
|
|
527
|
+
if (!!(focusableElement.offsetWidth || focusableElement.offsetHeight || focusableElement.getClientRects().length))
|
|
528
|
+
visibleFocusableElements.push(focusableElement);
|
|
529
|
+
}
|
|
530
|
+
return visibleFocusableElements;
|
|
531
|
+
}
|
|
532
|
+
static getNextFocusableElement(element, reverse = false) {
|
|
533
|
+
const focusableElements = DomHandler.getFocusableElements(element);
|
|
534
|
+
let index = 0;
|
|
535
|
+
if (focusableElements && focusableElements.length > 0) {
|
|
536
|
+
const focusedIndex = focusableElements.indexOf(focusableElements[0].ownerDocument.activeElement);
|
|
537
|
+
if (reverse) {
|
|
538
|
+
if (focusedIndex == -1 || focusedIndex === 0) {
|
|
539
|
+
index = focusableElements.length - 1;
|
|
540
|
+
}
|
|
541
|
+
else {
|
|
542
|
+
index = focusedIndex - 1;
|
|
543
|
+
}
|
|
544
|
+
}
|
|
545
|
+
else if (focusedIndex != -1 && focusedIndex !== focusableElements.length - 1) {
|
|
546
|
+
index = focusedIndex + 1;
|
|
547
|
+
}
|
|
548
|
+
}
|
|
549
|
+
return focusableElements[index];
|
|
550
|
+
}
|
|
551
|
+
static generateZIndex() {
|
|
552
|
+
this.zindex = this.zindex || 999;
|
|
553
|
+
return ++this.zindex;
|
|
554
|
+
}
|
|
555
|
+
static getSelection() {
|
|
556
|
+
if (window.getSelection)
|
|
557
|
+
return window.getSelection().toString();
|
|
558
|
+
else if (document.getSelection)
|
|
559
|
+
return document.getSelection().toString();
|
|
560
|
+
else if (document['selection'])
|
|
561
|
+
return document['selection'].createRange().text;
|
|
562
|
+
return null;
|
|
563
|
+
}
|
|
564
|
+
static getTargetElement(target, el) {
|
|
565
|
+
if (!target)
|
|
566
|
+
return null;
|
|
567
|
+
switch (target) {
|
|
568
|
+
case 'document':
|
|
569
|
+
return document;
|
|
570
|
+
case 'window':
|
|
571
|
+
return window;
|
|
572
|
+
case '@next':
|
|
573
|
+
return el?.nextElementSibling;
|
|
574
|
+
case '@prev':
|
|
575
|
+
return el?.previousElementSibling;
|
|
576
|
+
case '@parent':
|
|
577
|
+
return el?.parentElement;
|
|
578
|
+
case '@grandparent':
|
|
579
|
+
return el?.parentElement.parentElement;
|
|
580
|
+
default:
|
|
581
|
+
const type = typeof target;
|
|
582
|
+
if (type === 'string') {
|
|
583
|
+
return document.querySelector(target);
|
|
584
|
+
}
|
|
585
|
+
else if (type === 'object' && target.hasOwnProperty('nativeElement')) {
|
|
586
|
+
return this.isExist(target.nativeElement) ? target.nativeElement : undefined;
|
|
587
|
+
}
|
|
588
|
+
const isFunction = (obj) => !!(obj && obj.constructor && obj.call && obj.apply);
|
|
589
|
+
const element = isFunction(target) ? target() : target;
|
|
590
|
+
return (element && element.nodeType === 9) || this.isExist(element) ? element : null;
|
|
591
|
+
}
|
|
592
|
+
}
|
|
593
|
+
static isClient() {
|
|
594
|
+
return !!(typeof window !== 'undefined' && window.document && window.document.createElement);
|
|
595
|
+
}
|
|
596
|
+
}
|
|
597
|
+
DomHandler.zindex = 1000;
|
|
598
|
+
DomHandler.calculatedScrollbarWidth = null;
|
|
599
|
+
DomHandler.calculatedScrollbarHeight = null;
|
|
600
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG9taGFuZGxlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcHAvY29tcG9uZW50cy9kb20vZG9taGFuZGxlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7OztHQU9HO0FBQ0gsV0FBVztBQUNYLE1BQU0sT0FBTyxVQUFVO0lBU1osTUFBTSxDQUFDLFFBQVEsQ0FBQyxPQUFZLEVBQUUsU0FBaUI7UUFDbEQsSUFBSSxPQUFPLElBQUksU0FBUyxFQUFFO1lBQ3RCLElBQUksT0FBTyxDQUFDLFNBQVM7Z0JBQUUsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7O2dCQUNuRCxPQUFPLENBQUMsU0FBUyxJQUFJLEdBQUcsR0FBRyxTQUFTLENBQUM7U0FDN0M7SUFDTCxDQUFDO0lBRU0sTUFBTSxDQUFDLGtCQUFrQixDQUFDLE9BQVksRUFBRSxTQUFpQjtRQUM1RCxJQUFJLE9BQU8sSUFBSSxTQUFTLEVBQUU7WUFDdEIsSUFBSSxPQUFPLENBQUMsU0FBUyxFQUFFO2dCQUNuQixJQUFJLE1BQU0sR0FBYSxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNuRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRTtvQkFDcEMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQ3BDO2FBQ0o7aUJBQU07Z0JBQ0gsSUFBSSxNQUFNLEdBQWEsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztnQkFDNUMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7b0JBQ3BDLE9BQU8sQ0FBQyxTQUFTLElBQUksR0FBRyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztpQkFDeEM7YUFDSjtTQUNKO0lBQ0wsQ0FBQztJQUVNLE1BQU0sQ0FBQyxXQUFXLENBQUMsT0FBWSxFQUFFLFNBQWlCO1FBQ3JELElBQUksT0FBTyxJQUFJLFNBQVMsRUFBRTtZQUN0QixJQUFJLE9BQU8sQ0FBQyxTQUFTO2dCQUFFLE9BQU8sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDOztnQkFDdEQsT0FBTyxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLE1BQU0sQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsU0FBUyxFQUFFLElBQUksQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1NBQ3JJO0lBQ0wsQ0FBQztJQUVNLE1BQU0sQ0FBQyxRQUFRLENBQUMsT0FBWSxFQUFFLFNBQWlCO1FBQ2xELElBQUksT0FBTyxJQUFJLFNBQVMsRUFBRTtZQUN0QixJQUFJLE9BQU8sQ0FBQyxTQUFTO2dCQUFFLE9BQU8sT0FBTyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUM7O2dCQUMvRCxPQUFPLElBQUksTUFBTSxDQUFDLE9BQU8sR0FBRyxTQUFTLEdBQUcsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDdkY7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBRU0sTUFBTSxDQUFDLFFBQVEsQ0FBQyxPQUFZO1FBQy9CLE9BQU8sS0FBSyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsS0FBSztZQUMzRSxPQUFPLEtBQUssS0FBSyxPQUFPLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU0sTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFZLEVBQUUsUUFBZ0I7UUFDN0MsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFTSxNQUFNLENBQUMsVUFBVSxDQUFDLE9BQVksRUFBRSxRQUFnQjtRQUNuRCxJQUFJLE9BQU8sRUFBRTtZQUNULE9BQU8sT0FBTyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUMxQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7SUFFTSxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQVk7UUFDNUIsSUFBSSxRQUFRLEdBQUcsT0FBTyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUM7UUFDN0MsSUFBSSxHQUFHLEdBQUcsQ0FBQyxDQUFDO1FBQ1osS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDdEMsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksT0FBTztnQkFBRSxPQUFPLEdBQUcsQ0FBQztZQUN2QyxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLElBQUksQ0FBQztnQkFBRSxHQUFHLEVBQUUsQ0FBQztTQUN4QztRQUNELE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDZCxDQUFDO0lBRU0sTUFBTSxDQUFDLGdCQUFnQixDQUFDLE9BQVksRUFBRSxhQUFxQjtRQUM5RCxJQUFJLFFBQVEsR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1FBQ3ZFLElBQUksR0FBRyxHQUFHLENBQUMsQ0FBQztRQUNaLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3RDLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLE9BQU87Z0JBQUUsT0FBTyxHQUFHLENBQUM7WUFDdkMsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLElBQUksUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsSUFBSSxDQUFDO2dCQUFFLEdBQUcsRUFBRSxDQUFDO1NBQzNHO1FBQ0QsT0FBTyxDQUFDLENBQUMsQ0FBQztJQUNkLENBQUM7SUFFTSxNQUFNLENBQUMsYUFBYSxDQUFDLE9BQVksRUFBRSxNQUFXLEVBQUUsV0FBZ0IsTUFBTTtRQUN6RSxJQUFJLFFBQVEsS0FBSyxNQUFNLElBQUksT0FBTyxJQUFJLE1BQU0sRUFBRTtZQUMxQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQztTQUNyQztJQUNMLENBQUM7SUFFTSxNQUFNLENBQUMsWUFBWSxDQUFDLE9BQVksRUFBRSxNQUFXLEVBQUUsV0FBZ0IsTUFBTSxFQUFFLG9CQUE2QixJQUFJO1FBQzNHLElBQUksT0FBTyxJQUFJLE1BQU0sRUFBRTtZQUNuQixJQUFJLGlCQUFpQixFQUFFO2dCQUNuQixPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxHQUFHLFVBQVUsQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQzthQUNwRTtZQUVELElBQUksUUFBUSxLQUFLLE1BQU0sRUFBRTtnQkFDckIsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQzthQUMxQztpQkFBTTtnQkFDSCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO2FBQzFDO1NBQ0o7SUFDTCxDQUFDO0lBRU0sTUFBTSxDQUFDLGdCQUFnQixDQUFDLE9BQVksRUFBRSxNQUFXO1FBQ3BELE1BQU0seUJBQXlCLEdBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRTtZQUNyQyxJQUFJLENBQUMsRUFBRTtnQkFBRSxPQUFPO1lBRWhCLE9BQU8sZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUMsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLHlCQUF5QixDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUMvSCxDQUFDLENBQUM7UUFFRixNQUFNLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxXQUFXLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3pKLE1BQU0sWUFBWSxHQUFHLE1BQU0sQ0FBQyxZQUFZLENBQUM7UUFDekMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDcEQsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDbEQsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUNwRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEMsTUFBTSxlQUFlLEdBQUcseUJBQXlCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDM0QsTUFBTSxxQkFBcUIsR0FBRyxlQUFlLEVBQUUscUJBQXFCLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxlQUFlLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLGdCQUFnQixFQUFFLENBQUM7UUFDckksSUFBSSxHQUFXLEVBQUUsSUFBWSxDQUFDO1FBRTlCLElBQUksWUFBWSxDQUFDLEdBQUcsR0FBRyxZQUFZLEdBQUcsaUJBQWlCLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQyxNQUFNLEVBQUU7WUFDOUUsR0FBRyxHQUFHLFlBQVksQ0FBQyxHQUFHLEdBQUcscUJBQXFCLENBQUMsR0FBRyxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQztZQUM5RSxPQUFPLENBQUMsS0FBSyxDQUFDLGVBQWUsR0FBRyxRQUFRLENBQUM7WUFDekMsSUFBSSxZQUFZLENBQUMsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDLEVBQUU7Z0JBQzVCLEdBQUcsR0FBRyxDQUFDLENBQUMsR0FBRyxZQUFZLENBQUMsR0FBRyxDQUFDO2FBQy9CO1NBQ0o7YUFBTTtZQUNILEdBQUcsR0FBRyxZQUFZLEdBQUcsWUFBWSxDQUFDLEdBQUcsR0FBRyxxQkFBcUIsQ0FBQyxHQUFHLENBQUM7WUFDbEUsT0FBTyxDQUFDLEtBQUssQ0FBQyxlQUFlLEdBQUcsS0FBSyxDQUFDO1NBQ3pDO1FBRUQsSUFBSSxpQkFBaUIsQ0FBQyxLQUFLLEdBQUcsUUFBUSxDQUFDLEtBQUssRUFBRTtZQUMxQyx3RkFBd0Y7WUFDeEYsSUFBSSxHQUFHLENBQUMsWUFBWSxDQUFDLElBQUksR0FBRyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztTQUNoRTthQUFNLElBQUksWUFBWSxDQUFDLElBQUksR0FBRyxxQkFBcUIsQ0FBQyxJQUFJLEdBQUcsaUJBQWlCLENBQUMsS0FBSyxHQUFHLFFBQVEsQ0FBQyxLQUFLLEVBQUU7WUFDbEcseUZBQXlGO1lBQ3pGLElBQUksR0FBRyxDQUFDLFlBQVksQ0FBQyxJQUFJLEdBQUcscUJBQXFCLENBQUMsSUFBSSxHQUFHLGlCQUFpQixDQUFDLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDM0c7YUFBTTtZQUNILDZDQUE2QztZQUM3QyxJQUFJLEdBQUcsWUFBWSxDQUFDLElBQUksR0FBRyxxQkFBcUIsQ0FBQyxJQUFJLENBQUM7U0FDekQ7UUFFRCxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDO1FBQy9CLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLElBQUksR0FBRyxJQUFJLENBQUM7SUFDckMsQ0FBQztJQUVNLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFZLEVBQUUsTUFBVztRQUNwRCxNQUFNLGlCQUFpQixHQUFHLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sQ0FBQyxXQUFXLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3pKLE1BQU0sa0JBQWtCLEdBQUcsaUJBQWlCLENBQUMsTUFBTSxDQUFDO1FBQ3BELE1BQU0saUJBQWlCLEdBQUcsaUJBQWlCLENBQUMsS0FBSyxDQUFDO1FBQ2xELE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQztRQUM5QyxNQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUM7UUFDNUMsTUFBTSxZQUFZLEdBQUcsTUFBTSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDcEQsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDbEQsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQUNwRCxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEMsSUFBSSxHQUFXLEVBQUUsSUFBWSxDQUFDO1FBRTlCLElBQUksWUFBWSxDQUFDLEdBQUcsR0FBRyxpQkFBaUIsR0FBRyxrQkFBa0IsR0FBRyxRQUFRLENBQUMsTUFBTSxFQUFFO1lBQzdFLEdBQUcsR0FBRyxZQUFZLENBQUMsR0FBRyxHQUFHLGVBQWUsR0FBRyxrQkFBa0IsQ0FBQztZQUM5RCxPQUFPLENBQUMsS0FBSyxDQUFDLGVBQWUsR0FBRyxRQUFRLENBQUM7WUFFekMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxFQUFFO2dCQUNULEdBQUcsR0FBRyxlQUFlLENBQUM7YUFDekI7U0FDSjthQUFNO1lBQ0gsR0FBRyxHQUFHLGlCQUFpQixHQUFHLFlBQVksQ0FBQyxHQUFHLEdBQUcsZUFBZSxDQUFDO1lBQzdELE9BQU8sQ0FBQyxLQUFLLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztTQUN6QztRQUVELElBQUksWUFBWSxDQUFDLElBQUksR0FBRyxpQkFBaUIsR0FBRyxRQUFRLENBQUMsS0FBSztZQUFFLElBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxZQUFZLENBQUMsSUFBSSxHQUFHLGdCQUFnQixHQUFHLGdCQUFnQixHQUFHLGlCQUFpQixDQUFDLENBQUM7O1lBQ3ZKLElBQUksR0FBRyxZQUFZLENBQUMsSUFBSSxHQUFHLGdCQUFnQixDQUFDO1FBRWpELE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsR0FBRyxJQUFJLENBQUM7UUFDL0IsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLEdBQUcsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNyQyxDQUFDO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxPQUFZLEVBQUUsVUFBZSxFQUFFO1FBQzdDLE9BQU8sT0FBTyxDQUFDLFlBQVksQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDaEksQ0FBQztJQUVELE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxPQUFZO1FBQ3BDLElBQUksaUJBQWlCLEdBQUcsRUFBRSxDQUFDO1FBRTNCLElBQUksT0FBTyxFQUFFO1lBQ1QsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN2QyxNQUFNLGFBQWEsR0FBRyxlQUFlLENBQUM7WUFDdEMsTUFBTSxhQUFhLEdBQUcsQ0FBQyxJQUFTLEVBQUUsRUFBRTtnQkFDaEMsSUFBSSxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQzlELE9BQU8sYUFBYSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLGFBQWEsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxDQUFDLENBQUMsSUFBSSxhQUFhLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7WUFDek4sQ0FBQyxDQUFDO1lBRUYsS0FBSyxJQUFJLE1BQU0sSUFBSSxPQUFPLEVBQUU7Z0JBQ3hCLElBQUksZUFBZSxHQUFHLE1BQU0sQ0FBQyxRQUFRLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FBQztnQkFDakYsSUFBSSxlQUFlLEVBQUU7b0JBQ2pCLElBQUksU0FBUyxHQUFHLGVBQWUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQzNDLEtBQUssSUFBSSxRQUFRLElBQUksU0FBUyxFQUFFO3dCQUM1QixJQUFJLEVBQUUsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQzt3QkFDM0MsSUFBSSxFQUFFLElBQUksYUFBYSxDQUFDLEVBQUUsQ0FBQyxFQUFFOzRCQUN6QixpQkFBaUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7eUJBQzlCO3FCQUNKO2lCQUNKO2dCQUVELElBQUksTUFBTSxDQUFDLFFBQVEsS0FBSyxDQUFDLElBQUksYUFBYSxDQUFDLE1BQU0sQ0FBQyxFQUFFO29CQUNoRCxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7aUJBQ2xDO2FBQ0o7U0FDSjtRQUVELE9BQU8saUJBQWlCLENBQUM7SUFDN0IsQ0FBQztJQUVNLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQyxPQUFZO1FBQ2xELE9BQU8sQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQztRQUNwQyxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDaEMsSUFBSSxhQUFhLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQztRQUN6QyxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDL0IsT0FBTyxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO1FBRXJDLE9BQU8sYUFBYSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxNQUFNLENBQUMsMEJBQTBCLENBQUMsT0FBWTtRQUNqRCxPQUFPLENBQUMsS0FBSyxDQUFDLFVBQVUsR0FBRyxRQUFRLENBQUM7UUFDcEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBQ2hDLElBQUksWUFBWSxHQUFHLE9BQU8sQ0FBQyxXQUFXLENBQUM7UUFDdkMsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBQy9CLE9BQU8sQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQztRQUVyQyxPQUFPLFlBQVksQ0FBQztJQUN4QixDQUFDO0lBRU0sTUFBTSxDQUFDLDBCQUEwQixDQUFDLE9BQVk7UUFDakQsSUFBSSxVQUFVLEdBQVEsRUFBRSxDQUFDO1FBQ3pCLE9BQU8sQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLFFBQVEsQ0FBQztRQUNwQyxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFDaEMsVUFBVSxDQUFDLEtBQUssR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDO1FBQ3ZDLFVBQVUsQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQztRQUN6QyxPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDL0IsT0FBTyxDQUFDLEtBQUssQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDO1FBRXJDLE9BQU8sVUFBVSxDQUFDO0lBQ3RCLENBQUM7SUFFTSxNQUFNLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxJQUFJO1FBQ3RDLElBQUksY0FBYyxHQUFXLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDNUYsSUFBSSxTQUFTLEdBQVcsY0FBYyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUN4RSxJQUFJLGVBQWUsR0FBVyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN6RixJQUFJLFVBQVUsR0FBVyxlQUFlLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzNFLElBQUksYUFBYSxHQUFHLFNBQVMsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQ3RELElBQUksUUFBUSxHQUFHLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQzVDLElBQUksTUFBTSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxhQUFhLENBQUMsR0FBRyxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsU0FBUyxHQUFHLFVBQVUsQ0FBQztRQUM3SCxJQUFJLE1BQU0sR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDO1FBQ2pDLElBQUksYUFBYSxHQUFHLFNBQVMsQ0FBQyxZQUFZLENBQUM7UUFDM0MsSUFBSSxVQUFVLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUUzQyxJQUFJLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDWixTQUFTLENBQUMsU0FBUyxHQUFHLE1BQU0sR0FBRyxNQUFNLENBQUM7U0FDekM7YUFBTSxJQUFJLE1BQU0sR0FBRyxVQUFVLEdBQUcsYUFBYSxFQUFFO1lBQzVDLFNBQVMsQ0FBQyxTQUFTLEdBQUcsTUFBTSxHQUFHLE1BQU0sR0FBRyxhQUFhLEdBQUcsVUFBVSxDQUFDO1NBQ3RFO0lBQ0wsQ0FBQztJQUVNLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLFFBQWdCO1FBQzFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQztRQUUxQixJQUFJLElBQUksR0FBRyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUM7UUFDdkIsSUFBSSxPQUFPLEdBQUcsQ0FBQyxDQUFDO1FBQ2hCLElBQUksSUFBSSxHQUFHO1lBQ1AsT0FBTyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxDQUFDLEdBQUcsUUFBUSxDQUFDO1lBQzlGLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztZQUNoQyxJQUFJLEdBQUcsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDO1lBRW5CLElBQUksQ0FBQyxPQUFPLEdBQUcsQ0FBQyxFQUFFO2dCQUNkLENBQUMsTUFBTSxDQUFDLHFCQUFxQixJQUFJLHFCQUFxQixDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksVUFBVSxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQzthQUN6RjtRQUNMLENBQUMsQ0FBQztRQUVGLElBQUksRUFBRSxDQUFDO0lBQ1gsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUU7UUFDN0IsSUFBSSxPQUFPLEdBQUcsQ0FBQyxFQUNYLFFBQVEsR0FBRyxFQUFFLEVBQ2IsUUFBUSxHQUFHLEVBQUUsRUFDYixHQUFHLEdBQUcsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUU5QixJQUFJLE1BQU0sR0FBRyxXQUFXLENBQUMsR0FBRyxFQUFFO1lBQzFCLE9BQU8sR0FBRyxPQUFPLEdBQUcsR0FBRyxDQUFDO1lBRXhCLElBQUksT0FBTyxJQUFJLENBQUMsRUFBRTtnQkFDZCxPQUFPLEdBQUcsQ0FBQyxDQUFDO2dCQUNaLGFBQWEsQ0FBQyxNQUFNLENBQUMsQ0FBQzthQUN6QjtZQUVELE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztRQUNwQyxDQUFDLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDakIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxrQkFBa0I7UUFDNUIsSUFBSSxHQUFHLEdBQUcsUUFBUSxDQUFDLGVBQWUsQ0FBQztRQUNuQyxPQUFPLENBQUMsTUFBTSxDQUFDLFdBQVcsSUFBSSxHQUFHLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsU0FBUyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQ3hFLENBQUM7SUFFTSxNQUFNLENBQUMsbUJBQW1CO1FBQzdCLElBQUksR0FBRyxHQUFHLFFBQVEsQ0FBQyxlQUFlLENBQUM7UUFDbkMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxXQUFXLElBQUksR0FBRyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLFVBQVUsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRU0sTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsUUFBZ0I7UUFDM0MsSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDLFNBQVMsQ0FBQztRQUMxQixJQUFJLENBQUMsR0FDRCxDQUFDLENBQUMsU0FBUyxDQUFDO1lBQ1osQ0FBQyxDQUFDLHFCQUFxQjtZQUN2QixDQUFDLENBQUMsb0JBQW9CLENBQUM7WUFDdkIsQ0FBQyxDQUFDLG1CQUFtQixDQUFDO1lBQ3RCLFVBQVUsQ0FBQztnQkFDUCxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUN0RSxDQUFDLENBQUM7UUFDTixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFTSxNQUFNLENBQUMsYUFBYSxDQUFDLEVBQUUsRUFBRSxNQUFPO1FBQ25DLElBQUksS0FBSyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUM7UUFFM0IsSUFBSSxNQUFNLEVBQUU7WUFDUixJQUFJLEtBQUssR0FBRyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUNqQyxLQUFLLElBQUksVUFBVSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQ3pFO1FBRUQsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFO1FBQ2pDLElBQUksS0FBSyxHQUFHLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2pDLE9BQU8sVUFBVSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFTSxNQUFNLENBQUMsbUJBQW1CLENBQUMsRUFBRTtRQUNoQyxJQUFJLEtBQUssR0FBRyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNqQyxPQUFPLFVBQVUsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRU0sTUFBTSxDQUFDLFVBQVUsQ0FBQyxFQUFFO1FBQ3ZCLElBQUksS0FBSyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUM7UUFDM0IsSUFBSSxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFakMsS0FBSyxJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN4RSxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBRU0sTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQ2xCLElBQUksS0FBSyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUM7UUFDM0IsSUFBSSxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFakMsS0FBSyxJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUN4RSxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDO0lBRU0sTUFBTSxDQUFDLGNBQWMsQ0FBQyxFQUFFO1FBQzNCLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUM7UUFDN0IsSUFBSSxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFakMsTUFBTSxJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN6RSxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0lBRU0sTUFBTSxDQUFDLGNBQWMsQ0FBQyxFQUFFLEVBQUUsTUFBTztRQUNwQyxJQUFJLE1BQU0sR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDO1FBRTdCLElBQUksTUFBTSxFQUFFO1lBQ1IsSUFBSSxLQUFLLEdBQUcsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDakMsTUFBTSxJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUMxRTtRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFFTSxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQUU7UUFDdEIsSUFBSSxNQUFNLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQztRQUM3QixJQUFJLEtBQUssR0FBRyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUVqQyxNQUFNLElBQUksVUFBVSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRWxKLE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFFTSxNQUFNLENBQUMsUUFBUSxDQUFDLEVBQUU7UUFDckIsSUFBSSxLQUFLLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQztRQUMzQixJQUFJLEtBQUssR0FBRyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUVqQyxLQUFLLElBQUksVUFBVSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBRWpKLE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFTSxNQUFNLENBQUMsV0FBVztRQUNyQixJQUFJLEdBQUcsR0FBRyxNQUFNLEVBQ1osQ0FBQyxHQUFHLFFBQVEsRUFDWixDQUFDLEdBQUcsQ0FBQyxDQUFDLGVBQWUsRUFDckIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFDckMsQ0FBQyxHQUFHLEdBQUcsQ0FBQyxVQUFVLElBQUksQ0FBQyxDQUFDLFdBQVcsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUNwRCxDQUFDLEdBQUcsR0FBRyxDQUFDLFdBQVcsSUFBSSxDQUFDLENBQUMsWUFBWSxJQUFJLENBQUMsQ0FBQyxZQUFZLENBQUM7UUFFNUQsT0FBTyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFTSxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQUU7UUFDdEIsSUFBSSxJQUFJLEdBQUcsRUFBRSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFFdEMsT0FBTztZQUNILEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLFdBQVcsSUFBSSxRQUFRLENBQUMsZUFBZSxDQUFDLFNBQVMsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsSUFBSSxDQUFDLENBQUM7WUFDMUcsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsV0FBVyxJQUFJLFFBQVEsQ0FBQyxlQUFlLENBQUMsVUFBVSxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsVUFBVSxJQUFJLENBQUMsQ0FBQztTQUNqSCxDQUFDO0lBQ04sQ0FBQztJQUVNLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxPQUFZLEVBQUUsa0JBQXVCO1FBQ2xFLElBQUksVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLENBQUM7UUFDcEMsSUFBSSxDQUFDLFVBQVU7WUFBRSxNQUFNLHVCQUF1QixDQUFDO1FBQy9DLE9BQU8sVUFBVSxDQUFDLFlBQVksQ0FBQyxrQkFBa0IsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRU0sTUFBTSxDQUFDLFlBQVk7UUFDdEIsSUFBSSxTQUFTLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFO1lBQzlCLE9BQU8sU0FBUyxDQUFDLFNBQVMsQ0FBQztTQUM5QjtJQUNMLENBQUM7SUFFTSxNQUFNLENBQUMsSUFBSTtRQUNkLElBQUksRUFBRSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDO1FBRXBDLElBQUksSUFBSSxHQUFHLEVBQUUsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDL0IsSUFBSSxJQUFJLEdBQUcsQ0FBQyxFQUFFO1lBQ1YsMENBQTBDO1lBQzFDLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFFRCxJQUFJLE9BQU8sR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3JDLElBQUksT0FBTyxHQUFHLENBQUMsRUFBRTtZQUNiLGlDQUFpQztZQUNqQyxJQUFJLEVBQUUsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzNCLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7UUFFRCxJQUFJLElBQUksR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQy9CLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRTtZQUNWLHlDQUF5QztZQUN6QyxPQUFPLElBQUksQ0FBQztTQUNmO1FBRUQsZ0JBQWdCO1FBQ2hCLE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFTSxNQUFNLENBQUMsS0FBSztRQUNmLE9BQU8sa0JBQWtCLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRU0sTUFBTSxDQUFDLFNBQVM7UUFDbkIsT0FBTyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRU0sTUFBTSxDQUFDLGFBQWE7UUFDdkIsT0FBTyxjQUFjLElBQUksTUFBTSxJQUFJLFNBQVMsQ0FBQyxjQUFjLEdBQUcsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFTSxNQUFNLENBQUMsV0FBVyxDQUFDLE9BQVksRUFBRSxNQUFXO1FBQy9DLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUM7WUFBRSxNQUFNLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQ25ELElBQUksTUFBTSxDQUFDLEVBQUUsSUFBSSxNQUFNLENBQUMsRUFBRSxDQUFDLGFBQWE7WUFBRSxNQUFNLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7O1lBQ3ZGLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxHQUFHLE1BQU0sR0FBRyxPQUFPLENBQUM7SUFDNUQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxXQUFXLENBQUMsT0FBWSxFQUFFLE1BQVc7UUFDL0MsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQztZQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDbkQsSUFBSSxNQUFNLENBQUMsRUFBRSxJQUFJLE1BQU0sQ0FBQyxFQUFFLENBQUMsYUFBYTtZQUFFLE1BQU0sQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQzs7WUFDdkYsTUFBTSxnQkFBZ0IsR0FBRyxPQUFPLEdBQUcsUUFBUSxHQUFHLE1BQU0sQ0FBQztJQUM5RCxDQUFDO0lBRU0sTUFBTSxDQUFDLGFBQWEsQ0FBQyxPQUFnQjtRQUN4QyxJQUFJLENBQUMsQ0FBQyxRQUFRLElBQUksT0FBTyxDQUFDLFNBQVMsQ0FBQztZQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDOztZQUN6RSxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxTQUFTLENBQUMsR0FBUTtRQUM1QixPQUFPLE9BQU8sV0FBVyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsR0FBRyxZQUFZLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsSUFBSSxHQUFHLEtBQUssSUFBSSxJQUFJLEdBQUcsQ0FBQyxRQUFRLEtBQUssQ0FBQyxJQUFJLE9BQU8sR0FBRyxDQUFDLFFBQVEsS0FBSyxRQUFRLENBQUM7SUFDbkwsQ0FBQztJQUVNLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxFQUFnQjtRQUNsRCxJQUFJLEVBQUUsRUFBRTtZQUNKLElBQUksS0FBSyxHQUFHLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ2pDLE9BQU8sRUFBRSxDQUFDLFdBQVcsR0FBRyxFQUFFLENBQUMsV0FBVyxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1NBQ25IO2FBQU07WUFDSCxJQUFJLElBQUksQ0FBQyx3QkFBd0IsS0FBSyxJQUFJO2dCQUFFLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixDQUFDO1lBRWpGLElBQUksU0FBUyxHQUFHLFFBQVEsQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDOUMsU0FBUyxDQUFDLFNBQVMsR0FBRyxxQkFBcUIsQ0FBQztZQUM1QyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUVyQyxJQUFJLGNBQWMsR0FBRyxTQUFTLENBQUMsV0FBVyxHQUFHLFNBQVMsQ0FBQyxXQUFXLENBQUM7WUFDbkUsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUM7WUFFckMsSUFBSSxDQUFDLHdCQUF3QixHQUFHLGNBQWMsQ0FBQztZQUUvQyxPQUFPLGNBQWMsQ0FBQztTQUN6QjtJQUNMLENBQUM7SUFFTSxNQUFNLENBQUMsd0JBQXdCO1FBQ2xDLElBQUksSUFBSSxDQUFDLHlCQUF5QixLQUFLLElBQUk7WUFBRSxPQUFPLElBQUksQ0FBQyx5QkFBeUIsQ0FBQztRQUVuRixJQUFJLFNBQVMsR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzlDLFNBQVMsQ0FBQyxTQUFTLEdBQUcscUJBQXFCLENBQUM7UUFDNUMsUUFBUSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFckMsSUFBSSxlQUFlLEdBQUcsU0FBUyxDQUFDLFlBQVksR0FBRyxTQUFTLENBQUMsWUFBWSxDQUFDO1FBQ3RFLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRXJDLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxlQUFlLENBQUM7UUFFaEQsT0FBTyxlQUFlLENBQUM7SUFDM0IsQ0FBQztJQUVNLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxPQUFZLEVBQUUsVUFBa0IsRUFBRSxJQUFZO1FBQzNFLE9BQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFTSxNQUFNLENBQUMsY0FBYztRQUN4QixJQUFJLE1BQU0sQ0FBQyxZQUFZLEVBQUU7WUFDckIsSUFBSSxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUMsS0FBSyxFQUFFO2dCQUM3QixNQUFNLENBQUMsWUFBWSxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDakM7aUJBQU0sSUFBSSxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUMsZUFBZSxJQUFJLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxVQUFVLEdBQUcsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsY0FBYyxFQUFFLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDekosTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDLGVBQWUsRUFBRSxDQUFDO2FBQzNDO1NBQ0o7YUFBTSxJQUFJLFFBQVEsQ0FBQyxXQUFXLENBQUMsSUFBSSxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUMsS0FBSyxFQUFFO1lBQzdELElBQUk7Z0JBQ0EsUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO2FBQ2pDO1lBQUMsT0FBTyxLQUFLLEVBQUU7Z0JBQ1osZUFBZTthQUNsQjtTQUNKO0lBQ0wsQ0FBQztJQUVNLE1BQU0sQ0FBQyxVQUFVO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2YsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDdEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFFbEIsSUFBSSxPQUFPLENBQUMsT0FBTyxFQUFFO2dCQUNqQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsR0FBRyxJQUFJLENBQUM7Z0JBQ3JDLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQzthQUM3QztZQUVELElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsRUFBRTtnQkFDeEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsR0FBRyxJQUFJLENBQUM7YUFDakM7aUJBQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxFQUFFO2dCQUMvQixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxHQUFHLElBQUksQ0FBQzthQUNqQztTQUNKO1FBRUQsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3hCLENBQUM7SUFFTSxNQUFNLENBQUMsZ0JBQWdCO1FBQzFCLElBQUksRUFBRSxHQUFHLFNBQVMsQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDM0MsSUFBSSxLQUFLLEdBQ0wsdUJBQXVCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLHVCQUF1QixDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxvQ0FBb0MsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksaUJBQWlCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksK0JBQStCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO1FBRTVPLE9BQU87WUFDSCxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUU7WUFDdkIsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHO1NBQzNCLENBQUM7SUFDTixDQUFDO0lBRU0sTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLO1FBQ3pCLElBQUksTUFBTSxDQUFDLFNBQVMsRUFBRTtZQUNsQixPQUFPLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDbEM7YUFBTTtZQUNILE9BQU8sT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFLLEtBQUssQ0FBQztTQUN0RjtJQUNMLENBQUM7SUFFTSxNQUFNLENBQUMsUUFBUSxDQUFDLE9BQW9CO1FBQ3ZDLE9BQU8sQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLFlBQVksS0FBSyxJQUFJLENBQUM7SUFDckQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxTQUFTLENBQUMsT0FBb0I7UUFDeEMsT0FBTyxPQUFPLElBQUksT0FBTyxDQUFDLFlBQVksSUFBSSxJQUFJLENBQUM7SUFDbkQsQ0FBQztJQUVNLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBb0I7UUFDdEMsT0FBTyxPQUFPLEtBQUssSUFBSSxJQUFJLE9BQU8sT0FBTyxLQUFLLFdBQVcsSUFBSSxPQUFPLENBQUMsUUFBUSxJQUFJLE9BQU8sQ0FBQyxVQUFVLENBQUM7SUFDeEcsQ0FBQztJQUVNLE1BQU0sQ0FBQyxLQUFLLENBQUMsT0FBb0IsRUFBRSxPQUFzQjtRQUM1RCxPQUFPLElBQUksUUFBUSxDQUFDLGFBQWEsS0FBSyxPQUFPLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRU0sTUFBTSxDQUFDLG9CQUFvQixDQUFDLE9BQW9CO1FBQ25ELElBQUksaUJBQWlCLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FDbkMsT0FBTyxFQUNQOzs7O3FJQUl5SCxDQUM1SCxDQUFDO1FBRUYsSUFBSSx3QkFBd0IsR0FBRyxFQUFFLENBQUM7UUFDbEMsS0FBSyxJQUFJLGdCQUFnQixJQUFJLGlCQUFpQixFQUFFO1lBQzVDLElBQUksQ0FBQyxDQUFDLENBQUMsZ0JBQWdCLENBQUMsV0FBVyxJQUFJLGdCQUFnQixDQUFDLFlBQVksSUFBSSxnQkFBZ0IsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxNQUFNLENBQUM7Z0JBQUUsd0JBQXdCLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUM7U0FDdEs7UUFDRCxPQUFPLHdCQUF3QixDQUFDO0lBQ3BDLENBQUM7SUFFTSxNQUFNLENBQUMsdUJBQXVCLENBQUMsT0FBb0IsRUFBRSxPQUFPLEdBQUcsS0FBSztRQUN2RSxNQUFNLGlCQUFpQixHQUFHLFVBQVUsQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNuRSxJQUFJLEtBQUssR0FBRyxDQUFDLENBQUM7UUFDZCxJQUFJLGlCQUFpQixJQUFJLGlCQUFpQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDbkQsTUFBTSxZQUFZLEdBQUcsaUJBQWlCLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUVqRyxJQUFJLE9BQU8sRUFBRTtnQkFDVCxJQUFJLFlBQVksSUFBSSxDQUFDLENBQUMsSUFBSSxZQUFZLEtBQUssQ0FBQyxFQUFFO29CQUMxQyxLQUFLLEdBQUcsaUJBQWlCLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztpQkFDeEM7cUJBQU07b0JBQ0gsS0FBSyxHQUFHLFlBQVksR0FBRyxDQUFDLENBQUM7aUJBQzVCO2FBQ0o7aUJBQU0sSUFBSSxZQUFZLElBQUksQ0FBQyxDQUFDLElBQUksWUFBWSxLQUFLLGlCQUFpQixDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQzVFLEtBQUssR0FBRyxZQUFZLEdBQUcsQ0FBQyxDQUFDO2FBQzVCO1NBQ0o7UUFFRCxPQUFPLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYztRQUNqQixJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLElBQUksR0FBRyxDQUFDO1FBQ2pDLE9BQU8sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxNQUFNLENBQUMsWUFBWTtRQUN0QixJQUFJLE1BQU0sQ0FBQyxZQUFZO1lBQUUsT0FBTyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUM7YUFDNUQsSUFBSSxRQUFRLENBQUMsWUFBWTtZQUFFLE9BQU8sUUFBUSxDQUFDLFlBQVksRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDO2FBQ3JFLElBQUksUUFBUSxDQUFDLFdBQVcsQ0FBQztZQUFFLE9BQU8sUUFBUSxDQUFDLFdBQVcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDLElBQUksQ0FBQztRQUVoRixPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRU0sTUFBTSxDQUFDLGdCQUFnQixDQUFDLE1BQVcsRUFBRSxFQUFnQjtRQUN4RCxJQUFJLENBQUMsTUFBTTtZQUFFLE9BQU8sSUFBSSxDQUFDO1FBRXpCLFFBQVEsTUFBTSxFQUFFO1lBQ1osS0FBSyxVQUFVO2dCQUNYLE9BQU8sUUFBUSxDQUFDO1lBQ3BCLEtBQUssUUFBUTtnQkFDVCxPQUFPLE1BQU0sQ0FBQztZQUNsQixLQUFLLE9BQU87Z0JBQ1IsT0FBTyxFQUFFLEVBQUUsa0JBQWtCLENBQUM7WUFDbEMsS0FBSyxPQUFPO2dCQUNSLE9BQU8sRUFBRSxFQUFFLHNCQUFzQixDQUFDO1lBQ3RDLEtBQUssU0FBUztnQkFDVixPQUFPLEVBQUUsRUFBRSxhQUFhLENBQUM7WUFDN0IsS0FBSyxjQUFjO2dCQUNmLE9BQU8sRUFBRSxFQUFFLGFBQWEsQ0FBQyxhQUFhLENBQUM7WUFDM0M7Z0JBQ0ksTUFBTSxJQUFJLEdBQUcsT0FBTyxNQUFNLENBQUM7Z0JBRTNCLElBQUksSUFBSSxLQUFLLFFBQVEsRUFBRTtvQkFDbkIsT0FBTyxRQUFRLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2lCQUN6QztxQkFBTSxJQUFJLElBQUksS0FBSyxRQUFRLElBQUksTUFBTSxDQUFDLGNBQWMsQ0FBQyxlQUFlLENBQUMsRUFBRTtvQkFDcEUsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO2lCQUNoRjtnQkFFRCxNQUFNLFVBQVUsR0FBRyxDQUFDLEdBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxXQUFXLElBQUksR0FBRyxDQUFDLElBQUksSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQ3JGLE1BQU0sT0FBTyxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztnQkFFdkQsT0FBTyxDQUFDLE9BQU8sSUFBSSxPQUFPLENBQUMsUUFBUSxLQUFLLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1NBQzVGO0lBQ0wsQ0FBQztJQUVNLE1BQU0sQ0FBQyxRQUFRO1FBQ2xCLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxNQUFNLEtBQUssV0FBVyxJQUFJLE1BQU0sQ0FBQyxRQUFRLElBQUksTUFBTSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNqRyxDQUFDOztBQTNxQmEsaUJBQU0sR0FBVyxJQUFJLENBQUM7QUFFckIsbUNBQXdCLEdBQVcsSUFBSSxDQUFDO0FBRXhDLG9DQUF5QixHQUFXLElBQUksQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGR5bmFtaWMgaXMgZm9yIHJ1bnRpbWUgaW5pdGlhbGl6aW5nIERvbUhhbmRsZXIuYnJvd3NlclxuICpcbiAqIElmIGRlbGV0ZSBiZWxvdyBjb21tZW50LCB3ZSBjYW4gc2VlIHRoaXMgZXJyb3IgbWVzc2FnZTpcbiAqICBNZXRhZGF0YSBjb2xsZWN0ZWQgY29udGFpbnMgYW4gZXJyb3IgdGhhdCB3aWxsIGJlIHJlcG9ydGVkIGF0IHJ1bnRpbWU6XG4gKiAgT25seSBpbml0aWFsaXplZCB2YXJpYWJsZXMgYW5kIGNvbnN0YW50cyBjYW4gYmUgcmVmZXJlbmNlZFxuICogIGJlY2F1c2UgdGhlIHZhbHVlIG9mIHRoaXMgdmFyaWFibGUgaXMgbmVlZGVkIGJ5IHRoZSB0ZW1wbGF0ZSBjb21waWxlci5cbiAqL1xuLy8gQGR5bmFtaWNcbmV4cG9ydCBjbGFzcyBEb21IYW5kbGVyIHtcbiAgICBwdWJsaWMgc3RhdGljIHppbmRleDogbnVtYmVyID0gMTAwMDtcblxuICAgIHByaXZhdGUgc3RhdGljIGNhbGN1bGF0ZWRTY3JvbGxiYXJXaWR0aDogbnVtYmVyID0gbnVsbDtcblxuICAgIHByaXZhdGUgc3RhdGljIGNhbGN1bGF0ZWRTY3JvbGxiYXJIZWlnaHQ6IG51bWJlciA9IG51bGw7XG5cbiAgICBwcml2YXRlIHN0YXRpYyBicm93c2VyOiBhbnk7XG5cbiAgICBwdWJsaWMgc3RhdGljIGFkZENsYXNzKGVsZW1lbnQ6IGFueSwgY2xhc3NOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgaWYgKGVsZW1lbnQgJiYgY2xhc3NOYW1lKSB7XG4gICAgICAgICAgICBpZiAoZWxlbWVudC5jbGFzc0xpc3QpIGVsZW1lbnQuY2xhc3NMaXN0LmFkZChjbGFzc05hbWUpO1xuICAgICAgICAgICAgZWxzZSBlbGVtZW50LmNsYXNzTmFtZSArPSAnICcgKyBjbGFzc05hbWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGFkZE11bHRpcGxlQ2xhc3NlcyhlbGVtZW50OiBhbnksIGNsYXNzTmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIGlmIChlbGVtZW50ICYmIGNsYXNzTmFtZSkge1xuICAgICAgICAgICAgaWYgKGVsZW1lbnQuY2xhc3NMaXN0KSB7XG4gICAgICAgICAgICAgICAgbGV0IHN0eWxlczogc3RyaW5nW10gPSBjbGFzc05hbWUudHJpbSgpLnNwbGl0KCcgJyk7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBzdHlsZXMubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgICAgICAgICAgZWxlbWVudC5jbGFzc0xpc3QuYWRkKHN0eWxlc1tpXSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICBsZXQgc3R5bGVzOiBzdHJpbmdbXSA9IGNsYXNzTmFtZS5zcGxpdCgnICcpO1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgc3R5bGVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgICAgIGVsZW1lbnQuY2xhc3NOYW1lICs9ICcgJyArIHN0eWxlc1tpXTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHJlbW92ZUNsYXNzKGVsZW1lbnQ6IGFueSwgY2xhc3NOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgaWYgKGVsZW1lbnQgJiYgY2xhc3NOYW1lKSB7XG4gICAgICAgICAgICBpZiAoZWxlbWVudC5jbGFzc0xpc3QpIGVsZW1lbnQuY2xhc3NMaXN0LnJlbW92ZShjbGFzc05hbWUpO1xuICAgICAgICAgICAgZWxzZSBlbGVtZW50LmNsYXNzTmFtZSA9IGVsZW1lbnQuY2xhc3NOYW1lLnJlcGxhY2UobmV3IFJlZ0V4cCgnKF58XFxcXGIpJyArIGNsYXNzTmFtZS5zcGxpdCgnICcpLmpvaW4oJ3wnKSArICcoXFxcXGJ8JCknLCAnZ2knKSwgJyAnKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgaGFzQ2xhc3MoZWxlbWVudDogYW55LCBjbGFzc05hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoZWxlbWVudCAmJiBjbGFzc05hbWUpIHtcbiAgICAgICAgICAgIGlmIChlbGVtZW50LmNsYXNzTGlzdCkgcmV0dXJuIGVsZW1lbnQuY2xhc3NMaXN0LmNvbnRhaW5zKGNsYXNzTmFtZSk7XG4gICAgICAgICAgICBlbHNlIHJldHVybiBuZXcgUmVnRXhwKCcoXnwgKScgKyBjbGFzc05hbWUgKyAnKCB8JCknLCAnZ2knKS50ZXN0KGVsZW1lbnQuY2xhc3NOYW1lKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHNpYmxpbmdzKGVsZW1lbnQ6IGFueSk6IGFueSB7XG4gICAgICAgIHJldHVybiBBcnJheS5wcm90b3R5cGUuZmlsdGVyLmNhbGwoZWxlbWVudC5wYXJlbnROb2RlLmNoaWxkcmVuLCBmdW5jdGlvbiAoY2hpbGQpIHtcbiAgICAgICAgICAgIHJldHVybiBjaGlsZCAhPT0gZWxlbWVudDtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBmaW5kKGVsZW1lbnQ6IGFueSwgc2VsZWN0b3I6IHN0cmluZyk6IGFueVtdIHtcbiAgICAgICAgcmV0dXJuIEFycmF5LmZyb20oZWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKHNlbGVjdG9yKSk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBmaW5kU2luZ2xlKGVsZW1lbnQ6IGFueSwgc2VsZWN0b3I6IHN0cmluZyk6IGFueSB7XG4gICAgICAgIGlmIChlbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm4gZWxlbWVudC5xdWVyeVNlbGVjdG9yKHNlbGVjdG9yKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGluZGV4KGVsZW1lbnQ6IGFueSk6IG51bWJlciB7XG4gICAgICAgIGxldCBjaGlsZHJlbiA9IGVsZW1lbnQucGFyZW50Tm9kZS5jaGlsZE5vZGVzO1xuICAgICAgICBsZXQgbnVtID0gMDtcbiAgICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCBjaGlsZHJlbi5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgaWYgKGNoaWxkcmVuW2ldID09IGVsZW1lbnQpIHJldHVybiBudW07XG4gICAgICAgICAgICBpZiAoY2hpbGRyZW5baV0ubm9kZVR5cGUgPT0gMSkgbnVtKys7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIC0xO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgaW5kZXhXaXRoaW5Hcm91cChlbGVtZW50OiBhbnksIGF0dHJpYnV0ZU5hbWU6IHN0cmluZyk6IG51bWJlciB7XG4gICAgICAgIGxldCBjaGlsZHJlbiA9IGVsZW1lbnQucGFyZW50Tm9kZSA/IGVsZW1lbnQucGFyZW50Tm9kZS5jaGlsZE5vZGVzIDogW107XG4gICAgICAgIGxldCBudW0gPSAwO1xuICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICBpZiAoY2hpbGRyZW5baV0gPT0gZWxlbWVudCkgcmV0dXJuIG51bTtcbiAgICAgICAgICAgIGlmIChjaGlsZHJlbltpXS5hdHRyaWJ1dGVzICYmIGNoaWxkcmVuW2ldLmF0dHJpYnV0ZXNbYXR0cmlidXRlTmFtZV0gJiYgY2hpbGRyZW5baV0ubm9kZVR5cGUgPT0gMSkgbnVtKys7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIC0xO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgYXBwZW5kT3ZlcmxheShvdmVybGF5OiBhbnksIHRhcmdldDogYW55LCBhcHBlbmRUbzogYW55ID0gJ3NlbGYnKSB7XG4gICAgICAgIGlmIChhcHBlbmRUbyAhPT0gJ3NlbGYnICYmIG92ZXJsYXkgJiYgdGFyZ2V0KSB7XG4gICAgICAgICAgICB0aGlzLmFwcGVuZENoaWxkKG92ZXJsYXksIHRhcmdldCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGFsaWduT3ZlcmxheShvdmVybGF5OiBhbnksIHRhcmdldDogYW55LCBhcHBlbmRUbzogYW55ID0gJ3NlbGYnLCBjYWxjdWxhdGVNaW5XaWR0aDogYm9vbGVhbiA9IHRydWUpIHtcbiAgICAgICAgaWYgKG92ZXJsYXkgJiYgdGFyZ2V0KSB7XG4gICAgICAgICAgICBpZiAoY2FsY3VsYXRlTWluV2lkdGgpIHtcbiAgICAgICAgICAgICAgICBvdmVybGF5LnN0eWxlLm1pbldpZHRoID0gYCR7RG9tSGFuZGxlci5nZXRPdXRlcldpZHRoKHRhcmdldCl9cHhgO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoYXBwZW5kVG8gPT09ICdzZWxmJykge1xuICAgICAgICAgICAgICAgIHRoaXMucmVsYXRpdmVQb3NpdGlvbihvdmVybGF5LCB0YXJnZXQpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmFic29sdXRlUG9zaXRpb24ob3ZlcmxheSwgdGFyZ2V0KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgcmVsYXRpdmVQb3NpdGlvbihlbGVtZW50OiBhbnksIHRhcmdldDogYW55KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGdldENsb3Nlc3RSZWxhdGl2ZUVsZW1lbnQgPSAoZWwpID0+IHtcbiAgICAgICAgICAgIGlmICghZWwpIHJldHVybjtcblxuICAgICAgICAgICAgcmV0dXJuIGdldENvbXB1dGVkU3R5bGUoZWwpLmdldFByb3BlcnR5VmFsdWUoJ3Bvc2l0aW9uJykgPT09ICdyZWxhdGl2ZScgPyBlbCA6IGdldENsb3Nlc3RSZWxhdGl2ZUVsZW1lbnQoZWwucGFyZW50RWxlbWVudCk7XG4gICAgICAgIH07XG5cbiAgICAgICAgY29uc3QgZWxlbWVudERpbWVuc2lvbnMgPSBlbGVtZW50Lm9mZnNldFBhcmVudCA/IHsgd2lkdGg6IGVsZW1lbnQub2Zmc2V0V2lkdGgsIGhlaWdodDogZWxlbWVudC5vZmZzZXRIZWlnaHQgfSA6IHRoaXMuZ2V0SGlkZGVuRWxlbWVudERpbWVuc2lvbnMoZWxlbWVudCk7XG4gICAgICAgIGNvbnN0IHRhcmdldEhlaWdodCA9IHRhcmdldC5vZmZzZXRIZWlnaHQ7XG4gICAgICAgIGNvbnN0IHRhcmdldE9mZnNldCA9IHRhcmdldC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3Qgd2luZG93U2Nyb2xsVG9wID0gdGhpcy5nZXRXaW5kb3dTY3JvbGxUb3AoKTtcbiAgICAgICAgY29uc3Qgd2luZG93U2Nyb2xsTGVmdCA9IHRoaXMuZ2V0V2luZG93U2Nyb2xsTGVmdCgpO1xuICAgICAgICBjb25zdCB2aWV3cG9ydCA9IHRoaXMuZ2V0Vmlld3BvcnQoKTtcbiAgICAgICAgY29uc3QgcmVsYXRpdmVFbGVtZW50ID0gZ2V0Q2xvc2VzdFJlbGF0aXZlRWxlbWVudChlbGVtZW50KTtcbiAgICAgICAgY29uc3QgcmVsYXRpdmVFbGVtZW50T2Zmc2V0ID0gcmVsYXRpdmVFbGVtZW50Py5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKSB8fCB7IHRvcDogLTEgKiB3aW5kb3dTY3JvbGxUb3AsIGxlZnQ6IC0xICogd2luZG93U2Nyb2xsTGVmdCB9O1xuICAgICAgICBsZXQgdG9wOiBudW1iZXIsIGxlZnQ6IG51bWJlcjtcblxuICAgICAgICBpZiAodGFyZ2V0T2Zmc2V0LnRvcCArIHRhcmdldEhlaWdodCArIGVsZW1lbnREaW1lbnNpb25zLmhlaWdodCA+IHZpZXdwb3J0LmhlaWdodCkge1xuICAgICAgICAgICAgdG9wID0gdGFyZ2V0T2Zmc2V0LnRvcCAtIHJlbGF0aXZlRWxlbWVudE9mZnNldC50b3AgLSBlbGVtZW50RGltZW5zaW9ucy5oZWlnaHQ7XG4gICAgICAgICAgICBlbGVtZW50LnN0eWxlLnRyYW5zZm9ybU9yaWdpbiA9ICdib3R0b20nO1xuICAgICAgICAgICAgaWYgKHRhcmdldE9mZnNldC50b3AgKyB0b3AgPCAwKSB7XG4gICAgICAgICAgICAgICAgdG9wID0gLTEgKiB0YXJnZXRPZmZzZXQudG9wO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdG9wID0gdGFyZ2V0SGVpZ2h0ICsgdGFyZ2V0T2Zmc2V0LnRvcCAtIHJlbGF0aXZlRWxlbWVudE9mZnNldC50b3A7XG4gICAgICAgICAgICBlbGVtZW50LnN0eWxlLnRyYW5zZm9ybU9yaWdpbiA9ICd0b3AnO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGVsZW1lbnREaW1lbnNpb25zLndpZHRoID4gdmlld3BvcnQud2lkdGgpIHtcbiAgICAgICAgICAgIC8vIGVsZW1lbnQgd2lkZXIgdGhlbiB2aWV3cG9ydCBhbmQgY2Fubm90IGZpdCBvbiBzY3JlZW4gKGFsaWduIGF0IGxlZnQgc2lkZSBvZiB2aWV3cG9ydClcbiAgICAgICAgICAgIGxlZnQgPSAodGFyZ2V0T2Zmc2V0LmxlZnQgLSByZWxhdGl2ZUVsZW1lbnRPZmZzZXQubGVmdCkgKiAtMTtcbiAgICAgICAgfSBlbHNlIGlmICh0YXJnZXRPZmZzZXQubGVmdCAtIHJlbGF0aXZlRWxlbWVudE9mZnNldC5sZWZ0ICsgZWxlbWVudERpbWVuc2lvbnMud2lkdGggPiB2aWV3cG9ydC53aWR0aCkge1xuICAgICAgICAgICAgLy8gZWxlbWVudCB3aWRlciB0aGVuIHZpZXdwb3J0IGJ1dCBjYW4gYmUgZml0IG9uIHNjcmVlbiAoYWxpZ24gYXQgcmlnaHQgc2lkZSBvZiB2aWV3cG9ydClcbiAgICAgICAgICAgIGxlZnQgPSAodGFyZ2V0T2Zmc2V0LmxlZnQgLSByZWxhdGl2ZUVsZW1lbnRPZmZzZXQubGVmdCArIGVsZW1lbnREaW1lbnNpb25zLndpZHRoIC0gdmlld3BvcnQud2lkdGgpICogLTE7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBlbGVtZW50IGZpdHMgb24gc2NyZWVuIChhbGlnbiB3aXRoIHRhcmdldClcbiAgICAgICAgICAgIGxlZnQgPSB0YXJnZXRPZmZzZXQubGVmdCAtIHJlbGF0aXZlRWxlbWVudE9mZnNldC5sZWZ0O1xuICAgICAgICB9XG5cbiAgICAgICAgZWxlbWVudC5zdHlsZS50b3AgPSB0b3AgKyAncHgnO1xuICAgICAgICBlbGVtZW50LnN0eWxlLmxlZnQgPSBsZWZ0ICsgJ3B4JztcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGFic29sdXRlUG9zaXRpb24oZWxlbWVudDogYW55LCB0YXJnZXQ6IGFueSk6IHZvaWQge1xuICAgICAgICBjb25zdCBlbGVtZW50RGltZW5zaW9ucyA9IGVsZW1lbnQub2Zmc2V0UGFyZW50ID8geyB3aWR0aDogZWxlbWVudC5vZmZzZXRXaWR0aCwgaGVpZ2h0OiBlbGVtZW50Lm9mZnNldEhlaWdodCB9IDogdGhpcy5nZXRIaWRkZW5FbGVtZW50RGltZW5zaW9ucyhlbGVtZW50KTtcbiAgICAgICAgY29uc3QgZWxlbWVudE91dGVySGVpZ2h0ID0gZWxlbWVudERpbWVuc2lvbnMuaGVpZ2h0O1xuICAgICAgICBjb25zdCBlbGVtZW50T3V0ZXJXaWR0aCA9IGVsZW1lbnREaW1lbnNpb25zLndpZHRoO1xuICAgICAgICBjb25zdCB0YXJnZXRPdXRlckhlaWdodCA9IHRhcmdldC5vZmZzZXRIZWlnaHQ7XG4gICAgICAgIGNvbnN0IHRhcmdldE91dGVyV2lkdGggPSB0YXJnZXQub2Zmc2V0V2lkdGg7XG4gICAgICAgIGNvbnN0IHRhcmdldE9mZnNldCA9IHRhcmdldC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgY29uc3Qgd2luZG93U2Nyb2xsVG9wID0gdGhpcy5nZXRXaW5kb3dTY3JvbGxUb3AoKTtcbiAgICAgICAgY29uc3Qgd2luZG93U2Nyb2xsTGVmdCA9IHRoaXMuZ2V0V2luZG93U2Nyb2xsTGVmdCgpO1xuICAgICAgICBjb25zdCB2aWV3cG9ydCA9IHRoaXMuZ2V0Vmlld3BvcnQoKTtcbiAgICAgICAgbGV0IHRvcDogbnVtYmVyLCBsZWZ0OiBudW1iZXI7XG5cbiAgICAgICAgaWYgKHRhcmdldE9mZnNldC50b3AgKyB0YXJnZXRPdXRlckhlaWdodCArIGVsZW1lbnRPdXRlckhlaWdodCA+IHZpZXdwb3J0LmhlaWdodCkge1xuICAgICAgICAgICAgdG9wID0gdGFyZ2V0T2Zmc2V0LnRvcCArIHdpbmRvd1Njcm9sbFRvcCAtIGVsZW1lbnRPdXRlckhlaWdodDtcbiAgICAgICAgICAgIGVsZW1lbnQuc3R5bGUudHJhbnNmb3JtT3JpZ2luID0gJ2JvdHRvbSc7XG5cbiAgICAgICAgICAgIGlmICh0b3AgPCAwKSB7XG4gICAgICAgICAgICAgICAgdG9wID0gd2luZG93U2Nyb2xsVG9wO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdG9wID0gdGFyZ2V0T3V0ZXJIZWlnaHQgKyB0YXJnZXRPZmZzZXQudG9wICsgd2luZG93U2Nyb2xsVG9wO1xuICAgICAgICAgICAgZWxlbWVudC5zdHlsZS50cmFuc2Zvcm1PcmlnaW4gPSAndG9wJztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0YXJnZXRPZmZzZXQubGVmdCArIGVsZW1lbnRPdXRlcldpZHRoID4gdmlld3BvcnQud2lkdGgpIGxlZnQgPSBNYXRoLm1heCgwLCB0YXJnZXRPZmZzZXQubGVmdCArIHdpbmRvd1Njcm9sbExlZnQgKyB0YXJnZXRPdXRlcldpZHRoIC0gZWxlbWVudE91dGVyV2lkdGgpO1xuICAgICAgICBlbHNlIGxlZnQgPSB0YXJnZXRPZmZzZXQubGVmdCArIHdpbmRvd1Njcm9sbExlZnQ7XG5cbiAgICAgICAgZWxlbWVudC5zdHlsZS50b3AgPSB0b3AgKyAncHgnO1xuICAgICAgICBlbGVtZW50LnN0eWxlLmxlZnQgPSBsZWZ0ICsgJ3B4JztcbiAgICB9XG5cbiAgICBzdGF0aWMgZ2V0UGFyZW50cyhlbGVtZW50OiBhbnksIHBhcmVudHM6IGFueSA9IFtdKTogYW55IHtcbiAgICAgICAgcmV0dXJuIGVsZW1lbnRbJ3BhcmVudE5vZGUnXSA9PT0gbnVsbCA/IHBhcmVudHMgOiB0aGlzLmdldFBhcmVudHMoZWxlbWVudC5wYXJlbnROb2RlLCBwYXJlbnRzLmNvbmNhdChbZWxlbWVudC5wYXJlbnROb2RlXSkpO1xuICAgIH1cblxuICAgIHN0YXRpYyBnZXRTY3JvbGxhYmxlUGFyZW50cyhlbGVtZW50OiBhbnkpIHtcbiAgICAgICAgbGV0IHNjcm9sbGFibGVQYXJlbnRzID0gW107XG5cbiAgICAgICAgaWYgKGVsZW1lbnQpIHtcbiAgICAgICAgICAgIGxldCBwYXJlbnRzID0gdGhpcy5nZXRQYXJlbnRzKGVsZW1lbnQpO1xuICAgICAgICAgICAgY29uc3Qgb3ZlcmZsb3dSZWdleCA9IC8oYXV0b3xzY3JvbGwpLztcbiAgICAgICAgICAgIGNvbnN0IG92ZXJmbG93Q2hlY2sgPSAobm9kZTogYW55KSA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IHN0eWxlRGVjbGFyYXRpb24gPSB3aW5kb3dbJ2dldENvbXB1dGVkU3R5bGUnXShub2RlLCBudWxsKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gb3ZlcmZsb3dSZWdleC50ZXN0KHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnb3ZlcmZsb3cnKSkgfHwgb3ZlcmZsb3dSZWdleC50ZXN0KHN0eWxlRGVjbGFyYXRpb24uZ2V0UHJvcGVydHlWYWx1ZSgnb3ZlcmZsb3dYJykpIHx8IG92ZXJmbG93UmVnZXgudGVzdChzdHlsZURlY2xhcmF0aW9uLmdldFByb3BlcnR5VmFsdWUoJ292ZXJmbG93WScpKTtcbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGZvciAobGV0IHBhcmVudCBvZiBwYXJlbnRzKSB7XG4gICAgICAgICAgICAgICAgbGV0IHNjcm9sbFNlbGVjdG9ycyA9IHBhcmVudC5ub2RlVHlwZSA9PT0gMSAmJiBwYXJlbnQuZGF0YXNldFsnc2Nyb2xsc2VsZWN0b3JzJ107XG4gICAgICAgICAgICAgICAgaWYgKHNjcm9sbFNlbGVjdG9ycykge1xuICAgICAgICAgICAgICAgICAgICBsZXQgc2VsZWN0b3JzID0gc2Nyb2xsU2VsZWN0b3JzLnNwbGl0KCcsJyk7XG4gICAgICAgICAgICAgICAgICAgIGZvciAobGV0IHNlbGVjdG9yIG9mIHNlbGVjdG9ycykge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGVsID0gdGhpcy5maW5kU2luZ2xlKHBhcmVudCwgc2VsZWN0b3IpO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGVsICYmIG92ZXJmbG93Q2hlY2soZWwpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsYWJsZVBhcmVudHMucHVzaChlbCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAocGFyZW50Lm5vZGVUeXBlICE9PSA5ICYmIG92ZXJmbG93Q2hlY2socGFyZW50KSkge1xuICAgICAgICAgICAgICAgICAgICBzY3JvbGxhYmxlUGFyZW50cy5wdXNoKHBhcmVudCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHNjcm9sbGFibGVQYXJlbnRzO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0SGlkZGVuRWxlbWVudE91dGVySGVpZ2h0KGVsZW1lbnQ6IGFueSk6IG51bWJlciB7XG4gICAgICAgIGVsZW1lbnQuc3R5bGUudmlzaWJpbGl0eSA9ICdoaWRkZW4nO1xuICAgICAgICBlbGVtZW50LnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xuICAgICAgICBsZXQgZWxlbWVudEhlaWdodCA9IGVsZW1lbnQub2Zmc2V0SGVpZ2h0O1xuICAgICAgICBlbGVtZW50LnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gICAgICAgIGVsZW1lbnQuc3R5bGUudmlzaWJpbGl0eSA9ICd2aXNpYmxlJztcblxuICAgICAgICByZXR1cm4gZWxlbWVudEhlaWdodDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldEhpZGRlbkVsZW1lbnRPdXRlcldpZHRoKGVsZW1lbnQ6IGFueSk6IG51bWJlciB7XG4gICAgICAgIGVsZW1lbnQuc3R5bGUudmlzaWJpbGl0eSA9ICdoaWRkZW4nO1xuICAgICAgICBlbGVtZW50LnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xuICAgICAgICBsZXQgZWxlbWVudFdpZHRoID0gZWxlbWVudC5vZmZzZXRXaWR0aDtcbiAgICAgICAgZWxlbWVudC5zdHlsZS5kaXNwbGF5ID0gJ25vbmUnO1xuICAgICAgICBlbGVtZW50LnN0eWxlLnZpc2liaWxpdHkgPSAndmlzaWJsZSc7XG5cbiAgICAgICAgcmV0dXJuIGVsZW1lbnRXaWR0aDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldEhpZGRlbkVsZW1lbnREaW1lbnNpb25zKGVsZW1lbnQ6IGFueSk6IGFueSB7XG4gICAgICAgIGxldCBkaW1lbnNpb25zOiBhbnkgPSB7fTtcbiAgICAgICAgZWxlbWVudC5zdHlsZS52aXNpYmlsaXR5ID0gJ2hpZGRlbic7XG4gICAgICAgIGVsZW1lbnQuc3R5bGUuZGlzcGxheSA9ICdibG9jayc7XG4gICAgICAgIGRpbWVuc2lvbnMud2lkdGggPSBlbGVtZW50Lm9mZnNldFdpZHRoO1xuICAgICAgICBkaW1lbnNpb25zLmhlaWdodCA9IGVsZW1lbnQub2Zmc2V0SGVpZ2h0O1xuICAgICAgICBlbGVtZW50LnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gICAgICAgIGVsZW1lbnQuc3R5bGUudmlzaWJpbGl0eSA9ICd2aXNpYmxlJztcblxuICAgICAgICByZXR1cm4gZGltZW5zaW9ucztcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHNjcm9sbEluVmlldyhjb250YWluZXIsIGl0ZW0pIHtcbiAgICAgICAgbGV0IGJvcmRlclRvcFZhbHVlOiBzdHJpbmcgPSBnZXRDb21wdXRlZFN0eWxlKGNvbnRhaW5lcikuZ2V0UHJvcGVydHlWYWx1ZSgnYm9yZGVyVG9wV2lkdGgnKTtcbiAgICAgICAgbGV0IGJvcmRlclRvcDogbnVtYmVyID0gYm9yZGVyVG9wVmFsdWUgPyBwYXJzZUZsb2F0KGJvcmRlclRvcFZhbHVlKSA6IDA7XG4gICAgICAgIGxldCBwYWRkaW5nVG9wVmFsdWU6IHN0cmluZyA9IGdldENvbXB1dGVkU3R5bGUoY29udGFpbmVyKS5nZXRQcm9wZXJ0eVZhbHVlKCdwYWRkaW5nVG9wJyk7XG4gICAgICAgIGxldCBwYWRkaW5nVG9wOiBudW1iZXIgPSBwYWRkaW5nVG9wVmFsdWUgPyBwYXJzZUZsb2F0KHBhZGRpbmdUb3BWYWx1ZSkgOiAwO1xuICAgICAgICBsZXQgY29udGFpbmVyUmVjdCA9IGNvbnRhaW5lci5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgbGV0IGl0ZW1SZWN0ID0gaXRlbS5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcbiAgICAgICAgbGV0IG9mZnNldCA9IGl0ZW1SZWN0LnRvcCArIGRvY3VtZW50LmJvZHkuc2Nyb2xsVG9wIC0gKGNvbnRhaW5lclJlY3QudG9wICsgZG9jdW1lbnQuYm9keS5zY3JvbGxUb3ApIC0gYm9yZGVyVG9wIC0gcGFkZGluZ1RvcDtcbiAgICAgICAgbGV0IHNjcm9sbCA9IGNvbnRhaW5lci5zY3JvbGxUb3A7XG4gICAgICAgIGxldCBlbGVtZW50SGVpZ2h0ID0gY29udGFpbmVyLmNsaWVudEhlaWdodDtcbiAgICAgICAgbGV0IGl0ZW1IZWlnaHQgPSB0aGlzLmdldE91dGVySGVpZ2h0KGl0ZW0pO1xuXG4gICAgICAgIGlmIChvZmZzZXQgPCAwKSB7XG4gICAgICAgICAgICBjb250YWluZXIuc2Nyb2xsVG9wID0gc2Nyb2xsICsgb2Zmc2V0O1xuICAgICAgICB9IGVsc2UgaWYgKG9mZnNldCArIGl0ZW1IZWlnaHQgPiBlbGVtZW50SGVpZ2h0KSB7XG4gICAgICAgICAgICBjb250YWluZXIuc2Nyb2xsVG9wID0gc2Nyb2xsICsgb2Zmc2V0IC0gZWxlbWVudEhlaWdodCArIGl0ZW1IZWlnaHQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZhZGVJbihlbGVtZW50LCBkdXJhdGlvbjogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGVsZW1lbnQuc3R5bGUub3BhY2l0eSA9IDA7XG5cbiAgICAgICAgbGV0IGxhc3QgPSArbmV3IERhdGUoKTtcbiAgICAgICAgbGV0IG9wYWNpdHkgPSAwO1xuICAgICAgICBsZXQgdGljayA9IGZ1bmN0aW9uICgpIHtcbiAgICAgICAgICAgIG9wYWNpdHkgPSArZWxlbWVudC5zdHlsZS5vcGFjaXR5LnJlcGxhY2UoJywnLCAnLicpICsgKG5ldyBEYXRlKCkuZ2V0VGltZSgpIC0gbGFzdCkgLyBkdXJhdGlvbjtcbiAgICAgICAgICAgIGVsZW1lbnQuc3R5bGUub3BhY2l0eSA9IG9wYWNpdHk7XG4gICAgICAgICAgICBsYXN0ID0gK25ldyBEYXRlKCk7XG5cbiAgICAgICAgICAgIGlmICgrb3BhY2l0eSA8IDEpIHtcbiAgICAgICAgICAgICAgICAod2luZG93LnJlcXVlc3RBbmltYXRpb25GcmFtZSAmJiByZXF1ZXN0QW5pbWF0aW9uRnJhbWUodGljaykpIHx8IHNldFRpbWVvdXQodGljaywgMTYpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuXG4gICAgICAgIHRpY2soKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZhZGVPdXQoZWxlbWVudCwgbXMpIHtcbiAgICAgICAgdmFyIG9wYWNpdHkgPSAxLFxuICAgICAgICAgICAgaW50ZXJ2YWwgPSA1MCxcbiAgICAgICAgICAgIGR1cmF0aW9uID0gbXMsXG4gICAgICAgICAgICBnYXAgPSBpbnRlcnZhbCAvIGR1cmF0aW9uO1xuXG4gICAgICAgIGxldCBmYWRpbmcgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICAgICAgICBvcGFjaXR5ID0gb3BhY2l0eSAtIGdhcDtcblxuICAgICAgICAgICAgaWYgKG9wYWNpdHkgPD0gMCkge1xuICAgICAgICAgICAgICAgIG9wYWNpdHkgPSAwO1xuICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwoZmFkaW5nKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZWxlbWVudC5zdHlsZS5vcGFjaXR5ID0gb3BhY2l0eTtcbiAgICAgICAgfSwgaW50ZXJ2YWwpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0V2luZG93U2Nyb2xsVG9wKCk6IG51bWJlciB7XG4gICAgICAgIGxldCBkb2MgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7XG4gICAgICAgIHJldHVybiAod2luZG93LnBhZ2VZT2Zmc2V0IHx8IGRvYy5zY3JvbGxUb3ApIC0gKGRvYy5jbGllbnRUb3AgfHwgMCk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXRXaW5kb3dTY3JvbGxMZWZ0KCk6IG51bWJlciB7XG4gICAgICAgIGxldCBkb2MgPSBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQ7XG4gICAgICAgIHJldHVybiAod2luZG93LnBhZ2VYT2Zmc2V0IHx8IGRvYy5zY3JvbGxMZWZ0KSAtIChkb2MuY2xpZW50TGVmdCB8fCAwKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIG1hdGNoZXMoZWxlbWVudCwgc2VsZWN0b3I6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICB2YXIgcCA9IEVsZW1lbnQucHJvdG90eXBlO1xuICAgICAgICB2YXIgZiA9XG4gICAgICAgICAgICBwWydtYXRjaGVzJ10gfHxcbiAgICAgICAgICAgIHAud2Via2l0TWF0Y2hlc1NlbGVjdG9yIHx8XG4gICAgICAgICAgICBwWydtb3pNYXRjaGVzU2VsZWN0b3InXSB8fFxuICAgICAgICAgICAgcFsnbXNNYXRjaGVzU2VsZWN0b3InXSB8fFxuICAgICAgICAgICAgZnVuY3Rpb24gKHMpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gW10uaW5kZXhPZi5jYWxsKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwocyksIHRoaXMpICE9PSAtMTtcbiAgICAgICAgICAgIH07XG4gICAgICAgIHJldHVybiBmLmNhbGwoZWxlbWVudCwgc2VsZWN0b3IpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0T3V0ZXJXaWR0aChlbCwgbWFyZ2luPykge1xuICAgICAgICBsZXQgd2lkdGggPSBlbC5vZmZzZXRXaWR0aDtcblxuICAgICAgICBpZiAobWFyZ2luKSB7XG4gICAgICAgICAgICBsZXQgc3R5bGUgPSBnZXRDb21wdXRlZFN0eWxlKGVsKTtcbiAgICAgICAgICAgIHdpZHRoICs9IHBhcnNlRmxvYXQoc3R5bGUubWFyZ2luTGVmdCkgKyBwYXJzZUZsb2F0KHN0eWxlLm1hcmdpblJpZ2h0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB3aWR0aDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldEhvcml6b250YWxQYWRkaW5nKGVsKSB7XG4gICAgICAgIGxldCBzdHlsZSA9IGdldENvbXB1dGVkU3R5bGUoZWwpO1xuICAgICAgICByZXR1cm4gcGFyc2VGbG9hdChzdHlsZS5wYWRkaW5nTGVmdCkgKyBwYXJzZUZsb2F0KHN0eWxlLnBhZGRpbmdSaWdodCk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXRIb3Jpem9udGFsTWFyZ2luKGVsKSB7XG4gICAgICAgIGxldCBzdHlsZSA9IGdldENvbXB1dGVkU3R5bGUoZWwpO1xuICAgICAgICByZXR1cm4gcGFyc2VGbG9hdChzdHlsZS5tYXJnaW5MZWZ0KSArIHBhcnNlRmxvYXQoc3R5bGUubWFyZ2luUmlnaHQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgaW5uZXJXaWR0aChlbCkge1xuICAgICAgICBsZXQgd2lkdGggPSBlbC5vZmZzZXRXaWR0aDtcbiAgICAgICAgbGV0IHN0eWxlID0gZ2V0Q29tcHV0ZWRTdHlsZShlbCk7XG5cbiAgICAgICAgd2lkdGggKz0gcGFyc2VGbG9hdChzdHlsZS5wYWRkaW5nTGVmdCkgKyBwYXJzZUZsb2F0KHN0eWxlLnBhZGRpbmdSaWdodCk7XG4gICAgICAgIHJldHVybiB3aWR0aDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHdpZHRoKGVsKSB7XG4gICAgICAgIGxldCB3aWR0aCA9IGVsLm9mZnNldFdpZHRoO1xuICAgICAgICBsZXQgc3R5bGUgPSBnZXRDb21wdXRlZFN0eWxlKGVsKTtcblxuICAgICAgICB3aWR0aCAtPSBwYXJzZUZsb2F0KHN0eWxlLnBhZGRpbmdMZWZ0KSArIHBhcnNlRmxvYXQoc3R5bGUucGFkZGluZ1JpZ2h0KTtcbiAgICAgICAgcmV0dXJuIHdpZHRoO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0SW5uZXJIZWlnaHQoZWwpIHtcbiAgICAgICAgbGV0IGhlaWdodCA9IGVsLm9mZnNldEhlaWdodDtcbiAgICAgICAgbGV0IHN0eWxlID0gZ2V0Q29tcHV0ZWRTdHlsZShlbCk7XG5cbiAgICAgICAgaGVpZ2h0ICs9IHBhcnNlRmxvYXQoc3R5bGUucGFkZGluZ1RvcCkgKyBwYXJzZUZsb2F0KHN0eWxlLnBhZGRpbmdCb3R0b20pO1xuICAgICAgICByZXR1cm4gaGVpZ2h0O1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0T3V0ZXJIZWlnaHQoZWwsIG1hcmdpbj8pIHtcbiAgICAgICAgbGV0IGhlaWdodCA9IGVsLm9mZnNldEhlaWdodDtcblxuICAgICAgICBpZiAobWFyZ2luKSB7XG4gICAgICAgICAgICBsZXQgc3R5bGUgPSBnZXRDb21wdXRlZFN0eWxlKGVsKTtcbiAgICAgICAgICAgIGhlaWdodCArPSBwYXJzZUZsb2F0KHN0eWxlLm1hcmdpblRvcCkgKyBwYXJzZUZsb2F0KHN0eWxlLm1hcmdpbkJvdHRvbSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gaGVpZ2h0O1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0SGVpZ2h0KGVsKTogbnVtYmVyIHtcbiAgICAgICAgbGV0IGhlaWdodCA9IGVsLm9mZnNldEhlaWdodDtcbiAgICAgICAgbGV0IHN0eWxlID0gZ2V0Q29tcHV0ZWRTdHlsZShlbCk7XG5cbiAgICAgICAgaGVpZ2h0IC09IHBhcnNlRmxvYXQoc3R5bGUucGFkZGluZ1RvcCkgKyBwYXJzZUZsb2F0KHN0eWxlLnBhZGRpbmdCb3R0b20pICsgcGFyc2VGbG9hdChzdHlsZS5ib3JkZXJUb3BXaWR0aCkgKyBwYXJzZUZsb2F0KHN0eWxlLmJvcmRlckJvdHRvbVdpZHRoKTtcblxuICAgICAgICByZXR1cm4gaGVpZ2h0O1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0V2lkdGgoZWwpOiBudW1iZXIge1xuICAgICAgICBsZXQgd2lkdGggPSBlbC5vZmZzZXRXaWR0aDtcbiAgICAgICAgbGV0IHN0eWxlID0gZ2V0Q29tcHV0ZWRTdHlsZShlbCk7XG5cbiAgICAgICAgd2lkdGggLT0gcGFyc2VGbG9hdChzdHlsZS5wYWRkaW5nTGVmdCkgKyBwYXJzZUZsb2F0KHN0eWxlLnBhZGRpbmdSaWdodCkgKyBwYXJzZUZsb2F0KHN0eWxlLmJvcmRlckxlZnRXaWR0aCkgKyBwYXJzZUZsb2F0KHN0eWxlLmJvcmRlclJpZ2h0V2lkdGgpO1xuXG4gICAgICAgIHJldHVybiB3aWR0aDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldFZpZXdwb3J0KCk6IGFueSB7XG4gICAgICAgIGxldCB3aW4gPSB3aW5kb3csXG4gICAgICAgICAgICBkID0gZG9jdW1lbnQsXG4gICAgICAgICAgICBlID0gZC5kb2N1bWVudEVsZW1lbnQsXG4gICAgICAgICAgICBnID0gZC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnYm9keScpWzBdLFxuICAgICAgICAgICAgdyA9IHdpbi5pbm5lcldpZHRoIHx8IGUuY2xpZW50V2lkdGggfHwgZy5jbGllbnRXaWR0aCxcbiAgICAgICAgICAgIGggPSB3aW4uaW5uZXJIZWlnaHQgfHwgZS5jbGllbnRIZWlnaHQgfHwgZy5jbGllbnRIZWlnaHQ7XG5cbiAgICAgICAgcmV0dXJuIHsgd2lkdGg6IHcsIGhlaWdodDogaCB9O1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0T2Zmc2V0KGVsKSB7XG4gICAgICAgIHZhciByZWN0ID0gZWwuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIHRvcDogcmVjdC50b3AgKyAod2luZG93LnBhZ2VZT2Zmc2V0IHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3AgfHwgZG9jdW1lbnQuYm9keS5zY3JvbGxUb3AgfHwgMCksXG4gICAgICAgICAgICBsZWZ0OiByZWN0LmxlZnQgKyAod2luZG93LnBhZ2VYT2Zmc2V0IHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxMZWZ0IHx8IGRvY3VtZW50LmJvZHkuc2Nyb2xsTGVmdCB8fCAwKVxuICAgICAgICB9O1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgcmVwbGFjZUVsZW1lbnRXaXRoKGVsZW1lbnQ6IGFueSwgcmVwbGFjZW1lbnRFbGVtZW50OiBhbnkpOiBhbnkge1xuICAgICAgICBsZXQgcGFyZW50Tm9kZSA9IGVsZW1lbnQucGFyZW50Tm9kZTtcbiAgICAgICAgaWYgKCFwYXJlbnROb2RlKSB0aHJvdyBgQ2FuJ3QgcmVwbGFjZSBlbGVtZW50YDtcbiAgICAgICAgcmV0dXJuIHBhcmVudE5vZGUucmVwbGFjZUNoaWxkKHJlcGxhY2VtZW50RWxlbWVudCwgZWxlbWVudCk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXRVc2VyQWdlbnQoKTogc3RyaW5nIHtcbiAgICAgICAgaWYgKG5hdmlnYXRvciAmJiB0aGlzLmlzQ2xpZW50KCkpIHtcbiAgICAgICAgICAgIHJldHVybiBuYXZpZ2F0b3IudXNlckFnZW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBpc0lFKCkge1xuICAgICAgICB2YXIgdWEgPSB3aW5kb3cubmF2aWdhdG9yLnVzZXJBZ2VudDtcblxuICAgICAgICB2YXIgbXNpZSA9IHVhLmluZGV4T2YoJ01TSUUgJyk7XG4gICAgICAgIGlmIChtc2llID4gMCkge1xuICAgICAgICAgICAgLy8gSUUgMTAgb3Igb2xkZXIgPT4gcmV0dXJuIHZlcnNpb24gbnVtYmVyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHZhciB0cmlkZW50ID0gdWEuaW5kZXhPZignVHJpZGVudC8nKTtcbiAgICAgICAgaWYgKHRyaWRlbnQgPiAwKSB7XG4gICAgICAgICAgICAvLyBJRSAxMSA9PiByZXR1cm4gdmVyc2lvbiBudW1iZXJcbiAgICAgICAgICAgIHZhciBydiA9IHVhLmluZGV4T2YoJ3J2OicpO1xuICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICB2YXIgZWRnZSA9IHVhLmluZGV4T2YoJ0VkZ2UvJyk7XG4gICAgICAgIGlmIChlZGdlID4gMCkge1xuICAgICAgICAgICAgLy8gRWRnZSAoSUUgMTIrKSA9PiByZXR1cm4gdmVyc2lvbiBudW1iZXJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gb3RoZXIgYnJvd3NlclxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBpc0lPUygpIHtcbiAgICAgICAgcmV0dXJuIC9pUGFkfGlQaG9uZXxpUG9kLy50ZXN0KG5hdmlnYXRvci51c2VyQWdlbnQpICYmICF3aW5kb3dbJ01TU3RyZWFtJ107XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBpc0FuZHJvaWQoKSB7XG4gICAgICAgIHJldHVybiAvKGFuZHJvaWQpL2kudGVzdChuYXZpZ2F0b3IudXNlckFnZW50KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGlzVG91Y2hEZXZpY2UoKSB7XG4gICAgICAgIHJldHVybiAnb250b3VjaHN0YXJ0JyBpbiB3aW5kb3cgfHwgbmF2aWdhdG9yLm1heFRvdWNoUG9pbnRzID4gMDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGFwcGVuZENoaWxkKGVsZW1lbnQ6IGFueSwgdGFyZ2V0OiBhbnkpIHtcbiAgICAgICAgaWYgKHRoaXMuaXNFbGVtZW50KHRhcmdldCkpIHRhcmdldC5hcHBlbmRDaGlsZChlbGVtZW50KTtcbiAgICAgICAgZWxzZSBpZiAodGFyZ2V0LmVsICYmIHRhcmdldC5lbC5uYXRpdmVFbGVtZW50KSB0YXJnZXQuZWwubmF0aXZlRWxlbWVudC5hcHBlbmRDaGlsZChlbGVtZW50KTtcbiAgICAgICAgZWxzZSB0aHJvdyAnQ2Fubm90IGFwcGVuZCAnICsgdGFyZ2V0ICsgJyB0byAnICsgZWxlbWVudDtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIHJlbW92ZUNoaWxkKGVsZW1lbnQ6IGFueSwgdGFyZ2V0OiBhbnkpIHtcbiAgICAgICAgaWYgKHRoaXMuaXNFbGVtZW50KHRhcmdldCkpIHRhcmdldC5yZW1vdmVDaGlsZChlbGVtZW50KTtcbiAgICAgICAgZWxzZSBpZiAodGFyZ2V0LmVsICYmIHRhcmdldC5lbC5uYXRpdmVFbGVtZW50KSB0YXJnZXQuZWwubmF0aXZlRWxlbWVudC5yZW1vdmVDaGlsZChlbGVtZW50KTtcbiAgICAgICAgZWxzZSB0aHJvdyAnQ2Fubm90IHJlbW92ZSAnICsgZWxlbWVudCArICcgZnJvbSAnICsgdGFyZ2V0O1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgcmVtb3ZlRWxlbWVudChlbGVtZW50OiBFbGVtZW50KSB7XG4gICAgICAgIGlmICghKCdyZW1vdmUnIGluIEVsZW1lbnQucHJvdG90eXBlKSkgZWxlbWVudC5wYXJlbnROb2RlLnJlbW92ZUNoaWxkKGVsZW1lbnQpO1xuICAgICAgICBlbHNlIGVsZW1lbnQucmVtb3ZlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBpc0VsZW1lbnQob2JqOiBhbnkpIHtcbiAgICAgICAgcmV0dXJuIHR5cGVvZiBIVE1MRWxlbWVudCA9PT0gJ29iamVjdCcgPyBvYmogaW5zdGFuY2VvZiBIVE1MRWxlbWVudCA6IG9iaiAmJiB0eXBlb2Ygb2JqID09PSAnb2JqZWN0JyAmJiBvYmogIT09IG51bGwgJiYgb2JqLm5vZGVUeXBlID09PSAxICYmIHR5cGVvZiBvYmoubm9kZU5hbWUgPT09ICdzdHJpbmcnO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgY2FsY3VsYXRlU2Nyb2xsYmFyV2lkdGgoZWw/OiBIVE1MRWxlbWVudCk6IG51bWJlciB7XG4gICAgICAgIGlmIChlbCkge1xuICAgICAgICAgICAgbGV0IHN0eWxlID0gZ2V0Q29tcHV0ZWRTdHlsZShlbCk7XG4gICAgICAgICAgICByZXR1cm4gZWwub2Zmc2V0V2lkdGggLSBlbC5jbGllbnRXaWR0aCAtIHBhcnNlRmxvYXQoc3R5bGUuYm9yZGVyTGVmdFdpZHRoKSAtIHBhcnNlRmxvYXQoc3R5bGUuYm9yZGVyUmlnaHRXaWR0aCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBpZiAodGhpcy5jYWxjdWxhdGVkU2Nyb2xsYmFyV2lkdGggIT09IG51bGwpIHJldHVybiB0aGlzLmNhbGN1bGF0ZWRTY3JvbGxiYXJXaWR0aDtcblxuICAgICAgICAgICAgbGV0IHNjcm9sbERpdiA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2RpdicpO1xuICAgICAgICAgICAgc2Nyb2xsRGl2LmNsYXNzTmFtZSA9ICdwLXNjcm9sbGJhci1tZWFzdXJlJztcbiAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuYXBwZW5kQ2hpbGQoc2Nyb2xsRGl2KTtcblxuICAgICAgICAgICAgbGV0IHNjcm9sbGJhcldpZHRoID0gc2Nyb2xsRGl2Lm9mZnNldFdpZHRoIC0gc2Nyb2xsRGl2LmNsaWVudFdpZHRoO1xuICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChzY3JvbGxEaXYpO1xuXG4gICAgICAgICAgICB0aGlzLmNhbGN1bGF0ZWRTY3JvbGxiYXJXaWR0aCA9IHNjcm9sbGJhcldpZHRoO1xuXG4gICAgICAgICAgICByZXR1cm4gc2Nyb2xsYmFyV2lkdGg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGNhbGN1bGF0ZVNjcm9sbGJhckhlaWdodCgpOiBudW1iZXIge1xuICAgICAgICBpZiAodGhpcy5jYWxjdWxhdGVkU2Nyb2xsYmFySGVpZ2h0ICE9PSBudWxsKSByZXR1cm4gdGhpcy5jYWxjdWxhdGVkU2Nyb2xsYmFySGVpZ2h0O1xuXG4gICAgICAgIGxldCBzY3JvbGxEaXYgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgICAgICAgc2Nyb2xsRGl2LmNsYXNzTmFtZSA9ICdwLXNjcm9sbGJhci1tZWFzdXJlJztcbiAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChzY3JvbGxEaXYpO1xuXG4gICAgICAgIGxldCBzY3JvbGxiYXJIZWlnaHQgPSBzY3JvbGxEaXYub2Zmc2V0SGVpZ2h0IC0gc2Nyb2xsRGl2LmNsaWVudEhlaWdodDtcbiAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChzY3JvbGxEaXYpO1xuXG4gICAgICAgIHRoaXMuY2FsY3VsYXRlZFNjcm9sbGJhcldpZHRoID0gc2Nyb2xsYmFySGVpZ2h0O1xuXG4gICAgICAgIHJldHVybiBzY3JvbGxiYXJIZWlnaHQ7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBpbnZva2VFbGVtZW50TWV0aG9kKGVsZW1lbnQ6IGFueSwgbWV0aG9kTmFtZTogc3RyaW5nLCBhcmdzPzogYW55W10pOiB2b2lkIHtcbiAgICAgICAgKGVsZW1lbnQgYXMgYW55KVttZXRob2ROYW1lXS5hcHBseShlbGVtZW50LCBhcmdzKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGNsZWFyU2VsZWN0aW9uKCk6IHZvaWQge1xuICAgICAgICBpZiAod2luZG93LmdldFNlbGVjdGlvbikge1xuICAgICAgICAgICAgaWYgKHdpbmRvdy5nZXRTZWxlY3Rpb24oKS5lbXB0eSkge1xuICAgICAgICAgICAgICAgIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS5lbXB0eSgpO1xuICAgICAgICAgICAgfSBlbHNlIGlmICh3aW5kb3cuZ2V0U2VsZWN0aW9uKCkucmVtb3ZlQWxsUmFuZ2VzICYmIHdpbmRvdy5nZXRTZWxlY3Rpb24oKS5yYW5nZUNvdW50ID4gMCAmJiB3aW5kb3cuZ2V0U2VsZWN0aW9uKCkuZ2V0UmFuZ2VBdCgwKS5nZXRDbGllbnRSZWN0cygpLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgICAgICB3aW5kb3cuZ2V0U2VsZWN0aW9uKCkucmVtb3ZlQWxsUmFuZ2VzKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSBpZiAoZG9jdW1lbnRbJ3NlbGVjdGlvbiddICYmIGRvY3VtZW50WydzZWxlY3Rpb24nXS5lbXB0eSkge1xuICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICBkb2N1bWVudFsnc2VsZWN0aW9uJ10uZW1wdHkoKTtcbiAgICAgICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICAgICAgICAgICAgLy9pZ25vcmUgSUUgYnVnXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGdldEJyb3dzZXIoKSB7XG4gICAgICAgIGlmICghdGhpcy5icm93c2VyKSB7XG4gICAgICAgICAgICBsZXQgbWF0Y2hlZCA9IHRoaXMucmVzb2x2ZVVzZXJBZ2VudCgpO1xuICAgICAgICAgICAgdGhpcy5icm93c2VyID0ge307XG5cbiAgICAgICAgICAgIGlmIChtYXRjaGVkLmJyb3dzZXIpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmJyb3dzZXJbbWF0Y2hlZC5icm93c2VyXSA9IHRydWU7XG4gICAgICAgICAgICAgICAgdGhpcy5icm93c2VyWyd2ZXJzaW9uJ10gPSBtYXRjaGVkLnZlcnNpb247XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICh0aGlzLmJyb3dzZXJbJ2Nocm9tZSddKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5icm93c2VyWyd3ZWJraXQnXSA9IHRydWU7XG4gICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMuYnJvd3Nlclsnd2Via2l0J10pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmJyb3dzZXJbJ3NhZmFyaSddID0gdHJ1ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0aGlzLmJyb3dzZXI7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyByZXNvbHZlVXNlckFnZW50KCkge1xuICAgICAgICBsZXQgdWEgPSBuYXZpZ2F0b3IudXNlckFnZW50LnRvTG93ZXJDYXNlKCk7XG4gICAgICAgIGxldCBtYXRjaCA9XG4gICAgICAgICAgICAvKGNocm9tZSlbIFxcL10oW1xcdy5dKykvLmV4ZWModWEpIHx8IC8od2Via2l0KVsgXFwvXShbXFx3Ll0rKS8uZXhlYyh1YSkgfHwgLyhvcGVyYSkoPzouKnZlcnNpb258KVsgXFwvXShbXFx3Ll0rKS8uZXhlYyh1YSkgfHwgLyhtc2llKSAoW1xcdy5dKykvLmV4ZWModWEpIHx8ICh1YS5pbmRleE9mKCdjb21wYXRpYmxlJykgPCAwICYmIC8obW96aWxsYSkoPzouKj8gcnY6KFtcXHcuXSspfCkvLmV4ZWModWEpKSB8fCBbXTtcblxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgYnJvd3NlcjogbWF0Y2hbMV0gfHwgJycsXG4gICAgICAgICAgICB2ZXJzaW9uOiBtYXRjaFsyXSB8fCAnMCdcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGlzSW50ZWdlcih2YWx1ZSk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoTnVtYmVyLmlzSW50ZWdlcikge1xuICAgICAgICAgICAgcmV0dXJuIE51bWJlci5pc0ludGVnZXIodmFsdWUpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ251bWJlcicgJiYgaXNGaW5pdGUodmFsdWUpICYmIE1hdGguZmxvb3IodmFsdWUpID09PSB2YWx1ZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgaXNIaWRkZW4oZWxlbWVudDogSFRNTEVsZW1lbnQpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICFlbGVtZW50IHx8IGVsZW1lbnQub2Zmc2V0UGFyZW50ID09PSBudWxsO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgaXNWaXNpYmxlKGVsZW1lbnQ6IEhUTUxFbGVtZW50KSB7XG4gICAgICAgIHJldHVybiBlbGVtZW50ICYmIGVsZW1lbnQub2Zmc2V0UGFyZW50ICE9IG51bGw7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBpc0V4aXN0KGVsZW1lbnQ6IEhUTUxFbGVtZW50KSB7XG4gICAgICAgIHJldHVybiBlbGVtZW50ICE9PSBudWxsICYmIHR5cGVvZiBlbGVtZW50ICE9PSAndW5kZWZpbmVkJyAmJiBlbGVtZW50Lm5vZGVOYW1lICYmIGVsZW1lbnQucGFyZW50Tm9kZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGZvY3VzKGVsZW1lbnQ6IEhUTUxFbGVtZW50LCBvcHRpb25zPzogRm9jdXNPcHRpb25zKTogdm9pZCB7XG4gICAgICAgIGVsZW1lbnQgJiYgZG9jdW1lbnQuYWN0aXZlRWxlbWVudCAhPT0gZWxlbWVudCAmJiBlbGVtZW50LmZvY3VzKG9wdGlvbnMpO1xuICAgIH1cblxuICAgIHB1YmxpYyBzdGF0aWMgZ2V0Rm9jdXNhYmxlRWxlbWVudHMoZWxlbWVudDogSFRNTEVsZW1lbnQpIHtcbiAgICAgICAgbGV0IGZvY3VzYWJsZUVsZW1lbnRzID0gRG9tSGFuZGxlci5maW5kKFxuICAgICAgICAgICAgZWxlbWVudCxcbiAgICAgICAgICAgIGBidXR0b246bm90KFt0YWJpbmRleCA9IFwiLTFcIl0pOm5vdChbZGlzYWJsZWRdKTpub3QoW3N0eWxlKj1cImRpc3BsYXk6bm9uZVwiXSk6bm90KFtoaWRkZW5dKSxcbiAgICAgICAgICAgICAgICBbaHJlZl06bm90KFt0YWJpbmRleCA9IFwiLTFcIl0pOm5vdChbZGlzYWJsZWRdKTpub3QoW3N0eWxlKj1cImRpc3BsYXk6bm9uZVwiXSk6bm90KFtoaWRkZW5dKSxcbiAgICAgICAgICAgICAgICBpbnB1dDpub3QoW3RhYmluZGV4ID0gXCItMVwiXSk6bm90KFtkaXNhYmxlZF0pOm5vdChbc3R5bGUqPVwiZGlzcGxheTpub25lXCJdKTpub3QoW2hpZGRlbl0pLCBzZWxlY3Q6bm90KFt0YWJpbmRleCA9IFwiLTFcIl0pOm5vdChbZGlzYWJsZWRdKTpub3QoW3N0eWxlKj1cImRpc3BsYXk6bm9uZVwiXSk6bm90KFtoaWRkZW5dKSxcbiAgICAgICAgICAgICAgICB0ZXh0YXJlYTpub3QoW3RhYmluZGV4ID0gXCItMVwiXSk6bm90KFtkaXNhYmxlZF0pOm5vdChbc3R5bGUqPVwiZGlzcGxheTpub25lXCJdKTpub3QoW2hpZGRlbl0pLCBbdGFiSW5kZXhdOm5vdChbdGFiSW5kZXggPSBcIi0xXCJdKTpub3QoW2Rpc2FibGVkXSk6bm90KFtzdHlsZSo9XCJkaXNwbGF5Om5vbmVcIl0pOm5vdChbaGlkZGVuXSksXG4gICAgICAgICAgICAgICAgW2NvbnRlbnRlZGl0YWJsZV06bm90KFt0YWJJbmRleCA9IFwiLTFcIl0pOm5vdChbZGlzYWJsZWRdKTpub3QoW3N0eWxlKj1cImRpc3BsYXk6bm9uZVwiXSk6bm90KFtoaWRkZW5dKTpub3QoLnAtZGlzYWJsZWQpYFxuICAgICAgICApO1xuXG4gICAgICAgIGxldCB2aXNpYmxlRm9jdXNhYmxlRWxlbWVudHMgPSBbXTtcbiAgICAgICAgZm9yIChsZXQgZm9jdXNhYmxlRWxlbWVudCBvZiBmb2N1c2FibGVFbGVtZW50cykge1xuICAgICAgICAgICAgaWYgKCEhKGZvY3VzYWJsZUVsZW1lbnQub2Zmc2V0V2lkdGggfHwgZm9jdXNhYmxlRWxlbWVudC5vZmZzZXRIZWlnaHQgfHwgZm9jdXNhYmxlRWxlbWVudC5nZXRDbGllbnRSZWN0cygpLmxlbmd0aCkpIHZpc2libGVGb2N1c2FibGVFbGVtZW50cy5wdXNoKGZvY3VzYWJsZUVsZW1lbnQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2aXNpYmxlRm9jdXNhYmxlRWxlbWVudHM7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXROZXh0Rm9jdXNhYmxlRWxlbWVudChlbGVtZW50OiBIVE1MRWxlbWVudCwgcmV2ZXJzZSA9IGZhbHNlKSB7XG4gICAgICAgIGNvbnN0IGZvY3VzYWJsZUVsZW1lbnRzID0gRG9tSGFuZGxlci5nZXRGb2N1c2FibGVFbGVtZW50cyhlbGVtZW50KTtcbiAgICAgICAgbGV0IGluZGV4ID0gMDtcbiAgICAgICAgaWYgKGZvY3VzYWJsZUVsZW1lbnRzICYmIGZvY3VzYWJsZUVsZW1lbnRzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIGNvbnN0IGZvY3VzZWRJbmRleCA9IGZvY3VzYWJsZUVsZW1lbnRzLmluZGV4T2YoZm9jdXNhYmxlRWxlbWVudHNbMF0ub3duZXJEb2N1bWVudC5hY3RpdmVFbGVtZW50KTtcblxuICAgICAgICAgICAgaWYgKHJldmVyc2UpIHtcbiAgICAgICAgICAgICAgICBpZiAoZm9jdXNlZEluZGV4ID09IC0xIHx8IGZvY3VzZWRJbmRleCA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICBpbmRleCA9IGZvY3VzYWJsZUVsZW1lbnRzLmxlbmd0aCAtIDE7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgaW5kZXggPSBmb2N1c2VkSW5kZXggLSAxO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gZWxzZSBpZiAoZm9jdXNlZEluZGV4ICE9IC0xICYmIGZvY3VzZWRJbmRleCAhPT0gZm9jdXNhYmxlRWxlbWVudHMubGVuZ3RoIC0gMSkge1xuICAgICAgICAgICAgICAgIGluZGV4ID0gZm9jdXNlZEluZGV4ICsgMTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBmb2N1c2FibGVFbGVtZW50c1tpbmRleF07XG4gICAgfVxuXG4gICAgc3RhdGljIGdlbmVyYXRlWkluZGV4KCkge1xuICAgICAgICB0aGlzLnppbmRleCA9IHRoaXMuemluZGV4IHx8IDk5OTtcbiAgICAgICAgcmV0dXJuICsrdGhpcy56aW5kZXg7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXRTZWxlY3Rpb24oKSB7XG4gICAgICAgIGlmICh3aW5kb3cuZ2V0U2VsZWN0aW9uKSByZXR1cm4gd2luZG93LmdldFNlbGVjdGlvbigpLnRvU3RyaW5nKCk7XG4gICAgICAgIGVsc2UgaWYgKGRvY3VtZW50LmdldFNlbGVjdGlvbikgcmV0dXJuIGRvY3VtZW50LmdldFNlbGVjdGlvbigpLnRvU3RyaW5nKCk7XG4gICAgICAgIGVsc2UgaWYgKGRvY3VtZW50WydzZWxlY3Rpb24nXSkgcmV0dXJuIGRvY3VtZW50WydzZWxlY3Rpb24nXS5jcmVhdGVSYW5nZSgpLnRleHQ7XG5cbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBnZXRUYXJnZXRFbGVtZW50KHRhcmdldDogYW55LCBlbD86IEhUTUxFbGVtZW50KSB7XG4gICAgICAgIGlmICghdGFyZ2V0KSByZXR1cm4gbnVsbDtcblxuICAgICAgICBzd2l0Y2ggKHRhcmdldCkge1xuICAgICAgICAgICAgY2FzZSAnZG9jdW1lbnQnOlxuICAgICAgICAgICAgICAgIHJldHVybiBkb2N1bWVudDtcbiAgICAgICAgICAgIGNhc2UgJ3dpbmRvdyc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHdpbmRvdztcbiAgICAgICAgICAgIGNhc2UgJ0BuZXh0JzpcbiAgICAgICAgICAgICAgICByZXR1cm4gZWw/Lm5leHRFbGVtZW50U2libGluZztcbiAgICAgICAgICAgIGNhc2UgJ0BwcmV2JzpcbiAgICAgICAgICAgICAgICByZXR1cm4gZWw/LnByZXZpb3VzRWxlbWVudFNpYmxpbmc7XG4gICAgICAgICAgICBjYXNlICdAcGFyZW50JzpcbiAgICAgICAgICAgICAgICByZXR1cm4gZWw/LnBhcmVudEVsZW1lbnQ7XG4gICAgICAgICAgICBjYXNlICdAZ3JhbmRwYXJlbnQnOlxuICAgICAgICAgICAgICAgIHJldHVybiBlbD8ucGFyZW50RWxlbWVudC5wYXJlbnRFbGVtZW50O1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICBjb25zdCB0eXBlID0gdHlwZW9mIHRhcmdldDtcblxuICAgICAgICAgICAgICAgIGlmICh0eXBlID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZG9jdW1lbnQucXVlcnlTZWxlY3Rvcih0YXJnZXQpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAodHlwZSA9PT0gJ29iamVjdCcgJiYgdGFyZ2V0Lmhhc093blByb3BlcnR5KCduYXRpdmVFbGVtZW50JykpIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuaXNFeGlzdCh0YXJnZXQubmF0aXZlRWxlbWVudCkgPyB0YXJnZXQubmF0aXZlRWxlbWVudCA6IHVuZGVmaW5lZDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjb25zdCBpc0Z1bmN0aW9uID0gKG9iajogYW55KSA9PiAhIShvYmogJiYgb2JqLmNvbnN0cnVjdG9yICYmIG9iai5jYWxsICYmIG9iai5hcHBseSk7XG4gICAgICAgICAgICAgICAgY29uc3QgZWxlbWVudCA9IGlzRnVuY3Rpb24odGFyZ2V0KSA/IHRhcmdldCgpIDogdGFyZ2V0O1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIChlbGVtZW50ICYmIGVsZW1lbnQubm9kZVR5cGUgPT09IDkpIHx8IHRoaXMuaXNFeGlzdChlbGVtZW50KSA/IGVsZW1lbnQgOiBudWxsO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBpc0NsaWVudCgpIHtcbiAgICAgICAgcmV0dXJuICEhKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHdpbmRvdy5kb2N1bWVudCAmJiB3aW5kb3cuZG9jdW1lbnQuY3JlYXRlRWxlbWVudCk7XG4gICAgfVxufVxuIl19
|