react-facebook
Version:
Facebook components like a Login button, Like, Share, Comments, Embedded Post/Video, Messenger Chat, and Facebook Pixel tracking
33 lines (32 loc) • 1.25 kB
TypeScript
export type FacebookLocale = 'en_US' | 'es_ES' | 'es_LA' | 'fr_FR' | 'de_DE' | 'it_IT' | 'pt_BR' | 'pt_PT' | 'ja_JP' | 'ko_KR' | 'zh_CN' | 'zh_TW' | 'ar_AR' | 'hi_IN' | 'th_TH' | 'vi_VN' | 'ru_RU' | 'tr_TR' | 'pl_PL' | 'nl_NL' | 'sv_SE' | 'da_DK' | 'no_NO' | 'fi_FI' | 'cs_CZ' | 'hu_HU' | 'ro_RO' | 'bg_BG' | 'hr_HR' | 'sk_SK' | 'sl_SI' | 'et_EE' | 'lv_LV' | 'lt_LT' | 'uk_UA' | 'he_IL' | 'af_ZA' | 'ms_MY' | 'id_ID' | 'tl_PH' | 'cy_GB' | 'eu_ES' | 'ca_ES' | 'gl_ES';
/**
* Hook for managing Facebook SDK locale dynamically
*
* @returns Object with current locale, setLocale function, and loading state
*
* @example
* ```tsx
* function MyComponent() {
* const { locale, setLocale, isChangingLocale } = useLocale();
*
* return (
* <div>
* <p>Current locale: {locale}</p>
* <button
* onClick={() => setLocale('es_ES')}
* disabled={isChangingLocale}
* >
* Switch to Spanish
* </button>
* {isChangingLocale && <p>Changing locale...</p>}
* </div>
* );
* }
* ```
*/
export default function useLocale(): {
locale: FacebookLocale;
setLocale: (newLocale: FacebookLocale) => Promise<void>;
isChangingLocale: boolean;
availableLocales: FacebookLocale[];
};