@@ -13,17 +13,17 @@ title and description) in the user's language.
1313### 1. Get the user's language
1414
1515In your Snap's code, determine the user's language by using the
16- [ ` snap_getLocale ` ] ( ../reference/snaps-api.md#snap_getlocale ) API method.
17- To call ` snap_getLocale ` , first request the required permission by adding it to the
16+ [ ` snap_getPreferences ` ] ( ../reference/snaps-api.md#snap_getpreferences ) API method.
17+ To call ` snap_getPreferences ` , first request the required permission by adding it to the
1818` initialPermissions ` field in your manifest file:
1919
2020``` json title="snap.manifest.json"
2121"initialPermissions" : {
22- "snap_getLocale " : {}
22+ "snap_getPreferences " : {}
2323}
2424```
2525
26- Your Snap can then call ` snap_getLocale ` to get the user's language code (for example, ` en ` or ` es ` ).
26+ Your Snap can then call ` snap_getPreferences ` to get the user's language code (for example, ` en ` or ` es ` ).
2727
2828### 2. Localize the Snap's UI
2929
@@ -65,7 +65,9 @@ export const locales = {
6565export type Locale = keyof typeof locales
6666
6767export async function getMessage(id : keyof (typeof locales )[Locale ]) {
68- const locale = (await snap .request ({ method: " snap_getLocale" })) as Locale
68+ const { locale } = (await snap .request ({ method: " snap_getPreferences" })) as {
69+ locale: Locale
70+ }
6971 const { message } = locales [locale ]?.[id ] ?? locales [FALLBACK_LANGUAGE ][id ]
7072
7173 return message
@@ -113,7 +115,7 @@ The following is an example of a localized manifest file:
113115 "locales" : [" locales/da.json" , " locales/en.json" , " locales/nl.json" ]
114116 },
115117 "initialPermissions" : {
116- "snap_getLocale " : {}
118+ "snap_getPreferences " : {}
117119 },
118120 "manifestVersion" : " 0.1"
119121}
0 commit comments