cnhis-design-vue 3.1.1 → 3.1.4-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (216) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/env.d.ts +8 -4
  3. package/es/packages/big-table/index.d.ts +2038 -0
  4. package/es/packages/big-table/index.mjs +1 -0
  5. package/es/packages/big-table/index2.mjs +14 -0
  6. package/es/packages/big-table/src/BigTable.mjs +2 -0
  7. package/es/packages/big-table/src/BigTable.vue.d.ts +2052 -0
  8. package/es/packages/big-table/src/BigTable.vue_vue_type_script_setup_true_lang.mjs +2315 -0
  9. package/es/packages/big-table/src/BigTable2.mjs +4 -0
  10. package/es/packages/big-table/src/bigTableEmits.d.ts +2 -0
  11. package/es/packages/big-table/src/bigTableEmits.mjs +1 -0
  12. package/{packages/big-table/src/bigTableEmits.ts → es/packages/big-table/src/bigTableEmits2.mjs} +48 -48
  13. package/es/packages/big-table/src/bigTableProps.d.ts +194 -0
  14. package/es/packages/big-table/src/bigTableProps.mjs +1 -0
  15. package/{packages/big-table/src/bigTableProps.ts → es/packages/big-table/src/bigTableProps2.mjs} +116 -125
  16. package/es/packages/big-table/src/bigTableState.d.ts +55 -0
  17. package/es/packages/big-table/src/bigTableState.mjs +1 -0
  18. package/es/packages/big-table/src/bigTableState2.mjs +51 -0
  19. package/es/packages/big-table/src/components/NoData.mjs +2 -0
  20. package/es/packages/big-table/src/components/NoData.vue.d.ts +51 -0
  21. package/es/packages/big-table/src/components/NoData.vue_vue_type_script_setup_true_lang.mjs +72 -0
  22. package/es/packages/big-table/src/components/NoData2.mjs +4 -0
  23. package/es/packages/big-table/src/components/SvgIcon.mjs +2 -0
  24. package/es/packages/big-table/src/components/SvgIcon.vue.d.ts +43 -0
  25. package/es/packages/big-table/src/components/SvgIcon.vue_vue_type_script_setup_true_lang.mjs +34 -0
  26. package/es/packages/big-table/src/components/SvgIcon2.mjs +4 -0
  27. package/es/packages/big-table/src/components/TextOverTooltip.mjs +2 -0
  28. package/es/packages/big-table/src/components/TextOverTooltip.vue.d.ts +560 -0
  29. package/es/packages/big-table/src/components/TextOverTooltip.vue_vue_type_script_setup_true_lang.mjs +74 -0
  30. package/es/packages/big-table/src/components/TextOverTooltip2.mjs +4 -0
  31. package/es/packages/big-table/src/components/edit-form/edit-date.d.ts +34 -0
  32. package/es/packages/big-table/src/components/edit-form/edit-date.mjs +88 -0
  33. package/es/packages/big-table/src/components/edit-form/edit-input.d.ts +43 -0
  34. package/es/packages/big-table/src/components/edit-form/edit-input.mjs +51 -0
  35. package/es/packages/big-table/src/components/edit-form/edit-select-table.d.ts +35 -0
  36. package/es/packages/big-table/src/components/edit-form/edit-select.d.ts +35 -0
  37. package/es/packages/big-table/src/components/edit-form/edit-select.mjs +89 -0
  38. package/es/packages/big-table/src/hooks/useBatchEditing.d.ts +17 -0
  39. package/es/packages/big-table/src/hooks/useBatchEditing.mjs +1 -0
  40. package/es/packages/big-table/src/hooks/useBatchEditing2.mjs +284 -0
  41. package/es/packages/big-table/src/hooks/useEdit.d.ts +171 -0
  42. package/es/packages/big-table/src/hooks/useEdit.mjs +1 -0
  43. package/es/packages/big-table/src/hooks/useEdit2.mjs +108 -0
  44. package/es/packages/big-table/src/hooks/useFormat.d.ts +29 -0
  45. package/es/packages/big-table/src/hooks/useFormat.mjs +1 -0
  46. package/{packages/big-table/src/hooks/useFormat.ts → es/packages/big-table/src/hooks/useFormat2.mjs} +480 -612
  47. package/es/packages/big-table/src/hooks/useNestTable.d.ts +8 -0
  48. package/es/packages/big-table/src/hooks/useNestTable.mjs +1 -0
  49. package/{packages/big-table/src/hooks/useNestTable.ts → es/packages/big-table/src/hooks/useNestTable2.mjs} +84 -109
  50. package/es/packages/big-table/src/hooks/useTableParse.d.ts +6 -0
  51. package/es/packages/big-table/src/hooks/useTableParse.mjs +1 -0
  52. package/es/packages/big-table/src/hooks/useTableParse2.mjs +135 -0
  53. package/es/packages/big-table/src/utils.d.ts +54 -0
  54. package/es/packages/big-table/src/utils.mjs +1 -0
  55. package/{packages/big-table/src/utils.ts → es/packages/big-table/src/utils2.mjs} +597 -705
  56. package/es/packages/big-table/style/index.css +448 -0
  57. package/{packages/big-table/src/assets/style/table-base.less → es/packages/big-table/style/index.less} +292 -10
  58. package/es/packages/button-print/index.d.ts +7373 -0
  59. package/es/packages/button-print/index.mjs +1 -0
  60. package/es/packages/button-print/index2.mjs +11 -0
  61. package/es/packages/button-print/src/ButtonPrint.mjs +2 -0
  62. package/es/packages/button-print/src/ButtonPrint.vue.d.ts +7372 -0
  63. package/es/packages/button-print/src/ButtonPrint.vue_vue_type_script_setup_true_lang.mjs +452 -0
  64. package/es/packages/button-print/src/ButtonPrint2.mjs +4 -0
  65. package/es/packages/button-print/src/components/IdentityVerification.mjs +2 -0
  66. package/es/packages/button-print/src/components/IdentityVerification.vue.d.ts +4785 -0
  67. package/es/packages/button-print/src/components/IdentityVerification.vue_vue_type_script_setup_true_lang.mjs +126 -0
  68. package/es/packages/button-print/src/components/IdentityVerification2.mjs +4 -0
  69. package/es/packages/button-print/src/utils/print.es.min.d.ts +2 -0
  70. package/es/packages/button-print/src/utils/print.es.min.mjs +1 -0
  71. package/es/packages/button-print/src/utils/print.es.min2.mjs +2080 -0
  72. package/es/packages/button-print/style/index.css +26 -0
  73. package/es/packages/button-print/style/index.less +32 -0
  74. package/es/packages/drag-layout/index.d.ts +20061 -0
  75. package/es/packages/drag-layout/index.mjs +1 -0
  76. package/es/packages/drag-layout/index2.mjs +11 -0
  77. package/es/packages/drag-layout/src/DragFormLeftItem.mjs +2 -0
  78. package/es/packages/drag-layout/src/DragFormLeftItem.vue.d.ts +7959 -0
  79. package/es/packages/drag-layout/src/DragFormLeftItem.vue_vue_type_script_setup_true_lang.mjs +122 -0
  80. package/es/packages/drag-layout/src/DragFormLeftItem2.mjs +4 -0
  81. package/es/packages/drag-layout/src/DragFormRightItem.mjs +2 -0
  82. package/es/packages/drag-layout/src/DragFormRightItem.vue.d.ts +3213 -0
  83. package/es/packages/drag-layout/src/DragFormRightItem.vue_vue_type_script_setup_true_lang.mjs +267 -0
  84. package/es/packages/drag-layout/src/DragFormRightItem2.mjs +4 -0
  85. package/es/packages/drag-layout/src/DragLayout.mjs +2 -0
  86. package/es/packages/drag-layout/src/DragLayout.vue.d.ts +20069 -0
  87. package/es/packages/drag-layout/src/DragLayout.vue_vue_type_script_setup_true_lang.mjs +657 -0
  88. package/es/packages/drag-layout/src/DragLayout2.mjs +4 -0
  89. package/es/packages/drag-layout/style/index.css +175 -0
  90. package/es/packages/drag-layout/style/index.less +208 -0
  91. package/es/packages/field-set/index.d.ts +2647 -0
  92. package/es/packages/field-set/index.mjs +1 -0
  93. package/es/packages/field-set/index2.mjs +11 -0
  94. package/es/packages/field-set/src/FieldSet.mjs +2 -0
  95. package/es/packages/field-set/src/FieldSet.vue.d.ts +2599 -0
  96. package/es/packages/field-set/src/FieldSet.vue_vue_type_script_setup_true_lang.mjs +330 -0
  97. package/es/packages/field-set/src/FieldSet2.mjs +4 -0
  98. package/es/packages/field-set/style/index.css +162 -0
  99. package/es/packages/field-set/style/index.less +172 -0
  100. package/es/packages/grid/index.d.ts +3 -0
  101. package/es/packages/grid/index.mjs +1 -0
  102. package/es/packages/grid/index2.mjs +11 -0
  103. package/es/packages/grid/src/Grid.d.ts +2 -0
  104. package/es/packages/grid/src/Grid.mjs +28 -0
  105. package/es/packages/grid/src/hooks.d.ts +1 -0
  106. package/es/packages/grid/src/hooks.mjs +1 -0
  107. package/es/packages/grid/src/hooks2.mjs +165 -0
  108. package/es/packages/grid/style/index.css +0 -0
  109. package/es/packages/grid/style/index.less +1 -0
  110. package/es/packages/index.css +1004 -0
  111. package/es/packages/index.d.ts +35622 -0
  112. package/es/packages/index.less +1205 -0
  113. package/es/packages/index.mjs +7 -0
  114. package/es/packages/index2.mjs +37 -0
  115. package/es/packages/select-person/index.d.ts +3500 -0
  116. package/es/packages/select-person/index.mjs +1 -0
  117. package/es/packages/select-person/index2.mjs +11 -0
  118. package/es/packages/select-person/src/SearchTree.mjs +2 -0
  119. package/es/packages/select-person/src/SearchTree.vue.d.ts +344 -0
  120. package/es/packages/select-person/src/SearchTree.vue_vue_type_script_setup_true_lang.mjs +231 -0
  121. package/es/packages/select-person/src/SearchTree2.mjs +4 -0
  122. package/es/packages/select-person/src/SelectPerson.mjs +2 -0
  123. package/es/packages/select-person/src/SelectPerson.vue.d.ts +3501 -0
  124. package/es/packages/select-person/src/SelectPerson.vue_vue_type_script_setup_true_lang.mjs +892 -0
  125. package/es/packages/select-person/src/SelectPerson2.mjs +4 -0
  126. package/es/packages/select-person/src/utils/index.d.ts +12 -0
  127. package/es/packages/select-person/src/utils/index.mjs +1 -0
  128. package/{packages/select-person/src/utils/index.js → es/packages/select-person/src/utils/index2.mjs} +57 -66
  129. package/es/packages/select-person/style/index.css +193 -0
  130. package/es/packages/select-person/style/index.less +229 -0
  131. package/{packages/big-table → es}/src/assets/iconfont/iconfont.ttf +0 -0
  132. package/{packages/big-table → es}/src/assets/img/failure.png +0 -0
  133. package/{packages/big-table → es}/src/assets/img/icon-asc.png +0 -0
  134. package/{packages/big-table → es}/src/assets/img/icon-desc.png +0 -0
  135. package/{packages/big-table → es}/src/assets/img/no-permission.png +0 -0
  136. package/{packages/big-table → es}/src/assets/img/nodata.png +0 -0
  137. package/{packages/big-table → es}/src/assets/img/notfound.png +0 -0
  138. package/{packages/big-table → es}/src/assets/img/qr.png +0 -0
  139. package/{packages/big-table → es}/src/assets/img/video_default_cover.png +0 -0
  140. package/{packages/big-table → es}/src/assets/img/xb_big.png +0 -0
  141. package/{packages/big-table → es}/src/assets/img/xb_small.png +0 -0
  142. package/es/src/core/create.d.ts +1 -0
  143. package/es/src/core/create.mjs +1 -0
  144. package/es/src/core/create2.mjs +8 -0
  145. package/es/src/global/variable.d.ts +2 -0
  146. package/es/src/global/variable.mjs +1 -0
  147. package/es/src/global/variable2.mjs +4 -0
  148. package/es/src/types/index.d.ts +4 -0
  149. package/es/src/types/index.mjs +1 -0
  150. package/es/src/utils/clickoutside.d.ts +18 -0
  151. package/es/src/utils/clickoutside.mjs +1 -0
  152. package/es/src/utils/clickoutside2.mjs +48 -0
  153. package/es/src/utils/crypto.d.ts +7 -0
  154. package/es/src/utils/crypto.mjs +1 -0
  155. package/{src/utils/crypto.js → es/src/utils/crypto2.mjs} +25 -25
  156. package/es/src/utils/index.d.ts +4 -0
  157. package/es/src/utils/index.mjs +1 -0
  158. package/es/src/utils/index2.mjs +27 -0
  159. package/es/src/utils/vexutils.d.ts +5 -0
  160. package/es/src/utils/vexutils.mjs +3 -0
  161. package/es/src/utils/vexutils2.mjs +729 -0
  162. package/global.d.ts +8 -0
  163. package/package.json +54 -21
  164. package/yarn-error.log +122 -0
  165. package/es/big-table/index.css +0 -587
  166. package/es/big-table/index.js +0 -41710
  167. package/es/button-print/index.css +0 -617
  168. package/es/button-print/index.js +0 -8363
  169. package/es/drag-layout/index.css +0 -850
  170. package/es/drag-layout/index.js +0 -13104
  171. package/es/field-set/index.css +0 -1048
  172. package/es/field-set/index.js +0 -351
  173. package/es/grid/index.css +0 -1049
  174. package/es/grid/index.js +0 -30819
  175. package/es/index.css +0 -1323
  176. package/es/index.js +0 -46945
  177. package/es/select-person/index.css +0 -1323
  178. package/es/select-person/index.js +0 -13191
  179. package/packages/big-table/index.ts +0 -17
  180. package/packages/big-table/src/BigTable.vue +0 -2598
  181. package/packages/big-table/src/assets/iconfont/iconfont.less +0 -22
  182. package/packages/big-table/src/assets/style/table-global.less +0 -171
  183. package/packages/big-table/src/bigTableState.ts +0 -63
  184. package/packages/big-table/src/components/NoData.vue +0 -90
  185. package/packages/big-table/src/components/TextOverTooltip.vue +0 -110
  186. package/packages/big-table/src/components/edit-form/edit-date.vue +0 -75
  187. package/packages/big-table/src/components/edit-form/edit-input.vue +0 -39
  188. package/packages/big-table/src/components/edit-form/edit-select-table.vue +0 -133
  189. package/packages/big-table/src/components/edit-form/edit-select.vue +0 -96
  190. package/packages/big-table/src/hooks/useBatchEditing.ts +0 -574
  191. package/packages/big-table/src/hooks/useEdit.ts +0 -131
  192. package/packages/big-table/src/hooks/useTableParse.ts +0 -169
  193. package/packages/button-print/index.ts +0 -15
  194. package/packages/button-print/src/ButtonPrint.vue +0 -488
  195. package/packages/button-print/src/components/IdentityVerification.vue +0 -120
  196. package/packages/button-print/src/interfaces.ts +0 -19
  197. package/packages/button-print/src/utils/print.es.min.js +0 -1
  198. package/packages/drag-layout/index.ts +0 -15
  199. package/packages/drag-layout/src/DragFormLeftItem.vue +0 -131
  200. package/packages/drag-layout/src/DragFormRightItem.vue +0 -277
  201. package/packages/drag-layout/src/DragLayout.vue +0 -712
  202. package/packages/field-set/index.ts +0 -15
  203. package/packages/field-set/src/FieldSet.vue +0 -471
  204. package/packages/grid/index.ts +0 -20
  205. package/packages/grid/src/Grid.tsx +0 -18
  206. package/packages/grid/src/hooks.ts +0 -167
  207. package/packages/index.ts +0 -41
  208. package/packages/select-person/index.ts +0 -11
  209. package/packages/select-person/src/SelectPerson.vue +0 -1104
  210. package/packages/select-person/src/search-tree.vue +0 -326
  211. package/src/component/svg/index.vue +0 -49
  212. package/src/core/create.js +0 -5
  213. package/src/global/variable.ts +0 -2
  214. package/src/utils/clickoutside.ts +0 -80
  215. package/src/utils/vexutils.js +0 -811
  216. package/tsconfig.node.json +0 -8
