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.
- package/accordionheader/AccordionHeader.vue +1 -1
- package/accordionheader/index.d.ts +6 -1
- package/accordionheader/index.mjs +1 -1
- package/accordionheader/index.mjs.map +1 -1
- package/autocomplete/AutoComplete.vue +60 -11
- package/autocomplete/index.d.ts +4 -0
- package/autocomplete/index.mjs +96 -59
- package/autocomplete/index.mjs.map +1 -1
- package/cascadeselect/CascadeSelect.vue +4 -1
- package/cascadeselect/CascadeSelectSub.vue +1 -1
- package/cascadeselect/index.mjs +22 -20
- package/cascadeselect/index.mjs.map +1 -1
- package/checkbox/Checkbox.vue +1 -1
- package/checkbox/index.mjs +2 -1
- package/checkbox/index.mjs.map +1 -1
- package/chip/BaseChip.vue +1 -1
- package/chip/index.d.ts +1 -1
- package/chip/index.mjs +1 -1
- package/chip/index.mjs.map +1 -1
- package/colorpicker/ColorPicker.vue +5 -1
- package/colorpicker/index.mjs +5 -1
- package/colorpicker/index.mjs.map +1 -1
- package/confirmationoptions/index.d.ts +1 -1
- package/confirmdialog/index.d.ts +4 -0
- package/contextmenu/index.mjs +12 -12
- package/contextmenu/index.mjs.map +1 -1
- package/datatable/BodyCell.vue +1 -0
- package/datatable/ColumnFilter.vue +3 -3
- package/datatable/DataTable.vue +103 -44
- package/datatable/HeaderCheckbox.vue +2 -2
- package/datatable/RowCheckbox.vue +1 -1
- package/datatable/TableBody.vue +12 -1
- package/datatable/TableFooter.vue +9 -1
- package/datatable/TableHeader.vue +9 -2
- package/datatable/index.d.ts +37 -29
- package/datatable/index.mjs +175 -111
- package/datatable/index.mjs.map +1 -1
- package/datatable/style/index.mjs +4 -4
- package/datatable/style/index.mjs.map +1 -1
- package/dataview/DataView.vue +4 -0
- package/dataview/index.d.ts +63 -6
- package/dataview/index.mjs +6 -2
- package/dataview/index.mjs.map +1 -1
- package/datepicker/DatePicker.vue +379 -236
- package/datepicker/index.d.ts +156 -0
- package/datepicker/index.mjs +676 -406
- package/datepicker/index.mjs.map +1 -1
- package/drawer/Drawer.vue +30 -20
- package/drawer/index.d.ts +10 -0
- package/drawer/index.mjs +42 -25
- package/drawer/index.mjs.map +1 -1
- package/fileupload/FileUpload.vue +3 -4
- package/fileupload/index.mjs +8 -10
- package/fileupload/index.mjs.map +1 -1
- package/galleria/Galleria.vue +39 -3
- package/galleria/index.mjs +40 -3
- package/galleria/index.mjs.map +1 -1
- package/image/Image.vue +1 -1
- package/image/index.mjs +1 -1
- package/image/index.mjs.map +1 -1
- package/inplace/Inplace.vue +1 -1
- package/inplace/index.mjs +3 -2
- package/inplace/index.mjs.map +1 -1
- package/inputmask/InputMask.vue +3 -3
- package/inputmask/index.d.ts +3 -3
- package/inputmask/index.mjs +3 -3
- package/inputmask/index.mjs.map +1 -1
- package/inputnumber/BaseInputNumber.vue +4 -0
- package/inputnumber/InputNumber.vue +3 -10
- package/inputnumber/index.mjs +8 -9
- package/inputnumber/index.mjs.map +1 -1
- package/keyfilter/index.mjs +12 -19
- package/keyfilter/index.mjs.map +1 -1
- package/listbox/Listbox.vue +10 -2
- package/listbox/index.mjs +38 -29
- package/listbox/index.mjs.map +1 -1
- package/megamenu/index.d.ts +1 -1
- package/megamenu/index.mjs +11 -11
- package/megamenu/index.mjs.map +1 -1
- package/menu/Menu.vue +12 -6
- package/menu/Menuitem.vue +14 -4
- package/menu/index.d.ts +3 -12
- package/menu/index.mjs +40 -20
- package/menu/index.mjs.map +1 -1
- package/menubar/index.mjs +16 -16
- package/menubar/index.mjs.map +1 -1
- package/metergroup/MeterGroup.vue +9 -3
- package/metergroup/MeterGroupLabel.vue +10 -1
- package/metergroup/index.d.ts +1 -1
- package/metergroup/index.mjs +32 -7
- package/metergroup/index.mjs.map +1 -1
- package/multiselect/MultiSelect.vue +40 -6
- package/multiselect/index.d.ts +1 -1
- package/multiselect/index.mjs +100 -68
- package/multiselect/index.mjs.map +1 -1
- package/organizationchart/OrganizationChartNode.vue +1 -1
- package/organizationchart/index.mjs.map +1 -1
- package/organizationchart/style/index.mjs +11 -6
- package/organizationchart/style/index.mjs.map +1 -1
- package/package.json +6 -6
- package/paginator/Paginator.vue +2 -0
- package/paginator/index.d.ts +8 -0
- package/paginator/index.mjs +3 -1
- package/paginator/index.mjs.map +1 -1
- package/panel/Panel.vue +2 -2
- package/panel/index.mjs +2 -2
- package/panel/index.mjs.map +1 -1
- package/panelmenu/PanelMenuList.vue +1 -1
- package/panelmenu/index.mjs +4 -4
- package/panelmenu/index.mjs.map +1 -1
- package/password/Password.vue +28 -6
- package/password/index.mjs +44 -16
- package/password/index.mjs.map +1 -1
- package/popover/Popover.vue +1 -1
- package/popover/index.mjs +1 -2
- package/popover/index.mjs.map +1 -1
- package/progressbar/ProgressBar.vue +4 -4
- package/progressbar/index.mjs +8 -12
- package/progressbar/index.mjs.map +1 -1
- package/scrolltop/ScrollTop.vue +2 -2
- package/scrolltop/index.mjs +4 -2
- package/scrolltop/index.mjs.map +1 -1
- package/select/Select.vue +68 -13
- package/select/index.mjs +128 -77
- package/select/index.mjs.map +1 -1
- package/selectbutton/index.d.ts +0 -24
- package/splitter/Splitter.vue +10 -2
- package/splitter/index.d.ts +1 -1
- package/splitter/index.mjs +19 -7
- package/splitter/index.mjs.map +1 -1
- package/splitter/style/index.mjs +1 -13
- package/splitter/style/index.mjs.map +1 -1
- package/step/Step.vue +27 -9
- package/step/index.mjs +46 -16
- package/step/index.mjs.map +1 -1
- package/steppanel/StepPanel.vue +11 -5
- package/steppanel/index.d.ts +8 -0
- package/steppanel/index.mjs +25 -10
- package/steppanel/index.mjs.map +1 -1
- package/stepper/StepperSeparator.vue +5 -2
- package/tab/Tab.vue +4 -4
- package/tab/index.mjs +4 -4
- package/tab/index.mjs.map +1 -1
- package/tablist/TabList.vue +3 -0
- package/tablist/index.mjs +1 -0
- package/tablist/index.mjs.map +1 -1
- package/tabpanel/TabPanel.vue +2 -2
- package/tabpanel/index.mjs +2 -2
- package/tabpanel/index.mjs.map +1 -1
- package/tieredmenu/TieredMenu.vue +1 -1
- package/tieredmenu/index.mjs +13 -14
- package/tieredmenu/index.mjs.map +1 -1
- package/tooltip/index.mjs +47 -30
- package/tooltip/index.mjs.map +1 -1
- package/tree/Tree.vue +14 -2
- package/tree/TreeNode.vue +2 -2
- package/tree/index.mjs +28 -10
- package/tree/index.mjs.map +1 -1
- package/treeselect/TreeSelect.vue +4 -1
- package/treeselect/index.mjs +4 -2
- package/treeselect/index.mjs.map +1 -1
- package/umd/primevue.min.js +12213 -1
- package/virtualscroller/VirtualScroller.vue +13 -2
- package/virtualscroller/index.mjs +28 -18
- package/virtualscroller/index.mjs.map +1 -1
- package/virtualscroller/style/index.mjs +1 -1
- package/virtualscroller/style/index.mjs.map +1 -1
- 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 () {
|
package/image/index.mjs.map
CHANGED
|
@@ -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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"}
|
package/inplace/Inplace.vue
CHANGED
|
@@ -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')
|
package/inplace/index.mjs.map
CHANGED
|
@@ -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=
|
|
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":";;;;AAIA,eAAe;AACXA,EAAAA,IAAI,EAAE,aAAa;AACnB,EAAA,SAAA,EAASC,aAAa;AACtBC,EAAAA,KAAK,EAAE;AACHC,IAAAA,MAAM,EAAE;AACJC,MAAAA,IAAI,EAAEC,OAAO;MACb,SAAS,EAAA;KACZ;AACDC,IAAAA,QAAQ,EAAE;AACNF,MAAAA,IAAI,EAAEC,OAAO;MACb,SAAS,EAAA;KACZ;AACDE,IAAAA,YAAY,EAAE;AACVH,MAAAA,IAAI,EAAE,IAAI;MACV,SAAS,EAAA;AACb;GACH;AACDI,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;;ACdD,aAAe;AACXZ,EAAAA,IAAI,EAAE,SAAS;AACf,EAAA,SAAA,EAASa,QAAW;AACpBC,EAAAA,YAAY,EAAE,KAAK;AACnBC,EAAAA,KAAK,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,eAAe,CAAC;EACzCC,IAAI,EAAA,SAAJA,IAAIA,GAAG;IACH,OAAO;MACHC,QAAQ,EAAE,IAAI,CAACd;KAClB;GACJ;AACDe,EAAAA,KAAK,EAAE;AACHf,IAAAA,MAAM,EAANA,SAAAA,MAAMA,CAACgB,QAAQ,EAAE;MACb,IAAI,CAACF,QAAS,GAAEE,QAAQ;AAC5B;GACH;AACDC,EAAAA,OAAO,EAAE;AACLC,IAAAA,IAAI,EAAJA,SAAAA,IAAIA,CAACC,KAAK,EAAE;MACR,IAAI,IAAI,CAAChB,QAAQ,EAAE;AACf,QAAA;AACJ;MAEA,IAAI,CAACW,QAAS,GAAE,IAAI;AAEpB,MAAA,IAAI,CAACM,KAAK,CAAC,MAAM,EAAED,KAAK,CAAC;AACzB,MAAA,IAAI,CAACC,KAAK,CAAC,eAAe,EAAE,IAAI,CAAC;KACpC;AACDC,IAAAA,KAAK,EAALA,SAAAA,KAAKA,CAACF,KAAK,EAAE;AAAA,MAAA,IAAAG,KAAA,GAAA,IAAA;MACT,IAAI,CAACR,QAAS,GAAE,KAAK;AAErB,MAAA,IAAI,CAACM,KAAK,CAAC,OAAO,EAAED,KAAK,CAAC;AAC1B,MAAA,IAAI,CAACC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC;AAElCG,MAAAA,UAAU,CAAC,YAAM;AACbD,QAAAA,KAAI,CAACE,KAAK,CAACC,OAAO,CAACC,KAAK,EAAE;OAC7B,EAAE,CAAC,CAAC;AACT;AACJ;AACJ,CAAC;;;;;;;;;;EClDG,OAAAC,SAAA,EAAA,EAAAC,kBAAA,CAOK,OAPLC,UAOK,CAAA;AAPC,IAAA,OAAA,EAAOC,IAAE,CAAAC,EAAA,CAAA,MAAA,CAAA;AAAU,IAAA,WAAS,EAAC;KAAiBD,IAAI,CAAAE,IAAA,CAAA,MAAA,CAAA,CAAA,EAAA,EACxCC,KAAQ,CAAAnB,QAAA,IAApBa,SAAA,EAAA,EAAAC,kBAAA,CAEK,OAFLC,UAEK,CAAA;;AAFiBK,IAAAA,GAAG,EAAC,SAAQ;AAAG,IAAA,OAAA,EAAOJ,IAAE,CAAAC,EAAA,CAAA,SAAA,CAAA;AAAcI,IAAAA,QAAQ,EAAEL,IAAM,CAAAM,MAAA,CAACD,QAAS,IAAA,GAAA;AAAQE,IAAAA,IAAI,EAAC,QAAO;IAAGC,OAAK;aAAEC,QAAI,CAAArB,IAAA,IAAAqB,QAAA,CAAArB,IAAA,CAAAsB,KAAA,CAAAD,QAAA,EAAAE,SAAA,CAAA;AAAA,KAAA,CAAA;AAAGC,IAAAA,SAAO;aAAQH,QAAI,CAAArB,IAAA,IAAAqB,QAAA,CAAArB,IAAA,CAAAsB,KAAA,CAAAD,QAAA,EAAAE,SAAA,CAAA;AAAA,KAAA,EAAA,CAAA,OAAA,CAAA,CAAA,CAAA;IAAG,iBAAe,EAAEX,IAAQ,CAAA3B;AAAe,GAAA,EAAAwC,aAAA,CAAAA,aAAA,CAAAb,EAAAA,EAAAA,IAAA,CAAA1B,YAAY,CAAA,EAAK0B,IAAG,CAAAc,GAAA,CAAA,SAAA,CAAA,CAAA,CAAA,EAAA,CACzMC,UAA2B,CAAAf,IAAA,CAAAgB,MAAA,EAAA,SAAA,CAAA,uBAE/BnB,SAAA,EAAA,EAAAC,kBAAA,CAEK,OAFLC,UAEK,CAAA;;AAFQ,IAAA,OAAA,EAAOC,IAAE,CAAAC,EAAA,CAAA,SAAA;KAAqBD,IAAG,CAAAc,GAAA,CAAA,SAAA,CAAA,CAAA,EAAA,CAC1CC,UAA6C,CAAAf,IAAA,CAAAgB,MAAA,EAAA,SAAA,EAAA;IAAvBC,aAAa,EAAER,QAAK,CAAAlB;GAAA,CAAA;;;;;;;"}
|
package/inputmask/InputMask.vue
CHANGED
|
@@ -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];
|
package/inputmask/index.d.ts
CHANGED
|
@@ -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?:
|
|
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 _
|
package/inputmask/index.mjs
CHANGED
|
@@ -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 === '?') {
|