sh-view 2.7.8 → 2.8.0
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/other.js +8 -0
- package/package.json +4 -3
- package/packages/components/index.js +35 -35
- package/packages/components/{global-components/sh-alert → sh-alert}/index.vue +8 -15
- package/packages/components/{global-components/sh-badge → sh-badge}/index.vue +6 -5
- package/packages/components/{global-components/sh-calendar → sh-calendar}/index.vue +167 -36
- package/packages/components/{global-components/sh-date → sh-date}/index.vue +37 -9
- package/packages/components/{global-components/sh-drawer → sh-drawer}/index.vue +49 -27
- package/packages/components/{global-components/sh-form → sh-form}/js/useForm.js +2 -2
- package/packages/components/sh-header/index.vue +260 -0
- package/packages/components/sh-icon/css/font/icons.scss +135 -0
- package/packages/components/{global-components/sh-image → sh-image}/index.vue +2 -1
- package/packages/components/{global-components/sh-poptip → sh-poptip}/index.vue +1 -1
- package/packages/components/{global-components/sh-progress → sh-progress}/index.vue +2 -18
- package/packages/components/{global-components/sh-table → sh-table}/css/index.scss +18 -0
- package/packages/components/{global-components/sh-table → sh-table}/js/tableMethods.js +12 -20
- package/packages/components/{global-components/sh-table → sh-table}/js/useTable.js +4 -6
- package/packages/components/{global-components/sh-table → sh-table}/table.vue +217 -218
- package/packages/components/{global-components/sh-tabs → sh-tabs}/index.vue +97 -34
- package/packages/components/{global-components/sh-tree → sh-tree}/components/table-tree.vue +1 -2
- package/packages/components/{global-components/sh-tree → sh-tree}/css/index.scss +1 -0
- package/packages/components/{global-components/sh-tree → sh-tree}/index.vue +228 -217
- package/packages/components/{global-components/sh-tree → sh-tree}/mixin/treeProps.js +1 -1
- package/packages/index.js +39 -39
- package/packages/{components/other-components → other}/sh-cron-modal/tabs/cron-week-box.vue +126 -126
- package/packages/{components/other-components → other}/sh-menu/index.vue +3 -0
- package/packages/{components/other-components → other}/sh-menu/menu-item-content.vue +3 -3
- package/packages/other/sh-preview/components/sh-excel.vue +163 -0
- package/packages/{components/other-components → other}/sh-preview/index.vue +92 -89
- package/packages/vxeTable/css/index.scss +31 -8
- package/packages/vxeTable/render/cell/vxe-render-tree.vue +70 -63
- package/packages/vxeTable/render/filters/vxe-filter-input.vue +26 -25
- package/packages/vxeTable/render/filters/vxe-filter-time.vue +26 -0
- package/packages/vxeTable/render/globalRenders.jsx +26 -7
- package/packages/vxeTable/render/mixin/filter-hooks.js +31 -13
- package/packages/components/global-components/sh-header/index.vue +0 -278
- package/packages/components/global-components/sh-icon/css/font/icons.scss +0 -135
- package/packages/components/other-components/sh-preview/components/sh-excel.vue +0 -929
- /package/packages/components/{global-components/sh-card → sh-card}/index.vue +0 -0
- /package/packages/components/{global-components/sh-code-editor → sh-code-editor}/index.vue +0 -0
- /package/packages/components/{global-components/sh-code-editor → sh-code-editor}/themes/dark.js +0 -0
- /package/packages/components/{global-components/sh-code-editor → sh-code-editor}/themes/dracula.js +0 -0
- /package/packages/components/{global-components/sh-code-editor → sh-code-editor}/themes/index.js +0 -0
- /package/packages/components/{global-components/sh-col → sh-col}/css/index.scss +0 -0
- /package/packages/components/{global-components/sh-col → sh-col}/index.vue +0 -0
- /package/packages/components/{global-components/sh-corner → sh-corner}/index.vue +0 -0
- /package/packages/components/{global-components/sh-count-to → sh-count-to}/index.vue +0 -0
- /package/packages/components/{global-components/sh-drawer → sh-drawer}/scrollbar.js +0 -0
- /package/packages/components/{global-components/sh-empty → sh-empty}/index.vue +0 -0
- /package/packages/components/{global-components/sh-form → sh-form}/form.vue +0 -0
- /package/packages/components/{global-components/sh-form → sh-form}/js/props.js +0 -0
- /package/packages/components/{global-components/sh-form → sh-form}/query.vue +0 -0
- /package/packages/components/{global-components/sh-icon → sh-icon}/css/default/icons.scss +0 -0
- /package/packages/components/{global-components/sh-icon → sh-icon}/css/default/ionicons.svg +0 -0
- /package/packages/components/{global-components/sh-icon → sh-icon}/css/default/ionicons.ttf +0 -0
- /package/packages/components/{global-components/sh-icon → sh-icon}/css/default/ionicons.woff +0 -0
- /package/packages/components/{global-components/sh-icon → sh-icon}/css/default/ionicons.woff2 +0 -0
- /package/packages/components/{global-components/sh-icon → sh-icon}/css/font/iconfont.js +0 -0
- /package/packages/components/{global-components/sh-icon → sh-icon}/css/font/iconfont.json +0 -0
- /package/packages/components/{global-components/sh-icon → sh-icon}/css/font/iconfont.ttf +0 -0
- /package/packages/components/{global-components/sh-icon → sh-icon}/css/font/iconfont.woff +0 -0
- /package/packages/components/{global-components/sh-icon → sh-icon}/css/font/iconfont.woff2 +0 -0
- /package/packages/components/{global-components/sh-icon → sh-icon}/css/index.scss +0 -0
- /package/packages/components/{global-components/sh-icon → sh-icon}/index.vue +0 -0
- /package/packages/components/{global-components/sh-list → sh-list}/index.vue +0 -0
- /package/packages/components/{global-components/sh-loading → sh-loading}/index.vue +0 -0
- /package/packages/components/{global-components/sh-modal → sh-modal}/index.vue +0 -0
- /package/packages/components/{global-components/sh-noticebar → sh-noticebar}/index.vue +0 -0
- /package/packages/components/{global-components/sh-pull-refresh → sh-pull-refresh}/index.vue +0 -0
- /package/packages/components/{global-components/sh-result → sh-result}/index.vue +0 -0
- /package/packages/components/{global-components/sh-row → sh-row}/css/index.scss +0 -0
- /package/packages/components/{global-components/sh-row → sh-row}/index.vue +0 -0
- /package/packages/components/{global-components/sh-split → sh-split}/components/trigger.vue +0 -0
- /package/packages/components/{global-components/sh-split → sh-split}/index.vue +0 -0
- /package/packages/components/{global-components/sh-table → sh-table}/components/importModal.vue +0 -0
- /package/packages/components/{global-components/sh-table → sh-table}/components/sh-column.vue +0 -0
- /package/packages/components/{global-components/sh-table → sh-table}/grid.vue +0 -0
- /package/packages/components/{global-components/sh-table → sh-table}/js/excel_to_json.js +0 -0
- /package/packages/components/{global-components/sh-table → sh-table}/js/props.js +0 -0
- /package/packages/components/{global-components/sh-tag → sh-tag}/index.vue +0 -0
- /package/packages/components/{global-components/sh-toolbar → sh-toolbar}/index.vue +0 -0
- /package/packages/components/{global-components/sh-upload → sh-upload}/index.vue +0 -0
- /package/packages/components/{global-components/sh-upload → sh-upload}/js/ajax.js +0 -0
- /package/packages/components/{global-components/sh-water-fall → sh-water-fall}/index.vue +0 -0
- /package/packages/components/{global-components/sh-water-mark → sh-water-mark}/index.vue +0 -0
- /package/packages/{components/other-components → other}/sh-cron-modal/components/cron-content.vue +0 -0
- /package/packages/{components/other-components → other}/sh-cron-modal/css/index.scss +0 -0
- /package/packages/{components/other-components → other}/sh-cron-modal/index.vue +0 -0
- /package/packages/{components/other-components → other}/sh-cron-modal/mixin/cron-emits.js +0 -0
- /package/packages/{components/other-components → other}/sh-cron-modal/mixin/cron-hooks.js +0 -0
- /package/packages/{components/other-components → other}/sh-cron-modal/mixin/cron-props.js +0 -0
- /package/packages/{components/other-components → other}/sh-cron-modal/tabs/cron-day-box.vue +0 -0
- /package/packages/{components/other-components → other}/sh-cron-modal/tabs/cron-hour-box.vue +0 -0
- /package/packages/{components/other-components → other}/sh-cron-modal/tabs/cron-minute-box.vue +0 -0
- /package/packages/{components/other-components → other}/sh-cron-modal/tabs/cron-month-box.vue +0 -0
- /package/packages/{components/other-components → other}/sh-cron-modal/tabs/cron-second-box.vue +0 -0
- /package/packages/{components/other-components → other}/sh-cron-modal/tabs/cron-year-box.vue +0 -0
- /package/packages/{components/other-components → other}/sh-cron-modal/utils/index.js +0 -0
- /package/packages/{components/other-components → other}/sh-markdown/index.vue +0 -0
- /package/packages/{components/other-components → other}/sh-markdown/tinymce/langs/zh-Hans.js +0 -0
- /package/packages/{components/other-components → other}/sh-markdown/tinymce/skins/content/default/content.css +0 -0
- /package/packages/{components/other-components → other}/sh-markdown/tinymce/skins/ui/oxide/content.css +0 -0
- /package/packages/{components/other-components → other}/sh-markdown/tinymce/skins/ui/oxide/content.inline.css +0 -0
- /package/packages/{components/other-components → other}/sh-markdown/tinymce/skins/ui/oxide/content.inline.min.css +0 -0
- /package/packages/{components/other-components → other}/sh-markdown/tinymce/skins/ui/oxide/content.min.css +0 -0
- /package/packages/{components/other-components → other}/sh-markdown/tinymce/skins/ui/oxide/content.mobile.css +0 -0
- /package/packages/{components/other-components → other}/sh-markdown/tinymce/skins/ui/oxide/content.mobile.min.css +0 -0
- /package/packages/{components/other-components → other}/sh-markdown/tinymce/skins/ui/oxide/fonts/tinymce-mobile.woff +0 -0
- /package/packages/{components/other-components → other}/sh-markdown/tinymce/skins/ui/oxide/skin.css +0 -0
- /package/packages/{components/other-components → other}/sh-markdown/tinymce/skins/ui/oxide/skin.min.css +0 -0
- /package/packages/{components/other-components → other}/sh-markdown/tinymce/skins/ui/oxide/skin.mobile.css +0 -0
- /package/packages/{components/other-components → other}/sh-markdown/tinymce/skins/ui/oxide/skin.mobile.min.css +0 -0
- /package/packages/{components/other-components → other}/sh-markdown/tinymce/skins/ui/oxide/skin.shadowdom.css +0 -0
- /package/packages/{components/other-components → other}/sh-markdown/tinymce/skins/ui/oxide/skin.shadowdom.min.css +0 -0
- /package/packages/{components/other-components → other}/sh-menu/menu-group-content.vue +0 -0
- /package/packages/{components/other-components → other}/sh-menu-card/index.vue +0 -0
- /package/packages/{components/other-components → other}/sh-menu-card/menu-box.vue +0 -0
- /package/packages/{components/other-components → other}/sh-preview/components/sh-word.vue +0 -0
- /package/packages/{components/other-components → other}/sh-preview/js/data-hook.js +0 -0
- /package/packages/{components/other-components → other}/sh-preview/js/data-props.js +0 -0
- /package/packages/{components/other-components → other}/sh-system-tip/index.vue +0 -0
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div class="sh-tabs" :class="
|
|
2
|
+
<div class="sh-tabs" :class="tabClass">
|
|
3
3
|
<div class="sh-tabs-nav">
|
|
4
4
|
<div v-if="slots.left" class="sh-tabs-nav-slot sh-tabs-nav-left"><slot name="left"></slot></div>
|
|
5
5
|
<div ref="navWrapRef" v-resize="handleResize" class="sh-tabs-nav-wrap" :class="{ 'sh-tabs-nav-scrollable': scrollable }">
|
|
6
|
-
<span v-if="scrollable" class="sh-tabs-nav-prev" :class="{ 'sh-tabs-nav-btn-disabled': scrollable }" @click="scrollPrev"
|
|
6
|
+
<span v-if="scrollable" class="sh-tabs-nav-prev" :class="{ 'sh-tabs-nav-btn-disabled': scrollable }" @click="scrollPrev">
|
|
7
|
+
<sh-icon :type="isHorizontal ? 'ios-arrow-up' : 'ios-arrow-back'"></sh-icon>
|
|
8
|
+
</span>
|
|
7
9
|
<div ref="navScrollRef" class="sh-tabs-nav-scroll" @DOMMouseScroll="handleScroll" @mousewheel="handleScroll">
|
|
8
10
|
<div ref="navRef" v-resize="handleResize" class="sh-tabs-nav-inner" :style="navStyle">
|
|
9
11
|
<template v-for="(tab, tabIndex) in tabList" :key="tabIndex">
|
|
@@ -20,17 +22,21 @@
|
|
|
20
22
|
</template>
|
|
21
23
|
</div>
|
|
22
24
|
</div>
|
|
23
|
-
<span v-if="scrollable" class="sh-tabs-nav-next" :class="{ 'sh-tabs-nav-btn-disabled': scrollable }" @click="scrollNext"
|
|
25
|
+
<span v-if="scrollable" class="sh-tabs-nav-next" :class="{ 'sh-tabs-nav-btn-disabled': scrollable }" @click="scrollNext">
|
|
26
|
+
<sh-icon :type="isHorizontal ? 'ios-arrow-down' : 'ios-arrow-forward'"></sh-icon>
|
|
27
|
+
</span>
|
|
24
28
|
</div>
|
|
25
29
|
<div v-if="slots.right" class="sh-tabs-nav-slot sh-tabs-nav-right"><slot name="right"></slot></div>
|
|
26
30
|
</div>
|
|
27
31
|
<div v-if="hasContent" class="sh-tabs-content">
|
|
28
32
|
<div ref="contentWrap" class="sh-tabs-content-wrap" :class="{ 'sh-tabs-content-animated': animated }" :style="contentStyle">
|
|
29
|
-
<
|
|
30
|
-
<
|
|
31
|
-
<
|
|
32
|
-
|
|
33
|
-
|
|
33
|
+
<slot name="tabContent" v-bind="tabList">
|
|
34
|
+
<template v-for="(tab, tabIndex) in tabList" :key="tabIndex">
|
|
35
|
+
<div class="sh-tabs-content-item">
|
|
36
|
+
<slot :name="tab[labelKey]" v-bind="tab">{{ tab[labelField] }}</slot>
|
|
37
|
+
</div>
|
|
38
|
+
</template>
|
|
39
|
+
</slot>
|
|
34
40
|
</div>
|
|
35
41
|
</div>
|
|
36
42
|
</div>
|
|
@@ -81,6 +87,10 @@ export default defineComponent({
|
|
|
81
87
|
gutter: {
|
|
82
88
|
type: Number,
|
|
83
89
|
default: 5
|
|
90
|
+
},
|
|
91
|
+
placement: {
|
|
92
|
+
type: String,
|
|
93
|
+
default: 'top' // 'left', 'right', 'top', 'bottom'
|
|
84
94
|
}
|
|
85
95
|
},
|
|
86
96
|
emits: ['update:modelValue', 'close', 'change'],
|
|
@@ -98,7 +108,15 @@ export default defineComponent({
|
|
|
98
108
|
const closedList = ref([])
|
|
99
109
|
const navStyle = ref({ transform: '' })
|
|
100
110
|
|
|
111
|
+
const isHorizontal = computed(() => ['left', 'right'].includes(props.placement))
|
|
101
112
|
const hasContent = computed(() => props.isContent && activeKey.value && props.options.map(item => item[props.labelKey]).includes(activeKey.value))
|
|
113
|
+
const tabClass = computed(() => {
|
|
114
|
+
return {
|
|
115
|
+
'sh-tabs-card': props.type === 'card',
|
|
116
|
+
'sh-tabs-reverse': ['bottom', 'right'].includes(props.placement),
|
|
117
|
+
[isHorizontal.value ? 'sh-tabs-horizontal' : 'sh-tabs-vertical']: true
|
|
118
|
+
}
|
|
119
|
+
})
|
|
102
120
|
const tabList = computed(() => props.options.filter(tab => !closedList.value.includes(tab[props.labelKey])) || [])
|
|
103
121
|
const contentStyle = computed(() => {
|
|
104
122
|
const x = tabList.value.findIndex(tab => tab[props.labelKey] === activeKey.value)
|
|
@@ -111,42 +129,55 @@ export default defineComponent({
|
|
|
111
129
|
})
|
|
112
130
|
|
|
113
131
|
const scrollPrev = () => {
|
|
114
|
-
const
|
|
132
|
+
const navScrollOffset = isHorizontal.value ? navScrollRef.value.offsetHeight : navScrollRef.value.offsetWidth
|
|
115
133
|
const currentOffset = getCurrentScrollOffset()
|
|
116
134
|
if (!currentOffset) return
|
|
117
|
-
let newOffset =
|
|
135
|
+
let newOffset = 0
|
|
136
|
+
if (currentOffset > navScrollOffset) {
|
|
137
|
+
newOffset = currentOffset - navScrollOffset
|
|
138
|
+
}
|
|
118
139
|
setOffset(newOffset)
|
|
119
140
|
}
|
|
120
141
|
const scrollNext = () => {
|
|
121
|
-
const
|
|
122
|
-
const
|
|
142
|
+
const navOffset = isHorizontal.value ? navRef.value.offsetHeight : navRef.value.offsetWidth
|
|
143
|
+
const containerOffset = isHorizontal.value ? navScrollRef.value.offsetHeight : navScrollRef.value.offsetWidth
|
|
123
144
|
const currentOffset = getCurrentScrollOffset()
|
|
124
|
-
if (
|
|
125
|
-
let newOffset =
|
|
145
|
+
if (navOffset - currentOffset <= containerOffset) return
|
|
146
|
+
let newOffset = navOffset - currentOffset > containerOffset * 2 ? currentOffset + containerOffset : navOffset - containerOffset
|
|
126
147
|
setOffset(newOffset)
|
|
127
148
|
}
|
|
128
149
|
const setOffset = value => {
|
|
129
|
-
|
|
150
|
+
const direction = isHorizontal.value ? 'Y' : 'X'
|
|
151
|
+
navStyle.value.transform = `translate${direction}(-${value}px)`
|
|
130
152
|
}
|
|
131
153
|
const getCurrentScrollOffset = () => {
|
|
132
|
-
|
|
154
|
+
if (navStyle.value.transform && isHorizontal.value) {
|
|
155
|
+
return Number(navStyle.value.transform.match(/translateY\(-(\d+(\.\d+)*)px\)/)[1])
|
|
156
|
+
} else if (navStyle.value.transform) {
|
|
157
|
+
return Number(navStyle.value.transform.match(/translateX\(-(\d+(\.\d+)*)px\)/)[1])
|
|
158
|
+
}
|
|
159
|
+
return 0
|
|
133
160
|
}
|
|
134
161
|
const getTabIsClosable = tab => {
|
|
135
162
|
return props.closable && !tab.disabled && !tab.unClosed
|
|
136
163
|
}
|
|
137
164
|
const getTabItemStyle = (tab, tabIndex) => {
|
|
138
|
-
|
|
139
|
-
|
|
165
|
+
let itemStyle = {}
|
|
166
|
+
if (isHorizontal.value) {
|
|
167
|
+
itemStyle.marginTop = tabIndex ? `${props.gutter}px` : 0
|
|
168
|
+
} else {
|
|
169
|
+
itemStyle.marginLeft = tabIndex ? `${props.gutter}px` : 0
|
|
140
170
|
}
|
|
171
|
+
return itemStyle
|
|
141
172
|
}
|
|
142
173
|
const handleResize = e => {
|
|
143
|
-
const
|
|
144
|
-
const
|
|
174
|
+
const navOffset = isHorizontal.value ? navRef.value.offsetHeight : navRef.value.offsetWidth
|
|
175
|
+
const containerOffset = isHorizontal.value ? navScrollRef.value.offsetHeight : navScrollRef.value.offsetWidth
|
|
145
176
|
const currentOffset = getCurrentScrollOffset()
|
|
146
|
-
if (
|
|
177
|
+
if (containerOffset < navOffset) {
|
|
147
178
|
scrollable.value = true
|
|
148
|
-
if (
|
|
149
|
-
setOffset(
|
|
179
|
+
if (navOffset - currentOffset < containerOffset) {
|
|
180
|
+
setOffset(navOffset - containerOffset)
|
|
150
181
|
}
|
|
151
182
|
} else {
|
|
152
183
|
scrollable.value = false
|
|
@@ -173,20 +204,21 @@ export default defineComponent({
|
|
|
173
204
|
activeKey.value = tab[props.labelKey]
|
|
174
205
|
emit('change', tab)
|
|
175
206
|
if (!scrollable.value) return
|
|
176
|
-
const
|
|
177
|
-
const
|
|
207
|
+
const navOffset = isHorizontal.value ? navRef.value.offsetHeight : navRef.value.offsetWidth
|
|
208
|
+
const containerOffset = isHorizontal.value ? navScrollRef.value.offsetHeight : navScrollRef.value.offsetWidth
|
|
178
209
|
const prevTabs = navRef.value.querySelectorAll('.sh-tab-item')
|
|
179
210
|
const tabIndex = tabList.value.findIndex(tb => tb[props.labelKey] === tab[props.labelKey])
|
|
211
|
+
const offsetName = isHorizontal.value ? 'offsetHeight' : 'offsetWidth'
|
|
180
212
|
let barOffset = 0
|
|
181
213
|
if (tabIndex > 0) {
|
|
182
214
|
let offset = 0
|
|
183
215
|
for (let i = 0; i < tabIndex; i++) {
|
|
184
|
-
offset += parseFloat(prevTabs[i]
|
|
216
|
+
offset += parseFloat(prevTabs[i][offsetName]) + props.gutter
|
|
185
217
|
}
|
|
186
218
|
barOffset = offset
|
|
187
219
|
}
|
|
188
|
-
let
|
|
189
|
-
setOffset(
|
|
220
|
+
let newOffset = navOffset - barOffset < containerOffset ? navOffset - containerOffset : barOffset
|
|
221
|
+
setOffset(newOffset)
|
|
190
222
|
}
|
|
191
223
|
const handleClose = tab => {
|
|
192
224
|
closedList.value.push(tab[props.labelKey])
|
|
@@ -222,8 +254,10 @@ export default defineComponent({
|
|
|
222
254
|
navScrollRef,
|
|
223
255
|
contentWrapRef,
|
|
224
256
|
slots,
|
|
257
|
+
isHorizontal,
|
|
225
258
|
scrollable,
|
|
226
259
|
navStyle,
|
|
260
|
+
tabClass,
|
|
227
261
|
tabList,
|
|
228
262
|
activeKey,
|
|
229
263
|
hasContent,
|
|
@@ -244,8 +278,8 @@ export default defineComponent({
|
|
|
244
278
|
<style scoped lang="scss">
|
|
245
279
|
.sh-tabs {
|
|
246
280
|
width: 100%;
|
|
247
|
-
display: block;
|
|
248
281
|
position: relative;
|
|
282
|
+
display: flex;
|
|
249
283
|
.sh-tab-close {
|
|
250
284
|
display: inline-flex;
|
|
251
285
|
align-items: center;
|
|
@@ -254,6 +288,37 @@ export default defineComponent({
|
|
|
254
288
|
background-color: rgba(0, 0, 0, 0.1);
|
|
255
289
|
}
|
|
256
290
|
}
|
|
291
|
+
&-vertical {
|
|
292
|
+
width: 100%;
|
|
293
|
+
flex-wrap: wrap;
|
|
294
|
+
flex-direction: column;
|
|
295
|
+
&.sh-tabs-reverse {
|
|
296
|
+
flex-direction: column-reverse;
|
|
297
|
+
}
|
|
298
|
+
.sh-tabs-nav {
|
|
299
|
+
width: 100%;
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
&-horizontal {
|
|
303
|
+
flex-wrap: nowrap;
|
|
304
|
+
flex-direction: row;
|
|
305
|
+
.sh-tabs-nav {
|
|
306
|
+
width: auto;
|
|
307
|
+
}
|
|
308
|
+
.sh-tabs-nav,
|
|
309
|
+
.sh-tabs-nav-wrap,
|
|
310
|
+
.sh-tabs-nav-inner {
|
|
311
|
+
flex-direction: column;
|
|
312
|
+
}
|
|
313
|
+
.sh-tabs-nav-prev,
|
|
314
|
+
.sh-tabs-nav-next {
|
|
315
|
+
width: 100%;
|
|
316
|
+
height: 26px;
|
|
317
|
+
}
|
|
318
|
+
&.sh-tabs-reverse {
|
|
319
|
+
flex-direction: row-reverse;
|
|
320
|
+
}
|
|
321
|
+
}
|
|
257
322
|
&-nav {
|
|
258
323
|
display: flex;
|
|
259
324
|
&-slot {
|
|
@@ -273,7 +338,7 @@ export default defineComponent({
|
|
|
273
338
|
display: inline-flex;
|
|
274
339
|
align-items: center;
|
|
275
340
|
justify-content: center;
|
|
276
|
-
box-shadow: 0 1px
|
|
341
|
+
box-shadow: 0 1px 5px rgba(0, 0, 0, 0.3);
|
|
277
342
|
position: relative;
|
|
278
343
|
z-index: 10;
|
|
279
344
|
&:hover {
|
|
@@ -301,9 +366,6 @@ export default defineComponent({
|
|
|
301
366
|
&:hover {
|
|
302
367
|
color: var(--vxe-primary-color);
|
|
303
368
|
}
|
|
304
|
-
& + .sh-tab-item {
|
|
305
|
-
margin-left: 5px;
|
|
306
|
-
}
|
|
307
369
|
&.sh-tab-item-active {
|
|
308
370
|
border-bottom: 2px solid var(--vxe-primary-darken-color);
|
|
309
371
|
color: var(--vxe-primary-color) !important;
|
|
@@ -346,8 +408,9 @@ export default defineComponent({
|
|
|
346
408
|
width: 100%;
|
|
347
409
|
&-wrap {
|
|
348
410
|
flex: 1;
|
|
349
|
-
|
|
411
|
+
display: flex;
|
|
350
412
|
white-space: nowrap;
|
|
413
|
+
width: 100%;
|
|
351
414
|
&.sh-tabs-content-animated {
|
|
352
415
|
transition: transform 0.2s ease-in-out;
|
|
353
416
|
}
|
|
@@ -23,7 +23,6 @@ import { defineComponent, computed, getCurrentInstance, ref, watch, onMounted }
|
|
|
23
23
|
// 树组件表格默认配置
|
|
24
24
|
const tableConfigDefault = {
|
|
25
25
|
autoResize: true,
|
|
26
|
-
syncResize: true,
|
|
27
26
|
stripe: false,
|
|
28
27
|
size: 'small', // medium / small / mini
|
|
29
28
|
border: 'inner',
|
|
@@ -77,7 +76,7 @@ export default defineComponent({
|
|
|
77
76
|
})
|
|
78
77
|
const tableProps = computed(() => {
|
|
79
78
|
return {
|
|
80
|
-
height: props.isSelect ? '
|
|
79
|
+
height: props.isSelect ? '100%' : props.height,
|
|
81
80
|
size: props.size,
|
|
82
81
|
loading: props.loading || treeLoading.value,
|
|
83
82
|
data: filterData.value || treeData.value,
|