primevue 4.3.2 → 4.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (168) hide show
  1. package/accordionheader/AccordionHeader.vue +1 -1
  2. package/accordionheader/index.d.ts +6 -1
  3. package/accordionheader/index.mjs +1 -1
  4. package/accordionheader/index.mjs.map +1 -1
  5. package/autocomplete/AutoComplete.vue +60 -11
  6. package/autocomplete/index.d.ts +4 -0
  7. package/autocomplete/index.mjs +96 -59
  8. package/autocomplete/index.mjs.map +1 -1
  9. package/cascadeselect/CascadeSelect.vue +4 -1
  10. package/cascadeselect/CascadeSelectSub.vue +1 -1
  11. package/cascadeselect/index.mjs +22 -20
  12. package/cascadeselect/index.mjs.map +1 -1
  13. package/checkbox/Checkbox.vue +1 -1
  14. package/checkbox/index.mjs +2 -1
  15. package/checkbox/index.mjs.map +1 -1
  16. package/chip/BaseChip.vue +1 -1
  17. package/chip/index.d.ts +1 -1
  18. package/chip/index.mjs +1 -1
  19. package/chip/index.mjs.map +1 -1
  20. package/colorpicker/ColorPicker.vue +5 -1
  21. package/colorpicker/index.mjs +5 -1
  22. package/colorpicker/index.mjs.map +1 -1
  23. package/confirmationoptions/index.d.ts +1 -1
  24. package/confirmdialog/index.d.ts +4 -0
  25. package/contextmenu/index.mjs +12 -12
  26. package/contextmenu/index.mjs.map +1 -1
  27. package/datatable/BodyCell.vue +1 -0
  28. package/datatable/ColumnFilter.vue +3 -3
  29. package/datatable/DataTable.vue +103 -44
  30. package/datatable/HeaderCheckbox.vue +2 -2
  31. package/datatable/RowCheckbox.vue +1 -1
  32. package/datatable/TableBody.vue +12 -1
  33. package/datatable/TableFooter.vue +9 -1
  34. package/datatable/TableHeader.vue +9 -2
  35. package/datatable/index.d.ts +37 -29
  36. package/datatable/index.mjs +175 -111
  37. package/datatable/index.mjs.map +1 -1
  38. package/datatable/style/index.mjs +4 -4
  39. package/datatable/style/index.mjs.map +1 -1
  40. package/dataview/DataView.vue +4 -0
  41. package/dataview/index.d.ts +63 -6
  42. package/dataview/index.mjs +6 -2
  43. package/dataview/index.mjs.map +1 -1
  44. package/datepicker/DatePicker.vue +379 -236
  45. package/datepicker/index.d.ts +156 -0
  46. package/datepicker/index.mjs +676 -406
  47. package/datepicker/index.mjs.map +1 -1
  48. package/drawer/Drawer.vue +30 -20
  49. package/drawer/index.d.ts +10 -0
  50. package/drawer/index.mjs +42 -25
  51. package/drawer/index.mjs.map +1 -1
  52. package/fileupload/FileUpload.vue +3 -4
  53. package/fileupload/index.mjs +8 -10
  54. package/fileupload/index.mjs.map +1 -1
  55. package/galleria/Galleria.vue +39 -3
  56. package/galleria/index.mjs +40 -3
  57. package/galleria/index.mjs.map +1 -1
  58. package/image/Image.vue +1 -1
  59. package/image/index.mjs +1 -1
  60. package/image/index.mjs.map +1 -1
  61. package/inplace/Inplace.vue +1 -1
  62. package/inplace/index.mjs +3 -2
  63. package/inplace/index.mjs.map +1 -1
  64. package/inputmask/InputMask.vue +3 -3
  65. package/inputmask/index.d.ts +3 -3
  66. package/inputmask/index.mjs +3 -3
  67. package/inputmask/index.mjs.map +1 -1
  68. package/inputnumber/BaseInputNumber.vue +4 -0
  69. package/inputnumber/InputNumber.vue +3 -10
  70. package/inputnumber/index.mjs +8 -9
  71. package/inputnumber/index.mjs.map +1 -1
  72. package/keyfilter/index.mjs +12 -19
  73. package/keyfilter/index.mjs.map +1 -1
  74. package/listbox/Listbox.vue +10 -2
  75. package/listbox/index.mjs +38 -29
  76. package/listbox/index.mjs.map +1 -1
  77. package/megamenu/index.d.ts +1 -1
  78. package/megamenu/index.mjs +11 -11
  79. package/megamenu/index.mjs.map +1 -1
  80. package/menu/Menu.vue +12 -6
  81. package/menu/Menuitem.vue +14 -4
  82. package/menu/index.d.ts +3 -12
  83. package/menu/index.mjs +40 -20
  84. package/menu/index.mjs.map +1 -1
  85. package/menubar/index.mjs +16 -16
  86. package/menubar/index.mjs.map +1 -1
  87. package/metergroup/MeterGroup.vue +9 -3
  88. package/metergroup/MeterGroupLabel.vue +10 -1
  89. package/metergroup/index.d.ts +1 -1
  90. package/metergroup/index.mjs +32 -7
  91. package/metergroup/index.mjs.map +1 -1
  92. package/multiselect/MultiSelect.vue +40 -6
  93. package/multiselect/index.d.ts +1 -1
  94. package/multiselect/index.mjs +100 -68
  95. package/multiselect/index.mjs.map +1 -1
  96. package/organizationchart/OrganizationChartNode.vue +1 -1
  97. package/organizationchart/index.mjs.map +1 -1
  98. package/organizationchart/style/index.mjs +11 -6
  99. package/organizationchart/style/index.mjs.map +1 -1
  100. package/package.json +6 -6
  101. package/paginator/Paginator.vue +2 -0
  102. package/paginator/index.d.ts +8 -0
  103. package/paginator/index.mjs +3 -1
  104. package/paginator/index.mjs.map +1 -1
  105. package/panel/Panel.vue +2 -2
  106. package/panel/index.mjs +2 -2
  107. package/panel/index.mjs.map +1 -1
  108. package/panelmenu/PanelMenuList.vue +1 -1
  109. package/panelmenu/index.mjs +4 -4
  110. package/panelmenu/index.mjs.map +1 -1
  111. package/password/Password.vue +28 -6
  112. package/password/index.mjs +44 -16
  113. package/password/index.mjs.map +1 -1
  114. package/popover/Popover.vue +1 -1
  115. package/popover/index.mjs +1 -2
  116. package/popover/index.mjs.map +1 -1
  117. package/progressbar/ProgressBar.vue +4 -4
  118. package/progressbar/index.mjs +8 -12
  119. package/progressbar/index.mjs.map +1 -1
  120. package/scrolltop/ScrollTop.vue +2 -2
  121. package/scrolltop/index.mjs +4 -2
  122. package/scrolltop/index.mjs.map +1 -1
  123. package/select/Select.vue +68 -13
  124. package/select/index.mjs +128 -77
  125. package/select/index.mjs.map +1 -1
  126. package/selectbutton/index.d.ts +0 -24
  127. package/splitter/Splitter.vue +10 -2
  128. package/splitter/index.d.ts +1 -1
  129. package/splitter/index.mjs +19 -7
  130. package/splitter/index.mjs.map +1 -1
  131. package/splitter/style/index.mjs +1 -13
  132. package/splitter/style/index.mjs.map +1 -1
  133. package/step/Step.vue +27 -9
  134. package/step/index.mjs +46 -16
  135. package/step/index.mjs.map +1 -1
  136. package/steppanel/StepPanel.vue +11 -5
  137. package/steppanel/index.d.ts +8 -0
  138. package/steppanel/index.mjs +25 -10
  139. package/steppanel/index.mjs.map +1 -1
  140. package/stepper/StepperSeparator.vue +5 -2
  141. package/tab/Tab.vue +4 -4
  142. package/tab/index.mjs +4 -4
  143. package/tab/index.mjs.map +1 -1
  144. package/tablist/TabList.vue +3 -0
  145. package/tablist/index.mjs +1 -0
  146. package/tablist/index.mjs.map +1 -1
  147. package/tabpanel/TabPanel.vue +2 -2
  148. package/tabpanel/index.mjs +2 -2
  149. package/tabpanel/index.mjs.map +1 -1
  150. package/tieredmenu/TieredMenu.vue +1 -1
  151. package/tieredmenu/index.mjs +13 -14
  152. package/tieredmenu/index.mjs.map +1 -1
  153. package/tooltip/index.mjs +47 -30
  154. package/tooltip/index.mjs.map +1 -1
  155. package/tree/Tree.vue +14 -2
  156. package/tree/TreeNode.vue +2 -2
  157. package/tree/index.mjs +28 -10
  158. package/tree/index.mjs.map +1 -1
  159. package/treeselect/TreeSelect.vue +4 -1
  160. package/treeselect/index.mjs +4 -2
  161. package/treeselect/index.mjs.map +1 -1
  162. package/umd/primevue.min.js +12213 -1
  163. package/virtualscroller/VirtualScroller.vue +13 -2
  164. package/virtualscroller/index.mjs +28 -18
  165. package/virtualscroller/index.mjs.map +1 -1
  166. package/virtualscroller/style/index.mjs +1 -1
  167. package/virtualscroller/style/index.mjs.map +1 -1
  168. package/web-types.json +1 -1
