@visa/nova-angular
Version:
Visa Product Design System Nova Angular library
57 lines • 7.09 kB
JavaScript
/**
* 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 { Directive } from '@angular/core';
import { AccordionHeadingDirective } from '../accordion-heading/accordion-heading.directive';
import { ButtonColor, ButtonSize } from '../button/button.constants';
import { ButtonDirective } from '../button/button.directive';
import * as i0 from "@angular/core";
import * as i1 from "../accordion-heading/accordion-heading.directive";
import * as i2 from "../button/button.directive";
/**
* Directive to be used in conjunction with accordion-heading to provide a button to control the accordion item.
* @deprecated
* @deprecationMessage Use the accordion-heading directive instead.
*/
export class AccordionButtonHeadingDirective {
constructor(accordionHeading, button) {
this.accordionHeading = accordionHeading;
this.button = button;
}
ngAfterContentInit() {
if (!this.accordionHeading && this.button) {
if (!this.button._buttonSizeSetByUser) {
this.button.buttonSize = ButtonSize.LARGE;
this.button._buttonSizeSetByUser = false;
}
if (!this.button._buttonColorSetByUser) {
this.button.buttonColor = ButtonColor.SECONDARY;
this.button._buttonColorSetByUser = false;
}
}
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AccordionButtonHeadingDirective, deps: [{ token: i1.AccordionHeadingDirective }, { token: i2.ButtonDirective }], target: i0.ɵɵFactoryTarget.Directive }); }
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: AccordionButtonHeadingDirective, isStandalone: true, selector: "[v-accordion-heading][v-button], [v-accordion-toggle-button]", ngImport: i0 }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: AccordionButtonHeadingDirective, decorators: [{
type: Directive,
args: [{
standalone: true,
// tslint:disable-next-line:directive-selector
selector: '[v-accordion-heading][v-button], [v-accordion-toggle-button]'
}]
}], ctorParameters: () => [{ type: i1.AccordionHeadingDirective }, { type: i2.ButtonDirective }] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNjb3JkaW9uLWJ1dHRvbi1oZWFkaW5nLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbm92YS1saWIvc3JjL2xpYi9hY2NvcmRpb24tYnV0dG9uLWhlYWRpbmcvYWNjb3JkaW9uLWJ1dHRvbi1oZWFkaW5nLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0lBZUk7QUFDSixPQUFPLEVBQW9CLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUM3RixPQUFPLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQUU3RDs7OztHQUlHO0FBTUgsTUFBTSxPQUFPLCtCQUErQjtJQUMxQyxZQUNTLGdCQUEyQyxFQUMzQyxNQUF3QjtRQUR4QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQTJCO1FBQzNDLFdBQU0sR0FBTixNQUFNLENBQWtCO0lBQzlCLENBQUM7SUFFSixrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDMUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsb0JBQW9CLEVBQUUsQ0FBQztnQkFDdEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDLEtBQUssQ0FBQztnQkFDMUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsR0FBRyxLQUFLLENBQUM7WUFDM0MsQ0FBQztZQUNELElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLHFCQUFxQixFQUFFLENBQUM7Z0JBQ3ZDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQyxTQUFTLENBQUM7Z0JBQ2hELElBQUksQ0FBQyxNQUFNLENBQUMscUJBQXFCLEdBQUcsS0FBSyxDQUFDO1lBQzVDLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQzsrR0FqQlUsK0JBQStCO21HQUEvQiwrQkFBK0I7OzRGQUEvQiwrQkFBK0I7a0JBTDNDLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLDhDQUE4QztvQkFDOUMsUUFBUSxFQUFFLDhEQUE4RDtpQkFDekUiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqICAgICAgICAgICAgICBDb3B5cmlnaHQgKGMpIDIwMjUgVmlzYSwgSW5jLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKlxuICoqL1xuaW1wb3J0IHsgQWZ0ZXJDb250ZW50SW5pdCwgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY2NvcmRpb25IZWFkaW5nRGlyZWN0aXZlIH0gZnJvbSAnLi4vYWNjb3JkaW9uLWhlYWRpbmcvYWNjb3JkaW9uLWhlYWRpbmcuZGlyZWN0aXZlJztcbmltcG9ydCB7IEJ1dHRvbkNvbG9yLCBCdXR0b25TaXplIH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5jb25zdGFudHMnO1xuaW1wb3J0IHsgQnV0dG9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vYnV0dG9uL2J1dHRvbi5kaXJlY3RpdmUnO1xuXG4vKipcbiAqIERpcmVjdGl2ZSB0byBiZSB1c2VkIGluIGNvbmp1bmN0aW9uIHdpdGggYWNjb3JkaW9uLWhlYWRpbmcgdG8gcHJvdmlkZSBhIGJ1dHRvbiB0byBjb250cm9sIHRoZSBhY2NvcmRpb24gaXRlbS5cbiAqIEBkZXByZWNhdGVkXG4gKiBAZGVwcmVjYXRpb25NZXNzYWdlIFVzZSB0aGUgYWNjb3JkaW9uLWhlYWRpbmcgZGlyZWN0aXZlIGluc3RlYWQuXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6ZGlyZWN0aXZlLXNlbGVjdG9yXG4gIHNlbGVjdG9yOiAnW3YtYWNjb3JkaW9uLWhlYWRpbmddW3YtYnV0dG9uXSwgW3YtYWNjb3JkaW9uLXRvZ2dsZS1idXR0b25dJ1xufSlcbmV4cG9ydCBjbGFzcyBBY2NvcmRpb25CdXR0b25IZWFkaW5nRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBhY2NvcmRpb25IZWFkaW5nOiBBY2NvcmRpb25IZWFkaW5nRGlyZWN0aXZlLFxuICAgIHB1YmxpYyBidXR0b24/OiBCdXR0b25EaXJlY3RpdmVcbiAgKSB7fVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuYWNjb3JkaW9uSGVhZGluZyAmJiB0aGlzLmJ1dHRvbikge1xuICAgICAgaWYgKCF0aGlzLmJ1dHRvbi5fYnV0dG9uU2l6ZVNldEJ5VXNlcikge1xuICAgICAgICB0aGlzLmJ1dHRvbi5idXR0b25TaXplID0gQnV0dG9uU2l6ZS5MQVJHRTtcbiAgICAgICAgdGhpcy5idXR0b24uX2J1dHRvblNpemVTZXRCeVVzZXIgPSBmYWxzZTtcbiAgICAgIH1cbiAgICAgIGlmICghdGhpcy5idXR0b24uX2J1dHRvbkNvbG9yU2V0QnlVc2VyKSB7XG4gICAgICAgIHRoaXMuYnV0dG9uLmJ1dHRvbkNvbG9yID0gQnV0dG9uQ29sb3IuU0VDT05EQVJZO1xuICAgICAgICB0aGlzLmJ1dHRvbi5fYnV0dG9uQ29sb3JTZXRCeVVzZXIgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiJdfQ==