primevue 4.2.5 → 4.3.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.md +1 -1
- package/accordion/Accordion.vue +0 -8
- package/accordion/index.mjs +1 -9
- package/accordion/index.mjs.map +1 -1
- package/accordion/style/index.mjs +2 -5
- package/accordion/style/index.mjs.map +1 -1
- package/accordioncontent/index.mjs +1 -1
- package/accordionheader/AccordionHeader.vue +2 -2
- package/accordionheader/index.mjs +4 -4
- package/accordionheader/index.mjs.map +1 -1
- package/accordionpanel/index.mjs +1 -1
- package/animateonscroll/index.d.ts +1 -1
- package/animateonscroll/index.mjs +4 -4
- package/animateonscroll/index.mjs.map +1 -1
- package/animateonscroll/style/index.d.ts +1 -1
- package/autocomplete/AutoComplete.vue +90 -23
- package/autocomplete/index.d.ts +19 -2
- package/autocomplete/index.mjs +127 -55
- package/autocomplete/index.mjs.map +1 -1
- package/autocomplete/style/index.mjs +15 -19
- package/autocomplete/style/index.mjs.map +1 -1
- package/avatar/index.mjs +1 -1
- package/avatar/style/index.mjs +4 -7
- package/avatar/style/index.mjs.map +1 -1
- package/avatargroup/index.mjs +1 -1
- package/badge/index.mjs +1 -1
- package/badge/style/index.mjs +6 -9
- package/badge/style/index.mjs.map +1 -1
- package/badgedirective/index.mjs +6 -6
- package/badgedirective/index.mjs.map +1 -1
- package/blockui/BlockUI.vue +2 -1
- package/blockui/index.mjs +3 -2
- package/blockui/index.mjs.map +1 -1
- package/blockui/style/index.mjs +2 -5
- package/blockui/style/index.mjs.map +1 -1
- package/breadcrumb/index.mjs +1 -1
- package/breadcrumb/style/index.mjs +4 -7
- package/breadcrumb/style/index.mjs.map +1 -1
- package/button/Button.vue +1 -1
- package/button/index.d.ts +11 -1
- package/button/index.mjs +5 -4
- package/button/index.mjs.map +1 -1
- package/button/style/index.mjs +9 -12
- package/button/style/index.mjs.map +1 -1
- package/buttongroup/index.mjs +1 -1
- package/buttongroup/style/index.mjs +2 -5
- package/buttongroup/style/index.mjs.map +1 -1
- package/card/index.mjs +1 -1
- package/card/style/index.mjs +2 -5
- package/card/style/index.mjs.map +1 -1
- package/carousel/index.mjs +2 -2
- package/carousel/index.mjs.map +1 -1
- package/carousel/style/index.mjs +19 -22
- package/carousel/style/index.mjs.map +1 -1
- package/cascadeselect/CascadeSelect.vue +16 -17
- package/cascadeselect/CascadeSelectSub.vue +1 -1
- package/cascadeselect/index.d.ts +2 -2
- package/cascadeselect/index.mjs +26 -28
- package/cascadeselect/index.mjs.map +1 -1
- package/cascadeselect/style/index.mjs +17 -19
- package/cascadeselect/style/index.mjs.map +1 -1
- package/chart/index.mjs +4 -4
- package/checkbox/index.d.ts +2 -2
- package/checkbox/index.mjs +2 -2
- package/checkbox/index.mjs.map +1 -1
- package/checkbox/style/index.mjs +5 -8
- package/checkbox/style/index.mjs.map +1 -1
- package/checkboxgroup/index.mjs +1 -1
- package/checkboxgroup/style/index.mjs +2 -5
- package/checkboxgroup/style/index.mjs.map +1 -1
- package/chip/index.mjs +1 -1
- package/chip/style/index.mjs +2 -5
- package/chip/style/index.mjs.map +1 -1
- package/colorpicker/ColorPicker.vue +2 -2
- package/colorpicker/index.mjs +7 -7
- package/colorpicker/index.mjs.map +1 -1
- package/colorpicker/style/index.mjs +7 -10
- package/colorpicker/style/index.mjs.map +1 -1
- package/column/BaseColumn.vue +1 -1
- package/column/index.d.ts +2 -2
- package/column/index.mjs +1 -1
- package/column/index.mjs.map +1 -1
- package/columngroup/index.mjs.map +1 -1
- package/confirmdialog/index.d.ts +4 -0
- package/confirmdialog/index.mjs +1 -1
- package/confirmdialog/index.mjs.map +1 -1
- package/confirmdialog/style/index.mjs +2 -5
- package/confirmdialog/style/index.mjs.map +1 -1
- package/confirmpopup/ConfirmPopup.vue +2 -2
- package/confirmpopup/index.mjs +4 -4
- package/confirmpopup/index.mjs.map +1 -1
- package/confirmpopup/style/index.mjs +2 -5
- package/confirmpopup/style/index.mjs.map +1 -1
- package/contextmenu/ContextMenu.vue +6 -12
- package/contextmenu/index.mjs +9 -15
- package/contextmenu/index.mjs.map +1 -1
- package/contextmenu/style/index.mjs +7 -10
- package/contextmenu/style/index.mjs.map +1 -1
- package/datatable/BodyCell.vue +24 -14
- package/datatable/BodyRow.vue +0 -1
- package/datatable/ColumnFilter.vue +10 -16
- package/datatable/DataTable.vue +6 -6
- package/datatable/FilterHeaderCell.vue +189 -0
- package/datatable/FooterCell.vue +2 -2
- package/datatable/HeaderCell.vue +4 -4
- package/datatable/TableBody.vue +3 -10
- package/datatable/TableHeader.vue +23 -50
- package/datatable/index.d.ts +89 -39
- package/datatable/index.mjs +444 -234
- package/datatable/index.mjs.map +1 -1
- package/datatable/style/index.mjs +32 -36
- package/datatable/style/index.mjs.map +1 -1
- package/dataview/index.mjs +2 -2
- package/dataview/index.mjs.map +1 -1
- package/dataview/style/index.mjs +6 -9
- package/dataview/style/index.mjs.map +1 -1
- package/datepicker/BaseDatePicker.vue +0 -4
- package/datepicker/DatePicker.vue +46 -20
- package/datepicker/index.d.ts +2 -6
- package/datepicker/index.mjs +78 -52
- package/datepicker/index.mjs.map +1 -1
- package/datepicker/style/index.mjs +26 -28
- package/datepicker/style/index.mjs.map +1 -1
- package/deferredcontent/index.mjs +1 -1
- package/dialog/Dialog.vue +3 -11
- package/dialog/index.d.ts +1 -1
- package/dialog/index.mjs +7 -14
- package/dialog/index.mjs.map +1 -1
- package/dialog/style/index.mjs +10 -14
- package/dialog/style/index.mjs.map +1 -1
- package/divider/index.mjs +1 -1
- package/divider/style/index.mjs +6 -10
- package/divider/style/index.mjs.map +1 -1
- package/dock/DockSub.vue +5 -13
- package/dock/index.mjs +6 -14
- package/dock/index.mjs.map +1 -1
- package/dock/style/index.mjs +9 -12
- package/dock/style/index.mjs.map +1 -1
- package/drawer/Drawer.vue +7 -4
- package/drawer/index.d.ts +4 -0
- package/drawer/index.mjs +7 -5
- package/drawer/index.mjs.map +1 -1
- package/drawer/style/index.mjs +10 -13
- package/drawer/style/index.mjs.map +1 -1
- package/dynamicdialog/DynamicDialog.vue +5 -5
- package/dynamicdialog/index.mjs +8 -6
- package/dynamicdialog/index.mjs.map +1 -1
- package/editor/Editor.vue +9 -11
- package/editor/index.d.ts +0 -15
- package/editor/index.mjs +16 -16
- package/editor/index.mjs.map +1 -1
- package/editor/style/index.mjs +4 -7
- package/editor/style/index.mjs.map +1 -1
- package/fieldset/Fieldset.vue +4 -12
- package/fieldset/index.mjs +9 -17
- package/fieldset/index.mjs.map +1 -1
- package/fieldset/style/index.mjs +4 -7
- package/fieldset/style/index.mjs.map +1 -1
- package/fileupload/FileUpload.vue +9 -7
- package/fileupload/index.d.ts +3 -3
- package/fileupload/index.mjs +12 -10
- package/fileupload/index.mjs.map +1 -1
- package/fileupload/style/index.mjs +4 -7
- package/fileupload/style/index.mjs.map +1 -1
- package/floatlabel/index.mjs +1 -1
- package/floatlabel/style/index.mjs +4 -8
- package/floatlabel/style/index.mjs.map +1 -1
- package/fluid/index.mjs +1 -1
- package/focustrap/index.mjs +4 -4
- package/focustrap/index.mjs.map +1 -1
- package/galleria/Galleria.vue +2 -1
- package/galleria/GalleriaContent.vue +3 -11
- package/galleria/GalleriaThumbnails.vue +15 -8
- package/galleria/index.mjs +28 -30
- package/galleria/index.mjs.map +1 -1
- package/galleria/style/index.mjs +23 -26
- package/galleria/style/index.mjs.map +1 -1
- package/iconfield/index.mjs +1 -1
- package/iconfield/style/index.mjs +2 -5
- package/iconfield/style/index.mjs.map +1 -1
- package/iftalabel/index.mjs +1 -1
- package/iftalabel/style/index.mjs +2 -5
- package/iftalabel/style/index.mjs.map +1 -1
- package/image/Image.vue +2 -1
- package/image/index.d.ts +4 -0
- package/image/index.mjs +6 -5
- package/image/index.mjs.map +1 -1
- package/image/style/index.mjs +8 -11
- package/image/style/index.mjs.map +1 -1
- package/imagecompare/index.mjs +1 -1
- package/imagecompare/style/index.mjs +2 -5
- package/imagecompare/style/index.mjs.map +1 -1
- package/index.d.ts +3 -0
- package/index.mjs +1 -0
- package/index.mjs.map +1 -1
- package/inlinemessage/index.mjs +1 -1
- package/inlinemessage/style/index.mjs +7 -10
- package/inlinemessage/style/index.mjs.map +1 -1
- package/inplace/index.mjs +4 -4
- package/inplace/style/index.mjs +4 -7
- package/inplace/style/index.mjs.map +1 -1
- package/inputchips/InputChips.vue +2 -10
- package/inputchips/index.mjs +6 -14
- package/inputchips/index.mjs.map +1 -1
- package/inputchips/style/index.mjs +11 -14
- package/inputchips/style/index.mjs.map +1 -1
- package/inputgroup/index.mjs +1 -1
- package/inputgroup/style/index.mjs +2 -5
- package/inputgroup/style/index.mjs.map +1 -1
- package/inputgroupaddon/index.mjs +1 -1
- package/inputicon/index.mjs +1 -1
- package/inputmask/InputMask.vue +26 -17
- package/inputmask/index.d.ts +2 -2
- package/inputmask/index.mjs +28 -17
- package/inputmask/index.mjs.map +1 -1
- package/inputnumber/InputNumber.vue +17 -6
- package/inputnumber/index.d.ts +4 -4
- package/inputnumber/index.mjs +20 -12
- package/inputnumber/index.mjs.map +1 -1
- package/inputnumber/style/index.mjs +12 -14
- package/inputnumber/style/index.mjs.map +1 -1
- package/inputotp/index.d.ts +23 -8
- package/inputotp/index.mjs +1 -1
- package/inputotp/style/index.mjs +2 -5
- package/inputotp/style/index.mjs.map +1 -1
- package/inputtext/InputText.vue +1 -1
- package/inputtext/index.d.ts +1 -1
- package/inputtext/index.mjs +3 -2
- package/inputtext/index.mjs.map +1 -1
- package/inputtext/style/index.mjs +5 -8
- package/inputtext/style/index.mjs.map +1 -1
- package/keyfilter/index.mjs +8 -9
- package/keyfilter/index.mjs.map +1 -1
- package/knob/index.mjs +3 -3
- package/knob/index.mjs.map +1 -1
- package/knob/style/index.mjs +5 -8
- package/knob/style/index.mjs.map +1 -1
- package/listbox/Listbox.vue +7 -13
- package/listbox/index.mjs +10 -16
- package/listbox/index.mjs.map +1 -1
- package/listbox/style/index.mjs +11 -14
- package/listbox/style/index.mjs.map +1 -1
- package/megamenu/MegaMenu.vue +9 -15
- package/megamenu/index.mjs +12 -18
- package/megamenu/index.mjs.map +1 -1
- package/megamenu/style/index.mjs +15 -18
- package/megamenu/style/index.mjs.map +1 -1
- package/menu/Menu.vue +9 -17
- package/menu/index.d.ts +10 -0
- package/menu/index.mjs +10 -17
- package/menu/index.mjs.map +1 -1
- package/menu/style/index.mjs +6 -9
- package/menu/style/index.mjs.map +1 -1
- package/menubar/Menubar.vue +10 -16
- package/menubar/index.mjs +14 -20
- package/menubar/index.mjs.map +1 -1
- package/menubar/style/index.mjs +10 -13
- package/menubar/style/index.mjs.map +1 -1
- package/message/index.mjs +4 -4
- package/message/style/index.mjs +4 -7
- package/message/style/index.mjs.map +1 -1
- package/metergroup/index.mjs +1 -1
- package/metergroup/style/index.mjs +6 -9
- package/metergroup/style/index.mjs.map +1 -1
- package/multiselect/MultiSelect.vue +23 -18
- package/multiselect/index.d.ts +12 -6
- package/multiselect/index.mjs +32 -28
- package/multiselect/index.mjs.map +1 -1
- package/multiselect/style/index.mjs +17 -20
- package/multiselect/style/index.mjs.map +1 -1
- package/orderlist/OrderList.vue +1 -10
- package/orderlist/index.mjs +7 -15
- package/orderlist/index.mjs.map +1 -1
- package/orderlist/style/index.mjs +2 -5
- package/orderlist/style/index.mjs.map +1 -1
- package/organizationchart/index.mjs +4 -4
- package/organizationchart/style/index.mjs +9 -12
- package/organizationchart/style/index.mjs.map +1 -1
- package/overlaybadge/index.mjs +1 -1
- package/overlaybadge/style/index.mjs +2 -5
- package/overlaybadge/style/index.mjs.map +1 -1
- package/package.json +6 -5
- package/paginator/index.mjs +2 -2
- package/paginator/index.mjs.map +1 -1
- package/paginator/style/index.mjs +18 -21
- package/paginator/style/index.mjs.map +1 -1
- package/panel/Panel.vue +5 -13
- package/panel/index.mjs +7 -15
- package/panel/index.mjs.map +1 -1
- package/panel/style/index.mjs +4 -7
- package/panel/style/index.mjs.map +1 -1
- package/panelmenu/PanelMenu.vue +2 -12
- package/panelmenu/index.mjs +8 -18
- package/panelmenu/index.mjs.map +1 -1
- package/panelmenu/style/index.mjs +8 -11
- package/panelmenu/style/index.mjs.map +1 -1
- package/passthrough/index.mjs +3 -3
- package/password/Password.vue +3 -10
- package/password/index.d.ts +2 -2
- package/password/index.mjs +9 -16
- package/password/index.mjs.map +1 -1
- package/password/style/index.mjs +8 -11
- package/password/style/index.mjs.map +1 -1
- package/picklist/PickList.vue +2 -9
- package/picklist/index.mjs +8 -14
- package/picklist/index.mjs.map +1 -1
- package/picklist/style/index.mjs +2 -5
- package/picklist/style/index.mjs.map +1 -1
- package/popover/Popover.vue +2 -2
- package/popover/index.mjs +4 -4
- package/popover/index.mjs.map +1 -1
- package/popover/style/index.mjs +2 -5
- package/popover/style/index.mjs.map +1 -1
- package/portal/index.mjs +1 -1
- package/progressbar/index.mjs +1 -1
- package/progressbar/style/index.mjs +4 -7
- package/progressbar/style/index.mjs.map +1 -1
- package/progressspinner/index.mjs +1 -1
- package/progressspinner/style/index.mjs +2 -5
- package/progressspinner/style/index.mjs.map +1 -1
- package/radiobutton/index.d.ts +2 -2
- package/radiobutton/index.mjs +1 -1
- package/radiobutton/index.mjs.map +1 -1
- package/radiobutton/style/index.mjs +5 -8
- package/radiobutton/style/index.mjs.map +1 -1
- package/radiobuttongroup/index.mjs +1 -1
- package/radiobuttongroup/style/index.mjs +2 -5
- package/radiobuttongroup/style/index.mjs.map +1 -1
- package/rating/Rating.vue +6 -11
- package/rating/index.mjs +7 -12
- package/rating/index.mjs.map +1 -1
- package/rating/style/index.mjs +11 -14
- package/rating/style/index.mjs.map +1 -1
- package/ripple/index.mjs +16 -13
- package/ripple/index.mjs.map +1 -1
- package/ripple/style/index.mjs +2 -5
- package/ripple/style/index.mjs.map +1 -1
- package/row/index.mjs.map +1 -1
- package/scrollpanel/ScrollPanel.vue +1 -10
- package/scrollpanel/index.mjs +3 -11
- package/scrollpanel/index.mjs.map +1 -1
- package/scrollpanel/style/index.mjs +2 -5
- package/scrollpanel/style/index.mjs.map +1 -1
- package/scrolltop/index.mjs +1 -1
- package/scrolltop/style/index.mjs +4 -7
- package/scrolltop/style/index.mjs.map +1 -1
- package/select/Select.vue +55 -26
- package/select/index.d.ts +9 -5
- package/select/index.mjs +89 -63
- package/select/index.mjs.map +1 -1
- package/select/style/index.mjs +15 -18
- package/select/style/index.mjs.map +1 -1
- package/selectbutton/index.mjs +3 -3
- package/selectbutton/style/index.mjs +4 -7
- package/selectbutton/style/index.mjs.map +1 -1
- package/skeleton/index.mjs +1 -1
- package/skeleton/style/index.mjs +4 -7
- package/skeleton/style/index.mjs.map +1 -1
- package/slider/Slider.vue +1 -1
- package/slider/index.mjs +3 -3
- package/slider/index.mjs.map +1 -1
- package/slider/style/index.mjs +5 -8
- package/slider/style/index.mjs.map +1 -1
- package/speeddial/SpeedDial.vue +8 -15
- package/speeddial/index.d.ts +1 -1
- package/speeddial/index.mjs +13 -19
- package/speeddial/index.mjs.map +1 -1
- package/speeddial/style/index.mjs +15 -18
- package/speeddial/style/index.mjs.map +1 -1
- package/splitbutton/SplitButton.vue +2 -11
- package/splitbutton/index.d.ts +2 -2
- package/splitbutton/index.mjs +3 -11
- package/splitbutton/index.mjs.map +1 -1
- package/splitbutton/style/index.mjs +5 -8
- package/splitbutton/style/index.mjs.map +1 -1
- package/splitter/Splitter.vue +31 -14
- package/splitter/index.d.ts +1 -1
- package/splitter/index.mjs +28 -14
- package/splitter/index.mjs.map +1 -1
- package/splitter/style/index.mjs +6 -9
- package/splitter/style/index.mjs.map +1 -1
- package/splitterpanel/index.mjs +1 -1
- package/step/index.mjs +1 -1
- package/step/index.mjs.map +1 -1
- package/stepitem/index.mjs +1 -1
- package/stepitem/index.mjs.map +1 -1
- package/steplist/index.mjs +1 -1
- package/steppanel/index.mjs +1 -1
- package/steppanel/index.mjs.map +1 -1
- package/steppanels/index.mjs +1 -1
- package/stepper/Stepper.vue +0 -8
- package/stepper/index.mjs +1 -9
- package/stepper/index.mjs.map +1 -1
- package/stepper/style/index.mjs +4 -7
- package/stepper/style/index.mjs.map +1 -1
- package/steps/index.mjs +2 -2
- package/steps/style/index.mjs +8 -11
- package/steps/style/index.mjs.map +1 -1
- package/styleclass/index.mjs +1 -1
- package/tab/Tab.vue +3 -3
- package/tab/index.mjs +4 -4
- package/tab/index.mjs.map +1 -1
- package/tablist/TabList.vue +2 -2
- package/tablist/index.mjs +4 -4
- package/tablist/index.mjs.map +1 -1
- package/tabmenu/index.mjs +2 -2
- package/tabmenu/index.mjs.map +1 -1
- package/tabmenu/style/index.mjs +6 -9
- package/tabmenu/style/index.mjs.map +1 -1
- package/tabpanel/index.mjs +1 -1
- package/tabpanel/index.mjs.map +1 -1
- package/tabpanels/index.mjs +1 -1
- package/tabs/Tabs.vue +0 -8
- package/tabs/index.mjs +1 -9
- package/tabs/index.mjs.map +1 -1
- package/tabs/style/index.mjs +4 -7
- package/tabs/style/index.mjs.map +1 -1
- package/tabview/TabView.vue +3 -9
- package/tabview/index.mjs +7 -13
- package/tabview/index.mjs.map +1 -1
- package/tabview/style/index.mjs +11 -14
- package/tabview/style/index.mjs.map +1 -1
- package/tag/index.mjs +1 -1
- package/tag/style/index.mjs +4 -7
- package/tag/style/index.mjs.map +1 -1
- package/terminal/index.mjs +1 -1
- package/terminal/style/index.mjs +2 -5
- package/terminal/style/index.mjs.map +1 -1
- package/textarea/Textarea.vue +5 -2
- package/textarea/index.d.ts +4 -4
- package/textarea/index.mjs +7 -3
- package/textarea/index.mjs.map +1 -1
- package/textarea/style/index.mjs +5 -8
- package/textarea/style/index.mjs.map +1 -1
- package/tieredmenu/TieredMenu.vue +8 -13
- package/tieredmenu/index.mjs +11 -16
- package/tieredmenu/index.mjs.map +1 -1
- package/tieredmenu/style/index.mjs +11 -14
- package/tieredmenu/style/index.mjs.map +1 -1
- package/timeline/index.d.ts +4 -0
- package/timeline/index.mjs +1 -1
- package/timeline/style/index.mjs +4 -7
- package/timeline/style/index.mjs.map +1 -1
- package/toast/BaseToast.vue +12 -0
- package/toast/ToastMessage.vue +38 -4
- package/toast/index.d.ts +12 -0
- package/toast/index.mjs +79 -15
- package/toast/index.mjs.map +1 -1
- package/toast/style/index.mjs +12 -15
- package/toast/style/index.mjs.map +1 -1
- package/togglebutton/ToggleButton.vue +1 -0
- package/togglebutton/index.mjs +3 -2
- package/togglebutton/index.mjs.map +1 -1
- package/togglebutton/style/index.mjs +5 -8
- package/togglebutton/style/index.mjs.map +1 -1
- package/toggleswitch/index.mjs +1 -1
- package/toggleswitch/index.mjs.map +1 -1
- package/toggleswitch/style/index.mjs +5 -8
- package/toggleswitch/style/index.mjs.map +1 -1
- package/toolbar/index.mjs +1 -1
- package/toolbar/style/index.mjs +2 -5
- package/toolbar/style/index.mjs.map +1 -1
- package/tooltip/index.mjs +62 -14
- package/tooltip/index.mjs.map +1 -1
- package/tooltip/style/index.mjs +2 -5
- package/tooltip/style/index.mjs.map +1 -1
- package/tree/Tree.vue +2 -2
- package/tree/index.mjs +16 -16
- package/tree/index.mjs.map +1 -1
- package/tree/style/index.mjs +8 -11
- package/tree/style/index.mjs.map +1 -1
- package/treeselect/TreeSelect.vue +21 -26
- package/treeselect/index.d.ts +2 -2
- package/treeselect/index.mjs +56 -72
- package/treeselect/index.mjs.map +1 -1
- package/treeselect/style/index.mjs +10 -13
- package/treeselect/style/index.mjs.map +1 -1
- package/treetable/BodyCell.vue +8 -5
- package/treetable/FooterCell.vue +2 -2
- package/treetable/HeaderCell.vue +4 -4
- package/treetable/index.d.ts +29 -0
- package/treetable/index.mjs +42 -35
- package/treetable/index.mjs.map +1 -1
- package/treetable/style/index.mjs +22 -25
- package/treetable/style/index.mjs.map +1 -1
- package/umd/primevue.min.js +1 -1
- package/utils/index.d.ts +9 -0
- package/utils/index.mjs +16 -0
- package/utils/index.mjs.map +1 -0
- package/utils/package.json +5 -0
- package/virtualscroller/VirtualScroller.vue +16 -10
- package/virtualscroller/index.mjs +21 -15
- package/virtualscroller/index.mjs.map +1 -1
- package/virtualscroller/style/index.mjs +2 -5
- package/virtualscroller/style/index.mjs.map +1 -1
- package/web-types.json +1 -1
package/drawer/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/drawer/BaseDrawer.vue","../../src/drawer/Drawer.vue","../../src/drawer/Drawer.vue?vue&type=template&id=a2e16c3e&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport DrawerStyle from 'primevue/drawer/style';\n\nexport default {\n name: 'BaseDrawer',\n extends: BaseComponent,\n props: {\n visible: {\n type: Boolean,\n default: false\n },\n position: {\n type: String,\n default: 'left'\n },\n header: {\n type: null,\n default: null\n },\n baseZIndex: {\n type: Number,\n default: 0\n },\n autoZIndex: {\n type: Boolean,\n default: true\n },\n dismissable: {\n type: Boolean,\n default: true\n },\n showCloseIcon: {\n type: Boolean,\n default: true\n },\n closeButtonProps: {\n type: Object,\n default: () => {\n return { severity: 'secondary', text: true, rounded: true };\n }\n },\n closeIcon: {\n type: String,\n default: undefined\n },\n modal: {\n type: Boolean,\n default: true\n },\n blockScroll: {\n type: Boolean,\n default: false\n }\n },\n style: DrawerStyle,\n provide() {\n return {\n $pcDrawer: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <Portal>\n <div v-if=\"containerVisible\" :ref=\"maskRef\" @mousedown=\"onMaskClick\" :class=\"cx('mask')\" :style=\"sx('mask', true, { position, modal })\" v-bind=\"ptm('mask')\">\n <transition name=\"p-drawer\" @enter=\"onEnter\" @after-enter=\"onAfterEnter\" @before-leave=\"onBeforeLeave\" @leave=\"onLeave\" @after-leave=\"onAfterLeave\" appear v-bind=\"ptm('transition')\">\n <div v-if=\"visible\" :ref=\"containerRef\" v-focustrap :class=\"cx('root')\" :style=\"sx('root')\" role=\"complementary\" :aria-modal=\"modal\" v-bind=\"ptmi('root')\">\n <slot v-if=\"$slots.container\" name=\"container\" :closeCallback=\"hide\"></slot>\n <template v-else>\n <div :ref=\"headerContainerRef\" :class=\"cx('header')\" v-bind=\"ptm('header')\">\n <slot name=\"header\" :class=\"cx('title')\">\n <div v-if=\"header\" :class=\"cx('title')\" v-bind=\"ptm('title')\">{{ header }}</div>\n </slot>\n <Button\n v-if=\"showCloseIcon\"\n :ref=\"closeButtonRef\"\n type=\"button\"\n :class=\"cx('pcCloseButton')\"\n :aria-label=\"closeAriaLabel\"\n :unstyled=\"unstyled\"\n @click=\"hide\"\n v-bind=\"closeButtonProps\"\n :pt=\"ptm('pcCloseButton')\"\n data-pc-group-section=\"iconcontainer\"\n >\n <template #icon=\"slotProps\">\n <slot name=\"closeicon\">\n <component :is=\"closeIcon ? 'span' : 'TimesIcon'\" :class=\"[closeIcon, slotProps.class]\" v-bind=\"ptm('pcCloseButton')['icon']\"></component>\n </slot>\n </template>\n </Button>\n </div>\n <div :ref=\"contentRef\" :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n <div v-if=\"$slots.footer\" :ref=\"footerContainerRef\" :class=\"cx('footer')\" v-bind=\"ptm('footer')\">\n <slot name=\"footer\"> </slot>\n </div>\n </template>\n </div>\n </transition>\n </div>\n </Portal>\n</template>\n\n<script>\nimport { addClass, blockBodyScroll, focus, unblockBodyScroll } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport TimesIcon from '@primevue/icons/times';\nimport Button from 'primevue/button';\nimport FocusTrap from 'primevue/focustrap';\nimport Portal from 'primevue/portal';\nimport BaseDrawer from './BaseDrawer.vue';\n\nexport default {\n name: 'Drawer',\n extends: BaseDrawer,\n inheritAttrs: false,\n emits: ['update:visible', 'show', 'after-show', 'hide', 'after-hide'],\n data() {\n return {\n containerVisible: this.visible\n };\n },\n container: null,\n mask: null,\n content: null,\n headerContainer: null,\n footerContainer: null,\n closeButton: null,\n outsideClickListener: null,\n documentKeydownListener: null,\n watch: {\n dismissable(newValue) {\n if (newValue) {\n this.enableDocumentSettings();\n } else {\n this.disableDocumentSettings();\n }\n }\n },\n updated() {\n if (this.visible) {\n this.containerVisible = this.visible;\n }\n },\n beforeUnmount() {\n this.disableDocumentSettings();\n\n if (this.mask && this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.container = null;\n this.mask = null;\n },\n methods: {\n hide() {\n this.$emit('update:visible', false);\n },\n onEnter() {\n this.$emit('show');\n this.focus();\n this.bindDocumentKeyDownListener();\n\n if (this.autoZIndex) {\n ZIndex.set('modal', this.mask, this.baseZIndex || this.$primevue.config.zIndex.modal);\n }\n },\n onAfterEnter() {\n this.enableDocumentSettings();\n this.$emit('after-show');\n },\n onBeforeLeave() {\n if (this.modal) {\n !this.isUnstyled && addClass(this.mask, 'p-overlay-mask-leave');\n }\n },\n onLeave() {\n this.$emit('hide');\n },\n onAfterLeave() {\n if (this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.unbindDocumentKeyDownListener();\n this.containerVisible = false;\n this.disableDocumentSettings();\n this.$emit('after-hide');\n },\n onMaskClick(event) {\n if (this.dismissable && this.modal && this.mask === event.target) {\n this.hide();\n }\n },\n focus() {\n const findFocusableElement = (container) => {\n return container && container.querySelector('[autofocus]');\n };\n\n let focusTarget = this.$slots.header && findFocusableElement(this.headerContainer);\n\n if (!focusTarget) {\n focusTarget = this.$slots.default && findFocusableElement(this.container);\n\n if (!focusTarget) {\n focusTarget = this.$slots.footer && findFocusableElement(this.footerContainer);\n\n if (!focusTarget) {\n focusTarget = this.closeButton;\n }\n }\n }\n\n focusTarget && focus(focusTarget);\n },\n enableDocumentSettings() {\n if (this.dismissable && !this.modal) {\n this.bindOutsideClickListener();\n }\n\n if (this.blockScroll) {\n blockBodyScroll();\n }\n },\n disableDocumentSettings() {\n this.unbindOutsideClickListener();\n\n if (this.blockScroll) {\n unblockBodyScroll();\n }\n },\n onKeydown(event) {\n if (event.code === 'Escape') {\n this.hide();\n }\n },\n containerRef(el) {\n this.container = el;\n },\n maskRef(el) {\n this.mask = el;\n },\n contentRef(el) {\n this.content = el;\n },\n headerContainerRef(el) {\n this.headerContainer = el;\n },\n footerContainerRef(el) {\n this.footerContainer = el;\n },\n closeButtonRef(el) {\n this.closeButton = el ? el.$el : undefined;\n },\n bindDocumentKeyDownListener() {\n if (!this.documentKeydownListener) {\n this.documentKeydownListener = this.onKeydown;\n document.addEventListener('keydown', this.documentKeydownListener);\n }\n },\n unbindDocumentKeyDownListener() {\n if (this.documentKeydownListener) {\n document.removeEventListener('keydown', this.documentKeydownListener);\n this.documentKeydownListener = null;\n }\n },\n bindOutsideClickListener() {\n if (!this.outsideClickListener) {\n this.outsideClickListener = (event) => {\n if (this.isOutsideClicked(event)) {\n this.hide();\n }\n };\n\n document.addEventListener('click', this.outsideClickListener);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener);\n this.outsideClickListener = null;\n }\n },\n isOutsideClicked(event) {\n return this.container && !this.container.contains(event.target);\n }\n },\n computed: {\n fullScreen() {\n return this.position === 'full';\n },\n closeAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.close : undefined;\n }\n },\n directives: {\n focustrap: FocusTrap\n },\n components: {\n Button,\n Portal,\n TimesIcon\n }\n};\n</script>\n","<template>\n <Portal>\n <div v-if=\"containerVisible\" :ref=\"maskRef\" @mousedown=\"onMaskClick\" :class=\"cx('mask')\" :style=\"sx('mask', true, { position, modal })\" v-bind=\"ptm('mask')\">\n <transition name=\"p-drawer\" @enter=\"onEnter\" @after-enter=\"onAfterEnter\" @before-leave=\"onBeforeLeave\" @leave=\"onLeave\" @after-leave=\"onAfterLeave\" appear v-bind=\"ptm('transition')\">\n <div v-if=\"visible\" :ref=\"containerRef\" v-focustrap :class=\"cx('root')\" :style=\"sx('root')\" role=\"complementary\" :aria-modal=\"modal\" v-bind=\"ptmi('root')\">\n <slot v-if=\"$slots.container\" name=\"container\" :closeCallback=\"hide\"></slot>\n <template v-else>\n <div :ref=\"headerContainerRef\" :class=\"cx('header')\" v-bind=\"ptm('header')\">\n <slot name=\"header\" :class=\"cx('title')\">\n <div v-if=\"header\" :class=\"cx('title')\" v-bind=\"ptm('title')\">{{ header }}</div>\n </slot>\n <Button\n v-if=\"showCloseIcon\"\n :ref=\"closeButtonRef\"\n type=\"button\"\n :class=\"cx('pcCloseButton')\"\n :aria-label=\"closeAriaLabel\"\n :unstyled=\"unstyled\"\n @click=\"hide\"\n v-bind=\"closeButtonProps\"\n :pt=\"ptm('pcCloseButton')\"\n data-pc-group-section=\"iconcontainer\"\n >\n <template #icon=\"slotProps\">\n <slot name=\"closeicon\">\n <component :is=\"closeIcon ? 'span' : 'TimesIcon'\" :class=\"[closeIcon, slotProps.class]\" v-bind=\"ptm('pcCloseButton')['icon']\"></component>\n </slot>\n </template>\n </Button>\n </div>\n <div :ref=\"contentRef\" :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n <div v-if=\"$slots.footer\" :ref=\"footerContainerRef\" :class=\"cx('footer')\" v-bind=\"ptm('footer')\">\n <slot name=\"footer\"> </slot>\n </div>\n </template>\n </div>\n </transition>\n </div>\n </Portal>\n</template>\n\n<script>\nimport { addClass, blockBodyScroll, focus, unblockBodyScroll } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport TimesIcon from '@primevue/icons/times';\nimport Button from 'primevue/button';\nimport FocusTrap from 'primevue/focustrap';\nimport Portal from 'primevue/portal';\nimport BaseDrawer from './BaseDrawer.vue';\n\nexport default {\n name: 'Drawer',\n extends: BaseDrawer,\n inheritAttrs: false,\n emits: ['update:visible', 'show', 'after-show', 'hide', 'after-hide'],\n data() {\n return {\n containerVisible: this.visible\n };\n },\n container: null,\n mask: null,\n content: null,\n headerContainer: null,\n footerContainer: null,\n closeButton: null,\n outsideClickListener: null,\n documentKeydownListener: null,\n watch: {\n dismissable(newValue) {\n if (newValue) {\n this.enableDocumentSettings();\n } else {\n this.disableDocumentSettings();\n }\n }\n },\n updated() {\n if (this.visible) {\n this.containerVisible = this.visible;\n }\n },\n beforeUnmount() {\n this.disableDocumentSettings();\n\n if (this.mask && this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.container = null;\n this.mask = null;\n },\n methods: {\n hide() {\n this.$emit('update:visible', false);\n },\n onEnter() {\n this.$emit('show');\n this.focus();\n this.bindDocumentKeyDownListener();\n\n if (this.autoZIndex) {\n ZIndex.set('modal', this.mask, this.baseZIndex || this.$primevue.config.zIndex.modal);\n }\n },\n onAfterEnter() {\n this.enableDocumentSettings();\n this.$emit('after-show');\n },\n onBeforeLeave() {\n if (this.modal) {\n !this.isUnstyled && addClass(this.mask, 'p-overlay-mask-leave');\n }\n },\n onLeave() {\n this.$emit('hide');\n },\n onAfterLeave() {\n if (this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.unbindDocumentKeyDownListener();\n this.containerVisible = false;\n this.disableDocumentSettings();\n this.$emit('after-hide');\n },\n onMaskClick(event) {\n if (this.dismissable && this.modal && this.mask === event.target) {\n this.hide();\n }\n },\n focus() {\n const findFocusableElement = (container) => {\n return container && container.querySelector('[autofocus]');\n };\n\n let focusTarget = this.$slots.header && findFocusableElement(this.headerContainer);\n\n if (!focusTarget) {\n focusTarget = this.$slots.default && findFocusableElement(this.container);\n\n if (!focusTarget) {\n focusTarget = this.$slots.footer && findFocusableElement(this.footerContainer);\n\n if (!focusTarget) {\n focusTarget = this.closeButton;\n }\n }\n }\n\n focusTarget && focus(focusTarget);\n },\n enableDocumentSettings() {\n if (this.dismissable && !this.modal) {\n this.bindOutsideClickListener();\n }\n\n if (this.blockScroll) {\n blockBodyScroll();\n }\n },\n disableDocumentSettings() {\n this.unbindOutsideClickListener();\n\n if (this.blockScroll) {\n unblockBodyScroll();\n }\n },\n onKeydown(event) {\n if (event.code === 'Escape') {\n this.hide();\n }\n },\n containerRef(el) {\n this.container = el;\n },\n maskRef(el) {\n this.mask = el;\n },\n contentRef(el) {\n this.content = el;\n },\n headerContainerRef(el) {\n this.headerContainer = el;\n },\n footerContainerRef(el) {\n this.footerContainer = el;\n },\n closeButtonRef(el) {\n this.closeButton = el ? el.$el : undefined;\n },\n bindDocumentKeyDownListener() {\n if (!this.documentKeydownListener) {\n this.documentKeydownListener = this.onKeydown;\n document.addEventListener('keydown', this.documentKeydownListener);\n }\n },\n unbindDocumentKeyDownListener() {\n if (this.documentKeydownListener) {\n document.removeEventListener('keydown', this.documentKeydownListener);\n this.documentKeydownListener = null;\n }\n },\n bindOutsideClickListener() {\n if (!this.outsideClickListener) {\n this.outsideClickListener = (event) => {\n if (this.isOutsideClicked(event)) {\n this.hide();\n }\n };\n\n document.addEventListener('click', this.outsideClickListener);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener);\n this.outsideClickListener = null;\n }\n },\n isOutsideClicked(event) {\n return this.container && !this.container.contains(event.target);\n }\n },\n computed: {\n fullScreen() {\n return this.position === 'full';\n },\n closeAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.close : undefined;\n }\n },\n directives: {\n focustrap: FocusTrap\n },\n components: {\n Button,\n Portal,\n TimesIcon\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","visible","type","Boolean","position","String","header","baseZIndex","Number","autoZIndex","dismissable","showCloseIcon","closeButtonProps","Object","default","severity","text","rounded","closeIcon","undefined","modal","blockScroll","style","DrawerStyle","provide","$pcDrawer","$parentInstance","BaseDrawer","inheritAttrs","emits","data","containerVisible","container","mask","content","headerContainer","footerContainer","closeButton","outsideClickListener","documentKeydownListener","watch","newValue","enableDocumentSettings","disableDocumentSettings","updated","beforeUnmount","ZIndex","clear","methods","hide","$emit","onEnter","focus","bindDocumentKeyDownListener","set","$primevue","config","zIndex","onAfterEnter","onBeforeLeave","isUnstyled","addClass","onLeave","onAfterLeave","unbindDocumentKeyDownListener","onMaskClick","event","target","findFocusableElement","querySelector","focusTarget","$slots","footer","bindOutsideClickListener","blockBodyScroll","unbindOutsideClickListener","unblockBodyScroll","onKeydown","code","containerRef","el","maskRef","contentRef","headerContainerRef","footerContainerRef","closeButtonRef","$el","document","addEventListener","removeEventListener","_this","isOutsideClicked","contains","computed","fullScreen","closeAriaLabel","locale","aria","close","directives","focustrap","FocusTrap","components","Button","Portal","TimesIcon","_createBlock","_component_Portal","$data","_openBlock","_createElementBlock","_mergeProps","ref","$options","onMousedown","apply","arguments","_ctx","cx","sx","ptm","_createVNode","_Transition","appear","_withDirectives","role","ptmi","_renderSlot","closeCallback","_Fragment","key","_createElementVNode","_component_Button","unstyled","onClick","pt","icon","_withCtx","slotProps","_resolveDynamicComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/drawer/BaseDrawer.vue","../../src/drawer/Drawer.vue","../../src/drawer/Drawer.vue?vue&type=template&id=45071c85&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport DrawerStyle from 'primevue/drawer/style';\n\nexport default {\n name: 'BaseDrawer',\n extends: BaseComponent,\n props: {\n visible: {\n type: Boolean,\n default: false\n },\n position: {\n type: String,\n default: 'left'\n },\n header: {\n type: null,\n default: null\n },\n baseZIndex: {\n type: Number,\n default: 0\n },\n autoZIndex: {\n type: Boolean,\n default: true\n },\n dismissable: {\n type: Boolean,\n default: true\n },\n showCloseIcon: {\n type: Boolean,\n default: true\n },\n closeButtonProps: {\n type: Object,\n default: () => {\n return { severity: 'secondary', text: true, rounded: true };\n }\n },\n closeIcon: {\n type: String,\n default: undefined\n },\n modal: {\n type: Boolean,\n default: true\n },\n blockScroll: {\n type: Boolean,\n default: false\n }\n },\n style: DrawerStyle,\n provide() {\n return {\n $pcDrawer: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <Portal>\n <div v-if=\"containerVisible\" :ref=\"maskRef\" @mousedown=\"onMaskClick\" :class=\"cx('mask')\" :style=\"sx('mask', true, { position, modal })\" v-bind=\"ptm('mask')\">\n <transition name=\"p-drawer\" @enter=\"onEnter\" @after-enter=\"onAfterEnter\" @before-leave=\"onBeforeLeave\" @leave=\"onLeave\" @after-leave=\"onAfterLeave\" appear v-bind=\"ptm('transition')\">\n <div v-if=\"visible\" :ref=\"containerRef\" v-focustrap :class=\"cx('root')\" :style=\"sx('root')\" role=\"complementary\" :aria-modal=\"modal\" v-bind=\"ptmi('root')\">\n <slot v-if=\"$slots.container\" name=\"container\" :closeCallback=\"hide\"></slot>\n <template v-else>\n <div :ref=\"headerContainerRef\" :class=\"cx('header')\" v-bind=\"ptm('header')\">\n <slot name=\"header\" :class=\"cx('title')\">\n <div v-if=\"header\" :class=\"cx('title')\" v-bind=\"ptm('title')\">{{ header }}</div>\n </slot>\n <Button\n v-if=\"showCloseIcon\"\n :ref=\"closeButtonRef\"\n type=\"button\"\n :class=\"cx('pcCloseButton')\"\n :aria-label=\"closeAriaLabel\"\n :unstyled=\"unstyled\"\n @click=\"hide\"\n v-bind=\"closeButtonProps\"\n :pt=\"ptm('pcCloseButton')\"\n data-pc-group-section=\"iconcontainer\"\n >\n <template #icon=\"slotProps\">\n <slot name=\"closeicon\">\n <component :is=\"closeIcon ? 'span' : 'TimesIcon'\" :class=\"[closeIcon, slotProps.class]\" v-bind=\"ptm('pcCloseButton')['icon']\"></component>\n </slot>\n </template>\n </Button>\n </div>\n <div :ref=\"contentRef\" :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n <div v-if=\"$slots.footer\" :ref=\"footerContainerRef\" :class=\"cx('footer')\" v-bind=\"ptm('footer')\">\n <slot name=\"footer\"> </slot>\n </div>\n </template>\n </div>\n </transition>\n </div>\n </Portal>\n</template>\n\n<script>\nimport { addClass, focus } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport TimesIcon from '@primevue/icons/times';\nimport Button from 'primevue/button';\nimport FocusTrap from 'primevue/focustrap';\nimport Portal from 'primevue/portal';\nimport { blockBodyScroll, unblockBodyScroll } from 'primevue/utils';\nimport BaseDrawer from './BaseDrawer.vue';\n\nexport default {\n name: 'Drawer',\n extends: BaseDrawer,\n inheritAttrs: false,\n emits: ['update:visible', 'show', 'after-show', 'hide', 'after-hide', 'before-hide'],\n data() {\n return {\n containerVisible: this.visible\n };\n },\n container: null,\n mask: null,\n content: null,\n headerContainer: null,\n footerContainer: null,\n closeButton: null,\n outsideClickListener: null,\n documentKeydownListener: null,\n watch: {\n dismissable(newValue) {\n if (newValue) {\n this.enableDocumentSettings();\n } else {\n this.disableDocumentSettings();\n }\n }\n },\n updated() {\n if (this.visible) {\n this.containerVisible = this.visible;\n }\n },\n beforeUnmount() {\n this.disableDocumentSettings();\n\n if (this.mask && this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.container = null;\n this.mask = null;\n },\n methods: {\n hide() {\n this.$emit('update:visible', false);\n },\n onEnter() {\n this.$emit('show');\n this.focus();\n this.bindDocumentKeyDownListener();\n\n if (this.autoZIndex) {\n ZIndex.set('modal', this.mask, this.baseZIndex || this.$primevue.config.zIndex.modal);\n }\n },\n onAfterEnter() {\n this.enableDocumentSettings();\n this.$emit('after-show');\n },\n onBeforeLeave() {\n if (this.modal) {\n !this.isUnstyled && addClass(this.mask, 'p-overlay-mask-leave');\n }\n\n this.$emit('before-hide');\n },\n onLeave() {\n this.$emit('hide');\n },\n onAfterLeave() {\n if (this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.unbindDocumentKeyDownListener();\n this.containerVisible = false;\n this.disableDocumentSettings();\n this.$emit('after-hide');\n },\n onMaskClick(event) {\n if (this.dismissable && this.modal && this.mask === event.target) {\n this.hide();\n }\n },\n focus() {\n const findFocusableElement = (container) => {\n return container && container.querySelector('[autofocus]');\n };\n\n let focusTarget = this.$slots.header && findFocusableElement(this.headerContainer);\n\n if (!focusTarget) {\n focusTarget = this.$slots.default && findFocusableElement(this.container);\n\n if (!focusTarget) {\n focusTarget = this.$slots.footer && findFocusableElement(this.footerContainer);\n\n if (!focusTarget) {\n focusTarget = this.closeButton;\n }\n }\n }\n\n focusTarget && focus(focusTarget);\n },\n enableDocumentSettings() {\n if (this.dismissable && !this.modal) {\n this.bindOutsideClickListener();\n }\n\n if (this.blockScroll) {\n blockBodyScroll();\n }\n },\n disableDocumentSettings() {\n this.unbindOutsideClickListener();\n\n if (this.blockScroll) {\n unblockBodyScroll();\n }\n },\n onKeydown(event) {\n if (event.code === 'Escape') {\n this.hide();\n }\n },\n containerRef(el) {\n this.container = el;\n },\n maskRef(el) {\n this.mask = el;\n },\n contentRef(el) {\n this.content = el;\n },\n headerContainerRef(el) {\n this.headerContainer = el;\n },\n footerContainerRef(el) {\n this.footerContainer = el;\n },\n closeButtonRef(el) {\n this.closeButton = el ? el.$el : undefined;\n },\n bindDocumentKeyDownListener() {\n if (!this.documentKeydownListener) {\n this.documentKeydownListener = this.onKeydown;\n document.addEventListener('keydown', this.documentKeydownListener);\n }\n },\n unbindDocumentKeyDownListener() {\n if (this.documentKeydownListener) {\n document.removeEventListener('keydown', this.documentKeydownListener);\n this.documentKeydownListener = null;\n }\n },\n bindOutsideClickListener() {\n if (!this.outsideClickListener) {\n this.outsideClickListener = (event) => {\n if (this.isOutsideClicked(event)) {\n this.hide();\n }\n };\n\n document.addEventListener('click', this.outsideClickListener, true);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener, true);\n this.outsideClickListener = null;\n }\n },\n isOutsideClicked(event) {\n return this.container && !this.container.contains(event.target);\n }\n },\n computed: {\n fullScreen() {\n return this.position === 'full';\n },\n closeAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.close : undefined;\n }\n },\n directives: {\n focustrap: FocusTrap\n },\n components: {\n Button,\n Portal,\n TimesIcon\n }\n};\n</script>\n","<template>\n <Portal>\n <div v-if=\"containerVisible\" :ref=\"maskRef\" @mousedown=\"onMaskClick\" :class=\"cx('mask')\" :style=\"sx('mask', true, { position, modal })\" v-bind=\"ptm('mask')\">\n <transition name=\"p-drawer\" @enter=\"onEnter\" @after-enter=\"onAfterEnter\" @before-leave=\"onBeforeLeave\" @leave=\"onLeave\" @after-leave=\"onAfterLeave\" appear v-bind=\"ptm('transition')\">\n <div v-if=\"visible\" :ref=\"containerRef\" v-focustrap :class=\"cx('root')\" :style=\"sx('root')\" role=\"complementary\" :aria-modal=\"modal\" v-bind=\"ptmi('root')\">\n <slot v-if=\"$slots.container\" name=\"container\" :closeCallback=\"hide\"></slot>\n <template v-else>\n <div :ref=\"headerContainerRef\" :class=\"cx('header')\" v-bind=\"ptm('header')\">\n <slot name=\"header\" :class=\"cx('title')\">\n <div v-if=\"header\" :class=\"cx('title')\" v-bind=\"ptm('title')\">{{ header }}</div>\n </slot>\n <Button\n v-if=\"showCloseIcon\"\n :ref=\"closeButtonRef\"\n type=\"button\"\n :class=\"cx('pcCloseButton')\"\n :aria-label=\"closeAriaLabel\"\n :unstyled=\"unstyled\"\n @click=\"hide\"\n v-bind=\"closeButtonProps\"\n :pt=\"ptm('pcCloseButton')\"\n data-pc-group-section=\"iconcontainer\"\n >\n <template #icon=\"slotProps\">\n <slot name=\"closeicon\">\n <component :is=\"closeIcon ? 'span' : 'TimesIcon'\" :class=\"[closeIcon, slotProps.class]\" v-bind=\"ptm('pcCloseButton')['icon']\"></component>\n </slot>\n </template>\n </Button>\n </div>\n <div :ref=\"contentRef\" :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n <div v-if=\"$slots.footer\" :ref=\"footerContainerRef\" :class=\"cx('footer')\" v-bind=\"ptm('footer')\">\n <slot name=\"footer\"> </slot>\n </div>\n </template>\n </div>\n </transition>\n </div>\n </Portal>\n</template>\n\n<script>\nimport { addClass, focus } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport TimesIcon from '@primevue/icons/times';\nimport Button from 'primevue/button';\nimport FocusTrap from 'primevue/focustrap';\nimport Portal from 'primevue/portal';\nimport { blockBodyScroll, unblockBodyScroll } from 'primevue/utils';\nimport BaseDrawer from './BaseDrawer.vue';\n\nexport default {\n name: 'Drawer',\n extends: BaseDrawer,\n inheritAttrs: false,\n emits: ['update:visible', 'show', 'after-show', 'hide', 'after-hide', 'before-hide'],\n data() {\n return {\n containerVisible: this.visible\n };\n },\n container: null,\n mask: null,\n content: null,\n headerContainer: null,\n footerContainer: null,\n closeButton: null,\n outsideClickListener: null,\n documentKeydownListener: null,\n watch: {\n dismissable(newValue) {\n if (newValue) {\n this.enableDocumentSettings();\n } else {\n this.disableDocumentSettings();\n }\n }\n },\n updated() {\n if (this.visible) {\n this.containerVisible = this.visible;\n }\n },\n beforeUnmount() {\n this.disableDocumentSettings();\n\n if (this.mask && this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.container = null;\n this.mask = null;\n },\n methods: {\n hide() {\n this.$emit('update:visible', false);\n },\n onEnter() {\n this.$emit('show');\n this.focus();\n this.bindDocumentKeyDownListener();\n\n if (this.autoZIndex) {\n ZIndex.set('modal', this.mask, this.baseZIndex || this.$primevue.config.zIndex.modal);\n }\n },\n onAfterEnter() {\n this.enableDocumentSettings();\n this.$emit('after-show');\n },\n onBeforeLeave() {\n if (this.modal) {\n !this.isUnstyled && addClass(this.mask, 'p-overlay-mask-leave');\n }\n\n this.$emit('before-hide');\n },\n onLeave() {\n this.$emit('hide');\n },\n onAfterLeave() {\n if (this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.unbindDocumentKeyDownListener();\n this.containerVisible = false;\n this.disableDocumentSettings();\n this.$emit('after-hide');\n },\n onMaskClick(event) {\n if (this.dismissable && this.modal && this.mask === event.target) {\n this.hide();\n }\n },\n focus() {\n const findFocusableElement = (container) => {\n return container && container.querySelector('[autofocus]');\n };\n\n let focusTarget = this.$slots.header && findFocusableElement(this.headerContainer);\n\n if (!focusTarget) {\n focusTarget = this.$slots.default && findFocusableElement(this.container);\n\n if (!focusTarget) {\n focusTarget = this.$slots.footer && findFocusableElement(this.footerContainer);\n\n if (!focusTarget) {\n focusTarget = this.closeButton;\n }\n }\n }\n\n focusTarget && focus(focusTarget);\n },\n enableDocumentSettings() {\n if (this.dismissable && !this.modal) {\n this.bindOutsideClickListener();\n }\n\n if (this.blockScroll) {\n blockBodyScroll();\n }\n },\n disableDocumentSettings() {\n this.unbindOutsideClickListener();\n\n if (this.blockScroll) {\n unblockBodyScroll();\n }\n },\n onKeydown(event) {\n if (event.code === 'Escape') {\n this.hide();\n }\n },\n containerRef(el) {\n this.container = el;\n },\n maskRef(el) {\n this.mask = el;\n },\n contentRef(el) {\n this.content = el;\n },\n headerContainerRef(el) {\n this.headerContainer = el;\n },\n footerContainerRef(el) {\n this.footerContainer = el;\n },\n closeButtonRef(el) {\n this.closeButton = el ? el.$el : undefined;\n },\n bindDocumentKeyDownListener() {\n if (!this.documentKeydownListener) {\n this.documentKeydownListener = this.onKeydown;\n document.addEventListener('keydown', this.documentKeydownListener);\n }\n },\n unbindDocumentKeyDownListener() {\n if (this.documentKeydownListener) {\n document.removeEventListener('keydown', this.documentKeydownListener);\n this.documentKeydownListener = null;\n }\n },\n bindOutsideClickListener() {\n if (!this.outsideClickListener) {\n this.outsideClickListener = (event) => {\n if (this.isOutsideClicked(event)) {\n this.hide();\n }\n };\n\n document.addEventListener('click', this.outsideClickListener, true);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener, true);\n this.outsideClickListener = null;\n }\n },\n isOutsideClicked(event) {\n return this.container && !this.container.contains(event.target);\n }\n },\n computed: {\n fullScreen() {\n return this.position === 'full';\n },\n closeAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.close : undefined;\n }\n },\n directives: {\n focustrap: FocusTrap\n },\n components: {\n Button,\n Portal,\n TimesIcon\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","visible","type","Boolean","position","String","header","baseZIndex","Number","autoZIndex","dismissable","showCloseIcon","closeButtonProps","Object","default","severity","text","rounded","closeIcon","undefined","modal","blockScroll","style","DrawerStyle","provide","$pcDrawer","$parentInstance","BaseDrawer","inheritAttrs","emits","data","containerVisible","container","mask","content","headerContainer","footerContainer","closeButton","outsideClickListener","documentKeydownListener","watch","newValue","enableDocumentSettings","disableDocumentSettings","updated","beforeUnmount","ZIndex","clear","methods","hide","$emit","onEnter","focus","bindDocumentKeyDownListener","set","$primevue","config","zIndex","onAfterEnter","onBeforeLeave","isUnstyled","addClass","onLeave","onAfterLeave","unbindDocumentKeyDownListener","onMaskClick","event","target","findFocusableElement","querySelector","focusTarget","$slots","footer","bindOutsideClickListener","blockBodyScroll","unbindOutsideClickListener","unblockBodyScroll","onKeydown","code","containerRef","el","maskRef","contentRef","headerContainerRef","footerContainerRef","closeButtonRef","$el","document","addEventListener","removeEventListener","_this","isOutsideClicked","contains","computed","fullScreen","closeAriaLabel","locale","aria","close","directives","focustrap","FocusTrap","components","Button","Portal","TimesIcon","_createBlock","_component_Portal","$data","_openBlock","_createElementBlock","_mergeProps","ref","$options","onMousedown","apply","arguments","_ctx","cx","sx","ptm","_createVNode","_Transition","appear","_withDirectives","role","ptmi","_renderSlot","closeCallback","_Fragment","key","_createElementVNode","_component_Button","unstyled","onClick","pt","icon","_withCtx","slotProps","_resolveDynamicComponent"],"mappings":"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"}
|
package/drawer/style/index.mjs
CHANGED
|
@@ -1,13 +1,10 @@
|
|
|
1
|
+
import { style } from '@primeuix/styles/drawer';
|
|
1
2
|
import BaseStyle from '@primevue/core/base/style';
|
|
2
3
|
|
|
3
|
-
var theme = function theme(_ref) {
|
|
4
|
-
var dt = _ref.dt;
|
|
5
|
-
return "\n.p-drawer {\n display: flex;\n flex-direction: column;\n transform: translate3d(0px, 0px, 0px);\n position: relative;\n transition: transform 0.3s;\n background: ".concat(dt('drawer.background'), ";\n color: ").concat(dt('drawer.color'), ";\n border: 1px solid ").concat(dt('drawer.border.color'), ";\n box-shadow: ").concat(dt('drawer.shadow'), ";\n}\n\n.p-drawer-content {\n overflow-y: auto;\n flex-grow: 1;\n padding: ").concat(dt('drawer.content.padding'), ";\n}\n\n.p-drawer-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n flex-shrink: 0;\n padding: ").concat(dt('drawer.header.padding'), ";\n}\n\n.p-drawer-footer {\n padding: ").concat(dt('drawer.footer.padding'), ";\n}\n\n.p-drawer-title {\n font-weight: ").concat(dt('drawer.title.font.weight'), ";\n font-size: ").concat(dt('drawer.title.font.size'), ";\n}\n\n.p-drawer-full .p-drawer {\n transition: none;\n transform: none;\n width: 100vw !important;\n height: 100vh !important;\n max-height: 100%;\n top: 0px !important;\n left: 0px !important;\n border-width: 1px;\n}\n\n.p-drawer-left .p-drawer-enter-from,\n.p-drawer-left .p-drawer-leave-to {\n transform: translateX(-100%);\n}\n\n.p-drawer-right .p-drawer-enter-from,\n.p-drawer-right .p-drawer-leave-to {\n transform: translateX(100%);\n}\n\n.p-drawer-top .p-drawer-enter-from,\n.p-drawer-top .p-drawer-leave-to {\n transform: translateY(-100%);\n}\n\n.p-drawer-bottom .p-drawer-enter-from,\n.p-drawer-bottom .p-drawer-leave-to {\n transform: translateY(100%);\n}\n\n.p-drawer-full .p-drawer-enter-from,\n.p-drawer-full .p-drawer-leave-to {\n opacity: 0;\n}\n\n.p-drawer-full .p-drawer-enter-active,\n.p-drawer-full .p-drawer-leave-active {\n transition: opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1);\n}\n\n.p-drawer-left .p-drawer {\n width: 20rem;\n height: 100%;\n border-inline-end-width: 1px;\n}\n\n.p-drawer-right .p-drawer {\n width: 20rem;\n height: 100%;\n border-inline-start-width: 1px;\n}\n\n.p-drawer-top .p-drawer {\n height: 10rem;\n width: 100%;\n border-block-end-width: 1px;\n}\n\n.p-drawer-bottom .p-drawer {\n height: 10rem;\n width: 100%;\n border-block-start-width: 1px;\n}\n\n.p-drawer-left .p-drawer-content,\n.p-drawer-right .p-drawer-content,\n.p-drawer-top .p-drawer-content,\n.p-drawer-bottom .p-drawer-content {\n width: 100%;\n height: 100%;\n}\n\n.p-drawer-open {\n display: flex;\n}\n\n.p-drawer-mask:dir(rtl) {\n flex-direction: row-reverse;\n}\n");
|
|
6
|
-
};
|
|
7
4
|
var inlineStyles = {
|
|
8
|
-
mask: function mask(
|
|
9
|
-
var position =
|
|
10
|
-
modal =
|
|
5
|
+
mask: function mask(_ref) {
|
|
6
|
+
var position = _ref.position,
|
|
7
|
+
modal = _ref.modal;
|
|
11
8
|
return {
|
|
12
9
|
position: 'fixed',
|
|
13
10
|
height: '100%',
|
|
@@ -25,9 +22,9 @@ var inlineStyles = {
|
|
|
25
22
|
}
|
|
26
23
|
};
|
|
27
24
|
var classes = {
|
|
28
|
-
mask: function mask(
|
|
29
|
-
var instance =
|
|
30
|
-
props =
|
|
25
|
+
mask: function mask(_ref2) {
|
|
26
|
+
var instance = _ref2.instance,
|
|
27
|
+
props = _ref2.props;
|
|
31
28
|
var positions = ['left', 'right', 'top', 'bottom'];
|
|
32
29
|
var pos = positions.find(function (item) {
|
|
33
30
|
return item === props.position;
|
|
@@ -38,8 +35,8 @@ var classes = {
|
|
|
38
35
|
'p-drawer-full': instance.fullScreen
|
|
39
36
|
}, pos ? "p-drawer-".concat(pos) : ''];
|
|
40
37
|
},
|
|
41
|
-
root: function root(
|
|
42
|
-
var instance =
|
|
38
|
+
root: function root(_ref3) {
|
|
39
|
+
var instance = _ref3.instance;
|
|
43
40
|
return ['p-drawer p-component', {
|
|
44
41
|
'p-drawer-full': instance.fullScreen
|
|
45
42
|
}];
|
|
@@ -52,7 +49,7 @@ var classes = {
|
|
|
52
49
|
};
|
|
53
50
|
var DrawerStyle = BaseStyle.extend({
|
|
54
51
|
name: 'drawer',
|
|
55
|
-
|
|
52
|
+
style: style,
|
|
56
53
|
classes: classes,
|
|
57
54
|
inlineStyles: inlineStyles
|
|
58
55
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../src/drawer/style/DrawerStyle.js"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../src/drawer/style/DrawerStyle.js"],"sourcesContent":["import { style } from '@primeuix/styles/drawer';\nimport BaseStyle from '@primevue/core/base/style';\n\nconst inlineStyles = {\n mask: ({ position, modal }) => ({\n position: 'fixed',\n height: '100%',\n width: '100%',\n left: 0,\n top: 0,\n display: 'flex',\n justifyContent: position === 'left' ? 'flex-start' : position === 'right' ? 'flex-end' : 'center',\n alignItems: position === 'top' ? 'flex-start' : position === 'bottom' ? 'flex-end' : 'center',\n pointerEvents: modal ? 'auto' : 'none'\n }),\n root: {\n pointerEvents: 'auto'\n }\n};\n\nconst classes = {\n mask: ({ instance, props }) => {\n const positions = ['left', 'right', 'top', 'bottom'];\n const pos = positions.find((item) => item === props.position);\n\n return [\n 'p-drawer-mask',\n {\n 'p-overlay-mask p-overlay-mask-enter': props.modal,\n 'p-drawer-open': instance.containerVisible,\n 'p-drawer-full': instance.fullScreen\n },\n pos ? `p-drawer-${pos}` : ''\n ];\n },\n root: ({ instance }) => [\n 'p-drawer p-component',\n {\n 'p-drawer-full': instance.fullScreen\n }\n ],\n header: 'p-drawer-header',\n title: 'p-drawer-title',\n pcCloseButton: 'p-drawer-close-button',\n content: 'p-drawer-content',\n footer: 'p-drawer-footer'\n};\n\nexport default BaseStyle.extend({\n name: 'drawer',\n style,\n classes,\n inlineStyles\n});\n"],"names":["inlineStyles","mask","_ref","position","modal","height","width","left","top","display","justifyContent","alignItems","pointerEvents","root","classes","_ref2","instance","props","positions","pos","find","item","containerVisible","fullScreen","concat","_ref3","header","title","pcCloseButton","content","footer","BaseStyle","extend","name","style"],"mappings":";;;AAGA,IAAMA,YAAY,GAAG;AACjBC,EAAAA,IAAI,EAAE,SAANA,IAAIA,CAAAC,IAAA,EAAA;AAAA,IAAA,IAAKC,QAAQ,GAAAD,IAAA,CAARC,QAAQ;MAAEC,KAAK,GAAAF,IAAA,CAALE,KAAK;IAAA,OAAQ;AAC5BD,MAAAA,QAAQ,EAAE,OAAO;AACjBE,MAAAA,MAAM,EAAE,MAAM;AACdC,MAAAA,KAAK,EAAE,MAAM;AACbC,MAAAA,IAAI,EAAE,CAAC;AACPC,MAAAA,GAAG,EAAE,CAAC;AACNC,MAAAA,OAAO,EAAE,MAAM;AACfC,MAAAA,cAAc,EAAEP,QAAQ,KAAK,MAAM,GAAG,YAAY,GAAGA,QAAQ,KAAK,OAAO,GAAG,UAAU,GAAG,QAAQ;AACjGQ,MAAAA,UAAU,EAAER,QAAQ,KAAK,KAAK,GAAG,YAAY,GAAGA,QAAQ,KAAK,QAAQ,GAAG,UAAU,GAAG,QAAQ;AAC7FS,MAAAA,aAAa,EAAER,KAAK,GAAG,MAAM,GAAG;KACnC;GAAC;AACFS,EAAAA,IAAI,EAAE;AACFD,IAAAA,aAAa,EAAE;AACnB;AACJ,CAAC;AAED,IAAME,OAAO,GAAG;AACZb,EAAAA,IAAI,EAAE,SAANA,IAAIA,CAAAc,KAAA,EAA2B;AAAA,IAAA,IAAtBC,QAAQ,GAAAD,KAAA,CAARC,QAAQ;MAAEC,KAAK,GAAAF,KAAA,CAALE,KAAK;IACpB,IAAMC,SAAS,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC;AACpD,IAAA,IAAMC,GAAG,GAAGD,SAAS,CAACE,IAAI,CAAC,UAACC,IAAI,EAAA;AAAA,MAAA,OAAKA,IAAI,KAAKJ,KAAK,CAACd,QAAQ;KAAC,CAAA;IAE7D,OAAO,CACH,eAAe,EACf;MACI,qCAAqC,EAAEc,KAAK,CAACb,KAAK;MAClD,eAAe,EAAEY,QAAQ,CAACM,gBAAgB;MAC1C,eAAe,EAAEN,QAAQ,CAACO;KAC7B,EACDJ,GAAG,GAAAK,WAAAA,CAAAA,MAAA,CAAeL,GAAG,CAAA,GAAK,EAAE,CAC/B;GACJ;AACDN,EAAAA,IAAI,EAAE,SAANA,IAAIA,CAAAY,KAAA,EAAA;AAAA,IAAA,IAAKT,QAAQ,GAAAS,KAAA,CAART,QAAQ;IAAA,OAAO,CACpB,sBAAsB,EACtB;MACI,eAAe,EAAEA,QAAQ,CAACO;AAC9B,KAAC,CACJ;AAAA,GAAA;AACDG,EAAAA,MAAM,EAAE,iBAAiB;AACzBC,EAAAA,KAAK,EAAE,gBAAgB;AACvBC,EAAAA,aAAa,EAAE,uBAAuB;AACtCC,EAAAA,OAAO,EAAE,kBAAkB;AAC3BC,EAAAA,MAAM,EAAE;AACZ,CAAC;AAED,kBAAeC,SAAS,CAACC,MAAM,CAAC;AAC5BC,EAAAA,IAAI,EAAE,QAAQ;AACdC,EAAAA,KAAK,EAALA,KAAK;AACLpB,EAAAA,OAAO,EAAPA,OAAO;AACPd,EAAAA,YAAY,EAAZA;AACJ,CAAC,CAAC;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<template v-for="(instance, key) in instanceMap" :key="key">
|
|
3
|
-
<DDialog v-model:visible="instance.visible" :_instance="instance" v-bind="instance.options.props" @hide="onDialogHide(instance)" @after-hide="onDialogAfterHide">
|
|
3
|
+
<DDialog v-model:visible="instance.visible" :_instance="instance" v-bind="instance.options.props" @hide="onDialogHide(instance)" @after-hide="onDialogAfterHide(instance)">
|
|
4
4
|
<template v-if="instance.options.templates && instance.options.templates.header" #header>
|
|
5
5
|
<component v-for="(header, index) in getTemplateItems(instance.options.templates.header)" :is="header" :key="index + '_header'" v-bind="instance.options.emits"></component>
|
|
6
6
|
</template>
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
</template>
|
|
14
14
|
|
|
15
15
|
<script>
|
|
16
|
-
import {
|
|
16
|
+
import { uuid } from '@primeuix/utils';
|
|
17
17
|
import Dialog from 'primevue/dialog';
|
|
18
18
|
import DynamicDialogEventBus from 'primevue/dynamicdialogeventbus';
|
|
19
19
|
import BaseDynamicDialog from './BaseDynamicDialog.vue';
|
|
@@ -32,7 +32,7 @@ export default {
|
|
|
32
32
|
currentInstance: null,
|
|
33
33
|
mounted() {
|
|
34
34
|
this.openListener = ({ instance }) => {
|
|
35
|
-
const key =
|
|
35
|
+
const key = uuid() + '_dynamic_dialog';
|
|
36
36
|
|
|
37
37
|
instance.visible = true;
|
|
38
38
|
instance.key = key;
|
|
@@ -61,11 +61,11 @@ export default {
|
|
|
61
61
|
methods: {
|
|
62
62
|
onDialogHide(instance) {
|
|
63
63
|
!this.currentInstance && instance.options.onClose && instance.options.onClose({ type: 'dialog-close' });
|
|
64
|
-
delete this.instanceMap[instance.key];
|
|
65
64
|
},
|
|
66
|
-
onDialogAfterHide() {
|
|
65
|
+
onDialogAfterHide(instance) {
|
|
67
66
|
this.currentInstance && delete this.currentInstance;
|
|
68
67
|
this.currentInstance = null;
|
|
68
|
+
delete this.instanceMap[instance.key];
|
|
69
69
|
},
|
|
70
70
|
getTemplateItems(template) {
|
|
71
71
|
return Array.isArray(template) ? template : [template];
|
package/dynamicdialog/index.mjs
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { uuid } from '@primeuix/utils';
|
|
2
2
|
import Dialog from 'primevue/dialog';
|
|
3
3
|
import DynamicDialogEventBus from 'primevue/dynamicdialogeventbus';
|
|
4
4
|
import BaseComponent from '@primevue/core/basecomponent';
|
|
5
5
|
import DynamicDialogStyle from 'primevue/dynamicdialog/style';
|
|
6
|
-
import { resolveComponent,
|
|
6
|
+
import { resolveComponent, createElementBlock, openBlock, Fragment, renderList, createBlock, mergeProps, createSlots, withCtx, resolveDynamicComponent } from 'vue';
|
|
7
7
|
|
|
8
8
|
var script$1 = {
|
|
9
9
|
name: 'BaseDynamicDialog',
|
|
@@ -34,7 +34,7 @@ var script = {
|
|
|
34
34
|
var _this = this;
|
|
35
35
|
this.openListener = function (_ref) {
|
|
36
36
|
var instance = _ref.instance;
|
|
37
|
-
var key =
|
|
37
|
+
var key = uuid() + '_dynamic_dialog';
|
|
38
38
|
instance.visible = true;
|
|
39
39
|
instance.key = key;
|
|
40
40
|
_this.instanceMap[key] = instance;
|
|
@@ -65,11 +65,11 @@ var script = {
|
|
|
65
65
|
!this.currentInstance && instance.options.onClose && instance.options.onClose({
|
|
66
66
|
type: 'dialog-close'
|
|
67
67
|
});
|
|
68
|
-
delete this.instanceMap[instance.key];
|
|
69
68
|
},
|
|
70
|
-
onDialogAfterHide: function onDialogAfterHide() {
|
|
69
|
+
onDialogAfterHide: function onDialogAfterHide(instance) {
|
|
71
70
|
this.currentInstance && delete this.currentInstance;
|
|
72
71
|
this.currentInstance = null;
|
|
72
|
+
delete this.instanceMap[instance.key];
|
|
73
73
|
},
|
|
74
74
|
getTemplateItems: function getTemplateItems(template) {
|
|
75
75
|
return Array.isArray(template) ? template : [template];
|
|
@@ -95,7 +95,9 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
95
95
|
onHide: function onHide($event) {
|
|
96
96
|
return $options.onDialogHide(instance);
|
|
97
97
|
},
|
|
98
|
-
onAfterHide: $
|
|
98
|
+
onAfterHide: function onAfterHide($event) {
|
|
99
|
+
return $options.onDialogAfterHide(instance);
|
|
100
|
+
}
|
|
99
101
|
}), createSlots({
|
|
100
102
|
"default": withCtx(function () {
|
|
101
103
|
return [(openBlock(), createBlock(resolveDynamicComponent(instance.content), mergeProps({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/dynamicdialog/BaseDynamicDialog.vue","../../src/dynamicdialog/DynamicDialog.vue","../../src/dynamicdialog/DynamicDialog.vue?vue&type=template&id=062216e0&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport DynamicDialogStyle from 'primevue/dynamicdialog/style';\n\nexport default {\n name: 'BaseDynamicDialog',\n extends: BaseComponent,\n props: {},\n style: DynamicDialogStyle,\n provide() {\n return {\n $pcDynamicDialog: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <template v-for=\"(instance, key) in instanceMap\" :key=\"key\">\n <DDialog v-model:visible=\"instance.visible\" :_instance=\"instance\" v-bind=\"instance.options.props\" @hide=\"onDialogHide(instance)\" @after-hide=\"onDialogAfterHide\">\n <template v-if=\"instance.options.templates && instance.options.templates.header\" #header>\n <component v-for=\"(header, index) in getTemplateItems(instance.options.templates.header)\" :is=\"header\" :key=\"index + '_header'\" v-bind=\"instance.options.emits\"></component>\n </template>\n <component :is=\"instance.content\" v-bind=\"instance.options.emits\"></component>\n <template v-if=\"instance.options.templates && instance.options.templates.footer\" #footer>\n <component v-for=\"(footer, index) in getTemplateItems(instance.options.templates.footer)\" :is=\"footer\" :key=\"index + '_footer'\" v-bind=\"instance.options.emits\"></component>\n </template>\n </DDialog>\n </template>\n</template>\n\n<script>\nimport { UniqueComponentId } from '@primevue/core/utils';\nimport Dialog from 'primevue/dialog';\nimport DynamicDialogEventBus from 'primevue/dynamicdialogeventbus';\nimport BaseDynamicDialog from './BaseDynamicDialog.vue';\n\nexport default {\n name: 'DynamicDialog',\n extends: BaseDynamicDialog,\n inheritAttrs: false,\n data() {\n return {\n instanceMap: {}\n };\n },\n openListener: null,\n closeListener: null,\n currentInstance: null,\n mounted() {\n this.openListener = ({ instance }) => {\n const key = UniqueComponentId() + '_dynamic_dialog';\n\n instance.visible = true;\n instance.key = key;\n this.instanceMap[key] = instance;\n };\n\n this.closeListener = ({ instance, params }) => {\n const key = instance.key;\n const currentInstance = this.instanceMap[key];\n\n if (currentInstance) {\n currentInstance.visible = false;\n currentInstance.options.onClose && currentInstance.options.onClose({ data: params, type: 'config-close' });\n\n this.currentInstance = currentInstance;\n }\n };\n\n DynamicDialogEventBus.on('open', this.openListener);\n DynamicDialogEventBus.on('close', this.closeListener);\n },\n beforeUnmount() {\n DynamicDialogEventBus.off('open', this.openListener);\n DynamicDialogEventBus.off('close', this.closeListener);\n },\n methods: {\n onDialogHide(instance) {\n !this.currentInstance && instance.options.onClose && instance.options.onClose({ type: 'dialog-close' });\n delete this.instanceMap[instance.key];\n },\n onDialogAfterHide() {\n this.currentInstance && delete this.currentInstance;\n this.currentInstance = null;\n },\n getTemplateItems(template) {\n return Array.isArray(template) ? template : [template];\n }\n },\n components: {\n DDialog: Dialog\n }\n};\n</script>\n","<template>\n <template v-for=\"(instance, key) in instanceMap\" :key=\"key\">\n <DDialog v-model:visible=\"instance.visible\" :_instance=\"instance\" v-bind=\"instance.options.props\" @hide=\"onDialogHide(instance)\" @after-hide=\"onDialogAfterHide\">\n <template v-if=\"instance.options.templates && instance.options.templates.header\" #header>\n <component v-for=\"(header, index) in getTemplateItems(instance.options.templates.header)\" :is=\"header\" :key=\"index + '_header'\" v-bind=\"instance.options.emits\"></component>\n </template>\n <component :is=\"instance.content\" v-bind=\"instance.options.emits\"></component>\n <template v-if=\"instance.options.templates && instance.options.templates.footer\" #footer>\n <component v-for=\"(footer, index) in getTemplateItems(instance.options.templates.footer)\" :is=\"footer\" :key=\"index + '_footer'\" v-bind=\"instance.options.emits\"></component>\n </template>\n </DDialog>\n </template>\n</template>\n\n<script>\nimport { UniqueComponentId } from '@primevue/core/utils';\nimport Dialog from 'primevue/dialog';\nimport DynamicDialogEventBus from 'primevue/dynamicdialogeventbus';\nimport BaseDynamicDialog from './BaseDynamicDialog.vue';\n\nexport default {\n name: 'DynamicDialog',\n extends: BaseDynamicDialog,\n inheritAttrs: false,\n data() {\n return {\n instanceMap: {}\n };\n },\n openListener: null,\n closeListener: null,\n currentInstance: null,\n mounted() {\n this.openListener = ({ instance }) => {\n const key = UniqueComponentId() + '_dynamic_dialog';\n\n instance.visible = true;\n instance.key = key;\n this.instanceMap[key] = instance;\n };\n\n this.closeListener = ({ instance, params }) => {\n const key = instance.key;\n const currentInstance = this.instanceMap[key];\n\n if (currentInstance) {\n currentInstance.visible = false;\n currentInstance.options.onClose && currentInstance.options.onClose({ data: params, type: 'config-close' });\n\n this.currentInstance = currentInstance;\n }\n };\n\n DynamicDialogEventBus.on('open', this.openListener);\n DynamicDialogEventBus.on('close', this.closeListener);\n },\n beforeUnmount() {\n DynamicDialogEventBus.off('open', this.openListener);\n DynamicDialogEventBus.off('close', this.closeListener);\n },\n methods: {\n onDialogHide(instance) {\n !this.currentInstance && instance.options.onClose && instance.options.onClose({ type: 'dialog-close' });\n delete this.instanceMap[instance.key];\n },\n onDialogAfterHide() {\n this.currentInstance && delete this.currentInstance;\n this.currentInstance = null;\n },\n getTemplateItems(template) {\n return Array.isArray(template) ? template : [template];\n }\n },\n components: {\n DDialog: Dialog\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","style","DynamicDialogStyle","provide","$pcDynamicDialog","$parentInstance","BaseDynamicDialog","inheritAttrs","data","instanceMap","openListener","closeListener","currentInstance","mounted","_this","_ref","instance","key","UniqueComponentId","visible","_ref2","params","options","onClose","type","DynamicDialogEventBus","on","beforeUnmount","off","methods","onDialogHide","onDialogAfterHide","getTemplateItems","template","Array","isArray","components","DDialog","Dialog","_openBlock","_createElementBlock","_Fragment","_renderList","$data","_createBlock","_component_DDialog","_mergeProps","onUpdateVisible","$event","_instance","onHide","$options","onAfterHide","_resolveDynamicComponent","content","ref_for","emits","templates","header","index","footer"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/dynamicdialog/BaseDynamicDialog.vue","../../src/dynamicdialog/DynamicDialog.vue","../../src/dynamicdialog/DynamicDialog.vue?vue&type=template&id=4e9ba053&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport DynamicDialogStyle from 'primevue/dynamicdialog/style';\n\nexport default {\n name: 'BaseDynamicDialog',\n extends: BaseComponent,\n props: {},\n style: DynamicDialogStyle,\n provide() {\n return {\n $pcDynamicDialog: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <template v-for=\"(instance, key) in instanceMap\" :key=\"key\">\n <DDialog v-model:visible=\"instance.visible\" :_instance=\"instance\" v-bind=\"instance.options.props\" @hide=\"onDialogHide(instance)\" @after-hide=\"onDialogAfterHide(instance)\">\n <template v-if=\"instance.options.templates && instance.options.templates.header\" #header>\n <component v-for=\"(header, index) in getTemplateItems(instance.options.templates.header)\" :is=\"header\" :key=\"index + '_header'\" v-bind=\"instance.options.emits\"></component>\n </template>\n <component :is=\"instance.content\" v-bind=\"instance.options.emits\"></component>\n <template v-if=\"instance.options.templates && instance.options.templates.footer\" #footer>\n <component v-for=\"(footer, index) in getTemplateItems(instance.options.templates.footer)\" :is=\"footer\" :key=\"index + '_footer'\" v-bind=\"instance.options.emits\"></component>\n </template>\n </DDialog>\n </template>\n</template>\n\n<script>\nimport { uuid } from '@primeuix/utils';\nimport Dialog from 'primevue/dialog';\nimport DynamicDialogEventBus from 'primevue/dynamicdialogeventbus';\nimport BaseDynamicDialog from './BaseDynamicDialog.vue';\n\nexport default {\n name: 'DynamicDialog',\n extends: BaseDynamicDialog,\n inheritAttrs: false,\n data() {\n return {\n instanceMap: {}\n };\n },\n openListener: null,\n closeListener: null,\n currentInstance: null,\n mounted() {\n this.openListener = ({ instance }) => {\n const key = uuid() + '_dynamic_dialog';\n\n instance.visible = true;\n instance.key = key;\n this.instanceMap[key] = instance;\n };\n\n this.closeListener = ({ instance, params }) => {\n const key = instance.key;\n const currentInstance = this.instanceMap[key];\n\n if (currentInstance) {\n currentInstance.visible = false;\n currentInstance.options.onClose && currentInstance.options.onClose({ data: params, type: 'config-close' });\n\n this.currentInstance = currentInstance;\n }\n };\n\n DynamicDialogEventBus.on('open', this.openListener);\n DynamicDialogEventBus.on('close', this.closeListener);\n },\n beforeUnmount() {\n DynamicDialogEventBus.off('open', this.openListener);\n DynamicDialogEventBus.off('close', this.closeListener);\n },\n methods: {\n onDialogHide(instance) {\n !this.currentInstance && instance.options.onClose && instance.options.onClose({ type: 'dialog-close' });\n },\n onDialogAfterHide(instance) {\n this.currentInstance && delete this.currentInstance;\n this.currentInstance = null;\n delete this.instanceMap[instance.key];\n },\n getTemplateItems(template) {\n return Array.isArray(template) ? template : [template];\n }\n },\n components: {\n DDialog: Dialog\n }\n};\n</script>\n","<template>\n <template v-for=\"(instance, key) in instanceMap\" :key=\"key\">\n <DDialog v-model:visible=\"instance.visible\" :_instance=\"instance\" v-bind=\"instance.options.props\" @hide=\"onDialogHide(instance)\" @after-hide=\"onDialogAfterHide(instance)\">\n <template v-if=\"instance.options.templates && instance.options.templates.header\" #header>\n <component v-for=\"(header, index) in getTemplateItems(instance.options.templates.header)\" :is=\"header\" :key=\"index + '_header'\" v-bind=\"instance.options.emits\"></component>\n </template>\n <component :is=\"instance.content\" v-bind=\"instance.options.emits\"></component>\n <template v-if=\"instance.options.templates && instance.options.templates.footer\" #footer>\n <component v-for=\"(footer, index) in getTemplateItems(instance.options.templates.footer)\" :is=\"footer\" :key=\"index + '_footer'\" v-bind=\"instance.options.emits\"></component>\n </template>\n </DDialog>\n </template>\n</template>\n\n<script>\nimport { uuid } from '@primeuix/utils';\nimport Dialog from 'primevue/dialog';\nimport DynamicDialogEventBus from 'primevue/dynamicdialogeventbus';\nimport BaseDynamicDialog from './BaseDynamicDialog.vue';\n\nexport default {\n name: 'DynamicDialog',\n extends: BaseDynamicDialog,\n inheritAttrs: false,\n data() {\n return {\n instanceMap: {}\n };\n },\n openListener: null,\n closeListener: null,\n currentInstance: null,\n mounted() {\n this.openListener = ({ instance }) => {\n const key = uuid() + '_dynamic_dialog';\n\n instance.visible = true;\n instance.key = key;\n this.instanceMap[key] = instance;\n };\n\n this.closeListener = ({ instance, params }) => {\n const key = instance.key;\n const currentInstance = this.instanceMap[key];\n\n if (currentInstance) {\n currentInstance.visible = false;\n currentInstance.options.onClose && currentInstance.options.onClose({ data: params, type: 'config-close' });\n\n this.currentInstance = currentInstance;\n }\n };\n\n DynamicDialogEventBus.on('open', this.openListener);\n DynamicDialogEventBus.on('close', this.closeListener);\n },\n beforeUnmount() {\n DynamicDialogEventBus.off('open', this.openListener);\n DynamicDialogEventBus.off('close', this.closeListener);\n },\n methods: {\n onDialogHide(instance) {\n !this.currentInstance && instance.options.onClose && instance.options.onClose({ type: 'dialog-close' });\n },\n onDialogAfterHide(instance) {\n this.currentInstance && delete this.currentInstance;\n this.currentInstance = null;\n delete this.instanceMap[instance.key];\n },\n getTemplateItems(template) {\n return Array.isArray(template) ? template : [template];\n }\n },\n components: {\n DDialog: Dialog\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","style","DynamicDialogStyle","provide","$pcDynamicDialog","$parentInstance","BaseDynamicDialog","inheritAttrs","data","instanceMap","openListener","closeListener","currentInstance","mounted","_this","_ref","instance","key","uuid","visible","_ref2","params","options","onClose","type","DynamicDialogEventBus","on","beforeUnmount","off","methods","onDialogHide","onDialogAfterHide","getTemplateItems","template","Array","isArray","components","DDialog","Dialog","_openBlock","_createElementBlock","_Fragment","_renderList","$data","_createBlock","_component_DDialog","_mergeProps","onUpdateVisible","$event","_instance","onHide","$options","onAfterHide","_resolveDynamicComponent","content","ref_for","emits","templates","header","index","footer"],"mappings":"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"}
|
package/editor/Editor.vue
CHANGED
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
<button class="ql-italic" type="button" v-bind="ptm('italic')"></button>
|
|
20
20
|
<button class="ql-underline" type="button" v-bind="ptm('underline')"></button>
|
|
21
21
|
</span>
|
|
22
|
-
<span
|
|
22
|
+
<span class="ql-formats" v-bind="ptm('formats')">
|
|
23
23
|
<select class="ql-color" v-bind="ptm('color')"></select>
|
|
24
24
|
<select class="ql-background" v-bind="ptm('background')"></select>
|
|
25
25
|
</span>
|
|
@@ -64,16 +64,10 @@ export default {
|
|
|
64
64
|
extends: BaseEditor,
|
|
65
65
|
inheritAttrs: false,
|
|
66
66
|
emits: ['text-change', 'selection-change', 'load'],
|
|
67
|
-
data() {
|
|
68
|
-
return {
|
|
69
|
-
reRenderColorKey: 0
|
|
70
|
-
};
|
|
71
|
-
},
|
|
72
67
|
quill: null,
|
|
73
68
|
watch: {
|
|
74
69
|
modelValue(newValue, oldValue) {
|
|
75
70
|
if (newValue !== oldValue && this.quill && !this.quill.hasFocus()) {
|
|
76
|
-
this.reRenderColorKey++;
|
|
77
71
|
this.renderValue(newValue);
|
|
78
72
|
}
|
|
79
73
|
},
|
|
@@ -124,8 +118,12 @@ export default {
|
|
|
124
118
|
methods: {
|
|
125
119
|
renderValue(value) {
|
|
126
120
|
if (this.quill) {
|
|
127
|
-
if (value)
|
|
128
|
-
|
|
121
|
+
if (value) {
|
|
122
|
+
const delta = this.quill.clipboard.convert({ html: value });
|
|
123
|
+
this.quill.setContents(delta);
|
|
124
|
+
} else {
|
|
125
|
+
this.quill.setText('');
|
|
126
|
+
}
|
|
129
127
|
}
|
|
130
128
|
},
|
|
131
129
|
initQuill() {
|
|
@@ -133,7 +131,7 @@ export default {
|
|
|
133
131
|
|
|
134
132
|
this.quill.on('text-change', (delta, oldContents, source) => {
|
|
135
133
|
if (source === 'user') {
|
|
136
|
-
let html = this
|
|
134
|
+
let html = this.quill.getSemanticHTML();
|
|
137
135
|
let text = this.quill.getText().trim();
|
|
138
136
|
|
|
139
137
|
if (html === '<p><br></p>') {
|
|
@@ -152,7 +150,7 @@ export default {
|
|
|
152
150
|
});
|
|
153
151
|
|
|
154
152
|
this.quill.on('selection-change', (range, oldRange, source) => {
|
|
155
|
-
let html = this
|
|
153
|
+
let html = this.quill.getSemanticHTML();
|
|
156
154
|
let text = this.quill.getText().trim();
|
|
157
155
|
|
|
158
156
|
this.$emit('selection-change', {
|
package/editor/index.d.ts
CHANGED
|
@@ -26,10 +26,6 @@ export interface EditorPassThroughMethodOptions {
|
|
|
26
26
|
* Defines valid properties.
|
|
27
27
|
*/
|
|
28
28
|
props: EditorProps;
|
|
29
|
-
/**
|
|
30
|
-
* Defines current inline state.
|
|
31
|
-
*/
|
|
32
|
-
state: EditorState;
|
|
33
29
|
/**
|
|
34
30
|
* Defines valid attributes.
|
|
35
31
|
*/
|
|
@@ -198,17 +194,6 @@ export interface EditorPassThroughAttributes {
|
|
|
198
194
|
[key: string]: any;
|
|
199
195
|
}
|
|
200
196
|
|
|
201
|
-
/**
|
|
202
|
-
* Defines current inline state in Editor component.
|
|
203
|
-
*/
|
|
204
|
-
export interface EditorState {
|
|
205
|
-
/**
|
|
206
|
-
* Current rerendered color key as a number.
|
|
207
|
-
* @defaultValue 0
|
|
208
|
-
*/
|
|
209
|
-
reRenderColorKey: number;
|
|
210
|
-
}
|
|
211
|
-
|
|
212
197
|
/**
|
|
213
198
|
* Defines valid properties in Editor component.
|
|
214
199
|
*/
|
package/editor/index.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { isExist } from '@primeuix/utils/dom';
|
|
2
2
|
import BaseEditableHolder from '@primevue/core/baseeditableholder';
|
|
3
3
|
import EditorStyle from 'primevue/editor/style';
|
|
4
|
-
import {
|
|
4
|
+
import { createElementBlock, openBlock, mergeProps, createElementVNode, renderSlot, normalizeProps, guardReactiveProps } from 'vue';
|
|
5
5
|
|
|
6
6
|
var script$1 = {
|
|
7
7
|
name: 'BaseEditor',
|
|
@@ -24,10 +24,10 @@ var script$1 = {
|
|
|
24
24
|
|
|
25
25
|
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
26
26
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
27
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t),
|
|
28
|
-
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable:
|
|
27
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
28
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e; }
|
|
29
29
|
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
30
|
-
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r
|
|
30
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
31
31
|
var QuillJS = function () {
|
|
32
32
|
try {
|
|
33
33
|
return window.Quill;
|
|
@@ -40,16 +40,10 @@ var script = {
|
|
|
40
40
|
"extends": script$1,
|
|
41
41
|
inheritAttrs: false,
|
|
42
42
|
emits: ['text-change', 'selection-change', 'load'],
|
|
43
|
-
data: function data() {
|
|
44
|
-
return {
|
|
45
|
-
reRenderColorKey: 0
|
|
46
|
-
};
|
|
47
|
-
},
|
|
48
43
|
quill: null,
|
|
49
44
|
watch: {
|
|
50
45
|
modelValue: function modelValue(newValue, oldValue) {
|
|
51
46
|
if (newValue !== oldValue && this.quill && !this.quill.hasFocus()) {
|
|
52
|
-
this.reRenderColorKey++;
|
|
53
47
|
this.renderValue(newValue);
|
|
54
48
|
}
|
|
55
49
|
},
|
|
@@ -96,7 +90,14 @@ var script = {
|
|
|
96
90
|
methods: {
|
|
97
91
|
renderValue: function renderValue(value) {
|
|
98
92
|
if (this.quill) {
|
|
99
|
-
if (value)
|
|
93
|
+
if (value) {
|
|
94
|
+
var delta = this.quill.clipboard.convert({
|
|
95
|
+
html: value
|
|
96
|
+
});
|
|
97
|
+
this.quill.setContents(delta);
|
|
98
|
+
} else {
|
|
99
|
+
this.quill.setText('');
|
|
100
|
+
}
|
|
100
101
|
}
|
|
101
102
|
},
|
|
102
103
|
initQuill: function initQuill() {
|
|
@@ -104,7 +105,7 @@ var script = {
|
|
|
104
105
|
this.renderValue(this.d_value);
|
|
105
106
|
this.quill.on('text-change', function (delta, oldContents, source) {
|
|
106
107
|
if (source === 'user') {
|
|
107
|
-
var html = _this2
|
|
108
|
+
var html = _this2.quill.getSemanticHTML();
|
|
108
109
|
var text = _this2.quill.getText().trim();
|
|
109
110
|
if (html === '<p><br></p>') {
|
|
110
111
|
html = '';
|
|
@@ -120,7 +121,7 @@ var script = {
|
|
|
120
121
|
}
|
|
121
122
|
});
|
|
122
123
|
this.quill.on('selection-change', function (range, oldRange, source) {
|
|
123
|
-
var html = _this2
|
|
124
|
+
var html = _this2.quill.getSemanticHTML();
|
|
124
125
|
var text = _this2.quill.getText().trim();
|
|
125
126
|
_this2.$emit('selection-change', {
|
|
126
127
|
htmlValue: html,
|
|
@@ -180,14 +181,13 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
180
181
|
}, _ctx.ptm('italic')), null, 16), createElementVNode("button", mergeProps({
|
|
181
182
|
"class": "ql-underline",
|
|
182
183
|
type: "button"
|
|
183
|
-
}, _ctx.ptm('underline')), null, 16)], 16), (
|
|
184
|
-
key: $data.reRenderColorKey,
|
|
184
|
+
}, _ctx.ptm('underline')), null, 16)], 16), createElementVNode("span", mergeProps({
|
|
185
185
|
"class": "ql-formats"
|
|
186
186
|
}, _ctx.ptm('formats')), [createElementVNode("select", mergeProps({
|
|
187
187
|
"class": "ql-color"
|
|
188
188
|
}, _ctx.ptm('color')), null, 16), createElementVNode("select", mergeProps({
|
|
189
189
|
"class": "ql-background"
|
|
190
|
-
}, _ctx.ptm('background')), null, 16)], 16)
|
|
190
|
+
}, _ctx.ptm('background')), null, 16)], 16), createElementVNode("span", mergeProps({
|
|
191
191
|
"class": "ql-formats"
|
|
192
192
|
}, _ctx.ptm('formats')), [createElementVNode("button", mergeProps({
|
|
193
193
|
"class": "ql-list",
|