@mvf/external-components 3.31.1-dev.6 → 3.31.1-dev.7

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/Components/Atoms/FormControl/FormControl.js +1 -3
  2. package/Components/Atoms/FormControl/FormControl.js.map +1 -1
  3. package/Components/Atoms/FormControl/makeFormControlStyles.d.ts +1 -3
  4. package/Components/Atoms/FormControl/makeFormControlStyles.js +2 -1
  5. package/Components/Atoms/FormControl/makeFormControlStyles.js.map +1 -1
  6. package/Components/Atoms/Input/IInputProps.d.ts +0 -5
  7. package/Components/Atoms/Input/Input.js +2 -3
  8. package/Components/Atoms/Input/Input.js.map +1 -1
  9. package/Components/Molecules/PhoneNumberTextField/PhoneNumberTextField.js +3 -5
  10. package/Components/Molecules/PhoneNumberTextField/PhoneNumberTextField.js.map +1 -1
  11. package/Components/Molecules/ScrollContainer/ScrollContainer.js +25 -0
  12. package/Components/Molecules/ScrollContainer/ScrollContainer.js.map +1 -1
  13. package/Components/Molecules/index.d.ts +0 -1
  14. package/Components/Molecules/index.js +1 -3
  15. package/Components/Molecules/index.js.map +1 -1
  16. package/Components/index.d.ts +1 -1
  17. package/Components/index.js +1 -2
  18. package/Components/index.js.map +1 -1
  19. package/index.d.ts +1 -1
  20. package/index.js +1 -2
  21. package/index.js.map +1 -1
  22. package/package.json +1 -3
  23. package/Components/Molecules/PhoneNumberTextFieldCustom/IPhoneNumberTextFieldProps.d.ts +0 -57
  24. package/Components/Molecules/PhoneNumberTextFieldCustom/IPhoneNumberTextFieldProps.js +0 -3
  25. package/Components/Molecules/PhoneNumberTextFieldCustom/IPhoneNumberTextFieldProps.js.map +0 -1
  26. package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberCallbacks.d.ts +0 -33
  27. package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberCallbacks.js +0 -3
  28. package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberCallbacks.js.map +0 -1
  29. package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextField.d.ts +0 -7
  30. package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextField.js +0 -216
  31. package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextField.js.map +0 -1
  32. package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextField.test.d.ts +0 -1
  33. package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextField.test.js +0 -596
  34. package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextField.test.js.map +0 -1
  35. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/display/ErrorDisplay.d.ts +0 -8
  36. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/display/ErrorDisplay.js +0 -17
  37. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/display/ErrorDisplay.js.map +0 -1
  38. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/forms/PhoneInput.d.ts +0 -22
  39. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/forms/PhoneInput.js +0 -56
  40. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/forms/PhoneInput.js.map +0 -1
  41. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/forms/PhoneInput.test.d.ts +0 -1
  42. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/forms/PhoneInput.test.js +0 -159
  43. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/forms/PhoneInput.test.js.map +0 -1
  44. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryDropdown.d.ts +0 -12
  45. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryDropdown.js +0 -206
  46. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryDropdown.js.map +0 -1
  47. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryDropdown.test.d.ts +0 -1
  48. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryDropdown.test.js +0 -187
  49. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryDropdown.test.js.map +0 -1
  50. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryModal.d.ts +0 -10
  51. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryModal.js +0 -229
  52. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryModal.js.map +0 -1
  53. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryModal.test.d.ts +0 -1
  54. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryModal.test.js +0 -281
  55. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryModal.test.js.map +0 -1
  56. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountrySelector.d.ts +0 -11
  57. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountrySelector.js +0 -35
  58. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountrySelector.js.map +0 -1
  59. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/FlagIcon.d.ts +0 -10
  60. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/FlagIcon.js +0 -114
  61. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/FlagIcon.js.map +0 -1
  62. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/useCountrySelector.d.ts +0 -12
  63. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/useCountrySelector.js +0 -36
  64. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/useCountrySelector.js.map +0 -1
  65. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/usePhoneNumber.d.ts +0 -38
  66. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/usePhoneNumber.js +0 -181
  67. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/usePhoneNumber.js.map +0 -1
  68. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/stories/PhoneNumberTextFieldStory.d.ts +0 -21
  69. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/stories/PhoneNumberTextFieldStory.js +0 -41
  70. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/stories/PhoneNumberTextFieldStory.js.map +0 -1
  71. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/styling/makeFormControlPhoneNumberStyling.d.ts +0 -10
  72. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/styling/makeFormControlPhoneNumberStyling.js +0 -138
  73. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/styling/makeFormControlPhoneNumberStyling.js.map +0 -1
  74. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/countryData.d.ts +0 -12
  75. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/countryData.js +0 -509
  76. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/countryData.js.map +0 -1
  77. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/defaultProps.d.ts +0 -21
  78. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/defaultProps.js +0 -33
  79. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/defaultProps.js.map +0 -1
  80. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/phoneValidation.d.ts +0 -15
  81. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/phoneValidation.js +0 -130
  82. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/phoneValidation.js.map +0 -1
  83. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/phoneValidation.test.d.ts +0 -1
  84. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/phoneValidation.test.js +0 -157
  85. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/phoneValidation.test.js.map +0 -1
  86. package/Components/Molecules/PhoneNumberTextFieldCustom/defaultProps.d.ts +0 -21
  87. package/Components/Molecules/PhoneNumberTextFieldCustom/defaultProps.js +0 -33
  88. package/Components/Molecules/PhoneNumberTextFieldCustom/defaultProps.js.map +0 -1
  89. package/Components/Molecules/PhoneNumberTextFieldCustom/index.d.ts +0 -10
  90. package/Components/Molecules/PhoneNumberTextFieldCustom/index.js +0 -21
  91. package/Components/Molecules/PhoneNumberTextFieldCustom/index.js.map +0 -1
