primevue 3.30.1 → 3.30.2

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 (152) hide show
  1. package/basecomponent/BaseComponent.vue +1 -1
  2. package/basecomponent/basecomponent.cjs.js +1 -1
  3. package/basecomponent/basecomponent.cjs.min.js +1 -1
  4. package/basecomponent/basecomponent.esm.js +1 -1
  5. package/basecomponent/basecomponent.esm.min.js +1 -1
  6. package/basecomponent/basecomponent.js +1 -1
  7. package/basecomponent/basecomponent.min.js +1 -1
  8. package/basedirective/basedirective.cjs.js +1 -1
  9. package/basedirective/basedirective.cjs.min.js +1 -1
  10. package/basedirective/basedirective.esm.js +1 -1
  11. package/basedirective/basedirective.esm.min.js +1 -1
  12. package/basedirective/basedirective.js +1 -1
  13. package/basedirective/basedirective.min.js +1 -1
  14. package/column/Column.d.ts +48 -0
  15. package/columngroup/ColumnGroup.d.ts +5 -0
  16. package/core/core.js +19 -13
  17. package/core/core.min.js +5 -5
  18. package/datatable/BaseDataTable.vue +7 -1
  19. package/datatable/BodyCell.vue +5 -3
  20. package/datatable/ColumnFilter.vue +43 -8
  21. package/datatable/DataTable.d.ts +30 -0
  22. package/datatable/FooterCell.vue +3 -1
  23. package/datatable/HeaderCell.vue +6 -2
  24. package/datatable/HeaderCheckbox.vue +5 -2
  25. package/datatable/RowCheckbox.vue +5 -2
  26. package/datatable/RowRadioButton.vue +5 -2
  27. package/datatable/TableBody.vue +33 -13
  28. package/datatable/TableFooter.vue +10 -2
  29. package/datatable/TableHeader.vue +12 -2
  30. package/datatable/datatable.cjs.js +149 -43
  31. package/datatable/datatable.cjs.min.js +1 -1
  32. package/datatable/datatable.esm.js +149 -43
  33. package/datatable/datatable.esm.min.js +1 -1
  34. package/datatable/datatable.js +150 -44
  35. package/datatable/datatable.min.js +1 -1
  36. package/dialog/Dialog.vue +13 -1
  37. package/dialog/dialog.cjs.js +6 -2
  38. package/dialog/dialog.cjs.min.js +1 -1
  39. package/dialog/dialog.esm.js +6 -2
  40. package/dialog/dialog.esm.min.js +1 -1
  41. package/dialog/dialog.js +6 -2
  42. package/dialog/dialog.min.js +1 -1
  43. package/dock/Dock.d.ts +4 -0
  44. package/dock/DockSub.vue +9 -8
  45. package/dock/dock.cjs.js +9 -8
  46. package/dock/dock.cjs.min.js +1 -1
  47. package/dock/dock.esm.js +9 -8
  48. package/dock/dock.esm.min.js +1 -1
  49. package/dock/dock.js +9 -8
  50. package/dock/dock.min.js +1 -1
  51. package/galleria/Galleria.d.ts +4 -0
  52. package/galleria/GalleriaContent.vue +16 -6
  53. package/galleria/GalleriaItem.vue +2 -1
  54. package/galleria/GalleriaThumbnails.vue +1 -0
  55. package/galleria/galleria.cjs.js +34 -17
  56. package/galleria/galleria.cjs.min.js +1 -1
  57. package/galleria/galleria.esm.js +35 -18
  58. package/galleria/galleria.esm.min.js +1 -1
  59. package/galleria/galleria.js +34 -17
  60. package/galleria/galleria.min.js +1 -1
  61. package/message/BaseMessage.vue +2 -2
  62. package/message/Message.d.ts +10 -0
  63. package/message/Message.vue +3 -3
  64. package/message/message.cjs.js +8 -8
  65. package/message/message.cjs.min.js +1 -1
  66. package/message/message.esm.js +8 -8
  67. package/message/message.esm.min.js +1 -1
  68. package/message/message.js +8 -8
  69. package/message/message.min.js +1 -1
  70. package/multiselect/MultiSelect.vue +2 -1
  71. package/multiselect/multiselect.cjs.js +4 -4
  72. package/multiselect/multiselect.cjs.min.js +1 -1
  73. package/multiselect/multiselect.esm.js +5 -5
  74. package/multiselect/multiselect.esm.min.js +1 -1
  75. package/multiselect/multiselect.js +4 -4
  76. package/multiselect/multiselect.min.js +1 -1
  77. package/overlaypanel/OverlayPanel.vue +4 -2
  78. package/overlaypanel/overlaypanel.cjs.js +4 -2
  79. package/overlaypanel/overlaypanel.cjs.min.js +1 -1
  80. package/overlaypanel/overlaypanel.esm.js +4 -2
  81. package/overlaypanel/overlaypanel.esm.min.js +1 -1
  82. package/overlaypanel/overlaypanel.js +4 -2
  83. package/overlaypanel/overlaypanel.min.js +1 -1
  84. package/package.json +1 -1
  85. package/scrollpanel/ScrollPanel.vue +2 -0
  86. package/scrollpanel/scrollpanel.cjs.js +6 -2
  87. package/scrollpanel/scrollpanel.cjs.min.js +1 -1
  88. package/scrollpanel/scrollpanel.esm.js +6 -2
  89. package/scrollpanel/scrollpanel.esm.min.js +1 -1
  90. package/scrollpanel/scrollpanel.js +6 -2
  91. package/scrollpanel/scrollpanel.min.js +1 -1
  92. package/sidebar/Sidebar.vue +1 -1
  93. package/sidebar/sidebar.cjs.js +3 -1
  94. package/sidebar/sidebar.cjs.min.js +1 -1
  95. package/sidebar/sidebar.esm.js +3 -1
  96. package/sidebar/sidebar.esm.min.js +1 -1
  97. package/sidebar/sidebar.js +3 -1
  98. package/sidebar/sidebar.min.js +1 -1
  99. package/splitbutton/SplitButton.vue +2 -1
  100. package/splitbutton/splitbutton.cjs.js +4 -2
  101. package/splitbutton/splitbutton.cjs.min.js +1 -1
  102. package/splitbutton/splitbutton.esm.js +4 -2
  103. package/splitbutton/splitbutton.esm.min.js +1 -1
  104. package/splitbutton/splitbutton.js +4 -2
  105. package/splitbutton/splitbutton.min.js +1 -1
  106. package/tabmenu/TabMenu.vue +71 -72
  107. package/tabmenu/tabmenu.cjs.js +67 -75
  108. package/tabmenu/tabmenu.cjs.min.js +1 -1
  109. package/tabmenu/tabmenu.esm.js +67 -75
  110. package/tabmenu/tabmenu.esm.min.js +1 -1
  111. package/tabmenu/tabmenu.js +67 -75
  112. package/tabmenu/tabmenu.min.js +1 -1
  113. package/tabview/TabView.vue +2 -0
  114. package/tabview/tabview.cjs.js +6 -2
  115. package/tabview/tabview.cjs.min.js +1 -1
  116. package/tabview/tabview.esm.js +6 -2
  117. package/tabview/tabview.esm.min.js +1 -1
  118. package/tabview/tabview.js +6 -2
  119. package/tabview/tabview.min.js +1 -1
  120. package/toast/BaseToast.vue +2 -2
  121. package/toast/Toast.d.ts +10 -0
  122. package/toast/ToastMessage.vue +3 -2
  123. package/toast/toast.cjs.js +7 -6
  124. package/toast/toast.cjs.min.js +1 -1
  125. package/toast/toast.esm.js +7 -6
  126. package/toast/toast.esm.min.js +1 -1
  127. package/toast/toast.js +7 -6
  128. package/toast/toast.min.js +1 -1
  129. package/tree/Tree.d.ts +9 -0
  130. package/tree/TreeNode.vue +3 -1
  131. package/tree/tree.cjs.js +3 -1
  132. package/tree/tree.cjs.min.js +1 -1
  133. package/tree/tree.esm.js +3 -1
  134. package/tree/tree.esm.min.js +1 -1
  135. package/tree/tree.js +3 -1
  136. package/tree/tree.min.js +1 -1
  137. package/treetable/BaseTreeTable.vue +7 -1
  138. package/treetable/BodyCell.vue +14 -4
  139. package/treetable/FooterCell.vue +3 -1
  140. package/treetable/HeaderCell.vue +9 -2
  141. package/treetable/TreeTable.d.ts +30 -8
  142. package/treetable/TreeTable.vue +9 -2
  143. package/treetable/TreeTableRow.vue +10 -1
  144. package/treetable/treetable.cjs.js +58 -13
  145. package/treetable/treetable.cjs.min.js +1 -1
  146. package/treetable/treetable.esm.js +59 -14
  147. package/treetable/treetable.esm.min.js +1 -1
  148. package/treetable/treetable.js +58 -13
  149. package/treetable/treetable.min.js +1 -1
  150. package/vetur-attributes.json +8 -0
  151. package/vetur-tags.json +2 -0
  152. package/web-types.json +21 -1
@@ -89,6 +89,8 @@ var script = {
89
89
  },
90
90
  mounted: function mounted() {
91
91
  this.updateInkBar();
92
+ var activeItem = this.findActiveItem();
93
+ activeItem && (activeItem.tabIndex = '0');
92
94
  },
93
95
  updated: function updated() {
94
96
  this.updateInkBar();
@@ -127,105 +129,104 @@ var script = {
127
129
  index: index
128
130
  });
129
131
  },