@@ -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';
@@ -239,6 +240,7 @@ export default {
239
240
  this.focused = true;
240
241
  this.focusedOptionIndex = this.focusedOptionIndex !== -1 ? this.focusedOptionIndex : this.autoOptionFocus ? this.findFirstFocusedOptionIndex() : this.findSelectedOptionIndex();
241
242
  this.autoUpdateModel();
243
+ this.scrollInView(this.focusedOptionIndex);
242
244
  this.$emit('focus', event);
243
245
  },
244
246
  onListBlur(event) {
@@ -765,6 +767,12 @@ export default {
765
767
  },
766
768
  virtualScrollerDisabled() {
767
769
  return !this.virtualScrollerOptions;
770
+ },
771
+ containerDataP() {
772
+ return cn({
773
+ invalid: this.$invalid,
774
+ disabled: this.disabled
775
+ });
768
776
  }
769
777
  },
770
778
  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';
@@ -220,6 +221,7 @@ var script = {
220
221
  this.focused = true;
221
222
  this.focusedOptionIndex = this.focusedOptionIndex !== -1 ? this.focusedOptionIndex : this.autoOptionFocus ? this.findFirstFocusedOptionIndex() : this.findSelectedOptionIndex();
222
223
  this.autoUpdateModel();
224
+ this.scrollInView(this.focusedOptionIndex);
223
225
  this.$emit('focus', event);
224
226
  },
