vxe-pc-ui 3.1.21 → 3.1.22
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/avatar/style.css +0 -5
- package/es/avatar/style.min.css +1 -1
- package/es/icon/style.css +1 -1
- package/es/slider/src/slider.js +268 -7
- package/es/slider/style.css +143 -0
- package/es/slider/style.min.css +1 -0
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/ui/index.js +5 -2
- package/es/ui/src/log.js +1 -1
- package/es/vxe-avatar/style.css +0 -5
- package/es/vxe-avatar/style.min.css +1 -1
- package/es/vxe-slider/style.css +143 -0
- package/es/vxe-slider/style.min.css +1 -0
- package/lib/avatar/style/style.css +0 -5
- package/lib/avatar/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 +435 -9
- package/lib/index.umd.min.js +1 -1
- package/lib/slider/src/slider.js +279 -7
- package/lib/slider/src/slider.min.js +1 -1
- package/lib/slider/style/style.css +143 -0
- package/lib/slider/style/style.min.css +1 -0
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/ui/index.js +5 -2
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/lib/vxe-avatar/style/style.css +0 -5
- package/lib/vxe-avatar/style/style.min.css +1 -1
- package/lib/vxe-slider/style/style.css +143 -0
- package/lib/vxe-slider/style/style.min.css +1 -0
- package/package.json +1 -1
- package/packages/slider/src/slider.ts +286 -7
- package/packages/ui/index.ts +4 -1
- package/styles/components/avatar.scss +3 -8
- package/styles/components/slider.scss +138 -0
- package/types/components/slider.d.ts +27 -2
- package/types/components/switch.d.ts +1 -1
- /package/es/icon/style/{iconfont.1728032194284.ttf → iconfont.1728123720853.ttf} +0 -0
- /package/es/icon/style/{iconfont.1728032194284.woff → iconfont.1728123720853.woff} +0 -0
- /package/es/icon/style/{iconfont.1728032194284.woff2 → iconfont.1728123720853.woff2} +0 -0
- /package/es/{iconfont.1728032194284.ttf → iconfont.1728123720853.ttf} +0 -0
- /package/es/{iconfont.1728032194284.woff → iconfont.1728123720853.woff} +0 -0
- /package/es/{iconfont.1728032194284.woff2 → iconfont.1728123720853.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1728032194284.ttf → iconfont.1728123720853.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1728032194284.woff → iconfont.1728123720853.woff} +0 -0
- /package/lib/icon/style/{iconfont.1728032194284.woff2 → iconfont.1728123720853.woff2} +0 -0
- /package/lib/{iconfont.1728032194284.ttf → iconfont.1728123720853.ttf} +0 -0
- /package/lib/{iconfont.1728032194284.woff → iconfont.1728123720853.woff} +0 -0
- /package/lib/{iconfont.1728032194284.woff2 → iconfont.1728123720853.woff2} +0 -0
package/lib/slider/src/slider.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
3
4
|
Object.defineProperty(exports, "__esModule", {
|
|
4
5
|
value: true
|
|
5
6
|
});
|
|
@@ -8,17 +9,121 @@ var _comp = require("../../ui/src/comp");
|
|
|
8
9
|
var _xeUtils = _interopRequireDefault(require("xe-utils"));
|
|
9
10
|
var _ui = require("../../ui");
|
|
10
11
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
11
|
-
|
|
12
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
13
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
14
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
15
|
+
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
|
|
16
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
17
|
+
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
|
|
18
|
+
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
|
|
19
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
20
|
+
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
|
|
21
|
+
var _default2 = exports.default = (0, _comp.defineVxeComponent)({
|
|
12
22
|
name: 'VxeSlider',
|
|
13
|
-
|
|
23
|
+
model: {
|
|
24
|
+
prop: 'value',
|
|
25
|
+
event: 'modelValue'
|
|
26
|
+
},
|
|
27
|
+
props: {
|
|
28
|
+
value: [String, Number, Array],
|
|
29
|
+
vertical: Boolean,
|
|
30
|
+
max: {
|
|
31
|
+
type: [String, Number],
|
|
32
|
+
default: function _default() {
|
|
33
|
+
return (0, _ui.getConfig)().slider.max;
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
min: {
|
|
37
|
+
type: [String, Number],
|
|
38
|
+
default: function _default() {
|
|
39
|
+
return (0, _ui.getConfig)().slider.min;
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
step: {
|
|
43
|
+
type: [String, Number],
|
|
44
|
+
default: function _default() {
|
|
45
|
+
return (0, _ui.getConfig)().slider.step;
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
size: {
|
|
49
|
+
type: String,
|
|
50
|
+
default: function _default() {
|
|
51
|
+
return (0, _ui.getConfig)().slider.size || (0, _ui.getConfig)().size;
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
range: {
|
|
55
|
+
type: Boolean,
|
|
56
|
+
default: function _default() {
|
|
57
|
+
return (0, _ui.getConfig)().slider.range;
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
readonly: {
|
|
61
|
+
type: Boolean,
|
|
62
|
+
default: null
|
|
63
|
+
},
|
|
64
|
+
disabled: {
|
|
65
|
+
type: Boolean,
|
|
66
|
+
default: null
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
inject: {
|
|
70
|
+
$xeForm: {
|
|
71
|
+
default: null
|
|
72
|
+
},
|
|
73
|
+
formItemInfo: {
|
|
74
|
+
from: 'xeFormItemInfo',
|
|
75
|
+
default: null
|
|
76
|
+
}
|
|
77
|
+
},
|
|
14
78
|
data: function data() {
|
|
15
79
|
var xID = _xeUtils.default.uniqueId();
|
|
16
|
-
var reactData = {
|
|
80
|
+
var reactData = {
|
|
81
|
+
startValue: 0,
|
|
82
|
+
endValue: 0
|
|
83
|
+
};
|
|
17
84
|
return {
|
|
18
85
|
xID: xID,
|
|
19
86
|
reactData: reactData
|
|
20
87
|
};
|
|
21
88
|
},
|
|
89
|
+
computed: Object.assign(Object.assign({}, {}), {
|
|
90
|
+
computeFormReadonly: function computeFormReadonly() {
|
|
91
|
+
var $xeSlider = this;
|
|
92
|
+
var props = $xeSlider;
|
|
93
|
+
var $xeForm = $xeSlider.$xeForm;
|
|
94
|
+
var readonly = props.readonly;
|
|
95
|
+
if (readonly === null) {
|
|
96
|
+
if ($xeForm) {
|
|
97
|
+
return $xeForm.readonly;
|
|
98
|
+
}
|
|
99
|
+
return false;
|
|
100
|
+
}
|
|
101
|
+
return readonly;
|
|
102
|
+
},
|
|
103
|
+
computeIsDisabled: function computeIsDisabled() {
|
|
104
|
+
var $xeSlider = this;
|
|
105
|
+
var props = $xeSlider;
|
|
106
|
+
var $xeForm = $xeSlider.$xeForm;
|
|
107
|
+
var disabled = props.disabled;
|
|
108
|
+
if (disabled === null) {
|
|
109
|
+
if ($xeForm) {
|
|
110
|
+
return $xeForm.disabled;
|
|
111
|
+
}
|
|
112
|
+
return false;
|
|
113
|
+
}
|
|
114
|
+
return disabled;
|
|
115
|
+
},
|
|
116
|
+
computeMaxNum: function computeMaxNum() {
|
|
117
|
+
var $xeSlider = this;
|
|
118
|
+
var props = $xeSlider;
|
|
119
|
+
return _xeUtils.default.toNumber(props.max || 0);
|
|
120
|
+
},
|
|
121
|
+
computeMinNum: function computeMinNum() {
|
|
122
|
+
var $xeSlider = this;
|
|
123
|
+
var props = $xeSlider;
|
|
124
|
+
return _xeUtils.default.toNumber(props.min || 0);
|
|
125
|
+
}
|
|
126
|
+
}),
|
|
22
127
|
methods: {
|
|
23
128
|
//
|
|
24
129
|
// Method
|
|
@@ -29,19 +134,186 @@ var _default = exports.default = (0, _comp.defineVxeComponent)({
|
|
|
29
134
|
$watermark: $xeSlider
|
|
30
135
|
}, params));
|
|
31
136
|
},
|
|
137
|
+
emitModel: function emitModel(value) {
|
|
138
|
+
var $xeSlider = this;
|
|
139
|
+
$xeSlider.$emit('modelValue', value);
|
|
140
|
+
},
|
|
141
|
+
getStartPercent: function getStartPercent(startValue) {
|
|
142
|
+
var $xeSlider = this;
|
|
143
|
+
var props = $xeSlider;
|
|
144
|
+
var range = props.range;
|
|
145
|
+
var maxNum = $xeSlider.computeMaxNum;
|
|
146
|
+
var minNum = $xeSlider.computeMinNum;
|
|
147
|
+
return range ? _xeUtils.default.floor((startValue - minNum) / _xeUtils.default.toNumber(maxNum - minNum) * 100) : 0;
|
|
148
|
+
},
|
|
149
|
+
getEndPercent: function getEndPercent(startValue, endValue) {
|
|
150
|
+
var $xeSlider = this;
|
|
151
|
+
var props = $xeSlider;
|
|
152
|
+
var range = props.range;
|
|
153
|
+
var maxNum = $xeSlider.computeMaxNum;
|
|
154
|
+
var minNum = $xeSlider.computeMinNum;
|
|
155
|
+
return _xeUtils.default.floor((endValue - (range ? startValue : 0) - minNum) / _xeUtils.default.toNumber(maxNum - minNum) * 100);
|
|
156
|
+
},
|
|
157
|
+
updateModel: function updateModel() {
|
|
158
|
+
var $xeSlider = this;
|
|
159
|
+
var props = $xeSlider;
|
|
160
|
+
var reactData = $xeSlider.reactData;
|
|
161
|
+
var value = props.value;
|
|
162
|
+
if (_xeUtils.default.isArray(value)) {
|
|
163
|
+
var _XEUtils$clone$sort = _xeUtils.default.clone(value, true).sort(),
|
|
164
|
+
_XEUtils$clone$sort2 = _slicedToArray(_XEUtils$clone$sort, 2),
|
|
165
|
+
sVal = _XEUtils$clone$sort2[0],
|
|
166
|
+
eVal = _XEUtils$clone$sort2[1];
|
|
167
|
+
reactData.startValue = _xeUtils.default.floor(_xeUtils.default.toNumber(sVal || 0));
|
|
168
|
+
reactData.endValue = _xeUtils.default.floor(_xeUtils.default.toNumber(eVal || 0));
|
|
169
|
+
} else {
|
|
170
|
+
reactData.startValue = 0;
|
|
171
|
+
reactData.endValue = _xeUtils.default.floor(_xeUtils.default.toNumber(value || 0));
|
|
172
|
+
}
|
|
173
|
+
},
|
|
174
|
+
updateBarStyle: function updateBarStyle() {
|
|
175
|
+
var $xeSlider = this;
|
|
176
|
+
var reactData = $xeSlider.reactData;
|
|
177
|
+
var startValue = reactData.startValue,
|
|
178
|
+
endValue = reactData.endValue;
|
|
179
|
+
var trackElem = $xeSlider.$refs.refTrackElem;
|
|
180
|
+
var startBtnElem = $xeSlider.$refs.refStartBtnElem;
|
|
181
|
+
var endBtnElem = $xeSlider.$refs.refEndBtnElem;
|
|
182
|
+
var startPercent = 0;
|
|
183
|
+
var endPercent = 0;
|
|
184
|
+
if (startValue > endValue) {
|
|
185
|
+
startPercent = $xeSlider.getStartPercent(endValue);
|
|
186
|
+
endPercent = $xeSlider.getEndPercent(endValue, startValue);
|
|
187
|
+
} else {
|
|
188
|
+
startPercent = $xeSlider.getStartPercent(startValue);
|
|
189
|
+
endPercent = $xeSlider.getEndPercent(startValue, endValue);
|
|
190
|
+
}
|
|
191
|
+
if (trackElem) {
|
|
192
|
+
trackElem.style.left = "".concat(startPercent, "%");
|
|
193
|
+
trackElem.style.width = "".concat(endPercent, "%");
|
|
194
|
+
}
|
|
195
|
+
if (startBtnElem) {
|
|
196
|
+
startBtnElem.style.left = "".concat(startPercent, "%");
|
|
197
|
+
}
|
|
198
|
+
if (endBtnElem) {
|
|
199
|
+
endBtnElem.style.left = "".concat(_xeUtils.default.floor(startPercent + endPercent), "%");
|
|
200
|
+
}
|
|
201
|
+
},
|
|
202
|
+
changeEvent: function changeEvent(evnt) {
|
|
203
|
+
var $xeSlider = this;
|
|
204
|
+
var props = $xeSlider;
|
|
205
|
+
var reactData = $xeSlider.reactData;
|
|
206
|
+
var $xeForm = $xeSlider.$xeForm;
|
|
207
|
+
var formItemInfo = $xeSlider.formItemInfo;
|
|
208
|
+
var range = props.range;
|
|
209
|
+
var startValue = reactData.startValue,
|
|
210
|
+
endValue = reactData.endValue;
|
|
211
|
+
var value = range ? [startValue, endValue].sort() : endValue;
|
|
212
|
+
$xeSlider.emitModel(value);
|
|
213
|
+
$xeSlider.dispatchEvent('change', {
|
|
214
|
+
value: value
|
|
215
|
+
}, evnt);
|
|
216
|
+
// 自动更新校验状态
|
|
217
|
+
if ($xeForm && formItemInfo) {
|
|
218
|
+
$xeForm.triggerItemEvent(evnt, formItemInfo.itemConfig.field, value);
|
|
219
|
+
}
|
|
220
|
+
},
|
|
221
|
+
handleMousedownEvent: function handleMousedownEvent(evnt, isEnd) {
|
|
222
|
+
var $xeSlider = this;
|
|
223
|
+
var reactData = $xeSlider.reactData;
|
|
224
|
+
var formReadonly = $xeSlider.computeFormReadonly;
|
|
225
|
+
var isDisabled = $xeSlider.computeIsDisabled;
|
|
226
|
+
var maxNum = $xeSlider.computeMaxNum;
|
|
227
|
+
var minNum = $xeSlider.computeMinNum;
|
|
228
|
+
if (!(formReadonly || isDisabled)) {
|
|
229
|
+
evnt.preventDefault();
|
|
230
|
+
var domMousemove = document.onmousemove;
|
|
231
|
+
var domMouseup = document.onmouseup;
|
|
232
|
+
document.onmousemove = function (evnt) {
|
|
233
|
+
evnt.preventDefault();
|
|
234
|
+
var barElem = $xeSlider.$refs.refBarElem;
|
|
235
|
+
if (barElem) {
|
|
236
|
+
var barRect = barElem.getBoundingClientRect();
|
|
237
|
+
var trackWidth = (evnt.clientX - barRect.left) / 914;
|
|
238
|
+
if (isEnd) {
|
|
239
|
+
reactData.endValue = _xeUtils.default.floor(Math.max(minNum, Math.min(maxNum, trackWidth * (maxNum - minNum) + minNum)));
|
|
240
|
+
} else {
|
|
241
|
+
reactData.startValue = _xeUtils.default.floor(Math.max(minNum, Math.min(maxNum, trackWidth * (maxNum - minNum))));
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
$xeSlider.updateBarStyle();
|
|
245
|
+
};
|
|
246
|
+
document.onmouseup = function (evnt) {
|
|
247
|
+
document.onmousemove = domMousemove;
|
|
248
|
+
document.onmouseup = domMouseup;
|
|
249
|
+
$xeSlider.changeEvent(evnt);
|
|
250
|
+
$xeSlider.updateBarStyle();
|
|
251
|
+
};
|
|
252
|
+
}
|
|
253
|
+
},
|
|
254
|
+
handleStartMousedownEvent: function handleStartMousedownEvent(evnt) {
|
|
255
|
+
var $xeSlider = this;
|
|
256
|
+
var endBtnElem = $xeSlider.$refs.refEndBtnElem;
|
|
257
|
+
var startBtnElem = evnt.currentTarget;
|
|
258
|
+
$xeSlider.handleMousedownEvent(evnt, endBtnElem ? endBtnElem.offsetLeft < startBtnElem.offsetLeft : false);
|
|
259
|
+
},
|
|
260
|
+
handleEndMousedownEvent: function handleEndMousedownEvent(evnt) {
|
|
261
|
+
var $xeSlider = this;
|
|
262
|
+
var startBtnElem = $xeSlider.$refs.refStartBtnElem;
|
|
263
|
+
var endBtnElem = evnt.currentTarget;
|
|
264
|
+
$xeSlider.handleMousedownEvent(evnt, startBtnElem ? endBtnElem.offsetLeft > startBtnElem.offsetLeft : true);
|
|
265
|
+
},
|
|
32
266
|
//
|
|
33
267
|
// Render
|
|
34
268
|
//
|
|
35
269
|
renderVN: function renderVN(h) {
|
|
36
270
|
var $xeSlider = this;
|
|
37
|
-
var
|
|
38
|
-
var
|
|
271
|
+
var props = $xeSlider;
|
|
272
|
+
var vertical = props.vertical,
|
|
273
|
+
range = props.range;
|
|
274
|
+
var vSize = $xeSlider.computeSize;
|
|
275
|
+
var formReadonly = $xeSlider.computeFormReadonly;
|
|
276
|
+
var isDisabled = $xeSlider.computeIsDisabled;
|
|
39
277
|
return h('div', {
|
|
40
278
|
ref: 'refElem',
|
|
41
|
-
class: 'vxe-slider'
|
|
42
|
-
},
|
|
279
|
+
class: ['vxe-slider', _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, "size--".concat(vSize), vSize), 'is--vertical', vertical), 'is--readonly', formReadonly), 'is--disabled', isDisabled)]
|
|
280
|
+
}, [h('div', {
|
|
281
|
+
class: 'vxe-slider--inner'
|
|
282
|
+
}, [h('div', {
|
|
283
|
+
ref: 'refBarElem',
|
|
284
|
+
class: 'vxe-slider--bar-wrapper'
|
|
285
|
+
}), h('div', {
|
|
286
|
+
ref: 'refTrackElem',
|
|
287
|
+
class: 'vxe-slider--bar-track'
|
|
288
|
+
}), formReadonly || !range ? (0, _ui.renderEmptyElement)($xeSlider) : h('div', {
|
|
289
|
+
ref: 'refStartBtnElem',
|
|
290
|
+
class: 'vxe-slider--bar-btn vxe-slider--start-btn',
|
|
291
|
+
on: {
|
|
292
|
+
mousedown: $xeSlider.handleStartMousedownEvent
|
|
293
|
+
}
|
|
294
|
+
}), formReadonly ? (0, _ui.renderEmptyElement)($xeSlider) : h('div', {
|
|
295
|
+
ref: 'refEndBtnElem',
|
|
296
|
+
class: 'vxe-slider--bar-btn vxe-slider--end-btn',
|
|
297
|
+
on: {
|
|
298
|
+
mousedown: $xeSlider.handleEndMousedownEvent
|
|
299
|
+
}
|
|
300
|
+
})])]);
|
|
43
301
|
}
|
|
44
302
|
},
|
|
303
|
+
watch: {
|
|
304
|
+
value: function value() {
|
|
305
|
+
var $xeSlider = this;
|
|
306
|
+
$xeSlider.updateModel();
|
|
307
|
+
}
|
|
308
|
+
},
|
|
309
|
+
created: function created() {
|
|
310
|
+
var $xeSlider = this;
|
|
311
|
+
$xeSlider.updateModel();
|
|
312
|
+
},
|
|
313
|
+
mounted: function mounted() {
|
|
314
|
+
var $xeSlider = this;
|
|
315
|
+
$xeSlider.updateBarStyle();
|
|
316
|
+
},
|
|
45
317
|
render: function render(h) {
|
|
46
318
|
return this.renderVN(h);
|
|
47
319
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var
|
|
1
|
+
function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _comp=require("../../ui/src/comp"),_xeUtils=_interopRequireDefault(require("xe-utils")),_ui=require("../../ui");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,r){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _toPropertyKey(e){e=_toPrimitive(e,"string");return"symbol"==_typeof(e)?e:e+""}function _toPrimitive(e,t){if("object"!=_typeof(e)||!e)return e;var r=e[Symbol.toPrimitive];if(void 0===r)return("string"===t?String:Number)(e);r=r.call(e,t||"default");if("object"!=_typeof(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _unsupportedIterableToArray(e,t){var r;if(e)return"string"==typeof e?_arrayLikeToArray(e,t):"Map"===(r="Object"===(r={}.toString.call(e).slice(8,-1))&&e.constructor?e.constructor.name:r)||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray(e,t):void 0}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function _iterableToArrayLimit(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,o,a,i,u=[],l=!0,f=!1;try{if(a=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;l=!1}else for(;!(l=(n=a.call(r)).done)&&(u.push(n.value),u.length!==t);l=!0);}catch(e){f=!0,o=e}finally{try{if(!l&&null!=r.return&&(i=r.return(),Object(i)!==i))return}finally{if(f)throw o}}return u}}function _arrayWithHoles(e){if(Array.isArray(e))return e}var _default2=exports.default=(0,_comp.defineVxeComponent)({name:"VxeSlider",model:{prop:"value",event:"modelValue"},props:{value:[String,Number,Array],vertical:Boolean,max:{type:[String,Number],default:function(){return(0,_ui.getConfig)().slider.max}},min:{type:[String,Number],default:function(){return(0,_ui.getConfig)().slider.min}},step:{type:[String,Number],default:function(){return(0,_ui.getConfig)().slider.step}},size:{type:String,default:function(){return(0,_ui.getConfig)().slider.size||(0,_ui.getConfig)().size}},range:{type:Boolean,default:function(){return(0,_ui.getConfig)().slider.range}},readonly:{type:Boolean,default:null},disabled:{type:Boolean,default:null}},inject:{$xeForm:{default:null},formItemInfo:{from:"xeFormItemInfo",default:null}},data:function(){return{xID:_xeUtils.default.uniqueId(),reactData:{startValue:0,endValue:0}}},computed:Object.assign(Object.assign({},{}),{computeFormReadonly:function(){var e=this.$xeForm,t=this.readonly;return null===t?!!e&&e.readonly:t},computeIsDisabled:function(){var e=this.$xeForm,t=this.disabled;return null===t?!!e&&e.disabled:t},computeMaxNum:function(){return _xeUtils.default.toNumber(this.max||0)},computeMinNum:function(){return _xeUtils.default.toNumber(this.min||0)}}),methods:{dispatchEvent:function(e,t,r){this.$emit(e,(0,_ui.createEvent)(r,{$watermark:this},t))},emitModel:function(e){this.$emit("modelValue",e)},getStartPercent:function(e){var t=this.range,r=this.computeMaxNum,n=this.computeMinNum;return t?_xeUtils.default.floor((e-n)/_xeUtils.default.toNumber(r-n)*100):0},getEndPercent:function(e,t){var r=this.range,n=this.computeMaxNum,o=this.computeMinNum;return _xeUtils.default.floor((t-(r?e:0)-o)/_xeUtils.default.toNumber(n-o)*100)},updateModel:function(){var e,t,r=this.reactData,n=this.value;_xeUtils.default.isArray(n)?(e=(t=_slicedToArray(_xeUtils.default.clone(n,!0).sort(),2))[0],t=t[1],r.startValue=_xeUtils.default.floor(_xeUtils.default.toNumber(e||0)),r.endValue=_xeUtils.default.floor(_xeUtils.default.toNumber(t||0))):(r.startValue=0,r.endValue=_xeUtils.default.floor(_xeUtils.default.toNumber(n||0)))},updateBarStyle:function(){var e=this,t=e.reactData,r=t.startValue,t=t.endValue,n=e.$refs.refTrackElem,o=e.$refs.refStartBtnElem,a=e.$refs.refEndBtnElem,i=0,u=0,u=t<r?(i=e.getStartPercent(t),e.getEndPercent(t,r)):(i=e.getStartPercent(r),e.getEndPercent(r,t));n&&(n.style.left="".concat(i,"%"),n.style.width="".concat(u,"%")),o&&(o.style.left="".concat(i,"%")),a&&(a.style.left="".concat(_xeUtils.default.floor(i+u),"%"))},changeEvent:function(e){var t=this,r=t.reactData,n=t.$xeForm,o=t.formItemInfo,a=t.range,i=r.startValue,r=r.endValue,a=a?[i,r].sort():r;t.emitModel(a),t.dispatchEvent("change",{value:a},e),n&&o&&n.triggerItemEvent(e,o.itemConfig.field,a)},handleMousedownEvent:function(e,r){var t,n,o=this,a=o.reactData,i=o.computeMaxNum,u=o.computeMinNum;o.computeFormReadonly||o.computeIsDisabled||(e.preventDefault(),t=document.onmousemove,n=document.onmouseup,document.onmousemove=function(e){e.preventDefault();var t=o.$refs.refBarElem;t&&(t=t.getBoundingClientRect(),e=(e.clientX-t.left)/914,r?a.endValue=_xeUtils.default.floor(Math.max(u,Math.min(i,e*(i-u)+u))):a.startValue=_xeUtils.default.floor(Math.max(u,Math.min(i,e*(i-u))))),o.updateBarStyle()},document.onmouseup=function(e){document.onmousemove=t,document.onmouseup=n,o.changeEvent(e),o.updateBarStyle()})},handleStartMousedownEvent:function(e){var t=this.$refs.refEndBtnElem,r=e.currentTarget;this.handleMousedownEvent(e,!!t&&t.offsetLeft<r.offsetLeft)},handleEndMousedownEvent:function(e){var t=this.$refs.refStartBtnElem,r=e.currentTarget;this.handleMousedownEvent(e,!t||r.offsetLeft>t.offsetLeft)},renderVN:function(e){var t=this,r=t.vertical,n=t.range,o=t.computeSize,a=t.computeFormReadonly,i=t.computeIsDisabled;return e("div",{ref:"refElem",class:["vxe-slider",_defineProperty(_defineProperty(_defineProperty(_defineProperty({},"size--".concat(o),o),"is--vertical",r),"is--readonly",a),"is--disabled",i)]},[e("div",{class:"vxe-slider--inner"},[e("div",{ref:"refBarElem",class:"vxe-slider--bar-wrapper"}),e("div",{ref:"refTrackElem",class:"vxe-slider--bar-track"}),a||!n?(0,_ui.renderEmptyElement)(t):e("div",{ref:"refStartBtnElem",class:"vxe-slider--bar-btn vxe-slider--start-btn",on:{mousedown:t.handleStartMousedownEvent}}),a?(0,_ui.renderEmptyElement)(t):e("div",{ref:"refEndBtnElem",class:"vxe-slider--bar-btn vxe-slider--end-btn",on:{mousedown:t.handleEndMousedownEvent}})])])}},watch:{value:function(){this.updateModel()}},created:function(){this.updateModel()},mounted:function(){this.updateBarStyle()},render:function(e){return this.renderVN(e)}});
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
.vxe-slider {
|
|
2
|
+
position: relative;
|
|
3
|
+
display: block;
|
|
4
|
+
padding: 0.5em 1em;
|
|
5
|
+
}
|
|
6
|
+
.vxe-slider.theme--primary .vxe-slider--bar-track {
|
|
7
|
+
background-color: var(--vxe-ui-font-primary-color);
|
|
8
|
+
}
|
|
9
|
+
.vxe-slider.theme--primary .vxe-slider--bar-track:hover {
|
|
10
|
+
background-color: var(--vxe-ui-font-primary-lighten-color);
|
|
11
|
+
}
|
|
12
|
+
.vxe-slider.theme--primary .vxe-slider--bar-track:hover {
|
|
13
|
+
background-color: var(--vxe-ui-font-primary-darken-color);
|
|
14
|
+
}
|
|
15
|
+
.vxe-slider.theme--primary .vxe-slider--bar-btn {
|
|
16
|
+
background-color: var(--vxe-ui-font-primary-color);
|
|
17
|
+
}
|
|
18
|
+
.vxe-slider.theme--success .vxe-slider--bar-track {
|
|
19
|
+
background-color: var(--vxe-ui-status-success-color);
|
|
20
|
+
}
|
|
21
|
+
.vxe-slider.theme--success .vxe-slider--bar-track:hover {
|
|
22
|
+
background-color: var(--vxe-ui-status-success-lighten-color);
|
|
23
|
+
}
|
|
24
|
+
.vxe-slider.theme--success .vxe-slider--bar-track:hover {
|
|
25
|
+
background-color: var(--vxe-ui-status-success-darken-color);
|
|
26
|
+
}
|
|
27
|
+
.vxe-slider.theme--success .vxe-slider--bar-btn {
|
|
28
|
+
background-color: var(--vxe-ui-status-success-color);
|
|
29
|
+
}
|
|
30
|
+
.vxe-slider.theme--info .vxe-slider--bar-track {
|
|
31
|
+
background-color: var(--vxe-ui-status-info-color);
|
|
32
|
+
}
|
|
33
|
+
.vxe-slider.theme--info .vxe-slider--bar-track:hover {
|
|
34
|
+
background-color: var(--vxe-ui-status-info-lighten-color);
|
|
35
|
+
}
|
|
36
|
+
.vxe-slider.theme--info .vxe-slider--bar-track:hover {
|
|
37
|
+
background-color: var(--vxe-ui-status-info-darken-color);
|
|
38
|
+
}
|
|
39
|
+
.vxe-slider.theme--info .vxe-slider--bar-btn {
|
|
40
|
+
background-color: var(--vxe-ui-status-info-color);
|
|
41
|
+
}
|
|
42
|
+
.vxe-slider.theme--warning .vxe-slider--bar-track {
|
|
43
|
+
background-color: var(--vxe-ui-status-warning-color);
|
|
44
|
+
}
|
|
45
|
+
.vxe-slider.theme--warning .vxe-slider--bar-track:hover {
|
|
46
|
+
background-color: var(--vxe-ui-status-warning-lighten-color);
|
|
47
|
+
}
|
|
48
|
+
.vxe-slider.theme--warning .vxe-slider--bar-track:hover {
|
|
49
|
+
background-color: var(--vxe-ui-status-warning-darken-color);
|
|
50
|
+
}
|
|
51
|
+
.vxe-slider.theme--warning .vxe-slider--bar-btn {
|
|
52
|
+
background-color: var(--vxe-ui-status-warning-color);
|
|
53
|
+
}
|
|
54
|
+
.vxe-slider.theme--danger .vxe-slider--bar-track {
|
|
55
|
+
background-color: var(--vxe-ui-status-danger-color);
|
|
56
|
+
}
|
|
57
|
+
.vxe-slider.theme--danger .vxe-slider--bar-track:hover {
|
|
58
|
+
background-color: var(--vxe-ui-status-danger-lighten-color);
|
|
59
|
+
}
|
|
60
|
+
.vxe-slider.theme--danger .vxe-slider--bar-track:hover {
|
|
61
|
+
background-color: var(--vxe-ui-status-danger-darken-color);
|
|
62
|
+
}
|
|
63
|
+
.vxe-slider.theme--danger .vxe-slider--bar-btn {
|
|
64
|
+
background-color: var(--vxe-ui-status-danger-color);
|
|
65
|
+
}
|
|
66
|
+
.vxe-slider.theme--error .vxe-slider--bar-track {
|
|
67
|
+
background-color: var(--vxe-ui-status-error-color);
|
|
68
|
+
}
|
|
69
|
+
.vxe-slider.theme--error .vxe-slider--bar-track:hover {
|
|
70
|
+
background-color: var(--vxe-ui-status-error-lighten-color);
|
|
71
|
+
}
|
|
72
|
+
.vxe-slider.theme--error .vxe-slider--bar-track:hover {
|
|
73
|
+
background-color: var(--vxe-ui-status-error-darken-color);
|
|
74
|
+
}
|
|
75
|
+
.vxe-slider.theme--error .vxe-slider--bar-btn {
|
|
76
|
+
background-color: var(--vxe-ui-status-error-color);
|
|
77
|
+
}
|
|
78
|
+
.vxe-slider.is--disabled .vxe-slider--bar-btn {
|
|
79
|
+
cursor: not-allowed;
|
|
80
|
+
}
|
|
81
|
+
.vxe-slider:not(.is--disabled) .vxe-slider--bar-wrapper,
|
|
82
|
+
.vxe-slider:not(.is--disabled) .vxe-slider--inner {
|
|
83
|
+
cursor: pointer;
|
|
84
|
+
}
|
|
85
|
+
.vxe-slider:not(.is--disabled) .vxe-slider--bar-btn:hover {
|
|
86
|
+
transform: scale(1.2);
|
|
87
|
+
}
|
|
88
|
+
.vxe-slider:not(.is--disabled) .vxe-slider--bar-btn:active {
|
|
89
|
+
transform: scale(1.1);
|
|
90
|
+
}
|
|
91
|
+
.vxe-slider.is--readonly .vxe-slider--bar-wrapper,
|
|
92
|
+
.vxe-slider.is--readonly .vxe-slider--inner {
|
|
93
|
+
cursor: default;
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
.vxe-slider--inner {
|
|
97
|
+
position: relative;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
.vxe-slider--bar-wrapper {
|
|
101
|
+
background-color: #e4e7ed;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.vxe-slider--bar-track {
|
|
105
|
+
position: absolute;
|
|
106
|
+
left: 0;
|
|
107
|
+
top: 0;
|
|
108
|
+
z-index: 1;
|
|
109
|
+
background-color: var(--vxe-ui-font-primary-color);
|
|
110
|
+
}
|
|
111
|
+
.vxe-slider--bar-track:hover {
|
|
112
|
+
background-color: var(--vxe-ui-font-primary-lighten-color);
|
|
113
|
+
}
|
|
114
|
+
.vxe-slider--bar-track:active {
|
|
115
|
+
background-color: var(--vxe-ui-font-primary-darken-color);
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
.vxe-slider--bar-wrapper,
|
|
119
|
+
.vxe-slider--bar-track {
|
|
120
|
+
height: 0.3em;
|
|
121
|
+
border-radius: var(--vxe-ui-base-border-radius);
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
.vxe-slider--bar-btn {
|
|
125
|
+
position: absolute;
|
|
126
|
+
width: 0.9em;
|
|
127
|
+
height: 0.9em;
|
|
128
|
+
top: -0.3em;
|
|
129
|
+
border-radius: 50%;
|
|
130
|
+
border: 0.15em solid var(--vxe-ui-font-primary-color);
|
|
131
|
+
background-color: #fff;
|
|
132
|
+
cursor: pointer;
|
|
133
|
+
z-index: 1;
|
|
134
|
+
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
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.vxe-slider{position:relative;display:block;padding:.5em 1em}.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:scale(1.2)}.vxe-slider:not(.is--disabled) .vxe-slider--bar-btn:active{transform: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:.9em;height:.9em;top:-.3em;border-radius:50%;border:.15em solid var(--vxe-ui-font-primary-color);background-color:#fff;cursor:pointer;z-index:1;transition:transform .1s ease-in-out}.vxe-slider--start-btn{left:-.45em}.vxe-slider--end-btn{right:-.45em}
|