imm-element-ui 0.3.2 → 0.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -31,10 +31,10 @@ export class PageGridListComponent extends AmComponent {
31
31
  });
32
32
  }
33
33
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PageGridListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
34
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: PageGridListComponent, isStandalone: true, selector: "app-page-grid-list", inputs: { params: { classPropertyName: "params", publicName: "params", isSignal: true, isRequired: false, transformFunction: null }, actions: { classPropertyName: "actions", publicName: "actions", isSignal: true, isRequired: false, transformFunction: null }, gridOptions: { classPropertyName: "gridOptions", publicName: "gridOptions", isSignal: true, isRequired: false, transformFunction: null }, authLevel: { classPropertyName: "authLevel", publicName: "authLevel", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: "<div class=\"flex flex-col h-full\">\r\n\t<div class=\"flex flex-wrap items-center py-1 px-1 bg-white\">\r\n\t\t<div class=\"lg:basis-1/6 md:basis-1/4 basis-1/2 flex justify-start order-1\">\r\n\t\t\t<app-crumb-action\r\n\t\t\t\t[addVisible]=\"params().addVisible\"\r\n\t\t\t\t[newUrl]=\"params().newUrl\"\r\n\t\t\t\t[onExport]=\"params().onExport\"\r\n\t\t\t\t[isList]=\"true\"\r\n\t\t\t\t[isShowCog]=\"true\"\r\n\t\t\t\t[authLevel]=\"authLevel()\">\r\n\t\t\t</app-crumb-action>\r\n\t\t</div>\r\n\t\t<div class=\"lg:basis-4/6 md:basis-1/2 basis-full flex justify-center items-center md:order-2 order-last\">\r\n\t\t\t<custom-head\r\n\t\t\t\tclass=\"max-lg:min-w-full\"\r\n\t\t\t\t[actions]=\"actions()\"\r\n\t\t\t\t[grid]=\"grid\"\r\n\t\t\t\t[authLevel]=\"authLevel()\"\r\n\t\t\t\t[gridOptions]=\"gridOptions()\"></custom-head>\r\n\t\t</div>\r\n\t\t<div class=\"lg:basis-1/6 md:basis-1/4 basis-1/2 flex justify-end order-3\">\r\n\t\t\t<custom-pager></custom-pager>\r\n\t\t</div>\r\n\t</div>\r\n\t<div class=\"flex-1\">\r\n\t\t<custom-grid\r\n\t\t\t#grid\r\n\t\t\t[upsert]=\"upsertPrm\"\r\n\t\t\t[(searchPrm)]=\"searchPrm\"\r\n\t\t\t[showAct]=\"false\"\r\n\t\t\t[gridOptions]=\"gridOptions()!\">\r\n\t\t</custom-grid>\r\n\t</div>\r\n</div>\r\n<app-import\r\n\t[fileName]=\"params()?.importFileName\"\r\n\t[funcName]=\"params()?.importFuncName\"\r\n\t[orgField]=\"params()?.importOrgField\"\r\n\t[modelName]=\"gridOptions()!.modelName ?? ''\">\r\n</app-import>\r\n", styles: [".ms-grid{background-color:#efefef}.ms-content{border-top:solid 1px #dbdbdb;background-color:#f9fafb}.mode-hide{display:none}\n"], dependencies: [{ kind: "component", type: GridComponent, selector: "custom-grid", inputs: ["gridOptions", "upsert", "rowData", "searchPrm", "addType", "selectData", "showAct", "actPos", "authLevel"], outputs: ["searchPrmChange", "deleteEmit", "addEmit"] }, { kind: "component", type: CrumbActionComponent, selector: "app-crumb-action", inputs: ["isShowCog", "addVisible", "newUrl", "onExport", "outlined", "isList", "authLevel", "actionList"], outputs: ["saveEvent", "cancelEvent", "actionEvent"] }, { kind: "component", type: PagerComponent, selector: "custom-pager" }, { kind: "component", type: HeadComponent, selector: "custom-head", inputs: ["gridOptions", "grid", "actions", "authLevel"] }, { kind: "component", type: ImportComponent, selector: "app-import", inputs: ["visible", "fileName", "funcName", "orgField", "modelName"], outputs: ["visibleChange"] }], encapsulation: i0.ViewEncapsulation.None }); }
34
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: PageGridListComponent, isStandalone: true, selector: "app-page-grid-list", inputs: { params: { classPropertyName: "params", publicName: "params", isSignal: true, isRequired: false, transformFunction: null }, actions: { classPropertyName: "actions", publicName: "actions", isSignal: true, isRequired: false, transformFunction: null }, gridOptions: { classPropertyName: "gridOptions", publicName: "gridOptions", isSignal: true, isRequired: false, transformFunction: null }, authLevel: { classPropertyName: "authLevel", publicName: "authLevel", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: "<div class=\"flex flex-col h-full\">\r\n\t<div class=\"flex flex-wrap items-center py-1 px-1 bg-white\">\r\n\t\t<div class=\"lg:basis-1/6 md:basis-1/4 basis-1/2 flex justify-start order-1\">\r\n\t\t\t<app-crumb-action\r\n\t\t\t\t[addVisible]=\"params().addVisible\"\r\n\t\t\t\t[newUrl]=\"params().newUrl\"\r\n\t\t\t\t[onExport]=\"params().onExport\"\r\n\t\t\t\t[isList]=\"true\"\r\n\t\t\t\t[isShowCog]=\"true\"\r\n\t\t\t\t[authLevel]=\"authLevel()\">\r\n\t\t\t</app-crumb-action>\r\n\t\t</div>\r\n\t\t<div class=\"lg:basis-4/6 md:basis-1/2 basis-full flex justify-center items-center md:order-2 order-last\">\r\n\t\t\t<custom-head\r\n\t\t\t\tclass=\"max-lg:min-w-full\"\r\n\t\t\t\t[actions]=\"actions()\"\r\n\t\t\t\t[grid]=\"grid\"\r\n\t\t\t\t[authLevel]=\"authLevel()\"\r\n\t\t\t\t[gridOptions]=\"gridOptions()\"></custom-head>\r\n\t\t</div>\r\n\t\t<div class=\"lg:basis-1/6 md:basis-1/4 basis-1/2 flex justify-end order-3\">\r\n\t\t\t<custom-pager></custom-pager>\r\n\t\t</div>\r\n\t</div>\r\n\t<div class=\"flex-1\">\r\n\t\t<custom-grid\r\n\t\t\t#grid\r\n\t\t\t[upsert]=\"upsertPrm\"\r\n\t\t\t[(searchPrm)]=\"searchPrm\"\r\n\t\t\t[showAct]=\"false\"\r\n\t\t\t[gridOptions]=\"gridOptions()!\">\r\n\t\t</custom-grid>\r\n\t</div>\r\n</div>\r\n<app-import\r\n\t[fileName]=\"params()?.importFileName\"\r\n\t[funcName]=\"params()?.importFuncName\"\r\n\t[orgField]=\"params()?.importOrgField\"\r\n\t[modelName]=\"gridOptions()!.modelName ?? ''\">\r\n</app-import>\r\n", styles: [".ms-grid{background-color:#efefef}.ms-content{border-top:solid 1px #dbdbdb;background-color:#f9fafb}.mode-hide{display:none}\n"], dependencies: [{ kind: "component", type: GridComponent, selector: "custom-grid", inputs: ["gridOptions", "upsert", "rowData", "searchPrm", "addType", "selectData", "showAct", "actPos", "authLevel"], outputs: ["searchPrmChange", "deleteEmit", "addEmit"] }, { kind: "component", type: CrumbActionComponent, selector: "app-crumb-action", inputs: ["isShowCog", "addVisible", "newUrl", "onExport", "outlined", "isList", "authLevel", "actionList", "data"], outputs: ["saveEvent", "cancelEvent", "actionEvent"] }, { kind: "component", type: PagerComponent, selector: "custom-pager" }, { kind: "component", type: HeadComponent, selector: "custom-head", inputs: ["gridOptions", "grid", "actions", "authLevel"] }, { kind: "component", type: ImportComponent, selector: "app-import", inputs: ["visible", "fileName", "funcName", "orgField", "modelName"], outputs: ["visibleChange"] }], encapsulation: i0.ViewEncapsulation.None }); }
35
35
  }
36
36
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PageGridListComponent, decorators: [{
37
37
  type: Component,
38
38
  args: [{ selector: 'app-page-grid-list', standalone: true, imports: [GridComponent, CrumbActionComponent, PagerComponent, HeadComponent, ImportComponent], encapsulation: ViewEncapsulation.None, template: "<div class=\"flex flex-col h-full\">\r\n\t<div class=\"flex flex-wrap items-center py-1 px-1 bg-white\">\r\n\t\t<div class=\"lg:basis-1/6 md:basis-1/4 basis-1/2 flex justify-start order-1\">\r\n\t\t\t<app-crumb-action\r\n\t\t\t\t[addVisible]=\"params().addVisible\"\r\n\t\t\t\t[newUrl]=\"params().newUrl\"\r\n\t\t\t\t[onExport]=\"params().onExport\"\r\n\t\t\t\t[isList]=\"true\"\r\n\t\t\t\t[isShowCog]=\"true\"\r\n\t\t\t\t[authLevel]=\"authLevel()\">\r\n\t\t\t</app-crumb-action>\r\n\t\t</div>\r\n\t\t<div class=\"lg:basis-4/6 md:basis-1/2 basis-full flex justify-center items-center md:order-2 order-last\">\r\n\t\t\t<custom-head\r\n\t\t\t\tclass=\"max-lg:min-w-full\"\r\n\t\t\t\t[actions]=\"actions()\"\r\n\t\t\t\t[grid]=\"grid\"\r\n\t\t\t\t[authLevel]=\"authLevel()\"\r\n\t\t\t\t[gridOptions]=\"gridOptions()\"></custom-head>\r\n\t\t</div>\r\n\t\t<div class=\"lg:basis-1/6 md:basis-1/4 basis-1/2 flex justify-end order-3\">\r\n\t\t\t<custom-pager></custom-pager>\r\n\t\t</div>\r\n\t</div>\r\n\t<div class=\"flex-1\">\r\n\t\t<custom-grid\r\n\t\t\t#grid\r\n\t\t\t[upsert]=\"upsertPrm\"\r\n\t\t\t[(searchPrm)]=\"searchPrm\"\r\n\t\t\t[showAct]=\"false\"\r\n\t\t\t[gridOptions]=\"gridOptions()!\">\r\n\t\t</custom-grid>\r\n\t</div>\r\n</div>\r\n<app-import\r\n\t[fileName]=\"params()?.importFileName\"\r\n\t[funcName]=\"params()?.importFuncName\"\r\n\t[orgField]=\"params()?.importOrgField\"\r\n\t[modelName]=\"gridOptions()!.modelName ?? ''\">\r\n</app-import>\r\n", styles: [".ms-grid{background-color:#efefef}.ms-content{border-top:solid 1px #dbdbdb;background-color:#f9fafb}.mode-hide{display:none}\n"] }]
39
39
  }], ctorParameters: () => [] });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1ncmlkLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW1tLWVsZW1lbnQtdWkvc3JjL2xpYi9wYWdlLWdyaWQtbGlzdC9wYWdlLWdyaWQtbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbW0tZWxlbWVudC11aS9zcmMvbGliL3BhZ2UtZ3JpZC1saXN0L3BhZ2UtZ3JpZC1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRixPQUFPLEVBQWtCLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxHQUFnQixNQUFNLDZCQUE2QixDQUFBO0FBQ3pFLE9BQU8sRUFBRSxXQUFXLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUE7QUFDOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7O0FBVTlFLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxXQUFXO0lBS3JEO1FBQ0MsS0FBSyxFQUFFLENBQUM7UUFMVCxXQUFNLEdBQUcsS0FBSyxFQUFPLENBQUM7UUFDdEIsWUFBTyxHQUFHLEtBQUssQ0FBUSxFQUFFLENBQUMsQ0FBQztRQUMzQixnQkFBVyxHQUFHLEtBQUssRUFBZSxDQUFDO1FBQ25DLGNBQVMsR0FBRyxLQUFLLENBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUc3QixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUVwQixNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ1gsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFHLENBQUMsU0FBVSxDQUFDO1lBQ2hELElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFHLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ3pDLElBQUksQ0FBQyxXQUFXLEVBQUcsQ0FBQyxjQUFjLEdBQUcsRUFBRSxDQUFDO1lBQ3pDLENBQUM7WUFDRCxJQUFJLENBQUMsU0FBUyxHQUFHO2dCQUNoQixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7Z0JBQ3pCLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUTtnQkFDaEMsTUFBTSxFQUFFLENBQUM7Z0JBQ1QsS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUcsQ0FBQyxjQUFjO2dCQUN6QyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDO2dCQUM3QyxLQUFLLEVBQUUsSUFBSTthQUNYLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNKLENBQUM7K0dBeEJXLHFCQUFxQjttR0FBckIscUJBQXFCLHduQkNoQmxDLHk3Q0F3Q0Esd0xEN0JXLGFBQWEscU9BQUUsb0JBQW9CLCtOQUFFLGNBQWMseURBQUUsYUFBYSxpSEFBRSxlQUFlOzs0RkFLakYscUJBQXFCO2tCQVJqQyxTQUFTOytCQUNDLG9CQUFvQixjQUNsQixJQUFJLFdBQ1AsQ0FBQyxhQUFhLEVBQUUsb0JBQW9CLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxlQUFlLENBQUMsaUJBRy9FLGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgaW5wdXQsIGVmZmVjdCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgIEltcG9ydE9wdGlvbnMsIEltcG9ydENvbXBvbmVudCB9IGZyb20gJy4uL2ltcG9ydC9pbXBvcnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSGVhZENvbXBvbmVudCB9IGZyb20gJy4uL2hlYWQvaGVhZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBHcmlkQ29tcG9uZW50LCBHcmlkT3B0aW9ucywgfSBmcm9tICcuLi9ncmlkL2dyaWQvZ3JpZC5jb21wb25lbnQnXHJcbmltcG9ydCB7IEFtQ29tcG9uZW50fSBmcm9tICcuLi9hbS9hbS5jb21wb25lbnQnXHJcbmltcG9ydCB7IFBhZ2VyQ29tcG9uZW50IH0gZnJvbSAnLi4vZ3JpZC9wYWdlci9wYWdlci5jb21wb25lbnQnXHJcbmltcG9ydCB7IENydW1iQWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vY3J1bWItYWN0aW9uL2NydW1iLWFjdGlvbi5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c2VsZWN0b3I6ICdhcHAtcGFnZS1ncmlkLWxpc3QnLFxyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0aW1wb3J0czogW0dyaWRDb21wb25lbnQsIENydW1iQWN0aW9uQ29tcG9uZW50LCBQYWdlckNvbXBvbmVudCwgSGVhZENvbXBvbmVudCwgSW1wb3J0Q29tcG9uZW50XSxcclxuXHR0ZW1wbGF0ZVVybDogJy4vcGFnZS1ncmlkLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsOiAnLi9wYWdlLWdyaWQtbGlzdC5jb21wb25lbnQuc2NzcycsXHJcblx0ZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBhZ2VHcmlkTGlzdENvbXBvbmVudCBleHRlbmRzIEFtQ29tcG9uZW50IHtcclxuXHRwYXJhbXMgPSBpbnB1dDxhbnk+KCk7XHJcblx0YWN0aW9ucyA9IGlucHV0PGFueVtdPihbXSk7XHJcblx0Z3JpZE9wdGlvbnMgPSBpbnB1dDxHcmlkT3B0aW9ucz4oKTtcclxuXHRhdXRoTGV2ZWwgPSBpbnB1dDxudW1iZXI+KC0xKTtcclxuXHRjb25zdHJ1Y3RvcigpIHtcclxuXHRcdHN1cGVyKCk7XHJcblx0XHR0aGlzLmV4cG9ydFBybSA9IHt9O1xyXG5cdFx0dGhpcy5pbXBvcnRQcm0gPSB7fTtcclxuXHJcblx0XHRlZmZlY3QoKCkgPT4ge1xyXG5cdFx0XHR0aGlzLm1vZGVsTmFtZSA9IHRoaXMuZ3JpZE9wdGlvbnMoKSEubW9kZWxOYW1lITtcclxuXHRcdFx0aWYgKCF0aGlzLmdyaWRPcHRpb25zKCkhLmNhY2hlQmxvY2tTaXplKSB7XHJcblx0XHRcdFx0dGhpcy5ncmlkT3B0aW9ucygpIS5jYWNoZUJsb2NrU2l6ZSA9IDUwO1xyXG5cdFx0XHR9XHJcblx0XHRcdHRoaXMuc2VhcmNoUHJtID0ge1xyXG5cdFx0XHRcdG1vZGVsTmFtZTogdGhpcy5tb2RlbE5hbWUsXHJcblx0XHRcdFx0b3JnRmllbGQ6IHRoaXMucGFyYW1zKCkub3JnRmllbGQsXHJcblx0XHRcdFx0b2Zmc2V0OiAwLFxyXG5cdFx0XHRcdGxpbWl0OiB0aGlzLmdyaWRPcHRpb25zKCkhLmNhY2hlQmxvY2tTaXplLFxyXG5cdFx0XHRcdHNvcnRzOiBbeyBmaWVsZDogJ2NyZWF0ZWRBdCcsIGlzQXNjOiBmYWxzZSB9XSxcclxuXHRcdFx0XHRjb3VudDogdHJ1ZSxcclxuXHRcdFx0fTtcclxuXHRcdH0pO1xyXG5cdH1cclxufVxyXG5cclxuIiwiPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgaC1mdWxsXCI+XHJcblx0PGRpdiBjbGFzcz1cImZsZXggZmxleC13cmFwIGl0ZW1zLWNlbnRlciBweS0xIHB4LTEgYmctd2hpdGVcIj5cclxuXHRcdDxkaXYgY2xhc3M9XCJsZzpiYXNpcy0xLzYgbWQ6YmFzaXMtMS80IGJhc2lzLTEvMiBmbGV4IGp1c3RpZnktc3RhcnQgb3JkZXItMVwiPlxyXG5cdFx0XHQ8YXBwLWNydW1iLWFjdGlvblxyXG5cdFx0XHRcdFthZGRWaXNpYmxlXT1cInBhcmFtcygpLmFkZFZpc2libGVcIlxyXG5cdFx0XHRcdFtuZXdVcmxdPVwicGFyYW1zKCkubmV3VXJsXCJcclxuXHRcdFx0XHRbb25FeHBvcnRdPVwicGFyYW1zKCkub25FeHBvcnRcIlxyXG5cdFx0XHRcdFtpc0xpc3RdPVwidHJ1ZVwiXHJcblx0XHRcdFx0W2lzU2hvd0NvZ109XCJ0cnVlXCJcclxuXHRcdFx0XHRbYXV0aExldmVsXT1cImF1dGhMZXZlbCgpXCI+XHJcblx0XHRcdDwvYXBwLWNydW1iLWFjdGlvbj5cclxuXHRcdDwvZGl2PlxyXG5cdFx0PGRpdiBjbGFzcz1cImxnOmJhc2lzLTQvNiBtZDpiYXNpcy0xLzIgYmFzaXMtZnVsbCBmbGV4IGp1c3RpZnktY2VudGVyIGl0ZW1zLWNlbnRlciBtZDpvcmRlci0yIG9yZGVyLWxhc3RcIj5cclxuXHRcdFx0PGN1c3RvbS1oZWFkXHJcblx0XHRcdFx0Y2xhc3M9XCJtYXgtbGc6bWluLXctZnVsbFwiXHJcblx0XHRcdFx0W2FjdGlvbnNdPVwiYWN0aW9ucygpXCJcclxuXHRcdFx0XHRbZ3JpZF09XCJncmlkXCJcclxuXHRcdFx0XHRbYXV0aExldmVsXT1cImF1dGhMZXZlbCgpXCJcclxuXHRcdFx0XHRbZ3JpZE9wdGlvbnNdPVwiZ3JpZE9wdGlvbnMoKVwiPjwvY3VzdG9tLWhlYWQ+XHJcblx0XHQ8L2Rpdj5cclxuXHRcdDxkaXYgY2xhc3M9XCJsZzpiYXNpcy0xLzYgbWQ6YmFzaXMtMS80IGJhc2lzLTEvMiBmbGV4IGp1c3RpZnktZW5kIG9yZGVyLTNcIj5cclxuXHRcdFx0PGN1c3RvbS1wYWdlcj48L2N1c3RvbS1wYWdlcj5cclxuXHRcdDwvZGl2PlxyXG5cdDwvZGl2PlxyXG5cdDxkaXYgY2xhc3M9XCJmbGV4LTFcIj5cclxuXHRcdDxjdXN0b20tZ3JpZFxyXG5cdFx0XHQjZ3JpZFxyXG5cdFx0XHRbdXBzZXJ0XT1cInVwc2VydFBybVwiXHJcblx0XHRcdFsoc2VhcmNoUHJtKV09XCJzZWFyY2hQcm1cIlxyXG5cdFx0XHRbc2hvd0FjdF09XCJmYWxzZVwiXHJcblx0XHRcdFtncmlkT3B0aW9uc109XCJncmlkT3B0aW9ucygpIVwiPlxyXG5cdFx0PC9jdXN0b20tZ3JpZD5cclxuXHQ8L2Rpdj5cclxuPC9kaXY+XHJcbjxhcHAtaW1wb3J0XHJcblx0W2ZpbGVOYW1lXT1cInBhcmFtcygpPy5pbXBvcnRGaWxlTmFtZVwiXHJcblx0W2Z1bmNOYW1lXT1cInBhcmFtcygpPy5pbXBvcnRGdW5jTmFtZVwiXHJcblx0W29yZ0ZpZWxkXT1cInBhcmFtcygpPy5pbXBvcnRPcmdGaWVsZFwiXHJcblx0W21vZGVsTmFtZV09XCJncmlkT3B0aW9ucygpIS5tb2RlbE5hbWUgPz8gJydcIj5cclxuPC9hcHAtaW1wb3J0PlxyXG4iXX0=
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1ncmlkLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW1tLWVsZW1lbnQtdWkvc3JjL2xpYi9wYWdlLWdyaWQtbGlzdC9wYWdlLWdyaWQtbGlzdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbW0tZWxlbWVudC11aS9zcmMvbGliL3BhZ2UtZ3JpZC1saXN0L3BhZ2UtZ3JpZC1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNwRixPQUFPLEVBQWtCLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsYUFBYSxHQUFnQixNQUFNLDZCQUE2QixDQUFBO0FBQ3pFLE9BQU8sRUFBRSxXQUFXLEVBQUMsTUFBTSxvQkFBb0IsQ0FBQTtBQUMvQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUE7QUFDOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7O0FBVTlFLE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxXQUFXO0lBS3JEO1FBQ0MsS0FBSyxFQUFFLENBQUM7UUFMVCxXQUFNLEdBQUcsS0FBSyxFQUFPLENBQUM7UUFDdEIsWUFBTyxHQUFHLEtBQUssQ0FBUSxFQUFFLENBQUMsQ0FBQztRQUMzQixnQkFBVyxHQUFHLEtBQUssRUFBZSxDQUFDO1FBQ25DLGNBQVMsR0FBRyxLQUFLLENBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUc3QixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztRQUVwQixNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ1gsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFHLENBQUMsU0FBVSxDQUFDO1lBQ2hELElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFHLENBQUMsY0FBYyxFQUFFLENBQUM7Z0JBQ3pDLElBQUksQ0FBQyxXQUFXLEVBQUcsQ0FBQyxjQUFjLEdBQUcsRUFBRSxDQUFDO1lBQ3pDLENBQUM7WUFDRCxJQUFJLENBQUMsU0FBUyxHQUFHO2dCQUNoQixTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7Z0JBQ3pCLFFBQVEsRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsUUFBUTtnQkFDaEMsTUFBTSxFQUFFLENBQUM7Z0JBQ1QsS0FBSyxFQUFFLElBQUksQ0FBQyxXQUFXLEVBQUcsQ0FBQyxjQUFjO2dCQUN6QyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxDQUFDO2dCQUM3QyxLQUFLLEVBQUUsSUFBSTthQUNYLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNKLENBQUM7K0dBeEJXLHFCQUFxQjttR0FBckIscUJBQXFCLHduQkNoQmxDLHk3Q0F3Q0Esd0xEN0JXLGFBQWEscU9BQUUsb0JBQW9CLHVPQUFFLGNBQWMseURBQUUsYUFBYSxpSEFBRSxlQUFlOzs0RkFLakYscUJBQXFCO2tCQVJqQyxTQUFTOytCQUNDLG9CQUFvQixjQUNsQixJQUFJLFdBQ1AsQ0FBQyxhQUFhLEVBQUUsb0JBQW9CLEVBQUUsY0FBYyxFQUFFLGFBQWEsRUFBRSxlQUFlLENBQUMsaUJBRy9FLGlCQUFpQixDQUFDLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgaW5wdXQsIGVmZmVjdCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgIEltcG9ydE9wdGlvbnMsIEltcG9ydENvbXBvbmVudCB9IGZyb20gJy4uL2ltcG9ydC9pbXBvcnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSGVhZENvbXBvbmVudCB9IGZyb20gJy4uL2hlYWQvaGVhZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBHcmlkQ29tcG9uZW50LCBHcmlkT3B0aW9ucywgfSBmcm9tICcuLi9ncmlkL2dyaWQvZ3JpZC5jb21wb25lbnQnXHJcbmltcG9ydCB7IEFtQ29tcG9uZW50fSBmcm9tICcuLi9hbS9hbS5jb21wb25lbnQnXHJcbmltcG9ydCB7IFBhZ2VyQ29tcG9uZW50IH0gZnJvbSAnLi4vZ3JpZC9wYWdlci9wYWdlci5jb21wb25lbnQnXHJcbmltcG9ydCB7IENydW1iQWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vY3J1bWItYWN0aW9uL2NydW1iLWFjdGlvbi5jb21wb25lbnQnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcblx0c2VsZWN0b3I6ICdhcHAtcGFnZS1ncmlkLWxpc3QnLFxyXG5cdHN0YW5kYWxvbmU6IHRydWUsXHJcblx0aW1wb3J0czogW0dyaWRDb21wb25lbnQsIENydW1iQWN0aW9uQ29tcG9uZW50LCBQYWdlckNvbXBvbmVudCwgSGVhZENvbXBvbmVudCwgSW1wb3J0Q29tcG9uZW50XSxcclxuXHR0ZW1wbGF0ZVVybDogJy4vcGFnZS1ncmlkLWxpc3QuY29tcG9uZW50Lmh0bWwnLFxyXG5cdHN0eWxlVXJsOiAnLi9wYWdlLWdyaWQtbGlzdC5jb21wb25lbnQuc2NzcycsXHJcblx0ZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBhZ2VHcmlkTGlzdENvbXBvbmVudCBleHRlbmRzIEFtQ29tcG9uZW50IHtcclxuXHRwYXJhbXMgPSBpbnB1dDxhbnk+KCk7XHJcblx0YWN0aW9ucyA9IGlucHV0PGFueVtdPihbXSk7XHJcblx0Z3JpZE9wdGlvbnMgPSBpbnB1dDxHcmlkT3B0aW9ucz4oKTtcclxuXHRhdXRoTGV2ZWwgPSBpbnB1dDxudW1iZXI+KC0xKTtcclxuXHRjb25zdHJ1Y3RvcigpIHtcclxuXHRcdHN1cGVyKCk7XHJcblx0XHR0aGlzLmV4cG9ydFBybSA9IHt9O1xyXG5cdFx0dGhpcy5pbXBvcnRQcm0gPSB7fTtcclxuXHJcblx0XHRlZmZlY3QoKCkgPT4ge1xyXG5cdFx0XHR0aGlzLm1vZGVsTmFtZSA9IHRoaXMuZ3JpZE9wdGlvbnMoKSEubW9kZWxOYW1lITtcclxuXHRcdFx0aWYgKCF0aGlzLmdyaWRPcHRpb25zKCkhLmNhY2hlQmxvY2tTaXplKSB7XHJcblx0XHRcdFx0dGhpcy5ncmlkT3B0aW9ucygpIS5jYWNoZUJsb2NrU2l6ZSA9IDUwO1xyXG5cdFx0XHR9XHJcblx0XHRcdHRoaXMuc2VhcmNoUHJtID0ge1xyXG5cdFx0XHRcdG1vZGVsTmFtZTogdGhpcy5tb2RlbE5hbWUsXHJcblx0XHRcdFx0b3JnRmllbGQ6IHRoaXMucGFyYW1zKCkub3JnRmllbGQsXHJcblx0XHRcdFx0b2Zmc2V0OiAwLFxyXG5cdFx0XHRcdGxpbWl0OiB0aGlzLmdyaWRPcHRpb25zKCkhLmNhY2hlQmxvY2tTaXplLFxyXG5cdFx0XHRcdHNvcnRzOiBbeyBmaWVsZDogJ2NyZWF0ZWRBdCcsIGlzQXNjOiBmYWxzZSB9XSxcclxuXHRcdFx0XHRjb3VudDogdHJ1ZSxcclxuXHRcdFx0fTtcclxuXHRcdH0pO1xyXG5cdH1cclxufVxyXG5cclxuIiwiPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgaC1mdWxsXCI+XHJcblx0PGRpdiBjbGFzcz1cImZsZXggZmxleC13cmFwIGl0ZW1zLWNlbnRlciBweS0xIHB4LTEgYmctd2hpdGVcIj5cclxuXHRcdDxkaXYgY2xhc3M9XCJsZzpiYXNpcy0xLzYgbWQ6YmFzaXMtMS80IGJhc2lzLTEvMiBmbGV4IGp1c3RpZnktc3RhcnQgb3JkZXItMVwiPlxyXG5cdFx0XHQ8YXBwLWNydW1iLWFjdGlvblxyXG5cdFx0XHRcdFthZGRWaXNpYmxlXT1cInBhcmFtcygpLmFkZFZpc2libGVcIlxyXG5cdFx0XHRcdFtuZXdVcmxdPVwicGFyYW1zKCkubmV3VXJsXCJcclxuXHRcdFx0XHRbb25FeHBvcnRdPVwicGFyYW1zKCkub25FeHBvcnRcIlxyXG5cdFx0XHRcdFtpc0xpc3RdPVwidHJ1ZVwiXHJcblx0XHRcdFx0W2lzU2hvd0NvZ109XCJ0cnVlXCJcclxuXHRcdFx0XHRbYXV0aExldmVsXT1cImF1dGhMZXZlbCgpXCI+XHJcblx0XHRcdDwvYXBwLWNydW1iLWFjdGlvbj5cclxuXHRcdDwvZGl2PlxyXG5cdFx0PGRpdiBjbGFzcz1cImxnOmJhc2lzLTQvNiBtZDpiYXNpcy0xLzIgYmFzaXMtZnVsbCBmbGV4IGp1c3RpZnktY2VudGVyIGl0ZW1zLWNlbnRlciBtZDpvcmRlci0yIG9yZGVyLWxhc3RcIj5cclxuXHRcdFx0PGN1c3RvbS1oZWFkXHJcblx0XHRcdFx0Y2xhc3M9XCJtYXgtbGc6bWluLXctZnVsbFwiXHJcblx0XHRcdFx0W2FjdGlvbnNdPVwiYWN0aW9ucygpXCJcclxuXHRcdFx0XHRbZ3JpZF09XCJncmlkXCJcclxuXHRcdFx0XHRbYXV0aExldmVsXT1cImF1dGhMZXZlbCgpXCJcclxuXHRcdFx0XHRbZ3JpZE9wdGlvbnNdPVwiZ3JpZE9wdGlvbnMoKVwiPjwvY3VzdG9tLWhlYWQ+XHJcblx0XHQ8L2Rpdj5cclxuXHRcdDxkaXYgY2xhc3M9XCJsZzpiYXNpcy0xLzYgbWQ6YmFzaXMtMS80IGJhc2lzLTEvMiBmbGV4IGp1c3RpZnktZW5kIG9yZGVyLTNcIj5cclxuXHRcdFx0PGN1c3RvbS1wYWdlcj48L2N1c3RvbS1wYWdlcj5cclxuXHRcdDwvZGl2PlxyXG5cdDwvZGl2PlxyXG5cdDxkaXYgY2xhc3M9XCJmbGV4LTFcIj5cclxuXHRcdDxjdXN0b20tZ3JpZFxyXG5cdFx0XHQjZ3JpZFxyXG5cdFx0XHRbdXBzZXJ0XT1cInVwc2VydFBybVwiXHJcblx0XHRcdFsoc2VhcmNoUHJtKV09XCJzZWFyY2hQcm1cIlxyXG5cdFx0XHRbc2hvd0FjdF09XCJmYWxzZVwiXHJcblx0XHRcdFtncmlkT3B0aW9uc109XCJncmlkT3B0aW9ucygpIVwiPlxyXG5cdFx0PC9jdXN0b20tZ3JpZD5cclxuXHQ8L2Rpdj5cclxuPC9kaXY+XHJcbjxhcHAtaW1wb3J0XHJcblx0W2ZpbGVOYW1lXT1cInBhcmFtcygpPy5pbXBvcnRGaWxlTmFtZVwiXHJcblx0W2Z1bmNOYW1lXT1cInBhcmFtcygpPy5pbXBvcnRGdW5jTmFtZVwiXHJcblx0W29yZ0ZpZWxkXT1cInBhcmFtcygpPy5pbXBvcnRPcmdGaWVsZFwiXHJcblx0W21vZGVsTmFtZV09XCJncmlkT3B0aW9ucygpIS5tb2RlbE5hbWUgPz8gJydcIj5cclxuPC9hcHAtaW1wb3J0PlxyXG4iXX0=
@@ -147,4 +147,24 @@ export const filterObjectByKeys = (obj, keys) => {
147
147
  return acc;
148
148
  }, {});
