primevue 4.3.4 → 4.3.5
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.
- package/accordion/index.mjs +4 -2
- package/accordion/index.mjs.map +1 -1
- package/autocomplete/index.mjs +8 -4
- package/autocomplete/index.mjs.map +1 -1
- package/breadcrumb/index.mjs +4 -2
- package/breadcrumb/index.mjs.map +1 -1
- package/carousel/index.mjs +10 -5
- package/carousel/index.mjs.map +1 -1
- package/cascadeselect/index.mjs +10 -5
- package/cascadeselect/index.mjs.map +1 -1
- package/contextmenu/index.mjs +16 -8
- package/contextmenu/index.mjs.map +1 -1
- package/datatable/DataTable.vue +7 -3
- package/datatable/index.mjs +37 -29
- package/datatable/index.mjs.map +1 -1
- package/datepicker/index.mjs +54 -25
- package/datepicker/index.mjs.map +1 -1
- package/dock/index.mjs +8 -4
- package/dock/index.mjs.map +1 -1
- package/dynamicdialog/index.mjs +6 -3
- package/dynamicdialog/index.mjs.map +1 -1
- package/fileupload/index.mjs +14 -7
- package/fileupload/index.mjs.map +1 -1
- package/floatlabel/index.d.ts +1 -1
- package/galleria/index.mjs +8 -4
- package/galleria/index.mjs.map +1 -1
- package/inputchips/index.mjs +2 -1
- package/inputchips/index.mjs.map +1 -1
- package/listbox/index.mjs +8 -4
- package/listbox/index.mjs.map +1 -1
- package/megamenu/index.mjs +22 -11
- package/megamenu/index.mjs.map +1 -1
- package/menu/index.mjs +6 -3
- package/menu/index.mjs.map +1 -1
- package/menubar/index.mjs +14 -7
- package/menubar/index.mjs.map +1 -1
- package/metergroup/index.mjs +10 -5
- package/metergroup/index.mjs.map +1 -1
- package/multiselect/index.mjs +8 -4
- package/multiselect/index.mjs.map +1 -1
- package/organizationchart/index.mjs +6 -3
- package/organizationchart/index.mjs.map +1 -1
- package/package.json +4 -4
- package/paginator/index.mjs +10 -4
- package/paginator/index.mjs.map +1 -1
- package/panelmenu/index.mjs +42 -21
- package/panelmenu/index.mjs.map +1 -1
- package/password/Password.vue +1 -0
- package/password/index.mjs +4 -1
- package/password/index.mjs.map +1 -1
- package/rating/index.mjs +10 -5
- package/rating/index.mjs.map +1 -1
- package/select/Select.vue +1 -2
- package/select/index.mjs +13 -7
- package/select/index.mjs.map +1 -1
- package/speeddial/index.mjs +6 -3
- package/speeddial/index.mjs.map +1 -1
- package/splitter/Splitter.vue +1 -1
- package/splitter/index.mjs +5 -2
- package/splitter/index.mjs.map +1 -1
- package/steps/index.mjs +8 -4
- package/steps/index.mjs.map +1 -1
- package/tabmenu/index.mjs +8 -2
- package/tabmenu/index.mjs.map +1 -1
- package/tabview/index.mjs +8 -4
- package/tabview/index.mjs.map +1 -1
- package/terminal/index.mjs +8 -4
- package/terminal/index.mjs.map +1 -1
- package/tieredmenu/index.mjs +18 -9
- package/tieredmenu/index.mjs.map +1 -1
- package/timeline/index.mjs +12 -6
- package/timeline/index.mjs.map +1 -1
- package/toast/ToastMessage.vue +1 -1
- package/toast/index.mjs +1 -1
- package/toast/index.mjs.map +1 -1
- package/toggleswitch/style/index.d.ts +1 -5
- package/treeselect/index.mjs +2 -1
- package/treeselect/index.mjs.map +1 -1
- package/treetable/index.mjs +2 -1
- package/treetable/index.mjs.map +1 -1
- package/umd/primevue.min.js +94 -94
- package/virtualscroller/VirtualScroller.vue +4 -1
- package/virtualscroller/index.mjs +3 -1
- package/virtualscroller/index.mjs.map +1 -1
- package/web-types.json +1 -1
package/tabmenu/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/tabmenu/BaseTabMenu.vue","../../src/tabmenu/TabMenu.vue","../../src/tabmenu/TabMenu.vue?vue&type=template&id=c9708f4e&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport TabMenuStyle from 'primevue/tabmenu/style';\n\nexport default {\n name: 'BaseTabMenu',\n extends: BaseComponent,\n props: {\n model: {\n type: Array,\n default: null\n },\n activeIndex: {\n type: Number,\n default: 0\n },\n ariaLabelledby: {\n type: String,\n default: null\n },\n ariaLabel: {\n type: String,\n default: null\n }\n },\n style: TabMenuStyle,\n provide() {\n return {\n $pcTabMenu: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <ul ref=\"nav\" :class=\"cx('tablist')\" role=\"menubar\" :aria-labelledby=\"ariaLabelledby\" :aria-label=\"ariaLabel\" v-bind=\"ptm('tablist')\">\n <template v-for=\"(item, i) of model\" :key=\"label(item) + '_' + i.toString()\">\n <li\n v-if=\"visible(item)\"\n ref=\"tab\"\n :class=\"[cx('item', { item, index: i }), item.class]\"\n role=\"presentation\"\n @click=\"onItemClick($event, item, i)\"\n @keydown=\"onKeydownItem($event, item, i)\"\n v-bind=\"getPTOptions('item', item, i)\"\n :data-p-active=\"d_activeIndex === i\"\n :data-p-disabled=\"disabled(item)\"\n >\n <template v-if=\"!$slots.item\">\n <a ref=\"tabLink\" v-ripple role=\"menuitem\" :href=\"item.url\" :class=\"cx('itemLink')\" :target=\"item.target\" :aria-label=\"label(item)\" :aria-disabled=\"disabled(item)\" :tabindex=\"-1\" v-bind=\"getPTOptions('itemLink', item, i)\">\n <component v-if=\"$slots.itemicon\" :is=\"$slots.itemicon\" :item=\"item\" :class=\"cx('itemIcon')\" />\n <span v-else-if=\"item.icon\" :class=\"[cx('itemIcon'), item.icon]\" v-bind=\"getPTOptions('itemIcon', item, i)\" />\n <span :class=\"cx('itemLabel')\" v-bind=\"getPTOptions('itemLabel', item, i)\">{{ label(item) }}</span>\n </a>\n </template>\n <component v-else :is=\"$slots.item\" :item=\"item\" :index=\"i\" :active=\"i === d_activeIndex\" :label=\"label(item)\" :props=\"getMenuItemProps(item, i)\"></component>\n </li>\n </template>\n <li ref=\"inkbar\" role=\"none\" :class=\"cx('activeBar')\" v-bind=\"ptm('activeBar')\"></li>\n </ul>\n </div>\n</template>\n\n<script>\nimport { getAttribute, find, findSingle, getWidth, getOffset } from '@primeuix/utils/dom';\nimport Ripple from 'primevue/ripple';\nimport { mergeProps } from 'vue';\nimport BaseTabMenu from './BaseTabMenu.vue';\n\nexport default {\n name: 'TabMenu',\n extends: BaseTabMenu,\n inheritAttrs: false,\n emits: ['update:activeIndex', 'tab-change'],\n data() {\n return {\n d_activeIndex: this.activeIndex\n };\n },\n watch: {\n activeIndex: {\n flush: 'post',\n handler(newValue) {\n this.d_activeIndex = newValue;\n this.updateInkBar();\n }\n }\n },\n mounted() {\n this.$nextTick(() => {\n this.updateInkBar();\n });\n\n const activeItem = this.findActiveItem();\n\n activeItem && (activeItem.tabIndex = '0');\n },\n updated() {\n this.updateInkBar();\n },\n methods: {\n getPTOptions(key, item, index) {\n return this.ptm(key, {\n context: {\n item,\n index\n }\n });\n },\n onItemClick(event, item, index) {\n if (this.disabled(item)) {\n event.preventDefault();\n\n return;\n }\n\n if (item.command) {\n item.command({\n originalEvent: event,\n item: item\n });\n }\n\n if (index !== this.d_activeIndex) {\n this.d_activeIndex = index;\n this.$emit('update:activeIndex', this.d_activeIndex);\n }\n\n this.$emit('tab-change', {\n originalEvent: event,\n index: index\n });\n },\n onKeydownItem(event, item, index) {\n switch (event.code) {\n case 'ArrowRight': {\n this.navigateToNextItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.navigateToPrevItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'Home': {\n this.navigateToFirstItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'End': {\n this.navigateToLastItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'Space':\n case 'NumpadEnter':\n\n case 'Enter': {\n this.onItemClick(event, item, index);\n event.preventDefault();\n break;\n }\n\n case 'Tab': {\n this.onTabKey();\n break;\n }\n\n default:\n break;\n }\n },\n navigateToNextItem(target) {\n const nextItem = this.findNextItem(target);\n\n nextItem && this.setFocusToMenuitem(target, nextItem);\n },\n navigateToPrevItem(target) {\n const prevItem = this.findPrevItem(target);\n\n prevItem && this.setFocusToMenuitem(target, prevItem);\n },\n navigateToFirstItem(target) {\n const firstItem = this.findFirstItem(target);\n\n firstItem && this.setFocusToMenuitem(target, firstItem);\n },\n navigateToLastItem(target) {\n const lastItem = this.findLastItem(target);\n\n lastItem && this.setFocusToMenuitem(target, lastItem);\n },\n findNextItem(item) {\n const nextItem = item.parentElement.nextElementSibling;\n\n return nextItem ? (getAttribute(nextItem, 'data-p-disabled') === true ? this.findNextItem(nextItem.children[0]) : nextItem.children[0]) : null;\n },\n findPrevItem(item) {\n const prevItem = item.parentElement.previousElementSibling;\n\n return prevItem ? (getAttribute(prevItem, 'data-p-disabled') === true ? this.findPrevItem(prevItem.children[0]) : prevItem.children[0]) : null;\n },\n findFirstItem() {\n const firstSibling = findSingle(this.$refs.nav, '[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n\n return firstSibling ? firstSibling.children[0] : null;\n },\n findLastItem() {\n const siblings = find(this.$refs.nav, '[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n\n return siblings ? siblings[siblings.length - 1].children[0] : null;\n },\n findActiveItem() {\n const activeItem = findSingle(this.$refs.nav, '[data-pc-section=\"item\"][data-p-disabled=\"false\"][data-p-active=\"true\"]');\n\n return activeItem ? activeItem.children[0] : null;\n },\n setFocusToMenuitem(target, focusableItem) {\n target.tabIndex = '-1';\n focusableItem.tabIndex = '0';\n focusableItem.focus();\n },\n onTabKey() {\n const activeItem = findSingle(this.$refs.nav, '[data-pc-section=\"item\"][data-p-disabled=\"false\"][data-p-active=\"true\"]');\n const focusedItem = findSingle(this.$refs.nav, '[data-pc-section=\"itemlink\"][tabindex=\"0\"]');\n\n if (focusedItem !== activeItem.children[0]) {\n activeItem && (activeItem.children[0].tabIndex = '0');\n focusedItem.tabIndex = '-1';\n }\n },\n visible(item) {\n return typeof item.visible === 'function' ? item.visible() : item.visible !== false;\n },\n disabled(item) {\n return typeof item.disabled === 'function' ? item.disabled() : item.disabled === true;\n },\n label(item) {\n return typeof item.label === 'function' ? item.label() : item.label;\n },\n updateInkBar() {\n let tabs = this.$refs.nav.children;\n let inkHighlighted = false;\n\n for (let i = 0; i < tabs.length; i++) {\n let tab = tabs[i];\n\n if (getAttribute(tab, 'data-p-active')) {\n this.$refs.inkbar.style.width = getWidth(tab) + 'px';\n this.$refs.inkbar.style.left = getOffset(tab).left - getOffset(this.$refs.nav).left + 'px';\n inkHighlighted = true;\n }\n }\n\n if (!inkHighlighted) {\n this.$refs.inkbar.style.width = '0px';\n this.$refs.inkbar.style.left = '0px';\n }\n },\n getMenuItemProps(item, index) {\n return {\n action: mergeProps(\n {\n class: this.cx('itemLink'),\n tabindex: -1,\n onClick: ($event) => this.onItemClick($event, item, index),\n onKeyDown: ($event) => this.onKeydownItem($event, item, index)\n },\n this.getPTOptions('itemLink', item, index)\n ),\n icon: mergeProps(\n {\n class: [this.cx('itemIcon'), item.icon]\n },\n this.getPTOptions('itemIcon', item, index)\n ),\n label: mergeProps(\n {\n class: this.cx('itemLabel')\n },\n this.getPTOptions('itemLabel', item, index)\n )\n };\n }\n },\n directives: {\n ripple: Ripple\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <ul ref=\"nav\" :class=\"cx('tablist')\" role=\"menubar\" :aria-labelledby=\"ariaLabelledby\" :aria-label=\"ariaLabel\" v-bind=\"ptm('tablist')\">\n <template v-for=\"(item, i) of model\" :key=\"label(item) + '_' + i.toString()\">\n <li\n v-if=\"visible(item)\"\n ref=\"tab\"\n :class=\"[cx('item', { item, index: i }), item.class]\"\n role=\"presentation\"\n @click=\"onItemClick($event, item, i)\"\n @keydown=\"onKeydownItem($event, item, i)\"\n v-bind=\"getPTOptions('item', item, i)\"\n :data-p-active=\"d_activeIndex === i\"\n :data-p-disabled=\"disabled(item)\"\n >\n <template v-if=\"!$slots.item\">\n <a ref=\"tabLink\" v-ripple role=\"menuitem\" :href=\"item.url\" :class=\"cx('itemLink')\" :target=\"item.target\" :aria-label=\"label(item)\" :aria-disabled=\"disabled(item)\" :tabindex=\"-1\" v-bind=\"getPTOptions('itemLink', item, i)\">\n <component v-if=\"$slots.itemicon\" :is=\"$slots.itemicon\" :item=\"item\" :class=\"cx('itemIcon')\" />\n <span v-else-if=\"item.icon\" :class=\"[cx('itemIcon'), item.icon]\" v-bind=\"getPTOptions('itemIcon', item, i)\" />\n <span :class=\"cx('itemLabel')\" v-bind=\"getPTOptions('itemLabel', item, i)\">{{ label(item) }}</span>\n </a>\n </template>\n <component v-else :is=\"$slots.item\" :item=\"item\" :index=\"i\" :active=\"i === d_activeIndex\" :label=\"label(item)\" :props=\"getMenuItemProps(item, i)\"></component>\n </li>\n </template>\n <li ref=\"inkbar\" role=\"none\" :class=\"cx('activeBar')\" v-bind=\"ptm('activeBar')\"></li>\n </ul>\n </div>\n</template>\n\n<script>\nimport { getAttribute, find, findSingle, getWidth, getOffset } from '@primeuix/utils/dom';\nimport Ripple from 'primevue/ripple';\nimport { mergeProps } from 'vue';\nimport BaseTabMenu from './BaseTabMenu.vue';\n\nexport default {\n name: 'TabMenu',\n extends: BaseTabMenu,\n inheritAttrs: false,\n emits: ['update:activeIndex', 'tab-change'],\n data() {\n return {\n d_activeIndex: this.activeIndex\n };\n },\n watch: {\n activeIndex: {\n flush: 'post',\n handler(newValue) {\n this.d_activeIndex = newValue;\n this.updateInkBar();\n }\n }\n },\n mounted() {\n this.$nextTick(() => {\n this.updateInkBar();\n });\n\n const activeItem = this.findActiveItem();\n\n activeItem && (activeItem.tabIndex = '0');\n },\n updated() {\n this.updateInkBar();\n },\n methods: {\n getPTOptions(key, item, index) {\n return this.ptm(key, {\n context: {\n item,\n index\n }\n });\n },\n onItemClick(event, item, index) {\n if (this.disabled(item)) {\n event.preventDefault();\n\n return;\n }\n\n if (item.command) {\n item.command({\n originalEvent: event,\n item: item\n });\n }\n\n if (index !== this.d_activeIndex) {\n this.d_activeIndex = index;\n this.$emit('update:activeIndex', this.d_activeIndex);\n }\n\n this.$emit('tab-change', {\n originalEvent: event,\n index: index\n });\n },\n onKeydownItem(event, item, index) {\n switch (event.code) {\n case 'ArrowRight': {\n this.navigateToNextItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.navigateToPrevItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'Home': {\n this.navigateToFirstItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'End': {\n this.navigateToLastItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'Space':\n case 'NumpadEnter':\n\n case 'Enter': {\n this.onItemClick(event, item, index);\n event.preventDefault();\n break;\n }\n\n case 'Tab': {\n this.onTabKey();\n break;\n }\n\n default:\n break;\n }\n },\n navigateToNextItem(target) {\n const nextItem = this.findNextItem(target);\n\n nextItem && this.setFocusToMenuitem(target, nextItem);\n },\n navigateToPrevItem(target) {\n const prevItem = this.findPrevItem(target);\n\n prevItem && this.setFocusToMenuitem(target, prevItem);\n },\n navigateToFirstItem(target) {\n const firstItem = this.findFirstItem(target);\n\n firstItem && this.setFocusToMenuitem(target, firstItem);\n },\n navigateToLastItem(target) {\n const lastItem = this.findLastItem(target);\n\n lastItem && this.setFocusToMenuitem(target, lastItem);\n },\n findNextItem(item) {\n const nextItem = item.parentElement.nextElementSibling;\n\n return nextItem ? (getAttribute(nextItem, 'data-p-disabled') === true ? this.findNextItem(nextItem.children[0]) : nextItem.children[0]) : null;\n },\n findPrevItem(item) {\n const prevItem = item.parentElement.previousElementSibling;\n\n return prevItem ? (getAttribute(prevItem, 'data-p-disabled') === true ? this.findPrevItem(prevItem.children[0]) : prevItem.children[0]) : null;\n },\n findFirstItem() {\n const firstSibling = findSingle(this.$refs.nav, '[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n\n return firstSibling ? firstSibling.children[0] : null;\n },\n findLastItem() {\n const siblings = find(this.$refs.nav, '[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n\n return siblings ? siblings[siblings.length - 1].children[0] : null;\n },\n findActiveItem() {\n const activeItem = findSingle(this.$refs.nav, '[data-pc-section=\"item\"][data-p-disabled=\"false\"][data-p-active=\"true\"]');\n\n return activeItem ? activeItem.children[0] : null;\n },\n setFocusToMenuitem(target, focusableItem) {\n target.tabIndex = '-1';\n focusableItem.tabIndex = '0';\n focusableItem.focus();\n },\n onTabKey() {\n const activeItem = findSingle(this.$refs.nav, '[data-pc-section=\"item\"][data-p-disabled=\"false\"][data-p-active=\"true\"]');\n const focusedItem = findSingle(this.$refs.nav, '[data-pc-section=\"itemlink\"][tabindex=\"0\"]');\n\n if (focusedItem !== activeItem.children[0]) {\n activeItem && (activeItem.children[0].tabIndex = '0');\n focusedItem.tabIndex = '-1';\n }\n },\n visible(item) {\n return typeof item.visible === 'function' ? item.visible() : item.visible !== false;\n },\n disabled(item) {\n return typeof item.disabled === 'function' ? item.disabled() : item.disabled === true;\n },\n label(item) {\n return typeof item.label === 'function' ? item.label() : item.label;\n },\n updateInkBar() {\n let tabs = this.$refs.nav.children;\n let inkHighlighted = false;\n\n for (let i = 0; i < tabs.length; i++) {\n let tab = tabs[i];\n\n if (getAttribute(tab, 'data-p-active')) {\n this.$refs.inkbar.style.width = getWidth(tab) + 'px';\n this.$refs.inkbar.style.left = getOffset(tab).left - getOffset(this.$refs.nav).left + 'px';\n inkHighlighted = true;\n }\n }\n\n if (!inkHighlighted) {\n this.$refs.inkbar.style.width = '0px';\n this.$refs.inkbar.style.left = '0px';\n }\n },\n getMenuItemProps(item, index) {\n return {\n action: mergeProps(\n {\n class: this.cx('itemLink'),\n tabindex: -1,\n onClick: ($event) => this.onItemClick($event, item, index),\n onKeyDown: ($event) => this.onKeydownItem($event, item, index)\n },\n this.getPTOptions('itemLink', item, index)\n ),\n icon: mergeProps(\n {\n class: [this.cx('itemIcon'), item.icon]\n },\n this.getPTOptions('itemIcon', item, index)\n ),\n label: mergeProps(\n {\n class: this.cx('itemLabel')\n },\n this.getPTOptions('itemLabel', item, index)\n )\n };\n }\n },\n directives: {\n ripple: Ripple\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","model","type","Array","activeIndex","Number","ariaLabelledby","String","ariaLabel","style","TabMenuStyle","provide","$pcTabMenu","$parentInstance","BaseTabMenu","inheritAttrs","emits","data","d_activeIndex","watch","flush","handler","newValue","updateInkBar","mounted","_this","$nextTick","activeItem","findActiveItem","tabIndex","updated","methods","getPTOptions","key","item","index","ptm","context","onItemClick","event","disabled","preventDefault","command","originalEvent","$emit","onKeydownItem","code","navigateToNextItem","target","navigateToPrevItem","navigateToFirstItem","navigateToLastItem","onTabKey","nextItem","findNextItem","setFocusToMenuitem","prevItem","findPrevItem","firstItem","findFirstItem","lastItem","findLastItem","parentElement","nextElementSibling","getAttribute","children","previousElementSibling","firstSibling","findSingle","$refs","nav","siblings","find","length","focusableItem","focus","focusedItem","visible","label","tabs","inkHighlighted","i","tab","inkbar","width","getWidth","left","getOffset","getMenuItemProps","_this2","action","mergeProps","cx","tabindex","onClick","$event","onKeyDown","icon","directives","ripple","Ripple","_openBlock","_createElementBlock","_mergeProps","_ctx","ptmi","_createElementVNode","ref","role","_Fragment","_renderList","$options","toString","onKeydown","$data","$slots","_withDirectives","href","url","itemicon","_createBlock","_resolveDynamicComponent","_toDisplayString","active"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/tabmenu/BaseTabMenu.vue","../../src/tabmenu/TabMenu.vue","../../src/tabmenu/TabMenu.vue?vue&type=template&id=c9708f4e&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport TabMenuStyle from 'primevue/tabmenu/style';\n\nexport default {\n name: 'BaseTabMenu',\n extends: BaseComponent,\n props: {\n model: {\n type: Array,\n default: null\n },\n activeIndex: {\n type: Number,\n default: 0\n },\n ariaLabelledby: {\n type: String,\n default: null\n },\n ariaLabel: {\n type: String,\n default: null\n }\n },\n style: TabMenuStyle,\n provide() {\n return {\n $pcTabMenu: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <ul ref=\"nav\" :class=\"cx('tablist')\" role=\"menubar\" :aria-labelledby=\"ariaLabelledby\" :aria-label=\"ariaLabel\" v-bind=\"ptm('tablist')\">\n <template v-for=\"(item, i) of model\" :key=\"label(item) + '_' + i.toString()\">\n <li\n v-if=\"visible(item)\"\n ref=\"tab\"\n :class=\"[cx('item', { item, index: i }), item.class]\"\n role=\"presentation\"\n @click=\"onItemClick($event, item, i)\"\n @keydown=\"onKeydownItem($event, item, i)\"\n v-bind=\"getPTOptions('item', item, i)\"\n :data-p-active=\"d_activeIndex === i\"\n :data-p-disabled=\"disabled(item)\"\n >\n <template v-if=\"!$slots.item\">\n <a ref=\"tabLink\" v-ripple role=\"menuitem\" :href=\"item.url\" :class=\"cx('itemLink')\" :target=\"item.target\" :aria-label=\"label(item)\" :aria-disabled=\"disabled(item)\" :tabindex=\"-1\" v-bind=\"getPTOptions('itemLink', item, i)\">\n <component v-if=\"$slots.itemicon\" :is=\"$slots.itemicon\" :item=\"item\" :class=\"cx('itemIcon')\" />\n <span v-else-if=\"item.icon\" :class=\"[cx('itemIcon'), item.icon]\" v-bind=\"getPTOptions('itemIcon', item, i)\" />\n <span :class=\"cx('itemLabel')\" v-bind=\"getPTOptions('itemLabel', item, i)\">{{ label(item) }}</span>\n </a>\n </template>\n <component v-else :is=\"$slots.item\" :item=\"item\" :index=\"i\" :active=\"i === d_activeIndex\" :label=\"label(item)\" :props=\"getMenuItemProps(item, i)\"></component>\n </li>\n </template>\n <li ref=\"inkbar\" role=\"none\" :class=\"cx('activeBar')\" v-bind=\"ptm('activeBar')\"></li>\n </ul>\n </div>\n</template>\n\n<script>\nimport { getAttribute, find, findSingle, getWidth, getOffset } from '@primeuix/utils/dom';\nimport Ripple from 'primevue/ripple';\nimport { mergeProps } from 'vue';\nimport BaseTabMenu from './BaseTabMenu.vue';\n\nexport default {\n name: 'TabMenu',\n extends: BaseTabMenu,\n inheritAttrs: false,\n emits: ['update:activeIndex', 'tab-change'],\n data() {\n return {\n d_activeIndex: this.activeIndex\n };\n },\n watch: {\n activeIndex: {\n flush: 'post',\n handler(newValue) {\n this.d_activeIndex = newValue;\n this.updateInkBar();\n }\n }\n },\n mounted() {\n this.$nextTick(() => {\n this.updateInkBar();\n });\n\n const activeItem = this.findActiveItem();\n\n activeItem && (activeItem.tabIndex = '0');\n },\n updated() {\n this.updateInkBar();\n },\n methods: {\n getPTOptions(key, item, index) {\n return this.ptm(key, {\n context: {\n item,\n index\n }\n });\n },\n onItemClick(event, item, index) {\n if (this.disabled(item)) {\n event.preventDefault();\n\n return;\n }\n\n if (item.command) {\n item.command({\n originalEvent: event,\n item: item\n });\n }\n\n if (index !== this.d_activeIndex) {\n this.d_activeIndex = index;\n this.$emit('update:activeIndex', this.d_activeIndex);\n }\n\n this.$emit('tab-change', {\n originalEvent: event,\n index: index\n });\n },\n onKeydownItem(event, item, index) {\n switch (event.code) {\n case 'ArrowRight': {\n this.navigateToNextItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.navigateToPrevItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'Home': {\n this.navigateToFirstItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'End': {\n this.navigateToLastItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'Space':\n case 'NumpadEnter':\n\n case 'Enter': {\n this.onItemClick(event, item, index);\n event.preventDefault();\n break;\n }\n\n case 'Tab': {\n this.onTabKey();\n break;\n }\n\n default:\n break;\n }\n },\n navigateToNextItem(target) {\n const nextItem = this.findNextItem(target);\n\n nextItem && this.setFocusToMenuitem(target, nextItem);\n },\n navigateToPrevItem(target) {\n const prevItem = this.findPrevItem(target);\n\n prevItem && this.setFocusToMenuitem(target, prevItem);\n },\n navigateToFirstItem(target) {\n const firstItem = this.findFirstItem(target);\n\n firstItem && this.setFocusToMenuitem(target, firstItem);\n },\n navigateToLastItem(target) {\n const lastItem = this.findLastItem(target);\n\n lastItem && this.setFocusToMenuitem(target, lastItem);\n },\n findNextItem(item) {\n const nextItem = item.parentElement.nextElementSibling;\n\n return nextItem ? (getAttribute(nextItem, 'data-p-disabled') === true ? this.findNextItem(nextItem.children[0]) : nextItem.children[0]) : null;\n },\n findPrevItem(item) {\n const prevItem = item.parentElement.previousElementSibling;\n\n return prevItem ? (getAttribute(prevItem, 'data-p-disabled') === true ? this.findPrevItem(prevItem.children[0]) : prevItem.children[0]) : null;\n },\n findFirstItem() {\n const firstSibling = findSingle(this.$refs.nav, '[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n\n return firstSibling ? firstSibling.children[0] : null;\n },\n findLastItem() {\n const siblings = find(this.$refs.nav, '[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n\n return siblings ? siblings[siblings.length - 1].children[0] : null;\n },\n findActiveItem() {\n const activeItem = findSingle(this.$refs.nav, '[data-pc-section=\"item\"][data-p-disabled=\"false\"][data-p-active=\"true\"]');\n\n return activeItem ? activeItem.children[0] : null;\n },\n setFocusToMenuitem(target, focusableItem) {\n target.tabIndex = '-1';\n focusableItem.tabIndex = '0';\n focusableItem.focus();\n },\n onTabKey() {\n const activeItem = findSingle(this.$refs.nav, '[data-pc-section=\"item\"][data-p-disabled=\"false\"][data-p-active=\"true\"]');\n const focusedItem = findSingle(this.$refs.nav, '[data-pc-section=\"itemlink\"][tabindex=\"0\"]');\n\n if (focusedItem !== activeItem.children[0]) {\n activeItem && (activeItem.children[0].tabIndex = '0');\n focusedItem.tabIndex = '-1';\n }\n },\n visible(item) {\n return typeof item.visible === 'function' ? item.visible() : item.visible !== false;\n },\n disabled(item) {\n return typeof item.disabled === 'function' ? item.disabled() : item.disabled === true;\n },\n label(item) {\n return typeof item.label === 'function' ? item.label() : item.label;\n },\n updateInkBar() {\n let tabs = this.$refs.nav.children;\n let inkHighlighted = false;\n\n for (let i = 0; i < tabs.length; i++) {\n let tab = tabs[i];\n\n if (getAttribute(tab, 'data-p-active')) {\n this.$refs.inkbar.style.width = getWidth(tab) + 'px';\n this.$refs.inkbar.style.left = getOffset(tab).left - getOffset(this.$refs.nav).left + 'px';\n inkHighlighted = true;\n }\n }\n\n if (!inkHighlighted) {\n this.$refs.inkbar.style.width = '0px';\n this.$refs.inkbar.style.left = '0px';\n }\n },\n getMenuItemProps(item, index) {\n return {\n action: mergeProps(\n {\n class: this.cx('itemLink'),\n tabindex: -1,\n onClick: ($event) => this.onItemClick($event, item, index),\n onKeyDown: ($event) => this.onKeydownItem($event, item, index)\n },\n this.getPTOptions('itemLink', item, index)\n ),\n icon: mergeProps(\n {\n class: [this.cx('itemIcon'), item.icon]\n },\n this.getPTOptions('itemIcon', item, index)\n ),\n label: mergeProps(\n {\n class: this.cx('itemLabel')\n },\n this.getPTOptions('itemLabel', item, index)\n )\n };\n }\n },\n directives: {\n ripple: Ripple\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" v-bind=\"ptmi('root')\">\n <ul ref=\"nav\" :class=\"cx('tablist')\" role=\"menubar\" :aria-labelledby=\"ariaLabelledby\" :aria-label=\"ariaLabel\" v-bind=\"ptm('tablist')\">\n <template v-for=\"(item, i) of model\" :key=\"label(item) + '_' + i.toString()\">\n <li\n v-if=\"visible(item)\"\n ref=\"tab\"\n :class=\"[cx('item', { item, index: i }), item.class]\"\n role=\"presentation\"\n @click=\"onItemClick($event, item, i)\"\n @keydown=\"onKeydownItem($event, item, i)\"\n v-bind=\"getPTOptions('item', item, i)\"\n :data-p-active=\"d_activeIndex === i\"\n :data-p-disabled=\"disabled(item)\"\n >\n <template v-if=\"!$slots.item\">\n <a ref=\"tabLink\" v-ripple role=\"menuitem\" :href=\"item.url\" :class=\"cx('itemLink')\" :target=\"item.target\" :aria-label=\"label(item)\" :aria-disabled=\"disabled(item)\" :tabindex=\"-1\" v-bind=\"getPTOptions('itemLink', item, i)\">\n <component v-if=\"$slots.itemicon\" :is=\"$slots.itemicon\" :item=\"item\" :class=\"cx('itemIcon')\" />\n <span v-else-if=\"item.icon\" :class=\"[cx('itemIcon'), item.icon]\" v-bind=\"getPTOptions('itemIcon', item, i)\" />\n <span :class=\"cx('itemLabel')\" v-bind=\"getPTOptions('itemLabel', item, i)\">{{ label(item) }}</span>\n </a>\n </template>\n <component v-else :is=\"$slots.item\" :item=\"item\" :index=\"i\" :active=\"i === d_activeIndex\" :label=\"label(item)\" :props=\"getMenuItemProps(item, i)\"></component>\n </li>\n </template>\n <li ref=\"inkbar\" role=\"none\" :class=\"cx('activeBar')\" v-bind=\"ptm('activeBar')\"></li>\n </ul>\n </div>\n</template>\n\n<script>\nimport { getAttribute, find, findSingle, getWidth, getOffset } from '@primeuix/utils/dom';\nimport Ripple from 'primevue/ripple';\nimport { mergeProps } from 'vue';\nimport BaseTabMenu from './BaseTabMenu.vue';\n\nexport default {\n name: 'TabMenu',\n extends: BaseTabMenu,\n inheritAttrs: false,\n emits: ['update:activeIndex', 'tab-change'],\n data() {\n return {\n d_activeIndex: this.activeIndex\n };\n },\n watch: {\n activeIndex: {\n flush: 'post',\n handler(newValue) {\n this.d_activeIndex = newValue;\n this.updateInkBar();\n }\n }\n },\n mounted() {\n this.$nextTick(() => {\n this.updateInkBar();\n });\n\n const activeItem = this.findActiveItem();\n\n activeItem && (activeItem.tabIndex = '0');\n },\n updated() {\n this.updateInkBar();\n },\n methods: {\n getPTOptions(key, item, index) {\n return this.ptm(key, {\n context: {\n item,\n index\n }\n });\n },\n onItemClick(event, item, index) {\n if (this.disabled(item)) {\n event.preventDefault();\n\n return;\n }\n\n if (item.command) {\n item.command({\n originalEvent: event,\n item: item\n });\n }\n\n if (index !== this.d_activeIndex) {\n this.d_activeIndex = index;\n this.$emit('update:activeIndex', this.d_activeIndex);\n }\n\n this.$emit('tab-change', {\n originalEvent: event,\n index: index\n });\n },\n onKeydownItem(event, item, index) {\n switch (event.code) {\n case 'ArrowRight': {\n this.navigateToNextItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'ArrowLeft': {\n this.navigateToPrevItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'Home': {\n this.navigateToFirstItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'End': {\n this.navigateToLastItem(event.target);\n event.preventDefault();\n break;\n }\n\n case 'Space':\n case 'NumpadEnter':\n\n case 'Enter': {\n this.onItemClick(event, item, index);\n event.preventDefault();\n break;\n }\n\n case 'Tab': {\n this.onTabKey();\n break;\n }\n\n default:\n break;\n }\n },\n navigateToNextItem(target) {\n const nextItem = this.findNextItem(target);\n\n nextItem && this.setFocusToMenuitem(target, nextItem);\n },\n navigateToPrevItem(target) {\n const prevItem = this.findPrevItem(target);\n\n prevItem && this.setFocusToMenuitem(target, prevItem);\n },\n navigateToFirstItem(target) {\n const firstItem = this.findFirstItem(target);\n\n firstItem && this.setFocusToMenuitem(target, firstItem);\n },\n navigateToLastItem(target) {\n const lastItem = this.findLastItem(target);\n\n lastItem && this.setFocusToMenuitem(target, lastItem);\n },\n findNextItem(item) {\n const nextItem = item.parentElement.nextElementSibling;\n\n return nextItem ? (getAttribute(nextItem, 'data-p-disabled') === true ? this.findNextItem(nextItem.children[0]) : nextItem.children[0]) : null;\n },\n findPrevItem(item) {\n const prevItem = item.parentElement.previousElementSibling;\n\n return prevItem ? (getAttribute(prevItem, 'data-p-disabled') === true ? this.findPrevItem(prevItem.children[0]) : prevItem.children[0]) : null;\n },\n findFirstItem() {\n const firstSibling = findSingle(this.$refs.nav, '[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n\n return firstSibling ? firstSibling.children[0] : null;\n },\n findLastItem() {\n const siblings = find(this.$refs.nav, '[data-pc-section=\"item\"][data-p-disabled=\"false\"]');\n\n return siblings ? siblings[siblings.length - 1].children[0] : null;\n },\n findActiveItem() {\n const activeItem = findSingle(this.$refs.nav, '[data-pc-section=\"item\"][data-p-disabled=\"false\"][data-p-active=\"true\"]');\n\n return activeItem ? activeItem.children[0] : null;\n },\n setFocusToMenuitem(target, focusableItem) {\n target.tabIndex = '-1';\n focusableItem.tabIndex = '0';\n focusableItem.focus();\n },\n onTabKey() {\n const activeItem = findSingle(this.$refs.nav, '[data-pc-section=\"item\"][data-p-disabled=\"false\"][data-p-active=\"true\"]');\n const focusedItem = findSingle(this.$refs.nav, '[data-pc-section=\"itemlink\"][tabindex=\"0\"]');\n\n if (focusedItem !== activeItem.children[0]) {\n activeItem && (activeItem.children[0].tabIndex = '0');\n focusedItem.tabIndex = '-1';\n }\n },\n visible(item) {\n return typeof item.visible === 'function' ? item.visible() : item.visible !== false;\n },\n disabled(item) {\n return typeof item.disabled === 'function' ? item.disabled() : item.disabled === true;\n },\n label(item) {\n return typeof item.label === 'function' ? item.label() : item.label;\n },\n updateInkBar() {\n let tabs = this.$refs.nav.children;\n let inkHighlighted = false;\n\n for (let i = 0; i < tabs.length; i++) {\n let tab = tabs[i];\n\n if (getAttribute(tab, 'data-p-active')) {\n this.$refs.inkbar.style.width = getWidth(tab) + 'px';\n this.$refs.inkbar.style.left = getOffset(tab).left - getOffset(this.$refs.nav).left + 'px';\n inkHighlighted = true;\n }\n }\n\n if (!inkHighlighted) {\n this.$refs.inkbar.style.width = '0px';\n this.$refs.inkbar.style.left = '0px';\n }\n },\n getMenuItemProps(item, index) {\n return {\n action: mergeProps(\n {\n class: this.cx('itemLink'),\n tabindex: -1,\n onClick: ($event) => this.onItemClick($event, item, index),\n onKeyDown: ($event) => this.onKeydownItem($event, item, index)\n },\n this.getPTOptions('itemLink', item, index)\n ),\n icon: mergeProps(\n {\n class: [this.cx('itemIcon'), item.icon]\n },\n this.getPTOptions('itemIcon', item, index)\n ),\n label: mergeProps(\n {\n class: this.cx('itemLabel')\n },\n this.getPTOptions('itemLabel', item, index)\n )\n };\n }\n },\n directives: {\n ripple: Ripple\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","model","type","Array","activeIndex","Number","ariaLabelledby","String","ariaLabel","style","TabMenuStyle","provide","$pcTabMenu","$parentInstance","BaseTabMenu","inheritAttrs","emits","data","d_activeIndex","watch","flush","handler","newValue","updateInkBar","mounted","_this","$nextTick","activeItem","findActiveItem","tabIndex","updated","methods","getPTOptions","key","item","index","ptm","context","onItemClick","event","disabled","preventDefault","command","originalEvent","$emit","onKeydownItem","code","navigateToNextItem","target","navigateToPrevItem","navigateToFirstItem","navigateToLastItem","onTabKey","nextItem","findNextItem","setFocusToMenuitem","prevItem","findPrevItem","firstItem","findFirstItem","lastItem","findLastItem","parentElement","nextElementSibling","getAttribute","children","previousElementSibling","firstSibling","findSingle","$refs","nav","siblings","find","length","focusableItem","focus","focusedItem","visible","label","tabs","inkHighlighted","i","tab","inkbar","width","getWidth","left","getOffset","getMenuItemProps","_this2","action","mergeProps","cx","tabindex","onClick","$event","onKeyDown","icon","directives","ripple","Ripple","_openBlock","_createElementBlock","_mergeProps","_ctx","ptmi","_createElementVNode","ref","role","_Fragment","_renderList","$options","toString","onKeydown","$data","$slots","_withDirectives","href","url","itemicon","_createBlock","_resolveDynamicComponent","ref_for","_toDisplayString","active"],"mappings":"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"}
|
package/tabview/index.mjs
CHANGED
|
@@ -373,7 +373,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
373
373
|
tab: tab,
|
|
374
374
|
index: index
|
|
375
375
|
}),
|
|
376
|
-
role: "presentation"
|
|
376
|
+
role: "presentation"
|
|
377
|
+
}, {
|
|
377
378
|
ref_for: true
|
|
378
379
|
}, _objectSpread(_objectSpread(_objectSpread({}, $options.getTabProp(tab, 'headerProps')), $options.getTabPT(tab, 'root', index)), $options.getTabPT(tab, 'header', index)), {
|
|
379
380
|
"data-pc-name": "tabpanel",
|
|
@@ -393,11 +394,13 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
393
394
|
},
|
|
394
395
|
onKeydown: function onKeydown($event) {
|
|
395
396
|
return $options.onTabKeyDown($event, tab, index);
|
|
396
|
-
}
|
|
397
|
+
}
|
|
398
|
+
}, {
|
|
397
399
|
ref_for: true
|
|
398
400
|
}, _objectSpread(_objectSpread({}, $options.getTabProp(tab, 'headerActionProps')), $options.getTabPT(tab, 'headerAction', index))), [tab.props && tab.props.header ? (openBlock(), createElementBlock("span", mergeProps({
|
|
399
401
|
key: 0,
|
|
400
|
-
"class": _ctx.cx('tab.headerTitle')
|
|
402
|
+
"class": _ctx.cx('tab.headerTitle')
|
|
403
|
+
}, {
|
|
401
404
|
ref_for: true
|
|
402
405
|
}, $options.getTabPT(tab, 'headerTitle', index)), toDisplayString(tab.props.header), 17)) : createCommentVNode("", true), tab.children && tab.children.header ? (openBlock(), createBlock(resolveDynamicComponent(tab.children.header), {
|
|
403
406
|
key: 1
|
|
@@ -437,7 +440,8 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
437
440
|
tab: tab
|
|
438
441
|
}),
|
|
439
442
|
role: "tabpanel",
|
|
440
|
-
"aria-labelledby": $options.getTabHeaderActionId(index)
|
|
443
|
+
"aria-labelledby": $options.getTabHeaderActionId(index)
|
|
444
|
+
}, {
|
|
441
445
|
ref_for: true
|
|
442
446
|
}, _objectSpread(_objectSpread(_objectSpread({}, $options.getTabProp(tab, 'contentProps')), $options.getTabPT(tab, 'root', index)), $options.getTabPT(tab, 'content', index)), {
|
|
443
447
|
"data-pc-name": "tabpanel",
|
package/tabview/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/tabview/BaseTabView.vue","../../src/tabview/TabView.vue","../../src/tabview/TabView.vue?vue&type=template&id=15a9c0e0&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport TabViewStyle from 'primevue/tabview/style';\n\nexport default {\n name: 'BaseTabView',\n extends: BaseComponent,\n props: {\n activeIndex: {\n type: Number,\n default: 0\n },\n lazy: {\n type: Boolean,\n default: false\n },\n scrollable: {\n type: Boolean,\n default: false\n },\n tabindex: {\n type: Number,\n default: 0\n },\n selectOnFocus: {\n type: Boolean,\n default: false\n },\n prevButtonProps: {\n type: null,\n default: null\n },\n nextButtonProps: {\n type: null,\n default: null\n },\n prevIcon: {\n type: String,\n default: undefined\n },\n nextIcon: {\n type: String,\n default: undefined\n }\n },\n style: TabViewStyle,\n provide() {\n return {\n $pcTabs: undefined, // Backwards compatible to prevent <TabPanel> component from breaking\n $pcTabView: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" role=\"tablist\" v-bind=\"ptmi('root')\">\n <div :class=\"cx('navContainer')\" v-bind=\"ptm('navContainer')\">\n <button\n v-if=\"scrollable && !isPrevButtonDisabled\"\n ref=\"prevBtn\"\n v-ripple\n type=\"button\"\n :class=\"cx('prevButton')\"\n :tabindex=\"tabindex\"\n :aria-label=\"prevButtonAriaLabel\"\n @click=\"onPrevButtonClick\"\n v-bind=\"{ ...prevButtonProps, ...ptm('prevButton') }\"\n data-pc-group-section=\"navbutton\"\n >\n <slot name=\"previcon\">\n <component :is=\"prevIcon ? 'span' : 'ChevronLeftIcon'\" aria-hidden=\"true\" :class=\"prevIcon\" v-bind=\"ptm('prevIcon')\" />\n </slot>\n </button>\n <div ref=\"content\" :class=\"cx('navContent')\" @scroll=\"onScroll\" v-bind=\"ptm('navContent')\">\n <ul ref=\"nav\" :class=\"cx('nav')\" v-bind=\"ptm('nav')\">\n <li\n v-for=\"(tab, index) of tabs\"\n :key=\"getKey(tab, index)\"\n :style=\"getTabProp(tab, 'headerStyle')\"\n :class=\"cx('tab.header', { tab, index })\"\n role=\"presentation\"\n v-bind=\"{ ...getTabProp(tab, 'headerProps'), ...getTabPT(tab, 'root', index), ...getTabPT(tab, 'header', index) }\"\n data-pc-name=\"tabpanel\"\n :data-p-active=\"d_activeIndex === index\"\n :data-p-disabled=\"getTabProp(tab, 'disabled')\"\n :data-pc-index=\"index\"\n >\n <a\n :id=\"getTabHeaderActionId(index)\"\n v-ripple\n :class=\"cx('tab.headerAction')\"\n :tabindex=\"getTabProp(tab, 'disabled') || !isTabActive(index) ? -1 : tabindex\"\n role=\"tab\"\n :aria-disabled=\"getTabProp(tab, 'disabled')\"\n :aria-selected=\"isTabActive(index)\"\n :aria-controls=\"getTabContentId(index)\"\n @click=\"onTabClick($event, tab, index)\"\n @keydown=\"onTabKeyDown($event, tab, index)\"\n v-bind=\"{ ...getTabProp(tab, 'headerActionProps'), ...getTabPT(tab, 'headerAction', index) }\"\n >\n <span v-if=\"tab.props && tab.props.header\" :class=\"cx('tab.headerTitle')\" v-bind=\"getTabPT(tab, 'headerTitle', index)\">{{ tab.props.header }}</span>\n <component v-if=\"tab.children && tab.children.header\" :is=\"tab.children.header\"></component>\n </a>\n </li>\n <li ref=\"inkbar\" :class=\"cx('inkbar')\" role=\"presentation\" aria-hidden=\"true\" v-bind=\"ptm('inkbar')\"></li>\n </ul>\n </div>\n <button\n v-if=\"scrollable && !isNextButtonDisabled\"\n ref=\"nextBtn\"\n v-ripple\n type=\"button\"\n :class=\"cx('nextButton')\"\n :tabindex=\"tabindex\"\n :aria-label=\"nextButtonAriaLabel\"\n @click=\"onNextButtonClick\"\n v-bind=\"{ ...nextButtonProps, ...ptm('nextButton') }\"\n data-pc-group-section=\"navbutton\"\n >\n <slot name=\"nexticon\">\n <component :is=\"nextIcon ? 'span' : 'ChevronRightIcon'\" aria-hidden=\"true\" :class=\"nextIcon\" v-bind=\"ptm('nextIcon')\" />\n </slot>\n </button>\n </div>\n <div :class=\"cx('panelContainer')\" v-bind=\"ptm('panelContainer')\">\n <template v-for=\"(tab, index) of tabs\" :key=\"getKey(tab, index)\">\n <div\n v-if=\"lazy ? isTabActive(index) : true\"\n v-show=\"lazy ? true : isTabActive(index)\"\n :id=\"getTabContentId(index)\"\n :style=\"getTabProp(tab, 'contentStyle')\"\n :class=\"cx('tab.content', { tab })\"\n role=\"tabpanel\"\n :aria-labelledby=\"getTabHeaderActionId(index)\"\n v-bind=\"{ ...getTabProp(tab, 'contentProps'), ...getTabPT(tab, 'root', index), ...getTabPT(tab, 'content', index) }\"\n data-pc-name=\"tabpanel\"\n :data-pc-index=\"index\"\n :data-p-active=\"d_activeIndex === index\"\n >\n <component :is=\"tab\"></component>\n </div>\n </template>\n </div>\n </div>\n</template>\n\n<script>\nimport { findSingle, focus, getAttribute, getOffset, getWidth } from '@primeuix/utils/dom';\nimport ChevronLeftIcon from '@primevue/icons/chevronleft';\nimport ChevronRightIcon from '@primevue/icons/chevronright';\nimport Ripple from 'primevue/ripple';\nimport { mergeProps } from 'vue';\nimport BaseTabView from './BaseTabView.vue';\n\nexport default {\n name: 'TabView',\n extends: BaseTabView,\n inheritAttrs: false,\n emits: ['update:activeIndex', 'tab-change', 'tab-click'],\n data() {\n return {\n d_activeIndex: this.activeIndex,\n isPrevButtonDisabled: true,\n isNextButtonDisabled: false\n };\n },\n watch: {\n activeIndex(newValue) {\n this.d_activeIndex = newValue;\n\n this.scrollInView({ index: newValue });\n }\n },\n mounted() {\n console.warn('Deprecated since v4. Use Tabs component instead.');\n\n this.updateInkBar();\n this.scrollable && this.updateButtonState();\n },\n updated() {\n this.updateInkBar();\n this.scrollable && this.updateButtonState();\n },\n methods: {\n isTabPanel(child) {\n return child.type.name === 'TabPanel';\n },\n isTabActive(index) {\n return this.d_activeIndex === index;\n },\n getTabProp(tab, name) {\n return tab.props ? tab.props[name] : undefined;\n },\n getKey(tab, index) {\n return this.getTabProp(tab, 'header') || index;\n },\n getTabHeaderActionId(index) {\n return `${this.$id}_${index}_header_action`;\n },\n getTabContentId(index) {\n return `${this.$id}_${index}_content`;\n },\n getTabPT(tab, key, index) {\n const count = this.tabs.length;\n const tabMetaData = {\n props: tab.props,\n parent: {\n instance: this,\n props: this.$props,\n state: this.$data\n },\n context: {\n index,\n count,\n first: index === 0,\n last: index === count - 1,\n active: this.isTabActive(index)\n }\n };\n\n return mergeProps(this.ptm(`tabpanel.${key}`, { tabpanel: tabMetaData }), this.ptm(`tabpanel.${key}`, tabMetaData), this.ptmo(this.getTabProp(tab, 'pt'), key, tabMetaData));\n },\n onScroll(event) {\n this.scrollable && this.updateButtonState();\n\n event.preventDefault();\n },\n onPrevButtonClick() {\n const content = this.$refs.content;\n const width = getWidth(content);\n const pos = content.scrollLeft - width;\n\n content.scrollLeft = pos <= 0 ? 0 : pos;\n },\n onNextButtonClick() {\n const content = this.$refs.content;\n const width = getWidth(content) - this.getVisibleButtonWidths();\n const pos = content.scrollLeft + width;\n const lastPos = content.scrollWidth - width;\n\n content.scrollLeft = pos >= lastPos ? lastPos : pos;\n },\n onTabClick(event, tab, index) {\n this.changeActiveIndex(event, tab, index);\n this.$emit('tab-click', { originalEvent: event, index });\n },\n onTabKeyDown(event, tab, index) {\n switch (event.code) {\n case 'ArrowLeft':\n this.onTabArrowLeftKey(event);\n break;\n\n case 'ArrowRight':\n this.onTabArrowRightKey(event);\n break;\n\n case 'Home':\n this.onTabHomeKey(event);\n break;\n\n case 'End':\n this.onTabEndKey(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.onTabEnterKey(event, tab, index);\n break;\n\n default:\n break;\n }\n },\n onTabArrowRightKey(event) {\n const nextHeaderAction = this.findNextHeaderAction(event.target.parentElement);\n\n nextHeaderAction ? this.changeFocusedTab(event, nextHeaderAction) : this.onTabHomeKey(event);\n event.preventDefault();\n },\n onTabArrowLeftKey(event) {\n const prevHeaderAction = this.findPrevHeaderAction(event.target.parentElement);\n\n prevHeaderAction ? this.changeFocusedTab(event, prevHeaderAction) : this.onTabEndKey(event);\n event.preventDefault();\n },\n onTabHomeKey(event) {\n const firstHeaderAction = this.findFirstHeaderAction();\n\n this.changeFocusedTab(event, firstHeaderAction);\n event.preventDefault();\n },\n onTabEndKey(event) {\n const lastHeaderAction = this.findLastHeaderAction();\n\n this.changeFocusedTab(event, lastHeaderAction);\n event.preventDefault();\n },\n onPageDownKey(event) {\n this.scrollInView({ index: this.$refs.nav.children.length - 2 });\n event.preventDefault();\n },\n onPageUpKey(event) {\n this.scrollInView({ index: 0 });\n event.preventDefault();\n },\n onTabEnterKey(event, tab, index) {\n this.changeActiveIndex(event, tab, index);\n\n event.preventDefault();\n },\n findNextHeaderAction(tabElement, selfCheck = false) {\n const headerElement = selfCheck ? tabElement : tabElement.nextElementSibling;\n\n return headerElement\n ? getAttribute(headerElement, 'data-p-disabled') || getAttribute(headerElement, 'data-pc-section') === 'inkbar'\n ? this.findNextHeaderAction(headerElement)\n : findSingle(headerElement, '[data-pc-section=\"headeraction\"]')\n : null;\n },\n findPrevHeaderAction(tabElement, selfCheck = false) {\n const headerElement = selfCheck ? tabElement : tabElement.previousElementSibling;\n\n return headerElement\n ? getAttribute(headerElement, 'data-p-disabled') || getAttribute(headerElement, 'data-pc-section') === 'inkbar'\n ? this.findPrevHeaderAction(headerElement)\n : findSingle(headerElement, '[data-pc-section=\"headeraction\"]')\n : null;\n },\n findFirstHeaderAction() {\n return this.findNextHeaderAction(this.$refs.nav.firstElementChild, true);\n },\n findLastHeaderAction() {\n return this.findPrevHeaderAction(this.$refs.nav.lastElementChild, true);\n },\n changeActiveIndex(event, tab, index) {\n if (!this.getTabProp(tab, 'disabled') && this.d_activeIndex !== index) {\n this.d_activeIndex = index;\n\n this.$emit('update:activeIndex', index);\n this.$emit('tab-change', { originalEvent: event, index });\n\n this.scrollInView({ index });\n }\n },\n changeFocusedTab(event, element) {\n if (element) {\n focus(element);\n this.scrollInView({ element });\n\n if (this.selectOnFocus) {\n const index = parseInt(element.parentElement.dataset.pcIndex, 10);\n const tab = this.tabs[index];\n\n this.changeActiveIndex(event, tab, index);\n }\n }\n },\n scrollInView({ element, index = -1 }) {\n const currentElement = element || this.$refs.nav.children[index];\n\n if (currentElement) {\n currentElement.scrollIntoView && currentElement.scrollIntoView({ block: 'nearest' });\n }\n },\n updateInkBar() {\n let tabHeader = this.$refs.nav.children[this.d_activeIndex];\n\n this.$refs.inkbar.style.width = getWidth(tabHeader) + 'px';\n this.$refs.inkbar.style.left = getOffset(tabHeader).left - getOffset(this.$refs.nav).left + 'px';\n },\n updateButtonState() {\n const content = this.$refs.content;\n const { scrollLeft, scrollWidth } = content;\n const width = getWidth(content);\n\n this.isPrevButtonDisabled = scrollLeft === 0;\n this.isNextButtonDisabled = parseInt(scrollLeft) === scrollWidth - width;\n },\n getVisibleButtonWidths() {\n const { prevBtn, nextBtn } = this.$refs;\n\n return [prevBtn, nextBtn].reduce((acc, el) => (el ? acc + getWidth(el) : acc), 0);\n }\n },\n computed: {\n tabs() {\n return this.$slots.default().reduce((tabs, child) => {\n if (this.isTabPanel(child)) {\n tabs.push(child);\n } else if (child.children && child.children instanceof Array) {\n child.children.forEach((nestedChild) => {\n if (this.isTabPanel(nestedChild)) {\n tabs.push(nestedChild);\n }\n });\n }\n\n return tabs;\n }, []);\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 },\n directives: {\n ripple: Ripple\n },\n components: {\n ChevronLeftIcon,\n ChevronRightIcon\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" role=\"tablist\" v-bind=\"ptmi('root')\">\n <div :class=\"cx('navContainer')\" v-bind=\"ptm('navContainer')\">\n <button\n v-if=\"scrollable && !isPrevButtonDisabled\"\n ref=\"prevBtn\"\n v-ripple\n type=\"button\"\n :class=\"cx('prevButton')\"\n :tabindex=\"tabindex\"\n :aria-label=\"prevButtonAriaLabel\"\n @click=\"onPrevButtonClick\"\n v-bind=\"{ ...prevButtonProps, ...ptm('prevButton') }\"\n data-pc-group-section=\"navbutton\"\n >\n <slot name=\"previcon\">\n <component :is=\"prevIcon ? 'span' : 'ChevronLeftIcon'\" aria-hidden=\"true\" :class=\"prevIcon\" v-bind=\"ptm('prevIcon')\" />\n </slot>\n </button>\n <div ref=\"content\" :class=\"cx('navContent')\" @scroll=\"onScroll\" v-bind=\"ptm('navContent')\">\n <ul ref=\"nav\" :class=\"cx('nav')\" v-bind=\"ptm('nav')\">\n <li\n v-for=\"(tab, index) of tabs\"\n :key=\"getKey(tab, index)\"\n :style=\"getTabProp(tab, 'headerStyle')\"\n :class=\"cx('tab.header', { tab, index })\"\n role=\"presentation\"\n v-bind=\"{ ...getTabProp(tab, 'headerProps'), ...getTabPT(tab, 'root', index), ...getTabPT(tab, 'header', index) }\"\n data-pc-name=\"tabpanel\"\n :data-p-active=\"d_activeIndex === index\"\n :data-p-disabled=\"getTabProp(tab, 'disabled')\"\n :data-pc-index=\"index\"\n >\n <a\n :id=\"getTabHeaderActionId(index)\"\n v-ripple\n :class=\"cx('tab.headerAction')\"\n :tabindex=\"getTabProp(tab, 'disabled') || !isTabActive(index) ? -1 : tabindex\"\n role=\"tab\"\n :aria-disabled=\"getTabProp(tab, 'disabled')\"\n :aria-selected=\"isTabActive(index)\"\n :aria-controls=\"getTabContentId(index)\"\n @click=\"onTabClick($event, tab, index)\"\n @keydown=\"onTabKeyDown($event, tab, index)\"\n v-bind=\"{ ...getTabProp(tab, 'headerActionProps'), ...getTabPT(tab, 'headerAction', index) }\"\n >\n <span v-if=\"tab.props && tab.props.header\" :class=\"cx('tab.headerTitle')\" v-bind=\"getTabPT(tab, 'headerTitle', index)\">{{ tab.props.header }}</span>\n <component v-if=\"tab.children && tab.children.header\" :is=\"tab.children.header\"></component>\n </a>\n </li>\n <li ref=\"inkbar\" :class=\"cx('inkbar')\" role=\"presentation\" aria-hidden=\"true\" v-bind=\"ptm('inkbar')\"></li>\n </ul>\n </div>\n <button\n v-if=\"scrollable && !isNextButtonDisabled\"\n ref=\"nextBtn\"\n v-ripple\n type=\"button\"\n :class=\"cx('nextButton')\"\n :tabindex=\"tabindex\"\n :aria-label=\"nextButtonAriaLabel\"\n @click=\"onNextButtonClick\"\n v-bind=\"{ ...nextButtonProps, ...ptm('nextButton') }\"\n data-pc-group-section=\"navbutton\"\n >\n <slot name=\"nexticon\">\n <component :is=\"nextIcon ? 'span' : 'ChevronRightIcon'\" aria-hidden=\"true\" :class=\"nextIcon\" v-bind=\"ptm('nextIcon')\" />\n </slot>\n </button>\n </div>\n <div :class=\"cx('panelContainer')\" v-bind=\"ptm('panelContainer')\">\n <template v-for=\"(tab, index) of tabs\" :key=\"getKey(tab, index)\">\n <div\n v-if=\"lazy ? isTabActive(index) : true\"\n v-show=\"lazy ? true : isTabActive(index)\"\n :id=\"getTabContentId(index)\"\n :style=\"getTabProp(tab, 'contentStyle')\"\n :class=\"cx('tab.content', { tab })\"\n role=\"tabpanel\"\n :aria-labelledby=\"getTabHeaderActionId(index)\"\n v-bind=\"{ ...getTabProp(tab, 'contentProps'), ...getTabPT(tab, 'root', index), ...getTabPT(tab, 'content', index) }\"\n data-pc-name=\"tabpanel\"\n :data-pc-index=\"index\"\n :data-p-active=\"d_activeIndex === index\"\n >\n <component :is=\"tab\"></component>\n </div>\n </template>\n </div>\n </div>\n</template>\n\n<script>\nimport { findSingle, focus, getAttribute, getOffset, getWidth } from '@primeuix/utils/dom';\nimport ChevronLeftIcon from '@primevue/icons/chevronleft';\nimport ChevronRightIcon from '@primevue/icons/chevronright';\nimport Ripple from 'primevue/ripple';\nimport { mergeProps } from 'vue';\nimport BaseTabView from './BaseTabView.vue';\n\nexport default {\n name: 'TabView',\n extends: BaseTabView,\n inheritAttrs: false,\n emits: ['update:activeIndex', 'tab-change', 'tab-click'],\n data() {\n return {\n d_activeIndex: this.activeIndex,\n isPrevButtonDisabled: true,\n isNextButtonDisabled: false\n };\n },\n watch: {\n activeIndex(newValue) {\n this.d_activeIndex = newValue;\n\n this.scrollInView({ index: newValue });\n }\n },\n mounted() {\n console.warn('Deprecated since v4. Use Tabs component instead.');\n\n this.updateInkBar();\n this.scrollable && this.updateButtonState();\n },\n updated() {\n this.updateInkBar();\n this.scrollable && this.updateButtonState();\n },\n methods: {\n isTabPanel(child) {\n return child.type.name === 'TabPanel';\n },\n isTabActive(index) {\n return this.d_activeIndex === index;\n },\n getTabProp(tab, name) {\n return tab.props ? tab.props[name] : undefined;\n },\n getKey(tab, index) {\n return this.getTabProp(tab, 'header') || index;\n },\n getTabHeaderActionId(index) {\n return `${this.$id}_${index}_header_action`;\n },\n getTabContentId(index) {\n return `${this.$id}_${index}_content`;\n },\n getTabPT(tab, key, index) {\n const count = this.tabs.length;\n const tabMetaData = {\n props: tab.props,\n parent: {\n instance: this,\n props: this.$props,\n state: this.$data\n },\n context: {\n index,\n count,\n first: index === 0,\n last: index === count - 1,\n active: this.isTabActive(index)\n }\n };\n\n return mergeProps(this.ptm(`tabpanel.${key}`, { tabpanel: tabMetaData }), this.ptm(`tabpanel.${key}`, tabMetaData), this.ptmo(this.getTabProp(tab, 'pt'), key, tabMetaData));\n },\n onScroll(event) {\n this.scrollable && this.updateButtonState();\n\n event.preventDefault();\n },\n onPrevButtonClick() {\n const content = this.$refs.content;\n const width = getWidth(content);\n const pos = content.scrollLeft - width;\n\n content.scrollLeft = pos <= 0 ? 0 : pos;\n },\n onNextButtonClick() {\n const content = this.$refs.content;\n const width = getWidth(content) - this.getVisibleButtonWidths();\n const pos = content.scrollLeft + width;\n const lastPos = content.scrollWidth - width;\n\n content.scrollLeft = pos >= lastPos ? lastPos : pos;\n },\n onTabClick(event, tab, index) {\n this.changeActiveIndex(event, tab, index);\n this.$emit('tab-click', { originalEvent: event, index });\n },\n onTabKeyDown(event, tab, index) {\n switch (event.code) {\n case 'ArrowLeft':\n this.onTabArrowLeftKey(event);\n break;\n\n case 'ArrowRight':\n this.onTabArrowRightKey(event);\n break;\n\n case 'Home':\n this.onTabHomeKey(event);\n break;\n\n case 'End':\n this.onTabEndKey(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.onTabEnterKey(event, tab, index);\n break;\n\n default:\n break;\n }\n },\n onTabArrowRightKey(event) {\n const nextHeaderAction = this.findNextHeaderAction(event.target.parentElement);\n\n nextHeaderAction ? this.changeFocusedTab(event, nextHeaderAction) : this.onTabHomeKey(event);\n event.preventDefault();\n },\n onTabArrowLeftKey(event) {\n const prevHeaderAction = this.findPrevHeaderAction(event.target.parentElement);\n\n prevHeaderAction ? this.changeFocusedTab(event, prevHeaderAction) : this.onTabEndKey(event);\n event.preventDefault();\n },\n onTabHomeKey(event) {\n const firstHeaderAction = this.findFirstHeaderAction();\n\n this.changeFocusedTab(event, firstHeaderAction);\n event.preventDefault();\n },\n onTabEndKey(event) {\n const lastHeaderAction = this.findLastHeaderAction();\n\n this.changeFocusedTab(event, lastHeaderAction);\n event.preventDefault();\n },\n onPageDownKey(event) {\n this.scrollInView({ index: this.$refs.nav.children.length - 2 });\n event.preventDefault();\n },\n onPageUpKey(event) {\n this.scrollInView({ index: 0 });\n event.preventDefault();\n },\n onTabEnterKey(event, tab, index) {\n this.changeActiveIndex(event, tab, index);\n\n event.preventDefault();\n },\n findNextHeaderAction(tabElement, selfCheck = false) {\n const headerElement = selfCheck ? tabElement : tabElement.nextElementSibling;\n\n return headerElement\n ? getAttribute(headerElement, 'data-p-disabled') || getAttribute(headerElement, 'data-pc-section') === 'inkbar'\n ? this.findNextHeaderAction(headerElement)\n : findSingle(headerElement, '[data-pc-section=\"headeraction\"]')\n : null;\n },\n findPrevHeaderAction(tabElement, selfCheck = false) {\n const headerElement = selfCheck ? tabElement : tabElement.previousElementSibling;\n\n return headerElement\n ? getAttribute(headerElement, 'data-p-disabled') || getAttribute(headerElement, 'data-pc-section') === 'inkbar'\n ? this.findPrevHeaderAction(headerElement)\n : findSingle(headerElement, '[data-pc-section=\"headeraction\"]')\n : null;\n },\n findFirstHeaderAction() {\n return this.findNextHeaderAction(this.$refs.nav.firstElementChild, true);\n },\n findLastHeaderAction() {\n return this.findPrevHeaderAction(this.$refs.nav.lastElementChild, true);\n },\n changeActiveIndex(event, tab, index) {\n if (!this.getTabProp(tab, 'disabled') && this.d_activeIndex !== index) {\n this.d_activeIndex = index;\n\n this.$emit('update:activeIndex', index);\n this.$emit('tab-change', { originalEvent: event, index });\n\n this.scrollInView({ index });\n }\n },\n changeFocusedTab(event, element) {\n if (element) {\n focus(element);\n this.scrollInView({ element });\n\n if (this.selectOnFocus) {\n const index = parseInt(element.parentElement.dataset.pcIndex, 10);\n const tab = this.tabs[index];\n\n this.changeActiveIndex(event, tab, index);\n }\n }\n },\n scrollInView({ element, index = -1 }) {\n const currentElement = element || this.$refs.nav.children[index];\n\n if (currentElement) {\n currentElement.scrollIntoView && currentElement.scrollIntoView({ block: 'nearest' });\n }\n },\n updateInkBar() {\n let tabHeader = this.$refs.nav.children[this.d_activeIndex];\n\n this.$refs.inkbar.style.width = getWidth(tabHeader) + 'px';\n this.$refs.inkbar.style.left = getOffset(tabHeader).left - getOffset(this.$refs.nav).left + 'px';\n },\n updateButtonState() {\n const content = this.$refs.content;\n const { scrollLeft, scrollWidth } = content;\n const width = getWidth(content);\n\n this.isPrevButtonDisabled = scrollLeft === 0;\n this.isNextButtonDisabled = parseInt(scrollLeft) === scrollWidth - width;\n },\n getVisibleButtonWidths() {\n const { prevBtn, nextBtn } = this.$refs;\n\n return [prevBtn, nextBtn].reduce((acc, el) => (el ? acc + getWidth(el) : acc), 0);\n }\n },\n computed: {\n tabs() {\n return this.$slots.default().reduce((tabs, child) => {\n if (this.isTabPanel(child)) {\n tabs.push(child);\n } else if (child.children && child.children instanceof Array) {\n child.children.forEach((nestedChild) => {\n if (this.isTabPanel(nestedChild)) {\n tabs.push(nestedChild);\n }\n });\n }\n\n return tabs;\n }, []);\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 },\n directives: {\n ripple: Ripple\n },\n components: {\n ChevronLeftIcon,\n ChevronRightIcon\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","activeIndex","type","Number","lazy","Boolean","scrollable","tabindex","selectOnFocus","prevButtonProps","nextButtonProps","prevIcon","String","undefined","nextIcon","style","TabViewStyle","provide","$pcTabs","$pcTabView","$parentInstance","BaseTabView","inheritAttrs","emits","data","d_activeIndex","isPrevButtonDisabled","isNextButtonDisabled","watch","newValue","scrollInView","index","mounted","console","warn","updateInkBar","updateButtonState","updated","methods","isTabPanel","child","isTabActive","getTabProp","tab","getKey","getTabHeaderActionId","concat","$id","getTabContentId","getTabPT","key","count","tabs","length","tabMetaData","parent","instance","$props","state","$data","context","first","last","active","mergeProps","ptm","tabpanel","ptmo","onScroll","event","preventDefault","onPrevButtonClick","content","$refs","width","getWidth","pos","scrollLeft","onNextButtonClick","getVisibleButtonWidths","lastPos","scrollWidth","onTabClick","changeActiveIndex","$emit","originalEvent","onTabKeyDown","code","onTabArrowLeftKey","onTabArrowRightKey","onTabHomeKey","onTabEndKey","onPageDownKey","onPageUpKey","onTabEnterKey","nextHeaderAction","findNextHeaderAction","target","parentElement","changeFocusedTab","prevHeaderAction","findPrevHeaderAction","firstHeaderAction","findFirstHeaderAction","lastHeaderAction","findLastHeaderAction","nav","children","tabElement","selfCheck","arguments","headerElement","nextElementSibling","getAttribute","findSingle","previousElementSibling","firstElementChild","lastElementChild","element","focus","parseInt","dataset","pcIndex","_ref","_ref$index","currentElement","scrollIntoView","block","tabHeader","inkbar","left","getOffset","_this$$refs","prevBtn","nextBtn","reduce","acc","el","computed","_this","$slots","push","Array","forEach","nestedChild","prevButtonAriaLabel","$primevue","config","locale","aria","previous","nextButtonAriaLabel","next","directives","ripple","Ripple","components","ChevronLeftIcon","ChevronRightIcon","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","role","ptmi","_createElementVNode","_withDirectives","ref","$options","onClick","apply","_objectSpread","_renderSlot","_createBlock","_resolveDynamicComponent","_Fragment","_renderList","id","$event","onKeydown","header"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/tabview/BaseTabView.vue","../../src/tabview/TabView.vue","../../src/tabview/TabView.vue?vue&type=template&id=15a9c0e0&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport TabViewStyle from 'primevue/tabview/style';\n\nexport default {\n name: 'BaseTabView',\n extends: BaseComponent,\n props: {\n activeIndex: {\n type: Number,\n default: 0\n },\n lazy: {\n type: Boolean,\n default: false\n },\n scrollable: {\n type: Boolean,\n default: false\n },\n tabindex: {\n type: Number,\n default: 0\n },\n selectOnFocus: {\n type: Boolean,\n default: false\n },\n prevButtonProps: {\n type: null,\n default: null\n },\n nextButtonProps: {\n type: null,\n default: null\n },\n prevIcon: {\n type: String,\n default: undefined\n },\n nextIcon: {\n type: String,\n default: undefined\n }\n },\n style: TabViewStyle,\n provide() {\n return {\n $pcTabs: undefined, // Backwards compatible to prevent <TabPanel> component from breaking\n $pcTabView: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" role=\"tablist\" v-bind=\"ptmi('root')\">\n <div :class=\"cx('navContainer')\" v-bind=\"ptm('navContainer')\">\n <button\n v-if=\"scrollable && !isPrevButtonDisabled\"\n ref=\"prevBtn\"\n v-ripple\n type=\"button\"\n :class=\"cx('prevButton')\"\n :tabindex=\"tabindex\"\n :aria-label=\"prevButtonAriaLabel\"\n @click=\"onPrevButtonClick\"\n v-bind=\"{ ...prevButtonProps, ...ptm('prevButton') }\"\n data-pc-group-section=\"navbutton\"\n >\n <slot name=\"previcon\">\n <component :is=\"prevIcon ? 'span' : 'ChevronLeftIcon'\" aria-hidden=\"true\" :class=\"prevIcon\" v-bind=\"ptm('prevIcon')\" />\n </slot>\n </button>\n <div ref=\"content\" :class=\"cx('navContent')\" @scroll=\"onScroll\" v-bind=\"ptm('navContent')\">\n <ul ref=\"nav\" :class=\"cx('nav')\" v-bind=\"ptm('nav')\">\n <li\n v-for=\"(tab, index) of tabs\"\n :key=\"getKey(tab, index)\"\n :style=\"getTabProp(tab, 'headerStyle')\"\n :class=\"cx('tab.header', { tab, index })\"\n role=\"presentation\"\n v-bind=\"{ ...getTabProp(tab, 'headerProps'), ...getTabPT(tab, 'root', index), ...getTabPT(tab, 'header', index) }\"\n data-pc-name=\"tabpanel\"\n :data-p-active=\"d_activeIndex === index\"\n :data-p-disabled=\"getTabProp(tab, 'disabled')\"\n :data-pc-index=\"index\"\n >\n <a\n :id=\"getTabHeaderActionId(index)\"\n v-ripple\n :class=\"cx('tab.headerAction')\"\n :tabindex=\"getTabProp(tab, 'disabled') || !isTabActive(index) ? -1 : tabindex\"\n role=\"tab\"\n :aria-disabled=\"getTabProp(tab, 'disabled')\"\n :aria-selected=\"isTabActive(index)\"\n :aria-controls=\"getTabContentId(index)\"\n @click=\"onTabClick($event, tab, index)\"\n @keydown=\"onTabKeyDown($event, tab, index)\"\n v-bind=\"{ ...getTabProp(tab, 'headerActionProps'), ...getTabPT(tab, 'headerAction', index) }\"\n >\n <span v-if=\"tab.props && tab.props.header\" :class=\"cx('tab.headerTitle')\" v-bind=\"getTabPT(tab, 'headerTitle', index)\">{{ tab.props.header }}</span>\n <component v-if=\"tab.children && tab.children.header\" :is=\"tab.children.header\"></component>\n </a>\n </li>\n <li ref=\"inkbar\" :class=\"cx('inkbar')\" role=\"presentation\" aria-hidden=\"true\" v-bind=\"ptm('inkbar')\"></li>\n </ul>\n </div>\n <button\n v-if=\"scrollable && !isNextButtonDisabled\"\n ref=\"nextBtn\"\n v-ripple\n type=\"button\"\n :class=\"cx('nextButton')\"\n :tabindex=\"tabindex\"\n :aria-label=\"nextButtonAriaLabel\"\n @click=\"onNextButtonClick\"\n v-bind=\"{ ...nextButtonProps, ...ptm('nextButton') }\"\n data-pc-group-section=\"navbutton\"\n >\n <slot name=\"nexticon\">\n <component :is=\"nextIcon ? 'span' : 'ChevronRightIcon'\" aria-hidden=\"true\" :class=\"nextIcon\" v-bind=\"ptm('nextIcon')\" />\n </slot>\n </button>\n </div>\n <div :class=\"cx('panelContainer')\" v-bind=\"ptm('panelContainer')\">\n <template v-for=\"(tab, index) of tabs\" :key=\"getKey(tab, index)\">\n <div\n v-if=\"lazy ? isTabActive(index) : true\"\n v-show=\"lazy ? true : isTabActive(index)\"\n :id=\"getTabContentId(index)\"\n :style=\"getTabProp(tab, 'contentStyle')\"\n :class=\"cx('tab.content', { tab })\"\n role=\"tabpanel\"\n :aria-labelledby=\"getTabHeaderActionId(index)\"\n v-bind=\"{ ...getTabProp(tab, 'contentProps'), ...getTabPT(tab, 'root', index), ...getTabPT(tab, 'content', index) }\"\n data-pc-name=\"tabpanel\"\n :data-pc-index=\"index\"\n :data-p-active=\"d_activeIndex === index\"\n >\n <component :is=\"tab\"></component>\n </div>\n </template>\n </div>\n </div>\n</template>\n\n<script>\nimport { findSingle, focus, getAttribute, getOffset, getWidth } from '@primeuix/utils/dom';\nimport ChevronLeftIcon from '@primevue/icons/chevronleft';\nimport ChevronRightIcon from '@primevue/icons/chevronright';\nimport Ripple from 'primevue/ripple';\nimport { mergeProps } from 'vue';\nimport BaseTabView from './BaseTabView.vue';\n\nexport default {\n name: 'TabView',\n extends: BaseTabView,\n inheritAttrs: false,\n emits: ['update:activeIndex', 'tab-change', 'tab-click'],\n data() {\n return {\n d_activeIndex: this.activeIndex,\n isPrevButtonDisabled: true,\n isNextButtonDisabled: false\n };\n },\n watch: {\n activeIndex(newValue) {\n this.d_activeIndex = newValue;\n\n this.scrollInView({ index: newValue });\n }\n },\n mounted() {\n console.warn('Deprecated since v4. Use Tabs component instead.');\n\n this.updateInkBar();\n this.scrollable && this.updateButtonState();\n },\n updated() {\n this.updateInkBar();\n this.scrollable && this.updateButtonState();\n },\n methods: {\n isTabPanel(child) {\n return child.type.name === 'TabPanel';\n },\n isTabActive(index) {\n return this.d_activeIndex === index;\n },\n getTabProp(tab, name) {\n return tab.props ? tab.props[name] : undefined;\n },\n getKey(tab, index) {\n return this.getTabProp(tab, 'header') || index;\n },\n getTabHeaderActionId(index) {\n return `${this.$id}_${index}_header_action`;\n },\n getTabContentId(index) {\n return `${this.$id}_${index}_content`;\n },\n getTabPT(tab, key, index) {\n const count = this.tabs.length;\n const tabMetaData = {\n props: tab.props,\n parent: {\n instance: this,\n props: this.$props,\n state: this.$data\n },\n context: {\n index,\n count,\n first: index === 0,\n last: index === count - 1,\n active: this.isTabActive(index)\n }\n };\n\n return mergeProps(this.ptm(`tabpanel.${key}`, { tabpanel: tabMetaData }), this.ptm(`tabpanel.${key}`, tabMetaData), this.ptmo(this.getTabProp(tab, 'pt'), key, tabMetaData));\n },\n onScroll(event) {\n this.scrollable && this.updateButtonState();\n\n event.preventDefault();\n },\n onPrevButtonClick() {\n const content = this.$refs.content;\n const width = getWidth(content);\n const pos = content.scrollLeft - width;\n\n content.scrollLeft = pos <= 0 ? 0 : pos;\n },\n onNextButtonClick() {\n const content = this.$refs.content;\n const width = getWidth(content) - this.getVisibleButtonWidths();\n const pos = content.scrollLeft + width;\n const lastPos = content.scrollWidth - width;\n\n content.scrollLeft = pos >= lastPos ? lastPos : pos;\n },\n onTabClick(event, tab, index) {\n this.changeActiveIndex(event, tab, index);\n this.$emit('tab-click', { originalEvent: event, index });\n },\n onTabKeyDown(event, tab, index) {\n switch (event.code) {\n case 'ArrowLeft':\n this.onTabArrowLeftKey(event);\n break;\n\n case 'ArrowRight':\n this.onTabArrowRightKey(event);\n break;\n\n case 'Home':\n this.onTabHomeKey(event);\n break;\n\n case 'End':\n this.onTabEndKey(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.onTabEnterKey(event, tab, index);\n break;\n\n default:\n break;\n }\n },\n onTabArrowRightKey(event) {\n const nextHeaderAction = this.findNextHeaderAction(event.target.parentElement);\n\n nextHeaderAction ? this.changeFocusedTab(event, nextHeaderAction) : this.onTabHomeKey(event);\n event.preventDefault();\n },\n onTabArrowLeftKey(event) {\n const prevHeaderAction = this.findPrevHeaderAction(event.target.parentElement);\n\n prevHeaderAction ? this.changeFocusedTab(event, prevHeaderAction) : this.onTabEndKey(event);\n event.preventDefault();\n },\n onTabHomeKey(event) {\n const firstHeaderAction = this.findFirstHeaderAction();\n\n this.changeFocusedTab(event, firstHeaderAction);\n event.preventDefault();\n },\n onTabEndKey(event) {\n const lastHeaderAction = this.findLastHeaderAction();\n\n this.changeFocusedTab(event, lastHeaderAction);\n event.preventDefault();\n },\n onPageDownKey(event) {\n this.scrollInView({ index: this.$refs.nav.children.length - 2 });\n event.preventDefault();\n },\n onPageUpKey(event) {\n this.scrollInView({ index: 0 });\n event.preventDefault();\n },\n onTabEnterKey(event, tab, index) {\n this.changeActiveIndex(event, tab, index);\n\n event.preventDefault();\n },\n findNextHeaderAction(tabElement, selfCheck = false) {\n const headerElement = selfCheck ? tabElement : tabElement.nextElementSibling;\n\n return headerElement\n ? getAttribute(headerElement, 'data-p-disabled') || getAttribute(headerElement, 'data-pc-section') === 'inkbar'\n ? this.findNextHeaderAction(headerElement)\n : findSingle(headerElement, '[data-pc-section=\"headeraction\"]')\n : null;\n },\n findPrevHeaderAction(tabElement, selfCheck = false) {\n const headerElement = selfCheck ? tabElement : tabElement.previousElementSibling;\n\n return headerElement\n ? getAttribute(headerElement, 'data-p-disabled') || getAttribute(headerElement, 'data-pc-section') === 'inkbar'\n ? this.findPrevHeaderAction(headerElement)\n : findSingle(headerElement, '[data-pc-section=\"headeraction\"]')\n : null;\n },\n findFirstHeaderAction() {\n return this.findNextHeaderAction(this.$refs.nav.firstElementChild, true);\n },\n findLastHeaderAction() {\n return this.findPrevHeaderAction(this.$refs.nav.lastElementChild, true);\n },\n changeActiveIndex(event, tab, index) {\n if (!this.getTabProp(tab, 'disabled') && this.d_activeIndex !== index) {\n this.d_activeIndex = index;\n\n this.$emit('update:activeIndex', index);\n this.$emit('tab-change', { originalEvent: event, index });\n\n this.scrollInView({ index });\n }\n },\n changeFocusedTab(event, element) {\n if (element) {\n focus(element);\n this.scrollInView({ element });\n\n if (this.selectOnFocus) {\n const index = parseInt(element.parentElement.dataset.pcIndex, 10);\n const tab = this.tabs[index];\n\n this.changeActiveIndex(event, tab, index);\n }\n }\n },\n scrollInView({ element, index = -1 }) {\n const currentElement = element || this.$refs.nav.children[index];\n\n if (currentElement) {\n currentElement.scrollIntoView && currentElement.scrollIntoView({ block: 'nearest' });\n }\n },\n updateInkBar() {\n let tabHeader = this.$refs.nav.children[this.d_activeIndex];\n\n this.$refs.inkbar.style.width = getWidth(tabHeader) + 'px';\n this.$refs.inkbar.style.left = getOffset(tabHeader).left - getOffset(this.$refs.nav).left + 'px';\n },\n updateButtonState() {\n const content = this.$refs.content;\n const { scrollLeft, scrollWidth } = content;\n const width = getWidth(content);\n\n this.isPrevButtonDisabled = scrollLeft === 0;\n this.isNextButtonDisabled = parseInt(scrollLeft) === scrollWidth - width;\n },\n getVisibleButtonWidths() {\n const { prevBtn, nextBtn } = this.$refs;\n\n return [prevBtn, nextBtn].reduce((acc, el) => (el ? acc + getWidth(el) : acc), 0);\n }\n },\n computed: {\n tabs() {\n return this.$slots.default().reduce((tabs, child) => {\n if (this.isTabPanel(child)) {\n tabs.push(child);\n } else if (child.children && child.children instanceof Array) {\n child.children.forEach((nestedChild) => {\n if (this.isTabPanel(nestedChild)) {\n tabs.push(nestedChild);\n }\n });\n }\n\n return tabs;\n }, []);\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 },\n directives: {\n ripple: Ripple\n },\n components: {\n ChevronLeftIcon,\n ChevronRightIcon\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" role=\"tablist\" v-bind=\"ptmi('root')\">\n <div :class=\"cx('navContainer')\" v-bind=\"ptm('navContainer')\">\n <button\n v-if=\"scrollable && !isPrevButtonDisabled\"\n ref=\"prevBtn\"\n v-ripple\n type=\"button\"\n :class=\"cx('prevButton')\"\n :tabindex=\"tabindex\"\n :aria-label=\"prevButtonAriaLabel\"\n @click=\"onPrevButtonClick\"\n v-bind=\"{ ...prevButtonProps, ...ptm('prevButton') }\"\n data-pc-group-section=\"navbutton\"\n >\n <slot name=\"previcon\">\n <component :is=\"prevIcon ? 'span' : 'ChevronLeftIcon'\" aria-hidden=\"true\" :class=\"prevIcon\" v-bind=\"ptm('prevIcon')\" />\n </slot>\n </button>\n <div ref=\"content\" :class=\"cx('navContent')\" @scroll=\"onScroll\" v-bind=\"ptm('navContent')\">\n <ul ref=\"nav\" :class=\"cx('nav')\" v-bind=\"ptm('nav')\">\n <li\n v-for=\"(tab, index) of tabs\"\n :key=\"getKey(tab, index)\"\n :style=\"getTabProp(tab, 'headerStyle')\"\n :class=\"cx('tab.header', { tab, index })\"\n role=\"presentation\"\n v-bind=\"{ ...getTabProp(tab, 'headerProps'), ...getTabPT(tab, 'root', index), ...getTabPT(tab, 'header', index) }\"\n data-pc-name=\"tabpanel\"\n :data-p-active=\"d_activeIndex === index\"\n :data-p-disabled=\"getTabProp(tab, 'disabled')\"\n :data-pc-index=\"index\"\n >\n <a\n :id=\"getTabHeaderActionId(index)\"\n v-ripple\n :class=\"cx('tab.headerAction')\"\n :tabindex=\"getTabProp(tab, 'disabled') || !isTabActive(index) ? -1 : tabindex\"\n role=\"tab\"\n :aria-disabled=\"getTabProp(tab, 'disabled')\"\n :aria-selected=\"isTabActive(index)\"\n :aria-controls=\"getTabContentId(index)\"\n @click=\"onTabClick($event, tab, index)\"\n @keydown=\"onTabKeyDown($event, tab, index)\"\n v-bind=\"{ ...getTabProp(tab, 'headerActionProps'), ...getTabPT(tab, 'headerAction', index) }\"\n >\n <span v-if=\"tab.props && tab.props.header\" :class=\"cx('tab.headerTitle')\" v-bind=\"getTabPT(tab, 'headerTitle', index)\">{{ tab.props.header }}</span>\n <component v-if=\"tab.children && tab.children.header\" :is=\"tab.children.header\"></component>\n </a>\n </li>\n <li ref=\"inkbar\" :class=\"cx('inkbar')\" role=\"presentation\" aria-hidden=\"true\" v-bind=\"ptm('inkbar')\"></li>\n </ul>\n </div>\n <button\n v-if=\"scrollable && !isNextButtonDisabled\"\n ref=\"nextBtn\"\n v-ripple\n type=\"button\"\n :class=\"cx('nextButton')\"\n :tabindex=\"tabindex\"\n :aria-label=\"nextButtonAriaLabel\"\n @click=\"onNextButtonClick\"\n v-bind=\"{ ...nextButtonProps, ...ptm('nextButton') }\"\n data-pc-group-section=\"navbutton\"\n >\n <slot name=\"nexticon\">\n <component :is=\"nextIcon ? 'span' : 'ChevronRightIcon'\" aria-hidden=\"true\" :class=\"nextIcon\" v-bind=\"ptm('nextIcon')\" />\n </slot>\n </button>\n </div>\n <div :class=\"cx('panelContainer')\" v-bind=\"ptm('panelContainer')\">\n <template v-for=\"(tab, index) of tabs\" :key=\"getKey(tab, index)\">\n <div\n v-if=\"lazy ? isTabActive(index) : true\"\n v-show=\"lazy ? true : isTabActive(index)\"\n :id=\"getTabContentId(index)\"\n :style=\"getTabProp(tab, 'contentStyle')\"\n :class=\"cx('tab.content', { tab })\"\n role=\"tabpanel\"\n :aria-labelledby=\"getTabHeaderActionId(index)\"\n v-bind=\"{ ...getTabProp(tab, 'contentProps'), ...getTabPT(tab, 'root', index), ...getTabPT(tab, 'content', index) }\"\n data-pc-name=\"tabpanel\"\n :data-pc-index=\"index\"\n :data-p-active=\"d_activeIndex === index\"\n >\n <component :is=\"tab\"></component>\n </div>\n </template>\n </div>\n </div>\n</template>\n\n<script>\nimport { findSingle, focus, getAttribute, getOffset, getWidth } from '@primeuix/utils/dom';\nimport ChevronLeftIcon from '@primevue/icons/chevronleft';\nimport ChevronRightIcon from '@primevue/icons/chevronright';\nimport Ripple from 'primevue/ripple';\nimport { mergeProps } from 'vue';\nimport BaseTabView from './BaseTabView.vue';\n\nexport default {\n name: 'TabView',\n extends: BaseTabView,\n inheritAttrs: false,\n emits: ['update:activeIndex', 'tab-change', 'tab-click'],\n data() {\n return {\n d_activeIndex: this.activeIndex,\n isPrevButtonDisabled: true,\n isNextButtonDisabled: false\n };\n },\n watch: {\n activeIndex(newValue) {\n this.d_activeIndex = newValue;\n\n this.scrollInView({ index: newValue });\n }\n },\n mounted() {\n console.warn('Deprecated since v4. Use Tabs component instead.');\n\n this.updateInkBar();\n this.scrollable && this.updateButtonState();\n },\n updated() {\n this.updateInkBar();\n this.scrollable && this.updateButtonState();\n },\n methods: {\n isTabPanel(child) {\n return child.type.name === 'TabPanel';\n },\n isTabActive(index) {\n return this.d_activeIndex === index;\n },\n getTabProp(tab, name) {\n return tab.props ? tab.props[name] : undefined;\n },\n getKey(tab, index) {\n return this.getTabProp(tab, 'header') || index;\n },\n getTabHeaderActionId(index) {\n return `${this.$id}_${index}_header_action`;\n },\n getTabContentId(index) {\n return `${this.$id}_${index}_content`;\n },\n getTabPT(tab, key, index) {\n const count = this.tabs.length;\n const tabMetaData = {\n props: tab.props,\n parent: {\n instance: this,\n props: this.$props,\n state: this.$data\n },\n context: {\n index,\n count,\n first: index === 0,\n last: index === count - 1,\n active: this.isTabActive(index)\n }\n };\n\n return mergeProps(this.ptm(`tabpanel.${key}`, { tabpanel: tabMetaData }), this.ptm(`tabpanel.${key}`, tabMetaData), this.ptmo(this.getTabProp(tab, 'pt'), key, tabMetaData));\n },\n onScroll(event) {\n this.scrollable && this.updateButtonState();\n\n event.preventDefault();\n },\n onPrevButtonClick() {\n const content = this.$refs.content;\n const width = getWidth(content);\n const pos = content.scrollLeft - width;\n\n content.scrollLeft = pos <= 0 ? 0 : pos;\n },\n onNextButtonClick() {\n const content = this.$refs.content;\n const width = getWidth(content) - this.getVisibleButtonWidths();\n const pos = content.scrollLeft + width;\n const lastPos = content.scrollWidth - width;\n\n content.scrollLeft = pos >= lastPos ? lastPos : pos;\n },\n onTabClick(event, tab, index) {\n this.changeActiveIndex(event, tab, index);\n this.$emit('tab-click', { originalEvent: event, index });\n },\n onTabKeyDown(event, tab, index) {\n switch (event.code) {\n case 'ArrowLeft':\n this.onTabArrowLeftKey(event);\n break;\n\n case 'ArrowRight':\n this.onTabArrowRightKey(event);\n break;\n\n case 'Home':\n this.onTabHomeKey(event);\n break;\n\n case 'End':\n this.onTabEndKey(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.onTabEnterKey(event, tab, index);\n break;\n\n default:\n break;\n }\n },\n onTabArrowRightKey(event) {\n const nextHeaderAction = this.findNextHeaderAction(event.target.parentElement);\n\n nextHeaderAction ? this.changeFocusedTab(event, nextHeaderAction) : this.onTabHomeKey(event);\n event.preventDefault();\n },\n onTabArrowLeftKey(event) {\n const prevHeaderAction = this.findPrevHeaderAction(event.target.parentElement);\n\n prevHeaderAction ? this.changeFocusedTab(event, prevHeaderAction) : this.onTabEndKey(event);\n event.preventDefault();\n },\n onTabHomeKey(event) {\n const firstHeaderAction = this.findFirstHeaderAction();\n\n this.changeFocusedTab(event, firstHeaderAction);\n event.preventDefault();\n },\n onTabEndKey(event) {\n const lastHeaderAction = this.findLastHeaderAction();\n\n this.changeFocusedTab(event, lastHeaderAction);\n event.preventDefault();\n },\n onPageDownKey(event) {\n this.scrollInView({ index: this.$refs.nav.children.length - 2 });\n event.preventDefault();\n },\n onPageUpKey(event) {\n this.scrollInView({ index: 0 });\n event.preventDefault();\n },\n onTabEnterKey(event, tab, index) {\n this.changeActiveIndex(event, tab, index);\n\n event.preventDefault();\n },\n findNextHeaderAction(tabElement, selfCheck = false) {\n const headerElement = selfCheck ? tabElement : tabElement.nextElementSibling;\n\n return headerElement\n ? getAttribute(headerElement, 'data-p-disabled') || getAttribute(headerElement, 'data-pc-section') === 'inkbar'\n ? this.findNextHeaderAction(headerElement)\n : findSingle(headerElement, '[data-pc-section=\"headeraction\"]')\n : null;\n },\n findPrevHeaderAction(tabElement, selfCheck = false) {\n const headerElement = selfCheck ? tabElement : tabElement.previousElementSibling;\n\n return headerElement\n ? getAttribute(headerElement, 'data-p-disabled') || getAttribute(headerElement, 'data-pc-section') === 'inkbar'\n ? this.findPrevHeaderAction(headerElement)\n : findSingle(headerElement, '[data-pc-section=\"headeraction\"]')\n : null;\n },\n findFirstHeaderAction() {\n return this.findNextHeaderAction(this.$refs.nav.firstElementChild, true);\n },\n findLastHeaderAction() {\n return this.findPrevHeaderAction(this.$refs.nav.lastElementChild, true);\n },\n changeActiveIndex(event, tab, index) {\n if (!this.getTabProp(tab, 'disabled') && this.d_activeIndex !== index) {\n this.d_activeIndex = index;\n\n this.$emit('update:activeIndex', index);\n this.$emit('tab-change', { originalEvent: event, index });\n\n this.scrollInView({ index });\n }\n },\n changeFocusedTab(event, element) {\n if (element) {\n focus(element);\n this.scrollInView({ element });\n\n if (this.selectOnFocus) {\n const index = parseInt(element.parentElement.dataset.pcIndex, 10);\n const tab = this.tabs[index];\n\n this.changeActiveIndex(event, tab, index);\n }\n }\n },\n scrollInView({ element, index = -1 }) {\n const currentElement = element || this.$refs.nav.children[index];\n\n if (currentElement) {\n currentElement.scrollIntoView && currentElement.scrollIntoView({ block: 'nearest' });\n }\n },\n updateInkBar() {\n let tabHeader = this.$refs.nav.children[this.d_activeIndex];\n\n this.$refs.inkbar.style.width = getWidth(tabHeader) + 'px';\n this.$refs.inkbar.style.left = getOffset(tabHeader).left - getOffset(this.$refs.nav).left + 'px';\n },\n updateButtonState() {\n const content = this.$refs.content;\n const { scrollLeft, scrollWidth } = content;\n const width = getWidth(content);\n\n this.isPrevButtonDisabled = scrollLeft === 0;\n this.isNextButtonDisabled = parseInt(scrollLeft) === scrollWidth - width;\n },\n getVisibleButtonWidths() {\n const { prevBtn, nextBtn } = this.$refs;\n\n return [prevBtn, nextBtn].reduce((acc, el) => (el ? acc + getWidth(el) : acc), 0);\n }\n },\n computed: {\n tabs() {\n return this.$slots.default().reduce((tabs, child) => {\n if (this.isTabPanel(child)) {\n tabs.push(child);\n } else if (child.children && child.children instanceof Array) {\n child.children.forEach((nestedChild) => {\n if (this.isTabPanel(nestedChild)) {\n tabs.push(nestedChild);\n }\n });\n }\n\n return tabs;\n }, []);\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 },\n directives: {\n ripple: Ripple\n },\n components: {\n ChevronLeftIcon,\n ChevronRightIcon\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","activeIndex","type","Number","lazy","Boolean","scrollable","tabindex","selectOnFocus","prevButtonProps","nextButtonProps","prevIcon","String","undefined","nextIcon","style","TabViewStyle","provide","$pcTabs","$pcTabView","$parentInstance","BaseTabView","inheritAttrs","emits","data","d_activeIndex","isPrevButtonDisabled","isNextButtonDisabled","watch","newValue","scrollInView","index","mounted","console","warn","updateInkBar","updateButtonState","updated","methods","isTabPanel","child","isTabActive","getTabProp","tab","getKey","getTabHeaderActionId","concat","$id","getTabContentId","getTabPT","key","count","tabs","length","tabMetaData","parent","instance","$props","state","$data","context","first","last","active","mergeProps","ptm","tabpanel","ptmo","onScroll","event","preventDefault","onPrevButtonClick","content","$refs","width","getWidth","pos","scrollLeft","onNextButtonClick","getVisibleButtonWidths","lastPos","scrollWidth","onTabClick","changeActiveIndex","$emit","originalEvent","onTabKeyDown","code","onTabArrowLeftKey","onTabArrowRightKey","onTabHomeKey","onTabEndKey","onPageDownKey","onPageUpKey","onTabEnterKey","nextHeaderAction","findNextHeaderAction","target","parentElement","changeFocusedTab","prevHeaderAction","findPrevHeaderAction","firstHeaderAction","findFirstHeaderAction","lastHeaderAction","findLastHeaderAction","nav","children","tabElement","selfCheck","arguments","headerElement","nextElementSibling","getAttribute","findSingle","previousElementSibling","firstElementChild","lastElementChild","element","focus","parseInt","dataset","pcIndex","_ref","_ref$index","currentElement","scrollIntoView","block","tabHeader","inkbar","left","getOffset","_this$$refs","prevBtn","nextBtn","reduce","acc","el","computed","_this","$slots","push","Array","forEach","nestedChild","prevButtonAriaLabel","$primevue","config","locale","aria","previous","nextButtonAriaLabel","next","directives","ripple","Ripple","components","ChevronLeftIcon","ChevronRightIcon","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","role","ptmi","_createElementVNode","_withDirectives","ref","$options","onClick","apply","_objectSpread","_renderSlot","_createBlock","_resolveDynamicComponent","_Fragment","_renderList","ref_for","id","$event","onKeydown","header"],"mappings":"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"}
|
package/terminal/index.mjs
CHANGED
|
@@ -78,17 +78,21 @@ function render(_ctx, _cache, $props, $setup, $data, $options) {
|
|
|
78
78
|
}, _ctx.ptm('content')), [(openBlock(true), createElementBlock(Fragment, null, renderList($data.commands, function (command, i) {
|
|
79
79
|
return openBlock(), createElementBlock("div", mergeProps({
|
|
80
80
|
key: command.text + i.toString(),
|
|
81
|
-
"class": _ctx.cx('command')
|
|
81
|
+
"class": _ctx.cx('command')
|
|
82
|
+
}, {
|
|
82
83
|
ref_for: true
|
|
83
84
|
}, _ctx.ptm('commands')), [createElementVNode("span", mergeProps({
|
|
84
|
-
"class": _ctx.cx('promptLabel')
|
|
85
|
+
"class": _ctx.cx('promptLabel')
|
|
86
|
+
}, {
|
|
85
87
|
ref_for: true
|
|
86
88
|
}, _ctx.ptm('prompt')), toDisplayString(_ctx.prompt), 17), createElementVNode("span", mergeProps({
|
|
87
|
-
"class": _ctx.cx('commandValue')
|
|
89
|
+
"class": _ctx.cx('commandValue')
|
|
90
|
+
}, {
|
|
88
91
|
ref_for: true
|
|
89
92
|
}, _ctx.ptm('command')), toDisplayString(command.text), 17), createElementVNode("div", mergeProps({
|
|
90
93
|
"class": _ctx.cx('commandResponse'),
|
|
91
|
-
"aria-live": "polite"
|
|
94
|
+
"aria-live": "polite"
|
|
95
|
+
}, {
|
|
92
96
|
ref_for: true
|
|
93
97
|
}, _ctx.ptm('response')), toDisplayString(command.response), 17)], 16);
|
|
94
98
|
}), 128))], 16), createElementVNode("div", mergeProps({
|
package/terminal/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/terminal/BaseTerminal.vue","../../src/terminal/Terminal.vue","../../src/terminal/Terminal.vue?vue&type=template&id=df319ce0&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport TerminalStyle from 'primevue/terminal/style';\n\nexport default {\n name: 'BaseTerminal',\n extends: BaseComponent,\n props: {\n welcomeMessage: {\n type: String,\n default: null\n },\n prompt: {\n type: String,\n default: null\n }\n },\n style: TerminalStyle,\n provide() {\n return {\n $pcTerminal: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" @click=\"onClick\" v-bind=\"ptmi('root')\">\n <div v-if=\"welcomeMessage\" :class=\"cx('welcomeMessage')\" v-bind=\"ptm('welcomeMessage')\">{{ welcomeMessage }}</div>\n <div :class=\"cx('commandList')\" v-bind=\"ptm('content')\">\n <div v-for=\"(command, i) of commands\" :key=\"command.text + i.toString()\" :class=\"cx('command')\" v-bind=\"ptm('commands')\">\n <span :class=\"cx('promptLabel')\" v-bind=\"ptm('prompt')\">{{ prompt }}</span>\n <span :class=\"cx('commandValue')\" v-bind=\"ptm('command')\">{{ command.text }}</span>\n <div :class=\"cx('commandResponse')\" aria-live=\"polite\" v-bind=\"ptm('response')\">{{ command.response }}</div>\n </div>\n </div>\n <div :class=\"cx('prompt')\" v-bind=\"ptm('container')\">\n <span :class=\"cx('promptLabel')\" v-bind=\"ptm('prompt')\">{{ prompt }}</span>\n <input ref=\"input\" v-model=\"commandText\" :class=\"cx('promptValue')\" type=\"text\" autocomplete=\"off\" @keydown=\"onKeydown\" v-bind=\"ptm('commandText')\" />\n </div>\n </div>\n</template>\n\n<script>\nimport TerminalService from 'primevue/terminalservice';\nimport BaseTerminal from './BaseTerminal.vue';\n\nexport default {\n name: 'Terminal',\n extends: BaseTerminal,\n inheritAttrs: false,\n data() {\n return {\n commandText: null,\n commands: []\n };\n },\n mounted() {\n TerminalService.on('response', this.responseListener);\n this.$refs.input.focus();\n },\n updated() {\n this.$el.scrollTop = this.$el.scrollHeight;\n },\n beforeUnmount() {\n TerminalService.off('response', this.responseListener);\n },\n methods: {\n onClick() {\n this.$refs.input.focus();\n },\n onKeydown(event) {\n if (event.key === 'Enter' && this.commandText) {\n this.commands.push({ text: this.commandText });\n TerminalService.emit('command', this.commandText);\n this.commandText = '';\n }\n },\n responseListener(response) {\n this.commands[this.commands.length - 1].response = response;\n }\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" @click=\"onClick\" v-bind=\"ptmi('root')\">\n <div v-if=\"welcomeMessage\" :class=\"cx('welcomeMessage')\" v-bind=\"ptm('welcomeMessage')\">{{ welcomeMessage }}</div>\n <div :class=\"cx('commandList')\" v-bind=\"ptm('content')\">\n <div v-for=\"(command, i) of commands\" :key=\"command.text + i.toString()\" :class=\"cx('command')\" v-bind=\"ptm('commands')\">\n <span :class=\"cx('promptLabel')\" v-bind=\"ptm('prompt')\">{{ prompt }}</span>\n <span :class=\"cx('commandValue')\" v-bind=\"ptm('command')\">{{ command.text }}</span>\n <div :class=\"cx('commandResponse')\" aria-live=\"polite\" v-bind=\"ptm('response')\">{{ command.response }}</div>\n </div>\n </div>\n <div :class=\"cx('prompt')\" v-bind=\"ptm('container')\">\n <span :class=\"cx('promptLabel')\" v-bind=\"ptm('prompt')\">{{ prompt }}</span>\n <input ref=\"input\" v-model=\"commandText\" :class=\"cx('promptValue')\" type=\"text\" autocomplete=\"off\" @keydown=\"onKeydown\" v-bind=\"ptm('commandText')\" />\n </div>\n </div>\n</template>\n\n<script>\nimport TerminalService from 'primevue/terminalservice';\nimport BaseTerminal from './BaseTerminal.vue';\n\nexport default {\n name: 'Terminal',\n extends: BaseTerminal,\n inheritAttrs: false,\n data() {\n return {\n commandText: null,\n commands: []\n };\n },\n mounted() {\n TerminalService.on('response', this.responseListener);\n this.$refs.input.focus();\n },\n updated() {\n this.$el.scrollTop = this.$el.scrollHeight;\n },\n beforeUnmount() {\n TerminalService.off('response', this.responseListener);\n },\n methods: {\n onClick() {\n this.$refs.input.focus();\n },\n onKeydown(event) {\n if (event.key === 'Enter' && this.commandText) {\n this.commands.push({ text: this.commandText });\n TerminalService.emit('command', this.commandText);\n this.commandText = '';\n }\n },\n responseListener(response) {\n this.commands[this.commands.length - 1].response = response;\n }\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","welcomeMessage","type","String","prompt","style","TerminalStyle","provide","$pcTerminal","$parentInstance","BaseTerminal","inheritAttrs","data","commandText","commands","mounted","TerminalService","on","responseListener","$refs","input","focus","updated","$el","scrollTop","scrollHeight","beforeUnmount","off","methods","onClick","onKeydown","event","key","push","text","emit","response","length","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","$options","apply","arguments","ptmi","ptm","_createElementVNode","_Fragment","_renderList","$data","command","i","toString","_toDisplayString","_withDirectives","ref","$event","autocomplete"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/terminal/BaseTerminal.vue","../../src/terminal/Terminal.vue","../../src/terminal/Terminal.vue?vue&type=template&id=df319ce0&lang.js"],"sourcesContent":["<script>\nimport BaseComponent from '@primevue/core/basecomponent';\nimport TerminalStyle from 'primevue/terminal/style';\n\nexport default {\n name: 'BaseTerminal',\n extends: BaseComponent,\n props: {\n welcomeMessage: {\n type: String,\n default: null\n },\n prompt: {\n type: String,\n default: null\n }\n },\n style: TerminalStyle,\n provide() {\n return {\n $pcTerminal: this,\n $parentInstance: this\n };\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" @click=\"onClick\" v-bind=\"ptmi('root')\">\n <div v-if=\"welcomeMessage\" :class=\"cx('welcomeMessage')\" v-bind=\"ptm('welcomeMessage')\">{{ welcomeMessage }}</div>\n <div :class=\"cx('commandList')\" v-bind=\"ptm('content')\">\n <div v-for=\"(command, i) of commands\" :key=\"command.text + i.toString()\" :class=\"cx('command')\" v-bind=\"ptm('commands')\">\n <span :class=\"cx('promptLabel')\" v-bind=\"ptm('prompt')\">{{ prompt }}</span>\n <span :class=\"cx('commandValue')\" v-bind=\"ptm('command')\">{{ command.text }}</span>\n <div :class=\"cx('commandResponse')\" aria-live=\"polite\" v-bind=\"ptm('response')\">{{ command.response }}</div>\n </div>\n </div>\n <div :class=\"cx('prompt')\" v-bind=\"ptm('container')\">\n <span :class=\"cx('promptLabel')\" v-bind=\"ptm('prompt')\">{{ prompt }}</span>\n <input ref=\"input\" v-model=\"commandText\" :class=\"cx('promptValue')\" type=\"text\" autocomplete=\"off\" @keydown=\"onKeydown\" v-bind=\"ptm('commandText')\" />\n </div>\n </div>\n</template>\n\n<script>\nimport TerminalService from 'primevue/terminalservice';\nimport BaseTerminal from './BaseTerminal.vue';\n\nexport default {\n name: 'Terminal',\n extends: BaseTerminal,\n inheritAttrs: false,\n data() {\n return {\n commandText: null,\n commands: []\n };\n },\n mounted() {\n TerminalService.on('response', this.responseListener);\n this.$refs.input.focus();\n },\n updated() {\n this.$el.scrollTop = this.$el.scrollHeight;\n },\n beforeUnmount() {\n TerminalService.off('response', this.responseListener);\n },\n methods: {\n onClick() {\n this.$refs.input.focus();\n },\n onKeydown(event) {\n if (event.key === 'Enter' && this.commandText) {\n this.commands.push({ text: this.commandText });\n TerminalService.emit('command', this.commandText);\n this.commandText = '';\n }\n },\n responseListener(response) {\n this.commands[this.commands.length - 1].response = response;\n }\n }\n};\n</script>\n","<template>\n <div :class=\"cx('root')\" @click=\"onClick\" v-bind=\"ptmi('root')\">\n <div v-if=\"welcomeMessage\" :class=\"cx('welcomeMessage')\" v-bind=\"ptm('welcomeMessage')\">{{ welcomeMessage }}</div>\n <div :class=\"cx('commandList')\" v-bind=\"ptm('content')\">\n <div v-for=\"(command, i) of commands\" :key=\"command.text + i.toString()\" :class=\"cx('command')\" v-bind=\"ptm('commands')\">\n <span :class=\"cx('promptLabel')\" v-bind=\"ptm('prompt')\">{{ prompt }}</span>\n <span :class=\"cx('commandValue')\" v-bind=\"ptm('command')\">{{ command.text }}</span>\n <div :class=\"cx('commandResponse')\" aria-live=\"polite\" v-bind=\"ptm('response')\">{{ command.response }}</div>\n </div>\n </div>\n <div :class=\"cx('prompt')\" v-bind=\"ptm('container')\">\n <span :class=\"cx('promptLabel')\" v-bind=\"ptm('prompt')\">{{ prompt }}</span>\n <input ref=\"input\" v-model=\"commandText\" :class=\"cx('promptValue')\" type=\"text\" autocomplete=\"off\" @keydown=\"onKeydown\" v-bind=\"ptm('commandText')\" />\n </div>\n </div>\n</template>\n\n<script>\nimport TerminalService from 'primevue/terminalservice';\nimport BaseTerminal from './BaseTerminal.vue';\n\nexport default {\n name: 'Terminal',\n extends: BaseTerminal,\n inheritAttrs: false,\n data() {\n return {\n commandText: null,\n commands: []\n };\n },\n mounted() {\n TerminalService.on('response', this.responseListener);\n this.$refs.input.focus();\n },\n updated() {\n this.$el.scrollTop = this.$el.scrollHeight;\n },\n beforeUnmount() {\n TerminalService.off('response', this.responseListener);\n },\n methods: {\n onClick() {\n this.$refs.input.focus();\n },\n onKeydown(event) {\n if (event.key === 'Enter' && this.commandText) {\n this.commands.push({ text: this.commandText });\n TerminalService.emit('command', this.commandText);\n this.commandText = '';\n }\n },\n responseListener(response) {\n this.commands[this.commands.length - 1].response = response;\n }\n }\n};\n</script>\n"],"names":["name","BaseComponent","props","welcomeMessage","type","String","prompt","style","TerminalStyle","provide","$pcTerminal","$parentInstance","BaseTerminal","inheritAttrs","data","commandText","commands","mounted","TerminalService","on","responseListener","$refs","input","focus","updated","$el","scrollTop","scrollHeight","beforeUnmount","off","methods","onClick","onKeydown","event","key","push","text","emit","response","length","_openBlock","_createElementBlock","_mergeProps","_ctx","cx","$options","apply","arguments","ptmi","ptm","_createElementVNode","_Fragment","_renderList","$data","command","i","toString","ref_for","_toDisplayString","_withDirectives","ref","$event","autocomplete"],"mappings":";;;;;AAIA,eAAe;AACXA,EAAAA,IAAI,EAAE,cAAc;AACpB,EAAA,SAAA,EAASC,aAAa;AACtBC,EAAAA,KAAK,EAAE;AACHC,IAAAA,cAAc,EAAE;AACZC,MAAAA,IAAI,EAAEC,MAAM;MACZ,SAAS,EAAA;KACZ;AACDC,IAAAA,MAAM,EAAE;AACJF,MAAAA,IAAI,EAAEC,MAAM;MACZ,SAAS,EAAA;AACb;GACH;AACDE,EAAAA,KAAK,EAAEC,aAAa;EACpBC,OAAO,EAAA,SAAPA,OAAOA,GAAG;IACN,OAAO;AACHC,MAAAA,WAAW,EAAE,IAAI;AACjBC,MAAAA,eAAe,EAAE;KACpB;AACL;AACJ,CAAC;;ACHD,aAAe;AACXX,EAAAA,IAAI,EAAE,UAAU;AAChB,EAAA,SAAA,EAASY,QAAY;AACrBC,EAAAA,YAAY,EAAE,KAAK;EACnBC,IAAI,EAAA,SAAJA,IAAIA,GAAG;IACH,OAAO;AACHC,MAAAA,WAAW,EAAE,IAAI;AACjBC,MAAAA,QAAQ,EAAE;KACb;GACJ;EACDC,OAAO,EAAA,SAAPA,OAAOA,GAAG;IACNC,eAAe,CAACC,EAAE,CAAC,UAAU,EAAE,IAAI,CAACC,gBAAgB,CAAC;AACrD,IAAA,IAAI,CAACC,KAAK,CAACC,KAAK,CAACC,KAAK,EAAE;GAC3B;EACDC,OAAO,EAAA,SAAPA,OAAOA,GAAG;IACN,IAAI,CAACC,GAAG,CAACC,YAAY,IAAI,CAACD,GAAG,CAACE,YAAY;GAC7C;EACDC,aAAa,EAAA,SAAbA,aAAaA,GAAG;IACZV,eAAe,CAACW,GAAG,CAAC,UAAU,EAAE,IAAI,CAACT,gBAAgB,CAAC;GACzD;AACDU,EAAAA,OAAO,EAAE;IACLC,OAAO,EAAA,SAAPA,OAAOA,GAAG;AACN,MAAA,IAAI,CAACV,KAAK,CAACC,KAAK,CAACC,KAAK,EAAE;KAC3B;AACDS,IAAAA,SAAS,EAATA,SAAAA,SAASA,CAACC,KAAK,EAAE;MACb,IAAIA,KAAK,CAACC,QAAQ,OAAM,IAAK,IAAI,CAACnB,WAAW,EAAE;AAC3C,QAAA,IAAI,CAACC,QAAQ,CAACmB,IAAI,CAAC;UAAEC,IAAI,EAAE,IAAI,CAACrB;AAAY,SAAC,CAAC;QAC9CG,eAAe,CAACmB,IAAI,CAAC,SAAS,EAAE,IAAI,CAACtB,WAAW,CAAC;QACjD,IAAI,CAACA,WAAY,GAAE,EAAE;AACzB;KACH;AACDK,IAAAA,gBAAgB,EAAhBA,SAAAA,gBAAgBA,CAACkB,QAAQ,EAAE;AACvB,MAAA,IAAI,CAACtB,QAAQ,CAAC,IAAI,CAACA,QAAQ,CAACuB,MAAK,GAAI,CAAC,CAAC,CAACD,QAAO,GAAIA,QAAQ;AAC/D;AACJ;AACJ,CAAC;;;ECvDG,OAAAE,SAAA,EAAA,EAAAC,kBAAA,CAaK,OAbLC,UAaK,CAAA;AAbC,IAAA,OAAA,EAAOC,IAAE,CAAAC,EAAA,CAAA,MAAA,CAAA;IAAWb,OAAK;aAAEc,QAAO,CAAAd,OAAA,IAAAc,QAAA,CAAAd,OAAA,CAAAe,KAAA,CAAAD,QAAA,EAAAE,SAAA,CAAA;KAAA;KAAUJ,IAAI,CAAAK,IAAA,CAAA,MAAA,CAAA,CAAA,EAAA,CACvCL,IAAc,CAAAxC,cAAA,IAAzBqC,SAAA,EAAA,EAAAC,kBAAA,CAAiH,OAAjHC,UAAiH,CAAA;;AAArF,IAAA,OAAA,EAAOC,IAAE,CAAAC,EAAA,CAAA,gBAAA;AAA4B,GAAA,EAAAD,IAAA,CAAAM,GAAG,qCAAuBN,IAAe,CAAAxC,cAAA,CAAA,EAAA,EAAA,CAAA,kCAC1G+C,kBAAA,CAMK,OANLR,UAMK,CAAA;AANC,IAAA,OAAA,EAAOC,IAAE,CAAAC,EAAA,CAAA,aAAA;KAAyBD,IAAG,CAAAM,GAAA,CAAA,SAAA,CAAA,CAAA,EAAA,EACvCT,SAAA,CAAA,IAAA,CAAA,EAAAC,kBAAA,CAIKU,QAJuB,EAAA,IAAA,EAAAC,UAAA,CAAAC,KAAA,CAAArC,QAAQ,EAAvB,UAAAsC,OAAO,EAAEC,CAAC,EAAA;IAAvB,OAAAf,SAAA,EAAA,EAAAC,kBAAA,CAIK,OAJLC,UAIK,CAAA;MAJkCR,GAAG,EAAEoB,OAAO,CAAClB,IAAG,GAAImB,CAAC,CAACC,QAAQ,EAAA;AAAK,MAAA,OAAA,EAAOb,IAAE,CAAAC,EAAA,CAAA,SAAA;;;OAAqBD,IAAG,CAAAM,GAAA,CAAA,UAAA,CAAA,CAAA,EAAA,CACvGC,kBAAA,CAA0E,QAA1ER,UAA0E,CAAA;AAAnE,MAAA,OAAA,EAAOC,IAAE,CAAAC,EAAA,CAAA,aAAA;AAAyB,KAAA,EAAA;AAAAa,MAAAA,OAAA,EAAA;KAAA,EAAAd,IAAA,CAAAM,GAAG,6BAAeN,IAAK,CAAArC,MAAA,CAAA,EAAA,EAAA,CAAA,EAChE4C,kBAAA,CAAkF,QAAlFR,UAAkF,CAAA;AAA3E,MAAA,OAAA,EAAOC,IAAE,CAAAC,EAAA,CAAA,cAAA;;;OAA0BD,IAAG,CAAAM,GAAA,CAAA,SAAA,CAAA,CAAA,EAAAS,eAAA,CAAgBJ,OAAO,CAAClB,IAAK,CAAA,EAAA,EAAA,CAAA,EAC1Ec,kBAAA,CAA2G,OAA3GR,UAA2G,CAAA;AAArG,MAAA,OAAA,EAAOC,IAAE,CAAAC,EAAA,CAAA,iBAAA,CAAA;AAAqB,MAAA,WAAS,EAAC;;;OAAiBD,IAAG,CAAAM,GAAA,CAAA,UAAA,CAAA,CAAA,EAAAS,eAAA,CAAiBJ,OAAO,CAAChB,QAAS,CAAA,EAAA,EAAA,CAAA;mBAG5GY,kBAAA,CAGK,OAHLR,UAGK,CAAA;AAHC,IAAA,OAAA,EAAOC,IAAE,CAAAC,EAAA,CAAA,QAAA;KAAoBD,IAAG,CAAAM,GAAA,CAAA,WAAA,CAAA,CAAA,EAAA,CAClCC,kBAAA,CAA0E,QAA1ER,UAA0E,CAAA;AAAnE,IAAA,OAAA,EAAOC,IAAE,CAAAC,EAAA,CAAA,aAAA;GAAyB,EAAAD,IAAA,CAAAM,GAAG,6BAAeN,IAAK,CAAArC,MAAA,CAAA,EAAA,EAAA,CAAA,EAChEqD,cAAA,CAAAT,kBAAA,CAAqJ,SAArJR,UAAqJ,CAAA;AAA9IkB,IAAAA,GAAG,EAAC,OAAQ;;aAASP,KAAW,CAAAtC,WAAA,GAAA8C,MAAA;AAAA,KAAA,CAAA;AAAG,IAAA,OAAA,EAAOlB,IAAE,CAAAC,EAAA,CAAA,aAAA,CAAA;AAAiBxC,IAAAA,IAAI,EAAC,MAAO;AAAA0D,IAAAA,YAAY,EAAC,KAAM;IAAC9B,SAAO;aAAEa,QAAS,CAAAb,SAAA,IAAAa,QAAA,CAAAb,SAAA,CAAAc,KAAA,CAAAD,QAAA,EAAAE,SAAA,CAAA;KAAA;KAAUJ,IAAG,CAAAM,GAAA,CAAA,aAAA,CAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,EAAA,cAAvGI,KAAW,CAAAtC,WAAA,CAAA;;;;;;;"}
|