primevue 4.3.2 → 4.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (168) hide show
  1. package/accordionheader/AccordionHeader.vue +1 -1
  2. package/accordionheader/index.d.ts +6 -1
  3. package/accordionheader/index.mjs +1 -1
  4. package/accordionheader/index.mjs.map +1 -1
  5. package/autocomplete/AutoComplete.vue +60 -11
  6. package/autocomplete/index.d.ts +4 -0
  7. package/autocomplete/index.mjs +96 -59
  8. package/autocomplete/index.mjs.map +1 -1
  9. package/cascadeselect/CascadeSelect.vue +4 -1
  10. package/cascadeselect/CascadeSelectSub.vue +1 -1
  11. package/cascadeselect/index.mjs +22 -20
  12. package/cascadeselect/index.mjs.map +1 -1
  13. package/checkbox/Checkbox.vue +1 -1
  14. package/checkbox/index.mjs +2 -1
  15. package/checkbox/index.mjs.map +1 -1
  16. package/chip/BaseChip.vue +1 -1
  17. package/chip/index.d.ts +1 -1
  18. package/chip/index.mjs +1 -1
  19. package/chip/index.mjs.map +1 -1
  20. package/colorpicker/ColorPicker.vue +5 -1
  21. package/colorpicker/index.mjs +5 -1
  22. package/colorpicker/index.mjs.map +1 -1
  23. package/confirmationoptions/index.d.ts +1 -1
  24. package/confirmdialog/index.d.ts +4 -0
  25. package/contextmenu/index.mjs +12 -12
  26. package/contextmenu/index.mjs.map +1 -1
  27. package/datatable/BodyCell.vue +1 -0
  28. package/datatable/ColumnFilter.vue +3 -3
  29. package/datatable/DataTable.vue +103 -44
  30. package/datatable/HeaderCheckbox.vue +2 -2
  31. package/datatable/RowCheckbox.vue +1 -1
  32. package/datatable/TableBody.vue +12 -1
  33. package/datatable/TableFooter.vue +9 -1
  34. package/datatable/TableHeader.vue +9 -2
  35. package/datatable/index.d.ts +37 -29
  36. package/datatable/index.mjs +175 -111
  37. package/datatable/index.mjs.map +1 -1
  38. package/datatable/style/index.mjs +4 -4
  39. package/datatable/style/index.mjs.map +1 -1
  40. package/dataview/DataView.vue +4 -0
  41. package/dataview/index.d.ts +63 -6
  42. package/dataview/index.mjs +6 -2
  43. package/dataview/index.mjs.map +1 -1
  44. package/datepicker/DatePicker.vue +379 -236
  45. package/datepicker/index.d.ts +156 -0
  46. package/datepicker/index.mjs +676 -406
  47. package/datepicker/index.mjs.map +1 -1
  48. package/drawer/Drawer.vue +30 -20
  49. package/drawer/index.d.ts +10 -0
  50. package/drawer/index.mjs +42 -25
  51. package/drawer/index.mjs.map +1 -1
  52. package/fileupload/FileUpload.vue +3 -4
  53. package/fileupload/index.mjs +8 -10
  54. package/fileupload/index.mjs.map +1 -1
  55. package/galleria/Galleria.vue +39 -3
  56. package/galleria/index.mjs +40 -3
  57. package/galleria/index.mjs.map +1 -1
  58. package/image/Image.vue +1 -1
  59. package/image/index.mjs +1 -1
  60. package/image/index.mjs.map +1 -1
  61. package/inplace/Inplace.vue +1 -1
  62. package/inplace/index.mjs +3 -2
  63. package/inplace/index.mjs.map +1 -1
  64. package/inputmask/InputMask.vue +3 -3
  65. package/inputmask/index.d.ts +3 -3
  66. package/inputmask/index.mjs +3 -3
  67. package/inputmask/index.mjs.map +1 -1
  68. package/inputnumber/BaseInputNumber.vue +4 -0
  69. package/inputnumber/InputNumber.vue +3 -10
  70. package/inputnumber/index.mjs +8 -9
  71. package/inputnumber/index.mjs.map +1 -1
  72. package/keyfilter/index.mjs +12 -19
  73. package/keyfilter/index.mjs.map +1 -1
  74. package/listbox/Listbox.vue +10 -2
  75. package/listbox/index.mjs +38 -29
  76. package/listbox/index.mjs.map +1 -1
  77. package/megamenu/index.d.ts +1 -1
  78. package/megamenu/index.mjs +11 -11
  79. package/megamenu/index.mjs.map +1 -1
  80. package/menu/Menu.vue +12 -6
  81. package/menu/Menuitem.vue +14 -4
  82. package/menu/index.d.ts +3 -12
  83. package/menu/index.mjs +40 -20
  84. package/menu/index.mjs.map +1 -1
  85. package/menubar/index.mjs +16 -16
  86. package/menubar/index.mjs.map +1 -1
  87. package/metergroup/MeterGroup.vue +9 -3
  88. package/metergroup/MeterGroupLabel.vue +10 -1
  89. package/metergroup/index.d.ts +1 -1
  90. package/metergroup/index.mjs +32 -7
  91. package/metergroup/index.mjs.map +1 -1
  92. package/multiselect/MultiSelect.vue +40 -6
  93. package/multiselect/index.d.ts +1 -1
  94. package/multiselect/index.mjs +100 -68
  95. package/multiselect/index.mjs.map +1 -1
  96. package/organizationchart/OrganizationChartNode.vue +1 -1
  97. package/organizationchart/index.mjs.map +1 -1
  98. package/organizationchart/style/index.mjs +11 -6
  99. package/organizationchart/style/index.mjs.map +1 -1
  100. package/package.json +6 -6
  101. package/paginator/Paginator.vue +2 -0
  102. package/paginator/index.d.ts +8 -0
  103. package/paginator/index.mjs +3 -1
  104. package/paginator/index.mjs.map +1 -1
  105. package/panel/Panel.vue +2 -2
  106. package/panel/index.mjs +2 -2
  107. package/panel/index.mjs.map +1 -1
  108. package/panelmenu/PanelMenuList.vue +1 -1
  109. package/panelmenu/index.mjs +4 -4
  110. package/panelmenu/index.mjs.map +1 -1
  111. package/password/Password.vue +28 -6
  112. package/password/index.mjs +44 -16
  113. package/password/index.mjs.map +1 -1
  114. package/popover/Popover.vue +1 -1
  115. package/popover/index.mjs +1 -2
  116. package/popover/index.mjs.map +1 -1
  117. package/progressbar/ProgressBar.vue +4 -4
  118. package/progressbar/index.mjs +8 -12
  119. package/progressbar/index.mjs.map +1 -1
  120. package/scrolltop/ScrollTop.vue +2 -2
  121. package/scrolltop/index.mjs +4 -2
  122. package/scrolltop/index.mjs.map +1 -1
  123. package/select/Select.vue +68 -13
  124. package/select/index.mjs +128 -77
  125. package/select/index.mjs.map +1 -1
  126. package/selectbutton/index.d.ts +0 -24
  127. package/splitter/Splitter.vue +10 -2
  128. package/splitter/index.d.ts +1 -1
  129. package/splitter/index.mjs +19 -7
  130. package/splitter/index.mjs.map +1 -1
  131. package/splitter/style/index.mjs +1 -13
  132. package/splitter/style/index.mjs.map +1 -1
  133. package/step/Step.vue +27 -9
  134. package/step/index.mjs +46 -16
  135. package/step/index.mjs.map +1 -1
  136. package/steppanel/StepPanel.vue +11 -5
  137. package/steppanel/index.d.ts +8 -0
  138. package/steppanel/index.mjs +25 -10
  139. package/steppanel/index.mjs.map +1 -1
  140. package/stepper/StepperSeparator.vue +5 -2
  141. package/tab/Tab.vue +4 -4
  142. package/tab/index.mjs +4 -4
  143. package/tab/index.mjs.map +1 -1
  144. package/tablist/TabList.vue +3 -0
  145. package/tablist/index.mjs +1 -0
  146. package/tablist/index.mjs.map +1 -1
  147. package/tabpanel/TabPanel.vue +2 -2
  148. package/tabpanel/index.mjs +2 -2
  149. package/tabpanel/index.mjs.map +1 -1
  150. package/tieredmenu/TieredMenu.vue +1 -1
  151. package/tieredmenu/index.mjs +13 -14
  152. package/tieredmenu/index.mjs.map +1 -1
  153. package/tooltip/index.mjs +47 -30
  154. package/tooltip/index.mjs.map +1 -1
  155. package/tree/Tree.vue +14 -2
  156. package/tree/TreeNode.vue +2 -2
  157. package/tree/index.mjs +28 -10
  158. package/tree/index.mjs.map +1 -1
  159. package/treeselect/TreeSelect.vue +4 -1
  160. package/treeselect/index.mjs +4 -2
  161. package/treeselect/index.mjs.map +1 -1
  162. package/umd/primevue.min.js +12213 -1
  163. package/virtualscroller/VirtualScroller.vue +13 -2
  164. package/virtualscroller/index.mjs +28 -18
  165. package/virtualscroller/index.mjs.map +1 -1
  166. package/virtualscroller/style/index.mjs +1 -1
  167. package/virtualscroller/style/index.mjs.map +1 -1
  168. package/web-types.json +1 -1
