@veltra/desktop 1.7.11 → 1.7.13
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/dist/components/batch-edit/batch-edit-form.js +2 -6
- package/dist/components/batch-edit/batch-edit-form.js.map +1 -1
- package/dist/components/batch-edit/batch-edit.js +0 -1
- package/dist/components/batch-edit/batch-edit.js.map +1 -1
- package/dist/components/batch-edit/helper.d.ts +1 -2
- package/dist/components/condition-editor/core/evaluator.d.ts +4 -5
- package/dist/components/contextmenu/api.d.ts +1 -2
- package/dist/components/contextmenu/di.d.ts +2 -3
- package/dist/components/form/form.js.map +1 -1
- package/dist/components/form/form.vue_vue_type_script_setup_true_lang.js +12 -13
- package/dist/components/form/form.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/form/use-node-interceptor.js +31 -3
- package/dist/components/form/use-node-interceptor.js.map +1 -1
- package/dist/components/form-item/form-item.js.map +1 -1
- package/dist/components/form-item/form-item.vue_vue_type_script_setup_true_lang.js +1 -2
- package/dist/components/form-item/form-item.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/loading/directive.d.ts +1 -2
- package/dist/components/message/message.d.ts +1 -2
- package/dist/components/message-confirm/message-confirm.d.ts +1 -2
- package/dist/components/notification/notification.d.ts +1 -2
- package/dist/components/table/node/col.js +19 -0
- package/dist/components/table/node/col.js.map +1 -1
- package/dist/components/table/table-cell.js +2 -0
- package/dist/components/table/table-cell.js.map +1 -1
- package/dist/components/table/table-foot.js +2 -0
- package/dist/components/table/table-foot.js.map +1 -1
- package/dist/components/table/table-head.js +1 -0
- package/dist/components/table/table-head.js.map +1 -1
- package/dist/components/table/table-row.js +2 -0
- package/dist/components/table/table-row.js.map +1 -1
- package/dist/components/table/use-columns.d.ts +1 -2
- package/dist/index.d.ts +2 -2
- package/dist/install.d.ts +3 -3
- package/dist/types/action.d.ts +7 -8
- package/dist/types/animation.d.ts +4 -5
- package/dist/types/auto-complete.d.ts +4 -5
- package/dist/types/badge.d.ts +4 -5
- package/dist/types/batch-edit.d.ts +9 -12
- package/dist/types/breadcrumb.d.ts +6 -7
- package/dist/types/button.d.ts +5 -6
- package/dist/types/calendar.d.ts +7 -8
- package/dist/types/card.d.ts +7 -8
- package/dist/types/cascade.d.ts +6 -7
- package/dist/types/check-tag.d.ts +4 -5
- package/dist/types/checkbox-group.d.ts +3 -4
- package/dist/types/checkbox.d.ts +5 -6
- package/dist/types/code-editor.d.ts +5 -6
- package/dist/types/collapse.d.ts +6 -7
- package/dist/types/condition-editor.d.ts +11 -12
- package/dist/types/contextmenu.d.ts +5 -6
- package/dist/types/css-transition.d.ts +4 -5
- package/dist/types/date-panel.d.ts +3 -4
- package/dist/types/date-picker.d.ts +5 -6
- package/dist/types/date-range-picker.d.ts +6 -7
- package/dist/types/dialog.d.ts +5 -6
- package/dist/types/drawer.d.ts +6 -7
- package/dist/types/dropdown.d.ts +4 -5
- package/dist/types/dual-nav.d.ts +6 -7
- package/dist/types/empty.d.ts +4 -5
- package/dist/types/expression-editor.d.ts +6 -7
- package/dist/types/file-picker.d.ts +4 -5
- package/dist/types/file-viewer.d.ts +6 -7
- package/dist/types/float-button.d.ts +5 -6
- package/dist/types/form-item.d.ts +3 -4
- package/dist/types/form.d.ts +4 -7
- package/dist/types/gantt-chart.d.ts +4 -5
- package/dist/types/grid-input.d.ts +4 -5
- package/dist/types/grid.d.ts +7 -8
- package/dist/types/group-input.d.ts +4 -5
- package/dist/types/group-nav.d.ts +3 -4
- package/dist/types/icon.d.ts +3 -4
- package/dist/types/image-cropper.d.ts +9 -10
- package/dist/types/index.d.ts +2 -2
- package/dist/types/input.d.ts +4 -5
- package/dist/types/layout.d.ts +4 -5
- package/dist/types/list.d.ts +4 -5
- package/dist/types/loading.d.ts +5 -6
- package/dist/types/message-confirm.d.ts +8 -9
- package/dist/types/message.d.ts +8 -9
- package/dist/types/multi-auto-complete.d.ts +4 -5
- package/dist/types/multi-select.d.ts +4 -5
- package/dist/types/multi-tree-select.d.ts +4 -5
- package/dist/types/nav.d.ts +5 -6
- package/dist/types/node-render.d.ts +2 -3
- package/dist/types/notification.d.ts +8 -9
- package/dist/types/number-input.d.ts +3 -4
- package/dist/types/number-range-input.d.ts +4 -5
- package/dist/types/number.d.ts +3 -4
- package/dist/types/paginator.d.ts +4 -5
- package/dist/types/palette.d.ts +7 -8
- package/dist/types/password-input.d.ts +4 -5
- package/dist/types/pop-confirm.d.ts +4 -5
- package/dist/types/pop.d.ts +4 -5
- package/dist/types/progress-nodes.d.ts +4 -5
- package/dist/types/progress.d.ts +4 -5
- package/dist/types/quick-batch-edit.d.ts +4 -5
- package/dist/types/radio-group.d.ts +4 -5
- package/dist/types/radio.d.ts +4 -5
- package/dist/types/rich-text-editor.d.ts +6 -7
- package/dist/types/scroll.d.ts +5 -6
- package/dist/types/segment.d.ts +5 -6
- package/dist/types/select.d.ts +4 -5
- package/dist/types/slider.d.ts +4 -5
- package/dist/types/steps.d.ts +5 -6
- package/dist/types/switch.d.ts +4 -5
- package/dist/types/table-editor.d.ts +4 -5
- package/dist/types/table.d.ts +23 -13
- package/dist/types/tabs.d.ts +13 -14
- package/dist/types/tag.d.ts +3 -4
- package/dist/types/text-editor.d.ts +5 -6
- package/dist/types/text.d.ts +4 -5
- package/dist/types/textarea.d.ts +4 -5
- package/dist/types/theme.d.ts +3 -4
- package/dist/types/tip.d.ts +6 -7
- package/dist/types/tree-select.d.ts +4 -5
- package/dist/types/tree.d.ts +6 -6
- package/dist/types/watermark.d.ts +4 -5
- package/package.json +5 -5
- package/src/components/batch-edit/__test__/batch-edit.test.ts +0 -138
- package/src/components/batch-edit/batch-edit-form.vue +2 -16
- package/src/components/form/__test__/form.test.ts +125 -33
- package/src/components/form/form.vue +10 -11
- package/src/components/form/use-node-interceptor.ts +36 -2
- package/src/components/form-item/__test__/form-item.test.ts +1 -10
- package/src/components/form-item/form-item.vue +2 -9
- package/src/components/table/__test__/column-style.test.ts +67 -0
- package/src/components/table/node/col.ts +30 -1
- package/src/components/table/table-cell.vue +7 -2
- package/src/components/table/table-foot.vue +2 -0
- package/src/components/table/table-head.tsx +1 -0
- package/src/components/table/table-row.tsx +2 -0
- package/src/types/batch-edit.ts +0 -2
- package/src/types/form.ts +0 -2
- package/src/types/table.ts +12 -0
|
@@ -1,7 +1,26 @@
|
|
|
1
1
|
import { TreeNode } from '@cat-kit/core'
|
|
2
|
+
import { withUnit } from '@veltra/utils'
|
|
2
3
|
import { isReactive, reactive, shallowReactive } from 'vue'
|
|
3
4
|
|
|
4
|
-
import type { TableColumn, TableColumnAlign } from '../../../types'
|
|
5
|
+
import type { TableColumn, TableColumnAlign, TableColumnStyle } from '../../../types'
|
|
6
|
+
|
|
7
|
+
function normalizeColumnStyle(style?: TableColumnStyle): Record<string, string> | undefined {
|
|
8
|
+
if (!style) return undefined
|
|
9
|
+
|
|
10
|
+
const result: Record<string, string> = {}
|
|
11
|
+
|
|
12
|
+
if (style.color !== undefined) {
|
|
13
|
+
result.color = style.color
|
|
14
|
+
}
|
|
15
|
+
if (style.fontSize !== undefined) {
|
|
16
|
+
const fontSize = withUnit(style.fontSize, 'px')
|
|
17
|
+
if (fontSize !== undefined) {
|
|
18
|
+
result.fontSize = fontSize
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
return Object.keys(result).length ? result : undefined
|
|
23
|
+
}
|
|
5
24
|
|
|
6
25
|
export class ColumnNode extends TreeNode<TableColumn, ColumnNode> {
|
|
7
26
|
declare children?: ColumnNode[] | undefined
|
|
@@ -44,6 +63,16 @@ export class ColumnNode extends TreeNode<TableColumn, ColumnNode> {
|
|
|
44
63
|
this.data.headerAlign = val
|
|
45
64
|
}
|
|
46
65
|
|
|
66
|
+
/** 表体/表尾单元格样式 */
|
|
67
|
+
get cellStyle(): Record<string, string> | undefined {
|
|
68
|
+
return normalizeColumnStyle(this.data.style)
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/** 表头单元格样式 */
|
|
72
|
+
get headerCellStyle(): Record<string, string> | undefined {
|
|
73
|
+
return normalizeColumnStyle(this.data.headerStyle ?? this.data.style)
|
|
74
|
+
}
|
|
75
|
+
|
|
47
76
|
/** 宽度 */
|
|
48
77
|
get width(): number | undefined {
|
|
49
78
|
const width = this.data.width ?? this.derived.allocatedWidth
|
|
@@ -24,13 +24,18 @@ defineOptions({ name: 'UTableCell' })
|
|
|
24
24
|
* 父组件 `TableRow` 已经持有注入上下文,直接把 `cellClass` 传下来即可;
|
|
25
25
|
* 这里变成「完全受控」的纯渲染单元。
|
|
26
26
|
*/
|
|
27
|
-
const { left, right } = defineProps<{
|
|
27
|
+
const { left, right, cellStyle } = defineProps<{
|
|
28
28
|
cellClass: string
|
|
29
29
|
left?: number
|
|
30
30
|
right?: number
|
|
31
|
+
cellStyle?: Record<string, string>
|
|
31
32
|
rowspan?: number
|
|
32
33
|
colspan?: number
|
|
33
34
|
}>()
|
|
34
35
|
|
|
35
|
-
const style = computed(() => ({
|
|
36
|
+
const style = computed(() => ({
|
|
37
|
+
...cellStyle,
|
|
38
|
+
left: withUnit(left, 'px'),
|
|
39
|
+
right: withUnit(right, 'px')
|
|
40
|
+
}))
|
|
36
41
|
</script>
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
v-if="leafColumns[0]"
|
|
6
6
|
:class="getCellClass(leafColumns[0])"
|
|
7
7
|
:style="{
|
|
8
|
+
...leafColumns[0].cellStyle,
|
|
8
9
|
right: withUnit(leafColumns[0].style.right, 'px'),
|
|
9
10
|
left: withUnit(leafColumns[0].style.left, 'px')
|
|
10
11
|
}"
|
|
@@ -16,6 +17,7 @@
|
|
|
16
17
|
:class="getCellClass(column)"
|
|
17
18
|
:key="column.key"
|
|
18
19
|
:style="{
|
|
20
|
+
...column.cellStyle,
|
|
19
21
|
right: withUnit(column.style.right, 'px'),
|
|
20
22
|
left: withUnit(column.style.left, 'px')
|
|
21
23
|
}"
|
|
@@ -26,6 +26,7 @@ const TableHead: DefineComponent = defineComponent({
|
|
|
26
26
|
colspan={column.leafs}
|
|
27
27
|
rowspan={column.children?.length ? undefined : headers.value.length - headerIndex}
|
|
28
28
|
style={{
|
|
29
|
+
...column.headerCellStyle,
|
|
29
30
|
left: withUnit(column.style.left, 'px'),
|
|
30
31
|
right: withUnit(column.style.right, 'px')
|
|
31
32
|
}}
|
|
@@ -99,6 +99,7 @@ export const UTableRow: DefineComponent<{ row: ITableRow; index: number }> = def
|
|
|
99
99
|
cellClass={getCellClass(_expandColumn)}
|
|
100
100
|
left={_expandColumn.style.left}
|
|
101
101
|
right={_expandColumn.style.right}
|
|
102
|
+
cellStyle={_expandColumn.cellStyle}
|
|
102
103
|
key={row.uid + _expandColumn.key}
|
|
103
104
|
{...tableProps.mergeCell?.(expandCtx)}
|
|
104
105
|
>
|
|
@@ -156,6 +157,7 @@ export const UTableRow: DefineComponent<{ row: ITableRow; index: number }> = def
|
|
|
156
157
|
cellClass={getCellClass(column)}
|
|
157
158
|
left={column.style.left}
|
|
158
159
|
right={column.style.right}
|
|
160
|
+
cellStyle={column.cellStyle}
|
|
159
161
|
key={row.uid + column.key}
|
|
160
162
|
// @ts-ignore
|
|
161
163
|
onClick={(e) => handleCellClick(row, column, e)}
|
package/src/types/batch-edit.ts
CHANGED
|
@@ -115,8 +115,6 @@ export interface BatchEditProps extends TableProps {
|
|
|
115
115
|
|
|
116
116
|
/** 批量编辑组件定义的事件 */
|
|
117
117
|
export interface BatchEditEmits extends TableEmits {
|
|
118
|
-
/** 表单控件 change,透传自 UForm */
|
|
119
|
-
(e: 'field:change', field: string, ...args: any[]): void
|
|
120
118
|
/** 更新数据 */
|
|
121
119
|
(e: 'update:data', value: Record<string, any>[]): void
|
|
122
120
|
/** 点击底部「新增一行」 */
|
package/src/types/form.ts
CHANGED
|
@@ -29,8 +29,6 @@ export interface FormProps extends ComponentProps {
|
|
|
29
29
|
}
|
|
30
30
|
|
|
31
31
|
export interface FormEmits {
|
|
32
|
-
/** 控件 change 事件,仅用户操作触发 */
|
|
33
|
-
(e: 'field:change', field: string, ...args: any[]): void
|
|
34
32
|
/** model 字段值更新,含编程写入 */
|
|
35
33
|
(e: 'field:update', field: string, value: any): void
|
|
36
34
|
}
|
package/src/types/table.ts
CHANGED
|
@@ -4,6 +4,11 @@ import type { ShallowRef, Slots, VNode } from 'vue'
|
|
|
4
4
|
|
|
5
5
|
export type TableColumnAlign = 'left' | 'center' | 'right'
|
|
6
6
|
|
|
7
|
+
export interface TableColumnStyle {
|
|
8
|
+
color?: string
|
|
9
|
+
fontSize?: number | string
|
|
10
|
+
}
|
|
11
|
+
|
|
7
12
|
/**
|
|
8
13
|
* 合计上下文
|
|
9
14
|
*/
|
|
@@ -46,6 +51,10 @@ export interface TableColumn {
|
|
|
46
51
|
* @default 'left'
|
|
47
52
|
*/
|
|
48
53
|
align?: TableColumnAlign
|
|
54
|
+
/** 表体/表尾单元格样式 */
|
|
55
|
+
style?: TableColumnStyle
|
|
56
|
+
/** 表头单元格样式,未指定时取 style */
|
|
57
|
+
headerStyle?: TableColumnStyle
|
|
49
58
|
/** 列渲染 */
|
|
50
59
|
render?: (scope: TableColumnRenderContext) => RenderReturn
|
|
51
60
|
/** 子列 */
|
|
@@ -164,6 +173,9 @@ export interface TableColumnNode extends TreeNode<TableColumn> {
|
|
|
164
173
|
key: string
|
|
165
174
|
name: string
|
|
166
175
|
align: TableColumnAlign
|
|
176
|
+
headerAlign: TableColumnAlign
|
|
177
|
+
cellStyle?: Record<string, string>
|
|
178
|
+
headerCellStyle?: Record<string, string>
|
|
167
179
|
width: number | undefined
|
|
168
180
|
minWidth: number | undefined
|
|
169
181
|
fixed: 'left' | 'right' | undefined
|