@visa/nova-angular
Version:
Visa Product Design System Nova Angular library
136 lines • 14.7 kB
JavaScript
/**
* © 2025 Visa
*
* 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 { coerceBooleanProperty } from '@angular/cdk/coercion';
import { ContentChildren, Directive, EventEmitter, HostBinding, Input, Optional, Output, QueryList, signal } from '@angular/core';
import { ButtonColor, ButtonSize } from '../button/button.constants';
import { ButtonDirective } from '../button/button.directive';
import * as i0 from "@angular/core";
import * as i1 from "../button/button.directive";
export class AccordionHeadingDirective {
constructor(hostButton) {
this.hostButton = hostButton;
this._subtle = signal(false);
this._class = '';
this._expanded = false;
/**
* Emits item index when accordion item is toggled (collapsed and expanded).
*/
this.toggled = new EventEmitter();
}
/**
* Provides custom class(es) for custom styling.
* @default .v-accordion-heading
*/
get class() {
return [this._class, 'v-accordion-heading'].join(' ');
}
set class(value) {
this._class = value;
}
get hostClass() {
return this.class;
}
/**
* Sets expanded state of accordion heading. <br />
* <strong>This property is overriden when used with details/summary version of accordion. Instead, refer to the native <code>open</code> property of the details element.</strong>
* @default false
*/
get expanded() {
return this._expanded;
}
set expanded(value) {
this._expanded = coerceBooleanProperty(value);
this.toggled.emit(this._index);
}
get hostBackground() {
if (this._subtle()) {
return 'transparent';
}
}
get hostGap() {
if (this._subtle()) {
return '2px';
}
}
get hostForeground() {
// only apply subtle foreground color if the button is not disabled
if (this._subtle() && !(this.hostButton?.disabled || this.hostButton?.ariaDisabled)) {
return 'var(--palette-default-active)';
}
}
ngAfterContentInit() {
// children buttons
if (this.buttons) {
this.buttons.toArray().forEach((button) => {
if (button.toggleIcon || button.toggleIconComponent) {
this._buttonHeading = button;
}
});
}
// [v-button][v-accordion-heading] instance
if (this.hostButton) {
if (!this.hostButton._buttonSizeSetByUser) {
this.hostButton.buttonSize = ButtonSize.LARGE;
this.hostButton._buttonSizeSetByUser = false;
}
if (!this.hostButton._buttonColorSetByUser) {
this.hostButton.buttonColor = ButtonColor.SECONDARY;
this.hostButton._buttonColorSetByUser = false;
}
}
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AccordionHeadingDirective, deps: [{ token: i1.ButtonDirective, optional: true }], target: i0.ɵɵFactoryTarget.Directive }); }
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: AccordionHeadingDirective, isStandalone: true, selector: "[v-accordion-heading]", inputs: { class: "class", expanded: "expanded" }, outputs: { toggled: "toggled" }, host: { properties: { "class": "this.hostClass", "style.--v-button-default-background": "this.hostBackground", "style.--v-accordion-background": "this.hostBackground", "style.--v-button-default-gap": "this.hostGap", "style.--v-accordion-items-gap": "this.hostGap", "style.--v-accordion-foreground-initial": "this.hostForeground" } }, queries: [{ propertyName: "buttons", predicate: ButtonDirective }], ngImport: i0 }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AccordionHeadingDirective, decorators: [{
type: Directive,
args: [{
standalone: true,
// tslint:disable-next-line:directive-selector
selector: '[v-accordion-heading]'
}]
}], ctorParameters: () => [{ type: i1.ButtonDirective, decorators: [{
type: Optional
}] }], propDecorators: { buttons: [{
type: ContentChildren,
args: [ButtonDirective]
}], class: [{
type: Input
}], hostClass: [{
type: HostBinding,
args: ['class']
}], expanded: [{
type: Input
}], toggled: [{
type: Output
}], hostBackground: [{
type: HostBinding,
args: ['style.--v-button-default-background']
}, {
type: HostBinding,
args: ['style.--v-accordion-background']
}], hostGap: [{
type: HostBinding,
args: ['style.--v-button-default-gap']
}, {
type: HostBinding,
args: ['style.--v-accordion-items-gap']
}], hostForeground: [{
type: HostBinding,
args: ['style.--v-accordion-foreground-initial']
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLWhlYWRpbmcuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9ub3ZhLWxpYi9zcmMvbGliL2FjY29yZGlvbi1oZWFkaW5nL2FjY29yZGlvbi1oZWFkaW5nLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0lBZUk7QUFDSixPQUFPLEVBQWdCLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUUsT0FBTyxFQUVMLGVBQWUsRUFDZixTQUFTLEVBQ1QsWUFBWSxFQUNaLFdBQVcsRUFDWCxLQUFLLEVBQ0wsUUFBUSxFQUNSLE1BQU0sRUFDTixTQUFTLEVBQ1QsTUFBTSxFQUNQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7QUFPN0QsTUFBTSxPQUFPLHlCQUF5QjtJQU1wQyxZQUErQixVQUE0QjtRQUE1QixlQUFVLEdBQVYsVUFBVSxDQUFrQjtRQUozRCxZQUFPLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBaUJ4QixXQUFNLEdBQVcsRUFBRSxDQUFDO1FBbUJwQixjQUFTLEdBQVksS0FBSyxDQUFDO1FBRTNCOztXQUVHO1FBQ08sWUFBTyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7SUFyQ2UsQ0FBQztJQUUvRDs7O09BR0c7SUFDSCxJQUNJLEtBQUs7UUFDUCxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxxQkFBcUIsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBYTtRQUNyQixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztJQUN0QixDQUFDO0lBRUQsSUFD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biAqICAgICAgICAgICAgICDCqSAyMDI1IFZpc2FcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICpcbiAqKi9cbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7XG4gIEFmdGVyQ29udGVudEluaXQsXG4gIENvbnRlbnRDaGlsZHJlbixcbiAgRGlyZWN0aXZlLFxuICBFdmVudEVtaXR0ZXIsXG4gIEhvc3RCaW5kaW5nLFxuICBJbnB1dCxcbiAgT3B0aW9uYWwsXG4gIE91dHB1dCxcbiAgUXVlcnlMaXN0LFxuICBzaWduYWxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCdXR0b25Db2xvciwgQnV0dG9uU2l6ZSB9IGZyb20gJy4uL2J1dHRvbi9idXR0b24uY29uc3RhbnRzJztcbmltcG9ydCB7IEJ1dHRvbkRpcmVjdGl2ZSB9IGZyb20gJy4uL2J1dHRvbi9idXR0b24uZGlyZWN0aXZlJztcblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpkaXJlY3RpdmUtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdbdi1hY2NvcmRpb24taGVhZGluZ10nXG59KVxuZXhwb3J0IGNsYXNzIEFjY29yZGlvbkhlYWRpbmdEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcbiAgQENvbnRlbnRDaGlsZHJlbihCdXR0b25EaXJlY3RpdmUpIGJ1dHRvbnM6IFF1ZXJ5TGlzdDxCdXR0b25EaXJlY3RpdmU+O1xuICBfc3VidGxlID0gc2lnbmFsKGZhbHNlKTtcbiAgX2luZGV4OiBudW1iZXI7XG4gIF9idXR0b25IZWFkaW5nOiBCdXR0b25EaXJlY3RpdmU7XG5cbiAgY29uc3RydWN0b3IoQE9wdGlvbmFsKCkgcHVibGljIGhvc3RCdXR0b24/OiBCdXR0b25EaXJlY3RpdmUpIHt9XG5cbiAgLyoqXG4gICAqIFByb3ZpZGVzIGN1c3RvbSBjbGFzcyYjNDA7ZXMmIzQxOyBmb3IgY3VzdG9tIHN0eWxpbmcuXG4gICAqIEBkZWZhdWx0IC52LWFjY29yZGlvbi1oZWFkaW5nXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgY2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gW3RoaXMuX2NsYXNzLCAndi1hY2NvcmRpb24taGVhZGluZyddLmpvaW4oJyAnKTtcbiAgfVxuICBzZXQgY2xhc3ModmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuX2NsYXNzID0gdmFsdWU7XG4gIH1cbiAgX2NsYXNzOiBzdHJpbmcgPSAnJztcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5jbGFzcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIGV4cGFuZGVkIHN0YXRlIG9mIGFjY29yZGlvbiBoZWFkaW5nLiA8YnIgLz5cbiAgICogPHN0cm9uZz5UaGlzIHByb3BlcnR5IGlzIG92ZXJyaWRlbiB3aGVuIHVzZWQgd2l0aCBkZXRhaWxzL3N1bW1hcnkgdmVyc2lvbiBvZiBhY2NvcmRpb24uIEluc3RlYWQsIHJlZmVyIHRvIHRoZSBuYXRpdmUgPGNvZGU+b3BlbjwvY29kZT4gcHJvcGVydHkgb2YgdGhlIGRldGFpbHMgZWxlbWVudC48L3N0cm9uZz5cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBleHBhbmRlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZXhwYW5kZWQ7XG4gIH1cbiAgc2V0IGV4cGFuZGVkKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICB0aGlzLl9leHBhbmRlZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgdGhpcy50b2dnbGVkLmVtaXQodGhpcy5faW5kZXgpO1xuICB9XG4gIF9leHBhbmRlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBFbWl0cyBpdGVtIGluZGV4IHdoZW4gYWNjb3JkaW9uIGl0ZW0gaXMgdG9nZ2xlZCAoY29sbGFwc2VkIGFuZCBleHBhbmRlZCkuXG4gICAqL1xuICBAT3V0cHV0KCkgdG9nZ2xlZCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIEBIb3N0QmluZGluZygnc3R5bGUuLS12LWJ1dHRvbi1kZWZhdWx0LWJhY2tncm91bmQnKVxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLi0tdi1hY2NvcmRpb24tYmFja2dyb3VuZCcpXG4gIGdldCBob3N0QmFja2dyb3VuZCgpOiBzdHJpbmcgfCB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3VidGxlKCkpIHtcbiAgICAgIHJldHVybiAndHJhbnNwYXJlbnQnO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0QmluZGluZygnc3R5bGUuLS12LWJ1dHRvbi1kZWZhdWx0LWdhcCcpXG4gIEBIb3N0QmluZGluZygnc3R5bGUuLS12LWFjY29yZGlvbi1pdGVtcy1nYXAnKVxuICBnZXQgaG9zdEdhcCgpOiBzdHJpbmcgfCB2b2lkIHtcbiAgICBpZiAodGhpcy5fc3VidGxlKCkpIHtcbiAgICAgIHJldHVybiAnMnB4JztcbiAgICB9XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLi0tdi1hY2NvcmRpb24tZm9yZWdyb3VuZC1pbml0aWFsJylcbiAgZ2V0IGhvc3RGb3JlZ3JvdW5kKCk6IHN0cmluZyB8IHZvaWQge1xuICAgIC8vIG9ubHkgYXBwbHkgc3VidGxlIGZvcmVncm91bmQgY29sb3IgaWYgdGhlIGJ1dHRvbiBpcyBub3QgZGlzYWJsZWRcbiAgICBpZiAodGhpcy5fc3VidGxlKCkgJiYgISh0aGlzLmhvc3RCdXR0b24/LmRpc2FibGVkIHx8IHRoaXMuaG9zdEJ1dHRvbj8uYXJpYURpc2FibGVkKSkge1xuICAgICAgcmV0dXJuICd2YXIoLS1wYWxldHRlLWRlZmF1bHQtYWN0aXZlKSc7XG4gICAgfVxuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgIC8vIGNoaWxkcmVuIGJ1dHRvbnNcbiAgICBpZiAodGhpcy5idXR0b25zKSB7XG4gICAgICB0aGlzLmJ1dHRvbnMudG9BcnJheSgpLmZvckVhY2goKGJ1dHRvbikgPT4ge1xuICAgICAgICBpZiAoYnV0dG9uLnRvZ2dsZUljb24gfHwgYnV0dG9uLnRvZ2dsZUljb25Db21wb25lbnQpIHtcbiAgICAgICAgICB0aGlzLl9idXR0b25IZWFkaW5nID0gYnV0dG9uO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBbdi1idXR0b25dW3YtYWNjb3JkaW9uLWhlYWRpbmddIGluc3RhbmNlXG4gICAgaWYgKHRoaXMuaG9zdEJ1dHRvbikge1xuICAgICAgaWYgKCF0aGlzLmhvc3RCdXR0b24uX2J1dHRvblNpemVTZXRCeVVzZXIpIHtcbiAgICAgICAgdGhpcy5ob3N0QnV0dG9uLmJ1dHRvblNpemUgPSBCdXR0b25TaXplLkxBUkdFO1xuICAgICAgICB0aGlzLmhvc3RCdXR0b24uX2J1dHRvblNpemVTZXRCeVVzZXIgPSBmYWxzZTtcbiAgICAgIH1cbiAgICAgIGlmICghdGhpcy5ob3N0QnV0dG9uLl9idXR0b25Db2xvclNldEJ5VXNlcikge1xuICAgICAgICB0aGlzLmhvc3RCdXR0b24uYnV0dG9uQ29sb3IgPSBCdXR0b25Db2xvci5TRUNPTkRBUlk7XG4gICAgICAgIHRoaXMuaG9zdEJ1dHRvbi5fYnV0dG9uQ29sb3JTZXRCeVVzZXIgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==