UNPKG

@visa/nova-angular

Version:

Visa Product Design System Nova Angular library

70 lines 6.85 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 { DividerType } from './divider.constants'; import * as i0 from "@angular/core"; export class DividerDirective { /** * Sets divider style. * @default 'default' / DividerType.DEFAULT * @options 'default' | DividerType.DEFAULT | <br> 'section' | DividerType.SECTION | <br> 'decorative' | DividerType.DECORATIVE */ get dividerType() { return this._dividerType; } set dividerType(value) { this._dividerType = value; } get hostClasses() { return [ this.class, 'v-divider', this.dividerType !== DividerType.DEFAULT ? 'v-divider-' + this.dividerType : '' ].join(' '); } get ariaHidden() { return this.dividerType === DividerType.DECORATIVE ? 'true' : null; } constructor() { this._dividerType = DividerType.DEFAULT; /** * Provides custom class&#40;es&#41; for custom styling. * @default .v-divider.v-divider-&lt;dividerType&gt; */ this.class = ''; } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DividerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); } static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: DividerDirective, isStandalone: true, selector: "[v-divider]", inputs: { dividerType: "dividerType", class: "class" }, host: { properties: { "class": "this.hostClasses", "attr.aria-hidden": "this.ariaHidden" } }, ngImport: i0 }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: DividerDirective, decorators: [{ type: Directive, args: [{ standalone: true, selector: '[v-divider]' }] }], ctorParameters: () => [], propDecorators: { dividerType: [{ type: Input }], class: [{ type: Input }], hostClasses: [{ type: HostBinding, args: ['class'] }], ariaHidden: [{ type: HostBinding, args: ['attr.aria-hidden'] }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGl2aWRlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25vdmEtbGliL3NyYy9saWIvZGl2aWRlci9kaXZpZGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0lBZUk7QUFDSixPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFDOztBQU1sRCxNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCOzs7O09BSUc7SUFDSCxJQUNJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUNELElBQUksV0FBVyxDQUFDLEtBQWtCO1FBQ2hDLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO0lBQzVCLENBQUM7SUFRRCxJQUNJLFdBQVc7UUFDYixPQUFPO1lBQ0wsSUFBSSxDQUFDLEtBQUs7WUFDVixXQUFXO1lBQ1gsSUFBSSxDQUFDLFdBQVcsS0FBSyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRTtTQUNoRixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNkLENBQUM7SUFFRCxJQUNJLFVBQVU7UUFDWixPQUFPLElBQUksQ0FBQyxXQUFXLEtBQUssV0FBVyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDckUsQ0FBQztJQUVEO1FBckJBLGlCQUFZLEdBQWdCLFdBQVcsQ0FBQyxPQUFPLENBQUM7UUFFaEQ7OztXQUdHO1FBQ00sVUFBSyxHQUFXLEVBQUUsQ0FBQztJQWViLENBQUM7K0dBbENMLGdCQUFnQjttR0FBaEIsZ0JBQWdCOzs0RkFBaEIsZ0JBQWdCO2tCQUo1QixTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsYUFBYTtpQkFDeEI7d0RBUUssV0FBVztzQkFEZCxLQUFLO2dCQWFHLEtBQUs7c0JBQWIsS0FBSztnQkFFRixXQUFXO3NCQURkLFdBQVc7dUJBQUMsT0FBTztnQkFVaEIsVUFBVTtzQkFEYixXQUFXO3VCQUFDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogICAgICAgICAgICAgIMKpIDIwMjUgVmlzYVxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKlxuICoqL1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0QmluZGluZywgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERpdmlkZXJUeXBlIH0gZnJvbSAnLi9kaXZpZGVyLmNvbnN0YW50cyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ1t2LWRpdmlkZXJdJ1xufSlcbmV4cG9ydCBjbGFzcyBEaXZpZGVyRGlyZWN0aXZlIHtcbiAgLyoqXG4gICAqIFNldHMgZGl2aWRlciBzdHlsZS5cbiAgICogQGRlZmF1bHQgJ2RlZmF1bHQnIC8gRGl2aWRlclR5cGUuREVGQVVMVFxuICAgKiBAb3B0aW9ucyAnZGVmYXVsdCcgfCBEaXZpZGVyVHlwZS5ERUZBVUxUIHwgPGJyPiAnc2VjdGlvbicgfCBEaXZpZGVyVHlwZS5TRUNUSU9OIHwgPGJyPiAnZGVjb3JhdGl2ZScgfCBEaXZpZGVyVHlwZS5ERUNPUkFUSVZFXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgZGl2aWRlclR5cGUoKTogRGl2aWRlclR5cGUge1xuICAgIHJldHVybiB0aGlzLl9kaXZpZGVyVHlwZTtcbiAgfVxuICBzZXQgZGl2aWRlclR5cGUodmFsdWU6IERpdmlkZXJUeXBlKSB7XG4gICAgdGhpcy5fZGl2aWRlclR5cGUgPSB2YWx1ZTtcbiAgfVxuICBfZGl2aWRlclR5cGU6IERpdmlkZXJUeXBlID0gRGl2aWRlclR5cGUuREVGQVVMVDtcblxuICAvKipcbiAgICogUHJvdmlkZXMgY3VzdG9tIGNsYXNzJiM0MDtlcyYjNDE7IGZvciBjdXN0b20gc3R5bGluZy5cbiAgICogQGRlZmF1bHQgLnYtZGl2aWRlci52LWRpdmlkZXItJmx0O2RpdmlkZXJUeXBlJmd0O1xuICAgKi9cbiAgQElucHV0KCkgY2xhc3M6IHN0cmluZyA9ICcnO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IGhvc3RDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFtcbiAgICAgIHRoaXMuY2xhc3MsXG4gICAgICAndi1kaXZpZGVyJyxcbiAgICAgIHRoaXMuZGl2aWRlclR5cGUgIT09IERpdmlkZXJUeXBlLkRFRkFVTFQgPyAndi1kaXZpZGVyLScgKyB0aGlzLmRpdmlkZXJUeXBlIDogJydcbiAgICBdLmpvaW4oJyAnKTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnYXR0ci5hcmlhLWhpZGRlbicpXG4gIGdldCBhcmlhSGlkZGVuKCkge1xuICAgIHJldHVybiB0aGlzLmRpdmlkZXJUeXBlID09PSBEaXZpZGVyVHlwZS5ERUNPUkFUSVZFID8gJ3RydWUnIDogbnVsbDtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge31cbn1cbiJdfQ==