Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error loading in IE 11 #29

Open
RicardoJBarrios opened this issue Jan 27, 2018 · 7 comments
Open

Error loading in IE 11 #29

RicardoJBarrios opened this issue Jan 27, 2018 · 7 comments
Labels

Comments

@RicardoJBarrios
Copy link

Hello.

I have used ng2-logger in my project. It works fine in all browsers, but when try to load it in Explorer 11 the console gives me a SCRIPT1002: Syntax Error, and the line point to the log.js file, and the bundled line:

eval("\nObject.defineProperty(exports, \"__esModule\", { value: true });\nconst logger_1 = __webpack_require__(\"../../../../ng2-logger/logger.js\");\nconst level_1 = __webpack_require__(\"../../../../ng2-logger/level.js\");\nconst display_1 = __webpack_require__(\"../../../../ng2-logger/display.js\");\nconst include_1 = __webpack_require__(\"../../../../ng2-logger/include.js\");\nconst helper_1 = __webpack_require__(\"../../../../ng2-logger/helper.js\");\nif (helper_1.isNode) {\n  var randomcolor = __webpack_require__(\"../../../../randomcolor/randomColor.js\");\n}\nclass Log {\n  static create(name, ...level) {\n    let i;\n    if (Log.instances[name] === undefined) {\n      i = new logger_1.Logger(name, Log.getRandomColor(), Log.isDevelopmentMode, level, Log.isMutedModule(name), Log.levels.length > 0 ? Log.fixedWidth : undefined, Log.levels.length > 0 ? Log.display : undefined);\n      Log.instances[name] = i;\n    }\n    else {\n      i = Log.instances[name];\n    }\n    return i;\n  }\n  static getRandomColor() {\n    if (helper_1.isNode) {\n      return randomcolor({ luminosity: 'light', count: 10 });\n    }\n    let letters = '012345'.split('');\n    let color = '#';\n    color += letters[Math.round(Math.random() * 5)];\n    letters = '0123456789ABCDEF'.split('');\n    for (let i = 0; i < 5; i++) {\n      color += letters[Math.round(Math.random() * 15)];\n    }\n    if (color === undefined)\n      return this.getRandomColor();\n    return color;\n  }\n  static display(name, data, incomming, moduleName) {\n    if (!include_1.contain(Log.levels, incomming))\n      return;\n    if (incomming === level_1.Level.DATA) {\n      display_1.Display.msg(name, data, name, Log.instances[moduleName].color, level_1.Level.DATA, Log.instances[moduleName].fixedWidth);\n    }\n    if (incomming === level_1.Level.ERROR) {\n      display_1.Display.msg(name, data, name, Log.instances[moduleName].color, level_1.Level.ERROR, Log.instances[moduleName].fixedWidth);\n    }\n    if (incomming === level_1.Level.INFO) {\n      display_1.Display.msg(name, data, name, Log.instances[moduleName].color, level_1.Level.INFO, Log.instances[moduleName].fixedWidth);\n    }\n    if (incomming === level_1.Level.WARN) {\n      display_1.Display.msg(name, data, name, Log.instances[moduleName].color, level_1.Level.WARN, Log.instances[moduleName].fixedWidth);\n    }\n  }\n  static onlyLevel(...level) {\n    if (Log._logOnly) {\n      console.error('You should use funcion onlyLevel only once');\n      return;\n    }\n    if (Log._logOnly)\n      Log._logOnly = true;\n    if (level.length === 0)\n      return;\n    Log.levels = level;\n  }\n  static onlyModules(...modules) {\n    if (Log._logModules) {\n      console.error('You should use funcion onlyModules only once');\n      return;\n    }\n    if (modules.length === 0)\n      return;\n    Log.modules = modules;\n    Log.muteAllOtherModules();\n  }\n  static isMutedModule(moduleName) {\n    if (Log.modules.length == 0)\n      return false;\n    if (!include_1.contain(Log.modules, moduleName))\n      return true;\n    return false;\n  }\n  static muteAllOtherModules() {\n    for (var moduleName in Log.instances) {\n      if (!include_1.contain(Log.modules, moduleName))\n        Log.instances[moduleName].mute();\n    }\n  }\n  static setProductionMode() {\n    if (Log.modeIsSet) {\n      console.error('Mode is already set');\n      return;\n    }\n    if (console !== undefined && console.clear !== undefined) {\n      setTimeout(() => {\n        console.clear();\n        console.log = () => { };\n        console.error = () => { };\n        console.warn = () => { };\n        console.info = () => { };\n      });\n    }\n    logger_1.Logger.isProductionMode = true;\n    Log.isDevelopmentMode = false;\n  }\n}\nLog.instances = {};\nLog.fixedWidth = 0;\nLog._logOnly = false;\nLog.levels = [];\nLog._logModules = false;\nLog.modules = [];\nLog.isDevelopmentMode = true;\nLog.modeIsSet = false;\nexports.Log = Log;\n//# sourceURL=[module]\n//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIkM6L1VzZXJzL1JpY2FyZG8vUHJveWVjdG9zL253ZS9ud2UtYW5ndWxhci9ub2RlX21vZHVsZXMvbmcyLWxvZ2dlci9sb2cuanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQSw4Q0FBOEMsY0FBYztBQUM1RDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLDBCQUEwQixpQ0FBaUM7QUFDM0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBLG1CQUFtQixPQUFPO0FBQzFCO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsNkJBQTZCO0FBQzdCLCtCQUErQjtBQUMvQiw4QkFBOEI7QUFDOUIsOEJBQThCO0FBQzlCLE9BQU87QUFDUDtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBIiwiZmlsZSI6Ii4uLy4uLy4uLy4uL25nMi1sb2dnZXIvbG9nLmpzLmpzIiwic291cmNlc0NvbnRlbnQiOlsiXCJ1c2Ugc3RyaWN0XCI7XG5PYmplY3QuZGVmaW5lUHJvcGVydHkoZXhwb3J0cywgXCJfX2VzTW9kdWxlXCIsIHsgdmFsdWU6IHRydWUgfSk7XG5jb25zdCBsb2dnZXJfMSA9IHJlcXVpcmUoXCIuL2xvZ2dlclwiKTtcbmNvbnN0IGxldmVsXzEgPSByZXF1aXJlKFwiLi9sZXZlbFwiKTtcbmNvbnN0IGRpc3BsYXlfMSA9IHJlcXVpcmUoXCIuL2Rpc3BsYXlcIik7XG5jb25zdCBpbmNsdWRlXzEgPSByZXF1aXJlKFwiLi9pbmNsdWRlXCIpO1xuY29uc3QgaGVscGVyXzEgPSByZXF1aXJlKFwiLi9oZWxwZXJcIik7XG5pZiAoaGVscGVyXzEuaXNOb2RlKSB7XG4gIHZhciByYW5kb21jb2xvciA9IHJlcXVpcmUoJ3JhbmRvbWNvbG9yJyk7XG59XG5jbGFzcyBMb2cge1xuICBzdGF0aWMgY3JlYXRlKG5hbWUsIC4uLmxldmVsKSB7XG4gICAgbGV0IGk7XG4gICAgaWYgKExvZy5pbnN0YW5jZXNbbmFtZV0gPT09IHVuZGVmaW5lZCkge1xuICAgICAgaSA9IG5ldyBsb2dnZXJfMS5Mb2dnZXIobmFtZSwgTG9nLmdldFJhbmRvbUNvbG9yKCksIExvZy5pc0RldmVsb3BtZW50TW9kZSwgbGV2ZWwsIExvZy5pc011dGVkTW9kdWxlKG5hbWUpLCBMb2cubGV2ZWxzLmxlbmd0aCA+IDAgPyBMb2cuZml4ZWRXaWR0aCA6IHVuZGVmaW5lZCwgTG9nLmxldmVscy5sZW5ndGggPiAwID8gTG9nLmRpc3BsYXkgOiB1bmRlZmluZWQpO1xuICAgICAgTG9nLmluc3RhbmNlc1tuYW1lXSA9IGk7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgaSA9IExvZy5pbnN0YW5jZXNbbmFtZV07XG4gICAgfVxuICAgIHJldHVybiBpO1xuICB9XG4gIHN0YXRpYyBnZXRSYW5kb21Db2xvcigpIHtcbiAgICBpZiAoaGVscGVyXzEuaXNOb2RlKSB7XG4gICAgICByZXR1cm4gcmFuZG9tY29sb3IoeyBsdW1pbm9zaXR5OiAnbGlnaHQnLCBjb3VudDogMTAgfSk7XG4gICAgfVxuICAgIGxldCBsZXR0ZXJzID0gJzAxMjM0NScuc3BsaXQoJycpO1xuICAgIGxldCBjb2xvciA9ICcjJztcbiAgICBjb2xvciArPSBsZXR0ZXJzW01hdGgucm91bmQoTWF0aC5yYW5kb20oKSAqIDUpXTtcbiAgICBsZXR0ZXJzID0gJzAxMjM0NTY3ODlBQkNERUYnLnNwbGl0KCcnKTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IDU7IGkrKykge1xuICAgICAgY29sb3IgKz0gbGV0dGVyc1tNYXRoLnJvdW5kKE1hdGgucmFuZG9tKCkgKiAxNSldO1xuICAgIH1cbiAgICBpZiAoY29sb3IgPT09IHVuZGVmaW5lZClcbiAgICAgIHJldHVybiB0aGlzLmdldFJhbmRvbUNvbG9yKCk7XG4gICAgcmV0dXJuIGNvbG9yO1xuICB9XG4gIHN0YXRpYyBkaXNwbGF5KG5hbWUsIGRhdGEsIGluY29tbWluZywgbW9kdWxlTmFtZSkge1xuICAgIGlmICghaW5jbHVkZV8xLmNvbnRhaW4oTG9nLmxldmVscywgaW5jb21taW5nKSlcbiAgICAgIHJldHVybjtcbiAgICBpZiAoaW5jb21taW5nID09PSBsZXZlbF8xLkxldmVsLkRBVEEpIHtcbiAgICAgIGRpc3BsYXlfMS5EaXNwbGF5Lm1zZyhuYW1lLCBkYXRhLCBuYW1lLCBMb2cuaW5zdGFuY2VzW21vZHVsZU5hbWVdLmNvbG9yLCBsZXZlbF8xLkxldmVsLkRBVEEsIExvZy5pbnN0YW5jZXNbbW9kdWxlTmFtZV0uZml4ZWRXaWR0aCk7XG4gICAgfVxuICAgIGlmIChpbmNvbW1pbmcgPT09IGxldmVsXzEuTGV2ZWwuRVJST1IpIHtcbiAgICAgIGRpc3BsYXlfMS5EaXNwbGF5Lm1zZyhuYW1lLCBkYXRhLCBuYW1lLCBMb2cuaW5zdGFuY2VzW21vZHVsZU5hbWVdLmNvbG9yLCBsZXZlbF8xLkxldmVsLkVSUk9SLCBMb2cuaW5zdGFuY2VzW21vZHVsZU5hbWVdLmZpeGVkV2lkdGgpO1xuICAgIH1cbiAgICBpZiAoaW5jb21taW5nID09PSBsZXZlbF8xLkxldmVsLklORk8pIHtcbiAgICAgIGRpc3BsYXlfMS5EaXNwbGF5Lm1zZyhuYW1lLCBkYXRhLCBuYW1lLCBMb2cuaW5zdGFuY2VzW21vZHVsZU5hbWVdLmNvbG9yLCBsZXZlbF8xLkxldmVsLklORk8sIExvZy5pbnN0YW5jZXNbbW9kdWxlTmFtZV0uZml4ZWRXaWR0aCk7XG4gICAgfVxuICAgIGlmIChpbmNvbW1pbmcgPT09IGxldmVsXzEuTGV2ZWwuV0FSTikge1xuICAgICAgZGlzcGxheV8xLkRpc3BsYXkubXNnKG5hbWUsIGRhdGEsIG5hbWUsIExvZy5pbnN0YW5jZXNbbW9kdWxlTmFtZV0uY29sb3IsIGxldmVsXzEuTGV2ZWwuV0FSTiwgTG9nLmluc3RhbmNlc1ttb2R1bGVOYW1lXS5maXhlZFdpZHRoKTtcbiAgICB9XG4gIH1cbiAgc3RhdGljIG9ubHlMZXZlbCguLi5sZXZlbCkge1xuICAgIGlmIChMb2cuX2xvZ09ubHkpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ1lvdSBzaG91bGQgdXNlIGZ1bmNpb24gb25seUxldmVsIG9ubHkgb25jZScpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoTG9nLl9sb2dPbmx5KVxuICAgICAgTG9nLl9sb2dPbmx5ID0gdHJ1ZTtcbiAgICBpZiAobGV2ZWwubGVuZ3RoID09PSAwKVxuICAgICAgcmV0dXJuO1xuICAgIExvZy5sZXZlbHMgPSBsZXZlbDtcbiAgfVxuICBzdGF0aWMgb25seU1vZHVsZXMoLi4ubW9kdWxlcykge1xuICAgIGlmIChMb2cuX2xvZ01vZHVsZXMpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ1lvdSBzaG91bGQgdXNlIGZ1bmNpb24gb25seU1vZHVsZXMgb25seSBvbmNlJyk7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGlmIChtb2R1bGVzLmxlbmd0aCA9PT0gMClcbiAgICAgIHJldHVybjtcbiAgICBMb2cubW9kdWxlcyA9IG1vZHVsZXM7XG4gICAgTG9nLm11dGVBbGxPdGhlck1vZHVsZXMoKTtcbiAgfVxuICBzdGF0aWMgaXNNdXRlZE1vZHVsZShtb2R1bGVOYW1lKSB7XG4gICAgaWYgKExvZy5tb2R1bGVzLmxlbmd0aCA9PSAwKVxuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIGlmICghaW5jbHVkZV8xLmNvbnRhaW4oTG9nLm1vZHVsZXMsIG1vZHVsZU5hbWUpKVxuICAgICAgcmV0dXJuIHRydWU7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHN0YXRpYyBtdXRlQWxsT3RoZXJNb2R1bGVzKCkge1xuICAgIGZvciAodmFyIG1vZHVsZU5hbWUgaW4gTG9nLmluc3RhbmNlcykge1xuICAgICAgaWYgKCFpbmNsdWRlXzEuY29udGFpbihMb2cubW9kdWxlcywgbW9kdWxlTmFtZSkpXG4gICAgICAgIExvZy5pbnN0YW5jZXNbbW9kdWxlTmFtZV0ubXV0ZSgpO1xuICAgIH1cbiAgfVxuICBzdGF0aWMgc2V0UHJvZHVjdGlvbk1vZGUoKSB7XG4gICAgaWYgKExvZy5tb2RlSXNTZXQpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoJ01vZGUgaXMgYWxyZWFkeSBzZXQnKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKGNvbnNvbGUgIT09IHVuZGVmaW5lZCAmJiBjb25zb2xlLmNsZWFyICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBjb25zb2xlLmNsZWFyKCk7XG4gICAgICAgIGNvbnNvbGUubG9nID0gKCkgPT4geyB9O1xuICAgICAgICBjb25zb2xlLmVycm9yID0gKCkgPT4geyB9O1xuICAgICAgICBjb25zb2xlLndhcm4gPSAoKSA9PiB7IH07XG4gICAgICAgIGNvbnNvbGUuaW5mbyA9ICgpID0+IHsgfTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICBsb2dnZXJfMS5Mb2dnZXIuaXNQcm9kdWN0aW9uTW9kZSA9IHRydWU7XG4gICAgTG9nLmlzRGV2ZWxvcG1lbnRNb2RlID0gZmFsc2U7XG4gIH1cbn1cbkxvZy5pbnN0YW5jZXMgPSB7fTtcbkxvZy5maXhlZFdpZHRoID0gMDtcbkxvZy5fbG9nT25seSA9IGZhbHNlO1xuTG9nLmxldmVscyA9IFtdO1xuTG9nLl9sb2dNb2R1bGVzID0gZmFsc2U7XG5Mb2cubW9kdWxlcyA9IFtdO1xuTG9nLmlzRGV2ZWxvcG1lbnRNb2RlID0gdHJ1ZTtcbkxvZy5tb2RlSXNTZXQgPSBmYWxzZTtcbmV4cG9ydHMuTG9nID0gTG9nO1xuXG5cblxuLy8vLy8vLy8vLy8vLy8vLy8vXG4vLyBXRUJQQUNLIEZPT1RFUlxuLy8gQzovVXNlcnMvUmljYXJkby9Qcm95ZWN0b3MvbndlL253ZS1hbmd1bGFyL25vZGVfbW9kdWxlcy9uZzItbG9nZ2VyL2xvZy5qc1xuLy8gbW9kdWxlIGlkID0gLi4vLi4vLi4vLi4vbmcyLWxvZ2dlci9sb2cuanNcbi8vIG1vZHVsZSBjaHVua3MgPSB2ZW5kb3IiXSwic291cmNlUm9vdCI6IndlYnBhY2s6Ly8vIn0=\n//# sourceURL=webpack-internal:///../../../../ng2-logger/log.js\n");

