mirror of
https://github.com/lingble/chatwoot.git
synced 2025-11-02 12:08:01 +00:00
feat: Auto-populate the telephone code based on the browser timezone (#10146)
Fixes https://github.com/chatwoot/chatwoot/issues/6228 There is a country code selector for the phone input field. This is often a point of frustration. See the response below. > We are using the phone number field however this can be frustrating for customers, especially mobile users, to select the +1 US country code. Our users are typically local businesses and being able to default to +1 country code in the phone number field or the account would improve the interaction they have with customers. Most people who run local businesses don't need a country selector. However, to preserve the quality of the data we store, we need a country code. A balance between these two issues can be found with an auto-populating country code field based on the browser's timezone. This is what I did in this PR. Based on the browser timezone, we will resolve it to the closest country code.
This commit is contained in:
13
app/javascript/shared/components/PhoneInput/helper.js
Normal file
13
app/javascript/shared/components/PhoneInput/helper.js
Normal file
@@ -0,0 +1,13 @@
|
||||
import { getPhoneCodeByTimezone } from 'timezone-phone-codes';
|
||||
import ct from 'countries-and-timezones';
|
||||
|
||||
const getTimezone = () => Intl.DateTimeFormat().resolvedOptions().timeZone;
|
||||
|
||||
export const getActiveDialCode = () => {
|
||||
return getPhoneCodeByTimezone(getTimezone()) || '';
|
||||
};
|
||||
|
||||
export const getActiveCountryCode = () => {
|
||||
const country = ct.getCountryForTimezone(getTimezone()) || {};
|
||||
return country.id || '';
|
||||
};
|
||||
Reference in New Issue
Block a user