@mdsfe/mds-ui 0.3.0-20 → 0.3.0-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/dist/datepicker.js +356 -138
- package/dist/index.js +1 -1
- package/dist/mds-ui.min.css +1 -1
- package/dist/mds-ui.min.js +374 -158
- package/dist/style/datepicker.css +7 -0
- package/package.json +1 -1
package/dist/mds-ui.min.js
CHANGED
|
@@ -44093,12 +44093,12 @@ var datepicker_style_transition = __webpack_require__(393);
|
|
|
44093
44093
|
|
|
44094
44094
|
|
|
44095
44095
|
|
|
44096
|
-
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./components/datepicker/picker/picker.vue?vue&type=template&id=
|
|
44097
|
-
var
|
|
44098
|
-
var
|
|
44096
|
+
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./components/datepicker/picker/picker.vue?vue&type=template&id=12fefd94&
|
|
44097
|
+
var pickervue_type_template_id_12fefd94_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (!_vm.ranged)?_c('mds-input',_vm._b({directives:[{name:"clickoutside",rawName:"v-clickoutside",value:(_vm.handleClose),expression:"handleClose"}],ref:"reference",class:_vm.wrapperClass,attrs:{"readonly":!_vm.editable || _vm.readonly || _vm.type === 'dates' || _vm.type === 'week',"disabled":_vm.pickerDisabled,"size":_vm.pickerSize,"name":_vm.name,"placeholder":_vm.placeholder,"value":_vm.displayValue,"validateEvent":false,"role":"picker"},on:{"focus":_vm.handleFocus,"input":function (value) { return _vm.userInput = value; },"change":_vm.handleChange},nativeOn:{"keydown":function($event){return _vm.handleKeydown($event)},"mouseenter":function($event){return _vm.handleMouseEnter($event)},"mouseleave":function($event){_vm.showClose = false}}},'mds-input',_vm.firstInputId,false),[(_vm.showCalendar)?_c('i',{staticClass:"mdsicon mdsicon-line-calendar",class:_vm.triggerClass,attrs:{"slot":"suffix"},on:{"click":_vm.handleFocus},slot:"suffix"}):_vm._e(),_vm._v(" "),(_vm.haveTrigger)?_c('i',{staticClass:"mdsicon",class:[_vm.showClose ? '' + _vm.clearIcon : '',(_vm.prefixCls + "-close-icon")],attrs:{"slot":"suffix"},on:{"click":_vm.handleClickIcon},slot:"suffix"}):_vm._e()]):_c('div',{directives:[{name:"clickoutside",rawName:"v-clickoutside",value:(_vm.handleClose),expression:"handleClose"}],ref:"reference",class:_vm.wrapperRangeClass,on:{"click":_vm.handleRangeClick,"mouseenter":_vm.handleMouseEnter,"mouseleave":function($event){_vm.showClose = false},"keydown":_vm.handleKeydown}},[_c('input',_vm._b({class:(_vm.prefixCls + "-editor-range-input"),attrs:{"autocomplete":"off","placeholder":_vm.startPlaceholder,"disabled":_vm.pickerDisabled,"readonly":!_vm.editable || _vm.readonly,"name":_vm.name && _vm.name[0]},domProps:{"value":_vm.displayValue && _vm.displayValue[0]},on:{"input":_vm.handleStartInput,"change":_vm.handleStartChange,"focus":_vm.handleFocus}},'input',_vm.firstInputId,false)),_vm._v(" "),_vm._t("range-separator",[_c('span',{staticClass:"mds-range-separator",style:({color: _vm.type==='datetimerangeflat'? '#303133' : ''})},[_vm._v(_vm._s(_vm.rangeSeparator))])]),_vm._v(" "),_c('input',_vm._b({class:(_vm.prefixCls + "-editor-range-input"),attrs:{"autocomplete":"off","placeholder":_vm.endPlaceholder,"disabled":_vm.pickerDisabled,"readonly":!_vm.editable || _vm.readonly,"name":_vm.name && _vm.name[1]},domProps:{"value":_vm.displayValue && _vm.displayValue[1]},on:{"input":_vm.handleEndInput,"change":_vm.handleEndChange,"focus":_vm.handleFocus}},'input',_vm.secondInputId,false)),_vm._v(" "),(_vm.showCalendar)?_c('i',{class:[ 'mdsicon', ((this.prefixCls) + "-editor-range-icon-pos"), _vm.triggerClass]}):_vm._e(),_vm._v(" "),(_vm.haveTrigger)?_c('i',{staticClass:"mdsicon",class:[_vm.showClose ? '' + _vm.clearIcon : '', (_vm.prefixCls + "-close-icon " + (this.prefixCls) + "-editor-range-icon-pos")],on:{"click":_vm.handleClickIcon}}):_vm._e()],2)}
|
|
44098
|
+
var pickervue_type_template_id_12fefd94_staticRenderFns = []
|
|
44099
44099
|
|
|
44100
44100
|
|
|
44101
|
-
// CONCATENATED MODULE: ./components/datepicker/picker/picker.vue?vue&type=template&id=
|
|
44101
|
+
// CONCATENATED MODULE: ./components/datepicker/picker/picker.vue?vue&type=template&id=12fefd94&
|
|
44102
44102
|
|
|
44103
44103
|
// EXTERNAL MODULE: ./components/_util/date.js
|
|
44104
44104
|
var _util_date = __webpack_require__(41);
|
|
@@ -44828,6 +44828,10 @@ var pickervue_type_script_lang_js_validator = function validator(val) {
|
|
|
44828
44828
|
pickerType: {
|
|
44829
44829
|
type: String,
|
|
44830
44830
|
default: 'date'
|
|
44831
|
+
},
|
|
44832
|
+
appendToBody: {
|
|
44833
|
+
type: Boolean,
|
|
44834
|
+
default: true // 默认插入到 body
|
|
44831
44835
|
}
|
|
44832
44836
|
},
|
|
44833
44837
|
|
|
@@ -45225,31 +45229,46 @@ var pickervue_type_script_lang_js_validator = function validator(val) {
|
|
|
45225
45229
|
}
|
|
45226
45230
|
this.$emit('focus', this);
|
|
45227
45231
|
},
|
|
45228
|
-
|
|
45229
|
-
|
|
45230
|
-
|
|
45231
|
-
this.pickerVisible = this.picker.visible = false;
|
|
45232
|
-
this.destroyPopper();
|
|
45233
|
-
}
|
|
45234
|
-
},
|
|
45232
|
+
|
|
45233
|
+
|
|
45234
|
+
// 修复 showPicker 方法
|
|
45235
45235
|
showPicker: function showPicker() {
|
|
45236
45236
|
var _this2 = this;
|
|
45237
45237
|
|
|
45238
45238
|
if (this.$isServer) return;
|
|
45239
|
-
|
|
45239
|
+
|
|
45240
|
+
// 如果面板已存在,先重置状态
|
|
45241
|
+
if (this.picker) {
|
|
45242
|
+
this.picker.resetView && this.picker.resetView();
|
|
45243
|
+
this.picker.visible = false;
|
|
45244
|
+
} else {
|
|
45245
|
+
// 面板不存在时才创建
|
|
45240
45246
|
this.mountPicker();
|
|
45241
45247
|
}
|
|
45248
|
+
|
|
45249
|
+
// 设置面板可见
|
|
45242
45250
|
this.pickerVisible = this.picker.visible = true;
|
|
45243
45251
|
|
|
45252
|
+
// 确保面板在正确的位置
|
|
45253
|
+
this.ensurePanelPosition();
|
|
45254
|
+
|
|
45255
|
+
// 更新 Popper 定位
|
|
45244
45256
|
this.updatePopper();
|
|
45245
45257
|
|
|
45258
|
+
// 重置面板状态
|
|
45246
45259
|
this.picker.value = this.parsedValue;
|
|
45247
45260
|
this.picker.resetView && this.picker.resetView();
|
|
45248
45261
|
|
|
45249
45262
|
this.$nextTick(function () {
|
|
45250
45263
|
_this2.picker.adjustSpinners && _this2.picker.adjustSpinners();
|
|
45264
|
+
// 再次确保位置正确并更新定位
|
|
45265
|
+
_this2.ensurePanelPosition();
|
|
45266
|
+
_this2.updatePopper();
|
|
45251
45267
|
});
|
|
45252
45268
|
},
|
|
45269
|
+
|
|
45270
|
+
|
|
45271
|
+
// 修复 mountPicker 方法
|
|
45253
45272
|
mountPicker: function mountPicker() {
|
|
45254
45273
|
var _this3 = this;
|
|
45255
45274
|
|
|
@@ -45257,16 +45276,25 @@ var pickervue_type_script_lang_js_validator = function validator(val) {
|
|
|
45257
45276
|
this.picker = new Panel({
|
|
45258
45277
|
propsData: {
|
|
45259
45278
|
pickerType: this.type,
|
|
45260
|
-
referenceElm: this.reference,
|
|
45279
|
+
referenceElm: this.reference,
|
|
45261
45280
|
popperClass: this.popperClass,
|
|
45262
|
-
appendToBody:
|
|
45263
|
-
placement:
|
|
45281
|
+
appendToBody: this.appendToBody, // 使用组件的 appendToBody 配置
|
|
45282
|
+
placement: this.placement
|
|
45264
45283
|
}
|
|
45265
45284
|
}).$mount();
|
|
45266
|
-
|
|
45285
|
+
|
|
45286
|
+
// 根据配置决定插入位置
|
|
45267
45287
|
if (this.type !== 'quarter') {
|
|
45268
|
-
|
|
45288
|
+
if (this.appendToBody !== false) {
|
|
45289
|
+
// 插入到 body 下
|
|
45290
|
+
document.body.appendChild(this.picker.$el);
|
|
45291
|
+
} else {
|
|
45292
|
+
// 插入到当前元素下
|
|
45293
|
+
this.$el.appendChild(this.picker.$el);
|
|
45294
|
+
}
|
|
45269
45295
|
}
|
|
45296
|
+
|
|
45297
|
+
// 设置面板属性
|
|
45270
45298
|
this.picker.defaultValue = this.defaultValue;
|
|
45271
45299
|
this.picker.defaultTime = this.defaultTime;
|
|
45272
45300
|
this.picker.popperClass = this.popperClass;
|
|
@@ -45278,58 +45306,41 @@ var pickervue_type_script_lang_js_validator = function validator(val) {
|
|
|
45278
45306
|
this.picker.arrowControl = this.arrowControl || this.timeArrowControl || false;
|
|
45279
45307
|
this.picker.listenScroll = this.listenScroll;
|
|
45280
45308
|
this.picker.step = this.step;
|
|
45309
|
+
|
|
45310
|
+
// 监听格式变化
|
|
45281
45311
|
this.$watch('format', function (format) {
|
|
45282
45312
|
_this3.picker.format = format;
|
|
45283
45313
|
});
|
|
45284
45314
|
|
|
45285
|
-
|
|
45286
|
-
|
|
45287
|
-
|
|
45288
|
-
if (options && options.selectableRange) {
|
|
45289
|
-
var ranges = options.selectableRange;
|
|
45290
|
-
var parser = TYPE_VALUE_RESOLVER_MAP.datetimerange.parser;
|
|
45291
|
-
var format = DEFAULT_FORMATS.timerange;
|
|
45292
|
-
|
|
45293
|
-
ranges = Array.isArray(ranges) ? ranges : [ranges];
|
|
45294
|
-
_this3.picker.selectableRange = ranges.map(function (range) {
|
|
45295
|
-
return parser(range, format, _this3.rangeSeparator);
|
|
45296
|
-
});
|
|
45297
|
-
}
|
|
45298
|
-
|
|
45299
|
-
for (var option in options) {
|
|
45300
|
-
if (options.hasOwnProperty(option) &&
|
|
45301
|
-
// 忽略 time-picker 的该配置项
|
|
45302
|
-
option !== 'selectableRange') {
|
|
45303
|
-
_this3.picker[option] = options[option];
|
|
45304
|
-
}
|
|
45305
|
-
}
|
|
45306
|
-
|
|
45307
|
-
// main format must prevail over undocumented pickerOptions.format
|
|
45308
|
-
if (_this3.format) {
|
|
45309
|
-
_this3.picker.format = _this3.format;
|
|
45310
|
-
}
|
|
45311
|
-
};
|
|
45312
|
-
updateOptions();
|
|
45313
|
-
this.unwatchPickerOptions = this.$watch('pickerOptions', function () {
|
|
45314
|
-
return updateOptions();
|
|
45315
|
-
}, { deep: true });
|
|
45316
|
-
// this.$el.appendChild(this.picker.$el)
|
|
45317
|
-
this.picker.resetView && this.picker.resetView();
|
|
45315
|
+
// 更新选项
|
|
45316
|
+
this.updatePickerOptions();
|
|
45318
45317
|
|
|
45318
|
+
// 设置事件监听
|
|
45319
45319
|
this.picker.$on('dodestroy', this.doDestroy);
|
|
45320
|
+
|
|
45321
|
+
// 修复 pick 事件处理
|
|
45320
45322
|
this.picker.$on('pick', function () {
|
|
45321
45323
|
var date = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
|
45322
45324
|
var visible = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
45323
45325
|
|
|
45324
45326
|
_this3.userInput = null;
|
|
45325
|
-
|
|
45327
|
+
|
|
45328
|
+
if (visible === false) {
|
|
45329
|
+
// 隐藏面板但不销毁
|
|
45330
|
+
_this3.pickerVisible = false;
|
|
45331
|
+
_this3.picker.visible = false;
|
|
45332
|
+
_this3.hidePicker();
|
|
45333
|
+
} else {
|
|
45334
|
+
// 保持面板可见
|
|
45335
|
+
_this3.pickerVisible = true;
|
|
45336
|
+
_this3.picker.visible = true;
|
|
45337
|
+
}
|
|
45338
|
+
|
|
45326
45339
|
_this3.emitInput(date);
|
|
45327
45340
|
_this3.picker.resetView && _this3.picker.resetView();
|
|
45328
|
-
if (!visible) {
|
|
45329
|
-
_this3.unmountPicker();
|
|
45330
|
-
}
|
|
45331
45341
|
});
|
|
45332
45342
|
|
|
45343
|
+
// 其他事件监听保持不变
|
|
45333
45344
|
this.picker.$on('select-range', function (start, end, pos) {
|
|
45334
45345
|
if (_this3.refInput.length === 0) return;
|
|
45335
45346
|
if (!pos || pos === 'min') {
|
|
@@ -45341,14 +45352,99 @@ var pickervue_type_script_lang_js_validator = function validator(val) {
|
|
|
45341
45352
|
}
|
|
45342
45353
|
});
|
|
45343
45354
|
},
|
|
45355
|
+
|
|
45356
|
+
|
|
45357
|
+
// 新增方法:更新面板选项
|
|
45358
|
+
updatePickerOptions: function updatePickerOptions() {
|
|
45359
|
+
var _this4 = this;
|
|
45360
|
+
|
|
45361
|
+
var options = this.pickerOptions;
|
|
45362
|
+
|
|
45363
|
+
if (options && options.selectableRange) {
|
|
45364
|
+
var ranges = options.selectableRange;
|
|
45365
|
+
var parser = TYPE_VALUE_RESOLVER_MAP.datetimerange.parser;
|
|
45366
|
+
var format = DEFAULT_FORMATS.timerange;
|
|
45367
|
+
|
|
45368
|
+
ranges = Array.isArray(ranges) ? ranges : [ranges];
|
|
45369
|
+
this.picker.selectableRange = ranges.map(function (range) {
|
|
45370
|
+
return parser(range, format, _this4.rangeSeparator);
|
|
45371
|
+
});
|
|
45372
|
+
}
|
|
45373
|
+
|
|
45374
|
+
for (var option in options) {
|
|
45375
|
+
if (options.hasOwnProperty(option) && option !== 'selectableRange') {
|
|
45376
|
+
this.picker[option] = options[option];
|
|
45377
|
+
}
|
|
45378
|
+
}
|
|
45379
|
+
|
|
45380
|
+
// 主格式优先
|
|
45381
|
+
if (this.format) {
|
|
45382
|
+
this.picker.format = this.format;
|
|
45383
|
+
}
|
|
45384
|
+
},
|
|
45385
|
+
|
|
45386
|
+
|
|
45387
|
+
// 修复 hidePicker 方法
|
|
45388
|
+
hidePicker: function hidePicker() {
|
|
45389
|
+
if (this.picker) {
|
|
45390
|
+
this.picker.resetView && this.picker.resetView();
|
|
45391
|
+
this.pickerVisible = this.picker.visible = false;
|
|
45392
|
+
|
|
45393
|
+
// 不要立即销毁面板,只是隐藏
|
|
45394
|
+
// this.destroyPopper()
|
|
45395
|
+
|
|
45396
|
+
// 确保面板位置正确
|
|
45397
|
+
this.ensurePanelPosition();
|
|
45398
|
+
}
|
|
45399
|
+
},
|
|
45400
|
+
|
|
45401
|
+
|
|
45402
|
+
// 确保面板位置正确的方法
|
|
45403
|
+
ensurePanelPosition: function ensurePanelPosition() {
|
|
45404
|
+
var _this5 = this;
|
|
45405
|
+
|
|
45406
|
+
if (!this.picker || !this.picker.$el) return;
|
|
45407
|
+
|
|
45408
|
+
var panelEl = this.picker.$el;
|
|
45409
|
+
var currentParent = panelEl.parentNode;
|
|
45410
|
+
|
|
45411
|
+
// 检查面板是否在正确的位置
|
|
45412
|
+
if (this.appendToBody !== false && currentParent !== document.body) {
|
|
45413
|
+
// 面板不在 body 下,需要移动到 body
|
|
45414
|
+
if (currentParent) {
|
|
45415
|
+
currentParent.removeChild(panelEl);
|
|
45416
|
+
}
|
|
45417
|
+
document.body.appendChild(panelEl);
|
|
45418
|
+
|
|
45419
|
+
// 重新计算定位
|
|
45420
|
+
this.$nextTick(function () {
|
|
45421
|
+
_this5.updatePopper();
|
|
45422
|
+
});
|
|
45423
|
+
} else if (this.appendToBody === false && currentParent !== this.$el) {
|
|
45424
|
+
// 面板不在当前元素下,需要移动
|
|
45425
|
+
if (currentParent) {
|
|
45426
|
+
currentParent.removeChild(panelEl);
|
|
45427
|
+
}
|
|
45428
|
+
this.$el.appendChild(panelEl);
|
|
45429
|
+
}
|
|
45430
|
+
},
|
|
45431
|
+
|
|
45432
|
+
|
|
45433
|
+
// 修复 unmountPicker 方法
|
|
45344
45434
|
unmountPicker: function unmountPicker() {
|
|
45345
45435
|
if (this.picker) {
|
|
45436
|
+
// 确保面板从正确的父元素中移除
|
|
45437
|
+
if (this.picker.$el && this.picker.$el.parentNode) {
|
|
45438
|
+
this.picker.$el.parentNode.removeChild(this.picker.$el);
|
|
45439
|
+
}
|
|
45440
|
+
|
|
45346
45441
|
this.picker.$destroy();
|
|
45347
45442
|
this.picker.$off();
|
|
45443
|
+
|
|
45348
45444
|
if (typeof this.unwatchPickerOptions === 'function') {
|
|
45349
45445
|
this.unwatchPickerOptions();
|
|
45350
45446
|
}
|
|
45351
|
-
|
|
45447
|
+
|
|
45352
45448
|
this.picker = null;
|
|
45353
45449
|
}
|
|
45354
45450
|
},
|
|
@@ -45397,6 +45493,11 @@ var pickervue_type_script_lang_js_validator = function validator(val) {
|
|
|
45397
45493
|
var selectedMonth = this.value.getMonth();
|
|
45398
45494
|
return selectedYear === this.currentYear && selectedMonth >= quarter.startMonth && selectedMonth <= quarter.endMonth;
|
|
45399
45495
|
}
|
|
45496
|
+
},
|
|
45497
|
+
|
|
45498
|
+
// 生命周期钩子
|
|
45499
|
+
beforeDestroy: function beforeDestroy() {
|
|
45500
|
+
this.unmountPicker();
|
|
45400
45501
|
}
|
|
45401
45502
|
});
|
|
45402
45503
|
// CONCATENATED MODULE: ./components/datepicker/picker/picker.vue?vue&type=script&lang=js&
|
|
@@ -45411,8 +45512,8 @@ var pickervue_type_script_lang_js_validator = function validator(val) {
|
|
|
45411
45512
|
|
|
45412
45513
|
var picker_component = normalizeComponent(
|
|
45413
45514
|
picker_pickervue_type_script_lang_js_,
|
|
45414
|
-
|
|
45415
|
-
|
|
45515
|
+
pickervue_type_template_id_12fefd94_render,
|
|
45516
|
+
pickervue_type_template_id_12fefd94_staticRenderFns,
|
|
45416
45517
|
false,
|
|
45417
45518
|
null,
|
|
45418
45519
|
null,
|
|
@@ -46484,18 +46585,18 @@ var month_table_component = normalizeComponent(
|
|
|
46484
46585
|
)
|
|
46485
46586
|
|
|
46486
46587
|
/* harmony default export */ var month_table = (month_table_component.exports);
|
|
46487
|
-
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./components/datepicker/base/date-table.vue?vue&type=template&id=
|
|
46488
|
-
var
|
|
46588
|
+
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./components/datepicker/base/date-table.vue?vue&type=template&id=1c74037d&
|
|
46589
|
+
var date_tablevue_type_template_id_1c74037d_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{class:(_vm.prefixCls + "-picker-panel-content-thead")},[_c('table',{class:(_vm.prefixCls + "-table-header"),attrs:{"cellspacing":"0","cellpadding":"0"}},[_c('tr',[(_vm.showWeekNumber)?_c('th',[_vm._v(_vm._s(_vm.t("mds.datepicker.week")))]):_vm._e(),_vm._v(" "),_vm._l((_vm.WEEKS),function(week,key){return _c('th',{key:key},[_vm._v("\n "+_vm._s(_vm.t("mds.datepicker.weeks." + week))+"\n ")])})],2)])]),_vm._v(" "),_c('div',{class:(_vm.prefixCls + "-picker-panel-content-line")}),_vm._v(" "),_c('div',{class:(_vm.prefixCls + "-picker-panel-content-tbody")},[_c('table',{class:[
|
|
46489
46590
|
(_vm.prefixCls + "-table"),
|
|
46490
46591
|
{ 'is-week-mode': _vm.selectionMode === 'week' }
|
|
46491
46592
|
],attrs:{"cellspacing":"0","cellpadding":"0"},on:{"click":_vm.handleClick,"mousemove":_vm.handleMouseMove}},[_c('tbody',_vm._l((_vm.rows),function(row,key){return _c('tr',{key:key,class:[
|
|
46492
46593
|
(_vm.prefixCls + "-table-row"),
|
|
46493
46594
|
{ current: _vm.isWeekActive(row[1]) }
|
|
46494
46595
|
]},_vm._l((row),function(cell,key){return _c('td',{key:key,class:_vm.getCellClasses(cell)},[_c('div',[_c('span',[_vm._v(_vm._s(cell.text))])])])}),0)}),0)])])])}
|
|
46495
|
-
var
|
|
46596
|
+
var date_tablevue_type_template_id_1c74037d_staticRenderFns = []
|
|
46496
46597
|
|
|
46497
46598
|
|
|
46498
|
-
// CONCATENATED MODULE: ./components/datepicker/base/date-table.vue?vue&type=template&id=
|
|
46599
|
+
// CONCATENATED MODULE: ./components/datepicker/base/date-table.vue?vue&type=template&id=1c74037d&
|
|
46499
46600
|
|
|
46500
46601
|
// CONCATENATED MODULE: ./node_modules/babel-loader/lib?cacheDirectory=true!./node_modules/vue-loader/lib??vue-loader-options!./components/datepicker/base/date-table.vue?vue&type=script&lang=js&
|
|
46501
46602
|
|
|
@@ -46568,7 +46669,8 @@ var date_tablevue_type_script_lang_js_getDateTimestamp = function getDateTimesta
|
|
|
46568
46669
|
// return a new array if modification occurs
|
|
46569
46670
|
// return the original array otherwise
|
|
46570
46671
|
var date_tablevue_type_script_lang_js_removeFromArray = function removeFromArray(arr, pred) {
|
|
46571
|
-
var idx = typeof pred === 'function' ?
|
|
46672
|
+
var idx = typeof pred === 'function' ? arr.findIndex(pred) // 使用原生 findIndex 方法
|
|
46673
|
+
: arr.indexOf(pred);
|
|
46572
46674
|
return idx >= 0 ? [].concat(toConsumableArray_default()(arr.slice(0, idx)), toConsumableArray_default()(arr.slice(idx + 1))) : arr;
|
|
46573
46675
|
};
|
|
46574
46676
|
|
|
@@ -46647,27 +46749,29 @@ var date_tablevue_type_script_lang_js_removeFromArray = function removeFromArray
|
|
|
46647
46749
|
rows: function rows() {
|
|
46648
46750
|
var _this = this;
|
|
46649
46751
|
|
|
46650
|
-
//
|
|
46752
|
+
// 确保每次计算都从干净的状态开始
|
|
46651
46753
|
var date = new Date(this.year, this.month, 1);
|
|
46652
|
-
var day = getFirstDayOfMonth(date);
|
|
46754
|
+
var day = getFirstDayOfMonth(date);
|
|
46653
46755
|
var dateCountOfMonth = getDayCountOfMonth(date.getFullYear(), date.getMonth());
|
|
46654
46756
|
var dateCountOfLastMonth = getDayCountOfMonth(date.getFullYear(), date.getMonth() === 0 ? 11 : date.getMonth() - 1);
|
|
46655
46757
|
|
|
46656
46758
|
day = day === 0 ? 7 : day;
|
|
46657
|
-
|
|
46658
46759
|
var offset = this.offsetDay;
|
|
46659
46760
|
var rows = this.tableRows;
|
|
46660
46761
|
var count = 1;
|
|
46661
|
-
|
|
46662
46762
|
var startDate = this.startDate;
|
|
46663
46763
|
var disabledDate = this.disabledDate;
|
|
46664
46764
|
var cellClassName = this.cellClassName;
|
|
46765
|
+
|
|
46766
|
+
// 关键修复:确保 selectedDate 是当前有效的选择状态
|
|
46665
46767
|
var selectedDate = this.selectionMode === 'dates' ? coerceTruthyValueToArray(this.value) : [];
|
|
46768
|
+
|
|
46666
46769
|
var now = date_tablevue_type_script_lang_js_getDateTimestamp(new Date());
|
|
46667
46770
|
|
|
46668
46771
|
for (var i = 0; i < 6; i++) {
|
|
46669
46772
|
var row = rows[i];
|
|
46670
46773
|
|
|
46774
|
+
// 重置行状态
|
|
46671
46775
|
if (this.showWeekNumber) {
|
|
46672
46776
|
if (!row[0]) {
|
|
46673
46777
|
row[0] = {
|
|
@@ -46679,33 +46783,51 @@ var date_tablevue_type_script_lang_js_removeFromArray = function removeFromArray
|
|
|
46679
46783
|
|
|
46680
46784
|
var _loop = function _loop(j) {
|
|
46681
46785
|
var cell = row[_this.showWeekNumber ? j + 1 : j];
|
|
46682
|
-
if (!cell) {
|
|
46683
|
-
cell = {
|
|
46684
|
-
row: i,
|
|
46685
|
-
column: j,
|
|
46686
|
-
type: 'normal',
|
|
46687
|
-
inRange: false,
|
|
46688
|
-
start: false,
|
|
46689
|
-
end: false
|
|
46690
|
-
};
|
|
46691
|
-
}
|
|
46692
46786
|
|
|
46693
|
-
cell
|
|
46787
|
+
// 关键修复:每次都创建新的 cell 对象,避免状态污染
|
|
46788
|
+
cell = {
|
|
46789
|
+
row: i,
|
|
46790
|
+
column: j,
|
|
46791
|
+
type: 'normal',
|
|
46792
|
+
inRange: false,
|
|
46793
|
+
start: false,
|
|
46794
|
+
end: false,
|
|
46795
|
+
disabled: false,
|
|
46796
|
+
selected: false,
|
|
46797
|
+
customClass: null
|
|
46798
|
+
};
|
|
46694
46799
|
|
|
46695
46800
|
var index = i * 7 + j;
|
|
46696
46801
|
var time = nextDate(startDate, index - offset).getTime();
|
|
46697
|
-
|
|
46698
|
-
|
|
46699
|
-
|
|
46700
|
-
|
|
46802
|
+
var cellDate = new Date(time);
|
|
46803
|
+
|
|
46804
|
+
// 正确计算范围状态
|
|
46805
|
+
if (_this.minDate && _this.maxDate) {
|
|
46806
|
+
var minTime = date_tablevue_type_script_lang_js_getDateTimestamp(_this.minDate);
|
|
46807
|
+
var maxTime = date_tablevue_type_script_lang_js_getDateTimestamp(_this.maxDate);
|
|
46808
|
+
cell.inRange = time >= minTime && time <= maxTime;
|
|
46809
|
+
cell.start = time === minTime;
|
|
46810
|
+
cell.end = time === maxTime;
|
|
46811
|
+
}
|
|
46812
|
+
|
|
46813
|
+
// 正确计算选中状态
|
|
46814
|
+
if (_this.selectionMode === 'dates') {
|
|
46815
|
+
cell.selected = selectedDate.some(function (date) {
|
|
46816
|
+
return date && date.getTime() === cellDate.getTime();
|
|
46817
|
+
});
|
|
46818
|
+
} else if (_this.selectionMode === 'day' && _this.value) {
|
|
46819
|
+
cell.selected = _this.value.getTime() === cellDate.getTime();
|
|
46820
|
+
}
|
|
46701
46821
|
|
|
46822
|
+
// 其他状态计算...
|
|
46823
|
+
var isToday = time === now;
|
|
46702
46824
|
if (isToday) {
|
|
46703
46825
|
cell.type = 'today';
|
|
46704
46826
|
}
|
|
46705
46827
|
|
|
46828
|
+
// 日期文本计算...
|
|
46706
46829
|
if (i >= 0 && i <= 1) {
|
|
46707
46830
|
var numberOfDaysFromPreviousMonth = day + offset < 0 ? 7 + day + offset : day + offset;
|
|
46708
|
-
|
|
46709
46831
|
if (j + i * 7 >= numberOfDaysFromPreviousMonth) {
|
|
46710
46832
|
cell.text = count++;
|
|
46711
46833
|
} else {
|
|
@@ -46721,29 +46843,19 @@ var date_tablevue_type_script_lang_js_removeFromArray = function removeFromArray
|
|
|
46721
46843
|
}
|
|
46722
46844
|
}
|
|
46723
46845
|
|
|
46724
|
-
|
|
46846
|
+
// 禁用状态
|
|
46725
46847
|
cell.disabled = typeof disabledDate === 'function' && disabledDate(cellDate);
|
|
46726
|
-
|
|
46727
|
-
|
|
46728
|
-
});
|
|
46848
|
+
|
|
46849
|
+
// 自定义类名
|
|
46729
46850
|
cell.customClass = typeof cellClassName === 'function' && cellClassName(cellDate);
|
|
46851
|
+
|
|
46852
|
+
// 更新行数据
|
|
46730
46853
|
_this.$set(row, _this.showWeekNumber ? j + 1 : j, cell);
|
|
46731
46854
|
};
|
|
46732
46855
|
|
|
46733
46856
|
for (var j = 0; j < 7; j++) {
|
|
46734
46857
|
_loop(j);
|
|
46735
46858
|
}
|
|
46736
|
-
|
|
46737
|
-
if (this.selectionMode === 'week') {
|
|
46738
|
-
var start = this.showWeekNumber ? 1 : 0;
|
|
46739
|
-
var end = this.showWeekNumber ? 7 : 6;
|
|
46740
|
-
var isWeekActive = this.isWeekActive(row[start + 1]);
|
|
46741
|
-
|
|
46742
|
-
row[start].inRange = isWeekActive;
|
|
46743
|
-
row[start].start = isWeekActive;
|
|
46744
|
-
row[end].inRange = isWeekActive;
|
|
46745
|
-
row[end].end = isWeekActive;
|
|
46746
|
-
}
|
|
46747
46859
|
}
|
|
46748
46860
|
|
|
46749
46861
|
return rows;
|
|
@@ -46875,11 +46987,11 @@ var date_tablevue_type_script_lang_js_removeFromArray = function removeFromArray
|
|
|
46875
46987
|
|
|
46876
46988
|
var _cell = row[j];
|
|
46877
46989
|
var index = i * 7 + j + (this.showWeekNumber ? -1 : 0);
|
|
46878
|
-
var
|
|
46990
|
+
var _time = nextDate(startDate, index - this.offsetDay).getTime();
|
|
46879
46991
|
|
|
46880
|
-
_cell.inRange = minDate &&
|
|
46881
|
-
_cell.start = minDate &&
|
|
46882
|
-
_cell.end = maxDate &&
|
|
46992
|
+
_cell.inRange = minDate && _time >= minDate && _time <= maxDate;
|
|
46993
|
+
_cell.start = minDate && _time === minDate;
|
|
46994
|
+
_cell.end = maxDate && _time === maxDate;
|
|
46883
46995
|
}
|
|
46884
46996
|
}
|
|
46885
46997
|
},
|
|
@@ -46979,8 +47091,8 @@ var date_tablevue_type_script_lang_js_removeFromArray = function removeFromArray
|
|
|
46979
47091
|
|
|
46980
47092
|
var date_table_component = normalizeComponent(
|
|
46981
47093
|
base_date_tablevue_type_script_lang_js_,
|
|
46982
|
-
|
|
46983
|
-
|
|
47094
|
+
date_tablevue_type_template_id_1c74037d_render,
|
|
47095
|
+
date_tablevue_type_template_id_1c74037d_staticRenderFns,
|
|
46984
47096
|
false,
|
|
46985
47097
|
null,
|
|
46986
47098
|
null,
|
|
@@ -47840,8 +47952,8 @@ var date_component = normalizeComponent(
|
|
|
47840
47952
|
)
|
|
47841
47953
|
|
|
47842
47954
|
/* harmony default export */ var picker_date = (date_component.exports);
|
|
47843
|
-
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./components/datepicker/range/date-range.vue?vue&type=template&id=
|
|
47844
|
-
var
|
|
47955
|
+
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./components/datepicker/range/date-range.vue?vue&type=template&id=535e73c9&
|
|
47956
|
+
var date_rangevue_type_template_id_535e73c9_render = function () {
|
|
47845
47957
|
var _obj, _obj$1;
|
|
47846
47958
|
var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('transition',{attrs:{"name":"mds-date-zoom-in-top"},on:{"after-leave":function($event){return _vm.$emit('dodestroy')}}},[_c('div',{directives:[{name:"show",rawName:"v-show",value:(_vm.visible),expression:"visible"}],class:_vm.wrapperClass},[_c('div',{class:((this.prefixCls) + "-picker-panel-wrapper")},[_c('div',{class:((this.prefixCls) + "-picker-panel-body")},[(_vm.isFlat)?_c('date-time-selecter',{attrs:{"maxDate":_vm.maxDate,"minDate":_vm.minDate,"format":_vm.format,"step":_vm.step,"visible":_vm.visible},on:{"pickMin":_vm.handleMinTimePick,"pickMax":_vm.handleMaxTimePick}}):_vm._e(),_vm._v(" "),_c('div',{staticClass:"is-left"},[(!_vm.timePickerVisible)?_c('div',{class:((this.prefixCls) + "-picker-panel-header")},[_c('i',{staticClass:"mdsicon mdsicon-line-caret-left-double",class:[
|
|
47847
47959
|
(_vm.prefixCls + "-picker-panel-header-base-icon"),
|
|
@@ -47865,7 +47977,7 @@ var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('transi
|
|
|
47865
47977
|
(_vm.prefixCls + "-picker-panel-header-base-right"),
|
|
47866
47978
|
(_vm.prefixCls + "-left-next-month"),
|
|
47867
47979
|
{ 'is-disabled': !_vm.enableMonthArrow }
|
|
47868
|
-
],attrs:{"aria-label":_vm.t("mds.datepicker.prevMonth")},on:{"click":_vm.leftNextMonth}}):_vm._e()]):_c('div',{class:((this.prefixCls) + "-picker-panel-header")},[_c('span',{class:(_vm.prefixCls + "-picker-panel-header-label " + (this.prefixCls) + "-picker-timer-label")},[_vm._v(_vm._s(_vm.leftTimeLabel))])]),_vm._v(" "),(!_vm.timePickerVisible)?_c('div',{class:((this.prefixCls) + "-picker-panel-content")},[_c('date-table',{attrs:{"selection-mode":"range","date":_vm.leftDate,"default-value":_vm.defaultValue,"min-date":_vm.minDate,"max-date":_vm.maxDate,"range-state":_vm.rangeState,"disabled-date":_vm.disabledDate,"cell-class-name":_vm.cellClassName,"first-day-of-week":_vm.firstDayOfWeek},on:{"changerange":_vm.handleChangeRange,"pick":_vm.handleRangePick}})],1):_vm._e(),_vm._v(" "),_c('div',{directives:[{name:"show",rawName:"v-show",value:(_vm.timePickerVisible),expression:"timePickerVisible"}],class:((this.prefixCls) + "-picker-panel-content")},[_c('time-picker',{ref:"minTimePicker",attrs:{"time-arrow-control":_vm.arrowControl,"visible":_vm.timePickerVisible,"step":_vm.step},on:{"pick":_vm.handleMinTimePick,"mounted":function($event){_vm.$refs.minTimePicker.format = _vm.timeFormat}}})],1)]),_vm._v(" "),_c('div',{staticClass:"is-right"},[(!_vm.timePickerVisible)?_c('div',{class:((this.prefixCls) + "-picker-panel-header")},[(_vm.unlinkPanels)?_c('i',{staticClass:"mdsicon mdsicon-line-caret-left-double",class:[
|
|
47980
|
+
],attrs:{"aria-label":_vm.t("mds.datepicker.prevMonth")},on:{"click":_vm.leftNextMonth}}):_vm._e()]):_c('div',{class:((this.prefixCls) + "-picker-panel-header")},[_c('span',{class:(_vm.prefixCls + "-picker-panel-header-label " + (this.prefixCls) + "-picker-timer-label")},[_vm._v(_vm._s(_vm.leftTimeLabel))])]),_vm._v(" "),(!_vm.timePickerVisible)?_c('div',{class:((this.prefixCls) + "-picker-panel-content")},[_c('date-table',{ref:"leftDateTable",attrs:{"selection-mode":"range","date":_vm.leftDate,"default-value":_vm.defaultValue,"min-date":_vm.minDate,"max-date":_vm.maxDate,"range-state":_vm.rangeState,"disabled-date":_vm.disabledDate,"cell-class-name":_vm.cellClassName,"first-day-of-week":_vm.firstDayOfWeek},on:{"changerange":_vm.handleChangeRange,"pick":_vm.handleRangePick}})],1):_vm._e(),_vm._v(" "),_c('div',{directives:[{name:"show",rawName:"v-show",value:(_vm.timePickerVisible),expression:"timePickerVisible"}],class:((this.prefixCls) + "-picker-panel-content")},[_c('time-picker',{ref:"minTimePicker",attrs:{"time-arrow-control":_vm.arrowControl,"visible":_vm.timePickerVisible,"step":_vm.step},on:{"pick":_vm.handleMinTimePick,"mounted":function($event){_vm.$refs.minTimePicker.format = _vm.timeFormat}}})],1)]),_vm._v(" "),_c('div',{staticClass:"is-right"},[(!_vm.timePickerVisible)?_c('div',{class:((this.prefixCls) + "-picker-panel-header")},[(_vm.unlinkPanels)?_c('i',{staticClass:"mdsicon mdsicon-line-caret-left-double",class:[
|
|
47869
47981
|
(_vm.prefixCls + "-picker-panel-header-base-icon"),
|
|
47870
47982
|
(_vm.prefixCls + "-picker-panel-header-base-left"),
|
|
47871
47983
|
(_vm.prefixCls + "-other-icon"),
|
|
@@ -47887,11 +47999,11 @@ var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('transi
|
|
|
47887
47999
|
(_vm.prefixCls + "-right-next-month"),
|
|
47888
48000
|
(_vm.prefixCls + "-other-icon"),
|
|
47889
48001
|
(_vm.prefixCls + "-picker-panel-header-base-right")
|
|
47890
|
-
],attrs:{"aria-label":_vm.t("mds.datepicker.prevMonth")},on:{"click":_vm.rightNextMonth}})]):_c('div',{class:((this.prefixCls) + "-picker-panel-header")},[_c('span',{class:(_vm.prefixCls + "-picker-panel-header-label " + (this.prefixCls) + "-picker-timer-label")},[_vm._v(_vm._s(_vm.rightTimeLabel))])]),_vm._v(" "),(!_vm.timePickerVisible)?_c('div',{class:((this.prefixCls) + "-picker-panel-content")},[_c('date-table',{attrs:{"selection-mode":"range","date":_vm.rightDate,"default-value":_vm.defaultValue,"min-date":_vm.minDate,"max-date":_vm.maxDate,"range-state":_vm.rangeState,"disabled-date":_vm.disabledDate,"cell-class-name":_vm.cellClassName,"first-day-of-week":_vm.firstDayOfWeek},on:{"changerange":_vm.handleChangeRange,"pick":_vm.handleRangePick}})],1):_vm._e(),_vm._v(" "),_c('div',{directives:[{name:"show",rawName:"v-show",value:(_vm.timePickerVisible),expression:"timePickerVisible"}],class:((this.prefixCls) + "-picker-panel-content")},[_c('time-picker',{ref:"maxTimePicker",attrs:{"time-arrow-control":_vm.arrowControl,"visible":_vm.timePickerVisible,"step":_vm.step},on:{"pick":_vm.handleMaxTimePick,"mounted":function($event){_vm.$refs.maxTimePicker.format = _vm.timeFormat}}})],1)])],1)]),_vm._v(" "),(_vm.showTime)?_c('div',{class:(_vm.prefixCls + "-picker-panel-footer")},[_c('mds-button',{class:( _obj = {}, _obj[(_vm.prefixCls + "-picker-panel-today-btn")] = true, _obj[(_vm.prefixCls + "-picker-panel-flat-clear")] = _vm.pickerType === 'datetimerangeflat', _obj ),attrs:{"type":"normal","size":"small"},on:{"click":_vm.handleClear}},[_vm._v("\n "+_vm._s(_vm.t('mds.datepicker.clear'))+"\n ")]),_vm._v(" "),(!_vm.isFlat)?_c('mds-button',{attrs:{"type":"normal","size":"small","disabled":!(this.maxDate && this.minDate)},on:{"click":_vm.selectTime}},[_vm._v("\n "+_vm._s(_vm.timePickerVisible ? '选择日期' : '选择时间')+"\n ")]):_vm._e(),_vm._v(" "),_c('mds-button',{class:( _obj$1 = {}, _obj$1[(_vm.prefixCls + "-picker-panel-time-picker")] = true, _obj$1[(_vm.prefixCls + "-picker-panel-flat-confirm")] = _vm.pickerType === 'datetimerangeflat', _obj$1[(_vm.prefixCls + "-picker-panel-sure-btn")] = true, _obj$1 ),attrs:{"plain":"","size":"small","type":"primary","ghost":"","disabled":_vm.btnDisabled},on:{"click":function($event){return _vm.handleConfirm(false)}}},[_vm._v("\n "+_vm._s(_vm.t('mds.datepicker.confirm'))+"\n ")])],1):_vm._e()])])}
|
|
47891
|
-
var
|
|
48002
|
+
],attrs:{"aria-label":_vm.t("mds.datepicker.prevMonth")},on:{"click":_vm.rightNextMonth}})]):_c('div',{class:((this.prefixCls) + "-picker-panel-header")},[_c('span',{class:(_vm.prefixCls + "-picker-panel-header-label " + (this.prefixCls) + "-picker-timer-label")},[_vm._v(_vm._s(_vm.rightTimeLabel))])]),_vm._v(" "),(!_vm.timePickerVisible)?_c('div',{class:((this.prefixCls) + "-picker-panel-content")},[_c('date-table',{ref:"rightDateTable",attrs:{"selection-mode":"range","date":_vm.rightDate,"default-value":_vm.defaultValue,"min-date":_vm.minDate,"max-date":_vm.maxDate,"range-state":_vm.rangeState,"disabled-date":_vm.disabledDate,"cell-class-name":_vm.cellClassName,"first-day-of-week":_vm.firstDayOfWeek},on:{"changerange":_vm.handleChangeRange,"pick":_vm.handleRangePick}})],1):_vm._e(),_vm._v(" "),_c('div',{directives:[{name:"show",rawName:"v-show",value:(_vm.timePickerVisible),expression:"timePickerVisible"}],class:((this.prefixCls) + "-picker-panel-content")},[_c('time-picker',{ref:"maxTimePicker",attrs:{"time-arrow-control":_vm.arrowControl,"visible":_vm.timePickerVisible,"step":_vm.step},on:{"pick":_vm.handleMaxTimePick,"mounted":function($event){_vm.$refs.maxTimePicker.format = _vm.timeFormat}}})],1)])],1)]),_vm._v(" "),(_vm.showTime)?_c('div',{class:(_vm.prefixCls + "-picker-panel-footer")},[_c('mds-button',{class:( _obj = {}, _obj[(_vm.prefixCls + "-picker-panel-today-btn")] = true, _obj[(_vm.prefixCls + "-picker-panel-flat-clear")] = _vm.pickerType === 'datetimerangeflat', _obj ),attrs:{"type":"normal","size":"small"},on:{"click":_vm.handleClear}},[_vm._v("\n "+_vm._s(_vm.t('mds.datepicker.clear'))+"\n ")]),_vm._v(" "),(!_vm.isFlat)?_c('mds-button',{attrs:{"type":"normal","size":"small","disabled":!(this.maxDate && this.minDate)},on:{"click":_vm.selectTime}},[_vm._v("\n "+_vm._s(_vm.timePickerVisible ? '选择日期' : '选择时间')+"\n ")]):_vm._e(),_vm._v(" "),_c('mds-button',{class:( _obj$1 = {}, _obj$1[(_vm.prefixCls + "-picker-panel-time-picker")] = true, _obj$1[(_vm.prefixCls + "-picker-panel-flat-confirm")] = _vm.pickerType === 'datetimerangeflat', _obj$1[(_vm.prefixCls + "-picker-panel-sure-btn")] = true, _obj$1 ),attrs:{"plain":"","size":"small","type":"primary","ghost":"","disabled":_vm.btnDisabled},on:{"click":function($event){return _vm.handleConfirm(false)}}},[_vm._v("\n "+_vm._s(_vm.t('mds.datepicker.confirm'))+"\n ")])],1):_vm._e()])])}
|
|
48003
|
+
var date_rangevue_type_template_id_535e73c9_staticRenderFns = []
|
|
47892
48004
|
|
|
47893
48005
|
|
|
47894
|
-
// CONCATENATED MODULE: ./components/datepicker/range/date-range.vue?vue&type=template&id=
|
|
48006
|
+
// CONCATENATED MODULE: ./components/datepicker/range/date-range.vue?vue&type=template&id=535e73c9&
|
|
47895
48007
|
|
|
47896
48008
|
// EXTERNAL MODULE: ./node_modules/babel-runtime/helpers/slicedToArray.js
|
|
47897
48009
|
var slicedToArray = __webpack_require__(47);
|
|
@@ -48492,6 +48604,8 @@ var datetime_select_component = normalizeComponent(
|
|
|
48492
48604
|
//
|
|
48493
48605
|
//
|
|
48494
48606
|
//
|
|
48607
|
+
//
|
|
48608
|
+
//
|
|
48495
48609
|
|
|
48496
48610
|
|
|
48497
48611
|
|
|
@@ -48502,6 +48616,7 @@ var datetime_select_component = normalizeComponent(
|
|
|
48502
48616
|
|
|
48503
48617
|
|
|
48504
48618
|
|
|
48619
|
+
// 确保 calcDefaultValue 函数可用
|
|
48505
48620
|
var date_rangevue_type_script_lang_js_calcDefaultValue = function calcDefaultValue(defaultValue) {
|
|
48506
48621
|
if (Array.isArray(defaultValue)) {
|
|
48507
48622
|
return [new Date(defaultValue[0]), new Date(defaultValue[1])];
|
|
@@ -48650,39 +48765,76 @@ var date_rangevue_type_script_lang_js_calcDefaultValue = function calcDefaultVal
|
|
|
48650
48765
|
|
|
48651
48766
|
watch: {
|
|
48652
48767
|
visible: function visible(val) {
|
|
48653
|
-
val && (this.timePickerVisible = false);
|
|
48654
|
-
},
|
|
48655
|
-
minDate: function minDate(val) {
|
|
48656
48768
|
var _this = this;
|
|
48657
48769
|
|
|
48658
|
-
|
|
48659
|
-
|
|
48660
|
-
|
|
48661
|
-
|
|
48662
|
-
|
|
48663
|
-
_this.$refs.maxTimePicker.selectableRange = [[dateUtil_parseDate(dateUtil_formatDate(_this.minDate, format), format), dateUtil_parseDate('23:59:59', format)]];
|
|
48664
|
-
}
|
|
48665
|
-
});
|
|
48666
|
-
if (val && this.$refs.minTimePicker) {
|
|
48667
|
-
this.$refs.minTimePicker.date = val;
|
|
48668
|
-
this.$refs.minTimePicker.value = val;
|
|
48770
|
+
if (val) {
|
|
48771
|
+
this.timePickerVisible = false;
|
|
48772
|
+
// 当面板显示时重置状态
|
|
48773
|
+
this.resetView();
|
|
48774
|
+
// 强制重新计算布局
|
|
48669
48775
|
this.$nextTick(function () {
|
|
48670
|
-
_this.$
|
|
48776
|
+
_this.$forceUpdate();
|
|
48671
48777
|
});
|
|
48672
48778
|
}
|
|
48673
48779
|
},
|
|
48674
|
-
|
|
48780
|
+
|
|
48781
|
+
|
|
48782
|
+
// 分别监听 minDate 和 maxDate
|
|
48783
|
+
minDate: function minDate(newVal, oldVal) {
|
|
48675
48784
|
var _this2 = this;
|
|
48676
48785
|
|
|
48677
|
-
this.
|
|
48678
|
-
|
|
48679
|
-
|
|
48680
|
-
this.$refs.maxTimePicker.date = val;
|
|
48681
|
-
this.$refs.maxTimePicker.value = val;
|
|
48786
|
+
if (newVal !== oldVal && this.minDate) {
|
|
48787
|
+
this.dateUserInput.min = null;
|
|
48788
|
+
this.timeUserInput.min = null;
|
|
48682
48789
|
this.$nextTick(function () {
|
|
48683
|
-
_this2.$refs.
|
|
48790
|
+
if (_this2.$refs.maxTimePicker && _this2.maxDate && _this2.maxDate < _this2.minDate) {
|
|
48791
|
+
var format = 'HH:mm:ss';
|
|
48792
|
+
_this2.$refs.maxTimePicker.selectableRange = [[dateUtil_parseDate(dateUtil_formatDate(_this2.minDate, format), format), dateUtil_parseDate('23:59:59', format)]];
|
|
48793
|
+
}
|
|
48684
48794
|
});
|
|
48795
|
+
if (this.$refs.minTimePicker) {
|
|
48796
|
+
this.$refs.minTimePicker.date = this.minDate;
|
|
48797
|
+
this.$refs.minTimePicker.value = this.minDate;
|
|
48798
|
+
this.$nextTick(function () {
|
|
48799
|
+
_this2.$refs.maxTimePicker && _this2.$refs.maxTimePicker.adjustSpinners();
|
|
48800
|
+
});
|
|
48801
|
+
}
|
|
48685
48802
|
}
|
|
48803
|
+
|
|
48804
|
+
// 强制子组件重新计算状态
|
|
48805
|
+
this.$nextTick(function () {
|
|
48806
|
+
if (_this2.$refs.leftDateTable) {
|
|
48807
|
+
_this2.$refs.leftDateTable.$forceUpdate();
|
|
48808
|
+
}
|
|
48809
|
+
if (_this2.$refs.rightDateTable) {
|
|
48810
|
+
_this2.$refs.rightDateTable.$forceUpdate();
|
|
48811
|
+
}
|
|
48812
|
+
});
|
|
48813
|
+
},
|
|
48814
|
+
maxDate: function maxDate(newVal, oldVal) {
|
|
48815
|
+
var _this3 = this;
|
|
48816
|
+
|
|
48817
|
+
if (newVal !== oldVal && this.maxDate) {
|
|
48818
|
+
this.dateUserInput.max = null;
|
|
48819
|
+
this.timeUserInput.max = null;
|
|
48820
|
+
if (this.$refs.maxTimePicker) {
|
|
48821
|
+
this.$refs.maxTimePicker.date = this.maxDate;
|
|
48822
|
+
this.$refs.maxTimePicker.value = this.maxDate;
|
|
48823
|
+
this.$nextTick(function () {
|
|
48824
|
+
_this3.$refs.minTimePicker && _this3.$refs.minTimePicker.adjustSpinners();
|
|
48825
|
+
});
|
|
48826
|
+
}
|
|
48827
|
+
}
|
|
48828
|
+
|
|
48829
|
+
// 强制子组件重新计算状态
|
|
48830
|
+
this.$nextTick(function () {
|
|
48831
|
+
if (_this3.$refs.leftDateTable) {
|
|
48832
|
+
_this3.$refs.leftDateTable.$forceUpdate();
|
|
48833
|
+
}
|
|
48834
|
+
if (_this3.$refs.rightDateTable) {
|
|
48835
|
+
_this3.$refs.rightDateTable.$forceUpdate();
|
|
48836
|
+
}
|
|
48837
|
+
});
|
|
48686
48838
|
},
|
|
48687
48839
|
value: function value(newVal) {
|
|
48688
48840
|
if (!newVal) {
|
|
@@ -48720,24 +48872,28 @@ var date_rangevue_type_script_lang_js_calcDefaultValue = function calcDefaultVal
|
|
|
48720
48872
|
}
|
|
48721
48873
|
},
|
|
48722
48874
|
format: function format() {
|
|
48723
|
-
this.$refs.minTimePicker
|
|
48724
|
-
|
|
48875
|
+
if (this.$refs.minTimePicker) {
|
|
48876
|
+
this.$refs.minTimePicker.format = this.timeFormat;
|
|
48877
|
+
}
|
|
48878
|
+
if (this.$refs.maxTimePicker) {
|
|
48879
|
+
this.$refs.maxTimePicker.format = this.timeFormat;
|
|
48880
|
+
}
|
|
48725
48881
|
}
|
|
48726
48882
|
},
|
|
48727
48883
|
|
|
48728
48884
|
methods: {
|
|
48729
48885
|
selectTime: function selectTime() {
|
|
48730
|
-
var
|
|
48886
|
+
var _this4 = this;
|
|
48731
48887
|
|
|
48732
48888
|
this.timePickerVisible = !this.timePickerVisible;
|
|
48733
48889
|
if (this.timePickerVisible) {
|
|
48734
48890
|
this.$nextTick(function () {
|
|
48735
|
-
|
|
48736
|
-
|
|
48737
|
-
|
|
48738
|
-
|
|
48739
|
-
|
|
48740
|
-
|
|
48891
|
+
_this4.$refs.maxTimePicker.date = _this4.maxDate;
|
|
48892
|
+
_this4.$refs.maxTimePicker.value = _this4.maxDate;
|
|
48893
|
+
_this4.$refs.maxTimePicker.adjustSpinners();
|
|
48894
|
+
_this4.$refs.minTimePicker.date = _this4.minDate;
|
|
48895
|
+
_this4.$refs.minTimePicker.value = _this4.minDate;
|
|
48896
|
+
_this4.$refs.minTimePicker.adjustSpinners();
|
|
48741
48897
|
});
|
|
48742
48898
|
}
|
|
48743
48899
|
},
|
|
@@ -48746,12 +48902,36 @@ var date_rangevue_type_script_lang_js_calcDefaultValue = function calcDefaultVal
|
|
|
48746
48902
|
this.maxDate = null;
|
|
48747
48903
|
this.leftDate = date_rangevue_type_script_lang_js_calcDefaultValue(this.defaultValue)[0];
|
|
48748
48904
|
this.rightDate = dateUtil_nextMonth(this.leftDate);
|
|
48905
|
+
|
|
48906
|
+
// 重置 rangeState
|
|
48907
|
+
this.rangeState = {
|
|
48908
|
+
endDate: null,
|
|
48909
|
+
selecting: false,
|
|
48910
|
+
row: null,
|
|
48911
|
+
column: null
|
|
48912
|
+
};
|
|
48749
48913
|
this.$emit('pick', null);
|
|
48750
48914
|
},
|
|
48751
48915
|
handleChangeRange: function handleChangeRange(val) {
|
|
48752
|
-
|
|
48753
|
-
|
|
48754
|
-
|
|
48916
|
+
var _this5 = this;
|
|
48917
|
+
|
|
48918
|
+
// 确保状态一致性
|
|
48919
|
+
if (val.minDate && val.maxDate) {
|
|
48920
|
+
this.minDate = new Date(val.minDate);
|
|
48921
|
+
this.maxDate = new Date(val.maxDate);
|
|
48922
|
+
}
|
|
48923
|
+
|
|
48924
|
+
// 更新 rangeState,确保所有字段都被正确设置
|
|
48925
|
+
this.rangeState = {
|
|
48926
|
+
endDate: val.rangeState ? val.rangeState.endDate : null,
|
|
48927
|
+
selecting: val.rangeState ? val.rangeState.selecting : false,
|
|
48928
|
+
row: val.rangeState ? val.rangeState.row : null,
|
|
48929
|
+
column: val.rangeState ? val.rangeState.column : null
|
|
48930
|
+
|
|
48931
|
+
// 强制重新计算 date-table 的状态
|
|
48932
|
+
};this.$nextTick(function () {
|
|
48933
|
+
_this5.$forceUpdate();
|
|
48934
|
+
});
|
|
48755
48935
|
},
|
|
48756
48936
|
handleDateInput: function handleDateInput(value, type) {
|
|
48757
48937
|
this.dateUserInput[type] = value;
|
|
@@ -48794,7 +48974,7 @@ var date_rangevue_type_script_lang_js_calcDefaultValue = function calcDefaultVal
|
|
|
48794
48974
|
}
|
|
48795
48975
|
},
|
|
48796
48976
|
handleTimeInput: function handleTimeInput(value, type) {
|
|
48797
|
-
var
|
|
48977
|
+
var _this6 = this;
|
|
48798
48978
|
|
|
48799
48979
|
this.timeUserInput[type] = value;
|
|
48800
48980
|
if (value.length !== this.timeFormat.length) return;
|
|
@@ -48804,12 +48984,12 @@ var date_rangevue_type_script_lang_js_calcDefaultValue = function calcDefaultVal
|
|
|
48804
48984
|
if (type === 'min') {
|
|
48805
48985
|
this.minDate = modifyTime(this.minDate, parsedValue.getHours(), parsedValue.getMinutes(), parsedValue.getSeconds());
|
|
48806
48986
|
this.$nextTick(function (_) {
|
|
48807
|
-
return
|
|
48987
|
+
return _this6.$refs.minTimePicker.adjustSpinners();
|
|
48808
48988
|
});
|
|
48809
48989
|
} else {
|
|
48810
48990
|
this.maxDate = modifyTime(this.maxDate, parsedValue.getHours(), parsedValue.getMinutes(), parsedValue.getSeconds());
|
|
48811
48991
|
this.$nextTick(function (_) {
|
|
48812
|
-
return
|
|
48992
|
+
return _this6.$refs.maxTimePicker.adjustSpinners();
|
|
48813
48993
|
});
|
|
48814
48994
|
}
|
|
48815
48995
|
}
|
|
@@ -48833,7 +49013,7 @@ var date_rangevue_type_script_lang_js_calcDefaultValue = function calcDefaultVal
|
|
|
48833
49013
|
}
|
|
48834
49014
|
},
|
|
48835
49015
|
handleRangePick: function handleRangePick(val) {
|
|
48836
|
-
var
|
|
49016
|
+
var _this7 = this;
|
|
48837
49017
|
|
|
48838
49018
|
var close = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
48839
49019
|
|
|
@@ -48850,8 +49030,8 @@ var date_rangevue_type_script_lang_js_calcDefaultValue = function calcDefaultVal
|
|
|
48850
49030
|
|
|
48851
49031
|
// workaround for https://github.com/ElemeFE/element/issues/7539, should remove this block when we don't have to care about Chromium 55 - 57
|
|
48852
49032
|
setTimeout(function () {
|
|
48853
|
-
|
|
48854
|
-
|
|
49033
|
+
_this7.maxDate = maxDate;
|
|
49034
|
+
_this7.minDate = minDate;
|
|
48855
49035
|
}, 10);
|
|
48856
49036
|
if (!close || this.showTime) return;
|
|
48857
49037
|
this.handleConfirm();
|
|
@@ -48951,14 +49131,50 @@ var date_rangevue_type_script_lang_js_calcDefaultValue = function calcDefaultVal
|
|
|
48951
49131
|
return Array.isArray(value) && value && value[0] && value[1] && isDate(value[0]) && isDate(value[1]) && value[0].getTime() <= value[1].getTime() && (typeof this.disabledDate === 'function' ? !this.disabledDate(value[0]) && !this.disabledDate(value[1]) : true);
|
|
48952
49132
|
},
|
|
48953
49133
|
resetView: function resetView() {
|
|
48954
|
-
|
|
48955
|
-
|
|
48956
|
-
//
|
|
48957
|
-
|
|
48958
|
-
|
|
49134
|
+
var _this8 = this;
|
|
49135
|
+
|
|
49136
|
+
// 完全重置所有状态
|
|
49137
|
+
this.rangeState = {
|
|
49138
|
+
endDate: null,
|
|
49139
|
+
selecting: false,
|
|
49140
|
+
row: null,
|
|
49141
|
+
column: null
|
|
49142
|
+
|
|
49143
|
+
// 重置日期状态
|
|
49144
|
+
};if (this.value && Array.isArray(this.value) && this.value.length === 2) {
|
|
49145
|
+
this.minDate = new Date(this.value[0]);
|
|
49146
|
+
this.maxDate = new Date(this.value[1]);
|
|
49147
|
+
|
|
49148
|
+
// 确保左右面板日期正确
|
|
49149
|
+
this.leftDate = new Date(this.value[0]);
|
|
49150
|
+
if (this.unlinkPanels) {
|
|
49151
|
+
this.rightDate = new Date(this.value[1]);
|
|
49152
|
+
} else {
|
|
49153
|
+
this.rightDate = dateUtil_nextMonth(this.leftDate);
|
|
49154
|
+
}
|
|
49155
|
+
} else {
|
|
49156
|
+
// 如果没有值,重置为默认状态
|
|
49157
|
+
this.minDate = null;
|
|
49158
|
+
this.maxDate = null;
|
|
49159
|
+
this.leftDate = date_rangevue_type_script_lang_js_calcDefaultValue(this.defaultValue)[0];
|
|
49160
|
+
this.rightDate = dateUtil_nextMonth(this.leftDate);
|
|
48959
49161
|
}
|
|
48960
|
-
|
|
48961
|
-
|
|
49162
|
+
|
|
49163
|
+
// 重置用户输入状态
|
|
49164
|
+
this.dateUserInput = { min: null, max: null };
|
|
49165
|
+
this.timeUserInput = { min: null, max: null
|
|
49166
|
+
|
|
49167
|
+
// 强制重新渲染所有子组件
|
|
49168
|
+
};this.$nextTick(function () {
|
|
49169
|
+
// 通知子组件重置状态
|
|
49170
|
+
if (_this8.$refs.leftDateTable) {
|
|
49171
|
+
_this8.$refs.leftDateTable.$forceUpdate();
|
|
49172
|
+
}
|
|
49173
|
+
if (_this8.$refs.rightDateTable) {
|
|
49174
|
+
_this8.$refs.rightDateTable.$forceUpdate();
|
|
49175
|
+
}
|
|
49176
|
+
_this8.$forceUpdate();
|
|
49177
|
+
});
|
|
48962
49178
|
}
|
|
48963
49179
|
},
|
|
48964
49180
|
|
|
@@ -48976,8 +49192,8 @@ var date_rangevue_type_script_lang_js_calcDefaultValue = function calcDefaultVal
|
|
|
48976
49192
|
|
|
48977
49193
|
var date_range_component = normalizeComponent(
|
|
48978
49194
|
range_date_rangevue_type_script_lang_js_,
|
|
48979
|
-
|
|
48980
|
-
|
|
49195
|
+
date_rangevue_type_template_id_535e73c9_render,
|
|
49196
|
+
date_rangevue_type_template_id_535e73c9_staticRenderFns,
|
|
48981
49197
|
false,
|
|
48982
49198
|
null,
|
|
48983
49199
|
null,
|