UNPKG

@visa/nova-angular

Version:

Visa Product Design System Nova Angular library

87 lines (86 loc) 3.7 kB
/** * Copyright (c) 2025 Visa, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * **/ import { BooleanInput } from '@angular/cdk/coercion'; import { AfterContentInit, EventEmitter } from '@angular/core'; import { AppReadyService } from '../_utilities/services/app-stable-check.service'; import { ButtonStackedDirective } from '../button-stacked/button-stacked.directive'; import { ButtonDirective } from '../button/button.directive'; import { FloatingUITriggerDirective } from '../floating-ui-trigger/floating-ui-trigger.directive'; import * as i0 from "@angular/core"; export declare class TabItemDirective implements AfterContentInit { private appReady; button: ButtonDirective; stackedButton: ButtonStackedDirective; trigger: FloatingUITriggerDirective; _roleSetByUser: boolean; _roleSetByTab: boolean; _sizeSetByTab: boolean; _nestedTab: boolean; /** * Provides custom class&#40;es&#41; for custom styling. * @default .v-tab */ get class(): string; set class(value: string); _class: string; get hostClass(): string; /** * Sets role of tab item. <br /> * If no custom role is set, role may be set by a parent component (nav, tabs, etc.). * @builtin true */ get role(): string | null; set role(value: string | null); _role: string | null; get hostRole(): string | null; /** * Marks tab as active when true. <br /> * Not to be used with navigational tabs. To set a navigational tab as active, view [Angular's tutorial on identifying the active route](https://angular.dev/guide/routing/router-tutorial#identify-the-active-route). * @default false */ get active(): boolean; set active(value: BooleanInput); _active: boolean; /** * Marks the tab as a disclosure item when true. <br /> * This item cannot be active and should expand and collapse when pressed. * @default false */ get disclosureTab(): boolean; set disclosureTab(value: BooleanInput); _disclosureTab: boolean; /** * Marks the tab as a section title when true. <br /> * This item titles a subset of tabs and is not interactive. * @default false */ get sectionTitle(): boolean; set sectionTitle(value: BooleanInput); _sectionTitle: boolean; /** * Emits true when this tab is set to active. */ tabActive: EventEmitter<boolean>; /** * Emits true when this tab's child button is clicked. */ clicked: EventEmitter<boolean>; constructor(appReady: AppReadyService); ngAfterContentInit(): void; static ɵfac: i0.ɵɵFactoryDeclaration<TabItemDirective, never>; static ɵdir: i0.ɵɵDirectiveDeclaration<TabItemDirective, "[v-tab-item]", never, { "class": { "alias": "class"; "required": false; }; "role": { "alias": "role"; "required": false; }; "active": { "alias": "active"; "required": false; }; "disclosureTab": { "alias": "disclosureTab"; "required": false; }; "sectionTitle": { "alias": "sectionTitle"; "required": false; }; }, { "tabActive": "tabActive"; "clicked": "clicked"; }, ["button", "stackedButton", "trigger"], never, true, never>; }