@alfalab/core-components-intl-phone-input 9.2.9 → 9.2.11
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/component.js +7 -6
- package/components/flag-icon/component.js +1 -1
- package/components/flag-icon/index.css +3 -3
- package/components/index.js +2 -1
- package/components/select/component.js +6 -5
- package/components/select/index.css +6 -6
- package/components/select/index.js +6 -5
- package/components/select-field/component.d.ts +8 -0
- package/components/select-field/component.js +36 -9
- package/components/select-field/index.css +9 -9
- package/components/select-field/index.d.ts +1 -1
- package/components/select-field/index.js +2 -1
- package/cssm/component.js +5 -4
- package/cssm/components/index.js +2 -1
- package/cssm/components/select/component.js +6 -5
- package/cssm/components/select/index.js +7 -6
- package/cssm/components/select-field/component.d.ts +8 -0
- package/cssm/components/select-field/component.js +35 -10
- package/cssm/components/select-field/index.d.ts +1 -1
- package/cssm/components/select-field/index.js +2 -1
- package/cssm/index.js +9 -8
- package/cssm/utils/preparePasteData.d.ts +1 -1
- package/cssm/utils/preparePasteData.js +7 -3
- package/esm/component.js +5 -4
- package/esm/components/flag-icon/component.js +1 -1
- package/esm/components/flag-icon/index.css +3 -3
- package/esm/components/index.js +2 -1
- package/esm/components/select/component.js +5 -4
- package/esm/components/select/index.css +6 -6
- package/esm/components/select/index.js +6 -5
- package/esm/components/select-field/component.d.ts +8 -0
- package/esm/components/select-field/component.js +31 -7
- package/esm/components/select-field/index.css +9 -9
- package/esm/components/select-field/index.d.ts +1 -1
- package/esm/components/select-field/index.js +2 -1
- package/esm/index.css +5 -5
- package/esm/index.js +7 -6
- package/esm/{libphonenumber-js.min-cb857554.d.ts → libphonenumber-js.min-1e9caa43.d.ts} +0 -0
- package/esm/{libphonenumber-js.min-cb857554.js → libphonenumber-js.min-1e9caa43.js} +0 -0
- package/esm/utils/preparePasteData.d.ts +1 -1
- package/esm/utils/preparePasteData.js +7 -3
- package/index.css +5 -5
- package/index.js +7 -6
- package/{libphonenumber-js.min-4def49d7.d.ts → libphonenumber-js.min-2b3f9314.d.ts} +0 -0
- package/{libphonenumber-js.min-4def49d7.js → libphonenumber-js.min-2b3f9314.js} +0 -0
- package/modern/component.js +3 -3
- package/modern/components/flag-icon/component.js +1 -1
- package/modern/components/flag-icon/index.css +3 -3
- package/modern/components/select/component.js +1 -1
- package/modern/components/select/index.css +6 -6
- package/modern/components/select-field/component.js +1 -1
- package/modern/components/select-field/index.css +9 -9
- package/modern/index.css +5 -5
- package/modern/{libphonenumber-js.min-cb857554.d.ts → libphonenumber-js.min-1e9caa43.d.ts} +0 -0
- package/modern/{libphonenumber-js.min-cb857554.js → libphonenumber-js.min-1e9caa43.js} +0 -0
- package/modern/utils/preparePasteData.d.ts +1 -1
- package/modern/utils/preparePasteData.js +7 -3
- package/package.json +6 -5
- package/utils/preparePasteData.d.ts +1 -1
- package/utils/preparePasteData.js +7 -3
- package/component-1f1cb3eb.d.ts +0 -41
- package/component-1f1cb3eb.js +0 -80
- package/cssm/component-01884de0.d.ts +0 -41
- package/cssm/component-01884de0.js +0 -79
- package/esm/component-4980ce1c.d.ts +0 -41
- package/esm/component-4980ce1c.js +0 -69
package/component.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var tslib = require('tslib');
|
|
4
4
|
var React = require('react');
|
|
5
5
|
var cn = require('classnames');
|
|
6
6
|
var coreComponentsInputAutocomplete = require('@alfalab/core-components-input-autocomplete');
|
|
@@ -16,6 +16,7 @@ var components_select_component = require('./components/select/component.js');
|
|
|
16
16
|
var useCaretAvoidCountryCode = require('./useCaretAvoidCountryCode.js');
|
|
17
17
|
require('./components/flag-icon/flagSprite.js');
|
|
18
18
|
require('@alfalab/core-components-select');
|
|
19
|
+
require('./components/select-field/component.js');
|
|
19
20
|
|
|
20
21
|
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
21
22
|
|
|
@@ -23,7 +24,7 @@ var React__default = /*#__PURE__*/_interopDefaultCompat(React);
|
|
|
23
24
|
var cn__default = /*#__PURE__*/_interopDefaultCompat(cn);
|
|
24
25
|
var WorldMagnifierMIcon__default = /*#__PURE__*/_interopDefaultCompat(WorldMagnifierMIcon);
|
|
25
26
|
|
|
26
|
-
var styles = {"addons":"intl-phone-
|
|
27
|
+
var styles = {"addons":"intl-phone-input__addons_1acfj","l":"intl-phone-input__l_1acfj","xl":"intl-phone-input__xl_1acfj","flagIconWrapper":"intl-phone-input__flagIconWrapper_1acfj","emptyCountryIcon":"intl-phone-input__emptyCountryIcon_1acfj"};
|
|
27
28
|
require('./index.css')
|
|
28
29
|
|
|
29
30
|
var countriesHash = utils.getCountriesHash();
|
|
@@ -32,7 +33,7 @@ var MASK_SYMBOLS = [' ', '-', '(', ')'];
|
|
|
32
33
|
var MAX_PHONE_LEN = 15;
|
|
33
34
|
var DEFAULT_MAX_PHONE_LEN_BY_COUNTRY = { RU: 11 };
|
|
34
35
|
var IntlPhoneInput = React.forwardRef(function (_a, ref) {
|
|
35
|
-
var _b = _a.disabled, disabled = _b === void 0 ? false : _b, _c = _a.readOnly, readOnly = _c === void 0 ? false : _c, _d = _a.hideCountrySelect, hideCountrySelect = _d === void 0 ? false : _d, _e = _a.canBeEmptyCountry, canBeEmptyCountry = _e === void 0 ? false : _e, _f = _a.ruNumberPriority, ruNumberPriority = _f === void 0 ? false : _f, _g = _a.clear, clear = _g === void 0 ? false : _g, _h = _a.size, size = _h === void 0 ? 'm' : _h, _j = _a.colors, colors = _j === void 0 ? 'default' : _j, _k = _a.options, options = _k === void 0 ? [] : _k, _l = _a.countries, countries = _l === void 0 ? utils.getCountries() : _l, _m = _a.clearableCountryCode, clearableCountryCode = _m === void 0 ? true : _m, className = _a.className, value = _a.value, onChange = _a.onChange, onCountryChange = _a.onCountryChange, _o = _a.defaultCountryIso2, defaultCountryIso2 = _o === void 0 ? 'ru' : _o, preventFlip = _a.preventFlip, inputProps = _a.inputProps, _p = _a.maxPhoneLen, maxPhoneLen = _p === void 0 ? DEFAULT_MAX_PHONE_LEN_BY_COUNTRY : _p, restProps =
|
|
36
|
+
var _b = _a.disabled, disabled = _b === void 0 ? false : _b, _c = _a.readOnly, readOnly = _c === void 0 ? false : _c, _d = _a.hideCountrySelect, hideCountrySelect = _d === void 0 ? false : _d, _e = _a.canBeEmptyCountry, canBeEmptyCountry = _e === void 0 ? false : _e, _f = _a.ruNumberPriority, ruNumberPriority = _f === void 0 ? false : _f, _g = _a.clear, clear = _g === void 0 ? false : _g, _h = _a.size, size = _h === void 0 ? 'm' : _h, _j = _a.colors, colors = _j === void 0 ? 'default' : _j, _k = _a.options, options = _k === void 0 ? [] : _k, _l = _a.countries, countries = _l === void 0 ? utils.getCountries() : _l, _m = _a.clearableCountryCode, clearableCountryCode = _m === void 0 ? true : _m, className = _a.className, value = _a.value, onChange = _a.onChange, onCountryChange = _a.onCountryChange, _o = _a.defaultCountryIso2, defaultCountryIso2 = _o === void 0 ? 'ru' : _o, preventFlip = _a.preventFlip, inputProps = _a.inputProps, _p = _a.maxPhoneLen, maxPhoneLen = _p === void 0 ? DEFAULT_MAX_PHONE_LEN_BY_COUNTRY : _p, restProps = tslib.__rest(_a, ["disabled", "readOnly", "hideCountrySelect", "canBeEmptyCountry", "ruNumberPriority", "clear", "size", "colors", "options", "countries", "clearableCountryCode", "className", "value", "onChange", "onCountryChange", "defaultCountryIso2", "preventFlip", "inputProps", "maxPhoneLen"]);
|
|
36
37
|
var _q = React.useState(defaultCountryIso2.toLowerCase()), countryIso2 = _q[0], setCountryIso2 = _q[1];
|
|
37
38
|
var inputRef = React.useRef(null);
|
|
38
39
|
var _r = React.useState(null), inputWrapperRef = _r[0], setInputWrapperRef = _r[1];
|
|
@@ -256,7 +257,7 @@ var IntlPhoneInput = React.forwardRef(function (_a, ref) {
|
|
|
256
257
|
return;
|
|
257
258
|
}
|
|
258
259
|
var _b = inputRef.current, selectionStart = _b.selectionStart, selectionEnd = _b.selectionEnd;
|
|
259
|
-
var preparedNumber = utils_preparePasteData.preparePasteData(value, text, selectionStart || 0, selectionEnd || 0);
|
|
260
|
+
var preparedNumber = utils_preparePasteData.preparePasteData(value, text, selectionStart || 0, selectionEnd || 0, ruNumberPriority && countryIso2 === 'ru');
|
|
260
261
|
var targetCountry = getCountryByNumber(preparedNumber);
|
|
261
262
|
var maxPhoneLength = (targetCountry && (maxPhoneLen === null || maxPhoneLen === void 0 ? void 0 : maxPhoneLen[targetCountry.iso2.toUpperCase()])) || MAX_PHONE_LEN;
|
|
262
263
|
var resultNumber = preparedNumber.substring(0, maxPhoneLength + 1);
|
|
@@ -275,7 +276,7 @@ var IntlPhoneInput = React.forwardRef(function (_a, ref) {
|
|
|
275
276
|
if (phoneLibUtils.current)
|
|
276
277
|
return;
|
|
277
278
|
Promise.resolve().then(function () { return require(
|
|
278
|
-
/* webpackChunkName: "libphonenumber" */ './libphonenumber-js.min-
|
|
279
|
+
/* webpackChunkName: "libphonenumber" */ './libphonenumber-js.min-2b3f9314.js'); })
|
|
279
280
|
.then(function (utils) {
|
|
280
281
|
phoneLibUtils.current = utils.AsYouType;
|
|
281
282
|
if (canBeEmptyCountry) {
|
|
@@ -306,7 +307,7 @@ var IntlPhoneInput = React.forwardRef(function (_a, ref) {
|
|
|
306
307
|
/* eslint-disable-next-line react-hooks/exhaustive-deps */
|
|
307
308
|
}, [value, canBeEmptyCountry, countryIso2, defaultCountryIso2]);
|
|
308
309
|
useCaretAvoidCountryCode.useCaretAvoidCountryCode({ inputRef: inputRef, countryCodeLength: countryCodeLength, clearableCountryCode: clearableCountryCode });
|
|
309
|
-
return (React__default.default.createElement(coreComponentsInputAutocomplete.InputAutocomplete,
|
|
310
|
+
return (React__default.default.createElement(coreComponentsInputAutocomplete.InputAutocomplete, tslib.__assign({}, restProps, { ref: ref, inputProps: tslib.__assign(tslib.__assign({ clear: clear && !isEmptyValue, onClear: handleClear }, inputProps), { ref: inputRef, wrapperRef: setInputWrapperRef, type: 'tel', colors: colors, className: cn__default.default(className, styles[size]), addonsClassName: styles.addons, onKeyDown: handleKeyDown, onPaste: handlePaste, leftAddons: hideCountrySelect ? (React__default.default.createElement("span", { className: styles.flagIconWrapper }, countryIso2 ? (React__default.default.createElement(components_flagIcon_component.FlagIcon, { country: countryIso2 })) : (React__default.default.createElement(WorldMagnifierMIcon__default.default, { className: styles.emptyCountryIcon })))) : (countries.length > 1 && (React__default.default.createElement(components_select_component.CountriesSelect, { dataTestId: 'countries-select', disabled: disabled || readOnly, size: size, selected: countryIso2, countries: countries, onChange: handleSelectChange, fieldWidth: inputWrapperRef && inputWrapperRef.getBoundingClientRect().width, preventFlip: preventFlip }))) }), optionsListWidth: 'field', closeOnSelect: true, onInput: handleInputChange, onChange: handleChange, options: options, disabled: disabled, readOnly: readOnly, size: size, className: className, value: value })));
|
|
310
311
|
});
|
|
311
312
|
|
|
312
313
|
exports.IntlPhoneInput = IntlPhoneInput;
|
|
@@ -9,7 +9,7 @@ function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'defau
|
|
|
9
9
|
var React__default = /*#__PURE__*/_interopDefaultCompat(React);
|
|
10
10
|
var cn__default = /*#__PURE__*/_interopDefaultCompat(cn);
|
|
11
11
|
|
|
12
|
-
var styles = {"flagIcon":"intl-phone-
|
|
12
|
+
var styles = {"flagIcon":"intl-phone-input__flagIcon_1ejpq","flagPlaceholder":"intl-phone-input__flagPlaceholder_1ejpq"};
|
|
13
13
|
require('./index.css')
|
|
14
14
|
|
|
15
15
|
/**
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* hash:
|
|
1
|
+
/* hash: zfmlt */
|
|
2
2
|
:root {
|
|
3
3
|
} /* deprecated */ :root {
|
|
4
4
|
--color-light-specialbg-tertiary-transparent: rgba(11, 31, 53, 0.1);
|
|
@@ -17,10 +17,10 @@
|
|
|
17
17
|
--gap-3xs: 2px;
|
|
18
18
|
} :root {
|
|
19
19
|
} :root {
|
|
20
|
-
} .intl-phone-
|
|
20
|
+
} .intl-phone-input__flagIcon_1ejpq {
|
|
21
21
|
max-width: 24px;
|
|
22
22
|
max-height: 24px;
|
|
23
|
-
} .intl-phone-
|
|
23
|
+
} .intl-phone-input__flagPlaceholder_1ejpq {
|
|
24
24
|
width: 24px;
|
|
25
25
|
height: 16px;
|
|
26
26
|
max-height: 16px;
|
package/components/index.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var components_selectField_component = require('
|
|
3
|
+
var components_selectField_component = require('./select-field/component.js');
|
|
4
4
|
var components_flagIcon_component = require('./flag-icon/component.js');
|
|
5
5
|
var components_select_component = require('./select/component.js');
|
|
6
|
+
require('tslib');
|
|
6
7
|
require('react');
|
|
7
8
|
require('react-merge-refs');
|
|
8
9
|
require('classnames');
|
|
@@ -1,20 +1,21 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var tslib = require('tslib');
|
|
4
4
|
var React = require('react');
|
|
5
5
|
var coreComponentsSelect = require('@alfalab/core-components-select');
|
|
6
6
|
var components_flagIcon_component = require('../flag-icon/component.js');
|
|
7
|
-
require('
|
|
7
|
+
var components_selectField_component = require('../select-field/component.js');
|
|
8
8
|
require('classnames');
|
|
9
|
+
require('../flag-icon/flagSprite.js');
|
|
10
|
+
require('react-merge-refs');
|
|
9
11
|
require('@alfalab/hooks');
|
|
10
12
|
require('@alfalab/icons-glyph/WorldMagnifierMIcon');
|
|
11
|
-
require('../flag-icon/flagSprite.js');
|
|
12
13
|
|
|
13
14
|
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
14
15
|
|
|
15
16
|
var React__default = /*#__PURE__*/_interopDefaultCompat(React);
|
|
16
17
|
|
|
17
|
-
var styles = {"component":"intl-phone-
|
|
18
|
+
var styles = {"component":"intl-phone-input__component_1i24a","option":"intl-phone-input__option_1i24a","flag":"intl-phone-input__flag_1i24a","countryName":"intl-phone-input__countryName_1i24a","dialCode":"intl-phone-input__dialCode_1i24a"};
|
|
18
19
|
require('./index.css')
|
|
19
20
|
|
|
20
21
|
var CountriesSelect = function (_a) {
|
|
@@ -36,7 +37,7 @@ var CountriesSelect = function (_a) {
|
|
|
36
37
|
});
|
|
37
38
|
}, [countries]);
|
|
38
39
|
var renderOptionsList = React.useCallback(function (props) { return (React__default.default.createElement("div", { style: { width: fieldWidth || 0 } },
|
|
39
|
-
React__default.default.createElement(coreComponentsSelect.VirtualOptionsList,
|
|
40
|
+
React__default.default.createElement(coreComponentsSelect.VirtualOptionsList, tslib.__assign({}, props)))); }, [fieldWidth]);
|
|
40
41
|
return (React__default.default.createElement("div", { className: styles.component, onClick: function (event) { return event.stopPropagation(); } },
|
|
41
42
|
React__default.default.createElement(coreComponentsSelect.Select, { dataTestId: dataTestId, disabled: disabled, size: size, options: options, selected: selected || components_selectField_component.EMPTY_COUNTRY_SELECT_FIELD, onChange: onChange, Field: components_selectField_component.SelectField, OptionsList: renderOptionsList, preventFlip: preventFlip })));
|
|
42
43
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* hash:
|
|
1
|
+
/* hash: djruy */
|
|
2
2
|
:root {
|
|
3
3
|
} /* deprecated */ :root {
|
|
4
4
|
--color-light-text-secondary: rgba(11, 31, 53, 0.7);
|
|
@@ -17,19 +17,19 @@
|
|
|
17
17
|
} :root {
|
|
18
18
|
} :root {
|
|
19
19
|
--text-secondary-color: var(--color-light-text-secondary);
|
|
20
|
-
} .intl-phone-
|
|
20
|
+
} .intl-phone-input__component_1i24a {
|
|
21
21
|
position: static;
|
|
22
22
|
display: flex;
|
|
23
23
|
min-width: initial;
|
|
24
24
|
height: 100%;
|
|
25
|
-
} .intl-phone-
|
|
25
|
+
} .intl-phone-input__option_1i24a {
|
|
26
26
|
display: flex;
|
|
27
27
|
align-items: flex-start;
|
|
28
|
-
} .intl-phone-
|
|
28
|
+
} .intl-phone-input__flag_1i24a {
|
|
29
29
|
flex-shrink: 0;
|
|
30
30
|
margin-right: var(--gap-xs);
|
|
31
|
-
} .intl-phone-
|
|
31
|
+
} .intl-phone-input__countryName_1i24a {
|
|
32
32
|
margin-right: var(--gap-xs);
|
|
33
|
-
} .intl-phone-
|
|
33
|
+
} .intl-phone-input__dialCode_1i24a {
|
|
34
34
|
color: var(--text-secondary-color);
|
|
35
35
|
}
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var components_select_component = require('./component.js');
|
|
4
|
-
require('
|
|
4
|
+
require('tslib');
|
|
5
5
|
require('react');
|
|
6
|
-
require('
|
|
6
|
+
require('@alfalab/core-components-select');
|
|
7
|
+
require('../flag-icon/component.js');
|
|
7
8
|
require('classnames');
|
|
9
|
+
require('../flag-icon/flagSprite.js');
|
|
10
|
+
require('../select-field/component.js');
|
|
11
|
+
require('react-merge-refs');
|
|
8
12
|
require('@alfalab/hooks');
|
|
9
13
|
require('@alfalab/icons-glyph/WorldMagnifierMIcon');
|
|
10
|
-
require('../flag-icon/component.js');
|
|
11
|
-
require('../flag-icon/flagSprite.js');
|
|
12
|
-
require('@alfalab/core-components-select');
|
|
13
14
|
|
|
14
15
|
|
|
15
16
|
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { FieldProps } from "@alfalab/core-components-select";
|
|
3
|
+
declare const EMPTY_COUNTRY_SELECT_FIELD: {
|
|
4
|
+
value: string;
|
|
5
|
+
key: string;
|
|
6
|
+
};
|
|
7
|
+
declare const SelectField: FC<FieldProps>;
|
|
8
|
+
export { EMPTY_COUNTRY_SELECT_FIELD, SelectField };
|
|
@@ -1,15 +1,42 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
require('react');
|
|
5
|
-
require('react-merge-refs');
|
|
6
|
-
require('classnames');
|
|
7
|
-
require('@alfalab/hooks');
|
|
8
|
-
require('@alfalab/icons-glyph/WorldMagnifierMIcon');
|
|
9
|
-
require('../flag-icon/component.js');
|
|
3
|
+
var tslib = require('tslib');
|
|
4
|
+
var React = require('react');
|
|
5
|
+
var mergeRefs = require('react-merge-refs');
|
|
6
|
+
var cn = require('classnames');
|
|
7
|
+
var hooks = require('@alfalab/hooks');
|
|
8
|
+
var WorldMagnifierMIcon = require('@alfalab/icons-glyph/WorldMagnifierMIcon');
|
|
9
|
+
var components_flagIcon_component = require('../flag-icon/component.js');
|
|
10
10
|
require('../flag-icon/flagSprite.js');
|
|
11
11
|
|
|
12
|
+
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
12
13
|
|
|
14
|
+
var React__default = /*#__PURE__*/_interopDefaultCompat(React);
|
|
15
|
+
var mergeRefs__default = /*#__PURE__*/_interopDefaultCompat(mergeRefs);
|
|
16
|
+
var cn__default = /*#__PURE__*/_interopDefaultCompat(cn);
|
|
17
|
+
var WorldMagnifierMIcon__default = /*#__PURE__*/_interopDefaultCompat(WorldMagnifierMIcon);
|
|
13
18
|
|
|
14
|
-
|
|
15
|
-
|
|
19
|
+
var styles = {"component":"intl-phone-input__component_11kms","flagIconContainer":"intl-phone-input__flagIconContainer_11kms","emptyCountryIcon":"intl-phone-input__emptyCountryIcon_11kms","disabled":"intl-phone-input__disabled_11kms","inner":"intl-phone-input__inner_11kms","l":"intl-phone-input__l_11kms","xl":"intl-phone-input__xl_11kms","focusVisible":"intl-phone-input__focusVisible_11kms"};
|
|
20
|
+
require('./index.css')
|
|
21
|
+
|
|
22
|
+
var EMPTY_COUNTRY_SELECT_FIELD = {
|
|
23
|
+
value: 'EMPTY_COUNTRY_SELECT_VALUE',
|
|
24
|
+
key: 'EMPTY_COUNTRY_SELECT_KEY',
|
|
25
|
+
};
|
|
26
|
+
var SelectField = function (_a) {
|
|
27
|
+
var _b;
|
|
28
|
+
var selected = _a.selected, Arrow = _a.Arrow, size = _a.size, disabled = _a.disabled, _c = _a.innerProps, innerProps = _c === void 0 ? {} : _c;
|
|
29
|
+
var wrapperRef = React.useRef(null);
|
|
30
|
+
var focusVisible = hooks.useFocus(wrapperRef, 'keyboard')[0];
|
|
31
|
+
var ref = innerProps.ref ? mergeRefs__default.default([innerProps.ref, wrapperRef]) : wrapperRef;
|
|
32
|
+
return (React__default.default.createElement("div", { ref: ref, className: cn__default.default(styles.component, size && styles[size], (_b = {},
|
|
33
|
+
_b[styles.focusVisible] = focusVisible,
|
|
34
|
+
_b[styles.disabled] = disabled,
|
|
35
|
+
_b)) },
|
|
36
|
+
React__default.default.createElement("div", tslib.__assign({}, innerProps, { className: styles.inner }),
|
|
37
|
+
React__default.default.createElement("span", { className: styles.flagIconContainer }, !selected || selected === EMPTY_COUNTRY_SELECT_FIELD ? (React__default.default.createElement(WorldMagnifierMIcon__default.default, { className: styles.emptyCountryIcon })) : (React__default.default.createElement(components_flagIcon_component.FlagIcon, { country: selected.value }))),
|
|
38
|
+
Arrow)));
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
exports.EMPTY_COUNTRY_SELECT_FIELD = EMPTY_COUNTRY_SELECT_FIELD;
|
|
42
|
+
exports.SelectField = SelectField;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* hash:
|
|
1
|
+
/* hash: dzeop */
|
|
2
2
|
:root {
|
|
3
3
|
} /* deprecated */ :root {
|
|
4
4
|
--color-light-border-link: #007aff;
|
|
@@ -21,33 +21,33 @@
|
|
|
21
21
|
} :root {
|
|
22
22
|
--focus-color: var(--color-light-border-link);
|
|
23
23
|
--disabled-cursor: not-allowed;
|
|
24
|
-
} .intl-phone-
|
|
24
|
+
} .intl-phone-input__component_11kms {
|
|
25
25
|
height: 100%;
|
|
26
26
|
cursor: pointer;
|
|
27
27
|
outline: none;
|
|
28
28
|
position: relative;
|
|
29
|
-
} .intl-phone-
|
|
29
|
+
} .intl-phone-input__flagIconContainer_11kms {
|
|
30
30
|
display: flex;
|
|
31
31
|
justify-content: center;
|
|
32
32
|
align-items: center;
|
|
33
33
|
width: 24px;
|
|
34
34
|
height: 24px;
|
|
35
35
|
margin-right: var(--gap-2xs);
|
|
36
|
-
} .intl-phone-
|
|
36
|
+
} .intl-phone-input__emptyCountryIcon_11kms {
|
|
37
37
|
color: var(--color-light-graphic-secondary);
|
|
38
|
-
} .intl-phone-
|
|
38
|
+
} .intl-phone-input__disabled_11kms {
|
|
39
39
|
cursor: var(--disabled-cursor);
|
|
40
|
-
} .intl-phone-
|
|
40
|
+
} .intl-phone-input__inner_11kms {
|
|
41
41
|
position: relative;
|
|
42
42
|
display: flex;
|
|
43
43
|
align-items: center;
|
|
44
44
|
height: 100%;
|
|
45
45
|
padding-left: var(--gap-s);
|
|
46
46
|
outline: none;
|
|
47
|
-
} .intl-phone-
|
|
48
|
-
.intl-phone-
|
|
47
|
+
} .intl-phone-input__l_11kms .intl-phone-input__inner_11kms,
|
|
48
|
+
.intl-phone-input__xl_11kms .intl-phone-input__inner_11kms {
|
|
49
49
|
padding-left: var(--gap-m);
|
|
50
|
-
} .intl-phone-
|
|
50
|
+
} .intl-phone-input__focusVisible_11kms {
|
|
51
51
|
outline: 2px solid var(--focus-color);
|
|
52
52
|
outline-offset: 2px;
|
|
53
53
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from "
|
|
1
|
+
export * from "./component";
|
package/cssm/component.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var tslib = require('tslib');
|
|
4
4
|
var React = require('react');
|
|
5
5
|
var cn = require('classnames');
|
|
6
6
|
var coreComponentsInputAutocomplete = require('@alfalab/core-components-input-autocomplete/cssm');
|
|
@@ -19,6 +19,7 @@ var styles = require('./index.module.css');
|
|
|
19
19
|
require('./components/flag-icon/flagSprite.js');
|
|
20
20
|
require('./components/flag-icon/index.module.css');
|
|
21
21
|
require('@alfalab/core-components-select/cssm');
|
|
22
|
+
require('./components/select-field/component.js');
|
|
22
23
|
require('./components/select/index.module.css');
|
|
23
24
|
|
|
24
25
|
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
@@ -34,7 +35,7 @@ var MASK_SYMBOLS = [' ', '-', '(', ')'];
|
|
|
34
35
|
var MAX_PHONE_LEN = 15;
|
|
35
36
|
var DEFAULT_MAX_PHONE_LEN_BY_COUNTRY = { RU: 11 };
|
|
36
37
|
var IntlPhoneInput = React.forwardRef(function (_a, ref) {
|
|
37
|
-
var _b = _a.disabled, disabled = _b === void 0 ? false : _b, _c = _a.readOnly, readOnly = _c === void 0 ? false : _c, _d = _a.hideCountrySelect, hideCountrySelect = _d === void 0 ? false : _d, _e = _a.canBeEmptyCountry, canBeEmptyCountry = _e === void 0 ? false : _e, _f = _a.ruNumberPriority, ruNumberPriority = _f === void 0 ? false : _f, _g = _a.clear, clear = _g === void 0 ? false : _g, _h = _a.size, size = _h === void 0 ? 'm' : _h, _j = _a.colors, colors = _j === void 0 ? 'default' : _j, _k = _a.options, options = _k === void 0 ? [] : _k, _l = _a.countries, countries = _l === void 0 ? utils.getCountries() : _l, _m = _a.clearableCountryCode, clearableCountryCode = _m === void 0 ? true : _m, className = _a.className, value = _a.value, onChange = _a.onChange, onCountryChange = _a.onCountryChange, _o = _a.defaultCountryIso2, defaultCountryIso2 = _o === void 0 ? 'ru' : _o, preventFlip = _a.preventFlip, inputProps = _a.inputProps, _p = _a.maxPhoneLen, maxPhoneLen = _p === void 0 ? DEFAULT_MAX_PHONE_LEN_BY_COUNTRY : _p, restProps =
|
|
38
|
+
var _b = _a.disabled, disabled = _b === void 0 ? false : _b, _c = _a.readOnly, readOnly = _c === void 0 ? false : _c, _d = _a.hideCountrySelect, hideCountrySelect = _d === void 0 ? false : _d, _e = _a.canBeEmptyCountry, canBeEmptyCountry = _e === void 0 ? false : _e, _f = _a.ruNumberPriority, ruNumberPriority = _f === void 0 ? false : _f, _g = _a.clear, clear = _g === void 0 ? false : _g, _h = _a.size, size = _h === void 0 ? 'm' : _h, _j = _a.colors, colors = _j === void 0 ? 'default' : _j, _k = _a.options, options = _k === void 0 ? [] : _k, _l = _a.countries, countries = _l === void 0 ? utils.getCountries() : _l, _m = _a.clearableCountryCode, clearableCountryCode = _m === void 0 ? true : _m, className = _a.className, value = _a.value, onChange = _a.onChange, onCountryChange = _a.onCountryChange, _o = _a.defaultCountryIso2, defaultCountryIso2 = _o === void 0 ? 'ru' : _o, preventFlip = _a.preventFlip, inputProps = _a.inputProps, _p = _a.maxPhoneLen, maxPhoneLen = _p === void 0 ? DEFAULT_MAX_PHONE_LEN_BY_COUNTRY : _p, restProps = tslib.__rest(_a, ["disabled", "readOnly", "hideCountrySelect", "canBeEmptyCountry", "ruNumberPriority", "clear", "size", "colors", "options", "countries", "clearableCountryCode", "className", "value", "onChange", "onCountryChange", "defaultCountryIso2", "preventFlip", "inputProps", "maxPhoneLen"]);
|
|
38
39
|
var _q = React.useState(defaultCountryIso2.toLowerCase()), countryIso2 = _q[0], setCountryIso2 = _q[1];
|
|
39
40
|
var inputRef = React.useRef(null);
|
|
40
41
|
var _r = React.useState(null), inputWrapperRef = _r[0], setInputWrapperRef = _r[1];
|
|
@@ -258,7 +259,7 @@ var IntlPhoneInput = React.forwardRef(function (_a, ref) {
|
|
|
258
259
|
return;
|
|
259
260
|
}
|
|
260
261
|
var _b = inputRef.current, selectionStart = _b.selectionStart, selectionEnd = _b.selectionEnd;
|
|
261
|
-
var preparedNumber = utils_preparePasteData.preparePasteData(value, text, selectionStart || 0, selectionEnd || 0);
|
|
262
|
+
var preparedNumber = utils_preparePasteData.preparePasteData(value, text, selectionStart || 0, selectionEnd || 0, ruNumberPriority && countryIso2 === 'ru');
|
|
262
263
|
var targetCountry = getCountryByNumber(preparedNumber);
|
|
263
264
|
var maxPhoneLength = (targetCountry && (maxPhoneLen === null || maxPhoneLen === void 0 ? void 0 : maxPhoneLen[targetCountry.iso2.toUpperCase()])) || MAX_PHONE_LEN;
|
|
264
265
|
var resultNumber = preparedNumber.substring(0, maxPhoneLength + 1);
|
|
@@ -308,7 +309,7 @@ var IntlPhoneInput = React.forwardRef(function (_a, ref) {
|
|
|
308
309
|
/* eslint-disable-next-line react-hooks/exhaustive-deps */
|
|
309
310
|
}, [value, canBeEmptyCountry, countryIso2, defaultCountryIso2]);
|
|
310
311
|
useCaretAvoidCountryCode.useCaretAvoidCountryCode({ inputRef: inputRef, countryCodeLength: countryCodeLength, clearableCountryCode: clearableCountryCode });
|
|
311
|
-
return (React__default.default.createElement(coreComponentsInputAutocomplete.InputAutocomplete,
|
|
312
|
+
return (React__default.default.createElement(coreComponentsInputAutocomplete.InputAutocomplete, tslib.__assign({}, restProps, { ref: ref, inputProps: tslib.__assign(tslib.__assign({ clear: clear && !isEmptyValue, onClear: handleClear }, inputProps), { ref: inputRef, wrapperRef: setInputWrapperRef, type: 'tel', colors: colors, className: cn__default.default(className, styles__default.default[size]), addonsClassName: styles__default.default.addons, onKeyDown: handleKeyDown, onPaste: handlePaste, leftAddons: hideCountrySelect ? (React__default.default.createElement("span", { className: styles__default.default.flagIconWrapper }, countryIso2 ? (React__default.default.createElement(components_flagIcon_component.FlagIcon, { country: countryIso2 })) : (React__default.default.createElement(WorldMagnifierMIcon__default.default, { className: styles__default.default.emptyCountryIcon })))) : (countries.length > 1 && (React__default.default.createElement(components_select_component.CountriesSelect, { dataTestId: 'countries-select', disabled: disabled || readOnly, size: size, selected: countryIso2, countries: countries, onChange: handleSelectChange, fieldWidth: inputWrapperRef && inputWrapperRef.getBoundingClientRect().width, preventFlip: preventFlip }))) }), optionsListWidth: 'field', closeOnSelect: true, onInput: handleInputChange, onChange: handleChange, options: options, disabled: disabled, readOnly: readOnly, size: size, className: className, value: value })));
|
|
312
313
|
});
|
|
313
314
|
|
|
314
315
|
exports.IntlPhoneInput = IntlPhoneInput;
|
package/cssm/components/index.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var components_selectField_component = require('
|
|
3
|
+
var components_selectField_component = require('./select-field/component.js');
|
|
4
4
|
var components_flagIcon_component = require('./flag-icon/component.js');
|
|
5
5
|
var components_select_component = require('./select/component.js');
|
|
6
|
+
require('tslib');
|
|
6
7
|
require('react');
|
|
7
8
|
require('react-merge-refs');
|
|
8
9
|
require('classnames');
|
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var tslib = require('tslib');
|
|
4
4
|
var React = require('react');
|
|
5
5
|
var coreComponentsSelect = require('@alfalab/core-components-select/cssm');
|
|
6
6
|
var components_flagIcon_component = require('../flag-icon/component.js');
|
|
7
|
+
var components_selectField_component = require('../select-field/component.js');
|
|
7
8
|
var styles = require('./index.module.css');
|
|
8
|
-
require('react-merge-refs');
|
|
9
9
|
require('classnames');
|
|
10
|
+
require('../flag-icon/flagSprite.js');
|
|
11
|
+
require('../flag-icon/index.module.css');
|
|
12
|
+
require('react-merge-refs');
|
|
10
13
|
require('@alfalab/hooks');
|
|
11
14
|
require('@alfalab/icons-glyph/WorldMagnifierMIcon');
|
|
12
15
|
require('../select-field/index.module.css');
|
|
13
|
-
require('../flag-icon/flagSprite.js');
|
|
14
|
-
require('../flag-icon/index.module.css');
|
|
15
16
|
|
|
16
17
|
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
17
18
|
|
|
@@ -37,7 +38,7 @@ var CountriesSelect = function (_a) {
|
|
|
37
38
|
});
|
|
38
39
|
}, [countries]);
|
|
39
40
|
var renderOptionsList = React.useCallback(function (props) { return (React__default.default.createElement("div", { style: { width: fieldWidth || 0 } },
|
|
40
|
-
React__default.default.createElement(coreComponentsSelect.VirtualOptionsList,
|
|
41
|
+
React__default.default.createElement(coreComponentsSelect.VirtualOptionsList, tslib.__assign({}, props)))); }, [fieldWidth]);
|
|
41
42
|
return (React__default.default.createElement("div", { className: styles__default.default.component, onClick: function (event) { return event.stopPropagation(); } },
|
|
42
43
|
React__default.default.createElement(coreComponentsSelect.Select, { dataTestId: dataTestId, disabled: disabled, size: size, options: options, selected: selected || components_selectField_component.EMPTY_COUNTRY_SELECT_FIELD, onChange: onChange, Field: components_selectField_component.SelectField, OptionsList: renderOptionsList, preventFlip: preventFlip })));
|
|
43
44
|
};
|
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var components_select_component = require('./component.js');
|
|
4
|
-
require('
|
|
4
|
+
require('tslib');
|
|
5
5
|
require('react');
|
|
6
|
-
require('
|
|
7
|
-
require('classnames');
|
|
8
|
-
require('@alfalab/hooks');
|
|
9
|
-
require('@alfalab/icons-glyph/WorldMagnifierMIcon');
|
|
6
|
+
require('@alfalab/core-components-select/cssm');
|
|
10
7
|
require('../flag-icon/component.js');
|
|
8
|
+
require('classnames');
|
|
11
9
|
require('../flag-icon/flagSprite.js');
|
|
12
10
|
require('../flag-icon/index.module.css');
|
|
11
|
+
require('../select-field/component.js');
|
|
12
|
+
require('react-merge-refs');
|
|
13
|
+
require('@alfalab/hooks');
|
|
14
|
+
require('@alfalab/icons-glyph/WorldMagnifierMIcon');
|
|
13
15
|
require('../select-field/index.module.css');
|
|
14
|
-
require('@alfalab/core-components-select/cssm');
|
|
15
16
|
require('./index.module.css');
|
|
16
17
|
|
|
17
18
|
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { FieldProps } from "@alfalab/core-components-select";
|
|
3
|
+
declare const EMPTY_COUNTRY_SELECT_FIELD: {
|
|
4
|
+
value: string;
|
|
5
|
+
key: string;
|
|
6
|
+
};
|
|
7
|
+
declare const SelectField: FC<FieldProps>;
|
|
8
|
+
export { EMPTY_COUNTRY_SELECT_FIELD, SelectField };
|
|
@@ -1,17 +1,42 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
require('react');
|
|
5
|
-
require('react-merge-refs');
|
|
6
|
-
require('classnames');
|
|
7
|
-
require('@alfalab/hooks');
|
|
8
|
-
require('@alfalab/icons-glyph/WorldMagnifierMIcon');
|
|
9
|
-
require('../flag-icon/component.js');
|
|
10
|
-
require('./index.module.css');
|
|
3
|
+
var tslib = require('tslib');
|
|
4
|
+
var React = require('react');
|
|
5
|
+
var mergeRefs = require('react-merge-refs');
|
|
6
|
+
var cn = require('classnames');
|
|
7
|
+
var hooks = require('@alfalab/hooks');
|
|
8
|
+
var WorldMagnifierMIcon = require('@alfalab/icons-glyph/WorldMagnifierMIcon');
|
|
9
|
+
var components_flagIcon_component = require('../flag-icon/component.js');
|
|
10
|
+
var styles = require('./index.module.css');
|
|
11
11
|
require('../flag-icon/flagSprite.js');
|
|
12
12
|
require('../flag-icon/index.module.css');
|
|
13
13
|
|
|
14
|
+
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
14
15
|
|
|
16
|
+
var React__default = /*#__PURE__*/_interopDefaultCompat(React);
|
|
17
|
+
var mergeRefs__default = /*#__PURE__*/_interopDefaultCompat(mergeRefs);
|
|
18
|
+
var cn__default = /*#__PURE__*/_interopDefaultCompat(cn);
|
|
19
|
+
var WorldMagnifierMIcon__default = /*#__PURE__*/_interopDefaultCompat(WorldMagnifierMIcon);
|
|
20
|
+
var styles__default = /*#__PURE__*/_interopDefaultCompat(styles);
|
|
15
21
|
|
|
16
|
-
|
|
17
|
-
|
|
22
|
+
var EMPTY_COUNTRY_SELECT_FIELD = {
|
|
23
|
+
value: 'EMPTY_COUNTRY_SELECT_VALUE',
|
|
24
|
+
key: 'EMPTY_COUNTRY_SELECT_KEY',
|
|
25
|
+
};
|
|
26
|
+
var SelectField = function (_a) {
|
|
27
|
+
var _b;
|
|
28
|
+
var selected = _a.selected, Arrow = _a.Arrow, size = _a.size, disabled = _a.disabled, _c = _a.innerProps, innerProps = _c === void 0 ? {} : _c;
|
|
29
|
+
var wrapperRef = React.useRef(null);
|
|
30
|
+
var focusVisible = hooks.useFocus(wrapperRef, 'keyboard')[0];
|
|
31
|
+
var ref = innerProps.ref ? mergeRefs__default.default([innerProps.ref, wrapperRef]) : wrapperRef;
|
|
32
|
+
return (React__default.default.createElement("div", { ref: ref, className: cn__default.default(styles__default.default.component, size && styles__default.default[size], (_b = {},
|
|
33
|
+
_b[styles__default.default.focusVisible] = focusVisible,
|
|
34
|
+
_b[styles__default.default.disabled] = disabled,
|
|
35
|
+
_b)) },
|
|
36
|
+
React__default.default.createElement("div", tslib.__assign({}, innerProps, { className: styles__default.default.inner }),
|
|
37
|
+
React__default.default.createElement("span", { className: styles__default.default.flagIconContainer }, !selected || selected === EMPTY_COUNTRY_SELECT_FIELD ? (React__default.default.createElement(WorldMagnifierMIcon__default.default, { className: styles__default.default.emptyCountryIcon })) : (React__default.default.createElement(components_flagIcon_component.FlagIcon, { country: selected.value }))),
|
|
38
|
+
Arrow)));
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
exports.EMPTY_COUNTRY_SELECT_FIELD = EMPTY_COUNTRY_SELECT_FIELD;
|
|
42
|
+
exports.SelectField = SelectField;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from "
|
|
1
|
+
export * from "./component";
|
package/cssm/index.js
CHANGED
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
var component = require('./component.js');
|
|
4
|
-
require('
|
|
4
|
+
require('tslib');
|
|
5
5
|
require('react');
|
|
6
|
-
require('react-merge-refs');
|
|
7
6
|
require('classnames');
|
|
8
|
-
require('@alfalab/hooks');
|
|
9
|
-
require('@alfalab/icons-glyph/WorldMagnifierMIcon');
|
|
10
|
-
require('./components/flag-icon/component.js');
|
|
11
|
-
require('./components/flag-icon/flagSprite.js');
|
|
12
|
-
require('./components/flag-icon/index.module.css');
|
|
13
|
-
require('./components/select-field/index.module.css');
|
|
14
7
|
require('@alfalab/core-components-input-autocomplete/cssm');
|
|
8
|
+
require('@alfalab/icons-glyph/WorldMagnifierMIcon');
|
|
15
9
|
require('@alfalab/utils');
|
|
16
10
|
require('./utils/calculateCaretPos.js');
|
|
17
11
|
require('./utils/format-phone-with-unclearable-country-code.js');
|
|
18
12
|
require('./utils/preparePasteData.js');
|
|
13
|
+
require('react-merge-refs');
|
|
14
|
+
require('@alfalab/hooks');
|
|
15
|
+
require('./components/flag-icon/component.js');
|
|
16
|
+
require('./components/flag-icon/flagSprite.js');
|
|
17
|
+
require('./components/flag-icon/index.module.css');
|
|
18
|
+
require('./components/select-field/index.module.css');
|
|
19
19
|
require('./components/select/component.js');
|
|
20
20
|
require('@alfalab/core-components-select/cssm');
|
|
21
|
+
require('./components/select-field/component.js');
|
|
21
22
|
require('./components/select/index.module.css');
|
|
22
23
|
require('./useCaretAvoidCountryCode.js');
|
|
23
24
|
require('./index.module.css');
|
|
@@ -4,5 +4,5 @@
|
|
|
4
4
|
* @param phoneFromBuffer Текст номера телефона из буфера обмена.
|
|
5
5
|
* @param input Input в который осуществляется вставка.
|
|
6
6
|
*/
|
|
7
|
-
declare function preparePasteData(phoneValue: string, phoneFromBuffer: string, selectionStart?: number, selectionEnd?: number): string;
|
|
7
|
+
declare function preparePasteData(phoneValue: string, phoneFromBuffer: string, selectionStart?: number, selectionEnd?: number, ruNumberPriority?: boolean): string;
|
|
8
8
|
export { preparePasteData };
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* @param phoneFromBuffer Текст номера телефона из буфера обмена.
|
|
7
7
|
* @param input Input в который осуществляется вставка.
|
|
8
8
|
*/
|
|
9
|
-
function preparePasteData(phoneValue, phoneFromBuffer, selectionStart, selectionEnd) {
|
|
9
|
+
function preparePasteData(phoneValue, phoneFromBuffer, selectionStart, selectionEnd, ruNumberPriority) {
|
|
10
10
|
var trimNuber = phoneFromBuffer.trim();
|
|
11
11
|
var cutNumberWithPlus = trimNuber.replace(/[^+\d]/g, '');
|
|
12
12
|
var isTextHavePlus = cutNumberWithPlus[0] === '+';
|
|
@@ -44,10 +44,14 @@ function preparePasteData(phoneValue, phoneFromBuffer, selectionStart, selection
|
|
|
44
44
|
}
|
|
45
45
|
else if (isRuNumberInBuffer) {
|
|
46
46
|
resultNumber = "+7".concat(cutNumber.substring(1));
|
|
47
|
-
// вставка номера начинающегося НЕ с "7", "8", "+" в пустое поле
|
|
47
|
+
// вставка номера начинающегося НЕ с "7", "8", "+" в пустое поле с российским флагом
|
|
48
48
|
}
|
|
49
|
-
else {
|
|
49
|
+
else if (ruNumberPriority) {
|
|
50
50
|
resultNumber = "+7".concat(cutNumber);
|
|
51
|
+
// вставка номера начинающегося НЕ с "7", "8", "+" в пустое поле без российского флага
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
resultNumber = "+".concat(cutNumber);
|
|
51
55
|
}
|
|
52
56
|
}
|
|
53
57
|
return resultNumber;
|