130
- onKeydownItem: function onKeydownItem(event, index) {
131
- var i = index;
132
- var foundElement = {};
133
- var tabLinkRef = this.$refs.tabLink;
132
+ onKeydownItem: function onKeydownItem(event, item, index, navigate) {
134
133
  switch (event.code) {
135
134
  case 'ArrowRight':
136
135
  {
137
- foundElement = this.findNextItem(this.$refs.tab, i);
138
- i = foundElement.i;
136
+ this.navigateToNextItem(event.target);
137
+ event.preventDefault();
139
138
  break;
140
139
  }
141
140
  case 'ArrowLeft':
142
141
  {
143
- foundElement = this.findPrevItem(this.$refs.tab, i);
144
- i = foundElement.i;
142
+ this.navigateToPrevItem(event.target);
143
+ event.preventDefault();
145
144
  break;
146
145
  }
147
- case 'End':
146
+ case 'Home':
148
147
  {
149
- foundElement = this.findPrevItem(this.$refs.tab, this.model.length);
150
- i = foundElement.i;
148
+ this.navigateToFirstItem(event.target);
151
149
  event.preventDefault();
152
150
  break;
153
151
  }
154
- case 'Home':
152
+ case 'End':
155
153
  {
156
- foundElement = this.findNextItem(this.$refs.tab, -1);
157
- i = foundElement.i;
154
+ this.navigateToLastItem(event.target);
158
155
  event.preventDefault();
159
156
  break;
160
157
  }
161
158
  case 'Space':
162
159
  case 'Enter':
163
160
  {
164
- if (event.currentTarget) {
165
- event.currentTarget.click();
166
- }
161
+ this.onItemClick(event, item, index, navigate);
167
162
  event.preventDefault();
168
163
  break;
169
164
  }
170
165
  case 'Tab':
171
166
  {
172
- this.setDefaultTabIndexes(tabLinkRef);
167
+ this.onTabKey();
173
168
  break;
174
169
  }
175
170
  }
176
- if (tabLinkRef[i] && tabLinkRef[index]) {
177
- tabLinkRef[index].tabIndex = '-1';
178
- tabLinkRef[i].tabIndex = '0';
179
- tabLinkRef[i].focus();
180
- }
181
171
  },
182
- findNextItem: function findNextItem(items, index) {
183
- var i = index + 1;
184
- if (i >= items.length) {
185
- return {
186
- nextItem: items[items.length],
187
- i: items.length
188
- };
189
- }
190
- var nextItem = items[i];
191
- if (nextItem) return DomHandler.getAttribute(nextItem, 'data-p-disabled') ? this.findNextItem(items, i) : {
192
- nextItem: nextItem,
193
- i: i
194
- };else return null;
172
+ navigateToNextItem: function navigateToNextItem(target) {
173
+ var nextItem = this.findNextItem(target);
174
+ nextItem && this.setFocusToMenuitem(target, nextItem);
175
+ },
176
+ navigateToPrevItem: function navigateToPrevItem(target) {
177
+ var prevItem = this.findPrevItem(target);
178
+ prevItem && this.setFocusToMenuitem(target, prevItem);
179
+ },
180
+ navigateToFirstItem: function navigateToFirstItem(target) {
181
+ var firstItem = this.findFirstItem(target);
182
+ firstItem && this.setFocusToMenuitem(target, firstItem);
183
+ },
184
+ navigateToLastItem: function navigateToLastItem(target) {
185
+ var lastItem = this.findLastItem(target);
186
+ lastItem && this.setFocusToMenuitem(target, lastItem);
195
187
  },
196
- findPrevItem: function findPrevItem(items, index) {
197
- var i = index - 1;
198
- if (i < 0) {
199
- return {
200
- nextItem: items[0],
201
- i: 0
202
- };
188
+ findNextItem: function findNextItem(item) {
189
+ var nextItem = item.parentElement.nextElementSibling;
190
+ return nextItem ? DomHandler.getAttribute(nextItem, 'data-p-disabled') === true ? this.findNextItem(nextItem.children[0]) : nextItem.children[0] : null;
191
+ },
192
+ findPrevItem: function findPrevItem(item) {
193
+ var prevItem = item.parentElement.previousElementSibling;
194
+ return prevItem ? DomHandler.getAttribute(prevItem, 'data-p-disabled') === true ? this.findPrevItem(prevItem.children[0]) : prevItem.children[0] : null;
195
+ },
196
+ findFirstItem: function findFirstItem() {
197
+ var firstSibling = DomHandler.findSingle(this.$refs.nav, '[data-pc-section="menuitem"][data-p-disabled="false"]');
198
+ return firstSibling ? firstSibling.children[0] : null;
199
+ },
200
+ findLastItem: function findLastItem() {
201
+ var siblings = DomHandler.find(this.$refs.nav, '[data-pc-section="menuitem"][data-p-disabled="false"]');
202
+ return siblings ? siblings[siblings.length - 1].children[0] : null;
203
+ },
204
+ findActiveItem: function findActiveItem() {
205
+ var activeItem = DomHandler.findSingle(this.$refs.nav, '[data-pc-section="menuitem"][data-p-disabled="false"][data-p-highlight="true"]');
206
+ return activeItem ? activeItem.children[0] : null;
207
+ },
208
+ setFocusToMenuitem: function setFocusToMenuitem(target, focusableItem) {
209
+ target.tabIndex = '-1';
210
+ focusableItem.tabIndex = '0';
211
+ focusableItem.focus();
212
+ },
213
+ onTabKey: function onTabKey() {
214
+ var activeItem = DomHandler.findSingle(this.$refs.nav, '[data-pc-section="menuitem"][data-p-disabled="false"][data-p-highlight="true"]');
215
+ var focusedItem = DomHandler.findSingle(this.$refs.nav, '[data-pc-section="action"][tabindex="0"]');
216
+ if (focusedItem !== activeItem.children[0]) {
217
+ activeItem && (activeItem.children[0].tabIndex = '0');
218
+ focusedItem.tabIndex = '-1';
203
219
  }
204
- var prevItem = items[i];
205
- if (prevItem) return DomHandler.getAttribute(prevItem, 'data-p-disabled') ? this.findPrevItem(items, i) : {
206
- prevItem: prevItem,
207
- i: i
208
- };else return null;
209
220
  },
210
221
  visible: function visible(item) {
211
222
  return typeof item.visible === 'function' ? item.visible() : item.visible !== false;
212
223
  },
213
224
  disabled: function disabled(item) {
214
- return typeof item.disabled === 'function' ? item.disabled() : item.disabled;
225
+ return typeof item.disabled === 'function' ? item.disabled() : item.disabled === true;
215
226
  },
216
227
  label: function label(item) {
217
228
  return typeof item.label === 'function' ? item.label() : item.label;
218
229
  },
219
- setDefaultTabIndexes: function setDefaultTabIndexes(tabLinkRef) {
220
- setTimeout(function () {
221
- tabLinkRef.forEach(function (item) {
222
- item.tabIndex = DomHandler.getAttribute(item.parentElement, 'data-p-highlight') ? '0' : '-1';
223
- });
224
- }, 300);
225
- },
226
- setTabIndex: function setTabIndex(index) {
227
- return this.d_activeIndex === index ? '0' : '-1';
228
- },
229
230
  updateInkBar: function updateInkBar() {
230
231
  var tabs = this.$refs.nav.children;
231
232
  var inkHighlighted = false;
@@ -243,15 +244,6 @@ var script = {
243
244
  }
244
245
  }
245
246
  },
246
- computed: {
247
- focusableItems: function focusableItems() {
248
- var _this2 = this;
249
- return (this.model || []).reduce(function (result, item) {
250
- _this2.visible(item) && !_this2.disabled(item) && result.push(item);
251
- return result;
252
- }, []);
253
- }
254
- },
255
247
  directives: {
256
248
  ripple: Ripple
257
249
  }
@@ -259,9 +251,9 @@ var script = {
259
251
 
260
252
  var _hoisted_1 = ["aria-labelledby", "aria-label"];
261
253
  var _hoisted_2 = ["data-p-highlight", "data-p-disabled"];
262
- var _hoisted_3 = ["href", "aria-label", "aria-disabled", "tabindex", "onClick", "onKeydown"];
254
+ var _hoisted_3 = ["href", "aria-label", "aria-disabled", "onClick", "onKeydown"];
263
255
  var _hoisted_4 = ["onClick", "onKeydown", "data-p-highlight", "data-p-disabled"];
264
- var _hoisted_5 = ["href", "target", "aria-label", "aria-disabled", "tabindex"];
256
+ var _hoisted_5 = ["href", "target", "aria-label", "aria-disabled"];
265
257
  function render(_ctx, _cache, $props, $setup, $data, $options) {
266
258
  var _component_router_link = resolveComponent("router-link");
267
259
  var _directive_ripple = resolveDirective("ripple");
@@ -275,7 +267,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
275
267
  role: "menubar",
276
268
  "aria-labelledby": _ctx.ariaLabelledby,
277
269
  "aria-label": _ctx.ariaLabel
278
- }, _ctx.ptm('menu')), [(openBlock(true), createElementBlock(Fragment, null, renderList($options.focusableItems, function (item, i) {
270
+ }, _ctx.ptm('menu')), [(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.model, function (item, i) {
279
271
  return openBlock(), createElementBlock(Fragment, {
280
272
  key: $options.label(item) + '_' + i.toString()
281
273
  }, [item.to && !$options.disabled(item) ? (openBlock(), createBlock(_component_router_link, {
@@ -311,12 +303,12 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
311
303
  "class": _ctx.cx('action'),
312
304
  "aria-label": $options.label(item),
313
305
  "aria-disabled": $options.disabled(item),
314
- tabindex: isExactActive ? '0' : '-1',
306
+ tabindex: -1,
315
307
  onClick: function onClick($event) {
316
308
  return $options.onItemClick($event, item, i, navigate);
317
309
  },
318
310
  onKeydown: function onKeydown($event) {
319
- return $options.onKeydownItem($event, i, navigate);
311
+ return $options.onKeydownItem($event, item, i, navigate);
320
312
  }
321
313
  }, $options.getPTOptions('action', i)), [_ctx.$slots.itemicon ? (openBlock(), createBlock(resolveDynamicComponent(_ctx.$slots.itemicon), {
322
314
  key: 0,
@@ -347,7 +339,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
347
339
  return $options.onItemClick($event, item, i);
348
340
  },
349
341
  onKeydown: function onKeydown($event) {
350
- return $options.onKeydownItem($event, i);
342
+ return $options.onKeydownItem($event, item, i);
351
343
  }
352
344
  }, $options.getPTOptions('menuitem', i), {
353
345
  "data-p-highlight": $data.d_activeIndex === i,
@@ -362,7 +354,7 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
362
354
  target: item.target,
363
355
  "aria-label": $options.label(item),
364
356
  "aria-disabled": $options.disabled(item),
365
- tabindex: $options.setTabIndex(i)
357
+ tabindex: -1
366
358
  }, $options.getPTOptions('action', i)), [_ctx.$slots.itemicon ? (openBlock(), createBlock(resolveDynamicComponent(_ctx.$slots.itemicon), {
367
359
  key: 0,
368
360
  item: item,
@@ -1 +1 @@
1
- import e from"primevue/ripple";import{DomHandler as t}from"primevue/utils";import n from"primevue/basecomponent";import{useStyle as i}from"primevue/usestyle";import{resolveComponent as a,resolveDirective as l,openBlock as r,createElementBlock as s,mergeProps as o,createElementVNode as d,Fragment as c,renderList as u,createBlock as m,withCtx as b,withDirectives as f,resolveDynamicComponent as p,normalizeClass as h,createCommentVNode as x,toDisplayString as v}from"vue";var g=i("\n.p-tabmenu {\n overflow-x: auto;\n}\n\n.p-tabmenu-nav {\n display: flex;\n margin: 0;\n padding: 0;\n list-style-type: none;\n flex-wrap: nowrap;\n}\n\n.p-tabmenu-nav a {\n cursor: pointer;\n user-select: none;\n display: flex;\n align-items: center;\n position: relative;\n text-decoration: none;\n text-decoration: none;\n overflow: hidden;\n}\n\n.p-tabmenu-nav a:focus {\n z-index: 1;\n}\n\n.p-tabmenu-nav .p-menuitem-text {\n line-height: 1;\n}\n\n.p-tabmenu-ink-bar {\n display: none;\n z-index: 1;\n}\n\n.p-tabmenu::-webkit-scrollbar {\n display: none;\n}\n",{name:"tabmenu",manual:!0}),y={name:"TabMenu",extends:{name:"BaseTabMenu",extends:n,props:{model:{type:Array,default:null},exact:{type:Boolean,default:!0},activeIndex:{type:Number,default:0},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},css:{classes:{root:"p-tabmenu p-component",menu:"p-tabmenu-nav p-reset",menuitem:function(e){var t=e.instance;return["p-tabmenuitem",{"p-highlight":(e.props.exact?e.isExactActive:e.isActive)||t.d_activeIndex===e.index,"p-disabled":t.disabled(e.item)}]},action:"p-menuitem-link",icon:"p-menuitem-icon",label:"p-menuitem-text",inkbar:"p-tabmenu-ink-bar"},loadStyle:g.load},provide:function(){return{$parentInstance:this}}},emits:["update:activeIndex","tab-change"],timeout:null,data:function(){return{d_activeIndex:this.activeIndex}},watch:{$route:function(){var e=this;this.timeout=setTimeout((function(){return e.updateInkBar()}),50)},activeIndex:function(e){this.d_activeIndex=e}},mounted:function(){this.updateInkBar()},updated:function(){this.updateInkBar()},beforeUnmount:function(){clearTimeout(this.timeout)},methods:{getPTOptions:function(e,t){return this.ptm(e,{context:{order:t}})},onItemClick:function(e,t,n,i){this.disabled(t)?e.preventDefault():(t.command&&t.command({originalEvent:e,item:t}),t.to&&i&&i(e),n!==this.d_activeIndex&&(this.d_activeIndex=n,this.$emit("update:activeIndex",this.d_activeIndex)),this.$emit("tab-change",{originalEvent:e,index:n}))},onKeydownItem:function(e,t){var n=t,i=this.$refs.tabLink;switch(e.code){case"ArrowRight":n=this.findNextItem(this.$refs.tab,n).i;break;case"ArrowLeft":n=this.findPrevItem(this.$refs.tab,n).i;break;case"End":n=this.findPrevItem(this.$refs.tab,this.model.length).i,e.preventDefault();break;case"Home":n=this.findNextItem(this.$refs.tab,-1).i,e.preventDefault();break;case"Space":case"Enter":e.currentTarget&&e.currentTarget.click(),e.preventDefault();break;case"Tab":this.setDefaultTabIndexes(i)}i[n]&&i[t]&&(i[t].tabIndex="-1",i[n].tabIndex="0",i[n].focus())},findNextItem:function(e,n){var i=n+1;if(i>=e.length)return{nextItem:e[e.length],i:e.length};var a=e[i];return a?t.getAttribute(a,"data-p-disabled")?this.findNextItem(e,i):{nextItem:a,i:i}:null},findPrevItem:function(e,n){var i=n-1;if(i<0)return{nextItem:e[0],i:0};var a=e[i];return a?t.getAttribute(a,"data-p-disabled")?this.findPrevItem(e,i):{prevItem:a,i:i}:null},visible:function(e){return"function"==typeof e.visible?e.visible():!1!==e.visible},disabled:function(e){return"function"==typeof e.disabled?e.disabled():e.disabled},label:function(e){return"function"==typeof e.label?e.label():e.label},setDefaultTabIndexes:function(e){setTimeout((function(){e.forEach((function(e){e.tabIndex=t.getAttribute(e.parentElement,"data-p-highlight")?"0":"-1"}))}),300)},setTabIndex:function(e){return this.d_activeIndex===e?"0":"-1"},updateInkBar:function(){for(var e=this.$refs.nav.children,n=!1,i=0;i<e.length;i++){var a=e[i];t.getAttribute(a,"data-p-highlight")&&(this.$refs.inkbar.style.width=t.getWidth(a)+"px",this.$refs.inkbar.style.left=t.getOffset(a).left-t.getOffset(this.$refs.nav).left+"px",n=!0)}n||(this.$refs.inkbar.style.width="0px",this.$refs.inkbar.style.left="0px")}},computed:{focusableItems:function(){var e=this;return(this.model||[]).reduce((function(t,n){return e.visible(n)&&!e.disabled(n)&&t.push(n),t}),[])}},directives:{ripple:e}},k=["aria-labelledby","aria-label"],I=["data-p-highlight","data-p-disabled"],$=["href","aria-label","aria-disabled","tabindex","onClick","onKeydown"],T=["onClick","onKeydown","data-p-highlight","data-p-disabled"],w=["href","target","aria-label","aria-disabled","tabindex"];y.render=function(e,t,n,i,g,y){var _=a("router-link"),A=l("ripple");return r(),s("div",o({class:e.cx("root")},e.ptm("root"),{"data-pc-name":"tabmenu"}),[d("ul",o({ref:"nav",class:e.cx("menu"),role:"menubar","aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel},e.ptm("menu")),[(r(!0),s(c,null,u(y.focusableItems,(function(t,n){return r(),s(c,{key:y.label(t)+"_"+n.toString()},[t.to&&!y.disabled(t)?(r(),m(_,{key:0,to:t.to,custom:""},{default:b((function(i){var a=i.navigate,l=i.href,c=i.isActive,u=i.isExactActive;return[y.visible(t)?(r(),s("li",o({key:0,ref_for:!0,ref:"tab",class:[e.cx("menuitem",{item:t,isActive:c,isExactActive:u}),t.class],style:t.style,role:"presentation"},y.getPTOptions("menuitem",n),{"data-p-highlight":e.exact?u:c,"data-p-disabled":y.disabled(t)}),[e.$slots.item?(r(),m(p(e.$slots.item),{key:1,item:t,index:n},null,8,["item","index"])):f((r(),s("a",o({key:0,ref_for:!0,ref:"tabLink",role:"menuitem",href:l,class:e.cx("action"),"aria-label":y.label(t),"aria-disabled":y.disabled(t),tabindex:u?"0":"-1",onClick:function(e){return y.onItemClick(e,t,n,a)},onKeydown:function(e){return y.onKeydownItem(e,n,a)}},y.getPTOptions("action",n)),[e.$slots.itemicon?(r(),m(p(e.$slots.itemicon),{key:0,item:t,class:h([e.cx("icon"),t.icon])},null,8,["item","class"])):t.icon?(r(),s("span",o({key:1,class:[e.cx("icon"),t.icon]},y.getPTOptions("icon",n)),null,16)):x("",!0),d("span",o({class:e.cx("label")},y.getPTOptions("label",n)),v(y.label(t)),17)],16,$)),[[A]])],16,I)):x("",!0)]})),_:2},1032,["to"])):y.visible(t)?(r(),s("li",o({key:1,ref_for:!0,ref:"tab",class:[e.cx("menuitem",{item:t,index:n}),t.class],role:"presentation",onClick:function(e){return y.onItemClick(e,t,n)},onKeydown:function(e){return y.onKeydownItem(e,n)}},y.getPTOptions("menuitem",n),{"data-p-highlight":g.d_activeIndex===n,"data-p-disabled":y.disabled(t)}),[e.$slots.item?(r(),m(p(e.$slots.item),{key:1,item:t,index:n},null,8,["item","index"])):f((r(),s("a",o({key:0,ref_for:!0,ref:"tabLink",role:"menuitem",href:t.url,class:e.cx("action"),target:t.target,"aria-label":y.label(t),"aria-disabled":y.disabled(t),tabindex:y.setTabIndex(n)},y.getPTOptions("action",n)),[e.$slots.itemicon?(r(),m(p(e.$slots.itemicon),{key:0,item:t,class:h([e.cx("icon"),t.icon])},null,8,["item","class"])):t.icon?(r(),s("span",o({key:1,class:[e.cx("icon"),t.icon]},y.getPTOptions("icon",n)),null,16)):x("",!0),d("span",o({class:e.cx("label")},y.getPTOptions("label",n)),v(y.label(t)),17)],16,w)),[[A]])],16,T)):x("",!0)],64)})),128)),d("li",o({ref:"inkbar",role:"none",class:e.cx("inkbar")},e.ptm("inkbar")),null,16)],16,k)],16)};export{y as default};
1
+ import e from"primevue/ripple";import{DomHandler as t}from"primevue/utils";import n from"primevue/basecomponent";import{useStyle as i}from"primevue/usestyle";import{resolveComponent as a,resolveDirective as l,openBlock as r,createElementBlock as s,mergeProps as o,createElementVNode as d,Fragment as c,renderList as u,createBlock as m,withCtx as f,withDirectives as p,resolveDynamicComponent as b,normalizeClass as h,createCommentVNode as v,toDisplayString as x}from"vue";var g=i("\n.p-tabmenu {\n overflow-x: auto;\n}\n\n.p-tabmenu-nav {\n display: flex;\n margin: 0;\n padding: 0;\n list-style-type: none;\n flex-wrap: nowrap;\n}\n\n.p-tabmenu-nav a {\n cursor: pointer;\n user-select: none;\n display: flex;\n align-items: center;\n position: relative;\n text-decoration: none;\n text-decoration: none;\n overflow: hidden;\n}\n\n.p-tabmenu-nav a:focus {\n z-index: 1;\n}\n\n.p-tabmenu-nav .p-menuitem-text {\n line-height: 1;\n}\n\n.p-tabmenu-ink-bar {\n display: none;\n z-index: 1;\n}\n\n.p-tabmenu::-webkit-scrollbar {\n display: none;\n}\n",{name:"tabmenu",manual:!0}),I={name:"TabMenu",extends:{name:"BaseTabMenu",extends:n,props:{model:{type:Array,default:null},exact:{type:Boolean,default:!0},activeIndex:{type:Number,default:0},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},css:{classes:{root:"p-tabmenu p-component",menu:"p-tabmenu-nav p-reset",menuitem:function(e){var t=e.instance;return["p-tabmenuitem",{"p-highlight":(e.props.exact?e.isExactActive:e.isActive)||t.d_activeIndex===e.index,"p-disabled":t.disabled(e.item)}]},action:"p-menuitem-link",icon:"p-menuitem-icon",label:"p-menuitem-text",inkbar:"p-tabmenu-ink-bar"},loadStyle:g.load},provide:function(){return{$parentInstance:this}}},emits:["update:activeIndex","tab-change"],timeout:null,data:function(){return{d_activeIndex:this.activeIndex}},watch:{$route:function(){var e=this;this.timeout=setTimeout((function(){return e.updateInkBar()}),50)},activeIndex:function(e){this.d_activeIndex=e}},mounted:function(){this.updateInkBar();var e=this.findActiveItem();e&&(e.tabIndex="0")},updated:function(){this.updateInkBar()},beforeUnmount:function(){clearTimeout(this.timeout)},methods:{getPTOptions:function(e,t){return this.ptm(e,{context:{order:t}})},onItemClick:function(e,t,n,i){this.disabled(t)?e.preventDefault():(t.command&&t.command({originalEvent:e,item:t}),t.to&&i&&i(e),n!==this.d_activeIndex&&(this.d_activeIndex=n,this.$emit("update:activeIndex",this.d_activeIndex)),this.$emit("tab-change",{originalEvent:e,index:n}))},onKeydownItem:function(e,t,n,i){switch(e.code){case"ArrowRight":this.navigateToNextItem(e.target),e.preventDefault();break;case"ArrowLeft":this.navigateToPrevItem(e.target),e.preventDefault();break;case"Home":this.navigateToFirstItem(e.target),e.preventDefault();break;case"End":this.navigateToLastItem(e.target),e.preventDefault();break;case"Space":case"Enter":this.onItemClick(e,t,n,i),e.preventDefault();break;case"Tab":this.onTabKey()}},navigateToNextItem:function(e){var t=this.findNextItem(e);t&&this.setFocusToMenuitem(e,t)},navigateToPrevItem:function(e){var t=this.findPrevItem(e);t&&this.setFocusToMenuitem(e,t)},navigateToFirstItem:function(e){var t=this.findFirstItem(e);t&&this.setFocusToMenuitem(e,t)},navigateToLastItem:function(e){var t=this.findLastItem(e);t&&this.setFocusToMenuitem(e,t)},findNextItem:function(e){var n=e.parentElement.nextElementSibling;return n?!0===t.getAttribute(n,"data-p-disabled")?this.findNextItem(n.children[0]):n.children[0]:null},findPrevItem:function(e){var n=e.parentElement.previousElementSibling;return n?!0===t.getAttribute(n,"data-p-disabled")?this.findPrevItem(n.children[0]):n.children[0]:null},findFirstItem:function(){var e=t.findSingle(this.$refs.nav,'[data-pc-section="menuitem"][data-p-disabled="false"]');return e?e.children[0]:null},findLastItem:function(){var e=t.find(this.$refs.nav,'[data-pc-section="menuitem"][data-p-disabled="false"]');return e?e[e.length-1].children[0]:null},findActiveItem:function(){var e=t.findSingle(this.$refs.nav,'[data-pc-section="menuitem"][data-p-disabled="false"][data-p-highlight="true"]');return e?e.children[0]:null},setFocusToMenuitem:function(e,t){e.tabIndex="-1",t.tabIndex="0",t.focus()},onTabKey:function(){var e=t.findSingle(this.$refs.nav,'[data-pc-section="menuitem"][data-p-disabled="false"][data-p-highlight="true"]'),n=t.findSingle(this.$refs.nav,'[data-pc-section="action"][tabindex="0"]');n!==e.children[0]&&(e&&(e.children[0].tabIndex="0"),n.tabIndex="-1")},visible:function(e){return"function"==typeof e.visible?e.visible():!1!==e.visible},disabled:function(e){return"function"==typeof e.disabled?e.disabled():!0===e.disabled},label:function(e){return"function"==typeof e.label?e.label():e.label},updateInkBar:function(){for(var e=this.$refs.nav.children,n=!1,i=0;i<e.length;i++){var a=e[i];t.getAttribute(a,"data-p-highlight")&&(this.$refs.inkbar.style.width=t.getWidth(a)+"px",this.$refs.inkbar.style.left=t.getOffset(a).left-t.getOffset(this.$refs.nav).left+"px",n=!0)}n||(this.$refs.inkbar.style.width="0px",this.$refs.inkbar.style.left="0px")}},directives:{ripple:e}},y=["aria-labelledby","aria-label"],k=["data-p-highlight","data-p-disabled"],T=["href","aria-label","aria-disabled","onClick","onKeydown"],$=["onClick","onKeydown","data-p-highlight","data-p-disabled"],w=["href","target","aria-label","aria-disabled"];I.render=function(e,t,n,i,g,I){var A=a("router-link"),P=l("ripple");return r(),s("div",o({class:e.cx("root")},e.ptm("root"),{"data-pc-name":"tabmenu"}),[d("ul",o({ref:"nav",class:e.cx("menu"),role:"menubar","aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel},e.ptm("menu")),[(r(!0),s(c,null,u(e.model,(function(t,n){return r(),s(c,{key:I.label(t)+"_"+n.toString()},[t.to&&!I.disabled(t)?(r(),m(A,{key:0,to:t.to,custom:""},{default:f((function(i){var a=i.navigate,l=i.href,c=i.isActive,u=i.isExactActive;return[I.visible(t)?(r(),s("li",o({key:0,ref_for:!0,ref:"tab",class:[e.cx("menuitem",{item:t,isActive:c,isExactActive:u}),t.class],style:t.style,role:"presentation"},I.getPTOptions("menuitem",n),{"data-p-highlight":e.exact?u:c,"data-p-disabled":I.disabled(t)}),[e.$slots.item?(r(),m(b(e.$slots.item),{key:1,item:t,index:n},null,8,["item","index"])):p((r(),s("a",o({key:0,ref_for:!0,ref:"tabLink",role:"menuitem",href:l,class:e.cx("action"),"aria-label":I.label(t),"aria-disabled":I.disabled(t),tabindex:-1,onClick:function(e){return I.onItemClick(e,t,n,a)},onKeydown:function(e){return I.onKeydownItem(e,t,n,a)}},I.getPTOptions("action",n)),[e.$slots.itemicon?(r(),m(b(e.$slots.itemicon),{key:0,item:t,class:h([e.cx("icon"),t.icon])},null,8,["item","class"])):t.icon?(r(),s("span",o({key:1,class:[e.cx("icon"),t.icon]},I.getPTOptions("icon",n)),null,16)):v("",!0),d("span",o({class:e.cx("label")},I.getPTOptions("label",n)),x(I.label(t)),17)],16,T)),[[P]])],16,k)):v("",!0)]})),_:2},1032,["to"])):I.visible(t)?(r(),s("li",o({key:1,ref_for:!0,ref:"tab",class:[e.cx("menuitem",{item:t,index:n}),t.class],role:"presentation",onClick:function(e){return I.onItemClick(e,t,n)},onKeydown:function(e){return I.onKeydownItem(e,t,n)}},I.getPTOptions("menuitem",n),{"data-p-highlight":g.d_activeIndex===n,"data-p-disabled":I.disabled(t)}),[e.$slots.item?(r(),m(b(e.$slots.item),{key:1,item:t,index:n},null,8,["item","index"])):p((r(),s("a",o({key:0,ref_for:!0,ref:"tabLink",role:"menuitem",href:t.url,class:e.cx("action"),target:t.target,"aria-label":I.label(t),"aria-disabled":I.disabled(t),tabindex:-1},I.getPTOptions("action",n)),[e.$slots.itemicon?(r(),m(b(e.$slots.itemicon),{key:0,item:t,class:h([e.cx("icon"),t.icon])},null,8,["item","class"])):t.icon?(r(),s("span",o({key:1,class:[e.cx("icon"),t.icon]},I.getPTOptions("icon",n)),null,16)):v("",!0),d("span",o({class:e.cx("label")},I.getPTOptions("label",n)),x(I.label(t)),17)],16,w)),[[P]])],16,$)):v("",!0)],64)})),128)),d("li",o({ref:"inkbar",role:"none",class:e.cx("inkbar")},e.ptm("inkbar")),null,16)],16,y)],16)};export{I as default};
@@ -92,6 +92,8 @@ this.primevue.tabmenu = (function (Ripple, utils, BaseComponent, usestyle, vue)
92
92
  },
93
93
  mounted: function mounted() {
94
94
  this.updateInkBar();
95
+ var activeItem = this.findActiveItem();
96
+ activeItem && (activeItem.tabIndex = '0');
95
97
  },
96
98
  updated: function updated() {
97
99
  this.updateInkBar();
@@ -130,105 +132,104 @@ this.primevue.tabmenu = (function (Ripple, utils, BaseComponent, usestyle, vue)
130
132
  index: index
131
133
  });
132
134
  },
133
- onKeydownItem: function onKeydownItem(event, index) {
134
- var i = index;
135
- var foundElement = {};
136
- var tabLinkRef = this.$refs.tabLink;
135
+ onKeydownItem: function onKeydownItem(event, item, index, navigate) {
137
136
  switch (event.code) {
138
137
  case 'ArrowRight':
139
138
  {
140
- foundElement = this.findNextItem(this.$refs.tab, i);
141
- i = foundElement.i;
139
+ this.navigateToNextItem(event.target);
140
+ event.preventDefault();
142
141
  break;
143
142
  }
144
143
  case 'ArrowLeft':
145
144
  {
146
- foundElement = this.findPrevItem(this.$refs.tab, i);
147
- i = foundElement.i;
145
+ this.navigateToPrevItem(event.target);
146
+ event.preventDefault();
148
147
  break;
149
148
  }
150
- case 'End':
149
+ case 'Home':
151
150
  {
152
- foundElement = this.findPrevItem(this.$refs.tab, this.model.length);
153
- i = foundElement.i;
151
+ this.navigateToFirstItem(event.target);
154
152
  event.preventDefault();
155
153
  break;
156
154
  }
157
- case 'Home':
155
+ case 'End':
158
156
  {
159
- foundElement = this.findNextItem(this.$refs.tab, -1);
160
- i = foundElement.i;
157
+ this.navigateToLastItem(event.target);
161
158
  event.preventDefault();
162
159
  break;
163
160
  }
164
161
  case 'Space':
165
162
  case 'Enter':
166
163
  {
167
- if (event.currentTarget) {
168
- event.currentTarget.click();
169
- }
164
+ this.onItemClick(event, item, index, navigate);
170
165
  event.preventDefault();
171
166
  break;
172
167
  }
173
168
  case 'Tab':
174
169
  {
175
- this.setDefaultTabIndexes(tabLinkRef);
170
+ this.onTabKey();
176
171
  break;
177
172
  }
178
173
  }
179
- if (tabLinkRef[i] && tabLinkRef[index]) {
180
- tabLinkRef[index].tabIndex = '-1';
181
- tabLinkRef[i].tabIndex = '0';
182
- tabLinkRef[i].focus();
183
- }
184
174
  },
185
- findNextItem: function findNextItem(items, index) {
186
- var i = index + 1;
187
- if (i >= items.length) {
188
- return {
189
- nextItem: items[items.length],
190
- i: items.length
191
- };
192
- }
193
- var nextItem = items[i];
194
- if (nextItem) return utils.DomHandler.getAttribute(nextItem, 'data-p-disabled') ? this.findNextItem(items, i) : {
195
- nextItem: nextItem,
196
- i: i
197
- };else return null;
175
+ navigateToNextItem: function navigateToNextItem(target) {
176
+ var nextItem = this.findNextItem(target);
177
+ nextItem && this.setFocusToMenuitem(target, nextItem);
178
+ },
179
+ navigateToPrevItem: function navigateToPrevItem(target) {
180
+ var prevItem = this.findPrevItem(target);
181
+ prevItem && this.setFocusToMenuitem(target, prevItem);
182
+ },
183
+ navigateToFirstItem: function navigateToFirstItem(target) {
184
+ var firstItem = this.findFirstItem(target);
185
+ firstItem && this.setFocusToMenuitem(target, firstItem);
186
+ },
187
+ navigateToLastItem: function navigateToLastItem(target) {
188
+ var lastItem = this.findLastItem(target);
189
+ lastItem && this.setFocusToMenuitem(target, lastItem);
198
190
  },
199
- findPrevItem: function findPrevItem(items, index) {
200
- var i = index - 1;
201
- if (i < 0) {
202
- return {
203
- nextItem: items[0],
204
- i: 0
205
- };
191
+ findNextItem: function findNextItem(item) {
192
+ var nextItem = item.parentElement.nextElementSibling;
193
+ return nextItem ? utils.DomHandler.getAttribute(nextItem, 'data-p-disabled') === true ? this.findNextItem(nextItem.children[0]) : nextItem.children[0] : null;
194
+ },
195
+ findPrevItem: function findPrevItem(item) {
196
+ var prevItem = item.parentElement.previousElementSibling;
197
+ return prevItem ? utils.DomHandler.getAttribute(prevItem, 'data-p-disabled') === true ? this.findPrevItem(prevItem.children[0]) : prevItem.children[0] : null;
198
+ },
199
+ findFirstItem: function findFirstItem() {
200
+ var firstSibling = utils.DomHandler.findSingle(this.$refs.nav, '[data-pc-section="menuitem"][data-p-disabled="false"]');
201
+ return firstSibling ? firstSibling.children[0] : null;
202
+ },
203
+ findLastItem: function findLastItem() {
204
+ var siblings = utils.DomHandler.find(this.$refs.nav, '[data-pc-section="menuitem"][data-p-disabled="false"]');
205
+ return siblings ? siblings[siblings.length - 1].children[0] : null;
206
+ },
207
+ findActiveItem: function findActiveItem() {
208
+ var activeItem = utils.DomHandler.findSingle(this.$refs.nav, '[data-pc-section="menuitem"][data-p-disabled="false"][data-p-highlight="true"]');
209
+ return activeItem ? activeItem.children[0] : null;
210
+ },
211
+ setFocusToMenuitem: function setFocusToMenuitem(target, focusableItem) {
212
+ target.tabIndex = '-1';
213
+ focusableItem.tabIndex = '0';
214
+ focusableItem.focus();
215
+ },
216
+ onTabKey: function onTabKey() {
217
+ var activeItem = utils.DomHandler.findSingle(this.$refs.nav, '[data-pc-section="menuitem"][data-p-disabled="false"][data-p-highlight="true"]');
218
+ var focusedItem = utils.DomHandler.findSingle(this.$refs.nav, '[data-pc-section="action"][tabindex="0"]');
219
+ if (focusedItem !== activeItem.children[0]) {
220
+ activeItem && (activeItem.children[0].tabIndex = '0');
221
+ focusedItem.tabIndex = '-1';
206
222
  }
207
- var prevItem = items[i];
208
- if (prevItem) return utils.DomHandler.getAttribute(prevItem, 'data-p-disabled') ? this.findPrevItem(items, i) : {
209
- prevItem: prevItem,
210
- i: i
211
- };else return null;
212
223
  },
213
224
  visible: function visible(item) {
214
225
  return typeof item.visible === 'function' ? item.visible() : item.visible !== false;
215
226
  },
216
227
  disabled: function disabled(item) {
217
- return typeof item.disabled === 'function' ? item.disabled() : item.disabled;
228
+ return typeof item.disabled === 'function' ? item.disabled() : item.disabled === true;
218
229
  },
219
230
  label: function label(item) {
220
231
  return typeof item.label === 'function' ? item.label() : item.label;
221
232
  },
222
- setDefaultTabIndexes: function setDefaultTabIndexes(tabLinkRef) {
223
- setTimeout(function () {
224
- tabLinkRef.forEach(function (item) {
225
- item.tabIndex = utils.DomHandler.getAttribute(item.parentElement, 'data-p-highlight') ? '0' : '-1';
226
- });
227
- }, 300);
228
- },
229
- setTabIndex: function setTabIndex(index) {
230
- return this.d_activeIndex === index ? '0' : '-1';
231
- },
232
233
  updateInkBar: function updateInkBar() {
233
234
  var tabs = this.$refs.nav.children;
234
235
  var inkHighlighted = false;
@@ -246,15 +247,6 @@ this.primevue.tabmenu = (function (Ripple, utils, BaseComponent, usestyle, vue)
246
247
  }
247
248
  }
248
249
  },
249
- computed: {
250
- focusableItems: function focusableItems() {
251
- var _this2 = this;
252
- return (this.model || []).reduce(function (result, item) {
253
- _this2.visible(item) && !_this2.disabled(item) && result.push(item);
254
- return result;
255
- }, []);
256
- }
257
- },
258
250
  directives: {
259
251
  ripple: Ripple__default["default"]
260
252
  }
@@ -262,9 +254,9 @@ this.primevue.tabmenu = (function (Ripple, utils, BaseComponent, usestyle, vue)
262
254
 
263
255
  var _hoisted_1 = ["aria-labelledby", "aria-label"];
264
256
  var _hoisted_2 = ["data-p-highlight", "data-p-disabled"];
265
- var _hoisted_3 = ["href", "aria-label", "aria-disabled", "tabindex", "onClick", "onKeydown"];
257
+ var _hoisted_3 = ["href", "aria-label", "aria-disabled", "onClick", "onKeydown"];
266
258
  var _hoisted_4 = ["onClick", "onKeydown", "data-p-highlight", "data-p-disabled"];
267
- var _hoisted_5 = ["href", "target", "aria-label", "aria-disabled", "tabindex"];
259
+ var _hoisted_5 = ["href", "target", "aria-label", "aria-disabled"];
268
260
  function render(_ctx, _cache, $props, $setup, $data, $options) {
269
261
  var _component_router_link = vue.resolveComponent("router-link");
270
262
  var _directive_ripple = vue.resolveDirective("ripple");
@@ -278,7 +270,7 @@ this.primevue.tabmenu = (function (Ripple, utils, BaseComponent, usestyle, vue)
278
270
  role: "menubar",
279
271
  "aria-labelledby": _ctx.ariaLabelledby,
280
272
  "aria-label": _ctx.ariaLabel
281
- }, _ctx.ptm('menu')), [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList($options.focusableItems, function (item, i) {
273
+ }, _ctx.ptm('menu')), [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(_ctx.model, function (item, i) {
282
274
  return vue.openBlock(), vue.createElementBlock(vue.Fragment, {
283
275
  key: $options.label(item) + '_' + i.toString()
284
276
  }, [item.to && !$options.disabled(item) ? (vue.openBlock(), vue.createBlock(_component_router_link, {
@@ -314,12 +306,12 @@ this.primevue.tabmenu = (function (Ripple, utils, BaseComponent, usestyle, vue)
314
306
  "class": _ctx.cx('action'),
315
307
  "aria-label": $options.label(item),
316
308
  "aria-disabled": $options.disabled(item),
317
- tabindex: isExactActive ? '0' : '-1',
309
+ tabindex: -1,
318
310
  onClick: function onClick($event) {
319
311
  return $options.onItemClick($event, item, i, navigate);
320
312
  },
321
313
  onKeydown: function onKeydown($event) {
322
- return $options.onKeydownItem($event, i, navigate);
314
+ return $options.onKeydownItem($event, item, i, navigate);
323
315
  }
324
316
  }, $options.getPTOptions('action', i)), [_ctx.$slots.itemicon ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.$slots.itemicon), {
325
317
  key: 0,
@@ -350,7 +342,7 @@ this.primevue.tabmenu = (function (Ripple, utils, BaseComponent, usestyle, vue)
350
342
  return $options.onItemClick($event, item, i);
351
343
  },
352
344
  onKeydown: function onKeydown($event) {
353
- return $options.onKeydownItem($event, i);
345
+ return $options.onKeydownItem($event, item, i);
354
346
  }
355
347
  }, $options.getPTOptions('menuitem', i), {
356
348
  "data-p-highlight": $data.d_activeIndex === i,
@@ -365,7 +357,7 @@ this.primevue.tabmenu = (function (Ripple, utils, BaseComponent, usestyle, vue)
365
357
  target: item.target,
366
358
  "aria-label": $options.label(item),
367
359
  "aria-disabled": $options.disabled(item),
368
- tabindex: $options.setTabIndex(i)
360
+ tabindex: -1
369
361
  }, $options.getPTOptions('action', i)), [_ctx.$slots.itemicon ? (vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.$slots.itemicon), {
370
362
  key: 0,
371
363
  item: item,
@@ -1 +1 @@
1
- this.primevue=this.primevue||{},this.primevue.tabmenu=function(e,t,n,i,a){"use strict";function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var r=l(e),o=l(n),s=i.useStyle("\n.p-tabmenu {\n overflow-x: auto;\n}\n\n.p-tabmenu-nav {\n display: flex;\n margin: 0;\n padding: 0;\n list-style-type: none;\n flex-wrap: nowrap;\n}\n\n.p-tabmenu-nav a {\n cursor: pointer;\n user-select: none;\n display: flex;\n align-items: center;\n position: relative;\n text-decoration: none;\n text-decoration: none;\n overflow: hidden;\n}\n\n.p-tabmenu-nav a:focus {\n z-index: 1;\n}\n\n.p-tabmenu-nav .p-menuitem-text {\n line-height: 1;\n}\n\n.p-tabmenu-ink-bar {\n display: none;\n z-index: 1;\n}\n\n.p-tabmenu::-webkit-scrollbar {\n display: none;\n}\n",{name:"tabmenu",manual:!0}),c={name:"TabMenu",extends:{name:"BaseTabMenu",extends:o.default,props:{model:{type:Array,default:null},exact:{type:Boolean,default:!0},activeIndex:{type:Number,default:0},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},css:{classes:{root:"p-tabmenu p-component",menu:"p-tabmenu-nav p-reset",menuitem:function(e){var t=e.instance;return["p-tabmenuitem",{"p-highlight":(e.props.exact?e.isExactActive:e.isActive)||t.d_activeIndex===e.index,"p-disabled":t.disabled(e.item)}]},action:"p-menuitem-link",icon:"p-menuitem-icon",label:"p-menuitem-text",inkbar:"p-tabmenu-ink-bar"},loadStyle:s.load},provide:function(){return{$parentInstance:this}}},emits:["update:activeIndex","tab-change"],timeout:null,data:function(){return{d_activeIndex:this.activeIndex}},watch:{$route:function(){var e=this;this.timeout=setTimeout((function(){return e.updateInkBar()}),50)},activeIndex:function(e){this.d_activeIndex=e}},mounted:function(){this.updateInkBar()},updated:function(){this.updateInkBar()},beforeUnmount:function(){clearTimeout(this.timeout)},methods:{getPTOptions:function(e,t){return this.ptm(e,{context:{order:t}})},onItemClick:function(e,t,n,i){this.disabled(t)?e.preventDefault():(t.command&&t.command({originalEvent:e,item:t}),t.to&&i&&i(e),n!==this.d_activeIndex&&(this.d_activeIndex=n,this.$emit("update:activeIndex",this.d_activeIndex)),this.$emit("tab-change",{originalEvent:e,index:n}))},onKeydownItem:function(e,t){var n=t,i=this.$refs.tabLink;switch(e.code){case"ArrowRight":n=this.findNextItem(this.$refs.tab,n).i;break;case"ArrowLeft":n=this.findPrevItem(this.$refs.tab,n).i;break;case"End":n=this.findPrevItem(this.$refs.tab,this.model.length).i,e.preventDefault();break;case"Home":n=this.findNextItem(this.$refs.tab,-1).i,e.preventDefault();break;case"Space":case"Enter":e.currentTarget&&e.currentTarget.click(),e.preventDefault();break;case"Tab":this.setDefaultTabIndexes(i)}i[n]&&i[t]&&(i[t].tabIndex="-1",i[n].tabIndex="0",i[n].focus())},findNextItem:function(e,n){var i=n+1;if(i>=e.length)return{nextItem:e[e.length],i:e.length};var a=e[i];return a?t.DomHandler.getAttribute(a,"data-p-disabled")?this.findNextItem(e,i):{nextItem:a,i:i}:null},findPrevItem:function(e,n){var i=n-1;if(i<0)return{nextItem:e[0],i:0};var a=e[i];return a?t.DomHandler.getAttribute(a,"data-p-disabled")?this.findPrevItem(e,i):{prevItem:a,i:i}:null},visible:function(e){return"function"==typeof e.visible?e.visible():!1!==e.visible},disabled:function(e){return"function"==typeof e.disabled?e.disabled():e.disabled},label:function(e){return"function"==typeof e.label?e.label():e.label},setDefaultTabIndexes:function(e){setTimeout((function(){e.forEach((function(e){e.tabIndex=t.DomHandler.getAttribute(e.parentElement,"data-p-highlight")?"0":"-1"}))}),300)},setTabIndex:function(e){return this.d_activeIndex===e?"0":"-1"},updateInkBar:function(){for(var e=this.$refs.nav.children,n=!1,i=0;i<e.length;i++){var a=e[i];t.DomHandler.getAttribute(a,"data-p-highlight")&&(this.$refs.inkbar.style.width=t.DomHandler.getWidth(a)+"px",this.$refs.inkbar.style.left=t.DomHandler.getOffset(a).left-t.DomHandler.getOffset(this.$refs.nav).left+"px",n=!0)}n||(this.$refs.inkbar.style.width="0px",this.$refs.inkbar.style.left="0px")}},computed:{focusableItems:function(){var e=this;return(this.model||[]).reduce((function(t,n){return e.visible(n)&&!e.disabled(n)&&t.push(n),t}),[])}},directives:{ripple:r.default}},d=["aria-labelledby","aria-label"],m=["data-p-highlight","data-p-disabled"],u=["href","aria-label","aria-disabled","tabindex","onClick","onKeydown"],p=["onClick","onKeydown","data-p-highlight","data-p-disabled"],b=["href","target","aria-label","aria-disabled","tabindex"];return c.render=function(e,t,n,i,l,r){var o=a.resolveComponent("router-link"),s=a.resolveDirective("ripple");return a.openBlock(),a.createElementBlock("div",a.mergeProps({class:e.cx("root")},e.ptm("root"),{"data-pc-name":"tabmenu"}),[a.createElementVNode("ul",a.mergeProps({ref:"nav",class:e.cx("menu"),role:"menubar","aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel},e.ptm("menu")),[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(r.focusableItems,(function(t,n){return a.openBlock(),a.createElementBlock(a.Fragment,{key:r.label(t)+"_"+n.toString()},[t.to&&!r.disabled(t)?(a.openBlock(),a.createBlock(o,{key:0,to:t.to,custom:""},{default:a.withCtx((function(i){var l=i.navigate,o=i.href,c=i.isActive,d=i.isExactActive;return[r.visible(t)?(a.openBlock(),a.createElementBlock("li",a.mergeProps({key:0,ref_for:!0,ref:"tab",class:[e.cx("menuitem",{item:t,isActive:c,isExactActive:d}),t.class],style:t.style,role:"presentation"},r.getPTOptions("menuitem",n),{"data-p-highlight":e.exact?d:c,"data-p-disabled":r.disabled(t)}),[e.$slots.item?(a.openBlock(),a.createBlock(a.resolveDynamicComponent(e.$slots.item),{key:1,item:t,index:n},null,8,["item","index"])):a.withDirectives((a.openBlock(),a.createElementBlock("a",a.mergeProps({key:0,ref_for:!0,ref:"tabLink",role:"menuitem",href:o,class:e.cx("action"),"aria-label":r.label(t),"aria-disabled":r.disabled(t),tabindex:d?"0":"-1",onClick:function(e){return r.onItemClick(e,t,n,l)},onKeydown:function(e){return r.onKeydownItem(e,n,l)}},r.getPTOptions("action",n)),[e.$slots.itemicon?(a.openBlock(),a.createBlock(a.resolveDynamicComponent(e.$slots.itemicon),{key:0,item:t,class:a.normalizeClass([e.cx("icon"),t.icon])},null,8,["item","class"])):t.icon?(a.openBlock(),a.createElementBlock("span",a.mergeProps({key:1,class:[e.cx("icon"),t.icon]},r.getPTOptions("icon",n)),null,16)):a.createCommentVNode("",!0),a.createElementVNode("span",a.mergeProps({class:e.cx("label")},r.getPTOptions("label",n)),a.toDisplayString(r.label(t)),17)],16,u)),[[s]])],16,m)):a.createCommentVNode("",!0)]})),_:2},1032,["to"])):r.visible(t)?(a.openBlock(),a.createElementBlock("li",a.mergeProps({key:1,ref_for:!0,ref:"tab",class:[e.cx("menuitem",{item:t,index:n}),t.class],role:"presentation",onClick:function(e){return r.onItemClick(e,t,n)},onKeydown:function(e){return r.onKeydownItem(e,n)}},r.getPTOptions("menuitem",n),{"data-p-highlight":l.d_activeIndex===n,"data-p-disabled":r.disabled(t)}),[e.$slots.item?(a.openBlock(),a.createBlock(a.resolveDynamicComponent(e.$slots.item),{key:1,item:t,index:n},null,8,["item","index"])):a.withDirectives((a.openBlock(),a.createElementBlock("a",a.mergeProps({key:0,ref_for:!0,ref:"tabLink",role:"menuitem",href:t.url,class:e.cx("action"),target:t.target,"aria-label":r.label(t),"aria-disabled":r.disabled(t),tabindex:r.setTabIndex(n)},r.getPTOptions("action",n)),[e.$slots.itemicon?(a.openBlock(),a.createBlock(a.resolveDynamicComponent(e.$slots.itemicon),{key:0,item:t,class:a.normalizeClass([e.cx("icon"),t.icon])},null,8,["item","class"])):t.icon?(a.openBlock(),a.createElementBlock("span",a.mergeProps({key:1,class:[e.cx("icon"),t.icon]},r.getPTOptions("icon",n)),null,16)):a.createCommentVNode("",!0),a.createElementVNode("span",a.mergeProps({class:e.cx("label")},r.getPTOptions("label",n)),a.toDisplayString(r.label(t)),17)],16,b)),[[s]])],16,p)):a.createCommentVNode("",!0)],64)})),128)),a.createElementVNode("li",a.mergeProps({ref:"inkbar",role:"none",class:e.cx("inkbar")},e.ptm("inkbar")),null,16)],16,d)],16)},c}(primevue.ripple,primevue.utils,primevue.basecomponent,primevue.usestyle,Vue);
1
+ this.primevue=this.primevue||{},this.primevue.tabmenu=function(e,t,n,i,a){"use strict";function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var o=l(e),r=l(n),s=i.useStyle("\n.p-tabmenu {\n overflow-x: auto;\n}\n\n.p-tabmenu-nav {\n display: flex;\n margin: 0;\n padding: 0;\n list-style-type: none;\n flex-wrap: nowrap;\n}\n\n.p-tabmenu-nav a {\n cursor: pointer;\n user-select: none;\n display: flex;\n align-items: center;\n position: relative;\n text-decoration: none;\n text-decoration: none;\n overflow: hidden;\n}\n\n.p-tabmenu-nav a:focus {\n z-index: 1;\n}\n\n.p-tabmenu-nav .p-menuitem-text {\n line-height: 1;\n}\n\n.p-tabmenu-ink-bar {\n display: none;\n z-index: 1;\n}\n\n.p-tabmenu::-webkit-scrollbar {\n display: none;\n}\n",{name:"tabmenu",manual:!0}),c={name:"TabMenu",extends:{name:"BaseTabMenu",extends:r.default,props:{model:{type:Array,default:null},exact:{type:Boolean,default:!0},activeIndex:{type:Number,default:0},"aria-labelledby":{type:String,default:null},"aria-label":{type:String,default:null}},css:{classes:{root:"p-tabmenu p-component",menu:"p-tabmenu-nav p-reset",menuitem:function(e){var t=e.instance;return["p-tabmenuitem",{"p-highlight":(e.props.exact?e.isExactActive:e.isActive)||t.d_activeIndex===e.index,"p-disabled":t.disabled(e.item)}]},action:"p-menuitem-link",icon:"p-menuitem-icon",label:"p-menuitem-text",inkbar:"p-tabmenu-ink-bar"},loadStyle:s.load},provide:function(){return{$parentInstance:this}}},emits:["update:activeIndex","tab-change"],timeout:null,data:function(){return{d_activeIndex:this.activeIndex}},watch:{$route:function(){var e=this;this.timeout=setTimeout((function(){return e.updateInkBar()}),50)},activeIndex:function(e){this.d_activeIndex=e}},mounted:function(){this.updateInkBar();var e=this.findActiveItem();e&&(e.tabIndex="0")},updated:function(){this.updateInkBar()},beforeUnmount:function(){clearTimeout(this.timeout)},methods:{getPTOptions:function(e,t){return this.ptm(e,{context:{order:t}})},onItemClick:function(e,t,n,i){this.disabled(t)?e.preventDefault():(t.command&&t.command({originalEvent:e,item:t}),t.to&&i&&i(e),n!==this.d_activeIndex&&(this.d_activeIndex=n,this.$emit("update:activeIndex",this.d_activeIndex)),this.$emit("tab-change",{originalEvent:e,index:n}))},onKeydownItem:function(e,t,n,i){switch(e.code){case"ArrowRight":this.navigateToNextItem(e.target),e.preventDefault();break;case"ArrowLeft":this.navigateToPrevItem(e.target),e.preventDefault();break;case"Home":this.navigateToFirstItem(e.target),e.preventDefault();break;case"End":this.navigateToLastItem(e.target),e.preventDefault();break;case"Space":case"Enter":this.onItemClick(e,t,n,i),e.preventDefault();break;case"Tab":this.onTabKey()}},navigateToNextItem:function(e){var t=this.findNextItem(e);t&&this.setFocusToMenuitem(e,t)},navigateToPrevItem:function(e){var t=this.findPrevItem(e);t&&this.setFocusToMenuitem(e,t)},navigateToFirstItem:function(e){var t=this.findFirstItem(e);t&&this.setFocusToMenuitem(e,t)},navigateToLastItem:function(e){var t=this.findLastItem(e);t&&this.setFocusToMenuitem(e,t)},findNextItem:function(e){var n=e.parentElement.nextElementSibling;return n?!0===t.DomHandler.getAttribute(n,"data-p-disabled")?this.findNextItem(n.children[0]):n.children[0]:null},findPrevItem:function(e){var n=e.parentElement.previousElementSibling;return n?!0===t.DomHandler.getAttribute(n,"data-p-disabled")?this.findPrevItem(n.children[0]):n.children[0]:null},findFirstItem:function(){var e=t.DomHandler.findSingle(this.$refs.nav,'[data-pc-section="menuitem"][data-p-disabled="false"]');return e?e.children[0]:null},findLastItem:function(){var e=t.DomHandler.find(this.$refs.nav,'[data-pc-section="menuitem"][data-p-disabled="false"]');return e?e[e.length-1].children[0]:null},findActiveItem:function(){var e=t.DomHandler.findSingle(this.$refs.nav,'[data-pc-section="menuitem"][data-p-disabled="false"][data-p-highlight="true"]');return e?e.children[0]:null},setFocusToMenuitem:function(e,t){e.tabIndex="-1",t.tabIndex="0",t.focus()},onTabKey:function(){var e=t.DomHandler.findSingle(this.$refs.nav,'[data-pc-section="menuitem"][data-p-disabled="false"][data-p-highlight="true"]'),n=t.DomHandler.findSingle(this.$refs.nav,'[data-pc-section="action"][tabindex="0"]');n!==e.children[0]&&(e&&(e.children[0].tabIndex="0"),n.tabIndex="-1")},visible:function(e){return"function"==typeof e.visible?e.visible():!1!==e.visible},disabled:function(e){return"function"==typeof e.disabled?e.disabled():!0===e.disabled},label:function(e){return"function"==typeof e.label?e.label():e.label},updateInkBar:function(){for(var e=this.$refs.nav.children,n=!1,i=0;i<e.length;i++){var a=e[i];t.DomHandler.getAttribute(a,"data-p-highlight")&&(this.$refs.inkbar.style.width=t.DomHandler.getWidth(a)+"px",this.$refs.inkbar.style.left=t.DomHandler.getOffset(a).left-t.DomHandler.getOffset(this.$refs.nav).left+"px",n=!0)}n||(this.$refs.inkbar.style.width="0px",this.$refs.inkbar.style.left="0px")}},directives:{ripple:o.default}},d=["aria-labelledby","aria-label"],m=["data-p-highlight","data-p-disabled"],u=["href","aria-label","aria-disabled","onClick","onKeydown"],p=["onClick","onKeydown","data-p-highlight","data-p-disabled"],f=["href","target","aria-label","aria-disabled"];return c.render=function(e,t,n,i,l,o){var r=a.resolveComponent("router-link"),s=a.resolveDirective("ripple");return a.openBlock(),a.createElementBlock("div",a.mergeProps({class:e.cx("root")},e.ptm("root"),{"data-pc-name":"tabmenu"}),[a.createElementVNode("ul",a.mergeProps({ref:"nav",class:e.cx("menu"),role:"menubar","aria-labelledby":e.ariaLabelledby,"aria-label":e.ariaLabel},e.ptm("menu")),[(a.openBlock(!0),a.createElementBlock(a.Fragment,null,a.renderList(e.model,(function(t,n){return a.openBlock(),a.createElementBlock(a.Fragment,{key:o.label(t)+"_"+n.toString()},[t.to&&!o.disabled(t)?(a.openBlock(),a.createBlock(r,{key:0,to:t.to,custom:""},{default:a.withCtx((function(i){var l=i.navigate,r=i.href,c=i.isActive,d=i.isExactActive;return[o.visible(t)?(a.openBlock(),a.createElementBlock("li",a.mergeProps({key:0,ref_for:!0,ref:"tab",class:[e.cx("menuitem",{item:t,isActive:c,isExactActive:d}),t.class],style:t.style,role:"presentation"},o.getPTOptions("menuitem",n),{"data-p-highlight":e.exact?d:c,"data-p-disabled":o.disabled(t)}),[e.$slots.item?(a.openBlock(),a.createBlock(a.resolveDynamicComponent(e.$slots.item),{key:1,item:t,index:n},null,8,["item","index"])):a.withDirectives((a.openBlock(),a.createElementBlock("a",a.mergeProps({key:0,ref_for:!0,ref:"tabLink",role:"menuitem",href:r,class:e.cx("action"),"aria-label":o.label(t),"aria-disabled":o.disabled(t),tabindex:-1,onClick:function(e){return o.onItemClick(e,t,n,l)},onKeydown:function(e){return o.onKeydownItem(e,t,n,l)}},o.getPTOptions("action",n)),[e.$slots.itemicon?(a.openBlock(),a.createBlock(a.resolveDynamicComponent(e.$slots.itemicon),{key:0,item:t,class:a.normalizeClass([e.cx("icon"),t.icon])},null,8,["item","class"])):t.icon?(a.openBlock(),a.createElementBlock("span",a.mergeProps({key:1,class:[e.cx("icon"),t.icon]},o.getPTOptions("icon",n)),null,16)):a.createCommentVNode("",!0),a.createElementVNode("span",a.mergeProps({class:e.cx("label")},o.getPTOptions("label",n)),a.toDisplayString(o.label(t)),17)],16,u)),[[s]])],16,m)):a.createCommentVNode("",!0)]})),_:2},1032,["to"])):o.visible(t)?(a.openBlock(),a.createElementBlock("li",a.mergeProps({key:1,ref_for:!0,ref:"tab",class:[e.cx("menuitem",{item:t,index:n}),t.class],role:"presentation",onClick:function(e){return o.onItemClick(e,t,n)},onKeydown:function(e){return o.onKeydownItem(e,t,n)}},o.getPTOptions("menuitem",n),{"data-p-highlight":l.d_activeIndex===n,"data-p-disabled":o.disabled(t)}),[e.$slots.item?(a.openBlock(),a.createBlock(a.resolveDynamicComponent(e.$slots.item),{key:1,item:t,index:n},null,8,["item","index"])):a.withDirectives((a.openBlock(),a.createElementBlock("a",a.mergeProps({key:0,ref_for:!0,ref:"tabLink",role:"menuitem",href:t.url,class:e.cx("action"),target:t.target,"aria-label":o.label(t),"aria-disabled":o.disabled(t),tabindex:-1},o.getPTOptions("action",n)),[e.$slots.itemicon?(a.openBlock(),a.createBlock(a.resolveDynamicComponent(e.$slots.itemicon),{key:0,item:t,class:a.normalizeClass([e.cx("icon"),t.icon])},null,8,["item","class"])):t.icon?(a.openBlock(),a.createElementBlock("span",a.mergeProps({key:1,class:[e.cx("icon"),t.icon]},o.getPTOptions("icon",n)),null,16)):a.createCommentVNode("",!0),a.createElementVNode("span",a.mergeProps({class:e.cx("label")},o.getPTOptions("label",n)),a.toDisplayString(o.label(t)),17)],16,f)),[[s]])],16,p)):a.createCommentVNode("",!0)],64)})),128)),a.createElementVNode("li",a.mergeProps({ref:"inkbar",role:"none",class:e.cx("inkbar")},e.ptm("inkbar")),null,16)],16,d)],16)},c}(primevue.ripple,primevue.utils,primevue.basecomponent,primevue.usestyle,Vue);
@@ -11,6 +11,7 @@
11
11
  :aria-label="prevButtonAriaLabel"
12
12
  @click="onPrevButtonClick"
13
13
  v-bind="{ ...previousButtonProps, ...ptm('previousButton') }"
14
+ data-pc-group-section="navbutton"
14
15
  >
15
16
  <slot name="previcon">
16
17
  <component :is="prevIcon ? 'span' : 'ChevronLeftIcon'" aria-hidden="true" :class="prevIcon" v-bind="ptm('previousIcon')" />
@@ -61,6 +62,7 @@
61
62
  :aria-label="nextButtonAriaLabel"
62
63
  @click="onNextButtonClick"
63
64
  v-bind="{ ...nextButtonProps, ...ptm('nextButton') }"
65
+ data-pc-group-section="navbutton"
64
66
  >
65
67
  <slot name="nexticon">
66
68
  <component :is="nextIcon ? 'span' : 'ChevronRightIcon'" aria-hidden="true" :class="nextIcon" v-bind="ptm('nextIcon')" />
@@ -400,7 +400,9 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
400
400
  onClick: _cache[0] || (_cache[0] = function () {
401
401
  return $options.onPrevButtonClick && $options.onPrevButtonClick.apply($options, arguments);
402
402
  })
403
- }, _objectSpread(_objectSpread({}, _ctx.previousButtonProps), _ctx.ptm('previousButton'))), [vue.renderSlot(_ctx.$slots, "previcon", {}, function () {
403
+ }, _objectSpread(_objectSpread({}, _ctx.previousButtonProps), _ctx.ptm('previousButton')), {
404
+ "data-pc-group-section": "navbutton"
405
+ }), [vue.renderSlot(_ctx.$slots, "previcon", {}, function () {
404
406
  return [(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.prevIcon ? 'span' : 'ChevronLeftIcon'), vue.mergeProps({
405
407
  "aria-hidden": "true",
406
408
  "class": _ctx.prevIcon
@@ -465,7 +467,9 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
465
467
  onClick: _cache[2] || (_cache[2] = function () {
466
468
  return $options.onNextButtonClick && $options.onNextButtonClick.apply($options, arguments);
467
469
  })
468
- }, _objectSpread(_objectSpread({}, _ctx.nextButtonProps), _ctx.ptm('nextButton'))), [vue.renderSlot(_ctx.$slots, "nexticon", {}, function () {
470
+ }, _objectSpread(_objectSpread({}, _ctx.nextButtonProps), _ctx.ptm('nextButton')), {
471
+ "data-pc-group-section": "navbutton"
472
+ }), [vue.renderSlot(_ctx.$slots, "nexticon", {}, function () {
469
473
  return [(vue.openBlock(), vue.createBlock(vue.resolveDynamicComponent(_ctx.nextIcon ? 'span' : 'ChevronRightIcon'), vue.mergeProps({
470
474
  "aria-hidden": "true",
471
475
  "class": _ctx.nextIcon