primevue 4.3.0 → 4.3.2
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/accordionheader/AccordionHeader.vue +8 -2
- package/accordionheader/index.mjs +8 -1
- package/accordionheader/index.mjs.map +1 -1
- package/autocomplete/AutoComplete.vue +16 -6
- package/autocomplete/index.d.ts +3 -3
- package/autocomplete/index.mjs +17 -4
- package/autocomplete/index.mjs.map +1 -1
- package/avatar/Avatar.vue +13 -4
- package/avatar/index.d.ts +3 -3
- package/avatar/index.mjs +26 -6
- package/avatar/index.mjs.map +1 -1
- package/badge/Badge.vue +13 -2
- package/badge/index.d.ts +1 -1
- package/badge/index.mjs +18 -3
- package/badge/index.mjs.map +1 -1
- package/blockui/BlockUI.vue +15 -4
- package/blockui/index.mjs +13 -4
- package/blockui/index.mjs.map +1 -1
- package/button/Button.vue +30 -3
- package/button/index.d.ts +3 -7
- package/button/index.mjs +28 -9
- package/button/index.mjs.map +1 -1
- package/cascadeselect/index.d.ts +2 -2
- package/checkbox/Checkbox.vue +14 -4
- package/checkbox/index.d.ts +2 -2
- package/checkbox/index.mjs +27 -6
- package/checkbox/index.mjs.map +1 -1
- package/chip/Chip.vue +9 -1
- package/chip/index.mjs +12 -2
- package/chip/index.mjs.map +1 -1
- package/colorpicker/ColorPicker.vue +10 -2
- package/colorpicker/index.d.ts +1 -1
- package/colorpicker/index.mjs +9 -2
- package/colorpicker/index.mjs.map +1 -1
- package/column/index.d.ts +3 -3
- package/columngroup/index.d.ts +2 -2
- package/confirmationoptions/index.d.ts +1 -1
- package/confirmpopup/ConfirmPopup.vue +2 -2
- package/confirmpopup/index.mjs +2 -2
- package/confirmpopup/index.mjs.map +1 -1
- package/datatable/BodyCell.vue +3 -1
- package/datatable/BodyRow.vue +2 -0
- package/datatable/index.d.ts +10 -10
- package/datatable/index.mjs +7 -2
- package/datatable/index.mjs.map +1 -1
- package/dataview/index.d.ts +3 -3
- package/datepicker/DatePicker.vue +1 -3
- package/datepicker/index.d.ts +6 -6
- package/datepicker/index.mjs +21 -24
- package/datepicker/index.mjs.map +1 -1
- package/dialog/Dialog.vue +48 -39
- package/dialog/index.d.ts +26 -1
- package/dialog/index.mjs +73 -50
- package/dialog/index.mjs.map +1 -1
- package/divider/Divider.vue +13 -3
- package/divider/index.d.ts +4 -4
- package/divider/index.mjs +18 -5
- package/divider/index.mjs.map +1 -1
- package/dock/index.d.ts +4 -4
- package/drawer/index.d.ts +2 -2
- package/fieldset/Fieldset.vue +8 -2
- package/fieldset/index.mjs +20 -10
- package/fieldset/index.mjs.map +1 -1
- package/fileupload/index.d.ts +2 -2
- package/floatlabel/index.d.ts +2 -2
- package/galleria/GalleriaItem.vue +8 -9
- package/galleria/index.d.ts +3 -3
- package/galleria/index.mjs +8 -8
- package/galleria/index.mjs.map +1 -1
- package/inputchips/index.d.ts +2 -2
- package/inputmask/InputMask.vue +15 -1
- package/inputmask/index.d.ts +3 -3
- package/inputmask/index.mjs +12 -1
- package/inputmask/index.mjs.map +1 -1
- package/inputnumber/InputNumber.vue +28 -6
- package/inputnumber/index.d.ts +6 -6
- package/inputnumber/index.mjs +43 -19
- package/inputnumber/index.mjs.map +1 -1
- package/inputotp/index.d.ts +3 -3
- package/inputtext/InputText.vue +10 -1
- package/inputtext/index.d.ts +3 -3
- package/inputtext/index.mjs +14 -1
- package/inputtext/index.mjs.map +1 -1
- package/knob/Knob.vue +1 -1
- package/knob/index.mjs +1 -1
- package/knob/index.mjs.map +1 -1
- package/megamenu/index.d.ts +2 -2
- package/message/Message.vue +16 -7
- package/message/index.d.ts +2 -2
- package/message/index.mjs +35 -13
- package/message/index.mjs.map +1 -1
- package/multiselect/MultiSelect.vue +5 -1
- package/multiselect/index.d.ts +3 -3
- package/multiselect/index.mjs +4 -1
- package/multiselect/index.mjs.map +1 -1
- package/organizationchart/index.d.ts +2 -2
- package/overlaybadge/index.d.ts +1 -1
- package/package.json +3 -3
- package/panel/Panel.vue +29 -22
- package/panel/index.d.ts +22 -2
- package/panel/index.mjs +55 -31
- package/panel/index.mjs.map +1 -1
- package/password/index.d.ts +2 -2
- package/popover/Popover.vue +2 -2
- package/popover/index.mjs +2 -2
- package/popover/index.mjs.map +1 -1
- package/progressbar/ProgressBar.vue +11 -4
- package/progressbar/index.mjs +24 -6
- package/progressbar/index.mjs.map +1 -1
- package/radiobutton/RadioButton.vue +13 -3
- package/radiobutton/index.d.ts +3 -3
- package/radiobutton/index.mjs +24 -4
- package/radiobutton/index.mjs.map +1 -1
- package/rating/Rating.vue +19 -2
- package/rating/index.mjs +28 -7
- package/rating/index.mjs.map +1 -1
- package/scrolltop/index.d.ts +2 -2
- package/select/Select.vue +8 -4
- package/select/index.d.ts +2 -2
- package/select/index.mjs +9 -5
- package/select/index.mjs.map +1 -1
- package/selectbutton/SelectButton.vue +26 -9
- package/selectbutton/index.d.ts +2 -2
- package/selectbutton/index.mjs +30 -10
- package/selectbutton/index.mjs.map +1 -1
- package/skeleton/Skeleton.vue +7 -1
- package/skeleton/index.d.ts +3 -3
- package/skeleton/index.mjs +12 -1
- package/skeleton/index.mjs.map +1 -1
- package/slider/Slider.vue +11 -2
- package/slider/index.d.ts +2 -2
- package/slider/index.mjs +27 -8
- package/slider/index.mjs.map +1 -1
- package/speeddial/index.d.ts +5 -5
- package/splitbutton/index.d.ts +1 -1
- package/splitter/index.d.ts +3 -3
- package/stepper/index.d.ts +4 -0
- package/tab/Tab.vue +8 -2
- package/tab/index.mjs +9 -1
- package/tab/index.mjs.map +1 -1
- package/tablist/TabList.vue +10 -2
- package/tablist/index.mjs +20 -8
- package/tablist/index.mjs.map +1 -1
- package/tag/Tag.vue +11 -2
- package/tag/index.mjs +17 -3
- package/tag/index.mjs.map +1 -1
- package/textarea/Textarea.vue +10 -1
- package/textarea/index.d.ts +3 -3
- package/textarea/index.mjs +14 -1
- package/textarea/index.mjs.map +1 -1
- package/timeline/Timeline.vue +16 -7
- package/timeline/index.d.ts +3 -3
- package/timeline/index.mjs +42 -11
- package/timeline/index.mjs.map +1 -1
- package/toast/Toast.vue +10 -1
- package/toast/ToastMessage.vue +29 -19
- package/toast/index.d.ts +2 -2
- package/toast/index.mjs +77 -38
- package/toast/index.mjs.map +1 -1
- package/togglebutton/ToggleButton.vue +10 -1
- package/togglebutton/index.d.ts +3 -3
- package/togglebutton/index.mjs +19 -4
- package/togglebutton/index.mjs.map +1 -1
- package/toggleswitch/ToggleSwitch.vue +11 -3
- package/toggleswitch/index.mjs +20 -5
- package/toggleswitch/index.mjs.map +1 -1
- package/tooltip/index.mjs +0 -6
- package/tooltip/index.mjs.map +1 -1
- package/tree/index.d.ts +3 -3
- package/treeselect/index.d.ts +6 -6
- package/treetable/index.d.ts +7 -7
- package/treetable/style/index.mjs +2 -3
- package/treetable/style/index.mjs.map +1 -1
- package/umd/primevue.min.js +1 -1
- package/virtualscroller/index.d.ts +2 -2
- package/web-types.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/confirmpopup/BaseConfirmPopup.vue","../../src/confirmpopup/ConfirmPopup.vue","../../src/confirmpopup/ConfirmPopup.vue?vue&type=template&id=b7b64ef8&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport ConfirmPopupStyle from 'primevue/confirmpopup/style';\n\nexport default {\n name: 'BaseConfirmPopup',\n extends: BaseComponent,\n props: {\n group: String\n },\n style: ConfirmPopupStyle,\n provide() {\n return {\n $pcConfirmPopup: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <Portal>\n <transition name=\"p-confirmpopup\" @enter=\"onEnter\" @after-enter=\"onAfterEnter\" @leave=\"onLeave\" @after-leave=\"onAfterLeave\" v-bind=\"ptm('transition')\">\n <div v-if=\"visible\" :ref=\"containerRef\" v-focustrap role=\"alertdialog\" :class=\"cx('root')\" :aria-modal=\"visible\" @click=\"onOverlayClick\" @keydown=\"onOverlayKeydown\" v-bind=\"ptmi('root')\">\n <slot v-if=\"$slots.container\" name=\"container\" :message=\"confirmation\" :acceptCallback=\"accept\" :rejectCallback=\"reject\"></slot>\n <template v-else>\n <template v-if=\"!$slots.message\">\n <div :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <slot name=\"icon\">\n <component v-if=\"$slots.icon\" :is=\"$slots.icon\" :class=\"cx('icon')\" />\n <span v-else-if=\"confirmation.icon\" :class=\"[confirmation.icon, cx('icon')]\" v-bind=\"ptm('icon')\" />\n </slot>\n <span :class=\"cx('message')\" v-bind=\"ptm('message')\">{{ confirmation.message }}</span>\n </div>\n </template>\n <component v-else :is=\"$slots.message\" :message=\"confirmation\"></component>\n <div :class=\"cx('footer')\" v-bind=\"ptm('footer')\">\n <Button\n :class=\"[cx('pcRejectButton'), confirmation.rejectClass]\"\n :autofocus=\"autoFocusReject\"\n :unstyled=\"unstyled\"\n :size=\"confirmation.rejectProps?.size || 'small'\"\n :text=\"confirmation.rejectProps?.text || false\"\n @click=\"reject()\"\n @keydown=\"onRejectKeydown\"\n v-bind=\"confirmation.rejectProps\"\n :label=\"rejectLabel\"\n :pt=\"ptm('pcRejectButton')\"\n >\n <template v-if=\"rejectIcon || $slots.rejecticon\" #icon=\"iconProps\">\n <slot name=\"rejecticon\">\n <span :class=\"[rejectIcon, iconProps.class]\" v-bind=\"ptm('pcRejectButton')['icon']\" data-pc-section=\"rejectbuttonicon\" />\n </slot>\n </template>\n </Button>\n <Button\n :class=\"[cx('pcAcceptButton'), confirmation.acceptClass]\"\n :autofocus=\"autoFocusAccept\"\n :unstyled=\"unstyled\"\n :size=\"confirmation.acceptProps?.size || 'small'\"\n @click=\"accept()\"\n @keydown=\"onAcceptKeydown\"\n v-bind=\"confirmation.acceptProps\"\n :label=\"acceptLabel\"\n :pt=\"ptm('pcAcceptButton')\"\n >\n <template v-if=\"acceptIcon || $slots.accepticon\" #icon=\"iconProps\">\n <slot name=\"accepticon\">\n <span :class=\"[acceptIcon, iconProps.class]\" v-bind=\"ptm('pcAcceptButton')['icon']\" data-pc-section=\"acceptbuttonicon\" />\n </slot>\n </template>\n </Button>\n </div>\n </template>\n </div>\n </transition>\n </Portal>\n</template>\n\n<script>\nimport { $dt } from '@primeuix/styled';\nimport { absolutePosition, addClass, focus, getOffset, isTouchDevice } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport { ConnectedOverlayScrollHandler } from '@primevue/core/utils';\nimport Button from 'primevue/button';\nimport ConfirmationEventBus from 'primevue/confirmationeventbus';\nimport FocusTrap from 'primevue/focustrap';\nimport OverlayEventBus from 'primevue/overlayeventbus';\nimport Portal from 'primevue/portal';\nimport BaseConfirmPopup from './BaseConfirmPopup.vue';\n\nexport default {\n name: 'ConfirmPopup',\n extends: BaseConfirmPopup,\n inheritAttrs: false,\n data() {\n return {\n visible: false,\n confirmation: null,\n autoFocusAccept: null,\n autoFocusReject: null,\n target: null\n };\n },\n target: null,\n outsideClickListener: null,\n scrollHandler: null,\n resizeListener: null,\n container: null,\n confirmListener: null,\n closeListener: null,\n mounted() {\n this.confirmListener = (options) => {\n if (!options) {\n return;\n }\n\n if (options.group === this.group) {\n this.confirmation = options;\n this.target = options.target;\n\n if (this.confirmation.onShow) {\n this.confirmation.onShow();\n }\n\n this.visible = true;\n }\n };\n\n this.closeListener = () => {\n this.visible = false;\n this.confirmation = null;\n };\n\n ConfirmationEventBus.on('confirm', this.confirmListener);\n ConfirmationEventBus.on('close', this.closeListener);\n },\n beforeUnmount() {\n ConfirmationEventBus.off('confirm', this.confirmListener);\n ConfirmationEventBus.off('close', this.closeListener);\n\n this.unbindOutsideClickListener();\n\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n\n this.unbindResizeListener();\n\n if (this.container) {\n ZIndex.clear(this.container);\n this.container = null;\n }\n\n this.target = null;\n this.confirmation = null;\n },\n methods: {\n accept() {\n if (this.confirmation.accept) {\n this.confirmation.accept();\n }\n\n this.visible = false;\n },\n reject() {\n if (this.confirmation.reject) {\n this.confirmation.reject();\n }\n\n this.visible = false;\n },\n onHide() {\n if (this.confirmation.onHide) {\n this.confirmation.onHide();\n }\n\n this.visible = false;\n },\n onAcceptKeydown(event) {\n if (event.code === 'Space' || event.code === 'Enter' || event.code === 'NumpadEnter') {\n this.accept();\n focus(this.target);\n event.preventDefault();\n }\n },\n onRejectKeydown(event) {\n if (event.code === 'Space' || event.code === 'Enter' || event.code === 'NumpadEnter') {\n this.reject();\n focus(this.target);\n event.preventDefault();\n }\n },\n onEnter(el) {\n this.autoFocusAccept = this.confirmation.defaultFocus === undefined || this.confirmation.defaultFocus === 'accept' ? true : false;\n this.autoFocusReject = this.confirmation.defaultFocus === 'reject' ? true : false;\n\n this.target = this.target || document.activeElement;\n\n this.bindOutsideClickListener();\n this.bindScrollListener();\n this.bindResizeListener();\n\n ZIndex.set('overlay', el, this.$primevue.config.zIndex.overlay);\n },\n onAfterEnter() {\n this.focus();\n },\n onLeave() {\n this.autoFocusAccept = null;\n this.autoFocusReject = null;\n\n focus(this.target);\n this.target = null;\n\n this.unbindOutsideClickListener();\n this.unbindScrollListener();\n this.unbindResizeListener();\n },\n onAfterLeave(el) {\n ZIndex.clear(el);\n },\n alignOverlay() {\n absolutePosition(this.container, this.target, false);\n\n const containerOffset = getOffset(this.container);\n const targetOffset = getOffset(this.target);\n let arrowLeft = 0;\n\n if (containerOffset.left < targetOffset.left) {\n arrowLeft = targetOffset.left - containerOffset.left;\n }\n\n this.container.style.setProperty($dt('confirmpopup.arrow.left').name, `${arrowLeft}px`);\n\n if (containerOffset.top < targetOffset.top) {\n this.container.setAttribute('data-p-confirmpopup-flipped', 'true');\n !this.isUnstyled && addClass(this.container, 'p-confirmpopup-flipped');\n }\n },\n bindOutsideClickListener() {\n if (!this.outsideClickListener) {\n this.outsideClickListener = (event) => {\n if (this.visible && this.container && !this.container.contains(event.target) && !this.isTargetClicked(event)) {\n if (this.confirmation.onHide) {\n this.confirmation.onHide();\n }\n\n this.visible = false;\n } else {\n this.alignOverlay();\n }\n };\n\n document.addEventListener('click', this.outsideClickListener, true);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener, true);\n this.outsideClickListener = null;\n }\n },\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.target, () => {\n if (this.visible) {\n this.visible = false;\n }\n });\n }\n\n this.scrollHandler.bindScrollListener();\n },\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n },\n bindResizeListener() {\n if (!this.resizeListener) {\n this.resizeListener = () => {\n if (this.visible && !isTouchDevice()) {\n this.visible = false;\n }\n };\n\n window.addEventListener('resize', this.resizeListener);\n }\n },\n unbindResizeListener() {\n if (this.resizeListener) {\n window.removeEventListener('resize', this.resizeListener);\n this.resizeListener = null;\n }\n },\n focus() {\n let focusTarget = this.container.querySelector('[autofocus]');\n\n if (focusTarget) {\n focusTarget.focus({ preventScroll: true }); // Firefox requires preventScroll\n }\n },\n isTargetClicked(event) {\n return this.target && (this.target === event.target || this.target.contains(event.target));\n },\n containerRef(el) {\n this.container = el;\n },\n onOverlayClick(event) {\n OverlayEventBus.emit('overlay-click', {\n originalEvent: event,\n target: this.target\n });\n },\n onOverlayKeydown(event) {\n if (event.code === 'Escape') {\n ConfirmationEventBus.emit('close', this.closeListener);\n focus(this.target);\n }\n }\n },\n computed: {\n message() {\n return this.confirmation ? this.confirmation.message : null;\n },\n acceptLabel() {\n if (this.confirmation) {\n const confirmation = this.confirmation;\n\n return confirmation.acceptLabel || confirmation.acceptProps?.label || this.$primevue.config.locale.accept;\n }\n\n return this.$primevue.config.locale.accept;\n },\n rejectLabel() {\n if (this.confirmation) {\n const confirmation = this.confirmation;\n\n return confirmation.rejectLabel || confirmation.rejectProps?.label || this.$primevue.config.locale.reject;\n }\n\n return this.$primevue.config.locale.reject;\n },\n acceptIcon() {\n return this.confirmation ? this.confirmation.acceptIcon : this.confirmation?.acceptProps ? this.confirmation.acceptProps.icon : null;\n },\n rejectIcon() {\n return this.confirmation ? this.confirmation.rejectIcon : this.confirmation?.rejectProps ? this.confirmation.rejectProps.icon : null;\n }\n },\n components: {\n Button,\n Portal\n },\n directives: {\n focustrap: FocusTrap\n }\n};\n</script>\n","<template>\n <Portal>\n <transition name=\"p-confirmpopup\" @enter=\"onEnter\" @after-enter=\"onAfterEnter\" @leave=\"onLeave\" @after-leave=\"onAfterLeave\" v-bind=\"ptm('transition')\">\n <div v-if=\"visible\" :ref=\"containerRef\" v-focustrap role=\"alertdialog\" :class=\"cx('root')\" :aria-modal=\"visible\" @click=\"onOverlayClick\" @keydown=\"onOverlayKeydown\" v-bind=\"ptmi('root')\">\n <slot v-if=\"$slots.container\" name=\"container\" :message=\"confirmation\" :acceptCallback=\"accept\" :rejectCallback=\"reject\"></slot>\n <template v-else>\n <template v-if=\"!$slots.message\">\n <div :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <slot name=\"icon\">\n <component v-if=\"$slots.icon\" :is=\"$slots.icon\" :class=\"cx('icon')\" />\n <span v-else-if=\"confirmation.icon\" :class=\"[confirmation.icon, cx('icon')]\" v-bind=\"ptm('icon')\" />\n </slot>\n <span :class=\"cx('message')\" v-bind=\"ptm('message')\">{{ confirmation.message }}</span>\n </div>\n </template>\n <component v-else :is=\"$slots.message\" :message=\"confirmation\"></component>\n <div :class=\"cx('footer')\" v-bind=\"ptm('footer')\">\n <Button\n :class=\"[cx('pcRejectButton'), confirmation.rejectClass]\"\n :autofocus=\"autoFocusReject\"\n :unstyled=\"unstyled\"\n :size=\"confirmation.rejectProps?.size || 'small'\"\n :text=\"confirmation.rejectProps?.text || false\"\n @click=\"reject()\"\n @keydown=\"onRejectKeydown\"\n v-bind=\"confirmation.rejectProps\"\n :label=\"rejectLabel\"\n :pt=\"ptm('pcRejectButton')\"\n >\n <template v-if=\"rejectIcon || $slots.rejecticon\" #icon=\"iconProps\">\n <slot name=\"rejecticon\">\n <span :class=\"[rejectIcon, iconProps.class]\" v-bind=\"ptm('pcRejectButton')['icon']\" data-pc-section=\"rejectbuttonicon\" />\n </slot>\n </template>\n </Button>\n <Button\n :class=\"[cx('pcAcceptButton'), confirmation.acceptClass]\"\n :autofocus=\"autoFocusAccept\"\n :unstyled=\"unstyled\"\n :size=\"confirmation.acceptProps?.size || 'small'\"\n @click=\"accept()\"\n @keydown=\"onAcceptKeydown\"\n v-bind=\"confirmation.acceptProps\"\n :label=\"acceptLabel\"\n :pt=\"ptm('pcAcceptButton')\"\n >\n <template v-if=\"acceptIcon || $slots.accepticon\" #icon=\"iconProps\">\n <slot name=\"accepticon\">\n <span :class=\"[acceptIcon, iconProps.class]\" v-bind=\"ptm('pcAcceptButton')['icon']\" data-pc-section=\"acceptbuttonicon\" />\n </slot>\n </template>\n </Button>\n </div>\n </template>\n </div>\n </transition>\n </Portal>\n</template>\n\n<script>\nimport { $dt } from '@primeuix/styled';\nimport { absolutePosition, addClass, focus, getOffset, isTouchDevice } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport { ConnectedOverlayScrollHandler } from '@primevue/core/utils';\nimport Button from 'primevue/button';\nimport ConfirmationEventBus from 'primevue/confirmationeventbus';\nimport FocusTrap from 'primevue/focustrap';\nimport OverlayEventBus from 'primevue/overlayeventbus';\nimport Portal from 'primevue/portal';\nimport BaseConfirmPopup from './BaseConfirmPopup.vue';\n\nexport default {\n name: 'ConfirmPopup',\n extends: BaseConfirmPopup,\n inheritAttrs: false,\n data() {\n return {\n visible: false,\n confirmation: null,\n autoFocusAccept: null,\n autoFocusReject: null,\n target: null\n };\n },\n target: null,\n outsideClickListener: null,\n scrollHandler: null,\n resizeListener: null,\n container: null,\n confirmListener: null,\n closeListener: null,\n mounted() {\n this.confirmListener = (options) => {\n if (!options) {\n return;\n }\n\n if (options.group === this.group) {\n this.confirmation = options;\n this.target = options.target;\n\n if (this.confirmation.onShow) {\n this.confirmation.onShow();\n }\n\n this.visible = true;\n }\n };\n\n this.closeListener = () => {\n this.visible = false;\n this.confirmation = null;\n };\n\n ConfirmationEventBus.on('confirm', this.confirmListener);\n ConfirmationEventBus.on('close', this.closeListener);\n },\n beforeUnmount() {\n ConfirmationEventBus.off('confirm', this.confirmListener);\n ConfirmationEventBus.off('close', this.closeListener);\n\n this.unbindOutsideClickListener();\n\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n\n this.unbindResizeListener();\n\n if (this.container) {\n ZIndex.clear(this.container);\n this.container = null;\n }\n\n this.target = null;\n this.confirmation = null;\n },\n methods: {\n accept() {\n if (this.confirmation.accept) {\n this.confirmation.accept();\n }\n\n this.visible = false;\n },\n reject() {\n if (this.confirmation.reject) {\n this.confirmation.reject();\n }\n\n this.visible = false;\n },\n onHide() {\n if (this.confirmation.onHide) {\n this.confirmation.onHide();\n }\n\n this.visible = false;\n },\n onAcceptKeydown(event) {\n if (event.code === 'Space' || event.code === 'Enter' || event.code === 'NumpadEnter') {\n this.accept();\n focus(this.target);\n event.preventDefault();\n }\n },\n onRejectKeydown(event) {\n if (event.code === 'Space' || event.code === 'Enter' || event.code === 'NumpadEnter') {\n this.reject();\n focus(this.target);\n event.preventDefault();\n }\n },\n onEnter(el) {\n this.autoFocusAccept = this.confirmation.defaultFocus === undefined || this.confirmation.defaultFocus === 'accept' ? true : false;\n this.autoFocusReject = this.confirmation.defaultFocus === 'reject' ? true : false;\n\n this.target = this.target || document.activeElement;\n\n this.bindOutsideClickListener();\n this.bindScrollListener();\n this.bindResizeListener();\n\n ZIndex.set('overlay', el, this.$primevue.config.zIndex.overlay);\n },\n onAfterEnter() {\n this.focus();\n },\n onLeave() {\n this.autoFocusAccept = null;\n this.autoFocusReject = null;\n\n focus(this.target);\n this.target = null;\n\n this.unbindOutsideClickListener();\n this.unbindScrollListener();\n this.unbindResizeListener();\n },\n onAfterLeave(el) {\n ZIndex.clear(el);\n },\n alignOverlay() {\n absolutePosition(this.container, this.target, false);\n\n const containerOffset = getOffset(this.container);\n const targetOffset = getOffset(this.target);\n let arrowLeft = 0;\n\n if (containerOffset.left < targetOffset.left) {\n arrowLeft = targetOffset.left - containerOffset.left;\n }\n\n this.container.style.setProperty($dt('confirmpopup.arrow.left').name, `${arrowLeft}px`);\n\n if (containerOffset.top < targetOffset.top) {\n this.container.setAttribute('data-p-confirmpopup-flipped', 'true');\n !this.isUnstyled && addClass(this.container, 'p-confirmpopup-flipped');\n }\n },\n bindOutsideClickListener() {\n if (!this.outsideClickListener) {\n this.outsideClickListener = (event) => {\n if (this.visible && this.container && !this.container.contains(event.target) && !this.isTargetClicked(event)) {\n if (this.confirmation.onHide) {\n this.confirmation.onHide();\n }\n\n this.visible = false;\n } else {\n this.alignOverlay();\n }\n };\n\n document.addEventListener('click', this.outsideClickListener, true);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener, true);\n this.outsideClickListener = null;\n }\n },\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.target, () => {\n if (this.visible) {\n this.visible = false;\n }\n });\n }\n\n this.scrollHandler.bindScrollListener();\n },\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n },\n bindResizeListener() {\n if (!this.resizeListener) {\n this.resizeListener = () => {\n if (this.visible && !isTouchDevice()) {\n this.visible = false;\n }\n };\n\n window.addEventListener('resize', this.resizeListener);\n }\n },\n unbindResizeListener() {\n if (this.resizeListener) {\n window.removeEventListener('resize', this.resizeListener);\n this.resizeListener = null;\n }\n },\n focus() {\n let focusTarget = this.container.querySelector('[autofocus]');\n\n if (focusTarget) {\n focusTarget.focus({ preventScroll: true }); // Firefox requires preventScroll\n }\n },\n isTargetClicked(event) {\n return this.target && (this.target === event.target || this.target.contains(event.target));\n },\n containerRef(el) {\n this.container = el;\n },\n onOverlayClick(event) {\n OverlayEventBus.emit('overlay-click', {\n originalEvent: event,\n target: this.target\n });\n },\n onOverlayKeydown(event) {\n if (event.code === 'Escape') {\n ConfirmationEventBus.emit('close', this.closeListener);\n focus(this.target);\n }\n }\n },\n computed: {\n message() {\n return this.confirmation ? this.confirmation.message : null;\n },\n acceptLabel() {\n if (this.confirmation) {\n const confirmation = this.confirmation;\n\n return confirmation.acceptLabel || confirmation.acceptProps?.label || this.$primevue.config.locale.accept;\n }\n\n return this.$primevue.config.locale.accept;\n },\n rejectLabel() {\n if (this.confirmation) {\n const confirmation = this.confirmation;\n\n return confirmation.rejectLabel || confirmation.rejectProps?.label || this.$primevue.config.locale.reject;\n }\n\n return this.$primevue.config.locale.reject;\n },\n acceptIcon() {\n return this.confirmation ? this.confirmation.acceptIcon : this.confirmation?.acceptProps ? this.confirmation.acceptProps.icon : null;\n },\n rejectIcon() {\n return this.confirmation ? this.confirmation.rejectIcon : this.confirmation?.rejectProps ? this.confirmation.rejectProps.icon : null;\n }\n },\n components: {\n Button,\n Portal\n },\n directives: {\n focustrap: FocusTrap\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","group","String","style","ConfirmPopupStyle","provide","$pcConfirmPopup","$parentInstance","BaseConfirmPopup","inheritAttrs","data","visible","confirmation","autoFocusAccept","autoFocusReject","target","outsideClickListener","scrollHandler","resizeListener","container","confirmListener","closeListener","mounted","_this","options","onShow","ConfirmationEventBus","on","beforeUnmount","off","unbindOutsideClickListener","destroy","unbindResizeListener","ZIndex","clear","methods","accept","reject","onHide","onAcceptKeydown","event","code","focus","preventDefault","onRejectKeydown","onEnter","el","defaultFocus","undefined","document","activeElement","bindOutsideClickListener","bindScrollListener","bindResizeListener","set","$primevue","config","zIndex","overlay","onAfterEnter","onLeave","unbindScrollListener","onAfterLeave","alignOverlay","absolutePosition","containerOffset","getOffset","targetOffset","arrowLeft","left","setProperty","$dt","concat","top","setAttribute","isUnstyled","addClass","_this2","contains","isTargetClicked","addEventListener","removeEventListener","_this3","ConnectedOverlayScrollHandler","_this4","isTouchDevice","window","focusTarget","querySelector","preventScroll","containerRef","onOverlayClick","OverlayEventBus","emit","originalEvent","onOverlayKeydown","computed","message","acceptLabel","_confirmation$acceptP","acceptProps","label","locale","rejectLabel","_confirmation$rejectP","rejectProps","acceptIcon","_this$confirmation","icon","rejectIcon","_this$confirmation2","components","Button","Portal","directives","focustrap","FocusTrap","_createBlock","_component_Portal","_createVNode","_Transition","_mergeProps","$options","_ctx","ptm","_$data$confirmation$r","_$data$confirmation$r2","_$data$confirmation$a","$data","_withDirectives","_openBlock","_createElementBlock","ref","role","cx","onClick","apply","arguments","onKeydown","ptmi","$slots","_renderSlot","acceptCallback","rejectCallback","_Fragment","key","_resolveDynamicComponent","_createElementVNode","_toDisplayString","_component_Button","rejectClass","autofocus","unstyled","size","text","pt","rejecticon","fn","_withCtx","iconProps","acceptClass","accepticon"],"mappings":";;;;;;;;;;;;;AAIA,eAAe;AACXA,EAAAA,IAAI,EAAE,kBAAkB;AACxB,EAAA,SAAA,EAASC,aAAa;AACtBC,EAAAA,KAAK,EAAE;AACHC,IAAAA,KAAK,EAAEC;GACV;AACDC,EAAAA,KAAK,EAAEC,iBAAiB;EACxBC,OAAO,EAAA,SAAPA,OAAOA,GAAG;IACN,OAAO;AACHC,MAAAA,eAAe,EAAE,IAAI;AACrBC,MAAAA,eAAe,EAAE;KACpB;AACL;AACJ,CAAC;;ACsDD,aAAe;AACXT,EAAAA,IAAI,EAAE,cAAc;AACpB,EAAA,SAAA,EAASU,QAAgB;AACzBC,EAAAA,YAAY,EAAE,KAAK;EACnBC,IAAI,EAAA,SAAJA,IAAIA,GAAG;IACH,OAAO;AACHC,MAAAA,OAAO,EAAE,KAAK;AACdC,MAAAA,YAAY,EAAE,IAAI;AAClBC,MAAAA,eAAe,EAAE,IAAI;AACrBC,MAAAA,eAAe,EAAE,IAAI;AACrBC,MAAAA,MAAM,EAAE;KACX;GACJ;AACDA,EAAAA,MAAM,EAAE,IAAI;AACZC,EAAAA,oBAAoB,EAAE,IAAI;AAC1BC,EAAAA,aAAa,EAAE,IAAI;AACnBC,EAAAA,cAAc,EAAE,IAAI;AACpBC,EAAAA,SAAS,EAAE,IAAI;AACfC,EAAAA,eAAe,EAAE,IAAI;AACrBC,EAAAA,aAAa,EAAE,IAAI;EACnBC,OAAO,EAAA,SAAPA,OAAOA,GAAG;AAAA,IAAA,IAAAC,KAAA,GAAA,IAAA;AACN,IAAA,IAAI,CAACH,eAAc,GAAI,UAACI,OAAO,EAAK;MAChC,IAAI,CAACA,OAAO,EAAE;AACV,QAAA;AACJ;AAEA,MAAA,IAAIA,OAAO,CAACvB,KAAM,KAAIsB,KAAI,CAACtB,KAAK,EAAE;QAC9BsB,KAAI,CAACX,YAAW,GAAIY,OAAO;AAC3BD,QAAAA,KAAI,CAACR,MAAK,GAAIS,OAAO,CAACT,MAAM;AAE5B,QAAA,IAAIQ,KAAI,CAACX,YAAY,CAACa,MAAM,EAAE;AAC1BF,UAAAA,KAAI,CAACX,YAAY,CAACa,MAAM,EAAE;AAC9B;QAEAF,KAAI,CAACZ,OAAQ,GAAE,IAAI;AACvB;KACH;IAED,IAAI,CAACU,gBAAgB,YAAM;MACvBE,KAAI,CAACZ,UAAU,KAAK;MACpBY,KAAI,CAACX,YAAW,GAAI,IAAI;KAC3B;IAEDc,oBAAoB,CAACC,EAAE,CAAC,SAAS,EAAE,IAAI,CAACP,eAAe,CAAC;IACxDM,oBAAoB,CAACC,EAAE,CAAC,OAAO,EAAE,IAAI,CAACN,aAAa,CAAC;GACvD;EACDO,aAAa,EAAA,SAAbA,aAAaA,GAAG;IACZF,oBAAoB,CAACG,GAAG,CAAC,SAAS,EAAE,IAAI,CAACT,eAAe,CAAC;IACzDM,oBAAoB,CAACG,GAAG,CAAC,OAAO,EAAE,IAAI,CAACR,aAAa,CAAC;IAErD,IAAI,CAACS,0BAA0B,EAAE;IAEjC,IAAI,IAAI,CAACb,aAAa,EAAE;AACpB,MAAA,IAAI,CAACA,aAAa,CAACc,OAAO,EAAE;MAC5B,IAAI,CAACd,gBAAgB,IAAI;AAC7B;IAEA,IAAI,CAACe,oBAAoB,EAAE;IAE3B,IAAI,IAAI,CAACb,SAAS,EAAE;AAChBc,MAAAA,MAAM,CAACC,KAAK,CAAC,IAAI,CAACf,SAAS,CAAC;MAC5B,IAAI,CAACA,SAAQ,GAAI,IAAI;AACzB;IAEA,IAAI,CAACJ,MAAO,GAAE,IAAI;IAClB,IAAI,CAACH,YAAW,GAAI,IAAI;GAC3B;AACDuB,EAAAA,OAAO,EAAE;IACLC,MAAM,EAAA,SAANA,MAAMA,GAAG;AACL,MAAA,IAAI,IAAI,CAACxB,YAAY,CAACwB,MAAM,EAAE;AAC1B,QAAA,IAAI,CAACxB,YAAY,CAACwB,MAAM,EAAE;AAC9B;MAEA,IAAI,CAACzB,UAAU,KAAK;KACvB;IACD0B,MAAM,EAAA,SAANA,MAAMA,GAAG;AACL,MAAA,IAAI,IAAI,CAACzB,YAAY,CAACyB,MAAM,EAAE;AAC1B,QAAA,IAAI,CAACzB,YAAY,CAACyB,MAAM,EAAE;AAC9B;MAEA,IAAI,CAAC1B,UAAU,KAAK;KACvB;IACD2B,MAAM,EAAA,SAANA,MAAMA,GAAG;AACL,MAAA,IAAI,IAAI,CAAC1B,YAAY,CAAC0B,MAAM,EAAE;AAC1B,QAAA,IAAI,CAAC1B,YAAY,CAAC0B,MAAM,EAAE;AAC9B;MAEA,IAAI,CAAC3B,UAAU,KAAK;KACvB;AACD4B,IAAAA,eAAe,EAAfA,SAAAA,eAAeA,CAACC,KAAK,EAAE;AACnB,MAAA,IAAIA,KAAK,CAACC,IAAG,KAAM,OAAQ,IAAGD,KAAK,CAACC,SAAS,OAAQ,IAAGD,KAAK,CAACC,IAAK,KAAI,aAAa,EAAE;QAClF,IAAI,CAACL,MAAM,EAAE;AACbM,QAAAA,KAAK,CAAC,IAAI,CAAC3B,MAAM,CAAC;QAClByB,KAAK,CAACG,cAAc,EAAE;AAC1B;KACH;AACDC,IAAAA,eAAe,EAAfA,SAAAA,eAAeA,CAACJ,KAAK,EAAE;AACnB,MAAA,IAAIA,KAAK,CAACC,IAAG,KAAM,OAAQ,IAAGD,KAAK,CAACC,SAAS,OAAQ,IAAGD,KAAK,CAACC,IAAK,KAAI,aAAa,EAAE;QAClF,IAAI,CAACJ,MAAM,EAAE;AACbK,QAAAA,KAAK,CAAC,IAAI,CAAC3B,MAAM,CAAC;QAClByB,KAAK,CAACG,cAAc,EAAE;AAC1B;KACH;AACDE,IAAAA,OAAO,EAAPA,SAAAA,OAAOA,CAACC,EAAE,EAAE;MACR,IAAI,CAACjC,eAAc,GAAI,IAAI,CAACD,YAAY,CAACmC,YAAa,KAAIC,SAAQ,IAAK,IAAI,CAACpC,YAAY,CAACmC,YAAW,KAAM,QAAO,GAAI,IAAK,GAAE,KAAK;AACjI,MAAA,IAAI,CAACjC,eAAgB,GAAE,IAAI,CAACF,YAAY,CAACmC,YAAa,KAAI,WAAW,OAAO,KAAK;MAEjF,IAAI,CAAChC,MAAK,GAAI,IAAI,CAACA,MAAK,IAAKkC,QAAQ,CAACC,aAAa;MAEnD,IAAI,CAACC,wBAAwB,EAAE;MAC/B,IAAI,CAACC,kBAAkB,EAAE;MACzB,IAAI,CAACC,kBAAkB,EAAE;AAEzBpB,MAAAA,MAAM,CAACqB,GAAG,CAAC,SAAS,EAAER,EAAE,EAAE,IAAI,CAACS,SAAS,CAACC,MAAM,CAACC,MAAM,CAACC,OAAO,CAAC;KAClE;IACDC,YAAY,EAAA,SAAZA,YAAYA,GAAG;MACX,IAAI,CAACjB,KAAK,EAAE;KACf;IACDkB,OAAO,EAAA,SAAPA,OAAOA,GAAG;MACN,IAAI,CAAC/C,kBAAkB,IAAI;MAC3B,IAAI,CAACC,kBAAkB,IAAI;AAE3B4B,MAAAA,KAAK,CAAC,IAAI,CAAC3B,MAAM,CAAC;MAClB,IAAI,CAACA,MAAO,GAAE,IAAI;MAElB,IAAI,CAACe,0BAA0B,EAAE;MACjC,IAAI,CAAC+B,oBAAoB,EAAE;MAC3B,IAAI,CAAC7B,oBAAoB,EAAE;KAC9B;AACD8B,IAAAA,YAAY,EAAZA,SAAAA,YAAYA,CAAChB,EAAE,EAAE;AACbb,MAAAA,MAAM,CAACC,KAAK,CAACY,EAAE,CAAC;KACnB;IACDiB,YAAY,EAAA,SAAZA,YAAYA,GAAG;MACXC,gBAAgB,CAAC,IAAI,CAAC7C,SAAS,EAAE,IAAI,CAACJ,MAAM,EAAE,KAAK,CAAC;AAEpD,MAAA,IAAMkD,eAAc,GAAIC,SAAS,CAAC,IAAI,CAAC/C,SAAS,CAAC;AACjD,MAAA,IAAMgD,YAAW,GAAID,SAAS,CAAC,IAAI,CAACnD,MAAM,CAAC;MAC3C,IAAIqD,SAAU,GAAE,CAAC;AAEjB,MAAA,IAAIH,eAAe,CAACI,IAAG,GAAIF,YAAY,CAACE,IAAI,EAAE;AAC1CD,QAAAA,YAAYD,YAAY,CAACE,IAAG,GAAIJ,eAAe,CAACI,IAAI;AACxD;AAEA,MAAA,IAAI,CAAClD,SAAS,CAAChB,KAAK,CAACmE,WAAW,CAACC,GAAG,CAAC,yBAAyB,CAAC,CAACzE,IAAI,EAAA,EAAA,CAAA0E,MAAA,CAAKJ,SAAS,OAAI,CAAC;AAEvF,MAAA,IAAIH,eAAe,CAACQ,GAAE,GAAIN,YAAY,CAACM,GAAG,EAAE;QACxC,IAAI,CAACtD,SAAS,CAACuD,YAAY,CAAC,6BAA6B,EAAE,MAAM,CAAC;QAClE,CAAC,IAAI,CAACC,UAAS,IAAKC,QAAQ,CAAC,IAAI,CAACzD,SAAS,EAAE,wBAAwB,CAAC;AAC1E;KACH;IACDgC,wBAAwB,EAAA,SAAxBA,wBAAwBA,GAAG;AAAA,MAAA,IAAA0B,MAAA,GAAA,IAAA;AACvB,MAAA,IAAI,CAAC,IAAI,CAAC7D,oBAAoB,EAAE;AAC5B,QAAA,IAAI,CAACA,oBAAqB,GAAE,UAACwB,KAAK,EAAK;UACnC,IAAIqC,MAAI,CAAClE,OAAM,IAAKkE,MAAI,CAAC1D,SAAQ,IAAK,CAAC0D,MAAI,CAAC1D,SAAS,CAAC2D,QAAQ,CAACtC,KAAK,CAACzB,MAAM,KAAK,CAAC8D,MAAI,CAACE,eAAe,CAACvC,KAAK,CAAC,EAAE;AAC1G,YAAA,IAAIqC,MAAI,CAACjE,YAAY,CAAC0B,MAAM,EAAE;AAC1BuC,cAAAA,MAAI,CAACjE,YAAY,CAAC0B,MAAM,EAAE;AAC9B;YAEAuC,MAAI,CAAClE,UAAU,KAAK;AACxB,WAAE,MAAK;YACHkE,MAAI,CAACd,YAAY,EAAE;AACvB;SACH;QAEDd,QAAQ,CAAC+B,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAChE,oBAAoB,EAAE,IAAI,CAAC;AACvE;KACH;IACDc,0BAA0B,EAAA,SAA1BA,0BAA0BA,GAAG;MACzB,IAAI,IAAI,CAACd,oBAAoB,EAAE;QAC3BiC,QAAQ,CAACgC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAACjE,oBAAoB,EAAE,IAAI,CAAC;QACtE,IAAI,CAACA,oBAAmB,GAAI,IAAI;AACpC;KACH;IACDoC,kBAAkB,EAAA,SAAlBA,kBAAkBA,GAAG;AAAA,MAAA,IAAA8B,MAAA,GAAA,IAAA;AACjB,MAAA,IAAI,CAAC,IAAI,CAACjE,aAAa,EAAE;QACrB,IAAI,CAACA,aAAY,GAAI,IAAIkE,6BAA6B,CAAC,IAAI,CAACpE,MAAM,EAAE,YAAM;UACtE,IAAImE,MAAI,CAACvE,OAAO,EAAE;YACduE,MAAI,CAACvE,UAAU,KAAK;AACxB;AACJ,SAAC,CAAC;AACN;AAEA,MAAA,IAAI,CAACM,aAAa,CAACmC,kBAAkB,EAAE;KAC1C;IACDS,oBAAoB,EAAA,SAApBA,oBAAoBA,GAAG;MACnB,IAAI,IAAI,CAAC5C,aAAa,EAAE;AACpB,QAAA,IAAI,CAACA,aAAa,CAAC4C,oBAAoB,EAAE;AAC7C;KACH;IACDR,kBAAkB,EAAA,SAAlBA,kBAAkBA,GAAG;AAAA,MAAA,IAAA+B,MAAA,GAAA,IAAA;AACjB,MAAA,IAAI,CAAC,IAAI,CAAClE,cAAc,EAAE;QACtB,IAAI,CAACA,iBAAiB,YAAM;UACxB,IAAIkE,MAAI,CAACzE,WAAW,CAAC0E,aAAa,EAAE,EAAE;YAClCD,MAAI,CAACzE,UAAU,KAAK;AACxB;SACH;QAED2E,MAAM,CAACN,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC9D,cAAc,CAAC;AAC1D;KACH;IACDc,oBAAoB,EAAA,SAApBA,oBAAoBA,GAAG;MACnB,IAAI,IAAI,CAACd,cAAc,EAAE;QACrBoE,MAAM,CAACL,mBAAmB,CAAC,QAAQ,EAAE,IAAI,CAAC/D,cAAc,CAAC;QACzD,IAAI,CAACA,iBAAiB,IAAI;AAC9B;KACH;IACDwB,KAAK,EAAA,SAALA,KAAKA,GAAG;MACJ,IAAI6C,WAAU,GAAI,IAAI,CAACpE,SAAS,CAACqE,aAAa,CAAC,aAAa,CAAC;AAE7D,MAAA,IAAID,WAAW,EAAE;QACbA,WAAW,CAAC7C,KAAK,CAAC;AAAE+C,UAAAA,aAAa,EAAE;SAAM,CAAC,CAAA;AAC9C;KACH;AACDV,IAAAA,eAAe,EAAfA,SAAAA,eAAeA,CAACvC,KAAK,EAAE;MACnB,OAAO,IAAI,CAACzB,MAAK,KAAM,IAAI,CAACA,MAAO,KAAIyB,KAAK,CAACzB,MAAK,IAAK,IAAI,CAACA,MAAM,CAAC+D,QAAQ,CAACtC,KAAK,CAACzB,MAAM,CAAC,CAAC;KAC7F;AACD2E,IAAAA,YAAY,EAAZA,SAAAA,YAAYA,CAAC5C,EAAE,EAAE;MACb,IAAI,CAAC3B,SAAU,GAAE2B,EAAE;KACtB;AACD6C,IAAAA,cAAc,EAAdA,SAAAA,cAAcA,CAACnD,KAAK,EAAE;AAClBoD,MAAAA,eAAe,CAACC,IAAI,CAAC,eAAe,EAAE;AAClCC,QAAAA,aAAa,EAAEtD,KAAK;QACpBzB,MAAM,EAAE,IAAI,CAACA;AACjB,OAAC,CAAC;KACL;AACDgF,IAAAA,gBAAgB,EAAhBA,SAAAA,gBAAgBA,CAACvD,KAAK,EAAE;AACpB,MAAA,IAAIA,KAAK,CAACC,SAAS,QAAQ,EAAE;QACzBf,oBAAoB,CAACmE,IAAI,CAAC,OAAO,EAAE,IAAI,CAACxE,aAAa,CAAC;AACtDqB,QAAAA,KAAK,CAAC,IAAI,CAAC3B,MAAM,CAAC;AACtB;AACJ;GACH;AACDiF,EAAAA,QAAQ,EAAE;IACNC,OAAO,EAAA,SAAPA,OAAOA,GAAG;MACN,OAAO,IAAI,CAACrF,YAAW,GAAI,IAAI,CAACA,YAAY,CAACqF,UAAU,IAAI;KAC9D;IACDC,WAAW,EAAA,SAAXA,WAAWA,GAAG;MACV,IAAI,IAAI,CAACtF,YAAY,EAAE;AAAA,QAAA,IAAAuF,qBAAA;AACnB,QAAA,IAAMvF,YAAW,GAAI,IAAI,CAACA,YAAY;QAEtC,OAAOA,YAAY,CAACsF,WAAU,KAAAC,CAAAA,qBAAA,GAAKvF,YAAY,CAACwF,WAAW,MAAA,IAAA,IAAAD,qBAAA,KAAA,MAAA,GAAA,MAAA,GAAxBA,qBAAA,CAA0BE,MAAS,IAAA,IAAI,CAAC9C,SAAS,CAACC,MAAM,CAAC8C,MAAM,CAAClE,MAAM;AAC7G;MAEA,OAAO,IAAI,CAACmB,SAAS,CAACC,MAAM,CAAC8C,MAAM,CAAClE,MAAM;KAC7C;IACDmE,WAAW,EAAA,SAAXA,WAAWA,GAAG;MACV,IAAI,IAAI,CAAC3F,YAAY,EAAE;AAAA,QAAA,IAAA4F,qBAAA;AACnB,QAAA,IAAM5F,YAAW,GAAI,IAAI,CAACA,YAAY;QAEtC,OAAOA,YAAY,CAAC2F,WAAU,KAAAC,CAAAA,qBAAA,GAAK5F,YAAY,CAAC6F,WAAW,MAAA,IAAA,IAAAD,qBAAA,KAAA,MAAA,GAAA,MAAA,GAAxBA,qBAAA,CAA0BH,MAAS,IAAA,IAAI,CAAC9C,SAAS,CAACC,MAAM,CAAC8C,MAAM,CAACjE,MAAM;AAC7G;MAEA,OAAO,IAAI,CAACkB,SAAS,CAACC,MAAM,CAAC8C,MAAM,CAACjE,MAAM;KAC7C;IACDqE,UAAU,EAAA,SAAVA,UAAUA,GAAG;AAAA,MAAA,IAAAC,kBAAA;AACT,MAAA,OAAO,IAAI,CAAC/F,YAAa,GAAE,IAAI,CAACA,YAAY,CAAC8F,UAAW,GAAE,CAAAC,kBAAA,OAAI,CAAC/F,YAAY,MAAA+F,IAAAA,IAAAA,kBAAA,KAAjBA,MAAAA,IAAAA,kBAAA,CAAmBP,WAAY,GAAE,IAAI,CAACxF,YAAY,CAACwF,WAAW,CAACQ,IAAG,GAAI,IAAI;KACvI;IACDC,UAAU,EAAA,SAAVA,UAAUA,GAAG;AAAA,MAAA,IAAAC,mBAAA;AACT,MAAA,OAAO,IAAI,CAAClG,YAAa,GAAE,IAAI,CAACA,YAAY,CAACiG,UAAW,GAAE,CAAAC,mBAAA,OAAI,CAAClG,YAAY,MAAAkG,IAAAA,IAAAA,mBAAA,KAAjBA,MAAAA,IAAAA,mBAAA,CAAmBL,WAAY,GAAE,IAAI,CAAC7F,YAAY,CAAC6F,WAAW,CAACG,IAAG,GAAI,IAAI;AACxI;GACH;AACDG,EAAAA,UAAU,EAAE;AACRC,IAAAA,MAAM,EAANA,MAAM;AACNC,IAAAA,MAAK,EAALA;GACH;AACDC,EAAAA,UAAU,EAAE;AACRC,IAAAA,SAAS,EAAEC;AACf;AACJ,CAAC;;;;;;;sBClVGC,WAuDQ,CAAAC,iBAAA,EAAA,IAAA,EAAA;uBAtDJ,YAAA;AAAA,MAAA,OAqDY,CArDZC,WAAA,CAqDYC,YArDZC,UAqDY,CAAA;AArDA3H,QAAAA,IAAI,EAAC,gBAAe;QAAG+C,OAAK,EAAE6E,QAAO,CAAA7E,OAAA;QAAGc,YAAW,EAAE+D,QAAY,CAAA/D,YAAA;QAAGC,OAAK,EAAE8D,QAAO,CAAA9D,OAAA;QAAGE,YAAW,EAAE4D,QAAY,CAAA5D;SAAU6D,IAAG,CAAAC,GAAA,CAAA,YAAA,CAAA,CAAA,EAAA;2BACnI,YAAA;AAAA,UAAA,IAAAC,qBAAA,EAAAC,sBAAA,EAAAC,qBAAA;AAAA,UAAA,OAmDK,CAnDMC,KAAO,CAAArH,OAAA,GAAlBsH,cAAA,EAAAC,SAAA,EAAA,EAAAC,kBAAA,CAmDK,OAnDLV,UAmDK,CAAA;;YAnDgBW,GAAG,EAAEV,QAAY,CAAAhC,YAAA;AAAc2C,YAAAA,IAAI,EAAC,aAAc;AAAC,YAAA,OAAA,EAAOV,IAAE,CAAAW,EAAA,CAAA,MAAA,CAAA;YAAW,YAAU,EAAEN,KAAO,CAAArH,OAAA;YAAG4H,OAAK;qBAAEb,QAAc,CAAA/B,cAAA,IAAA+B,QAAA,CAAA/B,cAAA,CAAA6C,KAAA,CAAAd,QAAA,EAAAe,SAAA,CAAA;AAAA,aAAA,CAAA;YAAGC,SAAO;qBAAEhB,QAAgB,CAAA3B,gBAAA,IAAA2B,QAAA,CAAA3B,gBAAA,CAAAyC,KAAA,CAAAd,QAAA,EAAAe,SAAA,CAAA;aAAA;aAAUd,IAAI,CAAAgB,IAAA,CAAA,MAAA,CAAA,CAAA,EAAA,CACjKhB,IAAA,CAAAiB,MAAM,CAACzH,SAAS,GAA5B0H,UAA+H,CAAAlB,IAAA,CAAAiB,MAAA,EAAA,WAAA,EAAA;;YAA/E3C,OAAO,EAAE+B,KAAY,CAAApH,YAAA;YAAGkI,cAAc,EAAEpB,QAAM,CAAAtF,MAAA;YAAG2G,cAAc,EAAErB,QAAM,CAAArF;6BACvH8F,kBAgDU,CAAAa,QAAA,EAAA;AAAAC,YAAAA,GAAA,EAAA;AAAA,WAAA,EAAA,CA/CW,CAAAtB,IAAA,CAAAiB,MAAM,CAAC3C,OAAO,IAC3BiC,SAAA,EAAA,EAAAC,kBAAA,CAMK,OANLV,UAMK,CAAA;;AANC,YAAA,OAAA,EAAOE,IAAE,CAAAW,EAAA,CAAA,SAAA;aAAqBX,IAAG,CAAAC,GAAA,CAAA,SAAA,CAAA,CAAA,EAAA,CACnCiB,UAAA,CAGMlB,yBAHN,YAAA;YAAA,OAGM,CAFeA,IAAA,CAAAiB,MAAM,CAAChC,IAAI,iBAA5BS,WAAqE,CAAA6B,uBAAA,CAAlCvB,IAAM,CAAAiB,MAAA,CAAChC,IAAI,CAAA,EAAA;;AAAG,cAAA,OAAA,iBAAOe,IAAE,CAAAW,EAAA,CAAA,MAAA,CAAA;sCACzCN,KAAA,CAAApH,YAAY,CAACgG,IAAI,IAAlCsB,SAAA,EAAA,EAAAC,kBAAA,CAAmG,QAAnGV,UAAmG,CAAA;;AAA9D,cAAA,OAAA,EAAQ,CAAAO,KAAA,CAAApH,YAAY,CAACgG,IAAI,EAAEe,IAAE,CAAAW,EAAA,CAAA,MAAA,CAAA;eAAmBX,IAAG,CAAAC,GAAA,CAAA,MAAA,CAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA;cAE5FuB,kBAAA,CAAqF,QAArF1B,UAAqF,CAAA;AAA9E,YAAA,OAAA,EAAOE,IAAE,CAAAW,EAAA,CAAA,SAAA;aAAqBX,IAAG,CAAAC,GAAA,CAAA,SAAA,CAAA,CAAA,EAAAwB,eAAA,CAAgBpB,KAAY,CAAApH,YAAA,CAACqF,OAAM,CAAA,EAAA,EAAA,CAAA,wBAGnFoB,WAA0E,CAAA6B,uBAAA,CAAnDvB,IAAM,CAAAiB,MAAA,CAAC3C,OAAO,CAAA,EAAA;;YAAGA,OAAO,EAAE+B,KAAY,CAAApH;qCAC7DuI,kBAAA,CAoCK,OApCL1B,UAoCK,CAAA;AApCC,YAAA,OAAA,EAAOE,IAAE,CAAAW,EAAA,CAAA,QAAA;aAAoBX,IAAG,CAAAC,GAAA,CAAA,QAAA,CAAA,CAAA,EAAA,CAClCL,WAAA,CAiBQ8B,mBAjBR5B,UAiBQ,CAAA;AAhBH,YAAA,OAAA,EAAQ,CAAAE,IAAA,CAAAW,EAAE,CAAoB,gBAAA,CAAA,EAAAN,KAAA,CAAApH,YAAY,CAAC0I,WAAW,CAAA;YACtDC,SAAS,EAAEvB,KAAe,CAAAlH,eAAA;YAC1B0I,QAAQ,EAAE7B,IAAQ,CAAA6B,QAAA;AAClBC,YAAAA,IAAI,EAAE,CAAA5B,CAAAA,qBAAA,GAAAG,KAAA,CAAApH,YAAY,CAAC6F,WAAW,MAAA,IAAA,IAAAoB,qBAAA,KAAxBA,MAAAA,GAAAA,MAAAA,GAAAA,qBAAA,CAA0B4B,IAAK,KAAA,OAAA;AACrCC,YAAAA,IAAI,EAAE,CAAA5B,CAAAA,sBAAA,GAAAE,KAAA,CAAApH,YAAY,CAAC6F,WAAW,MAAA,IAAA,IAAAqB,sBAAA,KAAxBA,MAAAA,GAAAA,MAAAA,GAAAA,sBAAA,CAA0B4B;AAChCnB,YAAAA,OAAK;qBAAEb,QAAM,CAAArF,MAAA,EAAA;AAAA,aAAA,CAAA;YACbqG,SAAO,EAAEhB,QAAe,CAAA9E;AACjB,WAAA,EAAAoF,KAAA,CAAApH,YAAY,CAAC6F,WAAW,EAAA;YAC/BJ,KAAK,EAAEqB,QAAW,CAAAnB,WAAA;AAClBoD,YAAAA,EAAE,EAAEhC,IAAG,CAAAC,GAAA,CAAA,gBAAA;;;cAEQF,QAAS,CAAAb,UAAA,IAAKc,IAAM,CAAAiB,MAAA,CAACgB,UAAU;kBAAG,MAAI;AAClDC,YAAAA,EAAA,EAAAC,OAAA,CAAA,UADoDC,SAAS,EAAA;cAAA,OAAA,CAC7DlB,UAAA,CAEMlB,+BAFN,YAAA;AAAA,gBAAA,OAEM,CADFwB,kBAAA,CAAwH,QAAxH1B,UAAwH,CAAA;AAAjH,kBAAA,OAAA,EAAQ,CAAAC,QAAA,CAAAb,UAAU,EAAEkD,SAAS,CAAM,OAAA,CAAA;mBAAWpC,IAAG,CAAAC,GAAA,CAAA,gBAAA,CAAA,CAAA,MAAA,CAAA,EAAA;AAA4B,kBAAA,iBAAe,EAAC;AAAiB,iBAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA;;;;kHAIjIL,WAAA,CAgBQ8B,mBAhBR5B,UAgBQ,CAAA;AAfH,YAAA,OAAA,EAAQ,CAAAE,IAAA,CAAAW,EAAE,CAAoB,gBAAA,CAAA,EAAAN,KAAA,CAAApH,YAAY,CAACoJ,WAAW,CAAA;YACtDT,SAAS,EAAEvB,KAAe,CAAAnH,eAAA;YAC1B2I,QAAQ,EAAE7B,IAAQ,CAAA6B,QAAA;AAClBC,YAAAA,IAAI,EAAE,CAAA1B,CAAAA,qBAAA,GAAAC,KAAA,CAAApH,YAAY,CAACwF,WAAW,MAAA,IAAA,IAAA2B,qBAAA,KAAxBA,MAAAA,GAAAA,MAAAA,GAAAA,qBAAA,CAA0B0B,IAAK,KAAA,OAAA;AACrClB,YAAAA,OAAK;qBAAEb,QAAM,CAAAtF,MAAA,EAAA;AAAA,aAAA,CAAA;YACbsG,SAAO,EAAEhB,QAAe,CAAAnF;AACjB,WAAA,EAAAyF,KAAA,CAAApH,YAAY,CAACwF,WAAW,EAAA;YAC/BC,KAAK,EAAEqB,QAAW,CAAAxB,WAAA;AAClByD,YAAAA,EAAE,EAAEhC,IAAG,CAAAC,GAAA,CAAA,gBAAA;;;cAEQF,QAAS,CAAAhB,UAAA,IAAKiB,IAAM,CAAAiB,MAAA,CAACqB,UAAU;kBAAG,MAAI;AAClDJ,YAAAA,EAAA,EAAAC,OAAA,CAAA,UADoDC,SAAS,EAAA;cAAA,OAAA,CAC7DlB,UAAA,CAEMlB,+BAFN,YAAA;AAAA,gBAAA,OAEM,CADFwB,kBAAA,CAAwH,QAAxH1B,UAAwH,CAAA;AAAjH,kBAAA,OAAA,EAAQ,CAAAC,QAAA,CAAAhB,UAAU,EAAEqD,SAAS,CAAM,OAAA,CAAA;mBAAWpC,IAAG,CAAAC,GAAA,CAAA,gBAAA,CAAA,CAAA,MAAA,CAAA,EAAA;AAA4B,kBAAA,iBAAe,EAAC;AAAiB,iBAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA;;;;;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/confirmpopup/BaseConfirmPopup.vue","../../src/confirmpopup/ConfirmPopup.vue","../../src/confirmpopup/ConfirmPopup.vue?vue&type=template&id=4a68fc04&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport ConfirmPopupStyle from 'primevue/confirmpopup/style';\n\nexport default {\n name: 'BaseConfirmPopup',\n extends: BaseComponent,\n props: {\n group: String\n },\n style: ConfirmPopupStyle,\n provide() {\n return {\n $pcConfirmPopup: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <Portal>\n <transition name=\"p-confirmpopup\" @enter=\"onEnter\" @after-enter=\"onAfterEnter\" @leave=\"onLeave\" @after-leave=\"onAfterLeave\" v-bind=\"ptm('transition')\">\n <div v-if=\"visible\" :ref=\"containerRef\" v-focustrap role=\"alertdialog\" :class=\"cx('root')\" :aria-modal=\"visible\" @click=\"onOverlayClick\" @keydown=\"onOverlayKeydown\" v-bind=\"ptmi('root')\">\n <slot v-if=\"$slots.container\" name=\"container\" :message=\"confirmation\" :acceptCallback=\"accept\" :rejectCallback=\"reject\"></slot>\n <template v-else>\n <template v-if=\"!$slots.message\">\n <div :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <slot name=\"icon\">\n <component v-if=\"$slots.icon\" :is=\"$slots.icon\" :class=\"cx('icon')\" />\n <span v-else-if=\"confirmation.icon\" :class=\"[confirmation.icon, cx('icon')]\" v-bind=\"ptm('icon')\" />\n </slot>\n <span :class=\"cx('message')\" v-bind=\"ptm('message')\">{{ confirmation.message }}</span>\n </div>\n </template>\n <component v-else :is=\"$slots.message\" :message=\"confirmation\"></component>\n <div :class=\"cx('footer')\" v-bind=\"ptm('footer')\">\n <Button\n :class=\"[cx('pcRejectButton'), confirmation.rejectClass]\"\n :autofocus=\"autoFocusReject\"\n :unstyled=\"unstyled\"\n :size=\"confirmation.rejectProps?.size || 'small'\"\n :text=\"confirmation.rejectProps?.text || false\"\n @click=\"reject()\"\n @keydown=\"onRejectKeydown\"\n v-bind=\"confirmation.rejectProps\"\n :label=\"rejectLabel\"\n :pt=\"ptm('pcRejectButton')\"\n >\n <template v-if=\"rejectIcon || $slots.rejecticon\" #icon=\"iconProps\">\n <slot name=\"rejecticon\">\n <span :class=\"[rejectIcon, iconProps.class]\" v-bind=\"ptm('pcRejectButton')['icon']\" data-pc-section=\"rejectbuttonicon\" />\n </slot>\n </template>\n </Button>\n <Button\n :class=\"[cx('pcAcceptButton'), confirmation.acceptClass]\"\n :autofocus=\"autoFocusAccept\"\n :unstyled=\"unstyled\"\n :size=\"confirmation.acceptProps?.size || 'small'\"\n @click=\"accept()\"\n @keydown=\"onAcceptKeydown\"\n v-bind=\"confirmation.acceptProps\"\n :label=\"acceptLabel\"\n :pt=\"ptm('pcAcceptButton')\"\n >\n <template v-if=\"acceptIcon || $slots.accepticon\" #icon=\"iconProps\">\n <slot name=\"accepticon\">\n <span :class=\"[acceptIcon, iconProps.class]\" v-bind=\"ptm('pcAcceptButton')['icon']\" data-pc-section=\"acceptbuttonicon\" />\n </slot>\n </template>\n </Button>\n </div>\n </template>\n </div>\n </transition>\n </Portal>\n</template>\n\n<script>\nimport { $dt } from '@primeuix/styled';\nimport { absolutePosition, addClass, focus, getOffset, isTouchDevice } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport { ConnectedOverlayScrollHandler } from '@primevue/core/utils';\nimport Button from 'primevue/button';\nimport ConfirmationEventBus from 'primevue/confirmationeventbus';\nimport FocusTrap from 'primevue/focustrap';\nimport OverlayEventBus from 'primevue/overlayeventbus';\nimport Portal from 'primevue/portal';\nimport BaseConfirmPopup from './BaseConfirmPopup.vue';\n\nexport default {\n name: 'ConfirmPopup',\n extends: BaseConfirmPopup,\n inheritAttrs: false,\n data() {\n return {\n visible: false,\n confirmation: null,\n autoFocusAccept: null,\n autoFocusReject: null,\n target: null\n };\n },\n target: null,\n outsideClickListener: null,\n scrollHandler: null,\n resizeListener: null,\n container: null,\n confirmListener: null,\n closeListener: null,\n mounted() {\n this.confirmListener = (options) => {\n if (!options) {\n return;\n }\n\n if (options.group === this.group) {\n this.confirmation = options;\n this.target = options.target;\n\n if (this.confirmation.onShow) {\n this.confirmation.onShow();\n }\n\n this.visible = true;\n }\n };\n\n this.closeListener = () => {\n this.visible = false;\n this.confirmation = null;\n };\n\n ConfirmationEventBus.on('confirm', this.confirmListener);\n ConfirmationEventBus.on('close', this.closeListener);\n },\n beforeUnmount() {\n ConfirmationEventBus.off('confirm', this.confirmListener);\n ConfirmationEventBus.off('close', this.closeListener);\n\n this.unbindOutsideClickListener();\n\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n\n this.unbindResizeListener();\n\n if (this.container) {\n ZIndex.clear(this.container);\n this.container = null;\n }\n\n this.target = null;\n this.confirmation = null;\n },\n methods: {\n accept() {\n if (this.confirmation.accept) {\n this.confirmation.accept();\n }\n\n this.visible = false;\n },\n reject() {\n if (this.confirmation.reject) {\n this.confirmation.reject();\n }\n\n this.visible = false;\n },\n onHide() {\n if (this.confirmation.onHide) {\n this.confirmation.onHide();\n }\n\n this.visible = false;\n },\n onAcceptKeydown(event) {\n if (event.code === 'Space' || event.code === 'Enter' || event.code === 'NumpadEnter') {\n this.accept();\n focus(this.target);\n event.preventDefault();\n }\n },\n onRejectKeydown(event) {\n if (event.code === 'Space' || event.code === 'Enter' || event.code === 'NumpadEnter') {\n this.reject();\n focus(this.target);\n event.preventDefault();\n }\n },\n onEnter(el) {\n this.autoFocusAccept = this.confirmation.defaultFocus === undefined || this.confirmation.defaultFocus === 'accept' ? true : false;\n this.autoFocusReject = this.confirmation.defaultFocus === 'reject' ? true : false;\n\n this.target = this.target || document.activeElement;\n\n this.bindOutsideClickListener();\n this.bindScrollListener();\n this.bindResizeListener();\n\n ZIndex.set('overlay', el, this.$primevue.config.zIndex.overlay);\n },\n onAfterEnter() {\n this.focus();\n },\n onLeave() {\n this.autoFocusAccept = null;\n this.autoFocusReject = null;\n\n focus(this.target);\n this.target = null;\n\n this.unbindOutsideClickListener();\n this.unbindScrollListener();\n this.unbindResizeListener();\n },\n onAfterLeave(el) {\n ZIndex.clear(el);\n },\n alignOverlay() {\n absolutePosition(this.container, this.target, false);\n\n const containerOffset = getOffset(this.container);\n const targetOffset = getOffset(this.target);\n let arrowLeft = 0;\n\n if (containerOffset.left < targetOffset.left) {\n arrowLeft = targetOffset.left - containerOffset.left;\n }\n\n this.container.style.setProperty($dt('confirmpopup.arrow.left').name, `${arrowLeft}px`);\n\n if (containerOffset.top < targetOffset.top) {\n this.container.setAttribute('data-p-confirmpopup-flipped', 'true');\n !this.isUnstyled && addClass(this.container, 'p-confirmpopup-flipped');\n }\n },\n bindOutsideClickListener() {\n if (!this.outsideClickListener) {\n this.outsideClickListener = (event) => {\n if (this.visible && this.container && !this.container.contains(event.target) && !this.isTargetClicked(event)) {\n if (this.confirmation.onHide) {\n this.confirmation.onHide();\n }\n\n this.visible = false;\n } else {\n this.alignOverlay();\n }\n };\n\n document.addEventListener('click', this.outsideClickListener);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener);\n this.outsideClickListener = null;\n }\n },\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.target, () => {\n if (this.visible) {\n this.visible = false;\n }\n });\n }\n\n this.scrollHandler.bindScrollListener();\n },\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n },\n bindResizeListener() {\n if (!this.resizeListener) {\n this.resizeListener = () => {\n if (this.visible && !isTouchDevice()) {\n this.visible = false;\n }\n };\n\n window.addEventListener('resize', this.resizeListener);\n }\n },\n unbindResizeListener() {\n if (this.resizeListener) {\n window.removeEventListener('resize', this.resizeListener);\n this.resizeListener = null;\n }\n },\n focus() {\n let focusTarget = this.container.querySelector('[autofocus]');\n\n if (focusTarget) {\n focusTarget.focus({ preventScroll: true }); // Firefox requires preventScroll\n }\n },\n isTargetClicked(event) {\n return this.target && (this.target === event.target || this.target.contains(event.target));\n },\n containerRef(el) {\n this.container = el;\n },\n onOverlayClick(event) {\n OverlayEventBus.emit('overlay-click', {\n originalEvent: event,\n target: this.target\n });\n },\n onOverlayKeydown(event) {\n if (event.code === 'Escape') {\n ConfirmationEventBus.emit('close', this.closeListener);\n focus(this.target);\n }\n }\n },\n computed: {\n message() {\n return this.confirmation ? this.confirmation.message : null;\n },\n acceptLabel() {\n if (this.confirmation) {\n const confirmation = this.confirmation;\n\n return confirmation.acceptLabel || confirmation.acceptProps?.label || this.$primevue.config.locale.accept;\n }\n\n return this.$primevue.config.locale.accept;\n },\n rejectLabel() {\n if (this.confirmation) {\n const confirmation = this.confirmation;\n\n return confirmation.rejectLabel || confirmation.rejectProps?.label || this.$primevue.config.locale.reject;\n }\n\n return this.$primevue.config.locale.reject;\n },\n acceptIcon() {\n return this.confirmation ? this.confirmation.acceptIcon : this.confirmation?.acceptProps ? this.confirmation.acceptProps.icon : null;\n },\n rejectIcon() {\n return this.confirmation ? this.confirmation.rejectIcon : this.confirmation?.rejectProps ? this.confirmation.rejectProps.icon : null;\n }\n },\n components: {\n Button,\n Portal\n },\n directives: {\n focustrap: FocusTrap\n }\n};\n</script>\n","<template>\n <Portal>\n <transition name=\"p-confirmpopup\" @enter=\"onEnter\" @after-enter=\"onAfterEnter\" @leave=\"onLeave\" @after-leave=\"onAfterLeave\" v-bind=\"ptm('transition')\">\n <div v-if=\"visible\" :ref=\"containerRef\" v-focustrap role=\"alertdialog\" :class=\"cx('root')\" :aria-modal=\"visible\" @click=\"onOverlayClick\" @keydown=\"onOverlayKeydown\" v-bind=\"ptmi('root')\">\n <slot v-if=\"$slots.container\" name=\"container\" :message=\"confirmation\" :acceptCallback=\"accept\" :rejectCallback=\"reject\"></slot>\n <template v-else>\n <template v-if=\"!$slots.message\">\n <div :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <slot name=\"icon\">\n <component v-if=\"$slots.icon\" :is=\"$slots.icon\" :class=\"cx('icon')\" />\n <span v-else-if=\"confirmation.icon\" :class=\"[confirmation.icon, cx('icon')]\" v-bind=\"ptm('icon')\" />\n </slot>\n <span :class=\"cx('message')\" v-bind=\"ptm('message')\">{{ confirmation.message }}</span>\n </div>\n </template>\n <component v-else :is=\"$slots.message\" :message=\"confirmation\"></component>\n <div :class=\"cx('footer')\" v-bind=\"ptm('footer')\">\n <Button\n :class=\"[cx('pcRejectButton'), confirmation.rejectClass]\"\n :autofocus=\"autoFocusReject\"\n :unstyled=\"unstyled\"\n :size=\"confirmation.rejectProps?.size || 'small'\"\n :text=\"confirmation.rejectProps?.text || false\"\n @click=\"reject()\"\n @keydown=\"onRejectKeydown\"\n v-bind=\"confirmation.rejectProps\"\n :label=\"rejectLabel\"\n :pt=\"ptm('pcRejectButton')\"\n >\n <template v-if=\"rejectIcon || $slots.rejecticon\" #icon=\"iconProps\">\n <slot name=\"rejecticon\">\n <span :class=\"[rejectIcon, iconProps.class]\" v-bind=\"ptm('pcRejectButton')['icon']\" data-pc-section=\"rejectbuttonicon\" />\n </slot>\n </template>\n </Button>\n <Button\n :class=\"[cx('pcAcceptButton'), confirmation.acceptClass]\"\n :autofocus=\"autoFocusAccept\"\n :unstyled=\"unstyled\"\n :size=\"confirmation.acceptProps?.size || 'small'\"\n @click=\"accept()\"\n @keydown=\"onAcceptKeydown\"\n v-bind=\"confirmation.acceptProps\"\n :label=\"acceptLabel\"\n :pt=\"ptm('pcAcceptButton')\"\n >\n <template v-if=\"acceptIcon || $slots.accepticon\" #icon=\"iconProps\">\n <slot name=\"accepticon\">\n <span :class=\"[acceptIcon, iconProps.class]\" v-bind=\"ptm('pcAcceptButton')['icon']\" data-pc-section=\"acceptbuttonicon\" />\n </slot>\n </template>\n </Button>\n </div>\n </template>\n </div>\n </transition>\n </Portal>\n</template>\n\n<script>\nimport { $dt } from '@primeuix/styled';\nimport { absolutePosition, addClass, focus, getOffset, isTouchDevice } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport { ConnectedOverlayScrollHandler } from '@primevue/core/utils';\nimport Button from 'primevue/button';\nimport ConfirmationEventBus from 'primevue/confirmationeventbus';\nimport FocusTrap from 'primevue/focustrap';\nimport OverlayEventBus from 'primevue/overlayeventbus';\nimport Portal from 'primevue/portal';\nimport BaseConfirmPopup from './BaseConfirmPopup.vue';\n\nexport default {\n name: 'ConfirmPopup',\n extends: BaseConfirmPopup,\n inheritAttrs: false,\n data() {\n return {\n visible: false,\n confirmation: null,\n autoFocusAccept: null,\n autoFocusReject: null,\n target: null\n };\n },\n target: null,\n outsideClickListener: null,\n scrollHandler: null,\n resizeListener: null,\n container: null,\n confirmListener: null,\n closeListener: null,\n mounted() {\n this.confirmListener = (options) => {\n if (!options) {\n return;\n }\n\n if (options.group === this.group) {\n this.confirmation = options;\n this.target = options.target;\n\n if (this.confirmation.onShow) {\n this.confirmation.onShow();\n }\n\n this.visible = true;\n }\n };\n\n this.closeListener = () => {\n this.visible = false;\n this.confirmation = null;\n };\n\n ConfirmationEventBus.on('confirm', this.confirmListener);\n ConfirmationEventBus.on('close', this.closeListener);\n },\n beforeUnmount() {\n ConfirmationEventBus.off('confirm', this.confirmListener);\n ConfirmationEventBus.off('close', this.closeListener);\n\n this.unbindOutsideClickListener();\n\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n\n this.unbindResizeListener();\n\n if (this.container) {\n ZIndex.clear(this.container);\n this.container = null;\n }\n\n this.target = null;\n this.confirmation = null;\n },\n methods: {\n accept() {\n if (this.confirmation.accept) {\n this.confirmation.accept();\n }\n\n this.visible = false;\n },\n reject() {\n if (this.confirmation.reject) {\n this.confirmation.reject();\n }\n\n this.visible = false;\n },\n onHide() {\n if (this.confirmation.onHide) {\n this.confirmation.onHide();\n }\n\n this.visible = false;\n },\n onAcceptKeydown(event) {\n if (event.code === 'Space' || event.code === 'Enter' || event.code === 'NumpadEnter') {\n this.accept();\n focus(this.target);\n event.preventDefault();\n }\n },\n onRejectKeydown(event) {\n if (event.code === 'Space' || event.code === 'Enter' || event.code === 'NumpadEnter') {\n this.reject();\n focus(this.target);\n event.preventDefault();\n }\n },\n onEnter(el) {\n this.autoFocusAccept = this.confirmation.defaultFocus === undefined || this.confirmation.defaultFocus === 'accept' ? true : false;\n this.autoFocusReject = this.confirmation.defaultFocus === 'reject' ? true : false;\n\n this.target = this.target || document.activeElement;\n\n this.bindOutsideClickListener();\n this.bindScrollListener();\n this.bindResizeListener();\n\n ZIndex.set('overlay', el, this.$primevue.config.zIndex.overlay);\n },\n onAfterEnter() {\n this.focus();\n },\n onLeave() {\n this.autoFocusAccept = null;\n this.autoFocusReject = null;\n\n focus(this.target);\n this.target = null;\n\n this.unbindOutsideClickListener();\n this.unbindScrollListener();\n this.unbindResizeListener();\n },\n onAfterLeave(el) {\n ZIndex.clear(el);\n },\n alignOverlay() {\n absolutePosition(this.container, this.target, false);\n\n const containerOffset = getOffset(this.container);\n const targetOffset = getOffset(this.target);\n let arrowLeft = 0;\n\n if (containerOffset.left < targetOffset.left) {\n arrowLeft = targetOffset.left - containerOffset.left;\n }\n\n this.container.style.setProperty($dt('confirmpopup.arrow.left').name, `${arrowLeft}px`);\n\n if (containerOffset.top < targetOffset.top) {\n this.container.setAttribute('data-p-confirmpopup-flipped', 'true');\n !this.isUnstyled && addClass(this.container, 'p-confirmpopup-flipped');\n }\n },\n bindOutsideClickListener() {\n if (!this.outsideClickListener) {\n this.outsideClickListener = (event) => {\n if (this.visible && this.container && !this.container.contains(event.target) && !this.isTargetClicked(event)) {\n if (this.confirmation.onHide) {\n this.confirmation.onHide();\n }\n\n this.visible = false;\n } else {\n this.alignOverlay();\n }\n };\n\n document.addEventListener('click', this.outsideClickListener);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener);\n this.outsideClickListener = null;\n }\n },\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.target, () => {\n if (this.visible) {\n this.visible = false;\n }\n });\n }\n\n this.scrollHandler.bindScrollListener();\n },\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n },\n bindResizeListener() {\n if (!this.resizeListener) {\n this.resizeListener = () => {\n if (this.visible && !isTouchDevice()) {\n this.visible = false;\n }\n };\n\n window.addEventListener('resize', this.resizeListener);\n }\n },\n unbindResizeListener() {\n if (this.resizeListener) {\n window.removeEventListener('resize', this.resizeListener);\n this.resizeListener = null;\n }\n },\n focus() {\n let focusTarget = this.container.querySelector('[autofocus]');\n\n if (focusTarget) {\n focusTarget.focus({ preventScroll: true }); // Firefox requires preventScroll\n }\n },\n isTargetClicked(event) {\n return this.target && (this.target === event.target || this.target.contains(event.target));\n },\n containerRef(el) {\n this.container = el;\n },\n onOverlayClick(event) {\n OverlayEventBus.emit('overlay-click', {\n originalEvent: event,\n target: this.target\n });\n },\n onOverlayKeydown(event) {\n if (event.code === 'Escape') {\n ConfirmationEventBus.emit('close', this.closeListener);\n focus(this.target);\n }\n }\n },\n computed: {\n message() {\n return this.confirmation ? this.confirmation.message : null;\n },\n acceptLabel() {\n if (this.confirmation) {\n const confirmation = this.confirmation;\n\n return confirmation.acceptLabel || confirmation.acceptProps?.label || this.$primevue.config.locale.accept;\n }\n\n return this.$primevue.config.locale.accept;\n },\n rejectLabel() {\n if (this.confirmation) {\n const confirmation = this.confirmation;\n\n return confirmation.rejectLabel || confirmation.rejectProps?.label || this.$primevue.config.locale.reject;\n }\n\n return this.$primevue.config.locale.reject;\n },\n acceptIcon() {\n return this.confirmation ? this.confirmation.acceptIcon : this.confirmation?.acceptProps ? this.confirmation.acceptProps.icon : null;\n },\n rejectIcon() {\n return this.confirmation ? this.confirmation.rejectIcon : this.confirmation?.rejectProps ? this.confirmation.rejectProps.icon : null;\n }\n },\n components: {\n Button,\n Portal\n },\n directives: {\n focustrap: FocusTrap\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","group","String","style","ConfirmPopupStyle","provide","$pcConfirmPopup","$parentInstance","BaseConfirmPopup","inheritAttrs","data","visible","confirmation","autoFocusAccept","autoFocusReject","target","outsideClickListener","scrollHandler","resizeListener","container","confirmListener","closeListener","mounted","_this","options","onShow","ConfirmationEventBus","on","beforeUnmount","off","unbindOutsideClickListener","destroy","unbindResizeListener","ZIndex","clear","methods","accept","reject","onHide","onAcceptKeydown","event","code","focus","preventDefault","onRejectKeydown","onEnter","el","defaultFocus","undefined","document","activeElement","bindOutsideClickListener","bindScrollListener","bindResizeListener","set","$primevue","config","zIndex","overlay","onAfterEnter","onLeave","unbindScrollListener","onAfterLeave","alignOverlay","absolutePosition","containerOffset","getOffset","targetOffset","arrowLeft","left","setProperty","$dt","concat","top","setAttribute","isUnstyled","addClass","_this2","contains","isTargetClicked","addEventListener","removeEventListener","_this3","ConnectedOverlayScrollHandler","_this4","isTouchDevice","window","focusTarget","querySelector","preventScroll","containerRef","onOverlayClick","OverlayEventBus","emit","originalEvent","onOverlayKeydown","computed","message","acceptLabel","_confirmation$acceptP","acceptProps","label","locale","rejectLabel","_confirmation$rejectP","rejectProps","acceptIcon","_this$confirmation","icon","rejectIcon","_this$confirmation2","components","Button","Portal","directives","focustrap","FocusTrap","_createBlock","_component_Portal","_createVNode","_Transition","_mergeProps","$options","_ctx","ptm","_$data$confirmation$r","_$data$confirmation$r2","_$data$confirmation$a","$data","_withDirectives","_openBlock","_createElementBlock","ref","role","cx","onClick","apply","arguments","onKeydown","ptmi","$slots","_renderSlot","acceptCallback","rejectCallback","_Fragment","key","_resolveDynamicComponent","_createElementVNode","_toDisplayString","_component_Button","rejectClass","autofocus","unstyled","size","text","pt","rejecticon","fn","_withCtx","iconProps","acceptClass","accepticon"],"mappings":"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"}
|
package/datatable/BodyCell.vue
CHANGED
|
@@ -72,7 +72,9 @@
|
|
|
72
72
|
v-bind="getColumnPT('rowToggleButton')"
|
|
73
73
|
data-pc-group-section="rowactionbutton"
|
|
74
74
|
>
|
|
75
|
-
<component v-if="column.children && column.children.
|
|
75
|
+
<component v-if="column.children && column.children.rowtoggleicon" :is="column.children.rowtoggleicon" :class="cx('rowToggleIcon')" :rowExpanded="isRowExpanded" />
|
|
76
|
+
<!-- TODO: Deprecated since v4.0-->
|
|
77
|
+
<component v-else-if="column.children && column.children.rowtogglericon" :is="column.children.rowtogglericon" :class="cx('rowToggleIcon')" :rowExpanded="isRowExpanded" />
|
|
76
78
|
<template v-else>
|
|
77
79
|
<span v-if="isRowExpanded && expandedRowIcon" :class="[cx('rowToggleIcon'), expandedRowIcon]" />
|
|
78
80
|
<ChevronDownIcon v-else-if="isRowExpanded && !expandedRowIcon" :class="cx('rowToggleIcon')" v-bind="getColumnPT('rowToggleIcon')" />
|
package/datatable/BodyRow.vue
CHANGED
|
@@ -350,6 +350,8 @@ export default {
|
|
|
350
350
|
let nextRowFieldData = currentRowFieldData;
|
|
351
351
|
let groupRowSpan = 0;
|
|
352
352
|
|
|
353
|
+
if (this.d_rowExpanded) groupRowSpan++;
|
|
354
|
+
|
|
353
355
|
while (currentRowFieldData === nextRowFieldData) {
|
|
354
356
|
groupRowSpan++;
|
|
355
357
|
let nextRowData = this.value[++index];
|
package/datatable/index.d.ts
CHANGED
|
@@ -913,7 +913,7 @@ export interface DataTableProps<T = any> {
|
|
|
913
913
|
* Position of the paginator, options are 'top','bottom' or 'both'.
|
|
914
914
|
* @defaultValue bottom
|
|
915
915
|
*/
|
|
916
|
-
paginatorPosition?: 'top' | 'bottom' | 'both' | undefined;
|
|
916
|
+
paginatorPosition?: HintedString<'top' | 'bottom' | 'both'> | undefined;
|
|
917
917
|
/**
|
|
918
918
|
* Whether to show it even there is only one page.
|
|
919
919
|
* @defaultValue true
|
|
@@ -995,7 +995,7 @@ export interface DataTableProps<T = any> {
|
|
|
995
995
|
* Defines whether sorting works on single column or on multiple columns.
|
|
996
996
|
* @defaultValue single
|
|
997
997
|
*/
|
|
998
|
-
sortMode?: 'single' | 'multiple' | undefined;
|
|
998
|
+
sortMode?: HintedString<'single' | 'multiple'> | undefined;
|
|
999
999
|
/**
|
|
1000
1000
|
* When enabled, columns can have an un-sorted state.
|
|
1001
1001
|
* @defaultValue false
|
|
@@ -1009,7 +1009,7 @@ export interface DataTableProps<T = any> {
|
|
|
1009
1009
|
/**
|
|
1010
1010
|
* Layout of the filter elements.
|
|
1011
1011
|
*/
|
|
1012
|
-
filterDisplay?: 'menu' | 'row' | undefined;
|
|
1012
|
+
filterDisplay?: HintedString<'menu' | 'row'> | undefined;
|
|
1013
1013
|
/**
|
|
1014
1014
|
* An array of fields as string or function to use in global filtering.
|
|
1015
1015
|
*/
|
|
@@ -1025,12 +1025,12 @@ export interface DataTableProps<T = any> {
|
|
|
1025
1025
|
/**
|
|
1026
1026
|
* Specifies the selection mode.
|
|
1027
1027
|
*/
|
|
1028
|
-
selectionMode?: 'single' | 'multiple' | undefined;
|
|
1028
|
+
selectionMode?: HintedString<'single' | 'multiple'> | undefined;
|
|
1029
1029
|
/**
|
|
1030
1030
|
* Algorithm to define if a row is selected.
|
|
1031
1031
|
* @defaultValue deepEquals
|
|
1032
1032
|
*/
|
|
1033
|
-
compareSelectionBy?: 'equals' | 'deepEquals' | undefined;
|
|
1033
|
+
compareSelectionBy?: HintedString<'equals' | 'deepEquals'> | undefined;
|
|
1034
1034
|
/**
|
|
1035
1035
|
* Defines whether metaKey is requred or not for the selection. When true metaKey needs to be pressed to select or unselect an item and
|
|
1036
1036
|
* when set to false selection of each item can be toggled individually. On touch enabled devices, metaKeySelection is turned off automatically.
|
|
@@ -1078,7 +1078,7 @@ export interface DataTableProps<T = any> {
|
|
|
1078
1078
|
* Defines whether the overall table width.
|
|
1079
1079
|
* @defaultValue fit
|
|
1080
1080
|
*/
|
|
1081
|
-
columnResizeMode?: 'fit' | 'expand' | undefined;
|
|
1081
|
+
columnResizeMode?: HintedString<'fit' | 'expand'> | undefined;
|
|
1082
1082
|
/**
|
|
1083
1083
|
* When enabled, columns can be reordered using drag and drop.
|
|
1084
1084
|
* @defaultValue false
|
|
@@ -1099,7 +1099,7 @@ export interface DataTableProps<T = any> {
|
|
|
1099
1099
|
/**
|
|
1100
1100
|
* Defines the row group mode.
|
|
1101
1101
|
*/
|
|
1102
|
-
rowGroupMode?: 'subheader' | 'rowspan' | undefined;
|
|
1102
|
+
rowGroupMode?: HintedString<'subheader' | 'rowspan'> | undefined;
|
|
1103
1103
|
/**
|
|
1104
1104
|
* One or more field names to use in row grouping.
|
|
1105
1105
|
*/
|
|
@@ -1117,7 +1117,7 @@ export interface DataTableProps<T = any> {
|
|
|
1117
1117
|
* Defines where a stateful table keeps its state.
|
|
1118
1118
|
* @defaultValue session
|
|
1119
1119
|
*/
|
|
1120
|
-
stateStorage?: 'session' | 'local' | undefined;
|
|
1120
|
+
stateStorage?: HintedString<'session' | 'local'> | undefined;
|
|
1121
1121
|
/**
|
|
1122
1122
|
* Unique identifier of a stateful table to use in state storage.
|
|
1123
1123
|
*/
|
|
@@ -1125,7 +1125,7 @@ export interface DataTableProps<T = any> {
|
|
|
1125
1125
|
/**
|
|
1126
1126
|
* Defines the incell editing mode.
|
|
1127
1127
|
*/
|
|
1128
|
-
editMode?: 'cell' | 'row' | undefined;
|
|
1128
|
+
editMode?: HintedString<'cell' | 'row'> | undefined;
|
|
1129
1129
|
/**
|
|
1130
1130
|
* A collection of rows to represent the current editing data in row edit mode.
|
|
1131
1131
|
*/
|
|
@@ -1187,7 +1187,7 @@ export interface DataTableProps<T = any> {
|
|
|
1187
1187
|
/**
|
|
1188
1188
|
* Defines the size of the table.
|
|
1189
1189
|
*/
|
|
1190
|
-
size?: 'small' | 'large' | undefined;
|
|
1190
|
+
size?: HintedString<'small' | 'large'> | undefined;
|
|
1191
1191
|
/**
|
|
1192
1192
|
* Inline style of the table element.
|
|
1193
1193
|
*/
|
package/datatable/index.mjs
CHANGED
|
@@ -1161,12 +1161,16 @@ function render$a(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
1161
1161
|
})
|
|
1162
1162
|
}, $options.getColumnPT('rowToggleButton'), {
|
|
1163
1163
|
"data-pc-group-section": "rowactionbutton"
|
|
1164
|
-
}), [$props.column.children && $props.column.children.
|
|
1164
|
+
}), [$props.column.children && $props.column.children.rowtoggleicon ? (openBlock(), createBlock(resolveDynamicComponent($props.column.children.rowtoggleicon), {
|
|
1165
1165
|
key: 0,
|
|
1166
1166
|
"class": normalizeClass(_ctx.cx('rowToggleIcon')),
|
|
1167
1167
|
rowExpanded: $props.isRowExpanded
|
|
1168
|
+
}, null, 8, ["class", "rowExpanded"])) : $props.column.children && $props.column.children.rowtogglericon ? (openBlock(), createBlock(resolveDynamicComponent($props.column.children.rowtogglericon), {
|
|
1169
|
+
key: 1,
|
|
1170
|
+
"class": normalizeClass(_ctx.cx('rowToggleIcon')),
|
|
1171
|
+
rowExpanded: $props.isRowExpanded
|
|
1168
1172
|
}, null, 8, ["class", "rowExpanded"])) : (openBlock(), createElementBlock(Fragment, {
|
|
1169
|
-
key:
|
|
1173
|
+
key: 2
|
|
1170
1174
|
}, [$props.isRowExpanded && $props.expandedRowIcon ? (openBlock(), createElementBlock("span", {
|
|
1171
1175
|
key: 0,
|
|
1172
1176
|
"class": normalizeClass([_ctx.cx('rowToggleIcon'), $props.expandedRowIcon])
|
|
@@ -1470,6 +1474,7 @@ var script$9 = {
|
|
|
1470
1474
|
var currentRowFieldData = resolveFieldData(this.value[index], field);
|
|
1471
1475
|
var nextRowFieldData = currentRowFieldData;
|
|
1472
1476
|
var groupRowSpan = 0;
|
|
1477
|
+
if (this.d_rowExpanded) groupRowSpan++;
|
|
1473
1478
|
while (currentRowFieldData === nextRowFieldData) {
|
|
1474
1479
|
groupRowSpan++;
|
|
1475
1480
|
var nextRowData = this.value[++index];
|