@kaisarsofi/react-native-phone-input 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +467 -0
  3. package/lib/commonjs/CountryPicker.js +669 -0
  4. package/lib/commonjs/CountryPicker.js.map +1 -0
  5. package/lib/commonjs/Flag.js +23 -0
  6. package/lib/commonjs/Flag.js.map +1 -0
  7. package/lib/commonjs/PhoneInput.js +252 -0
  8. package/lib/commonjs/PhoneInput.js.map +1 -0
  9. package/lib/commonjs/countries.js +75 -0
  10. package/lib/commonjs/countries.js.map +1 -0
  11. package/lib/commonjs/data/countries.json +1472 -0
  12. package/lib/commonjs/index.js +71 -0
  13. package/lib/commonjs/index.js.map +1 -0
  14. package/lib/commonjs/package.json +1 -0
  15. package/lib/commonjs/safeArea.js +44 -0
  16. package/lib/commonjs/safeArea.js.map +1 -0
  17. package/lib/commonjs/theme.js +85 -0
  18. package/lib/commonjs/theme.js.map +1 -0
  19. package/lib/commonjs/types.js +6 -0
  20. package/lib/commonjs/types.js.map +1 -0
  21. package/lib/commonjs/value.js +68 -0
  22. package/lib/commonjs/value.js.map +1 -0
  23. package/lib/module/CountryPicker.js +665 -0
  24. package/lib/module/CountryPicker.js.map +1 -0
  25. package/lib/module/Flag.js +19 -0
  26. package/lib/module/Flag.js.map +1 -0
  27. package/lib/module/PhoneInput.js +248 -0
  28. package/lib/module/PhoneInput.js.map +1 -0
  29. package/lib/module/countries.js +65 -0
  30. package/lib/module/countries.js.map +1 -0
  31. package/lib/module/data/countries.json +1472 -0
  32. package/lib/module/index.js +8 -0
  33. package/lib/module/index.js.map +1 -0
  34. package/lib/module/package.json +1 -0
  35. package/lib/module/safeArea.js +39 -0
  36. package/lib/module/safeArea.js.map +1 -0
  37. package/lib/module/theme.js +81 -0
  38. package/lib/module/theme.js.map +1 -0
  39. package/lib/module/types.js +4 -0
  40. package/lib/module/types.js.map +1 -0
  41. package/lib/module/value.js +62 -0
  42. package/lib/module/value.js.map +1 -0
  43. package/lib/typescript/commonjs/package.json +1 -0
  44. package/lib/typescript/commonjs/src/CountryPicker.d.ts +37 -0
  45. package/lib/typescript/commonjs/src/CountryPicker.d.ts.map +1 -0
  46. package/lib/typescript/commonjs/src/Flag.d.ts +10 -0
  47. package/lib/typescript/commonjs/src/Flag.d.ts.map +1 -0
  48. package/lib/typescript/commonjs/src/PhoneInput.d.ts +3 -0
  49. package/lib/typescript/commonjs/src/PhoneInput.d.ts.map +1 -0
  50. package/lib/typescript/commonjs/src/countries.d.ts +28 -0
  51. package/lib/typescript/commonjs/src/countries.d.ts.map +1 -0
  52. package/lib/typescript/commonjs/src/index.d.ts +9 -0
  53. package/lib/typescript/commonjs/src/index.d.ts.map +1 -0
  54. package/lib/typescript/commonjs/src/safeArea.d.ts +11 -0
  55. package/lib/typescript/commonjs/src/safeArea.d.ts.map +1 -0
  56. package/lib/typescript/commonjs/src/theme.d.ts +53 -0
  57. package/lib/typescript/commonjs/src/theme.d.ts.map +1 -0
  58. package/lib/typescript/commonjs/src/types.d.ts +211 -0
  59. package/lib/typescript/commonjs/src/types.d.ts.map +1 -0
  60. package/lib/typescript/commonjs/src/value.d.ts +22 -0
  61. package/lib/typescript/commonjs/src/value.d.ts.map +1 -0
  62. package/lib/typescript/module/package.json +1 -0
  63. package/lib/typescript/module/src/CountryPicker.d.ts +37 -0
  64. package/lib/typescript/module/src/CountryPicker.d.ts.map +1 -0
  65. package/lib/typescript/module/src/Flag.d.ts +10 -0
  66. package/lib/typescript/module/src/Flag.d.ts.map +1 -0
  67. package/lib/typescript/module/src/PhoneInput.d.ts +3 -0
  68. package/lib/typescript/module/src/PhoneInput.d.ts.map +1 -0
  69. package/lib/typescript/module/src/countries.d.ts +28 -0
  70. package/lib/typescript/module/src/countries.d.ts.map +1 -0
  71. package/lib/typescript/module/src/index.d.ts +9 -0
  72. package/lib/typescript/module/src/index.d.ts.map +1 -0
  73. package/lib/typescript/module/src/safeArea.d.ts +11 -0
  74. package/lib/typescript/module/src/safeArea.d.ts.map +1 -0
  75. package/lib/typescript/module/src/theme.d.ts +53 -0
  76. package/lib/typescript/module/src/theme.d.ts.map +1 -0
  77. package/lib/typescript/module/src/types.d.ts +211 -0
  78. package/lib/typescript/module/src/types.d.ts.map +1 -0
  79. package/lib/typescript/module/src/value.d.ts +22 -0
  80. package/lib/typescript/module/src/value.d.ts.map +1 -0
  81. package/package.json +215 -0
  82. package/src/CountryPicker.tsx +805 -0
  83. package/src/Flag.tsx +17 -0
  84. package/src/PhoneInput.tsx +363 -0
  85. package/src/countries.ts +95 -0
  86. package/src/data/countries.json +1472 -0
  87. package/src/index.tsx +21 -0
  88. package/src/safeArea.ts +50 -0
  89. package/src/theme.ts +112 -0
  90. package/src/types.ts +229 -0
  91. package/src/value.ts +70 -0
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useCallback","useEffect","useMemo","useRef","useState","Modal","Platform","Pressable","ScrollView","StyleSheet","Text","TextInput","View","groupCountriesByLetter","Flag","useOptionalSafeAreaInsets","usePhoneInputPalette","Fragment","_Fragment","jsx","_jsx","jsxs","_jsxs","ALPHABET","split","ROW_HEIGHT","HEADER_HEIGHT","SIDEBAR_GUTTER","CountryPicker","visible","countries","selected","onSelect","onClose","searchPlaceholder","disableSearch","renderCountryItem","palette","providedPalette","colorScheme","safeAreaInsets","presentationStyle","groupAlphabetically","showAlphabetIndex","styles","styleOverrides","fallbackPalette","ambientInsets","isIosSheet","OS","insetTop","top","insetBottom","bottom","insetLeft","left","insetRight","right","insets","auto","undefined","query","setQuery","scrollRef","sidebarRef","activeLetter","setActiveLetter","sidebarLayout","y","height","hideActiveLetterTimer","current","clearTimeout","showActiveLetterBriefly","letter","setTimeout","colors","container","backgroundColor","background","headerSection","borderBottomColor","border","searchContainer","surface","borderColor","search","color","text","searchIcon","placeholder","searchIconFill","handle","title","closeButton","closeButtonPressed","surfacePressed","closeButtonText","textMuted","rowSeparator","rowSelected","name","dialCode","empty","sectionHeader","sectionHeaderText","sidebarLetter","accent","sidebarLetterDisabled","disabled","sidebarLetterActive","accentContrast","bubble","bubbleText","filtered","q","trim","toLowerCase","filter","c","includes","replace","code","isSearching","allSections","sections","data","showHeaders","reservesSidebar","length","showSidebar","availableLetters","Set","map","s","sectionOffsets","offsets","offset","section","jumpToLetter","target","has","forward","find","l","fallback","reverse","scrollTo","animated","jumpFromPageY","pageY","idx","Math","min","max","floor","handleSidebarTouch","evt","nativeEvent","isMouseDown","webMouseHandlers","onMouseDown","e","onMouseMove","onMouseUp","renderRow","item","isSelected","onPress","children","style","pressed","row","rowPressed","accessibilityRole","accessibilityLabel","rowInner","country","size","flag","numberOfLines","listContent","animationType","onRequestClose","paddingTop","paddingBottom","paddingLeft","paddingRight","dragHandleWrap","dragHandle","header","hitSlop","searchWithJump","searchIconLens","searchIconHandle","value","onChangeText","placeholderTextColor","autoCorrect","autoCapitalize","clearButtonMode","body","ref","keyboardShouldPersistTaps","contentInsetAdjustmentBehavior","contentContainerStyle","listContentWithJump","sidebar","onLayout","measure","_x","_y","_w","_px","onTouchStart","onTouchMove","onTouchEnd","sidebarLetterTouchable","pointerEvents","create","flex","alignItems","width","borderRadius","borderBottomWidth","hairlineWidth","zIndex","select","ios","shadowColor","shadowOpacity","shadowRadius","shadowOffset","android","elevation","default","flexDirection","justifyContent","paddingHorizontal","fontSize","fontWeight","gap","marginLeft","marginRight","marginBottom","borderWidth","position","transform","rotate","minWidth","paddingVertical","outlineStyle","textAlignVertical","includeFontPadding","opacity","textAlign","marginTop","letterSpacing","cursor","lineHeight","overflow"],"sourceRoot":"../../src","sources":["CountryPicker.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ import { Text } from 'react-native';
4
+ import { jsx as _jsx } from "react/jsx-runtime";
5
+ /** Renders a country's Unicode flag emoji, e.g. 🇺🇸. */
6
+ export function Flag({
7
+ country,
8
+ size = 22,
9
+ style
10
+ }) {
11
+ return /*#__PURE__*/_jsx(Text, {
12
+ style: [{
13
+ fontSize: size
14
+ }, style],
15
+ accessibilityElementsHidden: true,
16
+ children: country.flag
17
+ });
18
+ }
19
+ //# sourceMappingURL=Flag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Text","jsx","_jsx","Flag","country","size","style","fontSize","accessibilityElementsHidden","children","flag"],"sourceRoot":"../../src","sources":["Flag.tsx"],"mappings":";;AAAA,SAASA,IAAI,QAAwC,cAAc;AAAC,SAAAC,GAAA,IAAAC,IAAA;AASpE;AACA,OAAO,SAASC,IAAIA,CAAC;EAAEC,OAAO;EAAEC,IAAI,GAAG,EAAE;EAAEC;AAAiB,CAAC,EAAE;EAC7D,oBACEJ,IAAA,CAACF,IAAI;IAACM,KAAK,EAAE,CAAC;MAAEC,QAAQ,EAAEF;IAAK,CAAC,EAAEC,KAAK,CAAE;IAACE,2BAA2B;IAAAC,QAAA,EAClEL,OAAO,CAACM;EAAI,CACT,CAAC;AAEX","ignoreList":[]}
@@ -0,0 +1,248 @@
1
+ "use strict";
2
+
3
+ import { AsYouType, parsePhoneNumberFromString } from 'libphonenumber-js';
4
+ import { forwardRef, useCallback, useImperativeHandle, useMemo, useRef, useState } from 'react';
5
+ import { Platform, Pressable, Text, TextInput, View, StyleSheet } from 'react-native';
6
+ import { COUNTRIES, getCountryByCallingCode, getCountryByCode, getDeviceCountry } from "./countries.js";
7
+ import { CountryPicker } from "./CountryPicker.js";
8
+ import { Flag } from "./Flag.js";
9
+ import { usePhoneInputPalette } from "./theme.js";
10
+ import { buildValue, readControlledValue } from "./value.js";
11
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
12
+ export const PhoneInput = /*#__PURE__*/forwardRef(function PhoneInputImpl({
13
+ defaultCountry,
14
+ fallbackCountry = 'US',
15
+ country: controlledCountry,
16
+ value: controlledValue,
17
+ onChangeText,
18
+ onChangeInternational,
19
+ onChangeCountry,
20
+ countries: allowedCountries,
21
+ excludedCountries,
22
+ disableValidation = false,
23
+ autoFormat = true,
24
+ showCountryPicker = true,
25
+ displayMode = 'both',
26
+ renderFlag,
27
+ renderCountryItem,
28
+ searchPlaceholder,
29
+ disableSearch,
30
+ groupAlphabetically = true,
31
+ showAlphabetIndex = true,
32
+ autoDetectCountry = true,
33
+ style,
34
+ containerStyle,
35
+ inputStyle,
36
+ dialCodeStyle,
37
+ flagStyle,
38
+ countryPickerButtonStyle,
39
+ pickerStyles,
40
+ pickerSafeAreaInsets,
41
+ theme,
42
+ colorScheme,
43
+ palette: paletteOverrides,
44
+ pickerPresentationStyle,
45
+ onFocus,
46
+ onBlur,
47
+ ...textInputProps
48
+ }, ref) {
49
+ const palette = usePhoneInputPalette(colorScheme, paletteOverrides);
50
+
51
+ // `theme` styles the field specifically and wins over the palette's
52
+ // neutral defaults; the picker keeps the palette untouched, so a field
53
+ // restyled for a colored background doesn't take the picker with it.
54
+ const field = {
55
+ background: theme?.backgroundColor ?? palette.inputBackground,
56
+ border: theme?.borderColor ?? palette.border,
57
+ borderFocused: theme?.focusedBorderColor ?? palette.accent,
58
+ borderError: theme?.errorBorderColor ?? palette.danger,
59
+ text: theme?.textColor ?? palette.text,
60
+ placeholder: theme?.placeholderColor ?? palette.placeholder,
61
+ dialCode: theme?.dialCodeColor ?? theme?.textColor ?? palette.text,
62
+ divider: theme?.dividerColor ?? palette.border
63
+ };
64
+ const countryList = useMemo(() => {
65
+ let list = COUNTRIES;
66
+ if (allowedCountries?.length) {
67
+ const allow = new Set(allowedCountries);
68
+ list = list.filter(c => allow.has(c.code));
69
+ }
70
+ if (excludedCountries?.length) {
71
+ const exclude = new Set(excludedCountries);
72
+ list = list.filter(c => !exclude.has(c.code));
73
+ }
74
+ return list;
75
+ }, [allowedCountries, excludedCountries]);
76
+ const [internalCountryCode, setInternalCountryCode] = useState(() => {
77
+ if (controlledCountry) return controlledCountry;
78
+ if (defaultCountry) return defaultCountry;
79
+ const device = getDeviceCountry();
80
+ if (device && countryList.some(c => c.code === device.code)) {
81
+ return device.code;
82
+ }
83
+ return fallbackCountry;
84
+ });
85
+ const [internalNational, setInternalNational] = useState(() => controlledValue?.startsWith('+') ? '' : controlledValue ?? '');
86
+ const [pickerVisible, setPickerVisible] = useState(false);
87
+ const [isFocused, setIsFocused] = useState(false);
88
+ const inputRef = useRef(null);
89
+ const baseCountry = getCountryByCode(controlledCountry ?? internalCountryCode) ?? countryList[0] ?? COUNTRIES[0];
90
+
91
+ // A controlled international value carries its own country, so it is read
92
+ // back out of the value itself rather than tracked as separate state.
93
+ // Memoized because this parses, and every keystroke is a render.
94
+ const controlled = useMemo(() => controlledValue !== undefined ? readControlledValue(controlledValue, baseCountry) : undefined, [controlledValue, baseCountry]);
95
+ const selectedCountry = controlledCountry ? baseCountry : controlled?.country ?? baseCountry;
96
+ const nationalNumber = controlled?.national ?? internalNational;
97
+ const formattedNational = useMemo(() => {
98
+ if (!autoFormat) return nationalNumber;
99
+ const formatter = new AsYouType(selectedCountry.code);
100
+ return formatter.input(nationalNumber);
101
+ }, [nationalNumber, selectedCountry.code, autoFormat]);
102
+ const value = useMemo(() => buildValue(nationalNumber, selectedCountry), [nationalNumber, selectedCountry]);
103
+ useImperativeHandle(ref, () => ({
104
+ focus: () => inputRef.current?.focus(),
105
+ blur: () => inputRef.current?.blur(),
106
+ isValid: () => value.isValid,
107
+ getValue: () => value
108
+ }), [value]);
109
+ const emitChange = useCallback((digits, country) => {
110
+ const next = buildValue(digits, country);
111
+ onChangeText?.(next);
112
+ onChangeInternational?.(next.international);
113
+ }, [onChangeText, onChangeInternational]);
114
+ const handleChangeText = useCallback(text => {
115
+ if (autoDetectCountry && text.trim().startsWith('+')) {
116
+ const parsed = parsePhoneNumberFromString(text.trim());
117
+ const detected = getCountryByCode(parsed?.country) ?? getCountryByCallingCode(parsed?.countryCallingCode);
118
+ if (detected && detected.code !== selectedCountry.code && countryList.some(c => c.code === detected.code)) {
119
+ const digits = parsed.nationalNumber;
120
+ if (controlledValue === undefined) setInternalNational(digits);
121
+ if (controlledCountry === undefined) setInternalCountryCode(detected.code);
122
+ onChangeCountry?.(detected);
123
+ emitChange(digits, detected);
124
+ return;
125
+ }
126
+ }
127
+ const digits = text.replace(/\D/g, '');
128
+ if (controlledValue === undefined) setInternalNational(digits);
129
+ emitChange(digits, selectedCountry);
130
+ }, [autoDetectCountry, controlledCountry, controlledValue, countryList, emitChange, onChangeCountry, selectedCountry]);
131
+ const handleSelectCountry = useCallback(next => {
132
+ setPickerVisible(false);
133
+ if (controlledCountry === undefined) setInternalCountryCode(next.code);
134
+ onChangeCountry?.(next);
135
+ emitChange(nationalNumber, next);
136
+ }, [controlledCountry, emitChange, nationalNumber, onChangeCountry]);
137
+ const borderColor = !disableValidation && nationalNumber.length > 0 && !value.isValid ? field.borderError : isFocused ? field.borderFocused : field.border;
138
+ const showFlag = displayMode !== 'code';
139
+ const showCode = displayMode !== 'flag';
140
+ return /*#__PURE__*/_jsxs(View, {
141
+ style: [style, containerStyle],
142
+ children: [/*#__PURE__*/_jsxs(View, {
143
+ style: [styles.container, {
144
+ borderColor,
145
+ borderRadius: theme?.borderRadius ?? 10,
146
+ backgroundColor: field.background
147
+ }],
148
+ children: [showCountryPicker && /*#__PURE__*/_jsxs(Pressable, {
149
+ onPress: () => setPickerVisible(true),
150
+ style: [styles.picker, countryPickerButtonStyle],
151
+ accessibilityRole: "button",
152
+ accessibilityLabel: `Selected country ${selectedCountry.name}, dial code +${selectedCountry.dialCode}`,
153
+ children: [renderFlag ? renderFlag(selectedCountry) : showFlag ? /*#__PURE__*/_jsx(Flag, {
154
+ country: selectedCountry,
155
+ size: 20,
156
+ style: flagStyle
157
+ }) : null, showCode && /*#__PURE__*/_jsxs(Text, {
158
+ style: [styles.dialCode, {
159
+ color: field.dialCode
160
+ }, dialCodeStyle],
161
+ children: ["+", selectedCountry.dialCode]
162
+ })]
163
+ }), showCountryPicker && /*#__PURE__*/_jsx(View, {
164
+ style: [styles.divider, {
165
+ backgroundColor: field.divider
166
+ }]
167
+ }), /*#__PURE__*/_jsx(TextInput, {
168
+ ref: inputRef,
169
+ value: formattedNational,
170
+ onChangeText: handleChangeText,
171
+ keyboardType: "phone-pad",
172
+ placeholder: textInputProps.placeholder ?? 'Phone number',
173
+ placeholderTextColor: field.placeholder,
174
+ style: [styles.input, {
175
+ color: field.text,
176
+ fontSize: theme?.fontSize ?? 16
177
+ }, inputStyle],
178
+ onFocus: e => {
179
+ setIsFocused(true);
180
+ onFocus?.(e);
181
+ },
182
+ onBlur: e => {
183
+ setIsFocused(false);
184
+ onBlur?.(e);
185
+ },
186
+ ...textInputProps
187
+ })]
188
+ }), showCountryPicker && /*#__PURE__*/_jsx(CountryPicker, {
189
+ visible: pickerVisible,
190
+ countries: countryList,
191
+ selected: selectedCountry,
192
+ onSelect: handleSelectCountry,
193
+ onClose: () => setPickerVisible(false),
194
+ searchPlaceholder: searchPlaceholder,
195
+ disableSearch: disableSearch,
196
+ renderCountryItem: renderCountryItem,
197
+ palette: palette,
198
+ presentationStyle: pickerPresentationStyle,
199
+ groupAlphabetically: groupAlphabetically,
200
+ showAlphabetIndex: showAlphabetIndex,
201
+ styles: pickerStyles,
202
+ safeAreaInsets: pickerSafeAreaInsets
203
+ })]
204
+ });
205
+ });
206
+ const styles = StyleSheet.create({
207
+ container: {
208
+ flexDirection: 'row',
209
+ alignItems: 'center',
210
+ borderWidth: StyleSheet.hairlineWidth * 2,
211
+ paddingHorizontal: 10,
212
+ minHeight: 46
213
+ },
214
+ picker: {
215
+ flexDirection: 'row',
216
+ alignItems: 'center',
217
+ flexShrink: 0,
218
+ paddingRight: 8,
219
+ gap: 5
220
+ },
221
+ // A real rule rather than a border on the country control: the control's
222
+ // border shares a color with the field's outer border, so a borderless
223
+ // field used to lose this divider along with it.
224
+ divider: {
225
+ width: StyleSheet.hairlineWidth * 2,
226
+ alignSelf: 'center',
227
+ height: 22,
228
+ marginRight: 8,
229
+ borderRadius: 1
230
+ },
231
+ dialCode: {
232
+ fontSize: 15,
233
+ fontWeight: '500'
234
+ },
235
+ input: {
236
+ flex: 1,
237
+ minWidth: 0,
238
+ paddingVertical: 10,
239
+ // On web, TextInput renders as a real <input>, which gets the browser's
240
+ // own default focus outline on top of our border-color focus styling —
241
+ // showing as a doubled border. This prop is a react-native-web-specific
242
+ // style extension (a no-op on native) that suppresses just that.
243
+ ...(Platform.OS === 'web' ? {
244
+ outlineStyle: 'none'
245
+ } : null)
246
+ }
247
+ });
248
+ //# sourceMappingURL=PhoneInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["AsYouType","parsePhoneNumberFromString","forwardRef","useCallback","useImperativeHandle","useMemo","useRef","useState","Platform","Pressable","Text","TextInput","View","StyleSheet","COUNTRIES","getCountryByCallingCode","getCountryByCode","getDeviceCountry","CountryPicker","Flag","usePhoneInputPalette","buildValue","readControlledValue","jsx","_jsx","jsxs","_jsxs","PhoneInput","PhoneInputImpl","defaultCountry","fallbackCountry","country","controlledCountry","value","controlledValue","onChangeText","onChangeInternational","onChangeCountry","countries","allowedCountries","excludedCountries","disableValidation","autoFormat","showCountryPicker","displayMode","renderFlag","renderCountryItem","searchPlaceholder","disableSearch","groupAlphabetically","showAlphabetIndex","autoDetectCountry","style","containerStyle","inputStyle","dialCodeStyle","flagStyle","countryPickerButtonStyle","pickerStyles","pickerSafeAreaInsets","theme","colorScheme","palette","paletteOverrides","pickerPresentationStyle","onFocus","onBlur","textInputProps","ref","field","background","backgroundColor","inputBackground","border","borderColor","borderFocused","focusedBorderColor","accent","borderError","errorBorderColor","danger","text","textColor","placeholder","placeholderColor","dialCode","dialCodeColor","divider","dividerColor","countryList","list","length","allow","Set","filter","c","has","code","exclude","internalCountryCode","setInternalCountryCode","device","some","internalNational","setInternalNational","startsWith","pickerVisible","setPickerVisible","isFocused","setIsFocused","inputRef","baseCountry","controlled","undefined","selectedCountry","nationalNumber","national","formattedNational","formatter","input","focus","current","blur","isValid","getValue","emitChange","digits","next","international","handleChangeText","trim","parsed","detected","countryCallingCode","replace","handleSelectCountry","showFlag","showCode","children","styles","container","borderRadius","onPress","picker","accessibilityRole","accessibilityLabel","name","size","color","keyboardType","placeholderTextColor","fontSize","e","visible","selected","onSelect","onClose","presentationStyle","safeAreaInsets","create","flexDirection","alignItems","borderWidth","hairlineWidth","paddingHorizontal","minHeight","flexShrink","paddingRight","gap","width","alignSelf","height","marginRight","fontWeight","flex","minWidth","paddingVertical","OS","outlineStyle"],"sourceRoot":"../../src","sources":["PhoneInput.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+
3
+ import metadata from 'libphonenumber-js/metadata.min.json';
4
+ import countriesData from './data/countries.json';
5
+ export const COUNTRIES = countriesData;
6
+ export const COUNTRIES_BY_CODE = COUNTRIES.reduce((acc, c) => {
7
+ acc[c.code] = c;
8
+ return acc;
9
+ }, {});
10
+ export function getCountryByCode(code) {
11
+ if (!code) return undefined;
12
+ return COUNTRIES_BY_CODE[code.toUpperCase()];
13
+ }
14
+
15
+ /** Some calling codes are shared by several countries (e.g. "44" -> GB, GG, IM,
16
+ * JE). libphonenumber-js's own metadata lists the primary/most-populous country
17
+ * for each shared calling code first — used as the fallback when a pasted/typed
18
+ * number's calling code is known but its digits don't match any one country's
19
+ * valid number patterns closely enough to disambiguate. */
20
+ const CALLING_CODE_TO_MAIN_COUNTRY = Object.fromEntries(Object.entries(metadata.country_calling_codes).map(([callingCode, codes]) => [callingCode, codes[0]]));
21
+ export function getCountryByCallingCode(callingCode) {
22
+ if (!callingCode) return undefined;
23
+ return getCountryByCode(CALLING_CODE_TO_MAIN_COUNTRY[callingCode]);
24
+ }
25
+
26
+ /** Reads the device's region from the JS engine's default locale (e.g. "en-IN"
27
+ * -> "IN"), with no native module required. Used as the initial country when
28
+ * the consumer doesn't pass `defaultCountry`. Returns undefined if the
29
+ * runtime can't resolve a locale/region (some Hermes builds, very old engines). */
30
+ export function getDeviceCountry() {
31
+ try {
32
+ const locale = Intl.NumberFormat().resolvedOptions().locale;
33
+ const region = new Intl.Locale(locale).region;
34
+ return getCountryByCode(region);
35
+ } catch {
36
+ return undefined;
37
+ }
38
+ }
39
+
40
+ /** Base A–Z letter for grouping, folding accents (e.g. "Å" -> "A") so every
41
+ * section maps onto the plain-ASCII quick-jump index. */
42
+ const COMBINING_MARKS = /[̀-ͯ]/g;
43
+ export function sectionLetterFor(name) {
44
+ const base = name.normalize('NFD').replace(COMBINING_MARKS, '').charAt(0).toUpperCase();
45
+ return /[A-Z]/.test(base) ? base : '#';
46
+ }
47
+
48
+ /** Groups an (already name-sorted) country list into contiguous A–Z sections. */
49
+ export function groupCountriesByLetter(list) {
50
+ const sections = [];
51
+ let current;
52
+ for (const country of list) {
53
+ const letter = sectionLetterFor(country.name);
54
+ if (!current || current.letter !== letter) {
55
+ current = {
56
+ letter,
57
+ data: []
58
+ };
59
+ sections.push(current);
60
+ }
61
+ current.data.push(country);
62
+ }
63
+ return sections;
64
+ }
65
+ //# sourceMappingURL=countries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["metadata","countriesData","COUNTRIES","COUNTRIES_BY_CODE","reduce","acc","c","code","getCountryByCode","undefined","toUpperCase","CALLING_CODE_TO_MAIN_COUNTRY","Object","fromEntries","entries","country_calling_codes","map","callingCode","codes","getCountryByCallingCode","getDeviceCountry","locale","Intl","NumberFormat","resolvedOptions","region","Locale","COMBINING_MARKS","sectionLetterFor","name","base","normalize","replace","charAt","test","groupCountriesByLetter","list","sections","current","country","letter","data","push"],"sourceRoot":"../../src","sources":["countries.ts"],"mappings":";;AACA,OAAOA,QAAQ,MAAM,qCAAqC;AAC1D,OAAOC,aAAa,MAAM,uBAAuB;AAkBjD,OAAO,MAAMC,SAAoB,GAAGD,aAA0B;AAE9D,OAAO,MAAME,iBAA0C,GAAGD,SAAS,CAACE,MAAM,CACxE,CAACC,GAAG,EAAEC,CAAC,KAAK;EACVD,GAAG,CAACC,CAAC,CAACC,IAAI,CAAC,GAAGD,CAAC;EACf,OAAOD,GAAG;AACZ,CAAC,EACD,CAAC,CACH,CAAC;AAED,OAAO,SAASG,gBAAgBA,CAACD,IAAoB,EAAuB;EAC1E,IAAI,CAACA,IAAI,EAAE,OAAOE,SAAS;EAC3B,OAAON,iBAAiB,CAACI,IAAI,CAACG,WAAW,CAAC,CAAC,CAAC;AAC9C;;AAEA;AACA;AACA;AACA;AACA;AACA,MAAMC,4BAAoD,GAAGC,MAAM,CAACC,WAAW,CAC7ED,MAAM,CAACE,OAAO,CACXd,QAAQ,CACNe,qBACL,CAAC,CAACC,GAAG,CAAC,CAAC,CAACC,WAAW,EAAEC,KAAK,CAAC,KAAK,CAACD,WAAW,EAAEC,KAAK,CAAC,CAAC,CAAC,CAAE,CAC1D,CAAC;AAED,OAAO,SAASC,uBAAuBA,CACrCF,WAA2B,EACN;EACrB,IAAI,CAACA,WAAW,EAAE,OAAOR,SAAS;EAClC,OAAOD,gBAAgB,CAACG,4BAA4B,CAACM,WAAW,CAAC,CAAC;AACpE;;AAEA;AACA;AACA;AACA;AACA,OAAO,SAASG,gBAAgBA,CAAA,EAAwB;EACtD,IAAI;IACF,MAAMC,MAAM,GAAGC,IAAI,CAACC,YAAY,CAAC,CAAC,CAACC,eAAe,CAAC,CAAC,CAACH,MAAM;IAC3D,MAAMI,MAAM,GAAG,IAAIH,IAAI,CAACI,MAAM,CAACL,MAAM,CAAC,CAACI,MAAM;IAC7C,OAAOjB,gBAAgB,CAACiB,MAAM,CAAC;EACjC,CAAC,CAAC,MAAM;IACN,OAAOhB,SAAS;EAClB;AACF;;AAEA;AACA;AACA,MAAMkB,eAAe,GAAG,QAAQ;AAEhC,OAAO,SAASC,gBAAgBA,CAACC,IAAY,EAAU;EACrD,MAAMC,IAAI,GAAGD,IAAI,CACdE,SAAS,CAAC,KAAK,CAAC,CAChBC,OAAO,CAACL,eAAe,EAAE,EAAE,CAAC,CAC5BM,MAAM,CAAC,CAAC,CAAC,CACTvB,WAAW,CAAC,CAAC;EAChB,OAAO,OAAO,CAACwB,IAAI,CAACJ,IAAI,CAAC,GAAGA,IAAI,GAAG,GAAG;AACxC;;AAEA;AACA,OAAO,SAASK,sBAAsBA,CAACC,IAAe,EAAoB;EACxE,MAAMC,QAA0B,GAAG,EAAE;EACrC,IAAIC,OAAmC;EACvC,KAAK,MAAMC,OAAO,IAAIH,IAAI,EAAE;IAC1B,MAAMI,MAAM,GAAGZ,gBAAgB,CAACW,OAAO,CAACV,IAAI,CAAC;IAC7C,IAAI,CAACS,OAAO,IAAIA,OAAO,CAACE,MAAM,KAAKA,MAAM,EAAE;MACzCF,OAAO,GAAG;QAAEE,MAAM;QAAEC,IAAI,EAAE;MAAG,CAAC;MAC9BJ,QAAQ,CAACK,IAAI,CAACJ,OAAO,CAAC;IACxB;IACAA,OAAO,CAACG,IAAI,CAACC,IAAI,CAACH,OAAO,CAAC;EAC5B;EACA,OAAOF,QAAQ;AACjB","ignoreList":[]}