easy-drag-and-drop 1.3.42 → 1.3.44
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/example.js +4850 -161
- package/lib/mixins/drag.js +2 -2
- package/package.json +2 -2
- package/src/mixins/drag.js +2 -2
package/lib/mixins/drag.js
CHANGED
|
@@ -38,7 +38,7 @@ function _unsupported_iterable_to_array(o, minLen) {
|
|
|
38
38
|
if (n === "Map" || n === "Set") return Array.from(n);
|
|
39
39
|
if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
|
|
40
40
|
}
|
|
41
|
-
var forEach = _necessary.asynchronousUtilities.forEach, ESCAPE_KEY_CODE = _necessary.keyCodes.ESCAPE_KEY_CODE, BLUR_EVENT_TYPE = _easy.eventTypes.BLUR_EVENT_TYPE, LEFT_MOUSE_BUTTON = _easy.
|
|
41
|
+
var forEach = _necessary.asynchronousUtilities.forEach, ESCAPE_KEY_CODE = _necessary.keyCodes.ESCAPE_KEY_CODE, BLUR_EVENT_TYPE = _easy.eventTypes.BLUR_EVENT_TYPE, LEFT_MOUSE_BUTTON = _easy.mouseButtons.LEFT_MOUSE_BUTTON;
|
|
42
42
|
var dragElement = null;
|
|
43
43
|
Object.assign(globalThis, {
|
|
44
44
|
dragElement: dragElement
|
|
@@ -305,4 +305,4 @@ function mouseMoveHandler(event, element) {
|
|
|
305
305
|
event.stopPropagation();
|
|
306
306
|
}
|
|
307
307
|
|
|
308
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvZHJhZy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgd2luZG93LCBidXR0b25zLCBldmVudFR5cGVzIH0gZnJvbSBcImVhc3lcIjtcbmltcG9ydCB7IGtleUNvZGVzLCBhc3luY2hyb25vdXNVdGlsaXRpZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCIgO1xuXG5pbXBvcnQgeyBTVEFSVF9EUkFHR0lOR19ERUxBWSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IG1vdXNlVG9wRnJvbUV2ZW50LCBtb3VzZUxlZnRGcm9tRXZlbnQgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL2V2ZW50XCI7XG5pbXBvcnQgeyBEUkFHX0VWRU5UX1RZUEUsIFNUT1BfRFJBR19FVkVOVF9UWVBFLCBTVEFSVF9EUkFHX0VWRU5UX1RZUEUgfSBmcm9tIFwiLi4vZXZlbnRUeXBlc1wiO1xuXG5jb25zdCB7IGZvckVhY2ggfSA9IGFzeW5jaHJvbm91c1V0aWxpdGllcyxcbiAgICAgIHsgRVNDQVBFX0tFWV9DT0RFIH0gPSBrZXlDb2RlcyxcbiAgICAgIHsgQkxVUl9FVkVOVF9UWVBFIH0gPSBldmVudFR5cGVzLFxuICAgICAgeyBMRUZUX01PVVNFX0JVVFRPTiB9ID0gYnV0dG9ucztcblxuY29uc3QgZHJhZ0VsZW1lbnQgPSBudWxsO1xuXG5PYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHtcbiAgZHJhZ0VsZW1lbnRcbn0pO1xuXG5mdW5jdGlvbiBvbkRyYWcoZHJhZ0hhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gRFJBR19FVkVOVF9UWVBFLFxuICAgICAgICBoYW5kbGVyID0gZHJhZ0hhbmRsZXI7ICAvLy9cblxuICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb2ZmRHJhZyhkcmFnSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBldmVudFR5cGUgPSBEUkFHX0VWRU5UX1RZUEUsXG4gICAgICAgIGhhbmRsZXIgPSBkcmFnSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMucmVtb3ZlRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvblN0b3BEcmFnKHN0b3BEcmFnSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBldmVudFR5cGUgPSBTVE9QX0RSQUdfRVZFTlRfVFlQRSxcbiAgICAgICAgaGFuZGxlciA9IHN0b3BEcmFnSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZTdG9wRHJhZyhzdG9wRHJhZ0hhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gU1RPUF9EUkFHX0VWRU5UX1RZUEUsXG4gICAgICAgIGhhbmRsZXIgPSBzdG9wRHJhZ0hhbmRsZXI7ICAvLy9cblxuICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb25TdGFydERyYWcoc3RhcnREcmFnSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBldmVudFR5cGUgPSBTVEFSVF9EUkFHX0VWRU5UX1RZUEUsXG4gICAgICAgIGhhbmRsZXIgPSBzdGFydERyYWdIYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5hZGRFdmVudExpc3RlbmVyKGV2ZW50VHlwZSwgaGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZlN0YXJ0RHJhZyhzdGFydERyYWdIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IFNUQVJUX0RSQUdfRVZFTlRfVFlQRSxcbiAgICAgICAgaGFuZGxlciA9IHN0YXJ0RHJhZ0hhbmRsZXI7ICAvLy9cblxuICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gZW5hYmxlRHJhZygpIHtcbiAgY29uc3QgeyBvbkRyYWcsIG9uU3RvcERyYWcsIG9uU3RhcnREcmFnIH0gPSB0aGlzLnByb3BlcnRpZXMsXG4gICAgICAgIGRyYWdIYW5kbGVyID0gb25EcmFnLCAvLy9cbiAgICAgICAgc3RvcERyYWdIYW5kbGVyID0gb25TdG9wRHJhZywgLy8vXG4gICAgICAgIHN0YXJ0RHJhZ0hhbmRsZXIgPSBvblN0YXJ0RHJhZywgLy8vXG4gICAgICAgIHRpbWVvdXQgPSBudWxsLFxuICAgICAgICB0b3BPZmZzZXQgPSBudWxsLFxuICAgICAgICBsZWZ0T2Zmc2V0ID0gbnVsbCxcbiAgICAgICAgc3RhcnRNb3VzZVRvcCA9IG51bGwsXG4gICAgICAgIHN0YXJ0TW91c2VMZWZ0ID0gbnVsbDtcblxuICBkcmFnSGFuZGxlciAmJiB0aGlzLm9uRHJhZyhkcmFnSGFuZGxlcik7XG4gIHN0b3BEcmFnSGFuZGxlciAmJiB0aGlzLm9uU3RvcERyYWcoc3RvcERyYWdIYW5kbGVyKTtcbiAgc3RhcnREcmFnSGFuZGxlciAmJiB0aGlzLm9uU3RhcnREcmFnKHN0YXJ0RHJhZ0hhbmRsZXIpO1xuXG4gIHRoaXMub25Nb3VzZURvd24obW91c2VEb3duSGFuZGxlciwgdGhpcyk7XG5cbiAgdGhpcy5zZXRTdGF0ZSh7XG4gICAgdGltZW91dCxcbiAgICB0b3BPZmZzZXQsXG4gICAgbGVmdE9mZnNldCxcbiAgICBzdGFydE1vdXNlVG9wLFxuICAgIHN0YXJ0TW91c2VMZWZ0XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBkaXNhYmxlRHJhZygpIHtcbiAgY29uc3QgeyBvbkRyYWcsIG9uU3RvcERyYWcsIG9uU3RhcnREcmFnIH0gPSB0aGlzLnByb3BlcnRpZXMsXG4gICAgICAgIGRyYWdIYW5kbGVyID0gb25EcmFnLCAvLy9cbiAgICAgICAgc3RvcERyYWdIYW5kbGVyID0gb25TdG9wRHJhZywgLy8vXG4gICAgICAgIHN0YXJ0RHJhZ0hhbmRsZXIgPSBvblN0YXJ0RHJhZzsgLy8vXG5cbiAgZHJhZ0hhbmRsZXIgJiYgdGhpcy5vZmZEcmFnKGRyYWdIYW5kbGVyKTtcbiAgc3RvcERyYWdIYW5kbGVyICYmIHRoaXMub2ZmU3RvcERyYWcoc3RvcERyYWdIYW5kbGVyKTtcbiAgc3RhcnREcmFnSGFuZGxlciAmJiB0aGlzLm9mZlN0YXJ0RHJhZyhzdGFydERyYWdIYW5kbGVyKTtcblxuICB0aGlzLm9mZk1vdXNlRG93bihtb3VzZURvd25IYW5kbGVyLCB0aGlzKTtcbn1cblxuZnVuY3Rpb24gaXNEcmFnZ2luZygpIHtcbiAgY29uc3QgZHJhZ2dpbmcgPSB0aGlzLmhhc0NsYXNzKFwiZHJhZ2dpbmdcIik7XG5cbiAgcmV0dXJuIGRyYWdnaW5nO1xufVxuXG5mdW5jdGlvbiBzdGFydFdhaXRpbmdUb0RyYWcobW91c2VUb3AsIG1vdXNlTGVmdCkge1xuICBsZXQgdGltZW91dCA9IHRoaXMuZ2V0VGltZW91dCgpO1xuXG4gIGlmICh0aW1lb3V0ID09PSBudWxsKSB7XG4gICAgdGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5yZXNldFRpbWVvdXQoKTtcblxuICAgICAgdGhpcy5zdGFydERyYWcobW91c2VUb3AsIG1vdXNlTGVmdCk7XG4gICAgfSwgU1RBUlRfRFJBR0dJTkdfREVMQVkpO1xuXG4gICAgdGhpcy51cGRhdGVUaW1lb3V0KHRpbWVvdXQpO1xuICB9XG59XG5cbmZ1bmN0aW9uIHN0b3BXYWl0aW5nVG9EcmFnKCkge1xuICBjb25zdCB0aW1lb3V0ID0gdGhpcy5nZXRUaW1lb3V0KCk7XG5cbiAgaWYgKHRpbWVvdXQgIT09IG51bGwpIHtcbiAgICBjbGVhclRpbWVvdXQodGltZW91dCk7XG5cbiAgICB0aGlzLnJlc2V0VGltZW91dCgpO1xuICB9XG59XG5cbmZ1bmN0aW9uIHN0YXJ0RHJhZyhtb3VzZVRvcCwgbW91c2VMZWZ0KSB7XG4gIGNvbnN0IGJvdW5kcyA9IHRoaXMuZ2V0Qm91bmRzKCksXG4gICAgICAgIGV2ZW50VHlwZSA9IFNUQVJUX0RSQUdfRVZFTlRfVFlQRSxcbiAgICAgICAgYm91bmRzVG9wID0gYm91bmRzLmdldFRvcCgpLFxuICAgICAgICBib3VuZHNMZWZ0ID0gYm91bmRzLmdldExlZnQoKSxcbiAgICAgICAgYm91bmRzUmlnaHQgPSBib3VuZHMuZ2V0UmlnaHQoKSxcbiAgICAgICAgYm91bmRzQm90dG9tID0gYm91bmRzLmdldEJvdHRvbSgpLFxuICAgICAgICBib3VuZHNXaWR0aCA9IGJvdW5kc1JpZ2h0IC0gYm91bmRzTGVmdCxcbiAgICAgICAgYm91bmRzSGVpZ2h0ID0gYm91bmRzQm90dG9tIC0gYm91bmRzVG9wLFxuICAgICAgICB0b3BPZmZzZXQgPSBNYXRoLmZsb29yKGJvdW5kc0hlaWdodCAvIDIpLFxuICAgICAgICBsZWZ0T2Zmc2V0ID0gTWF0aC5mbG9vcihib3VuZHNXaWR0aCAvIDIpLFxuICAgICAgICBkcmFnRWxlbWVudCA9IHRoaXMsIC8vL1xuICAgICAgICBzdGFydE1vdXNlVG9wID0gbW91c2VUb3AsIC8vL1xuICAgICAgICBzdGFydE1vdXNlTGVmdCA9IG1vdXNlTGVmdDsgLy8vXG5cbiAgd2luZG93Lm9uS2V5RG93bihrZXlEb3duSGFuZGxlciwgdGhpcyk7XG5cbiAgd2luZG93Lm9uTW91c2VNb3ZlKG1vdXNlTW92ZUhhbmRsZXIsIHRoaXMpO1xuXG4gIHRoaXMuYWRkQ2xhc3MoXCJkcmFnZ2luZ1wiKTtcblxuICBPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHtcbiAgICBkcmFnRWxlbWVudFxuICB9KTtcblxuICB0aGlzLnNldFRvcE9mZnNldCh0b3BPZmZzZXQpO1xuXG4gIHRoaXMuc2V0TGVmdE9mZnNldChsZWZ0T2Zmc2V0KTtcblxuICB0aGlzLnNldFN0YXJ0TW91c2VUb3Aoc3RhcnRNb3VzZVRvcCk7XG5cbiAgdGhpcy5zZXRTdGFydE1vdXNlTGVmdChzdGFydE1vdXNlTGVmdCk7XG5cbiAgdGhpcy5jYWxsSGFuZGxlcnMoZXZlbnRUeXBlKTtcblxuICB0aGlzLmRyYWcobW91c2VUb3AsIG1vdXNlTGVmdCk7XG59XG5cbmZ1bmN0aW9uIHN0b3BEcmFnKGFib3J0ZWQpIHtcbiAgY29uc3QgeyBkcm9wRWxlbWVudCB9ID0gZ2xvYmFsVGhpcyxcbiAgICAgICAgZXZlbnRUeXBlID0gU1RPUF9EUkFHX0VWRU5UX1RZUEU7XG5cbiAgd2luZG93Lm9mZktleURvd24oa2V5RG93bkhhbmRsZXIsIHRoaXMpO1xuXG4gIHdpbmRvdy5vZmZNb3VzZU1vdmUobW91c2VNb3ZlSGFuZGxlciwgdGhpcyk7XG5cbiAgY29uc3QgZG9uZSA9ICgpID0+IHtcbiAgICB0aGlzLmNhbGxIYW5kbGVyc0FzeW5jKGV2ZW50VHlwZSwgZHJvcEVsZW1lbnQsIGFib3J0ZWQsICgpID0+IHtcbiAgICAgIGNvbnN0IGRyYWdFbGVtZW50ID0gbnVsbDtcblxuICAgICAgT2JqZWN0LmFzc2lnbihnbG9iYWxUaGlzLCB7XG4gICAgICAgIGRyYWdFbGVtZW50XG4gICAgICB9KTtcblxuICAgICAgdGhpcy5yZW1vdmVDbGFzcyhcImRyYWdnaW5nXCIpO1xuICAgIH0pO1xuICB9XG5cbiAgaWYgKGRyb3BFbGVtZW50ICE9PSBudWxsKSB7XG4gICAgY29uc3QgZHJhZ0VsZW1lbnQgPSB0aGlzOyAvLy9cblxuICAgIGRyb3BFbGVtZW50LmRyb3AoZHJhZ0VsZW1lbnQsIGFib3J0ZWQsIGRvbmUpO1xuICB9IGVsc2Uge1xuICAgIGRvbmUoKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBkcmFnKG1vdXNlVG9wLCBtb3VzZUxlZnQpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gRFJBR19FVkVOVF9UWVBFLFxuICAgICAgICBzY3JvbGxUb3AgPSB3aW5kb3cuZ2V0U2Nyb2xsVG9wKCksXG4gICAgICAgIHNjcm9sbExlZnQgPSB3aW5kb3cuZ2V0U2Nyb2xsTGVmdCgpLFxuICAgICAgICB0b3BPZmZzZXQgPSB0aGlzLmdldFRvcE9mZnNldCgpLFxuICAgICAgICBsZWZ0T2Zmc2V0ID0gdGhpcy5nZXRMZWZ0T2Zmc2V0KCksXG4gICAgICAgIHN0YXJ0TW91c2VUb3AgPSB0aGlzLmdldFN0YXJ0TW91c2VUb3AoKSxcbiAgICAgICAgc3RhcnRNb3VzZUxlZnQgPSB0aGlzLmdldFN0YXJ0TW91c2VMZWZ0KCksXG4gICAgICAgIHJlbGF0aXZlTW91c2VUb3AgPSBtb3VzZVRvcCAtIHN0YXJ0TW91c2VUb3AsXG4gICAgICAgIHJlbGF0aXZlTW91c2VMZWZ0ID0gbW91c2VMZWZ0IC0gc3RhcnRNb3VzZUxlZnQ7XG5cbiAgbGV0IHRvcCA9IHN0YXJ0TW91c2VUb3AgKyByZWxhdGl2ZU1vdXNlVG9wIC0gdG9wT2Zmc2V0IC0gc2Nyb2xsVG9wLFxuICAgICAgbGVmdCA9IHN0YXJ0TW91c2VMZWZ0ICsgcmVsYXRpdmVNb3VzZUxlZnQgLSBsZWZ0T2Zmc2V0IC0gc2Nyb2xsTGVmdDtcblxuICB0b3AgPSBgJHt0b3B9cHhgOyAvLy9cbiAgbGVmdCA9IGAke2xlZnR9cHhgOyAvLy9cblxuICBjb25zdCBjc3MgPSB7XG4gICAgdG9wLFxuICAgIGxlZnRcbiAgfTtcblxuICB0aGlzLmNzcyhjc3MpO1xuXG4gIHRoaXMuY2FsbEhhbmRsZXJzKGV2ZW50VHlwZSwgcmVsYXRpdmVNb3VzZVRvcCwgcmVsYXRpdmVNb3VzZUxlZnQpO1xufVxuXG5mdW5jdGlvbiBnZXRUaW1lb3V0KCkge1xuICBjb25zdCB7IHRpbWVvdXQgfSA9IHRoaXMuZ2V0U3RhdGUoKTtcblxuICByZXR1cm4gdGltZW91dDtcbn1cblxuZnVuY3Rpb24gcmVzZXRUaW1lb3V0KCkge1xuICBjb25zdCB0aW1lb3V0ID0gbnVsbDtcblxuICB0aGlzLnVwZGF0ZVRpbWVvdXQodGltZW91dCk7XG59XG5cbmZ1bmN0aW9uIHVwZGF0ZVRpbWVvdXQodGltZW91dCkge1xuICB0aGlzLnVwZGF0ZVN0YXRlKHtcbiAgICB0aW1lb3V0XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBnZXRUb3BPZmZzZXQoKSB7XG4gIGNvbnN0IHsgdG9wT2Zmc2V0IH0gPSB0aGlzLmdldFN0YXRlKCk7XG5cbiAgcmV0dXJuIHRvcE9mZnNldDtcbn1cblxuZnVuY3Rpb24gZ2V0TGVmdE9mZnNldCgpIHtcbiAgY29uc3QgeyBsZWZ0T2Zmc2V0IH0gPSB0aGlzLmdldFN0YXRlKCk7XG5cbiAgcmV0dXJuIGxlZnRPZmZzZXQ7XG59XG5cbmZ1bmN0aW9uIGdldFN0YXJ0TW91c2VUb3AoKSB7XG4gIGNvbnN0IHsgc3RhcnRNb3VzZVRvcCB9ID0gdGhpcy5nZXRTdGF0ZSgpO1xuXG4gIHJldHVybiBzdGFydE1vdXNlVG9wO1xufVxuXG5mdW5jdGlvbiBnZXRTdGFydE1vdXNlTGVmdCgpIHtcbiAgY29uc3QgeyBzdGFydE1vdXNlTGVmdCB9ID0gdGhpcy5nZXRTdGF0ZSgpO1xuXG4gIHJldHVybiBzdGFydE1vdXNlTGVmdDtcbn1cblxuZnVuY3Rpb24gc2V0VG9wT2Zmc2V0KHRvcE9mZnNldCkge1xuICB0aGlzLnVwZGF0ZVN0YXRlKHtcbiAgICB0b3BPZmZzZXRcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIHNldExlZnRPZmZzZXQobGVmdE9mZnNldCkge1xuICB0aGlzLnVwZGF0ZVN0YXRlKHtcbiAgICBsZWZ0T2Zmc2V0XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBzZXRTdGFydE1vdXNlVG9wKHN0YXJ0TW91c2VUb3ApIHtcbiAgdGhpcy51cGRhdGVTdGF0ZSh7XG4gICAgc3RhcnRNb3VzZVRvcFxuICB9KTtcbn1cblxuZnVuY3Rpb24gc2V0U3RhcnRNb3VzZUxlZnQoc3RhcnRNb3VzZUxlZnQpIHtcbiAgdGhpcy51cGRhdGVTdGF0ZSh7XG4gICAgc3RhcnRNb3VzZUxlZnRcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGNhbGxIYW5kbGVycyhldmVudFR5cGUsIC4uLnJlbWFpbmluZ0FyZ3VtZW50cykge1xuICBjb25zdCBldmVudExpc3RlbmVycyA9IHRoaXMuZmluZEV2ZW50TGlzdGVuZXJzKGV2ZW50VHlwZSk7XG5cbiAgZXZlbnRMaXN0ZW5lcnMuZm9yRWFjaCgoZXZlbnRMaXN0ZW5lcikgPT4ge1xuICAgIGNvbnN0IHsgaGFuZGxlciwgZWxlbWVudDogaGFuZGxlckVsZW1lbnQgfSA9IGV2ZW50TGlzdGVuZXIsXG4gICAgICAgICAgZWxlbWVudCA9IHRoaXM7IC8vL1xuXG4gICAgaGFuZGxlci5jYWxsKGhhbmRsZXJFbGVtZW50LCAuLi5yZW1haW5pbmdBcmd1bWVudHMsIGVsZW1lbnQpO1xuICB9KTtcbn1cblxuZnVuY3Rpb24gY2FsbEhhbmRsZXJzQXN5bmMoZXZlbnRUeXBlLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgY29uc3QgZG9uZSA9IHJlbWFpbmluZ0FyZ3VtZW50cy5wb3AoKSwgIC8vL1xuICAgICAgICBldmVudExpc3RlbmVycyA9IHRoaXMuZmluZEV2ZW50TGlzdGVuZXJzKGV2ZW50VHlwZSk7XG5cbiAgZm9yRWFjaChldmVudExpc3RlbmVycywgKGV2ZW50TGlzdGVuZXIsIG5leHQpID0+IHtcbiAgICBjb25zdCB7IGhhbmRsZXIsIGVsZW1lbnQ6IGhhbmRsZXJFbGVtZW50IH0gPSBldmVudExpc3RlbmVyLFxuICAgICAgICAgIGVsZW1lbnQgPSB0aGlzLCAvLy9cbiAgICAgICAgICBkb25lID0gbmV4dDsgIC8vL1xuXG4gICAgaGFuZGxlci5jYWxsKGhhbmRsZXJFbGVtZW50LCAuLi5yZW1haW5pbmdBcmd1bWVudHMsIGVsZW1lbnQsIGRvbmUpO1xuICB9LCBkb25lKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBvbkRyYWcsXG4gIG9mZkRyYWcsXG4gIG9uU3RvcERyYWcsXG4gIG9mZlN0b3BEcmFnLFxuICBvblN0YXJ0RHJhZyxcbiAgb2ZmU3RhcnREcmFnLFxuICBlbmFibGVEcmFnLFxuICBkaXNhYmxlRHJhZyxcbiAgaXNEcmFnZ2luZyxcbiAgc3RhcnRXYWl0aW5nVG9EcmFnLFxuICBzdG9wV2FpdGluZ1RvRHJhZyxcbiAgc3RhcnREcmFnLFxuICBzdG9wRHJhZyxcbiAgZHJhZyxcbiAgZ2V0VGltZW91dCxcbiAgcmVzZXRUaW1lb3V0LFxuICB1cGRhdGVUaW1lb3V0LFxuICBnZXRUb3BPZmZzZXQsXG4gIGdldExlZnRPZmZzZXQsXG4gIGdldFN0YXJ0TW91c2VUb3AsXG4gIGdldFN0YXJ0TW91c2VMZWZ0LFxuICBzZXRUb3BPZmZzZXQsXG4gIHNldExlZnRPZmZzZXQsXG4gIHNldFN0YXJ0TW91c2VUb3AsXG4gIHNldFN0YXJ0TW91c2VMZWZ0LFxuICBjYWxsSGFuZGxlcnMsXG4gIGNhbGxIYW5kbGVyc0FzeW5jXG59O1xuXG5mdW5jdGlvbiBrZXlEb3duSGFuZGxlcihldmVudCwgZWxlbWVudCkge1xuICBjb25zdCB7IGtleUNvZGUgfSA9IGV2ZW50LFxuICAgICAgICBlc2NhcGVLZXkgPSAoa2V5Q29kZSA9PT0gRVNDQVBFX0tFWV9DT0RFKSxcbiAgICAgICAgYWJvcnRlZCA9IHRydWU7XG5cbiAgaWYgKGVzY2FwZUtleSkge1xuICAgIHRoaXMuc3RvcERyYWcoYWJvcnRlZCk7XG5cbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBtb3VzZVVwSGFuZGxlcihldmVudCwgZWxlbWVudCkge1xuICBjb25zdCBkcmFnZ2luZyA9IHRoaXMuaXNEcmFnZ2luZygpLFxuICAgICAgICBhYm9ydGVkID0gZmFsc2U7XG5cbiAgZHJhZ2dpbmcgP1xuICAgIHRoaXMuc3RvcERyYWcoYWJvcnRlZCkgOlxuICAgICAgdGhpcy5zdG9wV2FpdGluZ1RvRHJhZygpO1xuXG4gIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gIHdpbmRvdy5vZmYoQkxVUl9FVkVOVF9UWVBFLCBtb3VzZVVwSGFuZGxlciwgdGhpcyk7ICAvLy9cblxuICB3aW5kb3cub2ZmTW91c2VVcChtb3VzZVVwSGFuZGxlciwgdGhpcyk7XG59XG5cbmZ1bmN0aW9uIG1vdXNlRG93bkhhbmRsZXIoZXZlbnQsIGVsZW1lbnQpIHtcbiAgY29uc3QgeyBidXR0b24gfSA9IGV2ZW50O1xuXG4gIGlmIChidXR0b24gPT09IExFRlRfTU9VU0VfQlVUVE9OKSB7XG4gICAgY29uc3QgZHJhZ2dpbmcgPSB0aGlzLmlzRHJhZ2dpbmcoKTtcblxuICAgIGlmICghZHJhZ2dpbmcpIHtcbiAgICAgIGNvbnN0IG1vdXNlVG9wID0gbW91c2VUb3BGcm9tRXZlbnQoZXZlbnQpLFxuICAgICAgICAgICAgbW91c2VMZWZ0ID0gbW91c2VMZWZ0RnJvbUV2ZW50KGV2ZW50KTtcblxuICAgICAgdGhpcy5zdGFydFdhaXRpbmdUb0RyYWcobW91c2VUb3AsIG1vdXNlTGVmdCk7XG4gICAgfVxuICB9XG5cbiAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgd2luZG93Lm9uKEJMVVJfRVZFTlRfVFlQRSwgbW91c2VVcEhhbmRsZXIsIHRoaXMpOyAvLy9cblxuICB3aW5kb3cub25Nb3VzZVVwKG1vdXNlVXBIYW5kbGVyLCB0aGlzKTtcbn1cblxuZnVuY3Rpb24gbW91c2VNb3ZlSGFuZGxlcihldmVudCwgZWxlbWVudCkge1xuICBjb25zdCBkcmFnZ2luZyA9IHRoaXMuaXNEcmFnZ2luZygpO1xuXG4gIGlmIChkcmFnZ2luZykge1xuICAgIGNvbnN0IG1vdXNlVG9wID0gbW91c2VUb3BGcm9tRXZlbnQoZXZlbnQpLFxuICAgICAgICAgIG1vdXNlTGVmdCA9IG1vdXNlTGVmdEZyb21FdmVudChldmVudCk7XG5cbiAgICB0aGlzLmRyYWcobW91c2VUb3AsIG1vdXNlTGVmdCk7XG4gIH1cblxuICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbn1cbiJdLCJuYW1lcyI6WyJmb3JFYWNoIiwiYXN5bmNocm9ub3VzVXRpbGl0aWVzIiwiRVNDQVBFX0tFWV9DT0RFIiwia2V5Q29kZXMiLCJCTFVSX0VWRU5UX1RZUEUiLCJldmVudFR5cGVzIiwiTEVGVF9NT1VTRV9CVVRUT04iLCJidXR0b25zIiwiZHJhZ0VsZW1lbnQiLCJPYmplY3QiLCJhc3NpZ24iLCJnbG9iYWxUaGlzIiwib25EcmFnIiwiZHJhZ0hhbmRsZXIiLCJlbGVtZW50IiwiZXZlbnRUeXBlIiwiRFJBR19FVkVOVF9UWVBFIiwiaGFuZGxlciIsImFkZEV2ZW50TGlzdGVuZXIiLCJvZmZEcmFnIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsIm9uU3RvcERyYWciLCJzdG9wRHJhZ0hhbmRsZXIiLCJTVE9QX0RSQUdfRVZFTlRfVFlQRSIsIm9mZlN0b3BEcmFnIiwib25TdGFydERyYWciLCJzdGFydERyYWdIYW5kbGVyIiwiU1RBUlRfRFJBR19FVkVOVF9UWVBFIiwib2ZmU3RhcnREcmFnIiwiZW5hYmxlRHJhZyIsInByb3BlcnRpZXMiLCJ0aW1lb3V0IiwidG9wT2Zmc2V0IiwibGVmdE9mZnNldCIsInN0YXJ0TW91c2VUb3AiLCJzdGFydE1vdXNlTGVmdCIsIm9uTW91c2VEb3duIiwibW91c2VEb3duSGFuZGxlciIsInNldFN0YXRlIiwiZGlzYWJsZURyYWciLCJvZmZNb3VzZURvd24iLCJpc0RyYWdnaW5nIiwiZHJhZ2dpbmciLCJoYXNDbGFzcyIsInN0YXJ0V2FpdGluZ1RvRHJhZyIsIm1vdXNlVG9wIiwibW91c2VMZWZ0IiwiZ2V0VGltZW91dCIsInNldFRpbWVvdXQiLCJyZXNldFRpbWVvdXQiLCJzdGFydERyYWciLCJTVEFSVF9EUkFHR0lOR19ERUxBWSIsInVwZGF0ZVRpbWVvdXQiLCJzdG9wV2FpdGluZ1RvRHJhZyIsImNsZWFyVGltZW91dCIsImJvdW5kcyIsImdldEJvdW5kcyIsImJvdW5kc1RvcCIsImdldFRvcCIsImJvdW5kc0xlZnQiLCJnZXRMZWZ0IiwiYm91bmRzUmlnaHQiLCJnZXRSaWdodCIsImJvdW5kc0JvdHRvbSIsImdldEJvdHRvbSIsImJvdW5kc1dpZHRoIiwiYm91bmRzSGVpZ2h0IiwiTWF0aCIsImZsb29yIiwid2luZG93Iiwib25LZXlEb3duIiwia2V5RG93bkhhbmRsZXIiLCJvbk1vdXNlTW92ZSIsIm1vdXNlTW92ZUhhbmRsZXIiLCJhZGRDbGFzcyIsInNldFRvcE9mZnNldCIsInNldExlZnRPZmZzZXQiLCJzZXRTdGFydE1vdXNlVG9wIiwic2V0U3RhcnRNb3VzZUxlZnQiLCJjYWxsSGFuZGxlcnMiLCJkcmFnIiwic3RvcERyYWciLCJhYm9ydGVkIiwiZHJvcEVsZW1lbnQiLCJvZmZLZXlEb3duIiwib2ZmTW91c2VNb3ZlIiwiZG9uZSIsImNhbGxIYW5kbGVyc0FzeW5jIiwicmVtb3ZlQ2xhc3MiLCJkcm9wIiwic2Nyb2xsVG9wIiwiZ2V0U2Nyb2xsVG9wIiwic2Nyb2xsTGVmdCIsImdldFNjcm9sbExlZnQiLCJnZXRUb3BPZmZzZXQiLCJnZXRMZWZ0T2Zmc2V0IiwiZ2V0U3RhcnRNb3VzZVRvcCIsImdldFN0YXJ0TW91c2VMZWZ0IiwicmVsYXRpdmVNb3VzZVRvcCIsInJlbGF0aXZlTW91c2VMZWZ0IiwidG9wIiwibGVmdCIsImNzcyIsImdldFN0YXRlIiwidXBkYXRlU3RhdGUiLCJyZW1haW5pbmdBcmd1bWVudHMiLCJldmVudExpc3RlbmVycyIsImZpbmRFdmVudExpc3RlbmVycyIsImV2ZW50TGlzdGVuZXIiLCJoYW5kbGVyRWxlbWVudCIsImNhbGwiLCJwb3AiLCJuZXh0IiwiZXZlbnQiLCJrZXlDb2RlIiwiZXNjYXBlS2V5Iiwic3RvcFByb3BhZ2F0aW9uIiwibW91c2VVcEhhbmRsZXIiLCJvZmYiLCJvZmZNb3VzZVVwIiwiYnV0dG9uIiwibW91c2VUb3BGcm9tRXZlbnQiLCJtb3VzZUxlZnRGcm9tRXZlbnQiLCJvbiIsIm9uTW91c2VVcCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBMlRBOzs7ZUFBQTs7O29CQXpUNEM7eUJBQ0k7eUJBRVg7cUJBQ2lCOzBCQUN1Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFN0UsSUFBTSxBQUFFQSxVQUFZQyxnQ0FBcUIsQ0FBakNELFNBQ0YsQUFBRUUsa0JBQW9CQyxtQkFBUSxDQUE1QkQsaUJBQ0YsQUFBRUUsa0JBQW9CQyxnQkFBVSxDQUE5QkQsaUJBQ0YsQUFBRUUsb0JBQXNCQyxhQUFPLENBQTdCRDtBQUVSLElBQU1FLGNBQWM7QUFFcEJDLE9BQU9DLE1BQU0sQ0FBQ0MsWUFBWTtJQUN4QkgsYUFBQUE7QUFDRjtBQUVBLFNBQVNJLE9BQU9DLFdBQVcsRUFB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
|
|
308
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvZHJhZy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgd2luZG93LCBldmVudFR5cGVzLCBtb3VzZUJ1dHRvbnMgfSBmcm9tIFwiZWFzeVwiO1xuaW1wb3J0IHsga2V5Q29kZXMsIGFzeW5jaHJvbm91c1V0aWxpdGllcyB9IGZyb20gXCJuZWNlc3NhcnlcIiA7XG5cbmltcG9ydCB7IFNUQVJUX0RSQUdHSU5HX0RFTEFZIH0gZnJvbSBcIi4uL2NvbnN0YW50c1wiO1xuaW1wb3J0IHsgbW91c2VUb3BGcm9tRXZlbnQsIG1vdXNlTGVmdEZyb21FdmVudCB9IGZyb20gXCIuLi91dGlsaXRpZXMvZXZlbnRcIjtcbmltcG9ydCB7IERSQUdfRVZFTlRfVFlQRSwgU1RPUF9EUkFHX0VWRU5UX1RZUEUsIFNUQVJUX0RSQUdfRVZFTlRfVFlQRSB9IGZyb20gXCIuLi9ldmVudFR5cGVzXCI7XG5cbmNvbnN0IHsgZm9yRWFjaCB9ID0gYXN5bmNocm9ub3VzVXRpbGl0aWVzLFxuICAgICAgeyBFU0NBUEVfS0VZX0NPREUgfSA9IGtleUNvZGVzLFxuICAgICAgeyBCTFVSX0VWRU5UX1RZUEUgfSA9IGV2ZW50VHlwZXMsXG4gICAgICB7IExFRlRfTU9VU0VfQlVUVE9OIH0gPSBtb3VzZUJ1dHRvbnM7XG5cbmNvbnN0IGRyYWdFbGVtZW50ID0gbnVsbDtcblxuT2JqZWN0LmFzc2lnbihnbG9iYWxUaGlzLCB7XG4gIGRyYWdFbGVtZW50XG59KTtcblxuZnVuY3Rpb24gb25EcmFnKGRyYWdIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IERSQUdfRVZFTlRfVFlQRSxcbiAgICAgICAgaGFuZGxlciA9IGRyYWdIYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5hZGRFdmVudExpc3RlbmVyKGV2ZW50VHlwZSwgaGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZkRyYWcoZHJhZ0hhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gRFJBR19FVkVOVF9UWVBFLFxuICAgICAgICBoYW5kbGVyID0gZHJhZ0hhbmRsZXI7ICAvLy9cblxuICB0aGlzLnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb25TdG9wRHJhZyhzdG9wRHJhZ0hhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gU1RPUF9EUkFHX0VWRU5UX1RZUEUsXG4gICAgICAgIGhhbmRsZXIgPSBzdG9wRHJhZ0hhbmRsZXI7ICAvLy9cblxuICB0aGlzLmFkZEV2ZW50TGlzdGVuZXIoZXZlbnRUeXBlLCBoYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb2ZmU3RvcERyYWcoc3RvcERyYWdIYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IFNUT1BfRFJBR19FVkVOVF9UWVBFLFxuICAgICAgICBoYW5kbGVyID0gc3RvcERyYWdIYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKGV2ZW50VHlwZSwgaGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9uU3RhcnREcmFnKHN0YXJ0RHJhZ0hhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgZXZlbnRUeXBlID0gU1RBUlRfRFJBR19FVkVOVF9UWVBFLFxuICAgICAgICBoYW5kbGVyID0gc3RhcnREcmFnSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMuYWRkRXZlbnRMaXN0ZW5lcihldmVudFR5cGUsIGhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZTdGFydERyYWcoc3RhcnREcmFnSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBldmVudFR5cGUgPSBTVEFSVF9EUkFHX0VWRU5UX1RZUEUsXG4gICAgICAgIGhhbmRsZXIgPSBzdGFydERyYWdIYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5yZW1vdmVFdmVudExpc3RlbmVyKGV2ZW50VHlwZSwgaGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIGVuYWJsZURyYWcoKSB7XG4gIGNvbnN0IHsgb25EcmFnLCBvblN0b3BEcmFnLCBvblN0YXJ0RHJhZyB9ID0gdGhpcy5wcm9wZXJ0aWVzLFxuICAgICAgICBkcmFnSGFuZGxlciA9IG9uRHJhZywgLy8vXG4gICAgICAgIHN0b3BEcmFnSGFuZGxlciA9IG9uU3RvcERyYWcsIC8vL1xuICAgICAgICBzdGFydERyYWdIYW5kbGVyID0gb25TdGFydERyYWcsIC8vL1xuICAgICAgICB0aW1lb3V0ID0gbnVsbCxcbiAgICAgICAgdG9wT2Zmc2V0ID0gbnVsbCxcbiAgICAgICAgbGVmdE9mZnNldCA9IG51bGwsXG4gICAgICAgIHN0YXJ0TW91c2VUb3AgPSBudWxsLFxuICAgICAgICBzdGFydE1vdXNlTGVmdCA9IG51bGw7XG5cbiAgZHJhZ0hhbmRsZXIgJiYgdGhpcy5vbkRyYWcoZHJhZ0hhbmRsZXIpO1xuICBzdG9wRHJhZ0hhbmRsZXIgJiYgdGhpcy5vblN0b3BEcmFnKHN0b3BEcmFnSGFuZGxlcik7XG4gIHN0YXJ0RHJhZ0hhbmRsZXIgJiYgdGhpcy5vblN0YXJ0RHJhZyhzdGFydERyYWdIYW5kbGVyKTtcblxuICB0aGlzLm9uTW91c2VEb3duKG1vdXNlRG93bkhhbmRsZXIsIHRoaXMpO1xuXG4gIHRoaXMuc2V0U3RhdGUoe1xuICAgIHRpbWVvdXQsXG4gICAgdG9wT2Zmc2V0LFxuICAgIGxlZnRPZmZzZXQsXG4gICAgc3RhcnRNb3VzZVRvcCxcbiAgICBzdGFydE1vdXNlTGVmdFxuICB9KTtcbn1cblxuZnVuY3Rpb24gZGlzYWJsZURyYWcoKSB7XG4gIGNvbnN0IHsgb25EcmFnLCBvblN0b3BEcmFnLCBvblN0YXJ0RHJhZyB9ID0gdGhpcy5wcm9wZXJ0aWVzLFxuICAgICAgICBkcmFnSGFuZGxlciA9IG9uRHJhZywgLy8vXG4gICAgICAgIHN0b3BEcmFnSGFuZGxlciA9IG9uU3RvcERyYWcsIC8vL1xuICAgICAgICBzdGFydERyYWdIYW5kbGVyID0gb25TdGFydERyYWc7IC8vL1xuXG4gIGRyYWdIYW5kbGVyICYmIHRoaXMub2ZmRHJhZyhkcmFnSGFuZGxlcik7XG4gIHN0b3BEcmFnSGFuZGxlciAmJiB0aGlzLm9mZlN0b3BEcmFnKHN0b3BEcmFnSGFuZGxlcik7XG4gIHN0YXJ0RHJhZ0hhbmRsZXIgJiYgdGhpcy5vZmZTdGFydERyYWcoc3RhcnREcmFnSGFuZGxlcik7XG5cbiAgdGhpcy5vZmZNb3VzZURvd24obW91c2VEb3duSGFuZGxlciwgdGhpcyk7XG59XG5cbmZ1bmN0aW9uIGlzRHJhZ2dpbmcoKSB7XG4gIGNvbnN0IGRyYWdnaW5nID0gdGhpcy5oYXNDbGFzcyhcImRyYWdnaW5nXCIpO1xuXG4gIHJldHVybiBkcmFnZ2luZztcbn1cblxuZnVuY3Rpb24gc3RhcnRXYWl0aW5nVG9EcmFnKG1vdXNlVG9wLCBtb3VzZUxlZnQpIHtcbiAgbGV0IHRpbWVvdXQgPSB0aGlzLmdldFRpbWVvdXQoKTtcblxuICBpZiAodGltZW91dCA9PT0gbnVsbCkge1xuICAgIHRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMucmVzZXRUaW1lb3V0KCk7XG5cbiAgICAgIHRoaXMuc3RhcnREcmFnKG1vdXNlVG9wLCBtb3VzZUxlZnQpO1xuICAgIH0sIFNUQVJUX0RSQUdHSU5HX0RFTEFZKTtcblxuICAgIHRoaXMudXBkYXRlVGltZW91dCh0aW1lb3V0KTtcbiAgfVxufVxuXG5mdW5jdGlvbiBzdG9wV2FpdGluZ1RvRHJhZygpIHtcbiAgY29uc3QgdGltZW91dCA9IHRoaXMuZ2V0VGltZW91dCgpO1xuXG4gIGlmICh0aW1lb3V0ICE9PSBudWxsKSB7XG4gICAgY2xlYXJUaW1lb3V0KHRpbWVvdXQpO1xuXG4gICAgdGhpcy5yZXNldFRpbWVvdXQoKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBzdGFydERyYWcobW91c2VUb3AsIG1vdXNlTGVmdCkge1xuICBjb25zdCBib3VuZHMgPSB0aGlzLmdldEJvdW5kcygpLFxuICAgICAgICBldmVudFR5cGUgPSBTVEFSVF9EUkFHX0VWRU5UX1RZUEUsXG4gICAgICAgIGJvdW5kc1RvcCA9IGJvdW5kcy5nZXRUb3AoKSxcbiAgICAgICAgYm91bmRzTGVmdCA9IGJvdW5kcy5nZXRMZWZ0KCksXG4gICAgICAgIGJvdW5kc1JpZ2h0ID0gYm91bmRzLmdldFJpZ2h0KCksXG4gICAgICAgIGJvdW5kc0JvdHRvbSA9IGJvdW5kcy5nZXRCb3R0b20oKSxcbiAgICAgICAgYm91bmRzV2lkdGggPSBib3VuZHNSaWdodCAtIGJvdW5kc0xlZnQsXG4gICAgICAgIGJvdW5kc0hlaWdodCA9IGJvdW5kc0JvdHRvbSAtIGJvdW5kc1RvcCxcbiAgICAgICAgdG9wT2Zmc2V0ID0gTWF0aC5mbG9vcihib3VuZHNIZWlnaHQgLyAyKSxcbiAgICAgICAgbGVmdE9mZnNldCA9IE1hdGguZmxvb3IoYm91bmRzV2lkdGggLyAyKSxcbiAgICAgICAgZHJhZ0VsZW1lbnQgPSB0aGlzLCAvLy9cbiAgICAgICAgc3RhcnRNb3VzZVRvcCA9IG1vdXNlVG9wLCAvLy9cbiAgICAgICAgc3RhcnRNb3VzZUxlZnQgPSBtb3VzZUxlZnQ7IC8vL1xuXG4gIHdpbmRvdy5vbktleURvd24oa2V5RG93bkhhbmRsZXIsIHRoaXMpO1xuXG4gIHdpbmRvdy5vbk1vdXNlTW92ZShtb3VzZU1vdmVIYW5kbGVyLCB0aGlzKTtcblxuICB0aGlzLmFkZENsYXNzKFwiZHJhZ2dpbmdcIik7XG5cbiAgT2JqZWN0LmFzc2lnbihnbG9iYWxUaGlzLCB7XG4gICAgZHJhZ0VsZW1lbnRcbiAgfSk7XG5cbiAgdGhpcy5zZXRUb3BPZmZzZXQodG9wT2Zmc2V0KTtcblxuICB0aGlzLnNldExlZnRPZmZzZXQobGVmdE9mZnNldCk7XG5cbiAgdGhpcy5zZXRTdGFydE1vdXNlVG9wKHN0YXJ0TW91c2VUb3ApO1xuXG4gIHRoaXMuc2V0U3RhcnRNb3VzZUxlZnQoc3RhcnRNb3VzZUxlZnQpO1xuXG4gIHRoaXMuY2FsbEhhbmRsZXJzKGV2ZW50VHlwZSk7XG5cbiAgdGhpcy5kcmFnKG1vdXNlVG9wLCBtb3VzZUxlZnQpO1xufVxuXG5mdW5jdGlvbiBzdG9wRHJhZyhhYm9ydGVkKSB7XG4gIGNvbnN0IHsgZHJvcEVsZW1lbnQgfSA9IGdsb2JhbFRoaXMsXG4gICAgICAgIGV2ZW50VHlwZSA9IFNUT1BfRFJBR19FVkVOVF9UWVBFO1xuXG4gIHdpbmRvdy5vZmZLZXlEb3duKGtleURvd25IYW5kbGVyLCB0aGlzKTtcblxuICB3aW5kb3cub2ZmTW91c2VNb3ZlKG1vdXNlTW92ZUhhbmRsZXIsIHRoaXMpO1xuXG4gIGNvbnN0IGRvbmUgPSAoKSA9PiB7XG4gICAgdGhpcy5jYWxsSGFuZGxlcnNBc3luYyhldmVudFR5cGUsIGRyb3BFbGVtZW50LCBhYm9ydGVkLCAoKSA9PiB7XG4gICAgICBjb25zdCBkcmFnRWxlbWVudCA9IG51bGw7XG5cbiAgICAgIE9iamVjdC5hc3NpZ24oZ2xvYmFsVGhpcywge1xuICAgICAgICBkcmFnRWxlbWVudFxuICAgICAgfSk7XG5cbiAgICAgIHRoaXMucmVtb3ZlQ2xhc3MoXCJkcmFnZ2luZ1wiKTtcbiAgICB9KTtcbiAgfVxuXG4gIGlmIChkcm9wRWxlbWVudCAhPT0gbnVsbCkge1xuICAgIGNvbnN0IGRyYWdFbGVtZW50ID0gdGhpczsgLy8vXG5cbiAgICBkcm9wRWxlbWVudC5kcm9wKGRyYWdFbGVtZW50LCBhYm9ydGVkLCBkb25lKTtcbiAgfSBlbHNlIHtcbiAgICBkb25lKCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gZHJhZyhtb3VzZVRvcCwgbW91c2VMZWZ0KSB7XG4gIGNvbnN0IGV2ZW50VHlwZSA9IERSQUdfRVZFTlRfVFlQRSxcbiAgICAgICAgc2Nyb2xsVG9wID0gd2luZG93LmdldFNjcm9sbFRvcCgpLFxuICAgICAgICBzY3JvbGxMZWZ0ID0gd2luZG93LmdldFNjcm9sbExlZnQoKSxcbiAgICAgICAgdG9wT2Zmc2V0ID0gdGhpcy5nZXRUb3BPZmZzZXQoKSxcbiAgICAgICAgbGVmdE9mZnNldCA9IHRoaXMuZ2V0TGVmdE9mZnNldCgpLFxuICAgICAgICBzdGFydE1vdXNlVG9wID0gdGhpcy5nZXRTdGFydE1vdXNlVG9wKCksXG4gICAgICAgIHN0YXJ0TW91c2VMZWZ0ID0gdGhpcy5nZXRTdGFydE1vdXNlTGVmdCgpLFxuICAgICAgICByZWxhdGl2ZU1vdXNlVG9wID0gbW91c2VUb3AgLSBzdGFydE1vdXNlVG9wLFxuICAgICAgICByZWxhdGl2ZU1vdXNlTGVmdCA9IG1vdXNlTGVmdCAtIHN0YXJ0TW91c2VMZWZ0O1xuXG4gIGxldCB0b3AgPSBzdGFydE1vdXNlVG9wICsgcmVsYXRpdmVNb3VzZVRvcCAtIHRvcE9mZnNldCAtIHNjcm9sbFRvcCxcbiAgICAgIGxlZnQgPSBzdGFydE1vdXNlTGVmdCArIHJlbGF0aXZlTW91c2VMZWZ0IC0gbGVmdE9mZnNldCAtIHNjcm9sbExlZnQ7XG5cbiAgdG9wID0gYCR7dG9wfXB4YDsgLy8vXG4gIGxlZnQgPSBgJHtsZWZ0fXB4YDsgLy8vXG5cbiAgY29uc3QgY3NzID0ge1xuICAgIHRvcCxcbiAgICBsZWZ0XG4gIH07XG5cbiAgdGhpcy5jc3MoY3NzKTtcblxuICB0aGlzLmNhbGxIYW5kbGVycyhldmVudFR5cGUsIHJlbGF0aXZlTW91c2VUb3AsIHJlbGF0aXZlTW91c2VMZWZ0KTtcbn1cblxuZnVuY3Rpb24gZ2V0VGltZW91dCgpIHtcbiAgY29uc3QgeyB0aW1lb3V0IH0gPSB0aGlzLmdldFN0YXRlKCk7XG5cbiAgcmV0dXJuIHRpbWVvdXQ7XG59XG5cbmZ1bmN0aW9uIHJlc2V0VGltZW91dCgpIHtcbiAgY29uc3QgdGltZW91dCA9IG51bGw7XG5cbiAgdGhpcy51cGRhdGVUaW1lb3V0KHRpbWVvdXQpO1xufVxuXG5mdW5jdGlvbiB1cGRhdGVUaW1lb3V0KHRpbWVvdXQpIHtcbiAgdGhpcy51cGRhdGVTdGF0ZSh7XG4gICAgdGltZW91dFxuICB9KTtcbn1cblxuZnVuY3Rpb24gZ2V0VG9wT2Zmc2V0KCkge1xuICBjb25zdCB7IHRvcE9mZnNldCB9ID0gdGhpcy5nZXRTdGF0ZSgpO1xuXG4gIHJldHVybiB0b3BPZmZzZXQ7XG59XG5cbmZ1bmN0aW9uIGdldExlZnRPZmZzZXQoKSB7XG4gIGNvbnN0IHsgbGVmdE9mZnNldCB9ID0gdGhpcy5nZXRTdGF0ZSgpO1xuXG4gIHJldHVybiBsZWZ0T2Zmc2V0O1xufVxuXG5mdW5jdGlvbiBnZXRTdGFydE1vdXNlVG9wKCkge1xuICBjb25zdCB7IHN0YXJ0TW91c2VUb3AgfSA9IHRoaXMuZ2V0U3RhdGUoKTtcblxuICByZXR1cm4gc3RhcnRNb3VzZVRvcDtcbn1cblxuZnVuY3Rpb24gZ2V0U3RhcnRNb3VzZUxlZnQoKSB7XG4gIGNvbnN0IHsgc3RhcnRNb3VzZUxlZnQgfSA9IHRoaXMuZ2V0U3RhdGUoKTtcblxuICByZXR1cm4gc3RhcnRNb3VzZUxlZnQ7XG59XG5cbmZ1bmN0aW9uIHNldFRvcE9mZnNldCh0b3BPZmZzZXQpIHtcbiAgdGhpcy51cGRhdGVTdGF0ZSh7XG4gICAgdG9wT2Zmc2V0XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBzZXRMZWZ0T2Zmc2V0KGxlZnRPZmZzZXQpIHtcbiAgdGhpcy51cGRhdGVTdGF0ZSh7XG4gICAgbGVmdE9mZnNldFxuICB9KTtcbn1cblxuZnVuY3Rpb24gc2V0U3RhcnRNb3VzZVRvcChzdGFydE1vdXNlVG9wKSB7XG4gIHRoaXMudXBkYXRlU3RhdGUoe1xuICAgIHN0YXJ0TW91c2VUb3BcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIHNldFN0YXJ0TW91c2VMZWZ0KHN0YXJ0TW91c2VMZWZ0KSB7XG4gIHRoaXMudXBkYXRlU3RhdGUoe1xuICAgIHN0YXJ0TW91c2VMZWZ0XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBjYWxsSGFuZGxlcnMoZXZlbnRUeXBlLCAuLi5yZW1haW5pbmdBcmd1bWVudHMpIHtcbiAgY29uc3QgZXZlbnRMaXN0ZW5lcnMgPSB0aGlzLmZpbmRFdmVudExpc3RlbmVycyhldmVudFR5cGUpO1xuXG4gIGV2ZW50TGlzdGVuZXJzLmZvckVhY2goKGV2ZW50TGlzdGVuZXIpID0+IHtcbiAgICBjb25zdCB7IGhhbmRsZXIsIGVsZW1lbnQ6IGhhbmRsZXJFbGVtZW50IH0gPSBldmVudExpc3RlbmVyLFxuICAgICAgICAgIGVsZW1lbnQgPSB0aGlzOyAvLy9cblxuICAgIGhhbmRsZXIuY2FsbChoYW5kbGVyRWxlbWVudCwgLi4ucmVtYWluaW5nQXJndW1lbnRzLCBlbGVtZW50KTtcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGNhbGxIYW5kbGVyc0FzeW5jKGV2ZW50VHlwZSwgLi4ucmVtYWluaW5nQXJndW1lbnRzKSB7XG4gIGNvbnN0IGRvbmUgPSByZW1haW5pbmdBcmd1bWVudHMucG9wKCksICAvLy9cbiAgICAgICAgZXZlbnRMaXN0ZW5lcnMgPSB0aGlzLmZpbmRFdmVudExpc3RlbmVycyhldmVudFR5cGUpO1xuXG4gIGZvckVhY2goZXZlbnRMaXN0ZW5lcnMsIChldmVudExpc3RlbmVyLCBuZXh0KSA9PiB7XG4gICAgY29uc3QgeyBoYW5kbGVyLCBlbGVtZW50OiBoYW5kbGVyRWxlbWVudCB9ID0gZXZlbnRMaXN0ZW5lcixcbiAgICAgICAgICBlbGVtZW50ID0gdGhpcywgLy8vXG4gICAgICAgICAgZG9uZSA9IG5leHQ7ICAvLy9cblxuICAgIGhhbmRsZXIuY2FsbChoYW5kbGVyRWxlbWVudCwgLi4ucmVtYWluaW5nQXJndW1lbnRzLCBlbGVtZW50LCBkb25lKTtcbiAgfSwgZG9uZSk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgb25EcmFnLFxuICBvZmZEcmFnLFxuICBvblN0b3BEcmFnLFxuICBvZmZTdG9wRHJhZyxcbiAgb25TdGFydERyYWcsXG4gIG9mZlN0YXJ0RHJhZyxcbiAgZW5hYmxlRHJhZyxcbiAgZGlzYWJsZURyYWcsXG4gIGlzRHJhZ2dpbmcsXG4gIHN0YXJ0V2FpdGluZ1RvRHJhZyxcbiAgc3RvcFdhaXRpbmdUb0RyYWcsXG4gIHN0YXJ0RHJhZyxcbiAgc3RvcERyYWcsXG4gIGRyYWcsXG4gIGdldFRpbWVvdXQsXG4gIHJlc2V0VGltZW91dCxcbiAgdXBkYXRlVGltZW91dCxcbiAgZ2V0VG9wT2Zmc2V0LFxuICBnZXRMZWZ0T2Zmc2V0LFxuICBnZXRTdGFydE1vdXNlVG9wLFxuICBnZXRTdGFydE1vdXNlTGVmdCxcbiAgc2V0VG9wT2Zmc2V0LFxuICBzZXRMZWZ0T2Zmc2V0LFxuICBzZXRTdGFydE1vdXNlVG9wLFxuICBzZXRTdGFydE1vdXNlTGVmdCxcbiAgY2FsbEhhbmRsZXJzLFxuICBjYWxsSGFuZGxlcnNBc3luY1xufTtcblxuZnVuY3Rpb24ga2V5RG93bkhhbmRsZXIoZXZlbnQsIGVsZW1lbnQpIHtcbiAgY29uc3QgeyBrZXlDb2RlIH0gPSBldmVudCxcbiAgICAgICAgZXNjYXBlS2V5ID0gKGtleUNvZGUgPT09IEVTQ0FQRV9LRVlfQ09ERSksXG4gICAgICAgIGFib3J0ZWQgPSB0cnVlO1xuXG4gIGlmIChlc2NhcGVLZXkpIHtcbiAgICB0aGlzLnN0b3BEcmFnKGFib3J0ZWQpO1xuXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gbW91c2VVcEhhbmRsZXIoZXZlbnQsIGVsZW1lbnQpIHtcbiAgY29uc3QgZHJhZ2dpbmcgPSB0aGlzLmlzRHJhZ2dpbmcoKSxcbiAgICAgICAgYWJvcnRlZCA9IGZhbHNlO1xuXG4gIGRyYWdnaW5nID9cbiAgICB0aGlzLnN0b3BEcmFnKGFib3J0ZWQpIDpcbiAgICAgIHRoaXMuc3RvcFdhaXRpbmdUb0RyYWcoKTtcblxuICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICB3aW5kb3cub2ZmKEJMVVJfRVZFTlRfVFlQRSwgbW91c2VVcEhhbmRsZXIsIHRoaXMpOyAgLy8vXG5cbiAgd2luZG93Lm9mZk1vdXNlVXAobW91c2VVcEhhbmRsZXIsIHRoaXMpO1xufVxuXG5mdW5jdGlvbiBtb3VzZURvd25IYW5kbGVyKGV2ZW50LCBlbGVtZW50KSB7XG4gIGNvbnN0IHsgYnV0dG9uIH0gPSBldmVudDtcblxuICBpZiAoYnV0dG9uID09PSBMRUZUX01PVVNFX0JVVFRPTikge1xuICAgIGNvbnN0IGRyYWdnaW5nID0gdGhpcy5pc0RyYWdnaW5nKCk7XG5cbiAgICBpZiAoIWRyYWdnaW5nKSB7XG4gICAgICBjb25zdCBtb3VzZVRvcCA9IG1vdXNlVG9wRnJvbUV2ZW50KGV2ZW50KSxcbiAgICAgICAgICAgIG1vdXNlTGVmdCA9IG1vdXNlTGVmdEZyb21FdmVudChldmVudCk7XG5cbiAgICAgIHRoaXMuc3RhcnRXYWl0aW5nVG9EcmFnKG1vdXNlVG9wLCBtb3VzZUxlZnQpO1xuICAgIH1cbiAgfVxuXG4gIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gIHdpbmRvdy5vbihCTFVSX0VWRU5UX1RZUEUsIG1vdXNlVXBIYW5kbGVyLCB0aGlzKTsgLy8vXG5cbiAgd2luZG93Lm9uTW91c2VVcChtb3VzZVVwSGFuZGxlciwgdGhpcyk7XG59XG5cbmZ1bmN0aW9uIG1vdXNlTW92ZUhhbmRsZXIoZXZlbnQsIGVsZW1lbnQpIHtcbiAgY29uc3QgZHJhZ2dpbmcgPSB0aGlzLmlzRHJhZ2dpbmcoKTtcblxuICBpZiAoZHJhZ2dpbmcpIHtcbiAgICBjb25zdCBtb3VzZVRvcCA9IG1vdXNlVG9wRnJvbUV2ZW50KGV2ZW50KSxcbiAgICAgICAgICBtb3VzZUxlZnQgPSBtb3VzZUxlZnRGcm9tRXZlbnQoZXZlbnQpO1xuXG4gICAgdGhpcy5kcmFnKG1vdXNlVG9wLCBtb3VzZUxlZnQpO1xuICB9XG5cbiAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG59XG4iXSwibmFtZXMiOlsiZm9yRWFjaCIsImFzeW5jaHJvbm91c1V0aWxpdGllcyIsIkVTQ0FQRV9LRVlfQ09ERSIsImtleUNvZGVzIiwiQkxVUl9FVkVOVF9UWVBFIiwiZXZlbnRUeXBlcyIsIkxFRlRfTU9VU0VfQlVUVE9OIiwibW91c2VCdXR0b25zIiwiZHJhZ0VsZW1lbnQiLCJPYmplY3QiLCJhc3NpZ24iLCJnbG9iYWxUaGlzIiwib25EcmFnIiwiZHJhZ0hhbmRsZXIiLCJlbGVtZW50IiwiZXZlbnRUeXBlIiwiRFJBR19FVkVOVF9UWVBFIiwiaGFuZGxlciIsImFkZEV2ZW50TGlzdGVuZXIiLCJvZmZEcmFnIiwicmVtb3ZlRXZlbnRMaXN0ZW5lciIsIm9uU3RvcERyYWciLCJzdG9wRHJhZ0hhbmRsZXIiLCJTVE9QX0RSQUdfRVZFTlRfVFlQRSIsIm9mZlN0b3BEcmFnIiwib25TdGFydERyYWciLCJzdGFydERyYWdIYW5kbGVyIiwiU1RBUlRfRFJBR19FVkVOVF9UWVBFIiwib2ZmU3RhcnREcmFnIiwiZW5hYmxlRHJhZyIsInByb3BlcnRpZXMiLCJ0aW1lb3V0IiwidG9wT2Zmc2V0IiwibGVmdE9mZnNldCIsInN0YXJ0TW91c2VUb3AiLCJzdGFydE1vdXNlTGVmdCIsIm9uTW91c2VEb3duIiwibW91c2VEb3duSGFuZGxlciIsInNldFN0YXRlIiwiZGlzYWJsZURyYWciLCJvZmZNb3VzZURvd24iLCJpc0RyYWdnaW5nIiwiZHJhZ2dpbmciLCJoYXNDbGFzcyIsInN0YXJ0V2FpdGluZ1RvRHJhZyIsIm1vdXNlVG9wIiwibW91c2VMZWZ0IiwiZ2V0VGltZW91dCIsInNldFRpbWVvdXQiLCJyZXNldFRpbWVvdXQiLCJzdGFydERyYWciLCJTVEFSVF9EUkFHR0lOR19ERUxBWSIsInVwZGF0ZVRpbWVvdXQiLCJzdG9wV2FpdGluZ1RvRHJhZyIsImNsZWFyVGltZW91dCIsImJvdW5kcyIsImdldEJvdW5kcyIsImJvdW5kc1RvcCIsImdldFRvcCIsImJvdW5kc0xlZnQiLCJnZXRMZWZ0IiwiYm91bmRzUmlnaHQiLCJnZXRSaWdodCIsImJvdW5kc0JvdHRvbSIsImdldEJvdHRvbSIsImJvdW5kc1dpZHRoIiwiYm91bmRzSGVpZ2h0IiwiTWF0aCIsImZsb29yIiwid2luZG93Iiwib25LZXlEb3duIiwia2V5RG93bkhhbmRsZXIiLCJvbk1vdXNlTW92ZSIsIm1vdXNlTW92ZUhhbmRsZXIiLCJhZGRDbGFzcyIsInNldFRvcE9mZnNldCIsInNldExlZnRPZmZzZXQiLCJzZXRTdGFydE1vdXNlVG9wIiwic2V0U3RhcnRNb3VzZUxlZnQiLCJjYWxsSGFuZGxlcnMiLCJkcmFnIiwic3RvcERyYWciLCJhYm9ydGVkIiwiZHJvcEVsZW1lbnQiLCJvZmZLZXlEb3duIiwib2ZmTW91c2VNb3ZlIiwiZG9uZSIsImNhbGxIYW5kbGVyc0FzeW5jIiwicmVtb3ZlQ2xhc3MiLCJkcm9wIiwic2Nyb2xsVG9wIiwiZ2V0U2Nyb2xsVG9wIiwic2Nyb2xsTGVmdCIsImdldFNjcm9sbExlZnQiLCJnZXRUb3BPZmZzZXQiLCJnZXRMZWZ0T2Zmc2V0IiwiZ2V0U3RhcnRNb3VzZVRvcCIsImdldFN0YXJ0TW91c2VMZWZ0IiwicmVsYXRpdmVNb3VzZVRvcCIsInJlbGF0aXZlTW91c2VMZWZ0IiwidG9wIiwibGVmdCIsImNzcyIsImdldFN0YXRlIiwidXBkYXRlU3RhdGUiLCJyZW1haW5pbmdBcmd1bWVudHMiLCJldmVudExpc3RlbmVycyIsImZpbmRFdmVudExpc3RlbmVycyIsImV2ZW50TGlzdGVuZXIiLCJoYW5kbGVyRWxlbWVudCIsImNhbGwiLCJwb3AiLCJuZXh0IiwiZXZlbnQiLCJrZXlDb2RlIiwiZXNjYXBlS2V5Iiwic3RvcFByb3BhZ2F0aW9uIiwibW91c2VVcEhhbmRsZXIiLCJvZmYiLCJvZmZNb3VzZVVwIiwiYnV0dG9uIiwibW91c2VUb3BGcm9tRXZlbnQiLCJtb3VzZUxlZnRGcm9tRXZlbnQiLCJvbiIsIm9uTW91c2VVcCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBMlRBOzs7ZUFBQTs7O29CQXpUaUQ7eUJBQ0Q7eUJBRVg7cUJBQ2lCOzBCQUN1Qjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFN0UsSUFBTSxBQUFFQSxVQUFZQyxnQ0FBcUIsQ0FBakNELFNBQ0YsQUFBRUUsa0JBQW9CQyxtQkFBUSxDQUE1QkQsaUJBQ0YsQUFBRUUsa0JBQW9CQyxnQkFBVSxDQUE5QkQsaUJBQ0YsQUFBRUUsb0JBQXNCQyxrQkFBWSxDQUFsQ0Q7QUFFUixJQUFNRSxjQUFjO0FBRXBCQyxPQUFPQyxNQUFNLENBQUNDLFlBQVk7SUFDeEJILGFBQUFBO0FBQ0Y7QUFFQSxTQUFT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
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "easy-drag-and-drop",
|
|
3
3
|
"author": "James Smith",
|
|
4
|
-
"version": "1.3.
|
|
4
|
+
"version": "1.3.44",
|
|
5
5
|
"license": "MIT, Anti-996",
|
|
6
6
|
"homepage": "https://github.com/djalbat/easy-drag-and-drop",
|
|
7
7
|
"description": "Drag and drop functionality for Easy elements.",
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
"url": "https://github.com/djalbat/easy-drag-and-drop"
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"easy": "^
|
|
13
|
+
"easy": "^15.0.0",
|
|
14
14
|
"easy-with-style": "^3.0.237",
|
|
15
15
|
"necessary": "^11.2.4"
|
|
16
16
|
},
|
package/src/mixins/drag.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
import { window,
|
|
3
|
+
import { window, eventTypes, mouseButtons } from "easy";
|
|
4
4
|
import { keyCodes, asynchronousUtilities } from "necessary" ;
|
|
5
5
|
|
|
6
6
|
import { START_DRAGGING_DELAY } from "../constants";
|
|
@@ -10,7 +10,7 @@ import { DRAG_EVENT_TYPE, STOP_DRAG_EVENT_TYPE, START_DRAG_EVENT_TYPE } from "..
|
|
|
10
10
|
const { forEach } = asynchronousUtilities,
|
|
11
11
|
{ ESCAPE_KEY_CODE } = keyCodes,
|
|
12
12
|
{ BLUR_EVENT_TYPE } = eventTypes,
|
|
13
|
-
{ LEFT_MOUSE_BUTTON } =
|
|
13
|
+
{ LEFT_MOUSE_BUTTON } = mouseButtons;
|
|
14
14
|
|
|
15
15
|
const dragElement = null;
|
|
16
16
|
|