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.
Files changed (176) hide show
  1. package/accordionheader/AccordionHeader.vue +8 -2
  2. package/accordionheader/index.mjs +8 -1
  3. package/accordionheader/index.mjs.map +1 -1
  4. package/autocomplete/AutoComplete.vue +16 -6
  5. package/autocomplete/index.d.ts +3 -3
  6. package/autocomplete/index.mjs +17 -4
  7. package/autocomplete/index.mjs.map +1 -1
  8. package/avatar/Avatar.vue +13 -4
  9. package/avatar/index.d.ts +3 -3
  10. package/avatar/index.mjs +26 -6
  11. package/avatar/index.mjs.map +1 -1
  12. package/badge/Badge.vue +13 -2
  13. package/badge/index.d.ts +1 -1
  14. package/badge/index.mjs +18 -3
  15. package/badge/index.mjs.map +1 -1
  16. package/blockui/BlockUI.vue +15 -4
  17. package/blockui/index.mjs +13 -4
  18. package/blockui/index.mjs.map +1 -1
  19. package/button/Button.vue +30 -3
  20. package/button/index.d.ts +3 -7
  21. package/button/index.mjs +28 -9
  22. package/button/index.mjs.map +1 -1
  23. package/cascadeselect/index.d.ts +2 -2
  24. package/checkbox/Checkbox.vue +14 -4
  25. package/checkbox/index.d.ts +2 -2
  26. package/checkbox/index.mjs +27 -6
  27. package/checkbox/index.mjs.map +1 -1
  28. package/chip/Chip.vue +9 -1
  29. package/chip/index.mjs +12 -2
  30. package/chip/index.mjs.map +1 -1
  31. package/colorpicker/ColorPicker.vue +10 -2
  32. package/colorpicker/index.d.ts +1 -1
  33. package/colorpicker/index.mjs +9 -2
  34. package/colorpicker/index.mjs.map +1 -1
  35. package/column/index.d.ts +3 -3
  36. package/columngroup/index.d.ts +2 -2
  37. package/confirmationoptions/index.d.ts +1 -1
  38. package/confirmpopup/ConfirmPopup.vue +2 -2
  39. package/confirmpopup/index.mjs +2 -2
  40. package/confirmpopup/index.mjs.map +1 -1
  41. package/datatable/BodyCell.vue +3 -1
  42. package/datatable/BodyRow.vue +2 -0
  43. package/datatable/index.d.ts +10 -10
  44. package/datatable/index.mjs +7 -2
  45. package/datatable/index.mjs.map +1 -1
  46. package/dataview/index.d.ts +3 -3
  47. package/datepicker/DatePicker.vue +1 -3
  48. package/datepicker/index.d.ts +6 -6
  49. package/datepicker/index.mjs +21 -24
  50. package/datepicker/index.mjs.map +1 -1
  51. package/dialog/Dialog.vue +48 -39
  52. package/dialog/index.d.ts +26 -1
  53. package/dialog/index.mjs +73 -50
  54. package/dialog/index.mjs.map +1 -1
  55. package/divider/Divider.vue +13 -3
  56. package/divider/index.d.ts +4 -4
  57. package/divider/index.mjs +18 -5
  58. package/divider/index.mjs.map +1 -1
  59. package/dock/index.d.ts +4 -4
  60. package/drawer/index.d.ts +2 -2
  61. package/fieldset/Fieldset.vue +8 -2
  62. package/fieldset/index.mjs +20 -10
  63. package/fieldset/index.mjs.map +1 -1
  64. package/fileupload/index.d.ts +2 -2
  65. package/floatlabel/index.d.ts +2 -2
  66. package/galleria/GalleriaItem.vue +8 -9
  67. package/galleria/index.d.ts +3 -3
  68. package/galleria/index.mjs +8 -8
  69. package/galleria/index.mjs.map +1 -1
  70. package/inputchips/index.d.ts +2 -2
  71. package/inputmask/InputMask.vue +15 -1
  72. package/inputmask/index.d.ts +3 -3
  73. package/inputmask/index.mjs +12 -1
  74. package/inputmask/index.mjs.map +1 -1
  75. package/inputnumber/InputNumber.vue +28 -6
  76. package/inputnumber/index.d.ts +6 -6
  77. package/inputnumber/index.mjs +43 -19
  78. package/inputnumber/index.mjs.map +1 -1
  79. package/inputotp/index.d.ts +3 -3
  80. package/inputtext/InputText.vue +10 -1
  81. package/inputtext/index.d.ts +3 -3
  82. package/inputtext/index.mjs +14 -1
  83. package/inputtext/index.mjs.map +1 -1
  84. package/knob/Knob.vue +1 -1
  85. package/knob/index.mjs +1 -1
  86. package/knob/index.mjs.map +1 -1
  87. package/megamenu/index.d.ts +2 -2
  88. package/message/Message.vue +16 -7
  89. package/message/index.d.ts +2 -2
  90. package/message/index.mjs +35 -13
  91. package/message/index.mjs.map +1 -1
  92. package/multiselect/MultiSelect.vue +5 -1
  93. package/multiselect/index.d.ts +3 -3
  94. package/multiselect/index.mjs +4 -1
  95. package/multiselect/index.mjs.map +1 -1
  96. package/organizationchart/index.d.ts +2 -2
  97. package/overlaybadge/index.d.ts +1 -1
  98. package/package.json +3 -3
  99. package/panel/Panel.vue +29 -22
  100. package/panel/index.d.ts +22 -2
  101. package/panel/index.mjs +55 -31
  102. package/panel/index.mjs.map +1 -1
  103. package/password/index.d.ts +2 -2
  104. package/popover/Popover.vue +2 -2
  105. package/popover/index.mjs +2 -2
  106. package/popover/index.mjs.map +1 -1
  107. package/progressbar/ProgressBar.vue +11 -4
  108. package/progressbar/index.mjs +24 -6
  109. package/progressbar/index.mjs.map +1 -1
  110. package/radiobutton/RadioButton.vue +13 -3
  111. package/radiobutton/index.d.ts +3 -3
  112. package/radiobutton/index.mjs +24 -4
  113. package/radiobutton/index.mjs.map +1 -1
  114. package/rating/Rating.vue +19 -2
  115. package/rating/index.mjs +28 -7
  116. package/rating/index.mjs.map +1 -1
  117. package/scrolltop/index.d.ts +2 -2
  118. package/select/Select.vue +8 -4
  119. package/select/index.d.ts +2 -2
  120. package/select/index.mjs +9 -5
  121. package/select/index.mjs.map +1 -1
  122. package/selectbutton/SelectButton.vue +26 -9
  123. package/selectbutton/index.d.ts +2 -2
  124. package/selectbutton/index.mjs +30 -10
  125. package/selectbutton/index.mjs.map +1 -1
  126. package/skeleton/Skeleton.vue +7 -1
  127. package/skeleton/index.d.ts +3 -3
  128. package/skeleton/index.mjs +12 -1
  129. package/skeleton/index.mjs.map +1 -1
  130. package/slider/Slider.vue +11 -2
  131. package/slider/index.d.ts +2 -2
  132. package/slider/index.mjs +27 -8
  133. package/slider/index.mjs.map +1 -1
  134. package/speeddial/index.d.ts +5 -5
  135. package/splitbutton/index.d.ts +1 -1
  136. package/splitter/index.d.ts +3 -3
  137. package/stepper/index.d.ts +4 -0
  138. package/tab/Tab.vue +8 -2
  139. package/tab/index.mjs +9 -1
  140. package/tab/index.mjs.map +1 -1
  141. package/tablist/TabList.vue +10 -2
  142. package/tablist/index.mjs +20 -8
  143. package/tablist/index.mjs.map +1 -1
  144. package/tag/Tag.vue +11 -2
  145. package/tag/index.mjs +17 -3
  146. package/tag/index.mjs.map +1 -1
  147. package/textarea/Textarea.vue +10 -1
  148. package/textarea/index.d.ts +3 -3
  149. package/textarea/index.mjs +14 -1
  150. package/textarea/index.mjs.map +1 -1
  151. package/timeline/Timeline.vue +16 -7
  152. package/timeline/index.d.ts +3 -3
  153. package/timeline/index.mjs +42 -11
  154. package/timeline/index.mjs.map +1 -1
  155. package/toast/Toast.vue +10 -1
  156. package/toast/ToastMessage.vue +29 -19
  157. package/toast/index.d.ts +2 -2
  158. package/toast/index.mjs +77 -38
  159. package/toast/index.mjs.map +1 -1
  160. package/togglebutton/ToggleButton.vue +10 -1
  161. package/togglebutton/index.d.ts +3 -3
  162. package/togglebutton/index.mjs +19 -4
  163. package/togglebutton/index.mjs.map +1 -1
  164. package/toggleswitch/ToggleSwitch.vue +11 -3
  165. package/toggleswitch/index.mjs +20 -5
  166. package/toggleswitch/index.mjs.map +1 -1
  167. package/tooltip/index.mjs +0 -6
  168. package/tooltip/index.mjs.map +1 -1
  169. package/tree/index.d.ts +3 -3
  170. package/treeselect/index.d.ts +6 -6
  171. package/treetable/index.d.ts +7 -7
  172. package/treetable/style/index.mjs +2 -3
  173. package/treetable/style/index.mjs.map +1 -1
  174. package/umd/primevue.min.js +1 -1
  175. package/virtualscroller/index.d.ts +2 -2
  176. 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":"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"}
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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"}
@@ -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.rowtogglericon" :is="column.children.rowtogglericon" :class="cx('rowToggleIcon')" :rowExpanded="isRowExpanded" />
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')" />
@@ -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];
@@ -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
  */
@@ -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.rowtogglericon ? (openBlock(), createBlock(resolveDynamicComponent($props.column.children.rowtogglericon), {
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: 1
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];