check(); } /** * @return array */ public function getRuleGroupData(): array { return [ 'title' => trim($this->input('title')), 'description' => trim($this->input('description')), ]; } /** * @return array */ public function rules() { /** @var RuleGroupRepositoryInterface $repository */ $repository = app(RuleGroupRepositoryInterface::class, [auth()->user()]); $titleRule = 'required|between:1,100|uniqueObjectForUser:rule_groups,title'; if (!is_null($repository->find(intval($this->get('id')))->id)) { $titleRule = 'required|between:1,100|uniqueObjectForUser:rule_groups,title,' . intval($this->get('id')); } return [ 'title' => $titleRule, 'description' => 'between:1,5000', ]; } }