intelicoreact 1.4.76 → 1.4.78
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Atomic/FormElements/ActionAlert/ActionAlert.js +9 -1
- package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +10 -1
- package/dist/Atomic/FormElements/Calendar/Calendar.js +24 -4
- package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +10 -1
- package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +14 -2
- package/dist/Atomic/FormElements/Datepicker/Datepicker.js +54 -5
- package/dist/Atomic/FormElements/Datepicker/components/Calendar.js +21 -3
- package/dist/Atomic/FormElements/Dropdown/Dropdown.js +145 -52
- package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +7 -1
- package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +91 -25
- package/dist/Atomic/FormElements/FileLoader/FileLoader.js +15 -3
- package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +29 -15
- package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +15 -5
- package/dist/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.js +23 -4
- package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +26 -6
- package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +38 -19
- package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +38 -9
- package/dist/Atomic/FormElements/Input/Input.js +60 -25
- package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +31 -4
- package/dist/Atomic/FormElements/InputColor/InputColor.js +14 -4
- package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +29 -6
- package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +43 -8
- package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +21 -3
- package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +81 -58
- package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +41 -6
- package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +8 -1
- package/dist/Atomic/FormElements/InputDateRange/dependencies.js +46 -16
- package/dist/Atomic/FormElements/InputLink/InputLink.js +23 -6
- package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +4 -0
- package/dist/Atomic/FormElements/InputMask/InputMask.js +208 -77
- package/dist/Atomic/FormElements/InputMask/functions.js +28 -2
- package/dist/Atomic/FormElements/InputMask2/InputMask2.js +119 -43
- package/dist/Atomic/FormElements/InputMask2/functions.js +28 -2
- package/dist/Atomic/FormElements/InputMask3/InputMask3.js +137 -44
- package/dist/Atomic/FormElements/InputMask3/functions.js +28 -2
- package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +17 -3
- package/dist/Atomic/FormElements/InputsRow/InputsRow.js +24 -5
- package/dist/Atomic/FormElements/Label/Label.js +9 -1
- package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +73 -35
- package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +15 -3
- package/dist/Atomic/FormElements/NumericInput/NumericInput.js +44 -23
- package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +17 -7
- package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +14 -3
- package/dist/Atomic/FormElements/RadioInput/RadioInput.js +10 -1
- package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +14 -3
- package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +23 -3
- package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +34 -17
- package/dist/Atomic/FormElements/RangeList/RangeList.js +25 -6
- package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +11 -1
- package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +85 -14
- package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +132 -43
- package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +10 -1
- package/dist/Atomic/FormElements/Switcher/Switcher.js +10 -1
- package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +13 -1
- package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +10 -1
- package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +17 -2
- package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +17 -3
- package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +11 -1
- package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +29 -6
- package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +3 -2
- package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +12 -1
- package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.js +23 -6
- package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +223 -105
- package/dist/Atomic/FormElements/Text/Text.js +16 -10
- package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +9 -1
- package/dist/Atomic/FormElements/Textarea/Textarea.js +16 -5
- package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +35 -6
- package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +13 -4
- package/dist/Atomic/FormElements/TimeRange/TimeRange.js +21 -7
- package/dist/Atomic/FormElements/UserContacts/UserContacts.js +35 -8
- package/dist/Atomic/FormElements/UserContacts/partial/defaultIcons.js +91 -0
- package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +18 -5
- package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +10 -3
- package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +11 -3
- package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +2 -1
- package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +12 -5
- package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +3 -3
- package/dist/Atomic/Layout/Header/Header.js +15 -3
- package/dist/Atomic/Layout/MainMenu/MainMenu.js +20 -3
- package/dist/Atomic/Layout/Spinner/Spinner.js +8 -1
- package/dist/Atomic/UI/Accordion/Accordion.js +19 -3
- package/dist/Atomic/UI/Accordion/AccordionItem.js +23 -9
- package/dist/Atomic/UI/AccordionTable/AccordionTable.js +32 -7
- package/dist/Atomic/UI/AccordionText/AccordionText.js +17 -3
- package/dist/Atomic/UI/AdvancedTag/AdvTag.js +21 -4
- package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +15 -3
- package/dist/Atomic/UI/Alert/Alert.js +19 -3
- package/dist/Atomic/UI/Arrow/Arrow.js +16 -3
- package/dist/Atomic/UI/Box/Box.js +9 -3
- package/dist/Atomic/UI/Button/Button.js +11 -2
- package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +10 -1
- package/dist/Atomic/UI/Chart/Chart.js +29 -4
- package/dist/Atomic/UI/Chart/partial/Chart.constants.js +19 -11
- package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +12 -1
- package/dist/Atomic/UI/Chart/partial/datasetSetters.js +34 -11
- package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +56 -82
- package/dist/Atomic/UI/Chart/partial/optionsSetters.js +19 -15
- package/dist/Atomic/UI/Chart/partial/utils.js +20 -6
- package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +13 -3
- package/dist/Atomic/UI/DateTime/DateTime.js +14 -3
- package/dist/Atomic/UI/DebugContainer/DebugContainer.js +16 -4
- package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +11 -3
- package/dist/Atomic/UI/DoubleString/DoubleString.js +17 -5
- package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +10 -3
- package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +52 -17
- package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +29 -1
- package/dist/Atomic/UI/Hint/Hint.js +39 -13
- package/dist/Atomic/UI/Hint/partials/_utils.js +19 -4
- package/dist/Atomic/UI/Modal/Modal.js +28 -6
- package/dist/Atomic/UI/Modal/ModalHOC.js +9 -1
- package/dist/Atomic/UI/Modal/partials/ModalFooter.js +7 -1
- package/dist/Atomic/UI/Modal/partials/ModalTitle.js +8 -1
- package/dist/Atomic/UI/Modal/partials/useMobileModal.js +49 -32
- package/dist/Atomic/UI/ModalBackup/Modal.js +174 -0
- package/dist/Atomic/UI/ModalBackup/Modal.scss +333 -0
- package/dist/Atomic/UI/ModalBackup/ModalHOC.js +51 -0
- package/dist/Atomic/UI/ModalBackup/partials/ModalFooter.js +24 -0
- package/dist/Atomic/UI/ModalBackup/partials/ModalTitle.js +41 -0
- package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +21 -6
- package/dist/Atomic/UI/NavLine/NavLine.js +55 -26
- package/dist/Atomic/UI/NavLine/Tabs.js +3 -2
- package/dist/Atomic/UI/PageTitle/PageTitle.js +10 -2
- package/dist/Atomic/UI/PieChart/PieChart.js +10 -1
- package/dist/Atomic/UI/Price/Price.js +8 -3
- package/dist/Atomic/UI/PriceRange/PriceRange.js +7 -1
- package/dist/Atomic/UI/ProgressLine/ProgressLine.js +16 -1
- package/dist/Atomic/UI/Status/Status.js +8 -1
- package/dist/Atomic/UI/Table/Partials/TdCell.js +29 -5
- package/dist/Atomic/UI/Table/Partials/TdHeader.js +11 -1
- package/dist/Atomic/UI/Table/Partials/TdRow.js +17 -5
- package/dist/Atomic/UI/Table/Partials/TdTitle.js +14 -3
- package/dist/Atomic/UI/Table/Table.js +12 -1
- package/dist/Atomic/UI/Table/TdTypes/TdActions.js +18 -2
- package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +9 -1
- package/dist/Atomic/UI/Table/TdTypes/TdRange.js +4 -1
- package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +13 -1
- package/dist/Atomic/UI/Tag/Tag.js +26 -11
- package/dist/Atomic/UI/TagList/TagList.js +52 -21
- package/dist/Atomic/UI/TagList/TagList.scss +3 -2
- package/dist/Atomic/UI/UserBox/UserBox.js +13 -1
- package/dist/Atomic/UI/WizardStepper/constructor.js +11 -3
- package/dist/Atomic/UI/WizardStepper/index.js +5 -1
- package/dist/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.js +10 -0
- package/dist/Atomic/UI/WizardStepper/ui/StateIcon/index.js +4 -1
- package/dist/Atomic/UI/WizardStepper/ui/StepRow/StepRow.js +17 -2
- package/dist/Atomic/UI/WizardStepper/ui/StepRow/index.js +5 -1
- package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.js +15 -1
- package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/index.js +5 -1
- package/dist/Atomic/UI/WizardStepper/ui/icons.js +9 -2
- package/dist/Atomic/UI/WizardStepper/ui/index.js +5 -1
- package/dist/Classes/AbortableFetch.js +93 -36
- package/dist/Classes/AnimatedHandler.js +7 -3
- package/dist/Classes/RESTAPI/index.js +43 -39
- package/dist/Classes/RESTAPI/partials/AbortableFetch.js +93 -35
- package/dist/Classes/RESTAPI/partials/ApiBase.js +9 -1
- package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +32 -24
- package/dist/Classes/RESTAPI/partials/ApiUtils.js +41 -34
- package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +46 -21
- package/dist/Classes/RESTAPI/partials/Utils.js +19 -6
- package/dist/Classes/RESTAPI/partials/_outerDependencies.js +6 -2
- package/dist/Classes/RESTAPI/partials/_utils.js +39 -16
- package/dist/Constants/index.constants.js +15 -8
- package/dist/Functions/Portal.js +16 -5
- package/dist/Functions/customEventListener.js +17 -4
- package/dist/Functions/fieldValueFormatters.js +83 -43
- package/dist/Functions/hooks/useFormFieldsChangesManager.js +26 -23
- package/dist/Functions/locale/createTranslator.js +9 -4
- package/dist/Functions/operations.js +22 -12
- package/dist/Functions/presets/inputMaskPresets.js +11 -9
- package/dist/Functions/presets/inputPresets.js +11 -8
- package/dist/Functions/presets/mobileKeyboardTypesPresets.js +9 -7
- package/dist/Functions/schemas.js +13 -6
- package/dist/Functions/useBodyScrollLock.js +6 -1
- package/dist/Functions/useClickOutside.js +4 -0
- package/dist/Functions/useDebounce.js +7 -2
- package/dist/Functions/useFieldFocus.js +18 -6
- package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +9 -0
- package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +23 -12
- package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +15 -6
- package/dist/Functions/useFormTools/functions/General.js +28 -18
- package/dist/Functions/useFormTools/functions/RenderFields.js +11 -2
- package/dist/Functions/useFormTools/functions/usePrevious.js +5 -1
- package/dist/Functions/useFormTools/index.js +144 -85
- package/dist/Functions/useInputHighlightError.js +12 -3
- package/dist/Functions/useIsMobile.js +13 -7
- package/dist/Functions/useKeyPress/useHandleKeyPress.js +7 -1
- package/dist/Functions/useKeyPress/useKeyPress.js +9 -1
- package/dist/Functions/useLocalStorage.js +9 -1
- package/dist/Functions/useLocationParams.js +5 -4
- package/dist/Functions/useMediaQuery.js +9 -3
- package/dist/Functions/useMetaInfo.js +10 -3
- package/dist/Functions/useMouseUpOutside.js +3 -0
- package/dist/Functions/useOnlineStatus.js +9 -1
- package/dist/Functions/usePasswordChecker.js +20 -4
- package/dist/Functions/usePrevious.js +5 -1
- package/dist/Functions/useResize.js +10 -2
- package/dist/Functions/useScrollTo.js +7 -2
- package/dist/Functions/useToggle.js +5 -1
- package/dist/Functions/utils.js +131 -56
- package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +9 -2
- package/dist/Molecular/CustomIcons/components/AlertCircle.js +9 -2
- package/dist/Molecular/CustomIcons/components/AppStore.js +9 -2
- package/dist/Molecular/CustomIcons/components/Arrow.js +9 -2
- package/dist/Molecular/CustomIcons/components/ArrowDown.js +9 -2
- package/dist/Molecular/CustomIcons/components/ArrowLeft.js +9 -2
- package/dist/Molecular/CustomIcons/components/ArrowRight.js +9 -2
- package/dist/Molecular/CustomIcons/components/ArrowUp.js +9 -2
- package/dist/Molecular/CustomIcons/components/Bell.js +9 -2
- package/dist/Molecular/CustomIcons/components/Button.js +9 -2
- package/dist/Molecular/CustomIcons/components/Campaigns.js +9 -2
- package/dist/Molecular/CustomIcons/components/Check.js +9 -2
- package/dist/Molecular/CustomIcons/components/Check2.js +9 -2
- package/dist/Molecular/CustomIcons/components/ChevronDown.js +9 -2
- package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +9 -2
- package/dist/Molecular/CustomIcons/components/ChevronLeft.js +9 -2
- package/dist/Molecular/CustomIcons/components/ChevronRight.js +9 -2
- package/dist/Molecular/CustomIcons/components/ChevronUp.js +9 -2
- package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +9 -2
- package/dist/Molecular/CustomIcons/components/Close.js +9 -2
- package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +9 -2
- package/dist/Molecular/CustomIcons/components/Delete.js +9 -2
- package/dist/Molecular/CustomIcons/components/Edit.js +9 -2
- package/dist/Molecular/CustomIcons/components/Email.js +9 -2
- package/dist/Molecular/CustomIcons/components/FinturfLogo.js +9 -2
- package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +9 -2
- package/dist/Molecular/CustomIcons/components/Flows.js +9 -2
- package/dist/Molecular/CustomIcons/components/Gift.js +9 -2
- package/dist/Molecular/CustomIcons/components/GoogleAuth.js +9 -2
- package/dist/Molecular/CustomIcons/components/GooglePlay.js +9 -2
- package/dist/Molecular/CustomIcons/components/HelpCircle.js +9 -2
- package/dist/Molecular/CustomIcons/components/HelpCircle2.js +9 -2
- package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +9 -2
- package/dist/Molecular/CustomIcons/components/Home.js +9 -2
- package/dist/Molecular/CustomIcons/components/Home2.js +9 -2
- package/dist/Molecular/CustomIcons/components/Key.js +9 -2
- package/dist/Molecular/CustomIcons/components/Landers.js +9 -2
- package/dist/Molecular/CustomIcons/components/Lock.js +9 -2
- package/dist/Molecular/CustomIcons/components/Mail.js +9 -2
- package/dist/Molecular/CustomIcons/components/Mastercard.js +9 -2
- package/dist/Molecular/CustomIcons/components/Minus.js +9 -2
- package/dist/Molecular/CustomIcons/components/Offers.js +9 -2
- package/dist/Molecular/CustomIcons/components/Pause.js +9 -2
- package/dist/Molecular/CustomIcons/components/PayPal.js +9 -2
- package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +9 -2
- package/dist/Molecular/CustomIcons/components/Phone.js +9 -2
- package/dist/Molecular/CustomIcons/components/Play.js +9 -2
- package/dist/Molecular/CustomIcons/components/Plus.js +9 -2
- package/dist/Molecular/CustomIcons/components/Profile.js +9 -2
- package/dist/Molecular/CustomIcons/components/QRCode.js +9 -2
- package/dist/Molecular/CustomIcons/components/Rectangle.js +9 -2
- package/dist/Molecular/CustomIcons/components/Revert.js +9 -2
- package/dist/Molecular/CustomIcons/components/Star.js +9 -2
- package/dist/Molecular/CustomIcons/components/Star2.js +9 -2
- package/dist/Molecular/CustomIcons/components/TrafficSources.js +9 -2
- package/dist/Molecular/CustomIcons/components/Trash.js +9 -2
- package/dist/Molecular/CustomIcons/components/TrashRed.js +9 -2
- package/dist/Molecular/CustomIcons/components/Triggers.js +9 -2
- package/dist/Molecular/CustomIcons/components/User.js +9 -2
- package/dist/Molecular/CustomIcons/components/Visa.js +9 -2
- package/dist/Molecular/CustomIcons/components/X.js +9 -2
- package/dist/Molecular/CustomIcons/index.js +122 -0
- package/dist/Molecular/FormElement/FormElement.js +12 -1
- package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +31 -30
- package/dist/Molecular/FormWithDependOn/partials/_utils.js +12 -9
- package/dist/Molecular/InputAddress/InputAddress.js +114 -65
- package/dist/Molecular/InputPassword/InputPassword.js +19 -5
- package/dist/index.js +2 -0
- package/package.json +1 -1
- package/dist/Atomic/UI/Hint/partial/_utils.js +0 -52
|
@@ -1,24 +1,38 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.default = void 0;
|
|
9
|
+
|
|
8
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
|
|
9
12
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
13
|
+
|
|
10
14
|
var _reactDom = require("react-dom");
|
|
15
|
+
|
|
11
16
|
var _reactFeather = require("react-feather");
|
|
17
|
+
|
|
12
18
|
var _utils = require("../../../Functions/utils");
|
|
19
|
+
|
|
13
20
|
var _CustomIcons = require("./../../../Molecular/CustomIcons");
|
|
21
|
+
|
|
14
22
|
var _utils2 = require("./partials/_utils");
|
|
23
|
+
|
|
15
24
|
require("./Hint.scss");
|
|
16
|
-
|
|
17
|
-
function
|
|
25
|
+
|
|
26
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
27
|
+
|
|
28
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
29
|
+
|
|
18
30
|
// ToDo - не понятно зачем (ф-я не используется), но не трогаю
|
|
19
31
|
const time = (Date.now() * Math.random() / 1000).toString().replace(/\./g, "_");
|
|
32
|
+
|
|
20
33
|
const Hint = _ref => {
|
|
21
34
|
var _ref2, _label$replace;
|
|
35
|
+
|
|
22
36
|
let {
|
|
23
37
|
hint,
|
|
24
38
|
side = "right",
|
|
@@ -37,22 +51,24 @@ const Hint = _ref => {
|
|
|
37
51
|
} = _ref;
|
|
38
52
|
const hintRef = (0, _react.useRef)(null);
|
|
39
53
|
const [hintId] = (0, _react.useState)((_ref2 = key !== null && key !== void 0 ? key : id) !== null && _ref2 !== void 0 ? _ref2 : Math.random().toString(16).slice(2));
|
|
40
|
-
const [isOpen, setIsOpen] = (0, _react.useState)(false);
|
|
41
|
-
|
|
42
|
-
//? Определяем handleScroll-стейт, чтобы никогда не менять ссылку тем самым гарантировать корректную работу removeEventListener.
|
|
54
|
+
const [isOpen, setIsOpen] = (0, _react.useState)(false); //? Определяем handleScroll-стейт, чтобы никогда не менять ссылку тем самым гарантировать корректную работу removeEventListener.
|
|
43
55
|
//? Инициализируем стейт вызовом конструктора HandleScrollObj, передаем setIsOpen для записи в объект.
|
|
44
|
-
|
|
45
|
-
//? По аналогии определяем handleClickOutside
|
|
56
|
+
|
|
57
|
+
const [handleScroll] = (0, _react.useState)(new _utils2.HandleScrollObj(setIsOpen)); //? По аналогии определяем handleClickOutside
|
|
58
|
+
|
|
46
59
|
const [handleClickOutside] = (0, _react.useState)(new _utils2.HandleClickOutsideObj(hintId, setIsOpen));
|
|
47
60
|
const isCallbackExist = typeof onClickCallback === "function";
|
|
61
|
+
|
|
48
62
|
const getHintMarkUp = className => {
|
|
49
63
|
return /*#__PURE__*/_react.default.createElement("div", {
|
|
50
64
|
"data-testid": "test-hint-text",
|
|
51
65
|
className: (0, _classnames.default)("hint__text", "hint__text_".concat(side), "hint--".concat(className, "__text"))
|
|
52
66
|
}, hint, children);
|
|
53
67
|
};
|
|
68
|
+
|
|
54
69
|
const setHintContainerStyles = () => {
|
|
55
70
|
var _ref3, _ref4, _ref5;
|
|
71
|
+
|
|
56
72
|
const hc = (0, _utils2.getHintContainer)(hintId);
|
|
57
73
|
if (!hc || !isOpen) return false;
|
|
58
74
|
const {
|
|
@@ -75,11 +91,11 @@ const Hint = _ref => {
|
|
|
75
91
|
hc.style.width = isOpen ? (_ref3 = (!Number.isNaN(+addWidth) ? +addWidth : 0) + width) === null || _ref3 === void 0 ? void 0 : _ref3.toString().concat("px") : 0;
|
|
76
92
|
hc.style.left = isOpen ? (_ref4 = (!Number.isNaN(+addLeft) ? +addLeft : 0) + left) === null || _ref4 === void 0 ? void 0 : _ref4.toString().concat("px") : 0;
|
|
77
93
|
hc.style.top = isOpen ? (_ref5 = (!Number.isNaN(+addTop) ? +addTop : 0) + top) === null || _ref5 === void 0 ? void 0 : _ref5.toString().concat("px") : 0;
|
|
78
|
-
hc.style.maxHeight = isOpen ? swHeight === null || swHeight === void 0 ? void 0 : swHeight.toString().concat("px") : 0;
|
|
79
|
-
|
|
80
|
-
//? Базовое значение погрешности
|
|
94
|
+
hc.style.maxHeight = isOpen ? swHeight === null || swHeight === void 0 ? void 0 : swHeight.toString().concat("px") : 0; //? Базовое значение погрешности
|
|
81
95
|
//? В разных свитч-кейсах может использоваться по разному (вся или частично). Определял "на глазок"
|
|
96
|
+
|
|
82
97
|
const INACCURACY = 20;
|
|
98
|
+
|
|
83
99
|
switch (side) {
|
|
84
100
|
case 'top':
|
|
85
101
|
case 'centeredTop':
|
|
@@ -87,41 +103,49 @@ const Hint = _ref => {
|
|
|
87
103
|
sw.classList.remove("hint__text_".concat(side));
|
|
88
104
|
sw.classList.add("hint__text_".concat(side === 'top' ? 'bottom' : 'centeredBottom'));
|
|
89
105
|
}
|
|
106
|
+
|
|
90
107
|
break;
|
|
108
|
+
|
|
91
109
|
case 'bottom':
|
|
92
110
|
case 'centeredBottom':
|
|
93
111
|
if (top + swHeight + INACCURACY > windowInnerHeight) {
|
|
94
112
|
sw.classList.remove("hint__text_".concat(side));
|
|
95
113
|
sw.classList.add("hint__text_".concat(side === 'bottom' ? 'top' : 'centeredTop'));
|
|
96
114
|
}
|
|
115
|
+
|
|
97
116
|
break;
|
|
117
|
+
|
|
98
118
|
case 'left':
|
|
99
119
|
if (left - swWidth - INACCURACY / 2 < 0) {
|
|
100
120
|
sw.classList.remove("hint__text_".concat(side));
|
|
101
121
|
sw.classList.add('hint__text_right');
|
|
102
122
|
}
|
|
123
|
+
|
|
103
124
|
break;
|
|
125
|
+
|
|
104
126
|
case 'right':
|
|
105
127
|
default:
|
|
106
128
|
if (left + width + swWidth + INACCURACY / 2 > windowInnerWidth) {
|
|
107
129
|
sw.classList.remove("hint__text_".concat(side));
|
|
108
130
|
sw.classList.add('hint__text_left');
|
|
109
131
|
}
|
|
132
|
+
|
|
110
133
|
break;
|
|
111
134
|
}
|
|
112
135
|
};
|
|
136
|
+
|
|
113
137
|
const renderHintContainer = className => {
|
|
114
138
|
const hc = (0, _utils2.getHintContainer)(hintId);
|
|
115
139
|
if (!hc) return null;
|
|
116
140
|
return /*#__PURE__*/(0, _reactDom.createPortal)(getHintMarkUp(className), hc);
|
|
117
141
|
};
|
|
142
|
+
|
|
118
143
|
(0, _react.useEffect)(() => {
|
|
119
144
|
(0, _utils2.initHintContainer)(hintId, hintContainer);
|
|
120
145
|
}, []);
|
|
121
146
|
(0, _react.useEffect)(() => {
|
|
122
|
-
setHintContainerStyles();
|
|
147
|
+
setHintContainerStyles(); //! Обеспечиваем работу колбэка ТОЛЬКО для открытых тултипов
|
|
123
148
|
|
|
124
|
-
//! Обеспечиваем работу колбэка ТОЛЬКО для открытых тултипов
|
|
125
149
|
if (isOpen) {
|
|
126
150
|
document.addEventListener("scroll", handleScroll, true);
|
|
127
151
|
document.addEventListener("click", handleClickOutside, true);
|
|
@@ -160,4 +184,6 @@ const Hint = _ref => {
|
|
|
160
184
|
})
|
|
161
185
|
}, (0, _utils.capitalized)(label))), isOpen && renderHintContainer(className));
|
|
162
186
|
};
|
|
163
|
-
|
|
187
|
+
|
|
188
|
+
var _default = Hint;
|
|
189
|
+
exports.default = _default;
|
|
@@ -4,19 +4,28 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.initHintContainer = exports.getParentNode = exports.getHintContainerId = exports.getHintContainer = exports.HandleScrollObj = exports.HandleClickOutsideObj = void 0;
|
|
7
|
+
|
|
7
8
|
const getHintContainerId = hintId => "hint-container-for-hint--id-".concat(hintId);
|
|
9
|
+
|
|
8
10
|
exports.getHintContainerId = getHintContainerId;
|
|
11
|
+
|
|
9
12
|
const getHintContainer = hintId => {
|
|
10
13
|
return document.getElementById(getHintContainerId(hintId));
|
|
11
14
|
};
|
|
15
|
+
|
|
12
16
|
exports.getHintContainer = getHintContainer;
|
|
17
|
+
|
|
13
18
|
const getParentNode = () => {
|
|
14
19
|
var _ref, _document$querySelect;
|
|
20
|
+
|
|
15
21
|
return (_ref = (_document$querySelect = document.querySelector("div#root")) !== null && _document$querySelect !== void 0 ? _document$querySelect : document.querySelector("div#app")) !== null && _ref !== void 0 ? _ref : document.body;
|
|
16
22
|
};
|
|
23
|
+
|
|
17
24
|
exports.getParentNode = getParentNode;
|
|
25
|
+
|
|
18
26
|
const initHintContainer = (hintId, hintContainerSettings) => {
|
|
19
27
|
var _getParentNode;
|
|
28
|
+
|
|
20
29
|
const {
|
|
21
30
|
className
|
|
22
31
|
} = hintContainerSettings;
|
|
@@ -24,29 +33,35 @@ const initHintContainer = (hintId, hintContainerSettings) => {
|
|
|
24
33
|
hintContainer.setAttribute("id", getHintContainerId(hintId));
|
|
25
34
|
hintContainer.classList.add("hint__container");
|
|
26
35
|
if (className) hintContainer.classList.add(className);
|
|
27
|
-
(_getParentNode = getParentNode()) === null || _getParentNode === void 0
|
|
28
|
-
};
|
|
29
|
-
|
|
30
|
-
//? addEventListener можно инициализировать двумя способами
|
|
36
|
+
(_getParentNode = getParentNode()) === null || _getParentNode === void 0 ? void 0 : _getParentNode.append(hintContainer);
|
|
37
|
+
}; //? addEventListener можно инициализировать двумя способами
|
|
31
38
|
//? - передать прямой колбэк (ф-ю)
|
|
32
39
|
//? - передать объект в котором есть метод handleEvent (помимо handleEvent можно записать в this прочие полезные значения)
|
|
33
40
|
//? Пользуемся вторым способом, чтобы записать входные данные (вообще можно не писать, работает и просто от замыкания, но делаем по "дзену")
|
|
34
41
|
//! Метод написан с расчетом на то, что будет вызываться ТОЛЬКО открытым тултипом
|
|
42
|
+
|
|
43
|
+
|
|
35
44
|
exports.initHintContainer = initHintContainer;
|
|
45
|
+
|
|
36
46
|
const HandleScrollObj = function (setIsOpen) {
|
|
37
47
|
this.setIsOpen = setIsOpen;
|
|
48
|
+
|
|
38
49
|
this.handleEvent = function () {
|
|
39
50
|
this.setIsOpen(false);
|
|
40
51
|
};
|
|
41
52
|
};
|
|
53
|
+
|
|
42
54
|
exports.HandleScrollObj = HandleScrollObj;
|
|
55
|
+
|
|
43
56
|
const HandleClickOutsideObj = function (id, setIsOpen) {
|
|
44
57
|
this.id = id;
|
|
45
58
|
this.setIsOpen = setIsOpen;
|
|
59
|
+
|
|
46
60
|
this.handleEvent = function (event) {
|
|
47
61
|
if (!getHintContainer(this.id).contains(event === null || event === void 0 ? void 0 : event.target)) {
|
|
48
62
|
this.setIsOpen(false);
|
|
49
63
|
}
|
|
50
64
|
};
|
|
51
65
|
};
|
|
66
|
+
|
|
52
67
|
exports.HandleClickOutsideObj = HandleClickOutsideObj;
|
|
@@ -1,26 +1,42 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.renderModalTitle = exports.default = exports.KEY_CODE = void 0;
|
|
9
|
+
|
|
8
10
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
+
|
|
9
12
|
var _react = _interopRequireWildcard(require("react"));
|
|
13
|
+
|
|
10
14
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
15
|
+
|
|
11
16
|
var _Button = _interopRequireDefault(require("../Button/Button"));
|
|
17
|
+
|
|
12
18
|
var _useHandleKeyPress = _interopRequireDefault(require("./../../../Functions/useKeyPress/useHandleKeyPress"));
|
|
19
|
+
|
|
13
20
|
var _ModalFooter = _interopRequireDefault(require("./partials/ModalFooter"));
|
|
21
|
+
|
|
14
22
|
var _ModalTitle = _interopRequireDefault(require("./partials/ModalTitle"));
|
|
23
|
+
|
|
15
24
|
var _useMobileModal = _interopRequireDefault(require("./partials/useMobileModal"));
|
|
25
|
+
|
|
16
26
|
require("./Modal.scss");
|
|
27
|
+
|
|
17
28
|
require("./ModalMobile.scss");
|
|
18
|
-
|
|
19
|
-
function
|
|
20
|
-
|
|
29
|
+
|
|
30
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
31
|
+
|
|
32
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
33
|
+
|
|
34
|
+
const KEY_CODE = Object.freeze({
|
|
21
35
|
ENTER: 13,
|
|
22
36
|
ESC: 27
|
|
23
37
|
});
|
|
38
|
+
exports.KEY_CODE = KEY_CODE;
|
|
39
|
+
|
|
24
40
|
const renderModalTitle = _ref => {
|
|
25
41
|
let {
|
|
26
42
|
mode,
|
|
@@ -30,7 +46,9 @@ const renderModalTitle = _ref => {
|
|
|
30
46
|
if (mode && mode !== "default" && !onlyTitle) return "".concat(mode[0].toUpperCase() + mode.slice(1), " ").concat(title);
|
|
31
47
|
return title;
|
|
32
48
|
};
|
|
49
|
+
|
|
33
50
|
exports.renderModalTitle = renderModalTitle;
|
|
51
|
+
|
|
34
52
|
const Modal = /*#__PURE__*/_react.default.forwardRef((_ref2, ref) => {
|
|
35
53
|
let {
|
|
36
54
|
zIndex = 100,
|
|
@@ -93,12 +111,12 @@ const Modal = /*#__PURE__*/_react.default.forwardRef((_ref2, ref) => {
|
|
|
93
111
|
});
|
|
94
112
|
const handle = {
|
|
95
113
|
confirm: () => {
|
|
96
|
-
onConfirm === null || onConfirm === void 0
|
|
114
|
+
onConfirm === null || onConfirm === void 0 ? void 0 : onConfirm();
|
|
97
115
|
},
|
|
98
116
|
decline: () => {
|
|
99
117
|
//? closeModal используется для ESC и оверлея, давно хотелось иметь возможность разделить
|
|
100
118
|
//? Теперь можно не передавать closeModal, а для cancel-кнопки передать отдельный обработчик
|
|
101
|
-
if (typeof onDecline === "function") onDecline();else closeModal === null || closeModal === void 0
|
|
119
|
+
if (typeof onDecline === "function") onDecline();else closeModal === null || closeModal === void 0 ? void 0 : closeModal();
|
|
102
120
|
}
|
|
103
121
|
};
|
|
104
122
|
(0, _useHandleKeyPress.default)({
|
|
@@ -106,6 +124,7 @@ const Modal = /*#__PURE__*/_react.default.forwardRef((_ref2, ref) => {
|
|
|
106
124
|
escCallback: closeOnEsc && typeof closeModal === "function" ? () => closeModal() : null,
|
|
107
125
|
withClamping: false
|
|
108
126
|
});
|
|
127
|
+
|
|
109
128
|
const render = () => !isOpen ? null : /*#__PURE__*/_react.default.createElement("div", {
|
|
110
129
|
style: {
|
|
111
130
|
zIndex
|
|
@@ -175,6 +194,9 @@ const Modal = /*#__PURE__*/_react.default.forwardRef((_ref2, ref) => {
|
|
|
175
194
|
icon: confirmBtnIcon,
|
|
176
195
|
isIconRight: isConfirmBtnIconPositionRight
|
|
177
196
|
}))))))));
|
|
197
|
+
|
|
178
198
|
return render();
|
|
179
199
|
});
|
|
180
|
-
|
|
200
|
+
|
|
201
|
+
var _default = Modal;
|
|
202
|
+
exports.default = _default;
|
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.default = void 0;
|
|
9
|
+
|
|
8
10
|
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
9
12
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
13
|
+
|
|
10
14
|
var _useHandleKeyPress = _interopRequireDefault(require("../../../Functions/useKeyPress/useHandleKeyPress"));
|
|
15
|
+
|
|
11
16
|
require("./Modal.scss");
|
|
17
|
+
|
|
12
18
|
const Modal = _ref => {
|
|
13
19
|
let {
|
|
14
20
|
zIndex = 100,
|
|
@@ -42,4 +48,6 @@ const Modal = _ref => {
|
|
|
42
48
|
className: (0, _classnames.default)(className, "modal")
|
|
43
49
|
}, children));
|
|
44
50
|
};
|
|
45
|
-
|
|
51
|
+
|
|
52
|
+
var _default = Modal;
|
|
53
|
+
exports.default = _default;
|
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.default = void 0;
|
|
9
|
+
|
|
8
10
|
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
9
12
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
13
|
+
|
|
10
14
|
const ModalFooter = _ref => {
|
|
11
15
|
let {
|
|
12
16
|
className = "",
|
|
@@ -18,4 +22,6 @@ const ModalFooter = _ref => {
|
|
|
18
22
|
className: (0, _classnames.default)("modal__footer", className)
|
|
19
23
|
}, children);
|
|
20
24
|
};
|
|
21
|
-
|
|
25
|
+
|
|
26
|
+
var _default = ModalFooter;
|
|
27
|
+
exports.default = _default;
|
|
@@ -1,13 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.default = void 0;
|
|
9
|
+
|
|
8
10
|
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
|
|
9
12
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
13
|
+
|
|
10
14
|
var _reactFeather = require("react-feather");
|
|
15
|
+
|
|
11
16
|
const ModalTitle = _ref => {
|
|
12
17
|
let {
|
|
13
18
|
variant = "primary",
|
|
@@ -37,4 +42,6 @@ const ModalTitle = _ref => {
|
|
|
37
42
|
className: "modal-close-icon"
|
|
38
43
|
})));
|
|
39
44
|
};
|
|
40
|
-
|
|
45
|
+
|
|
46
|
+
var _default = ModalTitle;
|
|
47
|
+
exports.default = _default;
|
|
@@ -1,20 +1,28 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
4
5
|
Object.defineProperty(exports, "__esModule", {
|
|
5
6
|
value: true
|
|
6
7
|
});
|
|
7
8
|
exports.default = useMobileModal;
|
|
9
|
+
|
|
8
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
+
|
|
9
12
|
var _useIsMobile = _interopRequireDefault(require("../../../../Functions/useIsMobile"));
|
|
10
|
-
|
|
11
|
-
function
|
|
13
|
+
|
|
14
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
15
|
+
|
|
16
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
17
|
+
|
|
12
18
|
const SCROLL_DIRECTION = {
|
|
13
19
|
UP: "up",
|
|
14
20
|
DOWN: "down"
|
|
15
21
|
};
|
|
22
|
+
|
|
16
23
|
function useMobileModal(_ref) {
|
|
17
|
-
var
|
|
24
|
+
var _modalMobileHeaderRef5, _modalMobileHeaderRef6, _modalMobileFooterRef5, _modalMobileFooterRef6;
|
|
25
|
+
|
|
18
26
|
let {
|
|
19
27
|
modalRef = null,
|
|
20
28
|
withMobileLogic = false,
|
|
@@ -44,11 +52,12 @@ function useMobileModal(_ref) {
|
|
|
44
52
|
const [scrollTop, setScrollTop] = (0, _react.useState)(0);
|
|
45
53
|
const [scrollHeight, setScrollHeight] = (0, _react.useState)(1);
|
|
46
54
|
const [containerScrollHeight, setContainerScrollHeight] = (0, _react.useState)(1);
|
|
47
|
-
|
|
48
55
|
/* MODALS LOGIC | BEGIN */
|
|
49
56
|
// Count ScrollTop
|
|
57
|
+
|
|
50
58
|
(0, _react.useLayoutEffect)(() => {
|
|
51
59
|
const el = modalMobileContainerRef === null || modalMobileContainerRef === void 0 ? void 0 : modalMobileContainerRef.current;
|
|
60
|
+
|
|
52
61
|
if (el) {
|
|
53
62
|
el.addEventListener("scroll", () => {
|
|
54
63
|
setScrollTop(scrollTop => {
|
|
@@ -57,35 +66,38 @@ function useMobileModal(_ref) {
|
|
|
57
66
|
});
|
|
58
67
|
});
|
|
59
68
|
}
|
|
60
|
-
}, [modalMobileContainerRef === null || modalMobileContainerRef === void 0 ? void 0 : modalMobileContainerRef.current]);
|
|
61
|
-
|
|
69
|
+
}, [modalMobileContainerRef === null || modalMobileContainerRef === void 0 ? void 0 : modalMobileContainerRef.current]); // Count ScrollDirection
|
|
70
|
+
|
|
62
71
|
(0, _react.useEffect)(() => {
|
|
63
72
|
setScrollDirection(prevScrollDirection => scrollTop < scrollTopPrev ? SCROLL_DIRECTION.UP : scrollTop > scrollTopPrev ? SCROLL_DIRECTION.DOWN : prevScrollDirection);
|
|
64
|
-
}, [scrollTop, scrollTopPrev]);
|
|
65
|
-
|
|
73
|
+
}, [scrollTop, scrollTopPrev]); // Dynamic Modal Positioning
|
|
74
|
+
|
|
66
75
|
(0, _react.useLayoutEffect)(() => {
|
|
67
76
|
if (isOpen) {
|
|
68
77
|
const modalStyle = modalRef !== null && modalRef !== void 0 && modalRef.current ? (modalRef === null || modalRef === void 0 ? void 0 : modalRef.current.currentStyle) || window.getComputedStyle(modalRef === null || modalRef === void 0 ? void 0 : modalRef.current) : {};
|
|
69
78
|
const computedModalHeight = modalRef !== null && modalRef !== void 0 && modalRef.current ? modalHeight + parseFloat((modalStyle === null || modalStyle === void 0 ? void 0 : modalStyle.marginTop) || 0) : 0;
|
|
70
79
|
const windowHeight = document.documentElement.clientHeight || window.screen.availHeight || window.screen.height;
|
|
80
|
+
|
|
71
81
|
if (modalMobileContainerRef !== null && modalMobileContainerRef !== void 0 && modalMobileContainerRef.current) {
|
|
72
82
|
if (computedModalHeight <= windowHeight) {
|
|
73
83
|
modalMobileContainerRef.current.style.display = "flex";
|
|
74
84
|
modalMobileContainerRef.current.style.alignItems = "flex-end";
|
|
75
85
|
} else {
|
|
76
|
-
var _modalMobileContainer, _modalMobileContainer2;
|
|
77
|
-
|
|
78
|
-
(
|
|
86
|
+
var _modalMobileContainer, _modalMobileContainer2, _modalMobileContainer3, _modalMobileContainer4;
|
|
87
|
+
|
|
88
|
+
(_modalMobileContainer = modalMobileContainerRef.current) === null || _modalMobileContainer === void 0 ? void 0 : (_modalMobileContainer2 = _modalMobileContainer.style) === null || _modalMobileContainer2 === void 0 ? void 0 : _modalMobileContainer2.removeProperty("display");
|
|
89
|
+
(_modalMobileContainer3 = modalMobileContainerRef.current) === null || _modalMobileContainer3 === void 0 ? void 0 : (_modalMobileContainer4 = _modalMobileContainer3.style) === null || _modalMobileContainer4 === void 0 ? void 0 : _modalMobileContainer4.removeProperty("align-items");
|
|
79
90
|
}
|
|
80
91
|
}
|
|
81
92
|
}
|
|
82
|
-
}, [modalsLogicProps, isOpen, isMobile, modalHeight]);
|
|
93
|
+
}, [modalsLogicProps, isOpen, isMobile, modalHeight]); // Calculating
|
|
83
94
|
|
|
84
|
-
// Calculating
|
|
85
95
|
(0, _react.useLayoutEffect)(() => {
|
|
86
96
|
if (isMobile && isOpen) {
|
|
87
|
-
var _modalRef$current;
|
|
88
|
-
|
|
97
|
+
var _modalRef$current, _modalRef$current$get;
|
|
98
|
+
|
|
99
|
+
const newModalHeight = modalRef === null || modalRef === void 0 ? void 0 : (_modalRef$current = modalRef.current) === null || _modalRef$current === void 0 ? void 0 : (_modalRef$current$get = _modalRef$current.getBoundingClientRect()) === null || _modalRef$current$get === void 0 ? void 0 : _modalRef$current$get.height;
|
|
100
|
+
|
|
89
101
|
if (modalHeight !== newModalHeight) {
|
|
90
102
|
setModalHeight(newModalHeight);
|
|
91
103
|
}
|
|
@@ -106,35 +118,38 @@ function useMobileModal(_ref) {
|
|
|
106
118
|
}
|
|
107
119
|
}, [scrollTop, scrollHeight, isMobile, withMobileLogic, scrollDirection, modalsLogicProps, modalHeight, window.innerHeight]);
|
|
108
120
|
(0, _react.useLayoutEffect)(() => {
|
|
109
|
-
var _modalMobileHeaderRef;
|
|
110
|
-
|
|
121
|
+
var _modalMobileHeaderRef, _modalMobileHeaderRef2;
|
|
122
|
+
|
|
123
|
+
if ((modalMobileHeaderRef === null || modalMobileHeaderRef === void 0 ? void 0 : (_modalMobileHeaderRef = modalMobileHeaderRef.current) === null || _modalMobileHeaderRef === void 0 ? void 0 : (_modalMobileHeaderRef2 = _modalMobileHeaderRef.getBoundingClientRect()) === null || _modalMobileHeaderRef2 === void 0 ? void 0 : _modalMobileHeaderRef2.height) !== undefined) {
|
|
111
124
|
setModalsLogicProps(state => {
|
|
112
|
-
var
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
headerHeight: modalMobileHeaderRef === null || modalMobileHeaderRef === void 0
|
|
125
|
+
var _modalMobileHeaderRef3, _modalMobileHeaderRef4;
|
|
126
|
+
|
|
127
|
+
return { ...state,
|
|
128
|
+
headerHeight: modalMobileHeaderRef === null || modalMobileHeaderRef === void 0 ? void 0 : (_modalMobileHeaderRef3 = modalMobileHeaderRef.current) === null || _modalMobileHeaderRef3 === void 0 ? void 0 : (_modalMobileHeaderRef4 = _modalMobileHeaderRef3.getBoundingClientRect()) === null || _modalMobileHeaderRef4 === void 0 ? void 0 : _modalMobileHeaderRef4.height
|
|
116
129
|
};
|
|
117
130
|
});
|
|
118
131
|
}
|
|
119
|
-
}, [modalMobileHeaderRef === null || modalMobileHeaderRef === void 0
|
|
132
|
+
}, [modalMobileHeaderRef === null || modalMobileHeaderRef === void 0 ? void 0 : (_modalMobileHeaderRef5 = modalMobileHeaderRef.current) === null || _modalMobileHeaderRef5 === void 0 ? void 0 : (_modalMobileHeaderRef6 = _modalMobileHeaderRef5.getBoundingClientRect()) === null || _modalMobileHeaderRef6 === void 0 ? void 0 : _modalMobileHeaderRef6.height]);
|
|
120
133
|
(0, _react.useLayoutEffect)(() => {
|
|
121
|
-
var _modalMobileFooterRef;
|
|
122
|
-
|
|
134
|
+
var _modalMobileFooterRef, _modalMobileFooterRef2;
|
|
135
|
+
|
|
136
|
+
if ((modalMobileFooterRef === null || modalMobileFooterRef === void 0 ? void 0 : (_modalMobileFooterRef = modalMobileFooterRef.current) === null || _modalMobileFooterRef === void 0 ? void 0 : (_modalMobileFooterRef2 = _modalMobileFooterRef.getBoundingClientRect()) === null || _modalMobileFooterRef2 === void 0 ? void 0 : _modalMobileFooterRef2.height) !== undefined) {
|
|
123
137
|
setModalsLogicProps(state => {
|
|
124
|
-
var
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
footerHeight: modalMobileFooterRef === null || modalMobileFooterRef === void 0
|
|
138
|
+
var _modalMobileFooterRef3, _modalMobileFooterRef4;
|
|
139
|
+
|
|
140
|
+
return { ...state,
|
|
141
|
+
footerHeight: modalMobileFooterRef === null || modalMobileFooterRef === void 0 ? void 0 : (_modalMobileFooterRef3 = modalMobileFooterRef.current) === null || _modalMobileFooterRef3 === void 0 ? void 0 : (_modalMobileFooterRef4 = _modalMobileFooterRef3.getBoundingClientRect()) === null || _modalMobileFooterRef4 === void 0 ? void 0 : _modalMobileFooterRef4.height
|
|
128
142
|
};
|
|
129
143
|
});
|
|
130
144
|
}
|
|
131
|
-
}, [modalMobileFooterRef === null || modalMobileFooterRef === void 0
|
|
145
|
+
}, [modalMobileFooterRef === null || modalMobileFooterRef === void 0 ? void 0 : (_modalMobileFooterRef5 = modalMobileFooterRef.current) === null || _modalMobileFooterRef5 === void 0 ? void 0 : (_modalMobileFooterRef6 = _modalMobileFooterRef5.getBoundingClientRect()) === null || _modalMobileFooterRef6 === void 0 ? void 0 : _modalMobileFooterRef6.height]);
|
|
132
146
|
(0, _react.useEffect)(() => {
|
|
133
147
|
if (modalMobileContainerRef !== null && modalMobileContainerRef !== void 0 && modalMobileContainerRef.current) {
|
|
134
|
-
var
|
|
148
|
+
var _modalMobileContainer5, _modalMobileContainer6;
|
|
149
|
+
|
|
135
150
|
// eslint-disable-next-line no-unsafe-optional-chaining
|
|
136
|
-
setContainerScrollHeight(modalMobileContainerRef === null || modalMobileContainerRef === void 0
|
|
137
|
-
setScrollHeight((modalMobileContainerRef === null || modalMobileContainerRef === void 0
|
|
151
|
+
setContainerScrollHeight(modalMobileContainerRef === null || modalMobileContainerRef === void 0 ? void 0 : (_modalMobileContainer5 = modalMobileContainerRef.current) === null || _modalMobileContainer5 === void 0 ? void 0 : _modalMobileContainer5.scrollHeight);
|
|
152
|
+
setScrollHeight((modalMobileContainerRef === null || modalMobileContainerRef === void 0 ? void 0 : (_modalMobileContainer6 = modalMobileContainerRef.current) === null || _modalMobileContainer6 === void 0 ? void 0 : _modalMobileContainer6.scrollHeight) - window.innerHeight);
|
|
138
153
|
}
|
|
139
154
|
}, [scrollTop, modalMobileContainerRef === null || modalMobileContainerRef === void 0 ? void 0 : modalMobileContainerRef.current, window.innerHeight]);
|
|
140
155
|
(0, _react.useEffect)(() => {
|
|
@@ -153,9 +168,11 @@ function useMobileModal(_ref) {
|
|
|
153
168
|
ref: modalMobileContainerRef
|
|
154
169
|
}, modal);
|
|
155
170
|
};
|
|
171
|
+
|
|
156
172
|
const renderModal = modal => {
|
|
157
173
|
return isMobile && withMobileLogic ? renderMobileModal(modal) : modal;
|
|
158
174
|
};
|
|
175
|
+
|
|
159
176
|
return {
|
|
160
177
|
modalMobileContainerRef,
|
|
161
178
|
modalMobileHeaderRef,
|