The simplest way to list every country as a selectable dropdown 🤘
- Display a select field with every ISO 639-1 language. tl;dr: The two-letter code.
- Built-in localization in 132 languages.
- Supports all the native Select Field features.
We have made things easy for you start. Here is the three steps your need to follow:
- Install the package
composer require parfaitementweb/filament-country-field
- Add the Country Form field in your Filament Resource.
use Parfaitementweb\FilamentCountryField\Forms\Components\Country;
Country::make('country')
- Add the Country Column field in your Filament Resource.
use Parfaitementweb\FilamentCountryField\Tables\CountryColumn;
CountryColumn::make('country')
- Enjoy.
On top of all Select Field methods, you can use these three helpers for the Form Component.
exclude()
removes an item from the list.add()
adds your own value to the list.map()
changes one key to another, such asGB
toUK
.
use Parfaitementweb\FilamentCountryField\Forms\Components\Country;
Country::make('country')
->exclude(['NL'])
->add(['MA' =>'Mars'])
->map(['GB' => 'UK', 'GF' => 'FR'])
To ensure better performance and faster response times, the country list is stored in the cache for easy retrieval, leading to an overall snappier user experience.
To clear the cached country list, you can utilize the built-in artisan command provided by Laravel. The following command can be run in your terminal or command line interface:
php artisan countries-field:clear
The country values are displayed according to the user's current locale settings, which are determined by the App::getLocale() value.
The field supports those 132 languages:
Afrikaans, Akan, Amharic, Arabic, Assamese, Azerbaijani, Belarusian, Bulgarian, Bambara, Bengali, Tibetan, Breton, Bosnian, Catalan, Chechen, Czech, Welsh, Danish, German, Dzongkha, Ewe, Greek, English, Esperanto, Spanish, Estonian, Basque, Persian, Fula, Finnish, Faroese, French, Western Frisian, Irish, Scottish Gaelic, Galician, Gujarati, Manx, Hausa, Hebrew, Hindi, Croatian, Hungarian, Armenian, Interlingua, Indonesian, Igbo, Sichuan Yi, Icelandic, Italian, Japanese, Javanese, Georgian, Kikuyu, Kazakh, Kalaallisut, Khmer, Kannada, Korean, Kashmiri, Kurdish, Cornish, Kyrgyz, Luxembourgish, Ganda, Lingala, Lao, Lithuanian, Luba-Katanga, Latvian, Malagasy, Maori, Macedonian, Malayalam, Mongolian, Marathi, Malay, Maltese, Burmese, Norwegian Bokmål, North Ndebele, Nepali, Dutch, Norwegian Nynorsk, Norwegian, Oromo, Odia, Ossetic, Punjabi, Polish, Pashto, Portuguese, Quechua, Romansh, Rundi, Romanian, Russian, Kinyarwanda, Sindhi, Northern Sami, Sango, Serbo-Croatian, Sinhala, Slovak, Slovenian, Shona, Somali, Albanian, Serbian, Swedish, Swahili, Tamil, Telugu, Tajik, Thai, Tigrinya, Turkmen, Tagalog, Tongan, Turkish, Tatar, Uighur, Ukrainian, Urdu, Uzbek, Vietnamese, Wolof, Xhosa, Yiddish, Yoruba, Chinese, Zulu
You can check the entire country list here.
composer test
Please see CHANGELOG for more information on what has changed recently.
Please see CONTRIBUTING for details.
Please review our security policy on how to report security vulnerabilities.
This package used data from umpirsky/country-list. Thank you for the great work.
The MIT License (MIT). Please see License File for more information.