@ngneat/cmdk
Version:
<p align="center"> <img width="20%" height="20%" src="./src/assets/ngneat%20cdk.svg"> </p>
35 lines • 4.33 kB
JavaScript
import { Directive, inject, Renderer2, TemplateRef, ViewContainerRef, } from '@angular/core';
import * as i0 from "@angular/core";
export class EmptyDirective {
constructor() {
this._hasView = false;
this._templateRef = inject((TemplateRef));
this._viewContainer = inject(ViewContainerRef);
this._renderer2 = inject(Renderer2);
}
set cmdkEmpty(condition) {
if (condition && !this._hasView) {
const emb = this._viewContainer.createEmbeddedView(this._templateRef);
this._renderer2.addClass(emb.rootNodes[0], 'cmdk-empty');
this._hasView = true;
}
else if (!condition && this._hasView) {
this._viewContainer.clear();
this._hasView = false;
}
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EmptyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: EmptyDirective, isStandalone: true, selector: "[cmdkEmpty]", host: { classAttribute: "cmdk-empty" }, ngImport: i0 }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EmptyDirective, decorators: [{
type: Directive,
args: [{
selector: '[cmdkEmpty]',
// eslint-disable-next-line @angular-eslint/no-host-metadata-property
host: {
class: 'cmdk-empty',
},
standalone: true,
}]
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW1wdHkuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmduZWF0L2NtZGsvc3JjL2xpYi9kaXJlY3RpdmVzL2VtcHR5L2VtcHR5LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULE1BQU0sRUFDTixTQUFTLEVBQ1QsV0FBVyxFQUNYLGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQzs7QUFVdkIsTUFBTSxPQUFPLGNBQWM7SUFSM0I7UUFTVSxhQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ2pCLGlCQUFZLEdBQUcsTUFBTSxDQUFDLENBQUEsV0FBZ0IsQ0FBQSxDQUFDLENBQUM7UUFDeEMsbUJBQWMsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUMxQyxlQUFVLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0tBWXhDO0lBVkMsSUFBSSxTQUFTLENBQUMsU0FBMkI7UUFDdkMsSUFBSSxTQUFTLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQy9CLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQ3RFLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUM7WUFDekQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7U0FDdEI7YUFBTSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDdEMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUM1QixJQUFJLENBQUMsUUFBUSxHQUFHLEtBQUssQ0FBQztTQUN2QjtJQUNILENBQUM7K0dBZlUsY0FBYzttR0FBZCxjQUFjOzs0RkFBZCxjQUFjO2tCQVIxQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxhQUFhO29CQUN2QixxRUFBcUU7b0JBQ3JFLElBQUksRUFBRTt3QkFDSixLQUFLLEVBQUUsWUFBWTtxQkFDcEI7b0JBQ0QsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBpbmplY3QsXG4gIFJlbmRlcmVyMixcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbY21ka0VtcHR5XScsXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8taG9zdC1tZXRhZGF0YS1wcm9wZXJ0eVxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdjbWRrLWVtcHR5JyxcbiAgfSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgRW1wdHlEaXJlY3RpdmUge1xuICBwcml2YXRlIF9oYXNWaWV3ID0gZmFsc2U7XG4gIHByaXZhdGUgX3RlbXBsYXRlUmVmID0gaW5qZWN0KFRlbXBsYXRlUmVmPGFueT4pO1xuICBwcml2YXRlIF92aWV3Q29udGFpbmVyID0gaW5qZWN0KFZpZXdDb250YWluZXJSZWYpO1xuICBwcml2YXRlIF9yZW5kZXJlcjIgPSBpbmplY3QoUmVuZGVyZXIyKTtcblxuICBzZXQgY21ka0VtcHR5KGNvbmRpdGlvbjogYm9vbGVhbiB8IHN0cmluZykge1xuICAgIGlmIChjb25kaXRpb24gJiYgIXRoaXMuX2hhc1ZpZXcpIHtcbiAgICAgIGNvbnN0IGVtYiA9IHRoaXMuX3ZpZXdDb250YWluZXIuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMuX3RlbXBsYXRlUmVmKTtcbiAgICAgIHRoaXMuX3JlbmRlcmVyMi5hZGRDbGFzcyhlbWIucm9vdE5vZGVzWzBdLCAnY21kay1lbXB0eScpO1xuICAgICAgdGhpcy5faGFzVmlldyA9IHRydWU7XG4gICAgfSBlbHNlIGlmICghY29uZGl0aW9uICYmIHRoaXMuX2hhc1ZpZXcpIHtcbiAgICAgIHRoaXMuX3ZpZXdDb250YWluZXIuY2xlYXIoKTtcbiAgICAgIHRoaXMuX2hhc1ZpZXcgPSBmYWxzZTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==