$service->definitions(), 'templates' => $service->templates(), 'variables' => ['{reference}', '{requester}', '{starts_at}', '{ends_at}', '{comment}'], ]); } public function update(Request $request, NotificationTemplateService $service): RedirectResponse { $rules = []; foreach (array_keys($service->definitions()) as $event) { $rules["templates.{$event}.subject"] = ['required', 'string', 'max:200']; $rules["templates.{$event}.message"] = ['required', 'string', 'max:2000']; } /** @var array{templates:array} $data */ $data = $request->validate($rules); $service->update($data['templates'], $request->user()); return back()->with('success', 'Modelos de notificação atualizados.'); } }