cnhis-design-vue 3.1.34 → 3.1.35-beta.10

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.
Files changed (41) hide show
  1. package/es/components/big-table/index.d.ts +14 -0
  2. package/es/components/big-table/src/BigTable.vue.d.ts +17 -9
  3. package/es/components/big-table/src/BigTable.vue2.js +602 -15
  4. package/es/components/big-table/src/components/edit-form/edit-separate.vue.d.ts +4 -0
  5. package/es/components/big-table/src/components/separate.vue.d.ts +1 -0
  6. package/es/components/big-table/src/hooks/useEdit.d.ts +4 -0
  7. package/es/components/big-table/src/hooks/useSeparateRow.d.ts +11 -1
  8. package/es/components/big-table/src/hooks/useSeparateRow.js +56 -12
  9. package/es/components/big-table/style/index.css +1 -1
  10. package/es/components/fabric-chart/src/hooks/useCenter.js +3 -3
  11. package/es/components/fabric-chart/src/hooks/useLeft.js +3 -3
  12. package/es/components/fabric-chart/src/hooks/useTemperatureChart.js +2 -1
  13. package/es/components/fabric-chart/src/utils/utils.d.ts +2 -0
  14. package/es/components/fabric-chart/src/utils/utils.js +7 -1
  15. package/es/components/form-config/src/components/FormConfigCreator.vue.js +1 -0
  16. package/es/components/form-config/src/hooks/useConfigurationField.js +7 -1
  17. package/es/components/form-render/src/components/renderer/combination.js +11 -3
  18. package/es/components/form-render/src/components/renderer/formItem.d.ts +2 -0
  19. package/es/components/form-render/src/components/renderer/formItem.js +20 -4
  20. package/es/components/form-render/src/components/renderer/jsonCombination/index.js +7 -3
  21. package/es/components/form-render/src/components/renderer/lineBar/FormCollapse.vue.d.ts +12 -2
  22. package/es/components/form-render/src/components/renderer/lineBar/FormCollapse.vue.js +7 -14
  23. package/es/components/form-render/src/components/renderer/lineBar/index.d.ts +12 -2
  24. package/es/components/form-render/src/components/tooltipMessage.vue.d.ts +13 -0
  25. package/es/components/form-render/src/components/tooltipMessage.vue.js +37 -0
  26. package/es/components/form-render/src/hooks/useFieldListAdaptor.js +1 -0
  27. package/es/components/form-render/style/index.css +1 -1
  28. package/es/components/iho-table/src/IhoTable.vue.js +3 -3
  29. package/es/components/index.css +1 -1
  30. package/es/components/info-header/index.d.ts +45 -0
  31. package/es/components/info-header/src/InfoHeader.vue.d.ts +39 -6
  32. package/es/components/info-header/src/InfoHeader.vue.js +40 -29
  33. package/es/components/info-header/style/index.css +1 -1
  34. package/es/components/keyboard/index.d.ts +34 -6
  35. package/es/components/keyboard/src/Keyboard.vue.d.ts +34 -6
  36. package/es/components/keyboard/src/Keyboard.vue.js +16 -12
  37. package/es/components/keyboard/src/components/InputNumber.vue.js +1 -1
  38. package/es/components/keyboard/src/components/NumberPanel.vue.d.ts +14 -4
  39. package/es/components/keyboard/src/components/NumberPanel.vue.js +88 -30
  40. package/es/components/keyboard/style/index.css +1 -1
  41. package/package.json +2 -2
@@ -40,18 +40,21 @@ declare const _default: import("vue").DefineComponent<{
40
40
  index: number;
41
41
  rawRow: AnyObject;
42
42
  row: AnyObject;
43
+ colspans?: Record<string, number> | undefined;
43
44
  } | undefined;
44
45
  onShow: (target: {
45
46
  separateData: Record<string, string>;
46
47
  index: number;
47
48
  rawRow: AnyObject;
48
49
  row: AnyObject;
50
+ colspans?: Record<string, number> | undefined;
49
51
  } | undefined) => Promise<void>;
50
52
  onClose: (target: {
51
53
  separateData: Record<string, string>;
52
54
  index: number;
53
55
  rawRow: AnyObject;
54
56
  row: AnyObject;
57
+ colspans?: Record<string, number> | undefined;
55
58
  } | undefined) => Promise<void>;
56
59
  updateShow: (show: boolean) => void;
57
60
  style: CSSProperties;
@@ -99,6 +102,7 @@ declare const _default: import("vue").DefineComponent<{
99
102
  index: number;
100
103
  rawRow: AnyObject;
101
104
  row: AnyObject;
105
+ colspans?: Record<string, number> | undefined;
102
106
  }>>;
103
107
  displayContent: import("vue").ComputedRef<string>;
104
108
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
@@ -25,6 +25,7 @@ declare const _default: import("vue").DefineComponent<{
25
25
  index: number;
26
26
  rawRow: AnyObject;
27
27
  row: AnyObject;
28
+ colspans?: Record<string, number> | undefined;
28
29
  }>>;
29
30
  displayContent: import("vue").ComputedRef<string>;
30
31
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
@@ -232,18 +232,21 @@ export declare const comps: {
232
232
  index: number;
233
233
  rawRow: import("../../../../shared/types").AnyObject;
234
234
  row: import("../../../../shared/types").AnyObject;
235
+ colspans?: Record<string, number> | undefined;
235
236
  } | undefined;
236
237
  onShow: (target: {
237
238
  separateData: Record<string, string>;
238
239
  index: number;
239
240
  rawRow: import("../../../../shared/types").AnyObject;
240
241
  row: import("../../../../shared/types").AnyObject;
242
+ colspans?: Record<string, number> | undefined;
241
243
  } | undefined) => Promise<void>;
242
244
  onClose: (target: {
243
245
  separateData: Record<string, string>;
244
246
  index: number;
245
247
  rawRow: import("../../../../shared/types").AnyObject;
246
248
  row: import("../../../../shared/types").AnyObject;
249
+ colspans?: Record<string, number> | undefined;
247
250
  } | undefined) => Promise<void>;
248
251
  updateShow: (show: boolean) => void;
249
252
  style: import("vue").CSSProperties;
@@ -291,6 +294,7 @@ export declare const comps: {
291
294
  index: number;
292
295
  rawRow: import("../../../../shared/types").AnyObject;
293
296
  row: import("../../../../shared/types").AnyObject;
297
+ colspans?: Record<string, number> | undefined;
294
298
  }>>;
295
299
  displayContent: import("vue").ComputedRef<string>;
296
300
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
@@ -1,6 +1,7 @@
1
1
  import { AnyObject, Func } from '../../../../../es/shared/types';
2
2
  import { Ref } from 'vue';
3
3
  import { VxeTableEvents, VxeTableInstance } from 'vxe-table';
4
+ import { VxeTablePropTypes } from 'vxe-table/types/table';
4
5
  export declare class SeparateHandle {
5
6
  callbacks: Set<Func<any[], any>>;
6
7
  add(cb: Func): void;
@@ -14,17 +15,26 @@ export declare function useSeparateMap(): {
14
15
  index: number;
15
16
  rawRow: AnyObject;
16
17
  row: AnyObject;
18
+ colspans?: Record<string, number> | undefined;
17
19
  }>>;
18
20
  getRowData: (row: AnyObject) => {
19
21
  separateData: Record<string, string>;
20
22
  index: number;
21
23
  rawRow: AnyObject;
22
24
  row: AnyObject;
25
+ colspans?: Record<string, number> | undefined;
23
26
  } | undefined;
24
27
  };