I have been doing lots of test, and tried to fix it, but cannot get the fix for the error. Any Idea or help?

I am using all polyfills from angular 5.2.

Thanks.

@QuentinLeGoff
Copy link

QuentinLeGoff commented Jan 30, 2018

Indeed since a certain version (v1 to v2) ng2-logger doesn't work on IE/Edge.

It seems to be the use of keywords unvailable in IE/Edge (const in for...of... loop).

You can use v1.0.13, it worked for me.

@darekf77 darekf77 reopened this Jan 30, 2018
@darekf77
Copy link
Owner

@RicardoJBarrios try new version. Should be ok.

@QuentinLeGoff
Copy link

Ok for me 👍

@QuentinLeGoff
Copy link

After deploy it seems it's not working with the AOT build.
Same error with const/loops keywords.

@RicardoJBarrios
Copy link
Author

Hello again and sorry for the delay.

I have tested it with ie11, but the line var fs = require('fs'); in l.9 of backend-logging.js gives me an error. I commented it and all works as expected, even AOT compilation.

@darekf77
Copy link
Owner

darekf77 commented Feb 15, 2018

@RicardoJBarrios try new version and "ng2-logger/browser" (or "ng2-logger/client"). It is a version without backend things....

@RicardoJBarrios
Copy link
Author

I have tried the last version, and still have the fs error when try to launch the tests. Once the line is commented all works as expected.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants