@xmagic/nz-formly
Version:
基于ng-zorro-antd UI 扩展的ngx-formly组件库
74 lines • 8.07 kB
JavaScript
import { ChangeDetectionStrategy, Component, Optional, ViewChild } from '@angular/core';
import { FieldType } from '@ngx-formly/core';
import { NzDropdownMenuComponent } from 'ng-zorro-antd/dropdown';
import { ReplaySubject } from 'rxjs';
import * as i0 from "@angular/core";
import * as i1 from "@xmagic/nz-formly/common";
import * as i2 from "@angular/common";
import * as i3 from "ng-zorro-antd/menu";
import * as i4 from "ng-zorro-antd/dropdown";
import * as i5 from "@ngx-formly/core";
export class FormlyFieldDropdownComponent extends FieldType {
fieldTemplates;
defaultOptions = {
props: { _subject: new ReplaySubject() }
};
instance;
constructor(fieldTemplates) {
super();
this.fieldTemplates = fieldTemplates;
}
ngOnInit() {
if (this.props._subject) {
this.props._subject.next(this.instance);
}
this.props.instance = this.instance;
this.props.init?.(this.instance, this);
}
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FormlyFieldDropdownComponent, deps: [{ token: i1.FormlyBoxTemplates, optional: true }], target: i0.ɵɵFactoryTarget.Component });
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FormlyFieldDropdownComponent, selector: "nz-formly-dropdown", viewQueries: [{ propertyName: "instance", first: true, predicate: ["menu"], descendants: true, read: NzDropdownMenuComponent, static: true }], usesInheritance: true, ngImport: i0, template: `
<nz-dropdown-menu #menu="nzDropdownMenu">
<div nz-menu [formlyAttributes]="field">
<ng-container *ngFor="let item of field.fieldGroup">
<formly-field
nz-menu-item
[formlyAttributes]="item"
[field]="item"
[nzSelected]="item.props?.nzSelected"
[nzDisabled]="item.props?.nzDisabled"
[nzPaddingLeft]="item.props?.nzPaddingLeft"
></formly-field>
</ng-container>
</div>
</nz-dropdown-menu>
`, isInline: true, dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NzMenuDirective, selector: "[nz-menu]", inputs: ["nzInlineIndent", "nzTheme", "nzMode", "nzInlineCollapsed", "nzSelectable"], outputs: ["nzClick"], exportAs: ["nzMenu"] }, { kind: "component", type: i3.NzMenuItemComponent, selector: "[nz-menu-item]", inputs: ["nzPaddingLeft", "nzDisabled", "nzSelected", "nzDanger", "nzMatchRouterExact", "nzMatchRouter"], exportAs: ["nzMenuItem"] }, { kind: "component", type: i4.NzDropdownMenuComponent, selector: "nz-dropdown-menu", exportAs: ["nzDropdownMenu"] }, { kind: "component", type: i5.FormlyField, selector: "formly-field", inputs: ["field"] }, { kind: "directive", type: i5.ɵFormlyAttributes, selector: "[formlyAttributes]", inputs: ["formlyAttributes", "id"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FormlyFieldDropdownComponent, decorators: [{
type: Component,
args: [{
selector: 'nz-formly-dropdown',
template: `
<nz-dropdown-menu #menu="nzDropdownMenu">
<div nz-menu [formlyAttributes]="field">
<ng-container *ngFor="let item of field.fieldGroup">
<formly-field
nz-menu-item
[formlyAttributes]="item"
[field]="item"
[nzSelected]="item.props?.nzSelected"
[nzDisabled]="item.props?.nzDisabled"
[nzPaddingLeft]="item.props?.nzPaddingLeft"
></formly-field>
</ng-container>
</div>
</nz-dropdown-menu>
`,
changeDetection: ChangeDetectionStrategy.OnPush
}]
}], ctorParameters: () => [{ type: i1.FormlyBoxTemplates, decorators: [{
type: Optional
}] }], propDecorators: { instance: [{
type: ViewChild,
args: ['menu', { read: NzDropdownMenuComponent, static: true }]
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vbGliL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFVLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEcsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzdDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7QUF1QnJDLE1BQU0sT0FBTyw0QkFBNkIsU0FBUSxTQUFTO0lBTTFCO0lBTHRCLGNBQWMsR0FBRztRQUN4QixLQUFLLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxhQUFhLEVBQTJCLEVBQUU7S0FDbEUsQ0FBQztJQUVrRSxRQUFRLENBQTJCO0lBQ3ZHLFlBQStCLGNBQWtDO1FBQy9ELEtBQUssRUFBRSxDQUFDO1FBRHFCLG1CQUFjLEdBQWQsY0FBYyxDQUFvQjtJQUVqRSxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUU7WUFDdkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUN6QztRQUNELElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7UUFDcEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3pDLENBQUM7d0dBaEJVLDRCQUE0Qjs0RkFBNUIsNEJBQTRCLHVJQUtaLHVCQUF1QixrRUF2QnhDOzs7Ozs7Ozs7Ozs7Ozs7R0FlVDs7NEZBR1UsNEJBQTRCO2tCQXBCeEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsb0JBQW9CO29CQUM5QixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7OztHQWVUO29CQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUNoRDs7MEJBT2MsUUFBUTt5Q0FEK0MsUUFBUTtzQkFBM0UsU0FBUzt1QkFBQyxNQUFNLEVBQUUsRUFBRSxJQUFJLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIE9uSW5pdCwgT3B0aW9uYWwsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGaWVsZFR5cGUgfSBmcm9tICdAbmd4LWZvcm1seS9jb3JlJztcclxuaW1wb3J0IHsgTnpEcm9wZG93bk1lbnVDb21wb25lbnQgfSBmcm9tICduZy16b3Jyby1hbnRkL2Ryb3Bkb3duJztcclxuaW1wb3J0IHsgUmVwbGF5U3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBGb3JtbHlCb3hUZW1wbGF0ZXMgfSBmcm9tICdAeG1hZ2ljL256LWZvcm1seS9jb21tb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICduei1mb3JtbHktZHJvcGRvd24nLFxyXG4gIHRlbXBsYXRlOiBgXHJcbiAgICA8bnotZHJvcGRvd24tbWVudSAjbWVudT1cIm56RHJvcGRvd25NZW51XCI+XHJcbiAgICAgIDxkaXYgbnotbWVudSBbZm9ybWx5QXR0cmlidXRlc109XCJmaWVsZFwiPlxyXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZmllbGQuZmllbGRHcm91cFwiPlxyXG4gICAgICAgICAgPGZvcm1seS1maWVsZFxyXG4gICAgICAgICAgICBuei1tZW51LWl0ZW1cclxuICAgICAgICAgICAgW2Zvcm1seUF0dHJpYnV0ZXNdPVwiaXRlbVwiXHJcbiAgICAgICAgICAgIFtmaWVsZF09XCJpdGVtXCJcclxuICAgICAgICAgICAgW256U2VsZWN0ZWRdPVwiaXRlbS5wcm9wcz8ubnpTZWxlY3RlZFwiXHJcbiAgICAgICAgICAgIFtuekRpc2FibGVkXT1cIml0ZW0ucHJvcHM/Lm56RGlzYWJsZWRcIlxyXG4gICAgICAgICAgICBbbnpQYWRkaW5nTGVmdF09XCJpdGVtLnByb3BzPy5uelBhZGRpbmdMZWZ0XCJcclxuICAgICAgICAgID48L2Zvcm1seS1maWVsZD5cclxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L256LWRyb3Bkb3duLW1lbnU+XHJcbiAgYCxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9ybWx5RmllbGREcm9wZG93bkNvbXBvbmVudCBleHRlbmRzIEZpZWxkVHlwZSBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgb3ZlcnJpZGUgZGVmYXVsdE9wdGlvbnMgPSB7XHJcbiAgICBwcm9wczogeyBfc3ViamVjdDogbmV3IFJlcGxheVN1YmplY3Q8TnpEcm9wZG93bk1lbnVDb21wb25lbnQ+KCkgfVxyXG4gIH07XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ21lbnUnLCB7IHJlYWQ6IE56RHJvcGRvd25NZW51Q29tcG9uZW50LCBzdGF0aWM6IHRydWUgfSkgaW5zdGFuY2UhOiBOekRyb3Bkb3duTWVudUNvbXBvbmVudDtcclxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBwdWJsaWMgZmllbGRUZW1wbGF0ZXM6IEZvcm1seUJveFRlbXBsYXRlcykge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMucHJvcHMuX3N1YmplY3QpIHtcclxuICAgICAgdGhpcy5wcm9wcy5fc3ViamVjdC5uZXh0KHRoaXMuaW5zdGFuY2UpO1xyXG4gICAgfVxyXG4gICAgdGhpcy5wcm9wcy5pbnN0YW5jZSA9IHRoaXMuaW5zdGFuY2U7XHJcbiAgICB0aGlzLnByb3BzLmluaXQ/Lih0aGlzLmluc3RhbmNlLCB0aGlzKTtcclxuICB9XHJcbn1cclxuIl19