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/dialog/BaseDialog.vue","../../src/dialog/Dialog.vue","../../src/dialog/Dialog.vue?vue&type=template&id=c33631f6&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport DialogStyle from 'primevue/dialog/style';\n\nexport default {\n name: 'BaseDialog',\n extends: BaseComponent,\n props: {\n header: {\n type: null,\n default: null\n },\n footer: {\n type: null,\n default: null\n },\n visible: {\n type: Boolean,\n default: false\n },\n modal: {\n type: Boolean,\n default: null\n },\n contentStyle: {\n type: null,\n default: null\n },\n contentClass: {\n type: String,\n default: null\n },\n contentProps: {\n type: null,\n default: null\n },\n maximizable: {\n type: Boolean,\n default: false\n },\n dismissableMask: {\n type: Boolean,\n default: false\n },\n closable: {\n type: Boolean,\n default: true\n },\n closeOnEscape: {\n type: Boolean,\n default: true\n },\n showHeader: {\n type: Boolean,\n default: true\n },\n blockScroll: {\n type: Boolean,\n default: false\n },\n baseZIndex: {\n type: Number,\n default: 0\n },\n autoZIndex: {\n type: Boolean,\n default: true\n },\n position: {\n type: String,\n default: 'center'\n },\n breakpoints: {\n type: Object,\n default: null\n },\n draggable: {\n type: Boolean,\n default: true\n },\n keepInViewport: {\n type: Boolean,\n default: true\n },\n minX: {\n type: Number,\n default: 0\n },\n minY: {\n type: Number,\n default: 0\n },\n appendTo: {\n type: [String, Object],\n default: 'body'\n },\n closeIcon: {\n type: String,\n default: undefined\n },\n maximizeIcon: {\n type: String,\n default: undefined\n },\n minimizeIcon: {\n type: String,\n default: undefined\n },\n closeButtonProps: {\n type: Object,\n default: () => {\n return {\n severity: 'secondary',\n text: true,\n rounded: true\n };\n }\n },\n maximizeButtonProps: {\n type: Object,\n default: () => {\n return {\n severity: 'secondary',\n text: true,\n rounded: true\n };\n }\n },\n _instance: null\n },\n style: DialogStyle,\n provide() {\n return {\n $pcDialog: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <Portal :appendTo=\"appendTo\">\n <div v-if=\"containerVisible\" :ref=\"maskRef\" :class=\"cx('mask')\" :style=\"sx('mask', true, { position, modal })\" @mousedown=\"onMaskMouseDown\" @mouseup=\"onMaskMouseUp\" v-bind=\"ptm('mask')\">\n <transition name=\"p-dialog\" @enter=\"onEnter\" @after-enter=\"onAfterEnter\" @before-leave=\"onBeforeLeave\" @leave=\"onLeave\" @after-leave=\"onAfterLeave\" appear v-bind=\"ptm('transition')\">\n <div v-if=\"visible\" :ref=\"containerRef\" v-focustrap=\"{ disabled: !modal }\" :class=\"cx('root')\" :style=\"sx('root')\" role=\"dialog\" :aria-labelledby=\"ariaLabelledById\" :aria-modal=\"modal\" v-bind=\"ptmi('root')\">\n <slot v-if=\"$slots.container\" name=\"container\" :closeCallback=\"close\" :maximizeCallback=\"(event) => maximize(event)\"></slot>\n <template v-else>\n <div v-if=\"showHeader\" :ref=\"headerContainerRef\" :class=\"cx('header')\" @mousedown=\"initDrag\" v-bind=\"ptm('header')\">\n <slot name=\"header\" :class=\"cx('title')\">\n <span v-if=\"header\" :id=\"ariaLabelledById\" :class=\"cx('title')\" v-bind=\"ptm('title')\">{{ header }}</span>\n </slot>\n <div :class=\"cx('headerActions')\" v-bind=\"ptm('headerActions')\">\n <Button\n v-if=\"maximizable\"\n :ref=\"maximizableRef\"\n :autofocus=\"focusableMax\"\n :class=\"cx('pcMaximizeButton')\"\n @click=\"maximize\"\n :tabindex=\"maximizable ? '0' : '-1'\"\n :unstyled=\"unstyled\"\n v-bind=\"maximizeButtonProps\"\n :pt=\"ptm('pcMaximizeButton')\"\n data-pc-group-section=\"headericon\"\n >\n <template #icon=\"slotProps\">\n <slot name=\"maximizeicon\" :maximized=\"maximized\">\n <component :is=\"maximizeIconComponent\" :class=\"[slotProps.class, maximized ? minimizeIcon : maximizeIcon]\" v-bind=\"ptm('pcMaximizeButton')['icon']\" />\n </slot>\n </template>\n </Button>\n <Button\n v-if=\"closable\"\n :ref=\"closeButtonRef\"\n :autofocus=\"focusableClose\"\n :class=\"cx('pcCloseButton')\"\n @click=\"close\"\n :aria-label=\"closeAriaLabel\"\n :unstyled=\"unstyled\"\n v-bind=\"closeButtonProps\"\n :pt=\"ptm('pcCloseButton')\"\n data-pc-group-section=\"headericon\"\n >\n <template #icon=\"slotProps\">\n <slot name=\"closeicon\">\n <component :is=\"closeIcon ? 'span' : 'TimesIcon'\" :class=\"[closeIcon, slotProps.class]\" v-bind=\"ptm('pcCloseButton')['icon']\"></component>\n </slot>\n </template>\n </Button>\n </div>\n </div>\n <div :ref=\"contentRef\" :class=\"[cx('content'), contentClass]\" :style=\"contentStyle\" v-bind=\"{ ...contentProps, ...ptm('content') }\">\n <slot></slot>\n </div>\n <div v-if=\"footer || $slots.footer\" :ref=\"footerContainerRef\" :class=\"cx('footer')\" v-bind=\"ptm('footer')\">\n <slot name=\"footer\">{{ footer }}</slot>\n </div>\n </template>\n </div>\n </transition>\n </div>\n </Portal>\n</template>\n\n<script>\nimport { addClass, addStyle, focus, getOuterHeight, getOuterWidth, getViewport, setAttribute } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport TimesIcon from '@primevue/icons/times';\nimport WindowMaximizeIcon from '@primevue/icons/windowmaximize';\nimport WindowMinimizeIcon from '@primevue/icons/windowminimize';\nimport Button from 'primevue/button';\nimport FocusTrap from 'primevue/focustrap';\nimport Portal from 'primevue/portal';\nimport Ripple from 'primevue/ripple';\nimport { blockBodyScroll, unblockBodyScroll } from 'primevue/utils';\nimport { computed } from 'vue';\nimport BaseDialog from './BaseDialog.vue';\n\nexport default {\n name: 'Dialog',\n extends: BaseDialog,\n inheritAttrs: false,\n emits: ['update:visible', 'show', 'hide', 'after-hide', 'maximize', 'unmaximize', 'dragstart', 'dragend'],\n provide() {\n return {\n dialogRef: computed(() => this._instance)\n };\n },\n data() {\n return {\n containerVisible: this.visible,\n maximized: false,\n focusableMax: null,\n focusableClose: null,\n target: null\n };\n },\n documentKeydownListener: null,\n container: null,\n mask: null,\n content: null,\n headerContainer: null,\n footerContainer: null,\n maximizableButton: null,\n closeButton: null,\n styleElement: null,\n dragging: null,\n documentDragListener: null,\n documentDragEndListener: null,\n lastPageX: null,\n lastPageY: null,\n maskMouseDownTarget: null,\n updated() {\n if (this.visible) {\n this.containerVisible = this.visible;\n }\n },\n beforeUnmount() {\n this.unbindDocumentState();\n this.unbindGlobalListeners();\n this.destroyStyle();\n\n if (this.mask && this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.container = null;\n this.mask = null;\n },\n mounted() {\n if (this.breakpoints) {\n this.createStyle();\n }\n },\n methods: {\n close() {\n this.$emit('update:visible', false);\n },\n onEnter() {\n this.$emit('show');\n this.target = document.activeElement;\n this.enableDocumentSettings();\n this.bindGlobalListeners();\n\n if (this.autoZIndex) {\n ZIndex.set('modal', this.mask, this.baseZIndex + this.$primevue.config.zIndex.modal);\n }\n },\n onAfterEnter() {\n this.focus();\n },\n onBeforeLeave() {\n if (this.modal) {\n !this.isUnstyled && addClass(this.mask, 'p-overlay-mask-leave');\n }\n\n if (this.dragging && this.documentDragEndListener) {\n this.documentDragEndListener();\n }\n },\n onLeave() {\n this.$emit('hide');\n focus(this.target);\n this.target = null;\n this.focusableClose = null;\n this.focusableMax = null;\n },\n onAfterLeave() {\n if (this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.containerVisible = false;\n this.unbindDocumentState();\n this.unbindGlobalListeners();\n this.$emit('after-hide');\n },\n onMaskMouseDown(event) {\n this.maskMouseDownTarget = event.target;\n },\n onMaskMouseUp() {\n if (this.dismissableMask && this.modal && this.mask === this.maskMouseDownTarget) {\n this.close();\n }\n },\n focus() {\n const findFocusableElement = (container) => {\n return container && container.querySelector('[autofocus]');\n };\n\n let focusTarget = this.$slots.footer && findFocusableElement(this.footerContainer);\n\n if (!focusTarget) {\n focusTarget = this.$slots.header && findFocusableElement(this.headerContainer);\n\n if (!focusTarget) {\n focusTarget = this.$slots.default && findFocusableElement(this.content);\n\n if (!focusTarget) {\n if (this.maximizable) {\n this.focusableMax = true;\n focusTarget = this.maximizableButton;\n } else {\n this.focusableClose = true;\n focusTarget = this.closeButton;\n }\n }\n }\n }\n\n if (focusTarget) {\n focus(focusTarget, { focusVisible: true });\n }\n },\n maximize(event) {\n if (this.maximized) {\n this.maximized = false;\n this.$emit('unmaximize', event);\n } else {\n this.maximized = true;\n this.$emit('maximize', event);\n }\n\n if (!this.modal) {\n this.maximized ? blockBodyScroll() : unblockBodyScroll();\n }\n },\n enableDocumentSettings() {\n if (this.modal || (!this.modal && this.blockScroll) || (this.maximizable && this.maximized)) {\n blockBodyScroll();\n }\n },\n unbindDocumentState() {\n if (this.modal || (!this.modal && this.blockScroll) || (this.maximizable && this.maximized)) {\n unblockBodyScroll();\n }\n },\n onKeyDown(event) {\n if (event.code === 'Escape' && this.closeOnEscape) {\n this.close();\n }\n },\n bindDocumentKeyDownListener() {\n if (!this.documentKeydownListener) {\n this.documentKeydownListener = this.onKeyDown.bind(this);\n window.document.addEventListener('keydown', this.documentKeydownListener);\n }\n },\n unbindDocumentKeyDownListener() {\n if (this.documentKeydownListener) {\n window.document.removeEventListener('keydown', this.documentKeydownListener);\n this.documentKeydownListener = null;\n }\n },\n containerRef(el) {\n this.container = el;\n },\n maskRef(el) {\n this.mask = el;\n },\n contentRef(el) {\n this.content = el;\n },\n headerContainerRef(el) {\n this.headerContainer = el;\n },\n footerContainerRef(el) {\n this.footerContainer = el;\n },\n maximizableRef(el) {\n this.maximizableButton = el ? el.$el : undefined;\n },\n closeButtonRef(el) {\n this.closeButton = el ? el.$el : undefined;\n },\n createStyle() {\n if (!this.styleElement && !this.isUnstyled) {\n this.styleElement = document.createElement('style');\n this.styleElement.type = 'text/css';\n setAttribute(this.styleElement, 'nonce', this.$primevue?.config?.csp?.nonce);\n document.head.appendChild(this.styleElement);\n\n let innerHTML = '';\n\n for (let breakpoint in this.breakpoints) {\n innerHTML += `\n @media screen and (max-width: ${breakpoint}) {\n .p-dialog[${this.$attrSelector}] {\n width: ${this.breakpoints[breakpoint]} !important;\n }\n }\n `;\n }\n\n this.styleElement.innerHTML = innerHTML;\n }\n },\n destroyStyle() {\n if (this.styleElement) {\n document.head.removeChild(this.styleElement);\n this.styleElement = null;\n }\n },\n initDrag(event) {\n if (event.target.closest('div').getAttribute('data-pc-section') === 'headeractions') {\n return;\n }\n\n if (this.draggable) {\n this.dragging = true;\n this.lastPageX = event.pageX;\n this.lastPageY = event.pageY;\n\n this.container.style.margin = '0';\n document.body.setAttribute('data-p-unselectable-text', 'true');\n !this.isUnstyled && addStyle(document.body, { 'user-select': 'none' });\n\n this.$emit('dragstart', event);\n }\n },\n bindGlobalListeners() {\n if (this.draggable) {\n this.bindDocumentDragListener();\n this.bindDocumentDragEndListener();\n }\n\n if (this.closeOnEscape && this.closable) {\n this.bindDocumentKeyDownListener();\n }\n },\n unbindGlobalListeners() {\n this.unbindDocumentDragListener();\n this.unbindDocumentDragEndListener();\n this.unbindDocumentKeyDownListener();\n },\n bindDocumentDragListener() {\n this.documentDragListener = (event) => {\n if (this.dragging) {\n let width = getOuterWidth(this.container);\n let height = getOuterHeight(this.container);\n let deltaX = event.pageX - this.lastPageX;\n let deltaY = event.pageY - this.lastPageY;\n let offset = this.container.getBoundingClientRect();\n let leftPos = offset.left + deltaX;\n let topPos = offset.top + deltaY;\n let viewport = getViewport();\n let containerComputedStyle = getComputedStyle(this.container);\n let marginLeft = parseFloat(containerComputedStyle.marginLeft);\n let marginTop = parseFloat(containerComputedStyle.marginTop);\n\n this.container.style.position = 'fixed';\n\n if (this.keepInViewport) {\n if (leftPos >= this.minX && leftPos + width < viewport.width) {\n this.lastPageX = event.pageX;\n this.container.style.left = leftPos - marginLeft + 'px';\n }\n\n if (topPos >= this.minY && topPos + height < viewport.height) {\n this.lastPageY = event.pageY;\n this.container.style.top = topPos - marginTop + 'px';\n }\n } else {\n this.lastPageX = event.pageX;\n this.container.style.left = leftPos - marginLeft + 'px';\n this.lastPageY = event.pageY;\n this.container.style.top = topPos - marginTop + 'px';\n }\n }\n };\n\n window.document.addEventListener('mousemove', this.documentDragListener);\n },\n unbindDocumentDragListener() {\n if (this.documentDragListener) {\n window.document.removeEventListener('mousemove', this.documentDragListener);\n this.documentDragListener = null;\n }\n },\n bindDocumentDragEndListener() {\n this.documentDragEndListener = (event) => {\n if (this.dragging) {\n this.dragging = false;\n document.body.removeAttribute('data-p-unselectable-text');\n !this.isUnstyled && (document.body.style['user-select'] = '');\n\n this.$emit('dragend', event);\n }\n };\n\n window.document.addEventListener('mouseup', this.documentDragEndListener);\n },\n unbindDocumentDragEndListener() {\n if (this.documentDragEndListener) {\n window.document.removeEventListener('mouseup', this.documentDragEndListener);\n this.documentDragEndListener = null;\n }\n }\n },\n computed: {\n maximizeIconComponent() {\n return this.maximized ? (this.minimizeIcon ? 'span' : 'WindowMinimizeIcon') : this.maximizeIcon ? 'span' : 'WindowMaximizeIcon';\n },\n ariaLabelledById() {\n return this.header != null || this.$attrs['aria-labelledby'] !== null ? this.$id + '_header' : null;\n },\n closeAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.close : undefined;\n }\n },\n directives: {\n ripple: Ripple,\n focustrap: FocusTrap\n },\n components: {\n Button,\n Portal,\n WindowMinimizeIcon,\n WindowMaximizeIcon,\n TimesIcon\n }\n};\n</script>\n","<template>\n <Portal :appendTo=\"appendTo\">\n <div v-if=\"containerVisible\" :ref=\"maskRef\" :class=\"cx('mask')\" :style=\"sx('mask', true, { position, modal })\" @mousedown=\"onMaskMouseDown\" @mouseup=\"onMaskMouseUp\" v-bind=\"ptm('mask')\">\n <transition name=\"p-dialog\" @enter=\"onEnter\" @after-enter=\"onAfterEnter\" @before-leave=\"onBeforeLeave\" @leave=\"onLeave\" @after-leave=\"onAfterLeave\" appear v-bind=\"ptm('transition')\">\n <div v-if=\"visible\" :ref=\"containerRef\" v-focustrap=\"{ disabled: !modal }\" :class=\"cx('root')\" :style=\"sx('root')\" role=\"dialog\" :aria-labelledby=\"ariaLabelledById\" :aria-modal=\"modal\" v-bind=\"ptmi('root')\">\n <slot v-if=\"$slots.container\" name=\"container\" :closeCallback=\"close\" :maximizeCallback=\"(event) => maximize(event)\"></slot>\n <template v-else>\n <div v-if=\"showHeader\" :ref=\"headerContainerRef\" :class=\"cx('header')\" @mousedown=\"initDrag\" v-bind=\"ptm('header')\">\n <slot name=\"header\" :class=\"cx('title')\">\n <span v-if=\"header\" :id=\"ariaLabelledById\" :class=\"cx('title')\" v-bind=\"ptm('title')\">{{ header }}</span>\n </slot>\n <div :class=\"cx('headerActions')\" v-bind=\"ptm('headerActions')\">\n <Button\n v-if=\"maximizable\"\n :ref=\"maximizableRef\"\n :autofocus=\"focusableMax\"\n :class=\"cx('pcMaximizeButton')\"\n @click=\"maximize\"\n :tabindex=\"maximizable ? '0' : '-1'\"\n :unstyled=\"unstyled\"\n v-bind=\"maximizeButtonProps\"\n :pt=\"ptm('pcMaximizeButton')\"\n data-pc-group-section=\"headericon\"\n >\n <template #icon=\"slotProps\">\n <slot name=\"maximizeicon\" :maximized=\"maximized\">\n <component :is=\"maximizeIconComponent\" :class=\"[slotProps.class, maximized ? minimizeIcon : maximizeIcon]\" v-bind=\"ptm('pcMaximizeButton')['icon']\" />\n </slot>\n </template>\n </Button>\n <Button\n v-if=\"closable\"\n :ref=\"closeButtonRef\"\n :autofocus=\"focusableClose\"\n :class=\"cx('pcCloseButton')\"\n @click=\"close\"\n :aria-label=\"closeAriaLabel\"\n :unstyled=\"unstyled\"\n v-bind=\"closeButtonProps\"\n :pt=\"ptm('pcCloseButton')\"\n data-pc-group-section=\"headericon\"\n >\n <template #icon=\"slotProps\">\n <slot name=\"closeicon\">\n <component :is=\"closeIcon ? 'span' : 'TimesIcon'\" :class=\"[closeIcon, slotProps.class]\" v-bind=\"ptm('pcCloseButton')['icon']\"></component>\n </slot>\n </template>\n </Button>\n </div>\n </div>\n <div :ref=\"contentRef\" :class=\"[cx('content'), contentClass]\" :style=\"contentStyle\" v-bind=\"{ ...contentProps, ...ptm('content') }\">\n <slot></slot>\n </div>\n <div v-if=\"footer || $slots.footer\" :ref=\"footerContainerRef\" :class=\"cx('footer')\" v-bind=\"ptm('footer')\">\n <slot name=\"footer\">{{ footer }}</slot>\n </div>\n </template>\n </div>\n </transition>\n </div>\n </Portal>\n</template>\n\n<script>\nimport { addClass, addStyle, focus, getOuterHeight, getOuterWidth, getViewport, setAttribute } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport TimesIcon from '@primevue/icons/times';\nimport WindowMaximizeIcon from '@primevue/icons/windowmaximize';\nimport WindowMinimizeIcon from '@primevue/icons/windowminimize';\nimport Button from 'primevue/button';\nimport FocusTrap from 'primevue/focustrap';\nimport Portal from 'primevue/portal';\nimport Ripple from 'primevue/ripple';\nimport { blockBodyScroll, unblockBodyScroll } from 'primevue/utils';\nimport { computed } from 'vue';\nimport BaseDialog from './BaseDialog.vue';\n\nexport default {\n name: 'Dialog',\n extends: BaseDialog,\n inheritAttrs: false,\n emits: ['update:visible', 'show', 'hide', 'after-hide', 'maximize', 'unmaximize', 'dragstart', 'dragend'],\n provide() {\n return {\n dialogRef: computed(() => this._instance)\n };\n },\n data() {\n return {\n containerVisible: this.visible,\n maximized: false,\n focusableMax: null,\n focusableClose: null,\n target: null\n };\n },\n documentKeydownListener: null,\n container: null,\n mask: null,\n content: null,\n headerContainer: null,\n footerContainer: null,\n maximizableButton: null,\n closeButton: null,\n styleElement: null,\n dragging: null,\n documentDragListener: null,\n documentDragEndListener: null,\n lastPageX: null,\n lastPageY: null,\n maskMouseDownTarget: null,\n updated() {\n if (this.visible) {\n this.containerVisible = this.visible;\n }\n },\n beforeUnmount() {\n this.unbindDocumentState();\n this.unbindGlobalListeners();\n this.destroyStyle();\n\n if (this.mask && this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.container = null;\n this.mask = null;\n },\n mounted() {\n if (this.breakpoints) {\n this.createStyle();\n }\n },\n methods: {\n close() {\n this.$emit('update:visible', false);\n },\n onEnter() {\n this.$emit('show');\n this.target = document.activeElement;\n this.enableDocumentSettings();\n this.bindGlobalListeners();\n\n if (this.autoZIndex) {\n ZIndex.set('modal', this.mask, this.baseZIndex + this.$primevue.config.zIndex.modal);\n }\n },\n onAfterEnter() {\n this.focus();\n },\n onBeforeLeave() {\n if (this.modal) {\n !this.isUnstyled && addClass(this.mask, 'p-overlay-mask-leave');\n }\n\n if (this.dragging && this.documentDragEndListener) {\n this.documentDragEndListener();\n }\n },\n onLeave() {\n this.$emit('hide');\n focus(this.target);\n this.target = null;\n this.focusableClose = null;\n this.focusableMax = null;\n },\n onAfterLeave() {\n if (this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.containerVisible = false;\n this.unbindDocumentState();\n this.unbindGlobalListeners();\n this.$emit('after-hide');\n },\n onMaskMouseDown(event) {\n this.maskMouseDownTarget = event.target;\n },\n onMaskMouseUp() {\n if (this.dismissableMask && this.modal && this.mask === this.maskMouseDownTarget) {\n this.close();\n }\n },\n focus() {\n const findFocusableElement = (container) => {\n return container && container.querySelector('[autofocus]');\n };\n\n let focusTarget = this.$slots.footer && findFocusableElement(this.footerContainer);\n\n if (!focusTarget) {\n focusTarget = this.$slots.header && findFocusableElement(this.headerContainer);\n\n if (!focusTarget) {\n focusTarget = this.$slots.default && findFocusableElement(this.content);\n\n if (!focusTarget) {\n if (this.maximizable) {\n this.focusableMax = true;\n focusTarget = this.maximizableButton;\n } else {\n this.focusableClose = true;\n focusTarget = this.closeButton;\n }\n }\n }\n }\n\n if (focusTarget) {\n focus(focusTarget, { focusVisible: true });\n }\n },\n maximize(event) {\n if (this.maximized) {\n this.maximized = false;\n this.$emit('unmaximize', event);\n } else {\n this.maximized = true;\n this.$emit('maximize', event);\n }\n\n if (!this.modal) {\n this.maximized ? blockBodyScroll() : unblockBodyScroll();\n }\n },\n enableDocumentSettings() {\n if (this.modal || (!this.modal && this.blockScroll) || (this.maximizable && this.maximized)) {\n blockBodyScroll();\n }\n },\n unbindDocumentState() {\n if (this.modal || (!this.modal && this.blockScroll) || (this.maximizable && this.maximized)) {\n unblockBodyScroll();\n }\n },\n onKeyDown(event) {\n if (event.code === 'Escape' && this.closeOnEscape) {\n this.close();\n }\n },\n bindDocumentKeyDownListener() {\n if (!this.documentKeydownListener) {\n this.documentKeydownListener = this.onKeyDown.bind(this);\n window.document.addEventListener('keydown', this.documentKeydownListener);\n }\n },\n unbindDocumentKeyDownListener() {\n if (this.documentKeydownListener) {\n window.document.removeEventListener('keydown', this.documentKeydownListener);\n this.documentKeydownListener = null;\n }\n },\n containerRef(el) {\n this.container = el;\n },\n maskRef(el) {\n this.mask = el;\n },\n contentRef(el) {\n this.content = el;\n },\n headerContainerRef(el) {\n this.headerContainer = el;\n },\n footerContainerRef(el) {\n this.footerContainer = el;\n },\n maximizableRef(el) {\n this.maximizableButton = el ? el.$el : undefined;\n },\n closeButtonRef(el) {\n this.closeButton = el ? el.$el : undefined;\n },\n createStyle() {\n if (!this.styleElement && !this.isUnstyled) {\n this.styleElement = document.createElement('style');\n this.styleElement.type = 'text/css';\n setAttribute(this.styleElement, 'nonce', this.$primevue?.config?.csp?.nonce);\n document.head.appendChild(this.styleElement);\n\n let innerHTML = '';\n\n for (let breakpoint in this.breakpoints) {\n innerHTML += `\n @media screen and (max-width: ${breakpoint}) {\n .p-dialog[${this.$attrSelector}] {\n width: ${this.breakpoints[breakpoint]} !important;\n }\n }\n `;\n }\n\n this.styleElement.innerHTML = innerHTML;\n }\n },\n destroyStyle() {\n if (this.styleElement) {\n document.head.removeChild(this.styleElement);\n this.styleElement = null;\n }\n },\n initDrag(event) {\n if (event.target.closest('div').getAttribute('data-pc-section') === 'headeractions') {\n return;\n }\n\n if (this.draggable) {\n this.dragging = true;\n this.lastPageX = event.pageX;\n this.lastPageY = event.pageY;\n\n this.container.style.margin = '0';\n document.body.setAttribute('data-p-unselectable-text', 'true');\n !this.isUnstyled && addStyle(document.body, { 'user-select': 'none' });\n\n this.$emit('dragstart', event);\n }\n },\n bindGlobalListeners() {\n if (this.draggable) {\n this.bindDocumentDragListener();\n this.bindDocumentDragEndListener();\n }\n\n if (this.closeOnEscape && this.closable) {\n this.bindDocumentKeyDownListener();\n }\n },\n unbindGlobalListeners() {\n this.unbindDocumentDragListener();\n this.unbindDocumentDragEndListener();\n this.unbindDocumentKeyDownListener();\n },\n bindDocumentDragListener() {\n this.documentDragListener = (event) => {\n if (this.dragging) {\n let width = getOuterWidth(this.container);\n let height = getOuterHeight(this.container);\n let deltaX = event.pageX - this.lastPageX;\n let deltaY = event.pageY - this.lastPageY;\n let offset = this.container.getBoundingClientRect();\n let leftPos = offset.left + deltaX;\n let topPos = offset.top + deltaY;\n let viewport = getViewport();\n let containerComputedStyle = getComputedStyle(this.container);\n let marginLeft = parseFloat(containerComputedStyle.marginLeft);\n let marginTop = parseFloat(containerComputedStyle.marginTop);\n\n this.container.style.position = 'fixed';\n\n if (this.keepInViewport) {\n if (leftPos >= this.minX && leftPos + width < viewport.width) {\n this.lastPageX = event.pageX;\n this.container.style.left = leftPos - marginLeft + 'px';\n }\n\n if (topPos >= this.minY && topPos + height < viewport.height) {\n this.lastPageY = event.pageY;\n this.container.style.top = topPos - marginTop + 'px';\n }\n } else {\n this.lastPageX = event.pageX;\n this.container.style.left = leftPos - marginLeft + 'px';\n this.lastPageY = event.pageY;\n this.container.style.top = topPos - marginTop + 'px';\n }\n }\n };\n\n window.document.addEventListener('mousemove', this.documentDragListener);\n },\n unbindDocumentDragListener() {\n if (this.documentDragListener) {\n window.document.removeEventListener('mousemove', this.documentDragListener);\n this.documentDragListener = null;\n }\n },\n bindDocumentDragEndListener() {\n this.documentDragEndListener = (event) => {\n if (this.dragging) {\n this.dragging = false;\n document.body.removeAttribute('data-p-unselectable-text');\n !this.isUnstyled && (document.body.style['user-select'] = '');\n\n this.$emit('dragend', event);\n }\n };\n\n window.document.addEventListener('mouseup', this.documentDragEndListener);\n },\n unbindDocumentDragEndListener() {\n if (this.documentDragEndListener) {\n window.document.removeEventListener('mouseup', this.documentDragEndListener);\n this.documentDragEndListener = null;\n }\n }\n },\n computed: {\n maximizeIconComponent() {\n return this.maximized ? (this.minimizeIcon ? 'span' : 'WindowMinimizeIcon') : this.maximizeIcon ? 'span' : 'WindowMaximizeIcon';\n },\n ariaLabelledById() {\n return this.header != null || this.$attrs['aria-labelledby'] !== null ? this.$id + '_header' : null;\n },\n closeAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.close : undefined;\n }\n },\n directives: {\n ripple: Ripple,\n focustrap: FocusTrap\n },\n components: {\n Button,\n Portal,\n WindowMinimizeIcon,\n WindowMaximizeIcon,\n TimesIcon\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","header","type","footer","visible","Boolean","modal","contentStyle","contentClass","String","contentProps","maximizable","dismissableMask","closable","closeOnEscape","showHeader","blockScroll","baseZIndex","Number","autoZIndex","position","breakpoints","Object","draggable","keepInViewport","minX","minY","appendTo","closeIcon","undefined","maximizeIcon","minimizeIcon","closeButtonProps","default","severity","text","rounded","maximizeButtonProps","_instance","style","DialogStyle","provide","$pcDialog","$parentInstance","BaseDialog","inheritAttrs","emits","_this","dialogRef","computed","data","containerVisible","maximized","focusableMax","focusableClose","target","documentKeydownListener","container","mask","content","headerContainer","footerContainer","maximizableButton","closeButton","styleElement","dragging","documentDragListener","documentDragEndListener","lastPageX","lastPageY","maskMouseDownTarget","updated","beforeUnmount","unbindDocumentState","unbindGlobalListeners","destroyStyle","ZIndex","clear","mounted","createStyle","methods","close","$emit","onEnter","document","activeElement","enableDocumentSettings","bindGlobalListeners","set","$primevue","config","zIndex","onAfterEnter","focus","onBeforeLeave","isUnstyled","addClass","onLeave","onAfterLeave","onMaskMouseDown","event","onMaskMouseUp","findFocusableElement","querySelector","focusTarget","$slots","focusVisible","maximize","blockBodyScroll","unblockBodyScroll","onKeyDown","code","bindDocumentKeyDownListener","bind","window","addEventListener","unbindDocumentKeyDownListener","removeEventListener","containerRef","el","maskRef","contentRef","headerContainerRef","footerContainerRef","maximizableRef","$el","closeButtonRef","_this$$primevue","createElement","setAttribute","csp","nonce","head","appendChild","innerHTML","breakpoint","concat","$attrSelector","removeChild","initDrag","closest","getAttribute","pageX","pageY","margin","body","addStyle","bindDocumentDragListener","bindDocumentDragEndListener","unbindDocumentDragListener","unbindDocumentDragEndListener","_this2","width","getOuterWidth","height","getOuterHeight","deltaX","deltaY","offset","getBoundingClientRect","leftPos","left","topPos","top","viewport","getViewport","containerComputedStyle","getComputedStyle","marginLeft","parseFloat","marginTop","_this3","removeAttribute","maximizeIconComponent","ariaLabelledById","$attrs","$id","closeAriaLabel","locale","aria","directives","ripple","Ripple","focustrap","FocusTrap","components","Button","Portal","WindowMinimizeIcon","WindowMaximizeIcon","TimesIcon","_createBlock","_component_Portal","_ctx","$data","_openBlock","_createElementBlock","_mergeProps","ref","$options","cx","sx","onMousedown","apply","arguments","onMouseup","ptm","_createVNode","_Transition","appear","_withDirectives","role","ptmi","_renderSlot","closeCallback","maximizeCallback","_Fragment","key","id","_createElementVNode","_component_Button","autofocus","onClick","tabindex","unstyled","pt","icon","_withCtx","slotProps","_resolveDynamicComponent","_objectSpread"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/dialog/BaseDialog.vue","../../src/dialog/Dialog.vue","../../src/dialog/Dialog.vue?vue&type=template&id=f940dd5e&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport DialogStyle from 'primevue/dialog/style';\n\nexport default {\n name: 'BaseDialog',\n extends: BaseComponent,\n props: {\n header: {\n type: null,\n default: null\n },\n footer: {\n type: null,\n default: null\n },\n visible: {\n type: Boolean,\n default: false\n },\n modal: {\n type: Boolean,\n default: null\n },\n contentStyle: {\n type: null,\n default: null\n },\n contentClass: {\n type: String,\n default: null\n },\n contentProps: {\n type: null,\n default: null\n },\n maximizable: {\n type: Boolean,\n default: false\n },\n dismissableMask: {\n type: Boolean,\n default: false\n },\n closable: {\n type: Boolean,\n default: true\n },\n closeOnEscape: {\n type: Boolean,\n default: true\n },\n showHeader: {\n type: Boolean,\n default: true\n },\n blockScroll: {\n type: Boolean,\n default: false\n },\n baseZIndex: {\n type: Number,\n default: 0\n },\n autoZIndex: {\n type: Boolean,\n default: true\n },\n position: {\n type: String,\n default: 'center'\n },\n breakpoints: {\n type: Object,\n default: null\n },\n draggable: {\n type: Boolean,\n default: true\n },\n keepInViewport: {\n type: Boolean,\n default: true\n },\n minX: {\n type: Number,\n default: 0\n },\n minY: {\n type: Number,\n default: 0\n },\n appendTo: {\n type: [String, Object],\n default: 'body'\n },\n closeIcon: {\n type: String,\n default: undefined\n },\n maximizeIcon: {\n type: String,\n default: undefined\n },\n minimizeIcon: {\n type: String,\n default: undefined\n },\n closeButtonProps: {\n type: Object,\n default: () => {\n return {\n severity: 'secondary',\n text: true,\n rounded: true\n };\n }\n },\n maximizeButtonProps: {\n type: Object,\n default: () => {\n return {\n severity: 'secondary',\n text: true,\n rounded: true\n };\n }\n },\n _instance: null\n },\n style: DialogStyle,\n provide() {\n return {\n $pcDialog: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <Portal :appendTo=\"appendTo\">\n <div v-if=\"containerVisible\" :ref=\"maskRef\" :class=\"cx('mask')\" :style=\"sx('mask', true, { position, modal })\" @mousedown=\"onMaskMouseDown\" @mouseup=\"onMaskMouseUp\" :data-p=\"dataP\" v-bind=\"ptm('mask')\">\n <transition name=\"p-dialog\" @enter=\"onEnter\" @after-enter=\"onAfterEnter\" @before-leave=\"onBeforeLeave\" @leave=\"onLeave\" @after-leave=\"onAfterLeave\" appear v-bind=\"ptm('transition')\">\n <div v-if=\"visible\" :ref=\"containerRef\" v-focustrap=\"{ disabled: !modal }\" :class=\"cx('root')\" :style=\"sx('root')\" role=\"dialog\" :aria-labelledby=\"ariaLabelledById\" :aria-modal=\"modal\" :data-p=\"dataP\" v-bind=\"ptmi('root')\">\n <slot v-if=\"$slots.container\" name=\"container\" :closeCallback=\"close\" :maximizeCallback=\"(event) => maximize(event)\"></slot>\n <template v-else>\n <div v-if=\"showHeader\" :ref=\"headerContainerRef\" :class=\"cx('header')\" @mousedown=\"initDrag\" v-bind=\"ptm('header')\">\n <slot name=\"header\" :class=\"cx('title')\">\n <span v-if=\"header\" :id=\"ariaLabelledById\" :class=\"cx('title')\" v-bind=\"ptm('title')\">{{ header }}</span>\n </slot>\n <div :class=\"cx('headerActions')\" v-bind=\"ptm('headerActions')\">\n <slot v-if=\"maximizable\" name=\"maximizebutton\" :maximized=\"maximized\" :maximizeCallback=\"(event) => maximize(event)\">\n <Button\n :ref=\"maximizableRef\"\n :autofocus=\"focusableMax\"\n :class=\"cx('pcMaximizeButton')\"\n @click=\"maximize\"\n :tabindex=\"maximizable ? '0' : '-1'\"\n :unstyled=\"unstyled\"\n v-bind=\"maximizeButtonProps\"\n :pt=\"ptm('pcMaximizeButton')\"\n data-pc-group-section=\"headericon\"\n >\n <template #icon=\"slotProps\">\n <slot name=\"maximizeicon\" :maximized=\"maximized\">\n <component :is=\"maximizeIconComponent\" :class=\"[slotProps.class, maximized ? minimizeIcon : maximizeIcon]\" v-bind=\"ptm('pcMaximizeButton')['icon']\" />\n </slot>\n </template>\n </Button>\n </slot>\n <slot v-if=\"closable\" name=\"closebutton\" :closeCallback=\"close\">\n <Button\n :ref=\"closeButtonRef\"\n :autofocus=\"focusableClose\"\n :class=\"cx('pcCloseButton')\"\n @click=\"close\"\n :aria-label=\"closeAriaLabel\"\n :unstyled=\"unstyled\"\n v-bind=\"closeButtonProps\"\n :pt=\"ptm('pcCloseButton')\"\n data-pc-group-section=\"headericon\"\n >\n <template #icon=\"slotProps\">\n <slot name=\"closeicon\">\n <component :is=\"closeIcon ? 'span' : 'TimesIcon'\" :class=\"[closeIcon, slotProps.class]\" v-bind=\"ptm('pcCloseButton')['icon']\"></component>\n </slot>\n </template>\n </Button>\n </slot>\n </div>\n </div>\n <div :ref=\"contentRef\" :class=\"[cx('content'), contentClass]\" :style=\"contentStyle\" :data-p=\"dataP\" v-bind=\"{ ...contentProps, ...ptm('content') }\">\n <slot></slot>\n </div>\n <div v-if=\"footer || $slots.footer\" :ref=\"footerContainerRef\" :class=\"cx('footer')\" v-bind=\"ptm('footer')\">\n <slot name=\"footer\">{{ footer }}</slot>\n </div>\n </template>\n </div>\n </transition>\n </div>\n </Portal>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { addClass, addStyle, focus, getOuterHeight, getOuterWidth, getViewport, setAttribute } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport TimesIcon from '@primevue/icons/times';\nimport WindowMaximizeIcon from '@primevue/icons/windowmaximize';\nimport WindowMinimizeIcon from '@primevue/icons/windowminimize';\nimport Button from 'primevue/button';\nimport FocusTrap from 'primevue/focustrap';\nimport Portal from 'primevue/portal';\nimport Ripple from 'primevue/ripple';\nimport { blockBodyScroll, unblockBodyScroll } from 'primevue/utils';\nimport { computed } from 'vue';\nimport BaseDialog from './BaseDialog.vue';\n\nexport default {\n name: 'Dialog',\n extends: BaseDialog,\n inheritAttrs: false,\n emits: ['update:visible', 'show', 'hide', 'after-hide', 'maximize', 'unmaximize', 'dragstart', 'dragend'],\n provide() {\n return {\n dialogRef: computed(() => this._instance)\n };\n },\n data() {\n return {\n containerVisible: this.visible,\n maximized: false,\n focusableMax: null,\n focusableClose: null,\n target: null\n };\n },\n documentKeydownListener: null,\n container: null,\n mask: null,\n content: null,\n headerContainer: null,\n footerContainer: null,\n maximizableButton: null,\n closeButton: null,\n styleElement: null,\n dragging: null,\n documentDragListener: null,\n documentDragEndListener: null,\n lastPageX: null,\n lastPageY: null,\n maskMouseDownTarget: null,\n updated() {\n if (this.visible) {\n this.containerVisible = this.visible;\n }\n },\n beforeUnmount() {\n this.unbindDocumentState();\n this.unbindGlobalListeners();\n this.destroyStyle();\n\n if (this.mask && this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.container = null;\n this.mask = null;\n },\n mounted() {\n if (this.breakpoints) {\n this.createStyle();\n }\n },\n methods: {\n close() {\n this.$emit('update:visible', false);\n },\n onEnter() {\n this.$emit('show');\n this.target = document.activeElement;\n this.enableDocumentSettings();\n this.bindGlobalListeners();\n\n if (this.autoZIndex) {\n ZIndex.set('modal', this.mask, this.baseZIndex + this.$primevue.config.zIndex.modal);\n }\n },\n onAfterEnter() {\n this.focus();\n },\n onBeforeLeave() {\n if (this.modal) {\n !this.isUnstyled && addClass(this.mask, 'p-overlay-mask-leave');\n }\n\n if (this.dragging && this.documentDragEndListener) {\n this.documentDragEndListener();\n }\n },\n onLeave() {\n this.$emit('hide');\n focus(this.target);\n this.target = null;\n this.focusableClose = null;\n this.focusableMax = null;\n },\n onAfterLeave() {\n if (this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.containerVisible = false;\n this.unbindDocumentState();\n this.unbindGlobalListeners();\n this.$emit('after-hide');\n },\n onMaskMouseDown(event) {\n this.maskMouseDownTarget = event.target;\n },\n onMaskMouseUp() {\n if (this.dismissableMask && this.modal && this.mask === this.maskMouseDownTarget) {\n this.close();\n }\n },\n focus() {\n const findFocusableElement = (container) => {\n return container && container.querySelector('[autofocus]');\n };\n\n let focusTarget = this.$slots.footer && findFocusableElement(this.footerContainer);\n\n if (!focusTarget) {\n focusTarget = this.$slots.header && findFocusableElement(this.headerContainer);\n\n if (!focusTarget) {\n focusTarget = this.$slots.default && findFocusableElement(this.content);\n\n if (!focusTarget) {\n if (this.maximizable) {\n this.focusableMax = true;\n focusTarget = this.maximizableButton;\n } else {\n this.focusableClose = true;\n focusTarget = this.closeButton;\n }\n }\n }\n }\n\n if (focusTarget) {\n focus(focusTarget, { focusVisible: true });\n }\n },\n maximize(event) {\n if (this.maximized) {\n this.maximized = false;\n this.$emit('unmaximize', event);\n } else {\n this.maximized = true;\n this.$emit('maximize', event);\n }\n\n if (!this.modal) {\n this.maximized ? blockBodyScroll() : unblockBodyScroll();\n }\n },\n enableDocumentSettings() {\n if (this.modal || (!this.modal && this.blockScroll) || (this.maximizable && this.maximized)) {\n blockBodyScroll();\n }\n },\n unbindDocumentState() {\n if (this.modal || (!this.modal && this.blockScroll) || (this.maximizable && this.maximized)) {\n unblockBodyScroll();\n }\n },\n onKeyDown(event) {\n if (event.code === 'Escape' && this.closeOnEscape) {\n this.close();\n }\n },\n bindDocumentKeyDownListener() {\n if (!this.documentKeydownListener) {\n this.documentKeydownListener = this.onKeyDown.bind(this);\n window.document.addEventListener('keydown', this.documentKeydownListener);\n }\n },\n unbindDocumentKeyDownListener() {\n if (this.documentKeydownListener) {\n window.document.removeEventListener('keydown', this.documentKeydownListener);\n this.documentKeydownListener = null;\n }\n },\n containerRef(el) {\n this.container = el;\n },\n maskRef(el) {\n this.mask = el;\n },\n contentRef(el) {\n this.content = el;\n },\n headerContainerRef(el) {\n this.headerContainer = el;\n },\n footerContainerRef(el) {\n this.footerContainer = el;\n },\n maximizableRef(el) {\n this.maximizableButton = el ? el.$el : undefined;\n },\n closeButtonRef(el) {\n this.closeButton = el ? el.$el : undefined;\n },\n createStyle() {\n if (!this.styleElement && !this.isUnstyled) {\n this.styleElement = document.createElement('style');\n this.styleElement.type = 'text/css';\n setAttribute(this.styleElement, 'nonce', this.$primevue?.config?.csp?.nonce);\n document.head.appendChild(this.styleElement);\n\n let innerHTML = '';\n\n for (let breakpoint in this.breakpoints) {\n innerHTML += `\n @media screen and (max-width: ${breakpoint}) {\n .p-dialog[${this.$attrSelector}] {\n width: ${this.breakpoints[breakpoint]} !important;\n }\n }\n `;\n }\n\n this.styleElement.innerHTML = innerHTML;\n }\n },\n destroyStyle() {\n if (this.styleElement) {\n document.head.removeChild(this.styleElement);\n this.styleElement = null;\n }\n },\n initDrag(event) {\n if (event.target.closest('div').getAttribute('data-pc-section') === 'headeractions') {\n return;\n }\n\n if (this.draggable) {\n this.dragging = true;\n this.lastPageX = event.pageX;\n this.lastPageY = event.pageY;\n\n this.container.style.margin = '0';\n document.body.setAttribute('data-p-unselectable-text', 'true');\n !this.isUnstyled && addStyle(document.body, { 'user-select': 'none' });\n\n this.$emit('dragstart', event);\n }\n },\n bindGlobalListeners() {\n if (this.draggable) {\n this.bindDocumentDragListener();\n this.bindDocumentDragEndListener();\n }\n\n if (this.closeOnEscape && this.closable) {\n this.bindDocumentKeyDownListener();\n }\n },\n unbindGlobalListeners() {\n this.unbindDocumentDragListener();\n this.unbindDocumentDragEndListener();\n this.unbindDocumentKeyDownListener();\n },\n bindDocumentDragListener() {\n this.documentDragListener = (event) => {\n if (this.dragging) {\n let width = getOuterWidth(this.container);\n let height = getOuterHeight(this.container);\n let deltaX = event.pageX - this.lastPageX;\n let deltaY = event.pageY - this.lastPageY;\n let offset = this.container.getBoundingClientRect();\n let leftPos = offset.left + deltaX;\n let topPos = offset.top + deltaY;\n let viewport = getViewport();\n let containerComputedStyle = getComputedStyle(this.container);\n let marginLeft = parseFloat(containerComputedStyle.marginLeft);\n let marginTop = parseFloat(containerComputedStyle.marginTop);\n\n this.container.style.position = 'fixed';\n\n if (this.keepInViewport) {\n if (leftPos >= this.minX && leftPos + width < viewport.width) {\n this.lastPageX = event.pageX;\n this.container.style.left = leftPos - marginLeft + 'px';\n }\n\n if (topPos >= this.minY && topPos + height < viewport.height) {\n this.lastPageY = event.pageY;\n this.container.style.top = topPos - marginTop + 'px';\n }\n } else {\n this.lastPageX = event.pageX;\n this.container.style.left = leftPos - marginLeft + 'px';\n this.lastPageY = event.pageY;\n this.container.style.top = topPos - marginTop + 'px';\n }\n }\n };\n\n window.document.addEventListener('mousemove', this.documentDragListener);\n },\n unbindDocumentDragListener() {\n if (this.documentDragListener) {\n window.document.removeEventListener('mousemove', this.documentDragListener);\n this.documentDragListener = null;\n }\n },\n bindDocumentDragEndListener() {\n this.documentDragEndListener = (event) => {\n if (this.dragging) {\n this.dragging = false;\n document.body.removeAttribute('data-p-unselectable-text');\n !this.isUnstyled && (document.body.style['user-select'] = '');\n\n this.$emit('dragend', event);\n }\n };\n\n window.document.addEventListener('mouseup', this.documentDragEndListener);\n },\n unbindDocumentDragEndListener() {\n if (this.documentDragEndListener) {\n window.document.removeEventListener('mouseup', this.documentDragEndListener);\n this.documentDragEndListener = null;\n }\n }\n },\n computed: {\n maximizeIconComponent() {\n return this.maximized ? (this.minimizeIcon ? 'span' : 'WindowMinimizeIcon') : this.maximizeIcon ? 'span' : 'WindowMaximizeIcon';\n },\n ariaLabelledById() {\n return this.header != null || this.$attrs['aria-labelledby'] !== null ? this.$id + '_header' : null;\n },\n closeAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.close : undefined;\n },\n dataP() {\n return cn({\n maximized: this.maximized,\n modal: this.modal\n });\n }\n },\n directives: {\n ripple: Ripple,\n focustrap: FocusTrap\n },\n components: {\n Button,\n Portal,\n WindowMinimizeIcon,\n WindowMaximizeIcon,\n TimesIcon\n }\n};\n</script>\n","<template>\n <Portal :appendTo=\"appendTo\">\n <div v-if=\"containerVisible\" :ref=\"maskRef\" :class=\"cx('mask')\" :style=\"sx('mask', true, { position, modal })\" @mousedown=\"onMaskMouseDown\" @mouseup=\"onMaskMouseUp\" :data-p=\"dataP\" v-bind=\"ptm('mask')\">\n <transition name=\"p-dialog\" @enter=\"onEnter\" @after-enter=\"onAfterEnter\" @before-leave=\"onBeforeLeave\" @leave=\"onLeave\" @after-leave=\"onAfterLeave\" appear v-bind=\"ptm('transition')\">\n <div v-if=\"visible\" :ref=\"containerRef\" v-focustrap=\"{ disabled: !modal }\" :class=\"cx('root')\" :style=\"sx('root')\" role=\"dialog\" :aria-labelledby=\"ariaLabelledById\" :aria-modal=\"modal\" :data-p=\"dataP\" v-bind=\"ptmi('root')\">\n <slot v-if=\"$slots.container\" name=\"container\" :closeCallback=\"close\" :maximizeCallback=\"(event) => maximize(event)\"></slot>\n <template v-else>\n <div v-if=\"showHeader\" :ref=\"headerContainerRef\" :class=\"cx('header')\" @mousedown=\"initDrag\" v-bind=\"ptm('header')\">\n <slot name=\"header\" :class=\"cx('title')\">\n <span v-if=\"header\" :id=\"ariaLabelledById\" :class=\"cx('title')\" v-bind=\"ptm('title')\">{{ header }}</span>\n </slot>\n <div :class=\"cx('headerActions')\" v-bind=\"ptm('headerActions')\">\n <slot v-if=\"maximizable\" name=\"maximizebutton\" :maximized=\"maximized\" :maximizeCallback=\"(event) => maximize(event)\">\n <Button\n :ref=\"maximizableRef\"\n :autofocus=\"focusableMax\"\n :class=\"cx('pcMaximizeButton')\"\n @click=\"maximize\"\n :tabindex=\"maximizable ? '0' : '-1'\"\n :unstyled=\"unstyled\"\n v-bind=\"maximizeButtonProps\"\n :pt=\"ptm('pcMaximizeButton')\"\n data-pc-group-section=\"headericon\"\n >\n <template #icon=\"slotProps\">\n <slot name=\"maximizeicon\" :maximized=\"maximized\">\n <component :is=\"maximizeIconComponent\" :class=\"[slotProps.class, maximized ? minimizeIcon : maximizeIcon]\" v-bind=\"ptm('pcMaximizeButton')['icon']\" />\n </slot>\n </template>\n </Button>\n </slot>\n <slot v-if=\"closable\" name=\"closebutton\" :closeCallback=\"close\">\n <Button\n :ref=\"closeButtonRef\"\n :autofocus=\"focusableClose\"\n :class=\"cx('pcCloseButton')\"\n @click=\"close\"\n :aria-label=\"closeAriaLabel\"\n :unstyled=\"unstyled\"\n v-bind=\"closeButtonProps\"\n :pt=\"ptm('pcCloseButton')\"\n data-pc-group-section=\"headericon\"\n >\n <template #icon=\"slotProps\">\n <slot name=\"closeicon\">\n <component :is=\"closeIcon ? 'span' : 'TimesIcon'\" :class=\"[closeIcon, slotProps.class]\" v-bind=\"ptm('pcCloseButton')['icon']\"></component>\n </slot>\n </template>\n </Button>\n </slot>\n </div>\n </div>\n <div :ref=\"contentRef\" :class=\"[cx('content'), contentClass]\" :style=\"contentStyle\" :data-p=\"dataP\" v-bind=\"{ ...contentProps, ...ptm('content') }\">\n <slot></slot>\n </div>\n <div v-if=\"footer || $slots.footer\" :ref=\"footerContainerRef\" :class=\"cx('footer')\" v-bind=\"ptm('footer')\">\n <slot name=\"footer\">{{ footer }}</slot>\n </div>\n </template>\n </div>\n </transition>\n </div>\n </Portal>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { addClass, addStyle, focus, getOuterHeight, getOuterWidth, getViewport, setAttribute } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport TimesIcon from '@primevue/icons/times';\nimport WindowMaximizeIcon from '@primevue/icons/windowmaximize';\nimport WindowMinimizeIcon from '@primevue/icons/windowminimize';\nimport Button from 'primevue/button';\nimport FocusTrap from 'primevue/focustrap';\nimport Portal from 'primevue/portal';\nimport Ripple from 'primevue/ripple';\nimport { blockBodyScroll, unblockBodyScroll } from 'primevue/utils';\nimport { computed } from 'vue';\nimport BaseDialog from './BaseDialog.vue';\n\nexport default {\n name: 'Dialog',\n extends: BaseDialog,\n inheritAttrs: false,\n emits: ['update:visible', 'show', 'hide', 'after-hide', 'maximize', 'unmaximize', 'dragstart', 'dragend'],\n provide() {\n return {\n dialogRef: computed(() => this._instance)\n };\n },\n data() {\n return {\n containerVisible: this.visible,\n maximized: false,\n focusableMax: null,\n focusableClose: null,\n target: null\n };\n },\n documentKeydownListener: null,\n container: null,\n mask: null,\n content: null,\n headerContainer: null,\n footerContainer: null,\n maximizableButton: null,\n closeButton: null,\n styleElement: null,\n dragging: null,\n documentDragListener: null,\n documentDragEndListener: null,\n lastPageX: null,\n lastPageY: null,\n maskMouseDownTarget: null,\n updated() {\n if (this.visible) {\n this.containerVisible = this.visible;\n }\n },\n beforeUnmount() {\n this.unbindDocumentState();\n this.unbindGlobalListeners();\n this.destroyStyle();\n\n if (this.mask && this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.container = null;\n this.mask = null;\n },\n mounted() {\n if (this.breakpoints) {\n this.createStyle();\n }\n },\n methods: {\n close() {\n this.$emit('update:visible', false);\n },\n onEnter() {\n this.$emit('show');\n this.target = document.activeElement;\n this.enableDocumentSettings();\n this.bindGlobalListeners();\n\n if (this.autoZIndex) {\n ZIndex.set('modal', this.mask, this.baseZIndex + this.$primevue.config.zIndex.modal);\n }\n },\n onAfterEnter() {\n this.focus();\n },\n onBeforeLeave() {\n if (this.modal) {\n !this.isUnstyled && addClass(this.mask, 'p-overlay-mask-leave');\n }\n\n if (this.dragging && this.documentDragEndListener) {\n this.documentDragEndListener();\n }\n },\n onLeave() {\n this.$emit('hide');\n focus(this.target);\n this.target = null;\n this.focusableClose = null;\n this.focusableMax = null;\n },\n onAfterLeave() {\n if (this.autoZIndex) {\n ZIndex.clear(this.mask);\n }\n\n this.containerVisible = false;\n this.unbindDocumentState();\n this.unbindGlobalListeners();\n this.$emit('after-hide');\n },\n onMaskMouseDown(event) {\n this.maskMouseDownTarget = event.target;\n },\n onMaskMouseUp() {\n if (this.dismissableMask && this.modal && this.mask === this.maskMouseDownTarget) {\n this.close();\n }\n },\n focus() {\n const findFocusableElement = (container) => {\n return container && container.querySelector('[autofocus]');\n };\n\n let focusTarget = this.$slots.footer && findFocusableElement(this.footerContainer);\n\n if (!focusTarget) {\n focusTarget = this.$slots.header && findFocusableElement(this.headerContainer);\n\n if (!focusTarget) {\n focusTarget = this.$slots.default && findFocusableElement(this.content);\n\n if (!focusTarget) {\n if (this.maximizable) {\n this.focusableMax = true;\n focusTarget = this.maximizableButton;\n } else {\n this.focusableClose = true;\n focusTarget = this.closeButton;\n }\n }\n }\n }\n\n if (focusTarget) {\n focus(focusTarget, { focusVisible: true });\n }\n },\n maximize(event) {\n if (this.maximized) {\n this.maximized = false;\n this.$emit('unmaximize', event);\n } else {\n this.maximized = true;\n this.$emit('maximize', event);\n }\n\n if (!this.modal) {\n this.maximized ? blockBodyScroll() : unblockBodyScroll();\n }\n },\n enableDocumentSettings() {\n if (this.modal || (!this.modal && this.blockScroll) || (this.maximizable && this.maximized)) {\n blockBodyScroll();\n }\n },\n unbindDocumentState() {\n if (this.modal || (!this.modal && this.blockScroll) || (this.maximizable && this.maximized)) {\n unblockBodyScroll();\n }\n },\n onKeyDown(event) {\n if (event.code === 'Escape' && this.closeOnEscape) {\n this.close();\n }\n },\n bindDocumentKeyDownListener() {\n if (!this.documentKeydownListener) {\n this.documentKeydownListener = this.onKeyDown.bind(this);\n window.document.addEventListener('keydown', this.documentKeydownListener);\n }\n },\n unbindDocumentKeyDownListener() {\n if (this.documentKeydownListener) {\n window.document.removeEventListener('keydown', this.documentKeydownListener);\n this.documentKeydownListener = null;\n }\n },\n containerRef(el) {\n this.container = el;\n },\n maskRef(el) {\n this.mask = el;\n },\n contentRef(el) {\n this.content = el;\n },\n headerContainerRef(el) {\n this.headerContainer = el;\n },\n footerContainerRef(el) {\n this.footerContainer = el;\n },\n maximizableRef(el) {\n this.maximizableButton = el ? el.$el : undefined;\n },\n closeButtonRef(el) {\n this.closeButton = el ? el.$el : undefined;\n },\n createStyle() {\n if (!this.styleElement && !this.isUnstyled) {\n this.styleElement = document.createElement('style');\n this.styleElement.type = 'text/css';\n setAttribute(this.styleElement, 'nonce', this.$primevue?.config?.csp?.nonce);\n document.head.appendChild(this.styleElement);\n\n let innerHTML = '';\n\n for (let breakpoint in this.breakpoints) {\n innerHTML += `\n @media screen and (max-width: ${breakpoint}) {\n .p-dialog[${this.$attrSelector}] {\n width: ${this.breakpoints[breakpoint]} !important;\n }\n }\n `;\n }\n\n this.styleElement.innerHTML = innerHTML;\n }\n },\n destroyStyle() {\n if (this.styleElement) {\n document.head.removeChild(this.styleElement);\n this.styleElement = null;\n }\n },\n initDrag(event) {\n if (event.target.closest('div').getAttribute('data-pc-section') === 'headeractions') {\n return;\n }\n\n if (this.draggable) {\n this.dragging = true;\n this.lastPageX = event.pageX;\n this.lastPageY = event.pageY;\n\n this.container.style.margin = '0';\n document.body.setAttribute('data-p-unselectable-text', 'true');\n !this.isUnstyled && addStyle(document.body, { 'user-select': 'none' });\n\n this.$emit('dragstart', event);\n }\n },\n bindGlobalListeners() {\n if (this.draggable) {\n this.bindDocumentDragListener();\n this.bindDocumentDragEndListener();\n }\n\n if (this.closeOnEscape && this.closable) {\n this.bindDocumentKeyDownListener();\n }\n },\n unbindGlobalListeners() {\n this.unbindDocumentDragListener();\n this.unbindDocumentDragEndListener();\n this.unbindDocumentKeyDownListener();\n },\n bindDocumentDragListener() {\n this.documentDragListener = (event) => {\n if (this.dragging) {\n let width = getOuterWidth(this.container);\n let height = getOuterHeight(this.container);\n let deltaX = event.pageX - this.lastPageX;\n let deltaY = event.pageY - this.lastPageY;\n let offset = this.container.getBoundingClientRect();\n let leftPos = offset.left + deltaX;\n let topPos = offset.top + deltaY;\n let viewport = getViewport();\n let containerComputedStyle = getComputedStyle(this.container);\n let marginLeft = parseFloat(containerComputedStyle.marginLeft);\n let marginTop = parseFloat(containerComputedStyle.marginTop);\n\n this.container.style.position = 'fixed';\n\n if (this.keepInViewport) {\n if (leftPos >= this.minX && leftPos + width < viewport.width) {\n this.lastPageX = event.pageX;\n this.container.style.left = leftPos - marginLeft + 'px';\n }\n\n if (topPos >= this.minY && topPos + height < viewport.height) {\n this.lastPageY = event.pageY;\n this.container.style.top = topPos - marginTop + 'px';\n }\n } else {\n this.lastPageX = event.pageX;\n this.container.style.left = leftPos - marginLeft + 'px';\n this.lastPageY = event.pageY;\n this.container.style.top = topPos - marginTop + 'px';\n }\n }\n };\n\n window.document.addEventListener('mousemove', this.documentDragListener);\n },\n unbindDocumentDragListener() {\n if (this.documentDragListener) {\n window.document.removeEventListener('mousemove', this.documentDragListener);\n this.documentDragListener = null;\n }\n },\n bindDocumentDragEndListener() {\n this.documentDragEndListener = (event) => {\n if (this.dragging) {\n this.dragging = false;\n document.body.removeAttribute('data-p-unselectable-text');\n !this.isUnstyled && (document.body.style['user-select'] = '');\n\n this.$emit('dragend', event);\n }\n };\n\n window.document.addEventListener('mouseup', this.documentDragEndListener);\n },\n unbindDocumentDragEndListener() {\n if (this.documentDragEndListener) {\n window.document.removeEventListener('mouseup', this.documentDragEndListener);\n this.documentDragEndListener = null;\n }\n }\n },\n computed: {\n maximizeIconComponent() {\n return this.maximized ? (this.minimizeIcon ? 'span' : 'WindowMinimizeIcon') : this.maximizeIcon ? 'span' : 'WindowMaximizeIcon';\n },\n ariaLabelledById() {\n return this.header != null || this.$attrs['aria-labelledby'] !== null ? this.$id + '_header' : null;\n },\n closeAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.close : undefined;\n },\n dataP() {\n return cn({\n maximized: this.maximized,\n modal: this.modal\n });\n }\n },\n directives: {\n ripple: Ripple,\n focustrap: FocusTrap\n },\n components: {\n Button,\n Portal,\n WindowMinimizeIcon,\n WindowMaximizeIcon,\n TimesIcon\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","header","type","footer","visible","Boolean","modal","contentStyle","contentClass","String","contentProps","maximizable","dismissableMask","closable","closeOnEscape","showHeader","blockScroll","baseZIndex","Number","autoZIndex","position","breakpoints","Object","draggable","keepInViewport","minX","minY","appendTo","closeIcon","undefined","maximizeIcon","minimizeIcon","closeButtonProps","default","severity","text","rounded","maximizeButtonProps","_instance","style","DialogStyle","provide","$pcDialog","$parentInstance","BaseDialog","inheritAttrs","emits","_this","dialogRef","computed","data","containerVisible","maximized","focusableMax","focusableClose","target","documentKeydownListener","container","mask","content","headerContainer","footerContainer","maximizableButton","closeButton","styleElement","dragging","documentDragListener","documentDragEndListener","lastPageX","lastPageY","maskMouseDownTarget","updated","beforeUnmount","unbindDocumentState","unbindGlobalListeners","destroyStyle","ZIndex","clear","mounted","createStyle","methods","close","$emit","onEnter","document","activeElement","enableDocumentSettings","bindGlobalListeners","set","$primevue","config","zIndex","onAfterEnter","focus","onBeforeLeave","isUnstyled","addClass","onLeave","onAfterLeave","onMaskMouseDown","event","onMaskMouseUp","findFocusableElement","querySelector","focusTarget","$slots","focusVisible","maximize","blockBodyScroll","unblockBodyScroll","onKeyDown","code","bindDocumentKeyDownListener","bind","window","addEventListener","unbindDocumentKeyDownListener","removeEventListener","containerRef","el","maskRef","contentRef","headerContainerRef","footerContainerRef","maximizableRef","$el","closeButtonRef","_this$$primevue","createElement","setAttribute","csp","nonce","head","appendChild","innerHTML","breakpoint","concat","$attrSelector","removeChild","initDrag","closest","getAttribute","pageX","pageY","margin","body","addStyle","bindDocumentDragListener","bindDocumentDragEndListener","unbindDocumentDragListener","unbindDocumentDragEndListener","_this2","width","getOuterWidth","height","getOuterHeight","deltaX","deltaY","offset","getBoundingClientRect","leftPos","left","topPos","top","viewport","getViewport","containerComputedStyle","getComputedStyle","marginLeft","parseFloat","marginTop","_this3","removeAttribute","maximizeIconComponent","ariaLabelledById","$attrs","$id","closeAriaLabel","locale","aria","dataP","cn","directives","ripple","Ripple","focustrap","FocusTrap","components","Button","Portal","WindowMinimizeIcon","WindowMaximizeIcon","TimesIcon","_createBlock","_component_Portal","_ctx","$data","_openBlock","_createElementBlock","_mergeProps","ref","$options","cx","sx","onMousedown","apply","arguments","onMouseup","ptm","_createVNode","_Transition","appear","_withDirectives","role","ptmi","_renderSlot","closeCallback","maximizeCallback","_Fragment","key","id","_createElementVNode","_component_Button","autofocus","onClick","tabindex","unstyled","pt","icon","_withCtx","slotProps","_resolveDynamicComponent","_objectSpread"],"mappings":"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"}
@@ -1,17 +1,27 @@
1
1
  <template>
2
- <div :class="cx('root')" :style="sx('root')" role="separator" :aria-orientation="layout" v-bind="ptmi('root')">
3
- <div v-if="$slots.default" :class="cx('content')" v-bind="ptm('content')">
2
+ <div :class="cx('root')" :style="sx('root')" role="separator" :aria-orientation="layout" :data-p="dataP" v-bind="ptmi('root')">
3
+ <div v-if="$slots.default" :class="cx('content')" :data-p="dataP" v-bind="ptm('content')">
4
4
  <slot></slot>
5
5
  </div>
6
6
  </div>
7
7
  </template>
8
8
 
9
9
  <script>
10
+ import { cn } from '@primeuix/utils';
10
11
  import BaseDivider from './BaseDivider.vue';
11
12
 
12
13
  export default {
13
14
  name: 'Divider',
14
15
  extends: BaseDivider,
15
- inheritAttrs: false
16
+ inheritAttrs: false,
17
+ computed: {
18
+ dataP() {
19
+ return cn({
20
+ [this.align]: this.align,
21
+ [this.layout]: this.layout,
22
+ [this.type]: this.type
23
+ });
24
+ }
25
+ }
16
26
  };
17
27
  </script>
@@ -7,7 +7,7 @@
7
7
  * @module divider
8
8
  *
9
9
  */
10
- import type { DefineComponent, DesignToken, EmitFn, PassThrough } from '@primevue/core';
10
+ import type { DefineComponent, DesignToken, EmitFn, HintedString, PassThrough } from '@primevue/core';
11
11
  import type { ComponentHooks } from '@primevue/core/basecomponent';
12
12
  import type { PassThroughOptions } from 'primevue/passthrough';
13
13
  import { VNode } from 'vue';
@@ -74,17 +74,17 @@ export interface DividerProps {
74
74
  /**
75
75
  * Alignment of the content.
76
76
  */
77
- align?: 'left' | 'center' | 'right' | 'top' | 'center' | 'bottom' | undefined;
77
+ align?: HintedString<'left' | 'center' | 'right' | 'top' | 'center' | 'bottom'> | undefined;
78
78
  /**
79
79
  * Specifies the orientation, valid values are 'horizontal' and 'vertical'.
80
80
  * @defaultValue horizontal
81
81
  */
82
- layout?: 'horizontal' | 'vertical' | undefined;
82
+ layout?: HintedString<'horizontal' | 'vertical'> | undefined;
83
83
  /**
84
84
  * Border style type.
85
85
  * @defaultValue solid
86
86
  */
87
- type?: 'solid' | 'dashed' | 'dotted' | undefined;
87
+ type?: HintedString<'solid' | 'dashed' | 'dotted'> | undefined;
88
88
  /**
89
89
  * It generates scoped CSS variables using design tokens for the component.
90
90
  */
package/divider/index.mjs CHANGED
@@ -1,3 +1,4 @@
1
+ import { cn } from '@primeuix/utils';
1
2
  import BaseComponent from '@primevue/core/basecomponent';
2
3
  import DividerStyle from 'primevue/divider/style';
3
4
  import { createElementBlock, openBlock, mergeProps, createCommentVNode, renderSlot } from 'vue';
@@ -28,23 +29,35 @@ var script$1 = {
28
29
  }
29
30
  };
30
31
 
32
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
33
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e; }
34
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
35
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
31
36
  var script = {
32
37
  name: 'Divider',
33
38
  "extends": script$1,
34
- inheritAttrs: false
39
+ inheritAttrs: false,
40
+ computed: {
41
+ dataP: function dataP() {
42
+ return cn(_defineProperty(_defineProperty(_defineProperty({}, this.align, this.align), this.layout, this.layout), this.type, this.type));
43
+ }
44
+ }
35
45
  };
36
46
 
37
- var _hoisted_1 = ["aria-orientation"];
47
+ var _hoisted_1 = ["aria-orientation", "data-p"];
48
+ var _hoisted_2 = ["data-p"];
38
49
  function render(_ctx, _cache, $props, $setup, $data, $options) {
39
50
  return openBlock(), createElementBlock("div", mergeProps({
40
51
  "class": _ctx.cx('root'),
41
52
  style: _ctx.sx('root'),
42
53
  role: "separator",
43
- "aria-orientation": _ctx.layout
54
+ "aria-orientation": _ctx.layout,
55
+ "data-p": $options.dataP
44
56
  }, _ctx.ptmi('root')), [_ctx.$slots["default"] ? (openBlock(), createElementBlock("div", mergeProps({
45
57
  key: 0,
46
- "class": _ctx.cx('content')
47
- }, _ctx.ptm('content')), [renderSlot(_ctx.$slots, "default")], 16)) : createCommentVNode("", true)], 16, _hoisted_1);
58
+ "class": _ctx.cx('content'),
59
+ "data-p": $options.dataP
60
+ }, _ctx.ptm('content')), [renderSlot(_ctx.$slots, "default")], 16, _hoisted_2)) : createCommentVNode("", true)], 16, _hoisted_1);
48
61
  }
