ngx-axis-appforge 0.0.49 → 0.0.51
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.
- package/axis-components/edit-table/index.d.ts +12 -4
- package/axis-components/table/index.d.ts +9 -12
- package/axis-components/table-helper/index.d.ts +45 -13
- package/axis-components/transfer/index.d.ts +1 -0
- package/fesm2022/ngx-axis-appforge-axis-components-design.mjs +1 -1
- package/fesm2022/ngx-axis-appforge-axis-components-design.mjs.map +1 -1
- package/fesm2022/ngx-axis-appforge-axis-components-edit-table-design.mjs +72 -30
- package/fesm2022/ngx-axis-appforge-axis-components-edit-table-design.mjs.map +1 -1
- package/fesm2022/ngx-axis-appforge-axis-components-edit-table.mjs +66 -12
- package/fesm2022/ngx-axis-appforge-axis-components-edit-table.mjs.map +1 -1
- package/fesm2022/ngx-axis-appforge-axis-components-table-design.mjs +42 -10
- package/fesm2022/ngx-axis-appforge-axis-components-table-design.mjs.map +1 -1
- package/fesm2022/ngx-axis-appforge-axis-components-table-helper.mjs +227 -45
- package/fesm2022/ngx-axis-appforge-axis-components-table-helper.mjs.map +1 -1
- package/fesm2022/ngx-axis-appforge-axis-components-table.mjs +60 -21
- package/fesm2022/ngx-axis-appforge-axis-components-table.mjs.map +1 -1
- package/fesm2022/ngx-axis-appforge-axis-components-transfer.mjs +1 -0
- package/fesm2022/ngx-axis-appforge-axis-components-transfer.mjs.map +1 -1
- package/fesm2022/ngx-axis-appforge-core.mjs.map +1 -1
- package/package.json +99 -99
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngx-axis-appforge-axis-components-edit-table-design.mjs","sources":["../../../axis-components/edit-table/design/edit-table-setting/edit-table-setting.ts","../../../axis-components/edit-table/design/edit-table-setting/edit-table-setting.html","../../../axis-components/edit-table/design/menu/menu.ts","../../../axis-components/edit-table/design/menu/menu.html","../../../axis-components/edit-table/design/edit-table-field-setting/edit-table-field-setting.ts","../../../axis-components/edit-table/design/edit-table-field-setting/edit-table-field-setting.html","../../../axis-components/edit-table/design/config.ts","../../../axis-components/edit-table/design/ngx-axis-appforge-axis-components-edit-table-design.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, computed } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule, UntypedFormGroup } from '@angular/forms';\nimport { NzFormModule } from 'ng-zorro-antd/form';\nimport { NzGridModule } from 'ng-zorro-antd/grid';\nimport { NzCollapseModule } from 'ng-zorro-antd/collapse';\nimport { InputTrigger, FunFieldValueBase, FunField, BaseDesignSetting, baseFbConfig, baseFunField, FunFieldOptions, FormValidators, DynamicDirective, ScopeInfo, EventDesc, valueFbConfig, valueFunField, ValueDesignSetting } from 'ngx-axis-appforge/core';\nimport { NzInputNumberModule } from 'ng-zorro-antd/input-number';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { NzSwitchModule } from 'ng-zorro-antd/switch';\nimport { NzSelectModule } from 'ng-zorro-antd/select';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\n\n@Component({\n selector: 'axis-design-edit-table-setting',\n imports: [NzFormModule, FormsModule, ReactiveFormsModule, FunField, NzGridModule, NzCollapseModule, BaseDesignSetting, InputTrigger, NzInputNumberModule, NzInputModule, NzSwitchModule, NzSelectModule, DynamicDirective, NzRadioModule, ValueDesignSetting],\n templateUrl: './edit-table-setting.html',\n styleUrl: './edit-table-setting.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EditTableSetting extends FunFieldValueBase {\n\n override fg: UntypedFormGroup = this.fb.group({\n ...baseFbConfig,\n ...valueFbConfig,\n disabledAppend: [undefined, FormValidators.requiredFun],\n disabledRemove: [undefined, FormValidators.requiredFun],\n disabledRemoveFn: [],\n maxLength: [],\n addInitData: [],\n size: [undefined, FormValidators.requiredFun],\n showOrder: [undefined, FormValidators.requiredFun],\n showDataSize: [undefined, FormValidators.requiredFun],\n bordered: [undefined, FormValidators.requiredFun],\n outerBordered: [undefined, FormValidators.requiredFun],\n width: [],\n showCheckbox: [undefined, FormValidators.requiredFun],\n checkedFormName: [\"checked\", FormValidators.required],\n singleCheck: [undefined, FormValidators.requiredFun],\n disableCheckboxFn: [],\n showTotal: [undefined, FormValidators.requiredFun],\n totalTitle: [],\n showPagination: [true, FormValidators.required],\n pageSize: [undefined, FormValidators.requiredFun],\n showSizeChanger: [undefined, FormValidators.requiredFun],\n pageSizeOptions: [\"10,20,50,100\", [FormValidators.required, FormValidators.pattern(/^\\d+(?:,\\d+)*$/)]],\n });\n\n protected override funFields: FunFieldOptions = {\n ...baseFunField,\n ...valueFunField,\n disabledAppend: {\n defaultValue: false\n },\n disabledRemove: {\n defaultValue: false\n },\n maxLength: {\n defaultValue: null\n },\n size: {\n defaultValue: \"middle\"\n },\n showOrder: {\n defaultValue: true\n },\n showDataSize: {\n defaultValue: true\n },\n bordered: {\n defaultValue: false\n },\n outerBordered: {\n defaultValue: false\n },\n width: {\n defaultValue: null\n },\n showCheckbox: {\n defaultValue: false\n },\n singleCheck: {\n defaultValue: false\n },\n showTotal: {\n defaultValue: false\n },\n totalTitle: {\n defaultValue: \"合计\"\n },\n pageSize: {\n defaultValue: 10\n },\n showSizeChanger: {\n defaultValue: true\n },\n addInitData: {\n defaultValue: undefined\n },\n };\n\n rowScopes = computed<ScopeInfo[]>(() => {\n const row: any = {};\n this.value().fields?.forEach((field: any) => {\n row[field.field] = \"示例数据\";\n });\n return [{\n scopeId: this.formValue()?.id + '.row',\n scopeName: \"可编辑表格行\",\n ds: { row }\n }];\n });\n\n}\n","<form [formGroup]=\"fg\" nz-form>\n <nz-collapse [nzBordered]=\"false\">\n <nz-collapse-panel nzHeader=\"基本设置\" nzActive>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 禁用添加\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"disabledAppend\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 禁用删除\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"disabledRemove\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 禁用删除\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"disabledRemoveFn\" [noListen]=\"true\" [onlyFun]=\"true\"\n [scopes]=\"rowScopes()\" editTip=\"返回boolean以控制是否禁用当前行的删除按钮\"></axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 最大行数\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"maxLength\">\n <nz-input-number ngModel [ngModelOptions]=\"{standalone:true}\" style=\"width: 100%;\" [nzMin]=\"1\">\n </nz-input-number>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 默认行数据\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"addInitData\">\n <ng-container [axisDynamic]=\"{component:'axis-components/input-json',inuse:true}\"\n [standalone]=\"true\" ngModel [ngModelOptions]=\"{standalone:true}\"></ng-container>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n </nz-collapse-panel>\n <nz-collapse-panel nzHeader=\"外观设置\">\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 表格大小\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"size\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\" nzSize=\"small\">\n <label nz-radio-button nzValue=\"small\">小</label>\n <label nz-radio-button nzValue=\"middle\">中</label>\n <label nz-radio-button nzValue=\"default\">大</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 显示序号\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"showOrder\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 显示数据条数\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"showDataSize\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 显示边框\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"bordered\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 显示外边框\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"outerBordered\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzTooltipTitle=\"不设置时,自动计算滚动宽度,自动计算不合理时手动设置\">\n 表格滚动宽度\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"width\">\n <nz-input-number ngModel [ngModelOptions]=\"{standalone:true}\" style=\"width: 100%;\" [nzMin]=\"0\">\n <span nzInputAddonAfter>px</span>\n </nz-input-number>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n </nz-collapse-panel>\n <nz-collapse-panel nzHeader=\"选择器设置\">\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 行选择器\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"showCheckbox\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n @if (formValue().showCheckbox?.funMode || formValue()?.showCheckbox?.originValue) {\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 选中字段名\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <input nz-input formControlName=\"checkedFormName\" />\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 单选\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"singleCheck\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 选择器禁用脚本\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"disableCheckboxFn\" [onlyFun]=\"true\" [noListen]=\"true\"\n [scopes]=\"rowScopes()\">\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n </nz-collapse-panel>\n <nz-collapse-panel nzHeader=\"数据统计(未实现)\">\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 启用总计\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"showTotal\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n @if (formValue().showTotal?.funMode || formValue()?.showTotal?.originValue) {\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 总计标题\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"totalTitle\">\n <input nz-input ngModel [ngModelOptions]=\"{standalone:true}\" />\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n </nz-collapse-panel>\n <nz-collapse-panel nzHeader=\"分页设置\">\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 是否分页\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <nz-switch formControlName=\"showPagination\"></nz-switch>\n </nz-form-control>\n </nz-form-item>\n @if (formValue()?.showPagination) {\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 默认行数\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"pageSize\">\n <nz-input-number style=\"width: 100%;\" ngModel [ngModelOptions]=\"{standalone:true}\" [nzMin]=\"1\">\n </nz-input-number>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 行数修改器\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"showSizeChanger\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n @if (formValue().showSizeChanger?.funMode || formValue()?.showSizeChanger?.originValue) {\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired nzTooltipTitle=\"用逗号分隔,例:10,20,50,100\">\n 页数可选值\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <input nz-input formControlName=\"pageSizeOptions\" placeholder=\"例:10,20,50,100\" />\n </nz-form-control>\n </nz-form-item>\n }\n }\n </nz-collapse-panel>\n <axis-value-design-setting [fg]=\"fg\"></axis-value-design-setting>\n <axis-base-design-setting [fg]=\"fg\"></axis-base-design-setting>\n <axis-input-trigger formControlName=\"triggeEvents\" [internalTriggers]=\"['valueChange']\"></axis-input-trigger>\n </nz-collapse>\n</form>","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { NzDividerModule } from 'ng-zorro-antd/divider';\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { BaseMenu, CommonMenu } from 'ngx-axis-appforge/core';\n\n@Component({\n selector: 'axis-design-edit-table-menu',\n imports: [NzDropDownModule, NzDividerModule, NzIconModule, CommonMenu],\n templateUrl: './menu.html',\n styleUrl: './menu.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class Menu extends BaseMenu {\n\n addField() {\n const field = `unnamed#${this.optionsNodes.current.options.fields.length + 1}`;\n this.optionsNodes.current.options.fields.push({\n field: field,\n title: \"未命名\",\n inuse: true,\n });\n this.onChange?.({ nextNodeId: `${this.optionsNodes.parent?.id}.${field}`, historyDesc: \"添加表格字段\" });\n }\n}\n","<nz-dropdown-menu #menu=\"nzDropdownMenu\">\n <ul nz-menu>\n <li nz-menu-item (click)=\"addField()\">\n <i nz-icon nzType=\"plus\" nzTheme=\"outline\"></i>\n <nz-divider nzType=\"vertical\"></nz-divider>\n <span>添加字段</span>\n </li>\n <axis-common-menu [baseMenu]=\"this\"></axis-common-menu>\n </ul>\n</nz-dropdown-menu>","import { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule, UntypedFormGroup } from '@angular/forms';\nimport { NzCollapseModule } from 'ng-zorro-antd/collapse';\nimport { NzFormModule } from 'ng-zorro-antd/form';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { NzInputNumberModule } from 'ng-zorro-antd/input-number';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\nimport { NzSelectModule } from 'ng-zorro-antd/select';\nimport { NzSwitchModule } from 'ng-zorro-antd/switch';\nimport { FormValidators, FunFieldValueBase, FunFieldOptions, FunField, InputValidator, ScopeInfo, AXIS_DESIGN_COMPONENT_REF_FOR_SETTING_TOKEN, ValueAccess } from 'ngx-axis-appforge/core';\n\n@Component({\n selector: 'axis-design-edit-table-field-setting',\n imports: [FormsModule, NzFormModule, ReactiveFormsModule, NzCollapseModule, NzInputModule, FunField, NzRadioModule, NzSelectModule, NzInputNumberModule, NzSwitchModule, InputValidator],\n templateUrl: './edit-table-field-setting.html',\n styleUrl: './edit-table-field-setting.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EditTableFieldSetting extends FunFieldValueBase {\n\n override fg: UntypedFormGroup = this.fb.group({\n inuse: [undefined, FormValidators.requiredFun],\n field: [],\n title: [undefined, FormValidators.requiredFun],\n sortAble: [undefined, FormValidators.requiredFun],\n sortOrder: [],\n sortPriority: [],\n filterAble: [undefined, FormValidators.requiredFun],\n filterMultiple: [undefined, FormValidators.requiredFun],\n width: [],\n align: [undefined, FormValidators.requiredFun],\n freezeMode: [undefined, FormValidators.requiredFun],\n totalAble: [false, FormValidators.required],\n totalFn: [],\n validators: [],\n });\n\n protected override funFields: FunFieldOptions = {\n inuse: {\n defaultValue: true\n },\n title: {\n defaultValue: \"未命名\"\n },\n sortAble: {\n defaultValue: false\n },\n sortOrder: {\n defaultValue: null\n },\n sortPriority: {\n defaultValue: null\n },\n filterAble: {\n defaultValue: false\n },\n filterMultiple: {\n defaultValue: false\n },\n width: {\n defaultValue: null\n },\n align: {\n defaultValue: \"left\"\n },\n freezeMode: {\n defaultValue: \"none\"\n },\n };\n\n readonly elementRef = inject(AXIS_DESIGN_COMPONENT_REF_FOR_SETTING_TOKEN);\n\n filterFnScopes = computed<ScopeInfo[]>(() => {\n const data = (this.elementRef.ref?.instance as ValueAccess<any>).value();\n return [{\n scopeId: this.elementRef.options.id + '.filter.' + this.formValue().field,\n scopeName: \"过滤项\",\n ds: {\n row: data?.[0] ?? {},\n value: data?.[0]?.[this.formValue().field] ?? null\n }\n }];\n });\n\n}\n","<form [formGroup]=\"fg\" nz-form>\n <nz-collapse [nzBordered]=\"false\">\n <nz-collapse-panel nzHeader=\"基本设置\" nzActive>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 字段名\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <input nz-input formControlName=\"field\" />\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 字段标题\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"title\">\n <input nz-input ngModel [ngModelOptions]=\"{standalone:true}\" />\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 是否可用\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"inuse\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n </nz-collapse-panel>\n <nz-collapse-panel nzHeader=\"外观设置\">\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 宽度\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"width\">\n <nz-input-number ngModel [ngModelOptions]=\"{standalone:true}\" style=\"width: 100%;\" [nzMin]=\"0\">\n <span nzInputAddonAfter>px</span>\n </nz-input-number>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 对齐方式\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"align\">\n <nz-select ngModel [ngModelOptions]=\"{standalone:true}\">\n <nz-option nzValue=\"left\" nzLabel=\"左对齐\"></nz-option>\n <nz-option nzValue=\"center\" nzLabel=\"居中\"></nz-option>\n <nz-option nzValue=\"right\" nzLabel=\"右对齐\"></nz-option>\n </nz-select>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 固定方式\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"freezeMode\">\n <nz-select ngModel [ngModelOptions]=\"{standalone:true}\">\n <nz-option nzValue=\"none\" nzLabel=\"不固定\"></nz-option>\n <nz-option nzValue=\"left\" nzLabel=\"固定在左\"></nz-option>\n <nz-option nzValue=\"right\" nzLabel=\"固定在右\"></nz-option>\n </nz-select>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n </nz-collapse-panel>\n <nz-collapse-panel nzHeader=\"排序过滤\">\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 是否排序\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"sortAble\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n @if (formValue().sortAble?.funMode || formValue()?.sortAble?.originValue) {\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 默认排序方式\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"sortOrder\">\n <nz-select ngModel [ngModelOptions]=\"{standalone:true}\" nzAllowClear>\n <nz-option nzValue=\"ascend\" nzLabel=\"升序\"></nz-option>\n <nz-option nzValue=\"descend\" nzLabel=\"降序\"></nz-option>\n </nz-select>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 排序优先级\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"sortPriority\">\n <nz-input-number style=\"width: 100%;\" ngModel\n [ngModelOptions]=\"{standalone:true}\"></nz-input-number>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 是否过滤\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"filterAble\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n @if (formValue().filterAble?.funMode || formValue()?.filterAble?.originValue) {\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 多个过滤条件\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"filterMultiple\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 过滤显示函数\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"filterDisplayFn\" [scopes]=\"filterFnScopes()\" [onlyFun]=\"true\"\n [noListen]=\"true\">\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n </nz-collapse-panel>\n <nz-collapse-panel nzHeader=\"统计设置(未实现)\">\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 是否统计\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <nz-switch formControlName=\"totalAble\"></nz-switch>\n </nz-form-control>\n </nz-form-item>\n @if (formValue().totalAble) {\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 自定义统计函数\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"totalFn\" [onlyFun]=\"true\" [noListen]=\"true\">\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n </nz-collapse-panel>\n <axis-input-validator formControlName=\"validators\"></axis-input-validator>\n </nz-collapse>\n</form>","import { NextInfo, DesignBuildResult, DesignBindElementsResult, DesignConfig, OptionsNode, DataHandler, SimpleMenu } from \"ngx-axis-appforge/core\";\nimport { EditTableSetting } from \"./edit-table-setting/edit-table-setting\";\nimport { Menu } from \"./menu/menu\";\nimport { EditTableFieldSetting } from \"./edit-table-field-setting/edit-table-field-setting\";\n\nexport const Config: DesignConfig = {\n\n componentName: \"可编辑表格\",\n buildOptionsNodes(nextInfo: NextInfo): DesignBuildResult {\n const next: NextInfo[] = [];\n const children: OptionsNode[] = [];\n nextInfo.currentObject.fields?.forEach((f: any, i: number) => {\n next.push({\n parentId: nextInfo.currentObject.id + \".\" + i,\n parentObject: f,\n indexOfParent: \"child\",\n scopeId: nextInfo.currentObject.id + \".row\"\n });\n children.push(new OptionsNode({\n id: nextInfo.currentObject.id + \".\" + i,\n scopeId: nextInfo.scopeId,\n parentId: nextInfo.currentObject.id,\n parentObj: nextInfo.currentObject.fields,\n indexOfParentObj: i,\n rootOptions: f,\n name: `字段[${f.field}]`,\n icon: \"profile\",\n canSetting: true,\n settingType: EditTableFieldSetting,\n contextMenu: SimpleMenu,\n canDrag: true,\n dragType: \"axis-components/edit-table/edit-table-field\",\n canDrop: true,\n dropType: \"component\",\n dropObj: f,\n defaultDropIndex: \"child\",\n children: []\n }));\n });\n return {\n treeNode: new OptionsNode({\n parentId: nextInfo.parentId,\n scopeId: nextInfo.scopeId,\n name: \"可编辑表格\",\n canSetting: true,\n canDrag: true,\n dragType: \"component\",\n canDrop: true,\n dropType: \"axis-components/edit-table/edit-table-field\",\n dropObj: nextInfo.currentObject.fields,\n defaultDropIndex: nextInfo.currentObject.fields.length,\n parentObj: nextInfo.parentObject,\n indexOfParentObj: nextInfo.indexOfParent,\n rootOptions: nextInfo.currentObject,\n children,\n settingType: EditTableSetting,\n contextMenu: Menu,\n icon: \"form\"\n }),\n next: next,\n newScopes: [\n {\n scopeId: nextInfo.currentObject.id + \".row\",\n parentScopeId: nextInfo.scopeId,\n scopeName: \"可编辑表格行\",\n ds: {\n row: nextInfo.currentObject.data?.[0] ?? \"示例数据\"\n }\n }\n ]\n };\n },\n bindElementsOptionsNode(element: HTMLElement, options: any): DesignBindElementsResult {\n const dropElement = element.querySelector(\"thead>.ant-table-row\") as HTMLElement | undefined;\n const res: DesignBindElementsResult = {\n [options.id]: { element, dropElement: dropElement },\n };\n (options.fields as any[] | undefined)?.forEach((f, i) => {\n const fieldElement = dropElement?.querySelector(`th[data-index=\"${i}\"]`) as HTMLElement | undefined;\n const fieldChildElement = element?.querySelector(`td[data-index=\"${i}\"]`) as HTMLElement | undefined;\n res[`${options.id}.${i}`] = { element: fieldElement, dropElement: fieldChildElement }\n });\n return res\n },\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './config';\n"],"names":["i3","i4","i2","i1","i5","i7","i8"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ngx-axis-appforge-axis-components-edit-table-design.mjs","sources":["../../../axis-components/edit-table/design/edit-table-setting/edit-table-setting.ts","../../../axis-components/edit-table/design/edit-table-setting/edit-table-setting.html","../../../axis-components/edit-table/design/edit-table-field-setting/edit-table-field-setting.ts","../../../axis-components/edit-table/design/edit-table-field-setting/edit-table-field-setting.html","../../../axis-components/edit-table/design/edit-table-fields-menu/edit-table-fields-menu.ts","../../../axis-components/edit-table/design/edit-table-fields-menu/edit-table-fields-menu.html","../../../axis-components/edit-table/design/config.ts","../../../axis-components/edit-table/design/ngx-axis-appforge-axis-components-edit-table-design.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, computed } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule, UntypedFormGroup } from '@angular/forms';\nimport { NzFormModule } from 'ng-zorro-antd/form';\nimport { NzGridModule } from 'ng-zorro-antd/grid';\nimport { NzCollapseModule } from 'ng-zorro-antd/collapse';\nimport { InputTrigger, FunFieldValueBase, FunField, BaseDesignSetting, baseFbConfig, baseFunField, FunFieldOptions, FormValidators, DynamicDirective, ScopeInfo, EventDesc, valueFbConfig, valueFunField, ValueDesignSetting } from 'ngx-axis-appforge/core';\nimport { NzInputNumberModule } from 'ng-zorro-antd/input-number';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { NzSwitchModule } from 'ng-zorro-antd/switch';\nimport { NzSelectModule } from 'ng-zorro-antd/select';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\n\n@Component({\n selector: 'axis-design-edit-table-setting',\n imports: [NzFormModule, FormsModule, ReactiveFormsModule, FunField, NzGridModule, NzCollapseModule, BaseDesignSetting, InputTrigger, NzInputNumberModule, NzInputModule, NzSwitchModule, NzSelectModule, DynamicDirective, NzRadioModule, ValueDesignSetting],\n templateUrl: './edit-table-setting.html',\n styleUrl: './edit-table-setting.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EditTableSetting extends FunFieldValueBase {\n\n override fg: UntypedFormGroup = this.fb.group({\n ...baseFbConfig,\n ...valueFbConfig,\n disabledAppend: [undefined, FormValidators.requiredFun],\n disabledRemove: [undefined, FormValidators.requiredFun],\n disabledRemoveFn: [],\n maxLength: [],\n addInitData: [],\n showExpand: [false, FormValidators.required],\n expandFormName: [],\n size: [undefined, FormValidators.requiredFun],\n showOrder: [undefined, FormValidators.requiredFun],\n showDataSize: [undefined, FormValidators.requiredFun],\n bordered: [undefined, FormValidators.requiredFun],\n outerBordered: [undefined, FormValidators.requiredFun],\n width: [],\n showCheckbox: [undefined, FormValidators.requiredFun],\n checkedFormName: [\"checked\", FormValidators.required],\n singleCheck: [undefined, FormValidators.requiredFun],\n checkboxLinkageForExpand: [false, FormValidators.required],\n disableCheckboxFn: [],\n showTotal: [undefined, FormValidators.requiredFun],\n totalTitle: [],\n showPagination: [true, FormValidators.required],\n pageSize: [undefined, FormValidators.requiredFun],\n showSizeChanger: [undefined, FormValidators.requiredFun],\n pageSizeOptions: [\"10,20,50,100\", [FormValidators.required, FormValidators.pattern(/^\\d+(?:,\\d+)*$/)]],\n });\n\n protected override funFields: FunFieldOptions = {\n ...baseFunField,\n ...valueFunField,\n disabledAppend: {\n defaultValue: false\n },\n disabledRemove: {\n defaultValue: false\n },\n maxLength: {\n defaultValue: null\n },\n size: {\n defaultValue: \"middle\"\n },\n showOrder: {\n defaultValue: true\n },\n showDataSize: {\n defaultValue: true\n },\n bordered: {\n defaultValue: false\n },\n outerBordered: {\n defaultValue: false\n },\n width: {\n defaultValue: null\n },\n showCheckbox: {\n defaultValue: false\n },\n singleCheck: {\n defaultValue: false\n },\n showTotal: {\n defaultValue: false\n },\n totalTitle: {\n defaultValue: \"合计\"\n },\n pageSize: {\n defaultValue: 10\n },\n showSizeChanger: {\n defaultValue: true\n },\n addInitData: {\n defaultValue: undefined\n },\n };\n\n rowScopes = computed<ScopeInfo[]>(() => {\n const row: any = {};\n this.value().fields?.forEach((field: any) => {\n row[field.field] = \"示例数据\";\n });\n return [{\n scopeId: this.formValue()?.id + '.row',\n scopeName: \"可编辑表格行\",\n ds: { row }\n }];\n });\n\n}\n","<form [formGroup]=\"fg\" nz-form>\n <nz-collapse [nzBordered]=\"false\">\n <nz-collapse-panel nzHeader=\"基本设置\" nzActive>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 禁用添加\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"disabledAppend\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 禁用删除\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"disabledRemove\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 禁用删除\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"disabledRemoveFn\" [noListen]=\"true\" [onlyFun]=\"true\"\n [scopes]=\"rowScopes()\" editTip=\"返回boolean以控制是否禁用当前行的删除按钮\"></axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 最大行数\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"maxLength\">\n <nz-input-number ngModel [ngModelOptions]=\"{standalone:true}\" style=\"width: 100%;\" [nzMin]=\"1\">\n </nz-input-number>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 默认行数据\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"addInitData\">\n <ng-container [axisDynamic]=\"{component:'axis-components/input-json',inuse:true}\"\n [standalone]=\"true\" ngModel [ngModelOptions]=\"{standalone:true}\"></ng-container>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 扩展行\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <nz-switch formControlName=\"showExpand\"></nz-switch>\n </nz-form-control>\n </nz-form-item>\n @if (formValue().showExpand) {\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 扩展行字段名\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <input nz-input formControlName=\"expandFormName\" />\n </nz-form-control>\n </nz-form-item>\n }\n </nz-collapse-panel>\n <nz-collapse-panel nzHeader=\"外观设置\">\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 表格大小\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"size\">\n <nz-radio-group ngModel [ngModelOptions]=\"{standalone:true}\" nzSize=\"small\">\n <label nz-radio-button nzValue=\"small\">小</label>\n <label nz-radio-button nzValue=\"middle\">中</label>\n <label nz-radio-button nzValue=\"default\">大</label>\n </nz-radio-group>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 显示序号\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"showOrder\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 显示数据条数\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"showDataSize\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 显示边框\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"bordered\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 显示外边框\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"outerBordered\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzTooltipTitle=\"不设置时,自动计算滚动宽度,自动计算不合理时手动设置\">\n 表格滚动宽度\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"width\">\n <nz-input-number ngModel [ngModelOptions]=\"{standalone:true}\" style=\"width: 100%;\" [nzMin]=\"0\">\n <span nzInputAddonAfter>px</span>\n </nz-input-number>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n </nz-collapse-panel>\n <nz-collapse-panel nzHeader=\"选择器设置\">\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 行选择器\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"showCheckbox\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n @if (formValue().showCheckbox?.funMode || formValue()?.showCheckbox?.originValue) {\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 选中字段名\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <input nz-input formControlName=\"checkedFormName\" />\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 单选\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"singleCheck\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n @if (formValue().singleCheck?.funMode || !formValue()?.singleCheck?.originValue) {\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired nzTooltipTitle=\"若当前表格在其他父表格的扩展行中,可联动父表格的勾选状态\">\n 联动勾选\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <nz-switch formControlName=\"checkboxLinkageForExpand\"></nz-switch>\n </nz-form-control>\n </nz-form-item>\n }\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 选择器禁用脚本\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"disableCheckboxFn\" [onlyFun]=\"true\" [noListen]=\"true\"\n [scopes]=\"rowScopes()\">\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n </nz-collapse-panel>\n <nz-collapse-panel nzHeader=\"数据统计(未实现)\">\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 启用总计\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"showTotal\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n @if (formValue().showTotal?.funMode || formValue()?.showTotal?.originValue) {\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 总计标题\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"totalTitle\">\n <input nz-input ngModel [ngModelOptions]=\"{standalone:true}\" />\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n </nz-collapse-panel>\n <nz-collapse-panel nzHeader=\"分页设置\">\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 是否分页\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <nz-switch formControlName=\"showPagination\"></nz-switch>\n </nz-form-control>\n </nz-form-item>\n @if (formValue()?.showPagination) {\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 默认行数\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"pageSize\">\n <nz-input-number style=\"width: 100%;\" ngModel [ngModelOptions]=\"{standalone:true}\" [nzMin]=\"1\">\n </nz-input-number>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 行数修改器\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"showSizeChanger\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n @if (formValue().showSizeChanger?.funMode || formValue()?.showSizeChanger?.originValue) {\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired nzTooltipTitle=\"用逗号分隔,例:10,20,50,100\">\n 页数可选值\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <input nz-input formControlName=\"pageSizeOptions\" placeholder=\"例:10,20,50,100\" />\n </nz-form-control>\n </nz-form-item>\n }\n }\n </nz-collapse-panel>\n <axis-value-design-setting [fg]=\"fg\"></axis-value-design-setting>\n <axis-base-design-setting [fg]=\"fg\"></axis-base-design-setting>\n <axis-input-trigger formControlName=\"triggeEvents\" [internalTriggers]=\"['valueChange']\"></axis-input-trigger>\n </nz-collapse>\n</form>","import { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\nimport { FormsModule, ReactiveFormsModule, UntypedFormGroup } from '@angular/forms';\nimport { NzCollapseModule } from 'ng-zorro-antd/collapse';\nimport { NzFormModule } from 'ng-zorro-antd/form';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { NzInputNumberModule } from 'ng-zorro-antd/input-number';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\nimport { NzSelectModule } from 'ng-zorro-antd/select';\nimport { NzSwitchModule } from 'ng-zorro-antd/switch';\nimport { FormValidators, FunFieldValueBase, FunFieldOptions, FunField, InputValidator, ScopeInfo, AXIS_DESIGN_COMPONENT_REF_FOR_SETTING_TOKEN, ValueAccess } from 'ngx-axis-appforge/core';\n\n@Component({\n selector: 'axis-design-edit-table-field-setting',\n imports: [FormsModule, NzFormModule, ReactiveFormsModule, NzCollapseModule, NzInputModule, FunField, NzRadioModule, NzSelectModule, NzInputNumberModule, NzSwitchModule, InputValidator],\n templateUrl: './edit-table-field-setting.html',\n styleUrl: './edit-table-field-setting.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EditTableFieldSetting extends FunFieldValueBase {\n\n override fg: UntypedFormGroup = this.fb.group({\n inuse: [undefined, FormValidators.requiredFun],\n field: [],\n title: [undefined, FormValidators.requiredFun],\n sortAble: [undefined, FormValidators.requiredFun],\n sortOrder: [],\n sortPriority: [],\n filterAble: [undefined, FormValidators.requiredFun],\n filterMultiple: [undefined, FormValidators.requiredFun],\n width: [],\n align: [undefined, FormValidators.requiredFun],\n freezeMode: [undefined, FormValidators.requiredFun],\n totalAble: [false, FormValidators.required],\n totalFn: [],\n validators: [],\n });\n\n protected override funFields: FunFieldOptions = {\n inuse: {\n defaultValue: true\n },\n title: {\n defaultValue: \"未命名\"\n },\n sortAble: {\n defaultValue: false\n },\n sortOrder: {\n defaultValue: null\n },\n sortPriority: {\n defaultValue: null\n },\n filterAble: {\n defaultValue: false\n },\n filterMultiple: {\n defaultValue: false\n },\n width: {\n defaultValue: null\n },\n align: {\n defaultValue: \"left\"\n },\n freezeMode: {\n defaultValue: \"none\"\n },\n };\n\n readonly elementRef = inject(AXIS_DESIGN_COMPONENT_REF_FOR_SETTING_TOKEN);\n\n filterFnScopes = computed<ScopeInfo[]>(() => {\n const data = (this.elementRef.ref?.instance as ValueAccess<any>).value();\n return [{\n scopeId: this.elementRef.options.id + '.filter.' + this.formValue().field,\n scopeName: \"过滤项\",\n ds: {\n row: data?.[0] ?? {},\n value: data?.[0]?.[this.formValue().field] ?? null\n }\n }];\n });\n\n}\n","<form [formGroup]=\"fg\" nz-form>\n <nz-collapse [nzBordered]=\"false\">\n <nz-collapse-panel nzHeader=\"基本设置\" nzActive>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 字段名\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <input nz-input formControlName=\"field\" />\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 字段标题\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"title\">\n <input nz-input ngModel [ngModelOptions]=\"{standalone:true}\" />\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 是否可用\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"inuse\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n </nz-collapse-panel>\n <nz-collapse-panel nzHeader=\"外观设置\">\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 宽度\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"width\">\n <nz-input-number ngModel [ngModelOptions]=\"{standalone:true}\" style=\"width: 100%;\" [nzMin]=\"0\">\n <span nzInputAddonAfter>px</span>\n </nz-input-number>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 对齐方式\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"align\">\n <nz-select ngModel [ngModelOptions]=\"{standalone:true}\">\n <nz-option nzValue=\"left\" nzLabel=\"左对齐\"></nz-option>\n <nz-option nzValue=\"center\" nzLabel=\"居中\"></nz-option>\n <nz-option nzValue=\"right\" nzLabel=\"右对齐\"></nz-option>\n </nz-select>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 固定方式\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"freezeMode\">\n <nz-select ngModel [ngModelOptions]=\"{standalone:true}\">\n <nz-option nzValue=\"none\" nzLabel=\"不固定\"></nz-option>\n <nz-option nzValue=\"left\" nzLabel=\"固定在左\"></nz-option>\n <nz-option nzValue=\"right\" nzLabel=\"固定在右\"></nz-option>\n </nz-select>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n </nz-collapse-panel>\n <nz-collapse-panel nzHeader=\"排序过滤\">\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 是否排序\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"sortAble\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n @if (formValue().sortAble?.funMode || formValue()?.sortAble?.originValue) {\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 默认排序方式\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"sortOrder\">\n <nz-select ngModel [ngModelOptions]=\"{standalone:true}\" nzAllowClear>\n <nz-option nzValue=\"ascend\" nzLabel=\"升序\"></nz-option>\n <nz-option nzValue=\"descend\" nzLabel=\"降序\"></nz-option>\n </nz-select>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 排序优先级\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"sortPriority\">\n <nz-input-number style=\"width: 100%;\" ngModel\n [ngModelOptions]=\"{standalone:true}\"></nz-input-number>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 是否过滤\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"filterAble\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n @if (formValue().filterAble?.funMode || formValue()?.filterAble?.originValue) {\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 多个过滤条件\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"filterMultiple\">\n <nz-switch ngModel [ngModelOptions]=\"{standalone:true}\"></nz-switch>\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 过滤显示函数\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"filterDisplayFn\" [scopes]=\"filterFnScopes()\" [onlyFun]=\"true\"\n [noListen]=\"true\">\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n </nz-collapse-panel>\n <nz-collapse-panel nzHeader=\"统计设置(未实现)\">\n <nz-form-item>\n <nz-form-label nzSpan=\"10\" nzRequired>\n 是否统计\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <nz-switch formControlName=\"totalAble\"></nz-switch>\n </nz-form-control>\n </nz-form-item>\n @if (formValue().totalAble) {\n <nz-form-item>\n <nz-form-label nzSpan=\"10\">\n 自定义统计函数\n </nz-form-label>\n <nz-form-control nzSpan=\"14\">\n <axis-fun-field formControlName=\"totalFn\" [onlyFun]=\"true\" [noListen]=\"true\">\n </axis-fun-field>\n </nz-form-control>\n </nz-form-item>\n }\n </nz-collapse-panel>\n <axis-input-validator formControlName=\"validators\"></axis-input-validator>\n </nz-collapse>\n</form>","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { NzDividerModule } from 'ng-zorro-antd/divider';\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { BaseMenu } from 'ngx-axis-appforge/core';\n\n@Component({\n selector: 'axis-design-edit-table-fields-menu',\n imports: [NzDropDownModule, NzDividerModule, NzIconModule],\n templateUrl: './edit-table-fields-menu.html',\n styleUrl: './edit-table-fields-menu.css',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class EditTableFieldsMenu extends BaseMenu {\n\n addField() {\n const field = `unnamed#${this.optionsNodes.current.options.length + 1}`;\n this.optionsNodes.current.options.push({\n field: field,\n title: \"未命名\",\n inuse: true,\n });\n this.onChange?.({ nextNodeId: `${this.optionsNodes.parent?.id}.${field}`, historyDesc: \"添加表格字段\" });\n }\n}\n","<nz-dropdown-menu #menu=\"nzDropdownMenu\">\n <ul nz-menu>\n <li nz-menu-item (click)=\"addField()\">\n <i nz-icon nzType=\"plus\" nzTheme=\"outline\"></i>\n <nz-divider nzType=\"vertical\"></nz-divider>\n <span>添加字段</span>\n </li>\n </ul>\n</nz-dropdown-menu>","import { NextInfo, DesignBuildResult, DesignBindElementsResult, DesignConfig, OptionsNode, SimpleMenu } from \"ngx-axis-appforge/core\";\nimport { EditTableSetting } from \"./edit-table-setting/edit-table-setting\";\nimport { EditTableFieldSetting } from \"./edit-table-field-setting/edit-table-field-setting\";\nimport { EditTableFieldsMenu } from \"./edit-table-fields-menu/edit-table-fields-menu\";\n\nexport const Config: DesignConfig = {\n\n componentName: \"可编辑表格\",\n buildOptionsNodes(nextInfo: NextInfo): DesignBuildResult {\n const next: NextInfo[] = [];\n const fieldsChildren: OptionsNode[] = [];\n const fieldsNode = new OptionsNode({\n id: nextInfo.currentObject.id + \".fields\",\n parentId: nextInfo.currentObject.id,\n parentObj: nextInfo.currentObject,\n indexOfParentObj: \"fields\",\n scopeId: nextInfo.scopeId,\n rootOptions: nextInfo.currentObject.fields,\n contextMenu: EditTableFieldsMenu,\n name: `表格列[${nextInfo.currentObject.fields?.length ?? 0}]`,\n canDrop: true,\n dropType: \"axis-components/edit-table/edit-table-field\",\n dropObj: nextInfo.currentObject.fields,\n defaultDropIndex: nextInfo.currentObject.fields.length,\n childDirection: 'horizontal',\n icon: \"project\",\n children: fieldsChildren\n });\n nextInfo.currentObject.fields?.forEach((f: any, i: number) => {\n next.push({\n parentId: nextInfo.currentObject.id + \".\" + i,\n parentObject: f,\n indexOfParent: \"child\",\n scopeId: nextInfo.currentObject.id + \".row\"\n });\n fieldsChildren.push(new OptionsNode({\n id: nextInfo.currentObject.id + \".\" + i,\n scopeId: nextInfo.scopeId,\n parentId: nextInfo.currentObject.id,\n parentObj: nextInfo.currentObject.fields,\n indexOfParentObj: i,\n rootOptions: f,\n name: `字段[${f.field}]`,\n icon: \"profile\",\n canSetting: true,\n settingType: EditTableFieldSetting,\n contextMenu: SimpleMenu,\n canDrag: true,\n dragType: \"axis-components/edit-table/edit-table-field\",\n canDrop: true,\n dropType: \"component\",\n dropObj: f,\n defaultDropIndex: \"child\",\n children: []\n }));\n });\n const expandNode = new OptionsNode({\n id: nextInfo.currentObject.id + \".expandRow\",\n parentId: nextInfo.currentObject.id,\n parentObj: nextInfo.currentObject,\n indexOfParentObj: \"expandRow\",\n scopeId: nextInfo.scopeId,\n rootOptions: nextInfo.currentObject,\n name: \"扩展行\",\n contextMenu: SimpleMenu,\n canDrop: true,\n dropType: \"component\",\n dropObj: nextInfo.currentObject,\n defaultDropIndex: \"expandRow\",\n icon: \"control\",\n children: []\n });\n next.push({\n parentId: expandNode.id,\n parentObject: nextInfo.currentObject,\n indexOfParent: \"expandRow\",\n scopeId: nextInfo.currentObject.id + \".row\"\n });\n return {\n treeNode: new OptionsNode({\n parentId: nextInfo.parentId,\n scopeId: nextInfo.scopeId,\n name: \"可编辑表格\",\n canSetting: true,\n canDrag: true,\n dragType: \"component\",\n parentObj: nextInfo.parentObject,\n indexOfParentObj: nextInfo.indexOfParent,\n rootOptions: nextInfo.currentObject,\n children: [\n fieldsNode,\n expandNode\n ],\n settingType: EditTableSetting,\n contextMenu: SimpleMenu,\n icon: \"form\"\n }),\n next: next,\n newScopes: [\n {\n scopeId: nextInfo.currentObject.id + \".row\",\n parentScopeId: nextInfo.scopeId,\n scopeName: \"可编辑表格行\",\n ds: {\n row: nextInfo.currentObject.data?.[0] ?? \"示例数据\",\n rowkey: 2012990210290\n }\n }\n ]\n };\n },\n bindElementsOptionsNode(element: HTMLElement, options: any): DesignBindElementsResult {\n const dropElement = element.querySelector(\"thead>.ant-table-row\") as HTMLElement | undefined;\n const res: DesignBindElementsResult = {\n [options.id]: { element, dropElement: dropElement },\n };\n (options.fields as any[] | undefined)?.forEach((f, i) => {\n const fieldElement = dropElement?.querySelector(`th[data-index=\"${i}\"]`) as HTMLElement | undefined;\n const fieldChildElement = element?.querySelector(`td[data-index=\"${i}\"]`) as HTMLElement | undefined;\n res[`${options.id}.${i}`] = { element: fieldElement, dropElement: fieldChildElement }\n });\n return res\n },\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './config';\n"],"names":["i2","i3","i1","i5","i7","i8","i4"],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { signal, effect, inject, computed, model, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { signal, effect, untracked, inject, computed, model, SkipSelf, Optional, Inject, ChangeDetectionStrategy, Component } from '@angular/core';
|
|
3
3
|
import { ValueAccessOptions, ValueAccess, updateAndValidAll, buildValidators, ScopeDirective, DynamicDirective } from 'ngx-axis-appforge/core';
|
|
4
4
|
import * as i1 from 'ngx-axis-appforge/axis-components/table-helper';
|
|
5
|
-
import { TableFieldDisplayService, TableService, SelectService } from 'ngx-axis-appforge/axis-components/table-helper';
|
|
5
|
+
import { AXIS_TABLE_SELECT_TOKEN, TableFieldDisplayService, TableService, SelectService, ExpandService } from 'ngx-axis-appforge/axis-components/table-helper';
|
|
6
6
|
import * as i2 from 'ng-zorro-antd/table';
|
|
7
7
|
import { NzTableModule } from 'ng-zorro-antd/table';
|
|
8
8
|
import * as i3 from '@angular/forms';
|
|
@@ -30,6 +30,10 @@ class EditTableOptions extends ValueAccessOptions {
|
|
|
30
30
|
disabledRemoveFn = signal("", ...(ngDevMode ? [{ debugName: "disabledRemoveFn" }] : []));
|
|
31
31
|
maxLength = signal(null, ...(ngDevMode ? [{ debugName: "maxLength" }] : []));
|
|
32
32
|
addInitData = signal(undefined, ...(ngDevMode ? [{ debugName: "addInitData" }] : []));
|
|
33
|
+
showExpand = signal(false, ...(ngDevMode ? [{ debugName: "showExpand" }] : []));
|
|
34
|
+
expandMode = signal("custom", ...(ngDevMode ? [{ debugName: "expandMode" }] : []));
|
|
35
|
+
treeChildrenFun = signal("", ...(ngDevMode ? [{ debugName: "treeChildrenFun" }] : []));
|
|
36
|
+
expandFormName = signal(undefined, ...(ngDevMode ? [{ debugName: "expandFormName" }] : []));
|
|
33
37
|
size = signal("middle", ...(ngDevMode ? [{ debugName: "size" }] : []));
|
|
34
38
|
showOrder = signal(true, ...(ngDevMode ? [{ debugName: "showOrder" }] : []));
|
|
35
39
|
showDataSize = signal(true, ...(ngDevMode ? [{ debugName: "showDataSize" }] : []));
|
|
@@ -49,11 +53,13 @@ class EditTableOptions extends ValueAccessOptions {
|
|
|
49
53
|
pageSize = signal(10, ...(ngDevMode ? [{ debugName: "pageSize" }] : []));
|
|
50
54
|
showSizeChanger = signal(true, ...(ngDevMode ? [{ debugName: "showSizeChanger" }] : []));
|
|
51
55
|
pageSizeOptions = signal("10,20,50,100", ...(ngDevMode ? [{ debugName: "pageSizeOptions" }] : []));
|
|
56
|
+
useBackEndPaging = signal(false, ...(ngDevMode ? [{ debugName: "useBackEndPaging" }] : []));
|
|
52
57
|
fields = signal([], ...(ngDevMode ? [{ debugName: "fields" }] : []));
|
|
58
|
+
expandRow = signal(undefined, ...(ngDevMode ? [{ debugName: "expandRow" }] : []));
|
|
53
59
|
}
|
|
54
60
|
class EditTableFieldOptions {
|
|
55
61
|
inuse = signal(true, ...(ngDevMode ? [{ debugName: "inuse" }] : []));
|
|
56
|
-
field = signal("
|
|
62
|
+
field = signal("", ...(ngDevMode ? [{ debugName: "field" }] : []));
|
|
57
63
|
title = signal("未命名", ...(ngDevMode ? [{ debugName: "title" }] : []));
|
|
58
64
|
sortAble = signal(false, ...(ngDevMode ? [{ debugName: "sortAble" }] : []));
|
|
59
65
|
sortOrder = signal(null, ...(ngDevMode ? [{ debugName: "sortOrder" }] : []));
|
|
@@ -72,18 +78,32 @@ class EditTableFieldOptions {
|
|
|
72
78
|
class EditTable extends ValueAccess {
|
|
73
79
|
tableSvc;
|
|
74
80
|
select;
|
|
75
|
-
|
|
81
|
+
expand;
|
|
82
|
+
constructor(tableSvc, select, expand, parentSelect) {
|
|
83
|
+
super();
|
|
84
|
+
this.tableSvc = tableSvc;
|
|
85
|
+
this.select = select;
|
|
86
|
+
this.expand = expand;
|
|
76
87
|
effect(() => {
|
|
77
88
|
this.fields().forEach((f, i) => {
|
|
78
89
|
this.bindWithConfig(this.options.fields()[i], { options: f, tag: `bindField.${i}` });
|
|
79
90
|
});
|
|
80
91
|
});
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
92
|
+
effect(() => {
|
|
93
|
+
const fields = this.fields().filter(f => f.inuse() && f.field()).map(f => f.field());
|
|
94
|
+
if (this.fa.length > 0 && fields.some(f => !this.fa.at(0).value.hasOwnProperty(f))) {
|
|
95
|
+
this.valueToFormValue();
|
|
96
|
+
}
|
|
97
|
+
});
|
|
84
98
|
effect(() => {
|
|
85
99
|
this.tableSvc.init({ data: this.rowData, options: this.options, fields: this.fields, getRow: (row) => row.control.value, cacheFilterItem: false });
|
|
86
|
-
this.select.init({ options: this.options, keyField: "key", data: this.rowData, onSelectedChange: (ids) => this.onSelectedChange(ids) });
|
|
100
|
+
this.select.init({ options: this.options, keyField: "key", data: this.rowData, onSelectedChange: (ids) => this.onSelectedChange(ids), parent: parentSelect, scope: this.getScope(), subSelectKeyFun: scope => scope.snapshot("rowkey") });
|
|
101
|
+
this.expand.init({ options: this.options, keyField: "key", data: this.rowData });
|
|
102
|
+
});
|
|
103
|
+
effect(() => {
|
|
104
|
+
if (this.options.showCheckbox() && this.select.ready()) {
|
|
105
|
+
untracked(() => this.formValueToSelect());
|
|
106
|
+
}
|
|
87
107
|
});
|
|
88
108
|
effect(() => {
|
|
89
109
|
this.addSubscribe(merge(...this.rowData().map(r => merge(...this.tableSvc.displayFields().filter(f => f.filterAble()).map(f => r.control.get(f.field()).valueChanges.pipe(map(() => f.field()), debounceTime(100))))))
|
|
@@ -174,9 +194,17 @@ class EditTable extends ValueAccess {
|
|
|
174
194
|
for (const row of rowData) {
|
|
175
195
|
this.refreshStatus(row);
|
|
176
196
|
}
|
|
197
|
+
if (this.options.showCheckbox() && this.select.ready()) {
|
|
198
|
+
this.formValueToSelect();
|
|
199
|
+
}
|
|
177
200
|
}
|
|
178
201
|
this.rowData.set(rowData);
|
|
179
202
|
}
|
|
203
|
+
formValueToSelect() {
|
|
204
|
+
this.select.onSetItemsChecked(this.rowData().filter(row => {
|
|
205
|
+
return row.control.get(this.options.checkedFormName())?.value;
|
|
206
|
+
}));
|
|
207
|
+
}
|
|
180
208
|
formValueToValue() {
|
|
181
209
|
this.value.set(this.rowData().filter(row => row.status() != "ignore").map((row) => row.control.value));
|
|
182
210
|
}
|
|
@@ -185,6 +213,9 @@ class EditTable extends ValueAccess {
|
|
|
185
213
|
if (this.options.showCheckbox() && this.options.checkedFormName()) {
|
|
186
214
|
group[this.options.checkedFormName()] = [false];
|
|
187
215
|
}
|
|
216
|
+
if (this.options.showExpand() && this.options.expandFormName()) {
|
|
217
|
+
group[this.options.expandFormName()] = [];
|
|
218
|
+
}
|
|
188
219
|
this.fields().filter(r => r.field()).forEach(f => {
|
|
189
220
|
group[f.field()] = [undefined];
|
|
190
221
|
if (f.validators()) {
|
|
@@ -220,11 +251,17 @@ class EditTable extends ValueAccess {
|
|
|
220
251
|
if (this.options.showPagination()) {
|
|
221
252
|
this.pageIndex.set(Math.ceil(this.rowData().length / (this.options.pageSize() || 10)));
|
|
222
253
|
}
|
|
254
|
+
if (this.options.showCheckbox()) {
|
|
255
|
+
this.formValueToSelect();
|
|
256
|
+
}
|
|
223
257
|
}
|
|
224
258
|
removeRow(index) {
|
|
225
259
|
this.fa.removeAt(index);
|
|
226
260
|
this.rowData().splice(index, 1);
|
|
227
261
|
this.rowData.set([...this.rowData()]);
|
|
262
|
+
if (this.options.showCheckbox()) {
|
|
263
|
+
this.formValueToSelect();
|
|
264
|
+
}
|
|
228
265
|
}
|
|
229
266
|
refreshStatus(row) {
|
|
230
267
|
const ignore = Object.entries(row.control.value).filter(en => !this.options.showCheckbox() || en[0] != this.options.checkedFormName() || en[1]).every(en => {
|
|
@@ -262,13 +299,30 @@ class EditTable extends ValueAccess {
|
|
|
262
299
|
}
|
|
263
300
|
});
|
|
264
301
|
}
|
|
265
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: EditTable, deps: [{ token: i1.TableService }, { token: i1.SelectService }], target: i0.ɵɵFactoryTarget.Component });
|
|
266
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: EditTable, isStandalone: true, selector: "axis-edit-table", inputs: { pageIndex: { classPropertyName: "pageIndex", publicName: "pageIndex", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { pageIndex: "pageIndexChange" }, providers: [DatePipe, DecimalPipe, PercentPipe, TableFieldDisplayService, TableService, SelectService], usesInheritance: true, ngImport: i0, template: "<form #form nz-form [formGroup]=\"fg\">\n <nz-table #table [nzSize]=\"options.size()\" [nzData]=\"rowData()\" [nzBordered]=\"options.bordered()\"\n [nzOuterBordered]=\"options.outerBordered()\" [nzShowPagination]=\"options.showPagination()\"\n [nzFrontPagination]=\"options.showPagination()\" [nzPageSize]=\"options.pageSize()\"\n [nzShowSizeChanger]=\"options.showSizeChanger()\" [nzPageSizeOptions]=\"tableSvc.pageSizeOptions()\"\n [nzShowTotal]=\"options.showDataSize()?totalRange:null\" [nzScroll]=\"scroll()\"\n [nzFooter]=\"!options.showPagination() && !disabledAppend() && rowData().length?footer:null\"\n [nzNoResult]=\"noResult\" [(nzPageIndex)]=\"pageIndex\">\n <thead>\n <tr>\n @if (options.showCheckbox()) {\n @if ( !options.singleCheck()) {\n <th nzLeft [nzChecked]=\"select.headerChecked()!='none'\"\n [nzIndeterminate]=\"select.headerChecked()=='indeterminate'\"\n (nzCheckedChange)=\"select.onAllChecked($event)\" nzAlign=\"center\"\n [nzWidth]=\"tableSvc.leaderFieldWidth()-10+'px'\">\n </th>\n }@else {\n <th nzLeft [nzWidth]=\"tableSvc.leaderFieldWidth()-10+'px'\"></th>\n }\n }\n <th nzWidth=\"0 !important\" nzLeft></th>\n @if (options.showOrder()) {\n <th nzAlign=\"center\" [nzWidth]=\"tableSvc.leaderFieldWidth()+'px'\">\u5E8F\u53F7</th>\n }\n @for (f of fields(); track f.field();let i=$index) {\n @if (f.inuse()) {\n <th [attr.data-index]=\"i\" nz-resizable nzBounds=\"window\" [nzDisabled]=\"!f.width()\"\n [nzWidth]=\"f.width() == null ?null:f.width()+'px'\" (nzResize)=\"f.width.set($event.width??null)\"\n [nzShowSort]=\"f.sortAble()\" [nzSortFn]=\"tableSvc.fieldsControlsMap()[f.field()]?.sortFn\"\n [nzSortOrder]=\"f.sortOrder()\" [nzSortPriority]=\"f.sortPriority()??false\"\n [nzShowFilter]=\"f.filterAble()\"\n [nzFilters]=\"tableSvc.fieldsControlsMap()[f.field()]?.filterItems ?? []\"\n [nzFilterFn]=\"tableSvc.fieldsControlsMap()[f.field()]?.filterFn\"\n (nzFilterChange)=\"tableSvc.filterChange(f.field(),$event)\" [nzFilterMultiple]=\"f.filterMultiple()\"\n [nzAlign]=\"f.align()\" [nzLeft]=\"f.freezeMode()=='left'\" [nzRight]=\"f.freezeMode()=='right'\">\n <nz-form-label [nzNoColon]=\"true\" [nzRequired]=\"idRequired(f)\">\n {{f.title()}}\n </nz-form-label>\n </th>\n }\n }\n @if(!options.disabledRemove()){\n <th nzRight nzAlign=\"center\" nzWidth=\"80px\" data-rowactions>\u64CD\u4F5C</th>\n }\n </tr>\n </thead>\n <tbody formArrayName=\"values\">\n @for (data of table.data; track data.key;let i=$index) {\n <tr [formGroupName]=\"(table.nzPageIndex-1) * table.nzPageSize + i\" [axisScope]=\"options.id+'.row'\"\n scopeName=\"\u53EF\u7F16\u8F91\u8868\u683C\u884C\" [dataSources]=\"[{name:'row',type:'local',data:data.control.value}]\">\n @if (options.showCheckbox()) {\n <td nzLeft [nzChecked]=\"select.setOfCheckedId.has(data.key)\"\n [nzIndeterminate]=\"select.setOfIndeterminateId.has(data.key)\"\n [nzDisabled]=\"select.setOfDisabledId().has(data.key)\"\n (nzCheckedChange)=\"select.onItemChecked(data, $event)\" nzAlign=\"center\"></td>\n }\n <td class=\"row-status\" nzLeft [class]=\"data.status()\"></td>\n @if (options.showOrder()) {\n <td nzAlign=\"center\">{{(table.nzPageIndex-1) * table.nzPageSize + i+1}}</td>\n }\n @for (f of fields(); track f.field();let fi=$index) {\n @if (f.inuse()) {\n <td [nzLeft]=\"f.freezeMode()=='left'\" [attr.data-index]=\"fi\" [nzRight]=\"f.freezeMode()=='right'\"\n [nzAlign]=\"f.align()\">\n <nz-form-item style=\"margin-bottom: 0;\">\n <nz-form-control>\n <ng-container [axisDynamic]=\"f.child()\" [formControlName]=\"f.field()\"\n (onRegisteValueAccess)=\"childRegisteValueAccess($event,i,f)\"></ng-container>\n </nz-form-control>\n </nz-form-item>\n </td>\n }\n }\n @if(!options.disabledRemove()){\n <td nzRight>\n <button nz-button nzDanger nzType=\"link\" nz-popconfirm nzPopconfirmTitle=\"\u786E\u8BA4\u5220\u9664\uFF1F\"\n [nzCondition]=\"data.status()=='ignore'\" [disabled]=\"data.disabledRemove()\"\n (nzOnConfirm)=\"removeRow((table.nzPageIndex-1) * table.nzPageSize + i)\">\u5220\u9664</button>\n </td>\n }\n </tr>\n }\n </tbody>\n <ng-template #noResult>\n <nz-empty [nzNotFoundContent]=\"addbtn\"></nz-empty>\n <ng-template #addbtn>\n \u6682\u65E0\u6570\u636E@if (!disabledAppend()) {\uFF0C<a (click)=\"addRow()\">\u6DFB\u52A0</a>}\n </ng-template>\n </ng-template>\n <ng-template #totalRange let-range=\"range\" let-total>\n @if (!disabledAppend()) {\n <a style=\"position:absolute;left:24px\" (click)=\"addRow()\"><span nz-icon nzType=\"plus\"\n nzTheme=\"outline\"></span>\u6DFB\u52A0</a>\n }\n \u5171{{ total }}\u6761\u6570\u636E\uFF0C\u7B2C{{ range[0] }}-{{ range[1] }}\u6761\n </ng-template>\n <ng-template #footer>\n <a (click)=\"addRow()\"><span nz-icon nzType=\"plus\" nzTheme=\"outline\"></span>\u6DFB\u52A0</a>\n </ng-template>\n </nz-table>\n</form>", styles: [":host{display:block}.row-status{width:0;position:relative}.row-status:before{content:\"\";display:block;width:5px;height:17px;border-radius:5px;position:absolute;z-index:1;left:50%;top:50%;transform:translate(4px,-50%)}.invalid:before{background-color:#ff4d4f}.success:before{background-color:#7ed321}.ignore:before{background-color:#9b9b9b}:host ::ng-deep .ant-table-placeholder .ant-table-expanded-row-fixed{margin:-8px -10px}th nz-form-label ::ng-deep label{height:unset}\n"], dependencies: [{ kind: "ngmodule", type: NzTableModule }, { kind: "component", type: i2.NzTableComponent, selector: "nz-table", inputs: ["nzTableLayout", "nzShowTotal", "nzItemRender", "nzTitle", "nzFooter", "nzNoResult", "nzPageSizeOptions", "nzVirtualItemSize", "nzVirtualMaxBufferPx", "nzVirtualMinBufferPx", "nzVirtualForTrackBy", "nzLoadingDelay", "nzPageIndex", "nzPageSize", "nzTotal", "nzWidthConfig", "nzData", "nzCustomColumn", "nzPaginationPosition", "nzScroll", "noDataVirtualHeight", "nzPaginationType", "nzFrontPagination", "nzTemplateMode", "nzShowPagination", "nzLoading", "nzOuterBordered", "nzLoadingIndicator", "nzBordered", "nzSize", "nzShowSizeChanger", "nzHideOnSinglePage", "nzShowQuickJumper", "nzSimple"], outputs: ["nzPageSizeChange", "nzPageIndexChange", "nzQueryParams", "nzCurrentPageDataChange", "nzCustomColumnChange"], exportAs: ["nzTable"] }, { kind: "component", type: i2.NzThAddOnComponent, selector: "th[nzColumnKey], th[nzSortFn], th[nzSortOrder], th[nzFilters], th[nzShowSort], th[nzShowFilter], th[nzCustomFilter]", inputs: ["nzColumnKey", "nzFilterMultiple", "nzSortOrder", "nzSortPriority", "nzSortDirections", "nzFilters", "nzSortFn", "nzFilterFn", "nzShowSort", "nzShowFilter", "nzCustomFilter"], outputs: ["nzCheckedChange", "nzSortOrderChange", "nzFilterChange"] }, { kind: "directive", type: i2.NzTableCellDirective, selector: "th:not(.nz-disable-th), td:not(.nz-disable-td)" }, { kind: "directive", type: i2.NzThMeasureDirective, selector: "th", inputs: ["nzWidth", "colspan", "colSpan", "rowspan", "rowSpan"] }, { kind: "component", type: i2.NzTdAddOnComponent, selector: "td[nzChecked], td[nzDisabled], td[nzIndeterminate], td[nzIndentSize], td[nzExpand], td[nzShowExpand], td[nzShowCheckbox]", inputs: ["nzChecked", "nzDisabled", "nzIndeterminate", "nzLabel", "nzIndentSize", "nzShowExpand", "nzShowCheckbox", "nzExpand", "nzExpandIcon"], outputs: ["nzCheckedChange", "nzExpandChange"] }, { kind: "component", type: i2.NzTheadComponent, selector: "thead:not(.ant-table-thead)", outputs: ["nzSortOrderChange"] }, { kind: "component", type: i2.NzTbodyComponent, selector: "tbody" }, { kind: "directive", type: i2.NzTrDirective, selector: "tr:not([nz-table-measure-row]):not([nzExpand]):not([nz-table-fixed-row])" }, { kind: "directive", type: i2.NzCellFixedDirective, selector: "td[nzRight],th[nzRight],td[nzLeft],th[nzLeft]", inputs: ["nzRight", "nzLeft", "colspan", "colSpan"] }, { kind: "directive", type: i2.NzCellAlignDirective, selector: "th[nzAlign],td[nzAlign]", inputs: ["nzAlign"] }, { kind: "component", type: i2.NzThSelectionComponent, selector: "th[nzSelections],th[nzChecked],th[nzShowCheckbox],th[nzShowRowSelection]", inputs: ["nzSelections", "nzChecked", "nzDisabled", "nzIndeterminate", "nzLabel", "nzShowCheckbox", "nzShowRowSelection"], outputs: ["nzCheckedChange"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i3.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i3.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "ngmodule", type: NzFormModule }, { kind: "directive", type: i4.NzColDirective, selector: "[nz-col],nz-col,nz-form-control,nz-form-label", inputs: ["nzFlex", "nzSpan", "nzOrder", "nzOffset", "nzPush", "nzPull", "nzXs", "nzSm", "nzMd", "nzLg", "nzXl", "nzXXl"], exportAs: ["nzCol"] }, { kind: "directive", type: i4.NzRowDirective, selector: "[nz-row],nz-row,nz-form-item", inputs: ["nzAlign", "nzJustify", "nzGutter"], exportAs: ["nzRow"] }, { kind: "directive", type: i5.NzFormDirective, selector: "[nz-form]", inputs: ["nzLayout", "nzNoColon", "nzAutoTips", "nzDisableAutoTips", "nzTooltipIcon", "nzLabelAlign", "nzLabelWrap"], exportAs: ["nzForm"] }, { kind: "component", type: i5.NzFormItemComponent, selector: "nz-form-item", exportAs: ["nzFormItem"] }, { kind: "component", type: i5.NzFormLabelComponent, selector: "nz-form-label", inputs: ["nzFor", "nzRequired", "nzNoColon", "nzTooltipTitle", "nzTooltipIcon", "nzLabelAlign", "nzLabelWrap"], exportAs: ["nzFormLabel"] }, { kind: "component", type: i5.NzFormControlComponent, selector: "nz-form-control", inputs: ["nzSuccessTip", "nzWarningTip", "nzErrorTip", "nzValidatingTip", "nzExtra", "nzAutoTips", "nzDisableAutoTips", "nzHasFeedback", "nzValidateStatus"], exportAs: ["nzFormControl"] }, { kind: "ngmodule", type: NzResizableModule }, { kind: "directive", type: i6.NzResizableDirective, selector: "[nz-resizable]", inputs: ["nzBounds", "nzMaxHeight", "nzMaxWidth", "nzMinHeight", "nzMinWidth", "nzGridColumnCount", "nzMaxColumn", "nzMinColumn", "nzLockAspectRatio", "nzPreview", "nzDisabled"], outputs: ["nzResize", "nzResizeEnd", "nzResizeStart"], exportAs: ["nzResizable"] }, { kind: "directive", type: ScopeDirective, selector: "[axisScope]", inputs: ["axisScope", "scopeName", "isRoot", "dataSources"] }, { kind: "directive", type: DynamicDirective, selector: "[axisDynamic]", inputs: ["axisDynamic", "standalone", "isDesign"], outputs: ["onRegisteValueAccess"], exportAs: ["axisDynamic"] }, { kind: "ngmodule", type: NzButtonModule }, { kind: "component", type: i7.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }, { kind: "directive", type: i8.ɵNzTransitionPatchDirective, selector: "[nz-button], [nz-icon], nz-icon, [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "ngmodule", type: NzPopconfirmModule }, { kind: "directive", type: i9.NzPopconfirmDirective, selector: "[nz-popconfirm]", inputs: ["nzPopconfirmArrowPointAtCenter", "nzPopconfirmTitle", "nzPopconfirmTitleContext", "nz-popconfirm", "nzPopconfirmTrigger", "nzPopconfirmPlacement", "nzPopconfirmOrigin", "nzPopconfirmMouseEnterDelay", "nzPopconfirmMouseLeaveDelay", "nzPopconfirmOverlayClassName", "nzPopconfirmOverlayStyle", "nzPopconfirmVisible", "nzBeforeConfirm", "nzIcon", "nzCondition", "nzPopconfirmShowArrow", "nzPopconfirmBackdrop", "nzAutofocus", "nzOkText", "nzOkType", "nzCancelText", "nzOkButtonProps", "nzCancelButtonProps", "nzOkDisabled", "nzOkDanger"], outputs: ["nzPopconfirmVisibleChange", "nzOnCancel", "nzOnConfirm"], exportAs: ["nzPopconfirm"] }, { kind: "ngmodule", type: NzIconModule }, { kind: "directive", type: i10.NzIconDirective, selector: "nz-icon,[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "ngmodule", type: NzEmptyModule }, { kind: "component", type: i11.NzEmptyComponent, selector: "nz-empty", inputs: ["nzNotFoundImage", "nzNotFoundContent", "nzNotFoundFooter"], exportAs: ["nzEmpty"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
302
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: EditTable, deps: [{ token: i1.TableService }, { token: i1.SelectService }, { token: i1.ExpandService }, { token: AXIS_TABLE_SELECT_TOKEN, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
303
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: EditTable, isStandalone: true, selector: "axis-edit-table", inputs: { pageIndex: { classPropertyName: "pageIndex", publicName: "pageIndex", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { pageIndex: "pageIndexChange" }, providers: [DatePipe, DecimalPipe, PercentPipe, TableFieldDisplayService, TableService, SelectService, ExpandService,
|
|
304
|
+
{
|
|
305
|
+
provide: AXIS_TABLE_SELECT_TOKEN,
|
|
306
|
+
useExisting: SelectService,
|
|
307
|
+
},
|
|
308
|
+
], usesInheritance: true, ngImport: i0, template: "<form #form nz-form [formGroup]=\"fg\">\n <nz-table #table [nzSize]=\"options.size()\" [nzData]=\"rowData()\" [nzBordered]=\"options.bordered()\"\n [nzOuterBordered]=\"options.outerBordered()\" [nzShowPagination]=\"options.showPagination()\"\n [nzFrontPagination]=\"options.showPagination()\" [nzPageSize]=\"options.pageSize()\"\n [nzShowSizeChanger]=\"options.showSizeChanger()\" [nzPageSizeOptions]=\"tableSvc.pageSizeOptions()\"\n [nzShowTotal]=\"options.showDataSize()?totalRange:null\" [nzScroll]=\"scroll()\"\n [nzFooter]=\"!options.showPagination() && !disabledAppend() && rowData().length?footer:null\"\n [nzNoResult]=\"noResult\" [(nzPageIndex)]=\"pageIndex\">\n <thead>\n <tr>\n @if (options.showCheckbox()) {\n @if (!options.checkboxLinkageForExpand() && !options.singleCheck()) {\n <th nzLeft [nzChecked]=\"select.headerChecked()!='none'\"\n [nzIndeterminate]=\"select.headerChecked()=='indeterminate'\"\n (nzCheckedChange)=\"select.onAllChecked($event)\" nzAlign=\"center\"\n [nzWidth]=\"tableSvc.leaderFieldWidth()-10+'px'\">\n </th>\n }@else {\n <th nzLeft [nzWidth]=\"tableSvc.leaderFieldWidth()-10+'px'\"></th>\n }\n }\n @if (options.showExpand()) {\n <th nzLeft nzAlign=\"center\" [nzWidth]=\"tableSvc.leaderFieldWidth()-15+'px'\"></th>\n }\n <th nzWidth=\"0 !important\" nzLeft></th>\n @if (options.showOrder()) {\n <th nzAlign=\"center\" [nzWidth]=\"tableSvc.leaderFieldWidth()+'px'\">\u5E8F\u53F7</th>\n }\n @for (f of fields(); track f.field();let i=$index) {\n @if (f.inuse()) {\n <th [attr.data-index]=\"i\" nz-resizable nzBounds=\"window\" [nzDisabled]=\"!f.width()\"\n [nzWidth]=\"f.width() == null ?null:f.width()+'px'\" (nzResize)=\"f.width.set($event.width??null)\"\n [nzShowSort]=\"f.sortAble()\" [nzSortFn]=\"tableSvc.fieldsControlsMap()[f.field()]?.sortFn\"\n [nzSortOrder]=\"f.sortOrder()\" [nzSortPriority]=\"f.sortPriority()??false\"\n [nzShowFilter]=\"f.filterAble()\"\n [nzFilters]=\"tableSvc.fieldsControlsMap()[f.field()]?.filterItems ?? []\"\n [nzFilterFn]=\"tableSvc.fieldsControlsMap()[f.field()]?.filterFn\"\n (nzFilterChange)=\"tableSvc.filterChange(f.field(),$event)\" [nzFilterMultiple]=\"f.filterMultiple()\"\n [nzAlign]=\"f.align()\" [nzLeft]=\"f.freezeMode()=='left'\" [nzRight]=\"f.freezeMode()=='right'\">\n <nz-form-label [nzNoColon]=\"true\" [nzRequired]=\"idRequired(f)\">\n {{f.title()}}\n </nz-form-label>\n </th>\n }\n }\n @if(!options.disabledRemove()){\n <th nzRight nzAlign=\"center\" nzWidth=\"80px\" data-rowactions>\u64CD\u4F5C</th>\n }\n </tr>\n </thead>\n <tbody formArrayName=\"values\">\n @for (data of table.data; track data.key;let i=$index) {\n <ng-container [formGroupName]=\"(table.nzPageIndex-1) * table.nzPageSize + i\" [axisScope]=\"options.id+'.row'\"\n scopeName=\"\u53EF\u7F16\u8F91\u8868\u683C\u884C\"\n [dataSources]=\"[{name:'row',type:'local',data:data.control.value},{name:'rowkey',type:'local',data:data.key}]\">\n <tr>\n @if (options.showCheckbox()) {\n <td nzLeft [nzChecked]=\"select.setOfCheckedId().has(data.key)\"\n [nzIndeterminate]=\"select.setOfIndeterminateId().has(data.key)\"\n [nzDisabled]=\"select.setOfDisabledId().has(data.key)\"\n (nzCheckedChange)=\"select.onItemChecked(data, $event)\" nzAlign=\"center\"></td>\n }\n @if (options.showExpand()) {\n @if(options.expandMode() == \"tree\" &&\n !expand.nodeMap().get(data.key)?.children?.length){\n <td nzLeft></td>\n }@else{\n <td nzLeft [nzExpand]=\"expand.expandedSet.has(data.key)\"\n (nzExpandChange)=\"expand.onExpandChange(data.key,$event)\"></td>\n }\n }\n <td class=\"row-status\" nzLeft [class]=\"data.status()\"></td>\n @if (options.showOrder()) {\n <td nzAlign=\"center\">{{(table.nzPageIndex-1) * table.nzPageSize + i+1}}</td>\n }\n @for (f of fields(); track f.field();let fi=$index) {\n @if (f.inuse()) {\n <td [nzLeft]=\"f.freezeMode()=='left'\" [attr.data-index]=\"fi\" [nzRight]=\"f.freezeMode()=='right'\"\n [nzAlign]=\"f.align()\">\n <nz-form-item style=\"margin-bottom: 0;\">\n <nz-form-control>\n <ng-container [axisDynamic]=\"f.child()\" [formControlName]=\"f.field()\"\n (onRegisteValueAccess)=\"childRegisteValueAccess($event,i,f)\"></ng-container>\n </nz-form-control>\n </nz-form-item>\n </td>\n }\n }\n @if(!options.disabledRemove()){\n <td nzRight>\n <button nz-button nzDanger nzType=\"link\" nz-popconfirm nzPopconfirmTitle=\"\u786E\u8BA4\u5220\u9664\uFF1F\"\n [nzCondition]=\"data.status()=='ignore'\" [disabled]=\"data.disabledRemove()\"\n (nzOnConfirm)=\"removeRow((table.nzPageIndex-1) * table.nzPageSize + i)\">\u5220\u9664</button>\n </td>\n }\n </tr>\n @if (options.showExpand() && options.expandMode() == \"custom\") {\n <tr [nzExpand]=\"expand.expandedSet.has(data.key)\" data-expandrow>\n @if (options.expandFormName()) {\n <ng-container [axisDynamic]=\"options.expandRow()\"\n [formControlName]=\"options.expandFormName()!\"></ng-container>\n }@else{\n <ng-container [axisDynamic]=\"options.expandRow()\"></ng-container>\n }\n </tr>\n }\n </ng-container>\n }\n </tbody>\n <ng-template #noResult>\n <nz-empty [nzNotFoundContent]=\"addbtn\"></nz-empty>\n <ng-template #addbtn>\n \u6682\u65E0\u6570\u636E@if (!disabledAppend()) {\uFF0C<a (click)=\"addRow()\">\u6DFB\u52A0</a>}\n </ng-template>\n </ng-template>\n <ng-template #totalRange let-range=\"range\" let-total>\n @if (!disabledAppend()) {\n <a style=\"position:absolute;left:24px\" (click)=\"addRow()\"><span nz-icon nzType=\"plus\"\n nzTheme=\"outline\"></span>\u6DFB\u52A0</a>\n }\n \u5171{{ total }}\u6761\u6570\u636E\uFF0C\u7B2C{{ range[0] }}-{{ range[1] }}\u6761\n </ng-template>\n <ng-template #footer>\n <a (click)=\"addRow()\"><span nz-icon nzType=\"plus\" nzTheme=\"outline\"></span>\u6DFB\u52A0</a>\n </ng-template>\n </nz-table>\n</form>", styles: [":host{display:block}.row-status{width:0;position:relative}.row-status:before{content:\"\";display:block;width:5px;height:17px;border-radius:5px;position:absolute;z-index:1;left:50%;top:50%;transform:translate(4px,-50%)}.invalid:before{background-color:#ff4d4f}.success:before{background-color:#7ed321}.ignore:before{background-color:#9b9b9b}:host ::ng-deep .ant-table-placeholder .ant-table-expanded-row-fixed{margin:-8px -10px}th nz-form-label ::ng-deep label{height:unset}\n"], dependencies: [{ kind: "ngmodule", type: NzTableModule }, { kind: "component", type: i2.NzTableComponent, selector: "nz-table", inputs: ["nzTableLayout", "nzShowTotal", "nzItemRender", "nzTitle", "nzFooter", "nzNoResult", "nzPageSizeOptions", "nzVirtualItemSize", "nzVirtualMaxBufferPx", "nzVirtualMinBufferPx", "nzVirtualForTrackBy", "nzLoadingDelay", "nzPageIndex", "nzPageSize", "nzTotal", "nzWidthConfig", "nzData", "nzCustomColumn", "nzPaginationPosition", "nzScroll", "noDataVirtualHeight", "nzPaginationType", "nzFrontPagination", "nzTemplateMode", "nzShowPagination", "nzLoading", "nzOuterBordered", "nzLoadingIndicator", "nzBordered", "nzSize", "nzShowSizeChanger", "nzHideOnSinglePage", "nzShowQuickJumper", "nzSimple"], outputs: ["nzPageSizeChange", "nzPageIndexChange", "nzQueryParams", "nzCurrentPageDataChange", "nzCustomColumnChange"], exportAs: ["nzTable"] }, { kind: "component", type: i2.NzThAddOnComponent, selector: "th[nzColumnKey], th[nzSortFn], th[nzSortOrder], th[nzFilters], th[nzShowSort], th[nzShowFilter], th[nzCustomFilter]", inputs: ["nzColumnKey", "nzFilterMultiple", "nzSortOrder", "nzSortPriority", "nzSortDirections", "nzFilters", "nzSortFn", "nzFilterFn", "nzShowSort", "nzShowFilter", "nzCustomFilter"], outputs: ["nzCheckedChange", "nzSortOrderChange", "nzFilterChange"] }, { kind: "directive", type: i2.NzTableCellDirective, selector: "th:not(.nz-disable-th), td:not(.nz-disable-td)" }, { kind: "directive", type: i2.NzThMeasureDirective, selector: "th", inputs: ["nzWidth", "colspan", "colSpan", "rowspan", "rowSpan"] }, { kind: "component", type: i2.NzTdAddOnComponent, selector: "td[nzChecked], td[nzDisabled], td[nzIndeterminate], td[nzIndentSize], td[nzExpand], td[nzShowExpand], td[nzShowCheckbox]", inputs: ["nzChecked", "nzDisabled", "nzIndeterminate", "nzLabel", "nzIndentSize", "nzShowExpand", "nzShowCheckbox", "nzExpand", "nzExpandIcon"], outputs: ["nzCheckedChange", "nzExpandChange"] }, { kind: "component", type: i2.NzTheadComponent, selector: "thead:not(.ant-table-thead)", outputs: ["nzSortOrderChange"] }, { kind: "component", type: i2.NzTbodyComponent, selector: "tbody" }, { kind: "directive", type: i2.NzTrDirective, selector: "tr:not([nz-table-measure-row]):not([nzExpand]):not([nz-table-fixed-row])" }, { kind: "directive", type: i2.NzCellFixedDirective, selector: "td[nzRight],th[nzRight],td[nzLeft],th[nzLeft]", inputs: ["nzRight", "nzLeft", "colspan", "colSpan"] }, { kind: "directive", type: i2.NzTrExpandDirective, selector: "tr[nzExpand]", inputs: ["nzExpand"] }, { kind: "directive", type: i2.NzCellAlignDirective, selector: "th[nzAlign],td[nzAlign]", inputs: ["nzAlign"] }, { kind: "component", type: i2.NzTableFixedRowComponent, selector: "tr[nz-table-fixed-row], tr[nzExpand]" }, { kind: "component", type: i2.NzThSelectionComponent, selector: "th[nzSelections],th[nzChecked],th[nzShowCheckbox],th[nzShowRowSelection]", inputs: ["nzSelections", "nzChecked", "nzDisabled", "nzIndeterminate", "nzLabel", "nzShowCheckbox", "nzShowRowSelection"], outputs: ["nzCheckedChange"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i3.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "directive", type: i3.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { kind: "directive", type: i3.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { kind: "ngmodule", type: NzFormModule }, { kind: "directive", type: i4.NzColDirective, selector: "[nz-col],nz-col,nz-form-control,nz-form-label", inputs: ["nzFlex", "nzSpan", "nzOrder", "nzOffset", "nzPush", "nzPull", "nzXs", "nzSm", "nzMd", "nzLg", "nzXl", "nzXXl"], exportAs: ["nzCol"] }, { kind: "directive", type: i4.NzRowDirective, selector: "[nz-row],nz-row,nz-form-item", inputs: ["nzAlign", "nzJustify", "nzGutter"], exportAs: ["nzRow"] }, { kind: "directive", type: i5.NzFormDirective, selector: "[nz-form]", inputs: ["nzLayout", "nzNoColon", "nzAutoTips", "nzDisableAutoTips", "nzTooltipIcon", "nzLabelAlign", "nzLabelWrap"], exportAs: ["nzForm"] }, { kind: "component", type: i5.NzFormItemComponent, selector: "nz-form-item", exportAs: ["nzFormItem"] }, { kind: "component", type: i5.NzFormLabelComponent, selector: "nz-form-label", inputs: ["nzFor", "nzRequired", "nzNoColon", "nzTooltipTitle", "nzTooltipIcon", "nzLabelAlign", "nzLabelWrap"], exportAs: ["nzFormLabel"] }, { kind: "component", type: i5.NzFormControlComponent, selector: "nz-form-control", inputs: ["nzSuccessTip", "nzWarningTip", "nzErrorTip", "nzValidatingTip", "nzExtra", "nzAutoTips", "nzDisableAutoTips", "nzHasFeedback", "nzValidateStatus"], exportAs: ["nzFormControl"] }, { kind: "ngmodule", type: NzResizableModule }, { kind: "directive", type: i6.NzResizableDirective, selector: "[nz-resizable]", inputs: ["nzBounds", "nzMaxHeight", "nzMaxWidth", "nzMinHeight", "nzMinWidth", "nzGridColumnCount", "nzMaxColumn", "nzMinColumn", "nzLockAspectRatio", "nzPreview", "nzDisabled"], outputs: ["nzResize", "nzResizeEnd", "nzResizeStart"], exportAs: ["nzResizable"] }, { kind: "directive", type: ScopeDirective, selector: "[axisScope]", inputs: ["axisScope", "scopeName", "isRoot", "dataSources"] }, { kind: "directive", type: DynamicDirective, selector: "[axisDynamic]", inputs: ["axisDynamic", "standalone", "isDesign"], outputs: ["onRegisteValueAccess"], exportAs: ["axisDynamic"] }, { kind: "ngmodule", type: NzButtonModule }, { kind: "component", type: i7.NzButtonComponent, selector: "button[nz-button], a[nz-button]", inputs: ["nzBlock", "nzGhost", "nzSearch", "nzLoading", "nzDanger", "disabled", "tabIndex", "nzType", "nzShape", "nzSize"], exportAs: ["nzButton"] }, { kind: "directive", type: i8.ɵNzTransitionPatchDirective, selector: "[nz-button], [nz-icon], nz-icon, [nz-menu-item], [nz-submenu], nz-select-top-control, nz-select-placeholder, nz-input-group", inputs: ["hidden"] }, { kind: "ngmodule", type: NzPopconfirmModule }, { kind: "directive", type: i9.NzPopconfirmDirective, selector: "[nz-popconfirm]", inputs: ["nzPopconfirmArrowPointAtCenter", "nzPopconfirmTitle", "nzPopconfirmTitleContext", "nz-popconfirm", "nzPopconfirmTrigger", "nzPopconfirmPlacement", "nzPopconfirmOrigin", "nzPopconfirmMouseEnterDelay", "nzPopconfirmMouseLeaveDelay", "nzPopconfirmOverlayClassName", "nzPopconfirmOverlayStyle", "nzPopconfirmVisible", "nzBeforeConfirm", "nzIcon", "nzCondition", "nzPopconfirmShowArrow", "nzPopconfirmBackdrop", "nzAutofocus", "nzOkText", "nzOkType", "nzCancelText", "nzOkButtonProps", "nzCancelButtonProps", "nzOkDisabled", "nzOkDanger"], outputs: ["nzPopconfirmVisibleChange", "nzOnCancel", "nzOnConfirm"], exportAs: ["nzPopconfirm"] }, { kind: "ngmodule", type: NzIconModule }, { kind: "directive", type: i10.NzIconDirective, selector: "nz-icon,[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }, { kind: "ngmodule", type: NzEmptyModule }, { kind: "component", type: i11.NzEmptyComponent, selector: "nz-empty", inputs: ["nzNotFoundImage", "nzNotFoundContent", "nzNotFoundFooter"], exportAs: ["nzEmpty"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
267
309
|
}
|
|
268
310
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: EditTable, decorators: [{
|
|
269
311
|
type: Component,
|
|
270
|
-
args: [{ selector: 'axis-edit-table', imports: [NzTableModule, ReactiveFormsModule, NzFormModule, NzResizableModule, ScopeDirective, DynamicDirective, NzButtonModule, NzPopconfirmModule, NzIconModule, NzEmptyModule], changeDetection: ChangeDetectionStrategy.OnPush, providers: [DatePipe, DecimalPipe, PercentPipe, TableFieldDisplayService, TableService, SelectService
|
|
271
|
-
|
|
312
|
+
args: [{ selector: 'axis-edit-table', imports: [NzTableModule, ReactiveFormsModule, NzFormModule, NzResizableModule, ScopeDirective, DynamicDirective, NzButtonModule, NzPopconfirmModule, NzIconModule, NzEmptyModule], changeDetection: ChangeDetectionStrategy.OnPush, providers: [DatePipe, DecimalPipe, PercentPipe, TableFieldDisplayService, TableService, SelectService, ExpandService,
|
|
313
|
+
{
|
|
314
|
+
provide: AXIS_TABLE_SELECT_TOKEN,
|
|
315
|
+
useExisting: SelectService,
|
|
316
|
+
},
|
|
317
|
+
], template: "<form #form nz-form [formGroup]=\"fg\">\n <nz-table #table [nzSize]=\"options.size()\" [nzData]=\"rowData()\" [nzBordered]=\"options.bordered()\"\n [nzOuterBordered]=\"options.outerBordered()\" [nzShowPagination]=\"options.showPagination()\"\n [nzFrontPagination]=\"options.showPagination()\" [nzPageSize]=\"options.pageSize()\"\n [nzShowSizeChanger]=\"options.showSizeChanger()\" [nzPageSizeOptions]=\"tableSvc.pageSizeOptions()\"\n [nzShowTotal]=\"options.showDataSize()?totalRange:null\" [nzScroll]=\"scroll()\"\n [nzFooter]=\"!options.showPagination() && !disabledAppend() && rowData().length?footer:null\"\n [nzNoResult]=\"noResult\" [(nzPageIndex)]=\"pageIndex\">\n <thead>\n <tr>\n @if (options.showCheckbox()) {\n @if (!options.checkboxLinkageForExpand() && !options.singleCheck()) {\n <th nzLeft [nzChecked]=\"select.headerChecked()!='none'\"\n [nzIndeterminate]=\"select.headerChecked()=='indeterminate'\"\n (nzCheckedChange)=\"select.onAllChecked($event)\" nzAlign=\"center\"\n [nzWidth]=\"tableSvc.leaderFieldWidth()-10+'px'\">\n </th>\n }@else {\n <th nzLeft [nzWidth]=\"tableSvc.leaderFieldWidth()-10+'px'\"></th>\n }\n }\n @if (options.showExpand()) {\n <th nzLeft nzAlign=\"center\" [nzWidth]=\"tableSvc.leaderFieldWidth()-15+'px'\"></th>\n }\n <th nzWidth=\"0 !important\" nzLeft></th>\n @if (options.showOrder()) {\n <th nzAlign=\"center\" [nzWidth]=\"tableSvc.leaderFieldWidth()+'px'\">\u5E8F\u53F7</th>\n }\n @for (f of fields(); track f.field();let i=$index) {\n @if (f.inuse()) {\n <th [attr.data-index]=\"i\" nz-resizable nzBounds=\"window\" [nzDisabled]=\"!f.width()\"\n [nzWidth]=\"f.width() == null ?null:f.width()+'px'\" (nzResize)=\"f.width.set($event.width??null)\"\n [nzShowSort]=\"f.sortAble()\" [nzSortFn]=\"tableSvc.fieldsControlsMap()[f.field()]?.sortFn\"\n [nzSortOrder]=\"f.sortOrder()\" [nzSortPriority]=\"f.sortPriority()??false\"\n [nzShowFilter]=\"f.filterAble()\"\n [nzFilters]=\"tableSvc.fieldsControlsMap()[f.field()]?.filterItems ?? []\"\n [nzFilterFn]=\"tableSvc.fieldsControlsMap()[f.field()]?.filterFn\"\n (nzFilterChange)=\"tableSvc.filterChange(f.field(),$event)\" [nzFilterMultiple]=\"f.filterMultiple()\"\n [nzAlign]=\"f.align()\" [nzLeft]=\"f.freezeMode()=='left'\" [nzRight]=\"f.freezeMode()=='right'\">\n <nz-form-label [nzNoColon]=\"true\" [nzRequired]=\"idRequired(f)\">\n {{f.title()}}\n </nz-form-label>\n </th>\n }\n }\n @if(!options.disabledRemove()){\n <th nzRight nzAlign=\"center\" nzWidth=\"80px\" data-rowactions>\u64CD\u4F5C</th>\n }\n </tr>\n </thead>\n <tbody formArrayName=\"values\">\n @for (data of table.data; track data.key;let i=$index) {\n <ng-container [formGroupName]=\"(table.nzPageIndex-1) * table.nzPageSize + i\" [axisScope]=\"options.id+'.row'\"\n scopeName=\"\u53EF\u7F16\u8F91\u8868\u683C\u884C\"\n [dataSources]=\"[{name:'row',type:'local',data:data.control.value},{name:'rowkey',type:'local',data:data.key}]\">\n <tr>\n @if (options.showCheckbox()) {\n <td nzLeft [nzChecked]=\"select.setOfCheckedId().has(data.key)\"\n [nzIndeterminate]=\"select.setOfIndeterminateId().has(data.key)\"\n [nzDisabled]=\"select.setOfDisabledId().has(data.key)\"\n (nzCheckedChange)=\"select.onItemChecked(data, $event)\" nzAlign=\"center\"></td>\n }\n @if (options.showExpand()) {\n @if(options.expandMode() == \"tree\" &&\n !expand.nodeMap().get(data.key)?.children?.length){\n <td nzLeft></td>\n }@else{\n <td nzLeft [nzExpand]=\"expand.expandedSet.has(data.key)\"\n (nzExpandChange)=\"expand.onExpandChange(data.key,$event)\"></td>\n }\n }\n <td class=\"row-status\" nzLeft [class]=\"data.status()\"></td>\n @if (options.showOrder()) {\n <td nzAlign=\"center\">{{(table.nzPageIndex-1) * table.nzPageSize + i+1}}</td>\n }\n @for (f of fields(); track f.field();let fi=$index) {\n @if (f.inuse()) {\n <td [nzLeft]=\"f.freezeMode()=='left'\" [attr.data-index]=\"fi\" [nzRight]=\"f.freezeMode()=='right'\"\n [nzAlign]=\"f.align()\">\n <nz-form-item style=\"margin-bottom: 0;\">\n <nz-form-control>\n <ng-container [axisDynamic]=\"f.child()\" [formControlName]=\"f.field()\"\n (onRegisteValueAccess)=\"childRegisteValueAccess($event,i,f)\"></ng-container>\n </nz-form-control>\n </nz-form-item>\n </td>\n }\n }\n @if(!options.disabledRemove()){\n <td nzRight>\n <button nz-button nzDanger nzType=\"link\" nz-popconfirm nzPopconfirmTitle=\"\u786E\u8BA4\u5220\u9664\uFF1F\"\n [nzCondition]=\"data.status()=='ignore'\" [disabled]=\"data.disabledRemove()\"\n (nzOnConfirm)=\"removeRow((table.nzPageIndex-1) * table.nzPageSize + i)\">\u5220\u9664</button>\n </td>\n }\n </tr>\n @if (options.showExpand() && options.expandMode() == \"custom\") {\n <tr [nzExpand]=\"expand.expandedSet.has(data.key)\" data-expandrow>\n @if (options.expandFormName()) {\n <ng-container [axisDynamic]=\"options.expandRow()\"\n [formControlName]=\"options.expandFormName()!\"></ng-container>\n }@else{\n <ng-container [axisDynamic]=\"options.expandRow()\"></ng-container>\n }\n </tr>\n }\n </ng-container>\n }\n </tbody>\n <ng-template #noResult>\n <nz-empty [nzNotFoundContent]=\"addbtn\"></nz-empty>\n <ng-template #addbtn>\n \u6682\u65E0\u6570\u636E@if (!disabledAppend()) {\uFF0C<a (click)=\"addRow()\">\u6DFB\u52A0</a>}\n </ng-template>\n </ng-template>\n <ng-template #totalRange let-range=\"range\" let-total>\n @if (!disabledAppend()) {\n <a style=\"position:absolute;left:24px\" (click)=\"addRow()\"><span nz-icon nzType=\"plus\"\n nzTheme=\"outline\"></span>\u6DFB\u52A0</a>\n }\n \u5171{{ total }}\u6761\u6570\u636E\uFF0C\u7B2C{{ range[0] }}-{{ range[1] }}\u6761\n </ng-template>\n <ng-template #footer>\n <a (click)=\"addRow()\"><span nz-icon nzType=\"plus\" nzTheme=\"outline\"></span>\u6DFB\u52A0</a>\n </ng-template>\n </nz-table>\n</form>", styles: [":host{display:block}.row-status{width:0;position:relative}.row-status:before{content:\"\";display:block;width:5px;height:17px;border-radius:5px;position:absolute;z-index:1;left:50%;top:50%;transform:translate(4px,-50%)}.invalid:before{background-color:#ff4d4f}.success:before{background-color:#7ed321}.ignore:before{background-color:#9b9b9b}:host ::ng-deep .ant-table-placeholder .ant-table-expanded-row-fixed{margin:-8px -10px}th nz-form-label ::ng-deep label{height:unset}\n"] }]
|
|
318
|
+
}], ctorParameters: () => [{ type: i1.TableService }, { type: i1.SelectService }, { type: i1.ExpandService }, { type: i1.SelectService, decorators: [{
|
|
319
|
+
type: SkipSelf
|
|
320
|
+
}, {
|
|
321
|
+
type: Optional
|
|
322
|
+
}, {
|
|
323
|
+
type: Inject,
|
|
324
|
+
args: [AXIS_TABLE_SELECT_TOKEN]
|
|
325
|
+
}] }] });
|
|
272
326
|
|
|
273
327
|
/**
|
|
274
328
|
* Generated bundle index. Do not edit.
|