resolver-egretimp-plus 0.1.106 → 0.1.108

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.
@@ -1,10 +1,3 @@
1
- /*!
2
- * Quill Editor v1.3.7
3
- * https://quilljs.com/
4
- * Copyright (c) 2014, Jason Chen
5
- * Copyright (c) 2013, salesforce.com
6
- */
7
-
8
1
  /*!
9
2
  * The buffer module from node.js, for the browser.
10
3
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "resolver-egretimp-plus",
3
- "version": "0.1.106",
3
+ "version": "0.1.108",
4
4
  "description": "交付体验渲染",
5
5
  "main": "./dist/web/index.js",
6
6
  "module": "./dist/web/index.js",
@@ -221,6 +221,7 @@ export default {
221
221
  return defineAsyncComponent({
222
222
  loader: props.component,
223
223
  loadingComponent: LoadingComponent,
224
+ delay: 0
224
225
  })
225
226
  } else {
226
227
  return props.component
@@ -2,6 +2,10 @@
2
2
  import { commonPropsType, formatDate, formatAmount, getConfigOptions, hasOwn, isPlainObject } from '../../utils/index.js'
3
3
  import { computed, inject, onMounted, reactive, ref, useAttrs, watch } from 'vue'
4
4
 
5
+ defineOptions({
6
+ inheritAttrs: false
7
+ })
8
+
5
9
  const attrs = useAttrs()
6
10
  const lang = inject('lang')
7
11
  const selects = inject('selects')
@@ -4,7 +4,7 @@
4
4
  <ElCollapseItem v-bind="collapseItemProps" :class="collapseItemClass">
5
5
  <template #title>
6
6
  <div class="collapge-slot-title">
7
- <ElRow align="middle" :class="{'hidden-head-flag': hiddenHeadFlag}">
7
+ <ElRow align="middle" :class="polyElClass">
8
8
  <span>{{ lang.indexOf('zh') > -1 ? props.config.metaNameZh : props.config.metaNameEn }}</span>
9
9
  <Renderer @click="stopPropagation" :config="rightSlotPmPageMetaList" v-model="props.refValue.value"></Renderer>
10
10
  </ElRow>
@@ -25,6 +25,7 @@ import { ElCollapse, ElCollapseItem, ElCard, ElRow } from 'element-plus'
25
25
  import Renderer from '../../renderer.jsx'
26
26
  import { computed, inject, useAttrs, defineEmits, defineProps } from 'vue'
27
27
  import { commonPropsType, hasOwn } from '../../utils/index.js'
28
+ import { reactive } from 'vue'
28
29
 
29
30
  defineOptions({
30
31
  inheritAttrs: false
@@ -79,6 +80,10 @@ const showSegment = computed(() => {
79
80
  return props?.showSegment == '1'
80
81
  })
81
82
 
83
+ const polyElClass = reactive({
84
+ 'hidden-head-flag': hiddenHeadFlag.value
85
+ })
86
+
82
87
  const collapseClass = computed(() => {
83
88
  return {
84
89
  'underline-hidden': hasOwn(props.config, 'underlineHidden') ? props.config.underlineHidden : noCollpase.value,
@@ -122,11 +127,14 @@ const stopPropagation = (e) => {
122
127
  e?.stopPropagation()
123
128
  }
124
129
 
130
+ const needWrap = computed(() => {
131
+ return props.config.needWrap === true || props.config.needWrap == '1'
132
+ })
125
133
  const component = computed(() => {
126
- return (props.config.needWrap === true || props.config.needWrap == '1') ? ElCard : 'div'
134
+ return needWrap.value ? ElCard : 'div'
127
135
  })
128
136
  const componentProps = computed(() => {
129
- return (props.config.needWrap === true || props.config.needWrap == '1') ? {
137
+ return needWrap.value ? {
130
138
  shadow: 'never'
131
139
  } : {}
132
140
  })
@@ -1,8 +1,14 @@
1
1
  <script setup>
2
- import { computed, inject } from 'vue'
3
- import { Quill, quillEditor } from 'vue3-quill'
2
+ import { computed, inject, ref } from 'vue'
3
+ // import { Quill, quillEditor } from 'vue3-quill'
4
4
  import { commonPropsType } from '../../utils';
5
5
 
6
+ const currentComp = ref(null)
7
+
8
+ import('vue3-quill').then(({ Quill, quillEditor }) => {
9
+ currentComp.value = quillEditor
10
+ })
11
+
6
12
  const props = defineProps({
7
13
  ...commonPropsType,
8
14
  })
@@ -24,7 +30,8 @@ const editorStyle = computed(() => {
24
30
  </script>
25
31
  <template>
26
32
  <div class="custom-component-editor">
27
- <quillEditor
33
+ <component
34
+ :is="currentComp"
28
35
  ref="fieldEditor"
29
36
  v-model:value="modelValue"
30
37
  :options="editorOption"
@@ -33,7 +40,7 @@ const editorStyle = computed(() => {
33
40
  @focus="() => {}"
34
41
  @change="() => {}"
35
42
  :style="editorStyle"
36
- ></quillEditor>
43
+ ></component>
37
44
  </div>
38
45
  </template>
39
46
  <style lang="scss">
@@ -1,5 +1,5 @@
1
1
 
2
- import { ElPagination } from 'element-plus'
2
+ import { ElAutoResizer, ElPagination, ElTableV2 } from 'element-plus'
3
3
  import ElTable, { ElTableColumn } from '../table'
4
4
  import Renderer from '../../renderer.jsx'
5
5
  import { computed, inject, watch, h, ref, reactive } from 'vue'
@@ -11,10 +11,64 @@ export default {
11
11
  name: 'CustomComponentTable',
12
12
  props: {
13
13
  ...commonPropsType,
14
+ ...ElTableV2.props,
14
15
  ...ElTable.props,
15
16
  ...ElPagination.props
16
17
  },
17
18
  setup(props, { expose, attrs, emit }) {
19
+ // 虚拟表格列的属性
20
+ const virtualizedColumnPropKeys = ['align', 'class', 'key', 'dataKey', 'fixed', 'flexGrow', 'flexShrink', 'headerClass', 'hidden', 'style', 'sortable', 'title', 'maxWidth', 'minWidth', 'width']
21
+ // 开启虚拟化表格
22
+ const isVirtualized = computed(() => {
23
+ // if (props.config.metaCode === 'mksAttachList') {
24
+ // return false
25
+ // }
26
+ // return true
27
+ return props.config?.isVirtualized == '1'
28
+ })
29
+ let pageSize = 5 // 默认每页5条
30
+ if (props.config?.pageSize) {
31
+ pageSize = parseInt(props.config.pageSize) || 5
32
+ }
33
+ const page = reactive({
34
+ pageNum: 1,
35
+ pageSize,
36
+ total: 0,
37
+ })
38
+ // 开启前端分页
39
+ const isFrontPage = computed(() => {
40
+ return props.config?.frontPageFlag == '1'
41
+ })
42
+ // 是否配置分页功能 ====== start======
43
+ const pageable = computed(() => {
44
+ return props.config?.pageable == '1'
45
+ })
46
+ // 分页器布局模式
47
+ const pageAlign = computed(() => {
48
+ return props.config?.pageAlign
49
+ })
50
+ const PAGE_LEFT = 'left'
51
+ const PAGE_CENTER = 'center'
52
+ const PAGE_RIGHT = 'right'
53
+ const pageAlignEnmu = {
54
+ [PAGE_LEFT]: 'flex-start',
55
+ [PAGE_RIGHT]: 'flex-end',
56
+ [PAGE_CENTER]: 'center'
57
+ }
58
+ // 表格是否开启单行可选择配置
59
+ const selectable = computed(() => {
60
+ return props.config?.selectable == '1' || props.config?.canSelect
61
+ })
62
+ const indectModeRef = inject('indectModeRef', ref(''))
63
+ const ruleExecuter = inject('_ruleExecuter')
64
+ const dynamicMapComp = inject('dynamicMapComp')
65
+ const parentRootValue = inject('_parentRootValue', {})
66
+ const parentDynamicMapComp = inject('_parentDynamicMapComp', {})
67
+ const selectionsObj = inject('_selectionsObj', {})
68
+ const rootStore = inject('_rootStore', {})
69
+ const lang = inject('lang')
70
+ const rootValue = inject('rootValue')
71
+ const selects = inject('selects')
18
72
  const modelValue = computed({
19
73
  get() {
20
74
  return props.modelValue
@@ -24,7 +78,8 @@ export default {
24
78
  }
25
79
  })
26
80
  const tableProps = computed(() => {
27
- const porpsObj = Object.keys(ElTable.props).reduce((ret, key) => {
81
+ const tableComp = isVirtualized.value ? ElTableV2 : ElTable
82
+ const porpsObj = Object.keys(tableComp.props).reduce((ret, key) => {
28
83
  if (props[key] !== undefined && props[key] !== null) {
29
84
  ret[key] = props[key]
30
85
  }
@@ -40,7 +95,7 @@ export default {
40
95
  })
41
96
 
42
97
  const getCompEvents = (comp) => {
43
- let emitKeys = comp.emits
98
+ let emitKeys = comp.emits || {}
44
99
  if(!Array.isArray(emitKeys)) {
45
100
  emitKeys = Object.keys(emitKeys)
46
101
  }
@@ -54,7 +109,8 @@ export default {
54
109
  }
55
110
 
56
111
  const tableEvents = computed(() => {
57
- return getCompEvents(ElTable)
112
+ const tableComp = isVirtualized.value ? ElTableV2 : ElTable
113
+ return getCompEvents(tableComp)
58
114
  })
59
115
  const sliceTableEvents = computed(() => {
60
116
  const ret = {
@@ -67,16 +123,6 @@ export default {
67
123
  return getCompEvents(ElPagination)
68
124
  })
69
125
 
70
- const indectModeRef = inject('indectModeRef', ref(''))
71
- const ruleExecuter = inject('_ruleExecuter')
72
- const dynamicMapComp = inject('dynamicMapComp')
73
- const parentRootValue = inject('_parentRootValue', {})
74
- const parentDynamicMapComp = inject('_parentDynamicMapComp', {})
75
- const selectionsObj = inject('_selectionsObj', {})
76
- const rootStore = inject('_rootStore', {})
77
- const lang = inject('lang')
78
- const rootValue = inject('rootValue')
79
- const selects = inject('selects')
80
126
  const tableColumnFirstMetaCode = ref("")
81
127
  const tableColumnConfigs = computed(() => {
82
128
  let pmPageMetaList = props.config.pmPageMetaList || []
@@ -91,18 +137,7 @@ export default {
91
137
  return normalColumnConfig(config)
92
138
  })
93
139
  })
94
- let pageSize = 5
95
- if (props.config?.pageSize) {
96
- pageSize = parseInt(props.config.pageSize) || 5
97
- }
98
- const page = reactive({
99
- pageNum: 1,
100
- pageSize,
101
- total: 0,
102
- })
103
- const isFrontPage = computed(() => {
104
- return props.config?.frontPageFlag == '1'
105
- })
140
+
106
141
  const normalPageTotal = computed(() => {
107
142
  return !isFrontPage.value ? page.total : ((modelValue.value || [])?.length || 0)
108
143
  })
@@ -156,14 +191,15 @@ export default {
156
191
  /** 自定义排序逻辑 ===end==== */