149
149
  };
150
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbW0tZWxlbWVudC11aS9zcmMvbGliL3NoYXJlL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFakMsTUFBTSxDQUFDLElBQUksWUFBWSxHQUFHLENBQUMsR0FBVyxFQUFFLEVBQUUsQ0FDekMsR0FBRztLQUNELE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUMsV0FBVztLQUM5QixPQUFPLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLENBQUMsV0FBVztLQUMvQyxXQUFXLEVBQUUsQ0FBQyxPQUFPO0tBQ3JCLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRO0tBQ3JCLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztLQUNsRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7QUFFWixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxHQUFHLEVBQUU7SUFDcEMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGVBQWU7SUFDMUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMs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QUFnQjtJQUNoQixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFRLEVBQUUsR0FBVyxFQUFFLEVBQUU7UUFDNUMscUJBQXFCO1FBQ3JCLElBQUksR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ2hCLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDckIsQ0FBQztRQUNELE9BQU8sR0FBRyxDQUFDO0lBQ1osQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ1IsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YsIHNoYXJlUmVwbGF5LCBwaXBlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCAqIGFzIHRzIGZyb20gJ3R5cGVzY3JpcHQnO1xyXG5cclxuZXhwb3J0IGxldCB0b1Bhc2NhbENhc2UgPSAoc3RyOiBzdHJpbmcpID0+XHJcblx0c3RyXHJcblx0XHQucmVwbGFjZSgvXy9nLCAnICcpIC8vIOS4i+WIkue6v+abv+aNouS4uuepuuagvFxyXG5cdFx0LnJlcGxhY2UoLyhbYS16XSkoW0EtWl0pL2csICckMSAkMicpIC8vIOWwj+mpvOWzsOWIhuWJsuS4uuWNleivjVxyXG5cdFx0LnRvTG93ZXJDYXNlKCkgLy8g6L2s5Li65bCP5YaZXHJcblx0XHQuc3BsaXQoL1xccysvKSAvLyDmjInnqbrmoLzliIblibJcclxuXHRcdC5tYXAoKHdvcmQpID0+ICh3b3JkID8gd29yZFswXS50b1VwcGVyQ2FzZSgpICsgd29yZC5zbGljZSgxKSA6ICcnKSlcclxuXHRcdC5qb2luKCcnKTtcclxuXHJcbmV4cG9ydCBjb25zdCBnZW5lcmF0ZVVuaXF1ZUlkID0gKCkgPT4ge1xyXG5cdGNvbnN0IHRpbWVzdGFtcCA9IERhdGUubm93KCkudG9TdHJpbmcoMzYpOyAvLyDml7bpl7TmiLPovawzNui/m+WItue8qeefremVv+W6plxyXG5cdGNvbnN0IHJhbmRvbSA9IE1hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cmluZygyLCA0KTsgLy8g6ZqP5py66YOo5YiGXHJcblx0cmV0dXJuIGAke3RpbWVzdGFtcH0ke3JhbmRvbX1gO1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IGNyZWF0ZUNpcmN1bGFySXRlcmF0b3IgPSAoYXJyYXk6IGFueVtdKSA9PiB7XHJcblx0bGV0IGluZGV4ID0gLTE7XHJcblx0cmV0dXJuIHtcclxuXHRcdG5leHQ6ICgpID0+IHtcclxuXHRcdFx0aW5kZXgrKztcclxuXHRcdFx0cmV0dXJuIGFycmF5W2luZGV4ICUgYXJyYXkubGVuZ3RoXTtcclxuXHRcdH0sXHJcblx0XHRwcmV2OiAoKSA9PiB7XHJcblx0XHRcdGluZGV4LS07XHJcblx0XHRcdHJldHVybiBhcnJheVsoKGluZGV4ICUgYXJyYXkubGVuZ3RoKSArIGFycmF5Lmxlbmd0aCkgJSBhcnJheS5sZW5ndGhdO1xyXG5cdFx0fSxcclxuXHR9O1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IHBhcnNlRnVuY3Rpb25zID0gKG9iajogYW55LCBfdGhpczogYW55KTogYW55ID0+IHtcclxuXHRpZiAodHlwZW9mIG9iaiA9PT0gJ3N0cmluZycpIHtcclxuXHRcdC8vIOWwneivleajgOa1i+aYr+WQpuaYr+WHveaVsOWtl+espuS4slxyXG5cdFx0aWYgKChvYmouaW5jbHVkZXMoJz0+JykgfHwgb2JqLmluY2x1ZGVzKCdQcm9taXNlJykpICYmICFpc0pTT05QYXJzYWJsZShvYmopKSB7XHJcblx0XHRcdGNvbnN0IG8gPSBjb21waWxlVHNUb0pzKG9iaik7XHJcblx0XHRcdC8vIGNvbnNvbGUubG9nKCfop6PmnpDlh73mlbA6Jywgb2JqKTtcclxuXHRcdFx0dHJ5IHtcclxuXHRcdFx0XHRjb25zdCBzYW5kYm94ID0ge1xyXG5cdFx0XHRcdFx0T2JzZXJ2YWJsZSxcclxuXHRcdFx0XHRcdG9mLFxyXG5cdFx0XHRcdFx0c2hhcmVSZXBsYXksXHJcblx0XHRcdFx0XHRwaXBlLFxyXG5cdFx0XHRcdFx0UHJvbWlzZSwgLy8g5re75YqgIFByb21pc2Ug5YiwIHNhbmRib3hcclxuXHRcdFx0XHRcdGFzeW5jOiB0cnVlLCAvLyDmoIforrDmlK/mjIHlvILmraVcclxuXHRcdFx0XHRcdHJlc29sdmU6IFByb21pc2UucmVzb2x2ZS5iaW5kKFByb21pc2UpLFxyXG5cdFx0XHRcdFx0cmVqZWN0OiBQcm9taXNlLnJlamVjdC5iaW5kKFByb21pc2UpLFxyXG5cdFx0XHRcdH07XHJcblxyXG5cdFx0XHRcdC8vIOWkhOeQhiBQcm9taXNlIOaehOmAoOWHveaVsOeahOaDheWGtVxyXG5cdFx0XHRcdGlmIChvYmouaW5jbHVkZXMoJ25ldyBQcm9taXNlJykpIHtcclxuXHRcdFx0XHRcdHJldHVybiBuZXcgRnVuY3Rpb24oXHJcblx0XHRcdFx0XHRcdCdzYW5kYm94JyxcclxuXHRcdFx0XHRcdFx0YFxyXG5cdFx0XHRcdFx0XHRcdHdpdGgoc2FuZGJveCkge1xyXG5cdFx0XHRcdFx0XHRcdFx0cmV0dXJuICR7b307XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRgLFxyXG5cdFx0XHRcdFx0KS5iaW5kKF90aGlzKShzYW5kYm94KTtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdC8vIOWkhOeQhuaZrumAmuWHveaVsOWSjOeureWktOWHveaVsFxyXG5cdFx0XHRcdHJldHVybiBuZXcgRnVuY3Rpb24oXHJcblx0XHRcdFx0XHQnc2FuZGJveCcsXHJcblx0XHRcdFx0XHRgXHJcblx0XHRcdFx0XHRcdHdpdGgoc2FuZGJveCkge1xyXG5cdFx0XHRcdFx0XHRcdHJldHVybiAoJHtvfSk7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGAsXHJcblx0XHRcdFx0KS5iaW5kKF90aGlzKShzYW5kYm94KTtcclxuXHRcdFx0fSBjYXRjaCAoZSkge1xyXG5cdFx0XHRcdGNvbnNvbGUuZXJyb3IoJ+WHveaVsOino+aekOWksei0pTonLCBlLCAnXFxu5Y6f5aeL5a2X56ym5LiyOicsIG9iaik7XHJcblx0XHRcdFx0cmV0dXJuIG9iajtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0aWYgKGlzSlNPTlBhcnNhYmxlKG9iaikpIHtcclxuXHRcdFx0bGV0IGpzb24gPSBKU09OLnBhcnNlKG9iaik7XHJcblx0XHRcdHJldHVybiBwYXJzZUZ1bmN0aW9ucyhqc29uLCBfdGhpcyk7XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gb2JqO1xyXG5cdH1cclxuXHRpZiAoQXJyYXkuaXNBcnJheShvYmopKSB7XHJcblx0XHRyZXR1cm4gb2JqLm1hcCgoaXRlbTogYW55KSA9PiBwYXJzZUZ1bmN0aW9ucyhpdGVtLCBfdGhpcykpO1xyXG5cdH1cclxuXHRpZiAodHlwZW9mIG9iaiA9PT0gJ29iamVjdCcgJiYgb2JqICE9PSBudWxsKSB7XHJcblx0XHRjb25zdCByZXN1bHQ6IGFueSA9IHt9O1xyXG5cdFx0Zm9yIChjb25zdCBrZXkgaW4gb2JqKSB7XHJcblx0XHRcdGlmIChvYmouaGFzT3duUHJvcGVydHkoa2V5KSkge1xyXG5cdFx0XHRcdHJlc3VsdFtrZXldID0gcGFyc2VGdW5jdGlvbnMob2JqW2tleV0sIF90aGlzKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIHJlc3VsdDtcclxuXHR9XHJcblxyXG5cdHJldHVybiBvYmo7XHJcbn07XHJcblxyXG4vLyDovoXliqnlh73mlbDvvJrmo4Dmn6XmmK/lkKbljIXlkKsgUHJvbWlzZSDmnoTpgKDlh73mlbBcclxuY29uc3QgY29udGFpbnNQcm9taXNlQ29uc3RydWN0b3IgPSAoc3RyOiBzdHJpbmcpOiBib29sZWFuID0+IHtcclxuXHRyZXR1cm4gL25ld1xccytQcm9taXNlLy50ZXN0KHN0cik7XHJcbn07XHJcblxyXG4vLyDkv67mlLkgY29tcGlsZVRzVG9KcyDlh73mlbDku6Xmm7Tlpb3lnLDlpITnkIYgUHJvbWlzZVxyXG5leHBvcnQgY29uc3QgY29tcGlsZVRzVG9KcyA9ICh0c0NvZGU6IHN0cmluZyk6IHN0cmluZyA9PiB7XHJcblx0Ly8g5aaC5p6c5pivIFByb21pc2Ug5p6E6YCg5Ye95pWw77yM5LiN6ZyA6KaB6aKd5aSW5aSE55CGXHJcblx0aWYgKGNvbnRhaW5zUHJvbWlzZUNvbnN0cnVjdG9yKHRzQ29kZSkpIHtcclxuXHRcdHJldHVybiB0c0NvZGU7XHJcblx0fVxyXG5cclxuXHRjb25zdCByZXN1bHQgPSB0cy50cmFuc3BpbGVNb2R1bGUodHNDb2RlLCB7XHJcblx0XHRjb21waWxlck9wdGlvbnM6IHtcclxuXHRcdFx0bW9kdWxlOiB0cy5Nb2R1bGVLaW5kLkNvbW1vbkpTLFxyXG5cdFx0XHR0YXJnZXQ6IHRzLlNjcmlwdFRhcmdldC5FUzIwMTUsXHJcblx0XHRcdC8vIOWQr+eUqOW8guatpeWHveaVsOaUr+aMgVxyXG5cdFx0XHRsaWI6IFsnZXMyMDE1JywgJ2VzMjAxNS5wcm9taXNlJywgJ2RvbSddLFxyXG5cdFx0fSxcclxuXHR9KTtcclxuXHRyZXR1cm4gcmVtb3ZlVHJhaWxpbmdTZW1pY29sb24ocmVzdWx0Lm91dHB1dFRleHQpO1xyXG59O1xyXG5cclxuY29uc3QgcmVtb3ZlVHJhaWxpbmdTZW1pY29sb24gPSAoZnVuY1N0cjogc3RyaW5nKTogc3RyaW5nID0+IHtcclxuXHQvLyDlhYjljrvpmaTliY3lkI7nqbrnmb1cclxuXHRjb25zdCB0cmltbWVkID0gZnVuY1N0ci50cmltKCk7XHJcblx0Ly8g5Y+q5pu/5o2i5pyA5ZCO5LiA5Liq5YiG5Y+377yI5aaC5p6c5a6D5LiN5Zyo6Iqx5ous5Y+35YaF77yJXHJcblx0aWYgKHRyaW1tZWQuZW5kc1dpdGgoJzsnKSkge1xyXG5cdFx0cmV0dXJuIHRyaW1tZWQuc2xpY2UoMCwgLTEpO1xyXG5cdH1cclxuXHRyZXR1cm4gdHJpbW1lZDtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBpc0pTT05QYXJzYWJsZSA9IChzdHI6IGFueSkgPT4ge1xyXG5cdHRyeSB7XHJcblx0XHRKU09OLnBhcnNlKHN0cik7XHJcblx0XHRyZXR1cm4gdHJ1ZTtcclxuXHR9IGNhdGNoIChlKSB7XHJcblx0XHQvLyBsZXQgc3RySXNPYmogPSAvXFx7W159XSpcXH18XFxbW15cXF1dKlxcXS8udGVzdChzdHIpXHJcblx0XHQvLyBpZihzdHJJc09iail7XHJcblx0XHQvLyBcdGNvbnNvbGUuZXJyb3IoJ0pTT04g6Kej5p6Q5aSx6LSlOicsIGUsICdcXG7ljp/lp4vlrZfnrKbkuLI6Jywgc3RyKVxyXG5cdFx0Ly8gfVxyXG5cdFx0cmV0dXJuIGZhbHNlO1xyXG5cdH1cclxufTtcclxuXHJcbi8qKlxyXG4gKiDmoLnmja7mjIflrprnmoTplK7mlbDnu4Tov4fmu6Tlr7nosaFcclxuICogQHBhcmFtIHtPYmplY3R9IG9iaiAtIOimgei/h+a7pOeahOWOn+Wni+WvueixoVxyXG4gKiBAcGFyYW0ge0FycmF5fSBrZXlzIC0g6ZyA6KaB5L+d55WZ55qE6ZSu5pWw57uEXHJcbiAqIEByZXR1cm5zIHtPYmplY3R9IOi/h+a7pOWQjueahOaWsOWvueixoVxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IGZpbHRlck9iamVjdEJ5S2V5cyA9IChvYmo6IGFueSwga2V5czogc3RyaW5nW10pID0+IHtcclxuXHQvLyDlj4LmlbDmoKHpqoxcclxuXHRpZiAodHlwZW9mIG9iaiAhPT0gJ29iamVjdCcgfHwgb2JqID09PSBudWxsIHx8IEFycmF5LmlzQXJyYXkob2JqKSkge1xyXG5cdFx0dGhyb3cgbmV3IFR5cGVFcnJvcign56ys5LiA5Liq5Y+C5pWw5b+F6aG75piv5pmu6YCa5a+56LGhJyk7XHJcblx0fVxyXG5cclxuXHRpZiAoIUFycmF5LmlzQXJyYXkoa2V5cykpIHtcclxuXHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJ+esrOS6jOS4quWPguaVsOW/hemhu+aYr+aVsOe7hCcpO1xyXG5cdH1cclxuXHJcblx0Ly8g5L2/55SocmVkdWNl5Yib5bu65paw5a+56LGhXHJcblx0cmV0dXJuIGtleXMucmVkdWNlKChhY2M6IGFueSwga2V5OiBzdHJpbmcpID0+IHtcclxuXHRcdC8vIOWPquacieW9k+WOn+WvueixoeacieivpeWxnuaAp+aXtuaJjea3u+WKoOWIsOaWsOWvueixoVxyXG5cdFx0aWYgKGtleSBpbiBvYmopIHtcclxuXHRcdFx0YWNjW2tleV0gPSBvYmpba2V5XTtcclxuXHRcdH1cclxuXHRcdHJldHVybiBhY2M7XHJcblx0fSwge30pO1xyXG59O1xyXG4iXX0=
150
+ /**
151
+ * 自定义函数去除空字符串
152
+ * @param act
153
+ * @returns
154
+ */
155
+ export const convertAct = (act) => {
156
+ let actions = parseFunctions(act, this);
157
+ actions.forEach((v) => {
158
+ if (v.hasOwnProperty('btnHidden') && typeof v.btnHidden != 'function') {
159
+ delete v.btnHidden;
160
+ }
161
+ if (v.hasOwnProperty('btnDisabled') && typeof v.btnDisabled != 'function') {
162
+ delete v.btnDisabled;
163
+ }
164
+ if (v.hasOwnProperty('onClick') && typeof v.onClick != 'function') {
165
+ delete v.onClick;
166
+ }
167
+ });
168
+ return actions;
169
+ };
170
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbW0tZWxlbWVudC11aS9zcmMvbGliL3NoYXJlL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFakMsTUFBTSxDQUFDLElBQUksWUFBWSxHQUFHLENBQUMsR0FBVyxFQUFFLEVBQUUsQ0FDekMsR0FBRztLQUNELE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUMsV0FBVztLQUM5QixPQUFPLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLENBQUMsV0FBVztLQUMvQyxXQUFXLEVBQUUsQ0FBQyxPQUFPO0tBQ3JCLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxRQUFRO0tBQ3JCLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztLQUNsRSxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7QUFFWixNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxHQUFHLEVBQUU7SUFDcEMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLGVBQWU7SUFDMUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMs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UmVwbGF5LCBwaXBlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCAqIGFzIHRzIGZyb20gJ3R5cGVzY3JpcHQnO1xyXG5cclxuZXhwb3J0IGxldCB0b1Bhc2NhbENhc2UgPSAoc3RyOiBzdHJpbmcpID0+XHJcblx0c3RyXHJcblx0XHQucmVwbGFjZSgvXy9nLCAnICcpIC8vIOS4i+WIkue6v+abv+aNouS4uuepuuagvFxyXG5cdFx0LnJlcGxhY2UoLyhbYS16XSkoW0EtWl0pL2csICckMSAkMicpIC8vIOWwj+mpvOWzsOWIhuWJsuS4uuWNleivjVxyXG5cdFx0LnRvTG93ZXJDYXNlKCkgLy8g6L2s5Li65bCP5YaZXHJcblx0XHQuc3BsaXQoL1xccysvKSAvLyDmjInnqbrmoLzliIblibJcclxuXHRcdC5tYXAoKHdvcmQpID0+ICh3b3JkID8gd29yZFswXS50b1VwcGVyQ2FzZSgpICsgd29yZC5zbGljZSgxKSA6ICcnKSlcclxuXHRcdC5qb2luKCcnKTtcclxuXHJcbmV4cG9ydCBjb25zdCBnZW5lcmF0ZVVuaXF1ZUlkID0gKCkgPT4ge1xyXG5cdGNvbnN0IHRpbWVzdGFtcCA9IERhdGUubm93KCkudG9TdHJpbmcoMzYpOyAvLyDml7bpl7TmiLPovawzNui/m+WItue8qeefremVv+W6plxyXG5cdGNvbnN0IHJhbmRvbSA9IE1hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnN1YnN0cmluZygyLCA0KTsgLy8g6ZqP5py66YOo5YiGXHJcblx0cmV0dXJuIGAke3RpbWVzdGFtcH0ke3JhbmRvbX1gO1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IGNyZWF0ZUNpcmN1bGFySXRlcmF0b3IgPSAoYXJyYXk6IGFueVtdKSA9PiB7XHJcblx0bGV0IGluZGV4ID0gLTE7XHJcblx0cmV0dXJuIHtcclxuXHRcdG5leHQ6ICgpID0+IHtcclxuXHRcdFx0aW5kZXgrKztcclxuXHRcdFx0cmV0dXJuIGFycmF5W2luZGV4ICUgYXJyYXkubGVuZ3RoXTtcclxuXHRcdH0sXHJcblx0XHRwcmV2OiAoKSA9PiB7XHJcblx0XHRcdGluZGV4LS07XHJcblx0XHRcdHJldHVybiBhcnJheVsoKGluZGV4ICUgYXJyYXkubGVuZ3RoKSArIGFycmF5Lmxlbmd0aCkgJSBhcnJheS5sZW5ndGhdO1xyXG5cdFx0fSxcclxuXHR9O1xyXG59O1xyXG5cclxuZXhwb3J0IGNvbnN0IHBhcnNlRnVuY3Rpb25zID0gKG9iajogYW55LCBfdGhpczogYW55KTogYW55ID0+IHtcclxuXHRpZiAodHlwZW9mIG9iaiA9PT0gJ3N0cmluZycpIHtcclxuXHRcdC8vIOWwneivleajgOa1i+aYr+WQpuaYr+WHveaVsOWtl+espuS4slxyXG5cdFx0aWYgKChvYmouaW5jbHVkZXMoJz0+JykgfHwgb2JqLmluY2x1ZGVzKCdQcm9taXNlJykpICYmICFpc0pTT05QYXJzYWJsZShvYmopKSB7XHJcblx0XHRcdGNvbnN0IG8gPSBjb21waWxlVHNUb0pzKG9iaik7XHJcblx0XHRcdC8vIGNvbnNvbGUubG9nKCfop6PmnpDlh73mlbA6Jywgb2JqKTtcclxuXHRcdFx0dHJ5IHtcclxuXHRcdFx0XHRjb25zdCBzYW5kYm94ID0ge1xyXG5cdFx0XHRcdFx0T2JzZXJ2YWJsZSxcclxuXHRcdFx0XHRcdG9mLFxyXG5cdFx0XHRcdFx0c2hhcmVSZXBsYXksXHJcblx0XHRcdFx0XHRwaXBlLFxyXG5cdFx0XHRcdFx0UHJvbWlzZSwgLy8g5re75YqgIFByb21pc2Ug5YiwIHNhbmRib3hcclxuXHRcdFx0XHRcdGFzeW5jOiB0cnVlLCAvLyDmoIforrDmlK/mjIHlvILmraVcclxuXHRcdFx0XHRcdHJlc29sdmU6IFByb21pc2UucmVzb2x2ZS5iaW5kKFByb21pc2UpLFxyXG5cdFx0XHRcdFx0cmVqZWN0OiBQcm9taXNlLnJlamVjdC5iaW5kKFByb21pc2UpLFxyXG5cdFx0XHRcdH07XHJcblxyXG5cdFx0XHRcdC8vIOWkhOeQhiBQcm9taXNlIOaehOmAoOWHveaVsOeahOaDheWGtVxyXG5cdFx0XHRcdGlmIChvYmouaW5jbHVkZXMoJ25ldyBQcm9taXNlJykpIHtcclxuXHRcdFx0XHRcdHJldHVybiBuZXcgRnVuY3Rpb24oXHJcblx0XHRcdFx0XHRcdCdzYW5kYm94JyxcclxuXHRcdFx0XHRcdFx0YFxyXG5cdFx0XHRcdFx0XHRcdHdpdGgoc2FuZGJveCkge1xyXG5cdFx0XHRcdFx0XHRcdFx0cmV0dXJuICR7b307XHJcblx0XHRcdFx0XHRcdFx0fVxyXG5cdFx0XHRcdFx0XHRgLFxyXG5cdFx0XHRcdFx0KS5iaW5kKF90aGlzKShzYW5kYm94KTtcclxuXHRcdFx0XHR9XHJcblxyXG5cdFx0XHRcdC8vIOWkhOeQhuaZrumAmuWHveaVsOWSjOeureWktOWHveaVsFxyXG5cdFx0XHRcdHJldHVybiBuZXcgRnVuY3Rpb24oXHJcblx0XHRcdFx0XHQnc2FuZGJveCcsXHJcblx0XHRcdFx0XHRgXHJcblx0XHRcdFx0XHRcdHdpdGgoc2FuZGJveCkge1xyXG5cdFx0XHRcdFx0XHRcdHJldHVybiAoJHtvfSk7XHJcblx0XHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGAsXHJcblx0XHRcdFx0KS5iaW5kKF90aGlzKShzYW5kYm94KTtcclxuXHRcdFx0fSBjYXRjaCAoZSkge1xyXG5cdFx0XHRcdGNvbnNvbGUuZXJyb3IoJ+WHveaVsOino+aekOWksei0pTonLCBlLCAnXFxu5Y6f5aeL5a2X56ym5LiyOicsIG9iaik7XHJcblx0XHRcdFx0cmV0dXJuIG9iajtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0aWYgKGlzSlNPTlBhcnNhYmxlKG9iaikpIHtcclxuXHRcdFx0bGV0IGpzb24gPSBKU09OLnBhcnNlKG9iaik7XHJcblx0XHRcdHJldHVybiBwYXJzZUZ1bmN0aW9ucyhqc29uLCBfdGhpcyk7XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gb2JqO1xyXG5cdH1cclxuXHRpZiAoQXJyYXkuaXNBcnJheShvYmopKSB7XHJcblx0XHRyZXR1cm4gb2JqLm1hcCgoaXRlbTogYW55KSA9PiBwYXJzZUZ1bmN0aW9ucyhpdGVtLCBfdGhpcykpO1xyXG5cdH1cclxuXHRpZiAodHlwZW9mIG9iaiA9PT0gJ29iamVjdCcgJiYgb2JqICE9PSBudWxsKSB7XHJcblx0XHRjb25zdCByZXN1bHQ6IGFueSA9IHt9O1xyXG5cdFx0Zm9yIChjb25zdCBrZXkgaW4gb2JqKSB7XHJcblx0XHRcdGlmIChvYmouaGFzT3duUHJvcGVydHkoa2V5KSkge1xyXG5cdFx0XHRcdHJlc3VsdFtrZXldID0gcGFyc2VGdW5jdGlvbnMob2JqW2tleV0sIF90aGlzKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdFx0cmV0dXJuIHJlc3VsdDtcclxuXHR9XHJcblxyXG5cdHJldHVybiBvYmo7XHJcbn07XHJcblxyXG4vLyDovoXliqnlh73mlbDvvJrmo4Dmn6XmmK/lkKbljIXlkKsgUHJvbWlzZSDmnoTpgKDlh73mlbBcclxuY29uc3QgY29udGFpbnNQcm9taXNlQ29uc3RydWN0b3IgPSAoc3RyOiBzdHJpbmcpOiBib29sZWFuID0+IHtcclxuXHRyZXR1cm4gL25ld1xccytQcm9taXNlLy50ZXN0KHN0cik7XHJcbn07XHJcblxyXG4vLyDkv67mlLkgY29tcGlsZVRzVG9KcyDlh73mlbDku6Xmm7Tlpb3lnLDlpITnkIYgUHJvbWlzZVxyXG5leHBvcnQgY29uc3QgY29tcGlsZVRzVG9KcyA9ICh0c0NvZGU6IHN0cmluZyk6IHN0cmluZyA9PiB7XHJcblx0Ly8g5aaC5p6c5pivIFByb21pc2Ug5p6E6YCg5Ye95pWw77yM5LiN6ZyA6KaB6aKd5aSW5aSE55CGXHJcblx0aWYgKGNvbnRhaW5zUHJvbWlzZUNvbnN0cnVjdG9yKHRzQ29kZSkpIHtcclxuXHRcdHJldHVybiB0c0NvZGU7XHJcblx0fVxyXG5cclxuXHRjb25zdCByZXN1bHQgPSB0cy50cmFuc3BpbGVNb2R1bGUodHNDb2RlLCB7XHJcblx0XHRjb21waWxlck9wdGlvbnM6IHtcclxuXHRcdFx0bW9kdWxlOiB0cy5Nb2R1bGVLaW5kLkNvbW1vbkpTLFxyXG5cdFx0XHR0YXJnZXQ6IHRzLlNjcmlwdFRhcmdldC5FUzIwMTUsXHJcblx0XHRcdC8vIOWQr+eUqOW8guatpeWHveaVsOaUr+aMgVxyXG5cdFx0XHRsaWI6IFsnZXMyMDE1JywgJ2VzMjAxNS5wcm9taXNlJywgJ2RvbSddLFxyXG5cdFx0fSxcclxuXHR9KTtcclxuXHRyZXR1cm4gcmVtb3ZlVHJhaWxpbmdTZW1pY29sb24ocmVzdWx0Lm91dHB1dFRleHQpO1xyXG59O1xyXG5cclxuY29uc3QgcmVtb3ZlVHJhaWxpbmdTZW1pY29sb24gPSAoZnVuY1N0cjogc3RyaW5nKTogc3RyaW5nID0+IHtcclxuXHQvLyDlhYjljrvpmaTliY3lkI7nqbrnmb1cclxuXHRjb25zdCB0cmltbWVkID0gZnVuY1N0ci50cmltKCk7XHJcblx0Ly8g5Y+q5pu/5o2i5pyA5ZCO5LiA5Liq5YiG5Y+377yI5aaC5p6c5a6D5LiN5Zyo6Iqx5ous5Y+35YaF77yJXHJcblx0aWYgKHRyaW1tZWQuZW5kc1dpdGgoJzsnKSkge1xyXG5cdFx0cmV0dXJuIHRyaW1tZWQuc2xpY2UoMCwgLTEpO1xyXG5cdH1cclxuXHRyZXR1cm4gdHJpbW1lZDtcclxufTtcclxuXHJcbmV4cG9ydCBjb25zdCBpc0pTT05QYXJzYWJsZSA9IChzdHI6IGFueSkgPT4ge1xyXG5cdHRyeSB7XHJcblx0XHRKU09OLnBhcnNlKHN0cik7XHJcblx0XHRyZXR1cm4gdHJ1ZTtcclxuXHR9IGNhdGNoIChlKSB7XHJcblx0XHQvLyBsZXQgc3RySXNPYmogPSAvXFx7W159XSpcXH18XFxbW15cXF1dKlxcXS8udGVzdChzdHIpXHJcblx0XHQvLyBpZihzdHJJc09iail7XHJcblx0XHQvLyBcdGNvbnNvbGUuZXJyb3IoJ0pTT04g6Kej5p6Q5aSx6LSlOicsIGUsICdcXG7ljp/lp4vlrZfnrKbkuLI6Jywgc3RyKVxyXG5cdFx0Ly8gfVxyXG5cdFx0cmV0dXJuIGZhbHNlO1xyXG5cdH1cclxufTtcclxuXHJcbi8qKlxyXG4gKiDmoLnmja7mjIflrprnmoTplK7mlbDnu4Tov4fmu6Tlr7nosaFcclxuICogQHBhcmFtIHtPYmplY3R9IG9iaiAtIOimgei/h+a7pOeahOWOn+Wni+WvueixoVxyXG4gKiBAcGFyYW0ge0FycmF5fSBrZXlzIC0g6ZyA6KaB5L+d55WZ55qE6ZSu5pWw57uEXHJcbiAqIEByZXR1cm5zIHtPYmplY3R9IOi/h+a7pOWQjueahOaWsOWvueixoVxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IGZpbHRlck9iamVjdEJ5S2V5cyA9IChvYmo6IGFueSwga2V5czogc3RyaW5nW10pID0+IHtcclxuXHQvLyDlj4LmlbDmoKHpqoxcclxuXHRpZiAodHlwZW9mIG9iaiAhPT0gJ29iamVjdCcgfHwgb2JqID09PSBudWxsIHx8IEFycmF5LmlzQXJyYXkob2JqKSkge1xyXG5cdFx0dGhyb3cgbmV3IFR5cGVFcnJvcign56ys5LiA5Liq5Y+C5pWw5b+F6aG75piv5pmu6YCa5a+56LGhJyk7XHJcblx0fVxyXG5cclxuXHRpZiAoIUFycmF5LmlzQXJyYXkoa2V5cykpIHtcclxuXHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJ+esrOS6jOS4quWPguaVsOW/hemhu+aYr+aVsOe7hCcpO1xyXG5cdH1cclxuXHJcblx0Ly8g5L2/55SocmVkdWNl5Yib5bu65paw5a+56LGhXHJcblx0cmV0dXJuIGtleXMucmVkdWNlKChhY2M6IGFueSwga2V5OiBzdHJpbmcpID0+IHtcclxuXHRcdC8vIOWPquacieW9k+WOn+WvueixoeacieivpeWxnuaAp+aXtuaJjea3u+WKoOWIsOaWsOWvueixoVxyXG5cdFx0aWYgKGtleSBpbiBvYmopIHtcclxuXHRcdFx0YWNjW2tleV0gPSBvYmpba2V5XTtcclxuXHRcdH1cclxuXHRcdHJldHVybiBhY2M7XHJcblx0fSwge30pO1xyXG59O1xyXG4vKipcclxuICog6Ieq5a6a5LmJ5Ye95pWw5Y676Zmk56m65a2X56ym5LiyXHJcbiAqIEBwYXJhbSBhY3QgXHJcbiAqIEByZXR1cm5zIFxyXG4gKi9cclxuZXhwb3J0IGNvbnN0IGNvbnZlcnRBY3QgPSAoYWN0OmFueSkgPT57XHJcblx0bGV0IGFjdGlvbnMgPSBwYXJzZUZ1bmN0aW9ucyhhY3QsIHRoaXMpXHJcblx0YWN0aW9ucy5mb3JFYWNoKCh2OmFueSkgPT4ge1xyXG5cdFx0aWYodi5oYXNPd25Qcm9wZXJ0eSgnYnRuSGlkZGVuJykgJiZ0eXBlb2Ygdi5idG5IaWRkZW4gIT0gJ2Z1bmN0aW9uJyl7XHJcblx0XHRcdGRlbGV0ZSB2LmJ0bkhpZGRlblxyXG5cdFx0fVxyXG5cdFx0aWYodi5oYXNPd25Qcm9wZXJ0eSgnYnRuRGlzYWJsZWQnKSAmJnR5cGVvZiB2LmJ0bkRpc2FibGVkICE9ICdmdW5jdGlvbicpe1xyXG5cdFx0XHRkZWxldGUgdi5idG5EaXNhYmxlZFxyXG5cdFx0fVxyXG5cdFx0aWYodi5oYXNPd25Qcm9wZXJ0eSgnb25DbGljaycpICYmdHlwZW9mIHYub25DbGljayAhPSAnZnVuY3Rpb24nKXtcclxuXHRcdFx0ZGVsZXRlIHYub25DbGlja1xyXG5cdFx0fVxyXG5cdH0pXHJcblx0cmV0dXJuIGFjdGlvbnM7XHJcbn0iXX0=
@@ -3463,6 +3463,26 @@ const filterObjectByKeys = (obj, keys) => {
3463
3463
  return acc;
3464
3464
  }, {});
