primevue 4.3.3 → 4.3.5
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/accordion/index.mjs +4 -2
- package/accordion/index.mjs.map +1 -1
- package/accordionheader/AccordionHeader.vue +1 -1
- package/accordionheader/index.d.ts +6 -1
- package/accordionheader/index.mjs +1 -1
- package/accordionheader/index.mjs.map +1 -1
- package/autocomplete/AutoComplete.vue +4 -1
- package/autocomplete/index.d.ts +4 -0
- package/autocomplete/index.mjs +38 -31
- package/autocomplete/index.mjs.map +1 -1
- package/breadcrumb/index.mjs +4 -2
- package/breadcrumb/index.mjs.map +1 -1
- package/carousel/index.mjs +10 -5
- package/carousel/index.mjs.map +1 -1
- package/cascadeselect/CascadeSelect.vue +3 -0
- package/cascadeselect/CascadeSelectSub.vue +1 -1
- package/cascadeselect/index.mjs +31 -23
- package/cascadeselect/index.mjs.map +1 -1
- package/colorpicker/ColorPicker.vue +4 -0
- package/colorpicker/index.mjs +4 -0
- package/colorpicker/index.mjs.map +1 -1
- package/confirmationoptions/index.d.ts +1 -1
- package/confirmdialog/index.d.ts +4 -0
- package/contextmenu/index.mjs +28 -20
- package/contextmenu/index.mjs.map +1 -1
- package/datatable/ColumnFilter.vue +2 -2
- package/datatable/DataTable.vue +7 -3
- package/datatable/index.d.ts +2 -2
- package/datatable/index.mjs +48 -40
- package/datatable/index.mjs.map +1 -1
- package/datatable/style/index.mjs +4 -4
- package/datatable/style/index.mjs.map +1 -1
- package/dataview/index.d.ts +5 -5
- package/datepicker/DatePicker.vue +10 -3
- package/datepicker/index.mjs +123 -84
- package/datepicker/index.mjs.map +1 -1
- package/dock/index.mjs +8 -4
- package/dock/index.mjs.map +1 -1
- package/dynamicdialog/index.mjs +6 -3
- package/dynamicdialog/index.mjs.map +1 -1
- package/fileupload/FileUpload.vue +2 -3
- package/fileupload/index.mjs +20 -15
- package/fileupload/index.mjs.map +1 -1
- package/floatlabel/index.d.ts +1 -1
- package/galleria/index.mjs +8 -4
- package/galleria/index.mjs.map +1 -1
- package/image/Image.vue +1 -1
- package/image/index.mjs +1 -1
- package/image/index.mjs.map +1 -1
- package/inputchips/index.mjs +2 -1
- package/inputchips/index.mjs.map +1 -1
- package/inputmask/InputMask.vue +3 -3
- package/inputmask/index.d.ts +3 -3
- package/inputmask/index.mjs +3 -3
- package/inputmask/index.mjs.map +1 -1
- package/inputnumber/InputNumber.vue +1 -1
- package/inputnumber/index.mjs +2 -2
- package/inputnumber/index.mjs.map +1 -1
- package/inputtext/index.d.ts +2 -1
- package/listbox/Listbox.vue +1 -0
- package/listbox/index.mjs +35 -30
- package/listbox/index.mjs.map +1 -1
- package/megamenu/index.d.ts +1 -1
- package/megamenu/index.mjs +33 -22
- package/megamenu/index.mjs.map +1 -1
- package/menu/Menu.vue +4 -4
- package/menu/index.d.ts +3 -12
- package/menu/index.mjs +10 -7
- package/menu/index.mjs.map +1 -1
- package/menubar/index.mjs +30 -23
- package/menubar/index.mjs.map +1 -1
- package/metergroup/index.d.ts +1 -1
- package/metergroup/index.mjs +10 -5
- package/metergroup/index.mjs.map +1 -1
- package/multiselect/MultiSelect.vue +4 -1
- package/multiselect/index.d.ts +1 -1
- package/multiselect/index.mjs +59 -52
- package/multiselect/index.mjs.map +1 -1
- package/organizationchart/OrganizationChartNode.vue +1 -1
- package/organizationchart/index.mjs +6 -3
- package/organizationchart/index.mjs.map +1 -1
- package/organizationchart/style/index.mjs +11 -6
- package/organizationchart/style/index.mjs.map +1 -1
- package/package.json +6 -6
- package/paginator/index.mjs +10 -4
- package/paginator/index.mjs.map +1 -1
- package/panel/Panel.vue +2 -2
- package/panel/index.mjs +2 -2
- package/panel/index.mjs.map +1 -1
- package/panelmenu/index.mjs +45 -24
- package/panelmenu/index.mjs.map +1 -1
- package/password/Password.vue +8 -3
- package/password/index.d.ts +1 -1
- package/password/index.mjs +18 -9
- package/password/index.mjs.map +1 -1
- package/rating/index.mjs +10 -5
- package/rating/index.mjs.map +1 -1
- package/select/Select.vue +21 -3
- package/select/index.mjs +66 -42
- package/select/index.mjs.map +1 -1
- package/selectbutton/index.d.ts +0 -24
- package/speeddial/index.mjs +6 -3
- package/speeddial/index.mjs.map +1 -1
- package/splitter/Splitter.vue +2 -2
- package/splitter/index.d.ts +1 -1
- package/splitter/index.mjs +5 -3
- package/splitter/index.mjs.map +1 -1
- package/splitter/style/index.mjs +1 -13
- package/splitter/style/index.mjs.map +1 -1
- package/step/Step.vue +2 -2
- package/step/index.mjs +2 -2
- package/step/index.mjs.map +1 -1
- package/steppanel/StepPanel.vue +2 -2
- package/steppanel/index.mjs +2 -2
- package/steppanel/index.mjs.map +1 -1
- package/steps/index.mjs +8 -4
- package/steps/index.mjs.map +1 -1
- package/tabmenu/index.mjs +8 -2
- package/tabmenu/index.mjs.map +1 -1
- package/tabview/index.mjs +8 -4
- package/tabview/index.mjs.map +1 -1
- package/terminal/index.mjs +8 -4
- package/terminal/index.mjs.map +1 -1
- package/textarea/index.d.ts +2 -1
- package/tieredmenu/index.mjs +30 -21
- package/tieredmenu/index.mjs.map +1 -1
- package/timeline/index.mjs +12 -6
- package/timeline/index.mjs.map +1 -1
- package/toast/ToastMessage.vue +1 -1
- package/toast/index.mjs +1 -1
- package/toast/index.mjs.map +1 -1
- package/toggleswitch/style/index.d.ts +1 -5
- package/tooltip/index.mjs +25 -14
- package/tooltip/index.mjs.map +1 -1
- package/treeselect/TreeSelect.vue +3 -0
- package/treeselect/index.mjs +5 -1
- package/treeselect/index.mjs.map +1 -1
- package/treetable/index.mjs +2 -1
- package/treetable/index.mjs.map +1 -1
- package/umd/primevue.min.js +12213 -1
- package/virtualscroller/VirtualScroller.vue +4 -1
- package/virtualscroller/index.mjs +21 -19
- package/virtualscroller/index.mjs.map +1 -1
- package/web-types.json +1 -1
package/dock/index.mjs
CHANGED
|
@@ -305,24 +305,28 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
305
305
|
},
|
|
306
306
|
onMouseenter: function onMouseenter($event) {
|
|
307
307
|
return $options.onItemMouseEnter(index);
|
|
308
|
-
}
|
|
308
|
+
}
|
|
309
|
+
}, {
|
|
309
310
|
ref_for: true
|
|
310
311
|
}, $options.getPTOptions('item', processedItem, index), {
|
|
311
312
|
"data-p-focused": $options.isItemActive($options.getItemId(index)),
|
|
312
313
|
"data-p-disabled": $options.disabled(processedItem) || false
|
|
313
314
|
}), [createElementVNode("div", mergeProps({
|
|
314
|
-
"class": _ctx.cx('itemContent')
|
|
315
|
+
"class": _ctx.cx('itemContent')
|
|
316
|
+
}, {
|
|
315
317
|
ref_for: true
|
|
316
318
|
}, $options.getPTOptions('itemContent', processedItem, index)), [!$props.templates['item'] ? withDirectives((openBlock(), createElementBlock("a", mergeProps({
|
|
317
319
|
key: 0,
|
|
318
320
|
href: processedItem.url,
|
|
319
321
|
"class": _ctx.cx('itemLink'),
|
|
320
322
|
target: processedItem.target,
|
|
321
|
-
tabindex: "-1"
|
|
323
|
+
tabindex: "-1"
|
|
324
|
+
}, {
|
|
322
325
|
ref_for: true
|
|
323
326
|
}, $options.getPTOptions('itemLink', processedItem, index)), [!$props.templates['icon'] && !$props.templates['itemicon'] ? withDirectives((openBlock(), createElementBlock("span", mergeProps({
|
|
324
327
|
key: 0,
|
|
325
|
-
"class": [_ctx.cx('itemIcon'), processedItem.icon]
|
|
328
|
+
"class": [_ctx.cx('itemIcon'), processedItem.icon]
|
|
329
|
+
}, {
|
|
326
330
|
ref_for: true
|
|
327
331
|
}, $options.getPTOptions('itemIcon', processedItem, index)), null, 16)), [[_directive_ripple]]) : (openBlock(), createBlock(resolveDynamicComponent($props.templates['icon'] || $props.templates['itemicon']), {
|
|
328
332
|
key: 1,
|
package/dock/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/dock/BaseDock.vue","../../src/dock/DockSub.vue","../../src/dock/DockSub.vue?vue&type=template&id=3bb06619&lang.js","../../src/dock/Dock.vue","../../src/dock/Dock.vue?vue&type=template&id=2f238c36&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport DockStyle from 'primevue/dock/style';\n\nexport default {\n name: 'BaseDock',\n extends: BaseComponent,\n props: {\n position: {\n type: String,\n default: 'bottom'\n },\n model: null,\n class: null,\n style: null,\n tooltipOptions: null,\n menuId: {\n type: String,\n default: null\n },\n tabindex: {\n type: Number,\n default: 0\n },\n breakpoint: {\n type: String,\n default: '960px'\n },\n ariaLabel: {\n type: String,\n default: null\n },\n ariaLabelledby: {\n type: String,\n default: null\n }\n },\n style: DockStyle,\n provide() {\n return {\n $pcDock: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('listContainer')\" v-bind=\"ptm('listContainer')\">\n <ul\n ref=\"list\"\n :id=\"idx\"\n :class=\"cx('list')\"\n role=\"menu\"\n :aria-orientation=\"position === 'bottom' || position === 'top' ? 'horizontal' : 'vertical'\"\n :aria-activedescendant=\"focused ? focusedOptionId : undefined\"\n :tabindex=\"tabindex\"\n :aria-label=\"ariaLabel\"\n :aria-labelledby=\"ariaLabelledby\"\n @focus=\"onListFocus\"\n @blur=\"onListBlur\"\n @keydown=\"onListKeyDown\"\n @mouseleave=\"onListMouseLeave\"\n v-bind=\"ptm('list')\"\n >\n <template v-for=\"(processedItem, index) of model\" :key=\"index\">\n <li\n :id=\"getItemId(index)\"\n :class=\"cx('item', { processedItem, id: getItemId(index) })\"\n role=\"menuitem\"\n :aria-label=\"processedItem.label\"\n :aria-disabled=\"disabled(processedItem)\"\n @click=\"onItemClick($event, processedItem)\"\n @mouseenter=\"onItemMouseEnter(index)\"\n v-bind=\"getPTOptions('item', processedItem, index)\"\n :data-p-focused=\"isItemActive(getItemId(index))\"\n :data-p-disabled=\"disabled(processedItem) || false\"\n >\n <div :class=\"cx('itemContent')\" v-bind=\"getPTOptions('itemContent', processedItem, index)\">\n <template v-if=\"!templates['item']\">\n <a\n v-tooltip:[tooltipOptions]=\"{ value: processedItem.label, disabled: !tooltipOptions }\"\n :href=\"processedItem.url\"\n :class=\"cx('itemLink')\"\n :target=\"processedItem.target\"\n tabindex=\"-1\"\n v-bind=\"getPTOptions('itemLink', processedItem, index)\"\n >\n <!-- TODO: icon deprecated since v4.0-->\n <template v-if=\"!templates['icon'] && !templates['itemicon']\">\n <span v-ripple :class=\"[cx('itemIcon'), processedItem.icon]\" v-bind=\"getPTOptions('itemIcon', processedItem, index)\"></span>\n </template>\n <component v-else :is=\"templates['icon'] || templates['itemicon']\" :item=\"processedItem\" :class=\"cx('itemIcon')\"></component>\n </a>\n </template>\n <component v-else :is=\"templates['item']\" :item=\"processedItem\" :index=\"index\" :label=\"processedItem.label\" :props=\"getMenuItemProps(processedItem, index)\"></component>\n </div>\n </li>\n </template>\n </ul>\n </div>\n</template>\n\n<script>\nimport { find, findSingle } from '@primeuix/utils/dom';\nimport { resolve } from '@primeuix/utils/object';\nimport BaseComponent from '@primevue/core/basecomponent';\nimport Ripple from 'primevue/ripple';\nimport Tooltip from 'primevue/tooltip';\nimport { mergeProps } from 'vue';\n\nexport default {\n name: 'DockSub',\n hostName: 'Dock',\n extends: BaseComponent,\n emits: ['focus', 'blur'],\n props: {\n position: {\n type: String,\n default: 'bottom'\n },\n model: {\n type: Array,\n default: null\n },\n templates: {\n type: null,\n default: null\n },\n tooltipOptions: null,\n menuId: {\n type: String,\n default: null\n },\n tabindex: {\n type: Number,\n default: 0\n },\n ariaLabel: {\n type: String,\n default: null\n },\n ariaLabelledby: {\n type: String,\n default: null\n }\n },\n data() {\n return {\n currentIndex: -3,\n focused: false,\n focusedOptionIndex: -1\n };\n },\n methods: {\n getItemId(index) {\n return `${this.idx}_${index}`;\n },\n getItemProp(processedItem, name) {\n return processedItem && processedItem.item ? resolve(processedItem.item[name]) : undefined;\n },\n getPTOptions(key, item, index) {\n return this.ptm(key, {\n context: {\n index,\n item,\n active: this.isItemActive(this.getItemId(index))\n }\n });\n },\n isSameMenuItem(event) {\n return event.currentTarget && (event.currentTarget.isSameNode(event.target) || event.currentTarget.isSameNode(event.target.closest('[data-pc-section=\"item\"]')));\n },\n isItemActive(id) {\n return id === this.focusedOptionIndex;\n },\n onListMouseLeave() {\n this.currentIndex = -3;\n },\n onItemMouseEnter(index) {\n this.currentIndex = index;\n },\n onItemClick(event, processedItem) {\n if (this.isSameMenuItem(event)) {\n const command = this.getItemProp(processedItem, 'command');\n\n command && command({ originalEvent: event, item: processedItem.item });\n }\n },\n onListFocus(event) {\n this.focused = true;\n this.changeFocusedOptionIndex(0);\n this.$emit('focus', event);\n },\n onListBlur(event) {\n this.focused = false;\n this.focusedOptionIndex = -1;\n this.$emit('blur', event);\n },\n onListKeyDown(event) {\n switch (event.code) {\n case 'ArrowDown': {\n if (this.position === 'left' || this.position === 'right') this.onArrowDownKey();\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n if (this.position === 'left' || this.position === 'right') this.onArrowUpKey();\n event.preventDefault();\n break;\n }\n\n case 'ArrowRight': {\n if (this.position === 'top' || this.position === 'bottom') this.onArrowDownKey();\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n if (this.position === 'top' || this.position === 'bottom') this.onArrowUpKey();\n event.preventDefault();\n break;\n }\n\n case 'Home': {\n this.onHomeKey();\n event.preventDefault();\n break;\n }\n\n case 'End': {\n this.onEndKey();\n event.preventDefault();\n break;\n }\n\n case 'Enter':\n case 'NumpadEnter':\n\n case 'Space': {\n this.onSpaceKey(event);\n event.preventDefault();\n break;\n }\n\n default:\n break;\n }\n },\n onArrowDownKey() {\n const optionIndex = this.findNextOptionIndex(this.focusedOptionIndex);\n\n this.changeFocusedOptionIndex(optionIndex);\n },\n onArrowUpKey() {\n const optionIndex = this.findPrevOptionIndex(this.focusedOptionIndex);\n\n this.changeFocusedOptionIndex(optionIndex);\n },\n onHomeKey() {\n this.changeFocusedOptionIndex(0);\n },\n onEndKey() {\n this.changeFocusedOptionIndex(find(this.$refs.list, 'li[data-pc-section=\"item\"][data-p-disabled=\"false\"]').length - 1);\n },\n onSpaceKey() {\n const element = findSingle(this.$refs.list, `li[id=\"${`${this.focusedOptionIndex}`}\"]`);\n const anchorElement = element && findSingle(element, '[data-pc-section=\"itemlink\"]');\n\n anchorElement ? anchorElement.click() : element && element.click();\n },\n findNextOptionIndex(index) {\n const menuitems = find(this.$refs.list, 'li[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n const matchedOptionIndex = [...menuitems].findIndex((link) => link.id === index);\n\n return matchedOptionIndex > -1 ? matchedOptionIndex + 1 : 0;\n },\n findPrevOptionIndex(index) {\n const menuitems = find(this.$refs.list, 'li[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n const matchedOptionIndex = [...menuitems].findIndex((link) => link.id === index);\n\n return matchedOptionIndex > -1 ? matchedOptionIndex - 1 : 0;\n },\n changeFocusedOptionIndex(index) {\n const menuitems = find(this.$refs.list, 'li[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n\n let order = index >= menuitems.length ? menuitems.length - 1 : index < 0 ? 0 : index;\n\n this.focusedOptionIndex = menuitems[order].getAttribute('id');\n },\n disabled(item) {\n return typeof item.disabled === 'function' ? item.disabled() : item.disabled;\n },\n getMenuItemProps(item, index) {\n return {\n action: mergeProps(\n {\n tabindex: -1,\n class: this.cx('itemLink')\n },\n this.getPTOptions('itemLink', item, index)\n ),\n icon: mergeProps(\n {\n class: [this.cx('itemIcon'), item.icon]\n },\n this.getPTOptions('itemIcon', item, index)\n )\n };\n }\n },\n computed: {\n focusedOptionId() {\n return this.focusedOptionIndex !== -1 ? this.focusedOptionIndex : null;\n },\n idx() {\n return this.menuId || this.$id;\n }\n },\n directives: {\n ripple: Ripple,\n tooltip: Tooltip\n }\n};\n</script>\n","<template>\n <div :class=\"cx('listContainer')\" v-bind=\"ptm('listContainer')\">\n <ul\n ref=\"list\"\n :id=\"idx\"\n :class=\"cx('list')\"\n role=\"menu\"\n :aria-orientation=\"position === 'bottom' || position === 'top' ? 'horizontal' : 'vertical'\"\n :aria-activedescendant=\"focused ? focusedOptionId : undefined\"\n :tabindex=\"tabindex\"\n :aria-label=\"ariaLabel\"\n :aria-labelledby=\"ariaLabelledby\"\n @focus=\"onListFocus\"\n @blur=\"onListBlur\"\n @keydown=\"onListKeyDown\"\n @mouseleave=\"onListMouseLeave\"\n v-bind=\"ptm('list')\"\n >\n <template v-for=\"(processedItem, index) of model\" :key=\"index\">\n <li\n :id=\"getItemId(index)\"\n :class=\"cx('item', { processedItem, id: getItemId(index) })\"\n role=\"menuitem\"\n :aria-label=\"processedItem.label\"\n :aria-disabled=\"disabled(processedItem)\"\n @click=\"onItemClick($event, processedItem)\"\n @mouseenter=\"onItemMouseEnter(index)\"\n v-bind=\"getPTOptions('item', processedItem, index)\"\n :data-p-focused=\"isItemActive(getItemId(index))\"\n :data-p-disabled=\"disabled(processedItem) || false\"\n >\n <div :class=\"cx('itemContent')\" v-bind=\"getPTOptions('itemContent', processedItem, index)\">\n <template v-if=\"!templates['item']\">\n <a\n v-tooltip:[tooltipOptions]=\"{ value: processedItem.label, disabled: !tooltipOptions }\"\n :href=\"processedItem.url\"\n :class=\"cx('itemLink')\"\n :target=\"processedItem.target\"\n tabindex=\"-1\"\n v-bind=\"getPTOptions('itemLink', processedItem, index)\"\n >\n <!-- TODO: icon deprecated since v4.0-->\n <template v-if=\"!templates['icon'] && !templates['itemicon']\">\n <span v-ripple :class=\"[cx('itemIcon'), processedItem.icon]\" v-bind=\"getPTOptions('itemIcon', processedItem, index)\"></span>\n </template>\n <component v-else :is=\"templates['icon'] || templates['itemicon']\" :item=\"processedItem\" :class=\"cx('itemIcon')\"></component>\n </a>\n </template>\n <component v-else :is=\"templates['item']\" :item=\"processedItem\" :index=\"index\" :label=\"processedItem.label\" :props=\"getMenuItemProps(processedItem, index)\"></component>\n </div>\n </li>\n </template>\n </ul>\n </div>\n</template>\n\n<script>\nimport { find, findSingle } from '@primeuix/utils/dom';\nimport { resolve } from '@primeuix/utils/object';\nimport BaseComponent from '@primevue/core/basecomponent';\nimport Ripple from 'primevue/ripple';\nimport Tooltip from 'primevue/tooltip';\nimport { mergeProps } from 'vue';\n\nexport default {\n name: 'DockSub',\n hostName: 'Dock',\n extends: BaseComponent,\n emits: ['focus', 'blur'],\n props: {\n position: {\n type: String,\n default: 'bottom'\n },\n model: {\n type: Array,\n default: null\n },\n templates: {\n type: null,\n default: null\n },\n tooltipOptions: null,\n menuId: {\n type: String,\n default: null\n },\n tabindex: {\n type: Number,\n default: 0\n },\n ariaLabel: {\n type: String,\n default: null\n },\n ariaLabelledby: {\n type: String,\n default: null\n }\n },\n data() {\n return {\n currentIndex: -3,\n focused: false,\n focusedOptionIndex: -1\n };\n },\n methods: {\n getItemId(index) {\n return `${this.idx}_${index}`;\n },\n getItemProp(processedItem, name) {\n return processedItem && processedItem.item ? resolve(processedItem.item[name]) : undefined;\n },\n getPTOptions(key, item, index) {\n return this.ptm(key, {\n context: {\n index,\n item,\n active: this.isItemActive(this.getItemId(index))\n }\n });\n },\n isSameMenuItem(event) {\n return event.currentTarget && (event.currentTarget.isSameNode(event.target) || event.currentTarget.isSameNode(event.target.closest('[data-pc-section=\"item\"]')));\n },\n isItemActive(id) {\n return id === this.focusedOptionIndex;\n },\n onListMouseLeave() {\n this.currentIndex = -3;\n },\n onItemMouseEnter(index) {\n this.currentIndex = index;\n },\n onItemClick(event, processedItem) {\n if (this.isSameMenuItem(event)) {\n const command = this.getItemProp(processedItem, 'command');\n\n command && command({ originalEvent: event, item: processedItem.item });\n }\n },\n onListFocus(event) {\n this.focused = true;\n this.changeFocusedOptionIndex(0);\n this.$emit('focus', event);\n },\n onListBlur(event) {\n this.focused = false;\n this.focusedOptionIndex = -1;\n this.$emit('blur', event);\n },\n onListKeyDown(event) {\n switch (event.code) {\n case 'ArrowDown': {\n if (this.position === 'left' || this.position === 'right') this.onArrowDownKey();\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n if (this.position === 'left' || this.position === 'right') this.onArrowUpKey();\n event.preventDefault();\n break;\n }\n\n case 'ArrowRight': {\n if (this.position === 'top' || this.position === 'bottom') this.onArrowDownKey();\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n if (this.position === 'top' || this.position === 'bottom') this.onArrowUpKey();\n event.preventDefault();\n break;\n }\n\n case 'Home': {\n this.onHomeKey();\n event.preventDefault();\n break;\n }\n\n case 'End': {\n this.onEndKey();\n event.preventDefault();\n break;\n }\n\n case 'Enter':\n case 'NumpadEnter':\n\n case 'Space': {\n this.onSpaceKey(event);\n event.preventDefault();\n break;\n }\n\n default:\n break;\n }\n },\n onArrowDownKey() {\n const optionIndex = this.findNextOptionIndex(this.focusedOptionIndex);\n\n this.changeFocusedOptionIndex(optionIndex);\n },\n onArrowUpKey() {\n const optionIndex = this.findPrevOptionIndex(this.focusedOptionIndex);\n\n this.changeFocusedOptionIndex(optionIndex);\n },\n onHomeKey() {\n this.changeFocusedOptionIndex(0);\n },\n onEndKey() {\n this.changeFocusedOptionIndex(find(this.$refs.list, 'li[data-pc-section=\"item\"][data-p-disabled=\"false\"]').length - 1);\n },\n onSpaceKey() {\n const element = findSingle(this.$refs.list, `li[id=\"${`${this.focusedOptionIndex}`}\"]`);\n const anchorElement = element && findSingle(element, '[data-pc-section=\"itemlink\"]');\n\n anchorElement ? anchorElement.click() : element && element.click();\n },\n findNextOptionIndex(index) {\n const menuitems = find(this.$refs.list, 'li[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n const matchedOptionIndex = [...menuitems].findIndex((link) => link.id === index);\n\n return matchedOptionIndex > -1 ? matchedOptionIndex + 1 : 0;\n },\n findPrevOptionIndex(index) {\n const menuitems = find(this.$refs.list, 'li[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n const matchedOptionIndex = [...menuitems].findIndex((link) => link.id === index);\n\n return matchedOptionIndex > -1 ? matchedOptionIndex - 1 : 0;\n },\n changeFocusedOptionIndex(index) {\n const menuitems = find(this.$refs.list, 'li[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n\n let order = index >= menuitems.length ? menuitems.length - 1 : index < 0 ? 0 : index;\n\n this.focusedOptionIndex = menuitems[order].getAttribute('id');\n },\n disabled(item) {\n return typeof item.disabled === 'function' ? item.disabled() : item.disabled;\n },\n getMenuItemProps(item, index) {\n return {\n action: mergeProps(\n {\n tabindex: -1,\n class: this.cx('itemLink')\n },\n this.getPTOptions('itemLink', item, index)\n ),\n icon: mergeProps(\n {\n class: [this.cx('itemIcon'), item.icon]\n },\n this.getPTOptions('itemIcon', item, index)\n )\n };\n }\n },\n computed: {\n focusedOptionId() {\n return this.focusedOptionIndex !== -1 ? this.focusedOptionIndex : null;\n },\n idx() {\n return this.menuId || this.$id;\n }\n },\n directives: {\n ripple: Ripple,\n tooltip: Tooltip\n }\n};\n</script>\n","<template>\n <div :class=\"containerClass\" :style=\"style\" v-bind=\"ptmi('root')\">\n <DockSub :model=\"model\" :templates=\"$slots\" :tooltipOptions=\"tooltipOptions\" :position=\"position\" :menuId=\"menuId\" :aria-label=\"ariaLabel\" :aria-labelledby=\"ariaLabelledby\" :tabindex=\"tabindex\" :pt=\"pt\" :unstyled=\"unstyled\"></DockSub>\n </div>\n</template>\n\n<script>\nimport BaseDock from './BaseDock.vue';\nimport DockSub from './DockSub.vue';\n\nexport default {\n name: 'Dock',\n extends: BaseDock,\n inheritAttrs: false,\n matchMediaListener: null,\n data() {\n return {\n query: null,\n queryMatches: false\n };\n },\n mounted() {\n this.bindMatchMediaListener();\n },\n beforeUnmount() {\n this.unbindMatchMediaListener();\n },\n methods: {\n bindMatchMediaListener() {\n if (!this.matchMediaListener) {\n const query = matchMedia(`(max-width: ${this.breakpoint})`);\n\n this.query = query;\n this.queryMatches = query.matches;\n\n this.matchMediaListener = () => {\n this.queryMatches = query.matches;\n this.mobileActive = false;\n };\n\n this.query.addEventListener('change', this.matchMediaListener);\n }\n },\n unbindMatchMediaListener() {\n if (this.matchMediaListener) {\n this.query.removeEventListener('change', this.matchMediaListener);\n this.matchMediaListener = null;\n }\n }\n },\n computed: {\n containerClass() {\n return [this.class, this.cx('root')];\n }\n },\n components: {\n DockSub\n }\n};\n</script>\n","<template>\n <div :class=\"containerClass\" :style=\"style\" v-bind=\"ptmi('root')\">\n <DockSub :model=\"model\" :templates=\"$slots\" :tooltipOptions=\"tooltipOptions\" :position=\"position\" :menuId=\"menuId\" :aria-label=\"ariaLabel\" :aria-labelledby=\"ariaLabelledby\" :tabindex=\"tabindex\" :pt=\"pt\" :unstyled=\"unstyled\"></DockSub>\n </div>\n</template>\n\n<script>\nimport BaseDock from './BaseDock.vue';\nimport DockSub from './DockSub.vue';\n\nexport default {\n name: 'Dock',\n extends: BaseDock,\n inheritAttrs: false,\n matchMediaListener: null,\n data() {\n return {\n query: null,\n queryMatches: false\n };\n },\n mounted() {\n this.bindMatchMediaListener();\n },\n beforeUnmount() {\n this.unbindMatchMediaListener();\n },\n methods: {\n bindMatchMediaListener() {\n if (!this.matchMediaListener) {\n const query = matchMedia(`(max-width: ${this.breakpoint})`);\n\n this.query = query;\n this.queryMatches = query.matches;\n\n this.matchMediaListener = () => {\n this.queryMatches = query.matches;\n this.mobileActive = false;\n };\n\n this.query.addEventListener('change', this.matchMediaListener);\n }\n },\n unbindMatchMediaListener() {\n if (this.matchMediaListener) {\n this.query.removeEventListener('change', this.matchMediaListener);\n this.matchMediaListener = null;\n }\n }\n },\n computed: {\n containerClass() {\n return [this.class, this.cx('root')];\n }\n },\n components: {\n DockSub\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","position","type","String","model","style","tooltipOptions","menuId","tabindex","Number","breakpoint","ariaLabel","ariaLabelledby","DockStyle","provide","$pcDock","$parentInstance","hostName","emits","Array","templates","data","currentIndex","focused","focusedOptionIndex","methods","getItemId","index","concat","idx","getItemProp","processedItem","item","resolve","undefined","getPTOptions","key","ptm","context","active","isItemActive","isSameMenuItem","event","currentTarget","isSameNode","target","closest","id","onListMouseLeave","onItemMouseEnter","onItemClick","command","originalEvent","onListFocus","changeFocusedOptionIndex","$emit","onListBlur","onListKeyDown","code","onArrowDownKey","preventDefault","onArrowUpKey","onHomeKey","onEndKey","onSpaceKey","optionIndex","findNextOptionIndex","findPrevOptionIndex","find","$refs","list","length","element","findSingle","anchorElement","click","menuitems","matchedOptionIndex","_toConsumableArray","findIndex","link","order","getAttribute","disabled","getMenuItemProps","action","mergeProps","cx","icon","computed","focusedOptionId","$id","directives","ripple","Ripple","tooltip","Tooltip","_openBlock","_createElementBlock","_mergeProps","_ctx","_createElementVNode","ref","$options","role","$props","$data","onFocus","apply","arguments","onBlur","onKeydown","onMouseleave","_Fragment","_renderList","label","onClick","$event","onMouseenter","_withDirectives","href","url","_createBlock","_resolveDynamicComponent","_directive_tooltip","value","BaseDock","inheritAttrs","matchMediaListener","query","queryMatches","mounted","bindMatchMediaListener","beforeUnmount","unbindMatchMediaListener","_this","matchMedia","matches","mobileActive","addEventListener","removeEventListener","containerClass","components","DockSub","ptmi","_createVNode","_component_DockSub","$slots","pt","unstyled"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/dock/BaseDock.vue","../../src/dock/DockSub.vue","../../src/dock/DockSub.vue?vue&type=template&id=3bb06619&lang.js","../../src/dock/Dock.vue","../../src/dock/Dock.vue?vue&type=template&id=2f238c36&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport DockStyle from 'primevue/dock/style';\n\nexport default {\n name: 'BaseDock',\n extends: BaseComponent,\n props: {\n position: {\n type: String,\n default: 'bottom'\n },\n model: null,\n class: null,\n style: null,\n tooltipOptions: null,\n menuId: {\n type: String,\n default: null\n },\n tabindex: {\n type: Number,\n default: 0\n },\n breakpoint: {\n type: String,\n default: '960px'\n },\n ariaLabel: {\n type: String,\n default: null\n },\n ariaLabelledby: {\n type: String,\n default: null\n }\n },\n style: DockStyle,\n provide() {\n return {\n $pcDock: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('listContainer')\" v-bind=\"ptm('listContainer')\">\n <ul\n ref=\"list\"\n :id=\"idx\"\n :class=\"cx('list')\"\n role=\"menu\"\n :aria-orientation=\"position === 'bottom' || position === 'top' ? 'horizontal' : 'vertical'\"\n :aria-activedescendant=\"focused ? focusedOptionId : undefined\"\n :tabindex=\"tabindex\"\n :aria-label=\"ariaLabel\"\n :aria-labelledby=\"ariaLabelledby\"\n @focus=\"onListFocus\"\n @blur=\"onListBlur\"\n @keydown=\"onListKeyDown\"\n @mouseleave=\"onListMouseLeave\"\n v-bind=\"ptm('list')\"\n >\n <template v-for=\"(processedItem, index) of model\" :key=\"index\">\n <li\n :id=\"getItemId(index)\"\n :class=\"cx('item', { processedItem, id: getItemId(index) })\"\n role=\"menuitem\"\n :aria-label=\"processedItem.label\"\n :aria-disabled=\"disabled(processedItem)\"\n @click=\"onItemClick($event, processedItem)\"\n @mouseenter=\"onItemMouseEnter(index)\"\n v-bind=\"getPTOptions('item', processedItem, index)\"\n :data-p-focused=\"isItemActive(getItemId(index))\"\n :data-p-disabled=\"disabled(processedItem) || false\"\n >\n <div :class=\"cx('itemContent')\" v-bind=\"getPTOptions('itemContent', processedItem, index)\">\n <template v-if=\"!templates['item']\">\n <a\n v-tooltip:[tooltipOptions]=\"{ value: processedItem.label, disabled: !tooltipOptions }\"\n :href=\"processedItem.url\"\n :class=\"cx('itemLink')\"\n :target=\"processedItem.target\"\n tabindex=\"-1\"\n v-bind=\"getPTOptions('itemLink', processedItem, index)\"\n >\n <!-- TODO: icon deprecated since v4.0-->\n <template v-if=\"!templates['icon'] && !templates['itemicon']\">\n <span v-ripple :class=\"[cx('itemIcon'), processedItem.icon]\" v-bind=\"getPTOptions('itemIcon', processedItem, index)\"></span>\n </template>\n <component v-else :is=\"templates['icon'] || templates['itemicon']\" :item=\"processedItem\" :class=\"cx('itemIcon')\"></component>\n </a>\n </template>\n <component v-else :is=\"templates['item']\" :item=\"processedItem\" :index=\"index\" :label=\"processedItem.label\" :props=\"getMenuItemProps(processedItem, index)\"></component>\n </div>\n </li>\n </template>\n </ul>\n </div>\n</template>\n\n<script>\nimport { find, findSingle } from '@primeuix/utils/dom';\nimport { resolve } from '@primeuix/utils/object';\nimport BaseComponent from '@primevue/core/basecomponent';\nimport Ripple from 'primevue/ripple';\nimport Tooltip from 'primevue/tooltip';\nimport { mergeProps } from 'vue';\n\nexport default {\n name: 'DockSub',\n hostName: 'Dock',\n extends: BaseComponent,\n emits: ['focus', 'blur'],\n props: {\n position: {\n type: String,\n default: 'bottom'\n },\n model: {\n type: Array,\n default: null\n },\n templates: {\n type: null,\n default: null\n },\n tooltipOptions: null,\n menuId: {\n type: String,\n default: null\n },\n tabindex: {\n type: Number,\n default: 0\n },\n ariaLabel: {\n type: String,\n default: null\n },\n ariaLabelledby: {\n type: String,\n default: null\n }\n },\n data() {\n return {\n currentIndex: -3,\n focused: false,\n focusedOptionIndex: -1\n };\n },\n methods: {\n getItemId(index) {\n return `${this.idx}_${index}`;\n },\n getItemProp(processedItem, name) {\n return processedItem && processedItem.item ? resolve(processedItem.item[name]) : undefined;\n },\n getPTOptions(key, item, index) {\n return this.ptm(key, {\n context: {\n index,\n item,\n active: this.isItemActive(this.getItemId(index))\n }\n });\n },\n isSameMenuItem(event) {\n return event.currentTarget && (event.currentTarget.isSameNode(event.target) || event.currentTarget.isSameNode(event.target.closest('[data-pc-section=\"item\"]')));\n },\n isItemActive(id) {\n return id === this.focusedOptionIndex;\n },\n onListMouseLeave() {\n this.currentIndex = -3;\n },\n onItemMouseEnter(index) {\n this.currentIndex = index;\n },\n onItemClick(event, processedItem) {\n if (this.isSameMenuItem(event)) {\n const command = this.getItemProp(processedItem, 'command');\n\n command && command({ originalEvent: event, item: processedItem.item });\n }\n },\n onListFocus(event) {\n this.focused = true;\n this.changeFocusedOptionIndex(0);\n this.$emit('focus', event);\n },\n onListBlur(event) {\n this.focused = false;\n this.focusedOptionIndex = -1;\n this.$emit('blur', event);\n },\n onListKeyDown(event) {\n switch (event.code) {\n case 'ArrowDown': {\n if (this.position === 'left' || this.position === 'right') this.onArrowDownKey();\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n if (this.position === 'left' || this.position === 'right') this.onArrowUpKey();\n event.preventDefault();\n break;\n }\n\n case 'ArrowRight': {\n if (this.position === 'top' || this.position === 'bottom') this.onArrowDownKey();\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n if (this.position === 'top' || this.position === 'bottom') this.onArrowUpKey();\n event.preventDefault();\n break;\n }\n\n case 'Home': {\n this.onHomeKey();\n event.preventDefault();\n break;\n }\n\n case 'End': {\n this.onEndKey();\n event.preventDefault();\n break;\n }\n\n case 'Enter':\n case 'NumpadEnter':\n\n case 'Space': {\n this.onSpaceKey(event);\n event.preventDefault();\n break;\n }\n\n default:\n break;\n }\n },\n onArrowDownKey() {\n const optionIndex = this.findNextOptionIndex(this.focusedOptionIndex);\n\n this.changeFocusedOptionIndex(optionIndex);\n },\n onArrowUpKey() {\n const optionIndex = this.findPrevOptionIndex(this.focusedOptionIndex);\n\n this.changeFocusedOptionIndex(optionIndex);\n },\n onHomeKey() {\n this.changeFocusedOptionIndex(0);\n },\n onEndKey() {\n this.changeFocusedOptionIndex(find(this.$refs.list, 'li[data-pc-section=\"item\"][data-p-disabled=\"false\"]').length - 1);\n },\n onSpaceKey() {\n const element = findSingle(this.$refs.list, `li[id=\"${`${this.focusedOptionIndex}`}\"]`);\n const anchorElement = element && findSingle(element, '[data-pc-section=\"itemlink\"]');\n\n anchorElement ? anchorElement.click() : element && element.click();\n },\n findNextOptionIndex(index) {\n const menuitems = find(this.$refs.list, 'li[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n const matchedOptionIndex = [...menuitems].findIndex((link) => link.id === index);\n\n return matchedOptionIndex > -1 ? matchedOptionIndex + 1 : 0;\n },\n findPrevOptionIndex(index) {\n const menuitems = find(this.$refs.list, 'li[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n const matchedOptionIndex = [...menuitems].findIndex((link) => link.id === index);\n\n return matchedOptionIndex > -1 ? matchedOptionIndex - 1 : 0;\n },\n changeFocusedOptionIndex(index) {\n const menuitems = find(this.$refs.list, 'li[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n\n let order = index >= menuitems.length ? menuitems.length - 1 : index < 0 ? 0 : index;\n\n this.focusedOptionIndex = menuitems[order].getAttribute('id');\n },\n disabled(item) {\n return typeof item.disabled === 'function' ? item.disabled() : item.disabled;\n },\n getMenuItemProps(item, index) {\n return {\n action: mergeProps(\n {\n tabindex: -1,\n class: this.cx('itemLink')\n },\n this.getPTOptions('itemLink', item, index)\n ),\n icon: mergeProps(\n {\n class: [this.cx('itemIcon'), item.icon]\n },\n this.getPTOptions('itemIcon', item, index)\n )\n };\n }\n },\n computed: {\n focusedOptionId() {\n return this.focusedOptionIndex !== -1 ? this.focusedOptionIndex : null;\n },\n idx() {\n return this.menuId || this.$id;\n }\n },\n directives: {\n ripple: Ripple,\n tooltip: Tooltip\n }\n};\n</script>\n","<template>\n <div :class=\"cx('listContainer')\" v-bind=\"ptm('listContainer')\">\n <ul\n ref=\"list\"\n :id=\"idx\"\n :class=\"cx('list')\"\n role=\"menu\"\n :aria-orientation=\"position === 'bottom' || position === 'top' ? 'horizontal' : 'vertical'\"\n :aria-activedescendant=\"focused ? focusedOptionId : undefined\"\n :tabindex=\"tabindex\"\n :aria-label=\"ariaLabel\"\n :aria-labelledby=\"ariaLabelledby\"\n @focus=\"onListFocus\"\n @blur=\"onListBlur\"\n @keydown=\"onListKeyDown\"\n @mouseleave=\"onListMouseLeave\"\n v-bind=\"ptm('list')\"\n >\n <template v-for=\"(processedItem, index) of model\" :key=\"index\">\n <li\n :id=\"getItemId(index)\"\n :class=\"cx('item', { processedItem, id: getItemId(index) })\"\n role=\"menuitem\"\n :aria-label=\"processedItem.label\"\n :aria-disabled=\"disabled(processedItem)\"\n @click=\"onItemClick($event, processedItem)\"\n @mouseenter=\"onItemMouseEnter(index)\"\n v-bind=\"getPTOptions('item', processedItem, index)\"\n :data-p-focused=\"isItemActive(getItemId(index))\"\n :data-p-disabled=\"disabled(processedItem) || false\"\n >\n <div :class=\"cx('itemContent')\" v-bind=\"getPTOptions('itemContent', processedItem, index)\">\n <template v-if=\"!templates['item']\">\n <a\n v-tooltip:[tooltipOptions]=\"{ value: processedItem.label, disabled: !tooltipOptions }\"\n :href=\"processedItem.url\"\n :class=\"cx('itemLink')\"\n :target=\"processedItem.target\"\n tabindex=\"-1\"\n v-bind=\"getPTOptions('itemLink', processedItem, index)\"\n >\n <!-- TODO: icon deprecated since v4.0-->\n <template v-if=\"!templates['icon'] && !templates['itemicon']\">\n <span v-ripple :class=\"[cx('itemIcon'), processedItem.icon]\" v-bind=\"getPTOptions('itemIcon', processedItem, index)\"></span>\n </template>\n <component v-else :is=\"templates['icon'] || templates['itemicon']\" :item=\"processedItem\" :class=\"cx('itemIcon')\"></component>\n </a>\n </template>\n <component v-else :is=\"templates['item']\" :item=\"processedItem\" :index=\"index\" :label=\"processedItem.label\" :props=\"getMenuItemProps(processedItem, index)\"></component>\n </div>\n </li>\n </template>\n </ul>\n </div>\n</template>\n\n<script>\nimport { find, findSingle } from '@primeuix/utils/dom';\nimport { resolve } from '@primeuix/utils/object';\nimport BaseComponent from '@primevue/core/basecomponent';\nimport Ripple from 'primevue/ripple';\nimport Tooltip from 'primevue/tooltip';\nimport { mergeProps } from 'vue';\n\nexport default {\n name: 'DockSub',\n hostName: 'Dock',\n extends: BaseComponent,\n emits: ['focus', 'blur'],\n props: {\n position: {\n type: String,\n default: 'bottom'\n },\n model: {\n type: Array,\n default: null\n },\n templates: {\n type: null,\n default: null\n },\n tooltipOptions: null,\n menuId: {\n type: String,\n default: null\n },\n tabindex: {\n type: Number,\n default: 0\n },\n ariaLabel: {\n type: String,\n default: null\n },\n ariaLabelledby: {\n type: String,\n default: null\n }\n },\n data() {\n return {\n currentIndex: -3,\n focused: false,\n focusedOptionIndex: -1\n };\n },\n methods: {\n getItemId(index) {\n return `${this.idx}_${index}`;\n },\n getItemProp(processedItem, name) {\n return processedItem && processedItem.item ? resolve(processedItem.item[name]) : undefined;\n },\n getPTOptions(key, item, index) {\n return this.ptm(key, {\n context: {\n index,\n item,\n active: this.isItemActive(this.getItemId(index))\n }\n });\n },\n isSameMenuItem(event) {\n return event.currentTarget && (event.currentTarget.isSameNode(event.target) || event.currentTarget.isSameNode(event.target.closest('[data-pc-section=\"item\"]')));\n },\n isItemActive(id) {\n return id === this.focusedOptionIndex;\n },\n onListMouseLeave() {\n this.currentIndex = -3;\n },\n onItemMouseEnter(index) {\n this.currentIndex = index;\n },\n onItemClick(event, processedItem) {\n if (this.isSameMenuItem(event)) {\n const command = this.getItemProp(processedItem, 'command');\n\n command && command({ originalEvent: event, item: processedItem.item });\n }\n },\n onListFocus(event) {\n this.focused = true;\n this.changeFocusedOptionIndex(0);\n this.$emit('focus', event);\n },\n onListBlur(event) {\n this.focused = false;\n this.focusedOptionIndex = -1;\n this.$emit('blur', event);\n },\n onListKeyDown(event) {\n switch (event.code) {\n case 'ArrowDown': {\n if (this.position === 'left' || this.position === 'right') this.onArrowDownKey();\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n if (this.position === 'left' || this.position === 'right') this.onArrowUpKey();\n event.preventDefault();\n break;\n }\n\n case 'ArrowRight': {\n if (this.position === 'top' || this.position === 'bottom') this.onArrowDownKey();\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n if (this.position === 'top' || this.position === 'bottom') this.onArrowUpKey();\n event.preventDefault();\n break;\n }\n\n case 'Home': {\n this.onHomeKey();\n event.preventDefault();\n break;\n }\n\n case 'End': {\n this.onEndKey();\n event.preventDefault();\n break;\n }\n\n case 'Enter':\n case 'NumpadEnter':\n\n case 'Space': {\n this.onSpaceKey(event);\n event.preventDefault();\n break;\n }\n\n default:\n break;\n }\n },\n onArrowDownKey() {\n const optionIndex = this.findNextOptionIndex(this.focusedOptionIndex);\n\n this.changeFocusedOptionIndex(optionIndex);\n },\n onArrowUpKey() {\n const optionIndex = this.findPrevOptionIndex(this.focusedOptionIndex);\n\n this.changeFocusedOptionIndex(optionIndex);\n },\n onHomeKey() {\n this.changeFocusedOptionIndex(0);\n },\n onEndKey() {\n this.changeFocusedOptionIndex(find(this.$refs.list, 'li[data-pc-section=\"item\"][data-p-disabled=\"false\"]').length - 1);\n },\n onSpaceKey() {\n const element = findSingle(this.$refs.list, `li[id=\"${`${this.focusedOptionIndex}`}\"]`);\n const anchorElement = element && findSingle(element, '[data-pc-section=\"itemlink\"]');\n\n anchorElement ? anchorElement.click() : element && element.click();\n },\n findNextOptionIndex(index) {\n const menuitems = find(this.$refs.list, 'li[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n const matchedOptionIndex = [...menuitems].findIndex((link) => link.id === index);\n\n return matchedOptionIndex > -1 ? matchedOptionIndex + 1 : 0;\n },\n findPrevOptionIndex(index) {\n const menuitems = find(this.$refs.list, 'li[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n const matchedOptionIndex = [...menuitems].findIndex((link) => link.id === index);\n\n return matchedOptionIndex > -1 ? matchedOptionIndex - 1 : 0;\n },\n changeFocusedOptionIndex(index) {\n const menuitems = find(this.$refs.list, 'li[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n\n let order = index >= menuitems.length ? menuitems.length - 1 : index < 0 ? 0 : index;\n\n this.focusedOptionIndex = menuitems[order].getAttribute('id');\n },\n disabled(item) {\n return typeof item.disabled === 'function' ? item.disabled() : item.disabled;\n },\n getMenuItemProps(item, index) {\n return {\n action: mergeProps(\n {\n tabindex: -1,\n class: this.cx('itemLink')\n },\n this.getPTOptions('itemLink', item, index)\n ),\n icon: mergeProps(\n {\n class: [this.cx('itemIcon'), item.icon]\n },\n this.getPTOptions('itemIcon', item, index)\n )\n };\n }\n },\n computed: {\n focusedOptionId() {\n return this.focusedOptionIndex !== -1 ? this.focusedOptionIndex : null;\n },\n idx() {\n return this.menuId || this.$id;\n }\n },\n directives: {\n ripple: Ripple,\n tooltip: Tooltip\n }\n};\n</script>\n","<template>\n <div :class=\"containerClass\" :style=\"style\" v-bind=\"ptmi('root')\">\n <DockSub :model=\"model\" :templates=\"$slots\" :tooltipOptions=\"tooltipOptions\" :position=\"position\" :menuId=\"menuId\" :aria-label=\"ariaLabel\" :aria-labelledby=\"ariaLabelledby\" :tabindex=\"tabindex\" :pt=\"pt\" :unstyled=\"unstyled\"></DockSub>\n </div>\n</template>\n\n<script>\nimport BaseDock from './BaseDock.vue';\nimport DockSub from './DockSub.vue';\n\nexport default {\n name: 'Dock',\n extends: BaseDock,\n inheritAttrs: false,\n matchMediaListener: null,\n data() {\n return {\n query: null,\n queryMatches: false\n };\n },\n mounted() {\n this.bindMatchMediaListener();\n },\n beforeUnmount() {\n this.unbindMatchMediaListener();\n },\n methods: {\n bindMatchMediaListener() {\n if (!this.matchMediaListener) {\n const query = matchMedia(`(max-width: ${this.breakpoint})`);\n\n this.query = query;\n this.queryMatches = query.matches;\n\n this.matchMediaListener = () => {\n this.queryMatches = query.matches;\n this.mobileActive = false;\n };\n\n this.query.addEventListener('change', this.matchMediaListener);\n }\n },\n unbindMatchMediaListener() {\n if (this.matchMediaListener) {\n this.query.removeEventListener('change', this.matchMediaListener);\n this.matchMediaListener = null;\n }\n }\n },\n computed: {\n containerClass() {\n return [this.class, this.cx('root')];\n }\n },\n components: {\n DockSub\n }\n};\n</script>\n","<template>\n <div :class=\"containerClass\" :style=\"style\" v-bind=\"ptmi('root')\">\n <DockSub :model=\"model\" :templates=\"$slots\" :tooltipOptions=\"tooltipOptions\" :position=\"position\" :menuId=\"menuId\" :aria-label=\"ariaLabel\" :aria-labelledby=\"ariaLabelledby\" :tabindex=\"tabindex\" :pt=\"pt\" :unstyled=\"unstyled\"></DockSub>\n </div>\n</template>\n\n<script>\nimport BaseDock from './BaseDock.vue';\nimport DockSub from './DockSub.vue';\n\nexport default {\n name: 'Dock',\n extends: BaseDock,\n inheritAttrs: false,\n matchMediaListener: null,\n data() {\n return {\n query: null,\n queryMatches: false\n };\n },\n mounted() {\n this.bindMatchMediaListener();\n },\n beforeUnmount() {\n this.unbindMatchMediaListener();\n },\n methods: {\n bindMatchMediaListener() {\n if (!this.matchMediaListener) {\n const query = matchMedia(`(max-width: ${this.breakpoint})`);\n\n this.query = query;\n this.queryMatches = query.matches;\n\n this.matchMediaListener = () => {\n this.queryMatches = query.matches;\n this.mobileActive = false;\n };\n\n this.query.addEventListener('change', this.matchMediaListener);\n }\n },\n unbindMatchMediaListener() {\n if (this.matchMediaListener) {\n this.query.removeEventListener('change', this.matchMediaListener);\n this.matchMediaListener = null;\n }\n }\n },\n computed: {\n containerClass() {\n return [this.class, this.cx('root')];\n }\n },\n components: {\n DockSub\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","position","type","String","model","style","tooltipOptions","menuId","tabindex","Number","breakpoint","ariaLabel","ariaLabelledby","DockStyle","provide","$pcDock","$parentInstance","hostName","emits","Array","templates","data","currentIndex","focused","focusedOptionIndex","methods","getItemId","index","concat","idx","getItemProp","processedItem","item","resolve","undefined","getPTOptions","key","ptm","context","active","isItemActive","isSameMenuItem","event","currentTarget","isSameNode","target","closest","id","onListMouseLeave","onItemMouseEnter","onItemClick","command","originalEvent","onListFocus","changeFocusedOptionIndex","$emit","onListBlur","onListKeyDown","code","onArrowDownKey","preventDefault","onArrowUpKey","onHomeKey","onEndKey","onSpaceKey","optionIndex","findNextOptionIndex","findPrevOptionIndex","find","$refs","list","length","element","findSingle","anchorElement","click","menuitems","matchedOptionIndex","_toConsumableArray","findIndex","link","order","getAttribute","disabled","getMenuItemProps","action","mergeProps","cx","icon","computed","focusedOptionId","$id","directives","ripple","Ripple","tooltip","Tooltip","_openBlock","_createElementBlock","_mergeProps","_ctx","_createElementVNode","ref","$options","role","$props","$data","onFocus","apply","arguments","onBlur","onKeydown","onMouseleave","_Fragment","_renderList","label","onClick","$event","onMouseenter","_withDirectives","href","url","_createBlock","_resolveDynamicComponent","_directive_tooltip","value","BaseDock","inheritAttrs","matchMediaListener","query","queryMatches","mounted","bindMatchMediaListener","beforeUnmount","unbindMatchMediaListener","_this","matchMedia","matches","mobileActive","addEventListener","removeEventListener","containerClass","components","DockSub","ptmi","_createVNode","_component_DockSub","$slots","pt","unstyled"],"mappings":"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"}
|
package/dynamicdialog/index.mjs
CHANGED
|
@@ -89,7 +89,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
89
89
|
"onUpdate:visible": function onUpdateVisible($event) {
|
|
90
90
|
return instance.visible = $event;
|
|
91
91
|
},
|
|
92
|
-
_instance: instance
|
|
92
|
+
_instance: instance
|
|
93
|
+
}, {
|
|
93
94
|
ref_for: true
|
|
94
95
|
}, instance.options.props, {
|
|
95
96
|
onHide: function onHide($event) {
|
|
@@ -110,7 +111,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
110
111
|
fn: withCtx(function () {
|
|
111
112
|
return [(openBlock(true), createElementBlock(Fragment, null, renderList($options.getTemplateItems(instance.options.templates.header), function (header, index) {
|
|
112
113
|
return openBlock(), createBlock(resolveDynamicComponent(header), mergeProps({
|
|
113
|
-
key: index + '_header'
|
|
114
|
+
key: index + '_header'
|
|
115
|
+
}, {
|
|
114
116
|
ref_for: true
|
|
115
117
|
}, instance.options.emits), null, 16);
|
|
116
118
|
}), 128))];
|
|
@@ -121,7 +123,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
121
123
|
fn: withCtx(function () {
|
|
122
124
|
return [(openBlock(true), createElementBlock(Fragment, null, renderList($options.getTemplateItems(instance.options.templates.footer), function (footer, index) {
|
|
123
125
|
return openBlock(), createBlock(resolveDynamicComponent(footer), mergeProps({
|
|
124
|
-
key: index + '_footer'
|
|
126
|
+
key: index + '_footer'
|
|
127
|
+
}, {
|
|
125
128
|
ref_for: true
|
|
126
129
|
}, instance.options.emits), null, 16);
|
|
127
130
|
}), 128))];
|
|
@@ -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=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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"}
|
|
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":";;;;;;;AAIA,eAAe;AACXA,EAAAA,IAAI,EAAE,mBAAmB;AACzB,EAAA,SAAA,EAASC,aAAa;EACtBC,KAAK,EAAE,EAAE;AACTC,EAAAA,KAAK,EAAEC,kBAAkB;EACzBC,OAAO,EAAA,SAAPA,OAAOA,GAAG;IACN,OAAO;AACHC,MAAAA,gBAAgB,EAAE,IAAI;AACtBC,MAAAA,eAAe,EAAE;KACpB;AACL;AACJ,CAAC;;ACKD,aAAe;AACXP,EAAAA,IAAI,EAAE,eAAe;AACrB,EAAA,SAAA,EAASQ,QAAiB;AAC1BC,EAAAA,YAAY,EAAE,KAAK;EACnBC,IAAI,EAAA,SAAJA,IAAIA,GAAG;IACH,OAAO;AACHC,MAAAA,WAAW,EAAE;KAChB;GACJ;AACDC,EAAAA,YAAY,EAAE,IAAI;AAClBC,EAAAA,aAAa,EAAE,IAAI;AACnBC,EAAAA,eAAe,EAAE,IAAI;EACrBC,OAAO,EAAA,SAAPA,OAAOA,GAAG;AAAA,IAAA,IAAAC,KAAA,GAAA,IAAA;AACN,IAAA,IAAI,CAACJ,YAAa,GAAE,UAAAK,IAAA,EAAkB;AAAA,MAAA,IAAfC,QAAO,GAAAD,IAAA,CAAPC,QAAO;AAC1B,MAAA,IAAMC,GAAI,GAAEC,IAAI,EAAG,GAAE,iBAAiB;MAEtCF,QAAQ,CAACG,OAAM,GAAI,IAAI;MACvBH,QAAQ,CAACC,GAAE,GAAIA,GAAG;AAClBH,MAAAA,KAAI,CAACL,WAAW,CAACQ,GAAG,CAAA,GAAID,QAAQ;KACnC;AAED,IAAA,IAAI,CAACL,gBAAgB,UAAAS,KAAA,EAA0B;AAAA,MAAA,IAAvBJ,QAAQ,GAAAI,KAAA,CAARJ,QAAQ;QAAEK,eAAAA;AAC9B,MAAA,IAAMJ,MAAMD,QAAQ,CAACC,GAAG;AACxB,MAAA,IAAML,eAAgB,GAAEE,KAAI,CAACL,WAAW,CAACQ,GAAG,CAAC;AAE7C,MAAA,IAAIL,eAAe,EAAE;QACjBA,eAAe,CAACO,OAAQ,GAAE,KAAK;QAC/BP,eAAe,CAACU,OAAO,CAACC,WAAWX,eAAe,CAACU,OAAO,CAACC,OAAO,CAAC;AAAEf,UAAAA,IAAI,EAAEa,MAAM;AAAEG,UAAAA,IAAI,EAAE;AAAe,SAAC,CAAC;QAE1GV,KAAI,CAACF,eAAc,GAAIA,eAAe;AAC1C;KACH;IAEDa,qBAAqB,CAACC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAChB,YAAY,CAAC;IACnDe,qBAAqB,CAACC,EAAE,CAAC,OAAO,EAAE,IAAI,CAACf,aAAa,CAAC;GACxD;EACDgB,aAAa,EAAA,SAAbA,aAAaA,GAAG;IACZF,qBAAqB,CAACG,GAAG,CAAC,MAAM,EAAE,IAAI,CAAClB,YAAY,CAAC;IACpDe,qBAAqB,CAACG,GAAG,CAAC,OAAO,EAAE,IAAI,CAACjB,aAAa,CAAC;GACzD;AACDkB,EAAAA,OAAO,EAAE;AACLC,IAAAA,YAAY,EAAZA,SAAAA,YAAYA,CAACd,QAAQ,EAAE;AACnB,MAAA,CAAC,IAAI,CAACJ,mBAAmBI,QAAQ,CAACM,OAAO,CAACC,OAAQ,IAAGP,QAAQ,CAACM,OAAO,CAACC,OAAO,CAAC;AAAEC,QAAAA,IAAI,EAAE;AAAe,OAAC,CAAC;KAC1G;AACDO,IAAAA,iBAAiB,EAAjBA,SAAAA,iBAAiBA,CAACf,QAAQ,EAAE;AACxB,MAAA,IAAI,CAACJ,eAAc,IAAK,OAAO,IAAI,CAACA,eAAe;MACnD,IAAI,CAACA,kBAAkB,IAAI;AAC3B,MAAA,OAAO,IAAI,CAACH,WAAW,CAACO,QAAQ,CAACC,GAAG,CAAC;KACxC;AACDe,IAAAA,gBAAgB,EAAhBA,SAAAA,gBAAgBA,CAACC,QAAQ,EAAE;MACvB,OAAOC,KAAK,CAACC,OAAO,CAACF,QAAQ,CAAE,GAAEA,WAAW,CAACA,QAAQ,CAAC;AAC1D;GACH;AACDG,EAAAA,UAAU,EAAE;AACRC,IAAAA,OAAO,EAAEC;AACb;AACJ,CAAC;;;;EC3EG,OAAAC,SAAA,CAAA,IAAA,CAAA,EAAAC,kBAAA,CAUUC,QAV0B,EAAA,IAAA,EAAAC,UAAA,CAAAC,KAAA,CAAAlC,WAAW,EAA7B,UAAAO,QAAQ,EAAEC,GAAG,EAAA;IAC3B,OAAAsB,SAAA,EAAA,EAAAK,WAAA,CAQSC,oBARTC,UAQS,CAAA;WAT0C7B,GAAG;MACrCE,OAAO,EAAEH,QAAQ,CAACG,OAAO;AAAhB,MAAA,kBAAA,EAAA,SAAA4B,eAAAA,CAAAC,MAAA,EAAA;AAAA,QAAA,OAAAhC,QAAQ,CAACG,OAAO,GAAA6B,MAAA;OAAA;AAAGC,MAAAA,SAAS,EAAEjC;;;OAAkBA,QAAQ,CAACM,OAAO,CAACtB,KAAK,EAAA;AAAGkD,MAAAA,MAAI,EAAA,SAAJA,MAAIA,CAAAF,MAAA,EAAA;AAAA,QAAA,OAAEG,QAAY,CAAArB,YAAA,CAACd,QAAQ,CAAA;OAAA;AAAIoC,MAAAA,WAAU,EAAA,SAAVA,WAAUA,CAAAJ,MAAA,EAAA;AAAA,QAAA,OAAEG,QAAiB,CAAApB,iBAAA,CAACf,QAAQ,CAAA;AAAA;;yBAIpK,YAAA;AAAA,QAAA,OAA6E,eAA7E4B,WAA6E,CAAAS,uBAAA,CAA7DrC,QAAQ,CAACsC,OAAO,CAAA,EAAhCR,UAA6E,CAAA;AAAAS,UAAAA,OAAA,EAAA;AAAA,SAAA,EAAnCvC,QAAQ,CAACM,OAAO,CAACkC,KAAK,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA;;;QAHhDxC,QAAQ,CAACM,OAAO,CAACmC,SAAU,IAAGzC,QAAQ,CAACM,OAAO,CAACmC,SAAS,CAACC,MAAM;YAAG,QAAM;kBACzE,YAAA;AAAA,QAAA,OAA+E,EAA1FnB,SAAA,CAAA,IAAA,CAAA,EAAAC,kBAAA,CAA2KC,QAAtI,EAAA,IAAA,EAAAC,UAAA,CAAAS,QAAA,CAAAnB,gBAAgB,CAAChB,QAAQ,CAACM,OAAO,CAACmC,SAAS,CAACC,MAAM,CAApE,EAAA,UAAAA,MAAM,EAAEC,KAAK,EAAA;8BAAhCf,WAA2K,CAAAS,uBAAA,CAA5EK,MAAM,CAAA,EAArGZ,UAA2K,CAAA;YAAnE7B,GAAG,EAAE0C,KAAI,GAAA;;;aAAuB3C,QAAQ,CAACM,OAAO,CAACkC,KAAK,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA;;;;mBAGlJxC,QAAQ,CAACM,OAAO,CAACmC,SAAU,IAAGzC,QAAQ,CAACM,OAAO,CAACmC,SAAS,CAACG,MAAM;YAAG,QAAM;kBACzE,YAAA;AAAA,QAAA,OAA+E,EAA1FrB,SAAA,CAAA,IAAA,CAAA,EAAAC,kBAAA,CAA2KC,QAAtI,EAAA,IAAA,EAAAC,UAAA,CAAAS,QAAA,CAAAnB,gBAAgB,CAAChB,QAAQ,CAACM,OAAO,CAACmC,SAAS,CAACG,MAAM,CAApE,EAAA,UAAAA,MAAM,EAAED,KAAK,EAAA;8BAAhCf,WAA2K,CAAAS,uBAAA,CAA5EO,MAAM,CAAA,EAArGd,UAA2K,CAAA;YAAnE7B,GAAG,EAAE0C,KAAI,GAAA;;;aAAuB3C,QAAQ,CAACM,OAAO,CAACkC,KAAK,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA;;;;;;;;;;;;"}
|
|
@@ -75,8 +75,8 @@
|
|
|
75
75
|
</slot>
|
|
76
76
|
</template>
|
|
77
77
|
</Button>
|
|
78
|
-
<slot v-if="!auto" name="filelabel" :class="cx('filelabel')">
|
|
79
|
-
<span :class="cx('filelabel')"
|
|
78
|
+
<slot v-if="!auto" name="filelabel" :class="cx('filelabel')" :files="files">
|
|
79
|
+
<span :class="cx('filelabel')">
|
|
80
80
|
{{ basicFileChosenLabel }}
|
|
81
81
|
</span>
|
|
82
82
|
</slot>
|
|
@@ -172,7 +172,6 @@ export default {
|
|
|
172
172
|
}
|
|
173
173
|
|
|
174
174
|
this.$emit('uploader', { files: this.files });
|
|
175
|
-
this.clear();
|
|
176
175
|
} else {
|
|
177
176
|
let xhr = new XMLHttpRequest();
|
|
178
177
|
let formData = new FormData();
|
package/fileupload/index.mjs
CHANGED
|
@@ -197,23 +197,28 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
197
197
|
return openBlock(true), createElementBlock(Fragment, null, renderList($props.files, function (file, index) {
|
|
198
198
|
return openBlock(), createElementBlock("div", mergeProps({
|
|
199
199
|
key: file.name + file.type + file.size,
|
|
200
|
-
"class": _ctx.cx('file')
|
|
200
|
+
"class": _ctx.cx('file')
|
|
201
|
+
}, {
|
|
201
202
|
ref_for: true
|
|
202
203
|
}, _ctx.ptm('file')), [createElementVNode("img", mergeProps({
|
|
203
204
|
role: "presentation",
|
|
204
205
|
"class": _ctx.cx('fileThumbnail'),
|
|
205
206
|
alt: file.name,
|
|
206
207
|
src: file.objectURL,
|
|
207
|
-
width: $props.previewWidth
|
|
208
|
+
width: $props.previewWidth
|
|
209
|
+
}, {
|
|
208
210
|
ref_for: true
|
|
209
211
|
}, _ctx.ptm('fileThumbnail')), null, 16, _hoisted_1$1), createElementVNode("div", mergeProps({
|
|
210
|
-
"class": _ctx.cx('fileInfo')
|
|
212
|
+
"class": _ctx.cx('fileInfo')
|
|
213
|
+
}, {
|
|
211
214
|
ref_for: true
|
|
212
215
|
}, _ctx.ptm('fileInfo')), [createElementVNode("div", mergeProps({
|
|
213
|
-
"class": _ctx.cx('fileName')
|
|
216
|
+
"class": _ctx.cx('fileName')
|
|
217
|
+
}, {
|
|
214
218
|
ref_for: true
|
|
215
219
|
}, _ctx.ptm('fileName')), toDisplayString(file.name), 17), createElementVNode("span", mergeProps({
|
|
216
|
-
"class": _ctx.cx('fileSize')
|
|
220
|
+
"class": _ctx.cx('fileSize')
|
|
221
|
+
}, {
|
|
217
222
|
ref_for: true
|
|
218
223
|
}, _ctx.ptm('fileSize')), toDisplayString($options.formatSize(file.size)), 17)], 16), createVNode(_component_Badge, {
|
|
219
224
|
value: $props.badgeValue,
|
|
@@ -222,7 +227,8 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
222
227
|
unstyled: _ctx.unstyled,
|
|
223
228
|
pt: _ctx.ptm('pcFileBadge')
|
|
224
229
|
}, null, 8, ["value", "class", "severity", "unstyled", "pt"]), createElementVNode("div", mergeProps({
|
|
225
|
-
"class": _ctx.cx('fileActions')
|
|
230
|
+
"class": _ctx.cx('fileActions')
|
|
231
|
+
}, {
|
|
226
232
|
ref_for: true
|
|
227
233
|
}, _ctx.ptm('fileActions')), [createVNode(_component_Button, {
|
|
228
234
|
onClick: function onClick($event) {
|
|
@@ -244,7 +250,8 @@ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
244
250
|
}, null, 8, ["class", "file", "index"])) : (openBlock(), createBlock(_component_TimesIcon, mergeProps({
|
|
245
251
|
key: 1,
|
|
246
252
|
"class": iconProps["class"],
|
|
247
|
-
"aria-hidden": "true"
|
|
253
|
+
"aria-hidden": "true"
|
|
254
|
+
}, {
|
|
248
255
|
ref_for: true
|
|
249
256
|
}, _ctx.ptm('pcFileRemoveButton')['icon']), null, 16, ["class"]))];
|
|
250
257
|
}),
|
|
@@ -343,7 +350,6 @@ var script = {
|
|
|
343
350
|
this.$emit('uploader', {
|
|
344
351
|
files: this.files
|
|
345
352
|
});
|
|
346
|
-
this.clear();
|
|
347
353
|
} else {
|
|
348
354
|
var xhr = new XMLHttpRequest();
|
|
349
355
|
var formData = new FormData();
|
|
@@ -634,8 +640,7 @@ var script = {
|
|
|
634
640
|
};
|
|
635
641
|
|
|
636
642
|
var _hoisted_1 = ["multiple", "accept", "disabled"];
|
|
637
|
-
var _hoisted_2 = ["
|
|
638
|
-
var _hoisted_3 = ["accept", "disabled", "multiple"];
|
|
643
|
+
var _hoisted_2 = ["accept", "disabled", "multiple"];
|
|
639
644
|
function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
640
645
|
var _component_Button = resolveComponent("Button");
|
|
641
646
|
var _component_ProgressBar = resolveComponent("ProgressBar");
|
|
@@ -837,12 +842,12 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
837
842
|
_: 3
|
|
838
843
|
}, 16, ["label", "class", "style", "disabled", "unstyled", "onMouseup", "onKeydown", "onFocus", "onBlur", "pt"]), !_ctx.auto ? renderSlot(_ctx.$slots, "filelabel", {
|
|
839
844
|
key: 0,
|
|
840
|
-
"class": normalizeClass(_ctx.cx('filelabel'))
|
|
845
|
+
"class": normalizeClass(_ctx.cx('filelabel')),
|
|
846
|
+
files: $data.files
|
|
841
847
|
}, function () {
|
|
842
848
|
return [createElementVNode("span", {
|
|
843
|
-
"class": normalizeClass(_ctx.cx('filelabel'))
|
|
844
|
-
|
|
845
|
-
}, toDisplayString($options.basicFileChosenLabel), 11, _hoisted_2)];
|
|
849
|
+
"class": normalizeClass(_ctx.cx('filelabel'))
|
|
850
|
+
}, toDisplayString($options.basicFileChosenLabel), 3)];
|
|
846
851
|
}) : createCommentVNode("", true), createElementVNode("input", mergeProps({
|
|
847
852
|
ref: "fileInput",
|
|
848
853
|
type: "file",
|
|
@@ -858,7 +863,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
858
863
|
onBlur: _cache[7] || (_cache[7] = function () {
|
|
859
864
|
return $options.onBlur && $options.onBlur.apply($options, arguments);
|
|
860
865
|
})
|
|
861
|
-
}, _ctx.ptm('input')), null, 16,
|
|
866
|
+
}, _ctx.ptm('input')), null, 16, _hoisted_2)], 16)) : createCommentVNode("", true);
|
|
862
867
|
}
|
|
863
868
|
|
|
864
869
|
script.render = render;
|