@visa/nova-angular
Version:
Visa Product Design System Nova Angular library
90 lines (89 loc) • 3.58 kB
TypeScript
/**
* 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 { UUIDService } from '../_utilities/services/uuid.service';
import { PanelContentDirective } from '../panel-content/panel-content.directive';
import { PanelToggleDirective } from '../panel-toggle-button/panel-toggle-button.directive';
import * as i0 from "@angular/core";
export declare class PanelComponent implements AfterContentInit {
private uuidService;
panelContent: PanelContentDirective;
toggleButton: PanelToggleDirective;
/**
* Provides custom class(es) for custom styling.
* @default .v-panel
*/
get class(): string;
set class(value: string);
_class: string;
get hostClass(): string;
/**
* Sets custom id.
* @default uuidService.getUUID('v-panel-')
* @builtin true
*/
id: string;
get hostId(): string;
/**
* Sets custom role.
* @default 'dialog' if panel is not responsive.
* @builtin true
*/
role: string | void;
get hostRole(): string | void;
/**
* Adds skrim (shadow overlay) to modal variant (responsive="false") when true.
* @default false
*/
get skrim(): boolean;
set skrim(value: BooleanInput);
_skrim: boolean;
/**
* Sets panel to responsive variant when true and places panel on same layer as content around it.
* @default false
*/
get responsive(): boolean;
set responsive(value: BooleanInput);
_responsive: boolean;
/**
* Sets panel to expandable variant when true.
* @default false
* @default true if panel contains a <code>PanelToggleDirective</code>.
*/
get expandable(): boolean;
set expandable(value: BooleanInput);
_expandable: boolean;
/**
* Expands panel by default when true. <br />
* To be used when <code>expandable</code> is true.
* @default false
*/
get expanded(): boolean;
set expanded(value: BooleanInput);
_expanded: boolean;
/**
* Emits expanded state when panel is toggled (collapsed and expanded).
*/
panelToggled: EventEmitter<boolean>;
get hostAriaModal(): string | void;
constructor(uuidService: UUIDService);
ngAfterContentInit(): void;
handleToggle(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<PanelComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<PanelComponent, "[v-panel]", never, { "class": { "alias": "class"; "required": false; }; "id": { "alias": "id"; "required": false; }; "role": { "alias": "role"; "required": false; }; "skrim": { "alias": "skrim"; "required": false; }; "responsive": { "alias": "responsive"; "required": false; }; "expandable": { "alias": "expandable"; "required": false; }; "expanded": { "alias": "expanded"; "required": false; }; }, { "panelToggled": "panelToggled"; }, ["panelContent", "toggleButton"], ["[v-panel-toggle]", "*"], true, never>;
}