import { eventLogger as logger } from '../configuration/LoggerConfig'

/**
 * Emits an event when the editor state change
 * @param {String} type
 * @param {Object} data
 * @emits {Event}
 */
export default function emit (type, data) {
  logger.info(`emitting ${type} event`, data)
  // We are making usage of a browser provided class
  // eslint-disable-next-line no-undef
  this.dispatchEvent(new CustomEvent(type, Object.assign({ bubbles: true, composed: true }, data ? { detail: data } : undefined)))
}
