const log = console.log;
const PLUGIN_NAME = 'WS';

const colors = {
  green: 'color: #018a01',
  red: 'color: #ff1e1e',
  orange: 'color: #f98a00',
  blue: 'color: #2177f9'
}

class Logger {

  constructor(private enabled: boolean) {}

  log = (message: string) => {
    !this.enabled ? null : log(`[${PLUGIN_NAME}] ${message}`)
  }

  success = (message: string) => {
    !this.enabled ? null : log(`%c[${PLUGIN_NAME}] ${message}`, colors.green)
  }

  info = (message: string) => {
    !this.enabled ? null : log(`%c[${PLUGIN_NAME}] ${message}`, colors.orange)
  }

  warn = (message: string) => {
    !this.enabled ? null : log(`%c[${PLUGIN_NAME}] ${message}`, colors.red)
  }

  result = (message: string) => {
    !this.enabled ? null : log(`%c[${PLUGIN_NAME}] ${message}`, colors.blue)
  }

  object = (message: object) => {
    !this.enabled ? null : log(message)
  }
}

export default Logger;