intelicoreact 2.0.17 → 2.0.19
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/es/Atomic/FormElements/ActionAlert/ActionAlert.js +44 -0
- package/dist/es/Atomic/FormElements/ActionAlert/ActionAlert.js.map +1 -0
- package/dist/es/Atomic/FormElements/ActionAlert/ActionAlert.styles.css +39 -0
- package/dist/es/Atomic/FormElements/ActionAlert/index.js +7 -0
- package/dist/es/Atomic/FormElements/ActionAlert/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +35 -0
- package/dist/es/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js.map +1 -0
- package/dist/es/Atomic/FormElements/AdvancedStatus/AdvancedStatus.styles.css +84 -0
- package/dist/es/Atomic/FormElements/AdvancedStatus/index.js +7 -0
- package/dist/es/Atomic/FormElements/AdvancedStatus/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/Calendar/Calendar.js +154 -0
- package/dist/es/Atomic/FormElements/Calendar/Calendar.js.map +1 -0
- package/dist/es/Atomic/FormElements/Calendar/Calendar.styles.css +142 -0
- package/dist/es/Atomic/FormElements/CheckboxInput/CheckboxInput.js +45 -0
- package/dist/es/Atomic/FormElements/CheckboxInput/CheckboxInput.js.map +1 -0
- package/dist/es/Atomic/FormElements/CheckboxInput/CheckboxInput.styles.css +105 -0
- package/dist/es/Atomic/FormElements/CheckboxInput/index.js +7 -0
- package/dist/es/Atomic/FormElements/CheckboxInput/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +32 -0
- package/dist/es/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js.map +1 -0
- package/dist/es/Atomic/FormElements/CheckboxesLine/CheckboxesLine.styles.css +26 -0
- package/dist/es/Atomic/FormElements/CheckboxesLine/index.js +7 -0
- package/dist/es/Atomic/FormElements/CheckboxesLine/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/Datepicker/Datepicker.js +307 -0
- package/dist/es/Atomic/FormElements/Datepicker/Datepicker.js.map +1 -0
- package/dist/es/Atomic/FormElements/Datepicker/components/DatepickerCalendar.js +95 -0
- package/dist/es/Atomic/FormElements/Datepicker/components/DatepickerCalendar.js.map +1 -0
- package/dist/es/Atomic/FormElements/Dropdown/Dropdown.js +472 -0
- package/dist/es/Atomic/FormElements/Dropdown/Dropdown.js.map +1 -0
- package/dist/es/Atomic/FormElements/Dropdown/Dropdown.styles.css +529 -0
- package/dist/es/Atomic/FormElements/Dropdown/_utils.js +68 -0
- package/dist/es/Atomic/FormElements/Dropdown/_utils.js.map +1 -0
- package/dist/es/Atomic/FormElements/Dropdown/components/DropdownLoader.js +23 -0
- package/dist/es/Atomic/FormElements/Dropdown/components/DropdownLoader.js.map +1 -0
- package/dist/es/Atomic/FormElements/Dropdown/components/DropdownLoader.styles.css +61 -0
- package/dist/es/Atomic/FormElements/Dropdown/index.js +7 -0
- package/dist/es/Atomic/FormElements/Dropdown/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/Dropdown/useDropdown.js +118 -0
- package/dist/es/Atomic/FormElements/Dropdown/useDropdown.js.map +1 -0
- package/dist/es/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +373 -0
- package/dist/es/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js.map +1 -0
- package/dist/es/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.styles.css +411 -0
- package/dist/es/Atomic/FormElements/FileLoader/FileLoader.js +55 -0
- package/dist/es/Atomic/FormElements/FileLoader/FileLoader.js.map +1 -0
- package/dist/es/Atomic/FormElements/FileLoader/FileLoader.styles.css +127 -0
- package/dist/es/Atomic/FormElements/FileLoader/partial/LoadZone.js +86 -0
- package/dist/es/Atomic/FormElements/FileLoader/partial/LoadZone.js.map +1 -0
- package/dist/es/Atomic/FormElements/FileLoader/partial/LoadedContent.js +52 -0
- package/dist/es/Atomic/FormElements/FileLoader/partial/LoadedContent.js.map +1 -0
- package/dist/es/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.js +174 -0
- package/dist/es/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.js.map +1 -0
- package/dist/es/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.styles.css +88 -0
- package/dist/es/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +137 -0
- package/dist/es/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js.map +1 -0
- package/dist/es/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.styles.css +101 -0
- package/dist/es/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +150 -0
- package/dist/es/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js.map +1 -0
- package/dist/es/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.styles.css +14 -0
- package/dist/es/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +75 -0
- package/dist/es/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js.map +1 -0
- package/dist/es/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.styles.css +54 -0
- package/dist/es/Atomic/FormElements/FormattedRawSSN/index.js +7 -0
- package/dist/es/Atomic/FormElements/FormattedRawSSN/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/Input/Input.js +119 -0
- package/dist/es/Atomic/FormElements/Input/Input.js.map +1 -0
- package/dist/es/Atomic/FormElements/Input/Input.styles.css +125 -0
- package/dist/es/Atomic/FormElements/Input/hooks/useErrorBlink.js +57 -0
- package/dist/es/Atomic/FormElements/Input/hooks/useErrorBlink.js.map +1 -0
- package/dist/es/Atomic/FormElements/Input/hooks/useInputFocus.js +34 -0
- package/dist/es/Atomic/FormElements/Input/hooks/useInputFocus.js.map +1 -0
- package/dist/es/Atomic/FormElements/Input/hooks/useInputHover.js +16 -0
- package/dist/es/Atomic/FormElements/Input/hooks/useInputHover.js.map +1 -0
- package/dist/es/Atomic/FormElements/Input/hooks/useInputValueProcessing.js +126 -0
- package/dist/es/Atomic/FormElements/Input/hooks/useInputValueProcessing.js.map +1 -0
- package/dist/es/Atomic/FormElements/Input/hooks/useKeyboardHandling.js +32 -0
- package/dist/es/Atomic/FormElements/Input/hooks/useKeyboardHandling.js.map +1 -0
- package/dist/es/Atomic/FormElements/Input/index.js +7 -0
- package/dist/es/Atomic/FormElements/Input/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputCalendar/InputCalendar.js +89 -0
- package/dist/es/Atomic/FormElements/InputCalendar/InputCalendar.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputCalendar/InputCalendar.styles.css +20 -0
- package/dist/es/Atomic/FormElements/InputColor/InputColor.js +52 -0
- package/dist/es/Atomic/FormElements/InputColor/InputColor.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputColor/InputColor.styles.css +17 -0
- package/dist/es/Atomic/FormElements/InputColor/index.js +7 -0
- package/dist/es/Atomic/FormElements/InputColor/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputCurrency/InputCurrency.js +133 -0
- package/dist/es/Atomic/FormElements/InputCurrency/InputCurrency.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputCurrency/InputCurrency.styles.css +13 -0
- package/dist/es/Atomic/FormElements/InputDateRange/InputDateRange.js +215 -0
- package/dist/es/Atomic/FormElements/InputDateRange/InputDateRange.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputDateRange/InputDateRange.styles.css +594 -0
- package/dist/es/Atomic/FormElements/InputDateRange/components/DateInput.js +45 -0
- package/dist/es/Atomic/FormElements/InputDateRange/components/DateInput.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputDateRange/components/Datepicker.js +422 -0
- package/dist/es/Atomic/FormElements/InputDateRange/components/Datepicker.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputDateRange/components/OpenedPart.js +171 -0
- package/dist/es/Atomic/FormElements/InputDateRange/components/OpenedPart.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputDateRange/components/SelectItem.js +22 -0
- package/dist/es/Atomic/FormElements/InputDateRange/components/SelectItem.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputDateRange/dependencies.js +166 -0
- package/dist/es/Atomic/FormElements/InputDateRange/dependencies.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputLink/InputLink.js +64 -0
- package/dist/es/Atomic/FormElements/InputLink/InputLink.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputLink/InputLink.styles.css +46 -0
- package/dist/es/Atomic/FormElements/InputLink/index.js +7 -0
- package/dist/es/Atomic/FormElements/InputLink/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputMask/InputMask.js +7 -0
- package/dist/es/Atomic/FormElements/InputMask/InputMask.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputMask3/InputMask3.js +486 -0
- package/dist/es/Atomic/FormElements/InputMask3/InputMask3.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputMask3/InputMask3.styles.css +133 -0
- package/dist/es/Atomic/FormElements/InputMask3/config.js +18 -0
- package/dist/es/Atomic/FormElements/InputMask3/config.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputMask3/functions.js +43 -0
- package/dist/es/Atomic/FormElements/InputMask3/functions.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputWithAction/InputWithAction.js +74 -0
- package/dist/es/Atomic/FormElements/InputWithAction/InputWithAction.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputWithAction/InputWithAction.styles.css +88 -0
- package/dist/es/Atomic/FormElements/InputWithAction/index.js +7 -0
- package/dist/es/Atomic/FormElements/InputWithAction/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputsRow/InputsRow.js +118 -0
- package/dist/es/Atomic/FormElements/InputsRow/InputsRow.js.map +1 -0
- package/dist/es/Atomic/FormElements/InputsRow/InputsRow.styles.css +32 -0
- package/dist/es/Atomic/FormElements/InputsRow/index.js +7 -0
- package/dist/es/Atomic/FormElements/InputsRow/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/Label/Label.js +73 -0
- package/dist/es/Atomic/FormElements/Label/Label.js.map +1 -0
- package/dist/es/Atomic/FormElements/Label/Label.styles.css +30 -0
- package/dist/es/Atomic/FormElements/Label/index.js +7 -0
- package/dist/es/Atomic/FormElements/Label/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/MobileCalendar/MobileCalendar.js +339 -0
- package/dist/es/Atomic/FormElements/MobileCalendar/MobileCalendar.js.map +1 -0
- package/dist/es/Atomic/FormElements/MobileCalendar/MobileCalendar.styles.css +74 -0
- package/dist/es/Atomic/FormElements/MultiSelect/MultiSelect.js +40 -0
- package/dist/es/Atomic/FormElements/MultiSelect/MultiSelect.js.map +1 -0
- package/dist/es/Atomic/FormElements/MultiSelect/MultiSelect.styles.css +14 -0
- package/dist/es/Atomic/FormElements/NumericInput/NumericInput.js +204 -0
- package/dist/es/Atomic/FormElements/NumericInput/NumericInput.js.map +1 -0
- package/dist/es/Atomic/FormElements/NumericInput/NumericInput.styles.css +129 -0
- package/dist/es/Atomic/FormElements/RadioGroup/RadioGroup.js +44 -0
- package/dist/es/Atomic/FormElements/RadioGroup/RadioGroup.js.map +1 -0
- package/dist/es/Atomic/FormElements/RadioGroup/RadioGroup.styles.css +20 -0
- package/dist/es/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +57 -0
- package/dist/es/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js.map +1 -0
- package/dist/es/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.styles.css +23 -0
- package/dist/es/Atomic/FormElements/RadioInput/RadioInput.js +35 -0
- package/dist/es/Atomic/FormElements/RadioInput/RadioInput.js.map +1 -0
- package/dist/es/Atomic/FormElements/RadioInput/RadioInput.styles.css +70 -0
- package/dist/es/Atomic/FormElements/RadioInput/index.js +7 -0
- package/dist/es/Atomic/FormElements/RadioInput/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +42 -0
- package/dist/es/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js.map +1 -0
- package/dist/es/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.styles.css +123 -0
- package/dist/es/Atomic/FormElements/RangeCalendar/RangeCalendar.js +98 -0
- package/dist/es/Atomic/FormElements/RangeCalendar/RangeCalendar.js.map +1 -0
- package/dist/es/Atomic/FormElements/RangeCalendar/RangeCalendar.styles.css +103 -0
- package/dist/es/Atomic/FormElements/RangeInputs/RangeInputs.js +128 -0
- package/dist/es/Atomic/FormElements/RangeInputs/RangeInputs.js.map +1 -0
- package/dist/es/Atomic/FormElements/RangeInputs/RangeInputs.styles.css +50 -0
- package/dist/es/Atomic/FormElements/RangeInputs/index.js +7 -0
- package/dist/es/Atomic/FormElements/RangeInputs/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/RangeList/RangeList.js +147 -0
- package/dist/es/Atomic/FormElements/RangeList/RangeList.js.map +1 -0
- package/dist/es/Atomic/FormElements/RangeList/RangeList.styles.css +143 -0
- package/dist/es/Atomic/FormElements/RangeList/index.js +7 -0
- package/dist/es/Atomic/FormElements/RangeList/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/RangeList/partial/RangeListRow.js +40 -0
- package/dist/es/Atomic/FormElements/RangeList/partial/RangeListRow.js.map +1 -0
- package/dist/es/Atomic/FormElements/RangeSlider/RangeSlider.js +342 -0
- package/dist/es/Atomic/FormElements/RangeSlider/RangeSlider.js.map +1 -0
- package/dist/es/Atomic/FormElements/RangeSlider/RangeSlider.styles.css +134 -0
- package/dist/es/Atomic/FormElements/RangeSlider2/RangeSlider2.interface.js +23 -0
- package/dist/es/Atomic/FormElements/RangeSlider2/RangeSlider2.interface.js.map +1 -0
- package/dist/es/Atomic/FormElements/RangeSlider2/RangeSlider2.js +590 -0
- package/dist/es/Atomic/FormElements/RangeSlider2/RangeSlider2.js.map +1 -0
- package/dist/es/Atomic/FormElements/RangeSlider2/RangeSlider2.styles.css +360 -0
- package/dist/es/Atomic/FormElements/SwitchableRow/SwitchableRow.js +29 -0
- package/dist/es/Atomic/FormElements/SwitchableRow/SwitchableRow.js.map +1 -0
- package/dist/es/Atomic/FormElements/SwitchableRow/SwitchableRow.styles.css +14 -0
- package/dist/es/Atomic/FormElements/Switcher/Switcher.js +36 -0
- package/dist/es/Atomic/FormElements/Switcher/Switcher.js.map +1 -0
- package/dist/es/Atomic/FormElements/Switcher/Switcher.styles.css +83 -0
- package/dist/es/Atomic/FormElements/Switcher/index.js +7 -0
- package/dist/es/Atomic/FormElements/Switcher/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +36 -0
- package/dist/es/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js.map +1 -0
- package/dist/es/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.styles.css +21 -0
- package/dist/es/Atomic/FormElements/SwitcherHide/SwitcherHide.js +31 -0
- package/dist/es/Atomic/FormElements/SwitcherHide/SwitcherHide.js.map +1 -0
- package/dist/es/Atomic/FormElements/SwitcherHide/index.js +7 -0
- package/dist/es/Atomic/FormElements/SwitcherHide/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +43 -0
- package/dist/es/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js.map +1 -0
- package/dist/es/Atomic/FormElements/SwitcherRadio/SwitcherRadio.styles.css +22 -0
- package/dist/es/Atomic/FormElements/SwitcherRadio/index.js +7 -0
- package/dist/es/Atomic/FormElements/SwitcherRadio/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/SwitcherRange/SwitcherRange.js +33 -0
- package/dist/es/Atomic/FormElements/SwitcherRange/SwitcherRange.js.map +1 -0
- package/dist/es/Atomic/FormElements/SwitcherRange/index.js +7 -0
- package/dist/es/Atomic/FormElements/SwitcherRange/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +56 -0
- package/dist/es/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js.map +1 -0
- package/dist/es/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.styles.css +0 -0
- package/dist/es/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +99 -0
- package/dist/es/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js.map +1 -0
- package/dist/es/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.styles.css +55 -0
- package/dist/es/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +49 -0
- package/dist/es/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js.map +1 -0
- package/dist/es/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.styles.css +38 -0
- package/dist/es/Atomic/FormElements/TagListToDropdown/TagListToDropdown.js +82 -0
- package/dist/es/Atomic/FormElements/TagListToDropdown/TagListToDropdown.js.map +1 -0
- package/dist/es/Atomic/FormElements/TagsDropdown/TagsDropdown.js +800 -0
- package/dist/es/Atomic/FormElements/TagsDropdown/TagsDropdown.js.map +1 -0
- package/dist/es/Atomic/FormElements/TagsDropdown/TagsDropdown.styles.css +707 -0
- package/dist/es/Atomic/FormElements/Text/Text.js +67 -0
- package/dist/es/Atomic/FormElements/Text/Text.js.map +1 -0
- package/dist/es/Atomic/FormElements/Text/Text.styles.css +12 -0
- package/dist/es/Atomic/FormElements/Text/index.js +7 -0
- package/dist/es/Atomic/FormElements/Text/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/TextSwitcher/TextSwitcher.js +35 -0
- package/dist/es/Atomic/FormElements/TextSwitcher/TextSwitcher.js.map +1 -0
- package/dist/es/Atomic/FormElements/TextSwitcher/TextSwitcher.styles.css +84 -0
- package/dist/es/Atomic/FormElements/Textarea/Textarea.js +73 -0
- package/dist/es/Atomic/FormElements/Textarea/Textarea.js.map +1 -0
- package/dist/es/Atomic/FormElements/Textarea/Textarea.styles.css +102 -0
- package/dist/es/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +124 -0
- package/dist/es/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js.map +1 -0
- package/dist/es/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.styles.css +46 -0
- package/dist/es/Atomic/FormElements/TieredCheckboxes/index.js +7 -0
- package/dist/es/Atomic/FormElements/TieredCheckboxes/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +36 -0
- package/dist/es/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js.map +1 -0
- package/dist/es/Atomic/FormElements/TimeRange/TimeRange.js +55 -0
- package/dist/es/Atomic/FormElements/TimeRange/TimeRange.js.map +1 -0
- package/dist/es/Atomic/FormElements/TimeRange/TimeRange.styles.css +18 -0
- package/dist/es/Atomic/FormElements/TimeRange/index.js +7 -0
- package/dist/es/Atomic/FormElements/TimeRange/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/UserContacts/UserContacts.js +115 -0
- package/dist/es/Atomic/FormElements/UserContacts/UserContacts.js.map +1 -0
- package/dist/es/Atomic/FormElements/UserContacts/UserContacts.styles.css +15 -0
- package/dist/es/Atomic/FormElements/UserContacts/index.js +7 -0
- package/dist/es/Atomic/FormElements/UserContacts/index.js.map +1 -0
- package/dist/es/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +52 -0
- package/dist/es/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js.map +1 -0
- package/dist/es/Atomic/FormElements/VariantsListRadio/VariantsListRadio.styles.css +213 -0
- package/dist/es/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +61 -0
- package/dist/es/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js.map +1 -0
- package/dist/es/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +62 -0
- package/dist/es/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js.map +1 -0
- package/dist/es/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.styles.css +70 -0
- package/dist/es/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +82 -0
- package/dist/es/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js.map +1 -0
- package/dist/es/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.styles.css +70 -0
- package/dist/es/Atomic/Layout/Header/Header.js +87 -0
- package/dist/es/Atomic/Layout/Header/Header.js.map +1 -0
- package/dist/es/Atomic/Layout/Header/Header.styles.css +82 -0
- package/dist/es/Atomic/Layout/MainMenu/MainMenu.js +134 -0
- package/dist/es/Atomic/Layout/MainMenu/MainMenu.js.map +1 -0
- package/dist/es/Atomic/Layout/MainMenu/MainMenu.styles.css +205 -0
- package/dist/es/Atomic/Layout/Spinner/Spinner.js +32 -0
- package/dist/es/Atomic/Layout/Spinner/Spinner.js.map +1 -0
- package/dist/es/Atomic/Layout/Spinner/Spinner.styles.css +82 -0
- package/dist/es/Atomic/Layout/Spinner/index.js +7 -0
- package/dist/es/Atomic/Layout/Spinner/index.js.map +1 -0
- package/dist/es/Atomic/UI/Accordion/Accordion.js +48 -0
- package/dist/es/Atomic/UI/Accordion/Accordion.js.map +1 -0
- package/dist/es/Atomic/UI/Accordion/Accordion.styles.css +133 -0
- package/dist/es/Atomic/UI/Accordion/AccordionItem.js +110 -0
- package/dist/es/Atomic/UI/Accordion/AccordionItem.js.map +1 -0
- package/dist/es/Atomic/UI/Accordion/index.js +7 -0
- package/dist/es/Atomic/UI/Accordion/index.js.map +1 -0
- package/dist/es/Atomic/UI/AccordionTable/AccordionTable.js +167 -0
- package/dist/es/Atomic/UI/AccordionTable/AccordionTable.js.map +1 -0
- package/dist/es/Atomic/UI/AccordionTable/AccordionTable.styles.css +228 -0
- package/dist/es/Atomic/UI/AccordionText/AccordionText.js +47 -0
- package/dist/es/Atomic/UI/AccordionText/AccordionText.js.map +1 -0
- package/dist/es/Atomic/UI/AccordionText/AccordionText.styles.css +48 -0
- package/dist/es/Atomic/UI/AdvancedTag/AdvTag.js +148 -0
- package/dist/es/Atomic/UI/AdvancedTag/AdvTag.js.map +1 -0
- package/dist/es/Atomic/UI/AdvancedTag/AdvancedTags.js +40 -0
- package/dist/es/Atomic/UI/AdvancedTag/AdvancedTags.js.map +1 -0
- package/dist/es/Atomic/UI/AdvancedTag/AdvancedTags.styles.css +106 -0
- package/dist/es/Atomic/UI/AdvancedTag/index.js +8 -0
- package/dist/es/Atomic/UI/AdvancedTag/index.js.map +1 -0
- package/dist/es/Atomic/UI/Alert/Alert.js +54 -0
- package/dist/es/Atomic/UI/Alert/Alert.js.map +1 -0
- package/dist/es/Atomic/UI/Alert/Alert.styles.css +65 -0
- package/dist/es/Atomic/UI/Alert/index.js +7 -0
- package/dist/es/Atomic/UI/Alert/index.js.map +1 -0
- package/dist/es/Atomic/UI/Arrow/Arrow.js +107 -0
- package/dist/es/Atomic/UI/Arrow/Arrow.js.map +1 -0
- package/dist/es/Atomic/UI/Arrow/Arrow.styles.css +14 -0
- package/dist/es/Atomic/UI/Box/Box.js +33 -0
- package/dist/es/Atomic/UI/Box/Box.js.map +1 -0
- package/dist/es/Atomic/UI/Box/Box.styles.css +62 -0
- package/dist/es/Atomic/UI/Button/Button.js +35 -0
- package/dist/es/Atomic/UI/Button/Button.js.map +1 -0
- package/dist/es/Atomic/UI/Button/Button.styles.css +124 -0
- package/dist/es/Atomic/UI/ButtonsBar/ButtonsBar.js +49 -0
- package/dist/es/Atomic/UI/ButtonsBar/ButtonsBar.js.map +1 -0
- package/dist/es/Atomic/UI/ButtonsBar/ButtonsBar.styles.css +7 -0
- package/dist/es/Atomic/UI/ButtonsBar/index.js +7 -0
- package/dist/es/Atomic/UI/ButtonsBar/index.js.map +1 -0
- package/dist/es/Atomic/UI/Chart/Chart.js +96 -0
- package/dist/es/Atomic/UI/Chart/Chart.js.map +1 -0
- package/dist/es/Atomic/UI/Chart/Chart.styles.css +45 -0
- package/dist/es/Atomic/UI/Chart/index.js +7 -0
- package/dist/es/Atomic/UI/Chart/index.js.map +1 -0
- package/dist/es/Atomic/UI/Chart/partial/Chart.constants.js +89 -0
- package/dist/es/Atomic/UI/Chart/partial/Chart.constants.js.map +1 -0
- package/dist/es/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +80 -0
- package/dist/es/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js.map +1 -0
- package/dist/es/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.styles.css +16 -0
- package/dist/es/Atomic/UI/Chart/partial/datasetSetters.js +78 -0
- package/dist/es/Atomic/UI/Chart/partial/datasetSetters.js.map +1 -0
- package/dist/es/Atomic/UI/Chart/partial/optionsConstructor.js +259 -0
- package/dist/es/Atomic/UI/Chart/partial/optionsConstructor.js.map +1 -0
- package/dist/es/Atomic/UI/Chart/partial/optionsSetters.js +35 -0
- package/dist/es/Atomic/UI/Chart/partial/optionsSetters.js.map +1 -0
- package/dist/es/Atomic/UI/Chart/partial/utils.js +37 -0
- package/dist/es/Atomic/UI/Chart/partial/utils.js.map +1 -0
- package/dist/es/Atomic/UI/CircleProgressBar/CircleProgressBar.js +85 -0
- package/dist/es/Atomic/UI/CircleProgressBar/CircleProgressBar.js.map +1 -0
- package/dist/es/Atomic/UI/CircleProgressBar/CircleProgressBar.styles.css +31 -0
- package/dist/es/Atomic/UI/DateTime/DateTime.js +45 -0
- package/dist/es/Atomic/UI/DateTime/DateTime.js.map +1 -0
- package/dist/es/Atomic/UI/DateTime/DateTime.styles.css +33 -0
- package/dist/es/Atomic/UI/DebugContainer/DebugContainer.js +45 -0
- package/dist/es/Atomic/UI/DebugContainer/DebugContainer.js.map +1 -0
- package/dist/es/Atomic/UI/DebugContainer/DebugContainer.styles.css +32 -0
- package/dist/es/Atomic/UI/DebugContainer/useDebugContainer.js +16 -0
- package/dist/es/Atomic/UI/DebugContainer/useDebugContainer.js.map +1 -0
- package/dist/es/Atomic/UI/DoubleString/DoubleString.js +77 -0
- package/dist/es/Atomic/UI/DoubleString/DoubleString.js.map +1 -0
- package/dist/es/Atomic/UI/DoubleString/DoubleString.styles.css +42 -0
- package/dist/es/Atomic/UI/DoubleString/index.js +7 -0
- package/dist/es/Atomic/UI/DoubleString/index.js.map +1 -0
- package/dist/es/Atomic/UI/Hint/Hint.js +218 -0
- package/dist/es/Atomic/UI/Hint/Hint.js.map +1 -0
- package/dist/es/Atomic/UI/Hint/Hint.styles.css +107 -0
- package/dist/es/Atomic/UI/Hint/index.js +7 -0
- package/dist/es/Atomic/UI/Hint/index.js.map +1 -0
- package/dist/es/Atomic/UI/Hint/partials/_constants.js +11 -0
- package/dist/es/Atomic/UI/Hint/partials/_constants.js.map +1 -0
- package/dist/es/Atomic/UI/Hint/partials/_utils.js +35 -0
- package/dist/es/Atomic/UI/Hint/partials/_utils.js.map +1 -0
- package/dist/es/Atomic/UI/Modal/Modal.js +178 -0
- package/dist/es/Atomic/UI/Modal/Modal.js.map +1 -0
- package/dist/es/Atomic/UI/Modal/Modal.styles.css +337 -0
- package/dist/es/Atomic/UI/Modal/ModalHOC.js +64 -0
- package/dist/es/Atomic/UI/Modal/ModalHOC.js.map +1 -0
- package/dist/es/Atomic/UI/Modal/ModalMobile.styles.css +60 -0
- package/dist/es/Atomic/UI/Modal/index.js +13 -0
- package/dist/es/Atomic/UI/Modal/index.js.map +1 -0
- package/dist/es/Atomic/UI/Modal/partials/ModalFooter.js +19 -0
- package/dist/es/Atomic/UI/Modal/partials/ModalFooter.js.map +1 -0
- package/dist/es/Atomic/UI/Modal/partials/ModalTitle.js +43 -0
- package/dist/es/Atomic/UI/Modal/partials/ModalTitle.js.map +1 -0
- package/dist/es/Atomic/UI/Modal/partials/_constants.js +26 -0
- package/dist/es/Atomic/UI/Modal/partials/_constants.js.map +1 -0
- package/dist/es/Atomic/UI/Modal/partials/_utils.js +45 -0
- package/dist/es/Atomic/UI/Modal/partials/_utils.js.map +1 -0
- package/dist/es/Atomic/UI/Modal/partials/useMobileModal.js +141 -0
- package/dist/es/Atomic/UI/Modal/partials/useMobileModal.js.map +1 -0
- package/dist/es/Atomic/UI/MonoAccordion/MonoAccordion.js +59 -0
- package/dist/es/Atomic/UI/MonoAccordion/MonoAccordion.js.map +1 -0
- package/dist/es/Atomic/UI/MonoAccordion/MonoAccordion.styles.css +110 -0
- package/dist/es/Atomic/UI/MonoAccordion/index.js +7 -0
- package/dist/es/Atomic/UI/MonoAccordion/index.js.map +1 -0
- package/dist/es/Atomic/UI/NavLine/NavLine.js +209 -0
- package/dist/es/Atomic/UI/NavLine/NavLine.js.map +1 -0
- package/dist/es/Atomic/UI/NavLine/NavLine.styles.css +187 -0
- package/dist/es/Atomic/UI/NavLine/index.js +7 -0
- package/dist/es/Atomic/UI/NavLine/index.js.map +1 -0
- package/dist/es/Atomic/UI/PageTitle/PageTitle.js +49 -0
- package/dist/es/Atomic/UI/PageTitle/PageTitle.js.map +1 -0
- package/dist/es/Atomic/UI/PageTitle/PageTitle.styles.css +89 -0
- package/dist/es/Atomic/UI/PageTitle/index.js +7 -0
- package/dist/es/Atomic/UI/PageTitle/index.js.map +1 -0
- package/dist/es/Atomic/UI/PieChart/PieChart.js +41 -0
- package/dist/es/Atomic/UI/PieChart/PieChart.js.map +1 -0
- package/dist/es/Atomic/UI/PieChart/PieChart.styles.css +44 -0
- package/dist/es/Atomic/UI/Price/Price.js +20 -0
- package/dist/es/Atomic/UI/Price/Price.js.map +1 -0
- package/dist/es/Atomic/UI/Price/index.js +7 -0
- package/dist/es/Atomic/UI/Price/index.js.map +1 -0
- package/dist/es/Atomic/UI/PriceRange/PriceRange.js +33 -0
- package/dist/es/Atomic/UI/PriceRange/PriceRange.js.map +1 -0
- package/dist/es/Atomic/UI/PriceRange/index.js +7 -0
- package/dist/es/Atomic/UI/PriceRange/index.js.map +1 -0
- package/dist/es/Atomic/UI/ProgressLine/ProgressLine.js +74 -0
- package/dist/es/Atomic/UI/ProgressLine/ProgressLine.js.map +1 -0
- package/dist/es/Atomic/UI/ProgressLine/ProgressLine.styles.css +243 -0
- package/dist/es/Atomic/UI/ProgressLine/index.js +7 -0
- package/dist/es/Atomic/UI/ProgressLine/index.js.map +1 -0
- package/dist/es/Atomic/UI/Status/Status.js +48 -0
- package/dist/es/Atomic/UI/Status/Status.js.map +1 -0
- package/dist/es/Atomic/UI/Status/Status.styles.css +98 -0
- package/dist/es/Atomic/UI/Status/index.js +7 -0
- package/dist/es/Atomic/UI/Status/index.js.map +1 -0
- package/dist/es/Atomic/UI/Table/Partials/TdCell.js +67 -0
- package/dist/es/Atomic/UI/Table/Partials/TdCell.js.map +1 -0
- package/dist/es/Atomic/UI/Table/Partials/TdHeader.js +43 -0
- package/dist/es/Atomic/UI/Table/Partials/TdHeader.js.map +1 -0
- package/dist/es/Atomic/UI/Table/Partials/TdRow.js +56 -0
- package/dist/es/Atomic/UI/Table/Partials/TdRow.js.map +1 -0
- package/dist/es/Atomic/UI/Table/Table.js +36 -0
- package/dist/es/Atomic/UI/Table/Table.js.map +1 -0
- package/dist/es/Atomic/UI/Table/Table.styles.css +63 -0
- package/dist/es/Atomic/UI/Table/TdTypes/TdActions.js +56 -0
- package/dist/es/Atomic/UI/Table/TdTypes/TdActions.js.map +1 -0
- package/dist/es/Atomic/UI/Table/TdTypes/TdPriority.js +29 -0
- package/dist/es/Atomic/UI/Table/TdTypes/TdPriority.js.map +1 -0
- package/dist/es/Atomic/UI/Table/TdTypes/TdRange.js +14 -0
- package/dist/es/Atomic/UI/Table/TdTypes/TdRange.js.map +1 -0
- package/dist/es/Atomic/UI/Table/TdTypes/TdTypes.styles.css +29 -0
- package/dist/es/Atomic/UI/Table/TdTypes/TdWeight.js +43 -0
- package/dist/es/Atomic/UI/Table/TdTypes/TdWeight.js.map +1 -0
- package/dist/es/Atomic/UI/Tag/Tag.js +110 -0
- package/dist/es/Atomic/UI/Tag/Tag.js.map +1 -0
- package/dist/es/Atomic/UI/Tag/Tag.styles.css +148 -0
- package/dist/es/Atomic/UI/Tag/index.js +7 -0
- package/dist/es/Atomic/UI/Tag/index.js.map +1 -0
- package/dist/es/Atomic/UI/TagList/TagList.js +152 -0
- package/dist/es/Atomic/UI/TagList/TagList.js.map +1 -0
- package/dist/es/Atomic/UI/TagList/TagList.styles.css +59 -0
- package/dist/es/Atomic/UI/UserBox/UserBox.js +49 -0
- package/dist/es/Atomic/UI/UserBox/UserBox.js.map +1 -0
- package/dist/es/Atomic/UI/UserBox/UserBox.styles.css +64 -0
- package/dist/es/Atomic/UI/UserBox/index.js +7 -0
- package/dist/es/Atomic/UI/UserBox/index.js.map +1 -0
- package/dist/es/Atomic/UI/WizardStepper/constructor.js +12 -0
- package/dist/es/Atomic/UI/WizardStepper/constructor.js.map +1 -0
- package/dist/es/Atomic/UI/WizardStepper/index.js +7 -0
- package/dist/es/Atomic/UI/WizardStepper/index.js.map +1 -0
- package/dist/es/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.js +52 -0
- package/dist/es/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.js.map +1 -0
- package/dist/es/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.styles.css +23 -0
- package/dist/es/Atomic/UI/WizardStepper/ui/StateIcon/index.js +7 -0
- package/dist/es/Atomic/UI/WizardStepper/ui/StateIcon/index.js.map +1 -0
- package/dist/es/Atomic/UI/WizardStepper/ui/StepRow/StepRow.js +67 -0
- package/dist/es/Atomic/UI/WizardStepper/ui/StepRow/StepRow.js.map +1 -0
- package/dist/es/Atomic/UI/WizardStepper/ui/StepRow/StepRow.styles.css +60 -0
- package/dist/es/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.js +43 -0
- package/dist/es/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.js.map +1 -0
- package/dist/es/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.styles.css +64 -0
- package/dist/es/Atomic/UI/WizardStepper/ui/StepWrapper/index.js +7 -0
- package/dist/es/Atomic/UI/WizardStepper/ui/StepWrapper/index.js.map +1 -0
- package/dist/es/Atomic/UI/WizardStepper/ui/icons.js +124 -0
- package/dist/es/Atomic/UI/WizardStepper/ui/icons.js.map +1 -0
- package/dist/es/Atomic/UI/WizardStepper/ui/index.js +7 -0
- package/dist/es/Atomic/UI/WizardStepper/ui/index.js.map +1 -0
- package/dist/es/Classes/AbortableFetch.js +271 -0
- package/dist/es/Classes/AbortableFetch.js.map +1 -0
- package/dist/es/Classes/AnimatedHandler.js +27 -0
- package/dist/es/Classes/AnimatedHandler.js.map +1 -0
- package/dist/es/Classes/RESTAPI/index.js +112 -0
- package/dist/es/Classes/RESTAPI/index.js.map +1 -0
- package/dist/es/Classes/RESTAPI/partials/AbortableFetch.js +323 -0
- package/dist/es/Classes/RESTAPI/partials/AbortableFetch.js.map +1 -0
- package/dist/es/Classes/RESTAPI/partials/ApiBase.js +38 -0
- package/dist/es/Classes/RESTAPI/partials/ApiBase.js.map +1 -0
- package/dist/es/Classes/RESTAPI/partials/ApiRequestCreators.js +151 -0
- package/dist/es/Classes/RESTAPI/partials/ApiRequestCreators.js.map +1 -0
- package/dist/es/Classes/RESTAPI/partials/ApiUtils.js +142 -0
- package/dist/es/Classes/RESTAPI/partials/ApiUtils.js.map +1 -0
- package/dist/es/Classes/RESTAPI/partials/CredentialsProcessing.js +212 -0
- package/dist/es/Classes/RESTAPI/partials/CredentialsProcessing.js.map +1 -0
- package/dist/es/Classes/RESTAPI/partials/Utils.js +70 -0
- package/dist/es/Classes/RESTAPI/partials/Utils.js.map +1 -0
- package/dist/es/Classes/RESTAPI/partials/_utils.js +144 -0
- package/dist/es/Classes/RESTAPI/partials/_utils.js.map +1 -0
- package/dist/es/Classes/RESTAPI/partials/sse.js +127 -0
- package/dist/es/Classes/RESTAPI/partials/sse.js.map +1 -0
- package/dist/es/Constants/index.constants.js +78 -0
- package/dist/es/Constants/index.constants.js.map +1 -0
- package/dist/es/Functions/Portal.js +21 -0
- package/dist/es/Functions/Portal.js.map +1 -0
- package/dist/es/Functions/customEventListener.js +67 -0
- package/dist/es/Functions/customEventListener.js.map +1 -0
- package/dist/es/Functions/dateTime.js +113 -0
- package/dist/es/Functions/dateTime.js.map +1 -0
- package/dist/es/Functions/fieldValueFormatters.js +193 -0
- package/dist/es/Functions/fieldValueFormatters.js.map +1 -0
- package/dist/es/Functions/guards/assertions.js +265 -0
- package/dist/es/Functions/guards/assertions.js.map +1 -0
- package/dist/es/Functions/guards/safeValue.js +66 -0
- package/dist/es/Functions/guards/safeValue.js.map +1 -0
- package/dist/es/Functions/guards/typeGuards.js +397 -0
- package/dist/es/Functions/guards/typeGuards.js.map +1 -0
- package/dist/es/Functions/hooks/useFormFieldsChangesManager.js +84 -0
- package/dist/es/Functions/hooks/useFormFieldsChangesManager.js.map +1 -0
- package/dist/es/Functions/locale/createTranslator.js +23 -0
- package/dist/es/Functions/locale/createTranslator.js.map +1 -0
- package/dist/es/Functions/operations.js +88 -0
- package/dist/es/Functions/operations.js.map +1 -0
- package/dist/es/Functions/presets/inputMaskPresets.js +82 -0
- package/dist/es/Functions/presets/inputMaskPresets.js.map +1 -0
- package/dist/es/Functions/presets/inputPresets.js +50 -0
- package/dist/es/Functions/presets/inputPresets.js.map +1 -0
- package/dist/es/Functions/presets/mobileKeyboardTypesPresets.js +11 -0
- package/dist/es/Functions/presets/mobileKeyboardTypesPresets.js.map +1 -0
- package/dist/es/Functions/sdk/runtime-sdk/client.js +161 -0
- package/dist/es/Functions/sdk/runtime-sdk/client.js.map +1 -0
- package/dist/es/Functions/sdk/runtime-sdk/config.js +77 -0
- package/dist/es/Functions/sdk/runtime-sdk/config.js.map +1 -0
- package/dist/es/Functions/sdk/runtime-sdk/queue.js +131 -0
- package/dist/es/Functions/sdk/runtime-sdk/queue.js.map +1 -0
- package/dist/es/Functions/sdk/runtime-sdk/transport.js +114 -0
- package/dist/es/Functions/sdk/runtime-sdk/transport.js.map +1 -0
- package/dist/es/Functions/useBodyScrollLock.js +15 -0
- package/dist/es/Functions/useBodyScrollLock.js.map +1 -0
- package/dist/es/Functions/useClickOutside.js +17 -0
- package/dist/es/Functions/useClickOutside.js.map +1 -0
- package/dist/es/Functions/useDebounce.js +18 -0
- package/dist/es/Functions/useDebounce.js.map +1 -0
- package/dist/es/Functions/useFieldFocus.js +62 -0
- package/dist/es/Functions/useFieldFocus.js.map +1 -0
- package/dist/es/Functions/useFormTools/form-drivers/ArrayWithObjects.js +29 -0
- package/dist/es/Functions/useFormTools/form-drivers/ArrayWithObjects.js.map +1 -0
- package/dist/es/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +95 -0
- package/dist/es/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js.map +1 -0
- package/dist/es/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +49 -0
- package/dist/es/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js.map +1 -0
- package/dist/es/Functions/useFormTools/functions/General.js +87 -0
- package/dist/es/Functions/useFormTools/functions/General.js.map +1 -0
- package/dist/es/Functions/useFormTools/functions/RenderFields.js +70 -0
- package/dist/es/Functions/useFormTools/functions/RenderFields.js.map +1 -0
- package/dist/es/Functions/useFormTools/index.js +464 -0
- package/dist/es/Functions/useFormTools/index.js.map +1 -0
- package/dist/es/Functions/useInputHighlightError.js +50 -0
- package/dist/es/Functions/useInputHighlightError.js.map +1 -0
- package/dist/es/Functions/useIsMobile/index.js +7 -0
- package/dist/es/Functions/useIsMobile/index.js.map +1 -0
- package/dist/es/Functions/useIsMobile/useIsMobile.js +32 -0
- package/dist/es/Functions/useIsMobile/useIsMobile.js.map +1 -0
- package/dist/es/Functions/useKeyPress/useHandleKeyPress.js +38 -0
- package/dist/es/Functions/useKeyPress/useHandleKeyPress.js.map +1 -0
- package/dist/es/Functions/useKeyPress/useKeyPress.js +54 -0
- package/dist/es/Functions/useKeyPress/useKeyPress.js.map +1 -0
- package/dist/es/Functions/useLocalStorage.js +28 -0
- package/dist/es/Functions/useLocalStorage.js.map +1 -0
- package/dist/es/Functions/useLocationParams.js +27 -0
- package/dist/es/Functions/useLocationParams.js.map +1 -0
- package/dist/es/Functions/useMediaQuery.js +14 -0
- package/dist/es/Functions/useMediaQuery.js.map +1 -0
- package/dist/es/Functions/useMetaInfo.js +33 -0
- package/dist/es/Functions/useMetaInfo.js.map +1 -0
- package/dist/es/Functions/useMouseUpOutside.js +17 -0
- package/dist/es/Functions/useMouseUpOutside.js.map +1 -0
- package/dist/es/Functions/useOnlineStatus.js +23 -0
- package/dist/es/Functions/useOnlineStatus.js.map +1 -0
- package/dist/es/Functions/usePasswordChecker.js +116 -0
- package/dist/es/Functions/usePasswordChecker.js.map +1 -0
- package/dist/es/Functions/usePrevious.js +13 -0
- package/dist/es/Functions/usePrevious.js.map +1 -0
- package/dist/es/Functions/useResize.js +24 -0
- package/dist/es/Functions/useResize.js.map +1 -0
- package/dist/es/Functions/useScrollTo.js +17 -0
- package/dist/es/Functions/useScrollTo.js.map +1 -0
- package/dist/es/Functions/useToggle.js +15 -0
- package/dist/es/Functions/useToggle.js.map +1 -0
- package/dist/es/Functions/utils/disableDefaultBehavior/disableDefaultBehavior.js +9 -0
- package/dist/es/Functions/utils/disableDefaultBehavior/disableDefaultBehavior.js.map +1 -0
- package/dist/es/Functions/utils/getLimitedMask/getLimitedMask.js +39 -0
- package/dist/es/Functions/utils/getLimitedMask/getLimitedMask.js.map +1 -0
- package/dist/es/Functions/utils.js +288 -0
- package/dist/es/Functions/utils.js.map +1 -0
- package/dist/es/Langs.js +166 -0
- package/dist/es/Langs.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/AffiliateNetworks.js +33 -0
- package/dist/es/Molecular/CustomIcons/components/AffiliateNetworks.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/AlertCircle.js +30 -0
- package/dist/es/Molecular/CustomIcons/components/AlertCircle.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/AppStore.js +34 -0
- package/dist/es/Molecular/CustomIcons/components/AppStore.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Arrow.js +43 -0
- package/dist/es/Molecular/CustomIcons/components/Arrow.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/ArrowDown.js +21 -0
- package/dist/es/Molecular/CustomIcons/components/ArrowDown.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/ArrowLeft.js +21 -0
- package/dist/es/Molecular/CustomIcons/components/ArrowLeft.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/ArrowRight.js +21 -0
- package/dist/es/Molecular/CustomIcons/components/ArrowRight.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/ArrowUp.js +21 -0
- package/dist/es/Molecular/CustomIcons/components/ArrowUp.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Bell.js +19 -0
- package/dist/es/Molecular/CustomIcons/components/Bell.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Button.js +19 -0
- package/dist/es/Molecular/CustomIcons/components/Button.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Campaigns.js +20 -0
- package/dist/es/Molecular/CustomIcons/components/Campaigns.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Check.js +15 -0
- package/dist/es/Molecular/CustomIcons/components/Check.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Check2.js +19 -0
- package/dist/es/Molecular/CustomIcons/components/Check2.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/ChevronDown.js +19 -0
- package/dist/es/Molecular/CustomIcons/components/ChevronDown.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/ChevronDownDisabled.js +19 -0
- package/dist/es/Molecular/CustomIcons/components/ChevronDownDisabled.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/ChevronLeft.js +19 -0
- package/dist/es/Molecular/CustomIcons/components/ChevronLeft.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/ChevronRight.js +19 -0
- package/dist/es/Molecular/CustomIcons/components/ChevronRight.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/ChevronUp.js +19 -0
- package/dist/es/Molecular/CustomIcons/components/ChevronUp.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/ChevronUpDown.js +33 -0
- package/dist/es/Molecular/CustomIcons/components/ChevronUpDown.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Close.js +20 -0
- package/dist/es/Molecular/CustomIcons/components/Close.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/ColumnsOrder.js +53 -0
- package/dist/es/Molecular/CustomIcons/components/ColumnsOrder.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Delete.js +20 -0
- package/dist/es/Molecular/CustomIcons/components/Delete.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Edit.js +19 -0
- package/dist/es/Molecular/CustomIcons/components/Edit.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Email.js +36 -0
- package/dist/es/Molecular/CustomIcons/components/Email.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/FinturfLogo.js +33 -0
- package/dist/es/Molecular/CustomIcons/components/FinturfLogo.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/FinturfLogo2.js +41 -0
- package/dist/es/Molecular/CustomIcons/components/FinturfLogo2.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Flows.js +19 -0
- package/dist/es/Molecular/CustomIcons/components/Flows.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Gift.js +21 -0
- package/dist/es/Molecular/CustomIcons/components/Gift.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/GoogleAuth.js +34 -0
- package/dist/es/Molecular/CustomIcons/components/GoogleAuth.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/GooglePlay.js +34 -0
- package/dist/es/Molecular/CustomIcons/components/GooglePlay.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/HelpCircle.js +22 -0
- package/dist/es/Molecular/CustomIcons/components/HelpCircle.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/HelpCircle2.js +23 -0
- package/dist/es/Molecular/CustomIcons/components/HelpCircle2.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/HelpCircleFilled.js +22 -0
- package/dist/es/Molecular/CustomIcons/components/HelpCircleFilled.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Home.js +22 -0
- package/dist/es/Molecular/CustomIcons/components/Home.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Home2.js +25 -0
- package/dist/es/Molecular/CustomIcons/components/Home2.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Key.js +24 -0
- package/dist/es/Molecular/CustomIcons/components/Key.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Landers.js +23 -0
- package/dist/es/Molecular/CustomIcons/components/Landers.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Lock.js +19 -0
- package/dist/es/Molecular/CustomIcons/components/Lock.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Mail.js +28 -0
- package/dist/es/Molecular/CustomIcons/components/Mail.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Mastercard.js +81 -0
- package/dist/es/Molecular/CustomIcons/components/Mastercard.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Minus.js +34 -0
- package/dist/es/Molecular/CustomIcons/components/Minus.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Offers.js +20 -0
- package/dist/es/Molecular/CustomIcons/components/Offers.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Pause.js +34 -0
- package/dist/es/Molecular/CustomIcons/components/Pause.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/PayPal.js +54 -0
- package/dist/es/Molecular/CustomIcons/components/PayPal.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/PayPalLightLarge.js +39 -0
- package/dist/es/Molecular/CustomIcons/components/PayPalLightLarge.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Phone.js +33 -0
- package/dist/es/Molecular/CustomIcons/components/Phone.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Play.js +34 -0
- package/dist/es/Molecular/CustomIcons/components/Play.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Plus.js +34 -0
- package/dist/es/Molecular/CustomIcons/components/Plus.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Profile.js +24 -0
- package/dist/es/Molecular/CustomIcons/components/Profile.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/QRCode.js +35 -0
- package/dist/es/Molecular/CustomIcons/components/QRCode.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Rectangle.js +19 -0
- package/dist/es/Molecular/CustomIcons/components/Rectangle.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Revert.js +22 -0
- package/dist/es/Molecular/CustomIcons/components/Revert.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Star.js +18 -0
- package/dist/es/Molecular/CustomIcons/components/Star.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Star2.js +20 -0
- package/dist/es/Molecular/CustomIcons/components/Star2.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/TrafficSources.js +19 -0
- package/dist/es/Molecular/CustomIcons/components/TrafficSources.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Trash.js +19 -0
- package/dist/es/Molecular/CustomIcons/components/Trash.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/TrashRed.js +19 -0
- package/dist/es/Molecular/CustomIcons/components/TrashRed.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Triggers.js +19 -0
- package/dist/es/Molecular/CustomIcons/components/Triggers.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/User.js +21 -0
- package/dist/es/Molecular/CustomIcons/components/User.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/Visa.js +41 -0
- package/dist/es/Molecular/CustomIcons/components/Visa.js.map +1 -0
- package/dist/es/Molecular/CustomIcons/components/X.js +19 -0
- package/dist/es/Molecular/CustomIcons/components/X.js.map +1 -0
- package/dist/es/Molecular/FormElement/FormElement.js +37 -0
- package/dist/es/Molecular/FormElement/FormElement.js.map +1 -0
- package/dist/es/Molecular/FormElement/FormElement.styles.css +21 -0
- package/dist/es/Molecular/FormWithDependOn/FormWithDependOn.js +111 -0
- package/dist/es/Molecular/FormWithDependOn/FormWithDependOn.js.map +1 -0
- package/dist/es/Molecular/FormWithDependOn/partials/_utils.js +33 -0
- package/dist/es/Molecular/FormWithDependOn/partials/_utils.js.map +1 -0
- package/dist/es/Molecular/InputAddress/InputAddress.js +352 -0
- package/dist/es/Molecular/InputAddress/InputAddress.js.map +1 -0
- package/dist/es/Molecular/InputAddress/InputAddress.styles.css +353 -0
- package/dist/es/Molecular/InputCustomFetch/InputCustomFetch.js +355 -0
- package/dist/es/Molecular/InputCustomFetch/InputCustomFetch.js.map +1 -0
- package/dist/es/Molecular/InputCustomFetch/InputCustomFetch.styles.css +358 -0
- package/dist/es/Molecular/InputCustomFetch/lib/hooks/useDebouncedCallback.js +27 -0
- package/dist/es/Molecular/InputCustomFetch/lib/hooks/useDebouncedCallback.js.map +1 -0
- package/dist/es/Molecular/InputCustomFetch/lib/hooks/useFetchWithAbort.js +50 -0
- package/dist/es/Molecular/InputCustomFetch/lib/hooks/useFetchWithAbort.js.map +1 -0
- package/dist/es/Molecular/InputCustomFetch/lib/utils.js +24 -0
- package/dist/es/Molecular/InputCustomFetch/lib/utils.js.map +1 -0
- package/dist/es/Molecular/InputPassword/InputPassword.js +47 -0
- package/dist/es/Molecular/InputPassword/InputPassword.js.map +1 -0
- package/dist/es/Molecular/InputPassword/InputPassword.styles.css +23 -0
- package/dist/es/_virtual/_rolldown/runtime.js +1 -15
- package/dist/es/charts.js +2 -3
- package/dist/es/classes.js +1 -1
- package/dist/es/form.js +68 -93
- package/dist/es/hooks.js +12 -17
- package/dist/es/icons.js +126 -6
- package/dist/es/index.js +145 -70
- package/dist/es/layout.js +3 -3
- package/dist/es/presets.js +6 -6
- package/dist/es/router-ui.js +5 -8
- package/dist/es/sdk.js +3 -1
- package/dist/es/types/index.js +0 -2
- package/dist/es/ui.js +30 -39
- package/dist/es/utils.js +5 -6
- package/package.json +3 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useErrorBlink.js","names":[],"sources":["../../../../../../src/Atomic/FormElements/Input/hooks/useErrorBlink.ts"],"sourcesContent":["import type { KeyboardEvent } from 'react';\nimport type { InputProps } from '../types';\nimport { useEffect, useState } from 'react';\nimport { KEYBOARD_SERVICE_KEYS } from '../../../../Constants/index.constants';\n\nconst DEFAULT_BLINK_TIME = 100;\n\ninterface UseErrorBlinkParams extends Pick<InputProps, 'blinkTime'> {\n isUseErrorsBlink: boolean;\n}\n\nexport function useErrorBlink({\n isUseErrorsBlink,\n blinkTime = DEFAULT_BLINK_TIME,\n}: UseErrorBlinkParams):\n {\n isToHighlightError: boolean;\n setPreviousValue: (value: string | number | undefined) => void;\n checkValueChange: (e: KeyboardEvent<HTMLInputElement>, value: string | number | undefined) => void;\n } {\n const [isAttemptToChange, setIsAttemptToChange] = useState<boolean>(false);\n const [isToHighlightError, setIsToHighlightError] = useState<boolean>(false);\n const [prevValue, setPreviousValue] = useState<string | number | undefined>('');\n\n useEffect(() => {\n if (!isAttemptToChange) return;\n\n let timerId: NodeJS.Timeout | null = null;\n\n setIsToHighlightError(true);\n\n timerId = setTimeout(() => {\n setIsToHighlightError(false);\n setIsAttemptToChange(false);\n }, blinkTime);\n\n return () => {\n if (timerId) {\n clearTimeout(timerId);\n }\n };\n }, [isAttemptToChange, blinkTime]);\n\n const checkValueChange = (e: KeyboardEvent<HTMLInputElement>, value: string | number | undefined): void => {\n if (isUseErrorsBlink) {\n const changedValue = `${value ?? ''}`;\n const previousValue = `${prevValue}`;\n\n const short = previousValue.length <= changedValue.length\n ? previousValue\n : changedValue;\n const long = previousValue.length > changedValue.length\n ? previousValue\n : changedValue;\n\n const infoAboutDifferencesSameness = short.split('').reduce(\n (acc, symbol, idx) => {\n if (acc.countOn && symbol === long[idx]) {\n acc.same.push(symbol);\n }\n else {\n acc.countOn = false;\n acc.differences.push([idx, symbol]);\n }\n return acc;\n },\n { same: ([] as string[]), countOn: true, differences: ([] as [number, string][]) },\n );\n\n const samePart = infoAboutDifferencesSameness.same.join('');\n const differencesLength = infoAboutDifferencesSameness.differences.length;\n const currentSet = changedValue?.replace(samePart, '');\n\n if (\n !KEYBOARD_SERVICE_KEYS.includes(e.key)\n && changedValue === previousValue\n ) {\n const newAttemptToChange = !(!differencesLength && e.key === currentSet);\n setIsAttemptToChange(newAttemptToChange);\n }\n }\n };\n\n return {\n isToHighlightError,\n setPreviousValue,\n checkValueChange,\n };\n}\n"],"mappings":";;;AAKA,IAAM,qBAAqB;AAM3B,SAAgB,cAAc,EAC5B,kBACA,YAAY,sBAMV;CACF,MAAM,CAAC,mBAAmB,wBAAwB,SAAkB,KAAK;CACzE,MAAM,CAAC,oBAAoB,yBAAyB,SAAkB,KAAK;CAC3E,MAAM,CAAC,WAAW,oBAAoB,SAAsC,EAAE;CAE9E,gBAAgB;EACd,IAAI,CAAC,mBAAmB;EAExB,IAAI,UAAiC;EAErC,sBAAsB,IAAI;EAE1B,UAAU,iBAAiB;GACzB,sBAAsB,KAAK;GAC3B,qBAAqB,KAAK;EAC5B,GAAG,SAAS;EAEZ,aAAa;GACX,IAAI,SACF,aAAa,OAAO;EAExB;CACF,GAAG,CAAC,mBAAmB,SAAS,CAAC;CAEjC,MAAM,oBAAoB,GAAoC,UAA6C;EACzG,IAAI,kBAAkB;GACpB,MAAM,eAAe,GAAG,SAAS;GACjC,MAAM,gBAAgB,GAAG;GAEzB,MAAM,QAAQ,cAAc,UAAU,aAAa,SAC/C,gBACA;GACJ,MAAM,OAAO,cAAc,SAAS,aAAa,SAC7C,gBACA;GAEJ,MAAM,+BAA+B,MAAM,MAAM,EAAE,CAAC,CAAC,QAClD,KAAK,QAAQ,QAAQ;IACpB,IAAI,IAAI,WAAW,WAAW,KAAK,MACjC,IAAI,KAAK,KAAK,MAAM;SAEjB;KACH,IAAI,UAAU;KACd,IAAI,YAAY,KAAK,CAAC,KAAK,MAAM,CAAC;IACpC;IACA,OAAO;GACT,GACA;IAAE,MAAO,CAAC;IAAgB,SAAS;IAAM,aAAc,CAAC;GAAyB,CACnF;GAEA,MAAM,WAAW,6BAA6B,KAAK,KAAK,EAAE;GAC1D,MAAM,oBAAoB,6BAA6B,YAAY;GACnE,MAAM,aAAa,cAAc,QAAQ,UAAU,EAAE;GAErD,IACE,CAAC,sBAAsB,SAAS,EAAE,GAAG,KAClC,iBAAiB,eACpB;IACA,MAAM,qBAAqB,EAAE,CAAC,qBAAqB,EAAE,QAAQ;IAC7D,qBAAqB,kBAAkB;GACzC;EACF;CACF;CAEA,OAAO;EACL;EACA;EACA;CACF;AACF"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { useEffect, useState } from "react";
|
|
2
|
+
//#region src/Atomic/FormElements/Input/hooks/useInputFocus.ts
|
|
3
|
+
function useInputFocus({ isSelect, isFocusDefault = false, onFocus = () => {} }) {
|
|
4
|
+
const [isFocused, setIsFocused] = useState(false);
|
|
5
|
+
const [isEditing, setEditing] = useState(false);
|
|
6
|
+
useEffect(() => {
|
|
7
|
+
setEditing(isSelect ?? false);
|
|
8
|
+
}, [isSelect]);
|
|
9
|
+
useEffect(() => {
|
|
10
|
+
if (typeof isFocusDefault === "boolean") {
|
|
11
|
+
setIsFocused(isFocusDefault);
|
|
12
|
+
setEditing(isFocusDefault);
|
|
13
|
+
}
|
|
14
|
+
}, [isFocusDefault]);
|
|
15
|
+
const handleFocus = (e) => {
|
|
16
|
+
setIsFocused(true);
|
|
17
|
+
onFocus(e);
|
|
18
|
+
};
|
|
19
|
+
const handleToggleEdit = () => {
|
|
20
|
+
setEditing(!isEditing);
|
|
21
|
+
};
|
|
22
|
+
return {
|
|
23
|
+
isFocused,
|
|
24
|
+
isEditing,
|
|
25
|
+
setIsFocused,
|
|
26
|
+
setEditing,
|
|
27
|
+
handleFocus,
|
|
28
|
+
handleToggleEdit
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
//#endregion
|
|
32
|
+
export { useInputFocus };
|
|
33
|
+
|
|
34
|
+
//# sourceMappingURL=useInputFocus.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useInputFocus.js","names":[],"sources":["../../../../../../src/Atomic/FormElements/Input/hooks/useInputFocus.ts"],"sourcesContent":["import type { FocusEvent } from 'react';\nimport type { InputProps } from '../types';\nimport { useEffect, useState } from 'react';\n\ninterface UseInputFocusParams extends InputProps {\n isFocusDefault?: boolean;\n onFocus?: (e: FocusEvent<HTMLInputElement, Element>) => void;\n}\n\nexport function useInputFocus({\n isSelect,\n isFocusDefault = false,\n onFocus = () => {},\n}: UseInputFocusParams): {\n isFocused: boolean;\n isEditing: boolean;\n setIsFocused: (isFocused: boolean) => void;\n setEditing: (isEditing: boolean) => void;\n handleFocus: (e: FocusEvent<HTMLInputElement, Element>) => void;\n handleToggleEdit: () => void;\n } {\n const [isFocused, setIsFocused] = useState<boolean>(false);\n const [isEditing, setEditing] = useState<boolean>(false);\n\n useEffect(() => {\n setEditing(isSelect ?? false);\n }, [isSelect]);\n\n useEffect(() => {\n if (typeof isFocusDefault === 'boolean') {\n setIsFocused(isFocusDefault);\n setEditing(isFocusDefault);\n }\n }, [isFocusDefault]);\n\n const handleFocus = (e: FocusEvent<HTMLInputElement, Element>): void => {\n setIsFocused(true);\n onFocus(e);\n };\n\n const handleToggleEdit = (): void => {\n setEditing(!isEditing);\n };\n\n return {\n isFocused,\n isEditing,\n setIsFocused,\n setEditing,\n handleFocus,\n handleToggleEdit,\n };\n}\n"],"mappings":";;AASA,SAAgB,cAAc,EAC5B,UACA,iBAAiB,OACjB,gBAAgB,CAAC,KAQf;CACF,MAAM,CAAC,WAAW,gBAAgB,SAAkB,KAAK;CACzD,MAAM,CAAC,WAAW,cAAc,SAAkB,KAAK;CAEvD,gBAAgB;EACd,WAAW,YAAY,KAAK;CAC9B,GAAG,CAAC,QAAQ,CAAC;CAEb,gBAAgB;EACd,IAAI,OAAO,mBAAmB,WAAW;GACvC,aAAa,cAAc;GAC3B,WAAW,cAAc;EAC3B;CACF,GAAG,CAAC,cAAc,CAAC;CAEnB,MAAM,eAAe,MAAmD;EACtE,aAAa,IAAI;EACjB,QAAQ,CAAC;CACX;CAEA,MAAM,yBAA+B;EACnC,WAAW,CAAC,SAAS;CACvB;CAEA,OAAO;EACL;EACA;EACA;EACA;EACA;EACA;CACF;AACF"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { useState } from "react";
|
|
2
|
+
//#region src/Atomic/FormElements/Input/hooks/useInputHover.ts
|
|
3
|
+
function useInputHover() {
|
|
4
|
+
const [onInputHover, setOnInputHover] = useState(false);
|
|
5
|
+
const handleMouseEnter = () => setOnInputHover(true);
|
|
6
|
+
const handleMouseLeave = () => setOnInputHover(false);
|
|
7
|
+
return {
|
|
8
|
+
onInputHover,
|
|
9
|
+
handleMouseEnter,
|
|
10
|
+
handleMouseLeave
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
//#endregion
|
|
14
|
+
export { useInputHover };
|
|
15
|
+
|
|
16
|
+
//# sourceMappingURL=useInputHover.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useInputHover.js","names":[],"sources":["../../../../../../src/Atomic/FormElements/Input/hooks/useInputHover.ts"],"sourcesContent":["import { useState } from 'react';\n\nexport function useInputHover(): {\n onInputHover: boolean;\n handleMouseEnter: () => void;\n handleMouseLeave: () => void;\n} {\n const [onInputHover, setOnInputHover] = useState<boolean>(false);\n\n const handleMouseEnter = (): void => setOnInputHover(true);\n const handleMouseLeave = (): void => setOnInputHover(false);\n\n return {\n onInputHover,\n handleMouseEnter,\n handleMouseLeave,\n };\n}\n"],"mappings":";;AAEA,SAAgB,gBAId;CACA,MAAM,CAAC,cAAc,mBAAmB,SAAkB,KAAK;CAE/D,MAAM,yBAA+B,gBAAgB,IAAI;CACzD,MAAM,yBAA+B,gBAAgB,KAAK;CAE1D,OAAO;EACL;EACA;EACA;CACF;AACF"}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { getIsOnlyAnObject } from "../../../../Functions/utils.js";
|
|
2
|
+
import { filterNumeric, formatToAddBitDepthPoints, formatToOnlyASCIICodeText, formatToRemoveComa, getSafelyValue } from "../../../../Functions/fieldValueFormatters.js";
|
|
3
|
+
//#region src/Atomic/FormElements/Input/hooks/useInputValueProcessing.ts
|
|
4
|
+
var HIDE_SYMBOL = "•";
|
|
5
|
+
function useInputValueProcessing({ onlyNumbers, isPriceInput, value, isNotValidateASCII = false, symbolsLimit, isCropFirstNool = false, type = "text", keyDownData, onChange, blurTrim }) {
|
|
6
|
+
const { trimStart, trimEnd, characters } = blurTrim || {};
|
|
7
|
+
const isUseBitDepthPoints = Boolean(onlyNumbers) && isPriceInput;
|
|
8
|
+
const isPseudoPasswordMode = type === "pseudoPassword";
|
|
9
|
+
/**
|
|
10
|
+
* `onlyNumbers` имеет union `boolean | OnlyNumbersOptions`, а
|
|
11
|
+
* `filterNumeric` / `addCommas` принимают only `IBitDepthSettings` (object).
|
|
12
|
+
* `boolean` подвид union'а сюда не передаём — нормализуем к object | undefined.
|
|
13
|
+
* `typeof === 'object'` сразу сужает union без `as`-cast.
|
|
14
|
+
*/
|
|
15
|
+
const bitDepthSettings = typeof onlyNumbers === "object" && onlyNumbers !== null ? onlyNumbers : void 0;
|
|
16
|
+
const correctMinMax = (value, correctionType) => {
|
|
17
|
+
if (!onlyNumbers) return value;
|
|
18
|
+
const { min, max, isOnlyPositive, isNoEmptyValues } = getIsOnlyAnObject(onlyNumbers) ? onlyNumbers : {};
|
|
19
|
+
const minimum = !Number.isNaN(Number(min)) && min !== null && min !== void 0 && (min >= 0 || !isOnlyPositive) ? min : void 0;
|
|
20
|
+
const maximum = !Number.isNaN(Number(max)) && max !== null && max !== void 0 && (max >= 0 || !isOnlyPositive) ? max : void 0;
|
|
21
|
+
let minusSymbol = null;
|
|
22
|
+
let inputValue = getSafelyValue(value);
|
|
23
|
+
const checkMin = () => {
|
|
24
|
+
if (!inputValue && isNoEmptyValues) inputValue = minimum !== void 0 ? String(minimum) : "0";
|
|
25
|
+
else if (inputValue && minimum !== void 0 && !Number.isNaN(Number(minimum)) && Number(minimum) > Number((minusSymbol ?? "") + inputValue)) inputValue = String(minimum);
|
|
26
|
+
};
|
|
27
|
+
const checkMax = () => {
|
|
28
|
+
if (maximum !== void 0 && !Number.isNaN(Number(maximum)) && Number(maximum) < Number((minusSymbol ?? "") + inputValue)) {
|
|
29
|
+
inputValue = String(maximum);
|
|
30
|
+
minusSymbol = null;
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
if (isUseBitDepthPoints) inputValue = formatToRemoveComa(inputValue);
|
|
34
|
+
if (!isOnlyPositive && inputValue[0] === "-") {
|
|
35
|
+
minusSymbol = "-";
|
|
36
|
+
inputValue = inputValue.slice(1);
|
|
37
|
+
}
|
|
38
|
+
inputValue = filterNumeric(inputValue, bitDepthSettings);
|
|
39
|
+
switch (correctionType) {
|
|
40
|
+
case "min":
|
|
41
|
+
checkMin();
|
|
42
|
+
break;
|
|
43
|
+
case "max":
|
|
44
|
+
checkMax();
|
|
45
|
+
break;
|
|
46
|
+
default:
|
|
47
|
+
checkMin();
|
|
48
|
+
checkMax();
|
|
49
|
+
break;
|
|
50
|
+
}
|
|
51
|
+
return inputValue;
|
|
52
|
+
};
|
|
53
|
+
const processPseudoValue = (newValue, oldValue) => {
|
|
54
|
+
const insertedPart = newValue.replace(new RegExp(HIDE_SYMBOL, "g"), "");
|
|
55
|
+
if (insertedPart.length > 1) return insertedPart;
|
|
56
|
+
const isOldValueHasBeenReduced = newValue.replace(/^HIDE_SYMBOL/g, "").length < oldValue.length;
|
|
57
|
+
const oldValueArr = oldValue.split("");
|
|
58
|
+
const getIsInclude = (idx) => {
|
|
59
|
+
const BACKSPACE_CODE = 8;
|
|
60
|
+
if (keyDownData.start === null || keyDownData.end === null) return false;
|
|
61
|
+
if (keyDownData.start !== keyDownData.end) return false;
|
|
62
|
+
if (insertedPart) return idx < keyDownData.start;
|
|
63
|
+
return keyDownData.keyCode === BACKSPACE_CODE ? idx < keyDownData.start - 1 || idx > keyDownData.end - 1 : idx < keyDownData.start || idx > keyDownData.end;
|
|
64
|
+
};
|
|
65
|
+
if (!insertedPart) return oldValueArr.reduce((acc, sym, idx) => getIsInclude(idx) ? `${acc}${sym}` : acc, "");
|
|
66
|
+
const outputStructure = oldValueArr.reduce((acc, sym, idx) => {
|
|
67
|
+
if (getIsInclude(idx)) acc.result = `${acc.result}${sym}`;
|
|
68
|
+
else if (!acc.position) acc.position = insertedPart ? idx : idx - 1;
|
|
69
|
+
return acc;
|
|
70
|
+
}, {
|
|
71
|
+
result: "",
|
|
72
|
+
position: !isOldValueHasBeenReduced ? keyDownData.start : null
|
|
73
|
+
});
|
|
74
|
+
return `${outputStructure.result.slice(0, outputStructure.position)}${insertedPart}${outputStructure.result.slice(outputStructure.position)}`;
|
|
75
|
+
};
|
|
76
|
+
const handleChange = (e) => {
|
|
77
|
+
const { isOnlyPositive } = getIsOnlyAnObject(onlyNumbers) ? onlyNumbers : {};
|
|
78
|
+
let minusSymbol = null;
|
|
79
|
+
let inputValue = typeof e !== "string" && e.target ? e.target.value : e;
|
|
80
|
+
if (isPseudoPasswordMode && typeof inputValue === "string") inputValue = inputValue.includes(HIDE_SYMBOL) ? processPseudoValue(inputValue, value) : inputValue;
|
|
81
|
+
if (isPriceInput && typeof inputValue === "string" && inputValue.charAt(inputValue.length - 1) === ",") inputValue = inputValue.substring(0, inputValue.length - 1).concat(".");
|
|
82
|
+
if (isUseBitDepthPoints) inputValue = formatToRemoveComa(inputValue);
|
|
83
|
+
if (onlyNumbers && typeof inputValue === "string") inputValue = inputValue.replace(/,/g, ".");
|
|
84
|
+
if (onlyNumbers && !isOnlyPositive && String(inputValue)[0] === "-" && typeof inputValue === "string") {
|
|
85
|
+
minusSymbol = "-";
|
|
86
|
+
inputValue = inputValue.slice(1);
|
|
87
|
+
}
|
|
88
|
+
if (!isNotValidateASCII) inputValue = formatToOnlyASCIICodeText(inputValue);
|
|
89
|
+
if (symbolsLimit && typeof inputValue === "string" && inputValue.length > Number(symbolsLimit)) inputValue = inputValue.substring(0, Number(symbolsLimit));
|
|
90
|
+
if (isCropFirstNool && typeof inputValue === "string" && inputValue[0] === "0") {
|
|
91
|
+
onChange?.("");
|
|
92
|
+
return;
|
|
93
|
+
} else if (onlyNumbers) inputValue = correctMinMax(inputValue, "max");
|
|
94
|
+
onChange?.(((minusSymbol ?? "") + inputValue).toString());
|
|
95
|
+
};
|
|
96
|
+
const handleBlur = (e, onBlur) => {
|
|
97
|
+
const { isOnlyPositive } = getIsOnlyAnObject(onlyNumbers) ? onlyNumbers : {};
|
|
98
|
+
let minusSymbol;
|
|
99
|
+
if (value && onlyNumbers && !isOnlyPositive && value[0] === "-") {
|
|
100
|
+
minusSymbol = "-";
|
|
101
|
+
value = value.slice(1);
|
|
102
|
+
}
|
|
103
|
+
let inputValue = correctMinMax(getSafelyValue(value), "min");
|
|
104
|
+
if (trimStart) inputValue = inputValue.replace(new RegExp(`^[${characters}]+`), "");
|
|
105
|
+
if (trimEnd) inputValue = inputValue.replace(new RegExp(`[${characters}]+$`), "");
|
|
106
|
+
if (value !== inputValue) onChange?.(minusSymbol ? (minusSymbol + inputValue).toString() : inputValue);
|
|
107
|
+
if (onBlur) setTimeout(() => onBlur(e), 0);
|
|
108
|
+
};
|
|
109
|
+
return {
|
|
110
|
+
formatedValue: (() => {
|
|
111
|
+
let safelyValue = getSafelyValue(value);
|
|
112
|
+
const hideSymbols = () => safelyValue.split("").map(() => HIDE_SYMBOL).join("");
|
|
113
|
+
if (isPseudoPasswordMode) return hideSymbols();
|
|
114
|
+
if (typeof onlyNumbers === "object" && onlyNumbers?.isNoEmptyValues) safelyValue = correctMinMax(safelyValue, "min");
|
|
115
|
+
if (isUseBitDepthPoints) safelyValue = formatToAddBitDepthPoints(safelyValue, bitDepthSettings);
|
|
116
|
+
return safelyValue;
|
|
117
|
+
})(),
|
|
118
|
+
handleChange,
|
|
119
|
+
handleBlur,
|
|
120
|
+
correctMinMax
|
|
121
|
+
};
|
|
122
|
+
}
|
|
123
|
+
//#endregion
|
|
124
|
+
export { useInputValueProcessing };
|
|
125
|
+
|
|
126
|
+
//# sourceMappingURL=useInputValueProcessing.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useInputValueProcessing.js","names":[],"sources":["../../../../../../src/Atomic/FormElements/Input/hooks/useInputValueProcessing.ts"],"sourcesContent":["/* eslint-disable react-hooks-extra/no-unnecessary-use-prefix */\nimport type { ChangeEvent, FocusEvent } from 'react';\nimport type {\n InputProps,\n KeyDownData,\n NativeAttributesProps,\n OnlyNumbersOptions,\n ValueFormattingProps,\n ValueHandlers,\n} from '../types';\nimport {\n formatToAddBitDepthPoints as addCommas,\n filterNumeric,\n formatToOnlyASCIICodeText,\n getSafelyValue,\n formatToRemoveComa as removeCommas,\n} from '../../../../Functions/fieldValueFormatters';\nimport { getIsOnlyAnObject } from '../../../../Functions/utils';\n\nconst HIDE_SYMBOL = '\\u2022';\n\ninterface InputValueProcessingParams extends ValueFormattingProps, Pick<InputProps, 'value'>, Pick<NativeAttributesProps, 'type'>, ValueHandlers {\n keyDownData: KeyDownData;\n}\n\nexport function useInputValueProcessing({\n onlyNumbers,\n isPriceInput,\n value,\n isNotValidateASCII = false,\n symbolsLimit,\n isCropFirstNool = false,\n type = 'text',\n keyDownData,\n onChange,\n blurTrim,\n}: InputValueProcessingParams): {\n formatedValue: string;\n handleChange: (e: ChangeEvent<HTMLInputElement> | string) => void;\n handleBlur: (e: FocusEvent<HTMLInputElement, Element>, onBlur?: (e: FocusEvent<HTMLInputElement, Element>) => void) => void;\n correctMinMax: (value: string, correctionType: 'min' | 'max') => string;\n } {\n const { trimStart, trimEnd, characters } = blurTrim || {};\n const isUseBitDepthPoints = Boolean(onlyNumbers) && isPriceInput;\n const isPseudoPasswordMode = type === 'pseudoPassword';\n /**\n * `onlyNumbers` имеет union `boolean | OnlyNumbersOptions`, а\n * `filterNumeric` / `addCommas` принимают only `IBitDepthSettings` (object).\n * `boolean` подвид union'а сюда не передаём — нормализуем к object | undefined.\n * `typeof === 'object'` сразу сужает union без `as`-cast.\n */\n const bitDepthSettings: OnlyNumbersOptions | undefined\n = typeof onlyNumbers === 'object' && onlyNumbers !== null ? onlyNumbers : undefined;\n\n const correctMinMax = (value: string, correctionType: 'min' | 'max'): string => {\n if (!onlyNumbers) return value;\n\n const { min, max, isOnlyPositive, isNoEmptyValues } = getIsOnlyAnObject(\n onlyNumbers,\n )\n ? onlyNumbers as OnlyNumbersOptions\n : {};\n const minimum\n = !Number.isNaN(Number(min))\n && min !== null && min !== undefined\n && (min >= 0 || !isOnlyPositive)\n ? min\n : undefined;\n const maximum\n = !Number.isNaN(Number(max))\n && max !== null && max !== undefined\n && (max >= 0 || !isOnlyPositive)\n ? max\n : undefined;\n\n let minusSymbol: string | null = null;\n let inputValue = getSafelyValue(value);\n\n const checkMin = (): void => {\n if (!inputValue && isNoEmptyValues) {\n inputValue = minimum !== undefined ? String(minimum) : '0';\n }\n /**\n * `minimum !== undefined` дублирует `!Number.isNaN(Number(minimum))`\n * (Number(undefined) = NaN), но даёт TS narrowing для `String(minimum)` ниже.\n */\n else if (\n inputValue\n && minimum !== undefined\n && !Number.isNaN(Number(minimum))\n && Number(minimum) > Number((minusSymbol ?? '') + inputValue)\n ) {\n inputValue = String(minimum);\n }\n };\n\n const checkMax = (): void => {\n if (\n maximum !== undefined\n && !Number.isNaN(Number(maximum))\n && Number(maximum) < Number((minusSymbol ?? '') + inputValue)\n ) {\n inputValue = String(maximum);\n minusSymbol = null;\n }\n };\n\n if (isUseBitDepthPoints) inputValue = removeCommas(inputValue);\n if (!isOnlyPositive && inputValue[0] === '-') {\n minusSymbol = '-';\n inputValue = inputValue.slice(1);\n }\n\n inputValue = filterNumeric(inputValue, bitDepthSettings);\n\n switch (correctionType) {\n case 'min':\n checkMin();\n break;\n case 'max':\n checkMax();\n break;\n default:\n checkMin();\n checkMax();\n break;\n }\n return inputValue;\n };\n\n const processPseudoValue = (newValue: string, oldValue: string): boolean | string => {\n const insertedPart = newValue.replace(new RegExp(HIDE_SYMBOL, 'g'), '');\n\n // ? Если insertedPart.length > 1, то это точно копи-паст\n // ? По договоренности любой копипаст заменяет текущее велью\n if (insertedPart.length > 1) return insertedPart;\n\n const isOldValueHasBeenReduced\n = newValue.replace(/^HIDE_SYMBOL/g, '').length\n < oldValue.length;\n const oldValueArr = oldValue.split('');\n\n const getIsInclude = (idx: number): string | boolean => {\n const BACKSPACE_CODE = 8;\n\n if (keyDownData.start === null || keyDownData.end === null) return false;\n // ? Если позиции не равны, значит была выделена область, значит будем воспринимать как копи-паст\n if (keyDownData.start !== keyDownData.end) return false;\n\n // ? Если позиции равны и есть вставляемое значение - обрезаем \"хвост\"\n if (insertedPart) return idx < keyDownData.start;\n\n // ? Если позиции равны и нет вставляемого значения - значит симвовол удалили\n return keyDownData.keyCode === BACKSPACE_CODE\n ? idx < keyDownData.start - 1 || idx > keyDownData.end - 1\n : idx < keyDownData.start || idx > keyDownData.end;\n };\n\n if (!insertedPart) {\n return oldValueArr.reduce(\n (acc: string, sym: string, idx: number) => (getIsInclude(idx) ? `${acc}${sym}` : acc),\n '',\n );\n }\n\n const outputStructure = oldValueArr.reduce(\n (acc: { result: string; position: number | null }, sym: string, idx: number) => {\n if (getIsInclude(idx)) acc.result = `${acc.result}${sym}`;\n else if (!acc.position) acc.position = insertedPart ? idx : idx - 1;\n return acc;\n },\n {\n result: '',\n position: !isOldValueHasBeenReduced ? keyDownData.start : null,\n },\n );\n\n return `${outputStructure.result.slice(\n 0,\n outputStructure.position as number,\n )}${insertedPart}${outputStructure.result.slice(outputStructure.position as number)}`;\n };\n\n const handleChange = (e: ChangeEvent<HTMLInputElement> | string): void => {\n const { isOnlyPositive } = getIsOnlyAnObject(onlyNumbers)\n ? onlyNumbers as OnlyNumbersOptions\n : {};\n\n let minusSymbol: string | null = null;\n let inputValue = (typeof e !== 'string' && e.target ? e.target.value : e) as string;\n if (isPseudoPasswordMode && typeof inputValue === 'string') {\n inputValue = (inputValue.includes(HIDE_SYMBOL)\n ? processPseudoValue(inputValue, value as string)\n : inputValue) as string;\n }\n\n // If user typed comma(',') replace it to dot('.') for float value typing\n if (isPriceInput && typeof inputValue === 'string' && inputValue.charAt(inputValue.length - 1) === ',')\n inputValue = inputValue.substring(0, inputValue.length - 1).concat('.');\n\n if (isUseBitDepthPoints) inputValue = removeCommas(inputValue);\n if (onlyNumbers && typeof inputValue === 'string') inputValue = inputValue.replace(/,/g, '.');\n\n if (onlyNumbers && !isOnlyPositive && String(inputValue)[0] === '-' && typeof inputValue === 'string') {\n minusSymbol = '-';\n inputValue = inputValue.slice(1);\n }\n if (!isNotValidateASCII)\n inputValue = formatToOnlyASCIICodeText(inputValue);\n if (symbolsLimit && typeof inputValue === 'string' && inputValue.length > Number(symbolsLimit))\n inputValue = inputValue.substring(0, Number(symbolsLimit));\n if (isCropFirstNool && typeof inputValue === 'string' && inputValue[0] === '0') {\n onChange?.('');\n return;\n }\n else if (onlyNumbers) {\n inputValue = correctMinMax(inputValue, 'max');\n }\n onChange?.(((minusSymbol ?? '') + inputValue).toString());\n };\n\n const handleBlur = (e: FocusEvent<HTMLInputElement, Element>, onBlur?: (e: FocusEvent<HTMLInputElement, Element>) => void): void => {\n const { isOnlyPositive } = getIsOnlyAnObject(onlyNumbers)\n ? onlyNumbers as OnlyNumbersOptions\n : {};\n\n let minusSymbol;\n\n if (value && onlyNumbers && !isOnlyPositive && value[0] === '-') {\n minusSymbol = '-';\n value = value.slice(1);\n }\n\n let inputValue = correctMinMax(getSafelyValue(value), 'min');\n if (trimStart)\n inputValue = inputValue.replace(new RegExp(`^[${characters}]+`), '');\n if (trimEnd)\n inputValue = inputValue.replace(new RegExp(`[${characters}]+$`), '');\n\n if (value !== inputValue) onChange?.(minusSymbol ? (minusSymbol + inputValue).toString() : inputValue);\n\n // использую setTimeout для того чтоб прошли переназначения велью, если они есть,\n // для того, чтоб верхний onBlur при обращении к e.target.value получал обновленное велью\n if (onBlur) setTimeout(() => onBlur(e), 0);\n };\n\n const formatedValue = (() => {\n let safelyValue = getSafelyValue(value);\n\n const hideSymbols = (): string =>\n safelyValue\n .split('')\n .map(() => HIDE_SYMBOL)\n .join('');\n\n if (isPseudoPasswordMode) return hideSymbols();\n if (typeof onlyNumbers === 'object' && onlyNumbers?.isNoEmptyValues)\n safelyValue = correctMinMax(safelyValue, 'min');\n if (isUseBitDepthPoints)\n safelyValue = addCommas(safelyValue, bitDepthSettings);\n return safelyValue;\n })();\n\n return {\n formatedValue,\n handleChange,\n handleBlur,\n correctMinMax,\n };\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { useState } from "react";
|
|
2
|
+
//#region src/Atomic/FormElements/Input/hooks/useKeyboardHandling.ts
|
|
3
|
+
function useKeyboardHandling({ onKeyDown, onKeyUp, checkValueChange, setPreviousValue, value }) {
|
|
4
|
+
const [keyDownData, setKeyDownData] = useState({
|
|
5
|
+
start: null,
|
|
6
|
+
end: null,
|
|
7
|
+
keyCode: null
|
|
8
|
+
});
|
|
9
|
+
const handleKeyDown = (e) => {
|
|
10
|
+
const target = e.target;
|
|
11
|
+
setPreviousValue(target.value);
|
|
12
|
+
setKeyDownData({
|
|
13
|
+
start: target.selectionStart,
|
|
14
|
+
end: target.selectionEnd,
|
|
15
|
+
keyCode: e.keyCode
|
|
16
|
+
});
|
|
17
|
+
onKeyDown?.(e.keyCode, e);
|
|
18
|
+
};
|
|
19
|
+
const handleKeyUp = (e) => {
|
|
20
|
+
checkValueChange(e, value);
|
|
21
|
+
onKeyUp?.(e.keyCode, e);
|
|
22
|
+
};
|
|
23
|
+
return {
|
|
24
|
+
keyDownData,
|
|
25
|
+
handleKeyDown,
|
|
26
|
+
handleKeyUp
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
//#endregion
|
|
30
|
+
export { useKeyboardHandling };
|
|
31
|
+
|
|
32
|
+
//# sourceMappingURL=useKeyboardHandling.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useKeyboardHandling.js","names":[],"sources":["../../../../../../src/Atomic/FormElements/Input/hooks/useKeyboardHandling.ts"],"sourcesContent":["import type { KeyboardEvent } from 'react';\nimport type { NativeEventHandlers } from '../types';\nimport { useState } from 'react';\n\ninterface KeyboardHandlingParams extends NativeEventHandlers {\n checkValueChange: (e: KeyboardEvent<HTMLInputElement>, value: string | number | undefined) => void;\n setPreviousValue: (value: string | number | undefined) => void;\n value: string | undefined;\n}\n\nexport function useKeyboardHandling({\n onKeyDown,\n onKeyUp,\n checkValueChange,\n setPreviousValue,\n value,\n}: KeyboardHandlingParams): {\n keyDownData: {\n start: number | null;\n end: number | null;\n keyCode: number | string | null;\n };\n handleKeyDown: (e: KeyboardEvent<HTMLInputElement>) => void;\n handleKeyUp: (e: KeyboardEvent<HTMLInputElement>) => void;\n } {\n const [keyDownData, setKeyDownData] = useState<{\n start: number | null;\n end: number | null;\n keyCode: number | string | null;\n }>({\n start: null,\n end: null,\n keyCode: null,\n });\n\n const handleKeyDown = (e: KeyboardEvent<HTMLInputElement>): void => {\n const target = e.target as HTMLInputElement;\n setPreviousValue(target.value);\n setKeyDownData({\n start: target.selectionStart,\n end: target.selectionEnd,\n keyCode: e.keyCode,\n });\n onKeyDown?.(e.keyCode, e);\n };\n\n const handleKeyUp = (e: KeyboardEvent<HTMLInputElement>): void => {\n checkValueChange(e, value);\n onKeyUp?.(e.keyCode, e);\n };\n\n return {\n keyDownData,\n handleKeyDown,\n handleKeyUp,\n };\n}\n"],"mappings":";;AAUA,SAAgB,oBAAoB,EAClC,WACA,SACA,kBACA,kBACA,SASE;CACF,MAAM,CAAC,aAAa,kBAAkB,SAInC;EACD,OAAO;EACP,KAAK;EACL,SAAS;CACX,CAAC;CAED,MAAM,iBAAiB,MAA6C;EAClE,MAAM,SAAS,EAAE;EACjB,iBAAiB,OAAO,KAAK;EAC7B,eAAe;GACb,OAAO,OAAO;GACd,KAAK,OAAO;GACZ,SAAS,EAAE;EACb,CAAC;EACD,YAAY,EAAE,SAAS,CAAC;CAC1B;CAEA,MAAM,eAAe,MAA6C;EAChE,iBAAiB,GAAG,KAAK;EACzB,UAAU,EAAE,SAAS,CAAC;CACxB;CAEA,OAAO;EACL;EACA;EACA;CACF;AACF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../src/Atomic/FormElements/Input/index.ts"],"sourcesContent":["import type { TAutoComplete } from './lib/autocomplete'\nimport type { InputProps } from './types';\n\nimport Input from './Input';\n\nexport default Input;\nexport type { InputProps, TAutoComplete };\n"],"mappings":";;AAKA,IAAA,gBAAe"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import '../../../styles/base.css';
|
|
2
|
+
import Calendar from "../Calendar/Calendar.js";
|
|
3
|
+
import { useClickOutside } from "../../../Functions/useClickOutside.js";
|
|
4
|
+
import './InputCalendar.styles.css';/* empty css */
|
|
5
|
+
import cn from "classnames";
|
|
6
|
+
import { useEffect, useRef, useState } from "react";
|
|
7
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
|
+
import InputMask from "react-input-mask";
|
|
9
|
+
import moment from "moment-timezone";
|
|
10
|
+
//#region src/Atomic/FormElements/InputCalendar/InputCalendar.tsx
|
|
11
|
+
var InputCalendar = ({ value, minDate, maxDate, format = "MM/DD/YYYY", isDontLimitFuture, onChange, className = "", placeholder = "mm/dd/yyyy", mask = "99/99/9999", isListTop, disabled, testId = "input-calendar", onKeyDown: onKeyDownProp, onKeyUp: onKeyUpProp, onBlur: onBlurProp }) => {
|
|
12
|
+
const [isOpened, setIsOpened] = useState(null);
|
|
13
|
+
const calendarRef = useRef(null);
|
|
14
|
+
const inputRef = useRef(null);
|
|
15
|
+
const formattedMinDate = moment(minDate, format).format(format) !== "Invalid date" ? moment(minDate, format).format(format) : null;
|
|
16
|
+
const formattedMaxDate = moment(maxDate, format).format(format) !== "Invalid date" ? moment(maxDate, format).format(format) : null;
|
|
17
|
+
const momentMinDate = moment(formattedMinDate, format).startOf("day");
|
|
18
|
+
const momentMaxDate = moment(formattedMaxDate, format).startOf("day");
|
|
19
|
+
useClickOutside(calendarRef, () => setIsOpened(false));
|
|
20
|
+
const changeInputValue = (val) => {
|
|
21
|
+
if (onChange) onChange(val);
|
|
22
|
+
};
|
|
23
|
+
const changeCalendarDay = (val) => {
|
|
24
|
+
if (onChange) onChange(val);
|
|
25
|
+
};
|
|
26
|
+
const getCalendarValue = (value) => {
|
|
27
|
+
const date = moment(value).format("L");
|
|
28
|
+
if (date !== "Invalid date") return date;
|
|
29
|
+
return moment(/* @__PURE__ */ new Date()).format("L");
|
|
30
|
+
};
|
|
31
|
+
const handleBlur = () => {
|
|
32
|
+
let value = inputRef?.current ? (inputRef?.current)?.value : "";
|
|
33
|
+
if (moment(value, format).format(format) === "Invalid date" || value.includes("_")) value = "";
|
|
34
|
+
if (value && typeof isOpened === "boolean" && moment(value, format).startOf("day").isBefore(momentMinDate, "days")) {
|
|
35
|
+
if (formattedMinDate) onChange(formattedMinDate);
|
|
36
|
+
} else if (value && typeof isOpened === "boolean" && moment(value, format).endOf("day").isAfter(momentMaxDate, "days")) {
|
|
37
|
+
if (formattedMaxDate) onChange(formattedMaxDate);
|
|
38
|
+
} else if (value) onChange(moment(value, format).format(format));
|
|
39
|
+
};
|
|
40
|
+
const onKeyDown = (e) => {
|
|
41
|
+
if (isOpened && [9, 13].includes(e.keyCode)) setIsOpened(false);
|
|
42
|
+
onKeyDownProp?.(e);
|
|
43
|
+
};
|
|
44
|
+
const onKeyUp = (e) => {
|
|
45
|
+
const isValidLenght = e.target.value?.replace(/\D/g, "").length === 8;
|
|
46
|
+
if ([9, 13].includes(e.keyCode)) setIsOpened(true);
|
|
47
|
+
if (isValidLenght) {
|
|
48
|
+
setIsOpened(false);
|
|
49
|
+
handleBlur();
|
|
50
|
+
} else setIsOpened(true);
|
|
51
|
+
onKeyUpProp?.(e);
|
|
52
|
+
};
|
|
53
|
+
useEffect(() => {
|
|
54
|
+
if (typeof isOpened === "boolean" && !isOpened) handleBlur();
|
|
55
|
+
}, [isOpened]);
|
|
56
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
57
|
+
"data-testid": testId,
|
|
58
|
+
className: cn("input__wrap calendar-container", className, { "calendar-container_disabled": disabled }),
|
|
59
|
+
ref: calendarRef,
|
|
60
|
+
children: [/* @__PURE__ */ jsx(InputMask, {
|
|
61
|
+
mask,
|
|
62
|
+
placeholder,
|
|
63
|
+
value,
|
|
64
|
+
onChange: (e) => changeInputValue(e.target.value),
|
|
65
|
+
className: "calendar-dropdown",
|
|
66
|
+
onClick: () => setIsOpened(true),
|
|
67
|
+
onKeyUp,
|
|
68
|
+
onKeyDown,
|
|
69
|
+
onBlur: (e) => onBlurProp?.(e),
|
|
70
|
+
ref: inputRef
|
|
71
|
+
}), isOpened ? /* @__PURE__ */ jsx(Calendar, {
|
|
72
|
+
date: getCalendarValue(value),
|
|
73
|
+
setDate: (newDate) => changeCalendarDay(newDate),
|
|
74
|
+
params: {
|
|
75
|
+
minDate: formattedMinDate,
|
|
76
|
+
maxDate: formattedMaxDate,
|
|
77
|
+
momentMinDate,
|
|
78
|
+
momentMaxDate,
|
|
79
|
+
isDontLimitFuture
|
|
80
|
+
},
|
|
81
|
+
isListTop,
|
|
82
|
+
setIsOpened
|
|
83
|
+
}) : null]
|
|
84
|
+
});
|
|
85
|
+
};
|
|
86
|
+
//#endregion
|
|
87
|
+
export { InputCalendar as default };
|
|
88
|
+
|
|
89
|
+
//# sourceMappingURL=InputCalendar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InputCalendar.js","names":[],"sources":["../../../../../src/Atomic/FormElements/InputCalendar/InputCalendar.tsx"],"sourcesContent":["import type { IInputCalendarProps } from './InputCalendar.interface';\n\nimport cn from 'classnames';\nimport moment from 'moment-timezone';\nimport React, { useEffect, useRef, useState } from 'react';\n\nimport InputMask from 'react-input-mask';\nimport { useClickOutside } from '../../../Functions/useClickOutside';\n\nimport Calendar from '../Calendar/Calendar';\nimport './InputCalendar.scss';\n\nconst InputCalendar: React.FC<IInputCalendarProps> = ({\n value,\n minDate,\n maxDate,\n format = 'MM/DD/YYYY',\n isDontLimitFuture,\n onChange,\n className = '',\n placeholder = 'mm/dd/yyyy',\n mask = '99/99/9999',\n isListTop,\n disabled,\n testId = 'input-calendar',\n\n onKeyDown: onKeyDownProp,\n onKeyUp: onKeyUpProp,\n onBlur: onBlurProp,\n}) => {\n const [isOpened, setIsOpened] = useState<boolean | null>(null);\n const calendarRef = useRef(null);\n const inputRef = useRef(null);\n\n const formattedMinDate\n = moment(minDate, format).format(format) !== 'Invalid date'\n ? moment(minDate, format).format(format)\n : null;\n const formattedMaxDate\n = moment(maxDate, format).format(format) !== 'Invalid date'\n ? moment(maxDate, format).format(format)\n : null;\n\n const momentMinDate = moment(formattedMinDate, format).startOf('day');\n const momentMaxDate = moment(formattedMaxDate, format).startOf('day');\n\n useClickOutside(calendarRef, () => setIsOpened(false));\n\n const changeInputValue = (val: string): void => {\n if (onChange) onChange(val);\n };\n\n const changeCalendarDay = (val: string): void => {\n if (onChange) onChange(val);\n };\n\n const getCalendarValue = (value: string): string => {\n const date = moment(value).format('L');\n\n if (date !== 'Invalid date') return date;\n\n return moment(new Date()).format('L');\n };\n\n const handleBlur = (): void => {\n let value = inputRef?.current ? (inputRef?.current as HTMLInputElement)?.value : '';\n if (\n moment(value, format).format(format) === 'Invalid date'\n || value.includes('_')\n ) {\n value = '';\n }\n\n if (\n value\n && typeof isOpened === 'boolean'\n && moment(value, format).startOf('day').isBefore(momentMinDate, 'days')\n ) {\n if (formattedMinDate) onChange(formattedMinDate);\n }\n else if (\n value\n && typeof isOpened === 'boolean'\n && moment(value, format).endOf('day').isAfter(momentMaxDate, 'days')\n ) {\n if (formattedMaxDate) onChange(formattedMaxDate);\n }\n else if (value) {\n onChange(moment(value, format).format(format));\n }\n };\n\n const onKeyDown: React.KeyboardEventHandler<HTMLInputElement> = (e): void => {\n if (isOpened && [9, 13].includes(e.keyCode)) {\n setIsOpened(false);\n }\n\n onKeyDownProp?.(e);\n };\n\n const onKeyUp: React.KeyboardEventHandler<HTMLInputElement> | undefined = (e): void => {\n const isValidLenght = (e.target as HTMLInputElement).value?.replace(/\\D/g, '').length === 8;\n\n if ([9, 13].includes(e.keyCode)) {\n setIsOpened(true);\n }\n\n if (isValidLenght) {\n setIsOpened(false);\n handleBlur();\n }\n else {\n setIsOpened(true);\n }\n onKeyUpProp?.(e);\n };\n\n useEffect(() => {\n if (typeof isOpened === 'boolean' && !isOpened) {\n handleBlur();\n }\n }, [isOpened]);\n\n return (\n <div\n data-testid={testId}\n className={cn('input__wrap calendar-container', className, {\n 'calendar-container_disabled': disabled,\n })}\n ref={calendarRef}\n >\n <InputMask\n mask={mask}\n placeholder={placeholder}\n value={value}\n onChange={e => changeInputValue(e.target.value)}\n className=\"calendar-dropdown\"\n onClick={() => setIsOpened(true)}\n onKeyUp={onKeyUp}\n onKeyDown={onKeyDown}\n onBlur={e => onBlurProp?.(e)}\n ref={inputRef}\n />\n {isOpened\n ? (\n <Calendar\n date={getCalendarValue(value)}\n setDate={newDate => changeCalendarDay(newDate)}\n params={{\n minDate: formattedMinDate as string,\n maxDate: formattedMaxDate as string,\n momentMinDate,\n momentMaxDate,\n isDontLimitFuture,\n }}\n isListTop={isListTop}\n setIsOpened={setIsOpened}\n />\n )\n : null}\n </div>\n );\n};\n\nexport default InputCalendar;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
.calendar-container {
|
|
2
|
+
position: relative;
|
|
3
|
+
min-width: 200px;
|
|
4
|
+
}
|
|
5
|
+
.calendar-container_disabled {
|
|
6
|
+
pointer-events: none;
|
|
7
|
+
opacity: 0.5;
|
|
8
|
+
}
|
|
9
|
+
.calendar-container .calendar {
|
|
10
|
+
position: absolute;
|
|
11
|
+
z-index: 9;
|
|
12
|
+
top: 100%;
|
|
13
|
+
padding: 10px 16px;
|
|
14
|
+
border: 1px solid var(--border-color);
|
|
15
|
+
}
|
|
16
|
+
.calendar-container .calendar_list-top {
|
|
17
|
+
top: auto;
|
|
18
|
+
bottom: calc(100% + 4px);
|
|
19
|
+
box-shadow: 0 -3px 15px rgba(0, 0, 0, 0.15);
|
|
20
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import '../../../styles/base.css';
|
|
2
|
+
import { formatToHex, formatToOnlyASCIICodeText } from "../../../Functions/fieldValueFormatters.js";
|
|
3
|
+
import Input from "../Input/Input.js";
|
|
4
|
+
import './InputColor.styles.css';/* empty css */
|
|
5
|
+
import cn from "classnames";
|
|
6
|
+
import { useCallback, useMemo } from "react";
|
|
7
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
|
+
//#region src/Atomic/FormElements/InputColor/InputColor.tsx
|
|
9
|
+
var InputColor = ({ value = "", className, symbolsLimit = 7, onChange, withHexFormat = {
|
|
10
|
+
withSharp: false,
|
|
11
|
+
isTurnOn: true
|
|
12
|
+
}, initialHexOfColorBlock = "#9AA0B9", testId = "", withDelete = true, ...args }) => {
|
|
13
|
+
const { withSharp = false, isTurnOn: isHex = true } = withHexFormat;
|
|
14
|
+
const handleChange = useCallback((e) => {
|
|
15
|
+
let inputValue = typeof e === "string" ? e : e.target.value;
|
|
16
|
+
inputValue = formatToOnlyASCIICodeText(inputValue);
|
|
17
|
+
if (isHex) inputValue = formatToHex({
|
|
18
|
+
inputValue,
|
|
19
|
+
withSharp
|
|
20
|
+
});
|
|
21
|
+
if (symbolsLimit && inputValue.length > symbolsLimit) inputValue = inputValue.substring(0, symbolsLimit);
|
|
22
|
+
onChange?.(inputValue);
|
|
23
|
+
}, [
|
|
24
|
+
isHex,
|
|
25
|
+
withSharp,
|
|
26
|
+
symbolsLimit,
|
|
27
|
+
onChange
|
|
28
|
+
]);
|
|
29
|
+
const colorBlockStyle = useMemo(() => {
|
|
30
|
+
return { backgroundColor: /^#[0-9A-F]{6}$/i.test(value) ? value : initialHexOfColorBlock };
|
|
31
|
+
}, [value, initialHexOfColorBlock]);
|
|
32
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
33
|
+
className: cn("inputColor", className),
|
|
34
|
+
children: [/* @__PURE__ */ jsx("div", {
|
|
35
|
+
className: "inputColor__color-block",
|
|
36
|
+
style: colorBlockStyle
|
|
37
|
+
}), /* @__PURE__ */ jsx(Input, {
|
|
38
|
+
...args,
|
|
39
|
+
value,
|
|
40
|
+
withDelete,
|
|
41
|
+
onChange: handleChange,
|
|
42
|
+
symbolsLimit,
|
|
43
|
+
testId: `inputColor--key-${testId}`,
|
|
44
|
+
className: cn("input inputColor__input"),
|
|
45
|
+
type: "text"
|
|
46
|
+
})]
|
|
47
|
+
});
|
|
48
|
+
};
|
|
49
|
+
//#endregion
|
|
50
|
+
export { InputColor as default };
|
|
51
|
+
|
|
52
|
+
//# sourceMappingURL=InputColor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InputColor.js","names":[],"sources":["../../../../../src/Atomic/FormElements/InputColor/InputColor.tsx"],"sourcesContent":["import type { IInputColorProps } from './InputColor.interface';\n\nimport cn from 'classnames';\n\nimport React, { useCallback, useMemo } from 'react';\n\nimport {\n formatToHex,\n formatToOnlyASCIICodeText,\n} from '../../../Functions/fieldValueFormatters';\n\nimport Input from '../Input/Input';\n\nimport './InputColor.scss';\n\nconst InputColor: React.FC<IInputColorProps> = ({\n value = '',\n className,\n symbolsLimit = 7,\n onChange,\n withHexFormat = {\n withSharp: false,\n isTurnOn: true,\n },\n initialHexOfColorBlock = '#9AA0B9',\n testId = '',\n withDelete = true,\n ...args\n}) => {\n const { withSharp = false, isTurnOn: isHex = true } = withHexFormat;\n\n const handleChange = useCallback(\n (e: React.ChangeEvent<HTMLInputElement> | string) => {\n let inputValue = typeof e === 'string' ? e : e.target.value;\n inputValue = formatToOnlyASCIICodeText(inputValue);\n if (isHex) {\n inputValue = formatToHex({ inputValue, withSharp });\n }\n if (symbolsLimit && inputValue.length > symbolsLimit) {\n inputValue = inputValue.substring(0, symbolsLimit);\n }\n onChange?.(inputValue);\n },\n [isHex, withSharp, symbolsLimit, onChange],\n );\n\n const colorBlockStyle = useMemo(() => {\n const isValidHex = /^#[0-9A-F]{6}$/i.test(value);\n return {\n backgroundColor: isValidHex ? value : initialHexOfColorBlock,\n };\n }, [value, initialHexOfColorBlock]);\n\n return (\n <div className={cn('inputColor', className)}>\n <div className=\"inputColor__color-block\" style={colorBlockStyle} />\n <Input\n {...args}\n // @ts-ignore\n value={value}\n withDelete={withDelete}\n onChange={handleChange}\n symbolsLimit={symbolsLimit}\n testId={`inputColor--key-${testId}`}\n className={cn('input inputColor__input')}\n type=\"text\"\n />\n </div>\n );\n};\n\nexport default InputColor;\n"],"mappings":";;;;;;;AAeA,IAAM,cAA0C,EAC9C,QAAQ,IACR,WACA,eAAe,GACf,UACA,gBAAgB;CACd,WAAW;CACX,UAAU;AACZ,GACA,yBAAyB,WACzB,SAAS,IACT,aAAa,MACb,GAAG,WACC;CACJ,MAAM,EAAE,YAAY,OAAO,UAAU,QAAQ,SAAS;CAEtD,MAAM,eAAe,aAClB,MAAoD;EACnD,IAAI,aAAa,OAAO,MAAM,WAAW,IAAI,EAAE,OAAO;EACtD,aAAa,0BAA0B,UAAU;EACjD,IAAI,OACF,aAAa,YAAY;GAAE;GAAY;EAAU,CAAC;EAEpD,IAAI,gBAAgB,WAAW,SAAS,cACtC,aAAa,WAAW,UAAU,GAAG,YAAY;EAEnD,WAAW,UAAU;CACvB,GACA;EAAC;EAAO;EAAW;EAAc;CAAQ,CAC3C;CAEA,MAAM,kBAAkB,cAAc;EAEpC,OAAO,EACL,iBAFiB,kBAAkB,KAAK,KAEvB,IAAa,QAAQ,uBACxC;CACF,GAAG,CAAC,OAAO,sBAAsB,CAAC;CAElC,OACE,qBAAC,OAAD;EAAK,WAAW,GAAG,cAAc,SAAS;YAA1C,CACE,oBAAC,OAAD;GAAK,WAAU;GAA0B,OAAO;EAAkB,CAAA,GAClE,oBAAC,OAAD;GACE,GAAI;GAEG;GACK;GACZ,UAAU;GACI;GACd,QAAQ,mBAAmB;GAC3B,WAAW,GAAG,yBAAyB;GACvC,MAAK;EACN,CAAA,CACE;;AAET"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
.inputColor {
|
|
2
|
+
position: relative;
|
|
3
|
+
}
|
|
4
|
+
.inputColor__color-block {
|
|
5
|
+
position: absolute;
|
|
6
|
+
z-index: 1;
|
|
7
|
+
top: 50%;
|
|
8
|
+
left: 5px;
|
|
9
|
+
min-width: 16px;
|
|
10
|
+
max-width: 16px;
|
|
11
|
+
min-height: 16px;
|
|
12
|
+
max-height: 16px;
|
|
13
|
+
transform: translateY(-50%);
|
|
14
|
+
}
|
|
15
|
+
.inputColor .input {
|
|
16
|
+
padding-left: 25px;
|
|
17
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../../../src/Atomic/FormElements/InputColor/index.ts"],"sourcesContent":["import type { IHexFormatOptions, IInputColorProps } from './InputColor.interface';\nimport InputColor from './InputColor';\n\nexport type { IHexFormatOptions, IInputColorProps };\nexport default InputColor;\n"],"mappings":";;AAIA,IAAA,qBAAe"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
import '../../../styles/base.css';
|
|
2
|
+
import { filterNumeric } from "../../../Functions/fieldValueFormatters.js";
|
|
3
|
+
import './InputCurrency.styles.css';/* empty css */
|
|
4
|
+
import cn from "classnames";
|
|
5
|
+
import { useEffect, useRef, useState } from "react";
|
|
6
|
+
import { jsx } from "react/jsx-runtime";
|
|
7
|
+
//#region src/Atomic/FormElements/InputCurrency/InputCurrency.tsx
|
|
8
|
+
var attrsOfNativeInputDefault = {};
|
|
9
|
+
var CN = "input-currency";
|
|
10
|
+
/**
|
|
11
|
+
* Type-annotation обязателен: без него TS widens `type: 'float'` → `type: string`,
|
|
12
|
+
* и при передаче в `filterNumeric(...: IBitDepthSettings)` ловим TS2345.
|
|
13
|
+
*/
|
|
14
|
+
var ONLY_NUMBERS_DEFAULT = {
|
|
15
|
+
type: "float",
|
|
16
|
+
decimalPlaces: 2
|
|
17
|
+
};
|
|
18
|
+
var InputCurrency = ({ currencySymbol = "$", testId = CN, onChange, className, value, disabled, attributesOfNativeInput = attrsOfNativeInputDefault, min = 0, max, error, isNoCheckMinMax, allowZero = false, onlyNumbers = ONLY_NUMBERS_DEFAULT }) => {
|
|
19
|
+
const [inputValue, setInputValue] = useState(currencySymbol);
|
|
20
|
+
const [isFocused, setIsFocused] = useState(false);
|
|
21
|
+
const inputRef = useRef(null);
|
|
22
|
+
const formatNumberWithCommas = (number) => {
|
|
23
|
+
const parts = number.toString().split(".");
|
|
24
|
+
parts[0] = parts[0].replace(/\B(?=(\d{3})+(?!\d))/g, ",");
|
|
25
|
+
return parts.join(".");
|
|
26
|
+
};
|
|
27
|
+
const formatCurrencyInput = (event) => {
|
|
28
|
+
let newValue = event.target.value;
|
|
29
|
+
newValue = newValue.replace(currencySymbol, "");
|
|
30
|
+
if (typeof newValue === "string" && newValue.charAt(newValue.length - 1) === ",") newValue = newValue.substring(0, newValue.length - 1).concat(".");
|
|
31
|
+
const parts = newValue.split(".");
|
|
32
|
+
const integerPart = parts[0];
|
|
33
|
+
const decimalPart = parts[1];
|
|
34
|
+
const preparedIntegerValue = filterNumeric(integerPart, {
|
|
35
|
+
...onlyNumbers,
|
|
36
|
+
type: "int"
|
|
37
|
+
});
|
|
38
|
+
const parsedIntegerValue = Number.parseInt(preparedIntegerValue);
|
|
39
|
+
if (!Number.isNaN(parsedIntegerValue)) if (parsedIntegerValue === 0 && !decimalPart) if (allowZero) {
|
|
40
|
+
setInputValue(`${currencySymbol}0`);
|
|
41
|
+
onChange(0);
|
|
42
|
+
} else {
|
|
43
|
+
setInputValue(currencySymbol);
|
|
44
|
+
onChange("");
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
let formattedValue = formatNumberWithCommas(parsedIntegerValue);
|
|
48
|
+
if (decimalPart !== void 0) {
|
|
49
|
+
const filteredDecimal = filterNumeric(decimalPart, { type: "int" });
|
|
50
|
+
if (filteredDecimal) formattedValue += `.${filteredDecimal.slice(0, onlyNumbers.decimalPlaces)}`;
|
|
51
|
+
else if (decimalPart === "") formattedValue += ".";
|
|
52
|
+
}
|
|
53
|
+
setInputValue(`${currencySymbol}${formattedValue}`);
|
|
54
|
+
onChange(Number.parseFloat(formattedValue.replace(/,/g, "")));
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
setInputValue(currencySymbol);
|
|
58
|
+
onChange("");
|
|
59
|
+
}
|
|
60
|
+
};
|
|
61
|
+
const onInputClick = () => {
|
|
62
|
+
if (!inputValue && inputRef.current) inputRef.current.selectionStart = inputRef.current.selectionEnd = currencySymbol ? currencySymbol.length : 1;
|
|
63
|
+
};
|
|
64
|
+
const onKeyDown = (event) => {
|
|
65
|
+
if (event.key.match(/^[a-z0-9]$/i) && inputRef.current) setInputValue(inputValue.slice(0, inputRef.current.selectionStart || 0));
|
|
66
|
+
};
|
|
67
|
+
const checkMinMax = (event, checkValue) => {
|
|
68
|
+
const clearValue = checkValue ?? filterNumeric(event?.target?.value || "", onlyNumbers);
|
|
69
|
+
if (!clearValue) return false;
|
|
70
|
+
const numericValue = typeof clearValue === "string" ? Number.parseFloat(clearValue) : clearValue;
|
|
71
|
+
if (numericValue < min) {
|
|
72
|
+
setInputValue(`${currencySymbol}${formatNumberWithCommas(min)}`);
|
|
73
|
+
onChange(min);
|
|
74
|
+
return false;
|
|
75
|
+
}
|
|
76
|
+
if (max && numericValue > max) {
|
|
77
|
+
setInputValue(`${currencySymbol}${formatNumberWithCommas(max)}`);
|
|
78
|
+
onChange(max);
|
|
79
|
+
return false;
|
|
80
|
+
}
|
|
81
|
+
return true;
|
|
82
|
+
};
|
|
83
|
+
useEffect(() => {
|
|
84
|
+
if (value === 0 || value === "0") if (allowZero) {
|
|
85
|
+
setInputValue(`${currencySymbol}0`);
|
|
86
|
+
onChange(0);
|
|
87
|
+
} else {
|
|
88
|
+
setInputValue(currencySymbol);
|
|
89
|
+
onChange("");
|
|
90
|
+
}
|
|
91
|
+
else if (value) setInputValue(`${currencySymbol}${formatNumberWithCommas(value)}`);
|
|
92
|
+
else setInputValue(currencySymbol);
|
|
93
|
+
}, [
|
|
94
|
+
value,
|
|
95
|
+
currencySymbol,
|
|
96
|
+
allowZero
|
|
97
|
+
]);
|
|
98
|
+
return /* @__PURE__ */ jsx("div", {
|
|
99
|
+
"data-testid": testId,
|
|
100
|
+
className: cn("input-currency-box", className, {
|
|
101
|
+
disabled,
|
|
102
|
+
"input-currency__error": error,
|
|
103
|
+
"input-currency__focused": isFocused
|
|
104
|
+
}),
|
|
105
|
+
children: /* @__PURE__ */ jsx("input", {
|
|
106
|
+
className: CN,
|
|
107
|
+
type: "text",
|
|
108
|
+
ref: inputRef,
|
|
109
|
+
value: inputValue,
|
|
110
|
+
onChange: formatCurrencyInput,
|
|
111
|
+
onClick: onInputClick,
|
|
112
|
+
onKeyDown,
|
|
113
|
+
...attributesOfNativeInput,
|
|
114
|
+
onFocus: (e) => {
|
|
115
|
+
attributesOfNativeInput?.onFocus?.(e);
|
|
116
|
+
setIsFocused(true);
|
|
117
|
+
},
|
|
118
|
+
onBlur: (e) => {
|
|
119
|
+
attributesOfNativeInput?.onBlur?.(e);
|
|
120
|
+
if (!isNoCheckMinMax) {
|
|
121
|
+
const currentValue = Number.parseFloat(filterNumeric(inputValue.replace(currencySymbol, ""), onlyNumbers));
|
|
122
|
+
checkMinMax(null, currentValue);
|
|
123
|
+
}
|
|
124
|
+
setIsFocused(false);
|
|
125
|
+
}
|
|
126
|
+
})
|
|
127
|
+
});
|
|
128
|
+
};
|
|
129
|
+
InputCurrency.displayName = "InputCurrency";
|
|
130
|
+
//#endregion
|
|
131
|
+
export { InputCurrency as default };
|
|
132
|
+
|
|
133
|
+
//# sourceMappingURL=InputCurrency.js.map
|