diff --git a/packages/components/src/components/bal-tabs/bal-tabs.tsx b/packages/components/src/components/bal-tabs/bal-tabs.tsx index 80b51e2066..7e2cfba567 100644 --- a/packages/components/src/components/bal-tabs/bal-tabs.tsx +++ b/packages/components/src/components/bal-tabs/bal-tabs.tsx @@ -19,6 +19,7 @@ export class Tabs { private didInit = false private mutationO?: MutationObserver private timeoutTimer?: NodeJS.Timer + private accordion: HTMLBalAccordionElement | null = null @State() tabsOptions: BalTabOption[] = [] @State() lineWidth = 0 @@ -136,6 +137,14 @@ export class Tabs { this.debounceChanged() this.updateTabs() + const accordion = (this.accordion = this.el.closest('bal-accordion')) + + if (accordion) { + accordion.addEventListener('balChange', () => { + this.moveLine(this.getTargetElement(this.value)) + }) + } + this.mutationO = watchForTabs(this.el, 'bal-tab-item', () => { this.updateTabs() })