VaKeR CYBER ARMY
Logo of a company Server : Apache/2.4.41 (Ubuntu)
System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 7.4.33
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Directory :  /var/www/html/libs/absol-full/dist/js/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /var/www/html/libs/absol-full/dist/js/mdls__absol-acomp__js__DropZone.js
/*** module: node_modules/absol-acomp/js/DropZone.js ***/
"use strict";

Object.defineProperty(exports, "__esModule", {
  value: true
});
exports.default = void 0;

require("../css/dropzone.css");

var _ACore = _interopRequireDefault(require("../ACore"));

var _AElement = _interopRequireDefault(require("absol/src/HTML5/AElement"));

var _EventEmitter = require("absol/src/HTML5/EventEmitter");


var _ = _ACore.default._;
var $ = _ACore.default.$;
/***
 * @extends AElement
 * @constructor
 */

function DropZone() {
  this.defineEvent(['fileenter', 'fileleave', 'filedrop']);
  this.addClass('as-drop-zone');
  this.on('dragover', this.eventHandler.dragZoneFileOver).on('drop', this.eventHandler.dropZoneFileDrop);
  this._fileOverTimeout = -1;
}

DropZone.tag = 'dropzone';

DropZone.render = function () {
  return _('div');
};

DropZone.eventHandler = {};

DropZone.eventHandler.dragZoneFileOver = function (event) {
  event.preventDefault();

  if (this._fileOverTimeout > 0) {
    clearTimeout(this._fileOverTimeout);
  } else {
    this.addClass('as-drag-over');
    this.emit('fileenter', event, this);
  }

  this._fileOverTimeout = setTimeout(this.eventHandler.dragZoneFileOverEnd, 200);
};
/***
 *
 * @param {DragEvent} event
 */


DropZone.eventHandler.dropZoneFileDrop = function (event) {
  if (this._fileOverTimeout > 0) {
    clearTimeout(this._fileOverTimeout);
    this._fileOverTimeout = -1;
  }

  event.preventDefault();
  this.removeClass('as-drag-over');
  event._files = null;
  if (!event.hasOwnProperty('files')) Object.defineProperty(event, 'files', {
    get: function () {
      if (this._files) return this._files;
      var files = [];
      var file;

      if (event.dataTransfer.items) {
        for (var i = 0; i < event.dataTransfer.items.length; i++) {
          if (event.dataTransfer.items[i].kind === 'file') {
            file = event.dataTransfer.items[i].getAsFile();
            files.push(file);
          }
        }
      } else {
        // Use DataTransfer interface to access the file(s)
        for (var i = 0; i < event.dataTransfer.files.length; i++) {
          files.push(event.dataTransfer.files[i]);
        }
      }

      this._files = files;
      return this._files;
    }
  });
  this.emit('filedrop', event, this);
};

DropZone.eventHandler.dragZoneFileOverEnd = function () {
  this._fileOverTimeout = -1;
  this.removeClass('as-drag-over');
  this.emit('fileleave', {
    type: 'fileleave'
  }, this);
};

_ACore.default.install(DropZone);

var _default = DropZone;
exports.default = _default;

VaKeR 2022