@ezuikit/player-theme 2.0.1 → 2.0.2-beta.1
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/index.js +597 -105
- package/dist/index.mjs +598 -106
- package/dist/index.umd.js +818 -480
- package/dist/style.css +0 -1
- package/dist/style.js +2 -2
- package/dist/types/index.d.ts +44 -68
- package/package.json +4 -4
package/dist/index.mjs
CHANGED
|
@@ -1,17 +1,16 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* @ezuikit/player-theme v2.0.1
|
|
3
|
-
* Copyright (c) 2025-12-
|
|
2
|
+
* @ezuikit/player-theme v2.0.2-beta.1
|
|
3
|
+
* Copyright (c) 2025-12-05 Ezviz-OpenBiz
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
6
6
|
import EventEmitter from 'eventemitter3';
|
|
7
7
|
import Picker from '@skax/picker';
|
|
8
8
|
import delegate from '@skax/delegate';
|
|
9
9
|
import deepmerge from 'deepmerge';
|
|
10
|
-
import require$$1, { isMobile,
|
|
10
|
+
import require$$1, { isMobile, parseEzopenUrl } from '@ezuikit/utils-tools';
|
|
11
11
|
import screenfull from 'screenfull';
|
|
12
12
|
import I18n from '@ezuikit/utils-i18n';
|
|
13
13
|
import Logger from '@ezuikit/utils-logger';
|
|
14
|
-
import { DatePicker } from '@ezuikit/control-date-picker';
|
|
15
14
|
import { MobileTimeLine, TimeLine } from '@ezuikit/control-time-line';
|
|
16
15
|
|
|
17
16
|
/**
|
|
@@ -42,8 +41,7 @@ var THEME_PROPS = [
|
|
|
42
41
|
'speed',
|
|
43
42
|
'urlInfo',
|
|
44
43
|
'videoLevelList',
|
|
45
|
-
'videoLevel'
|
|
46
|
-
'recMonth'
|
|
44
|
+
'videoLevel'
|
|
47
45
|
];
|
|
48
46
|
/**
|
|
49
47
|
* 当移动端 picker 控件打开时需要关闭动画(定时器)
|
|
@@ -189,9 +187,8 @@ var EVENTS = {
|
|
|
189
187
|
/** 全局全屏控件销毁 */ globalFullscreenDestroy: 'Control.globalFullscreenDestroy',
|
|
190
188
|
/** 日期面板展示隐藏变换 */ datePanelOpenChange: 'Control.datePanelOpenChange',
|
|
191
189
|
/** 日期改变 */ dateChange: 'Control.dateChange',
|
|
192
|
-
/** 日期改变 */ dateMonthChange: 'Control.dateMonthChange',
|
|
193
190
|
/** 日期销毁 */ dateDestroy: 'Control.datePanelDestroy',
|
|
194
|
-
/**
|
|
191
|
+
/** 时间轴拖动结束 */ timeLineChange: 'Control.timeLineChange',
|
|
195
192
|
/** 时间轴图片列表面板 */ timeLinePanelOpenChange: 'Control.timeLinePanelOpenChange',
|
|
196
193
|
/** 时间轴控件销毁 */ timeLineDestroy: 'Control.timeLineDestroy',
|
|
197
194
|
/** 主题控件挂载前 切换新的主题也会触发,如果想首次获取需要在 onInitializing 回调中进行监听 */ beforeMountControls: 'Control.beforeMountControls',
|
|
@@ -202,7 +199,7 @@ var EVENTS = {
|
|
|
202
199
|
/** 加载控件销毁 */ loadingDestroy: 'Control.loadingDestroy',
|
|
203
200
|
/** 消息控件销毁 */ messageDestroy: 'Control.messageDestroy',
|
|
204
201
|
/** 播放器内容区域销毁 */ contentDestroy: 'Control.contentDestroy',
|
|
205
|
-
|
|
202
|
+
contentRerender: 'Control.contentRerender'
|
|
206
203
|
},
|
|
207
204
|
/**
|
|
208
205
|
* 主题控件相关
|
|
@@ -4155,11 +4152,6 @@ function debounce(func, wait) {
|
|
|
4155
4152
|
(_theme_zoomUtil1 = theme.zoomUtil) == null ? void 0 : (_theme_zoomUtil_setTransform1 = _theme_zoomUtil1.setTransform) == null ? void 0 : _theme_zoomUtil_setTransform1.call(_theme_zoomUtil1, false);
|
|
4156
4153
|
}
|
|
4157
4154
|
});
|
|
4158
|
-
// 日期选择器
|
|
4159
|
-
theme == null ? void 0 : theme.on(EVENTS.control.dateMonthChange, function(dates) {
|
|
4160
|
-
var _theme_controls_dateControl_emit, _theme_controls_dateControl, _theme_controls;
|
|
4161
|
-
(_theme_controls = theme.controls) == null ? void 0 : (_theme_controls_dateControl = _theme_controls.dateControl) == null ? void 0 : (_theme_controls_dateControl_emit = _theme_controls_dateControl.emit) == null ? void 0 : _theme_controls_dateControl_emit.call(_theme_controls_dateControl, EVENTS.control.dateMonthChange, dates);
|
|
4162
|
-
});
|
|
4163
4155
|
}
|
|
4164
4156
|
/**
|
|
4165
4157
|
* 控件向主题发现通信消息 control.on -> theme.emit ,仅用来转发控件的事件
|
|
@@ -4358,10 +4350,10 @@ function debounce(func, wait) {
|
|
|
4358
4350
|
theme.emit(EVENTS.control.timeLineChange, date);
|
|
4359
4351
|
});
|
|
4360
4352
|
theme.controls.timeLineControl.on(EVENTS.control.timeLinePanelOpenChange, function(open) {
|
|
4361
|
-
var _theme_controls_dateControl
|
|
4362
|
-
if ((
|
|
4363
|
-
var
|
|
4364
|
-
(
|
|
4353
|
+
var _theme_controls_dateControl;
|
|
4354
|
+
if ((_theme_controls_dateControl = theme.controls.dateControl) == null ? void 0 : _theme_controls_dateControl.dataPickerUtil) {
|
|
4355
|
+
var _theme_controls_dateControl_dataPickerUtil, _theme_controls_dateControl1;
|
|
4356
|
+
(_theme_controls_dateControl1 = theme.controls.dateControl) == null ? void 0 : (_theme_controls_dateControl_dataPickerUtil = _theme_controls_dateControl1.dataPickerUtil) == null ? void 0 : _theme_controls_dateControl_dataPickerUtil.hide();
|
|
4365
4357
|
}
|
|
4366
4358
|
theme.emit(EVENTS.control.timeLinePanelOpenChange, open);
|
|
4367
4359
|
});
|
|
@@ -4654,12 +4646,12 @@ function getDefaultExportFromCjs (x) {
|
|
|
4654
4646
|
* Released under the MIT License.
|
|
4655
4647
|
*/
|
|
4656
4648
|
|
|
4657
|
-
var dist$
|
|
4658
|
-
var hasRequiredDist$
|
|
4649
|
+
var dist$2;
|
|
4650
|
+
var hasRequiredDist$2;
|
|
4659
4651
|
|
|
4660
|
-
function requireDist$
|
|
4661
|
-
if (hasRequiredDist$
|
|
4662
|
-
hasRequiredDist$
|
|
4652
|
+
function requireDist$2 () {
|
|
4653
|
+
if (hasRequiredDist$2) return dist$2;
|
|
4654
|
+
hasRequiredDist$2 = 1;
|
|
4663
4655
|
|
|
4664
4656
|
/**
|
|
4665
4657
|
* Zoom position
|
|
@@ -5366,12 +5358,12 @@ function requireDist$1 () {
|
|
|
5366
5358
|
}();
|
|
5367
5359
|
Zoom.VERSION = '0.0.2';
|
|
5368
5360
|
|
|
5369
|
-
dist$
|
|
5370
|
-
return dist$
|
|
5361
|
+
dist$2 = Zoom;
|
|
5362
|
+
return dist$2;
|
|
5371
5363
|
}
|
|
5372
5364
|
|
|
5373
|
-
var distExports$
|
|
5374
|
-
var Zoom = /*@__PURE__*/getDefaultExportFromCjs(distExports$
|
|
5365
|
+
var distExports$2 = requireDist$2();
|
|
5366
|
+
var Zoom = /*@__PURE__*/getDefaultExportFromCjs(distExports$2);
|
|
5375
5367
|
|
|
5376
5368
|
function _extends$h() {
|
|
5377
5369
|
_extends$h = Object.assign || function(target) {
|
|
@@ -6446,7 +6438,7 @@ function _set_prototype_of$d(o, p) {
|
|
|
6446
6438
|
return CapturePicture;
|
|
6447
6439
|
}(Control);
|
|
6448
6440
|
|
|
6449
|
-
var dist = {};
|
|
6441
|
+
var dist$1 = {};
|
|
6450
6442
|
|
|
6451
6443
|
/*
|
|
6452
6444
|
* @ezuikit/control-ptz v0.0.1
|
|
@@ -6454,11 +6446,11 @@ var dist = {};
|
|
|
6454
6446
|
* Released under the MIT License.
|
|
6455
6447
|
*/
|
|
6456
6448
|
|
|
6457
|
-
var hasRequiredDist;
|
|
6449
|
+
var hasRequiredDist$1;
|
|
6458
6450
|
|
|
6459
|
-
function requireDist () {
|
|
6460
|
-
if (hasRequiredDist) return dist;
|
|
6461
|
-
hasRequiredDist = 1;
|
|
6451
|
+
function requireDist$1 () {
|
|
6452
|
+
if (hasRequiredDist$1) return dist$1;
|
|
6453
|
+
hasRequiredDist$1 = 1;
|
|
6462
6454
|
|
|
6463
6455
|
var deepmerge$1 = deepmerge;
|
|
6464
6456
|
var utilsTools = require$$1;
|
|
@@ -7381,13 +7373,13 @@ function requireDist () {
|
|
|
7381
7373
|
return Ptz;
|
|
7382
7374
|
}(BasePtz);
|
|
7383
7375
|
|
|
7384
|
-
dist.BasePtz = BasePtz;
|
|
7385
|
-
dist.MobilePtz = MobilePtz;
|
|
7386
|
-
dist.Ptz = Ptz;
|
|
7387
|
-
return dist;
|
|
7376
|
+
dist$1.BasePtz = BasePtz;
|
|
7377
|
+
dist$1.MobilePtz = MobilePtz;
|
|
7378
|
+
dist$1.Ptz = Ptz;
|
|
7379
|
+
return dist$1;
|
|
7388
7380
|
}
|
|
7389
7381
|
|
|
7390
|
-
var distExports = requireDist();
|
|
7382
|
+
var distExports$1 = requireDist$1();
|
|
7391
7383
|
|
|
7392
7384
|
function _defineProperties$4(target, props) {
|
|
7393
7385
|
for(var i = 0; i < props.length; i++){
|
|
@@ -7486,7 +7478,7 @@ function _set_prototype_of$c(o, p) {
|
|
|
7486
7478
|
this.$turntable.classList.add("" + PREFIX_CLASS + "-ptz-turntable");
|
|
7487
7479
|
this.$panel.appendChild(this.$turntable);
|
|
7488
7480
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
|
|
7489
|
-
this._ptzControl = new distExports.Ptz(this.$turntable, _extends$b({}, this._options, {
|
|
7481
|
+
this._ptzControl = new distExports$1.Ptz(this.$turntable, _extends$b({}, this._options, {
|
|
7490
7482
|
onSpeedChange: this._onSpeedChange.bind(this),
|
|
7491
7483
|
onDirection: this._onDirection.bind(this)
|
|
7492
7484
|
}));
|
|
@@ -7495,7 +7487,7 @@ function _set_prototype_of$c(o, p) {
|
|
|
7495
7487
|
};
|
|
7496
7488
|
_proto.renderMobileExtend = function renderMobileExtend($container) {
|
|
7497
7489
|
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
|
|
7498
|
-
if (!this._ptzControl1) this._ptzControl1 = new distExports.MobilePtz($container, _extends$b({}, this._options, {
|
|
7490
|
+
if (!this._ptzControl1) this._ptzControl1 = new distExports$1.MobilePtz($container, _extends$b({}, this._options, {
|
|
7499
7491
|
onSpeedChange: this._onSpeedChange.bind(this),
|
|
7500
7492
|
onDirection: this._onDirection.bind(this)
|
|
7501
7493
|
}));
|
|
@@ -8538,7 +8530,9 @@ var SUPPORT_SPEED = [
|
|
|
8538
8530
|
0.5,
|
|
8539
8531
|
1,
|
|
8540
8532
|
2,
|
|
8541
|
-
4
|
|
8533
|
+
4,
|
|
8534
|
+
8,
|
|
8535
|
+
16
|
|
8542
8536
|
]; // 8, 16
|
|
8543
8537
|
var SPEED_DEFAULT_OPTIONS = {
|
|
8544
8538
|
/**
|
|
@@ -8598,6 +8592,541 @@ var SPEED_DEFAULT_OPTIONS = {
|
|
|
8598
8592
|
return Speed;
|
|
8599
8593
|
}(Select);
|
|
8600
8594
|
|
|
8595
|
+
/*
|
|
8596
|
+
* @ezuikit/control-date-picker v0.0.1-alpha.2
|
|
8597
|
+
* Copyright (c) 2025-11-12 Ezviz-OpenBiz
|
|
8598
|
+
* Released under the MIT License.
|
|
8599
|
+
*/
|
|
8600
|
+
|
|
8601
|
+
var dist;
|
|
8602
|
+
var hasRequiredDist;
|
|
8603
|
+
|
|
8604
|
+
function requireDist () {
|
|
8605
|
+
if (hasRequiredDist) return dist;
|
|
8606
|
+
hasRequiredDist = 1;
|
|
8607
|
+
|
|
8608
|
+
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
|
|
8609
|
+
try {
|
|
8610
|
+
var info = gen[key](arg);
|
|
8611
|
+
var value = info.value;
|
|
8612
|
+
} catch (error) {
|
|
8613
|
+
reject(error);
|
|
8614
|
+
return;
|
|
8615
|
+
}
|
|
8616
|
+
if (info.done) {
|
|
8617
|
+
resolve(value);
|
|
8618
|
+
} else {
|
|
8619
|
+
Promise.resolve(value).then(_next, _throw);
|
|
8620
|
+
}
|
|
8621
|
+
}
|
|
8622
|
+
function _async_to_generator(fn) {
|
|
8623
|
+
return function() {
|
|
8624
|
+
var self = this, args = arguments;
|
|
8625
|
+
return new Promise(function(resolve, reject) {
|
|
8626
|
+
var gen = fn.apply(self, args);
|
|
8627
|
+
function _next(value) {
|
|
8628
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
|
|
8629
|
+
}
|
|
8630
|
+
function _throw(err) {
|
|
8631
|
+
asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
|
|
8632
|
+
}
|
|
8633
|
+
_next(undefined);
|
|
8634
|
+
});
|
|
8635
|
+
};
|
|
8636
|
+
}
|
|
8637
|
+
function _ts_generator(thisArg, body) {
|
|
8638
|
+
var f, y, t, _ = {
|
|
8639
|
+
label: 0,
|
|
8640
|
+
sent: function() {
|
|
8641
|
+
if (t[0] & 1) throw t[1];
|
|
8642
|
+
return t[1];
|
|
8643
|
+
},
|
|
8644
|
+
trys: [],
|
|
8645
|
+
ops: []
|
|
8646
|
+
}, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
|
|
8647
|
+
return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() {
|
|
8648
|
+
return this;
|
|
8649
|
+
}), g;
|
|
8650
|
+
function verb(n) {
|
|
8651
|
+
return function(v) {
|
|
8652
|
+
return step([
|
|
8653
|
+
n,
|
|
8654
|
+
v
|
|
8655
|
+
]);
|
|
8656
|
+
};
|
|
8657
|
+
}
|
|
8658
|
+
function step(op) {
|
|
8659
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
8660
|
+
while(g && (g = 0, op[0] && (_ = 0)), _)try {
|
|
8661
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
8662
|
+
if (y = 0, t) op = [
|
|
8663
|
+
op[0] & 2,
|
|
8664
|
+
t.value
|
|
8665
|
+
];
|
|
8666
|
+
switch(op[0]){
|
|
8667
|
+
case 0:
|
|
8668
|
+
case 1:
|
|
8669
|
+
t = op;
|
|
8670
|
+
break;
|
|
8671
|
+
case 4:
|
|
8672
|
+
_.label++;
|
|
8673
|
+
return {
|
|
8674
|
+
value: op[1],
|
|
8675
|
+
done: false
|
|
8676
|
+
};
|
|
8677
|
+
case 5:
|
|
8678
|
+
_.label++;
|
|
8679
|
+
y = op[1];
|
|
8680
|
+
op = [
|
|
8681
|
+
0
|
|
8682
|
+
];
|
|
8683
|
+
continue;
|
|
8684
|
+
case 7:
|
|
8685
|
+
op = _.ops.pop();
|
|
8686
|
+
_.trys.pop();
|
|
8687
|
+
continue;
|
|
8688
|
+
default:
|
|
8689
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
8690
|
+
_ = 0;
|
|
8691
|
+
continue;
|
|
8692
|
+
}
|
|
8693
|
+
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
8694
|
+
_.label = op[1];
|
|
8695
|
+
break;
|
|
8696
|
+
}
|
|
8697
|
+
if (op[0] === 6 && _.label < t[1]) {
|
|
8698
|
+
_.label = t[1];
|
|
8699
|
+
t = op;
|
|
8700
|
+
break;
|
|
8701
|
+
}
|
|
8702
|
+
if (t && _.label < t[2]) {
|
|
8703
|
+
_.label = t[2];
|
|
8704
|
+
_.ops.push(op);
|
|
8705
|
+
break;
|
|
8706
|
+
}
|
|
8707
|
+
if (t[2]) _.ops.pop();
|
|
8708
|
+
_.trys.pop();
|
|
8709
|
+
continue;
|
|
8710
|
+
}
|
|
8711
|
+
op = body.call(thisArg, _);
|
|
8712
|
+
} catch (e) {
|
|
8713
|
+
op = [
|
|
8714
|
+
6,
|
|
8715
|
+
e
|
|
8716
|
+
];
|
|
8717
|
+
y = 0;
|
|
8718
|
+
} finally{
|
|
8719
|
+
f = t = 0;
|
|
8720
|
+
}
|
|
8721
|
+
if (op[0] & 5) throw op[1];
|
|
8722
|
+
return {
|
|
8723
|
+
value: op[0] ? op[1] : void 0,
|
|
8724
|
+
done: true
|
|
8725
|
+
};
|
|
8726
|
+
}
|
|
8727
|
+
}
|
|
8728
|
+
var AppendJS = /*#__PURE__*/ function() {
|
|
8729
|
+
function AppendJS() {}
|
|
8730
|
+
AppendJS.loadScript = function loadScript(src) {
|
|
8731
|
+
return _async_to_generator(function() {
|
|
8732
|
+
return _ts_generator(this, function(_state) {
|
|
8733
|
+
switch(_state.label){
|
|
8734
|
+
case 0:
|
|
8735
|
+
return [
|
|
8736
|
+
4,
|
|
8737
|
+
new Promise(function(resolve, reject) {
|
|
8738
|
+
if (AppendJS.LoadedScr.includes(src)) {
|
|
8739
|
+
return resolve(src);
|
|
8740
|
+
}
|
|
8741
|
+
if (AppendJS.LoadingScrQueue[src]) {
|
|
8742
|
+
return AppendJS.LoadingScrQueue[src].push(resolve);
|
|
8743
|
+
} else {
|
|
8744
|
+
AppendJS.LoadingScrQueue[src] = [
|
|
8745
|
+
resolve
|
|
8746
|
+
];
|
|
8747
|
+
}
|
|
8748
|
+
var link;
|
|
8749
|
+
if (src.includes('.js')) {
|
|
8750
|
+
link = document.createElement('script');
|
|
8751
|
+
link.src = src;
|
|
8752
|
+
link.async = true;
|
|
8753
|
+
} else if (src.includes('.css')) {
|
|
8754
|
+
link = document.createElement('link');
|
|
8755
|
+
link.rel = 'stylesheet';
|
|
8756
|
+
link.href = src;
|
|
8757
|
+
}
|
|
8758
|
+
link.onload = function() {
|
|
8759
|
+
AppendJS.LoadedScr.push(src);
|
|
8760
|
+
AppendJS.LoadingScrQueue[src].forEach(function(resolve) {
|
|
8761
|
+
return resolve(src);
|
|
8762
|
+
});
|
|
8763
|
+
AppendJS.LoadingScrQueue[src] = [];
|
|
8764
|
+
};
|
|
8765
|
+
link.onerror = function() {
|
|
8766
|
+
return reject(new Error('Failed to load ' + src));
|
|
8767
|
+
};
|
|
8768
|
+
document.head.appendChild(link);
|
|
8769
|
+
})
|
|
8770
|
+
];
|
|
8771
|
+
case 1:
|
|
8772
|
+
return [
|
|
8773
|
+
2,
|
|
8774
|
+
_state.sent()
|
|
8775
|
+
];
|
|
8776
|
+
}
|
|
8777
|
+
});
|
|
8778
|
+
})();
|
|
8779
|
+
};
|
|
8780
|
+
AppendJS.loadScriptsBatch = function loadScriptsBatch(srcArr) {
|
|
8781
|
+
return _async_to_generator(function() {
|
|
8782
|
+
return _ts_generator(this, function(_state) {
|
|
8783
|
+
switch(_state.label){
|
|
8784
|
+
case 0:
|
|
8785
|
+
return [
|
|
8786
|
+
4,
|
|
8787
|
+
Promise.all(srcArr.map(AppendJS.loadScript))
|
|
8788
|
+
];
|
|
8789
|
+
case 1:
|
|
8790
|
+
return [
|
|
8791
|
+
2,
|
|
8792
|
+
_state.sent()
|
|
8793
|
+
];
|
|
8794
|
+
}
|
|
8795
|
+
});
|
|
8796
|
+
})();
|
|
8797
|
+
};
|
|
8798
|
+
AppendJS.remove = function remove(src) {
|
|
8799
|
+
src.forEach(function(item) {
|
|
8800
|
+
var link = document.querySelector('script[src="' + item + '"]') || document.querySelector('link[href="' + item + '"]');
|
|
8801
|
+
if (link) {
|
|
8802
|
+
link.remove();
|
|
8803
|
+
}
|
|
8804
|
+
});
|
|
8805
|
+
};
|
|
8806
|
+
AppendJS.clear = function clear() {
|
|
8807
|
+
AppendJS.remove(AppendJS.LoadedScr);
|
|
8808
|
+
};
|
|
8809
|
+
return AppendJS;
|
|
8810
|
+
}();
|
|
8811
|
+
/** 已经加载完的js/css */ AppendJS.LoadedScr = [];
|
|
8812
|
+
/** 正在加载的js/css */ AppendJS.LoadingScrQueue = {};
|
|
8813
|
+
|
|
8814
|
+
function _defineProperties(target, props) {
|
|
8815
|
+
for(var i = 0; i < props.length; i++){
|
|
8816
|
+
var descriptor = props[i];
|
|
8817
|
+
descriptor.enumerable = descriptor.enumerable || false;
|
|
8818
|
+
descriptor.configurable = true;
|
|
8819
|
+
if ("value" in descriptor) descriptor.writable = true;
|
|
8820
|
+
Object.defineProperty(target, descriptor.key, descriptor);
|
|
8821
|
+
}
|
|
8822
|
+
}
|
|
8823
|
+
function _create_class(Constructor, protoProps, staticProps) {
|
|
8824
|
+
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
|
|
8825
|
+
return Constructor;
|
|
8826
|
+
}
|
|
8827
|
+
var DEFAULT_OPTIONS = {
|
|
8828
|
+
staticPath: '.',
|
|
8829
|
+
place: 'top-right',
|
|
8830
|
+
language: 'zh-CN',
|
|
8831
|
+
current: new Date(),
|
|
8832
|
+
maxDate: new Date()
|
|
8833
|
+
};
|
|
8834
|
+
/**
|
|
8835
|
+
* 日期选择器
|
|
8836
|
+
*/ var DatePicker = /*#__PURE__*/ function() {
|
|
8837
|
+
function DatePicker(container, options) {
|
|
8838
|
+
var _this = this;
|
|
8839
|
+
this._open = false;
|
|
8840
|
+
this._change = true;
|
|
8841
|
+
this.$container = container;
|
|
8842
|
+
this.options = Object.assign({}, DEFAULT_OPTIONS, options);
|
|
8843
|
+
this.options.staticPath = (this.options.staticPath || '').replace(/\/$/, '');
|
|
8844
|
+
if (this.options.current) {
|
|
8845
|
+
this._date = this.options.current;
|
|
8846
|
+
}
|
|
8847
|
+
this._init();
|
|
8848
|
+
this.$container.addEventListener('click', function() {
|
|
8849
|
+
if (_this._open) _this.hide();
|
|
8850
|
+
else _this.show();
|
|
8851
|
+
});
|
|
8852
|
+
document.body.addEventListener('click', function(e) {
|
|
8853
|
+
if (!_this.$container.contains(e.target)) {
|
|
8854
|
+
_this.hide();
|
|
8855
|
+
}
|
|
8856
|
+
});
|
|
8857
|
+
}
|
|
8858
|
+
var _proto = DatePicker.prototype;
|
|
8859
|
+
_proto._init = function _init() {
|
|
8860
|
+
var _this = this;
|
|
8861
|
+
// 因为挂载在行内,需要父标签设置 position: relative;
|
|
8862
|
+
this.$container.style.cssText += ";position: relative;";
|
|
8863
|
+
this.$container.classList.add("datepicker-inline-" + this.options.place);
|
|
8864
|
+
AppendJS.loadScriptsBatch([
|
|
8865
|
+
"" + this.options.staticPath + "/rec/jquery.min.js",
|
|
8866
|
+
"" + this.options.staticPath + "/rec/datepicker.min.css"
|
|
8867
|
+
]).then(function() {
|
|
8868
|
+
AppendJS.loadScriptsBatch([
|
|
8869
|
+
"" + _this.options.staticPath + "/rec/datepicker.js"
|
|
8870
|
+
]).then(function() {
|
|
8871
|
+
AppendJS.loadScriptsBatch([
|
|
8872
|
+
"" + _this.options.staticPath + "/rec/datepicker.zh-CN.js",
|
|
8873
|
+
"" + _this.options.staticPath + "/rec/datepicker.en-US.js"
|
|
8874
|
+
]).then(function() {
|
|
8875
|
+
window.$(_this.$container).datepicker({
|
|
8876
|
+
date: _this.options.current,
|
|
8877
|
+
language: _this.options.language,
|
|
8878
|
+
endDate: _this.options.maxDate,
|
|
8879
|
+
inline: true
|
|
8880
|
+
});
|
|
8881
|
+
_this.hide();
|
|
8882
|
+
window.$(_this.$container).on('pick.datepicker', function(e) {
|
|
8883
|
+
var _this__date, _this__date1, _this__date2, _this__date3, _this__date4, _this__date5;
|
|
8884
|
+
if (e.view === 'year' && ((_this__date = _this._date) == null ? void 0 : _this__date.getFullYear()) !== e.date.getFullYear()) {
|
|
8885
|
+
_this.options.onYearChange == null ? void 0 : _this.options.onYearChange.call(_this.options, e.date);
|
|
8886
|
+
} else if (e.view === 'month' && (((_this__date1 = _this._date) == null ? void 0 : _this__date1.getMonth()) !== e.date.getMonth() || ((_this__date2 = _this._date) == null ? void 0 : _this__date2.getFullYear()) !== e.date.getFullYear())) {
|
|
8887
|
+
_this.options.onMonthChange == null ? void 0 : _this.options.onMonthChange.call(_this.options, e.date);
|
|
8888
|
+
} else if ([
|
|
8889
|
+
'day',
|
|
8890
|
+
'pick'
|
|
8891
|
+
].includes(e.view || e.type) && (((_this__date3 = _this._date) == null ? void 0 : _this__date3.getDate()) !== e.date.getDate() || ((_this__date4 = _this._date) == null ? void 0 : _this__date4.getMonth()) !== e.date.getMonth() || ((_this__date5 = _this._date) == null ? void 0 : _this__date5.getFullYear()) !== e.date.getFullYear())) {
|
|
8892
|
+
if (_this._change) {
|
|
8893
|
+
_this.options.onChange == null ? void 0 : _this.options.onChange.call(_this.options, e.date);
|
|
8894
|
+
}
|
|
8895
|
+
_this._date = new Date(e.date.getTime());
|
|
8896
|
+
}
|
|
8897
|
+
if (e.view === 'day') _this.hide();
|
|
8898
|
+
_this._change = true;
|
|
8899
|
+
});
|
|
8900
|
+
});
|
|
8901
|
+
});
|
|
8902
|
+
});
|
|
8903
|
+
};
|
|
8904
|
+
/**
|
|
8905
|
+
* 设置日期, change = true 时触发 onChange 事件
|
|
8906
|
+
*
|
|
8907
|
+
* @param date 设置的日期
|
|
8908
|
+
* @param change 是否触发 onChange 事件
|
|
8909
|
+
*/ _proto.setDate = function setDate(date, change) {
|
|
8910
|
+
if (change === void 0) change = true;
|
|
8911
|
+
var $datepicker = this.$container.querySelector(".datepicker-inline");
|
|
8912
|
+
if ($datepicker) {
|
|
8913
|
+
this._change = change;
|
|
8914
|
+
window.$(this.$container).datepicker('setDate', date);
|
|
8915
|
+
}
|
|
8916
|
+
};
|
|
8917
|
+
/**
|
|
8918
|
+
* 隐藏面板, 会触发 onPanelChange 事件
|
|
8919
|
+
*/ _proto.hide = function hide() {
|
|
8920
|
+
var $datepicker = this.$container.querySelector(".datepicker-inline");
|
|
8921
|
+
if ($datepicker) {
|
|
8922
|
+
if (this._open) {
|
|
8923
|
+
this._open = false;
|
|
8924
|
+
this.options.onPanelChange == null ? void 0 : this.options.onPanelChange.call(this.options, false, this._date);
|
|
8925
|
+
}
|
|
8926
|
+
$datepicker.classList.add('datepicker-hide');
|
|
8927
|
+
}
|
|
8928
|
+
};
|
|
8929
|
+
/**
|
|
8930
|
+
* 显示面板, 会触发 onPanelChange 事件
|
|
8931
|
+
*/ _proto.show = function show() {
|
|
8932
|
+
var $datepicker = this.$container.querySelector(".datepicker-inline");
|
|
8933
|
+
if ($datepicker) {
|
|
8934
|
+
var _window_$_datepicker, _window_$;
|
|
8935
|
+
if (!this._open) {
|
|
8936
|
+
this._open = true;
|
|
8937
|
+
this.options.onPanelChange == null ? void 0 : this.options.onPanelChange.call(this.options, true, this._date);
|
|
8938
|
+
}
|
|
8939
|
+
if (this._date) this.setDate(this._date, false);
|
|
8940
|
+
(_window_$_datepicker = (_window_$ = window.$(this.$container)).datepicker) == null ? void 0 : _window_$_datepicker.call(_window_$, 'showView');
|
|
8941
|
+
if (this.options.place === 'bottom-left') {
|
|
8942
|
+
$datepicker.style.cssText += "top: " + (this.$container.clientHeight + 10) + "px; bottom: auto; right: auto; left: 0px";
|
|
8943
|
+
} else {
|
|
8944
|
+
$datepicker.style.cssText += "bottom: " + (this.$container.clientHeight + 10) + "px; top: auto";
|
|
8945
|
+
}
|
|
8946
|
+
$datepicker.classList.remove('datepicker-hide');
|
|
8947
|
+
}
|
|
8948
|
+
};
|
|
8949
|
+
/**
|
|
8950
|
+
* 销毁
|
|
8951
|
+
*/ _proto.destroy = function destroy() {
|
|
8952
|
+
this.hide();
|
|
8953
|
+
this._date = undefined;
|
|
8954
|
+
window.$(this.$container).datepicker('destroy');
|
|
8955
|
+
// AppendJS.remove([
|
|
8956
|
+
// `${this.options.staticPath}/rec/jquery.min.js`,
|
|
8957
|
+
// `${this.options.staticPath}/rec/datepicker.min.css`,
|
|
8958
|
+
// `${this.options.staticPath}/rec/datepicker.js`,
|
|
8959
|
+
// `${this.options.staticPath}/rec/datepicker.zh-CN.js`,
|
|
8960
|
+
// `${this.options.staticPath}/rec/datepicker.en-US.js`,
|
|
8961
|
+
// ]);
|
|
8962
|
+
};
|
|
8963
|
+
_create_class(DatePicker, [
|
|
8964
|
+
{
|
|
8965
|
+
key: "date",
|
|
8966
|
+
get: /**
|
|
8967
|
+
* 获取日期
|
|
8968
|
+
*/ function get() {
|
|
8969
|
+
return this._date;
|
|
8970
|
+
}
|
|
8971
|
+
}
|
|
8972
|
+
]);
|
|
8973
|
+
return DatePicker;
|
|
8974
|
+
}();
|
|
8975
|
+
|
|
8976
|
+
dist = DatePicker;
|
|
8977
|
+
return dist;
|
|
8978
|
+
}
|
|
8979
|
+
|
|
8980
|
+
var distExports = requireDist();
|
|
8981
|
+
var DatePickerUtil = /*@__PURE__*/getDefaultExportFromCjs(distExports);
|
|
8982
|
+
|
|
8983
|
+
/**
|
|
8984
|
+
* @description 时间操作
|
|
8985
|
+
*/ var DateTime = /*#__PURE__*/ function() {
|
|
8986
|
+
function DateTime() {}
|
|
8987
|
+
/**
|
|
8988
|
+
* @description 时间格式化
|
|
8989
|
+
* @param {Date | number | string} date
|
|
8990
|
+
* @param {string} formatType 格式 'YYYY-MM-DD hh:mm:ss' 或 'YYYYMMDDhhmmss' 或 'YYYY/MM/DD hh:mm:ss' 或 'hh:mm:ss' 或 'YYYYMMDDThhmmssZ'
|
|
8991
|
+
* @param {number} timeZone 时区偏移量 默认 0
|
|
8992
|
+
*/ DateTime.formate = function formate(date, formatType, timeZone) {
|
|
8993
|
+
if (timeZone === void 0) timeZone = 0;
|
|
8994
|
+
var dateTime = date;
|
|
8995
|
+
if (typeof date === 'string') {
|
|
8996
|
+
dateTime = DateTime.strToDate(date);
|
|
8997
|
+
} else if (typeof date === 'number') {
|
|
8998
|
+
dateTime = new Date(date);
|
|
8999
|
+
}
|
|
9000
|
+
dateTime = new Date(dateTime.getTime() - timeZone * 3600 * 1000);
|
|
9001
|
+
var year = dateTime.getFullYear();
|
|
9002
|
+
var month = String(dateTime.getMonth() + 1).padStart(2, '0');
|
|
9003
|
+
var day = String(dateTime.getDate()).padStart(2, '0');
|
|
9004
|
+
var hours = String(dateTime.getHours()).padStart(2, '0');
|
|
9005
|
+
var minutes = String(dateTime.getMinutes()).padStart(2, '0');
|
|
9006
|
+
var seconds = String(dateTime.getSeconds()).padStart(2, '0');
|
|
9007
|
+
switch(formatType){
|
|
9008
|
+
case 'YYYY-MM-DD hh:mm:ss':
|
|
9009
|
+
return year + "-" + month + "-" + day + " " + hours + ":" + minutes + ":" + seconds;
|
|
9010
|
+
case 'YYYYMMDDhhmmss':
|
|
9011
|
+
return "" + year + month + day + hours + minutes + seconds;
|
|
9012
|
+
case 'YYYY/MM/DD hh:mm:ss':
|
|
9013
|
+
return year + "/" + month + "/" + day + " " + hours + ":" + minutes + ":" + seconds;
|
|
9014
|
+
case 'YYYYMMDDThhmmssZ':
|
|
9015
|
+
return "" + year + month + day + "T" + hours + minutes + seconds + "Z";
|
|
9016
|
+
case 'YYYY/MM/DD':
|
|
9017
|
+
return year + "/" + month + "/" + day;
|
|
9018
|
+
case 'YYYYMMDD':
|
|
9019
|
+
return "" + year + month + day;
|
|
9020
|
+
case 'YYYY-MM-DD':
|
|
9021
|
+
return year + "-" + month + "-" + day;
|
|
9022
|
+
case 'YYYY':
|
|
9023
|
+
return "" + year;
|
|
9024
|
+
case 'MM':
|
|
9025
|
+
return "" + month;
|
|
9026
|
+
case 'DD':
|
|
9027
|
+
return "" + day;
|
|
9028
|
+
case 'hh:mm:ss':
|
|
9029
|
+
return hours + ":" + minutes + ":" + seconds;
|
|
9030
|
+
case 'hh':
|
|
9031
|
+
return "" + hours;
|
|
9032
|
+
case 'mm':
|
|
9033
|
+
return "" + minutes;
|
|
9034
|
+
case 'ss':
|
|
9035
|
+
return "" + seconds;
|
|
9036
|
+
default:
|
|
9037
|
+
throw new Error('Unsupported format type');
|
|
9038
|
+
}
|
|
9039
|
+
};
|
|
9040
|
+
/**
|
|
9041
|
+
* @description 对比两个时间的差值
|
|
9042
|
+
* @param {Date | string | number} date1
|
|
9043
|
+
* @param {Date | string | number} date2
|
|
9044
|
+
* @param {"year" | "month" | "day" | "hour" | "minute" | "second"} diffType
|
|
9045
|
+
*/ DateTime.diff = function diff(date1, date2, diffType) {
|
|
9046
|
+
/** @type {Date} */ var dateTime1 = date1;
|
|
9047
|
+
if (typeof date1 === 'string') {
|
|
9048
|
+
dateTime1 = DateTime.strToDate(date1);
|
|
9049
|
+
} else if (typeof date1 === 'number') {
|
|
9050
|
+
dateTime1 = new Date(date1);
|
|
9051
|
+
}
|
|
9052
|
+
/** @type {Date} */ var dateTime2 = date2;
|
|
9053
|
+
if (typeof date2 === 'string') {
|
|
9054
|
+
dateTime1 = DateTime.strToDate(date2);
|
|
9055
|
+
} else if (typeof date2 === 'number') {
|
|
9056
|
+
dateTime1 = new Date(date2);
|
|
9057
|
+
}
|
|
9058
|
+
var diffSecond = dateTime1.getTime() - dateTime2.getTime();
|
|
9059
|
+
// diff
|
|
9060
|
+
switch(diffType){
|
|
9061
|
+
case 'year':
|
|
9062
|
+
return dateTime1.getFullYear() - dateTime2.getFullYear();
|
|
9063
|
+
case 'month':
|
|
9064
|
+
// 计算总月份差
|
|
9065
|
+
// eslint-disable-next-line no-case-declarations
|
|
9066
|
+
var months = (dateTime1.getFullYear() - dateTime2.getFullYear()) * 12 + (dateTime1.getMonth() - dateTime2.getMonth());
|
|
9067
|
+
// 如果结束日的日期小于开始日的日期,则减去一个月
|
|
9068
|
+
if (dateTime1.getDate() < dateTime2.getDate()) {
|
|
9069
|
+
months--;
|
|
9070
|
+
}
|
|
9071
|
+
return months;
|
|
9072
|
+
case 'day':
|
|
9073
|
+
return diffSecond / 60 / 60 / 24;
|
|
9074
|
+
case 'hour':
|
|
9075
|
+
return diffSecond / 60 / 60;
|
|
9076
|
+
case 'minute':
|
|
9077
|
+
return diffSecond / 60;
|
|
9078
|
+
case 'second':
|
|
9079
|
+
return diffSecond;
|
|
9080
|
+
default:
|
|
9081
|
+
throw new Error('Unsupported diff type');
|
|
9082
|
+
}
|
|
9083
|
+
};
|
|
9084
|
+
DateTime.now = function now() {
|
|
9085
|
+
return Date.now();
|
|
9086
|
+
};
|
|
9087
|
+
/**
|
|
9088
|
+
*
|
|
9089
|
+
* @param {string} str 日期, 2025-04-10 10:10:10 或 2025/04/10 10:10:10 或 20250410101010 或 20250410T101010Z 或 秒 或 毫秒
|
|
9090
|
+
* @example
|
|
9091
|
+
* DateTime.strToDate("2025/04/10 10:10:10") // Date
|
|
9092
|
+
* DateTime.strToDate("2025-04-10 10:10:10") // Date
|
|
9093
|
+
* DateTime.strToDate("20250410101010") // Date
|
|
9094
|
+
* DateTime.strToDate("20250410T101010Z") // Date
|
|
9095
|
+
*/ DateTime.strToDate = function strToDate(str) {
|
|
9096
|
+
var time = (str + '').replace(/-/gi, '').replace(/:/gi, '').replace(/\//gi, '').replace(/ /gi, '').replace(/T|Z/gi, '');
|
|
9097
|
+
// 兼容
|
|
9098
|
+
if ((str + '').length === 10) {
|
|
9099
|
+
// 时间戳 秒
|
|
9100
|
+
return new Date(+str);
|
|
9101
|
+
} else if ((str + '').length === 13) {
|
|
9102
|
+
// 时间戳 毫秒
|
|
9103
|
+
return new Date(+str);
|
|
9104
|
+
}
|
|
9105
|
+
var year = time.slice(0, 4);
|
|
9106
|
+
var month = time.slice(4, 6);
|
|
9107
|
+
var day = time.slice(6, 8);
|
|
9108
|
+
var hour = time.slice(8, 10);
|
|
9109
|
+
var minute = time.slice(10, 12);
|
|
9110
|
+
var second = time.slice(12, 14);
|
|
9111
|
+
return new Date(year + '/' + month + '/' + day + ' ' + hour + ':' + minute + ':' + second);
|
|
9112
|
+
};
|
|
9113
|
+
/**
|
|
9114
|
+
* @description 补充十位
|
|
9115
|
+
* @param {number} num
|
|
9116
|
+
* @returns {string}
|
|
9117
|
+
* @example
|
|
9118
|
+
* DateTime.padStart(1) // "01"
|
|
9119
|
+
* DateTime.padStart(33) // "33"
|
|
9120
|
+
*/ DateTime.padStart = function padStart(num) {
|
|
9121
|
+
if (num < 10) {
|
|
9122
|
+
return '0' + num;
|
|
9123
|
+
} else {
|
|
9124
|
+
return num + '';
|
|
9125
|
+
}
|
|
9126
|
+
};
|
|
9127
|
+
return DateTime;
|
|
9128
|
+
}();
|
|
9129
|
+
|
|
8601
9130
|
function _extends$5() {
|
|
8602
9131
|
_extends$5 = Object.assign || function(target) {
|
|
8603
9132
|
for(var i = 1; i < arguments.length; i++){
|
|
@@ -8640,29 +9169,20 @@ function _set_prototype_of$6(o, p) {
|
|
|
8640
9169
|
function DatePickerControl(options) {
|
|
8641
9170
|
var _this;
|
|
8642
9171
|
var _this_options_props_urlInfo_searchParams, _this_options_props_urlInfo, _this_options_props;
|
|
8643
|
-
_this = Control.call(this, _extends$5({
|
|
8644
|
-
maxDate: new Date()
|
|
8645
|
-
}, options, {
|
|
9172
|
+
_this = Control.call(this, _extends$5({}, options, {
|
|
8646
9173
|
tagName: 'span',
|
|
8647
9174
|
controlType: 'button',
|
|
8648
9175
|
classNameSuffix: 'date'
|
|
8649
9176
|
})) || this;
|
|
8650
9177
|
_this.options = options;
|
|
8651
|
-
_this._value = DateTime.
|
|
9178
|
+
_this._value = DateTime.formate(((_this_options_props = _this.options.props) == null ? void 0 : (_this_options_props_urlInfo = _this_options_props.urlInfo) == null ? void 0 : (_this_options_props_urlInfo_searchParams = _this_options_props_urlInfo.searchParams) == null ? void 0 : _this_options_props_urlInfo_searchParams.begin) || new Date(), 'YYYY-MM-DD');
|
|
8652
9179
|
_this._render();
|
|
8653
|
-
// 日期上的点
|
|
8654
|
-
_this.on(EVENTS.control.dateMonthChange, function(dates) {
|
|
8655
|
-
var _this_datePicker_updateBadges, _this_datePicker;
|
|
8656
|
-
(_this_datePicker = _this.datePicker) == null ? void 0 : (_this_datePicker_updateBadges = _this_datePicker.updateBadges) == null ? void 0 : _this_datePicker_updateBadges.call(_this_datePicker, dates);
|
|
8657
|
-
});
|
|
8658
9180
|
return _this;
|
|
8659
9181
|
}
|
|
8660
9182
|
var _proto = DatePickerControl.prototype;
|
|
8661
9183
|
_proto._render = function _render() {
|
|
8662
9184
|
var _this = this;
|
|
8663
|
-
|
|
8664
|
-
var isMobile1 = isMobile();
|
|
8665
|
-
if (isMobile1) {
|
|
9185
|
+
if (isMobile()) {
|
|
8666
9186
|
var _this_locale;
|
|
8667
9187
|
this.$container.innerHTML = '\n <span class="' + PREFIX_CLASS + '-mobile-date-filter" title="' + (((_this_locale = this.locale) == null ? void 0 : _this_locale.BTN_CALENDAR) || '') + '">\n <span class="' + PREFIX_CLASS + '-mobile-date-filter-value">' + this._getDateStr() + "</span>\n " + IconComponents.filter() + "\n <span>";
|
|
8668
9188
|
} else {
|
|
@@ -8671,43 +9191,25 @@ function _set_prototype_of$6(o, p) {
|
|
|
8671
9191
|
title: (_this_locale1 = this.locale) == null ? void 0 : _this_locale1.BTN_CALENDAR
|
|
8672
9192
|
});
|
|
8673
9193
|
}
|
|
8674
|
-
this.
|
|
8675
|
-
|
|
8676
|
-
|
|
8677
|
-
return _this.$container;
|
|
8678
|
-
},
|
|
8679
|
-
mode: 'date',
|
|
8680
|
-
offset: [
|
|
8681
|
-
0,
|
|
8682
|
-
-10
|
|
8683
|
-
],
|
|
8684
|
-
badges: ((_this_options_props = this.options.props) == null ? void 0 : _this_options_props.recMonth) || [],
|
|
8685
|
-
language: this.options.language === 'zh' ? 'zh' : 'en',
|
|
9194
|
+
this.dataPickerUtil = new DatePickerUtil(this.$container, {
|
|
9195
|
+
staticPath: this.options.staticPath,
|
|
9196
|
+
language: this.options.language === 'zh' ? 'zh-CN' : 'en-US',
|
|
8686
9197
|
current: new Date(this._value + ' 00:00:00'),
|
|
8687
|
-
|
|
8688
|
-
|
|
8689
|
-
|
|
8690
|
-
|
|
8691
|
-
|
|
8692
|
-
|
|
8693
|
-
_this._value = DateTime.format(date, 'YYYY-MM-DD');
|
|
8694
|
-
_this.options.onOk == null ? void 0 : _this.options.onOk.call(_this.options, date);
|
|
9198
|
+
maxDate: this.options.maxDate || new Date(),
|
|
9199
|
+
place: isMobile() ? 'bottom-left' : 'top-right',
|
|
9200
|
+
onChange: function(date) {
|
|
9201
|
+
if (date && _this._value !== DateTime.formate(date, 'YYYY-MM-DD')) {
|
|
9202
|
+
_this._value = DateTime.formate(date, 'YYYY-MM-DD');
|
|
9203
|
+
_this.options.onChange == null ? void 0 : _this.options.onChange.call(_this.options, date);
|
|
8695
9204
|
_this.emit(EVENTS.control.dateChange, date);
|
|
8696
9205
|
if (date && _this.$container.querySelector("." + PREFIX_CLASS + "-mobile-date-filter-value")) {
|
|
8697
9206
|
_this.$container.querySelector("." + PREFIX_CLASS + "-mobile-date-filter-value").innerHTML = _this._getDateStr();
|
|
8698
9207
|
}
|
|
8699
9208
|
}
|
|
8700
9209
|
},
|
|
8701
|
-
|
|
8702
|
-
|
|
8703
|
-
|
|
8704
|
-
_this.options.onChange == null ? void 0 : _this.options.onChange.call(_this.options, date);
|
|
8705
|
-
_this.emit(EVENTS.control.dateChange, date);
|
|
8706
|
-
}
|
|
8707
|
-
},
|
|
8708
|
-
onOpenChange: function(open) {
|
|
8709
|
-
_this.options.onPanelChange == null ? void 0 : _this.options.onPanelChange.call(_this.options, open, _this.datePicker.current);
|
|
8710
|
-
_this.emit(EVENTS.control.datePanelOpenChange, open, _this.datePicker.current);
|
|
9210
|
+
onPanelChange: function(open, date) {
|
|
9211
|
+
_this.options.onPanelChange == null ? void 0 : _this.options.onPanelChange.call(_this.options, open, date);
|
|
9212
|
+
_this.emit(EVENTS.control.datePanelOpenChange, open, date);
|
|
8711
9213
|
}
|
|
8712
9214
|
});
|
|
8713
9215
|
};
|
|
@@ -8717,27 +9219,28 @@ function _set_prototype_of$6(o, p) {
|
|
|
8717
9219
|
* @param change 是否触发 onChange 事件
|
|
8718
9220
|
*/ _proto.setDate = function setDate(date, change) {
|
|
8719
9221
|
if (change === void 0) change = true;
|
|
8720
|
-
var
|
|
8721
|
-
(
|
|
8722
|
-
if (date && !change && this._value !== DateTime.
|
|
8723
|
-
this._value = DateTime.
|
|
9222
|
+
var _this_dataPickerUtil;
|
|
9223
|
+
(_this_dataPickerUtil = this.dataPickerUtil) == null ? void 0 : _this_dataPickerUtil.setDate(date, change);
|
|
9224
|
+
if (date && !change && this._value !== DateTime.formate(date, 'YYYY-MM-DD')) {
|
|
9225
|
+
this._value = DateTime.formate(date, 'YYYY-MM-DD');
|
|
8724
9226
|
if (date && this.$container.querySelector("." + PREFIX_CLASS + "-mobile-date-filter-value")) {
|
|
8725
9227
|
this.$container.querySelector("." + PREFIX_CLASS + "-mobile-date-filter-value").innerHTML = this._getDateStr();
|
|
8726
9228
|
}
|
|
8727
9229
|
}
|
|
8728
9230
|
};
|
|
8729
9231
|
_proto.reset = function reset() {
|
|
8730
|
-
|
|
9232
|
+
var _this_dataPickerUtil;
|
|
9233
|
+
(_this_dataPickerUtil = this.dataPickerUtil) == null ? void 0 : _this_dataPickerUtil.hide();
|
|
8731
9234
|
Control.prototype.reset.call(this);
|
|
8732
9235
|
};
|
|
8733
9236
|
/**
|
|
8734
9237
|
* 销毁控件
|
|
8735
9238
|
* @override
|
|
8736
9239
|
*/ _proto.destroy = function destroy() {
|
|
8737
|
-
if (this.
|
|
8738
|
-
this.
|
|
9240
|
+
if (this.dataPickerUtil) {
|
|
9241
|
+
this.dataPickerUtil.destroy();
|
|
8739
9242
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
8740
|
-
this.
|
|
9243
|
+
this.dataPickerUtil = null;
|
|
8741
9244
|
}
|
|
8742
9245
|
Control.prototype.destroy.call(this);
|
|
8743
9246
|
};
|
|
@@ -8747,7 +9250,6 @@ function _set_prototype_of$6(o, p) {
|
|
|
8747
9250
|
};
|
|
8748
9251
|
/**
|
|
8749
9252
|
* 点击 Control 会触发
|
|
8750
|
-
* @overload super._onControlClick(e: Event)
|
|
8751
9253
|
*/ _proto._onControlClick = function _onControlClick(e) {
|
|
8752
9254
|
Control.prototype._onControlClick.call(this, e);
|
|
8753
9255
|
};
|
|
@@ -9820,7 +10322,8 @@ var _renderDatePicker = function(theme, container, props) {
|
|
|
9820
10322
|
return container;
|
|
9821
10323
|
},
|
|
9822
10324
|
language: theme.options.language,
|
|
9823
|
-
locales: theme.i18n.translations
|
|
10325
|
+
locales: theme.i18n.translations,
|
|
10326
|
+
staticPath: theme.options.staticPath
|
|
9824
10327
|
}, ((_theme_options = theme.options) == null ? void 0 : _theme_options["dateOptions"]) || {}, {
|
|
9825
10328
|
props: props
|
|
9826
10329
|
}));
|
|
@@ -10119,18 +10622,7 @@ var THEME_DEFAULT_OPTIONS = {
|
|
|
10119
10622
|
*/ _this._footerMoreControl = null, /** 头部控件 @since 0.0.1 @private */ _this._header = null, /** 低部控件 @since 0.0.1 @private */ _this._footer = null, /** 回放底部时间轴 @since 0.0.1 @private */ _this._recFooter = null, /**
|
|
10120
10623
|
* 移动端扩展容器, 扩展的控件渲染在指定容器以外, 仅只用端适用, 为了可以放置大的控件和方便开发接入
|
|
10121
10624
|
* @private
|
|
10122
|
-
*/ _this._mobileExtend = null, /** @since 0.0.1 @private */ _this._interactiveResult = null, /** @since 0.0.1 @private */ _this._themeData = null, _this._fullscreen = null, _this.zoomUtil = null, /** 清除屏幕旋转 */ _this._cleanupOrientation = null, /** resizeObserver 监听销毁 */ _this._cleanUpResizeObserver = null, /** 容器的宽 */ _this._width = 0, /** 容器的高 */ _this._height = 0, /** 当前容器的全屏状态 true: 全屏, false: 非全屏 */ _this._isCurrentFullscreen = false, /** 屏幕旋转角度 0 | 90 | 180 | 270 */ _this._orientationAngle = 0, /** 是否播放中 @private */ _this._playing = false, /** 加载中 */ _this._loading = false, /** 音量 */ _this._volume = 0, /** 静音 */ _this._muted = false, /** 电子放大倍数 @private */ _this._zoom = 1, /** 放大中 true: 可缩放状态,false: 禁止缩放状态(不能缩放) @private */ _this._zooming = false, /** 录制中 @private */ _this._recording = false, /** 对讲中 @private */ _this._talking = false, /** 倍速 @private */ _this._speed = 1, /** 自定清晰度 @private */ _this._videoLevelAuto = false, /** 清晰度列表 */ _this.videoLevelList = [], /** 回放片段列表 */ _this.recordList = [], /** 窗口尺寸变化时,设置窗口超出隐藏,防止出现滚动条 */ _this._resizeOverflowTimer = null,
|
|
10123
|
-
// * 记录回放的月份
|
|
10124
|
-
// *
|
|
10125
|
-
// * key: {序列号}_{通道号}_{rec | cloud | cloudRecord} 比如:BC7799091_1_rec BC7799091_1_cloud BC7799091_1_cloudRecord
|
|
10126
|
-
// *
|
|
10127
|
-
// * value: 月份列表 比如 ["2025-12-01", "2025-12-02"]
|
|
10128
|
-
// * @private
|
|
10129
|
-
// */
|
|
10130
|
-
// _recMonthObj: Record<string, string[]> = {};
|
|
10131
|
-
/**
|
|
10132
|
-
* 录像回放的月份列表 @private
|
|
10133
|
-
*/ _this.recMonth = [], /** 清理 header/footer 动画 定时器 @private */ _this._onPauseTimingFunc = null, /** 销毁标识 @readonly */ _this.destroyed = false, /** 播放地址信息 */ _this.urlInfo = null, _this.scaleMode = 0;
|
|
10625
|
+
*/ _this._mobileExtend = null, /** @since 0.0.1 @private */ _this._interactiveResult = null, /** @since 0.0.1 @private */ _this._themeData = null, _this._fullscreen = null, _this.zoomUtil = null, /** 清除屏幕旋转 */ _this._cleanupOrientation = null, /** resizeObserver 监听销毁 */ _this._cleanUpResizeObserver = null, /** 容器的宽 */ _this._width = 0, /** 容器的高 */ _this._height = 0, /** 当前容器的全屏状态 true: 全屏, false: 非全屏 */ _this._isCurrentFullscreen = false, /** 屏幕旋转角度 0 | 90 | 180 | 270 */ _this._orientationAngle = 0, /** 是否播放中 @private */ _this._playing = false, /** 加载中 */ _this._loading = false, /** 音量 */ _this._volume = 0, /** 静音 */ _this._muted = false, /** 电子放大倍数 @private */ _this._zoom = 1, /** 放大中 true: 可缩放状态,false: 禁止缩放状态(不能缩放) @private */ _this._zooming = false, /** 录制中 @private */ _this._recording = false, /** 对讲中 @private */ _this._talking = false, /** 倍速 @private */ _this._speed = 1, /** 自定清晰度 @private */ _this._videoLevelAuto = false, /** 清晰度列表 */ _this.videoLevelList = [], /** 回放片段列表 */ _this.recordList = [], /** 窗口尺寸变化时,设置窗口超出隐藏,防止出现滚动条 */ _this._resizeOverflowTimer = null, /** 清理 header/footer 动画 定时器 @private */ _this._onPauseTimingFunc = null, /** 销毁标识 @readonly */ _this.destroyed = false, /** 播放地址信息 */ _this.urlInfo = null, _this.scaleMode = 0;
|
|
10134
10626
|
_this._initOptions(options);
|
|
10135
10627
|
if (_this.options.type === 'ezopen') {
|
|
10136
10628
|
var _this_urlInfo_searchParams, _this_urlInfo;
|
|
@@ -10140,7 +10632,7 @@ var THEME_DEFAULT_OPTIONS = {
|
|
|
10140
10632
|
}
|
|
10141
10633
|
if (_this.urlInfo.type === 'rec') {
|
|
10142
10634
|
var _this_urlInfo_searchParams1, _this_urlInfo1, _this_urlInfo_searchParams2, _this_urlInfo2;
|
|
10143
|
-
_this._seekDate = ((_this_urlInfo1 = _this.urlInfo) == null ? void 0 : (_this_urlInfo_searchParams1 = _this_urlInfo1.searchParams) == null ? void 0 : _this_urlInfo_searchParams1.begin) ? DateTime.
|
|
10635
|
+
_this._seekDate = ((_this_urlInfo1 = _this.urlInfo) == null ? void 0 : (_this_urlInfo_searchParams1 = _this_urlInfo1.searchParams) == null ? void 0 : _this_urlInfo_searchParams1.begin) ? DateTime.strToDate((_this_urlInfo2 = _this.urlInfo) == null ? void 0 : (_this_urlInfo_searchParams2 = _this_urlInfo2.searchParams) == null ? void 0 : _this_urlInfo_searchParams2.begin) : DateTime.strToDate(DateTime.formate(new Date(), 'YYYY/MM/DD') + ' 00:00:00');
|
|
10144
10636
|
}
|
|
10145
10637
|
}
|
|
10146
10638
|
_this._getRecType(_this.options.url);
|
|
@@ -11352,6 +11844,6 @@ var THEME_DEFAULT_OPTIONS = {
|
|
|
11352
11844
|
zh: zh,
|
|
11353
11845
|
en: en
|
|
11354
11846
|
};
|
|
11355
|
-
/** 版本号 @since 0.0.1 */ Theme.THEME_VERSION = '2.0.1';
|
|
11847
|
+
/** 版本号 @since 0.0.1 */ Theme.THEME_VERSION = '2.0.2-beta.1';
|
|
11356
11848
|
|
|
11357
11849
|
export { Control, Fullscreen, Loading, Message, Play, Poster, Rec, Theme, Utils, Volume };
|