easy-drag-and-drop 1.3.140 → 1.3.142

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.
@@ -243,4 +243,4 @@ function mouseMoveHandler(event, element) {
243
243
  event.stopPropagation();
244
244
  }
245
245
 
246
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvZHJhZy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsga2V5Q29kZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCIgO1xuaW1wb3J0IHsgd2luZG93LCBldmVudFR5cGVzLCBtb3VzZUJ1dHRvbnMgfSBmcm9tIFwiZWFzeVwiO1xuXG5pbXBvcnQgeyBTVEFSVF9EUkFHR0lOR19ERUxBWSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IGNoZWNrRHJhZ0VsZW1lbnRJZ25vcmVzRHJvcEVsZW1lbnQgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3JlZmVyZW5jZVwiO1xuaW1wb3J0IHsgbW91c2VUb3BGcm9tRXZlbnQsIG1vdXNlTGVmdEZyb21FdmVudCB9IGZyb20gXCIuLi91dGlsaXRpZXMvZXZlbnRcIjtcbmltcG9ydCB7IERSQUdfQ1VTVE9NX0VWRU5UX1RZUEUsIFNUT1BfRFJBR19DVVNUT01fRVZFTlRfVFlQRSwgU1RBUlRfRFJBR19DVVNUT01fRVZFTlRfVFlQRSB9IGZyb20gXCIuLi9jdXN0b21FdmVudFR5cGVzXCI7XG5cbmNvbnN0IHsgRVNDQVBFX0tFWV9DT0RFIH0gPSBrZXlDb2RlcyxcbiAgICAgIHsgQkxVUl9FVkVOVF9UWVBFIH0gPSBldmVudFR5cGVzLFxuICAgICAgeyBMRUZUX01PVVNFX0JVVFRPTiB9ID0gbW91c2VCdXR0b25zO1xuXG5jb25zdCBkcmFnRWxlbWVudCA9IG51bGw7XG5cbk9iamVjdC5hc3NpZ24oZ2xvYmFsVGhpcywge1xuICBkcmFnRWxlbWVudFxufSk7XG5cbmZ1bmN0aW9uIGVuYWJsZURyYWcoKSB7XG4gIGNvbnN0IHRpbWVvdXQgPSBudWxsLFxuICAgICAgICB0b3BPZmZzZXQgPSBudWxsLFxuICAgICAgICBsZWZ0T2Zmc2V0ID0gbnVsbCxcbiAgICAgICAgc3RhcnRNb3VzZVRvcCA9IG51bGwsXG4gICAgICAgIHN0YXJ0TW91c2VMZWZ0ID0gbnVsbDtcblxuICB0aGlzLm9uTW91c2VEb3duKG1vdXNlRG93bkhhbmRsZXIsIHRoaXMpO1xuXG4gIHRoaXMudXBkYXRlU3RhdGUoe1xuICAgIHRpbWVvdXQsXG4gICAgdG9wT2Zmc2V0LFxuICAgIGxlZnRPZmZzZXQsXG4gICAgc3RhcnRNb3VzZVRvcCxcbiAgICBzdGFydE1vdXNlTGVmdFxuICB9KTtcbn1cblxuZnVuY3Rpb24gZGlzYWJsZURyYWcoKSB7XG4gIHRoaXMub2ZmTW91c2VEb3duKG1vdXNlRG93bkhhbmRsZXIsIHRoaXMpO1xufVxuXG5mdW5jdGlvbiBpc0RyYWdnaW5nKCkge1xuICBjb25zdCBkcmFnZ2luZyA9IHRoaXMuaGFzQ2xhc3MoXCJkcmFnZ2luZ1wiKTtcblxuICByZXR1cm4gZHJhZ2dpbmc7XG59XG5cbmZ1bmN0aW9uIHN0YXJ0RHJhZyhtb3VzZVRvcCwgbW91c2VMZWZ0KSB7XG4gIGNvbnN0IGJvdW5kcyA9IHRoaXMuZ2V0Qm91bmRzKCksXG4gICAgICAgIGJvdW5kc1RvcCA9IGJvdW5kcy5nZXRUb3AoKSxcbiAgICAgICAgYm91bmRzTGVmdCA9IGJvdW5kcy5nZXRMZWZ0KCksXG4gICAgICAgIGJvdW5kc1JpZ2h0ID0gYm91bmRzLmdldFJpZ2h0KCksXG4gICAgICAgIGJvdW5kc0JvdHRvbSA9IGJvdW5kcy5nZXRCb3R0b20oKSxcbiAgICAgICAgYm91bmRzV2lkdGggPSBib3VuZHNSaWdodCAtIGJvdW5kc0xlZnQsXG4gICAgICAgIGJvdW5kc0hlaWdodCA9IGJvdW5kc0JvdHRvbSAtIGJvdW5kc1RvcCxcbiAgICAgICAgdG9wT2Zmc2V0ID0gTWF0aC5mbG9vcihib3VuZHNIZWlnaHQgLyAyKSxcbiAgICAgICAgbGVmdE9mZnNldCA9IE1hdGguZmxvb3IoYm91bmRzV2lkdGggLyAyKSxcbiAgICAgICAgZHJhZ0VsZW1lbnQgPSB0aGlzLCAvLy9cbiAgICAgICAgc3RhcnRNb3VzZVRvcCA9IG1vdXNlVG9wLCAvLy9cbiAgICAgICAgc3RhcnRNb3VzZUxlZnQgPSBtb3VzZUxlZnQsIC8vL1xuICAgICAgICBjdXN0b21FdmVudFR5cGUgPSBTVEFSVF9EUkFHX0NVU1RPTV9FVkVOVF9UWVBFO1xuXG4gIHdpbmRvdy5vbktleURvd24oa2V5RG93bkhhbmRsZXIsIHRoaXMpO1xuXG4gIHdpbmRvdy5vbk1vdXNlTW92ZShtb3VzZU1vdmVIYW5kbGVyLCB0aGlzKTtcblxuICB0aGlzLmFkZENsYXNzKFwiZHJhZ2dpbmdcIik7XG5cbiAgT2JqZWN0LmFzc2lnbihnbG9iYWxUaGlzLCB7XG4gICAgZHJhZ0VsZW1lbnRcbiAgfSk7XG5cbiAgdGhpcy5zZXRUb3BPZmZzZXQodG9wT2Zmc2V0KTtcblxuICB0aGlzLnNldExlZnRPZmZzZXQobGVmdE9mZnNldCk7XG5cbiAgdGhpcy5zZXRTdGFydE1vdXNlVG9wKHN0YXJ0TW91c2VUb3ApO1xuXG4gIHRoaXMuc2V0U3RhcnRNb3VzZUxlZnQoc3RhcnRNb3VzZUxlZnQpO1xuXG4gIHRoaXMuY2FsbEN1c3RvbUhhbmRsZXJzKGN1c3RvbUV2ZW50VHlwZSk7XG5cbiAgdGhpcy5kcmFnKG1vdXNlVG9wLCBtb3VzZUxlZnQpO1xufVxuXG5mdW5jdGlvbiBzdG9wRHJhZyhhYm9ydGVkKSB7XG4gIGNvbnN0IHsgZHJvcEVsZW1lbnQgfSA9IGdsb2JhbFRoaXMsXG4gICAgICAgIGN1c3RvbUV2ZW50VHlwZSA9IFNUT1BfRFJBR19DVVNUT01fRVZFTlRfVFlQRTtcblxuICB3aW5kb3cub2ZmS2V5RG93bihrZXlEb3duSGFuZGxlciwgdGhpcyk7XG5cbiAgd2luZG93Lm9mZk1vdXNlTW92ZShtb3VzZU1vdmVIYW5kbGVyLCB0aGlzKTtcblxuICBjb25zdCBkb25lID0gKCkgPT4ge1xuICAgIHRoaXMuY2FsbEN1c3RvbUhhbmRsZXJzQXN5bmMoY3VzdG9tRXZlbnRUeXBlLCBkcm9wRWxlbWVudCwgYWJvcnRlZCwgKCkgPT4ge1xuICAgICAgY29uc3QgZHJhZ0VsZW1lbnQgPSBudWxsO1xuXG4gICAgICBPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHtcbiAgICAgICAgZHJhZ0VsZW1lbnRcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLnJlbW92ZUNsYXNzKFwiZHJhZ2dpbmdcIik7XG4gICAgfSk7XG4gIH1cblxuICBpZiAoZHJvcEVsZW1lbnQgIT09IG51bGwpIHtcbiAgICBsZXQgZHJhZ0VsZW1lbnQgPSB0aGlzOyAvLy9cblxuICAgIGNvbnN0IGRyYWdFbGVtZW50SWdub3Jlc0Ryb3BFbGVtZW50ID0gY2hlY2tEcmFnRWxlbWVudElnbm9yZXNEcm9wRWxlbWVudChkcmFnRWxlbWVudCwgZHJvcEVsZW1lbnQpO1xuXG4gICAgaWYgKGRyYWdFbGVtZW50SWdub3Jlc0Ryb3BFbGVtZW50KSB7XG4gICAgICBkcmFnRWxlbWVudCA9IG51bGw7XG4gICAgfVxuXG4gICAgZHJvcEVsZW1lbnQuZHJvcChkcmFnRWxlbWVudCwgYWJvcnRlZCwgZG9uZSk7XG4gIH0gZWxzZSB7XG4gICAgZG9uZSgpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGRyYWcobW91c2VUb3AsIG1vdXNlTGVmdCkge1xuICBjb25zdCBzY3JvbGxUb3AgPSB3aW5kb3cuZ2V0U2Nyb2xsVG9wKCksXG4gICAgc2Nyb2xsTGVmdCA9IHdpbmRvdy5nZXRTY3JvbGxMZWZ0KCksXG4gICAgdG9wT2Zmc2V0ID0gdGhpcy5nZXRUb3BPZmZzZXQoKSxcbiAgICBsZWZ0T2Zmc2V0ID0gdGhpcy5nZXRMZWZ0T2Zmc2V0KCksXG4gICAgc3RhcnRNb3VzZVRvcCA9IHRoaXMuZ2V0U3RhcnRNb3VzZVRvcCgpLFxuICAgIHN0YXJ0TW91c2VMZWZ0ID0gdGhpcy5nZXRTdGFydE1vdXNlTGVmdCgpLFxuICAgIGN1c3RvbUV2ZW50VHlwZSA9IERSQUdfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgcmVsYXRpdmVNb3VzZVRvcCA9IG1vdXNlVG9wIC0gc3RhcnRNb3VzZVRvcCxcbiAgICByZWxhdGl2ZU1vdXNlTGVmdCA9IG1vdXNlTGVmdCAtIHN0YXJ0TW91c2VMZWZ0O1xuXG4gIGxldCB0b3AgPSBzdGFydE1vdXNlVG9wICsgcmVsYXRpdmVNb3VzZVRvcCAtIHRvcE9mZnNldCAtIHNjcm9sbFRvcCxcbiAgICBsZWZ0ID0gc3RhcnRNb3VzZUxlZnQgKyByZWxhdGl2ZU1vdXNlTGVmdCAtIGxlZnRPZmZzZXQgLSBzY3JvbGxMZWZ0O1xuXG4gIHRvcCA9IGAke3RvcH1weGA7IC8vL1xuICBsZWZ0ID0gYCR7bGVmdH1weGA7IC8vL1xuXG4gIGNvbnN0IGNzcyA9IHtcbiAgICB0b3AsXG4gICAgbGVmdFxuICB9O1xuXG4gIHRoaXMuY3NzKGNzcyk7XG5cbiAgdGhpcy5jYWxsQ3VzdG9tSGFuZGxlcnMoY3VzdG9tRXZlbnRUeXBlLCByZWxhdGl2ZU1vdXNlVG9wLCByZWxhdGl2ZU1vdXNlTGVmdCk7XG59XG5cbmZ1bmN0aW9uIG9uQ3VzdG9tRHJhZyhkcmFnQ3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBEUkFHX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICBjdXN0b21IYW5kbGVyID0gZHJhZ0N1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9uQ3VzdG9tRXZlbnQoY3VzdG9tRXZlbnRUeXBlLCBjdXN0b21IYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb2ZmQ3VzdG9tRHJhZyhkcmFnQ3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBEUkFHX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICBjdXN0b21IYW5kbGVyID0gZHJhZ0N1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9mZkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9uQ3VzdG9tU3RvcERyYWcoc3RvcERyYWdDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IFNUT1BfRFJBR19DVVNUT01fRVZFTlRfVFlQRSxcbiAgICAgICAgY3VzdG9tSGFuZGxlciA9IHN0b3BEcmFnQ3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub25DdXN0b21FdmVudChjdXN0b21FdmVudFR5cGUsIGN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZDdXN0b21TdG9wRHJhZyhzdG9wRHJhZ0N1c3RvbUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgY3VzdG9tRXZlbnRUeXBlID0gU1RPUF9EUkFHX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICBjdXN0b21IYW5kbGVyID0gc3RvcERyYWdDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vZmZDdXN0b21FdmVudChjdXN0b21FdmVudFR5cGUsIGN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvbkN1c3RvbVN0YXJ0RHJhZyhzdGFydERyYWdDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IFNUQVJUX0RSQUdfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSBzdGFydERyYWdDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vbkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZkN1c3RvbVN0YXJ0RHJhZyhzdGFydERyYWdDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IFNUQVJUX0RSQUdfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSBzdGFydERyYWdDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vZmZDdXN0b21FdmVudChjdXN0b21FdmVudFR5cGUsIGN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBzdGFydFdhaXRpbmdUb0RyYWcobW91c2VUb3AsIG1vdXNlTGVmdCkge1xuICBsZXQgdGltZW91dCA9IHRoaXMuZ2V0VGltZW91dCgpO1xuXG4gIGlmICh0aW1lb3V0ID09PSBudWxsKSB7XG4gICAgdGltZW91dCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5yZXNldFRpbWVvdXQoKTtcblxuICAgICAgdGhpcy5zdGFydERyYWcobW91c2VUb3AsIG1vdXNlTGVmdCk7XG4gICAgfSwgU1RBUlRfRFJBR0dJTkdfREVMQVkpO1xuXG4gICAgdGhpcy51cGRhdGVUaW1lb3V0KHRpbWVvdXQpO1xuICB9XG59XG5cbmZ1bmN0aW9uIHN0b3BXYWl0aW5nVG9EcmFnKCkge1xuICBjb25zdCB0aW1lb3V0ID0gdGhpcy5nZXRUaW1lb3V0KCk7XG5cbiAgaWYgKHRpbWVvdXQgIT09IG51bGwpIHtcbiAgICBjbGVhclRpbWVvdXQodGltZW91dCk7XG5cbiAgICB0aGlzLnJlc2V0VGltZW91dCgpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGdldFRpbWVvdXQoKSB7XG4gIGNvbnN0IHsgdGltZW91dCB9ID0gdGhpcy5nZXRTdGF0ZSgpO1xuXG4gIHJldHVybiB0aW1lb3V0O1xufVxuXG5mdW5jdGlvbiByZXNldFRpbWVvdXQoKSB7XG4gIGNvbnN0IHRpbWVvdXQgPSBudWxsO1xuXG4gIHRoaXMudXBkYXRlVGltZW91dCh0aW1lb3V0KTtcbn1cblxuZnVuY3Rpb24gdXBkYXRlVGltZW91dCh0aW1lb3V0KSB7XG4gIHRoaXMudXBkYXRlU3RhdGUoe1xuICAgIHRpbWVvdXRcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIGdldFRvcE9mZnNldCgpIHtcbiAgY29uc3QgeyB0b3BPZmZzZXQgfSA9IHRoaXMuZ2V0U3RhdGUoKTtcblxuICByZXR1cm4gdG9wT2Zmc2V0O1xufVxuXG5mdW5jdGlvbiBnZXRMZWZ0T2Zmc2V0KCkge1xuICBjb25zdCB7IGxlZnRPZmZzZXQgfSA9IHRoaXMuZ2V0U3RhdGUoKTtcblxuICByZXR1cm4gbGVmdE9mZnNldDtcbn1cblxuZnVuY3Rpb24gZ2V0U3RhcnRNb3VzZVRvcCgpIHtcbiAgY29uc3QgeyBzdGFydE1vdXNlVG9wIH0gPSB0aGlzLmdldFN0YXRlKCk7XG5cbiAgcmV0dXJuIHN0YXJ0TW91c2VUb3A7XG59XG5cbmZ1bmN0aW9uIGdldFN0YXJ0TW91c2VMZWZ0KCkge1xuICBjb25zdCB7IHN0YXJ0TW91c2VMZWZ0IH0gPSB0aGlzLmdldFN0YXRlKCk7XG5cbiAgcmV0dXJuIHN0YXJ0TW91c2VMZWZ0O1xufVxuXG5mdW5jdGlvbiBzZXRUb3BPZmZzZXQodG9wT2Zmc2V0KSB7XG4gIHRoaXMudXBkYXRlU3RhdGUoe1xuICAgIHRvcE9mZnNldFxuICB9KTtcbn1cblxuZnVuY3Rpb24gc2V0TGVmdE9mZnNldChsZWZ0T2Zmc2V0KSB7XG4gIHRoaXMudXBkYXRlU3RhdGUoe1xuICAgIGxlZnRPZmZzZXRcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIHNldFN0YXJ0TW91c2VUb3Aoc3RhcnRNb3VzZVRvcCkge1xuICB0aGlzLnVwZGF0ZVN0YXRlKHtcbiAgICBzdGFydE1vdXNlVG9wXG4gIH0pO1xufVxuXG5mdW5jdGlvbiBzZXRTdGFydE1vdXNlTGVmdChzdGFydE1vdXNlTGVmdCkge1xuICB0aGlzLnVwZGF0ZVN0YXRlKHtcbiAgICBzdGFydE1vdXNlTGVmdFxuICB9KTtcbn1cblxuZXhwb3J0IGRlZmF1bHQge1xuICBlbmFibGVEcmFnLFxuICBkaXNhYmxlRHJhZyxcbiAgaXNEcmFnZ2luZyxcbiAgc3RhcnREcmFnLFxuICBzdG9wRHJhZyxcbiAgZHJhZyxcbiAgb25DdXN0b21EcmFnLFxuICBvZmZDdXN0b21EcmFnLFxuICBvbkN1c3RvbVN0b3BEcmFnLFxuICBvZmZDdXN0b21TdG9wRHJhZyxcbiAgb25DdXN0b21TdGFydERyYWcsXG4gIG9mZkN1c3RvbVN0YXJ0RHJhZyxcbiAgc3RhcnRXYWl0aW5nVG9EcmFnLFxuICBzdG9wV2FpdGluZ1RvRHJhZyxcbiAgZ2V0VGltZW91dCxcbiAgcmVzZXRUaW1lb3V0LFxuICB1cGRhdGVUaW1lb3V0LFxuICBnZXRUb3BPZmZzZXQsXG4gIGdldExlZnRPZmZzZXQsXG4gIGdldFN0YXJ0TW91c2VUb3AsXG4gIGdldFN0YXJ0TW91c2VMZWZ0LFxuICBzZXRUb3BPZmZzZXQsXG4gIHNldExlZnRPZmZzZXQsXG4gIHNldFN0YXJ0TW91c2VUb3AsXG4gIHNldFN0YXJ0TW91c2VMZWZ0XG59O1xuXG5mdW5jdGlvbiBrZXlEb3duSGFuZGxlcihldmVudCwgZWxlbWVudCkge1xuICBjb25zdCB7IGtleUNvZGUgfSA9IGV2ZW50LFxuICAgICAgICBlc2NhcGVLZXkgPSAoa2V5Q29kZSA9PT0gRVNDQVBFX0tFWV9DT0RFKSxcbiAgICAgICAgYWJvcnRlZCA9IHRydWU7XG5cbiAgaWYgKGVzY2FwZUtleSkge1xuICAgIHRoaXMuc3RvcERyYWcoYWJvcnRlZCk7XG5cbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBtb3VzZVVwSGFuZGxlcihldmVudCwgZWxlbWVudCkge1xuICBjb25zdCBkcmFnZ2luZyA9IHRoaXMuaXNEcmFnZ2luZygpLFxuICAgICAgICBhYm9ydGVkID0gZmFsc2U7XG5cbiAgZHJhZ2dpbmcgP1xuICAgIHRoaXMuc3RvcERyYWcoYWJvcnRlZCkgOlxuICAgICAgdGhpcy5zdG9wV2FpdGluZ1RvRHJhZygpO1xuXG4gIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gIHdpbmRvdy5vZmZFdmVudChCTFVSX0VWRU5UX1RZUEUsIG1vdXNlVXBIYW5kbGVyLCB0aGlzKTsgIC8vL1xuXG4gIHdpbmRvdy5vZmZNb3VzZVVwKG1vdXNlVXBIYW5kbGVyLCB0aGlzKTtcbn1cblxuZnVuY3Rpb24gbW91c2VEb3duSGFuZGxlcihldmVudCwgZWxlbWVudCkge1xuICBjb25zdCB7IGJ1dHRvbiB9ID0gZXZlbnQ7XG5cbiAgaWYgKGJ1dHRvbiA9PT0gTEVGVF9NT1VTRV9CVVRUT04pIHtcbiAgICBjb25zdCBkcmFnZ2luZyA9IHRoaXMuaXNEcmFnZ2luZygpO1xuXG4gICAgaWYgKCFkcmFnZ2luZykge1xuICAgICAgY29uc3QgbW91c2VUb3AgPSBtb3VzZVRvcEZyb21FdmVudChldmVudCksXG4gICAgICAgICAgICBtb3VzZUxlZnQgPSBtb3VzZUxlZnRGcm9tRXZlbnQoZXZlbnQpO1xuXG4gICAgICB0aGlzLnN0YXJ0V2FpdGluZ1RvRHJhZyhtb3VzZVRvcCwgbW91c2VMZWZ0KTtcbiAgICB9XG4gIH1cblxuICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICB3aW5kb3cub25FdmVudChCTFVSX0VWRU5UX1RZUEUsIG1vdXNlVXBIYW5kbGVyLCB0aGlzKTsgLy8vXG5cbiAgd2luZG93Lm9uTW91c2VVcChtb3VzZVVwSGFuZGxlciwgdGhpcyk7XG59XG5cbmZ1bmN0aW9uIG1vdXNlTW92ZUhhbmRsZXIoZXZlbnQsIGVsZW1lbnQpIHtcbiAgY29uc3QgZHJhZ2dpbmcgPSB0aGlzLmlzRHJhZ2dpbmcoKTtcblxuICBpZiAoZHJhZ2dpbmcpIHtcbiAgICBjb25zdCBtb3VzZVRvcCA9IG1vdXNlVG9wRnJvbUV2ZW50KGV2ZW50KSxcbiAgICAgICAgICBtb3VzZUxlZnQgPSBtb3VzZUxlZnRGcm9tRXZlbnQoZXZlbnQpO1xuXG4gICAgdGhpcy5kcmFnKG1vdXNlVG9wLCBtb3VzZUxlZnQpO1xuICB9XG5cbiAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG59XG4iXSwibmFtZXMiOlsiRVNDQVBFX0tFWV9DT0RFIiwia2V5Q29kZXMiLCJCTFVSX0VWRU5UX1RZUEUiLCJldmVudFR5cGVzIiwiTEVGVF9NT1VTRV9CVVRUT04iLCJtb3VzZUJ1dHRvbnMiLCJkcmFnRWxlbWVudCIsIk9iamVjdCIsImFzc2lnbiIsImdsb2JhbFRoaXMiLCJlbmFibGVEcmFnIiwidGltZW91dCIsInRvcE9mZnNldCIsImxlZnRPZmZzZXQiLCJzdGFydE1vdXNlVG9wIiwic3RhcnRNb3VzZUxlZnQiLCJvbk1vdXNlRG93biIsIm1vdXNlRG93bkhhbmRsZXIiLCJ1cGRhdGVTdGF0ZSIsImRpc2FibGVEcmFnIiwib2ZmTW91c2VEb3duIiwiaXNEcmFnZ2luZyIsImRyYWdnaW5nIiwiaGFzQ2xhc3MiLCJzdGFydERyYWciLCJtb3VzZVRvcCIsIm1vdXNlTGVmdCIsImJvdW5kcyIsImdldEJvdW5kcyIsImJvdW5kc1RvcCIsImdldFRvcCIsImJvdW5kc0xlZnQiLCJnZXRMZWZ0IiwiYm91bmRzUmlnaHQiLCJnZXRSaWdodCIsImJvdW5kc0JvdHRvbSIsImdldEJvdHRvbSIsImJvdW5kc1dpZHRoIiwiYm91bmRzSGVpZ2h0IiwiTWF0aCIsImZsb29yIiwiY3VzdG9tRXZlbnRUeXBlIiwiU1RBUlRfRFJBR19DVVNUT01fRVZFTlRfVFlQRSIsIndpbmRvdyIsIm9uS2V5RG93biIsImtleURvd25IYW5kbGVyIiwib25Nb3VzZU1vdmUiLCJtb3VzZU1vdmVIYW5kbGVyIiwiYWRkQ2xhc3MiLCJzZXRUb3BPZmZzZXQiLCJzZXRMZWZ0T2Zmc2V0Iiwic2V0U3RhcnRNb3VzZVRvcCIsInNldFN0YXJ0TW91c2VMZWZ0IiwiY2FsbEN1c3RvbUhhbmRsZXJzIiwiZHJhZyIsInN0b3BEcmFnIiwiYWJvcnRlZCIsImRyb3BFbGVtZW50IiwiU1RPUF9EUkFHX0NVU1RPTV9FVkVOVF9UWVBFIiwib2ZmS2V5RG93biIsIm9mZk1vdXNlTW92ZSIsImRvbmUiLCJjYWxsQ3VzdG9tSGFuZGxlcnNBc3luYyIsInJlbW92ZUNsYXNzIiwiZHJhZ0VsZW1lbnRJZ25vcmVzRHJvcEVsZW1lbnQiLCJjaGVja0RyYWdFbGVtZW50SWdub3Jlc0Ryb3BFbGVtZW50IiwiZHJvcCIsInNjcm9sbFRvcCIsImdldFNjcm9sbFRvcCIsInNjcm9sbExlZnQiLCJnZXRTY3JvbGxMZWZ0IiwiZ2V0VG9wT2Zmc2V0IiwiZ2V0TGVmdE9mZnNldCIsImdldFN0YXJ0TW91c2VUb3AiLCJnZXRTdGFydE1vdXNlTGVmdCIsIkRSQUdfQ1VTVE9NX0VWRU5UX1RZUEUiLCJyZWxhdGl2ZU1vdXNlVG9wIiwicmVsYXRpdmVNb3VzZUxlZnQiLCJ0b3AiLCJsZWZ0IiwiY3NzIiwib25DdXN0b21EcmFnIiwiZHJhZ0N1c3RvbUhhbmRsZXIiLCJlbGVtZW50IiwiY3VzdG9tSGFuZGxlciIsIm9uQ3VzdG9tRXZlbnQiLCJvZmZDdXN0b21EcmFnIiwib2ZmQ3VzdG9tRXZlbnQiLCJvbkN1c3RvbVN0b3BEcmFnIiwic3RvcERyYWdDdXN0b21IYW5kbGVyIiwib2ZmQ3VzdG9tU3RvcERyYWciLCJvbkN1c3RvbVN0YXJ0RHJhZyIsInN0YXJ0RHJhZ0N1c3RvbUhhbmRsZXIiLCJvZmZDdXN0b21TdGFydERyYWciLCJzdGFydFdhaXRpbmdUb0RyYWciLCJnZXRUaW1lb3V0Iiwic2V0VGltZW91dCIsInJlc2V0VGltZW91dCIsIlNUQVJUX0RSQUdHSU5HX0RFTEFZIiwidXBkYXRlVGltZW91dCIsInN0b3BXYWl0aW5nVG9EcmFnIiwiY2xlYXJUaW1lb3V0IiwiZ2V0U3RhdGUiLCJldmVudCIsImtleUNvZGUiLCJlc2NhcGVLZXkiLCJzdG9wUHJvcGFnYXRpb24iLCJtb3VzZVVwSGFuZGxlciIsIm9mZkV2ZW50Iiwib2ZmTW91c2VVcCIsImJ1dHRvbiIsIm1vdXNlVG9wRnJvbUV2ZW50IiwibW91c2VMZWZ0RnJvbUV2ZW50Iiwib25FdmVudCIsIm9uTW91c2VVcCJdLCJyYW5nZU1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7IiwibWFwcGluZ3MiOiJBQUFBOzs7OytCQXdSQTs7O2VBQUE7Ozt5QkF0UnlCO29CQUN3Qjt5QkFFWjt5QkFDYztxQkFDRztnQ0FDNEM7QUFFbEcsSUFBTSxBQUFF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
246
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvZHJhZy5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsga2V5Q29kZXMgfSBmcm9tIFwibmVjZXNzYXJ5XCIgO1xuaW1wb3J0IHsgd2luZG93LCBldmVudFR5cGVzLCBtb3VzZUJ1dHRvbnMgfSBmcm9tIFwiZWFzeVwiO1xuXG5pbXBvcnQgeyBTVEFSVF9EUkFHR0lOR19ERUxBWSB9IGZyb20gXCIuLi9jb25zdGFudHNcIjtcbmltcG9ydCB7IGNoZWNrRHJhZ0VsZW1lbnRJZ25vcmVzRHJvcEVsZW1lbnQgfSBmcm9tIFwiLi4vdXRpbGl0aWVzL3JlZmVyZW5jZVwiO1xuaW1wb3J0IHsgbW91c2VUb3BGcm9tRXZlbnQsIG1vdXNlTGVmdEZyb21FdmVudCB9IGZyb20gXCIuLi91dGlsaXRpZXMvZXZlbnRcIjtcbmltcG9ydCB7IERSQUdfQ1VTVE9NX0VWRU5UX1RZUEUsIFNUT1BfRFJBR19DVVNUT01fRVZFTlRfVFlQRSwgU1RBUlRfRFJBR19DVVNUT01fRVZFTlRfVFlQRSB9IGZyb20gXCIuLi9jdXN0b21FdmVudFR5cGVzXCI7XG5cbmNvbnN0IHsgRVNDQVBFX0tFWV9DT0RFIH0gPSBrZXlDb2RlcyxcbiAgICAgIHsgQkxVUl9FVkVOVF9UWVBFIH0gPSBldmVudFR5cGVzLFxuICAgICAgeyBMRUZUX01PVVNFX0JVVFRPTiB9ID0gbW91c2VCdXR0b25zO1xuXG5jb25zdCBkcmFnRWxlbWVudCA9IG51bGw7XG5cbk9iamVjdC5hc3NpZ24oZ2xvYmFsVGhpcywge1xuICBkcmFnRWxlbWVudFxufSk7XG5cbmZ1bmN0aW9uIGVuYWJsZURyYWcoKSB7XG4gIGNvbnN0IHRpbWVvdXQgPSBudWxsLFxuICAgICAgICB0b3BPZmZzZXQgPSBudWxsLFxuICAgICAgICBsZWZ0T2Zmc2V0ID0gbnVsbCxcbiAgICAgICAgc3RhcnRNb3VzZVRvcCA9IG51bGwsXG4gICAgICAgIHN0YXJ0TW91c2VMZWZ0ID0gbnVsbDtcblxuICB0aGlzLm9uTW91c2VEb3duKG1vdXNlRG93bkhhbmRsZXIsIHRoaXMpO1xuXG4gIHRoaXMudXBkYXRlU3RhdGUoe1xuICAgIHRpbWVvdXQsXG4gICAgdG9wT2Zmc2V0LFxuICAgIGxlZnRPZmZzZXQsXG4gICAgc3RhcnRNb3VzZVRvcCxcbiAgICBzdGFydE1vdXNlTGVmdFxuICB9KTtcbn1cblxuZnVuY3Rpb24gZGlzYWJsZURyYWcoKSB7XG4gIHRoaXMub2ZmTW91c2VEb3duKG1vdXNlRG93bkhhbmRsZXIsIHRoaXMpO1xufVxuXG5mdW5jdGlvbiBpc0RyYWdnaW5nKCkge1xuICBjb25zdCBkcmFnZ2luZyA9IHRoaXMuaGFzQ2xhc3MoXCJkcmFnZ2luZ1wiKTtcblxuICByZXR1cm4gZHJhZ2dpbmc7XG59XG5cbmZ1bmN0aW9uIHN0YXJ0RHJhZyhtb3VzZVRvcCwgbW91c2VMZWZ0KSB7XG4gIGNvbnN0IGJvdW5kcyA9IHRoaXMuZ2V0Qm91bmRzKCksXG4gICAgICAgIGJvdW5kc1RvcCA9IGJvdW5kcy5nZXRUb3AoKSxcbiAgICAgICAgYm91bmRzTGVmdCA9IGJvdW5kcy5nZXRMZWZ0KCksXG4gICAgICAgIGJvdW5kc1JpZ2h0ID0gYm91bmRzLmdldFJpZ2h0KCksXG4gICAgICAgIGJvdW5kc0JvdHRvbSA9IGJvdW5kcy5nZXRCb3R0b20oKSxcbiAgICAgICAgYm91bmRzV2lkdGggPSBib3VuZHNSaWdodCAtIGJvdW5kc0xlZnQsXG4gICAgICAgIGJvdW5kc0hlaWdodCA9IGJvdW5kc0JvdHRvbSAtIGJvdW5kc1RvcCxcbiAgICAgICAgdG9wT2Zmc2V0ID0gTWF0aC5mbG9vcihib3VuZHNIZWlnaHQgLyAyKSxcbiAgICAgICAgbGVmdE9mZnNldCA9IE1hdGguZmxvb3IoYm91bmRzV2lkdGggLyAyKSxcbiAgICAgICAgZHJhZ0VsZW1lbnQgPSB0aGlzLCAvLy9cbiAgICAgICAgc3RhcnRNb3VzZVRvcCA9IG1vdXNlVG9wLCAvLy9cbiAgICAgICAgc3RhcnRNb3VzZUxlZnQgPSBtb3VzZUxlZnQsIC8vL1xuICAgICAgICBjdXN0b21FdmVudFR5cGUgPSBTVEFSVF9EUkFHX0NVU1RPTV9FVkVOVF9UWVBFO1xuXG4gIHdpbmRvdy5vbktleURvd24oa2V5RG93bkhhbmRsZXIsIHRoaXMpO1xuXG4gIHdpbmRvdy5vbk1vdXNlTW92ZShtb3VzZU1vdmVIYW5kbGVyLCB0aGlzKTtcblxuICB0aGlzLmFkZENsYXNzKFwiZHJhZ2dpbmdcIik7XG5cbiAgT2JqZWN0LmFzc2lnbihnbG9iYWxUaGlzLCB7XG4gICAgZHJhZ0VsZW1lbnRcbiAgfSk7XG5cbiAgdGhpcy5zZXRUb3BPZmZzZXQodG9wT2Zmc2V0KTtcblxuICB0aGlzLnNldExlZnRPZmZzZXQobGVmdE9mZnNldCk7XG5cbiAgdGhpcy5zZXRTdGFydE1vdXNlVG9wKHN0YXJ0TW91c2VUb3ApO1xuXG4gIHRoaXMuc2V0U3RhcnRNb3VzZUxlZnQoc3RhcnRNb3VzZUxlZnQpO1xuXG4gIHRoaXMuY2FsbEN1c3RvbUhhbmRsZXJzKGN1c3RvbUV2ZW50VHlwZSk7XG5cbiAgdGhpcy5kcmFnKG1vdXNlVG9wLCBtb3VzZUxlZnQpO1xufVxuXG5mdW5jdGlvbiBzdG9wRHJhZyhhYm9ydGVkKSB7XG4gIGNvbnN0IHsgZHJvcEVsZW1lbnQgfSA9IGdsb2JhbFRoaXMsXG4gICAgICAgIGN1c3RvbUV2ZW50VHlwZSA9IFNUT1BfRFJBR19DVVNUT01fRVZFTlRfVFlQRTtcblxuICB3aW5kb3cub2ZmS2V5RG93bihrZXlEb3duSGFuZGxlciwgdGhpcyk7XG5cbiAgd2luZG93Lm9mZk1vdXNlTW92ZShtb3VzZU1vdmVIYW5kbGVyLCB0aGlzKTtcblxuICBjb25zdCBkb25lID0gKCkgPT4ge1xuICAgIHRoaXMuY2FsbEN1c3RvbUhhbmRsZXJzQXN5bmMoY3VzdG9tRXZlbnRUeXBlLCBkcm9wRWxlbWVudCwgYWJvcnRlZCwgKCkgPT4ge1xuICAgICAgY29uc3QgZHJhZ0VsZW1lbnQgPSBudWxsO1xuXG4gICAgICBPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHtcbiAgICAgICAgZHJhZ0VsZW1lbnRcbiAgICAgIH0pO1xuXG4gICAgICB0aGlzLnJlbW92ZUNsYXNzKFwiZHJhZ2dpbmdcIik7XG4gICAgfSk7XG4gIH1cblxuICBpZiAoZHJvcEVsZW1lbnQgIT09IG51bGwpIHtcbiAgICBsZXQgZHJhZ0VsZW1lbnQgPSB0aGlzOyAvLy9cblxuICAgIGNvbnN0IGRyYWdFbGVtZW50SWdub3Jlc0Ryb3BFbGVtZW50ID0gY2hlY2tEcmFnRWxlbWVudElnbm9yZXNEcm9wRWxlbWVudChkcmFnRWxlbWVudCwgZHJvcEVsZW1lbnQpO1xuXG4gICAgaWYgKGRyYWdFbGVtZW50SWdub3Jlc0Ryb3BFbGVtZW50KSB7XG4gICAgICBkcmFnRWxlbWVudCA9IG51bGw7XG4gICAgfVxuXG4gICAgZHJvcEVsZW1lbnQuZHJvcChkcmFnRWxlbWVudCwgYWJvcnRlZCwgZG9uZSk7XG4gIH0gZWxzZSB7XG4gICAgZG9uZSgpO1xuICB9XG59XG5cbmZ1bmN0aW9uIGRyYWcobW91c2VUb3AsIG1vdXNlTGVmdCkge1xuICBjb25zdCBzY3JvbGxUb3AgPSB3aW5kb3cuZ2V0U2Nyb2xsVG9wKCksXG4gICAgICAgIHNjcm9sbExlZnQgPSB3aW5kb3cuZ2V0U2Nyb2xsTGVmdCgpLFxuICAgICAgICB0b3BPZmZzZXQgPSB0aGlzLmdldFRvcE9mZnNldCgpLFxuICAgICAgICBsZWZ0T2Zmc2V0ID0gdGhpcy5nZXRMZWZ0T2Zmc2V0KCksXG4gICAgICAgIHN0YXJ0TW91c2VUb3AgPSB0aGlzLmdldFN0YXJ0TW91c2VUb3AoKSxcbiAgICAgICAgc3RhcnRNb3VzZUxlZnQgPSB0aGlzLmdldFN0YXJ0TW91c2VMZWZ0KCksXG4gICAgICAgIGN1c3RvbUV2ZW50VHlwZSA9IERSQUdfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIHJlbGF0aXZlTW91c2VUb3AgPSBtb3VzZVRvcCAtIHN0YXJ0TW91c2VUb3AsXG4gICAgICAgIHJlbGF0aXZlTW91c2VMZWZ0ID0gbW91c2VMZWZ0IC0gc3RhcnRNb3VzZUxlZnQ7XG5cbiAgbGV0IHRvcCA9IHN0YXJ0TW91c2VUb3AgKyByZWxhdGl2ZU1vdXNlVG9wIC0gdG9wT2Zmc2V0IC0gc2Nyb2xsVG9wLFxuICAgICAgbGVmdCA9IHN0YXJ0TW91c2VMZWZ0ICsgcmVsYXRpdmVNb3VzZUxlZnQgLSBsZWZ0T2Zmc2V0IC0gc2Nyb2xsTGVmdDtcblxuICB0b3AgPSBgJHt0b3B9cHhgOyAvLy9cbiAgbGVmdCA9IGAke2xlZnR9cHhgOyAvLy9cblxuICBjb25zdCBjc3MgPSB7XG4gICAgdG9wLFxuICAgIGxlZnRcbiAgfTtcblxuICB0aGlzLmNzcyhjc3MpO1xuXG4gIHRoaXMuY2FsbEN1c3RvbUhhbmRsZXJzKGN1c3RvbUV2ZW50VHlwZSwgcmVsYXRpdmVNb3VzZVRvcCwgcmVsYXRpdmVNb3VzZUxlZnQpO1xufVxuXG5mdW5jdGlvbiBvbkN1c3RvbURyYWcoZHJhZ0N1c3RvbUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgY3VzdG9tRXZlbnRUeXBlID0gRFJBR19DVVNUT01fRVZFTlRfVFlQRSxcbiAgICAgICAgY3VzdG9tSGFuZGxlciA9IGRyYWdDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vbkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZkN1c3RvbURyYWcoZHJhZ0N1c3RvbUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgY3VzdG9tRXZlbnRUeXBlID0gRFJBR19DVVNUT01fRVZFTlRfVFlQRSxcbiAgICAgICAgY3VzdG9tSGFuZGxlciA9IGRyYWdDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vZmZDdXN0b21FdmVudChjdXN0b21FdmVudFR5cGUsIGN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvbkN1c3RvbVN0b3BEcmFnKHN0b3BEcmFnQ3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBTVE9QX0RSQUdfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSBzdG9wRHJhZ0N1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9uQ3VzdG9tRXZlbnQoY3VzdG9tRXZlbnRUeXBlLCBjdXN0b21IYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb2ZmQ3VzdG9tU3RvcERyYWcoc3RvcERyYWdDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IFNUT1BfRFJBR19DVVNUT01fRVZFTlRfVFlQRSxcbiAgICAgICAgY3VzdG9tSGFuZGxlciA9IHN0b3BEcmFnQ3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub2ZmQ3VzdG9tRXZlbnQoY3VzdG9tRXZlbnRUeXBlLCBjdXN0b21IYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb25DdXN0b21TdGFydERyYWcoc3RhcnREcmFnQ3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBTVEFSVF9EUkFHX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICBjdXN0b21IYW5kbGVyID0gc3RhcnREcmFnQ3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub25DdXN0b21FdmVudChjdXN0b21FdmVudFR5cGUsIGN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZDdXN0b21TdGFydERyYWcoc3RhcnREcmFnQ3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBTVEFSVF9EUkFHX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICBjdXN0b21IYW5kbGVyID0gc3RhcnREcmFnQ3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub2ZmQ3VzdG9tRXZlbnQoY3VzdG9tRXZlbnRUeXBlLCBjdXN0b21IYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gc3RhcnRXYWl0aW5nVG9EcmFnKG1vdXNlVG9wLCBtb3VzZUxlZnQpIHtcbiAgbGV0IHRpbWVvdXQgPSB0aGlzLmdldFRpbWVvdXQoKTtcblxuICBpZiAodGltZW91dCA9PT0gbnVsbCkge1xuICAgIHRpbWVvdXQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMucmVzZXRUaW1lb3V0KCk7XG5cbiAgICAgIHRoaXMuc3RhcnREcmFnKG1vdXNlVG9wLCBtb3VzZUxlZnQpO1xuICAgIH0sIFNUQVJUX0RSQUdHSU5HX0RFTEFZKTtcblxuICAgIHRoaXMudXBkYXRlVGltZW91dCh0aW1lb3V0KTtcbiAgfVxufVxuXG5mdW5jdGlvbiBzdG9wV2FpdGluZ1RvRHJhZygpIHtcbiAgY29uc3QgdGltZW91dCA9IHRoaXMuZ2V0VGltZW91dCgpO1xuXG4gIGlmICh0aW1lb3V0ICE9PSBudWxsKSB7XG4gICAgY2xlYXJUaW1lb3V0KHRpbWVvdXQpO1xuXG4gICAgdGhpcy5yZXNldFRpbWVvdXQoKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBnZXRUaW1lb3V0KCkge1xuICBjb25zdCB7IHRpbWVvdXQgfSA9IHRoaXMuZ2V0U3RhdGUoKTtcblxuICByZXR1cm4gdGltZW91dDtcbn1cblxuZnVuY3Rpb24gcmVzZXRUaW1lb3V0KCkge1xuICBjb25zdCB0aW1lb3V0ID0gbnVsbDtcblxuICB0aGlzLnVwZGF0ZVRpbWVvdXQodGltZW91dCk7XG59XG5cbmZ1bmN0aW9uIHVwZGF0ZVRpbWVvdXQodGltZW91dCkge1xuICB0aGlzLnVwZGF0ZVN0YXRlKHtcbiAgICB0aW1lb3V0XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBnZXRUb3BPZmZzZXQoKSB7XG4gIGNvbnN0IHsgdG9wT2Zmc2V0IH0gPSB0aGlzLmdldFN0YXRlKCk7XG5cbiAgcmV0dXJuIHRvcE9mZnNldDtcbn1cblxuZnVuY3Rpb24gZ2V0TGVmdE9mZnNldCgpIHtcbiAgY29uc3QgeyBsZWZ0T2Zmc2V0IH0gPSB0aGlzLmdldFN0YXRlKCk7XG5cbiAgcmV0dXJuIGxlZnRPZmZzZXQ7XG59XG5cbmZ1bmN0aW9uIGdldFN0YXJ0TW91c2VUb3AoKSB7XG4gIGNvbnN0IHsgc3RhcnRNb3VzZVRvcCB9ID0gdGhpcy5nZXRTdGF0ZSgpO1xuXG4gIHJldHVybiBzdGFydE1vdXNlVG9wO1xufVxuXG5mdW5jdGlvbiBnZXRTdGFydE1vdXNlTGVmdCgpIHtcbiAgY29uc3QgeyBzdGFydE1vdXNlTGVmdCB9ID0gdGhpcy5nZXRTdGF0ZSgpO1xuXG4gIHJldHVybiBzdGFydE1vdXNlTGVmdDtcbn1cblxuZnVuY3Rpb24gc2V0VG9wT2Zmc2V0KHRvcE9mZnNldCkge1xuICB0aGlzLnVwZGF0ZVN0YXRlKHtcbiAgICB0b3BPZmZzZXRcbiAgfSk7XG59XG5cbmZ1bmN0aW9uIHNldExlZnRPZmZzZXQobGVmdE9mZnNldCkge1xuICB0aGlzLnVwZGF0ZVN0YXRlKHtcbiAgICBsZWZ0T2Zmc2V0XG4gIH0pO1xufVxuXG5mdW5jdGlvbiBzZXRTdGFydE1vdXNlVG9wKHN0YXJ0TW91c2VUb3ApIHtcbiAgdGhpcy51cGRhdGVTdGF0ZSh7XG4gICAgc3RhcnRNb3VzZVRvcFxuICB9KTtcbn1cblxuZnVuY3Rpb24gc2V0U3RhcnRNb3VzZUxlZnQoc3RhcnRNb3VzZUxlZnQpIHtcbiAgdGhpcy51cGRhdGVTdGF0ZSh7XG4gICAgc3RhcnRNb3VzZUxlZnRcbiAgfSk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgZW5hYmxlRHJhZyxcbiAgZGlzYWJsZURyYWcsXG4gIGlzRHJhZ2dpbmcsXG4gIHN0YXJ0RHJhZyxcbiAgc3RvcERyYWcsXG4gIGRyYWcsXG4gIG9uQ3VzdG9tRHJhZyxcbiAgb2ZmQ3VzdG9tRHJhZyxcbiAgb25DdXN0b21TdG9wRHJhZyxcbiAgb2ZmQ3VzdG9tU3RvcERyYWcsXG4gIG9uQ3VzdG9tU3RhcnREcmFnLFxuICBvZmZDdXN0b21TdGFydERyYWcsXG4gIHN0YXJ0V2FpdGluZ1RvRHJhZyxcbiAgc3RvcFdhaXRpbmdUb0RyYWcsXG4gIGdldFRpbWVvdXQsXG4gIHJlc2V0VGltZW91dCxcbiAgdXBkYXRlVGltZW91dCxcbiAgZ2V0VG9wT2Zmc2V0LFxuICBnZXRMZWZ0T2Zmc2V0LFxuICBnZXRTdGFydE1vdXNlVG9wLFxuICBnZXRTdGFydE1vdXNlTGVmdCxcbiAgc2V0VG9wT2Zmc2V0LFxuICBzZXRMZWZ0T2Zmc2V0LFxuICBzZXRTdGFydE1vdXNlVG9wLFxuICBzZXRTdGFydE1vdXNlTGVmdFxufTtcblxuZnVuY3Rpb24ga2V5RG93bkhhbmRsZXIoZXZlbnQsIGVsZW1lbnQpIHtcbiAgY29uc3QgeyBrZXlDb2RlIH0gPSBldmVudCxcbiAgICAgICAgZXNjYXBlS2V5ID0gKGtleUNvZGUgPT09IEVTQ0FQRV9LRVlfQ09ERSksXG4gICAgICAgIGFib3J0ZWQgPSB0cnVlO1xuXG4gIGlmIChlc2NhcGVLZXkpIHtcbiAgICB0aGlzLnN0b3BEcmFnKGFib3J0ZWQpO1xuXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gbW91c2VVcEhhbmRsZXIoZXZlbnQsIGVsZW1lbnQpIHtcbiAgY29uc3QgZHJhZ2dpbmcgPSB0aGlzLmlzRHJhZ2dpbmcoKSxcbiAgICAgICAgYWJvcnRlZCA9IGZhbHNlO1xuXG4gIGRyYWdnaW5nID9cbiAgICB0aGlzLnN0b3BEcmFnKGFib3J0ZWQpIDpcbiAgICAgIHRoaXMuc3RvcFdhaXRpbmdUb0RyYWcoKTtcblxuICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICB3aW5kb3cub2ZmRXZlbnQoQkxVUl9FVkVOVF9UWVBFLCBtb3VzZVVwSGFuZGxlciwgdGhpcyk7ICAvLy9cblxuICB3aW5kb3cub2ZmTW91c2VVcChtb3VzZVVwSGFuZGxlciwgdGhpcyk7XG59XG5cbmZ1bmN0aW9uIG1vdXNlRG93bkhhbmRsZXIoZXZlbnQsIGVsZW1lbnQpIHtcbiAgY29uc3QgeyBidXR0b24gfSA9IGV2ZW50O1xuXG4gIGlmIChidXR0b24gPT09IExFRlRfTU9VU0VfQlVUVE9OKSB7XG4gICAgY29uc3QgZHJhZ2dpbmcgPSB0aGlzLmlzRHJhZ2dpbmcoKTtcblxuICAgIGlmICghZHJhZ2dpbmcpIHtcbiAgICAgIGNvbnN0IG1vdXNlVG9wID0gbW91c2VUb3BGcm9tRXZlbnQoZXZlbnQpLFxuICAgICAgICAgICAgbW91c2VMZWZ0ID0gbW91c2VMZWZ0RnJvbUV2ZW50KGV2ZW50KTtcblxuICAgICAgdGhpcy5zdGFydFdhaXRpbmdUb0RyYWcobW91c2VUb3AsIG1vdXNlTGVmdCk7XG4gICAgfVxuICB9XG5cbiAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgd2luZG93Lm9uRXZlbnQoQkxVUl9FVkVOVF9UWVBFLCBtb3VzZVVwSGFuZGxlciwgdGhpcyk7IC8vL1xuXG4gIHdpbmRvdy5vbk1vdXNlVXAobW91c2VVcEhhbmRsZXIsIHRoaXMpO1xufVxuXG5mdW5jdGlvbiBtb3VzZU1vdmVIYW5kbGVyKGV2ZW50LCBlbGVtZW50KSB7XG4gIGNvbnN0IGRyYWdnaW5nID0gdGhpcy5pc0RyYWdnaW5nKCk7XG5cbiAgaWYgKGRyYWdnaW5nKSB7XG4gICAgY29uc3QgbW91c2VUb3AgPSBtb3VzZVRvcEZyb21FdmVudChldmVudCksXG4gICAgICAgICAgbW91c2VMZWZ0ID0gbW91c2VMZWZ0RnJvbUV2ZW50KGV2ZW50KTtcblxuICAgIHRoaXMuZHJhZyhtb3VzZVRvcCwgbW91c2VMZWZ0KTtcbiAgfVxuXG4gIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xufVxuIl0sIm5hbWVzIjpbIkVTQ0FQRV9LRVlfQ09ERSIsImtleUNvZGVzIiwiQkxVUl9FVkVOVF9UWVBFIiwiZXZlbnRUeXBlcyIsIkxFRlRfTU9VU0VfQlVUVE9OIiwibW91c2VCdXR0b25zIiwiZHJhZ0VsZW1lbnQiLCJPYmplY3QiLCJhc3NpZ24iLCJnbG9iYWxUaGlzIiwiZW5hYmxlRHJhZyIsInRpbWVvdXQiLCJ0b3BPZmZzZXQiLCJsZWZ0T2Zmc2V0Iiwic3RhcnRNb3VzZVRvcCIsInN0YXJ0TW91c2VMZWZ0Iiwib25Nb3VzZURvd24iLCJtb3VzZURvd25IYW5kbGVyIiwidXBkYXRlU3RhdGUiLCJkaXNhYmxlRHJhZyIsIm9mZk1vdXNlRG93biIsImlzRHJhZ2dpbmciLCJkcmFnZ2luZyIsImhhc0NsYXNzIiwic3RhcnREcmFnIiwibW91c2VUb3AiLCJtb3VzZUxlZnQiLCJib3VuZHMiLCJnZXRCb3VuZHMiLCJib3VuZHNUb3AiLCJnZXRUb3AiLCJib3VuZHNMZWZ0IiwiZ2V0TGVmdCIsImJvdW5kc1JpZ2h0IiwiZ2V0UmlnaHQiLCJib3VuZHNCb3R0b20iLCJnZXRCb3R0b20iLCJib3VuZHNXaWR0aCIsImJvdW5kc0hlaWdodCIsIk1hdGgiLCJmbG9vciIsImN1c3RvbUV2ZW50VHlwZSIsIlNUQVJUX0RSQUdfQ1VTVE9NX0VWRU5UX1RZUEUiLCJ3aW5kb3ciLCJvbktleURvd24iLCJrZXlEb3duSGFuZGxlciIsIm9uTW91c2VNb3ZlIiwibW91c2VNb3ZlSGFuZGxlciIsImFkZENsYXNzIiwic2V0VG9wT2Zmc2V0Iiwic2V0TGVmdE9mZnNldCIsInNldFN0YXJ0TW91c2VUb3AiLCJzZXRTdGFydE1vdXNlTGVmdCIsImNhbGxDdXN0b21IYW5kbGVycyIsImRyYWciLCJzdG9wRHJhZyIsImFib3J0ZWQiLCJkcm9wRWxlbWVudCIsIlNUT1BfRFJBR19DVVNUT01fRVZFTlRfVFlQRSIsIm9mZktleURvd24iLCJvZmZNb3VzZU1vdmUiLCJkb25lIiwiY2FsbEN1c3RvbUhhbmRsZXJzQXN5bmMiLCJyZW1vdmVDbGFzcyIsImRyYWdFbGVtZW50SWdub3Jlc0Ryb3BFbGVtZW50IiwiY2hlY2tEcmFnRWxlbWVudElnbm9yZXNEcm9wRWxlbWVudCIsImRyb3AiLCJzY3JvbGxUb3AiLCJnZXRTY3JvbGxUb3AiLCJzY3JvbGxMZWZ0IiwiZ2V0U2Nyb2xsTGVmdCIsImdldFRvcE9mZnNldCIsImdldExlZnRPZmZzZXQiLCJnZXRTdGFydE1vdXNlVG9wIiwiZ2V0U3RhcnRNb3VzZUxlZnQiLCJEUkFHX0NVU1RPTV9FVkVOVF9UWVBFIiwicmVsYXRpdmVNb3VzZVRvcCIsInJlbGF0aXZlTW91c2VMZWZ0IiwidG9wIiwibGVmdCIsImNzcyIsIm9uQ3VzdG9tRHJhZyIsImRyYWdDdXN0b21IYW5kbGVyIiwiZWxlbWVudCIsImN1c3RvbUhhbmRsZXIiLCJvbkN1c3RvbUV2ZW50Iiwib2ZmQ3VzdG9tRHJhZyIsIm9mZkN1c3RvbUV2ZW50Iiwib25DdXN0b21TdG9wRHJhZyIsInN0b3BEcmFnQ3VzdG9tSGFuZGxlciIsIm9mZkN1c3RvbVN0b3BEcmFnIiwib25DdXN0b21TdGFydERyYWciLCJzdGFydERyYWdDdXN0b21IYW5kbGVyIiwib2ZmQ3VzdG9tU3RhcnREcmFnIiwic3RhcnRXYWl0aW5nVG9EcmFnIiwiZ2V0VGltZW91dCIsInNldFRpbWVvdXQiLCJyZXNldFRpbWVvdXQiLCJTVEFSVF9EUkFHR0lOR19ERUxBWSIsInVwZGF0ZVRpbWVvdXQiLCJzdG9wV2FpdGluZ1RvRHJhZyIsImNsZWFyVGltZW91dCIsImdldFN0YXRlIiwiZXZlbnQiLCJrZXlDb2RlIiwiZXNjYXBlS2V5Iiwic3RvcFByb3BhZ2F0aW9uIiwibW91c2VVcEhhbmRsZXIiLCJvZmZFdmVudCIsIm9mZk1vdXNlVXAiLCJidXR0b24iLCJtb3VzZVRvcEZyb21FdmVudCIsIm1vdXNlTGVmdEZyb21FdmVudCIsIm9uRXZlbnQiLCJvbk1vdXNlVXAiXSwicmFuZ2VNYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OyIsIm1hcHBpbmdzIjoiQUFBQTs7OzsrQkF3UkE7OztlQUFBOzs7eUJBdFJ5QjtvQkFDd0I7eUJBRVo7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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.140",
4
+ "version": "1.3.142",
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.",
@@ -11,7 +11,7 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "easy": "^16.0.19",
14
- "easy-with-style": "^3.0.343",
14
+ "easy-with-style": "^3.0.348",
15
15
  "necessary": "^13.6.1"
