primevue 4.0.7 → 4.1.0
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/autocomplete/AutoComplete.vue +50 -50
- package/autocomplete/index.d.ts +5 -1
- package/autocomplete/index.mjs +11 -8
- package/autocomplete/index.mjs.map +1 -1
- package/autocomplete/style/index.d.ts +4 -0
- package/autocomplete/style/index.mjs +3 -2
- package/autocomplete/style/index.mjs.map +1 -1
- package/button/BaseButton.vue +2 -2
- package/button/Button.vue +1 -1
- package/button/index.d.ts +2 -2
- package/button/index.mjs +7 -6
- package/button/index.mjs.map +1 -1
- package/carousel/Carousel.vue +2 -7
- package/carousel/index.mjs +2 -7
- package/carousel/index.mjs.map +1 -1
- package/carousel/style/index.mjs +1 -1
- package/carousel/style/index.mjs.map +1 -1
- package/cascadeselect/BaseCascadeSelect.vue +4 -0
- package/cascadeselect/CascadeSelect.vue +53 -10
- package/cascadeselect/CascadeSelectSub.vue +24 -27
- package/cascadeselect/index.d.ts +41 -1
- package/cascadeselect/index.mjs +114 -73
- package/cascadeselect/index.mjs.map +1 -1
- package/cascadeselect/style/index.mjs +13 -6
- package/cascadeselect/style/index.mjs.map +1 -1
- package/colorpicker/BaseColorPicker.vue +2 -1
- package/colorpicker/ColorPicker.vue +3 -3
- package/colorpicker/index.d.ts +6 -1
- package/colorpicker/index.mjs +11 -4
- package/colorpicker/index.mjs.map +1 -1
- package/config/index.d.ts +9 -3
- package/confirmationoptions/index.d.ts +12 -0
- package/confirmdialog/ConfirmDialog.vue +11 -1
- package/confirmdialog/index.d.ts +3 -7
- package/confirmdialog/index.mjs +12 -2
- package/confirmdialog/index.mjs.map +1 -1
- package/contextmenu/BaseContextMenu.vue +4 -0
- package/contextmenu/ContextMenu.vue +37 -10
- package/contextmenu/index.d.ts +10 -5
- package/contextmenu/index.mjs +57 -28
- package/contextmenu/index.mjs.map +1 -1
- package/contextmenu/style/index.mjs +10 -5
- package/contextmenu/style/index.mjs.map +1 -1
- package/datatable/BaseDataTable.vue +4 -0
- package/datatable/DataTable.vue +5 -10
- package/datatable/HeaderCheckbox.vue +1 -1
- package/datatable/TableBody.vue +1 -1
- package/datatable/TableHeader.vue +51 -51
- package/datatable/index.d.ts +5 -0
- package/datatable/index.mjs +90 -87
- package/datatable/index.mjs.map +1 -1
- package/datatable/style/index.mjs +1 -1
- package/datatable/style/index.mjs.map +1 -1
- package/datepicker/DatePicker.vue +13 -11
- package/datepicker/index.d.ts +2 -10
- package/datepicker/index.mjs +12 -10
- package/datepicker/index.mjs.map +1 -1
- package/datepicker/style/index.mjs +3 -3
- package/datepicker/style/index.mjs.map +1 -1
- package/dialog/Dialog.vue +4 -10
- package/dialog/index.mjs +3 -10
- package/dialog/index.mjs.map +1 -1
- package/drawer/index.d.ts +5 -1
- package/fieldset/index.d.ts +2 -6
- package/fileupload/index.d.ts +1 -1
- package/floatlabel/BaseFloatLabel.vue +6 -1
- package/floatlabel/index.d.ts +7 -2
- package/floatlabel/index.mjs +6 -1
- package/floatlabel/index.mjs.map +1 -1
- package/floatlabel/style/index.d.ts +2 -2
- package/floatlabel/style/index.mjs +10 -2
- package/floatlabel/style/index.mjs.map +1 -1
- package/focustrap/index.d.ts +1 -1
- package/galleria/index.d.ts +8 -8
- package/galleria/style/index.mjs +2 -2
- package/galleria/style/index.mjs.map +1 -1
- package/iftalabel/BaseIftaLabel.vue +16 -0
- package/iftalabel/IftaLabel.vue +15 -0
- package/iftalabel/index.d.ts +130 -0
- package/iftalabel/index.mjs +32 -0
- package/iftalabel/index.mjs.map +1 -0
- package/iftalabel/package.json +11 -0
- package/iftalabel/style/index.d.ts +19 -0
- package/iftalabel/style/index.mjs +17 -0
- package/iftalabel/style/index.mjs.map +1 -0
- package/iftalabel/style/package.json +6 -0
- package/imagecompare/BaseImageCompare.vue +30 -0
- package/imagecompare/ImageCompare.vue +24 -0
- package/imagecompare/index.d.ts +149 -0
- package/imagecompare/index.mjs +61 -0
- package/imagecompare/index.mjs.map +1 -0
- package/imagecompare/package.json +11 -0
- package/imagecompare/style/index.d.ts +23 -0
- package/imagecompare/style/index.mjs +18 -0
- package/imagecompare/style/index.mjs.map +1 -0
- package/imagecompare/style/package.json +6 -0
- package/inputgroup/BaseInputGroup.vue +0 -6
- package/inputgroup/InputGroup.vue +1 -10
- package/inputgroup/index.d.ts +0 -5
- package/inputgroup/index.mjs +1 -18
- package/inputgroup/index.mjs.map +1 -1
- package/inputgroup/style/index.mjs +2 -7
- package/inputgroup/style/index.mjs.map +1 -1
- package/inputmask/InputMask.vue +23 -17
- package/inputmask/index.mjs +21 -16
- package/inputmask/index.mjs.map +1 -1
- package/inputnumber/InputNumber.vue +2 -2
- package/inputnumber/index.d.ts +1 -1
- package/inputnumber/index.mjs +2 -2
- package/inputnumber/index.mjs.map +1 -1
- package/inputnumber/style/index.mjs +2 -2
- package/inputnumber/style/index.mjs.map +1 -1
- package/inputotp/BaseInputOtp.vue +1 -1
- package/inputotp/InputOtp.vue +6 -12
- package/inputotp/index.d.ts +2 -2
- package/inputotp/index.mjs +11 -12
- package/inputotp/index.mjs.map +1 -1
- package/inputotp/style/index.mjs +1 -1
- package/inputotp/style/index.mjs.map +1 -1
- package/inputtext/style/index.mjs +1 -1
- package/inputtext/style/index.mjs.map +1 -1
- package/keyfilter/index.d.ts +153 -0
- package/keyfilter/index.mjs +127 -0
- package/keyfilter/index.mjs.map +1 -0
- package/keyfilter/package.json +5 -0
- package/keyfilter/style/index.d.ts +14 -0
- package/keyfilter/style/index.mjs +8 -0
- package/keyfilter/style/index.mjs.map +1 -0
- package/keyfilter/style/package.json +6 -0
- package/megamenu/MegaMenu.vue +4 -4
- package/megamenu/index.d.ts +4 -0
- package/megamenu/index.mjs +2 -2
- package/megamenu/index.mjs.map +1 -1
- package/message/Message.vue +3 -19
- package/message/index.mjs +4 -20
- package/message/index.mjs.map +1 -1
- package/multiselect/BaseMultiSelect.vue +1 -5
- package/multiselect/MultiSelect.vue +16 -14
- package/multiselect/index.d.ts +2 -20
- package/multiselect/index.mjs +15 -17
- package/multiselect/index.mjs.map +1 -1
- package/multiselect/style/index.mjs +1 -1
- package/multiselect/style/index.mjs.map +1 -1
- package/orderlist/OrderList.vue +4 -8
- package/orderlist/index.d.ts +1 -5
- package/orderlist/index.mjs +3 -7
- package/orderlist/index.mjs.map +1 -1
- package/package.json +5 -5
- package/paginator/JumpToPageInput.vue +1 -1
- package/paginator/Paginator.vue +4 -16
- package/paginator/index.d.ts +1 -1
- package/paginator/index.mjs +4 -21
- package/paginator/index.mjs.map +1 -1
- package/paginator/style/index.d.ts +1 -1
- package/paginator/style/index.mjs +1 -1
- package/paginator/style/index.mjs.map +1 -1
- package/panelmenu/index.d.ts +1 -1
- package/password/BasePassword.vue +4 -0
- package/password/Password.vue +4 -3
- package/password/index.d.ts +6 -1
- package/password/index.mjs +10 -5
- package/password/index.mjs.map +1 -1
- package/password/style/index.mjs +1 -1
- package/password/style/index.mjs.map +1 -1
- package/picklist/PickList.vue +4 -8
- package/picklist/index.d.ts +1 -13
- package/picklist/index.mjs +3 -7
- package/picklist/index.mjs.map +1 -1
- package/popover/Popover.vue +4 -10
- package/popover/index.d.ts +1 -1
- package/popover/index.mjs +3 -9
- package/popover/index.mjs.map +1 -1
- package/progressspinner/index.d.ts +1 -1
- package/rating/style/index.mjs +1 -1
- package/rating/style/index.mjs.map +1 -1
- package/scrolltop/ScrollTop.vue +2 -9
- package/scrolltop/index.d.ts +1 -6
- package/scrolltop/index.mjs +3 -9
- package/scrolltop/index.mjs.map +1 -1
- package/select/Select.vue +13 -6
- package/select/index.mjs +54 -45
- package/select/index.mjs.map +1 -1
- package/select/style/index.mjs +1 -1
- package/select/style/index.mjs.map +1 -1
- package/speeddial/SpeedDial.vue +3 -1
- package/speeddial/index.d.ts +16 -1
- package/speeddial/index.mjs +10 -5
- package/speeddial/index.mjs.map +1 -1
- package/splitter/Splitter.vue +31 -25
- package/splitter/index.d.ts +8 -1
- package/splitter/index.mjs +28 -22
- package/splitter/index.mjs.map +1 -1
- package/tieredmenu/BaseTieredMenu.vue +4 -0
- package/tieredmenu/TieredMenu.vue +31 -4
- package/tieredmenu/TieredMenuSub.vue +3 -1
- package/tieredmenu/index.d.ts +5 -0
- package/tieredmenu/index.mjs +63 -34
- package/tieredmenu/index.mjs.map +1 -1
- package/tieredmenu/style/index.mjs +5 -4
- package/tieredmenu/style/index.mjs.map +1 -1
- package/toast/Toast.vue +2 -9
- package/toast/index.mjs +1 -8
- package/toast/index.mjs.map +1 -1
- package/toggleswitch/ToggleSwitch.vue +5 -1
- package/toggleswitch/index.d.ts +17 -1
- package/toggleswitch/index.mjs +7 -3
- package/toggleswitch/index.mjs.map +1 -1
- package/toggleswitch/style/index.d.ts +9 -1
- package/toggleswitch/style/index.mjs +3 -2
- package/toggleswitch/style/index.mjs.map +1 -1
- package/tooltip/index.mjs +6 -1
- package/tooltip/index.mjs.map +1 -1
- package/tree/BaseTree.vue +1 -1
- package/tree/Tree.vue +4 -2
- package/tree/TreeNode.vue +16 -4
- package/tree/index.d.ts +52 -3
- package/tree/index.mjs +23 -10
- package/tree/index.mjs.map +1 -1
- package/treeselect/BaseTreeSelect.vue +36 -0
- package/treeselect/TreeSelect.vue +31 -16
- package/treeselect/index.d.ts +73 -4
- package/treeselect/index.mjs +82 -25
- package/treeselect/index.mjs.map +1 -1
- package/treeselect/style/index.mjs +1 -1
- package/treeselect/style/index.mjs.map +1 -1
- package/treetable/BaseTreeTable.vue +8 -0
- package/treetable/TreeTable.vue +19 -11
- package/treetable/TreeTableRow.vue +28 -2
- package/treetable/index.d.ts +34 -0
- package/treetable/index.mjs +63 -19
- package/treetable/index.mjs.map +1 -1
- package/treetable/style/index.mjs +5 -3
- package/treetable/style/index.mjs.map +1 -1
- package/umd/primevue.min.js +1 -1
- package/vetur-attributes.json +3 -3
- package/virtualscroller/style/index.mjs +3 -1
- package/virtualscroller/style/index.mjs.map +1 -1
- package/web-types.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/colorpicker/BaseColorPicker.vue","../../src/colorpicker/ColorPicker.vue","../../src/colorpicker/ColorPicker.vue?vue&type=template&id=76dfb7c0&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport ColorPickerStyle from 'primevue/colorpicker/style';\n\nexport default {\n name: 'BaseColorPicker',\n extends: BaseComponent,\n props: {\n modelValue: {\n type: null,\n default: null\n },\n defaultColor: {\n type: null,\n default: 'ff0000'\n },\n inline: {\n type: Boolean,\n default: false\n },\n format: {\n type: String,\n default: 'hex'\n },\n disabled: {\n type: Boolean,\n default: false\n },\n tabindex: {\n type: String,\n default: null\n },\n autoZIndex: {\n type: Boolean,\n default: true\n },\n baseZIndex: {\n type: Number,\n default: 0\n },\n appendTo: {\n type: [String, Object],\n default: 'body'\n },\n inputId: {\n type: String,\n default: null\n },\n panelClass: null\n },\n style: ColorPickerStyle,\n provide() {\n return {\n $pcColorPicker: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div ref=\"container\" :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <input v-if=\"!inline\" ref=\"input\" :id=\"inputId\" type=\"text\" :class=\"cx('preview')\" readonly=\"readonly\" :tabindex=\"tabindex\" :disabled=\"disabled\" @click=\"onInputClick\" @keydown=\"onInputKeydown\" v-bind=\"ptm('preview')\" />\n <Portal :appendTo=\"appendTo\" :disabled=\"inline\">\n <transition name=\"p-connected-overlay\" @enter=\"onOverlayEnter\" @leave=\"onOverlayLeave\" @after-leave=\"onOverlayAfterLeave\" v-bind=\"ptm('transition')\">\n <div v-if=\"inline ? true : overlayVisible\" :ref=\"pickerRef\" :class=\"[cx('panel'), panelClass]\" @click=\"onOverlayClick\" v-bind=\"ptm('panel')\">\n <div :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <div :ref=\"colorSelectorRef\" :class=\"cx('colorSelector')\" @mousedown=\"onColorMousedown($event)\" @touchstart=\"onColorDragStart($event)\" @touchmove=\"onDrag($event)\" @touchend=\"onDragEnd()\" v-bind=\"ptm('colorSelector')\">\n <div :class=\"cx('colorBackground')\" v-bind=\"ptm('colorBackground')\">\n <div :ref=\"colorHandleRef\" :class=\"cx('colorHandle')\" v-bind=\"ptm('colorHandle')\"></div>\n </div>\n </div>\n <div :ref=\"hueViewRef\" :class=\"cx('hue')\" @mousedown=\"onHueMousedown($event)\" @touchstart=\"onHueDragStart($event)\" @touchmove=\"onDrag($event)\" @touchend=\"onDragEnd()\" v-bind=\"ptm('hue')\">\n <div :ref=\"hueHandleRef\" :class=\"cx('hueHandle')\" v-bind=\"ptm('hueHandle')\"></div>\n </div>\n </div>\n </div>\n </transition>\n </Portal>\n </div>\n</template>\n\n<script>\nimport { ConnectedOverlayScrollHandler } from '@primevue/core/utils';\nimport { relativePosition, absolutePosition, addClass, removeClass, isTouchDevice } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport OverlayEventBus from 'primevue/overlayeventbus';\nimport Portal from 'primevue/portal';\nimport BaseColorPicker from './BaseColorPicker.vue';\n\nexport default {\n name: 'ColorPicker',\n extends: BaseColorPicker,\n inheritAttrs: false,\n emits: ['update:modelValue', 'change', 'show', 'hide'],\n data() {\n return {\n overlayVisible: false\n };\n },\n hsbValue: null,\n outsideClickListener: null,\n documentMouseMoveListener: null,\n documentMouseUpListener: null,\n scrollHandler: null,\n resizeListener: null,\n hueDragging: null,\n colorDragging: null,\n selfUpdate: null,\n picker: null,\n colorSelector: null,\n colorHandle: null,\n hueView: null,\n hueHandle: null,\n watch: {\n modelValue: {\n immediate: true,\n handler(newValue) {\n this.hsbValue = this.toHSB(newValue);\n\n if (this.selfUpdate) this.selfUpdate = false;\n else this.updateUI();\n }\n }\n },\n beforeUnmount() {\n this.unbindOutsideClickListener();\n this.unbindDragListeners();\n this.unbindResizeListener();\n\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n\n if (this.picker && this.autoZIndex) {\n ZIndex.clear(this.picker);\n }\n\n this.clearRefs();\n },\n mounted() {\n this.updateUI();\n },\n methods: {\n pickColor(event) {\n let rect = this.colorSelector.getBoundingClientRect();\n let top = rect.top + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0);\n let left = rect.left + document.body.scrollLeft;\n let saturation = Math.floor((100 * Math.max(0, Math.min(150, (event.pageX || event.changedTouches[0].pageX) - left))) / 150);\n let brightness = Math.floor((100 * (150 - Math.max(0, Math.min(150, (event.pageY || event.changedTouches[0].pageY) - top)))) / 150);\n\n this.hsbValue = this.validateHSB({\n h: this.hsbValue.h,\n s: saturation,\n b: brightness\n });\n\n this.selfUpdate = true;\n this.updateColorHandle();\n this.updateInput();\n this.updateModel(event);\n },\n pickHue(event) {\n let top = this.hueView.getBoundingClientRect().top + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0);\n\n this.hsbValue = this.validateHSB({\n h: Math.floor((360 * (150 - Math.max(0, Math.min(150, (event.pageY || event.changedTouches[0].pageY) - top)))) / 150),\n s: 100,\n b: 100\n });\n\n this.selfUpdate = true;\n this.updateColorSelector();\n this.updateHue();\n this.updateModel(event);\n this.updateInput();\n },\n updateModel(event) {\n let value = this.modelValue;\n\n switch (this.format) {\n case 'hex':\n value = this.HSBtoHEX(this.hsbValue);\n break;\n\n case 'rgb':\n value = this.HSBtoRGB(this.hsbValue);\n break;\n\n case 'hsb':\n value = this.hsbValue;\n break;\n\n default:\n //NoOp\n break;\n }\n\n this.$emit('update:modelValue', value);\n this.$emit('change', { event, value });\n },\n updateColorSelector() {\n if (this.colorSelector) {\n let hsbValue = this.validateHSB({\n h: this.hsbValue.h,\n s: 100,\n b: 100\n });\n\n this.colorSelector.style.backgroundColor = '#' + this.HSBtoHEX(hsbValue);\n }\n },\n updateColorHandle() {\n if (this.colorHandle) {\n this.colorHandle.style.left = Math.floor((150 * this.hsbValue.s) / 100) + 'px';\n this.colorHandle.style.top = Math.floor((150 * (100 - this.hsbValue.b)) / 100) + 'px';\n }\n },\n updateHue() {\n if (this.hueHandle) {\n this.hueHandle.style.top = Math.floor(150 - (150 * this.hsbValue.h) / 360) + 'px';\n }\n },\n updateInput() {\n if (this.$refs.input) {\n this.$refs.input.style.backgroundColor = '#' + this.HSBtoHEX(this.hsbValue);\n }\n },\n updateUI() {\n this.updateHue();\n this.updateColorHandle();\n this.updateInput();\n this.updateColorSelector();\n },\n validateHSB(hsb) {\n return {\n h: Math.min(360, Math.max(0, hsb.h)),\n s: Math.min(100, Math.max(0, hsb.s)),\n b: Math.min(100, Math.max(0, hsb.b))\n };\n },\n validateRGB(rgb) {\n return {\n r: Math.min(255, Math.max(0, rgb.r)),\n g: Math.min(255, Math.max(0, rgb.g)),\n b: Math.min(255, Math.max(0, rgb.b))\n };\n },\n validateHEX(hex) {\n var len = 6 - hex.length;\n\n if (len > 0) {\n var o = [];\n\n for (var i = 0; i < len; i++) {\n o.push('0');\n }\n\n o.push(hex);\n hex = o.join('');\n }\n\n return hex;\n },\n HEXtoRGB(hex) {\n let hexValue = parseInt(hex.indexOf('#') > -1 ? hex.substring(1) : hex, 16);\n\n return { r: hexValue >> 16, g: (hexValue & 0x00ff00) >> 8, b: hexValue & 0x0000ff };\n },\n HEXtoHSB(hex) {\n return this.RGBtoHSB(this.HEXtoRGB(hex));\n },\n RGBtoHSB(rgb) {\n var hsb = {\n h: 0,\n s: 0,\n b: 0\n };\n var min = Math.min(rgb.r, rgb.g, rgb.b);\n var max = Math.max(rgb.r, rgb.g, rgb.b);\n var delta = max - min;\n\n hsb.b = max;\n hsb.s = max !== 0 ? (255 * delta) / max : 0;\n\n if (hsb.s !== 0) {\n if (rgb.r === max) {\n hsb.h = (rgb.g - rgb.b) / delta;\n } else if (rgb.g === max) {\n hsb.h = 2 + (rgb.b - rgb.r) / delta;\n } else {\n hsb.h = 4 + (rgb.r - rgb.g) / delta;\n }\n } else {\n hsb.h = -1;\n }\n\n hsb.h *= 60;\n\n if (hsb.h < 0) {\n hsb.h += 360;\n }\n\n hsb.s *= 100 / 255;\n hsb.b *= 100 / 255;\n\n return hsb;\n },\n HSBtoRGB(hsb) {\n var rgb = {\n r: null,\n g: null,\n b: null\n };\n var h = Math.round(hsb.h);\n var s = Math.round((hsb.s * 255) / 100);\n var v = Math.round((hsb.b * 255) / 100);\n\n if (s === 0) {\n rgb = {\n r: v,\n g: v,\n b: v\n };\n } else {\n var t1 = v;\n var t2 = ((255 - s) * v) / 255;\n var t3 = ((t1 - t2) * (h % 60)) / 60;\n\n if (h === 360) h = 0;\n\n if (h < 60) {\n rgb.r = t1;\n rgb.b = t2;\n rgb.g = t2 + t3;\n } else if (h < 120) {\n rgb.g = t1;\n rgb.b = t2;\n rgb.r = t1 - t3;\n } else if (h < 180) {\n rgb.g = t1;\n rgb.r = t2;\n rgb.b = t2 + t3;\n } else if (h < 240) {\n rgb.b = t1;\n rgb.r = t2;\n rgb.g = t1 - t3;\n } else if (h < 300) {\n rgb.b = t1;\n rgb.g = t2;\n rgb.r = t2 + t3;\n } else if (h < 360) {\n rgb.r = t1;\n rgb.g = t2;\n rgb.b = t1 - t3;\n } else {\n rgb.r = 0;\n rgb.g = 0;\n rgb.b = 0;\n }\n }\n\n return { r: Math.round(rgb.r), g: Math.round(rgb.g), b: Math.round(rgb.b) };\n },\n RGBtoHEX(rgb) {\n var hex = [rgb.r.toString(16), rgb.g.toString(16), rgb.b.toString(16)];\n\n for (var key in hex) {\n if (hex[key].length === 1) {\n hex[key] = '0' + hex[key];\n }\n }\n\n return hex.join('');\n },\n HSBtoHEX(hsb) {\n return this.RGBtoHEX(this.HSBtoRGB(hsb));\n },\n toHSB(value) {\n let hsb;\n\n if (value) {\n switch (this.format) {\n case 'hex':\n hsb = this.HEXtoHSB(value);\n break;\n\n case 'rgb':\n hsb = this.RGBtoHSB(value);\n break;\n\n case 'hsb':\n hsb = value;\n break;\n\n default:\n break;\n }\n } else {\n hsb = this.HEXtoHSB(this.defaultColor);\n }\n\n return hsb;\n },\n onOverlayEnter(el) {\n this.updateUI();\n this.alignOverlay();\n this.bindOutsideClickListener();\n this.bindScrollListener();\n this.bindResizeListener();\n\n if (this.autoZIndex) {\n ZIndex.set('overlay', el, this.baseZIndex, this.$primevue.config.zIndex.overlay);\n }\n\n this.$emit('show');\n },\n onOverlayLeave() {\n this.unbindOutsideClickListener();\n this.unbindScrollListener();\n this.unbindResizeListener();\n this.clearRefs();\n this.$emit('hide');\n },\n onOverlayAfterLeave(el) {\n if (this.autoZIndex) {\n ZIndex.clear(el);\n }\n },\n alignOverlay() {\n if (this.appendTo === 'self') relativePosition(this.picker, this.$refs.input);\n else absolutePosition(this.picker, this.$refs.input);\n },\n onInputClick() {\n if (this.disabled) {\n return;\n }\n\n this.overlayVisible = !this.overlayVisible;\n },\n onInputKeydown(event) {\n switch (event.code) {\n case 'Space':\n this.overlayVisible = !this.overlayVisible;\n event.preventDefault();\n break;\n\n case 'Escape':\n case 'Tab':\n this.overlayVisible = false;\n break;\n\n default:\n //NoOp\n break;\n }\n },\n onColorMousedown(event) {\n if (this.disabled) {\n return;\n }\n\n this.bindDragListeners();\n this.onColorDragStart(event);\n },\n onColorDragStart(event) {\n if (this.disabled) {\n return;\n }\n\n this.colorDragging = true;\n this.pickColor(event);\n this.$el.setAttribute('p-colorpicker-dragging', 'true');\n !this.isUnstyled && addClass(this.$el, 'p-colorpicker-dragging');\n event.preventDefault();\n },\n onDrag(event) {\n if (this.colorDragging) {\n this.pickColor(event);\n event.preventDefault();\n }\n\n if (this.hueDragging) {\n this.pickHue(event);\n event.preventDefault();\n }\n },\n onDragEnd() {\n this.colorDragging = false;\n this.hueDragging = false;\n this.$el.setAttribute('p-colorpicker-dragging', 'false');\n !this.isUnstyled && removeClass(this.$el, 'p-colorpicker-dragging');\n this.unbindDragListeners();\n },\n onHueMousedown(event) {\n if (this.disabled) {\n return;\n }\n\n this.bindDragListeners();\n this.onHueDragStart(event);\n },\n onHueDragStart(event) {\n if (this.disabled) {\n return;\n }\n\n this.hueDragging = true;\n this.pickHue(event);\n !this.isUnstyled && addClass(this.$el, 'p-colorpicker-dragging');\n },\n isInputClicked(event) {\n return this.$refs.input && this.$refs.input.isSameNode(event.target);\n },\n bindDragListeners() {\n this.bindDocumentMouseMoveListener();\n this.bindDocumentMouseUpListener();\n },\n unbindDragListeners() {\n this.unbindDocumentMouseMoveListener();\n this.unbindDocumentMouseUpListener();\n },\n bindOutsideClickListener() {\n if (!this.outsideClickListener) {\n this.outsideClickListener = (event) => {\n if (this.overlayVisible && this.picker && !this.picker.contains(event.target) && !this.isInputClicked(event)) {\n this.overlayVisible = false;\n }\n };\n\n document.addEventListener('click', this.outsideClickListener);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener);\n this.outsideClickListener = null;\n }\n },\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.$refs.container, () => {\n if (this.overlayVisible) {\n this.overlayVisible = false;\n }\n });\n }\n\n this.scrollHandler.bindScrollListener();\n },\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n },\n bindResizeListener() {\n if (!this.resizeListener) {\n this.resizeListener = () => {\n if (this.overlayVisible && !isTouchDevice()) {\n this.overlayVisible = false;\n }\n };\n\n window.addEventListener('resize', this.resizeListener);\n }\n },\n unbindResizeListener() {\n if (this.resizeListener) {\n window.removeEventListener('resize', this.resizeListener);\n this.resizeListener = null;\n }\n },\n bindDocumentMouseMoveListener() {\n if (!this.documentMouseMoveListener) {\n this.documentMouseMoveListener = this.onDrag.bind(this);\n document.addEventListener('mousemove', this.documentMouseMoveListener);\n }\n },\n unbindDocumentMouseMoveListener() {\n if (this.documentMouseMoveListener) {\n document.removeEventListener('mousemove', this.documentMouseMoveListener);\n this.documentMouseMoveListener = null;\n }\n },\n bindDocumentMouseUpListener() {\n if (!this.documentMouseUpListener) {\n this.documentMouseUpListener = this.onDragEnd.bind(this);\n document.addEventListener('mouseup', this.documentMouseUpListener);\n }\n },\n unbindDocumentMouseUpListener() {\n if (this.documentMouseUpListener) {\n document.removeEventListener('mouseup', this.documentMouseUpListener);\n this.documentMouseUpListener = null;\n }\n },\n pickerRef(el) {\n this.picker = el;\n },\n colorSelectorRef(el) {\n this.colorSelector = el;\n },\n colorHandleRef(el) {\n this.colorHandle = el;\n },\n hueViewRef(el) {\n this.hueView = el;\n },\n hueHandleRef(el) {\n this.hueHandle = el;\n },\n clearRefs() {\n this.picker = null;\n this.colorSelector = null;\n this.colorHandle = null;\n this.hueView = null;\n this.hueHandle = null;\n },\n onOverlayClick(event) {\n OverlayEventBus.emit('overlay-click', {\n originalEvent: event,\n target: this.$el\n });\n }\n },\n components: {\n Portal: Portal\n }\n};\n</script>\n","<template>\n <div ref=\"container\" :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <input v-if=\"!inline\" ref=\"input\" :id=\"inputId\" type=\"text\" :class=\"cx('preview')\" readonly=\"readonly\" :tabindex=\"tabindex\" :disabled=\"disabled\" @click=\"onInputClick\" @keydown=\"onInputKeydown\" v-bind=\"ptm('preview')\" />\n <Portal :appendTo=\"appendTo\" :disabled=\"inline\">\n <transition name=\"p-connected-overlay\" @enter=\"onOverlayEnter\" @leave=\"onOverlayLeave\" @after-leave=\"onOverlayAfterLeave\" v-bind=\"ptm('transition')\">\n <div v-if=\"inline ? true : overlayVisible\" :ref=\"pickerRef\" :class=\"[cx('panel'), panelClass]\" @click=\"onOverlayClick\" v-bind=\"ptm('panel')\">\n <div :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <div :ref=\"colorSelectorRef\" :class=\"cx('colorSelector')\" @mousedown=\"onColorMousedown($event)\" @touchstart=\"onColorDragStart($event)\" @touchmove=\"onDrag($event)\" @touchend=\"onDragEnd()\" v-bind=\"ptm('colorSelector')\">\n <div :class=\"cx('colorBackground')\" v-bind=\"ptm('colorBackground')\">\n <div :ref=\"colorHandleRef\" :class=\"cx('colorHandle')\" v-bind=\"ptm('colorHandle')\"></div>\n </div>\n </div>\n <div :ref=\"hueViewRef\" :class=\"cx('hue')\" @mousedown=\"onHueMousedown($event)\" @touchstart=\"onHueDragStart($event)\" @touchmove=\"onDrag($event)\" @touchend=\"onDragEnd()\" v-bind=\"ptm('hue')\">\n <div :ref=\"hueHandleRef\" :class=\"cx('hueHandle')\" v-bind=\"ptm('hueHandle')\"></div>\n </div>\n </div>\n </div>\n </transition>\n </Portal>\n </div>\n</template>\n\n<script>\nimport { ConnectedOverlayScrollHandler } from '@primevue/core/utils';\nimport { relativePosition, absolutePosition, addClass, removeClass, isTouchDevice } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport OverlayEventBus from 'primevue/overlayeventbus';\nimport Portal from 'primevue/portal';\nimport BaseColorPicker from './BaseColorPicker.vue';\n\nexport default {\n name: 'ColorPicker',\n extends: BaseColorPicker,\n inheritAttrs: false,\n emits: ['update:modelValue', 'change', 'show', 'hide'],\n data() {\n return {\n overlayVisible: false\n };\n },\n hsbValue: null,\n outsideClickListener: null,\n documentMouseMoveListener: null,\n documentMouseUpListener: null,\n scrollHandler: null,\n resizeListener: null,\n hueDragging: null,\n colorDragging: null,\n selfUpdate: null,\n picker: null,\n colorSelector: null,\n colorHandle: null,\n hueView: null,\n hueHandle: null,\n watch: {\n modelValue: {\n immediate: true,\n handler(newValue) {\n this.hsbValue = this.toHSB(newValue);\n\n if (this.selfUpdate) this.selfUpdate = false;\n else this.updateUI();\n }\n }\n },\n beforeUnmount() {\n this.unbindOutsideClickListener();\n this.unbindDragListeners();\n this.unbindResizeListener();\n\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n\n if (this.picker && this.autoZIndex) {\n ZIndex.clear(this.picker);\n }\n\n this.clearRefs();\n },\n mounted() {\n this.updateUI();\n },\n methods: {\n pickColor(event) {\n let rect = this.colorSelector.getBoundingClientRect();\n let top = rect.top + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0);\n let left = rect.left + document.body.scrollLeft;\n let saturation = Math.floor((100 * Math.max(0, Math.min(150, (event.pageX || event.changedTouches[0].pageX) - left))) / 150);\n let brightness = Math.floor((100 * (150 - Math.max(0, Math.min(150, (event.pageY || event.changedTouches[0].pageY) - top)))) / 150);\n\n this.hsbValue = this.validateHSB({\n h: this.hsbValue.h,\n s: saturation,\n b: brightness\n });\n\n this.selfUpdate = true;\n this.updateColorHandle();\n this.updateInput();\n this.updateModel(event);\n },\n pickHue(event) {\n let top = this.hueView.getBoundingClientRect().top + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0);\n\n this.hsbValue = this.validateHSB({\n h: Math.floor((360 * (150 - Math.max(0, Math.min(150, (event.pageY || event.changedTouches[0].pageY) - top)))) / 150),\n s: 100,\n b: 100\n });\n\n this.selfUpdate = true;\n this.updateColorSelector();\n this.updateHue();\n this.updateModel(event);\n this.updateInput();\n },\n updateModel(event) {\n let value = this.modelValue;\n\n switch (this.format) {\n case 'hex':\n value = this.HSBtoHEX(this.hsbValue);\n break;\n\n case 'rgb':\n value = this.HSBtoRGB(this.hsbValue);\n break;\n\n case 'hsb':\n value = this.hsbValue;\n break;\n\n default:\n //NoOp\n break;\n }\n\n this.$emit('update:modelValue', value);\n this.$emit('change', { event, value });\n },\n updateColorSelector() {\n if (this.colorSelector) {\n let hsbValue = this.validateHSB({\n h: this.hsbValue.h,\n s: 100,\n b: 100\n });\n\n this.colorSelector.style.backgroundColor = '#' + this.HSBtoHEX(hsbValue);\n }\n },\n updateColorHandle() {\n if (this.colorHandle) {\n this.colorHandle.style.left = Math.floor((150 * this.hsbValue.s) / 100) + 'px';\n this.colorHandle.style.top = Math.floor((150 * (100 - this.hsbValue.b)) / 100) + 'px';\n }\n },\n updateHue() {\n if (this.hueHandle) {\n this.hueHandle.style.top = Math.floor(150 - (150 * this.hsbValue.h) / 360) + 'px';\n }\n },\n updateInput() {\n if (this.$refs.input) {\n this.$refs.input.style.backgroundColor = '#' + this.HSBtoHEX(this.hsbValue);\n }\n },\n updateUI() {\n this.updateHue();\n this.updateColorHandle();\n this.updateInput();\n this.updateColorSelector();\n },\n validateHSB(hsb) {\n return {\n h: Math.min(360, Math.max(0, hsb.h)),\n s: Math.min(100, Math.max(0, hsb.s)),\n b: Math.min(100, Math.max(0, hsb.b))\n };\n },\n validateRGB(rgb) {\n return {\n r: Math.min(255, Math.max(0, rgb.r)),\n g: Math.min(255, Math.max(0, rgb.g)),\n b: Math.min(255, Math.max(0, rgb.b))\n };\n },\n validateHEX(hex) {\n var len = 6 - hex.length;\n\n if (len > 0) {\n var o = [];\n\n for (var i = 0; i < len; i++) {\n o.push('0');\n }\n\n o.push(hex);\n hex = o.join('');\n }\n\n return hex;\n },\n HEXtoRGB(hex) {\n let hexValue = parseInt(hex.indexOf('#') > -1 ? hex.substring(1) : hex, 16);\n\n return { r: hexValue >> 16, g: (hexValue & 0x00ff00) >> 8, b: hexValue & 0x0000ff };\n },\n HEXtoHSB(hex) {\n return this.RGBtoHSB(this.HEXtoRGB(hex));\n },\n RGBtoHSB(rgb) {\n var hsb = {\n h: 0,\n s: 0,\n b: 0\n };\n var min = Math.min(rgb.r, rgb.g, rgb.b);\n var max = Math.max(rgb.r, rgb.g, rgb.b);\n var delta = max - min;\n\n hsb.b = max;\n hsb.s = max !== 0 ? (255 * delta) / max : 0;\n\n if (hsb.s !== 0) {\n if (rgb.r === max) {\n hsb.h = (rgb.g - rgb.b) / delta;\n } else if (rgb.g === max) {\n hsb.h = 2 + (rgb.b - rgb.r) / delta;\n } else {\n hsb.h = 4 + (rgb.r - rgb.g) / delta;\n }\n } else {\n hsb.h = -1;\n }\n\n hsb.h *= 60;\n\n if (hsb.h < 0) {\n hsb.h += 360;\n }\n\n hsb.s *= 100 / 255;\n hsb.b *= 100 / 255;\n\n return hsb;\n },\n HSBtoRGB(hsb) {\n var rgb = {\n r: null,\n g: null,\n b: null\n };\n var h = Math.round(hsb.h);\n var s = Math.round((hsb.s * 255) / 100);\n var v = Math.round((hsb.b * 255) / 100);\n\n if (s === 0) {\n rgb = {\n r: v,\n g: v,\n b: v\n };\n } else {\n var t1 = v;\n var t2 = ((255 - s) * v) / 255;\n var t3 = ((t1 - t2) * (h % 60)) / 60;\n\n if (h === 360) h = 0;\n\n if (h < 60) {\n rgb.r = t1;\n rgb.b = t2;\n rgb.g = t2 + t3;\n } else if (h < 120) {\n rgb.g = t1;\n rgb.b = t2;\n rgb.r = t1 - t3;\n } else if (h < 180) {\n rgb.g = t1;\n rgb.r = t2;\n rgb.b = t2 + t3;\n } else if (h < 240) {\n rgb.b = t1;\n rgb.r = t2;\n rgb.g = t1 - t3;\n } else if (h < 300) {\n rgb.b = t1;\n rgb.g = t2;\n rgb.r = t2 + t3;\n } else if (h < 360) {\n rgb.r = t1;\n rgb.g = t2;\n rgb.b = t1 - t3;\n } else {\n rgb.r = 0;\n rgb.g = 0;\n rgb.b = 0;\n }\n }\n\n return { r: Math.round(rgb.r), g: Math.round(rgb.g), b: Math.round(rgb.b) };\n },\n RGBtoHEX(rgb) {\n var hex = [rgb.r.toString(16), rgb.g.toString(16), rgb.b.toString(16)];\n\n for (var key in hex) {\n if (hex[key].length === 1) {\n hex[key] = '0' + hex[key];\n }\n }\n\n return hex.join('');\n },\n HSBtoHEX(hsb) {\n return this.RGBtoHEX(this.HSBtoRGB(hsb));\n },\n toHSB(value) {\n let hsb;\n\n if (value) {\n switch (this.format) {\n case 'hex':\n hsb = this.HEXtoHSB(value);\n break;\n\n case 'rgb':\n hsb = this.RGBtoHSB(value);\n break;\n\n case 'hsb':\n hsb = value;\n break;\n\n default:\n break;\n }\n } else {\n hsb = this.HEXtoHSB(this.defaultColor);\n }\n\n return hsb;\n },\n onOverlayEnter(el) {\n this.updateUI();\n this.alignOverlay();\n this.bindOutsideClickListener();\n this.bindScrollListener();\n this.bindResizeListener();\n\n if (this.autoZIndex) {\n ZIndex.set('overlay', el, this.baseZIndex, this.$primevue.config.zIndex.overlay);\n }\n\n this.$emit('show');\n },\n onOverlayLeave() {\n this.unbindOutsideClickListener();\n this.unbindScrollListener();\n this.unbindResizeListener();\n this.clearRefs();\n this.$emit('hide');\n },\n onOverlayAfterLeave(el) {\n if (this.autoZIndex) {\n ZIndex.clear(el);\n }\n },\n alignOverlay() {\n if (this.appendTo === 'self') relativePosition(this.picker, this.$refs.input);\n else absolutePosition(this.picker, this.$refs.input);\n },\n onInputClick() {\n if (this.disabled) {\n return;\n }\n\n this.overlayVisible = !this.overlayVisible;\n },\n onInputKeydown(event) {\n switch (event.code) {\n case 'Space':\n this.overlayVisible = !this.overlayVisible;\n event.preventDefault();\n break;\n\n case 'Escape':\n case 'Tab':\n this.overlayVisible = false;\n break;\n\n default:\n //NoOp\n break;\n }\n },\n onColorMousedown(event) {\n if (this.disabled) {\n return;\n }\n\n this.bindDragListeners();\n this.onColorDragStart(event);\n },\n onColorDragStart(event) {\n if (this.disabled) {\n return;\n }\n\n this.colorDragging = true;\n this.pickColor(event);\n this.$el.setAttribute('p-colorpicker-dragging', 'true');\n !this.isUnstyled && addClass(this.$el, 'p-colorpicker-dragging');\n event.preventDefault();\n },\n onDrag(event) {\n if (this.colorDragging) {\n this.pickColor(event);\n event.preventDefault();\n }\n\n if (this.hueDragging) {\n this.pickHue(event);\n event.preventDefault();\n }\n },\n onDragEnd() {\n this.colorDragging = false;\n this.hueDragging = false;\n this.$el.setAttribute('p-colorpicker-dragging', 'false');\n !this.isUnstyled && removeClass(this.$el, 'p-colorpicker-dragging');\n this.unbindDragListeners();\n },\n onHueMousedown(event) {\n if (this.disabled) {\n return;\n }\n\n this.bindDragListeners();\n this.onHueDragStart(event);\n },\n onHueDragStart(event) {\n if (this.disabled) {\n return;\n }\n\n this.hueDragging = true;\n this.pickHue(event);\n !this.isUnstyled && addClass(this.$el, 'p-colorpicker-dragging');\n },\n isInputClicked(event) {\n return this.$refs.input && this.$refs.input.isSameNode(event.target);\n },\n bindDragListeners() {\n this.bindDocumentMouseMoveListener();\n this.bindDocumentMouseUpListener();\n },\n unbindDragListeners() {\n this.unbindDocumentMouseMoveListener();\n this.unbindDocumentMouseUpListener();\n },\n bindOutsideClickListener() {\n if (!this.outsideClickListener) {\n this.outsideClickListener = (event) => {\n if (this.overlayVisible && this.picker && !this.picker.contains(event.target) && !this.isInputClicked(event)) {\n this.overlayVisible = false;\n }\n };\n\n document.addEventListener('click', this.outsideClickListener);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener);\n this.outsideClickListener = null;\n }\n },\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.$refs.container, () => {\n if (this.overlayVisible) {\n this.overlayVisible = false;\n }\n });\n }\n\n this.scrollHandler.bindScrollListener();\n },\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n },\n bindResizeListener() {\n if (!this.resizeListener) {\n this.resizeListener = () => {\n if (this.overlayVisible && !isTouchDevice()) {\n this.overlayVisible = false;\n }\n };\n\n window.addEventListener('resize', this.resizeListener);\n }\n },\n unbindResizeListener() {\n if (this.resizeListener) {\n window.removeEventListener('resize', this.resizeListener);\n this.resizeListener = null;\n }\n },\n bindDocumentMouseMoveListener() {\n if (!this.documentMouseMoveListener) {\n this.documentMouseMoveListener = this.onDrag.bind(this);\n document.addEventListener('mousemove', this.documentMouseMoveListener);\n }\n },\n unbindDocumentMouseMoveListener() {\n if (this.documentMouseMoveListener) {\n document.removeEventListener('mousemove', this.documentMouseMoveListener);\n this.documentMouseMoveListener = null;\n }\n },\n bindDocumentMouseUpListener() {\n if (!this.documentMouseUpListener) {\n this.documentMouseUpListener = this.onDragEnd.bind(this);\n document.addEventListener('mouseup', this.documentMouseUpListener);\n }\n },\n unbindDocumentMouseUpListener() {\n if (this.documentMouseUpListener) {\n document.removeEventListener('mouseup', this.documentMouseUpListener);\n this.documentMouseUpListener = null;\n }\n },\n pickerRef(el) {\n this.picker = el;\n },\n colorSelectorRef(el) {\n this.colorSelector = el;\n },\n colorHandleRef(el) {\n this.colorHandle = el;\n },\n hueViewRef(el) {\n this.hueView = el;\n },\n hueHandleRef(el) {\n this.hueHandle = el;\n },\n clearRefs() {\n this.picker = null;\n this.colorSelector = null;\n this.colorHandle = null;\n this.hueView = null;\n this.hueHandle = null;\n },\n onOverlayClick(event) {\n OverlayEventBus.emit('overlay-click', {\n originalEvent: event,\n target: this.$el\n });\n }\n },\n components: {\n Portal: Portal\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","modelValue","type","defaultColor","inline","Boolean","format","String","disabled","tabindex","autoZIndex","baseZIndex","Number","appendTo","Object","inputId","panelClass","style","ColorPickerStyle","provide","$pcColorPicker","$parentInstance","BaseColorPicker","inheritAttrs","emits","data","overlayVisible","hsbValue","outsideClickListener","documentMouseMoveListener","documentMouseUpListener","scrollHandler","resizeListener","hueDragging","colorDragging","selfUpdate","picker","colorSelector","colorHandle","hueView","hueHandle","watch","immediate","handler","newValue","toHSB","updateUI","beforeUnmount","unbindOutsideClickListener","unbindDragListeners","unbindResizeListener","destroy","ZIndex","clear","clearRefs","mounted","methods","pickColor","event","rect","getBoundingClientRect","top","window","pageYOffset","document","documentElement","scrollTop","body","left","scrollLeft","saturation","Math","floor","max","min","pageX","changedTouches","brightness","pageY","validateHSB","h","s","b","updateColorHandle","updateInput","updateModel","pickHue","updateColorSelector","updateHue","value","HSBtoHEX","HSBtoRGB","$emit","backgroundColor","$refs","input","hsb","validateRGB","rgb","r","g","validateHEX","hex","len","length","o","i","push","join","HEXtoRGB","hexValue","parseInt","indexOf","substring","HEXtoHSB","RGBtoHSB","delta","round","v","t1","t2","t3","RGBtoHEX","toString","key","onOverlayEnter","el","alignOverlay","bindOutsideClickListener","bindScrollListener","bindResizeListener","set","$primevue","config","zIndex","overlay","onOverlayLeave","unbindScrollListener","onOverlayAfterLeave","relativePosition","absolutePosition","onInputClick","onInputKeydown","code","preventDefault","onColorMousedown","bindDragListeners","onColorDragStart","$el","setAttribute","isUnstyled","addClass","onDrag","onDragEnd","removeClass","onHueMousedown","onHueDragStart","isInputClicked","isSameNode","target","bindDocumentMouseMoveListener","bindDocumentMouseUpListener","unbindDocumentMouseMoveListener","unbindDocumentMouseUpListener","_this","contains","addEventListener","removeEventListener","_this2","ConnectedOverlayScrollHandler","container","_this3","isTouchDevice","bind","pickerRef","colorSelectorRef","colorHandleRef","hueViewRef","hueHandleRef","onOverlayClick","OverlayEventBus","emit","originalEvent","components","Portal","_openBlock","_createElementBlock","_mergeProps","ref","_ctx","cx","ptmi","id","readonly","onClick","$options","apply","arguments","onKeydown","ptm","_hoisted_1","_createVNode","_component_Portal","_Transition","onEnter","onLeave","onAfterLeave","$data","_createElementVNode","onMousedown","_cache","$event","onTouchstart","onTouchmove","onTouchend"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/colorpicker/BaseColorPicker.vue","../../src/colorpicker/ColorPicker.vue","../../src/colorpicker/ColorPicker.vue?vue&type=template&id=34147784&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport ColorPickerStyle from 'primevue/colorpicker/style';\n\nexport default {\n name: 'BaseColorPicker',\n extends: BaseComponent,\n props: {\n modelValue: {\n type: null,\n default: null\n },\n defaultColor: {\n type: null,\n default: 'ff0000'\n },\n inline: {\n type: Boolean,\n default: false\n },\n format: {\n type: String,\n default: 'hex'\n },\n disabled: {\n type: Boolean,\n default: false\n },\n tabindex: {\n type: String,\n default: null\n },\n autoZIndex: {\n type: Boolean,\n default: true\n },\n baseZIndex: {\n type: Number,\n default: 0\n },\n appendTo: {\n type: [String, Object],\n default: 'body'\n },\n inputId: {\n type: String,\n default: null\n },\n panelClass: null,\n overlayClass: null\n },\n style: ColorPickerStyle,\n provide() {\n return {\n $pcColorPicker: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div ref=\"container\" :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <input v-if=\"!inline\" ref=\"input\" :id=\"inputId\" type=\"text\" :class=\"cx('preview')\" readonly=\"readonly\" :tabindex=\"tabindex\" :disabled=\"disabled\" @click=\"onInputClick\" @keydown=\"onInputKeydown\" v-bind=\"ptm('preview')\" />\n <Portal :appendTo=\"appendTo\" :disabled=\"inline\">\n <transition name=\"p-connected-overlay\" @enter=\"onOverlayEnter\" @leave=\"onOverlayLeave\" @after-leave=\"onOverlayAfterLeave\" v-bind=\"ptm('transition')\">\n <div v-if=\"inline ? true : overlayVisible\" :ref=\"pickerRef\" :class=\"[cx('panel'), panelClass, overlayClass]\" @click=\"onOverlayClick\" v-bind=\"{ ...ptm('panel'), ...ptm('overlay') }\">\n <div :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <div :ref=\"colorSelectorRef\" :class=\"cx('colorSelector')\" @mousedown=\"onColorMousedown($event)\" @touchstart=\"onColorDragStart($event)\" @touchmove=\"onDrag($event)\" @touchend=\"onDragEnd()\" v-bind=\"ptm('colorSelector')\">\n <div :class=\"cx('colorBackground')\" v-bind=\"ptm('colorBackground')\">\n <div :ref=\"colorHandleRef\" :class=\"cx('colorHandle')\" v-bind=\"ptm('colorHandle')\"></div>\n </div>\n </div>\n <div :ref=\"hueViewRef\" :class=\"cx('hue')\" @mousedown=\"onHueMousedown($event)\" @touchstart=\"onHueDragStart($event)\" @touchmove=\"onDrag($event)\" @touchend=\"onDragEnd()\" v-bind=\"ptm('hue')\">\n <div :ref=\"hueHandleRef\" :class=\"cx('hueHandle')\" v-bind=\"ptm('hueHandle')\"></div>\n </div>\n </div>\n </div>\n </transition>\n </Portal>\n </div>\n</template>\n\n<script>\nimport { absolutePosition, addClass, isTouchDevice, relativePosition, removeClass } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport { ConnectedOverlayScrollHandler } from '@primevue/core/utils';\nimport OverlayEventBus from 'primevue/overlayeventbus';\nimport Portal from 'primevue/portal';\nimport BaseColorPicker from './BaseColorPicker.vue';\n\nexport default {\n name: 'ColorPicker',\n extends: BaseColorPicker,\n inheritAttrs: false,\n emits: ['update:modelValue', 'change', 'show', 'hide'],\n data() {\n return {\n overlayVisible: false\n };\n },\n hsbValue: null,\n outsideClickListener: null,\n documentMouseMoveListener: null,\n documentMouseUpListener: null,\n scrollHandler: null,\n resizeListener: null,\n hueDragging: null,\n colorDragging: null,\n selfUpdate: null,\n picker: null,\n colorSelector: null,\n colorHandle: null,\n hueView: null,\n hueHandle: null,\n watch: {\n modelValue: {\n immediate: true,\n handler(newValue) {\n this.hsbValue = this.toHSB(newValue);\n\n if (this.selfUpdate) this.selfUpdate = false;\n else this.updateUI();\n }\n }\n },\n beforeUnmount() {\n this.unbindOutsideClickListener();\n this.unbindDragListeners();\n this.unbindResizeListener();\n\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n\n if (this.picker && this.autoZIndex) {\n ZIndex.clear(this.picker);\n }\n\n this.clearRefs();\n },\n mounted() {\n this.updateUI();\n },\n methods: {\n pickColor(event) {\n let rect = this.colorSelector.getBoundingClientRect();\n let top = rect.top + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0);\n let left = rect.left + document.body.scrollLeft;\n let saturation = Math.floor((100 * Math.max(0, Math.min(150, (event.pageX || event.changedTouches[0].pageX) - left))) / 150);\n let brightness = Math.floor((100 * (150 - Math.max(0, Math.min(150, (event.pageY || event.changedTouches[0].pageY) - top)))) / 150);\n\n this.hsbValue = this.validateHSB({\n h: this.hsbValue.h,\n s: saturation,\n b: brightness\n });\n\n this.selfUpdate = true;\n this.updateColorHandle();\n this.updateInput();\n this.updateModel(event);\n },\n pickHue(event) {\n let top = this.hueView.getBoundingClientRect().top + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0);\n\n this.hsbValue = this.validateHSB({\n h: Math.floor((360 * (150 - Math.max(0, Math.min(150, (event.pageY || event.changedTouches[0].pageY) - top)))) / 150),\n s: 100,\n b: 100\n });\n\n this.selfUpdate = true;\n this.updateColorSelector();\n this.updateHue();\n this.updateModel(event);\n this.updateInput();\n },\n updateModel(event) {\n let value = this.modelValue;\n\n switch (this.format) {\n case 'hex':\n value = this.HSBtoHEX(this.hsbValue);\n break;\n\n case 'rgb':\n value = this.HSBtoRGB(this.hsbValue);\n break;\n\n case 'hsb':\n value = this.hsbValue;\n break;\n\n default:\n //NoOp\n break;\n }\n\n this.$emit('update:modelValue', value);\n this.$emit('change', { event, value });\n },\n updateColorSelector() {\n if (this.colorSelector) {\n let hsbValue = this.validateHSB({\n h: this.hsbValue.h,\n s: 100,\n b: 100\n });\n\n this.colorSelector.style.backgroundColor = '#' + this.HSBtoHEX(hsbValue);\n }\n },\n updateColorHandle() {\n if (this.colorHandle) {\n this.colorHandle.style.left = Math.floor((150 * this.hsbValue.s) / 100) + 'px';\n this.colorHandle.style.top = Math.floor((150 * (100 - this.hsbValue.b)) / 100) + 'px';\n }\n },\n updateHue() {\n if (this.hueHandle) {\n this.hueHandle.style.top = Math.floor(150 - (150 * this.hsbValue.h) / 360) + 'px';\n }\n },\n updateInput() {\n if (this.$refs.input) {\n this.$refs.input.style.backgroundColor = '#' + this.HSBtoHEX(this.hsbValue);\n }\n },\n updateUI() {\n this.updateHue();\n this.updateColorHandle();\n this.updateInput();\n this.updateColorSelector();\n },\n validateHSB(hsb) {\n return {\n h: Math.min(360, Math.max(0, hsb.h)),\n s: Math.min(100, Math.max(0, hsb.s)),\n b: Math.min(100, Math.max(0, hsb.b))\n };\n },\n validateRGB(rgb) {\n return {\n r: Math.min(255, Math.max(0, rgb.r)),\n g: Math.min(255, Math.max(0, rgb.g)),\n b: Math.min(255, Math.max(0, rgb.b))\n };\n },\n validateHEX(hex) {\n var len = 6 - hex.length;\n\n if (len > 0) {\n var o = [];\n\n for (var i = 0; i < len; i++) {\n o.push('0');\n }\n\n o.push(hex);\n hex = o.join('');\n }\n\n return hex;\n },\n HEXtoRGB(hex) {\n let hexValue = parseInt(hex.indexOf('#') > -1 ? hex.substring(1) : hex, 16);\n\n return { r: hexValue >> 16, g: (hexValue & 0x00ff00) >> 8, b: hexValue & 0x0000ff };\n },\n HEXtoHSB(hex) {\n return this.RGBtoHSB(this.HEXtoRGB(hex));\n },\n RGBtoHSB(rgb) {\n var hsb = {\n h: 0,\n s: 0,\n b: 0\n };\n var min = Math.min(rgb.r, rgb.g, rgb.b);\n var max = Math.max(rgb.r, rgb.g, rgb.b);\n var delta = max - min;\n\n hsb.b = max;\n hsb.s = max !== 0 ? (255 * delta) / max : 0;\n\n if (hsb.s !== 0) {\n if (rgb.r === max) {\n hsb.h = (rgb.g - rgb.b) / delta;\n } else if (rgb.g === max) {\n hsb.h = 2 + (rgb.b - rgb.r) / delta;\n } else {\n hsb.h = 4 + (rgb.r - rgb.g) / delta;\n }\n } else {\n hsb.h = -1;\n }\n\n hsb.h *= 60;\n\n if (hsb.h < 0) {\n hsb.h += 360;\n }\n\n hsb.s *= 100 / 255;\n hsb.b *= 100 / 255;\n\n return hsb;\n },\n HSBtoRGB(hsb) {\n var rgb = {\n r: null,\n g: null,\n b: null\n };\n var h = Math.round(hsb.h);\n var s = Math.round((hsb.s * 255) / 100);\n var v = Math.round((hsb.b * 255) / 100);\n\n if (s === 0) {\n rgb = {\n r: v,\n g: v,\n b: v\n };\n } else {\n var t1 = v;\n var t2 = ((255 - s) * v) / 255;\n var t3 = ((t1 - t2) * (h % 60)) / 60;\n\n if (h === 360) h = 0;\n\n if (h < 60) {\n rgb.r = t1;\n rgb.b = t2;\n rgb.g = t2 + t3;\n } else if (h < 120) {\n rgb.g = t1;\n rgb.b = t2;\n rgb.r = t1 - t3;\n } else if (h < 180) {\n rgb.g = t1;\n rgb.r = t2;\n rgb.b = t2 + t3;\n } else if (h < 240) {\n rgb.b = t1;\n rgb.r = t2;\n rgb.g = t1 - t3;\n } else if (h < 300) {\n rgb.b = t1;\n rgb.g = t2;\n rgb.r = t2 + t3;\n } else if (h < 360) {\n rgb.r = t1;\n rgb.g = t2;\n rgb.b = t1 - t3;\n } else {\n rgb.r = 0;\n rgb.g = 0;\n rgb.b = 0;\n }\n }\n\n return { r: Math.round(rgb.r), g: Math.round(rgb.g), b: Math.round(rgb.b) };\n },\n RGBtoHEX(rgb) {\n var hex = [rgb.r.toString(16), rgb.g.toString(16), rgb.b.toString(16)];\n\n for (var key in hex) {\n if (hex[key].length === 1) {\n hex[key] = '0' + hex[key];\n }\n }\n\n return hex.join('');\n },\n HSBtoHEX(hsb) {\n return this.RGBtoHEX(this.HSBtoRGB(hsb));\n },\n toHSB(value) {\n let hsb;\n\n if (value) {\n switch (this.format) {\n case 'hex':\n hsb = this.HEXtoHSB(value);\n break;\n\n case 'rgb':\n hsb = this.RGBtoHSB(value);\n break;\n\n case 'hsb':\n hsb = value;\n break;\n\n default:\n break;\n }\n } else {\n hsb = this.HEXtoHSB(this.defaultColor);\n }\n\n return hsb;\n },\n onOverlayEnter(el) {\n this.updateUI();\n this.alignOverlay();\n this.bindOutsideClickListener();\n this.bindScrollListener();\n this.bindResizeListener();\n\n if (this.autoZIndex) {\n ZIndex.set('overlay', el, this.baseZIndex, this.$primevue.config.zIndex.overlay);\n }\n\n this.$emit('show');\n },\n onOverlayLeave() {\n this.unbindOutsideClickListener();\n this.unbindScrollListener();\n this.unbindResizeListener();\n this.clearRefs();\n this.$emit('hide');\n },\n onOverlayAfterLeave(el) {\n if (this.autoZIndex) {\n ZIndex.clear(el);\n }\n },\n alignOverlay() {\n if (this.appendTo === 'self') relativePosition(this.picker, this.$refs.input);\n else absolutePosition(this.picker, this.$refs.input);\n },\n onInputClick() {\n if (this.disabled) {\n return;\n }\n\n this.overlayVisible = !this.overlayVisible;\n },\n onInputKeydown(event) {\n switch (event.code) {\n case 'Space':\n this.overlayVisible = !this.overlayVisible;\n event.preventDefault();\n break;\n\n case 'Escape':\n case 'Tab':\n this.overlayVisible = false;\n break;\n\n default:\n //NoOp\n break;\n }\n },\n onColorMousedown(event) {\n if (this.disabled) {\n return;\n }\n\n this.bindDragListeners();\n this.onColorDragStart(event);\n },\n onColorDragStart(event) {\n if (this.disabled) {\n return;\n }\n\n this.colorDragging = true;\n this.pickColor(event);\n this.$el.setAttribute('p-colorpicker-dragging', 'true');\n !this.isUnstyled && addClass(this.$el, 'p-colorpicker-dragging');\n event.preventDefault();\n },\n onDrag(event) {\n if (this.colorDragging) {\n this.pickColor(event);\n event.preventDefault();\n }\n\n if (this.hueDragging) {\n this.pickHue(event);\n event.preventDefault();\n }\n },\n onDragEnd() {\n this.colorDragging = false;\n this.hueDragging = false;\n this.$el.setAttribute('p-colorpicker-dragging', 'false');\n !this.isUnstyled && removeClass(this.$el, 'p-colorpicker-dragging');\n this.unbindDragListeners();\n },\n onHueMousedown(event) {\n if (this.disabled) {\n return;\n }\n\n this.bindDragListeners();\n this.onHueDragStart(event);\n },\n onHueDragStart(event) {\n if (this.disabled) {\n return;\n }\n\n this.hueDragging = true;\n this.pickHue(event);\n !this.isUnstyled && addClass(this.$el, 'p-colorpicker-dragging');\n },\n isInputClicked(event) {\n return this.$refs.input && this.$refs.input.isSameNode(event.target);\n },\n bindDragListeners() {\n this.bindDocumentMouseMoveListener();\n this.bindDocumentMouseUpListener();\n },\n unbindDragListeners() {\n this.unbindDocumentMouseMoveListener();\n this.unbindDocumentMouseUpListener();\n },\n bindOutsideClickListener() {\n if (!this.outsideClickListener) {\n this.outsideClickListener = (event) => {\n if (this.overlayVisible && this.picker && !this.picker.contains(event.target) && !this.isInputClicked(event)) {\n this.overlayVisible = false;\n }\n };\n\n document.addEventListener('click', this.outsideClickListener);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener);\n this.outsideClickListener = null;\n }\n },\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.$refs.container, () => {\n if (this.overlayVisible) {\n this.overlayVisible = false;\n }\n });\n }\n\n this.scrollHandler.bindScrollListener();\n },\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n },\n bindResizeListener() {\n if (!this.resizeListener) {\n this.resizeListener = () => {\n if (this.overlayVisible && !isTouchDevice()) {\n this.overlayVisible = false;\n }\n };\n\n window.addEventListener('resize', this.resizeListener);\n }\n },\n unbindResizeListener() {\n if (this.resizeListener) {\n window.removeEventListener('resize', this.resizeListener);\n this.resizeListener = null;\n }\n },\n bindDocumentMouseMoveListener() {\n if (!this.documentMouseMoveListener) {\n this.documentMouseMoveListener = this.onDrag.bind(this);\n document.addEventListener('mousemove', this.documentMouseMoveListener);\n }\n },\n unbindDocumentMouseMoveListener() {\n if (this.documentMouseMoveListener) {\n document.removeEventListener('mousemove', this.documentMouseMoveListener);\n this.documentMouseMoveListener = null;\n }\n },\n bindDocumentMouseUpListener() {\n if (!this.documentMouseUpListener) {\n this.documentMouseUpListener = this.onDragEnd.bind(this);\n document.addEventListener('mouseup', this.documentMouseUpListener);\n }\n },\n unbindDocumentMouseUpListener() {\n if (this.documentMouseUpListener) {\n document.removeEventListener('mouseup', this.documentMouseUpListener);\n this.documentMouseUpListener = null;\n }\n },\n pickerRef(el) {\n this.picker = el;\n },\n colorSelectorRef(el) {\n this.colorSelector = el;\n },\n colorHandleRef(el) {\n this.colorHandle = el;\n },\n hueViewRef(el) {\n this.hueView = el;\n },\n hueHandleRef(el) {\n this.hueHandle = el;\n },\n clearRefs() {\n this.picker = null;\n this.colorSelector = null;\n this.colorHandle = null;\n this.hueView = null;\n this.hueHandle = null;\n },\n onOverlayClick(event) {\n OverlayEventBus.emit('overlay-click', {\n originalEvent: event,\n target: this.$el\n });\n }\n },\n components: {\n Portal: Portal\n }\n};\n</script>\n","<template>\n <div ref=\"container\" :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <input v-if=\"!inline\" ref=\"input\" :id=\"inputId\" type=\"text\" :class=\"cx('preview')\" readonly=\"readonly\" :tabindex=\"tabindex\" :disabled=\"disabled\" @click=\"onInputClick\" @keydown=\"onInputKeydown\" v-bind=\"ptm('preview')\" />\n <Portal :appendTo=\"appendTo\" :disabled=\"inline\">\n <transition name=\"p-connected-overlay\" @enter=\"onOverlayEnter\" @leave=\"onOverlayLeave\" @after-leave=\"onOverlayAfterLeave\" v-bind=\"ptm('transition')\">\n <div v-if=\"inline ? true : overlayVisible\" :ref=\"pickerRef\" :class=\"[cx('panel'), panelClass, overlayClass]\" @click=\"onOverlayClick\" v-bind=\"{ ...ptm('panel'), ...ptm('overlay') }\">\n <div :class=\"cx('content')\" v-bind=\"ptm('content')\">\n <div :ref=\"colorSelectorRef\" :class=\"cx('colorSelector')\" @mousedown=\"onColorMousedown($event)\" @touchstart=\"onColorDragStart($event)\" @touchmove=\"onDrag($event)\" @touchend=\"onDragEnd()\" v-bind=\"ptm('colorSelector')\">\n <div :class=\"cx('colorBackground')\" v-bind=\"ptm('colorBackground')\">\n <div :ref=\"colorHandleRef\" :class=\"cx('colorHandle')\" v-bind=\"ptm('colorHandle')\"></div>\n </div>\n </div>\n <div :ref=\"hueViewRef\" :class=\"cx('hue')\" @mousedown=\"onHueMousedown($event)\" @touchstart=\"onHueDragStart($event)\" @touchmove=\"onDrag($event)\" @touchend=\"onDragEnd()\" v-bind=\"ptm('hue')\">\n <div :ref=\"hueHandleRef\" :class=\"cx('hueHandle')\" v-bind=\"ptm('hueHandle')\"></div>\n </div>\n </div>\n </div>\n </transition>\n </Portal>\n </div>\n</template>\n\n<script>\nimport { absolutePosition, addClass, isTouchDevice, relativePosition, removeClass } from '@primeuix/utils/dom';\nimport { ZIndex } from '@primeuix/utils/zindex';\nimport { ConnectedOverlayScrollHandler } from '@primevue/core/utils';\nimport OverlayEventBus from 'primevue/overlayeventbus';\nimport Portal from 'primevue/portal';\nimport BaseColorPicker from './BaseColorPicker.vue';\n\nexport default {\n name: 'ColorPicker',\n extends: BaseColorPicker,\n inheritAttrs: false,\n emits: ['update:modelValue', 'change', 'show', 'hide'],\n data() {\n return {\n overlayVisible: false\n };\n },\n hsbValue: null,\n outsideClickListener: null,\n documentMouseMoveListener: null,\n documentMouseUpListener: null,\n scrollHandler: null,\n resizeListener: null,\n hueDragging: null,\n colorDragging: null,\n selfUpdate: null,\n picker: null,\n colorSelector: null,\n colorHandle: null,\n hueView: null,\n hueHandle: null,\n watch: {\n modelValue: {\n immediate: true,\n handler(newValue) {\n this.hsbValue = this.toHSB(newValue);\n\n if (this.selfUpdate) this.selfUpdate = false;\n else this.updateUI();\n }\n }\n },\n beforeUnmount() {\n this.unbindOutsideClickListener();\n this.unbindDragListeners();\n this.unbindResizeListener();\n\n if (this.scrollHandler) {\n this.scrollHandler.destroy();\n this.scrollHandler = null;\n }\n\n if (this.picker && this.autoZIndex) {\n ZIndex.clear(this.picker);\n }\n\n this.clearRefs();\n },\n mounted() {\n this.updateUI();\n },\n methods: {\n pickColor(event) {\n let rect = this.colorSelector.getBoundingClientRect();\n let top = rect.top + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0);\n let left = rect.left + document.body.scrollLeft;\n let saturation = Math.floor((100 * Math.max(0, Math.min(150, (event.pageX || event.changedTouches[0].pageX) - left))) / 150);\n let brightness = Math.floor((100 * (150 - Math.max(0, Math.min(150, (event.pageY || event.changedTouches[0].pageY) - top)))) / 150);\n\n this.hsbValue = this.validateHSB({\n h: this.hsbValue.h,\n s: saturation,\n b: brightness\n });\n\n this.selfUpdate = true;\n this.updateColorHandle();\n this.updateInput();\n this.updateModel(event);\n },\n pickHue(event) {\n let top = this.hueView.getBoundingClientRect().top + (window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop || 0);\n\n this.hsbValue = this.validateHSB({\n h: Math.floor((360 * (150 - Math.max(0, Math.min(150, (event.pageY || event.changedTouches[0].pageY) - top)))) / 150),\n s: 100,\n b: 100\n });\n\n this.selfUpdate = true;\n this.updateColorSelector();\n this.updateHue();\n this.updateModel(event);\n this.updateInput();\n },\n updateModel(event) {\n let value = this.modelValue;\n\n switch (this.format) {\n case 'hex':\n value = this.HSBtoHEX(this.hsbValue);\n break;\n\n case 'rgb':\n value = this.HSBtoRGB(this.hsbValue);\n break;\n\n case 'hsb':\n value = this.hsbValue;\n break;\n\n default:\n //NoOp\n break;\n }\n\n this.$emit('update:modelValue', value);\n this.$emit('change', { event, value });\n },\n updateColorSelector() {\n if (this.colorSelector) {\n let hsbValue = this.validateHSB({\n h: this.hsbValue.h,\n s: 100,\n b: 100\n });\n\n this.colorSelector.style.backgroundColor = '#' + this.HSBtoHEX(hsbValue);\n }\n },\n updateColorHandle() {\n if (this.colorHandle) {\n this.colorHandle.style.left = Math.floor((150 * this.hsbValue.s) / 100) + 'px';\n this.colorHandle.style.top = Math.floor((150 * (100 - this.hsbValue.b)) / 100) + 'px';\n }\n },\n updateHue() {\n if (this.hueHandle) {\n this.hueHandle.style.top = Math.floor(150 - (150 * this.hsbValue.h) / 360) + 'px';\n }\n },\n updateInput() {\n if (this.$refs.input) {\n this.$refs.input.style.backgroundColor = '#' + this.HSBtoHEX(this.hsbValue);\n }\n },\n updateUI() {\n this.updateHue();\n this.updateColorHandle();\n this.updateInput();\n this.updateColorSelector();\n },\n validateHSB(hsb) {\n return {\n h: Math.min(360, Math.max(0, hsb.h)),\n s: Math.min(100, Math.max(0, hsb.s)),\n b: Math.min(100, Math.max(0, hsb.b))\n };\n },\n validateRGB(rgb) {\n return {\n r: Math.min(255, Math.max(0, rgb.r)),\n g: Math.min(255, Math.max(0, rgb.g)),\n b: Math.min(255, Math.max(0, rgb.b))\n };\n },\n validateHEX(hex) {\n var len = 6 - hex.length;\n\n if (len > 0) {\n var o = [];\n\n for (var i = 0; i < len; i++) {\n o.push('0');\n }\n\n o.push(hex);\n hex = o.join('');\n }\n\n return hex;\n },\n HEXtoRGB(hex) {\n let hexValue = parseInt(hex.indexOf('#') > -1 ? hex.substring(1) : hex, 16);\n\n return { r: hexValue >> 16, g: (hexValue & 0x00ff00) >> 8, b: hexValue & 0x0000ff };\n },\n HEXtoHSB(hex) {\n return this.RGBtoHSB(this.HEXtoRGB(hex));\n },\n RGBtoHSB(rgb) {\n var hsb = {\n h: 0,\n s: 0,\n b: 0\n };\n var min = Math.min(rgb.r, rgb.g, rgb.b);\n var max = Math.max(rgb.r, rgb.g, rgb.b);\n var delta = max - min;\n\n hsb.b = max;\n hsb.s = max !== 0 ? (255 * delta) / max : 0;\n\n if (hsb.s !== 0) {\n if (rgb.r === max) {\n hsb.h = (rgb.g - rgb.b) / delta;\n } else if (rgb.g === max) {\n hsb.h = 2 + (rgb.b - rgb.r) / delta;\n } else {\n hsb.h = 4 + (rgb.r - rgb.g) / delta;\n }\n } else {\n hsb.h = -1;\n }\n\n hsb.h *= 60;\n\n if (hsb.h < 0) {\n hsb.h += 360;\n }\n\n hsb.s *= 100 / 255;\n hsb.b *= 100 / 255;\n\n return hsb;\n },\n HSBtoRGB(hsb) {\n var rgb = {\n r: null,\n g: null,\n b: null\n };\n var h = Math.round(hsb.h);\n var s = Math.round((hsb.s * 255) / 100);\n var v = Math.round((hsb.b * 255) / 100);\n\n if (s === 0) {\n rgb = {\n r: v,\n g: v,\n b: v\n };\n } else {\n var t1 = v;\n var t2 = ((255 - s) * v) / 255;\n var t3 = ((t1 - t2) * (h % 60)) / 60;\n\n if (h === 360) h = 0;\n\n if (h < 60) {\n rgb.r = t1;\n rgb.b = t2;\n rgb.g = t2 + t3;\n } else if (h < 120) {\n rgb.g = t1;\n rgb.b = t2;\n rgb.r = t1 - t3;\n } else if (h < 180) {\n rgb.g = t1;\n rgb.r = t2;\n rgb.b = t2 + t3;\n } else if (h < 240) {\n rgb.b = t1;\n rgb.r = t2;\n rgb.g = t1 - t3;\n } else if (h < 300) {\n rgb.b = t1;\n rgb.g = t2;\n rgb.r = t2 + t3;\n } else if (h < 360) {\n rgb.r = t1;\n rgb.g = t2;\n rgb.b = t1 - t3;\n } else {\n rgb.r = 0;\n rgb.g = 0;\n rgb.b = 0;\n }\n }\n\n return { r: Math.round(rgb.r), g: Math.round(rgb.g), b: Math.round(rgb.b) };\n },\n RGBtoHEX(rgb) {\n var hex = [rgb.r.toString(16), rgb.g.toString(16), rgb.b.toString(16)];\n\n for (var key in hex) {\n if (hex[key].length === 1) {\n hex[key] = '0' + hex[key];\n }\n }\n\n return hex.join('');\n },\n HSBtoHEX(hsb) {\n return this.RGBtoHEX(this.HSBtoRGB(hsb));\n },\n toHSB(value) {\n let hsb;\n\n if (value) {\n switch (this.format) {\n case 'hex':\n hsb = this.HEXtoHSB(value);\n break;\n\n case 'rgb':\n hsb = this.RGBtoHSB(value);\n break;\n\n case 'hsb':\n hsb = value;\n break;\n\n default:\n break;\n }\n } else {\n hsb = this.HEXtoHSB(this.defaultColor);\n }\n\n return hsb;\n },\n onOverlayEnter(el) {\n this.updateUI();\n this.alignOverlay();\n this.bindOutsideClickListener();\n this.bindScrollListener();\n this.bindResizeListener();\n\n if (this.autoZIndex) {\n ZIndex.set('overlay', el, this.baseZIndex, this.$primevue.config.zIndex.overlay);\n }\n\n this.$emit('show');\n },\n onOverlayLeave() {\n this.unbindOutsideClickListener();\n this.unbindScrollListener();\n this.unbindResizeListener();\n this.clearRefs();\n this.$emit('hide');\n },\n onOverlayAfterLeave(el) {\n if (this.autoZIndex) {\n ZIndex.clear(el);\n }\n },\n alignOverlay() {\n if (this.appendTo === 'self') relativePosition(this.picker, this.$refs.input);\n else absolutePosition(this.picker, this.$refs.input);\n },\n onInputClick() {\n if (this.disabled) {\n return;\n }\n\n this.overlayVisible = !this.overlayVisible;\n },\n onInputKeydown(event) {\n switch (event.code) {\n case 'Space':\n this.overlayVisible = !this.overlayVisible;\n event.preventDefault();\n break;\n\n case 'Escape':\n case 'Tab':\n this.overlayVisible = false;\n break;\n\n default:\n //NoOp\n break;\n }\n },\n onColorMousedown(event) {\n if (this.disabled) {\n return;\n }\n\n this.bindDragListeners();\n this.onColorDragStart(event);\n },\n onColorDragStart(event) {\n if (this.disabled) {\n return;\n }\n\n this.colorDragging = true;\n this.pickColor(event);\n this.$el.setAttribute('p-colorpicker-dragging', 'true');\n !this.isUnstyled && addClass(this.$el, 'p-colorpicker-dragging');\n event.preventDefault();\n },\n onDrag(event) {\n if (this.colorDragging) {\n this.pickColor(event);\n event.preventDefault();\n }\n\n if (this.hueDragging) {\n this.pickHue(event);\n event.preventDefault();\n }\n },\n onDragEnd() {\n this.colorDragging = false;\n this.hueDragging = false;\n this.$el.setAttribute('p-colorpicker-dragging', 'false');\n !this.isUnstyled && removeClass(this.$el, 'p-colorpicker-dragging');\n this.unbindDragListeners();\n },\n onHueMousedown(event) {\n if (this.disabled) {\n return;\n }\n\n this.bindDragListeners();\n this.onHueDragStart(event);\n },\n onHueDragStart(event) {\n if (this.disabled) {\n return;\n }\n\n this.hueDragging = true;\n this.pickHue(event);\n !this.isUnstyled && addClass(this.$el, 'p-colorpicker-dragging');\n },\n isInputClicked(event) {\n return this.$refs.input && this.$refs.input.isSameNode(event.target);\n },\n bindDragListeners() {\n this.bindDocumentMouseMoveListener();\n this.bindDocumentMouseUpListener();\n },\n unbindDragListeners() {\n this.unbindDocumentMouseMoveListener();\n this.unbindDocumentMouseUpListener();\n },\n bindOutsideClickListener() {\n if (!this.outsideClickListener) {\n this.outsideClickListener = (event) => {\n if (this.overlayVisible && this.picker && !this.picker.contains(event.target) && !this.isInputClicked(event)) {\n this.overlayVisible = false;\n }\n };\n\n document.addEventListener('click', this.outsideClickListener);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener);\n this.outsideClickListener = null;\n }\n },\n bindScrollListener() {\n if (!this.scrollHandler) {\n this.scrollHandler = new ConnectedOverlayScrollHandler(this.$refs.container, () => {\n if (this.overlayVisible) {\n this.overlayVisible = false;\n }\n });\n }\n\n this.scrollHandler.bindScrollListener();\n },\n unbindScrollListener() {\n if (this.scrollHandler) {\n this.scrollHandler.unbindScrollListener();\n }\n },\n bindResizeListener() {\n if (!this.resizeListener) {\n this.resizeListener = () => {\n if (this.overlayVisible && !isTouchDevice()) {\n this.overlayVisible = false;\n }\n };\n\n window.addEventListener('resize', this.resizeListener);\n }\n },\n unbindResizeListener() {\n if (this.resizeListener) {\n window.removeEventListener('resize', this.resizeListener);\n this.resizeListener = null;\n }\n },\n bindDocumentMouseMoveListener() {\n if (!this.documentMouseMoveListener) {\n this.documentMouseMoveListener = this.onDrag.bind(this);\n document.addEventListener('mousemove', this.documentMouseMoveListener);\n }\n },\n unbindDocumentMouseMoveListener() {\n if (this.documentMouseMoveListener) {\n document.removeEventListener('mousemove', this.documentMouseMoveListener);\n this.documentMouseMoveListener = null;\n }\n },\n bindDocumentMouseUpListener() {\n if (!this.documentMouseUpListener) {\n this.documentMouseUpListener = this.onDragEnd.bind(this);\n document.addEventListener('mouseup', this.documentMouseUpListener);\n }\n },\n unbindDocumentMouseUpListener() {\n if (this.documentMouseUpListener) {\n document.removeEventListener('mouseup', this.documentMouseUpListener);\n this.documentMouseUpListener = null;\n }\n },\n pickerRef(el) {\n this.picker = el;\n },\n colorSelectorRef(el) {\n this.colorSelector = el;\n },\n colorHandleRef(el) {\n this.colorHandle = el;\n },\n hueViewRef(el) {\n this.hueView = el;\n },\n hueHandleRef(el) {\n this.hueHandle = el;\n },\n clearRefs() {\n this.picker = null;\n this.colorSelector = null;\n this.colorHandle = null;\n this.hueView = null;\n this.hueHandle = null;\n },\n onOverlayClick(event) {\n OverlayEventBus.emit('overlay-click', {\n originalEvent: event,\n target: this.$el\n });\n }\n },\n components: {\n Portal: Portal\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","modelValue","type","defaultColor","inline","Boolean","format","String","disabled","tabindex","autoZIndex","baseZIndex","Number","appendTo","Object","inputId","panelClass","overlayClass","style","ColorPickerStyle","provide","$pcColorPicker","$parentInstance","BaseColorPicker","inheritAttrs","emits","data","overlayVisible","hsbValue","outsideClickListener","documentMouseMoveListener","documentMouseUpListener","scrollHandler","resizeListener","hueDragging","colorDragging","selfUpdate","picker","colorSelector","colorHandle","hueView","hueHandle","watch","immediate","handler","newValue","toHSB","updateUI","beforeUnmount","unbindOutsideClickListener","unbindDragListeners","unbindResizeListener","destroy","ZIndex","clear","clearRefs","mounted","methods","pickColor","event","rect","getBoundingClientRect","top","window","pageYOffset","document","documentElement","scrollTop","body","left","scrollLeft","saturation","Math","floor","max","min","pageX","changedTouches","brightness","pageY","validateHSB","h","s","b","updateColorHandle","updateInput","updateModel","pickHue","updateColorSelector","updateHue","value","HSBtoHEX","HSBtoRGB","$emit","backgroundColor","$refs","input","hsb","validateRGB","rgb","r","g","validateHEX","hex","len","length","o","i","push","join","HEXtoRGB","hexValue","parseInt","indexOf","substring","HEXtoHSB","RGBtoHSB","delta","round","v","t1","t2","t3","RGBtoHEX","toString","key","onOverlayEnter","el","alignOverlay","bindOutsideClickListener","bindScrollListener","bindResizeListener","set","$primevue","config","zIndex","overlay","onOverlayLeave","unbindScrollListener","onOverlayAfterLeave","relativePosition","absolutePosition","onInputClick","onInputKeydown","code","preventDefault","onColorMousedown","bindDragListeners","onColorDragStart","$el","setAttribute","isUnstyled","addClass","onDrag","onDragEnd","removeClass","onHueMousedown","onHueDragStart","isInputClicked","isSameNode","target","bindDocumentMouseMoveListener","bindDocumentMouseUpListener","unbindDocumentMouseMoveListener","unbindDocumentMouseUpListener","_this","contains","addEventListener","removeEventListener","_this2","ConnectedOverlayScrollHandler","container","_this3","isTouchDevice","bind","pickerRef","colorSelectorRef","colorHandleRef","hueViewRef","hueHandleRef","onOverlayClick","OverlayEventBus","emit","originalEvent","components","Portal","_openBlock","_createElementBlock","_mergeProps","ref","_ctx","cx","ptmi","id","readonly","onClick","$options","apply","arguments","onKeydown","ptm","_hoisted_1","_createVNode","_component_Portal","_Transition","onEnter","onLeave","onAfterLeave","$data","_objectSpread","_createElementVNode","onMousedown","_cache","$event","onTouchstart","onTouchmove","onTouchend"],"mappings":"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"}
|
package/config/index.d.ts
CHANGED
|
@@ -46,7 +46,9 @@ import type { FluidPassThroughOptions } from 'primevue/fluid';
|
|
|
46
46
|
import type { FocusTrapDirectivePassThroughOptions } from 'primevue/focustrap';
|
|
47
47
|
import type { GalleriaPassThroughOptions } from 'primevue/galleria';
|
|
48
48
|
import type { IconFieldPassThroughOptions } from 'primevue/iconfield';
|
|
49
|
+
import type { IftaLabelPassThroughOptions } from 'primevue/iftalabel';
|
|
49
50
|
import type { ImagePassThroughOptions } from 'primevue/image';
|
|
51
|
+
import type { ImageComparePassThroughOptions } from 'primevue/imagecompare';
|
|
50
52
|
import type { InlineMessagePassThroughOptions } from 'primevue/inlinemessage';
|
|
51
53
|
import type { InplacePassThroughOptions } from 'primevue/inplace';
|
|
52
54
|
import type { InputChipsPassThroughOptions } from 'primevue/inputchips';
|
|
@@ -58,6 +60,7 @@ import type { InputNumberPassThroughOptions } from 'primevue/inputnumber';
|
|
|
58
60
|
import type { InputOtpPassThroughOptions } from 'primevue/inputotp';
|
|
59
61
|
import type { InputSwitchPassThroughOptions } from 'primevue/inputswitch';
|
|
60
62
|
import type { InputTextPassThroughOptions } from 'primevue/inputtext';
|
|
63
|
+
import type { KeyFilterDirectivePassThroughOptions } from 'primevue/keyfilter';
|
|
61
64
|
import type { KnobPassThroughOptions } from 'primevue/knob';
|
|
62
65
|
import type { ListboxPassThroughOptions } from 'primevue/listbox';
|
|
63
66
|
import type { MegaMenuPassThroughOptions } from 'primevue/megamenu';
|
|
@@ -201,7 +204,9 @@ export interface PrimeVuePTOptions {
|
|
|
201
204
|
fluid?: DefaultPassThrough<FluidPassThroughOptions>;
|
|
202
205
|
galleria?: DefaultPassThrough<GalleriaPassThroughOptions>;
|
|
203
206
|
iconfield?: DefaultPassThrough<IconFieldPassThroughOptions>;
|
|
207
|
+
iftalabel?: DefaultPassThrough<IftaLabelPassThroughOptions>;
|
|
204
208
|
image?: DefaultPassThrough<ImagePassThroughOptions>;
|
|
209
|
+
imagecompare?: DefaultPassThrough<ImageComparePassThroughOptions>;
|
|
205
210
|
inlinemessage?: DefaultPassThrough<InlineMessagePassThroughOptions>;
|
|
206
211
|
inplace?: DefaultPassThrough<InplacePassThroughOptions>;
|
|
207
212
|
inputchips?: DefaultPassThrough<InputChipsPassThroughOptions>;
|
|
@@ -287,12 +292,13 @@ export interface PrimeVuePTOptions {
|
|
|
287
292
|
treetable?: DefaultPassThrough<TreeTablePassThroughOptions>;
|
|
288
293
|
virtualscroller?: DefaultPassThrough<VirtualScrollerPassThroughOptions>;
|
|
289
294
|
directives?: {
|
|
295
|
+
animate?: AnimateOnScrollDirectivePassThroughOptions;
|
|
290
296
|
badge?: BadgeDirectivePassThroughOptions;
|
|
291
|
-
tooltip?: TooltipDirectivePassThroughOptions;
|
|
292
|
-
styleclass?: StyleClassDirectivePassThroughOptions;
|
|
293
297
|
focustrap?: FocusTrapDirectivePassThroughOptions;
|
|
298
|
+
keyfilter?: KeyFilterDirectivePassThroughOptions;
|
|
294
299
|
ripple?: RippleDirectivePassThroughOptions;
|
|
295
|
-
|
|
300
|
+
styleclass?: StyleClassDirectivePassThroughOptions;
|
|
301
|
+
tooltip?: TooltipDirectivePassThroughOptions;
|
|
296
302
|
};
|
|
297
303
|
global?: {
|
|
298
304
|
css?: ((options: any) => string | undefined) | string | undefined;
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* @module confirmationoptions
|
|
6
6
|
*
|
|
7
7
|
*/
|
|
8
|
+
import type { HintedString } from '@primevue/core';
|
|
8
9
|
import type { ButtonProps } from 'primevue/button';
|
|
9
10
|
|
|
10
11
|
/**
|
|
@@ -41,6 +42,17 @@ export interface ConfirmationOptions {
|
|
|
41
42
|
* @defaultValue false
|
|
42
43
|
*/
|
|
43
44
|
blockScroll?: boolean | undefined;
|
|
45
|
+
/**
|
|
46
|
+
* A valid query selector or an HTMLElement to specify where the confirm dialog gets attached.
|
|
47
|
+
* Special keywords are 'body' for document body and 'self' for the element itself.
|
|
48
|
+
* @defaultValue body
|
|
49
|
+
*/
|
|
50
|
+
appendTo?: HintedString<'body' | 'self'> | undefined | HTMLElement;
|
|
51
|
+
/**
|
|
52
|
+
* Defines if background should be blocked when confirm dialog is displayed.
|
|
53
|
+
* @defaultValue false
|
|
54
|
+
*/
|
|
55
|
+
modal?: boolean | undefined;
|
|
44
56
|
/**
|
|
45
57
|
* Callback to execute when action is confirmed.
|
|
46
58
|
* @todo Next release should be able to change
|
|
@@ -3,9 +3,10 @@
|
|
|
3
3
|
v-model:visible="visible"
|
|
4
4
|
role="alertdialog"
|
|
5
5
|
:class="cx('root')"
|
|
6
|
-
:modal="
|
|
6
|
+
:modal="modal"
|
|
7
7
|
:header="header"
|
|
8
8
|
:blockScroll="blockScroll"
|
|
9
|
+
:appendTo="appendTo"
|
|
9
10
|
:position="position"
|
|
10
11
|
:breakpoints="breakpoints"
|
|
11
12
|
:closeOnEscape="closeOnEscape"
|
|
@@ -125,6 +126,15 @@ export default {
|
|
|
125
126
|
}
|
|
126
127
|
},
|
|
127
128
|
computed: {
|
|
129
|
+
appendTo() {
|
|
130
|
+
return this.confirmation ? this.confirmation.appendTo : 'body';
|
|
131
|
+
},
|
|
132
|
+
target() {
|
|
133
|
+
return this.confirmation ? this.confirmation.target : null;
|
|
134
|
+
},
|
|
135
|
+
modal() {
|
|
136
|
+
return this.confirmation ? (this.confirmation.modal == null ? true : this.confirmation.modal) : true;
|
|
137
|
+
},
|
|
128
138
|
header() {
|
|
129
139
|
return this.confirmation ? this.confirmation.header : null;
|
|
130
140
|
},
|
package/confirmdialog/index.d.ts
CHANGED
|
@@ -78,17 +78,13 @@ export interface ConfirmDialogPassThroughOptions {
|
|
|
78
78
|
*/
|
|
79
79
|
title?: ConfirmDialogPassThroughOptionType;
|
|
80
80
|
/**
|
|
81
|
-
* Used to pass attributes to the header
|
|
81
|
+
* Used to pass attributes to the header actions' DOM element.
|
|
82
82
|
*/
|
|
83
|
-
|
|
83
|
+
headerActions?: ConfirmDialogPassThroughOptionType;
|
|
84
84
|
/**
|
|
85
85
|
* Used to pass attributes to the close button's component.
|
|
86
86
|
*/
|
|
87
|
-
|
|
88
|
-
/**
|
|
89
|
-
* Used to pass attributes to the close button icon's component.
|
|
90
|
-
*/
|
|
91
|
-
closeButtonIcon?: ConfirmDialogPassThroughOptionType;
|
|
87
|
+
pcCloseButton?: ConfirmDialogPassThroughOptionType;
|
|
92
88
|
/**
|
|
93
89
|
* Used to pass attributes to the content's DOM element.
|
|
94
90
|
*/
|
package/confirmdialog/index.mjs
CHANGED
|
@@ -85,6 +85,15 @@ var script = {
|
|
|
85
85
|
}
|
|
86
86
|
},
|
|
87
87
|
computed: {
|
|
88
|
+
appendTo: function appendTo() {
|
|
89
|
+
return this.confirmation ? this.confirmation.appendTo : 'body';
|
|
90
|
+
},
|
|
91
|
+
target: function target() {
|
|
92
|
+
return this.confirmation ? this.confirmation.target : null;
|
|
93
|
+
},
|
|
94
|
+
modal: function modal() {
|
|
95
|
+
return this.confirmation ? this.confirmation.modal == null ? true : this.confirmation.modal : true;
|
|
96
|
+
},
|
|
88
97
|
header: function header() {
|
|
89
98
|
return this.confirmation ? this.confirmation.header : null;
|
|
90
99
|
},
|
|
@@ -147,9 +156,10 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
147
156
|
}), $options.onHide],
|
|
148
157
|
role: "alertdialog",
|
|
149
158
|
"class": normalizeClass(_ctx.cx('root')),
|
|
150
|
-
modal:
|
|
159
|
+
modal: $options.modal,
|
|
151
160
|
header: $options.header,
|
|
152
161
|
blockScroll: $options.blockScroll,
|
|
162
|
+
appendTo: $options.appendTo,
|
|
153
163
|
position: $options.position,
|
|
154
164
|
breakpoints: _ctx.breakpoints,
|
|
155
165
|
closeOnEscape: $options.closeOnEscape,
|
|
@@ -245,7 +255,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
245
255
|
} : undefined]), 1040, ["label", "class", "autofocus", "unstyled", "pt"])];
|
|
246
256
|
}),
|
|
247
257
|
key: "1"
|
|
248
|
-
} : undefined]), 1032, ["visible", "class", "header", "blockScroll", "position", "breakpoints", "closeOnEscape", "draggable", "onUpdate:visible", "pt", "unstyled"]);
|
|
258
|
+
} : undefined]), 1032, ["visible", "class", "modal", "header", "blockScroll", "appendTo", "position", "breakpoints", "closeOnEscape", "draggable", "onUpdate:visible", "pt", "unstyled"]);
|
|
249
259
|
}
|
|
250
260
|
|
|
251
261
|
script.render = render;
|