primevue 4.3.3 → 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 +4 -1
- package/autocomplete/index.d.ts +4 -0
- package/autocomplete/index.mjs +30 -27
- package/autocomplete/index.mjs.map +1 -1
- package/cascadeselect/CascadeSelect.vue +3 -0
- package/cascadeselect/CascadeSelectSub.vue +1 -1
- package/cascadeselect/index.mjs +21 -18
- package/cascadeselect/index.mjs.map +1 -1
- package/colorpicker/ColorPicker.vue +4 -0
- package/colorpicker/index.mjs +4 -0
- 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/ColumnFilter.vue +2 -2
- package/datatable/index.d.ts +2 -2
- package/datatable/index.mjs +12 -12
- package/datatable/index.mjs.map +1 -1
- package/datatable/style/index.mjs +4 -4
- package/datatable/style/index.mjs.map +1 -1
- package/dataview/index.d.ts +5 -5
- package/datepicker/DatePicker.vue +10 -3
- package/datepicker/index.mjs +69 -59
- package/datepicker/index.mjs.map +1 -1
- package/fileupload/FileUpload.vue +2 -3
- package/fileupload/index.mjs +6 -8
- package/fileupload/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/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/InputNumber.vue +1 -1
- package/inputnumber/index.mjs +2 -2
- package/inputnumber/index.mjs.map +1 -1
- package/inputtext/index.d.ts +2 -1
- package/listbox/Listbox.vue +1 -0
- package/listbox/index.mjs +27 -26
- 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 +4 -4
- package/menu/index.d.ts +3 -12
- package/menu/index.mjs +4 -4
- package/menu/index.mjs.map +1 -1
- package/menubar/index.mjs +16 -16
- package/menubar/index.mjs.map +1 -1
- package/metergroup/index.d.ts +1 -1
- package/multiselect/MultiSelect.vue +4 -1
- package/multiselect/index.d.ts +1 -1
- package/multiselect/index.mjs +51 -48
- 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/panel/Panel.vue +2 -2
- package/panel/index.mjs +2 -2
- package/panel/index.mjs.map +1 -1
- package/panelmenu/index.mjs +3 -3
- package/panelmenu/index.mjs.map +1 -1
- package/password/Password.vue +7 -3
- package/password/index.d.ts +1 -1
- package/password/index.mjs +14 -8
- package/password/index.mjs.map +1 -1
- package/select/Select.vue +20 -1
- package/select/index.mjs +53 -35
- package/select/index.mjs.map +1 -1
- package/selectbutton/index.d.ts +0 -24
- package/splitter/Splitter.vue +1 -1
- package/splitter/index.d.ts +1 -1
- package/splitter/index.mjs +0 -1
- 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 +2 -2
- package/step/index.mjs +2 -2
- package/step/index.mjs.map +1 -1
- package/steppanel/StepPanel.vue +2 -2
- package/steppanel/index.mjs +2 -2
- package/steppanel/index.mjs.map +1 -1
- package/textarea/index.d.ts +2 -1
- package/tieredmenu/index.mjs +12 -12
- package/tieredmenu/index.mjs.map +1 -1
- package/tooltip/index.mjs +25 -14
- package/tooltip/index.mjs.map +1 -1
- package/treeselect/TreeSelect.vue +3 -0
- package/treeselect/index.mjs +3 -0
- package/treeselect/index.mjs.map +1 -1
- package/umd/primevue.min.js +12213 -1
- package/virtualscroller/index.mjs +18 -18
- package/virtualscroller/index.mjs.map +1 -1
- package/web-types.json +1 -1
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/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 === '?') {
|
package/inputmask/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/inputmask/BaseInputMask.vue","../../src/inputmask/InputMask.vue","../../src/inputmask/InputMask.vue?vue&type=template&id=574dd81c&lang.js"],"sourcesContent":["<script>\nimport BaseInput from '@primevue/core/baseinput';\nimport InputMaskStyle from 'primevue/inputmask/style';\n\nexport default {\n name: 'BaseInputMask',\n extends: BaseInput,\n props: {\n slotChar: {\n type: String,\n default: '_'\n },\n id: {\n type: String,\n default: null\n },\n class: {\n type: [String, Object],\n default: null\n },\n mask: {\n type: String,\n default: null\n },\n placeholder: {\n type: String,\n default: null\n },\n autoClear: {\n type: Boolean,\n default: true\n },\n unmask: {\n type: Boolean,\n default: false\n },\n readonly: {\n type: Boolean,\n default: false\n }\n },\n style: InputMaskStyle,\n provide() {\n return {\n $pcInputMask: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <InputText\n :id=\"id\"\n :value=\"currentVal\"\n :class=\"inputClass\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :invalid=\"invalid\"\n :size=\"size\"\n :name=\"name\"\n :variant=\"variant\"\n :placeholder=\"placeholder\"\n :fluid=\"$fluid\"\n :unstyled=\"unstyled\"\n @input=\"onInput\"\n @compositionend=\"onInput\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n @keydown=\"onKeyDown\"\n @keypress=\"onKeyPress\"\n @paste=\"onPaste\"\n :pt=\"rootPTOptions\"\n />\n</template>\n\n<script>\nimport { getUserAgent } from '@primeuix/utils/dom';\nimport InputText from 'primevue/inputtext';\nimport { mergeProps } from 'vue';\nimport BaseInputMask from './BaseInputMask.vue';\n\nexport default {\n name: 'InputMask',\n extends: BaseInputMask,\n inheritAttrs: false,\n emits: ['focus', 'blur', 'keydown', 'complete', 'keypress', 'paste'],\n inject: {\n $pcFluid: { default: null }\n },\n data() {\n return {\n currentVal: ''\n };\n },\n watch: {\n mask(newMask, oldMask) {\n if (oldMask !== newMask) {\n this.initMask();\n }\n },\n disabled(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.updateValue();\n }\n }\n },\n mounted() {\n this.initMask();\n },\n updated() {\n if (this.isValueUpdated()) {\n this.updateValue();\n }\n },\n methods: {\n onInput(event) {\n // Check if the event is part of a text composition process (e.g., for Asian languages).\n // If event.isComposing is true, it means the user is still composing text and the input is not finalized.\n if (!event.isComposing) {\n if (this.androidChrome) this.handleAndroidInput(event);\n else this.handleInputChange(event);\n\n this.updateModelValue(event.target.value);\n }\n },\n onFocus(event) {\n if (this.readonly) {\n return;\n }\n\n this.focus = true;\n this.focusText = this.$el.value;\n\n if (!this.$el.value || this.$el.value === this.defaultBuffer) {\n requestAnimationFrame(() => {\n if (this.$el === document.activeElement) {\n this.caret(0, 0);\n }\n });\n } else {\n let pos = this.checkVal();\n\n this.caretTimeoutId = setTimeout(() => {\n if (this.$el !== document.activeElement) {\n return;\n }\n\n this.writeBuffer();\n\n if (pos === this.mask.replace('?', '').length) {\n this.caret(0, pos);\n } else {\n this.caret(pos);\n }\n }, 10);\n }\n\n this.$emit('focus', event);\n },\n onBlur(event) {\n this.focus = false;\n this.checkVal();\n this.updateModelValue(event.target.value);\n\n if (this.$el.value !== this.focusText) {\n let e = document.createEvent('HTMLEvents');\n\n e.initEvent('change', true, false);\n this.$el.dispatchEvent(e);\n }\n\n this.$emit('blur', event);\n this.formField.onBlur?.(event);\n },\n onKeyDown(event) {\n if (this.readonly) {\n return;\n }\n\n let k = event.code,\n pos,\n begin,\n end;\n let iPhone = /iphone/i.test(getUserAgent());\n\n this.oldVal = this.$el.value;\n\n //backspace, delete, and escape get special treatment\n if (k === 'Backspace' || k === 'Delete' || (iPhone && k === 'Escape')) {\n pos = this.caret();\n begin = pos.begin;\n end = pos.end;\n\n if (end - begin === 0) {\n begin = k !== 'Delete' ? this.seekPrev(begin) : (end = this.seekNext(begin - 1));\n end = k === 'Delete' ? this.seekNext(end) : end;\n }\n\n this.clearBuffer(begin, end);\n this.shiftL(begin, end - 1);\n this.updateModelValue(event.target.value);\n\n event.preventDefault();\n } else if (k === 'Enter') {\n // enter\n this.$el.blur();\n this.updateModelValue(event.target.value);\n } else if (k === 'Escape') {\n // escape\n this.$el.value = this.focusText;\n this.caret(0, this.checkVal());\n this.updateModelValue(event.target.value);\n event.preventDefault();\n }\n\n this.$emit('keydown', event);\n },\n onKeyPress(event) {\n if (this.readonly) {\n return;\n }\n\n var k = event.code,\n pos = this.caret(),\n p,\n c,\n next,\n completed;\n\n if (event.ctrlKey || event.altKey || event.metaKey || event.shiftKey || event.key === 'CapsLock' || event.key === 'Escape' || event.key === 'Tab') {\n //Ignore\n return;\n } else if (k && k !== 'Enter') {\n if (pos.end - pos.begin !== 0) {\n this.clearBuffer(pos.begin, pos.end);\n this.shiftL(pos.begin, pos.end - 1);\n }\n\n p = this.seekNext(pos.begin - 1);\n\n if (p < this.len) {\n c = event.key;\n\n if (this.tests[p].test(c)) {\n this.shiftR(p);\n\n this.buffer[p] = c;\n this.writeBuffer();\n next = this.seekNext(p);\n\n if (/android/i.test(getUserAgent())) {\n //Path for CSP Violation on FireFox OS 1.1\n let proxy = () => {\n this.caret(next);\n };\n\n setTimeout(proxy, 0);\n } else {\n this.caret(next);\n }\n\n if (pos.begin <= this.lastRequiredNonMaskPos) {\n completed = this.isCompleted();\n }\n }\n }\n\n event.preventDefault();\n }\n\n this.updateModelValue(event.target.value);\n\n if (completed) {\n this.$emit('complete', event);\n }\n\n this.$emit('keypress', event);\n },\n onPaste(event) {\n this.handleInputChange(event);\n\n this.$emit('paste', event);\n },\n caret(first, last) {\n let range, begin, end;\n\n if (!this.$el.offsetParent || this.$el !== document.activeElement) {\n return;\n }\n\n if (typeof first === 'number') {\n begin = first;\n end = typeof last === 'number' ? last : begin;\n\n if (this.$el.setSelectionRange) {\n this.$el.setSelectionRange(begin, end);\n } else if (this.$el['createTextRange']) {\n range = this.$el['createTextRange']();\n range.collapse(true);\n range.moveEnd('character', end);\n range.moveStart('character', begin);\n range.select();\n }\n } else {\n if (this.$el.setSelectionRange) {\n begin = this.$el.selectionStart;\n end = this.$el.selectionEnd;\n } else if (document['selection'] && document['selection'].createRange) {\n range = document['selection'].createRange();\n begin = 0 - range.duplicate().moveStart('character', -100000);\n end = begin + range.text.length;\n }\n\n return { begin: begin, end: end };\n }\n },\n isCompleted() {\n for (let i = this.firstNonMaskPos; i <= this.lastRequiredNonMaskPos; i++) {\n if (this.tests[i] && this.buffer[i] === this.getPlaceholder(i)) {\n return false;\n }\n }\n\n return true;\n },\n getPlaceholder(i) {\n if (i < this.slotChar.length) {\n return this.slotChar.charAt(i);\n }\n\n return this.slotChar.charAt(0);\n },\n seekNext(pos) {\n while (++pos < this.len && !this.tests[pos]);\n\n return pos;\n },\n seekPrev(pos) {\n while (--pos >= 0 && !this.tests[pos]);\n\n return pos;\n },\n shiftL(begin, end) {\n let i, j;\n\n if (begin < 0) {\n return;\n }\n\n for (i = begin, j = this.seekNext(end); i < this.len; i++) {\n if (this.tests[i]) {\n if (j < this.len && this.tests[i].test(this.buffer[j])) {\n this.buffer[i] = this.buffer[j];\n this.buffer[j] = this.getPlaceholder(j);\n } else {\n break;\n }\n\n j = this.seekNext(j);\n }\n }\n\n this.writeBuffer();\n this.caret(Math.max(this.firstNonMaskPos, begin));\n },\n shiftR(pos) {\n let i, c, j, t;\n\n for (i = pos, c = this.getPlaceholder(pos); i < this.len; i++) {\n if (this.tests[i]) {\n j = this.seekNext(i);\n t = this.buffer[i];\n this.buffer[i] = c;\n\n if (j < this.len && this.tests[j].test(t)) {\n c = t;\n } else {\n break;\n }\n }\n }\n },\n handleAndroidInput(event) {\n var curVal = this.$el.value;\n var pos = this.caret();\n\n if (this.oldVal && this.oldVal.length && this.oldVal.length > curVal.length) {\n // a deletion or backspace happened\n this.checkVal(true);\n while (pos.begin > 0 && !this.tests[pos.begin - 1]) pos.begin--;\n\n if (pos.begin === 0) {\n while (pos.begin < this.firstNonMaskPos && !this.tests[pos.begin]) pos.begin++;\n }\n\n this.caret(pos.begin, pos.begin);\n } else {\n this.checkVal(true);\n while (pos.begin < this.len && !this.tests[pos.begin]) pos.begin++;\n\n this.caret(pos.begin, pos.begin);\n }\n\n if (this.isCompleted()) {\n this.$emit('complete', event);\n }\n },\n clearBuffer(start, end) {\n let i;\n\n for (i = start; i < end && i < this.len; i++) {\n if (this.tests[i]) {\n this.buffer[i] = this.getPlaceholder(i);\n }\n }\n },\n writeBuffer() {\n this.$el.value = this.buffer.join('');\n },\n checkVal(allow) {\n this.isValueChecked = true;\n //try to place characters where they belong\n let test = this.$el.value,\n lastMatch = -1,\n i,\n c,\n pos;\n\n for (i = 0, pos = 0; i < this.len; i++) {\n if (this.tests[i]) {\n this.buffer[i] = this.getPlaceholder(i);\n\n while (pos++ < test.length) {\n c = test.charAt(pos - 1);\n\n if (this.tests[i].test(c)) {\n this.buffer[i] = c;\n lastMatch = i;\n break;\n }\n }\n\n if (pos > test.length) {\n this.clearBuffer(i + 1, this.len);\n break;\n }\n } else {\n if (this.buffer[i] === test.charAt(pos)) {\n pos++;\n }\n\n if (i < this.partialPosition) {\n lastMatch = i;\n }\n }\n }\n\n if (allow) {\n this.writeBuffer();\n } else if (lastMatch + 1 < this.partialPosition) {\n if (this.autoClear || this.buffer.join('') === this.defaultBuffer) {\n // Invalid value. Remove it and replace it with the\n // mask, which is the default behavior.\n if (this.$el.value) this.$el.value = '';\n this.clearBuffer(0, this.len);\n } else {\n // Invalid value, but we opt to show the value to the\n // user and allow them to correct their mistake.\n this.writeBuffer();\n }\n } else {\n this.writeBuffer();\n this.$el.value = this.$el.value.substring(0, lastMatch + 1);\n }\n\n return this.partialPosition ? i : this.firstNonMaskPos;\n },\n handleInputChange(event) {\n const isPasteEvent = event.type === 'paste';\n\n if (this.readonly || isPasteEvent) {\n return;\n }\n\n var pos = this.checkVal(true);\n\n this.caret(pos);\n this.updateModelValue(event.target.value);\n\n if (this.isCompleted()) {\n this.$emit('complete', event);\n }\n },\n getUnmaskedValue() {\n let unmaskedBuffer = [];\n\n for (let i = 0; i < this.buffer.length; i++) {\n let c = this.buffer[i];\n\n if (this.tests[i] && c !== this.getPlaceholder(i)) {\n unmaskedBuffer.push(c);\n }\n }\n\n return unmaskedBuffer.join('');\n },\n unmaskValue(value) {\n let unmaskedBuffer = [];\n let thisbuffer = value.split('');\n\n for (let i = 0; i < thisbuffer.length; i++) {\n let c = thisbuffer[i];\n\n if (this.tests[i] && c !== this.getPlaceholder(i)) {\n unmaskedBuffer.push(c);\n }\n }\n\n return unmaskedBuffer.join('');\n },\n\n updateModelValue(value) {\n if (this.currentVal === value) return;\n const val = this.unmask ? this.unmaskValue(value) : value;\n\n this.currentVal = value;\n\n this.writeValue(this.defaultBuffer !== val ? val : '');\n },\n updateValue(updateModel = true) {\n if (this.$el) {\n if (this.d_value == null) {\n this.$el.value = '';\n updateModel && this.updateModelValue('');\n } else {\n this.$el.value = this.d_value;\n this.checkVal();\n\n setTimeout(() => {\n if (this.$el) {\n this.writeBuffer();\n this.checkVal();\n\n if (updateModel) this.updateModelValue(this.$el.value);\n }\n }, 10);\n }\n\n this.focusText = this.$el.value;\n }\n },\n initMask() {\n this.tests = [];\n this.partialPosition = this.mask.length;\n this.len = this.mask.length;\n this.firstNonMaskPos = null;\n this.defs = {\n 9: '[0-9]',\n a: '[A-Za-z]',\n '*': '[A-Za-z0-9]'\n };\n\n let ua = getUserAgent();\n\n this.androidChrome = /chrome/i.test(ua) && /android/i.test(ua);\n\n let maskTokens = this.mask.split('');\n\n for (let i = 0; i < maskTokens.length; i++) {\n let c = maskTokens[i];\n\n if (c === '?') {\n this.len--;\n this.partialPosition = i;\n } else if (this.defs[c]) {\n this.tests.push(new RegExp(this.defs[c]));\n\n if (this.firstNonMaskPos === null) {\n this.firstNonMaskPos = this.tests.length - 1;\n }\n\n if (i < this.partialPosition) {\n this.lastRequiredNonMaskPos = this.tests.length - 1;\n }\n } else {\n this.tests.push(null);\n }\n }\n\n this.buffer = [];\n\n for (let i = 0; i < maskTokens.length; i++) {\n let c = maskTokens[i];\n\n if (c !== '?') {\n if (this.defs[c]) this.buffer.push(this.getPlaceholder(i));\n else this.buffer.push(c);\n }\n }\n\n this.defaultBuffer = this.buffer.join('');\n this.updateValue(false);\n },\n isValueUpdated() {\n return this.unmask ? this.d_value != this.getUnmaskedValue() : this.defaultBuffer !== this.$el.value && this.$el.value !== this.d_value;\n }\n },\n computed: {\n inputClass() {\n return [this.cx('root'), this.class];\n },\n rootPTOptions() {\n return {\n root: mergeProps(this.ptm('pcInputText', this.ptmParams)['root'], this.ptmi('root', this.ptmParams))\n };\n },\n ptmParams() {\n return {\n context: {\n filled: this.$filled\n }\n };\n }\n },\n components: {\n InputText\n }\n};\n</script>\n","<template>\n <InputText\n :id=\"id\"\n :value=\"currentVal\"\n :class=\"inputClass\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :invalid=\"invalid\"\n :size=\"size\"\n :name=\"name\"\n :variant=\"variant\"\n :placeholder=\"placeholder\"\n :fluid=\"$fluid\"\n :unstyled=\"unstyled\"\n @input=\"onInput\"\n @compositionend=\"onInput\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n @keydown=\"onKeyDown\"\n @keypress=\"onKeyPress\"\n @paste=\"onPaste\"\n :pt=\"rootPTOptions\"\n />\n</template>\n\n<script>\nimport { getUserAgent } from '@primeuix/utils/dom';\nimport InputText from 'primevue/inputtext';\nimport { mergeProps } from 'vue';\nimport BaseInputMask from './BaseInputMask.vue';\n\nexport default {\n name: 'InputMask',\n extends: BaseInputMask,\n inheritAttrs: false,\n emits: ['focus', 'blur', 'keydown', 'complete', 'keypress', 'paste'],\n inject: {\n $pcFluid: { default: null }\n },\n data() {\n return {\n currentVal: ''\n };\n },\n watch: {\n mask(newMask, oldMask) {\n if (oldMask !== newMask) {\n this.initMask();\n }\n },\n disabled(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.updateValue();\n }\n }\n },\n mounted() {\n this.initMask();\n },\n updated() {\n if (this.isValueUpdated()) {\n this.updateValue();\n }\n },\n methods: {\n onInput(event) {\n // Check if the event is part of a text composition process (e.g., for Asian languages).\n // If event.isComposing is true, it means the user is still composing text and the input is not finalized.\n if (!event.isComposing) {\n if (this.androidChrome) this.handleAndroidInput(event);\n else this.handleInputChange(event);\n\n this.updateModelValue(event.target.value);\n }\n },\n onFocus(event) {\n if (this.readonly) {\n return;\n }\n\n this.focus = true;\n this.focusText = this.$el.value;\n\n if (!this.$el.value || this.$el.value === this.defaultBuffer) {\n requestAnimationFrame(() => {\n if (this.$el === document.activeElement) {\n this.caret(0, 0);\n }\n });\n } else {\n let pos = this.checkVal();\n\n this.caretTimeoutId = setTimeout(() => {\n if (this.$el !== document.activeElement) {\n return;\n }\n\n this.writeBuffer();\n\n if (pos === this.mask.replace('?', '').length) {\n this.caret(0, pos);\n } else {\n this.caret(pos);\n }\n }, 10);\n }\n\n this.$emit('focus', event);\n },\n onBlur(event) {\n this.focus = false;\n this.checkVal();\n this.updateModelValue(event.target.value);\n\n if (this.$el.value !== this.focusText) {\n let e = document.createEvent('HTMLEvents');\n\n e.initEvent('change', true, false);\n this.$el.dispatchEvent(e);\n }\n\n this.$emit('blur', event);\n this.formField.onBlur?.(event);\n },\n onKeyDown(event) {\n if (this.readonly) {\n return;\n }\n\n let k = event.code,\n pos,\n begin,\n end;\n let iPhone = /iphone/i.test(getUserAgent());\n\n this.oldVal = this.$el.value;\n\n //backspace, delete, and escape get special treatment\n if (k === 'Backspace' || k === 'Delete' || (iPhone && k === 'Escape')) {\n pos = this.caret();\n begin = pos.begin;\n end = pos.end;\n\n if (end - begin === 0) {\n begin = k !== 'Delete' ? this.seekPrev(begin) : (end = this.seekNext(begin - 1));\n end = k === 'Delete' ? this.seekNext(end) : end;\n }\n\n this.clearBuffer(begin, end);\n this.shiftL(begin, end - 1);\n this.updateModelValue(event.target.value);\n\n event.preventDefault();\n } else if (k === 'Enter') {\n // enter\n this.$el.blur();\n this.updateModelValue(event.target.value);\n } else if (k === 'Escape') {\n // escape\n this.$el.value = this.focusText;\n this.caret(0, this.checkVal());\n this.updateModelValue(event.target.value);\n event.preventDefault();\n }\n\n this.$emit('keydown', event);\n },\n onKeyPress(event) {\n if (this.readonly) {\n return;\n }\n\n var k = event.code,\n pos = this.caret(),\n p,\n c,\n next,\n completed;\n\n if (event.ctrlKey || event.altKey || event.metaKey || event.shiftKey || event.key === 'CapsLock' || event.key === 'Escape' || event.key === 'Tab') {\n //Ignore\n return;\n } else if (k && k !== 'Enter') {\n if (pos.end - pos.begin !== 0) {\n this.clearBuffer(pos.begin, pos.end);\n this.shiftL(pos.begin, pos.end - 1);\n }\n\n p = this.seekNext(pos.begin - 1);\n\n if (p < this.len) {\n c = event.key;\n\n if (this.tests[p].test(c)) {\n this.shiftR(p);\n\n this.buffer[p] = c;\n this.writeBuffer();\n next = this.seekNext(p);\n\n if (/android/i.test(getUserAgent())) {\n //Path for CSP Violation on FireFox OS 1.1\n let proxy = () => {\n this.caret(next);\n };\n\n setTimeout(proxy, 0);\n } else {\n this.caret(next);\n }\n\n if (pos.begin <= this.lastRequiredNonMaskPos) {\n completed = this.isCompleted();\n }\n }\n }\n\n event.preventDefault();\n }\n\n this.updateModelValue(event.target.value);\n\n if (completed) {\n this.$emit('complete', event);\n }\n\n this.$emit('keypress', event);\n },\n onPaste(event) {\n this.handleInputChange(event);\n\n this.$emit('paste', event);\n },\n caret(first, last) {\n let range, begin, end;\n\n if (!this.$el.offsetParent || this.$el !== document.activeElement) {\n return;\n }\n\n if (typeof first === 'number') {\n begin = first;\n end = typeof last === 'number' ? last : begin;\n\n if (this.$el.setSelectionRange) {\n this.$el.setSelectionRange(begin, end);\n } else if (this.$el['createTextRange']) {\n range = this.$el['createTextRange']();\n range.collapse(true);\n range.moveEnd('character', end);\n range.moveStart('character', begin);\n range.select();\n }\n } else {\n if (this.$el.setSelectionRange) {\n begin = this.$el.selectionStart;\n end = this.$el.selectionEnd;\n } else if (document['selection'] && document['selection'].createRange) {\n range = document['selection'].createRange();\n begin = 0 - range.duplicate().moveStart('character', -100000);\n end = begin + range.text.length;\n }\n\n return { begin: begin, end: end };\n }\n },\n isCompleted() {\n for (let i = this.firstNonMaskPos; i <= this.lastRequiredNonMaskPos; i++) {\n if (this.tests[i] && this.buffer[i] === this.getPlaceholder(i)) {\n return false;\n }\n }\n\n return true;\n },\n getPlaceholder(i) {\n if (i < this.slotChar.length) {\n return this.slotChar.charAt(i);\n }\n\n return this.slotChar.charAt(0);\n },\n seekNext(pos) {\n while (++pos < this.len && !this.tests[pos]);\n\n return pos;\n },\n seekPrev(pos) {\n while (--pos >= 0 && !this.tests[pos]);\n\n return pos;\n },\n shiftL(begin, end) {\n let i, j;\n\n if (begin < 0) {\n return;\n }\n\n for (i = begin, j = this.seekNext(end); i < this.len; i++) {\n if (this.tests[i]) {\n if (j < this.len && this.tests[i].test(this.buffer[j])) {\n this.buffer[i] = this.buffer[j];\n this.buffer[j] = this.getPlaceholder(j);\n } else {\n break;\n }\n\n j = this.seekNext(j);\n }\n }\n\n this.writeBuffer();\n this.caret(Math.max(this.firstNonMaskPos, begin));\n },\n shiftR(pos) {\n let i, c, j, t;\n\n for (i = pos, c = this.getPlaceholder(pos); i < this.len; i++) {\n if (this.tests[i]) {\n j = this.seekNext(i);\n t = this.buffer[i];\n this.buffer[i] = c;\n\n if (j < this.len && this.tests[j].test(t)) {\n c = t;\n } else {\n break;\n }\n }\n }\n },\n handleAndroidInput(event) {\n var curVal = this.$el.value;\n var pos = this.caret();\n\n if (this.oldVal && this.oldVal.length && this.oldVal.length > curVal.length) {\n // a deletion or backspace happened\n this.checkVal(true);\n while (pos.begin > 0 && !this.tests[pos.begin - 1]) pos.begin--;\n\n if (pos.begin === 0) {\n while (pos.begin < this.firstNonMaskPos && !this.tests[pos.begin]) pos.begin++;\n }\n\n this.caret(pos.begin, pos.begin);\n } else {\n this.checkVal(true);\n while (pos.begin < this.len && !this.tests[pos.begin]) pos.begin++;\n\n this.caret(pos.begin, pos.begin);\n }\n\n if (this.isCompleted()) {\n this.$emit('complete', event);\n }\n },\n clearBuffer(start, end) {\n let i;\n\n for (i = start; i < end && i < this.len; i++) {\n if (this.tests[i]) {\n this.buffer[i] = this.getPlaceholder(i);\n }\n }\n },\n writeBuffer() {\n this.$el.value = this.buffer.join('');\n },\n checkVal(allow) {\n this.isValueChecked = true;\n //try to place characters where they belong\n let test = this.$el.value,\n lastMatch = -1,\n i,\n c,\n pos;\n\n for (i = 0, pos = 0; i < this.len; i++) {\n if (this.tests[i]) {\n this.buffer[i] = this.getPlaceholder(i);\n\n while (pos++ < test.length) {\n c = test.charAt(pos - 1);\n\n if (this.tests[i].test(c)) {\n this.buffer[i] = c;\n lastMatch = i;\n break;\n }\n }\n\n if (pos > test.length) {\n this.clearBuffer(i + 1, this.len);\n break;\n }\n } else {\n if (this.buffer[i] === test.charAt(pos)) {\n pos++;\n }\n\n if (i < this.partialPosition) {\n lastMatch = i;\n }\n }\n }\n\n if (allow) {\n this.writeBuffer();\n } else if (lastMatch + 1 < this.partialPosition) {\n if (this.autoClear || this.buffer.join('') === this.defaultBuffer) {\n // Invalid value. Remove it and replace it with the\n // mask, which is the default behavior.\n if (this.$el.value) this.$el.value = '';\n this.clearBuffer(0, this.len);\n } else {\n // Invalid value, but we opt to show the value to the\n // user and allow them to correct their mistake.\n this.writeBuffer();\n }\n } else {\n this.writeBuffer();\n this.$el.value = this.$el.value.substring(0, lastMatch + 1);\n }\n\n return this.partialPosition ? i : this.firstNonMaskPos;\n },\n handleInputChange(event) {\n const isPasteEvent = event.type === 'paste';\n\n if (this.readonly || isPasteEvent) {\n return;\n }\n\n var pos = this.checkVal(true);\n\n this.caret(pos);\n this.updateModelValue(event.target.value);\n\n if (this.isCompleted()) {\n this.$emit('complete', event);\n }\n },\n getUnmaskedValue() {\n let unmaskedBuffer = [];\n\n for (let i = 0; i < this.buffer.length; i++) {\n let c = this.buffer[i];\n\n if (this.tests[i] && c !== this.getPlaceholder(i)) {\n unmaskedBuffer.push(c);\n }\n }\n\n return unmaskedBuffer.join('');\n },\n unmaskValue(value) {\n let unmaskedBuffer = [];\n let thisbuffer = value.split('');\n\n for (let i = 0; i < thisbuffer.length; i++) {\n let c = thisbuffer[i];\n\n if (this.tests[i] && c !== this.getPlaceholder(i)) {\n unmaskedBuffer.push(c);\n }\n }\n\n return unmaskedBuffer.join('');\n },\n\n updateModelValue(value) {\n if (this.currentVal === value) return;\n const val = this.unmask ? this.unmaskValue(value) : value;\n\n this.currentVal = value;\n\n this.writeValue(this.defaultBuffer !== val ? val : '');\n },\n updateValue(updateModel = true) {\n if (this.$el) {\n if (this.d_value == null) {\n this.$el.value = '';\n updateModel && this.updateModelValue('');\n } else {\n this.$el.value = this.d_value;\n this.checkVal();\n\n setTimeout(() => {\n if (this.$el) {\n this.writeBuffer();\n this.checkVal();\n\n if (updateModel) this.updateModelValue(this.$el.value);\n }\n }, 10);\n }\n\n this.focusText = this.$el.value;\n }\n },\n initMask() {\n this.tests = [];\n this.partialPosition = this.mask.length;\n this.len = this.mask.length;\n this.firstNonMaskPos = null;\n this.defs = {\n 9: '[0-9]',\n a: '[A-Za-z]',\n '*': '[A-Za-z0-9]'\n };\n\n let ua = getUserAgent();\n\n this.androidChrome = /chrome/i.test(ua) && /android/i.test(ua);\n\n let maskTokens = this.mask.split('');\n\n for (let i = 0; i < maskTokens.length; i++) {\n let c = maskTokens[i];\n\n if (c === '?') {\n this.len--;\n this.partialPosition = i;\n } else if (this.defs[c]) {\n this.tests.push(new RegExp(this.defs[c]));\n\n if (this.firstNonMaskPos === null) {\n this.firstNonMaskPos = this.tests.length - 1;\n }\n\n if (i < this.partialPosition) {\n this.lastRequiredNonMaskPos = this.tests.length - 1;\n }\n } else {\n this.tests.push(null);\n }\n }\n\n this.buffer = [];\n\n for (let i = 0; i < maskTokens.length; i++) {\n let c = maskTokens[i];\n\n if (c !== '?') {\n if (this.defs[c]) this.buffer.push(this.getPlaceholder(i));\n else this.buffer.push(c);\n }\n }\n\n this.defaultBuffer = this.buffer.join('');\n this.updateValue(false);\n },\n isValueUpdated() {\n return this.unmask ? this.d_value != this.getUnmaskedValue() : this.defaultBuffer !== this.$el.value && this.$el.value !== this.d_value;\n }\n },\n computed: {\n inputClass() {\n return [this.cx('root'), this.class];\n },\n rootPTOptions() {\n return {\n root: mergeProps(this.ptm('pcInputText', this.ptmParams)['root'], this.ptmi('root', this.ptmParams))\n };\n },\n ptmParams() {\n return {\n context: {\n filled: this.$filled\n }\n };\n }\n },\n components: {\n InputText\n }\n};\n</script>\n"],"names":["name","BaseInput","props","slotChar","type","String","id","Object","mask","placeholder","autoClear","Boolean","unmask","readonly","style","InputMaskStyle","provide","$pcInputMask","$parentInstance","BaseInputMask","inheritAttrs","emits","inject","$pcFluid","data","currentVal","watch","newMask","oldMask","initMask","disabled","newValue","oldValue","updateValue","mounted","updated","isValueUpdated","methods","onInput","event","isComposing","androidChrome","handleAndroidInput","handleInputChange","updateModelValue","target","value","onFocus","_this","focus","focusText","$el","defaultBuffer","requestAnimationFrame","document","activeElement","caret","pos","checkVal","caretTimeoutId","setTimeout","writeBuffer","replace","length","$emit","onBlur","_this$formField$onBlu","_this$formField","e","createEvent","initEvent","dispatchEvent","formField","call","onKeyDown","k","code","begin","end","iPhone","test","getUserAgent","oldVal","seekPrev","seekNext","clearBuffer","shiftL","preventDefault","blur","onKeyPress","_this2","p","c","next","completed","ctrlKey","altKey","metaKey","shiftKey","key","len","tests","shiftR","buffer","proxy","lastRequiredNonMaskPos","isCompleted","onPaste","first","last","range","offsetParent","setSelectionRange","collapse","moveEnd","moveStart","select","selectionStart","selectionEnd","createRange","duplicate","text","i","firstNonMaskPos","getPlaceholder","charAt","j","Math","max","t","curVal","start","join","allow","isValueChecked","lastMatch","partialPosition","substring","isPasteEvent","getUnmaskedValue","unmaskedBuffer","push","unmaskValue","thisbuffer","split","val","writeValue","_this3","updateModel","arguments","undefined","d_value","defs","a","ua","maskTokens","RegExp","computed","inputClass","cx","rootPTOptions","root","mergeProps","ptm","ptmParams","ptmi","context","filled","$filled","components","InputText","_createBlock","_component_InputText","_ctx","$data","$options","invalid","size","variant","fluid","$fluid","unstyled","onCompositionend","onKeydown","onKeypress","pt"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/inputmask/BaseInputMask.vue","../../src/inputmask/InputMask.vue","../../src/inputmask/InputMask.vue?vue&type=template&id=a74c734a&lang.js"],"sourcesContent":["<script>\nimport BaseInput from '@primevue/core/baseinput';\nimport InputMaskStyle from 'primevue/inputmask/style';\n\nexport default {\n name: 'BaseInputMask',\n extends: BaseInput,\n props: {\n slotChar: {\n type: String,\n default: '_'\n },\n id: {\n type: String,\n default: null\n },\n class: {\n type: [String, Object],\n default: null\n },\n mask: {\n type: String,\n default: null\n },\n placeholder: {\n type: String,\n default: null\n },\n autoClear: {\n type: Boolean,\n default: true\n },\n unmask: {\n type: Boolean,\n default: false\n },\n readonly: {\n type: Boolean,\n default: false\n }\n },\n style: InputMaskStyle,\n provide() {\n return {\n $pcInputMask: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <InputText\n :id=\"id\"\n :value=\"currentVal\"\n :class=\"inputClass\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :invalid=\"invalid\"\n :size=\"size\"\n :name=\"name\"\n :variant=\"variant\"\n :placeholder=\"placeholder\"\n :fluid=\"$fluid\"\n :unstyled=\"unstyled\"\n @input=\"onInput\"\n @compositionend=\"onInput\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n @keydown=\"onKeyDown\"\n @keypress=\"onKeyPress\"\n @paste=\"onPaste\"\n :pt=\"rootPTOptions\"\n />\n</template>\n\n<script>\nimport { getUserAgent } from '@primeuix/utils/dom';\nimport InputText from 'primevue/inputtext';\nimport { mergeProps } from 'vue';\nimport BaseInputMask from './BaseInputMask.vue';\n\nexport default {\n name: 'InputMask',\n extends: BaseInputMask,\n inheritAttrs: false,\n emits: ['focus', 'blur', 'keydown', 'complete', 'keypress', 'paste'],\n inject: {\n $pcFluid: { default: null }\n },\n data() {\n return {\n currentVal: ''\n };\n },\n watch: {\n mask(newMask, oldMask) {\n if (oldMask !== newMask) {\n this.initMask();\n }\n },\n disabled(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.updateValue();\n }\n }\n },\n mounted() {\n this.initMask();\n },\n updated() {\n if (this.isValueUpdated()) {\n this.updateValue();\n }\n },\n methods: {\n onInput(event) {\n // Check if the event is part of a text composition process (e.g., for Asian languages).\n // If event.isComposing is true, it means the user is still composing text and the input is not finalized.\n if (!event.isComposing) {\n if (this.androidChrome) this.handleAndroidInput(event);\n else this.handleInputChange(event);\n\n this.updateModelValue(event.target.value);\n }\n },\n onFocus(event) {\n if (this.readonly) {\n return;\n }\n\n this.focus = true;\n this.focusText = this.$el.value;\n\n if (!this.$el.value || this.$el.value === this.defaultBuffer) {\n requestAnimationFrame(() => {\n if (this.$el === document.activeElement) {\n this.caret(0, 0);\n }\n });\n } else {\n let pos = this.checkVal();\n\n this.caretTimeoutId = setTimeout(() => {\n if (this.$el !== document.activeElement) {\n return;\n }\n\n this.writeBuffer();\n\n if (pos === this.mask.replace('?', '').length) {\n this.caret(0, pos);\n } else {\n this.caret(pos);\n }\n }, 10);\n }\n\n this.$emit('focus', event);\n },\n onBlur(event) {\n this.focus = false;\n this.checkVal();\n this.updateModelValue(event.target.value);\n\n if (this.$el.value !== this.focusText) {\n let e = document.createEvent('HTMLEvents');\n\n e.initEvent('change', true, false);\n this.$el.dispatchEvent(e);\n }\n\n this.$emit('blur', event);\n this.formField.onBlur?.(event);\n },\n onKeyDown(event) {\n if (this.readonly) {\n return;\n }\n\n let k = event.code,\n pos,\n begin,\n end;\n let iPhone = /iphone/i.test(getUserAgent());\n\n this.oldVal = this.$el.value;\n\n //backspace, delete, and escape get special treatment\n if (k === 'Backspace' || k === 'Delete' || (iPhone && k === 'Escape')) {\n pos = this.caret();\n begin = pos.begin;\n end = pos.end;\n\n if (end - begin === 0) {\n begin = k !== 'Delete' ? this.seekPrev(begin) : (end = this.seekNext(begin - 1));\n end = k === 'Delete' ? this.seekNext(end) : end;\n }\n\n this.clearBuffer(begin, end);\n this.shiftL(begin, end - 1);\n this.updateModelValue(event.target.value);\n\n event.preventDefault();\n } else if (k === 'Enter') {\n // enter\n this.$el.blur();\n this.updateModelValue(event.target.value);\n } else if (k === 'Escape') {\n // escape\n this.$el.value = this.focusText;\n this.caret(0, this.checkVal());\n this.updateModelValue(event.target.value);\n event.preventDefault();\n }\n\n this.$emit('keydown', event);\n },\n onKeyPress(event) {\n if (this.readonly) {\n return;\n }\n\n var k = event.code,\n pos = this.caret(),\n p,\n c,\n next,\n completed;\n\n if (event.ctrlKey || event.altKey || event.metaKey || event.shiftKey || event.key === 'CapsLock' || event.key === 'Escape' || event.key === 'Tab') {\n //Ignore\n return;\n } else if (k && k !== 'Enter') {\n if (pos.end - pos.begin !== 0) {\n this.clearBuffer(pos.begin, pos.end);\n this.shiftL(pos.begin, pos.end - 1);\n }\n\n p = this.seekNext(pos.begin - 1);\n\n if (p < this.len) {\n c = event.key;\n\n if (this.tests[p].test(c)) {\n this.shiftR(p);\n\n this.buffer[p] = c;\n this.writeBuffer();\n next = this.seekNext(p);\n\n if (/android/i.test(getUserAgent())) {\n //Path for CSP Violation on FireFox OS 1.1\n let proxy = () => {\n this.caret(next);\n };\n\n setTimeout(proxy, 0);\n } else {\n this.caret(next);\n }\n\n if (pos.begin <= this.lastRequiredNonMaskPos) {\n completed = this.isCompleted();\n }\n }\n }\n\n event.preventDefault();\n }\n\n this.updateModelValue(event.target.value);\n\n if (completed) {\n this.$emit('complete', event);\n }\n\n this.$emit('keypress', event);\n },\n onPaste(event) {\n this.handleInputChange(event);\n\n this.$emit('paste', event);\n },\n caret(first, last) {\n let range, begin, end;\n\n if (!this.$el.offsetParent || this.$el !== document.activeElement) {\n return;\n }\n\n if (typeof first === 'number') {\n begin = first;\n end = typeof last === 'number' ? last : begin;\n\n if (this.$el.setSelectionRange) {\n this.$el.setSelectionRange(begin, end);\n } else if (this.$el['createTextRange']) {\n range = this.$el['createTextRange']();\n range.collapse(true);\n range.moveEnd('character', end);\n range.moveStart('character', begin);\n range.select();\n }\n } else {\n if (this.$el.setSelectionRange) {\n begin = this.$el.selectionStart;\n end = this.$el.selectionEnd;\n } else if (document['selection'] && document['selection'].createRange) {\n range = document['selection'].createRange();\n begin = 0 - range.duplicate().moveStart('character', -100000);\n end = begin + range.text.length;\n }\n\n return { begin: begin, end: end };\n }\n },\n isCompleted() {\n for (let i = this.firstNonMaskPos; i <= this.lastRequiredNonMaskPos; i++) {\n if (this.tests[i] && this.buffer[i] === this.getPlaceholder(i)) {\n return false;\n }\n }\n\n return true;\n },\n getPlaceholder(i) {\n if (i < this.slotChar.length) {\n return this.slotChar.charAt(i);\n }\n\n return this.slotChar.charAt(0);\n },\n seekNext(pos) {\n while (++pos < this.len && !this.tests[pos]);\n\n return pos;\n },\n seekPrev(pos) {\n while (--pos >= 0 && !this.tests[pos]);\n\n return pos;\n },\n shiftL(begin, end) {\n let i, j;\n\n if (begin < 0) {\n return;\n }\n\n for (i = begin, j = this.seekNext(end); i < this.len; i++) {\n if (this.tests[i]) {\n if (j < this.len && this.tests[i].test(this.buffer[j])) {\n this.buffer[i] = this.buffer[j];\n this.buffer[j] = this.getPlaceholder(j);\n } else {\n break;\n }\n\n j = this.seekNext(j);\n }\n }\n\n this.writeBuffer();\n this.caret(Math.max(this.firstNonMaskPos, begin));\n },\n shiftR(pos) {\n let i, c, j, t;\n\n for (i = pos, c = this.getPlaceholder(pos); i < this.len; i++) {\n if (this.tests[i]) {\n j = this.seekNext(i);\n t = this.buffer[i];\n this.buffer[i] = c;\n\n if (j < this.len && this.tests[j].test(t)) {\n c = t;\n } else {\n break;\n }\n }\n }\n },\n handleAndroidInput(event) {\n var curVal = this.$el.value;\n var pos = this.caret();\n\n if (this.oldVal && this.oldVal.length && this.oldVal.length > curVal.length) {\n // a deletion or backspace happened\n this.checkVal(true);\n while (pos.begin > 0 && !this.tests[pos.begin - 1]) pos.begin--;\n\n if (pos.begin === 0) {\n while (pos.begin < this.firstNonMaskPos && !this.tests[pos.begin]) pos.begin++;\n }\n\n this.caret(pos.begin, pos.begin);\n } else {\n this.checkVal(true);\n while (pos.begin < this.len && !this.tests[pos.begin]) pos.begin++;\n\n this.caret(pos.begin, pos.begin);\n }\n\n if (this.isCompleted()) {\n this.$emit('complete', event);\n }\n },\n clearBuffer(start, end) {\n let i;\n\n for (i = start; i < end && i < this.len; i++) {\n if (this.tests[i]) {\n this.buffer[i] = this.getPlaceholder(i);\n }\n }\n },\n writeBuffer() {\n this.$el.value = this.buffer.join('');\n },\n checkVal(allow) {\n this.isValueChecked = true;\n //try to place characters where they belong\n let test = this.$el.value,\n lastMatch = -1,\n i,\n c,\n pos;\n\n for (i = 0, pos = 0; i < this.len; i++) {\n if (this.tests[i]) {\n this.buffer[i] = this.getPlaceholder(i);\n\n while (pos++ < test.length) {\n c = test.charAt(pos - 1);\n\n if (this.tests[i].test(c)) {\n this.buffer[i] = c;\n lastMatch = i;\n break;\n }\n }\n\n if (pos > test.length) {\n this.clearBuffer(i + 1, this.len);\n break;\n }\n } else {\n if (this.buffer[i] === test.charAt(pos)) {\n pos++;\n }\n\n if (i < this.partialPosition) {\n lastMatch = i;\n }\n }\n }\n\n if (allow) {\n this.writeBuffer();\n } else if (lastMatch + 1 < this.partialPosition) {\n if (this.autoClear || this.buffer.join('') === this.defaultBuffer) {\n // Invalid value. Remove it and replace it with the\n // mask, which is the default behavior.\n if (this.$el.value) this.$el.value = '';\n this.clearBuffer(0, this.len);\n } else {\n // Invalid value, but we opt to show the value to the\n // user and allow them to correct their mistake.\n this.writeBuffer();\n }\n } else {\n this.writeBuffer();\n this.$el.value = this.$el.value.substring(0, lastMatch + 1);\n }\n\n return this.partialPosition ? i : this.firstNonMaskPos;\n },\n handleInputChange(event) {\n const isPasteEvent = event.type === 'paste';\n\n if (this.readonly || isPasteEvent) {\n return;\n }\n\n var pos = this.checkVal(true);\n\n this.caret(pos);\n this.updateModelValue(event.target.value);\n\n if (this.isCompleted()) {\n this.$emit('complete', event);\n }\n },\n getUnmaskedValue() {\n let unmaskedBuffer = [];\n\n for (let i = 0; i < this.buffer.length; i++) {\n let c = this.buffer[i];\n\n if (this.tests[i] && c !== this.getPlaceholder(i)) {\n unmaskedBuffer.push(c);\n }\n }\n\n return unmaskedBuffer.join('');\n },\n unmaskValue(value) {\n let unmaskedBuffer = [];\n let thisbuffer = value.split('');\n\n for (let i = 0; i < thisbuffer.length; i++) {\n let c = thisbuffer[i];\n\n if (this.tests[i] && c !== this.getPlaceholder(i)) {\n unmaskedBuffer.push(c);\n }\n }\n\n return unmaskedBuffer.join('');\n },\n\n updateModelValue(value) {\n if (this.currentVal === value) return;\n const val = this.unmask ? this.unmaskValue(value) : value;\n\n this.currentVal = value;\n\n this.writeValue(this.defaultBuffer !== val ? val : '');\n },\n updateValue(updateModel = true) {\n if (this.$el) {\n if (this.d_value == null) {\n this.$el.value = '';\n updateModel && this.updateModelValue('');\n } else {\n this.$el.value = this.d_value;\n this.checkVal();\n\n setTimeout(() => {\n if (this.$el) {\n this.writeBuffer();\n this.checkVal();\n\n if (updateModel) this.updateModelValue(this.$el.value);\n }\n }, 10);\n }\n\n this.focusText = this.$el.value;\n }\n },\n initMask() {\n this.tests = [];\n this.partialPosition = this.mask ? this.mask.length : 0;\n this.len = this.mask ? this.mask.length : 0;\n this.firstNonMaskPos = null;\n this.defs = {\n 9: '[0-9]',\n a: '[A-Za-z]',\n '*': '[A-Za-z0-9]'\n };\n\n let ua = getUserAgent();\n\n this.androidChrome = /chrome/i.test(ua) && /android/i.test(ua);\n\n let maskTokens = this.mask ? this.mask.split('') : '';\n\n for (let i = 0; i < maskTokens.length; i++) {\n let c = maskTokens[i];\n\n if (c === '?') {\n this.len--;\n this.partialPosition = i;\n } else if (this.defs[c]) {\n this.tests.push(new RegExp(this.defs[c]));\n\n if (this.firstNonMaskPos === null) {\n this.firstNonMaskPos = this.tests.length - 1;\n }\n\n if (i < this.partialPosition) {\n this.lastRequiredNonMaskPos = this.tests.length - 1;\n }\n } else {\n this.tests.push(null);\n }\n }\n\n this.buffer = [];\n\n for (let i = 0; i < maskTokens.length; i++) {\n let c = maskTokens[i];\n\n if (c !== '?') {\n if (this.defs[c]) this.buffer.push(this.getPlaceholder(i));\n else this.buffer.push(c);\n }\n }\n\n this.defaultBuffer = this.buffer.join('');\n this.updateValue(false);\n },\n isValueUpdated() {\n return this.unmask ? this.d_value != this.getUnmaskedValue() : this.defaultBuffer !== this.$el.value && this.$el.value !== this.d_value;\n }\n },\n computed: {\n inputClass() {\n return [this.cx('root'), this.class];\n },\n rootPTOptions() {\n return {\n root: mergeProps(this.ptm('pcInputText', this.ptmParams)['root'], this.ptmi('root', this.ptmParams))\n };\n },\n ptmParams() {\n return {\n context: {\n filled: this.$filled\n }\n };\n }\n },\n components: {\n InputText\n }\n};\n</script>\n","<template>\n <InputText\n :id=\"id\"\n :value=\"currentVal\"\n :class=\"inputClass\"\n :readonly=\"readonly\"\n :disabled=\"disabled\"\n :invalid=\"invalid\"\n :size=\"size\"\n :name=\"name\"\n :variant=\"variant\"\n :placeholder=\"placeholder\"\n :fluid=\"$fluid\"\n :unstyled=\"unstyled\"\n @input=\"onInput\"\n @compositionend=\"onInput\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n @keydown=\"onKeyDown\"\n @keypress=\"onKeyPress\"\n @paste=\"onPaste\"\n :pt=\"rootPTOptions\"\n />\n</template>\n\n<script>\nimport { getUserAgent } from '@primeuix/utils/dom';\nimport InputText from 'primevue/inputtext';\nimport { mergeProps } from 'vue';\nimport BaseInputMask from './BaseInputMask.vue';\n\nexport default {\n name: 'InputMask',\n extends: BaseInputMask,\n inheritAttrs: false,\n emits: ['focus', 'blur', 'keydown', 'complete', 'keypress', 'paste'],\n inject: {\n $pcFluid: { default: null }\n },\n data() {\n return {\n currentVal: ''\n };\n },\n watch: {\n mask(newMask, oldMask) {\n if (oldMask !== newMask) {\n this.initMask();\n }\n },\n disabled(newValue, oldValue) {\n if (newValue !== oldValue) {\n this.updateValue();\n }\n }\n },\n mounted() {\n this.initMask();\n },\n updated() {\n if (this.isValueUpdated()) {\n this.updateValue();\n }\n },\n methods: {\n onInput(event) {\n // Check if the event is part of a text composition process (e.g., for Asian languages).\n // If event.isComposing is true, it means the user is still composing text and the input is not finalized.\n if (!event.isComposing) {\n if (this.androidChrome) this.handleAndroidInput(event);\n else this.handleInputChange(event);\n\n this.updateModelValue(event.target.value);\n }\n },\n onFocus(event) {\n if (this.readonly) {\n return;\n }\n\n this.focus = true;\n this.focusText = this.$el.value;\n\n if (!this.$el.value || this.$el.value === this.defaultBuffer) {\n requestAnimationFrame(() => {\n if (this.$el === document.activeElement) {\n this.caret(0, 0);\n }\n });\n } else {\n let pos = this.checkVal();\n\n this.caretTimeoutId = setTimeout(() => {\n if (this.$el !== document.activeElement) {\n return;\n }\n\n this.writeBuffer();\n\n if (pos === this.mask.replace('?', '').length) {\n this.caret(0, pos);\n } else {\n this.caret(pos);\n }\n }, 10);\n }\n\n this.$emit('focus', event);\n },\n onBlur(event) {\n this.focus = false;\n this.checkVal();\n this.updateModelValue(event.target.value);\n\n if (this.$el.value !== this.focusText) {\n let e = document.createEvent('HTMLEvents');\n\n e.initEvent('change', true, false);\n this.$el.dispatchEvent(e);\n }\n\n this.$emit('blur', event);\n this.formField.onBlur?.(event);\n },\n onKeyDown(event) {\n if (this.readonly) {\n return;\n }\n\n let k = event.code,\n pos,\n begin,\n end;\n let iPhone = /iphone/i.test(getUserAgent());\n\n this.oldVal = this.$el.value;\n\n //backspace, delete, and escape get special treatment\n if (k === 'Backspace' || k === 'Delete' || (iPhone && k === 'Escape')) {\n pos = this.caret();\n begin = pos.begin;\n end = pos.end;\n\n if (end - begin === 0) {\n begin = k !== 'Delete' ? this.seekPrev(begin) : (end = this.seekNext(begin - 1));\n end = k === 'Delete' ? this.seekNext(end) : end;\n }\n\n this.clearBuffer(begin, end);\n this.shiftL(begin, end - 1);\n this.updateModelValue(event.target.value);\n\n event.preventDefault();\n } else if (k === 'Enter') {\n // enter\n this.$el.blur();\n this.updateModelValue(event.target.value);\n } else if (k === 'Escape') {\n // escape\n this.$el.value = this.focusText;\n this.caret(0, this.checkVal());\n this.updateModelValue(event.target.value);\n event.preventDefault();\n }\n\n this.$emit('keydown', event);\n },\n onKeyPress(event) {\n if (this.readonly) {\n return;\n }\n\n var k = event.code,\n pos = this.caret(),\n p,\n c,\n next,\n completed;\n\n if (event.ctrlKey || event.altKey || event.metaKey || event.shiftKey || event.key === 'CapsLock' || event.key === 'Escape' || event.key === 'Tab') {\n //Ignore\n return;\n } else if (k && k !== 'Enter') {\n if (pos.end - pos.begin !== 0) {\n this.clearBuffer(pos.begin, pos.end);\n this.shiftL(pos.begin, pos.end - 1);\n }\n\n p = this.seekNext(pos.begin - 1);\n\n if (p < this.len) {\n c = event.key;\n\n if (this.tests[p].test(c)) {\n this.shiftR(p);\n\n this.buffer[p] = c;\n this.writeBuffer();\n next = this.seekNext(p);\n\n if (/android/i.test(getUserAgent())) {\n //Path for CSP Violation on FireFox OS 1.1\n let proxy = () => {\n this.caret(next);\n };\n\n setTimeout(proxy, 0);\n } else {\n this.caret(next);\n }\n\n if (pos.begin <= this.lastRequiredNonMaskPos) {\n completed = this.isCompleted();\n }\n }\n }\n\n event.preventDefault();\n }\n\n this.updateModelValue(event.target.value);\n\n if (completed) {\n this.$emit('complete', event);\n }\n\n this.$emit('keypress', event);\n },\n onPaste(event) {\n this.handleInputChange(event);\n\n this.$emit('paste', event);\n },\n caret(first, last) {\n let range, begin, end;\n\n if (!this.$el.offsetParent || this.$el !== document.activeElement) {\n return;\n }\n\n if (typeof first === 'number') {\n begin = first;\n end = typeof last === 'number' ? last : begin;\n\n if (this.$el.setSelectionRange) {\n this.$el.setSelectionRange(begin, end);\n } else if (this.$el['createTextRange']) {\n range = this.$el['createTextRange']();\n range.collapse(true);\n range.moveEnd('character', end);\n range.moveStart('character', begin);\n range.select();\n }\n } else {\n if (this.$el.setSelectionRange) {\n begin = this.$el.selectionStart;\n end = this.$el.selectionEnd;\n } else if (document['selection'] && document['selection'].createRange) {\n range = document['selection'].createRange();\n begin = 0 - range.duplicate().moveStart('character', -100000);\n end = begin + range.text.length;\n }\n\n return { begin: begin, end: end };\n }\n },\n isCompleted() {\n for (let i = this.firstNonMaskPos; i <= this.lastRequiredNonMaskPos; i++) {\n if (this.tests[i] && this.buffer[i] === this.getPlaceholder(i)) {\n return false;\n }\n }\n\n return true;\n },\n getPlaceholder(i) {\n if (i < this.slotChar.length) {\n return this.slotChar.charAt(i);\n }\n\n return this.slotChar.charAt(0);\n },\n seekNext(pos) {\n while (++pos < this.len && !this.tests[pos]);\n\n return pos;\n },\n seekPrev(pos) {\n while (--pos >= 0 && !this.tests[pos]);\n\n return pos;\n },\n shiftL(begin, end) {\n let i, j;\n\n if (begin < 0) {\n return;\n }\n\n for (i = begin, j = this.seekNext(end); i < this.len; i++) {\n if (this.tests[i]) {\n if (j < this.len && this.tests[i].test(this.buffer[j])) {\n this.buffer[i] = this.buffer[j];\n this.buffer[j] = this.getPlaceholder(j);\n } else {\n break;\n }\n\n j = this.seekNext(j);\n }\n }\n\n this.writeBuffer();\n this.caret(Math.max(this.firstNonMaskPos, begin));\n },\n shiftR(pos) {\n let i, c, j, t;\n\n for (i = pos, c = this.getPlaceholder(pos); i < this.len; i++) {\n if (this.tests[i]) {\n j = this.seekNext(i);\n t = this.buffer[i];\n this.buffer[i] = c;\n\n if (j < this.len && this.tests[j].test(t)) {\n c = t;\n } else {\n break;\n }\n }\n }\n },\n handleAndroidInput(event) {\n var curVal = this.$el.value;\n var pos = this.caret();\n\n if (this.oldVal && this.oldVal.length && this.oldVal.length > curVal.length) {\n // a deletion or backspace happened\n this.checkVal(true);\n while (pos.begin > 0 && !this.tests[pos.begin - 1]) pos.begin--;\n\n if (pos.begin === 0) {\n while (pos.begin < this.firstNonMaskPos && !this.tests[pos.begin]) pos.begin++;\n }\n\n this.caret(pos.begin, pos.begin);\n } else {\n this.checkVal(true);\n while (pos.begin < this.len && !this.tests[pos.begin]) pos.begin++;\n\n this.caret(pos.begin, pos.begin);\n }\n\n if (this.isCompleted()) {\n this.$emit('complete', event);\n }\n },\n clearBuffer(start, end) {\n let i;\n\n for (i = start; i < end && i < this.len; i++) {\n if (this.tests[i]) {\n this.buffer[i] = this.getPlaceholder(i);\n }\n }\n },\n writeBuffer() {\n this.$el.value = this.buffer.join('');\n },\n checkVal(allow) {\n this.isValueChecked = true;\n //try to place characters where they belong\n let test = this.$el.value,\n lastMatch = -1,\n i,\n c,\n pos;\n\n for (i = 0, pos = 0; i < this.len; i++) {\n if (this.tests[i]) {\n this.buffer[i] = this.getPlaceholder(i);\n\n while (pos++ < test.length) {\n c = test.charAt(pos - 1);\n\n if (this.tests[i].test(c)) {\n this.buffer[i] = c;\n lastMatch = i;\n break;\n }\n }\n\n if (pos > test.length) {\n this.clearBuffer(i + 1, this.len);\n break;\n }\n } else {\n if (this.buffer[i] === test.charAt(pos)) {\n pos++;\n }\n\n if (i < this.partialPosition) {\n lastMatch = i;\n }\n }\n }\n\n if (allow) {\n this.writeBuffer();\n } else if (lastMatch + 1 < this.partialPosition) {\n if (this.autoClear || this.buffer.join('') === this.defaultBuffer) {\n // Invalid value. Remove it and replace it with the\n // mask, which is the default behavior.\n if (this.$el.value) this.$el.value = '';\n this.clearBuffer(0, this.len);\n } else {\n // Invalid value, but we opt to show the value to the\n // user and allow them to correct their mistake.\n this.writeBuffer();\n }\n } else {\n this.writeBuffer();\n this.$el.value = this.$el.value.substring(0, lastMatch + 1);\n }\n\n return this.partialPosition ? i : this.firstNonMaskPos;\n },\n handleInputChange(event) {\n const isPasteEvent = event.type === 'paste';\n\n if (this.readonly || isPasteEvent) {\n return;\n }\n\n var pos = this.checkVal(true);\n\n this.caret(pos);\n this.updateModelValue(event.target.value);\n\n if (this.isCompleted()) {\n this.$emit('complete', event);\n }\n },\n getUnmaskedValue() {\n let unmaskedBuffer = [];\n\n for (let i = 0; i < this.buffer.length; i++) {\n let c = this.buffer[i];\n\n if (this.tests[i] && c !== this.getPlaceholder(i)) {\n unmaskedBuffer.push(c);\n }\n }\n\n return unmaskedBuffer.join('');\n },\n unmaskValue(value) {\n let unmaskedBuffer = [];\n let thisbuffer = value.split('');\n\n for (let i = 0; i < thisbuffer.length; i++) {\n let c = thisbuffer[i];\n\n if (this.tests[i] && c !== this.getPlaceholder(i)) {\n unmaskedBuffer.push(c);\n }\n }\n\n return unmaskedBuffer.join('');\n },\n\n updateModelValue(value) {\n if (this.currentVal === value) return;\n const val = this.unmask ? this.unmaskValue(value) : value;\n\n this.currentVal = value;\n\n this.writeValue(this.defaultBuffer !== val ? val : '');\n },\n updateValue(updateModel = true) {\n if (this.$el) {\n if (this.d_value == null) {\n this.$el.value = '';\n updateModel && this.updateModelValue('');\n } else {\n this.$el.value = this.d_value;\n this.checkVal();\n\n setTimeout(() => {\n if (this.$el) {\n this.writeBuffer();\n this.checkVal();\n\n if (updateModel) this.updateModelValue(this.$el.value);\n }\n }, 10);\n }\n\n this.focusText = this.$el.value;\n }\n },\n initMask() {\n this.tests = [];\n this.partialPosition = this.mask ? this.mask.length : 0;\n this.len = this.mask ? this.mask.length : 0;\n this.firstNonMaskPos = null;\n this.defs = {\n 9: '[0-9]',\n a: '[A-Za-z]',\n '*': '[A-Za-z0-9]'\n };\n\n let ua = getUserAgent();\n\n this.androidChrome = /chrome/i.test(ua) && /android/i.test(ua);\n\n let maskTokens = this.mask ? this.mask.split('') : '';\n\n for (let i = 0; i < maskTokens.length; i++) {\n let c = maskTokens[i];\n\n if (c === '?') {\n this.len--;\n this.partialPosition = i;\n } else if (this.defs[c]) {\n this.tests.push(new RegExp(this.defs[c]));\n\n if (this.firstNonMaskPos === null) {\n this.firstNonMaskPos = this.tests.length - 1;\n }\n\n if (i < this.partialPosition) {\n this.lastRequiredNonMaskPos = this.tests.length - 1;\n }\n } else {\n this.tests.push(null);\n }\n }\n\n this.buffer = [];\n\n for (let i = 0; i < maskTokens.length; i++) {\n let c = maskTokens[i];\n\n if (c !== '?') {\n if (this.defs[c]) this.buffer.push(this.getPlaceholder(i));\n else this.buffer.push(c);\n }\n }\n\n this.defaultBuffer = this.buffer.join('');\n this.updateValue(false);\n },\n isValueUpdated() {\n return this.unmask ? this.d_value != this.getUnmaskedValue() : this.defaultBuffer !== this.$el.value && this.$el.value !== this.d_value;\n }\n },\n computed: {\n inputClass() {\n return [this.cx('root'), this.class];\n },\n rootPTOptions() {\n return {\n root: mergeProps(this.ptm('pcInputText', this.ptmParams)['root'], this.ptmi('root', this.ptmParams))\n };\n },\n ptmParams() {\n return {\n context: {\n filled: this.$filled\n }\n };\n }\n },\n components: {\n InputText\n }\n};\n</script>\n"],"names":["name","BaseInput","props","slotChar","type","String","id","Object","mask","placeholder","autoClear","Boolean","unmask","readonly","style","InputMaskStyle","provide","$pcInputMask","$parentInstance","BaseInputMask","inheritAttrs","emits","inject","$pcFluid","data","currentVal","watch","newMask","oldMask","initMask","disabled","newValue","oldValue","updateValue","mounted","updated","isValueUpdated","methods","onInput","event","isComposing","androidChrome","handleAndroidInput","handleInputChange","updateModelValue","target","value","onFocus","_this","focus","focusText","$el","defaultBuffer","requestAnimationFrame","document","activeElement","caret","pos","checkVal","caretTimeoutId","setTimeout","writeBuffer","replace","length","$emit","onBlur","_this$formField$onBlu","_this$formField","e","createEvent","initEvent","dispatchEvent","formField","call","onKeyDown","k","code","begin","end","iPhone","test","getUserAgent","oldVal","seekPrev","seekNext","clearBuffer","shiftL","preventDefault","blur","onKeyPress","_this2","p","c","next","completed","ctrlKey","altKey","metaKey","shiftKey","key","len","tests","shiftR","buffer","proxy","lastRequiredNonMaskPos","isCompleted","onPaste","first","last","range","offsetParent","setSelectionRange","collapse","moveEnd","moveStart","select","selectionStart","selectionEnd","createRange","duplicate","text","i","firstNonMaskPos","getPlaceholder","charAt","j","Math","max","t","curVal","start","join","allow","isValueChecked","lastMatch","partialPosition","substring","isPasteEvent","getUnmaskedValue","unmaskedBuffer","push","unmaskValue","thisbuffer","split","val","writeValue","_this3","updateModel","arguments","undefined","d_value","defs","a","ua","maskTokens","RegExp","computed","inputClass","cx","rootPTOptions","root","mergeProps","ptm","ptmParams","ptmi","context","filled","$filled","components","InputText","_createBlock","_component_InputText","_ctx","$data","$options","invalid","size","variant","fluid","$fluid","unstyled","onCompositionend","onKeydown","onKeypress","pt"],"mappings":"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"}
|
package/inputnumber/index.mjs
CHANGED
|
@@ -1053,7 +1053,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
1053
1053
|
role: "spinbutton",
|
|
1054
1054
|
"class": normalizeClass([_ctx.cx('pcInputText'), _ctx.inputClass]),
|
|
1055
1055
|
style: normalizeStyle(_ctx.inputStyle),
|
|
1056
|
-
|
|
1056
|
+
defaultValue: $options.formattedValue,
|
|
1057
1057
|
"aria-valuemin": _ctx.min,
|
|
1058
1058
|
"aria-valuemax": _ctx.max,
|
|
1059
1059
|
"aria-valuenow": _ctx.d_value,
|
|
@@ -1077,7 +1077,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
1077
1077
|
pt: _ctx.ptm('pcInputText'),
|
|
1078
1078
|
unstyled: _ctx.unstyled,
|
|
1079
1079
|
"data-p": $options.dataP
|
|
1080
|
-
}, null, 8, ["id", "name", "class", "style", "
|
|
1080
|
+
}, null, 8, ["id", "name", "class", "style", "defaultValue", "aria-valuemin", "aria-valuemax", "aria-valuenow", "inputmode", "disabled", "readonly", "placeholder", "aria-labelledby", "aria-label", "required", "size", "invalid", "variant", "onInput", "onKeydown", "onKeypress", "onPaste", "onClick", "onFocus", "onBlur", "pt", "unstyled", "data-p"]), _ctx.showButtons && _ctx.buttonLayout === 'stacked' ? (openBlock(), createElementBlock("span", mergeProps({
|
|
1081
1081
|
key: 0,
|
|
1082
1082
|
"class": _ctx.cx('buttonGroup')
|
|
1083
1083
|
}, _ctx.ptm('buttonGroup'), {
|