UNPKG

@visa/nova-angular

Version:

Visa Product Design System Nova Angular library

88 lines 8.31 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 * as i0 from "@angular/core"; export const TypographyType = { Display1: 'display-1', Display2: 'display-2', Headline1: 'headline-1', Headline2: 'headline-2', Headline3: 'headline-3', Headline4: 'headline-4', Subtitle1: 'subtitle-1', Subtitle2: 'subtitle-2', Subtitle3: 'subtitle-3', Overline: 'overline', Body1: 'body-1', Body2: 'body-2', Body2Bold: 'body-2-bold', Body2Link: 'body-2-link', Body2Medium: 'body-2-medium', Body3: 'body-3', ButtonSmall: 'button-small', ButtonMedium: 'button-medium', ButtonLarge: 'button-large', Label: 'label', LabelSmall: 'label-small', LabelActive: 'label-active', LabelLarge: 'label-large', LabelLargeActive: 'label-large-active', LabelSmallActive: 'label-small-active' }; export class TypographyDirective { get hostClasses() { if (this.vTypography) { return `v-typography-${this.vTypography}`; } } /** * Applies given typography class. */ get vTypography() { return this._vTypography; } set vTypography(value) { this._vTypography = value; } /** * Applies given typography class. <br> * Can be used as a more succinct alias for <code>vTypography</code>. */ get vFont() { return this._vTypography; } set vFont(value) { this._vTypography = value; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TypographyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); } static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: TypographyDirective, isStandalone: true, selector: "[vTypography], [vFont]", inputs: { vTypography: "vTypography", vFont: "vFont" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0 }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TypographyDirective, decorators: [{ type: Directive, args: [{ standalone: true, selector: '[vTypography], [vFont]' }] }], propDecorators: { hostClasses: [{ type: HostBinding, args: ['class'] }], vTypography: [{ type: Input }], vFont: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwb2dyYXBoeS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25vdmEtbGliL3NyYy9saWIvdHlwb2dyYXBoeS90eXBvZ3JhcGh5LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0lBZUk7QUFDSixPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTlELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRztJQUM1QixRQUFRLEVBQUUsV0FBVztJQUNyQixRQUFRLEVBQUUsV0FBVztJQUNyQixTQUFTLEVBQUUsWUFBWTtJQUN2QixTQUFTLEVBQUUsWUFBWTtJQUN2QixTQUFTLEVBQUUsWUFBWTtJQUN2QixTQUFTLEVBQUUsWUFBWTtJQUN2QixTQUFTLEVBQUUsWUFBWTtJQUN2QixTQUFTLEVBQUUsWUFBWTtJQUN2QixTQUFTLEVBQUUsWUFBWTtJQUN2QixRQUFRLEVBQUUsVUFBVTtJQUNwQixLQUFLLEVBQUUsUUFBUTtJQUNmLEtBQUssRUFBRSxRQUFRO0lBQ2YsU0FBUyxFQUFFLGFBQWE7SUFDeEIsU0FBUyxFQUFFLGFBQWE7SUFDeEIsV0FBVyxFQUFFLGVBQWU7SUFDNUIsS0FBSyxFQUFFLFFBQVE7SUFDZixXQUFXLEVBQUUsY0FBYztJQUMzQixZQUFZLEVBQUUsZUFBZTtJQUM3QixXQUFXLEVBQUUsY0FBYztJQUMzQixLQUFLLEVBQUUsT0FBTztJQUNkLFVBQVUsRUFBRSxhQUFhO0lBQ3pCLFdBQVcsRUFBRSxjQUFjO0lBQzNCLFVBQVUsRUFBRSxhQUFhO0lBQ3pCLGdCQUFnQixFQUFFLG9CQUFvQjtJQUN0QyxnQkFBZ0IsRUFBRSxvQkFBb0I7Q0FDOUIsQ0FBQztBQVFYLE1BQU0sT0FBTyxtQkFBbUI7SUFDOUIsSUFDSSxXQUFXO1FBQ2IsSUFBSSxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDckIsT0FBTyxnQkFBZ0IsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzVDLENBQUM7SUFDSCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUNJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUNELElBQUksV0FBVyxDQUFDLEtBQUs7UUFDbkIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7SUFDNUIsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQ0ksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBaUM7UUFDekMsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7SUFDNUIsQ0FBQzsrR0E3QlUsbUJBQW1CO21HQUFuQixtQkFBbUI7OzRGQUFuQixtQkFBbUI7a0JBSi9CLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSx3QkFBd0I7aUJBQ25DOzhCQUdLLFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxPQUFPO2dCQVdoQixXQUFXO3NCQURkLEtBQUs7Z0JBYUYsS0FBSztzQkFEUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiAgICAgICAgICAgICAgwqkgMjAyNSBWaXNhXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqICAgICAgICAgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqXG4gKiovXG5pbXBvcnQgeyBEaXJlY3RpdmUsIEhvc3RCaW5kaW5nLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgY29uc3QgVHlwb2dyYXBoeVR5cGUgPSB7XG4gIERpc3BsYXkxOiAnZGlzcGxheS0xJyxcbiAgRGlzcGxheTI6ICdkaXNwbGF5LTInLFxuICBIZWFkbGluZTE6ICdoZWFkbGluZS0xJyxcbiAgSGVhZGxpbmUyOiAnaGVhZGxpbmUtMicsXG4gIEhlYWRsaW5lMzogJ2hlYWRsaW5lLTMnLFxuICBIZWFkbGluZTQ6ICdoZWFkbGluZS00JyxcbiAgU3VidGl0bGUxOiAnc3VidGl0bGUtMScsXG4gIFN1YnRpdGxlMjogJ3N1YnRpdGxlLTInLFxuICBTdWJ0aXRsZTM6ICdzdWJ0aXRsZS0zJyxcbiAgT3ZlcmxpbmU6ICdvdmVybGluZScsXG4gIEJvZHkxOiAnYm9keS0xJyxcbiAgQm9keTI6ICdib2R5LTInLFxuICBCb2R5MkJvbGQ6ICdib2R5LTItYm9sZCcsXG4gIEJvZHkyTGluazogJ2JvZHktMi1saW5rJyxcbiAgQm9keTJNZWRpdW06ICdib2R5LTItbWVkaXVtJyxcbiAgQm9keTM6ICdib2R5LTMnLFxuICBCdXR0b25TbWFsbDogJ2J1dHRvbi1zbWFsbCcsXG4gIEJ1dHRvbk1lZGl1bTogJ2J1dHRvbi1tZWRpdW0nLFxuICBCdXR0b25MYXJnZTogJ2J1dHRvbi1sYXJnZScsXG4gIExhYmVsOiAnbGFiZWwnLFxuICBMYWJlbFNtYWxsOiAnbGFiZWwtc21hbGwnLFxuICBMYWJlbEFjdGl2ZTogJ2xhYmVsLWFjdGl2ZScsXG4gIExhYmVsTGFyZ2U6ICdsYWJlbC1sYXJnZScsXG4gIExhYmVsTGFyZ2VBY3RpdmU6ICdsYWJlbC1sYXJnZS1hY3RpdmUnLFxuICBMYWJlbFNtYWxsQWN0aXZlOiAnbGFiZWwtc21hbGwtYWN0aXZlJ1xufSBhcyBjb25zdDtcblxuZXhwb3J0IHR5cGUgVHlwb2dyYXBoeVR5cGUgPSAodHlwZW9mIFR5cG9ncmFwaHlUeXBlKVtrZXlvZiB0eXBlb2YgVHlwb2dyYXBoeVR5cGVdO1xuXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICdbdlR5cG9ncmFwaHldLCBbdkZvbnRdJ1xufSlcbmV4cG9ydCBjbGFzcyBUeXBvZ3JhcGh5RGlyZWN0aXZlIHtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3NlcygpOiBzdHJpbmcgfCB2b2lkIHtcbiAgICBpZiAodGhpcy52VHlwb2dyYXBoeSkge1xuICAgICAgcmV0dXJuIGB2LXR5cG9ncmFwaHktJHt0aGlzLnZUeXBvZ3JhcGh5fWA7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIEFwcGxpZXMgZ2l2ZW4gdHlwb2dyYXBoeSBjbGFzcy5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCB2VHlwb2dyYXBoeSgpOiBUeXBvZ3JhcGh5VHlwZSB8ICcnIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX3ZUeXBvZ3JhcGh5O1xuICB9XG4gIHNldCB2VHlwb2dyYXBoeSh2YWx1ZSkge1xuICAgIHRoaXMuX3ZUeXBvZ3JhcGh5ID0gdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogQXBwbGllcyBnaXZlbiB0eXBvZ3JhcGh5IGNsYXNzLiA8YnI+XG4gICAqIENhbiBiZSB1c2VkIGFzIGEgbW9yZSBzdWNjaW5jdCBhbGlhcyBmb3IgPGNvZGU+dlR5cG9ncmFwaHk8L2NvZGU+LlxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IHZGb250KCk6IFR5cG9ncmFwaHlUeXBlIHwgJycgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fdlR5cG9ncmFwaHk7XG4gIH1cbiAgc2V0IHZGb250KHZhbHVlOiBUeXBvZ3JhcGh5VHlwZSB8ICcnIHwgbnVsbCkge1xuICAgIHRoaXMuX3ZUeXBvZ3JhcGh5ID0gdmFsdWU7XG4gIH1cbiAgX3ZUeXBvZ3JhcGh5OiBUeXBvZ3JhcGh5VHlwZSB8ICcnIHwgbnVsbDtcbn1cbiJdfQ==