petals-ui
Version:
Front-end UI components foundation
36 lines (35 loc) • 1.14 kB
JavaScript
import { getComponentConfig, BaseHeadlessComponent } from '../../basic';
import { getTabBarComponentName } from './utils';
class TabNavHeadlessComponent extends BaseHeadlessComponent {
getDescendantOfParent() {
return 'nav';
}
getParentComponentName() {
return getTabBarComponentName();
}
getComponentName() {
return getComponentConfig('tabNav', 'name') || 'TabNav';
}
getClassNames() {
const classNames = super.getClassNames();
if (this.sc.active) {
classNames.push('is-active');
}
if (this.sc.disabled) {
classNames.push('is-disabled');
}
return classNames;
}
getExtraClassNames() {
const classNames = [];
const { active, activeClassName, disabled, disabledClassName } = this.sc;
if (active && activeClassName) {
classNames.push(activeClassName);
}
if (disabled && disabledClassName) {
classNames.push(disabledClassName);
}
return [...super.getExtraClassNames(), ...classNames];
}
}
export { TabNavHeadlessComponent };