49
62
 
50
63
  script.render = render;
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/divider/BaseDivider.vue","../../src/divider/Divider.vue","../../src/divider/Divider.vue?vue&type=template&id=0e96bc24&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport DividerStyle from 'primevue/divider/style';\n\nexport default {\n name: 'BaseDivider',\n extends: BaseComponent,\n props: {\n align: {\n type: String,\n default: null\n },\n layout: {\n type: String,\n default: 'horizontal'\n },\n type: {\n type: String,\n default: 'solid'\n }\n },\n style: DividerStyle,\n provide() {\n return {\n $pcDivider: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" :style=\"sx('root')\" role=\"separator\" :aria-orientation=\"layout\" v-bind=\"ptmi('root')\">\n <div v-if=\"$slots.default\" :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n </div>\n</template>\n\n<script>\nimport BaseDivider from './BaseDivider.vue';\n\nexport default {\n name: 'Divider',\n extends: BaseDivider,\n inheritAttrs: false\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" :style=\"sx('root')\" role=\"separator\" :aria-orientation=\"layout\" v-bind=\"ptmi('root')\">\n <div v-if=\"$slots.default\" :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n </div>\n</template>\n\n<script>\nimport BaseDivider from './BaseDivider.vue';\n\nexport default {\n name: 'Divider',\n extends: BaseDivider,\n inheritAttrs: false\n};\n</script>\n"],"names":["name","BaseComponent","props","align","type","String","layout","style","DividerStyle","provide","$pcDivider","$parentInstance","BaseDivider","inheritAttrs","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","sx","role","ptmi","$slots","ptm","_renderSlot"],"mappings":";;;;AAIA,eAAe;AACXA,EAAAA,IAAI,EAAE,aAAa;AACnB,EAAA,SAAA,EAASC,aAAa;AACtBC,EAAAA,KAAK,EAAE;AACHC,IAAAA,KAAK,EAAE;AACHC,MAAAA,IAAI,EAAEC,MAAM;MACZ,SAAS,EAAA;KACZ;AACDC,IAAAA,MAAM,EAAE;AACJF,MAAAA,IAAI,EAAEC,MAAM;MACZ,SAAS,EAAA;KACZ;AACDD,IAAAA,IAAI,EAAE;AACFA,MAAAA,IAAI,EAAEC,MAAM;MACZ,SAAS,EAAA;AACb;GACH;AACDE,EAAAA,KAAK,EAAEC,YAAY;EACnBC,OAAO,EAAA,SAAPA,OAAOA,GAAG;IACN,OAAO;AACHC,MAAAA,UAAU,EAAE,IAAI;AAChBC,MAAAA,eAAe,EAAE;KACpB;AACL;AACJ,CAAC;;ACjBD,aAAe;AACXX,EAAAA,IAAI,EAAE,SAAS;AACf,EAAA,SAAA,EAASY,QAAW;AACpBC,EAAAA,YAAY,EAAE;AAClB,CAAC;;;;ECdG,OAAAC,SAAA,EAAA,EAAAC,kBAAA,CAIK,OAJLC,UAIK,CAAA;AAJC,IAAA,OAAA,EAAOC,IAAE,CAAAC,EAAA,CAAA,MAAA,CAAA;AAAWX,IAAAA,KAAK,EAAEU,IAAE,CAAAE,EAAA,CAAA,MAAA,CAAA;AAAUC,IAAAA,IAAI,EAAC,WAAU;IAAG,kBAAgB,EAAEH,IAAM,CAAAX;KAAUW,IAAI,CAAAI,IAAA,CAAA,MAAA,CAAA,CAAA,EAAA,CACtFJ,IAAA,CAAAK,MAAM,CAAQ,SAAA,CAAA,IAAzBR,SAAA,EAAA,EAAAC,kBAAA,CAEK,OAFLC,UAEK,CAAA;;AAFuB,IAAA,OAAA,EAAOC,IAAE,CAAAC,EAAA,CAAA,SAAA;KAAqBD,IAAG,CAAAM,GAAA,CAAA,SAAA,CAAA,CAAA,EAAA,CACzDC,UAAY,CAAAP,IAAA,CAAAK,MAAA,EAAA,SAAA,CAAA;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/divider/BaseDivider.vue","../../src/divider/Divider.vue","../../src/divider/Divider.vue?vue&type=template&id=77ce90d5&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport DividerStyle from 'primevue/divider/style';\n\nexport default {\n name: 'BaseDivider',\n extends: BaseComponent,\n props: {\n align: {\n type: String,\n default: null\n },\n layout: {\n type: String,\n default: 'horizontal'\n },\n type: {\n type: String,\n default: 'solid'\n }\n },\n style: DividerStyle,\n provide() {\n return {\n $pcDivider: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" :style=\"sx('root')\" role=\"separator\" :aria-orientation=\"layout\" :data-p=\"dataP\" v-bind=\"ptmi('root')\">\n <div v-if=\"$slots.default\" :class=\"cx('content')\" :data-p=\"dataP\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n </div>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport BaseDivider from './BaseDivider.vue';\n\nexport default {\n name: 'Divider',\n extends: BaseDivider,\n inheritAttrs: false,\n computed: {\n dataP() {\n return cn({\n [this.align]: this.align,\n [this.layout]: this.layout,\n [this.type]: this.type\n });\n }\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" :style=\"sx('root')\" role=\"separator\" :aria-orientation=\"layout\" :data-p=\"dataP\" v-bind=\"ptmi('root')\">\n <div v-if=\"$slots.default\" :class=\"cx('content')\" :data-p=\"dataP\" v-bind=\"ptm('content')\">\n <slot></slot>\n </div>\n </div>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport BaseDivider from './BaseDivider.vue';\n\nexport default {\n name: 'Divider',\n extends: BaseDivider,\n inheritAttrs: false,\n computed: {\n dataP() {\n return cn({\n [this.align]: this.align,\n [this.layout]: this.layout,\n [this.type]: this.type\n });\n }\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","align","type","String","layout","style","DividerStyle","provide","$pcDivider","$parentInstance","BaseDivider","inheritAttrs","computed","dataP","cn","_defineProperty","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","sx","role","$options","ptmi","$slots","ptm","_renderSlot"],"mappings":";;;;;AAIA,eAAe;AACXA,EAAAA,IAAI,EAAE,aAAa;AACnB,EAAA,SAAA,EAASC,aAAa;AACtBC,EAAAA,KAAK,EAAE;AACHC,IAAAA,KAAK,EAAE;AACHC,MAAAA,IAAI,EAAEC,MAAM;MACZ,SAAS,EAAA;KACZ;AACDC,IAAAA,MAAM,EAAE;AACJF,MAAAA,IAAI,EAAEC,MAAM;MACZ,SAAS,EAAA;KACZ;AACDD,IAAAA,IAAI,EAAE;AACFA,MAAAA,IAAI,EAAEC,MAAM;MACZ,SAAS,EAAA;AACb;GACH;AACDE,EAAAA,KAAK,EAAEC,YAAY;EACnBC,OAAO,EAAA,SAAPA,OAAOA,GAAG;IACN,OAAO;AACHC,MAAAA,UAAU,EAAE,IAAI;AAChBC,MAAAA,eAAe,EAAE;KACpB;AACL;AACJ,CAAC;;;;;;AChBD,aAAe;AACXX,EAAAA,IAAI,EAAE,SAAS;AACf,EAAA,SAAA,EAASY,QAAW;AACpBC,EAAAA,YAAY,EAAE,KAAK;AACnBC,EAAAA,QAAQ,EAAE;IACNC,KAAK,EAAA,SAALA,KAAKA,GAAG;AACJ,MAAA,OAAOC,EAAE,CAAAC,eAAA,CAAAA,eAAA,CAAAA,eAAA,CACJ,EAAA,EAAA,IAAI,CAACd,KAAK,EAAG,IAAI,CAACA,KAAK,CAAA,EACvB,IAAI,CAACG,MAAM,EAAG,IAAI,CAACA,MAAM,CACzB,EAAA,IAAI,CAACF,IAAI,EAAG,IAAI,CAACA,IAAG,CACxB,CAAC;AACN;AACJ;AACJ,CAAC;;;;;ECxBG,OAAAc,SAAA,EAAA,EAAAC,kBAAA,CAIK,OAJLC,UAIK,CAAA;AAJC,IAAA,OAAA,EAAOC,IAAE,CAAAC,EAAA,CAAA,MAAA,CAAA;AAAWf,IAAAA,KAAK,EAAEc,IAAE,CAAAE,EAAA,CAAA,MAAA,CAAA;AAAUC,IAAAA,IAAI,EAAC,WAAU;IAAG,kBAAgB,EAAEH,IAAM,CAAAf,MAAA;IAAG,QAAM,EAAEmB,QAAK,CAAAV;KAAUM,IAAI,CAAAK,IAAA,CAAA,MAAA,CAAA,CAAA,EAAA,CACtGL,IAAA,CAAAM,MAAM,CAAQ,SAAA,CAAA,IAAzBT,SAAA,EAAA,EAAAC,kBAAA,CAEK,OAFLC,UAEK,CAAA;;AAFuB,IAAA,OAAA,EAAOC,IAAE,CAAAC,EAAA,CAAA,SAAA,CAAA;IAAc,QAAM,EAAEG,QAAK,CAAAV;KAAUM,IAAG,CAAAO,GAAA,CAAA,SAAA,CAAA,CAAA,EAAA,CACzEC,UAAY,CAAAR,IAAA,CAAAM,MAAA,EAAA,SAAA,CAAA;;;;;;;"}
package/dock/index.d.ts CHANGED
@@ -7,7 +7,7 @@
7
7
  * @module dock
