primevue 3.22.3 → 3.23.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 (267) hide show
  1. package/README.md +2 -2
  2. package/accordion/Accordion.vue +7 -3
  3. package/accordion/accordion.cjs.js +7 -3
  4. package/accordion/accordion.cjs.min.js +1 -1
  5. package/accordion/accordion.esm.js +8 -4
  6. package/accordion/accordion.esm.min.js +1 -1
  7. package/accordion/accordion.js +7 -3
  8. package/accordion/accordion.min.js +1 -1
  9. package/autocomplete/AutoComplete.vue +6 -3
  10. package/autocomplete/autocomplete.cjs.js +12 -9
  11. package/autocomplete/autocomplete.cjs.min.js +1 -1
  12. package/autocomplete/autocomplete.esm.js +13 -10
  13. package/autocomplete/autocomplete.esm.min.js +1 -1
  14. package/autocomplete/autocomplete.js +12 -9
  15. package/autocomplete/autocomplete.min.js +1 -1
  16. package/breadcrumb/Breadcrumb.vue +3 -3
  17. package/breadcrumb/breadcrumb.cjs.js +19 -11
  18. package/breadcrumb/breadcrumb.cjs.min.js +1 -1
  19. package/breadcrumb/breadcrumb.esm.js +19 -11
  20. package/breadcrumb/breadcrumb.esm.min.js +1 -1
  21. package/breadcrumb/breadcrumb.js +19 -11
  22. package/breadcrumb/breadcrumb.min.js +1 -1
  23. package/calendar/Calendar.vue +4 -4
  24. package/calendar/calendar.cjs.js +4 -4
  25. package/calendar/calendar.cjs.min.js +1 -1
  26. package/calendar/calendar.esm.js +4 -4
  27. package/calendar/calendar.esm.min.js +1 -1
  28. package/calendar/calendar.js +4 -4
  29. package/calendar/calendar.min.js +1 -1
  30. package/cascadeselect/CascadeSelect.vue +6 -3
  31. package/cascadeselect/cascadeselect.cjs.js +9 -6
  32. package/cascadeselect/cascadeselect.cjs.min.js +1 -1
  33. package/cascadeselect/cascadeselect.esm.js +10 -7
  34. package/cascadeselect/cascadeselect.esm.min.js +1 -1
  35. package/cascadeselect/cascadeselect.js +9 -6
  36. package/cascadeselect/cascadeselect.min.js +1 -1
  37. package/config/PrimeVue.d.ts +1 -2
  38. package/config/config.cjs.js +0 -1
  39. package/config/config.cjs.min.js +1 -1
  40. package/config/config.esm.js +0 -1
  41. package/config/config.esm.min.js +1 -1
  42. package/config/config.js +0 -1
  43. package/config/config.min.js +1 -1
  44. package/contextmenu/ContextMenu.vue +6 -3
  45. package/contextmenu/contextmenu.cjs.js +8 -5
  46. package/contextmenu/contextmenu.cjs.min.js +1 -1
  47. package/contextmenu/contextmenu.esm.js +9 -6
  48. package/contextmenu/contextmenu.esm.min.js +1 -1
  49. package/contextmenu/contextmenu.js +8 -5
  50. package/contextmenu/contextmenu.min.js +1 -1
  51. package/core/core.js +74 -50
  52. package/core/core.min.js +6 -6
  53. package/datatable/BodyCell.vue +4 -2
  54. package/datatable/DataTable.vue +6 -6
  55. package/datatable/datatable.cjs.js +14 -12
  56. package/datatable/datatable.cjs.min.js +1 -1
  57. package/datatable/datatable.esm.js +14 -12
  58. package/datatable/datatable.esm.min.js +1 -1
  59. package/datatable/datatable.js +14 -12
  60. package/datatable/datatable.min.js +1 -1
  61. package/dialog/Dialog.vue +1 -1
  62. package/dialog/dialog.cjs.js +1 -1
  63. package/dialog/dialog.cjs.min.js +1 -1
  64. package/dialog/dialog.esm.js +1 -1
  65. package/dialog/dialog.esm.min.js +1 -1
  66. package/dialog/dialog.js +1 -1
  67. package/dialog/dialog.min.js +1 -1
  68. package/dock/DockSub.vue +9 -3
  69. package/dock/dock.cjs.js +10 -4
  70. package/dock/dock.cjs.min.js +1 -1
  71. package/dock/dock.esm.js +11 -5
  72. package/dock/dock.esm.min.js +1 -1
  73. package/dock/dock.js +10 -4
  74. package/dock/dock.min.js +1 -1
  75. package/dropdown/Dropdown.vue +6 -3
  76. package/dropdown/dropdown.cjs.js +13 -10
  77. package/dropdown/dropdown.cjs.min.js +1 -1
  78. package/dropdown/dropdown.esm.js +14 -11
  79. package/dropdown/dropdown.esm.min.js +1 -1
  80. package/dropdown/dropdown.js +13 -10
  81. package/dropdown/dropdown.min.js +1 -1
  82. package/listbox/Listbox.vue +6 -3
  83. package/listbox/listbox.cjs.js +11 -8
  84. package/listbox/listbox.cjs.min.js +1 -1
  85. package/listbox/listbox.esm.js +12 -9
  86. package/listbox/listbox.esm.min.js +1 -1
  87. package/listbox/listbox.js +11 -8
  88. package/listbox/listbox.min.js +1 -1
  89. package/megamenu/MegaMenu.vue +7 -3
  90. package/megamenu/megamenu.cjs.js +10 -6
  91. package/megamenu/megamenu.cjs.min.js +1 -1
  92. package/megamenu/megamenu.esm.js +11 -7
  93. package/megamenu/megamenu.esm.min.js +1 -1
  94. package/megamenu/megamenu.js +10 -6
  95. package/megamenu/megamenu.min.js +1 -1
  96. package/menu/Menu.d.ts +8 -0
  97. package/menu/Menu.vue +14 -3
  98. package/menu/menu.cjs.js +39 -16
  99. package/menu/menu.cjs.min.js +1 -1
  100. package/menu/menu.esm.js +41 -18
  101. package/menu/menu.esm.min.js +1 -1
  102. package/menu/menu.js +39 -16
  103. package/menu/menu.min.js +1 -1
  104. package/menubar/Menubar.vue +7 -3
  105. package/menubar/menubar.cjs.js +10 -6
  106. package/menubar/menubar.cjs.min.js +1 -1
  107. package/menubar/menubar.esm.js +11 -7
  108. package/menubar/menubar.esm.min.js +1 -1
  109. package/menubar/menubar.js +10 -6
  110. package/menubar/menubar.min.js +1 -1
  111. package/multiselect/MultiSelect.vue +6 -3
  112. package/multiselect/multiselect.cjs.js +11 -8
  113. package/multiselect/multiselect.cjs.min.js +1 -1
  114. package/multiselect/multiselect.esm.js +12 -9
  115. package/multiselect/multiselect.esm.min.js +1 -1
  116. package/multiselect/multiselect.js +11 -8
  117. package/multiselect/multiselect.min.js +1 -1
  118. package/orderlist/OrderList.vue +8 -3
  119. package/orderlist/orderlist.cjs.js +11 -6
  120. package/orderlist/orderlist.cjs.min.js +1 -1
  121. package/orderlist/orderlist.esm.js +12 -7
  122. package/orderlist/orderlist.esm.min.js +1 -1
  123. package/orderlist/orderlist.js +11 -6
  124. package/orderlist/orderlist.min.js +1 -1
  125. package/package.json +1 -1
  126. package/panelmenu/PanelMenu.vue +9 -6
  127. package/panelmenu/PanelMenuList.vue +1 -1
  128. package/panelmenu/panelmenu.cjs.js +11 -8
  129. package/panelmenu/panelmenu.cjs.min.js +1 -1
  130. package/panelmenu/panelmenu.esm.js +11 -8
  131. package/panelmenu/panelmenu.esm.min.js +1 -1
  132. package/panelmenu/panelmenu.js +11 -8
  133. package/panelmenu/panelmenu.min.js +1 -1
  134. package/picklist/PickList.vue +8 -2
  135. package/picklist/picklist.cjs.js +8 -2
  136. package/picklist/picklist.cjs.min.js +1 -1
  137. package/picklist/picklist.esm.js +9 -3
  138. package/picklist/picklist.esm.min.js +1 -1
  139. package/picklist/picklist.js +8 -2
  140. package/picklist/picklist.min.js +1 -1
  141. package/rating/Rating.vue +9 -3
  142. package/rating/rating.cjs.js +11 -5
  143. package/rating/rating.cjs.min.js +1 -1
  144. package/rating/rating.esm.js +12 -6
  145. package/rating/rating.esm.min.js +1 -1
  146. package/rating/rating.js +11 -5
  147. package/rating/rating.min.js +1 -1
  148. package/resources/themes/arya-blue/theme.css +7 -0
  149. package/resources/themes/arya-green/theme.css +7 -0
  150. package/resources/themes/arya-orange/theme.css +7 -0
  151. package/resources/themes/arya-purple/theme.css +7 -0
  152. package/resources/themes/bootstrap4-dark-blue/theme.css +7 -0
  153. package/resources/themes/bootstrap4-dark-purple/theme.css +7 -0
  154. package/resources/themes/bootstrap4-light-blue/theme.css +7 -0
  155. package/resources/themes/bootstrap4-light-purple/theme.css +7 -0
  156. package/resources/themes/fluent-light/theme.css +7 -0
  157. package/resources/themes/lara-dark-blue/theme.css +7 -0
  158. package/resources/themes/lara-dark-indigo/theme.css +7 -0
  159. package/resources/themes/lara-dark-purple/theme.css +7 -0
  160. package/resources/themes/lara-dark-teal/theme.css +7 -0
  161. package/resources/themes/lara-light-blue/theme.css +7 -0
  162. package/resources/themes/lara-light-indigo/theme.css +7 -0
  163. package/resources/themes/lara-light-purple/theme.css +7 -0
  164. package/resources/themes/lara-light-teal/theme.css +7 -0
  165. package/resources/themes/luna-amber/theme.css +7 -0
  166. package/resources/themes/luna-blue/theme.css +7 -0
  167. package/resources/themes/luna-green/theme.css +7 -0
  168. package/resources/themes/luna-pink/theme.css +7 -0
  169. package/resources/themes/md-dark-deeppurple/theme.css +10 -2
  170. package/resources/themes/md-dark-indigo/theme.css +10 -2
  171. package/resources/themes/md-light-deeppurple/theme.css +10 -2
  172. package/resources/themes/md-light-indigo/theme.css +10 -2
  173. package/resources/themes/mdc-dark-deeppurple/theme.css +10 -2
  174. package/resources/themes/mdc-dark-indigo/theme.css +10 -2
  175. package/resources/themes/mdc-light-deeppurple/theme.css +10 -2
  176. package/resources/themes/mdc-light-indigo/theme.css +10 -2
  177. package/resources/themes/mira/fonts/Inter-Bold.woff +0 -0
  178. package/resources/themes/mira/fonts/Inter-Bold.woff2 +0 -0
  179. package/resources/themes/mira/fonts/Inter-Medium.woff +0 -0
  180. package/resources/themes/mira/fonts/Inter-Medium.woff2 +0 -0
  181. package/resources/themes/mira/fonts/Inter-Regular.woff +0 -0
  182. package/resources/themes/mira/fonts/Inter-Regular.woff2 +0 -0
  183. package/resources/themes/mira/fonts/Inter-SemiBold.woff +0 -0
  184. package/resources/themes/mira/fonts/Inter-SemiBold.woff2 +0 -0
  185. package/resources/themes/mira/theme.css +6066 -0
  186. package/resources/themes/nano/theme.css +5838 -0
  187. package/resources/themes/nova/theme.css +7 -0
  188. package/resources/themes/nova-accent/theme.css +7 -0
  189. package/resources/themes/nova-alt/theme.css +7 -0
  190. package/resources/themes/nova-vue/theme.css +7 -0
  191. package/resources/themes/rhea/theme.css +7 -0
  192. package/resources/themes/saga-blue/theme.css +7 -0
  193. package/resources/themes/saga-green/theme.css +7 -0
  194. package/resources/themes/saga-orange/theme.css +7 -0
  195. package/resources/themes/saga-purple/theme.css +7 -0
  196. package/resources/themes/soho-dark/fonts/lato-v17-latin-ext_latin-300.woff +0 -0
  197. package/resources/themes/soho-dark/fonts/lato-v17-latin-ext_latin-300.woff2 +0 -0
  198. package/resources/themes/soho-dark/fonts/lato-v17-latin-ext_latin-700.woff +0 -0
  199. package/resources/themes/soho-dark/fonts/lato-v17-latin-ext_latin-700.woff2 +0 -0
  200. package/resources/themes/soho-dark/fonts/lato-v17-latin-ext_latin-regular.woff +0 -0
  201. package/resources/themes/soho-dark/fonts/lato-v17-latin-ext_latin-regular.woff2 +0 -0
  202. package/resources/themes/soho-dark/theme.css +5831 -0
  203. package/resources/themes/soho-light/fonts/lato-v17-latin-ext_latin-300.woff +0 -0
  204. package/resources/themes/soho-light/fonts/lato-v17-latin-ext_latin-300.woff2 +0 -0
  205. package/resources/themes/soho-light/fonts/lato-v17-latin-ext_latin-700.woff +0 -0
  206. package/resources/themes/soho-light/fonts/lato-v17-latin-ext_latin-700.woff2 +0 -0
  207. package/resources/themes/soho-light/fonts/lato-v17-latin-ext_latin-regular.woff +0 -0
  208. package/resources/themes/soho-light/fonts/lato-v17-latin-ext_latin-regular.woff2 +0 -0
  209. package/resources/themes/soho-light/theme.css +5885 -0
  210. package/resources/themes/tailwind-light/theme.css +7 -0
  211. package/resources/themes/vela-blue/theme.css +7 -0
  212. package/resources/themes/vela-green/theme.css +7 -0
  213. package/resources/themes/vela-orange/theme.css +7 -0
  214. package/resources/themes/vela-purple/theme.css +7 -0
  215. package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-300.woff +0 -0
  216. package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-300.woff2 +0 -0
  217. package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-600.woff +0 -0
  218. package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-600.woff2 +0 -0
  219. package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-700.woff +0 -0
  220. package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-700.woff2 +0 -0
  221. package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-regular.woff +0 -0
  222. package/resources/themes/viva-dark/fonts/poppins-v15-latin-ext_latin-regular.woff2 +0 -0
  223. package/resources/themes/viva-dark/theme.css +5993 -0
  224. package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-300.woff +0 -0
  225. package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-300.woff2 +0 -0
  226. package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-600.woff +0 -0
  227. package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-600.woff2 +0 -0
  228. package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-700.woff +0 -0
  229. package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-700.woff2 +0 -0
  230. package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-regular.woff +0 -0
  231. package/resources/themes/viva-light/fonts/poppins-v15-latin-ext_latin-regular.woff2 +0 -0
  232. package/resources/themes/viva-light/theme.css +5993 -0
  233. package/speeddial/SpeedDial.vue +6 -3
  234. package/speeddial/speeddial.cjs.js +11 -8
  235. package/speeddial/speeddial.cjs.min.js +1 -1
  236. package/speeddial/speeddial.esm.js +12 -9
  237. package/speeddial/speeddial.esm.min.js +1 -1
  238. package/speeddial/speeddial.js +11 -8
  239. package/speeddial/speeddial.min.js +1 -1
  240. package/tabview/TabView.vue +6 -3
  241. package/tabview/tabview.cjs.js +6 -3
  242. package/tabview/tabview.cjs.min.js +1 -1
  243. package/tabview/tabview.esm.js +7 -4
  244. package/tabview/tabview.esm.min.js +1 -1
  245. package/tabview/tabview.js +6 -3
  246. package/tabview/tabview.min.js +1 -1
  247. package/tag/Tag.vue +1 -1
  248. package/tag/tag.cjs.js +4 -2
  249. package/tag/tag.cjs.min.js +1 -1
  250. package/tag/tag.esm.js +5 -3
  251. package/tag/tag.esm.min.js +1 -1
  252. package/tag/tag.js +4 -2
  253. package/tag/tag.min.js +1 -1
  254. package/tieredmenu/TieredMenu.vue +7 -3
  255. package/tieredmenu/tieredmenu.cjs.js +10 -6
  256. package/tieredmenu/tieredmenu.cjs.min.js +1 -1
  257. package/tieredmenu/tieredmenu.esm.js +11 -7
  258. package/tieredmenu/tieredmenu.esm.min.js +1 -1
  259. package/tieredmenu/tieredmenu.js +10 -6
  260. package/tieredmenu/tieredmenu.min.js +1 -1
  261. package/utils/utils.cjs.js +11 -16
  262. package/utils/utils.cjs.min.js +1 -1
  263. package/utils/utils.esm.js +11 -16
  264. package/utils/utils.esm.min.js +1 -1
  265. package/utils/utils.js +11 -16
  266. package/utils/utils.min.js +1 -1
  267. package/web-types.json +11 -1
