@ng-doc/ui-kit
Version:
<!-- PROJECT LOGO --> <br /> <div align="center"> <a href="https://github.com/ng-doc/ng-doc"> <img src="https://ng-doc.com/assets/images/ng-doc.svg?raw=true" alt="Logo" height="150px"> </a>
53 lines (49 loc) • 3.84 kB
JavaScript
import { __decorate, __metadata } from 'tslib';
import { NgIf } from '@angular/common';
import * as i0 from '@angular/core';
import { inject, Component, ChangeDetectionStrategy } from '@angular/core';
import { NgDocInputHost } from '@ng-doc/ui-kit/classes/input-host';
import { NgDocButtonIconComponent } from '@ng-doc/ui-kit/components/button-icon';
import { NgDocIconComponent } from '@ng-doc/ui-kit/components/icon';
import { NgDocFocusableDirective } from '@ng-doc/ui-kit/directives/focusable';
import { untilDestroyed, UntilDestroy } from '@ngneat/until-destroy';
import { DIControl, injectHostControl } from 'di-controls';
let NgDocClearControlComponent = class NgDocClearControlComponent extends DIControl {
constructor() {
super({
host: injectHostControl(),
});
this.inputHost = inject(NgDocInputHost, {
optional: true,
});
}
ngAfterContentInit() {
if (this.inputHost?.inputControl) {
this.inputHost.inputControl.changes
.pipe(untilDestroyed(this))
.subscribe(() => this.changeDetectorRef.detectChanges());
}
}
get isVisible() {
return this.inputHost?.inputControl?.hasValue || this.hasValue;
}
clear() {
this.inputHost?.inputControl?.writeValueFromHost(null);
this.updateModel(null);
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: NgDocClearControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: NgDocClearControlComponent, isStandalone: true, selector: "ng-doc-clear-control", usesInheritance: true, ngImport: i0, template: "<button\n ng-doc-button-icon-transparent\n size=\"large\"\n [ngDocFocusable]=\"false\"\n [disabled]=\"disabled\"\n [rounded]=\"false\"\n (click)=\"clear()\"\n (focusout)=\"touch()\"\n *ngIf=\"isVisible\">\n <ng-doc-icon icon=\"x\"></ng-doc-icon>\n</button>\n", styles: [":host{display:inline-block}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: NgDocButtonIconComponent, selector: "button[ng-doc-button-icon], a[ng-doc-button-icon], button[ng-doc-button-icon-raised], a[ng-doc-button-icon-raised], button[ng-doc-button-icon-transparent], a[ng-doc-button-icon-transparent]", inputs: ["size", "rounded"] }, { kind: "directive", type: NgDocFocusableDirective, selector: "[ngDocFocusable]", inputs: ["ngDocFocusable"], exportAs: ["ngDocFocusable"] }, { kind: "component", type: NgDocIconComponent, selector: "ng-doc-icon", inputs: ["icon", "customIcon", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
};
NgDocClearControlComponent = __decorate([
UntilDestroy(),
__metadata("design:paramtypes", [])
], NgDocClearControlComponent);
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: NgDocClearControlComponent, decorators: [{
type: Component,
args: [{ selector: 'ng-doc-clear-control', changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgIf, NgDocButtonIconComponent, NgDocFocusableDirective, NgDocIconComponent], template: "<button\n ng-doc-button-icon-transparent\n size=\"large\"\n [ngDocFocusable]=\"false\"\n [disabled]=\"disabled\"\n [rounded]=\"false\"\n (click)=\"clear()\"\n (focusout)=\"touch()\"\n *ngIf=\"isVisible\">\n <ng-doc-icon icon=\"x\"></ng-doc-icon>\n</button>\n", styles: [":host{display:inline-block}\n"] }]
}], ctorParameters: () => [] });
/**
* Generated bundle index. Do not edit.
*/
export { NgDocClearControlComponent };
//# sourceMappingURL=ng-doc-ui-kit-components-clear-control.mjs.map