@veltra/desktop 1.1.24 → 1.1.26
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/action/action-group.vue.d.ts +2 -2
- package/dist/components/action/action.js.map +1 -1
- package/dist/components/action/action.vue.d.ts +1 -1
- package/dist/components/badge/badge.js.map +1 -1
- package/dist/components/batch-edit/batch-edit-form.js.map +1 -1
- package/dist/components/batch-edit/batch-edit-list.js.map +1 -1
- package/dist/components/batch-edit/batch-edit.js.map +1 -1
- package/dist/components/breadcrumb/breadcrumb.js.map +1 -1
- package/dist/components/button/button-group.js.map +1 -1
- package/dist/components/button/button.js.map +1 -1
- package/dist/components/calendar/calendar.js.map +1 -1
- package/dist/components/card/card-action.js.map +1 -1
- package/dist/components/card/card-content.js.map +1 -1
- package/dist/components/card/card-cover.js.map +1 -1
- package/dist/components/card/card.js.map +1 -1
- package/dist/components/cascade/cascade-panel-item.js.map +1 -1
- package/dist/components/cascade/cascade.js.map +1 -1
- package/dist/components/cascade/cascade.vue.d.ts +1 -1
- package/dist/components/check-tag/check-tag.js.map +1 -1
- package/dist/components/checkbox/checkbox-button.js.map +1 -1
- package/dist/components/checkbox/checkbox.js.map +1 -1
- package/dist/components/checkbox-group/checkbox-group.js.map +1 -1
- package/dist/components/code-editor/code-editor.js.map +1 -1
- package/dist/components/collapse/collapse-item.js.map +1 -1
- package/dist/components/collapse/collapse.js.map +1 -1
- package/dist/components/condition-editor/components/condition-row.js.map +1 -1
- package/dist/components/condition-editor/condition-editor.js.map +1 -1
- package/dist/components/context-menu/context-menu-item.js.map +1 -1
- package/dist/components/context-menu/context-menu.js.map +1 -1
- package/dist/components/date-panel/date-panel.js.map +1 -1
- package/dist/components/date-panel/headers/day.js.map +1 -1
- package/dist/components/date-panel/headers/month.js.map +1 -1
- package/dist/components/date-panel/headers/year.js.map +1 -1
- package/dist/components/date-panel/panels/day.js.map +1 -1
- package/dist/components/date-panel/panels/month.js.map +1 -1
- package/dist/components/date-panel/panels/year.js.map +1 -1
- package/dist/components/date-picker/date-picker.js.map +1 -1
- package/dist/components/date-range-picker/date-range-picker.js.map +1 -1
- package/dist/components/dialog/dialog.js.map +1 -1
- package/dist/components/drawer/drawer.js.map +1 -1
- package/dist/components/empty/empty.js.map +1 -1
- package/dist/components/expression-editor/components/path-preview.js.map +1 -1
- package/dist/components/expression-editor/components/variable-picker.js.map +1 -1
- package/dist/components/expression-editor/expression-editor.js.map +1 -1
- package/dist/components/file-picker/file-picker.js.map +1 -1
- package/dist/components/file-viewer/file-viewer.js.map +1 -1
- package/dist/components/file-viewer/previewers/pdf-previewer.js.map +1 -1
- package/dist/components/file-viewer/previewers/pdf-viewport-scroll.js.map +1 -1
- package/dist/components/file-viewer/previewers/pdf-zoom-bridge.js.map +1 -1
- package/dist/components/file-viewer/previewers/sheet-previewer.js.map +1 -1
- package/dist/components/float-button/float-button.js.map +1 -1
- package/dist/components/form/dynamic-form-model.d.ts +7 -5
- package/dist/components/form/dynamic-form-model.js +31 -12
- package/dist/components/form/dynamic-form-model.js.map +1 -1
- package/dist/components/form/form-model.d.ts +8 -8
- package/dist/components/form/form-model.js +17 -3
- package/dist/components/form/form-model.js.map +1 -1
- package/dist/components/form/form.js.map +1 -1
- package/dist/components/form/form.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/form/helper.d.ts +6 -1
- package/dist/components/form/helper.js +7 -1
- package/dist/components/form/helper.js.map +1 -1
- package/dist/components/form/index.d.ts +2 -2
- package/dist/components/gantt-chart/gantt-chart.js.map +1 -1
- package/dist/components/grid/grid-item.js.map +1 -1
- package/dist/components/grid/grid.js.map +1 -1
- package/dist/components/grid-input/grid-input.js.map +1 -1
- package/dist/components/group-input/group-input.js.map +1 -1
- package/dist/components/icon/icon.js.map +1 -1
- package/dist/components/index.d.ts +1 -1
- package/dist/components/index.js +2 -1
- package/dist/components/input/input.js.map +1 -1
- package/dist/components/input/input.vue_vue_type_script_setup_true_lang.js.map +1 -1
- package/dist/components/layout/layout-resizer.js.map +1 -1
- package/dist/components/layout/layout.js.map +1 -1
- package/dist/components/list/list-item.js.map +1 -1
- package/dist/components/list/list.js.map +1 -1
- package/dist/components/loading/loading.js.map +1 -1
- package/dist/components/menu/menu-icon.js.map +1 -1
- package/dist/components/menu/menu-sub-collapsed.js.map +1 -1
- package/dist/components/menu/menu.js.map +1 -1
- package/dist/components/message/message-box.js.map +1 -1
- package/dist/components/message/message.js.map +1 -1
- package/dist/components/message-confirm/message-confirm.js.map +1 -1
- package/dist/components/multi-select/multi-select-option.js.map +1 -1
- package/dist/components/multi-select/multi-select.vue.d.ts +1 -1
- package/dist/components/multi-tree-select/multi-tree-select.vue.d.ts +1 -1
- package/dist/components/notification/notification.js.map +1 -1
- package/dist/components/notification/notification.vue.d.ts +2 -2
- package/dist/components/number/number.js.map +1 -1
- package/dist/components/number-input/number-input.js.map +1 -1
- package/dist/components/number-range-input/number-range-input.js.map +1 -1
- package/dist/components/paginator/paginator.js.map +1 -1
- package/dist/components/palette/palette-alpha.js.map +1 -1
- package/dist/components/palette/palette-color-switch.js.map +1 -1
- package/dist/components/palette/palette-hue.js.map +1 -1
- package/dist/components/palette/palette-sv.js.map +1 -1
- package/dist/components/palette/palette.js.map +1 -1
- package/dist/components/pop-confirm/pop-confirm.js.map +1 -1
- package/dist/components/pop-confirm/pop-confirm.vue.d.ts +1 -1
- package/dist/components/progress/progress.js.map +1 -1
- package/dist/components/progress-nodes/progress-nodes.js.map +1 -1
- package/dist/components/radio/radio.js.map +1 -1
- package/dist/components/radio-group/radio-group.js.map +1 -1
- package/dist/components/scroll/scroll-bar.js.map +1 -1
- package/dist/components/scroll/scroll.js.map +1 -1
- package/dist/components/slider/slider-thumb.js.map +1 -1
- package/dist/components/slider/slider.js.map +1 -1
- package/dist/components/steps/steps.js.map +1 -1
- package/dist/components/switch/switch.js.map +1 -1
- package/dist/components/table/table-body.js.map +1 -1
- package/dist/components/table/table-cell.js.map +1 -1
- package/dist/components/table/table-foot.js.map +1 -1
- package/dist/components/table-editor/table-editor.js.map +1 -1
- package/dist/components/tabs/tabs-horizontal.js.map +1 -1
- package/dist/components/tabs/tabs-horizontal.vue.d.ts +4 -4
- package/dist/components/tabs/tabs-vertical.js.map +1 -1
- package/dist/components/tabs/tabs-vertical.vue.d.ts +3 -3
- package/dist/components/tabs/tabs.js.map +1 -1
- package/dist/components/tabs/tabs.vue.d.ts +4 -4
- package/dist/components/tag/tag.js.map +1 -1
- package/dist/components/text/text.js.map +1 -1
- package/dist/components/textarea/textarea.js.map +1 -1
- package/dist/components/textarea/textarea.vue.d.ts +1 -1
- package/dist/components/theme/theme.js.map +1 -1
- package/dist/components/tip/tip.js.map +1 -1
- package/dist/components/tip/tip.vue.d.ts +1 -1
- package/dist/components/tree/tree-node.js.map +1 -1
- package/dist/components/tree/tree.js.map +1 -1
- package/dist/components/tree-select/tree-select.vue.d.ts +1 -1
- package/dist/components/watermark/watermark.js.map +1 -1
- package/dist/index.d.ts +4 -4
- package/dist/index.js +2 -2
- package/dist/types/form.d.ts +12 -9
- package/dist/types/index.d.ts +2 -2
- package/package.json +6 -6
- package/src/components/action/action.vue +1 -4
- package/src/components/badge/badge.vue +3 -9
- package/src/components/batch-edit/batch-edit-form.vue +1 -5
- package/src/components/batch-edit/batch-edit-list.vue +2 -6
- package/src/components/batch-edit/batch-edit.vue +2 -12
- package/src/components/breadcrumb/breadcrumb.vue +4 -13
- package/src/components/button/button-group.vue +2 -6
- package/src/components/button/button.vue +3 -9
- package/src/components/calendar/calendar.vue +1 -3
- package/src/components/card/card-action.vue +1 -3
- package/src/components/card/card-content.vue +1 -6
- package/src/components/card/card-cover.vue +1 -3
- package/src/components/card/card.vue +2 -6
- package/src/components/cascade/cascade-panel-item.vue +2 -8
- package/src/components/cascade/cascade.vue +5 -37
- package/src/components/check-tag/check-tag.vue +1 -3
- package/src/components/checkbox/checkbox-button.vue +2 -6
- package/src/components/checkbox/checkbox.vue +1 -3
- package/src/components/checkbox-group/checkbox-group.vue +1 -3
- package/src/components/code-editor/code-editor.vue +4 -12
- package/src/components/collapse/collapse-item.vue +1 -3
- package/src/components/collapse/collapse.vue +2 -8
- package/src/components/condition-editor/components/condition-row.vue +2 -8
- package/src/components/condition-editor/condition-editor.vue +2 -6
- package/src/components/context-menu/context-menu-item.vue +3 -10
- package/src/components/context-menu/context-menu.vue +5 -17
- package/src/components/date-panel/date-panel.vue +3 -11
- package/src/components/date-panel/headers/day.vue +1 -3
- package/src/components/date-panel/headers/month.vue +1 -3
- package/src/components/date-panel/headers/year.vue +1 -3
- package/src/components/date-panel/panels/day.vue +1 -4
- package/src/components/date-panel/panels/month.vue +1 -3
- package/src/components/date-panel/panels/year.vue +1 -3
- package/src/components/date-picker/date-picker.vue +1 -3
- package/src/components/date-range-picker/date-range-picker.vue +1 -3
- package/src/components/dialog/dialog.vue +7 -24
- package/src/components/drawer/drawer.vue +3 -11
- package/src/components/empty/empty.vue +2 -7
- package/src/components/expression-editor/components/path-preview.vue +2 -6
- package/src/components/expression-editor/components/variable-picker.vue +1 -3
- package/src/components/expression-editor/expression-editor.vue +2 -6
- package/src/components/expression-editor/style.scss +1 -1
- package/src/components/file-picker/file-picker.vue +2 -7
- package/src/components/file-viewer/file-viewer.vue +4 -22
- package/src/components/file-viewer/previewers/pdf-previewer.vue +1 -5
- package/src/components/file-viewer/previewers/pdf-viewport-scroll.vue +1 -7
- package/src/components/file-viewer/previewers/pdf-zoom-bridge.vue +2 -7
- package/src/components/file-viewer/previewers/sheet-previewer.vue +4 -10
- package/src/components/float-button/float-button.vue +1 -3
- package/src/components/form/__test__/form-model.test.ts +190 -0
- package/src/components/form/dynamic-form-model.ts +47 -19
- package/src/components/form/form-model.ts +40 -28
- package/src/components/form/form.vue +3 -13
- package/src/components/form/helper.ts +9 -0
- package/src/components/form/index.ts +2 -1
- package/src/components/gantt-chart/gantt-chart.vue +1 -3
- package/src/components/grid/grid-item.vue +3 -9
- package/src/components/grid/grid.vue +5 -18
- package/src/components/grid-input/grid-input.vue +2 -6
- package/src/components/group-input/group-input.vue +2 -7
- package/src/components/icon/icon.vue +2 -6
- package/src/components/input/input.vue +2 -6
- package/src/components/layout/layout-resizer.vue +1 -3
- package/src/components/layout/layout.vue +3 -9
- package/src/components/list/list-item.vue +1 -3
- package/src/components/list/list.vue +2 -6
- package/src/components/loading/loading.vue +3 -9
- package/src/components/menu/menu-icon.vue +2 -6
- package/src/components/menu/menu-sub-collapsed.vue +2 -8
- package/src/components/menu/menu.vue +3 -9
- package/src/components/menu/style.scss +1 -1
- package/src/components/message/message-box.vue +3 -10
- package/src/components/message/message.vue +3 -9
- package/src/components/message-confirm/message-confirm.vue +2 -6
- package/src/components/multi-select/multi-select-option.vue +3 -9
- package/src/components/notification/notification.vue +3 -11
- package/src/components/number/number.vue +4 -14
- package/src/components/number-input/number-input.vue +7 -36
- package/src/components/number-range-input/number-range-input.vue +4 -17
- package/src/components/paginator/paginator.vue +7 -22
- package/src/components/palette/palette-alpha.vue +2 -6
- package/src/components/palette/palette-color-switch.vue +1 -3
- package/src/components/palette/palette-hue.vue +2 -6
- package/src/components/palette/palette-sv.vue +5 -17
- package/src/components/palette/palette.vue +2 -12
- package/src/components/pop-confirm/pop-confirm.vue +2 -6
- package/src/components/progress/progress.vue +2 -7
- package/src/components/progress-nodes/progress-nodes.vue +2 -7
- package/src/components/radio/radio.vue +2 -6
- package/src/components/radio-group/radio-group.vue +1 -3
- package/src/components/scroll/scroll-bar.vue +5 -17
- package/src/components/scroll/scroll.vue +5 -16
- package/src/components/slider/slider-thumb.vue +4 -12
- package/src/components/slider/slider.vue +3 -14
- package/src/components/steps/steps.vue +3 -10
- package/src/components/switch/switch.vue +2 -7
- package/src/components/table/table-body.vue +2 -8
- package/src/components/table/table-cell.vue +2 -7
- package/src/components/table/table-foot.vue +2 -9
- package/src/components/table-editor/table-editor.vue +1 -3
- package/src/components/tabs/tabs-horizontal.vue +2 -6
- package/src/components/tabs/tabs-vertical.vue +1 -3
- package/src/components/tabs/tabs.vue +1 -3
- package/src/components/tag/tag.vue +2 -6
- package/src/components/text/text.vue +3 -9
- package/src/components/textarea/textarea.vue +1 -3
- package/src/components/theme/group-item.vue +1 -3
- package/src/components/theme/group.vue +1 -3
- package/src/components/theme/theme.vue +6 -26
- package/src/components/tip/tip.vue +1 -3
- package/src/components/tree/tree-node.vue +1 -3
- package/src/components/tree/tree.vue +7 -30
- package/src/components/watermark/watermark.vue +4 -15
- package/src/types/form.ts +29 -11
|
@@ -43,9 +43,7 @@ import { UButton } from '../button'
|
|
|
43
43
|
import { UIcon } from '../icon'
|
|
44
44
|
import { UTip } from '../tip'
|
|
45
45
|
|
|
46
|
-
defineOptions({
|
|
47
|
-
name: 'PopConfirm'
|
|
48
|
-
})
|
|
46
|
+
defineOptions({ name: 'PopConfirm' })
|
|
49
47
|
|
|
50
48
|
const emit = defineEmits<PopConfirmEmits>()
|
|
51
49
|
|
|
@@ -64,9 +62,7 @@ const visible = ref(false)
|
|
|
64
62
|
|
|
65
63
|
const { formProps } = injectFormContext()
|
|
66
64
|
|
|
67
|
-
const { size } = useFormFallbackProps([formProps ?? {}], {
|
|
68
|
-
size: 'default'
|
|
69
|
-
})
|
|
65
|
+
const { size } = useFormFallbackProps([formProps ?? {}], { size: 'default' })
|
|
70
66
|
|
|
71
67
|
const confirm = () => {
|
|
72
68
|
emit('confirm')
|
|
@@ -43,14 +43,9 @@ import { computed } from 'vue'
|
|
|
43
43
|
|
|
44
44
|
import type { ProgressProps, ColorType } from '../../types'
|
|
45
45
|
|
|
46
|
-
defineOptions({
|
|
47
|
-
name: 'Progress'
|
|
48
|
-
})
|
|
46
|
+
defineOptions({ name: 'Progress' })
|
|
49
47
|
|
|
50
|
-
const props = withDefaults(defineProps<ProgressProps>(), {
|
|
51
|
-
type: 'primary',
|
|
52
|
-
circle: false
|
|
53
|
-
})
|
|
48
|
+
const props = withDefaults(defineProps<ProgressProps>(), { type: 'primary', circle: false })
|
|
54
49
|
|
|
55
50
|
defineSlots<{
|
|
56
51
|
default: (props: {
|
|
@@ -39,9 +39,7 @@ import { computed, shallowRef, toRefs, useTemplateRef, watch, nextTick } from 'v
|
|
|
39
39
|
|
|
40
40
|
import type { ProgressNodesProps, ProgressNodesEmits } from '../../types'
|
|
41
41
|
|
|
42
|
-
defineOptions({
|
|
43
|
-
name: 'ProgressNodes'
|
|
44
|
-
})
|
|
42
|
+
defineOptions({ name: 'ProgressNodes' })
|
|
45
43
|
|
|
46
44
|
const props = withDefaults(defineProps<ProgressNodesProps>(), {
|
|
47
45
|
colorType: 'primary',
|
|
@@ -98,10 +96,7 @@ useDrag({
|
|
|
98
96
|
}
|
|
99
97
|
})
|
|
100
98
|
|
|
101
|
-
useResizeObserver({
|
|
102
|
-
targets: containerRef,
|
|
103
|
-
onResize: checkScroll
|
|
104
|
-
})
|
|
99
|
+
useResizeObserver({ targets: containerRef, onResize: checkScroll })
|
|
105
100
|
|
|
106
101
|
watch(
|
|
107
102
|
nodes,
|
|
@@ -30,15 +30,11 @@ import { computed } from 'vue'
|
|
|
30
30
|
|
|
31
31
|
import type { RadioProps, RadioEmits } from '../../types'
|
|
32
32
|
|
|
33
|
-
defineOptions({
|
|
34
|
-
name: 'Radio'
|
|
35
|
-
})
|
|
33
|
+
defineOptions({ name: 'Radio' })
|
|
36
34
|
|
|
37
35
|
const model = defineModel<any>()
|
|
38
36
|
|
|
39
|
-
const props = withDefaults(defineProps<RadioProps>(), {
|
|
40
|
-
disabled: undefined
|
|
41
|
-
})
|
|
37
|
+
const props = withDefaults(defineProps<RadioProps>(), { disabled: undefined })
|
|
42
38
|
|
|
43
39
|
defineEmits<RadioEmits>()
|
|
44
40
|
|
|
@@ -26,9 +26,7 @@ import { injectFormContext } from '@veltra/utils'
|
|
|
26
26
|
import type { RadioGroupProps, RadioGroupEmits } from '../../types'
|
|
27
27
|
import URadio from '../radio/radio.vue'
|
|
28
28
|
|
|
29
|
-
defineOptions({
|
|
30
|
-
name: 'RadioGroup'
|
|
31
|
-
})
|
|
29
|
+
defineOptions({ name: 'RadioGroup' })
|
|
32
30
|
|
|
33
31
|
const props = withDefaults(defineProps<RadioGroupProps>(), {
|
|
34
32
|
labelKey: 'label',
|
|
@@ -9,17 +9,11 @@ import { computed, inject, shallowRef } from 'vue'
|
|
|
9
9
|
|
|
10
10
|
import { ScrollDIKey } from './di'
|
|
11
11
|
|
|
12
|
-
defineOptions({
|
|
13
|
-
name: 'ScrollBar'
|
|
14
|
-
})
|
|
12
|
+
defineOptions({ name: 'ScrollBar' })
|
|
15
13
|
|
|
16
|
-
const props = defineProps<{
|
|
17
|
-
type: 'x' | 'y'
|
|
18
|
-
}>()
|
|
14
|
+
const props = defineProps<{ type: 'x' | 'y' }>()
|
|
19
15
|
|
|
20
|
-
const emit = defineEmits<{
|
|
21
|
-
drag: [offset: number, size: number]
|
|
22
|
-
}>()
|
|
16
|
+
const emit = defineEmits<{ drag: [offset: number, size: number] }>()
|
|
23
17
|
|
|
24
18
|
/** 滚动条高度(type为x时为宽度) */
|
|
25
19
|
const size = shallowRef(0)
|
|
@@ -41,16 +35,10 @@ const className = computed(() => {
|
|
|
41
35
|
const style =
|
|
42
36
|
props.type === 'x'
|
|
43
37
|
? computed(() => {
|
|
44
|
-
return {
|
|
45
|
-
width: size.value + 'px',
|
|
46
|
-
transform: `translateX(${offset.value}px)`
|
|
47
|
-
}
|
|
38
|
+
return { width: size.value + 'px', transform: `translateX(${offset.value}px)` }
|
|
48
39
|
})
|
|
49
40
|
: computed(() => {
|
|
50
|
-
return {
|
|
51
|
-
height: size.value + 'px',
|
|
52
|
-
transform: `translateY(${offset.value}px)`
|
|
53
|
-
}
|
|
41
|
+
return { height: size.value + 'px', transform: `translateY(${offset.value}px)` }
|
|
54
42
|
})
|
|
55
43
|
|
|
56
44
|
const domRef = shallowRef<HTMLElement>()
|
|
@@ -31,13 +31,9 @@ import type { ScrollPosition, _ScrollExposed, ScrollProps, ScrollEmits } from '.
|
|
|
31
31
|
import { ScrollDIKey } from './di'
|
|
32
32
|
import UScrollBar from './scroll-bar.vue'
|
|
33
33
|
|
|
34
|
-
defineOptions({
|
|
35
|
-
name: 'Scroll'
|
|
36
|
-
})
|
|
34
|
+
defineOptions({ name: 'Scroll' })
|
|
37
35
|
|
|
38
|
-
const props = withDefaults(defineProps<ScrollProps>(), {
|
|
39
|
-
tag: 'div'
|
|
40
|
-
})
|
|
36
|
+
const props = withDefaults(defineProps<ScrollProps>(), { tag: 'div' })
|
|
41
37
|
|
|
42
38
|
const emit = defineEmits<ScrollEmits>()
|
|
43
39
|
|
|
@@ -55,9 +51,7 @@ const className = computed(() => {
|
|
|
55
51
|
})
|
|
56
52
|
|
|
57
53
|
const style = computed<CSSProperties>(() => {
|
|
58
|
-
return {
|
|
59
|
-
height: withUnit(props.height, 'px')
|
|
60
|
-
}
|
|
54
|
+
return { height: withUnit(props.height, 'px') }
|
|
61
55
|
})
|
|
62
56
|
|
|
63
57
|
const contentRef = shallowRef<HTMLElement>()
|
|
@@ -67,10 +61,7 @@ const barX = shallowRef<InstanceType<typeof UScrollBar>>()
|
|
|
67
61
|
const barY = shallowRef<InstanceType<typeof UScrollBar>>()
|
|
68
62
|
const minSize = 20
|
|
69
63
|
|
|
70
|
-
const trackSize = {
|
|
71
|
-
width: 0,
|
|
72
|
-
height: 0
|
|
73
|
-
}
|
|
64
|
+
const trackSize = { width: 0, height: 0 }
|
|
74
65
|
|
|
75
66
|
const updateBar = () => {
|
|
76
67
|
const container = containerRef.value
|
|
@@ -167,9 +158,7 @@ const scrollTo = (position: ScrollPosition) => {
|
|
|
167
158
|
if (position.y !== undefined) scrollToTop(position.y)
|
|
168
159
|
}
|
|
169
160
|
|
|
170
|
-
provide(ScrollDIKey, {
|
|
171
|
-
cls
|
|
172
|
-
})
|
|
161
|
+
provide(ScrollDIKey, { cls })
|
|
173
162
|
|
|
174
163
|
const exposed: _ScrollExposed = {
|
|
175
164
|
el: scrollRef,
|
|
@@ -7,13 +7,9 @@ import { computed, inject, useTemplateRef, watch } from 'vue'
|
|
|
7
7
|
|
|
8
8
|
import { sliderContextKey } from './di'
|
|
9
9
|
|
|
10
|
-
const props = defineProps<{
|
|
11
|
-
modelValue: number
|
|
12
|
-
}>()
|
|
10
|
+
const props = defineProps<{ modelValue: number }>()
|
|
13
11
|
|
|
14
|
-
const emit = defineEmits<{
|
|
15
|
-
(e: 'update:modelValue', value: number): void
|
|
16
|
-
}>()
|
|
12
|
+
const emit = defineEmits<{ (e: 'update:modelValue', value: number): void }>()
|
|
17
13
|
|
|
18
14
|
const { cls, range, disabled, sliderProps, getOffsetByStep } = inject(sliderContextKey)!
|
|
19
15
|
|
|
@@ -21,13 +17,9 @@ const thumbRef = useTemplateRef('thumb')
|
|
|
21
17
|
|
|
22
18
|
const style = computed(() => {
|
|
23
19
|
if (sliderProps.vertical) {
|
|
24
|
-
return {
|
|
25
|
-
transform: `translate(0, ${props.modelValue}px)`
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
return {
|
|
29
|
-
transform: `translate(${props.modelValue}px, 0)`
|
|
20
|
+
return { transform: `translate(0, ${props.modelValue}px)` }
|
|
30
21
|
}
|
|
22
|
+
return { transform: `translate(${props.modelValue}px, 0)` }
|
|
31
23
|
})
|
|
32
24
|
|
|
33
25
|
const { userAction, isUserActive } = useUserAction()
|
|
@@ -30,9 +30,7 @@ import { sliderContextKey } from './di'
|
|
|
30
30
|
import SliderThumb from './slider-thumb.vue'
|
|
31
31
|
import { useSlider } from './use-slider'
|
|
32
32
|
|
|
33
|
-
defineOptions({
|
|
34
|
-
name: 'Slider'
|
|
35
|
-
})
|
|
33
|
+
defineOptions({ name: 'Slider' })
|
|
36
34
|
|
|
37
35
|
const props = withDefaults(defineProps<SliderProps<T>>(), {
|
|
38
36
|
min: 0,
|
|
@@ -77,10 +75,7 @@ const barStyles = computed(() => {
|
|
|
77
75
|
const sizeProp = vertical ? 'height' : 'width'
|
|
78
76
|
|
|
79
77
|
if (!props.range) {
|
|
80
|
-
return {
|
|
81
|
-
[offsetProp]: 0,
|
|
82
|
-
[sizeProp]: `${Math.abs(offset1.value)}px`
|
|
83
|
-
}
|
|
78
|
+
return { [offsetProp]: 0, [sizeProp]: `${Math.abs(offset1.value)}px` }
|
|
84
79
|
}
|
|
85
80
|
return {
|
|
86
81
|
[offsetProp]: `${Math.min(Math.abs(offset1.value), Math.abs(offset2.value))}px`,
|
|
@@ -135,11 +130,5 @@ function handleClickSlider(e: MouseEvent) {
|
|
|
135
130
|
offset1.value = getOffsetByStep(e.clientX - rect.left)
|
|
136
131
|
}
|
|
137
132
|
|
|
138
|
-
provide(sliderContextKey, {
|
|
139
|
-
sliderProps: props,
|
|
140
|
-
disabled,
|
|
141
|
-
range: slideRange,
|
|
142
|
-
cls,
|
|
143
|
-
getOffsetByStep
|
|
144
|
-
})
|
|
133
|
+
provide(sliderContextKey, { sliderProps: props, disabled, range: slideRange, cls, getOffsetByStep })
|
|
145
134
|
</script>
|
|
@@ -62,9 +62,7 @@ import { UIcon } from '../icon'
|
|
|
62
62
|
import { UNodeRender } from '../node-render'
|
|
63
63
|
import { UTip } from '../tip'
|
|
64
64
|
|
|
65
|
-
defineOptions({
|
|
66
|
-
name: 'Steps'
|
|
67
|
-
})
|
|
65
|
+
defineOptions({ name: 'Steps' })
|
|
68
66
|
|
|
69
67
|
const props = withDefaults(defineProps<StepsProps>(), {
|
|
70
68
|
direction: 'horizontal',
|
|
@@ -82,9 +80,7 @@ const slots = defineSlots<{
|
|
|
82
80
|
|
|
83
81
|
const cls = bem('steps')
|
|
84
82
|
|
|
85
|
-
const { size } = useFallbackProps([props], {
|
|
86
|
-
size: 'default' as ComponentSize
|
|
87
|
-
})
|
|
83
|
+
const { size } = useFallbackProps([props], { size: 'default' as ComponentSize })
|
|
88
84
|
|
|
89
85
|
const className = computed(() => {
|
|
90
86
|
const { direction, currentStepType, finishedStepType } = props
|
|
@@ -130,10 +126,7 @@ watch(currentIndex, (index) => {
|
|
|
130
126
|
if (index === undefined || props.direction === 'vertical') return
|
|
131
127
|
const step = stepsRef.value?.children[index]
|
|
132
128
|
if (step) {
|
|
133
|
-
step.scrollIntoView({
|
|
134
|
-
behavior: 'smooth',
|
|
135
|
-
block: 'center'
|
|
136
|
-
})
|
|
129
|
+
step.scrollIntoView({ behavior: 'smooth', block: 'center' })
|
|
137
130
|
}
|
|
138
131
|
})
|
|
139
132
|
|
|
@@ -30,14 +30,9 @@ import { computed } from 'vue'
|
|
|
30
30
|
|
|
31
31
|
import type { SwitchEmits, SwitchProps, _SwitchExposed } from '../../types'
|
|
32
32
|
|
|
33
|
-
defineOptions({
|
|
34
|
-
name: 'Switch'
|
|
35
|
-
})
|
|
33
|
+
defineOptions({ name: 'Switch' })
|
|
36
34
|
|
|
37
|
-
const props = withDefaults(defineProps<SwitchProps>(), {
|
|
38
|
-
disabled: undefined,
|
|
39
|
-
readonly: undefined
|
|
40
|
-
})
|
|
35
|
+
const props = withDefaults(defineProps<SwitchProps>(), { disabled: undefined, readonly: undefined })
|
|
41
36
|
|
|
42
37
|
const emit = defineEmits<SwitchEmits>()
|
|
43
38
|
|
|
@@ -26,9 +26,7 @@ import { UEmpty } from '../empty'
|
|
|
26
26
|
import { TableDIKey } from './di'
|
|
27
27
|
import { UTableRow, UExpandTableRow } from './table-row'
|
|
28
28
|
|
|
29
|
-
defineOptions({
|
|
30
|
-
name: 'TableBody'
|
|
31
|
-
})
|
|
29
|
+
defineOptions({ name: 'TableBody' })
|
|
32
30
|
|
|
33
31
|
const { cls, rows, virtualList, columnConfig, tableProps, virtualEnabled } = inject(TableDIKey)!
|
|
34
32
|
const { leafColumns } = columnConfig
|
|
@@ -57,11 +55,7 @@ const getStripeCls = (index: number): string => stripeTable.value[index & 1]!
|
|
|
57
55
|
const tableRows = computed(() => {
|
|
58
56
|
if (!virtualEnabled.value) {
|
|
59
57
|
return rows.value.map((row, index) => {
|
|
60
|
-
return {
|
|
61
|
-
row,
|
|
62
|
-
stripeIndex: row.index,
|
|
63
|
-
index
|
|
64
|
-
}
|
|
58
|
+
return { row, stripeIndex: row.index, index }
|
|
65
59
|
})
|
|
66
60
|
}
|
|
67
61
|
|
|
@@ -14,9 +14,7 @@
|
|
|
14
14
|
import { withUnit } from '@veltra/utils'
|
|
15
15
|
import { computed } from 'vue'
|
|
16
16
|
|
|
17
|
-
defineOptions({
|
|
18
|
-
name: 'TableCell'
|
|
19
|
-
})
|
|
17
|
+
defineOptions({ name: 'TableCell' })
|
|
20
18
|
|
|
21
19
|
/**
|
|
22
20
|
* B2: TableCell 去 inject 化。
|
|
@@ -34,8 +32,5 @@ const { left, right } = defineProps<{
|
|
|
34
32
|
colspan?: number
|
|
35
33
|
}>()
|
|
36
34
|
|
|
37
|
-
const style = computed(() => ({
|
|
38
|
-
left: withUnit(left, 'px'),
|
|
39
|
-
right: withUnit(right, 'px')
|
|
40
|
-
}))
|
|
35
|
+
const style = computed(() => ({ left: withUnit(left, 'px'), right: withUnit(right, 'px') }))
|
|
41
36
|
</script>
|
|
@@ -36,9 +36,7 @@ import { UNodeRender } from '../node-render'
|
|
|
36
36
|
import { TableDIKey } from './di'
|
|
37
37
|
import type { ColumnNode } from './node/col'
|
|
38
38
|
|
|
39
|
-
defineOptions({
|
|
40
|
-
name: 'TableFoot'
|
|
41
|
-
})
|
|
39
|
+
defineOptions({ name: 'TableFoot' })
|
|
42
40
|
|
|
43
41
|
const { cls, columnConfig, rows, checkedRows, tableSlots, getCellClass } = inject(TableDIKey)!
|
|
44
42
|
|
|
@@ -78,12 +76,7 @@ function getColumnSummaryNode(column: ColumnNode): RenderReturn {
|
|
|
78
76
|
let total = summaryRow.value[column.key]
|
|
79
77
|
|
|
80
78
|
if (typeof summary === 'function') {
|
|
81
|
-
return summary({
|
|
82
|
-
total,
|
|
83
|
-
rows: rows.value,
|
|
84
|
-
checkedRows: checkedRows.value,
|
|
85
|
-
column
|
|
86
|
-
})
|
|
79
|
+
return summary({ total, rows: rows.value, checkedRows: checkedRows.value, column })
|
|
87
80
|
}
|
|
88
81
|
return total
|
|
89
82
|
}
|
|
@@ -44,9 +44,7 @@ import { UButton } from '../button'
|
|
|
44
44
|
import { UTable } from '../table'
|
|
45
45
|
import type { TableRowNode } from '../table/node/row'
|
|
46
46
|
|
|
47
|
-
defineOptions({
|
|
48
|
-
name: 'TableEditor'
|
|
49
|
-
})
|
|
47
|
+
defineOptions({ name: 'TableEditor' })
|
|
50
48
|
|
|
51
49
|
const { columns = [], modelValue = [] } = defineProps<TableEditorProps>()
|
|
52
50
|
const emit = defineEmits<TableEditorEmits>()
|
|
@@ -86,13 +86,9 @@ const props = withDefaults(defineProps<TabsHorizontalProps>(), {
|
|
|
86
86
|
|
|
87
87
|
const emit = defineEmits<TabsHorizontalEmits>()
|
|
88
88
|
|
|
89
|
-
defineSlots<{
|
|
90
|
-
[key: `name:${string}`]: (props: { item: TabItem }) => any
|
|
91
|
-
}>()
|
|
89
|
+
defineSlots<{ [key: `name:${string}`]: (props: { item: TabItem }) => any }>()
|
|
92
90
|
|
|
93
|
-
const { size } = useFallbackProps([props], {
|
|
94
|
-
size: 'default' as ComponentSize
|
|
95
|
-
})
|
|
91
|
+
const { size } = useFallbackProps([props], { size: 'default' as ComponentSize })
|
|
96
92
|
|
|
97
93
|
const cls = bem('tabs-bar')
|
|
98
94
|
|
|
@@ -51,9 +51,7 @@ const props = withDefaults(defineProps<TabsVerticalProps>(), {
|
|
|
51
51
|
|
|
52
52
|
const emit = defineEmits<TabsVerticalEmits>()
|
|
53
53
|
|
|
54
|
-
const { size } = useFallbackProps([props], {
|
|
55
|
-
size: 'default' as ComponentSize
|
|
56
|
-
})
|
|
54
|
+
const { size } = useFallbackProps([props], { size: 'default' as ComponentSize })
|
|
57
55
|
|
|
58
56
|
const cls = bem('tabs-bar')
|
|
59
57
|
|
|
@@ -57,9 +57,7 @@ const emit = defineEmits<TabsEmits>()
|
|
|
57
57
|
|
|
58
58
|
const slots = useSlots() as Record<string, ((props?: any) => any) | undefined>
|
|
59
59
|
|
|
60
|
-
const { size } = useFallbackProps([props], {
|
|
61
|
-
size: 'default' as ComponentSize
|
|
62
|
-
})
|
|
60
|
+
const { size } = useFallbackProps([props], { size: 'default' as ComponentSize })
|
|
63
61
|
|
|
64
62
|
const cls = bem('tabs')
|
|
65
63
|
|
|
@@ -20,9 +20,7 @@ import { computed } from 'vue'
|
|
|
20
20
|
import type { TagEmits, TagProps } from '../../types'
|
|
21
21
|
import { UIcon } from '../icon'
|
|
22
22
|
|
|
23
|
-
defineOptions({
|
|
24
|
-
name: 'Tag'
|
|
25
|
-
})
|
|
23
|
+
defineOptions({ name: 'Tag' })
|
|
26
24
|
|
|
27
25
|
const cls = bem('tag')
|
|
28
26
|
|
|
@@ -31,9 +29,7 @@ const props = defineProps<TagProps>()
|
|
|
31
29
|
const emit = defineEmits<TagEmits>()
|
|
32
30
|
|
|
33
31
|
const { formProps } = injectFormContext()
|
|
34
|
-
const { size } = useFormFallbackProps([formProps ?? {}, props], {
|
|
35
|
-
size: 'default'
|
|
36
|
-
})
|
|
32
|
+
const { size } = useFormFallbackProps([formProps ?? {}, props], { size: 'default' })
|
|
37
33
|
|
|
38
34
|
const handleClose = () => {
|
|
39
35
|
emit('close')
|
|
@@ -11,13 +11,9 @@ import { type CSSProperties, type VNode, computed, useSlots, h, createTextVNode
|
|
|
11
11
|
import type { TextProps } from '../../types'
|
|
12
12
|
import { UNodeRender } from '../node-render'
|
|
13
13
|
|
|
14
|
-
defineOptions({
|
|
15
|
-
name: 'Text'
|
|
16
|
-
})
|
|
14
|
+
defineOptions({ name: 'Text' })
|
|
17
15
|
|
|
18
|
-
const props = withDefaults(defineProps<TextProps>(), {
|
|
19
|
-
as: 'content'
|
|
20
|
-
})
|
|
16
|
+
const props = withDefaults(defineProps<TextProps>(), { as: 'content' })
|
|
21
17
|
|
|
22
18
|
const cls = bem('text')
|
|
23
19
|
|
|
@@ -26,9 +22,7 @@ const classList = computed(() => {
|
|
|
26
22
|
})
|
|
27
23
|
|
|
28
24
|
const style = computed(() => {
|
|
29
|
-
const style: CSSProperties = {
|
|
30
|
-
fontSize: withUnit(props.fontSize, 'px')
|
|
31
|
-
}
|
|
25
|
+
const style: CSSProperties = { fontSize: withUnit(props.fontSize, 'px') }
|
|
32
26
|
const { deleted, underline } = props
|
|
33
27
|
if (deleted) {
|
|
34
28
|
style.textDecoration = 'line-through'
|
|
@@ -50,9 +50,7 @@ import type { TextareaProps, TextareaEmits, ComponentSize } from '../../types'
|
|
|
50
50
|
import { UIcon } from '../icon'
|
|
51
51
|
import { calcTextareaHeight } from './utils'
|
|
52
52
|
|
|
53
|
-
defineOptions({
|
|
54
|
-
name: 'Textarea'
|
|
55
|
-
})
|
|
53
|
+
defineOptions({ name: 'Textarea' })
|
|
56
54
|
|
|
57
55
|
const props = withDefaults(defineProps<TextareaProps>(), {
|
|
58
56
|
placeholder: '请输入',
|
|
@@ -195,9 +195,7 @@ import { USelect } from '../select'
|
|
|
195
195
|
import { THEME_SECTIONS } from './schema'
|
|
196
196
|
import type { ThemeField } from './schema'
|
|
197
197
|
|
|
198
|
-
defineOptions({
|
|
199
|
-
name: 'UTheme'
|
|
200
|
-
})
|
|
198
|
+
defineOptions({ name: 'UTheme' })
|
|
201
199
|
|
|
202
200
|
const props = defineProps<ThemeProps>()
|
|
203
201
|
|
|
@@ -213,10 +211,7 @@ const colorVarOptions = computed(() => {
|
|
|
213
211
|
section.fields.forEach((field) => {
|
|
214
212
|
if (field.kind === 'palette') {
|
|
215
213
|
const varName = `var(${getCssVarName(field.path)})`
|
|
216
|
-
options.push({
|
|
217
|
-
label: `${field.label}`,
|
|
218
|
-
value: varName
|
|
219
|
-
})
|
|
214
|
+
options.push({ label: `${field.label}`, value: varName })
|
|
220
215
|
}
|
|
221
216
|
})
|
|
222
217
|
})
|
|
@@ -305,11 +300,7 @@ const sectionStates = computed(() => {
|
|
|
305
300
|
return changedFieldKeys.value.has(field.key)
|
|
306
301
|
}).length
|
|
307
302
|
|
|
308
|
-
return {
|
|
309
|
-
...section,
|
|
310
|
-
visibleFields,
|
|
311
|
-
changedCount
|
|
312
|
-
}
|
|
303
|
+
return { ...section, visibleFields, changedCount }
|
|
313
304
|
})
|
|
314
305
|
})
|
|
315
306
|
|
|
@@ -382,22 +373,11 @@ function getFieldValue(field: ThemeField) {
|
|
|
382
373
|
function getFieldProps(field: ThemeField) {
|
|
383
374
|
switch (field.kind) {
|
|
384
375
|
case 'number':
|
|
385
|
-
return {
|
|
386
|
-
min: field.min,
|
|
387
|
-
max: field.max,
|
|
388
|
-
step: field.step,
|
|
389
|
-
suffix: field.suffix
|
|
390
|
-
}
|
|
376
|
+
return { min: field.min, max: field.max, step: field.step, suffix: field.suffix }
|
|
391
377
|
case 'select':
|
|
392
|
-
return {
|
|
393
|
-
options: field.options,
|
|
394
|
-
clearable: false,
|
|
395
|
-
placeholder: '请选择'
|
|
396
|
-
}
|
|
378
|
+
return { options: field.options, clearable: false, placeholder: '请选择' }
|
|
397
379
|
case 'input':
|
|
398
|
-
return {
|
|
399
|
-
placeholder: field.placeholder
|
|
400
|
-
}
|
|
380
|
+
return { placeholder: field.placeholder }
|
|
401
381
|
default:
|
|
402
382
|
return {}
|
|
403
383
|
}
|
|
@@ -51,9 +51,7 @@ const emit = defineEmits<TipEmits>()
|
|
|
51
51
|
|
|
52
52
|
const cls = bem('tip')
|
|
53
53
|
const slots = useSlots()
|
|
54
|
-
const { size } = useFallbackProps([props], {
|
|
55
|
-
size: 'default' as ComponentSize
|
|
56
|
-
})
|
|
54
|
+
const { size } = useFallbackProps([props], { size: 'default' as ComponentSize })
|
|
57
55
|
|
|
58
56
|
const contentClass = computed(() => {
|
|
59
57
|
const fixed = [cls.e('content'), cls.m(size.value)]
|
|
@@ -47,9 +47,7 @@ import { useFilter } from './use-filter'
|
|
|
47
47
|
import { useSelect } from './use-select'
|
|
48
48
|
import { useTreeNodes } from './use-tree-nodes'
|
|
49
49
|
|
|
50
|
-
defineOptions({
|
|
51
|
-
name: 'Tree'
|
|
52
|
-
})
|
|
50
|
+
defineOptions({ name: 'Tree' })
|
|
53
51
|
|
|
54
52
|
const props = withDefaults(defineProps<TreeProps>(), {
|
|
55
53
|
labelKey: 'label',
|
|
@@ -66,9 +64,7 @@ const cls = bem('tree')
|
|
|
66
64
|
|
|
67
65
|
const { formProps } = injectFormContext()
|
|
68
66
|
|
|
69
|
-
const { size } = useFormFallbackProps([formProps ?? {}, props], {
|
|
70
|
-
size: 'default'
|
|
71
|
-
})
|
|
67
|
+
const { size } = useFormFallbackProps([formProps ?? {}, props], { size: 'default' })
|
|
72
68
|
|
|
73
69
|
const scrollRef = shallowRef<ScrollExposed>()
|
|
74
70
|
|
|
@@ -81,9 +77,7 @@ const className = computed(() => {
|
|
|
81
77
|
]
|
|
82
78
|
})
|
|
83
79
|
|
|
84
|
-
defineSlots<{
|
|
85
|
-
default: (props: TreeSlotsScope) => any
|
|
86
|
-
}>()
|
|
80
|
+
defineSlots<{ default: (props: TreeSlotsScope) => any }>()
|
|
87
81
|
|
|
88
82
|
const slots = useSlots()
|
|
89
83
|
|
|
@@ -91,9 +85,7 @@ function getTreeSlotsNode(ctx: TreeSlotsScope): VNode[] | string | undefined {
|
|
|
91
85
|
return (props.slots?.default ?? slots.default)?.(ctx) ?? ctx.node.label
|
|
92
86
|
}
|
|
93
87
|
|
|
94
|
-
const { nodes, forest, getFlattedNodes, nodeDict } = useTreeNodes({
|
|
95
|
-
props
|
|
96
|
-
})
|
|
88
|
+
const { nodes, forest, getFlattedNodes, nodeDict } = useTreeNodes({ props })
|
|
97
89
|
|
|
98
90
|
watch(
|
|
99
91
|
[() => props.selectable, () => props.checkable, forest],
|
|
@@ -107,19 +99,9 @@ watch(
|
|
|
107
99
|
|
|
108
100
|
const { filter } = useFilter({ forest, getFlattedNodes })
|
|
109
101
|
|
|
110
|
-
const { handleSelect, selectedData } = useSelect({
|
|
111
|
-
props,
|
|
112
|
-
emit,
|
|
113
|
-
nodeDict,
|
|
114
|
-
getFlattedNodes
|
|
115
|
-
})
|
|
102
|
+
const { handleSelect, selectedData } = useSelect({ props, emit, nodeDict, getFlattedNodes })
|
|
116
103
|
|
|
117
|
-
const { checkedData, toggleCheck } = useCheck({
|
|
118
|
-
props,
|
|
119
|
-
emit,
|
|
120
|
-
nodeDict,
|
|
121
|
-
getFlattedNodes
|
|
122
|
-
})
|
|
104
|
+
const { checkedData, toggleCheck } = useCheck({ props, emit, nodeDict, getFlattedNodes })
|
|
123
105
|
|
|
124
106
|
const estimateSize = (): number => {
|
|
125
107
|
// 基于 style.scss 中节点稳态高度推算的默认值;
|
|
@@ -156,12 +138,7 @@ const virtualNodes = computed(() => {
|
|
|
156
138
|
const _nodes = nodes.value
|
|
157
139
|
return items.value.map((item) => {
|
|
158
140
|
const node = _nodes[item.index]!
|
|
159
|
-
return {
|
|
160
|
-
node,
|
|
161
|
-
key: node?.key ?? item.index,
|
|
162
|
-
offset: item.start,
|
|
163
|
-
index: item.index
|
|
164
|
-
}
|
|
141
|
+
return { node, key: node?.key ?? item.index, offset: item.start, index: item.index }
|
|
165
142
|
})
|
|
166
143
|
})
|
|
167
144
|
|