cnhis-design-vue 3.2.5-beta.46 → 3.2.5-beta.48
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/big-table/index.d.ts +1 -1
- package/es/components/big-table/src/BigTable.vue.d.ts +1 -1
- 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/callback/src/components/render/popupMaps.d.ts +1 -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/form-config/index.d.ts +2 -0
- package/es/components/form-config/src/FormConfig.vue.d.ts +2 -0
- package/es/components/form-config/src/components/FormConfigCreator.vue.d.ts +1 -0
- package/es/components/form-config/src/components/FormConfigEdit.vue.d.ts +1 -0
- package/es/components/form-render/index.d.ts +1 -0
- package/es/components/form-render/src/FormRender.vue.d.ts +1 -0
- package/es/components/form-render/src/FormRender.vue2.js +1 -1
- package/es/components/form-render/src/FormRenderWrapper.vue.d.ts +1 -0
- package/es/components/form-render/src/hooks/useFormEvent.d.ts +2 -1
- package/es/components/form-render/src/hooks/useFormEvent.js +1 -1
- package/es/components/form-render/src/types/index.d.ts +10 -7
- package/es/components/iho-table/src/plugins/forceArrowKeyPlugin.js +1 -1
- package/es/components/iho-table/src/plugins/rendererPlugins/editableWidgets/selectRendererPlugin/editSelect.js +1 -1
- package/es/components/info-header/index.d.ts +2 -0
- package/es/components/info-header/src/InfoHeader.vue.d.ts +2 -0
- package/es/components/info-header/src/components/infoDescription/index.vue.d.ts +1 -0
- package/es/components/info-header/src/components/patientInfo/index.vue.d.ts +1 -0
- 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/components/shortcut-setter/index.d.ts +1 -0
- package/es/components/shortcut-setter/src/ShortcutSetter.vue.d.ts +1 -0
- package/es/env.d.ts +25 -25
- package/es/shared/assets/img/defaultCover/10review_successful.png.js +1 -1
- package/es/shared/assets/img/defaultCover/11review_fail.png.js +1 -1
- package/es/shared/assets/img/defaultCover/12no_setting.png.js +1 -1
- package/es/shared/assets/img/defaultCover/13no_menu_setting.png.js +1 -1
- package/es/shared/assets/img/defaultCover/14no_call_setting.png.js +1 -1
- package/es/shared/assets/img/defaultCover/15no_use_tag.png.js +1 -1
- package/es/shared/assets/img/defaultCover/16no_table_data.png.js +1 -1
- package/es/shared/assets/img/defaultCover/1location.png.js +1 -1
- package/es/shared/assets/img/defaultCover/2notfound.png.js +1 -1
- package/es/shared/assets/img/defaultCover/3loading.png.js +1 -1
- package/es/shared/assets/img/defaultCover/4no_permission.png.js +1 -1
- package/es/shared/assets/img/defaultCover/5no_data.png.js +1 -1
- package/es/shared/assets/img/defaultCover/6no_network.png.js +1 -1
- package/es/shared/assets/img/defaultCover/7no_doctor.png.js +1 -1
- package/es/shared/assets/img/defaultCover/8system_error.png.js +1 -1
- package/es/shared/assets/img/defaultCover/9system_upgrade.png.js +1 -1
- 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/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/tooth/l-b-1.png.js +1 -1
- package/es/shared/assets/img/tooth/l-b-2.png.js +1 -1
- package/es/shared/assets/img/tooth/l-b-3.png.js +1 -1
- package/es/shared/assets/img/tooth/l-b-4.png.js +1 -1
- package/es/shared/assets/img/tooth/l-b-5.png.js +1 -1
- package/es/shared/assets/img/tooth/l-b-6.png.js +1 -1
- package/es/shared/assets/img/tooth/l-b-7.png.js +1 -1
- package/es/shared/assets/img/tooth/l-b-8.png.js +1 -1
- package/es/shared/assets/img/tooth/l-t-1.png.js +1 -1
- package/es/shared/assets/img/tooth/l-t-2.png.js +1 -1
- package/es/shared/assets/img/tooth/l-t-3.png.js +1 -1
- package/es/shared/assets/img/tooth/l-t-4.png.js +1 -1
- package/es/shared/assets/img/tooth/l-t-5.png.js +1 -1
- package/es/shared/assets/img/tooth/l-t-6.png.js +1 -1
- package/es/shared/assets/img/tooth/l-t-7.png.js +1 -1
- package/es/shared/assets/img/tooth/l-t-8.png.js +1 -1
- package/es/shared/assets/img/tooth/r-b-1.png.js +1 -1
- package/es/shared/assets/img/tooth/r-b-2.png.js +1 -1
- package/es/shared/assets/img/tooth/r-b-3.png.js +1 -1
- package/es/shared/assets/img/tooth/r-b-4.png.js +1 -1
- package/es/shared/assets/img/tooth/r-b-5.png.js +1 -1
- package/es/shared/assets/img/tooth/r-b-6.png.js +1 -1
- package/es/shared/assets/img/tooth/r-b-7.png.js +1 -1
- package/es/shared/assets/img/tooth/r-b-8.png.js +1 -1
- package/es/shared/assets/img/tooth/r-t-1.png.js +1 -1
- package/es/shared/assets/img/tooth/r-t-2.png.js +1 -1
- package/es/shared/assets/img/tooth/r-t-3.png.js +1 -1
- package/es/shared/assets/img/tooth/r-t-4.png.js +1 -1
- package/es/shared/assets/img/tooth/r-t-5.png.js +1 -1
- package/es/shared/assets/img/tooth/r-t-6.png.js +1 -1
- package/es/shared/assets/img/tooth/r-t-7.png.js +1 -1
- package/es/shared/assets/img/tooth/r-t-8.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/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/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
|
+
```
|
|
@@ -610,7 +610,7 @@ declare const BigTable: SFCWithInstall<import("vue").DefineComponent<{
|
|
|
610
610
|
setGroupTreeExpand: () => void;
|
|
611
611
|
resetTableInlineEditStatus: () => false | undefined;
|
|
612
612
|
renderAnnotation: (columnConfig: import("../../shared/types").AnyObject) => JSX.Element | null;
|
|
613
|
-
toolTipTitle: (item: any, type?: any) => (
|
|
613
|
+
toolTipTitle: (item: any, type?: any) => (JSX.Element | null)[] | (() => any);
|
|
614
614
|
triggerExpand: (e: any, isExpand: any) => void;
|
|
615
615
|
getOtherConfigInit: () => any;
|
|
616
616
|
refreshTable: () => void;
|
|
@@ -612,7 +612,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
612
612
|
setGroupTreeExpand: () => void;
|
|
613
613
|
resetTableInlineEditStatus: () => false | undefined;
|
|
614
614
|
renderAnnotation: (columnConfig: AnyObject) => JSX.Element | null;
|
|
615
|
-
toolTipTitle: (item: any, type?: any) => (
|
|
615
|
+
toolTipTitle: (item: any, type?: any) => (JSX.Element | null)[] | (() => any);
|
|
616
616
|
triggerExpand: (e: any, isExpand: any) => void;
|
|
617
617
|
getOtherConfigInit: () => any;
|
|
618
618
|
refreshTable: () => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{defineComponent as e,ref as t,watch as n,withDirectives as s,openBlock as i,createElementBlock as
|
|
1
|
+
import{defineComponent as e,ref as t,watch as n,withDirectives as s,openBlock as i,createElementBlock as o,normalizeStyle as r,unref as a,createElementVNode as c,toDisplayString as l,createVNode as u,createCommentVNode as d,withCtx as f,Fragment as p,renderList as m,createBlock as g,createTextVNode as v,vShow as h}from"vue";import{NIcon as y,NPopover as M,NTooltip as k,NUpload as x,NUploadTrigger as C,NButton as T}from"naive-ui";import{format as b}from"date-fns";import{useState as w}from"../hooks/useState.js";import{useSession as E}from"../hooks/useSession.js";import{images as I,alt as _}from"../utils/emoji.js";import{MESSAGE_TYPE as R}from"../constants/index.js";import{uploadFileApi as j}from"../api/index.js";import{CloseCircleOutline as L}from"@vicons/ionicons5";import{cloneDeep as S}from"lodash-es";import{simplifyMessage as F}from"../utils/index.js";const H={key:0,class:"reference-content-box"},K={class:"reference-content"},D=["innerHTML"],N={class:"tool-box"},J=c("span",null,[c("i",{class:"chat--iconfont chat--icon-face"})],-1),O={class:"emoji-box"},A=c("span",null,"默认表情",-1),G={class:"list-box"},U=["onClick"],X=["src"],z=[c("i",{class:"chat--iconfont chat--icon-good"},null,-1)],B=["onClick"],q=[c("i",{class:"chat--iconfont chat--icon-image"},null,-1)],P=["onClick"],Q=[c("i",{class:"chat--iconfont chat--icon-folder"},null,-1)],V={class:"btn-box"},W=c("span",{class:"tip"},"Enter 发送, Shift + Enter 换行",-1);var Y=e({__name:"ChatFooter",setup(e){const Y=t(),Z=t(""),{state:$,stompClient:ee}=w(),{setCurrentSessionItem:te}=E($),ne=t(!1);function se(e){["Enter"].includes(e.key)&&(function(e){return e.altKey||e.ctrlKey||e.metaKey||e.shiftKey}(e)||(e.preventDefault(),re()))}function ie(){var e,t;Z.value=(null==(t=null==(e=Y.value)?void 0:e.innerText)?void 0:t.trim())||""}async function oe(e,t){const{file:n,name:s}=e.file,i=new FormData;i.append("sender",$.userInfo.id),i.append("file",n);const o=await j(i);if(!o)return console.log("上传失败");ae({chatMessageType:t,msg:t===R.FILE?s:o,url:o})}function re(){if(!(Z.value.length>2e3))return Z.value?void ae({msg:Z.value}):console.log("请输入内容");console.log("请控制在2000字以内")}async function ae(e){const{chatMessageType:t=R.TEXT,msg:n,url:s}=e,i={msg:n,chatMessageType:t};t===R.FILE&&(i.fileUrl=s),[R.TEXT,R.BLEND].includes(t)&&(Y.value.innerHTML="",Z.value=""),$.currentReferenceMsg.id&&(i.referenceContent=S($.currentReferenceMsg),$.currentReferenceMsg.id="");const o=b(new Date,"yyyy-MM-dd HH:mm:ss");$.currentMsg={content:i,sender:$.userInfo.id,id:"",sendTime:o,sending:!0,fail:!1},$.isAppendMsg=!0,te({lastMessageSendTime:o,lastMessage:i,sortTime:o});try{ee.value.send("/app/chat/send",{},JSON.stringify({chatType:"SINGLE",content:i,receiver:$.currentSessionItem.receiver})),$.currentMsg={...$.currentMsg,fail:!1}}catch(e){$.currentMsg={...$.currentMsg,fail:!0}}finally{$.currentMsg={...$.currentMsg,sending:!1}}}return n((()=>$.currentReferenceMsg.id),(e=>{var t;e&&(null==(t=Y.value)||t.focus())})),(e,t)=>s((i(),o("section",{class:"chat-footer",style:r({cursor:a($).id?"default":"not-allowed"})},[a($).currentReferenceMsg.id?(i(),o("div",H,[c("div",K,[c("span",null,l(a($).currentReferenceMsg.senderName)+":",1),c("pre",{innerHTML:a(F)(a($).currentReferenceMsg.content)},null,8,D)]),u(a(y),{component:a(L),onClick:t[0]||(t[0]=()=>a($).currentReferenceMsg.id="")},null,8,["component"])])):d("v-if",!0),c("div",N,[u(a(M),{show:ne.value,"onUpdate:show":t[1]||(t[1]=e=>ne.value=e),placement:"top",trigger:"click","show-arrow":!1,"display-directive":"show",delay:0},{trigger:f((()=>[J])),default:f((()=>[c("div",O,[d(' <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> '),A,c("div",G,[(i(!0),o(p,null,m(a(I),((e,t)=>(i(),o(p,{key:t},[t>0?(i(),g(a(k),{key:0,"show-arrow":!1,trigger:"hover"},{trigger:f((()=>[c("i",{onClick:()=>function(e){ne.value=!1,ae({chatMessageType:R.EMOJI,msg:e})}(t)},[c("img",{src:e},null,8,X)],8,U)])),default:f((()=>[v(" "+l(a(_)[t-1]||"微笑"),1)])),_:2},1024)):d("v-if",!0)],64)))),128))])])])),_:1},8,["show"]),c("span",{onClick:t[2]||(t[2]=()=>ae({chatMessageType:a(R).EMOJI,msg:0}))},z),u(a(x),{abstract:"",multiple:"",accept:"image/*",onChange:t[3]||(t[3]=e=>oe(e,a(R).IMAGE))},{default:f((()=>[u(a(C),{abstract:""},{default:f((({handleClick:e})=>[c("span",{onClick:e},q,8,B)])),_:1})])),_:1}),u(a(x),{abstract:"",multiple:"",accept:"video/*,.pdf,.doc.docx,,.zip,.xlsx,.txt",onChange:t[4]||(t[4]=e=>oe(e,a(R).FILE))},{default:f((()=>[u(a(C),{abstract:""},{default:f((({handleClick:e})=>[c("span",{onClick:e},Q,8,P)])),_:1})])),_:1})]),s(c("div",{ref_key:"inputRef",ref:Y,class:"input-box",contenteditable:"",onKeydown:se,onInput:ie},null,544),[[h,a($).id]]),c("div",V,[W,u(a(T),{type:"primary",round:"",disabled:!Z.value,onClick:re},{default:f((()=>[v("发送")])),_:1},8,["disabled"])])],4)),[[h,a($).id]])}});export{Y 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';
|
|
@@ -458,6 +458,7 @@ export declare const CallbackMaps: Map<string, {
|
|
|
458
458
|
setGraph: (field: import("@formily/core").GeneralField) => void;
|
|
459
459
|
removeGraph: (field: import("@formily/core").GeneralField) => void;
|
|
460
460
|
lowCodeEventTrigger: (field: import("@formily/core").GeneralField) => void;
|
|
461
|
+
emitFormChange: import("vue").Ref<boolean>;
|
|
461
462
|
formModel: import("@formily/core").Form<{
|
|
462
463
|
[x: string]: any;
|
|
463
464
|
}>;
|
|
@@ -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;
|
|
@@ -1452,6 +1449,9 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
1452
1449
|
isSecondDisabled(second: number, minute: number | null, hour: number | null): boolean | 0;
|
|
1453
1450
|
};
|
|
1454
1451
|
NSelect: any;
|
|
1452
|
+
/**
|
|
1453
|
+
* 改变展示方式
|
|
1454
|
+
*/
|
|
1455
1455
|
NPopover: any;
|
|
1456
1456
|
CDatePicker: import("../../../shared/types").SFCWithInstall<import("vue").DefineComponent<{
|
|
1457
1457
|
updateUnchangedValue: {
|
|
@@ -862,6 +862,7 @@ declare const FormConfig: SFCWithInstall<import("vue").DefineComponent<{
|
|
|
862
862
|
setGraph: (field: import("@formily/core").GeneralField) => void;
|
|
863
863
|
removeGraph: (field: import("@formily/core").GeneralField) => void;
|
|
864
864
|
lowCodeEventTrigger: (field: import("@formily/core").GeneralField) => void;
|
|
865
|
+
emitFormChange: import("vue").Ref<boolean>;
|
|
865
866
|
formModel: import("@formily/core").Form<{
|
|
866
867
|
[x: string]: any;
|
|
867
868
|
}>;
|
|
@@ -7502,6 +7503,7 @@ declare const FormConfig: SFCWithInstall<import("vue").DefineComponent<{
|
|
|
7502
7503
|
setGraph: (field: import("@formily/core").GeneralField) => void;
|
|
7503
7504
|
removeGraph: (field: import("@formily/core").GeneralField) => void;
|
|
7504
7505
|
lowCodeEventTrigger: (field: import("@formily/core").GeneralField) => void;
|
|
7506
|
+
emitFormChange: import("vue").Ref<boolean>;
|
|
7505
7507
|
formModel: import("@formily/core").Form<{
|
|
7506
7508
|
[x: string]: any;
|
|
7507
7509
|
}>;
|
|
@@ -865,6 +865,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
865
865
|
setGraph: (field: import("@formily/core").GeneralField) => void;
|
|
866
866
|
removeGraph: (field: import("@formily/core").GeneralField) => void;
|
|
867
867
|
lowCodeEventTrigger: (field: import("@formily/core").GeneralField) => void;
|
|
868
|
+
emitFormChange: Ref<boolean>;
|
|
868
869
|
formModel: import("@formily/core").Form<{
|
|
869
870
|
[x: string]: any;
|
|
870
871
|
}>;
|
|
@@ -7505,6 +7506,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
7505
7506
|
setGraph: (field: import("@formily/core").GeneralField) => void;
|
|
7506
7507
|
removeGraph: (field: import("@formily/core").GeneralField) => void;
|
|
7507
7508
|
lowCodeEventTrigger: (field: import("@formily/core").GeneralField) => void;
|
|
7509
|
+
emitFormChange: Ref<boolean>;
|
|
7508
7510
|
formModel: import("@formily/core").Form<{
|
|
7509
7511
|
[x: string]: any;
|
|
7510
7512
|
}>;
|
|
@@ -474,6 +474,7 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
|
474
474
|
setGraph: (field: import("@formily/core").GeneralField) => void;
|
|
475
475
|
removeGraph: (field: import("@formily/core").GeneralField) => void;
|
|
476
476
|
lowCodeEventTrigger: (field: import("@formily/core").GeneralField) => void;
|
|
477
|
+
emitFormChange: import("vue").Ref<boolean>;
|
|
477
478
|
formModel: import("@formily/core").Form<{
|
|
478
479
|
[x: string]: any;
|
|
479
480
|
}>;
|
|
@@ -5951,6 +5951,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
5951
5951
|
setGraph: (field: import("@formily/core").GeneralField) => void;
|
|
5952
5952
|
removeGraph: (field: import("@formily/core").GeneralField) => void;
|
|
5953
5953
|
lowCodeEventTrigger: (field: import("@formily/core").GeneralField) => void;
|
|
5954
|
+
emitFormChange: import("vue").Ref<boolean>;
|
|
5954
5955
|
formModel: import("@formily/core").Form<{
|
|
5955
5956
|
[x: string]: any;
|
|
5956
5957
|
}>;
|
|
@@ -461,6 +461,7 @@ declare const FormRender: SFCWithInstall<import("vue").DefineComponent<{}, {
|
|
|
461
461
|
setGraph: (field: import("@formily/core").GeneralField) => void;
|
|
462
462
|
removeGraph: (field: import("@formily/core").GeneralField) => void;
|
|
463
463
|
lowCodeEventTrigger: (field: import("@formily/core").GeneralField) => void;
|
|
464
|
+
emitFormChange: import("vue").Ref<boolean>;
|
|
464
465
|
formModel: import("@formily/core").Form<{
|
|
465
466
|
[x: string]: any;
|
|
466
467
|
}>;
|
|
@@ -456,6 +456,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
456
456
|
setGraph: (field: import("@formily/core").GeneralField) => void;
|
|
457
457
|
removeGraph: (field: import("@formily/core").GeneralField) => void;
|
|
458
458
|
lowCodeEventTrigger: (field: import("@formily/core").GeneralField) => void;
|
|
459
|
+
emitFormChange: import("vue").Ref<boolean>;
|
|
459
460
|
formModel: import("@formily/core").Form<{
|
|
460
461
|
[x: string]: any;
|
|
461
462
|
}>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{defineComponent as e,ref as o,provide as t,computed as r,nextTick as a,onUnmounted as s,openBlock as i,createBlock as l,unref as n,mergeProps as m,withCtx as p,createElementBlock as d,createVNode as u,isRef as c,Fragment as f,renderList as h,createCommentVNode as y,createElementVNode as g,normalizeStyle as b,toDisplayString as j,renderSlot as v}from"vue";import{useTheme as k}from"../../../shared/hooks/useTheme.js";import{useElementSize as F}from"@vueuse/core";import"date-fns";import{isNumber as C,cloneDeep as S}from"lodash-es";import"@vue/shared";import"../../../shared/utils/index.js";import"@vueuse/shared";import"../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import{NForm as x,NTabs as w,NTabPane as B,NConfigProvider as H}from"naive-ui";import{useVersion as A}from"../../../shared/hooks/useVersion.js";import{createForm as L,onFormMount as R,onFieldValueChange as O,onFieldMount as I,onFieldUnmount as V,onFieldReact as N}from"@formily/core";import{Path as _}from"@formily/path";import{FormProvider as D,FormConsumer as T}from"@formily/vue";import{InjectionFormColumnWidth as W,InjectionFormLifeCycleCaller as E,InjectionFormGraph as U}from"./constants/index.js";import{createObjSchema as q}from"./utils/schema.js";import{useAnchor as G}from"./hooks/useAnchor.js";import{useAutoHidden as M}from"./hooks/useAutoHidden.js";import"../index.js";import{useComplexOptionsSpan as K}from"./hooks/useComplexOptions.js";import{useFieldListAdaptor as P}from"./hooks/useFieldListAdaptor.js";import"../../../shared/utils/tapable/SyncHook.js";import"../../../shared/utils/tapable/SyncBailHook.js";import"../../../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{useFieldVisitor as z}from"./hooks/useFieldVisitor.js";import{useFormContext as J}from"./hooks/useFormContext.js";import{useFormDomEvent as $,useFormExposeEvent as Q}from"./hooks/useFormEvent.js";import{useFormGraph as X}from"./hooks/useFormGraph.js";import{useFormRenderLifeCycle as Y}from"./hooks/useFormRenderLifeCycle.js";import{validateMessageLocale as Z}from"./hooks/useFormValidator.js";import{useLowCodeEvent as ee}from"./hooks/useLowCodeEvent.js";import{useLowCodeReactions as oe}from"./hooks/useLowCodeReactions.js";import{useNuiThemeOverrides as te}from"./hooks/useNuiThemeOverrides.js";import{useOperationalForm as re}from"./hooks/useOperationalForm.js";import{useWordbookSetting as ae}from"./hooks/useWordbookSetting.js";import{useNewLowCodeReactions as se}from"./hooks/useNewLowCodeReactions.js";const ie={key:0,style:{height:"54px"}},le={style:{"white-space":"pre"}};var ne=e({__name:"FormRender",props:{fieldList:{type:Array},initialData:{type:Object,default:()=>({})},fieldVisitor:{type:Object},column:{type:Number,default:24},maxHeight:{type:[Number,String],default:""},anchor:{type:Boolean,default:!1},parallelism:{type:Number,default:3},businessFormatter:{type:Function},schema:{type:Object},components:{type:Object,default:()=>({})},scope:{type:Object,default:()=>({})},annotation:{type:Object},annotationShortcuts:{type:Array},consumer:{type:Boolean,default:!1},uuid:{type:String},lifeCycle:{type:Object},requestInstance:{type:Object},enterToNextWidget:{type:[Boolean,Function],default:!0},autoExpand:Boolean,lowCodeReactions:{type:Array},newLowCodeReactions:{type:Array},operationalForm:{type:Array},dateOperationalForm:{type:Object},operationalFormInit:{type:Boolean,default:!0},linebarAutoHidden:{type:Boolean},bordered:{type:[Boolean,String],default:!0},labelPlacementOverwrite:Boolean,outBordered:{type:Boolean,default:!1},uniqueCacheData:{type:Boolean,default:!1},forceClearable:Boolean,wordSplitFilter:{type:Boolean,default:!0},selectMode:Boolean,selectedFields:{type:Array},linebarDirection:{type:String,default:"vertical"},linebarTextDirection:{type:String,default:"horizontal"},linebarWidth:{type:[Number,String],default:120},autoWidth:{type:[Boolean,Number],default:!1},incrementalRender:{type:Boolean,default:!1}},emits:["formChange","annotationChange","scroll","update:selectedFields","linebarChange","ready"],setup(e,{expose:ne,emit:me}){const pe=e,de=k(),{nuiThemeOverrides:ue}=te();Z();const ce=o(),{width:fe}=F(ce);t(W,r((()=>fe.value?(fe.value-16*(pe.column-1))/24:0)));const he=r((()=>C(pe.maxHeight)?pe.maxHeight+"px":pe.maxHeight)),{SchemaField:ye,businessCollector:ge,formItemDepsCollector:be,changeContextCollector:je,formUUID:ve}=J(pe,me),{anchorBarRef:ke,currentAnchor:Fe,updateAnchorList:Ce,anchorIdList:Se,onScroll:xe}=G(pe,me,ce,be),{callLifeCycle:we}=Y(pe);t(E,we),we("onSetup");const{trigger:Be}=M(),{observeFormGraph:He,setGraph:Ae,removeGraph:Le}=X();t(U,He);const{lowCodeEventTrigger:Re}=ee(),Oe=L({initialValues:pe.initialData,effects(e){const o={};R((()=>{Object.assign(o,S(e.values))})),O("*",(t=>{const r=_.getIn(o,t.path);_.setIn(o,t.path,t.value);const a=t.props.name.toString();ge.trigger(e,a),be.trigger(t.path),me("formChange",{fieldInstance:t,fieldKey:a,oldValue:r,fieldName:t.title,value:t.value,context:je.getContext(a,t.value)}),Re(t),
|
|
1
|
+
import{defineComponent as e,ref as o,provide as t,computed as r,nextTick as a,onUnmounted as s,openBlock as i,createBlock as l,unref as n,mergeProps as m,withCtx as p,createElementBlock as d,createVNode as u,isRef as c,Fragment as f,renderList as h,createCommentVNode as y,createElementVNode as g,normalizeStyle as b,toDisplayString as j,renderSlot as v}from"vue";import{useTheme as k}from"../../../shared/hooks/useTheme.js";import{useElementSize as F}from"@vueuse/core";import"date-fns";import{isNumber as C,cloneDeep as S}from"lodash-es";import"@vue/shared";import"../../../shared/utils/index.js";import"@vueuse/shared";import"../../../shared/hooks/selectHooks/useSearchContent.js";import"@vicons/ionicons5";import{NForm as x,NTabs as w,NTabPane as B,NConfigProvider as H}from"naive-ui";import{useVersion as A}from"../../../shared/hooks/useVersion.js";import{createForm as L,onFormMount as R,onFieldValueChange as O,onFieldMount as I,onFieldUnmount as V,onFieldReact as N}from"@formily/core";import{Path as _}from"@formily/path";import{FormProvider as D,FormConsumer as T}from"@formily/vue";import{InjectionFormColumnWidth as W,InjectionFormLifeCycleCaller as E,InjectionFormGraph as U}from"./constants/index.js";import{createObjSchema as q}from"./utils/schema.js";import{useAnchor as G}from"./hooks/useAnchor.js";import{useAutoHidden as M}from"./hooks/useAutoHidden.js";import"../index.js";import{useComplexOptionsSpan as K}from"./hooks/useComplexOptions.js";import{useFieldListAdaptor as P}from"./hooks/useFieldListAdaptor.js";import"../../../shared/utils/tapable/SyncHook.js";import"../../../shared/utils/tapable/SyncBailHook.js";import"../../../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{useFieldVisitor as z}from"./hooks/useFieldVisitor.js";import{useFormContext as J}from"./hooks/useFormContext.js";import{useFormDomEvent as $,useFormExposeEvent as Q}from"./hooks/useFormEvent.js";import{useFormGraph as X}from"./hooks/useFormGraph.js";import{useFormRenderLifeCycle as Y}from"./hooks/useFormRenderLifeCycle.js";import{validateMessageLocale as Z}from"./hooks/useFormValidator.js";import{useLowCodeEvent as ee}from"./hooks/useLowCodeEvent.js";import{useLowCodeReactions as oe}from"./hooks/useLowCodeReactions.js";import{useNuiThemeOverrides as te}from"./hooks/useNuiThemeOverrides.js";import{useOperationalForm as re}from"./hooks/useOperationalForm.js";import{useWordbookSetting as ae}from"./hooks/useWordbookSetting.js";import{useNewLowCodeReactions as se}from"./hooks/useNewLowCodeReactions.js";const ie={key:0,style:{height:"54px"}},le={style:{"white-space":"pre"}};var ne=e({__name:"FormRender",props:{fieldList:{type:Array},initialData:{type:Object,default:()=>({})},fieldVisitor:{type:Object},column:{type:Number,default:24},maxHeight:{type:[Number,String],default:""},anchor:{type:Boolean,default:!1},parallelism:{type:Number,default:3},businessFormatter:{type:Function},schema:{type:Object},components:{type:Object,default:()=>({})},scope:{type:Object,default:()=>({})},annotation:{type:Object},annotationShortcuts:{type:Array},consumer:{type:Boolean,default:!1},uuid:{type:String},lifeCycle:{type:Object},requestInstance:{type:Object},enterToNextWidget:{type:[Boolean,Function],default:!0},autoExpand:Boolean,lowCodeReactions:{type:Array},newLowCodeReactions:{type:Array},operationalForm:{type:Array},dateOperationalForm:{type:Object},operationalFormInit:{type:Boolean,default:!0},linebarAutoHidden:{type:Boolean},bordered:{type:[Boolean,String],default:!0},labelPlacementOverwrite:Boolean,outBordered:{type:Boolean,default:!1},uniqueCacheData:{type:Boolean,default:!1},forceClearable:Boolean,wordSplitFilter:{type:Boolean,default:!0},selectMode:Boolean,selectedFields:{type:Array},linebarDirection:{type:String,default:"vertical"},linebarTextDirection:{type:String,default:"horizontal"},linebarWidth:{type:[Number,String],default:120},autoWidth:{type:[Boolean,Number],default:!1},incrementalRender:{type:Boolean,default:!1}},emits:["formChange","annotationChange","scroll","update:selectedFields","linebarChange","ready"],setup(e,{expose:ne,emit:me}){const pe=e,de=k(),{nuiThemeOverrides:ue}=te();Z();const ce=o(),{width:fe}=F(ce);t(W,r((()=>fe.value?(fe.value-16*(pe.column-1))/24:0)));const he=r((()=>C(pe.maxHeight)?pe.maxHeight+"px":pe.maxHeight)),{SchemaField:ye,businessCollector:ge,formItemDepsCollector:be,changeContextCollector:je,formUUID:ve}=J(pe,me),{anchorBarRef:ke,currentAnchor:Fe,updateAnchorList:Ce,anchorIdList:Se,onScroll:xe}=G(pe,me,ce,be),{callLifeCycle:we}=Y(pe);t(E,we),we("onSetup");const{trigger:Be}=M(),{observeFormGraph:He,setGraph:Ae,removeGraph:Le}=X();t(U,He);const{lowCodeEventTrigger:Re}=ee(),Oe=o(!0),Ie=L({initialValues:pe.initialData,effects(e){const o={};R((()=>{Object.assign(o,S(e.values))})),O("*",(t=>{const r=_.getIn(o,t.path);_.setIn(o,t.path,t.value);const a=t.props.name.toString();ge.trigger(e,a),be.trigger(t.path),Oe.value&&me("formChange",{fieldInstance:t,fieldKey:a,oldValue:r,fieldName:t.title,value:t.value,context:je.getContext(a,t.value)}),Re(t),Ve(a),Ne(a),_e.trigger(a),De.trigger(a,t.value)})),I("*",Ae),I("*",(e=>{const o=e.props.name.toString();Ve(o),Ne(o),pe.operationalFormInit&&_e.trigger(o)})),V("*",Le),N("*",(e=>Be(e,pe.linebarAutoHidden))),R((e=>e.query("*").forEach((e=>Be(e,pe.linebarAutoHidden))))),pe.anchor&&N("*",Ce)}}),{lowCodeReactionsHandler:Ve}=oe(r((()=>pe.lowCodeReactions)),Ie),{newLowCodeReactionsHandler:Ne}=se(r((()=>pe.newLowCodeReactions)),Ie),_e=re(pe,Ie),De=ae().create(Ie,je),{schemaAdaptor:Te}=P(ge,pe.lifeCycle);let We=pe.fieldList||[],Ee=[];const Ue=r((()=>{let e=!1;const o=pe.schema?pe.schema:pe.fieldList?(We!==pe.fieldList&&0!==We.length||(e=!0),We=z().traverse(S(pe.fieldList),pe.fieldVisitor),q(Te(We,pe))):q({});return pe.incrementalRender&&e&&(Ee=[],Object.values(o.properties).forEach((e=>{var o;"visible"===e["x-display"]&&"LINEBAR"===e["x-component"]&&!1!==(null==(o=e["x-component-props"])?void 0:o.show)&&(Ee.push(e),e["x-component-props"].show=!1)})),qe()),o}));function qe(){Ee.length&&setTimeout((()=>{const e=Ee.shift();e&&(be.trigger(_.parse(e.name),!0),Ee.length?qe():a().then((()=>me("ready"))))}),300)}const{onKeydown:Ge}=$({formModel:Ie,formRenderRef:ce,props:pe,formUUID:ve}),{clearSpan:Me}=K();s((()=>Me(ve)));const Ke=Q({formModel:Ie,formRenderRef:ce,formItemDepsCollector:be,businessCollector:ge,wordbookSettingHandler:De,operationalFormHandler:_e,getFieldList:()=>We,formUUID:ve,changeContextCollector:je,emitFormChange:Oe});return ne({formModel:Ie,validate:(e="*",o={})=>Ke.validate(e,o),getFormValues:(e=!0)=>Ke.getFormValues(e),setFormValues:async(e,o={})=>Ke.setFormValues(e,o),setFieldState(e,o){Ke.setFieldState(e,o)},resetFields(e="*"){Ke.resetFields(e)},queryWidget:async e=>Ke.queryWidget(e),getFieldList:()=>We,applySelectedSetting:e=>Ke.applySelectedSetting(e),async reload(){console.error("reload function is abstract,it should be overwrite!")},getTextFormValues:()=>Ke.getTextFormValues()}),(o,t)=>(i(),l(n(x),m({class:["form-render",{"form-render--out-border":e.outBordered}],"require-mark-placement":"left",style:n(de)},n(A)(),{uuid:n(ve)}),{default:p((()=>[e.anchor?(i(),d("section",ie,[u(n(w),{value:n(Fe),"onUpdate:value":t[0]||(t[0]=e=>c(Fe)?Fe.value=e:null),type:"line",ref_key:"anchorBarRef",ref:ke},{default:p((()=>[(i(!0),d(f,null,h(n(Se),(e=>(i(),l(n(B),{name:e.name,tab:e.title,key:e.name},null,8,["name","tab"])))),128))])),_:1},8,["value"])])):y("v-if",!0),u(n(H),{"theme-overrides":n(ue)},{default:p((()=>[g("section",{class:"form-render__wrapper",style:b({"--column":e.column,"--form-height":n(he)}),ref_key:"formRenderRef",ref:ce,onScroll:t[1]||(t[1]=(...e)=>n(xe)&&n(xe)(...e)),onKeydownCapture:t[2]||(t[2]=(...e)=>n(Ge)&&n(Ge)(...e))},[u(n(D),{form:n(Ie)},{default:p((()=>[u(n(ye),{schema:n(Ue)},null,8,["schema"]),e.consumer?(i(),l(n(T),{key:0},{default:p((({form:e})=>[g("div",le,j(JSON.stringify(e.values,null,2)),1)])),_:1})):y("v-if",!0),v(o.$slots,"default")])),_:3},8,["form"])],36)])),_:3},8,["theme-overrides"])])),_:3},16,["class","style","uuid"]))}});export{ne as default};
|
|
@@ -459,6 +459,7 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
|
459
459
|
setGraph: (field: import("@formily/core").GeneralField) => void;
|
|
460
460
|
removeGraph: (field: import("@formily/core").GeneralField) => void;
|
|
461
461
|
lowCodeEventTrigger: (field: import("@formily/core").GeneralField) => void;
|
|
462
|
+
emitFormChange: import("vue").Ref<boolean>;
|
|
462
463
|
formModel: import("@formily/core").Form<{
|
|
463
464
|
[x: string]: any;
|
|
464
465
|
}>;
|
|
@@ -2,7 +2,7 @@ import { Form } from '@formily/core';
|
|
|
2
2
|
import { Ref } from 'vue';
|
|
3
3
|
import { BusinessCollector, ContextCollector, FieldItem, FormItemDepsCollector, FormRenderExpose, FormRenderProps, useOperationalForm } from '../../../../components/form-render';
|
|
4
4
|
import { wordbookSettingHandler } from '../../../../components/form-render/src/hooks';
|
|
5
|
-
export declare function useFormExposeEvent({ formModel, formRenderRef, formUUID, getFieldList, formItemDepsCollector, businessCollector, wordbookSettingHandler, operationalFormHandler, changeContextCollector }: {
|
|
5
|
+
export declare function useFormExposeEvent({ formModel, formRenderRef, formUUID, getFieldList, formItemDepsCollector, businessCollector, wordbookSettingHandler, operationalFormHandler, changeContextCollector, emitFormChange }: {
|
|
6
6
|
formModel: Form;
|
|
7
7
|
formRenderRef: Ref<HTMLElement | undefined>;
|
|
8
8
|
formUUID: string;
|
|
@@ -12,6 +12,7 @@ export declare function useFormExposeEvent({ formModel, formRenderRef, formUUID,
|
|
|
12
12
|
wordbookSettingHandler: wordbookSettingHandler;
|
|
13
13
|
operationalFormHandler: ReturnType<typeof useOperationalForm>;
|
|
14
14
|
changeContextCollector: ContextCollector;
|
|
15
|
+
emitFormChange: Ref<boolean>;
|
|
15
16
|
}): Omit<FormRenderExpose, 'formModel' | 'reload' | 'getFieldList'>;
|
|
16
17
|
export declare function useFormDomEvent({ props, formRenderRef, formModel, formUUID }: {
|
|
17
18
|
props: FormRenderProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{arrayed as e,findAncestor as t,targetStringIncludes as r}from"../../../../shared/utils/index.js";import{isField as o}from"@formily/core";import{Path as n}from"@formily/path";import{isObject as i}from"@vue/shared";import{promiseTimeout as a}from"@vueuse/shared";import{isFunction as s,isArray as d,isString as l}from"lodash-es";import{nextTick as u}from"vue";import"../../index.js";import{NESTED_FORM_ITEM_TYPE as c}from"../constants/index.js";import{formValueFormatter as
|
|
1
|
+
import{arrayed as e,findAncestor as t,targetStringIncludes as r}from"../../../../shared/utils/index.js";import{isField as o}from"@formily/core";import{Path as n}from"@formily/path";import{isObject as i}from"@vue/shared";import{promiseTimeout as a}from"@vueuse/shared";import{isFunction as s,isArray as d,isString as l}from"lodash-es";import{nextTick as u}from"vue";import"../../index.js";import{NESTED_FORM_ITEM_TYPE as c}from"../constants/index.js";import{formValueFormatter as m}from"../utils/valueFormatter.js";import{queryDecoratorByAddress as f,queryInput as p,queryDecoratorByFieldKey as g,findNextWidget as v}from"../utils/dom.js";import{validateMessageParser as y,combineExtendKey as h,splitExtendKey as S}from"../utils/index.js";import{getParentLinebar as b}from"../utils/schema.js";import{useSelectedSetting as x}from"./useSelectedSetting.js";function F({formModel:t,formRenderRef:r,formUUID:a,getFieldList:c,formItemDepsCollector:v,businessCollector:F,wordbookSettingHandler:C,operationalFormHandler:E,changeContextCollector:D,emitFormChange:I}){const{applySelectedSetting:j}=x();return{validate(n,{force:u}={}){if(null==n&&(n="*"),s(n)){const e=Object.entries(t.fields).reduce(((e,[t,r])=>(n(r)&&e.push(t),e)),[]);if(!e.length)return Promise.resolve();n=e.length?`*(${e.join(",")})`:"*"}const c=[];u&&t.setFieldState(n,(e=>{"visible"===e.display&&"editable"!==e.pattern&&o(e)&&(c.push({pattern:e.pattern,state:e}),e.pattern="editable")}));const m=t.validate(n).catch((e=>Promise.reject(Array.isArray(e)?e.reduce(g,[]):e)));return u&&c.forEach((({pattern:e,state:t})=>t.pattern=e)),m;function g(t,r){if(!i(r))return t;let o=!1;return d(r.messages)&&r.messages.forEach((r=>{i(r)&&(t.push(...e(r).map(v)),o=!0)})),!o&&t.push(v(r)),t}function v(e){if(e.decoratorElement)return e;const o=t.query(e.path),n=o.get("title"),s=e.messages.map((e=>function(e,t){if(!t||!i(t.fieldItem))return e;const r=t.fieldItem.defined_error_msg;return y(r&&l(r)?r:e,t.fieldItem)}(e,o.get("decoratorProps")))),d=f(e.address,r.value,a);return{...e,messages:s,title:n,decoratorElement:d,...p(d)}}},getFormValues(e=!0){let r=t.getFormState().values;return e&&(r=h(c(),r)),r},async setFormValues(e,r){r=Object.assign({avoidDependKeyConnection:!0,needSplitExtendKey:!0,avoidWordbookSettingConnection:!0,avoidOperationalFormConnection:!0,dependKeyKeepValue:!1,avoidBusinessConnection:!1,avoidFormChangeEvent:!1,overwrite:!0},r),F.triggerDisabled=r.avoidBusinessConnection,v.triggerDisabled=r.avoidDependKeyConnection,v.keepValue=r.dependKeyKeepValue,C.triggerDisabled=r.avoidWordbookSettingConnection,E.triggerDisabled=r.avoidOperationalFormConnection,r.needSplitExtendKey&&(e=S(c(),e)),r.avoidFormChangeEvent&&(I.value=!1),t.setFieldState("*",(t=>{o(t)&&(r.overwrite||n.existIn(e,t.path))&&(t.value=n.getIn(e,t.path))})),await u(),I.value=!0,F.triggerDisabled=!1,v.triggerDisabled=!1,C.triggerDisabled=!1,E.triggerDisabled=!1,v.keepValue=!1},setFieldState(e,r){t.setFieldState(e,r)},resetFields:(e="*")=>t.reset(e),queryWidget:e=>async function(e,t,o){if(!r.value)return d();const i=g(e,t,a);if(i)return d(i);const s=b(e,o);return s?(v.trigger(n.parse(s),!0),await u(),d(g(e,t,a))):d();function d(e){return{decoratorElement:e,...p(e)}}}(e,r.value,c()),applySelectedSetting(e){const r=t.getFormState().values;j(r,e,((e,r)=>{t.setFieldState(e,(e=>{o(e)&&e.setValue(r)}))}))},getTextFormValues:()=>m(t,D)}}function C({props:e,formRenderRef:o,formModel:n,formUUID:i}){return{onKeydown:async function d(l){var u;if("Enter"===l.code){if(e.enterToNextWidget&&l.target){if("TEXTAREA"===l.target.tagName&&!l.ctrlKey)return;l.preventDefault()}if(await a(0),Reflect.get(l,"stopCapture")||!e.enterToNextWidget||!o.value)return;const r=t(l.target,(e=>e.classList.contains("form-render__formItem")));if(!r)return;const i=`.form-render__formItem${c.map((e=>`:not([widget-type=${e}])`)).join("")}`,f=Array.from(o.value.querySelectorAll(i)),p=f.findIndex((e=>e.id===r.id));if(!~p)return;const{widget:g,field:y}=v(f,p,l.target);if(!g)return;if(s(e.enterToNextWidget)){const t=y&&n.query(y).take();!t||e.enterToNextWidget(null==(u=t.decoratorProps)?void 0:u.fieldItem)?m(g,e.autoExpand):d({target:g,code:"Enter"})}else m(g,e.autoExpand)}else if("Tab"===l.code){if(!e.autoExpand)return;await a(0);const t=document.querySelector(":focus");if(!t)return;m(t,!0)}async function m(e,o){if(await a(0),e.focus(),!o)return;if(!t(e,(e=>e.getAttribute("uuid")===i)))return;if(!r(["radio","checkbox"],e.className))if(e.click(),"INPUT"!==e.tagName){const t=e.querySelector("input");if(!t)return;t.focus(),n(t)}else n(e);function n(e){if("INPUT"!==e.tagName)return;const t=e.value;t&&t.match(/^\d{4}-\d{2}/)&&e.setSelectionRange(0,4)}}}}}export{C as useFormDomEvent,F as useFormExposeEvent};
|
|
@@ -43,26 +43,29 @@ export declare type FormRenderExpose = {
|
|
|
43
43
|
* avoidDependKeyConnection?: boolean|string;
|
|
44
44
|
* avoidWordbookSettingConnection?: boolean|string;
|
|
45
45
|
* avoidOperationalFormConnection?: boolean|string;
|
|
46
|
+
* avoidFormChangeEvent?: boolean;
|
|
46
47
|
* dependKeyKeepValue: boolean | string;
|
|
47
48
|
* overwrite?: boolean;
|
|
48
49
|
* }} options
|
|
49
50
|
* {
|
|
50
|
-
*
|
|
51
|
-
* avoidBusinessConnection, // 赋值时是否规避业务联动, 默认为false
|
|
52
|
-
* avoidDependKeyConnection, // 赋值时是否规避依赖联动, 默认为true
|
|
53
|
-
* dependKeyKeepValue, // 赋值时如果触发了依赖联动,
|
|
54
|
-
* avoidWordbookSettingConnection, // 赋值时是否规避字典联动, 默认为true
|
|
55
|
-
* avoidOperationalFormConnection, //
|
|
51
|
+
* needSplitExtendKey, //是否将extendKey展开, 默认为true
|
|
52
|
+
* avoidBusinessConnection, // 赋值时是否规避业务联动, 默认为false, 当值为Path字符串时, 表示仅规避该Path下的业务联动
|
|
53
|
+
* avoidDependKeyConnection, // 赋值时是否规避依赖联动, 默认为true, 当值为Path字符串时, 表示仅规避该Path下的依赖联动
|
|
54
|
+
* dependKeyKeepValue, // 赋值时如果触发了依赖联动, 是否保持原值, 当值为Path字符串时, 表示仅保持该Path下的值
|
|
55
|
+
* avoidWordbookSettingConnection, // 赋值时是否规避字典联动, 默认为true, 当值为Path字符串时, 表示仅规避该Path下的字典联动
|
|
56
|
+
* avoidOperationalFormConnection, // 赋值时是否规避低代码联动, 默认为true, 当值为Path字符串时, 表示仅规避该Path下的低代码联动
|
|
57
|
+
* avoidFormChangeEvent, // 赋值时是否规避表单值变更事件, 默认为false
|
|
56
58
|
* overwrite // 是否对表单值进行全量覆盖, 默认为true
|
|
57
59
|
* }
|
|
58
60
|
*/
|
|
59
61
|
setFormValues(values: AnyObject, options?: Partial<{
|
|
60
62
|
needSplitExtendKey: boolean;
|
|
61
63
|
avoidBusinessConnection: boolean | string;
|
|
64
|
+
dependKeyKeepValue: boolean | string;
|
|
62
65
|
avoidDependKeyConnection: boolean | string;
|
|
63
66
|
avoidWordbookSettingConnection: boolean | string;
|
|
64
67
|
avoidOperationalFormConnection: boolean | string;
|
|
65
|
-
|
|
68
|
+
avoidFormChangeEvent: boolean;
|
|
66
69
|
overwrite: boolean;
|
|
67
70
|
}>): any;
|
|
68
71
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"../../index.js";import{EDITABLE_WIDGET_TYPE as e}from"../constants/index.js";import{promiseTimeout as
|
|
1
|
+
import"../../index.js";import{EDITABLE_WIDGET_TYPE as e}from"../constants/index.js";import{promiseTimeout as o}from"@vueuse/shared";import{identity as r}from"lodash-es";import{defineTablePlugin as n}from"../hooks/useTablePlugin.js";function t(){const t="forceArrowKeyPlugin",l=["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"];function d({keyboardConfig:e={}}){return e.isArrow&&e.forceArrowKey}function i(e,o,r,n,t,l,d,c=1){const{afterFullData:u,visibleColumn:a}=e.internalData,s=Object.assign({},o),w=e.getVTRowIndex(s.row),m=e.getVTColumnIndex(s.column);d.preventDefault();let p=!1;n&&w>c-1?(s.rowIndex=w-c,s.row=u[s.rowIndex],p=!0):l&&w<u.length-c?(s.rowIndex=w+c,s.row=u[s.rowIndex],p=!0):r&&m>c-1?(s.columnIndex=m-c,s.column=a[s.columnIndex],p=!0):t&&m<a.length-c&&(s.columnIndex=m+c,s.column=a[s.columnIndex],p=!0),p?e.scrollToRow(s.row,s.column).then((()=>{s.cell=e.getCell(s.row,s.column),e.handleSelected(s,d)})):c>1&&i(e,o,r,n,t,l,d,c-1)}return n({name:t,apply(n){n.eventHooks.onKeydown.tap(t,(async({$event:e,$table:r},n,{$xeTable:t})=>{const c=e;if(!d(n)||!l.includes(c.key))return;const u=r.getEditRecord()||{};if(u.row&&u.column){e.preventDefault();const o="ArrowLeft"===c.key,r="ArrowUp"===c.key,n="ArrowRight"===c.key,l="ArrowDown"===c.key;t.value&&i(t.value,u,o,r,n,l,c,c.ctrlKey||c.metaKey?2:1)}await o(0);const{row:a,column:s}=r.getSelectedCell()||{};a&&s&&await r.setEditCell(a,s)}));const c={[e.NUMBER]:e=>{var o;return e.editRender.props={...e.editRender.props,componentProps:{keyboard:{ArrowUp:!1,ArrowDown:!1},...null==(o=e.editRender.props)?void 0:o.componentProps}},e}};n.fieldHooks.field.tap(t,((e,o,n)=>{var t;if(!d(n))return e;return(c[null==(t=e.editRender)?void 0:t.name]||r)(e)}))}})}export{t as forceArrowKeyPlugin};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{defineComponent as e,inject as l,ref as o,computed as t,onBeforeUnmount as n,nextTick as a,createVNode as r,toRaw as u}from"vue";import{arrayed as i}from"../../../../../../../shared/utils/index.js";import{NSelect as s}from"naive-ui";import{useVModel as d,useDebounceFn as c}from"@vueuse/core";import"date-fns";import{isFunction as p,isEmpty as v,isArray as f,isObject as m,omit as y,cloneDeep as h,xor as w}from"lodash-es";import"@vue/shared";import{useSelectAllowModify as b}from"../../../../../../../shared/hooks/selectHooks/useSelectAllowModify.js";import{useOptionFiltered as g}from"../../../../../../../shared/hooks/selectHooks/useOptionFiltered.js";import"../../../../../../../shared/hooks/selectHooks/useSearchContent.js";import{useSelectRenders as F}from"../../../../../../../shared/hooks/selectHooks/useSelectRenders.js";import{useMenuWidthAuto as S}from"../../../../../../../shared/hooks/selectHooks/useMenuWidthAuto.js";import{InjectionIhoTableUUID as k,InjectionIhoTableConfig as O}from"../../../../constants/index.js";import{useIhoTableFormEvent as A}from"../../../../utils/index.js";import{getSelectOptions as B,selectOptionsMap as j}from"../hooks/useSelectOption.js";var x=e({name:"EditSelect",props:{value:{type:[Array,String,Number]},column:{type:Object,required:!0},row:{type:Object,required:!0},rowIndex:{type:Number,required:!0},options:{type:Array,default:()=>[]},queryOptions:{type:Function},placeholder:{type:String,default:"请选择"},allowModify:{type:Boolean},allowCreate:{type:Boolean},shouldSave:{type:Boolean},consistentMenuWidth:{type:Boolean,default:!0},labelField:{type:String,default:"label"},valueField:{type:String,default:"value"},searchField:{type:Array},aliasField:{type:String},menuProps:{type:Object},multiple:{type:Boolean},deletable:{type:Boolean,default:!0},selectAll:{type:Boolean,default:!0},searchByValue:{type:Boolean}},emits:["update:value"],setup(e,{emit:x}){const C=l("$xetable"),K=d(e,"value",x),$=o(null),{emitFormChangeWithParams:q}=A({...e,$table:C}),R=t((()=>e.labelField)),M=t((()=>e.valueField)),D=t((()=>e.aliasField)),H=t((()=>e.searchField)),{fullOptions:P,filterOptions:_,searchContent:E,remoteOptions:T}=g(e,{labelKey:R,valueKey:M,searchKey:H}),{modifyEvent:V,modifyAbleRef:W,getOptionsWithCreated:L}=b(e,{searchContent:E,labelKey:R,valueKey:M,valueRef:K,fullOptions:P}),I=t((()=>L(W.value?P.value:_.value))),{setMenuWith:U}=S(e,{selectRef:$,options:I}),N=o(!1),z=c((async function(l=""){E.value=l;try{if(N.value=!0,!p(e.queryOptions)||!v(e.options))return;T.value=await e.queryOptions({keyword:l,row:e.row,column:e.column,rowIndex:e.rowIndex})}catch(l){console.log(`获取${e.column.field}options错误`)}finally{N.value=!1}}),400),G=l(k);n((()=>X(!0)));const J=o(!1);function Q(e){J.value=e,X(),z(),e&&U()}async function X(l=!1){var o,t,n;if(!e.multiple)return;await a();const{refTableLeftBody:r,refTableBody:u}=C.getRefMaps(),i=null==(o=null==r?void 0:r.value)?void 0:o.$el;if(!i)return;const s=null==(t=null==u?void 0:u.value)?void 0:t.$el,d=C.getRowid(e.row),c=null==(n=s.querySelector(`.vxe-body--row[rowid="${d}"]`))?void 0:n.clientHeight;i.querySelector(`.vxe-body--row[rowid="${d}"]`).style.height=l?"unset":c+"px"}async function Y(l,o){var t,n;const a=e.value;await V.updateValue(l,o);const r=B(G,e.column.field,e.row,C);G&&f(r)&&i(o).forEach((e=>{if(!m(e))return;const l=e;l.created&&l.shouldSave&&r.push(y(u(l),["created","shouldSave"]))}));const s=null==(t=e.column.editRender)?void 0:t.props;if(G&&(null==s?void 0:s.connectField)){const o=null==(n=s.connectField)?void 0:n.split(","),t=j.get(G);o.forEach((async o=>{var n;const{tableColumn:a}=C.reactData,r=a.find((e=>e.field===o)),u=null==(n=null==r?void 0:r.editRender)?void 0:n.props;if(null==u?void 0:u.queryOptions){const n=l?`${o}__${e.column.field}-${l}`:o;if(t[n])return;t[n]=await u.queryOptions({row:e.row,column:r,isFullData:!0,connectColumn:e.column})}}))}return q({oldValue:a,option:h(o)}),X()}const Z=l(O);function ee(){var e,l;return null==(l=null==(e=Z.value)?void 0:e.keyboardConfig)?void 0:l.forceArrowKey}function
|
|
1
|
+
import{defineComponent as e,inject as l,ref as o,computed as t,onBeforeUnmount as n,nextTick as a,createVNode as r,toRaw as u}from"vue";import{arrayed as i}from"../../../../../../../shared/utils/index.js";import{NSelect as s}from"naive-ui";import{useVModel as d,useDebounceFn as c}from"@vueuse/core";import"date-fns";import{isFunction as p,isEmpty as v,isArray as f,isObject as m,omit as y,cloneDeep as h,xor as w}from"lodash-es";import"@vue/shared";import{useSelectAllowModify as b}from"../../../../../../../shared/hooks/selectHooks/useSelectAllowModify.js";import{useOptionFiltered as g}from"../../../../../../../shared/hooks/selectHooks/useOptionFiltered.js";import"../../../../../../../shared/hooks/selectHooks/useSearchContent.js";import{useSelectRenders as F}from"../../../../../../../shared/hooks/selectHooks/useSelectRenders.js";import{useMenuWidthAuto as S}from"../../../../../../../shared/hooks/selectHooks/useMenuWidthAuto.js";import{InjectionIhoTableUUID as k,InjectionIhoTableConfig as O}from"../../../../constants/index.js";import{useIhoTableFormEvent as A}from"../../../../utils/index.js";import{getSelectOptions as B,selectOptionsMap as j}from"../hooks/useSelectOption.js";var x=e({name:"EditSelect",props:{value:{type:[Array,String,Number]},column:{type:Object,required:!0},row:{type:Object,required:!0},rowIndex:{type:Number,required:!0},options:{type:Array,default:()=>[]},queryOptions:{type:Function},placeholder:{type:String,default:"请选择"},allowModify:{type:Boolean},allowCreate:{type:Boolean},shouldSave:{type:Boolean},consistentMenuWidth:{type:Boolean,default:!0},labelField:{type:String,default:"label"},valueField:{type:String,default:"value"},searchField:{type:Array},aliasField:{type:String},menuProps:{type:Object},multiple:{type:Boolean},deletable:{type:Boolean,default:!0},selectAll:{type:Boolean,default:!0},searchByValue:{type:Boolean}},emits:["update:value"],setup(e,{emit:x}){const C=l("$xetable"),K=d(e,"value",x),$=o(null),{emitFormChangeWithParams:q}=A({...e,$table:C}),R=t((()=>e.labelField)),M=t((()=>e.valueField)),D=t((()=>e.aliasField)),H=t((()=>e.searchField)),{fullOptions:P,filterOptions:_,searchContent:E,remoteOptions:T}=g(e,{labelKey:R,valueKey:M,searchKey:H}),{modifyEvent:V,modifyAbleRef:W,getOptionsWithCreated:L}=b(e,{searchContent:E,labelKey:R,valueKey:M,valueRef:K,fullOptions:P}),I=t((()=>L(W.value?P.value:_.value))),{setMenuWith:U}=S(e,{selectRef:$,options:I}),N=o(!1),z=c((async function(l=""){E.value=l;try{if(N.value=!0,!p(e.queryOptions)||!v(e.options))return;T.value=await e.queryOptions({keyword:l,row:e.row,column:e.column,rowIndex:e.rowIndex})}catch(l){console.log(`获取${e.column.field}options错误`)}finally{N.value=!1}}),400),G=l(k);n((()=>X(!0)));const J=o(!1);function Q(e){J.value=e,X(),z(),e&&U()}async function X(l=!1){var o,t,n;if(!e.multiple)return;await a();const{refTableLeftBody:r,refTableBody:u}=C.getRefMaps(),i=null==(o=null==r?void 0:r.value)?void 0:o.$el;if(!i)return;const s=null==(t=null==u?void 0:u.value)?void 0:t.$el,d=C.getRowid(e.row),c=null==(n=s.querySelector(`.vxe-body--row[rowid="${d}"]`))?void 0:n.clientHeight;i.querySelector(`.vxe-body--row[rowid="${d}"]`).style.height=l?"unset":c+"px"}async function Y(l,o){var t,n;const a=e.value;await V.updateValue(l,o);const r=B(G,e.column.field,e.row,C);G&&f(r)&&i(o).forEach((e=>{if(!m(e))return;const l=e;l.created&&l.shouldSave&&r.push(y(u(l),["created","shouldSave"]))}));const s=null==(t=e.column.editRender)?void 0:t.props;if(G&&(null==s?void 0:s.connectField)){const o=null==(n=s.connectField)?void 0:n.split(","),t=j.get(G);o.forEach((async o=>{var n;const{tableColumn:a}=C.reactData,r=a.find((e=>e.field===o)),u=null==(n=null==r?void 0:r.editRender)?void 0:n.props;if(null==u?void 0:u.queryOptions){const n=l?`${o}__${e.column.field}-${l}`:o;if(t[n])return;t[n]=await u.queryOptions({row:e.row,column:r,isFullData:!0,connectColumn:e.column})}}))}return q({oldValue:a,option:h(o)}),X()}const Z=l(O);function ee(){var e,l;return null==(l=null==(e=Z.value)?void 0:e.keyboardConfig)?void 0:l.forceArrowKey}let le=!1;function oe(e){var l,o,t;if($.value)if("Tab"===e.code||ee()&&(t=e.key,["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"].includes(t)))J.value?le?le=!1:null==(o=(l=$.value).handleKeydown)||o.call(l,{...e,key:"Enter",preventDefault:e.preventDefault.bind(e)}):C.internalData.isActivated=!0;else if("Backspace"===e.code&&ee()){""===$.value.pattern&&(K.value=null),le=!0}}const{renderTag:te,renderLabel:ne,renderSelectAll:ae}=F(e,{labelKey:R,valueKey:M,valueRef:K,showKey:D,searchContent:E});function re(l){if(!e.multiple)return;const o=l?I.value.map((e=>e[M.value])):[];if(!w(o,K.value).length)return;const t=K.value;K.value=o,q({oldValue:t,option:l?I.value:[]})}const ue=()=>({class:"iho-table__selectOption"}),ie=t((()=>{var l,o;return{...e.menuProps,class:`iho-table__selectMenu ${null!=(o=null==(l=e.menuProps)?void 0:l.class)?o:""}`}}));return()=>{const l={};return e.multiple&&e.selectAll&&(l.action=()=>ae(re)),r(s,{ref:$,placeholder:e.placeholder,labelField:e.labelField,valueField:e.valueField,loading:N.value,options:I.value,multiple:e.multiple,value:e.value,remote:!0,onSearch:z,clearable:!0,filterable:!0,nodeProps:ue,menuProps:ie.value,renderTag:te,renderLabel:ne,show:J.value,onUpdateShow:Q,onUpdateValue:Y,onKeydownCapture:oe,onFocus:V.focus,onBlur:V.blur},l)}}});export{x as default};
|
|
@@ -3140,6 +3140,7 @@ declare const InfoHeader: SFCWithInstall<import("vue").DefineComponent<{
|
|
|
3140
3140
|
setGraph: (field: import("@formily/core").GeneralField) => void;
|
|
3141
3141
|
removeGraph: (field: import("@formily/core").GeneralField) => void;
|
|
3142
3142
|
lowCodeEventTrigger: (field: import("@formily/core").GeneralField) => void;
|
|
3143
|
+
emitFormChange: import("vue").Ref<boolean>;
|
|
3143
3144
|
formModel: import("@formily/core").Form<{
|
|
3144
3145
|
[x: string]: any;
|
|
3145
3146
|
}>;
|
|
@@ -4295,6 +4296,7 @@ declare const InfoHeader: SFCWithInstall<import("vue").DefineComponent<{
|
|
|
4295
4296
|
setGraph: (field: import("@formily/core").GeneralField) => void;
|
|
4296
4297
|
removeGraph: (field: import("@formily/core").GeneralField) => void;
|
|
4297
4298
|
lowCodeEventTrigger: (field: import("@formily/core").GeneralField) => void;
|
|
4299
|
+
emitFormChange: import("vue").Ref<boolean>;
|
|
4298
4300
|
formModel: import("@formily/core").Form<{
|
|
4299
4301
|
[x: string]: any;
|
|
4300
4302
|
}>;
|
|
@@ -3135,6 +3135,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
3135
3135
|
setGraph: (field: import("@formily/core").GeneralField) => void;
|
|
3136
3136
|
removeGraph: (field: import("@formily/core").GeneralField) => void;
|
|
3137
3137
|
lowCodeEventTrigger: (field: import("@formily/core").GeneralField) => void;
|
|
3138
|
+
emitFormChange: import("vue").Ref<boolean>;
|
|
3138
3139
|
formModel: import("@formily/core").Form<{
|
|
3139
3140
|
[x: string]: any;
|
|
3140
3141
|
}>;
|
|
@@ -4290,6 +4291,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
4290
4291
|
setGraph: (field: import("@formily/core").GeneralField) => void;
|
|
4291
4292
|
removeGraph: (field: import("@formily/core").GeneralField) => void;
|
|
4292
4293
|
lowCodeEventTrigger: (field: import("@formily/core").GeneralField) => void;
|
|
4294
|
+
emitFormChange: import("vue").Ref<boolean>;
|
|
4293
4295
|
formModel: import("@formily/core").Form<{
|
|
4294
4296
|
[x: string]: any;
|
|
4295
4297
|
}>;
|
|
@@ -2633,6 +2633,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
2633
2633
|
setGraph: (field: import("@formily/core").GeneralField) => void;
|
|
2634
2634
|
removeGraph: (field: import("@formily/core").GeneralField) => void;
|
|
2635
2635
|
lowCodeEventTrigger: (field: import("@formily/core").GeneralField) => void;
|
|
2636
|
+
emitFormChange: import("vue").Ref<boolean>;
|
|
2636
2637
|
formModel: import("@formily/core").Form<{
|
|
2637
2638
|
[x: string]: any;
|
|
2638
2639
|
}>;
|
|
@@ -507,6 +507,7 @@ declare const _default: import("vue").DefineComponent<{
|
|
|
507
507
|
setGraph: (field: import("@formily/core").GeneralField) => void;
|
|
508
508
|
removeGraph: (field: import("@formily/core").GeneralField) => void;
|
|
509
509
|
lowCodeEventTrigger: (field: import("@formily/core").GeneralField) => void;
|
|
510
|
+
emitFormChange: import("vue").Ref<boolean>;
|
|
510
511
|
formModel: import("@formily/core").Form<{
|
|
511
512
|
[x: string]: any;
|
|
512
513
|
}>;
|