easy-drag-and-drop 1.3.178 → 1.3.179

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.
@@ -10,10 +10,25 @@ Object.defineProperty(exports, "default", {
10
10
  });
11
11
  var _reference = require("../utilities/reference");
12
12
  var _customEventTypes = require("../customEventTypes");
13
- var dropElement = null;
13
+ function getDropElement() {
14
+ var dropElement = globalThis.dropElement;
15
+ return dropElement;
16
+ }
17
+ function setDropElement(dropElement) {
18
+ Object.assign(globalThis, {
19
+ dropElement: dropElement
20
+ });
21
+ }
22
+ function resetDropElement() {
23
+ var dropElement = null;
24
+ setDropElement(dropElement);
25
+ }
14
26
  Object.assign(globalThis, {
15
- dropElement: dropElement
27
+ getDropElement: getDropElement,
28
+ setDropElement: setDropElement,
29
+ resetDropElement: resetDropElement
16
30
  });
31
+ resetDropElement();
17
32
  function drop(event, element, dragElement, aborted, done) {
18
33
  var customEventType = _customEventTypes.DROP_CUSTOM_EVENT_TYPE;
19
34
  this.callCustomHandlersAsync(customEventType, event, element, dragElement, aborted, done);
@@ -72,29 +87,24 @@ var _default = {
72
87
  offCustomDragOver: offCustomDragOver
73
88
  };
74
89
  function mouseOutHandler(event, element) {
75
- var dragElement = globalThis.dragElement;
90
+ var dragElement = getDragElement();
76
91
  if (dragElement !== null) {
77
- var dropElement = null; ///
78
- Object.assign(globalThis, {
79
- dropElement: dropElement
80
- });
92
+ resetDropElement();
81
93
  this.dragOut(event, element, dragElement);
82
94
  }
83
95
  event.stopPropagation();
84
96
  }
85
97
  function mouseOverHandler(event, element) {
86
- var dragElement = globalThis.dragElement;
98
+ var dragElement = getDragElement();
87
99
  if (dragElement !== null) {
88
100
  var dropElement = this, dragElementIgnoresDropElement = (0, _reference.checkDragElementIgnoresDropElement)(dragElement, dropElement);
89
101
  if (dragElementIgnoresDropElement) {
90
102
  return;
91
103
  }
92
- Object.assign(globalThis, {
93
- dropElement: dropElement
94
- });
104
+ setDropElement(dropElement);
95
105
  this.dragOver(event, element, dragElement);
96
106
  }
97
107
  event.stopPropagation();
98
108
  }
99
109
 
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvZHJvcC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgY2hlY2tEcmFnRWxlbWVudElnbm9yZXNEcm9wRWxlbWVudCB9IGZyb20gXCIuLi91dGlsaXRpZXMvcmVmZXJlbmNlXCI7XG5pbXBvcnQgeyBEUk9QX0NVU1RPTV9FVkVOVF9UWVBFLCBEUkFHX09VVF9DVVNUT01fRVZFTlRfVFlQRSwgRFJBR19PVkVSX0NVU1RPTV9FVkVOVF9UWVBFIH0gZnJvbSBcIi4uL2N1c3RvbUV2ZW50VHlwZXNcIjtcblxuY29uc3QgZHJvcEVsZW1lbnQgPSBudWxsO1xuXG5PYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHtcbiAgZHJvcEVsZW1lbnRcbn0pO1xuXG5mdW5jdGlvbiBkcm9wKGV2ZW50LCBlbGVtZW50LCBkcmFnRWxlbWVudCwgYWJvcnRlZCwgZG9uZSkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBEUk9QX0NVU1RPTV9FVkVOVF9UWVBFO1xuXG4gIHRoaXMuY2FsbEN1c3RvbUhhbmRsZXJzQXN5bmMoY3VzdG9tRXZlbnRUeXBlLCBldmVudCwgZWxlbWVudCwgZHJhZ0VsZW1lbnQsIGFib3J0ZWQsIGRvbmUpO1xufVxuXG5mdW5jdGlvbiBkcmFnT3V0KGV2ZW50LCBlbGVtZW50LCBkcmFnRWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBEUkFHX09VVF9DVVNUT01fRVZFTlRfVFlQRTtcblxuICB0aGlzLmNhbGxDdXN0b21IYW5kbGVycyhjdXN0b21FdmVudFR5cGUsIGV2ZW50LCBlbGVtZW50LCBkcmFnRWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIGRyYWdPdmVyKGV2ZW50LCBlbGVtZW50LCBkcmFnRWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBEUkFHX09WRVJfQ1VTVE9NX0VWRU5UX1RZUEU7XG5cbiAgdGhpcy5jYWxsQ3VzdG9tSGFuZGxlcnMoY3VzdG9tRXZlbnRUeXBlLCBldmVudCwgZWxlbWVudCwgZHJhZ0VsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBlbmFibGVEcm9wKCkge1xuICB0aGlzLm9uTW91c2VPdXQobW91c2VPdXRIYW5kbGVyLCB0aGlzKTtcbiAgdGhpcy5vbk1vdXNlT3Zlcihtb3VzZU92ZXJIYW5kbGVyLCB0aGlzKTtcbn1cblxuZnVuY3Rpb24gZGlzYWJsZURyb3AoKSB7XG4gIHRoaXMub2ZmTW91c2VPdXQobW91c2VPdXRIYW5kbGVyLCB0aGlzKTtcbiAgdGhpcy5vZmZNb3VzZU92ZXIobW91c2VPdmVySGFuZGxlciwgdGhpcyk7XG59XG5cbmZ1bmN0aW9uIG9uQ3VzdG9tRHJvcChkcm9wQ3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBEUk9QX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICBjdXN0b21IYW5kbGVyID0gZHJvcEN1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9uQ3VzdG9tRXZlbnQoY3VzdG9tRXZlbnRUeXBlLCBjdXN0b21IYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb2ZmQ3VzdG9tRHJvcChkcm9wQ3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBEUk9QX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICBjdXN0b21IYW5kbGVyID0gZHJvcEN1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9mZkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9uQ3VzdG9tRHJhZ091dChkcmFnT3V0Q3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBEUkFHX09VVF9DVVNUT01fRVZFTlRfVFlQRSxcbiAgICAgICAgY3VzdG9tSGFuZGxlciA9IGRyYWdPdXRDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vbkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZkN1c3RvbURyYWdPdXQoZHJhZ091dEN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgY3VzdG9tRXZlbnRUeXBlID0gRFJBR19PVVRfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSBkcmFnT3V0Q3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub2ZmQ3VzdG9tRXZlbnQoY3VzdG9tRXZlbnRUeXBlLCBjdXN0b21IYW5kbGVyLCBlbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gb25DdXN0b21EcmFnT3ZlcihkcmFnT3ZlckN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgY3VzdG9tRXZlbnRUeXBlID0gRFJBR19PVkVSX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICBjdXN0b21IYW5kbGVyID0gZHJhZ092ZXJDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vbkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZkN1c3RvbURyYWdPdmVyKGRyYWdPdmVyQ3VzdG9tSGFuZGxlciwgZWxlbWVudCkge1xuICBjb25zdCBjdXN0b21FdmVudFR5cGUgPSBEUkFHX09WRVJfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSBkcmFnT3ZlckN1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9mZkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmV4cG9ydCBkZWZhdWx0IHtcbiAgZHJvcCxcbiAgZHJhZ091dCxcbiAgZHJhZ092ZXIsXG4gIGVuYWJsZURyb3AsXG4gIGRpc2FibGVEcm9wLFxuICBvbkN1c3RvbURyb3AsXG4gIG9mZkN1c3RvbURyb3AsXG4gIG9uQ3VzdG9tRHJhZ091dCxcbiAgb2ZmQ3VzdG9tRHJhZ091dCxcbiAgb25DdXN0b21EcmFnT3ZlcixcbiAgb2ZmQ3VzdG9tRHJhZ092ZXJcbn1cblxuZnVuY3Rpb24gbW91c2VPdXRIYW5kbGVyKGV2ZW50LCBlbGVtZW50KSB7XG4gIGNvbnN0IHsgZHJhZ0VsZW1lbnQgfSA9IGdsb2JhbFRoaXM7XG5cbiAgaWYgKGRyYWdFbGVtZW50ICE9PSBudWxsKSB7XG4gICAgY29uc3QgZHJvcEVsZW1lbnQgPSBudWxsOyAvLy9cblxuICAgIE9iamVjdC5hc3NpZ24oZ2xvYmFsVGhpcywge1xuICAgICAgZHJvcEVsZW1lbnRcbiAgICB9KTtcblxuICAgIHRoaXMuZHJhZ091dChldmVudCwgZWxlbWVudCwgZHJhZ0VsZW1lbnQpO1xuICB9XG5cbiAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG59XG5cbmZ1bmN0aW9uIG1vdXNlT3ZlckhhbmRsZXIoZXZlbnQsIGVsZW1lbnQpIHtcbiAgY29uc3QgeyBkcmFnRWxlbWVudCB9ID0gZ2xvYmFsVGhpcztcblxuICBpZiAoZHJhZ0VsZW1lbnQgIT09IG51bGwpIHtcbiAgICBjb25zdCBkcm9wRWxlbWVudCA9IHRoaXMsIC8vL1xuICAgICAgICAgIGRyYWdFbGVtZW50SWdub3Jlc0Ryb3BFbGVtZW50ID0gY2hlY2tEcmFnRWxlbWVudElnbm9yZXNEcm9wRWxlbWVudChkcmFnRWxlbWVudCwgZHJvcEVsZW1lbnQpO1xuXG4gICAgaWYgKGRyYWdFbGVtZW50SWdub3Jlc0Ryb3BFbGVtZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgT2JqZWN0LmFzc2lnbihnbG9iYWxUaGlzLCB7XG4gICAgICBkcm9wRWxlbWVudFxuICAgIH0pO1xuXG4gICAgdGhpcy5kcmFnT3ZlcihldmVudCwgZWxlbWVudCwgZHJhZ0VsZW1lbnQpO1xuICB9XG5cbiAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG59XG4iXSwibmFtZXMiOlsiZHJvcEVsZW1lbnQiLCJPYmplY3QiLCJhc3NpZ24iLCJnbG9iYWxUaGlzIiwiZHJvcCIsImV2ZW50IiwiZWxlbWVudCIsImRyYWdFbGVtZW50IiwiYWJvcnRlZCIsImRvbmUiLCJjdXN0b21FdmVudFR5cGUiLCJEUk9QX0NVU1RPTV9FVkVOVF9UWVBFIiwiY2FsbEN1c3RvbUhhbmRsZXJzQXN5bmMiLCJkcmFnT3V0IiwiRFJBR19PVVRfQ1VTVE9NX0VWRU5UX1RZUEUiLCJjYWxsQ3VzdG9tSGFuZGxlcnMiLCJkcmFnT3ZlciIsIkRSQUdfT1ZFUl9DVVNUT01fRVZFTlRfVFlQRSIsImVuYWJsZURyb3AiLCJvbk1vdXNlT3V0IiwibW91c2VPdXRIYW5kbGVyIiwib25Nb3VzZU92ZXIiLCJtb3VzZU92ZXJIYW5kbGVyIiwiZGlzYWJsZURyb3AiLCJvZmZNb3VzZU91dCIsIm9mZk1vdXNlT3ZlciIsIm9uQ3VzdG9tRHJvcCIsImRyb3BDdXN0b21IYW5kbGVyIiwiY3VzdG9tSGFuZGxlciIsIm9uQ3VzdG9tRXZlbnQiLCJvZmZDdXN0b21Ecm9wIiwib2ZmQ3VzdG9tRXZlbnQiLCJvbkN1c3RvbURyYWdPdXQiLCJkcmFnT3V0Q3VzdG9tSGFuZGxlciIsIm9mZkN1c3RvbURyYWdPdXQiLCJvbkN1c3RvbURyYWdPdmVyIiwiZHJhZ092ZXJDdXN0b21IYW5kbGVyIiwib2ZmQ3VzdG9tRHJhZ092ZXIiLCJzdG9wUHJvcGFnYXRpb24iLCJkcmFnRWxlbWVudElnbm9yZXNEcm9wRWxlbWVudCIsImNoZWNrRHJhZ0VsZW1lbnRJZ25vcmVzRHJvcEVsZW1lbnQiXSwibWFwcGluZ3MiOiJBQUFBOzs7OytCQWlGQTs7O2VBQUE7Ozt5QkEvRW1EO2dDQUM2QztBQUVoRyxJQUFNQSxjQUFjO0FBRXBCQyxPQUFPQyxNQUFNLENBQUNDLFlBQVk7SUFDeEJILGFBQUFBO0FBQ0Y7QUFFQSxTQUFTSSxLQUFLQyxLQUFLLEVBQUVDLE9BQU8sRUFBRUMsV0FBVyxFQUFFQyxPQUFPLEVBQUVDLElBQUk7SUFDdEQsSUFBTUMs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
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taXhpbnMvZHJvcC5qcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcInVzZSBzdHJpY3RcIjtcblxuaW1wb3J0IHsgY2hlY2tEcmFnRWxlbWVudElnbm9yZXNEcm9wRWxlbWVudCB9IGZyb20gXCIuLi91dGlsaXRpZXMvcmVmZXJlbmNlXCI7XG5pbXBvcnQgeyBEUk9QX0NVU1RPTV9FVkVOVF9UWVBFLCBEUkFHX09VVF9DVVNUT01fRVZFTlRfVFlQRSwgRFJBR19PVkVSX0NVU1RPTV9FVkVOVF9UWVBFIH0gZnJvbSBcIi4uL2N1c3RvbUV2ZW50VHlwZXNcIjtcblxuZnVuY3Rpb24gZ2V0RHJvcEVsZW1lbnQoKSB7XG4gIGNvbnN0IHsgZHJvcEVsZW1lbnQgfSA9IGdsb2JhbFRoaXM7XG5cbiAgcmV0dXJuIGRyb3BFbGVtZW50O1xufVxuXG5mdW5jdGlvbiBzZXREcm9wRWxlbWVudChkcm9wRWxlbWVudCkge1xuICBPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHtcbiAgICBkcm9wRWxlbWVudFxuICB9KTtcbn1cblxuZnVuY3Rpb24gcmVzZXREcm9wRWxlbWVudCgpIHtcbiAgY29uc3QgZHJvcEVsZW1lbnQgPSBudWxsO1xuXG4gIHNldERyb3BFbGVtZW50KGRyb3BFbGVtZW50KTtcbn1cblxuT2JqZWN0LmFzc2lnbihnbG9iYWxUaGlzLCB7XG4gIGdldERyb3BFbGVtZW50LFxuICBzZXREcm9wRWxlbWVudCxcbiAgcmVzZXREcm9wRWxlbWVudFxufSk7XG5cbnJlc2V0RHJvcEVsZW1lbnQoKTtcblxuZnVuY3Rpb24gZHJvcChldmVudCwgZWxlbWVudCwgZHJhZ0VsZW1lbnQsIGFib3J0ZWQsIGRvbmUpIHtcbiAgY29uc3QgY3VzdG9tRXZlbnRUeXBlID0gRFJPUF9DVVNUT01fRVZFTlRfVFlQRTtcblxuICB0aGlzLmNhbGxDdXN0b21IYW5kbGVyc0FzeW5jKGN1c3RvbUV2ZW50VHlwZSwgZXZlbnQsIGVsZW1lbnQsIGRyYWdFbGVtZW50LCBhYm9ydGVkLCBkb25lKTtcbn1cblxuZnVuY3Rpb24gZHJhZ091dChldmVudCwgZWxlbWVudCwgZHJhZ0VsZW1lbnQpIHtcbiAgY29uc3QgY3VzdG9tRXZlbnRUeXBlID0gRFJBR19PVVRfQ1VTVE9NX0VWRU5UX1RZUEU7XG5cbiAgdGhpcy5jYWxsQ3VzdG9tSGFuZGxlcnMoY3VzdG9tRXZlbnRUeXBlLCBldmVudCwgZWxlbWVudCwgZHJhZ0VsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBkcmFnT3ZlcihldmVudCwgZWxlbWVudCwgZHJhZ0VsZW1lbnQpIHtcbiAgY29uc3QgY3VzdG9tRXZlbnRUeXBlID0gRFJBR19PVkVSX0NVU1RPTV9FVkVOVF9UWVBFO1xuXG4gIHRoaXMuY2FsbEN1c3RvbUhhbmRsZXJzKGN1c3RvbUV2ZW50VHlwZSwgZXZlbnQsIGVsZW1lbnQsIGRyYWdFbGVtZW50KTtcbn1cblxuZnVuY3Rpb24gZW5hYmxlRHJvcCgpIHtcbiAgdGhpcy5vbk1vdXNlT3V0KG1vdXNlT3V0SGFuZGxlciwgdGhpcyk7XG4gIHRoaXMub25Nb3VzZU92ZXIobW91c2VPdmVySGFuZGxlciwgdGhpcyk7XG59XG5cbmZ1bmN0aW9uIGRpc2FibGVEcm9wKCkge1xuICB0aGlzLm9mZk1vdXNlT3V0KG1vdXNlT3V0SGFuZGxlciwgdGhpcyk7XG4gIHRoaXMub2ZmTW91c2VPdmVyKG1vdXNlT3ZlckhhbmRsZXIsIHRoaXMpO1xufVxuXG5mdW5jdGlvbiBvbkN1c3RvbURyb3AoZHJvcEN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgY3VzdG9tRXZlbnRUeXBlID0gRFJPUF9DVVNUT01fRVZFTlRfVFlQRSxcbiAgICAgICAgY3VzdG9tSGFuZGxlciA9IGRyb3BDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vbkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9mZkN1c3RvbURyb3AoZHJvcEN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgY3VzdG9tRXZlbnRUeXBlID0gRFJPUF9DVVNUT01fRVZFTlRfVFlQRSxcbiAgICAgICAgY3VzdG9tSGFuZGxlciA9IGRyb3BDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vZmZDdXN0b21FdmVudChjdXN0b21FdmVudFR5cGUsIGN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvbkN1c3RvbURyYWdPdXQoZHJhZ091dEN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgY3VzdG9tRXZlbnRUeXBlID0gRFJBR19PVVRfQ1VTVE9NX0VWRU5UX1RZUEUsXG4gICAgICAgIGN1c3RvbUhhbmRsZXIgPSBkcmFnT3V0Q3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub25DdXN0b21FdmVudChjdXN0b21FdmVudFR5cGUsIGN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZDdXN0b21EcmFnT3V0KGRyYWdPdXRDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IERSQUdfT1VUX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICBjdXN0b21IYW5kbGVyID0gZHJhZ091dEN1c3RvbUhhbmRsZXI7ICAvLy9cblxuICB0aGlzLm9mZkN1c3RvbUV2ZW50KGN1c3RvbUV2ZW50VHlwZSwgY3VzdG9tSGFuZGxlciwgZWxlbWVudCk7XG59XG5cbmZ1bmN0aW9uIG9uQ3VzdG9tRHJhZ092ZXIoZHJhZ092ZXJDdXN0b21IYW5kbGVyLCBlbGVtZW50KSB7XG4gIGNvbnN0IGN1c3RvbUV2ZW50VHlwZSA9IERSQUdfT1ZFUl9DVVNUT01fRVZFTlRfVFlQRSxcbiAgICAgICAgY3VzdG9tSGFuZGxlciA9IGRyYWdPdmVyQ3VzdG9tSGFuZGxlcjsgIC8vL1xuXG4gIHRoaXMub25DdXN0b21FdmVudChjdXN0b21FdmVudFR5cGUsIGN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5mdW5jdGlvbiBvZmZDdXN0b21EcmFnT3ZlcihkcmFnT3ZlckN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpIHtcbiAgY29uc3QgY3VzdG9tRXZlbnRUeXBlID0gRFJBR19PVkVSX0NVU1RPTV9FVkVOVF9UWVBFLFxuICAgICAgICBjdXN0b21IYW5kbGVyID0gZHJhZ092ZXJDdXN0b21IYW5kbGVyOyAgLy8vXG5cbiAgdGhpcy5vZmZDdXN0b21FdmVudChjdXN0b21FdmVudFR5cGUsIGN1c3RvbUhhbmRsZXIsIGVsZW1lbnQpO1xufVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGRyb3AsXG4gIGRyYWdPdXQsXG4gIGRyYWdPdmVyLFxuICBlbmFibGVEcm9wLFxuICBkaXNhYmxlRHJvcCxcbiAgb25DdXN0b21Ecm9wLFxuICBvZmZDdXN0b21Ecm9wLFxuICBvbkN1c3RvbURyYWdPdXQsXG4gIG9mZkN1c3RvbURyYWdPdXQsXG4gIG9uQ3VzdG9tRHJhZ092ZXIsXG4gIG9mZkN1c3RvbURyYWdPdmVyXG59XG5cbmZ1bmN0aW9uIG1vdXNlT3V0SGFuZGxlcihldmVudCwgZWxlbWVudCkge1xuICBjb25zdCBkcmFnRWxlbWVudCA9IGdldERyYWdFbGVtZW50KCk7XG5cbiAgaWYgKGRyYWdFbGVtZW50ICE9PSBudWxsKSB7XG4gICAgcmVzZXREcm9wRWxlbWVudCgpO1xuXG4gICAgdGhpcy5kcmFnT3V0KGV2ZW50LCBlbGVtZW50LCBkcmFnRWxlbWVudCk7XG4gIH1cblxuICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbn1cblxuZnVuY3Rpb24gbW91c2VPdmVySGFuZGxlcihldmVudCwgZWxlbWVudCkge1xuICBjb25zdCBkcmFnRWxlbWVudCA9IGdldERyYWdFbGVtZW50KCk7XG5cbiAgaWYgKGRyYWdFbGVtZW50ICE9PSBudWxsKSB7XG4gICAgY29uc3QgZHJvcEVsZW1lbnQgPSB0aGlzLCAvLy9cbiAgICAgICAgICBkcmFnRWxlbWVudElnbm9yZXNEcm9wRWxlbWVudCA9IGNoZWNrRHJhZ0VsZW1lbnRJZ25vcmVzRHJvcEVsZW1lbnQoZHJhZ0VsZW1lbnQsIGRyb3BFbGVtZW50KTtcblxuICAgIGlmIChkcmFnRWxlbWVudElnbm9yZXNEcm9wRWxlbWVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHNldERyb3BFbGVtZW50KGRyb3BFbGVtZW50KTtcblxuICAgIHRoaXMuZHJhZ092ZXIoZXZlbnQsIGVsZW1lbnQsIGRyYWdFbGVtZW50KTtcbiAgfVxuXG4gIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xufVxuIl0sIm5hbWVzIjpbImdldERyb3BFbGVtZW50IiwiZHJvcEVsZW1lbnQiLCJnbG9iYWxUaGlzIiwic2V0RHJvcEVsZW1lbnQiLCJPYmplY3QiLCJhc3NpZ24iLCJyZXNldERyb3BFbGVtZW50IiwiZHJvcCIsImV2ZW50IiwiZWxlbWVudCIsImRyYWdFbGVtZW50IiwiYWJvcnRlZCIsImRvbmUiLCJjdXN0b21FdmVudFR5cGUiLCJEUk9QX0NVU1RPTV9FVkVOVF9UWVBFIiwiY2FsbEN1c3RvbUhhbmRsZXJzQXN5bmMiLCJkcmFnT3V0IiwiRFJBR19PVVRfQ1VTVE9NX0VWRU5UX1RZUEUiLCJjYWxsQ3VzdG9tSGFuZGxlcnMiLCJkcmFnT3ZlciIsIkRSQUdfT1ZFUl9DVVNUT01fRVZFTlRfVFlQRSIsImVuYWJsZURyb3AiLCJvbk1vdXNlT3V0IiwibW91c2VPdXRIYW5kbGVyIiwib25Nb3VzZU92ZXIiLCJtb3VzZU92ZXJIYW5kbGVyIiwiZGlzYWJsZURyb3AiLCJvZmZNb3VzZU91dCIsIm9mZk1vdXNlT3ZlciIsIm9uQ3VzdG9tRHJvcCIsImRyb3BDdXN0b21IYW5kbGVyIiwiY3VzdG9tSGFuZGxlciIsIm9uQ3VzdG9tRXZlbnQiLCJvZmZDdXN0b21Ecm9wIiwib2ZmQ3VzdG9tRXZlbnQiLCJvbkN1c3RvbURyYWdPdXQiLCJkcmFnT3V0Q3VzdG9tSGFuZGxlciIsIm9mZkN1c3RvbURyYWdPdXQiLCJvbkN1c3RvbURyYWdPdmVyIiwiZHJhZ092ZXJDdXN0b21IYW5kbGVyIiwib2ZmQ3VzdG9tRHJhZ092ZXIiLCJnZXREcmFnRWxlbWVudCIsInN0b3BQcm9wYWdhdGlvbiIsImRyYWdFbGVtZW50SWdub3Jlc0Ryb3BFbGVtZW50IiwiY2hlY2tEcmFnRWxlbWVudElnbm9yZXNEcm9wRWxlbWVudCJdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7K0JBcUdBOzs7ZUFBQTs7O3lCQW5HbUQ7Z0NBQzZDO0FBRWhHLFNBQVNBO0lBQ1AsSUFBTSxBQUFFQyxjQUFnQkMsV0FBaEJEO0lBRVIsT0FBT0E7QUFDVDtBQUVBLFNBQVNFLGVBQWVGLFdBQVc7SUFDakNHLE9BQU9DLE1BQU0sQ0FBQ0gsWUFBWTtRQUN4QkQsYUFBQUE7SUFDRjtBQUNGO0FBRUEsU0FBU0s7SUFDUCxJQUFNTCxjQUFjO0lBRXBCRSxlQUFlRjtBQUNqQjtBQUVBRyxPQUFPQyxNQUFNLENBQUNILFlBQVk7SUFDeEJGLGdCQUFBQTtJQUNBRyxnQkFBQUE7SUFDQUcsa0JBQUFBO0FBQ0Y7QUFFQUE7QUFFQSxTQUFTQyxLQUFLQyxLQUFLLEVBQUVDLE9BQU8sRUFBRUMsV0FBVyxFQUFFQyxPQUFPLEVBQUVDLElBQUk7SUFDdEQsSUFBTUMsa0JBQWtCQyx3Q0FBc0I7SUFFOUMsSUFBSSxDQUFDQyx1QkFBdUIsQ0FBQ0YsaUJBQWlCTCxPQUFPQyxTQUFTQyxhQUFhQyxTQUFTQztBQUN0RjtBQUVBLFNBQVNJLFFBQVFSLEtBQUssRUFBRUMsT0FBTyxFQUFFQyxXQUFXO0lBQzFDLElBQU1HLGtCQUFrQkksNENBQTBCO0lBRWxELElBQUksQ0FBQ0Msa0JBQWtCLENBQUNMLGlCQUFpQkwsT0FBT0MsU0FBU0M7QUFDM0Q7QUFFQSxTQUFTUyxTQUFTWCxLQUFLLEVBQUVDLE9BQU8sRUFBRUMsV0FBVztJQUMzQyxJQUFNRyxrQkFBa0JPLDZDQUEyQjtJQUVuRCxJQUFJLENBQUNGLGtCQUFrQixDQUFDTCxpQkFBaUJMLE9BQU9DLFNBQVNDO0FBQzNEO0FBRUEsU0FBU1c7SUFDUCxJQUFJLENBQUNDLFVBQVUsQ0FBQ0MsaUJBQWlCLElBQUk7SUFDckMsSUFBSSxD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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.178",
4
+ "version": "1.3.179",
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.",
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ import withStyle from "easy-with-style";
4
+
5
+ import { eventTypes } from "easy";
6
+ import { dragMixins, DragElement } from "../../../index"; ///
7
+
8
+ import style from "../../style";
9
+
10
+ const { DBLCLICK_EVENT_TYPE } = eventTypes;
11
+
12
+ class DragDiv extends DragElement {
13
+ doubleClickHandler = (event, element) => {
14
+ console.log("double click!")
15
+ }
16
+
17
+ didMount() {
18
+ this.enableDrag();
19
+
20
+ this.onEvent(DBLCLICK_EVENT_TYPE, this.doubleClickHandler, this);
21
+ }
22
+
23
+ willUnmount() {
24
+ this.offEvent(DBLCLICK_EVENT_TYPE, this.doubleClickHandler, this);
25
+
26
+ this.disableDrag();
27
+ }
28
+
29
+ childElements() {
30
+ return ("DRAG ELEMENT");
31
+ }
32
+
33
+ static tagName = "div";
34
+
35
+ static defaultProperties = {
36
+ className: "drag"
37
+ };
38
+ }
39
+
40
+ Object.assign(DragDiv.prototype, dragMixins);
41
+
42
+ export default withStyle(DragDiv)`
43
+
44
+ ${style}
45
+
46
+ background-color: red;
47
+
48
+ .dragging {
49
+ z-index: 1;
50
+ position: fixed;
51
+ pointer-events: none;
52
+ }
53
+
54
+ `;
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ import withStyle from "easy-with-style";
4
+
5
+ import { Element } from "easy";
6
+ import { dropMixins } from "../../../index"; ///
7
+
8
+ import style from "../../style";
9
+
10
+ class DropDiv extends Element {
11
+ dropCustomHandler = (event, element, dragElement, aborted, done) => {
12
+ if (dragElement !== null) {
13
+ dragElement.remove();
14
+ }
15
+
16
+ done();
17
+ }
18
+
19
+ dragOutCustomHandler = (event, element) => {
20
+ this.removeClass("drag-over");
21
+ }
22
+
23
+ dragOverCustomHandler = (event, element) => {
24
+ this.addClass("drag-over");
25
+ }
26
+
27
+ getReference() {
28
+ const { reference = null } = this.properties;
29
+
30
+ return reference;
31
+ }
32
+
33
+ didMount() {
34
+ this.enableDrop();
35
+
36
+ this.onCustomDrop(this.dropCustomHandler);
37
+ this.onCustomDragOut(this.dragOutCustomHandler);
38
+ this.onCustomDragOver(this.dragOverCustomHandler);
39
+ }
40
+
41
+ willUnmount() {
42
+ this.disableDrop();
43
+
44
+ this.offCustomDrop(this.dropCustomHandler);
45
+ this.offCustomDragOut(this.dragOutCustomHandler);
46
+ this.offCustomDragOver(this.dragOverCustomHandler);
47
+ }
48
+
49
+ childElements() {
50
+ return "DROP ELEMENT";
51
+ }
52
+
53
+ static tagName = "div";
54
+
55
+ static ignoredProperties = [
56
+ "reference"
57
+ ];
58
+
59
+ static defaultProperties = {
60
+ className: "drop",
61
+ reference: "drop-div"
62
+ };
63
+ }
64
+
65
+ Object.assign(DropDiv.prototype, dropMixins);
66
+
67
+ export default withStyle(DropDiv)`
68
+
69
+ ${style}
70
+
71
+ margin-bottom: 10rem;
72
+ background-color: green;
73
+
74
+ .drag-over {
75
+ background-color: blue;
76
+ }
77
+
78
+ `;
@@ -12,12 +12,32 @@ const { ESCAPE_KEY_CODE } = keyCodes,
12
12
  { BLUR_EVENT_TYPE } = eventTypes,
13
13
  { LEFT_MOUSE_BUTTON } = mouseButtons;
14
14
 
15
- const dragElement = null;
15
+ function getDragElement() {
16
+ const { dragElement } = globalThis;
17
+
18
+ return dragElement;
19
+ }
20
+
21
+ function setDragElement(dragElement) {
22
+ Object.assign(globalThis, {
23
+ dragElement
24
+ });
25
+ }
26
+
27
+ function resetDragElement() {
28
+ const dragElement = null;
29
+
30
+ setDragElement(dragElement);
31
+ }
16
32
 
17
33
  Object.assign(globalThis, {
18
- dragElement
34
+ getDragElement,
35
+ setDragElement,
36
+ resetDragElement
19
37
  });
20
38
 
39
+ resetDragElement();
40
+
21
41
  function enableDrag() {
22
42
  const timeout = null,
23
43
  topOffset = null,
@@ -109,9 +129,7 @@ function startDrag(event, element, mouseTop, mouseLeft) {
109
129
 
110
130
  this.addClass("dragging");
111
131
 
112
- Object.assign(globalThis, {
113
- dragElement
114
- });
132
+ setDragElement(dragElement);
115
133
 
116
134
  this.setTopOffset(topOffset);
117
135
 
@@ -127,7 +145,7 @@ function startDrag(event, element, mouseTop, mouseLeft) {
127
145
  }
128
146
 
129
147
  function stopDrag(event, element, aborted) {
130
- const { dropElement } = globalThis,
148
+ const dropElement = getDropElement(),
131
149
  customEventType = STOP_DRAG_CUSTOM_EVENT_TYPE;
132
150
 
133
151
  window.offKeyDown(keyDownHandler, this);
@@ -136,11 +154,7 @@ function stopDrag(event, element, aborted) {
136
154
 
137
155
  const done = () => {
138
156
  this.callCustomHandlersAsync(customEventType, event, element, dropElement, aborted, () => {
139
- const dragElement = null;
140
-
141
- Object.assign(globalThis, {
142
- dragElement
143
- });
157
+ resetDragElement();
144
158
 
145
159
  this.removeClass("dragging");
146
160
  });
@@ -3,12 +3,32 @@
3
3
  import { checkDragElementIgnoresDropElement } from "../utilities/reference";
4
4
  import { DROP_CUSTOM_EVENT_TYPE, DRAG_OUT_CUSTOM_EVENT_TYPE, DRAG_OVER_CUSTOM_EVENT_TYPE } from "../customEventTypes";
5
5
 
6
- const dropElement = null;
6
+ function getDropElement() {
7
+ const { dropElement } = globalThis;
8
+
9
+ return dropElement;
10
+ }
11
+
12
+ function setDropElement(dropElement) {
13
+ Object.assign(globalThis, {
14
+ dropElement
15
+ });
16
+ }
17
+
18
+ function resetDropElement() {
19
+ const dropElement = null;
20
+
21
+ setDropElement(dropElement);
22
+ }
7
23
 
8
24
  Object.assign(globalThis, {
9
- dropElement
25
+ getDropElement,
26
+ setDropElement,
27
+ resetDropElement
10
28
  });
11
29
 
30
+ resetDropElement();
31
+
12
32
  function drop(event, element, dragElement, aborted, done) {
13
33
  const customEventType = DROP_CUSTOM_EVENT_TYPE;
14
34
 
@@ -94,14 +114,10 @@ export default {
94
114
  }
95
115
 
96
116
  function mouseOutHandler(event, element) {
97
- const { dragElement } = globalThis;
117
+ const dragElement = getDragElement();
98
118
 
99
119
  if (dragElement !== null) {
100
- const dropElement = null; ///
101
-
102
- Object.assign(globalThis, {
103
- dropElement
104
- });
120
+ resetDropElement();
105
121
 
106
122
  this.dragOut(event, element, dragElement);
107
123
  }
@@ -110,7 +126,7 @@ function mouseOutHandler(event, element) {
110
126
  }
111
127
 
112
128
  function mouseOverHandler(event, element) {
113
- const { dragElement } = globalThis;
129
+ const dragElement = getDragElement();
114
130
 
115
131
  if (dragElement !== null) {
116
132
  const dropElement = this, ///
@@ -120,9 +136,7 @@ function mouseOverHandler(event, element) {
120
136
  return;
121
137
  }
122
138
 
123
- Object.assign(globalThis, {
124
- dropElement
125
- });
139
+ setDropElement(dropElement);
126
140
 
127
141
  this.dragOver(event, element, dragElement);
128
142
  }