"use strict";
|
Object.defineProperty(exports, "__esModule", { value: true });
|
var dayjs = require("dayjs");
|
Component({
|
options: {
|
addGlobalClass: true,
|
multipleSlots: true
|
},
|
properties: {
|
startTime: {
|
type: String,
|
value: ''
|
},
|
endTime: {
|
type: String,
|
value: ''
|
},
|
},
|
data: {
|
minStartDate: new Date().getTime(),
|
maxStartDate: new Date().getTime() + 1000 * 60 * 60 * 24 * 180,
|
startDate: new Date().getTime(),
|
startTime: '',
|
minEndDate: new Date().getTime() + 1000 * 60,
|
maxEndDate: new Date().getTime() + 1000 * 60 * 60 * 24 * 365 * 100,
|
endDate: new Date().getTime() + 1000 * 60 * 60 * 24 * 7,
|
endTime: '',
|
formatter: function (type, value) {
|
if (type === "year") {
|
return value + "\u5E74";
|
}
|
else if (type === "month") {
|
return value + "\u6708";
|
}
|
else if (type === "day") {
|
return value + "\u65E5";
|
}
|
return value;
|
},
|
},
|
lifetimes: {
|
ready: function () {
|
this.setData({
|
startTime: this.data.startTime || wx.$utils.formatTime(new Date().getTime()),
|
endTime: this.data.endTime || wx.$utils.formatTime(new Date().getTime() + 1000 * 60 * 60 * 24 * 7),
|
minStartDate: new Date().getTime(),
|
maxStartDate: new Date().getTime() + 1000 * 60 * 60 * 24 * 180,
|
});
|
}
|
},
|
methods: {
|
showStartDatePopup: function () {
|
this.setData({
|
isShowStartDatePopup: true
|
});
|
},
|
onStartDatePopupClose: function () {
|
this.setData({
|
isShowStartDatePopup: false
|
});
|
},
|
onEnterStartDate: function (event) {
|
var detail = event.detail;
|
var dateTime = this.formatTime(event.detail);
|
console.log(dateTime);
|
console.log("选择开播时间", dateTime, detail);
|
this.setData({
|
startDate: detail,
|
startTime: dateTime,
|
minEndDate: detail + 1000 * 60,
|
});
|
this.handleTimeQuantum();
|
this.onStartDatePopupClose();
|
this.checkTime("startTime");
|
},
|
onInputStartDate: function () { },
|
onCancelStartDate: function () {
|
this.onStartDatePopupClose();
|
this.checkTime("startTime");
|
},
|
onCancelEndDate: function () {
|
this.onEndDatePopupClose();
|
this.checkTime("endTime");
|
},
|
onInputEndDate: function () { },
|
showEndDatePopup: function () {
|
this.setData({
|
isShowEndDatePopup: true
|
});
|
},
|
onEndDatePopupClose: function () {
|
this.setData({
|
isShowEndDatePopup: false
|
});
|
},
|
onEnterEndDate: function (event) {
|
var date = this.formatTime(event.detail);
|
console.log(date);
|
this.setData({
|
endTime: date,
|
endDate: event.detail,
|
});
|
this.handleTimeQuantum();
|
this.onEndDatePopupClose();
|
this.checkTime("endTime");
|
},
|
handleTimeQuantum: function () {
|
var startTime = this.data.startTime;
|
var endDate = this.data.endDate;
|
var endTime = this.data.endTime;
|
if (endTime && !endDate) {
|
this.setData({
|
endDate: this.formatTimeSecond(this.data.endTime)
|
});
|
endDate = this.data.endDate;
|
console.log('转换了endDate', this.data.endDate, endDate);
|
}
|
if (!startTime && endTime) {
|
this.triggerEvent('selectedStartTime', {
|
endTime: endTime
|
});
|
return;
|
}
|
if (!endTime && startTime) {
|
this.triggerEvent('selectedStartTime', {
|
startTime: startTime
|
});
|
return;
|
}
|
if (!startTime && !endTime)
|
return;
|
this.triggerEvent('selectedStartTime', {
|
startTime: startTime
|
});
|
this.triggerEvent('selectedEndTime', {
|
endTime: endTime
|
});
|
},
|
getSelectedTime: function () {
|
var data = this.data;
|
return {
|
startTime: data.startTime,
|
endTime: data.endTime,
|
};
|
},
|
checkTime: function (time) {
|
var _a, _b, _c;
|
var startDate = this.data.startDate;
|
var endDate = this.data.endDate;
|
console.log(this.data);
|
if (startDate && endDate && (startDate - endDate > 0)) {
|
this.setData((_a = {},
|
_a["startTimeError"] = "开始时间需小于结束时间",
|
_a));
|
return false;
|
}
|
else {
|
this.setData((_b = {},
|
_b["startTimeError"] = "",
|
_b));
|
}
|
this.setData((_c = {},
|
_c[time + "Error"] = "",
|
_c));
|
return true;
|
},
|
formatTime: function (time) {
|
return dayjs(time).format('YYYY-MM-DD HH:mm');
|
},
|
formatTimeSecond: function (time) {
|
return new Date(time).getTime();
|
}
|
}
|
});
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUVBLDZCQUErQjtBQUUvQixTQUFTLENBQUM7SUFJUixPQUFPLEVBQUU7UUFDUCxjQUFjLEVBQUUsSUFBSTtRQUNwQixhQUFhLEVBQUUsSUFBSTtLQUNwQjtJQUNELFVBQVUsRUFBRTtRQUNWLFNBQVMsRUFBQztZQUNSLElBQUksRUFBRSxNQUFNO1lBQ1osS0FBSyxFQUFFLEVBQUU7U0FDVjtRQUNELE9BQU8sRUFBQztZQUNOLElBQUksRUFBRSxNQUFNO1lBQ1osS0FBSyxFQUFDLEVBQUU7U0FDVDtLQWlCRjtJQUtELElBQUksRUFBRTtRQUNKLFlBQVksRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRTtRQUNsQyxZQUFZLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsR0FBRztRQUM5RCxTQUFTLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUU7UUFDL0IsU0FBUyxFQUFFLEVBQUU7UUFDYixVQUFVLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLEdBQUcsRUFBRTtRQUM1QyxVQUFVLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsR0FBRyxHQUFHLEdBQUc7UUFDbEUsT0FBTyxFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUM7UUFDdkQsT0FBTyxFQUFFLEVBQUU7UUFDWCxTQUFTLFlBQUMsSUFBVyxFQUFFLEtBQVk7WUFFakMsSUFBSSxJQUFJLEtBQUssTUFBTSxFQUFFO2dC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b0JBQ3BCLENBQUM7WUFDSCxPQUFPLElBQUksQ0FBQztRQUVkLENBQUM7UUFDRCxVQUFVLFlBQUMsSUFBUztZQUlsQixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsQ0FBQztRQUNoRCxDQUFDO1FBQ0QsZ0JBQWdCLFlBQUMsSUFBWTtZQUkzQixPQUFPLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2xDLENBQUM7S0FDRjtDQUNGLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbIlxyXG4vLyBjb25zdCBhcHAgPSBnZXRBcHA8SUFwcE9wdGlvbj4oKTtcclxuaW1wb3J0ICogYXMgZGF5anMgZnJvbSBcImRheWpzXCI7XHJcbnR5cGUgdGltZVR5cGUgPSAnc3RhcnRUaW1lJ3wnZW5kVGltZSc7XHJcbkNvbXBvbmVudCh7XHJcbiAgLyoqXHJcbiAgICog57uE5Lu255qE5bGe5oCn5YiX6KGoXHJcbiAgICovXHJcbiAgb3B0aW9uczoge1xyXG4gICAgYWRkR2xvYmFsQ2xhc3M6IHRydWUsXHJcbiAgICBtdWx0aXBsZVNsb3RzOiB0cnVlIC8vIOWcqOe7hOS7tuWumuS5ieaXtueahOmAiemhueS4reWQr+eUqOWkmnNsb3TmlK/mjIFcclxuICB9LFxyXG4gIHByb3BlcnRpZXM6IHtcclxuICAgIHN0YXJ0VGltZTp7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgdmFsdWU6ICcnXHJcbiAgICB9LFxyXG4gICAgZW5kVGltZTp7XHJcbiAgICAgIHR5cGU6IFN0cmluZyxcclxuICAgICAgdmFsdWU6JydcclxuICAgIH0sXHJcbiAgICAvLyBtaW5TdGFydERhdGU6e1xyXG4gICAgLy8gICB0eXBlOiBOdW1iZXJ8fFN0cmluZyxcclxuICAgIC8vICAgdmFsdWU6bmV3IERhdGUoKS5nZXRUaW1lKClcclxuICAgIC8vIH0sXHJcbiAgICAvLyBtaW5TdGFydERhdGU6e1xyXG4gICAgLy8gICB0eXBlOiBOdW1iZXJ8fFN0cmluZyxcclxuICAgIC8vICAgdmFsdWU6bmV3IERhdGUoKS5nZXRUaW1lKClcclxuICAgIC8vIH0sXHJcbiAgICAvLyBtaW5TdGFydERhdGU6e1xyXG4gICAgLy8gICB0eXBlOiBOdW1iZXJ8fFN0cmluZyxcclxuICAgIC8vICAgdmFsdWU6bmV3IERhdGUoKS5nZXRUaW1lKClcclxuICAgIC8vIH0sXHJcbiAgICAvLyBtaW5TdGFydERhdGU6e1xyXG4gICAgLy8gICB0eXBlOiBOdW1iZXJ8fFN0cmluZyxcclxuICAgIC8vICAgdmFsdWU6bmV3IERhdGUoKS5nZXRUaW1lKClcclxuICAgIC8vIH0sXHJcbiAgfSxcclxuXHJcbiAgLyoqXHJcbiAgICog57uE5Lu255qE5Yid5aeL5pWw5o2uXHJcbiAgICovXHJcbiAgZGF0YToge1xyXG4gICAgbWluU3RhcnREYXRlOiBuZXcgRGF0ZSgpLmdldFRpbWUoKSxcclxuICAgIG1heFN0YXJ0RGF0ZTogbmV3IERhdGUoKS5nZXRUaW1lKCkgKyAxMDAwICogNjAgKiA2MCAqIDI0ICogMTgwLFxyXG4gICAgc3RhcnREYXRlOiBuZXcgRGF0ZSgpLmdldFRpbWUoKSwgLy9uZXcgRGF0ZSgpLmdldFRpbWUoKSxcclxuICAgIHN0YXJ0VGltZTogJycsXHJcbiAgICBtaW5FbmREYXRlOiBuZXcgRGF0ZSgpLmdldFRpbWUoKSArIDEwMDAgKiA2MCxcclxuICAgIG1heEVuZERhdGU6IG5ldyBEYXRlKCkuZ2V0VGltZSgpICsgMTAwMCAqIDYwICogNjAgKiAyNCAqIDM2NSAqIDEwMCxcclxuICAgIGVuZERhdGU6IG5ldyBEYXRlKCkuZ2V0VGltZSgpICsgMTAwMCAqIDYwICogNjAgKiAyNCAqIDcsIC8vbmV3IERhdGUoKS5nZXRUaW1lKCksXHJcbiAgICBlbmRUaW1lOiAnJyxcclxuICAgIGZvcm1hdHRlcih0eXBlOnN0cmluZywgdmFsdWU6c3RyaW5nKSB7XHJcbiAgICAgIC8vIGNvbnNvbGUubG9nKHR5cGUsdmFsdWUpXHJcbiAgICAgIGlmICh0eXBlID09PSBcInllYXJcIikge1xyXG4gICAgICAgIHJldHVybiBgJHt2YWx1ZX3lubRgO1xyXG4gICAgICB9IGVsc2UgaWYgKHR5cGUgPT09IFwibW9udGhcIikge1xyXG4gICAgICAgIHJldHVybiBgJHt2YWx1ZX3mnIhgO1xyXG4gICAgICB9IGVsc2UgaWYgKHR5cGUgPT09IFwiZGF5XCIpIHtcclxuICAgICAgICByZXR1cm4gYCR7dmFsdWV95pelYDtcclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gdmFsdWU7XHJcbiAgICB9LFxyXG4gIH0sXHJcblxyXG4gIGxpZmV0aW1lczoge1xyXG4gICAgcmVhZHkoKSB7XHJcbiAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgc3RhcnRUaW1lOiB0aGlzLmRhdGEuc3RhcnRUaW1lIHx8IHd4LiR1dGlscy5mb3JtYXRUaW1lKG5ldyBEYXRlKCkuZ2V0VGltZSgpKSxcclxuICAgICAgICBlbmRUaW1lOiB0aGlzLmRhdGEuZW5kVGltZSB8fCB3eC4kdXRpbHMuZm9ybWF0VGltZShuZXcgRGF0ZSgpLmdldFRpbWUoKSArIDEwMDAgKiA2MCAqIDYwICogMjQgKiA3KSxcclxuICAgICAgICBtaW5TdGFydERhdGU6IG5ldyBEYXRlKCkuZ2V0VGltZSgpLFxyXG4gICAgICAgIG1heFN0YXJ0RGF0ZTogbmV3IERhdGUoKS5nZXRUaW1lKCkgKyAxMDAwICogNjAgKiA2MCAqIDI0ICogMTgwLFxyXG4gICAgICB9KVxyXG4gICAgfVxyXG4gIH0sXHJcbiAgLyoqXHJcbiAgICog57uE5Lu255qE5pa55rOV5YiX6KGoXHJcbiAgICovXHJcbiAgbWV0aG9kczoge1xyXG4gICAgc2hvd1N0YXJ0RGF0ZVBvcHVwKCl7XHJcbiAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgaXNTaG93U3RhcnREYXRlUG9wdXA6IHRydWVcclxuICAgICAgfSlcclxuICAgIH0sXHJcbiAgICBvblN0YXJ0RGF0ZVBvcHVwQ2xvc2UoKXtcclxuICAgICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgICBpc1Nob3dTdGFydERhdGVQb3B1cDogZmFsc2VcclxuICAgICAgfSlcclxuICAgIH0sXHJcbiAgICBvbkVudGVyU3RhcnREYXRlKGV2ZW50OiB7IGRldGFpbDogYW55OyB9KSB7XHJcbiAgICAgIGxldCBkZXRhaWwgPSBldmVudC5kZXRhaWw7XHJcbiAgICAgIGNvbnN0IGRhdGVUaW1lOmFueSA9IHRoaXMuZm9ybWF0VGltZShldmVudC5kZXRhaWwpO1xyXG4gICAgICBjb25zb2xlLmxvZyhkYXRlVGltZSk7XHJcbiAgICAgIC8vIC8vIOW3sumAieaLqei/h+e7k+adn+aXpeacn++8jOS4lFxyXG4gICAgICAvLyBpZiAoXHJcbiAgICAgIC8vICAgdGhpcy5kYXRhLmVuZERhdGUgJiZcclxuICAgICAgLy8gICBNYXRoLmFicyhkZXRhaWwgLSB0aGlzLmRhdGEuZW5kRGF0ZSkgPiAxMDAwICogNjAgKiA2MCAqIDI0XHJcbiAgICAgIC8vICkge1xyXG4gICAgICAvLyAgIGxldCBkYXRlID0gZGV0YWlsICsgMTAwMCAqIDYwICogNjAgKiAyNDtcclxuICAgICAgLy8gICBsZXQgdGltZSA9IHRoaXMuZm9ybWF0VGltZShkYXRlKTtcclxuICAgICAgLy8gICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAvLyAgICAgZW5kRGF0ZTogZGF0ZSxcclxuICAgICAgLy8gICAgIGVuZFRpbWU6IHRpbWUsXHJcbiAgICAgIC8vICAgfSk7XHJcbiAgICAgIC8vIH1cclxuICAgICAgLy8gaWYgKFxyXG4gICAgICAvLyAgIHRoaXMuZGF0YS5lbmREYXRlICYmXHJcbiAgICAgIC8vICAgTWF0aC5hYnMoZGV0YWlsIC0gdGhpcy5kYXRhLmVuZERhdGUpIDwgMTAwMCAqIDYwXHJcbiAgICAgIC8vICkge1xyXG4gICAgICAvLyAgIGxldCBkYXRlID0gZGV0YWlsICsgMTAwMCAqIDYwIDtcclxuICAgICAgLy8gICBsZXQgdGltZSA9IHRoaXMuZm9ybWF0VGltZShkYXRlKTtcclxuICAgICAgLy8gICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAvLyAgICAgZW5kRGF0ZTogZGF0ZSxcclxuICAgICAgLy8gICAgIGVuZFRpbWU6IHRpbWUsXHJcbiAgICAgIC8vICAgfSk7XHJcbiAgICAgIC8vIH1cclxuICAgICAgLy8gaWYgKHRoaXMuZGF0YS5lbmREYXRlICYmIGUuZGV0YWlsID4gdGhpcy5kYXRhLmVuZERhdGUpIHtcclxuICAgICAgLy8gfVxyXG4gICAgICBjb25zb2xlLmxvZyhcIumAieaLqeW8gOaSreaXtumXtFwiLCBkYXRlVGltZSxkZXRhaWwpO1xyXG4gICAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAgIHN0YXJ0RGF0ZTogZGV0YWlsLFxyXG4gICAgICAgIHN0YXJ0VGltZTogZGF0ZVRpbWUsXHJcbiAgICAgICAgbWluRW5kRGF0ZTogZGV0YWlsICsgMTAwMCAqIDYwLFxyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5oYW5kbGVUaW1lUXVhbnR1bSgpO1xyXG4gICAgICB0aGlzLm9uU3RhcnREYXRlUG9wdXBDbG9zZSgpO1xyXG4gICAgICB0aGlzLmNoZWNrVGltZShcInN0YXJ0VGltZVwiKTtcclxuICAgIH0sXHJcbiAgICBvbklucHV0U3RhcnREYXRlKCkge30sXHJcbiAgICBvbkNhbmNlbFN0YXJ0RGF0ZSgpIHtcclxuICAgICAgdGhpcy5vblN0YXJ0RGF0ZVBvcHVwQ2xvc2UoKTtcclxuICAgICAgdGhpcy5jaGVja1RpbWUoXCJzdGFydFRpbWVcIik7XHJcbiAgICB9LFxyXG4gICAgb25DYW5jZWxFbmREYXRlKCkge1xyXG4gICAgICB0aGlzLm9uRW5kRGF0ZVBvcHVwQ2xvc2UoKTtcclxuICAgICAgdGhpcy5jaGVja1RpbWUoXCJlbmRUaW1lXCIpO1xyXG4gICAgfSxcclxuICAgIG9uSW5wdXRFbmREYXRlKCkge30sXHJcbiAgICBzaG93RW5kRGF0ZVBvcHVwKCl7XHJcbiAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgaXNTaG93RW5kRGF0ZVBvcHVwOiB0cnVlXHJcbiAgICAgIH0pXHJcbiAgICB9LFxyXG4gICAgb25FbmREYXRlUG9wdXBDbG9zZSgpe1xyXG4gICAgICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAgIGlzU2hvd0VuZERhdGVQb3B1cDogZmFsc2VcclxuICAgICAgfSlcclxuICAgIH0sXHJcbiAgICBvbkVudGVyRW5kRGF0ZShldmVudDogeyBkZXRhaWw6IGFueTsgfSkge1xyXG4gICAgICBjb25zdCBkYXRlOmFueSA9IHRoaXMuZm9ybWF0VGltZShldmVudC5kZXRhaWwpO1xyXG4gICAgICBjb25zb2xlLmxvZyhkYXRlKTtcclxuICAgICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgICBlbmRUaW1lOiBkYXRlLFxyXG4gICAgICAgIGVuZERhdGU6IGV2ZW50LmRldGFpbCxcclxuICAgICAgfSk7XHJcbiAgICAgIC8vIHRoaXMudHJpZ2dlckV2ZW50KCdzZWxlY3RlZEVuZFRpbWUnLHtcclxuICAgICAgLy8gICBlbmRUaW1lOiBkYXRlXHJcbiAgICAgIC8vIH0pO1xyXG4gICAgICB0aGlzLmhhbmRsZVRpbWVRdWFudHVtKCk7XHJcbiAgICAgIHRoaXMub25FbmREYXRlUG9wdXBDbG9zZSgpO1xyXG4gICAgICB0aGlzLmNoZWNrVGltZShcImVuZFRpbWVcIik7XHJcbiAgICB9LFxyXG5cclxuICAgIGhhbmRsZVRpbWVRdWFudHVtKCl7XHJcblxyXG4gICAgICAvLyBsZXQgc3RhcnREYXRlID0gdGhpcy5kYXRhLnN0YXJ0RGF0ZTtcclxuICAgICAgbGV0IHN0YXJ0VGltZSA9IHRoaXMuZGF0YS5zdGFydFRpbWU7XHJcbiAgICAgIGxldCBlbmREYXRlID0gdGhpcy5kYXRhLmVuZERhdGU7XHJcbiAgICAgIGxldCBlbmRUaW1lID0gdGhpcy5kYXRhLmVuZFRpbWU7XHJcbiAgICAgIGlmIChlbmRUaW1lJiYhZW5kRGF0ZSkge1xyXG4gICAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgICBlbmREYXRlOnRoaXMuZm9ybWF0VGltZVNlY29uZCh0aGlzLmRhdGEuZW5kVGltZSlcclxuICAgICAgICB9KVxyXG4gICAgICAgIGVuZERhdGUgPSB0aGlzLmRhdGEuZW5kRGF0ZTtcclxuICAgICAgICBjb25zb2xlLmxvZygn6L2s5o2i5LqGZW5kRGF0ZScsdGhpcy5kYXRhLmVuZERhdGUsZW5kRGF0ZSk7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKCFzdGFydFRpbWUmJmVuZFRpbWUpIHtcclxuICAgICAgICB0aGlzLnRyaWdnZXJFdmVudCgnc2VsZWN0ZWRTdGFydFRpbWUnLHtcclxuICAgICAgICAgIGVuZFRpbWVcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm47XHJcbiAgICAgIH1cclxuICAgICAgaWYgKCFlbmRUaW1lJiZzdGFydFRpbWUpIHtcclxuICAgICAgICB0aGlzLnRyaWdnZXJFdmVudCgnc2VsZWN0ZWRTdGFydFRpbWUnLHtcclxuICAgICAgICAgIHN0YXJ0VGltZVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG4gICAgICBpZiAoIXN0YXJ0VGltZSYmIWVuZFRpbWUpIHJldHVybjtcclxuICAgICAgLy8gaWYgKHN0YXJ0RGF0ZSAtIGVuZERhdGUgPiAwKSB7XHJcbiAgICAgIC8vICAgY29uc29sZS5sb2coJ+WkhOeQhnRpbWUnLHN0YXJ0RGF0ZSxlbmREYXRlKTtcclxuICAgICAgLy8gICB0aGlzLnNldERhdGEoe1xyXG4gICAgICAvLyAgICAgLy8gc3RhcnREYXRlOiBlbmREYXRlLFxyXG4gICAgICAvLyAgICAgLy8gc3RhcnRUaW1lOiBlbmRUaW1lLFxyXG4gICAgICAvLyAgICAgLy8gZW5kRGF0ZTogc3RhcnREYXRlLFxyXG4gICAgICAvLyAgICAgLy8gZW5kVGltZTogc3RhcnRUaW1lLFxyXG4gICAgICAvLyAgICAgbWluRW5kRGF0ZTogZW5kRGF0ZSArIDEwMDAgKiA2MCxcclxuICAgICAgLy8gICB9KTtcclxuICAgICAgLy8gICAvLyB0aGlzLnRyaWdnZXJFdmVudCgnc2VsZWN0ZWRTdGFydFRpbWUnLHtcclxuICAgICAgLy8gICAvLyAgIHN0YXJ0VGltZTogZW5kVGltZVxyXG4gICAgICAvLyAgIC8vIH0pO1xyXG4gICAgICAvLyAgIC8vIHRoaXMudHJpZ2dlckV2ZW50KCdzZWxlY3RlZEVuZFRpbWUnLHtcclxuICAgICAgLy8gICAvLyAgIGVuZFRpbWU6IHN0YXJ0VGltZVxyXG4gICAgICAvLyAgIC8vIH0pO1xyXG4gICAgICAvLyAgIC8vIHJldHVybjtcclxuICAgICAgLy8gfVxyXG4gICAgICB0aGlzLnRyaWdnZXJFdmVudCgnc2VsZWN0ZWRTdGFydFRpbWUnLHtcclxuICAgICAgICBzdGFydFRpbWVcclxuICAgICAgfSk7XHJcbiAgICAgIHRoaXMudHJpZ2dlckV2ZW50KCdzZWxlY3RlZEVuZFRpbWUnLHtcclxuICAgICAgICBlbmRUaW1lXHJcbiAgICAgIH0pO1xyXG4gICAgfSxcclxuICAgIGdldFNlbGVjdGVkVGltZSgpe1xyXG4gICAgICBsZXQgZGF0YTphbnkgPSB0aGlzLmRhdGE7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgc3RhcnRUaW1lOiBkYXRhLnN0YXJ0VGltZSxcclxuICAgICAgICBlbmRUaW1lOiBkYXRhLmVuZFRpbWUsXHJcbiAgICAgIH1cclxuICAgIH0sXHJcbiAgICBjaGVja1RpbWUodGltZTp0aW1lVHlwZSkge1xyXG4gICAgICAvLyBpZiAodGhpcy5kYXRhW3RpbWVdID09ICcnKSB7XHJcbiAgICAgIC8vICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgLy8gICAgIFt0aW1lICsgXCJFcnJvclwiXTogbXNnLFxyXG4gICAgICAvLyAgIH0pO1xyXG4gICAgICAvLyAgIGNvbnNvbGUubG9nKHRoaXMuZGF0YS5zdGFydFRpbWUpO1xyXG4gICAgICAvLyAgIHJldHVybiBmYWxzZTtcclxuICAgICAgLy8gfVxyXG4gICAgICBsZXQgc3RhcnREYXRlID0gdGhpcy5kYXRhLnN0YXJ0RGF0ZTtcclxuICAgICAgbGV0IGVuZERhdGUgPSB0aGlzLmRhdGEuZW5kRGF0ZTtcclxuICAgICAgY29uc29sZS5sb2codGhpcy5kYXRhKTtcclxuICAgICAgaWYgKHN0YXJ0RGF0ZSYmZW5kRGF0ZSYmKHN0YXJ0RGF0ZSAtIGVuZERhdGUgPiAwKSkge1xyXG4gICAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgICBbXCJzdGFydFRpbWVFcnJvclwiXTogXCLlvIDlp4vml7bpl7TpnIDlsI/kuo7nu5PmnZ/ml7bpl7RcIixcclxuICAgICAgICB9KTtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5zZXREYXRhKHtcclxuICAgICAgICAgIFtcInN0YXJ0VGltZUVycm9yXCJdOiBcIlwiLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuc2V0RGF0YSh7XHJcbiAgICAgICAgW3RpbWUgKyBcIkVycm9yXCJdOiBcIlwiLFxyXG4gICAgICB9KTtcclxuICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIC8vIHRoaXMuaGFuZGxlTGl2ZVRpbWUoKVxyXG4gICAgfSxcclxuICAgIGZvcm1hdFRpbWUodGltZTogYW55KSB7XHJcbiAgICAgIC8vIGNvbnN0IGRhdGU6YW55ID0gZGF5anModGltZSk7XHJcbiAgICAgIC8vIGNvbnNvbGUubG9nKCk7XHJcbiAgICAgIC8vIHJldHVybiBgJHtkYXRlLiR5fS0ke2RhdGUuJE0gKyAxfS0ke2RhdGUuJER9ICR7ZGF0ZS4kSH06JHtkYXRlLiRtfWA7XHJcbiAgICAgIHJldHVybiBkYXlqcyh0aW1lKS5mb3JtYXQoJ1lZWVktTU0tREQgSEg6bW0nKTtcclxuICAgIH0sXHJcbiAgICBmb3JtYXRUaW1lU2Vjb25kKHRpbWU6IHN0cmluZykge1xyXG4gICAgICAvLyBjb25zdCBkYXRlOmFueSA9IGRheWpzKHRpbWUpO1xyXG4gICAgICAvLyBjb25zb2xlLmxvZygpO1xyXG4gICAgICAvLyByZXR1cm4gYCR7ZGF0ZS4keX0tJHtkYXRlLiRNICsgMX0tJHtkYXRlLiREfSAke2RhdGUuJEh9OiR7ZGF0ZS4kbX1gO1xyXG4gICAgICByZXR1cm4gbmV3IERhdGUodGltZSkuZ2V0VGltZSgpO1xyXG4gICAgfVxyXG4gIH1cclxufSlcclxuIl19
|