react-native-phone-country-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 (172) hide show
  1. package/README.md +477 -0
  2. package/lib/commonjs/CountrySelector/CountrySelector.js +74 -0
  3. package/lib/commonjs/CountrySelector/CountrySelector.js.map +1 -0
  4. package/lib/commonjs/CountrySelector/CountrySelectorModal.js +267 -0
  5. package/lib/commonjs/CountrySelector/CountrySelectorModal.js.map +1 -0
  6. package/lib/commonjs/Keyboard/Keyboard.js +316 -0
  7. package/lib/commonjs/Keyboard/Keyboard.js.map +1 -0
  8. package/lib/commonjs/Keyboard/KeyboardToolbar.js +70 -0
  9. package/lib/commonjs/Keyboard/KeyboardToolbar.js.map +1 -0
  10. package/lib/commonjs/Keyboard/KeypadButton.js +66 -0
  11. package/lib/commonjs/Keyboard/KeypadButton.js.map +1 -0
  12. package/lib/commonjs/Keyboard/KeypadButtonContainer.js +65 -0
  13. package/lib/commonjs/Keyboard/KeypadButtonContainer.js.map +1 -0
  14. package/lib/commonjs/Keyboard/KeypadRow.js +34 -0
  15. package/lib/commonjs/Keyboard/KeypadRow.js.map +1 -0
  16. package/lib/commonjs/PhoneCountryInput/PhoneCountryInput.js +86 -0
  17. package/lib/commonjs/PhoneCountryInput/PhoneCountryInput.js.map +1 -0
  18. package/lib/commonjs/PhoneNumberField.js +36 -0
  19. package/lib/commonjs/PhoneNumberField.js.map +1 -0
  20. package/lib/commonjs/Styling/Colors.js +197 -0
  21. package/lib/commonjs/Styling/Colors.js.map +1 -0
  22. package/lib/commonjs/Styling/Sizing.js +111 -0
  23. package/lib/commonjs/Styling/Sizing.js.map +1 -0
  24. package/lib/commonjs/consts/KEYBOARD_LAYOUT.js +45 -0
  25. package/lib/commonjs/consts/KEYBOARD_LAYOUT.js.map +1 -0
  26. package/lib/commonjs/consts/regions.js +1503 -0
  27. package/lib/commonjs/consts/regions.js.map +1 -0
  28. package/lib/commonjs/enum/CountryIds.js +264 -0
  29. package/lib/commonjs/enum/CountryIds.js.map +1 -0
  30. package/lib/commonjs/hooks/UsePhoneFieldState.js +237 -0
  31. package/lib/commonjs/hooks/UsePhoneFieldState.js.map +1 -0
  32. package/lib/commonjs/index.js +56 -0
  33. package/lib/commonjs/index.js.map +1 -0
  34. package/lib/commonjs/package.json +1 -0
  35. package/lib/commonjs/utils/characterDeletion.js +20 -0
  36. package/lib/commonjs/utils/characterDeletion.js.map +1 -0
  37. package/lib/commonjs/utils/characterInsert.js +20 -0
  38. package/lib/commonjs/utils/characterInsert.js.map +1 -0
  39. package/lib/commonjs/utils/fromMaskedNumberToUnmaskedSelection.js +14 -0
  40. package/lib/commonjs/utils/fromMaskedNumberToUnmaskedSelection.js.map +1 -0
  41. package/lib/commonjs/utils/fromUnmaskedToMaskedPosition.js +20 -0
  42. package/lib/commonjs/utils/fromUnmaskedToMaskedPosition.js.map +1 -0
  43. package/lib/commonjs/utils/generateCountryCodeList.js +23 -0
  44. package/lib/commonjs/utils/generateCountryCodeList.js.map +1 -0
  45. package/lib/commonjs/utils/getDefaultRegion.js +33 -0
  46. package/lib/commonjs/utils/getDefaultRegion.js.map +1 -0
  47. package/lib/commonjs/utils/maskToPhoneNumber.js +23 -0
  48. package/lib/commonjs/utils/maskToPhoneNumber.js.map +1 -0
  49. package/lib/commonjs/utils/matchCountryCode.js +27 -0
  50. package/lib/commonjs/utils/matchCountryCode.js.map +1 -0
  51. package/lib/module/CountrySelector/CountrySelector.js +70 -0
  52. package/lib/module/CountrySelector/CountrySelector.js.map +1 -0
  53. package/lib/module/CountrySelector/CountrySelectorModal.js +262 -0
  54. package/lib/module/CountrySelector/CountrySelectorModal.js.map +1 -0
  55. package/lib/module/Keyboard/Keyboard.js +310 -0
  56. package/lib/module/Keyboard/Keyboard.js.map +1 -0
  57. package/lib/module/Keyboard/KeyboardToolbar.js +65 -0
  58. package/lib/module/Keyboard/KeyboardToolbar.js.map +1 -0
  59. package/lib/module/Keyboard/KeypadButton.js +61 -0
  60. package/lib/module/Keyboard/KeypadButton.js.map +1 -0
  61. package/lib/module/Keyboard/KeypadButtonContainer.js +59 -0
  62. package/lib/module/Keyboard/KeypadButtonContainer.js.map +1 -0
  63. package/lib/module/Keyboard/KeypadRow.js +30 -0
  64. package/lib/module/Keyboard/KeypadRow.js.map +1 -0
  65. package/lib/module/PhoneCountryInput/PhoneCountryInput.js +80 -0
  66. package/lib/module/PhoneCountryInput/PhoneCountryInput.js.map +1 -0
  67. package/lib/module/PhoneNumberField.js +31 -0
  68. package/lib/module/PhoneNumberField.js.map +1 -0
  69. package/lib/module/Styling/Colors.js +193 -0
  70. package/lib/module/Styling/Colors.js.map +1 -0
  71. package/lib/module/Styling/Sizing.js +107 -0
  72. package/lib/module/Styling/Sizing.js.map +1 -0
  73. package/lib/module/consts/KEYBOARD_LAYOUT.js +41 -0
  74. package/lib/module/consts/KEYBOARD_LAYOUT.js.map +1 -0
  75. package/lib/module/consts/regions.js +1498 -0
  76. package/lib/module/consts/regions.js.map +1 -0
  77. package/lib/module/enum/CountryIds.js +260 -0
  78. package/lib/module/enum/CountryIds.js.map +1 -0
  79. package/lib/module/hooks/UsePhoneFieldState.js +232 -0
  80. package/lib/module/hooks/UsePhoneFieldState.js.map +1 -0
  81. package/lib/module/index.js +16 -0
  82. package/lib/module/index.js.map +1 -0
  83. package/lib/module/package.json +1 -0
  84. package/lib/module/utils/characterDeletion.js +16 -0
  85. package/lib/module/utils/characterDeletion.js.map +1 -0
  86. package/lib/module/utils/characterInsert.js +16 -0
  87. package/lib/module/utils/characterInsert.js.map +1 -0
  88. package/lib/module/utils/fromMaskedNumberToUnmaskedSelection.js +10 -0
  89. package/lib/module/utils/fromMaskedNumberToUnmaskedSelection.js.map +1 -0
  90. package/lib/module/utils/fromUnmaskedToMaskedPosition.js +16 -0
  91. package/lib/module/utils/fromUnmaskedToMaskedPosition.js.map +1 -0
  92. package/lib/module/utils/generateCountryCodeList.js +19 -0
  93. package/lib/module/utils/generateCountryCodeList.js.map +1 -0
  94. package/lib/module/utils/getDefaultRegion.js +28 -0
  95. package/lib/module/utils/getDefaultRegion.js.map +1 -0
  96. package/lib/module/utils/maskToPhoneNumber.js +19 -0
  97. package/lib/module/utils/maskToPhoneNumber.js.map +1 -0
  98. package/lib/module/utils/matchCountryCode.js +23 -0
  99. package/lib/module/utils/matchCountryCode.js.map +1 -0
  100. package/lib/typescript/CountrySelector/CountrySelector.d.ts +19 -0
  101. package/lib/typescript/CountrySelector/CountrySelector.d.ts.map +1 -0
  102. package/lib/typescript/CountrySelector/CountrySelectorModal.d.ts +12 -0
  103. package/lib/typescript/CountrySelector/CountrySelectorModal.d.ts.map +1 -0
  104. package/lib/typescript/Keyboard/Keyboard.d.ts +25 -0
  105. package/lib/typescript/Keyboard/Keyboard.d.ts.map +1 -0
  106. package/lib/typescript/Keyboard/KeyboardToolbar.d.ts +9 -0
  107. package/lib/typescript/Keyboard/KeyboardToolbar.d.ts.map +1 -0
  108. package/lib/typescript/Keyboard/KeypadButton.d.ts +10 -0
  109. package/lib/typescript/Keyboard/KeypadButton.d.ts.map +1 -0
  110. package/lib/typescript/Keyboard/KeypadButtonContainer.d.ts +12 -0
  111. package/lib/typescript/Keyboard/KeypadButtonContainer.d.ts.map +1 -0
  112. package/lib/typescript/Keyboard/KeypadRow.d.ts +9 -0
  113. package/lib/typescript/Keyboard/KeypadRow.d.ts.map +1 -0
  114. package/lib/typescript/PhoneCountryInput/PhoneCountryInput.d.ts +16 -0
  115. package/lib/typescript/PhoneCountryInput/PhoneCountryInput.d.ts.map +1 -0
  116. package/lib/typescript/PhoneNumberField.d.ts +17 -0
  117. package/lib/typescript/PhoneNumberField.d.ts.map +1 -0
  118. package/lib/typescript/Styling/Colors.d.ts +189 -0
  119. package/lib/typescript/Styling/Colors.d.ts.map +1 -0
  120. package/lib/typescript/Styling/Sizing.d.ts +214 -0
  121. package/lib/typescript/Styling/Sizing.d.ts.map +1 -0
  122. package/lib/typescript/consts/KEYBOARD_LAYOUT.d.ts +18 -0
  123. package/lib/typescript/consts/KEYBOARD_LAYOUT.d.ts.map +1 -0
  124. package/lib/typescript/consts/regions.d.ts +10 -0
  125. package/lib/typescript/consts/regions.d.ts.map +1 -0
  126. package/lib/typescript/enum/CountryIds.d.ts +249 -0
  127. package/lib/typescript/enum/CountryIds.d.ts.map +1 -0
  128. package/lib/typescript/hooks/UsePhoneFieldState.d.ts +34 -0
  129. package/lib/typescript/hooks/UsePhoneFieldState.d.ts.map +1 -0
  130. package/lib/typescript/index.d.ts +15 -0
  131. package/lib/typescript/index.d.ts.map +1 -0
  132. package/lib/typescript/utils/characterDeletion.d.ts +3 -0
  133. package/lib/typescript/utils/characterDeletion.d.ts.map +1 -0
  134. package/lib/typescript/utils/characterInsert.d.ts +3 -0
  135. package/lib/typescript/utils/characterInsert.d.ts.map +1 -0
  136. package/lib/typescript/utils/fromMaskedNumberToUnmaskedSelection.d.ts +2 -0
  137. package/lib/typescript/utils/fromMaskedNumberToUnmaskedSelection.d.ts.map +1 -0
  138. package/lib/typescript/utils/fromUnmaskedToMaskedPosition.d.ts +2 -0
  139. package/lib/typescript/utils/fromUnmaskedToMaskedPosition.d.ts.map +1 -0
  140. package/lib/typescript/utils/generateCountryCodeList.d.ts +3 -0
  141. package/lib/typescript/utils/generateCountryCodeList.d.ts.map +1 -0
  142. package/lib/typescript/utils/getDefaultRegion.d.ts +4 -0
  143. package/lib/typescript/utils/getDefaultRegion.d.ts.map +1 -0
  144. package/lib/typescript/utils/maskToPhoneNumber.d.ts +2 -0
  145. package/lib/typescript/utils/maskToPhoneNumber.d.ts.map +1 -0
  146. package/lib/typescript/utils/matchCountryCode.d.ts +3 -0
  147. package/lib/typescript/utils/matchCountryCode.d.ts.map +1 -0
  148. package/package.json +92 -0
  149. package/src/CountrySelector/CountrySelector.tsx +77 -0
  150. package/src/CountrySelector/CountrySelectorModal.tsx +280 -0
  151. package/src/Keyboard/Keyboard.tsx +322 -0
  152. package/src/Keyboard/KeyboardToolbar.tsx +53 -0
  153. package/src/Keyboard/KeypadButton.tsx +58 -0
  154. package/src/Keyboard/KeypadButtonContainer.tsx +67 -0
  155. package/src/Keyboard/KeypadRow.tsx +29 -0
  156. package/src/PhoneCountryInput/PhoneCountryInput.tsx +98 -0
  157. package/src/PhoneNumberField.tsx +46 -0
  158. package/src/Styling/Colors.ts +206 -0
  159. package/src/Styling/Sizing.ts +110 -0
  160. package/src/consts/KEYBOARD_LAYOUT.ts +34 -0
  161. package/src/consts/regions.ts +268 -0
  162. package/src/enum/CountryIds.ts +256 -0
  163. package/src/hooks/UsePhoneFieldState.tsx +268 -0
  164. package/src/index.ts +27 -0
  165. package/src/utils/characterDeletion.ts +16 -0
  166. package/src/utils/characterInsert.ts +20 -0
  167. package/src/utils/fromMaskedNumberToUnmaskedSelection.ts +10 -0
  168. package/src/utils/fromUnmaskedToMaskedPosition.ts +13 -0
  169. package/src/utils/generateCountryCodeList.ts +22 -0
  170. package/src/utils/getDefaultRegion.ts +30 -0
  171. package/src/utils/maskToPhoneNumber.ts +30 -0
  172. package/src/utils/matchCountryCode.ts +23 -0