package/core/core.js CHANGED
@@ -517,7 +517,7 @@ this.primevue.utils = (function (exports) {
517
517
  },
518
518
 
519
519
  isExist(element) {
520
- return element !== null && typeof element !== 'undefined' && element.nodeName && element.parentNode;
520
+ return !!(element !== null && typeof element !== 'undefined' && element.nodeName && element.parentNode);
521
521
  },
522
522
 
523
523
  isClient() {
@@ -817,15 +817,10 @@ this.primevue.utils = (function (exports) {
817
817
  },
818
818
 
819
819
  reorderArray(value, from, to) {
820
- let target;
821
-
822
820
  if (value && from !== to) {
823
821
  if (to >= value.length) {
824
- target = to - value.length;
825
-
826
- while (target-- + 1) {
827
- value.push(undefined);
828
- }
822
+ to %= value.length;
823
+ from %= value.length;
829
824
  }
830
825
 
831
826
  value.splice(to, 0, value.splice(from, 1)[0]);
@@ -981,8 +976,8 @@ this.primevue.utils = (function (exports) {
981
976
  function handler() {
982
977
  let zIndexes = [];
983
978
 
984
- const generateZIndex = (key, baseZIndex = 999) => {
985
- const lastZIndex = getLastZIndex(key, baseZIndex);
979
+ const generateZIndex = (key, autoZIndex, baseZIndex = 999) => {
980
+ const lastZIndex = getLastZIndex(key, autoZIndex, baseZIndex);
986
981
  const newZIndex = lastZIndex.value + (lastZIndex.key === key ? 0 : baseZIndex) + 1;
987
982
 
988
983
  zIndexes.push({ key, value: newZIndex });
@@ -994,12 +989,12 @@ this.primevue.utils = (function (exports) {
994
989
  zIndexes = zIndexes.filter((obj) => obj.value !== zIndex);
995
990
  };
996
991
 
997
- const getCurrentZIndex = (key) => {
998
- return getLastZIndex(key).value;
992
+ const getCurrentZIndex = (key, autoZIndex) => {
993
+ return getLastZIndex(key, autoZIndex).value;
999
994
  };
1000
995
 
1001
- const getLastZIndex = (key, baseZIndex = 0) => {
1002
- return [...zIndexes].reverse().find((obj) => obj.key === key) || { key, value: baseZIndex };
996
+ const getLastZIndex = (key, autoZIndex, baseZIndex = 0) => {
997
+ return [...zIndexes].reverse().find((obj) => (autoZIndex ? true : obj.key === key)) || { key, value: baseZIndex };
1003
998
  };
1004
999
 
1005
1000
  const getZIndex = (el) => {
@@ -1010,7 +1005,7 @@ this.primevue.utils = (function (exports) {
1010
1005
  get: getZIndex,
1011
1006
  set: (key, el, baseZIndex) => {
1012
1007
  if (el) {
1013
- el.style.zIndex = String(generateZIndex(key, baseZIndex));
1008
+ el.style.zIndex = String(generateZIndex(key, true, baseZIndex));
1014
1009
  }
1015
1010
  },
1016
1011
  clear: (el) => {
@@ -1019,7 +1014,7 @@ this.primevue.utils = (function (exports) {
1019
1014
  el.style.zIndex = '';
1020
1015
  }
1021
1016
  },
1022
- getCurrent: (key) => getCurrentZIndex(key)
1017
+ getCurrent: (key) => getCurrentZIndex(key, true)
1023
1018
  };
1024
1019
  }
1025
1020
 
@@ -1668,7 +1663,6 @@ this.primevue.config = (function (exports, api, vue) {
1668
1663
  nextPageLabel: 'Next Page',
1669
1664
  prevPageLabel: 'Previous Page',
1670
1665
  rowsPerPageLabel: 'Rows per page',
1671
- previousPageLabel: 'Previous Page',
1672
1666
  jumpToPageDropdownLabel: 'Jump to Page Dropdown',
1673
1667
  jumpToPageInputLabel: 'Jump to Page Input',
1674
1668
  selectRow: 'Row Selected',
@@ -5014,6 +5008,7 @@ this.primevue.dropdown = (function (api, OverlayEventBus, Portal, Ripple, utils,
5014
5008
  focusOnHover: false,
5015
5009
  data() {
5016
5010
  return {
5011
+ id: this.$attrs.id,
5017
5012
  focused: false,
5018
5013
  focusedOptionIndex: -1,
5019
5014
  filterValue: null,
@@ -5021,6 +5016,9 @@ this.primevue.dropdown = (function (api, OverlayEventBus, Portal, Ripple, utils,
5021
5016
  };
5022
5017
  },
5023
5018
  watch: {
5019
+ '$attrs.id': function (newValue) {
5020
+ this.id = newValue || utils.UniqueComponentId();
5021
+ },
5024
5022
  modelValue() {
5025
5023
  this.isModelValueChanged = true;
5026
5024
  },
@@ -5029,6 +5027,8 @@ this.primevue.dropdown = (function (api, OverlayEventBus, Portal, Ripple, utils,
5029
5027
  }
5030
5028
  },
5031
5029
  mounted() {
5030
+ this.id = this.id || utils.UniqueComponentId();
5031
+
5032
5032
  this.autoUpdateModel();
5033
5033
  },
5034
5034
  updated() {
@@ -5725,9 +5725,6 @@ this.primevue.dropdown = (function (api, OverlayEventBus, Portal, Ripple, utils,
5725
5725
  selectedMessageText() {
5726
5726
  return this.hasSelectedOption ? this.selectionMessageText.replaceAll('{0}', '1') : this.emptySelectionMessageText;
5727
5727
  },
5728
- id() {
5729
- return this.$attrs.id || utils.UniqueComponentId();
5730
- },
5731
5728
  focusedOptionId() {
5732
5729
  return this.focusedOptionIndex !== -1 ? `${this.id}_${this.focusedOptionIndex}` : null;
5733
5730
  },
@@ -5794,7 +5791,7 @@ this.primevue.dropdown = (function (api, OverlayEventBus, Portal, Ripple, utils,
5794
5791
 
5795
5792
  return (vue.openBlock(), vue.createElementBlock("div", {
5796
5793
  ref: "container",
5797
- id: $options.id,
5794
+ id: $data.id,
5798
5795
  class: vue.normalizeClass($options.containerClass),
5799
5796
  onClick: _cache[16] || (_cache[16] = (...args) => ($options.onContainerClick && $options.onContainerClick(...args)))
5800
5797
  }, [
@@ -5816,7 +5813,7 @@ this.primevue.dropdown = (function (api, OverlayEventBus, Portal, Ripple, utils,
5816
5813
  "aria-labelledby": _ctx.ariaLabelledby,
5817
5814
  "aria-haspopup": "listbox",
5818
5815
  "aria-expanded": $data.overlayVisible,
5819
- "aria-controls": $options.id + '_list',
5816
+ "aria-controls": $data.id + '_list',
5820
5817
  "aria-activedescendant": $data.focused ? $options.focusedOptionId : undefined,
5821
5818
  onFocus: _cache[0] || (_cache[0] = (...args) => ($options.onFocus && $options.onFocus(...args))),
5822
5819
  onBlur: _cache[1] || (_cache[1] = (...args) => ($options.onBlur && $options.onBlur(...args))),
@@ -5835,7 +5832,7 @@ this.primevue.dropdown = (function (api, OverlayEventBus, Portal, Ripple, utils,
5835
5832
  "aria-labelledby": _ctx.ariaLabelledby,
5836
5833
  "aria-haspopup": "listbox",
5837
5834
  "aria-expanded": $data.overlayVisible,
5838
- "aria-controls": $options.id + '_list',
5835
+ "aria-controls": $data.id + '_list',
5839
5836
  "aria-activedescendant": $data.focused ? $options.focusedOptionId : undefined,
5840
5837
  "aria-disabled": $props.disabled,
5841
5838
  onFocus: _cache[4] || (_cache[4] = (...args) => ($options.onFocus && $options.onFocus(...args))),
@@ -5907,7 +5904,7 @@ this.primevue.dropdown = (function (api, OverlayEventBus, Portal, Ripple, utils,
5907
5904
  placeholder: $props.filterPlaceholder,
5908
5905
  role: "searchbox",
5909
5906
  autocomplete: "off",
5910
- "aria-owns": $options.id + '_list',
5907
+ "aria-owns": $data.id + '_list',
5911
5908
  "aria-activedescendant": $options.focusedOptionId,
5912
5909
  onKeydown: _cache[10] || (_cache[10] = (...args) => ($options.onFilterKeyDown && $options.onFilterKeyDown(...args))),
5913
5910
  onBlur: _cache[11] || (_cache[11] = (...args) => ($options.onFilterBlur && $options.onFilterBlur(...args))),
@@ -5933,7 +5930,7 @@ this.primevue.dropdown = (function (api, OverlayEventBus, Portal, Ripple, utils,
5933
5930
  content: vue.withCtx(({ styleClass, contentRef, items, getItemOptions, contentStyle, itemSize }) => [
5934
5931
  vue.createElementVNode("ul", {
5935
5932
  ref: (el) => $options.listRef(el, contentRef),
5936
- id: $options.id + '_list',
5933
+ id: $data.id + '_list',
5937
5934
  class: vue.normalizeClass(['p-dropdown-items', styleClass]),
5938
5935
  style: vue.normalizeStyle(contentStyle),
5939
5936
  role: "listbox"
@@ -5945,7 +5942,7 @@ this.primevue.dropdown = (function (api, OverlayEventBus, Portal, Ripple, utils,
5945
5942
  ($options.isOptionGroup(option))
5946
5943
  ? (vue.openBlock(), vue.createElementBlock("li", {
5947
5944
  key: 0,
5948
- id: $options.id + '_' + $options.getOptionIndex(i, getItemOptions),
5945
+ id: $data.id + '_' + $options.getOptionIndex(i, getItemOptions),
5949
5946
  style: vue.normalizeStyle({ height: itemSize ? itemSize + 'px' : undefined }),
5950
5947
  class: "p-dropdown-item-group",
5951
5948
  role: "option"
@@ -5959,7 +5956,7 @@ this.primevue.dropdown = (function (api, OverlayEventBus, Portal, Ripple, utils,
5959
5956
  ], 12, _hoisted_10))
5960
5957
  : vue.withDirectives((vue.openBlock(), vue.createElementBlock("li", {
5961
5958
  key: 1,
5962
- id: $options.id + '_' + $options.getOptionIndex(i, getItemOptions),
5959
+ id: $data.id + '_' + $options.getOptionIndex(i, getItemOptions),
5963
5960
  style: vue.normalizeStyle({ height: itemSize ? itemSize + 'px' : undefined }),
5964
5961
  class: vue.normalizeClass(['p-dropdown-item', { 'p-highlight': $options.isSelected(option), 'p-focus': $data.focusedOptionIndex === $options.getOptionIndex(i, getItemOptions), 'p-disabled': $options.isOptionDisabled(option) }]),
5965
5962
  role: "option",
@@ -6279,7 +6276,7 @@ this.primevue.dialog = (function (FocusTrap, Portal, Ripple, utils, vue) {
6279
6276
  this.$emit('after-hide');
6280
6277
  },
6281
6278
  onMaskClick(event) {
6282
- if (this.dismissableMask && this.closable && this.modal && this.mask === event.target) {
6279
+ if (this.dismissableMask && this.modal && this.mask === event.target) {
6283
6280
  this.close();
6284
6281
  }
6285
6282
  },
@@ -8471,8 +8468,8 @@ this.primevue.menu = (function (OverlayEventBus, Portal, utils, Ripple, vue) {
8471
8468
  const _hoisted_1$1 = ["id", "aria-label", "aria-disabled"];
8472
8469
  const _hoisted_2$1 = ["href", "onClick"];
8473
8470
  const _hoisted_3$1 = { class: "p-menuitem-text" };
8474
- const _hoisted_4 = ["href", "target"];
8475
- const _hoisted_5 = { class: "p-menuitem-text" };
8471
+ const _hoisted_4$1 = ["href", "target"];
8472
+ const _hoisted_5$1 = { class: "p-menuitem-text" };
8476
8473
 
8477
8474
  function render$1(_ctx, _cache, $props, $setup, $data, $options) {
8478
8475
  const _component_router_link = vue.resolveComponent("router-link");
@@ -8535,8 +8532,8 @@ this.primevue.menu = (function (OverlayEventBus, Portal, utils, Ripple, vue) {
8535
8532
  class: vue.normalizeClass(['p-menuitem-icon', $props.item.icon])
8536
8533
  }, null, 2))
8537
8534
  : vue.createCommentVNode("", true),
8538
- vue.createElementVNode("span", _hoisted_5, vue.toDisplayString($options.label()), 1)
8539
- ], 10, _hoisted_4)), [
8535
+ vue.createElementVNode("span", _hoisted_5$1, vue.toDisplayString($options.label()), 1)
8536
+ ], 10, _hoisted_4$1)), [
8540
8537
  [_directive_ripple]
8541
8538
  ])
8542
8539
  ], 64))
@@ -8595,12 +8592,18 @@ this.primevue.menu = (function (OverlayEventBus, Portal, utils, Ripple, vue) {
8595
8592
  },
8596
8593
  data() {
8597
8594
  return {
8595
+ id: this.$attrs.id,
8598
8596
  overlayVisible: false,
8599
8597
  focused: false,
8600
8598
  focusedOptionIndex: -1,
8601
8599
  selectedOptionIndex: -1
8602
8600
  };
8603
8601
  },
8602
+ watch: {
8603
+ '$attrs.id': function (newValue) {
8604
+ this.id = newValue || utils.UniqueComponentId();
8605
+ }
8606
+ },
8604
8607
  target: null,
8605
8608
  outsideClickListener: null,
8606
8609
  scrollHandler: null,
@@ -8608,6 +8611,8 @@ this.primevue.menu = (function (OverlayEventBus, Portal, utils, Ripple, vue) {
8608
8611
  container: null,
8609
8612
  list: null,
8610
8613
  mounted() {
8614
+ this.id = this.id || utils.UniqueComponentId();
8615
+
8611
8616
  if (!this.popup) {
8612
8617
  this.bindResizeListener();
8613
8618
  this.bindOutsideClickListener();
@@ -8897,9 +8902,6 @@ this.primevue.menu = (function (OverlayEventBus, Portal, utils, Ripple, vue) {
8897
8902
  }
8898
8903
  ];
8899
8904
  },
8900
- id() {
8901
- return this.$attrs.id || utils.UniqueComponentId();
8902
- },
8903
8905
  focusedOptionId() {
8904
8906
  return this.focusedOptionIndex !== -1 ? this.focusedOptionIndex : null;
8905
8907
  }
@@ -8911,8 +8913,16 @@ this.primevue.menu = (function (OverlayEventBus, Portal, utils, Ripple, vue) {
8911
8913
  };
8912
8914
 
8913
8915
  const _hoisted_1 = ["id"];
8914
- const _hoisted_2 = ["id", "tabindex", "aria-activedescendant", "aria-label", "aria-labelledby"];
8915
- const _hoisted_3 = ["id"];
8916
+ const _hoisted_2 = {
8917
+ key: 0,
8918
+ class: "p-menu-start"
8919
+ };
8920
+ const _hoisted_3 = ["id", "tabindex", "aria-activedescendant", "aria-label", "aria-labelledby"];
8921
+ const _hoisted_4 = ["id"];
8922
+ const _hoisted_5 = {
8923
+ key: 1,
8924
+ class: "p-menu-end"
8925
+ };
8916
8926
 
8917
8927
  function render(_ctx, _cache, $props, $setup, $data, $options) {
8918
8928
  const _component_PVMenuitem = vue.resolveComponent("PVMenuitem");
@@ -8934,14 +8944,19 @@ this.primevue.menu = (function (OverlayEventBus, Portal, utils, Ripple, vue) {
8934
8944
  ? (vue.openBlock(), vue.createElementBlock("div", vue.mergeProps({
8935
8945
  key: 0,
8936
8946
  ref: $options.containerRef,
8937
- id: $options.id,
8947
+ id: $data.id,
8938
8948
  class: $options.containerClass
8939
8949
  }, _ctx.$attrs, {
8940
8950
  onClick: _cache[3] || (_cache[3] = (...args) => ($options.onOverlayClick && $options.onOverlayClick(...args)))
8941
8951
  }), [
8952
+ (_ctx.$slots.start)
8953
+ ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_2, [
8954
+ vue.renderSlot(_ctx.$slots, "start")
8955
+ ]))
8956
+ : vue.createCommentVNode("", true),
8942
8957
  vue.createElementVNode("ul", {
8943
8958
  ref: $options.listRef,
8944
- id: $options.id + '_list',
8959
+ id: $data.id + '_list',
8945
8960
  class: "p-menu-list p-reset",
8946
8961
  role: "menu",
8947
8962
  tabindex: $props.tabindex,
@@ -8961,14 +8976,14 @@ this.primevue.menu = (function (OverlayEventBus, Portal, utils, Ripple, vue) {
8961
8976
  (item.items)
8962
8977
  ? (vue.openBlock(), vue.createElementBlock("li", {
8963
8978
  key: 0,
8964
- id: $options.id + '_' + i,
8979
+ id: $data.id + '_' + i,
8965
8980
  class: "p-submenu-header",
8966
8981
  role: "none"
8967
8982
  }, [
8968
8983
  vue.renderSlot(_ctx.$slots, "item", { item: item }, () => [
8969
8984
  vue.createTextVNode(vue.toDisplayString($options.label(item)), 1)
8970
8985
  ])
8971
- ], 8, _hoisted_3))
8986
+ ], 8, _hoisted_4))
8972
8987
  : vue.createCommentVNode("", true),
8973
8988
  (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(item.items, (child, j) => {
8974
8989
  return (vue.openBlock(), vue.createElementBlock(vue.Fragment, {
@@ -8977,7 +8992,7 @@ this.primevue.menu = (function (OverlayEventBus, Portal, utils, Ripple, vue) {
8977
8992
  ($options.visible(child) && !child.separator)
8978
8993
  ? (vue.openBlock(), vue.createBlock(_component_PVMenuitem, {
8979
8994
  key: 0,
8980
- id: $options.id + '_' + i + '_' + j,
8995
+ id: $data.id + '_' + i + '_' + j,
8981
8996
  item: child,
8982
8997
  template: _ctx.$slots.item,
8983
8998
  exact: $props.exact,
@@ -9004,7 +9019,7 @@ this.primevue.menu = (function (OverlayEventBus, Portal, utils, Ripple, vue) {
9004
9019
  }, null, 6))
9005
9020
  : (vue.openBlock(), vue.createBlock(_component_PVMenuitem, {
9006
9021
  key: $options.label(item) + i.toString(),
9007
- id: $options.id + '_' + i,
9022
+ id: $data.id + '_' + i,
9008
9023
  item: item,
9009
9024
  template: _ctx.$slots.item,
9010
9025
  exact: $props.exact,
@@ -9013,7 +9028,12 @@ this.primevue.menu = (function (OverlayEventBus, Portal, utils, Ripple, vue) {
9013
9028
  }, null, 8, ["id", "item", "template", "exact", "focusedOptionId", "onItemClick"]))
9014
9029
  ], 64))
9015
9030
  }), 128))
9016
- ], 40, _hoisted_2)
9031
+ ], 40, _hoisted_3),
9032
+ (_ctx.$slots.end)
9033
+ ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_5, [
9034
+ vue.renderSlot(_ctx.$slots, "end")
9035
+ ]))
9036
+ : vue.createCommentVNode("", true)
9017
9037
  ], 16, _hoisted_1))
9018
9038
  : vue.createCommentVNode("", true)
9019
9039
  ]),
@@ -9368,6 +9388,7 @@ this.primevue.tieredmenu = (function (OverlayEventBus, Portal, utils, Ripple, vu
9368
9388
  searchValue: null,
9369
9389
  data() {
9370
9390
  return {
9391
+ id: this.$attrs.id,
9371
9392
  focused: false,
9372
9393
  focusedItemInfo: { index: -1, level: 0, parentKey: '' },
9373
9394
  activeItemPath: [],
@@ -9376,6 +9397,9 @@ this.primevue.tieredmenu = (function (OverlayEventBus, Portal, utils, Ripple, vu
9376
9397
  };
9377
9398
  },
9378
9399
  watch: {
9400
+ '$attrs.id': function (newValue) {
9401
+ this.id = newValue || utils.UniqueComponentId();
9402
+ },
9379
9403
  activeItemPath(newPath) {
9380
9404
  if (!this.popup) {
9381
9405
  if (utils.ObjectUtils.isNotEmpty(newPath)) {
@@ -9388,6 +9412,9 @@ this.primevue.tieredmenu = (function (OverlayEventBus, Portal, utils, Ripple, vu
9388
9412
  }
9389
9413
  }
9390
9414
  },
9415
+ mounted() {
9416
+ this.id = this.id || utils.UniqueComponentId();
9417
+ },
9391
9418
  beforeUnmount() {
9392
9419
  this.unbindOutsideClickListener();
9393
9420
  this.unbindResizeListener();
@@ -9907,9 +9934,6 @@ this.primevue.tieredmenu = (function (OverlayEventBus, Portal, utils, Ripple, vu
9907
9934
 
9908
9935
  return processedItem ? processedItem.items : this.processedItems;
9909
9936
  },
9910
- id() {
9911
- return this.$attrs.id || utils.UniqueComponentId();
9912
- },
9913
9937
  focusedItemId() {
9914
9938
  return this.focusedItemInfo.index !== -1 ? `${this.id}${utils.ObjectUtils.isNotEmpty(this.focusedItemInfo.parentKey) ? '_' + this.focusedItemInfo.parentKey : ''}_${this.focusedItemInfo.index}` : null;
9915
9939
  }
@@ -9943,13 +9967,13 @@ this.primevue.tieredmenu = (function (OverlayEventBus, Portal, utils, Ripple, vu
9943
9967
  ? (vue.openBlock(), vue.createElementBlock("div", vue.mergeProps({
9944
9968
  key: 0,
9945
9969
  ref: $options.containerRef,
9946
- id: $options.id,
9970
+ id: $data.id,
9947
9971
  class: $options.containerClass,
9948
9972
  onClick: _cache[0] || (_cache[0] = (...args) => ($options.onOverlayClick && $options.onOverlayClick(...args)))
9949
9973
  }, _ctx.$attrs), [
9950
9974
  vue.createVNode(_component_TieredMenuSub, {
9951
9975
  ref: $options.menubarRef,
9952
- id: $options.id + '_list',
9976
+ id: $data.id + '_list',
9953
9977
  class: "p-tieredmenu-root-list",
9954
9978
  tabindex: !$props.disabled ? $props.tabindex : -1,
9955
9979
  role: "menubar",
@@ -9958,7 +9982,7 @@ this.primevue.tieredmenu = (function (OverlayEventBus, Portal, utils, Ripple, vu
9958
9982
  "aria-disabled": $props.disabled || undefined,
9959
9983
  "aria-orientation": "vertical",
9960
9984
  "aria-activedescendant": $data.focused ? $options.focusedItemId : undefined,
9961
- menuId: $options.id,
9985
+ menuId: $data.id,
9962
9986
  focusedItemId: $data.focused ? $options.focusedItemId : undefined,
9963
9987
  items: $options.processedItems,
9964
9988
  template: _ctx.$slots.item,