Sha256: ae7672df417a8c7a49093617cee5821077fd53849033cd508adfa2a0d5f03c1f

Contents?: true

Size: 888 Bytes

Versions: 68

Compression:

Stored size: 888 Bytes

Contents

import log from "loglevel";
import logPrefix from "loglevel-plugin-prefix";

logPrefix.reg(log);
logPrefix.apply(log, {
  format: (level) => `${`[${level}]`.padStart(7)} Lookbook:`,
});

let logLevel = process.env.NODE_ENV === "development" ? 2 : 3;
if (window.LOG_LEVEL !== undefined) {
  logLevel = window.LOG_LEVEL;
}
log.setLevel(logLevel);

export default function loggerPlugin(Alpine) {
  Alpine.directive(
    "log",
    (el, { modifiers, expression }, { evaluateLater, effect }) => {
      let logFn =
        typeof expression === "string"
          ? (callback) => callback(expression)
          : evaluateLater(expression);
      effect(() =>
        logFn((message) => {
          const level = modifiers[0] || "debug";
          log[level](message);
        })
      );
    }
  );

  Alpine.magic("log", () => {
    return log;
  });

  Alpine.$log = log;
}

export { log };

Version data entries

68 entries across 68 versions & 1 rubygems

Version Path
lookbook-2.3.4 assets/js/plugins/logger.js
lookbook-2.3.3 assets/js/plugins/logger.js
lookbook-2.3.2 assets/js/plugins/logger.js
lookbook-2.3.0 assets/js/plugins/logger.js
lookbook-2.2.2 assets/js/plugins/logger.js
lookbook-2.2.1 assets/js/plugins/logger.js
lookbook-2.2.0 assets/js/plugins/logger.js
lookbook-2.1.1 assets/js/plugins/logger.js
lookbook-2.1.0 assets/js/plugins/logger.js
lookbook-2.0.5 assets/js/plugins/logger.js
lookbook-2.0.4 assets/js/plugins/logger.js
lookbook-2.0.3 assets/js/plugins/logger.js
lookbook-2.0.2 assets/js/plugins/logger.js
lookbook-2.0.1 assets/js/plugins/logger.js
lookbook-2.0.0 assets/js/plugins/logger.js
lookbook-2.0.0.rc.3 assets/js/plugins/logger.js
lookbook-1.5.5 app/assets/lookbook/js/plugins/logger.js
lookbook-1.5.4 app/assets/lookbook/js/plugins/logger.js
lookbook-2.0.0.rc.2 assets/js/plugins/logger.js
lookbook-2.0.0.rc.1 assets/js/plugins/logger.js