157
192
 
158
193
  // 获取表格列的属性配置
159
- const getTableColumnProps = (config, idx) => {
194
+ function getTableColumnProps(config, idx) {
160
195
  const nextList = tableColumnConfigs.value.slice(idx + 1)
161
196
  // 当前config表格列是最后一个显示列,并且后面有hidden的列
162
197
  const isEndConfig = !nextList?.filter(config => {
163
198
  return config.displayType != DISPLAY_HIDDEN && !(config.width == 0 || config.width == '0px' || config.hidden == '1')
164
199
  })?.length
165
200
  const nextConfig = nextList.find(config => config.displayType != DISPLAY_HIDDEN)
166
- const retObj = Object.keys(ElTableColumn.props).reduce((ret, key) => {
201
+ const columnkeys = isVirtualized.value ? virtualizedColumnPropKeys : ElTableColumn.props
202
+ const retObj = Object.keys(columnkeys).reduce((ret, key) => {
167
203
  if (hasOwn(config, key)) {
168
204
  ret[key] = config[key]
169
205
  }
@@ -181,22 +217,37 @@ export default {
181
217
  }
182
218
  if (config.columnWidth) {
183
219
  retObj.width = config.columnWidth
220
+ if (isVirtualized.value) {
221
+ retObj.width = parseInt(retObj.width)
222
+ }
184
223
  }
185
224
  if (!retObj.width) {
186
- retObj.minWidth = '160px'
225
+ retObj.minWidth = 160
226
+ if (isVirtualized.value) {
227
+ retObj.width = 160
228
+ retObj.headerClass = 'flex-grow-import'
229
+ retObj.class = 'flex-grow-import'
230
+ }
231
+ }
232
+ let classKey = 'className'
233
+ if (isVirtualized.value) {
234
+ classKey = 'class'
187
235
  }
188
236
  if (retObj.width == 0 || retObj.width == '0px' || config.hidden == '1') {
189
- retObj.className = 'hidden-column'
190
- retObj.width = '1px'
237
+ retObj[classKey] = 'hidden-column'
238
+ retObj.width = 1
239
+ if (isVirtualized.value) {
240
+ retObj.headerClass = 'hidden-column'
241
+ }
191
242
  }
192
243
  if (nextConfig && (nextConfig.width == 0 || nextConfig.width == '0px' || nextConfig.hidden == '1')) {
193
- retObj.className = `${retObj.className || ''} next-hidden-column`
244
+ retObj[classKey] = `${retObj[classKey] || ''} next-hidden-column`
194
245
  }
195
246
  if (isEndConfig) {
196
- retObj.className = `${retObj.className || ''} end-show-column`
247
+ retObj[classKey] = `${retObj[classKey] || ''} end-show-column`
197
248
  }
198
249
  if (config.metaType == 'CustomComponentSelectEmployees') {
199
- retObj.className = `${retObj.className || ''} clear-index`
250
+ retObj[classKey] = `${retObj[classKey] || ''} clear-index`
200
251
  }
201
252
  if (
202
253
  isPlainColumn({...config, isColumn: true}, true) &&
@@ -235,11 +286,12 @@ export default {
235
286
  return orginRet && parentSelectionsRet
236
287
  }
237
288
  }
289
+
238
290
  return retObj
239
291
  }
240
292
 
241
293
  // 获取表格的配置,这边会做一下配置转化,表格中的不需要labelWidth
242
- const normalColumnConfig = (config) => {
294
+ function normalColumnConfig(config) {
243
295
  return {
244
296
  ...config,
245
297
  labelHidden: '1'
@@ -247,7 +299,7 @@ export default {
247
299
  }
248
300
 
249
301
  // 列中是否需要展示render渲染
250
- const tableColumnNotRender = (config) => {
302
+ function tableColumnNotRender(config) {
251
303
  if (!config) return true
252
304
  // if (config['show-overflow-tooltip'] || config.showOverflowTooltip) return true
253
305
  // 'selection', 'index' 是el-table属性type中type的两个枚举,这两个直接使用默认效果
@@ -257,12 +309,11 @@ export default {
257
309
  const metaTypeNotRender = TABLE_COLUMN_NOT_RENDER_META_TYPE.some(metaType => compareComponet(metaType, config.metaType)) || !config.metaType
258
310
  return !config.renderby && metaTypeNotRender
259
311
  }
260
-
261
312
 
262
- const getValue = (idx) => {
313
+ function getValue(idx) {
263
314
  return tableData.value?.[idx]
264
315
  }
265
- const onUpdateModelValue = (val, idx) => {
316
+ function onUpdateModelValue(val, idx) {
266
317
  if (!modelValue.value) {
267
318
  modelValue.value = []
268
319
  }
@@ -350,7 +401,7 @@ export default {
350
401
  return ret
351
402
  }, defaultTotalObj)
352
403
  })
353
- const defaultTotalFn = (total, val, row) => {
404
+ function defaultTotalFn(total, val, row) {
354
405
  if (val === undefined || val === null) {
355
406
  val = 0
356
407
  if (val === undefined) {
@@ -386,10 +437,7 @@ export default {
386
437
  })
387
438
  // 统计行定义 ====end======
388
439
 
389
- // 表格是否开启啦可选择配置
390
- const selectable = computed(() => {
391
- return props.config?.selectable == '1' || props.config?.canSelect
392
- })
440
+ // 开启单行选择配置后需要的逻辑=====start=====
393
441
  const selectedRow = ref(null)
394
442
  const currentChange = (row) => {
395
443
  selectedRow.value = row
@@ -401,22 +449,8 @@ export default {
401
449
  multipleSelection.value = val
402
450
  rootStore.tableSelectedInfo = val
403
451
  }
452
+ // 开启单行选择配置后需要的逻辑=====end=====
404
453
 
405
- // 是否配置分页功能 ====== start======
406
- const pageable = computed(() => {
407
- return props.config?.pageable == '1'
408
- })
409
- const pageAlign = computed(() => {
410
- return props.config?.pageAlign
411
- })
412
- const PAGE_LEFT = 'left'
413
- const PAGE_CENTER = 'center'
414
- const PAGE_RIGHT = 'right'
415
- const pageAlignEnmu = {
416
- [PAGE_LEFT]: 'flex-start',
417
- [PAGE_RIGHT]: 'flex-end',
418
- [PAGE_CENTER]: 'center'
419
- }
420
454
  // 获取分页功能属性
421
455
  const paginationProps = computed(() => {
422
456
  const attrs = Object.keys(ElPagination.props).reduce((ret, key) => {
@@ -505,57 +539,120 @@ export default {
505
539
  return totalRow.value?.length ? [...tableData.value, ...totalRow.value] : tableData.value
506
540
  })
507
541
  // console.log('dynamicMapComp===:', inject('dynamicMapComp'))
508
- return () => {
509
- return (
510
- <div class="custom-component-table">
511
- <ElTable {...tableProps.value} {...sliceTableEvents.value}
512
- ref={(e) => {tableRef.value = e}}
513
- highlight-current-row={selectable.value || tableProps.value?.highlightCurrentRow ? true : false}
514
- onCurrentChange={selectable.value || tableProps.value?.highlightCurrentRow ? currentChange : () => {}}
515
- data={dataList.value}
516
- onSelectionChange={handleSelectionChange}
517
- onSortChange={onSortChange}
518
- >
542
+
543
+ function generateCellSolts(columnConfg, configIdx) {
544
+ let headerKey = 'header'
545
+ let cellKey = 'default'
546
+ if (isVirtualized.value) {
547
+ headerKey = 'headerCellRenderer'
548
+ cellKey = 'cellRenderer'
549
+ }
550
+ return {
551
+ [headerKey]: () => (
552
+ <span className='head-span' title={lang.value.indexOf('zh') > -1 ? columnConfg.metaNameZh : columnConfg.metaNameEn}>
553
+ { columnConfg.requiredFlag == '1' ? <span style="color: rgb(245, 34, 45); margin-right: 3px;">*</span> : '' }
554
+ { columnConfg.headerRender ? columnConfg.headerRender(h, { props, config: columnConfg, lang, rootValue, selects })
555
+ : (lang.value.indexOf('zh') > -1 ? columnConfg.metaNameZh : columnConfg.metaNameEn)
556
+ }
519
557
  {
520
- tableColumnConfigs.value.map((columnConfg, configIdx) => {
521
- return columnConfg.displayType == DISPLAY_HIDDEN ? null : (
522
- <ElTableColumn key={columnConfg.requiredFlag + columnConfg.metaCode} {...getTableColumnProps(columnConfg, configIdx)}>
558
+ columnConfg.hintFlag == '1' ? (
559
+ <ElTooltip effect="dark" content={lang.value.indexOf('zh') > -1 ? columnConfg.hintContentZh : columnConfg.hintContentEn} placement="top">
560
+ <elIcon style="fontSize: 16px; verticalAlign: sub; margin-left: 3px;"><QuestionFilled /></elIcon>
561
+ </ElTooltip>
562
+ ) : null
563
+ }
564
+ </span>
565
+ ),
566
+ [cellKey]: (params) => {
567
+ let row = params.row
568
+ let $index = params.$index
569
+ if (isVirtualized.value) {
570
+ row = params.rowData
571
+ $index = params.rowIndex
572
+ }
573
+ if (row.totalFlag) {
574
+ return totalCodeRenders.value[columnConfg.metaCode] ? totalCodeRenders.value[columnConfg.metaCode]({
575
+ val: row[columnConfg.metaCode],
576
+ row,
577
+ h
578
+ }) : null
579
+ }
580
+ // const config = columnConfg
581
+ const config = multiPmPageMetaList.value?.[$index]?.[configIdx]
582
+ return (
583
+ tableColumnNotRender(config) ? null :
584
+ <Renderer key={`${config.columnId}-${config.rowIndex}`} class="error-tip-block" rowScope={{row, $index}} modelValue={getValue($index)} onUpdate:modelValue={(val) => { onUpdateModelValue(val, $index) }} config={config}></Renderer>
585
+ )
586
+ }
587
+ }
588
+ }
589
+
590
+ function generateRenderVnode() {
591
+ if (isVirtualized.value) {
592
+ let height = '500px'
593
+ if (!dataList.value?.length) {
594
+ height = '100px'
595
+ }
596
+ return (
597
+ <ElAutoResizer style={{height}}>
598
+ {{
599
+ default: ({ height, width }) => {
600
+ const columns = tableColumnConfigs.value.map((columnConfg, configIdx) => {
601
+ return columnConfg.displayType == DISPLAY_HIDDEN ? null : {
602
+ key: columnConfg.requiredFlag + columnConfg.metaCode,
603
+ ...getTableColumnProps(columnConfg, configIdx),
604
+ ...generateCellSolts(columnConfg, configIdx),
605
+ }
606
+ }).filter(item => !!item)
607
+ return (
608
+ <ElTableV2
609
+ {...tableProps.value} {...sliceTableEvents.value}
610
+ class="table-border"
611
+ cache={2}
612
+ data={dataList.value}
613
+ columns={columns}
614
+ fixed
615
+ width={width}
616
+ height={height}
617
+ >
523
618
  {{
524
- header: () => (
525
- <span className='head-span' title={lang.value.indexOf('zh') > -1 ? columnConfg.metaNameZh : columnConfg.metaNameEn}>
526
- { columnConfg.requiredFlag == '1' ? <span style="color: rgb(245, 34, 45); margin-right: 3px;">*</span> : '' }
527
- { columnConfg.headerRender ? columnConfg.headerRender(h, { props, config: columnConfg, lang, rootValue, selects })
528
- : (lang.value.indexOf('zh') > -1 ? columnConfg.metaNameZh : columnConfg.metaNameEn)
529
- }
530
- {
531
- columnConfg.hintFlag == '1' ? (
532
- <ElTooltip effect="dark" content={lang.value.indexOf('zh') > -1 ? columnConfg.hintContentZh : columnConfg.hintContentEn} placement="top">
533
- <elIcon style="fontSize: 16px; verticalAlign: sub; margin-left: 3px;"><QuestionFilled /></elIcon>
534
- </ElTooltip>
535
- ) : null
536
- }
537
- </span>
538
- ),
539
- default: ({row, column, $index}) => {
540
- if (row.totalFlag) {
541
- return totalCodeRenders.value[columnConfg.metaCode] ? totalCodeRenders.value[columnConfg.metaCode]({
542
- val: row[columnConfg.metaCode],
543
- row,
544
- h
545
- }) : null
546
- }
547
- const config = multiPmPageMetaList.value?.[$index]?.[configIdx]
548
- return (
549
- tableColumnNotRender(config) ? null :
550
- <Renderer key={`${config.columnId}-${config.rowIndex}`} class="error-tip-block" rowScope={{row, $index}} modelValue={getValue($index)} onUpdate:modelValue={(val) => { onUpdateModelValue(val, $index) }} config={config}></Renderer>
551
- )
552
- }
619
+ empty: () => (<div style={{height: '60px', color: 'var(--el-text-color-secondary)', textAlign: 'center', lineHeight: '60px'}}>
620
+ {lang.value.indexOf('zh') > -1 ? '暂无数据' : 'No Data'}
621
+ </div>)
553
622
  }}
554
- </ElTableColumn>
623
+ </ElTableV2>
555
624
  )
556
- })
557
- }
558
- </ElTable>
625
+ }
626
+ }}
627
+ </ElAutoResizer>
628
+ )
629
+ }
630
+ return (
631
+ <ElTable {...tableProps.value} {...sliceTableEvents.value}
632
+ ref={(e) => {tableRef.value = e}}
633
+ highlight-current-row={selectable.value || tableProps.value?.highlightCurrentRow ? true : false}
634
+ onCurrentChange={selectable.value || tableProps.value?.highlightCurrentRow ? currentChange : () => {}}
635
+ data={dataList.value}
636
+ onSelectionChange={handleSelectionChange}
637
+ onSortChange={onSortChange}
638
+ >
639
+ {
640
+ tableColumnConfigs.value.map((columnConfg, configIdx) => {
641
+ return columnConfg.displayType == DISPLAY_HIDDEN ? null : (
642
+ <ElTableColumn key={columnConfg.requiredFlag + columnConfg.metaCode} {...getTableColumnProps(columnConfg, configIdx)}>
643
+ {generateCellSolts(columnConfg, configIdx)}
644
+ </ElTableColumn>
645
+ )
646
+ })
647
+ }
648
+ </ElTable>
649
+ )
650
+ }
651
+
652
+ return () => {
653
+ return (
654
+ <div class="custom-component-table">
655
+ { generateRenderVnode() }
559
656
  {
560
657
  pageable.value ?
561
658
  <div class="pagination-wrap" style={{'justify-content': pageAlignEnmu[pageAlign.value || PAGE_RIGHT]}}>
@@ -15,7 +15,7 @@ export default function () {
15
15
  }
16
16
  }
17
17
  } catch (error) {
18
- modulesFiles = import.meta.glob('./packages-web/*.{vue,jsx,js}')
18
+ modulesFiles = import.meta.glob('./packages-web/*.{vue,jsx,js}', { eager: true })
19
19
  modulesFilesKeys = Object.keys(modulesFiles)
20
20
  resolveModule = (modulePath) => {
21
21
  return modulesFiles[modulePath]
@@ -43,7 +43,7 @@ const getBarStyle = () => {
43
43
 
44
44
  props.tabs.every((tab) => {
45
45
  const $el = instance.parent?.refs?.[`tab-${tab.uid}`]
46
- if (!$el) return false
46
+ if (!tab && !$el) return false
47
47
 
48
48
  if (!tab.active) {
49
49
  return true
@@ -46,8 +46,8 @@ const loadSelects = ref({})
46
46
  const attrs = useAttrs()
47
47
  const allSelects = computed(() => {
48
48
  return {
49
- ...(props.selects || {}),
50
- ...loadSelects.value
49
+ ...loadSelects.value,
50
+ ...(props.selects || {})
51
51
  }
52
52
  })
53
53
  initInterceptors(props.messageInstance)
@@ -1,6 +1,7 @@
1
1
  @mixin nestMargin {
2
2
  & > div {
3
3
  & > .CustomComponentCollapse,
4
+ & > .CustomComponentCard,
4
5
  & > .CustomComponentTabs {
5
6
  & > div {
6
7
  margin-right: 16px;
@@ -1,3 +1,16 @@
1
+ @mixin hiddenColumn {
2
+ .hidden-column {
3
+ border: none;
4
+ overflow: hidden;
5
+ // display: none;
6
+ }
7
+ .hidden-column + .el-table__cell {
8
+ // border: none;
9
+ }
10
+ .next-hidden-column.end-show-column {
11
+ border: none;
12
+ }
13
+ }
1
14
 
2
15
  .el-table__header-wrapper tr td.el-table-fixed-column--left.is-first-column::before, .el-table__header-wrapper tr td.el-table-fixed-column--right.is-first-column::before, .el-table__header-wrapper tr th.el-table-fixed-column--left.is-first-column::before, .el-table__header-wrapper tr th.el-table-fixed-column--right.is-first-column::before, .el-table__body-wrapper tr td.el-table-fixed-column--left.is-first-column::before, .el-table__body-wrapper tr td.el-table-fixed-column--right.is-first-column::before, .el-table__body-wrapper tr th.el-table-fixed-column--left.is-first-column::before, .el-table__body-wrapper tr th.el-table-fixed-column--right.is-first-column::before, .el-table__footer-wrapper tr td.el-table-fixed-column--left.is-first-column::before, .el-table__footer-wrapper tr td.el-table-fixed-column--right.is-first-column::before, .el-table__footer-wrapper tr th.el-table-fixed-column--left.is-first-column::before, .el-table__footer-wrapper tr th.el-table-fixed-column--right.is-first-column::before{
3
16
  height: 100%;
@@ -90,7 +103,7 @@
90
103
  td.el-table__cell {
91
104
  color: var(--el-input-text-color,var(--el-text-color-regular));
92
105
  }
93
- .el-table__cell {
106
+ .el-table__cell,.el-table-v2__row-cell {
94
107
  height: 40px;
95
108
  .el-date-editor, .el-date-editor--date{
96
109
  .el-input__wrapper{
@@ -141,18 +154,26 @@
141
154
  .pagination-wrap {
142
155
  display: flex;
143
156
  }
144
- .hidden-column {
145
- border: none;
157
+ // table-v2
158
+ .table-border {
159
+ border: 1px solid var(--el-table-border-color);
160
+ border-radius: var(--boder-radius);
146
161
  overflow: hidden;
147
- // display: none;
162
+
148
163
  }
149
- .hidden-column + .el-table__cell {
150
- // border: none;
164
+ .el-table-v2__header-cell,.el-table-v2__row-cell {
165
+ border-right: var(--el-table-border);
166
+ &:last-of-type {
167
+ border-right: none;
168
+ }
151
169
  }
152
- .next-hidden-column.end-show-column {
153
- border: none;
170
+ .flex-grow-import {
171
+ flex-grow: 1 !important;
154
172
  }
173
+
174
+ @include hiddenColumn;
175
+
155
176
  .clear-index {
156
177
  z-index: unset;
157
178
  }
158
- }
179
+ }