UNPKG

@engie-group/fluid-design-system-angular

Version:

Fluid Design System Angular

37 lines 4.54 kB
import { ChangeDetectorRef, Directive, Host, inject, Self } from '@angular/core'; import { ListItemComponent } from '../../list-item/list-item.component'; import { SidebarComponent } from '../sidebar.component'; import * as i0 from "@angular/core"; export class SidebarItemDirective { constructor() { this.sidebar = inject(SidebarComponent); this.listItem = inject(ListItemComponent); this.cdr = inject(ChangeDetectorRef); this.listItem.hasRightBorder = true; this.updateListItemFoldedState(); } ngDoCheck() { if (this.isCurrentlyFolded !== this.sidebar.isFolded) { this.updateListItemFoldedState(); } } updateListItemFoldedState() { this.isCurrentlyFolded = this.sidebar.isFolded; this.listItem.isIconOnly = this.isCurrentlyFolded; this.cdr.markForCheck(); } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SidebarItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); } static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: SidebarItemDirective, isStandalone: true, selector: "[njSidebarItem]", ngImport: i0 }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SidebarItemDirective, decorators: [{ type: Directive, args: [{ selector: '[njSidebarItem]', standalone: true }] }], ctorParameters: function () { return []; }, propDecorators: { sidebar: [{ type: Host }], listItem: [{ type: Self }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZWJhci1pdGVtLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3NpZGViYXIvZGlyZWN0aXZlcy9zaWRlYmFyLWl0ZW0uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxpQkFBaUIsRUFBRSxTQUFTLEVBQVcsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0scUNBQXFDLENBQUM7QUFDdEUsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sc0JBQXNCLENBQUM7O0FBTXRELE1BQU0sT0FBTyxvQkFBb0I7SUFXL0I7UUFQUSxZQUFPLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFHbkMsYUFBUSxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRXJDLFFBQUcsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUd0QyxJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUM7UUFDcEMsSUFBSSxDQUFDLHlCQUF5QixFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVELFNBQVM7UUFDUCxJQUFJLElBQUksQ0FBQyxpQkFBaUIsS0FBSyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRTtZQUNwRCxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztTQUNsQztJQUNILENBQUM7SUFFTyx5QkFBeUI7UUFDL0IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO1FBQy9DLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztRQUNsRCxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7K0dBMUJVLG9CQUFvQjttR0FBcEIsb0JBQW9COzs0RkFBcEIsb0JBQW9CO2tCQUpoQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxpQkFBaUI7b0JBQzNCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjswRUFLUyxPQUFPO3NCQURkLElBQUk7Z0JBSUcsUUFBUTtzQkFEZixJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgRGlyZWN0aXZlLCBEb0NoZWNrLCBIb3N0LCBpbmplY3QsIFNlbGZ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtMaXN0SXRlbUNvbXBvbmVudH0gZnJvbSAnLi4vLi4vbGlzdC1pdGVtL2xpc3QtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHtTaWRlYmFyQ29tcG9uZW50fSBmcm9tICcuLi9zaWRlYmFyLmNvbXBvbmVudCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tualNpZGViYXJJdGVtXScsXG4gIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgU2lkZWJhckl0ZW1EaXJlY3RpdmUgaW1wbGVtZW50cyBEb0NoZWNrIHtcbiAgcHJpdmF0ZSBpc0N1cnJlbnRseUZvbGRlZDogYm9vbGVhbjtcblxuICBASG9zdCgpXG4gIHByaXZhdGUgc2lkZWJhciA9IGluamVjdChTaWRlYmFyQ29tcG9uZW50KTtcblxuICBAU2VsZigpXG4gIHByaXZhdGUgbGlzdEl0ZW0gPSBpbmplY3QoTGlzdEl0ZW1Db21wb25lbnQpO1xuXG4gIHByaXZhdGUgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmxpc3RJdGVtLmhhc1JpZ2h0Qm9yZGVyID0gdHJ1ZTtcbiAgICB0aGlzLnVwZGF0ZUxpc3RJdGVtRm9sZGVkU3RhdGUoKTtcbiAgfVxuXG4gIG5nRG9DaGVjaygpIHtcbiAgICBpZiAodGhpcy5pc0N1cnJlbnRseUZvbGRlZCAhPT0gdGhpcy5zaWRlYmFyLmlzRm9sZGVkKSB7XG4gICAgICB0aGlzLnVwZGF0ZUxpc3RJdGVtRm9sZGVkU3RhdGUoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUxpc3RJdGVtRm9sZGVkU3RhdGUoKSB7XG4gICAgdGhpcy5pc0N1cnJlbnRseUZvbGRlZCA9IHRoaXMuc2lkZWJhci5pc0ZvbGRlZDtcbiAgICB0aGlzLmxpc3RJdGVtLmlzSWNvbk9ubHkgPSB0aGlzLmlzQ3VycmVudGx5Rm9sZGVkO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG59XG4iXX0=