primevue 4.3.2 → 4.3.4

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 (168) hide show
  1. package/accordionheader/AccordionHeader.vue +1 -1
  2. package/accordionheader/index.d.ts +6 -1
  3. package/accordionheader/index.mjs +1 -1
  4. package/accordionheader/index.mjs.map +1 -1
  5. package/autocomplete/AutoComplete.vue +60 -11
  6. package/autocomplete/index.d.ts +4 -0
  7. package/autocomplete/index.mjs +96 -59
  8. package/autocomplete/index.mjs.map +1 -1
  9. package/cascadeselect/CascadeSelect.vue +4 -1
  10. package/cascadeselect/CascadeSelectSub.vue +1 -1
  11. package/cascadeselect/index.mjs +22 -20
  12. package/cascadeselect/index.mjs.map +1 -1
  13. package/checkbox/Checkbox.vue +1 -1
  14. package/checkbox/index.mjs +2 -1
  15. package/checkbox/index.mjs.map +1 -1
  16. package/chip/BaseChip.vue +1 -1
  17. package/chip/index.d.ts +1 -1
  18. package/chip/index.mjs +1 -1
  19. package/chip/index.mjs.map +1 -1
  20. package/colorpicker/ColorPicker.vue +5 -1
  21. package/colorpicker/index.mjs +5 -1
  22. package/colorpicker/index.mjs.map +1 -1
  23. package/confirmationoptions/index.d.ts +1 -1
  24. package/confirmdialog/index.d.ts +4 -0
  25. package/contextmenu/index.mjs +12 -12
  26. package/contextmenu/index.mjs.map +1 -1
  27. package/datatable/BodyCell.vue +1 -0
  28. package/datatable/ColumnFilter.vue +3 -3
  29. package/datatable/DataTable.vue +103 -44
  30. package/datatable/HeaderCheckbox.vue +2 -2
  31. package/datatable/RowCheckbox.vue +1 -1
  32. package/datatable/TableBody.vue +12 -1
  33. package/datatable/TableFooter.vue +9 -1
  34. package/datatable/TableHeader.vue +9 -2
  35. package/datatable/index.d.ts +37 -29
  36. package/datatable/index.mjs +175 -111
  37. package/datatable/index.mjs.map +1 -1
  38. package/datatable/style/index.mjs +4 -4
  39. package/datatable/style/index.mjs.map +1 -1
  40. package/dataview/DataView.vue +4 -0
  41. package/dataview/index.d.ts +63 -6
  42. package/dataview/index.mjs +6 -2
  43. package/dataview/index.mjs.map +1 -1
  44. package/datepicker/DatePicker.vue +379 -236
  45. package/datepicker/index.d.ts +156 -0
  46. package/datepicker/index.mjs +676 -406
  47. package/datepicker/index.mjs.map +1 -1
  48. package/drawer/Drawer.vue +30 -20
  49. package/drawer/index.d.ts +10 -0
  50. package/drawer/index.mjs +42 -25
  51. package/drawer/index.mjs.map +1 -1
  52. package/fileupload/FileUpload.vue +3 -4
  53. package/fileupload/index.mjs +8 -10
  54. package/fileupload/index.mjs.map +1 -1
  55. package/galleria/Galleria.vue +39 -3
  56. package/galleria/index.mjs +40 -3
  57. package/galleria/index.mjs.map +1 -1
  58. package/image/Image.vue +1 -1
  59. package/image/index.mjs +1 -1
  60. package/image/index.mjs.map +1 -1
  61. package/inplace/Inplace.vue +1 -1
  62. package/inplace/index.mjs +3 -2
  63. package/inplace/index.mjs.map +1 -1
  64. package/inputmask/InputMask.vue +3 -3
  65. package/inputmask/index.d.ts +3 -3
  66. package/inputmask/index.mjs +3 -3
  67. package/inputmask/index.mjs.map +1 -1
  68. package/inputnumber/BaseInputNumber.vue +4 -0
  69. package/inputnumber/InputNumber.vue +3 -10
  70. package/inputnumber/index.mjs +8 -9
  71. package/inputnumber/index.mjs.map +1 -1
  72. package/keyfilter/index.mjs +12 -19
  73. package/keyfilter/index.mjs.map +1 -1
  74. package/listbox/Listbox.vue +10 -2
  75. package/listbox/index.mjs +38 -29
  76. package/listbox/index.mjs.map +1 -1
  77. package/megamenu/index.d.ts +1 -1
  78. package/megamenu/index.mjs +11 -11
  79. package/megamenu/index.mjs.map +1 -1
  80. package/menu/Menu.vue +12 -6
  81. package/menu/Menuitem.vue +14 -4
  82. package/menu/index.d.ts +3 -12
  83. package/menu/index.mjs +40 -20
  84. package/menu/index.mjs.map +1 -1
  85. package/menubar/index.mjs +16 -16
  86. package/menubar/index.mjs.map +1 -1
  87. package/metergroup/MeterGroup.vue +9 -3
  88. package/metergroup/MeterGroupLabel.vue +10 -1
  89. package/metergroup/index.d.ts +1 -1
  90. package/metergroup/index.mjs +32 -7
  91. package/metergroup/index.mjs.map +1 -1
  92. package/multiselect/MultiSelect.vue +40 -6
  93. package/multiselect/index.d.ts +1 -1
  94. package/multiselect/index.mjs +100 -68
  95. package/multiselect/index.mjs.map +1 -1
  96. package/organizationchart/OrganizationChartNode.vue +1 -1
  97. package/organizationchart/index.mjs.map +1 -1
  98. package/organizationchart/style/index.mjs +11 -6
  99. package/organizationchart/style/index.mjs.map +1 -1
  100. package/package.json +6 -6
  101. package/paginator/Paginator.vue +2 -0
  102. package/paginator/index.d.ts +8 -0
  103. package/paginator/index.mjs +3 -1
  104. package/paginator/index.mjs.map +1 -1
  105. package/panel/Panel.vue +2 -2
  106. package/panel/index.mjs +2 -2
  107. package/panel/index.mjs.map +1 -1
  108. package/panelmenu/PanelMenuList.vue +1 -1
  109. package/panelmenu/index.mjs +4 -4
  110. package/panelmenu/index.mjs.map +1 -1
  111. package/password/Password.vue +28 -6
  112. package/password/index.mjs +44 -16
  113. package/password/index.mjs.map +1 -1
  114. package/popover/Popover.vue +1 -1
  115. package/popover/index.mjs +1 -2
  116. package/popover/index.mjs.map +1 -1
  117. package/progressbar/ProgressBar.vue +4 -4
  118. package/progressbar/index.mjs +8 -12
  119. package/progressbar/index.mjs.map +1 -1
  120. package/scrolltop/ScrollTop.vue +2 -2
  121. package/scrolltop/index.mjs +4 -2
  122. package/scrolltop/index.mjs.map +1 -1
  123. package/select/Select.vue +68 -13
  124. package/select/index.mjs +128 -77
  125. package/select/index.mjs.map +1 -1
  126. package/selectbutton/index.d.ts +0 -24
  127. package/splitter/Splitter.vue +10 -2
  128. package/splitter/index.d.ts +1 -1
  129. package/splitter/index.mjs +19 -7
  130. package/splitter/index.mjs.map +1 -1
  131. package/splitter/style/index.mjs +1 -13
  132. package/splitter/style/index.mjs.map +1 -1
  133. package/step/Step.vue +27 -9
  134. package/step/index.mjs +46 -16
  135. package/step/index.mjs.map +1 -1
  136. package/steppanel/StepPanel.vue +11 -5
  137. package/steppanel/index.d.ts +8 -0
  138. package/steppanel/index.mjs +25 -10
  139. package/steppanel/index.mjs.map +1 -1
  140. package/stepper/StepperSeparator.vue +5 -2
  141. package/tab/Tab.vue +4 -4
  142. package/tab/index.mjs +4 -4
  143. package/tab/index.mjs.map +1 -1
  144. package/tablist/TabList.vue +3 -0
  145. package/tablist/index.mjs +1 -0
  146. package/tablist/index.mjs.map +1 -1
  147. package/tabpanel/TabPanel.vue +2 -2
  148. package/tabpanel/index.mjs +2 -2
  149. package/tabpanel/index.mjs.map +1 -1
  150. package/tieredmenu/TieredMenu.vue +1 -1
  151. package/tieredmenu/index.mjs +13 -14
  152. package/tieredmenu/index.mjs.map +1 -1
  153. package/tooltip/index.mjs +47 -30
  154. package/tooltip/index.mjs.map +1 -1
  155. package/tree/Tree.vue +14 -2
  156. package/tree/TreeNode.vue +2 -2
  157. package/tree/index.mjs +28 -10
  158. package/tree/index.mjs.map +1 -1
  159. package/treeselect/TreeSelect.vue +4 -1
  160. package/treeselect/index.mjs +4 -2
  161. package/treeselect/index.mjs.map +1 -1
  162. package/umd/primevue.min.js +12213 -1
  163. package/virtualscroller/VirtualScroller.vue +13 -2
  164. package/virtualscroller/index.mjs +28 -18
  165. package/virtualscroller/index.mjs.map +1 -1
  166. package/virtualscroller/style/index.mjs +1 -1
  167. package/virtualscroller/style/index.mjs.map +1 -1
  168. package/web-types.json +1 -1
