function PopperMixin(config) {
  this._popper_config = Object.assign(
    {}, {
      width: null,
      zIndex: 1050,
      offset: 0,
      placement: 'bottom',
      boundariesPadding: 5,
      visibleArrow: false,
    }, config)
  this._popper_state = {}
}
@param {args} @see PopperMixin
@param {object} config
@param {String} [placement=button] - Placement of the popper accepted values: top(-start, -end), right(-start, -end), bottom(-start, -right), left(-start, -end)
@param {Number} [offset=0] - Amount of pixels the popper will be shifted (can be negative).
@param {Number} [boundariesPadding=5]
@param {Boolean} [visibleArrow=false] Visibility of the arrow, no style.