is_string($label) && trim($label) !== ''); $locale = $locale ?? app()->getLocale(); return $labels[$locale] ?? $labels[config('app.fallback_locale')] ?? (string) reset($labels); } /** * Validation rule: at least one locale has a label. */ public static function filledRule(): \Closure { return function (string $attribute, $value, \Closure $fail) { if (!is_array($value) || self::pick($value) === '') { $fail(__('Fill in at least one language.')); } }; } }