primevue 4.3.2 → 4.3.3

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 (133) hide show
  1. package/autocomplete/AutoComplete.vue +56 -10
  2. package/autocomplete/index.mjs +67 -33
  3. package/autocomplete/index.mjs.map +1 -1
  4. package/cascadeselect/CascadeSelect.vue +1 -1
  5. package/cascadeselect/index.mjs +1 -2
  6. package/cascadeselect/index.mjs.map +1 -1
  7. package/checkbox/Checkbox.vue +1 -1
  8. package/checkbox/index.mjs +2 -1
  9. package/checkbox/index.mjs.map +1 -1
  10. package/chip/BaseChip.vue +1 -1
  11. package/chip/index.d.ts +1 -1
  12. package/chip/index.mjs +1 -1
  13. package/chip/index.mjs.map +1 -1
  14. package/colorpicker/ColorPicker.vue +1 -1
  15. package/colorpicker/index.mjs +1 -1
  16. package/colorpicker/index.mjs.map +1 -1
  17. package/datatable/BodyCell.vue +1 -0
  18. package/datatable/ColumnFilter.vue +1 -1
  19. package/datatable/DataTable.vue +103 -44
  20. package/datatable/HeaderCheckbox.vue +2 -2
  21. package/datatable/RowCheckbox.vue +1 -1
  22. package/datatable/TableBody.vue +12 -1
  23. package/datatable/TableFooter.vue +9 -1
  24. package/datatable/TableHeader.vue +9 -2
  25. package/datatable/index.d.ts +35 -27
  26. package/datatable/index.mjs +163 -99
  27. package/datatable/index.mjs.map +1 -1
  28. package/dataview/DataView.vue +4 -0
  29. package/dataview/index.d.ts +58 -1
  30. package/dataview/index.mjs +6 -2
  31. package/dataview/index.mjs.map +1 -1
  32. package/datepicker/DatePicker.vue +369 -233
  33. package/datepicker/index.d.ts +156 -0
  34. package/datepicker/index.mjs +643 -383
  35. package/datepicker/index.mjs.map +1 -1
  36. package/drawer/Drawer.vue +30 -20
  37. package/drawer/index.d.ts +10 -0
  38. package/drawer/index.mjs +42 -25
  39. package/drawer/index.mjs.map +1 -1
  40. package/fileupload/FileUpload.vue +1 -1
  41. package/fileupload/index.mjs +2 -2
  42. package/fileupload/index.mjs.map +1 -1
  43. package/galleria/Galleria.vue +39 -3
  44. package/galleria/index.mjs +40 -3
  45. package/galleria/index.mjs.map +1 -1
  46. package/inplace/Inplace.vue +1 -1
  47. package/inplace/index.mjs +3 -2
  48. package/inplace/index.mjs.map +1 -1
  49. package/inputnumber/BaseInputNumber.vue +4 -0
  50. package/inputnumber/InputNumber.vue +2 -9
  51. package/inputnumber/index.mjs +7 -8
  52. package/inputnumber/index.mjs.map +1 -1
  53. package/inputtext/index.d.ts +1 -2
  54. package/keyfilter/index.mjs +12 -19
  55. package/keyfilter/index.mjs.map +1 -1
  56. package/listbox/Listbox.vue +9 -2
  57. package/listbox/index.mjs +11 -3
  58. package/listbox/index.mjs.map +1 -1
  59. package/menu/Menu.vue +8 -2
  60. package/menu/Menuitem.vue +14 -4
  61. package/menu/index.mjs +36 -16
  62. package/menu/index.mjs.map +1 -1
  63. package/metergroup/MeterGroup.vue +9 -3
  64. package/metergroup/MeterGroupLabel.vue +10 -1
  65. package/metergroup/index.mjs +32 -7
  66. package/metergroup/index.mjs.map +1 -1
  67. package/multiselect/MultiSelect.vue +36 -5
  68. package/multiselect/index.mjs +49 -20
  69. package/multiselect/index.mjs.map +1 -1
  70. package/package.json +3 -3
  71. package/paginator/Paginator.vue +2 -0
  72. package/paginator/index.d.ts +8 -0
  73. package/paginator/index.mjs +3 -1
  74. package/paginator/index.mjs.map +1 -1
  75. package/panelmenu/PanelMenuList.vue +1 -1
  76. package/panelmenu/index.mjs +1 -1
  77. package/panelmenu/index.mjs.map +1 -1
  78. package/password/Password.vue +21 -3
  79. package/password/index.d.ts +1 -1
  80. package/password/index.mjs +32 -10
  81. package/password/index.mjs.map +1 -1
  82. package/popover/Popover.vue +1 -1
  83. package/popover/index.mjs +1 -2
  84. package/popover/index.mjs.map +1 -1
  85. package/progressbar/ProgressBar.vue +4 -4
  86. package/progressbar/index.mjs +8 -12
  87. package/progressbar/index.mjs.map +1 -1
  88. package/scrolltop/ScrollTop.vue +2 -2
  89. package/scrolltop/index.mjs +4 -2
  90. package/scrolltop/index.mjs.map +1 -1
  91. package/select/Select.vue +48 -12
  92. package/select/index.mjs +104 -71
  93. package/select/index.mjs.map +1 -1
  94. package/splitter/Splitter.vue +10 -2
  95. package/splitter/index.mjs +19 -6
  96. package/splitter/index.mjs.map +1 -1
  97. package/step/Step.vue +25 -7
  98. package/step/index.mjs +44 -14
  99. package/step/index.mjs.map +1 -1
  100. package/steppanel/StepPanel.vue +9 -3
  101. package/steppanel/index.d.ts +8 -0
  102. package/steppanel/index.mjs +23 -8
  103. package/steppanel/index.mjs.map +1 -1
  104. package/stepper/StepperSeparator.vue +5 -2
  105. package/tab/Tab.vue +4 -4
  106. package/tab/index.mjs +4 -4
  107. package/tab/index.mjs.map +1 -1
  108. package/tablist/TabList.vue +3 -0
  109. package/tablist/index.mjs +1 -0
  110. package/tablist/index.mjs.map +1 -1
  111. package/tabpanel/TabPanel.vue +2 -2
  112. package/tabpanel/index.mjs +2 -2
  113. package/tabpanel/index.mjs.map +1 -1
  114. package/textarea/index.d.ts +1 -2
  115. package/tieredmenu/TieredMenu.vue +1 -1
  116. package/tieredmenu/index.mjs +1 -2
  117. package/tieredmenu/index.mjs.map +1 -1
  118. package/tooltip/index.mjs +22 -16
  119. package/tooltip/index.mjs.map +1 -1
  120. package/tree/Tree.vue +14 -2
  121. package/tree/TreeNode.vue +2 -2
  122. package/tree/index.mjs +28 -10
  123. package/tree/index.mjs.map +1 -1
  124. package/treeselect/TreeSelect.vue +1 -1
  125. package/treeselect/index.mjs +1 -2
  126. package/treeselect/index.mjs.map +1 -1
  127. package/umd/primevue.min.js +1 -1
  128. package/virtualscroller/VirtualScroller.vue +13 -2
  129. package/virtualscroller/index.mjs +14 -4
  130. package/virtualscroller/index.mjs.map +1 -1
  131. package/virtualscroller/style/index.mjs +1 -1
  132. package/virtualscroller/style/index.mjs.map +1 -1
  133. package/web-types.json +1 -1