@@ -1,187 +0,0 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __importDefault = (this && this.__importDefault) || function (mod) {
14
- return (mod && mod.__esModule) ? mod : { "default": mod };
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
18
- var react_1 = require("@testing-library/react");
19
- var user_event_1 = __importDefault(require("@testing-library/user-event"));
20
- var renderWithProviders_1 = __importDefault(require("../../../../../../Helpers/React/renderWithProviders"));
21
- var CountryDropdown_1 = __importDefault(require("./CountryDropdown"));
22
- var countryData_1 = require("../../utils/countryData");
23
- describe('CountryDropdown', function () {
24
- var mockCountries = (0, countryData_1.getCountryData)();
25
- var mockCountry = mockCountries[0];
26
- var mockOnCountryChange = jest.fn();
27
- var mockOnClose = jest.fn();
28
- var mockAnchorEl = document.createElement('div');
29
- var defaultProps = {
30
- selectedCountry: mockCountry,
31
- onCountryChange: mockOnCountryChange,
32
- enableCountrySearch: false,
33
- open: false,
34
- onClose: mockOnClose,
35
- anchorEl: mockAnchorEl,
36
- };
37
- beforeEach(function () {
38
- jest.clearAllMocks();
39
- // Append anchor element to body for positioning
40
- document.body.appendChild(mockAnchorEl);
41
- });
42
- afterEach(function () {
43
- // Clean up anchor element
44
- if (document.body.contains(mockAnchorEl)) {
45
- document.body.removeChild(mockAnchorEl);
46
- }
47
- });
48
- describe('Dropdown Visibility', function () {
49
- it('renders without crashing when closed', function () {
50
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps)));
51
- // When closed, the dropdown shouldn't render anything visible
52
- expect(react_1.screen.queryByRole('listbox')).not.toBeInTheDocument();
53
- });
54
- it('renders dropdown content when open', function () {
55
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps, { open: true })));
56
- // Should show country list
57
- expect(react_1.screen.getByRole('listbox')).toBeInTheDocument();
58
- // Should show some countries
59
- expect(react_1.screen.getByText(mockCountries[0].name)).toBeInTheDocument();
60
- });
61
- it('calls onClose when clicking outside dropdown', function () {
62
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps, { open: true })));
63
- // MUI Menu handles this internally, so we'll test the callback structure
64
- expect(mockOnClose).not.toHaveBeenCalled();
65
- // The listbox component should be present
66
- expect(react_1.screen.getByRole('listbox')).toBeInTheDocument();
67
- });
68
- });
69
- describe('Country Search', function () {
70
- it('does not render search input when enableCountrySearch is false', function () {
71
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps, { open: true, enableCountrySearch: false })));
72
- expect(react_1.screen.queryByPlaceholderText('Search countries...')).not.toBeInTheDocument();
73
- });
74
- it('renders search input when enableCountrySearch is true', function () {
75
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps, { open: true, enableCountrySearch: true })));
76
- expect(react_1.screen.getByPlaceholderText('Search countries...')).toBeInTheDocument();
77
- });
78
- it('filters countries based on search input', function () {
79
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps, { open: true, enableCountrySearch: true })));
80
- var searchInput = react_1.screen.getByPlaceholderText('Search countries...');
81
- // Type in search input
82
- user_event_1.default.type(searchInput, 'United');
83
- // Should filter results
84
- expect(react_1.screen.getByText('United States')).toBeInTheDocument();
85
- // Should show fewer countries than total
86
- var countryItems = react_1.screen.getAllByRole('option');
87
- expect(countryItems.length).toBeLessThan(mockCountries.length);
88
- });
89
- it('shows no results message when search yields no matches', function () {
90
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps, { open: true, enableCountrySearch: true })));
91
- var searchInput = react_1.screen.getByPlaceholderText('Search countries...');
92
- // Search for non-existent country
93
- user_event_1.default.type(searchInput, 'NonexistentCountry');
94
- expect(react_1.screen.getByText('No countries found')).toBeInTheDocument();
95
- });
96
- it('clears search when dropdown is reopened', function () {
97
- var rerender = (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps, { open: true, enableCountrySearch: true }))).rerender;
98
- var searchInput = react_1.screen.getByPlaceholderText('Search countries...');
99
- react_1.fireEvent.change(searchInput, { target: { value: 'test' } });
100
- expect(searchInput).toHaveValue('test');
101
- // Close dropdown
102
- rerender((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps, { open: false, enableCountrySearch: true })));
103
- // Reopen dropdown
104
- rerender((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps, { open: true, enableCountrySearch: true })));
105
- var newSearchInput = react_1.screen.getByPlaceholderText('Search countries...');
106
- expect(newSearchInput).toHaveValue('');
107
- });
108
- });
109
- describe('Country Selection', function () {
110
- it('calls onCountryChange when a country is selected', function () {
111
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps, { open: true })));
112
- var countryToSelect = mockCountries.find(function (c) { return c.name !== mockCountry.name; });
113
- if (!countryToSelect)
114
- throw new Error('No country found for selection');
115
- var countryOption = react_1.screen.getByRole('option', {
116
- name: new RegExp(countryToSelect.name),
117
- });
118
- react_1.fireEvent.click(countryOption);
119
- expect(mockOnCountryChange).toHaveBeenCalledWith(countryToSelect);
120
- });
121
- it('displays country flags and dial codes', function () {
122
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps, { open: true })));
123
- // Check that dial codes are displayed (use getAllByText since multiple countries may have +1)
124
- var dialCodeElements = react_1.screen.getAllByText(mockCountries[0].dialCode);
125
- expect(dialCodeElements.length).toBeGreaterThan(0);
126
- expect(react_1.screen.getByText(mockCountries[1].dialCode)).toBeInTheDocument();
127
- });
128
- it('shows selected country in the list', function () {
129
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps, { open: true })));
130
- // The selected country should be in the list
131
- expect(react_1.screen.getByText(mockCountry.name)).toBeInTheDocument();
132
- // Use getAllByText for dial code since multiple countries may have the same code
133
- var dialCodeElements = react_1.screen.getAllByText(mockCountry.dialCode);
134
- expect(dialCodeElements.length).toBeGreaterThan(0);
135
- });
136
- });
137
- describe('Keyboard Navigation', function () {
138
- it('supports keyboard navigation in search input', function () {
139
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps, { open: true, enableCountrySearch: true })));
140
- var searchInput = react_1.screen.getByPlaceholderText('Search countries...');
141
- // Test that input receives focus and accepts keyboard input
142
- searchInput.focus();
143
- expect(searchInput).toHaveFocus();
144
- react_1.fireEvent.keyDown(searchInput, { key: 'ArrowDown' });
145
- react_1.fireEvent.keyDown(searchInput, { key: 'Enter' });
146
- // Should call onCountryChange with first country
147
- expect(mockOnCountryChange).toHaveBeenCalledWith(mockCountries[0]);
148
- });
149
- it('closes dropdown on Escape key', function () {
150
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps, { open: true, enableCountrySearch: true })));
151
- var searchInput = react_1.screen.getByPlaceholderText('Search countries...');
152
- react_1.fireEvent.keyDown(searchInput, { key: 'Escape' });
153
- // Allow for multiple calls since the component might call onClose multiple times
154
- expect(mockOnClose).toHaveBeenCalled();
155
- });
156
- });
157
- describe('Accessibility', function () {
158
- it('has proper ARIA attributes', function () {
159
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps, { open: true })));
160
- // Menu should have proper role - in this case it's a listbox inside the popover
161
- expect(react_1.screen.getByRole('listbox')).toBeInTheDocument();
162
- // Menu items should have proper roles
163
- var options = react_1.screen.getAllByRole('option');
164
- expect(options.length).toBeGreaterThan(0);
165
- });
166
- it('has accessible search input when enabled', function () {
167
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps, { open: true, enableCountrySearch: true })));
168
- var searchInput = react_1.screen.getByLabelText('Search countries');
169
- expect(searchInput).toBeInTheDocument();
170
- expect(searchInput).toHaveAttribute('autoComplete', 'off');
171
- expect(searchInput).toHaveAttribute('spellCheck', 'false');
172
- });
173
- });
174
- describe('Edge Cases', function () {
175
- it('handles empty country list gracefully', function () {
176
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps, { open: true })));
177
- // Should still render the listbox container (even with countries it will be visible)
178
- expect(react_1.screen.getByRole('listbox')).toBeInTheDocument();
179
- });
180
- it('handles missing anchorEl gracefully', function () {
181
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(CountryDropdown_1.default, __assign({}, defaultProps, { anchorEl: null, open: true })));
182
- // Should still render (MUI handles null anchorEl)
183
- expect(react_1.screen.getByRole('presentation')).toBeInTheDocument();
184
- });
185
- });
186
- });
187
- //# sourceMappingURL=CountryDropdown.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CountryDropdown.test.js","sourceRoot":"","sources":["../../../../../../../src/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryDropdown.test.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,gDAA2D;AAC3D,2EAAoD;AACpD,4GAAsF;AACtF,sEAAgD;AAChD,uDAAyD;AAEzD,QAAQ,CAAC,iBAAiB,EAAE;IAC1B,IAAM,aAAa,GAAG,IAAA,4BAAc,GAAE,CAAC;IACvC,IAAM,WAAW,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IACrC,IAAM,mBAAmB,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACtC,IAAM,WAAW,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IAC9B,IAAM,YAAY,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;IAEnD,IAAM,YAAY,GAAG;QACnB,eAAe,EAAE,WAAW;QAC5B,eAAe,EAAE,mBAAmB;QACpC,mBAAmB,EAAE,KAAK;QAC1B,IAAI,EAAE,KAAK;QACX,OAAO,EAAE,WAAW;QACpB,QAAQ,EAAE,YAAY;KACvB,CAAC;IAEF,UAAU,CAAC;QACT,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,gDAAgD;QAChD,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC;QACR,0BAA0B;QAC1B,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACzC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,qBAAqB,EAAE;QAC9B,EAAE,CAAC,sCAAsC,EAAE;YACzC,IAAA,6BAAmB,EAAC,uBAAC,yBAAe,eAAK,YAAY,EAAI,CAAC,CAAC;YAC3D,8DAA8D;YAC9D,MAAM,CAAC,cAAM,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;QAChE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oCAAoC,EAAE;YACvC,IAAA,6BAAmB,EAAC,uBAAC,yBAAe,eAAK,YAAY,IAAE,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;YAEvE,2BAA2B;YAC3B,MAAM,CAAC,cAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;YAExD,6BAA6B;YAC7B,MAAM,CAAC,cAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;QACtE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE;YACjD,IAAA,6BAAmB,EAAC,uBAAC,yBAAe,eAAK,YAAY,IAAE,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;YAEvE,yEAAyE;YACzE,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YAE3C,0CAA0C;YAC1C,MAAM,CAAC,cAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;QAC1D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE;QACzB,EAAE,CAAC,gEAAgE,EAAE;YACnE,IAAA,6BAAmB,EACjB,uBAAC,yBAAe,eACV,YAAY,IAChB,IAAI,EAAE,IAAI,EACV,mBAAmB,EAAE,KAAK,IAC1B,CACH,CAAC;YACF,MAAM,CACJ,cAAM,CAAC,sBAAsB,CAAC,qBAAqB,CAAC,CACrD,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;QAC5B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE;YAC1D,IAAA,6BAAmB,EACjB,uBAAC,yBAAe,eACV,YAAY,IAChB,IAAI,EAAE,IAAI,EACV,mBAAmB,EAAE,IAAI,IACzB,CACH,CAAC;YACF,MAAM,CACJ,cAAM,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,CACnD,CAAC,iBAAiB,EAAE,CAAC;QACxB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yCAAyC,EAAE;YAC5C,IAAA,6BAAmB,EACjB,uBAAC,yBAAe,eACV,YAAY,IAChB,IAAI,EAAE,IAAI,EACV,mBAAmB,EAAE,IAAI,IACzB,CACH,CAAC;YAEF,IAAM,WAAW,GAAG,cAAM,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,CAAC;YAEvE,uBAAuB;YACvB,oBAAS,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YAEtC,wBAAwB;YACxB,MAAM,CAAC,cAAM,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;YAE9D,yCAAyC;YACzC,IAAM,YAAY,GAAG,cAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YACnD,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wDAAwD,EAAE;YAC3D,IAAA,6BAAmB,EACjB,uBAAC,yBAAe,eACV,YAAY,IAChB,IAAI,EAAE,IAAI,EACV,mBAAmB,EAAE,IAAI,IACzB,CACH,CAAC;YAEF,IAAM,WAAW,GAAG,cAAM,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,CAAC;YAEvE,kCAAkC;YAClC,oBAAS,CAAC,IAAI,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC;YAElD,MAAM,CAAC,cAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;QACrE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yCAAyC,EAAE;YACpC,IAAA,QAAQ,GAAK,IAAA,6BAAmB,EACtC,uBAAC,yBAAe,eACV,YAAY,IAChB,IAAI,EAAE,IAAI,EACV,mBAAmB,EAAE,IAAI,IACzB,CACH,SANe,CAMd;YAEF,IAAM,WAAW,GAAG,cAAM,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,CAAC;YACvE,iBAAS,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;YAC7D,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAExC,iBAAiB;YACjB,QAAQ,CACN,uBAAC,yBAAe,eACV,YAAY,IAChB,IAAI,EAAE,KAAK,EACX,mBAAmB,EAAE,IAAI,IACzB,CACH,CAAC;YAEF,kBAAkB;YAClB,QAAQ,CACN,uBAAC,yBAAe,eACV,YAAY,IAChB,IAAI,EAAE,IAAI,EACV,mBAAmB,EAAE,IAAI,IACzB,CACH,CAAC;YAEF,IAAM,cAAc,GAAG,cAAM,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,CAAC;YAC1E,MAAM,CAAC,cAAc,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,mBAAmB,EAAE;QAC5B,EAAE,CAAC,kDAAkD,EAAE;YACrD,IAAA,6BAAmB,EAAC,uBAAC,yBAAe,eAAK,YAAY,IAAE,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;YAEvE,IAAM,eAAe,GAAG,aAAa,CAAC,IAAI,CACxC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,EAA3B,CAA2B,CACnC,CAAC;YACF,IAAI,CAAC,eAAe;gBAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YAExE,IAAM,aAAa,GAAG,cAAM,CAAC,SAAS,CAAC,QAAQ,EAAE;gBAC/C,IAAI,EAAE,IAAI,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC;aACvC,CAAC,CAAC;YAEH,iBAAS,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAE/B,MAAM,CAAC,mBAAmB,CAAC,CAAC,oBAAoB,CAAC,eAAe,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uCAAuC,EAAE;YAC1C,IAAA,6BAAmB,EAAC,uBAAC,yBAAe,eAAK,YAAY,IAAE,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;YAEvE,8FAA8F;YAC9F,IAAM,gBAAgB,GAAG,cAAM,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YACxE,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YACnD,MAAM,CAAC,cAAM,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;QAC1E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oCAAoC,EAAE;YACvC,IAAA,6BAAmB,EAAC,uBAAC,yBAAe,eAAK,YAAY,IAAE,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;YAEvE,6CAA6C;YAC7C,MAAM,CAAC,cAAM,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;YAC/D,iFAAiF;YACjF,IAAM,gBAAgB,GAAG,cAAM,CAAC,YAAY,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;YACnE,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,qBAAqB,EAAE;QAC9B,EAAE,CAAC,8CAA8C,EAAE;YACjD,IAAA,6BAAmB,EACjB,uBAAC,yBAAe,eACV,YAAY,IAChB,IAAI,EAAE,IAAI,EACV,mBAAmB,EAAE,IAAI,IACzB,CACH,CAAC;YAEF,IAAM,WAAW,GAAG,cAAM,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,CAAC;YAEvE,4DAA4D;YAC5D,WAAW,CAAC,KAAK,EAAE,CAAC;YACpB,MAAM,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE,CAAC;YAElC,iBAAS,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC;YACrD,iBAAS,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YAEjD,iDAAiD;YACjD,MAAM,CAAC,mBAAmB,CAAC,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+BAA+B,EAAE;YAClC,IAAA,6BAAmB,EACjB,uBAAC,yBAAe,eACV,YAAY,IAChB,IAAI,EAAE,IAAI,EACV,mBAAmB,EAAE,IAAI,IACzB,CACH,CAAC;YAEF,IAAM,WAAW,GAAG,cAAM,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,CAAC;YAEvE,iBAAS,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;YAElD,iFAAiF;YACjF,MAAM,CAAC,WAAW,CAAC,CAAC,gBAAgB,EAAE,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,eAAe,EAAE;QACxB,EAAE,CAAC,4BAA4B,EAAE;YAC/B,IAAA,6BAAmB,EAAC,uBAAC,yBAAe,eAAK,YAAY,IAAE,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;YAEvE,gFAAgF;YAChF,MAAM,CAAC,cAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;YAExD,sCAAsC;YACtC,IAAM,OAAO,GAAG,cAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC9C,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0CAA0C,EAAE;YAC7C,IAAA,6BAAmB,EACjB,uBAAC,yBAAe,eACV,YAAY,IAChB,IAAI,EAAE,IAAI,EACV,mBAAmB,EAAE,IAAI,IACzB,CACH,CAAC;YAEF,IAAM,WAAW,GAAG,cAAM,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;YAC9D,MAAM,CAAC,WAAW,CAAC,CAAC,iBAAiB,EAAE,CAAC;YACxC,MAAM,CAAC,WAAW,CAAC,CAAC,eAAe,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;YAC3D,MAAM,CAAC,WAAW,CAAC,CAAC,eAAe,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,YAAY,EAAE;QACrB,EAAE,CAAC,uCAAuC,EAAE;YAC1C,IAAA,6BAAmB,EAAC,uBAAC,yBAAe,eAAK,YAAY,IAAE,IAAI,EAAE,IAAI,IAAI,CAAC,CAAC;YAEvE,qFAAqF;YACrF,MAAM,CAAC,cAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;QAC1D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qCAAqC,EAAE;YACxC,IAAA,6BAAmB,EACjB,uBAAC,yBAAe,eAAK,YAAY,IAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,CAClE,CAAC;YAEF,kDAAkD;YAClD,MAAM,CAAC,cAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;QAC/D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1,10 +0,0 @@
1
- import { CountryData } from '../../utils/countryData';
2
- interface CountryModalProps {
3
- selectedCountry: CountryData;
4
- onCountryChange: (country: CountryData) => void;
5
- enableCountrySearch?: boolean;
6
- open: boolean;
7
- onClose: () => void;
8
- }
9
- declare const CountryModal: React.FC<CountryModalProps>;
10
- export default CountryModal;
@@ -1,229 +0,0 @@
1
- "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __importDefault = (this && this.__importDefault) || function (mod) {
14
- return (mod && mod.__esModule) ? mod : { "default": mod };
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
18
- /** @jsxImportSource @emotion/react */
19
- var Modal_1 = __importDefault(require("@mui/material/Modal"));
20
- var Box_1 = __importDefault(require("@mui/material/Box"));
21
- var MenuItem_1 = __importDefault(require("@mui/material/MenuItem"));
22
- var InputBase_1 = __importDefault(require("@mui/material/InputBase"));
23
- var IconButton_1 = __importDefault(require("@mui/material/IconButton"));
24
- var Close_1 = __importDefault(require("@mui/icons-material/Close"));
25
- var react_1 = require("react");
26
- var react_2 = require("@emotion/react");
27
- var countryData_1 = require("../../utils/countryData");
28
- var FlagIcon_1 = __importDefault(require("./FlagIcon"));
29
- var CountryModal = function (_a) {
30
- var onCountryChange = _a.onCountryChange, _b = _a.enableCountrySearch, enableCountrySearch = _b === void 0 ? false : _b, open = _a.open, onClose = _a.onClose;
31
- var _c = (0, react_1.useState)(''), searchTerm = _c[0], setSearchTerm = _c[1];
32
- var _d = (0, react_1.useState)(-1), selectedIndex = _d[0], setSelectedIndex = _d[1];
33
- var _e = (0, react_1.useState)(false), isClosing = _e[0], setIsClosing = _e[1];
34
- var searchInputRef = (0, react_1.useRef)(null);
35
- var theme = (0, react_2.useTheme)();
36
- var countries = (0, react_1.useMemo)(function () { return (0, countryData_1.getCountryData)(); }, []);
37
- var filteredCountries = (0, react_1.useMemo)(function () {
38
- if (!searchTerm.trim())
39
- return countries;
40
- var term = searchTerm.toLowerCase().trim();
41
- return countries.filter(function (country) {
42
- return country.name.toLowerCase().includes(term) ||
43
- country.dialCode.toLowerCase().includes(term) ||
44
- country.code.toLowerCase().includes(term);
45
- });
46
- }, [countries, searchTerm]);
47
- // Reset search state when modal opens/closes
48
- (0, react_1.useEffect)(function () {
49
- if (open) {
50
- setSearchTerm('');
51
- setSelectedIndex(-1);
52
- setIsClosing(false);
53
- }
54
- }, [open]);
55
- // Auto-focus search input when modal opens and blur when closing
56
- (0, react_1.useEffect)(function () {
57
- if (open && enableCountrySearch) {
58
- var timer_1 = setTimeout(function () {
59
- var _a;
60
- (_a = searchInputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
61
- }, 150); // Slightly longer delay to ensure modal is fully rendered
62
- return function () { return clearTimeout(timer_1); };
63
- }
64
- else if (!open) {
65
- // When closing, ensure any focused element inside the modal is blurred
66
- // to prevent aria-hidden violations
67
- var activeElement = document.activeElement;
68
- if (activeElement && activeElement.closest('[role="dialog"]')) {
69
- activeElement.blur();
70
- }
71
- }
72
- return undefined;
73
- }, [open, enableCountrySearch]);
74
- var handleCountrySelect = (0, react_1.useCallback)(function (country) {
75
- // Blur any focused element to prevent aria-hidden violations
76
- var activeElement = document.activeElement;
77
- if (activeElement && activeElement.closest('[role="dialog"]')) {
78
- activeElement.blur();
79
- }
80
- onCountryChange(country);
81
- setIsClosing(true);
82
- setTimeout(function () {
83
- onClose();
84
- setIsClosing(false);
85
- }, 195);
86
- }, [onCountryChange, onClose]);
87
- var handleModalClose = (0, react_1.useCallback)(function () {
88
- // Blur any focused element to prevent aria-hidden violations
89
- var activeElement = document.activeElement;
90
- if (activeElement && activeElement.closest('[role="dialog"]')) {
91
- activeElement.blur();
92
- }
93
- setIsClosing(true);
94
- setTimeout(function () {
95
- onClose();
96
- setIsClosing(false);
97
- }, 195);
98
- }, [onClose]);
99
- var handleSearchChange = (0, react_1.useCallback)(function (event) {
100
- var value = event.target.value;
101
- setSearchTerm(value);
102
- setSelectedIndex(-1);
103
- }, []);
104
- var handleKeyDown = (0, react_1.useCallback)(function (event) {
105
- switch (event.key) {
106
- case 'ArrowDown':
107
- event.preventDefault();
108
- setSelectedIndex(function (prev) {
109
- return prev < filteredCountries.length - 1 ? prev + 1 : prev;
110
- });
111
- break;
112
- case 'ArrowUp':
113
- event.preventDefault();
114
- setSelectedIndex(function (prev) { return (prev > 0 ? prev - 1 : -1); });
115
- break;
116
- case 'Enter':
117
- event.preventDefault();
118
- if (selectedIndex >= 0 && selectedIndex < filteredCountries.length) {
119
- var country = filteredCountries[selectedIndex];
120
- handleCountrySelect(country);
121
- }
122
- break;
123
- case 'Escape':
124
- event.preventDefault();
125
- handleModalClose();
126
- break;
127
- }
128
- }, [
129
- filteredCountries.length,
130
- selectedIndex,
131
- handleCountrySelect,
132
- handleModalClose,
133
- ]);
134
- var modalStyle = {
135
- position: 'absolute',
136
- top: '50%',
137
- left: '50%',
138
- transform: 'translate(-50%, -50%)',
139
- width: '90%',
140
- height: '90%',
141
- bgcolor: theme.mvf.palette.background.answerBackgroundColor,
142
- boxShadow: theme.mvf.boxShadow.fierce,
143
- borderRadius: 1,
144
- outline: 'none',
145
- display: 'flex',
146
- flexDirection: 'column',
147
- };
148
- return ((0, jsx_runtime_1.jsx)(Modal_1.default, { open: open, onClose: handleModalClose, "aria-labelledby": "country-selection-modal", "aria-describedby": "country-selection-modal-description", closeAfterTransition: true, disableRestoreFocus: true, disableEnforceFocus: true, children: (0, jsx_runtime_1.jsxs)(Box_1.default, { role: "dialog", sx: __assign(__assign({}, modalStyle), { animation: isClosing
149
- ? 'modalExit 195ms cubic-bezier(0.4, 0, 1, 1)'
150
- : 'modalEnter 225ms cubic-bezier(0.4, 0, 0.2, 1)', '@keyframes modalEnter': {
151
- '0%': {
152
- opacity: 0,
153
- transform: 'translate(-50%, -50%) scale(0.8)',
154
- },
155
- '100%': {
156
- opacity: 1,
157
- transform: 'translate(-50%, -50%) scale(1)',
158
- },
159
- }, '@keyframes modalExit': {
160
- '0%': {
161
- opacity: 1,
162
- transform: 'translate(-50%, -50%) scale(1)',
163
- },
164
- '100%': {
165
- opacity: 0,
166
- transform: 'translate(-50%, -50%) scale(0.8)',
167
- },
168
- } }), children: [(0, jsx_runtime_1.jsxs)("div", { style: {
169
- display: 'flex',
170
- alignItems: 'center',
171
- justifyContent: 'space-between',
172
- padding: '16px 20px',
173
- borderBottom: '1px solid rgba(0, 0, 0, 0.12)',
174
- backgroundColor: '#ffffff',
175
- borderTopLeftRadius: '4px',
176
- borderTopRightRadius: '4px',
177
- }, children: [(0, jsx_runtime_1.jsx)("h2", { style: {
178
- fontSize: '18px',
179
- fontWeight: 500,
180
- color: 'rgba(0, 0, 0, 0.87)',
181
- margin: 0,
182
- }, children: "Select Country" }), (0, jsx_runtime_1.jsx)(IconButton_1.default, { onClick: handleModalClose, size: "small", sx: {
183
- color: 'rgba(0, 0, 0, 0.6)',
184
- '&:hover': {
185
- backgroundColor: 'rgba(0, 0, 0, 0.04)',
186
- },
187
- }, "aria-label": "Close", children: (0, jsx_runtime_1.jsx)(Close_1.default, {}) })] }), enableCountrySearch && ((0, jsx_runtime_1.jsx)("div", { style: {
188
- padding: '16px 20px',
189
- borderBottom: '1px solid rgba(0, 0, 0, 0.12)',
190
- backgroundColor: '#ffffff',
191
- }, children: (0, jsx_runtime_1.jsx)(InputBase_1.default, { ref: searchInputRef, placeholder: "Search countries...", value: searchTerm, onChange: handleSearchChange, onKeyDown: handleKeyDown, fullWidth: true, sx: {
192
- fontSize: '16px',
193
- padding: '8px 12px',
194
- border: '1px solid rgba(0, 0, 0, 0.23)',
195
- borderRadius: '4px',
196
- '&:focus-within': {
197
- borderColor: '#1976d2',
198
- boxShadow: '0 0 0 2px rgba(25, 118, 210, 0.2)',
199
- },
200
- }, inputProps: {
201
- 'aria-label': 'Search countries',
202
- autoComplete: 'off',
203
- spellCheck: false,
204
- } }) })), (0, jsx_runtime_1.jsx)("div", { style: {
205
- flex: 1,
206
- overflowY: 'auto',
207
- display: 'flex',
208
- flexDirection: 'column',
209
- backgroundColor: '#ffffff',
210
- }, role: "listbox", "aria-label": "Country list", children: filteredCountries.length === 0 ? ((0, jsx_runtime_1.jsx)("div", { style: {
211
- padding: '20px',
212
- textAlign: 'center',
213
- color: 'rgba(0, 0, 0, 0.6)',
214
- }, children: "No countries found" })) : (filteredCountries.map(function (country, index) { return ((0, jsx_runtime_1.jsx)(MenuItem_1.default, { selected: index === selectedIndex, onClick: function () { return handleCountrySelect(country); }, onMouseEnter: function () { return setSelectedIndex(index); }, role: "option", "aria-selected": index === selectedIndex, sx: {
215
- padding: '12px 20px',
216
- transition: 'background-color 0.2s ease',
217
- display: 'flex',
218
- alignItems: 'center',
219
- width: '100%',
220
- '&.Mui-selected': {
221
- backgroundColor: 'rgba(0, 0, 0, 0.08)',
222
- },
223
- '&:hover': {
224
- backgroundColor: 'rgba(0, 0, 0, 0.04)',
225
- },
226
- }, children: (0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)(FlagIcon_1.default, { countryCode: country.code, style: { marginRight: '12px' } }), (0, jsx_runtime_1.jsx)("span", { style: { flex: 1, fontSize: '16px' }, children: country.name }), (0, jsx_runtime_1.jsx)("span", { style: { opacity: 0.7, fontSize: '14px' }, children: country.dialCode })] }) }, country.code)); })) })] }) }));
227
- };
228
- exports.default = CountryModal;
229
- //# sourceMappingURL=CountryModal.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CountryModal.js","sourceRoot":"","sources":["../../../../../../../src/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryModal.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,sCAAsC;AACtC,8DAAwC;AACxC,0DAAoC;AACpC,oEAA8C;AAC9C,sEAAgD;AAChD,wEAAkD;AAClD,oEAAkD;AAClD,+BAA0E;AAC1E,wCAA0C;AAC1C,uDAAsE;AACtE,wDAAkC;AAUlC,IAAM,YAAY,GAAgC,UAAC,EAKlD;QAJC,eAAe,qBAAA,EACf,2BAA2B,EAA3B,mBAAmB,mBAAG,KAAK,KAAA,EAC3B,IAAI,UAAA,EACJ,OAAO,aAAA;IAED,IAAA,KAA8B,IAAA,gBAAQ,EAAC,EAAE,CAAC,EAAzC,UAAU,QAAA,EAAE,aAAa,QAAgB,CAAC;IAC3C,IAAA,KAAoC,IAAA,gBAAQ,EAAC,CAAC,CAAC,CAAC,EAA/C,aAAa,QAAA,EAAE,gBAAgB,QAAgB,CAAC;IACjD,IAAA,KAA4B,IAAA,gBAAQ,EAAC,KAAK,CAAC,EAA1C,SAAS,QAAA,EAAE,YAAY,QAAmB,CAAC;IAClD,IAAM,cAAc,GAAG,IAAA,cAAM,EAAmB,IAAI,CAAC,CAAC;IACtD,IAAM,KAAK,GAAG,IAAA,gBAAQ,GAAE,CAAC;IAEzB,IAAM,SAAS,GAAG,IAAA,eAAO,EAAC,cAAM,OAAA,IAAA,4BAAc,GAAE,EAAhB,CAAgB,EAAE,EAAE,CAAC,CAAC;IAEtD,IAAM,iBAAiB,GAAG,IAAA,eAAO,EAAC;QAChC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE;YAAE,OAAO,SAAS,CAAC;QACzC,IAAM,IAAI,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAC7C,OAAO,SAAS,CAAC,MAAM,CACrB,UAAC,OAAO;YACN,OAAA,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACzC,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAC7C,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;QAFzC,CAEyC,CAC5C,CAAC;IACJ,CAAC,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;IAE5B,6CAA6C;IAC7C,IAAA,iBAAS,EAAC;QACR,IAAI,IAAI,EAAE,CAAC;YACT,aAAa,CAAC,EAAE,CAAC,CAAC;YAClB,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;YACrB,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;IACH,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,iEAAiE;IACjE,IAAA,iBAAS,EAAC;QACR,IAAI,IAAI,IAAI,mBAAmB,EAAE,CAAC;YAChC,IAAM,OAAK,GAAG,UAAU,CAAC;;gBACvB,MAAA,cAAc,CAAC,OAAO,0CAAE,KAAK,EAAE,CAAC;YAClC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,0DAA0D;YACnE,OAAO,cAAM,OAAA,YAAY,CAAC,OAAK,CAAC,EAAnB,CAAmB,CAAC;QACnC,CAAC;aAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YACjB,uEAAuE;YACvE,oCAAoC;YACpC,IAAM,aAAa,GAAG,QAAQ,CAAC,aAA4B,CAAC;YAC5D,IAAI,aAAa,IAAI,aAAa,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBAC9D,aAAa,CAAC,IAAI,EAAE,CAAC;YACvB,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,EAAE,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAEhC,IAAM,mBAAmB,GAAG,IAAA,mBAAW,EACrC,UAAC,OAAoB;QACnB,6DAA6D;QAC7D,IAAM,aAAa,GAAG,QAAQ,CAAC,aAA4B,CAAC;QAC5D,IAAI,aAAa,IAAI,aAAa,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC9D,aAAa,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC;QAED,eAAe,CAAC,OAAO,CAAC,CAAC;QACzB,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,UAAU,CAAC;YACT,OAAO,EAAE,CAAC;YACV,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC,EAAE,GAAG,CAAC,CAAC;IACV,CAAC,EACD,CAAC,eAAe,EAAE,OAAO,CAAC,CAC3B,CAAC;IAEF,IAAM,gBAAgB,GAAG,IAAA,mBAAW,EAAC;QACnC,6DAA6D;QAC7D,IAAM,aAAa,GAAG,QAAQ,CAAC,aAA4B,CAAC;QAC5D,IAAI,aAAa,IAAI,aAAa,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC9D,aAAa,CAAC,IAAI,EAAE,CAAC;QACvB,CAAC;QAED,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,UAAU,CAAC;YACT,OAAO,EAAE,CAAC;YACV,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC,EAAE,GAAG,CAAC,CAAC;IACV,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,IAAM,kBAAkB,GAAG,IAAA,mBAAW,EACpC,UAAC,KAA0C;QACzC,IAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QACjC,aAAa,CAAC,KAAK,CAAC,CAAC;QACrB,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC,EACD,EAAE,CACH,CAAC;IAEF,IAAM,aAAa,GAAG,IAAA,mBAAW,EAC/B,UAAC,KAA0B;QACzB,QAAQ,KAAK,CAAC,GAAG,EAAE,CAAC;YAClB,KAAK,WAAW;gBACd,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,gBAAgB,CAAC,UAAC,IAAI;oBACpB,OAAA,IAAI,GAAG,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;gBAArD,CAAqD,CACtD,CAAC;gBACF,MAAM;YACR,KAAK,SAAS;gBACZ,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,gBAAgB,CAAC,UAAC,IAAI,IAAK,OAAA,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAA1B,CAA0B,CAAC,CAAC;gBACvD,MAAM;YACR,KAAK,OAAO;gBACV,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,IAAI,aAAa,IAAI,CAAC,IAAI,aAAa,GAAG,iBAAiB,CAAC,MAAM,EAAE,CAAC;oBACnE,IAAM,OAAO,GAAG,iBAAiB,CAAC,aAAa,CAAC,CAAC;oBACjD,mBAAmB,CAAC,OAAO,CAAC,CAAC;gBAC/B,CAAC;gBACD,MAAM;YACR,KAAK,QAAQ;gBACX,KAAK,CAAC,cAAc,EAAE,CAAC;gBACvB,gBAAgB,EAAE,CAAC;gBACnB,MAAM;QACV,CAAC;IACH,CAAC,EACD;QACE,iBAAiB,CAAC,MAAM;QACxB,aAAa;QACb,mBAAmB;QACnB,gBAAgB;KACjB,CACF,CAAC;IAEF,IAAM,UAAU,GAAG;QACjB,QAAQ,EAAE,UAAmB;QAC7B,GAAG,EAAE,KAAK;QACV,IAAI,EAAE,KAAK;QACX,SAAS,EAAE,uBAAuB;QAClC,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,KAAK;QACb,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,qBAAqB;QAC3D,SAAS,EAAE,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM;QACrC,YAAY,EAAE,CAAC;QACf,OAAO,EAAE,MAAM;QACf,OAAO,EAAE,MAAM;QACf,aAAa,EAAE,QAAiB;KACjC,CAAC;IAEF,OAAO,CACL,uBAAC,eAAK,IACJ,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,gBAAgB,qBACT,yBAAyB,sBACxB,qCAAqC,EACtD,oBAAoB,QACpB,mBAAmB,QACnB,mBAAmB,kBAEnB,wBAAC,aAAG,IACF,IAAI,EAAC,QAAQ,EACb,EAAE,wBACG,UAAU,KACb,SAAS,EAAE,SAAS;oBAClB,CAAC,CAAC,4CAA4C;oBAC9C,CAAC,CAAC,+CAA+C,EACnD,uBAAuB,EAAE;oBACvB,IAAI,EAAE;wBACJ,OAAO,EAAE,CAAC;wBACV,SAAS,EAAE,kCAAkC;qBAC9C;oBACD,MAAM,EAAE;wBACN,OAAO,EAAE,CAAC;wBACV,SAAS,EAAE,gCAAgC;qBAC5C;iBACF,EACD,sBAAsB,EAAE;oBACtB,IAAI,EAAE;wBACJ,OAAO,EAAE,CAAC;wBACV,SAAS,EAAE,gCAAgC;qBAC5C;oBACD,MAAM,EAAE;wBACN,OAAO,EAAE,CAAC;wBACV,SAAS,EAAE,kCAAkC;qBAC9C;iBACF,gBAGH,iCACE,KAAK,EAAE;wBACL,OAAO,EAAE,MAAM;wBACf,UAAU,EAAE,QAAQ;wBACpB,cAAc,EAAE,eAAe;wBAC/B,OAAO,EAAE,WAAW;wBACpB,YAAY,EAAE,+BAA+B;wBAC7C,eAAe,EAAE,SAAS;wBAC1B,mBAAmB,EAAE,KAAK;wBAC1B,oBAAoB,EAAE,KAAK;qBAC5B,aAED,+BACE,KAAK,EAAE;gCACL,QAAQ,EAAE,MAAM;gCAChB,UAAU,EAAE,GAAG;gCACf,KAAK,EAAE,qBAAqB;gCAC5B,MAAM,EAAE,CAAC;6BACV,+BAGE,EACL,uBAAC,oBAAU,IACT,OAAO,EAAE,gBAAgB,EACzB,IAAI,EAAC,OAAO,EACZ,EAAE,EAAE;gCACF,KAAK,EAAE,oBAAoB;gCAC3B,SAAS,EAAE;oCACT,eAAe,EAAE,qBAAqB;iCACvC;6BACF,gBACU,OAAO,YAElB,uBAAC,eAAS,KAAG,GACF,IACT,EAEL,mBAAmB,IAAI,CACtB,gCACE,KAAK,EAAE;wBACL,OAAO,EAAE,WAAW;wBACpB,YAAY,EAAE,+BAA+B;wBAC7C,eAAe,EAAE,SAAS;qBAC3B,YAED,uBAAC,mBAAS,IACR,GAAG,EAAE,cAAc,EACnB,WAAW,EAAC,qBAAqB,EACjC,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,kBAAkB,EAC5B,SAAS,EAAE,aAAa,EACxB,SAAS,QACT,EAAE,EAAE;4BACF,QAAQ,EAAE,MAAM;4BAChB,OAAO,EAAE,UAAU;4BACnB,MAAM,EAAE,+BAA+B;4BACvC,YAAY,EAAE,KAAK;4BACnB,gBAAgB,EAAE;gCAChB,WAAW,EAAE,SAAS;gCACtB,SAAS,EAAE,mCAAmC;6BAC/C;yBACF,EACD,UAAU,EAAE;4BACV,YAAY,EAAE,kBAAkB;4BAChC,YAAY,EAAE,KAAK;4BACnB,UAAU,EAAE,KAAK;yBAClB,GACD,GACE,CACP,EAED,gCACE,KAAK,EAAE;wBACL,IAAI,EAAE,CAAC;wBACP,SAAS,EAAE,MAAM;wBACjB,OAAO,EAAE,MAAM;wBACf,aAAa,EAAE,QAAQ;wBACvB,eAAe,EAAE,SAAS;qBAC3B,EACD,IAAI,EAAC,SAAS,gBACH,cAAc,YAExB,iBAAiB,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAChC,gCACE,KAAK,EAAE;4BACL,OAAO,EAAE,MAAM;4BACf,SAAS,EAAE,QAAQ;4BACnB,KAAK,EAAE,oBAAoB;yBAC5B,mCAGG,CACP,CAAC,CAAC,CAAC,CACF,iBAAiB,CAAC,GAAG,CAAC,UAAC,OAAO,EAAE,KAAK,IAAK,OAAA,CACxC,uBAAC,kBAAQ,IAEP,QAAQ,EAAE,KAAK,KAAK,aAAa,EACjC,OAAO,EAAE,cAAM,OAAA,mBAAmB,CAAC,OAAO,CAAC,EAA5B,CAA4B,EAC3C,YAAY,EAAE,cAAM,OAAA,gBAAgB,CAAC,KAAK,CAAC,EAAvB,CAAuB,EAC3C,IAAI,EAAC,QAAQ,mBACE,KAAK,KAAK,aAAa,EACtC,EAAE,EAAE;4BACF,OAAO,EAAE,WAAW;4BACpB,UAAU,EAAE,4BAA4B;4BACxC,OAAO,EAAE,MAAM;4BACf,UAAU,EAAE,QAAQ;4BACpB,KAAK,EAAE,MAAM;4BACb,gBAAgB,EAAE;gCAChB,eAAe,EAAE,qBAAqB;6BACvC;4BACD,SAAS,EAAE;gCACT,eAAe,EAAE,qBAAqB;6BACvC;yBACF,YAED,6DACE,uBAAC,kBAAQ,IACP,WAAW,EAAE,OAAO,CAAC,IAAI,EACzB,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,GAC9B,EACF,iCAAM,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,YACvC,OAAO,CAAC,IAAI,GACR,EACP,iCAAM,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,YAC5C,OAAO,CAAC,QAAQ,GACZ,IACN,IA/BE,OAAO,CAAC,IAAI,CAgCR,CACZ,EAnCyC,CAmCzC,CAAC,CACH,GACG,IACF,GACA,CACT,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,YAAY,CAAC"}