25
- export declare function useSeparateRow(getColumnConfig: () => AnyObject[], getFieldItem: (columnName: string) => AnyObject, $VXETable: Ref<undefined | VxeTableInstance>): {
28
+ export declare function useSeparateRow(getColumnConfig: () => AnyObject[], spanMethod: VxeTablePropTypes.SpanMethod, getFieldItem: (columnName: string) => AnyObject, $VXETable: Ref<undefined | VxeTableInstance>): {
26
29
  onColumnResize: VxeTableEvents.ResizableChange;
27
30
  needSeparateColumn: import("vue").ComputedRef<AnyObject[]>;
28
31
  separate: (data: AnyObject[], rawData: AnyObject[]) => Promise<AnyObject[]>;
29
32
  separateHandle: SeparateHandle;
33
+ separateDataMap: Ref<WeakMap<AnyObject, {
34
+ separateData: Record<string, string>;
35
+ index: number;
36
+ rawRow: AnyObject;
37
+ row: AnyObject;
38
+ colspans?: Record<string, number> | undefined;
39
+ }>>;
30
40
  };
@@ -1,5 +1,5 @@
1
1
  import { getStringWidth } from '../../../../shared/utils/index.js';
2
- import { isNumber, isArray, cloneDeep, isString } from 'lodash-es';
2
+ import { isFunction, isNumber, isArray, cloneDeep, isString } from 'lodash-es';
3
3
  import { ref, computed, provide, watch, nextTick } from 'vue';
4
4
  import { InjectionSeparateHandle } from '../constants/index.js';
5
5
 
@@ -29,22 +29,32 @@ function useSeparateMap() {
29
29
  }
30
30
  return { separateDataMap, getRowData };
31
31
  }
