primeng 11.3.1 → 11.4.2
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/README.md +3 -2
- package/api/primeng-api.metadata.json +1 -1
- package/api/translation.d.ts +2 -0
- package/api/translationkeys.d.ts +2 -0
- package/autocomplete/autocomplete.d.ts +15 -2
- package/autocomplete/primeng-autocomplete.metadata.json +1 -1
- package/bundles/primeng-api.umd.js +19 -12
- package/bundles/primeng-api.umd.js.map +1 -1
- package/bundles/primeng-api.umd.min.js +1 -1
- package/bundles/primeng-api.umd.min.js.map +1 -1
- package/bundles/primeng-autocomplete.umd.js +65 -30
- package/bundles/primeng-autocomplete.umd.js.map +1 -1
- package/bundles/primeng-autocomplete.umd.min.js +2 -2
- package/bundles/primeng-autocomplete.umd.min.js.map +1 -1
- package/bundles/primeng-button.umd.js +71 -15
- package/bundles/primeng-button.umd.js.map +1 -1
- package/bundles/primeng-button.umd.min.js +1 -1
- package/bundles/primeng-button.umd.min.js.map +1 -1
- package/bundles/primeng-calendar.umd.js +25 -14
- package/bundles/primeng-calendar.umd.js.map +1 -1
- package/bundles/primeng-calendar.umd.min.js +2 -2
- package/bundles/primeng-calendar.umd.min.js.map +1 -1
- package/bundles/primeng-carousel.umd.js +24 -13
- package/bundles/primeng-carousel.umd.js.map +1 -1
- package/bundles/primeng-carousel.umd.min.js +1 -1
- package/bundles/primeng-carousel.umd.min.js.map +1 -1
- package/bundles/primeng-cascadeselect.umd.js +14 -12
- package/bundles/primeng-cascadeselect.umd.js.map +1 -1
- package/bundles/primeng-cascadeselect.umd.min.js +1 -1
- package/bundles/primeng-cascadeselect.umd.min.js.map +1 -1
- package/bundles/primeng-checkbox.umd.js +14 -11
- package/bundles/primeng-checkbox.umd.js.map +1 -1
- package/bundles/primeng-checkbox.umd.min.js.map +1 -1
- package/bundles/primeng-chips.umd.js +14 -11
- package/bundles/primeng-chips.umd.js.map +1 -1
- package/bundles/primeng-chips.umd.min.js.map +1 -1
- package/bundles/primeng-confirmdialog.umd.js +19 -7
- package/bundles/primeng-confirmdialog.umd.js.map +1 -1
- package/bundles/primeng-confirmdialog.umd.min.js +1 -1
- package/bundles/primeng-confirmdialog.umd.min.js.map +1 -1
- package/bundles/primeng-contextmenu.umd.js +15 -12
- package/bundles/primeng-contextmenu.umd.js.map +1 -1
- package/bundles/primeng-contextmenu.umd.min.js +1 -1
- package/bundles/primeng-contextmenu.umd.min.js.map +1 -1
- package/bundles/primeng-dataview.umd.js +25 -4
- package/bundles/primeng-dataview.umd.js.map +1 -1
- package/bundles/primeng-dataview.umd.min.js +1 -1
- package/bundles/primeng-dataview.umd.min.js.map +1 -1
- package/bundles/primeng-dom.umd.js +14 -11
- package/bundles/primeng-dom.umd.js.map +1 -1
- package/bundles/primeng-dom.umd.min.js.map +1 -1
- package/bundles/primeng-dropdown.umd.js +78 -46
- package/bundles/primeng-dropdown.umd.js.map +1 -1
- package/bundles/primeng-dropdown.umd.min.js +1 -1
- package/bundles/primeng-dropdown.umd.min.js.map +1 -1
- package/bundles/primeng-editor.umd.js +1 -1
- package/bundles/primeng-editor.umd.js.map +1 -1
- package/bundles/primeng-editor.umd.min.js +1 -1
- package/bundles/primeng-editor.umd.min.js.map +1 -1
- package/bundles/primeng-fileupload.umd.js +23 -11
- package/bundles/primeng-fileupload.umd.js.map +1 -1
- package/bundles/primeng-fileupload.umd.min.js +1 -1
- package/bundles/primeng-fileupload.umd.min.js.map +1 -1
- package/bundles/primeng-galleria.umd.js +17 -12
- package/bundles/primeng-galleria.umd.js.map +1 -1
- package/bundles/primeng-galleria.umd.min.js +1 -1
- package/bundles/primeng-galleria.umd.min.js.map +1 -1
- package/bundles/primeng-gmap.umd.js +14 -11
- package/bundles/primeng-gmap.umd.js.map +1 -1
- package/bundles/primeng-gmap.umd.min.js.map +1 -1
- package/bundles/primeng-inputnumber.umd.js +15 -12
- package/bundles/primeng-inputnumber.umd.js.map +1 -1
- package/bundles/primeng-inputnumber.umd.min.js +1 -1
- package/bundles/primeng-inputnumber.umd.min.js.map +1 -1
- package/bundles/primeng-keyfilter.umd.js +14 -11
- package/bundles/primeng-keyfilter.umd.js.map +1 -1
- package/bundles/primeng-keyfilter.umd.min.js.map +1 -1
- package/bundles/primeng-listbox.umd.js +69 -28
- package/bundles/primeng-listbox.umd.js.map +1 -1
- package/bundles/primeng-listbox.umd.min.js +1 -1
- package/bundles/primeng-listbox.umd.min.js.map +1 -1
- package/bundles/primeng-menu.umd.js +14 -11
- package/bundles/primeng-menu.umd.js.map +1 -1
- package/bundles/primeng-menu.umd.min.js.map +1 -1
- package/bundles/primeng-menubar.umd.js +1 -1
- package/bundles/primeng-menubar.umd.js.map +1 -1
- package/bundles/primeng-menubar.umd.min.js +1 -1
- package/bundles/primeng-menubar.umd.min.js.map +1 -1
- package/bundles/primeng-messages.umd.js +14 -11
- package/bundles/primeng-messages.umd.js.map +1 -1
- package/bundles/primeng-messages.umd.min.js.map +1 -1
- package/bundles/primeng-multiselect.umd.js +62 -32
- package/bundles/primeng-multiselect.umd.js.map +1 -1
- package/bundles/primeng-multiselect.umd.min.js +1 -1
- package/bundles/primeng-multiselect.umd.min.js.map +1 -1
- package/bundles/primeng-orderlist.umd.js +49 -16
- package/bundles/primeng-orderlist.umd.js.map +1 -1
- package/bundles/primeng-orderlist.umd.min.js +2 -2
- package/bundles/primeng-orderlist.umd.min.js.map +1 -1
- package/bundles/primeng-organizationchart.umd.js +14 -11
- package/bundles/primeng-organizationchart.umd.js.map +1 -1
- package/bundles/primeng-organizationchart.umd.min.js.map +1 -1
- package/bundles/primeng-paginator.umd.js +14 -11
- package/bundles/primeng-paginator.umd.js.map +1 -1
- package/bundles/primeng-paginator.umd.min.js.map +1 -1
- package/bundles/primeng-panelmenu.umd.js +14 -11
- package/bundles/primeng-panelmenu.umd.js.map +1 -1
- package/bundles/primeng-panelmenu.umd.min.js.map +1 -1
- package/bundles/primeng-password.umd.js +48 -38
- package/bundles/primeng-password.umd.js.map +1 -1
- package/bundles/primeng-password.umd.min.js +1 -1
- package/bundles/primeng-password.umd.min.js.map +1 -1
- package/bundles/primeng-picklist.umd.js +109 -48
- package/bundles/primeng-picklist.umd.js.map +1 -1
- package/bundles/primeng-picklist.umd.min.js +1 -1
- package/bundles/primeng-picklist.umd.min.js.map +1 -1
- package/bundles/primeng-radiobutton.umd.js +5 -11
- package/bundles/primeng-radiobutton.umd.js.map +1 -1
- package/bundles/primeng-radiobutton.umd.min.js +1 -1
- package/bundles/primeng-radiobutton.umd.min.js.map +1 -1
- package/bundles/primeng-scrollpanel.umd.js +1 -0
- package/bundles/primeng-scrollpanel.umd.js.map +1 -1
- package/bundles/primeng-scrollpanel.umd.min.js +1 -1
- package/bundles/primeng-scrollpanel.umd.min.js.map +1 -1
- package/bundles/primeng-selectbutton.umd.js +16 -13
- package/bundles/primeng-selectbutton.umd.js.map +1 -1
- package/bundles/primeng-selectbutton.umd.min.js +1 -1
- package/bundles/primeng-selectbutton.umd.min.js.map +1 -1
- package/bundles/primeng-sidebar.umd.js +77 -46
- package/bundles/primeng-sidebar.umd.js.map +1 -1
- package/bundles/primeng-sidebar.umd.min.js +1 -1
- package/bundles/primeng-sidebar.umd.min.js.map +1 -1
- package/bundles/primeng-skeleton.umd.js +1 -1
- package/bundles/primeng-skeleton.umd.js.map +1 -1
- package/bundles/primeng-skeleton.umd.min.js +1 -1
- package/bundles/primeng-skeleton.umd.min.js.map +1 -1
- package/bundles/primeng-splitter.umd.js +53 -22
- package/bundles/primeng-splitter.umd.js.map +1 -1
- package/bundles/primeng-splitter.umd.min.js +1 -1
- package/bundles/primeng-splitter.umd.min.js.map +1 -1
- package/bundles/primeng-table.umd.js +30 -17
- package/bundles/primeng-table.umd.js.map +1 -1
- package/bundles/primeng-table.umd.min.js +2 -2
- package/bundles/primeng-table.umd.min.js.map +1 -1
- package/bundles/primeng-tabmenu.umd.js +1 -1
- package/bundles/primeng-tabmenu.umd.js.map +1 -1
- package/bundles/primeng-tabmenu.umd.min.js +1 -1
- package/bundles/primeng-tabmenu.umd.min.js.map +1 -1
- package/bundles/primeng-tabview.umd.js +1 -0
- package/bundles/primeng-tabview.umd.js.map +1 -1
- package/bundles/primeng-tabview.umd.min.js +1 -1
- package/bundles/primeng-tabview.umd.min.js.map +1 -1
- package/bundles/primeng-tieredmenu.umd.js +1 -1
- package/bundles/primeng-tieredmenu.umd.js.map +1 -1
- package/bundles/primeng-tieredmenu.umd.min.js +1 -1
- package/bundles/primeng-tieredmenu.umd.min.js.map +1 -1
- package/bundles/primeng-timeline.umd.js +1 -1
- package/bundles/primeng-timeline.umd.js.map +1 -1
- package/bundles/primeng-timeline.umd.min.js +1 -1
- package/bundles/primeng-timeline.umd.min.js.map +1 -1
- package/bundles/primeng-toast.umd.js +14 -11
- package/bundles/primeng-toast.umd.js.map +1 -1
- package/bundles/primeng-toast.umd.min.js.map +1 -1
- package/bundles/primeng-togglebutton.umd.js +1 -1
- package/bundles/primeng-togglebutton.umd.min.js +1 -1
- package/bundles/primeng-togglebutton.umd.min.js.map +1 -1
- package/bundles/primeng-tree.umd.js +85 -30
- package/bundles/primeng-tree.umd.js.map +1 -1
- package/bundles/primeng-tree.umd.min.js +1 -1
- package/bundles/primeng-tree.umd.min.js.map +1 -1
- package/bundles/primeng-treetable.umd.js +18 -11
- package/bundles/primeng-treetable.umd.js.map +1 -1
- package/bundles/primeng-treetable.umd.min.js +1 -1
- package/bundles/primeng-treetable.umd.min.js.map +1 -1
- package/bundles/primeng-tristatecheckbox.umd.js +5 -1
- package/bundles/primeng-tristatecheckbox.umd.js.map +1 -1
- package/bundles/primeng-tristatecheckbox.umd.min.js +1 -1
- package/bundles/primeng-tristatecheckbox.umd.min.js.map +1 -1
- package/button/button.d.ts +10 -0
- package/button/primeng-button.metadata.json +1 -1
- package/calendar/calendar.d.ts +3 -1
- package/calendar/primeng-calendar.metadata.json +1 -1
- package/carousel/carousel.d.ts +7 -2
- package/carousel/primeng-carousel.metadata.json +1 -1
- package/cascadeselect/primeng-cascadeselect.metadata.json +1 -1
- package/confirmdialog/confirmdialog.d.ts +2 -0
- package/confirmdialog/primeng-confirmdialog.metadata.json +1 -1
- package/contextmenu/primeng-contextmenu.metadata.json +1 -1
- package/dataview/dataview.d.ts +10 -4
- package/dataview/primeng-dataview.metadata.json +1 -1
- package/dropdown/dropdown.d.ts +15 -7
- package/dropdown/primeng-dropdown.metadata.json +1 -1
- package/esm2015/api/primengconfig.js +4 -2
- package/esm2015/api/translation.js +1 -1
- package/esm2015/api/translationkeys.js +3 -1
- package/esm2015/autocomplete/autocomplete.js +70 -22
- package/esm2015/button/button.js +75 -20
- package/esm2015/calendar/calendar.js +18 -11
- package/esm2015/carousel/carousel.js +14 -6
- package/esm2015/cascadeselect/cascadeselect.js +1 -2
- package/esm2015/confirmdialog/confirmdialog.js +22 -7
- package/esm2015/contextmenu/contextmenu.js +5 -6
- package/esm2015/dataview/dataview.js +27 -6
- package/esm2015/dropdown/dropdown.js +69 -34
- package/esm2015/editor/editor.js +2 -2
- package/esm2015/fileupload/fileupload.js +9 -1
- package/esm2015/galleria/galleria.js +4 -2
- package/esm2015/inputnumber/inputnumber.js +2 -2
- package/esm2015/listbox/listbox.js +55 -14
- package/esm2015/menubar/menubar.js +4 -5
- package/esm2015/multiselect/multiselect.js +51 -21
- package/esm2015/orderlist/orderlist.js +48 -9
- package/esm2015/password/password.js +50 -40
- package/esm2015/picklist/picklist.js +140 -70
- package/esm2015/radiobutton/radiobutton.js +6 -12
- package/esm2015/scrollpanel/scrollpanel.js +2 -1
- package/esm2015/selectbutton/selectbutton.js +3 -3
- package/esm2015/sidebar/sidebar.js +77 -53
- package/esm2015/skeleton/skeleton.js +2 -2
- package/esm2015/splitter/splitter.js +40 -13
- package/esm2015/table/table.js +18 -8
- package/esm2015/tabmenu/tabmenu.js +2 -2
- package/esm2015/tabview/tabview.js +2 -1
- package/esm2015/tieredmenu/tieredmenu.js +4 -4
- package/esm2015/timeline/timeline.js +3 -3
- package/esm2015/togglebutton/togglebutton.js +1 -1
- package/esm2015/tree/tree.js +82 -20
- package/esm2015/treetable/treetable.js +5 -1
- package/esm2015/tristatecheckbox/tristatecheckbox.js +6 -2
- package/fesm2015/primeng-api.js +5 -1
- package/fesm2015/primeng-api.js.map +1 -1
- package/fesm2015/primeng-autocomplete.js +69 -21
- package/fesm2015/primeng-autocomplete.js.map +1 -1
- package/fesm2015/primeng-button.js +74 -19
- package/fesm2015/primeng-button.js.map +1 -1
- package/fesm2015/primeng-calendar.js +17 -10
- package/fesm2015/primeng-calendar.js.map +1 -1
- package/fesm2015/primeng-carousel.js +13 -5
- package/fesm2015/primeng-carousel.js.map +1 -1
- package/fesm2015/primeng-cascadeselect.js +0 -1
- package/fesm2015/primeng-cascadeselect.js.map +1 -1
- package/fesm2015/primeng-confirmdialog.js +21 -6
- package/fesm2015/primeng-confirmdialog.js.map +1 -1
- package/fesm2015/primeng-contextmenu.js +4 -5
- package/fesm2015/primeng-contextmenu.js.map +1 -1
- package/fesm2015/primeng-dataview.js +26 -5
- package/fesm2015/primeng-dataview.js.map +1 -1
- package/fesm2015/primeng-dropdown.js +68 -34
- package/fesm2015/primeng-dropdown.js.map +1 -1
- package/fesm2015/primeng-editor.js +1 -1
- package/fesm2015/primeng-editor.js.map +1 -1
- package/fesm2015/primeng-fileupload.js +8 -0
- package/fesm2015/primeng-fileupload.js.map +1 -1
- package/fesm2015/primeng-galleria.js +3 -1
- package/fesm2015/primeng-galleria.js.map +1 -1
- package/fesm2015/primeng-inputnumber.js +1 -1
- package/fesm2015/primeng-inputnumber.js.map +1 -1
- package/fesm2015/primeng-listbox.js +54 -13
- package/fesm2015/primeng-listbox.js.map +1 -1
- package/fesm2015/primeng-menubar.js +3 -4
- package/fesm2015/primeng-menubar.js.map +1 -1
- package/fesm2015/primeng-multiselect.js +50 -20
- package/fesm2015/primeng-multiselect.js.map +1 -1
- package/fesm2015/primeng-orderlist.js +47 -8
- package/fesm2015/primeng-orderlist.js.map +1 -1
- package/fesm2015/primeng-password.js +49 -39
- package/fesm2015/primeng-password.js.map +1 -1
- package/fesm2015/primeng-picklist.js +140 -70
- package/fesm2015/primeng-picklist.js.map +1 -1
- package/fesm2015/primeng-radiobutton.js +5 -11
- package/fesm2015/primeng-radiobutton.js.map +1 -1
- package/fesm2015/primeng-scrollpanel.js +1 -0
- package/fesm2015/primeng-scrollpanel.js.map +1 -1
- package/fesm2015/primeng-selectbutton.js +2 -2
- package/fesm2015/primeng-selectbutton.js.map +1 -1
- package/fesm2015/primeng-sidebar.js +76 -52
- package/fesm2015/primeng-sidebar.js.map +1 -1
- package/fesm2015/primeng-skeleton.js +1 -1
- package/fesm2015/primeng-skeleton.js.map +1 -1
- package/fesm2015/primeng-splitter.js +39 -12
- package/fesm2015/primeng-splitter.js.map +1 -1
- package/fesm2015/primeng-table.js +17 -7
- package/fesm2015/primeng-table.js.map +1 -1
- package/fesm2015/primeng-tabmenu.js +1 -1
- package/fesm2015/primeng-tabmenu.js.map +1 -1
- package/fesm2015/primeng-tabview.js +1 -0
- package/fesm2015/primeng-tabview.js.map +1 -1
- package/fesm2015/primeng-tieredmenu.js +3 -3
- package/fesm2015/primeng-tieredmenu.js.map +1 -1
- package/fesm2015/primeng-timeline.js +2 -2
- package/fesm2015/primeng-timeline.js.map +1 -1
- package/fesm2015/primeng-togglebutton.js +1 -1
- package/fesm2015/primeng-tree.js +81 -20
- package/fesm2015/primeng-tree.js.map +1 -1
- package/fesm2015/primeng-treetable.js +4 -0
- package/fesm2015/primeng-treetable.js.map +1 -1
- package/fesm2015/primeng-tristatecheckbox.js +5 -1
- package/fesm2015/primeng-tristatecheckbox.js.map +1 -1
- package/fileupload/fileupload.d.ts +5 -2
- package/fileupload/primeng-fileupload.metadata.json +1 -1
- package/galleria/galleria.d.ts +3 -2
- package/galleria/primeng-galleria.metadata.json +1 -1
- package/inputnumber/primeng-inputnumber.metadata.json +1 -1
- package/listbox/listbox.d.ts +16 -4
- package/listbox/primeng-listbox.metadata.json +1 -1
- package/menubar/primeng-menubar.metadata.json +1 -1
- package/multiselect/multiselect.d.ts +10 -3
- package/multiselect/primeng-multiselect.metadata.json +1 -1
- package/orderlist/orderlist.d.ts +5 -1
- package/orderlist/primeng-orderlist.metadata.json +1 -1
- package/package.json +1 -1
- package/password/password.d.ts +5 -4
- package/password/primeng-password.metadata.json +1 -1
- package/picklist/picklist.d.ts +16 -7
- package/picklist/primeng-picklist.metadata.json +1 -1
- package/radiobutton/primeng-radiobutton.metadata.json +1 -1
- package/resources/components/button/button.css +4 -0
- package/resources/components/calendar/calendar.css +0 -1
- package/resources/components/orderlist/orderlist.css +1 -0
- package/resources/components/picklist/picklist.css +1 -0
- package/resources/components/sidebar/sidebar.css +12 -26
- package/resources/primeng.css +4 -0
- package/resources/primeng.min.css +1 -1
- package/resources/themes/arya-blue/theme.css +49 -9
- package/resources/themes/arya-green/theme.css +49 -9
- package/resources/themes/arya-orange/theme.css +49 -9
- package/resources/themes/arya-purple/theme.css +49 -9
- package/resources/themes/bootstrap4-dark-blue/theme.css +49 -9
- package/resources/themes/bootstrap4-dark-purple/theme.css +49 -9
- package/resources/themes/bootstrap4-light-blue/theme.css +49 -9
- package/resources/themes/bootstrap4-light-purple/theme.css +49 -9
- package/resources/themes/fluent-light/theme.css +47 -7
- package/resources/themes/luna-amber/theme.css +49 -9
- package/resources/themes/luna-blue/theme.css +49 -9
- package/resources/themes/luna-green/theme.css +49 -9
- package/resources/themes/luna-pink/theme.css +49 -9
- package/resources/themes/md-dark-deeppurple/theme.css +60 -14
- package/resources/themes/md-dark-indigo/theme.css +60 -14
- package/resources/themes/md-light-deeppurple/theme.css +60 -14
- package/resources/themes/md-light-indigo/theme.css +60 -14
- package/resources/themes/mdc-dark-deeppurple/theme.css +60 -14
- package/resources/themes/mdc-dark-indigo/theme.css +60 -14
- package/resources/themes/mdc-light-deeppurple/theme.css +60 -14
- package/resources/themes/mdc-light-indigo/theme.css +60 -14
- package/resources/themes/nova/theme.css +49 -9
- package/resources/themes/nova-accent/theme.css +49 -9
- package/resources/themes/nova-alt/theme.css +49 -9
- package/resources/themes/rhea/theme.css +49 -9
- package/resources/themes/saga-blue/theme.css +49 -9
- package/resources/themes/saga-green/theme.css +49 -9
- package/resources/themes/saga-orange/theme.css +49 -9
- package/resources/themes/saga-purple/theme.css +49 -9
- package/resources/themes/vela-blue/theme.css +49 -9
- package/resources/themes/vela-green/theme.css +49 -9
- package/resources/themes/vela-orange/theme.css +49 -9
- package/resources/themes/vela-purple/theme.css +49 -9
- package/scrollpanel/primeng-scrollpanel.metadata.json +1 -1
- package/selectbutton/primeng-selectbutton.metadata.json +1 -1
- package/sidebar/primeng-sidebar.metadata.json +1 -1
- package/sidebar/sidebar.d.ts +12 -8
- package/skeleton/skeleton.d.ts +1 -1
- package/splitter/primeng-splitter.metadata.json +1 -1
- package/splitter/splitter.d.ts +5 -1
- package/table/primeng-table.metadata.json +1 -1
- package/table/table.d.ts +3 -0
- package/tabmenu/primeng-tabmenu.metadata.json +1 -1
- package/tabview/primeng-tabview.metadata.json +1 -1
- package/tieredmenu/primeng-tieredmenu.metadata.json +1 -1
- package/timeline/primeng-timeline.metadata.json +1 -1
- package/togglebutton/primeng-togglebutton.metadata.json +1 -1
- package/tree/primeng-tree.metadata.json +1 -1
- package/tree/tree.d.ts +12 -4
- package/treetable/primeng-treetable.metadata.json +1 -1
- package/tristatecheckbox/primeng-tristatecheckbox.metadata.json +1 -1
- package/tristatecheckbox/tristatecheckbox.d.ts +2 -0
@@ -1,16 +1,22 @@
|
|
1
|
-
import { EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, ElementRef, Renderer2, ChangeDetectorRef, Input,
|
2
|
-
import {
|
1
|
+
import { EventEmitter, Component, ChangeDetectionStrategy, ViewEncapsulation, ElementRef, Renderer2, ChangeDetectorRef, Input, ContentChildren, Output, NgModule } from '@angular/core';
|
2
|
+
import { animation, style, animate, trigger, transition, useAnimation } from '@angular/animations';
|
3
3
|
import { CommonModule } from '@angular/common';
|
4
4
|
import { RippleModule } from 'primeng/ripple';
|
5
5
|
import { DomHandler } from 'primeng/dom';
|
6
6
|
import { PrimeTemplate } from 'primeng/api';
|
7
7
|
|
8
|
+
const showAnimation = animation([
|
9
|
+
style({ transform: '{{transform}}', opacity: 0 }),
|
10
|
+
animate('{{transition}}')
|
11
|
+
]);
|
12
|
+
const hideAnimation = animation([
|
13
|
+
animate('{{transition}}', style({ transform: '{{transform}}', opacity: 0 }))
|
14
|
+
]);
|
8
15
|
class Sidebar {
|
9
16
|
constructor(el, renderer, cd) {
|
10
17
|
this.el = el;
|
11
18
|
this.renderer = renderer;
|
12
19
|
this.cd = cd;
|
13
|
-
this.position = 'left';
|
14
20
|
this.blockScroll = false;
|
15
21
|
this.autoZIndex = true;
|
16
22
|
this.baseZIndex = 0;
|
@@ -18,21 +24,16 @@ class Sidebar {
|
|
18
24
|
this.dismissible = true;
|
19
25
|
this.showCloseIcon = true;
|
20
26
|
this.closeOnEscape = true;
|
27
|
+
this.transitionOptions = '150ms cubic-bezier(0, 0, 0.2, 1)';
|
21
28
|
this.onShow = new EventEmitter();
|
22
29
|
this.onHide = new EventEmitter();
|
23
30
|
this.visibleChange = new EventEmitter();
|
31
|
+
this._position = "left";
|
32
|
+
this._fullScreen = false;
|
33
|
+
this.transformOptions = "translate3d(-100%, 0px, 0px)";
|
24
34
|
}
|
25
35
|
ngAfterViewInit() {
|
26
36
|
this.initialized = true;
|
27
|
-
if (this.appendTo) {
|
28
|
-
if (this.appendTo === 'body')
|
29
|
-
document.body.appendChild(this.containerViewChild.nativeElement);
|
30
|
-
else
|
31
|
-
DomHandler.appendChild(this.containerViewChild.nativeElement, this.appendTo);
|
32
|
-
}
|
33
|
-
if (this.visible) {
|
34
|
-
this.show();
|
35
|
-
}
|
36
37
|
}
|
37
38
|
ngAfterContentInit() {
|
38
39
|
this.templates.forEach((item) => {
|
@@ -51,31 +52,44 @@ class Sidebar {
|
|
51
52
|
}
|
52
53
|
set visible(val) {
|
53
54
|
this._visible = val;
|
54
|
-
if (this.initialized && this.containerViewChild && this.containerViewChild.nativeElement) {
|
55
|
-
if (this._visible)
|
56
|
-
this.show();
|
57
|
-
else {
|
58
|
-
if (this.preventVisibleChangePropagation)
|
59
|
-
this.preventVisibleChangePropagation = false;
|
60
|
-
else
|
61
|
-
this.hide();
|
62
|
-
}
|
63
|
-
}
|
64
55
|
}
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
56
|
+
get position() {
|
57
|
+
return this._position;
|
58
|
+
}
|
59
|
+
;
|
60
|
+
set position(value) {
|
61
|
+
this._position = value;
|
62
|
+
switch (value) {
|
63
|
+
case 'left':
|
64
|
+
this.transformOptions = "translate3d(100%, 0px, 0px)";
|
65
|
+
break;
|
66
|
+
case 'right':
|
67
|
+
this.transformOptions = "translate3d(100%, 0px, 0px)";
|
68
|
+
break;
|
69
|
+
case 'bottom':
|
70
|
+
this.transformOptions = "translate3d(0px, 100%, 0px)";
|
71
|
+
break;
|
72
|
+
case 'top':
|
73
|
+
this.transformOptions = "translate3d(0px, -100%, 0px)";
|
74
|
+
break;
|
69
75
|
}
|
70
76
|
}
|
77
|
+
get fullScreen() {
|
78
|
+
return this._fullScreen;
|
79
|
+
}
|
80
|
+
set fullScreen(value) {
|
81
|
+
this._fullScreen = value;
|
82
|
+
if (value)
|
83
|
+
this.transformOptions = "none";
|
84
|
+
}
|
71
85
|
show() {
|
72
|
-
this.executePostDisplayActions = true;
|
73
86
|
if (this.autoZIndex) {
|
74
|
-
this.
|
87
|
+
this.container.style.zIndex = String(this.baseZIndex + (++DomHandler.zindex));
|
75
88
|
}
|
76
89
|
if (this.modal) {
|
77
90
|
this.enableModality();
|
78
91
|
}
|
92
|
+
this.onShow.emit({});
|
79
93
|
}
|
80
94
|
hide() {
|
81
95
|
this.onHide.emit({});
|
@@ -84,7 +98,6 @@ class Sidebar {
|
|
84
98
|
}
|
85
99
|
}
|
86
100
|
close(event) {
|
87
|
-
this.preventVisibleChangePropagation = true;
|
88
101
|
this.hide();
|
89
102
|
this.visibleChange.emit(false);
|
90
103
|
event.preventDefault();
|
@@ -92,7 +105,7 @@ class Sidebar {
|
|
92
105
|
enableModality() {
|
93
106
|
if (!this.mask) {
|
94
107
|
this.mask = document.createElement('div');
|
95
|
-
this.mask.style.zIndex = String(parseInt(this.
|
108
|
+
this.mask.style.zIndex = String(parseInt(this.container.style.zIndex) - 1);
|
96
109
|
DomHandler.addMultipleClasses(this.mask, 'p-component-overlay p-sidebar-mask');
|
97
110
|
if (this.dismissible) {
|
98
111
|
this.maskClickListener = this.renderer.listen(this.mask, 'click', (event) => {
|
@@ -120,20 +133,32 @@ class Sidebar {
|
|
120
133
|
onAnimationStart(event) {
|
121
134
|
switch (event.toState) {
|
122
135
|
case 'visible':
|
136
|
+
this.container = event.element;
|
137
|
+
this.appendContainer();
|
138
|
+
this.show();
|
123
139
|
if (this.closeOnEscape) {
|
124
140
|
this.bindDocumentEscapeListener();
|
125
141
|
}
|
126
142
|
break;
|
127
|
-
case '
|
143
|
+
case 'void':
|
144
|
+
this.hide();
|
128
145
|
this.unbindGlobalListeners();
|
129
146
|
break;
|
130
147
|
}
|
131
148
|
}
|
149
|
+
appendContainer() {
|
150
|
+
if (this.appendTo) {
|
151
|
+
if (this.appendTo === 'body')
|
152
|
+
document.body.appendChild(this.container);
|
153
|
+
else
|
154
|
+
DomHandler.appendChild(this.container, this.appendTo);
|
155
|
+
}
|
156
|
+
}
|
132
157
|
bindDocumentEscapeListener() {
|
133
158
|
const documentTarget = this.el ? this.el.nativeElement.ownerDocument : 'document';
|
134
159
|
this.documentEscapeListener = this.renderer.listen(documentTarget, 'keydown', (event) => {
|
135
160
|
if (event.which == 27) {
|
136
|
-
if (parseInt(this.
|
161
|
+
if (parseInt(this.container.style.zIndex) === (DomHandler.zindex + this.baseZIndex)) {
|
137
162
|
this.close(event);
|
138
163
|
}
|
139
164
|
}
|
@@ -161,7 +186,7 @@ class Sidebar {
|
|
161
186
|
this.hide();
|
162
187
|
}
|
163
188
|
if (this.appendTo) {
|
164
|
-
this.el.nativeElement.appendChild(this.
|
189
|
+
this.el.nativeElement.appendChild(this.container);
|
165
190
|
}
|
166
191
|
this.unbindGlobalListeners();
|
167
192
|
}
|
@@ -171,14 +196,15 @@ Sidebar.decorators = [
|
|
171
196
|
selector: 'p-sidebar',
|
172
197
|
template: `
|
173
198
|
<div #container [ngClass]="{'p-sidebar':true, 'p-sidebar-active': visible,
|
174
|
-
'p-sidebar-left': (position === 'left'), 'p-sidebar-right': (position === 'right'),
|
175
|
-
'p-sidebar-top': (position === 'top'), 'p-sidebar-bottom': (position === 'bottom'),
|
176
|
-
'p-sidebar-full': fullScreen}"
|
177
|
-
|
178
|
-
|
179
|
-
<button type="button" class="p-sidebar-close p-link" *ngIf="showCloseIcon" (click)="close($event)" (keydown.enter)="close($event)" [attr.aria-label]="ariaCloseLabel" pRipple>
|
199
|
+
'p-sidebar-left': (position === 'left' && !fullScreen), 'p-sidebar-right': (position === 'right' && !fullScreen),
|
200
|
+
'p-sidebar-top': (position === 'top' && !fullScreen), 'p-sidebar-bottom': (position === 'bottom' && !fullScreen),
|
201
|
+
'p-sidebar-full': fullScreen}" *ngIf="visible" [@panelState]="{value: 'visible', params: {transform: transformOptions, transition: transitionOptions}}" (@panelState.start)="onAnimationStart($event)" [ngStyle]="style" [class]="styleClass" role="complementary" [attr.aria-modal]="modal">
|
202
|
+
<div class="p-sidebar-header">
|
203
|
+
<button type="button" class="p-sidebar-close p-sidebar-icon p-link" *ngIf="showCloseIcon" (click)="close($event)" (keydown.enter)="close($event)" [attr.aria-label]="ariaCloseLabel" pRipple>
|
180
204
|
<span class="p-sidebar-close-icon pi pi-times"></span>
|
181
205
|
</button>
|
206
|
+
</div>
|
207
|
+
<div class="p-sidebar-content">
|
182
208
|
<ng-content></ng-content>
|
183
209
|
<ng-container *ngTemplateOutlet="contentTemplate"></ng-container>
|
184
210
|
</div>
|
@@ -186,19 +212,17 @@ Sidebar.decorators = [
|
|
186
212
|
`,
|
187
213
|
animations: [
|
188
214
|
trigger('panelState', [
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
transition('visible => hidden', animate('300ms ease-in')),
|
196
|
-
transition('hidden => visible', animate('300ms ease-out'))
|
215
|
+
transition('void => visible', [
|
216
|
+
useAnimation(showAnimation)
|
217
|
+
]),
|
218
|
+
transition('visible => void', [
|
219
|
+
useAnimation(hideAnimation)
|
220
|
+
])
|
197
221
|
])
|
198
222
|
],
|
199
223
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
200
224
|
encapsulation: ViewEncapsulation.None,
|
201
|
-
styles: [".p-sidebar{position:fixed;transition:transform .3s}.p-sidebar-content{position:relative}.p-sidebar-
|
225
|
+
styles: [".p-sidebar{display:flex;flex-direction:column;position:fixed;transition:transform .3s}.p-sidebar-content{overflow-y:auto;position:relative}.p-sidebar-header{align-items:center;display:flex;justify-content:flex-end}.p-sidebar-icon{align-items:center;display:flex;justify-content:center}.p-sidebar-mask{transition-property:background-color}.p-sidebar-mask,.p-sidebar-mask.p-sidebar-mask-leave.p-component-overlay{background-color:transparent}.p-sidebar-left{height:100%;left:0;top:0;width:20rem}.p-sidebar-right{height:100%;right:0;top:0;width:20rem}.p-sidebar-top{height:10rem;left:0;top:0;width:100%}.p-sidebar-bottom{bottom:0;height:10rem;left:0;width:100%}.p-sidebar-full{height:100%;left:0;top:0;transition:none;width:100%}.p-sidebar-left.p-sidebar-sm,.p-sidebar-right.p-sidebar-sm{width:20rem}.p-sidebar-left.p-sidebar-md,.p-sidebar-right.p-sidebar-md{width:40rem}.p-sidebar-left.p-sidebar-lg,.p-sidebar-right.p-sidebar-lg{width:60rem}.p-sidebar-bottom.p-sidebar-sm,.p-sidebar-top.p-sidebar-sm{height:10rem}.p-sidebar-bottom.p-sidebar-md,.p-sidebar-top.p-sidebar-md{height:20rem}.p-sidebar-bottom.p-sidebar-lg,.p-sidebar-top.p-sidebar-lg{height:30rem}@media screen and (max-width:64em){.p-sidebar-left.p-sidebar-lg,.p-sidebar-left.p-sidebar-md,.p-sidebar-right.p-sidebar-lg,.p-sidebar-right.p-sidebar-md{width:20rem}}"]
|
202
226
|
},] }
|
203
227
|
];
|
204
228
|
Sidebar.ctorParameters = () => [
|
@@ -207,8 +231,6 @@ Sidebar.ctorParameters = () => [
|
|
207
231
|
{ type: ChangeDetectorRef }
|
208
232
|
];
|
209
233
|
Sidebar.propDecorators = {
|
210
|
-
position: [{ type: Input }],
|
211
|
-
fullScreen: [{ type: Input }],
|
212
234
|
appendTo: [{ type: Input }],
|
213
235
|
blockScroll: [{ type: Input }],
|
214
236
|
style: [{ type: Input }],
|
@@ -220,12 +242,14 @@ Sidebar.propDecorators = {
|
|
220
242
|
dismissible: [{ type: Input }],
|
221
243
|
showCloseIcon: [{ type: Input }],
|
222
244
|
closeOnEscape: [{ type: Input }],
|
223
|
-
|
245
|
+
transitionOptions: [{ type: Input }],
|
224
246
|
templates: [{ type: ContentChildren, args: [PrimeTemplate,] }],
|
225
247
|
onShow: [{ type: Output }],
|
226
248
|
onHide: [{ type: Output }],
|
227
249
|
visibleChange: [{ type: Output }],
|
228
|
-
visible: [{ type: Input }]
|
250
|
+
visible: [{ type: Input }],
|
251
|
+
position: [{ type: Input }],
|
252
|
+
fullScreen: [{ type: Input }]
|
229
253
|
};
|
230
254
|
class SidebarModule {
|
231
255
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-sidebar.js","sources":["../../src/app/components/sidebar/sidebar.ts","../../src/app/components/sidebar/primeng-sidebar.ts"],"sourcesContent":["import {NgModule,Component,AfterViewInit,AfterViewChecked,OnDestroy,Input,Output,EventEmitter,ViewChild,ElementRef,Renderer2,ChangeDetectionStrategy, ViewEncapsulation, ContentChildren, QueryList, AfterContentInit, TemplateRef, ChangeDetectorRef} from '@angular/core';\nimport {trigger, state, style, transition, animate} from '@angular/animations';\nimport {CommonModule} from '@angular/common';\nimport {RippleModule} from 'primeng/ripple';\nimport {DomHandler} from 'primeng/dom';\nimport {PrimeTemplate} from 'primeng/api';\n\n@Component({\n selector: 'p-sidebar',\n template: `\n <div #container [ngClass]=\"{'p-sidebar':true, 'p-sidebar-active': visible,\n 'p-sidebar-left': (position === 'left'), 'p-sidebar-right': (position === 'right'),\n 'p-sidebar-top': (position === 'top'), 'p-sidebar-bottom': (position === 'bottom'),\n 'p-sidebar-full': fullScreen}\"\n [@panelState]=\"visible ? 'visible' : 'hidden'\" (@panelState.start)=\"onAnimationStart($event)\" [ngStyle]=\"style\" [class]=\"styleClass\" role=\"complementary\" [attr.aria-modal]=\"modal\">\n <div class=\"p-sidebar-content\">\n <button type=\"button\" class=\"p-sidebar-close p-link\" *ngIf=\"showCloseIcon\" (click)=\"close($event)\" (keydown.enter)=\"close($event)\" [attr.aria-label]=\"ariaCloseLabel\" pRipple>\n <span class=\"p-sidebar-close-icon pi pi-times\"></span>\n </button>\n <ng-content></ng-content>\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n </div>\n </div>\n `,\n animations: [\n trigger('panelState', [\n state('hidden', style({\n opacity: 0\n })),\n state('visible', style({\n opacity: 1\n })),\n transition('visible => hidden', animate('300ms ease-in')),\n transition('hidden => visible', animate('300ms ease-out'))\n ])\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./sidebar.css']\n})\nexport class Sidebar implements AfterViewInit, AfterContentInit, AfterViewChecked, OnDestroy {\n\n @Input() position: string = 'left';\n\n @Input() fullScreen: boolean;\n\n @Input() appendTo: any;\n\n @Input() blockScroll: boolean = false;\n\n @Input() style: any;\n\n @Input() styleClass: string;\n\n @Input() ariaCloseLabel: string;\n\n @Input() autoZIndex: boolean = true;\n\n @Input() baseZIndex: number = 0;\n\n @Input() modal: boolean = true;\n\n @Input() dismissible: boolean = true;\n\n @Input() showCloseIcon: boolean = true;\n\n @Input() closeOnEscape: boolean = true;\n\n @ViewChild('container') containerViewChild: ElementRef;\n\n @ContentChildren(PrimeTemplate) templates: QueryList<any>;\n\n @Output() onShow: EventEmitter<any> = new EventEmitter();\n\n @Output() onHide: EventEmitter<any> = new EventEmitter();\n\n @Output() visibleChange:EventEmitter<any> = new EventEmitter();\n\n initialized: boolean;\n\n _visible: boolean;\n\n preventVisibleChangePropagation: boolean;\n\n mask: HTMLDivElement;\n\n maskClickListener: Function;\n\n documentEscapeListener: Function;\n\n executePostDisplayActions: boolean;\n\n contentTemplate: TemplateRef<any>;\n\n constructor(public el: ElementRef, public renderer: Renderer2, public cd: ChangeDetectorRef) {}\n\n ngAfterViewInit() {\n this.initialized = true;\n\n if (this.appendTo) {\n if (this.appendTo === 'body')\n document.body.appendChild(this.containerViewChild.nativeElement);\n else\n DomHandler.appendChild(this.containerViewChild.nativeElement, this.appendTo);\n }\n\n if (this.visible) {\n this.show();\n }\n }\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch(item.getType()) {\n case 'content':\n this.contentTemplate = item.template;\n break;\n\n default:\n this.contentTemplate = item.template;\n break;\n }\n });\n }\n\n @Input() get visible(): boolean {\n return this._visible;\n }\n\n set visible(val:boolean) {\n this._visible = val;\n\n if (this.initialized && this.containerViewChild && this.containerViewChild.nativeElement) {\n if (this._visible)\n this.show();\n else {\n if (this.preventVisibleChangePropagation)\n this.preventVisibleChangePropagation = false;\n else\n this.hide();\n }\n }\n }\n\n ngAfterViewChecked() {\n if (this.executePostDisplayActions) {\n this.onShow.emit({});\n this.executePostDisplayActions = false;\n }\n }\n\n show() {\n this.executePostDisplayActions = true;\n if (this.autoZIndex) {\n this.containerViewChild.nativeElement.style.zIndex = String(this.baseZIndex + (++DomHandler.zindex));\n }\n\n if (this.modal) {\n this.enableModality();\n }\n }\n\n hide() {\n this.onHide.emit({});\n\n if (this.modal) {\n this.disableModality();\n }\n }\n\n close(event: Event) {\n this.preventVisibleChangePropagation = true;\n this.hide();\n this.visibleChange.emit(false);\n event.preventDefault();\n }\n\n enableModality() {\n if (!this.mask) {\n this.mask = document.createElement('div');\n this.mask.style.zIndex = String(parseInt(this.containerViewChild.nativeElement.style.zIndex) - 1);\n DomHandler.addMultipleClasses(this.mask, 'p-component-overlay p-sidebar-mask');\n\n if (this.dismissible){\n this.maskClickListener = this.renderer.listen(this.mask, 'click', (event: any) => {\n if (this.dismissible) {\n this.close(event);\n }\n });\n }\n\n document.body.appendChild(this.mask);\n if (this.blockScroll) {\n DomHandler.addClass(document.body, 'p-overflow-hidden');\n }\n }\n }\n\n disableModality() {\n if (this.mask) {\n this.unbindMaskClickListener();\n document.body.removeChild(this.mask);\n if (this.blockScroll) {\n DomHandler.removeClass(document.body, 'p-overflow-hidden');\n }\n this.mask = null;\n }\n }\n\n onAnimationStart(event){\n switch(event.toState) {\n case 'visible':\n if (this.closeOnEscape) {\n this.bindDocumentEscapeListener();\n }\n break;\n\n case 'hidden':\n this.unbindGlobalListeners();\n break;\n }\n }\n\n bindDocumentEscapeListener() {\n const documentTarget: any = this.el ? this.el.nativeElement.ownerDocument : 'document';\n\n this.documentEscapeListener = this.renderer.listen(documentTarget, 'keydown', (event) => {\n if (event.which == 27) {\n if (parseInt(this.containerViewChild.nativeElement.style.zIndex) === (DomHandler.zindex + this.baseZIndex)) {\n this.close(event);\n }\n }\n });\n }\n\n unbindDocumentEscapeListener() {\n if (this.documentEscapeListener) {\n this.documentEscapeListener();\n this.documentEscapeListener = null;\n }\n }\n\n unbindMaskClickListener() {\n if (this.maskClickListener) {\n this.maskClickListener();\n this.maskClickListener = null;\n }\n }\n\n unbindGlobalListeners() {\n this.unbindMaskClickListener();\n this.unbindDocumentEscapeListener();\n }\n\n ngOnDestroy() {\n this.initialized = false;\n\n if (this.visible) {\n this.hide();\n }\n\n if (this.appendTo) {\n this.el.nativeElement.appendChild(this.containerViewChild.nativeElement);\n }\n\n\t\tthis.unbindGlobalListeners();\n }\n}\n\n@NgModule({\n imports: [CommonModule,RippleModule],\n exports: [Sidebar],\n declarations: [Sidebar]\n})\nexport class SidebarModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"primeng-sidebar.js","sources":["../../src/app/components/sidebar/sidebar.ts","../../src/app/components/sidebar/primeng-sidebar.ts"],"sourcesContent":["import {NgModule,Component,AfterViewInit,AfterViewChecked,OnDestroy,Input,Output,EventEmitter,ElementRef,Renderer2,ChangeDetectionStrategy, ViewEncapsulation, ContentChildren, QueryList, AfterContentInit, TemplateRef, ChangeDetectorRef} from '@angular/core';\nimport {trigger, style, transition, animate, animation, useAnimation} from '@angular/animations';\nimport {CommonModule} from '@angular/common';\nimport {RippleModule} from 'primeng/ripple';\nimport {DomHandler} from 'primeng/dom';\nimport {PrimeTemplate} from 'primeng/api';\n\nconst showAnimation = animation([\n style({ transform: '{{transform}}', opacity: 0 }),\n animate('{{transition}}')\n]);\n\nconst hideAnimation = animation([\n animate('{{transition}}', style({ transform: '{{transform}}', opacity: 0 }))\n]);\n\n@Component({\n selector: 'p-sidebar',\n template: `\n <div #container [ngClass]=\"{'p-sidebar':true, 'p-sidebar-active': visible,\n 'p-sidebar-left': (position === 'left' && !fullScreen), 'p-sidebar-right': (position === 'right' && !fullScreen),\n 'p-sidebar-top': (position === 'top' && !fullScreen), 'p-sidebar-bottom': (position === 'bottom' && !fullScreen),\n 'p-sidebar-full': fullScreen}\" *ngIf=\"visible\" [@panelState]=\"{value: 'visible', params: {transform: transformOptions, transition: transitionOptions}}\" (@panelState.start)=\"onAnimationStart($event)\" [ngStyle]=\"style\" [class]=\"styleClass\" role=\"complementary\" [attr.aria-modal]=\"modal\">\n <div class=\"p-sidebar-header\">\n <button type=\"button\" class=\"p-sidebar-close p-sidebar-icon p-link\" *ngIf=\"showCloseIcon\" (click)=\"close($event)\" (keydown.enter)=\"close($event)\" [attr.aria-label]=\"ariaCloseLabel\" pRipple>\n <span class=\"p-sidebar-close-icon pi pi-times\"></span>\n </button>\n </div>\n <div class=\"p-sidebar-content\">\n <ng-content></ng-content>\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n </div>\n </div>\n `,\n animations: [\n trigger('panelState', [\n transition('void => visible', [\n useAnimation(showAnimation)\n ]),\n transition('visible => void', [\n useAnimation(hideAnimation)\n ])\n ])\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./sidebar.css']\n})\nexport class Sidebar implements AfterViewInit, AfterContentInit, OnDestroy {\n\n @Input() appendTo: any;\n\n @Input() blockScroll: boolean = false;\n\n @Input() style: any;\n\n @Input() styleClass: string;\n\n @Input() ariaCloseLabel: string;\n\n @Input() autoZIndex: boolean = true;\n\n @Input() baseZIndex: number = 0;\n\n @Input() modal: boolean = true;\n\n @Input() dismissible: boolean = true;\n\n @Input() showCloseIcon: boolean = true;\n\n @Input() closeOnEscape: boolean = true;\n\n @Input() transitionOptions: string = '150ms cubic-bezier(0, 0, 0.2, 1)';\n\n @ContentChildren(PrimeTemplate) templates: QueryList<any>;\n\n @Output() onShow: EventEmitter<any> = new EventEmitter();\n\n @Output() onHide: EventEmitter<any> = new EventEmitter();\n\n @Output() visibleChange:EventEmitter<any> = new EventEmitter();\n\n initialized: boolean;\n\n _visible: boolean;\n\n _position: string = \"left\";\n\n _fullScreen: boolean = false;\n\n container: HTMLDivElement;\n\n transformOptions: any = \"translate3d(-100%, 0px, 0px)\";\n\n mask: HTMLDivElement;\n\n maskClickListener: Function;\n\n documentEscapeListener: Function;\n\n contentTemplate: TemplateRef<any>;\n\n constructor(public el: ElementRef, public renderer: Renderer2, public cd: ChangeDetectorRef) {}\n\n ngAfterViewInit() {\n this.initialized = true;\n }\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch(item.getType()) {\n case 'content':\n this.contentTemplate = item.template;\n break;\n\n default:\n this.contentTemplate = item.template;\n break;\n }\n });\n }\n\n @Input() get visible(): boolean {\n return this._visible;\n }\n\n set visible(val:boolean) {\n this._visible = val;\n }\n\n @Input() get position(): string {\n return this._position;\n };\n\n set position(value: string) {\n this._position = value;\n\n switch (value) {\n case 'left':\n this.transformOptions = \"translate3d(100%, 0px, 0px)\";\n break;\n case 'right':\n this.transformOptions = \"translate3d(100%, 0px, 0px)\";\n break;\n case 'bottom':\n this.transformOptions = \"translate3d(0px, 100%, 0px)\";\n break;\n case 'top':\n this.transformOptions = \"translate3d(0px, -100%, 0px)\";\n break;\n }\n }\n\n @Input() get fullScreen(): boolean {\n return this._fullScreen;\n }\n\n set fullScreen(value: boolean) {\n this._fullScreen = value;\n\n if (value)\n this.transformOptions = \"none\";\n }\n\n show() {\n if (this.autoZIndex) {\n this.container.style.zIndex = String(this.baseZIndex + (++DomHandler.zindex));\n }\n\n if (this.modal) {\n this.enableModality();\n }\n\n this.onShow.emit({});\n }\n\n hide() {\n this.onHide.emit({});\n\n if (this.modal) {\n this.disableModality();\n }\n }\n\n close(event: Event) {\n this.hide();\n this.visibleChange.emit(false);\n event.preventDefault();\n }\n\n enableModality() {\n if (!this.mask) {\n this.mask = document.createElement('div');\n this.mask.style.zIndex = String(parseInt(this.container.style.zIndex) - 1);\n DomHandler.addMultipleClasses(this.mask, 'p-component-overlay p-sidebar-mask');\n\n if (this.dismissible){\n this.maskClickListener = this.renderer.listen(this.mask, 'click', (event: any) => {\n if (this.dismissible) {\n this.close(event);\n }\n });\n }\n\n document.body.appendChild(this.mask);\n if (this.blockScroll) {\n DomHandler.addClass(document.body, 'p-overflow-hidden');\n }\n }\n }\n\n disableModality() {\n if (this.mask) {\n this.unbindMaskClickListener();\n document.body.removeChild(this.mask);\n if (this.blockScroll) {\n DomHandler.removeClass(document.body, 'p-overflow-hidden');\n }\n this.mask = null;\n }\n }\n\n onAnimationStart(event){\n switch(event.toState) {\n case 'visible':\n this.container = event.element;\n this.appendContainer();\n this.show();\n\n if (this.closeOnEscape) {\n this.bindDocumentEscapeListener();\n }\n break;\n\n case 'void':\n this.hide();\n this.unbindGlobalListeners();\n break;\n }\n }\n\n appendContainer() {\n if (this.appendTo) {\n if (this.appendTo === 'body')\n document.body.appendChild(this.container);\n else\n DomHandler.appendChild(this.container, this.appendTo);\n }\n }\n\n bindDocumentEscapeListener() {\n const documentTarget: any = this.el ? this.el.nativeElement.ownerDocument : 'document';\n\n this.documentEscapeListener = this.renderer.listen(documentTarget, 'keydown', (event) => {\n if (event.which == 27) {\n if (parseInt(this.container.style.zIndex) === (DomHandler.zindex + this.baseZIndex)) {\n this.close(event);\n }\n }\n });\n }\n\n unbindDocumentEscapeListener() {\n if (this.documentEscapeListener) {\n this.documentEscapeListener();\n this.documentEscapeListener = null;\n }\n }\n\n unbindMaskClickListener() {\n if (this.maskClickListener) {\n this.maskClickListener();\n this.maskClickListener = null;\n }\n }\n\n unbindGlobalListeners() {\n this.unbindMaskClickListener();\n this.unbindDocumentEscapeListener();\n }\n\n ngOnDestroy() {\n this.initialized = false;\n\n if (this.visible) {\n this.hide();\n }\n\n if (this.appendTo) {\n this.el.nativeElement.appendChild(this.container);\n }\n\n\t\tthis.unbindGlobalListeners();\n }\n}\n\n@NgModule({\n imports: [CommonModule,RippleModule],\n exports: [Sidebar],\n declarations: [Sidebar]\n})\nexport class SidebarModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-skeleton.js","sources":["../../src/app/components/skeleton/skeleton.ts","../../src/app/components/skeleton/primeng-skeleton.ts"],"sourcesContent":["import { NgModule, Component, ChangeDetectionStrategy, ViewEncapsulation, Input} from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'p-skeleton',\n template: `\n <div [ngClass]=\"containerClass()\" [class]=\"styleClass\" [ngStyle]=\"containerStyle()\">\n </div>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./skeleton.css']\n})\nexport class Skeleton {\n\n @Input() styleClass: string;\n\n @Input() style: any;\n\n @Input() shape: string = \"rectangle\";\n\n @Input() animation: string = \"wave\";\n\n @Input() borderRadius: string = null;\n\n @Input() size: string = null;\n\n @Input() width: string = \"100%\";\n \n @Input() height: string = \"1rem\";\n\n containerClass() {\n return {\n 'p-skeleton p-component': true,\n 'p-skeleton-circle': this.shape === 'circle',\n 'p-skeleton-
|
1
|
+
{"version":3,"file":"primeng-skeleton.js","sources":["../../src/app/components/skeleton/skeleton.ts","../../src/app/components/skeleton/primeng-skeleton.ts"],"sourcesContent":["import { NgModule, Component, ChangeDetectionStrategy, ViewEncapsulation, Input} from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@Component({\n selector: 'p-skeleton',\n template: `\n <div [ngClass]=\"containerClass()\" [class]=\"styleClass\" [ngStyle]=\"containerStyle()\">\n </div>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styleUrls: ['./skeleton.css']\n})\nexport class Skeleton {\n\n @Input() styleClass: string;\n\n @Input() style: any;\n\n @Input() shape: string = \"rectangle\";\n\n @Input() animation: string = \"wave\";\n\n @Input() borderRadius: string = null;\n\n @Input() size: string = null;\n\n @Input() width: string = \"100%\";\n \n @Input() height: string = \"1rem\";\n\n containerClass() {\n return {\n 'p-skeleton p-component': true,\n 'p-skeleton-circle': this.shape === 'circle',\n 'p-skeleton-none': this.animation === 'none'\n };\n }\n\n containerStyle() {\n if (this.size)\n return {...this.style, width: this.size, height: this.size, borderRadius: this.borderRadius};\n else\n return {...this.style, width: this.width, height: this.height, borderRadius: this.borderRadius};\n }\n}\n\n@NgModule({\n imports: [CommonModule],\n exports: [Skeleton],\n declarations: [Skeleton]\n})\nexport class SkeletonModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;MAaa,QAAQ;IAVrB;QAgBa,UAAK,GAAW,WAAW,CAAC;QAE5B,cAAS,GAAW,MAAM,CAAC;QAE3B,iBAAY,GAAW,IAAI,CAAC;QAE5B,SAAI,GAAW,IAAI,CAAC;QAEpB,UAAK,GAAW,MAAM,CAAC;QAEvB,WAAM,GAAW,MAAM,CAAC;KAgBpC;IAdG,cAAc;QACV,OAAO;YACH,wBAAwB,EAAE,IAAI;YAC9B,mBAAmB,EAAE,IAAI,CAAC,KAAK,KAAK,QAAQ;YAC5C,iBAAiB,EAAE,IAAI,CAAC,SAAS,KAAK,MAAM;SAC/C,CAAC;KACL;IAED,cAAc;QACV,IAAI,IAAI,CAAC,IAAI;YACL,uCAAW,IAAI,CAAC,KAAK,KAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,IAAE;;YAE7F,uCAAW,IAAI,CAAC,KAAK,KAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,IAAE;KAC3G;;;YAzCJ,SAAS,SAAC;gBACP,QAAQ,EAAE,YAAY;gBACtB,QAAQ,EAAE;;;KAGT;gBACD,eAAe,EAAE,uBAAuB,CAAC,MAAM;gBAC/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;;aAExC;;;yBAGI,KAAK;oBAEL,KAAK;oBAEL,KAAK;wBAEL,KAAK;2BAEL,KAAK;mBAEL,KAAK;oBAEL,KAAK;qBAEL,KAAK;;MAuBG,cAAc;;;YAL1B,QAAQ,SAAC;gBACN,OAAO,EAAE,CAAC,YAAY,CAAC;gBACvB,OAAO,EAAE,CAAC,QAAQ,CAAC;gBACnB,YAAY,EAAE,CAAC,QAAQ,CAAC;aAC3B;;;ACnDD;;;;;;"}
|
@@ -19,6 +19,8 @@ class Splitter {
|
|
19
19
|
this.dragging = false;
|
20
20
|
this.mouseMoveListener = null;
|
21
21
|
this.mouseUpListener = null;
|
22
|
+
this.touchMoveListener = null;
|
23
|
+
this.touchEndListener = null;
|
22
24
|
this.size = null;
|
23
25
|
this.gutterElement = null;
|
24
26
|
this.startPos = null;
|
@@ -67,7 +69,7 @@ class Splitter {
|
|
67
69
|
this.gutterElement = event.currentTarget;
|
68
70
|
this.size = this.horizontal() ? DomHandler.getWidth(this.containerViewChild.nativeElement) : DomHandler.getHeight(this.containerViewChild.nativeElement);
|
69
71
|
this.dragging = true;
|
70
|
-
this.startPos = this.horizontal() ? event.pageX : event.pageY;
|
72
|
+
this.startPos = this.horizontal() ? (event.pageX || event.changedTouches[0].pageX) : (event.pageY || event.changedTouches[0].pageY);
|
71
73
|
this.prevPanelElement = this.gutterElement.previousElementSibling;
|
72
74
|
this.nextPanelElement = this.gutterElement.nextElementSibling;
|
73
75
|
this.prevPanelSize = 100 * (this.horizontal() ? DomHandler.getOuterWidth(this.prevPanelElement, true) : DomHandler.getOuterHeight(this.prevPanelElement, true)) / this.size;
|
@@ -79,9 +81,9 @@ class Splitter {
|
|
79
81
|
onResize(event) {
|
80
82
|
let newPos;
|
81
83
|
if (this.horizontal())
|
82
|
-
newPos = (event.pageX * 100 / this.size) - (this.startPos * 100 / this.size);
|
84
|
+
newPos = ((event.pageX || event.changedTouches[0].pageX) * 100 / this.size) - (this.startPos * 100 / this.size);
|
83
85
|
else
|
84
|
-
newPos = (event.pageY * 100 / this.size) - (this.startPos * 100 / this.size);
|
86
|
+
newPos = ((event.pageY || event.changedTouches[0].pageY) * 100 / this.size) - (this.startPos * 100 / this.size);
|
85
87
|
let newPrevPanelSize = this.prevPanelSize + newPos;
|
86
88
|
let newNextPanelSize = this.nextPanelSize - newPos;
|
87
89
|
if (this.validateResize(newPrevPanelSize, newNextPanelSize)) {
|
@@ -105,16 +107,17 @@ class Splitter {
|
|
105
107
|
this.bindMouseListeners();
|
106
108
|
}
|
107
109
|
onGutterTouchStart(event, index) {
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
event.preventDefault();
|
110
|
+
if (event.cancelable) {
|
111
|
+
this.onResizeStart(event, index);
|
112
|
+
this.bindTouchListeners();
|
113
|
+
event.preventDefault();
|
114
|
+
}
|
114
115
|
}
|
115
116
|
onGutterTouchEnd(event) {
|
116
117
|
this.resizeEnd(event);
|
117
|
-
|
118
|
+
this.unbindTouchListeners();
|
119
|
+
if (event.cancelable)
|
120
|
+
event.preventDefault();
|
118
121
|
}
|
119
122
|
validateResize(newPrevPanelSize, newNextPanelSize) {
|
120
123
|
if (this.minSizes.length >= 1 && this.minSizes[0] && this.minSizes[0] > newPrevPanelSize) {
|
@@ -138,6 +141,19 @@ class Splitter {
|
|
138
141
|
document.addEventListener('mouseup', this.mouseUpListener);
|
139
142
|
}
|
140
143
|
}
|
144
|
+
bindTouchListeners() {
|
145
|
+
if (!this.touchMoveListener) {
|
146
|
+
this.touchMoveListener = event => this.onResize(event);
|
147
|
+
document.addEventListener('touchmove', this.touchMoveListener);
|
148
|
+
}
|
149
|
+
if (!this.touchEndListener) {
|
150
|
+
this.touchEndListener = event => {
|
151
|
+
this.resizeEnd(event);
|
152
|
+
this.unbindTouchListeners();
|
153
|
+
};
|
154
|
+
document.addEventListener('touchend', this.touchEndListener);
|
155
|
+
}
|
156
|
+
}
|
141
157
|
unbindMouseListeners() {
|
142
158
|
if (this.mouseMoveListener) {
|
143
159
|
document.removeEventListener('mousemove', this.mouseMoveListener);
|
@@ -148,6 +164,16 @@ class Splitter {
|
|
148
164
|
this.mouseUpListener = null;
|
149
165
|
}
|
150
166
|
}
|
167
|
+
unbindTouchListeners() {
|
168
|
+
if (this.touchMoveListener) {
|
169
|
+
document.removeEventListener('touchmove', this.touchMoveListener);
|
170
|
+
this.touchMoveListener = null;
|
171
|
+
}
|
172
|
+
if (this.touchEndListener) {
|
173
|
+
document.removeEventListener('touchend', this.touchEndListener);
|
174
|
+
this.touchEndListener = null;
|
175
|
+
}
|
176
|
+
}
|
151
177
|
clear() {
|
152
178
|
this.dragging = false;
|
153
179
|
this.size = null;
|
@@ -229,11 +255,11 @@ Splitter.decorators = [
|
|
229
255
|
template: `
|
230
256
|
<div #container [ngClass]="containerClass()" [class]="styleClass" [ngStyle]="style">
|
231
257
|
<ng-template ngFor let-panel let-i="index" [ngForOf]="panels">
|
232
|
-
<div [ngClass]="panelContainerClass()" [class]="panelStyleClass">
|
258
|
+
<div [ngClass]="panelContainerClass()" [class]="panelStyleClass" [ngStyle]="panelStyle">
|
233
259
|
<ng-container *ngTemplateOutlet="panel"></ng-container>
|
234
260
|
</div>
|
235
261
|
<div class="p-splitter-gutter" *ngIf="i !== (panels.length - 1)" [ngStyle]="gutterStyle()"
|
236
|
-
(mousedown)="onGutterMouseDown($event, i)" (touchstart)="onGutterTouchStart($event, i)"
|
262
|
+
(mousedown)="onGutterMouseDown($event, i)" (touchstart)="onGutterTouchStart($event, i)">
|
237
263
|
<div class="p-splitter-gutter-handle"></div>
|
238
264
|
</div>
|
239
265
|
</ng-template>
|
@@ -255,6 +281,7 @@ Splitter.propDecorators = {
|
|
255
281
|
styleClass: [{ type: Input }],
|
256
282
|
panelStyleClass: [{ type: Input }],
|
257
283
|
style: [{ type: Input }],
|
284
|
+
panelStyle: [{ type: Input }],
|
258
285
|
stateStorage: [{ type: Input }],
|
259
286
|
stateKey: [{ type: Input }],
|
260
287
|
layout: [{ type: Input }],
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"primeng-splitter.js","sources":["../../src/app/components/splitter/splitter.ts","../../src/app/components/splitter/primeng-splitter.ts"],"sourcesContent":["import { NgModule, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, ContentChildren, QueryList, ElementRef, ChangeDetectorRef, TemplateRef, ViewChild, Output, EventEmitter } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DomHandler } from 'primeng/dom';\nimport { PrimeTemplate, SharedModule } from 'primeng/api';\n\n@Component({\n selector: 'p-splitter',\n template: `\n <div #container [ngClass]=\"containerClass()\" [class]=\"styleClass\" [ngStyle]=\"style\">\n <ng-template ngFor let-panel let-i=\"index\" [ngForOf]=\"panels\">\n <div [ngClass]=\"panelContainerClass()\" [class]=\"panelStyleClass\">\n <ng-container *ngTemplateOutlet=\"panel\"></ng-container>\n </div>\n <div class=\"p-splitter-gutter\" *ngIf=\"i !== (panels.length - 1)\" [ngStyle]=\"gutterStyle()\" \n (mousedown)=\"onGutterMouseDown($event, i)\" (touchstart)=\"onGutterTouchStart($event, i)\" (touchmove)=\"onGutterTouchMove($event, i)\" (touchend)=\"onGutterTouchEnd($event, i)\">\n <div class=\"p-splitter-gutter-handle\"></div>\n </div>\n </ng-template>\n </div>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n styleUrls: ['./splitter.css'],\n host: {\n '[class.p-splitter-panel-nested]': 'nested'\n }\n})\nexport class Splitter {\n\n @Input() styleClass: string;\n\n @Input() panelStyleClass: string;\n\n @Input() style: any;\n\n @Input() stateStorage: string = \"session\";\n\n @Input() stateKey: string = null;\n\n @Input() layout: string = \"horizontal\";\n\n @Input() gutterSize: number = 4;\n\n @Input() panelSizes: number[] = [];\n\n @Input() minSizes: number[] = [];\n\n @Output() onResizeEnd: EventEmitter<any> = new EventEmitter();\n\n @ContentChildren(PrimeTemplate) templates: QueryList<any>;\n \n @ViewChild('container', { static: false }) containerViewChild: ElementRef;\n\n nested = false;\n\n panels = [];\n\n dragging = false;\n\n mouseMoveListener = null;\n\n mouseUpListener = null;\n\n size = null;\n\n gutterElement = null;\n\n startPos = null;\n\n prevPanelElement = null;\n\n nextPanelElement = null;\n\n nextPanelSize = null;\n\n prevPanelSize = null;\n\n _panelSizes = null;\n\n prevPanelIndex = null;\n\n constructor(public cd: ChangeDetectorRef, private el: ElementRef) { }\n\n ngOnInit() {\n this.nested = this.isNested();\n }\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch(item.getType()) {\n case 'panel':\n this.panels.push(item.template);\n break;\n default: \n this.panels.push(item.template);\n break;\n }\n })\n }\n\n ngAfterViewInit() {\n if (this.panels && this.panels.length) {\n let initialized = false;\n if (this.isStateful()) {\n initialized = this.restoreState();\n }\n\n if (!initialized) {\n let children = [...this.el.nativeElement.children[0].children].filter(child => DomHandler.hasClass(child, 'p-splitter-panel'));\n let _panelSizes = [];\n \n this.panels.map((panel, i) => {\n let panelInitialSize = this.panelSizes.length -1 >= i ? this.panelSizes[i]: null;\n let panelSize = panelInitialSize || (100 / this.panels.length);\n _panelSizes[i] = panelSize;\n children[i].style.flexBasis = 'calc(' + panelSize + '% - ' + ((this.panels.length - 1) * this.gutterSize) + 'px)';\n });\n\n this._panelSizes = _panelSizes;\n }\n }\n }\n\n onResizeStart(event, index) {\n this.gutterElement = event.currentTarget;\n this.size = this.horizontal() ? DomHandler.getWidth(this.containerViewChild.nativeElement) : DomHandler.getHeight(this.containerViewChild.nativeElement);\n this.dragging = true;\n this.startPos = this.horizontal() ? event.pageX : event.pageY;\n this.prevPanelElement = this.gutterElement.previousElementSibling;\n this.nextPanelElement = this.gutterElement.nextElementSibling;\n this.prevPanelSize = 100 * (this.horizontal() ? DomHandler.getOuterWidth(this.prevPanelElement, true): DomHandler.getOuterHeight(this.prevPanelElement, true)) / this.size;\n this.nextPanelSize = 100 * (this.horizontal() ? DomHandler.getOuterWidth(this.nextPanelElement, true): DomHandler.getOuterHeight(this.nextPanelElement, true)) / this.size;\n this.prevPanelIndex = index;\n DomHandler.addClass(this.gutterElement, 'p-splitter-gutter-resizing');\n DomHandler.addClass(this.containerViewChild.nativeElement, 'p-splitter-resizing');\n }\n\n onResize(event) {\n let newPos;\n if (this.horizontal())\n newPos = (event.pageX * 100 / this.size) - (this.startPos * 100 / this.size);\n else\n newPos = (event.pageY * 100 / this.size) - (this.startPos * 100 / this.size);\n\n let newPrevPanelSize = this.prevPanelSize + newPos;\n let newNextPanelSize = this.nextPanelSize - newPos;\n \n if (this.validateResize(newPrevPanelSize, newNextPanelSize)) {\n this.prevPanelElement.style.flexBasis = 'calc(' + newPrevPanelSize + '% - ' + ((this.panels.length - 1) * this.gutterSize) + 'px)';\n this.nextPanelElement.style.flexBasis = 'calc(' + newNextPanelSize + '% - ' + ((this.panels.length - 1) * this.gutterSize) + 'px)';\n this._panelSizes[this.prevPanelIndex] = newPrevPanelSize;\n this._panelSizes[this.prevPanelIndex + 1] = newNextPanelSize;\n }\n }\n\n resizeEnd(event) {\n if (this.isStateful()) {\n this.saveState();\n }\n \n this.onResizeEnd.emit({originalEvent: event, sizes: this._panelSizes})\n DomHandler.removeClass(this.gutterElement, 'p-splitter-gutter-resizing');\n DomHandler.removeClass(this.containerViewChild.nativeElement, 'p-splitter-resizing');\n this.clear();\n }\n\n onGutterMouseDown(event, index) {\n this.onResizeStart(event, index);\n this.bindMouseListeners();\n }\n\n onGutterTouchStart(event, index) {\n this.onResizeStart(event, index);\n event.preventDefault();\n }\n\n onGutterTouchMove(event) {\n this.onResize(event);\n event.preventDefault();\n }\n\n onGutterTouchEnd(event) {\n this.resizeEnd(event);\n event.preventDefault();\n }\n\n validateResize(newPrevPanelSize, newNextPanelSize) {\n if (this.minSizes.length >= 1 && this.minSizes[0] && this.minSizes[0] > newPrevPanelSize) {\n return false;\n }\n\n if (this.minSizes.length > 1 && this.minSizes[1] && this.minSizes[1] > newNextPanelSize) {\n return false;\n }\n\n return true;\n }\n\n bindMouseListeners() {\n if (!this.mouseMoveListener) {\n this.mouseMoveListener = event => this.onResize(event)\n document.addEventListener('mousemove', this.mouseMoveListener);\n }\n\n if (!this.mouseUpListener) {\n this.mouseUpListener = event => {\n this.resizeEnd(event);\n this.unbindMouseListeners();\n }\n document.addEventListener('mouseup', this.mouseUpListener);\n }\n }\n\n unbindMouseListeners() {\n if (this.mouseMoveListener) {\n document.removeEventListener('mousemove', this.mouseMoveListener);\n this.mouseMoveListener = null;\n }\n\n if (this.mouseUpListener) {\n document.removeEventListener('mouseup', this.mouseUpListener);\n this.mouseUpListener = null;\n }\n }\n\n clear() {\n this.dragging = false;\n this.size = null;\n this.startPos = null;\n this.prevPanelElement = null;\n this.nextPanelElement = null;\n this.prevPanelSize = null;\n this.nextPanelSize = null;\n this.gutterElement = null;\n this.prevPanelIndex = null;\n }\n\n isNested() {\n if (this.el.nativeElement) {\n let parent = this.el.nativeElement.parentElement;\n while (parent && !DomHandler.hasClass(parent, 'p-splitter')) {\n parent = parent.parentElement;\n }\n\n return parent !== null;\n }\n else {\n return false;\n }\n }\n \n isStateful() {\n return this.stateKey != null;\n }\n\n getStorage() {\n switch(this.stateStorage) {\n case 'local':\n return window.localStorage;\n\n case 'session':\n return window.sessionStorage;\n\n default:\n throw new Error(this.stateStorage + ' is not a valid value for the state storage, supported values are \"local\" and \"session\".');\n }\n }\n\n saveState() {\n this.getStorage().setItem(this.stateKey, JSON.stringify(this._panelSizes));\n }\n\n restoreState() {\n const storage = this.getStorage();\n const stateString = storage.getItem(this.stateKey);\n\n if (stateString) {\n this._panelSizes = JSON.parse(stateString);\n let children = [...this.containerViewChild.nativeElement.children].filter(child => DomHandler.hasClass(child, 'p-splitter-panel'));\n children.forEach((child, i) => {\n child.style.flexBasis = 'calc(' + this._panelSizes[i] + '% - ' + ((this.panels.length - 1) * this.gutterSize) + 'px)';\n });\n\n return true;\n }\n\n return false;\n }\n\n containerClass() {\n return {\n 'p-splitter p-component': true,\n 'p-splitter-horizontal': this.layout === \"horizontal\",\n 'p-splitter-vertical': this.layout === \"vertical\"\n };\n }\n\n panelContainerClass() {\n return {\n 'p-splitter-panel': true,\n 'p-splitter-panel-nested': true\n };\n }\n\n gutterStyle() {\n if (this.horizontal())\n return {width: this.gutterSize + 'px'};\n else\n return {height: this.gutterSize + 'px'};\n }\n\n horizontal() {\n return this.layout === 'horizontal';\n }\n}\n\n@NgModule({\n imports: [CommonModule],\n exports: [Splitter, SharedModule],\n declarations: [Splitter]\n})\nexport class SplitterModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"primeng-splitter.js","sources":["../../src/app/components/splitter/splitter.ts","../../src/app/components/splitter/primeng-splitter.ts"],"sourcesContent":["import { NgModule, Component, ChangeDetectionStrategy, ViewEncapsulation, Input, ContentChildren, QueryList, ElementRef, ChangeDetectorRef, TemplateRef, ViewChild, Output, EventEmitter } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DomHandler } from 'primeng/dom';\nimport { PrimeTemplate, SharedModule } from 'primeng/api';\n\n@Component({\n selector: 'p-splitter',\n template: `\n <div #container [ngClass]=\"containerClass()\" [class]=\"styleClass\" [ngStyle]=\"style\">\n <ng-template ngFor let-panel let-i=\"index\" [ngForOf]=\"panels\">\n <div [ngClass]=\"panelContainerClass()\" [class]=\"panelStyleClass\" [ngStyle]=\"panelStyle\">\n <ng-container *ngTemplateOutlet=\"panel\"></ng-container>\n </div>\n <div class=\"p-splitter-gutter\" *ngIf=\"i !== (panels.length - 1)\" [ngStyle]=\"gutterStyle()\" \n (mousedown)=\"onGutterMouseDown($event, i)\" (touchstart)=\"onGutterTouchStart($event, i)\">\n <div class=\"p-splitter-gutter-handle\"></div>\n </div>\n </ng-template>\n </div>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n styleUrls: ['./splitter.css'],\n host: {\n '[class.p-splitter-panel-nested]': 'nested'\n }\n})\nexport class Splitter {\n\n @Input() styleClass: string;\n\n @Input() panelStyleClass: string;\n\n @Input() style: any;\n\n @Input() panelStyle: any;\n\n @Input() stateStorage: string = \"session\";\n\n @Input() stateKey: string = null;\n\n @Input() layout: string = \"horizontal\";\n\n @Input() gutterSize: number = 4;\n\n @Input() panelSizes: number[] = [];\n\n @Input() minSizes: number[] = [];\n\n @Output() onResizeEnd: EventEmitter<any> = new EventEmitter();\n\n @ContentChildren(PrimeTemplate) templates: QueryList<any>;\n \n @ViewChild('container', { static: false }) containerViewChild: ElementRef;\n\n nested = false;\n\n panels = [];\n\n dragging = false;\n\n mouseMoveListener = null;\n\n mouseUpListener = null;\n\n touchMoveListener = null;\n\n touchEndListener = null;\n\n size = null;\n\n gutterElement = null;\n\n startPos = null;\n\n prevPanelElement = null;\n\n nextPanelElement = null;\n\n nextPanelSize = null;\n\n prevPanelSize = null;\n\n _panelSizes = null;\n\n prevPanelIndex = null;\n\n constructor(public cd: ChangeDetectorRef, private el: ElementRef) { }\n\n ngOnInit() {\n this.nested = this.isNested();\n }\n\n ngAfterContentInit() {\n this.templates.forEach((item) => {\n switch(item.getType()) {\n case 'panel':\n this.panels.push(item.template);\n break;\n default: \n this.panels.push(item.template);\n break;\n }\n })\n }\n\n ngAfterViewInit() {\n if (this.panels && this.panels.length) {\n let initialized = false;\n if (this.isStateful()) {\n initialized = this.restoreState();\n }\n\n if (!initialized) {\n let children = [...this.el.nativeElement.children[0].children].filter(child => DomHandler.hasClass(child, 'p-splitter-panel'));\n let _panelSizes = [];\n \n this.panels.map((panel, i) => {\n let panelInitialSize = this.panelSizes.length -1 >= i ? this.panelSizes[i]: null;\n let panelSize = panelInitialSize || (100 / this.panels.length);\n _panelSizes[i] = panelSize;\n children[i].style.flexBasis = 'calc(' + panelSize + '% - ' + ((this.panels.length - 1) * this.gutterSize) + 'px)';\n });\n\n this._panelSizes = _panelSizes;\n }\n }\n }\n\n onResizeStart(event, index) {\n this.gutterElement = event.currentTarget;\n this.size = this.horizontal() ? DomHandler.getWidth(this.containerViewChild.nativeElement) : DomHandler.getHeight(this.containerViewChild.nativeElement);\n this.dragging = true;\n this.startPos = this.horizontal() ? (event.pageX || event.changedTouches[0].pageX) : (event.pageY || event.changedTouches[0].pageY);\n this.prevPanelElement = this.gutterElement.previousElementSibling;\n this.nextPanelElement = this.gutterElement.nextElementSibling;\n this.prevPanelSize = 100 * (this.horizontal() ? DomHandler.getOuterWidth(this.prevPanelElement, true): DomHandler.getOuterHeight(this.prevPanelElement, true)) / this.size;\n this.nextPanelSize = 100 * (this.horizontal() ? DomHandler.getOuterWidth(this.nextPanelElement, true): DomHandler.getOuterHeight(this.nextPanelElement, true)) / this.size;\n this.prevPanelIndex = index;\n DomHandler.addClass(this.gutterElement, 'p-splitter-gutter-resizing');\n DomHandler.addClass(this.containerViewChild.nativeElement, 'p-splitter-resizing');\n }\n\n onResize(event) {\n let newPos;\n if (this.horizontal())\n newPos = ((event.pageX || event.changedTouches[0].pageX) * 100 / this.size) - (this.startPos * 100 / this.size);\n else\n newPos = ((event.pageY || event.changedTouches[0].pageY) * 100 / this.size) - (this.startPos * 100 / this.size);\n\n let newPrevPanelSize = this.prevPanelSize + newPos;\n let newNextPanelSize = this.nextPanelSize - newPos;\n \n if (this.validateResize(newPrevPanelSize, newNextPanelSize)) {\n this.prevPanelElement.style.flexBasis = 'calc(' + newPrevPanelSize + '% - ' + ((this.panels.length - 1) * this.gutterSize) + 'px)';\n this.nextPanelElement.style.flexBasis = 'calc(' + newNextPanelSize + '% - ' + ((this.panels.length - 1) * this.gutterSize) + 'px)';\n this._panelSizes[this.prevPanelIndex] = newPrevPanelSize;\n this._panelSizes[this.prevPanelIndex + 1] = newNextPanelSize;\n }\n }\n\n resizeEnd(event) {\n if (this.isStateful()) {\n this.saveState();\n }\n \n this.onResizeEnd.emit({originalEvent: event, sizes: this._panelSizes})\n DomHandler.removeClass(this.gutterElement, 'p-splitter-gutter-resizing');\n DomHandler.removeClass(this.containerViewChild.nativeElement, 'p-splitter-resizing');\n this.clear();\n }\n\n onGutterMouseDown(event, index) {\n this.onResizeStart(event, index);\n this.bindMouseListeners();\n }\n\n onGutterTouchStart(event, index) {\n if (event.cancelable){\n this.onResizeStart(event, index);\n this.bindTouchListeners();\n\n event.preventDefault();\n }\n }\n\n onGutterTouchEnd(event) {\n this.resizeEnd(event);\n this.unbindTouchListeners();\n \n if (event.cancelable)\n event.preventDefault();\n }\n\n validateResize(newPrevPanelSize, newNextPanelSize) {\n if (this.minSizes.length >= 1 && this.minSizes[0] && this.minSizes[0] > newPrevPanelSize) {\n return false;\n }\n\n if (this.minSizes.length > 1 && this.minSizes[1] && this.minSizes[1] > newNextPanelSize) {\n return false;\n }\n\n return true;\n }\n\n bindMouseListeners() {\n if (!this.mouseMoveListener) {\n this.mouseMoveListener = event => this.onResize(event)\n document.addEventListener('mousemove', this.mouseMoveListener);\n }\n\n if (!this.mouseUpListener) {\n this.mouseUpListener = event => {\n this.resizeEnd(event);\n this.unbindMouseListeners();\n }\n document.addEventListener('mouseup', this.mouseUpListener);\n }\n }\n\n bindTouchListeners() {\n if (!this.touchMoveListener) {\n this.touchMoveListener = event => this.onResize(event)\n document.addEventListener('touchmove', this.touchMoveListener);\n }\n\n if (!this.touchEndListener) {\n this.touchEndListener = event => {\n this.resizeEnd(event);\n this.unbindTouchListeners();\n }\n document.addEventListener('touchend', this.touchEndListener);\n }\n }\n\n unbindMouseListeners() {\n if (this.mouseMoveListener) {\n document.removeEventListener('mousemove', this.mouseMoveListener);\n this.mouseMoveListener = null;\n }\n\n if (this.mouseUpListener) {\n document.removeEventListener('mouseup', this.mouseUpListener);\n this.mouseUpListener = null;\n }\n }\n\n unbindTouchListeners() {\n if (this.touchMoveListener) {\n document.removeEventListener('touchmove', this.touchMoveListener);\n this.touchMoveListener = null;\n }\n\n if (this.touchEndListener) {\n document.removeEventListener('touchend', this.touchEndListener);\n this.touchEndListener = null;\n }\n }\n\n clear() {\n this.dragging = false;\n this.size = null;\n this.startPos = null;\n this.prevPanelElement = null;\n this.nextPanelElement = null;\n this.prevPanelSize = null;\n this.nextPanelSize = null;\n this.gutterElement = null;\n this.prevPanelIndex = null;\n }\n\n isNested() {\n if (this.el.nativeElement) {\n let parent = this.el.nativeElement.parentElement;\n while (parent && !DomHandler.hasClass(parent, 'p-splitter')) {\n parent = parent.parentElement;\n }\n\n return parent !== null;\n }\n else {\n return false;\n }\n }\n \n isStateful() {\n return this.stateKey != null;\n }\n\n getStorage() {\n switch(this.stateStorage) {\n case 'local':\n return window.localStorage;\n\n case 'session':\n return window.sessionStorage;\n\n default:\n throw new Error(this.stateStorage + ' is not a valid value for the state storage, supported values are \"local\" and \"session\".');\n }\n }\n\n saveState() {\n this.getStorage().setItem(this.stateKey, JSON.stringify(this._panelSizes));\n }\n\n restoreState() {\n const storage = this.getStorage();\n const stateString = storage.getItem(this.stateKey);\n\n if (stateString) {\n this._panelSizes = JSON.parse(stateString);\n let children = [...this.containerViewChild.nativeElement.children].filter(child => DomHandler.hasClass(child, 'p-splitter-panel'));\n children.forEach((child, i) => {\n child.style.flexBasis = 'calc(' + this._panelSizes[i] + '% - ' + ((this.panels.length - 1) * this.gutterSize) + 'px)';\n });\n\n return true;\n }\n\n return false;\n }\n\n containerClass() {\n return {\n 'p-splitter p-component': true,\n 'p-splitter-horizontal': this.layout === \"horizontal\",\n 'p-splitter-vertical': this.layout === \"vertical\"\n };\n }\n\n panelContainerClass() {\n return {\n 'p-splitter-panel': true,\n 'p-splitter-panel-nested': true\n };\n }\n\n gutterStyle() {\n if (this.horizontal())\n return {width: this.gutterSize + 'px'};\n else\n return {height: this.gutterSize + 'px'};\n }\n\n horizontal() {\n return this.layout === 'horizontal';\n }\n}\n\n@NgModule({\n imports: [CommonModule],\n exports: [Splitter, SharedModule],\n declarations: [Splitter]\n})\nexport class SplitterModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|