onlyOnce.js
 1  "use strict";
 2  
 3  Object.defineProperty(exports, "__esModule", {
 4      value: true
 5  });
 6  exports.default = onlyOnce;
 7  function onlyOnce(fn) {
 8      return function (...args) {
 9          if (fn === null) throw new Error("Callback was already called.");
10          var callFn = fn;
11          fn = null;
12          callFn.apply(this, args);
13      };
14  }
15  module.exports = exports["default"];