@visa/nova-angular
Version:
Visa Product Design System Nova Angular library
67 lines • 7.4 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 { 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxldmF0aW9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbm92YS1saWIvc3JjL2xpYi9lbGV2YXRpb24vZWxldmF0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0lBZUk7QUFDSixPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTlELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRztJQUMzQixJQUFJLEVBQUUsTUFBTTtJQUNaLEtBQUssRUFBRSxPQUFPO0lBQ2QsRUFBRSxFQUFFLElBQUk7SUFDUixFQUFFLEVBQUUsSUFBSTtJQUNSLEVBQUUsRUFBRSxJQUFJO0lBQ1IsRUFBRSxFQUFFLElBQUk7SUFDUixFQUFFLEVBQUUsSUFBSTtJQUNSLEdBQUcsRUFBRSxLQUFLO0NBQ0YsQ0FBQztBQVFYLE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsSUFDSSxXQUFXO1FBQ2IsT0FBTztZQUNMLElBQUksQ0FBQyxVQUFVLEtBQUssYUFBYSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsVUFBVSxLQUFLLGFBQWEsQ0FBQyxLQUFLO2dCQUMvRSxDQUFDLENBQUMsZUFBZSxJQUFJLENBQUMsVUFBVSxFQUFFO2dCQUNsQyxDQUFDLENBQUMsRUFBRTtZQUNOLElBQUksQ0FBQyxVQUFVLEtBQUssYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDaEUsSUFBSSxDQUFDLFVBQVUsS0FBSyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUMvRCxJQUFJLENBQUMsVUFBVSxLQUFLLGFBQWEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2hFLElBQUksQ0FBQyxVQUFVLEtBQUssYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDL0QsSUFBSSxDQUFDLFVBQVUsS0FBSyxhQUFhLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNoRSxJQUFJLENBQUMsVUFBVSxLQUFLLGFBQWEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxFQUFFO1NBQ25FLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2QsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFDSSxVQUFVO1FBQ1osT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDO0lBQzFCLENBQUM7SUFDRCxJQUFJLFVBQVUsQ0FBQyxLQUFLO1FBQ2xCLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO0lBQzNCLENBQUM7K0dBekJVLGtCQUFrQjttR0FBbEIsa0JBQWtCOzs0RkFBbEIsa0JBQWtCO2tCQUo5QixTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsZ0JBQWdCO2lCQUMzQjs4QkFHSyxXQUFXO3NCQURkLFdBQVc7dUJBQUMsT0FBTztnQkFtQmhCLFVBQVU7c0JBRGIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogICAgICAgICAgICAgIMKpIDIwMjUgVmlzYVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKlxuICoqL1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0QmluZGluZywgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuZXhwb3J0IGNvbnN0IEVsZXZhdGlvblR5cGUgPSB7XG4gIE5PTkU6ICdub25lJyxcbiAgSU5TRVQ6ICdpbnNldCcsXG4gIFhTOiAneHMnLFxuICBTTTogJ3NtJyxcbiAgTUQ6ICdtZCcsXG4gIExHOiAnbGcnLFxuICBYTDogJ3hsJyxcbiAgWFhMOiAneHhsJ1xufSBhcyBjb25zdDtcblxuZXhwb3J0IHR5cGUgRWxldmF0aW9uVHlwZSA9ICh0eXBlb2YgRWxldmF0aW9uVHlwZSlba2V5b2YgdHlwZW9mIEVsZXZhdGlvblR5cGVdO1xuXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdbdkVsZXZhdGlvbl0sICdcbn0pXG5leHBvcnQgY2xhc3MgRWxldmF0aW9uRGlyZWN0aXZlIHtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3NlcygpOiBzdHJpbmcge1xuICAgIHJldHVybiBbXG4gICAgICB0aGlzLnZFbGV2YXRpb24gPT09IEVsZXZhdGlvblR5cGUuTk9ORSB8fCB0aGlzLnZFbGV2YXRpb24gPT09IEVsZXZhdGlvblR5cGUuSU5TRVRcbiAgICAgICAgPyBgdi1lbGV2YXRpb24tJHt0aGlzLnZFbGV2YXRpb259YFxuICAgICAgICA6ICcnLFxuICAgICAgdGhpcy52RWxldmF0aW9uID09PSBFbGV2YXRpb25UeXBlLlhTID8gJ3YtZWxldmF0aW9uLXhzbWFsbCcgOiAnJyxcbiAgICAgIHRoaXMudkVsZXZhdGlvbiA9PT0gRWxldmF0aW9uVHlwZS5TTSA/ICd2LWVsZXZhdGlvbi1zbWFsbCcgOiAnJyxcbiAgICAgIHRoaXMudkVsZXZhdGlvbiA9PT0gRWxldmF0aW9uVHlwZS5NRCA/ICd2LWVsZXZhdGlvbi1tZWRpdW0nIDogJycsXG4gICAgICB0aGlzLnZFbGV2YXRpb24gPT09IEVsZXZhdGlvblR5cGUuTEcgPyAndi1lbGV2YXRpb24tbGFyZ2UnIDogJycsXG4gICAgICB0aGlzLnZFbGV2YXRpb24gPT09IEVsZXZhdGlvblR5cGUuWEwgPyAndi1lbGV2YXRpb24teGxhcmdlJyA6ICcnLFxuICAgICAgdGhpcy52RWxldmF0aW9uID09PSBFbGV2YXRpb25UeXBlLlhYTCA/ICd2LWVsZXZhdGlvbi14eGxhcmdlJyA6ICcnXG4gICAgXS5qb2luKCcgJyk7XG4gIH1cblxuICAvKipcbiAgICogQXBwbGllcyBlbGV2YXRpb24gZ2l2ZW4uXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgdkVsZXZhdGlvbigpOiBFbGV2YXRpb25UeXBlIHtcbiAgICByZXR1cm4gdGhpcy5fdkVsZXZhdGlvbjtcbiAgfVxuICBzZXQgdkVsZXZhdGlvbih2YWx1ZSkge1xuICAgIHRoaXMuX3ZFbGV2YXRpb24gPSB2YWx1ZTtcbiAgfVxuICBfdkVsZXZhdGlvbjogRWxldmF0aW9uVHlwZTtcbn1cbiJdfQ==