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.
Files changed (53) hide show
  1. package/es/avatar/style.css +0 -5
  2. package/es/avatar/style.min.css +1 -1
  3. package/es/icon/style.css +1 -1
  4. package/es/slider/src/slider.js +268 -7
  5. package/es/slider/style.css +143 -0
  6. package/es/slider/style.min.css +1 -0
  7. package/es/style.css +1 -1
  8. package/es/style.min.css +1 -1
  9. package/es/ui/index.js +5 -2
  10. package/es/ui/src/log.js +1 -1
  11. package/es/vxe-avatar/style.css +0 -5
  12. package/es/vxe-avatar/style.min.css +1 -1
  13. package/es/vxe-slider/style.css +143 -0
  14. package/es/vxe-slider/style.min.css +1 -0
  15. package/lib/avatar/style/style.css +0 -5
  16. package/lib/avatar/style/style.min.css +1 -1
  17. package/lib/icon/style/style.css +1 -1
  18. package/lib/icon/style/style.min.css +1 -1
  19. package/lib/index.umd.js +435 -9
  20. package/lib/index.umd.min.js +1 -1
  21. package/lib/slider/src/slider.js +279 -7
  22. package/lib/slider/src/slider.min.js +1 -1
  23. package/lib/slider/style/style.css +143 -0
  24. package/lib/slider/style/style.min.css +1 -0
  25. package/lib/style.css +1 -1
  26. package/lib/style.min.css +1 -1
  27. package/lib/ui/index.js +5 -2
  28. package/lib/ui/index.min.js +1 -1
  29. package/lib/ui/src/log.js +1 -1
  30. package/lib/ui/src/log.min.js +1 -1
  31. package/lib/vxe-avatar/style/style.css +0 -5
  32. package/lib/vxe-avatar/style/style.min.css +1 -1
  33. package/lib/vxe-slider/style/style.css +143 -0
  34. package/lib/vxe-slider/style/style.min.css +1 -0
  35. package/package.json +1 -1
  36. package/packages/slider/src/slider.ts +286 -7
  37. package/packages/ui/index.ts +4 -1
  38. package/styles/components/avatar.scss +3 -8
  39. package/styles/components/slider.scss +138 -0
  40. package/types/components/slider.d.ts +27 -2
  41. package/types/components/switch.d.ts +1 -1
  42. /package/es/icon/style/{iconfont.1728032194284.ttf → iconfont.1728123720853.ttf} +0 -0
  43. /package/es/icon/style/{iconfont.1728032194284.woff → iconfont.1728123720853.woff} +0 -0
  44. /package/es/icon/style/{iconfont.1728032194284.woff2 → iconfont.1728123720853.woff2} +0 -0
  45. /package/es/{iconfont.1728032194284.ttf → iconfont.1728123720853.ttf} +0 -0
  46. /package/es/{iconfont.1728032194284.woff → iconfont.1728123720853.woff} +0 -0
  47. /package/es/{iconfont.1728032194284.woff2 → iconfont.1728123720853.woff2} +0 -0
  48. /package/lib/icon/style/{iconfont.1728032194284.ttf → iconfont.1728123720853.ttf} +0 -0
  49. /package/lib/icon/style/{iconfont.1728032194284.woff → iconfont.1728123720853.woff} +0 -0
  50. /package/lib/icon/style/{iconfont.1728032194284.woff2 → iconfont.1728123720853.woff2} +0 -0
  51. /package/lib/{iconfont.1728032194284.ttf → iconfont.1728123720853.ttf} +0 -0
  52. /package/lib/{iconfont.1728032194284.woff → iconfont.1728123720853.woff} +0 -0
  53. /package/lib/{iconfont.1728032194284.woff2 → iconfont.1728123720853.woff2} +0 -0
@@ -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
- var _default = exports.default = (0, _comp.defineVxeComponent)({
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
- props: {},
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 slots = $xeSlider.$scopedSlots;
38
- var defaultSlot = slots.default;
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
- }, defaultSlot ? defaultSlot({}) : []);
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 _default=exports.default=(0,_comp.defineVxeComponent)({name:"VxeSlider",props:{},data:function(){return{xID:_xeUtils.default.uniqueId(),reactData:{}}},methods:{dispatchEvent:function(e,t,r){this.$emit(e,(0,_ui.createEvent)(r,{$watermark:this},t))},renderVN:function(e){var t=this.$scopedSlots.default;return e("div",{ref:"refElem",class:"vxe-slider"},t?t({}):[])}},render:function(e){return this.renderVN(e)}});
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}