cnhis-design-vue 3.1.33-beta.22 → 3.1.33-beta.24
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/README.md +123 -123
- package/es/components/big-table/src/BigTable.vue2.js +4 -3
- package/es/components/fabric-chart/src/hooks/useCenter.js +2 -1
- package/es/components/fabric-chart/src/hooks/useCommon.d.ts +1 -1
- package/es/components/fabric-chart/src/hooks/useCommon.js +3 -2
- package/es/components/fabric-chart/src/hooks/useCumputedPoint.js +1 -5
- package/es/components/fabric-chart/src/hooks/useLeft.js +2 -1
- package/es/components/iho-table/src/plugins/lowCodeFieldAdaptorPlugin/index.js +1 -1
- package/es/components/iho-table/style/index.css +1 -1
- package/es/components/index.css +1 -1
- package/es/shared/assets/img/failure.js +1 -1
- package/es/shared/assets/img/failure.png.js +1 -1
- package/es/shared/assets/img/icon-asc.js +1 -1
- package/es/shared/assets/img/icon-desc.js +1 -1
- package/es/shared/assets/img/no-permission.js +1 -1
- package/es/shared/assets/img/no-permission.png.js +1 -1
- package/es/shared/assets/img/nodata.js +1 -1
- package/es/shared/assets/img/nodata.png.js +1 -1
- package/es/shared/assets/img/notfound.js +1 -1
- package/es/shared/assets/img/notfound.png.js +1 -1
- package/es/shared/assets/img/qr.js +1 -1
- package/es/shared/assets/img/qr.png.js +1 -1
- package/es/shared/assets/img/success.js +1 -1
- package/es/shared/assets/img/success.png.js +1 -1
- package/es/shared/assets/img/video.js +1 -1
- package/es/shared/assets/img/video.png.js +1 -1
- package/es/shared/assets/img/video_default_cover.js +1 -1
- package/es/shared/assets/img/video_default_cover.png.js +1 -1
- package/es/shared/assets/img/video_hover.js +1 -1
- package/es/shared/assets/img/video_play_hover.js +1 -1
- package/es/shared/assets/img/xb_big.js +1 -1
- package/es/shared/assets/img/xb_big.png.js +1 -1
- package/es/shared/assets/img/xb_small.js +1 -1
- package/es/shared/assets/img/xb_small.png.js +1 -1
- package/package.json +2 -2
- package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
- package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +0 -1
- package/es/components/bpmn-workflow/types/ModelingModule.d.ts +0 -1
- package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +0 -1
- package/es/components/fabric-chart/src/utils/index.d.ts +0 -6823
- package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +0 -86
- package/es/shared/utils/tapable/index.d.ts +0 -139
package/README.md
CHANGED
|
@@ -1,123 +1,123 @@
|
|
|
1
|
-
# 安装
|
|
2
|
-
|
|
3
|
-
```shell
|
|
4
|
-
npm i cnhis-design-vue@[版本号]
|
|
5
|
-
# or
|
|
6
|
-
yarn add cnhis-design-vue@[版本号] #推荐
|
|
7
|
-
```
|
|
8
|
-
|
|
9
|
-
## 1.全局引入
|
|
10
|
-
|
|
11
|
-
```typescript
|
|
12
|
-
// main.ts
|
|
13
|
-
import { createApp } from 'vue';
|
|
14
|
-
import App from './App.vue';
|
|
15
|
-
import 'cnhis-design-vue/es/packages/index.css';
|
|
16
|
-
import cui from 'cnhis-design-vue';
|
|
17
|
-
|
|
18
|
-
const app = createApp(App);
|
|
19
|
-
app.use(cui).mount('#app');
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
## 2. 按需引入
|
|
23
|
-
|
|
24
|
-
组件现在支持了自动按需引入, 但是样式文件需要额外的处理
|
|
25
|
-
|
|
26
|
-
### 2.1 样式处理方式 1(按需引入样式)
|
|
27
|
-
|
|
28
|
-
```shell
|
|
29
|
-
# 安装自动导入样式的插件
|
|
30
|
-
npm i -d vite-plugin-style-import
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
```typescript
|
|
34
|
-
// vite.config.ts
|
|
35
|
-
import { defineConfig } from 'vite';
|
|
36
|
-
import { createStyleImportPlugin } from 'vite-plugin-style-import';
|
|
37
|
-
|
|
38
|
-
export default defineConfig({
|
|
39
|
-
plugins: [
|
|
40
|
-
// ...otherPlugins
|
|
41
|
-
createStyleImportPlugin({
|
|
42
|
-
libs: [
|
|
43
|
-
{
|
|
44
|
-
libraryName: 'cnhis-design-vue',
|
|
45
|
-
esModule: true,
|
|
46
|
-
ensureStyleFile: true,
|
|
47
|
-
resolveStyle: name => {
|
|
48
|
-
return `cnhis-design-vue/es/components/${ name.slice(2) }/style/index.css`;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
]
|
|
52
|
-
})
|
|
53
|
-
]
|
|
54
|
-
});
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
### 2.2 样式处理方式 2(全局引入样式)
|
|
58
|
-
|
|
59
|
-
```typescript
|
|
60
|
-
// main.ts
|
|
61
|
-
import 'cnhis-design-vue/es/components/index.css';
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
## 3. 注意
|
|
65
|
-
|
|
66
|
-
由于 vxe-table 目前的引入方式是由组件 install 触发的,所以如果需要使用 c-grid/c-big-table 组件,需要全局注册二者任意一个
|
|
67
|
-
|
|
68
|
-
```typescript
|
|
69
|
-
// main.ts
|
|
70
|
-
import { createApp } from 'vue';
|
|
71
|
-
import App from './App.vue';
|
|
72
|
-
|
|
73
|
-
import { CGrid } from 'cnhis-design-vue';
|
|
74
|
-
// 或者
|
|
75
|
-
import { CBigTable } from 'cnhis-design-vue';
|
|
76
|
-
|
|
77
|
-
const app = createApp(App);
|
|
78
|
-
app.use(CGrid);
|
|
79
|
-
// 或者
|
|
80
|
-
app.use(CBigTable);
|
|
81
|
-
app.mount('#app');
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
## 4.FAQ
|
|
85
|
-
|
|
86
|
-
### 4.1 项目打包后样式丢失
|
|
87
|
-
|
|
88
|
-
> 处理方法, 将 cnhis-design-vue 从 vendor 包中移除
|
|
89
|
-
|
|
90
|
-
```typescript
|
|
91
|
-
// vite.config.ts
|
|
92
|
-
import { defineConfig } from 'vite';
|
|
93
|
-
|
|
94
|
-
export default defineConfig({
|
|
95
|
-
rollupOptions: {
|
|
96
|
-
// ..otherOptions
|
|
97
|
-
output: {
|
|
98
|
-
dir: './dist',
|
|
99
|
-
manualChunks(id: string) {
|
|
100
|
-
if (id.includes('node_modules') && !id.includes('cnhis-design-vue')) {
|
|
101
|
-
return 'vendor';
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
});
|
|
107
|
-
```
|
|
108
|
-
|
|
109
|
-
### 4.2 找不到文件
|
|
110
|
-
|
|
111
|
-
> 由于组件库输出文件类型由 js 修改成了 mjs, 如果配置了 resolve 属性的项目, 需要将 mjs 文件类型添加至 extensions 中
|
|
112
|
-
|
|
113
|
-
```javascript
|
|
114
|
-
// vite.config.ts
|
|
115
|
-
const config = {
|
|
116
|
-
// ...otherOptions
|
|
117
|
-
resolve: {
|
|
118
|
-
// ...otherOptions
|
|
119
|
-
// 如果没有配置, 则不用考虑
|
|
120
|
-
extensions: ['.js', '.ts', '.vue', '.json', '.mjs']
|
|
121
|
-
}
|
|
122
|
-
};
|
|
123
|
-
```
|
|
1
|
+
# 安装
|
|
2
|
+
|
|
3
|
+
```shell
|
|
4
|
+
npm i cnhis-design-vue@[版本号]
|
|
5
|
+
# or
|
|
6
|
+
yarn add cnhis-design-vue@[版本号] #推荐
|
|
7
|
+
```
|
|
8
|
+
|
|
9
|
+
## 1.全局引入
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
// main.ts
|
|
13
|
+
import { createApp } from 'vue';
|
|
14
|
+
import App from './App.vue';
|
|
15
|
+
import 'cnhis-design-vue/es/packages/index.css';
|
|
16
|
+
import cui from 'cnhis-design-vue';
|
|
17
|
+
|
|
18
|
+
const app = createApp(App);
|
|
19
|
+
app.use(cui).mount('#app');
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## 2. 按需引入
|
|
23
|
+
|
|
24
|
+
组件现在支持了自动按需引入, 但是样式文件需要额外的处理
|
|
25
|
+
|
|
26
|
+
### 2.1 样式处理方式 1(按需引入样式)
|
|
27
|
+
|
|
28
|
+
```shell
|
|
29
|
+
# 安装自动导入样式的插件
|
|
30
|
+
npm i -d vite-plugin-style-import
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
```typescript
|
|
34
|
+
// vite.config.ts
|
|
35
|
+
import { defineConfig } from 'vite';
|
|
36
|
+
import { createStyleImportPlugin } from 'vite-plugin-style-import';
|
|
37
|
+
|
|
38
|
+
export default defineConfig({
|
|
39
|
+
plugins: [
|
|
40
|
+
// ...otherPlugins
|
|
41
|
+
createStyleImportPlugin({
|
|
42
|
+
libs: [
|
|
43
|
+
{
|
|
44
|
+
libraryName: 'cnhis-design-vue',
|
|
45
|
+
esModule: true,
|
|
46
|
+
ensureStyleFile: true,
|
|
47
|
+
resolveStyle: name => {
|
|
48
|
+
return `cnhis-design-vue/es/components/${ name.slice(2) }/style/index.css`;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
]
|
|
52
|
+
})
|
|
53
|
+
]
|
|
54
|
+
});
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### 2.2 样式处理方式 2(全局引入样式)
|
|
58
|
+
|
|
59
|
+
```typescript
|
|
60
|
+
// main.ts
|
|
61
|
+
import 'cnhis-design-vue/es/components/index.css';
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## 3. 注意
|
|
65
|
+
|
|
66
|
+
由于 vxe-table 目前的引入方式是由组件 install 触发的,所以如果需要使用 c-grid/c-big-table 组件,需要全局注册二者任意一个
|
|
67
|
+
|
|
68
|
+
```typescript
|
|
69
|
+
// main.ts
|
|
70
|
+
import { createApp } from 'vue';
|
|
71
|
+
import App from './App.vue';
|
|
72
|
+
|
|
73
|
+
import { CGrid } from 'cnhis-design-vue';
|
|
74
|
+
// 或者
|
|
75
|
+
import { CBigTable } from 'cnhis-design-vue';
|
|
76
|
+
|
|
77
|
+
const app = createApp(App);
|
|
78
|
+
app.use(CGrid);
|
|
79
|
+
// 或者
|
|
80
|
+
app.use(CBigTable);
|
|
81
|
+
app.mount('#app');
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
## 4.FAQ
|
|
85
|
+
|
|
86
|
+
### 4.1 项目打包后样式丢失
|
|
87
|
+
|
|
88
|
+
> 处理方法, 将 cnhis-design-vue 从 vendor 包中移除
|
|
89
|
+
|
|
90
|
+
```typescript
|
|
91
|
+
// vite.config.ts
|
|
92
|
+
import { defineConfig } from 'vite';
|
|
93
|
+
|
|
94
|
+
export default defineConfig({
|
|
95
|
+
rollupOptions: {
|
|
96
|
+
// ..otherOptions
|
|
97
|
+
output: {
|
|
98
|
+
dir: './dist',
|
|
99
|
+
manualChunks(id: string) {
|
|
100
|
+
if (id.includes('node_modules') && !id.includes('cnhis-design-vue')) {
|
|
101
|
+
return 'vendor';
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
});
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
### 4.2 找不到文件
|
|
110
|
+
|
|
111
|
+
> 由于组件库输出文件类型由 js 修改成了 mjs, 如果配置了 resolve 属性的项目, 需要将 mjs 文件类型添加至 extensions 中
|
|
112
|
+
|
|
113
|
+
```javascript
|
|
114
|
+
// vite.config.ts
|
|
115
|
+
const config = {
|
|
116
|
+
// ...otherOptions
|
|
117
|
+
resolve: {
|
|
118
|
+
// ...otherOptions
|
|
119
|
+
// 如果没有配置, 则不用考虑
|
|
120
|
+
extensions: ['.js', '.ts', '.vue', '.json', '.mjs']
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
```
|
|
@@ -1301,7 +1301,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1301
1301
|
updateAddCheckedRows(row);
|
|
1302
1302
|
};
|
|
1303
1303
|
const handlerClickRow = (data) => {
|
|
1304
|
-
var _a, _b;
|
|
1304
|
+
var _a, _b, _c;
|
|
1305
1305
|
let {
|
|
1306
1306
|
row,
|
|
1307
1307
|
$event = {},
|
|
@@ -1342,8 +1342,9 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1342
1342
|
nestHandleClickRow(table, data);
|
|
1343
1343
|
return;
|
|
1344
1344
|
}
|
|
1345
|
+
const batchSelect = (_c = getAttr("checkbox-config")) == null ? void 0 : _c.batchSelect;
|
|
1345
1346
|
let forbiddenBatchSelect = !checkMethod(data);
|
|
1346
|
-
if (state.selectType == "checkbox" && (forbiddenBatchSelect || data.row.$__SEPARATE)) {
|
|
1347
|
+
if (state.selectType == "checkbox" && !batchSelect && (forbiddenBatchSelect || data.row.$__SEPARATE)) {
|
|
1347
1348
|
table == null ? void 0 : table.setAllCheckboxRow(false);
|
|
1348
1349
|
const checked2 = getRowClassName({
|
|
1349
1350
|
row
|
|
@@ -1407,7 +1408,7 @@ var _sfc_main = /* @__PURE__ */ defineComponent({
|
|
|
1407
1408
|
rowLen = checkedRow.filter((item) => !XEUtils.has(item, GROUP_TITLE_KEY)).length;
|
|
1408
1409
|
}
|
|
1409
1410
|
}
|
|
1410
|
-
table.setAllCheckboxRow(false);
|
|
1411
|
+
!batchSelect && table.setAllCheckboxRow(false);
|
|
1411
1412
|
let setChecked = checked;
|
|
1412
1413
|
if (rowLen > 1) {
|
|
1413
1414
|
state.selectType != "radio" && table.setCheckboxRow([row], true);
|
|
@@ -14,6 +14,7 @@ function useCenter(canvas, propItems, emits, cumputedX, cumputedY, getXValue, ge
|
|
|
14
14
|
const {
|
|
15
15
|
left,
|
|
16
16
|
xScaleList,
|
|
17
|
+
xCellWidth,
|
|
17
18
|
yCellHeight,
|
|
18
19
|
originX,
|
|
19
20
|
endX,
|
|
@@ -146,7 +147,7 @@ function useCenter(canvas, propItems, emits, cumputedX, cumputedY, getXValue, ge
|
|
|
146
147
|
pointMenuProps.target = null;
|
|
147
148
|
pointMenuProps.list = ["\u65B0\u589E\u8282\u70B9"];
|
|
148
149
|
itemList.forEach((v) => {
|
|
149
|
-
if (!getEqualXTypes(x).includes(v.bigType)) {
|
|
150
|
+
if (!getEqualXTypes(x, "type", xCellWidth).includes(v.bigType)) {
|
|
150
151
|
const newY = ["pain"].includes(v.bigType) ? painOriginY : vitalSignsOriginY;
|
|
151
152
|
if (y >= newY.originY && y <= newY.endY) {
|
|
152
153
|
pointMenuProps.list.push({
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Ref } from 'vue';
|
|
2
2
|
import { fabric } from '../utils';
|
|
3
3
|
export default function useCommmon(canvas: Ref<fabric.Canvas>): {
|
|
4
|
-
getEqualXTypes: (pointX: number, field?:
|
|
4
|
+
getEqualXTypes: (pointX: number, field: string, range?: number) => string[];
|
|
5
5
|
repeatTip: () => void;
|
|
6
6
|
maxLimitTip: () => void;
|
|
7
7
|
minLimitTip: () => void;
|
|
@@ -2,10 +2,11 @@ import { useMessage } from 'naive-ui';
|
|
|
2
2
|
|
|
3
3
|
function useCommmon(canvas) {
|
|
4
4
|
const $message = useMessage();
|
|
5
|
-
function getEqualXTypes(pointX, field =
|
|
5
|
+
function getEqualXTypes(pointX, field, range = 6) {
|
|
6
6
|
const types = [];
|
|
7
|
+
const half = range / 2;
|
|
7
8
|
canvas.value.forEachObject((obj) => {
|
|
8
|
-
if (obj.origin && !obj.origin.isMenu && obj.left >= pointX -
|
|
9
|
+
if (obj.origin && !obj.origin.isMenu && obj.left >= pointX - half && obj.left <= pointX + half) {
|
|
9
10
|
types.push(obj.origin[field]);
|
|
10
11
|
}
|
|
11
12
|
});
|
|
@@ -11,11 +11,7 @@ function useCumputedPoint(propItems) {
|
|
|
11
11
|
const index = xScaleList.findIndex((v) => v.end >= time);
|
|
12
12
|
if (index > -1) {
|
|
13
13
|
const item = xScaleList[index];
|
|
14
|
-
|
|
15
|
-
return item.left;
|
|
16
|
-
} else {
|
|
17
|
-
return item.center;
|
|
18
|
-
}
|
|
14
|
+
return item.center;
|
|
19
15
|
}
|
|
20
16
|
}
|
|
21
17
|
function cumputedY(type, scaleValueList, value) {
|
|
@@ -10,6 +10,7 @@ function useLeft(canvas, propItems, emits, setPopup, pointTipProps, cumputedX, c
|
|
|
10
10
|
endY,
|
|
11
11
|
originX,
|
|
12
12
|
endX,
|
|
13
|
+
xCellWidth,
|
|
13
14
|
yCellHeight,
|
|
14
15
|
left,
|
|
15
16
|
vitalSignsOriginY,
|
|
@@ -272,7 +273,7 @@ function useLeft(canvas, propItems, emits, setPopup, pointTipProps, cumputedX, c
|
|
|
272
273
|
pointTipProps.show = false;
|
|
273
274
|
if (event.e.button === 0) {
|
|
274
275
|
if (isLimit(point)) {
|
|
275
|
-
const isRepeat = getEqualXTypes(point.left).includes(point.origin.type);
|
|
276
|
+
const isRepeat = getEqualXTypes(point.left, "type", xCellWidth).includes(point.origin.type);
|
|
276
277
|
const isLimitAdd = isAddPoint(point.left);
|
|
277
278
|
if (!isLimitAdd || isRepeat) {
|
|
278
279
|
isRepeat && isLimitAdd && repeatTip();
|
|
@@ -29,7 +29,7 @@ function lowCodeFieldAdaptorPlugin() {
|
|
|
29
29
|
function settingObjAdaptor(fieldItem, lowCodeField, config) {
|
|
30
30
|
var _a;
|
|
31
31
|
const props = cloneDeep(toRaw(lowCodeField));
|
|
32
|
-
props.componentProps = { size: config.size === "mini" ? "
|
|
32
|
+
props.componentProps = { size: config.size === "mini" ? "small" : config.size, ...props.componentProps };
|
|
33
33
|
fieldItem.editRender = {
|
|
34
34
|
autofocus: "input",
|
|
35
35
|
name: IhoTableUtils.getCellType(lowCodeField),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.iho-
|
|
1
|
+
.iho-table__boldCell{font-weight:700}.iho-table .vxe-table--body-wrapper::-webkit-scrollbar,.iho-table .vxe-table--footer-wrapper.body--wrapper::-webkit-scrollbar{background-color:transparent;height:10px;width:10px}.iho-table .vxe-table--body-wrapper::-webkit-scrollbar-thumb,.iho-table .vxe-table--footer-wrapper.body--wrapper::-webkit-scrollbar-thumb{background-clip:padding-box;background-color:#f2f2f2;border:3px dashed transparent;border-radius:5px}.iho-table .vxe-table--body-wrapper::-webkit-scrollbar-thumb:hover,.iho-table .vxe-table--footer-wrapper.body--wrapper::-webkit-scrollbar-thumb:hover{background:#b2b2b2}.iho-table .vxe-table{transform:translateZ(0)}.iho-table .vxe-table .vxe-table--empty-content,.iho-table .vxe-table .vxe-table--empty-content>div{height:100%;width:100%}.iho-table .vxe-table .vxe-table--empty-content>div .no-data-tip{display:inline-flex}.iho-table .vxe-table .col--checkbox .vxe-cell,.iho-table .vxe-table .col--seq .vxe-cell{padding:0}.iho-table .vxe-table .col--checkbox .vxe-cell .vxe-checkbox--label,.iho-table .vxe-table .col--seq .vxe-cell .vxe-checkbox--label{padding-left:0}.iho-table .vxe-table .vxe-cell .vxe-tree-cell{height:100%}.iho-table .vxe-table .scan-multi-delete{color:#f06f64}.iho-table .vxe-table .vxe-table--header{background-color:#f2f2f2}.iho-table .vxe-table .vxe-table--header .vxe-header--column .vxe-cell--title{color:#35393c;height:100%;line-height:unset}.iho-table .vxe-table .vxe-table--header .vxe-header--column .vxe-cell--title .header-title-span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.iho-table .vxe-table .vxe-table--header .col--checkbox .vxe-cell--title,.iho-table .vxe-table .vxe-table--header .col--seq .vxe-cell--title{display:inline-block}.iho-table .vxe-table .vxe-table--body-wrapper::-webkit-scrollbar,.iho-table .vxe-table .vxe-table--footer-wrapper.body--wrapper::-webkit-scrollbar{background-color:transparent;height:10px;width:10px}.iho-table .vxe-table .vxe-table--body-wrapper::-webkit-scrollbar-thumb,.iho-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}.iho-table .vxe-table .vxe-table--body-wrapper::-webkit-scrollbar-thumb:hover,.iho-table .vxe-table .vxe-table--footer-wrapper.body--wrapper::-webkit-scrollbar-thumb:hover{background:#b2b2b2}.iho-table .vxe-table .vxe-footer--row .vxe-footer--column>.vxe-cell .vxe-cell--item{height:30px;line-height:30px}.iho-table .vxe-table .vxe-cell--checkbox .vxe-checkbox--label{display:none}.iho-table .vxe-table--render-default .vxe-body--expanded-column,.iho-table .vxe-table--render-default .vxe-table--border-line{border-color:#d5d5d599}.iho-table .vxe-table--render-default .vxe-table--footer-wrapper{border-top-color:#d5d5d599}.iho-table .vxe-table--render-default.border--default .vxe-body--column,.iho-table .vxe-table--render-default.border--default .vxe-footer--column,.iho-table .vxe-table--render-default.border--default .vxe-header--column,.iho-table .vxe-table--render-default.border--inner .vxe-body--column,.iho-table .vxe-table--render-default.border--inner .vxe-footer--column,.iho-table .vxe-table--render-default.border--inner .vxe-header--column{background-image:linear-gradient(#d5d5d599,#d5d5d599)}.iho-table .vxe-table--render-default.border--full .vxe-body--column,.iho-table .vxe-table--render-default.border--full .vxe-footer--column,.iho-table .vxe-table--render-default.border--full .vxe-header--column{background-image:linear-gradient(#d5d5d599,#d5d5d599),linear-gradient(#d5d5d599,#d5d5d599)}.iho-table .vxe-table--render-default.border--full .vxe-table--fixed-left-wrapper .vxe-body--column{border-right-color:#d5d5d599}.iho-table .vxe-table--render-default.border--default .vxe-table--header-wrapper .vxe-header--row:last-child .vxe-header--gutter,.iho-table .vxe-table--render-default.border--full .vxe-table--header-wrapper .vxe-header--row:last-child .vxe-header--gutter,.iho-table .vxe-table--render-default.border--inner .vxe-table--header-wrapper .vxe-header--row:last-child .vxe-header--gutter,.iho-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)}.iho-table .vxe-table--render-default.border--default .vxe-table--header-wrapper .vxe-table--header-border-line,.iho-table .vxe-table--render-default.border--full .vxe-table--header-wrapper .vxe-table--header-border-line,.iho-table .vxe-table--render-default.border--inner .vxe-table--header-wrapper .vxe-table--header-border-line,.iho-table .vxe-table--render-default.border--outer .vxe-table--header-wrapper .vxe-table--header-border-line{border-bottom-color:#d5d5d599}.iho-table .vxe-table--render-default .vxe-table--fixed-left-wrapper.scrolling--middle{box-shadow:7px 0 8px -3px rgba(0,0,0,.15)}.iho-table .vxe-table--render-default .vxe-table--fixed-right-wrapper.scrolling--middle{box-shadow:-7px 0 8px -3px rgba(0,0,0,.15)}.iho-table .vxe-table--render-default.size--mini{font-size:14px}.iho-table .vxe-table--render-default .vxe-cell--checkbox .vxe-checkbox--icon{color:#d5d5d5;font-weight:400}.iho-table .icon-dot{background:var(--table-icon-color);box-shadow:0 2px 4px 0 var(--table-icon-shadow)}.iho-table .icon-dot,.iho-table .icon-dot-red{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table .icon-dot-red{background:red;box-shadow:0 2px 4px 0 rgba(255,0,0,.5)}.iho-table .icon-dot-blue{background:blue;box-shadow:0 2px 4px 0 rgba(0,0,255,.5)}.iho-table .icon-dot-blue,.iho-table .icon-dot-green{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table .icon-dot-green{background:green;box-shadow:0 2px 4px 0 rgba(0,128,0,.5)}.iho-table .icon-dot-gray{background:gray;box-shadow:0 2px 4px 0 hsla(0,0%,50%,.5)}.iho-table .icon-dot-gray,.iho-table .icon-dot-yellow{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table .icon-dot-yellow{background:#ff0;box-shadow:0 2px 4px 0 rgba(255,255,0,.5)}.iho-table .icon-dot-resolved{background:#36be8c;box-shadow:0 2px 4px 0 rgba(54,190,140,.5)}.iho-table .icon-dot-huifu,.iho-table .icon-dot-resolved{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table .icon-dot-huifu{background:#42d0f6;box-shadow:0 2px 4px 0 rgba(66,208,246,.5)}.iho-table .icon-dot-close{background:#718391;box-shadow:0 2px 4px 0 rgba(113,131,145,.5)}.iho-table .icon-dot-audit,.iho-table .icon-dot-close{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table .icon-dot-audit{background:#f4ba32;box-shadow:0 2px 4px 0 rgba(244,186,50,.5)}.iho-table .icon-dot-design{background:#927ce1;box-shadow:0 2px 4px 0 rgba(146,124,225,.5)}.iho-table .icon-dot-design,.iho-table .icon-dot-develop{border-radius:50%;display:inline-block;height:8px;margin-right:6px;width:8px}.iho-table .icon-dot-develop{background:#4eb0ef;box-shadow:0 2px 4px 0 rgba(78,176,239,.5)}.iho-table .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}.iho-table__filterIcon{cursor:pointer;padding:0 4px}.iho-table__filterIcon:hover{opacity:.7}.iho-table__filterIcon.is-active{color:#5585f5}.iho-table__filterWrapper{display:flex;flex-direction:column;gap:8px;width:200px}.iho-table__filterButton{align-items:center;border-radius:4px;cursor:pointer;display:flex;height:30px;padding:0 8px}.iho-table__filterButton--active{color:#5585f5}.iho-table__filterButton:hover{background:rgba(0,0,0,.05)}.iho-table__filterListWrapper{border:1px solid rgba(0,0,0,.05)}.iho-table__filterListItem{align-items:center;border-radius:4px;display:flex;height:32px;padding:0 8px}.iho-table__filterListItem:hover{background:rgba(0,0,0,.05)}.iho-table__filterFooter{display:flex;justify-content:space-between}.iho-table .vxe-header--column [annotation-hover-show=true]{visibility:hidden}.iho-table .vxe-header--column:hover [annotation-hover-show=true]{visibility:visible}.iho-table__headerWrapper{display:inline-flex}
|