> Deprecated:
> Product subscription app extensions won't be supported as of December 3, 2025. You should migrate existing product subscription app extensions to [purchase options extensions](/docs/apps/build/purchase-options/purchase-options-extensions).
Access the merchant’s current locale (in [IETF format](https://en.wikipedia.org/wiki/IETF_language_tag)) to internationalize your extension content.
```ts?title: "JavaScript"
import {extend, Text} from '@shopify/admin-ui-extensions';
extend('Admin::Product::SubscriptionPlan::Add', (root, api) => {
const {locale} = api;
const text = root.createText(`My current locale is: ${locale.initialValue}`);
locale.setOnChange((newLocale) => {
text.updateText(`My current locale is: ${newLocale}`);
});
root.appendChild(text);
root.mount();
});
```
```tsx?title: "React"
import React from 'react';
import {extend, render, useLocale, Text} from '@shopify/admin-ui-extensions-react';
function App() {
const locale = useLocale();
return {`My current locale is: ${locale}`};
}
extend(
'Admin::Product::SubscriptionPlan::Add',
render(() => ),
);
```
## Props
optional = ?
| Name | Type | Description |
| --- | --- | --- |
| initialValue | string
| IETF-formatted locale at time of page load |
| setOnChange | (onChange: (locale: string) => void) => void
| Callback when user changes locale during runtime |