@mvf/external-components 3.31.1-dev.5 → 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 -197
  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 -536
  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 -33
  66. package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/usePhoneNumber.js +0 -161
  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,536 +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 __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
- return new (P || (P = Promise))(function (resolve, reject) {
16
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
- step((generator = generator.apply(thisArg, _arguments || [])).next());
20
- });
21
- };
22
- var __generator = (this && this.__generator) || function (thisArg, body) {
23
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
24
- return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
- function verb(n) { return function (v) { return step([n, v]); }; }
26
- function step(op) {
27
- if (f) throw new TypeError("Generator is already executing.");
28
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
29
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
- if (y = 0, t) op = [op[0] & 2, t.value];
31
- switch (op[0]) {
32
- case 0: case 1: t = op; break;
33
- case 4: _.label++; return { value: op[1], done: false };
34
- case 5: _.label++; y = op[1]; op = [0]; continue;
35
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
- default:
37
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
- if (t[2]) _.ops.pop();
42
- _.trys.pop(); continue;
43
- }
44
- op = body.call(thisArg, _);
45
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
- }
48
- };
49
- var __importDefault = (this && this.__importDefault) || function (mod) {
50
- return (mod && mod.__esModule) ? mod : { "default": mod };
51
- };
52
- Object.defineProperty(exports, "__esModule", { value: true });
53
- var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
54
- var react_1 = require("@testing-library/react");
55
- var user_event_1 = __importDefault(require("@testing-library/user-event"));
56
- var renderWithProviders_1 = __importDefault(require("../../../Helpers/React/renderWithProviders"));
57
- var PhoneNumberTextField_1 = __importDefault(require("./PhoneNumberTextField"));
58
- var countryData_1 = require("./__helpers__/utils/countryData");
59
- describe('PhoneNumberTextField', function () {
60
- var defaultProps = {
61
- label: 'Phone Number',
62
- id: 'phone-input',
63
- experimentName: 'default',
64
- value: '',
65
- isAnswered: false,
66
- disabled: false,
67
- isSafari: false,
68
- isAutoFilledActive: false,
69
- type: 'tel',
70
- onBlur: jest.fn(),
71
- onClick: jest.fn(),
72
- };
73
- beforeEach(function () {
74
- jest.clearAllMocks();
75
- });
76
- describe('Basic Rendering', function () {
77
- it('should display PhoneNumberTextField Component with label', function () {
78
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
79
- expect(react_1.screen.getByText('Phone Number')).toBeInTheDocument();
80
- });
81
- it('should render with default country (first in list)', function () {
82
- var countries = (0, countryData_1.getCountryData)();
83
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
84
- // Should show the first country's flag and example
85
- var input = react_1.screen.getByRole('textbox');
86
- expect(input).toHaveAttribute('placeholder', countries[0].example);
87
- });
88
- it('should render with specified initial country', function () {
89
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { initialCountry: "GB" })));
90
- // Should show UK's example
91
- var input = react_1.screen.getByRole('textbox');
92
- var ukCountry = (0, countryData_1.getCountryData)().find(function (c) { return c.code === 'GB'; });
93
- expect(input).toHaveAttribute('placeholder', ukCountry === null || ukCountry === void 0 ? void 0 : ukCountry.example);
94
- });
95
- it('should have tel input type by default', function () {
96
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
97
- var input = react_1.screen.getByRole('textbox');
98
- expect(input).toHaveAttribute('type', 'tel');
99
- });
100
- it('should accept custom input type', function () {
101
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { type: "text" })));
102
- var input = react_1.screen.getByRole('textbox');
103
- expect(input).toHaveAttribute('type', 'text');
104
- });
105
- });
106
- describe('Phone Number Input and Formatting', function () {
107
- it('should format phone number as user types', function () { return __awaiter(void 0, void 0, void 0, function () {
108
- var input;
109
- return __generator(this, function (_a) {
110
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
111
- input = react_1.screen.getByRole('textbox');
112
- // Type a US phone number
113
- user_event_1.default.type(input, '2023456789');
114
- // Should be formatted
115
- expect(input).toHaveValue('(202) 345-6789');
116
- return [2 /*return*/];
117
- });
118
- }); });
119
- it('should handle international phone number input', function () { return __awaiter(void 0, void 0, void 0, function () {
120
- var input;
121
- return __generator(this, function (_a) {
122
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
123
- input = react_1.screen.getByRole('textbox');
124
- // Type an international number
125
- user_event_1.default.type(input, '+441212345678');
126
- // Should be formatted and country should change
127
- expect(input.value).toContain('121 234 5678');
128
- return [2 /*return*/];
129
- });
130
- }); });
131
- it('should call phone number change callbacks', function () { return __awaiter(void 0, void 0, void 0, function () {
132
- var mockOnPhoneNumberChange, mockOnValidationChange, mockOnFormattedValueChange, mockOnChange, input;
133
- return __generator(this, function (_a) {
134
- mockOnPhoneNumberChange = jest.fn();
135
- mockOnValidationChange = jest.fn();
136
- mockOnFormattedValueChange = jest.fn();
137
- mockOnChange = jest.fn();
138
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { onPhoneNumberChange: mockOnPhoneNumberChange, onValidationChange: mockOnValidationChange, onFormattedValueChange: mockOnFormattedValueChange, onChange: mockOnChange })));
139
- input = react_1.screen.getByRole('textbox');
140
- user_event_1.default.type(input, '2023456789');
141
- expect(mockOnPhoneNumberChange).toHaveBeenCalled();
142
- expect(mockOnValidationChange).toHaveBeenCalled();
143
- expect(mockOnFormattedValueChange).toHaveBeenCalled();
144
- expect(mockOnChange).toHaveBeenCalled();
145
- return [2 /*return*/];
146
- });
147
- }); });
148
- it('should validate phone numbers correctly', function () { return __awaiter(void 0, void 0, void 0, function () {
149
- var mockOnValidationChange, input, calls;
150
- return __generator(this, function (_a) {
151
- switch (_a.label) {
152
- case 0:
153
- mockOnValidationChange = jest.fn();
154
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { onValidationChange: mockOnValidationChange })));
155
- input = react_1.screen.getByRole('textbox');
156
- // Type a US number
157
- user_event_1.default.type(input, '2023456789');
158
- // Should call validation callback for each digit
159
- return [4 /*yield*/, (0, react_1.waitFor)(function () {
160
- expect(mockOnValidationChange).toHaveBeenCalled();
161
- })];
162
- case 1:
163
- // Should call validation callback for each digit
164
- _a.sent();
165
- calls = mockOnValidationChange.mock.calls;
166
- expect(calls.length).toBeGreaterThan(0);
167
- // Check that all calls have the expected structure
168
- calls.forEach(function (call) {
169
- var callData = call[0];
170
- expect(callData).toEqual(expect.objectContaining({
171
- id: 'phone-input',
172
- isValid: expect.any(Boolean),
173
- phoneNumber: expect.any(String),
174
- validationResult: expect.any(Object),
175
- }));
176
- });
177
- return [2 /*return*/];
178
- }
179
- });
180
- }); });
181
- it('should show validation error for invalid numbers', function () { return __awaiter(void 0, void 0, void 0, function () {
182
- var input;
183
- return __generator(this, function (_a) {
184
- switch (_a.label) {
185
- case 0:
186
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
187
- input = react_1.screen.getByRole('textbox');
188
- // Type incomplete number
189
- user_event_1.default.type(input, '555');
190
- // Should show error
191
- return [4 /*yield*/, (0, react_1.waitFor)(function () {
192
- expect(react_1.screen.getByText('Please enter a valid phone number')).toBeInTheDocument();
193
- })];
194
- case 1:
195
- // Should show error
196
- _a.sent();
197
- return [2 /*return*/];
198
- }
199
- });
200
- }); });
201
- });
202
- describe('Country Selection', function () {
203
- it('should show country selector when enableCountryChange is true (default)', function () {
204
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
205
- var countrySelector = react_1.screen.getByRole('button', {
206
- name: /select country/i,
207
- });
208
- expect(countrySelector).toBeInTheDocument();
209
- expect(countrySelector).toHaveStyle('cursor: pointer');
210
- });
211
- it('should disable country selector when enableCountryChange is false', function () {
212
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { enableCountryChange: false })));
213
- var countryDisplay = react_1.screen.getByLabelText(/country:/i);
214
- expect(countryDisplay).toBeInTheDocument();
215
- expect(countryDisplay).toHaveStyle('cursor: default');
216
- });
217
- it('should open country dropdown when country selector is clicked', function () { return __awaiter(void 0, void 0, void 0, function () {
218
- var countrySelector;
219
- return __generator(this, function (_a) {
220
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { useModalForCountrySelection: false })));
221
- countrySelector = react_1.screen.getByRole('button', {
222
- name: /select country/i,
223
- });
224
- user_event_1.default.click(countrySelector);
225
- // Should open dropdown listbox
226
- expect(react_1.screen.getByRole('listbox')).toBeInTheDocument();
227
- return [2 /*return*/];
228
- });
229
- }); });
230
- it('should open country modal when useModalForCountrySelection is true', function () { return __awaiter(void 0, void 0, void 0, function () {
231
- var countrySelector;
232
- return __generator(this, function (_a) {
233
- switch (_a.label) {
234
- case 0:
235
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { useModalForCountrySelection: true })));
236
- countrySelector = react_1.screen.getByRole('button', {
237
- name: /select country/i,
238
- });
239
- user_event_1.default.click(countrySelector);
240
- // Should open modal
241
- return [4 /*yield*/, (0, react_1.waitFor)(function () {
242
- expect(react_1.screen.getByRole('dialog')).toBeInTheDocument();
243
- })];
244
- case 1:
245
- // Should open modal
246
- _a.sent();
247
- expect(react_1.screen.getByText('Select Country')).toBeInTheDocument();
248
- return [2 /*return*/];
249
- }
250
- });
251
- }); });
252
- it('should call onCountryChange when country is selected', function () { return __awaiter(void 0, void 0, void 0, function () {
253
- var mockOnCountryChange, countrySelector, countries, targetCountry, countryOption;
254
- return __generator(this, function (_a) {
255
- mockOnCountryChange = jest.fn();
256
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { onCountryChange: mockOnCountryChange, useModalForCountrySelection: false })));
257
- countrySelector = react_1.screen.getByRole('button', {
258
- name: /select country/i,
259
- });
260
- user_event_1.default.click(countrySelector);
261
- countries = (0, countryData_1.getCountryData)();
262
- targetCountry = countries.find(function (c) { return c.code !== countries[0].code; });
263
- if (targetCountry) {
264
- countryOption = react_1.screen.getByRole('option', {
265
- name: new RegExp(targetCountry.name),
266
- });
267
- user_event_1.default.click(countryOption);
268
- expect(mockOnCountryChange).toHaveBeenCalledWith(expect.objectContaining({
269
- selectedCountry: targetCountry,
270
- previousCountry: countries[0],
271
- id: 'phone-input',
272
- }));
273
- }
274
- return [2 /*return*/];
275
- });
276
- }); });
277
- it('should preserve and reformat phone number when country changes', function () { return __awaiter(void 0, void 0, void 0, function () {
278
- var input, countrySelector, countries, targetCountry, countryOption;
279
- return __generator(this, function (_a) {
280
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { useModalForCountrySelection: false })));
281
- input = react_1.screen.getByRole('textbox');
282
- // Type a number first
283
- user_event_1.default.type(input, '2023456789');
284
- expect(input).toHaveValue('(202) 345-6789');
285
- countrySelector = react_1.screen.getByRole('button', {
286
- name: /select country/i,
287
- });
288
- user_event_1.default.click(countrySelector);
289
- countries = (0, countryData_1.getCountryData)();
290
- targetCountry = countries.find(function (c) { return c.code !== countries[0].code; });
291
- if (targetCountry) {
292
- countryOption = react_1.screen.getByRole('option', {
293
- name: new RegExp(targetCountry.name),
294
- });
295
- user_event_1.default.click(countryOption);
296
- // Phone number should be preserved (though it may be reformatted for the new country)
297
- expect(input).not.toHaveValue('');
298
- // The original digits should still be present in some form
299
- expect(input.value).toMatch(/2023456789/);
300
- }
301
- return [2 /*return*/];
302
- });
303
- }); });
304
- });
305
- describe('Error States', function () {
306
- it('should display external error message', function () {
307
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { errorMessage: "This field is required" })));
308
- expect(react_1.screen.getByText('This field is required')).toBeInTheDocument();
309
- });
310
- it('should prioritize external error over validation error', function () { return __awaiter(void 0, void 0, void 0, function () {
311
- var input;
312
- return __generator(this, function (_a) {
313
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { errorMessage: "This field is required" })));
314
- input = react_1.screen.getByRole('textbox');
315
- // Type invalid number (would normally show validation error)
316
- user_event_1.default.type(input, '123');
317
- // Should still show external error, not validation error
318
- expect(react_1.screen.getByText('This field is required')).toBeInTheDocument();
319
- expect(react_1.screen.queryByText('Please enter a valid phone number')).not.toBeInTheDocument();
320
- return [2 /*return*/];
321
- });
322
- }); });
323
- });
324
- describe('Value Prop and Controlled State', function () {
325
- it('should parse and display value with country code', function () {
326
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { value: "+441212345678" })));
327
- var input = react_1.screen.getByRole('textbox');
328
- // Should show formatted UK number
329
- expect(input.value).toContain('0121 234 5678');
330
- });
331
- it('should detect country from international number', function () {
332
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { value: "+441212345678" })));
333
- // Should detect UK and show UK flag (test indirectly via placeholder)
334
- var input = react_1.screen.getByRole('textbox');
335
- var ukCountry = (0, countryData_1.getCountryData)().find(function (c) { return c.code === 'GB'; });
336
- expect(input).toHaveAttribute('placeholder', ukCountry === null || ukCountry === void 0 ? void 0 : ukCountry.example);
337
- });
338
- });
339
- describe('Accessibility', function () {
340
- it('should have proper ARIA labels', function () {
341
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
342
- var input = react_1.screen.getByRole('textbox');
343
- expect(input).toHaveAttribute('id', 'phone-input');
344
- var label = react_1.screen.getByText('Phone Number');
345
- expect(label).toHaveAttribute('for', 'phone-input');
346
- });
347
- it('should support keyboard navigation for country selector', function () { return __awaiter(void 0, void 0, void 0, function () {
348
- var countrySelector;
349
- return __generator(this, function (_a) {
350
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
351
- countrySelector = react_1.screen.getByRole('button', {
352
- name: /select country/i,
353
- });
354
- // Test Enter key
355
- countrySelector.focus();
356
- user_event_1.default.keyboard('{Enter}');
357
- expect(react_1.screen.getByRole('listbox')).toBeInTheDocument();
358
- return [2 /*return*/];
359
- });
360
- }); });
361
- it('should support space key for country selector', function () { return __awaiter(void 0, void 0, void 0, function () {
362
- var countrySelector;
363
- return __generator(this, function (_a) {
364
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
365
- countrySelector = react_1.screen.getByRole('button', {
366
- name: /select country/i,
367
- });
368
- // Test Space key
369
- countrySelector.focus();
370
- user_event_1.default.keyboard(' ');
371
- expect(react_1.screen.getByRole('listbox')).toBeInTheDocument();
372
- return [2 /*return*/];
373
- });
374
- }); });
375
- });
376
- describe('Country Search Feature', function () {
377
- it('should enable country search by default', function () { return __awaiter(void 0, void 0, void 0, function () {
378
- var countrySelector;
379
- return __generator(this, function (_a) {
380
- switch (_a.label) {
381
- case 0:
382
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { useModalForCountrySelection: true, enableCountrySearch: true })));
383
- countrySelector = react_1.screen.getByRole('button', {
384
- name: /select country/i,
385
- });
386
- user_event_1.default.click(countrySelector);
387
- // Should show search input in modal
388
- return [4 /*yield*/, (0, react_1.waitFor)(function () {
389
- expect(react_1.screen.getByPlaceholderText('Search countries...')).toBeInTheDocument();
390
- })];
391
- case 1:
392
- // Should show search input in modal
393
- _a.sent();
394
- return [2 /*return*/];
395
- }
396
- });
397
- }); });
398
- it('should disable country search when enableCountrySearch is false', function () { return __awaiter(void 0, void 0, void 0, function () {
399
- var countrySelector;
400
- return __generator(this, function (_a) {
401
- switch (_a.label) {
402
- case 0:
403
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { enableCountrySearch: false, useModalForCountrySelection: true })));
404
- countrySelector = react_1.screen.getByRole('button', {
405
- name: /select country/i,
406
- });
407
- user_event_1.default.click(countrySelector);
408
- // Should not show search input in modal
409
- return [4 /*yield*/, (0, react_1.waitFor)(function () {
410
- expect(react_1.screen.queryByPlaceholderText('Search countries...')).not.toBeInTheDocument();
411
- })];
412
- case 1:
413
- // Should not show search input in modal
414
- _a.sent();
415
- return [2 /*return*/];
416
- }
417
- });
418
- }); });
419
- });
420
- describe('Edge Cases', function () {
421
- it('should handle empty value gracefully', function () {
422
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { value: "" })));
423
- var input = react_1.screen.getByRole('textbox');
424
- expect(input).toHaveValue('');
425
- });
426
- it('should handle invalid initial country code', function () {
427
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps, { initialCountry: "INVALID" })));
428
- // Should fallback to first country
429
- var countries = (0, countryData_1.getCountryData)();
430
- var input = react_1.screen.getByRole('textbox');
431
- expect(input).toHaveAttribute('placeholder', countries[0].example);
432
- });
433
- it('should handle cursor position correctly during formatting', function () { return __awaiter(void 0, void 0, void 0, function () {
434
- var input;
435
- return __generator(this, function (_a) {
436
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, __assign({}, defaultProps)));
437
- input = react_1.screen.getByRole('textbox');
438
- // Type partial number
439
- user_event_1.default.type(input, '202345');
440
- // Set cursor in middle
441
- input.setSelectionRange(3, 3);
442
- // Type more digits
443
- user_event_1.default.type(input, '9');
444
- // Cursor should be in reasonable position (exact position may vary due to formatting)
445
- expect(input.selectionStart).toBeGreaterThan(0);
446
- return [2 /*return*/];
447
- });
448
- }); });
449
- });
450
- describe('enableCountryChange disabled behavior', function () {
451
- it('should not change country when typing international number and enableCountryChange is false', function () { return __awaiter(void 0, void 0, void 0, function () {
452
- var onCountryChange, onPhoneNumberChange, input, lastCall, lastCallData;
453
- return __generator(this, function (_a) {
454
- switch (_a.label) {
455
- case 0:
456
- onCountryChange = jest.fn();
457
- onPhoneNumberChange = jest.fn();
458
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, { id: "test-phone", label: "Phone Number", value: "", initialCountry: "US", enableCountryChange: false, onBlur: function () { }, onClick: function () { }, disabled: false, isAnswered: false, isSafari: false, isAutoFilledActive: false, type: "tel", experimentName: "test", onCountryChange: onCountryChange, onPhoneNumberChange: onPhoneNumberChange }));
459
- input = react_1.screen.getByRole('textbox');
460
- // Type a UK number (+44) while US is selected
461
- user_event_1.default.type(input, '+447769481232');
462
- // Wait for state updates
463
- return [4 /*yield*/, (0, react_1.waitFor)(function () {
464
- expect(onPhoneNumberChange).toHaveBeenCalled();
465
- })];
466
- case 1:
467
- // Wait for state updates
468
- _a.sent();
469
- // Country should NOT have changed to GB
470
- expect(onCountryChange).not.toHaveBeenCalled();
471
- lastCall = onPhoneNumberChange.mock.calls[onPhoneNumberChange.mock.calls.length - 1];
472
- lastCallData = lastCall[0];
473
- expect(lastCallData.phoneNumber).toContain('+447769481232');
474
- // Should still be using US country code context (validation should be against US)
475
- expect(lastCallData.phoneNumber).not.toMatch(/^\+44 7769 481232$/); // UK format
476
- return [2 /*return*/];
477
- }
478
- });
479
- }); });
480
- it('should validate against selected country only when enableCountryChange is false', function () { return __awaiter(void 0, void 0, void 0, function () {
481
- var onValidationChange, input, lastCall, lastCallData;
482
- return __generator(this, function (_a) {
483
- switch (_a.label) {
484
- case 0:
485
- onValidationChange = jest.fn();
486
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, { id: "test-phone", label: "Phone Number", value: "", initialCountry: "US", enableCountryChange: false, onBlur: function () { }, onClick: function () { }, disabled: false, isAnswered: false, isSafari: false, isAutoFilledActive: false, type: "tel", experimentName: "test", onValidationChange: onValidationChange }));
487
- input = react_1.screen.getByRole('textbox');
488
- // Type a UK number that's invalid for US
489
- user_event_1.default.type(input, '+447769481231');
490
- // Wait for validation
491
- return [4 /*yield*/, (0, react_1.waitFor)(function () {
492
- expect(onValidationChange).toHaveBeenCalled();
493
- })];
494
- case 1:
495
- // Wait for validation
496
- _a.sent();
497
- lastCall = onValidationChange.mock.calls[onValidationChange.mock.calls.length - 1];
498
- lastCallData = lastCall[0];
499
- expect(lastCallData.isValid).toBe(false);
500
- return [2 /*return*/];
501
- }
502
- });
503
- }); });
504
- });
505
- describe('disabled behavior', function () {
506
- it('should disable country selector when disabled is true', function () {
507
- var onCountryChange = jest.fn();
508
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, { id: "test-phone", label: "Phone Number", value: "", initialCountry: "US", enableCountryChange: true, onBlur: function () { }, onClick: function () { }, disabled: true, isAnswered: false, isSafari: false, isAutoFilledActive: false, type: "tel", experimentName: "test", onCountryChange: onCountryChange }));
509
- // Find the country selector by its aria-label (when disabled, it's not a button)
510
- var countrySelector = react_1.screen.getByLabelText('Country: United States');
511
- // When disabled, the country selector should not be interactive
512
- // It should not have a button role and should not respond to clicks
513
- expect(countrySelector).toBeInTheDocument();
514
- expect(countrySelector).not.toHaveAttribute('role', 'button');
515
- // The country selector should have reduced opacity (this is handled by CSS)
516
- // We can verify the disabled state by checking that clicking doesn't open the dropdown
517
- user_event_1.default.click(countrySelector);
518
- // Since it's disabled, no country change should occur
519
- expect(onCountryChange).not.toHaveBeenCalled();
520
- });
521
- it('should disable both phone input and country selector when disabled is true', function () {
522
- (0, renderWithProviders_1.default)((0, jsx_runtime_1.jsx)(PhoneNumberTextField_1.default, { id: "test-phone", label: "Phone Number", value: "", initialCountry: "US", enableCountryChange: true, onBlur: function () { }, onClick: function () { }, disabled: true, isAnswered: false, isSafari: false, isAutoFilledActive: false, type: "tel", experimentName: "test" }));
523
- var input = react_1.screen.getByRole('textbox');
524
- var countrySelector = react_1.screen.getByLabelText('Country: United States');
525
- // Both should be disabled
526
- expect(input).toBeDisabled();
527
- expect(countrySelector).toBeInTheDocument();
528
- // The country selector should not be clickable when disabled
529
- user_event_1.default.click(countrySelector);
530
- // No dropdown should appear (this is handled by the useCountrySelector hook)
531
- // We can verify this by checking that the country selector doesn't have button role
532
- expect(countrySelector).not.toHaveAttribute('role', 'button');
533
- });
534
- });
535
- });
536
- //# sourceMappingURL=PhoneNumberTextField.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PhoneNumberTextField.test.js","sourceRoot":"","sources":["../../../../src/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextField.test.tsx"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- export interface ErrorDisplayProps {
2
- id?: string;
3
- errorMessage?: string;
4
- role?: string;
5
- 'aria-live'?: 'off' | 'polite' | 'assertive';
6
- }
7
- declare const ErrorDisplay: React.FC<ErrorDisplayProps>;
8
- export default ErrorDisplay;
@@ -1,17 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- var jsx_runtime_1 = require("@emotion/react/jsx-runtime");
7
- /** @jsxImportSource @emotion/react */
8
- var FormHelperText_1 = __importDefault(require("@mui/material/FormHelperText"));
9
- var ErrorDisplay = function (_a) {
10
- var id = _a.id, errorMessage = _a.errorMessage, role = _a.role, ariaLive = _a["aria-live"];
11
- if (errorMessage) {
12
- return ((0, jsx_runtime_1.jsx)(FormHelperText_1.default, { id: id, error: true, role: role, "aria-live": ariaLive, children: errorMessage }));
13
- }
14
- return null;
15
- };
16
- exports.default = ErrorDisplay;
17
- //# sourceMappingURL=ErrorDisplay.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ErrorDisplay.js","sourceRoot":"","sources":["../../../../../../../src/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/display/ErrorDisplay.tsx"],"names":[],"mappings":";;;;;;AAAA,sCAAsC;AACtC,gFAA0D;AAS1D,IAAM,YAAY,GAAgC,UAAC,EAKlD;QAJC,EAAE,QAAA,EACF,YAAY,kBAAA,EACZ,IAAI,UAAA,EACS,QAAQ,kBAAA;IAErB,IAAI,YAAY,EAAE,CAAC;QACjB,OAAO,CACL,uBAAC,wBAAc,IAAC,EAAE,EAAE,EAAE,EAAE,KAAK,QAAC,IAAI,EAAE,IAAI,eAAa,QAAQ,YAC1D,YAAY,GACE,CAClB,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,kBAAe,YAAY,CAAC"}
@@ -1,22 +0,0 @@
1
- export interface PhoneInputProps {
2
- id: string;
3
- value: string;
4
- placeholder?: string;
5
- disabled?: boolean;
6
- error?: boolean;
7
- isAnswered?: boolean;
8
- isSafari?: boolean;
9
- isAutoFilledActive?: boolean;
10
- experimentName?: string;
11
- type?: string;
12
- onChange: (params: {
13
- id: string;
14
- value: string;
15
- }) => void;
16
- onBlur?: () => void;
17
- onClick?: (event: React.MouseEvent<HTMLInputElement>) => void;
18
- strictMode?: boolean;
19
- [key: string]: any;
20
- }
21
- declare const PhoneInput: import("react").ForwardRefExoticComponent<Omit<PhoneInputProps, "ref"> & import("react").RefAttributes<HTMLInputElement>>;
22
- export default PhoneInput;