@@ -0,0 +1,267 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.CountrySelectorModal = CountrySelectorModal;
7
+ var _react = require("react");
8
+ var _reactNative = require("react-native");
9
+ var _asyncStorage = _interopRequireDefault(require("@react-native-async-storage/async-storage"));
10
+ var _vectorIcons = require("@expo/vector-icons");
11
+ var _getDefaultRegion = require("../utils/getDefaultRegion");
12
+ var _Sizing = require("../Styling/Sizing");
13
+ var _Colors = require("../Styling/Colors");
14
+ var _jsxRuntime = require("react/jsx-runtime");
15
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
16
+ const CLICK_COUNTS_KEY = '@country_selector_click_counts';
17
+ const RECENT_SECTION_COUNT = 4;
18
+ function CountrySelectorModal(props) {
19
+ const {
20
+ height
21
+ } = (0, _reactNative.useWindowDimensions)();
22
+ const [searchValue, setSearchValue] = (0, _react.useState)('');
23
+ const [clickCounts, setClickCounts] = (0, _react.useState)({});
24
+ (0, _react.useEffect)(() => {
25
+ _asyncStorage.default.getItem(CLICK_COUNTS_KEY).then(raw => {
26
+ if (raw) setClickCounts(JSON.parse(raw));
27
+ });
28
+ }, []);
29
+ const recordClick = (0, _react.useCallback)(async country => {
30
+ const updated = {
31
+ ...clickCounts,
32
+ [country.id]: (clickCounts[country.id] ?? 0) + 1
33
+ };
34
+ setClickCounts(updated);
35
+ await _asyncStorage.default.setItem(CLICK_COUNTS_KEY, JSON.stringify(updated));
36
+ }, [clickCounts]);
37
+ const recentSection = (0, _react.useMemo)(() => {
38
+ const allCountries = props.UserCountryCodes ?? [];
39
+ const defaultCountry = (0, _getDefaultRegion.getDefaultRegionWithNullableState)(allCountries);
40
+ const topClicked = Object.entries(clickCounts).sort(([, a], [, b]) => b - a).slice(0, RECENT_SECTION_COUNT).map(([id]) => allCountries.find(c => c.id === id)).filter(c => c != null);
41
+ if (!defaultCountry && topClicked.length === 0) return null;
42
+ const data = [];
43
+ if (defaultCountry) data.push(defaultCountry);
44
+ for (const c of topClicked) {
45
+ if (!data.some(d => d.id === c.id)) data.push(c);
46
+ }
47
+ return {
48
+ title: 'Recent Countries',
49
+ data
50
+ };
51
+ }, [clickCounts, props.UserCountryCodes]);
52
+ const sections = (0, _react.useMemo)(() => {
53
+ const sorted = [...(props.UserCountryCodes ?? [])].sort((a, b) => a.name.localeCompare(b.name));
54
+ const filtered = searchValue.length < 1 ? sorted : sorted.filter(({
55
+ name,
56
+ code,
57
+ id
58
+ }) => name.toLowerCase().includes(searchValue.toLowerCase()) || code.includes(searchValue) || id.toLowerCase().includes(searchValue.toLowerCase()));
59
+ const grouped = filtered.reduce((acc, country) => {
60
+ let letter = country.name[0].toUpperCase();
61
+ if (letter === 'Å') {
62
+ letter = 'A';
63
+ }
64
+ if (!acc[letter]) acc[letter] = [];
65
+ acc[letter].push(country);
66
+ return acc;
67
+ }, {});
68
+ const alphaSections = Object.keys(grouped).sort().map(letter => ({
69
+ title: letter,
70
+ data: grouped[letter]
71
+ }));
72
+ return alphaSections;
73
+ }, [props.UserCountryCodes, searchValue]);
74
+ const allSections = (0, _react.useMemo)(() => {
75
+ if (searchValue.length > 0 || !recentSection) return sections;
76
+ return [recentSection, ...sections];
77
+ }, [recentSection, sections, searchValue]);
78
+ const UserModal = (0, _react.useMemo)(() => {
79
+ if (props.underlineModal) {
80
+ console.debug('underlineModal');
81
+ return props.underlineModal;
82
+ }
83
+ console.debug('underlineModal - underfine');
84
+ return undefined;
85
+ }, [props.underlineModal]);
86
+ if (UserModal) {
87
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(UserModal, {
88
+ ...props
89
+ });
90
+ }
91
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Modal, {
92
+ animationType: "slide",
93
+ visible: props.isOpen,
94
+ transparent: true,
95
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
96
+ style: styles.overlay,
97
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableWithoutFeedback, {
98
+ onPress: () => {
99
+ props.toggleModalVisablity();
100
+ setSearchValue('');
101
+ },
102
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
103
+ style: _reactNative.StyleSheet.absoluteFillObject
104
+ })
105
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
106
+ style: [styles.container, {
107
+ height: height / 2.5
108
+ }],
109
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
110
+ style: {
111
+ backgroundColor: _Colors.colors.white,
112
+ padding: _Sizing.padding[3],
113
+ borderTopLeftRadius: _Sizing.radius['3xl'],
114
+ borderTopRightRadius: _Sizing.radius['3xl']
115
+ },
116
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
117
+ style: styles.searchContainer,
118
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_vectorIcons.Feather, {
119
+ name: "search",
120
+ size: 16,
121
+ color: "gray"
122
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TextInput, {
123
+ placeholder: "Country name or code",
124
+ style: styles.searchInput,
125
+ value: searchValue,
126
+ onChangeText: value => {
127
+ setSearchValue(value);
128
+ }
129
+ })]
130
+ })
131
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.SectionList, {
132
+ ItemSeparatorComponent: () => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
133
+ style: styles.divider
134
+ }),
135
+ sections: allSections,
136
+ keyExtractor: (item, index) => `${item.id}-${index}`,
137
+ style: {
138
+ borderTopLeftRadius: _Sizing.radius['lg'],
139
+ borderTopRightRadius: _Sizing.radius['lg']
140
+ },
141
+ renderSectionHeader: ({
142
+ section
143
+ }) => /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
144
+ style: styles.sectionHeader,
145
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
146
+ style: styles.sectionHeaderText,
147
+ children: section.title
148
+ })
149
+ }),
150
+ renderItem: ({
151
+ item,
152
+ index,
153
+ section
154
+ }) => {
155
+ const isSelected = item.id === props.value?.id;
156
+ const isFirst = index === 0;
157
+ const isLast = index === section.data.length - 1;
158
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Pressable, {
159
+ onPress: () => {
160
+ recordClick(item);
161
+ props.onSelectCountry(item);
162
+ props.toggleModalVisablity();
163
+ setSearchValue('');
164
+ },
165
+ style: {
166
+ padding: _Sizing.spacing[3],
167
+ gap: _Sizing.spacing[1],
168
+ marginHorizontal: _Sizing.SIDE_SCREEN_PADDING,
169
+ backgroundColor: isSelected ? _Colors.colors.blue[50] : _Colors.colors.white,
170
+ borderTopLeftRadius: isFirst ? _Sizing.radius.lg : 0,
171
+ borderTopRightRadius: isFirst ? _Sizing.radius.lg : 0,
172
+ borderBottomLeftRadius: isLast ? _Sizing.radius.lg : 0,
173
+ borderBottomRightRadius: isLast ? _Sizing.radius.lg : 0
174
+ },
175
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
176
+ style: {
177
+ flexDirection: 'row',
178
+ gap: _Sizing.spacing[1],
179
+ alignItems: 'center'
180
+ },
181
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
182
+ children: item.flag
183
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
184
+ style: [{
185
+ flexShrink: 1
186
+ }, isSelected ? {
187
+ fontWeight: '600'
188
+ } : undefined],
189
+ children: item.name
190
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Text, {
191
+ children: ["(", item.code, ")"]
192
+ }), isSelected && /*#__PURE__*/(0, _jsxRuntime.jsx)(_vectorIcons.Feather, {
193
+ name: "check",
194
+ size: 14,
195
+ color: _Colors.colors.blue[500],
196
+ style: {
197
+ marginLeft: 'auto'
198
+ }
199
+ })]
200
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
201
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Text, {
202
+ style: {
203
+ fontSize: _Sizing.fontSize.xs,
204
+ color: _Colors.colors.gray[400],
205
+ paddingHorizontal: _Sizing.padding[0.5]
206
+ },
207
+ children: [item.code, " ", item.mask.replace(/\#/g, '_')]
208
+ })
209
+ })]
210
+ });
211
+ }
212
+ })]
213
+ })]
214
+ })
215
+ });
216
+ }
217
+ const styles = _reactNative.StyleSheet.create({
218
+ overlay: {
219
+ flex: 1,
220
+ justifyContent: 'flex-end'
221
+ },
222
+ container: {
223
+ backgroundColor: _Colors.colors.gray[200],
224
+ // gap: gap[4],
225
+ borderTopLeftRadius: _Sizing.radius['3xl'],
226
+ borderTopRightRadius: _Sizing.radius['3xl'],
227
+ shadowColor: '#000',
228
+ shadowOffset: {
229
+ width: 0,
230
+ height: -4
231
+ },
232
+ shadowOpacity: 0.25,
233
+ shadowRadius: 8
234
+ },
235
+ searchContainer: {
236
+ height: 40,
237
+ flexDirection: 'row',
238
+ alignItems: 'center',
239
+ borderWidth: _Sizing.borderWidth.DEFAULT,
240
+ borderColor: _Colors.colors.gray[100],
241
+ paddingHorizontal: _Sizing.spacing[1],
242
+ backgroundColor: _Colors.colors.gray[300],
243
+ borderRadius: _Sizing.radius['2xl']
244
+ },
245
+ searchInput: {
246
+ flex: 1,
247
+ padding: _Sizing.spacing[1]
248
+ },
249
+ divider: {
250
+ height: _Sizing.borderWidth.DEFAULT,
251
+ backgroundColor: _Colors.colors.gray[200],
252
+ marginHorizontal: _Sizing.spacing[1.5]
253
+ },
254
+ sectionHeader: {
255
+ backgroundColor: _Colors.colors.gray[200],
256
+ paddingHorizontal: _Sizing.SIDE_SCREEN_PADDING,
257
+ paddingVertical: _Sizing.spacing[2]
258
+ },
259
+ sectionHeaderText: {
260
+ fontSize: _Sizing.fontSize.xs,
261
+ fontWeight: '700',
262
+ color: _Colors.colors.gray[500],
263
+ textTransform: 'uppercase',
264
+ letterSpacing: 0.8
265
+ }
266
+ });
267
+ //# sourceMappingURL=CountrySelectorModal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","require","_reactNative","_asyncStorage","_interopRequireDefault","_vectorIcons","_getDefaultRegion","_Sizing","_Colors","_jsxRuntime","e","__esModule","default","CLICK_COUNTS_KEY","RECENT_SECTION_COUNT","CountrySelectorModal","props","height","useWindowDimensions","searchValue","setSearchValue","useState","clickCounts","setClickCounts","useEffect","AsyncStorage","getItem","then","raw","JSON","parse","recordClick","useCallback","country","updated","id","setItem","stringify","recentSection","useMemo","allCountries","UserCountryCodes","defaultCountry","getDefaultRegionWithNullableState","topClicked","Object","entries","sort","a","b","slice","map","find","c","filter","length","data","push","some","d","title","sections","sorted","name","localeCompare","filtered","code","toLowerCase","includes","grouped","reduce","acc","letter","toUpperCase","alphaSections","keys","allSections","UserModal","underlineModal","console","debug","undefined","jsx","Modal","animationType","visible","isOpen","transparent","children","jsxs","View","style","styles","overlay","TouchableWithoutFeedback","onPress","toggleModalVisablity","StyleSheet","absoluteFillObject","container","backgroundColor","colors","white","padding","borderTopLeftRadius","radius","borderTopRightRadius","searchContainer","Feather","size","color","TextInput","placeholder","searchInput","value","onChangeText","SectionList","ItemSeparatorComponent","divider","keyExtractor","item","index","renderSectionHeader","section","sectionHeader","Text","sectionHeaderText","renderItem","isSelected","isFirst","isLast","Pressable","onSelectCountry","spacing","gap","marginHorizontal","SIDE_SCREEN_PADDING","blue","lg","borderBottomLeftRadius","borderBottomRightRadius","flexDirection","alignItems","flag","flexShrink","fontWeight","marginLeft","fontSize","fontSizes","xs","gray","paddingHorizontal","mask","replace","create","flex","justifyContent","shadowColor","shadowOffset","width","shadowOpacity","shadowRadius","borderWidth","borders","DEFAULT","borderColor","borderRadius","paddingVertical","textTransform","letterSpacing"],"sourceRoot":"../../../src","sources":["CountrySelector/CountrySelectorModal.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,316 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _KEYBOARD_LAYOUT = require("../consts/KEYBOARD_LAYOUT");
9
+ var _KeypadRow = _interopRequireDefault(require("./KeypadRow"));
10
+ var _reactNative = require("react-native");
11
+ var _reactNativeTeleport = require("react-native-teleport");
12
+ var _reactNativeReanimated = _interopRequireWildcard(require("react-native-reanimated"));
13
+ var _KeyboardToolbar = _interopRequireDefault(require("./KeyboardToolbar"));
14
+ var _Sizing = require("../Styling/Sizing");
15
+ var _Colors = require("../Styling/Colors");
16
+ var _vectorIcons = require("@expo/vector-icons");
17
+ var _jsxRuntime = require("react/jsx-runtime");
18
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
19
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
20
+ function Keyboard(props) {
21
+ const PasteErrorModal = (0, _react.useMemo)(() => props.underlinePasteErrorModal ?? null, [props.underlinePasteErrorModal]);
22
+ const CopySuccessModal = (0, _react.useMemo)(() => props.underlineCopySuccessModal ?? null, [props.underlineCopySuccessModal]);
23
+ const [isPasteErrorVisible, setIsPasteErrorVisible] = (0, _react.useState)(false);
24
+ const dismissPasteError = (0, _react.useCallback)(() => setIsPasteErrorVisible(false), []);
25
+ const [isCopySuccessVisible, setIsCopySuccessVisible] = (0, _react.useState)(false);
26
+ const dismissCopySuccess = (0, _react.useCallback)(() => setIsCopySuccessVisible(false), []);
27
+ const handlePaste = (0, _react.useCallback)(() => {
28
+ props.onPaste().then(success => {
29
+ if (!success) setIsPasteErrorVisible(true);
30
+ });
31
+ }, [props.onPaste]);
32
+ const handleCopy = (0, _react.useCallback)(() => {
33
+ props.onCopy();
34
+ setIsCopySuccessVisible(true);
35
+ }, [props.onCopy]);
36
+ const isOpenShared = (0, _reactNativeReanimated.useSharedValue)(props.isOpen);
37
+ (0, _react.useEffect)(() => {
38
+ isOpenShared.value = props.isOpen;
39
+ }, [isOpenShared, props.isOpen]);
40
+ const height = (0, _reactNativeReanimated.useSharedValue)(0);
41
+ const progress = (0, _reactNativeReanimated.useDerivedValue)(() => (0, _reactNativeReanimated.withTiming)(isOpenShared.value ? 0 : 1, {
42
+ duration: 250
43
+ }));
44
+ const sheetStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => ({
45
+ transform: [{
46
+ translateY: progress.value * 2 * height.value
47
+ }]
48
+ }));
49
+ const backdropStyle = (0, _reactNativeReanimated.useAnimatedStyle)(() => ({
50
+ opacity: 1 - progress.value,
51
+ zIndex: isOpenShared.value ? 1 : (0, _reactNativeReanimated.withDelay)(250, (0, _reactNativeReanimated.withTiming)(-1, {
52
+ duration: 0
53
+ }))
54
+ }));
55
+ const layout = (0, _react.useMemo)(() => {
56
+ console.debug('-- ⚠️ Rerender Keyboard--');
57
+ return _KEYBOARD_LAYOUT.KEYBOARD_LAYOUT.map((row, i) => {
58
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_KeypadRow.default, {
59
+ row: row,
60
+ onPress: props.onKeyPress
61
+ }, 'row-' + i);
62
+ });
63
+ }, [props.onKeyPress]);
64
+ const {
65
+ height: screenHeight
66
+ } = _reactNative.Dimensions.get('window');
67
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNativeTeleport.Portal, {
68
+ hostName: "ipad-keyboard",
69
+ children: [props.isOpen && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
70
+ style: [_reactNative.StyleSheet.absoluteFillObject, {
71
+ zIndex: 0
72
+ }],
73
+ onPress: props.onClose
74
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeReanimated.default.View, {
75
+ onLayout: e => {
76
+ height.value = e.nativeEvent.layout.height;
77
+ },
78
+ style: [sheetStyles.sheet, {
79
+ height: screenHeight / 2.5
80
+ }, sheetStyle, backdropStyle],
81
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
82
+ style: {
83
+ flex: 1,
84
+ gap: _KEYBOARD_LAYOUT.GAP,
85
+ paddingBottom: _Sizing.spacing[14],
86
+ paddingHorizontal: _Sizing.spacing[4]
87
+ },
88
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_KeyboardToolbar.default, {
89
+ onClose: props.onClose,
90
+ value: props.value,
91
+ onCopy: handleCopy,
92
+ onPaste: handlePaste
93
+ }), layout]
94
+ })
95
+ }), PasteErrorModal ? /*#__PURE__*/(0, _jsxRuntime.jsx)(PasteErrorModal, {
96
+ visible: isPasteErrorVisible,
97
+ onRequestClose: dismissPasteError,
98
+ isPasteErrorVisible: isPasteErrorVisible,
99
+ dismissPasteError: dismissPasteError,
100
+ transparent: true,
101
+ animationType: "fade"
102
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Modal, {
103
+ visible: isPasteErrorVisible,
104
+ onRequestClose: dismissPasteError,
105
+ transparent: true,
106
+ animationType: "fade",
107
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
108
+ style: pasteErrorStyles.overlay,
109
+ onPress: dismissPasteError,
110
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
111
+ style: pasteErrorStyles.card,
112
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
113
+ style: pasteErrorStyles.cardContent,
114
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
115
+ style: pasteErrorStyles.textContent,
116
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
117
+ style: pasteErrorStyles.titleContainer,
118
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_vectorIcons.Feather, {
119
+ name: "alert-triangle",
120
+ size: _Sizing.spacing[6]
121
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
122
+ style: pasteErrorStyles.title,
123
+ children: "Cannot Paste"
124
+ })]
125
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
126
+ style: pasteErrorStyles.message,
127
+ children: "Clipboard does not contain a valid phone number."
128
+ })]
129
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
130
+ style: pasteErrorStyles.button,
131
+ onPress: dismissPasteError,
132
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
133
+ style: pasteErrorStyles.buttonText,
134
+ children: "OK"
135
+ })
136
+ })]
137
+ })
138
+ })
139
+ })
140
+ }), CopySuccessModal ? /*#__PURE__*/(0, _jsxRuntime.jsx)(CopySuccessModal, {
141
+ visible: isCopySuccessVisible,
142
+ onRequestClose: dismissCopySuccess,
143
+ isCopySuccessVisible: isCopySuccessVisible,
144
+ dismissCopySuccess: dismissCopySuccess,
145
+ transparent: true,
146
+ animationType: "fade"
147
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Modal, {
148
+ visible: isCopySuccessVisible,
149
+ onRequestClose: dismissCopySuccess,
150
+ transparent: true,
151
+ animationType: "fade",
152
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
153
+ style: copySuccessStyles.overlay,
154
+ onPress: dismissCopySuccess,
155
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
156
+ style: copySuccessStyles.card,
157
+ children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
158
+ style: copySuccessStyles.cardContent,
159
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
160
+ style: copySuccessStyles.textContent,
161
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
162
+ style: copySuccessStyles.titleContainer,
163
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_vectorIcons.Feather, {
164
+ name: "clipboard",
165
+ size: _Sizing.spacing[6]
166
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
167
+ style: copySuccessStyles.title,
168
+ children: "Copied"
169
+ })]
170
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
171
+ style: copySuccessStyles.message,
172
+ children: "Phone number copied to clipboard."
173
+ })]
174
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
175
+ style: copySuccessStyles.button,
176
+ onPress: dismissCopySuccess,
177
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
178
+ style: copySuccessStyles.buttonText,
179
+ children: "OK"
180
+ })
181
+ })]
182
+ })
183
+ })
184
+ })
185
+ })]
186
+ });
187
+ }
188
+ var _default = exports.default = /*#__PURE__*/(0, _react.memo)(Keyboard);
189
+ const sheetStyles = _reactNative.StyleSheet.create({
190
+ sheet: {
191
+ width: '100%',
192
+ position: 'absolute',
193
+ bottom: 0,
194
+ borderTopRightRadius: 20,
195
+ borderTopLeftRadius: 20,
196
+ backgroundColor: '#D1D5DB',
197
+ zIndex: 3,
198
+ gap: 12
199
+ }
200
+ });
201
+ const pasteErrorStyles = _reactNative.StyleSheet.create({
202
+ overlay: {
203
+ flex: 1,
204
+ backgroundColor: 'rgba(0,0,0,0.4)',
205
+ justifyContent: 'center',
206
+ alignItems: 'center',
207
+ padding: _Sizing.spacing[6]
208
+ },
209
+ card: {
210
+ backgroundColor: _Colors.colors.white,
211
+ borderRadius: _Sizing.radius.xl,
212
+ padding: _Sizing.padding[5],
213
+ width: '100%',
214
+ maxWidth: 250,
215
+ maxHeight: 220,
216
+ alignItems: 'center',
217
+ justifyContent: 'center'
218
+ },
219
+ cardContent: {},
220
+ textContent: {
221
+ flex: 4,
222
+ gap: _Sizing.spacing[2],
223
+ alignItems: 'center',
224
+ justifyContent: 'center'
225
+ },
226
+ titleContainer: {
227
+ flexDirection: 'row',
228
+ gap: _Sizing.spacing[2],
229
+ alignItems: 'center'
230
+ },
231
+ title: {
232
+ fontSize: _Sizing.spacing[6],
233
+ fontWeight: '600',
234
+ color: _Colors.colors.black
235
+ },
236
+ message: {
237
+ fontSize: 14,
238
+ color: _Colors.colors.gray[500],
239
+ textAlign: 'center'
240
+ },
241
+ button: {
242
+ marginTop: _Sizing.spacing[2],
243
+ backgroundColor: _Colors.colors.red[800],
244
+ borderRadius: _Sizing.radius.lg,
245
+ paddingVertical: _Sizing.spacing[2],
246
+ paddingHorizontal: _Sizing.spacing[8],
247
+ flex: 1,
248
+ alignItems: 'center',
249
+ justifyContent: 'center'
250
+ },
251
+ buttonText: {
252
+ fontSize: 15,
253
+ fontWeight: '500',
254
+ color: _Colors.colors.white,
255
+ textAlign: 'center'
256
+ }
257
+ });
258
+ const copySuccessStyles = _reactNative.StyleSheet.create({
259
+ overlay: {
260
+ flex: 1,
261
+ backgroundColor: 'rgba(0,0,0,0.4)',
262
+ justifyContent: 'center',
263
+ alignItems: 'center',
264
+ padding: _Sizing.spacing[6]
265
+ },
266
+ card: {
267
+ backgroundColor: _Colors.colors.white,
268
+ borderRadius: _Sizing.radius.xl,
269
+ padding: _Sizing.padding[5],
270
+ width: '100%',
271
+ maxWidth: 250,
272
+ maxHeight: 220,
273
+ alignItems: 'center',
274
+ justifyContent: 'center'
275
+ },
276
+ cardContent: {},
277
+ textContent: {
278
+ flex: 4,
279
+ gap: _Sizing.spacing[2],
280
+ // justifyContent: 'center',
281
+ alignItems: 'center',
282
+ justifyContent: 'center'
283
+ },
284
+ titleContainer: {
285
+ flexDirection: 'row',
286
+ gap: _Sizing.spacing[1],
287
+ alignItems: 'center'
288
+ },
289
+ title: {
290
+ fontSize: _Sizing.spacing[6],
291
+ fontWeight: '600',
292
+ color: _Colors.colors.black
293
+ },
294
+ message: {
295
+ fontSize: 14,
296
+ color: _Colors.colors.gray[500],
297
+ textAlign: 'center'
298
+ },
299
+ button: {
300
+ marginTop: _Sizing.spacing[2],
301
+ backgroundColor: _Colors.colors.green[800],
302
+ borderRadius: _Sizing.radius.lg,
303
+ paddingVertical: _Sizing.spacing[2],
304
+ paddingHorizontal: _Sizing.spacing[8],
305
+ flex: 1,
306
+ alignItems: 'center',
307
+ justifyContent: 'center'
308
+ },
309
+ buttonText: {
310
+ fontSize: 15,
311
+ fontWeight: '500',
312
+ color: _Colors.colors.white,
313
+ textAlign: 'center'
314
+ }
315
+ });
316
+ //# sourceMappingURL=Keyboard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_KEYBOARD_LAYOUT","_KeypadRow","_interopRequireDefault","_reactNative","_reactNativeTeleport","_reactNativeReanimated","_KeyboardToolbar","_Sizing","_Colors","_vectorIcons","_jsxRuntime","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Keyboard","props","PasteErrorModal","useMemo","underlinePasteErrorModal","CopySuccessModal","underlineCopySuccessModal","isPasteErrorVisible","setIsPasteErrorVisible","useState","dismissPasteError","useCallback","isCopySuccessVisible","setIsCopySuccessVisible","dismissCopySuccess","handlePaste","onPaste","then","success","handleCopy","onCopy","isOpenShared","useSharedValue","isOpen","useEffect","value","height","progress","useDerivedValue","withTiming","duration","sheetStyle","useAnimatedStyle","transform","translateY","backdropStyle","opacity","zIndex","withDelay","layout","console","debug","KEYBOARD_LAYOUT","map","row","jsx","onPress","onKeyPress","screenHeight","Dimensions","jsxs","Portal","hostName","children","Pressable","style","StyleSheet","absoluteFillObject","onClose","View","onLayout","nativeEvent","sheetStyles","sheet","flex","gap","GAP","paddingBottom","spacing","paddingHorizontal","visible","onRequestClose","transparent","animationType","Modal","pasteErrorStyles","overlay","card","cardContent","textContent","titleContainer","Feather","name","size","Text","title","message","button","buttonText","copySuccessStyles","_default","exports","memo","create","width","position","bottom","borderTopRightRadius","borderTopLeftRadius","backgroundColor","justifyContent","alignItems","padding","colors","white","borderRadius","radius","xl","maxWidth","maxHeight","flexDirection","fontSize","fontWeight","color","black","gray","textAlign","marginTop","red","lg","paddingVertical","green"],"sourceRoot":"../../../src","sources":["Keyboard/Keyboard.tsx"],"mappings":"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","ignoreList":[]}