primevue 3.28.0 → 3.29.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/README.md +3 -3
- package/autocomplete/AutoComplete.d.ts +153 -1
- package/autocomplete/AutoComplete.vue +46 -17
- package/autocomplete/autocomplete.cjs.js +80 -74
- package/autocomplete/autocomplete.cjs.min.js +1 -1
- package/autocomplete/autocomplete.esm.js +80 -75
- package/autocomplete/autocomplete.esm.min.js +1 -1
- package/autocomplete/autocomplete.js +81 -76
- package/autocomplete/autocomplete.min.js +1 -1
- package/basecomponent/BaseComponent.vue +19 -5
- package/basecomponent/basecomponent.cjs.js +19 -5
- package/basecomponent/basecomponent.cjs.min.js +1 -1
- package/basecomponent/basecomponent.esm.js +19 -5
- package/basecomponent/basecomponent.esm.min.js +1 -1
- package/basecomponent/basecomponent.js +20 -7
- package/basecomponent/basecomponent.min.js +1 -1
- package/calendar/Calendar.d.ts +269 -0
- package/calendar/Calendar.vue +75 -59
- package/calendar/calendar.cjs.js +223 -259
- package/calendar/calendar.cjs.min.js +1 -1
- package/calendar/calendar.esm.js +223 -260
- package/calendar/calendar.esm.min.js +1 -1
- package/calendar/calendar.js +224 -261
- package/calendar/calendar.min.js +1 -1
- package/carousel/Carousel.d.ts +154 -0
- package/carousel/Carousel.vue +27 -14
- package/carousel/carousel.cjs.js +64 -65
- package/carousel/carousel.cjs.min.js +1 -1
- package/carousel/carousel.esm.js +64 -66
- package/carousel/carousel.esm.min.js +1 -1
- package/carousel/carousel.js +65 -67
- package/carousel/carousel.min.js +1 -1
- package/cascadeselect/CascadeSelect.d.ts +133 -0
- package/cascadeselect/CascadeSelect.vue +15 -12
- package/cascadeselect/CascadeSelectSub.vue +7 -3
- package/cascadeselect/cascadeselect.cjs.js +63 -66
- package/cascadeselect/cascadeselect.cjs.min.js +1 -1
- package/cascadeselect/cascadeselect.esm.js +63 -67
- package/cascadeselect/cascadeselect.esm.min.js +1 -1
- package/cascadeselect/cascadeselect.js +64 -68
- package/cascadeselect/cascadeselect.min.js +1 -1
- package/checkbox/Checkbox.d.ts +60 -0
- package/checkbox/Checkbox.vue +7 -5
- package/checkbox/checkbox.cjs.js +17 -15
- package/checkbox/checkbox.cjs.min.js +1 -1
- package/checkbox/checkbox.esm.js +17 -16
- package/checkbox/checkbox.esm.min.js +1 -1
- package/checkbox/checkbox.js +18 -17
- package/checkbox/checkbox.min.js +1 -1
- package/chips/Chips.d.ts +80 -0
- package/chips/Chips.vue +9 -5
- package/chips/chips.cjs.js +23 -24
- package/chips/chips.cjs.min.js +1 -1
- package/chips/chips.esm.js +23 -25
- package/chips/chips.esm.min.js +1 -1
- package/chips/chips.js +24 -26
- package/chips/chips.min.js +1 -1
- package/colorpicker/ColorPicker.d.ts +76 -0
- package/colorpicker/ColorPicker.vue +11 -9
- package/colorpicker/colorpicker.cjs.js +28 -27
- package/colorpicker/colorpicker.cjs.min.js +1 -1
- package/colorpicker/colorpicker.esm.js +28 -28
- package/colorpicker/colorpicker.esm.min.js +1 -1
- package/colorpicker/colorpicker.js +29 -29
- package/colorpicker/colorpicker.min.js +1 -1
- package/column/Column.d.ts +303 -2
- package/column/Column.vue +3 -0
- package/column/column.cjs.js +7 -0
- package/column/column.cjs.min.js +1 -1
- package/column/column.esm.js +3 -0
- package/column/column.esm.min.js +1 -1
- package/column/column.js +7 -2
- package/column/column.min.js +1 -1
- package/columngroup/ColumnGroup.d.ts +34 -0
- package/columngroup/ColumnGroup.vue +3 -0
- package/columngroup/columngroup.cjs.js +7 -0
- package/columngroup/columngroup.cjs.min.js +1 -1
- package/columngroup/columngroup.esm.js +3 -0
- package/columngroup/columngroup.esm.min.js +1 -1
- package/columngroup/columngroup.js +7 -2
- package/columngroup/columngroup.min.js +1 -1
- package/config/PrimeVue.d.ts +163 -2
- package/confirmdialog/ConfirmDialog.d.ts +14 -7
- package/contextmenu/ContextMenu.d.ts +1 -1
- package/core/core.js +448 -331
- package/core/core.min.js +9 -9
- package/datatable/BodyCell.vue +29 -13
- package/datatable/ColumnFilter.vue +49 -20
- package/datatable/DataTable.d.ts +188 -1
- package/datatable/DataTable.vue +25 -14
- package/datatable/FooterCell.vue +15 -1
- package/datatable/HeaderCell.vue +31 -6
- package/datatable/HeaderCheckbox.vue +35 -5
- package/datatable/RowCheckbox.vue +36 -5
- package/datatable/RowRadioButton.vue +26 -6
- package/datatable/TableBody.vue +41 -11
- package/datatable/TableFooter.vue +31 -5
- package/datatable/TableHeader.vue +53 -6
- package/datatable/datatable.cjs.js +559 -376
- package/datatable/datatable.cjs.min.js +1 -1
- package/datatable/datatable.esm.js +559 -377
- package/datatable/datatable.esm.min.js +1 -1
- package/datatable/datatable.js +560 -378
- package/datatable/datatable.min.js +1 -1
- package/dataview/DataView.d.ts +72 -0
- package/dataview/DataView.vue +13 -8
- package/dataview/dataview.cjs.js +33 -37
- package/dataview/dataview.cjs.min.js +1 -1
- package/dataview/dataview.esm.js +33 -38
- package/dataview/dataview.esm.min.js +1 -1
- package/dataview/dataview.js +33 -38
- package/dataview/dataview.min.js +1 -1
- package/dataviewlayoutoptions/DataViewLayoutOptions.d.ts +65 -0
- package/dataviewlayoutoptions/DataViewLayoutOptions.vue +7 -5
- package/dataviewlayoutoptions/dataviewlayoutoptions.cjs.js +19 -17
- package/dataviewlayoutoptions/dataviewlayoutoptions.cjs.min.js +1 -1
- package/dataviewlayoutoptions/dataviewlayoutoptions.esm.js +19 -18
- package/dataviewlayoutoptions/dataviewlayoutoptions.esm.min.js +1 -1
- package/dataviewlayoutoptions/dataviewlayoutoptions.js +20 -19
- package/dataviewlayoutoptions/dataviewlayoutoptions.min.js +1 -1
- package/dialog/Dialog.d.ts +6 -4
- package/dialog/Dialog.vue +2 -3
- package/dialog/dialog.cjs.js +4 -5
- package/dialog/dialog.cjs.min.js +1 -1
- package/dialog/dialog.esm.js +4 -5
- package/dialog/dialog.esm.min.js +1 -1
- package/dialog/dialog.js +4 -5
- package/dialog/dialog.min.js +1 -1
- package/dropdown/Dropdown.d.ts +162 -1
- package/dropdown/Dropdown.vue +44 -25
- package/dropdown/dropdown.cjs.js +97 -93
- package/dropdown/dropdown.cjs.min.js +1 -1
- package/dropdown/dropdown.esm.js +97 -94
- package/dropdown/dropdown.esm.min.js +1 -1
- package/dropdown/dropdown.js +98 -95
- package/dropdown/dropdown.min.js +1 -1
- package/editor/Editor.d.ts +67 -0
- package/editor/Editor.vue +35 -33
- package/editor/editor.cjs.js +88 -73
- package/editor/editor.cjs.min.js +1 -1
- package/editor/editor.esm.js +85 -74
- package/editor/editor.esm.min.js +1 -1
- package/editor/editor.js +89 -75
- package/editor/editor.min.js +1 -1
- package/fileupload/FileUpload.d.ts +23 -23
- package/fileupload/FileUpload.vue +3 -3
- package/fileupload/fileupload.cjs.js +4 -4
- package/fileupload/fileupload.cjs.min.js +1 -1
- package/fileupload/fileupload.esm.js +4 -4
- package/fileupload/fileupload.esm.min.js +1 -1
- package/fileupload/fileupload.js +4 -4
- package/fileupload/fileupload.min.js +1 -1
- package/galleria/Galleria.d.ts +196 -0
- package/galleria/Galleria.vue +5 -3
- package/galleria/GalleriaContent.vue +10 -6
- package/galleria/GalleriaItem.vue +12 -9
- package/galleria/GalleriaThumbnails.vue +46 -9
- package/galleria/galleria.cjs.js +106 -104
- package/galleria/galleria.cjs.min.js +1 -1
- package/galleria/galleria.esm.js +106 -105
- package/galleria/galleria.esm.min.js +1 -1
- package/galleria/galleria.js +107 -106
- package/galleria/galleria.min.js +1 -1
- package/image/Image.d.ts +170 -0
- package/image/Image.vue +49 -21
- package/image/image.cjs.js +94 -59
- package/image/image.cjs.min.js +1 -1
- package/image/image.esm.js +94 -60
- package/image/image.esm.min.js +1 -1
- package/image/image.js +95 -61
- package/image/image.min.js +1 -1
- package/inputmask/InputMask.d.ts +25 -0
- package/inputmask/InputMask.vue +3 -1
- package/inputmask/inputmask.cjs.js +9 -3
- package/inputmask/inputmask.cjs.min.js +1 -1
- package/inputmask/inputmask.esm.js +6 -4
- package/inputmask/inputmask.esm.min.js +1 -1
- package/inputmask/inputmask.js +10 -5
- package/inputmask/inputmask.min.js +1 -1
- package/inputnumber/InputNumber.d.ts +69 -0
- package/inputnumber/InputNumber.vue +13 -11
- package/inputnumber/inputnumber.cjs.js +19 -28
- package/inputnumber/inputnumber.cjs.min.js +1 -1
- package/inputnumber/inputnumber.esm.js +19 -29
- package/inputnumber/inputnumber.esm.min.js +1 -1
- package/inputnumber/inputnumber.js +20 -30
- package/inputnumber/inputnumber.min.js +1 -1
- package/inputswitch/InputSwitch.d.ts +51 -0
- package/inputswitch/InputSwitch.vue +7 -4
- package/inputswitch/inputswitch.cjs.js +15 -11
- package/inputswitch/inputswitch.cjs.min.js +1 -1
- package/inputswitch/inputswitch.esm.js +12 -12
- package/inputswitch/inputswitch.esm.min.js +1 -1
- package/inputswitch/inputswitch.js +16 -13
- package/inputswitch/inputswitch.min.js +1 -1
- package/inputtext/InputText.d.ts +25 -0
- package/inputtext/InputText.vue +4 -1
- package/inputtext/inputtext.cjs.js +9 -3
- package/inputtext/inputtext.cjs.min.js +1 -1
- package/inputtext/inputtext.esm.js +6 -4
- package/inputtext/inputtext.esm.min.js +1 -1
- package/inputtext/inputtext.js +10 -5
- package/inputtext/inputtext.min.js +1 -1
- package/knob/Knob.d.ts +78 -0
- package/knob/Knob.vue +8 -4
- package/knob/knob.cjs.js +17 -13
- package/knob/knob.cjs.min.js +1 -1
- package/knob/knob.esm.js +14 -14
- package/knob/knob.esm.min.js +1 -1
- package/knob/knob.js +18 -15
- package/knob/knob.min.js +1 -1
- package/listbox/Listbox.d.ts +137 -1
- package/listbox/Listbox.vue +28 -15
- package/listbox/listbox.cjs.js +83 -78
- package/listbox/listbox.cjs.min.js +1 -1
- package/listbox/listbox.esm.js +83 -79
- package/listbox/listbox.esm.min.js +1 -1
- package/listbox/listbox.js +84 -80
- package/listbox/listbox.min.js +1 -1
- package/megamenu/MegaMenu.d.ts +5 -5
- package/menu/Menu.d.ts +4 -4
- package/menubar/Menubar.d.ts +1 -1
- package/multiselect/MultiSelect.d.ts +223 -1
- package/multiselect/MultiSelect.vue +72 -41
- package/multiselect/multiselect.cjs.js +156 -151
- package/multiselect/multiselect.cjs.min.js +1 -1
- package/multiselect/multiselect.esm.js +156 -152
- package/multiselect/multiselect.esm.min.js +1 -1
- package/multiselect/multiselect.js +157 -153
- package/multiselect/multiselect.min.js +1 -1
- package/orderlist/OrderList.d.ts +94 -0
- package/orderlist/OrderList.vue +38 -18
- package/orderlist/orderlist.cjs.js +50 -36
- package/orderlist/orderlist.cjs.min.js +1 -1
- package/orderlist/orderlist.esm.js +50 -37
- package/orderlist/orderlist.esm.min.js +1 -1
- package/orderlist/orderlist.js +51 -38
- package/orderlist/orderlist.min.js +1 -1
- package/organizationchart/OrganizationChart.d.ts +129 -0
- package/organizationchart/OrganizationChart.vue +14 -2
- package/organizationchart/OrganizationChartNode.vue +37 -16
- package/organizationchart/organizationchart.cjs.js +77 -61
- package/organizationchart/organizationchart.cjs.min.js +1 -1
- package/organizationchart/organizationchart.esm.js +77 -62
- package/organizationchart/organizationchart.esm.min.js +1 -1
- package/organizationchart/organizationchart.js +78 -63
- package/organizationchart/organizationchart.min.js +1 -1
- package/package.json +1 -1
- package/paginator/CurrentPageReport.vue +5 -1
- package/paginator/FirstPageLink.vue +13 -2
- package/paginator/JumpToPageDropdown.vue +3 -1
- package/paginator/JumpToPageInput.vue +3 -1
- package/paginator/LastPageLink.vue +13 -2
- package/paginator/NextPageLink.vue +13 -2
- package/paginator/PageLinks.vue +12 -2
- package/paginator/Paginator.d.ts +133 -0
- package/paginator/Paginator.vue +23 -12
- package/paginator/PrevPageLink.vue +13 -2
- package/paginator/RowsPerPageDropdown.vue +3 -1
- package/paginator/paginator.cjs.js +135 -76
- package/paginator/paginator.cjs.min.js +1 -1
- package/paginator/paginator.esm.js +135 -77
- package/paginator/paginator.esm.min.js +1 -1
- package/paginator/paginator.js +136 -78
- package/paginator/paginator.min.js +1 -1
- package/panelmenu/PanelMenu.d.ts +4 -8
- package/password/Password.d.ts +104 -0
- package/password/Password.vue +11 -9
- package/password/password.cjs.js +26 -28
- package/password/password.cjs.min.js +1 -1
- package/password/password.esm.js +26 -29
- package/password/password.esm.min.js +1 -1
- package/password/password.js +27 -30
- package/password/password.min.js +1 -1
- package/picklist/PickList.d.ts +160 -0
- package/picklist/PickList.vue +46 -34
- package/picklist/picklist.cjs.js +111 -85
- package/picklist/picklist.cjs.min.js +1 -1
- package/picklist/picklist.esm.js +111 -86
- package/picklist/picklist.esm.min.js +1 -1
- package/picklist/picklist.js +112 -87
- package/picklist/picklist.min.js +1 -1
- package/radiobutton/RadioButton.d.ts +55 -0
- package/radiobutton/RadioButton.vue +7 -5
- package/radiobutton/radiobutton.cjs.js +19 -16
- package/radiobutton/radiobutton.cjs.min.js +1 -1
- package/radiobutton/radiobutton.esm.js +16 -17
- package/radiobutton/radiobutton.esm.min.js +1 -1
- package/radiobutton/radiobutton.js +20 -18
- package/radiobutton/radiobutton.min.js +1 -1
- package/rating/Rating.d.ts +96 -0
- package/rating/Rating.vue +32 -9
- package/rating/rating.cjs.js +41 -34
- package/rating/rating.cjs.min.js +1 -1
- package/rating/rating.esm.js +41 -35
- package/rating/rating.esm.min.js +1 -1
- package/rating/rating.js +42 -36
- package/rating/rating.min.js +1 -1
- package/row/Row.d.ts +29 -0
- package/row/Row.vue +3 -0
- package/row/row.cjs.js +7 -0
- package/row/row.cjs.min.js +1 -1
- package/row/row.esm.js +3 -0
- package/row/row.esm.min.js +1 -1
- package/row/row.js +7 -2
- package/row/row.min.js +1 -1
- package/selectbutton/SelectButton.d.ts +68 -0
- package/selectbutton/SelectButton.vue +13 -2
- package/selectbutton/selectbutton.cjs.js +20 -10
- package/selectbutton/selectbutton.cjs.min.js +1 -1
- package/selectbutton/selectbutton.esm.js +20 -11
- package/selectbutton/selectbutton.esm.min.js +1 -1
- package/selectbutton/selectbutton.js +21 -12
- package/selectbutton/selectbutton.min.js +1 -1
- package/slider/Slider.d.ts +48 -0
- package/slider/Slider.vue +7 -2
- package/slider/slider.cjs.js +22 -16
- package/slider/slider.cjs.min.js +1 -1
- package/slider/slider.esm.js +19 -17
- package/slider/slider.esm.min.js +1 -1
- package/slider/slider.js +23 -18
- package/slider/slider.min.js +1 -1
- package/splitbutton/SplitButton.d.ts +0 -4
- package/splitbutton/SplitButton.vue +2 -2
- package/splitbutton/splitbutton.cjs.js +7 -6
- package/splitbutton/splitbutton.cjs.min.js +1 -1
- package/splitbutton/splitbutton.esm.js +7 -6
- package/splitbutton/splitbutton.esm.min.js +1 -1
- package/splitbutton/splitbutton.js +7 -6
- package/splitbutton/splitbutton.min.js +1 -1
- package/splitter/Splitter.d.ts +3 -3
- package/textarea/Textarea.d.ts +32 -0
- package/textarea/Textarea.vue +4 -1
- package/textarea/textarea.cjs.js +9 -3
- package/textarea/textarea.cjs.min.js +1 -1
- package/textarea/textarea.esm.js +6 -4
- package/textarea/textarea.esm.min.js +1 -1
- package/textarea/textarea.js +10 -5
- package/textarea/textarea.min.js +1 -1
- package/timeline/Timeline.d.ts +49 -0
- package/timeline/Timeline.vue +9 -7
- package/timeline/timeline.cjs.js +19 -21
- package/timeline/timeline.cjs.min.js +1 -1
- package/timeline/timeline.esm.js +16 -22
- package/timeline/timeline.esm.min.js +1 -1
- package/timeline/timeline.js +20 -23
- package/timeline/timeline.min.js +1 -1
- package/toast/Toast.d.ts +4 -0
- package/toast/Toast.vue +1 -1
- package/toast/toast.cjs.js +3 -3
- package/toast/toast.cjs.min.js +1 -1
- package/toast/toast.esm.js +3 -3
- package/toast/toast.esm.min.js +1 -1
- package/toast/toast.js +3 -3
- package/toast/toast.min.js +1 -1
- package/togglebutton/ToggleButton.d.ts +59 -0
- package/togglebutton/ToggleButton.vue +7 -5
- package/togglebutton/togglebutton.cjs.js +15 -14
- package/togglebutton/togglebutton.cjs.min.js +1 -1
- package/togglebutton/togglebutton.esm.js +15 -15
- package/togglebutton/togglebutton.esm.min.js +1 -1
- package/togglebutton/togglebutton.js +16 -16
- package/togglebutton/togglebutton.min.js +1 -1
- package/tooltip/Tooltip.d.ts +10 -0
- package/tooltip/tooltip.cjs.js +51 -9
- package/tooltip/tooltip.cjs.min.js +1 -1
- package/tooltip/tooltip.esm.js +52 -10
- package/tooltip/tooltip.esm.min.js +1 -1
- package/tooltip/tooltip.js +51 -9
- package/tooltip/tooltip.min.js +1 -1
- package/tree/Tree.d.ts +137 -0
- package/tree/Tree.vue +12 -9
- package/tree/TreeNode.vue +23 -10
- package/tree/tree.cjs.js +85 -79
- package/tree/tree.cjs.min.js +1 -1
- package/tree/tree.esm.js +85 -80
- package/tree/tree.esm.min.js +1 -1
- package/tree/tree.js +86 -81
- package/tree/tree.min.js +1 -1
- package/treeselect/TreeSelect.d.ts +103 -1
- package/treeselect/TreeSelect.vue +15 -12
- package/treeselect/treeselect.cjs.js +37 -39
- package/treeselect/treeselect.cjs.min.js +1 -1
- package/treeselect/treeselect.esm.js +37 -40
- package/treeselect/treeselect.esm.min.js +1 -1
- package/treeselect/treeselect.js +38 -41
- package/treeselect/treeselect.min.js +1 -1
- package/treetable/BodyCell.vue +38 -10
- package/treetable/FooterCell.vue +15 -1
- package/treetable/HeaderCell.vue +28 -5
- package/treetable/TreeTable.d.ts +162 -0
- package/treetable/TreeTable.vue +25 -19
- package/treetable/TreeTableRow.vue +5 -0
- package/treetable/treetable.cjs.js +205 -158
- package/treetable/treetable.cjs.min.js +1 -1
- package/treetable/treetable.esm.js +205 -159
- package/treetable/treetable.esm.min.js +1 -1
- package/treetable/treetable.js +206 -160
- package/treetable/treetable.min.js +1 -1
- package/tristatecheckbox/TriStateCheckbox.d.ts +93 -0
- package/tristatecheckbox/TriStateCheckbox.vue +19 -8
- package/tristatecheckbox/tristatecheckbox.cjs.js +31 -22
- package/tristatecheckbox/tristatecheckbox.cjs.min.js +1 -1
- package/tristatecheckbox/tristatecheckbox.esm.js +31 -23
- package/tristatecheckbox/tristatecheckbox.esm.min.js +1 -1
- package/tristatecheckbox/tristatecheckbox.js +32 -24
- package/tristatecheckbox/tristatecheckbox.min.js +1 -1
- package/ts-helpers.d.ts +3 -1
- package/vetur-attributes.json +180 -0
- package/vetur-tags.json +94 -39
- package/virtualscroller/VirtualScroller.d.ts +97 -0
- package/virtualscroller/VirtualScroller.vue +7 -5
- package/virtualscroller/virtualscroller.cjs.js +22 -19
- package/virtualscroller/virtualscroller.cjs.min.js +1 -1
- package/virtualscroller/virtualscroller.esm.js +22 -20
- package/virtualscroller/virtualscroller.esm.min.js +1 -1
- package/virtualscroller/virtualscroller.js +23 -21
- package/virtualscroller/virtualscroller.min.js +1 -1
- package/web-types.json +467 -3
- package/datatable/TableLoadingBody.vue +0 -25
|
@@ -1 +1 @@
|
|
|
1
|
-
this.primevue=this.primevue||{},this.primevue.orderlist=function(e,t,i,n,o,l,s,r){"use strict";function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var a=d(e),c=d(t),h=d(i),u=d(n),p=d(o),m=d(l),f={name:"OrderList",emits:["update:modelValue","reorder","update:selection","selection-change","focus","blur"],props:{modelValue:{type:Array,default:null},selection:{type:Array,default:null},dataKey:{type:String,default:null},listStyle:{type:null,default:null},metaKeySelection:{type:Boolean,default:!0},responsive:{type:Boolean,default:!0},breakpoint:{type:String,default:"960px"},stripedRows:{type:Boolean,default:!1},tabindex:{type:Number,default:0},listProps:{type:null,default:null},moveUpButtonProps:{type:null,default:null},moveTopButtonProps:{type:null,default:null},moveDownButtonProps:{type:null,default:null},moveBottomButtonProps:{type:null,default:null},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},itemTouched:!1,reorderDirection:null,styleElement:null,list:null,data(){return{id:this.$attrs.id,d_selection:this.selection,focused:!1,focusedOptionIndex:-1}},watch:{"$attrs.id":function(e){this.id=e||s.UniqueComponentId()}},beforeUnmount(){this.destroyStyle()},updated(){this.reorderDirection&&(this.updateListScroll(),this.reorderDirection=null)},mounted(){this.id=this.id||s.UniqueComponentId(),this.responsive&&this.createStyle()},methods:{getItemKey(e,t){return this.dataKey?s.ObjectUtils.resolveFieldData(e,this.dataKey):t},isSelected(e){return-1!=s.ObjectUtils.findIndexInList(e,this.d_selection)},onListFocus(e){const t=s.DomHandler.findSingle(this.list,"li.p-orderlist-item.p-highlight"),i=s.ObjectUtils.findIndexInList(t,this.list.children);this.focused=!0;const n=-1!==this.focusedOptionIndex?this.focusedOptionIndex:t?i:-1;this.changeFocusedOptionIndex(n),this.$emit("focus",e)},onListBlur(e){this.focused=!1,this.focusedOptionIndex=-1,this.$emit("blur",e)},onListKeyDown(e){switch(e.code){case"ArrowDown":this.onArrowDownKey(e);break;case"ArrowUp":this.onArrowUpKey(e);break;case"Home":this.onHomeKey(e);break;case"End":this.onEndKey(e);break;case"Enter":this.onEnterKey(e);break;case"Space":this.onSpaceKey(e);break;case"KeyA":e.ctrlKey&&(this.d_selection=[...this.modelValue],this.$emit("update:selection",this.d_selection))}},onOptionMouseDown(e){this.focused=!0,this.focusedOptionIndex=e},onArrowDownKey(e){const t=this.findNextOptionIndex(this.focusedOptionIndex);this.changeFocusedOptionIndex(t),e.shiftKey&&this.onEnterKey(e),e.preventDefault()},onArrowUpKey(e){const t=this.findPrevOptionIndex(this.focusedOptionIndex);this.changeFocusedOptionIndex(t),e.shiftKey&&this.onEnterKey(e),e.preventDefault()},onHomeKey(e){if(e.ctrlKey&&e.shiftKey){const e=s.DomHandler.find(this.list,"li.p-orderlist-item"),t=s.DomHandler.findSingle(this.list,`li.p-orderlist-item[id=${this.focusedOptionIndex}]`),i=[...e].findIndex((e=>e===t));this.d_selection=[...this.modelValue].slice(0,i+1),this.$emit("update:selection",this.d_selection)}else this.changeFocusedOptionIndex(0);e.preventDefault()},onEndKey(e){if(e.ctrlKey&&e.shiftKey){const e=s.DomHandler.find(this.list,"li.p-orderlist-item"),t=s.DomHandler.findSingle(this.list,`li.p-orderlist-item[id=${this.focusedOptionIndex}]`),i=[...e].findIndex((e=>e===t));this.d_selection=[...this.modelValue].slice(i,e.length),this.$emit("update:selection",this.d_selection)}else this.changeFocusedOptionIndex(s.DomHandler.find(this.list,"li.p-orderlist-item").length-1);e.preventDefault()},onEnterKey(e){const t=s.DomHandler.find(this.list,"li.p-orderlist-item"),i=s.DomHandler.findSingle(this.list,`li.p-orderlist-item[id=${this.focusedOptionIndex}]`),n=[...t].findIndex((e=>e===i));this.onItemClick(e,this.modelValue[n],n),e.preventDefault()},onSpaceKey(e){if(e.shiftKey){const e=s.DomHandler.find(this.list,"li.p-orderlist-item"),t=s.ObjectUtils.findIndexInList(this.d_selection[0],[...this.modelValue]),i=s.DomHandler.findSingle(this.list,`li.p-orderlist-item[id=${this.focusedOptionIndex}]`),n=[...e].findIndex((e=>e===i));this.d_selection=[...this.modelValue].slice(Math.min(t,n),Math.max(t,n)+1),this.$emit("update:selection",this.d_selection)}else this.onEnterKey(e)},findNextOptionIndex(e){const t=[...s.DomHandler.find(this.list,"li.p-orderlist-item")].findIndex((t=>t.id===e));return t>-1?t+1:0},findPrevOptionIndex(e){const t=[...s.DomHandler.find(this.list,"li.p-orderlist-item")].findIndex((t=>t.id===e));return t>-1?t-1:0},changeFocusedOptionIndex(e){const t=s.DomHandler.find(this.list,"li.p-orderlist-item");let i=e>=t.length?t.length-1:e<0?0:e;this.focusedOptionIndex=t[i].getAttribute("id"),this.scrollInView(t[i].getAttribute("id"))},scrollInView(e){const t=s.DomHandler.findSingle(this.list,`li[id="${e}"]`);t&&t.scrollIntoView&&t.scrollIntoView({block:"nearest",inline:"start"})},moveUp(e){if(this.d_selection){let t=[...this.modelValue];for(let e=0;e<this.d_selection.length;e++){let i=this.d_selection[e],n=s.ObjectUtils.findIndexInList(i,t);if(0===n)break;{let e=t[n],i=t[n-1];t[n-1]=e,t[n]=i}}this.reorderDirection="up",this.$emit("update:modelValue",t),this.$emit("reorder",{originalEvent:e,value:t,direction:this.reorderDirection})}},moveTop(e){if(this.d_selection){let t=[...this.modelValue];for(let e=0;e<this.d_selection.length;e++){let i=this.d_selection[e],n=s.ObjectUtils.findIndexInList(i,t);if(0===n)break;{let e=t.splice(n,1)[0];t.unshift(e)}}this.reorderDirection="top",this.$emit("update:modelValue",t),this.$emit("reorder",{originalEvent:e,value:t,direction:this.reorderDirection})}},moveDown(e){if(this.d_selection){let t=[...this.modelValue];for(let e=this.d_selection.length-1;e>=0;e--){let i=this.d_selection[e],n=s.ObjectUtils.findIndexInList(i,t);if(n===t.length-1)break;{let e=t[n],i=t[n+1];t[n+1]=e,t[n]=i}}this.reorderDirection="down",this.$emit("update:modelValue",t),this.$emit("reorder",{originalEvent:e,value:t,direction:this.reorderDirection})}},moveBottom(e){if(this.d_selection){let t=[...this.modelValue];for(let e=this.d_selection.length-1;e>=0;e--){let i=this.d_selection[e],n=s.ObjectUtils.findIndexInList(i,t);if(n===t.length-1)break;{let e=t.splice(n,1)[0];t.push(e)}}this.reorderDirection="bottom",this.$emit("update:modelValue",t),this.$emit("reorder",{originalEvent:e,value:t,direction:this.reorderDirection})}},onItemClick(e,t,i){this.itemTouched=!1;const n=s.ObjectUtils.findIndexInList(t,this.d_selection),o=-1!=n,l=!this.itemTouched&&this.metaKeySelection,r=s.DomHandler.find(this.list,".p-orderlist-item")[i].getAttribute("id");if(this.focusedOptionIndex=r,l){const l=e.metaKey||e.ctrlKey;o&&l?this.d_selection=this.d_selection.filter(((e,t)=>t!==n)):(this.d_selection=l&&this.d_selection?[...this.d_selection]:[],s.ObjectUtils.insertIntoOrderedArray(t,i,this.d_selection,this.modelValue))}else o?this.d_selection=this.d_selection.filter(((e,t)=>t!==n)):(this.d_selection=this.d_selection?[...this.d_selection]:[],s.ObjectUtils.insertIntoOrderedArray(t,i,this.d_selection,this.modelValue));this.$emit("update:selection",this.d_selection),this.$emit("selection-change",{originalEvent:e,value:this.d_selection})},onItemTouchEnd(){this.itemTouched=!0},findNextItem(e){let t=e.nextElementSibling;return t?s.DomHandler.hasClass(t,"p-orderlist-item")?t:this.findNextItem(t):null},findPrevItem(e){let t=e.previousElementSibling;return t?s.DomHandler.hasClass(t,"p-orderlist-item")?t:this.findPrevItem(t):null},findFirstItem(){return s.DomHandler.findSingle(this.list,".p-orderlist-item")},findLastItem(){const e=s.DomHandler.find(this.list,".p-orderlist-item");return e[e.length-1]},itemClass(e,t){return["p-orderlist-item",{"p-highlight":this.isSelected(e),"p-focus":t===this.focusedOptionId}]},updateListScroll(){const e=s.DomHandler.find(this.list,".p-orderlist-item.p-highlight");if(e&&e.length)switch(this.reorderDirection){case"up":s.DomHandler.scrollInView(this.list,e[0]);break;case"top":this.list.scrollTop=0;break;case"down":s.DomHandler.scrollInView(this.list,e[e.length-1]);break;case"bottom":this.list.scrollTop=this.list.scrollHeight}},createStyle(){if(!this.styleElement){this.$el.setAttribute(this.attributeSelector,""),this.styleElement=document.createElement("style"),this.styleElement.type="text/css",document.head.appendChild(this.styleElement);let e=`\n@media screen and (max-width: ${this.breakpoint}) {\n .p-orderlist[${this.attributeSelector}] {\n flex-direction: column;\n }\n\n .p-orderlist[${this.attributeSelector}] .p-orderlist-controls {\n padding: var(--content-padding);\n flex-direction: row;\n }\n\n .p-orderlist[${this.attributeSelector}] .p-orderlist-controls .p-button {\n margin-right: var(--inline-spacing);\n margin-bottom: 0;\n }\n\n .p-orderlist[${this.attributeSelector}] .p-orderlist-controls .p-button:last-child {\n margin-right: 0;\n }\n}\n`;this.styleElement.innerHTML=e}},destroyStyle(){this.styleElement&&(document.head.removeChild(this.styleElement),this.styleElement=null)},moveDisabled(){if(!this.d_selection||!this.d_selection.length)return!0},listRef(e){this.list=e?e.$el:void 0}},computed:{containerClass(){return["p-orderlist p-component",{"p-orderlist-striped":this.stripedRows}]},attributeSelector:()=>s.UniqueComponentId(),focusedOptionId(){return-1!==this.focusedOptionIndex?this.focusedOptionIndex:null},moveUpAriaLabel(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.moveUp:void 0},moveTopAriaLabel(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.moveTop:void 0},moveDownAriaLabel(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.moveDown:void 0},moveBottomAriaLabel(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.moveBottom:void 0}},components:{OLButton:a.default,AngleUpIcon:p.default,AngleDownIcon:u.default,AngleDoubleUpIcon:h.default,AngleDoubleDownIcon:c.default},directives:{ripple:m.default}};const b={class:"p-orderlist-controls"},v={class:"p-orderlist-list-container"},y={key:0,class:"p-orderlist-header"},g=["id","onClick","aria-selected","onMousedown"];return function(e,t){void 0===t&&(t={});var i=t.insertAt;if(e&&"undefined"!=typeof document){var n=document.head||document.getElementsByTagName("head")[0],o=document.createElement("style");o.type="text/css","top"===i&&n.firstChild?n.insertBefore(o,n.firstChild):n.appendChild(o),o.styleSheet?o.styleSheet.cssText=e:o.appendChild(document.createTextNode(e))}}("\n.p-orderlist {\n display: flex;\n}\n.p-orderlist-controls {\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n.p-orderlist-list-container {\n flex: 1 1 auto;\n}\n.p-orderlist-list {\n list-style-type: none;\n margin: 0;\n padding: 0;\n overflow: auto;\n min-height: 12rem;\n max-height: 24rem;\n}\n.p-orderlist-item {\n cursor: pointer;\n overflow: hidden;\n position: relative;\n}\n.p-orderlist.p-state-disabled .p-orderlist-item,\n.p-orderlist.p-state-disabled .p-button {\n cursor: default;\n}\n.p-orderlist.p-state-disabled .p-orderlist-list {\n overflow: hidden;\n}\n"),f.render=function(e,t,i,n,o,l){const s=r.resolveComponent("AngleUpIcon"),d=r.resolveComponent("OLButton"),a=r.resolveComponent("AngleDoubleUpIcon"),c=r.resolveComponent("AngleDownIcon"),h=r.resolveComponent("AngleDoubleDownIcon"),u=r.resolveDirective("ripple");return r.openBlock(),r.createElementBlock("div",{class:r.normalizeClass(l.containerClass)},[r.createElementVNode("div",b,[r.renderSlot(e.$slots,"controlsstart"),r.createVNode(d,r.mergeProps({type:"button",onClick:l.moveUp,"aria-label":l.moveUpAriaLabel,disabled:l.moveDisabled()},i.moveUpButtonProps),{icon:r.withCtx((()=>[r.renderSlot(e.$slots,"moveupicon",{},(()=>[r.createVNode(s)]))])),_:3},16,["onClick","aria-label","disabled"]),r.createVNode(d,r.mergeProps({type:"button",onClick:l.moveTop,"aria-label":l.moveTopAriaLabel,disabled:l.moveDisabled()},i.moveTopButtonProps),{icon:r.withCtx((()=>[r.renderSlot(e.$slots,"movetopicon",{},(()=>[r.createVNode(a)]))])),_:3},16,["onClick","aria-label","disabled"]),r.createVNode(d,r.mergeProps({type:"button",onClick:l.moveDown,"aria-label":l.moveDownAriaLabel,disabled:l.moveDisabled()},i.moveDownButtonProps),{icon:r.withCtx((()=>[r.renderSlot(e.$slots,"movedownicon",{},(()=>[r.createVNode(c)]))])),_:3},16,["onClick","aria-label","disabled"]),r.createVNode(d,r.mergeProps({type:"button",onClick:l.moveBottom,"aria-label":l.moveBottomAriaLabel,disabled:l.moveDisabled()},i.moveBottomButtonProps),{icon:r.withCtx((()=>[r.renderSlot(e.$slots,"movebottomicon",{},(()=>[r.createVNode(h)]))])),_:3},16,["onClick","aria-label","disabled"]),r.renderSlot(e.$slots,"controlsend")]),r.createElementVNode("div",v,[e.$slots.header?(r.openBlock(),r.createElementBlock("div",y,[r.renderSlot(e.$slots,"header")])):r.createCommentVNode("",!0),r.createVNode(r.TransitionGroup,r.mergeProps({ref:l.listRef,id:o.id+"_list",name:"p-orderlist-flip",tag:"ul",class:"p-orderlist-list",style:i.listStyle,role:"listbox","aria-multiselectable":"true",tabindex:i.tabindex,"aria-activedescendant":o.focused?l.focusedOptionId:void 0,"aria-label":e.ariaLabel,"aria-labelledby":e.ariaLabelledby,onFocus:l.onListFocus,onBlur:l.onListBlur,onKeydown:l.onListKeyDown},i.listProps),{default:r.withCtx((()=>[(r.openBlock(!0),r.createElementBlock(r.Fragment,null,r.renderList(i.modelValue,((i,n)=>r.withDirectives((r.openBlock(),r.createElementBlock("li",{key:l.getItemKey(i,n),id:o.id+"_"+n,role:"option",class:r.normalizeClass(l.itemClass(i,`${o.id}_${n}`)),onClick:e=>l.onItemClick(e,i,n),onTouchend:t[0]||(t[0]=(...e)=>l.onItemTouchEnd&&l.onItemTouchEnd(...e)),"aria-selected":l.isSelected(i),onMousedown:e=>l.onOptionMouseDown(n)},[r.renderSlot(e.$slots,"item",{item:i,index:n})],42,g)),[[u]]))),128))])),_:3},16,["id","style","tabindex","aria-activedescendant","aria-label","aria-labelledby","onFocus","onBlur","onKeydown"])])],2)},f}(primevue.button,primevue.icons.angledoubledown,primevue.icons.angledoubleup,primevue.icons.angledown,primevue.icons.angleup,primevue.ripple,primevue.utils,Vue);
|
|
1
|
+
this.primevue=this.primevue||{},this.primevue.orderlist=function(e,t,i,o,n,l,s,r,d){"use strict";function a(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=a(e),p=a(t),u=a(i),m=a(o),h=a(n),f=a(l),v=a(s),b={name:"OrderList",extends:c.default,emits:["update:modelValue","reorder","update:selection","selection-change","focus","blur"],props:{modelValue:{type:Array,default:null},selection:{type:Array,default:null},dataKey:{type:String,default:null},listStyle:{type:null,default:null},metaKeySelection:{type:Boolean,default:!0},responsive:{type:Boolean,default:!0},breakpoint:{type:String,default:"960px"},stripedRows:{type:Boolean,default:!1},tabindex:{type:Number,default:0},listProps:{type:null,default:null},moveUpButtonProps:{type:null,default:null},moveTopButtonProps:{type:null,default:null},moveDownButtonProps:{type:null,default:null},moveBottomButtonProps:{type:null,default:null},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},itemTouched:!1,reorderDirection:null,styleElement:null,list:null,data(){return{id:this.$attrs.id,d_selection:this.selection,focused:!1,focusedOptionIndex:-1}},watch:{"$attrs.id":function(e){this.id=e||r.UniqueComponentId()}},beforeUnmount(){this.destroyStyle()},updated(){this.reorderDirection&&(this.updateListScroll(),this.reorderDirection=null)},mounted(){this.id=this.id||r.UniqueComponentId(),this.responsive&&this.createStyle()},methods:{getItemKey(e,t){return this.dataKey?r.ObjectUtils.resolveFieldData(e,this.dataKey):t},getPTOptions(e,t){return this.ptm(t,{context:{active:this.isSelected(e),focused:this.id===this.focusedOptionId}})},isSelected(e){return-1!=r.ObjectUtils.findIndexInList(e,this.d_selection)},onListFocus(e){const t=r.DomHandler.findSingle(this.list,"li.p-orderlist-item.p-highlight"),i=r.ObjectUtils.findIndexInList(t,this.list.children);this.focused=!0;const o=-1!==this.focusedOptionIndex?this.focusedOptionIndex:t?i:-1;this.changeFocusedOptionIndex(o),this.$emit("focus",e)},onListBlur(e){this.focused=!1,this.focusedOptionIndex=-1,this.$emit("blur",e)},onListKeyDown(e){switch(e.code){case"ArrowDown":this.onArrowDownKey(e);break;case"ArrowUp":this.onArrowUpKey(e);break;case"Home":this.onHomeKey(e);break;case"End":this.onEndKey(e);break;case"Enter":this.onEnterKey(e);break;case"Space":this.onSpaceKey(e);break;case"KeyA":e.ctrlKey&&(this.d_selection=[...this.modelValue],this.$emit("update:selection",this.d_selection))}},onOptionMouseDown(e){this.focused=!0,this.focusedOptionIndex=e},onArrowDownKey(e){const t=this.findNextOptionIndex(this.focusedOptionIndex);this.changeFocusedOptionIndex(t),e.shiftKey&&this.onEnterKey(e),e.preventDefault()},onArrowUpKey(e){const t=this.findPrevOptionIndex(this.focusedOptionIndex);this.changeFocusedOptionIndex(t),e.shiftKey&&this.onEnterKey(e),e.preventDefault()},onHomeKey(e){if(e.ctrlKey&&e.shiftKey){const e=r.DomHandler.find(this.list,"li.p-orderlist-item"),t=r.DomHandler.findSingle(this.list,`li.p-orderlist-item[id=${this.focusedOptionIndex}]`),i=[...e].findIndex((e=>e===t));this.d_selection=[...this.modelValue].slice(0,i+1),this.$emit("update:selection",this.d_selection)}else this.changeFocusedOptionIndex(0);e.preventDefault()},onEndKey(e){if(e.ctrlKey&&e.shiftKey){const e=r.DomHandler.find(this.list,"li.p-orderlist-item"),t=r.DomHandler.findSingle(this.list,`li.p-orderlist-item[id=${this.focusedOptionIndex}]`),i=[...e].findIndex((e=>e===t));this.d_selection=[...this.modelValue].slice(i,e.length),this.$emit("update:selection",this.d_selection)}else this.changeFocusedOptionIndex(r.DomHandler.find(this.list,"li.p-orderlist-item").length-1);e.preventDefault()},onEnterKey(e){const t=r.DomHandler.find(this.list,"li.p-orderlist-item"),i=r.DomHandler.findSingle(this.list,`li.p-orderlist-item[id=${this.focusedOptionIndex}]`),o=[...t].findIndex((e=>e===i));this.onItemClick(e,this.modelValue[o],o),e.preventDefault()},onSpaceKey(e){if(e.shiftKey){const e=r.DomHandler.find(this.list,"li.p-orderlist-item"),t=r.ObjectUtils.findIndexInList(this.d_selection[0],[...this.modelValue]),i=r.DomHandler.findSingle(this.list,`li.p-orderlist-item[id=${this.focusedOptionIndex}]`),o=[...e].findIndex((e=>e===i));this.d_selection=[...this.modelValue].slice(Math.min(t,o),Math.max(t,o)+1),this.$emit("update:selection",this.d_selection)}else this.onEnterKey(e)},findNextOptionIndex(e){const t=[...r.DomHandler.find(this.list,"li.p-orderlist-item")].findIndex((t=>t.id===e));return t>-1?t+1:0},findPrevOptionIndex(e){const t=[...r.DomHandler.find(this.list,"li.p-orderlist-item")].findIndex((t=>t.id===e));return t>-1?t-1:0},changeFocusedOptionIndex(e){const t=r.DomHandler.find(this.list,"li.p-orderlist-item");let i=e>=t.length?t.length-1:e<0?0:e;this.focusedOptionIndex=t[i]?t[i].getAttribute("id"):-1,this.scrollInView(this.focusedOptionIndex)},scrollInView(e){const t=r.DomHandler.findSingle(this.list,`li[id="${e}"]`);t&&t.scrollIntoView&&t.scrollIntoView({block:"nearest",inline:"start"})},moveUp(e){if(this.d_selection){let t=[...this.modelValue];for(let e=0;e<this.d_selection.length;e++){let i=this.d_selection[e],o=r.ObjectUtils.findIndexInList(i,t);if(0===o)break;{let e=t[o],i=t[o-1];t[o-1]=e,t[o]=i}}this.reorderDirection="up",this.$emit("update:modelValue",t),this.$emit("reorder",{originalEvent:e,value:t,direction:this.reorderDirection})}},moveTop(e){if(this.d_selection){let t=[...this.modelValue];for(let e=0;e<this.d_selection.length;e++){let i=this.d_selection[e],o=r.ObjectUtils.findIndexInList(i,t);if(0===o)break;{let e=t.splice(o,1)[0];t.unshift(e)}}this.reorderDirection="top",this.$emit("update:modelValue",t),this.$emit("reorder",{originalEvent:e,value:t,direction:this.reorderDirection})}},moveDown(e){if(this.d_selection){let t=[...this.modelValue];for(let e=this.d_selection.length-1;e>=0;e--){let i=this.d_selection[e],o=r.ObjectUtils.findIndexInList(i,t);if(o===t.length-1)break;{let e=t[o],i=t[o+1];t[o+1]=e,t[o]=i}}this.reorderDirection="down",this.$emit("update:modelValue",t),this.$emit("reorder",{originalEvent:e,value:t,direction:this.reorderDirection})}},moveBottom(e){if(this.d_selection){let t=[...this.modelValue];for(let e=this.d_selection.length-1;e>=0;e--){let i=this.d_selection[e],o=r.ObjectUtils.findIndexInList(i,t);if(o===t.length-1)break;{let e=t.splice(o,1)[0];t.push(e)}}this.reorderDirection="bottom",this.$emit("update:modelValue",t),this.$emit("reorder",{originalEvent:e,value:t,direction:this.reorderDirection})}},onItemClick(e,t,i){this.itemTouched=!1;const o=r.ObjectUtils.findIndexInList(t,this.d_selection),n=-1!=o,l=!this.itemTouched&&this.metaKeySelection,s=r.DomHandler.find(this.list,".p-orderlist-item")[i].getAttribute("id");if(this.focusedOptionIndex=s,l){const l=e.metaKey||e.ctrlKey;n&&l?this.d_selection=this.d_selection.filter(((e,t)=>t!==o)):(this.d_selection=l&&this.d_selection?[...this.d_selection]:[],r.ObjectUtils.insertIntoOrderedArray(t,i,this.d_selection,this.modelValue))}else n?this.d_selection=this.d_selection.filter(((e,t)=>t!==o)):(this.d_selection=this.d_selection?[...this.d_selection]:[],r.ObjectUtils.insertIntoOrderedArray(t,i,this.d_selection,this.modelValue));this.$emit("update:selection",this.d_selection),this.$emit("selection-change",{originalEvent:e,value:this.d_selection})},onItemTouchEnd(){this.itemTouched=!0},findNextItem(e){let t=e.nextElementSibling;return t?r.DomHandler.hasClass(t,"p-orderlist-item")?t:this.findNextItem(t):null},findPrevItem(e){let t=e.previousElementSibling;return t?r.DomHandler.hasClass(t,"p-orderlist-item")?t:this.findPrevItem(t):null},findFirstItem(){return r.DomHandler.findSingle(this.list,".p-orderlist-item")},findLastItem(){const e=r.DomHandler.find(this.list,".p-orderlist-item");return e[e.length-1]},itemClass(e,t){return["p-orderlist-item",{"p-highlight":this.isSelected(e),"p-focus":t===this.focusedOptionId}]},updateListScroll(){const e=r.DomHandler.find(this.list,".p-orderlist-item.p-highlight");if(e&&e.length)switch(this.reorderDirection){case"up":r.DomHandler.scrollInView(this.list,e[0]);break;case"top":this.list.scrollTop=0;break;case"down":r.DomHandler.scrollInView(this.list,e[e.length-1]);break;case"bottom":this.list.scrollTop=this.list.scrollHeight}},createStyle(){if(!this.styleElement){this.$el.setAttribute(this.attributeSelector,""),this.styleElement=document.createElement("style"),this.styleElement.type="text/css",document.head.appendChild(this.styleElement);let e=`\n@media screen and (max-width: ${this.breakpoint}) {\n .p-orderlist[${this.attributeSelector}] {\n flex-direction: column;\n }\n\n .p-orderlist[${this.attributeSelector}] .p-orderlist-controls {\n padding: var(--content-padding);\n flex-direction: row;\n }\n\n .p-orderlist[${this.attributeSelector}] .p-orderlist-controls .p-button {\n margin-right: var(--inline-spacing);\n margin-bottom: 0;\n }\n\n .p-orderlist[${this.attributeSelector}] .p-orderlist-controls .p-button:last-child {\n margin-right: 0;\n }\n}\n`;this.styleElement.innerHTML=e}},destroyStyle(){this.styleElement&&(document.head.removeChild(this.styleElement),this.styleElement=null)},moveDisabled(){if(!this.d_selection||!this.d_selection.length)return!0},listRef(e){this.list=e?e.$el:void 0}},computed:{containerClass(){return["p-orderlist p-component",{"p-orderlist-striped":this.stripedRows}]},attributeSelector:()=>r.UniqueComponentId(),focusedOptionId(){return-1!==this.focusedOptionIndex?this.focusedOptionIndex:null},moveUpAriaLabel(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.moveUp:void 0},moveTopAriaLabel(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.moveTop:void 0},moveDownAriaLabel(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.moveDown:void 0},moveBottomAriaLabel(){return this.$primevue.config.locale.aria?this.$primevue.config.locale.aria.moveBottom:void 0}},components:{OLButton:p.default,AngleUpIcon:f.default,AngleDownIcon:h.default,AngleDoubleUpIcon:m.default,AngleDoubleDownIcon:u.default},directives:{ripple:v.default}};const g=["id","onClick","aria-selected","onMousedown"];return function(e,t){void 0===t&&(t={});var i=t.insertAt;if(e&&"undefined"!=typeof document){var o=document.head||document.getElementsByTagName("head")[0],n=document.createElement("style");n.type="text/css","top"===i&&o.firstChild?o.insertBefore(n,o.firstChild):o.appendChild(n),n.styleSheet?n.styleSheet.cssText=e:n.appendChild(document.createTextNode(e))}}("\n.p-orderlist {\n display: flex;\n}\n.p-orderlist-controls {\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n.p-orderlist-list-container {\n flex: 1 1 auto;\n}\n.p-orderlist-list {\n list-style-type: none;\n margin: 0;\n padding: 0;\n overflow: auto;\n min-height: 12rem;\n max-height: 24rem;\n}\n.p-orderlist-item {\n cursor: pointer;\n overflow: hidden;\n position: relative;\n}\n.p-orderlist.p-state-disabled .p-orderlist-item,\n.p-orderlist.p-state-disabled .p-button {\n cursor: default;\n}\n.p-orderlist.p-state-disabled .p-orderlist-list {\n overflow: hidden;\n}\n"),b.render=function(e,t,i,o,n,l){const s=d.resolveComponent("AngleUpIcon"),r=d.resolveComponent("OLButton"),a=d.resolveComponent("AngleDoubleUpIcon"),c=d.resolveComponent("AngleDownIcon"),p=d.resolveComponent("AngleDoubleDownIcon"),u=d.resolveDirective("ripple");return d.openBlock(),d.createElementBlock("div",d.mergeProps({class:l.containerClass},e.ptm("root")),[d.createElementVNode("div",d.mergeProps({class:"p-orderlist-controls"},e.ptm("controls")),[d.renderSlot(e.$slots,"controlsstart"),d.createVNode(r,d.mergeProps({type:"button",onClick:l.moveUp,"aria-label":l.moveUpAriaLabel,disabled:l.moveDisabled()},i.moveUpButtonProps,{pt:e.ptm("moveUpButton")}),{icon:d.withCtx((()=>[d.renderSlot(e.$slots,"moveupicon",{},(()=>[d.createVNode(s,d.normalizeProps(d.guardReactiveProps(e.ptm("moveUpButton").icon)),null,16)]))])),_:3},16,["onClick","aria-label","disabled","pt"]),d.createVNode(r,d.mergeProps({type:"button",onClick:l.moveTop,"aria-label":l.moveTopAriaLabel,disabled:l.moveDisabled()},i.moveTopButtonProps,{pt:e.ptm("moveTopButton")}),{icon:d.withCtx((()=>[d.renderSlot(e.$slots,"movetopicon",{},(()=>[d.createVNode(a,d.normalizeProps(d.guardReactiveProps(e.ptm("moveTopButton").icon)),null,16)]))])),_:3},16,["onClick","aria-label","disabled","pt"]),d.createVNode(r,d.mergeProps({type:"button",onClick:l.moveDown,"aria-label":l.moveDownAriaLabel,disabled:l.moveDisabled()},i.moveDownButtonProps,{pt:e.ptm("moveDownButton")}),{icon:d.withCtx((()=>[d.renderSlot(e.$slots,"movedownicon",{},(()=>[d.createVNode(c,d.normalizeProps(d.guardReactiveProps(e.ptm("moveDownButton").icon)),null,16)]))])),_:3},16,["onClick","aria-label","disabled","pt"]),d.createVNode(r,d.mergeProps({type:"button",onClick:l.moveBottom,"aria-label":l.moveBottomAriaLabel,disabled:l.moveDisabled()},i.moveBottomButtonProps,{pt:e.ptm("moveBottomButton")}),{icon:d.withCtx((()=>[d.renderSlot(e.$slots,"movebottomicon",{},(()=>[d.createVNode(p,d.normalizeProps(d.guardReactiveProps(e.ptm("moveBottomButton").icon)),null,16)]))])),_:3},16,["onClick","aria-label","disabled","pt"]),d.renderSlot(e.$slots,"controlsend")],16),d.createElementVNode("div",d.mergeProps({class:"p-orderlist-list-container"},e.ptm("container")),[e.$slots.header?(d.openBlock(),d.createElementBlock("div",d.mergeProps({key:0,class:"p-orderlist-header"},e.ptm("header")),[d.renderSlot(e.$slots,"header")],16)):d.createCommentVNode("",!0),d.createVNode(d.TransitionGroup,d.mergeProps({ref:l.listRef,id:n.id+"_list",name:"p-orderlist-flip",tag:"ul",class:"p-orderlist-list",style:i.listStyle,role:"listbox","aria-multiselectable":"true",tabindex:i.tabindex,"aria-activedescendant":n.focused?l.focusedOptionId:void 0,"aria-label":e.ariaLabel,"aria-labelledby":e.ariaLabelledby,onFocus:l.onListFocus,onBlur:l.onListBlur,onKeydown:l.onListKeyDown},{...i.listProps,...e.ptm("list")}),{default:d.withCtx((()=>[(d.openBlock(!0),d.createElementBlock(d.Fragment,null,d.renderList(i.modelValue,((i,o)=>d.withDirectives((d.openBlock(),d.createElementBlock("li",d.mergeProps({key:l.getItemKey(i,o),id:n.id+"_"+o,role:"option",class:l.itemClass(i,`${n.id}_${o}`),onClick:e=>l.onItemClick(e,i,o),onTouchend:t[0]||(t[0]=(...e)=>l.onItemTouchEnd&&l.onItemTouchEnd(...e)),"aria-selected":l.isSelected(i),onMousedown:e=>l.onOptionMouseDown(o)},l.getPTOptions(i,"item")),[d.renderSlot(e.$slots,"item",{item:i,index:o})],16,g)),[[u]]))),128))])),_:3},16,["id","style","tabindex","aria-activedescendant","aria-label","aria-labelledby","onFocus","onBlur","onKeydown"])],16)],16)},b}(primevue.basecomponent,primevue.button,primevue.icons.angledoubledown,primevue.icons.angledoubleup,primevue.icons.angledown,primevue.icons.angleup,primevue.ripple,primevue.utils,Vue);
|
|
@@ -10,6 +10,17 @@
|
|
|
10
10
|
import { VNode } from 'vue';
|
|
11
11
|
import { ClassComponent, GlobalComponentConstructor } from '../ts-helpers';
|
|
12
12
|
|
|
13
|
+
export declare type OrganizationChartPassThroughOptionType = OrganizationChartPassThroughAttributes | ((options: OrganizationChartPassThroughMethodOptions) => OrganizationChartPassThroughAttributes) | null | undefined;
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Custom passthrough(pt) option method.
|
|
17
|
+
*/
|
|
18
|
+
export interface OrganizationChartPassThroughMethodOptions {
|
|
19
|
+
props: OrganizationChartProps;
|
|
20
|
+
state: OrganizationChartState;
|
|
21
|
+
context: OrganizationChartContext;
|
|
22
|
+
}
|
|
23
|
+
|
|
13
24
|
/**
|
|
14
25
|
* Defines valid properties in OrganizationChartNode.
|
|
15
26
|
*/
|
|
@@ -64,6 +75,119 @@ export interface OrganizationChartCollapsedKeys {
|
|
|
64
75
|
[key: string]: any;
|
|
65
76
|
}
|
|
66
77
|
|
|
78
|
+
/**
|
|
79
|
+
* Custom passthrough(pt) options.
|
|
80
|
+
* @see {@link OrganizationChartProps.pt}
|
|
81
|
+
*/
|
|
82
|
+
export interface OrganizationChartPassThroughOptions {
|
|
83
|
+
/**
|
|
84
|
+
* Uses to pass attributes to the root's DOM element.
|
|
85
|
+
*/
|
|
86
|
+
root?: OrganizationChartPassThroughOptionType;
|
|
87
|
+
/**
|
|
88
|
+
* Uses to pass attributes to the table's DOM element.
|
|
89
|
+
*/
|
|
90
|
+
table?: OrganizationChartPassThroughOptionType;
|
|
91
|
+
/**
|
|
92
|
+
* Uses to pass attributes to the body's DOM element.
|
|
93
|
+
*/
|
|
94
|
+
body?: OrganizationChartPassThroughOptionType;
|
|
95
|
+
/**
|
|
96
|
+
* Uses to pass attributes to the row' DOM element.
|
|
97
|
+
*/
|
|
98
|
+
row?: OrganizationChartPassThroughOptionType;
|
|
99
|
+
/**
|
|
100
|
+
* Uses to pass attributes to the cell's DOM element.
|
|
101
|
+
*/
|
|
102
|
+
cell?: OrganizationChartPassThroughOptionType;
|
|
103
|
+
/**
|
|
104
|
+
* Uses to pass attributes to the node's DOM element.
|
|
105
|
+
*/
|
|
106
|
+
node?: OrganizationChartPassThroughOptionType;
|
|
107
|
+
/**
|
|
108
|
+
* Uses to pass attributes to the nodeToggler's DOM element.
|
|
109
|
+
*/
|
|
110
|
+
nodeToggler?: OrganizationChartPassThroughOptionType;
|
|
111
|
+
/**
|
|
112
|
+
* Uses to pass attributes to the nodeTogglerIcon's DOM element.
|
|
113
|
+
*/
|
|
114
|
+
nodeTogglerIcon?: OrganizationChartPassThroughOptionType;
|
|
115
|
+
/**
|
|
116
|
+
* Uses to pass attributes to the lines's DOM element.
|
|
117
|
+
*/
|
|
118
|
+
lines?: OrganizationChartPassThroughOptionType;
|
|
119
|
+
/**
|
|
120
|
+
* Uses to pass attributes to the lineCell's DOM element.
|
|
121
|
+
*/
|
|
122
|
+
lineCell?: OrganizationChartPassThroughOptionType;
|
|
123
|
+
/**
|
|
124
|
+
* Uses to pass attributes to the lineDown's DOM element.
|
|
125
|
+
*/
|
|
126
|
+
lineDown?: OrganizationChartPassThroughOptionType;
|
|
127
|
+
/**
|
|
128
|
+
* Uses to pass attributes to the nodes's DOM element.
|
|
129
|
+
*/
|
|
130
|
+
nodes?: OrganizationChartPassThroughOptionType;
|
|
131
|
+
/**
|
|
132
|
+
* Uses to pass attributes to the nodeCell's DOM element.
|
|
133
|
+
*/
|
|
134
|
+
nodeCell?: OrganizationChartPassThroughOptionType;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
/**
|
|
138
|
+
* Custom passthrough attributes for each DOM elements
|
|
139
|
+
*/
|
|
140
|
+
export interface OrganizationChartPassThroughAttributes {
|
|
141
|
+
[key: string]: any;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
/**
|
|
145
|
+
* Defines current inline state in OrganizationChart component.
|
|
146
|
+
*/
|
|
147
|
+
export interface OrganizationChartState {
|
|
148
|
+
/**
|
|
149
|
+
* Current collapsed keys' state.
|
|
150
|
+
* @defaultValue false
|
|
151
|
+
*/
|
|
152
|
+
d_collapsedKeys: OrganizationChartCollapsedKeys;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
/**
|
|
156
|
+
* Defines current options in OrganizationChart component.
|
|
157
|
+
*/
|
|
158
|
+
export interface OrganizationChartContext {
|
|
159
|
+
/**
|
|
160
|
+
* Current focus expanded of the node as a boolean.
|
|
161
|
+
* @defaultValue false
|
|
162
|
+
*/
|
|
163
|
+
expanded: boolean;
|
|
164
|
+
/**
|
|
165
|
+
* Current selectable state of the node as a boolean.
|
|
166
|
+
* @defaultValue false
|
|
167
|
+
*/
|
|
168
|
+
selectable: boolean;
|
|
169
|
+
/**
|
|
170
|
+
* Current selection state of the node as a boolean.
|
|
171
|
+
* @defaultValue false
|
|
172
|
+
*/
|
|
173
|
+
selected: boolean;
|
|
174
|
+
/**
|
|
175
|
+
* Current toggleable state of the node as a boolean.
|
|
176
|
+
* @defaultValue false
|
|
177
|
+
*/
|
|
178
|
+
toggleable: boolean;
|
|
179
|
+
/**
|
|
180
|
+
* Current active state of the node as a boolean.
|
|
181
|
+
* @defaultValue false
|
|
182
|
+
*/
|
|
183
|
+
active: boolean;
|
|
184
|
+
/**
|
|
185
|
+
* Current being top line state of the node as a boolean.
|
|
186
|
+
* @defaultValue false
|
|
187
|
+
*/
|
|
188
|
+
lineTop: boolean;
|
|
189
|
+
}
|
|
190
|
+
|
|
67
191
|
/**
|
|
68
192
|
* Defines valid properties in OrganizationChart component.
|
|
69
193
|
*/
|
|
@@ -89,6 +213,11 @@ export interface OrganizationChartProps {
|
|
|
89
213
|
* @defaultValue false
|
|
90
214
|
*/
|
|
91
215
|
collapsible?: boolean;
|
|
216
|
+
/**
|
|
217
|
+
* Uses to pass attributes to DOM elements inside the component.
|
|
218
|
+
* @type {OrganizationChartPassThroughOptions}
|
|
219
|
+
*/
|
|
220
|
+
pt?: OrganizationChartPassThroughOptions;
|
|
92
221
|
}
|
|
93
222
|
|
|
94
223
|
/**
|
|
@@ -1,14 +1,26 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div class="p-organizationchart p-component">
|
|
3
|
-
<OrganizationChartNode
|
|
2
|
+
<div class="p-organizationchart p-component" v-bind="ptm('root')">
|
|
3
|
+
<OrganizationChartNode
|
|
4
|
+
:node="value"
|
|
5
|
+
:templates="$slots"
|
|
6
|
+
@node-toggle="onNodeToggle"
|
|
7
|
+
:collapsedKeys="d_collapsedKeys"
|
|
8
|
+
:collapsible="collapsible"
|
|
9
|
+
@node-click="onNodeClick"
|
|
10
|
+
:selectionMode="selectionMode"
|
|
11
|
+
:selectionKeys="selectionKeys"
|
|
12
|
+
:pt="pt"
|
|
13
|
+
/>
|
|
4
14
|
</div>
|
|
5
15
|
</template>
|
|
6
16
|
|
|
7
17
|
<script>
|
|
18
|
+
import BaseComponent from 'primevue/basecomponent';
|
|
8
19
|
import OrganizationChartNode from './OrganizationChartNode.vue';
|
|
9
20
|
|
|
10
21
|
export default {
|
|
11
22
|
name: 'OrganizationChart',
|
|
23
|
+
extends: BaseComponent,
|
|
12
24
|
emits: ['node-unselect', 'node-select', 'update:selectionKeys', 'node-expand', 'node-collapse', 'update:collapsedKeys'],
|
|
13
25
|
props: {
|
|
14
26
|
value: {
|
|
@@ -1,37 +1,37 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<table class="p-organizationchart-table">
|
|
3
|
-
<tbody>
|
|
4
|
-
<tr v-if="node">
|
|
5
|
-
<td :colspan="colspan">
|
|
6
|
-
<div :class="nodeContentClass" @click="onNodeClick">
|
|
2
|
+
<table class="p-organizationchart-table" v-bind="ptm('table')">
|
|
3
|
+
<tbody v-bind="ptm('body')">
|
|
4
|
+
<tr v-if="node" v-bind="ptm('row')">
|
|
5
|
+
<td :colspan="colspan" v-bind="ptm('cell')">
|
|
6
|
+
<div :class="nodeContentClass" @click="onNodeClick" v-bind="getPTOptions('node')">
|
|
7
7
|
<component :is="templates[node.type] || templates['default']" :node="node" />
|
|
8
|
-
<a v-if="toggleable" tabindex="0" class="p-node-toggler" @click="toggleNode" @keydown="onKeydown">
|
|
8
|
+
<a v-if="toggleable" tabindex="0" class="p-node-toggler" @click="toggleNode" @keydown="onKeydown" v-bind="getPTOptions('nodeToggler')">
|
|
9
9
|
<component v-if="templates.togglericon" :is="templates.togglericon" :expanded="expanded" class="p-node-toggler-icon" />
|
|
10
|
-
<component v-else :is="expanded ? 'ChevronDownIcon' : 'ChevronUpIcon'" class="p-node-toggler-icon" />
|
|
10
|
+
<component v-else :is="expanded ? 'ChevronDownIcon' : 'ChevronUpIcon'" class="p-node-toggler-icon" v-bind="getPTOptions('nodeTogglerIcon')" />
|
|
11
11
|
</a>
|
|
12
12
|
</div>
|
|
13
13
|
</td>
|
|
14
14
|
</tr>
|
|
15
|
-
<tr :style="childStyle" class="p-organizationchart-lines">
|
|
15
|
+
<tr :style="childStyle" class="p-organizationchart-lines" v-bind="ptm('lines')">
|
|
16
16
|
<td :colspan="colspan">
|
|
17
|
-
<div class="p-organizationchart-line-down"></div>
|
|
17
|
+
<div class="p-organizationchart-line-down" v-bind="ptm('lineDown')"></div>
|
|
18
18
|
</td>
|
|
19
19
|
</tr>
|
|
20
|
-
<tr :style="childStyle" class="p-organizationchart-lines">
|
|
20
|
+
<tr :style="childStyle" class="p-organizationchart-lines" v-bind="ptm('lines')">
|
|
21
21
|
<template v-if="node.children && node.children.length === 1">
|
|
22
|
-
<td :colspan="colspan">
|
|
23
|
-
<div class="p-organizationchart-line-down"></div>
|
|
22
|
+
<td :colspan="colspan" v-bind="ptm('lineCell')">
|
|
23
|
+
<div class="p-organizationchart-line-down" v-bind="ptm('lineDown')"></div>
|
|
24
24
|
</td>
|
|
25
25
|
</template>
|
|
26
26
|
<template v-if="node.children && node.children.length > 1">
|
|
27
27
|
<template v-for="(child, i) of node.children" :key="child.key">
|
|
28
|
-
<td class="p-organizationchart-line-left" :class="{ 'p-organizationchart-line-top': !(i === 0) }"> </td>
|
|
29
|
-
<td class="p-organizationchart-line-right" :class="{ 'p-organizationchart-line-top': !(i === node.children.length - 1) }"> </td>
|
|
28
|
+
<td class="p-organizationchart-line-left" :class="{ 'p-organizationchart-line-top': !(i === 0) }" v-bind="getNodeOptions(!(i === 0), 'lineLeft')"> </td>
|
|
29
|
+
<td class="p-organizationchart-line-right" :class="{ 'p-organizationchart-line-top': !(i === node.children.length - 1) }" v-bind="getNodeOptions(!(i === node.children.length - 1), 'lineRight')"> </td>
|
|
30
30
|
</template>
|
|
31
31
|
</template>
|
|
32
32
|
</tr>
|
|
33
|
-
<tr :style="childStyle" class="p-organizationchart-nodes">
|
|
34
|
-
<td v-for="child of node.children" :key="child.key" colspan="2">
|
|
33
|
+
<tr :style="childStyle" class="p-organizationchart-nodes" v-bind="ptm('nodes')">
|
|
34
|
+
<td v-for="child of node.children" :key="child.key" colspan="2" v-bind="ptm('nodeCell')">
|
|
35
35
|
<OrganizationChartNode
|
|
36
36
|
:node="child"
|
|
37
37
|
:templates="templates"
|
|
@@ -41,6 +41,7 @@
|
|
|
41
41
|
:selectionMode="selectionMode"
|
|
42
42
|
:selectionKeys="selectionKeys"
|
|
43
43
|
@node-click="onChildNodeClick"
|
|
44
|
+
:pt="pt"
|
|
44
45
|
/>
|
|
45
46
|
</td>
|
|
46
47
|
</tr>
|
|
@@ -49,12 +50,14 @@
|
|
|
49
50
|
</template>
|
|
50
51
|
|
|
51
52
|
<script>
|
|
53
|
+
import BaseComponent from 'primevue/basecomponent';
|
|
52
54
|
import ChevronDownIcon from 'primevue/icons/chevrondown';
|
|
53
55
|
import ChevronUpIcon from 'primevue/icons/chevronup';
|
|
54
56
|
import { DomHandler } from 'primevue/utils';
|
|
55
57
|
|
|
56
58
|
export default {
|
|
57
59
|
name: 'OrganizationChartNode',
|
|
60
|
+
extends: BaseComponent,
|
|
58
61
|
emits: ['node-click', 'node-toggle'],
|
|
59
62
|
props: {
|
|
60
63
|
node: {
|
|
@@ -83,6 +86,24 @@ export default {
|
|
|
83
86
|
}
|
|
84
87
|
},
|
|
85
88
|
methods: {
|
|
89
|
+
getPTOptions(key) {
|
|
90
|
+
return this.ptm(key, {
|
|
91
|
+
context: {
|
|
92
|
+
expanded: this.expanded,
|
|
93
|
+
selectable: this.selectable,
|
|
94
|
+
selected: this.selected,
|
|
95
|
+
toggleable: this.toggleable,
|
|
96
|
+
active: this.selected
|
|
97
|
+
}
|
|
98
|
+
});
|
|
99
|
+
},
|
|
100
|
+
getNodeOptions(lineTop, key) {
|
|
101
|
+
return this.ptm(key, {
|
|
102
|
+
context: {
|
|
103
|
+
lineTop
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
},
|
|
86
107
|
onNodeClick(event) {
|
|
87
108
|
if (DomHandler.hasClass(event.target, 'p-node-toggler') || DomHandler.hasClass(event.target, 'p-node-toggler-icon')) {
|
|
88
109
|
return;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var BaseComponent = require('primevue/basecomponent');
|
|
3
4
|
var ChevronDownIcon = require('primevue/icons/chevrondown');
|
|
4
5
|
var ChevronUpIcon = require('primevue/icons/chevronup');
|
|
5
6
|
var utils = require('primevue/utils');
|
|
@@ -7,11 +8,13 @@ var vue = require('vue');
|
|
|
7
8
|
|
|
8
9
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
9
10
|
|
|
11
|
+
var BaseComponent__default = /*#__PURE__*/_interopDefaultLegacy(BaseComponent);
|
|
10
12
|
var ChevronDownIcon__default = /*#__PURE__*/_interopDefaultLegacy(ChevronDownIcon);
|
|
11
13
|
var ChevronUpIcon__default = /*#__PURE__*/_interopDefaultLegacy(ChevronUpIcon);
|
|
12
14
|
|
|
13
15
|
var script$1 = {
|
|
14
16
|
name: 'OrganizationChartNode',
|
|
17
|
+
extends: BaseComponent__default["default"],
|
|
15
18
|
emits: ['node-click', 'node-toggle'],
|
|
16
19
|
props: {
|
|
17
20
|
node: {
|
|
@@ -40,6 +43,24 @@ var script$1 = {
|
|
|
40
43
|
}
|
|
41
44
|
},
|
|
42
45
|
methods: {
|
|
46
|
+
getPTOptions(key) {
|
|
47
|
+
return this.ptm(key, {
|
|
48
|
+
context: {
|
|
49
|
+
expanded: this.expanded,
|
|
50
|
+
selectable: this.selectable,
|
|
51
|
+
selected: this.selected,
|
|
52
|
+
toggleable: this.toggleable,
|
|
53
|
+
active: this.selected
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
},
|
|
57
|
+
getNodeOptions(lineTop, key) {
|
|
58
|
+
return this.ptm(key, {
|
|
59
|
+
context: {
|
|
60
|
+
lineTop
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
},
|
|
43
64
|
onNodeClick(event) {
|
|
44
65
|
if (utils.DomHandler.hasClass(event.target, 'p-node-toggler') || utils.DomHandler.hasClass(event.target, 'p-node-toggler-icon')) {
|
|
45
66
|
return;
|
|
@@ -99,97 +120,91 @@ var script$1 = {
|
|
|
99
120
|
}
|
|
100
121
|
};
|
|
101
122
|
|
|
102
|
-
const _hoisted_1
|
|
103
|
-
const _hoisted_2 =
|
|
123
|
+
const _hoisted_1 = ["colspan"];
|
|
124
|
+
const _hoisted_2 = ["colspan"];
|
|
104
125
|
const _hoisted_3 = ["colspan"];
|
|
105
|
-
const _hoisted_4 = ["colspan"];
|
|
106
|
-
const _hoisted_5 = /*#__PURE__*/vue.createElementVNode("div", { class: "p-organizationchart-line-down" }, null, -1);
|
|
107
|
-
const _hoisted_6 = [
|
|
108
|
-
_hoisted_5
|
|
109
|
-
];
|
|
110
|
-
const _hoisted_7 = ["colspan"];
|
|
111
|
-
const _hoisted_8 = /*#__PURE__*/vue.createElementVNode("div", { class: "p-organizationchart-line-down" }, null, -1);
|
|
112
|
-
const _hoisted_9 = [
|
|
113
|
-
_hoisted_8
|
|
114
|
-
];
|
|
115
126
|
|
|
116
127
|
function render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
117
128
|
const _component_OrganizationChartNode = vue.resolveComponent("OrganizationChartNode", true);
|
|
118
129
|
|
|
119
|
-
return (vue.openBlock(), vue.createElementBlock("table",
|
|
120
|
-
vue.createElementVNode("tbody",
|
|
130
|
+
return (vue.openBlock(), vue.createElementBlock("table", vue.mergeProps({ class: "p-organizationchart-table" }, _ctx.ptm('table')), [
|
|
131
|
+
vue.createElementVNode("tbody", vue.normalizeProps(vue.guardReactiveProps(_ctx.ptm('body'))), [
|
|
121
132
|
($props.node)
|
|
122
|
-
? (vue.openBlock(), vue.createElementBlock("tr",
|
|
123
|
-
vue.createElementVNode("td", { colspan: $options.colspan }, [
|
|
124
|
-
vue.createElementVNode("div", {
|
|
125
|
-
class:
|
|
133
|
+
? (vue.openBlock(), vue.createElementBlock("tr", vue.normalizeProps(vue.mergeProps({ key: 0 }, _ctx.ptm('row'))), [
|
|
134
|
+
vue.createElementVNode("td", vue.mergeProps({ colspan: $options.colspan }, _ctx.ptm('cell')), [
|
|
135
|
+
vue.createElementVNode("div", vue.mergeProps({
|
|
136
|
+
class: $options.nodeContentClass,
|
|
126
137
|
onClick: _cache[2] || (_cache[2] = (...args) => ($options.onNodeClick && $options.onNodeClick(...args)))
|
|
127
|
-
}, [
|
|
138
|
+
}, $options.getPTOptions('node')), [
|
|
128
139
|
(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.templates[$props.node.type] || $props.templates['default']), { node: $props.node }, null, 8, ["node"])),
|
|
129
140
|
($options.toggleable)
|
|
130
|
-
? (vue.openBlock(), vue.createElementBlock("a", {
|
|
141
|
+
? (vue.openBlock(), vue.createElementBlock("a", vue.mergeProps({
|
|
131
142
|
key: 0,
|
|
132
143
|
tabindex: "0",
|
|
133
144
|
class: "p-node-toggler",
|
|
134
145
|
onClick: _cache[0] || (_cache[0] = (...args) => ($options.toggleNode && $options.toggleNode(...args))),
|
|
135
146
|
onKeydown: _cache[1] || (_cache[1] = (...args) => ($options.onKeydown && $options.onKeydown(...args)))
|
|
136
|
-
}, [
|
|
147
|
+
}, $options.getPTOptions('nodeToggler')), [
|
|
137
148
|
($props.templates.togglericon)
|
|
138
149
|
? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($props.templates.togglericon), {
|
|
139
150
|
key: 0,
|
|
140
151
|
expanded: $options.expanded,
|
|
141
152
|
class: "p-node-toggler-icon"
|
|
142
153
|
}, null, 8, ["expanded"]))
|
|
143
|
-
: (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($options.expanded ? 'ChevronDownIcon' : 'ChevronUpIcon'), {
|
|
154
|
+
: (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent($options.expanded ? 'ChevronDownIcon' : 'ChevronUpIcon'), vue.mergeProps({
|
|
144
155
|
key: 1,
|
|
145
156
|
class: "p-node-toggler-icon"
|
|
146
|
-
}))
|
|
147
|
-
],
|
|
157
|
+
}, $options.getPTOptions('nodeTogglerIcon')), null, 16))
|
|
158
|
+
], 16))
|
|
148
159
|
: vue.createCommentVNode("", true)
|
|
149
|
-
],
|
|
150
|
-
],
|
|
151
|
-
]))
|
|
160
|
+
], 16)
|
|
161
|
+
], 16, _hoisted_1)
|
|
162
|
+
], 16))
|
|
152
163
|
: vue.createCommentVNode("", true),
|
|
153
|
-
vue.createElementVNode("tr", {
|
|
154
|
-
style:
|
|
164
|
+
vue.createElementVNode("tr", vue.mergeProps({
|
|
165
|
+
style: $options.childStyle,
|
|
155
166
|
class: "p-organizationchart-lines"
|
|
156
|
-
}, [
|
|
157
|
-
vue.createElementVNode("td", { colspan: $options.colspan },
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
167
|
+
}, _ctx.ptm('lines')), [
|
|
168
|
+
vue.createElementVNode("td", { colspan: $options.colspan }, [
|
|
169
|
+
vue.createElementVNode("div", vue.mergeProps({ class: "p-organizationchart-line-down" }, _ctx.ptm('lineDown')), null, 16)
|
|
170
|
+
], 8, _hoisted_2)
|
|
171
|
+
], 16),
|
|
172
|
+
vue.createElementVNode("tr", vue.mergeProps({
|
|
173
|
+
style: $options.childStyle,
|
|
161
174
|
class: "p-organizationchart-lines"
|
|
162
|
-
}, [
|
|
175
|
+
}, _ctx.ptm('lines')), [
|
|
163
176
|
($props.node.children && $props.node.children.length === 1)
|
|
164
|
-
? (vue.openBlock(), vue.createElementBlock("td", {
|
|
177
|
+
? (vue.openBlock(), vue.createElementBlock("td", vue.mergeProps({
|
|
165
178
|
key: 0,
|
|
166
179
|
colspan: $options.colspan
|
|
167
|
-
},
|
|
180
|
+
}, _ctx.ptm('lineCell')), [
|
|
181
|
+
vue.createElementVNode("div", vue.mergeProps({ class: "p-organizationchart-line-down" }, _ctx.ptm('lineDown')), null, 16)
|
|
182
|
+
], 16, _hoisted_3))
|
|
168
183
|
: vue.createCommentVNode("", true),
|
|
169
184
|
($props.node.children && $props.node.children.length > 1)
|
|
170
185
|
? (vue.openBlock(true), vue.createElementBlock(vue.Fragment, { key: 1 }, vue.renderList($props.node.children, (child, i) => {
|
|
171
186
|
return (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
|
|
172
187
|
key: child.key
|
|
173
188
|
}, [
|
|
174
|
-
vue.createElementVNode("td", {
|
|
175
|
-
class:
|
|
176
|
-
}, " ",
|
|
177
|
-
vue.createElementVNode("td", {
|
|
178
|
-
class:
|
|
179
|
-
}, " ",
|
|
189
|
+
vue.createElementVNode("td", vue.mergeProps({
|
|
190
|
+
class: ["p-organizationchart-line-left", { 'p-organizationchart-line-top': !(i === 0) }]
|
|
191
|
+
}, $options.getNodeOptions(!(i === 0), 'lineLeft')), " ", 16),
|
|
192
|
+
vue.createElementVNode("td", vue.mergeProps({
|
|
193
|
+
class: ["p-organizationchart-line-right", { 'p-organizationchart-line-top': !(i === $props.node.children.length - 1) }]
|
|
194
|
+
}, $options.getNodeOptions(!(i === $props.node.children.length - 1), 'lineRight')), " ", 16)
|
|
180
195
|
], 64))
|
|
181
196
|
}), 128))
|
|
182
197
|
: vue.createCommentVNode("", true)
|
|
183
|
-
],
|
|
184
|
-
vue.createElementVNode("tr", {
|
|
185
|
-
style:
|
|
198
|
+
], 16),
|
|
199
|
+
vue.createElementVNode("tr", vue.mergeProps({
|
|
200
|
+
style: $options.childStyle,
|
|
186
201
|
class: "p-organizationchart-nodes"
|
|
187
|
-
}, [
|
|
202
|
+
}, _ctx.ptm('nodes')), [
|
|
188
203
|
(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList($props.node.children, (child) => {
|
|
189
|
-
return (vue.openBlock(), vue.createElementBlock("td", {
|
|
204
|
+
return (vue.openBlock(), vue.createElementBlock("td", vue.mergeProps({
|
|
190
205
|
key: child.key,
|
|
191
206
|
colspan: "2"
|
|
192
|
-
}, [
|
|
207
|
+
}, _ctx.ptm('nodeCell')), [
|
|
193
208
|
vue.createVNode(_component_OrganizationChartNode, {
|
|
194
209
|
node: child,
|
|
195
210
|
templates: $props.templates,
|
|
@@ -198,19 +213,21 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
198
213
|
collapsible: $props.collapsible,
|
|
199
214
|
selectionMode: $props.selectionMode,
|
|
200
215
|
selectionKeys: $props.selectionKeys,
|
|
201
|
-
onNodeClick: $options.onChildNodeClick
|
|
202
|
-
|
|
203
|
-
|
|
216
|
+
onNodeClick: $options.onChildNodeClick,
|
|
217
|
+
pt: _ctx.pt
|
|
218
|
+
}, null, 8, ["node", "templates", "collapsedKeys", "onNodeToggle", "collapsible", "selectionMode", "selectionKeys", "onNodeClick", "pt"])
|
|
219
|
+
], 16))
|
|
204
220
|
}), 128))
|
|
205
|
-
],
|
|
206
|
-
])
|
|
207
|
-
]))
|
|
221
|
+
], 16)
|
|
222
|
+
], 16)
|
|
223
|
+
], 16))
|
|
208
224
|
}
|
|
209
225
|
|
|
210
226
|
script$1.render = render$1;
|
|
211
227
|
|
|
212
228
|
var script = {
|
|
213
229
|
name: 'OrganizationChart',
|
|
230
|
+
extends: BaseComponent__default["default"],
|
|
214
231
|
emits: ['node-unselect', 'node-select', 'update:selectionKeys', 'node-expand', 'node-collapse', 'update:collapsedKeys'],
|
|
215
232
|
props: {
|
|
216
233
|
value: {
|
|
@@ -286,12 +303,10 @@ var script = {
|
|
|
286
303
|
}
|
|
287
304
|
};
|
|
288
305
|
|
|
289
|
-
const _hoisted_1 = { class: "p-organizationchart p-component" };
|
|
290
|
-
|
|
291
306
|
function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
292
307
|
const _component_OrganizationChartNode = vue.resolveComponent("OrganizationChartNode");
|
|
293
308
|
|
|
294
|
-
return (vue.openBlock(), vue.createElementBlock("div",
|
|
309
|
+
return (vue.openBlock(), vue.createElementBlock("div", vue.mergeProps({ class: "p-organizationchart p-component" }, _ctx.ptm('root')), [
|
|
295
310
|
vue.createVNode(_component_OrganizationChartNode, {
|
|
296
311
|
node: $props.value,
|
|
297
312
|
templates: _ctx.$slots,
|
|
@@ -300,9 +315,10 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
300
315
|
collapsible: $props.collapsible,
|
|
301
316
|
onNodeClick: $options.onNodeClick,
|
|
302
317
|
selectionMode: $props.selectionMode,
|
|
303
|
-
selectionKeys: $props.selectionKeys
|
|
304
|
-
|
|
305
|
-
|
|
318
|
+
selectionKeys: $props.selectionKeys,
|
|
319
|
+
pt: _ctx.pt
|
|
320
|
+
}, null, 8, ["node", "templates", "onNodeToggle", "collapsedKeys", "collapsible", "onNodeClick", "selectionMode", "selectionKeys", "pt"])
|
|
321
|
+
], 16))
|
|
306
322
|
}
|
|
307
323
|
|
|
308
324
|
function styleInject(css, ref) {
|