@mvf/external-components 3.31.1-dev.4 → 3.31.1-dev.6
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.
- package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextField.js +28 -7
- package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextField.js.map +1 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextField.test.js +147 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextField.test.js.map +1 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/{ErrorDisplay.d.ts → __helpers__/components/display/ErrorDisplay.d.ts} +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/display/ErrorDisplay.js +17 -0
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/display/ErrorDisplay.js.map +1 -0
- package/Components/Molecules/PhoneNumberTextFieldCustom/{PhoneInput.js → __helpers__/components/forms/PhoneInput.js} +2 -5
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/forms/PhoneInput.js.map +1 -0
- package/Components/Molecules/PhoneNumberTextFieldCustom/{PhoneInput.test.js → __helpers__/components/forms/PhoneInput.test.js} +1 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/forms/PhoneInput.test.js.map +1 -0
- package/Components/Molecules/PhoneNumberTextFieldCustom/{CountryDropdown.d.ts → __helpers__/components/ui/CountryDropdown.d.ts} +1 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/{CountryDropdown.js → __helpers__/components/ui/CountryDropdown.js} +1 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryDropdown.js.map +1 -0
- package/Components/Molecules/PhoneNumberTextFieldCustom/{CountryDropdown.test.js → __helpers__/components/ui/CountryDropdown.test.js} +2 -2
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryDropdown.test.js.map +1 -0
- package/Components/Molecules/PhoneNumberTextFieldCustom/{CountryModal.d.ts → __helpers__/components/ui/CountryModal.d.ts} +1 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/{CountryModal.js → __helpers__/components/ui/CountryModal.js} +1 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryModal.js.map +1 -0
- package/Components/Molecules/PhoneNumberTextFieldCustom/{CountryModal.test.js → __helpers__/components/ui/CountryModal.test.js} +18 -18
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountryModal.test.js.map +1 -0
- package/Components/Molecules/PhoneNumberTextFieldCustom/{CountrySelector.d.ts → __helpers__/components/ui/CountrySelector.d.ts} +2 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/{CountrySelector.js → __helpers__/components/ui/CountrySelector.js} +8 -5
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/CountrySelector.js.map +1 -0
- package/Components/Molecules/PhoneNumberTextFieldCustom/{FlagIcon.d.ts → __helpers__/components/ui/FlagIcon.d.ts} +1 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/components/ui/FlagIcon.js.map +1 -0
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/useCountrySelector.d.ts +2 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/useCountrySelector.js +8 -6
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/useCountrySelector.js.map +1 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/usePhoneNumber.d.ts +7 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/usePhoneNumber.js +73 -25
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/usePhoneNumber.js.map +1 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/stories/PhoneNumberTextFieldStory.d.ts +5 -2
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/stories/PhoneNumberTextFieldStory.js +28 -5
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/stories/PhoneNumberTextFieldStory.js.map +1 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/phoneValidation.d.ts +1 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/phoneValidation.js +14 -4
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/phoneValidation.js.map +1 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/defaultProps.js +1 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/defaultProps.js.map +1 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/index.d.ts +5 -5
- package/Components/Molecules/PhoneNumberTextFieldCustom/index.js +5 -5
- package/Components/Molecules/PhoneNumberTextFieldCustom/index.js.map +1 -1
- package/package.json +1 -2
- package/Components/Molecules/PhoneNumberTextField/CountryDropdown.d.ts +0 -12
- package/Components/Molecules/PhoneNumberTextField/CountryDropdown.js +0 -146
- package/Components/Molecules/PhoneNumberTextField/CountryDropdown.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextField/CountryDropdown.test.js +0 -49
- package/Components/Molecules/PhoneNumberTextField/CountryDropdown.test.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextField/CountryModal.d.ts +0 -11
- package/Components/Molecules/PhoneNumberTextField/CountryModal.js +0 -180
- package/Components/Molecules/PhoneNumberTextField/CountryModal.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextField/CountryModal.test.js +0 -54
- package/Components/Molecules/PhoneNumberTextField/CountryModal.test.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextField/__tests__/PhoneNumberTextField.test.d.ts +0 -1
- package/Components/Molecules/PhoneNumberTextField/__tests__/PhoneNumberTextField.test.js +0 -215
- package/Components/Molecules/PhoneNumberTextField/__tests__/PhoneNumberTextField.test.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextField/countryData.d.ts +0 -13
- package/Components/Molecules/PhoneNumberTextField/countryData.js +0 -743
- package/Components/Molecules/PhoneNumberTextField/countryData.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextField/makePhoneInputStyles.d.ts +0 -50
- package/Components/Molecules/PhoneNumberTextField/makePhoneInputStyles.js +0 -147
- package/Components/Molecules/PhoneNumberTextField/makePhoneInputStyles.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextField/phoneNumberValidation.d.ts +0 -12
- package/Components/Molecules/PhoneNumberTextField/phoneNumberValidation.js +0 -66
- package/Components/Molecules/PhoneNumberTextField/phoneNumberValidation.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextField/phoneValidation.d.ts +0 -12
- package/Components/Molecules/PhoneNumberTextField/phoneValidation.js +0 -71
- package/Components/Molecules/PhoneNumberTextField/phoneValidation.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/CountryDropdown.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/CountryDropdown.test.d.ts +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/CountryDropdown.test.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/CountryModal.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/CountryModal.test.d.ts +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/CountryModal.test.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/CountrySelector.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/ErrorDisplay.js +0 -26
- package/Components/Molecules/PhoneNumberTextFieldCustom/ErrorDisplay.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/FlagIcon.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneInput.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneInput.test.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextFieldRefactored.d.ts +0 -37
- package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextFieldRefactored.js +0 -154
- package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextFieldRefactored.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextFieldStory.d.ts +0 -17
- package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextFieldStory.js +0 -29
- package/Components/Molecules/PhoneNumberTextFieldCustom/PhoneNumberTextFieldStory.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/useDebouncedValidation.d.ts +0 -12
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/useDebouncedValidation.js +0 -70
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/hooks/useDebouncedValidation.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/stories/DebouncedValidationStory.d.ts +0 -20
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/stories/DebouncedValidationStory.js +0 -60
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/stories/DebouncedValidationStory.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/stories/StrictModeStory.d.ts +0 -18
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/stories/StrictModeStory.js +0 -101
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/stories/StrictModeStory.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/countryDataFull.d.ts +0 -13
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/countryDataFull.js +0 -513
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/countryDataFull.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/countryDataOptimized.d.ts +0 -0
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/countryDataOptimized.js +0 -2
- package/Components/Molecules/PhoneNumberTextFieldCustom/__helpers__/utils/countryDataOptimized.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/countryData.d.ts +0 -12
- package/Components/Molecules/PhoneNumberTextFieldCustom/countryData.js +0 -507
- package/Components/Molecules/PhoneNumberTextFieldCustom/countryData.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/makeFormControlPhoneNumberStyling.d.ts +0 -8
- package/Components/Molecules/PhoneNumberTextFieldCustom/makeFormControlPhoneNumberStyling.js +0 -139
- package/Components/Molecules/PhoneNumberTextFieldCustom/makeFormControlPhoneNumberStyling.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/phoneValidation.d.ts +0 -15
- package/Components/Molecules/PhoneNumberTextFieldCustom/phoneValidation.js +0 -120
- package/Components/Molecules/PhoneNumberTextFieldCustom/phoneValidation.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/phoneValidation.test.d.ts +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/phoneValidation.test.js +0 -157
- package/Components/Molecules/PhoneNumberTextFieldCustom/phoneValidation.test.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/useCountrySelector.d.ts +0 -12
- package/Components/Molecules/PhoneNumberTextFieldCustom/useCountrySelector.js +0 -34
- package/Components/Molecules/PhoneNumberTextFieldCustom/useCountrySelector.js.map +0 -1
- package/Components/Molecules/PhoneNumberTextFieldCustom/usePhoneNumber.d.ts +0 -31
- package/Components/Molecules/PhoneNumberTextFieldCustom/usePhoneNumber.js +0 -130
- package/Components/Molecules/PhoneNumberTextFieldCustom/usePhoneNumber.js.map +0 -1
- /package/Components/Molecules/PhoneNumberTextFieldCustom/{PhoneInput.d.ts → __helpers__/components/forms/PhoneInput.d.ts} +0 -0
- /package/Components/Molecules/PhoneNumberTextFieldCustom/{PhoneInput.test.d.ts → __helpers__/components/forms/PhoneInput.test.d.ts} +0 -0
- /package/Components/Molecules/{PhoneNumberTextField → PhoneNumberTextFieldCustom/__helpers__/components/ui}/CountryDropdown.test.d.ts +0 -0
- /package/Components/Molecules/{PhoneNumberTextField → PhoneNumberTextFieldCustom/__helpers__/components/ui}/CountryModal.test.d.ts +0 -0
- /package/Components/Molecules/PhoneNumberTextFieldCustom/{FlagIcon.js → __helpers__/components/ui/FlagIcon.js} +0 -0
@@ -1,15 +0,0 @@
|
|
1
|
-
import { PhoneNumberType } from 'google-libphonenumber';
|
2
|
-
import { CountryCode } from './__helpers__/utils/countryData';
|
3
|
-
export interface PhoneValidationResult {
|
4
|
-
isValid: boolean;
|
5
|
-
formattedNumber: string;
|
6
|
-
countryCode: CountryCode | undefined;
|
7
|
-
nationalNumber: string;
|
8
|
-
nationalFormatted: string;
|
9
|
-
phoneNumberType?: PhoneNumberType;
|
10
|
-
errorMessage?: string;
|
11
|
-
}
|
12
|
-
export declare const validatePhoneNumber: (phoneNumber: string, countryCode?: CountryCode) => PhoneValidationResult;
|
13
|
-
export declare const formatAsYouType: (phoneNumber: string, countryCode: CountryCode) => string;
|
14
|
-
export declare const getExampleForCountry: (countryCode: CountryCode) => string;
|
15
|
-
export declare const extractCountryCodeFromNumber: (phoneNumber: string, defaultCountry?: CountryCode) => CountryCode | undefined;
|
@@ -1,120 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.extractCountryCodeFromNumber = exports.getExampleForCountry = exports.formatAsYouType = exports.validatePhoneNumber = void 0;
|
4
|
-
var google_libphonenumber_1 = require("google-libphonenumber");
|
5
|
-
var phoneUtil = google_libphonenumber_1.PhoneNumberUtil.getInstance();
|
6
|
-
var validatePhoneNumber = function (phoneNumber, countryCode) {
|
7
|
-
var _a;
|
8
|
-
try {
|
9
|
-
// If no country code provided, try to parse the number
|
10
|
-
var parsedNumber = countryCode
|
11
|
-
? phoneUtil.parse(phoneNumber, countryCode)
|
12
|
-
: phoneUtil.parse(phoneNumber);
|
13
|
-
if (!parsedNumber) {
|
14
|
-
return {
|
15
|
-
isValid: false,
|
16
|
-
formattedNumber: phoneNumber,
|
17
|
-
countryCode: undefined,
|
18
|
-
nationalNumber: phoneNumber,
|
19
|
-
nationalFormatted: phoneNumber,
|
20
|
-
errorMessage: 'Invalid phone number format',
|
21
|
-
};
|
22
|
-
}
|
23
|
-
var isValid = phoneUtil.isValidNumber(parsedNumber);
|
24
|
-
var formattedNumber = phoneUtil.format(parsedNumber, google_libphonenumber_1.PhoneNumberFormat.E164);
|
25
|
-
var nationalFormatted = phoneUtil.format(parsedNumber, google_libphonenumber_1.PhoneNumberFormat.NATIONAL);
|
26
|
-
var detectedCountryCode = phoneUtil.getRegionCodeForNumber(parsedNumber);
|
27
|
-
var nationalNumber = ((_a = parsedNumber.getNationalNumber()) === null || _a === void 0 ? void 0 : _a.toString()) || '';
|
28
|
-
var phoneNumberType = phoneUtil.getNumberType(parsedNumber);
|
29
|
-
return {
|
30
|
-
isValid: isValid,
|
31
|
-
formattedNumber: formattedNumber,
|
32
|
-
countryCode: detectedCountryCode,
|
33
|
-
nationalNumber: nationalNumber,
|
34
|
-
nationalFormatted: nationalFormatted,
|
35
|
-
phoneNumberType: phoneNumberType,
|
36
|
-
errorMessage: isValid ? undefined : 'Please enter a valid phone number',
|
37
|
-
};
|
38
|
-
}
|
39
|
-
catch (error) {
|
40
|
-
return {
|
41
|
-
isValid: false,
|
42
|
-
formattedNumber: phoneNumber,
|
43
|
-
countryCode: undefined,
|
44
|
-
nationalNumber: phoneNumber,
|
45
|
-
nationalFormatted: phoneNumber,
|
46
|
-
errorMessage: 'Invalid phone number format',
|
47
|
-
};
|
48
|
-
}
|
49
|
-
};
|
50
|
-
exports.validatePhoneNumber = validatePhoneNumber;
|
51
|
-
var formatAsYouType = function (phoneNumber, countryCode) {
|
52
|
-
try {
|
53
|
-
if (!phoneNumber || phoneNumber.length === 0) {
|
54
|
-
return phoneNumber;
|
55
|
-
}
|
56
|
-
var formatter = new google_libphonenumber_1.AsYouTypeFormatter(countryCode);
|
57
|
-
var formatted = '';
|
58
|
-
// Clean the input - only keep digits and + at the start
|
59
|
-
var cleanedInput = phoneNumber.replace(/[^\d+]/g, '');
|
60
|
-
// Handle international numbers with +
|
61
|
-
if (cleanedInput.startsWith('+')) {
|
62
|
-
// For international numbers, use a generic formatter that can detect the country
|
63
|
-
var internationalFormatter = new google_libphonenumber_1.AsYouTypeFormatter('US'); // Use US as default for international parsing
|
64
|
-
for (var i = 0; i < cleanedInput.length; i++) {
|
65
|
-
var char = cleanedInput.charAt(i);
|
66
|
-
formatted = internationalFormatter.inputDigit(char);
|
67
|
-
}
|
68
|
-
}
|
69
|
-
else {
|
70
|
-
// Process each digit through the country-specific formatter
|
71
|
-
for (var i = 0; i < cleanedInput.length; i++) {
|
72
|
-
var char = cleanedInput.charAt(i);
|
73
|
-
formatted = formatter.inputDigit(char);
|
74
|
-
}
|
75
|
-
}
|
76
|
-
return formatted || phoneNumber;
|
77
|
-
}
|
78
|
-
catch (error) {
|
79
|
-
// If formatting fails, return the original number
|
80
|
-
return phoneNumber;
|
81
|
-
}
|
82
|
-
};
|
83
|
-
exports.formatAsYouType = formatAsYouType;
|
84
|
-
var getExampleForCountry = function (countryCode) {
|
85
|
-
try {
|
86
|
-
var example = phoneUtil.getExampleNumber(countryCode);
|
87
|
-
return example
|
88
|
-
? phoneUtil.format(example, google_libphonenumber_1.PhoneNumberFormat.NATIONAL) || ''
|
89
|
-
: '';
|
90
|
-
}
|
91
|
-
catch (_a) {
|
92
|
-
return '';
|
93
|
-
}
|
94
|
-
};
|
95
|
-
exports.getExampleForCountry = getExampleForCountry;
|
96
|
-
var extractCountryCodeFromNumber = function (phoneNumber, defaultCountry) {
|
97
|
-
try {
|
98
|
-
// First try to parse as international number (with country code)
|
99
|
-
var parsed = void 0;
|
100
|
-
try {
|
101
|
-
parsed = phoneUtil.parse(phoneNumber);
|
102
|
-
}
|
103
|
-
catch (_a) {
|
104
|
-
// If international parsing fails and we have a default country, try with it
|
105
|
-
if (defaultCountry) {
|
106
|
-
parsed = phoneUtil.parse(phoneNumber, defaultCountry);
|
107
|
-
}
|
108
|
-
else {
|
109
|
-
return undefined;
|
110
|
-
}
|
111
|
-
}
|
112
|
-
var regionCode = phoneUtil.getRegionCodeForNumber(parsed);
|
113
|
-
return regionCode;
|
114
|
-
}
|
115
|
-
catch (_b) {
|
116
|
-
return undefined;
|
117
|
-
}
|
118
|
-
};
|
119
|
-
exports.extractCountryCodeFromNumber = extractCountryCodeFromNumber;
|
120
|
-
//# sourceMappingURL=phoneValidation.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"phoneValidation.js","sourceRoot":"","sources":["../../../../src/Components/Molecules/PhoneNumberTextFieldCustom/phoneValidation.ts"],"names":[],"mappings":"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"}
|
@@ -1 +0,0 @@
|
|
1
|
-
export {};
|
@@ -1,157 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
var phoneValidation_1 = require("./phoneValidation");
|
4
|
-
describe('Phone Validation Utils', function () {
|
5
|
-
describe('validatePhoneNumber', function () {
|
6
|
-
it('should return a validation result for any input', function () {
|
7
|
-
var result = (0, phoneValidation_1.validatePhoneNumber)('5551234567', 'US');
|
8
|
-
expect(result).toBeDefined();
|
9
|
-
expect(result).toHaveProperty('isValid');
|
10
|
-
expect(result).toHaveProperty('formattedNumber');
|
11
|
-
expect(result).toHaveProperty('countryCode');
|
12
|
-
expect(result).toHaveProperty('nationalNumber');
|
13
|
-
});
|
14
|
-
it('should handle international phone numbers', function () {
|
15
|
-
var result = (0, phoneValidation_1.validatePhoneNumber)('+1234567890');
|
16
|
-
expect(result).toBeDefined();
|
17
|
-
expect(result).toHaveProperty('isValid');
|
18
|
-
expect(result).toHaveProperty('formattedNumber');
|
19
|
-
});
|
20
|
-
it('should reject clearly invalid input', function () {
|
21
|
-
var result = (0, phoneValidation_1.validatePhoneNumber)('123', 'US');
|
22
|
-
expect(result.isValid).toBe(false);
|
23
|
-
expect(result).toHaveProperty('errorMessage');
|
24
|
-
});
|
25
|
-
it('should handle empty input gracefully', function () {
|
26
|
-
var result = (0, phoneValidation_1.validatePhoneNumber)('', 'US');
|
27
|
-
expect(result.isValid).toBe(false);
|
28
|
-
expect(result.formattedNumber).toBe('');
|
29
|
-
expect(result.errorMessage).toBe('Invalid phone number format');
|
30
|
-
});
|
31
|
-
it('should handle various country codes', function () {
|
32
|
-
var usResult = (0, phoneValidation_1.validatePhoneNumber)('1234567890', 'US');
|
33
|
-
var gbResult = (0, phoneValidation_1.validatePhoneNumber)('1234567890', 'GB');
|
34
|
-
var caResult = (0, phoneValidation_1.validatePhoneNumber)('1234567890', 'CA');
|
35
|
-
expect(usResult).toHaveProperty('isValid');
|
36
|
-
expect(gbResult).toHaveProperty('isValid');
|
37
|
-
expect(caResult).toHaveProperty('isValid');
|
38
|
-
});
|
39
|
-
it('should handle invalid characters gracefully', function () {
|
40
|
-
var result = (0, phoneValidation_1.validatePhoneNumber)('abc123def', 'US');
|
41
|
-
expect(result.isValid).toBe(false);
|
42
|
-
expect(result).toHaveProperty('errorMessage');
|
43
|
-
});
|
44
|
-
});
|
45
|
-
describe('formatAsYouType', function () {
|
46
|
-
it('should return formatted string for US numbers', function () {
|
47
|
-
var result1 = (0, phoneValidation_1.formatAsYouType)('5', 'US');
|
48
|
-
var result2 = (0, phoneValidation_1.formatAsYouType)('555', 'US');
|
49
|
-
var result3 = (0, phoneValidation_1.formatAsYouType)('5551234567', 'US');
|
50
|
-
expect(typeof result1).toBe('string');
|
51
|
-
expect(typeof result2).toBe('string');
|
52
|
-
expect(typeof result3).toBe('string');
|
53
|
-
expect(result3).toContain('555');
|
54
|
-
expect(result3).toContain('123');
|
55
|
-
expect(result3).toContain('4567');
|
56
|
-
});
|
57
|
-
it('should return formatted string for UK numbers', function () {
|
58
|
-
var result1 = (0, phoneValidation_1.formatAsYouType)('7', 'GB');
|
59
|
-
var result2 = (0, phoneValidation_1.formatAsYouType)('770', 'GB');
|
60
|
-
var result3 = (0, phoneValidation_1.formatAsYouType)('7700900123', 'GB');
|
61
|
-
expect(typeof result1).toBe('string');
|
62
|
-
expect(typeof result2).toBe('string');
|
63
|
-
expect(typeof result3).toBe('string');
|
64
|
-
expect(result3).toContain('7700');
|
65
|
-
});
|
66
|
-
it('should handle international numbers with + prefix', function () {
|
67
|
-
var result = (0, phoneValidation_1.formatAsYouType)('+447700900123', 'GB');
|
68
|
-
expect(result).toContain('7700');
|
69
|
-
});
|
70
|
-
it('should handle empty input', function () {
|
71
|
-
expect((0, phoneValidation_1.formatAsYouType)('', 'US')).toBe('');
|
72
|
-
});
|
73
|
-
it('should handle invalid input gracefully', function () {
|
74
|
-
var result = (0, phoneValidation_1.formatAsYouType)('abc', 'US');
|
75
|
-
expect(result).toBe('abc'); // Should return original if formatting fails
|
76
|
-
});
|
77
|
-
it('should format Canadian phone number', function () {
|
78
|
-
var result = (0, phoneValidation_1.formatAsYouType)('4161234567', 'CA');
|
79
|
-
expect(result).toBe('(416) 123-4567');
|
80
|
-
});
|
81
|
-
it('should handle partial international number', function () {
|
82
|
-
var result = (0, phoneValidation_1.formatAsYouType)('+1555', 'US');
|
83
|
-
expect(result).toBe('+1 555');
|
84
|
-
});
|
85
|
-
});
|
86
|
-
describe('getExampleForCountry', function () {
|
87
|
-
it('should return example for US', function () {
|
88
|
-
var example = (0, phoneValidation_1.getExampleForCountry)('US');
|
89
|
-
expect(example).toBeTruthy();
|
90
|
-
expect(example).toContain('(');
|
91
|
-
expect(example).toContain(')');
|
92
|
-
expect(example).toContain('-');
|
93
|
-
});
|
94
|
-
it('should return example for UK', function () {
|
95
|
-
var example = (0, phoneValidation_1.getExampleForCountry)('GB');
|
96
|
-
expect(example).toBeTruthy();
|
97
|
-
expect(example.length).toBeGreaterThan(0);
|
98
|
-
});
|
99
|
-
it('should return example for Canada', function () {
|
100
|
-
var example = (0, phoneValidation_1.getExampleForCountry)('CA');
|
101
|
-
expect(example).toBeTruthy();
|
102
|
-
expect(example).toContain('(');
|
103
|
-
});
|
104
|
-
it('should handle invalid country code', function () {
|
105
|
-
// eslint-disable-next-line @typescript-eslint/no-unsafe-argument
|
106
|
-
var example = (0, phoneValidation_1.getExampleForCountry)('INVALID');
|
107
|
-
expect(example).toBe('');
|
108
|
-
});
|
109
|
-
it('should return different examples for different countries', function () {
|
110
|
-
var usExample = (0, phoneValidation_1.getExampleForCountry)('US');
|
111
|
-
var gbExample = (0, phoneValidation_1.getExampleForCountry)('GB');
|
112
|
-
expect(usExample).not.toBe(gbExample);
|
113
|
-
});
|
114
|
-
});
|
115
|
-
describe('extractCountryCodeFromNumber', function () {
|
116
|
-
it('should handle international numbers', function () {
|
117
|
-
var result1 = (0, phoneValidation_1.extractCountryCodeFromNumber)('+15551234567');
|
118
|
-
var result2 = (0, phoneValidation_1.extractCountryCodeFromNumber)('+447700900123');
|
119
|
-
var result3 = (0, phoneValidation_1.extractCountryCodeFromNumber)('+33123456789');
|
120
|
-
// These may or may not work depending on the library implementation
|
121
|
-
// Just verify they return something or undefined
|
122
|
-
expect([null, undefined, 'US', 'CA']).toContain(result1);
|
123
|
-
expect([null, undefined, 'GB']).toContain(result2);
|
124
|
-
expect([null, undefined, 'FR']).toContain(result3);
|
125
|
-
});
|
126
|
-
it('should return undefined for invalid numbers', function () {
|
127
|
-
var result1 = (0, phoneValidation_1.extractCountryCodeFromNumber)('123');
|
128
|
-
var result2 = (0, phoneValidation_1.extractCountryCodeFromNumber)('');
|
129
|
-
var result3 = (0, phoneValidation_1.extractCountryCodeFromNumber)('+abc123');
|
130
|
-
expect(result1).toBeUndefined();
|
131
|
-
expect(result2).toBeUndefined();
|
132
|
-
expect(result3).toBeUndefined();
|
133
|
-
});
|
134
|
-
});
|
135
|
-
describe('Edge Cases', function () {
|
136
|
-
it('should handle very long numbers', function () {
|
137
|
-
var longNumber = '123456789012345678901234567890';
|
138
|
-
var result = (0, phoneValidation_1.validatePhoneNumber)(longNumber, 'US');
|
139
|
-
expect(result.isValid).toBe(false);
|
140
|
-
});
|
141
|
-
it('should handle formatted input strings', function () {
|
142
|
-
var result1 = (0, phoneValidation_1.formatAsYouType)('555-123-4567', 'US');
|
143
|
-
var result2 = (0, phoneValidation_1.formatAsYouType)('555 123 4567', 'US');
|
144
|
-
expect(typeof result1).toBe('string');
|
145
|
-
expect(typeof result2).toBe('string');
|
146
|
-
});
|
147
|
-
it('should handle various input formats', function () {
|
148
|
-
var result1 = (0, phoneValidation_1.validatePhoneNumber)('1234567890', 'US');
|
149
|
-
var result2 = (0, phoneValidation_1.validatePhoneNumber)('123-456-7890', 'US');
|
150
|
-
var result3 = (0, phoneValidation_1.validatePhoneNumber)('+11234567890', 'US');
|
151
|
-
expect(result1).toHaveProperty('isValid');
|
152
|
-
expect(result2).toHaveProperty('isValid');
|
153
|
-
expect(result3).toHaveProperty('isValid');
|
154
|
-
});
|
155
|
-
});
|
156
|
-
});
|
157
|
-
//# sourceMappingURL=phoneValidation.test.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"phoneValidation.test.js","sourceRoot":"","sources":["../../../../src/Components/Molecules/PhoneNumberTextFieldCustom/phoneValidation.test.ts"],"names":[],"mappings":"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"}
|
@@ -1,12 +0,0 @@
|
|
1
|
-
/// <reference types="react" />
|
2
|
-
export interface UseCountrySelectorOptions {
|
3
|
-
enableCountryChange?: boolean;
|
4
|
-
}
|
5
|
-
export interface UseCountrySelectorReturn {
|
6
|
-
isCountryMenuOpen: boolean;
|
7
|
-
openCountryMenu: () => void;
|
8
|
-
closeCountryMenu: () => void;
|
9
|
-
handleCountrySelectClick: () => void;
|
10
|
-
handleKeyDown: (e: React.KeyboardEvent) => void;
|
11
|
-
}
|
12
|
-
export declare const useCountrySelector: ({ enableCountryChange, }?: UseCountrySelectorOptions) => UseCountrySelectorReturn;
|
@@ -1,34 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.useCountrySelector = void 0;
|
4
|
-
var react_1 = require("react");
|
5
|
-
var useCountrySelector = function (_a) {
|
6
|
-
var _b = _a === void 0 ? {} : _a, _c = _b.enableCountryChange, enableCountryChange = _c === void 0 ? true : _c;
|
7
|
-
var _d = (0, react_1.useState)(false), isCountryMenuOpen = _d[0], setIsCountryMenuOpen = _d[1];
|
8
|
-
var openCountryMenu = (0, react_1.useCallback)(function () {
|
9
|
-
if (enableCountryChange) {
|
10
|
-
setIsCountryMenuOpen(true);
|
11
|
-
}
|
12
|
-
}, [enableCountryChange]);
|
13
|
-
var closeCountryMenu = (0, react_1.useCallback)(function () {
|
14
|
-
setIsCountryMenuOpen(false);
|
15
|
-
}, []);
|
16
|
-
var handleCountrySelectClick = (0, react_1.useCallback)(function () {
|
17
|
-
openCountryMenu();
|
18
|
-
}, [openCountryMenu]);
|
19
|
-
var handleKeyDown = (0, react_1.useCallback)(function (e) {
|
20
|
-
if (enableCountryChange && (e.key === 'Enter' || e.key === ' ')) {
|
21
|
-
e.preventDefault();
|
22
|
-
openCountryMenu();
|
23
|
-
}
|
24
|
-
}, [enableCountryChange, openCountryMenu]);
|
25
|
-
return {
|
26
|
-
isCountryMenuOpen: isCountryMenuOpen,
|
27
|
-
openCountryMenu: openCountryMenu,
|
28
|
-
closeCountryMenu: closeCountryMenu,
|
29
|
-
handleCountrySelectClick: handleCountrySelectClick,
|
30
|
-
handleKeyDown: handleKeyDown,
|
31
|
-
};
|
32
|
-
};
|
33
|
-
exports.useCountrySelector = useCountrySelector;
|
34
|
-
//# sourceMappingURL=useCountrySelector.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"useCountrySelector.js","sourceRoot":"","sources":["../../../../src/Components/Molecules/PhoneNumberTextFieldCustom/useCountrySelector.ts"],"names":[],"mappings":";;;AAAA,+BAA8C;AAcvC,IAAM,kBAAkB,GAAG,UAAC,EAEF;QAFE,qBAEJ,EAAE,KAAA,EAD/B,2BAA0B,EAA1B,mBAAmB,mBAAG,IAAI,KAAA;IAEpB,IAAA,KAA4C,IAAA,gBAAQ,EAAC,KAAK,CAAC,EAA1D,iBAAiB,QAAA,EAAE,oBAAoB,QAAmB,CAAC;IAElE,IAAM,eAAe,GAAG,IAAA,mBAAW,EAAC;QAClC,IAAI,mBAAmB,EAAE;YACvB,oBAAoB,CAAC,IAAI,CAAC,CAAC;SAC5B;IACH,CAAC,EAAE,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAE1B,IAAM,gBAAgB,GAAG,IAAA,mBAAW,EAAC;QACnC,oBAAoB,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,IAAM,wBAAwB,GAAG,IAAA,mBAAW,EAAC;QAC3C,eAAe,EAAE,CAAC;IACpB,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAEtB,IAAM,aAAa,GAAG,IAAA,mBAAW,EAC/B,UAAC,CAAsB;QACrB,IAAI,mBAAmB,IAAI,CAAC,CAAC,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE;YAC/D,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,eAAe,EAAE,CAAC;SACnB;IACH,CAAC,EACD,CAAC,mBAAmB,EAAE,eAAe,CAAC,CACvC,CAAC;IAEF,OAAO;QACL,iBAAiB,mBAAA;QACjB,eAAe,iBAAA;QACf,gBAAgB,kBAAA;QAChB,wBAAwB,0BAAA;QACxB,aAAa,eAAA;KACd,CAAC;AACJ,CAAC,CAAC;AApCW,QAAA,kBAAkB,sBAoC7B"}
|
@@ -1,31 +0,0 @@
|
|
1
|
-
import { CountryData } from './countryData';
|
2
|
-
import { PhoneValidationResult } from './phoneValidation';
|
3
|
-
export interface UsePhoneNumberOptions {
|
4
|
-
initialCountry?: string;
|
5
|
-
initialValue?: string;
|
6
|
-
onPhoneNumberChange?: (params: {
|
7
|
-
phoneNumber: string;
|
8
|
-
e164Number: string;
|
9
|
-
}) => void;
|
10
|
-
onCountryChange?: (params: {
|
11
|
-
selectedCountry: CountryData;
|
12
|
-
previousCountry: CountryData;
|
13
|
-
}) => void;
|
14
|
-
onValidationChange?: (params: {
|
15
|
-
isValid: boolean;
|
16
|
-
validationResult: PhoneValidationResult;
|
17
|
-
phoneNumber: string;
|
18
|
-
}) => void;
|
19
|
-
}
|
20
|
-
export interface UsePhoneNumberReturn {
|
21
|
-
phoneNumber: string;
|
22
|
-
selectedCountry: CountryData;
|
23
|
-
validationResult: PhoneValidationResult | null;
|
24
|
-
countries: CountryData[];
|
25
|
-
setPhoneNumber: (value: string) => void;
|
26
|
-
setSelectedCountry: (country: CountryData) => void;
|
27
|
-
isValid: boolean;
|
28
|
-
errorMessage?: string;
|
29
|
-
formattedE164: string;
|
30
|
-
}
|
31
|
-
export declare const usePhoneNumber: ({ initialCountry, initialValue, }?: Omit<UsePhoneNumberOptions, 'onPhoneNumberChange' | 'onCountryChange' | 'onValidationChange'>) => UsePhoneNumberReturn;
|
@@ -1,130 +0,0 @@
|
|
1
|
-
"use strict";
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.usePhoneNumber = void 0;
|
4
|
-
var react_1 = require("react");
|
5
|
-
var countryData_1 = require("./countryData");
|
6
|
-
var phoneValidation_1 = require("./phoneValidation");
|
7
|
-
var usePhoneNumber = function (_a) {
|
8
|
-
var _b, _c;
|
9
|
-
var _d = _a === void 0 ? {} : _a, initialCountry = _d.initialCountry, _e = _d.initialValue, initialValue = _e === void 0 ? '' : _e;
|
10
|
-
// Memoize countries data to prevent unnecessary recalculations
|
11
|
-
var countries = (0, react_1.useMemo)(function () { return (0, countryData_1.getCountryData)(); }, []);
|
12
|
-
// Initialize selected country
|
13
|
-
var _f = (0, react_1.useState)(function () {
|
14
|
-
if (initialCountry) {
|
15
|
-
var initialCountryData = countries.find(function (c) { return c.code === initialCountry; });
|
16
|
-
if (initialCountryData)
|
17
|
-
return initialCountryData;
|
18
|
-
}
|
19
|
-
return countries[0]; // Fallback to first country
|
20
|
-
}), selectedCountry = _f[0], setSelectedCountryState = _f[1];
|
21
|
-
var _g = (0, react_1.useState)(''), phoneNumber = _g[0], setPhoneNumberState = _g[1];
|
22
|
-
var _h = (0, react_1.useState)(null), validationResult = _h[0], setValidationResult = _h[1];
|
23
|
-
var previousValueRef = (0, react_1.useRef)('');
|
24
|
-
// Process phone number with country-specific formatting and validation
|
25
|
-
var processPhoneNumber = (0, react_1.useCallback)(function (phoneValue, countryCode, useNationalFormat) {
|
26
|
-
if (useNationalFormat === void 0) { useNationalFormat = true; }
|
27
|
-
var validation = (0, phoneValidation_1.validatePhoneNumber)(phoneValue, countryCode);
|
28
|
-
if (useNationalFormat && validation.nationalFormatted) {
|
29
|
-
return { formattedNumber: validation.nationalFormatted, validation: validation };
|
30
|
-
}
|
31
|
-
var formattedNumber = (0, phoneValidation_1.formatAsYouType)(phoneValue, countryCode);
|
32
|
-
return { formattedNumber: formattedNumber, validation: validation };
|
33
|
-
}, []);
|
34
|
-
// Update country if different from current
|
35
|
-
var updateCountryIfDifferent = (0, react_1.useCallback)(function (detectedCountryCode) {
|
36
|
-
var detectedCountry = countries.find(function (c) { return c.code === detectedCountryCode; });
|
37
|
-
if (detectedCountry && detectedCountry.code !== selectedCountry.code) {
|
38
|
-
return detectedCountry;
|
39
|
-
}
|
40
|
-
return null;
|
41
|
-
}, [countries, selectedCountry.code]);
|
42
|
-
// Handle external value changes (controlled component behavior)
|
43
|
-
(0, react_1.useEffect)(function () {
|
44
|
-
if (previousValueRef.current === initialValue)
|
45
|
-
return;
|
46
|
-
previousValueRef.current = initialValue || '';
|
47
|
-
if (!initialValue) {
|
48
|
-
setPhoneNumberState('');
|
49
|
-
setValidationResult(null);
|
50
|
-
return;
|
51
|
-
}
|
52
|
-
// Try to extract country code from the input value
|
53
|
-
var detectedCountryCode = (0, phoneValidation_1.extractCountryCodeFromNumber)(initialValue, selectedCountry.code);
|
54
|
-
if (detectedCountryCode) {
|
55
|
-
// Update country if different
|
56
|
-
var newCountry = updateCountryIfDifferent(detectedCountryCode);
|
57
|
-
if (newCountry) {
|
58
|
-
setSelectedCountryState(newCountry);
|
59
|
-
}
|
60
|
-
// Process with detected country
|
61
|
-
var _a = processPhoneNumber(initialValue, detectedCountryCode, true), formattedNumber = _a.formattedNumber, validation = _a.validation;
|
62
|
-
setPhoneNumberState(formattedNumber);
|
63
|
-
setValidationResult(validation);
|
64
|
-
}
|
65
|
-
else {
|
66
|
-
// Use current selected country
|
67
|
-
var _b = processPhoneNumber(initialValue, selectedCountry.code, false), formattedNumber = _b.formattedNumber, validation = _b.validation;
|
68
|
-
setPhoneNumberState(formattedNumber);
|
69
|
-
setValidationResult(validation);
|
70
|
-
}
|
71
|
-
}, [
|
72
|
-
initialValue,
|
73
|
-
selectedCountry.code,
|
74
|
-
processPhoneNumber,
|
75
|
-
updateCountryIfDifferent,
|
76
|
-
]);
|
77
|
-
// Handle phone number changes
|
78
|
-
var setPhoneNumber = (0, react_1.useCallback)(function (newPhoneNumber) {
|
79
|
-
// Format as you type
|
80
|
-
var formattedNumber = (0, phoneValidation_1.formatAsYouType)(newPhoneNumber, selectedCountry.code);
|
81
|
-
setPhoneNumberState(formattedNumber);
|
82
|
-
// Validate with auto-detection first, then fallback to selected country
|
83
|
-
var validation = (0, phoneValidation_1.validatePhoneNumber)(formattedNumber);
|
84
|
-
if (!validation.countryCode || !validation.isValid) {
|
85
|
-
validation = (0, phoneValidation_1.validatePhoneNumber)(formattedNumber, selectedCountry.code);
|
86
|
-
}
|
87
|
-
setValidationResult(validation);
|
88
|
-
// Auto-update country if detected
|
89
|
-
if (validation.countryCode &&
|
90
|
-
validation.countryCode !== selectedCountry.code) {
|
91
|
-
var detectedCountry = countries.find(function (c) { return c.code === validation.countryCode; });
|
92
|
-
if (detectedCountry) {
|
93
|
-
setSelectedCountryState(detectedCountry);
|
94
|
-
}
|
95
|
-
}
|
96
|
-
}, [selectedCountry, countries]);
|
97
|
-
// Handle country changes
|
98
|
-
var setSelectedCountry = (0, react_1.useCallback)(function (country) {
|
99
|
-
setSelectedCountryState(country);
|
100
|
-
// Reformat existing phone number with new country's rules
|
101
|
-
if (phoneNumber) {
|
102
|
-
var reformattedNumber = (0, phoneValidation_1.formatAsYouType)(phoneNumber, country.code);
|
103
|
-
setPhoneNumberState(reformattedNumber);
|
104
|
-
// Re-validate with new country
|
105
|
-
var validation = (0, phoneValidation_1.validatePhoneNumber)(reformattedNumber, country.code);
|
106
|
-
setValidationResult(validation);
|
107
|
-
// Note: callbacks will be triggered by the main component useEffect
|
108
|
-
}
|
109
|
-
else {
|
110
|
-
setValidationResult(null);
|
111
|
-
}
|
112
|
-
// Note: callbacks will be triggered by the main component useEffect
|
113
|
-
}, [selectedCountry, phoneNumber]);
|
114
|
-
return {
|
115
|
-
// State
|
116
|
-
phoneNumber: phoneNumber,
|
117
|
-
selectedCountry: selectedCountry,
|
118
|
-
validationResult: validationResult,
|
119
|
-
countries: countries,
|
120
|
-
// Actions
|
121
|
-
setPhoneNumber: setPhoneNumber,
|
122
|
-
setSelectedCountry: setSelectedCountry,
|
123
|
-
// Computed
|
124
|
-
isValid: (_b = validationResult === null || validationResult === void 0 ? void 0 : validationResult.isValid) !== null && _b !== void 0 ? _b : false,
|
125
|
-
errorMessage: validationResult === null || validationResult === void 0 ? void 0 : validationResult.errorMessage,
|
126
|
-
formattedE164: (_c = validationResult === null || validationResult === void 0 ? void 0 : validationResult.formattedNumber) !== null && _c !== void 0 ? _c : '',
|
127
|
-
};
|
128
|
-
};
|
129
|
-
exports.usePhoneNumber = usePhoneNumber;
|
130
|
-
//# sourceMappingURL=usePhoneNumber.js.map
|
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"usePhoneNumber.js","sourceRoot":"","sources":["../../../../src/Components/Molecules/PhoneNumberTextFieldCustom/usePhoneNumber.ts"],"names":[],"mappings":"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"}
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|