8
8
  *
9
9
  */
10
- import type { DefineComponent, DesignToken, EmitFn, PassThrough } from '@primevue/core';
10
+ import type { DefineComponent, DesignToken, EmitFn, HintedString, PassThrough } from '@primevue/core';
11
11
  import type { ComponentHooks } from '@primevue/core/basecomponent';
12
12
  import type { MenuItem } from 'primevue/menuitem';
13
13
  import type { PassThroughOptions } from 'primevue/passthrough';
@@ -147,12 +147,12 @@ export interface DockTooltipOptions {
147
147
  /**
148
148
  * Event to show the tooltip, valid values are hover and focus.
149
149
  */
150
- event: 'hover' | 'focus' | undefined;
150
+ event: HintedString<'hover' | 'focus'> | undefined;
151
151
  /**
152
152
  * Position of element.
153
153
  * @defaultValue bottom
154
154
  */
155
- position: 'bottom' | 'top' | 'left' | 'right' | undefined;
155
+ position: HintedString<'bottom' | 'top' | 'left' | 'right'> | undefined;
156
156
  /**
157
157
  * Optional options.
158
158
  */
@@ -185,7 +185,7 @@ export interface DockProps {
185
185
  * Position of element.
186
186
  * @defaultValue bottom
187
187
  */
188
- position?: 'bottom' | 'top' | 'left' | 'right' | undefined;
188
+ position?: HintedString<'bottom' | 'top' | 'left' | 'right'> | undefined;
189
189
  /**
190
190
  * Style class of the element.
191
191
  */
package/drawer/index.d.ts CHANGED
@@ -7,7 +7,7 @@
7
7
  * @module drawer
8
8
  *
9
9
  */
10
- import type { DefineComponent, DesignToken, EmitFn, PassThrough } from '@primevue/core';
10
+ import type { DefineComponent, DesignToken, EmitFn, HintedString, PassThrough } from '@primevue/core';
11
11
  import type { ComponentHooks } from '@primevue/core/basecomponent';
12
12
  import type { ButtonPassThroughOptions } from 'primevue/button';
13
13
  import type { PassThroughOptions } from 'primevue/passthrough';
@@ -137,7 +137,7 @@ export interface DrawerProps {
137
137
  * Specifies the position of the drawer.
138
138
  * @defaultValue left
139
139
  */
140
- position?: 'left' | 'right' | 'top' | 'bottom' | 'full' | undefined;
140
+ position?: HintedString<'left' | 'right' | 'top' | 'bottom' | 'full'> | undefined;
141
141
  /**
142
142
  * Title content of the dialog.
143
143
  */
@@ -1,6 +1,6 @@
1
1
  <template>
2
- <fieldset :class="cx('root')" v-bind="ptmi('root')">
3
- <legend :class="cx('legend')" v-bind="ptm('legend')">
2
+ <fieldset :class="cx('root')" :data-p="dataP" v-bind="ptmi('root')">
3
+ <legend :class="cx('legend')" :data-p="dataP" v-bind="ptm('legend')">
4
4
  <slot name="legend" :toggleCallback="toggle">
5
5
  <span v-if="!toggleable" :id="$id + '_header'" :class="cx('legendLabel')" v-bind="ptm('legendLabel')">{{ legend }}</span>
6
6
  <button
@@ -35,6 +35,7 @@
35
35
  </template>
36
36
 
37
37
  <script>
38
+ import { cn } from '@primeuix/utils';
38
39
  import MinusIcon from '@primevue/icons/minus';
39
40
  import PlusIcon from '@primevue/icons/plus';
40
41
  import Ripple from 'primevue/ripple';
@@ -74,6 +75,11 @@ export default {
74
75
  computed: {
75
76
  buttonAriaLabel() {
76
77
  return this.toggleButtonProps && this.toggleButtonProps.ariaLabel ? this.toggleButtonProps.ariaLabel : this.legend;
78
+ },
79
+ dataP() {
80
+ return cn({
81
+ toggleable: this.toggleable
82
+ });
77
83
  }
78
84
  },
79
85
  directives: {
@@ -1,3 +1,4 @@
1
+ import { cn } from '@primeuix/utils';
1
2
  import MinusIcon from '@primevue/icons/minus';
2
3
  import PlusIcon from '@primevue/icons/plus';
3
4
  import Ripple from 'primevue/ripple';
@@ -60,6 +61,11 @@ var script = {
60
61
  computed: {
61
62
  buttonAriaLabel: function buttonAriaLabel() {
62
63
  return this.toggleButtonProps && this.toggleButtonProps.ariaLabel ? this.toggleButtonProps.ariaLabel : this.legend;
64
+ },
65
+ dataP: function dataP() {
66
+ return cn({
67
+ toggleable: this.toggleable
68
+ });
63
69
  }
64
70
  },
65
71
  directives: {
@@ -77,15 +83,19 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
77
83
  function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e; }
78
84
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
79
85
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
80
- var _hoisted_1 = ["id"];
81
- var _hoisted_2 = ["id", "aria-controls", "aria-expanded", "aria-label"];
82
- var _hoisted_3 = ["id", "aria-labelledby"];
86
+ var _hoisted_1 = ["data-p"];
87
+ var _hoisted_2 = ["data-p"];
88
+ var _hoisted_3 = ["id"];
89
+ var _hoisted_4 = ["id", "aria-controls", "aria-expanded", "aria-label"];
90
+ var _hoisted_5 = ["id", "aria-labelledby"];
83
91
  function render(_ctx, _cache, $props, $setup, $data, $options) {
84
92
  var _directive_ripple = resolveDirective("ripple");
85
93
  return openBlock(), createElementBlock("fieldset", mergeProps({
86
- "class": _ctx.cx('root')
94
+ "class": _ctx.cx('root'),
95
+ "data-p": $options.dataP
87
96
  }, _ctx.ptmi('root')), [createElementVNode("legend", mergeProps({
88
- "class": _ctx.cx('legend')
97
+ "class": _ctx.cx('legend'),
98
+ "data-p": $options.dataP
89
99
  }, _ctx.ptm('legend')), [renderSlot(_ctx.$slots, "legend", {
90
100
  toggleCallback: $options.toggle
91
101
  }, function () {
@@ -93,7 +103,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
93
103
  key: 0,
94
104
  id: _ctx.$id + '_header',
95
105
  "class": _ctx.cx('legendLabel')
96
- }, _ctx.ptm('legendLabel')), toDisplayString(_ctx.legend), 17, _hoisted_1)) : createCommentVNode("", true), _ctx.toggleable ? withDirectives((openBlock(), createElementBlock("button", mergeProps({
106
+ }, _ctx.ptm('legendLabel')), toDisplayString(_ctx.legend), 17, _hoisted_3)) : createCommentVNode("", true), _ctx.toggleable ? withDirectives((openBlock(), createElementBlock("button", mergeProps({
97
107
  key: 1,
98
108
  id: _ctx.$id + '_header',
99
109
  type: "button",
@@ -116,8 +126,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
116
126
  }, _ctx.ptm('toggleIcon')), null, 16, ["class"]))];
117
127
  }), createElementVNode("span", mergeProps({
118
128
  "class": _ctx.cx('legendLabel')
119
- }, _ctx.ptm('legendLabel')), toDisplayString(_ctx.legend), 17)], 16, _hoisted_2)), [[_directive_ripple]]) : createCommentVNode("", true)];
120
- })], 16), createVNode(Transition, mergeProps({
129
+ }, _ctx.ptm('legendLabel')), toDisplayString(_ctx.legend), 17)], 16, _hoisted_4)), [[_directive_ripple]]) : createCommentVNode("", true)];
130
+ })], 16, _hoisted_2), createVNode(Transition, mergeProps({
121
131
  name: "p-toggleable-content"
122
132
  }, _ctx.ptm('transition')), {
123
133
  "default": withCtx(function () {
@@ -128,10 +138,10 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
128
138
  "aria-labelledby": _ctx.$id + '_header'
129
139
  }, _ctx.ptm('contentContainer')), [createElementVNode("div", mergeProps({
130
140
  "class": _ctx.cx('content')
131
- }, _ctx.ptm('content')), [renderSlot(_ctx.$slots, "default")], 16)], 16, _hoisted_3), [[vShow, !$data.d_collapsed]])];
141
+ }, _ctx.ptm('content')), [renderSlot(_ctx.$slots, "default")], 16)], 16, _hoisted_5), [[vShow, !$data.d_collapsed]])];
132
142
  }),
133
143
  _: 3
134
- }, 16)], 16);
144
+ }, 16)], 16, _hoisted_1);
135
145
  }
136
146
 
137
147
  script.render = render;