/**
  * @param string $visibility [visible|hidden]
  * @return bool
  */
 protected function isListedAs($visibility, $action = null)
 {
     if (!$action) {
         $action = Artificer::getCurrentAction();
     }
     $listOptions = Artificer::modelManager()->current()->getOption($action);
     if (!$listOptions || !isset($listOptions[$visibility])) {
         return false;
     }
     $list = $listOptions[$visibility];
     if ($this->isAll($list)) {
         return true;
     }
     return $this->isInArray($this->getName(), $list);
 }