primevue 4.3.8 → 4.4.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.
Files changed (118) hide show
  1. package/autocomplete/AutoComplete.vue +18 -3
  2. package/autocomplete/BaseAutoComplete.vue +4 -0
  3. package/autocomplete/index.d.ts +20 -0
  4. package/autocomplete/index.mjs +34 -7
  5. package/autocomplete/index.mjs.map +1 -1
  6. package/autocomplete/style/index.d.ts +4 -0
  7. package/autocomplete/style/index.mjs +3 -1
  8. package/autocomplete/style/index.mjs.map +1 -1
  9. package/cascadeselect/CascadeSelect.vue +1 -1
  10. package/cascadeselect/index.mjs +1 -1
  11. package/cascadeselect/index.mjs.map +1 -1
  12. package/checkbox/Checkbox.vue +15 -2
  13. package/checkbox/index.mjs +14 -2
  14. package/checkbox/index.mjs.map +1 -1
  15. package/colorpicker/ColorPicker.vue +5 -6
  16. package/colorpicker/index.mjs +5 -5
  17. package/colorpicker/index.mjs.map +1 -1
  18. package/column/index.d.ts +2 -2
  19. package/confirmdialog/ConfirmDialog.vue +1 -1
  20. package/confirmdialog/index.d.ts +5 -0
  21. package/confirmdialog/index.mjs +3 -2
  22. package/confirmdialog/index.mjs.map +1 -1
  23. package/datatable/BodyCell.vue +1 -1
  24. package/datatable/ColumnFilter.vue +1 -1
  25. package/datatable/DataTable.vue +6 -3
  26. package/datatable/HeaderCheckbox.vue +3 -3
  27. package/datatable/index.mjs +19 -9
  28. package/datatable/index.mjs.map +1 -1
  29. package/datepicker/BaseDatePicker.vue +8 -0
  30. package/datepicker/DatePicker.vue +200 -82
  31. package/datepicker/index.d.ts +25 -0
  32. package/datepicker/index.mjs +263 -155
  33. package/datepicker/index.mjs.map +1 -1
  34. package/datepicker/style/index.d.ts +4 -0
  35. package/datepicker/style/index.mjs +5 -2
  36. package/datepicker/style/index.mjs.map +1 -1
  37. package/dialog/Dialog.vue +1 -1
  38. package/dialog/index.d.ts +5 -0
  39. package/dialog/index.mjs +2 -1
  40. package/dialog/index.mjs.map +1 -1
  41. package/drawer/BaseDrawer.vue +4 -0
  42. package/drawer/Drawer.vue +4 -4
  43. package/drawer/index.d.ts +5 -0
  44. package/drawer/index.mjs +8 -4
  45. package/drawer/index.mjs.map +1 -1
  46. package/editor/Editor.vue +5 -1
  47. package/editor/index.mjs +5 -0
  48. package/editor/index.mjs.map +1 -1
  49. package/fileupload/FileUpload.vue +2 -2
  50. package/fileupload/index.mjs +2 -2
  51. package/fileupload/index.mjs.map +1 -1
  52. package/image/index.d.ts +5 -11
  53. package/inputmask/InputMask.vue +1 -2
  54. package/inputmask/index.mjs +1 -1
  55. package/inputmask/index.mjs.map +1 -1
  56. package/inputnumber/BaseInputNumber.vue +4 -0
  57. package/inputnumber/InputNumber.vue +33 -5
  58. package/inputnumber/index.d.ts +20 -0
  59. package/inputnumber/index.mjs +48 -7
  60. package/inputnumber/index.mjs.map +1 -1
  61. package/inputnumber/style/index.mjs +1 -0
  62. package/inputnumber/style/index.mjs.map +1 -1
  63. package/inputotp/InputOtp.vue +7 -3
  64. package/inputotp/index.mjs +6 -3
  65. package/inputotp/index.mjs.map +1 -1
  66. package/keyfilter/index.mjs +14 -1
  67. package/keyfilter/index.mjs.map +1 -1
  68. package/listbox/Listbox.vue +8 -14
  69. package/listbox/index.mjs +13 -19
  70. package/listbox/index.mjs.map +1 -1
  71. package/multiselect/MultiSelect.vue +15 -12
  72. package/multiselect/index.mjs +21 -18
  73. package/multiselect/index.mjs.map +1 -1
  74. package/package.json +5 -5
  75. package/panel/Panel.vue +1 -1
  76. package/panel/index.d.ts +4 -0
  77. package/panel/index.mjs +2 -1
  78. package/panel/index.mjs.map +1 -1
  79. package/password/BasePassword.vue +4 -0
  80. package/password/Password.vue +12 -1
  81. package/password/index.d.ts +20 -0
  82. package/password/index.mjs +23 -1
  83. package/password/index.mjs.map +1 -1
  84. package/password/style/index.d.ts +4 -0
  85. package/password/style/index.mjs +1 -0
  86. package/password/style/index.mjs.map +1 -1
  87. package/select/Select.vue +5 -4
  88. package/select/index.mjs +6 -5
  89. package/select/index.mjs.map +1 -1
  90. package/tab/Tab.vue +0 -1
  91. package/tab/index.mjs +0 -1
  92. package/tab/index.mjs.map +1 -1
  93. package/togglebutton/BaseToggleButton.vue +0 -4
  94. package/togglebutton/index.d.ts +0 -5
  95. package/togglebutton/index.mjs +0 -4
  96. package/togglebutton/index.mjs.map +1 -1
  97. package/tooltip/index.mjs +5 -1
  98. package/tooltip/index.mjs.map +1 -1
  99. package/tree/BaseTree.vue +16 -0
  100. package/tree/Tree.vue +179 -4
  101. package/tree/TreeNode.vue +225 -3
  102. package/tree/index.d.ts +65 -0
  103. package/tree/index.mjs +499 -22
  104. package/tree/index.mjs.map +1 -1
  105. package/tree/style/index.mjs +9 -4
  106. package/tree/style/index.mjs.map +1 -1
  107. package/treenode/index.d.ts +12 -0
  108. package/treeselect/TreeSelect.vue +2 -2
  109. package/treeselect/index.mjs +2 -2
  110. package/treeselect/index.mjs.map +1 -1
  111. package/treetable/TreeTable.vue +15 -1
  112. package/treetable/index.d.ts +58 -4
  113. package/treetable/index.mjs +19 -6
  114. package/treetable/index.mjs.map +1 -1
  115. package/umd/primevue.min.js +1 -1
  116. package/vetur-attributes.json +0 -4
  117. package/vetur-tags.json +0 -1
  118. package/web-types.json +1 -11