32
- function useSeparateRow(getColumnConfig, getFieldItem, $VXETable) {
32
+ function useSeparateRow(getColumnConfig, spanMethod, getFieldItem, $VXETable) {
33
33
  const needSeparateColumn = computed(() => {
34
34
  return getColumnConfig().filter((column) => column.formType === "separate");
35
35
  });
36
+ const columnWidthCacheMap = /* @__PURE__ */ new Map();
36
37
  async function separate(data, rawData) {
38
+ var _a, _b;
37
39
  if (!needSeparateColumn.value.length) {
38
40
  return data;
39
41
  }
42
+ columnWidthCacheMap.clear();
43
+ const visibleColumn = (_b = (_a = $VXETable.value) == null ? void 0 : _a.getColumns()) != null ? _b : [];
40
44
  return data.reduce(async (res, row, dataIndex) => {
41
45
  const parsedRowData = [];
42
46
  for (const column of needSeparateColumn.value) {
47
+ const { width, colspan } = await getColumnRenderWidth(column, row, dataIndex);
43
48
  parsedRowData.push({
44
49
  columnName: column.columnName,
45
- data: contentSeparate(row[column.columnName], column.columnName, await getColumnRenderWidth(column))
50
+ colspan,
51
+ data: contentSeparate(row[column.columnName], column.columnName, width)
46
52
  });
47
53
  }
54
+ const separateColspans = visibleColumn.reduce((res2, column) => {
55
+ res2[column.field] = getColspanInfo(column.field, row, dataIndex).colspan;
56
+ return res2;
57
+ }, {});
48
58
  (await res).push(
49
59
  ...Array.from({ length: getColumnInfoMaxLength(parsedRowData) }).map((_, index) => {
50
60
  const separateData = getSeparateRowData(parsedRowData, index);
@@ -53,7 +63,8 @@ function useSeparateRow(getColumnConfig, getFieldItem, $VXETable) {
53
63
  row,
54
64
  rawRow: rawData[dataIndex],
55
65
  index: dataIndex,
56
- separateData
66
+ separateData,
67
+ colspans: separateColspans
57
68
  });
58
69
  row.$__SEPARATE_DATA = [separateData];
59
70
  return row;
@@ -77,21 +88,54 @@ function useSeparateRow(getColumnConfig, getFieldItem, $VXETable) {
77
88
  return res;
78
89
  }, {});
79
90
  }
80
- function getColumnInfoMaxLength(parsedRowData) {
81
- return Math.max(...parsedRowData.map((r) => r.data.length), 1);
82
- }
83
- async function getColumnRenderWidth(column) {
91
+ }
92
+ function getColumnInfoMaxLength(parsedRowData) {
93
+ return Math.max(...parsedRowData.map((r) => r.data.length), 1);
94
+ }
95
+ function getColspanInfo(field, row, rowIndex) {
96
+ if (!$VXETable.value)
97
+ return { colspan: 1, columnIndex: 0 };
98
+ const columnInfo = $VXETable.value.getColumnByField(field);
99
+ const columnIndex = $VXETable.value.getColumnIndex(columnInfo);
100
+ const visibleColumn = $VXETable.value.getColumns() || [];
101
+ const _columnIndex = visibleColumn.findIndex((column) => column.field === field);
102
+ const { colspan = 1 } = spanMethod({
103
+ column: columnInfo,
104
+ row,
105
+ rowIndex,
106
+ $rowIndex: rowIndex,
107
+ _rowIndex: rowIndex,
108
+ columnIndex,
109
+ $columnIndex: columnIndex,
110
+ _columnIndex
111
+ }) || {};
112
+ return { colspan, columnIndex };
113
+ }
114
+ async function getColumnRenderWidth(column, row, rowIndex) {
115
+ if (!isFunction(spanMethod) || !$VXETable.value)
116
+ return { width: await getWidth(column), colspan: 1 };
117
+ const { colspan, columnIndex } = getColspanInfo(column.columnName, row, rowIndex);
118
+ const width = colspan <= 0 ? 0 : colspan === 1 ? await getWidth(column) : await $VXETable.value.getColumns().slice(columnIndex, columnIndex + colspan).reduce(async (res, columnInfo) => {
119
+ return await res + await getWidth({ columnName: columnInfo.field });
120
+ }, Promise.resolve(0));
121
+ return { width, colspan };
122
+ async function getWidth(column2) {
123
+ let width2 = columnWidthCacheMap.get(column2.columnName);
124
+ if (width2)
125
+ return width2;
84
126
  const prev = getRenderWidth();
85
127
  if (!prev) {
86
128
  await nextTick();
87
129
  }
88
- return getRenderWidth() || getColumnWidth();
130
+ width2 = getRenderWidth() || getColumnWidth();
131
+ columnWidthCacheMap.set(column2.columnName, width2);
132
+ return width2;
89
133
  function getRenderWidth() {
90
134
  var _a, _b;
91
- return (_b = (_a = $VXETable.value) == null ? void 0 : _a.getColumnByField(column.columnName)) == null ? void 0 : _b.renderWidth;
135
+ return (_b = (_a = $VXETable.value) == null ? void 0 : _a.getColumnByField(column2.columnName)) == null ? void 0 : _b.renderWidth;
92
136
  }
93
137
  function getColumnWidth() {
94
- return isNumber(column.width) ? column.width : 64;
138
+ return isNumber(column2.width) ? column2.width : 64;
95
139
  }
96
140
  }
97
141
  }
@@ -126,7 +170,7 @@ function useSeparateRow(getColumnConfig, getFieldItem, $VXETable) {
126
170
  const separateHandle = new SeparateHandle();
127
171
  provide(InjectionSeparateHandle, separateHandle);
128
172
  watch(needSeparateColumn, separateHandle.trigger.bind(separateHandle));
129
- return { onColumnResize, needSeparateColumn, separate, separateHandle };
173
+ return { onColumnResize, needSeparateColumn, separate, separateHandle, separateDataMap };
130
174
  }
131
175
 
132
176
  export { SeparateHandle, useSeparateMap, useSeparateRow };
@@ -1 +1 @@
1
- .big-table-filter-wrap{background-color:#fff;border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.2);display:flex;flex-flow:column wrap;margin-top:-6px;min-width:280px;overflow:hidden;position:fixed;transform:translateX(-2%);transition:width 2s;z-index:99998}.big-table-filter-wrap .sort-list{margin-top:6px}.big-table-filter-wrap .sort-item{align-items:center;background:#f7f7f7;display:flex;height:32px;padding:0 13px}.big-table-filter-wrap .sort-item.active,.big-table-filter-wrap .sort-item:hover{background:#f2f2f2}.big-table-filter-wrap .sort-icon{background-size:contain;display:inline-block;height:16px;width:16px}.big-table-filter-wrap .sort-text{color:rgba(0,0,0,.8);font-size:14px;line-height:32px;margin-left:11px}.big-table-filter-wrap .sort-icon-desc{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAABT0lEQVRYR+3WvSuGYRTH8c9TykpJSimLMvgHpLyUCQsmg/wBMss/ILvdJgspNnkbZFYGk7JQSAaLwUuX7uFxu3E/nvvqSd3XeHW6zvec65zfORUNPpUG+1cClBnIysABhiMV5y4mqt/OAliPCHCImd8AIgWf/WzMIhzFK/Z/iigWQAtuE4A2PH0HEQugG5eJ005clwBlBmrJwDwGcorBNjYybOsqwit05QQ4R1/RAB3oqQHgoWiAnL5/NKvrC/4tQBNacYesDAR5fkxHV6QU72EQczhNSfE4VpOOmY01jsOyMYYXLGElcbSIZT4W4C1MxQIIUy9sU1ltGXyeYQSfuua7L2jOWYnPKbt2HKE3dR/0Iqx593lq4AT9OQE2MZ2yDTpyXKUlF0lthP3gy8nKwBqGcgLsYCHDNuwAAe4Nk7ipZRbk9F2MWZFt+CeiEuAdAU5CIQxYYdUAAAAASUVORK5CYII=")}.big-table-filter-wrap .filter-header{cursor:auto;padding:5px 13px}.big-table-filter-wrap .filter-header-icon{border-right-color:#333;border-top-color:#333}.big-table-filter-wrap .filter-header-text{margin-left:11px}.big-table-filter-wrap .check-search-wrap{background:#f7f7f7;display:flex;justify-content:center;padding:8px 0;width:100%}.big-table-filter-wrap .check-seach-input{line-height:32px}.big-table-filter-wrap .checkbox-box{padding-right:3px;width:100%}.big-table-filter-wrap .checkbox-wrap{background:#fff;display:flex;flex-direction:column;overflow-y:auto;padding:0 3px 0 13px}.big-table-filter-wrap .checkbox-wrap::-webkit-scrollbar{height:4px;width:4px}.big-table-filter-wrap .checkbox-wrap::-webkit-scrollbar-thumb{background-color:#d5d5d5;border-radius:4px}.big-table-filter-wrap .checkbox-wrap::-webkit-scrollbar-track{background-color:#fff;border-radius:4px}.big-table-filter-wrap .checkbox-wrap::-webkit-scrollbar-corner{background-color:#000;border-radius:4px;width:4px}.big-table-filter-wrap .checkbox-wrap--search{padding-right:10px}.big-table-filter-wrap .checkbox-btn-wrap{display:flex;padding:9px 10px 9px 14px}.big-table-filter-wrap .checkbox-btn-wrap .checkbox-btn{padding:0;width:56px}.big-table-filter-wrap .checkbox-btn-wrap .checkbox-btn+.checkbox-btn{margin-left:8px}.big-table-filter-wrap .checkbox-btn-wrap .checkbox-btn-status .checkbox-btn{border:0;border-radius:0;margin:0 13px;position:relative;width:auto}.big-table-filter-wrap .checkbox-btn-wrap .checkbox-btn-status .checkbox-btn:hover:after{background-color:#5585f5;bottom:5px;content:"";display:block;height:1px;position:absolute;width:100%}.big-table-filter-wrap .arrows-icon{bottom:-1px;cursor:nw-resize;font-size:15px;height:20px;position:absolute;right:-1px;width:25px}.big-table__separate{padding:4px}.big-table__separatePlaceholder{display:inline-block;max-width:0;visibility:hidden;width:0;word-break:keep-all}.custom-big-table{position:relative}.custom-big-table .n-input{width:fit-content}.custom-big-table .img-wrap{align-items:center;display:flex;height:100%;line-height:1;padding:2px 0}.custom-big-table .img-wrap img{cursor:pointer;max-height:100%;object-fit:contain}.custom-big-table .img-wrap.img-circle img{border-radius:50%;object-fit:contain;width:28px}.custom-big-table .bigTable-qr-span{display:inline-block;height:100%;position:relative}.custom-big-table .bigTable-qr-span .bigTable-qr-img{max-height:96%}.custom-big-table .bigTable-qr-span>span{align-items:center;background:rgba(0,0,0,.7);color:#fff;cursor:pointer;display:none;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%}.custom-big-table .bigTable-qr-span:hover>span{display:inline-flex}.custom-big-table .base-form{align-items:center;display:flex;overflow:hidden!important;width:100%}.custom-big-table .base-form-content{width:100%}.custom-big-table textarea{height:32px;margin-bottom:0;resize:none}.custom-big-table .formItem-select-multiple{align-items:center;display:flex;line-height:40px;width:100%}.custom-big-table.mt{height:calc(100% - 78px)!important;margin-top:26px}.custom-big-table.expand-padding .vxe-table .vxe-body--expanded-cell{padding-left:66px!important;padding-right:66px!important}.custom-big-table th.vxe-header--column{cursor:pointer}.custom-big-table .row-btn{margin-right:10px}.custom-big-table .vxe-table{transform:translateZ(0)}.custom-big-table .vxe-table .vxe-table--empty-content,.custom-big-table .vxe-table .vxe-table--empty-content>div{height:100%;width:100%}.custom-big-table .vxe-table .vxe-table--empty-content>div .no-data-tip{display:inline-flex}.custom-big-table .vxe-table .col--checkbox .vxe-cell,.custom-big-table .vxe-table .col--seq .vxe-cell{padding:0}.custom-big-table .vxe-table .col--checkbox .vxe-cell .vxe-checkbox--label,.custom-big-table .vxe-table .col--seq .vxe-cell .vxe-checkbox--label{padding-left:0}.custom-big-table .vxe-table .vxe-cell .vxe-tree-cell{height:100%}.custom-big-table .vxe-table .scan-multi-delete{color:#f06f64}.custom-big-table .vxe-table .vxe-table--header{background-color:#f2f2f2}.custom-big-table .vxe-table .vxe-table--header .vxe-header--column .vxe-cell--title{color:#35393c;height:100%;line-height:unset}.custom-big-table .vxe-table .vxe-table--header .vxe-header--column .vxe-cell--title .header-title-span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-big-table .vxe-table .vxe-table--header .col--checkbox .vxe-cell--title,.custom-big-table .vxe-table .vxe-table--header .col--seq .vxe-cell--title{display:inline-block}.custom-big-table .vxe-table .vxe-table--body-wrapper::-webkit-scrollbar,.custom-big-table .vxe-table .vxe-table--footer-wrapper.body--wrapper::-webkit-scrollbar{background-color:transparent;height:10px;width:10px}.custom-big-table .vxe-table .vxe-table--body-wrapper::-webkit-scrollbar-thumb,.custom-big-table .vxe-table .vxe-table--footer-wrapper.body--wrapper::-webkit-scrollbar-thumb{background-clip:padding-box;background-color:#f2f2f2;border:3px dashed transparent;border-radius:0}.custom-big-table .vxe-table .vxe-table--body-wrapper::-webkit-scrollbar-thumb:hover,.custom-big-table .vxe-table .vxe-table--footer-wrapper.body--wrapper::-webkit-scrollbar-thumb:hover{background:#b2b2b2}.custom-big-table .vxe-table .vxe-footer--row .vxe-footer--column>.vxe-cell .vxe-cell--item{height:30px;line-height:30px}.custom-big-table .vxe-table .vxe-cell--checkbox .vxe-checkbox--label{display:none}.custom-big-table .filter-box{align-items:center;display:flex;width:100%}.custom-big-table .filter-box .text-over-tooltip-components{max-width:calc(100% - 40px)}.custom-big-table .filter-box .vxe-filter--btn{border-right-color:#c0c4cc;border-top-color:#c0c4cc}.custom-big-table .filter-box .vxe-filter--btn.active{border-right-color:#35393c;border-top-color:#35393c}.custom-big-table .filter-box .vxe-filter--btn.checked{border-right-color:#5585f5;border-top-color:#5585f5}.custom-big-table .disabled-checked-tips{background:#fff;border:2px solid #ff1818;border-radius:50%;bottom:0;box-sizing:border-box;height:16px;margin-top:-8px;overflow:hidden;position:absolute;right:0;top:50%;width:16px}.custom-big-table .disabled-checked-tips:after{background-color:#ff1818;content:"";height:2px;left:0;position:absolute;top:0;transform:rotate(45deg);transform-origin:0 2px;width:16px}.custom-big-table .form-select-table .n-base-select-menu__empty{display:none}.custom-big-table .percent-wrap{align-items:center;display:flex;flex-direction:column;justify-content:center;text-align:center}.custom-big-table .percent-wrap .percent-value{line-height:1;margin-bottom:-4px;margin-top:4px}.custom-big-table .refresh{align-items:center;background-color:#fff;border-bottom-left-radius:14px;border-top-left-radius:14px;box-shadow:0 2px 4px 0 hsla(0,0%,42%,.13);color:#5585f5;cursor:pointer;display:flex;font-size:12px;height:27px;padding-left:14px;padding-right:14px;position:absolute;right:0;top:6px;z-index:1}.custom-big-table .refresh-row{margin-bottom:0;margin-left:3px}.custom-big-table .check-wrap{background:#ffffe9;display:flex;justify-content:center;line-height:26px;margin-top:-26px;position:absolute;width:100%}.custom-big-table .check-wrap .check-wrap-btn,.custom-big-table .check-wrap .check-wrap-title{color:#000;cursor:pointer;font-size:12px;margin-bottom:0}.custom-big-table .check-wrap .check-wrap-btn{color:#5585f5}.custom-big-table .domPropsInnerHTML-span{height:100%}.custom-big-table .domPropsInnerHTML-span img{display:inline-block;height:var(--table-image-height);width:var(--table-image-width)}.custom-big-table .domPropsInnerHTML-span .icon-dot-custom{background:var(--table-icon-color);border-radius:50%;box-shadow:0 2px 4px 0 var(--table-icon-shadow);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-red{background:red;border-radius:50%;box-shadow:0 2px 4px 0 rgba(255,0,0,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-blue{background:blue;border-radius:50%;box-shadow:0 2px 4px 0 rgba(0,0,255,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-green{background:green;border-radius:50%;box-shadow:0 2px 4px 0 rgba(0,128,0,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-gray{background:gray;border-radius:50%;box-shadow:0 2px 4px 0 hsla(0,0%,50%,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-yellow{background:#ff0;border-radius:50%;box-shadow:0 2px 4px 0 rgba(255,255,0,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-resolved{background:#36be8c;border-radius:50%;box-shadow:0 2px 4px 0 rgba(54,190,140,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-huifu{background:#42d0f6;border-radius:50%;box-shadow:0 2px 4px 0 rgba(66,208,246,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-close{background:#718391;border-radius:50%;box-shadow:0 2px 4px 0 rgba(113,131,145,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-audit{background:#f4ba32;border-radius:50%;box-shadow:0 2px 4px 0 rgba(244,186,50,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-design{background:#927ce1;border-radius:50%;box-shadow:0 2px 4px 0 rgba(146,124,225,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-develop{background:#4eb0ef;border-radius:50%;box-shadow:0 2px 4px 0 rgba(78,176,239,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-develop-complete{background:#6381f9;border-radius:50%;box-shadow:0 2px 4px 0 rgba(99,129,249,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .vxe-table--render-default .vxe-table--fixed-left-wrapper.scrolling--middle{box-shadow:7px 0 8px -3px rgba(0,0,0,.15)}.custom-big-table .vxe-table--render-default .vxe-table--fixed-right-wrapper.scrolling--middle{box-shadow:-7px 0 8px -3px rgba(0,0,0,.15)}.custom-big-table .vxe-table--render-default.size--mini{font-size:14px}.custom-big-table .vxe-table--render-default .vxe-body--expanded-column,.custom-big-table .vxe-table--render-default .vxe-table--border-line{border-color:#d5d5d599}.custom-big-table .vxe-table--render-default .vxe-table--footer-wrapper{border-top-color:#d5d5d599}.custom-big-table .vxe-table--render-default.border--default .vxe-body--column,.custom-big-table .vxe-table--render-default.border--default .vxe-footer--column,.custom-big-table .vxe-table--render-default.border--default .vxe-header--column,.custom-big-table .vxe-table--render-default.border--inner .vxe-body--column,.custom-big-table .vxe-table--render-default.border--inner .vxe-footer--column,.custom-big-table .vxe-table--render-default.border--inner .vxe-header--column{background-image:linear-gradient(#d5d5d599,#d5d5d599)}.custom-big-table .vxe-table--render-default.border--full .vxe-body--column,.custom-big-table .vxe-table--render-default.border--full .vxe-footer--column,.custom-big-table .vxe-table--render-default.border--full .vxe-header--column{background-image:linear-gradient(#d5d5d599,#d5d5d599),linear-gradient(#d5d5d599,#d5d5d599)}.custom-big-table .vxe-table--render-default.border--full .vxe-table--fixed-left-wrapper .vxe-body--column{border-right-color:#d5d5d599}.custom-big-table .vxe-table--render-default.border--default .vxe-table--header-wrapper .vxe-header--row:last-child .vxe-header--gutter,.custom-big-table .vxe-table--render-default.border--full .vxe-table--header-wrapper .vxe-header--row:last-child .vxe-header--gutter,.custom-big-table .vxe-table--render-default.border--inner .vxe-table--header-wrapper .vxe-header--row:last-child .vxe-header--gutter,.custom-big-table .vxe-table--render-default.border--outer .vxe-table--header-wrapper .vxe-header--row:last-child .vxe-header--gutter{background-image:linear-gradient(#d5d5d599,#d5d5d599)}.custom-big-table .vxe-table--render-default.border--default .vxe-table--header-wrapper .vxe-table--header-border-line,.custom-big-table .vxe-table--render-default.border--full .vxe-table--header-wrapper .vxe-table--header-border-line,.custom-big-table .vxe-table--render-default.border--inner .vxe-table--header-wrapper .vxe-table--header-border-line,.custom-big-table .vxe-table--render-default.border--outer .vxe-table--header-wrapper .vxe-table--header-border-line{border-bottom-color:#d5d5d599}.custom-big-table .vxe-table--render-default .vxe-cell--checkbox .vxe-checkbox--icon{color:#d5d5d5;font-weight:400}.annotation-edit{align-items:center;color:#0067ee;cursor:pointer;display:inline-flex;font-size:16px;user-select:none}.annotation-edit.is-active{color:#ff9828}.annotation-edit__icon{align-items:center;display:inline-flex}.no-data-tip{align-items:center;color:#333;display:flex;flex-direction:column;font-size:22px;height:100%;justify-content:center;width:100%}.no-data-tip>img{max-width:70%;width:260px}.no-data-tip>p{color:rgba(0,0,0,.8);font-size:16px;margin-bottom:0;margin-top:12px}.no-data-tip>span{color:rgba(0,0,0,.4);font-size:14px;margin-top:6px}.text-over-tooltip-components{display:inline-block;max-width:98%}.text-over-tooltip-components .ellipsis{color:#35393c;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-over-tooltip-components .ellipsis i{font-style:normal;white-space:nowrap;word-break:keep-all}.text-over-tooltip-components .fs20{color:green;font-size:20px;font-weight:600;line-height:22px}.text-over-tooltip-components .fs12{color:orange;font-size:12px;font-weight:400;line-height:14px}.svg-icon{fill:currentcolor;height:1em;overflow:hidden;vertical-align:-.15em;width:1em}.vxe-header--column [annotation-hover-show=true]{visibility:hidden}.vxe-header--column:hover [annotation-hover-show=true]{visibility:visible}.big-table__annotationWrapper{align-items:center;display:inline-flex;width:20px}.big-table__annotationWrapper .is-active{position:relative;top:3px}.big-table__boldCell{font-weight:700}
1
+ .big-table-filter-wrap{background-color:#fff;border-radius:4px;box-shadow:0 2px 8px rgba(0,0,0,.2);display:flex;flex-flow:column wrap;margin-top:-6px;min-width:280px;overflow:hidden;position:fixed;transform:translateX(-2%);transition:width 2s;z-index:99998}.big-table-filter-wrap .sort-list{margin-top:6px}.big-table-filter-wrap .sort-item{align-items:center;background:#f7f7f7;display:flex;height:32px;padding:0 13px}.big-table-filter-wrap .sort-item.active,.big-table-filter-wrap .sort-item:hover{background:#f2f2f2}.big-table-filter-wrap .sort-icon{background-size:contain;display:inline-block;height:16px;width:16px}.big-table-filter-wrap .sort-text{color:rgba(0,0,0,.8);font-size:14px;line-height:32px;margin-left:11px}.big-table-filter-wrap .sort-icon-desc{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAABT0lEQVRYR+3WvSuGYRTH8c9TykpJSimLMvgHpLyUCQsmg/wBMss/ILvdJgspNnkbZFYGk7JQSAaLwUuX7uFxu3E/nvvqSd3XeHW6zvec65zfORUNPpUG+1cClBnIysABhiMV5y4mqt/OAliPCHCImd8AIgWf/WzMIhzFK/Z/iigWQAtuE4A2PH0HEQugG5eJ005clwBlBmrJwDwGcorBNjYybOsqwit05QQ4R1/RAB3oqQHgoWiAnL5/NKvrC/4tQBNacYesDAR5fkxHV6QU72EQczhNSfE4VpOOmY01jsOyMYYXLGElcbSIZT4W4C1MxQIIUy9sU1ltGXyeYQSfuua7L2jOWYnPKbt2HKE3dR/0Iqx593lq4AT9OQE2MZ2yDTpyXKUlF0lthP3gy8nKwBqGcgLsYCHDNuwAAe4Nk7ipZRbk9F2MWZFt+CeiEuAdAU5CIQxYYdUAAAAASUVORK5CYII=")}.big-table-filter-wrap .filter-header{cursor:auto;padding:5px 13px}.big-table-filter-wrap .filter-header-icon{border-right-color:#333;border-top-color:#333}.big-table-filter-wrap .filter-header-text{margin-left:11px}.big-table-filter-wrap .check-search-wrap{background:#f7f7f7;display:flex;justify-content:center;padding:8px 0;width:100%}.big-table-filter-wrap .check-seach-input{line-height:32px}.big-table-filter-wrap .checkbox-box{padding-right:3px;width:100%}.big-table-filter-wrap .checkbox-wrap{background:#fff;display:flex;flex-direction:column;overflow-y:auto;padding:0 3px 0 13px}.big-table-filter-wrap .checkbox-wrap::-webkit-scrollbar{height:4px;width:4px}.big-table-filter-wrap .checkbox-wrap::-webkit-scrollbar-thumb{background-color:#d5d5d5;border-radius:4px}.big-table-filter-wrap .checkbox-wrap::-webkit-scrollbar-track{background-color:#fff;border-radius:4px}.big-table-filter-wrap .checkbox-wrap::-webkit-scrollbar-corner{background-color:#000;border-radius:4px;width:4px}.big-table-filter-wrap .checkbox-wrap--search{padding-right:10px}.big-table-filter-wrap .checkbox-btn-wrap{display:flex;padding:9px 10px 9px 14px}.big-table-filter-wrap .checkbox-btn-wrap .checkbox-btn{padding:0;width:56px}.big-table-filter-wrap .checkbox-btn-wrap .checkbox-btn+.checkbox-btn{margin-left:8px}.big-table-filter-wrap .checkbox-btn-wrap .checkbox-btn-status .checkbox-btn{border:0;border-radius:0;margin:0 13px;position:relative;width:auto}.big-table-filter-wrap .checkbox-btn-wrap .checkbox-btn-status .checkbox-btn:hover:after{background-color:#5585f5;bottom:5px;content:"";display:block;height:1px;position:absolute;width:100%}.big-table-filter-wrap .arrows-icon{bottom:-1px;cursor:nw-resize;font-size:15px;height:20px;position:absolute;right:-1px;width:25px}.big-table__separate{padding:4px}.big-table__separatePlaceholder{display:inline-block;max-width:0;visibility:hidden;width:0;word-break:keep-all}.custom-big-table{position:relative}.custom-big-table .n-input{width:fit-content}.custom-big-table .img-wrap{align-items:center;display:flex;height:100%;line-height:1;padding:2px 0}.custom-big-table .img-wrap img{cursor:pointer;max-height:100%;object-fit:contain}.custom-big-table .img-wrap.img-circle img{border-radius:50%;object-fit:contain;width:28px}.custom-big-table .bigTable-qr-span{display:inline-block;height:100%;position:relative}.custom-big-table .bigTable-qr-span .bigTable-qr-img{max-height:96%}.custom-big-table .bigTable-qr-span>span{align-items:center;background:rgba(0,0,0,.7);color:#fff;cursor:pointer;display:none;height:100%;justify-content:center;left:0;position:absolute;top:0;width:100%}.custom-big-table .bigTable-qr-span:hover>span{display:inline-flex}.custom-big-table .base-form{align-items:center;display:flex;overflow:hidden!important;width:100%}.custom-big-table .base-form-content{width:100%}.custom-big-table textarea{height:32px;margin-bottom:0;resize:none}.custom-big-table .formItem-select-multiple{align-items:center;display:flex;line-height:40px;width:100%}.custom-big-table.mt{height:calc(100% - 78px)!important;margin-top:26px}.custom-big-table.expand-padding .vxe-table .vxe-body--expanded-cell{padding-left:66px!important;padding-right:66px!important}.custom-big-table th.vxe-header--column{cursor:pointer}.custom-big-table .row-btn{margin-right:10px}.custom-big-table .vxe-table{transform:translateZ(0)}.custom-big-table .vxe-table .vxe-table--empty-content,.custom-big-table .vxe-table .vxe-table--empty-content>div{height:100%;width:100%}.custom-big-table .vxe-table .vxe-table--empty-content>div .no-data-tip{display:inline-flex}.custom-big-table .vxe-table .col--checkbox .vxe-cell,.custom-big-table .vxe-table .col--seq .vxe-cell{padding:0}.custom-big-table .vxe-table .col--checkbox .vxe-cell .vxe-checkbox--label,.custom-big-table .vxe-table .col--seq .vxe-cell .vxe-checkbox--label{padding-left:0}.custom-big-table .vxe-table .vxe-cell .vxe-tree-cell{height:100%}.custom-big-table .vxe-table .scan-multi-delete{color:#f06f64}.custom-big-table .vxe-table .vxe-table--header{background-color:#f2f2f2}.custom-big-table .vxe-table .vxe-table--header .vxe-header--column .vxe-cell--title{color:#35393c;height:100%;line-height:unset}.custom-big-table .vxe-table .vxe-table--header .vxe-header--column .vxe-cell--title .is-edit{margin-top:-3px;vertical-align:middle}.custom-big-table .vxe-table .vxe-table--header .vxe-header--column .vxe-cell--title .header-title-span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.custom-big-table .vxe-table .vxe-table--header .col--checkbox .vxe-cell--title,.custom-big-table .vxe-table .vxe-table--header .col--seq .vxe-cell--title{display:inline-block}.custom-big-table .vxe-table .vxe-table--body-wrapper::-webkit-scrollbar,.custom-big-table .vxe-table .vxe-table--footer-wrapper.body--wrapper::-webkit-scrollbar{background-color:transparent;height:10px;width:10px}.custom-big-table .vxe-table .vxe-table--body-wrapper::-webkit-scrollbar-thumb,.custom-big-table .vxe-table .vxe-table--footer-wrapper.body--wrapper::-webkit-scrollbar-thumb{background-clip:padding-box;background-color:#f2f2f2;border:3px dashed transparent;border-radius:0}.custom-big-table .vxe-table .vxe-table--body-wrapper::-webkit-scrollbar-thumb:hover,.custom-big-table .vxe-table .vxe-table--footer-wrapper.body--wrapper::-webkit-scrollbar-thumb:hover{background:#b2b2b2}.custom-big-table .vxe-table .vxe-footer--row .vxe-footer--column>.vxe-cell .vxe-cell--item{height:30px;line-height:30px}.custom-big-table .vxe-table .vxe-cell--checkbox .vxe-checkbox--label{display:none}.custom-big-table .filter-box{align-items:center;display:flex;width:100%}.custom-big-table .filter-box .text-over-tooltip-components{max-width:calc(100% - 40px)}.custom-big-table .filter-box .vxe-filter--btn{border-right-color:#c0c4cc;border-top-color:#c0c4cc}.custom-big-table .filter-box .vxe-filter--btn.active{border-right-color:#35393c;border-top-color:#35393c}.custom-big-table .filter-box .vxe-filter--btn.checked{border-right-color:#5585f5;border-top-color:#5585f5}.custom-big-table .disabled-checked-tips{background:#fff;border:2px solid #ff1818;border-radius:50%;bottom:0;box-sizing:border-box;height:16px;margin-top:-8px;overflow:hidden;position:absolute;right:0;top:50%;width:16px}.custom-big-table .disabled-checked-tips:after{background-color:#ff1818;content:"";height:2px;left:0;position:absolute;top:0;transform:rotate(45deg);transform-origin:0 2px;width:16px}.custom-big-table .form-select-table .n-base-select-menu__empty{display:none}.custom-big-table .percent-wrap{align-items:center;display:flex;flex-direction:column;justify-content:center;text-align:center}.custom-big-table .percent-wrap .percent-value{line-height:1;margin-bottom:-4px;margin-top:4px}.custom-big-table .refresh{align-items:center;background-color:#fff;border-bottom-left-radius:14px;border-top-left-radius:14px;box-shadow:0 2px 4px 0 hsla(0,0%,42%,.13);color:#5585f5;cursor:pointer;display:flex;font-size:12px;height:27px;padding-left:14px;padding-right:14px;position:absolute;right:0;top:6px;z-index:1}.custom-big-table .refresh-row{margin-bottom:0;margin-left:3px}.custom-big-table .check-wrap{background:#ffffe9;display:flex;justify-content:center;line-height:26px;margin-top:-26px;position:absolute;width:100%}.custom-big-table .check-wrap .check-wrap-btn,.custom-big-table .check-wrap .check-wrap-title{color:#000;cursor:pointer;font-size:12px;margin-bottom:0}.custom-big-table .check-wrap .check-wrap-btn{color:#5585f5}.custom-big-table .domPropsInnerHTML-span{height:100%}.custom-big-table .domPropsInnerHTML-span img{display:inline-block;height:var(--table-image-height);width:var(--table-image-width)}.custom-big-table .domPropsInnerHTML-span .icon-dot-custom{background:var(--table-icon-color);border-radius:50%;box-shadow:0 2px 4px 0 var(--table-icon-shadow);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-red{background:red;border-radius:50%;box-shadow:0 2px 4px 0 rgba(255,0,0,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-blue{background:blue;border-radius:50%;box-shadow:0 2px 4px 0 rgba(0,0,255,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-green{background:green;border-radius:50%;box-shadow:0 2px 4px 0 rgba(0,128,0,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-gray{background:gray;border-radius:50%;box-shadow:0 2px 4px 0 hsla(0,0%,50%,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-yellow{background:#ff0;border-radius:50%;box-shadow:0 2px 4px 0 rgba(255,255,0,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-resolved{background:#36be8c;border-radius:50%;box-shadow:0 2px 4px 0 rgba(54,190,140,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-huifu{background:#42d0f6;border-radius:50%;box-shadow:0 2px 4px 0 rgba(66,208,246,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-close{background:#718391;border-radius:50%;box-shadow:0 2px 4px 0 rgba(113,131,145,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-audit{background:#f4ba32;border-radius:50%;box-shadow:0 2px 4px 0 rgba(244,186,50,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-design{background:#927ce1;border-radius:50%;box-shadow:0 2px 4px 0 rgba(146,124,225,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-develop{background:#4eb0ef;border-radius:50%;box-shadow:0 2px 4px 0 rgba(78,176,239,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .domPropsInnerHTML-span .icon-dot-develop-complete{background:#6381f9;border-radius:50%;box-shadow:0 2px 4px 0 rgba(99,129,249,.5);display:inline-block;height:8px;margin-right:6px;width:8px}.custom-big-table .vxe-table--render-default .vxe-table--fixed-left-wrapper.scrolling--middle{box-shadow:7px 0 8px -3px rgba(0,0,0,.15)}.custom-big-table .vxe-table--render-default .vxe-table--fixed-right-wrapper.scrolling--middle{box-shadow:-7px 0 8px -3px rgba(0,0,0,.15)}.custom-big-table .vxe-table--render-default.size--mini{font-size:14px}.custom-big-table .vxe-table--render-default .vxe-body--expanded-column,.custom-big-table .vxe-table--render-default .vxe-table--border-line{border-color:#d5d5d599}.custom-big-table .vxe-table--render-default .vxe-table--footer-wrapper{border-top-color:#d5d5d599}.custom-big-table .vxe-table--render-default.border--default .vxe-body--column,.custom-big-table .vxe-table--render-default.border--default .vxe-footer--column,.custom-big-table .vxe-table--render-default.border--default .vxe-header--column,.custom-big-table .vxe-table--render-default.border--inner .vxe-body--column,.custom-big-table .vxe-table--render-default.border--inner .vxe-footer--column,.custom-big-table .vxe-table--render-default.border--inner .vxe-header--column{background-image:linear-gradient(#d5d5d599,#d5d5d599)}.custom-big-table .vxe-table--render-default.border--full .vxe-body--column,.custom-big-table .vxe-table--render-default.border--full .vxe-footer--column,.custom-big-table .vxe-table--render-default.border--full .vxe-header--column{background-image:linear-gradient(#d5d5d599,#d5d5d599),linear-gradient(#d5d5d599,#d5d5d599)}.custom-big-table .vxe-table--render-default.border--full .vxe-table--fixed-left-wrapper .vxe-body--column{border-right-color:#d5d5d599}.custom-big-table .vxe-table--render-default.border--default .vxe-table--header-wrapper .vxe-header--row:last-child .vxe-header--gutter,.custom-big-table .vxe-table--render-default.border--full .vxe-table--header-wrapper .vxe-header--row:last-child .vxe-header--gutter,.custom-big-table .vxe-table--render-default.border--inner .vxe-table--header-wrapper .vxe-header--row:last-child .vxe-header--gutter,.custom-big-table .vxe-table--render-default.border--outer .vxe-table--header-wrapper .vxe-header--row:last-child .vxe-header--gutter{background-image:linear-gradient(#d5d5d599,#d5d5d599)}.custom-big-table .vxe-table--render-default.border--default .vxe-table--header-wrapper .vxe-table--header-border-line,.custom-big-table .vxe-table--render-default.border--full .vxe-table--header-wrapper .vxe-table--header-border-line,.custom-big-table .vxe-table--render-default.border--inner .vxe-table--header-wrapper .vxe-table--header-border-line,.custom-big-table .vxe-table--render-default.border--outer .vxe-table--header-wrapper .vxe-table--header-border-line{border-bottom-color:#d5d5d599}.custom-big-table .vxe-table--render-default .vxe-cell--checkbox .vxe-checkbox--icon{color:#d5d5d5;font-weight:400}.annotation-edit{align-items:center;color:#0067ee;cursor:pointer;display:inline-flex;font-size:16px;user-select:none}.annotation-edit.is-active{color:#ff9828}.annotation-edit__icon{align-items:center;display:inline-flex}.no-data-tip{align-items:center;color:#333;display:flex;flex-direction:column;font-size:22px;height:100%;justify-content:center;width:100%}.no-data-tip>img{max-width:70%;width:260px}.no-data-tip>p{color:rgba(0,0,0,.8);font-size:16px;margin-bottom:0;margin-top:12px}.no-data-tip>span{color:rgba(0,0,0,.4);font-size:14px;margin-top:6px}.text-over-tooltip-components{display:inline-block;max-width:98%}.text-over-tooltip-components .ellipsis{color:#35393c;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-over-tooltip-components .ellipsis i{font-style:normal;white-space:nowrap;word-break:keep-all}.text-over-tooltip-components .fs20{color:green;font-size:20px;font-weight:600;line-height:22px}.text-over-tooltip-components .fs12{color:orange;font-size:12px;font-weight:400;line-height:14px}.svg-icon{fill:currentcolor;height:1em;overflow:hidden;vertical-align:-.15em;width:1em}.vxe-header--column [annotation-hover-show=true]{visibility:hidden}.vxe-header--column:hover [annotation-hover-show=true]{visibility:visible}.big-table__annotationWrapper{align-items:center;display:inline-flex;width:20px}.big-table__annotationWrapper .is-active{position:relative;top:3px}.big-table__boldCell{font-weight:700}
@@ -4,7 +4,7 @@ import useGrid from './useGrid.js';
4
4
  import { useShadow } from './useShadow.js';
5
5
  import { TEMPERATURE_MENU, PAIN_MENU, OVERLAP } from './constant.js';
6
6
  import { cloneDeep } from 'lodash-es';
7
- import { isOneLine, isEffectiveNode, getIndex, deleteProperty } from '../utils/utils.js';
7
+ import { isOneLine, getType, setOtherType, isEffectiveNode, getIndex, deleteProperty } from '../utils/utils.js';
8
8
 
9
9
  function useCenter(canvas, propItems, emits, cumputedX, cumputedY, getXValue, getYValue, addRenderItem, pointTipProps, pointMenuProps, useCommon) {
10
10
  useGrid(canvas, propItems);
@@ -201,7 +201,7 @@ function useCenter(canvas, propItems, emits, cumputedX, cumputedY, getXValue, ge
201
201
  origin: {
202
202
  title: v.title,
203
203
  unit: v.unit,
204
- type: v.bigType.includes("_other") ? v.bigType.split("_")[0] : v.bigType,
204
+ type: getType(v.bigType),
205
205
  dataIndex: v.dataIndex,
206
206
  key: v.key
207
207
  },
@@ -493,7 +493,7 @@ function useCenter(canvas, propItems, emits, cumputedX, cumputedY, getXValue, ge
493
493
  key: key || "",
494
494
  unit: scaleValue.unit,
495
495
  type,
496
- _type: title.includes("\u5FC3\u7387") ? "pulse_other" : type,
496
+ _type: setOtherType(title, type),
497
497
  dataIndex,
498
498
  index
499
499
  },
@@ -1,6 +1,6 @@
1
1
  import { fabric } from '../utils/index.js';
2
2
  import { defaultBorderStyle, defaultTextStyle, defaultStyle, defaultRectStyle, drawPoint, drawTextGroup } from './useDraw.js';
3
- import { isOneLine } from '../utils/utils.js';
3
+ import { getType, isOneLine } from '../utils/utils.js';
4
4
 
5
5
  function useLeft(canvas, propItems, emits, setPopup, pointTipProps, cumputedX, cumputedY, getXValue, getYValue, isAddPoint, updateData, useCommon) {
6
6
  var _a, _b;
@@ -231,7 +231,7 @@ function useLeft(canvas, propItems, emits, setPopup, pointTipProps, cumputedX, c
231
231
  origin: {
232
232
  title: item.title,
233
233
  unit: item.unit,
234
- type: item.bigType.includes("_other") ? item.bigType.split("_")[0] : item.bigType,
234
+ type: getType(item.bigType),
235
235
  _type: item.bigType,
236
236
  dataIndex: item.dataIndex,
237
237
  key: item.key,
@@ -275,7 +275,7 @@ function useLeft(canvas, propItems, emits, setPopup, pointTipProps, cumputedX, c
275
275
  pointTipProps.show = false;
276
276
  if (event.e.button === 0) {
277
277
  if (isLimit(point)) {
278
- const isRepeat = getEqualXTypes(point.left, "_type", xCellWidth).includes(point.origin.type);
278
+ const isRepeat = getEqualXTypes(point.left, "_type", xCellWidth).includes(point.origin._type);
279
279
  const isLimitAdd = isAddPoint(point.left);
280
280
  if (!isLimitAdd || isRepeat) {
281
281
  isRepeat && isLimitAdd && repeatTip();
@@ -9,6 +9,7 @@ import { useBottom } from './useBottom.js';
9
9
  import { useOther } from './useOther.js';
10
10
  import { useEvent, useCanvasEvent } from './useEvent.js';
11
11
  import '../utils/index.js';
12
+ import { setOtherType } from '../utils/utils.js';
12
13
  import { useCommon } from './useCommon.js';
13
14
  import 'lodash-es';
14
15
 
@@ -156,7 +157,7 @@ function useTemperatureChart(canvas, props, emits, canvasRef) {
156
157
  return item.dataList.map((v, dataIndex) => {
157
158
  return {
158
159
  ...v,
159
- bigType: v.title.includes("\u5FC3\u7387") ? "pulse_other" : item.type,
160
+ bigType: setOtherType(v.title, item.type),
160
161
  unit: item.unit,
161
162
  dataIndex
162
163
  };
@@ -9,3 +9,5 @@ export declare function getIndex(time: string, list: AnyObject[]): number;
9
9
  * @return {*}
10
10
  */
11
11
  export declare function isOneLine(type: string): boolean;
12
+ export declare function setOtherType(title: string, type: string): string;
13
+ export declare function getType(type: string): string;
@@ -14,5 +14,11 @@ function getIndex(time, list) {
14
14
  function isOneLine(type) {
15
15
  return ["temperature", "pulse"].includes(type);
16
16
  }
17
+ function setOtherType(title, type) {
18
+ return title.includes("\u5FC3\u7387") ? "pulse_other" : type;
19
+ }
20
+ function getType(type) {
21
+ return type.includes("_other") ? type.split("_")[0] : type;
22
+ }
17
23
 
18
- export { deleteProperty, getIndex, isEffectiveNode, isOneLine };
24
+ export { deleteProperty, getIndex, getType, isEffectiveNode, isOneLine, setOtherType };
@@ -16,6 +16,7 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
16
16
  const linebarField = useConfigurationField().generateFieldListByKeys(null, [
17
17
  EditAbleField.NAME,
18
18
  EditAbleField.LAYOUT_WIDTH_ENUM,
19
+ EditAbleField.NOTES,
19
20
  EditAbleField.DEFAULT_EXPAND,
20
21
  EditAbleField.FOLD
21
22
  ]);
@@ -60,7 +60,13 @@ function useConfigurationField() {
60
60
  const htmlMap = new Map([
61
61
  [
62
62
  "LINE_BAR",
63
- [EditAbleField.NAME, EditAbleField.LAYOUT_WIDTH_ENUM, EditAbleField.DEFAULT_EXPAND, EditAbleField.FOLD]
63
+ [
64
+ EditAbleField.NAME,
65
+ EditAbleField.LAYOUT_WIDTH_ENUM,
66
+ EditAbleField.NOTES,
67
+ EditAbleField.DEFAULT_EXPAND,
68
+ EditAbleField.FOLD
69
+ ]
64
70
  ],
65
71
  ...["NEWLINE", "COMPLEX", "COMBINATION"].map(
66
72
  (key) => [key, [EditAbleField.NAME, EditAbleField.LAYOUT_WIDTH_ENUM]]
@@ -1,4 +1,5 @@
1
1
  import { defineComponent, ref, computed, watch, inject, createVNode } from 'vue';
2
+ import { isObjectField } from '@formily/core';
2
3
  import { isNumber, isArray } from 'lodash-es';
3
4
  import '../../../index.js';
4
5
  import { useField, RecursionField, connect } from '@formily/vue';
@@ -55,8 +56,15 @@ const script = defineComponent({
55
56
  currentGroupNum.value++;
56
57
  }
57
58
  async function removeGroup(idx) {
58
- currentGroupNum.value--;
59
- await field.value.remove(idx);
59
+ if (currentGroupNum.value > 1) {
60
+ currentGroupNum.value--;
61
+ await field.value.remove(idx);
62
+ } else {
63
+ const currentField = field.value.query(`${field.value.path.toString()}.${idx}`).take();
64
+ if (!currentField || !isObjectField(currentField))
65
+ return;
66
+ await currentField.reset();
67
+ }
60
68
  }
61
69
  const collector = inject(InjectionBusinessCollector);
62
70
  const {
@@ -86,7 +94,7 @@ const script = defineComponent({
86
94
  }, [createVNode(RecursionField, {
87
95
  "schema": createObjSchema(schemaAdaptor(props.getProperties())),
88
96
  "name": idx
89
- }, null), idx === 0 ? null : createVNode(NButton, {
97
+ }, null), createVNode(NButton, {
90
98
  "text": true,
91
99
  "type": "error",
92
100
  "class": "form-render__combinationClose",
@@ -1,12 +1,14 @@
1
1
  export declare const FORM_ITEM: import("vue").DefineComponent<{
2
2
  label: StringConstructor;
3
3
  propertyKey: StringConstructor;
4
+ remark: StringConstructor;
4
5
  span: NumberConstructor;
5
6
  annotation: {};
6
7
  fieldItem: {};
7
8
  }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
8
9
  label: StringConstructor;
9
10
  propertyKey: StringConstructor;
11
+ remark: StringConstructor;
10
12
  span: NumberConstructor;
11
13
  annotation: {};
12
14
  fieldItem: {};
@@ -1,10 +1,12 @@
1
1
  import { defineComponent, inject, computed, createVNode, mergeProps } from 'vue';
2
+ import { widthAppend } from '../../../../../shared/utils/index.js';
2
3
  import { isVoidField } from '@formily/core';
3
4
  import { useField, connect, mapProps } from '@formily/vue';
4
5
  import { isString } from 'lodash-es';
5
6
  import { NFormItem } from 'naive-ui';
6
7
  import Annotation from '../../../../annotation-edit/index.js';
7
8
  import '../../../index.js';
9
+ import TooltipMessage from '../tooltipMessage.vue.js';
8
10
  import { InjectionAnnotation, InjectionFormUUID } from '../../constants/index.js';
9
11
  import { dotEscape } from '../../utils/schema.js';
10
12
  import { validateMessageParser } from '../../utils/index.js';
@@ -13,6 +15,7 @@ const script = defineComponent({
13
15
  props: {
14
16
  label: String,
15
17
  propertyKey: String,
18
+ remark: String,
16
19
  span: Number,
17
20
  annotation: {},
18
21
  fieldItem: {}
@@ -49,14 +52,27 @@ const script = defineComponent({
49
52
  const id = computed(() => {
50
53
  return dotEscape(`${uuid}-${field.value.path.toString()}`);
51
54
  });
55
+ const marginRight = computed(() => {
56
+ let result = 0;
57
+ showAnnotation.value && (result += 18);
58
+ props.remark && (result += 18);
59
+ return result;
60
+ });
52
61
  function renderLabel() {
53
62
  return showLabel.value ? createVNode("section", {
54
63
  "class": "form-render__formItemLabel"
55
64
  }, [createVNode("span", {
56
- "class": ["form-render__formItemLabel--text", {
57
- "has-annotation": showAnnotation.value
58
- }]
59
- }, [props.label]), showAnnotation.value ? renderAnnotation() : null]) : null;
65
+ "class": "form-render__formItemLabel--text",
66
+ "style": {
67
+ marginRight: widthAppend(marginRight.value)
68
+ }
69
+ }, [props.label]), marginRight.value ? createVNode("section", {
70
+ "class": "form-render__formItemLabel--operation"
71
+ }, [props.remark ? createVNode("div", {
72
+ "class": "form-render__formItemLabel--tooltip"
73
+ }, [createVNode(TooltipMessage, {
74
+ "message": props.remark
75
+ }, null)]) : null, showAnnotation.value ? renderAnnotation() : null]) : null]) : null;
60
76
  }
61
77
  return () => createVNode(NFormItem, mergeProps({
62
78
  "class": "form-render__formItem",
@@ -101,8 +101,12 @@ const script = defineComponent({
101
101
  emitChange();
102
102
  }
103
103
  function removeGroup(idx) {
104
- combinationData.value.splice(idx, 1);
105
- formRenderRefs.value.splice(idx, 1);
104
+ if (combinationData.value.length > 1) {
105
+ combinationData.value.splice(idx, 1);
106
+ formRenderRefs.value.splice(idx, 1);
107
+ } else {
108
+ combinationData.value.splice(idx, 1, {});
109
+ }
106
110
  emitChange();
107
111
  }
108
112
  const maxGroupNum = computed(() => {
@@ -155,7 +159,7 @@ const script = defineComponent({
155
159
  "ref": (_ref) => setFormRenderRef(idx, _ref),
156
160
  "fieldList": props.getProperties(),
157
161
  "onFormChange": (payload) => onChange(idx, payload)
158
- }, null), idx === 0 ? null : createVNode(NButton, {
162
+ }, null), createVNode(NButton, {
159
163
  "text": true,
160
164
  "class": "form-render__combinationClose",
161
165
  "type": "error",
@@ -32,11 +32,21 @@ declare const _default: import("vue").DefineComponent<{
32
32
  toggleShow: () => void;
33
33
  fieldKey: import("vue").ComputedRef<string>;
34
34
  formItemDepsCollector: import("../../../../../../../es/components/form-render").FormItemDepsCollector;
35
+ TooltipMessage: import("vue").DefineComponent<{
36
+ message: StringConstructor;
37
+ }, {
38
+ props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
39
+ message: StringConstructor;
40
+ }>> & {}>>;
41
+ parsedMessages: import("vue").ComputedRef<string[]>;
42
+ HelpCircleOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
43
+ NTooltip: any;
44
+ }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
45
+ message: StringConstructor;
46
+ }>>, {}>;
35
47
  ChevronDown: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
36
48
  ChevronUp: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
37
- HelpCircleOutline: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{}>>, {}>;
38
49
  NCollapseTransition: any;
39
- NTooltip: any;
40
50
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
41
51
  show: {
42
52
  type: BooleanConstructor;
@@ -1,8 +1,9 @@
1
- import { defineComponent, ref, inject, openBlock, createElementBlock, createElementVNode, createTextVNode, toDisplayString, createBlock, unref, withCtx, createVNode, createCommentVNode, renderSlot } from 'vue';
1
+ import { defineComponent, ref, inject, openBlock, createElementBlock, createElementVNode, createTextVNode, toDisplayString, createBlock, createCommentVNode, unref, createVNode, withCtx, renderSlot } from 'vue';
2
2
  import '../../../../index.js';
3
+ import TooltipMessage from '../../tooltipMessage.vue.js';
3
4
  import { InjectionFormItemDepsCollector, FormItemLineBarDepKeyPrepend } from '../../../constants/index.js';
4
- import { HelpCircleOutline, ChevronDown, ChevronUp } from '@vicons/ionicons5';
5
- import { NTooltip, NCollapseTransition } from 'naive-ui';
5
+ import { ChevronDown, ChevronUp } from '@vicons/ionicons5';
6
+ import { NCollapseTransition } from 'naive-ui';
6
7
  import _export_sfc from '../../../../../../_virtual/plugin-vue_export-helper.js';
7
8
  import { useFormField } from '../../../hooks/useFormField.js';
8
9
 
@@ -40,18 +41,10 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
40
41
  }, [
41
42
  createElementVNode("div", _hoisted_2, [
42
43
  createTextVNode(toDisplayString(__props.title) + " ", 1),
43
- __props.remark ? (openBlock(), createBlock(unref(NTooltip), {
44
+ __props.remark ? (openBlock(), createBlock(TooltipMessage, {
44
45
  key: 0,
45
- trigger: "hover"
46
- }, {
47
- trigger: withCtx(() => [
48
- createVNode(unref(HelpCircleOutline))
49
- ]),
50
- default: withCtx(() => [
51
- createTextVNode(" " + toDisplayString(__props.remark), 1)
52
- ]),
53
- _: 1
54
- })) : createCommentVNode("v-if", true)
46
+ message: __props.remark
47
+ }, null, 8, ["message"])) : createCommentVNode("v-if", true)
55
48
  ]),
56
49
  _show.value ? (openBlock(), createBlock(unref(ChevronDown), { key: 0 })) : (openBlock(), createBlock(unref(ChevronUp), { key: 1 }))
57
50
  ]),