vxe-pc-ui 4.17.19 → 4.17.21
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/all.esm.js +492 -191
- package/dist/style.css +1 -1
- package/dist/style.min.css +1 -1
- package/es/avatar/src/avatar.js +3 -3
- package/es/badge/src/badge.js +3 -3
- package/es/components.js +31 -1
- package/es/empty/src/empty.js +3 -3
- package/es/icon/style.css +1 -1
- package/es/rate/src/rate.js +3 -3
- package/es/result/src/result.js +3 -3
- package/es/slider/src/slider.js +191 -71
- package/es/slider/style.css +8 -15
- package/es/slider/style.min.css +1 -1
- package/es/space/index.js +12 -0
- package/es/space/src/space.js +143 -0
- package/es/space/style.css +37 -0
- package/es/space/style.min.css +1 -0
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/ui/index.js +2 -1
- package/es/ui/src/dom.js +3 -0
- package/es/ui/src/log.js +1 -1
- package/es/vxe-slider/style.css +8 -15
- package/es/vxe-slider/style.min.css +1 -1
- package/es/vxe-space/index.js +3 -0
- package/es/vxe-space/style.css +37 -0
- package/es/vxe-space/style.min.css +1 -0
- package/es/watermark/src/watermark.js +3 -3
- package/lib/avatar/src/avatar.js +3 -3
- package/lib/badge/src/badge.js +3 -3
- package/lib/components.js +41 -2
- package/lib/components.min.js +1 -1
- package/lib/empty/src/empty.js +3 -3
- package/lib/icon/style/style.css +1 -1
- package/lib/icon/style/style.min.css +1 -1
- package/lib/index.umd.js +432 -99
- package/lib/index.umd.min.js +1 -1
- package/lib/rate/src/rate.js +3 -3
- package/lib/result/src/result.js +3 -3
- package/lib/slider/src/slider.js +196 -77
- package/lib/slider/src/slider.min.js +1 -1
- package/lib/slider/style/style.css +8 -15
- package/lib/slider/style/style.min.css +1 -1
- package/lib/space/index.js +19 -0
- package/lib/space/index.min.js +1 -0
- package/lib/space/src/space.js +167 -0
- package/lib/space/src/space.min.js +1 -0
- package/lib/space/style/index.js +1 -0
- package/lib/space/style/style.css +37 -0
- package/lib/space/style/style.min.css +1 -0
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/ui/index.js +2 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/dom.js +4 -0
- 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-slider/style/style.css +8 -15
- package/lib/vxe-slider/style/style.min.css +1 -1
- package/lib/vxe-space/index.js +21 -0
- package/lib/vxe-space/index.min.js +1 -0
- package/lib/vxe-space/style/index.js +1 -0
- package/lib/vxe-space/style/style.css +37 -0
- package/lib/vxe-space/style/style.min.css +1 -0
- package/lib/watermark/src/watermark.js +3 -3
- package/package.json +4 -3
- package/packages/avatar/src/avatar.ts +3 -3
- package/packages/badge/src/badge.ts +3 -3
- package/packages/components.ts +31 -1
- package/packages/empty/src/empty.ts +3 -3
- package/packages/rate/src/rate.ts +3 -3
- package/packages/result/src/result.ts +3 -3
- package/packages/slider/src/slider.ts +194 -73
- package/packages/space/index.ts +16 -0
- package/packages/space/src/space.ts +167 -0
- package/packages/ui/index.ts +1 -0
- package/packages/ui/src/dom.ts +4 -0
- package/packages/watermark/src/watermark.ts +3 -3
- package/styles/all.scss +1 -0
- package/styles/components/slider.scss +8 -13
- package/styles/components/space.scss +38 -0
- package/styles/theme/base.scss +20 -6
- package/types/all.d.ts +3 -0
- package/types/components/slider.d.ts +13 -0
- package/types/components/space.d.ts +112 -0
- package/types/ui/global-config.d.ts +2 -0
- /package/es/icon/{iconfont.1787739841308.ttf → iconfont.1787994747472.ttf} +0 -0
- /package/es/icon/{iconfont.1787739841308.woff → iconfont.1787994747472.woff} +0 -0
- /package/es/icon/{iconfont.1787739841308.woff2 → iconfont.1787994747472.woff2} +0 -0
- /package/es/{iconfont.1787739841308.ttf → iconfont.1787994747472.ttf} +0 -0
- /package/es/{iconfont.1787739841308.woff → iconfont.1787994747472.woff} +0 -0
- /package/es/{iconfont.1787739841308.woff2 → iconfont.1787994747472.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1787739841308.ttf → iconfont.1787994747472.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1787739841308.woff → iconfont.1787994747472.woff} +0 -0
- /package/lib/icon/style/{iconfont.1787739841308.woff2 → iconfont.1787994747472.woff2} +0 -0
- /package/lib/{iconfont.1787739841308.ttf → iconfont.1787994747472.ttf} +0 -0
- /package/lib/{iconfont.1787739841308.woff → iconfont.1787994747472.woff} +0 -0
- /package/lib/{iconfont.1787739841308.woff2 → iconfont.1787994747472.woff2} +0 -0
package/lib/rate/src/rate.js
CHANGED
|
@@ -100,10 +100,10 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
100
100
|
$rate: $xeRate
|
|
101
101
|
}, params));
|
|
102
102
|
};
|
|
103
|
-
const
|
|
103
|
+
const rateMethods = {
|
|
104
104
|
dispatchEvent
|
|
105
105
|
};
|
|
106
|
-
const
|
|
106
|
+
const ratePrivateMethods = {};
|
|
107
107
|
const emitModel = value => {
|
|
108
108
|
emit('update:modelValue', value);
|
|
109
109
|
};
|
|
@@ -133,7 +133,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
133
133
|
}
|
|
134
134
|
}
|
|
135
135
|
};
|
|
136
|
-
Object.assign($xeRate,
|
|
136
|
+
Object.assign($xeRate, rateMethods, ratePrivateMethods);
|
|
137
137
|
const renderVN = () => {
|
|
138
138
|
const {
|
|
139
139
|
status
|
package/lib/result/src/result.js
CHANGED
|
@@ -46,11 +46,11 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
46
46
|
$result: $xeResult
|
|
47
47
|
}, params));
|
|
48
48
|
};
|
|
49
|
-
const
|
|
49
|
+
const resultMethods = {
|
|
50
50
|
dispatchEvent
|
|
51
51
|
};
|
|
52
|
-
const
|
|
53
|
-
Object.assign($xeResult,
|
|
52
|
+
const resultPrivateMethods = {};
|
|
53
|
+
Object.assign($xeResult, resultMethods, resultPrivateMethods);
|
|
54
54
|
const renderVN = () => {
|
|
55
55
|
const {
|
|
56
56
|
imageUrl,
|
package/lib/slider/src/slider.js
CHANGED
|
@@ -9,10 +9,23 @@ var _comp = require("../../ui/src/comp");
|
|
|
9
9
|
var _xeUtils = _interopRequireDefault(require("xe-utils"));
|
|
10
10
|
var _ui = require("../../ui");
|
|
11
11
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
+
function createInternalData() {
|
|
13
|
+
return {
|
|
14
|
+
// _isUp: false,
|
|
15
|
+
currValue: 0,
|
|
16
|
+
startValue: 0,
|
|
17
|
+
endValue: 0
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
function createReactData() {
|
|
21
|
+
return {};
|
|
22
|
+
}
|
|
12
23
|
var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
13
24
|
name: 'VxeSlider',
|
|
14
25
|
props: {
|
|
15
26
|
modelValue: [String, Number, Array],
|
|
27
|
+
startValue: [String, Number],
|
|
28
|
+
endValue: [String, Number],
|
|
16
29
|
vertical: Boolean,
|
|
17
30
|
max: {
|
|
18
31
|
type: [String, Number],
|
|
@@ -41,9 +54,13 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
41
54
|
disabled: {
|
|
42
55
|
type: Boolean,
|
|
43
56
|
default: null
|
|
57
|
+
},
|
|
58
|
+
immediate: {
|
|
59
|
+
type: Boolean,
|
|
60
|
+
default: () => (0, _ui.getConfig)().slider.immediate
|
|
44
61
|
}
|
|
45
62
|
},
|
|
46
|
-
emits: ['update:modelValue', 'change', 'track-dragstart', 'track-dragover', 'track-dragend'],
|
|
63
|
+
emits: ['update:modelValue', 'update:startValue', 'update:endValue', 'change', 'track-dragstart', 'track-dragover', 'track-dragend'],
|
|
47
64
|
setup(props, context) {
|
|
48
65
|
const {
|
|
49
66
|
emit
|
|
@@ -59,10 +76,8 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
59
76
|
const refTrackElem = (0, _vue.ref)();
|
|
60
77
|
const refStartBtnElem = (0, _vue.ref)();
|
|
61
78
|
const refEndBtnElem = (0, _vue.ref)();
|
|
62
|
-
const reactData = (0, _vue.reactive)(
|
|
63
|
-
|
|
64
|
-
endValue: 0
|
|
65
|
-
});
|
|
79
|
+
const reactData = (0, _vue.reactive)(createReactData());
|
|
80
|
+
const internalData = createInternalData();
|
|
66
81
|
const refMaps = {
|
|
67
82
|
refElem
|
|
68
83
|
};
|
|
@@ -96,6 +111,14 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
96
111
|
const computeMinNum = (0, _vue.computed)(() => {
|
|
97
112
|
return _xeUtils.default.toNumber(props.min || 0);
|
|
98
113
|
});
|
|
114
|
+
const computeMVal = (0, _vue.computed)(() => {
|
|
115
|
+
const {
|
|
116
|
+
range,
|
|
117
|
+
startValue,
|
|
118
|
+
endValue
|
|
119
|
+
} = props;
|
|
120
|
+
return range ? `${startValue || ''}${endValue || ''}` : '';
|
|
121
|
+
});
|
|
99
122
|
const computeMaps = {};
|
|
100
123
|
const $xeSlider = {
|
|
101
124
|
xID,
|
|
@@ -106,6 +129,7 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
106
129
|
getComputeMaps: () => computeMaps
|
|
107
130
|
};
|
|
108
131
|
const emitModel = value => {
|
|
132
|
+
internalData._isUp = true;
|
|
109
133
|
emit('update:modelValue', value);
|
|
110
134
|
};
|
|
111
135
|
const dispatchEvent = (type, params, evnt) => {
|
|
@@ -116,61 +140,119 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
116
140
|
const collapsePaneMethods = {
|
|
117
141
|
dispatchEvent
|
|
118
142
|
};
|
|
119
|
-
const
|
|
120
|
-
const {
|
|
121
|
-
range
|
|
122
|
-
} = props;
|
|
143
|
+
const getBarPercent = currValue => {
|
|
123
144
|
const maxNum = computeMaxNum.value;
|
|
124
145
|
const minNum = computeMinNum.value;
|
|
125
|
-
|
|
146
|
+
if (maxNum === minNum) {
|
|
147
|
+
return 0;
|
|
148
|
+
}
|
|
149
|
+
if (currValue < minNum) {
|
|
150
|
+
currValue = minNum;
|
|
151
|
+
}
|
|
152
|
+
if (currValue > maxNum) {
|
|
153
|
+
currValue = maxNum;
|
|
154
|
+
}
|
|
155
|
+
return (currValue - minNum) / (maxNum - minNum) * 100;
|
|
126
156
|
};
|
|
127
|
-
const
|
|
128
|
-
const
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
157
|
+
const parseFields = (startValue, endValue) => {
|
|
158
|
+
const [sVal, eVal] = _xeUtils.default.orderBy([_xeUtils.default.toNumber(startValue), _xeUtils.default.toNumber(endValue)]);
|
|
159
|
+
const currValue = _xeUtils.default.floor(_xeUtils.default.toNumber(sVal || 0));
|
|
160
|
+
internalData.currValue = currValue;
|
|
161
|
+
internalData.startValue = currValue;
|
|
162
|
+
internalData.endValue = _xeUtils.default.floor(_xeUtils.default.toNumber(eVal || 0));
|
|
163
|
+
};
|
|
164
|
+
const parseArrs = arrVals => {
|
|
165
|
+
const [sVal, eVal] = _xeUtils.default.orderBy(arrVals);
|
|
166
|
+
const currValue = _xeUtils.default.floor(_xeUtils.default.toNumber(sVal || 0));
|
|
167
|
+
internalData.currValue = currValue;
|
|
168
|
+
internalData.startValue = currValue;
|
|
169
|
+
internalData.endValue = _xeUtils.default.floor(_xeUtils.default.toNumber(eVal || 0));
|
|
134
170
|
};
|
|
135
|
-
const
|
|
171
|
+
const parseNum = val => {
|
|
172
|
+
const currValue = _xeUtils.default.floor(_xeUtils.default.toNumber(val || 0));
|
|
173
|
+
internalData.currValue = currValue;
|
|
174
|
+
internalData.startValue = 0;
|
|
175
|
+
internalData.endValue = currValue;
|
|
176
|
+
};
|
|
177
|
+
const updateModelValue = umType => {
|
|
136
178
|
const {
|
|
137
|
-
|
|
179
|
+
range,
|
|
180
|
+
modelValue,
|
|
181
|
+
startValue,
|
|
182
|
+
endValue
|
|
138
183
|
} = props;
|
|
139
|
-
if (
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
184
|
+
if (!umType) {
|
|
185
|
+
if (range) {
|
|
186
|
+
if (_xeUtils.default.eqNull(modelValue)) {
|
|
187
|
+
if (startValue || endValue) {
|
|
188
|
+
parseFields(startValue, endValue);
|
|
189
|
+
}
|
|
190
|
+
} else {
|
|
191
|
+
if (_xeUtils.default.isArray(modelValue)) {
|
|
192
|
+
parseArrs(modelValue.map(num => _xeUtils.default.toNumber(num)));
|
|
193
|
+
} else {
|
|
194
|
+
parseNum(modelValue);
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
} else {
|
|
198
|
+
parseNum(modelValue);
|
|
199
|
+
}
|
|
200
|
+
} else if (range && umType === 2) {
|
|
201
|
+
parseFields(startValue, endValue);
|
|
143
202
|
} else {
|
|
144
|
-
|
|
145
|
-
|
|
203
|
+
if (_xeUtils.default.isArray(modelValue)) {
|
|
204
|
+
parseArrs(modelValue.map(num => _xeUtils.default.toNumber(num)));
|
|
205
|
+
} else {
|
|
206
|
+
parseNum(modelValue);
|
|
207
|
+
}
|
|
146
208
|
}
|
|
209
|
+
updateBarStyle();
|
|
210
|
+
updateTrackStyle();
|
|
147
211
|
};
|
|
148
212
|
const updateBarStyle = () => {
|
|
149
213
|
const {
|
|
214
|
+
range
|
|
215
|
+
} = props;
|
|
216
|
+
const {
|
|
217
|
+
currValue,
|
|
150
218
|
startValue,
|
|
151
219
|
endValue
|
|
152
|
-
} =
|
|
153
|
-
const trackElem = refTrackElem.value;
|
|
220
|
+
} = internalData;
|
|
154
221
|
const startBtnElem = refStartBtnElem.value;
|
|
155
222
|
const endBtnElem = refEndBtnElem.value;
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
223
|
+
if (range) {
|
|
224
|
+
const [sVal, eVal] = _xeUtils.default.orderBy([startValue, endValue]);
|
|
225
|
+
if (startBtnElem) {
|
|
226
|
+
startBtnElem.style.left = getBarPercent(sVal) + '%';
|
|
227
|
+
}
|
|
228
|
+
if (endBtnElem) {
|
|
229
|
+
endBtnElem.style.left = getBarPercent(eVal) + '%';
|
|
230
|
+
}
|
|
161
231
|
} else {
|
|
162
|
-
|
|
163
|
-
|
|
232
|
+
if (endBtnElem) {
|
|
233
|
+
endBtnElem.style.left = getBarPercent(currValue) + '%';
|
|
234
|
+
}
|
|
164
235
|
}
|
|
236
|
+
};
|
|
237
|
+
const updateTrackStyle = () => {
|
|
238
|
+
const {
|
|
239
|
+
range
|
|
240
|
+
} = props;
|
|
241
|
+
const {
|
|
242
|
+
currValue,
|
|
243
|
+
startValue,
|
|
244
|
+
endValue
|
|
245
|
+
} = internalData;
|
|
246
|
+
const trackElem = refTrackElem.value;
|
|
165
247
|
if (trackElem) {
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
248
|
+
if (range) {
|
|
249
|
+
const [sVal, eVal] = _xeUtils.default.orderBy([startValue, endValue]);
|
|
250
|
+
trackElem.style.left = getBarPercent(sVal) + '%';
|
|
251
|
+
trackElem.style.width = getBarPercent(eVal - sVal) + '%';
|
|
252
|
+
} else {
|
|
253
|
+
trackElem.style.left = '0';
|
|
254
|
+
trackElem.style.width = getBarPercent(currValue) + '%';
|
|
255
|
+
}
|
|
174
256
|
}
|
|
175
257
|
};
|
|
176
258
|
const changeEvent = evnt => {
|
|
@@ -178,11 +260,17 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
178
260
|
range
|
|
179
261
|
} = props;
|
|
180
262
|
const {
|
|
263
|
+
currValue,
|
|
181
264
|
startValue,
|
|
182
265
|
endValue
|
|
183
|
-
} =
|
|
184
|
-
const
|
|
266
|
+
} = internalData;
|
|
267
|
+
const vals = range ? _xeUtils.default.orderBy([startValue, endValue]) : [];
|
|
268
|
+
const value = range ? vals : currValue;
|
|
185
269
|
emitModel(value);
|
|
270
|
+
if (range) {
|
|
271
|
+
emit('update:startValue', vals[0] || 0);
|
|
272
|
+
emit('update:endValue', vals[1] || 0);
|
|
273
|
+
}
|
|
186
274
|
dispatchEvent('change', {
|
|
187
275
|
value
|
|
188
276
|
}, evnt);
|
|
@@ -191,11 +279,25 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
191
279
|
$xeForm.triggerItemEvent(evnt, formItemInfo.itemConfig.field, value);
|
|
192
280
|
}
|
|
193
281
|
};
|
|
194
|
-
const
|
|
195
|
-
const formReadonly = computeFormReadonly.value;
|
|
196
|
-
const isDisabled = computeIsDisabled.value;
|
|
282
|
+
const getValueByLeft = (offsetLeft, barWidth) => {
|
|
197
283
|
const maxNum = computeMaxNum.value;
|
|
198
284
|
const minNum = computeMinNum.value;
|
|
285
|
+
if (barWidth === 0) {
|
|
286
|
+
return minNum;
|
|
287
|
+
}
|
|
288
|
+
const clamped = Math.max(0, Math.min(barWidth, offsetLeft));
|
|
289
|
+
const ratio = clamped / barWidth;
|
|
290
|
+
const raw = minNum + ratio * (maxNum - minNum);
|
|
291
|
+
return Math.floor(raw);
|
|
292
|
+
};
|
|
293
|
+
const handleBtnMousedownEvent = evnt => {
|
|
294
|
+
const {
|
|
295
|
+
range,
|
|
296
|
+
immediate
|
|
297
|
+
} = props;
|
|
298
|
+
const btnElem = evnt.currentTarget;
|
|
299
|
+
const formReadonly = computeFormReadonly.value;
|
|
300
|
+
const isDisabled = computeIsDisabled.value;
|
|
199
301
|
if (!(formReadonly || isDisabled)) {
|
|
200
302
|
evnt.preventDefault();
|
|
201
303
|
document.onmousemove = evnt => {
|
|
@@ -203,46 +305,49 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
203
305
|
const el = refElem.value;
|
|
204
306
|
const barElem = refBarElem.value;
|
|
205
307
|
if (el && barElem) {
|
|
308
|
+
const btnType = btnElem.getAttribute('data-type');
|
|
206
309
|
const barRect = barElem.getBoundingClientRect();
|
|
207
|
-
const
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
310
|
+
const barWidth = barRect.width;
|
|
311
|
+
const offsetLeft = Math.min(barWidth, Math.max(0, evnt.clientX - barRect.left));
|
|
312
|
+
const currValue = getValueByLeft(offsetLeft, barWidth);
|
|
313
|
+
if (range) {
|
|
314
|
+
if (btnType === '1') {
|
|
315
|
+
internalData.startValue = currValue;
|
|
316
|
+
} else {
|
|
317
|
+
internalData.endValue = currValue;
|
|
318
|
+
}
|
|
212
319
|
}
|
|
320
|
+
internalData.currValue = currValue;
|
|
321
|
+
btnElem.style.left = getBarPercent(currValue) + '%';
|
|
213
322
|
dispatchEvent('track-dragover', {
|
|
214
|
-
|
|
215
|
-
|
|
323
|
+
currentValue: internalData.currValue,
|
|
324
|
+
startValue: internalData.startValue,
|
|
325
|
+
endValue: internalData.endValue
|
|
216
326
|
}, evnt);
|
|
217
327
|
}
|
|
218
|
-
|
|
328
|
+
if (immediate) {
|
|
329
|
+
changeEvent(evnt);
|
|
330
|
+
}
|
|
331
|
+
updateTrackStyle();
|
|
219
332
|
};
|
|
220
333
|
document.onmouseup = evnt => {
|
|
221
334
|
document.onmousemove = null;
|
|
222
335
|
document.onmouseup = null;
|
|
223
336
|
dispatchEvent('track-dragend', {
|
|
224
|
-
|
|
225
|
-
|
|
337
|
+
currentValue: internalData.currValue,
|
|
338
|
+
startValue: internalData.startValue,
|
|
339
|
+
endValue: internalData.endValue
|
|
226
340
|
}, evnt);
|
|
227
341
|
changeEvent(evnt);
|
|
228
|
-
|
|
342
|
+
updateTrackStyle();
|
|
229
343
|
};
|
|
230
344
|
dispatchEvent('track-dragstart', {
|
|
231
|
-
|
|
232
|
-
|
|
345
|
+
currentValue: internalData.currValue,
|
|
346
|
+
startValue: internalData.startValue,
|
|
347
|
+
endValue: internalData.endValue
|
|
233
348
|
}, evnt);
|
|
234
349
|
}
|
|
235
350
|
};
|
|
236
|
-
const handleStartMousedownEvent = evnt => {
|
|
237
|
-
const endBtnElem = refEndBtnElem.value;
|
|
238
|
-
const startBtnElem = evnt.currentTarget;
|
|
239
|
-
handleMousedownEvent(evnt, endBtnElem ? endBtnElem.offsetLeft < startBtnElem.offsetLeft : false);
|
|
240
|
-
};
|
|
241
|
-
const handleEndMousedownEvent = evnt => {
|
|
242
|
-
const startBtnElem = refStartBtnElem.value;
|
|
243
|
-
const endBtnElem = evnt.currentTarget;
|
|
244
|
-
handleMousedownEvent(evnt, startBtnElem ? endBtnElem.offsetLeft > startBtnElem.offsetLeft : true);
|
|
245
|
-
};
|
|
246
351
|
const collapsePanePrivateMethods = {};
|
|
247
352
|
Object.assign($xeSlider, collapsePaneMethods, collapsePanePrivateMethods);
|
|
248
353
|
const renderVN = () => {
|
|
@@ -271,21 +376,35 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
271
376
|
class: 'vxe-slider--bar-track'
|
|
272
377
|
}), formReadonly || !range ? (0, _ui.renderEmptyElement)($xeSlider) : (0, _vue.h)('div', {
|
|
273
378
|
ref: refStartBtnElem,
|
|
274
|
-
class: 'vxe-slider--bar-btn
|
|
275
|
-
|
|
379
|
+
class: 'vxe-slider--bar-btn',
|
|
380
|
+
'data-type': '1',
|
|
381
|
+
onMousedown: handleBtnMousedownEvent
|
|
276
382
|
}), formReadonly ? (0, _ui.renderEmptyElement)($xeSlider) : (0, _vue.h)('div', {
|
|
277
383
|
ref: refEndBtnElem,
|
|
278
|
-
class: 'vxe-slider--bar-btn
|
|
279
|
-
|
|
384
|
+
class: 'vxe-slider--bar-btn',
|
|
385
|
+
'data-type': '2',
|
|
386
|
+
onMousedown: handleBtnMousedownEvent
|
|
280
387
|
})])]);
|
|
281
388
|
};
|
|
282
389
|
(0, _vue.watch)(() => props.modelValue, () => {
|
|
283
|
-
|
|
390
|
+
if (!internalData._isUp) {
|
|
391
|
+
updateModelValue(1);
|
|
392
|
+
}
|
|
393
|
+
internalData._isUp = false;
|
|
394
|
+
});
|
|
395
|
+
(0, _vue.watch)(computeMVal, () => {
|
|
396
|
+
if (!internalData._isUp) {
|
|
397
|
+
updateModelValue(2);
|
|
398
|
+
}
|
|
399
|
+
internalData._isUp = false;
|
|
284
400
|
});
|
|
285
401
|
(0, _vue.onMounted)(() => {
|
|
286
|
-
|
|
402
|
+
updateModelValue();
|
|
403
|
+
});
|
|
404
|
+
(0, _vue.onBeforeUnmount)(() => {
|
|
405
|
+
_xeUtils.default.assign(reactData, createReactData());
|
|
406
|
+
_xeUtils.default.assign(internalData, createInternalData());
|
|
287
407
|
});
|
|
288
|
-
updateModel();
|
|
289
408
|
$xeSlider.renderVN = renderVN;
|
|
290
409
|
return $xeSlider;
|
|
291
410
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeSlider",props:{modelValue:[String,Number,Array],vertical:Boolean,max:{type:[String,Number],default:()=>(0,_ui.getConfig)().slider.max},min:{type:[String,Number],default:()=>(0,_ui.getConfig)().slider.min},step:{type:[String,Number],default:()=>(0,_ui.getConfig)().slider.step},size:{type:String,default:()=>(0,_ui.getConfig)().slider.size||(0,_ui.getConfig)().size},range:{type:Boolean,default:()=>(0,_ui.getConfig)().slider.range},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null}},emits:["update:modelValue","change","track-dragstart","track-dragover","track-dragend"],setup(
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _vue=require("vue"),_comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function createInternalData(){return{currValue:0,startValue:0,endValue:0}}function createReactData(){return{}}var _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeSlider",props:{modelValue:[String,Number,Array],startValue:[String,Number],endValue:[String,Number],vertical:Boolean,max:{type:[String,Number],default:()=>(0,_ui.getConfig)().slider.max},min:{type:[String,Number],default:()=>(0,_ui.getConfig)().slider.min},step:{type:[String,Number],default:()=>(0,_ui.getConfig)().slider.step},size:{type:String,default:()=>(0,_ui.getConfig)().slider.size||(0,_ui.getConfig)().size},range:{type:Boolean,default:()=>(0,_ui.getConfig)().slider.range},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null},immediate:{type:Boolean,default:()=>(0,_ui.getConfig)().slider.immediate}},emits:["update:modelValue","update:startValue","update:endValue","change","track-dragstart","track-dragover","track-dragend"],setup(d,e){let l=e.emit,i=(0,_vue.inject)("$xeForm",null),n=(0,_vue.inject)("xeFormItemInfo",null);var t=_xeUtils.default.uniqueId();let s=(0,_ui.useSize)(d).computeSize,o=(0,_vue.ref)(),f=(0,_vue.ref)(),v=(0,_vue.ref)(),_=(0,_vue.ref)(),m=(0,_vue.ref)(),a=(0,_vue.reactive)(createReactData()),c=createInternalData(),r={refElem:o},p=(0,_vue.computed)(()=>{var e=d.readonly;return null===e?!!i&&i.props.readonly:e}),V=(0,_vue.computed)(()=>{var e=d.disabled;return null===e?!!i&&i.props.disabled:e}),u=(0,_vue.computed)(()=>_xeUtils.default.toNumber(d.max||0)),g=(0,_vue.computed)(()=>_xeUtils.default.toNumber(d.min||0));var x=(0,_vue.computed)(()=>{var{range:e,startValue:t,endValue:a}=d;return e?""+(t||"")+(a||""):""});let y={},U={xID:t,props:d,context:e,reactData:a,getRefMaps:()=>r,getComputeMaps:()=>y},b=e=>{c._isUp=!0,l("update:modelValue",e)},h=(e,t,a)=>{l(e,(0,_ui.createEvent)(a,{$slider:U},t))};t={dispatchEvent:h};let N=e=>{var t=u.value,a=g.value;return t===a?0:((e=t<(e=e<a?a:e)?t:e)-a)/(t-a)*100},B=(e,t)=>{var[e,t]=_xeUtils.default.orderBy([_xeUtils.default.toNumber(e),_xeUtils.default.toNumber(t)]),e=_xeUtils.default.floor(_xeUtils.default.toNumber(e||0));c.currValue=e,c.startValue=e,c.endValue=_xeUtils.default.floor(_xeUtils.default.toNumber(t||0))},D=e=>{var[e,t]=_xeUtils.default.orderBy(e),e=_xeUtils.default.floor(_xeUtils.default.toNumber(e||0));c.currValue=e,c.startValue=e,c.endValue=_xeUtils.default.floor(_xeUtils.default.toNumber(t||0))},M=e=>{e=_xeUtils.default.floor(_xeUtils.default.toNumber(e||0));c.currValue=e,c.startValue=0,c.endValue=e},C=e=>{var{range:t,modelValue:a,startValue:r,endValue:u}=d;e?t&&2===e?B(r,u):_xeUtils.default.isArray(a)?D(a.map(e=>_xeUtils.default.toNumber(e))):M(a):t?_xeUtils.default.eqNull(a)?(r||u)&&B(r,u):_xeUtils.default.isArray(a)?D(a.map(e=>_xeUtils.default.toNumber(e))):M(a):M(a),(()=>{const{range:e}=d,{currValue:t,startValue:a,endValue:r}=c,u=_.value,l=m.value;if(e){const[i,n]=_xeUtils.default.orderBy([a,r]);if(u)u.style.left=N(i)+"%";if(l)l.style.left=N(n)+"%"}else if(l)l.style.left=N(t)+"%"})(),S()},S=()=>{var e=d.range,{currValue:t,startValue:a,endValue:r}=c,u=v.value;u&&(e?([e,a]=_xeUtils.default.orderBy([a,r]),u.style.left=N(e)+"%",u.style.width=N(a-e)+"%"):(u.style.left="0",u.style.width=N(t)+"%"))},q=e=>{var t=d.range,{currValue:a,startValue:r,endValue:u}=c,r=t?_xeUtils.default.orderBy([r,u]):[],u=t?r:a;b(u),t&&(l("update:startValue",r[0]||0),l("update:endValue",r[1]||0)),h("change",{value:u},e),i&&n&&i.triggerItemEvent(e,n.itemConfig.field,u)},w=(e,t)=>{var a=u.value,r=g.value;return 0===t?r:(e=Math.max(0,Math.min(t,e)),Math.floor(r+e/t*(a-r)))},E=e=>{let{range:u,immediate:l}=d,i=e.currentTarget;var t=p.value,a=V.value;t||a||(e.preventDefault(),document.onmousemove=e=>{e.preventDefault();var t,a=o.value,r=f.value;a&&r&&(a=i.getAttribute("data-type"),t=(r=r.getBoundingClientRect()).width,r=Math.min(t,Math.max(0,e.clientX-r.left)),r=w(r,t),u&&("1"===a?c.startValue=r:c.endValue=r),c.currValue=r,i.style.left=N(r)+"%",h("track-dragover",{currentValue:c.currValue,startValue:c.startValue,endValue:c.endValue},e)),l&&q(e),S()},document.onmouseup=e=>{document.onmousemove=null,document.onmouseup=null,h("track-dragend",{currentValue:c.currValue,startValue:c.startValue,endValue:c.endValue},e),q(e),S()},h("track-dragstart",{currentValue:c.currValue,startValue:c.startValue,endValue:c.endValue},e))};Object.assign(U,t,{});return(0,_vue.watch)(()=>d.modelValue,()=>{c._isUp||C(1),c._isUp=!1}),(0,_vue.watch)(x,()=>{c._isUp||C(2),c._isUp=!1}),(0,_vue.onMounted)(()=>{C()}),(0,_vue.onBeforeUnmount)(()=>{_xeUtils.default.assign(a,createReactData()),_xeUtils.default.assign(c,createInternalData())}),U.renderVN=()=>{var{vertical:e,range:t}=d,a=s.value,r=p.value,u=V.value;return(0,_vue.h)("div",{ref:o,class:["vxe-slider",{["size--"+a]:a,"is--vertical":e,"is--readonly":r,"is--disabled":u}]},[(0,_vue.h)("div",{class:"vxe-slider--inner"},[(0,_vue.h)("div",{ref:f,class:"vxe-slider--bar-wrapper"}),(0,_vue.h)("div",{ref:v,class:"vxe-slider--bar-track"}),r||!t?(0,_ui.renderEmptyElement)(U):(0,_vue.h)("div",{ref:_,class:"vxe-slider--bar-btn","data-type":"1",onMousedown:E}),r?(0,_ui.renderEmptyElement)(U):(0,_vue.h)("div",{ref:m,class:"vxe-slider--bar-btn","data-type":"2",onMousedown:E})])])},U},render(){return this.renderVN()}});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
.vxe-slider {
|
|
2
2
|
position: relative;
|
|
3
3
|
display: block;
|
|
4
|
-
padding: 0.
|
|
4
|
+
padding: 0.8em;
|
|
5
5
|
}
|
|
6
6
|
.vxe-slider.theme--primary .vxe-slider--bar-track {
|
|
7
7
|
background-color: var(--vxe-ui-font-primary-color);
|
|
@@ -83,10 +83,10 @@
|
|
|
83
83
|
cursor: pointer;
|
|
84
84
|
}
|
|
85
85
|
.vxe-slider:not(.is--disabled) .vxe-slider--bar-btn:hover {
|
|
86
|
-
transform: scale(1.2);
|
|
86
|
+
transform: translate(-50%, -50%) scale(1.2);
|
|
87
87
|
}
|
|
88
88
|
.vxe-slider:not(.is--disabled) .vxe-slider--bar-btn:active {
|
|
89
|
-
transform: scale(1.1);
|
|
89
|
+
transform: translate(-50%, -50%) scale(1.1);
|
|
90
90
|
}
|
|
91
91
|
.vxe-slider.is--readonly .vxe-slider--bar-wrapper,
|
|
92
92
|
.vxe-slider.is--readonly .vxe-slider--inner {
|
|
@@ -123,21 +123,14 @@
|
|
|
123
123
|
|
|
124
124
|
.vxe-slider--bar-btn {
|
|
125
125
|
position: absolute;
|
|
126
|
-
width:
|
|
127
|
-
height:
|
|
128
|
-
top:
|
|
126
|
+
width: 1.2em;
|
|
127
|
+
height: 1.2em;
|
|
128
|
+
top: 50%;
|
|
129
|
+
transform: translate(-50%, -50%);
|
|
129
130
|
border-radius: 50%;
|
|
130
|
-
border:
|
|
131
|
+
border: 2px solid var(--vxe-ui-font-primary-color);
|
|
131
132
|
background-color: #fff;
|
|
132
133
|
cursor: pointer;
|
|
133
134
|
z-index: 1;
|
|
134
135
|
transition: transform 0.1s ease-in-out;
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
.vxe-slider--start-btn {
|
|
138
|
-
left: -0.45em;
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
.vxe-slider--end-btn {
|
|
142
|
-
right: -0.45em;
|
|
143
136
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.vxe-slider{position:relative;display:block;padding:.
|
|
1
|
+
.vxe-slider{position:relative;display:block;padding:.8em}.vxe-slider.theme--primary .vxe-slider--bar-track{background-color:var(--vxe-ui-font-primary-color)}.vxe-slider.theme--primary .vxe-slider--bar-track:hover{background-color:var(--vxe-ui-font-primary-lighten-color)}.vxe-slider.theme--primary .vxe-slider--bar-track:hover{background-color:var(--vxe-ui-font-primary-darken-color)}.vxe-slider.theme--primary .vxe-slider--bar-btn{background-color:var(--vxe-ui-font-primary-color)}.vxe-slider.theme--success .vxe-slider--bar-track{background-color:var(--vxe-ui-status-success-color)}.vxe-slider.theme--success .vxe-slider--bar-track:hover{background-color:var(--vxe-ui-status-success-lighten-color)}.vxe-slider.theme--success .vxe-slider--bar-track:hover{background-color:var(--vxe-ui-status-success-darken-color)}.vxe-slider.theme--success .vxe-slider--bar-btn{background-color:var(--vxe-ui-status-success-color)}.vxe-slider.theme--info .vxe-slider--bar-track{background-color:var(--vxe-ui-status-info-color)}.vxe-slider.theme--info .vxe-slider--bar-track:hover{background-color:var(--vxe-ui-status-info-lighten-color)}.vxe-slider.theme--info .vxe-slider--bar-track:hover{background-color:var(--vxe-ui-status-info-darken-color)}.vxe-slider.theme--info .vxe-slider--bar-btn{background-color:var(--vxe-ui-status-info-color)}.vxe-slider.theme--warning .vxe-slider--bar-track{background-color:var(--vxe-ui-status-warning-color)}.vxe-slider.theme--warning .vxe-slider--bar-track:hover{background-color:var(--vxe-ui-status-warning-lighten-color)}.vxe-slider.theme--warning .vxe-slider--bar-track:hover{background-color:var(--vxe-ui-status-warning-darken-color)}.vxe-slider.theme--warning .vxe-slider--bar-btn{background-color:var(--vxe-ui-status-warning-color)}.vxe-slider.theme--danger .vxe-slider--bar-track{background-color:var(--vxe-ui-status-danger-color)}.vxe-slider.theme--danger .vxe-slider--bar-track:hover{background-color:var(--vxe-ui-status-danger-lighten-color)}.vxe-slider.theme--danger .vxe-slider--bar-track:hover{background-color:var(--vxe-ui-status-danger-darken-color)}.vxe-slider.theme--danger .vxe-slider--bar-btn{background-color:var(--vxe-ui-status-danger-color)}.vxe-slider.theme--error .vxe-slider--bar-track{background-color:var(--vxe-ui-status-error-color)}.vxe-slider.theme--error .vxe-slider--bar-track:hover{background-color:var(--vxe-ui-status-error-lighten-color)}.vxe-slider.theme--error .vxe-slider--bar-track:hover{background-color:var(--vxe-ui-status-error-darken-color)}.vxe-slider.theme--error .vxe-slider--bar-btn{background-color:var(--vxe-ui-status-error-color)}.vxe-slider.is--disabled .vxe-slider--bar-btn{cursor:not-allowed}.vxe-slider:not(.is--disabled) .vxe-slider--bar-wrapper,.vxe-slider:not(.is--disabled) .vxe-slider--inner{cursor:pointer}.vxe-slider:not(.is--disabled) .vxe-slider--bar-btn:hover{transform:translate(-50%,-50%) scale(1.2)}.vxe-slider:not(.is--disabled) .vxe-slider--bar-btn:active{transform:translate(-50%,-50%) scale(1.1)}.vxe-slider.is--readonly .vxe-slider--bar-wrapper,.vxe-slider.is--readonly .vxe-slider--inner{cursor:default}.vxe-slider--inner{position:relative}.vxe-slider--bar-wrapper{background-color:#e4e7ed}.vxe-slider--bar-track{position:absolute;left:0;top:0;z-index:1;background-color:var(--vxe-ui-font-primary-color)}.vxe-slider--bar-track:hover{background-color:var(--vxe-ui-font-primary-lighten-color)}.vxe-slider--bar-track:active{background-color:var(--vxe-ui-font-primary-darken-color)}.vxe-slider--bar-track,.vxe-slider--bar-wrapper{height:.3em;border-radius:var(--vxe-ui-base-border-radius)}.vxe-slider--bar-btn{position:absolute;width:1.2em;height:1.2em;top:50%;transform:translate(-50%,-50%);border-radius:50%;border:2px solid var(--vxe-ui-font-primary-color);background-color:#fff;cursor:pointer;z-index:1;transition:transform .1s ease-in-out}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.VxeSpace = exports.Space = void 0;
|
|
7
|
+
var _core = require("@vxe-ui/core");
|
|
8
|
+
var _space = _interopRequireDefault(require("./src/space"));
|
|
9
|
+
var _dynamics = require("../dynamics");
|
|
10
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
|
+
const VxeSpace = exports.VxeSpace = Object.assign({}, _space.default, {
|
|
12
|
+
install(app) {
|
|
13
|
+
app.component(_space.default.name, _space.default);
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
_dynamics.dynamicApp.use(VxeSpace);
|
|
17
|
+
_core.VxeUI.component(_space.default);
|
|
18
|
+
const Space = exports.Space = VxeSpace;
|
|
19
|
+
var _default = exports.default = VxeSpace;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=exports.VxeSpace=exports.Space=void 0;var _core=require("@vxe-ui/core"),_space=_interopRequireDefault(require("./src/space")),_dynamics=require("../dynamics");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}let VxeSpace=exports.VxeSpace=Object.assign({},_space.default,{install(e){e.component(_space.default.name,_space.default)}}),Space=(_dynamics.dynamicApp.use(VxeSpace),_core.VxeUI.component(_space.default),exports.Space=VxeSpace);var _default=exports.default=VxeSpace;
|