@@ -1,131 +0,0 @@
1
- import { computed, ref, reactive, watch, onMounted } from 'vue'
2
- import EditInput from '../components/edit-form/edit-input.vue'
3
- import EditSelect from '../components/edit-form/edit-select.vue'
4
- import EditDate from '../components/edit-form/edit-date.vue'
5
-
6
-
7
- export const comps = {
8
- 'input': EditInput,
9
- 'number': EditInput,
10
- 'select': EditSelect,
11
- 'date': EditDate
12
- }
13
-
14
- export const useEdit = (props: any, state: any, emit: any, xGrid: any) => {
15
-
16
- const initEditTable = async () => {
17
- const { isEdit, fieldList = [] } = props.columnConfig
18
- if (!isEdit) return
19
- const hasSelectTable = fieldList.find((v: any) => v.formType === 'selectTable')
20
- if (!hasSelectTable) return
21
- const record: any = {
22
- initRow: true
23
- }
24
- props.columnConfig.fieldList.forEach((col: any) => {
25
- if (col.columnName !== 'operatorColumn') {
26
- record[col.columnName] = undefined
27
- }
28
- })
29
- await xGrid.value.insertAt(record, -1)
30
- }
31
-
32
- const deleteRow = (row: any, col: any, index: number) => {
33
- xGrid.value.remove(row)
34
- emit('clickBtn', { row, column: col, index })
35
- }
36
-
37
- const activeMethod = ({ row, rowIndex, column, columnIndex }: { row: any, rowIndex: number, column: any, columnIndex: number }) => {
38
- const { isEdit, fieldList } = props.columnConfig
39
- if (isEdit) {
40
- // const selectTableObj = fieldList.find((v: any) => v.formType === 'selectTable')
41
- const isEditCol = fieldList.find((v: any) => v.columnName === column.field)?.isEdit || false
42
- // if (selectTableObj) {
43
- // // const isOtherEditCol = Object.keys(row).some(v => v !== selectTableObj.columnName && v !== 'checked' && !!row[v])
44
- // if (isEditCol && ((column.field === selectTableObj.columnName && !row[column.field]) || (column.field !== selectTableObj.columnName && !row.initRow))) {
45
- // return true
46
- // } else {
47
- // return false
48
- // }
49
- // } else {
50
- // if (isEditCol) {
51
- // return true
52
- // } else {
53
- // return false
54
- // }
55
- // }
56
- if (isEditCol) {
57
- return true
58
- } else {
59
- return false
60
- }
61
- } else {
62
- return false
63
- }
64
- }
65
-
66
- const onClickSelectTable = async (row: any) => {
67
- emit('clickSelectTable', { row })
68
- const record: any = {
69
- initRow: false,
70
- row: JSON.parse(JSON.stringify(row))
71
- }
72
- props.columnConfig.fieldList.forEach((col: any) => {
73
- if (col.columnName !== 'operatorColumn') {
74
- record[col.columnName] = undefined
75
- if (Object.keys(row).includes(col.columnName)) {
76
- record[col.columnName] = row[col.columnName]
77
- }
78
- }
79
- })
80
- const getInsertRecords = xGrid.value.getInsertRecords()
81
- const { row: newRow } = await xGrid.value.insertAt(record, getInsertRecords.at(-1))
82
- xGrid.value.clearActived()
83
- }
84
-
85
- const getLabel = (opts: any[], value: any): any => {
86
- return opts.find((opt: any) => opt.value === value)?.label || '';
87
- };
88
-
89
- const onFormChange = ({ value, row, column, index }: {value: number | string | null, row: any, column: any, index: number}) => {
90
- let oldValue: any = row[column.columnName]
91
- if ((column?.formType === 'input' || column?.formType === 'number') && props.columnConfig?.formValidate) {
92
- row[column.columnName] = props.columnConfig?.formValidate({row, column, current: value, old: row[column.columnName]})
93
- } else if (column?.formatMap) {
94
- oldValue = {
95
- label: row[column.formatMap.label],
96
- value: row[column.formatMap.value]
97
- }
98
- row[column.formatMap.label] = getLabel(row[column.columnName+'_options'] || [], value)
99
- row[column.formatMap.value] = value
100
- } else {
101
- row[column.columnName] = value
102
- }
103
- emit('formChange', { value, row, column, index, oldValue })
104
- }
105
-
106
- const getDefaultValue = (params: any, item: any) => {
107
- const value = params.row[item.columnName]
108
- if (item.formType === 'select') {
109
- if( item.formatMap ) {
110
- return params.row[item.formatMap.label]
111
- }
112
- if (item.options) {
113
- return item.options.find((v: any) => v.value == value)?.label || ''
114
- }
115
- if (item.queryOptions) {
116
- return (params.row[`${item.columnName}_options`]?.find((v: any) => v.value === value)?.label) || ''
117
- }
118
- return value
119
- }
120
- return value
121
- }
122
-
123
- return {
124
- initEditTable,
125
- activeMethod,
126
- deleteRow,
127
- onClickSelectTable,
128
- onFormChange,
129
- getDefaultValue
130
- }
131
- }
@@ -1,169 +0,0 @@
1
- import vexutils from '@/utils/vexutils.js';
2
-
3
- export const useTableParse = (formatData: Function) => {
4
- // DURATION - 解析时长类型
5
- const parseDurationValue = (v: any, duration: any) => {
6
- // < 1 分钟 显示 X秒;< 60 分钟 显示 X分钟;< 24 * 60 分钟 显示 X 小时 X 分钟;< 30 * 24 * 60 分钟 显示X天X小时;< 365 * 24 * 60 显示 X个月X天
7
- if (!v && v !== 0) return;
8
- const unitList: any = {
9
- day: 86400,
10
- minute: 60,
11
- hour: 3600,
12
- second: 1,
13
- };
14
- const unit = (duration && unitList[duration]) || 1;
15
- const value = v * unit || 0;
16
- const mu = 60;
17
- if (value < mu) {
18
- return `${value}秒`;
19
- }
20
- const hu = mu * 60;
21
- if (value < hu) {
22
- return `${Math.floor(value / 60)}分`;
23
- }
24
- const du = hu * 24;
25
- if (value < du) {
26
- const v2 = Math.floor(value / 60) % 60;
27
- return `${Math.floor(value / hu)}小时${v2 ? v2 + "分" : ""}`;
28
- }
29
- const MU = du * 30;
30
- if (value < MU) {
31
- const v2 = Math.floor(value / hu) % 24;
32
- return `${Math.floor(value / du)}天${v2 ? v2 + "小时" : ""}`;
33
- }
34
- const yu = du * 365;
35
- if (value < yu) {
36
- const unit = 30;
37
- const v1 = Math.floor(value / du / unit);
38
- const v2 = Math.floor((value - v1 * unit * du) / du);
39
- return `${v1}个月${v2 ? v2 + "天" : ""}`;
40
- }
41
- return `${Math.floor(value / du / 365)}年`;
42
- };
43
-
44
- // COMBINATION - 解析组合组件value
45
- const parseCombinationValue = (value: any, setting: any) => {
46
- let data = value ? JSON.parse(value) : [];
47
- if (!Array.isArray(data)) {
48
- data = [data];
49
- }
50
- const { combinationField: key } = setting;
51
- if (!key) return value; // <- 如果没有解析字段则直接返回原值
52
- return data
53
- .reduce((str: string, item: any) => {
54
- const v = item[key];
55
- typeof v !== "undefined" && (str += `,${v}`);
56
- return str;
57
- }, "")
58
- .slice(1);
59
- };
60
-
61
- // 格式化renderItem
62
- const formatFieldText = (
63
- row: any,
64
- field: any,
65
- fieldList: any,
66
- fieldListOriginal: any,
67
- isTimeAxisRenderNew?: any,
68
- isTimeAxisExpand?: any
69
- ) => {
70
- // 轨迹组件需要重新处理 时间显示
71
- if (isTimeAxisRenderNew && field.fieldType.includes("DATE")) {
72
- let key = field.columnName;
73
- if (!isTimeAxisExpand) {
74
- key = field.columnName + "_fold";
75
- }
76
- const text = row[key];
77
- return text;
78
- }
79
- const formatText = (text: string | null) => (text ? text : String(text) === "0" ? "0" : "");
80
- const haveValue = (val: string | null) => {
81
- return val !== undefined && val !== "";
82
- };
83
- const findField = (columnName: string, fieldList: any) => {
84
- return fieldList.find((item: any) => item.columnName === columnName);
85
- };
86
- const html = formatText(row[field.columnName]);
87
-
88
- // 主字段没有值,则不展示
89
- if (!haveValue(html)) {
90
- return "";
91
- }
92
-
93
- if (field.settingObj?.mergedFeildExpression) {
94
- const { mergedFeildExpression } = field.settingObj
95
- const passList: any = [];
96
-
97
- // 合并字段
98
- const regexp = /#{(.+?)\}/g;
99
- let formatHtml = mergedFeildExpression.replace(regexp, (match: any, p1: any) => {
100
- const findFieldItem = findField(p1, fieldListOriginal);
101
- passList.push(haveValue(row[p1]) && findFieldItem);
102
- // 格式化匹配到的合并字段对应的数据项
103
- if (findFieldItem && formatData) {
104
- const cloneRow = JSON.parse(JSON.stringify(row));
105
- const tableData = formatData({
106
- tableList: [cloneRow],
107
- fieldList: [findFieldItem],
108
- btnList: [],
109
- oldtableData: [row],
110
- })[0];
111
- return formatText(tableData[p1]);
112
- }
113
- return formatText(row[p1]);
114
- });
115
-
116
- const pass = passList.every((b: any) => b);
117
- /* 如果任意次字段值为空 || 无字段权限
118
- => 只展示主字段的值 */
119
- if (!pass) {
120
- return html;
121
- }
122
-
123
- // 赋值原字段样式
124
- const originColumnNameColorList = findField(field.columnName, fieldList)?.colorAndIcon || [];
125
- const findC = originColumnNameColorList.find((c: any) =>
126
- vexutils.parseCondition(
127
- c.condition,
128
- {
129
- form: {},
130
- table: {
131
- ...row,
132
- },
133
- sys: {},
134
- },
135
- fieldList
136
- )
137
- );
138
-
139
- const originColumnNameColor = findC?.color || "inherit";
140
- const regexp2 = /color(:|;)(.+?)(;|")/g;
141
- formatHtml = formatHtml.replace(regexp2, (match: any, p1: any, p2: any, p3 = "") => {
142
- return p3;
143
- });
144
-
145
- formatHtml = `<span style="color: ${originColumnNameColor};">${formatHtml}</span>`;
146
- return formatHtml;
147
- }
148
-
149
- return html;
150
- };
151
-
152
- // imgs => imgArr
153
- const imgs2imgArr = (imgs: any) => {
154
- if (!imgs) return [];
155
-
156
- return imgs
157
- .replace(/(,)(data|http)/g, (match: any, p1: any, p2: any) => {
158
- return `|${p2}`;
159
- })
160
- .split("|");
161
- };
162
-
163
- return {
164
- parseDurationValue,
165
- parseCombinationValue,
166
- formatFieldText,
167
- imgs2imgArr,
168
- };
169
- };
@@ -1,15 +0,0 @@
1
- import type { App } from "vue";
2
- // 导入组件
3
- import ButtonPrint from "./src/ButtonPrint.vue"
4
-
5
- // type SFCWithInstall<T> = T & { install(app: App): void }; // vue 安装
6
-
7
- // 为组件提供 install 安装方法,供按需引入
8
- ButtonPrint.install = function(app: App) {
9
- app.component(ButtonPrint.name, ButtonPrint);
10
- };
11
-
12
- // const CButtonPrint: SFCWithInstall<typeof ButtonPrint> = ButtonPrint; // 增加类型
13
-
14
- // 默认导出组件
15
- export default ButtonPrint;