tomzx / gkm

⚠ Unsupported/Unmaintained ⚠️️ Global Keyboard and Mouse listener for node.js.
MIT License
52 stars 16 forks source link

EventEmitter2 is not a constructor #23

Open eyesmarty opened 3 years ago

eyesmarty commented 3 years ago

Framework: electron OS: MAC catalina 10.15.6 Package.json "eventemitter2": "^6.4.4", "gkm": "^0.2.0", Error TypeError: EventEmitter2 is not a constructor at eval (webpack:///./node_modules/gkm/gkm.js?:9:14) at Object../node_modules/gkm/gkm.js (/Users/**///dist_electron/index.js:1622:1) at webpack_require (/Users///team-viewer/dist_electron/index.js:20:30) at eval (webpack:///./src/background.js?:15:13) at Module../src/background.js (/Users///***/dist_electron/index.js:3802:1) at webpack_require (/Users////distelectron/index.js:20:30) at eval (webpack:///multi./src/background.js?:1:18) at Object.0 (/Users////dist_electron/index.js:3813:1) at __webpack_require__ (/Users////dist_electron/index.js:20:30) at /Users////dist_electron/index.js:84:18

tomzx commented 3 years ago

gkm 0.2.0 is based on an old version of eventEmitter2 (~0.4.13). I believe that starting with version 1.0.0, instead of exporting EventEmitter2 in the exports, they turned it into the exports (e.g., exports.EventEmitter2 = EventEmitter vs exports = EventEmitter).

My guess is that using the latest version of eventemitter2 (or ^6.4.4 in this case) is creating this conflict. If you don't need the latest eventemitter2, I'd suggest removing that dependency.

As I don't maintain this package anymore, I do not plan on fixing this issue or making further releases.