16
16
  },
17
17
  "devDependencies": {
@@ -121,17 +121,17 @@ function stopDrag(aborted) {
121
121
 
122
122
  function drag(mouseTop, mouseLeft) {
123
123
  const scrollTop = window.getScrollTop(),
124
- scrollLeft = window.getScrollLeft(),
125
- topOffset = this.getTopOffset(),
126
- leftOffset = this.getLeftOffset(),
127
- startMouseTop = this.getStartMouseTop(),
128
- startMouseLeft = this.getStartMouseLeft(),
129
- customEventType = DRAG_CUSTOM_EVENT_TYPE,
130
- relativeMouseTop = mouseTop - startMouseTop,
131
- relativeMouseLeft = mouseLeft - startMouseLeft;
124
+ scrollLeft = window.getScrollLeft(),
125
+ topOffset = this.getTopOffset(),
126
+ leftOffset = this.getLeftOffset(),
127
+ startMouseTop = this.getStartMouseTop(),
128
+ startMouseLeft = this.getStartMouseLeft(),
129
+ customEventType = DRAG_CUSTOM_EVENT_TYPE,
130
+ relativeMouseTop = mouseTop - startMouseTop,
131
+ relativeMouseLeft = mouseLeft - startMouseLeft;
132
132
 
133
133
  let top = startMouseTop + relativeMouseTop - topOffset - scrollTop,
134
- left = startMouseLeft + relativeMouseLeft - leftOffset - scrollLeft;
134
+ left = startMouseLeft + relativeMouseLeft - leftOffset - scrollLeft;
135
135
 
136
136
  top = `${top}px`; ///
137
137
  left = `${left}px`; ///