code: protected function validParams(array $data = [])
      {
          $params = array_merge($this->message, $data);
  
          foreach ($params as $key => $value) {
              if (in_array($key, $this->required, true) && empty($value) && empty($this->message[$key])) {
                  throw new InvalidArgumentException("Attribute '$key' can not be empty!");
              }
  
              $params[$key] = empty($value) ? $this->message[$key] : $value;
          }
  
          $params['data'] = $this->formatData($params['data']);
  
          $this->message = $this->messageBackup;
  
          return $params;
      }
docs: @param array $data
  
  @return array