3465
3465
  };
3466
+ /**
3467
+ * 自定义函数去除空字符串
3468
+ * @param act
3469
+ * @returns
3470
+ */
3471
+ const convertAct = (act) => {
3472
+ let actions = parseFunctions(act, this);
3473
+ actions.forEach((v) => {
3474
+ if (v.hasOwnProperty('btnHidden') && typeof v.btnHidden != 'function') {
3475
+ delete v.btnHidden;
3476
+ }
3477
+ if (v.hasOwnProperty('btnDisabled') && typeof v.btnDisabled != 'function') {
3478
+ delete v.btnDisabled;
3479
+ }
3480
+ if (v.hasOwnProperty('onClick') && typeof v.onClick != 'function') {
3481
+ delete v.onClick;
3482
+ }
3483
+ });
3484
+ return actions;
3485
+ };
3466
3486
 
3467
3487
  class FormComponent {
3468
3488
  onResize() {
@@ -3716,15 +3736,9 @@ class CrumbActionComponent extends AmComponent {
3716
3736
  // 权限等级
3717
3737
  this.authLevel = input(-1);
3718
3738
  this.cancelEvent = output();
3719
- this.actionList = input([
3720
- {
3721
- label: 'app.tableAcImport',
3722
- type: 'import',
3723
- icon: 'pi pi-upload',
3724
- level: 2,
3725
- },
3726
- ]);
3739
+ this.actionList = input([]);
3727
3740
  this.actionEvent = output();
3741
+ this.data = input();
3728
3742
  this.showAct = false;
3729
3743
  this.listOpItems = [
3730
3744
  {
@@ -3825,11 +3839,11 @@ class CrumbActionComponent extends AmComponent {
3825
3839
  this.actOp && this.actOp.toggle(event);
3826
3840
  }
3827
3841
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CrumbActionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3828
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CrumbActionComponent, isStandalone: true, selector: "app-crumb-action", inputs: { isShowCog: { classPropertyName: "isShowCog", publicName: "isShowCog", isSignal: true, isRequired: false, transformFunction: null }, addVisible: { classPropertyName: "addVisible", publicName: "addVisible", isSignal: true, isRequired: false, transformFunction: null }, newUrl: { classPropertyName: "newUrl", publicName: "newUrl", isSignal: true, isRequired: false, transformFunction: null }, onExport: { classPropertyName: "onExport", publicName: "onExport", isSignal: true, isRequired: false, transformFunction: null }, outlined: { classPropertyName: "outlined", publicName: "outlined", isSignal: true, isRequired: false, transformFunction: null }, isList: { classPropertyName: "isList", publicName: "isList", isSignal: true, isRequired: false, transformFunction: null }, authLevel: { classPropertyName: "authLevel", publicName: "authLevel", isSignal: true, isRequired: false, transformFunction: null }, actionList: { classPropertyName: "actionList", publicName: "actionList", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { saveEvent: "saveEvent", cancelEvent: "cancelEvent", actionEvent: "actionEvent" }, host: { listeners: { "window:resize": "resize($event)" } }, queries: [{ propertyName: "newBtnTemplateRef", first: true, predicate: ["newBtn"] }], viewQueries: [{ propertyName: "op", first: true, predicate: ["op"], descendants: true }, { propertyName: "listOp", first: true, predicate: ["listOp"], descendants: true }, { propertyName: "actOp", first: true, predicate: ["actOp"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"flex items-center gap-1\">\r\n <div class=\"left-btn flex gap-1\">\r\n <!-- TODO \u6743\u9650\u6570\u636E\u63A5\u5165 -->\r\n @if(!newBtnTemplateRef){\r\n @if(this.authLevel() > 2 && addVisible()){\r\n <p-button (click)=\"goNew()\" [outlined]=\"outlined()\">{{'app.create' | translate}}</p-button>\r\n }\r\n } @else {\r\n <ng-container *ngTemplateOutlet=\"newBtnTemplateRef\"></ng-container>\r\n }\r\n </div>\r\n @if(crumbList().length > 0){\r\n <div class=\"flex flex-col\">\r\n <div class=\"hidden md:flex\">\r\n @if(crumbList().length <= 2){\r\n @for(fchild of crumbList(); track fchild.url){\r\n <div class=\"crumb-title cursor-pointer text-[12px] max-w-[120px] overflow-hidden whitespace-nowrap text-ellipsis\" (click)=\"back(fchild)\">\r\n @if(fchild.i18nKey!= ''){\r\n {{ fchild!.i18nKey | translate}}\r\n } @else {\r\n {{fchild.title}}\r\n }\r\n </div>\r\n }\r\n } @else {\r\n <div class=\"flex\">\r\n <div class=\"crumb-title cursor-pointer select-crumb\">\r\n <div class=\"w-[17px] h-[17px] flex items-center font-bold text-[13px]\" (click)=\"toggle($event)\">\r\n ...\r\n </div>\r\n <p-tieredmenu #op [model]=\"crumbFront\" [popup]=\"true\" [style]=\"{position:'absolute'}\">\r\n <ng-template #item let-item let-hasSubmenu=\"hasSubmenu\">\r\n <a pRipple class=\"flex items-center p-tieredmenu-item-link\">\r\n <span class=\"ml-2 w-full\" (click)=\"back(item)\">\r\n @if(item.i18nKey!= ''){\r\n {{ item!.i18nKey | translate}}\r\n } @else {\r\n {{item.title}}\r\n }\r\n </span>\r\n </a>\r\n </ng-template>\r\n </p-tieredmenu>\r\n </div>\r\n @for(item of crumbEnd;track item.url){\r\n <div class=\"crumb-title cursor-pointer text-[12px] max-w-[120px] overflow-hidden whitespace-nowrap text-ellipsis\" (click)=\"back(item)\">\r\n @if(item.i18nKey!= ''){\r\n {{ item!.i18nKey | translate}}\r\n } @else {\r\n {{item.title}}\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n \r\n </div>\r\n <div class=\"min-w-0 text-text-color text-[12px] title-action\">\r\n <span class=\"hidden md:inline-block whitespace-nowrap\">{{isNew? 'New':crumbTitle().title}}</span>\r\n @if(isShowCog()){\r\n @if(isList()){\r\n <p-button variant=\"text\" severity=\"secondary\" icon=\"pi pi-cog\" aria-label=\"\u64CD\u4F5C\" (onClick)=\"toggleListOp($event)\"/>\r\n @if(listOpItems.length > 0){\r\n <p-tieredmenu #listOp [model]=\"listOpItems\" [popup]=\"true\" [style]=\"{position:'absolute'}\">\r\n <ng-template #item let-item let-hasSubmenu=\"hasSubmenu\">\r\n <a pRipple class=\"flex items-center p-tieredmenu-item-link\" (click)=\"listAct(item.type)\">\r\n <span [class]=\"item.icon\" class=\"p-tieredmenu-item-icon\"></span>\r\n <span class=\"ml-2\">{{ item.label | translate }}</span>\r\n <!-- <p-badge *ngIf=\"item.badge\" class=\"ml-auto\" [value]=\"item.badge\" /> -->\r\n <span *ngIf=\"item.shortcut\" class=\"ml-auto border border-surface rounded bg-emphasis text-muted-color text-xs p-1\">\r\n {{ item.shortcut }}\r\n </span>\r\n <i *ngIf=\"hasSubmenu\" class=\"pi pi-angle-right ml-auto\"></i>\r\n </a>\r\n </ng-template>\r\n </p-tieredmenu>\r\n }\r\n } @else {\r\n <p-button variant=\"text\" severity=\"secondary\" icon=\"pi pi-cog\" aria-label=\"\u64CD\u4F5C\" (onClick)=\"toggleAct($event)\"/>\r\n @if(actionList().length > 0 && showAct){\r\n <p-tieredmenu #actOp [model]=\"actionList()\" [popup]=\"true\" [style]=\"{position:'absolute'}\">\r\n <ng-template #item let-item let-hasSubmenu=\"hasSubmenu\">\r\n <a pRipple class=\"flex items-center p-tieredmenu-item-link\" (click)=\"actEvent(item)\">\r\n <!-- <span [class]=\"item.icon\" class=\"p-tieredmenu-item-icon\"></span> -->\r\n <span class=\"ml-2\">{{ item.label | translate }}</span>\r\n <!-- <p-badge *ngIf=\"item.badge\" class=\"ml-auto\" [value]=\"item.badge\" /> -->\r\n <span *ngIf=\"item.shortcut\" class=\"ml-auto border border-surface rounded bg-emphasis text-muted-color text-xs p-1\">\r\n {{ item.shortcut }}\r\n </span>\r\n <i *ngIf=\"hasSubmenu\" class=\"pi pi-angle-right ml-auto\"></i>\r\n </a>\r\n </ng-template>\r\n </p-tieredmenu>\r\n }\r\n }\r\n }\r\n @if(this.authLevel() > 2 && !isList()){\r\n <p-button \r\n variant=\"text\" \r\n severity=\"secondary\" \r\n icon=\"pi pi-cloud-upload\" \r\n [loading]=\"isLoading()\"\r\n aria-label=\"\u624B\u52A8\u4FDD\u5B58\" \r\n class=\"p-0\"\r\n (click)=\"handleSave()\">\r\n </p-button>\r\n }\r\n <!-- @if(crumbList().length >= 2){ -->\r\n <p-button \r\n variant=\"text\" \r\n severity=\"secondary\" \r\n icon=\"pi pi-times\" \r\n aria-label=\"\u5173\u95ED\" \r\n class=\"p-0\"\r\n (click)=\"closeNew()\">\r\n </p-button>\r\n <!-- } -->\r\n </div>\r\n </div>\r\n } @else {\r\n <!-- \u521D\u59CB\u8282\u70B9 -->\r\n <div class=\"min-w-0 flex items-center text-[14px] text-text-color\">\r\n <span class=\"hidden md:inline-block max-w-[120px] overflow-hidden whitespace-nowrap text-ellipsis\">\r\n @if(crumbTitle().i18nKey != ''){\r\n {{crumbTitle().i18nKey | translate}}\r\n } @else {\r\n {{crumbTitle().title}}\r\n }\r\n </span>\r\n @if(isShowCog()){\r\n <p-button \r\n variant=\"text\"\r\n severity=\"secondary\" \r\n icon=\"pi pi-cog\" \r\n aria-label=\"\u64CD\u4F5C\" \r\n (onClick)=\"toggleListOp($event)\"/>\r\n @if(listOpItems.length > 0){\r\n <p-tieredmenu #listOp [model]=\"listOpItems\" [popup]=\"true\" [style]=\"{position:'absolute'}\">\r\n <ng-template #item let-item let-hasSubmenu=\"hasSubmenu\">\r\n <a pRipple class=\"flex items-center p-tieredmenu-item-link\" (click)=\"listAct(item.type)\">\r\n <span [class]=\"item.icon\" class=\"p-tieredmenu-item-icon\"></span>\r\n <span class=\"ml-2\">{{ item.label | translate }}</span>\r\n <!-- <p-badge *ngIf=\"item.badge\" class=\"ml-auto\" [value]=\"item.badge\" /> -->\r\n <span *ngIf=\"item.shortcut\" class=\"ml-auto border border-surface rounded bg-emphasis text-muted-color text-xs p-1\">\r\n {{ item.shortcut }}\r\n </span>\r\n <i *ngIf=\"hasSubmenu\" class=\"pi pi-angle-right ml-auto\"></i>\r\n </a>\r\n </ng-template>\r\n </p-tieredmenu>\r\n }\r\n \r\n }\r\n @if(!isList()){\r\n <p-button \r\n variant=\"text\" \r\n severity=\"secondary\" \r\n icon=\"pi pi-cloud-upload\" \r\n aria-label=\"\u624B\u52A8\u4FDD\u5B58\" \r\n class=\"p-0\"\r\n (click)=\"handleSave()\">\r\n </p-button>\r\n <p-button \r\n variant=\"text\" \r\n severity=\"secondary\" \r\n icon=\"pi pi-times\" \r\n aria-label=\"\u5173\u95ED\" \r\n class=\"p-0\"\r\n (click)=\"closeNew()\">\r\n </p-button>\r\n }\r\n </div>\r\n }\r\n \r\n</div>", styles: [":host ::ng-deep .p-disabled,:host ::ng-deep .p-component:disabled{opacity:1}:host ::ng-deep .p-inputtext{border-width:0;border-radius:0;box-shadow:none;background:#fff;padding:0}:host ::ng-deep .p-inputtext:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-inputtext:not(:disabled):hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-inputtext:not(:disabled).ng-hovered{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-inputtext:focus{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .ng-hovered .p-autocomplete-input:not(.p-disabled){border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select-label{padding:0}:host ::ng-deep .p-select{border-width:0;border-radius:0;box-shadow:none;background:#fff}:host ::ng-deep .p-select .p-select-dropdown{display:none}:host ::ng-deep .p-select .p-select-clear-icon{display:none}:host ::ng-deep .p-select:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-select-open{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select-open .p-select-dropdown{display:flex}:host ::ng-deep .p-select-open .p-select-clear-icon{display:flex}:host ::ng-deep .p-select:hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select:hover .p-select-dropdown{display:flex}:host ::ng-deep .p-select:hover .p-select-clear-icon{display:flex}:host ::ng-deep .p-select.ng-hovered{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select.ng-hovered .p-select-dropdown{display:flex}:host ::ng-deep .p-select.ng-hovered .p-select-clear-icon{display:flex}:host ::ng-deep .p-multiselect-label{padding:0}:host ::ng-deep .p-multiselect{border-width:0;border-radius:0;background:#fff;box-shadow:none}:host ::ng-deep .p-multiselect .p-multiselect-dropdown{display:none}:host ::ng-deep .p-multiselect:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-multiselect-open{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect-open .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-multiselect:not(.p-disabled).p-focus{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect:not(.p-disabled).p-focus .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-multiselect:not(.p-disabled):hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect:not(.p-disabled):hover .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-multiselect:not(.p-disabled).ng-hovered{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect:not(.p-disabled).ng-hovered .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-textarea{border-radius:0;box-shadow:none;padding:0;background:#fff;resize:none}:host ::ng-deep .p-textarea:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border:1px solid var(--p-red-500)!important}:host ::ng-deep .p-textarea:not(:disabled):hover{border:1px solid var(--p-primary-color);resize:vertical}:host ::ng-deep .p-textarea:not(:disabled).ng-hovered{border:1px solid var(--p-primary-color);resize:vertical}:host ::ng-deep .p-textarea:focus{border:1px solid var(--p-primary-color);resize:vertical}:host ::ng-deep .p-treeselect-label{padding:0}:host ::ng-deep .p-treeselect{border-width:0;border-radius:0;box-shadow:none;background:#fff}:host ::ng-deep .p-treeselect .p-treeselect-dropdown{display:none}:host ::ng-deep .ng-invalid.ng-dirty>.p-treeselect{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-treeselect-open{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-treeselect-open .p-treeselect-dropdown{display:flex}:host ::ng-deep .p-treeselect:not(.p-disabled).p-focus{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-treeselect:not(.p-disabled).p-focus .p-treeselect-dropdown{display:flex}:host ::ng-deep .p-treeselect:not(.p-disabled):hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-treeselect:not(.p-disabled):hover .p-treeselect-dropdown{display:flex}:host ::ng-deep .ng-hovered>.p-treeselect:not(.p-disabled){border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .ng-hovered>.p-treeselect:not(.p-disabled) .p-treeselect-dropdown{display:flex}:host ::ng-deep .p-menubar{border-width:0;padding:0}:host ::ng-deep .p-menubar-submenu{z-index:3}:host ::ng-deep .p-fileupload-advanced{border-width:0;border-radius:0;background-color:#fff}:host ::ng-deep .p-fileupload-header{padding:0}:host ::ng-deep .p-fileupload-content{padding:0;display:block;border-width:0}:host ::ng-deep .p-inputnumber:not(.ng-valid).ng-dirty>.p-inputtext{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-inputnumber.ng-hovered:not(.p-disabled)>.p-inputtext{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .ng-hovered>.p-datepicker:not(.p-disabled) .p-inputtext{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .cm-editor{border:1px solid #cbd5e1}:host ::ng-deep .cm-editor.cm-focused{outline:none!important;border:1px solid var(--p-primary-color)}:host ::ng-deep .cm-editor:hover{border:1px solid var(--p-primary-color)}:host ::ng-deep .cm-editor.ng-hovered{border:1px solid var(--p-primary-color)}:host ::ng-deep .cm-gutters{background-color:#fff;border:\"none\"}:host ::ng-deep .cm-activeLineGutter{background-color:#fff}.crumb-title{color:var(--p-primary-color)}.crumb-title+.crumb-title{padding-left:.5rem}.crumb-title+.crumb-title:before{padding-right:.5rem;content:var(--breadcrumb-divider, \"/\")}:host::ng-deep .p-button-text.p-button-secondary{color:var(--p-surface-700)}:host::ng-deep .title-action .p-button{padding:0}:host::ng-deep .new-action .p-button{padding:0}:host::ng-deep .new-action .p-button button{padding-top:2px;height:100%;align-items:center}:host::ng-deep .select-crumb .p-button{padding:0;background-color:#fff;line-height:1}:host::ng-deep .select-crumb .p-button button{padding:0;width:17px;height:17px}:host::ng-deep .p-popover-content{padding:.5rem}\n"], dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i2$3.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "fluid", "buttonProps"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: TieredMenu, selector: "p-tieredMenu, p-tieredmenu, p-tiered-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "breakpoint", "autoZIndex", "baseZIndex", "autoDisplay", "showTransitionOptions", "hideTransitionOptions", "id", "ariaLabel", "ariaLabelledBy", "disabled", "tabindex"], outputs: ["onShow", "onHide"] }] }); }
3842
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: CrumbActionComponent, isStandalone: true, selector: "app-crumb-action", inputs: { isShowCog: { classPropertyName: "isShowCog", publicName: "isShowCog", isSignal: true, isRequired: false, transformFunction: null }, addVisible: { classPropertyName: "addVisible", publicName: "addVisible", isSignal: true, isRequired: false, transformFunction: null }, newUrl: { classPropertyName: "newUrl", publicName: "newUrl", isSignal: true, isRequired: false, transformFunction: null }, onExport: { classPropertyName: "onExport", publicName: "onExport", isSignal: true, isRequired: false, transformFunction: null }, outlined: { classPropertyName: "outlined", publicName: "outlined", isSignal: true, isRequired: false, transformFunction: null }, isList: { classPropertyName: "isList", publicName: "isList", isSignal: true, isRequired: false, transformFunction: null }, authLevel: { classPropertyName: "authLevel", publicName: "authLevel", isSignal: true, isRequired: false, transformFunction: null }, actionList: { classPropertyName: "actionList", publicName: "actionList", isSignal: true, isRequired: false, transformFunction: null }, data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { saveEvent: "saveEvent", cancelEvent: "cancelEvent", actionEvent: "actionEvent" }, host: { listeners: { "window:resize": "resize($event)" } }, queries: [{ propertyName: "newBtnTemplateRef", first: true, predicate: ["newBtn"] }], viewQueries: [{ propertyName: "op", first: true, predicate: ["op"], descendants: true }, { propertyName: "listOp", first: true, predicate: ["listOp"], descendants: true }, { propertyName: "actOp", first: true, predicate: ["actOp"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"flex items-center gap-1\">\r\n <div class=\"left-btn flex gap-1\">\r\n <!-- TODO \u6743\u9650\u6570\u636E\u63A5\u5165 -->\r\n @if(!newBtnTemplateRef){\r\n @if(this.authLevel() > 2 && addVisible()){\r\n <p-button (click)=\"goNew()\" [outlined]=\"outlined()\">{{'app.create' | translate}}</p-button>\r\n }\r\n } @else {\r\n <ng-container *ngTemplateOutlet=\"newBtnTemplateRef\"></ng-container>\r\n }\r\n </div>\r\n @if(crumbList().length > 0){\r\n <div class=\"flex flex-col\">\r\n <div class=\"hidden md:flex\">\r\n @if(crumbList().length <= 2){\r\n @for(fchild of crumbList(); track fchild.url){\r\n <div class=\"crumb-title cursor-pointer text-[12px] max-w-[120px] overflow-hidden whitespace-nowrap text-ellipsis\" (click)=\"back(fchild)\">\r\n @if(fchild.i18nKey!= ''){\r\n {{ fchild!.i18nKey | translate}}\r\n } @else {\r\n {{fchild.title}}\r\n }\r\n </div>\r\n }\r\n } @else {\r\n <div class=\"flex\">\r\n <div class=\"crumb-title cursor-pointer select-crumb\">\r\n <div class=\"w-[17px] h-[17px] flex items-center font-bold text-[13px]\" (click)=\"toggle($event)\">\r\n ...\r\n </div>\r\n <p-tieredmenu #op [model]=\"crumbFront\" [popup]=\"true\" [style]=\"{position:'absolute'}\">\r\n <ng-template #item let-item let-hasSubmenu=\"hasSubmenu\">\r\n <a pRipple class=\"flex items-center p-tieredmenu-item-link\">\r\n <span class=\"ml-2 w-full\" (click)=\"back(item)\">\r\n @if(item.i18nKey!= ''){\r\n {{ item!.i18nKey | translate}}\r\n } @else {\r\n {{item.title}}\r\n }\r\n </span>\r\n </a>\r\n </ng-template>\r\n </p-tieredmenu>\r\n </div>\r\n @for(item of crumbEnd;track item.url){\r\n <div class=\"crumb-title cursor-pointer text-[12px] max-w-[120px] overflow-hidden whitespace-nowrap text-ellipsis\" (click)=\"back(item)\">\r\n @if(item.i18nKey!= ''){\r\n {{ item!.i18nKey | translate}}\r\n } @else {\r\n {{item.title}}\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n \r\n </div>\r\n <div class=\"min-w-0 text-text-color text-[12px] title-action\">\r\n <span class=\"hidden md:inline-block whitespace-nowrap\">{{isNew? 'New':crumbTitle().title}}</span>\r\n @if(isShowCog()){\r\n @if(isList()){\r\n <p-button variant=\"text\" severity=\"secondary\" icon=\"pi pi-cog\" aria-label=\"\u64CD\u4F5C\" (onClick)=\"toggleListOp($event)\"/>\r\n @if(listOpItems.length > 0){\r\n <p-tieredmenu #listOp [model]=\"listOpItems\" [popup]=\"true\" [style]=\"{position:'absolute'}\">\r\n <ng-template #item let-item let-hasSubmenu=\"hasSubmenu\">\r\n <a pRipple class=\"flex items-center p-tieredmenu-item-link\" (click)=\"listAct(item.type)\">\r\n <span [class]=\"item.icon\" class=\"p-tieredmenu-item-icon\"></span>\r\n <span class=\"ml-2\">{{ item.label | translate }}</span>\r\n <!-- <p-badge *ngIf=\"item.badge\" class=\"ml-auto\" [value]=\"item.badge\" /> -->\r\n <span *ngIf=\"item.shortcut\" class=\"ml-auto border border-surface rounded bg-emphasis text-muted-color text-xs p-1\">\r\n {{ item.shortcut }}\r\n </span>\r\n <i *ngIf=\"hasSubmenu\" class=\"pi pi-angle-right ml-auto\"></i>\r\n </a>\r\n </ng-template>\r\n </p-tieredmenu>\r\n }\r\n } @else {\r\n <p-button variant=\"text\" severity=\"secondary\" icon=\"pi pi-cog\" aria-label=\"\u64CD\u4F5C\" (onClick)=\"toggleAct($event)\"/>\r\n @if(actionList().length > 0 && showAct){\r\n <p-tieredmenu #actOp [model]=\"actionList()\" [popup]=\"true\" [style]=\"{position:'absolute'}\">\r\n <ng-template #item let-item let-hasSubmenu=\"hasSubmenu\">\r\n <a pRipple \r\n class=\"flex items-center p-tieredmenu-item-link\"\r\n [class]=\"(item.auth || 0) > (authLevel() || 0) || !!item.btnHidden?.(data()) ? 'hidden' : 'block'\" \r\n (click)=\"actEvent(item)\">\r\n <span class=\"ml-2\">{{item.i18nKey ? (item.i18nKey | translate) : item.label}}</span>\r\n <span *ngIf=\"item.shortcut\" class=\"ml-auto border border-surface rounded bg-emphasis text-muted-color text-xs p-1\">\r\n {{ item.shortcut }}\r\n </span>\r\n <i *ngIf=\"hasSubmenu\" class=\"pi pi-angle-right ml-auto\"></i>\r\n </a>\r\n </ng-template>\r\n </p-tieredmenu>\r\n }\r\n }\r\n }\r\n @if(this.authLevel() > 2 && !isList()){\r\n <p-button \r\n variant=\"text\" \r\n severity=\"secondary\" \r\n icon=\"pi pi-cloud-upload\" \r\n [loading]=\"isLoading()\"\r\n aria-label=\"\u624B\u52A8\u4FDD\u5B58\" \r\n class=\"p-0\"\r\n (click)=\"handleSave()\">\r\n </p-button>\r\n }\r\n <!-- @if(crumbList().length >= 2){ -->\r\n <p-button \r\n variant=\"text\" \r\n severity=\"secondary\" \r\n icon=\"pi pi-times\" \r\n aria-label=\"\u5173\u95ED\" \r\n class=\"p-0\"\r\n (click)=\"closeNew()\">\r\n </p-button>\r\n <!-- } -->\r\n </div>\r\n </div>\r\n } @else {\r\n <!-- \u521D\u59CB\u8282\u70B9 -->\r\n <div class=\"min-w-0 flex items-center text-[14px] text-text-color\">\r\n <span class=\"hidden md:inline-block max-w-[120px] overflow-hidden whitespace-nowrap text-ellipsis\">\r\n @if(crumbTitle().i18nKey != ''){\r\n {{crumbTitle().i18nKey | translate}}\r\n } @else {\r\n {{crumbTitle().title}}\r\n }\r\n </span>\r\n @if(isShowCog()){\r\n <p-button \r\n variant=\"text\"\r\n severity=\"secondary\" \r\n icon=\"pi pi-cog\" \r\n aria-label=\"\u64CD\u4F5C\" \r\n (onClick)=\"toggleListOp($event)\"/>\r\n @if(listOpItems.length > 0){\r\n <p-tieredmenu #listOp [model]=\"listOpItems\" [popup]=\"true\" [style]=\"{position:'absolute'}\">\r\n <ng-template #item let-item let-hasSubmenu=\"hasSubmenu\">\r\n <a pRipple class=\"flex items-center p-tieredmenu-item-link\" (click)=\"listAct(item.type)\">\r\n <span [class]=\"item.icon\" class=\"p-tieredmenu-item-icon\"></span>\r\n <span class=\"ml-2\">{{ item.label | translate }}</span>\r\n <!-- <p-badge *ngIf=\"item.badge\" class=\"ml-auto\" [value]=\"item.badge\" /> -->\r\n <span *ngIf=\"item.shortcut\" class=\"ml-auto border border-surface rounded bg-emphasis text-muted-color text-xs p-1\">\r\n {{ item.shortcut }}\r\n </span>\r\n <i *ngIf=\"hasSubmenu\" class=\"pi pi-angle-right ml-auto\"></i>\r\n </a>\r\n </ng-template>\r\n </p-tieredmenu>\r\n }\r\n \r\n }\r\n @if(!isList()){\r\n <p-button \r\n variant=\"text\" \r\n severity=\"secondary\" \r\n icon=\"pi pi-cloud-upload\" \r\n aria-label=\"\u624B\u52A8\u4FDD\u5B58\" \r\n class=\"p-0\"\r\n (click)=\"handleSave()\">\r\n </p-button>\r\n <p-button \r\n variant=\"text\" \r\n severity=\"secondary\" \r\n icon=\"pi pi-times\" \r\n aria-label=\"\u5173\u95ED\" \r\n class=\"p-0\"\r\n (click)=\"closeNew()\">\r\n </p-button>\r\n }\r\n </div>\r\n }\r\n \r\n</div>", styles: [":host ::ng-deep .p-disabled,:host ::ng-deep .p-component:disabled{opacity:1}:host ::ng-deep .p-inputtext{border-width:0;border-radius:0;box-shadow:none;background:#fff;padding:0}:host ::ng-deep .p-inputtext:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-inputtext:not(:disabled):hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-inputtext:not(:disabled).ng-hovered{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-inputtext:focus{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .ng-hovered .p-autocomplete-input:not(.p-disabled){border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select-label{padding:0}:host ::ng-deep .p-select{border-width:0;border-radius:0;box-shadow:none;background:#fff}:host ::ng-deep .p-select .p-select-dropdown{display:none}:host ::ng-deep .p-select .p-select-clear-icon{display:none}:host ::ng-deep .p-select:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-select-open{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select-open .p-select-dropdown{display:flex}:host ::ng-deep .p-select-open .p-select-clear-icon{display:flex}:host ::ng-deep .p-select:hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select:hover .p-select-dropdown{display:flex}:host ::ng-deep .p-select:hover .p-select-clear-icon{display:flex}:host ::ng-deep .p-select.ng-hovered{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select.ng-hovered .p-select-dropdown{display:flex}:host ::ng-deep .p-select.ng-hovered .p-select-clear-icon{display:flex}:host ::ng-deep .p-multiselect-label{padding:0}:host ::ng-deep .p-multiselect{border-width:0;border-radius:0;background:#fff;box-shadow:none}:host ::ng-deep .p-multiselect .p-multiselect-dropdown{display:none}:host ::ng-deep .p-multiselect:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-multiselect-open{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect-open .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-multiselect:not(.p-disabled).p-focus{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect:not(.p-disabled).p-focus .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-multiselect:not(.p-disabled):hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect:not(.p-disabled):hover .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-multiselect:not(.p-disabled).ng-hovered{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect:not(.p-disabled).ng-hovered .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-textarea{border-radius:0;box-shadow:none;padding:0;background:#fff;resize:none}:host ::ng-deep .p-textarea:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border:1px solid var(--p-red-500)!important}:host ::ng-deep .p-textarea:not(:disabled):hover{border:1px solid var(--p-primary-color);resize:vertical}:host ::ng-deep .p-textarea:not(:disabled).ng-hovered{border:1px solid var(--p-primary-color);resize:vertical}:host ::ng-deep .p-textarea:focus{border:1px solid var(--p-primary-color);resize:vertical}:host ::ng-deep .p-treeselect-label{padding:0}:host ::ng-deep .p-treeselect{border-width:0;border-radius:0;box-shadow:none;background:#fff}:host ::ng-deep .p-treeselect .p-treeselect-dropdown{display:none}:host ::ng-deep .ng-invalid.ng-dirty>.p-treeselect{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-treeselect-open{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-treeselect-open .p-treeselect-dropdown{display:flex}:host ::ng-deep .p-treeselect:not(.p-disabled).p-focus{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-treeselect:not(.p-disabled).p-focus .p-treeselect-dropdown{display:flex}:host ::ng-deep .p-treeselect:not(.p-disabled):hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-treeselect:not(.p-disabled):hover .p-treeselect-dropdown{display:flex}:host ::ng-deep .ng-hovered>.p-treeselect:not(.p-disabled){border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .ng-hovered>.p-treeselect:not(.p-disabled) .p-treeselect-dropdown{display:flex}:host ::ng-deep .p-menubar{border-width:0;padding:0}:host ::ng-deep .p-menubar-submenu{z-index:3}:host ::ng-deep .p-fileupload-advanced{border-width:0;border-radius:0;background-color:#fff}:host ::ng-deep .p-fileupload-header{padding:0}:host ::ng-deep .p-fileupload-content{padding:0;display:block;border-width:0}:host ::ng-deep .p-inputnumber:not(.ng-valid).ng-dirty>.p-inputtext{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-inputnumber.ng-hovered:not(.p-disabled)>.p-inputtext{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .ng-hovered>.p-datepicker:not(.p-disabled) .p-inputtext{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .cm-editor{border:1px solid #cbd5e1}:host ::ng-deep .cm-editor.cm-focused{outline:none!important;border:1px solid var(--p-primary-color)}:host ::ng-deep .cm-editor:hover{border:1px solid var(--p-primary-color)}:host ::ng-deep .cm-editor.ng-hovered{border:1px solid var(--p-primary-color)}:host ::ng-deep .cm-gutters{background-color:#fff;border:\"none\"}:host ::ng-deep .cm-activeLineGutter{background-color:#fff}.crumb-title{color:var(--p-primary-color)}.crumb-title+.crumb-title{padding-left:.5rem}.crumb-title+.crumb-title:before{padding-right:.5rem;content:var(--breadcrumb-divider, \"/\")}:host::ng-deep .p-button-text.p-button-secondary{color:var(--p-surface-700)}:host::ng-deep .title-action .p-button{padding:0}:host::ng-deep .new-action .p-button{padding:0}:host::ng-deep .new-action .p-button button{padding-top:2px;height:100%;align-items:center}:host::ng-deep .select-crumb .p-button{padding:0;background-color:#fff;line-height:1}:host::ng-deep .select-crumb .p-button button{padding:0;width:17px;height:17px}:host::ng-deep .p-popover-content{padding:.5rem}\n"], dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i2$3.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "fluid", "buttonProps"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: TieredMenu, selector: "p-tieredMenu, p-tieredmenu, p-tiered-menu", inputs: ["model", "popup", "style", "styleClass", "appendTo", "breakpoint", "autoZIndex", "baseZIndex", "autoDisplay", "showTransitionOptions", "hideTransitionOptions", "id", "ariaLabel", "ariaLabelledBy", "disabled", "tabindex"], outputs: ["onShow", "onHide"] }] }); }
3829
3843
  }
3830
3844
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: CrumbActionComponent, decorators: [{
3831
3845
  type: Component,
3832
- args: [{ selector: 'app-crumb-action', standalone: true, imports: [ButtonModule, TranslatePipe, CommonModule, TieredMenu], template: "<div class=\"flex items-center gap-1\">\r\n <div class=\"left-btn flex gap-1\">\r\n <!-- TODO \u6743\u9650\u6570\u636E\u63A5\u5165 -->\r\n @if(!newBtnTemplateRef){\r\n @if(this.authLevel() > 2 && addVisible()){\r\n <p-button (click)=\"goNew()\" [outlined]=\"outlined()\">{{'app.create' | translate}}</p-button>\r\n }\r\n } @else {\r\n <ng-container *ngTemplateOutlet=\"newBtnTemplateRef\"></ng-container>\r\n }\r\n </div>\r\n @if(crumbList().length > 0){\r\n <div class=\"flex flex-col\">\r\n <div class=\"hidden md:flex\">\r\n @if(crumbList().length <= 2){\r\n @for(fchild of crumbList(); track fchild.url){\r\n <div class=\"crumb-title cursor-pointer text-[12px] max-w-[120px] overflow-hidden whitespace-nowrap text-ellipsis\" (click)=\"back(fchild)\">\r\n @if(fchild.i18nKey!= ''){\r\n {{ fchild!.i18nKey | translate}}\r\n } @else {\r\n {{fchild.title}}\r\n }\r\n </div>\r\n }\r\n } @else {\r\n <div class=\"flex\">\r\n <div class=\"crumb-title cursor-pointer select-crumb\">\r\n <div class=\"w-[17px] h-[17px] flex items-center font-bold text-[13px]\" (click)=\"toggle($event)\">\r\n ...\r\n </div>\r\n <p-tieredmenu #op [model]=\"crumbFront\" [popup]=\"true\" [style]=\"{position:'absolute'}\">\r\n <ng-template #item let-item let-hasSubmenu=\"hasSubmenu\">\r\n <a pRipple class=\"flex items-center p-tieredmenu-item-link\">\r\n <span class=\"ml-2 w-full\" (click)=\"back(item)\">\r\n @if(item.i18nKey!= ''){\r\n {{ item!.i18nKey | translate}}\r\n } @else {\r\n {{item.title}}\r\n }\r\n </span>\r\n </a>\r\n </ng-template>\r\n </p-tieredmenu>\r\n </div>\r\n @for(item of crumbEnd;track item.url){\r\n <div class=\"crumb-title cursor-pointer text-[12px] max-w-[120px] overflow-hidden whitespace-nowrap text-ellipsis\" (click)=\"back(item)\">\r\n @if(item.i18nKey!= ''){\r\n {{ item!.i18nKey | translate}}\r\n } @else {\r\n {{item.title}}\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n \r\n </div>\r\n <div class=\"min-w-0 text-text-color text-[12px] title-action\">\r\n <span class=\"hidden md:inline-block whitespace-nowrap\">{{isNew? 'New':crumbTitle().title}}</span>\r\n @if(isShowCog()){\r\n @if(isList()){\r\n <p-button variant=\"text\" severity=\"secondary\" icon=\"pi pi-cog\" aria-label=\"\u64CD\u4F5C\" (onClick)=\"toggleListOp($event)\"/>\r\n @if(listOpItems.length > 0){\r\n <p-tieredmenu #listOp [model]=\"listOpItems\" [popup]=\"true\" [style]=\"{position:'absolute'}\">\r\n <ng-template #item let-item let-hasSubmenu=\"hasSubmenu\">\r\n <a pRipple class=\"flex items-center p-tieredmenu-item-link\" (click)=\"listAct(item.type)\">\r\n <span [class]=\"item.icon\" class=\"p-tieredmenu-item-icon\"></span>\r\n <span class=\"ml-2\">{{ item.label | translate }}</span>\r\n <!-- <p-badge *ngIf=\"item.badge\" class=\"ml-auto\" [value]=\"item.badge\" /> -->\r\n <span *ngIf=\"item.shortcut\" class=\"ml-auto border border-surface rounded bg-emphasis text-muted-color text-xs p-1\">\r\n {{ item.shortcut }}\r\n </span>\r\n <i *ngIf=\"hasSubmenu\" class=\"pi pi-angle-right ml-auto\"></i>\r\n </a>\r\n </ng-template>\r\n </p-tieredmenu>\r\n }\r\n } @else {\r\n <p-button variant=\"text\" severity=\"secondary\" icon=\"pi pi-cog\" aria-label=\"\u64CD\u4F5C\" (onClick)=\"toggleAct($event)\"/>\r\n @if(actionList().length > 0 && showAct){\r\n <p-tieredmenu #actOp [model]=\"actionList()\" [popup]=\"true\" [style]=\"{position:'absolute'}\">\r\n <ng-template #item let-item let-hasSubmenu=\"hasSubmenu\">\r\n <a pRipple class=\"flex items-center p-tieredmenu-item-link\" (click)=\"actEvent(item)\">\r\n <!-- <span [class]=\"item.icon\" class=\"p-tieredmenu-item-icon\"></span> -->\r\n <span class=\"ml-2\">{{ item.label | translate }}</span>\r\n <!-- <p-badge *ngIf=\"item.badge\" class=\"ml-auto\" [value]=\"item.badge\" /> -->\r\n <span *ngIf=\"item.shortcut\" class=\"ml-auto border border-surface rounded bg-emphasis text-muted-color text-xs p-1\">\r\n {{ item.shortcut }}\r\n </span>\r\n <i *ngIf=\"hasSubmenu\" class=\"pi pi-angle-right ml-auto\"></i>\r\n </a>\r\n </ng-template>\r\n </p-tieredmenu>\r\n }\r\n }\r\n }\r\n @if(this.authLevel() > 2 && !isList()){\r\n <p-button \r\n variant=\"text\" \r\n severity=\"secondary\" \r\n icon=\"pi pi-cloud-upload\" \r\n [loading]=\"isLoading()\"\r\n aria-label=\"\u624B\u52A8\u4FDD\u5B58\" \r\n class=\"p-0\"\r\n (click)=\"handleSave()\">\r\n </p-button>\r\n }\r\n <!-- @if(crumbList().length >= 2){ -->\r\n <p-button \r\n variant=\"text\" \r\n severity=\"secondary\" \r\n icon=\"pi pi-times\" \r\n aria-label=\"\u5173\u95ED\" \r\n class=\"p-0\"\r\n (click)=\"closeNew()\">\r\n </p-button>\r\n <!-- } -->\r\n </div>\r\n </div>\r\n } @else {\r\n <!-- \u521D\u59CB\u8282\u70B9 -->\r\n <div class=\"min-w-0 flex items-center text-[14px] text-text-color\">\r\n <span class=\"hidden md:inline-block max-w-[120px] overflow-hidden whitespace-nowrap text-ellipsis\">\r\n @if(crumbTitle().i18nKey != ''){\r\n {{crumbTitle().i18nKey | translate}}\r\n } @else {\r\n {{crumbTitle().title}}\r\n }\r\n </span>\r\n @if(isShowCog()){\r\n <p-button \r\n variant=\"text\"\r\n severity=\"secondary\" \r\n icon=\"pi pi-cog\" \r\n aria-label=\"\u64CD\u4F5C\" \r\n (onClick)=\"toggleListOp($event)\"/>\r\n @if(listOpItems.length > 0){\r\n <p-tieredmenu #listOp [model]=\"listOpItems\" [popup]=\"true\" [style]=\"{position:'absolute'}\">\r\n <ng-template #item let-item let-hasSubmenu=\"hasSubmenu\">\r\n <a pRipple class=\"flex items-center p-tieredmenu-item-link\" (click)=\"listAct(item.type)\">\r\n <span [class]=\"item.icon\" class=\"p-tieredmenu-item-icon\"></span>\r\n <span class=\"ml-2\">{{ item.label | translate }}</span>\r\n <!-- <p-badge *ngIf=\"item.badge\" class=\"ml-auto\" [value]=\"item.badge\" /> -->\r\n <span *ngIf=\"item.shortcut\" class=\"ml-auto border border-surface rounded bg-emphasis text-muted-color text-xs p-1\">\r\n {{ item.shortcut }}\r\n </span>\r\n <i *ngIf=\"hasSubmenu\" class=\"pi pi-angle-right ml-auto\"></i>\r\n </a>\r\n </ng-template>\r\n </p-tieredmenu>\r\n }\r\n \r\n }\r\n @if(!isList()){\r\n <p-button \r\n variant=\"text\" \r\n severity=\"secondary\" \r\n icon=\"pi pi-cloud-upload\" \r\n aria-label=\"\u624B\u52A8\u4FDD\u5B58\" \r\n class=\"p-0\"\r\n (click)=\"handleSave()\">\r\n </p-button>\r\n <p-button \r\n variant=\"text\" \r\n severity=\"secondary\" \r\n icon=\"pi pi-times\" \r\n aria-label=\"\u5173\u95ED\" \r\n class=\"p-0\"\r\n (click)=\"closeNew()\">\r\n </p-button>\r\n }\r\n </div>\r\n }\r\n \r\n</div>", styles: [":host ::ng-deep .p-disabled,:host ::ng-deep .p-component:disabled{opacity:1}:host ::ng-deep .p-inputtext{border-width:0;border-radius:0;box-shadow:none;background:#fff;padding:0}:host ::ng-deep .p-inputtext:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-inputtext:not(:disabled):hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-inputtext:not(:disabled).ng-hovered{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-inputtext:focus{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .ng-hovered .p-autocomplete-input:not(.p-disabled){border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select-label{padding:0}:host ::ng-deep .p-select{border-width:0;border-radius:0;box-shadow:none;background:#fff}:host ::ng-deep .p-select .p-select-dropdown{display:none}:host ::ng-deep .p-select .p-select-clear-icon{display:none}:host ::ng-deep .p-select:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-select-open{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select-open .p-select-dropdown{display:flex}:host ::ng-deep .p-select-open .p-select-clear-icon{display:flex}:host ::ng-deep .p-select:hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select:hover .p-select-dropdown{display:flex}:host ::ng-deep .p-select:hover .p-select-clear-icon{display:flex}:host ::ng-deep .p-select.ng-hovered{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select.ng-hovered .p-select-dropdown{display:flex}:host ::ng-deep .p-select.ng-hovered .p-select-clear-icon{display:flex}:host ::ng-deep .p-multiselect-label{padding:0}:host ::ng-deep .p-multiselect{border-width:0;border-radius:0;background:#fff;box-shadow:none}:host ::ng-deep .p-multiselect .p-multiselect-dropdown{display:none}:host ::ng-deep .p-multiselect:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-multiselect-open{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect-open .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-multiselect:not(.p-disabled).p-focus{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect:not(.p-disabled).p-focus .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-multiselect:not(.p-disabled):hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect:not(.p-disabled):hover .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-multiselect:not(.p-disabled).ng-hovered{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect:not(.p-disabled).ng-hovered .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-textarea{border-radius:0;box-shadow:none;padding:0;background:#fff;resize:none}:host ::ng-deep .p-textarea:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border:1px solid var(--p-red-500)!important}:host ::ng-deep .p-textarea:not(:disabled):hover{border:1px solid var(--p-primary-color);resize:vertical}:host ::ng-deep .p-textarea:not(:disabled).ng-hovered{border:1px solid var(--p-primary-color);resize:vertical}:host ::ng-deep .p-textarea:focus{border:1px solid var(--p-primary-color);resize:vertical}:host ::ng-deep .p-treeselect-label{padding:0}:host ::ng-deep .p-treeselect{border-width:0;border-radius:0;box-shadow:none;background:#fff}:host ::ng-deep .p-treeselect .p-treeselect-dropdown{display:none}:host ::ng-deep .ng-invalid.ng-dirty>.p-treeselect{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-treeselect-open{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-treeselect-open .p-treeselect-dropdown{display:flex}:host ::ng-deep .p-treeselect:not(.p-disabled).p-focus{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-treeselect:not(.p-disabled).p-focus .p-treeselect-dropdown{display:flex}:host ::ng-deep .p-treeselect:not(.p-disabled):hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-treeselect:not(.p-disabled):hover .p-treeselect-dropdown{display:flex}:host ::ng-deep .ng-hovered>.p-treeselect:not(.p-disabled){border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .ng-hovered>.p-treeselect:not(.p-disabled) .p-treeselect-dropdown{display:flex}:host ::ng-deep .p-menubar{border-width:0;padding:0}:host ::ng-deep .p-menubar-submenu{z-index:3}:host ::ng-deep .p-fileupload-advanced{border-width:0;border-radius:0;background-color:#fff}:host ::ng-deep .p-fileupload-header{padding:0}:host ::ng-deep .p-fileupload-content{padding:0;display:block;border-width:0}:host ::ng-deep .p-inputnumber:not(.ng-valid).ng-dirty>.p-inputtext{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-inputnumber.ng-hovered:not(.p-disabled)>.p-inputtext{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .ng-hovered>.p-datepicker:not(.p-disabled) .p-inputtext{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .cm-editor{border:1px solid #cbd5e1}:host ::ng-deep .cm-editor.cm-focused{outline:none!important;border:1px solid var(--p-primary-color)}:host ::ng-deep .cm-editor:hover{border:1px solid var(--p-primary-color)}:host ::ng-deep .cm-editor.ng-hovered{border:1px solid var(--p-primary-color)}:host ::ng-deep .cm-gutters{background-color:#fff;border:\"none\"}:host ::ng-deep .cm-activeLineGutter{background-color:#fff}.crumb-title{color:var(--p-primary-color)}.crumb-title+.crumb-title{padding-left:.5rem}.crumb-title+.crumb-title:before{padding-right:.5rem;content:var(--breadcrumb-divider, \"/\")}:host::ng-deep .p-button-text.p-button-secondary{color:var(--p-surface-700)}:host::ng-deep .title-action .p-button{padding:0}:host::ng-deep .new-action .p-button{padding:0}:host::ng-deep .new-action .p-button button{padding-top:2px;height:100%;align-items:center}:host::ng-deep .select-crumb .p-button{padding:0;background-color:#fff;line-height:1}:host::ng-deep .select-crumb .p-button button{padding:0;width:17px;height:17px}:host::ng-deep .p-popover-content{padding:.5rem}\n"] }]
3846
+ args: [{ selector: 'app-crumb-action', standalone: true, imports: [ButtonModule, TranslatePipe, CommonModule, TieredMenu], template: "<div class=\"flex items-center gap-1\">\r\n <div class=\"left-btn flex gap-1\">\r\n <!-- TODO \u6743\u9650\u6570\u636E\u63A5\u5165 -->\r\n @if(!newBtnTemplateRef){\r\n @if(this.authLevel() > 2 && addVisible()){\r\n <p-button (click)=\"goNew()\" [outlined]=\"outlined()\">{{'app.create' | translate}}</p-button>\r\n }\r\n } @else {\r\n <ng-container *ngTemplateOutlet=\"newBtnTemplateRef\"></ng-container>\r\n }\r\n </div>\r\n @if(crumbList().length > 0){\r\n <div class=\"flex flex-col\">\r\n <div class=\"hidden md:flex\">\r\n @if(crumbList().length <= 2){\r\n @for(fchild of crumbList(); track fchild.url){\r\n <div class=\"crumb-title cursor-pointer text-[12px] max-w-[120px] overflow-hidden whitespace-nowrap text-ellipsis\" (click)=\"back(fchild)\">\r\n @if(fchild.i18nKey!= ''){\r\n {{ fchild!.i18nKey | translate}}\r\n } @else {\r\n {{fchild.title}}\r\n }\r\n </div>\r\n }\r\n } @else {\r\n <div class=\"flex\">\r\n <div class=\"crumb-title cursor-pointer select-crumb\">\r\n <div class=\"w-[17px] h-[17px] flex items-center font-bold text-[13px]\" (click)=\"toggle($event)\">\r\n ...\r\n </div>\r\n <p-tieredmenu #op [model]=\"crumbFront\" [popup]=\"true\" [style]=\"{position:'absolute'}\">\r\n <ng-template #item let-item let-hasSubmenu=\"hasSubmenu\">\r\n <a pRipple class=\"flex items-center p-tieredmenu-item-link\">\r\n <span class=\"ml-2 w-full\" (click)=\"back(item)\">\r\n @if(item.i18nKey!= ''){\r\n {{ item!.i18nKey | translate}}\r\n } @else {\r\n {{item.title}}\r\n }\r\n </span>\r\n </a>\r\n </ng-template>\r\n </p-tieredmenu>\r\n </div>\r\n @for(item of crumbEnd;track item.url){\r\n <div class=\"crumb-title cursor-pointer text-[12px] max-w-[120px] overflow-hidden whitespace-nowrap text-ellipsis\" (click)=\"back(item)\">\r\n @if(item.i18nKey!= ''){\r\n {{ item!.i18nKey | translate}}\r\n } @else {\r\n {{item.title}}\r\n }\r\n </div>\r\n }\r\n </div>\r\n }\r\n \r\n </div>\r\n <div class=\"min-w-0 text-text-color text-[12px] title-action\">\r\n <span class=\"hidden md:inline-block whitespace-nowrap\">{{isNew? 'New':crumbTitle().title}}</span>\r\n @if(isShowCog()){\r\n @if(isList()){\r\n <p-button variant=\"text\" severity=\"secondary\" icon=\"pi pi-cog\" aria-label=\"\u64CD\u4F5C\" (onClick)=\"toggleListOp($event)\"/>\r\n @if(listOpItems.length > 0){\r\n <p-tieredmenu #listOp [model]=\"listOpItems\" [popup]=\"true\" [style]=\"{position:'absolute'}\">\r\n <ng-template #item let-item let-hasSubmenu=\"hasSubmenu\">\r\n <a pRipple class=\"flex items-center p-tieredmenu-item-link\" (click)=\"listAct(item.type)\">\r\n <span [class]=\"item.icon\" class=\"p-tieredmenu-item-icon\"></span>\r\n <span class=\"ml-2\">{{ item.label | translate }}</span>\r\n <!-- <p-badge *ngIf=\"item.badge\" class=\"ml-auto\" [value]=\"item.badge\" /> -->\r\n <span *ngIf=\"item.shortcut\" class=\"ml-auto border border-surface rounded bg-emphasis text-muted-color text-xs p-1\">\r\n {{ item.shortcut }}\r\n </span>\r\n <i *ngIf=\"hasSubmenu\" class=\"pi pi-angle-right ml-auto\"></i>\r\n </a>\r\n </ng-template>\r\n </p-tieredmenu>\r\n }\r\n } @else {\r\n <p-button variant=\"text\" severity=\"secondary\" icon=\"pi pi-cog\" aria-label=\"\u64CD\u4F5C\" (onClick)=\"toggleAct($event)\"/>\r\n @if(actionList().length > 0 && showAct){\r\n <p-tieredmenu #actOp [model]=\"actionList()\" [popup]=\"true\" [style]=\"{position:'absolute'}\">\r\n <ng-template #item let-item let-hasSubmenu=\"hasSubmenu\">\r\n <a pRipple \r\n class=\"flex items-center p-tieredmenu-item-link\"\r\n [class]=\"(item.auth || 0) > (authLevel() || 0) || !!item.btnHidden?.(data()) ? 'hidden' : 'block'\" \r\n (click)=\"actEvent(item)\">\r\n <span class=\"ml-2\">{{item.i18nKey ? (item.i18nKey | translate) : item.label}}</span>\r\n <span *ngIf=\"item.shortcut\" class=\"ml-auto border border-surface rounded bg-emphasis text-muted-color text-xs p-1\">\r\n {{ item.shortcut }}\r\n </span>\r\n <i *ngIf=\"hasSubmenu\" class=\"pi pi-angle-right ml-auto\"></i>\r\n </a>\r\n </ng-template>\r\n </p-tieredmenu>\r\n }\r\n }\r\n }\r\n @if(this.authLevel() > 2 && !isList()){\r\n <p-button \r\n variant=\"text\" \r\n severity=\"secondary\" \r\n icon=\"pi pi-cloud-upload\" \r\n [loading]=\"isLoading()\"\r\n aria-label=\"\u624B\u52A8\u4FDD\u5B58\" \r\n class=\"p-0\"\r\n (click)=\"handleSave()\">\r\n </p-button>\r\n }\r\n <!-- @if(crumbList().length >= 2){ -->\r\n <p-button \r\n variant=\"text\" \r\n severity=\"secondary\" \r\n icon=\"pi pi-times\" \r\n aria-label=\"\u5173\u95ED\" \r\n class=\"p-0\"\r\n (click)=\"closeNew()\">\r\n </p-button>\r\n <!-- } -->\r\n </div>\r\n </div>\r\n } @else {\r\n <!-- \u521D\u59CB\u8282\u70B9 -->\r\n <div class=\"min-w-0 flex items-center text-[14px] text-text-color\">\r\n <span class=\"hidden md:inline-block max-w-[120px] overflow-hidden whitespace-nowrap text-ellipsis\">\r\n @if(crumbTitle().i18nKey != ''){\r\n {{crumbTitle().i18nKey | translate}}\r\n } @else {\r\n {{crumbTitle().title}}\r\n }\r\n </span>\r\n @if(isShowCog()){\r\n <p-button \r\n variant=\"text\"\r\n severity=\"secondary\" \r\n icon=\"pi pi-cog\" \r\n aria-label=\"\u64CD\u4F5C\" \r\n (onClick)=\"toggleListOp($event)\"/>\r\n @if(listOpItems.length > 0){\r\n <p-tieredmenu #listOp [model]=\"listOpItems\" [popup]=\"true\" [style]=\"{position:'absolute'}\">\r\n <ng-template #item let-item let-hasSubmenu=\"hasSubmenu\">\r\n <a pRipple class=\"flex items-center p-tieredmenu-item-link\" (click)=\"listAct(item.type)\">\r\n <span [class]=\"item.icon\" class=\"p-tieredmenu-item-icon\"></span>\r\n <span class=\"ml-2\">{{ item.label | translate }}</span>\r\n <!-- <p-badge *ngIf=\"item.badge\" class=\"ml-auto\" [value]=\"item.badge\" /> -->\r\n <span *ngIf=\"item.shortcut\" class=\"ml-auto border border-surface rounded bg-emphasis text-muted-color text-xs p-1\">\r\n {{ item.shortcut }}\r\n </span>\r\n <i *ngIf=\"hasSubmenu\" class=\"pi pi-angle-right ml-auto\"></i>\r\n </a>\r\n </ng-template>\r\n </p-tieredmenu>\r\n }\r\n \r\n }\r\n @if(!isList()){\r\n <p-button \r\n variant=\"text\" \r\n severity=\"secondary\" \r\n icon=\"pi pi-cloud-upload\" \r\n aria-label=\"\u624B\u52A8\u4FDD\u5B58\" \r\n class=\"p-0\"\r\n (click)=\"handleSave()\">\r\n </p-button>\r\n <p-button \r\n variant=\"text\" \r\n severity=\"secondary\" \r\n icon=\"pi pi-times\" \r\n aria-label=\"\u5173\u95ED\" \r\n class=\"p-0\"\r\n (click)=\"closeNew()\">\r\n </p-button>\r\n }\r\n </div>\r\n }\r\n \r\n</div>", styles: [":host ::ng-deep .p-disabled,:host ::ng-deep .p-component:disabled{opacity:1}:host ::ng-deep .p-inputtext{border-width:0;border-radius:0;box-shadow:none;background:#fff;padding:0}:host ::ng-deep .p-inputtext:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-inputtext:not(:disabled):hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-inputtext:not(:disabled).ng-hovered{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-inputtext:focus{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .ng-hovered .p-autocomplete-input:not(.p-disabled){border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select-label{padding:0}:host ::ng-deep .p-select{border-width:0;border-radius:0;box-shadow:none;background:#fff}:host ::ng-deep .p-select .p-select-dropdown{display:none}:host ::ng-deep .p-select .p-select-clear-icon{display:none}:host ::ng-deep .p-select:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-select-open{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select-open .p-select-dropdown{display:flex}:host ::ng-deep .p-select-open .p-select-clear-icon{display:flex}:host ::ng-deep .p-select:hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select:hover .p-select-dropdown{display:flex}:host ::ng-deep .p-select:hover .p-select-clear-icon{display:flex}:host ::ng-deep .p-select.ng-hovered{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-select.ng-hovered .p-select-dropdown{display:flex}:host ::ng-deep .p-select.ng-hovered .p-select-clear-icon{display:flex}:host ::ng-deep .p-multiselect-label{padding:0}:host ::ng-deep .p-multiselect{border-width:0;border-radius:0;background:#fff;box-shadow:none}:host ::ng-deep .p-multiselect .p-multiselect-dropdown{display:none}:host ::ng-deep .p-multiselect:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-multiselect-open{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect-open .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-multiselect:not(.p-disabled).p-focus{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect:not(.p-disabled).p-focus .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-multiselect:not(.p-disabled):hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect:not(.p-disabled):hover .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-multiselect:not(.p-disabled).ng-hovered{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-multiselect:not(.p-disabled).ng-hovered .p-multiselect-dropdown{display:flex}:host ::ng-deep .p-textarea{border-radius:0;box-shadow:none;padding:0;background:#fff;resize:none}:host ::ng-deep .p-textarea:not(.ng-valid).ng-dirty{background:var(--p-red-200)!important;border:1px solid var(--p-red-500)!important}:host ::ng-deep .p-textarea:not(:disabled):hover{border:1px solid var(--p-primary-color);resize:vertical}:host ::ng-deep .p-textarea:not(:disabled).ng-hovered{border:1px solid var(--p-primary-color);resize:vertical}:host ::ng-deep .p-textarea:focus{border:1px solid var(--p-primary-color);resize:vertical}:host ::ng-deep .p-treeselect-label{padding:0}:host ::ng-deep .p-treeselect{border-width:0;border-radius:0;box-shadow:none;background:#fff}:host ::ng-deep .p-treeselect .p-treeselect-dropdown{display:none}:host ::ng-deep .ng-invalid.ng-dirty>.p-treeselect{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-treeselect-open{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-treeselect-open .p-treeselect-dropdown{display:flex}:host ::ng-deep .p-treeselect:not(.p-disabled).p-focus{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-treeselect:not(.p-disabled).p-focus .p-treeselect-dropdown{display:flex}:host ::ng-deep .p-treeselect:not(.p-disabled):hover{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .p-treeselect:not(.p-disabled):hover .p-treeselect-dropdown{display:flex}:host ::ng-deep .ng-hovered>.p-treeselect:not(.p-disabled){border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .ng-hovered>.p-treeselect:not(.p-disabled) .p-treeselect-dropdown{display:flex}:host ::ng-deep .p-menubar{border-width:0;padding:0}:host ::ng-deep .p-menubar-submenu{z-index:3}:host ::ng-deep .p-fileupload-advanced{border-width:0;border-radius:0;background-color:#fff}:host ::ng-deep .p-fileupload-header{padding:0}:host ::ng-deep .p-fileupload-content{padding:0;display:block;border-width:0}:host ::ng-deep .p-inputnumber:not(.ng-valid).ng-dirty>.p-inputtext{background:var(--p-red-200)!important;border-bottom:1px solid var(--p-red-500)!important}:host ::ng-deep .p-inputnumber.ng-hovered:not(.p-disabled)>.p-inputtext{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .ng-hovered>.p-datepicker:not(.p-disabled) .p-inputtext{border-bottom:1px solid var(--p-primary-color)}:host ::ng-deep .cm-editor{border:1px solid #cbd5e1}:host ::ng-deep .cm-editor.cm-focused{outline:none!important;border:1px solid var(--p-primary-color)}:host ::ng-deep .cm-editor:hover{border:1px solid var(--p-primary-color)}:host ::ng-deep .cm-editor.ng-hovered{border:1px solid var(--p-primary-color)}:host ::ng-deep .cm-gutters{background-color:#fff;border:\"none\"}:host ::ng-deep .cm-activeLineGutter{background-color:#fff}.crumb-title{color:var(--p-primary-color)}.crumb-title+.crumb-title{padding-left:.5rem}.crumb-title+.crumb-title:before{padding-right:.5rem;content:var(--breadcrumb-divider, \"/\")}:host::ng-deep .p-button-text.p-button-secondary{color:var(--p-surface-700)}:host::ng-deep .title-action .p-button{padding:0}:host::ng-deep .new-action .p-button{padding:0}:host::ng-deep .new-action .p-button button{padding-top:2px;height:100%;align-items:center}:host::ng-deep .select-crumb .p-button{padding:0;background-color:#fff;line-height:1}:host::ng-deep .select-crumb .p-button button{padding:0;width:17px;height:17px}:host::ng-deep .p-popover-content{padding:.5rem}\n"] }]
3833
3847
  }], ctorParameters: () => [], propDecorators: { op: [{
3834
3848
  type: ViewChild,
3835
3849
  args: ['op']
@@ -6589,7 +6603,7 @@ class PageFormComponent extends AmComponent {
6589
6603
  });
6590
6604
  }
6591
6605
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PageFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6592
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: PageFormComponent, isStandalone: true, selector: "app-page-form", inputs: { addVisible: { classPropertyName: "addVisible", publicName: "addVisible", isSignal: true, isRequired: false, transformFunction: null }, gridList: { classPropertyName: "gridList", publicName: "gridList", isSignal: true, isRequired: false, transformFunction: null }, form: { classPropertyName: "form", publicName: "form", isSignal: true, isRequired: true, transformFunction: null }, getPrmInput: { classPropertyName: "getPrmInput", publicName: "getPrmInput", isSignal: true, isRequired: true, transformFunction: null }, statusSteps: { classPropertyName: "statusSteps", publicName: "statusSteps", isSignal: true, isRequired: false, transformFunction: null }, statusKey: { classPropertyName: "statusKey", publicName: "statusKey", isSignal: true, isRequired: false, transformFunction: null }, hrefBtnList: { classPropertyName: "hrefBtnList", publicName: "hrefBtnList", isSignal: true, isRequired: false, transformFunction: null }, setTitle: { classPropertyName: "setTitle", publicName: "setTitle", isSignal: true, isRequired: false, transformFunction: null }, actionList: { classPropertyName: "actionList", publicName: "actionList", isSignal: true, isRequired: false, transformFunction: null }, modelLog: { classPropertyName: "modelLog", publicName: "modelLog", isSignal: true, isRequired: false, transformFunction: null }, formDisabled: { classPropertyName: "formDisabled", publicName: "formDisabled", isSignal: true, isRequired: false, transformFunction: null }, authLevel: { classPropertyName: "authLevel", publicName: "authLevel", isSignal: true, isRequired: false, transformFunction: null } }, providers: [], viewQueries: [{ propertyName: "cForm", first: true, predicate: ["cForm"], descendants: true }, { propertyName: "customGrid", first: true, predicate: ["customGrid"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"md:overflow-hidden\">\r\n\t<div class=\"flex items-center justify-between py-1 px-1 border-b-[1px] border-[#dbdbdb] bg-white\">\r\n\t\t<app-crumb-action\r\n\t\t\t[addVisible]=\"addVisible()\"\r\n\t\t\t[newUrl]=\"newUrl\"\r\n\t\t\t[isShowCog]=\"true\"\r\n\t\t\t[outlined]=\"true\"\r\n\t\t\t[authLevel]=\"authLevel()\"\r\n\t\t\t[actionList]=\"actionList()\"\r\n\t\t\t(actionEvent)=\"authClick($event)\"\r\n\t\t\t(saveEvent)=\"submitForm()\">\r\n\t\t</app-crumb-action>\r\n\t\t<div class=\"hrefBtnList\">\r\n\t\t\t@if (id) {\r\n\t\t\t\t@for (btn of hrefBtnList(); track btn) {\r\n\t\t\t\t\t<p-button\r\n\t\t\t\t\t\t[variant]=\"btn?.variant\"\r\n\t\t\t\t\t\t[severity]=\"btn?.severity\"\r\n\t\t\t\t\t\tclass=\"mr-[6px]\"\r\n\t\t\t\t\t\t[icon]=\"btn?.icon\"\r\n\t\t\t\t\t\tlabel=\"{{ btn.i18nKey ? i18n.fanyi(btn.i18nKey) : btn.label }}\"\r\n\t\t\t\t\t\t(click)=\"goRun(btn)\">\r\n\t\t\t\t\t</p-button>\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t</div>\r\n\t\t<div></div>\r\n\t</div>\r\n\t<div class=\"flex\">\r\n\t\t<div class=\"px-2 flex flex-wrap items-center md:basis-2/3 basis-full\">\r\n\t\t\t<div class=\"hidden md:basis-1/3 py-1 basis-full md:flex items-center gap-4 flex-row order-1\">\r\n\t\t\t\t@for (action of actionList(); let i = $index; track action) {\r\n\t\t\t\t\t<p-button\r\n\t\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t\t\t[variant]=\"action?.variant\"\r\n\t\t\t\t\t\t[severity]=\"action?.severity\"\r\n\t\t\t\t\t\t[icon]=\"getPrm.data?.icon\"\r\n\t\t\t\t\t\t[label]=\"action.i18nKey ? (action.i18nKey | translate) : action.label\"\r\n\t\t\t\t\t\t[disabled]=\"action.btnDisabled ? action.btnDisabled(getPrm.data) : false\"\r\n\t\t\t\t\t\t[styleClass]=\"(action.auth || 0) > (authLevel() || 0) || !!action.btnHidden?.(getPrm.data) ? 'hidden' : 'block'\"\r\n\t\t\t\t\t\t(onClick)=\"action.onClick != '' && action.onClick?.(getPrm.data)\">\r\n\t\t\t\t\t</p-button>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t\t<div class=\"md:basis-2/3 basis-full flex md:flex-row-reverse flex-row md:order-2 order-first w-full\">\r\n\t\t\t\t<custom-steps\r\n\t\t\t\t\t#customSteps\r\n\t\t\t\t\tclass=\"w-full\"\r\n\t\t\t\t\t[steps]=\"statusSteps()\"\r\n\t\t\t\t\t[current]=\"getPrm.data && getPrm.data[statusKey()] !== undefined ? getPrm.data[statusKey()] : 0\"\r\n\t\t\t\t\t[authLevel]=\"authLevel()\"\r\n\t\t\t\t\t(change)=\"statusChange($event, customSteps)\">\r\n\t\t\t\t</custom-steps>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n\t<div class=\"main flex flex-wrap md:overflow-y-hidden\">\r\n\t\t<div class=\"md:basis-2/3 basis-full h-full overflow-y-auto\">\r\n\t\t\t<div class=\"bg-white mx-2 form-panel\">\r\n\t\t\t\t<div class=\"p-2 flex-1\">\r\n\t\t\t\t\t<form [formGroup]=\"form().form!\">\r\n\t\t\t\t\t\t<custom-form\r\n\t\t\t\t\t\t\t#cForm\r\n\t\t\t\t\t\t\t[options]=\"formOptions\"\r\n\t\t\t\t\t\t\t[upsert]=\"upsertPrm\"\r\n\t\t\t\t\t\t\t[model]=\"getPrm.data ?? {}\"></custom-form>\r\n\t\t\t\t\t</form>\r\n\t\t\t\t</div>\r\n\t\t\t\t@if (gridList() && gridList().length > 1) {\r\n\t\t\t\t\t<div class=\"relative mb-2\">\r\n\t\t\t\t\t\t<p-tabs [(value)]=\"indexValue\">\r\n\t\t\t\t\t\t\t<p-tablist>\r\n\t\t\t\t\t\t\t\t@for (fchild of gridList(); let i = $index; track fchild) {\r\n\t\t\t\t\t\t\t\t\t<p-tab [value]=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t{{ fchild.i18nKey ? i18n.fanyi(fchild.i18nKey) : fchild.title }}\r\n\t\t\t\t\t\t\t\t\t</p-tab>\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t</p-tablist>\r\n\t\t\t\t\t\t</p-tabs>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t}\r\n\t\t\t\t@for (grid of gridList(); let i = $index; track grid) {\r\n\t\t\t\t\t<custom-grid\r\n\t\t\t\t\t\t#customGrid\r\n\t\t\t\t\t\t[hidden]=\"indexValue != i\"\r\n\t\t\t\t\t\t[rowData]=\"getPrm.data?.[grid.subDataKey!] || []\"\r\n\t\t\t\t\t\t[upsert]=\"upsertPrm\"\r\n\t\t\t\t\t\t(deleteEmit)=\"delRows($event)\"\r\n\t\t\t\t\t\t[addType]=\"grid.subTableSource\"\r\n\t\t\t\t\t\t(addEmit)=\"dataSourceShow()\"\r\n\t\t\t\t\t\t[gridOptions]=\"grid.gridOptions\"\r\n\t\t\t\t\t\t[authLevel]=\"authLevel()\"\r\n\t\t\t\t\t\t[selectData]=\"grid.selectData\">\r\n\t\t\t\t\t</custom-grid>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<div class=\"md:basis-1/3 basis-full h-full overflow-y-auto\">\r\n\t\t\t<custom-log [logs]=\"getPrm.data?.log ?? []\"></custom-log>\r\n\t\t</div>\r\n\t</div>\r\n</div>\r\n<row-selector\r\n\t[(visible)]=\"visible\"\r\n\t[searchPrm]=\"dialogSearchPrm\"\r\n\t[gridOptions]=\"selectOptions\"\r\n\t(onOk)=\"onOk($event)\">\r\n</row-selector>\r\n", styles: ["@charset \"UTF-8\";.main{height:calc(100vh - 140px)}:host ::ng-deep .main .ag-root-wrapper{border-left:none!important;border-right:none!important;border-bottom:none!important}.form-panel{border:solid 1px #dbdbdb}\n"], dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i2$3.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "fluid", "buttonProps"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: FormComponent, selector: "custom-form", inputs: ["options", "model", "upsert"] }, { kind: "component", type: LogComponent, selector: "custom-log", inputs: ["logs", "id"] }, { kind: "component", type: CrumbActionComponent, selector: "app-crumb-action", inputs: ["isShowCog", "addVisible", "newUrl", "onExport", "outlined", "isList", "authLevel", "actionList"], outputs: ["saveEvent", "cancelEvent", "actionEvent"] }, { kind: "component", type: StepsComponent, selector: "custom-steps", inputs: ["steps", "current", "authLevel"], outputs: ["change"] }, { kind: "component", type: GridComponent, selector: "custom-grid", inputs: ["gridOptions", "upsert", "rowData", "searchPrm", "addType", "selectData", "showAct", "actPos", "authLevel"], outputs: ["searchPrmChange", "deleteEmit", "addEmit"] }, { kind: "ngmodule", type: TabsModule }, { kind: "component", type: i3$1.Tabs, selector: "p-tabs", inputs: ["value", "scrollable", "lazy", "selectOnFocus", "showNavigators", "tabindex"], outputs: ["valueChange"] }, { kind: "component", type: i3$1.TabList, selector: "p-tablist" }, { kind: "component", type: i3$1.Tab, selector: "p-tab", inputs: ["value", "disabled"], outputs: ["valueChange"] }, { kind: "component", type: RowSelectorComponent, selector: "row-selector", inputs: ["title", "gridOptions", "searchPrm", "visible"], outputs: ["onOk", "visibleChange"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
6606
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: PageFormComponent, isStandalone: true, selector: "app-page-form", inputs: { addVisible: { classPropertyName: "addVisible", publicName: "addVisible", isSignal: true, isRequired: false, transformFunction: null }, gridList: { classPropertyName: "gridList", publicName: "gridList", isSignal: true, isRequired: false, transformFunction: null }, form: { classPropertyName: "form", publicName: "form", isSignal: true, isRequired: true, transformFunction: null }, getPrmInput: { classPropertyName: "getPrmInput", publicName: "getPrmInput", isSignal: true, isRequired: true, transformFunction: null }, statusSteps: { classPropertyName: "statusSteps", publicName: "statusSteps", isSignal: true, isRequired: false, transformFunction: null }, statusKey: { classPropertyName: "statusKey", publicName: "statusKey", isSignal: true, isRequired: false, transformFunction: null }, hrefBtnList: { classPropertyName: "hrefBtnList", publicName: "hrefBtnList", isSignal: true, isRequired: false, transformFunction: null }, setTitle: { classPropertyName: "setTitle", publicName: "setTitle", isSignal: true, isRequired: false, transformFunction: null }, actionList: { classPropertyName: "actionList", publicName: "actionList", isSignal: true, isRequired: false, transformFunction: null }, modelLog: { classPropertyName: "modelLog", publicName: "modelLog", isSignal: true, isRequired: false, transformFunction: null }, formDisabled: { classPropertyName: "formDisabled", publicName: "formDisabled", isSignal: true, isRequired: false, transformFunction: null }, authLevel: { classPropertyName: "authLevel", publicName: "authLevel", isSignal: true, isRequired: false, transformFunction: null } }, providers: [], viewQueries: [{ propertyName: "cForm", first: true, predicate: ["cForm"], descendants: true }, { propertyName: "customGrid", first: true, predicate: ["customGrid"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"md:overflow-hidden\">\r\n\t<div class=\"flex items-center justify-between py-1 px-1 border-b-[1px] border-[#dbdbdb] bg-white\">\r\n\t\t<app-crumb-action\r\n\t\t\t[addVisible]=\"addVisible()\"\r\n\t\t\t[newUrl]=\"newUrl\"\r\n\t\t\t[isShowCog]=\"true\"\r\n\t\t\t[outlined]=\"true\"\r\n\t\t\t[authLevel]=\"authLevel()\"\r\n\t\t\t[actionList]=\"actionList()\"\r\n\t\t\t[data]=\"getPrm.data??{}\"\r\n\t\t\t(actionEvent)=\"authClick($event)\"\r\n\t\t\t(saveEvent)=\"submitForm()\">\r\n\t\t</app-crumb-action>\r\n\t\t<div class=\"hrefBtnList\">\r\n\t\t\t@if (id) {\r\n\t\t\t\t@for (btn of hrefBtnList(); track btn) {\r\n\t\t\t\t\t<p-button\r\n\t\t\t\t\t\t[variant]=\"btn?.variant\"\r\n\t\t\t\t\t\t[severity]=\"btn?.severity\"\r\n\t\t\t\t\t\tclass=\"mr-[6px]\"\r\n\t\t\t\t\t\t[icon]=\"btn?.icon\"\r\n\t\t\t\t\t\tlabel=\"{{ btn.i18nKey ? i18n.fanyi(btn.i18nKey) : btn.label }}\"\r\n\t\t\t\t\t\t(click)=\"goRun(btn)\">\r\n\t\t\t\t\t</p-button>\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t</div>\r\n\t\t<div></div>\r\n\t</div>\r\n\t<div class=\"flex\">\r\n\t\t<div class=\"px-2 flex flex-wrap items-center md:basis-2/3 basis-full\">\r\n\t\t\t<div class=\"hidden md:basis-1/3 py-1 basis-full md:flex items-center gap-4 flex-row order-1\">\r\n\t\t\t\t@for (action of actionList(); let i = $index; track action) {\r\n\t\t\t\t\t<p-button\r\n\t\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t\t\t[variant]=\"action?.variant\"\r\n\t\t\t\t\t\t[severity]=\"action?.severity\"\r\n\t\t\t\t\t\t[icon]=\"getPrm.data?.icon\"\r\n\t\t\t\t\t\t[label]=\"action.i18nKey ? (action.i18nKey | translate) : action.label\"\r\n\t\t\t\t\t\t[disabled]=\"action.btnDisabled ? action.btnDisabled(getPrm.data) : false\"\r\n\t\t\t\t\t\t[styleClass]=\"(action.auth || 0) > (authLevel() || 0) || !!action.btnHidden?.(getPrm.data) ? 'hidden' : 'block'\"\r\n\t\t\t\t\t\t(onClick)=\"action.onClick != '' && action.onClick?.(getPrm.data)\">\r\n\t\t\t\t\t</p-button>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t\t<div class=\"md:basis-2/3 basis-full flex md:flex-row-reverse flex-row md:order-2 order-first w-full\">\r\n\t\t\t\t<custom-steps\r\n\t\t\t\t\t#customSteps\r\n\t\t\t\t\tclass=\"w-full\"\r\n\t\t\t\t\t[steps]=\"statusSteps()\"\r\n\t\t\t\t\t[current]=\"getPrm.data && getPrm.data[statusKey()] !== undefined ? getPrm.data[statusKey()] : 0\"\r\n\t\t\t\t\t[authLevel]=\"authLevel()\"\r\n\t\t\t\t\t(change)=\"statusChange($event, customSteps)\">\r\n\t\t\t\t</custom-steps>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n\t<div class=\"main flex flex-wrap md:overflow-y-hidden\">\r\n\t\t<div class=\"md:basis-2/3 basis-full h-full overflow-y-auto\">\r\n\t\t\t<div class=\"bg-white mx-2 form-panel\">\r\n\t\t\t\t<div class=\"p-2 flex-1\">\r\n\t\t\t\t\t<form [formGroup]=\"form().form!\">\r\n\t\t\t\t\t\t<custom-form\r\n\t\t\t\t\t\t\t#cForm\r\n\t\t\t\t\t\t\t[options]=\"formOptions\"\r\n\t\t\t\t\t\t\t[upsert]=\"upsertPrm\"\r\n\t\t\t\t\t\t\t[model]=\"getPrm.data ?? {}\"></custom-form>\r\n\t\t\t\t\t</form>\r\n\t\t\t\t</div>\r\n\t\t\t\t@if (gridList() && gridList().length > 1) {\r\n\t\t\t\t\t<div class=\"relative mb-2\">\r\n\t\t\t\t\t\t<p-tabs [(value)]=\"indexValue\">\r\n\t\t\t\t\t\t\t<p-tablist>\r\n\t\t\t\t\t\t\t\t@for (fchild of gridList(); let i = $index; track fchild) {\r\n\t\t\t\t\t\t\t\t\t<p-tab [value]=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t{{ fchild.i18nKey ? i18n.fanyi(fchild.i18nKey) : fchild.title }}\r\n\t\t\t\t\t\t\t\t\t</p-tab>\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t</p-tablist>\r\n\t\t\t\t\t\t</p-tabs>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t}\r\n\t\t\t\t@for (grid of gridList(); let i = $index; track grid) {\r\n\t\t\t\t\t<custom-grid\r\n\t\t\t\t\t\t#customGrid\r\n\t\t\t\t\t\t[hidden]=\"indexValue != i\"\r\n\t\t\t\t\t\t[rowData]=\"getPrm.data?.[grid.subDataKey!] || []\"\r\n\t\t\t\t\t\t[upsert]=\"upsertPrm\"\r\n\t\t\t\t\t\t(deleteEmit)=\"delRows($event)\"\r\n\t\t\t\t\t\t[addType]=\"grid.subTableSource\"\r\n\t\t\t\t\t\t(addEmit)=\"dataSourceShow()\"\r\n\t\t\t\t\t\t[gridOptions]=\"grid.gridOptions\"\r\n\t\t\t\t\t\t[authLevel]=\"authLevel()\"\r\n\t\t\t\t\t\t[selectData]=\"grid.selectData\">\r\n\t\t\t\t\t</custom-grid>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<div class=\"md:basis-1/3 basis-full h-full overflow-y-auto\">\r\n\t\t\t<custom-log [logs]=\"getPrm.data?.log ?? []\"></custom-log>\r\n\t\t</div>\r\n\t</div>\r\n</div>\r\n<row-selector\r\n\t[(visible)]=\"visible\"\r\n\t[searchPrm]=\"dialogSearchPrm\"\r\n\t[gridOptions]=\"selectOptions\"\r\n\t(onOk)=\"onOk($event)\">\r\n</row-selector>\r\n", styles: ["@charset \"UTF-8\";.main{height:calc(100vh - 140px)}:host ::ng-deep .main .ag-root-wrapper{border-left:none!important;border-right:none!important;border-bottom:none!important}.form-panel{border:solid 1px #dbdbdb}\n"], dependencies: [{ kind: "ngmodule", type: ButtonModule }, { kind: "component", type: i2$3.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "variant", "style", "styleClass", "badgeClass", "badgeSeverity", "ariaLabel", "autofocus", "fluid", "buttonProps"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i2$1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i2$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i2$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: FormComponent, selector: "custom-form", inputs: ["options", "model", "upsert"] }, { kind: "component", type: LogComponent, selector: "custom-log", inputs: ["logs", "id"] }, { kind: "component", type: CrumbActionComponent, selector: "app-crumb-action", inputs: ["isShowCog", "addVisible", "newUrl", "onExport", "outlined", "isList", "authLevel", "actionList", "data"], outputs: ["saveEvent", "cancelEvent", "actionEvent"] }, { kind: "component", type: StepsComponent, selector: "custom-steps", inputs: ["steps", "current", "authLevel"], outputs: ["change"] }, { kind: "component", type: GridComponent, selector: "custom-grid", inputs: ["gridOptions", "upsert", "rowData", "searchPrm", "addType", "selectData", "showAct", "actPos", "authLevel"], outputs: ["searchPrmChange", "deleteEmit", "addEmit"] }, { kind: "ngmodule", type: TabsModule }, { kind: "component", type: i3$1.Tabs, selector: "p-tabs", inputs: ["value", "scrollable", "lazy", "selectOnFocus", "showNavigators", "tabindex"], outputs: ["valueChange"] }, { kind: "component", type: i3$1.TabList, selector: "p-tablist" }, { kind: "component", type: i3$1.Tab, selector: "p-tab", inputs: ["value", "disabled"], outputs: ["valueChange"] }, { kind: "component", type: RowSelectorComponent, selector: "row-selector", inputs: ["title", "gridOptions", "searchPrm", "visible"], outputs: ["onOk", "visibleChange"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
6593
6607
  }
6594
6608
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PageFormComponent, decorators: [{
6595
6609
  type: Component,
@@ -6604,7 +6618,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
6604
6618
  TabsModule,
6605
6619
  RowSelectorComponent,
6606
6620
  TranslatePipe,
6607
- ], providers: [], template: "<div class=\"md:overflow-hidden\">\r\n\t<div class=\"flex items-center justify-between py-1 px-1 border-b-[1px] border-[#dbdbdb] bg-white\">\r\n\t\t<app-crumb-action\r\n\t\t\t[addVisible]=\"addVisible()\"\r\n\t\t\t[newUrl]=\"newUrl\"\r\n\t\t\t[isShowCog]=\"true\"\r\n\t\t\t[outlined]=\"true\"\r\n\t\t\t[authLevel]=\"authLevel()\"\r\n\t\t\t[actionList]=\"actionList()\"\r\n\t\t\t(actionEvent)=\"authClick($event)\"\r\n\t\t\t(saveEvent)=\"submitForm()\">\r\n\t\t</app-crumb-action>\r\n\t\t<div class=\"hrefBtnList\">\r\n\t\t\t@if (id) {\r\n\t\t\t\t@for (btn of hrefBtnList(); track btn) {\r\n\t\t\t\t\t<p-button\r\n\t\t\t\t\t\t[variant]=\"btn?.variant\"\r\n\t\t\t\t\t\t[severity]=\"btn?.severity\"\r\n\t\t\t\t\t\tclass=\"mr-[6px]\"\r\n\t\t\t\t\t\t[icon]=\"btn?.icon\"\r\n\t\t\t\t\t\tlabel=\"{{ btn.i18nKey ? i18n.fanyi(btn.i18nKey) : btn.label }}\"\r\n\t\t\t\t\t\t(click)=\"goRun(btn)\">\r\n\t\t\t\t\t</p-button>\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t</div>\r\n\t\t<div></div>\r\n\t</div>\r\n\t<div class=\"flex\">\r\n\t\t<div class=\"px-2 flex flex-wrap items-center md:basis-2/3 basis-full\">\r\n\t\t\t<div class=\"hidden md:basis-1/3 py-1 basis-full md:flex items-center gap-4 flex-row order-1\">\r\n\t\t\t\t@for (action of actionList(); let i = $index; track action) {\r\n\t\t\t\t\t<p-button\r\n\t\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t\t\t[variant]=\"action?.variant\"\r\n\t\t\t\t\t\t[severity]=\"action?.severity\"\r\n\t\t\t\t\t\t[icon]=\"getPrm.data?.icon\"\r\n\t\t\t\t\t\t[label]=\"action.i18nKey ? (action.i18nKey | translate) : action.label\"\r\n\t\t\t\t\t\t[disabled]=\"action.btnDisabled ? action.btnDisabled(getPrm.data) : false\"\r\n\t\t\t\t\t\t[styleClass]=\"(action.auth || 0) > (authLevel() || 0) || !!action.btnHidden?.(getPrm.data) ? 'hidden' : 'block'\"\r\n\t\t\t\t\t\t(onClick)=\"action.onClick != '' && action.onClick?.(getPrm.data)\">\r\n\t\t\t\t\t</p-button>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t\t<div class=\"md:basis-2/3 basis-full flex md:flex-row-reverse flex-row md:order-2 order-first w-full\">\r\n\t\t\t\t<custom-steps\r\n\t\t\t\t\t#customSteps\r\n\t\t\t\t\tclass=\"w-full\"\r\n\t\t\t\t\t[steps]=\"statusSteps()\"\r\n\t\t\t\t\t[current]=\"getPrm.data && getPrm.data[statusKey()] !== undefined ? getPrm.data[statusKey()] : 0\"\r\n\t\t\t\t\t[authLevel]=\"authLevel()\"\r\n\t\t\t\t\t(change)=\"statusChange($event, customSteps)\">\r\n\t\t\t\t</custom-steps>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n\t<div class=\"main flex flex-wrap md:overflow-y-hidden\">\r\n\t\t<div class=\"md:basis-2/3 basis-full h-full overflow-y-auto\">\r\n\t\t\t<div class=\"bg-white mx-2 form-panel\">\r\n\t\t\t\t<div class=\"p-2 flex-1\">\r\n\t\t\t\t\t<form [formGroup]=\"form().form!\">\r\n\t\t\t\t\t\t<custom-form\r\n\t\t\t\t\t\t\t#cForm\r\n\t\t\t\t\t\t\t[options]=\"formOptions\"\r\n\t\t\t\t\t\t\t[upsert]=\"upsertPrm\"\r\n\t\t\t\t\t\t\t[model]=\"getPrm.data ?? {}\"></custom-form>\r\n\t\t\t\t\t</form>\r\n\t\t\t\t</div>\r\n\t\t\t\t@if (gridList() && gridList().length > 1) {\r\n\t\t\t\t\t<div class=\"relative mb-2\">\r\n\t\t\t\t\t\t<p-tabs [(value)]=\"indexValue\">\r\n\t\t\t\t\t\t\t<p-tablist>\r\n\t\t\t\t\t\t\t\t@for (fchild of gridList(); let i = $index; track fchild) {\r\n\t\t\t\t\t\t\t\t\t<p-tab [value]=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t{{ fchild.i18nKey ? i18n.fanyi(fchild.i18nKey) : fchild.title }}\r\n\t\t\t\t\t\t\t\t\t</p-tab>\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t</p-tablist>\r\n\t\t\t\t\t\t</p-tabs>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t}\r\n\t\t\t\t@for (grid of gridList(); let i = $index; track grid) {\r\n\t\t\t\t\t<custom-grid\r\n\t\t\t\t\t\t#customGrid\r\n\t\t\t\t\t\t[hidden]=\"indexValue != i\"\r\n\t\t\t\t\t\t[rowData]=\"getPrm.data?.[grid.subDataKey!] || []\"\r\n\t\t\t\t\t\t[upsert]=\"upsertPrm\"\r\n\t\t\t\t\t\t(deleteEmit)=\"delRows($event)\"\r\n\t\t\t\t\t\t[addType]=\"grid.subTableSource\"\r\n\t\t\t\t\t\t(addEmit)=\"dataSourceShow()\"\r\n\t\t\t\t\t\t[gridOptions]=\"grid.gridOptions\"\r\n\t\t\t\t\t\t[authLevel]=\"authLevel()\"\r\n\t\t\t\t\t\t[selectData]=\"grid.selectData\">\r\n\t\t\t\t\t</custom-grid>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<div class=\"md:basis-1/3 basis-full h-full overflow-y-auto\">\r\n\t\t\t<custom-log [logs]=\"getPrm.data?.log ?? []\"></custom-log>\r\n\t\t</div>\r\n\t</div>\r\n</div>\r\n<row-selector\r\n\t[(visible)]=\"visible\"\r\n\t[searchPrm]=\"dialogSearchPrm\"\r\n\t[gridOptions]=\"selectOptions\"\r\n\t(onOk)=\"onOk($event)\">\r\n</row-selector>\r\n", styles: ["@charset \"UTF-8\";.main{height:calc(100vh - 140px)}:host ::ng-deep .main .ag-root-wrapper{border-left:none!important;border-right:none!important;border-bottom:none!important}.form-panel{border:solid 1px #dbdbdb}\n"] }]
6621
+ ], providers: [], template: "<div class=\"md:overflow-hidden\">\r\n\t<div class=\"flex items-center justify-between py-1 px-1 border-b-[1px] border-[#dbdbdb] bg-white\">\r\n\t\t<app-crumb-action\r\n\t\t\t[addVisible]=\"addVisible()\"\r\n\t\t\t[newUrl]=\"newUrl\"\r\n\t\t\t[isShowCog]=\"true\"\r\n\t\t\t[outlined]=\"true\"\r\n\t\t\t[authLevel]=\"authLevel()\"\r\n\t\t\t[actionList]=\"actionList()\"\r\n\t\t\t[data]=\"getPrm.data??{}\"\r\n\t\t\t(actionEvent)=\"authClick($event)\"\r\n\t\t\t(saveEvent)=\"submitForm()\">\r\n\t\t</app-crumb-action>\r\n\t\t<div class=\"hrefBtnList\">\r\n\t\t\t@if (id) {\r\n\t\t\t\t@for (btn of hrefBtnList(); track btn) {\r\n\t\t\t\t\t<p-button\r\n\t\t\t\t\t\t[variant]=\"btn?.variant\"\r\n\t\t\t\t\t\t[severity]=\"btn?.severity\"\r\n\t\t\t\t\t\tclass=\"mr-[6px]\"\r\n\t\t\t\t\t\t[icon]=\"btn?.icon\"\r\n\t\t\t\t\t\tlabel=\"{{ btn.i18nKey ? i18n.fanyi(btn.i18nKey) : btn.label }}\"\r\n\t\t\t\t\t\t(click)=\"goRun(btn)\">\r\n\t\t\t\t\t</p-button>\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t</div>\r\n\t\t<div></div>\r\n\t</div>\r\n\t<div class=\"flex\">\r\n\t\t<div class=\"px-2 flex flex-wrap items-center md:basis-2/3 basis-full\">\r\n\t\t\t<div class=\"hidden md:basis-1/3 py-1 basis-full md:flex items-center gap-4 flex-row order-1\">\r\n\t\t\t\t@for (action of actionList(); let i = $index; track action) {\r\n\t\t\t\t\t<p-button\r\n\t\t\t\t\t\tsize=\"small\"\r\n\t\t\t\t\t\t[variant]=\"action?.variant\"\r\n\t\t\t\t\t\t[severity]=\"action?.severity\"\r\n\t\t\t\t\t\t[icon]=\"getPrm.data?.icon\"\r\n\t\t\t\t\t\t[label]=\"action.i18nKey ? (action.i18nKey | translate) : action.label\"\r\n\t\t\t\t\t\t[disabled]=\"action.btnDisabled ? action.btnDisabled(getPrm.data) : false\"\r\n\t\t\t\t\t\t[styleClass]=\"(action.auth || 0) > (authLevel() || 0) || !!action.btnHidden?.(getPrm.data) ? 'hidden' : 'block'\"\r\n\t\t\t\t\t\t(onClick)=\"action.onClick != '' && action.onClick?.(getPrm.data)\">\r\n\t\t\t\t\t</p-button>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t\t<div class=\"md:basis-2/3 basis-full flex md:flex-row-reverse flex-row md:order-2 order-first w-full\">\r\n\t\t\t\t<custom-steps\r\n\t\t\t\t\t#customSteps\r\n\t\t\t\t\tclass=\"w-full\"\r\n\t\t\t\t\t[steps]=\"statusSteps()\"\r\n\t\t\t\t\t[current]=\"getPrm.data && getPrm.data[statusKey()] !== undefined ? getPrm.data[statusKey()] : 0\"\r\n\t\t\t\t\t[authLevel]=\"authLevel()\"\r\n\t\t\t\t\t(change)=\"statusChange($event, customSteps)\">\r\n\t\t\t\t</custom-steps>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t</div>\r\n\t<div class=\"main flex flex-wrap md:overflow-y-hidden\">\r\n\t\t<div class=\"md:basis-2/3 basis-full h-full overflow-y-auto\">\r\n\t\t\t<div class=\"bg-white mx-2 form-panel\">\r\n\t\t\t\t<div class=\"p-2 flex-1\">\r\n\t\t\t\t\t<form [formGroup]=\"form().form!\">\r\n\t\t\t\t\t\t<custom-form\r\n\t\t\t\t\t\t\t#cForm\r\n\t\t\t\t\t\t\t[options]=\"formOptions\"\r\n\t\t\t\t\t\t\t[upsert]=\"upsertPrm\"\r\n\t\t\t\t\t\t\t[model]=\"getPrm.data ?? {}\"></custom-form>\r\n\t\t\t\t\t</form>\r\n\t\t\t\t</div>\r\n\t\t\t\t@if (gridList() && gridList().length > 1) {\r\n\t\t\t\t\t<div class=\"relative mb-2\">\r\n\t\t\t\t\t\t<p-tabs [(value)]=\"indexValue\">\r\n\t\t\t\t\t\t\t<p-tablist>\r\n\t\t\t\t\t\t\t\t@for (fchild of gridList(); let i = $index; track fchild) {\r\n\t\t\t\t\t\t\t\t\t<p-tab [value]=\"i\">\r\n\t\t\t\t\t\t\t\t\t\t{{ fchild.i18nKey ? i18n.fanyi(fchild.i18nKey) : fchild.title }}\r\n\t\t\t\t\t\t\t\t\t</p-tab>\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t</p-tablist>\r\n\t\t\t\t\t\t</p-tabs>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t}\r\n\t\t\t\t@for (grid of gridList(); let i = $index; track grid) {\r\n\t\t\t\t\t<custom-grid\r\n\t\t\t\t\t\t#customGrid\r\n\t\t\t\t\t\t[hidden]=\"indexValue != i\"\r\n\t\t\t\t\t\t[rowData]=\"getPrm.data?.[grid.subDataKey!] || []\"\r\n\t\t\t\t\t\t[upsert]=\"upsertPrm\"\r\n\t\t\t\t\t\t(deleteEmit)=\"delRows($event)\"\r\n\t\t\t\t\t\t[addType]=\"grid.subTableSource\"\r\n\t\t\t\t\t\t(addEmit)=\"dataSourceShow()\"\r\n\t\t\t\t\t\t[gridOptions]=\"grid.gridOptions\"\r\n\t\t\t\t\t\t[authLevel]=\"authLevel()\"\r\n\t\t\t\t\t\t[selectData]=\"grid.selectData\">\r\n\t\t\t\t\t</custom-grid>\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</div>\r\n\t\t<div class=\"md:basis-1/3 basis-full h-full overflow-y-auto\">\r\n\t\t\t<custom-log [logs]=\"getPrm.data?.log ?? []\"></custom-log>\r\n\t\t</div>\r\n\t</div>\r\n</div>\r\n<row-selector\r\n\t[(visible)]=\"visible\"\r\n\t[searchPrm]=\"dialogSearchPrm\"\r\n\t[gridOptions]=\"selectOptions\"\r\n\t(onOk)=\"onOk($event)\">\r\n</row-selector>\r\n", styles: ["@charset \"UTF-8\";.main{height:calc(100vh - 140px)}:host ::ng-deep .main .ag-root-wrapper{border-left:none!important;border-right:none!important;border-bottom:none!important}.form-panel{border:solid 1px #dbdbdb}\n"] }]
6608
6622
  }], ctorParameters: () => [], propDecorators: { cForm: [{
6609
6623
  type: ViewChild,
6610
6624
  args: ['cForm']
@@ -6638,7 +6652,7 @@ class PageGridListComponent extends AmComponent {
6638
6652
  });
6639
6653
  }
6640
6654
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PageGridListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6641
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: PageGridListComponent, isStandalone: true, selector: "app-page-grid-list", inputs: { params: { classPropertyName: "params", publicName: "params", isSignal: true, isRequired: false, transformFunction: null }, actions: { classPropertyName: "actions", publicName: "actions", isSignal: true, isRequired: false, transformFunction: null }, gridOptions: { classPropertyName: "gridOptions", publicName: "gridOptions", isSignal: true, isRequired: false, transformFunction: null }, authLevel: { classPropertyName: "authLevel", publicName: "authLevel", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: "<div class=\"flex flex-col h-full\">\r\n\t<div class=\"flex flex-wrap items-center py-1 px-1 bg-white\">\r\n\t\t<div class=\"lg:basis-1/6 md:basis-1/4 basis-1/2 flex justify-start order-1\">\r\n\t\t\t<app-crumb-action\r\n\t\t\t\t[addVisible]=\"params().addVisible\"\r\n\t\t\t\t[newUrl]=\"params().newUrl\"\r\n\t\t\t\t[onExport]=\"params().onExport\"\r\n\t\t\t\t[isList]=\"true\"\r\n\t\t\t\t[isShowCog]=\"true\"\r\n\t\t\t\t[authLevel]=\"authLevel()\">\r\n\t\t\t</app-crumb-action>\r\n\t\t</div>\r\n\t\t<div class=\"lg:basis-4/6 md:basis-1/2 basis-full flex justify-center items-center md:order-2 order-last\">\r\n\t\t\t<custom-head\r\n\t\t\t\tclass=\"max-lg:min-w-full\"\r\n\t\t\t\t[actions]=\"actions()\"\r\n\t\t\t\t[grid]=\"grid\"\r\n\t\t\t\t[authLevel]=\"authLevel()\"\r\n\t\t\t\t[gridOptions]=\"gridOptions()\"></custom-head>\r\n\t\t</div>\r\n\t\t<div class=\"lg:basis-1/6 md:basis-1/4 basis-1/2 flex justify-end order-3\">\r\n\t\t\t<custom-pager></custom-pager>\r\n\t\t</div>\r\n\t</div>\r\n\t<div class=\"flex-1\">\r\n\t\t<custom-grid\r\n\t\t\t#grid\r\n\t\t\t[upsert]=\"upsertPrm\"\r\n\t\t\t[(searchPrm)]=\"searchPrm\"\r\n\t\t\t[showAct]=\"false\"\r\n\t\t\t[gridOptions]=\"gridOptions()!\">\r\n\t\t</custom-grid>\r\n\t</div>\r\n</div>\r\n<app-import\r\n\t[fileName]=\"params()?.importFileName\"\r\n\t[funcName]=\"params()?.importFuncName\"\r\n\t[orgField]=\"params()?.importOrgField\"\r\n\t[modelName]=\"gridOptions()!.modelName ?? ''\">\r\n</app-import>\r\n", styles: [".ms-grid{background-color:#efefef}.ms-content{border-top:solid 1px #dbdbdb;background-color:#f9fafb}.mode-hide{display:none}\n"], dependencies: [{ kind: "component", type: GridComponent, selector: "custom-grid", inputs: ["gridOptions", "upsert", "rowData", "searchPrm", "addType", "selectData", "showAct", "actPos", "authLevel"], outputs: ["searchPrmChange", "deleteEmit", "addEmit"] }, { kind: "component", type: CrumbActionComponent, selector: "app-crumb-action", inputs: ["isShowCog", "addVisible", "newUrl", "onExport", "outlined", "isList", "authLevel", "actionList"], outputs: ["saveEvent", "cancelEvent", "actionEvent"] }, { kind: "component", type: PagerComponent, selector: "custom-pager" }, { kind: "component", type: HeadComponent, selector: "custom-head", inputs: ["gridOptions", "grid", "actions", "authLevel"] }, { kind: "component", type: ImportComponent, selector: "app-import", inputs: ["visible", "fileName", "funcName", "orgField", "modelName"], outputs: ["visibleChange"] }], encapsulation: i0.ViewEncapsulation.None }); }
6655
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: PageGridListComponent, isStandalone: true, selector: "app-page-grid-list", inputs: { params: { classPropertyName: "params", publicName: "params", isSignal: true, isRequired: false, transformFunction: null }, actions: { classPropertyName: "actions", publicName: "actions", isSignal: true, isRequired: false, transformFunction: null }, gridOptions: { classPropertyName: "gridOptions", publicName: "gridOptions", isSignal: true, isRequired: false, transformFunction: null }, authLevel: { classPropertyName: "authLevel", publicName: "authLevel", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: "<div class=\"flex flex-col h-full\">\r\n\t<div class=\"flex flex-wrap items-center py-1 px-1 bg-white\">\r\n\t\t<div class=\"lg:basis-1/6 md:basis-1/4 basis-1/2 flex justify-start order-1\">\r\n\t\t\t<app-crumb-action\r\n\t\t\t\t[addVisible]=\"params().addVisible\"\r\n\t\t\t\t[newUrl]=\"params().newUrl\"\r\n\t\t\t\t[onExport]=\"params().onExport\"\r\n\t\t\t\t[isList]=\"true\"\r\n\t\t\t\t[isShowCog]=\"true\"\r\n\t\t\t\t[authLevel]=\"authLevel()\">\r\n\t\t\t</app-crumb-action>\r\n\t\t</div>\r\n\t\t<div class=\"lg:basis-4/6 md:basis-1/2 basis-full flex justify-center items-center md:order-2 order-last\">\r\n\t\t\t<custom-head\r\n\t\t\t\tclass=\"max-lg:min-w-full\"\r\n\t\t\t\t[actions]=\"actions()\"\r\n\t\t\t\t[grid]=\"grid\"\r\n\t\t\t\t[authLevel]=\"authLevel()\"\r\n\t\t\t\t[gridOptions]=\"gridOptions()\"></custom-head>\r\n\t\t</div>\r\n\t\t<div class=\"lg:basis-1/6 md:basis-1/4 basis-1/2 flex justify-end order-3\">\r\n\t\t\t<custom-pager></custom-pager>\r\n\t\t</div>\r\n\t</div>\r\n\t<div class=\"flex-1\">\r\n\t\t<custom-grid\r\n\t\t\t#grid\r\n\t\t\t[upsert]=\"upsertPrm\"\r\n\t\t\t[(searchPrm)]=\"searchPrm\"\r\n\t\t\t[showAct]=\"false\"\r\n\t\t\t[gridOptions]=\"gridOptions()!\">\r\n\t\t</custom-grid>\r\n\t</div>\r\n</div>\r\n<app-import\r\n\t[fileName]=\"params()?.importFileName\"\r\n\t[funcName]=\"params()?.importFuncName\"\r\n\t[orgField]=\"params()?.importOrgField\"\r\n\t[modelName]=\"gridOptions()!.modelName ?? ''\">\r\n</app-import>\r\n", styles: [".ms-grid{background-color:#efefef}.ms-content{border-top:solid 1px #dbdbdb;background-color:#f9fafb}.mode-hide{display:none}\n"], dependencies: [{ kind: "component", type: GridComponent, selector: "custom-grid", inputs: ["gridOptions", "upsert", "rowData", "searchPrm", "addType", "selectData", "showAct", "actPos", "authLevel"], outputs: ["searchPrmChange", "deleteEmit", "addEmit"] }, { kind: "component", type: CrumbActionComponent, selector: "app-crumb-action", inputs: ["isShowCog", "addVisible", "newUrl", "onExport", "outlined", "isList", "authLevel", "actionList", "data"], outputs: ["saveEvent", "cancelEvent", "actionEvent"] }, { kind: "component", type: PagerComponent, selector: "custom-pager" }, { kind: "component", type: HeadComponent, selector: "custom-head", inputs: ["gridOptions", "grid", "actions", "authLevel"] }, { kind: "component", type: ImportComponent, selector: "app-import", inputs: ["visible", "fileName", "funcName", "orgField", "modelName"], outputs: ["visibleChange"] }], encapsulation: i0.ViewEncapsulation.None }); }
6642
6656
  }
6643
6657
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PageGridListComponent, decorators: [{
6644
6658
  type: Component,
@@ -6825,5 +6839,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
6825
6839
  * Generated bundle index. Do not edit.
6826
6840
  */
6827
6841
 
6828
- export { ActionService, ActionsComponent, AmComponent, AsyncRenderer, CellEditAutoCompleteComponent, CellEditDatePickerComponent, CellEditInputNumberCompoent, CellEditInputTextCompoent, CellEditSelectComponent, CrumbActionComponent, FormComponent, GridComponent, HeadComponent, I18N_Token, I18nService, ImportComponent, LANGS, LinkRenderer, LogComponent, PageFormComponent, PageGridListComponent, PagerComponent, RowSelectorComponent, SearchComponent, StepsComponent, ThemeConfigComponent, ThemeConfigService, UserHistoryService, compileTsToJs, createCircularIterator, filterObjectByKeys, formTypeToProps, generateUniqueId, gridUtils, isJSONParsable, parseFunctions, toPascalCase };
6842
+ export { ActionService, ActionsComponent, AmComponent, AsyncRenderer, CellEditAutoCompleteComponent, CellEditDatePickerComponent, CellEditInputNumberCompoent, CellEditInputTextCompoent, CellEditSelectComponent, CrumbActionComponent, FormComponent, GridComponent, HeadComponent, I18N_Token, I18nService, ImportComponent, LANGS, LinkRenderer, LogComponent, PageFormComponent, PageGridListComponent, PagerComponent, RowSelectorComponent, SearchComponent, StepsComponent, ThemeConfigComponent, ThemeConfigService, UserHistoryService, compileTsToJs, convertAct, createCircularIterator, filterObjectByKeys, formTypeToProps, generateUniqueId, gridUtils, isJSONParsable, parseFunctions, toPascalCase };
6829
6843
  //# sourceMappingURL=imm-element-ui.mjs.map