@@ -10,7 +10,6 @@
10
10
  import type { DefineComponent, DesignToken, EmitFn, HintedString, Nullable, PassThrough } from '@primevue/core';
11
11
  import type { ComponentHooks } from '@primevue/core/basecomponent';
12
12
  import type { PassThroughOptions } from 'primevue/passthrough';
13
- import { InputHTMLAttributes } from 'vue';
14
13
 
15
14
  export declare type InputTextPassThroughOptionType<T = any> = InputTextPassThroughAttributes | ((options: InputTextPassThroughMethodOptions<T>) => InputTextPassThroughAttributes | string) | string | null | undefined;
16
15
 
@@ -82,7 +81,7 @@ export interface InputTextContext {
82
81
  /**
83
82
  * Defines valid properties in InputText component.
84
83
  */
85
- export interface InputTextProps extends Omit<InputHTMLAttributes, 'size'> {
84
+ export interface InputTextProps {
86
85
  /**
87
86
  * Value of the component.
88
87
  */
@@ -6,12 +6,6 @@ var BaseKeyFilter = BaseDirective.extend({
6
6
  style: KeyFilterStyle
7
7
  });
8
8
 
9
- function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
10
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
11
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
12
- function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
13
- function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
14
- function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
15
9
  var KeyFilter = BaseKeyFilter.extend('keyfilter', {
16
10
  beforeMount: function beforeMount(el, options) {
17
11
  var target = this.getTarget(el);
@@ -91,7 +85,7 @@ var KeyFilter = BaseKeyFilter.extend('keyfilter', {
91
85
  }
92
86
  var testKey = "".concat(event.key);
93
87
  if (target.$_pkeyfilterValidateOnly) {
94
- testKey = "".concat(event.target.value).concat(event.key);
88
+ testKey = "".concat(target.value.substring(0, target.selectionStart)).concat(event.key).concat(target.value.substring(target.selectionEnd));
95
89
  }
96
90
  if (!regex.test(testKey)) {
97
91
  // runs before @update:modelValue emit
@@ -104,20 +98,19 @@ var KeyFilter = BaseKeyFilter.extend('keyfilter', {
104
98
  return;
105
99
  }
106
100
  var clipboard = event.clipboardData.getData('text');
107
- var testKey = '';
108
-
109
- // loop over each letter pasted and if any fail prevent the paste
110
- _toConsumableArray(clipboard).forEach(function (c) {
111
- if (target.$_pkeyfilterValidateOnly) {
112
- testKey += c;
113
- } else {
114
- testKey = c;
115
- }
116
- if (!regex.test(testKey)) {
101
+ if (target.$_pkeyfilterValidateOnly) {
102
+ var newValue = "".concat(target.value.substring(0, target.selectionStart)).concat(clipboard).concat(target.value.substring(target.selectionEnd));
103
+ if (!regex.test(newValue)) {
117
104
  event.preventDefault();
118
- return false;
119
105
  }
120
- });
106
+ } else {
107
+ for (var i = 0; i < clipboard.length; i++) {
108
+ if (!regex.test(clipboard[i])) {
109
+ event.preventDefault();
110
+ return;
111
+ }
112
+ }
113
+ }
121
114
  }
122
115
  }
123
116
  });
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/keyfilter/BaseKeyFilter.js","../../src/keyfilter/KeyFilter.js"],"sourcesContent":["import BaseDirective from '@primevue/core/basedirective';\nimport KeyFilterStyle from 'primevue/keyfilter/style';\n\nconst BaseKeyFilter = BaseDirective.extend({\n style: KeyFilterStyle\n});\n\nexport default BaseKeyFilter;\n","import { isAttributeEquals } from '@primeuix/utils/dom';\nimport BaseKeyFilter from './BaseKeyFilter';\n\nconst KeyFilter = BaseKeyFilter.extend('keyfilter', {\n beforeMount(el, options) {\n let target = this.getTarget(el);\n\n if (!target) return;\n\n target.$_pkeyfilterModifier = this.getModifiers(options);\n\n if (options.value !== undefined) {\n target.$_pkeyfilterPattern = options.value?.pattern || options.value;\n target.$_pkeyfilterValidateOnly = options.value?.validateOnly || false;\n }\n\n this.bindEvents(target);\n\n target.setAttribute('data-pd-keyfilter', true);\n },\n updated(el, options) {\n let target = this.getTarget(el);\n\n if (!target) return;\n\n target.$_pkeyfilterModifier = this.getModifiers(options);\n this.unbindEvents(el, options);\n\n if (options.value !== undefined) {\n target.$_pkeyfilterPattern = options.value?.pattern || options.value;\n target.$_pkeyfilterValidateOnly = options.value?.validateOnly || false;\n }\n\n this.bindEvents(target);\n },\n unmounted(el, options) {\n this.unbindEvents(el, options);\n },\n DEFAULT_PATTERNS: {\n pint: /[\\d]/,\n int: /[\\d-]/,\n pnum: /[\\d.]/,\n money: /[\\d.\\s,]/,\n num: /[\\d-.]/,\n hex: /[0-9a-f]/i,\n email: /[a-z0-9_.-@]/i,\n alpha: /[a-z_]/i,\n alphanum: /[a-z0-9_]/\n },\n methods: {\n getTarget(el) {\n return isAttributeEquals(el, 'data-pc-name', 'inputtext') || isAttributeEquals(el, 'data-pc-name', 'textarea') ? el : null;\n },\n getModifiers(options) {\n if (options.modifiers && Object.keys(options.modifiers).length) {\n return Object.keys(options.modifiers)[Object.keys.length - 1];\n }\n\n return '';\n },\n getRegex(target) {\n return target.$_pkeyfilterPattern ? target.$_pkeyfilterPattern : target.$_pkeyfilterModifier ? this.DEFAULT_PATTERNS[target.$_pkeyfilterModifier] : /./;\n },\n bindEvents(el) {\n el.$_keyfilterKeydownEvent = (event) => this.onKeydown(event, el);\n el.$_keyfilterPasteEvent = (event) => this.onPaste(event, el);\n\n el.addEventListener('keypress', el.$_keyfilterKeydownEvent);\n el.addEventListener('paste', el.$_keyfilterPasteEvent);\n },\n unbindEvents(el) {\n el.removeEventListener('keypress', el.$_keyfilterKeydownEvent);\n el.removeEventListener('paste', el.$_keyfilterPasteEvent);\n\n el.$_keyfilterKeydownEvent = null;\n el.$_keyfilterPasteEvent = null;\n },\n onKeydown(event, target) {\n if (event.ctrlKey || event.altKey || event.metaKey || event.key === 'Tab') {\n return;\n }\n\n let regex = this.getRegex(target);\n\n if (regex === '') {\n return;\n }\n\n let testKey = `${event.key}`;\n\n if (target.$_pkeyfilterValidateOnly) {\n testKey = `${event.target.value}${event.key}`;\n }\n\n if (!regex.test(testKey)) {\n // runs before @update:modelValue emit\n event.preventDefault();\n }\n },\n onPaste(event, target) {\n let regex = this.getRegex(target);\n\n if (regex === '') {\n return;\n }\n\n const clipboard = event.clipboardData.getData('text');\n let testKey = '';\n\n // loop over each letter pasted and if any fail prevent the paste\n [...clipboard].forEach((c) => {\n if (target.$_pkeyfilterValidateOnly) {\n testKey += c;\n } else {\n testKey = c;\n }\n\n if (!regex.test(testKey)) {\n event.preventDefault();\n\n return false;\n }\n });\n }\n }\n});\n\nexport default KeyFilter;\n"],"names":["BaseKeyFilter","BaseDirective","extend","style","KeyFilterStyle","KeyFilter","beforeMount","el","options","target","getTarget","$_pkeyfilterModifier","getModifiers","value","undefined","_options$value","_options$value2","$_pkeyfilterPattern","pattern","$_pkeyfilterValidateOnly","validateOnly","bindEvents","setAttribute","updated","unbindEvents","_options$value3","_options$value4","unmounted","DEFAULT_PATTERNS","pint","pnum","money","num","hex","email","alpha","alphanum","methods","isAttributeEquals","modifiers","Object","keys","length","getRegex","_this","$_keyfilterKeydownEvent","event","onKeydown","$_keyfilterPasteEvent","onPaste","addEventListener","removeEventListener","ctrlKey","altKey","metaKey","key","regex","testKey","concat","test","preventDefault","clipboard","clipboardData","getData","_toConsumableArray","forEach","c"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/keyfilter/BaseKeyFilter.js","../../src/keyfilter/KeyFilter.js"],"sourcesContent":["import BaseDirective from '@primevue/core/basedirective';\nimport KeyFilterStyle from 'primevue/keyfilter/style';\n\nconst BaseKeyFilter = BaseDirective.extend({\n style: KeyFilterStyle\n});\n\nexport default BaseKeyFilter;\n","import { isAttributeEquals } from '@primeuix/utils/dom';\nimport BaseKeyFilter from './BaseKeyFilter';\n\nconst KeyFilter = BaseKeyFilter.extend('keyfilter', {\n beforeMount(el, options) {\n let target = this.getTarget(el);\n\n if (!target) return;\n\n target.$_pkeyfilterModifier = this.getModifiers(options);\n\n if (options.value !== undefined) {\n target.$_pkeyfilterPattern = options.value?.pattern || options.value;\n target.$_pkeyfilterValidateOnly = options.value?.validateOnly || false;\n }\n\n this.bindEvents(target);\n\n target.setAttribute('data-pd-keyfilter', true);\n },\n updated(el, options) {\n let target = this.getTarget(el);\n\n if (!target) return;\n\n target.$_pkeyfilterModifier = this.getModifiers(options);\n this.unbindEvents(el, options);\n\n if (options.value !== undefined) {\n target.$_pkeyfilterPattern = options.value?.pattern || options.value;\n target.$_pkeyfilterValidateOnly = options.value?.validateOnly || false;\n }\n\n this.bindEvents(target);\n },\n unmounted(el, options) {\n this.unbindEvents(el, options);\n },\n DEFAULT_PATTERNS: {\n pint: /[\\d]/,\n int: /[\\d-]/,\n pnum: /[\\d.]/,\n money: /[\\d.\\s,]/,\n num: /[\\d-.]/,\n hex: /[0-9a-f]/i,\n email: /[a-z0-9_.-@]/i,\n alpha: /[a-z_]/i,\n alphanum: /[a-z0-9_]/\n },\n methods: {\n getTarget(el) {\n return isAttributeEquals(el, 'data-pc-name', 'inputtext') || isAttributeEquals(el, 'data-pc-name', 'textarea') ? el : null;\n },\n getModifiers(options) {\n if (options.modifiers && Object.keys(options.modifiers).length) {\n return Object.keys(options.modifiers)[Object.keys.length - 1];\n }\n\n return '';\n },\n getRegex(target) {\n return target.$_pkeyfilterPattern ? target.$_pkeyfilterPattern : target.$_pkeyfilterModifier ? this.DEFAULT_PATTERNS[target.$_pkeyfilterModifier] : /./;\n },\n bindEvents(el) {\n el.$_keyfilterKeydownEvent = (event) => this.onKeydown(event, el);\n el.$_keyfilterPasteEvent = (event) => this.onPaste(event, el);\n\n el.addEventListener('keypress', el.$_keyfilterKeydownEvent);\n el.addEventListener('paste', el.$_keyfilterPasteEvent);\n },\n unbindEvents(el) {\n el.removeEventListener('keypress', el.$_keyfilterKeydownEvent);\n el.removeEventListener('paste', el.$_keyfilterPasteEvent);\n\n el.$_keyfilterKeydownEvent = null;\n el.$_keyfilterPasteEvent = null;\n },\n onKeydown(event, target) {\n if (event.ctrlKey || event.altKey || event.metaKey || event.key === 'Tab') {\n return;\n }\n\n let regex = this.getRegex(target);\n\n if (regex === '') {\n return;\n }\n\n let testKey = `${event.key}`;\n\n if (target.$_pkeyfilterValidateOnly) {\n testKey = `${target.value.substring(0, target.selectionStart)}${event.key}${target.value.substring(target.selectionEnd)}`;\n }\n\n if (!regex.test(testKey)) {\n // runs before @update:modelValue emit\n event.preventDefault();\n }\n },\n onPaste(event, target) {\n let regex = this.getRegex(target);\n\n if (regex === '') {\n return;\n }\n\n const clipboard = event.clipboardData.getData('text');\n\n if (target.$_pkeyfilterValidateOnly) {\n const newValue = `${target.value.substring(0, target.selectionStart)}${clipboard}${target.value.substring(target.selectionEnd)}`;\n\n if (!regex.test(newValue)) {\n event.preventDefault();\n }\n } else {\n for (let i = 0; i < clipboard.length; i++) {\n if (!regex.test(clipboard[i])) {\n event.preventDefault();\n\n return;\n }\n }\n }\n }\n }\n});\n\nexport default KeyFilter;\n"],"names":["BaseKeyFilter","BaseDirective","extend","style","KeyFilterStyle","KeyFilter","beforeMount","el","options","target","getTarget","$_pkeyfilterModifier","getModifiers","value","undefined","_options$value","_options$value2","$_pkeyfilterPattern","pattern","$_pkeyfilterValidateOnly","validateOnly","bindEvents","setAttribute","updated","unbindEvents","_options$value3","_options$value4","unmounted","DEFAULT_PATTERNS","pint","pnum","money","num","hex","email","alpha","alphanum","methods","isAttributeEquals","modifiers","Object","keys","length","getRegex","_this","$_keyfilterKeydownEvent","event","onKeydown","$_keyfilterPasteEvent","onPaste","addEventListener","removeEventListener","ctrlKey","altKey","metaKey","key","regex","testKey","concat","substring","selectionStart","selectionEnd","test","preventDefault","clipboard","clipboardData","getData","newValue","i"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  <template>
2
- <div :id="$id" :class="cx('root')" @focusout="onFocusout" v-bind="ptmi('root')">
2
+ <div :id="$id" :class="cx('root')" @focusout="onFocusout" :data-p="containerDataP" v-bind="ptmi('root')">
3
3
  <span
4
4
  ref="firstHiddenFocusableElement"
5
5
  role="presentation"
@@ -86,7 +86,7 @@
86
86
  @touchend="onOptionTouchEnd()"
87
87
  @dblclick="onOptionDblClick($event, option)"
88
88
  v-bind="getPTOptions(option, getItemOptions, i, 'option')"
89
- :data-p-selected="isSelected(option)"
89
+ :data-p-selected="!checkmark && isSelected(option)"
90
90
  :data-p-focused="focusedOptionIndex === getOptionIndex(i, getItemOptions)"
91
91
  :data-p-disabled="isOptionDisabled(option)"
92
92
  >
@@ -132,6 +132,7 @@
132
132
  </template>
133
133
 
134
134
  <script>
135
+ import { cn } from '@primeuix/utils';
135
136
  import { findSingle, focus, getFirstFocusableElement, isElement } from '@primeuix/utils/dom';
136
137
  import { equals, findLastIndex, isNotEmpty, isPrintableCharacter, resolveFieldData } from '@primeuix/utils/object';
137
138
  import { FilterService } from '@primevue/core/api';
@@ -765,6 +766,12 @@ export default {
765
766
  },
766
767
  virtualScrollerDisabled() {
767
768
  return !this.virtualScrollerOptions;
769
+ },
770
+ containerDataP() {
771
+ return cn({
772
+ invalid: this.$invalid,
773
+ disabled: this.disabled
774
+ });
768
775
  }
769
776
  },
770
777
  directives: {
package/listbox/index.mjs CHANGED
@@ -1,3 +1,4 @@
1
+ import { cn } from '@primeuix/utils';
1
2
  import { findSingle, getFirstFocusableElement, focus, isElement } from '@primeuix/utils/dom';
2
3
  import { isNotEmpty, equals, findLastIndex, isPrintableCharacter, resolveFieldData } from '@primeuix/utils/object';
3
4
  import { FilterService } from '@primevue/core/api';
@@ -760,6 +761,12 @@ var script = {
760
761
  },
761
762
  virtualScrollerDisabled: function virtualScrollerDisabled() {
762
763
  return !this.virtualScrollerOptions;
764
+ },
765
+ containerDataP: function containerDataP() {
766
+ return cn({
767
+ invalid: this.$invalid,
768
+ disabled: this.disabled
769
+ });
763
770
  }
764
771
  },
765
772
  directives: {
@@ -776,7 +783,7 @@ var script = {
776
783
  }
777
784
  };
778
785
 
779
- var _hoisted_1 = ["id"];
786
+ var _hoisted_1 = ["id", "data-p"];
780
787
  var _hoisted_2 = ["tabindex"];
781
788
  var _hoisted_3 = ["id", "aria-multiselectable", "aria-label", "aria-labelledby", "aria-activedescendant", "aria-disabled"];
782
789
  var _hoisted_4 = ["id"];
@@ -796,7 +803,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
796
803
  "class": _ctx.cx('root'),
797
804
  onFocusout: _cache[7] || (_cache[7] = function () {
798
805
  return $options.onFocusout && $options.onFocusout.apply($options, arguments);
799
- })
806
+ }),
807
+ "data-p": $options.containerDataP
800
808
  }, _ctx.ptmi('root')), [createElementVNode("span", mergeProps({
801
809
  ref: "firstHiddenFocusableElement",
802
810
  role: "presentation",
@@ -963,7 +971,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
963
971
  },
964
972
  ref_for: true
965
973
  }, $options.getPTOptions(option, getItemOptions, i, 'option'), {
966
- "data-p-selected": $options.isSelected(option),
974
+ "data-p-selected": !_ctx.checkmark && $options.isSelected(option),
967
975
  "data-p-focused": $data.focusedOptionIndex === $options.getOptionIndex(i, getItemOptions),
968
976
  "data-p-disabled": $options.isOptionDisabled(option)
969
977
  }), [_ctx.checkmark ? (openBlock(), createElementBlock(Fragment, {