ringcentral-widgets
Version:
RingCentral Integration Widget Library
32 lines (29 loc) • 910 B
text/typescript
import { Module } from 'ringcentral-integration/lib/di';
import RcUIModule from '../../lib/RcUIModule';
({
name: 'RegionSettingsUI',
deps: ['Auth', 'Locale', 'RegionSettings', 'RouterInteraction'],
})
export default class RegionSettingsUI extends RcUIModule {
getUIProps({ phone: { locale, regionSettings } }) {
return {
availableCountries: regionSettings.availableCountries,
countryCode: regionSettings.countryCode,
areaCode: regionSettings.areaCode,
currentLocale: locale.currentLocale,
};
}
getUIFunctions({ phone: { auth, regionSettings, routerInteraction } }) {
return {
onBackButtonClick: () => routerInteraction.goBack(),
onSave: ({ areaCode, countryCode }) =>
regionSettings.setData({
areaCode,
countryCode,
}),
async onLogoutButtonClick() {
await auth.logout();
},
};
}
}