primevue 4.0.2 → 4.0.3
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.map +1 -1
- package/accordioncontent/index.mjs.map +1 -1
- package/accordionheader/index.mjs.map +1 -1
- package/accordionpanel/index.mjs.map +1 -1
- package/accordionpanel/style/index.mjs.map +1 -1
- package/accordiontab/index.mjs.map +1 -1
- package/animateonscroll/index.mjs.map +1 -1
- package/autocomplete/index.mjs.map +1 -1
- package/autocomplete/style/index.mjs.map +1 -1
- package/avatar/index.mjs.map +1 -1
- package/avatar/style/index.mjs.map +1 -1
- package/avatargroup/index.mjs.map +1 -1
- package/badge/index.mjs.map +1 -1
- package/badge/style/index.mjs.map +1 -1
- package/badgedirective/index.mjs.map +1 -1
- package/blockui/index.mjs.map +1 -1
- package/breadcrumb/index.mjs.map +1 -1
- package/breadcrumb/style/index.mjs.map +1 -1
- package/button/index.mjs.map +1 -1
- package/button/style/index.mjs.map +1 -1
- package/buttongroup/index.mjs.map +1 -1
- package/calendar/index.mjs.map +1 -1
- package/card/index.mjs.map +1 -1
- package/carousel/index.mjs.map +1 -1
- package/carousel/style/index.mjs.map +1 -1
- package/cascadeselect/index.mjs.map +1 -1
- package/cascadeselect/style/index.mjs.map +1 -1
- package/chart/index.mjs.map +1 -1
- package/checkbox/index.mjs.map +1 -1
- package/checkbox/style/index.mjs.map +1 -1
- package/chip/index.mjs.map +1 -1
- package/chips/index.mjs.map +1 -1
- package/colorpicker/BaseColorPicker.vue +4 -0
- package/colorpicker/index.mjs +4 -0
- package/colorpicker/index.mjs.map +1 -1
- package/colorpicker/style/index.mjs.map +1 -1
- package/column/index.mjs.map +1 -1
- package/columngroup/index.mjs.map +1 -1
- package/confirmationservice/index.mjs.map +1 -1
- package/confirmdialog/index.mjs.map +1 -1
- package/confirmpopup/index.mjs.map +1 -1
- package/contextmenu/index.mjs.map +1 -1
- package/contextmenu/style/index.mjs.map +1 -1
- package/datatable/index.mjs.map +1 -1
- package/datatable/style/index.mjs.map +1 -1
- package/dataview/index.mjs.map +1 -1
- package/dataview/style/index.mjs.map +1 -1
- package/datepicker/index.mjs.map +1 -1
- package/datepicker/style/index.mjs.map +1 -1
- package/deferredcontent/index.mjs.map +1 -1
- package/dialog/index.mjs.map +1 -1
- package/dialog/style/index.mjs.map +1 -1
- package/dialogservice/index.mjs.map +1 -1
- package/divider/index.mjs.map +1 -1
- package/divider/style/index.mjs.map +1 -1
- package/dock/index.mjs.map +1 -1
- package/dock/style/index.mjs.map +1 -1
- package/drawer/index.mjs.map +1 -1
- package/drawer/style/index.mjs.map +1 -1
- package/dropdown/index.mjs.map +1 -1
- package/dynamicdialog/index.mjs.map +1 -1
- package/editor/index.mjs.map +1 -1
- package/fieldset/index.mjs.map +1 -1
- package/fieldset/style/index.mjs.map +1 -1
- package/fileupload/index.mjs.map +1 -1
- package/fileupload/style/index.mjs.map +1 -1
- package/floatlabel/index.mjs.map +1 -1
- package/fluid/index.d.ts +2 -2
- package/fluid/index.mjs.map +1 -1
- package/fluid/style/index.d.ts +1 -1
- package/focustrap/index.mjs +3 -3
- package/focustrap/index.mjs.map +1 -1
- package/galleria/index.mjs.map +1 -1
- package/galleria/style/index.mjs.map +1 -1
- package/iconfield/index.mjs.map +1 -1
- package/iconfield/style/index.mjs +1 -1
- package/iconfield/style/index.mjs.map +1 -1
- package/image/index.mjs.map +1 -1
- package/image/style/index.mjs.map +1 -1
- package/inlinemessage/index.mjs.map +1 -1
- package/inlinemessage/style/index.mjs.map +1 -1
- package/inplace/index.mjs.map +1 -1
- package/inplace/style/index.mjs.map +1 -1
- package/inputchips/index.mjs.map +1 -1
- package/inputchips/style/index.mjs.map +1 -1
- package/inputgroup/index.mjs.map +1 -1
- package/inputgroup/style/index.mjs.map +1 -1
- package/inputgroupaddon/index.mjs.map +1 -1
- package/inputicon/index.mjs.map +1 -1
- package/inputmask/BaseInputMask.vue +1 -1
- package/inputmask/InputMask.vue +8 -1
- package/inputmask/index.mjs +11 -2
- package/inputmask/index.mjs.map +1 -1
- package/inputmask/style/index.mjs.map +1 -1
- package/inputnumber/index.mjs.map +1 -1
- package/inputnumber/style/index.mjs.map +1 -1
- package/inputotp/index.mjs.map +1 -1
- package/inputswitch/index.mjs.map +1 -1
- package/inputtext/index.mjs.map +1 -1
- package/inputtext/style/index.mjs.map +1 -1
- package/knob/index.mjs.map +1 -1
- package/knob/style/index.mjs.map +1 -1
- package/listbox/index.mjs.map +1 -1
- package/listbox/style/index.mjs.map +1 -1
- package/megamenu/index.mjs.map +1 -1
- package/megamenu/style/index.mjs.map +1 -1
- package/menu/index.mjs.map +1 -1
- package/menu/style/index.mjs.map +1 -1
- package/menubar/index.mjs.map +1 -1
- package/menubar/style/index.mjs.map +1 -1
- package/message/index.mjs.map +1 -1
- package/message/style/index.mjs.map +1 -1
- package/metergroup/index.mjs.map +1 -1
- package/metergroup/style/index.mjs.map +1 -1
- package/multiselect/index.mjs.map +1 -1
- package/multiselect/style/index.mjs.map +1 -1
- package/orderlist/index.mjs.map +1 -1
- package/organizationchart/index.mjs.map +1 -1
- package/organizationchart/style/index.mjs.map +1 -1
- package/overlaybadge/index.mjs.map +1 -1
- package/overlaypanel/index.mjs.map +1 -1
- package/package.json +3 -3
- package/paginator/index.mjs.map +1 -1
- package/paginator/style/index.mjs.map +1 -1
- package/panel/index.mjs.map +1 -1
- package/panel/style/index.mjs.map +1 -1
- package/panelmenu/index.mjs.map +1 -1
- package/panelmenu/style/index.mjs.map +1 -1
- package/password/index.mjs.map +1 -1
- package/password/style/index.mjs.map +1 -1
- package/picklist/index.mjs.map +1 -1
- package/popover/index.mjs.map +1 -1
- package/portal/index.mjs.map +1 -1
- package/progressbar/index.mjs.map +1 -1
- package/progressbar/style/index.mjs.map +1 -1
- package/progressspinner/index.mjs.map +1 -1
- package/radiobutton/index.mjs.map +1 -1
- package/radiobutton/style/index.mjs.map +1 -1
- package/rating/index.mjs.map +1 -1
- package/rating/style/index.mjs.map +1 -1
- package/ripple/index.mjs.map +1 -1
- package/row/index.mjs.map +1 -1
- package/scrollpanel/index.mjs.map +1 -1
- package/scrolltop/index.mjs.map +1 -1
- package/scrolltop/style/index.mjs.map +1 -1
- package/select/index.d.ts +1 -1
- package/select/index.mjs.map +1 -1
- package/select/style/index.mjs.map +1 -1
- package/selectbutton/index.mjs.map +1 -1
- package/selectbutton/style/index.mjs.map +1 -1
- package/sidebar/index.mjs.map +1 -1
- package/skeleton/index.mjs.map +1 -1
- package/skeleton/style/index.mjs.map +1 -1
- package/slider/index.mjs.map +1 -1
- package/slider/style/index.mjs.map +1 -1
- package/speeddial/index.mjs.map +1 -1
- package/speeddial/style/index.mjs.map +1 -1
- package/splitbutton/index.mjs.map +1 -1
- package/splitbutton/style/index.mjs.map +1 -1
- package/splitter/index.mjs.map +1 -1
- package/splitter/style/index.mjs.map +1 -1
- package/splitterpanel/index.mjs.map +1 -1
- package/splitterpanel/style/index.mjs.map +1 -1
- package/step/index.mjs.map +1 -1
- package/step/style/index.mjs.map +1 -1
- package/stepitem/index.mjs.map +1 -1
- package/stepitem/style/index.mjs.map +1 -1
- package/steplist/index.mjs.map +1 -1
- package/steppanel/index.mjs.map +1 -1
- package/steppanel/style/index.mjs.map +1 -1
- package/steppanels/index.mjs.map +1 -1
- package/stepper/index.mjs.map +1 -1
- package/stepper/style/index.mjs.map +1 -1
- package/stepperpanel/index.mjs.map +1 -1
- package/steps/index.mjs.map +1 -1
- package/steps/style/index.mjs.map +1 -1
- package/styleclass/index.mjs.map +1 -1
- package/tab/index.mjs.map +1 -1
- package/tab/style/index.mjs.map +1 -1
- package/tablist/index.mjs.map +1 -1
- package/tablist/style/index.mjs.map +1 -1
- package/tabmenu/index.mjs.map +1 -1
- package/tabmenu/style/index.mjs.map +1 -1
- package/tabpanel/index.mjs.map +1 -1
- package/tabpanel/style/index.mjs.map +1 -1
- package/tabpanels/index.mjs.map +1 -1
- package/tabs/index.mjs.map +1 -1
- package/tabs/style/index.mjs.map +1 -1
- package/tabview/index.mjs.map +1 -1
- package/tabview/style/index.mjs.map +1 -1
- package/tag/index.mjs.map +1 -1
- package/tag/style/index.mjs.map +1 -1
- package/terminal/index.mjs.map +1 -1
- package/textarea/index.mjs.map +1 -1
- package/textarea/style/index.mjs.map +1 -1
- package/tieredmenu/index.mjs.map +1 -1
- package/tieredmenu/style/index.mjs.map +1 -1
- package/timeline/index.mjs.map +1 -1
- package/timeline/style/index.mjs.map +1 -1
- package/toast/index.mjs.map +1 -1
- package/toast/style/index.mjs.map +1 -1
- package/toastservice/index.mjs.map +1 -1
- package/togglebutton/index.mjs.map +1 -1
- package/togglebutton/style/index.mjs.map +1 -1
- package/toggleswitch/index.mjs.map +1 -1
- package/toggleswitch/style/index.mjs.map +1 -1
- package/toolbar/index.mjs.map +1 -1
- package/tooltip/index.mjs.map +1 -1
- package/tree/index.mjs.map +1 -1
- package/tree/style/index.mjs.map +1 -1
- package/treeselect/index.mjs.map +1 -1
- package/treeselect/style/index.mjs.map +1 -1
- package/treetable/index.mjs.map +1 -1
- package/treetable/style/index.mjs.map +1 -1
- package/umd/primevue.min.js +1 -1
- package/virtualscroller/index.mjs.map +1 -1
- package/web-types.json +1 -1
package/row/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/row/Row.vue"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\n\nexport default {\n name: 'Row',\n extends: BaseComponent,\n inject: ['$rows'],\n mounted() {\n this.$rows?.add(this.$);\n },\n unmounted() {\n this.$rows?.delete(this.$);\n },\n render() {\n return null;\n }\n};\n</script>\n"],"names":["name","BaseComponent","inject","mounted","_this$$rows","$rows","add","$","unmounted","_this$$rows2","render"],"mappings":";;AAGA,aAAe;AACXA,EAAAA,IAAI,EAAE,KAAK;AACX,EAAA,SAAA,EAASC,aAAa;EACtBC,MAAM,EAAE,CAAC,OAAO,CAAC;EACjBC,OAAO,EAAA,
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/row/Row.vue"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\n\nexport default {\n name: 'Row',\n extends: BaseComponent,\n inject: ['$rows'],\n mounted() {\n this.$rows?.add(this.$);\n },\n unmounted() {\n this.$rows?.delete(this.$);\n },\n render() {\n return null;\n }\n};\n</script>\n"],"names":["name","BaseComponent","inject","mounted","_this$$rows","$rows","add","$","unmounted","_this$$rows2","render"],"mappings":";;AAGA,aAAe;AACXA,EAAAA,IAAI,EAAE,KAAK;AACX,EAAA,SAAA,EAASC,aAAa;EACtBC,MAAM,EAAE,CAAC,OAAO,CAAC;EACjBC,OAAO,EAAA,SAAPA,OAAOA,GAAG;AAAA,IAAA,IAAAC,WAAA,CAAA;AACN,IAAA,CAAAA,WAAA,GAAA,IAAI,CAACC,KAAK,cAAAD,WAAA,KAAA,KAAA,CAAA,IAAVA,WAAA,CAAYE,GAAG,CAAC,IAAI,CAACC,CAAC,CAAC,CAAA;GAC1B;EACDC,SAAS,EAAA,SAATA,SAASA,GAAG;AAAA,IAAA,IAAAC,YAAA,CAAA;AACR,IAAA,CAAAA,YAAA,GAAA,IAAI,CAACJ,KAAK,MAAAI,IAAAA,IAAAA,YAAA,KAAVA,KAAAA,CAAAA,IAAAA,YAAA,CAAkB,QAAA,CAAA,CAAC,IAAI,CAACF,CAAC,CAAC,CAAA;GAC7B;EACDG,MAAM,EAAA,SAANA,MAAMA,GAAG;AACL,IAAA,OAAO,IAAI,CAAA;AACf,GAAA;AACJ,CAAC;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/scrollpanel/BaseScrollPanel.vue","../../src/scrollpanel/ScrollPanel.vue","../../src/scrollpanel/ScrollPanel.vue?vue&type=template&id=d7d01550&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport ScrollPanelStyle from 'primevue/scrollpanel/style';\n\nexport default {\n name: 'BaseScrollPanel',\n extends: BaseComponent,\n props: {\n step: {\n type: Number,\n default: 5\n }\n },\n style: ScrollPanelStyle,\n provide() {\n return {\n $pcScrollPanel: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <div :class=\"cx('contentContainer')\" v-bind=\"ptm('contentContainer')\">\n <div ref=\"content\" :id=\"contentId\" :class=\"cx('content')\" @scroll=\"onScroll\" @mouseenter=\"moveBar\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n </div>\n <div\n ref=\"xBar\"\n :class=\"cx('barx')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n aria-orientation=\"horizontal\"\n :aria-controls=\"contentId\"\n :aria-valuenow=\"lastScrollLeft\"\n @mousedown=\"onXBarMouseDown\"\n @keydown=\"onKeyDown($event)\"\n @keyup=\"onKeyUp\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n v-bind=\"ptm('barx')\"\n data-pc-group-section=\"bar\"\n ></div>\n <div\n ref=\"yBar\"\n :class=\"cx('bary')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n aria-orientation=\"vertical\"\n :aria-controls=\"contentId\"\n :aria-valuenow=\"lastScrollTop\"\n @mousedown=\"onYBarMouseDown\"\n @keydown=\"onKeyDown($event)\"\n @keyup=\"onKeyUp\"\n @focus=\"onFocus\"\n v-bind=\"ptm('bary')\"\n data-pc-group-section=\"bar\"\n ></div>\n </div>\n</template>\n\n<script>\nimport { UniqueComponentId } from '@primevue/core/utils';\nimport { getHeight, addClass, removeClass } from '@primeuix/utils/dom';\nimport BaseScrollPanel from './BaseScrollPanel.vue';\n\nexport default {\n name: 'ScrollPanel',\n extends: BaseScrollPanel,\n inheritAttrs: false,\n initialized: false,\n documentResizeListener: null,\n documentMouseMoveListener: null,\n documentMouseUpListener: null,\n frame: null,\n scrollXRatio: null,\n scrollYRatio: null,\n isXBarClicked: false,\n isYBarClicked: false,\n lastPageX: null,\n lastPageY: null,\n timer: null,\n outsideClickListener: null,\n data() {\n return {\n id: this.$attrs.id,\n orientation: 'vertical',\n lastScrollTop: 0,\n lastScrollLeft: 0\n };\n },\n watch: {\n '$attrs.id': function (newValue) {\n this.id = newValue || UniqueComponentId();\n }\n },\n mounted() {\n this.id = this.id || UniqueComponentId();\n\n if (this.$el.offsetParent) {\n this.initialize();\n }\n },\n updated() {\n if (!this.initialized && this.$el.offsetParent) {\n this.initialize();\n }\n },\n beforeUnmount() {\n this.unbindDocumentResizeListener();\n\n if (this.frame) {\n window.cancelAnimationFrame(this.frame);\n }\n },\n methods: {\n initialize() {\n this.moveBar();\n this.bindDocumentResizeListener();\n this.calculateContainerHeight();\n },\n calculateContainerHeight() {\n let containerStyles = getComputedStyle(this.$el),\n xBarStyles = getComputedStyle(this.$refs.xBar),\n pureContainerHeight = getHeight(this.$el) - parseInt(xBarStyles['height'], 10);\n\n if (containerStyles['max-height'] !== 'none' && pureContainerHeight === 0) {\n if (this.$refs.content.offsetHeight + parseInt(xBarStyles['height'], 10) > parseInt(containerStyles['max-height'], 10)) {\n this.$el.style.height = containerStyles['max-height'];\n } else {\n this.$el.style.height =\n this.$refs.content.offsetHeight + parseFloat(containerStyles.paddingTop) + parseFloat(containerStyles.paddingBottom) + parseFloat(containerStyles.borderTopWidth) + parseFloat(containerStyles.borderBottomWidth) + 'px';\n }\n }\n },\n moveBar() {\n if (this.$refs.content) {\n /* horizontal scroll */\n let totalWidth = this.$refs.content.scrollWidth;\n let ownWidth = this.$refs.content.clientWidth;\n let bottom = (this.$el.clientHeight - this.$refs.xBar.clientHeight) * -1;\n\n this.scrollXRatio = ownWidth / totalWidth;\n\n /* vertical scroll */\n let totalHeight = this.$refs.content.scrollHeight;\n let ownHeight = this.$refs.content.clientHeight;\n let right = (this.$el.clientWidth - this.$refs.yBar.clientWidth) * -1;\n\n this.scrollYRatio = ownHeight / totalHeight;\n\n this.frame = this.requestAnimationFrame(() => {\n if (this.$refs.xBar) {\n if (this.scrollXRatio >= 1) {\n this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n !this.isUnstyled && addClass(this.$refs.xBar, 'p-scrollpanel-hidden');\n } else {\n this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n !this.isUnstyled && removeClass(this.$refs.xBar, 'p-scrollpanel-hidden');\n this.$refs.xBar.style.cssText = 'width:' + Math.max(this.scrollXRatio * 100, 10) + '%; left:' + (this.$refs.content.scrollLeft / totalWidth) * 100 + '%;bottom:' + bottom + 'px;';\n }\n }\n\n if (this.$refs.yBar) {\n if (this.scrollYRatio >= 1) {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n !this.isUnstyled && addClass(this.$refs.yBar, 'p-scrollpanel-hidden');\n } else {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n !this.isUnstyled && removeClass(this.$refs.yBar, 'p-scrollpanel-hidden');\n this.$refs.yBar.style.cssText =\n 'height:' + Math.max(this.scrollYRatio * 100, 10) + '%; top: calc(' + (this.$refs.content.scrollTop / totalHeight) * 100 + '% - ' + this.$refs.xBar.clientHeight + 'px);right:' + right + 'px;';\n }\n }\n });\n }\n },\n onYBarMouseDown(e) {\n this.isYBarClicked = true;\n this.$refs.yBar.focus();\n this.lastPageY = e.pageY;\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'true');\n !this.isUnstyled && addClass(this.$refs.yBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'true');\n !this.isUnstyled && addClass(document.body, 'p-scrollpanel-grabbed');\n\n this.bindDocumentMouseListeners();\n e.preventDefault();\n },\n onXBarMouseDown(e) {\n this.isXBarClicked = true;\n this.$refs.xBar.focus();\n this.lastPageX = e.pageX;\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && addClass(this.$refs.xBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && addClass(document.body, 'p-scrollpanel-grabbed');\n\n this.bindDocumentMouseListeners();\n e.preventDefault();\n },\n onScroll(event) {\n if (this.lastScrollLeft !== event.target.scrollLeft) {\n this.lastScrollLeft = event.target.scrollLeft;\n this.orientation = 'horizontal';\n } else if (this.lastScrollTop !== event.target.scrollTop) {\n this.lastScrollTop = event.target.scrollTop;\n this.orientation = 'vertical';\n }\n\n this.moveBar();\n },\n onKeyDown(event) {\n if (this.orientation === 'vertical') {\n switch (event.code) {\n case 'ArrowDown': {\n this.setTimer('scrollTop', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n this.setTimer('scrollTop', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft':\n\n case 'ArrowRight': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n } else if (this.orientation === 'horizontal') {\n switch (event.code) {\n case 'ArrowRight': {\n this.setTimer('scrollLeft', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.setTimer('scrollLeft', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowDown':\n\n case 'ArrowUp': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n }\n },\n onKeyUp() {\n this.clearTimer();\n },\n repeat(bar, step) {\n this.$refs.content[bar] += step;\n this.moveBar();\n },\n setTimer(bar, step) {\n this.clearTimer();\n this.timer = setTimeout(() => {\n this.repeat(bar, step);\n }, 40);\n },\n clearTimer() {\n if (this.timer) {\n clearTimeout(this.timer);\n }\n },\n onDocumentMouseMove(e) {\n if (this.isXBarClicked) {\n this.onMouseMoveForXBar(e);\n } else if (this.isYBarClicked) {\n this.onMouseMoveForYBar(e);\n } else {\n this.onMouseMoveForXBar(e);\n this.onMouseMoveForYBar(e);\n }\n },\n onMouseMoveForXBar(e) {\n let deltaX = e.pageX - this.lastPageX;\n\n this.lastPageX = e.pageX;\n\n this.frame = this.requestAnimationFrame(() => {\n this.$refs.content.scrollLeft += deltaX / this.scrollXRatio;\n });\n },\n onMouseMoveForYBar(e) {\n let deltaY = e.pageY - this.lastPageY;\n\n this.lastPageY = e.pageY;\n\n this.frame = this.requestAnimationFrame(() => {\n this.$refs.content.scrollTop += deltaY / this.scrollYRatio;\n });\n },\n onFocus(event) {\n if (this.$refs.xBar.isSameNode(event.target)) {\n this.orientation = 'horizontal';\n } else if (this.$refs.yBar.isSameNode(event.target)) {\n this.orientation = 'vertical';\n }\n },\n onBlur() {\n if (this.orientation === 'horizontal') {\n this.orientation = 'vertical';\n }\n },\n onDocumentMouseUp() {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(this.$refs.yBar, 'p-scrollpanel-grabbed');\n this.$refs.xBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(this.$refs.xBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(document.body, 'p-scrollpanel-grabbed');\n\n this.unbindDocumentMouseListeners();\n this.isXBarClicked = false;\n this.isYBarClicked = false;\n },\n requestAnimationFrame(f) {\n let frame = window.requestAnimationFrame || this.timeoutFrame;\n\n return frame(f);\n },\n refresh() {\n this.moveBar();\n },\n scrollTop(scrollTop) {\n let scrollableHeight = this.$refs.content.scrollHeight - this.$refs.content.clientHeight;\n\n scrollTop = scrollTop > scrollableHeight ? scrollableHeight : scrollTop > 0 ? scrollTop : 0;\n this.$refs.content.scrollTop = scrollTop;\n },\n timeoutFrame(fn) {\n setTimeout(fn, 0);\n },\n bindDocumentMouseListeners() {\n if (!this.documentMouseMoveListener) {\n this.documentMouseMoveListener = (e) => {\n this.onDocumentMouseMove(e);\n };\n\n document.addEventListener('mousemove', this.documentMouseMoveListener);\n }\n\n if (!this.documentMouseUpListener) {\n this.documentMouseUpListener = (e) => {\n this.onDocumentMouseUp(e);\n };\n\n document.addEventListener('mouseup', this.documentMouseUpListener);\n }\n },\n unbindDocumentMouseListeners() {\n if (this.documentMouseMoveListener) {\n document.removeEventListener('mousemove', this.documentMouseMoveListener);\n this.documentMouseMoveListener = null;\n }\n\n if (this.documentMouseUpListener) {\n document.removeEventListener('mouseup', this.documentMouseUpListener);\n this.documentMouseUpListener = null;\n }\n },\n bindDocumentResizeListener() {\n if (!this.documentResizeListener) {\n this.documentResizeListener = () => {\n this.moveBar();\n };\n\n window.addEventListener('resize', this.documentResizeListener);\n }\n },\n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n },\n computed: {\n contentId() {\n return this.id + '_content';\n }\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <div :class=\"cx('contentContainer')\" v-bind=\"ptm('contentContainer')\">\n <div ref=\"content\" :id=\"contentId\" :class=\"cx('content')\" @scroll=\"onScroll\" @mouseenter=\"moveBar\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n </div>\n <div\n ref=\"xBar\"\n :class=\"cx('barx')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n aria-orientation=\"horizontal\"\n :aria-controls=\"contentId\"\n :aria-valuenow=\"lastScrollLeft\"\n @mousedown=\"onXBarMouseDown\"\n @keydown=\"onKeyDown($event)\"\n @keyup=\"onKeyUp\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n v-bind=\"ptm('barx')\"\n data-pc-group-section=\"bar\"\n ></div>\n <div\n ref=\"yBar\"\n :class=\"cx('bary')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n aria-orientation=\"vertical\"\n :aria-controls=\"contentId\"\n :aria-valuenow=\"lastScrollTop\"\n @mousedown=\"onYBarMouseDown\"\n @keydown=\"onKeyDown($event)\"\n @keyup=\"onKeyUp\"\n @focus=\"onFocus\"\n v-bind=\"ptm('bary')\"\n data-pc-group-section=\"bar\"\n ></div>\n </div>\n</template>\n\n<script>\nimport { UniqueComponentId } from '@primevue/core/utils';\nimport { getHeight, addClass, removeClass } from '@primeuix/utils/dom';\nimport BaseScrollPanel from './BaseScrollPanel.vue';\n\nexport default {\n name: 'ScrollPanel',\n extends: BaseScrollPanel,\n inheritAttrs: false,\n initialized: false,\n documentResizeListener: null,\n documentMouseMoveListener: null,\n documentMouseUpListener: null,\n frame: null,\n scrollXRatio: null,\n scrollYRatio: null,\n isXBarClicked: false,\n isYBarClicked: false,\n lastPageX: null,\n lastPageY: null,\n timer: null,\n outsideClickListener: null,\n data() {\n return {\n id: this.$attrs.id,\n orientation: 'vertical',\n lastScrollTop: 0,\n lastScrollLeft: 0\n };\n },\n watch: {\n '$attrs.id': function (newValue) {\n this.id = newValue || UniqueComponentId();\n }\n },\n mounted() {\n this.id = this.id || UniqueComponentId();\n\n if (this.$el.offsetParent) {\n this.initialize();\n }\n },\n updated() {\n if (!this.initialized && this.$el.offsetParent) {\n this.initialize();\n }\n },\n beforeUnmount() {\n this.unbindDocumentResizeListener();\n\n if (this.frame) {\n window.cancelAnimationFrame(this.frame);\n }\n },\n methods: {\n initialize() {\n this.moveBar();\n this.bindDocumentResizeListener();\n this.calculateContainerHeight();\n },\n calculateContainerHeight() {\n let containerStyles = getComputedStyle(this.$el),\n xBarStyles = getComputedStyle(this.$refs.xBar),\n pureContainerHeight = getHeight(this.$el) - parseInt(xBarStyles['height'], 10);\n\n if (containerStyles['max-height'] !== 'none' && pureContainerHeight === 0) {\n if (this.$refs.content.offsetHeight + parseInt(xBarStyles['height'], 10) > parseInt(containerStyles['max-height'], 10)) {\n this.$el.style.height = containerStyles['max-height'];\n } else {\n this.$el.style.height =\n this.$refs.content.offsetHeight + parseFloat(containerStyles.paddingTop) + parseFloat(containerStyles.paddingBottom) + parseFloat(containerStyles.borderTopWidth) + parseFloat(containerStyles.borderBottomWidth) + 'px';\n }\n }\n },\n moveBar() {\n if (this.$refs.content) {\n /* horizontal scroll */\n let totalWidth = this.$refs.content.scrollWidth;\n let ownWidth = this.$refs.content.clientWidth;\n let bottom = (this.$el.clientHeight - this.$refs.xBar.clientHeight) * -1;\n\n this.scrollXRatio = ownWidth / totalWidth;\n\n /* vertical scroll */\n let totalHeight = this.$refs.content.scrollHeight;\n let ownHeight = this.$refs.content.clientHeight;\n let right = (this.$el.clientWidth - this.$refs.yBar.clientWidth) * -1;\n\n this.scrollYRatio = ownHeight / totalHeight;\n\n this.frame = this.requestAnimationFrame(() => {\n if (this.$refs.xBar) {\n if (this.scrollXRatio >= 1) {\n this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n !this.isUnstyled && addClass(this.$refs.xBar, 'p-scrollpanel-hidden');\n } else {\n this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n !this.isUnstyled && removeClass(this.$refs.xBar, 'p-scrollpanel-hidden');\n this.$refs.xBar.style.cssText = 'width:' + Math.max(this.scrollXRatio * 100, 10) + '%; left:' + (this.$refs.content.scrollLeft / totalWidth) * 100 + '%;bottom:' + bottom + 'px;';\n }\n }\n\n if (this.$refs.yBar) {\n if (this.scrollYRatio >= 1) {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n !this.isUnstyled && addClass(this.$refs.yBar, 'p-scrollpanel-hidden');\n } else {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n !this.isUnstyled && removeClass(this.$refs.yBar, 'p-scrollpanel-hidden');\n this.$refs.yBar.style.cssText =\n 'height:' + Math.max(this.scrollYRatio * 100, 10) + '%; top: calc(' + (this.$refs.content.scrollTop / totalHeight) * 100 + '% - ' + this.$refs.xBar.clientHeight + 'px);right:' + right + 'px;';\n }\n }\n });\n }\n },\n onYBarMouseDown(e) {\n this.isYBarClicked = true;\n this.$refs.yBar.focus();\n this.lastPageY = e.pageY;\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'true');\n !this.isUnstyled && addClass(this.$refs.yBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'true');\n !this.isUnstyled && addClass(document.body, 'p-scrollpanel-grabbed');\n\n this.bindDocumentMouseListeners();\n e.preventDefault();\n },\n onXBarMouseDown(e) {\n this.isXBarClicked = true;\n this.$refs.xBar.focus();\n this.lastPageX = e.pageX;\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && addClass(this.$refs.xBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && addClass(document.body, 'p-scrollpanel-grabbed');\n\n this.bindDocumentMouseListeners();\n e.preventDefault();\n },\n onScroll(event) {\n if (this.lastScrollLeft !== event.target.scrollLeft) {\n this.lastScrollLeft = event.target.scrollLeft;\n this.orientation = 'horizontal';\n } else if (this.lastScrollTop !== event.target.scrollTop) {\n this.lastScrollTop = event.target.scrollTop;\n this.orientation = 'vertical';\n }\n\n this.moveBar();\n },\n onKeyDown(event) {\n if (this.orientation === 'vertical') {\n switch (event.code) {\n case 'ArrowDown': {\n this.setTimer('scrollTop', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n this.setTimer('scrollTop', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft':\n\n case 'ArrowRight': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n } else if (this.orientation === 'horizontal') {\n switch (event.code) {\n case 'ArrowRight': {\n this.setTimer('scrollLeft', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.setTimer('scrollLeft', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowDown':\n\n case 'ArrowUp': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n }\n },\n onKeyUp() {\n this.clearTimer();\n },\n repeat(bar, step) {\n this.$refs.content[bar] += step;\n this.moveBar();\n },\n setTimer(bar, step) {\n this.clearTimer();\n this.timer = setTimeout(() => {\n this.repeat(bar, step);\n }, 40);\n },\n clearTimer() {\n if (this.timer) {\n clearTimeout(this.timer);\n }\n },\n onDocumentMouseMove(e) {\n if (this.isXBarClicked) {\n this.onMouseMoveForXBar(e);\n } else if (this.isYBarClicked) {\n this.onMouseMoveForYBar(e);\n } else {\n this.onMouseMoveForXBar(e);\n this.onMouseMoveForYBar(e);\n }\n },\n onMouseMoveForXBar(e) {\n let deltaX = e.pageX - this.lastPageX;\n\n this.lastPageX = e.pageX;\n\n this.frame = this.requestAnimationFrame(() => {\n this.$refs.content.scrollLeft += deltaX / this.scrollXRatio;\n });\n },\n onMouseMoveForYBar(e) {\n let deltaY = e.pageY - this.lastPageY;\n\n this.lastPageY = e.pageY;\n\n this.frame = this.requestAnimationFrame(() => {\n this.$refs.content.scrollTop += deltaY / this.scrollYRatio;\n });\n },\n onFocus(event) {\n if (this.$refs.xBar.isSameNode(event.target)) {\n this.orientation = 'horizontal';\n } else if (this.$refs.yBar.isSameNode(event.target)) {\n this.orientation = 'vertical';\n }\n },\n onBlur() {\n if (this.orientation === 'horizontal') {\n this.orientation = 'vertical';\n }\n },\n onDocumentMouseUp() {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(this.$refs.yBar, 'p-scrollpanel-grabbed');\n this.$refs.xBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(this.$refs.xBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(document.body, 'p-scrollpanel-grabbed');\n\n this.unbindDocumentMouseListeners();\n this.isXBarClicked = false;\n this.isYBarClicked = false;\n },\n requestAnimationFrame(f) {\n let frame = window.requestAnimationFrame || this.timeoutFrame;\n\n return frame(f);\n },\n refresh() {\n this.moveBar();\n },\n scrollTop(scrollTop) {\n let scrollableHeight = this.$refs.content.scrollHeight - this.$refs.content.clientHeight;\n\n scrollTop = scrollTop > scrollableHeight ? scrollableHeight : scrollTop > 0 ? scrollTop : 0;\n this.$refs.content.scrollTop = scrollTop;\n },\n timeoutFrame(fn) {\n setTimeout(fn, 0);\n },\n bindDocumentMouseListeners() {\n if (!this.documentMouseMoveListener) {\n this.documentMouseMoveListener = (e) => {\n this.onDocumentMouseMove(e);\n };\n\n document.addEventListener('mousemove', this.documentMouseMoveListener);\n }\n\n if (!this.documentMouseUpListener) {\n this.documentMouseUpListener = (e) => {\n this.onDocumentMouseUp(e);\n };\n\n document.addEventListener('mouseup', this.documentMouseUpListener);\n }\n },\n unbindDocumentMouseListeners() {\n if (this.documentMouseMoveListener) {\n document.removeEventListener('mousemove', this.documentMouseMoveListener);\n this.documentMouseMoveListener = null;\n }\n\n if (this.documentMouseUpListener) {\n document.removeEventListener('mouseup', this.documentMouseUpListener);\n this.documentMouseUpListener = null;\n }\n },\n bindDocumentResizeListener() {\n if (!this.documentResizeListener) {\n this.documentResizeListener = () => {\n this.moveBar();\n };\n\n window.addEventListener('resize', this.documentResizeListener);\n }\n },\n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n },\n computed: {\n contentId() {\n return this.id + '_content';\n }\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","step","type","Number","style","ScrollPanelStyle","provide","$pcScrollPanel","$parentInstance","BaseScrollPanel","inheritAttrs","initialized","documentResizeListener","documentMouseMoveListener","documentMouseUpListener","frame","scrollXRatio","scrollYRatio","isXBarClicked","isYBarClicked","lastPageX","lastPageY","timer","outsideClickListener","data","id","$attrs","orientation","lastScrollTop","lastScrollLeft","watch","$attrsId","newValue","UniqueComponentId","mounted","$el","offsetParent","initialize","updated","beforeUnmount","unbindDocumentResizeListener","window","cancelAnimationFrame","methods","moveBar","bindDocumentResizeListener","calculateContainerHeight","containerStyles","getComputedStyle","xBarStyles","$refs","xBar","pureContainerHeight","getHeight","parseInt","content","offsetHeight","height","parseFloat","paddingTop","paddingBottom","borderTopWidth","borderBottomWidth","_this","totalWidth","scrollWidth","ownWidth","clientWidth","bottom","clientHeight","totalHeight","scrollHeight","ownHeight","right","yBar","requestAnimationFrame","setAttribute","isUnstyled","addClass","removeClass","cssText","Math","max","scrollLeft","scrollTop","onYBarMouseDown","e","focus","pageY","document","body","bindDocumentMouseListeners","preventDefault","onXBarMouseDown","pageX","onScroll","event","target","onKeyDown","code","setTimer","onKeyUp","clearTimer","repeat","bar","_this2","setTimeout","clearTimeout","onDocumentMouseMove","onMouseMoveForXBar","onMouseMoveForYBar","_this3","deltaX","_this4","deltaY","onFocus","isSameNode","onBlur","onDocumentMouseUp","unbindDocumentMouseListeners","f","timeoutFrame","refresh","scrollableHeight","fn","_this5","addEventListener","removeEventListener","_this6","computed","contentId","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","ptmi","_createElementVNode","ptm","ref","$options","apply","arguments","onMouseenter","_renderSlot","$slots","tabindex","role","$data","onMousedown","onKeydown","_cache","$event","onKeyup","_hoisted_2","_hoisted_3"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/scrollpanel/BaseScrollPanel.vue","../../src/scrollpanel/ScrollPanel.vue","../../src/scrollpanel/ScrollPanel.vue?vue&type=template&id=d7d01550&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport ScrollPanelStyle from 'primevue/scrollpanel/style';\n\nexport default {\n name: 'BaseScrollPanel',\n extends: BaseComponent,\n props: {\n step: {\n type: Number,\n default: 5\n }\n },\n style: ScrollPanelStyle,\n provide() {\n return {\n $pcScrollPanel: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <div :class=\"cx('contentContainer')\" v-bind=\"ptm('contentContainer')\">\n <div ref=\"content\" :id=\"contentId\" :class=\"cx('content')\" @scroll=\"onScroll\" @mouseenter=\"moveBar\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n </div>\n <div\n ref=\"xBar\"\n :class=\"cx('barx')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n aria-orientation=\"horizontal\"\n :aria-controls=\"contentId\"\n :aria-valuenow=\"lastScrollLeft\"\n @mousedown=\"onXBarMouseDown\"\n @keydown=\"onKeyDown($event)\"\n @keyup=\"onKeyUp\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n v-bind=\"ptm('barx')\"\n data-pc-group-section=\"bar\"\n ></div>\n <div\n ref=\"yBar\"\n :class=\"cx('bary')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n aria-orientation=\"vertical\"\n :aria-controls=\"contentId\"\n :aria-valuenow=\"lastScrollTop\"\n @mousedown=\"onYBarMouseDown\"\n @keydown=\"onKeyDown($event)\"\n @keyup=\"onKeyUp\"\n @focus=\"onFocus\"\n v-bind=\"ptm('bary')\"\n data-pc-group-section=\"bar\"\n ></div>\n </div>\n</template>\n\n<script>\nimport { UniqueComponentId } from '@primevue/core/utils';\nimport { getHeight, addClass, removeClass } from '@primeuix/utils/dom';\nimport BaseScrollPanel from './BaseScrollPanel.vue';\n\nexport default {\n name: 'ScrollPanel',\n extends: BaseScrollPanel,\n inheritAttrs: false,\n initialized: false,\n documentResizeListener: null,\n documentMouseMoveListener: null,\n documentMouseUpListener: null,\n frame: null,\n scrollXRatio: null,\n scrollYRatio: null,\n isXBarClicked: false,\n isYBarClicked: false,\n lastPageX: null,\n lastPageY: null,\n timer: null,\n outsideClickListener: null,\n data() {\n return {\n id: this.$attrs.id,\n orientation: 'vertical',\n lastScrollTop: 0,\n lastScrollLeft: 0\n };\n },\n watch: {\n '$attrs.id': function (newValue) {\n this.id = newValue || UniqueComponentId();\n }\n },\n mounted() {\n this.id = this.id || UniqueComponentId();\n\n if (this.$el.offsetParent) {\n this.initialize();\n }\n },\n updated() {\n if (!this.initialized && this.$el.offsetParent) {\n this.initialize();\n }\n },\n beforeUnmount() {\n this.unbindDocumentResizeListener();\n\n if (this.frame) {\n window.cancelAnimationFrame(this.frame);\n }\n },\n methods: {\n initialize() {\n this.moveBar();\n this.bindDocumentResizeListener();\n this.calculateContainerHeight();\n },\n calculateContainerHeight() {\n let containerStyles = getComputedStyle(this.$el),\n xBarStyles = getComputedStyle(this.$refs.xBar),\n pureContainerHeight = getHeight(this.$el) - parseInt(xBarStyles['height'], 10);\n\n if (containerStyles['max-height'] !== 'none' && pureContainerHeight === 0) {\n if (this.$refs.content.offsetHeight + parseInt(xBarStyles['height'], 10) > parseInt(containerStyles['max-height'], 10)) {\n this.$el.style.height = containerStyles['max-height'];\n } else {\n this.$el.style.height =\n this.$refs.content.offsetHeight + parseFloat(containerStyles.paddingTop) + parseFloat(containerStyles.paddingBottom) + parseFloat(containerStyles.borderTopWidth) + parseFloat(containerStyles.borderBottomWidth) + 'px';\n }\n }\n },\n moveBar() {\n if (this.$refs.content) {\n /* horizontal scroll */\n let totalWidth = this.$refs.content.scrollWidth;\n let ownWidth = this.$refs.content.clientWidth;\n let bottom = (this.$el.clientHeight - this.$refs.xBar.clientHeight) * -1;\n\n this.scrollXRatio = ownWidth / totalWidth;\n\n /* vertical scroll */\n let totalHeight = this.$refs.content.scrollHeight;\n let ownHeight = this.$refs.content.clientHeight;\n let right = (this.$el.clientWidth - this.$refs.yBar.clientWidth) * -1;\n\n this.scrollYRatio = ownHeight / totalHeight;\n\n this.frame = this.requestAnimationFrame(() => {\n if (this.$refs.xBar) {\n if (this.scrollXRatio >= 1) {\n this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n !this.isUnstyled && addClass(this.$refs.xBar, 'p-scrollpanel-hidden');\n } else {\n this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n !this.isUnstyled && removeClass(this.$refs.xBar, 'p-scrollpanel-hidden');\n this.$refs.xBar.style.cssText = 'width:' + Math.max(this.scrollXRatio * 100, 10) + '%; left:' + (this.$refs.content.scrollLeft / totalWidth) * 100 + '%;bottom:' + bottom + 'px;';\n }\n }\n\n if (this.$refs.yBar) {\n if (this.scrollYRatio >= 1) {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n !this.isUnstyled && addClass(this.$refs.yBar, 'p-scrollpanel-hidden');\n } else {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n !this.isUnstyled && removeClass(this.$refs.yBar, 'p-scrollpanel-hidden');\n this.$refs.yBar.style.cssText =\n 'height:' + Math.max(this.scrollYRatio * 100, 10) + '%; top: calc(' + (this.$refs.content.scrollTop / totalHeight) * 100 + '% - ' + this.$refs.xBar.clientHeight + 'px);right:' + right + 'px;';\n }\n }\n });\n }\n },\n onYBarMouseDown(e) {\n this.isYBarClicked = true;\n this.$refs.yBar.focus();\n this.lastPageY = e.pageY;\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'true');\n !this.isUnstyled && addClass(this.$refs.yBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'true');\n !this.isUnstyled && addClass(document.body, 'p-scrollpanel-grabbed');\n\n this.bindDocumentMouseListeners();\n e.preventDefault();\n },\n onXBarMouseDown(e) {\n this.isXBarClicked = true;\n this.$refs.xBar.focus();\n this.lastPageX = e.pageX;\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && addClass(this.$refs.xBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && addClass(document.body, 'p-scrollpanel-grabbed');\n\n this.bindDocumentMouseListeners();\n e.preventDefault();\n },\n onScroll(event) {\n if (this.lastScrollLeft !== event.target.scrollLeft) {\n this.lastScrollLeft = event.target.scrollLeft;\n this.orientation = 'horizontal';\n } else if (this.lastScrollTop !== event.target.scrollTop) {\n this.lastScrollTop = event.target.scrollTop;\n this.orientation = 'vertical';\n }\n\n this.moveBar();\n },\n onKeyDown(event) {\n if (this.orientation === 'vertical') {\n switch (event.code) {\n case 'ArrowDown': {\n this.setTimer('scrollTop', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n this.setTimer('scrollTop', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft':\n\n case 'ArrowRight': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n } else if (this.orientation === 'horizontal') {\n switch (event.code) {\n case 'ArrowRight': {\n this.setTimer('scrollLeft', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.setTimer('scrollLeft', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowDown':\n\n case 'ArrowUp': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n }\n },\n onKeyUp() {\n this.clearTimer();\n },\n repeat(bar, step) {\n this.$refs.content[bar] += step;\n this.moveBar();\n },\n setTimer(bar, step) {\n this.clearTimer();\n this.timer = setTimeout(() => {\n this.repeat(bar, step);\n }, 40);\n },\n clearTimer() {\n if (this.timer) {\n clearTimeout(this.timer);\n }\n },\n onDocumentMouseMove(e) {\n if (this.isXBarClicked) {\n this.onMouseMoveForXBar(e);\n } else if (this.isYBarClicked) {\n this.onMouseMoveForYBar(e);\n } else {\n this.onMouseMoveForXBar(e);\n this.onMouseMoveForYBar(e);\n }\n },\n onMouseMoveForXBar(e) {\n let deltaX = e.pageX - this.lastPageX;\n\n this.lastPageX = e.pageX;\n\n this.frame = this.requestAnimationFrame(() => {\n this.$refs.content.scrollLeft += deltaX / this.scrollXRatio;\n });\n },\n onMouseMoveForYBar(e) {\n let deltaY = e.pageY - this.lastPageY;\n\n this.lastPageY = e.pageY;\n\n this.frame = this.requestAnimationFrame(() => {\n this.$refs.content.scrollTop += deltaY / this.scrollYRatio;\n });\n },\n onFocus(event) {\n if (this.$refs.xBar.isSameNode(event.target)) {\n this.orientation = 'horizontal';\n } else if (this.$refs.yBar.isSameNode(event.target)) {\n this.orientation = 'vertical';\n }\n },\n onBlur() {\n if (this.orientation === 'horizontal') {\n this.orientation = 'vertical';\n }\n },\n onDocumentMouseUp() {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(this.$refs.yBar, 'p-scrollpanel-grabbed');\n this.$refs.xBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(this.$refs.xBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(document.body, 'p-scrollpanel-grabbed');\n\n this.unbindDocumentMouseListeners();\n this.isXBarClicked = false;\n this.isYBarClicked = false;\n },\n requestAnimationFrame(f) {\n let frame = window.requestAnimationFrame || this.timeoutFrame;\n\n return frame(f);\n },\n refresh() {\n this.moveBar();\n },\n scrollTop(scrollTop) {\n let scrollableHeight = this.$refs.content.scrollHeight - this.$refs.content.clientHeight;\n\n scrollTop = scrollTop > scrollableHeight ? scrollableHeight : scrollTop > 0 ? scrollTop : 0;\n this.$refs.content.scrollTop = scrollTop;\n },\n timeoutFrame(fn) {\n setTimeout(fn, 0);\n },\n bindDocumentMouseListeners() {\n if (!this.documentMouseMoveListener) {\n this.documentMouseMoveListener = (e) => {\n this.onDocumentMouseMove(e);\n };\n\n document.addEventListener('mousemove', this.documentMouseMoveListener);\n }\n\n if (!this.documentMouseUpListener) {\n this.documentMouseUpListener = (e) => {\n this.onDocumentMouseUp(e);\n };\n\n document.addEventListener('mouseup', this.documentMouseUpListener);\n }\n },\n unbindDocumentMouseListeners() {\n if (this.documentMouseMoveListener) {\n document.removeEventListener('mousemove', this.documentMouseMoveListener);\n this.documentMouseMoveListener = null;\n }\n\n if (this.documentMouseUpListener) {\n document.removeEventListener('mouseup', this.documentMouseUpListener);\n this.documentMouseUpListener = null;\n }\n },\n bindDocumentResizeListener() {\n if (!this.documentResizeListener) {\n this.documentResizeListener = () => {\n this.moveBar();\n };\n\n window.addEventListener('resize', this.documentResizeListener);\n }\n },\n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n },\n computed: {\n contentId() {\n return this.id + '_content';\n }\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <div :class=\"cx('contentContainer')\" v-bind=\"ptm('contentContainer')\">\n <div ref=\"content\" :id=\"contentId\" :class=\"cx('content')\" @scroll=\"onScroll\" @mouseenter=\"moveBar\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n </div>\n <div\n ref=\"xBar\"\n :class=\"cx('barx')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n aria-orientation=\"horizontal\"\n :aria-controls=\"contentId\"\n :aria-valuenow=\"lastScrollLeft\"\n @mousedown=\"onXBarMouseDown\"\n @keydown=\"onKeyDown($event)\"\n @keyup=\"onKeyUp\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n v-bind=\"ptm('barx')\"\n data-pc-group-section=\"bar\"\n ></div>\n <div\n ref=\"yBar\"\n :class=\"cx('bary')\"\n tabindex=\"0\"\n role=\"scrollbar\"\n aria-orientation=\"vertical\"\n :aria-controls=\"contentId\"\n :aria-valuenow=\"lastScrollTop\"\n @mousedown=\"onYBarMouseDown\"\n @keydown=\"onKeyDown($event)\"\n @keyup=\"onKeyUp\"\n @focus=\"onFocus\"\n v-bind=\"ptm('bary')\"\n data-pc-group-section=\"bar\"\n ></div>\n </div>\n</template>\n\n<script>\nimport { UniqueComponentId } from '@primevue/core/utils';\nimport { getHeight, addClass, removeClass } from '@primeuix/utils/dom';\nimport BaseScrollPanel from './BaseScrollPanel.vue';\n\nexport default {\n name: 'ScrollPanel',\n extends: BaseScrollPanel,\n inheritAttrs: false,\n initialized: false,\n documentResizeListener: null,\n documentMouseMoveListener: null,\n documentMouseUpListener: null,\n frame: null,\n scrollXRatio: null,\n scrollYRatio: null,\n isXBarClicked: false,\n isYBarClicked: false,\n lastPageX: null,\n lastPageY: null,\n timer: null,\n outsideClickListener: null,\n data() {\n return {\n id: this.$attrs.id,\n orientation: 'vertical',\n lastScrollTop: 0,\n lastScrollLeft: 0\n };\n },\n watch: {\n '$attrs.id': function (newValue) {\n this.id = newValue || UniqueComponentId();\n }\n },\n mounted() {\n this.id = this.id || UniqueComponentId();\n\n if (this.$el.offsetParent) {\n this.initialize();\n }\n },\n updated() {\n if (!this.initialized && this.$el.offsetParent) {\n this.initialize();\n }\n },\n beforeUnmount() {\n this.unbindDocumentResizeListener();\n\n if (this.frame) {\n window.cancelAnimationFrame(this.frame);\n }\n },\n methods: {\n initialize() {\n this.moveBar();\n this.bindDocumentResizeListener();\n this.calculateContainerHeight();\n },\n calculateContainerHeight() {\n let containerStyles = getComputedStyle(this.$el),\n xBarStyles = getComputedStyle(this.$refs.xBar),\n pureContainerHeight = getHeight(this.$el) - parseInt(xBarStyles['height'], 10);\n\n if (containerStyles['max-height'] !== 'none' && pureContainerHeight === 0) {\n if (this.$refs.content.offsetHeight + parseInt(xBarStyles['height'], 10) > parseInt(containerStyles['max-height'], 10)) {\n this.$el.style.height = containerStyles['max-height'];\n } else {\n this.$el.style.height =\n this.$refs.content.offsetHeight + parseFloat(containerStyles.paddingTop) + parseFloat(containerStyles.paddingBottom) + parseFloat(containerStyles.borderTopWidth) + parseFloat(containerStyles.borderBottomWidth) + 'px';\n }\n }\n },\n moveBar() {\n if (this.$refs.content) {\n /* horizontal scroll */\n let totalWidth = this.$refs.content.scrollWidth;\n let ownWidth = this.$refs.content.clientWidth;\n let bottom = (this.$el.clientHeight - this.$refs.xBar.clientHeight) * -1;\n\n this.scrollXRatio = ownWidth / totalWidth;\n\n /* vertical scroll */\n let totalHeight = this.$refs.content.scrollHeight;\n let ownHeight = this.$refs.content.clientHeight;\n let right = (this.$el.clientWidth - this.$refs.yBar.clientWidth) * -1;\n\n this.scrollYRatio = ownHeight / totalHeight;\n\n this.frame = this.requestAnimationFrame(() => {\n if (this.$refs.xBar) {\n if (this.scrollXRatio >= 1) {\n this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n !this.isUnstyled && addClass(this.$refs.xBar, 'p-scrollpanel-hidden');\n } else {\n this.$refs.xBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n !this.isUnstyled && removeClass(this.$refs.xBar, 'p-scrollpanel-hidden');\n this.$refs.xBar.style.cssText = 'width:' + Math.max(this.scrollXRatio * 100, 10) + '%; left:' + (this.$refs.content.scrollLeft / totalWidth) * 100 + '%;bottom:' + bottom + 'px;';\n }\n }\n\n if (this.$refs.yBar) {\n if (this.scrollYRatio >= 1) {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'true');\n !this.isUnstyled && addClass(this.$refs.yBar, 'p-scrollpanel-hidden');\n } else {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-hidden', 'false');\n !this.isUnstyled && removeClass(this.$refs.yBar, 'p-scrollpanel-hidden');\n this.$refs.yBar.style.cssText =\n 'height:' + Math.max(this.scrollYRatio * 100, 10) + '%; top: calc(' + (this.$refs.content.scrollTop / totalHeight) * 100 + '% - ' + this.$refs.xBar.clientHeight + 'px);right:' + right + 'px;';\n }\n }\n });\n }\n },\n onYBarMouseDown(e) {\n this.isYBarClicked = true;\n this.$refs.yBar.focus();\n this.lastPageY = e.pageY;\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'true');\n !this.isUnstyled && addClass(this.$refs.yBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'true');\n !this.isUnstyled && addClass(document.body, 'p-scrollpanel-grabbed');\n\n this.bindDocumentMouseListeners();\n e.preventDefault();\n },\n onXBarMouseDown(e) {\n this.isXBarClicked = true;\n this.$refs.xBar.focus();\n this.lastPageX = e.pageX;\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && addClass(this.$refs.xBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && addClass(document.body, 'p-scrollpanel-grabbed');\n\n this.bindDocumentMouseListeners();\n e.preventDefault();\n },\n onScroll(event) {\n if (this.lastScrollLeft !== event.target.scrollLeft) {\n this.lastScrollLeft = event.target.scrollLeft;\n this.orientation = 'horizontal';\n } else if (this.lastScrollTop !== event.target.scrollTop) {\n this.lastScrollTop = event.target.scrollTop;\n this.orientation = 'vertical';\n }\n\n this.moveBar();\n },\n onKeyDown(event) {\n if (this.orientation === 'vertical') {\n switch (event.code) {\n case 'ArrowDown': {\n this.setTimer('scrollTop', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowUp': {\n this.setTimer('scrollTop', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft':\n\n case 'ArrowRight': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n } else if (this.orientation === 'horizontal') {\n switch (event.code) {\n case 'ArrowRight': {\n this.setTimer('scrollLeft', this.step);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.setTimer('scrollLeft', this.step * -1);\n event.preventDefault();\n break;\n }\n\n case 'ArrowDown':\n\n case 'ArrowUp': {\n event.preventDefault();\n break;\n }\n\n default:\n //no op\n break;\n }\n }\n },\n onKeyUp() {\n this.clearTimer();\n },\n repeat(bar, step) {\n this.$refs.content[bar] += step;\n this.moveBar();\n },\n setTimer(bar, step) {\n this.clearTimer();\n this.timer = setTimeout(() => {\n this.repeat(bar, step);\n }, 40);\n },\n clearTimer() {\n if (this.timer) {\n clearTimeout(this.timer);\n }\n },\n onDocumentMouseMove(e) {\n if (this.isXBarClicked) {\n this.onMouseMoveForXBar(e);\n } else if (this.isYBarClicked) {\n this.onMouseMoveForYBar(e);\n } else {\n this.onMouseMoveForXBar(e);\n this.onMouseMoveForYBar(e);\n }\n },\n onMouseMoveForXBar(e) {\n let deltaX = e.pageX - this.lastPageX;\n\n this.lastPageX = e.pageX;\n\n this.frame = this.requestAnimationFrame(() => {\n this.$refs.content.scrollLeft += deltaX / this.scrollXRatio;\n });\n },\n onMouseMoveForYBar(e) {\n let deltaY = e.pageY - this.lastPageY;\n\n this.lastPageY = e.pageY;\n\n this.frame = this.requestAnimationFrame(() => {\n this.$refs.content.scrollTop += deltaY / this.scrollYRatio;\n });\n },\n onFocus(event) {\n if (this.$refs.xBar.isSameNode(event.target)) {\n this.orientation = 'horizontal';\n } else if (this.$refs.yBar.isSameNode(event.target)) {\n this.orientation = 'vertical';\n }\n },\n onBlur() {\n if (this.orientation === 'horizontal') {\n this.orientation = 'vertical';\n }\n },\n onDocumentMouseUp() {\n this.$refs.yBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(this.$refs.yBar, 'p-scrollpanel-grabbed');\n this.$refs.xBar.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(this.$refs.xBar, 'p-scrollpanel-grabbed');\n document.body.setAttribute('data-p-scrollpanel-grabbed', 'false');\n !this.isUnstyled && removeClass(document.body, 'p-scrollpanel-grabbed');\n\n this.unbindDocumentMouseListeners();\n this.isXBarClicked = false;\n this.isYBarClicked = false;\n },\n requestAnimationFrame(f) {\n let frame = window.requestAnimationFrame || this.timeoutFrame;\n\n return frame(f);\n },\n refresh() {\n this.moveBar();\n },\n scrollTop(scrollTop) {\n let scrollableHeight = this.$refs.content.scrollHeight - this.$refs.content.clientHeight;\n\n scrollTop = scrollTop > scrollableHeight ? scrollableHeight : scrollTop > 0 ? scrollTop : 0;\n this.$refs.content.scrollTop = scrollTop;\n },\n timeoutFrame(fn) {\n setTimeout(fn, 0);\n },\n bindDocumentMouseListeners() {\n if (!this.documentMouseMoveListener) {\n this.documentMouseMoveListener = (e) => {\n this.onDocumentMouseMove(e);\n };\n\n document.addEventListener('mousemove', this.documentMouseMoveListener);\n }\n\n if (!this.documentMouseUpListener) {\n this.documentMouseUpListener = (e) => {\n this.onDocumentMouseUp(e);\n };\n\n document.addEventListener('mouseup', this.documentMouseUpListener);\n }\n },\n unbindDocumentMouseListeners() {\n if (this.documentMouseMoveListener) {\n document.removeEventListener('mousemove', this.documentMouseMoveListener);\n this.documentMouseMoveListener = null;\n }\n\n if (this.documentMouseUpListener) {\n document.removeEventListener('mouseup', this.documentMouseUpListener);\n this.documentMouseUpListener = null;\n }\n },\n bindDocumentResizeListener() {\n if (!this.documentResizeListener) {\n this.documentResizeListener = () => {\n this.moveBar();\n };\n\n window.addEventListener('resize', this.documentResizeListener);\n }\n },\n unbindDocumentResizeListener() {\n if (this.documentResizeListener) {\n window.removeEventListener('resize', this.documentResizeListener);\n this.documentResizeListener = null;\n }\n }\n },\n computed: {\n contentId() {\n return this.id + '_content';\n }\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","step","type","Number","style","ScrollPanelStyle","provide","$pcScrollPanel","$parentInstance","BaseScrollPanel","inheritAttrs","initialized","documentResizeListener","documentMouseMoveListener","documentMouseUpListener","frame","scrollXRatio","scrollYRatio","isXBarClicked","isYBarClicked","lastPageX","lastPageY","timer","outsideClickListener","data","id","$attrs","orientation","lastScrollTop","lastScrollLeft","watch","$attrsId","newValue","UniqueComponentId","mounted","$el","offsetParent","initialize","updated","beforeUnmount","unbindDocumentResizeListener","window","cancelAnimationFrame","methods","moveBar","bindDocumentResizeListener","calculateContainerHeight","containerStyles","getComputedStyle","xBarStyles","$refs","xBar","pureContainerHeight","getHeight","parseInt","content","offsetHeight","height","parseFloat","paddingTop","paddingBottom","borderTopWidth","borderBottomWidth","_this","totalWidth","scrollWidth","ownWidth","clientWidth","bottom","clientHeight","totalHeight","scrollHeight","ownHeight","right","yBar","requestAnimationFrame","setAttribute","isUnstyled","addClass","removeClass","cssText","Math","max","scrollLeft","scrollTop","onYBarMouseDown","e","focus","pageY","document","body","bindDocumentMouseListeners","preventDefault","onXBarMouseDown","pageX","onScroll","event","target","onKeyDown","code","setTimer","onKeyUp","clearTimer","repeat","bar","_this2","setTimeout","clearTimeout","onDocumentMouseMove","onMouseMoveForXBar","onMouseMoveForYBar","_this3","deltaX","_this4","deltaY","onFocus","isSameNode","onBlur","onDocumentMouseUp","unbindDocumentMouseListeners","f","timeoutFrame","refresh","scrollableHeight","fn","_this5","addEventListener","removeEventListener","_this6","computed","contentId","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","ptmi","_createElementVNode","ptm","ref","$options","apply","arguments","onMouseenter","_renderSlot","$slots","tabindex","role","$data","onMousedown","onKeydown","_cache","$event","onKeyup","_hoisted_2","_hoisted_3"],"mappings":"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"}
|
package/scrolltop/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/scrolltop/BaseScrollTop.vue","../../src/scrolltop/ScrollTop.vue","../../src/scrolltop/ScrollTop.vue?vue&type=template&id=127e82b4&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport ScrollTopStyle from 'primevue/scrolltop/style';\n\nexport default {\n name: 'BaseScrollTop',\n extends: BaseComponent,\n props: {\n target: {\n type: String,\n default: 'window'\n },\n threshold: {\n type: Number,\n default: 400\n },\n icon: {\n type: String,\n default: undefined\n },\n behavior: {\n type: String,\n default: 'smooth'\n },\n buttonProps: {\n type: Object,\n default: () => {\n return { rounded: true };\n }\n }\n },\n style: ScrollTopStyle,\n provide() {\n return {\n $pcScrollTop: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <transition name=\"p-scrolltop\" appear @enter=\"onEnter\" @after-leave=\"onAfterLeave\" v-bind=\"ptm('transition')\">\n <Button v-if=\"visible\" :ref=\"containerRef\" :class=\"cx('root')\" @click=\"onClick\" :aria-label=\"scrollTopAriaLabel\" :unstyled=\"unstyled\" v-bind=\"buttonProps\" :pt=\"rootPTOptions()\">\n <template #icon=\"slotProps\">\n <slot name=\"icon\" :class=\"cx('icon')\">\n <component :is=\"icon ? 'span' : 'ChevronUpIcon'\" :class=\"[cx('icon'), icon, slotProps.class]\" v-bind=\"iconPTOptions\" />\n </slot>\n </template>\n </Button>\n </transition>\n</template>\n\n<script>\nimport { getWindowScrollTop } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport ChevronUpIcon from '@primevue/icons/chevronup';\nimport Button from 'primevue/button';\nimport { mergeProps } from 'vue';\nimport BaseScrollTop from './BaseScrollTop.vue';\n\nexport default {\n name: 'ScrollTop',\n extends: BaseScrollTop,\n inheritAttrs: false,\n scrollListener: null,\n container: null,\n data() {\n return {\n visible: false\n };\n },\n mounted() {\n if (this.target === 'window') this.bindDocumentScrollListener();\n else if (this.target === 'parent') this.bindParentScrollListener();\n },\n beforeUnmount() {\n if (this.target === 'window') this.unbindDocumentScrollListener();\n else if (this.target === 'parent') this.unbindParentScrollListener();\n\n if (this.container) {\n ZIndex.clear(this.container);\n this.overlay = null;\n }\n },\n methods: {\n onClick() {\n let scrollElement = this.target === 'window' ? window : this.$el.parentElement;\n\n scrollElement.scroll({\n top: 0,\n behavior: this.behavior\n });\n },\n checkVisibility(scrollY) {\n if (scrollY > this.threshold) this.visible = true;\n else this.visible = false;\n },\n bindParentScrollListener() {\n this.scrollListener = () => {\n this.checkVisibility(this.$el.parentElement.scrollTop);\n };\n\n this.$el.parentElement.addEventListener('scroll', this.scrollListener);\n },\n bindDocumentScrollListener() {\n this.scrollListener = () => {\n this.checkVisibility(getWindowScrollTop());\n };\n\n window.addEventListener('scroll', this.scrollListener);\n },\n unbindParentScrollListener() {\n if (this.scrollListener) {\n this.$el.parentElement.removeEventListener('scroll', this.scrollListener);\n this.scrollListener = null;\n }\n },\n unbindDocumentScrollListener() {\n if (this.scrollListener) {\n window.removeEventListener('scroll', this.scrollListener);\n this.scrollListener = null;\n }\n },\n onEnter(el) {\n ZIndex.set('overlay', el, this.$primevue.config.zIndex.overlay);\n },\n onAfterLeave(el) {\n ZIndex.clear(el);\n },\n containerRef(el) {\n this.container = el ? el.$el : undefined;\n },\n rootPTOptions() {\n return mergeProps(this.ptmi('root'), this.ptm('button'));\n },\n iconPTOptions() {\n return mergeProps(this.ptmi('root')['icon'], this.ptm('button')['icon']);\n }\n },\n computed: {\n scrollTopAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.scrollTop : undefined;\n }\n },\n components: {\n ChevronUpIcon,\n Button\n }\n};\n</script>\n","<template>\n <transition name=\"p-scrolltop\" appear @enter=\"onEnter\" @after-leave=\"onAfterLeave\" v-bind=\"ptm('transition')\">\n <Button v-if=\"visible\" :ref=\"containerRef\" :class=\"cx('root')\" @click=\"onClick\" :aria-label=\"scrollTopAriaLabel\" :unstyled=\"unstyled\" v-bind=\"buttonProps\" :pt=\"rootPTOptions()\">\n <template #icon=\"slotProps\">\n <slot name=\"icon\" :class=\"cx('icon')\">\n <component :is=\"icon ? 'span' : 'ChevronUpIcon'\" :class=\"[cx('icon'), icon, slotProps.class]\" v-bind=\"iconPTOptions\" />\n </slot>\n </template>\n </Button>\n </transition>\n</template>\n\n<script>\nimport { getWindowScrollTop } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport ChevronUpIcon from '@primevue/icons/chevronup';\nimport Button from 'primevue/button';\nimport { mergeProps } from 'vue';\nimport BaseScrollTop from './BaseScrollTop.vue';\n\nexport default {\n name: 'ScrollTop',\n extends: BaseScrollTop,\n inheritAttrs: false,\n scrollListener: null,\n container: null,\n data() {\n return {\n visible: false\n };\n },\n mounted() {\n if (this.target === 'window') this.bindDocumentScrollListener();\n else if (this.target === 'parent') this.bindParentScrollListener();\n },\n beforeUnmount() {\n if (this.target === 'window') this.unbindDocumentScrollListener();\n else if (this.target === 'parent') this.unbindParentScrollListener();\n\n if (this.container) {\n ZIndex.clear(this.container);\n this.overlay = null;\n }\n },\n methods: {\n onClick() {\n let scrollElement = this.target === 'window' ? window : this.$el.parentElement;\n\n scrollElement.scroll({\n top: 0,\n behavior: this.behavior\n });\n },\n checkVisibility(scrollY) {\n if (scrollY > this.threshold) this.visible = true;\n else this.visible = false;\n },\n bindParentScrollListener() {\n this.scrollListener = () => {\n this.checkVisibility(this.$el.parentElement.scrollTop);\n };\n\n this.$el.parentElement.addEventListener('scroll', this.scrollListener);\n },\n bindDocumentScrollListener() {\n this.scrollListener = () => {\n this.checkVisibility(getWindowScrollTop());\n };\n\n window.addEventListener('scroll', this.scrollListener);\n },\n unbindParentScrollListener() {\n if (this.scrollListener) {\n this.$el.parentElement.removeEventListener('scroll', this.scrollListener);\n this.scrollListener = null;\n }\n },\n unbindDocumentScrollListener() {\n if (this.scrollListener) {\n window.removeEventListener('scroll', this.scrollListener);\n this.scrollListener = null;\n }\n },\n onEnter(el) {\n ZIndex.set('overlay', el, this.$primevue.config.zIndex.overlay);\n },\n onAfterLeave(el) {\n ZIndex.clear(el);\n },\n containerRef(el) {\n this.container = el ? el.$el : undefined;\n },\n rootPTOptions() {\n return mergeProps(this.ptmi('root'), this.ptm('button'));\n },\n iconPTOptions() {\n return mergeProps(this.ptmi('root')['icon'], this.ptm('button')['icon']);\n }\n },\n computed: {\n scrollTopAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.scrollTop : undefined;\n }\n },\n components: {\n ChevronUpIcon,\n Button\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","target","type","String","threshold","Number","icon","undefined","behavior","buttonProps","Object","_default","rounded","style","ScrollTopStyle","provide","$pcScrollTop","$parentInstance","BaseScrollTop","inheritAttrs","scrollListener","container","data","visible","mounted","bindDocumentScrollListener","bindParentScrollListener","beforeUnmount","unbindDocumentScrollListener","unbindParentScrollListener","ZIndex","clear","overlay","methods","onClick","scrollElement","window","$el","parentElement","scroll","top","checkVisibility","scrollY","_this","scrollTop","addEventListener","_this2","getWindowScrollTop","removeEventListener","onEnter","el","set","$primevue","config","zIndex","onAfterLeave","containerRef","rootPTOptions","mergeProps","ptmi","ptm","iconPTOptions","computed","scrollTopAriaLabel","locale","aria","components","ChevronUpIcon","Button","_openBlock","_createBlock","_Transition","_mergeProps","appear","$options","_ctx","$data","_component_Button","ref","cx","unstyled","pt","_withCtx","slotProps","_renderSlot","$slots","_resolveDynamicComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/scrolltop/BaseScrollTop.vue","../../src/scrolltop/ScrollTop.vue","../../src/scrolltop/ScrollTop.vue?vue&type=template&id=127e82b4&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport ScrollTopStyle from 'primevue/scrolltop/style';\n\nexport default {\n name: 'BaseScrollTop',\n extends: BaseComponent,\n props: {\n target: {\n type: String,\n default: 'window'\n },\n threshold: {\n type: Number,\n default: 400\n },\n icon: {\n type: String,\n default: undefined\n },\n behavior: {\n type: String,\n default: 'smooth'\n },\n buttonProps: {\n type: Object,\n default: () => {\n return { rounded: true };\n }\n }\n },\n style: ScrollTopStyle,\n provide() {\n return {\n $pcScrollTop: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <transition name=\"p-scrolltop\" appear @enter=\"onEnter\" @after-leave=\"onAfterLeave\" v-bind=\"ptm('transition')\">\n <Button v-if=\"visible\" :ref=\"containerRef\" :class=\"cx('root')\" @click=\"onClick\" :aria-label=\"scrollTopAriaLabel\" :unstyled=\"unstyled\" v-bind=\"buttonProps\" :pt=\"rootPTOptions()\">\n <template #icon=\"slotProps\">\n <slot name=\"icon\" :class=\"cx('icon')\">\n <component :is=\"icon ? 'span' : 'ChevronUpIcon'\" :class=\"[cx('icon'), icon, slotProps.class]\" v-bind=\"iconPTOptions\" />\n </slot>\n </template>\n </Button>\n </transition>\n</template>\n\n<script>\nimport { getWindowScrollTop } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport ChevronUpIcon from '@primevue/icons/chevronup';\nimport Button from 'primevue/button';\nimport { mergeProps } from 'vue';\nimport BaseScrollTop from './BaseScrollTop.vue';\n\nexport default {\n name: 'ScrollTop',\n extends: BaseScrollTop,\n inheritAttrs: false,\n scrollListener: null,\n container: null,\n data() {\n return {\n visible: false\n };\n },\n mounted() {\n if (this.target === 'window') this.bindDocumentScrollListener();\n else if (this.target === 'parent') this.bindParentScrollListener();\n },\n beforeUnmount() {\n if (this.target === 'window') this.unbindDocumentScrollListener();\n else if (this.target === 'parent') this.unbindParentScrollListener();\n\n if (this.container) {\n ZIndex.clear(this.container);\n this.overlay = null;\n }\n },\n methods: {\n onClick() {\n let scrollElement = this.target === 'window' ? window : this.$el.parentElement;\n\n scrollElement.scroll({\n top: 0,\n behavior: this.behavior\n });\n },\n checkVisibility(scrollY) {\n if (scrollY > this.threshold) this.visible = true;\n else this.visible = false;\n },\n bindParentScrollListener() {\n this.scrollListener = () => {\n this.checkVisibility(this.$el.parentElement.scrollTop);\n };\n\n this.$el.parentElement.addEventListener('scroll', this.scrollListener);\n },\n bindDocumentScrollListener() {\n this.scrollListener = () => {\n this.checkVisibility(getWindowScrollTop());\n };\n\n window.addEventListener('scroll', this.scrollListener);\n },\n unbindParentScrollListener() {\n if (this.scrollListener) {\n this.$el.parentElement.removeEventListener('scroll', this.scrollListener);\n this.scrollListener = null;\n }\n },\n unbindDocumentScrollListener() {\n if (this.scrollListener) {\n window.removeEventListener('scroll', this.scrollListener);\n this.scrollListener = null;\n }\n },\n onEnter(el) {\n ZIndex.set('overlay', el, this.$primevue.config.zIndex.overlay);\n },\n onAfterLeave(el) {\n ZIndex.clear(el);\n },\n containerRef(el) {\n this.container = el ? el.$el : undefined;\n },\n rootPTOptions() {\n return mergeProps(this.ptmi('root'), this.ptm('button'));\n },\n iconPTOptions() {\n return mergeProps(this.ptmi('root')['icon'], this.ptm('button')['icon']);\n }\n },\n computed: {\n scrollTopAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.scrollTop : undefined;\n }\n },\n components: {\n ChevronUpIcon,\n Button\n }\n};\n</script>\n","<template>\n <transition name=\"p-scrolltop\" appear @enter=\"onEnter\" @after-leave=\"onAfterLeave\" v-bind=\"ptm('transition')\">\n <Button v-if=\"visible\" :ref=\"containerRef\" :class=\"cx('root')\" @click=\"onClick\" :aria-label=\"scrollTopAriaLabel\" :unstyled=\"unstyled\" v-bind=\"buttonProps\" :pt=\"rootPTOptions()\">\n <template #icon=\"slotProps\">\n <slot name=\"icon\" :class=\"cx('icon')\">\n <component :is=\"icon ? 'span' : 'ChevronUpIcon'\" :class=\"[cx('icon'), icon, slotProps.class]\" v-bind=\"iconPTOptions\" />\n </slot>\n </template>\n </Button>\n </transition>\n</template>\n\n<script>\nimport { getWindowScrollTop } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport ChevronUpIcon from '@primevue/icons/chevronup';\nimport Button from 'primevue/button';\nimport { mergeProps } from 'vue';\nimport BaseScrollTop from './BaseScrollTop.vue';\n\nexport default {\n name: 'ScrollTop',\n extends: BaseScrollTop,\n inheritAttrs: false,\n scrollListener: null,\n container: null,\n data() {\n return {\n visible: false\n };\n },\n mounted() {\n if (this.target === 'window') this.bindDocumentScrollListener();\n else if (this.target === 'parent') this.bindParentScrollListener();\n },\n beforeUnmount() {\n if (this.target === 'window') this.unbindDocumentScrollListener();\n else if (this.target === 'parent') this.unbindParentScrollListener();\n\n if (this.container) {\n ZIndex.clear(this.container);\n this.overlay = null;\n }\n },\n methods: {\n onClick() {\n let scrollElement = this.target === 'window' ? window : this.$el.parentElement;\n\n scrollElement.scroll({\n top: 0,\n behavior: this.behavior\n });\n },\n checkVisibility(scrollY) {\n if (scrollY > this.threshold) this.visible = true;\n else this.visible = false;\n },\n bindParentScrollListener() {\n this.scrollListener = () => {\n this.checkVisibility(this.$el.parentElement.scrollTop);\n };\n\n this.$el.parentElement.addEventListener('scroll', this.scrollListener);\n },\n bindDocumentScrollListener() {\n this.scrollListener = () => {\n this.checkVisibility(getWindowScrollTop());\n };\n\n window.addEventListener('scroll', this.scrollListener);\n },\n unbindParentScrollListener() {\n if (this.scrollListener) {\n this.$el.parentElement.removeEventListener('scroll', this.scrollListener);\n this.scrollListener = null;\n }\n },\n unbindDocumentScrollListener() {\n if (this.scrollListener) {\n window.removeEventListener('scroll', this.scrollListener);\n this.scrollListener = null;\n }\n },\n onEnter(el) {\n ZIndex.set('overlay', el, this.$primevue.config.zIndex.overlay);\n },\n onAfterLeave(el) {\n ZIndex.clear(el);\n },\n containerRef(el) {\n this.container = el ? el.$el : undefined;\n },\n rootPTOptions() {\n return mergeProps(this.ptmi('root'), this.ptm('button'));\n },\n iconPTOptions() {\n return mergeProps(this.ptmi('root')['icon'], this.ptm('button')['icon']);\n }\n },\n computed: {\n scrollTopAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.scrollTop : undefined;\n }\n },\n components: {\n ChevronUpIcon,\n Button\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","target","type","String","threshold","Number","icon","undefined","behavior","buttonProps","Object","default","rounded","style","ScrollTopStyle","provide","$pcScrollTop","$parentInstance","BaseScrollTop","inheritAttrs","scrollListener","container","data","visible","mounted","bindDocumentScrollListener","bindParentScrollListener","beforeUnmount","unbindDocumentScrollListener","unbindParentScrollListener","ZIndex","clear","overlay","methods","onClick","scrollElement","window","$el","parentElement","scroll","top","checkVisibility","scrollY","_this","scrollTop","addEventListener","_this2","getWindowScrollTop","removeEventListener","onEnter","el","set","$primevue","config","zIndex","onAfterLeave","containerRef","rootPTOptions","mergeProps","ptmi","ptm","iconPTOptions","computed","scrollTopAriaLabel","locale","aria","components","ChevronUpIcon","Button","_openBlock","_createBlock","_Transition","_mergeProps","appear","$options","_ctx","$data","_component_Button","ref","cx","unstyled","pt","_withCtx","slotProps","_renderSlot","$slots","_resolveDynamicComponent"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../src/scrolltop/style/ScrollTopStyle.js"],"sourcesContent":["import BaseStyle from '@primevue/core/base/style';\n\nconst theme = ({ dt }) => `\n.p-scrolltop.p-button {\n position: fixed;\n bottom: 20px;\n right: 20px;\n}\n\n.p-scrolltop-sticky.p-button {\n position: sticky;\n display: flex;\n margin-left: auto;\n}\n\n.p-scrolltop-enter-from {\n opacity: 0;\n}\n\n.p-scrolltop-enter-active {\n transition: opacity 0.15s;\n}\n\n.p-scrolltop.p-scrolltop-leave-to {\n opacity: 0;\n}\n\n.p-scrolltop-leave-active {\n transition: opacity 0.15s;\n}\n`;\n\nconst classes = {\n root: ({ props }) => ['p-scrolltop', { 'p-scrolltop-sticky': props.target !== 'window' }],\n icon: 'p-scrolltop-icon'\n};\n\nexport default BaseStyle.extend({\n name: 'scrolltop',\n theme,\n classes\n});\n"],"names":["theme","_ref","dt","classes","root","_ref2","props","target","icon","BaseStyle","extend","name"],"mappings":";;AAEA,IAAMA,KAAK,GAAG,SAARA,KAAKA,CAAAC,IAAA,EAAA;AAAA,EAAQA,IAAA,CAAFC,GAAE;AAAA,EAAA,OAAA,mbAAA,CAAA;AAAA,CA4BlB,CAAA;AAED,IAAMC,OAAO,GAAG;
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../src/scrolltop/style/ScrollTopStyle.js"],"sourcesContent":["import BaseStyle from '@primevue/core/base/style';\n\nconst theme = ({ dt }) => `\n.p-scrolltop.p-button {\n position: fixed;\n bottom: 20px;\n right: 20px;\n}\n\n.p-scrolltop-sticky.p-button {\n position: sticky;\n display: flex;\n margin-left: auto;\n}\n\n.p-scrolltop-enter-from {\n opacity: 0;\n}\n\n.p-scrolltop-enter-active {\n transition: opacity 0.15s;\n}\n\n.p-scrolltop.p-scrolltop-leave-to {\n opacity: 0;\n}\n\n.p-scrolltop-leave-active {\n transition: opacity 0.15s;\n}\n`;\n\nconst classes = {\n root: ({ props }) => ['p-scrolltop', { 'p-scrolltop-sticky': props.target !== 'window' }],\n icon: 'p-scrolltop-icon'\n};\n\nexport default BaseStyle.extend({\n name: 'scrolltop',\n theme,\n classes\n});\n"],"names":["theme","_ref","dt","classes","root","_ref2","props","target","icon","BaseStyle","extend","name"],"mappings":";;AAEA,IAAMA,KAAK,GAAG,SAARA,KAAKA,CAAAC,IAAA,EAAA;AAAA,EAAQA,IAAA,CAAFC,GAAE;AAAA,EAAA,OAAA,mbAAA,CAAA;AAAA,CA4BlB,CAAA;AAED,IAAMC,OAAO,GAAG;AACZC,EAAAA,IAAI,EAAE,SAANA,IAAIA,CAAAC,KAAA,EAAA;AAAA,IAAA,IAAKC,KAAK,GAAAD,KAAA,CAALC,KAAK,CAAA;IAAA,OAAO,CAAC,aAAa,EAAE;AAAE,MAAA,oBAAoB,EAAEA,KAAK,CAACC,MAAM,KAAK,QAAA;AAAS,KAAC,CAAC,CAAA;AAAA,GAAA;AACzFC,EAAAA,IAAI,EAAE,kBAAA;AACV,CAAC,CAAA;AAED,qBAAeC,SAAS,CAACC,MAAM,CAAC;AAC5BC,EAAAA,IAAI,EAAE,WAAW;AACjBX,EAAAA,KAAK,EAALA,KAAK;AACLG,EAAAA,OAAO,EAAPA,OAAAA;AACJ,CAAC,CAAC;;;;"}
|