primevue 4.2.2 → 4.2.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/autocomplete/AutoComplete.vue +1 -1
- package/autocomplete/index.mjs +2 -1
- package/autocomplete/index.mjs.map +1 -1
- package/chip/Chip.vue +1 -1
- package/chip/index.mjs +0 -1
- package/chip/index.mjs.map +1 -1
- package/colorpicker/ColorPicker.vue +1 -1
- package/colorpicker/index.mjs +1 -0
- package/colorpicker/index.mjs.map +1 -1
- package/datatable/BodyCell.vue +2 -11
- package/datatable/DataTable.vue +3 -24
- package/datatable/FooterCell.vue +3 -12
- package/datatable/HeaderCell.vue +2 -11
- package/datatable/index.mjs +49 -98
- 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 +1 -1
- package/datepicker/index.mjs +1 -1
- package/datepicker/index.mjs.map +1 -1
- package/datepicker/style/index.mjs +1 -1
- package/datepicker/style/index.mjs.map +1 -1
- package/drawer/style/index.mjs +1 -1
- package/drawer/style/index.mjs.map +1 -1
- package/imagecompare/ImageCompare.vue +3 -33
- package/imagecompare/index.mjs +3 -35
- package/imagecompare/index.mjs.map +1 -1
- package/imagecompare/style/index.mjs +1 -1
- package/imagecompare/style/index.mjs.map +1 -1
- package/inputnumber/InputNumber.vue +11 -2
- package/inputnumber/index.mjs +9 -2
- package/inputnumber/index.mjs.map +1 -1
- package/inputtext/index.d.ts +1 -1
- package/knob/index.d.ts +1 -1
- package/package.json +5 -5
- package/panelmenu/PanelMenu.vue +6 -3
- package/panelmenu/index.mjs +5 -2
- package/panelmenu/index.mjs.map +1 -1
- package/password/index.d.ts +1 -1
- package/scrollpanel/ScrollPanel.vue +4 -35
- package/scrollpanel/index.mjs +27 -57
- package/scrollpanel/index.mjs.map +1 -1
- package/scrollpanel/style/index.mjs +1 -1
- package/scrollpanel/style/index.mjs.map +1 -1
- package/select/Select.vue +1 -1
- package/select/index.mjs +1 -1
- package/select/index.mjs.map +1 -1
- package/slider/Slider.vue +7 -33
- package/slider/index.mjs +11 -47
- package/slider/index.mjs.map +1 -1
- package/splitter/Splitter.vue +3 -24
- package/splitter/index.mjs +21 -43
- package/splitter/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/tablist/TabList.vue +11 -43
- package/tablist/index.mjs +11 -42
- package/tablist/index.mjs.map +1 -1
- package/tabs/index.d.ts +3 -3
- package/textarea/index.d.ts +2 -3
- package/togglebutton/ToggleButton.vue +1 -1
- package/togglebutton/index.mjs +1 -1
- package/togglebutton/index.mjs.map +1 -1
- package/toggleswitch/style/index.mjs +1 -1
- package/toggleswitch/style/index.mjs.map +1 -1
- package/tree/Tree.vue +1 -1
- package/tree/index.mjs +29 -23
- package/tree/index.mjs.map +1 -1
- package/tree/style/index.mjs +1 -1
- package/tree/style/index.mjs.map +1 -1
- package/treetable/BodyCell.vue +3 -11
- package/treetable/FooterCell.vue +3 -12
- package/treetable/HeaderCell.vue +3 -12
- package/treetable/TreeTable.vue +3 -26
- package/treetable/index.mjs +26 -76
- package/treetable/index.mjs.map +1 -1
- package/treetable/style/index.mjs +1 -1
- package/treetable/style/index.mjs.map +1 -1
- package/umd/primevue.min.js +1 -1
- package/virtualscroller/VirtualScroller.vue +1 -1
- package/virtualscroller/index.mjs +1 -1
- package/virtualscroller/index.mjs.map +1 -1
- package/web-types.json +1 -1
package/chip/Chip.vue
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
<div v-if="label" :class="cx('label')" v-bind="ptm('label')">{{ label }}</div>
|
|
8
8
|
</slot>
|
|
9
9
|
<slot v-if="removable" name="removeicon" :removeCallback="close" :keydownCallback="onKeydown">
|
|
10
|
-
<component :is="removeIcon ? 'span' : 'TimesCircleIcon'"
|
|
10
|
+
<component :is="removeIcon ? 'span' : 'TimesCircleIcon'" :class="[cx('removeIcon'), removeIcon]" @click="close" @keydown="onKeydown" v-bind="ptm('removeIcon')"></component>
|
|
11
11
|
</slot>
|
|
12
12
|
</div>
|
|
13
13
|
</template>
|
package/chip/index.mjs
CHANGED
|
@@ -92,7 +92,6 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
92
92
|
keydownCallback: $options.onKeydown
|
|
93
93
|
}, function () {
|
|
94
94
|
return [(openBlock(), createBlock(resolveDynamicComponent(_ctx.removeIcon ? 'span' : 'TimesCircleIcon'), mergeProps({
|
|
95
|
-
tabindex: "0",
|
|
96
95
|
"class": [_ctx.cx('removeIcon'), _ctx.removeIcon],
|
|
97
96
|
onClick: $options.close,
|
|
98
97
|
onKeydown: $options.onKeydown
|
package/chip/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/chip/BaseChip.vue","../../src/chip/Chip.vue","../../src/chip/Chip.vue?vue&type=template&id=
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/chip/BaseChip.vue","../../src/chip/Chip.vue","../../src/chip/Chip.vue?vue&type=template&id=16c78839&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport ChipStyle from 'primevue/chip/style';\n\nexport default {\n name: 'BaseChip',\n extends: BaseComponent,\n props: {\n label: {\n type: String,\n default: null\n },\n icon: {\n type: String,\n default: null\n },\n image: {\n type: String,\n default: null\n },\n removable: {\n type: Boolean,\n default: false\n },\n removeIcon: {\n type: String,\n default: undefined\n }\n },\n style: ChipStyle,\n provide() {\n return {\n $pcChip: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div v-if=\"visible\" :class=\"cx('root')\" :aria-label=\"label\" v-bind=\"ptmi('root')\">\n <slot>\n <img v-if=\"image\" :src=\"image\" v-bind=\"ptm('image')\" :class=\"cx('image')\" />\n <component v-else-if=\"$slots.icon\" :is=\"$slots.icon\" :class=\"cx('icon')\" v-bind=\"ptm('icon')\" />\n <span v-else-if=\"icon\" :class=\"[cx('icon'), icon]\" v-bind=\"ptm('icon')\" />\n <div v-if=\"label\" :class=\"cx('label')\" v-bind=\"ptm('label')\">{{ label }}</div>\n </slot>\n <slot v-if=\"removable\" name=\"removeicon\" :removeCallback=\"close\" :keydownCallback=\"onKeydown\">\n <component :is=\"removeIcon ? 'span' : 'TimesCircleIcon'\" :class=\"[cx('removeIcon'), removeIcon]\" @click=\"close\" @keydown=\"onKeydown\" v-bind=\"ptm('removeIcon')\"></component>\n </slot>\n </div>\n</template>\n\n<script>\nimport TimesCircleIcon from '@primevue/icons/timescircle';\nimport BaseChip from './BaseChip.vue';\n\nexport default {\n name: 'Chip',\n extends: BaseChip,\n inheritAttrs: false,\n emits: ['remove'],\n data() {\n return {\n visible: true\n };\n },\n methods: {\n onKeydown(event) {\n if (event.key === 'Enter' || event.key === 'Backspace') {\n this.close(event);\n }\n },\n close(event) {\n this.visible = false;\n this.$emit('remove', event);\n }\n },\n components: {\n TimesCircleIcon\n }\n};\n</script>\n","<template>\n <div v-if=\"visible\" :class=\"cx('root')\" :aria-label=\"label\" v-bind=\"ptmi('root')\">\n <slot>\n <img v-if=\"image\" :src=\"image\" v-bind=\"ptm('image')\" :class=\"cx('image')\" />\n <component v-else-if=\"$slots.icon\" :is=\"$slots.icon\" :class=\"cx('icon')\" v-bind=\"ptm('icon')\" />\n <span v-else-if=\"icon\" :class=\"[cx('icon'), icon]\" v-bind=\"ptm('icon')\" />\n <div v-if=\"label\" :class=\"cx('label')\" v-bind=\"ptm('label')\">{{ label }}</div>\n </slot>\n <slot v-if=\"removable\" name=\"removeicon\" :removeCallback=\"close\" :keydownCallback=\"onKeydown\">\n <component :is=\"removeIcon ? 'span' : 'TimesCircleIcon'\" :class=\"[cx('removeIcon'), removeIcon]\" @click=\"close\" @keydown=\"onKeydown\" v-bind=\"ptm('removeIcon')\"></component>\n </slot>\n </div>\n</template>\n\n<script>\nimport TimesCircleIcon from '@primevue/icons/timescircle';\nimport BaseChip from './BaseChip.vue';\n\nexport default {\n name: 'Chip',\n extends: BaseChip,\n inheritAttrs: false,\n emits: ['remove'],\n data() {\n return {\n visible: true\n };\n },\n methods: {\n onKeydown(event) {\n if (event.key === 'Enter' || event.key === 'Backspace') {\n this.close(event);\n }\n },\n close(event) {\n this.visible = false;\n this.$emit('remove', event);\n }\n },\n components: {\n TimesCircleIcon\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","label","type","String","icon","image","removable","Boolean","removeIcon","undefined","style","ChipStyle","provide","$pcChip","$parentInstance","BaseChip","inheritAttrs","emits","data","visible","methods","onKeydown","event","key","close","$emit","components","TimesCircleIcon","$data","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","ptmi","_renderSlot","src","ptm","$slots","_createBlock","_resolveDynamicComponent","removeCallback","$options","keydownCallback","onClick"],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div ref="container" :class="cx('root')" v-bind="ptmi('root')">
|
|
3
|
-
<input v-if="!inline" ref="input" :id="inputId" type="text" :class="cx('preview')" :tabindex="tabindex" :disabled="disabled" @click="onInputClick" @keydown="onInputKeydown" @blur="onInputBlur" v-bind="ptm('preview')" />
|
|
3
|
+
<input v-if="!inline" ref="input" :id="inputId" type="text" :class="cx('preview')" readonly :tabindex="tabindex" :disabled="disabled" @click="onInputClick" @keydown="onInputKeydown" @blur="onInputBlur" v-bind="ptm('preview')" />
|
|
4
4
|
<Portal :appendTo="appendTo" :disabled="inline">
|
|
5
5
|
<transition name="p-connected-overlay" @enter="onOverlayEnter" @leave="onOverlayLeave" @after-leave="onOverlayAfterLeave" v-bind="ptm('transition')">
|
|
6
6
|
<div v-if="inline ? true : overlayVisible" :ref="pickerRef" :class="[cx('panel'), panelClass, overlayClass]" @click="onOverlayClick" v-bind="{ ...ptm('panel'), ...ptm('overlay') }">
|
package/colorpicker/index.mjs
CHANGED
|
@@ -573,6 +573,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
573
573
|
id: _ctx.inputId,
|
|
574
574
|
type: "text",
|
|
575
575
|
"class": _ctx.cx('preview'),
|
|
576
|
+
readonly: "",
|
|
576
577
|
tabindex: _ctx.tabindex,
|
|
577
578
|
disabled: _ctx.disabled,
|
|
578
579
|
onClick: _cache[0] || (_cache[0] = function () {
|
|
@@ -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=38ca4548&lang.js"],"sourcesContent":["<script>\nimport BaseEditableHolder from '@primevue/core/baseeditableholder';\nimport ColorPickerStyle from 'primevue/colorpicker/style';\n\nexport default {\n name: 'BaseColorPicker',\n extends: BaseEditableHolder,\n props: {\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 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')\" :tabindex=\"tabindex\" :disabled=\"disabled\" @click=\"onInputClick\" @keydown=\"onInputKeydown\" @blur=\"onInputBlur\" 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: ['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.d_value;\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.writeValue(value, event);\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 onInputBlur(event) {\n this.formField.onBlur?.();\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')\" :tabindex=\"tabindex\" :disabled=\"disabled\" @click=\"onInputClick\" @keydown=\"onInputKeydown\" @blur=\"onInputBlur\" 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: ['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.d_value;\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.writeValue(value, event);\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 onInputBlur(event) {\n this.formField.onBlur?.();\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","BaseEditableHolder","props","defaultColor","type","inline","Boolean","format","String","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","modelValue","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","d_value","HSBtoHEX","HSBtoRGB","writeValue","$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","disabled","onInputKeydown","code","preventDefault","onInputBlur","_this$formField$onBlu","_this$formField","formField","onBlur","call","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","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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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/colorpicker/BaseColorPicker.vue","../../src/colorpicker/ColorPicker.vue","../../src/colorpicker/ColorPicker.vue?vue&type=template&id=67a0cd9a&lang.js"],"sourcesContent":["<script>\nimport BaseEditableHolder from '@primevue/core/baseeditableholder';\nimport ColorPickerStyle from 'primevue/colorpicker/style';\n\nexport default {\n name: 'BaseColorPicker',\n extends: BaseEditableHolder,\n props: {\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 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 :tabindex=\"tabindex\" :disabled=\"disabled\" @click=\"onInputClick\" @keydown=\"onInputKeydown\" @blur=\"onInputBlur\" 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: ['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.d_value;\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.writeValue(value, event);\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 onInputBlur(event) {\n this.formField.onBlur?.();\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 :tabindex=\"tabindex\" :disabled=\"disabled\" @click=\"onInputClick\" @keydown=\"onInputKeydown\" @blur=\"onInputBlur\" 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: ['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.d_value;\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.writeValue(value, event);\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 onInputBlur(event) {\n this.formField.onBlur?.();\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","BaseEditableHolder","props","defaultColor","type","inline","Boolean","format","String","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","modelValue","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","d_value","HSBtoHEX","HSBtoRGB","writeValue","$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","disabled","onInputKeydown","code","preventDefault","onInputBlur","_this$formField$onBlu","_this$formField","formField","onBlur","call","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/datatable/BodyCell.vue
CHANGED
|
@@ -490,7 +490,6 @@ export default {
|
|
|
490
490
|
updateStickyPosition() {
|
|
491
491
|
if (this.columnProp('frozen')) {
|
|
492
492
|
let align = this.columnProp('alignFrozen');
|
|
493
|
-
let isRTL = this.$parentInstance.$parentInstance.isRTL;
|
|
494
493
|
|
|
495
494
|
if (align === 'right') {
|
|
496
495
|
let pos = 0;
|
|
@@ -500,11 +499,7 @@ export default {
|
|
|
500
499
|
pos = getOuterWidth(next) + parseFloat(next.style.right || 0);
|
|
501
500
|
}
|
|
502
501
|
|
|
503
|
-
|
|
504
|
-
this.styleObject.left = pos + 'px';
|
|
505
|
-
} else {
|
|
506
|
-
this.styleObject.right = pos + 'px';
|
|
507
|
-
}
|
|
502
|
+
this.styleObject.insetInlineEnd = pos + 'px';
|
|
508
503
|
} else {
|
|
509
504
|
let pos = 0;
|
|
510
505
|
let prev = getPreviousElementSibling(this.$el, '[data-p-frozen-column="true"]');
|
|
@@ -513,11 +508,7 @@ export default {
|
|
|
513
508
|
pos = getOuterWidth(prev) + parseFloat(prev.style.left || 0);
|
|
514
509
|
}
|
|
515
510
|
|
|
516
|
-
|
|
517
|
-
this.styleObject.right = pos + 'px';
|
|
518
|
-
} else {
|
|
519
|
-
this.styleObject.left = pos + 'px';
|
|
520
|
-
}
|
|
511
|
+
this.styleObject.insetInlineStart = pos + 'px';
|
|
521
512
|
}
|
|
522
513
|
}
|
|
523
514
|
},
|
package/datatable/DataTable.vue
CHANGED
|
@@ -329,6 +329,7 @@ import {
|
|
|
329
329
|
getOuterHeight,
|
|
330
330
|
getOuterWidth,
|
|
331
331
|
isClickable,
|
|
332
|
+
isRTL,
|
|
332
333
|
removeClass,
|
|
333
334
|
setAttribute
|
|
334
335
|
} from '@primeuix/utils/dom';
|
|
@@ -410,8 +411,7 @@ export default {
|
|
|
410
411
|
d_editingMeta: {},
|
|
411
412
|
d_filters: this.cloneFilters(this.filters),
|
|
412
413
|
d_columns: new HelperSet({ type: 'Column' }),
|
|
413
|
-
d_columnGroups: new HelperSet({ type: 'ColumnGroup' })
|
|
414
|
-
isRTL: false
|
|
414
|
+
d_columnGroups: new HelperSet({ type: 'ColumnGroup' })
|
|
415
415
|
};
|
|
416
416
|
},
|
|
417
417
|
rowTouched: false,
|
|
@@ -432,7 +432,6 @@ export default {
|
|
|
432
432
|
columnWidthsState: null,
|
|
433
433
|
tableWidthState: null,
|
|
434
434
|
columnWidthsRestored: false,
|
|
435
|
-
mutationObserver: null,
|
|
436
435
|
watch: {
|
|
437
436
|
first(newValue) {
|
|
438
437
|
this.d_first = newValue;
|
|
@@ -485,9 +484,6 @@ export default {
|
|
|
485
484
|
if (this.editMode === 'row' && this.dataKey && !this.d_editingRowKeys) {
|
|
486
485
|
this.updateEditingRowKeys(this.editingRows);
|
|
487
486
|
}
|
|
488
|
-
|
|
489
|
-
this.updateDirection();
|
|
490
|
-
this.observeDirectionChanges();
|
|
491
487
|
},
|
|
492
488
|
beforeUnmount() {
|
|
493
489
|
this.unbindColumnResizeEvents();
|
|
@@ -495,10 +491,6 @@ export default {
|
|
|
495
491
|
|
|
496
492
|
this.d_columns.clear();
|
|
497
493
|
this.d_columnGroups.clear();
|
|
498
|
-
|
|
499
|
-
if (this.mutationObserver) {
|
|
500
|
-
this.mutationObserver.disconnect();
|
|
501
|
-
}
|
|
502
494
|
},
|
|
503
495
|
updated() {
|
|
504
496
|
if (this.isStateful()) {
|
|
@@ -510,19 +502,6 @@ export default {
|
|
|
510
502
|
}
|
|
511
503
|
},
|
|
512
504
|
methods: {
|
|
513
|
-
updateDirection() {
|
|
514
|
-
this.isRTL = !!this.$el.closest('[dir="rtl"]');
|
|
515
|
-
},
|
|
516
|
-
observeDirectionChanges() {
|
|
517
|
-
const targetNode = document.documentElement;
|
|
518
|
-
const config = { attributes: true, attributeFilter: ['dir'] };
|
|
519
|
-
|
|
520
|
-
this.mutationObserver = new MutationObserver(() => {
|
|
521
|
-
this.updateDirection();
|
|
522
|
-
});
|
|
523
|
-
|
|
524
|
-
this.mutationObserver.observe(targetNode, config);
|
|
525
|
-
},
|
|
526
505
|
columnProp(col, prop) {
|
|
527
506
|
return getVNodeProp(col, prop);
|
|
528
507
|
},
|
|
@@ -1312,7 +1291,7 @@ export default {
|
|
|
1312
1291
|
this.$refs.resizeHelper.style.display = 'block';
|
|
1313
1292
|
},
|
|
1314
1293
|
onColumnResizeEnd() {
|
|
1315
|
-
let delta = this
|
|
1294
|
+
let delta = isRTL(this.$el) ? this.lastResizeHelperX - this.$refs.resizeHelper.offsetLeft : this.$refs.resizeHelper.offsetLeft - this.lastResizeHelperX;
|
|
1316
1295
|
let columnWidth = this.resizeColumnElement.offsetWidth;
|
|
1317
1296
|
let newColumnWidth = columnWidth + delta;
|
|
1318
1297
|
let minWidth = this.resizeColumnElement.style.minWidth || 15;
|
package/datatable/FooterCell.vue
CHANGED
|
@@ -6,9 +6,9 @@
|
|
|
6
6
|
</template>
|
|
7
7
|
|
|
8
8
|
<script>
|
|
9
|
+
import { getNextElementSibling, getOuterWidth, getPreviousElementSibling } from '@primeuix/utils/dom';
|
|
9
10
|
import BaseComponent from '@primevue/core/basecomponent';
|
|
10
11
|
import { getVNodeProp } from '@primevue/core/utils';
|
|
11
|
-
import { getNextElementSibling, getOuterWidth, getPreviousElementSibling } from '@primeuix/utils/dom';
|
|
12
12
|
import { mergeProps } from 'vue';
|
|
13
13
|
|
|
14
14
|
export default {
|
|
@@ -67,7 +67,6 @@ export default {
|
|
|
67
67
|
updateStickyPosition() {
|
|
68
68
|
if (this.columnProp('frozen')) {
|
|
69
69
|
let align = this.columnProp('alignFrozen');
|
|
70
|
-
let isRTL = this.$parentInstance.$parentInstance.isRTL;
|
|
71
70
|
|
|
72
71
|
if (align === 'right') {
|
|
73
72
|
let pos = 0;
|
|
@@ -77,11 +76,7 @@ export default {
|
|
|
77
76
|
pos = getOuterWidth(next) + parseFloat(next.style.right || 0);
|
|
78
77
|
}
|
|
79
78
|
|
|
80
|
-
|
|
81
|
-
this.styleObject.left = pos + 'px';
|
|
82
|
-
} else {
|
|
83
|
-
this.styleObject.right = pos + 'px';
|
|
84
|
-
}
|
|
79
|
+
this.styleObject.insetInlineEnd = pos + 'px';
|
|
85
80
|
} else {
|
|
86
81
|
let pos = 0;
|
|
87
82
|
let prev = getPreviousElementSibling(this.$el, '[data-p-frozen-column="true"]');
|
|
@@ -90,11 +85,7 @@ export default {
|
|
|
90
85
|
pos = getOuterWidth(prev) + parseFloat(prev.style.left || 0);
|
|
91
86
|
}
|
|
92
87
|
|
|
93
|
-
|
|
94
|
-
this.styleObject.right = pos + 'px';
|
|
95
|
-
} else {
|
|
96
|
-
this.styleObject.left = pos + 'px';
|
|
97
|
-
}
|
|
88
|
+
this.styleObject.insetInlineStart = pos + 'px';
|
|
98
89
|
}
|
|
99
90
|
}
|
|
100
91
|
}
|
package/datatable/HeaderCell.vue
CHANGED
|
@@ -277,7 +277,6 @@ export default {
|
|
|
277
277
|
updateStickyPosition() {
|
|
278
278
|
if (this.columnProp('frozen')) {
|
|
279
279
|
let align = this.columnProp('alignFrozen');
|
|
280
|
-
let isRTL = this.$parentInstance.$parentInstance.isRTL;
|
|
281
280
|
|
|
282
281
|
if (align === 'right') {
|
|
283
282
|
let pos = 0;
|
|
@@ -287,11 +286,7 @@ export default {
|
|
|
287
286
|
pos = getOuterWidth(next) + parseFloat(next.style.right || 0);
|
|
288
287
|
}
|
|
289
288
|
|
|
290
|
-
|
|
291
|
-
this.styleObject.left = pos + 'px';
|
|
292
|
-
} else {
|
|
293
|
-
this.styleObject.right = pos + 'px';
|
|
294
|
-
}
|
|
289
|
+
this.styleObject.insetInlineEnd = pos + 'px';
|
|
295
290
|
} else {
|
|
296
291
|
let pos = 0;
|
|
297
292
|
let prev = getPreviousElementSibling(this.$el, '[data-p-frozen-column="true"]');
|
|
@@ -300,11 +295,7 @@ export default {
|
|
|
300
295
|
pos = getOuterWidth(prev) + parseFloat(prev.style.left || 0);
|
|
301
296
|
}
|
|
302
297
|
|
|
303
|
-
|
|
304
|
-
this.styleObject.right = pos + 'px';
|
|
305
|
-
} else {
|
|
306
|
-
this.styleObject.left = pos + 'px';
|
|
307
|
-
}
|
|
298
|
+
this.styleObject.insetInlineStart = pos + 'px';
|
|
308
299
|
}
|
|
309
300
|
|
|
310
301
|
let filterRow = this.$el.parentElement.nextElementSibling;
|