intelicoreact 1.5.36 → 1.5.40
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 +44 -93
- package/dist/Atomic/FormElements/ActionAlert/ActionAlert.scss +13 -23
- package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +38 -43
- package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.scss +10 -20
- package/dist/Atomic/FormElements/Calendar/Calendar.js +164 -243
- package/dist/Atomic/FormElements/Calendar/Calendar.scss +0 -1
- package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +51 -60
- package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.scss +15 -25
- package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +39 -47
- package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.scss +2 -5
- package/dist/Atomic/FormElements/Datepicker/Datepicker.js +308 -410
- package/dist/Atomic/FormElements/Datepicker/components/Calendar.js +109 -169
- package/dist/Atomic/FormElements/Dropdown/Dropdown.js +527 -680
- package/dist/Atomic/FormElements/Dropdown/Dropdown.scss +59 -61
- package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +15 -28
- package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +378 -498
- package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.scss +32 -36
- package/dist/Atomic/FormElements/FileLoader/FileLoader.js +70 -103
- package/dist/Atomic/FormElements/FileLoader/FileLoader.scss +2 -0
- package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +91 -138
- package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +55 -109
- package/dist/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.js +193 -254
- package/dist/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.scss +16 -19
- package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +140 -156
- package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.scss +4 -8
- package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +156 -222
- package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +114 -158
- package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN_old.js +92 -151
- package/dist/Atomic/FormElements/Input/Input.js +330 -340
- package/dist/Atomic/FormElements/Input/Input.scss +1 -1
- package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +110 -156
- package/dist/Atomic/FormElements/InputColor/InputColor.js +58 -57
- package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +145 -188
- package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +228 -294
- package/dist/Atomic/FormElements/InputDateRange/InputDateRange.scss +2 -1
- package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +56 -55
- package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +536 -645
- package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +190 -220
- package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +31 -33
- package/dist/Atomic/FormElements/InputDateRange/dependencies.js +169 -247
- package/dist/Atomic/FormElements/InputLink/InputLink.js +71 -118
- package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +38 -47
- package/dist/Atomic/FormElements/InputMask/InputMask.js +1053 -938
- package/dist/Atomic/FormElements/InputMask/config.js +15 -16
- package/dist/Atomic/FormElements/InputMask/functions.js +51 -77
- package/dist/Atomic/FormElements/InputMask2/InputMask2.js +592 -569
- package/dist/Atomic/FormElements/InputMask2/config.js +15 -16
- package/dist/Atomic/FormElements/InputMask2/functions.js +51 -77
- package/dist/Atomic/FormElements/InputMask3/InputMask3.js +679 -651
- package/dist/Atomic/FormElements/InputMask3/config.js +15 -16
- package/dist/Atomic/FormElements/InputMask3/functions.js +51 -77
- package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +88 -127
- package/dist/Atomic/FormElements/InputWithAction/InputWithAction.scss +1 -1
- package/dist/Atomic/FormElements/InputsRow/InputsRow.js +111 -182
- package/dist/Atomic/FormElements/Label/Label.js +55 -82
- package/dist/Atomic/FormElements/Label/Label.scss +8 -18
- package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +382 -437
- package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.scss +3 -3
- package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +50 -88
- package/dist/Atomic/FormElements/NumericInput/NumericInput.js +264 -314
- package/dist/Atomic/FormElements/NumericInput/NumericInput.scss +1 -1
- package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +51 -93
- package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +55 -69
- package/dist/Atomic/FormElements/RadioInput/RadioInput.js +45 -51
- package/dist/Atomic/FormElements/RadioInput/RadioInput.scss +4 -4
- package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +40 -53
- package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +120 -169
- package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +141 -195
- package/dist/Atomic/FormElements/RangeList/RangeList.js +140 -199
- package/dist/Atomic/FormElements/RangeList/RangeList.scss +2 -2
- package/dist/Atomic/FormElements/RangeList/partial/AnyOuterClass.scss +4 -1
- package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +44 -57
- package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +377 -463
- package/dist/Atomic/FormElements/RangeSlider/RangeSlider.scss +1 -1
- package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +759 -760
- package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.scss +9 -9
- package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +31 -36
- package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.scss +2 -0
- package/dist/Atomic/FormElements/SwitchableRow/partial/AnyOuterClass.scss +1 -1
- package/dist/Atomic/FormElements/Switcher/Switcher.js +44 -52
- package/dist/Atomic/FormElements/Switcher/Switcher.scss +3 -3
- package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +44 -43
- package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.scss +2 -0
- package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +36 -37
- package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.scss +2 -0
- package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +56 -93
- package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.scss +2 -0
- package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +53 -86
- package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.scss +2 -0
- package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +54 -46
- package/dist/Atomic/FormElements/SwitcherRangeList/partial/AnyOuterClass.scss +1 -1
- package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +102 -172
- package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.scss +6 -4
- package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +154 -209
- package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +56 -59
- package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.scss +2 -2
- package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.js +112 -140
- package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +919 -1035
- package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.scss +119 -155
- package/dist/Atomic/FormElements/Text/Text.js +97 -88
- package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +35 -44
- package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.scss +8 -8
- package/dist/Atomic/FormElements/Textarea/Textarea.js +64 -102
- package/dist/Atomic/FormElements/Textarea/Textarea.scss +8 -4
- package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +133 -172
- package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +49 -48
- package/dist/Atomic/FormElements/TimeRange/TimeRange.js +63 -114
- package/dist/Atomic/FormElements/TimeRange/TimeRange.scss +3 -9
- package/dist/Atomic/FormElements/UserContacts/UserContacts.js +122 -179
- package/dist/Atomic/FormElements/UserContacts/UserContacts.scss +5 -10
- package/dist/Atomic/FormElements/UserContacts/partial/AnyOuterClass.scss +1 -1
- package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +65 -101
- package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.scss +12 -4
- package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +71 -80
- package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +64 -79
- package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.scss +3 -1
- package/dist/Atomic/FormElements/WidgetPseudoTable/partial/AnyOuterClass.scss +1 -1
- package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +34 -42
- package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +83 -102
- package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.scss +3 -1
- package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/AnyOuterClass.scss +1 -1
- package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +35 -42
- package/dist/Atomic/Layout/Header/Header.js +80 -148
- package/dist/Atomic/Layout/Header/Header.scss +1 -1
- package/dist/Atomic/Layout/MainMenu/MainMenu.js +133 -213
- package/dist/Atomic/Layout/MainMenu/MainMenu.scss +9 -9
- package/dist/Atomic/Layout/Spinner/Spinner.js +22 -39
- package/dist/Atomic/Layout/Spinner/Spinner.scss +16 -32
- package/dist/Atomic/UI/Accordion/Accordion.js +52 -102
- package/dist/Atomic/UI/Accordion/Accordion.scss +14 -25
- package/dist/Atomic/UI/Accordion/AccordionItem.js +102 -170
- package/dist/Atomic/UI/AccordionTable/AccordionTable.js +167 -251
- package/dist/Atomic/UI/AccordionText/AccordionText.js +54 -105
- package/dist/Atomic/UI/AccordionText/AccordionText.scss +9 -22
- package/dist/Atomic/UI/AdvancedTag/AdvTag.js +135 -207
- package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +46 -100
- package/dist/Atomic/UI/AdvancedTag/AdvancedTags.scss +2 -2
- package/dist/Atomic/UI/Alert/Alert.js +63 -116
- package/dist/Atomic/UI/Alert/Alert.scss +2 -2
- package/dist/Atomic/UI/Arrow/Arrow.js +110 -163
- package/dist/Atomic/UI/Box/Box.js +37 -37
- package/dist/Atomic/UI/Box/Box.scss +11 -11
- package/dist/Atomic/UI/Button/Button.js +41 -43
- package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +67 -61
- package/dist/Atomic/UI/Chart/Chart.js +96 -170
- package/dist/Atomic/UI/Chart/partial/Chart.constants.js +74 -142
- package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +77 -91
- package/dist/Atomic/UI/Chart/partial/datasetSetters.js +117 -120
- package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +292 -314
- package/dist/Atomic/UI/Chart/partial/optionsSetters.js +39 -54
- package/dist/Atomic/UI/Chart/partial/utils.js +33 -56
- package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +88 -145
- package/dist/Atomic/UI/DateTime/DateTime.js +37 -89
- package/dist/Atomic/UI/DateTime/DateTime.scss +2 -2
- package/dist/Atomic/UI/DateTime/partial/AnyOuterClass.scss +1 -1
- package/dist/Atomic/UI/DebugContainer/DebugContainer.js +31 -93
- package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +18 -66
- package/dist/Atomic/UI/DoubleString/DoubleString.js +77 -134
- package/dist/Atomic/UI/DoubleString/DoubleString.scss +4 -6
- package/dist/Atomic/UI/DoubleString/partial/AnyOuterClass.scss +1 -1
- package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +22 -65
- package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +170 -251
- package/dist/Atomic/UI/ExampleChartIntegration/partial/AnyOuterClass.scss +1 -1
- package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +84 -109
- package/dist/Atomic/UI/Hint/Hint.js +202 -243
- package/dist/Atomic/UI/Hint/Hint.scss +3 -5
- package/dist/Atomic/UI/Hint/partials/_utils.js +42 -54
- package/dist/Atomic/UI/Modal/Modal.js +172 -171
- package/dist/Atomic/UI/Modal/Modal.scss +69 -91
- package/dist/Atomic/UI/Modal/Modal.stories.js +1 -1
- package/dist/Atomic/UI/Modal/ModalHOC.js +38 -92
- package/dist/Atomic/UI/Modal/ModalMobile.scss +14 -24
- package/dist/Atomic/UI/Modal/partials/ModalFooter.js +18 -68
- package/dist/Atomic/UI/Modal/partials/ModalTitle.js +38 -107
- package/dist/Atomic/UI/Modal/partials/useMobileModal.js +153 -130
- package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +62 -118
- package/dist/Atomic/UI/MonoAccordion/MonoAccordion.scss +25 -163
- package/dist/Atomic/UI/NavLine/NavLine.js +273 -306
- package/dist/Atomic/UI/NavLine/NavLine.scss +155 -195
- package/dist/Atomic/UI/NavLine/NavLine.test.js +1 -1
- package/dist/Atomic/UI/NavLine/Tabs.js +115 -0
- package/dist/Atomic/UI/PageTitle/PageTitle.js +52 -73
- package/dist/Atomic/UI/PageTitle/PageTitle.scss +14 -52
- package/dist/Atomic/UI/PieChart/PieChart.js +42 -105
- package/dist/Atomic/UI/PieChart/PieChart.scss +11 -86
- package/dist/Atomic/UI/Price/Price.js +20 -27
- package/dist/Atomic/UI/PriceRange/PriceRange.js +18 -40
- package/dist/Atomic/UI/ProgressLine/ProgressLine.js +73 -92
- package/dist/Atomic/UI/ProgressLine/ProgressLine.scss +71 -85
- package/dist/Atomic/UI/Status/Status.js +51 -62
- package/dist/Atomic/UI/Status/Status.scss +29 -48
- package/dist/Atomic/UI/Table/Partials/TdCell.js +88 -126
- package/dist/Atomic/UI/Table/Partials/TdHeader.js +39 -58
- package/dist/Atomic/UI/Table/Partials/TdRow.js +73 -124
- package/dist/Atomic/UI/Table/Partials/TdTitle.js +45 -113
- package/dist/Atomic/UI/Table/Table.js +43 -61
- package/dist/Atomic/UI/Table/Table.scss +3 -0
- package/dist/Atomic/UI/Table/TdTypes/TdActions.js +64 -108
- package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +31 -44
- package/dist/Atomic/UI/Table/TdTypes/TdRange.js +10 -24
- package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +48 -59
- package/dist/Atomic/UI/Tag/Tag.js +113 -157
- package/dist/Atomic/UI/Tag/Tag.scss +48 -102
- package/dist/Atomic/UI/TagList/TagList.js +179 -223
- package/dist/Atomic/UI/TagList/TagList.scss +9 -13
- package/dist/Atomic/UI/UserBox/UserBox.js +56 -80
- package/dist/Atomic/UI/UserBox/UserBox.scss +21 -45
- package/dist/Atomic/UI/UserBox/UserBox.test.js +2 -2
- package/dist/Atomic/UI/WizardStepper/constructor.js +89 -127
- package/dist/Atomic/UI/WizardStepper/index.js +6 -14
- package/dist/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.js +51 -53
- package/dist/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.scss +7 -11
- package/dist/Atomic/UI/WizardStepper/ui/StateIcon/index.js +5 -9
- package/dist/Atomic/UI/WizardStepper/ui/StepRow/StepRow.js +67 -84
- package/dist/Atomic/UI/WizardStepper/ui/StepRow/StepRow.scss +7 -13
- package/dist/Atomic/UI/WizardStepper/ui/StepRow/index.js +6 -14
- package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.js +45 -50
- package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.scss +18 -24
- package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/index.js +6 -14
- package/dist/Atomic/UI/WizardStepper/ui/icons.js +106 -138
- package/dist/Atomic/UI/WizardStepper/ui/index.js +6 -14
- package/dist/Classes/AbortableFetch.js +326 -394
- package/dist/Classes/AnimatedHandler.js +44 -31
- package/dist/Classes/RESTAPI/index.js +173 -131
- package/dist/Classes/RESTAPI/partials/AbortableFetch.js +334 -399
- package/dist/Classes/RESTAPI/partials/ApiBase.js +30 -30
- package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +88 -107
- package/dist/Classes/RESTAPI/partials/ApiUtils.js +166 -144
- package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +204 -180
- package/dist/Classes/RESTAPI/partials/Utils.js +83 -80
- package/dist/Classes/RESTAPI/partials/_outerDependencies.js +8 -16
- package/dist/Classes/RESTAPI/partials/_utils.js +125 -139
- package/dist/Constants/index.constants.js +22 -102
- package/dist/Functions/Portal.js +23 -67
- package/dist/Functions/animatingFunctions/getAnimatedHandler.js +1 -1
- package/dist/Functions/customEventListener.js +50 -48
- package/dist/Functions/dateTime.js +177 -130
- package/dist/Functions/fieldValueFormatters.js +346 -275
- package/dist/Functions/hooks/useFormFieldsChangesManager.js +96 -125
- package/dist/Functions/locale/createTranslator.js +27 -29
- package/dist/Functions/operations.js +102 -129
- package/dist/Functions/presets/inputMaskPresets.js +99 -88
- package/dist/Functions/presets/inputPresets.js +35 -41
- package/dist/Functions/presets/mobileKeyboardTypesPresets.js +49 -30
- package/dist/Functions/schemas.js +20 -78
- package/dist/Functions/useBodyScrollLock.js +15 -21
- package/dist/Functions/useClickOutside.js +16 -21
- package/dist/Functions/useDebounce.js +21 -62
- package/dist/Functions/useFieldFocus.js +79 -83
- package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +46 -39
- package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +137 -132
- package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +73 -63
- package/dist/Functions/useFormTools/functions/General.js +129 -117
- package/dist/Functions/useFormTools/functions/RenderFields.js +85 -75
- package/dist/Functions/useFormTools/functions/usePrevious.js +10 -16
- package/dist/Functions/useFormTools/index.js +709 -647
- package/dist/Functions/useInputHighlightError.js +53 -104
- package/dist/Functions/useIsMobile.js +26 -0
- package/dist/Functions/useKeyPress/useHandleKeyPress.js +33 -40
- package/dist/Functions/useKeyPress/useKeyPress.js +39 -48
- package/dist/Functions/useLocalStorage.js +31 -38
- package/dist/Functions/useLocationParams.js +24 -31
- package/dist/Functions/useMediaQuery.js +10 -14
- package/dist/Functions/useMetaInfo.js +35 -45
- package/dist/Functions/useMouseUpOutside.js +15 -21
- package/dist/Functions/useOnlineStatus.js +21 -25
- package/dist/Functions/usePasswordChecker.js +111 -183
- package/dist/Functions/usePrevious.js +10 -16
- package/dist/Functions/useResize.js +28 -32
- package/dist/Functions/useScrollTo.js +16 -26
- package/dist/Functions/useToggle.js +16 -20
- package/dist/Functions/utils.js +469 -493
- package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +28 -75
- package/dist/Molecular/CustomIcons/components/AlertCircle.js +28 -77
- package/dist/Molecular/CustomIcons/components/AppStore.js +32 -84
- package/dist/Molecular/CustomIcons/components/Arrow.js +38 -93
- package/dist/Molecular/CustomIcons/components/ArrowDown.js +20 -63
- package/dist/Molecular/CustomIcons/components/ArrowLeft.js +23 -71
- package/dist/Molecular/CustomIcons/components/ArrowRight.js +23 -71
- package/dist/Molecular/CustomIcons/components/ArrowUp.js +20 -63
- package/dist/Molecular/CustomIcons/components/Bell.js +18 -61
- package/dist/Molecular/CustomIcons/components/Button.js +18 -61
- package/dist/Molecular/CustomIcons/components/Campaigns.js +19 -62
- package/dist/Molecular/CustomIcons/components/Check.js +19 -62
- package/dist/Molecular/CustomIcons/components/Check2.js +18 -61
- package/dist/Molecular/CustomIcons/components/ChevronDown.js +18 -61
- package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +18 -61
- package/dist/Molecular/CustomIcons/components/ChevronLeft.js +18 -61
- package/dist/Molecular/CustomIcons/components/ChevronRight.js +18 -61
- package/dist/Molecular/CustomIcons/components/ChevronUp.js +18 -61
- package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +33 -81
- package/dist/Molecular/CustomIcons/components/Close.js +20 -64
- package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +45 -95
- package/dist/Molecular/CustomIcons/components/Delete.js +19 -62
- package/dist/Molecular/CustomIcons/components/Edit.js +18 -61
- package/dist/Molecular/CustomIcons/components/Email.js +36 -87
- package/dist/Molecular/CustomIcons/components/FinturfLogo.js +26 -82
- package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +34 -83
- package/dist/Molecular/CustomIcons/components/Flows.js +18 -61
- package/dist/Molecular/CustomIcons/components/Gift.js +23 -71
- package/dist/Molecular/CustomIcons/components/GoogleAuth.js +32 -84
- package/dist/Molecular/CustomIcons/components/GooglePlay.js +32 -84
- package/dist/Molecular/CustomIcons/components/HelpCircle.js +21 -67
- package/dist/Molecular/CustomIcons/components/HelpCircle2.js +22 -68
- package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +21 -67
- package/dist/Molecular/CustomIcons/components/Home.js +21 -67
- package/dist/Molecular/CustomIcons/components/Home2.js +24 -70
- package/dist/Molecular/CustomIcons/components/Key.js +26 -69
- package/dist/Molecular/CustomIcons/components/Landers.js +22 -68
- package/dist/Molecular/CustomIcons/components/Lock.js +18 -61
- package/dist/Molecular/CustomIcons/components/Mail.js +26 -75
- package/dist/Molecular/CustomIcons/components/Mastercard.js +68 -128
- package/dist/Molecular/CustomIcons/components/Minus.js +31 -79
- package/dist/Molecular/CustomIcons/components/Offers.js +19 -62
- package/dist/Molecular/CustomIcons/components/Pause.js +31 -79
- package/dist/Molecular/CustomIcons/components/PayPal.js +45 -96
- package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +32 -81
- package/dist/Molecular/CustomIcons/components/Phone.js +33 -81
- package/dist/Molecular/CustomIcons/components/Play.js +31 -79
- package/dist/Molecular/CustomIcons/components/Plus.js +31 -79
- package/dist/Molecular/CustomIcons/components/Profile.js +23 -69
- package/dist/Molecular/CustomIcons/components/QRCode.js +33 -85
- package/dist/Molecular/CustomIcons/components/Rectangle.js +18 -61
- package/dist/Molecular/CustomIcons/components/Revert.js +21 -67
- package/dist/Molecular/CustomIcons/components/Star.js +17 -60
- package/dist/Molecular/CustomIcons/components/Star2.js +19 -62
- package/dist/Molecular/CustomIcons/components/TrafficSources.js +21 -68
- package/dist/Molecular/CustomIcons/components/Trash.js +18 -61
- package/dist/Molecular/CustomIcons/components/TrashRed.js +18 -61
- package/dist/Molecular/CustomIcons/components/Triggers.js +18 -61
- package/dist/Molecular/CustomIcons/components/User.js +23 -71
- package/dist/Molecular/CustomIcons/components/Visa.js +34 -88
- package/dist/Molecular/CustomIcons/components/X.js +18 -61
- package/dist/Molecular/CustomIcons/index.js +674 -76
- package/dist/Molecular/FormElement/FormElement.js +41 -44
- package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +161 -179
- package/dist/Molecular/FormWithDependOn/partials/_utils.js +56 -49
- package/dist/Molecular/InputAddress/InputAddress.js +421 -496
- package/dist/Molecular/InputAddress/InputAddress.scss +16 -14
- package/dist/Molecular/InputPassword/InputPassword.js +47 -99
- package/dist/index.js +8 -11
- package/dist/scss/_fonts.scss +60 -48
- package/dist/scss/_mixins.scss +2 -2
- package/dist/scss/_vars.scss +5 -4
- package/dist/scss/main.scss +4 -5
- package/package.json +21 -17
|
@@ -1,193 +1,217 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
2
4
|
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
|
|
5
|
+
value: true
|
|
4
6
|
});
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}
|
|
11
|
-
const _outerDependencies = /*#__PURE__*/ _interop_require_default(require("./_outerDependencies"));
|
|
12
|
-
const _utils = require("./_utils");
|
|
13
|
-
function _interop_require_default(obj) {
|
|
14
|
-
return obj && obj.__esModule ? obj : {
|
|
15
|
-
default: obj
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
const { jwt } = _outerDependencies.default;
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _outerDependencies = _interopRequireDefault(require("./_outerDependencies"));
|
|
9
|
+
var _utils = require("./_utils");
|
|
10
|
+
const {
|
|
11
|
+
jwt
|
|
12
|
+
} = _outerDependencies.default;
|
|
19
13
|
class CredentialsProcessing {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
14
|
+
constructor(settings) {
|
|
15
|
+
const {
|
|
16
|
+
credentialsProcessing
|
|
17
|
+
} = settings;
|
|
18
|
+
const {
|
|
19
|
+
//? Для корректной работы установки токенов в запросы от API
|
|
20
|
+
//? нужно передавать методы getCredentials и getHeadersForAuthorize
|
|
21
|
+
getCredentials,
|
|
22
|
+
getHeadersForAuthorize,
|
|
23
|
+
//? На вход получит токен, должна вернуть объект для коструктора Headers
|
|
24
|
+
|
|
25
|
+
//? Так же опционально можно передавать
|
|
26
|
+
importCredentials,
|
|
27
|
+
//? если он передается, то он будет применяться к выводу от вызова getCredentials
|
|
28
|
+
saveCredentials,
|
|
29
|
+
//? можно будет найти в объекте credentialsProcessing, чтобы использовать кастомными методами
|
|
30
|
+
|
|
31
|
+
//! Либо вызов getCredentials, либо цепочка вызовов importCredentials(getCredentials())
|
|
32
|
+
//! должна возвращать требуемую классом структуру
|
|
33
|
+
//! Класс требует структуры
|
|
34
|
+
//! - { token }, если флоу рефреш токена НЕ используется
|
|
35
|
+
//! - { token, refreshToken, expires }, если используется флоу рефреш токена
|
|
36
|
+
|
|
37
|
+
// *********
|
|
38
|
+
|
|
39
|
+
//? Подключает флоу рефреша токенов
|
|
40
|
+
isUseRefreshTokensPropcessing = false,
|
|
41
|
+
//! Для корректной работы флоу рефреша токенов передача метода saveCredentials становится ОБЯЗАТЕЛЬНОЙ
|
|
42
|
+
|
|
43
|
+
//? Так же для корректной работы флоу рефреша токенов нужно
|
|
44
|
+
//? - либо
|
|
45
|
+
refreshCredentials,
|
|
46
|
+
//! метод должен возвращать такую же структуру как и метод getCredentials,
|
|
47
|
+
//? на вход получит текущие креды, к выходу будет применен importCredentials, если этот метод передавался
|
|
48
|
+
//? - либо
|
|
49
|
+
REFRESH_TOKEN_PATH,
|
|
50
|
+
//! REFRESH_TOKEN_PATH передается ПОЛНОСТЬЮ (глобальная адресация)!
|
|
51
|
+
CODES_USING_THE_REFRESH_ATTEMPT,
|
|
52
|
+
//? указывает по каким кодам ответа триггериться рефреш, массив чисел
|
|
53
|
+
|
|
54
|
+
//? Опционально
|
|
55
|
+
REFRESH_TOKEN_FLAG = "refreshTokenFlag",
|
|
56
|
+
INTERVAL_FOR_CHECKING_TOKEN_UPDATE = 50,
|
|
57
|
+
// ms
|
|
58
|
+
callbackAfterRejectRefresh
|
|
59
|
+
} = credentialsProcessing || {};
|
|
60
|
+
if (typeof getCredentials !== "function") throw new Error("No getCredentials method [CredentialsProcessing]");
|
|
61
|
+
if (typeof getHeadersForAuthorize !== "function") {
|
|
62
|
+
throw new Error("No getHeadersForAuthorize method [CredentialsProcessing]");
|
|
25
63
|
}
|
|
26
|
-
|
|
27
|
-
|
|
64
|
+
if (importCredentials && typeof importCredentials !== "function") {
|
|
65
|
+
throw new Error("Bad importCredentials method [CredentialsProcessing]");
|
|
28
66
|
}
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
} catch (e) {
|
|
39
|
-
decoded = null;
|
|
40
|
-
}
|
|
41
|
-
const currentTime = Date.now() / 1000;
|
|
42
|
-
if (decoded !== null && Number(decoded.exp) < currentTime) credentials = {
|
|
43
|
-
...credentials,
|
|
44
|
-
isNeedRefresh: true
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
if (callback) await callback({
|
|
48
|
-
...credentials,
|
|
49
|
-
isCatchCallbackProcess
|
|
50
|
-
});
|
|
51
|
-
return {
|
|
52
|
-
...credentials,
|
|
53
|
-
isCatchCallbackProcess
|
|
54
|
-
};
|
|
67
|
+
this.isUseRefreshTokensPropcessing = isUseRefreshTokensPropcessing;
|
|
68
|
+
this.DEFAULT_CREDENTIALS = {};
|
|
69
|
+
this.getCredentialsByOuter = getCredentials;
|
|
70
|
+
this.getHeadersForAuthorize = getHeadersForAuthorize;
|
|
71
|
+
this.importCredentials = importCredentials;
|
|
72
|
+
|
|
73
|
+
//? Если метод передан или если не передан, но включен флоу обновления токенов (тогда saveCredentials обязателен)
|
|
74
|
+
if (saveCredentials || isUseRefreshTokensPropcessing) {
|
|
75
|
+
if (typeof saveCredentials !== "function") throw new Error("No saveCredentials method [CredentialsProcessing]");else this.saveCredentials = saveCredentials;
|
|
55
76
|
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
return Promise.resolve(cred).then(async (res)=>{
|
|
61
|
-
CONTEXT.removeIsTokenStartRefresh();
|
|
62
|
-
return res;
|
|
63
|
-
});
|
|
77
|
+
if (isUseRefreshTokensPropcessing) {
|
|
78
|
+
if (typeof refreshCredentials === "function") this.refreshCredentialsByOuter = refreshCredentials;else {
|
|
79
|
+
if (typeof this.refreshCredentialsByOuter === "function" && typeof REFRESH_TOKEN_PATH !== "string") {
|
|
80
|
+
throw new Error("No REFRESH_TOKEN_PATH [CredentialsProcessing]");
|
|
64
81
|
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
//? что механизм рефреша токенов ИМЕННО ТАКОЙ как в ф-и refreshCredentialsByDefault!
|
|
88
|
-
//! currentCredentials передаются в формате класса! ({ token, refreshToken, expires })
|
|
89
|
-
const newCredentials = typeof CONTEXT.refreshCredentialsByOuter === "function" ? await CONTEXT.refreshCredentialsByOuter(currentCredentials) : await refreshCredentialsByDefault();
|
|
90
|
-
return finalize(newCredentials);
|
|
82
|
+
this.REFRESH_TOKEN_PATH = REFRESH_TOKEN_PATH;
|
|
83
|
+
}
|
|
84
|
+
if (!Array.isArray(CODES_USING_THE_REFRESH_ATTEMPT)) {
|
|
85
|
+
throw new Error("No CODES_USING_THE_REFRESH_ATTEMPT [CredentialsProcessing]");
|
|
86
|
+
}
|
|
87
|
+
if (!CODES_USING_THE_REFRESH_ATTEMPT.every(i => typeof i === "number")) {
|
|
88
|
+
throw new Error("Invalid format of CODES_USING_THE_REFRESH_ATTEMPT elements [CredentialsProcessing]");
|
|
89
|
+
}
|
|
90
|
+
if (typeof REFRESH_TOKEN_FLAG !== "string") throw new Error("Bad REFRESH_TOKEN_FLAG [CredentialsProcessing]");
|
|
91
|
+
if (typeof INTERVAL_FOR_CHECKING_TOKEN_UPDATE !== "number") {
|
|
92
|
+
throw new Error("Bad INTERVAL_FOR_CHECKING_TOKEN_UPDATE [CredentialsProcessing]");
|
|
93
|
+
}
|
|
94
|
+
if (typeof INTERVAL_FOR_CHECKING_TOKEN_UPDATE !== "number") {
|
|
95
|
+
throw new Error("Bad INTERVAL_FOR_CHECKING_TOKEN_UPDATE [CredentialsProcessing]");
|
|
96
|
+
}
|
|
97
|
+
if (callbackAfterRejectRefresh && typeof callbackAfterRejectRefresh !== "function") {
|
|
98
|
+
throw new Error("Bad INTERVAL_FOR_CHECKING_TOKEN_UPDATE [CredentialsProcessing]");
|
|
99
|
+
}
|
|
100
|
+
this.CODES_USING_THE_REFRESH_ATTEMPT = CODES_USING_THE_REFRESH_ATTEMPT;
|
|
101
|
+
this.REFRESH_TOKEN_FLAG = REFRESH_TOKEN_FLAG;
|
|
102
|
+
this.INTERVAL_FOR_CHECKING_TOKEN_UPDATE = INTERVAL_FOR_CHECKING_TOKEN_UPDATE;
|
|
103
|
+
if (callbackAfterRejectRefresh) this.callbackAfterRejectRefresh = callbackAfterRejectRefresh;
|
|
91
104
|
}
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
105
|
+
}
|
|
106
|
+
getIsTokenStartRefresh() {
|
|
107
|
+
return localStorage.getItem(this.REFRESH_TOKEN_FLAG);
|
|
108
|
+
}
|
|
109
|
+
setIsTokenStartRefresh() {
|
|
110
|
+
localStorage.setItem(this.REFRESH_TOKEN_FLAG, true);
|
|
111
|
+
}
|
|
112
|
+
removeIsTokenStartRefresh() {
|
|
113
|
+
localStorage.removeItem(this.REFRESH_TOKEN_FLAG);
|
|
114
|
+
}
|
|
115
|
+
async getCredentials(isCatchCallbackProcess, callback) {
|
|
116
|
+
let credentials = await this.getCredentialsByOuter();
|
|
117
|
+
if (typeof this.importCredentials === "function") credentials = await this.importCredentials(credentials);
|
|
118
|
+
if (!(0, _utils.getIsOnlyAnObject)(credentials)) credentials = {};
|
|
119
|
+
const token = credentials.token || null;
|
|
120
|
+
if (token && !isCatchCallbackProcess) {
|
|
121
|
+
let decoded;
|
|
122
|
+
try {
|
|
123
|
+
decoded = jwt.decode(token);
|
|
124
|
+
} catch {
|
|
125
|
+
decoded = null;
|
|
126
|
+
}
|
|
127
|
+
const currentTime = Date.now() / 1000;
|
|
128
|
+
if (decoded !== null && Number(decoded.exp) < currentTime) credentials = {
|
|
129
|
+
...credentials,
|
|
130
|
+
isNeedRefresh: true
|
|
131
|
+
};
|
|
106
132
|
}
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
});
|
|
133
|
+
if (callback) await callback({
|
|
134
|
+
...credentials,
|
|
135
|
+
isCatchCallbackProcess
|
|
136
|
+
});
|
|
137
|
+
return {
|
|
138
|
+
...credentials,
|
|
139
|
+
isCatchCallbackProcess
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
async refreshCredentials(currentCredentials, callback) {
|
|
143
|
+
const CONTEXT = this;
|
|
144
|
+
async function finalize(cred) {
|
|
145
|
+
if (callback) await callback(cred);
|
|
146
|
+
return Promise.resolve(cred).then(async res => {
|
|
147
|
+
CONTEXT.removeIsTokenStartRefresh();
|
|
148
|
+
return res;
|
|
149
|
+
});
|
|
125
150
|
}
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
throw new Error("Bad importCredentials method [CredentialsProcessing]");
|
|
151
|
-
}
|
|
152
|
-
this.isUseRefreshTokensPropcessing = isUseRefreshTokensPropcessing;
|
|
153
|
-
this.DEFAULT_CREDENTIALS = {};
|
|
154
|
-
this.getCredentialsByOuter = getCredentials;
|
|
155
|
-
this.getHeadersForAuthorize = getHeadersForAuthorize;
|
|
156
|
-
this.importCredentials = importCredentials;
|
|
157
|
-
//? Если метод передан или если не передан, но включен флоу обновления токенов (тогда saveCredentials обязателен)
|
|
158
|
-
if (saveCredentials || isUseRefreshTokensPropcessing) {
|
|
159
|
-
if (typeof saveCredentials !== "function") throw new Error("No saveCredentials method [CredentialsProcessing]");
|
|
160
|
-
else this.saveCredentials = saveCredentials;
|
|
161
|
-
}
|
|
162
|
-
if (isUseRefreshTokensPropcessing) {
|
|
163
|
-
if (typeof refreshCredentials === "function") this.refreshCredentialsByOuter = refreshCredentials;
|
|
164
|
-
else {
|
|
165
|
-
if (typeof this.refreshCredentialsByOuter === "function" && typeof REFRESH_TOKEN_PATH !== "string") {
|
|
166
|
-
throw new Error("No REFRESH_TOKEN_PATH [CredentialsProcessing]");
|
|
167
|
-
}
|
|
168
|
-
this.REFRESH_TOKEN_PATH = REFRESH_TOKEN_PATH;
|
|
169
|
-
}
|
|
170
|
-
if (!Array.isArray(CODES_USING_THE_REFRESH_ATTEMPT)) {
|
|
171
|
-
throw new Error("No CODES_USING_THE_REFRESH_ATTEMPT [CredentialsProcessing]");
|
|
172
|
-
}
|
|
173
|
-
if (!CODES_USING_THE_REFRESH_ATTEMPT.every((i)=>typeof i === "number")) {
|
|
174
|
-
throw new Error("Invalid format of CODES_USING_THE_REFRESH_ATTEMPT elements [CredentialsProcessing]");
|
|
175
|
-
}
|
|
176
|
-
if (typeof REFRESH_TOKEN_FLAG !== "string") throw new Error("Bad REFRESH_TOKEN_FLAG [CredentialsProcessing]");
|
|
177
|
-
if (typeof INTERVAL_FOR_CHECKING_TOKEN_UPDATE !== "number") {
|
|
178
|
-
throw new Error("Bad INTERVAL_FOR_CHECKING_TOKEN_UPDATE [CredentialsProcessing]");
|
|
179
|
-
}
|
|
180
|
-
if (typeof INTERVAL_FOR_CHECKING_TOKEN_UPDATE !== "number") {
|
|
181
|
-
throw new Error("Bad INTERVAL_FOR_CHECKING_TOKEN_UPDATE [CredentialsProcessing]");
|
|
182
|
-
}
|
|
183
|
-
if (callbackAfterRejectRefresh && typeof callbackAfterRejectRefresh !== "function") {
|
|
184
|
-
throw new Error("Bad INTERVAL_FOR_CHECKING_TOKEN_UPDATE [CredentialsProcessing]");
|
|
185
|
-
}
|
|
186
|
-
this.CODES_USING_THE_REFRESH_ATTEMPT = CODES_USING_THE_REFRESH_ATTEMPT;
|
|
187
|
-
this.REFRESH_TOKEN_FLAG = REFRESH_TOKEN_FLAG;
|
|
188
|
-
this.INTERVAL_FOR_CHECKING_TOKEN_UPDATE = INTERVAL_FOR_CHECKING_TOKEN_UPDATE;
|
|
189
|
-
if (callbackAfterRejectRefresh) this.callbackAfterRejectRefresh = callbackAfterRejectRefresh;
|
|
190
|
-
}
|
|
151
|
+
if (!currentCredentials?.token || !currentCredentials?.refreshToken) return finalize(CONTEXT.DEFAULT_CREDENTIALS);
|
|
152
|
+
|
|
153
|
+
//! ВНИМАНИЕ! Данный механизм рефреша принят на проекте finturfreactfrontend (админка)
|
|
154
|
+
//! На кабинете он ТОЧНО НЕ ТАКОЙ
|
|
155
|
+
async function refreshCredentialsByDefault() {
|
|
156
|
+
const {
|
|
157
|
+
token,
|
|
158
|
+
refreshToken
|
|
159
|
+
} = currentCredentials;
|
|
160
|
+
const headers = new Headers();
|
|
161
|
+
headers.append(...Object.entries(CONTEXT.getHeadersForAuthorize(token)));
|
|
162
|
+
const body = new FormData();
|
|
163
|
+
body.append("grant_type", "refresh_token");
|
|
164
|
+
body.append("refresh_token", refreshToken);
|
|
165
|
+
body.append("client_id", "oauth");
|
|
166
|
+
body.append("client_secret", "secret");
|
|
167
|
+
body.append("access_type", "offline");
|
|
168
|
+
return fetch(`${CONTEXT.REFRESH_TOKEN_PATH}`, {
|
|
169
|
+
mode: "cors",
|
|
170
|
+
method: "POST",
|
|
171
|
+
headers,
|
|
172
|
+
body,
|
|
173
|
+
redirect: "follow"
|
|
174
|
+
});
|
|
191
175
|
}
|
|
176
|
+
|
|
177
|
+
//? Передавайте собственный refreshCredentials при получении экземляра RESTAPI, если не уверены,
|
|
178
|
+
//? что механизм рефреша токенов ИМЕННО ТАКОЙ как в ф-и refreshCredentialsByDefault!
|
|
179
|
+
//! currentCredentials передаются в формате класса! ({ token, refreshToken, expires })
|
|
180
|
+
const newCredentials = typeof CONTEXT.refreshCredentialsByOuter === "function" ? await CONTEXT.refreshCredentialsByOuter(currentCredentials) : await refreshCredentialsByDefault();
|
|
181
|
+
return finalize(newCredentials);
|
|
182
|
+
}
|
|
183
|
+
async waitRefresh(isNeedRefresh) {
|
|
184
|
+
return new Promise(resolve => {
|
|
185
|
+
if (!this.getIsTokenStartRefresh()) {
|
|
186
|
+
if (isNeedRefresh) this.setIsTokenStartRefresh();
|
|
187
|
+
resolve();
|
|
188
|
+
} else {
|
|
189
|
+
const intervalId = setInterval(() => {
|
|
190
|
+
if (!this.getIsTokenStartRefresh()) {
|
|
191
|
+
clearInterval(intervalId);
|
|
192
|
+
resolve();
|
|
193
|
+
}
|
|
194
|
+
}, this.INTERVAL_FOR_CHECKING_TOKEN_UPDATE);
|
|
195
|
+
}
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
async processCredentials(cred) {
|
|
199
|
+
if (!cred.isNeedRefresh && !cred.isCatchCallbackProcess) return cred;
|
|
200
|
+
const CONTEXT = this;
|
|
201
|
+
return CONTEXT.refreshCredentials(cred, response => CONTEXT.saveCredentials(response)).then(() => {
|
|
202
|
+
return new Promise(resolve => {
|
|
203
|
+
setTimeout(async () => {
|
|
204
|
+
const newCredentials = await CONTEXT.getCredentials();
|
|
205
|
+
if (!newCredentials?.token) {
|
|
206
|
+
newCredentials.isRefreshFailed = true;
|
|
207
|
+
setTimeout(() => {
|
|
208
|
+
CONTEXT?.callbackAfterRejectRefresh?.();
|
|
209
|
+
}, 0);
|
|
210
|
+
}
|
|
211
|
+
resolve(newCredentials);
|
|
212
|
+
}, 0);
|
|
213
|
+
});
|
|
214
|
+
});
|
|
215
|
+
}
|
|
192
216
|
}
|
|
193
|
-
|
|
217
|
+
var _default = exports.default = CredentialsProcessing;
|
|
@@ -1,90 +1,93 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
|
|
2
3
|
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
|
|
4
|
+
value: true
|
|
4
5
|
});
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
get: function() {
|
|
8
|
-
return _default;
|
|
9
|
-
}
|
|
10
|
-
});
|
|
11
|
-
const _utils = require("./_utils");
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _utils = require("./_utils");
|
|
12
8
|
//? В этом кклассе собраны полезные добавочные утилиты, которые могут быть использованы другими классами,
|
|
13
9
|
//? но не имеют прямого отношения к реализации прямой ф-ти RESTAPI
|
|
14
10
|
//? Так же утилиты могут быть использованы как библиотечные
|
|
15
11
|
class Utils {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
12
|
+
//! Могут содержаться НЕасинхронные методы!
|
|
13
|
+
|
|
14
|
+
//? Ф-я normalizeQueryParams является нормализатором сложных квери
|
|
15
|
+
//? Например: &key1=&&&===&&&key2====&&&&&&&&key3=....
|
|
16
|
+
//? Для корректной работы на вход нужно подавать НЕ кодированные значения
|
|
17
|
+
//? По умолчанию выходные значения квери-параметров НЕ кодируются
|
|
18
|
+
normalizeQueryParams(queryParams, settings) {
|
|
19
|
+
if (settings && !(0, _utils.getIsOnlyAnObject)(settings)) {
|
|
20
|
+
throw new Error("Bad settings [class Utils, normalizeQueryParams]");
|
|
21
|
+
}
|
|
22
|
+
const getInitialArr = input => {
|
|
23
|
+
const prepareParam = (key, value) => {
|
|
24
|
+
if (!value) return `${key}=`;else if (typeof value === "string" || typeof value === "number") return `${key}=${value}`;else if (Array.isArray(value)) return `${key}=${value.join("")}`;else return `${key}=Bad-data-format`;
|
|
25
|
+
};
|
|
26
|
+
if (Array.isArray(input)) {
|
|
27
|
+
return input.map(item => {
|
|
28
|
+
if (typeof item !== "string") return [];
|
|
29
|
+
const index = item.indexOf("=");
|
|
30
|
+
if (index === -1) return [item];
|
|
31
|
+
return [item.slice(0, index), item.slice(index + 1)];
|
|
32
|
+
}).filter(_ref => {
|
|
33
|
+
let [key] = _ref;
|
|
34
|
+
return Boolean(key);
|
|
35
|
+
}).map(_ref2 => {
|
|
36
|
+
let [key, value] = _ref2;
|
|
37
|
+
return prepareParam(key, value);
|
|
38
|
+
});
|
|
39
|
+
} else if ((0, _utils.getIsOnlyAnObject)(input)) return Object.keys(input).map(key => prepareParam(key, input[key]));else if (typeof input === "string") return (input[0] === "?" ? input.slice(1) : input).split("&");else return [];
|
|
40
|
+
};
|
|
41
|
+
const {
|
|
42
|
+
isEncode = false,
|
|
43
|
+
outputAs = "array"
|
|
44
|
+
} = settings || {};
|
|
45
|
+
const initialStructure = getInitialArr(queryParams);
|
|
46
|
+
const normalizedStructure = initialStructure.reduce((acc, str, idx) => {
|
|
47
|
+
const lastIndex = acc.result.length - 1;
|
|
48
|
+
const processToJoin = function (val) {
|
|
49
|
+
let recoverableSymbol = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "&";
|
|
50
|
+
const encodedToJoin = `${encodeURIComponent(recoverableSymbol)}${encodeURIComponent(val)}`;
|
|
51
|
+
acc.result[lastIndex] = `${acc.result[lastIndex]}${encodedToJoin}`;
|
|
52
|
+
acc.toJoin = null;
|
|
53
|
+
};
|
|
54
|
+
if (typeof acc.toJoin === "string") processToJoin(acc.toJoin);
|
|
55
|
+
const index = str.indexOf("=");
|
|
56
|
+
if (index !== -1 && index !== 0) {
|
|
57
|
+
const key = str.slice(0, index);
|
|
58
|
+
acc.result.push(`${key}=${encodeURIComponent(str.slice(index + 1))}`);
|
|
59
|
+
} else acc.toJoin = str;
|
|
60
|
+
//? Добивка для последней итерации
|
|
61
|
+
if (idx === initialStructure.length - 1 && typeof acc.toJoin === "string") processToJoin(acc.toJoin);
|
|
62
|
+
return acc;
|
|
63
|
+
}, {
|
|
64
|
+
result: [],
|
|
65
|
+
toJoin: null
|
|
66
|
+
}).result;
|
|
67
|
+
const outputStructure = normalizedStructure.map(item => {
|
|
68
|
+
const [key, value] = item.split("=");
|
|
69
|
+
return [key, !isEncode ? decodeURIComponent(value) : value];
|
|
70
|
+
});
|
|
71
|
+
switch (outputAs) {
|
|
72
|
+
case "string":
|
|
73
|
+
return outputStructure.length ? `?${outputStructure.map(_ref3 => {
|
|
74
|
+
let [key, value] = _ref3;
|
|
75
|
+
return `${key}=${value}`;
|
|
76
|
+
}).join("&")}` : "";
|
|
77
|
+
case "object":
|
|
78
|
+
return outputStructure.reduce((acc, _ref4) => {
|
|
79
|
+
let [key, value] = _ref4;
|
|
80
|
+
return {
|
|
81
|
+
...acc,
|
|
82
|
+
[key]: value
|
|
83
|
+
};
|
|
84
|
+
}, {});
|
|
85
|
+
default:
|
|
86
|
+
return outputStructure.map(_ref5 => {
|
|
87
|
+
let [key, value] = _ref5;
|
|
88
|
+
return `${key}=${value}`;
|
|
76
89
|
});
|
|
77
|
-
switch(outputAs){
|
|
78
|
-
case "string":
|
|
79
|
-
return outputStructure.length ? `?${outputStructure.map(([key, value])=>`${key}=${value}`).join("&")}` : "";
|
|
80
|
-
case "object":
|
|
81
|
-
return outputStructure.reduce((acc, [key, value])=>({
|
|
82
|
-
...acc,
|
|
83
|
-
[key]: value
|
|
84
|
-
}), {});
|
|
85
|
-
default:
|
|
86
|
-
return outputStructure.map(([key, value])=>`${key}=${value}`);
|
|
87
|
-
}
|
|
88
90
|
}
|
|
91
|
+
}
|
|
89
92
|
}
|
|
90
|
-
|
|
93
|
+
var _default = exports.default = Utils;
|
|
@@ -1,19 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
2
4
|
Object.defineProperty(exports, "__esModule", {
|
|
3
|
-
|
|
5
|
+
value: true
|
|
4
6
|
});
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
});
|
|
11
|
-
const _jsonwebtoken = /*#__PURE__*/ _interop_require_default(require("jsonwebtoken"));
|
|
12
|
-
function _interop_require_default(obj) {
|
|
13
|
-
return obj && obj.__esModule ? obj : {
|
|
14
|
-
default: obj
|
|
15
|
-
};
|
|
16
|
-
}
|
|
17
|
-
const _default = {
|
|
18
|
-
jwt: _jsonwebtoken.default
|
|
19
|
-
};
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _jsonwebtoken = _interopRequireDefault(require("jsonwebtoken"));
|
|
9
|
+
var _default = exports.default = {
|
|
10
|
+
jwt: _jsonwebtoken.default
|
|
11
|
+
};
|