intelicoreact 1.4.21 → 1.4.23
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/dist/Atomic/FormElements/ActionAlert/ActionAlert.js +1 -9
- package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +1 -10
- package/dist/Atomic/FormElements/Calendar/Calendar.js +4 -24
- package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +1 -10
- package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +2 -14
- package/dist/Atomic/FormElements/Datepicker/Datepicker.js +5 -54
- package/dist/Atomic/FormElements/Datepicker/components/Calendar.js +3 -21
- package/dist/Atomic/FormElements/Dropdown/Dropdown.js +51 -144
- package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +1 -7
- package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +25 -91
- package/dist/Atomic/FormElements/FileLoader/FileLoader.js +3 -15
- package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +15 -29
- package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +5 -15
- package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +6 -26
- package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +19 -35
- package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +9 -38
- package/dist/Atomic/FormElements/Input/Input.js +25 -60
- package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +4 -31
- package/dist/Atomic/FormElements/InputColor/InputColor.js +4 -14
- package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +6 -29
- package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +8 -43
- package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +3 -21
- package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +58 -81
- package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +6 -41
- package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +1 -8
- package/dist/Atomic/FormElements/InputDateRange/dependencies.js +16 -46
- package/dist/Atomic/FormElements/InputLink/InputLink.js +6 -23
- package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +0 -4
- package/dist/Atomic/FormElements/InputMask/InputMask.js +77 -208
- package/dist/Atomic/FormElements/InputMask/functions.js +2 -28
- package/dist/Atomic/FormElements/InputMask2/InputMask2.js +43 -119
- package/dist/Atomic/FormElements/InputMask2/functions.js +2 -28
- package/dist/Atomic/FormElements/InputMask3/InputMask3.js +44 -137
- package/dist/Atomic/FormElements/InputMask3/functions.js +2 -28
- package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +3 -17
- package/dist/Atomic/FormElements/InputsRow/InputsRow.js +5 -24
- package/dist/Atomic/FormElements/Label/Label.js +1 -9
- package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +35 -73
- package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +3 -15
- package/dist/Atomic/FormElements/NumericInput/NumericInput.js +23 -44
- package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +7 -17
- package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +3 -14
- package/dist/Atomic/FormElements/RadioInput/RadioInput.js +1 -10
- package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +3 -14
- package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +3 -23
- package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +17 -34
- package/dist/Atomic/FormElements/RangeList/RangeList.js +6 -25
- package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +1 -11
- package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +14 -85
- package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +43 -132
- package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +1 -10
- package/dist/Atomic/FormElements/Switcher/Switcher.js +1 -10
- package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +1 -13
- package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +1 -10
- package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +2 -17
- package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +3 -17
- package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +1 -11
- package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +6 -29
- package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +2 -3
- package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +1 -12
- package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.js +9 -31
- package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +125 -213
- package/dist/Atomic/FormElements/Text/Text.js +10 -16
- package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +1 -9
- package/dist/Atomic/FormElements/Textarea/Textarea.js +4 -20
- package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +6 -35
- package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +4 -13
- package/dist/Atomic/FormElements/TimeRange/TimeRange.js +7 -21
- package/dist/Atomic/FormElements/UserContacts/UserContacts.js +8 -35
- package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +5 -18
- package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +3 -10
- package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +3 -11
- package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +1 -2
- package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +5 -12
- package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +3 -3
- package/dist/Atomic/Layout/Header/Header.js +3 -15
- package/dist/Atomic/Layout/MainMenu/MainMenu.js +3 -20
- package/dist/Atomic/Layout/Spinner/Spinner.js +1 -8
- package/dist/Atomic/UI/Accordion/Accordion.js +3 -19
- package/dist/Atomic/UI/Accordion/AccordionItem.js +9 -23
- package/dist/Atomic/UI/AccordionTable/AccordionTable.js +7 -32
- package/dist/Atomic/UI/AccordionText/AccordionText.js +3 -15
- package/dist/Atomic/UI/AdvancedTag/AdvTag.js +4 -21
- package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +3 -15
- package/dist/Atomic/UI/Alert/Alert.js +3 -19
- package/dist/Atomic/UI/Arrow/Arrow.js +3 -16
- package/dist/Atomic/UI/Box/Box.js +3 -9
- package/dist/Atomic/UI/Button/Button.js +2 -11
- package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +1 -10
- package/dist/Atomic/UI/Chart/Chart.js +4 -29
- package/dist/Atomic/UI/Chart/partial/Chart.constants.js +11 -19
- package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +1 -12
- package/dist/Atomic/UI/Chart/partial/datasetSetters.js +11 -34
- package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +82 -56
- package/dist/Atomic/UI/Chart/partial/optionsSetters.js +15 -19
- package/dist/Atomic/UI/Chart/partial/utils.js +6 -20
- package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +3 -13
- package/dist/Atomic/UI/DateTime/DateTime.js +3 -14
- package/dist/Atomic/UI/DebugContainer/DebugContainer.js +4 -16
- package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +3 -11
- package/dist/Atomic/UI/DoubleString/DoubleString.js +5 -17
- package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +3 -10
- package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +17 -52
- package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +1 -29
- package/dist/Atomic/UI/Hint/Hint.js +5 -31
- package/dist/Atomic/UI/Modal/Modal.js +6 -28
- package/dist/Atomic/UI/Modal/ModalHOC.js +1 -9
- package/dist/Atomic/UI/Modal/partials/ModalFooter.js +1 -7
- package/dist/Atomic/UI/Modal/partials/ModalTitle.js +1 -8
- package/dist/Atomic/UI/Modal/partials/useMobileModal.js +32 -49
- package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +6 -21
- package/dist/Atomic/UI/NavLine/NavLine.js +26 -55
- package/dist/Atomic/UI/NavLine/Tabs.js +2 -3
- package/dist/Atomic/UI/PageTitle/PageTitle.js +2 -10
- package/dist/Atomic/UI/PieChart/PieChart.js +1 -10
- package/dist/Atomic/UI/Price/Price.js +3 -8
- package/dist/Atomic/UI/PriceRange/PriceRange.js +1 -7
- package/dist/Atomic/UI/ProgressLine/ProgressLine.js +1 -16
- package/dist/Atomic/UI/Status/Status.js +1 -8
- package/dist/Atomic/UI/Table/Partials/TdCell.js +5 -29
- package/dist/Atomic/UI/Table/Partials/TdHeader.js +1 -11
- package/dist/Atomic/UI/Table/Partials/TdRow.js +5 -17
- package/dist/Atomic/UI/Table/Partials/TdTitle.js +3 -14
- package/dist/Atomic/UI/Table/Table.js +1 -12
- package/dist/Atomic/UI/Table/TdTypes/TdActions.js +2 -18
- package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +1 -9
- package/dist/Atomic/UI/Table/TdTypes/TdRange.js +1 -4
- package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +1 -13
- package/dist/Atomic/UI/Tag/Tag.js +7 -19
- package/dist/Atomic/UI/TagList/TagList.js +20 -38
- package/dist/Atomic/UI/UserBox/UserBox.js +1 -13
- package/dist/Classes/AbortableFetch.js +36 -93
- package/dist/Classes/AnimatedHandler.js +3 -7
- package/dist/Classes/RESTAPI/index.js +39 -42
- package/dist/Classes/RESTAPI/partials/AbortableFetch.js +35 -93
- package/dist/Classes/RESTAPI/partials/ApiBase.js +1 -9
- package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +24 -32
- package/dist/Classes/RESTAPI/partials/ApiUtils.js +34 -41
- package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +21 -44
- package/dist/Classes/RESTAPI/partials/Utils.js +6 -19
- package/dist/Classes/RESTAPI/partials/_outerDependencies.js +2 -6
- package/dist/Classes/RESTAPI/partials/_utils.js +13 -36
- package/dist/Constants/index.constants.js +8 -15
- package/dist/Functions/Portal.js +5 -16
- package/dist/Functions/customEventListener.js +4 -17
- package/dist/Functions/fieldValueFormatters.js +43 -83
- package/dist/Functions/hooks/useFormFieldsChangesManager.js +23 -26
- package/dist/Functions/locale/createTranslator.js +4 -9
- package/dist/Functions/operations.js +12 -22
- package/dist/Functions/presets/inputMaskPresets.js +9 -11
- package/dist/Functions/presets/inputPresets.js +8 -11
- package/dist/Functions/presets/mobileKeyboardTypesPresets.js +7 -9
- package/dist/Functions/schemas.js +6 -13
- package/dist/Functions/useBodyScrollLock.js +1 -6
- package/dist/Functions/useClickOutside.js +0 -4
- package/dist/Functions/useDebounce.js +2 -7
- package/dist/Functions/useFieldFocus.js +6 -18
- package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +0 -9
- package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +12 -23
- package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +6 -15
- package/dist/Functions/useFormTools/functions/General.js +18 -28
- package/dist/Functions/useFormTools/functions/RenderFields.js +2 -11
- package/dist/Functions/useFormTools/functions/usePrevious.js +1 -5
- package/dist/Functions/useFormTools/index.js +85 -144
- package/dist/Functions/useInputHighlightError.js +3 -12
- package/dist/Functions/useIsMobile.js +7 -13
- package/dist/Functions/useKeyPress/useHandleKeyPress.js +1 -7
- package/dist/Functions/useKeyPress/useKeyPress.js +1 -9
- package/dist/Functions/useLocalStorage.js +1 -9
- package/dist/Functions/useLocationParams.js +4 -5
- package/dist/Functions/useMediaQuery.js +3 -9
- package/dist/Functions/useMetaInfo.js +3 -10
- package/dist/Functions/useMouseUpOutside.js +0 -3
- package/dist/Functions/useOnlineStatus.js +1 -9
- package/dist/Functions/usePasswordChecker.js +4 -20
- package/dist/Functions/usePrevious.js +1 -5
- package/dist/Functions/useResize.js +2 -10
- package/dist/Functions/useScrollTo.js +2 -7
- package/dist/Functions/useToggle.js +1 -5
- package/dist/Functions/utils.js +56 -131
- package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +2 -9
- package/dist/Molecular/CustomIcons/components/AlertCircle.js +2 -9
- package/dist/Molecular/CustomIcons/components/AppStore.js +2 -9
- package/dist/Molecular/CustomIcons/components/Arrow.js +2 -9
- package/dist/Molecular/CustomIcons/components/ArrowDown.js +2 -9
- package/dist/Molecular/CustomIcons/components/ArrowLeft.js +2 -9
- package/dist/Molecular/CustomIcons/components/ArrowRight.js +2 -9
- package/dist/Molecular/CustomIcons/components/ArrowUp.js +2 -9
- package/dist/Molecular/CustomIcons/components/Bell.js +2 -9
- package/dist/Molecular/CustomIcons/components/Button.js +2 -9
- package/dist/Molecular/CustomIcons/components/Campaigns.js +2 -9
- package/dist/Molecular/CustomIcons/components/Check.js +2 -9
- package/dist/Molecular/CustomIcons/components/Check2.js +2 -9
- package/dist/Molecular/CustomIcons/components/ChevronDown.js +2 -9
- package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +2 -9
- package/dist/Molecular/CustomIcons/components/ChevronLeft.js +2 -9
- package/dist/Molecular/CustomIcons/components/ChevronRight.js +2 -9
- package/dist/Molecular/CustomIcons/components/ChevronUp.js +2 -9
- package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +2 -9
- package/dist/Molecular/CustomIcons/components/Close.js +2 -9
- package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +2 -9
- package/dist/Molecular/CustomIcons/components/Delete.js +2 -9
- package/dist/Molecular/CustomIcons/components/Edit.js +2 -9
- package/dist/Molecular/CustomIcons/components/Email.js +2 -9
- package/dist/Molecular/CustomIcons/components/FinturfLogo.js +2 -9
- package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +2 -9
- package/dist/Molecular/CustomIcons/components/Flows.js +2 -9
- package/dist/Molecular/CustomIcons/components/Gift.js +2 -9
- package/dist/Molecular/CustomIcons/components/GoogleAuth.js +2 -9
- package/dist/Molecular/CustomIcons/components/GooglePlay.js +2 -9
- package/dist/Molecular/CustomIcons/components/HelpCircle.js +2 -9
- package/dist/Molecular/CustomIcons/components/HelpCircle2.js +2 -9
- package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +2 -9
- package/dist/Molecular/CustomIcons/components/Home.js +2 -9
- package/dist/Molecular/CustomIcons/components/Home2.js +2 -9
- package/dist/Molecular/CustomIcons/components/Key.js +2 -9
- package/dist/Molecular/CustomIcons/components/Landers.js +2 -9
- package/dist/Molecular/CustomIcons/components/Lock.js +2 -9
- package/dist/Molecular/CustomIcons/components/Mail.js +2 -9
- package/dist/Molecular/CustomIcons/components/Mastercard.js +2 -9
- package/dist/Molecular/CustomIcons/components/Minus.js +2 -9
- package/dist/Molecular/CustomIcons/components/Offers.js +2 -9
- package/dist/Molecular/CustomIcons/components/Pause.js +2 -9
- package/dist/Molecular/CustomIcons/components/PayPal.js +2 -9
- package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +2 -9
- package/dist/Molecular/CustomIcons/components/Phone.js +2 -9
- package/dist/Molecular/CustomIcons/components/Play.js +2 -9
- package/dist/Molecular/CustomIcons/components/Plus.js +2 -9
- package/dist/Molecular/CustomIcons/components/Profile.js +2 -9
- package/dist/Molecular/CustomIcons/components/QRCode.js +2 -9
- package/dist/Molecular/CustomIcons/components/Rectangle.js +2 -9
- package/dist/Molecular/CustomIcons/components/Revert.js +2 -9
- package/dist/Molecular/CustomIcons/components/Star.js +2 -9
- package/dist/Molecular/CustomIcons/components/Star2.js +2 -9
- package/dist/Molecular/CustomIcons/components/TrafficSources.js +2 -9
- package/dist/Molecular/CustomIcons/components/Trash.js +2 -9
- package/dist/Molecular/CustomIcons/components/TrashRed.js +2 -9
- package/dist/Molecular/CustomIcons/components/Triggers.js +2 -9
- package/dist/Molecular/CustomIcons/components/User.js +2 -9
- package/dist/Molecular/CustomIcons/components/Visa.js +2 -9
- package/dist/Molecular/CustomIcons/components/X.js +2 -9
- package/dist/Molecular/CustomIcons/index.js +0 -122
- package/dist/Molecular/FormElement/FormElement.js +1 -12
- package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +30 -31
- package/dist/Molecular/FormWithDependOn/partials/_utils.js +9 -12
- package/dist/Molecular/InputAddress/InputAddress.js +65 -114
- package/dist/Molecular/InputPassword/InputPassword.js +5 -19
- package/dist/index.js +0 -2
- package/package.json +1 -1
- package/dist/Atomic/FormElements/UserContacts/partial/defaultIcons.js +0 -91
- package/dist/Atomic/UI/ModalBackup/Modal.js +0 -174
- package/dist/Atomic/UI/ModalBackup/Modal.scss +0 -333
- package/dist/Atomic/UI/ModalBackup/ModalHOC.js +0 -51
- package/dist/Atomic/UI/ModalBackup/partials/ModalFooter.js +0 -24
- package/dist/Atomic/UI/ModalBackup/partials/ModalTitle.js +0 -41
|
@@ -4,89 +4,63 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.voidFn = exports.selectElementContents = exports.resetSelectionText = exports.isUpperCaseLetter = exports.isLowerCaseLetter = exports.isLetterMaskChar = exports.isLetter = exports.isDigitMaskChar = exports.isDigit = exports.getSelectionText = exports.copyToClipboard = void 0;
|
|
7
|
-
|
|
8
7
|
var _config = require("./config");
|
|
9
|
-
|
|
10
8
|
const getSelectionText = () => {
|
|
11
9
|
var _text;
|
|
12
|
-
|
|
13
10
|
let text = "";
|
|
14
|
-
|
|
15
11
|
if (window.getSelection) {
|
|
16
12
|
text = window.getSelection().toString();
|
|
17
13
|
} else if (document.selection && document.selection.type !== "Control") {
|
|
18
14
|
text = document.selection.createRange().text;
|
|
19
15
|
}
|
|
20
|
-
|
|
21
16
|
return (_text = text) === null || _text === void 0 ? void 0 : _text.replace(/\n/g, "");
|
|
22
17
|
};
|
|
23
|
-
|
|
24
18
|
exports.getSelectionText = getSelectionText;
|
|
25
|
-
|
|
26
19
|
const resetSelectionText = () => {
|
|
27
20
|
if (window.getSelection) {
|
|
28
21
|
window.getSelection().removeAllRanges();
|
|
29
22
|
}
|
|
30
23
|
};
|
|
31
|
-
|
|
32
24
|
exports.resetSelectionText = resetSelectionText;
|
|
33
|
-
|
|
34
25
|
const copyToClipboard = str => {
|
|
35
|
-
if (navigator && navigator.clipboard && navigator.clipboard.writeText) return navigator.clipboard.writeText(str);
|
|
36
|
-
|
|
26
|
+
if (navigator && navigator.clipboard && navigator.clipboard.writeText) return navigator.clipboard.writeText(str);
|
|
27
|
+
// eslint-disable-next-line prefer-promise-reject-errors
|
|
37
28
|
return Promise.reject("The Clipboard API is not available.");
|
|
38
29
|
};
|
|
39
|
-
|
|
40
30
|
exports.copyToClipboard = copyToClipboard;
|
|
41
|
-
|
|
42
31
|
const selectElementContents = function (el) {
|
|
43
32
|
let startOffset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : -1;
|
|
44
33
|
let endOffset = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : -1;
|
|
45
34
|
const sel = window.getSelection();
|
|
46
35
|
sel.selectAllChildren(el);
|
|
47
36
|
};
|
|
48
|
-
|
|
49
37
|
exports.selectElementContents = selectElementContents;
|
|
50
|
-
|
|
51
38
|
const isLetter = char => {
|
|
52
39
|
return Boolean((char === null || char === void 0 ? void 0 : char.length) === 1 && (char === null || char === void 0 ? void 0 : char.match(/[a-z]/i)));
|
|
53
40
|
};
|
|
54
|
-
|
|
55
41
|
exports.isLetter = isLetter;
|
|
56
|
-
|
|
57
42
|
const isUpperCaseLetter = char => {
|
|
58
43
|
return isLetter(char) ? char === char.slice().toUpperCase() : false;
|
|
59
44
|
};
|
|
60
|
-
|
|
61
45
|
exports.isUpperCaseLetter = isUpperCaseLetter;
|
|
62
|
-
|
|
63
46
|
const isLowerCaseLetter = char => {
|
|
64
47
|
return isLetter(char) ? char === char.slice().toLowerCase() : false;
|
|
65
48
|
};
|
|
66
|
-
|
|
67
49
|
exports.isLowerCaseLetter = isLowerCaseLetter;
|
|
68
|
-
|
|
69
50
|
const isDigit = char => {
|
|
70
51
|
return Boolean(Number.isInteger(parseInt(char, 10)));
|
|
71
52
|
};
|
|
72
|
-
|
|
73
53
|
exports.isDigit = isDigit;
|
|
74
|
-
|
|
75
54
|
const isDigitMaskChar = char => {
|
|
76
55
|
return char === _config.DIGIT_MASK_CHAR;
|
|
77
56
|
};
|
|
78
|
-
|
|
79
57
|
exports.isDigitMaskChar = isDigitMaskChar;
|
|
80
|
-
|
|
81
58
|
const isLetterMaskChar = char => {
|
|
82
59
|
return char === _config.UPPERCASE_LETTER_MASK_CHAR || char === _config.LOWERCASE_LETTER_MASK_CHAR;
|
|
83
60
|
};
|
|
84
|
-
|
|
85
61
|
exports.isLetterMaskChar = isLetterMaskChar;
|
|
86
|
-
|
|
87
62
|
const voidFn = () => {
|
|
88
63
|
// eslint-disable-next-line no-console
|
|
89
64
|
console.error("Void Function Called");
|
|
90
65
|
};
|
|
91
|
-
|
|
92
66
|
exports.voidFn = voidFn;
|
|
@@ -1,40 +1,24 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = InputMask2;
|
|
9
|
-
|
|
10
8
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
-
|
|
12
9
|
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
-
|
|
14
10
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
15
|
-
|
|
16
11
|
var _reactFeather = require("react-feather");
|
|
17
|
-
|
|
18
12
|
var _index = require("../../../Constants/index.constants");
|
|
19
|
-
|
|
20
13
|
var _utils = require("../../../Functions/utils");
|
|
21
|
-
|
|
22
14
|
var _Spinner = _interopRequireDefault(require("../../Layout/Spinner/Spinner"));
|
|
23
|
-
|
|
24
15
|
var _DynamicIcon = _interopRequireDefault(require("../../UI/DynamicIcon/DynamicIcon"));
|
|
25
|
-
|
|
26
16
|
var _Hint = _interopRequireDefault(require("../../UI/Hint/Hint"));
|
|
27
|
-
|
|
28
17
|
var _config = require("./config");
|
|
29
|
-
|
|
30
18
|
var _functions = require("./functions");
|
|
31
|
-
|
|
32
19
|
require("./InputMask2.scss");
|
|
33
|
-
|
|
34
|
-
function
|
|
35
|
-
|
|
36
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
37
|
-
|
|
20
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
21
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
38
22
|
function InputMask2() {
|
|
39
23
|
let {
|
|
40
24
|
autocomplete = "off",
|
|
@@ -84,7 +68,8 @@ function InputMask2() {
|
|
|
84
68
|
testId,
|
|
85
69
|
attributesOfNativeInput = {}
|
|
86
70
|
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
87
|
-
const errors = {
|
|
71
|
+
const errors = {
|
|
72
|
+
..._config.DEFAULT_ERRORS,
|
|
88
73
|
...customErrors
|
|
89
74
|
};
|
|
90
75
|
if (maxEditableIndex === -1) maxEditableIndex = maskPattern.length;
|
|
@@ -94,33 +79,27 @@ function InputMask2() {
|
|
|
94
79
|
const [selectedLength, setSelectedLength] = (0, _react.useState)(0);
|
|
95
80
|
const inputRef = (0, _react.useRef)(null);
|
|
96
81
|
const keyDownRef = (0, _react.useRef)(null);
|
|
97
|
-
|
|
98
82
|
const setKeyDown = keyCode => keyDownRef.current = keyCode;
|
|
99
|
-
|
|
100
83
|
const getKeyDown = () => keyDownRef.current;
|
|
101
|
-
|
|
102
84
|
const DynamicIconComponent = iconDynamicKey && !icon ? /*#__PURE__*/_react.default.createElement(_DynamicIcon.default, (0, _extends2.default)({
|
|
103
85
|
iconKey: iconDynamicKey
|
|
104
86
|
}, iconDynamicProps)) : null;
|
|
105
|
-
|
|
106
87
|
const setCaret = caret => {
|
|
107
88
|
if (caret < 0) caret = 0;
|
|
108
89
|
const input = inputRef.current;
|
|
109
90
|
if (input) setTimeout(() => input.setSelectionRange(caret, caret), 0);
|
|
110
|
-
};
|
|
111
|
-
|
|
91
|
+
};
|
|
112
92
|
|
|
93
|
+
// ERRORS MANAGEMENT FUNCTIONS | START //
|
|
113
94
|
const [isError, setError] = (0, _react.useState)(false);
|
|
114
95
|
const [blinkError, setBlinkError] = (0, _react.useState)(false);
|
|
115
96
|
const [errorMessage, setErrorMessage] = (0, _react.useState)(errors.default);
|
|
97
|
+
const clearErrorMessage = () => setErrorMessage(errors.default);
|
|
98
|
+
// ERRORS MANAGEMENT FUNCTIONS | END //
|
|
116
99
|
|
|
117
|
-
const clearErrorMessage = () => setErrorMessage(errors.default); // ERRORS MANAGEMENT FUNCTIONS | END //
|
|
118
100
|
// INNER VALUE MANAGEMENT FUNCTIONS | START //
|
|
119
|
-
|
|
120
|
-
|
|
121
101
|
const [innerValue, setInnerValue] = (0, _react.useState)([]);
|
|
122
102
|
const prevValueRef = (0, _react.useRef)([]);
|
|
123
|
-
|
|
124
103
|
const addInnerValueChar = _ref => {
|
|
125
104
|
let {
|
|
126
105
|
char,
|
|
@@ -133,7 +112,6 @@ function InputMask2() {
|
|
|
133
112
|
return stateCopy;
|
|
134
113
|
});
|
|
135
114
|
};
|
|
136
|
-
|
|
137
115
|
const updateInnerValueChar = function () {
|
|
138
116
|
let {
|
|
139
117
|
char = null
|
|
@@ -146,17 +124,14 @@ function InputMask2() {
|
|
|
146
124
|
return stateCopy;
|
|
147
125
|
});
|
|
148
126
|
};
|
|
149
|
-
|
|
150
127
|
const resetInnerValue = () => {
|
|
151
128
|
setInnerValue(innerValue => innerValue.map(item => {
|
|
152
129
|
if (!item.isSpecialSymbol && item.char !== null) item.char = "";
|
|
153
130
|
return item;
|
|
154
131
|
}));
|
|
155
132
|
};
|
|
156
|
-
|
|
157
133
|
const setValue = function (value) {
|
|
158
134
|
var _maskPattern;
|
|
159
|
-
|
|
160
135
|
let disableErrors = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
161
136
|
value = value === null || value === undefined ? "" : value.toString();
|
|
162
137
|
resetInnerValue();
|
|
@@ -166,14 +141,12 @@ function InputMask2() {
|
|
|
166
141
|
setInnerValue(innerValue => {
|
|
167
142
|
const newValue = innerValue.map((item, i) => {
|
|
168
143
|
var _maskPattern2;
|
|
169
|
-
|
|
170
144
|
const {
|
|
171
145
|
isSpecialSymbol
|
|
172
146
|
} = item;
|
|
173
147
|
if (isSpecialSymbol) return item;
|
|
174
148
|
let char = value[valueCharIndex];
|
|
175
149
|
let whileLimit = ((_maskPattern2 = maskPattern) === null || _maskPattern2 === void 0 ? void 0 : _maskPattern2.length) || 0;
|
|
176
|
-
|
|
177
150
|
while (whileLimit && (isSpecialSymbolChar({
|
|
178
151
|
char: value[valueCharIndex]
|
|
179
152
|
}) || !isValidChar({
|
|
@@ -183,9 +156,9 @@ function InputMask2() {
|
|
|
183
156
|
}))) {
|
|
184
157
|
whileLimit--;
|
|
185
158
|
char = value[++valueCharIndex];
|
|
186
|
-
}
|
|
187
|
-
|
|
159
|
+
}
|
|
188
160
|
|
|
161
|
+
// If Valid
|
|
189
162
|
if (isValidChar({
|
|
190
163
|
char,
|
|
191
164
|
i,
|
|
@@ -193,16 +166,15 @@ function InputMask2() {
|
|
|
193
166
|
})) {
|
|
194
167
|
item.char = char;
|
|
195
168
|
}
|
|
196
|
-
|
|
197
169
|
++valueCharIndex;
|
|
198
170
|
return item;
|
|
199
171
|
});
|
|
200
172
|
return newValue;
|
|
201
173
|
});
|
|
202
|
-
};
|
|
203
|
-
//
|
|
204
|
-
|
|
174
|
+
};
|
|
175
|
+
// INNER VALUE MANAGEMENT FUNCTIONS | END //
|
|
205
176
|
|
|
177
|
+
// CHECKERS | START //
|
|
206
178
|
const isValidChar = _ref2 => {
|
|
207
179
|
let {
|
|
208
180
|
char: key,
|
|
@@ -210,78 +182,61 @@ function InputMask2() {
|
|
|
210
182
|
disableErrors = false
|
|
211
183
|
} = _ref2;
|
|
212
184
|
const maskChar = getMaskCharByIndex(i);
|
|
213
|
-
|
|
214
185
|
switch (maskChar) {
|
|
215
186
|
case _config.DIGIT_MASK_CHAR:
|
|
216
187
|
if (!(0, _functions.isDigit)(key)) {
|
|
217
188
|
if (!disableErrors) {
|
|
218
189
|
setErrorMessage(errors.onlyDigit);
|
|
219
190
|
}
|
|
220
|
-
|
|
221
191
|
return false;
|
|
222
192
|
}
|
|
223
|
-
|
|
224
193
|
break;
|
|
225
|
-
|
|
226
194
|
case _config.UPPERCASE_LETTER_MASK_CHAR:
|
|
227
195
|
if (adaptTextCase) key = key.toUpperCase();
|
|
228
|
-
|
|
229
196
|
if (!(0, _functions.isLetter)(key) && !isCaseSensitive) {
|
|
230
197
|
if (!disableErrors) setErrorMessage(errors.onlyLetter);
|
|
231
198
|
return false;
|
|
232
199
|
}
|
|
233
|
-
|
|
234
200
|
if (isCaseSensitive && !(0, _functions.isUpperCaseLetter)(key)) {
|
|
235
201
|
if (!disableErrors) setErrorMessage(errors.onlyUpperCase);
|
|
236
202
|
return false;
|
|
237
203
|
}
|
|
238
|
-
|
|
239
204
|
break;
|
|
240
|
-
|
|
241
205
|
case _config.LOWERCASE_LETTER_MASK_CHAR:
|
|
242
206
|
if (adaptTextCase) key = key.toLowerCase();
|
|
243
|
-
|
|
244
207
|
if (!(0, _functions.isLetter)(key) && !isCaseSensitive) {
|
|
245
208
|
if (!disableErrors) setErrorMessage(errors.onlyLetter);
|
|
246
209
|
return false;
|
|
247
210
|
}
|
|
248
|
-
|
|
249
211
|
if (isCaseSensitive && !(0, _functions.isLowerCaseLetter)(key)) {
|
|
250
212
|
if (!disableErrors) setErrorMessage(errors.onlyLowerCase);
|
|
251
213
|
return false;
|
|
252
214
|
}
|
|
253
|
-
|
|
254
215
|
break;
|
|
255
|
-
|
|
256
216
|
default:
|
|
257
217
|
return false;
|
|
258
218
|
}
|
|
259
|
-
|
|
260
219
|
return true;
|
|
261
220
|
};
|
|
262
|
-
|
|
263
221
|
const isSpecialSymbolMaskChar = _ref3 => {
|
|
264
222
|
let {
|
|
265
223
|
char
|
|
266
224
|
} = _ref3;
|
|
267
225
|
return !(0, _functions.isDigitMaskChar)(char) && !(0, _functions.isLetterMaskChar)(char);
|
|
268
226
|
};
|
|
269
|
-
|
|
270
227
|
const isSpecialSymbolChar = _ref4 => {
|
|
271
228
|
let {
|
|
272
229
|
char
|
|
273
230
|
} = _ref4;
|
|
274
231
|
return !(0, _functions.isDigit)(char) && !(0, _functions.isLetter)(char);
|
|
275
232
|
};
|
|
276
|
-
|
|
277
233
|
const isSpecialSymbol = i => {
|
|
278
234
|
var _getCharByIndex;
|
|
279
|
-
|
|
280
235
|
return (_getCharByIndex = getCharByIndex(i)) === null || _getCharByIndex === void 0 ? void 0 : _getCharByIndex.isSpecialSymbol;
|
|
281
|
-
};
|
|
282
|
-
//
|
|
283
|
-
|
|
236
|
+
};
|
|
237
|
+
// CHECKERS | END //
|
|
284
238
|
|
|
239
|
+
// GETTERS | START //
|
|
285
240
|
const getCharObj = function (char) {
|
|
286
241
|
let data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
287
242
|
const isSpecialSymbol = isSpecialSymbolChar({
|
|
@@ -300,35 +255,28 @@ function InputMask2() {
|
|
|
300
255
|
...data
|
|
301
256
|
};
|
|
302
257
|
};
|
|
303
|
-
|
|
304
258
|
const getCharByIndex = i => {
|
|
305
|
-
return innerValue[i] ? {
|
|
259
|
+
return innerValue[i] ? {
|
|
260
|
+
...innerValue[i]
|
|
306
261
|
} : undefined;
|
|
307
262
|
};
|
|
308
|
-
|
|
309
263
|
const getMaskCharByIndex = i => {
|
|
310
264
|
var _innerValue$i;
|
|
311
|
-
|
|
312
265
|
return ((_innerValue$i = innerValue[i]) === null || _innerValue$i === void 0 ? void 0 : _innerValue$i.maskChar) || undefined;
|
|
313
266
|
};
|
|
314
|
-
|
|
315
267
|
const getPlaceholderCharByIndex = i => {
|
|
316
268
|
const {
|
|
317
269
|
maskChar
|
|
318
270
|
} = getCharByIndex(i);
|
|
319
|
-
|
|
320
271
|
if (usePatternPlaceholder) {
|
|
321
272
|
return maskPatternPlaceholder[i] || maskPlaceholder;
|
|
322
273
|
}
|
|
323
|
-
|
|
324
274
|
if ((0, _functions.isDigitMaskChar)(maskChar) && maskDigitPlaceholder) return maskDigitPlaceholder;
|
|
325
275
|
if ((0, _functions.isLetterMaskChar)(maskChar) && maskLetterPlaceholder) return maskLetterPlaceholder;
|
|
326
276
|
return maskPlaceholder;
|
|
327
277
|
};
|
|
328
|
-
|
|
329
278
|
const getClearInnerValueAsString = () => {
|
|
330
|
-
var _getInputValue
|
|
331
|
-
|
|
279
|
+
var _getInputValue;
|
|
332
280
|
const symbolsInfo = innerValue === null || innerValue === void 0 ? void 0 : innerValue.map(_ref5 => {
|
|
333
281
|
let {
|
|
334
282
|
isSpecialSymbol,
|
|
@@ -341,13 +289,12 @@ function InputMask2() {
|
|
|
341
289
|
});
|
|
342
290
|
const clearValue = (_getInputValue = getInputValue({
|
|
343
291
|
noLastTyppedCharIndexCheck: true
|
|
344
|
-
})) === null || _getInputValue === void 0
|
|
292
|
+
})) === null || _getInputValue === void 0 || (_getInputValue = _getInputValue.split("")) === null || _getInputValue === void 0 ? void 0 : _getInputValue.reduce((resultStr, symbol, i) => {
|
|
345
293
|
if (!symbolsInfo[i].isSpecialSymbol || symbolsInfo[i].isCharSymbol) resultStr += symbol;
|
|
346
294
|
return resultStr;
|
|
347
295
|
}, "");
|
|
348
296
|
return clearValue;
|
|
349
297
|
};
|
|
350
|
-
|
|
351
298
|
const getInputValue = function () {
|
|
352
299
|
let {
|
|
353
300
|
noLastTyppedCharIndexCheck
|
|
@@ -364,22 +311,21 @@ function InputMask2() {
|
|
|
364
311
|
let {
|
|
365
312
|
char
|
|
366
313
|
} = _ref7;
|
|
367
|
-
|
|
368
314
|
if (char !== "" && isValid && (!noLastTyppedCharIndexCheck ? i <= lastTyppedCharIndex : true)) {
|
|
369
315
|
result += char;
|
|
370
316
|
} else {
|
|
371
317
|
isValid = false;
|
|
372
318
|
}
|
|
373
|
-
|
|
374
319
|
return result;
|
|
375
320
|
}, "");
|
|
376
321
|
return value;
|
|
377
322
|
};
|
|
323
|
+
const inputValue = (0, _react.useMemo)(getInputValue, [innerValue]);
|
|
324
|
+
// GETTERS | END //
|
|
378
325
|
|
|
379
|
-
const inputValue = (0, _react.useMemo)(getInputValue, [innerValue]); // GETTERS | END //
|
|
380
326
|
/// --- Event Handlers ---///
|
|
381
|
-
// GENERAL EVENT HANDLERS | START //
|
|
382
327
|
|
|
328
|
+
// GENERAL EVENT HANDLERS | START //
|
|
383
329
|
const onChange = e => {
|
|
384
330
|
clearErrorMessage();
|
|
385
331
|
const {
|
|
@@ -391,17 +337,16 @@ function InputMask2() {
|
|
|
391
337
|
data: char
|
|
392
338
|
}
|
|
393
339
|
} = e;
|
|
394
|
-
|
|
395
340
|
if (caretPos > maxEditableIndex) {
|
|
396
341
|
(0, _utils.disableDefaultBehavior)();
|
|
397
342
|
setCaret(maxEditableIndex);
|
|
398
343
|
setBlinkError(true);
|
|
399
344
|
return;
|
|
400
345
|
}
|
|
401
|
-
|
|
402
346
|
setValue(value);
|
|
403
|
-
const caretOffset = value.length - caretPos;
|
|
347
|
+
const caretOffset = value.length - caretPos;
|
|
404
348
|
|
|
349
|
+
// Correct Caret Position
|
|
405
350
|
if (!value.lastIndexEqualsTo(caretPos - 1)) {
|
|
406
351
|
if (value.longerThan(inputValue)) {
|
|
407
352
|
if (!isValidChar({
|
|
@@ -420,10 +365,8 @@ function InputMask2() {
|
|
|
420
365
|
if (isSpecialSymbol(caretPos)) {
|
|
421
366
|
(0, _utils.disableDefaultBehavior)(e);
|
|
422
367
|
}
|
|
423
|
-
|
|
424
368
|
setCaret(caretPos);
|
|
425
369
|
break;
|
|
426
|
-
|
|
427
370
|
case _index.KEYBOARD_KEY_CODES.Delete:
|
|
428
371
|
if (isSpecialSymbol(caretPos)) {
|
|
429
372
|
(0, _utils.disableDefaultBehavior)(e);
|
|
@@ -431,21 +374,17 @@ function InputMask2() {
|
|
|
431
374
|
} else {
|
|
432
375
|
setCaret(caretPos);
|
|
433
376
|
}
|
|
434
|
-
|
|
435
377
|
break;
|
|
436
|
-
|
|
437
378
|
default:
|
|
438
379
|
if (selectedLength > 0) {
|
|
439
380
|
setCaret(caretPos);
|
|
440
381
|
}
|
|
441
|
-
|
|
442
382
|
}
|
|
443
383
|
}
|
|
444
384
|
}
|
|
385
|
+
|
|
445
386
|
/* Checking if the character is a special symbol and if it is not, it is checking if the character
|
|
446
387
|
is valid or not. If it is not valid, it will blink the error. */
|
|
447
|
-
|
|
448
|
-
|
|
449
388
|
if (blinkErrors) {
|
|
450
389
|
setTimeout(() => {
|
|
451
390
|
if ((value.longerThan(inputValue) && !isSpecialSymbol(caretPos - 1) || inputValue.longerThan(value) && !isSpecialSymbol(caretPos)) && (char && !isValidChar({
|
|
@@ -458,63 +397,55 @@ function InputMask2() {
|
|
|
458
397
|
}, 0);
|
|
459
398
|
}
|
|
460
399
|
};
|
|
461
|
-
|
|
462
400
|
const onKeyDown = e => {
|
|
463
|
-
onKeyDownProp === null || onKeyDownProp === void 0
|
|
401
|
+
onKeyDownProp === null || onKeyDownProp === void 0 || onKeyDownProp(e);
|
|
464
402
|
const {
|
|
465
403
|
keyCode
|
|
466
404
|
} = e;
|
|
467
405
|
setKeyDown(keyCode);
|
|
468
406
|
};
|
|
469
|
-
|
|
470
407
|
const onKeyUp = e => {
|
|
471
|
-
setKeyDown(null);
|
|
472
|
-
|
|
408
|
+
setKeyDown(null);
|
|
409
|
+
// On Filled Callback
|
|
473
410
|
if (getInputValue({
|
|
474
411
|
noLastTyppedCharIndexCheck: true
|
|
475
412
|
}).length === maskPattern.length && e.target.selectionStart >= maxEditableIndex) onFilledProp();
|
|
476
413
|
};
|
|
477
|
-
|
|
478
414
|
const onClearClick = e => {
|
|
479
415
|
var _inputRef$current;
|
|
480
|
-
|
|
481
416
|
e.stopPropagation();
|
|
482
417
|
e.preventDefault();
|
|
483
418
|
resetInnerValue();
|
|
484
|
-
inputRef === null || inputRef === void 0
|
|
419
|
+
inputRef === null || inputRef === void 0 || (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 || _inputRef$current.focus();
|
|
485
420
|
setCaret(0);
|
|
486
421
|
clearErrorMessage();
|
|
487
422
|
};
|
|
488
|
-
|
|
489
423
|
const onFocus = e => {
|
|
490
424
|
setFocused(true);
|
|
491
425
|
onFocusProp();
|
|
492
426
|
};
|
|
493
|
-
|
|
494
427
|
const onBlur = () => {
|
|
495
428
|
setFocused(false);
|
|
496
429
|
onBlurProp();
|
|
497
430
|
};
|
|
498
|
-
|
|
499
431
|
const onClick = e => {
|
|
500
432
|
const cursor = e.target.selectionStart;
|
|
501
433
|
if (cursor >= maxEditableIndex) setCaret(maxEditableIndex);
|
|
502
434
|
};
|
|
503
|
-
|
|
504
435
|
const onSelect = e => {
|
|
505
436
|
var _e$target, _ref8;
|
|
506
|
-
|
|
507
437
|
const {
|
|
508
438
|
selectionStart,
|
|
509
439
|
selectionEnd
|
|
510
440
|
} = (_e$target = e.target) !== null && _e$target !== void 0 ? _e$target : {};
|
|
511
441
|
setSelectedLength((_ref8 = selectionEnd - selectionStart) !== null && _ref8 !== void 0 ? _ref8 : 0);
|
|
512
442
|
if (selectionStart >= maxEditableIndex) setCaret(maxEditableIndex);
|
|
513
|
-
};
|
|
514
|
-
/// --- OBSERVERS ---///
|
|
515
|
-
// Render Mask
|
|
443
|
+
};
|
|
516
444
|
|
|
445
|
+
// GENERAL EVENT HANDLERS | END //
|
|
517
446
|
|
|
447
|
+
/// --- OBSERVERS ---///
|
|
448
|
+
// Render Mask
|
|
518
449
|
(0, _react.useEffect)(() => {
|
|
519
450
|
setIsInitValue(false);
|
|
520
451
|
setInnerValue([]);
|
|
@@ -539,8 +470,9 @@ function InputMask2() {
|
|
|
539
470
|
setValue(value);
|
|
540
471
|
setIsInitValue(true);
|
|
541
472
|
}
|
|
542
|
-
}, [isMaskRendered, value, isInitValue]);
|
|
473
|
+
}, [isMaskRendered, value, isInitValue]);
|
|
543
474
|
|
|
475
|
+
// OnChange Observer
|
|
544
476
|
(0, _react.useEffect)(() => {
|
|
545
477
|
if (isMaskRendered && isInitValue) {
|
|
546
478
|
setError(false);
|
|
@@ -548,8 +480,8 @@ function InputMask2() {
|
|
|
548
480
|
noLastTyppedCharIndexCheck: true
|
|
549
481
|
})];
|
|
550
482
|
if (returnMaskedValue) values.reverse();
|
|
551
|
-
onChangeProp(...values);
|
|
552
|
-
|
|
483
|
+
onChangeProp(...values);
|
|
484
|
+
//todo Этот функционал ломает логику - инпут начиначиет возвращать промежуточные онченджи с пустым вэлью, при правильной отрисовке форма видит пустое вэлью.
|
|
553
485
|
/*if (
|
|
554
486
|
prevValueRef?.current?.[0] !== values[0] &&
|
|
555
487
|
prevValueRef?.current?.[1] !== values[1] &&
|
|
@@ -560,8 +492,9 @@ function InputMask2() {
|
|
|
560
492
|
onChangeProp(...values);
|
|
561
493
|
}*/
|
|
562
494
|
}
|
|
563
|
-
}, [innerValue, isMaskRendered, isInitValue, value]);
|
|
495
|
+
}, [innerValue, isMaskRendered, isInitValue, value]);
|
|
564
496
|
|
|
497
|
+
// Blink Error
|
|
565
498
|
(0, _react.useEffect)(() => {
|
|
566
499
|
if (blinkError) {
|
|
567
500
|
setTimeout(() => {
|
|
@@ -572,7 +505,9 @@ function InputMask2() {
|
|
|
572
505
|
(0, _react.useEffect)(() => {
|
|
573
506
|
setError(customError !== "");
|
|
574
507
|
setErrorMessage(customError === "" ? errors.default : customError);
|
|
575
|
-
}, [customError, isError]);
|
|
508
|
+
}, [customError, isError]);
|
|
509
|
+
|
|
510
|
+
/// --- RENDER ---///
|
|
576
511
|
|
|
577
512
|
const renderChar = function (obj, i) {
|
|
578
513
|
let className = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "";
|
|
@@ -595,36 +530,27 @@ function InputMask2() {
|
|
|
595
530
|
ref: ref
|
|
596
531
|
}, !isFocused && hideMaskOnBlur && getClearInnerValueAsString().length === 0 ? _config.SPACE_CHAR : isSpecialSymbol ? maskChar : char === "" ? getPlaceholderCharByIndex(i) : char);
|
|
597
532
|
};
|
|
598
|
-
|
|
599
533
|
const renderMaskChar = (obj, i) => renderChar(obj, i, "input-mask_value_item_mask-char");
|
|
600
|
-
|
|
601
534
|
const renderValueChar = (obj, i) => renderChar(obj, i, "input-mask_value_item_value-char");
|
|
602
|
-
|
|
603
535
|
const renderSpecialChar = (obj, i) => renderChar(obj, i, "input-mask_value_item_spec-char");
|
|
604
|
-
|
|
605
536
|
const renderInputValue = () => {
|
|
606
537
|
return innerValue.map((obj, i) => {
|
|
607
538
|
const {
|
|
608
539
|
char,
|
|
609
540
|
isSpecialSymbol
|
|
610
541
|
} = obj;
|
|
611
|
-
|
|
612
542
|
if (isSpecialSymbol) {
|
|
613
543
|
return renderSpecialChar(obj, i);
|
|
614
544
|
}
|
|
615
|
-
|
|
616
545
|
const isMaskItem = (() => char === "")();
|
|
617
|
-
|
|
618
546
|
return isMaskItem ? renderMaskChar(obj, i) : renderValueChar(obj, i);
|
|
619
547
|
});
|
|
620
548
|
};
|
|
621
|
-
|
|
622
549
|
const renderMask = () => {
|
|
623
550
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
624
551
|
className: "input-mask_value"
|
|
625
552
|
}, renderInputValue());
|
|
626
553
|
};
|
|
627
|
-
|
|
628
554
|
const renderInput = () => {
|
|
629
555
|
return /*#__PURE__*/_react.default.createElement("input", (0, _extends2.default)({
|
|
630
556
|
name: name || fieldKey || id || testId || "",
|
|
@@ -653,7 +579,6 @@ function InputMask2() {
|
|
|
653
579
|
onSelect: onSelect
|
|
654
580
|
}, attributesOfNativeInput));
|
|
655
581
|
};
|
|
656
|
-
|
|
657
582
|
const render = () => {
|
|
658
583
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
659
584
|
className: (0, _classnames.default)("input-mask2_wrapper", className, {
|
|
@@ -693,6 +618,5 @@ function InputMask2() {
|
|
|
693
618
|
size: "small"
|
|
694
619
|
}));
|
|
695
620
|
};
|
|
696
|
-
|
|
697
621
|
return render();
|
|
698
622
|
}
|