primevue 4.3.4 → 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/autocomplete/index.mjs +8 -4
- 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/index.mjs +10 -5
- package/cascadeselect/index.mjs.map +1 -1
- package/contextmenu/index.mjs +16 -8
- package/contextmenu/index.mjs.map +1 -1
- package/datatable/DataTable.vue +7 -3
- package/datatable/index.mjs +37 -29
- package/datatable/index.mjs.map +1 -1
- package/datepicker/index.mjs +54 -25
- 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/index.mjs +14 -7
- 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/inputchips/index.mjs +2 -1
- package/inputchips/index.mjs.map +1 -1
- package/listbox/index.mjs +8 -4
- package/listbox/index.mjs.map +1 -1
- package/megamenu/index.mjs +22 -11
- package/megamenu/index.mjs.map +1 -1
- package/menu/index.mjs +6 -3
- package/menu/index.mjs.map +1 -1
- package/menubar/index.mjs +14 -7
- package/menubar/index.mjs.map +1 -1
- package/metergroup/index.mjs +10 -5
- package/metergroup/index.mjs.map +1 -1
- package/multiselect/index.mjs +8 -4
- package/multiselect/index.mjs.map +1 -1
- package/organizationchart/index.mjs +6 -3
- package/organizationchart/index.mjs.map +1 -1
- package/package.json +4 -4
- package/paginator/index.mjs +10 -4
- package/paginator/index.mjs.map +1 -1
- package/panelmenu/index.mjs +42 -21
- package/panelmenu/index.mjs.map +1 -1
- package/password/Password.vue +1 -0
- package/password/index.mjs +4 -1
- package/password/index.mjs.map +1 -1
- package/rating/index.mjs +10 -5
- package/rating/index.mjs.map +1 -1
- package/select/Select.vue +1 -2
- package/select/index.mjs +13 -7
- package/select/index.mjs.map +1 -1
- package/speeddial/index.mjs +6 -3
- package/speeddial/index.mjs.map +1 -1
- package/splitter/Splitter.vue +1 -1
- package/splitter/index.mjs +5 -2
- package/splitter/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/tieredmenu/index.mjs +18 -9
- 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/treeselect/index.mjs +2 -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 +94 -94
- package/virtualscroller/VirtualScroller.vue +4 -1
- package/virtualscroller/index.mjs +3 -1
- package/virtualscroller/index.mjs.map +1 -1
- package/web-types.json +1 -1
package/splitter/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/splitter/BaseSplitter.vue","../../src/splitter/Splitter.vue","../../src/splitter/Splitter.vue?vue&type=template&id=952ed718&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport SplitterStyle from 'primevue/splitter/style';\n\nexport default {\n name: 'BaseSplitter',\n extends: BaseComponent,\n props: {\n layout: {\n type: String,\n default: 'horizontal'\n },\n gutterSize: {\n type: Number,\n default: 4\n },\n stateKey: {\n type: String,\n default: null\n },\n stateStorage: {\n type: String,\n default: 'session'\n },\n step: {\n type: Number,\n default: 5\n }\n },\n style: SplitterStyle,\n provide() {\n return {\n $pcSplitter: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" :data-p-resizing=\"false\" :data-p=\"dataP\" v-bind=\"ptmi('root', getPTOptions)\">\n <template v-for=\"(panel, i) of panels\" :key=\"i\">\n <component :is=\"panel\" tabindex=\"-1\"></component>\n <div\n v-if=\"i !== panels.length - 1\"\n ref=\"gutter\"\n :class=\"cx('gutter')\"\n role=\"separator\"\n tabindex=\"-1\"\n @mousedown=\"onGutterMouseDown($event, i)\"\n @touchstart=\"onGutterTouchStart($event, i)\"\n @touchmove=\"onGutterTouchMove($event, i)\"\n @touchend=\"onGutterTouchEnd($event, i)\"\n :data-p-gutter-resizing=\"false\"\n :data-p=\"dataP\"\n v-bind=\"ptm('gutter')\"\n >\n <div :class=\"cx('gutterHandle')\" tabindex=\"0\" :style=\"[gutterStyle]\" :aria-orientation=\"layout\" :aria-valuenow=\"prevSize\" @keyup=\"onGutterKeyUp\" @keydown=\"onGutterKeyDown($event, i)\" :data-p=\"dataP\" v-bind=\"ptm('gutterHandle')\"></div>\n </div>\n </template>\n </div>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { getHeight, getOuterHeight, getOuterWidth, getWidth, isRTL } from '@primeuix/utils/dom';\nimport { isArray, isNotEmpty } from '@primeuix/utils/object';\nimport { getVNodeProp } from '@primevue/core/utils';\nimport BaseSplitter from './BaseSplitter.vue';\n\nexport default {\n name: 'Splitter',\n extends: BaseSplitter,\n inheritAttrs: false,\n emits: ['resizestart', 'resizeend', 'resize'],\n dragging: false,\n mouseMoveListener: null,\n mouseUpListener: null,\n touchMoveListener: null,\n touchEndListener: null,\n size: null,\n gutterElement: null,\n startPos: null,\n prevPanelElement: null,\n nextPanelElement: null,\n nextPanelSize: null,\n prevPanelSize: null,\n panelSizes: null,\n prevPanelIndex: null,\n timer: null,\n data() {\n return {\n prevSize: null\n };\n },\n mounted() {\n this.initializePanels();\n },\n beforeUnmount() {\n this.clear();\n this.unbindMouseListeners();\n },\n methods: {\n isSplitterPanel(child) {\n return child.type.name === 'SplitterPanel';\n },\n initializePanels() {\n if (this.panels && this.panels.length) {\n let initialized = false;\n\n if (this.isStateful()) {\n initialized = this.restoreState();\n }\n\n if (!initialized) {\n let children = [...this.$el.children].filter((child) => child.getAttribute('data-pc-name') === 'splitterpanel');\n let _panelSizes = [];\n\n this.panels.map((panel, i) => {\n let panelInitialSize = panel.props && isNotEmpty(panel.props.size) ? panel.props.size : null;\n let panelSize = panelInitialSize || 100 / this.panels.length;\n\n _panelSizes[i] = panelSize;\n children[i].style.flexBasis = 'calc(' + panelSize + '% - ' + (this.panels.length - 1) * this.gutterSize + 'px)';\n });\n\n this.panelSizes = _panelSizes;\n this.prevSize = parseFloat(_panelSizes[0]).toFixed(4);\n }\n }\n },\n onResizeStart(event, index, isKeyDown) {\n this.gutterElement = event.currentTarget || event.target.parentElement;\n this.size = this.horizontal ? getWidth(this.$el) : getHeight(this.$el);\n\n if (!isKeyDown) {\n this.dragging = true;\n this.startPos = this.layout === 'horizontal' ? event.pageX || event.changedTouches[0].pageX : event.pageY || event.changedTouches[0].pageY;\n }\n\n this.prevPanelElement = this.gutterElement.previousElementSibling;\n this.nextPanelElement = this.gutterElement.nextElementSibling;\n\n if (isKeyDown) {\n this.prevPanelSize = this.horizontal ? getOuterWidth(this.prevPanelElement, true) : getOuterHeight(this.prevPanelElement, true);\n this.nextPanelSize = this.horizontal ? getOuterWidth(this.nextPanelElement, true) : getOuterHeight(this.nextPanelElement, true);\n } else {\n this.prevPanelSize = (100 * (this.horizontal ? getOuterWidth(this.prevPanelElement, true) : getOuterHeight(this.prevPanelElement, true))) / this.size;\n this.nextPanelSize = (100 * (this.horizontal ? getOuterWidth(this.nextPanelElement, true) : getOuterHeight(this.nextPanelElement, true))) / this.size;\n }\n\n this.prevPanelIndex = index;\n this.$emit('resizestart', { originalEvent: event, sizes: this.panelSizes });\n this.$refs.gutter[index].setAttribute('data-p-gutter-resizing', true);\n this.$el.setAttribute('data-p-resizing', true);\n },\n onResize(event, step, isKeyDown) {\n let newPos, newPrevPanelSize, newNextPanelSize;\n\n if (isKeyDown) {\n if (this.horizontal) {\n newPrevPanelSize = (100 * (this.prevPanelSize + step)) / this.size;\n newNextPanelSize = (100 * (this.nextPanelSize - step)) / this.size;\n } else {\n newPrevPanelSize = (100 * (this.prevPanelSize - step)) / this.size;\n newNextPanelSize = (100 * (this.nextPanelSize + step)) / this.size;\n }\n } else {\n if (this.horizontal) {\n if (isRTL(this.$el)) {\n newPos = ((this.startPos - event.pageX) * 100) / this.size;\n } else {\n newPos = ((event.pageX - this.startPos) * 100) / this.size;\n }\n } else {\n newPos = ((event.pageY - this.startPos) * 100) / this.size;\n }\n\n newPrevPanelSize = this.prevPanelSize + newPos;\n newNextPanelSize = this.nextPanelSize - newPos;\n }\n\n if (!this.validateResize(newPrevPanelSize, newNextPanelSize)) {\n newPrevPanelSize = Math.min(Math.max(this.prevPanelMinSize, newPrevPanelSize), 100 - this.nextPanelMinSize);\n newNextPanelSize = Math.min(Math.max(this.nextPanelMinSize, newNextPanelSize), 100 - this.prevPanelMinSize);\n }\n\n this.prevPanelElement.style.flexBasis = 'calc(' + newPrevPanelSize + '% - ' + (this.panels.length - 1) * this.gutterSize + 'px)';\n this.nextPanelElement.style.flexBasis = 'calc(' + newNextPanelSize + '% - ' + (this.panels.length - 1) * this.gutterSize + 'px)';\n this.panelSizes[this.prevPanelIndex] = newPrevPanelSize;\n this.panelSizes[this.prevPanelIndex + 1] = newNextPanelSize;\n this.prevSize = parseFloat(newPrevPanelSize).toFixed(4);\n\n this.$emit('resize', { originalEvent: event, sizes: this.panelSizes });\n },\n onResizeEnd(event) {\n if (this.isStateful()) {\n this.saveState();\n }\n\n this.$emit('resizeend', { originalEvent: event, sizes: this.panelSizes });\n this.$refs.gutter.forEach((gutter) => gutter.setAttribute('data-p-gutter-resizing', false));\n this.$el.setAttribute('data-p-resizing', false);\n this.clear();\n },\n repeat(event, index, step) {\n this.onResizeStart(event, index, true);\n this.onResize(event, step, true);\n },\n setTimer(event, index, step) {\n if (!this.timer) {\n this.timer = setInterval(() => {\n this.repeat(event, index, step);\n }, 40);\n }\n },\n clearTimer() {\n if (this.timer) {\n clearInterval(this.timer);\n this.timer = null;\n }\n },\n onGutterKeyUp() {\n this.clearTimer();\n this.onResizeEnd();\n },\n onGutterKeyDown(event, index) {\n switch (event.code) {\n case 'ArrowLeft': {\n if (this.layout === 'horizontal') {\n this.setTimer(event, index, this.step * -1);\n }\n\n event.preventDefault();\n break;\n }\n\n case 'ArrowRight': {\n if (this.layout === 'horizontal') {\n this.setTimer(event, index, this.step);\n }\n\n event.preventDefault();\n break;\n }\n\n case 'ArrowDown': {\n if (this.layout === 'vertical') {\n this.setTimer(event, index, this.step * -1);\n }\n\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n if (this.layout === 'vertical') {\n this.setTimer(event, index, this.step);\n }\n\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n },\n onGutterMouseDown(event, index) {\n this.onResizeStart(event, index);\n this.bindMouseListeners();\n },\n onGutterTouchStart(event, index) {\n this.onResizeStart(event, index);\n this.bindTouchListeners();\n event.preventDefault();\n },\n onGutterTouchMove(event) {\n this.onResize(event);\n event.preventDefault();\n },\n onGutterTouchEnd(event) {\n this.onResizeEnd(event);\n this.unbindTouchListeners();\n event.preventDefault();\n },\n bindMouseListeners() {\n if (!this.mouseMoveListener) {\n this.mouseMoveListener = (event) => this.onResize(event);\n document.addEventListener('mousemove', this.mouseMoveListener);\n }\n\n if (!this.mouseUpListener) {\n this.mouseUpListener = (event) => {\n this.onResizeEnd(event);\n this.unbindMouseListeners();\n };\n\n document.addEventListener('mouseup', this.mouseUpListener);\n }\n },\n bindTouchListeners() {\n if (!this.touchMoveListener) {\n this.touchMoveListener = (event) => this.onResize(event.changedTouches[0]);\n document.addEventListener('touchmove', this.touchMoveListener);\n }\n\n if (!this.touchEndListener) {\n this.touchEndListener = (event) => {\n this.resizeEnd(event);\n this.unbindTouchListeners();\n };\n\n document.addEventListener('touchend', this.touchEndListener);\n }\n },\n validateResize(newPrevPanelSize, newNextPanelSize) {\n if (newPrevPanelSize > 100 || newPrevPanelSize < 0) return false;\n if (newNextPanelSize > 100 || newNextPanelSize < 0) return false;\n\n if (this.prevPanelMinSize > newPrevPanelSize) {\n return false;\n }\n\n if (this.nextPanelMinSize > newNextPanelSize) {\n return false;\n }\n\n return true;\n },\n unbindMouseListeners() {\n if (this.mouseMoveListener) {\n document.removeEventListener('mousemove', this.mouseMoveListener);\n this.mouseMoveListener = null;\n }\n\n if (this.mouseUpListener) {\n document.removeEventListener('mouseup', this.mouseUpListener);\n this.mouseUpListener = null;\n }\n },\n unbindTouchListeners() {\n if (this.touchMoveListener) {\n document.removeEventListener('touchmove', this.touchMoveListener);\n this.touchMoveListener = null;\n }\n\n if (this.touchEndListener) {\n document.removeEventListener('touchend', this.touchEndListener);\n this.touchEndListener = null;\n }\n },\n clear() {\n this.dragging = false;\n this.size = null;\n this.startPos = null;\n this.prevPanelElement = null;\n this.nextPanelElement = null;\n this.prevPanelSize = null;\n this.nextPanelSize = null;\n this.gutterElement = null;\n this.prevPanelIndex = null;\n },\n isStateful() {\n return this.stateKey != null;\n },\n getStorage() {\n switch (this.stateStorage) {\n case 'local':\n return window.localStorage;\n\n case 'session':\n return window.sessionStorage;\n\n default:\n throw new Error(this.stateStorage + ' is not a valid value for the state storage, supported values are \"local\" and \"session\".');\n }\n },\n saveState() {\n if (isArray(this.panelSizes)) {\n this.getStorage().setItem(this.stateKey, JSON.stringify(this.panelSizes));\n }\n },\n restoreState() {\n const storage = this.getStorage();\n const stateString = storage.getItem(this.stateKey);\n\n if (stateString) {\n this.panelSizes = JSON.parse(stateString);\n let children = [...this.$el.children].filter((child) => child.getAttribute('data-pc-name') === 'splitterpanel');\n\n children.forEach((child, i) => {\n child.style.flexBasis = 'calc(' + this.panelSizes[i] + '% - ' + (this.panels.length - 1) * this.gutterSize + 'px)';\n });\n\n return true;\n }\n\n return false;\n },\n resetState() {\n this.initializePanels();\n }\n },\n computed: {\n panels() {\n const panels = [];\n\n this.$slots.default().forEach((child) => {\n if (this.isSplitterPanel(child)) {\n panels.push(child);\n } else if (child.children instanceof Array) {\n child.children.forEach((nestedChild) => {\n if (this.isSplitterPanel(nestedChild)) {\n panels.push(nestedChild);\n }\n });\n }\n });\n\n return panels;\n },\n gutterStyle() {\n if (this.horizontal) return { width: this.gutterSize + 'px' };\n else return { height: this.gutterSize + 'px' };\n },\n horizontal() {\n return this.layout === 'horizontal';\n },\n getPTOptions() {\n return {\n context: {\n nested: this.$parentInstance?.nestedState\n }\n };\n },\n prevPanelMinSize() {\n const prevPanelMinSize = getVNodeProp(this.panels[this.prevPanelIndex], 'minSize');\n\n if (this.panels[this.prevPanelIndex].props && prevPanelMinSize) {\n return prevPanelMinSize;\n }\n\n return 0;\n },\n nextPanelMinSize() {\n const nextPanelMinSize = getVNodeProp(this.panels[this.prevPanelIndex + 1], 'minSize');\n\n if (this.panels[this.prevPanelIndex + 1].props && nextPanelMinSize) {\n return nextPanelMinSize;\n }\n\n return 0;\n },\n dataP() {\n return cn({\n [this.layout]: this.layout,\n nested: this.$parentInstance?.nestedState != null\n });\n }\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" :data-p-resizing=\"false\" :data-p=\"dataP\" v-bind=\"ptmi('root', getPTOptions)\">\n <template v-for=\"(panel, i) of panels\" :key=\"i\">\n <component :is=\"panel\" tabindex=\"-1\"></component>\n <div\n v-if=\"i !== panels.length - 1\"\n ref=\"gutter\"\n :class=\"cx('gutter')\"\n role=\"separator\"\n tabindex=\"-1\"\n @mousedown=\"onGutterMouseDown($event, i)\"\n @touchstart=\"onGutterTouchStart($event, i)\"\n @touchmove=\"onGutterTouchMove($event, i)\"\n @touchend=\"onGutterTouchEnd($event, i)\"\n :data-p-gutter-resizing=\"false\"\n :data-p=\"dataP\"\n v-bind=\"ptm('gutter')\"\n >\n <div :class=\"cx('gutterHandle')\" tabindex=\"0\" :style=\"[gutterStyle]\" :aria-orientation=\"layout\" :aria-valuenow=\"prevSize\" @keyup=\"onGutterKeyUp\" @keydown=\"onGutterKeyDown($event, i)\" :data-p=\"dataP\" v-bind=\"ptm('gutterHandle')\"></div>\n </div>\n </template>\n </div>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { getHeight, getOuterHeight, getOuterWidth, getWidth, isRTL } from '@primeuix/utils/dom';\nimport { isArray, isNotEmpty } from '@primeuix/utils/object';\nimport { getVNodeProp } from '@primevue/core/utils';\nimport BaseSplitter from './BaseSplitter.vue';\n\nexport default {\n name: 'Splitter',\n extends: BaseSplitter,\n inheritAttrs: false,\n emits: ['resizestart', 'resizeend', 'resize'],\n dragging: false,\n mouseMoveListener: null,\n mouseUpListener: null,\n touchMoveListener: null,\n touchEndListener: null,\n size: null,\n gutterElement: null,\n startPos: null,\n prevPanelElement: null,\n nextPanelElement: null,\n nextPanelSize: null,\n prevPanelSize: null,\n panelSizes: null,\n prevPanelIndex: null,\n timer: null,\n data() {\n return {\n prevSize: null\n };\n },\n mounted() {\n this.initializePanels();\n },\n beforeUnmount() {\n this.clear();\n this.unbindMouseListeners();\n },\n methods: {\n isSplitterPanel(child) {\n return child.type.name === 'SplitterPanel';\n },\n initializePanels() {\n if (this.panels && this.panels.length) {\n let initialized = false;\n\n if (this.isStateful()) {\n initialized = this.restoreState();\n }\n\n if (!initialized) {\n let children = [...this.$el.children].filter((child) => child.getAttribute('data-pc-name') === 'splitterpanel');\n let _panelSizes = [];\n\n this.panels.map((panel, i) => {\n let panelInitialSize = panel.props && isNotEmpty(panel.props.size) ? panel.props.size : null;\n let panelSize = panelInitialSize || 100 / this.panels.length;\n\n _panelSizes[i] = panelSize;\n children[i].style.flexBasis = 'calc(' + panelSize + '% - ' + (this.panels.length - 1) * this.gutterSize + 'px)';\n });\n\n this.panelSizes = _panelSizes;\n this.prevSize = parseFloat(_panelSizes[0]).toFixed(4);\n }\n }\n },\n onResizeStart(event, index, isKeyDown) {\n this.gutterElement = event.currentTarget || event.target.parentElement;\n this.size = this.horizontal ? getWidth(this.$el) : getHeight(this.$el);\n\n if (!isKeyDown) {\n this.dragging = true;\n this.startPos = this.layout === 'horizontal' ? event.pageX || event.changedTouches[0].pageX : event.pageY || event.changedTouches[0].pageY;\n }\n\n this.prevPanelElement = this.gutterElement.previousElementSibling;\n this.nextPanelElement = this.gutterElement.nextElementSibling;\n\n if (isKeyDown) {\n this.prevPanelSize = this.horizontal ? getOuterWidth(this.prevPanelElement, true) : getOuterHeight(this.prevPanelElement, true);\n this.nextPanelSize = this.horizontal ? getOuterWidth(this.nextPanelElement, true) : getOuterHeight(this.nextPanelElement, true);\n } else {\n this.prevPanelSize = (100 * (this.horizontal ? getOuterWidth(this.prevPanelElement, true) : getOuterHeight(this.prevPanelElement, true))) / this.size;\n this.nextPanelSize = (100 * (this.horizontal ? getOuterWidth(this.nextPanelElement, true) : getOuterHeight(this.nextPanelElement, true))) / this.size;\n }\n\n this.prevPanelIndex = index;\n this.$emit('resizestart', { originalEvent: event, sizes: this.panelSizes });\n this.$refs.gutter[index].setAttribute('data-p-gutter-resizing', true);\n this.$el.setAttribute('data-p-resizing', true);\n },\n onResize(event, step, isKeyDown) {\n let newPos, newPrevPanelSize, newNextPanelSize;\n\n if (isKeyDown) {\n if (this.horizontal) {\n newPrevPanelSize = (100 * (this.prevPanelSize + step)) / this.size;\n newNextPanelSize = (100 * (this.nextPanelSize - step)) / this.size;\n } else {\n newPrevPanelSize = (100 * (this.prevPanelSize - step)) / this.size;\n newNextPanelSize = (100 * (this.nextPanelSize + step)) / this.size;\n }\n } else {\n if (this.horizontal) {\n if (isRTL(this.$el)) {\n newPos = ((this.startPos - event.pageX) * 100) / this.size;\n } else {\n newPos = ((event.pageX - this.startPos) * 100) / this.size;\n }\n } else {\n newPos = ((event.pageY - this.startPos) * 100) / this.size;\n }\n\n newPrevPanelSize = this.prevPanelSize + newPos;\n newNextPanelSize = this.nextPanelSize - newPos;\n }\n\n if (!this.validateResize(newPrevPanelSize, newNextPanelSize)) {\n newPrevPanelSize = Math.min(Math.max(this.prevPanelMinSize, newPrevPanelSize), 100 - this.nextPanelMinSize);\n newNextPanelSize = Math.min(Math.max(this.nextPanelMinSize, newNextPanelSize), 100 - this.prevPanelMinSize);\n }\n\n this.prevPanelElement.style.flexBasis = 'calc(' + newPrevPanelSize + '% - ' + (this.panels.length - 1) * this.gutterSize + 'px)';\n this.nextPanelElement.style.flexBasis = 'calc(' + newNextPanelSize + '% - ' + (this.panels.length - 1) * this.gutterSize + 'px)';\n this.panelSizes[this.prevPanelIndex] = newPrevPanelSize;\n this.panelSizes[this.prevPanelIndex + 1] = newNextPanelSize;\n this.prevSize = parseFloat(newPrevPanelSize).toFixed(4);\n\n this.$emit('resize', { originalEvent: event, sizes: this.panelSizes });\n },\n onResizeEnd(event) {\n if (this.isStateful()) {\n this.saveState();\n }\n\n this.$emit('resizeend', { originalEvent: event, sizes: this.panelSizes });\n this.$refs.gutter.forEach((gutter) => gutter.setAttribute('data-p-gutter-resizing', false));\n this.$el.setAttribute('data-p-resizing', false);\n this.clear();\n },\n repeat(event, index, step) {\n this.onResizeStart(event, index, true);\n this.onResize(event, step, true);\n },\n setTimer(event, index, step) {\n if (!this.timer) {\n this.timer = setInterval(() => {\n this.repeat(event, index, step);\n }, 40);\n }\n },\n clearTimer() {\n if (this.timer) {\n clearInterval(this.timer);\n this.timer = null;\n }\n },\n onGutterKeyUp() {\n this.clearTimer();\n this.onResizeEnd();\n },\n onGutterKeyDown(event, index) {\n switch (event.code) {\n case 'ArrowLeft': {\n if (this.layout === 'horizontal') {\n this.setTimer(event, index, this.step * -1);\n }\n\n event.preventDefault();\n break;\n }\n\n case 'ArrowRight': {\n if (this.layout === 'horizontal') {\n this.setTimer(event, index, this.step);\n }\n\n event.preventDefault();\n break;\n }\n\n case 'ArrowDown': {\n if (this.layout === 'vertical') {\n this.setTimer(event, index, this.step * -1);\n }\n\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n if (this.layout === 'vertical') {\n this.setTimer(event, index, this.step);\n }\n\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n },\n onGutterMouseDown(event, index) {\n this.onResizeStart(event, index);\n this.bindMouseListeners();\n },\n onGutterTouchStart(event, index) {\n this.onResizeStart(event, index);\n this.bindTouchListeners();\n event.preventDefault();\n },\n onGutterTouchMove(event) {\n this.onResize(event);\n event.preventDefault();\n },\n onGutterTouchEnd(event) {\n this.onResizeEnd(event);\n this.unbindTouchListeners();\n event.preventDefault();\n },\n bindMouseListeners() {\n if (!this.mouseMoveListener) {\n this.mouseMoveListener = (event) => this.onResize(event);\n document.addEventListener('mousemove', this.mouseMoveListener);\n }\n\n if (!this.mouseUpListener) {\n this.mouseUpListener = (event) => {\n this.onResizeEnd(event);\n this.unbindMouseListeners();\n };\n\n document.addEventListener('mouseup', this.mouseUpListener);\n }\n },\n bindTouchListeners() {\n if (!this.touchMoveListener) {\n this.touchMoveListener = (event) => this.onResize(event.changedTouches[0]);\n document.addEventListener('touchmove', this.touchMoveListener);\n }\n\n if (!this.touchEndListener) {\n this.touchEndListener = (event) => {\n this.resizeEnd(event);\n this.unbindTouchListeners();\n };\n\n document.addEventListener('touchend', this.touchEndListener);\n }\n },\n validateResize(newPrevPanelSize, newNextPanelSize) {\n if (newPrevPanelSize > 100 || newPrevPanelSize < 0) return false;\n if (newNextPanelSize > 100 || newNextPanelSize < 0) return false;\n\n if (this.prevPanelMinSize > newPrevPanelSize) {\n return false;\n }\n\n if (this.nextPanelMinSize > newNextPanelSize) {\n return false;\n }\n\n return true;\n },\n unbindMouseListeners() {\n if (this.mouseMoveListener) {\n document.removeEventListener('mousemove', this.mouseMoveListener);\n this.mouseMoveListener = null;\n }\n\n if (this.mouseUpListener) {\n document.removeEventListener('mouseup', this.mouseUpListener);\n this.mouseUpListener = null;\n }\n },\n unbindTouchListeners() {\n if (this.touchMoveListener) {\n document.removeEventListener('touchmove', this.touchMoveListener);\n this.touchMoveListener = null;\n }\n\n if (this.touchEndListener) {\n document.removeEventListener('touchend', this.touchEndListener);\n this.touchEndListener = null;\n }\n },\n clear() {\n this.dragging = false;\n this.size = null;\n this.startPos = null;\n this.prevPanelElement = null;\n this.nextPanelElement = null;\n this.prevPanelSize = null;\n this.nextPanelSize = null;\n this.gutterElement = null;\n this.prevPanelIndex = null;\n },\n isStateful() {\n return this.stateKey != null;\n },\n getStorage() {\n switch (this.stateStorage) {\n case 'local':\n return window.localStorage;\n\n case 'session':\n return window.sessionStorage;\n\n default:\n throw new Error(this.stateStorage + ' is not a valid value for the state storage, supported values are \"local\" and \"session\".');\n }\n },\n saveState() {\n if (isArray(this.panelSizes)) {\n this.getStorage().setItem(this.stateKey, JSON.stringify(this.panelSizes));\n }\n },\n restoreState() {\n const storage = this.getStorage();\n const stateString = storage.getItem(this.stateKey);\n\n if (stateString) {\n this.panelSizes = JSON.parse(stateString);\n let children = [...this.$el.children].filter((child) => child.getAttribute('data-pc-name') === 'splitterpanel');\n\n children.forEach((child, i) => {\n child.style.flexBasis = 'calc(' + this.panelSizes[i] + '% - ' + (this.panels.length - 1) * this.gutterSize + 'px)';\n });\n\n return true;\n }\n\n return false;\n },\n resetState() {\n this.initializePanels();\n }\n },\n computed: {\n panels() {\n const panels = [];\n\n this.$slots.default().forEach((child) => {\n if (this.isSplitterPanel(child)) {\n panels.push(child);\n } else if (child.children instanceof Array) {\n child.children.forEach((nestedChild) => {\n if (this.isSplitterPanel(nestedChild)) {\n panels.push(nestedChild);\n }\n });\n }\n });\n\n return panels;\n },\n gutterStyle() {\n if (this.horizontal) return { width: this.gutterSize + 'px' };\n else return { height: this.gutterSize + 'px' };\n },\n horizontal() {\n return this.layout === 'horizontal';\n },\n getPTOptions() {\n return {\n context: {\n nested: this.$parentInstance?.nestedState\n }\n };\n },\n prevPanelMinSize() {\n const prevPanelMinSize = getVNodeProp(this.panels[this.prevPanelIndex], 'minSize');\n\n if (this.panels[this.prevPanelIndex].props && prevPanelMinSize) {\n return prevPanelMinSize;\n }\n\n return 0;\n },\n nextPanelMinSize() {\n const nextPanelMinSize = getVNodeProp(this.panels[this.prevPanelIndex + 1], 'minSize');\n\n if (this.panels[this.prevPanelIndex + 1].props && nextPanelMinSize) {\n return nextPanelMinSize;\n }\n\n return 0;\n },\n dataP() {\n return cn({\n [this.layout]: this.layout,\n nested: this.$parentInstance?.nestedState != null\n });\n }\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","layout","type","String","gutterSize","Number","stateKey","stateStorage","step","style","SplitterStyle","provide","$pcSplitter","$parentInstance","BaseSplitter","inheritAttrs","emits","dragging","mouseMoveListener","mouseUpListener","touchMoveListener","touchEndListener","size","gutterElement","startPos","prevPanelElement","nextPanelElement","nextPanelSize","prevPanelSize","panelSizes","prevPanelIndex","timer","data","prevSize","mounted","initializePanels","beforeUnmount","clear","unbindMouseListeners","methods","isSplitterPanel","child","_this","panels","length","initialized","isStateful","restoreState","children","_toConsumableArray","$el","filter","getAttribute","_panelSizes","map","panel","i","panelInitialSize","isNotEmpty","panelSize","flexBasis","parseFloat","toFixed","onResizeStart","event","index","isKeyDown","currentTarget","target","parentElement","horizontal","getWidth","getHeight","pageX","changedTouches","pageY","previousElementSibling","nextElementSibling","getOuterWidth","getOuterHeight","$emit","originalEvent","sizes","$refs","gutter","setAttribute","onResize","newPos","newPrevPanelSize","newNextPanelSize","isRTL","validateResize","Math","min","max","prevPanelMinSize","nextPanelMinSize","onResizeEnd","saveState","forEach","repeat","setTimer","_this2","setInterval","clearTimer","clearInterval","onGutterKeyUp","onGutterKeyDown","code","preventDefault","onGutterMouseDown","bindMouseListeners","onGutterTouchStart","bindTouchListeners","onGutterTouchMove","onGutterTouchEnd","unbindTouchListeners","_this3","document","addEventListener","_this4","resizeEnd","removeEventListener","getStorage","window","localStorage","sessionStorage","Error","isArray","setItem","JSON","stringify","_this5","storage","stateString","getItem","parse","resetState","computed","_this6","$slots","push","Array","nestedChild","gutterStyle","width","height","getPTOptions","_this$$parentInstance","context","nested","nestedState","getVNodeProp","dataP","_this$$parentInstance2","cn","_defineProperty","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","$options","ptmi","_Fragment","_renderList","_createBlock","_resolveDynamicComponent","tabindex","ref","role","onMousedown","$event","onTouchstart","onTouchmove","onTouchend","ptm","_createElementVNode","$data","onKeyup","apply","arguments","onKeydown","_hoisted_3"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/splitter/BaseSplitter.vue","../../src/splitter/Splitter.vue","../../src/splitter/Splitter.vue?vue&type=template&id=92aa5fd8&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport SplitterStyle from 'primevue/splitter/style';\n\nexport default {\n name: 'BaseSplitter',\n extends: BaseComponent,\n props: {\n layout: {\n type: String,\n default: 'horizontal'\n },\n gutterSize: {\n type: Number,\n default: 4\n },\n stateKey: {\n type: String,\n default: null\n },\n stateStorage: {\n type: String,\n default: 'session'\n },\n step: {\n type: Number,\n default: 5\n }\n },\n style: SplitterStyle,\n provide() {\n return {\n $pcSplitter: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" :data-p-resizing=\"false\" :data-p=\"dataP\" v-bind=\"ptmi('root', getPTOptions)\">\n <template v-for=\"(panel, i) of panels\" :key=\"i\">\n <component :is=\"panel\" tabindex=\"-1\"></component>\n <div\n v-if=\"i !== panels.length - 1\"\n ref=\"gutter\"\n :class=\"cx('gutter')\"\n role=\"separator\"\n tabindex=\"-1\"\n @mousedown=\"onGutterMouseDown($event, i)\"\n @touchstart=\"onGutterTouchStart($event, i)\"\n @touchmove=\"onGutterTouchMove($event, i)\"\n @touchend=\"onGutterTouchEnd($event, i)\"\n :data-p-gutter-resizing=\"false\"\n :data-p=\"dataP\"\n v-bind=\"ptm('gutter')\"\n >\n <div :class=\"cx('gutterHandle')\" tabindex=\"0\" :style=\"[gutterStyle]\" :aria-orientation=\"layout\" :aria-valuenow=\"prevSize\" @keyup=\"onGutterKeyUp\" @keydown=\"onGutterKeyDown($event, i)\" :data-p=\"dataP\" v-bind=\"ptm('gutterHandle')\"></div>\n </div>\n </template>\n </div>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { getHeight, getOuterHeight, getOuterWidth, getWidth, isRTL } from '@primeuix/utils/dom';\nimport { isArray, isNotEmpty } from '@primeuix/utils/object';\nimport { getVNodeProp } from '@primevue/core/utils';\nimport BaseSplitter from './BaseSplitter.vue';\n\nexport default {\n name: 'Splitter',\n extends: BaseSplitter,\n inheritAttrs: false,\n emits: ['resizestart', 'resizeend', 'resize'],\n dragging: false,\n mouseMoveListener: null,\n mouseUpListener: null,\n touchMoveListener: null,\n touchEndListener: null,\n size: null,\n gutterElement: null,\n startPos: null,\n prevPanelElement: null,\n nextPanelElement: null,\n nextPanelSize: null,\n prevPanelSize: null,\n panelSizes: null,\n prevPanelIndex: null,\n timer: null,\n data() {\n return {\n prevSize: null\n };\n },\n mounted() {\n this.initializePanels();\n },\n beforeUnmount() {\n this.clear();\n this.unbindMouseListeners();\n },\n methods: {\n isSplitterPanel(child) {\n return child.type.name === 'SplitterPanel';\n },\n initializePanels() {\n if (this.panels && this.panels.length) {\n let initialized = false;\n\n if (this.isStateful()) {\n initialized = this.restoreState();\n }\n\n if (!initialized) {\n let children = [...this.$el.children].filter((child) => child.getAttribute('data-pc-name') === 'splitterpanel');\n let _panelSizes = [];\n\n this.panels.map((panel, i) => {\n let panelInitialSize = panel.props && isNotEmpty(panel.props.size) ? panel.props.size : null;\n let panelSize = panelInitialSize ?? 100 / this.panels.length;\n\n _panelSizes[i] = panelSize;\n children[i].style.flexBasis = 'calc(' + panelSize + '% - ' + (this.panels.length - 1) * this.gutterSize + 'px)';\n });\n\n this.panelSizes = _panelSizes;\n this.prevSize = parseFloat(_panelSizes[0]).toFixed(4);\n }\n }\n },\n onResizeStart(event, index, isKeyDown) {\n this.gutterElement = event.currentTarget || event.target.parentElement;\n this.size = this.horizontal ? getWidth(this.$el) : getHeight(this.$el);\n\n if (!isKeyDown) {\n this.dragging = true;\n this.startPos = this.layout === 'horizontal' ? event.pageX || event.changedTouches[0].pageX : event.pageY || event.changedTouches[0].pageY;\n }\n\n this.prevPanelElement = this.gutterElement.previousElementSibling;\n this.nextPanelElement = this.gutterElement.nextElementSibling;\n\n if (isKeyDown) {\n this.prevPanelSize = this.horizontal ? getOuterWidth(this.prevPanelElement, true) : getOuterHeight(this.prevPanelElement, true);\n this.nextPanelSize = this.horizontal ? getOuterWidth(this.nextPanelElement, true) : getOuterHeight(this.nextPanelElement, true);\n } else {\n this.prevPanelSize = (100 * (this.horizontal ? getOuterWidth(this.prevPanelElement, true) : getOuterHeight(this.prevPanelElement, true))) / this.size;\n this.nextPanelSize = (100 * (this.horizontal ? getOuterWidth(this.nextPanelElement, true) : getOuterHeight(this.nextPanelElement, true))) / this.size;\n }\n\n this.prevPanelIndex = index;\n this.$emit('resizestart', { originalEvent: event, sizes: this.panelSizes });\n this.$refs.gutter[index].setAttribute('data-p-gutter-resizing', true);\n this.$el.setAttribute('data-p-resizing', true);\n },\n onResize(event, step, isKeyDown) {\n let newPos, newPrevPanelSize, newNextPanelSize;\n\n if (isKeyDown) {\n if (this.horizontal) {\n newPrevPanelSize = (100 * (this.prevPanelSize + step)) / this.size;\n newNextPanelSize = (100 * (this.nextPanelSize - step)) / this.size;\n } else {\n newPrevPanelSize = (100 * (this.prevPanelSize - step)) / this.size;\n newNextPanelSize = (100 * (this.nextPanelSize + step)) / this.size;\n }\n } else {\n if (this.horizontal) {\n if (isRTL(this.$el)) {\n newPos = ((this.startPos - event.pageX) * 100) / this.size;\n } else {\n newPos = ((event.pageX - this.startPos) * 100) / this.size;\n }\n } else {\n newPos = ((event.pageY - this.startPos) * 100) / this.size;\n }\n\n newPrevPanelSize = this.prevPanelSize + newPos;\n newNextPanelSize = this.nextPanelSize - newPos;\n }\n\n if (!this.validateResize(newPrevPanelSize, newNextPanelSize)) {\n newPrevPanelSize = Math.min(Math.max(this.prevPanelMinSize, newPrevPanelSize), 100 - this.nextPanelMinSize);\n newNextPanelSize = Math.min(Math.max(this.nextPanelMinSize, newNextPanelSize), 100 - this.prevPanelMinSize);\n }\n\n this.prevPanelElement.style.flexBasis = 'calc(' + newPrevPanelSize + '% - ' + (this.panels.length - 1) * this.gutterSize + 'px)';\n this.nextPanelElement.style.flexBasis = 'calc(' + newNextPanelSize + '% - ' + (this.panels.length - 1) * this.gutterSize + 'px)';\n this.panelSizes[this.prevPanelIndex] = newPrevPanelSize;\n this.panelSizes[this.prevPanelIndex + 1] = newNextPanelSize;\n this.prevSize = parseFloat(newPrevPanelSize).toFixed(4);\n\n this.$emit('resize', { originalEvent: event, sizes: this.panelSizes });\n },\n onResizeEnd(event) {\n if (this.isStateful()) {\n this.saveState();\n }\n\n this.$emit('resizeend', { originalEvent: event, sizes: this.panelSizes });\n this.$refs.gutter.forEach((gutter) => gutter.setAttribute('data-p-gutter-resizing', false));\n this.$el.setAttribute('data-p-resizing', false);\n this.clear();\n },\n repeat(event, index, step) {\n this.onResizeStart(event, index, true);\n this.onResize(event, step, true);\n },\n setTimer(event, index, step) {\n if (!this.timer) {\n this.timer = setInterval(() => {\n this.repeat(event, index, step);\n }, 40);\n }\n },\n clearTimer() {\n if (this.timer) {\n clearInterval(this.timer);\n this.timer = null;\n }\n },\n onGutterKeyUp() {\n this.clearTimer();\n this.onResizeEnd();\n },\n onGutterKeyDown(event, index) {\n switch (event.code) {\n case 'ArrowLeft': {\n if (this.layout === 'horizontal') {\n this.setTimer(event, index, this.step * -1);\n }\n\n event.preventDefault();\n break;\n }\n\n case 'ArrowRight': {\n if (this.layout === 'horizontal') {\n this.setTimer(event, index, this.step);\n }\n\n event.preventDefault();\n break;\n }\n\n case 'ArrowDown': {\n if (this.layout === 'vertical') {\n this.setTimer(event, index, this.step * -1);\n }\n\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n if (this.layout === 'vertical') {\n this.setTimer(event, index, this.step);\n }\n\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n },\n onGutterMouseDown(event, index) {\n this.onResizeStart(event, index);\n this.bindMouseListeners();\n },\n onGutterTouchStart(event, index) {\n this.onResizeStart(event, index);\n this.bindTouchListeners();\n event.preventDefault();\n },\n onGutterTouchMove(event) {\n this.onResize(event);\n event.preventDefault();\n },\n onGutterTouchEnd(event) {\n this.onResizeEnd(event);\n this.unbindTouchListeners();\n event.preventDefault();\n },\n bindMouseListeners() {\n if (!this.mouseMoveListener) {\n this.mouseMoveListener = (event) => this.onResize(event);\n document.addEventListener('mousemove', this.mouseMoveListener);\n }\n\n if (!this.mouseUpListener) {\n this.mouseUpListener = (event) => {\n this.onResizeEnd(event);\n this.unbindMouseListeners();\n };\n\n document.addEventListener('mouseup', this.mouseUpListener);\n }\n },\n bindTouchListeners() {\n if (!this.touchMoveListener) {\n this.touchMoveListener = (event) => this.onResize(event.changedTouches[0]);\n document.addEventListener('touchmove', this.touchMoveListener);\n }\n\n if (!this.touchEndListener) {\n this.touchEndListener = (event) => {\n this.resizeEnd(event);\n this.unbindTouchListeners();\n };\n\n document.addEventListener('touchend', this.touchEndListener);\n }\n },\n validateResize(newPrevPanelSize, newNextPanelSize) {\n if (newPrevPanelSize > 100 || newPrevPanelSize < 0) return false;\n if (newNextPanelSize > 100 || newNextPanelSize < 0) return false;\n\n if (this.prevPanelMinSize > newPrevPanelSize) {\n return false;\n }\n\n if (this.nextPanelMinSize > newNextPanelSize) {\n return false;\n }\n\n return true;\n },\n unbindMouseListeners() {\n if (this.mouseMoveListener) {\n document.removeEventListener('mousemove', this.mouseMoveListener);\n this.mouseMoveListener = null;\n }\n\n if (this.mouseUpListener) {\n document.removeEventListener('mouseup', this.mouseUpListener);\n this.mouseUpListener = null;\n }\n },\n unbindTouchListeners() {\n if (this.touchMoveListener) {\n document.removeEventListener('touchmove', this.touchMoveListener);\n this.touchMoveListener = null;\n }\n\n if (this.touchEndListener) {\n document.removeEventListener('touchend', this.touchEndListener);\n this.touchEndListener = null;\n }\n },\n clear() {\n this.dragging = false;\n this.size = null;\n this.startPos = null;\n this.prevPanelElement = null;\n this.nextPanelElement = null;\n this.prevPanelSize = null;\n this.nextPanelSize = null;\n this.gutterElement = null;\n this.prevPanelIndex = null;\n },\n isStateful() {\n return this.stateKey != null;\n },\n getStorage() {\n switch (this.stateStorage) {\n case 'local':\n return window.localStorage;\n\n case 'session':\n return window.sessionStorage;\n\n default:\n throw new Error(this.stateStorage + ' is not a valid value for the state storage, supported values are \"local\" and \"session\".');\n }\n },\n saveState() {\n if (isArray(this.panelSizes)) {\n this.getStorage().setItem(this.stateKey, JSON.stringify(this.panelSizes));\n }\n },\n restoreState() {\n const storage = this.getStorage();\n const stateString = storage.getItem(this.stateKey);\n\n if (stateString) {\n this.panelSizes = JSON.parse(stateString);\n let children = [...this.$el.children].filter((child) => child.getAttribute('data-pc-name') === 'splitterpanel');\n\n children.forEach((child, i) => {\n child.style.flexBasis = 'calc(' + this.panelSizes[i] + '% - ' + (this.panels.length - 1) * this.gutterSize + 'px)';\n });\n\n return true;\n }\n\n return false;\n },\n resetState() {\n this.initializePanels();\n }\n },\n computed: {\n panels() {\n const panels = [];\n\n this.$slots.default().forEach((child) => {\n if (this.isSplitterPanel(child)) {\n panels.push(child);\n } else if (child.children instanceof Array) {\n child.children.forEach((nestedChild) => {\n if (this.isSplitterPanel(nestedChild)) {\n panels.push(nestedChild);\n }\n });\n }\n });\n\n return panels;\n },\n gutterStyle() {\n if (this.horizontal) return { width: this.gutterSize + 'px' };\n else return { height: this.gutterSize + 'px' };\n },\n horizontal() {\n return this.layout === 'horizontal';\n },\n getPTOptions() {\n return {\n context: {\n nested: this.$parentInstance?.nestedState\n }\n };\n },\n prevPanelMinSize() {\n const prevPanelMinSize = getVNodeProp(this.panels[this.prevPanelIndex], 'minSize');\n\n if (this.panels[this.prevPanelIndex].props && prevPanelMinSize) {\n return prevPanelMinSize;\n }\n\n return 0;\n },\n nextPanelMinSize() {\n const nextPanelMinSize = getVNodeProp(this.panels[this.prevPanelIndex + 1], 'minSize');\n\n if (this.panels[this.prevPanelIndex + 1].props && nextPanelMinSize) {\n return nextPanelMinSize;\n }\n\n return 0;\n },\n dataP() {\n return cn({\n [this.layout]: this.layout,\n nested: this.$parentInstance?.nestedState != null\n });\n }\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" :data-p-resizing=\"false\" :data-p=\"dataP\" v-bind=\"ptmi('root', getPTOptions)\">\n <template v-for=\"(panel, i) of panels\" :key=\"i\">\n <component :is=\"panel\" tabindex=\"-1\"></component>\n <div\n v-if=\"i !== panels.length - 1\"\n ref=\"gutter\"\n :class=\"cx('gutter')\"\n role=\"separator\"\n tabindex=\"-1\"\n @mousedown=\"onGutterMouseDown($event, i)\"\n @touchstart=\"onGutterTouchStart($event, i)\"\n @touchmove=\"onGutterTouchMove($event, i)\"\n @touchend=\"onGutterTouchEnd($event, i)\"\n :data-p-gutter-resizing=\"false\"\n :data-p=\"dataP\"\n v-bind=\"ptm('gutter')\"\n >\n <div :class=\"cx('gutterHandle')\" tabindex=\"0\" :style=\"[gutterStyle]\" :aria-orientation=\"layout\" :aria-valuenow=\"prevSize\" @keyup=\"onGutterKeyUp\" @keydown=\"onGutterKeyDown($event, i)\" :data-p=\"dataP\" v-bind=\"ptm('gutterHandle')\"></div>\n </div>\n </template>\n </div>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { getHeight, getOuterHeight, getOuterWidth, getWidth, isRTL } from '@primeuix/utils/dom';\nimport { isArray, isNotEmpty } from '@primeuix/utils/object';\nimport { getVNodeProp } from '@primevue/core/utils';\nimport BaseSplitter from './BaseSplitter.vue';\n\nexport default {\n name: 'Splitter',\n extends: BaseSplitter,\n inheritAttrs: false,\n emits: ['resizestart', 'resizeend', 'resize'],\n dragging: false,\n mouseMoveListener: null,\n mouseUpListener: null,\n touchMoveListener: null,\n touchEndListener: null,\n size: null,\n gutterElement: null,\n startPos: null,\n prevPanelElement: null,\n nextPanelElement: null,\n nextPanelSize: null,\n prevPanelSize: null,\n panelSizes: null,\n prevPanelIndex: null,\n timer: null,\n data() {\n return {\n prevSize: null\n };\n },\n mounted() {\n this.initializePanels();\n },\n beforeUnmount() {\n this.clear();\n this.unbindMouseListeners();\n },\n methods: {\n isSplitterPanel(child) {\n return child.type.name === 'SplitterPanel';\n },\n initializePanels() {\n if (this.panels && this.panels.length) {\n let initialized = false;\n\n if (this.isStateful()) {\n initialized = this.restoreState();\n }\n\n if (!initialized) {\n let children = [...this.$el.children].filter((child) => child.getAttribute('data-pc-name') === 'splitterpanel');\n let _panelSizes = [];\n\n this.panels.map((panel, i) => {\n let panelInitialSize = panel.props && isNotEmpty(panel.props.size) ? panel.props.size : null;\n let panelSize = panelInitialSize ?? 100 / this.panels.length;\n\n _panelSizes[i] = panelSize;\n children[i].style.flexBasis = 'calc(' + panelSize + '% - ' + (this.panels.length - 1) * this.gutterSize + 'px)';\n });\n\n this.panelSizes = _panelSizes;\n this.prevSize = parseFloat(_panelSizes[0]).toFixed(4);\n }\n }\n },\n onResizeStart(event, index, isKeyDown) {\n this.gutterElement = event.currentTarget || event.target.parentElement;\n this.size = this.horizontal ? getWidth(this.$el) : getHeight(this.$el);\n\n if (!isKeyDown) {\n this.dragging = true;\n this.startPos = this.layout === 'horizontal' ? event.pageX || event.changedTouches[0].pageX : event.pageY || event.changedTouches[0].pageY;\n }\n\n this.prevPanelElement = this.gutterElement.previousElementSibling;\n this.nextPanelElement = this.gutterElement.nextElementSibling;\n\n if (isKeyDown) {\n this.prevPanelSize = this.horizontal ? getOuterWidth(this.prevPanelElement, true) : getOuterHeight(this.prevPanelElement, true);\n this.nextPanelSize = this.horizontal ? getOuterWidth(this.nextPanelElement, true) : getOuterHeight(this.nextPanelElement, true);\n } else {\n this.prevPanelSize = (100 * (this.horizontal ? getOuterWidth(this.prevPanelElement, true) : getOuterHeight(this.prevPanelElement, true))) / this.size;\n this.nextPanelSize = (100 * (this.horizontal ? getOuterWidth(this.nextPanelElement, true) : getOuterHeight(this.nextPanelElement, true))) / this.size;\n }\n\n this.prevPanelIndex = index;\n this.$emit('resizestart', { originalEvent: event, sizes: this.panelSizes });\n this.$refs.gutter[index].setAttribute('data-p-gutter-resizing', true);\n this.$el.setAttribute('data-p-resizing', true);\n },\n onResize(event, step, isKeyDown) {\n let newPos, newPrevPanelSize, newNextPanelSize;\n\n if (isKeyDown) {\n if (this.horizontal) {\n newPrevPanelSize = (100 * (this.prevPanelSize + step)) / this.size;\n newNextPanelSize = (100 * (this.nextPanelSize - step)) / this.size;\n } else {\n newPrevPanelSize = (100 * (this.prevPanelSize - step)) / this.size;\n newNextPanelSize = (100 * (this.nextPanelSize + step)) / this.size;\n }\n } else {\n if (this.horizontal) {\n if (isRTL(this.$el)) {\n newPos = ((this.startPos - event.pageX) * 100) / this.size;\n } else {\n newPos = ((event.pageX - this.startPos) * 100) / this.size;\n }\n } else {\n newPos = ((event.pageY - this.startPos) * 100) / this.size;\n }\n\n newPrevPanelSize = this.prevPanelSize + newPos;\n newNextPanelSize = this.nextPanelSize - newPos;\n }\n\n if (!this.validateResize(newPrevPanelSize, newNextPanelSize)) {\n newPrevPanelSize = Math.min(Math.max(this.prevPanelMinSize, newPrevPanelSize), 100 - this.nextPanelMinSize);\n newNextPanelSize = Math.min(Math.max(this.nextPanelMinSize, newNextPanelSize), 100 - this.prevPanelMinSize);\n }\n\n this.prevPanelElement.style.flexBasis = 'calc(' + newPrevPanelSize + '% - ' + (this.panels.length - 1) * this.gutterSize + 'px)';\n this.nextPanelElement.style.flexBasis = 'calc(' + newNextPanelSize + '% - ' + (this.panels.length - 1) * this.gutterSize + 'px)';\n this.panelSizes[this.prevPanelIndex] = newPrevPanelSize;\n this.panelSizes[this.prevPanelIndex + 1] = newNextPanelSize;\n this.prevSize = parseFloat(newPrevPanelSize).toFixed(4);\n\n this.$emit('resize', { originalEvent: event, sizes: this.panelSizes });\n },\n onResizeEnd(event) {\n if (this.isStateful()) {\n this.saveState();\n }\n\n this.$emit('resizeend', { originalEvent: event, sizes: this.panelSizes });\n this.$refs.gutter.forEach((gutter) => gutter.setAttribute('data-p-gutter-resizing', false));\n this.$el.setAttribute('data-p-resizing', false);\n this.clear();\n },\n repeat(event, index, step) {\n this.onResizeStart(event, index, true);\n this.onResize(event, step, true);\n },\n setTimer(event, index, step) {\n if (!this.timer) {\n this.timer = setInterval(() => {\n this.repeat(event, index, step);\n }, 40);\n }\n },\n clearTimer() {\n if (this.timer) {\n clearInterval(this.timer);\n this.timer = null;\n }\n },\n onGutterKeyUp() {\n this.clearTimer();\n this.onResizeEnd();\n },\n onGutterKeyDown(event, index) {\n switch (event.code) {\n case 'ArrowLeft': {\n if (this.layout === 'horizontal') {\n this.setTimer(event, index, this.step * -1);\n }\n\n event.preventDefault();\n break;\n }\n\n case 'ArrowRight': {\n if (this.layout === 'horizontal') {\n this.setTimer(event, index, this.step);\n }\n\n event.preventDefault();\n break;\n }\n\n case 'ArrowDown': {\n if (this.layout === 'vertical') {\n this.setTimer(event, index, this.step * -1);\n }\n\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n if (this.layout === 'vertical') {\n this.setTimer(event, index, this.step);\n }\n\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n },\n onGutterMouseDown(event, index) {\n this.onResizeStart(event, index);\n this.bindMouseListeners();\n },\n onGutterTouchStart(event, index) {\n this.onResizeStart(event, index);\n this.bindTouchListeners();\n event.preventDefault();\n },\n onGutterTouchMove(event) {\n this.onResize(event);\n event.preventDefault();\n },\n onGutterTouchEnd(event) {\n this.onResizeEnd(event);\n this.unbindTouchListeners();\n event.preventDefault();\n },\n bindMouseListeners() {\n if (!this.mouseMoveListener) {\n this.mouseMoveListener = (event) => this.onResize(event);\n document.addEventListener('mousemove', this.mouseMoveListener);\n }\n\n if (!this.mouseUpListener) {\n this.mouseUpListener = (event) => {\n this.onResizeEnd(event);\n this.unbindMouseListeners();\n };\n\n document.addEventListener('mouseup', this.mouseUpListener);\n }\n },\n bindTouchListeners() {\n if (!this.touchMoveListener) {\n this.touchMoveListener = (event) => this.onResize(event.changedTouches[0]);\n document.addEventListener('touchmove', this.touchMoveListener);\n }\n\n if (!this.touchEndListener) {\n this.touchEndListener = (event) => {\n this.resizeEnd(event);\n this.unbindTouchListeners();\n };\n\n document.addEventListener('touchend', this.touchEndListener);\n }\n },\n validateResize(newPrevPanelSize, newNextPanelSize) {\n if (newPrevPanelSize > 100 || newPrevPanelSize < 0) return false;\n if (newNextPanelSize > 100 || newNextPanelSize < 0) return false;\n\n if (this.prevPanelMinSize > newPrevPanelSize) {\n return false;\n }\n\n if (this.nextPanelMinSize > newNextPanelSize) {\n return false;\n }\n\n return true;\n },\n unbindMouseListeners() {\n if (this.mouseMoveListener) {\n document.removeEventListener('mousemove', this.mouseMoveListener);\n this.mouseMoveListener = null;\n }\n\n if (this.mouseUpListener) {\n document.removeEventListener('mouseup', this.mouseUpListener);\n this.mouseUpListener = null;\n }\n },\n unbindTouchListeners() {\n if (this.touchMoveListener) {\n document.removeEventListener('touchmove', this.touchMoveListener);\n this.touchMoveListener = null;\n }\n\n if (this.touchEndListener) {\n document.removeEventListener('touchend', this.touchEndListener);\n this.touchEndListener = null;\n }\n },\n clear() {\n this.dragging = false;\n this.size = null;\n this.startPos = null;\n this.prevPanelElement = null;\n this.nextPanelElement = null;\n this.prevPanelSize = null;\n this.nextPanelSize = null;\n this.gutterElement = null;\n this.prevPanelIndex = null;\n },\n isStateful() {\n return this.stateKey != null;\n },\n getStorage() {\n switch (this.stateStorage) {\n case 'local':\n return window.localStorage;\n\n case 'session':\n return window.sessionStorage;\n\n default:\n throw new Error(this.stateStorage + ' is not a valid value for the state storage, supported values are \"local\" and \"session\".');\n }\n },\n saveState() {\n if (isArray(this.panelSizes)) {\n this.getStorage().setItem(this.stateKey, JSON.stringify(this.panelSizes));\n }\n },\n restoreState() {\n const storage = this.getStorage();\n const stateString = storage.getItem(this.stateKey);\n\n if (stateString) {\n this.panelSizes = JSON.parse(stateString);\n let children = [...this.$el.children].filter((child) => child.getAttribute('data-pc-name') === 'splitterpanel');\n\n children.forEach((child, i) => {\n child.style.flexBasis = 'calc(' + this.panelSizes[i] + '% - ' + (this.panels.length - 1) * this.gutterSize + 'px)';\n });\n\n return true;\n }\n\n return false;\n },\n resetState() {\n this.initializePanels();\n }\n },\n computed: {\n panels() {\n const panels = [];\n\n this.$slots.default().forEach((child) => {\n if (this.isSplitterPanel(child)) {\n panels.push(child);\n } else if (child.children instanceof Array) {\n child.children.forEach((nestedChild) => {\n if (this.isSplitterPanel(nestedChild)) {\n panels.push(nestedChild);\n }\n });\n }\n });\n\n return panels;\n },\n gutterStyle() {\n if (this.horizontal) return { width: this.gutterSize + 'px' };\n else return { height: this.gutterSize + 'px' };\n },\n horizontal() {\n return this.layout === 'horizontal';\n },\n getPTOptions() {\n return {\n context: {\n nested: this.$parentInstance?.nestedState\n }\n };\n },\n prevPanelMinSize() {\n const prevPanelMinSize = getVNodeProp(this.panels[this.prevPanelIndex], 'minSize');\n\n if (this.panels[this.prevPanelIndex].props && prevPanelMinSize) {\n return prevPanelMinSize;\n }\n\n return 0;\n },\n nextPanelMinSize() {\n const nextPanelMinSize = getVNodeProp(this.panels[this.prevPanelIndex + 1], 'minSize');\n\n if (this.panels[this.prevPanelIndex + 1].props && nextPanelMinSize) {\n return nextPanelMinSize;\n }\n\n return 0;\n },\n dataP() {\n return cn({\n [this.layout]: this.layout,\n nested: this.$parentInstance?.nestedState != null\n });\n }\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","layout","type","String","gutterSize","Number","stateKey","stateStorage","step","style","SplitterStyle","provide","$pcSplitter","$parentInstance","BaseSplitter","inheritAttrs","emits","dragging","mouseMoveListener","mouseUpListener","touchMoveListener","touchEndListener","size","gutterElement","startPos","prevPanelElement","nextPanelElement","nextPanelSize","prevPanelSize","panelSizes","prevPanelIndex","timer","data","prevSize","mounted","initializePanels","beforeUnmount","clear","unbindMouseListeners","methods","isSplitterPanel","child","_this","panels","length","initialized","isStateful","restoreState","children","_toConsumableArray","$el","filter","getAttribute","_panelSizes","map","panel","i","panelInitialSize","isNotEmpty","panelSize","flexBasis","parseFloat","toFixed","onResizeStart","event","index","isKeyDown","currentTarget","target","parentElement","horizontal","getWidth","getHeight","pageX","changedTouches","pageY","previousElementSibling","nextElementSibling","getOuterWidth","getOuterHeight","$emit","originalEvent","sizes","$refs","gutter","setAttribute","onResize","newPos","newPrevPanelSize","newNextPanelSize","isRTL","validateResize","Math","min","max","prevPanelMinSize","nextPanelMinSize","onResizeEnd","saveState","forEach","repeat","setTimer","_this2","setInterval","clearTimer","clearInterval","onGutterKeyUp","onGutterKeyDown","code","preventDefault","onGutterMouseDown","bindMouseListeners","onGutterTouchStart","bindTouchListeners","onGutterTouchMove","onGutterTouchEnd","unbindTouchListeners","_this3","document","addEventListener","_this4","resizeEnd","removeEventListener","getStorage","window","localStorage","sessionStorage","Error","isArray","setItem","JSON","stringify","_this5","storage","stateString","getItem","parse","resetState","computed","_this6","$slots","push","Array","nestedChild","gutterStyle","width","height","getPTOptions","_this$$parentInstance","context","nested","nestedState","getVNodeProp","dataP","_this$$parentInstance2","cn","_defineProperty","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","$options","ptmi","_Fragment","_renderList","_createBlock","_resolveDynamicComponent","tabindex","ref","role","onMousedown","$event","onTouchstart","onTouchmove","onTouchend","ptm","_createElementVNode","$data","onKeyup","apply","arguments","onKeydown","_hoisted_3"],"mappings":"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"}
|
package/steps/index.mjs
CHANGED
|
@@ -221,20 +221,24 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
221
221
|
},
|
|
222
222
|
onKeydown: function onKeydown($event) {
|
|
223
223
|
return $options.onItemKeydown($event, item, index);
|
|
224
|
-
}
|
|
224
|
+
}
|
|
225
|
+
}, {
|
|
225
226
|
ref_for: true
|
|
226
227
|
}, $options.getPTOptions('item', item, index), {
|
|
227
228
|
"data-p-active": $options.isActive(index),
|
|
228
229
|
"data-p-disabled": $options.isItemDisabled(item, index)
|
|
229
230
|
}), [!_ctx.$slots.item ? (openBlock(), createElementBlock("span", mergeProps({
|
|
230
231
|
key: 0,
|
|
231
|
-
"class": _ctx.cx('itemLink')
|
|
232
|
+
"class": _ctx.cx('itemLink')
|
|
233
|
+
}, {
|
|
232
234
|
ref_for: true
|
|
233
235
|
}, $options.getPTOptions('itemLink', item, index)), [createElementVNode("span", mergeProps({
|
|
234
|
-
"class": _ctx.cx('itemNumber')
|
|
236
|
+
"class": _ctx.cx('itemNumber')
|
|
237
|
+
}, {
|
|
235
238
|
ref_for: true
|
|
236
239
|
}, $options.getPTOptions('itemNumber', item, index)), toDisplayString(index + 1), 17), createElementVNode("span", mergeProps({
|
|
237
|
-
"class": _ctx.cx('itemLabel')
|
|
240
|
+
"class": _ctx.cx('itemLabel')
|
|
241
|
+
}, {
|
|
238
242
|
ref_for: true
|
|
239
243
|
}, $options.getPTOptions('itemLabel', item, index)), toDisplayString($options.label(item)), 17)], 16)) : (openBlock(), createBlock(resolveDynamicComponent(_ctx.$slots.item), {
|
|
240
244
|
key: 1,
|
package/steps/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/steps/BaseSteps.vue","../../src/steps/Steps.vue","../../src/steps/Steps.vue?vue&type=template&id=514a482f&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport StepsStyle from 'primevue/steps/style';\n\nexport default {\n name: 'BaseSteps',\n extends: BaseComponent,\n props: {\n id: {\n type: String\n },\n model: {\n type: Array,\n default: null\n },\n readonly: {\n type: Boolean,\n default: true\n },\n activeStep: {\n type: Number,\n default: 0\n }\n },\n style: StepsStyle,\n provide() {\n return {\n $pcSteps: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <nav :id=\"id\" :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <ol ref=\"list\" :class=\"cx('list')\" v-bind=\"ptm('list')\">\n <template v-for=\"(item, index) of model\" :key=\"label(item) + '_' + index.toString()\">\n <li\n v-if=\"visible(item)\"\n :class=\"[cx('item', { item, index }), item.class]\"\n :style=\"item.style\"\n :aria-current=\"isActive(index) ? 'step' : undefined\"\n @click=\"onItemClick($event, item, index)\"\n @keydown=\"onItemKeydown($event, item, index)\"\n v-bind=\"getPTOptions('item', item, index)\"\n :data-p-active=\"isActive(index)\"\n :data-p-disabled=\"isItemDisabled(item, index)\"\n >\n <template v-if=\"!$slots.item\">\n <span :class=\"cx('itemLink')\" v-bind=\"getPTOptions('itemLink', item, index)\">\n <span :class=\"cx('itemNumber')\" v-bind=\"getPTOptions('itemNumber', item, index)\">{{ index + 1 }}</span>\n <span :class=\"cx('itemLabel')\" v-bind=\"getPTOptions('itemLabel', item, index)\">{{ label(item) }}</span>\n </span>\n </template>\n <component v-else :is=\"$slots.item\" :item=\"item\" :index=\"index\" :active=\"index === d_activeStep\" :label=\"label(item)\" :props=\"getMenuItemProps(item, index)\"></component>\n </li>\n </template>\n </ol>\n </nav>\n</template>\n\n<script>\nimport { findSingle, find } from '@primeuix/utils/dom';\nimport { mergeProps } from 'vue';\nimport BaseSteps from './BaseSteps.vue';\n\nexport default {\n name: 'Steps',\n extends: BaseSteps,\n inheritAttrs: false,\n emits: ['update:activeStep', 'step-change'],\n data() {\n return {\n d_activeStep: this.activeStep\n };\n },\n watch: {\n activeStep(newValue) {\n this.d_activeStep = newValue;\n }\n },\n mounted() {\n const firstItem = this.findFirstItem();\n\n firstItem && (firstItem.tabIndex = '0');\n },\n methods: {\n getPTOptions(key, item, index) {\n return this.ptm(key, {\n context: {\n item,\n index,\n active: this.isActive(index),\n disabled: this.isItemDisabled(item, index)\n }\n });\n },\n onItemClick(event, item, index) {\n if (this.disabled(item) || this.readonly) {\n event.preventDefault();\n\n return;\n }\n\n if (item.command) {\n item.command({\n originalEvent: event,\n item: item\n });\n }\n\n if (index !== this.d_activeStep) {\n this.d_activeStep = index;\n this.$emit('update:activeStep', this.d_activeStep);\n }\n\n this.$emit('step-change', {\n originalEvent: event,\n index: index\n });\n },\n onItemKeydown(event, item) {\n switch (event.code) {\n case 'ArrowRight': {\n this.navigateToNextItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.navigateToPrevItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'Home': {\n this.navigateToFirstItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'End': {\n this.navigateToLastItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'Tab':\n //no op\n break;\n\n case 'Enter':\n case 'NumpadEnter':\n\n case 'Space': {\n this.onItemClick(event, item);\n event.preventDefault();\n break;\n }\n\n default:\n break;\n }\n },\n navigateToNextItem(target) {\n const nextItem = this.findNextItem(target);\n\n nextItem && this.setFocusToMenuitem(target, nextItem);\n },\n navigateToPrevItem(target) {\n const prevItem = this.findPrevItem(target);\n\n prevItem && this.setFocusToMenuitem(target, prevItem);\n },\n navigateToFirstItem(target) {\n const firstItem = this.findFirstItem(target);\n\n firstItem && this.setFocusToMenuitem(target, firstItem);\n },\n navigateToLastItem(target) {\n const lastItem = this.findLastItem(target);\n\n lastItem && this.setFocusToMenuitem(target, lastItem);\n },\n findNextItem(item) {\n const nextItem = item.parentElement.nextElementSibling;\n\n return nextItem ? nextItem.children[0] : null;\n },\n findPrevItem(item) {\n const prevItem = item.parentElement.previousElementSibling;\n\n return prevItem ? prevItem.children[0] : null;\n },\n findFirstItem() {\n const firstSibling = findSingle(this.$refs.list, '[data-pc-section=\"item\"]');\n\n return firstSibling ? firstSibling.children[0] : null;\n },\n findLastItem() {\n const siblings = find(this.$refs.list, '[data-pc-section=\"item\"]');\n\n return siblings ? siblings[siblings.length - 1].children[0] : null;\n },\n setFocusToMenuitem(target, focusableItem) {\n target.tabIndex = '-1';\n focusableItem.tabIndex = '0';\n focusableItem.focus();\n },\n isActive(index) {\n return index === this.d_activeStep;\n },\n isItemDisabled(item, index) {\n return this.disabled(item) || (this.readonly && !this.isActive(index));\n },\n visible(item) {\n return typeof item.visible === 'function' ? item.visible() : item.visible !== false;\n },\n disabled(item) {\n return typeof item.disabled === 'function' ? item.disabled() : item.disabled;\n },\n label(item) {\n return typeof item.label === 'function' ? item.label() : item.label;\n },\n getMenuItemProps(item, index) {\n return {\n action: mergeProps(\n {\n class: this.cx('itemLink'),\n onClick: ($event) => this.onItemClick($event, item),\n onKeyDown: ($event) => this.onItemKeydown($event, item)\n },\n this.getPTOptions('itemLink', item, index)\n ),\n step: mergeProps(\n {\n class: this.cx('itemNumber')\n },\n this.getPTOptions('itemNumber', item, index)\n ),\n label: mergeProps(\n {\n class: this.cx('itemLabel')\n },\n this.getPTOptions('itemLabel', item, index)\n )\n };\n }\n }\n};\n</script>\n","<template>\n <nav :id=\"id\" :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <ol ref=\"list\" :class=\"cx('list')\" v-bind=\"ptm('list')\">\n <template v-for=\"(item, index) of model\" :key=\"label(item) + '_' + index.toString()\">\n <li\n v-if=\"visible(item)\"\n :class=\"[cx('item', { item, index }), item.class]\"\n :style=\"item.style\"\n :aria-current=\"isActive(index) ? 'step' : undefined\"\n @click=\"onItemClick($event, item, index)\"\n @keydown=\"onItemKeydown($event, item, index)\"\n v-bind=\"getPTOptions('item', item, index)\"\n :data-p-active=\"isActive(index)\"\n :data-p-disabled=\"isItemDisabled(item, index)\"\n >\n <template v-if=\"!$slots.item\">\n <span :class=\"cx('itemLink')\" v-bind=\"getPTOptions('itemLink', item, index)\">\n <span :class=\"cx('itemNumber')\" v-bind=\"getPTOptions('itemNumber', item, index)\">{{ index + 1 }}</span>\n <span :class=\"cx('itemLabel')\" v-bind=\"getPTOptions('itemLabel', item, index)\">{{ label(item) }}</span>\n </span>\n </template>\n <component v-else :is=\"$slots.item\" :item=\"item\" :index=\"index\" :active=\"index === d_activeStep\" :label=\"label(item)\" :props=\"getMenuItemProps(item, index)\"></component>\n </li>\n </template>\n </ol>\n </nav>\n</template>\n\n<script>\nimport { findSingle, find } from '@primeuix/utils/dom';\nimport { mergeProps } from 'vue';\nimport BaseSteps from './BaseSteps.vue';\n\nexport default {\n name: 'Steps',\n extends: BaseSteps,\n inheritAttrs: false,\n emits: ['update:activeStep', 'step-change'],\n data() {\n return {\n d_activeStep: this.activeStep\n };\n },\n watch: {\n activeStep(newValue) {\n this.d_activeStep = newValue;\n }\n },\n mounted() {\n const firstItem = this.findFirstItem();\n\n firstItem && (firstItem.tabIndex = '0');\n },\n methods: {\n getPTOptions(key, item, index) {\n return this.ptm(key, {\n context: {\n item,\n index,\n active: this.isActive(index),\n disabled: this.isItemDisabled(item, index)\n }\n });\n },\n onItemClick(event, item, index) {\n if (this.disabled(item) || this.readonly) {\n event.preventDefault();\n\n return;\n }\n\n if (item.command) {\n item.command({\n originalEvent: event,\n item: item\n });\n }\n\n if (index !== this.d_activeStep) {\n this.d_activeStep = index;\n this.$emit('update:activeStep', this.d_activeStep);\n }\n\n this.$emit('step-change', {\n originalEvent: event,\n index: index\n });\n },\n onItemKeydown(event, item) {\n switch (event.code) {\n case 'ArrowRight': {\n this.navigateToNextItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.navigateToPrevItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'Home': {\n this.navigateToFirstItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'End': {\n this.navigateToLastItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'Tab':\n //no op\n break;\n\n case 'Enter':\n case 'NumpadEnter':\n\n case 'Space': {\n this.onItemClick(event, item);\n event.preventDefault();\n break;\n }\n\n default:\n break;\n }\n },\n navigateToNextItem(target) {\n const nextItem = this.findNextItem(target);\n\n nextItem && this.setFocusToMenuitem(target, nextItem);\n },\n navigateToPrevItem(target) {\n const prevItem = this.findPrevItem(target);\n\n prevItem && this.setFocusToMenuitem(target, prevItem);\n },\n navigateToFirstItem(target) {\n const firstItem = this.findFirstItem(target);\n\n firstItem && this.setFocusToMenuitem(target, firstItem);\n },\n navigateToLastItem(target) {\n const lastItem = this.findLastItem(target);\n\n lastItem && this.setFocusToMenuitem(target, lastItem);\n },\n findNextItem(item) {\n const nextItem = item.parentElement.nextElementSibling;\n\n return nextItem ? nextItem.children[0] : null;\n },\n findPrevItem(item) {\n const prevItem = item.parentElement.previousElementSibling;\n\n return prevItem ? prevItem.children[0] : null;\n },\n findFirstItem() {\n const firstSibling = findSingle(this.$refs.list, '[data-pc-section=\"item\"]');\n\n return firstSibling ? firstSibling.children[0] : null;\n },\n findLastItem() {\n const siblings = find(this.$refs.list, '[data-pc-section=\"item\"]');\n\n return siblings ? siblings[siblings.length - 1].children[0] : null;\n },\n setFocusToMenuitem(target, focusableItem) {\n target.tabIndex = '-1';\n focusableItem.tabIndex = '0';\n focusableItem.focus();\n },\n isActive(index) {\n return index === this.d_activeStep;\n },\n isItemDisabled(item, index) {\n return this.disabled(item) || (this.readonly && !this.isActive(index));\n },\n visible(item) {\n return typeof item.visible === 'function' ? item.visible() : item.visible !== false;\n },\n disabled(item) {\n return typeof item.disabled === 'function' ? item.disabled() : item.disabled;\n },\n label(item) {\n return typeof item.label === 'function' ? item.label() : item.label;\n },\n getMenuItemProps(item, index) {\n return {\n action: mergeProps(\n {\n class: this.cx('itemLink'),\n onClick: ($event) => this.onItemClick($event, item),\n onKeyDown: ($event) => this.onItemKeydown($event, item)\n },\n this.getPTOptions('itemLink', item, index)\n ),\n step: mergeProps(\n {\n class: this.cx('itemNumber')\n },\n this.getPTOptions('itemNumber', item, index)\n ),\n label: mergeProps(\n {\n class: this.cx('itemLabel')\n },\n this.getPTOptions('itemLabel', item, index)\n )\n };\n }\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","id","type","String","model","Array","readonly","Boolean","activeStep","Number","style","StepsStyle","provide","$pcSteps","$parentInstance","BaseSteps","inheritAttrs","emits","data","d_activeStep","watch","newValue","mounted","firstItem","findFirstItem","tabIndex","methods","getPTOptions","key","item","index","ptm","context","active","isActive","disabled","isItemDisabled","onItemClick","event","preventDefault","command","originalEvent","$emit","onItemKeydown","code","navigateToNextItem","target","navigateToPrevItem","navigateToFirstItem","navigateToLastItem","nextItem","findNextItem","setFocusToMenuitem","prevItem","findPrevItem","lastItem","findLastItem","parentElement","nextElementSibling","children","previousElementSibling","firstSibling","findSingle","$refs","list","siblings","find","length","focusableItem","focus","visible","label","getMenuItemProps","_this","action","mergeProps","cx","onClick","$event","onKeyDown","step","_openBlock","_createElementBlock","_mergeProps","_ctx","ptmi","_createElementVNode","ref","_Fragment","_renderList","$options","toString","undefined","onKeydown","$slots","_toDisplayString","_createBlock","_resolveDynamicComponent","$data"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/steps/BaseSteps.vue","../../src/steps/Steps.vue","../../src/steps/Steps.vue?vue&type=template&id=514a482f&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport StepsStyle from 'primevue/steps/style';\n\nexport default {\n name: 'BaseSteps',\n extends: BaseComponent,\n props: {\n id: {\n type: String\n },\n model: {\n type: Array,\n default: null\n },\n readonly: {\n type: Boolean,\n default: true\n },\n activeStep: {\n type: Number,\n default: 0\n }\n },\n style: StepsStyle,\n provide() {\n return {\n $pcSteps: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <nav :id=\"id\" :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <ol ref=\"list\" :class=\"cx('list')\" v-bind=\"ptm('list')\">\n <template v-for=\"(item, index) of model\" :key=\"label(item) + '_' + index.toString()\">\n <li\n v-if=\"visible(item)\"\n :class=\"[cx('item', { item, index }), item.class]\"\n :style=\"item.style\"\n :aria-current=\"isActive(index) ? 'step' : undefined\"\n @click=\"onItemClick($event, item, index)\"\n @keydown=\"onItemKeydown($event, item, index)\"\n v-bind=\"getPTOptions('item', item, index)\"\n :data-p-active=\"isActive(index)\"\n :data-p-disabled=\"isItemDisabled(item, index)\"\n >\n <template v-if=\"!$slots.item\">\n <span :class=\"cx('itemLink')\" v-bind=\"getPTOptions('itemLink', item, index)\">\n <span :class=\"cx('itemNumber')\" v-bind=\"getPTOptions('itemNumber', item, index)\">{{ index + 1 }}</span>\n <span :class=\"cx('itemLabel')\" v-bind=\"getPTOptions('itemLabel', item, index)\">{{ label(item) }}</span>\n </span>\n </template>\n <component v-else :is=\"$slots.item\" :item=\"item\" :index=\"index\" :active=\"index === d_activeStep\" :label=\"label(item)\" :props=\"getMenuItemProps(item, index)\"></component>\n </li>\n </template>\n </ol>\n </nav>\n</template>\n\n<script>\nimport { findSingle, find } from '@primeuix/utils/dom';\nimport { mergeProps } from 'vue';\nimport BaseSteps from './BaseSteps.vue';\n\nexport default {\n name: 'Steps',\n extends: BaseSteps,\n inheritAttrs: false,\n emits: ['update:activeStep', 'step-change'],\n data() {\n return {\n d_activeStep: this.activeStep\n };\n },\n watch: {\n activeStep(newValue) {\n this.d_activeStep = newValue;\n }\n },\n mounted() {\n const firstItem = this.findFirstItem();\n\n firstItem && (firstItem.tabIndex = '0');\n },\n methods: {\n getPTOptions(key, item, index) {\n return this.ptm(key, {\n context: {\n item,\n index,\n active: this.isActive(index),\n disabled: this.isItemDisabled(item, index)\n }\n });\n },\n onItemClick(event, item, index) {\n if (this.disabled(item) || this.readonly) {\n event.preventDefault();\n\n return;\n }\n\n if (item.command) {\n item.command({\n originalEvent: event,\n item: item\n });\n }\n\n if (index !== this.d_activeStep) {\n this.d_activeStep = index;\n this.$emit('update:activeStep', this.d_activeStep);\n }\n\n this.$emit('step-change', {\n originalEvent: event,\n index: index\n });\n },\n onItemKeydown(event, item) {\n switch (event.code) {\n case 'ArrowRight': {\n this.navigateToNextItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.navigateToPrevItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'Home': {\n this.navigateToFirstItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'End': {\n this.navigateToLastItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'Tab':\n //no op\n break;\n\n case 'Enter':\n case 'NumpadEnter':\n\n case 'Space': {\n this.onItemClick(event, item);\n event.preventDefault();\n break;\n }\n\n default:\n break;\n }\n },\n navigateToNextItem(target) {\n const nextItem = this.findNextItem(target);\n\n nextItem && this.setFocusToMenuitem(target, nextItem);\n },\n navigateToPrevItem(target) {\n const prevItem = this.findPrevItem(target);\n\n prevItem && this.setFocusToMenuitem(target, prevItem);\n },\n navigateToFirstItem(target) {\n const firstItem = this.findFirstItem(target);\n\n firstItem && this.setFocusToMenuitem(target, firstItem);\n },\n navigateToLastItem(target) {\n const lastItem = this.findLastItem(target);\n\n lastItem && this.setFocusToMenuitem(target, lastItem);\n },\n findNextItem(item) {\n const nextItem = item.parentElement.nextElementSibling;\n\n return nextItem ? nextItem.children[0] : null;\n },\n findPrevItem(item) {\n const prevItem = item.parentElement.previousElementSibling;\n\n return prevItem ? prevItem.children[0] : null;\n },\n findFirstItem() {\n const firstSibling = findSingle(this.$refs.list, '[data-pc-section=\"item\"]');\n\n return firstSibling ? firstSibling.children[0] : null;\n },\n findLastItem() {\n const siblings = find(this.$refs.list, '[data-pc-section=\"item\"]');\n\n return siblings ? siblings[siblings.length - 1].children[0] : null;\n },\n setFocusToMenuitem(target, focusableItem) {\n target.tabIndex = '-1';\n focusableItem.tabIndex = '0';\n focusableItem.focus();\n },\n isActive(index) {\n return index === this.d_activeStep;\n },\n isItemDisabled(item, index) {\n return this.disabled(item) || (this.readonly && !this.isActive(index));\n },\n visible(item) {\n return typeof item.visible === 'function' ? item.visible() : item.visible !== false;\n },\n disabled(item) {\n return typeof item.disabled === 'function' ? item.disabled() : item.disabled;\n },\n label(item) {\n return typeof item.label === 'function' ? item.label() : item.label;\n },\n getMenuItemProps(item, index) {\n return {\n action: mergeProps(\n {\n class: this.cx('itemLink'),\n onClick: ($event) => this.onItemClick($event, item),\n onKeyDown: ($event) => this.onItemKeydown($event, item)\n },\n this.getPTOptions('itemLink', item, index)\n ),\n step: mergeProps(\n {\n class: this.cx('itemNumber')\n },\n this.getPTOptions('itemNumber', item, index)\n ),\n label: mergeProps(\n {\n class: this.cx('itemLabel')\n },\n this.getPTOptions('itemLabel', item, index)\n )\n };\n }\n }\n};\n</script>\n","<template>\n <nav :id=\"id\" :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <ol ref=\"list\" :class=\"cx('list')\" v-bind=\"ptm('list')\">\n <template v-for=\"(item, index) of model\" :key=\"label(item) + '_' + index.toString()\">\n <li\n v-if=\"visible(item)\"\n :class=\"[cx('item', { item, index }), item.class]\"\n :style=\"item.style\"\n :aria-current=\"isActive(index) ? 'step' : undefined\"\n @click=\"onItemClick($event, item, index)\"\n @keydown=\"onItemKeydown($event, item, index)\"\n v-bind=\"getPTOptions('item', item, index)\"\n :data-p-active=\"isActive(index)\"\n :data-p-disabled=\"isItemDisabled(item, index)\"\n >\n <template v-if=\"!$slots.item\">\n <span :class=\"cx('itemLink')\" v-bind=\"getPTOptions('itemLink', item, index)\">\n <span :class=\"cx('itemNumber')\" v-bind=\"getPTOptions('itemNumber', item, index)\">{{ index + 1 }}</span>\n <span :class=\"cx('itemLabel')\" v-bind=\"getPTOptions('itemLabel', item, index)\">{{ label(item) }}</span>\n </span>\n </template>\n <component v-else :is=\"$slots.item\" :item=\"item\" :index=\"index\" :active=\"index === d_activeStep\" :label=\"label(item)\" :props=\"getMenuItemProps(item, index)\"></component>\n </li>\n </template>\n </ol>\n </nav>\n</template>\n\n<script>\nimport { findSingle, find } from '@primeuix/utils/dom';\nimport { mergeProps } from 'vue';\nimport BaseSteps from './BaseSteps.vue';\n\nexport default {\n name: 'Steps',\n extends: BaseSteps,\n inheritAttrs: false,\n emits: ['update:activeStep', 'step-change'],\n data() {\n return {\n d_activeStep: this.activeStep\n };\n },\n watch: {\n activeStep(newValue) {\n this.d_activeStep = newValue;\n }\n },\n mounted() {\n const firstItem = this.findFirstItem();\n\n firstItem && (firstItem.tabIndex = '0');\n },\n methods: {\n getPTOptions(key, item, index) {\n return this.ptm(key, {\n context: {\n item,\n index,\n active: this.isActive(index),\n disabled: this.isItemDisabled(item, index)\n }\n });\n },\n onItemClick(event, item, index) {\n if (this.disabled(item) || this.readonly) {\n event.preventDefault();\n\n return;\n }\n\n if (item.command) {\n item.command({\n originalEvent: event,\n item: item\n });\n }\n\n if (index !== this.d_activeStep) {\n this.d_activeStep = index;\n this.$emit('update:activeStep', this.d_activeStep);\n }\n\n this.$emit('step-change', {\n originalEvent: event,\n index: index\n });\n },\n onItemKeydown(event, item) {\n switch (event.code) {\n case 'ArrowRight': {\n this.navigateToNextItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.navigateToPrevItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'Home': {\n this.navigateToFirstItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'End': {\n this.navigateToLastItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'Tab':\n //no op\n break;\n\n case 'Enter':\n case 'NumpadEnter':\n\n case 'Space': {\n this.onItemClick(event, item);\n event.preventDefault();\n break;\n }\n\n default:\n break;\n }\n },\n navigateToNextItem(target) {\n const nextItem = this.findNextItem(target);\n\n nextItem && this.setFocusToMenuitem(target, nextItem);\n },\n navigateToPrevItem(target) {\n const prevItem = this.findPrevItem(target);\n\n prevItem && this.setFocusToMenuitem(target, prevItem);\n },\n navigateToFirstItem(target) {\n const firstItem = this.findFirstItem(target);\n\n firstItem && this.setFocusToMenuitem(target, firstItem);\n },\n navigateToLastItem(target) {\n const lastItem = this.findLastItem(target);\n\n lastItem && this.setFocusToMenuitem(target, lastItem);\n },\n findNextItem(item) {\n const nextItem = item.parentElement.nextElementSibling;\n\n return nextItem ? nextItem.children[0] : null;\n },\n findPrevItem(item) {\n const prevItem = item.parentElement.previousElementSibling;\n\n return prevItem ? prevItem.children[0] : null;\n },\n findFirstItem() {\n const firstSibling = findSingle(this.$refs.list, '[data-pc-section=\"item\"]');\n\n return firstSibling ? firstSibling.children[0] : null;\n },\n findLastItem() {\n const siblings = find(this.$refs.list, '[data-pc-section=\"item\"]');\n\n return siblings ? siblings[siblings.length - 1].children[0] : null;\n },\n setFocusToMenuitem(target, focusableItem) {\n target.tabIndex = '-1';\n focusableItem.tabIndex = '0';\n focusableItem.focus();\n },\n isActive(index) {\n return index === this.d_activeStep;\n },\n isItemDisabled(item, index) {\n return this.disabled(item) || (this.readonly && !this.isActive(index));\n },\n visible(item) {\n return typeof item.visible === 'function' ? item.visible() : item.visible !== false;\n },\n disabled(item) {\n return typeof item.disabled === 'function' ? item.disabled() : item.disabled;\n },\n label(item) {\n return typeof item.label === 'function' ? item.label() : item.label;\n },\n getMenuItemProps(item, index) {\n return {\n action: mergeProps(\n {\n class: this.cx('itemLink'),\n onClick: ($event) => this.onItemClick($event, item),\n onKeyDown: ($event) => this.onItemKeydown($event, item)\n },\n this.getPTOptions('itemLink', item, index)\n ),\n step: mergeProps(\n {\n class: this.cx('itemNumber')\n },\n this.getPTOptions('itemNumber', item, index)\n ),\n label: mergeProps(\n {\n class: this.cx('itemLabel')\n },\n this.getPTOptions('itemLabel', item, index)\n )\n };\n }\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","id","type","String","model","Array","readonly","Boolean","activeStep","Number","style","StepsStyle","provide","$pcSteps","$parentInstance","BaseSteps","inheritAttrs","emits","data","d_activeStep","watch","newValue","mounted","firstItem","findFirstItem","tabIndex","methods","getPTOptions","key","item","index","ptm","context","active","isActive","disabled","isItemDisabled","onItemClick","event","preventDefault","command","originalEvent","$emit","onItemKeydown","code","navigateToNextItem","target","navigateToPrevItem","navigateToFirstItem","navigateToLastItem","nextItem","findNextItem","setFocusToMenuitem","prevItem","findPrevItem","lastItem","findLastItem","parentElement","nextElementSibling","children","previousElementSibling","firstSibling","findSingle","$refs","list","siblings","find","length","focusableItem","focus","visible","label","getMenuItemProps","_this","action","mergeProps","cx","onClick","$event","onKeyDown","step","_openBlock","_createElementBlock","_mergeProps","_ctx","ptmi","_createElementVNode","ref","_Fragment","_renderList","$options","toString","undefined","onKeydown","$slots","ref_for","_toDisplayString","_createBlock","_resolveDynamicComponent","$data"],"mappings":"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"}
|
package/tabmenu/index.mjs
CHANGED
|
@@ -266,6 +266,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
266
266
|
onKeydown: function onKeydown($event) {
|
|
267
267
|
return $options.onKeydownItem($event, item, i);
|
|
268
268
|
}
|
|
269
|
+
}, {
|
|
270
|
+
ref_for: true
|
|
269
271
|
}, $options.getPTOptions('item', item, i), {
|
|
270
272
|
"data-p-active": $data.d_activeIndex === i,
|
|
271
273
|
"data-p-disabled": $options.disabled(item)
|
|
@@ -280,16 +282,20 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
280
282
|
"aria-label": $options.label(item),
|
|
281
283
|
"aria-disabled": $options.disabled(item),
|
|
282
284
|
tabindex: -1
|
|
285
|
+
}, {
|
|
286
|
+
ref_for: true
|
|
283
287
|
}, $options.getPTOptions('itemLink', item, i)), [_ctx.$slots.itemicon ? (openBlock(), createBlock(resolveDynamicComponent(_ctx.$slots.itemicon), {
|
|
284
288
|
key: 0,
|
|
285
289
|
item: item,
|
|
286
290
|
"class": normalizeClass(_ctx.cx('itemIcon'))
|
|
287
291
|
}, null, 8, ["item", "class"])) : item.icon ? (openBlock(), createElementBlock("span", mergeProps({
|
|
288
292
|
key: 1,
|
|
289
|
-
"class": [_ctx.cx('itemIcon'), item.icon]
|
|
293
|
+
"class": [_ctx.cx('itemIcon'), item.icon]
|
|
294
|
+
}, {
|
|
290
295
|
ref_for: true
|
|
291
296
|
}, $options.getPTOptions('itemIcon', item, i)), null, 16)) : createCommentVNode("", true), createElementVNode("span", mergeProps({
|
|
292
|
-
"class": _ctx.cx('itemLabel')
|
|
297
|
+
"class": _ctx.cx('itemLabel')
|
|
298
|
+
}, {
|
|
293
299
|
ref_for: true
|
|
294
300
|
}, $options.getPTOptions('itemLabel', item, i)), toDisplayString($options.label(item)), 17)], 16, _hoisted_3)), [[_directive_ripple]]) : (openBlock(), createBlock(resolveDynamicComponent(_ctx.$slots.item), {
|
|
295
301
|
key: 1,
|