*/ public function rules(): array { $client = $this->route('client'); $creating = ! $client instanceof Client; $sometimes = $creating ? 'required' : 'sometimes'; return [ 'name' => [$sometimes, 'string', 'max:255'], 'slug' => [ $sometimes, 'string', 'max:255', 'alpha_dash:ascii', Rule::unique('clients', 'slug')->ignore($client?->id), ], 'sector' => ['sometimes', 'nullable', new Translatable(max: 120)], 'logo' => ['sometimes', 'nullable', 'string', 'max:2048'], 'url' => ['sometimes', 'nullable', 'url', 'max:2048'], 'is_public' => ['sometimes', 'boolean'], 'position' => ['sometimes', 'integer', 'min:0'], ]; } }