vxe-pc-ui 3.17.26 → 3.17.28
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/es/color-picker/src/color-picker.js +11 -5
- package/es/color-picker/style.css +44 -35
- package/es/color-picker/style.min.css +1 -1
- package/es/drawer/src/drawer.js +11 -1
- package/es/drawer/style.css +10 -2
- package/es/drawer/style.min.css +1 -1
- package/es/icon/style.css +1 -1
- package/es/modal/src/modal.js +62 -14
- package/es/modal/style.css +31 -10
- package/es/modal/style.min.css +1 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/ui/index.js +5 -1
- package/es/ui/src/dom.js +9 -2
- package/es/ui/src/log.js +1 -1
- package/es/vxe-color-picker/style.css +44 -35
- package/es/vxe-color-picker/style.min.css +1 -1
- package/es/vxe-drawer/style.css +10 -2
- package/es/vxe-drawer/style.min.css +1 -1
- package/es/vxe-modal/style.css +31 -10
- package/es/vxe-modal/style.min.css +1 -1
- package/lib/color-picker/src/color-picker.js +6 -4
- package/lib/color-picker/src/color-picker.min.js +1 -1
- package/lib/color-picker/style/style.css +44 -35
- package/lib/color-picker/style/style.min.css +1 -1
- package/lib/drawer/src/drawer.js +16 -2
- package/lib/drawer/src/drawer.min.js +1 -1
- package/lib/drawer/style/style.css +10 -2
- package/lib/drawer/style/style.min.css +1 -1
- package/lib/icon/style/style.css +1 -1
- package/lib/icon/style/style.min.css +1 -1
- package/lib/index.umd.js +111 -29
- package/lib/index.umd.min.js +1 -1
- package/lib/modal/src/modal.js +74 -19
- package/lib/modal/src/modal.min.js +1 -1
- package/lib/modal/style/style.css +31 -10
- package/lib/modal/style/style.min.css +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/ui/index.js +5 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/dom.js +10 -2
- package/lib/ui/src/dom.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/lib/vxe-color-picker/style/style.css +44 -35
- package/lib/vxe-color-picker/style/style.min.css +1 -1
- package/lib/vxe-drawer/style/style.css +10 -2
- package/lib/vxe-drawer/style/style.min.css +1 -1
- package/lib/vxe-modal/style/style.css +31 -10
- package/lib/vxe-modal/style/style.min.css +1 -1
- package/package.json +1 -1
- package/packages/color-picker/src/color-picker.ts +11 -5
- package/packages/drawer/src/drawer.ts +11 -1
- package/packages/modal/src/modal.ts +62 -14
- package/packages/ui/index.ts +4 -0
- package/packages/ui/src/dom.ts +10 -2
- package/styles/components/color-picker.scss +35 -26
- package/styles/components/drawer.scss +15 -2
- package/styles/components/modal.scss +49 -10
- package/styles/theme/dark.scss +4 -1
- package/styles/theme/light.scss +3 -0
- package/styles/variable.scss +3 -0
- package/types/components/drawer.d.ts +4 -0
- package/types/components/modal.d.ts +9 -0
- /package/es/icon/{iconfont.1788319610241.ttf → iconfont.1788399110179.ttf} +0 -0
- /package/es/icon/{iconfont.1788319610241.woff → iconfont.1788399110179.woff} +0 -0
- /package/es/icon/{iconfont.1788319610241.woff2 → iconfont.1788399110179.woff2} +0 -0
- /package/es/{iconfont.1788319610241.ttf → iconfont.1788399110179.ttf} +0 -0
- /package/es/{iconfont.1788319610241.woff → iconfont.1788399110179.woff} +0 -0
- /package/es/{iconfont.1788319610241.woff2 → iconfont.1788399110179.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1788319610241.ttf → iconfont.1788399110179.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1788319610241.woff → iconfont.1788399110179.woff} +0 -0
- /package/lib/icon/style/{iconfont.1788319610241.woff2 → iconfont.1788399110179.woff2} +0 -0
- /package/lib/{iconfont.1788319610241.ttf → iconfont.1788399110179.ttf} +0 -0
- /package/lib/{iconfont.1788319610241.woff → iconfont.1788399110179.woff} +0 -0
- /package/lib/{iconfont.1788319610241.woff2 → iconfont.1788399110179.woff2} +0 -0
|
@@ -2,7 +2,7 @@ import { PropType, CreateElement, VNode } from 'vue'
|
|
|
2
2
|
import { defineVxeComponent } from '../../ui/src/comp'
|
|
3
3
|
import XEUtils from 'xe-utils'
|
|
4
4
|
import { VxeUI, getConfig, getI18n, getIcon, createEvent, globalEvents, globalMixins, renderEmptyElement, GLOBAL_EVENT_KEYS } from '../../ui'
|
|
5
|
-
import {
|
|
5
|
+
import { getEventTargetNode, getPopupAppendElement, getPopupWrapperElement, toCssUnit } from '../../ui/src/dom'
|
|
6
6
|
import { getLastZIndex, nextZIndex, getSubLastZIndex, nextSubZIndex, getFuncText, handleBooleanDefaultValue } from '../../ui/src/utils'
|
|
7
7
|
import VxeButtonComponent from '../../button'
|
|
8
8
|
import VxeLoadingComponent from '../../loading'
|
|
@@ -98,6 +98,14 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
98
98
|
default: () => getConfig().modal.confirmClosable
|
|
99
99
|
},
|
|
100
100
|
resize: Boolean as PropType<VxeModalPropTypes.Resize>,
|
|
101
|
+
border: {
|
|
102
|
+
type: Boolean as PropType<VxeModalPropTypes.Border>,
|
|
103
|
+
default: () => getConfig().modal.border
|
|
104
|
+
},
|
|
105
|
+
showTitleBackground: {
|
|
106
|
+
type: Boolean as PropType<VxeModalPropTypes.ShowTitleBackground>,
|
|
107
|
+
default: () => getConfig().modal.showTitleBackground
|
|
108
|
+
},
|
|
101
109
|
showHeader: {
|
|
102
110
|
type: Boolean as PropType<VxeModalPropTypes.ShowHeader>,
|
|
103
111
|
default: () => getConfig().modal.showHeader
|
|
@@ -171,6 +179,10 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
171
179
|
type: [String, Function] as PropType<VxeModalPropTypes.AppendTo>,
|
|
172
180
|
default: () => getConfig().modal.appendTo
|
|
173
181
|
},
|
|
182
|
+
isWithinAppendTo: {
|
|
183
|
+
type: Boolean as PropType<VxeModalPropTypes.IsWithinAppendTo>,
|
|
184
|
+
default: () => getConfig().modal.isWithinAppendTo
|
|
185
|
+
},
|
|
174
186
|
storage: {
|
|
175
187
|
type: Boolean as PropType<VxeModalPropTypes.Storage>,
|
|
176
188
|
default: () => getConfig().modal.storage
|
|
@@ -498,14 +510,19 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
498
510
|
const props = $xeModal
|
|
499
511
|
|
|
500
512
|
return $xeModal.$nextTick().then(() => {
|
|
501
|
-
const { position } = props
|
|
502
|
-
const
|
|
513
|
+
const { position, isWithinAppendTo } = props
|
|
514
|
+
const el = $xeModal.$refs.refElem as HTMLDivElement
|
|
503
515
|
const boxElem = $xeModal.getBox()
|
|
504
516
|
if (!boxElem) {
|
|
505
517
|
return
|
|
506
518
|
}
|
|
507
|
-
const
|
|
508
|
-
|
|
519
|
+
const parentWrapperEl = getPopupWrapperElement(isWithinAppendTo ? el : document.body)
|
|
520
|
+
if (!parentWrapperEl) {
|
|
521
|
+
return
|
|
522
|
+
}
|
|
523
|
+
const clientVisibleWidth = parentWrapperEl.clientWidth
|
|
524
|
+
const clientVisibleHeight = parentWrapperEl.clientHeight
|
|
525
|
+
const marginSize = XEUtils.toNumber(props.marginSize)
|
|
509
526
|
const isPosCenter = position === 'center'
|
|
510
527
|
const { top, left } = XEUtils.isString(position) ? { top: position, left: position } : Object.assign({}, position)
|
|
511
528
|
const topCenter = isPosCenter || top === 'center'
|
|
@@ -717,8 +734,10 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
717
734
|
},
|
|
718
735
|
handleMinimize () {
|
|
719
736
|
const $xeModal = this
|
|
737
|
+
const props = $xeModal
|
|
720
738
|
const reactData = $xeModal.reactData
|
|
721
739
|
|
|
740
|
+
const { isWithinAppendTo } = props
|
|
722
741
|
const zoomOpts = $xeModal.computeZoomOpts
|
|
723
742
|
const { minimizeLayout, minimizeMaxSize, minimizeHorizontalOffset, minimizeVerticalOffset, minimizeOffsetMethod } = zoomOpts
|
|
724
743
|
const isHorizontalLayout = minimizeLayout === 'horizontal'
|
|
@@ -751,6 +770,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
751
770
|
reactData.prevZoomStatus = prevZoomStatus
|
|
752
771
|
reactData.zoomStatus = 'minimize'
|
|
753
772
|
return $xeModal.$nextTick().then(() => {
|
|
773
|
+
const el = $xeModal.$refs.refElem as HTMLDivElement
|
|
754
774
|
const boxElem = $xeModal.getBox()
|
|
755
775
|
if (!boxElem) {
|
|
756
776
|
return {
|
|
@@ -763,7 +783,13 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
763
783
|
status: false
|
|
764
784
|
}
|
|
765
785
|
}
|
|
766
|
-
const
|
|
786
|
+
const parentWrapperEl = getPopupWrapperElement(isWithinAppendTo ? el : document.body)
|
|
787
|
+
if (!parentWrapperEl) {
|
|
788
|
+
return {
|
|
789
|
+
status: false
|
|
790
|
+
}
|
|
791
|
+
}
|
|
792
|
+
const visibleHeight = parentWrapperEl.clientHeight
|
|
767
793
|
// 如果当前处于复原状态
|
|
768
794
|
if (!prevZoomStatus) {
|
|
769
795
|
reactData.revertLocat = {
|
|
@@ -825,6 +851,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
825
851
|
const props = $xeModal
|
|
826
852
|
const reactData = $xeModal.reactData
|
|
827
853
|
|
|
854
|
+
const { isWithinAppendTo } = props
|
|
828
855
|
const prevZoomStatus = reactData.zoomStatus
|
|
829
856
|
reactData.prevZoomStatus = prevZoomStatus
|
|
830
857
|
reactData.zoomStatus = 'maximize'
|
|
@@ -833,9 +860,16 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
833
860
|
if (boxElem) {
|
|
834
861
|
// 如果当前处于复原状态
|
|
835
862
|
if (!prevZoomStatus) {
|
|
863
|
+
const el = $xeModal.$refs.refElem as HTMLDivElement
|
|
864
|
+
const parentWrapperEl = getPopupWrapperElement(isWithinAppendTo ? el : document.body)
|
|
865
|
+
if (!parentWrapperEl) {
|
|
866
|
+
return {
|
|
867
|
+
status: false
|
|
868
|
+
}
|
|
869
|
+
}
|
|
870
|
+
const clientVisibleWidth = parentWrapperEl.clientWidth
|
|
871
|
+
const clientVisibleHeight = parentWrapperEl.clientHeight
|
|
836
872
|
const marginSize = XEUtils.toNumber(props.marginSize)
|
|
837
|
-
const clientVisibleWidth = document.documentElement.clientWidth || document.body.clientWidth
|
|
838
|
-
const clientVisibleHeight = document.documentElement.clientHeight || document.body.clientHeight
|
|
839
873
|
reactData.revertLocat = {
|
|
840
874
|
top: Math.max(marginSize, clientVisibleHeight / 2 - boxElem.offsetHeight / 2),
|
|
841
875
|
left: Math.max(marginSize, clientVisibleWidth / 2 - boxElem.offsetWidth / 2),
|
|
@@ -1115,7 +1149,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
1115
1149
|
const props = $xeModal
|
|
1116
1150
|
const reactData = $xeModal.reactData
|
|
1117
1151
|
|
|
1118
|
-
const { storage } = props
|
|
1152
|
+
const { resize, storage, isWithinAppendTo } = props
|
|
1119
1153
|
const { zoomStatus } = reactData
|
|
1120
1154
|
const marginSize = XEUtils.toNumber(props.marginSize)
|
|
1121
1155
|
const boxElem = $xeModal.getBox()
|
|
@@ -1124,9 +1158,15 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
1124
1158
|
}
|
|
1125
1159
|
if (zoomStatus !== 'maximize' && evnt.button === 0 && !getEventTargetNode(evnt, boxElem, 'trigger--btn').flag) {
|
|
1126
1160
|
evnt.preventDefault()
|
|
1161
|
+
const el = $xeModal.$refs.refElem as HTMLDivElement
|
|
1162
|
+
const parentWrapperEl = getPopupWrapperElement(isWithinAppendTo ? el : document.body)
|
|
1163
|
+
if (!parentWrapperEl) {
|
|
1164
|
+
return
|
|
1165
|
+
}
|
|
1166
|
+
const visibleWidth = parentWrapperEl.clientWidth - (resize && isWithinAppendTo ? 8 : 0)
|
|
1167
|
+
const visibleHeight = parentWrapperEl.clientHeight - (resize && isWithinAppendTo ? 8 : 0)
|
|
1127
1168
|
const disX = evnt.clientX - boxElem.offsetLeft
|
|
1128
1169
|
const disY = evnt.clientY - boxElem.offsetTop
|
|
1129
|
-
const { visibleHeight, visibleWidth } = getDomNode()
|
|
1130
1170
|
document.onmousemove = evnt => {
|
|
1131
1171
|
evnt.preventDefault()
|
|
1132
1172
|
const offsetWidth = boxElem.offsetWidth
|
|
@@ -1176,8 +1216,14 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
1176
1216
|
const reactData = $xeModal.reactData
|
|
1177
1217
|
|
|
1178
1218
|
evnt.preventDefault()
|
|
1179
|
-
const { storage } = props
|
|
1180
|
-
const
|
|
1219
|
+
const { resize, storage, isWithinAppendTo } = props
|
|
1220
|
+
const el = $xeModal.$refs.refElem as HTMLDivElement
|
|
1221
|
+
const parentWrapperEl = getPopupWrapperElement(isWithinAppendTo ? el : document.body)
|
|
1222
|
+
if (!parentWrapperEl) {
|
|
1223
|
+
return
|
|
1224
|
+
}
|
|
1225
|
+
const visibleWidth = parentWrapperEl.clientWidth - (resize && isWithinAppendTo ? 8 : 0)
|
|
1226
|
+
const visibleHeight = parentWrapperEl.clientHeight - (resize && isWithinAppendTo ? 8 : 0)
|
|
1181
1227
|
const marginSize = XEUtils.toNumber(props.marginSize)
|
|
1182
1228
|
const targetElem = evnt.target as HTMLSpanElement
|
|
1183
1229
|
const type = targetElem.getAttribute('data-type')
|
|
@@ -1562,7 +1608,7 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
1562
1608
|
const slots = $xeModal.$scopedSlots
|
|
1563
1609
|
const reactData = $xeModal.reactData
|
|
1564
1610
|
|
|
1565
|
-
const { slots: propSlots = {}, className, type, animat, draggable, iconStatus, position, loading, destroyOnClose, status, lockScroll, padding, lockView, mask, resize } = props
|
|
1611
|
+
const { border, showTitleBackground, slots: propSlots = {}, className, type, animat, draggable, iconStatus, position, loading, destroyOnClose, status, lockScroll, padding, lockView, mask, resize, isWithinAppendTo } = props
|
|
1566
1612
|
const { initialized, modalTop, contentVisible, visible, zoomStatus } = reactData
|
|
1567
1613
|
const asideSlot = slots.aside || propSlots.aside
|
|
1568
1614
|
const vSize = $xeModal.computeSize
|
|
@@ -1575,10 +1621,12 @@ export default /* define-vxe-component start */ defineVxeComponent({
|
|
|
1575
1621
|
}
|
|
1576
1622
|
return h('div', {
|
|
1577
1623
|
ref: 'refElem',
|
|
1578
|
-
class: ['vxe-modal--wrapper', `type--${type}`, `zoom--${zoomStatus || 'revert'}`, className || '', position ? `pos--${position}` : '', {
|
|
1624
|
+
class: ['vxe-modal--wrapper', `type--${type}`, `zoom--${zoomStatus || 'revert'}`, className || '', position ? `pos--${position}` : '', isWithinAppendTo ? 'ctx--within' : 'ctx--free', {
|
|
1579
1625
|
[`size--${vSize}`]: vSize,
|
|
1580
1626
|
[`status--${status}`]: status,
|
|
1581
1627
|
'is--padding': padding,
|
|
1628
|
+
'is--border': border,
|
|
1629
|
+
'is--title-bg': showTitleBackground,
|
|
1582
1630
|
'is--animat': animat,
|
|
1583
1631
|
'lock--scroll': lockScroll,
|
|
1584
1632
|
'lock--view': lockView,
|
package/packages/ui/index.ts
CHANGED
|
@@ -148,6 +148,8 @@ setConfig({
|
|
|
148
148
|
// useHtml: false,
|
|
149
149
|
position: 'right',
|
|
150
150
|
showHeader: true,
|
|
151
|
+
// showTitleBackground: false,
|
|
152
|
+
border: true,
|
|
151
153
|
lockView: true,
|
|
152
154
|
mask: true,
|
|
153
155
|
showTitleOverflow: true,
|
|
@@ -258,6 +260,8 @@ setConfig({
|
|
|
258
260
|
// size: null,
|
|
259
261
|
top: 16,
|
|
260
262
|
showHeader: true,
|
|
263
|
+
// showTitleBackground: false,
|
|
264
|
+
border: true,
|
|
261
265
|
// useHtml: false,
|
|
262
266
|
// width: null,
|
|
263
267
|
// height: null,
|
package/packages/ui/src/dom.ts
CHANGED
|
@@ -202,8 +202,7 @@ export function updatePanelPlacement (targetElem: HTMLElement | null | undefined
|
|
|
202
202
|
const stys: Record<string, string> = {}
|
|
203
203
|
if (panelElem && targetElem) {
|
|
204
204
|
const bodyEl = document.body
|
|
205
|
-
const
|
|
206
|
-
const parentWrapperEl = parentEl === bodyEl ? document.documentElement : parentEl
|
|
205
|
+
const parentWrapperEl = getPopupWrapperElement(panelElem)
|
|
207
206
|
if (parentWrapperEl) {
|
|
208
207
|
const targetWidth = targetElem.offsetWidth
|
|
209
208
|
const targetHeight = targetElem.offsetHeight
|
|
@@ -328,6 +327,15 @@ export function updatePanelPlacement (targetElem: HTMLElement | null | undefined
|
|
|
328
327
|
}
|
|
329
328
|
}
|
|
330
329
|
|
|
330
|
+
export function getPopupWrapperElement (panelElem: HTMLElement | null | undefined) {
|
|
331
|
+
if (!panelElem) {
|
|
332
|
+
return null
|
|
333
|
+
}
|
|
334
|
+
const bodyEl = document.body
|
|
335
|
+
const parentEl = panelElem.parentElement
|
|
336
|
+
return (parentEl === bodyEl ? document.documentElement : parentEl) || null
|
|
337
|
+
}
|
|
338
|
+
|
|
331
339
|
export function getPopupContainer (appendTo: string | HTMLElement | ((params: any) => string | HTMLElement) | undefined) {
|
|
332
340
|
const selectElem = appendTo && XEUtils.isFunction(appendTo) ? appendTo({}) : appendTo
|
|
333
341
|
return selectElem || 'body'
|
|
@@ -1,6 +1,34 @@
|
|
|
1
1
|
@use '../helpers/baseMixin.scss';
|
|
2
2
|
@use '../helpers/placement.scss';
|
|
3
3
|
|
|
4
|
+
// 局部变量
|
|
5
|
+
.vxe-color-picker,
|
|
6
|
+
.vxe-color-picker--readonly,
|
|
7
|
+
.vxe-color-picker--panel {
|
|
8
|
+
--vxe-ui-color-picker-current-font-size: var(--vxe-ui-font-size-default);
|
|
9
|
+
--vxe-ui-color-picker-current-height: var(--vxe-ui-input-height-default);
|
|
10
|
+
&.size--xlarge {
|
|
11
|
+
--vxe-ui-color-picker-current-font-size: var(--vxe-ui-font-size-xlarge);
|
|
12
|
+
--vxe-ui-color-picker-current-height: var(--vxe-ui-input-height-xlarge);
|
|
13
|
+
}
|
|
14
|
+
&.size--large {
|
|
15
|
+
--vxe-ui-color-picker-current-font-size: var(--vxe-ui-font-size-large);
|
|
16
|
+
--vxe-ui-color-picker-current-height: var(--vxe-ui-input-height-large);
|
|
17
|
+
}
|
|
18
|
+
&.size--medium {
|
|
19
|
+
--vxe-ui-color-picker-current-font-size: var(--vxe-ui-font-size-medium);
|
|
20
|
+
--vxe-ui-color-picker-current-height: var(--vxe-ui-input-height-medium);
|
|
21
|
+
}
|
|
22
|
+
&.size--small {
|
|
23
|
+
--vxe-ui-color-picker-current-font-size: var(--vxe-ui-font-size-small);
|
|
24
|
+
--vxe-ui-color-picker-current-height: var(--vxe-ui-input-height-small);
|
|
25
|
+
}
|
|
26
|
+
&.size--mini {
|
|
27
|
+
--vxe-ui-color-picker-current-font-size: var(--vxe-ui-font-size-mini);
|
|
28
|
+
--vxe-ui-color-picker-current-height: var(--vxe-ui-input-height-mini);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
|
|
4
32
|
.vxe-color-picker {
|
|
5
33
|
&.is--selected {
|
|
6
34
|
.vxe-color-picker--inner-color {
|
|
@@ -24,8 +52,10 @@
|
|
|
24
52
|
|
|
25
53
|
.vxe-color-picker--inner,
|
|
26
54
|
.vxe-color-picker--preview-btn,
|
|
27
|
-
.vxe-color-picker--bar-alpha-slider
|
|
28
|
-
|
|
55
|
+
.vxe-color-picker--bar-alpha-slider,
|
|
56
|
+
.vxe-color-picker--readonly-color.is--empty {
|
|
57
|
+
background-color: #ffffff;
|
|
58
|
+
background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAWElEQVRIiWM8fubkfwYygKWJOSM5+mCAhRLNoxaPWjxq8ajFoxbTyeL/DAfJ0Xjs3Cl7Siwmu4Yht1aDgZEYx6MWj1o8avGoxaMWD3qLya5X//4nqx6HAQC7RBGFzolqTAAAAABJRU5ErkJggg==);
|
|
29
59
|
}
|
|
30
60
|
|
|
31
61
|
.vxe-color-picker--inner,
|
|
@@ -378,33 +408,12 @@
|
|
|
378
408
|
|
|
379
409
|
.vxe-color-picker,
|
|
380
410
|
.vxe-color-picker--readonly {
|
|
381
|
-
height: var(--vxe-ui-
|
|
382
|
-
line-height: var(--vxe-ui-
|
|
383
|
-
&.size--medium {
|
|
384
|
-
height: var(--vxe-ui-input-height-medium);
|
|
385
|
-
line-height: var(--vxe-ui-input-height-medium);
|
|
386
|
-
}
|
|
387
|
-
&.size--small {
|
|
388
|
-
height: var(--vxe-ui-input-height-small);
|
|
389
|
-
line-height: var(--vxe-ui-input-height-small);
|
|
390
|
-
}
|
|
391
|
-
&.size--mini {
|
|
392
|
-
height: var(--vxe-ui-input-height-mini);
|
|
393
|
-
line-height: var(--vxe-ui-input-height-mini);
|
|
394
|
-
}
|
|
411
|
+
height: var(--vxe-ui-color-picker-current-height);
|
|
412
|
+
line-height: var(--vxe-ui-color-picker-current-height);
|
|
395
413
|
}
|
|
396
414
|
|
|
397
415
|
.vxe-color-picker,
|
|
398
416
|
.vxe-color-picker--readonly,
|
|
399
417
|
.vxe-color-picker--panel {
|
|
400
|
-
font-size: var(--vxe-ui-font-size
|
|
401
|
-
&.size--medium {
|
|
402
|
-
font-size: var(--vxe-ui-font-size-medium);
|
|
403
|
-
}
|
|
404
|
-
&.size--small {
|
|
405
|
-
font-size: var(--vxe-ui-font-size-small);
|
|
406
|
-
}
|
|
407
|
-
&.size--mini {
|
|
408
|
-
font-size: var(--vxe-ui-font-size-mini);
|
|
409
|
-
}
|
|
418
|
+
font-size: var(--vxe-ui-color-picker-current-font-size);
|
|
410
419
|
}
|
|
@@ -128,7 +128,6 @@
|
|
|
128
128
|
flex-direction: row;
|
|
129
129
|
position: fixed;
|
|
130
130
|
background-color: var(--vxe-ui-layout-background-color);
|
|
131
|
-
border: 1px solid var(--vxe-ui-base-popup-border-color);
|
|
132
131
|
text-align: left;
|
|
133
132
|
pointer-events: auto;
|
|
134
133
|
opacity: 0;
|
|
@@ -204,7 +203,6 @@
|
|
|
204
203
|
flex-shrink: 0;
|
|
205
204
|
font-size: 1.1em;
|
|
206
205
|
font-weight: 700;
|
|
207
|
-
border-bottom: 1px solid var(--vxe-ui-base-popup-border-color);
|
|
208
206
|
&.is--ellipsis {
|
|
209
207
|
.vxe-drawer--header-title {
|
|
210
208
|
overflow: hidden;
|
|
@@ -213,6 +211,21 @@
|
|
|
213
211
|
}
|
|
214
212
|
}
|
|
215
213
|
}
|
|
214
|
+
.vxe-drawer--wrapper {
|
|
215
|
+
&.is--title-bg {
|
|
216
|
+
.vxe-drawer--header {
|
|
217
|
+
background-color: var(--vxe-ui-drawer-header-background-color);
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
&.is--border {
|
|
221
|
+
.vxe-drawer--header {
|
|
222
|
+
border-bottom: 1px solid var(--vxe-ui-base-popup-border-color);
|
|
223
|
+
}
|
|
224
|
+
.vxe-drawer--box {
|
|
225
|
+
border: 1px solid var(--vxe-ui-base-popup-border-color);
|
|
226
|
+
}
|
|
227
|
+
}
|
|
228
|
+
}
|
|
216
229
|
.vxe-drawer--header-title {
|
|
217
230
|
flex-grow: 1;
|
|
218
231
|
padding: 0.6em 0 0.6em 1em;
|
|
@@ -13,7 +13,6 @@ html[data-vxe-lock-scroll] {
|
|
|
13
13
|
width: 420px;
|
|
14
14
|
background-color: var(--vxe-ui-layout-background-color);
|
|
15
15
|
border-radius: var(--vxe-ui-base-border-radius);
|
|
16
|
-
border: 1px solid var(--vxe-ui-base-popup-border-color);
|
|
17
16
|
text-align: left;
|
|
18
17
|
pointer-events: auto;
|
|
19
18
|
opacity: 0;
|
|
@@ -215,15 +214,48 @@ html[data-vxe-lock-scroll] {
|
|
|
215
214
|
|
|
216
215
|
.vxe-modal--wrapper {
|
|
217
216
|
display: none;
|
|
218
|
-
position: fixed;
|
|
219
217
|
top: 0;
|
|
220
218
|
left: 0;
|
|
221
219
|
line-height: 1.5;
|
|
222
|
-
width: calc(100% + 18px);
|
|
223
|
-
height: calc(100% + 18px);
|
|
224
220
|
color: var(--vxe-ui-font-color);
|
|
225
221
|
font-family: var(--vxe-ui-font-family);
|
|
226
222
|
outline: 0;
|
|
223
|
+
&.ctx--free {
|
|
224
|
+
width: calc(100% + 18px);
|
|
225
|
+
height: calc(100% + 18px);
|
|
226
|
+
position: fixed;
|
|
227
|
+
&.lock--view,
|
|
228
|
+
&.is--mask {
|
|
229
|
+
&:before {
|
|
230
|
+
position: fixed;
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
&.type--modal,
|
|
234
|
+
&.type--alert,
|
|
235
|
+
&.type--confirm {
|
|
236
|
+
.vxe-modal--box {
|
|
237
|
+
position: fixed;
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
&.ctx--within {
|
|
242
|
+
width: 100%;
|
|
243
|
+
height: 100%;
|
|
244
|
+
position: absolute;
|
|
245
|
+
&.lock--view,
|
|
246
|
+
&.is--mask {
|
|
247
|
+
&:before {
|
|
248
|
+
position: absolute;
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
&.type--modal,
|
|
252
|
+
&.type--alert,
|
|
253
|
+
&.type--confirm {
|
|
254
|
+
.vxe-modal--box {
|
|
255
|
+
position: absolute;
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
}
|
|
227
259
|
&.is--active {
|
|
228
260
|
display: block;
|
|
229
261
|
}
|
|
@@ -303,7 +335,6 @@ html[data-vxe-lock-scroll] {
|
|
|
303
335
|
&.is--mask {
|
|
304
336
|
&:before {
|
|
305
337
|
content: "";
|
|
306
|
-
position: fixed;
|
|
307
338
|
top: 0;
|
|
308
339
|
left: 0;
|
|
309
340
|
width: 100%;
|
|
@@ -398,18 +429,26 @@ html[data-vxe-lock-scroll] {
|
|
|
398
429
|
&.type--modal,
|
|
399
430
|
&.type--alert,
|
|
400
431
|
&.type--confirm {
|
|
432
|
+
&.is--title-bg {
|
|
433
|
+
.vxe-modal--header {
|
|
434
|
+
background-color: var(--vxe-ui-modal-header-background-color);
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
&.is--border {
|
|
438
|
+
.vxe-modal--header {
|
|
439
|
+
border-bottom: 1px solid var(--vxe-ui-input-border-color);
|
|
440
|
+
}
|
|
441
|
+
.vxe-modal--box {
|
|
442
|
+
border: 1px solid var(--vxe-ui-base-popup-border-color);
|
|
443
|
+
}
|
|
444
|
+
}
|
|
401
445
|
.vxe-modal--box {
|
|
402
446
|
display: flex;
|
|
403
447
|
flex-direction: row;
|
|
404
|
-
position: fixed;
|
|
405
448
|
left: 50%;
|
|
406
449
|
top: 0;
|
|
407
450
|
box-shadow: var(--vxe-ui-base-popup-box-shadow);
|
|
408
451
|
}
|
|
409
|
-
.vxe-modal--header {
|
|
410
|
-
border-bottom: 1px solid var(--vxe-ui-input-border-color);
|
|
411
|
-
background-color: var(--vxe-ui-modal-header-background-color);
|
|
412
|
-
}
|
|
413
452
|
.vxe-modal--body {
|
|
414
453
|
overflow: auto;
|
|
415
454
|
.vxe-modal--content {
|
package/styles/theme/dark.scss
CHANGED
|
@@ -66,8 +66,11 @@
|
|
|
66
66
|
/*number-input*/
|
|
67
67
|
--vxe-ui-number-input-control-button-color: #262727;
|
|
68
68
|
|
|
69
|
+
/*drawer*/
|
|
70
|
+
--vxe-ui-drawer-header-background-color: rgba(123, 123, 123, 0.1);
|
|
71
|
+
|
|
69
72
|
/*modal*/
|
|
70
|
-
--vxe-ui-modal-header-background-color:
|
|
73
|
+
--vxe-ui-modal-header-background-color: rgba(123, 123, 123, 0.1);
|
|
71
74
|
|
|
72
75
|
/*tabs*/
|
|
73
76
|
--vxe-ui-tabs-card-header-background-color: #1d1e1f;
|
package/styles/theme/light.scss
CHANGED
|
@@ -65,6 +65,9 @@
|
|
|
65
65
|
/*number-input*/
|
|
66
66
|
--vxe-ui-number-input-control-button-color: #f5f7fa;
|
|
67
67
|
|
|
68
|
+
/*drawer*/
|
|
69
|
+
--vxe-ui-drawer-header-background-color: #{light_variable.$vxe-ui-drawer-header-background-color};
|
|
70
|
+
|
|
68
71
|
/*modal*/
|
|
69
72
|
--vxe-ui-modal-header-background-color: #{light_variable.$vxe-ui-modal-header-background-color};
|
|
70
73
|
|
package/styles/variable.scss
CHANGED
|
@@ -58,6 +58,9 @@ $vxe-ui-input-border-color: #dcdfe6 !default;
|
|
|
58
58
|
$vxe-ui-input-placeholder-color: #C0C4CC !default;
|
|
59
59
|
$vxe-ui-input-disabled-background-color: #f3f3f3 !default;
|
|
60
60
|
|
|
61
|
+
/*drawer*/
|
|
62
|
+
$vxe-ui-drawer-header-background-color: #F8F8F8 !default;
|
|
63
|
+
|
|
61
64
|
/*modal*/
|
|
62
65
|
$vxe-ui-modal-header-background-color: #F8F8F8 !default;
|
|
63
66
|
|
|
@@ -31,6 +31,7 @@ export namespace VxeDrawerPropTypes {
|
|
|
31
31
|
export type ModelValue = boolean
|
|
32
32
|
export type ID = string | null
|
|
33
33
|
export type Loading = boolean
|
|
34
|
+
export type Border = boolean
|
|
34
35
|
export type ClassName = string
|
|
35
36
|
export type Position = DrawerPosition
|
|
36
37
|
export type Title = string | number
|
|
@@ -54,6 +55,7 @@ export namespace VxeDrawerPropTypes {
|
|
|
54
55
|
export type Width = number | string
|
|
55
56
|
export type Height = number | string
|
|
56
57
|
export type Resize = boolean
|
|
58
|
+
export type ShowTitleBackground = boolean
|
|
57
59
|
export type ZIndex = number
|
|
58
60
|
export type DestroyOnClose = boolean
|
|
59
61
|
export type ShowTitleOverflow = boolean
|
|
@@ -69,6 +71,7 @@ export interface VxeDrawerProps {
|
|
|
69
71
|
value?: VxeDrawerPropTypes.ModelValue
|
|
70
72
|
id?: VxeDrawerPropTypes.ID
|
|
71
73
|
loading?: VxeDrawerPropTypes.Loading
|
|
74
|
+
border?: VxeDrawerPropTypes.Border
|
|
72
75
|
className?: VxeDrawerPropTypes.ClassName
|
|
73
76
|
position?: VxeDrawerPropTypes.Position
|
|
74
77
|
title?: VxeDrawerPropTypes.Title
|
|
@@ -85,6 +88,7 @@ export interface VxeDrawerProps {
|
|
|
85
88
|
escClosable?: VxeDrawerPropTypes.EscClosable
|
|
86
89
|
cancelClosable?: VxeDrawerPropTypes.CancelClosable
|
|
87
90
|
confirmClosable?: VxeDrawerPropTypes.ConfirmClosable
|
|
91
|
+
showTitleBackground?: VxeDrawerPropTypes.ShowTitleBackground
|
|
88
92
|
showHeader?: VxeDrawerPropTypes.ShowHeader
|
|
89
93
|
showFooter?: VxeDrawerPropTypes.ShowFooter
|
|
90
94
|
showClose?: VxeDrawerPropTypes.ShowClose
|
|
@@ -44,6 +44,7 @@ export namespace VxeModalPropTypes {
|
|
|
44
44
|
export type Loading = boolean
|
|
45
45
|
export type Status = ModalStatus
|
|
46
46
|
export type IconStatus = string
|
|
47
|
+
export type Border = boolean
|
|
47
48
|
export type ClassName = string
|
|
48
49
|
export type Top = number | string
|
|
49
50
|
export type Position = 'center' | 'top-left' | 'top-right' | ModalPosition
|
|
@@ -68,6 +69,7 @@ export namespace VxeModalPropTypes {
|
|
|
68
69
|
export type CancelClosable = boolean
|
|
69
70
|
export type ConfirmClosable = boolean
|
|
70
71
|
export type Resize = boolean
|
|
72
|
+
export type ShowTitleBackground = boolean
|
|
71
73
|
export type ShowHeader = boolean
|
|
72
74
|
export type ShowFooter = boolean
|
|
73
75
|
export type ShowZoom = boolean
|
|
@@ -109,6 +111,7 @@ export namespace VxeModalPropTypes {
|
|
|
109
111
|
export type ShowTitleOverflow = boolean
|
|
110
112
|
export type Transfer = boolean
|
|
111
113
|
export type AppendTo = string | HTMLElement | ((params: {}) => string | HTMLElement)
|
|
114
|
+
export type IsWithinAppendTo = boolean
|
|
112
115
|
export type Storage = boolean
|
|
113
116
|
export type StorageKey = string
|
|
114
117
|
export type Animat = boolean
|
|
@@ -127,6 +130,7 @@ export interface VxeModalProps {
|
|
|
127
130
|
loading?: VxeModalPropTypes.Loading
|
|
128
131
|
status?: VxeModalPropTypes.Status
|
|
129
132
|
iconStatus?: VxeModalPropTypes.IconStatus
|
|
133
|
+
border?: VxeModalPropTypes.Border
|
|
130
134
|
className?: VxeModalPropTypes.ClassName
|
|
131
135
|
top?: VxeModalPropTypes.Top
|
|
132
136
|
position?: VxeModalPropTypes.Position
|
|
@@ -146,6 +150,7 @@ export interface VxeModalProps {
|
|
|
146
150
|
cancelClosable?: VxeModalPropTypes.CancelClosable
|
|
147
151
|
confirmClosable?: VxeModalPropTypes.ConfirmClosable
|
|
148
152
|
resize?: VxeModalPropTypes.Resize
|
|
153
|
+
showTitleBackground?: VxeModalPropTypes.ShowTitleBackground
|
|
149
154
|
showHeader?: VxeModalPropTypes.ShowHeader
|
|
150
155
|
showFooter?: VxeModalPropTypes.ShowFooter
|
|
151
156
|
showZoom?: VxeModalPropTypes.ShowZoom
|
|
@@ -174,6 +179,10 @@ export interface VxeModalProps {
|
|
|
174
179
|
* 挂载到指定元素下
|
|
175
180
|
*/
|
|
176
181
|
appendTo?: VxeModalPropTypes.AppendTo
|
|
182
|
+
/**
|
|
183
|
+
* 是否在指定元素 append-to 的范围内显示
|
|
184
|
+
*/
|
|
185
|
+
isWithinAppendTo?: VxeModalPropTypes.IsWithinAppendTo
|
|
177
186
|
storage?: VxeModalPropTypes.Storage
|
|
178
187
|
storageKey?: VxeModalPropTypes.StorageKey
|
|
179
188
|
animat?: VxeModalPropTypes.Animat
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|