You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
83 lines
2.6 KiB
83 lines
2.6 KiB
"use strict";
|
|
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
exports.NativeDragSource = void 0;
|
|
|
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
|
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
|
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
|
|
|
|
var NativeDragSource =
|
|
/*#__PURE__*/
|
|
function () {
|
|
function NativeDragSource(config) {
|
|
_classCallCheck(this, NativeDragSource);
|
|
|
|
this.config = config;
|
|
this.item = {};
|
|
this.initializeExposedProperties();
|
|
}
|
|
|
|
_createClass(NativeDragSource, [{
|
|
key: "initializeExposedProperties",
|
|
value: function initializeExposedProperties() {
|
|
var _this = this;
|
|
|
|
Object.keys(this.config.exposeProperties).forEach(function (property) {
|
|
Object.defineProperty(_this.item, property, {
|
|
configurable: true,
|
|
enumerable: true,
|
|
get: function get() {
|
|
// eslint-disable-next-line no-console
|
|
console.warn("Browser doesn't allow reading \"".concat(property, "\" until the drop event."));
|
|
return null;
|
|
}
|
|
});
|
|
});
|
|
}
|
|
}, {
|
|
key: "loadDataTransfer",
|
|
value: function loadDataTransfer(dataTransfer) {
|
|
var _this2 = this;
|
|
|
|
if (dataTransfer) {
|
|
var newProperties = {};
|
|
Object.keys(this.config.exposeProperties).forEach(function (property) {
|
|
newProperties[property] = {
|
|
value: _this2.config.exposeProperties[property](dataTransfer, _this2.config.matchesTypes),
|
|
configurable: true,
|
|
enumerable: true
|
|
};
|
|
});
|
|
Object.defineProperties(this.item, newProperties);
|
|
}
|
|
}
|
|
}, {
|
|
key: "canDrag",
|
|
value: function canDrag() {
|
|
return true;
|
|
}
|
|
}, {
|
|
key: "beginDrag",
|
|
value: function beginDrag() {
|
|
return this.item;
|
|
}
|
|
}, {
|
|
key: "isDragging",
|
|
value: function isDragging(monitor, handle) {
|
|
return handle === monitor.getSourceId();
|
|
}
|
|
}, {
|
|
key: "endDrag",
|
|
value: function endDrag() {// empty
|
|
}
|
|
}]);
|
|
|
|
return NativeDragSource;
|
|
}();
|
|
|
|
exports.NativeDragSource = NativeDragSource; |