public function rules(): array 	{ 		$current_domain = auth()->user()?->user->getActiveDomain(); 		$main_language = $current_domain?->main_language ?? Language::getDefaultLanguage();  		$validation_rule_builder = [];  		foreach (Language::cases() as $language) { 			$lang = $language->value; 			$required = ($lang === $main_language);  			$validation_rule_builder['name_' . $lang] = [$required ? 'required' : 'nullable', 'string', 'max:100', new OpenAIModeration]; 		}  		return MediaStorage::mergeValidationRules(array_merge($validation_rule_builder, [ 			'type' => ['required', 'string', new Enum(CategoryType::class)], 			'ordering' => ['required', 'integer', 'min:0', 'max:255'], 			'domain_id' => ['required', 'uuid', 'exists:' . Domain::class . ',id'], 			'selected_filters' => ['array'], 			'selected_filters.*' => ['required', 'uuid', 'exists:' . Filter::class . ',id'], 			'active' => ['boolean'], 			'images' => ['array'], 			'images.*' => ['required', 'image', 'max:' . setting('max_upload_size') / 1024, new SafeWebp], 		])); 	}