@@ -1,6 +1,7 @@
1
1
  <template>
2
2
  <div :class="cx('root')" v-bind="getPTOptions('root')" :data-p-checked="checked" :data-p-indeterminate="d_indeterminate || undefined" :data-p-disabled="disabled" :data-p="dataP">
3
3
  <input
4
+ ref="input"
4
5
  :id="inputId"
5
6
  type="checkbox"
6
7
  :class="[cx('input'), inputClass]"
@@ -15,7 +16,6 @@
15
16
  :aria-labelledby="ariaLabelledby"
16
17
  :aria-label="ariaLabel"
17
18
  :aria-invalid="invalid || undefined"
18
- :aria-checked="d_indeterminate ? 'mixed' : undefined"
19
19
  @focus="onFocus"
20
20
  @blur="onBlur"
21
21
  @change="onChange"
@@ -55,7 +55,15 @@ export default {
55
55
  watch: {
56
56
  indeterminate(newValue) {
57
57
  this.d_indeterminate = newValue;
58
- }
58
+
59
+ this.updateIndeterminate();
60
+ },
61
+ },
62
+ mounted() {
63
+ this.updateIndeterminate();
64
+ },
65
+ updated() {
66
+ this.updateIndeterminate();
59
67
  },
60
68
  methods: {
61
69
  getPTOptions(key) {
@@ -96,6 +104,11 @@ export default {
96
104
  onBlur(event) {
97
105
  this.$emit('blur', event);
98
106
  this.formField.onBlur?.(event);
107
+ },
108
+ updateIndeterminate() {
109
+ if (this.$refs.input) {
110
+ this.$refs.input.indeterminate = this.d_indeterminate;
111
+ }
99
112
  }
100
113
  },
101
114
  computed: {
@@ -94,8 +94,15 @@ var script = {
94
94
  watch: {
95
95
  indeterminate: function indeterminate(newValue) {
96
96
  this.d_indeterminate = newValue;
97
+ this.updateIndeterminate();
97
98
  }
98
99
  },
100
+ mounted: function mounted() {
101
+ this.updateIndeterminate();
102
+ },
103
+ updated: function updated() {
104
+ this.updateIndeterminate();
105
+ },
99
106
  methods: {
100
107
  getPTOptions: function getPTOptions(key) {
101
108
  var _ptm = key === 'root' ? this.ptmi : this.ptm;
@@ -134,6 +141,11 @@ var script = {
134
141
  var _this$formField$onBlu, _this$formField;
135
142
  this.$emit('blur', event);
136
143
  (_this$formField$onBlu = (_this$formField = this.formField).onBlur) === null || _this$formField$onBlu === void 0 || _this$formField$onBlu.call(_this$formField, event);
144
+ },
145
+ updateIndeterminate: function updateIndeterminate() {
146
+ if (this.$refs.input) {
147
+ this.$refs.input.indeterminate = this.d_indeterminate;
148
+ }
137
149
  }
138
150
  },
139
151
  computed: {
@@ -160,7 +172,7 @@ var script = {
160
172
  };
161
173
 
162
174
  var _hoisted_1 = ["data-p-checked", "data-p-indeterminate", "data-p-disabled", "data-p"];
163
- var _hoisted_2 = ["id", "value", "name", "checked", "tabindex", "disabled", "readonly", "required", "aria-labelledby", "aria-label", "aria-invalid", "aria-checked"];
175
+ var _hoisted_2 = ["id", "value", "name", "checked", "tabindex", "disabled", "readonly", "required", "aria-labelledby", "aria-label", "aria-invalid"];
164
176
  var _hoisted_3 = ["data-p"];
165
177
  function render(_ctx, _cache, $props, $setup, $data, $options) {
166
178
  var _component_CheckIcon = resolveComponent("CheckIcon");
@@ -173,6 +185,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
173
185
  "data-p-disabled": _ctx.disabled,
174
186
  "data-p": $options.dataP
175
187
  }), [createElementVNode("input", mergeProps({
188
+ ref: "input",
176
189
  id: _ctx.inputId,
177
190
  type: "checkbox",
178
191
  "class": [_ctx.cx('input'), _ctx.inputClass],
@@ -187,7 +200,6 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
187
200
  "aria-labelledby": _ctx.ariaLabelledby,
188
201
  "aria-label": _ctx.ariaLabel,
189
202
  "aria-invalid": _ctx.invalid || undefined,
190
- "aria-checked": $data.d_indeterminate ? 'mixed' : undefined,
191
203
  onFocus: _cache[0] || (_cache[0] = function () {
192
204
  return $options.onFocus && $options.onFocus.apply($options, arguments);
193
205
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/checkbox/BaseCheckbox.vue","../../src/checkbox/Checkbox.vue","../../src/checkbox/Checkbox.vue?vue&type=template&id=36fb2635&lang.js"],"sourcesContent":["<script>\nimport BaseInput from '@primevue/core/baseinput';\nimport CheckboxStyle from 'primevue/checkbox/style';\n\nexport default {\n name: 'BaseCheckbox',\n extends: BaseInput,\n props: {\n value: null,\n binary: Boolean,\n indeterminate: {\n type: Boolean,\n default: false\n },\n trueValue: {\n type: null,\n default: true\n },\n falseValue: {\n type: null,\n default: false\n },\n readonly: {\n type: Boolean,\n default: false\n },\n required: {\n type: Boolean,\n default: false\n },\n tabindex: {\n type: Number,\n default: null\n },\n inputId: {\n type: String,\n default: null\n },\n inputClass: {\n type: [String, Object],\n default: null\n },\n inputStyle: {\n type: Object,\n default: null\n },\n ariaLabelledby: {\n type: String,\n default: null\n },\n ariaLabel: {\n type: String,\n default: null\n }\n },\n style: CheckboxStyle,\n provide() {\n return {\n $pcCheckbox: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"getPTOptions('root')\" :data-p-checked=\"checked\" :data-p-indeterminate=\"d_indeterminate || undefined\" :data-p-disabled=\"disabled\" :data-p=\"dataP\">\n <input\n :id=\"inputId\"\n type=\"checkbox\"\n :class=\"[cx('input'), inputClass]\"\n :style=\"inputStyle\"\n :value=\"value\"\n :name=\"groupName\"\n :checked=\"checked\"\n :tabindex=\"tabindex\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n :required=\"required\"\n :aria-labelledby=\"ariaLabelledby\"\n :aria-label=\"ariaLabel\"\n :aria-invalid=\"invalid || undefined\"\n :aria-checked=\"d_indeterminate ? 'mixed' : undefined\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n @change=\"onChange\"\n v-bind=\"getPTOptions('input')\"\n />\n <div :class=\"cx('box')\" v-bind=\"getPTOptions('box')\" :data-p=\"dataP\">\n <slot name=\"icon\" :checked=\"checked\" :indeterminate=\"d_indeterminate\" :class=\"cx('icon')\" :data-p=\"dataP\">\n <CheckIcon v-if=\"checked\" :class=\"cx('icon')\" v-bind=\"getPTOptions('icon')\" :data-p=\"dataP\" />\n <MinusIcon v-else-if=\"d_indeterminate\" :class=\"cx('icon')\" v-bind=\"getPTOptions('icon')\" :data-p=\"dataP\" />\n </slot>\n </div>\n </div>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { contains, equals } from '@primeuix/utils/object';\nimport CheckIcon from '@primevue/icons/check';\nimport MinusIcon from '@primevue/icons/minus';\nimport BaseCheckbox from './BaseCheckbox.vue';\n\nexport default {\n name: 'Checkbox',\n extends: BaseCheckbox,\n inheritAttrs: false,\n emits: ['change', 'focus', 'blur', 'update:indeterminate'],\n inject: {\n $pcCheckboxGroup: {\n default: undefined\n }\n },\n data() {\n return {\n d_indeterminate: this.indeterminate\n };\n },\n watch: {\n indeterminate(newValue) {\n this.d_indeterminate = newValue;\n }\n },\n methods: {\n getPTOptions(key) {\n const _ptm = key === 'root' ? this.ptmi : this.ptm;\n\n return _ptm(key, {\n context: {\n checked: this.checked,\n indeterminate: this.d_indeterminate,\n disabled: this.disabled\n }\n });\n },\n onChange(event) {\n if (!this.disabled && !this.readonly) {\n const value = this.$pcCheckboxGroup ? this.$pcCheckboxGroup.d_value : this.d_value;\n let newModelValue;\n\n if (this.binary) {\n newModelValue = this.d_indeterminate ? this.trueValue : this.checked ? this.falseValue : this.trueValue;\n } else {\n if (this.checked || this.d_indeterminate) newModelValue = value.filter((val) => !equals(val, this.value));\n else newModelValue = value ? [...value, this.value] : [this.value];\n }\n\n if (this.d_indeterminate) {\n this.d_indeterminate = false;\n this.$emit('update:indeterminate', this.d_indeterminate);\n }\n\n this.$pcCheckboxGroup ? this.$pcCheckboxGroup.writeValue(newModelValue, event) : this.writeValue(newModelValue, event);\n this.$emit('change', event);\n }\n },\n onFocus(event) {\n this.$emit('focus', event);\n },\n onBlur(event) {\n this.$emit('blur', event);\n this.formField.onBlur?.(event);\n }\n },\n computed: {\n groupName() {\n return this.$pcCheckboxGroup ? this.$pcCheckboxGroup.groupName : this.$formName;\n },\n checked() {\n const value = this.$pcCheckboxGroup ? this.$pcCheckboxGroup.d_value : this.d_value;\n\n return this.d_indeterminate ? false : this.binary ? value === this.trueValue : contains(this.value, value);\n },\n dataP() {\n return cn({\n invalid: this.$invalid,\n checked: this.checked,\n disabled: this.disabled,\n filled: this.$variant === 'filled',\n [this.size]: this.size\n });\n }\n },\n components: {\n CheckIcon,\n MinusIcon\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"getPTOptions('root')\" :data-p-checked=\"checked\" :data-p-indeterminate=\"d_indeterminate || undefined\" :data-p-disabled=\"disabled\" :data-p=\"dataP\">\n <input\n :id=\"inputId\"\n type=\"checkbox\"\n :class=\"[cx('input'), inputClass]\"\n :style=\"inputStyle\"\n :value=\"value\"\n :name=\"groupName\"\n :checked=\"checked\"\n :tabindex=\"tabindex\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n :required=\"required\"\n :aria-labelledby=\"ariaLabelledby\"\n :aria-label=\"ariaLabel\"\n :aria-invalid=\"invalid || undefined\"\n :aria-checked=\"d_indeterminate ? 'mixed' : undefined\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n @change=\"onChange\"\n v-bind=\"getPTOptions('input')\"\n />\n <div :class=\"cx('box')\" v-bind=\"getPTOptions('box')\" :data-p=\"dataP\">\n <slot name=\"icon\" :checked=\"checked\" :indeterminate=\"d_indeterminate\" :class=\"cx('icon')\" :data-p=\"dataP\">\n <CheckIcon v-if=\"checked\" :class=\"cx('icon')\" v-bind=\"getPTOptions('icon')\" :data-p=\"dataP\" />\n <MinusIcon v-else-if=\"d_indeterminate\" :class=\"cx('icon')\" v-bind=\"getPTOptions('icon')\" :data-p=\"dataP\" />\n </slot>\n </div>\n </div>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { contains, equals } from '@primeuix/utils/object';\nimport CheckIcon from '@primevue/icons/check';\nimport MinusIcon from '@primevue/icons/minus';\nimport BaseCheckbox from './BaseCheckbox.vue';\n\nexport default {\n name: 'Checkbox',\n extends: BaseCheckbox,\n inheritAttrs: false,\n emits: ['change', 'focus', 'blur', 'update:indeterminate'],\n inject: {\n $pcCheckboxGroup: {\n default: undefined\n }\n },\n data() {\n return {\n d_indeterminate: this.indeterminate\n };\n },\n watch: {\n indeterminate(newValue) {\n this.d_indeterminate = newValue;\n }\n },\n methods: {\n getPTOptions(key) {\n const _ptm = key === 'root' ? this.ptmi : this.ptm;\n\n return _ptm(key, {\n context: {\n checked: this.checked,\n indeterminate: this.d_indeterminate,\n disabled: this.disabled\n }\n });\n },\n onChange(event) {\n if (!this.disabled && !this.readonly) {\n const value = this.$pcCheckboxGroup ? this.$pcCheckboxGroup.d_value : this.d_value;\n let newModelValue;\n\n if (this.binary) {\n newModelValue = this.d_indeterminate ? this.trueValue : this.checked ? this.falseValue : this.trueValue;\n } else {\n if (this.checked || this.d_indeterminate) newModelValue = value.filter((val) => !equals(val, this.value));\n else newModelValue = value ? [...value, this.value] : [this.value];\n }\n\n if (this.d_indeterminate) {\n this.d_indeterminate = false;\n this.$emit('update:indeterminate', this.d_indeterminate);\n }\n\n this.$pcCheckboxGroup ? this.$pcCheckboxGroup.writeValue(newModelValue, event) : this.writeValue(newModelValue, event);\n this.$emit('change', event);\n }\n },\n onFocus(event) {\n this.$emit('focus', event);\n },\n onBlur(event) {\n this.$emit('blur', event);\n this.formField.onBlur?.(event);\n }\n },\n computed: {\n groupName() {\n return this.$pcCheckboxGroup ? this.$pcCheckboxGroup.groupName : this.$formName;\n },\n checked() {\n const value = this.$pcCheckboxGroup ? this.$pcCheckboxGroup.d_value : this.d_value;\n\n return this.d_indeterminate ? false : this.binary ? value === this.trueValue : contains(this.value, value);\n },\n dataP() {\n return cn({\n invalid: this.$invalid,\n checked: this.checked,\n disabled: this.disabled,\n filled: this.$variant === 'filled',\n [this.size]: this.size\n });\n }\n },\n components: {\n CheckIcon,\n MinusIcon\n }\n};\n</script>\n"],"names":["name","BaseInput","props","value","binary","Boolean","indeterminate","type","trueValue","falseValue","readonly","required","tabindex","Number","inputId","String","inputClass","Object","inputStyle","ariaLabelledby","ariaLabel","style","CheckboxStyle","provide","$pcCheckbox","$parentInstance","BaseCheckbox","inheritAttrs","emits","inject","$pcCheckboxGroup","undefined","data","d_indeterminate","watch","newValue","methods","getPTOptions","key","_ptm","ptmi","ptm","context","checked","disabled","onChange","event","_this","d_value","newModelValue","filter","val","equals","concat","_toConsumableArray","$emit","writeValue","onFocus","onBlur","_this$formField$onBlu","_this$formField","formField","call","computed","groupName","$formName","contains","dataP","cn","_defineProperty","invalid","$invalid","filled","$variant","size","components","CheckIcon","MinusIcon","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","$options","$data","_createElementVNode","id","apply","arguments","_hoisted_2","_renderSlot","$slots","_createBlock","_component_CheckIcon","_component_MinusIcon"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/checkbox/BaseCheckbox.vue","../../src/checkbox/Checkbox.vue","../../src/checkbox/Checkbox.vue?vue&type=template&id=ae8891e8&lang.js"],"sourcesContent":["<script>\nimport BaseInput from '@primevue/core/baseinput';\nimport CheckboxStyle from 'primevue/checkbox/style';\n\nexport default {\n name: 'BaseCheckbox',\n extends: BaseInput,\n props: {\n value: null,\n binary: Boolean,\n indeterminate: {\n type: Boolean,\n default: false\n },\n trueValue: {\n type: null,\n default: true\n },\n falseValue: {\n type: null,\n default: false\n },\n readonly: {\n type: Boolean,\n default: false\n },\n required: {\n type: Boolean,\n default: false\n },\n tabindex: {\n type: Number,\n default: null\n },\n inputId: {\n type: String,\n default: null\n },\n inputClass: {\n type: [String, Object],\n default: null\n },\n inputStyle: {\n type: Object,\n default: null\n },\n ariaLabelledby: {\n type: String,\n default: null\n },\n ariaLabel: {\n type: String,\n default: null\n }\n },\n style: CheckboxStyle,\n provide() {\n return {\n $pcCheckbox: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"getPTOptions('root')\" :data-p-checked=\"checked\" :data-p-indeterminate=\"d_indeterminate || undefined\" :data-p-disabled=\"disabled\" :data-p=\"dataP\">\n <input\n ref=\"input\"\n :id=\"inputId\"\n type=\"checkbox\"\n :class=\"[cx('input'), inputClass]\"\n :style=\"inputStyle\"\n :value=\"value\"\n :name=\"groupName\"\n :checked=\"checked\"\n :tabindex=\"tabindex\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n :required=\"required\"\n :aria-labelledby=\"ariaLabelledby\"\n :aria-label=\"ariaLabel\"\n :aria-invalid=\"invalid || undefined\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n @change=\"onChange\"\n v-bind=\"getPTOptions('input')\"\n />\n <div :class=\"cx('box')\" v-bind=\"getPTOptions('box')\" :data-p=\"dataP\">\n <slot name=\"icon\" :checked=\"checked\" :indeterminate=\"d_indeterminate\" :class=\"cx('icon')\" :data-p=\"dataP\">\n <CheckIcon v-if=\"checked\" :class=\"cx('icon')\" v-bind=\"getPTOptions('icon')\" :data-p=\"dataP\" />\n <MinusIcon v-else-if=\"d_indeterminate\" :class=\"cx('icon')\" v-bind=\"getPTOptions('icon')\" :data-p=\"dataP\" />\n </slot>\n </div>\n </div>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { contains, equals } from '@primeuix/utils/object';\nimport CheckIcon from '@primevue/icons/check';\nimport MinusIcon from '@primevue/icons/minus';\nimport BaseCheckbox from './BaseCheckbox.vue';\n\nexport default {\n name: 'Checkbox',\n extends: BaseCheckbox,\n inheritAttrs: false,\n emits: ['change', 'focus', 'blur', 'update:indeterminate'],\n inject: {\n $pcCheckboxGroup: {\n default: undefined\n }\n },\n data() {\n return {\n d_indeterminate: this.indeterminate\n };\n },\n watch: {\n indeterminate(newValue) {\n this.d_indeterminate = newValue;\n\n this.updateIndeterminate();\n },\n },\n mounted() {\n this.updateIndeterminate();\n },\n updated() {\n this.updateIndeterminate();\n },\n methods: {\n getPTOptions(key) {\n const _ptm = key === 'root' ? this.ptmi : this.ptm;\n\n return _ptm(key, {\n context: {\n checked: this.checked,\n indeterminate: this.d_indeterminate,\n disabled: this.disabled\n }\n });\n },\n onChange(event) {\n if (!this.disabled && !this.readonly) {\n const value = this.$pcCheckboxGroup ? this.$pcCheckboxGroup.d_value : this.d_value;\n let newModelValue;\n\n if (this.binary) {\n newModelValue = this.d_indeterminate ? this.trueValue : this.checked ? this.falseValue : this.trueValue;\n } else {\n if (this.checked || this.d_indeterminate) newModelValue = value.filter((val) => !equals(val, this.value));\n else newModelValue = value ? [...value, this.value] : [this.value];\n }\n\n if (this.d_indeterminate) {\n this.d_indeterminate = false;\n this.$emit('update:indeterminate', this.d_indeterminate);\n }\n\n this.$pcCheckboxGroup ? this.$pcCheckboxGroup.writeValue(newModelValue, event) : this.writeValue(newModelValue, event);\n this.$emit('change', event);\n }\n },\n onFocus(event) {\n this.$emit('focus', event);\n },\n onBlur(event) {\n this.$emit('blur', event);\n this.formField.onBlur?.(event);\n },\n updateIndeterminate() {\n if (this.$refs.input) {\n this.$refs.input.indeterminate = this.d_indeterminate;\n }\n }\n },\n computed: {\n groupName() {\n return this.$pcCheckboxGroup ? this.$pcCheckboxGroup.groupName : this.$formName;\n },\n checked() {\n const value = this.$pcCheckboxGroup ? this.$pcCheckboxGroup.d_value : this.d_value;\n\n return this.d_indeterminate ? false : this.binary ? value === this.trueValue : contains(this.value, value);\n },\n dataP() {\n return cn({\n invalid: this.$invalid,\n checked: this.checked,\n disabled: this.disabled,\n filled: this.$variant === 'filled',\n [this.size]: this.size\n });\n }\n },\n components: {\n CheckIcon,\n MinusIcon\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"getPTOptions('root')\" :data-p-checked=\"checked\" :data-p-indeterminate=\"d_indeterminate || undefined\" :data-p-disabled=\"disabled\" :data-p=\"dataP\">\n <input\n ref=\"input\"\n :id=\"inputId\"\n type=\"checkbox\"\n :class=\"[cx('input'), inputClass]\"\n :style=\"inputStyle\"\n :value=\"value\"\n :name=\"groupName\"\n :checked=\"checked\"\n :tabindex=\"tabindex\"\n :disabled=\"disabled\"\n :readonly=\"readonly\"\n :required=\"required\"\n :aria-labelledby=\"ariaLabelledby\"\n :aria-label=\"ariaLabel\"\n :aria-invalid=\"invalid || undefined\"\n @focus=\"onFocus\"\n @blur=\"onBlur\"\n @change=\"onChange\"\n v-bind=\"getPTOptions('input')\"\n />\n <div :class=\"cx('box')\" v-bind=\"getPTOptions('box')\" :data-p=\"dataP\">\n <slot name=\"icon\" :checked=\"checked\" :indeterminate=\"d_indeterminate\" :class=\"cx('icon')\" :data-p=\"dataP\">\n <CheckIcon v-if=\"checked\" :class=\"cx('icon')\" v-bind=\"getPTOptions('icon')\" :data-p=\"dataP\" />\n <MinusIcon v-else-if=\"d_indeterminate\" :class=\"cx('icon')\" v-bind=\"getPTOptions('icon')\" :data-p=\"dataP\" />\n </slot>\n </div>\n </div>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { contains, equals } from '@primeuix/utils/object';\nimport CheckIcon from '@primevue/icons/check';\nimport MinusIcon from '@primevue/icons/minus';\nimport BaseCheckbox from './BaseCheckbox.vue';\n\nexport default {\n name: 'Checkbox',\n extends: BaseCheckbox,\n inheritAttrs: false,\n emits: ['change', 'focus', 'blur', 'update:indeterminate'],\n inject: {\n $pcCheckboxGroup: {\n default: undefined\n }\n },\n data() {\n return {\n d_indeterminate: this.indeterminate\n };\n },\n watch: {\n indeterminate(newValue) {\n this.d_indeterminate = newValue;\n\n this.updateIndeterminate();\n },\n },\n mounted() {\n this.updateIndeterminate();\n },\n updated() {\n this.updateIndeterminate();\n },\n methods: {\n getPTOptions(key) {\n const _ptm = key === 'root' ? this.ptmi : this.ptm;\n\n return _ptm(key, {\n context: {\n checked: this.checked,\n indeterminate: this.d_indeterminate,\n disabled: this.disabled\n }\n });\n },\n onChange(event) {\n if (!this.disabled && !this.readonly) {\n const value = this.$pcCheckboxGroup ? this.$pcCheckboxGroup.d_value : this.d_value;\n let newModelValue;\n\n if (this.binary) {\n newModelValue = this.d_indeterminate ? this.trueValue : this.checked ? this.falseValue : this.trueValue;\n } else {\n if (this.checked || this.d_indeterminate) newModelValue = value.filter((val) => !equals(val, this.value));\n else newModelValue = value ? [...value, this.value] : [this.value];\n }\n\n if (this.d_indeterminate) {\n this.d_indeterminate = false;\n this.$emit('update:indeterminate', this.d_indeterminate);\n }\n\n this.$pcCheckboxGroup ? this.$pcCheckboxGroup.writeValue(newModelValue, event) : this.writeValue(newModelValue, event);\n this.$emit('change', event);\n }\n },\n onFocus(event) {\n this.$emit('focus', event);\n },\n onBlur(event) {\n this.$emit('blur', event);\n this.formField.onBlur?.(event);\n },\n updateIndeterminate() {\n if (this.$refs.input) {\n this.$refs.input.indeterminate = this.d_indeterminate;\n }\n }\n },\n computed: {\n groupName() {\n return this.$pcCheckboxGroup ? this.$pcCheckboxGroup.groupName : this.$formName;\n },\n checked() {\n const value = this.$pcCheckboxGroup ? this.$pcCheckboxGroup.d_value : this.d_value;\n\n return this.d_indeterminate ? false : this.binary ? value === this.trueValue : contains(this.value, value);\n },\n dataP() {\n return cn({\n invalid: this.$invalid,\n checked: this.checked,\n disabled: this.disabled,\n filled: this.$variant === 'filled',\n [this.size]: this.size\n });\n }\n },\n components: {\n CheckIcon,\n MinusIcon\n }\n};\n</script>\n"],"names":["name","BaseInput","props","value","binary","Boolean","indeterminate","type","trueValue","falseValue","readonly","required","tabindex","Number","inputId","String","inputClass","Object","inputStyle","ariaLabelledby","ariaLabel","style","CheckboxStyle","provide","$pcCheckbox","$parentInstance","BaseCheckbox","inheritAttrs","emits","inject","$pcCheckboxGroup","undefined","data","d_indeterminate","watch","newValue","updateIndeterminate","mounted","updated","methods","getPTOptions","key","_ptm","ptmi","ptm","context","checked","disabled","onChange","event","_this","d_value","newModelValue","filter","val","equals","concat","_toConsumableArray","$emit","writeValue","onFocus","onBlur","_this$formField$onBlu","_this$formField","formField","call","$refs","input","computed","groupName","$formName","contains","dataP","cn","_defineProperty","invalid","$invalid","filled","$variant","size","components","CheckIcon","MinusIcon","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","$options","$data","_createElementVNode","ref","id","apply","arguments","_hoisted_2","_renderSlot","$slots","_createBlock","_component_CheckIcon","_component_MinusIcon"],"mappings":"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"}
@@ -58,7 +58,6 @@ export default {
58
58
  immediate: true,
59
59
  handler(newValue) {
60
60
  this.hsbValue = this.toHSB(newValue);
61
-
62
61
  if (this.selfUpdate) this.selfUpdate = false;
63
62
  else this.updateUI();
64
63
  }
@@ -108,8 +107,8 @@ export default {
108
107
 
109
108
  this.hsbValue = this.validateHSB({
110
109
  h: this.localHue,
111
- s: 100,
112
- b: 100
110
+ s: this.hsbValue.s,
111
+ b: this.hsbValue.b
113
112
  });
114
113
 
115
114
  this.selfUpdate = true;
@@ -343,10 +342,10 @@ export default {
343
342
  hsb = this.HEXtoHSB(this.defaultColor);
344
343
  }
345
344
 
346
- if (this.localHue == null || (!this.overlayVisible && !this.inline)) {
347
- this.localHue = hsb.h;
348
- } else {
345
+ if (hsb.s === 0 || hsb.b === 0) {
349
346
  hsb.h = this.localHue;
347
+ } else {
348
+ this.localHue = hsb.h;
350
349
  }
351
350
 
352
351
  return hsb;
@@ -127,8 +127,8 @@ var script = {
127
127
  this.localHue = Math.floor(360 * (150 - Math.max(0, Math.min(150, (event.pageY || event.changedTouches[0].pageY) - top))) / 150);
128
128
  this.hsbValue = this.validateHSB({
129
129
  h: this.localHue,
130
- s: 100,
131
- b: 100
130
+ s: this.hsbValue.s,
131
+ b: this.hsbValue.b
132
132
  });
133
133
  this.selfUpdate = true;
134
134
  this.updateColorSelector();
@@ -339,10 +339,10 @@ var script = {
339
339
  } else {
340
340
  hsb = this.HEXtoHSB(this.defaultColor);
341
341
  }
342
- if (this.localHue == null || !this.overlayVisible && !this.inline) {
343
- this.localHue = hsb.h;
344
- } else {
342
+ if (hsb.s === 0 || hsb.b === 0) {
345
343
  hsb.h = this.localHue;
344
+ } else {
345
+ this.localHue = hsb.h;
346
346
  }
347
347
  return hsb;
348
348
  },
@@ -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=5db57ab0&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 localHue: 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.localHue,\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 this.localHue = Math.floor((360 * (150 - Math.max(0, Math.min(150, (event.pageY || event.changedTouches[0].pageY) - top)))) / 150);\n\n this.hsbValue = this.validateHSB({\n h: this.localHue,\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 if (this.localHue == null || (!this.overlayVisible && !this.inline)) {\n this.localHue = hsb.h;\n } else {\n hsb.h = this.localHue;\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 // Issue: #7508\n this.$attrSelector && el.setAttribute(this.$attrSelector, '');\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 event.preventDefault();\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, true);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener, true);\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 localHue: 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.localHue,\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 this.localHue = Math.floor((360 * (150 - Math.max(0, Math.min(150, (event.pageY || event.changedTouches[0].pageY) - top)))) / 150);\n\n this.hsbValue = this.validateHSB({\n h: this.localHue,\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 if (this.localHue == null || (!this.overlayVisible && !this.inline)) {\n this.localHue = hsb.h;\n } else {\n hsb.h = this.localHue;\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 // Issue: #7508\n this.$attrSelector && el.setAttribute(this.$attrSelector, '');\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 event.preventDefault();\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, true);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener, true);\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","localHue","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","$attrSelector","setAttribute","onOverlayLeave","unbindScrollListener","onOverlayAfterLeave","relativePosition","absolutePosition","onInputClick","disabled","onInputKeydown","code","preventDefault","onInputBlur","_this$formField$onBlu","_this$formField","formField","onBlur","call","onColorMousedown","bindDragListeners","onColorDragStart","$el","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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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/colorpicker/BaseColorPicker.vue","../../src/colorpicker/ColorPicker.vue","../../src/colorpicker/ColorPicker.vue?vue&type=template&id=45298d04&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 localHue: 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 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.localHue,\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 this.localHue = Math.floor((360 * (150 - Math.max(0, Math.min(150, (event.pageY || event.changedTouches[0].pageY) - top)))) / 150);\n\n this.hsbValue = this.validateHSB({\n h: this.localHue,\n s: this.hsbValue.s,\n b: this.hsbValue.b\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 if (hsb.s === 0 || hsb.b === 0) {\n hsb.h = this.localHue;\n } else {\n this.localHue = hsb.h;\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 // Issue: #7508\n this.$attrSelector && el.setAttribute(this.$attrSelector, '');\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 event.preventDefault();\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, true);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener, true);\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 localHue: 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 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.localHue,\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 this.localHue = Math.floor((360 * (150 - Math.max(0, Math.min(150, (event.pageY || event.changedTouches[0].pageY) - top)))) / 150);\n\n this.hsbValue = this.validateHSB({\n h: this.localHue,\n s: this.hsbValue.s,\n b: this.hsbValue.b\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 if (hsb.s === 0 || hsb.b === 0) {\n hsb.h = this.localHue;\n } else {\n this.localHue = hsb.h;\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 // Issue: #7508\n this.$attrSelector && el.setAttribute(this.$attrSelector, '');\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 event.preventDefault();\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, true);\n }\n },\n unbindOutsideClickListener() {\n if (this.outsideClickListener) {\n document.removeEventListener('click', this.outsideClickListener, true);\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","localHue","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","$attrSelector","setAttribute","onOverlayLeave","unbindScrollListener","onOverlayAfterLeave","relativePosition","absolutePosition","onInputClick","disabled","onInputKeydown","code","preventDefault","onInputBlur","_this$formField$onBlu","_this$formField","formField","onBlur","call","onColorMousedown","bindDragListeners","onColorDragStart","$el","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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"}