UNPKG

@visa/nova-angular

Version:

Visa Product Design System Nova Angular library

59 lines 6.28 kB
/** * © 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 { Directive, HostBinding, Input } from '@angular/core'; import { MessageType } from './message.constants'; import * as i0 from "@angular/core"; export class MessageDirective { /** * Sets message type. * @default 'information' / MessageType.INFORMATION * @options "error" | MessageType.ERROR | <br> "information" | MessageType.INFORMATION | <br> "success" | MessageType.SUCCESS | <br> "warning" | MessageType.WARNING | <br> "close" | MessageType.CLOSE | <br> "subtle" | MessageType.SUBTLE */ get messageType() { return this._messageType; } set messageType(value) { this._messageType = value; } get hostClasses() { return [ this.class, 'v-message', this.messageType != MessageType.INFORMATION ? `v-message-${this.messageType}` : '' ].join(' '); } constructor() { this._messageType = MessageType.INFORMATION; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MessageDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); } static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: MessageDirective, isStandalone: true, selector: "[v-message]", inputs: { messageType: "messageType", class: "class" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0 }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: MessageDirective, decorators: [{ type: Directive, args: [{ standalone: true, selector: '[v-message]' }] }], ctorParameters: () => [], propDecorators: { messageType: [{ type: Input }], class: [{ type: Input }], hostClasses: [{ type: HostBinding, args: ['class'] }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25vdmEtbGliL3NyYy9saWIvbWVzc2FnZS9tZXNzYWdlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0lBZUk7QUFDSixPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQU1sRCxNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCOzs7O09BSUc7SUFDSCxJQUNJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUNELElBQUksV0FBVyxDQUFDLEtBQWtCO1FBQ2hDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO0lBQzVCLENBQUM7SUFRRCxJQUNJLFdBQVc7UUFDYixPQUFPO1lBQ0wsSUFBSSxDQUFDLEtBQUs7WUFDVixXQUFXO1lBQ1gsSUFBSSxDQUFDLFdBQVcsSUFBSSxXQUFXLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQyxhQUFhLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRTtTQUNuRixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNkLENBQUM7SUFFRDtRQWhCQSxpQkFBWSxHQUFnQixXQUFXLENBQUMsV0FBVyxDQUFDO0lBZ0JyQyxDQUFDOytHQTdCTCxnQkFBZ0I7bUdBQWhCLGdCQUFnQjs7NEZBQWhCLGdCQUFnQjtrQkFKNUIsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLGFBQWE7aUJBQ3hCO3dEQVFLLFdBQVc7c0JBRGQsS0FBSztnQkFhRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRUYsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqICAgICAgICAgICAgICDCqSAyMDI1IFZpc2FcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICpcbiAqKi9cbmltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdEJpbmRpbmcsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNZXNzYWdlVHlwZSB9IGZyb20gJy4vbWVzc2FnZS5jb25zdGFudHMnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdbdi1tZXNzYWdlXSdcbn0pXG5leHBvcnQgY2xhc3MgTWVzc2FnZURpcmVjdGl2ZSB7XG4gIC8qKlxuICAgKiBTZXRzIG1lc3NhZ2UgdHlwZS5cbiAgICogQGRlZmF1bHQgJ2luZm9ybWF0aW9uJyAvIE1lc3NhZ2VUeXBlLklORk9STUFUSU9OXG4gICAqIEBvcHRpb25zIFwiZXJyb3JcIiB8IE1lc3NhZ2VUeXBlLkVSUk9SIHwgPGJyPiBcImluZm9ybWF0aW9uXCIgfCBNZXNzYWdlVHlwZS5JTkZPUk1BVElPTiB8IDxicj4gXCJzdWNjZXNzXCIgfCBNZXNzYWdlVHlwZS5TVUNDRVNTIHwgPGJyPiBcIndhcm5pbmdcIiB8IE1lc3NhZ2VUeXBlLldBUk5JTkcgfCA8YnI+IFwiY2xvc2VcIiB8IE1lc3NhZ2VUeXBlLkNMT1NFIHwgPGJyPiBcInN1YnRsZVwiIHwgTWVzc2FnZVR5cGUuU1VCVExFXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgbWVzc2FnZVR5cGUoKTogTWVzc2FnZVR5cGUge1xuICAgIHJldHVybiB0aGlzLl9tZXNzYWdlVHlwZTtcbiAgfVxuICBzZXQgbWVzc2FnZVR5cGUodmFsdWU6IE1lc3NhZ2VUeXBlKSB7XG4gICAgdGhpcy5fbWVzc2FnZVR5cGUgPSB2YWx1ZTtcbiAgfVxuICBfbWVzc2FnZVR5cGU6IE1lc3NhZ2VUeXBlID0gTWVzc2FnZVR5cGUuSU5GT1JNQVRJT047XG5cbiAgLyoqXG4gICAqIFByb3ZpZGVzIGN1c3RvbSBjbGFzcyYjNDA7ZXMmIzQxOyBmb3IgY3VzdG9tIHN0eWxpbmcuXG4gICAqIEBkZWZhdWx0IC52LW1lc3NhZ2Uudi1tZXNzYWdlLSZsdDttZXNzYWdlVHlwZSZndDtcbiAgICovXG4gIEBJbnB1dCgpIGNsYXNzOiBzdHJpbmc7XG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgaG9zdENsYXNzZXMoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gW1xuICAgICAgdGhpcy5jbGFzcyxcbiAgICAgICd2LW1lc3NhZ2UnLFxuICAgICAgdGhpcy5tZXNzYWdlVHlwZSAhPSBNZXNzYWdlVHlwZS5JTkZPUk1BVElPTiA/IGB2LW1lc3NhZ2UtJHt0aGlzLm1lc3NhZ2VUeXBlfWAgOiAnJ1xuICAgIF0uam9pbignICcpO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7fVxufVxuIl19