225
227
  onListBlur: function onListBlur(event) {
@@ -564,28 +566,28 @@ var script = {
564
566
  return -1;
565
567
  },
566
568
  findFirstSelectedOptionIndex: function findFirstSelectedOptionIndex() {
567
- var _this10 = this;
569
+ var _this0 = this;
568
570
  return this.$filled ? this.visibleOptions.findIndex(function (option) {
569
- return _this10.isValidSelectedOption(option);
571
+ return _this0.isValidSelectedOption(option);
570
572
  }) : -1;
571
573
  },
572
574
  findLastSelectedOptionIndex: function findLastSelectedOptionIndex() {
573
- var _this11 = this;
575
+ var _this1 = this;
574
576
  return this.$filled ? findLastIndex(this.visibleOptions, function (option) {
575
- return _this11.isValidSelectedOption(option);
577
+ return _this1.isValidSelectedOption(option);
576
578
  }) : -1;
577
579
  },
578
580
  findNextSelectedOptionIndex: function findNextSelectedOptionIndex(index) {
579
- var _this12 = this;
581
+ var _this10 = this;
580
582
  var matchedOptionIndex = this.$filled && index < this.visibleOptions.length - 1 ? this.visibleOptions.slice(index + 1).findIndex(function (option) {
581
- return _this12.isValidSelectedOption(option);
583
+ return _this10.isValidSelectedOption(option);
582
584
  }) : -1;
583
585
  return matchedOptionIndex > -1 ? matchedOptionIndex + index + 1 : -1;
584
586
  },
585
587
  findPrevSelectedOptionIndex: function findPrevSelectedOptionIndex(index) {
586
- var _this13 = this;
588
+ var _this11 = this;
587
589
  var matchedOptionIndex = this.$filled && index > 0 ? findLastIndex(this.visibleOptions.slice(0, index), function (option) {
588
- return _this13.isValidSelectedOption(option);
590
+ return _this11.isValidSelectedOption(option);
589
591
  }) : -1;
590
592
  return matchedOptionIndex > -1 ? matchedOptionIndex : -1;
591
593
  },
@@ -612,20 +614,20 @@ var script = {
612
614
  return selectedIndex < 0 ? this.findLastOptionIndex() : selectedIndex;
613
615
  },
614
616
  searchOptions: function searchOptions(event, _char) {
615
- var _this14 = this;
617
+ var _this12 = this;
616
618
  this.searchValue = (this.searchValue || '') + _char;
617
619
  var optionIndex = -1;
618
620
  if (isNotEmpty(this.searchValue)) {
619
621
  if (this.focusedOptionIndex !== -1) {
620
622
  optionIndex = this.visibleOptions.slice(this.focusedOptionIndex).findIndex(function (option) {
621
- return _this14.isOptionMatched(option);
623
+ return _this12.isOptionMatched(option);
622
624
  });
623
625
  optionIndex = optionIndex === -1 ? this.visibleOptions.slice(0, this.focusedOptionIndex).findIndex(function (option) {
624
- return _this14.isOptionMatched(option);
626
+ return _this12.isOptionMatched(option);
625
627
  }) : optionIndex + this.focusedOptionIndex;
626
628
  } else {
627
629
  optionIndex = this.visibleOptions.findIndex(function (option) {
628
- return _this14.isOptionMatched(option);
630
+ return _this12.isOptionMatched(option);
629
631
  });
630
632
  }
631
633
  if (optionIndex === -1 && this.focusedOptionIndex === -1) {
@@ -639,14 +641,14 @@ var script = {
639
641
  clearTimeout(this.searchTimeout);
640
642
  }
641
643
  this.searchTimeout = setTimeout(function () {
642
- _this14.searchValue = '';
643
- _this14.searchTimeout = null;
644
+ _this12.searchValue = '';
645
+ _this12.searchTimeout = null;
644
646
  }, 500);
645
647
  },
646
648
  removeOption: function removeOption(option) {
647
- var _this15 = this;
649
+ var _this13 = this;
648
650
  return this.d_value.filter(function (val) {
649
- return !equals(val, _this15.getOptionValue(option), _this15.equalityKey);
651
+ return !equals(val, _this13.getOptionValue(option), _this13.equalityKey);
650
652
  });
651
653
  },
652
654
  changeFocusedOptionIndex: function changeFocusedOptionIndex(event, index) {
@@ -659,19 +661,19 @@ var script = {
659
661
  }
660
662
  },
661
663
  scrollInView: function scrollInView() {
662
- var _this16 = this;
664
+ var _this14 = this;
663
665
  var index = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : -1;
664
666
  this.$nextTick(function () {
665
- var id = index !== -1 ? "".concat(_this16.$id, "_").concat(index) : _this16.focusedOptionId;
666
- var element = findSingle(_this16.list, "li[id=\"".concat(id, "\"]"));
667
+ var id = index !== -1 ? "".concat(_this14.$id, "_").concat(index) : _this14.focusedOptionId;
668
+ var element = findSingle(_this14.list, "li[id=\"".concat(id, "\"]"));
667
669
  if (element) {
668
670
  element.scrollIntoView && element.scrollIntoView({
669
671
  block: 'nearest',
670
672
  inline: 'nearest',
671
673
  behavior: 'smooth'
672
674
  });
673
- } else if (!_this16.virtualScrollerDisabled) {
674
- _this16.virtualScroller && _this16.virtualScroller.scrollToIndex(index !== -1 ? index : _this16.focusedOptionIndex);
675
+ } else if (!_this14.virtualScrollerDisabled) {
676
+ _this14.virtualScroller && _this14.virtualScroller.scrollToIndex(index !== -1 ? index : _this14.focusedOptionIndex);
675
677
  }
676
678
  });
677
679
  },
@@ -701,11 +703,11 @@ var script = {
701
703
  return this.filterValue ? FilterService.filter(this.options, this.searchFields, this.filterValue, this.filterMatchMode, this.filterLocale) : this.options;
702
704
  },
703
705
  optionsListGroup: function optionsListGroup() {
704
- var _this17 = this;
706
+ var _this15 = this;
705
707
  var filteredOptions = [];
706
708
  (this.options || []).forEach(function (optionGroup) {
707
- var optionGroupChildren = _this17.getOptionGroupChildren(optionGroup) || [];
708
- var filteredChildren = _this17.filterValue ? FilterService.filter(optionGroupChildren, _this17.searchFields, _this17.filterValue, _this17.filterMatchMode, _this17.filterLocale) : optionGroupChildren;
709
+ var optionGroupChildren = _this15.getOptionGroupChildren(optionGroup) || [];
710
+ var filteredChildren = _this15.filterValue ? FilterService.filter(optionGroupChildren, _this15.searchFields, _this15.filterValue, _this15.filterMatchMode, _this15.filterLocale) : optionGroupChildren;
709
711
  if (filteredChildren !== null && filteredChildren !== void 0 && filteredChildren.length) {
710
712
  filteredOptions.push.apply(filteredOptions, [{
711
713
  optionGroup: optionGroup,
@@ -753,13 +755,19 @@ var script = {
753
755
  return this.focusedOptionIndex !== -1 ? "".concat(this.$id, "_").concat(this.focusedOptionIndex) : null;
754
756
  },
755
757
  ariaSetSize: function ariaSetSize() {
756
- var _this18 = this;
758
+ var _this16 = this;
757
759
  return this.visibleOptions.filter(function (option) {
758
- return !_this18.isOptionGroup(option);
760
+ return !_this16.isOptionGroup(option);
759
761
  }).length;
760
762
  },
761
763
  virtualScrollerDisabled: function virtualScrollerDisabled() {
762
764
  return !this.virtualScrollerOptions;
765
+ },
766
+ containerDataP: function containerDataP() {
767
+ return cn({
768
+ invalid: this.$invalid,
769
+ disabled: this.disabled
770
+ });
763
771
  }
764
772
  },
765
773
  directives: {
@@ -776,7 +784,7 @@ var script = {
776
784
  }
777
785
  };
778
786
 
779
- var _hoisted_1 = ["id"];
787
+ var _hoisted_1 = ["id", "data-p"];
780
788
  var _hoisted_2 = ["tabindex"];
781
789
  var _hoisted_3 = ["id", "aria-multiselectable", "aria-label", "aria-labelledby", "aria-activedescendant", "aria-disabled"];
782
790
  var _hoisted_4 = ["id"];
@@ -796,7 +804,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
796
804
  "class": _ctx.cx('root'),
797
805
  onFocusout: _cache[7] || (_cache[7] = function () {
798
806
  return $options.onFocusout && $options.onFocusout.apply($options, arguments);
799
- })
807
+ }),
808
+ "data-p": $options.containerDataP
800
809
  }, _ctx.ptmi('root')), [createElementVNode("span", mergeProps({
801
810
  ref: "firstHiddenFocusableElement",
802
811
  role: "presentation",
@@ -963,7 +972,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
963
972
  },
964
973
  ref_for: true
965
974
  }, $options.getPTOptions(option, getItemOptions, i, 'option'), {
966
- "data-p-selected": $options.isSelected(option),
975
+ "data-p-selected": !_ctx.checkmark && $options.isSelected(option),
967
976
  "data-p-focused": $data.focusedOptionIndex === $options.getOptionIndex(i, getItemOptions),
968
977
  "data-p-disabled": $options.isOptionDisabled(option)
969
978
  }), [_ctx.checkmark ? (openBlock(), createElementBlock(Fragment, {