UNPKG

carbon-components-angular

Version:
55 lines 5.26 kB
import { Directive, HostBinding } from "@angular/core"; import * as i0 from "@angular/core"; /** * Applies either ordered or unordered styling to the list container it is applied to. * * For `ul`s it will apply unordered list styles, and for `ol`s it will apply ordered list styles. * * If a `ul` or `ol` is nested within a `li` the directive will apply nested list styling. * * Get started with importing the module: * * ```typescript * import { ListModule } from 'carbon-components-angular'; * ``` * * [See demo](../../?path=/story/components-list--basic) */ export class List { constructor(elementRef) { this.elementRef = elementRef; } get ordered() { if (this.nested) { return false; } return this.elementRef.nativeElement.tagName === "OL"; } get unordered() { if (this.nested) { return false; } return this.elementRef.nativeElement.tagName === "UL"; } get nested() { return !!(this.elementRef.nativeElement.parentElement && this.elementRef.nativeElement.parentElement.tagName === "LI"); } } List.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: List, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); List.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.3.0", type: List, selector: "[cdsList], [ibmList]", host: { properties: { "class.cds--list--ordered": "this.ordered", "class.cds--list--unordered": "this.unordered", "class.cds--list--nested": "this.nested" } }, ngImport: i0 }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: List, decorators: [{ type: Directive, args: [{ selector: "[cdsList], [ibmList]" }] }], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { ordered: [{ type: HostBinding, args: ["class.cds--list--ordered"] }], unordered: [{ type: HostBinding, args: ["class.cds--list--unordered"] }], nested: [{ type: HostBinding, args: ["class.cds--list--nested"] }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGlzdC9saXN0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFbkU7Ozs7Ozs7Ozs7Ozs7O0dBY0c7QUFJSCxNQUFNLE9BQU8sSUFBSTtJQWVoQixZQUFzQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQUcsQ0FBQztJQWRoRCxJQUE2QyxPQUFPO1FBQ25ELElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUFFLE9BQU8sS0FBSyxDQUFDO1NBQUU7UUFDbEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDO0lBQ3ZELENBQUM7SUFFRCxJQUErQyxTQUFTO1FBQ3ZELElBQUksSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUFFLE9BQU8sS0FBSyxDQUFDO1NBQUU7UUFDbEMsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDO0lBQ3ZELENBQUM7SUFFRCxJQUE0QyxNQUFNO1FBQ2pELE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsYUFBYSxJQUFJLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEtBQUssSUFBSSxDQUFDLENBQUM7SUFDeEgsQ0FBQzs7aUdBYlcsSUFBSTtxRkFBSixJQUFJOzJGQUFKLElBQUk7a0JBSGhCLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLHNCQUFzQjtpQkFDaEM7aUdBRTZDLE9BQU87c0JBQW5ELFdBQVc7dUJBQUMsMEJBQTBCO2dCQUtRLFNBQVM7c0JBQXZELFdBQVc7dUJBQUMsNEJBQTRCO2dCQUtHLE1BQU07c0JBQWpELFdBQVc7dUJBQUMseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBIb3N0QmluZGluZyB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5cbi8qKlxuICogQXBwbGllcyBlaXRoZXIgb3JkZXJlZCBvciB1bm9yZGVyZWQgc3R5bGluZyB0byB0aGUgbGlzdCBjb250YWluZXIgaXQgaXMgYXBwbGllZCB0by5cbiAqXG4gKiBGb3IgYHVsYHMgaXQgd2lsbCBhcHBseSB1bm9yZGVyZWQgbGlzdCBzdHlsZXMsIGFuZCBmb3IgYG9sYHMgaXQgd2lsbCBhcHBseSBvcmRlcmVkIGxpc3Qgc3R5bGVzLlxuICpcbiAqIElmIGEgYHVsYCBvciBgb2xgIGlzIG5lc3RlZCB3aXRoaW4gYSBgbGlgIHRoZSBkaXJlY3RpdmUgd2lsbCBhcHBseSBuZXN0ZWQgbGlzdCBzdHlsaW5nLlxuICpcbiAqIEdldCBzdGFydGVkIHdpdGggaW1wb3J0aW5nIHRoZSBtb2R1bGU6XG4gKlxuICogYGBgdHlwZXNjcmlwdFxuICogaW1wb3J0IHsgTGlzdE1vZHVsZSB9IGZyb20gJ2NhcmJvbi1jb21wb25lbnRzLWFuZ3VsYXInO1xuICogYGBgXG4gKlxuICogW1NlZSBkZW1vXSguLi8uLi8/cGF0aD0vc3RvcnkvY29tcG9uZW50cy1saXN0LS1iYXNpYylcbiAqL1xuQERpcmVjdGl2ZSh7XG5cdHNlbGVjdG9yOiBcIltjZHNMaXN0XSwgW2libUxpc3RdXCJcbn0pXG5leHBvcnQgY2xhc3MgTGlzdCB7XG5cdEBIb3N0QmluZGluZyhcImNsYXNzLmNkcy0tbGlzdC0tb3JkZXJlZFwiKSBnZXQgb3JkZXJlZCgpIHtcblx0XHRpZiAodGhpcy5uZXN0ZWQpIHsgcmV0dXJuIGZhbHNlOyB9XG5cdFx0cmV0dXJuIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnRhZ05hbWUgPT09IFwiT0xcIjtcblx0fVxuXG5cdEBIb3N0QmluZGluZyhcImNsYXNzLmNkcy0tbGlzdC0tdW5vcmRlcmVkXCIpIGdldCB1bm9yZGVyZWQoKSB7XG5cdFx0aWYgKHRoaXMubmVzdGVkKSB7IHJldHVybiBmYWxzZTsgfVxuXHRcdHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC50YWdOYW1lID09PSBcIlVMXCI7XG5cdH1cblxuXHRASG9zdEJpbmRpbmcoXCJjbGFzcy5jZHMtLWxpc3QtLW5lc3RlZFwiKSBnZXQgbmVzdGVkKCkge1xuXHRcdHJldHVybiAhISh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5wYXJlbnRFbGVtZW50ICYmIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQudGFnTmFtZSA9PT0gXCJMSVwiKTtcblx0fVxuXG5cdGNvbnN0cnVjdG9yKHByb3RlY3RlZCBlbGVtZW50UmVmOiBFbGVtZW50UmVmKSB7fVxufVxuIl19