package/image/Image.vue CHANGED
@@ -6,7 +6,7 @@
6
6
  <button v-if="preview" ref="previewButton" :aria-label="zoomImageAriaLabel" type="button" :class="cx('previewMask')" @click="onImageClick" v-bind="{ ...previewButtonProps, ...ptm('previewMask') }">
7
7
  <!-- TODO: indicator* deprecated since v4.0-->
8
8
  <slot :name="$slots.previewicon ? 'previewicon' : 'indicatoricon'">
9
- <component :is="previewIcon || indicatorIcon ? 'i' : 'EyeIcon'" :class="cx('previewIcon')" v-bind="ptm('previewIcon')" />
9
+ <component :is="previewIcon || indicatorIcon ? 'i' : 'EyeIcon'" :class="[cx('previewIcon'), previewIcon]" v-bind="ptm('previewIcon')" />
10
10
  </slot>
11
11
  </button>
12
12
  <Portal>
package/image/index.mjs CHANGED
@@ -274,7 +274,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
274
274
  })
275
275
  }, _objectSpread(_objectSpread({}, _ctx.previewButtonProps), _ctx.ptm('previewMask'))), [renderSlot(_ctx.$slots, _ctx.$slots.previewicon ? 'previewicon' : 'indicatoricon', {}, function () {
276
276
  return [(openBlock(), createBlock(resolveDynamicComponent(_ctx.previewIcon || _ctx.indicatorIcon ? 'i' : 'EyeIcon'), mergeProps({
277
- "class": _ctx.cx('previewIcon')
277
+ "class": [_ctx.cx('previewIcon'), _ctx.previewIcon]
278
278
  }, _ctx.ptm('previewIcon')), null, 16, ["class"]))];
279
279
  })], 16, _hoisted_1)) : createCommentVNode("", true), createVNode(_component_Portal, null, {
280
280
  "default": withCtx(function () {
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/image/BaseImage.vue","../../src/image/Image.vue","../../src/image/Image.vue?vue&type=template&id=50a8cb3f&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport ImageStyle from 'primevue/image/style';\n\nexport default {\n name: 'BaseImage',\n extends: BaseComponent,\n props: {\n preview: {\n type: Boolean,\n default: false\n },\n class: {\n type: null,\n default: null\n },\n style: {\n type: null,\n default: null\n },\n imageStyle: {\n type: null,\n default: null\n },\n imageClass: {\n type: null,\n default: null\n },\n previewButtonProps: {\n type: null,\n default: null\n },\n indicatorIcon: {\n type: String,\n default: undefined\n },\n previewIcon: {\n type: String,\n default: undefined\n },\n zoomInDisabled: {\n type: Boolean,\n default: false\n },\n zoomOutDisabled: {\n type: Boolean,\n default: false\n }\n },\n style: ImageStyle,\n provide() {\n return {\n $pcImage: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <span :class=\"containerClass\" :style=\"style\" v-bind=\"ptmi('root')\">\n <slot name=\"image\" :errorCallback=\"onError\">\n <img :style=\"imageStyle\" :class=\"imageClass\" @error=\"onError\" v-bind=\"{ ...$attrs, ...ptm('image') }\" />\n </slot>\n <button v-if=\"preview\" ref=\"previewButton\" :aria-label=\"zoomImageAriaLabel\" type=\"button\" :class=\"cx('previewMask')\" @click=\"onImageClick\" v-bind=\"{ ...previewButtonProps, ...ptm('previewMask') }\">\n <!-- TODO: indicator* deprecated since v4.0-->\n <slot :name=\"$slots.previewicon ? 'previewicon' : 'indicatoricon'\">\n <component :is=\"previewIcon || indicatorIcon ? 'i' : 'EyeIcon'\" :class=\"cx('previewIcon')\" v-bind=\"ptm('previewIcon')\" />\n </slot>\n </button>\n <Portal>\n <div v-if=\"maskVisible\" :ref=\"maskRef\" v-focustrap role=\"dialog\" :class=\"cx('mask')\" :aria-modal=\"maskVisible\" @click=\"onMaskClick\" @keydown=\"onMaskKeydown\" v-bind=\"ptm('mask')\">\n <div :class=\"cx('toolbar')\" v-bind=\"ptm('toolbar')\">\n <button :class=\"cx('rotateRightButton')\" @click=\"rotateRight\" type=\"button\" :aria-label=\"rightAriaLabel\" v-bind=\"ptm('rotateRightButton')\" data-pc-group-section=\"action\">\n <slot name=\"refresh\">\n <RefreshIcon v-bind=\"ptm('rotateRightIcon')\" />\n </slot>\n </button>\n\n <button :class=\"cx('rotateLeftButton')\" @click=\"rotateLeft\" type=\"button\" :aria-label=\"leftAriaLabel\" v-bind=\"ptm('rotateLeftButton')\" data-pc-group-section=\"action\">\n <slot name=\"undo\">\n <UndoIcon v-bind=\"ptm('rotateLeftIcon')\" />\n </slot>\n </button>\n\n <button :class=\"cx('zoomOutButton')\" @click=\"zoomOut\" type=\"button\" :disabled=\"isZoomOutDisabled\" :aria-label=\"zoomOutAriaLabel\" v-bind=\"ptm('zoomOutButton')\" data-pc-group-section=\"action\">\n <slot name=\"zoomout\">\n <SearchMinusIcon v-bind=\"ptm('zoomOutIcon')\" />\n </slot>\n </button>\n\n <button :class=\"cx('zoomInButton')\" @click=\"zoomIn\" type=\"button\" :disabled=\"isZoomInDisabled\" :aria-label=\"zoomInAriaLabel\" v-bind=\"ptm('zoomInButton')\" data-pc-group-section=\"action\">\n <slot name=\"zoomin\">\n <SearchPlusIcon v-bind=\"ptm('zoomInIcon')\" />\n </slot>\n </button>\n\n <button :class=\"cx('closeButton')\" type=\"button\" @click=\"hidePreview\" :aria-label=\"closeAriaLabel\" autofocus v-bind=\"ptm('closeButton')\" data-pc-group-section=\"action\">\n <slot name=\"close\">\n <TimesIcon v-bind=\"ptm('closeIcon')\" />\n </slot>\n </button>\n </div>\n <transition name=\"p-image-original\" @before-enter=\"onBeforeEnter\" @enter=\"onEnter\" @leave=\"onLeave\" @before-leave=\"onBeforeLeave\" @after-leave=\"onAfterLeave\" v-bind=\"ptm('transition')\">\n <div v-if=\"previewVisible\" v-bind=\"ptm('originalContainer')\">\n <!-- TODO: preview deprecated since v4.0-->\n <slot :name=\"$slots.original ? 'original' : 'preview'\" :class=\"cx('original')\" :style=\"imagePreviewStyle\" :previewCallback=\"onPreviewImageClick\">\n <img :src=\"$attrs.src\" :class=\"cx('original')\" :style=\"imagePreviewStyle\" @click=\"onPreviewImageClick\" v-bind=\"ptm('original')\" />\n </slot>\n </div>\n </transition>\n </div>\n </Portal>\n </span>\n</template>\n\n<script>\nimport { addClass, focus, isAttributeEquals } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport EyeIcon from '@primevue/icons/eye';\nimport RefreshIcon from '@primevue/icons/refresh';\nimport SearchMinusIcon from '@primevue/icons/searchminus';\nimport SearchPlusIcon from '@primevue/icons/searchplus';\nimport TimesIcon from '@primevue/icons/times';\nimport UndoIcon from '@primevue/icons/undo';\nimport FocusTrap from 'primevue/focustrap';\nimport Portal from 'primevue/portal';\nimport { blockBodyScroll, unblockBodyScroll } from 'primevue/utils';\nimport BaseImage from './BaseImage.vue';\n\nexport default {\n name: 'Image',\n extends: BaseImage,\n inheritAttrs: false,\n emits: ['show', 'hide', 'error'],\n mask: null,\n data() {\n return {\n maskVisible: false,\n previewVisible: false,\n rotate: 0,\n scale: 1\n };\n },\n beforeUnmount() {\n if (this.mask) {\n ZIndex.clear(this.container);\n }\n },\n methods: {\n maskRef(el) {\n this.mask = el;\n },\n toolbarRef(el) {\n this.toolbarRef = el;\n },\n onImageClick() {\n if (this.preview) {\n blockBodyScroll();\n this.maskVisible = true;\n setTimeout(() => {\n this.previewVisible = true;\n }, 25);\n }\n },\n onPreviewImageClick() {\n this.previewClick = true;\n },\n onMaskClick(event) {\n const isBarActionsClicked = isAttributeEquals(event.target, 'data-pc-section-group', 'action') || event.target.closest('[data-pc-section-group=\"action\"]');\n\n if (!this.previewClick && !isBarActionsClicked) {\n this.previewVisible = false;\n this.rotate = 0;\n this.scale = 1;\n }\n\n this.previewClick = false;\n },\n onMaskKeydown(event) {\n switch (event.code) {\n case 'Escape':\n this.hidePreview();\n setTimeout(() => {\n focus(this.$refs.previewButton);\n }, 200);\n event.preventDefault();\n\n break;\n\n default:\n break;\n }\n },\n onError() {\n this.$emit('error');\n },\n rotateRight() {\n this.rotate += 90;\n this.previewClick = true;\n },\n rotateLeft() {\n this.rotate -= 90;\n this.previewClick = true;\n },\n zoomIn() {\n this.scale = this.scale + 0.1;\n this.previewClick = true;\n },\n zoomOut() {\n this.scale = this.scale - 0.1;\n this.previewClick = true;\n },\n onBeforeEnter() {\n ZIndex.set('modal', this.mask, this.$primevue.config.zIndex.modal);\n },\n onEnter() {\n this.focus();\n this.$emit('show');\n },\n onBeforeLeave() {\n !this.isUnstyled && addClass(this.mask, 'p-overlay-mask-leave');\n },\n onLeave() {\n unblockBodyScroll();\n this.$emit('hide');\n },\n onAfterLeave(el) {\n ZIndex.clear(el);\n this.maskVisible = false;\n },\n focus() {\n let focusTarget = this.mask.querySelector('[autofocus]');\n\n if (focusTarget) {\n focusTarget.focus();\n }\n },\n hidePreview() {\n this.previewVisible = false;\n this.rotate = 0;\n this.scale = 1;\n unblockBodyScroll();\n }\n },\n computed: {\n containerClass() {\n return [this.cx('root'), this.class];\n },\n rotateClass() {\n return 'p-image-preview-rotate-' + this.rotate;\n },\n imagePreviewStyle() {\n return { transform: 'rotate(' + this.rotate + 'deg) scale(' + this.scale + ')' };\n },\n isZoomInDisabled() {\n return this.zoomInDisabled || this.scale >= 1.5;\n },\n isZoomOutDisabled() {\n return this.zoomOutDisabled || this.scale <= 0.5;\n },\n rightAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.rotateRight : undefined;\n },\n leftAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.rotateLeft : undefined;\n },\n zoomInAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.zoomIn : undefined;\n },\n zoomOutAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.zoomOut : undefined;\n },\n zoomImageAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.zoomImage : undefined;\n },\n closeAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.close : undefined;\n }\n },\n components: {\n Portal: Portal,\n EyeIcon: EyeIcon,\n RefreshIcon: RefreshIcon,\n UndoIcon: UndoIcon,\n SearchMinusIcon: SearchMinusIcon,\n SearchPlusIcon: SearchPlusIcon,\n TimesIcon: TimesIcon\n },\n directives: {\n focustrap: FocusTrap\n }\n};\n</script>\n","<template>\n <span :class=\"containerClass\" :style=\"style\" v-bind=\"ptmi('root')\">\n <slot name=\"image\" :errorCallback=\"onError\">\n <img :style=\"imageStyle\" :class=\"imageClass\" @error=\"onError\" v-bind=\"{ ...$attrs, ...ptm('image') }\" />\n </slot>\n <button v-if=\"preview\" ref=\"previewButton\" :aria-label=\"zoomImageAriaLabel\" type=\"button\" :class=\"cx('previewMask')\" @click=\"onImageClick\" v-bind=\"{ ...previewButtonProps, ...ptm('previewMask') }\">\n <!-- TODO: indicator* deprecated since v4.0-->\n <slot :name=\"$slots.previewicon ? 'previewicon' : 'indicatoricon'\">\n <component :is=\"previewIcon || indicatorIcon ? 'i' : 'EyeIcon'\" :class=\"cx('previewIcon')\" v-bind=\"ptm('previewIcon')\" />\n </slot>\n </button>\n <Portal>\n <div v-if=\"maskVisible\" :ref=\"maskRef\" v-focustrap role=\"dialog\" :class=\"cx('mask')\" :aria-modal=\"maskVisible\" @click=\"onMaskClick\" @keydown=\"onMaskKeydown\" v-bind=\"ptm('mask')\">\n <div :class=\"cx('toolbar')\" v-bind=\"ptm('toolbar')\">\n <button :class=\"cx('rotateRightButton')\" @click=\"rotateRight\" type=\"button\" :aria-label=\"rightAriaLabel\" v-bind=\"ptm('rotateRightButton')\" data-pc-group-section=\"action\">\n <slot name=\"refresh\">\n <RefreshIcon v-bind=\"ptm('rotateRightIcon')\" />\n </slot>\n </button>\n\n <button :class=\"cx('rotateLeftButton')\" @click=\"rotateLeft\" type=\"button\" :aria-label=\"leftAriaLabel\" v-bind=\"ptm('rotateLeftButton')\" data-pc-group-section=\"action\">\n <slot name=\"undo\">\n <UndoIcon v-bind=\"ptm('rotateLeftIcon')\" />\n </slot>\n </button>\n\n <button :class=\"cx('zoomOutButton')\" @click=\"zoomOut\" type=\"button\" :disabled=\"isZoomOutDisabled\" :aria-label=\"zoomOutAriaLabel\" v-bind=\"ptm('zoomOutButton')\" data-pc-group-section=\"action\">\n <slot name=\"zoomout\">\n <SearchMinusIcon v-bind=\"ptm('zoomOutIcon')\" />\n </slot>\n </button>\n\n <button :class=\"cx('zoomInButton')\" @click=\"zoomIn\" type=\"button\" :disabled=\"isZoomInDisabled\" :aria-label=\"zoomInAriaLabel\" v-bind=\"ptm('zoomInButton')\" data-pc-group-section=\"action\">\n <slot name=\"zoomin\">\n <SearchPlusIcon v-bind=\"ptm('zoomInIcon')\" />\n </slot>\n </button>\n\n <button :class=\"cx('closeButton')\" type=\"button\" @click=\"hidePreview\" :aria-label=\"closeAriaLabel\" autofocus v-bind=\"ptm('closeButton')\" data-pc-group-section=\"action\">\n <slot name=\"close\">\n <TimesIcon v-bind=\"ptm('closeIcon')\" />\n </slot>\n </button>\n </div>\n <transition name=\"p-image-original\" @before-enter=\"onBeforeEnter\" @enter=\"onEnter\" @leave=\"onLeave\" @before-leave=\"onBeforeLeave\" @after-leave=\"onAfterLeave\" v-bind=\"ptm('transition')\">\n <div v-if=\"previewVisible\" v-bind=\"ptm('originalContainer')\">\n <!-- TODO: preview deprecated since v4.0-->\n <slot :name=\"$slots.original ? 'original' : 'preview'\" :class=\"cx('original')\" :style=\"imagePreviewStyle\" :previewCallback=\"onPreviewImageClick\">\n <img :src=\"$attrs.src\" :class=\"cx('original')\" :style=\"imagePreviewStyle\" @click=\"onPreviewImageClick\" v-bind=\"ptm('original')\" />\n </slot>\n </div>\n </transition>\n </div>\n </Portal>\n </span>\n</template>\n\n<script>\nimport { addClass, focus, isAttributeEquals } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport EyeIcon from '@primevue/icons/eye';\nimport RefreshIcon from '@primevue/icons/refresh';\nimport SearchMinusIcon from '@primevue/icons/searchminus';\nimport SearchPlusIcon from '@primevue/icons/searchplus';\nimport TimesIcon from '@primevue/icons/times';\nimport UndoIcon from '@primevue/icons/undo';\nimport FocusTrap from 'primevue/focustrap';\nimport Portal from 'primevue/portal';\nimport { blockBodyScroll, unblockBodyScroll } from 'primevue/utils';\nimport BaseImage from './BaseImage.vue';\n\nexport default {\n name: 'Image',\n extends: BaseImage,\n inheritAttrs: false,\n emits: ['show', 'hide', 'error'],\n mask: null,\n data() {\n return {\n maskVisible: false,\n previewVisible: false,\n rotate: 0,\n scale: 1\n };\n },\n beforeUnmount() {\n if (this.mask) {\n ZIndex.clear(this.container);\n }\n },\n methods: {\n maskRef(el) {\n this.mask = el;\n },\n toolbarRef(el) {\n this.toolbarRef = el;\n },\n onImageClick() {\n if (this.preview) {\n blockBodyScroll();\n this.maskVisible = true;\n setTimeout(() => {\n this.previewVisible = true;\n }, 25);\n }\n },\n onPreviewImageClick() {\n this.previewClick = true;\n },\n onMaskClick(event) {\n const isBarActionsClicked = isAttributeEquals(event.target, 'data-pc-section-group', 'action') || event.target.closest('[data-pc-section-group=\"action\"]');\n\n if (!this.previewClick && !isBarActionsClicked) {\n this.previewVisible = false;\n this.rotate = 0;\n this.scale = 1;\n }\n\n this.previewClick = false;\n },\n onMaskKeydown(event) {\n switch (event.code) {\n case 'Escape':\n this.hidePreview();\n setTimeout(() => {\n focus(this.$refs.previewButton);\n }, 200);\n event.preventDefault();\n\n break;\n\n default:\n break;\n }\n },\n onError() {\n this.$emit('error');\n },\n rotateRight() {\n this.rotate += 90;\n this.previewClick = true;\n },\n rotateLeft() {\n this.rotate -= 90;\n this.previewClick = true;\n },\n zoomIn() {\n this.scale = this.scale + 0.1;\n this.previewClick = true;\n },\n zoomOut() {\n this.scale = this.scale - 0.1;\n this.previewClick = true;\n },\n onBeforeEnter() {\n ZIndex.set('modal', this.mask, this.$primevue.config.zIndex.modal);\n },\n onEnter() {\n this.focus();\n this.$emit('show');\n },\n onBeforeLeave() {\n !this.isUnstyled && addClass(this.mask, 'p-overlay-mask-leave');\n },\n onLeave() {\n unblockBodyScroll();\n this.$emit('hide');\n },\n onAfterLeave(el) {\n ZIndex.clear(el);\n this.maskVisible = false;\n },\n focus() {\n let focusTarget = this.mask.querySelector('[autofocus]');\n\n if (focusTarget) {\n focusTarget.focus();\n }\n },\n hidePreview() {\n this.previewVisible = false;\n this.rotate = 0;\n this.scale = 1;\n unblockBodyScroll();\n }\n },\n computed: {\n containerClass() {\n return [this.cx('root'), this.class];\n },\n rotateClass() {\n return 'p-image-preview-rotate-' + this.rotate;\n },\n imagePreviewStyle() {\n return { transform: 'rotate(' + this.rotate + 'deg) scale(' + this.scale + ')' };\n },\n isZoomInDisabled() {\n return this.zoomInDisabled || this.scale >= 1.5;\n },\n isZoomOutDisabled() {\n return this.zoomOutDisabled || this.scale <= 0.5;\n },\n rightAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.rotateRight : undefined;\n },\n leftAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.rotateLeft : undefined;\n },\n zoomInAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.zoomIn : undefined;\n },\n zoomOutAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.zoomOut : undefined;\n },\n zoomImageAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.zoomImage : undefined;\n },\n closeAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.close : undefined;\n }\n },\n components: {\n Portal: Portal,\n EyeIcon: EyeIcon,\n RefreshIcon: RefreshIcon,\n UndoIcon: UndoIcon,\n SearchMinusIcon: SearchMinusIcon,\n SearchPlusIcon: SearchPlusIcon,\n TimesIcon: TimesIcon\n },\n directives: {\n focustrap: FocusTrap\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","preview","type","Boolean","style","imageStyle","imageClass","previewButtonProps","indicatorIcon","String","undefined","previewIcon","zoomInDisabled","zoomOutDisabled","ImageStyle","provide","$pcImage","$parentInstance","BaseImage","inheritAttrs","emits","mask","data","maskVisible","previewVisible","rotate","scale","beforeUnmount","ZIndex","clear","container","methods","maskRef","el","toolbarRef","onImageClick","_this","blockBodyScroll","setTimeout","onPreviewImageClick","previewClick","onMaskClick","event","isBarActionsClicked","isAttributeEquals","target","closest","onMaskKeydown","_this2","code","hidePreview","focus","$refs","previewButton","preventDefault","onError","$emit","rotateRight","rotateLeft","zoomIn","zoomOut","onBeforeEnter","set","$primevue","config","zIndex","modal","onEnter","onBeforeLeave","isUnstyled","addClass","onLeave","unblockBodyScroll","onAfterLeave","focusTarget","querySelector","computed","containerClass","cx","rotateClass","imagePreviewStyle","transform","isZoomInDisabled","isZoomOutDisabled","rightAriaLabel","locale","aria","leftAriaLabel","zoomInAriaLabel","zoomOutAriaLabel","zoomImageAriaLabel","zoomImage","closeAriaLabel","close","components","Portal","EyeIcon","RefreshIcon","UndoIcon","SearchMinusIcon","SearchPlusIcon","TimesIcon","directives","focustrap","FocusTrap","_openBlock","_createElementBlock","_mergeProps","$options","_ctx","ptmi","_renderSlot","$slots","errorCallback","_createElementVNode","apply","arguments","_objectSpread","$attrs","ptm","ref","onClick","previewicon","_createBlock","_resolveDynamicComponent","_createVNode","_component_Portal","$data","_withDirectives","role","onKeydown","_component_RefreshIcon","_component_UndoIcon","disabled","_component_SearchMinusIcon","_component_SearchPlusIcon","autofocus","_component_TimesIcon","_Transition","original","previewCallback","src","_hoisted_8"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/image/BaseImage.vue","../../src/image/Image.vue","../../src/image/Image.vue?vue&type=template&id=16c5f758&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport ImageStyle from 'primevue/image/style';\n\nexport default {\n name: 'BaseImage',\n extends: BaseComponent,\n props: {\n preview: {\n type: Boolean,\n default: false\n },\n class: {\n type: null,\n default: null\n },\n style: {\n type: null,\n default: null\n },\n imageStyle: {\n type: null,\n default: null\n },\n imageClass: {\n type: null,\n default: null\n },\n previewButtonProps: {\n type: null,\n default: null\n },\n indicatorIcon: {\n type: String,\n default: undefined\n },\n previewIcon: {\n type: String,\n default: undefined\n },\n zoomInDisabled: {\n type: Boolean,\n default: false\n },\n zoomOutDisabled: {\n type: Boolean,\n default: false\n }\n },\n style: ImageStyle,\n provide() {\n return {\n $pcImage: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <span :class=\"containerClass\" :style=\"style\" v-bind=\"ptmi('root')\">\n <slot name=\"image\" :errorCallback=\"onError\">\n <img :style=\"imageStyle\" :class=\"imageClass\" @error=\"onError\" v-bind=\"{ ...$attrs, ...ptm('image') }\" />\n </slot>\n <button v-if=\"preview\" ref=\"previewButton\" :aria-label=\"zoomImageAriaLabel\" type=\"button\" :class=\"cx('previewMask')\" @click=\"onImageClick\" v-bind=\"{ ...previewButtonProps, ...ptm('previewMask') }\">\n <!-- TODO: indicator* deprecated since v4.0-->\n <slot :name=\"$slots.previewicon ? 'previewicon' : 'indicatoricon'\">\n <component :is=\"previewIcon || indicatorIcon ? 'i' : 'EyeIcon'\" :class=\"[cx('previewIcon'), previewIcon]\" v-bind=\"ptm('previewIcon')\" />\n </slot>\n </button>\n <Portal>\n <div v-if=\"maskVisible\" :ref=\"maskRef\" v-focustrap role=\"dialog\" :class=\"cx('mask')\" :aria-modal=\"maskVisible\" @click=\"onMaskClick\" @keydown=\"onMaskKeydown\" v-bind=\"ptm('mask')\">\n <div :class=\"cx('toolbar')\" v-bind=\"ptm('toolbar')\">\n <button :class=\"cx('rotateRightButton')\" @click=\"rotateRight\" type=\"button\" :aria-label=\"rightAriaLabel\" v-bind=\"ptm('rotateRightButton')\" data-pc-group-section=\"action\">\n <slot name=\"refresh\">\n <RefreshIcon v-bind=\"ptm('rotateRightIcon')\" />\n </slot>\n </button>\n\n <button :class=\"cx('rotateLeftButton')\" @click=\"rotateLeft\" type=\"button\" :aria-label=\"leftAriaLabel\" v-bind=\"ptm('rotateLeftButton')\" data-pc-group-section=\"action\">\n <slot name=\"undo\">\n <UndoIcon v-bind=\"ptm('rotateLeftIcon')\" />\n </slot>\n </button>\n\n <button :class=\"cx('zoomOutButton')\" @click=\"zoomOut\" type=\"button\" :disabled=\"isZoomOutDisabled\" :aria-label=\"zoomOutAriaLabel\" v-bind=\"ptm('zoomOutButton')\" data-pc-group-section=\"action\">\n <slot name=\"zoomout\">\n <SearchMinusIcon v-bind=\"ptm('zoomOutIcon')\" />\n </slot>\n </button>\n\n <button :class=\"cx('zoomInButton')\" @click=\"zoomIn\" type=\"button\" :disabled=\"isZoomInDisabled\" :aria-label=\"zoomInAriaLabel\" v-bind=\"ptm('zoomInButton')\" data-pc-group-section=\"action\">\n <slot name=\"zoomin\">\n <SearchPlusIcon v-bind=\"ptm('zoomInIcon')\" />\n </slot>\n </button>\n\n <button :class=\"cx('closeButton')\" type=\"button\" @click=\"hidePreview\" :aria-label=\"closeAriaLabel\" autofocus v-bind=\"ptm('closeButton')\" data-pc-group-section=\"action\">\n <slot name=\"close\">\n <TimesIcon v-bind=\"ptm('closeIcon')\" />\n </slot>\n </button>\n </div>\n <transition name=\"p-image-original\" @before-enter=\"onBeforeEnter\" @enter=\"onEnter\" @leave=\"onLeave\" @before-leave=\"onBeforeLeave\" @after-leave=\"onAfterLeave\" v-bind=\"ptm('transition')\">\n <div v-if=\"previewVisible\" v-bind=\"ptm('originalContainer')\">\n <!-- TODO: preview deprecated since v4.0-->\n <slot :name=\"$slots.original ? 'original' : 'preview'\" :class=\"cx('original')\" :style=\"imagePreviewStyle\" :previewCallback=\"onPreviewImageClick\">\n <img :src=\"$attrs.src\" :class=\"cx('original')\" :style=\"imagePreviewStyle\" @click=\"onPreviewImageClick\" v-bind=\"ptm('original')\" />\n </slot>\n </div>\n </transition>\n </div>\n </Portal>\n </span>\n</template>\n\n<script>\nimport { addClass, focus, isAttributeEquals } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport EyeIcon from '@primevue/icons/eye';\nimport RefreshIcon from '@primevue/icons/refresh';\nimport SearchMinusIcon from '@primevue/icons/searchminus';\nimport SearchPlusIcon from '@primevue/icons/searchplus';\nimport TimesIcon from '@primevue/icons/times';\nimport UndoIcon from '@primevue/icons/undo';\nimport FocusTrap from 'primevue/focustrap';\nimport Portal from 'primevue/portal';\nimport { blockBodyScroll, unblockBodyScroll } from 'primevue/utils';\nimport BaseImage from './BaseImage.vue';\n\nexport default {\n name: 'Image',\n extends: BaseImage,\n inheritAttrs: false,\n emits: ['show', 'hide', 'error'],\n mask: null,\n data() {\n return {\n maskVisible: false,\n previewVisible: false,\n rotate: 0,\n scale: 1\n };\n },\n beforeUnmount() {\n if (this.mask) {\n ZIndex.clear(this.container);\n }\n },\n methods: {\n maskRef(el) {\n this.mask = el;\n },\n toolbarRef(el) {\n this.toolbarRef = el;\n },\n onImageClick() {\n if (this.preview) {\n blockBodyScroll();\n this.maskVisible = true;\n setTimeout(() => {\n this.previewVisible = true;\n }, 25);\n }\n },\n onPreviewImageClick() {\n this.previewClick = true;\n },\n onMaskClick(event) {\n const isBarActionsClicked = isAttributeEquals(event.target, 'data-pc-section-group', 'action') || event.target.closest('[data-pc-section-group=\"action\"]');\n\n if (!this.previewClick && !isBarActionsClicked) {\n this.previewVisible = false;\n this.rotate = 0;\n this.scale = 1;\n }\n\n this.previewClick = false;\n },\n onMaskKeydown(event) {\n switch (event.code) {\n case 'Escape':\n this.hidePreview();\n setTimeout(() => {\n focus(this.$refs.previewButton);\n }, 200);\n event.preventDefault();\n\n break;\n\n default:\n break;\n }\n },\n onError() {\n this.$emit('error');\n },\n rotateRight() {\n this.rotate += 90;\n this.previewClick = true;\n },\n rotateLeft() {\n this.rotate -= 90;\n this.previewClick = true;\n },\n zoomIn() {\n this.scale = this.scale + 0.1;\n this.previewClick = true;\n },\n zoomOut() {\n this.scale = this.scale - 0.1;\n this.previewClick = true;\n },\n onBeforeEnter() {\n ZIndex.set('modal', this.mask, this.$primevue.config.zIndex.modal);\n },\n onEnter() {\n this.focus();\n this.$emit('show');\n },\n onBeforeLeave() {\n !this.isUnstyled && addClass(this.mask, 'p-overlay-mask-leave');\n },\n onLeave() {\n unblockBodyScroll();\n this.$emit('hide');\n },\n onAfterLeave(el) {\n ZIndex.clear(el);\n this.maskVisible = false;\n },\n focus() {\n let focusTarget = this.mask.querySelector('[autofocus]');\n\n if (focusTarget) {\n focusTarget.focus();\n }\n },\n hidePreview() {\n this.previewVisible = false;\n this.rotate = 0;\n this.scale = 1;\n unblockBodyScroll();\n }\n },\n computed: {\n containerClass() {\n return [this.cx('root'), this.class];\n },\n rotateClass() {\n return 'p-image-preview-rotate-' + this.rotate;\n },\n imagePreviewStyle() {\n return { transform: 'rotate(' + this.rotate + 'deg) scale(' + this.scale + ')' };\n },\n isZoomInDisabled() {\n return this.zoomInDisabled || this.scale >= 1.5;\n },\n isZoomOutDisabled() {\n return this.zoomOutDisabled || this.scale <= 0.5;\n },\n rightAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.rotateRight : undefined;\n },\n leftAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.rotateLeft : undefined;\n },\n zoomInAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.zoomIn : undefined;\n },\n zoomOutAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.zoomOut : undefined;\n },\n zoomImageAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.zoomImage : undefined;\n },\n closeAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.close : undefined;\n }\n },\n components: {\n Portal: Portal,\n EyeIcon: EyeIcon,\n RefreshIcon: RefreshIcon,\n UndoIcon: UndoIcon,\n SearchMinusIcon: SearchMinusIcon,\n SearchPlusIcon: SearchPlusIcon,\n TimesIcon: TimesIcon\n },\n directives: {\n focustrap: FocusTrap\n }\n};\n</script>\n","<template>\n <span :class=\"containerClass\" :style=\"style\" v-bind=\"ptmi('root')\">\n <slot name=\"image\" :errorCallback=\"onError\">\n <img :style=\"imageStyle\" :class=\"imageClass\" @error=\"onError\" v-bind=\"{ ...$attrs, ...ptm('image') }\" />\n </slot>\n <button v-if=\"preview\" ref=\"previewButton\" :aria-label=\"zoomImageAriaLabel\" type=\"button\" :class=\"cx('previewMask')\" @click=\"onImageClick\" v-bind=\"{ ...previewButtonProps, ...ptm('previewMask') }\">\n <!-- TODO: indicator* deprecated since v4.0-->\n <slot :name=\"$slots.previewicon ? 'previewicon' : 'indicatoricon'\">\n <component :is=\"previewIcon || indicatorIcon ? 'i' : 'EyeIcon'\" :class=\"[cx('previewIcon'), previewIcon]\" v-bind=\"ptm('previewIcon')\" />\n </slot>\n </button>\n <Portal>\n <div v-if=\"maskVisible\" :ref=\"maskRef\" v-focustrap role=\"dialog\" :class=\"cx('mask')\" :aria-modal=\"maskVisible\" @click=\"onMaskClick\" @keydown=\"onMaskKeydown\" v-bind=\"ptm('mask')\">\n <div :class=\"cx('toolbar')\" v-bind=\"ptm('toolbar')\">\n <button :class=\"cx('rotateRightButton')\" @click=\"rotateRight\" type=\"button\" :aria-label=\"rightAriaLabel\" v-bind=\"ptm('rotateRightButton')\" data-pc-group-section=\"action\">\n <slot name=\"refresh\">\n <RefreshIcon v-bind=\"ptm('rotateRightIcon')\" />\n </slot>\n </button>\n\n <button :class=\"cx('rotateLeftButton')\" @click=\"rotateLeft\" type=\"button\" :aria-label=\"leftAriaLabel\" v-bind=\"ptm('rotateLeftButton')\" data-pc-group-section=\"action\">\n <slot name=\"undo\">\n <UndoIcon v-bind=\"ptm('rotateLeftIcon')\" />\n </slot>\n </button>\n\n <button :class=\"cx('zoomOutButton')\" @click=\"zoomOut\" type=\"button\" :disabled=\"isZoomOutDisabled\" :aria-label=\"zoomOutAriaLabel\" v-bind=\"ptm('zoomOutButton')\" data-pc-group-section=\"action\">\n <slot name=\"zoomout\">\n <SearchMinusIcon v-bind=\"ptm('zoomOutIcon')\" />\n </slot>\n </button>\n\n <button :class=\"cx('zoomInButton')\" @click=\"zoomIn\" type=\"button\" :disabled=\"isZoomInDisabled\" :aria-label=\"zoomInAriaLabel\" v-bind=\"ptm('zoomInButton')\" data-pc-group-section=\"action\">\n <slot name=\"zoomin\">\n <SearchPlusIcon v-bind=\"ptm('zoomInIcon')\" />\n </slot>\n </button>\n\n <button :class=\"cx('closeButton')\" type=\"button\" @click=\"hidePreview\" :aria-label=\"closeAriaLabel\" autofocus v-bind=\"ptm('closeButton')\" data-pc-group-section=\"action\">\n <slot name=\"close\">\n <TimesIcon v-bind=\"ptm('closeIcon')\" />\n </slot>\n </button>\n </div>\n <transition name=\"p-image-original\" @before-enter=\"onBeforeEnter\" @enter=\"onEnter\" @leave=\"onLeave\" @before-leave=\"onBeforeLeave\" @after-leave=\"onAfterLeave\" v-bind=\"ptm('transition')\">\n <div v-if=\"previewVisible\" v-bind=\"ptm('originalContainer')\">\n <!-- TODO: preview deprecated since v4.0-->\n <slot :name=\"$slots.original ? 'original' : 'preview'\" :class=\"cx('original')\" :style=\"imagePreviewStyle\" :previewCallback=\"onPreviewImageClick\">\n <img :src=\"$attrs.src\" :class=\"cx('original')\" :style=\"imagePreviewStyle\" @click=\"onPreviewImageClick\" v-bind=\"ptm('original')\" />\n </slot>\n </div>\n </transition>\n </div>\n </Portal>\n </span>\n</template>\n\n<script>\nimport { addClass, focus, isAttributeEquals } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport EyeIcon from '@primevue/icons/eye';\nimport RefreshIcon from '@primevue/icons/refresh';\nimport SearchMinusIcon from '@primevue/icons/searchminus';\nimport SearchPlusIcon from '@primevue/icons/searchplus';\nimport TimesIcon from '@primevue/icons/times';\nimport UndoIcon from '@primevue/icons/undo';\nimport FocusTrap from 'primevue/focustrap';\nimport Portal from 'primevue/portal';\nimport { blockBodyScroll, unblockBodyScroll } from 'primevue/utils';\nimport BaseImage from './BaseImage.vue';\n\nexport default {\n name: 'Image',\n extends: BaseImage,\n inheritAttrs: false,\n emits: ['show', 'hide', 'error'],\n mask: null,\n data() {\n return {\n maskVisible: false,\n previewVisible: false,\n rotate: 0,\n scale: 1\n };\n },\n beforeUnmount() {\n if (this.mask) {\n ZIndex.clear(this.container);\n }\n },\n methods: {\n maskRef(el) {\n this.mask = el;\n },\n toolbarRef(el) {\n this.toolbarRef = el;\n },\n onImageClick() {\n if (this.preview) {\n blockBodyScroll();\n this.maskVisible = true;\n setTimeout(() => {\n this.previewVisible = true;\n }, 25);\n }\n },\n onPreviewImageClick() {\n this.previewClick = true;\n },\n onMaskClick(event) {\n const isBarActionsClicked = isAttributeEquals(event.target, 'data-pc-section-group', 'action') || event.target.closest('[data-pc-section-group=\"action\"]');\n\n if (!this.previewClick && !isBarActionsClicked) {\n this.previewVisible = false;\n this.rotate = 0;\n this.scale = 1;\n }\n\n this.previewClick = false;\n },\n onMaskKeydown(event) {\n switch (event.code) {\n case 'Escape':\n this.hidePreview();\n setTimeout(() => {\n focus(this.$refs.previewButton);\n }, 200);\n event.preventDefault();\n\n break;\n\n default:\n break;\n }\n },\n onError() {\n this.$emit('error');\n },\n rotateRight() {\n this.rotate += 90;\n this.previewClick = true;\n },\n rotateLeft() {\n this.rotate -= 90;\n this.previewClick = true;\n },\n zoomIn() {\n this.scale = this.scale + 0.1;\n this.previewClick = true;\n },\n zoomOut() {\n this.scale = this.scale - 0.1;\n this.previewClick = true;\n },\n onBeforeEnter() {\n ZIndex.set('modal', this.mask, this.$primevue.config.zIndex.modal);\n },\n onEnter() {\n this.focus();\n this.$emit('show');\n },\n onBeforeLeave() {\n !this.isUnstyled && addClass(this.mask, 'p-overlay-mask-leave');\n },\n onLeave() {\n unblockBodyScroll();\n this.$emit('hide');\n },\n onAfterLeave(el) {\n ZIndex.clear(el);\n this.maskVisible = false;\n },\n focus() {\n let focusTarget = this.mask.querySelector('[autofocus]');\n\n if (focusTarget) {\n focusTarget.focus();\n }\n },\n hidePreview() {\n this.previewVisible = false;\n this.rotate = 0;\n this.scale = 1;\n unblockBodyScroll();\n }\n },\n computed: {\n containerClass() {\n return [this.cx('root'), this.class];\n },\n rotateClass() {\n return 'p-image-preview-rotate-' + this.rotate;\n },\n imagePreviewStyle() {\n return { transform: 'rotate(' + this.rotate + 'deg) scale(' + this.scale + ')' };\n },\n isZoomInDisabled() {\n return this.zoomInDisabled || this.scale >= 1.5;\n },\n isZoomOutDisabled() {\n return this.zoomOutDisabled || this.scale <= 0.5;\n },\n rightAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.rotateRight : undefined;\n },\n leftAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.rotateLeft : undefined;\n },\n zoomInAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.zoomIn : undefined;\n },\n zoomOutAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.zoomOut : undefined;\n },\n zoomImageAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.zoomImage : undefined;\n },\n closeAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.close : undefined;\n }\n },\n components: {\n Portal: Portal,\n EyeIcon: EyeIcon,\n RefreshIcon: RefreshIcon,\n UndoIcon: UndoIcon,\n SearchMinusIcon: SearchMinusIcon,\n SearchPlusIcon: SearchPlusIcon,\n TimesIcon: TimesIcon\n },\n directives: {\n focustrap: FocusTrap\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","preview","type","Boolean","style","imageStyle","imageClass","previewButtonProps","indicatorIcon","String","undefined","previewIcon","zoomInDisabled","zoomOutDisabled","ImageStyle","provide","$pcImage","$parentInstance","BaseImage","inheritAttrs","emits","mask","data","maskVisible","previewVisible","rotate","scale","beforeUnmount","ZIndex","clear","container","methods","maskRef","el","toolbarRef","onImageClick","_this","blockBodyScroll","setTimeout","onPreviewImageClick","previewClick","onMaskClick","event","isBarActionsClicked","isAttributeEquals","target","closest","onMaskKeydown","_this2","code","hidePreview","focus","$refs","previewButton","preventDefault","onError","$emit","rotateRight","rotateLeft","zoomIn","zoomOut","onBeforeEnter","set","$primevue","config","zIndex","modal","onEnter","onBeforeLeave","isUnstyled","addClass","onLeave","unblockBodyScroll","onAfterLeave","focusTarget","querySelector","computed","containerClass","cx","rotateClass","imagePreviewStyle","transform","isZoomInDisabled","isZoomOutDisabled","rightAriaLabel","locale","aria","leftAriaLabel","zoomInAriaLabel","zoomOutAriaLabel","zoomImageAriaLabel","zoomImage","closeAriaLabel","close","components","Portal","EyeIcon","RefreshIcon","UndoIcon","SearchMinusIcon","SearchPlusIcon","TimesIcon","directives","focustrap","FocusTrap","_openBlock","_createElementBlock","_mergeProps","$options","_ctx","ptmi","_renderSlot","$slots","errorCallback","_createElementVNode","apply","arguments","_objectSpread","$attrs","ptm","ref","onClick","previewicon","_createBlock","_resolveDynamicComponent","_createVNode","_component_Portal","$data","_withDirectives","role","onKeydown","_component_RefreshIcon","_component_UndoIcon","disabled","_component_SearchMinusIcon","_component_SearchPlusIcon","autofocus","_component_TimesIcon","_Transition","original","previewCallback","src","_hoisted_8"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <div :class="cx('root')" aria-live="polite" v-bind="ptmi('root')">
3
- <div v-if="!d_active" ref="display" :class="cx('display')" :tabindex="$attrs.tabindex || '0'" role="button" @click="open" @keydown.enter="open" v-bind="{ ...displayProps, ...ptm('display') }">
3
+ <div v-if="!d_active" ref="display" :class="cx('display')" :tabindex="$attrs.tabindex || '0'" role="button" @click="open" @keydown.enter="open" :data-p-disabled="disabled" v-bind="{ ...displayProps, ...ptm('display') }">
4
4
  <slot name="display"></slot>
5
5
  </div>
6
6
  <div v-else :class="cx('content')" v-bind="ptm('content')">
package/inplace/index.mjs CHANGED
@@ -70,7 +70,7 @@ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t =
70
70
  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; }
71
71
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
72
72
  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); }
73
- var _hoisted_1 = ["tabindex"];
73
+ var _hoisted_1 = ["tabindex", "data-p-disabled"];
74
74
  function render(_ctx, _cache, $props, $setup, $data, $options) {
75
75
  return openBlock(), createElementBlock("div", mergeProps({
76
76
  "class": _ctx.cx('root'),
@@ -86,7 +86,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
86
86
  }),
87
87
  onKeydown: _cache[1] || (_cache[1] = withKeys(function () {
88
88
  return $options.open && $options.open.apply($options, arguments);
89
- }, ["enter"]))
89
+ }, ["enter"])),
90
+ "data-p-disabled": _ctx.disabled
90
91
  }, _objectSpread(_objectSpread({}, _ctx.displayProps), _ctx.ptm('display'))), [renderSlot(_ctx.$slots, "display")], 16, _hoisted_1)) : (openBlock(), createElementBlock("div", mergeProps({
91
92
  key: 1,
92
93
  "class": _ctx.cx('content')
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/inplace/BaseInplace.vue","../../src/inplace/Inplace.vue","../../src/inplace/Inplace.vue?vue&type=template&id=541bf5a8&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport InplaceStyle from 'primevue/inplace/style';\n\nexport default {\n name: 'BaseInplace',\n extends: BaseComponent,\n props: {\n active: {\n type: Boolean,\n default: false\n },\n disabled: {\n type: Boolean,\n default: false\n },\n displayProps: {\n type: null,\n default: null\n }\n },\n style: InplaceStyle,\n provide() {\n return {\n $pcInplace: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" aria-live=\"polite\" v-bind=\"ptmi('root')\">\n <div v-if=\"!d_active\" ref=\"display\" :class=\"cx('display')\" :tabindex=\"$attrs.tabindex || '0'\" role=\"button\" @click=\"open\" @keydown.enter=\"open\" v-bind=\"{ ...displayProps, ...ptm('display') }\">\n <slot name=\"display\"></slot>\n </div>\n <div v-else :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <slot name=\"content\" :closeCallback=\"close\" />\n </div>\n </div>\n</template>\n\n<script>\nimport BaseInplace from './BaseInplace.vue';\n\nexport default {\n name: 'Inplace',\n extends: BaseInplace,\n inheritAttrs: false,\n emits: ['open', 'close', 'update:active'],\n data() {\n return {\n d_active: this.active\n };\n },\n watch: {\n active(newValue) {\n this.d_active = newValue;\n }\n },\n methods: {\n open(event) {\n if (this.disabled) {\n return;\n }\n\n this.d_active = true;\n\n this.$emit('open', event);\n this.$emit('update:active', true);\n },\n close(event) {\n this.d_active = false;\n\n this.$emit('close', event);\n this.$emit('update:active', false);\n\n setTimeout(() => {\n this.$refs.display.focus();\n }, 0);\n }\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" aria-live=\"polite\" v-bind=\"ptmi('root')\">\n <div v-if=\"!d_active\" ref=\"display\" :class=\"cx('display')\" :tabindex=\"$attrs.tabindex || '0'\" role=\"button\" @click=\"open\" @keydown.enter=\"open\" v-bind=\"{ ...displayProps, ...ptm('display') }\">\n <slot name=\"display\"></slot>\n </div>\n <div v-else :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <slot name=\"content\" :closeCallback=\"close\" />\n </div>\n </div>\n</template>\n\n<script>\nimport BaseInplace from './BaseInplace.vue';\n\nexport default {\n name: 'Inplace',\n extends: BaseInplace,\n inheritAttrs: false,\n emits: ['open', 'close', 'update:active'],\n data() {\n return {\n d_active: this.active\n };\n },\n watch: {\n active(newValue) {\n this.d_active = newValue;\n }\n },\n methods: {\n open(event) {\n if (this.disabled) {\n return;\n }\n\n this.d_active = true;\n\n this.$emit('open', event);\n this.$emit('update:active', true);\n },\n close(event) {\n this.d_active = false;\n\n this.$emit('close', event);\n this.$emit('update:active', false);\n\n setTimeout(() => {\n this.$refs.display.focus();\n }, 0);\n }\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","active","type","Boolean","disabled","displayProps","style","InplaceStyle","provide","$pcInplace","$parentInstance","BaseInplace","inheritAttrs","emits","data","d_active","watch","newValue","methods","open","event","$emit","close","_this","setTimeout","$refs","display","focus","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","ptmi","$data","ref","tabindex","$attrs","role","onClick","$options","apply","arguments","onKeydown","_objectSpread","ptm","_renderSlot","$slots","closeCallback"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/inplace/BaseInplace.vue","../../src/inplace/Inplace.vue","../../src/inplace/Inplace.vue?vue&type=template&id=6e283a4b&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport InplaceStyle from 'primevue/inplace/style';\n\nexport default {\n name: 'BaseInplace',\n extends: BaseComponent,\n props: {\n active: {\n type: Boolean,\n default: false\n },\n disabled: {\n type: Boolean,\n default: false\n },\n displayProps: {\n type: null,\n default: null\n }\n },\n style: InplaceStyle,\n provide() {\n return {\n $pcInplace: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" aria-live=\"polite\" v-bind=\"ptmi('root')\">\n <div v-if=\"!d_active\" ref=\"display\" :class=\"cx('display')\" :tabindex=\"$attrs.tabindex || '0'\" role=\"button\" @click=\"open\" @keydown.enter=\"open\" :data-p-disabled=\"disabled\" v-bind=\"{ ...displayProps, ...ptm('display') }\">\n <slot name=\"display\"></slot>\n </div>\n <div v-else :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <slot name=\"content\" :closeCallback=\"close\" />\n </div>\n </div>\n</template>\n\n<script>\nimport BaseInplace from './BaseInplace.vue';\n\nexport default {\n name: 'Inplace',\n extends: BaseInplace,\n inheritAttrs: false,\n emits: ['open', 'close', 'update:active'],\n data() {\n return {\n d_active: this.active\n };\n },\n watch: {\n active(newValue) {\n this.d_active = newValue;\n }\n },\n methods: {\n open(event) {\n if (this.disabled) {\n return;\n }\n\n this.d_active = true;\n\n this.$emit('open', event);\n this.$emit('update:active', true);\n },\n close(event) {\n this.d_active = false;\n\n this.$emit('close', event);\n this.$emit('update:active', false);\n\n setTimeout(() => {\n this.$refs.display.focus();\n }, 0);\n }\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" aria-live=\"polite\" v-bind=\"ptmi('root')\">\n <div v-if=\"!d_active\" ref=\"display\" :class=\"cx('display')\" :tabindex=\"$attrs.tabindex || '0'\" role=\"button\" @click=\"open\" @keydown.enter=\"open\" :data-p-disabled=\"disabled\" v-bind=\"{ ...displayProps, ...ptm('display') }\">\n <slot name=\"display\"></slot>\n </div>\n <div v-else :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <slot name=\"content\" :closeCallback=\"close\" />\n </div>\n </div>\n</template>\n\n<script>\nimport BaseInplace from './BaseInplace.vue';\n\nexport default {\n name: 'Inplace',\n extends: BaseInplace,\n inheritAttrs: false,\n emits: ['open', 'close', 'update:active'],\n data() {\n return {\n d_active: this.active\n };\n },\n watch: {\n active(newValue) {\n this.d_active = newValue;\n }\n },\n methods: {\n open(event) {\n if (this.disabled) {\n return;\n }\n\n this.d_active = true;\n\n this.$emit('open', event);\n this.$emit('update:active', true);\n },\n close(event) {\n this.d_active = false;\n\n this.$emit('close', event);\n this.$emit('update:active', false);\n\n setTimeout(() => {\n this.$refs.display.focus();\n }, 0);\n }\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","active","type","Boolean","disabled","displayProps","style","InplaceStyle","provide","$pcInplace","$parentInstance","BaseInplace","inheritAttrs","emits","data","d_active","watch","newValue","methods","open","event","$emit","close","_this","setTimeout","$refs","display","focus","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","ptmi","$data","ref","tabindex","$attrs","role","onClick","$options","apply","arguments","onKeydown","_objectSpread","ptm","_renderSlot","$slots","closeCallback"],"mappings":"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"}
@@ -501,8 +501,8 @@ export default {
501
501
  },
502
502
  initMask() {
503
503
  this.tests = [];
504
- this.partialPosition = this.mask.length;
505
- this.len = this.mask.length;
504
+ this.partialPosition = this.mask ? this.mask.length : 0;
505
+ this.len = this.mask ? this.mask.length : 0;
506
506
  this.firstNonMaskPos = null;
507
507
  this.defs = {
508
508
  9: '[0-9]',
@@ -514,7 +514,7 @@ export default {
514
514
 
515
515
  this.androidChrome = /chrome/i.test(ua) && /android/i.test(ua);
516
516
 
517
- let maskTokens = this.mask.split('');
517
+ let maskTokens = this.mask ? this.mask.split('') : '';
518
518
 
519
519
  for (let i = 0; i < maskTokens.length; i++) {
520
520
  let c = maskTokens[i];
@@ -63,7 +63,7 @@ export interface InputMaskPassThroughOptions {
63
63
  * Used to pass attributes to the InputText component.
64
64
  * @see {@link InputTextPassThroughOptions}
65
65
  */
66
- root?: InputTextPassThroughOptions<InputMaskSharedPassThroughMethodOptions>;
66
+ root?: InputMaskPassThroughOptionType;
67
67
  /**
68
68
  * Used to pass attributes to the InputText component.
69
69
  * @see {@link InputTextPassThroughOptions}
@@ -106,11 +106,11 @@ export interface InputMaskProps {
106
106
  /**
107
107
  * Value of the component.
108
108
  */
109
- modelValue?: string | undefined;
109
+ modelValue?: string | undefined | null;
110
110
  /**
111
111
  * The default value for the input when not controlled by `modelValue`.
112
112
  */
113
- defaultValue?: string | undefined;
113
+ defaultValue?: string | undefined | null;
114
114
  /**
115
115
  * Placeholder character in mask, default is underscore.
116
116
  * @defaultValue _
@@ -458,8 +458,8 @@ var script = {
458
458
  },
459
459
  initMask: function initMask() {
460
460
  this.tests = [];
461
- this.partialPosition = this.mask.length;
462
- this.len = this.mask.length;
461
+ this.partialPosition = this.mask ? this.mask.length : 0;
462
+ this.len = this.mask ? this.mask.length : 0;
463
463
  this.firstNonMaskPos = null;
464
464
  this.defs = {
465
465
  9: '[0-9]',
@@ -468,7 +468,7 @@ var script = {
468
468
  };
469
469
  var ua = getUserAgent();
470
470
  this.androidChrome = /chrome/i.test(ua) && /android/i.test(ua);
471
- var maskTokens = this.mask.split('');
471
+ var maskTokens = this.mask ? this.mask.split('') : '';
472
472
  for (var i = 0; i < maskTokens.length; i++) {
473
473
  var c = maskTokens[i];
474
474
  if (c === '?') {