cnhis-design-vue 3.2.3-beta.3 → 3.2.3-beta.6
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 +87 -87
- package/es/components/biunique-chat/src/components/ChatFooter.vue2.js +1 -1
- package/es/components/bpmn-workflow/src/BpmnWorkflow.d.ts +0 -0
- package/es/components/bpmn-workflow/types/BpmnViewer.d.ts +1 -0
- package/es/components/bpmn-workflow/types/ModelingModule.d.ts +1 -0
- package/es/components/bpmn-workflow/types/MoveCanvasModule.d.ts +1 -0
- package/es/components/calendar/index.d.ts +11 -2
- package/es/components/calendar/src/Calendar.vue.d.ts +11 -1
- package/es/components/callback/src/components/render/popupMaps.d.ts +2 -0
- package/es/components/classification/src/components/table-modal/index.vue.d.ts +0 -3
- package/es/components/classification/src/index.vue.d.ts +3 -3
- package/es/components/field-set/src/FieldColor.vue.d.ts +1 -1
- package/es/components/field-set/src/FieldSet.vue.d.ts +1 -1
- package/es/components/field-set/src/components/Row.vue.d.ts +1 -1
- package/es/components/iho-table/index.d.ts +2 -0
- package/es/components/iho-table/src/IhoTable.vue.d.ts +2 -0
- package/es/components/iho-table/src/hooks/tapHooks/index.js +1 -1
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/index.js +1 -1
- package/es/components/iho-table/src/plugins/verticalTablePlugin/index.js +1 -1
- package/es/components/iho-table/src/plugins/verticalTablePlugin/src/hooks/index.d.ts +1 -24
- package/es/components/iho-table/src/plugins/verticalTablePlugin/src/hooks/index.js +1 -1
- package/es/components/iho-table/src/plugins/verticalTablePlugin/src/hooks/useCurrentColumn.js +1 -1
- package/es/components/iho-table/src/plugins/verticalTablePlugin/src/hooks/useEditCell.js +1 -1
- package/es/components/iho-table/src/plugins/verticalTablePlugin/src/hooks/useEventConvert.js +1 -1
- package/es/components/iho-table/src/plugins/verticalTablePlugin/src/hooks/useTriggerRow.js +1 -1
- package/es/components/iho-table/src/plugins/verticalTablePlugin/src/renderer.js +1 -1
- package/es/components/iho-table/src/plugins/verticalTablePlugin/src/utils.js +1 -1
- package/es/components/iho-table/src/types/index.d.ts +1 -0
- package/es/components/iho-table/style/index.css +1 -1
- package/es/components/index.css +1 -1
- package/es/components/scale-view/src/ScaleView.vue2.js +1 -1
- package/es/components/select-label/src/LabelFormContent.vue2.js +1 -1
- package/es/components/select-person/src/SearchMultiple.vue.d.ts +0 -6
- package/es/env.d.ts +25 -25
- package/es/shared/assets/img/emoji/emotion_001.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_002.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_003.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_004.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_005.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_006.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_007.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_008.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_009.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_010.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_011.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_012.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_013.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_014.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_015.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_016.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_017.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_018.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_019.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_020.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_021.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_022.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_023.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_024.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_025.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_026.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_027.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_028.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_029.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_030.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_031.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_032.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_033.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_034.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_035.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_036.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_037.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_038.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_039.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_040.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_041.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_042.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_043.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_044.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_045.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_046.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_047.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_048.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_049.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_050.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_051.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_052.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_053.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_054.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_055.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_056.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_057.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_058.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_059.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_060.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_061.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_062.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_063.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_064.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_065.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_066.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_067.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_068.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_069.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_070.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_071.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_072.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_073.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_074.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_075.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_076.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_077.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_078.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_079.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_080.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_081.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_082.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_083.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_084.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_085.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_086.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_087.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_088.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_089.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_090.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_091.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_092.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_093.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_094.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_095.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_096.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_097.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_098.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_099.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_100.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_101.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_102.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_103.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_104.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_105.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_106.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_107.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_108.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_109.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_110.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_111.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_112.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_113.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_114.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_115.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_116.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_117.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_118.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_119.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_120.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_121.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_122.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_123.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_124.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_125.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_126.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_127.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_128.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_129.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_130.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_131.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_132.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_133.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_134.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_135.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_136.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_137.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_138.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_139.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_140.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_141.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_142.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_143.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_144.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_145.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_146.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_147.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_148.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_149.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_150.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_151.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_152.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_153.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_154.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_155.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_156.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_157.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_158.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_159.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_160.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_161.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_162.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_163.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_164.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_165.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_166.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_167.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_168.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_169.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_170.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_171.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_172.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_173.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_174.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_175.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_176.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_177.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_178.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_179.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_180.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_181.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_182.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_183.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_184.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_185.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_186.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_187.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_188.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_189.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_190.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_191.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_192.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_193.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_194.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_195.png.js +1 -1
- package/es/shared/assets/img/emoji/emotion_196.png.js +1 -1
- package/es/shared/assets/img/failure.png.js +1 -1
- package/es/shared/assets/img/no-permission.png.js +1 -1
- package/es/shared/assets/img/nodata.png.js +1 -1
- package/es/shared/assets/img/notfound.png.js +1 -1
- package/es/shared/assets/img/qr.png.js +1 -1
- package/es/shared/assets/img/success.png.js +1 -1
- package/es/shared/assets/img/table_style_2.png.js +1 -1
- package/es/shared/assets/img/video.png.js +1 -1
- package/es/shared/assets/img/video_default_cover.png.js +1 -1
- package/es/shared/assets/img/xb_big.png.js +1 -1
- package/es/shared/assets/img/xb_small.png.js +1 -1
- package/es/shared/components/InputNumberSlash/InputNumberSlash.js +1 -1
- package/es/shared/components/VueDraggable/src/vuedraggable.d.ts +86 -0
- package/es/shared/package.json.js +1 -1
- package/es/shared/utils/fabricjs/index.d.ts +6823 -0
- package/es/shared/utils/tapable/index.d.ts +139 -0
- package/package.json +2 -2
- package/es/components/node_modules/naive-ui/node_modules/date-fns/docs/logo.svg +0 -26
- package/es/components/node_modules/naive-ui/node_modules/date-fns/docs/logotype.svg +0 -1
package/README.md
CHANGED
|
@@ -1,87 +1,87 @@
|
|
|
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.FAQ
|
|
65
|
-
|
|
66
|
-
### 3.1 项目打包后样式丢失
|
|
67
|
-
|
|
68
|
-
处理方法, 将 cnhis-design-vue 从 vendor 包中移除 (没有出现此问题则不需要)
|
|
69
|
-
|
|
70
|
-
```typescript
|
|
71
|
-
// vite.config.ts
|
|
72
|
-
import { defineConfig } from 'vite';
|
|
73
|
-
|
|
74
|
-
export default defineConfig({
|
|
75
|
-
build: {
|
|
76
|
-
rollupOptions: {
|
|
77
|
-
// ..otherOptions
|
|
78
|
-
output: {
|
|
79
|
-
dir: './dist',
|
|
80
|
-
manualChunks: {
|
|
81
|
-
'cnhis-vendor': ['cnhis-design-vue']
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
});
|
|
87
|
-
```
|
|
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.FAQ
|
|
65
|
+
|
|
66
|
+
### 3.1 项目打包后样式丢失
|
|
67
|
+
|
|
68
|
+
处理方法, 将 cnhis-design-vue 从 vendor 包中移除 (没有出现此问题则不需要)
|
|
69
|
+
|
|
70
|
+
```typescript
|
|
71
|
+
// vite.config.ts
|
|
72
|
+
import { defineConfig } from 'vite';
|
|
73
|
+
|
|
74
|
+
export default defineConfig({
|
|
75
|
+
build: {
|
|
76
|
+
rollupOptions: {
|
|
77
|
+
// ..otherOptions
|
|
78
|
+
output: {
|
|
79
|
+
dir: './dist',
|
|
80
|
+
manualChunks: {
|
|
81
|
+
'cnhis-vendor': ['cnhis-design-vue']
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
```
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{defineComponent as t,ref as e,withDirectives as n,openBlock as s,createElementBlock as i,normalizeStyle as a,unref as o,createElementVNode as l,createVNode as
|
|
1
|
+
import{defineComponent as t,ref as e,withDirectives as n,openBlock as s,createElementBlock as i,normalizeStyle as a,unref as o,createElementVNode as l,createVNode as c,withCtx as r,createCommentVNode as u,Fragment as d,renderList as p,createBlock as f,createTextVNode as g,toDisplayString as m,vShow as h}from"vue";import{NPopover as v,NTooltip as y,NUpload as M,NUploadTrigger as k,NButton as T}from"naive-ui";import{format as x}from"date-fns";import{useState as C}from"../hooks/useState.js";import{useSession as b}from"../hooks/useSession.js";import{images as E,alt as I}from"../utils/emoji.js";import{MESSAGE_TYPE as w}from"../constants/index.js";import{uploadFileApi as _}from"../api/index.js";const S={class:"tool-box"},j=l("span",null,[l("i",{class:"chat--iconfont chat--icon-face"})],-1),L={class:"emoji-box"},F=l("span",null,"默认表情",-1),K={class:"list-box"},D=["onClick"],H=["src"],J=[l("i",{class:"chat--iconfont chat--icon-good"},null,-1)],N=["onClick"],O=[l("i",{class:"chat--iconfont chat--icon-image"},null,-1)],A=["onClick"],G=[l("i",{class:"chat--iconfont chat--icon-folder"},null,-1)],X={class:"btn-box"},z=l("span",{class:"tip"},"Enter 发送, Shift + Enter 换行",-1);var B=t({__name:"ChatFooter",setup(t){const B=e(),R=e(""),{state:U,stompClient:q}=C(),{setCurrentSessionItem:P}=b(U);function Q(t){["Enter"].includes(t.key)&&(function(t){return t.altKey||t.ctrlKey||t.metaKey||t.shiftKey}(t)||(t.preventDefault(),Y()))}function V(){var t,e;R.value=(null==(e=null==(t=B.value)?void 0:t.innerText)?void 0:e.trim())||""}async function W(t,e){console.log(W,t);const{file:n,name:s}=t.file,i=new FormData;i.append("sender",U.userInfo.id),i.append("file",n);const a=await _(i);if(!a)return console.log("上传失败");Z({chatMessageType:e,msg:e===w.FILE?s:a,url:a})}function Y(){if(!(R.value.length>2e3))return R.value?void Z({msg:R.value}):console.log("请输入内容");console.log("请控制在2000字以内")}async function Z(t){const{chatMessageType:e=w.TEXT,msg:n,url:s}=t,i={msg:n,chatMessageType:e};e===w.FILE&&(i.fileUrl=s),[w.TEXT,w.BLEND].includes(e)&&(B.value.innerHTML="",R.value="");const a=x(new Date,"yyyy-MM-dd HH:mm:ss");U.currentMsg={content:i,sender:U.userInfo.id,id:"",sendTime:a,sending:!0,fail:!1},U.isAppendMsg=!0,P({lastMessageSendTime:a,lastMessage:i.msg,sortTime:a,chatMessageType:i.chatMessageType}),U.isChangeSession=!0;try{q.value.send("/app/chat/send",{},JSON.stringify({chatType:"SINGLE",content:i,receiver:U.currentSessionItem.receiver})),U.currentMsg={...U.currentMsg,fail:!1}}catch(t){U.currentMsg={...U.currentMsg,fail:!0}}finally{U.currentMsg={...U.currentMsg,sending:!1}}}return(t,e)=>n((s(),i("section",{class:"chat-footer",style:a({cursor:o(U).id?"default":"not-allowed"})},[l("div",S,[c(o(v),{placement:"top",trigger:"click","show-arrow":!1,"display-directive":"show"},{trigger:r((()=>[j])),default:r((()=>[l("div",L,[u(' <span>最近使用</span>\n\t\t\t\t\t<div class="list-box">\n\t\t\t\t\t\t<template v-for="(img, index) in images" :key="index">\n\t\t\t\t\t\t\t<i>\n\t\t\t\t\t\t\t\t<img :src="img" />\n\t\t\t\t\t\t\t</i>\n\t\t\t\t\t\t</template>\n\t\t\t\t\t</div> '),F,l("div",K,[(s(!0),i(d,null,p(o(E),((t,e)=>(s(),i(d,{key:e},[e>0?(s(),f(o(y),{key:0,"show-arrow":!1,trigger:"hover"},{trigger:r((()=>[l("i",{onClick:()=>Z({chatMessageType:o(w).EMOJI,msg:e})},[l("img",{src:t},null,8,H)],8,D)])),default:r((()=>[g(" "+m(o(I)[e-1]||"微笑"),1)])),_:2},1024)):u("v-if",!0)],64)))),128))])])])),_:1}),l("span",{onClick:e[0]||(e[0]=()=>Z({chatMessageType:o(w).EMOJI,msg:0}))},J),c(o(M),{abstract:"",multiple:"",accept:"image/*",onChange:e[1]||(e[1]=t=>W(t,o(w).IMAGE))},{default:r((()=>[c(o(k),{abstract:""},{default:r((({handleClick:t})=>[l("span",{onClick:t},O,8,N)])),_:1})])),_:1}),c(o(M),{abstract:"",multiple:"",accept:"video/*,.pdf,.doc.docx,,.zip,.xlsx,.txt",onChange:e[2]||(e[2]=t=>W(t,o(w).FILE))},{default:r((()=>[c(o(k),{abstract:""},{default:r((({handleClick:t})=>[l("span",{onClick:t},G,8,A)])),_:1})])),_:1})]),n(l("div",{ref_key:"inputRef",ref:B,class:"input-box",contenteditable:"",onKeydown:Q,onInput:V},null,544),[[h,o(U).id]]),l("div",X,[z,c(o(T),{type:"primary",round:"",disabled:!R.value,onClick:Y},{default:r((()=>[g("发送")])),_:1},8,["disabled"])])],4)),[[h,o(U).id]])}});export{B as default};
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
declare module 'bpmn-js/lib/Viewer';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
declare module 'bpmn-js/lib/features/modeling';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
declare module 'diagram-js/lib/navigation/movecanvas';
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
/// <reference types="date-fns" />
|
|
2
|
-
/// <reference types="../../components/node_modules/naive-ui/node_modules/date-fns/typings" />
|
|
3
2
|
import { SFCWithInstall } from '../../shared/types';
|
|
4
3
|
export * from './src/types';
|
|
5
4
|
declare const Calendar: SFCWithInstall<import("vue").DefineComponent<{
|
|
@@ -229,7 +228,17 @@ declare const Calendar: SFCWithInstall<import("vue").DefineComponent<{
|
|
|
229
228
|
NIcon: any;
|
|
230
229
|
ChevronBackOutline: 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<{}>>, {}>;
|
|
231
230
|
ChevronForwardOutline: 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<{}>>, {}>;
|
|
232
|
-
FullCalendar:
|
|
231
|
+
FullCalendar: import("vue").DefineComponent<{
|
|
232
|
+
options: import("vue").PropType<import("@fullcalendar/core/internal-common").a>;
|
|
233
|
+
}, unknown, {
|
|
234
|
+
renderId: number;
|
|
235
|
+
customRenderingMap: Map<string, import("@fullcalendar/core/internal-common").eF<any>>;
|
|
236
|
+
}, {}, {
|
|
237
|
+
getApi(): import("@fullcalendar/core").Calendar;
|
|
238
|
+
buildOptions(suppliedOptions: import("@fullcalendar/core/internal-common").a | undefined): import("@fullcalendar/core/internal-common").a;
|
|
239
|
+
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
240
|
+
options: import("vue").PropType<import("@fullcalendar/core/internal-common").a>;
|
|
241
|
+
}>>, {}>;
|
|
233
242
|
isSameDay: typeof import("date-fns").isSameDay;
|
|
234
243
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "eventClick" | "eventDrag" | "eventResize" | "dateChange")[], "select" | "eventClick" | "eventDrag" | "eventResize" | "dateChange", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
235
244
|
showDateNavigation: {
|
|
@@ -221,7 +221,17 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
221
221
|
NIcon: any;
|
|
222
222
|
ChevronBackOutline: 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<{}>>, {}>;
|
|
223
223
|
ChevronForwardOutline: 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<{}>>, {}>;
|
|
224
|
-
FullCalendar:
|
|
224
|
+
FullCalendar: import("vue").DefineComponent<{
|
|
225
|
+
options: PropType<import("@fullcalendar/core/internal-common").a>;
|
|
226
|
+
}, unknown, {
|
|
227
|
+
renderId: number;
|
|
228
|
+
customRenderingMap: Map<string, import("@fullcalendar/core/internal-common").eF<any>>;
|
|
229
|
+
}, {}, {
|
|
230
|
+
getApi(): import("@fullcalendar/core").Calendar;
|
|
231
|
+
buildOptions(suppliedOptions: import("@fullcalendar/core/internal-common").a | undefined): import("@fullcalendar/core/internal-common").a;
|
|
232
|
+
}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
233
|
+
options: PropType<import("@fullcalendar/core/internal-common").a>;
|
|
234
|
+
}>>, {}>;
|
|
225
235
|
isSameDay: typeof isSameDay;
|
|
226
236
|
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("select" | "eventClick" | "eventDrag" | "eventResize" | "dateChange")[], "select" | "eventClick" | "eventDrag" | "eventResize" | "dateChange", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
227
237
|
showDateNavigation: {
|
|
@@ -4115,6 +4115,7 @@ export declare const CallbackMaps: Map<string, {
|
|
|
4115
4115
|
enable?: boolean | undefined;
|
|
4116
4116
|
headerWidth?: number | "auto" | ((level: number) => number) | undefined;
|
|
4117
4117
|
bodyWidth?: number | ((index: number) => number) | undefined;
|
|
4118
|
+
bodyMinWidth?: number | ((index: number) => number) | undefined;
|
|
4118
4119
|
} | undefined;
|
|
4119
4120
|
onFormChange?: ((payload_0: import("../../../../../components/iho-table").IhoTableFormChangePayload) => void) | undefined;
|
|
4120
4121
|
onCopy?: ((params: import("vxe-table").VxeTableDefines.CopyEventParams) => void) | undefined;
|
|
@@ -7679,6 +7680,7 @@ export declare const CallbackMaps: Map<string, {
|
|
|
7679
7680
|
enable?: boolean | undefined;
|
|
7680
7681
|
headerWidth?: number | "auto" | ((level: number) => number) | undefined;
|
|
7681
7682
|
bodyWidth?: number | ((index: number) => number) | undefined;
|
|
7683
|
+
bodyMinWidth?: number | ((index: number) => number) | undefined;
|
|
7682
7684
|
} | undefined;
|
|
7683
7685
|
onFormChange?: ((payload_0: import("../../../../../components/iho-table").IhoTableFormChangePayload) => void) | undefined;
|
|
7684
7686
|
onSettingClick?: (() => void) | undefined;
|
|
@@ -699,9 +699,6 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
699
699
|
handleInitConditions: () => Promise<void>;
|
|
700
700
|
validate: () => Promise<unknown>;
|
|
701
701
|
saveAdd: () => void;
|
|
702
|
-
/**
|
|
703
|
-
* 改变展示方式
|
|
704
|
-
*/
|
|
705
702
|
cancelSaveAdd: () => void;
|
|
706
703
|
checkActionList: () => boolean;
|
|
707
704
|
NSpin: any;
|
|
@@ -1450,6 +1447,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
1450
1447
|
isSecondDisabled(second: number, minute: number | null, hour: number | null): boolean | 0;
|
|
1451
1448
|
};
|
|
1452
1449
|
NSelect: any;
|
|
1450
|
+
/**
|
|
1451
|
+
* 改变展示方式
|
|
1452
|
+
*/
|
|
1453
1453
|
NPopover: any;
|
|
1454
1454
|
CDatePicker: import("../../../shared/types").SFCWithInstall<import("vue").DefineComponent<{
|
|
1455
1455
|
updateUnchangedValue: {
|
|
@@ -457,9 +457,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
457
457
|
requiredDisable: boolean;
|
|
458
458
|
hide: boolean;
|
|
459
459
|
}>;
|
|
460
|
-
isHighlightRow: boolean;
|
|
461
460
|
idx: number;
|
|
462
461
|
isHighlight: boolean;
|
|
462
|
+
isHighlightRow: boolean;
|
|
463
463
|
}>;
|
|
464
464
|
EditDialog: import("vue").DefineComponent<{
|
|
465
465
|
visible: {
|
|
@@ -575,9 +575,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
575
575
|
requiredDisable: boolean;
|
|
576
576
|
hide: boolean;
|
|
577
577
|
}>;
|
|
578
|
-
isHighlightRow: boolean;
|
|
579
578
|
idx: number;
|
|
580
579
|
isHighlight: boolean;
|
|
580
|
+
isHighlightRow: boolean;
|
|
581
581
|
}>;
|
|
582
582
|
isArray: {
|
|
583
583
|
(value?: any): value is any[];
|
|
@@ -282,8 +282,8 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
282
282
|
requiredDisable: boolean;
|
|
283
283
|
hide: boolean;
|
|
284
284
|
}>;
|
|
285
|
-
isHighlightRow: boolean;
|
|
286
285
|
idx: number;
|
|
287
286
|
isHighlight: boolean;
|
|
287
|
+
isHighlightRow: boolean;
|
|
288
288
|
}>;
|
|
289
289
|
export default _default;
|
|
@@ -3212,6 +3212,7 @@ declare const IhoTable: SFCWithInstall<import("vue").DefineComponent<{
|
|
|
3212
3212
|
enable?: boolean | undefined;
|
|
3213
3213
|
headerWidth?: number | "auto" | ((level: number) => number) | undefined;
|
|
3214
3214
|
bodyWidth?: number | ((index: number) => number) | undefined;
|
|
3215
|
+
bodyMinWidth?: number | ((index: number) => number) | undefined;
|
|
3215
3216
|
} | undefined;
|
|
3216
3217
|
onFormChange?: ((payload_0: import("../../components/iho-table/src/types").IhoTableFormChangePayload) => void) | undefined;
|
|
3217
3218
|
onCopy?: ((params: import("vxe-table").VxeTableDefines.CopyEventParams) => void) | undefined;
|
|
@@ -6776,6 +6777,7 @@ declare const IhoTable: SFCWithInstall<import("vue").DefineComponent<{
|
|
|
6776
6777
|
enable?: boolean | undefined;
|
|
6777
6778
|
headerWidth?: number | "auto" | ((level: number) => number) | undefined;
|
|
6778
6779
|
bodyWidth?: number | ((index: number) => number) | undefined;
|
|
6780
|
+
bodyMinWidth?: number | ((index: number) => number) | undefined;
|
|
6779
6781
|
} | undefined;
|
|
6780
6782
|
onFormChange?: ((payload_0: import("../../components/iho-table/src/types").IhoTableFormChangePayload) => void) | undefined;
|
|
6781
6783
|
onSettingClick?: (() => void) | undefined;
|
|
@@ -3213,6 +3213,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
3213
3213
|
enable?: boolean | undefined;
|
|
3214
3214
|
headerWidth?: number | "auto" | ((level: number) => number) | undefined;
|
|
3215
3215
|
bodyWidth?: number | ((index: number) => number) | undefined;
|
|
3216
|
+
bodyMinWidth?: number | ((index: number) => number) | undefined;
|
|
3216
3217
|
} | undefined;
|
|
3217
3218
|
onFormChange?: ((payload_0: import("../../../components/iho-table/src/types").IhoTableFormChangePayload) => void) | undefined;
|
|
3218
3219
|
onCopy?: ((params: import("vxe-table").VxeTableDefines.CopyEventParams) => void) | undefined;
|
|
@@ -6777,6 +6778,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
6777
6778
|
enable?: boolean | undefined;
|
|
6778
6779
|
headerWidth?: number | "auto" | ((level: number) => number) | undefined;
|
|
6779
6780
|
bodyWidth?: number | ((index: number) => number) | undefined;
|
|
6781
|
+
bodyMinWidth?: number | ((index: number) => number) | undefined;
|
|
6780
6782
|
} | undefined;
|
|
6781
6783
|
onFormChange?: ((payload_0: import("../../../components/iho-table/src/types").IhoTableFormChangePayload) => void) | undefined;
|
|
6782
6784
|
onSettingClick?: (() => void) | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{arrayed as
|
|
1
|
+
import{arrayed as e}from"../../../../../shared/utils/index.js";import{cloneDeep as o,isArray as t}from"lodash-es";import{unref as r,defineComponent as s}from"vue";import{VxeEventListenerNameList as n}from"../../constants/index.js";import{eventListener2EventName as i,eventName2EventListener as a}from"../../utils/index.js";import{useConfigHooks as f}from"./useConfigHooks.js";import{useDataHooks as l}from"./useDataHooks.js";import{useDomInsertHooks as c}from"./useDomInsertHooks.js";import{useEventHooks as u}from"./useEventHooks.js";import{useExposeHooks as m}from"./useExposeHooks.js";import{useFieldHooks as d}from"./useFieldHooks.js";import{useSetupHooks as p}from"./useSetupHooks.js";const k=(()=>{let e=null;return()=>e||(e=Object.freeze({configHooks:f().create(),fieldHooks:d().create(),eventHooks:u().create(),dataHooks:l().create(),setupHooks:p().create(),domInsertHooks:c().create(),exposeHooks:m().create()}))})();function H(e,t,r){const s=e.configHooks.config.call(o(t),r);return["rowConfig","editConfig","columnConfig","resizableConfig","seqConfig","sortConfig","filterConfig","radioConfig","checkboxConfig","expandConfig","treeConfig","mouseConfig","menuConfig","keyboardConfig","scrollY","scrollX","editRules"].forEach((o=>{s[o]=e.configHooks[o].call(s[o],s,r)})),s}function g(r,s,n,i){r.fieldHooks.fieldStart.promise(n,i);let a=function o(s){return s.reduce(((s,a,f)=>{const l=[],c=[];let u=!1;return a=r.fieldHooks.field.call(a,{index:f,remove(){u=!0},insertAfter(o){c.push(...e(o))},insertBefore(o){l.push(...e(o))}},n,i),s.push(...l),u||(s.push(a),t(a.children)&&(a.children=o(a.children))),s.push(...c),s}),[])}(o(s));return a=r.fieldHooks.fieldList.call(a,n,i),r.fieldHooks.fieldEnd.promise(n,i),a}function h({hooks:e,config:o,$table:t,emits:s,context:f,globProps:l}){return n.reduce(((n,c)=>(n[c]=n=>function(n,c){var u;const m=i(n);if(!(c=e.eventHooks.beforeEvent.call(c,r(o),{$table:r(t),emits:s,globProps:l,...f},m)))return;Reflect.get(c,"eventName")?(s(c.eventName,c),n=a(c.eventName)):s(m,c);null==(u=e.eventHooks[n])||u.promise(c,r(o),{$table:r(t),globProps:l,emits:s,...f})}(c,n),n)),{})}function C(o,t,s){return async n=>{o.dataHooks.dataStart.promise(r(t));let i=await n.reduce((async(n,i,a)=>{const f=[],l=[];let c=!1;await o.dataHooks.data.promise(i,r(t),{index:a,$table:s,insertBefore(o){f.push(...e(o))},insertAfter(o){l.push(...e(o))},remove(){c=!0}});const u=await n;return u.push(...f),!c&&u.push(i),u.push(...l),u}),Promise.resolve([]));return i=o.dataHooks.dataList.call(i,r(t)),o.dataHooks.dataEnd.promise(r(t)),i}}function b(e){return{header:s({name:"IhoTableHeader",render:()=>e.domInsertHooks.header.call([])}),footer:s({name:"IhoTableFooter",render:()=>e.domInsertHooks.footer.call([])})}}export{H as applyTableConfigHooks,g as applyTableFieldHooks,C as createDataTransfer,b as createDomInsertComponent,h as createTableEventHandlers,k as createTableHooks};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{reactive as e,inject as o,createVNode as
|
|
1
|
+
import{reactive as e,inject as o,createVNode as l,mergeProps as t,onBeforeUnmount as n}from"vue";import{arrayed as i}from"../../../../../../../shared/utils/index.js";import"../../../../../index.js";import{EDITABLE_WIDGET_TYPE as r,InjectionIhoTableUUID as u}from"../../../../constants/index.js";import{useAutoFocus as s}from"../hooks/useAutoFocus.js";import{getTitle as d,IhoTableRenderHelper as c,IhoTableUtils as a}from"../../../../utils/index.js";import p from"./editSelect.js";import{getDefaultValue as f,isConnectField as m,getArray as v}from"./selectUtils.js";import{getSelectOptions as w,selectOptionsMap as C}from"../hooks/useSelectOption.js";import{cloneDeep as g,isFunction as h,isEqual as y}from"lodash-es";import{defineTablePlugin as b}from"../../../../hooks/useTablePlugin.js";function x(){const x="selectRendererPlugin",E=e(new Map);function k(e){return!0===e||"1"===e}return b({name:x,vxe(e){e.renderer.add(r.SELECT,{renderCell({props:e},{row:t,column:n,$table:r}){var s;const c=o(u),a=w(c,n.field,t,r),p=f(t,e,a),m=i(p).join(","),v=e&&(k(e.variableHeight)||(null==(s=e.componentProps)?void 0:s.indexedText));return[l("span",{title:d(n,m),class:"iho-table__colorAndIcon"},[v?i(p).reduce(((e,o)=>(null!=o&&e.push([o,";",l("br",null,null)]),e)),[]):m])]},renderEdit:c.createRenderEdit((({fieldItem:e,emitFormClick:n,row:i,column:r,$rowIndex:s,$table:d})=>{var c,a,f,m;const v=o(u),C=w(v,r.field,i,d),g=k(null!=(a=null==(c=e.componentProps)?void 0:c.allowModify)?a:e.allowModify),h=k(null!=(m=null==(f=e.componentProps)?void 0:f.allowCreate)?m:e.allowCreate)||g;return[l(p,t({queryOptions:e.queryOptions},e.componentProps,{options:C,column:r,row:i,"row-index":s,value:i[r.field],"onUpdate:value":e=>i[r.field]=e,allowModify:g,allowCreate:h,onClick:n}),null)]}))})},apply(e){async function o(e,o={}){var l,t,n;const i=null==(l=e.editRender)?void 0:l.props;if(!i)return[];let r=v(i.options)||v(null==(t=i.componentProps)?void 0:t.options)||[];if(i.queryOptions)try{const l={column:e,isFullData:!0,...o};r=await(null==(n=i.queryOptions)?void 0:n.call(i,l))}catch(e){console.log(`获取${i.field}_options错误`)}return r}function l(e){return e&&a.getCellType(e)===r.SELECT}s(e).bindAutoFocusConfig(x,r.SELECT,".n-base-selection-input,.n-base-selection-tags"),e.fieldHooks.fieldList.tap(x,((e,{uuid:t})=>{if(t){C.get(t)||C.set(t,{}),E.set(t,g(e));const n=C.get(t);e.forEach((async t=>{var i;const r=null==(i=t.editRender)?void 0:i.props;if(t.field&&r&&l(r)&&!m(e,t.field)){if(h(r.queryOptions)&&n[t.field])return;n[t.field]=[],n[t.field]=await o(t)}}))}return e})),e.dataHooks.data.tap(x,((e,{uuid:t},n)=>{if(!t)return;const i=E.get(t);if(!i||!i.length)return;const r=C.get(t);i.forEach((async t=>{var n;const u=null==(n=t.editRender)?void 0:n.props;if(t.field&&u&&l(u)&&(null==u?void 0:u.connectField)){const l=u.connectField.split(","),n=e[u.columnName];l.forEach((async l=>{const s=null==i?void 0:i.find((e=>e.field===l));if(!s)return;const d=n?`${l}__${u.columnName}-${n}`:l;r[d]||(r[d]=[],r[d]=await o(s,{row:e,connectColumn:t}))}))}}))})),e.setupHooks.setup.tap(x,(e=>{n((()=>{var o;const l=null==(o=e.value)?void 0:o.uuid;l&&(C.delete(l),E.delete(l))}))})),e.eventHooks.onCellDblclick.tap(x,((e,o,{emits:t})=>{var n,i,r;const{$table:u,row:s,column:d}=e,c=Reflect.get(e,"verticalState");let{column:a,row:p}=u.reactData.editStore.actived;if(!(a&&p||(c&&(a=null==(n=c.editCell)?void 0:n.column,p=null==(i=c.editCell)?void 0:i.row),a&&p)))return;c&&(a=d,p=s);const f=null==(r=a.editRender)?void 0:r.props,{cellDblclickSelectable:m=!1,multiple:v=!1,valueField:C="value"}=f.componentProps||{};if(!m||!l(f))return;const g=o.uuid&&w(o.uuid,a.field,p,u);if(1!==(null==g?void 0:g.length))return;const h=v?[g[0][C]]:g[0][C],b=p[a.field];u.clearEdit(),y(h,b)||(p[a.field]=h,t("formChange",{column:a,row:p,oldValue:b,value:h,index:u.getRowIndex(p),$table:u,option:g[0]}),c&&(c.editCell=null))}))}})}export{x as selectRendererPlugin};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{pick as e}from"lodash-es";import{onBeforeUnmount as r,unref as o}from"vue";import"../../../index.js";import{LOWEST_PRIORITY as
|
|
1
|
+
import{pick as e}from"lodash-es";import{onBeforeUnmount as r,unref as o}from"vue";import"../../../index.js";import{LOWEST_PRIORITY as t}from"../../constants/index.js";import{createVerticalTableHooks as l,usePresetVerticalPlugins as i}from"./src/hooks/index.js";import{useUUIDMap as n}from"../../utils/index.js";import{VERTICAL_CELL_TYPE as s}from"./src/constants.js";import{createCellRender as a,createHeaderCellRender as d}from"./src/renderer.js";import{isVerticalTable as c,getSpanInfo as m}from"./src/utils.js";import{defineTablePlugin as u}from"../../hooks/useTablePlugin.js";function f(){const f="verticalTablePlugin",{getItemFromUUID:p,removeItemFromUUID:g}=n((()=>({})));return u({name:f,vxe(e){e.renderer.add(s,{renderCell:a(e,p,"default"),renderEdit:a(e,p,"edit"),renderHeader:d(e,p)})},apply(n){const s=l();i(s,n,p),n.configHooks.config.tap({name:f,stage:t},(r=>{if(!r.uuid||!c(r))return r;const o=p(r.uuid);function t(e){var r;return e.row||null==e.$rowIndex||(e.row=null==(r=o.fixedLeftVerticalData)?void 0:r[e.$rowIndex]),s.cellStyle.call({},e,o)}function l(e){return s.cellClassName.call({},e,o)}o.originalTableConfig=r;const i={...e(r,["uuid","border","height","verticalConfig","showSeq","size","rowGroupSetting","keyboardConfig","selectType","editConfig"]),vertical:!0,cellClassName:l,headerCellClassName:l,cellStyle:t,headerCellStyle:t,headerRowStyle:e=>s.headerRowStyle.call({background:"white"},e,o),spanMethod:m};return s.config.call(i,o)})),n.setupHooks.setup.tap(f,(e=>{r((()=>g(o(e).uuid)))}))}})}export{f as verticalTablePlugin};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AnyObject } from '../../../../../../../shared/types';
|
|
2
|
-
import {
|
|
2
|
+
import { SyncWaterfallHook } from '../../../../../../../shared/utils/tapable';
|
|
3
3
|
import { CSSProperties } from 'vue';
|
|
4
4
|
import { VxeTableDefines } from 'vxe-table';
|
|
5
5
|
import { VxeColumnPropTypes } from 'vxe-table/types/column';
|
|
@@ -7,29 +7,6 @@ import { VxeTableConstructor, VxeTablePrivateMethods } from 'vxe-table/types/tab
|
|
|
7
7
|
import { IhoTableConfig, TableHooks } from '../../../../../../../components/iho-table';
|
|
8
8
|
import { IhoTableVerticalState } from '../types';
|
|
9
9
|
export declare const createVerticalTableHooks: () => {
|
|
10
|
-
onCellClick: SyncHook<[{
|
|
11
|
-
$rowIndex: number;
|
|
12
|
-
row?: AnyObject | undefined;
|
|
13
|
-
$columnIndex: number;
|
|
14
|
-
column: VxeTableDefines.ColumnInfo;
|
|
15
|
-
}, Partial<{
|
|
16
|
-
originalTableConfig: IhoTableConfig;
|
|
17
|
-
originalFieldList: import("../../../../../../../components/iho-table").IhoTableFieldItem[];
|
|
18
|
-
originalData: AnyObject[];
|
|
19
|
-
verticalFieldList: import("../../../../../../../components/iho-table").IhoTableFieldItem[];
|
|
20
|
-
fullVerticalOriginData: AnyObject[];
|
|
21
|
-
verticalData: AnyObject[];
|
|
22
|
-
fixedLeftVerticalData: AnyObject[];
|
|
23
|
-
headerDepth: number;
|
|
24
|
-
currentRow: AnyObject | null;
|
|
25
|
-
editCell: {
|
|
26
|
-
row: AnyObject;
|
|
27
|
-
column: import("../../../../../../../components/iho-table").IhoTableFieldItem;
|
|
28
|
-
} | null;
|
|
29
|
-
editStateEvent: (event: MouseEvent) => void;
|
|
30
|
-
hoveringRow: AnyObject | null;
|
|
31
|
-
hoveringFieldKey: string | null;
|
|
32
|
-
}>], void, import("../../../../../../../shared/utils/tapable").UnsetAdditionalOptions>;
|
|
33
10
|
cellStyle: SyncWaterfallHook<[CSSProperties, {
|
|
34
11
|
column: VxeTableDefines.ColumnInfo;
|
|
35
12
|
row?: AnyObject | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import"../../../../../../../shared/utils/tapable/SyncHook.js";import"../../../../../../../shared/utils/tapable/SyncBailHook.js";import e from"../../../../../../../shared/utils/tapable/SyncWaterfallHook.js";import"../../../../../../../shared/utils/tapable/SyncLoopHook.js";import"../../../../../../../shared/utils/tapable/AsyncParallelHook.js";import"../../../../../../../shared/utils/tapable/AsyncParallelBailHook.js";import"../../../../../../../shared/utils/tapable/AsyncSeriesHook.js";import"../../../../../../../shared/utils/tapable/AsyncSeriesBailHook.js";import"../../../../../../../shared/utils/tapable/AsyncSeriesLoopHook.js";import"../../../../../../../shared/utils/tapable/AsyncSeriesWaterfallHook.js";import{useExpose as o}from"./useExpose.js";import{useColumn2Data as s}from"./useColumn2Data.js";import{useCurrentColumn as t}from"./useCurrentColumn.js";import{useData2Column as a}from"./useData2Column.js";import{useEditCell as r}from"./useEditCell.js";import{useEventConvert as l}from"./useEventConvert.js";import{useHeaderCSS as i}from"./useHeaderCSS.js";import{useHoverColumn as p}from"./useHoverColumn.js";import{useTriggerRow as m}from"./useTriggerRow.js";const n=()=>({cellStyle:new e(["styles","payload","verticalState"]),cellClassName:new e(["classes","payload","verticalState"]),config:new e(["config","verticalState"]),headerRowStyle:new e(["styles","payload","verticalState"])}),u=(e,n,u)=>{t(e,n,u),r(e,n,u),p(e,n,u),i(e),m(e,n,u),l(e,n,u),a(e,n,u),s(e,n,u),o(e,n)};export{n as createVerticalTableHooks,u as usePresetVerticalPlugins};
|
package/es/components/iho-table/src/plugins/verticalTablePlugin/src/hooks/useCurrentColumn.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{unref as r}from"vue";import{
|
|
1
|
+
import{unref as r}from"vue";import{isVerticalTable as e,isVerticalHeader as o,createVerticalStateHandler as n}from"../utils.js";const t=(t,u,l)=>{u.eventHooks.onCellClick.tap("useCurrentColumn",(({row:r},o)=>{const{uuid:t}=o;if(!t||!e(o))return;const u=l(t);if(!u||!r)return;const i=n(u);i.getTableConfig("rowConfig.isCurrent")&&(u.currentRow=!1!==i.getTableConfig("rowConfig.clickToCancel")&&u.currentRow===r?null:r)})),t.cellStyle.tap("useCurrentColumn",((r,{column:e},t)=>{if(o(e.field))return r;const u=n(t);if(!u.getTableConfig("rowConfig.isCurrent"))return r;return u.getOriginDataByColumn(e)!==t.currentRow?r:Object.assign(r,{backgroundColor:"var(--c-primary-color-opacity2)"})})),u.exposeHooks.expose.tap("VerticalTable-useCurrentColumn",((e,o)=>Object.assign(e,{verticalTable:{...e.verticalTable,getCurrentRow:()=>{var e;const n=null==(e=r(o))?void 0:e.uuid;return n?l(n).currentRow:null}}})))};export{t as useCurrentColumn};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{findAncestor as
|
|
1
|
+
import{findAncestor as e}from"../../../../../../../shared/utils/index.js";import{onBeforeUnmount as t,unref as i}from"vue";import{WIDGET_TYPE as n}from"../../../../constants/index.js";import{isVerticalTable as o,isVerticalHeader as l}from"../utils.js";const d=["RADIO","SWITCH"],r=(r,u,s)=>{u.eventHooks.onCellClick.tap("useEditCell",(({column:e,row:t,$columnIndex:i},n)=>{var l,d;const{uuid:r}=n;if(!r||!o(n))return;const u=s(r);u&&e.editRender&&(u.editCell=t&&i<=(null!=(d=null==(l=u.fixedLeftVerticalData)?void 0:l.length)?d:0)?{row:t,column:e}:null)})),r.config.tap("useEditCell",((t,i)=>(t.uuid&&(i.editStateEvent&&window.removeEventListener("click",i.editStateEvent,{capture:!0}),i.editStateEvent=n=>{e(n.target,(e=>e.getAttribute("uuid")===t.uuid||e.classList.contains("vxe-table--ignore-clear")))||(i.editCell=null)},window.addEventListener("click",i.editStateEvent,{capture:!0})),t.editConfig={...t.editConfig,showIcon:!1,beforeEditMethod({row:e,column:t}){var i;const{originalField:o={}}=e;if(l(t.field))return!1;const{editRender:{name:r=n.DEFAULT}={}}=o;return!Object.values(n).concat(d).includes(r)&&(!(null==(i=o.slots)?void 0:i.default)||!!o.slots.edit)}},t))),u.setupHooks.setup.tap("Vertical-UseEditCell",(e=>{t((()=>{const{uuid:t}=i(e)||{};if(!t)return;const n=s(t);n.editStateEvent&&window.removeEventListener("click",n.editStateEvent,{capture:!0})}))}))};export{r as useEditCell};
|
package/es/components/iho-table/src/plugins/verticalTablePlugin/src/hooks/useEventConvert.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{isObject as e}from"lodash-es";import{unref as l}from"vue";import{isVerticalTable as o,isVerticalHeader as n,getHeaderDepthByField as r,getOriginFieldFromRowData as
|
|
1
|
+
import{isObject as e}from"lodash-es";import{unref as l}from"vue";import{isVerticalTable as o,isVerticalHeader as n,getHeaderDepthByField as r,getOriginFieldFromRowData as d,getOriginRowFromRowData as t}from"../utils.js";const c=(c,i,a)=>{i.eventHooks.beforeEvent.tap("Vertical--useEventConvert",((c,i,u,m)=>{var x,v;if(!e(c))return c;const h=null==(x=l(i))?void 0:x.uuid;if(!h||!o(i))return c;const I=c,{$table:f,$event:b,cell:s}=I;let{$columnIndex:k,$rowIndex:C,column:p,columnIndex:w,row:$,rowIndex:y,type:D,_rowIndex:_,_columnIndex:g}=I;if(p&&(D=n(p.field)?"header":"body","headerCellClick"===m&&"body"===D?m="cellClick":"cellClick"===m&&"header"===D&&(m="headerCellClick"),"headerCellDblclick"===m&&"body"===D?m="cellDblclick":"cellDblclick"===m&&"header"===D&&(m="headerCellDblclick"),$)){const e=r(p.field);p=d($),$="header"===D?void 0:t($,e),g=w=k="header"===I.type?C||0:((null==(v=a(h).fixedLeftVerticalData)?void 0:v.length)||0)+(C||0),_=y=C="header"===D?-1:e}return{_originalPayload:I,$table:f,$event:b,cell:s,type:D,row:$,column:p,rowIndex:y,columnIndex:w,$rowIndex:C,$columnIndex:k,_rowIndex:_,_columnIndex:g,eventName:m,verticalState:a(h)}}))};export{c as useEventConvert};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{createVerticalStateHandler as o}from"../utils.js";const
|
|
1
|
+
import{isVerticalTable as e,createVerticalStateHandler as o}from"../utils.js";const r=(r,i,t)=>{i.eventHooks.onCellClick.tap("useTriggerRow",((r,i,{emits:c})=>{var n,g;const{uuid:l}=i;if(!l||!e(i))return;const{row:f}=r,s=t(l);if(!s||!f)return;const a=o(s);if("row"===a.getTableConfig("checkboxConfig.trigger")){const e=a.getTableConfig("checkboxConfig.checkField")||"checked";f[e]=!f[e],c("checkboxChange",{...r,checked:f[e],records:null!=(g=null==(n=s.originalData)?void 0:n.filter((o=>o[e])))?g:[]})}"row"===a.getTableConfig("radioConfig.trigger")&&(s.currentRow=f)}))};export{r as useTriggerRow};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{inject as e,createVNode as l,toRaw as n,computed as r,withModifiers as i}from"vue";import{property as o,isFunction as t,isEmpty as d,identity as
|
|
1
|
+
import{inject as e,createVNode as l,toRaw as n,computed as r,withModifiers as i}from"vue";import{property as o,isFunction as t,isEmpty as d,identity as c}from"lodash-es";import{NPopover as u,NCheckbox as a,NRadio as s}from"naive-ui";import{InjectionIhoTableUUID as f,WIDGET_TYPE as v,InjectionIhoTableEmits as h}from"../../../constants/index.js";import{IhoTableRenderHelper as x}from"../../../utils/index.js";import{isVerticalHeader as k,getHeaderDepthByField as m,getOriginBasePayload as w,getOriginRowFromRowData as p}from"./utils.js";const g={seq:e=>e.rowIndex+1,checkbox(n,o){const t=e(h),d=r({get:()=>n.row.checked,set(){var e,l;n.row.checked=!n.row.checked,null==t||t("checkboxChange",{...n,checked:n.row.checked,records:null!=(l=null==(e=o.originalData)?void 0:e.filter((e=>e.checked)))?l:[]})}});return l(a,{checked:d.value,"onUpdate:checked":e=>d.value=e,onClick:i(c,["stop"])},null)},radio(e,n){const o=r({get:()=>e.row===n.currentRow,set(){n.currentRow=e.row}});return l(s,{checked:o.value,"onUpdate:checked":e=>o.value=e,onClick:i(c,["stop"])},null)}};function b(n,i,c){return(s,p)=>{var b,D;const I=e(f),C=i(I),{row:$,column:H}=p;if(k(H.field)){const n=o("originalField")($);if("checkbox"===n.type)return function(n,i){var o,t;const c=e(h),u=r({get(){var e,l;return!d(i.originalData)&&null!=(l=null==(e=i.originalData)?void 0:e.every((e=>e.checked)))&&l},set(e){var l,r,o;null==(l=i.originalData)||l.forEach((l=>l.checked=e)),null==c||c("checkboxAll",{$table:n.$table,checked:u.value,records:null!=(o=null==(r=i.originalData)?void 0:r.filter((e=>e.checked)))?o:[]})}}),s=r((()=>{var e,l;return null!=(l=null==(e=i.originalData)?void 0:e.some((e=>e.checked)))&&l}));return l(a,{checked:u.value,"onUpdate:checked":e=>u.value=e,indeterminate:!u.value&&s.value,disabled:null==(t=null==(o=i.originalTableConfig)?void 0:o.checkboxConfig)?void 0:t.disableHeader},null)}(p,C);const i=$[H.field.replaceAll("_parent","")];return x.hasTitlePrefix(n)&&m(H.field)===C.headerDepth?[l(u,null,{trigger:()=>l("i",{class:"vxe-cell-help-icon vxe-icon-question-circle-fill"},null),default:()=>n.titlePrefix.useHTML?l("div",{innerHTML:n.titlePrefix.useHTML},null):l("div",null,[n.titlePrefix.content])}),i]:i}const y={$table:p.$table,columnIndex:p.rowIndex,$columnIndex:p.rowIndex,isHidden:p.isHidden,rowid:p.rowid,...w($,H)};if(!y.row)return null;const{originalField:{editRender:T={},slots:L={}}={}}=$;if(t(L[c]))return L[c](y);if(L.default&&!L.edit)return L.default(y);if(g[y.type])return g[y.type](y,C);const F=T.name||v.DEFAULT,P=n.renderer.get(F);return P?"default"===c?null==(b=P.renderCell)?void 0:b.call(P,T,y):null==(D=P.renderEdit)?void 0:D.call(P,T,y):{}}}function D(l,r){return(i,t)=>{var d,c,u;const a=e(f),s=r(a),v=null==(d=s.fixedLeftVerticalData)?void 0:d[t.$rowIndex];if(!v)return null;const h=o("originalField")(v),x=p(v,m(t.column.field)),k=n(null==(c=s.editCell)?void 0:c.row)===n(x)&&n(null==(u=s.editCell)?void 0:u.column)===n(h);return b(l,r,k?"edit":"default")(null,{...t,row:v,rowIndex:t.$rowIndex,rowid:t.$rowIndex+"",fixed:t.column.fixed,isHidden:!t.column.visible,type:t.column.type})}}export{g as VerticalRenderMap,b as createCellRender,D as createHeaderCellRender};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{traverse as e,findAncestor as n,getStringWidth as t}from"../../../../../../shared/utils/index.js";import{isString as r,isNumber as i,constant as o,isFunction as a,
|
|
1
|
+
import{traverse as e,findAncestor as n,getStringWidth as t}from"../../../../../../shared/utils/index.js";import{isString as r,isNumber as i,constant as o,isFunction as a,noop as l,range as u,property as c}from"lodash-es";import{IhoTableRenderHelper as f}from"../../../utils/index.js";import{VERTICAL_CELL_TYPE as d}from"./constants.js";function s(e){var n;return!!(null==(n=e.verticalConfig)?void 0:n.enable)}function p(e){return!!r(e)&&e.startsWith("header_")}function h(e){return!!r(e)&&e.startsWith("body_")}function g(e){var n;return r(e)?+(null!=(n=e.split("_")[1])?n:-1):-1}function _(n,t){const r=[];return e(n,((e,n,o)=>{e.parent=o,e.children||(!function(e,n){let t=e,r=n;if(!e.parent)return e[`header_${n}`]=e.title,void u(n+1).forEach((t=>{e[`header_${t}_colspan`]=t===n?n+1:0,e[`header_${t}_rowspan`]=t===n?1:0}));for(;t;)e[`header_${r}`]=t.title,e[`header_${r}_rowspan`]=i(t),e[`header_${r}_colspan`]=1,r--,t=t.parent}(e,t),r.push(e))})),r.forEach(((e,n)=>{const t=r[n-1];t&&Object.entries(e).forEach((([n,r])=>{n.match(/^header_(\d+)$/)&&r===t[n]&&r&&(e[`${n}_colspan`]=0,e[`${n}_rowspan`]=0)}))})),r;function i(n){if(!n.children)return 1;let t=0;return e(n.children,(e=>{e.children||t++})),t}}function m({row:e,column:n}){var t,r;return p(n.field)?{rowspan:null!=(t=e[n.field+"_rowspan"])?t:1,colspan:null!=(r=e[n.field+"_colspan"])?r:1}:{colspan:1,rowspan:1}}const b=({cell:e}={})=>{const n=e&&e.querySelector("input,.n-input__input-el");return n&&n.click(),n};function $(n,r){let i=120;return e(r,((e,r,o,a)=>{a===n&&(i=Math.max(i,t(e.title||"")+20+(f.hasTitlePrefix(e)?20:0)))})),Math.ceil(i)}function y(e,n,t){const r=W(t);let c=r.getTableConfig("verticalConfig.headerWidth");c="auto"===c?$:i(c)?o(c):a(c)?c:$;let f=r.getTableConfig("verticalConfig.bodyWidth");f=i(f)?o(f):a(f)?f:l;let s=r.getTableConfig("verticalConfig.bodyMinWidth");return s=i(s)?o(s):a(s)?s:o(120),[...u(n+1).map((e=>({field:`header_${e}`,title:`header_${e}`,width:c(e,t.originalFieldList),fixed:"left",editRender:{name:d,props:{},enable:!1}}))),...e.map(((e,n)=>({field:`body_${n}`,title:`body_${n}`,minWidth:s(n),width:f(n),editRender:{name:d,props:{},enable:!0,autofocus:b}})))]}function w(e){const t=n(e.target,(e=>"TD"===e.tagName||"TH"===e.tagName));if(!t)return;const r=t.className.match(/(body|header)_(\d+)/);if(!r)return;const[i,o,a]=r;return{fieldKey:i,type:o,sequence:+a}}function x(e){return c("originalField")(e)}function v(e,n){return c(`originalData.${n}`)(e)}function C(e,n){const t=g(n.field),r=x(e);return{row:v(e,t),rowIndex:t,$rowIndex:t,column:r,fixed:r.fixed,type:r.type}}function T(n){const t=[];return e(n,(e=>{"left"===e.fixed&&t.push(e)})),t}function W(e){return{getOriginDataByColumn(n){const{originalData:t=[]}=e;return t[g(n.field)]},getTableConfig:n=>c(n)(e.originalTableConfig)}}function D(e,n){return new Proxy({},{get(t,r){var i;if("originalField"===r)return e;if("originalData"===r)return a(n)?n():n;if(p(r))return e[r];if(h(r)){const t=g(r);return"seq"===e.type?t+1:null==(i=n[t])?void 0:i[e.field]}return t[r]},set(t,r,i){if(!p(r)){const t=g(r);t>=0&&n[t]&&(n[t][e.field]=i)}return!0}})}b.toString=()=>"input,.n-input__input-el";export{_ as bindHeaderInfoAndFlatten,D as createDataProxy,y as createVerticalFieldList,W as createVerticalStateHandler,T as findFixedLeftFields,g as getHeaderDepthByField,C as getOriginBasePayload,x as getOriginFieldFromRowData,v as getOriginRowFromRowData,m as getSpanInfo,w as getVerticalInfoFromEvent,h as isVerticalBody,p as isVerticalHeader,s as isVerticalTable};
|
|
@@ -87,6 +87,7 @@ export declare type IhoTableConfig = VxeTableProps & Partial<{
|
|
|
87
87
|
enable?: boolean;
|
|
88
88
|
headerWidth?: number | 'auto' | ((level: number) => number);
|
|
89
89
|
bodyWidth?: number | ((index: number) => number);
|
|
90
|
+
bodyMinWidth?: number | ((index: number) => number);
|
|
90
91
|
};
|
|
91
92
|
[K: string]: unknown;
|
|
92
93
|
}> &
|