UNPKG

@visa/nova-angular

Version:

Visa Product Design System Nova Angular library

67 lines 7.44 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 { Directive, HostBinding, Input } from '@angular/core'; import * as i0 from "@angular/core"; export const ElevationType = { NONE: 'none', INSET: 'inset', XS: 'xs', SM: 'sm', MD: 'md', LG: 'lg', XL: 'xl', XXL: 'xxl' }; export class ElevationDirective { get hostClasses() { return [ this.vElevation === ElevationType.NONE || this.vElevation === ElevationType.INSET ? `v-elevation-${this.vElevation}` : '', this.vElevation === ElevationType.XS ? 'v-elevation-xsmall' : '', this.vElevation === ElevationType.SM ? 'v-elevation-small' : '', this.vElevation === ElevationType.MD ? 'v-elevation-medium' : '', this.vElevation === ElevationType.LG ? 'v-elevation-large' : '', this.vElevation === ElevationType.XL ? 'v-elevation-xlarge' : '', this.vElevation === ElevationType.XXL ? 'v-elevation-xxlarge' : '' ].join(' '); } /** * Applies elevation given. */ get vElevation() { return this._vElevation; } set vElevation(value) { this._vElevation = value; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ElevationDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); } static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: ElevationDirective, isStandalone: true, selector: "[vElevation], ", inputs: { vElevation: "vElevation" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0 }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ElevationDirective, decorators: [{ type: Directive, args: [{ standalone: true, selector: '[vElevation], ' }] }], propDecorators: { hostClasses: [{ type: HostBinding, args: ['class'] }], vElevation: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxldmF0aW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbm92YS1saWIvc3JjL2xpYi9lbGV2YXRpb24vZWxldmF0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0lBZUk7QUFDSixPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTlELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRztJQUMzQixJQUFJLEVBQUUsTUFBTTtJQUNaLEtBQUssRUFBRSxPQUFPO0lBQ2QsRUFBRSxFQUFFLElBQUk7SUFDUixFQUFFLEVBQUUsSUFBSTtJQUNSLEVBQUUsRUFBRSxJQUFJO0lBQ1IsRUFBRSxFQUFFLElBQUk7SUFDUixFQUFFLEVBQUUsSUFBSTtJQUNSLEdBQUcsRUFBRSxLQUFLO0NBQ0YsQ0FBQztBQVFYLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsSUFDSSxXQUFXO1FBQ2IsT0FBTztZQUNMLElBQUksQ0FBQyxVQUFVLEtBQUssYUFBYSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLGFBQWEsQ0FBQyxLQUFLO2dCQUMvRSxDQUFDLENBQUMsZUFBZSxJQUFJLENBQUMsVUFBVSxFQUFFO2dCQUNsQyxDQUFDLENBQUMsRUFBRTtZQUNOLElBQUksQ0FBQyxVQUFVLEtBQUssYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDaEUsSUFBSSxDQUFDLFVBQVUsS0FBSyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUMvRCxJQUFJLENBQUMsVUFBVSxLQUFLLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2hFLElBQUksQ0FBQyxVQUFVLEtBQUssYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDL0QsSUFBSSxDQUFDLFVBQVUsS0FBSyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNoRSxJQUFJLENBQUMsVUFBVSxLQUFLLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxFQUFFO1NBQ25FLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2QsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFDSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFDRCxJQUFJLFVBQVUsQ0FBQyxLQUFLO1FBQ2xCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO0lBQzNCLENBQUM7K0dBekJVLGtCQUFrQjttR0FBbEIsa0JBQWtCOzs0RkFBbEIsa0JBQWtCO2tCQUo5QixTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsZ0JBQWdCO2lCQUMzQjs4QkFHSyxXQUFXO3NCQURkLFdBQVc7dUJBQUMsT0FBTztnQkFtQmhCLFVBQVU7c0JBRGIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogICAgICAgICAgICAgIENvcHlyaWdodCAoYykgMjAyNSBWaXNhLCBJbmMuXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqXG4gKiovXG5pbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY29uc3QgRWxldmF0aW9uVHlwZSA9IHtcbiAgTk9ORTogJ25vbmUnLFxuICBJTlNFVDogJ2luc2V0JyxcbiAgWFM6ICd4cycsXG4gIFNNOiAnc20nLFxuICBNRDogJ21kJyxcbiAgTEc6ICdsZycsXG4gIFhMOiAneGwnLFxuICBYWEw6ICd4eGwnXG59IGFzIGNvbnN0O1xuXG5leHBvcnQgdHlwZSBFbGV2YXRpb25UeXBlID0gKHR5cGVvZiBFbGV2YXRpb25UeXBlKVtrZXlvZiB0eXBlb2YgRWxldmF0aW9uVHlwZV07XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ1t2RWxldmF0aW9uXSwgJ1xufSlcbmV4cG9ydCBjbGFzcyBFbGV2YXRpb25EaXJlY3RpdmUge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IGhvc3RDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFtcbiAgICAgIHRoaXMudkVsZXZhdGlvbiA9PT0gRWxldmF0aW9uVHlwZS5OT05FIHx8IHRoaXMudkVsZXZhdGlvbiA9PT0gRWxldmF0aW9uVHlwZS5JTlNFVFxuICAgICAgICA/IGB2LWVsZXZhdGlvbi0ke3RoaXMudkVsZXZhdGlvbn1gXG4gICAgICAgIDogJycsXG4gICAgICB0aGlzLnZFbGV2YXRpb24gPT09IEVsZXZhdGlvblR5cGUuWFMgPyAndi1lbGV2YXRpb24teHNtYWxsJyA6ICcnLFxuICAgICAgdGhpcy52RWxldmF0aW9uID09PSBFbGV2YXRpb25UeXBlLlNNID8gJ3YtZWxldmF0aW9uLXNtYWxsJyA6ICcnLFxuICAgICAgdGhpcy52RWxldmF0aW9uID09PSBFbGV2YXRpb25UeXBlLk1EID8gJ3YtZWxldmF0aW9uLW1lZGl1bScgOiAnJyxcbiAgICAgIHRoaXMudkVsZXZhdGlvbiA9PT0gRWxldmF0aW9uVHlwZS5MRyA/ICd2LWVsZXZhdGlvbi1sYXJnZScgOiAnJyxcbiAgICAgIHRoaXMudkVsZXZhdGlvbiA9PT0gRWxldmF0aW9uVHlwZS5YTCA/ICd2LWVsZXZhdGlvbi14bGFyZ2UnIDogJycsXG4gICAgICB0aGlzLnZFbGV2YXRpb24gPT09IEVsZXZhdGlvblR5cGUuWFhMID8gJ3YtZWxldmF0aW9uLXh4bGFyZ2UnIDogJydcbiAgICBdLmpvaW4oJyAnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBcHBsaWVzIGVsZXZhdGlvbiBnaXZlbi5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCB2RWxldmF0aW9uKCk6IEVsZXZhdGlvblR5cGUge1xuICAgIHJldHVybiB0aGlzLl92RWxldmF0aW9uO1xuICB9XG4gIHNldCB2RWxldmF0aW9uKHZhbHVlKSB7XG4gICAgdGhpcy5fdkVsZXZhdGlvbiA9IHZhbHVlO1xuICB9XG4gIF92RWxldmF0aW9uOiBFbGV2YXRpb25UeXBlO1xufVxuIl19