package/tab/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/tab/BaseTab.vue","../../src/tab/Tab.vue","../../src/tab/Tab.vue?vue&type=template&id=846d93de&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport TabStyle from 'primevue/tab/style';\n\nexport default {\n name: 'BaseTab',\n extends: BaseComponent,\n props: {\n value: {\n type: [String, Number],\n default: undefined\n },\n disabled: {\n type: Boolean,\n default: false\n },\n as: {\n type: [String, Object],\n default: 'BUTTON'\n },\n asChild: {\n type: Boolean,\n default: false\n }\n },\n style: TabStyle,\n provide() {\n return {\n $pcTab: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <component v-if=\"!asChild\" :is=\"as\" v-ripple :class=\"cx('root')\" :data-p=\"dataP\" @click=\"onClick\" v-bind=\"attrs\">\n <slot></slot>\n </component>\n <slot v-else :dataP=\"dataP\" :class=\"cx('root')\" :active=\"active\" :a11yAttrs=\"a11yAttrs\" :onClick=\"onClick\"></slot>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { findSingle, focus, getAttribute } from '@primeuix/utils/dom';\nimport { equals } from '@primeuix/utils/object';\nimport Ripple from 'primevue/ripple';\nimport { mergeProps } from 'vue';\nimport BaseTab from './BaseTab.vue';\n\nexport default {\n name: 'Tab',\n extends: BaseTab,\n inheritAttrs: false,\n inject: ['$pcTabs', '$pcTabList'],\n methods: {\n onFocus() {\n this.$pcTabs.selectOnFocus && this.changeActiveValue();\n },\n onClick() {\n this.changeActiveValue();\n },\n onKeydown(event) {\n switch (event.code) {\n case 'ArrowRight':\n this.onArrowRightKey(event);\n break;\n\n case 'ArrowLeft':\n this.onArrowLeftKey(event);\n break;\n\n case 'Home':\n this.onHomeKey(event);\n break;\n\n case 'End':\n this.onEndKey(event);\n break;\n\n case 'PageDown':\n this.onPageDownKey(event);\n break;\n\n case 'PageUp':\n this.onPageUpKey(event);\n break;\n\n case 'Enter':\n case 'NumpadEnter':\n case 'Space':\n this.onEnterKey(event);\n break;\n\n default:\n break;\n }\n },\n onArrowRightKey(event) {\n const nextTab = this.findNextTab(event.currentTarget);\n\n nextTab ? this.changeFocusedTab(event, nextTab) : this.onHomeKey(event);\n event.preventDefault();\n },\n onArrowLeftKey(event) {\n const prevTab = this.findPrevTab(event.currentTarget);\n\n prevTab ? this.changeFocusedTab(event, prevTab) : this.onEndKey(event);\n event.preventDefault();\n },\n onHomeKey(event) {\n const firstTab = this.findFirstTab();\n\n this.changeFocusedTab(event, firstTab);\n event.preventDefault();\n },\n onEndKey(event) {\n const lastTab = this.findLastTab();\n\n this.changeFocusedTab(event, lastTab);\n event.preventDefault();\n },\n onPageDownKey(event) {\n this.scrollInView(this.findLastTab());\n event.preventDefault();\n },\n onPageUpKey(event) {\n this.scrollInView(this.findFirstTab());\n event.preventDefault();\n },\n onEnterKey(event) {\n this.changeActiveValue();\n event.preventDefault();\n },\n findNextTab(tabElement, selfCheck = false) {\n const element = selfCheck ? tabElement : tabElement.nextElementSibling;\n\n return element ? (getAttribute(element, 'data-p-disabled') || getAttribute(element, 'data-pc-section') === 'inkbar' ? this.findNextTab(element) : findSingle(element, '[data-pc-name=\"tab\"]')) : null;\n },\n findPrevTab(tabElement, selfCheck = false) {\n const element = selfCheck ? tabElement : tabElement.previousElementSibling;\n\n return element ? (getAttribute(element, 'data-p-disabled') || getAttribute(element, 'data-pc-section') === 'inkbar' ? this.findPrevTab(element) : findSingle(element, '[data-pc-name=\"tab\"]')) : null;\n },\n findFirstTab() {\n return this.findNextTab(this.$pcTabList.$refs.content.firstElementChild, true);\n },\n findLastTab() {\n return this.findPrevTab(this.$pcTabList.$refs.content.lastElementChild, true);\n },\n changeActiveValue() {\n this.$pcTabs.updateValue(this.value);\n },\n changeFocusedTab(event, element) {\n focus(element);\n this.scrollInView(element);\n },\n scrollInView(element) {\n element?.scrollIntoView?.({ block: 'nearest' });\n }\n },\n computed: {\n active() {\n return equals(this.$pcTabs?.d_value, this.value);\n },\n id() {\n return `${this.$pcTabs?.$id}_tab_${this.value}`;\n },\n ariaControls() {\n return `${this.$pcTabs?.$id}_tabpanel_${this.value}`;\n },\n attrs() {\n return mergeProps(this.asAttrs, this.a11yAttrs, this.ptmi('root', this.ptParams));\n },\n asAttrs() {\n return this.as === 'BUTTON' ? { type: 'button', disabled: this.disabled } : undefined;\n },\n a11yAttrs() {\n return {\n id: this.id,\n tabindex: this.active ? this.$pcTabs.tabindex : -1,\n role: 'tab',\n 'aria-selected': this.active,\n 'aria-controls': this.ariaControls,\n 'data-pc-name': 'tab',\n 'data-p-disabled': this.disabled,\n 'data-p-active': this.active,\n onFocus: this.onFocus,\n onKeydown: this.onKeydown\n };\n },\n ptParams() {\n return {\n context: {\n active: this.active\n }\n };\n },\n dataP() {\n return cn({\n active: this.active\n });\n }\n },\n directives: {\n ripple: Ripple\n }\n};\n</script>\n","<template>\n <component v-if=\"!asChild\" :is=\"as\" v-ripple :class=\"cx('root')\" :data-p=\"dataP\" @click=\"onClick\" v-bind=\"attrs\">\n <slot></slot>\n </component>\n <slot v-else :dataP=\"dataP\" :class=\"cx('root')\" :active=\"active\" :a11yAttrs=\"a11yAttrs\" :onClick=\"onClick\"></slot>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { findSingle, focus, getAttribute } from '@primeuix/utils/dom';\nimport { equals } from '@primeuix/utils/object';\nimport Ripple from 'primevue/ripple';\nimport { mergeProps } from 'vue';\nimport BaseTab from './BaseTab.vue';\n\nexport default {\n name: 'Tab',\n extends: BaseTab,\n inheritAttrs: false,\n inject: ['$pcTabs', '$pcTabList'],\n methods: {\n onFocus() {\n this.$pcTabs.selectOnFocus && this.changeActiveValue();\n },\n onClick() {\n this.changeActiveValue();\n },\n onKeydown(event) {\n switch (event.code) {\n case 'ArrowRight':\n this.onArrowRightKey(event);\n break;\n\n case 'ArrowLeft':\n this.onArrowLeftKey(event);\n break;\n\n case 'Home':\n this.onHomeKey(event);\n break;\n\n case 'End':\n this.onEndKey(event);\n break;\n\n case 'PageDown':\n this.onPageDownKey(event);\n break;\n\n case 'PageUp':\n this.onPageUpKey(event);\n break;\n\n case 'Enter':\n case 'NumpadEnter':\n case 'Space':\n this.onEnterKey(event);\n break;\n\n default:\n break;\n }\n },\n onArrowRightKey(event) {\n const nextTab = this.findNextTab(event.currentTarget);\n\n nextTab ? this.changeFocusedTab(event, nextTab) : this.onHomeKey(event);\n event.preventDefault();\n },\n onArrowLeftKey(event) {\n const prevTab = this.findPrevTab(event.currentTarget);\n\n prevTab ? this.changeFocusedTab(event, prevTab) : this.onEndKey(event);\n event.preventDefault();\n },\n onHomeKey(event) {\n const firstTab = this.findFirstTab();\n\n this.changeFocusedTab(event, firstTab);\n event.preventDefault();\n },\n onEndKey(event) {\n const lastTab = this.findLastTab();\n\n this.changeFocusedTab(event, lastTab);\n event.preventDefault();\n },\n onPageDownKey(event) {\n this.scrollInView(this.findLastTab());\n event.preventDefault();\n },\n onPageUpKey(event) {\n this.scrollInView(this.findFirstTab());\n event.preventDefault();\n },\n onEnterKey(event) {\n this.changeActiveValue();\n event.preventDefault();\n },\n findNextTab(tabElement, selfCheck = false) {\n const element = selfCheck ? tabElement : tabElement.nextElementSibling;\n\n return element ? (getAttribute(element, 'data-p-disabled') || getAttribute(element, 'data-pc-section') === 'inkbar' ? this.findNextTab(element) : findSingle(element, '[data-pc-name=\"tab\"]')) : null;\n },\n findPrevTab(tabElement, selfCheck = false) {\n const element = selfCheck ? tabElement : tabElement.previousElementSibling;\n\n return element ? (getAttribute(element, 'data-p-disabled') || getAttribute(element, 'data-pc-section') === 'inkbar' ? this.findPrevTab(element) : findSingle(element, '[data-pc-name=\"tab\"]')) : null;\n },\n findFirstTab() {\n return this.findNextTab(this.$pcTabList.$refs.content.firstElementChild, true);\n },\n findLastTab() {\n return this.findPrevTab(this.$pcTabList.$refs.content.lastElementChild, true);\n },\n changeActiveValue() {\n this.$pcTabs.updateValue(this.value);\n },\n changeFocusedTab(event, element) {\n focus(element);\n this.scrollInView(element);\n },\n scrollInView(element) {\n element?.scrollIntoView?.({ block: 'nearest' });\n }\n },\n computed: {\n active() {\n return equals(this.$pcTabs?.d_value, this.value);\n },\n id() {\n return `${this.$pcTabs?.$id}_tab_${this.value}`;\n },\n ariaControls() {\n return `${this.$pcTabs?.$id}_tabpanel_${this.value}`;\n },\n attrs() {\n return mergeProps(this.asAttrs, this.a11yAttrs, this.ptmi('root', this.ptParams));\n },\n asAttrs() {\n return this.as === 'BUTTON' ? { type: 'button', disabled: this.disabled } : undefined;\n },\n a11yAttrs() {\n return {\n id: this.id,\n tabindex: this.active ? this.$pcTabs.tabindex : -1,\n role: 'tab',\n 'aria-selected': this.active,\n 'aria-controls': this.ariaControls,\n 'data-pc-name': 'tab',\n 'data-p-disabled': this.disabled,\n 'data-p-active': this.active,\n onFocus: this.onFocus,\n onKeydown: this.onKeydown\n };\n },\n ptParams() {\n return {\n context: {\n active: this.active\n }\n };\n },\n dataP() {\n return cn({\n active: this.active\n });\n }\n },\n directives: {\n ripple: Ripple\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","value","type","String","Number","undefined","disabled","Boolean","as","Object","asChild","style","TabStyle","provide","$pcTab","$parentInstance","BaseTab","inheritAttrs","inject","methods","onFocus","$pcTabs","selectOnFocus","changeActiveValue","onClick","onKeydown","event","code","onArrowRightKey","onArrowLeftKey","onHomeKey","onEndKey","onPageDownKey","onPageUpKey","onEnterKey","nextTab","findNextTab","currentTarget","changeFocusedTab","preventDefault","prevTab","findPrevTab","firstTab","findFirstTab","lastTab","findLastTab","scrollInView","tabElement","selfCheck","element","nextElementSibling","getAttribute","findSingle","previousElementSibling","$pcTabList","$refs","content","firstElementChild","lastElementChild","updateValue","focus","_element$scrollIntoVi","scrollIntoView","call","block","computed","active","_this$$pcTabs","equals","d_value","id","_this$$pcTabs2","concat","$id","ariaControls","_this$$pcTabs3","attrs","mergeProps","asAttrs","a11yAttrs","ptmi","ptParams","tabindex","role","context","dataP","cn","directives","ripple","Ripple","_ctx","_createBlock","_resolveDynamicComponent","_mergeProps","cx","$options","_renderSlot","$slots"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/tab/BaseTab.vue","../../src/tab/Tab.vue","../../src/tab/Tab.vue?vue&type=template&id=987cccf2&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport TabStyle from 'primevue/tab/style';\n\nexport default {\n name: 'BaseTab',\n extends: BaseComponent,\n props: {\n value: {\n type: [String, Number],\n default: undefined\n },\n disabled: {\n type: Boolean,\n default: false\n },\n as: {\n type: [String, Object],\n default: 'BUTTON'\n },\n asChild: {\n type: Boolean,\n default: false\n }\n },\n style: TabStyle,\n provide() {\n return {\n $pcTab: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <component v-if=\"!asChild\" :is=\"as\" v-ripple :class=\"cx('root')\" :data-p=\"dataP\" @click=\"onClick\" v-bind=\"attrs\">\n <slot></slot>\n </component>\n <slot v-else :dataP=\"dataP\" :class=\"cx('root')\" :active=\"active\" :a11yAttrs=\"a11yAttrs\" :onClick=\"onClick\"></slot>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { findSingle, focus, getAttribute } from '@primeuix/utils/dom';\nimport { equals } from '@primeuix/utils/object';\nimport Ripple from 'primevue/ripple';\nimport { mergeProps } from 'vue';\nimport BaseTab from './BaseTab.vue';\n\nexport default {\n name: 'Tab',\n extends: BaseTab,\n inheritAttrs: false,\n inject: ['$pcTabs', '$pcTabList'],\n methods: {\n onFocus() {\n this.$pcTabs.selectOnFocus && this.changeActiveValue();\n },\n onClick() {\n this.changeActiveValue();\n },\n onKeydown(event) {\n switch (event.code) {\n case 'ArrowRight':\n this.onArrowRightKey(event);\n break;\n\n case 'ArrowLeft':\n this.onArrowLeftKey(event);\n break;\n\n case 'Home':\n this.onHomeKey(event);\n break;\n\n case 'End':\n this.onEndKey(event);\n break;\n\n case 'PageDown':\n this.onPageDownKey(event);\n break;\n\n case 'PageUp':\n this.onPageUpKey(event);\n break;\n\n case 'Enter':\n case 'NumpadEnter':\n case 'Space':\n this.onEnterKey(event);\n break;\n\n default:\n break;\n }\n },\n onArrowRightKey(event) {\n const nextTab = this.findNextTab(event.currentTarget);\n\n nextTab ? this.changeFocusedTab(event, nextTab) : this.onHomeKey(event);\n event.preventDefault();\n },\n onArrowLeftKey(event) {\n const prevTab = this.findPrevTab(event.currentTarget);\n\n prevTab ? this.changeFocusedTab(event, prevTab) : this.onEndKey(event);\n event.preventDefault();\n },\n onHomeKey(event) {\n const firstTab = this.findFirstTab();\n\n this.changeFocusedTab(event, firstTab);\n event.preventDefault();\n },\n onEndKey(event) {\n const lastTab = this.findLastTab();\n\n this.changeFocusedTab(event, lastTab);\n event.preventDefault();\n },\n onPageDownKey(event) {\n this.scrollInView(this.findLastTab());\n event.preventDefault();\n },\n onPageUpKey(event) {\n this.scrollInView(this.findFirstTab());\n event.preventDefault();\n },\n onEnterKey(event) {\n this.changeActiveValue();\n event.preventDefault();\n },\n findNextTab(tabElement, selfCheck = false) {\n const element = selfCheck ? tabElement : tabElement.nextElementSibling;\n\n return element ? (getAttribute(element, 'data-p-disabled') || getAttribute(element, 'data-pc-section') === 'activebar' ? this.findNextTab(element) : findSingle(element, '[data-pc-name=\"tab\"]')) : null;\n },\n findPrevTab(tabElement, selfCheck = false) {\n const element = selfCheck ? tabElement : tabElement.previousElementSibling;\n\n return element ? (getAttribute(element, 'data-p-disabled') || getAttribute(element, 'data-pc-section') === 'activebar' ? this.findPrevTab(element) : findSingle(element, '[data-pc-name=\"tab\"]')) : null;\n },\n findFirstTab() {\n return this.findNextTab(this.$pcTabList.$refs.tabs.firstElementChild, true);\n },\n findLastTab() {\n return this.findPrevTab(this.$pcTabList.$refs.tabs.lastElementChild, true);\n },\n changeActiveValue() {\n this.$pcTabs.updateValue(this.value);\n },\n changeFocusedTab(event, element) {\n focus(element);\n this.scrollInView(element);\n },\n scrollInView(element) {\n element?.scrollIntoView?.({ block: 'nearest' });\n }\n },\n computed: {\n active() {\n return equals(this.$pcTabs?.d_value, this.value);\n },\n id() {\n return `${this.$pcTabs?.$id}_tab_${this.value}`;\n },\n ariaControls() {\n return `${this.$pcTabs?.$id}_tabpanel_${this.value}`;\n },\n attrs() {\n return mergeProps(this.asAttrs, this.a11yAttrs, this.ptmi('root', this.ptParams));\n },\n asAttrs() {\n return this.as === 'BUTTON' ? { type: 'button', disabled: this.disabled } : undefined;\n },\n a11yAttrs() {\n return {\n id: this.id,\n tabindex: this.active ? this.$pcTabs.tabindex : -1,\n role: 'tab',\n 'aria-selected': this.active,\n 'aria-controls': this.ariaControls,\n 'data-pc-name': 'tab',\n 'data-p-disabled': this.disabled,\n 'data-p-active': this.active,\n onFocus: this.onFocus,\n onKeydown: this.onKeydown\n };\n },\n ptParams() {\n return {\n context: {\n active: this.active\n }\n };\n },\n dataP() {\n return cn({\n active: this.active\n });\n }\n },\n directives: {\n ripple: Ripple\n }\n};\n</script>\n","<template>\n <component v-if=\"!asChild\" :is=\"as\" v-ripple :class=\"cx('root')\" :data-p=\"dataP\" @click=\"onClick\" v-bind=\"attrs\">\n <slot></slot>\n </component>\n <slot v-else :dataP=\"dataP\" :class=\"cx('root')\" :active=\"active\" :a11yAttrs=\"a11yAttrs\" :onClick=\"onClick\"></slot>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { findSingle, focus, getAttribute } from '@primeuix/utils/dom';\nimport { equals } from '@primeuix/utils/object';\nimport Ripple from 'primevue/ripple';\nimport { mergeProps } from 'vue';\nimport BaseTab from './BaseTab.vue';\n\nexport default {\n name: 'Tab',\n extends: BaseTab,\n inheritAttrs: false,\n inject: ['$pcTabs', '$pcTabList'],\n methods: {\n onFocus() {\n this.$pcTabs.selectOnFocus && this.changeActiveValue();\n },\n onClick() {\n this.changeActiveValue();\n },\n onKeydown(event) {\n switch (event.code) {\n case 'ArrowRight':\n this.onArrowRightKey(event);\n break;\n\n case 'ArrowLeft':\n this.onArrowLeftKey(event);\n break;\n\n case 'Home':\n this.onHomeKey(event);\n break;\n\n case 'End':\n this.onEndKey(event);\n break;\n\n case 'PageDown':\n this.onPageDownKey(event);\n break;\n\n case 'PageUp':\n this.onPageUpKey(event);\n break;\n\n case 'Enter':\n case 'NumpadEnter':\n case 'Space':\n this.onEnterKey(event);\n break;\n\n default:\n break;\n }\n },\n onArrowRightKey(event) {\n const nextTab = this.findNextTab(event.currentTarget);\n\n nextTab ? this.changeFocusedTab(event, nextTab) : this.onHomeKey(event);\n event.preventDefault();\n },\n onArrowLeftKey(event) {\n const prevTab = this.findPrevTab(event.currentTarget);\n\n prevTab ? this.changeFocusedTab(event, prevTab) : this.onEndKey(event);\n event.preventDefault();\n },\n onHomeKey(event) {\n const firstTab = this.findFirstTab();\n\n this.changeFocusedTab(event, firstTab);\n event.preventDefault();\n },\n onEndKey(event) {\n const lastTab = this.findLastTab();\n\n this.changeFocusedTab(event, lastTab);\n event.preventDefault();\n },\n onPageDownKey(event) {\n this.scrollInView(this.findLastTab());\n event.preventDefault();\n },\n onPageUpKey(event) {\n this.scrollInView(this.findFirstTab());\n event.preventDefault();\n },\n onEnterKey(event) {\n this.changeActiveValue();\n event.preventDefault();\n },\n findNextTab(tabElement, selfCheck = false) {\n const element = selfCheck ? tabElement : tabElement.nextElementSibling;\n\n return element ? (getAttribute(element, 'data-p-disabled') || getAttribute(element, 'data-pc-section') === 'activebar' ? this.findNextTab(element) : findSingle(element, '[data-pc-name=\"tab\"]')) : null;\n },\n findPrevTab(tabElement, selfCheck = false) {\n const element = selfCheck ? tabElement : tabElement.previousElementSibling;\n\n return element ? (getAttribute(element, 'data-p-disabled') || getAttribute(element, 'data-pc-section') === 'activebar' ? this.findPrevTab(element) : findSingle(element, '[data-pc-name=\"tab\"]')) : null;\n },\n findFirstTab() {\n return this.findNextTab(this.$pcTabList.$refs.tabs.firstElementChild, true);\n },\n findLastTab() {\n return this.findPrevTab(this.$pcTabList.$refs.tabs.lastElementChild, true);\n },\n changeActiveValue() {\n this.$pcTabs.updateValue(this.value);\n },\n changeFocusedTab(event, element) {\n focus(element);\n this.scrollInView(element);\n },\n scrollInView(element) {\n element?.scrollIntoView?.({ block: 'nearest' });\n }\n },\n computed: {\n active() {\n return equals(this.$pcTabs?.d_value, this.value);\n },\n id() {\n return `${this.$pcTabs?.$id}_tab_${this.value}`;\n },\n ariaControls() {\n return `${this.$pcTabs?.$id}_tabpanel_${this.value}`;\n },\n attrs() {\n return mergeProps(this.asAttrs, this.a11yAttrs, this.ptmi('root', this.ptParams));\n },\n asAttrs() {\n return this.as === 'BUTTON' ? { type: 'button', disabled: this.disabled } : undefined;\n },\n a11yAttrs() {\n return {\n id: this.id,\n tabindex: this.active ? this.$pcTabs.tabindex : -1,\n role: 'tab',\n 'aria-selected': this.active,\n 'aria-controls': this.ariaControls,\n 'data-pc-name': 'tab',\n 'data-p-disabled': this.disabled,\n 'data-p-active': this.active,\n onFocus: this.onFocus,\n onKeydown: this.onKeydown\n };\n },\n ptParams() {\n return {\n context: {\n active: this.active\n }\n };\n },\n dataP() {\n return cn({\n active: this.active\n });\n }\n },\n directives: {\n ripple: Ripple\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","value","type","String","Number","undefined","disabled","Boolean","as","Object","asChild","style","TabStyle","provide","$pcTab","$parentInstance","BaseTab","inheritAttrs","inject","methods","onFocus","$pcTabs","selectOnFocus","changeActiveValue","onClick","onKeydown","event","code","onArrowRightKey","onArrowLeftKey","onHomeKey","onEndKey","onPageDownKey","onPageUpKey","onEnterKey","nextTab","findNextTab","currentTarget","changeFocusedTab","preventDefault","prevTab","findPrevTab","firstTab","findFirstTab","lastTab","findLastTab","scrollInView","tabElement","selfCheck","element","nextElementSibling","getAttribute","findSingle","previousElementSibling","$pcTabList","$refs","tabs","firstElementChild","lastElementChild","updateValue","focus","_element$scrollIntoVi","scrollIntoView","call","block","computed","active","_this$$pcTabs","equals","d_value","id","_this$$pcTabs2","concat","$id","ariaControls","_this$$pcTabs3","attrs","mergeProps","asAttrs","a11yAttrs","ptmi","ptParams","tabindex","role","context","dataP","cn","directives","ripple","Ripple","_ctx","_createBlock","_resolveDynamicComponent","_mergeProps","cx","$options","_renderSlot","$slots"],"mappings":"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"}
@@ -123,6 +123,9 @@ export default {
123
123
  },
124
124
  updateInkBar() {
125
125
  const { content, inkbar, tabs } = this.$refs;
126
+
127
+ if (!inkbar) return;
128
+
126
129
  const activeTab = findSingle(content, '[data-pc-name="tab"][data-p-active="true"]');
127
130
 
128
131
  if (this.$pcTabs.isVertical()) {
package/tablist/index.mjs CHANGED
@@ -102,6 +102,7 @@ var script = {
102
102
  content = _this$$refs.content,
103
103
  inkbar = _this$$refs.inkbar,
104
104
  tabs = _this$$refs.tabs;
105
+ if (!inkbar) return;
105
106
  var activeTab = findSingle(content, '[data-pc-name="tab"][data-p-active="true"]');
106
107
  if (this.$pcTabs.isVertical()) {
107
108
  inkbar.style.height = getOuterHeight(activeTab) + 'px';
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/tablist/BaseTabList.vue","../../src/tablist/TabList.vue","../../src/tablist/TabList.vue?vue&type=template&id=5d61fdd6&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport TabListStyle from 'primevue/tablist/style';\n\nexport default {\n name: 'BaseTabList',\n extends: BaseComponent,\n props: {},\n style: TabListStyle,\n provide() {\n return {\n $pcTabList: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div ref=\"list\" :class=\"cx('root')\" :data-p=\"dataP\" v-bind=\"ptmi('root')\">\n <button\n v-if=\"showNavigators && isPrevButtonEnabled\"\n ref=\"prevButton\"\n type=\"button\"\n v-ripple\n :class=\"cx('prevButton')\"\n :aria-label=\"prevButtonAriaLabel\"\n :tabindex=\"$pcTabs.tabindex\"\n @click=\"onPrevButtonClick\"\n v-bind=\"ptm('prevButton')\"\n data-pc-group-section=\"navigator\"\n >\n <component :is=\"templates.previcon || 'ChevronLeftIcon'\" aria-hidden=\"true\" v-bind=\"ptm('prevIcon')\" />\n </button>\n <div ref=\"content\" :class=\"cx('content')\" @scroll=\"onScroll\" :data-p=\"dataP\" v-bind=\"ptm('content')\">\n <div ref=\"tabs\" :class=\"cx('tabList')\" role=\"tablist\" :aria-orientation=\"$pcTabs.orientation || 'horizontal'\" v-bind=\"ptm('tabList')\">\n <slot></slot>\n <span ref=\"inkbar\" :class=\"cx('activeBar')\" role=\"presentation\" aria-hidden=\"true\" v-bind=\"ptm('activeBar')\"></span>\n </div>\n </div>\n <button\n v-if=\"showNavigators && isNextButtonEnabled\"\n ref=\"nextButton\"\n type=\"button\"\n v-ripple\n :class=\"cx('nextButton')\"\n :aria-label=\"nextButtonAriaLabel\"\n :tabindex=\"$pcTabs.tabindex\"\n @click=\"onNextButtonClick\"\n v-bind=\"ptm('nextButton')\"\n data-pc-group-section=\"navigator\"\n >\n <component :is=\"templates.nexticon || 'ChevronRightIcon'\" aria-hidden=\"true\" v-bind=\"ptm('nextIcon')\" />\n </button>\n </div>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { findSingle, getHeight, getOffset, getOuterHeight, getOuterWidth, getWidth, isRTL } from '@primeuix/utils/dom';\nimport ChevronLeftIcon from '@primevue/icons/chevronleft';\nimport ChevronRightIcon from '@primevue/icons/chevronright';\nimport Ripple from 'primevue/ripple';\nimport BaseTabList from './BaseTabList.vue';\n\nexport default {\n name: 'TabList',\n extends: BaseTabList,\n inheritAttrs: false,\n inject: ['$pcTabs'],\n data() {\n return {\n isPrevButtonEnabled: false,\n isNextButtonEnabled: true\n };\n },\n resizeObserver: undefined,\n watch: {\n showNavigators(newValue) {\n newValue ? this.bindResizeObserver() : this.unbindResizeObserver();\n },\n activeValue: {\n flush: 'post',\n handler() {\n this.updateInkBar();\n }\n }\n },\n mounted() {\n setTimeout(() => {\n this.updateInkBar();\n }, 150);\n\n if (this.showNavigators) {\n this.updateButtonState();\n this.bindResizeObserver();\n }\n },\n updated() {\n this.showNavigators && this.updateButtonState();\n },\n beforeUnmount() {\n this.unbindResizeObserver();\n },\n methods: {\n onScroll(event) {\n this.showNavigators && this.updateButtonState();\n\n event.preventDefault();\n },\n onPrevButtonClick() {\n const content = this.$refs.content;\n const buttonWidths = this.getVisibleButtonWidths();\n const width = getWidth(content) - buttonWidths;\n const currentScrollLeft = Math.abs(content.scrollLeft);\n const scrollStep = width * 0.8;\n const targetScrollLeft = currentScrollLeft - scrollStep;\n const scrollLeft = Math.max(targetScrollLeft, 0);\n\n content.scrollLeft = isRTL(content) ? -1 * scrollLeft : scrollLeft;\n },\n onNextButtonClick() {\n const content = this.$refs.content;\n const buttonWidths = this.getVisibleButtonWidths();\n const width = getWidth(content) - buttonWidths;\n const currentScrollLeft = Math.abs(content.scrollLeft);\n const scrollStep = width * 0.8;\n const targetScrollLeft = currentScrollLeft + scrollStep;\n const maxScrollLeft = content.scrollWidth - width;\n const scrollLeft = Math.min(targetScrollLeft, maxScrollLeft);\n\n content.scrollLeft = isRTL(content) ? -1 * scrollLeft : scrollLeft;\n },\n bindResizeObserver() {\n this.resizeObserver = new ResizeObserver(() => this.updateButtonState());\n this.resizeObserver.observe(this.$refs.list);\n },\n unbindResizeObserver() {\n this.resizeObserver?.unobserve(this.$refs.list);\n this.resizeObserver = undefined;\n },\n updateInkBar() {\n const { content, inkbar, tabs } = this.$refs;\n const activeTab = findSingle(content, '[data-pc-name=\"tab\"][data-p-active=\"true\"]');\n\n if (this.$pcTabs.isVertical()) {\n inkbar.style.height = getOuterHeight(activeTab) + 'px';\n inkbar.style.top = getOffset(activeTab).top - getOffset(tabs).top + 'px';\n } else {\n inkbar.style.width = getOuterWidth(activeTab) + 'px';\n inkbar.style.left = getOffset(activeTab).left - getOffset(tabs).left + 'px';\n }\n },\n updateButtonState() {\n const { list, content } = this.$refs;\n const { scrollTop, scrollWidth, scrollHeight, offsetWidth, offsetHeight } = content;\n const scrollLeft = Math.abs(content.scrollLeft);\n const [width, height] = [getWidth(content), getHeight(content)];\n\n if (this.$pcTabs.isVertical()) {\n this.isPrevButtonEnabled = scrollTop !== 0;\n this.isNextButtonEnabled = list.offsetHeight >= offsetHeight && parseInt(scrollTop) !== scrollHeight - height;\n } else {\n this.isPrevButtonEnabled = scrollLeft !== 0;\n this.isNextButtonEnabled = list.offsetWidth >= offsetWidth && parseInt(scrollLeft) !== scrollWidth - width;\n }\n },\n getVisibleButtonWidths() {\n const { prevButton, nextButton } = this.$refs;\n let width = 0;\n\n if (this.showNavigators) {\n width = (prevButton?.offsetWidth || 0) + (nextButton?.offsetWidth || 0);\n }\n\n return width;\n }\n },\n computed: {\n templates() {\n return this.$pcTabs.$slots;\n },\n activeValue() {\n return this.$pcTabs.d_value;\n },\n showNavigators() {\n return this.$pcTabs.scrollable && this.$pcTabs.showNavigators;\n },\n prevButtonAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.previous : undefined;\n },\n nextButtonAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.next : undefined;\n },\n dataP() {\n return cn({\n scrollable: this.$pcTabs.scrollable\n });\n }\n },\n components: {\n ChevronLeftIcon,\n ChevronRightIcon\n },\n directives: {\n ripple: Ripple\n }\n};\n</script>\n","<template>\n <div ref=\"list\" :class=\"cx('root')\" :data-p=\"dataP\" v-bind=\"ptmi('root')\">\n <button\n v-if=\"showNavigators && isPrevButtonEnabled\"\n ref=\"prevButton\"\n type=\"button\"\n v-ripple\n :class=\"cx('prevButton')\"\n :aria-label=\"prevButtonAriaLabel\"\n :tabindex=\"$pcTabs.tabindex\"\n @click=\"onPrevButtonClick\"\n v-bind=\"ptm('prevButton')\"\n data-pc-group-section=\"navigator\"\n >\n <component :is=\"templates.previcon || 'ChevronLeftIcon'\" aria-hidden=\"true\" v-bind=\"ptm('prevIcon')\" />\n </button>\n <div ref=\"content\" :class=\"cx('content')\" @scroll=\"onScroll\" :data-p=\"dataP\" v-bind=\"ptm('content')\">\n <div ref=\"tabs\" :class=\"cx('tabList')\" role=\"tablist\" :aria-orientation=\"$pcTabs.orientation || 'horizontal'\" v-bind=\"ptm('tabList')\">\n <slot></slot>\n <span ref=\"inkbar\" :class=\"cx('activeBar')\" role=\"presentation\" aria-hidden=\"true\" v-bind=\"ptm('activeBar')\"></span>\n </div>\n </div>\n <button\n v-if=\"showNavigators && isNextButtonEnabled\"\n ref=\"nextButton\"\n type=\"button\"\n v-ripple\n :class=\"cx('nextButton')\"\n :aria-label=\"nextButtonAriaLabel\"\n :tabindex=\"$pcTabs.tabindex\"\n @click=\"onNextButtonClick\"\n v-bind=\"ptm('nextButton')\"\n data-pc-group-section=\"navigator\"\n >\n <component :is=\"templates.nexticon || 'ChevronRightIcon'\" aria-hidden=\"true\" v-bind=\"ptm('nextIcon')\" />\n </button>\n </div>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { findSingle, getHeight, getOffset, getOuterHeight, getOuterWidth, getWidth, isRTL } from '@primeuix/utils/dom';\nimport ChevronLeftIcon from '@primevue/icons/chevronleft';\nimport ChevronRightIcon from '@primevue/icons/chevronright';\nimport Ripple from 'primevue/ripple';\nimport BaseTabList from './BaseTabList.vue';\n\nexport default {\n name: 'TabList',\n extends: BaseTabList,\n inheritAttrs: false,\n inject: ['$pcTabs'],\n data() {\n return {\n isPrevButtonEnabled: false,\n isNextButtonEnabled: true\n };\n },\n resizeObserver: undefined,\n watch: {\n showNavigators(newValue) {\n newValue ? this.bindResizeObserver() : this.unbindResizeObserver();\n },\n activeValue: {\n flush: 'post',\n handler() {\n this.updateInkBar();\n }\n }\n },\n mounted() {\n setTimeout(() => {\n this.updateInkBar();\n }, 150);\n\n if (this.showNavigators) {\n this.updateButtonState();\n this.bindResizeObserver();\n }\n },\n updated() {\n this.showNavigators && this.updateButtonState();\n },\n beforeUnmount() {\n this.unbindResizeObserver();\n },\n methods: {\n onScroll(event) {\n this.showNavigators && this.updateButtonState();\n\n event.preventDefault();\n },\n onPrevButtonClick() {\n const content = this.$refs.content;\n const buttonWidths = this.getVisibleButtonWidths();\n const width = getWidth(content) - buttonWidths;\n const currentScrollLeft = Math.abs(content.scrollLeft);\n const scrollStep = width * 0.8;\n const targetScrollLeft = currentScrollLeft - scrollStep;\n const scrollLeft = Math.max(targetScrollLeft, 0);\n\n content.scrollLeft = isRTL(content) ? -1 * scrollLeft : scrollLeft;\n },\n onNextButtonClick() {\n const content = this.$refs.content;\n const buttonWidths = this.getVisibleButtonWidths();\n const width = getWidth(content) - buttonWidths;\n const currentScrollLeft = Math.abs(content.scrollLeft);\n const scrollStep = width * 0.8;\n const targetScrollLeft = currentScrollLeft + scrollStep;\n const maxScrollLeft = content.scrollWidth - width;\n const scrollLeft = Math.min(targetScrollLeft, maxScrollLeft);\n\n content.scrollLeft = isRTL(content) ? -1 * scrollLeft : scrollLeft;\n },\n bindResizeObserver() {\n this.resizeObserver = new ResizeObserver(() => this.updateButtonState());\n this.resizeObserver.observe(this.$refs.list);\n },\n unbindResizeObserver() {\n this.resizeObserver?.unobserve(this.$refs.list);\n this.resizeObserver = undefined;\n },\n updateInkBar() {\n const { content, inkbar, tabs } = this.$refs;\n const activeTab = findSingle(content, '[data-pc-name=\"tab\"][data-p-active=\"true\"]');\n\n if (this.$pcTabs.isVertical()) {\n inkbar.style.height = getOuterHeight(activeTab) + 'px';\n inkbar.style.top = getOffset(activeTab).top - getOffset(tabs).top + 'px';\n } else {\n inkbar.style.width = getOuterWidth(activeTab) + 'px';\n inkbar.style.left = getOffset(activeTab).left - getOffset(tabs).left + 'px';\n }\n },\n updateButtonState() {\n const { list, content } = this.$refs;\n const { scrollTop, scrollWidth, scrollHeight, offsetWidth, offsetHeight } = content;\n const scrollLeft = Math.abs(content.scrollLeft);\n const [width, height] = [getWidth(content), getHeight(content)];\n\n if (this.$pcTabs.isVertical()) {\n this.isPrevButtonEnabled = scrollTop !== 0;\n this.isNextButtonEnabled = list.offsetHeight >= offsetHeight && parseInt(scrollTop) !== scrollHeight - height;\n } else {\n this.isPrevButtonEnabled = scrollLeft !== 0;\n this.isNextButtonEnabled = list.offsetWidth >= offsetWidth && parseInt(scrollLeft) !== scrollWidth - width;\n }\n },\n getVisibleButtonWidths() {\n const { prevButton, nextButton } = this.$refs;\n let width = 0;\n\n if (this.showNavigators) {\n width = (prevButton?.offsetWidth || 0) + (nextButton?.offsetWidth || 0);\n }\n\n return width;\n }\n },\n computed: {\n templates() {\n return this.$pcTabs.$slots;\n },\n activeValue() {\n return this.$pcTabs.d_value;\n },\n showNavigators() {\n return this.$pcTabs.scrollable && this.$pcTabs.showNavigators;\n },\n prevButtonAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.previous : undefined;\n },\n nextButtonAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.next : undefined;\n },\n dataP() {\n return cn({\n scrollable: this.$pcTabs.scrollable\n });\n }\n },\n components: {\n ChevronLeftIcon,\n ChevronRightIcon\n },\n directives: {\n ripple: Ripple\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","style","TabListStyle","provide","$pcTabList","$parentInstance","BaseTabList","inheritAttrs","inject","data","isPrevButtonEnabled","isNextButtonEnabled","resizeObserver","undefined","watch","showNavigators","newValue","bindResizeObserver","unbindResizeObserver","activeValue","flush","handler","updateInkBar","mounted","_this","setTimeout","updateButtonState","updated","beforeUnmount","methods","onScroll","event","preventDefault","onPrevButtonClick","content","$refs","buttonWidths","getVisibleButtonWidths","width","getWidth","currentScrollLeft","Math","abs","scrollLeft","scrollStep","targetScrollLeft","max","isRTL","onNextButtonClick","maxScrollLeft","scrollWidth","min","_this2","ResizeObserver","observe","list","_this$resizeObserver","unobserve","_this$$refs","inkbar","tabs","activeTab","findSingle","$pcTabs","isVertical","height","getOuterHeight","top","getOffset","getOuterWidth","left","_this$$refs2","scrollTop","scrollHeight","offsetWidth","offsetHeight","_ref","getHeight","parseInt","_this$$refs3","prevButton","nextButton","computed","templates","$slots","d_value","scrollable","prevButtonAriaLabel","$primevue","config","locale","aria","previous","nextButtonAriaLabel","next","dataP","cn","components","ChevronLeftIcon","ChevronRightIcon","directives","ripple","Ripple","_openBlock","_createElementBlock","_mergeProps","ref","_ctx","cx","$options","ptmi","$data","_withDirectives","type","tabindex","onClick","apply","arguments","ptm","_createBlock","_resolveDynamicComponent","previcon","_createElementVNode","role","orientation","_renderSlot","nexticon"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/tablist/BaseTabList.vue","../../src/tablist/TabList.vue","../../src/tablist/TabList.vue?vue&type=template&id=2e7eb3bb&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport TabListStyle from 'primevue/tablist/style';\n\nexport default {\n name: 'BaseTabList',\n extends: BaseComponent,\n props: {},\n style: TabListStyle,\n provide() {\n return {\n $pcTabList: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div ref=\"list\" :class=\"cx('root')\" :data-p=\"dataP\" v-bind=\"ptmi('root')\">\n <button\n v-if=\"showNavigators && isPrevButtonEnabled\"\n ref=\"prevButton\"\n type=\"button\"\n v-ripple\n :class=\"cx('prevButton')\"\n :aria-label=\"prevButtonAriaLabel\"\n :tabindex=\"$pcTabs.tabindex\"\n @click=\"onPrevButtonClick\"\n v-bind=\"ptm('prevButton')\"\n data-pc-group-section=\"navigator\"\n >\n <component :is=\"templates.previcon || 'ChevronLeftIcon'\" aria-hidden=\"true\" v-bind=\"ptm('prevIcon')\" />\n </button>\n <div ref=\"content\" :class=\"cx('content')\" @scroll=\"onScroll\" :data-p=\"dataP\" v-bind=\"ptm('content')\">\n <div ref=\"tabs\" :class=\"cx('tabList')\" role=\"tablist\" :aria-orientation=\"$pcTabs.orientation || 'horizontal'\" v-bind=\"ptm('tabList')\">\n <slot></slot>\n <span ref=\"inkbar\" :class=\"cx('activeBar')\" role=\"presentation\" aria-hidden=\"true\" v-bind=\"ptm('activeBar')\"></span>\n </div>\n </div>\n <button\n v-if=\"showNavigators && isNextButtonEnabled\"\n ref=\"nextButton\"\n type=\"button\"\n v-ripple\n :class=\"cx('nextButton')\"\n :aria-label=\"nextButtonAriaLabel\"\n :tabindex=\"$pcTabs.tabindex\"\n @click=\"onNextButtonClick\"\n v-bind=\"ptm('nextButton')\"\n data-pc-group-section=\"navigator\"\n >\n <component :is=\"templates.nexticon || 'ChevronRightIcon'\" aria-hidden=\"true\" v-bind=\"ptm('nextIcon')\" />\n </button>\n </div>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { findSingle, getHeight, getOffset, getOuterHeight, getOuterWidth, getWidth, isRTL } from '@primeuix/utils/dom';\nimport ChevronLeftIcon from '@primevue/icons/chevronleft';\nimport ChevronRightIcon from '@primevue/icons/chevronright';\nimport Ripple from 'primevue/ripple';\nimport BaseTabList from './BaseTabList.vue';\n\nexport default {\n name: 'TabList',\n extends: BaseTabList,\n inheritAttrs: false,\n inject: ['$pcTabs'],\n data() {\n return {\n isPrevButtonEnabled: false,\n isNextButtonEnabled: true\n };\n },\n resizeObserver: undefined,\n watch: {\n showNavigators(newValue) {\n newValue ? this.bindResizeObserver() : this.unbindResizeObserver();\n },\n activeValue: {\n flush: 'post',\n handler() {\n this.updateInkBar();\n }\n }\n },\n mounted() {\n setTimeout(() => {\n this.updateInkBar();\n }, 150);\n\n if (this.showNavigators) {\n this.updateButtonState();\n this.bindResizeObserver();\n }\n },\n updated() {\n this.showNavigators && this.updateButtonState();\n },\n beforeUnmount() {\n this.unbindResizeObserver();\n },\n methods: {\n onScroll(event) {\n this.showNavigators && this.updateButtonState();\n\n event.preventDefault();\n },\n onPrevButtonClick() {\n const content = this.$refs.content;\n const buttonWidths = this.getVisibleButtonWidths();\n const width = getWidth(content) - buttonWidths;\n const currentScrollLeft = Math.abs(content.scrollLeft);\n const scrollStep = width * 0.8;\n const targetScrollLeft = currentScrollLeft - scrollStep;\n const scrollLeft = Math.max(targetScrollLeft, 0);\n\n content.scrollLeft = isRTL(content) ? -1 * scrollLeft : scrollLeft;\n },\n onNextButtonClick() {\n const content = this.$refs.content;\n const buttonWidths = this.getVisibleButtonWidths();\n const width = getWidth(content) - buttonWidths;\n const currentScrollLeft = Math.abs(content.scrollLeft);\n const scrollStep = width * 0.8;\n const targetScrollLeft = currentScrollLeft + scrollStep;\n const maxScrollLeft = content.scrollWidth - width;\n const scrollLeft = Math.min(targetScrollLeft, maxScrollLeft);\n\n content.scrollLeft = isRTL(content) ? -1 * scrollLeft : scrollLeft;\n },\n bindResizeObserver() {\n this.resizeObserver = new ResizeObserver(() => this.updateButtonState());\n this.resizeObserver.observe(this.$refs.list);\n },\n unbindResizeObserver() {\n this.resizeObserver?.unobserve(this.$refs.list);\n this.resizeObserver = undefined;\n },\n updateInkBar() {\n const { content, inkbar, tabs } = this.$refs;\n\n if (!inkbar) return;\n\n const activeTab = findSingle(content, '[data-pc-name=\"tab\"][data-p-active=\"true\"]');\n\n if (this.$pcTabs.isVertical()) {\n inkbar.style.height = getOuterHeight(activeTab) + 'px';\n inkbar.style.top = getOffset(activeTab).top - getOffset(tabs).top + 'px';\n } else {\n inkbar.style.width = getOuterWidth(activeTab) + 'px';\n inkbar.style.left = getOffset(activeTab).left - getOffset(tabs).left + 'px';\n }\n },\n updateButtonState() {\n const { list, content } = this.$refs;\n const { scrollTop, scrollWidth, scrollHeight, offsetWidth, offsetHeight } = content;\n const scrollLeft = Math.abs(content.scrollLeft);\n const [width, height] = [getWidth(content), getHeight(content)];\n\n if (this.$pcTabs.isVertical()) {\n this.isPrevButtonEnabled = scrollTop !== 0;\n this.isNextButtonEnabled = list.offsetHeight >= offsetHeight && parseInt(scrollTop) !== scrollHeight - height;\n } else {\n this.isPrevButtonEnabled = scrollLeft !== 0;\n this.isNextButtonEnabled = list.offsetWidth >= offsetWidth && parseInt(scrollLeft) !== scrollWidth - width;\n }\n },\n getVisibleButtonWidths() {\n const { prevButton, nextButton } = this.$refs;\n let width = 0;\n\n if (this.showNavigators) {\n width = (prevButton?.offsetWidth || 0) + (nextButton?.offsetWidth || 0);\n }\n\n return width;\n }\n },\n computed: {\n templates() {\n return this.$pcTabs.$slots;\n },\n activeValue() {\n return this.$pcTabs.d_value;\n },\n showNavigators() {\n return this.$pcTabs.scrollable && this.$pcTabs.showNavigators;\n },\n prevButtonAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.previous : undefined;\n },\n nextButtonAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.next : undefined;\n },\n dataP() {\n return cn({\n scrollable: this.$pcTabs.scrollable\n });\n }\n },\n components: {\n ChevronLeftIcon,\n ChevronRightIcon\n },\n directives: {\n ripple: Ripple\n }\n};\n</script>\n","<template>\n <div ref=\"list\" :class=\"cx('root')\" :data-p=\"dataP\" v-bind=\"ptmi('root')\">\n <button\n v-if=\"showNavigators && isPrevButtonEnabled\"\n ref=\"prevButton\"\n type=\"button\"\n v-ripple\n :class=\"cx('prevButton')\"\n :aria-label=\"prevButtonAriaLabel\"\n :tabindex=\"$pcTabs.tabindex\"\n @click=\"onPrevButtonClick\"\n v-bind=\"ptm('prevButton')\"\n data-pc-group-section=\"navigator\"\n >\n <component :is=\"templates.previcon || 'ChevronLeftIcon'\" aria-hidden=\"true\" v-bind=\"ptm('prevIcon')\" />\n </button>\n <div ref=\"content\" :class=\"cx('content')\" @scroll=\"onScroll\" :data-p=\"dataP\" v-bind=\"ptm('content')\">\n <div ref=\"tabs\" :class=\"cx('tabList')\" role=\"tablist\" :aria-orientation=\"$pcTabs.orientation || 'horizontal'\" v-bind=\"ptm('tabList')\">\n <slot></slot>\n <span ref=\"inkbar\" :class=\"cx('activeBar')\" role=\"presentation\" aria-hidden=\"true\" v-bind=\"ptm('activeBar')\"></span>\n </div>\n </div>\n <button\n v-if=\"showNavigators && isNextButtonEnabled\"\n ref=\"nextButton\"\n type=\"button\"\n v-ripple\n :class=\"cx('nextButton')\"\n :aria-label=\"nextButtonAriaLabel\"\n :tabindex=\"$pcTabs.tabindex\"\n @click=\"onNextButtonClick\"\n v-bind=\"ptm('nextButton')\"\n data-pc-group-section=\"navigator\"\n >\n <component :is=\"templates.nexticon || 'ChevronRightIcon'\" aria-hidden=\"true\" v-bind=\"ptm('nextIcon')\" />\n </button>\n </div>\n</template>\n\n<script>\nimport { cn } from '@primeuix/utils';\nimport { findSingle, getHeight, getOffset, getOuterHeight, getOuterWidth, getWidth, isRTL } from '@primeuix/utils/dom';\nimport ChevronLeftIcon from '@primevue/icons/chevronleft';\nimport ChevronRightIcon from '@primevue/icons/chevronright';\nimport Ripple from 'primevue/ripple';\nimport BaseTabList from './BaseTabList.vue';\n\nexport default {\n name: 'TabList',\n extends: BaseTabList,\n inheritAttrs: false,\n inject: ['$pcTabs'],\n data() {\n return {\n isPrevButtonEnabled: false,\n isNextButtonEnabled: true\n };\n },\n resizeObserver: undefined,\n watch: {\n showNavigators(newValue) {\n newValue ? this.bindResizeObserver() : this.unbindResizeObserver();\n },\n activeValue: {\n flush: 'post',\n handler() {\n this.updateInkBar();\n }\n }\n },\n mounted() {\n setTimeout(() => {\n this.updateInkBar();\n }, 150);\n\n if (this.showNavigators) {\n this.updateButtonState();\n this.bindResizeObserver();\n }\n },\n updated() {\n this.showNavigators && this.updateButtonState();\n },\n beforeUnmount() {\n this.unbindResizeObserver();\n },\n methods: {\n onScroll(event) {\n this.showNavigators && this.updateButtonState();\n\n event.preventDefault();\n },\n onPrevButtonClick() {\n const content = this.$refs.content;\n const buttonWidths = this.getVisibleButtonWidths();\n const width = getWidth(content) - buttonWidths;\n const currentScrollLeft = Math.abs(content.scrollLeft);\n const scrollStep = width * 0.8;\n const targetScrollLeft = currentScrollLeft - scrollStep;\n const scrollLeft = Math.max(targetScrollLeft, 0);\n\n content.scrollLeft = isRTL(content) ? -1 * scrollLeft : scrollLeft;\n },\n onNextButtonClick() {\n const content = this.$refs.content;\n const buttonWidths = this.getVisibleButtonWidths();\n const width = getWidth(content) - buttonWidths;\n const currentScrollLeft = Math.abs(content.scrollLeft);\n const scrollStep = width * 0.8;\n const targetScrollLeft = currentScrollLeft + scrollStep;\n const maxScrollLeft = content.scrollWidth - width;\n const scrollLeft = Math.min(targetScrollLeft, maxScrollLeft);\n\n content.scrollLeft = isRTL(content) ? -1 * scrollLeft : scrollLeft;\n },\n bindResizeObserver() {\n this.resizeObserver = new ResizeObserver(() => this.updateButtonState());\n this.resizeObserver.observe(this.$refs.list);\n },\n unbindResizeObserver() {\n this.resizeObserver?.unobserve(this.$refs.list);\n this.resizeObserver = undefined;\n },\n updateInkBar() {\n const { content, inkbar, tabs } = this.$refs;\n\n if (!inkbar) return;\n\n const activeTab = findSingle(content, '[data-pc-name=\"tab\"][data-p-active=\"true\"]');\n\n if (this.$pcTabs.isVertical()) {\n inkbar.style.height = getOuterHeight(activeTab) + 'px';\n inkbar.style.top = getOffset(activeTab).top - getOffset(tabs).top + 'px';\n } else {\n inkbar.style.width = getOuterWidth(activeTab) + 'px';\n inkbar.style.left = getOffset(activeTab).left - getOffset(tabs).left + 'px';\n }\n },\n updateButtonState() {\n const { list, content } = this.$refs;\n const { scrollTop, scrollWidth, scrollHeight, offsetWidth, offsetHeight } = content;\n const scrollLeft = Math.abs(content.scrollLeft);\n const [width, height] = [getWidth(content), getHeight(content)];\n\n if (this.$pcTabs.isVertical()) {\n this.isPrevButtonEnabled = scrollTop !== 0;\n this.isNextButtonEnabled = list.offsetHeight >= offsetHeight && parseInt(scrollTop) !== scrollHeight - height;\n } else {\n this.isPrevButtonEnabled = scrollLeft !== 0;\n this.isNextButtonEnabled = list.offsetWidth >= offsetWidth && parseInt(scrollLeft) !== scrollWidth - width;\n }\n },\n getVisibleButtonWidths() {\n const { prevButton, nextButton } = this.$refs;\n let width = 0;\n\n if (this.showNavigators) {\n width = (prevButton?.offsetWidth || 0) + (nextButton?.offsetWidth || 0);\n }\n\n return width;\n }\n },\n computed: {\n templates() {\n return this.$pcTabs.$slots;\n },\n activeValue() {\n return this.$pcTabs.d_value;\n },\n showNavigators() {\n return this.$pcTabs.scrollable && this.$pcTabs.showNavigators;\n },\n prevButtonAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.previous : undefined;\n },\n nextButtonAriaLabel() {\n return this.$primevue.config.locale.aria ? this.$primevue.config.locale.aria.next : undefined;\n },\n dataP() {\n return cn({\n scrollable: this.$pcTabs.scrollable\n });\n }\n },\n components: {\n ChevronLeftIcon,\n ChevronRightIcon\n },\n directives: {\n ripple: Ripple\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","style","TabListStyle","provide","$pcTabList","$parentInstance","BaseTabList","inheritAttrs","inject","data","isPrevButtonEnabled","isNextButtonEnabled","resizeObserver","undefined","watch","showNavigators","newValue","bindResizeObserver","unbindResizeObserver","activeValue","flush","handler","updateInkBar","mounted","_this","setTimeout","updateButtonState","updated","beforeUnmount","methods","onScroll","event","preventDefault","onPrevButtonClick","content","$refs","buttonWidths","getVisibleButtonWidths","width","getWidth","currentScrollLeft","Math","abs","scrollLeft","scrollStep","targetScrollLeft","max","isRTL","onNextButtonClick","maxScrollLeft","scrollWidth","min","_this2","ResizeObserver","observe","list","_this$resizeObserver","unobserve","_this$$refs","inkbar","tabs","activeTab","findSingle","$pcTabs","isVertical","height","getOuterHeight","top","getOffset","getOuterWidth","left","_this$$refs2","scrollTop","scrollHeight","offsetWidth","offsetHeight","_ref","getHeight","parseInt","_this$$refs3","prevButton","nextButton","computed","templates","$slots","d_value","scrollable","prevButtonAriaLabel","$primevue","config","locale","aria","previous","nextButtonAriaLabel","next","dataP","cn","components","ChevronLeftIcon","ChevronRightIcon","directives","ripple","Ripple","_openBlock","_createElementBlock","_mergeProps","ref","_ctx","cx","$options","ptmi","$data","_withDirectives","type","tabindex","onClick","apply","arguments","ptm","_createBlock","_resolveDynamicComponent","previcon","_createElementVNode","role","orientation","_renderSlot","nexticon"],"mappings":"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"}
@@ -26,10 +26,10 @@ export default {
26
26
  return equals(this.$pcTabs?.d_value, this.value);
27
27
  },
28
28
  id() {
29
- return `${this.$pcTabs?.id}_tabpanel_${this.value}`;
29
+ return `${this.$pcTabs?.$id}_tabpanel_${this.value}`;
30
30
  },
31
31
  ariaLabelledby() {
32
- return `${this.$pcTabs?.id}_tab_${this.value}`;
32
+ return `${this.$pcTabs?.$id}_tab_${this.value}`;
33
33
  },
34
34
  attrs() {
35
35
  return mergeProps(this.a11yAttrs, this.ptmi('root', this.ptParams));
@@ -52,11 +52,11 @@ var script = {
52
52
  },
53
53
  id: function id() {
54
54
  var _this$$pcTabs2;
55
- return "".concat((_this$$pcTabs2 = this.$pcTabs) === null || _this$$pcTabs2 === void 0 ? void 0 : _this$$pcTabs2.id, "_tabpanel_").concat(this.value);
55
+ return "".concat((_this$$pcTabs2 = this.$pcTabs) === null || _this$$pcTabs2 === void 0 ? void 0 : _this$$pcTabs2.$id, "_tabpanel_").concat(this.value);
56
56
  },
57
57
  ariaLabelledby: function ariaLabelledby() {
58
58
  var _this$$pcTabs3;
59
- return "".concat((_this$$pcTabs3 = this.$pcTabs) === null || _this$$pcTabs3 === void 0 ? void 0 : _this$$pcTabs3.id, "_tab_").concat(this.value);
59
+ return "".concat((_this$$pcTabs3 = this.$pcTabs) === null || _this$$pcTabs3 === void 0 ? void 0 : _this$$pcTabs3.$id, "_tab_").concat(this.value);
60
60
  },
61
61
  attrs: function attrs() {
62
62
  return mergeProps(this.a11yAttrs, this.ptmi('root', this.ptParams));
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../src/tabpanel/BaseTabPanel.vue","../../src/tabpanel/TabPanel.vue","../../src/tabpanel/TabPanel.vue?vue&type=template&id=6520447a&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport TabPanelStyle from 'primevue/tabpanel/style';\n\nexport default {\n name: 'BaseTabPanel',\n extends: BaseComponent,\n props: {\n // in Tabs\n value: {\n type: [String, Number],\n default: undefined\n },\n as: {\n type: [String, Object],\n default: 'DIV'\n },\n asChild: {\n type: Boolean,\n default: false\n },\n // in TabView\n header: null,\n headerStyle: null,\n headerClass: null,\n headerProps: null,\n headerActionProps: null,\n contentStyle: null,\n contentClass: null,\n contentProps: null,\n disabled: Boolean\n },\n style: TabPanelStyle,\n provide() {\n return {\n $pcTabPanel: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <slot v-if=\"!$pcTabs\"></slot>\n <template v-else>\n <template v-if=\"!asChild\">\n <component v-if=\"$pcTabs?.lazy ? active : true\" v-show=\"$pcTabs?.lazy ? true : active\" :is=\"as\" :class=\"cx('root')\" v-bind=\"attrs\">\n <slot></slot>\n </component>\n </template>\n\n <slot v-else :class=\"cx('root')\" :active=\"active\" :a11yAttrs=\"a11yAttrs\"></slot>\n </template>\n</template>\n\n<script>\nimport { equals } from '@primeuix/utils/object';\nimport { mergeProps } from 'vue';\nimport BaseTabPanel from './BaseTabPanel.vue';\n\nexport default {\n name: 'TabPanel',\n extends: BaseTabPanel,\n inheritAttrs: false,\n inject: ['$pcTabs'],\n computed: {\n active() {\n return equals(this.$pcTabs?.d_value, this.value);\n },\n id() {\n return `${this.$pcTabs?.id}_tabpanel_${this.value}`;\n },\n ariaLabelledby() {\n return `${this.$pcTabs?.id}_tab_${this.value}`;\n },\n attrs() {\n return mergeProps(this.a11yAttrs, this.ptmi('root', this.ptParams));\n },\n a11yAttrs() {\n return {\n id: this.id,\n tabindex: this.$pcTabs?.tabindex,\n role: 'tabpanel',\n 'aria-labelledby': this.ariaLabelledby,\n 'data-pc-name': 'tabpanel',\n 'data-p-active': this.active\n };\n },\n ptParams() {\n return {\n context: {\n active: this.active\n }\n };\n }\n }\n};\n</script>\n","<template>\n <slot v-if=\"!$pcTabs\"></slot>\n <template v-else>\n <template v-if=\"!asChild\">\n <component v-if=\"$pcTabs?.lazy ? active : true\" v-show=\"$pcTabs?.lazy ? true : active\" :is=\"as\" :class=\"cx('root')\" v-bind=\"attrs\">\n <slot></slot>\n </component>\n </template>\n\n <slot v-else :class=\"cx('root')\" :active=\"active\" :a11yAttrs=\"a11yAttrs\"></slot>\n </template>\n</template>\n\n<script>\nimport { equals } from '@primeuix/utils/object';\nimport { mergeProps } from 'vue';\nimport BaseTabPanel from './BaseTabPanel.vue';\n\nexport default {\n name: 'TabPanel',\n extends: BaseTabPanel,\n inheritAttrs: false,\n inject: ['$pcTabs'],\n computed: {\n active() {\n return equals(this.$pcTabs?.d_value, this.value);\n },\n id() {\n return `${this.$pcTabs?.id}_tabpanel_${this.value}`;\n },\n ariaLabelledby() {\n return `${this.$pcTabs?.id}_tab_${this.value}`;\n },\n attrs() {\n return mergeProps(this.a11yAttrs, this.ptmi('root', this.ptParams));\n },\n a11yAttrs() {\n return {\n id: this.id,\n tabindex: this.$pcTabs?.tabindex,\n role: 'tabpanel',\n 'aria-labelledby': this.ariaLabelledby,\n 'data-pc-name': 'tabpanel',\n 'data-p-active': this.active\n };\n },\n ptParams() {\n return {\n context: {\n active: this.active\n }\n };\n }\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","value","type","String","Number","undefined","as","Object","asChild","Boolean","header","headerStyle","headerClass","headerProps","headerActionProps","contentStyle","contentClass","contentProps","disabled","style","TabPanelStyle","provide","$pcTabPanel","$parentInstance","BaseTabPanel","inheritAttrs","inject","computed","active","_this$$pcTabs","equals","$pcTabs","d_value","id","_this$$pcTabs2","concat","ariaLabelledby","_this$$pcTabs3","attrs","mergeProps","a11yAttrs","ptmi","ptParams","_this$$pcTabs4","tabindex","role","context","$options","_renderSlot","_ctx","$slots","key","_createElementBlock","_Fragment","_$options$$pcTabs","lazy","_createBlock","_resolveDynamicComponent","_mergeProps","cx","_$options$$pcTabs2"],"mappings":"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"}
1
+ {"version":3,"file":"index.mjs","sources":["../../src/tabpanel/BaseTabPanel.vue","../../src/tabpanel/TabPanel.vue","../../src/tabpanel/TabPanel.vue?vue&type=template&id=8c0752ba&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport TabPanelStyle from 'primevue/tabpanel/style';\n\nexport default {\n name: 'BaseTabPanel',\n extends: BaseComponent,\n props: {\n // in Tabs\n value: {\n type: [String, Number],\n default: undefined\n },\n as: {\n type: [String, Object],\n default: 'DIV'\n },\n asChild: {\n type: Boolean,\n default: false\n },\n // in TabView\n header: null,\n headerStyle: null,\n headerClass: null,\n headerProps: null,\n headerActionProps: null,\n contentStyle: null,\n contentClass: null,\n contentProps: null,\n disabled: Boolean\n },\n style: TabPanelStyle,\n provide() {\n return {\n $pcTabPanel: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <slot v-if=\"!$pcTabs\"></slot>\n <template v-else>\n <template v-if=\"!asChild\">\n <component v-if=\"$pcTabs?.lazy ? active : true\" v-show=\"$pcTabs?.lazy ? true : active\" :is=\"as\" :class=\"cx('root')\" v-bind=\"attrs\">\n <slot></slot>\n </component>\n </template>\n\n <slot v-else :class=\"cx('root')\" :active=\"active\" :a11yAttrs=\"a11yAttrs\"></slot>\n </template>\n</template>\n\n<script>\nimport { equals } from '@primeuix/utils/object';\nimport { mergeProps } from 'vue';\nimport BaseTabPanel from './BaseTabPanel.vue';\n\nexport default {\n name: 'TabPanel',\n extends: BaseTabPanel,\n inheritAttrs: false,\n inject: ['$pcTabs'],\n computed: {\n active() {\n return equals(this.$pcTabs?.d_value, this.value);\n },\n id() {\n return `${this.$pcTabs?.$id}_tabpanel_${this.value}`;\n },\n ariaLabelledby() {\n return `${this.$pcTabs?.$id}_tab_${this.value}`;\n },\n attrs() {\n return mergeProps(this.a11yAttrs, this.ptmi('root', this.ptParams));\n },\n a11yAttrs() {\n return {\n id: this.id,\n tabindex: this.$pcTabs?.tabindex,\n role: 'tabpanel',\n 'aria-labelledby': this.ariaLabelledby,\n 'data-pc-name': 'tabpanel',\n 'data-p-active': this.active\n };\n },\n ptParams() {\n return {\n context: {\n active: this.active\n }\n };\n }\n }\n};\n</script>\n","<template>\n <slot v-if=\"!$pcTabs\"></slot>\n <template v-else>\n <template v-if=\"!asChild\">\n <component v-if=\"$pcTabs?.lazy ? active : true\" v-show=\"$pcTabs?.lazy ? true : active\" :is=\"as\" :class=\"cx('root')\" v-bind=\"attrs\">\n <slot></slot>\n </component>\n </template>\n\n <slot v-else :class=\"cx('root')\" :active=\"active\" :a11yAttrs=\"a11yAttrs\"></slot>\n </template>\n</template>\n\n<script>\nimport { equals } from '@primeuix/utils/object';\nimport { mergeProps } from 'vue';\nimport BaseTabPanel from './BaseTabPanel.vue';\n\nexport default {\n name: 'TabPanel',\n extends: BaseTabPanel,\n inheritAttrs: false,\n inject: ['$pcTabs'],\n computed: {\n active() {\n return equals(this.$pcTabs?.d_value, this.value);\n },\n id() {\n return `${this.$pcTabs?.$id}_tabpanel_${this.value}`;\n },\n ariaLabelledby() {\n return `${this.$pcTabs?.$id}_tab_${this.value}`;\n },\n attrs() {\n return mergeProps(this.a11yAttrs, this.ptmi('root', this.ptParams));\n },\n a11yAttrs() {\n return {\n id: this.id,\n tabindex: this.$pcTabs?.tabindex,\n role: 'tabpanel',\n 'aria-labelledby': this.ariaLabelledby,\n 'data-pc-name': 'tabpanel',\n 'data-p-active': this.active\n };\n },\n ptParams() {\n return {\n context: {\n active: this.active\n }\n };\n }\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","value","type","String","Number","undefined","as","Object","asChild","Boolean","header","headerStyle","headerClass","headerProps","headerActionProps","contentStyle","contentClass","contentProps","disabled","style","TabPanelStyle","provide","$pcTabPanel","$parentInstance","BaseTabPanel","inheritAttrs","inject","computed","active","_this$$pcTabs","equals","$pcTabs","d_value","id","_this$$pcTabs2","concat","$id","ariaLabelledby","_this$$pcTabs3","attrs","mergeProps","a11yAttrs","ptmi","ptParams","_this$$pcTabs4","tabindex","role","context","$options","_renderSlot","_ctx","$slots","key","_createElementBlock","_Fragment","_$options$$pcTabs","lazy","_createBlock","_resolveDynamicComponent","_mergeProps","cx","_$options$$pcTabs2"],"mappings":"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"}
@@ -418,7 +418,7 @@ export default {
418
418
  ZIndex.set('menu', el, this.baseZIndex + this.$primevue.config.zIndex.menu);
419
419
  }
420
420
 
421
- addStyle(el, { position: 'absolute', top: '0', left: '0' });
421
+ addStyle(el, { position: 'absolute', top: '0' });
422
422
  this.alignOverlay();
423
423
  focus(this.menubar);
424
424
  this.scrollInView();
@@ -727,8 +727,7 @@ var script = {
727
727
  }
728
728
  addStyle(el, {
729
729
  position: 'absolute',
730
- top: '0',
731
- left: '0'
730
+ top: '0'
732
731
  });
733
732
  this.alignOverlay();
734
733
  focus(this.menubar);
@@ -870,9 +869,9 @@ var script = {
870
869
  return matchedItemIndex > -1 ? matchedItemIndex : index;
871
870
  },
872
871
  findSelectedItemIndex: function findSelectedItemIndex() {
873
- var _this10 = this;
872
+ var _this0 = this;
874
873
  return this.visibleItems.findIndex(function (processedItem) {
875
- return _this10.isValidSelectedItem(processedItem);
874
+ return _this0.isValidSelectedItem(processedItem);
876
875
  });
877
876
  },
878
877
  findFirstFocusedItemIndex: function findFirstFocusedItemIndex() {
@@ -884,20 +883,20 @@ var script = {
884
883
  return selectedIndex < 0 ? this.findLastItemIndex() : selectedIndex;
885
884
  },
886
885
  searchItems: function searchItems(event, _char) {
887
- var _this11 = this;
886
+ var _this1 = this;
888
887
  this.searchValue = (this.searchValue || '') + _char;
889
888
  var itemIndex = -1;
890
889
  var matched = false;
891
890
  if (this.focusedItemInfo.index !== -1) {
892
891
  itemIndex = this.visibleItems.slice(this.focusedItemInfo.index).findIndex(function (processedItem) {
893
- return _this11.isItemMatched(processedItem);
892
+ return _this1.isItemMatched(processedItem);
894
893
  });
895
894
  itemIndex = itemIndex === -1 ? this.visibleItems.slice(0, this.focusedItemInfo.index).findIndex(function (processedItem) {
896
- return _this11.isItemMatched(processedItem);
895
+ return _this1.isItemMatched(processedItem);
897
896
  }) : itemIndex + this.focusedItemInfo.index;
898
897
  } else {
899
898
  itemIndex = this.visibleItems.findIndex(function (processedItem) {
900
- return _this11.isItemMatched(processedItem);
899
+ return _this1.isItemMatched(processedItem);
901
900
  });
902
901
  }
903
902
  if (itemIndex !== -1) {
@@ -913,8 +912,8 @@ var script = {
913
912
  clearTimeout(this.searchTimeout);
914
913
  }
915
914
  this.searchTimeout = setTimeout(function () {
916
- _this11.searchValue = '';
917
- _this11.searchTimeout = null;
915
+ _this1.searchValue = '';
916
+ _this1.searchTimeout = null;
918
917
  }, 500);
919
918
  return matched;
920
919
  },
@@ -936,7 +935,7 @@ var script = {
936
935
  }
937
936
  },
938
937
  createProcessedItems: function createProcessedItems(items) {
939
- var _this12 = this;
938
+ var _this10 = this;
940
939
  var level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
941
940
  var parent = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
942
941
  var parentKey = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';
@@ -951,7 +950,7 @@ var script = {
951
950
  parent: parent,
952
951
  parentKey: parentKey
953
952
  };
954
- newItem['items'] = _this12.createProcessedItems(item.items, level + 1, newItem, key);
953
+ newItem['items'] = _this10.createProcessedItems(item.items, level + 1, newItem, key);
955
954
  processedItems.push(newItem);
956
955
  });
957
956
  return processedItems;
@@ -968,9 +967,9 @@ var script = {
968
967
  return this.createProcessedItems(this.model || []);
969
968
  },
970
969
  visibleItems: function visibleItems() {
971
- var _this13 = this;
970
+ var _this11 = this;
972
971
  var processedItem = this.activeItemPath.find(function (p) {
973
- return p.key === _this13.focusedItemInfo.parentKey;
972
+ return p.key === _this11.focusedItemInfo.parentKey;
974
973
  });
975
974
  return processedItem ? processedItem.items : this.processedItems;
976
975
  },