intelicoreact 1.3.37 → 1.3.39
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Atomic/FormElements/ActionAlert/ActionAlert.js +1 -9
- package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +1 -10
- package/dist/Atomic/FormElements/Calendar/Calendar.js +4 -24
- package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +1 -10
- package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +2 -14
- package/dist/Atomic/FormElements/Datepicker/Datepicker.js +5 -54
- package/dist/Atomic/FormElements/Datepicker/components/Calendar.js +3 -21
- package/dist/Atomic/FormElements/Dropdown/Dropdown.js +54 -145
- package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +1 -7
- package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +9 -47
- package/dist/Atomic/FormElements/FileLoader/FileLoader.js +3 -15
- package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +15 -29
- package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +5 -15
- package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +6 -26
- package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +19 -35
- package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +9 -38
- package/dist/Atomic/FormElements/Input/Input.js +24 -57
- package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +4 -31
- package/dist/Atomic/FormElements/InputColor/InputColor.js +4 -14
- package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +6 -27
- package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +7 -42
- package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +3 -21
- package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +58 -81
- package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +6 -41
- package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +1 -8
- package/dist/Atomic/FormElements/InputDateRange/dependencies.js +14 -44
- package/dist/Atomic/FormElements/InputLink/InputLink.js +6 -23
- package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +0 -4
- package/dist/Atomic/FormElements/InputMask/InputMask.js +77 -208
- package/dist/Atomic/FormElements/InputMask/functions.js +2 -28
- package/dist/Atomic/FormElements/InputMask2/InputMask2.js +43 -119
- package/dist/Atomic/FormElements/InputMask2/functions.js +2 -28
- package/dist/Atomic/FormElements/InputMask3/InputMask3.js +44 -137
- package/dist/Atomic/FormElements/InputMask3/functions.js +2 -28
- package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +3 -17
- package/dist/Atomic/FormElements/InputsRow/InputsRow.js +5 -24
- package/dist/Atomic/FormElements/Label/Label.js +1 -9
- package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +35 -73
- package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +3 -15
- package/dist/Atomic/FormElements/NumericInput/NumericInput.js +23 -44
- package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +7 -17
- package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +3 -14
- package/dist/Atomic/FormElements/RadioInput/RadioInput.js +1 -10
- package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +3 -14
- package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +3 -23
- package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +17 -34
- package/dist/Atomic/FormElements/RangeList/RangeList.js +6 -25
- package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +1 -11
- package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +14 -72
- package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +40 -124
- package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +1 -10
- package/dist/Atomic/FormElements/Switcher/Switcher.js +1 -10
- package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +1 -13
- package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +1 -10
- package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +2 -17
- package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +3 -17
- package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +1 -11
- package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +6 -29
- package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +2 -3
- package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +1 -12
- package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +53 -145
- package/dist/Atomic/FormElements/Text/Text.js +10 -16
- package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +1 -9
- package/dist/Atomic/FormElements/Textarea/Textarea.js +8 -12
- package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +6 -35
- package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +4 -13
- package/dist/Atomic/FormElements/TimeRange/TimeRange.js +7 -21
- package/dist/Atomic/FormElements/UserContacts/UserContacts.js +8 -35
- package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +5 -18
- package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +3 -10
- package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +3 -11
- package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +1 -2
- package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +5 -12
- package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +3 -3
- package/dist/Atomic/Layout/Header/Header.js +3 -15
- package/dist/Atomic/Layout/MainMenu/MainMenu.js +3 -20
- package/dist/Atomic/Layout/Spinner/Spinner.js +1 -8
- package/dist/Atomic/UI/Accordion/Accordion.js +3 -19
- package/dist/Atomic/UI/Accordion/AccordionItem.js +9 -23
- package/dist/Atomic/UI/AccordionTable/AccordionTable.js +7 -32
- package/dist/Atomic/UI/AccordionText/AccordionText.js +3 -15
- package/dist/Atomic/UI/AdvancedTag/AdvTag.js +4 -21
- package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +3 -15
- package/dist/Atomic/UI/Alert/Alert.js +3 -16
- package/dist/Atomic/UI/Arrow/Arrow.js +3 -16
- package/dist/Atomic/UI/Box/Box.js +3 -9
- package/dist/Atomic/UI/Button/Button.js +2 -11
- package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +1 -10
- package/dist/Atomic/UI/Chart/Chart.js +4 -29
- package/dist/Atomic/UI/Chart/partial/Chart.constants.js +11 -19
- package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +1 -12
- package/dist/Atomic/UI/Chart/partial/datasetSetters.js +11 -34
- package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +82 -56
- package/dist/Atomic/UI/Chart/partial/optionsSetters.js +15 -19
- package/dist/Atomic/UI/Chart/partial/utils.js +6 -20
- package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +3 -13
- package/dist/Atomic/UI/DateTime/DateTime.js +3 -14
- package/dist/Atomic/UI/DebugContainer/DebugContainer.js +4 -16
- package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +3 -11
- package/dist/Atomic/UI/DoubleString/DoubleString.js +5 -17
- package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +3 -10
- package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +17 -52
- package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +1 -29
- package/dist/Atomic/UI/Hint/Hint.js +5 -30
- package/dist/Atomic/UI/Modal/Modal.js +6 -29
- package/dist/Atomic/UI/Modal/ModalHOC.js +4 -9
- package/dist/Atomic/UI/Modal/partials/ModalFooter.js +1 -7
- package/dist/Atomic/UI/Modal/partials/ModalTitle.js +1 -8
- package/dist/Atomic/UI/Modal/partials/useMobileModal.js +32 -49
- package/dist/Atomic/UI/ModalBackup/Modal.js +65 -90
- package/dist/Atomic/UI/ModalBackup/ModalHOC.js +12 -21
- package/dist/Atomic/UI/ModalBackup/partials/ModalFooter.js +6 -11
- package/dist/Atomic/UI/ModalBackup/partials/ModalTitle.js +15 -19
- package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +6 -21
- package/dist/Atomic/UI/NavLine/NavLine.js +26 -55
- package/dist/Atomic/UI/NavLine/Tabs.js +2 -3
- package/dist/Atomic/UI/PageTitle/PageTitle.js +2 -10
- package/dist/Atomic/UI/PieChart/PieChart.js +1 -10
- package/dist/Atomic/UI/Price/Price.js +3 -8
- package/dist/Atomic/UI/PriceRange/PriceRange.js +1 -7
- package/dist/Atomic/UI/ProgressLine/ProgressLine.js +1 -16
- package/dist/Atomic/UI/Status/Status.js +1 -8
- package/dist/Atomic/UI/Table/Partials/TdCell.js +5 -29
- package/dist/Atomic/UI/Table/Partials/TdHeader.js +1 -11
- package/dist/Atomic/UI/Table/Partials/TdRow.js +5 -17
- package/dist/Atomic/UI/Table/Partials/TdTitle.js +3 -14
- package/dist/Atomic/UI/Table/Table.js +1 -12
- package/dist/Atomic/UI/Table/TdTypes/TdActions.js +2 -18
- package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +1 -9
- package/dist/Atomic/UI/Table/TdTypes/TdRange.js +1 -4
- package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +1 -13
- package/dist/Atomic/UI/Tag/Tag.js +3 -14
- package/dist/Atomic/UI/TagList/TagList.js +19 -35
- package/dist/Atomic/UI/UserBox/UserBox.js +1 -13
- package/dist/Classes/AbortableFetch.js +36 -93
- package/dist/Classes/AnimatedHandler.js +3 -7
- package/dist/Classes/RESTAPI/index.js +39 -43
- package/dist/Classes/RESTAPI/partials/AbortableFetch.js +35 -93
- package/dist/Classes/RESTAPI/partials/ApiBase.js +1 -9
- package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +7 -19
- package/dist/Classes/RESTAPI/partials/ApiUtils.js +28 -35
- package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +21 -44
- package/dist/Classes/RESTAPI/partials/Utils.js +6 -19
- package/dist/Classes/RESTAPI/partials/_outerDependencies.js +2 -6
- package/dist/Classes/RESTAPI/partials/_utils.js +13 -36
- package/dist/Constants/index.constants.js +8 -15
- package/dist/Functions/Portal.js +5 -16
- package/dist/Functions/customEventListener.js +4 -17
- package/dist/Functions/fieldValueFormatters.js +43 -83
- package/dist/Functions/hooks/useFormFieldsChangesManager.js +23 -26
- package/dist/Functions/locale/createTranslator.js +4 -9
- package/dist/Functions/operations.js +12 -22
- package/dist/Functions/presets/inputMaskPresets.js +9 -11
- package/dist/Functions/presets/inputPresets.js +8 -11
- package/dist/Functions/presets/mobileKeyboardTypesPresets.js +7 -9
- package/dist/Functions/schemas.js +6 -13
- package/dist/Functions/useBodyScrollLock.js +1 -6
- package/dist/Functions/useClickOutside.js +0 -4
- package/dist/Functions/useDebounce.js +2 -7
- package/dist/Functions/useFieldFocus.js +6 -18
- package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +0 -9
- package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +12 -23
- package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +6 -15
- package/dist/Functions/useFormTools/functions/General.js +18 -28
- package/dist/Functions/useFormTools/functions/RenderFields.js +2 -11
- package/dist/Functions/useFormTools/functions/usePrevious.js +1 -5
- package/dist/Functions/useFormTools/index.js +85 -144
- package/dist/Functions/useInputHighlightError.js +3 -12
- package/dist/Functions/useIsMobile.js +7 -12
- package/dist/Functions/useKeyPress/useHandleKeyPress.js +1 -7
- package/dist/Functions/useKeyPress/useKeyPress.js +1 -9
- package/dist/Functions/useLocalStorage.js +1 -9
- package/dist/Functions/useLocationParams.js +4 -5
- package/dist/Functions/useMetaInfo.js +3 -10
- package/dist/Functions/useMouseUpOutside.js +0 -3
- package/dist/Functions/useOnlineStatus.js +1 -9
- package/dist/Functions/usePasswordChecker.js +4 -20
- package/dist/Functions/usePrevious.js +1 -5
- package/dist/Functions/useResize.js +2 -10
- package/dist/Functions/useScrollTo.js +2 -7
- package/dist/Functions/useToggle.js +1 -5
- package/dist/Functions/utils.js +49 -127
- package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +2 -9
- package/dist/Molecular/CustomIcons/components/AlertCircle.js +2 -9
- package/dist/Molecular/CustomIcons/components/AppStore.js +2 -9
- package/dist/Molecular/CustomIcons/components/Arrow.js +2 -9
- package/dist/Molecular/CustomIcons/components/ArrowDown.js +2 -9
- package/dist/Molecular/CustomIcons/components/ArrowLeft.js +2 -9
- package/dist/Molecular/CustomIcons/components/ArrowRight.js +2 -9
- package/dist/Molecular/CustomIcons/components/ArrowUp.js +2 -9
- package/dist/Molecular/CustomIcons/components/Bell.js +2 -9
- package/dist/Molecular/CustomIcons/components/Button.js +2 -9
- package/dist/Molecular/CustomIcons/components/Campaigns.js +2 -9
- package/dist/Molecular/CustomIcons/components/Check.js +2 -9
- package/dist/Molecular/CustomIcons/components/Check2.js +2 -9
- package/dist/Molecular/CustomIcons/components/ChevronDown.js +2 -9
- package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +2 -9
- package/dist/Molecular/CustomIcons/components/ChevronLeft.js +2 -9
- package/dist/Molecular/CustomIcons/components/ChevronRight.js +2 -9
- package/dist/Molecular/CustomIcons/components/ChevronUp.js +2 -9
- package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +2 -9
- package/dist/Molecular/CustomIcons/components/Close.js +2 -9
- package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +2 -9
- package/dist/Molecular/CustomIcons/components/Delete.js +2 -9
- package/dist/Molecular/CustomIcons/components/Edit.js +2 -9
- package/dist/Molecular/CustomIcons/components/Email.js +2 -9
- package/dist/Molecular/CustomIcons/components/FinturfLogo.js +2 -9
- package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +2 -9
- package/dist/Molecular/CustomIcons/components/Flows.js +2 -9
- package/dist/Molecular/CustomIcons/components/Gift.js +2 -9
- package/dist/Molecular/CustomIcons/components/GoogleAuth.js +2 -9
- package/dist/Molecular/CustomIcons/components/GooglePlay.js +2 -9
- package/dist/Molecular/CustomIcons/components/HelpCircle.js +2 -9
- package/dist/Molecular/CustomIcons/components/HelpCircle2.js +2 -9
- package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +2 -9
- package/dist/Molecular/CustomIcons/components/Home.js +2 -9
- package/dist/Molecular/CustomIcons/components/Home2.js +2 -9
- package/dist/Molecular/CustomIcons/components/Key.js +2 -9
- package/dist/Molecular/CustomIcons/components/Landers.js +2 -9
- package/dist/Molecular/CustomIcons/components/Lock.js +2 -9
- package/dist/Molecular/CustomIcons/components/Mail.js +2 -9
- package/dist/Molecular/CustomIcons/components/Mastercard.js +2 -9
- package/dist/Molecular/CustomIcons/components/Minus.js +2 -9
- package/dist/Molecular/CustomIcons/components/Offers.js +2 -9
- package/dist/Molecular/CustomIcons/components/Pause.js +2 -9
- package/dist/Molecular/CustomIcons/components/PayPal.js +2 -9
- package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +2 -9
- package/dist/Molecular/CustomIcons/components/Phone.js +2 -9
- package/dist/Molecular/CustomIcons/components/Play.js +2 -9
- package/dist/Molecular/CustomIcons/components/Plus.js +2 -9
- package/dist/Molecular/CustomIcons/components/Profile.js +2 -9
- package/dist/Molecular/CustomIcons/components/QRCode.js +2 -9
- package/dist/Molecular/CustomIcons/components/Rectangle.js +2 -9
- package/dist/Molecular/CustomIcons/components/Revert.js +2 -9
- package/dist/Molecular/CustomIcons/components/Star.js +2 -9
- package/dist/Molecular/CustomIcons/components/Star2.js +2 -9
- package/dist/Molecular/CustomIcons/components/TrafficSources.js +2 -9
- package/dist/Molecular/CustomIcons/components/Trash.js +2 -9
- package/dist/Molecular/CustomIcons/components/TrashRed.js +2 -9
- package/dist/Molecular/CustomIcons/components/Triggers.js +2 -9
- package/dist/Molecular/CustomIcons/components/User.js +2 -9
- package/dist/Molecular/CustomIcons/components/Visa.js +2 -9
- package/dist/Molecular/CustomIcons/components/X.js +2 -9
- package/dist/Molecular/CustomIcons/index.js +0 -122
- package/dist/Molecular/FormElement/FormElement.js +1 -12
- package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +30 -31
- package/dist/Molecular/FormWithDependOn/partials/_utils.js +9 -12
- package/dist/Molecular/InputAddress/InputAddress.js +65 -114
- package/dist/Molecular/InputPassword/InputPassword.js +5 -19
- package/dist/index.js +0 -2
- package/package.json +1 -1
- package/dist/Atomic/FormElements/UserContacts/partial/defaultIcons.js +0 -91
|
@@ -1,20 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _outerDependencies = _interopRequireDefault(require("./_outerDependencies"));
|
|
11
|
-
|
|
12
9
|
var _utils = require("./_utils");
|
|
13
|
-
|
|
14
10
|
const {
|
|
15
11
|
jwt
|
|
16
12
|
} = _outerDependencies.default;
|
|
17
|
-
|
|
18
13
|
class CredentialsProcessing {
|
|
19
14
|
constructor(settings) {
|
|
20
15
|
const {
|
|
@@ -26,20 +21,25 @@ class CredentialsProcessing {
|
|
|
26
21
|
getCredentials,
|
|
27
22
|
getHeadersForAuthorize,
|
|
28
23
|
//? На вход получит токен, должна вернуть объект для коструктора Headers
|
|
24
|
+
|
|
29
25
|
//? Так же опционально можно передавать
|
|
30
26
|
importCredentials,
|
|
31
27
|
//? если он передается, то он будет применяться к выводу от вызова getCredentials
|
|
32
28
|
saveCredentials,
|
|
33
29
|
//? можно будет найти в объекте credentialsProcessing, чтобы использовать кастомными методами
|
|
30
|
+
|
|
34
31
|
//! Либо вызов getCredentials, либо цепочка вызовов importCredentials(getCredentials())
|
|
35
32
|
//! должна возвращать требуемую классом структуру
|
|
36
33
|
//! Класс требует структуры
|
|
37
34
|
//! - { token }, если флоу рефреш токена НЕ используется
|
|
38
35
|
//! - { token, refreshToken, expires }, если используется флоу рефреш токена
|
|
36
|
+
|
|
39
37
|
// *********
|
|
38
|
+
|
|
40
39
|
//? Подключает флоу рефреша токенов
|
|
41
40
|
isUseRefreshTokensPropcessing = false,
|
|
42
41
|
//! Для корректной работы флоу рефреша токенов передача метода saveCredentials становится ОБЯЗАТЕЛЬНОЙ
|
|
42
|
+
|
|
43
43
|
//? Так же для корректной работы флоу рефреша токенов нужно
|
|
44
44
|
//? - либо
|
|
45
45
|
refreshCredentials,
|
|
@@ -50,6 +50,7 @@ class CredentialsProcessing {
|
|
|
50
50
|
//! REFRESH_TOKEN_PATH передается ПОЛНОСТЬЮ (глобальная адресация)!
|
|
51
51
|
CODES_USING_THE_REFRESH_ATTEMPT,
|
|
52
52
|
//? указывает по каким кодам ответа триггериться рефреш, массив чисел
|
|
53
|
+
|
|
53
54
|
//? Опционально
|
|
54
55
|
REFRESH_TOKEN_FLAG = "refreshTokenFlag",
|
|
55
56
|
INTERVAL_FOR_CHECKING_TOKEN_UPDATE = 50,
|
|
@@ -57,107 +58,89 @@ class CredentialsProcessing {
|
|
|
57
58
|
callbackAfterRejectRefresh
|
|
58
59
|
} = credentialsProcessing || {};
|
|
59
60
|
if (typeof getCredentials !== "function") throw new Error("No getCredentials method [CredentialsProcessing]");
|
|
60
|
-
|
|
61
61
|
if (typeof getHeadersForAuthorize !== "function") {
|
|
62
62
|
throw new Error("No getHeadersForAuthorize method [CredentialsProcessing]");
|
|
63
63
|
}
|
|
64
|
-
|
|
65
64
|
if (importCredentials && typeof importCredentials !== "function") {
|
|
66
65
|
throw new Error("Bad importCredentials method [CredentialsProcessing]");
|
|
67
66
|
}
|
|
68
|
-
|
|
69
67
|
this.isUseRefreshTokensPropcessing = isUseRefreshTokensPropcessing;
|
|
70
68
|
this.DEFAULT_CREDENTIALS = {};
|
|
71
69
|
this.getCredentialsByOuter = getCredentials;
|
|
72
70
|
this.getHeadersForAuthorize = getHeadersForAuthorize;
|
|
73
|
-
this.importCredentials = importCredentials;
|
|
71
|
+
this.importCredentials = importCredentials;
|
|
74
72
|
|
|
73
|
+
//? Если метод передан или если не передан, но включен флоу обновления токенов (тогда saveCredentials обязателен)
|
|
75
74
|
if (saveCredentials || isUseRefreshTokensPropcessing) {
|
|
76
75
|
if (typeof saveCredentials !== "function") throw new Error("No saveCredentials method [CredentialsProcessing]");else this.saveCredentials = saveCredentials;
|
|
77
76
|
}
|
|
78
|
-
|
|
79
77
|
if (isUseRefreshTokensPropcessing) {
|
|
80
78
|
if (typeof refreshCredentials === "function") this.refreshCredentialsByOuter = refreshCredentials;else {
|
|
81
79
|
if (typeof this.refreshCredentialsByOuter === "function" && typeof REFRESH_TOKEN_PATH !== "string") {
|
|
82
80
|
throw new Error("No REFRESH_TOKEN_PATH [CredentialsProcessing]");
|
|
83
81
|
}
|
|
84
|
-
|
|
85
82
|
this.REFRESH_TOKEN_PATH = REFRESH_TOKEN_PATH;
|
|
86
83
|
}
|
|
87
|
-
|
|
88
84
|
if (!Array.isArray(CODES_USING_THE_REFRESH_ATTEMPT)) {
|
|
89
85
|
throw new Error("No CODES_USING_THE_REFRESH_ATTEMPT [CredentialsProcessing]");
|
|
90
86
|
}
|
|
91
|
-
|
|
92
87
|
if (!CODES_USING_THE_REFRESH_ATTEMPT.every(i => typeof i === "number")) {
|
|
93
88
|
throw new Error("Invalid format of CODES_USING_THE_REFRESH_ATTEMPT elements [CredentialsProcessing]");
|
|
94
89
|
}
|
|
95
|
-
|
|
96
90
|
if (typeof REFRESH_TOKEN_FLAG !== "string") throw new Error("Bad REFRESH_TOKEN_FLAG [CredentialsProcessing]");
|
|
97
|
-
|
|
98
91
|
if (typeof INTERVAL_FOR_CHECKING_TOKEN_UPDATE !== "number") {
|
|
99
92
|
throw new Error("Bad INTERVAL_FOR_CHECKING_TOKEN_UPDATE [CredentialsProcessing]");
|
|
100
93
|
}
|
|
101
|
-
|
|
102
94
|
if (typeof INTERVAL_FOR_CHECKING_TOKEN_UPDATE !== "number") {
|
|
103
95
|
throw new Error("Bad INTERVAL_FOR_CHECKING_TOKEN_UPDATE [CredentialsProcessing]");
|
|
104
96
|
}
|
|
105
|
-
|
|
106
97
|
if (callbackAfterRejectRefresh && typeof callbackAfterRejectRefresh !== "function") {
|
|
107
98
|
throw new Error("Bad INTERVAL_FOR_CHECKING_TOKEN_UPDATE [CredentialsProcessing]");
|
|
108
99
|
}
|
|
109
|
-
|
|
110
100
|
this.CODES_USING_THE_REFRESH_ATTEMPT = CODES_USING_THE_REFRESH_ATTEMPT;
|
|
111
101
|
this.REFRESH_TOKEN_FLAG = REFRESH_TOKEN_FLAG;
|
|
112
102
|
this.INTERVAL_FOR_CHECKING_TOKEN_UPDATE = INTERVAL_FOR_CHECKING_TOKEN_UPDATE;
|
|
113
103
|
if (callbackAfterRejectRefresh) this.callbackAfterRejectRefresh = callbackAfterRejectRefresh;
|
|
114
104
|
}
|
|
115
105
|
}
|
|
116
|
-
|
|
117
106
|
getIsTokenStartRefresh() {
|
|
118
107
|
return localStorage.getItem(this.REFRESH_TOKEN_FLAG);
|
|
119
108
|
}
|
|
120
|
-
|
|
121
109
|
setIsTokenStartRefresh() {
|
|
122
110
|
localStorage.setItem(this.REFRESH_TOKEN_FLAG, true);
|
|
123
111
|
}
|
|
124
|
-
|
|
125
112
|
removeIsTokenStartRefresh() {
|
|
126
113
|
localStorage.removeItem(this.REFRESH_TOKEN_FLAG);
|
|
127
114
|
}
|
|
128
|
-
|
|
129
115
|
async getCredentials(isCatchCallbackProcess, callback) {
|
|
130
116
|
let credentials = await this.getCredentialsByOuter();
|
|
131
117
|
if (typeof this.importCredentials === "function") credentials = await this.importCredentials(credentials);
|
|
132
118
|
if (!(0, _utils.getIsOnlyAnObject)(credentials)) credentials = {};
|
|
133
119
|
const token = credentials.token || null;
|
|
134
|
-
|
|
135
120
|
if (token && !isCatchCallbackProcess) {
|
|
136
121
|
let decoded;
|
|
137
|
-
|
|
138
122
|
try {
|
|
139
123
|
decoded = jwt.decode(token);
|
|
140
124
|
} catch {
|
|
141
125
|
decoded = null;
|
|
142
126
|
}
|
|
143
|
-
|
|
144
127
|
const currentTime = Date.now() / 1000;
|
|
145
|
-
if (decoded !== null && Number(decoded.exp) < currentTime) credentials = {
|
|
128
|
+
if (decoded !== null && Number(decoded.exp) < currentTime) credentials = {
|
|
129
|
+
...credentials,
|
|
146
130
|
isNeedRefresh: true
|
|
147
131
|
};
|
|
148
132
|
}
|
|
149
|
-
|
|
150
|
-
|
|
133
|
+
if (callback) await callback({
|
|
134
|
+
...credentials,
|
|
151
135
|
isCatchCallbackProcess
|
|
152
136
|
});
|
|
153
|
-
return {
|
|
137
|
+
return {
|
|
138
|
+
...credentials,
|
|
154
139
|
isCatchCallbackProcess
|
|
155
140
|
};
|
|
156
141
|
}
|
|
157
|
-
|
|
158
142
|
async refreshCredentials(currentCredentials, callback) {
|
|
159
143
|
const CONTEXT = this;
|
|
160
|
-
|
|
161
144
|
async function finalize(cred) {
|
|
162
145
|
if (callback) await callback(cred);
|
|
163
146
|
return Promise.resolve(cred).then(async res => {
|
|
@@ -165,10 +148,10 @@ class CredentialsProcessing {
|
|
|
165
148
|
return res;
|
|
166
149
|
});
|
|
167
150
|
}
|
|
151
|
+
if (!(currentCredentials !== null && currentCredentials !== void 0 && currentCredentials.token) || !(currentCredentials !== null && currentCredentials !== void 0 && currentCredentials.refreshToken)) return finalize(CONTEXT.DEFAULT_CREDENTIALS);
|
|
168
152
|
|
|
169
|
-
|
|
153
|
+
//! ВНИМАНИЕ! Данный механизм рефреша принят на проекте finturfreactfrontend (админка)
|
|
170
154
|
//! На кабинете он ТОЧНО НЕ ТАКОЙ
|
|
171
|
-
|
|
172
155
|
async function refreshCredentialsByDefault() {
|
|
173
156
|
const {
|
|
174
157
|
token,
|
|
@@ -189,15 +172,14 @@ class CredentialsProcessing {
|
|
|
189
172
|
body,
|
|
190
173
|
redirect: "follow"
|
|
191
174
|
});
|
|
192
|
-
}
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
//? Передавайте собственный refreshCredentials при получении экземляра RESTAPI, если не уверены,
|
|
193
178
|
//? что механизм рефреша токенов ИМЕННО ТАКОЙ как в ф-и refreshCredentialsByDefault!
|
|
194
179
|
//! currentCredentials передаются в формате класса! ({ token, refreshToken, expires })
|
|
195
|
-
|
|
196
|
-
|
|
197
180
|
const newCredentials = typeof CONTEXT.refreshCredentialsByOuter === "function" ? await CONTEXT.refreshCredentialsByOuter(currentCredentials) : await refreshCredentialsByDefault();
|
|
198
181
|
return finalize(newCredentials);
|
|
199
182
|
}
|
|
200
|
-
|
|
201
183
|
async waitRefresh(isNeedRefresh) {
|
|
202
184
|
return new Promise(resolve => {
|
|
203
185
|
if (!this.getIsTokenStartRefresh()) {
|
|
@@ -213,7 +195,6 @@ class CredentialsProcessing {
|
|
|
213
195
|
}
|
|
214
196
|
});
|
|
215
197
|
}
|
|
216
|
-
|
|
217
198
|
async processCredentials(cred) {
|
|
218
199
|
if (!cred.isNeedRefresh && !cred.isCatchCallbackProcess) return cred;
|
|
219
200
|
const CONTEXT = this;
|
|
@@ -221,16 +202,12 @@ class CredentialsProcessing {
|
|
|
221
202
|
return new Promise(resolve => {
|
|
222
203
|
setTimeout(async () => {
|
|
223
204
|
var _CONTEXT$callbackAfte;
|
|
224
|
-
|
|
225
205
|
const newCredentials = await CONTEXT.getCredentials();
|
|
226
|
-
if (!(newCredentials !== null && newCredentials !== void 0 && newCredentials.token)) await (CONTEXT === null || CONTEXT === void 0
|
|
206
|
+
if (!(newCredentials !== null && newCredentials !== void 0 && newCredentials.token)) await (CONTEXT === null || CONTEXT === void 0 || (_CONTEXT$callbackAfte = CONTEXT.callbackAfterRejectRefresh) === null || _CONTEXT$callbackAfte === void 0 ? void 0 : _CONTEXT$callbackAfte.call(CONTEXT));
|
|
227
207
|
resolve(newCredentials);
|
|
228
208
|
}, 0);
|
|
229
209
|
});
|
|
230
210
|
});
|
|
231
211
|
}
|
|
232
|
-
|
|
233
212
|
}
|
|
234
|
-
|
|
235
|
-
var _default = CredentialsProcessing;
|
|
236
|
-
exports.default = _default;
|
|
213
|
+
var _default = exports.default = CredentialsProcessing;
|
|
@@ -4,14 +4,13 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.default = void 0;
|
|
7
|
-
|
|
8
7
|
var _utils = require("./_utils");
|
|
9
|
-
|
|
10
8
|
//? В этом кклассе собраны полезные добавочные утилиты, которые могут быть использованы другими классами,
|
|
11
9
|
//? но не имеют прямого отношения к реализации прямой ф-ти RESTAPI
|
|
12
10
|
//? Так же утилиты могут быть использованы как библиотечные
|
|
13
11
|
class Utils {
|
|
14
12
|
//! Могут содержаться НЕасинхронные методы!
|
|
13
|
+
|
|
15
14
|
//? Ф-я normalizeQueryParams является нормализатором сложных квери
|
|
16
15
|
//? Например: &key1=&&&===&&&key2====&&&&&&&&key3=....
|
|
17
16
|
//? Для корректной работы на вход нужно подавать НЕ кодированные значения
|
|
@@ -20,12 +19,10 @@ class Utils {
|
|
|
20
19
|
if (settings && !(0, _utils.getIsOnlyAnObject)(settings)) {
|
|
21
20
|
throw new Error("Bad settings [class Utils, normalizeQueryParams]");
|
|
22
21
|
}
|
|
23
|
-
|
|
24
22
|
const getInitialArr = input => {
|
|
25
23
|
const prepareParam = (key, value) => {
|
|
26
24
|
if (!value) return "".concat(key, "=");else if (typeof value === "string" || typeof value === "number") return "".concat(key, "=").concat(value);else if (Array.isArray(value)) return "".concat(key, "=").concat(value.join(""));else return "".concat(key, "=Bad-data-format");
|
|
27
25
|
};
|
|
28
|
-
|
|
29
26
|
if (Array.isArray(input)) {
|
|
30
27
|
return input.map(item => {
|
|
31
28
|
if (typeof item !== "string") return [];
|
|
@@ -41,7 +38,6 @@ class Utils {
|
|
|
41
38
|
});
|
|
42
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 [];
|
|
43
40
|
};
|
|
44
|
-
|
|
45
41
|
const {
|
|
46
42
|
isEncode = false,
|
|
47
43
|
outputAs = "array"
|
|
@@ -49,23 +45,19 @@ class Utils {
|
|
|
49
45
|
const initialStructure = getInitialArr(queryParams);
|
|
50
46
|
const normalizedStructure = initialStructure.reduce((acc, str, idx) => {
|
|
51
47
|
const lastIndex = acc.result.length - 1;
|
|
52
|
-
|
|
53
48
|
const processToJoin = function (val) {
|
|
54
49
|
let recoverableSymbol = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "&";
|
|
55
50
|
const encodedToJoin = "".concat(encodeURIComponent(recoverableSymbol)).concat(encodeURIComponent(val));
|
|
56
51
|
acc.result[lastIndex] = "".concat(acc.result[lastIndex]).concat(encodedToJoin);
|
|
57
52
|
acc.toJoin = null;
|
|
58
53
|
};
|
|
59
|
-
|
|
60
54
|
if (typeof acc.toJoin === "string") processToJoin(acc.toJoin);
|
|
61
55
|
const index = str.indexOf("=");
|
|
62
|
-
|
|
63
56
|
if (index !== -1 && index !== 0) {
|
|
64
57
|
const key = str.slice(0, index);
|
|
65
58
|
acc.result.push("".concat(key, "=").concat(encodeURIComponent(str.slice(index + 1))));
|
|
66
|
-
} else acc.toJoin = str;
|
|
67
|
-
|
|
68
|
-
|
|
59
|
+
} else acc.toJoin = str;
|
|
60
|
+
//? Добивка для последней итерации
|
|
69
61
|
if (idx === initialStructure.length - 1 && typeof acc.toJoin === "string") processToJoin(acc.toJoin);
|
|
70
62
|
return acc;
|
|
71
63
|
}, {
|
|
@@ -76,22 +68,20 @@ class Utils {
|
|
|
76
68
|
const [key, value] = item.split("=");
|
|
77
69
|
return [key, !isEncode ? decodeURIComponent(value) : value];
|
|
78
70
|
});
|
|
79
|
-
|
|
80
71
|
switch (outputAs) {
|
|
81
72
|
case "string":
|
|
82
73
|
return outputStructure.length ? "?".concat(outputStructure.map(_ref3 => {
|
|
83
74
|
let [key, value] = _ref3;
|
|
84
75
|
return "".concat(key, "=").concat(value);
|
|
85
76
|
}).join("&")) : "";
|
|
86
|
-
|
|
87
77
|
case "object":
|
|
88
78
|
return outputStructure.reduce((acc, _ref4) => {
|
|
89
79
|
let [key, value] = _ref4;
|
|
90
|
-
return {
|
|
80
|
+
return {
|
|
81
|
+
...acc,
|
|
91
82
|
[key]: value
|
|
92
83
|
};
|
|
93
84
|
}, {});
|
|
94
|
-
|
|
95
85
|
default:
|
|
96
86
|
return outputStructure.map(_ref5 => {
|
|
97
87
|
let [key, value] = _ref5;
|
|
@@ -99,8 +89,5 @@ class Utils {
|
|
|
99
89
|
});
|
|
100
90
|
}
|
|
101
91
|
}
|
|
102
|
-
|
|
103
92
|
}
|
|
104
|
-
|
|
105
|
-
var _default = Utils;
|
|
106
|
-
exports.default = _default;
|
|
93
|
+
var _default = exports.default = Utils;
|
|
@@ -1,15 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _jsonwebtoken = _interopRequireDefault(require("jsonwebtoken"));
|
|
11
|
-
|
|
12
|
-
var _default = {
|
|
9
|
+
var _default = exports.default = {
|
|
13
10
|
jwt: _jsonwebtoken.default
|
|
14
|
-
};
|
|
15
|
-
exports.default = _default;
|
|
11
|
+
};
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
@@ -10,28 +9,19 @@ exports.clone = void 0;
|
|
|
10
9
|
exports.getInstanceOfFetchSystem = getInstanceOfFetchSystem;
|
|
11
10
|
exports.getIsOnlyAnObject = getIsOnlyAnObject;
|
|
12
11
|
exports.getResponseClone = void 0;
|
|
13
|
-
|
|
14
12
|
var _AbortableFetch = _interopRequireDefault(require("./AbortableFetch"));
|
|
15
|
-
|
|
16
13
|
function getIsOnlyAnObject(input) {
|
|
17
14
|
return typeof input === "object" && input instanceof Object && !Array.isArray(input);
|
|
18
15
|
}
|
|
19
|
-
|
|
20
16
|
const clone = input => {
|
|
21
17
|
if (input === null || typeof input !== "object") return input;
|
|
22
18
|
const data = input instanceof Array ? [] : {};
|
|
23
|
-
|
|
24
19
|
for (const i in input) data[i] = clone(input[i]);
|
|
25
|
-
|
|
26
20
|
return data;
|
|
27
21
|
};
|
|
28
|
-
|
|
29
22
|
exports.clone = clone;
|
|
30
|
-
|
|
31
23
|
const getResponseClone = async res => typeof (res === null || res === void 0 ? void 0 : res.clone) === "function" ? await res.clone() : clone(res);
|
|
32
|
-
|
|
33
24
|
exports.getResponseClone = getResponseClone;
|
|
34
|
-
|
|
35
25
|
function addCustomMethods(data, prefix) {
|
|
36
26
|
const preparedPrefix = (prefix || "").toString();
|
|
37
27
|
Object.keys(data).forEach(key => {
|
|
@@ -39,50 +29,45 @@ function addCustomMethods(data, prefix) {
|
|
|
39
29
|
if (typeof data[key] === "function" && getIsOnlyAnObject(this)) this[preparedKey] = data[key];
|
|
40
30
|
});
|
|
41
31
|
}
|
|
42
|
-
|
|
43
32
|
async function getInstanceOfFetchSystem(isGetBody) {
|
|
44
33
|
var _API_CONTEXT$addAsCom;
|
|
45
|
-
|
|
46
34
|
const API_CONTEXT = this;
|
|
47
35
|
const CREDENTIALS_CONTEXT = API_CONTEXT.credentialsProcessing;
|
|
48
|
-
let credentials = {};
|
|
49
|
-
|
|
36
|
+
let credentials = {};
|
|
37
|
+
//? Наличие credentialsProcessing включает добавление токена в принципе (если авторизованы в системе)
|
|
50
38
|
if (CREDENTIALS_CONTEXT) {
|
|
51
39
|
//? Метод getCredentials - классовый метод, обертка над getCredentials, переданным при создании экземпляра
|
|
52
40
|
//? В классовом getCredentials уже инкапсулирована логика использования importCredentials
|
|
53
41
|
const cred = await CREDENTIALS_CONTEXT.getCredentials();
|
|
54
42
|
credentials = CREDENTIALS_CONTEXT.isUseRefreshTokensPropcessing ? await CREDENTIALS_CONTEXT.waitRefresh(cred.isNeedRefresh && !CREDENTIALS_CONTEXT.getIsTokenStartRefresh()).then(async () => CREDENTIALS_CONTEXT.processCredentials(await CREDENTIALS_CONTEXT.getCredentials())) : cred;
|
|
55
43
|
}
|
|
56
|
-
|
|
57
44
|
if (API_CONTEXT.addAsCommon && typeof API_CONTEXT.addAsCommon !== "function") {
|
|
58
45
|
throw new Error("addAsCommon must be function [getInstanceOfFetchSystem]");
|
|
59
46
|
}
|
|
60
|
-
|
|
61
47
|
const {
|
|
62
48
|
headers: headersToAbortableFetchInstance,
|
|
63
49
|
queryParameters: queryParamsToAbortableFetchInstance,
|
|
64
50
|
options: optionsToAbortableFetchInstance
|
|
65
51
|
} = (await ((_API_CONTEXT$addAsCom = API_CONTEXT.addAsCommon) === null || _API_CONTEXT$addAsCom === void 0 ? void 0 : _API_CONTEXT$addAsCom.call(API_CONTEXT))) || {};
|
|
66
|
-
|
|
67
52
|
if (headersToAbortableFetchInstance && !getIsOnlyAnObject(headersToAbortableFetchInstance) || optionsToAbortableFetchInstance && !getIsOnlyAnObject(optionsToAbortableFetchInstance) || queryParamsToAbortableFetchInstance && !(typeof queryParamsToAbortableFetchInstance === "string" || getIsOnlyAnObject(queryParamsToAbortableFetchInstance) || Array.isArray(queryParamsToAbortableFetchInstance))) {
|
|
68
53
|
throw new Error("Bad output format from addAsCommon [getInstanceOfFetchSystem]");
|
|
69
|
-
}
|
|
70
|
-
|
|
54
|
+
}
|
|
71
55
|
|
|
56
|
+
//? По итогу возвращается экземпляр класса AbortableFetch (который мы конфигурируем большим объектом настроек)
|
|
72
57
|
return (CREDENTIALS_CONTEXT !== null && CREDENTIALS_CONTEXT !== void 0 && CREDENTIALS_CONTEXT.isUseRefreshTokensPropcessing ? CREDENTIALS_CONTEXT.waitRefresh() : Promise.resolve()).then(async () => {
|
|
73
58
|
var _CREDENTIALS_CONTEXT$;
|
|
74
|
-
|
|
75
59
|
return new _AbortableFetch.default({
|
|
76
60
|
//? Метод по умолчанию
|
|
77
61
|
method: "GET",
|
|
78
62
|
//? Заголовки по умолчанию
|
|
79
|
-
headers: {
|
|
63
|
+
headers: {
|
|
64
|
+
...headersToAbortableFetchInstance,
|
|
80
65
|
//? (*) Тут обрабатываются кейсы
|
|
81
66
|
//? - когда нет this.credentialsProcessing
|
|
82
67
|
//? (мы НЕ хотим добавлять токены в принципе, не зашли в верхнюю if-ку)
|
|
83
68
|
//? - когда есть this.credentialsProcessing, но нет credentials.token (не авторизованы)
|
|
84
69
|
//? (зашли в верхнюю if-ку, попробовали получить/обновить креды)
|
|
85
|
-
...(credentials.token ? (CREDENTIALS_CONTEXT === null || CREDENTIALS_CONTEXT === void 0
|
|
70
|
+
...(credentials.token ? (CREDENTIALS_CONTEXT === null || CREDENTIALS_CONTEXT === void 0 || (_CREDENTIALS_CONTEXT$ = CREDENTIALS_CONTEXT.getHeadersForAuthorize) === null || _CREDENTIALS_CONTEXT$ === void 0 ? void 0 : _CREDENTIALS_CONTEXT$.call(CREDENTIALS_CONTEXT, credentials.token)) || {} : {})
|
|
86
71
|
},
|
|
87
72
|
queryParameters: await API_CONTEXT.processQueryParams(queryParamsToAbortableFetchInstance),
|
|
88
73
|
//? Опции по умолчанию
|
|
@@ -94,45 +79,38 @@ async function getInstanceOfFetchSystem(isGetBody) {
|
|
|
94
79
|
//? Каждый запрос (каждый запрос мультизапроса), сделаный методом request этого экземпляра выполнит этот колбек
|
|
95
80
|
everyPromiseCallback: async function everyPromiseCallback(response) {
|
|
96
81
|
var _CREDENTIALS_CONTEXT$2, _CREDENTIALS_CONTEXT$3;
|
|
97
|
-
|
|
98
82
|
//? this - это НЕ API_CONTEXT и НЕ CREDENTIALS_CONTEXT, a итоговый эекземпляр AbortableFetch
|
|
99
83
|
const ABORTABLE_FETCH_INSTANCE = this;
|
|
100
|
-
|
|
101
84
|
if (!response.status) {
|
|
102
85
|
var _request$mesageOption;
|
|
103
|
-
|
|
104
86
|
const request = ABORTABLE_FETCH_INSTANCE.requestInput.find(item => item.path === response.request.path);
|
|
105
|
-
const isUseErrorToast = request === null || request === void 0
|
|
106
|
-
|
|
87
|
+
const isUseErrorToast = request === null || request === void 0 || (_request$mesageOption = request.mesageOptions) === null || _request$mesageOption === void 0 ? void 0 : _request$mesageOption.isUseErrorToast;
|
|
107
88
|
if (isUseErrorToast) {
|
|
108
89
|
var _API_CONTEXT$sendMess;
|
|
109
|
-
|
|
110
|
-
(_API_CONTEXT$sendMess = API_CONTEXT.sendMessage) === null || _API_CONTEXT$sendMess === void 0 ? void 0 : _API_CONTEXT$sendMess.call(API_CONTEXT, API_CONTEXT.NO_INET, request.mesageOptions, response);
|
|
90
|
+
(_API_CONTEXT$sendMess = API_CONTEXT.sendMessage) === null || _API_CONTEXT$sendMess === void 0 || _API_CONTEXT$sendMess.call(API_CONTEXT, API_CONTEXT.NO_INET, request.mesageOptions, response);
|
|
111
91
|
}
|
|
112
92
|
}
|
|
113
|
-
|
|
114
93
|
return API_CONTEXT.REJECT_CODES.includes(response.status) || CREDENTIALS_CONTEXT !== null && CREDENTIALS_CONTEXT !== void 0 && CREDENTIALS_CONTEXT.isUseRefreshTokensPropcessing && CREDENTIALS_CONTEXT !== null && CREDENTIALS_CONTEXT !== void 0 && (_CREDENTIALS_CONTEXT$2 = CREDENTIALS_CONTEXT.CODES_USING_THE_REFRESH_ATTEMPT) !== null && _CREDENTIALS_CONTEXT$2 !== void 0 && (_CREDENTIALS_CONTEXT$3 = _CREDENTIALS_CONTEXT$2.includes) !== null && _CREDENTIALS_CONTEXT$3 !== void 0 && _CREDENTIALS_CONTEXT$3.call(_CREDENTIALS_CONTEXT$2, response.status) ? Promise.reject(new Error("status:".concat(response.status))) : Promise.resolve(!isGetBody ? response : await API_CONTEXT.getResponseBody(response));
|
|
115
94
|
},
|
|
116
95
|
//? Если хоть один запрос из пачки будет зареджекчен, зареджектится вся пачка.
|
|
117
96
|
//? В этом случае будет выполнен этот колбэк
|
|
118
97
|
catchCallback: async function catchCallback(res) {
|
|
119
98
|
var _CREDENTIALS_CONTEXT$4, _CREDENTIALS_CONTEXT$5;
|
|
120
|
-
|
|
121
99
|
//? this - это НЕ API_CONTEXT и НЕ CREDENTIALS_CONTEXT, a итоговый эекземпляр AbortableFetch
|
|
122
100
|
const ABORTABLE_FETCH_INSTANCE = this;
|
|
123
101
|
const code = Number(res.message.split(":")[1]);
|
|
124
|
-
|
|
125
102
|
if (CREDENTIALS_CONTEXT !== null && CREDENTIALS_CONTEXT !== void 0 && (_CREDENTIALS_CONTEXT$4 = CREDENTIALS_CONTEXT.CODES_USING_THE_REFRESH_ATTEMPT) !== null && _CREDENTIALS_CONTEXT$4 !== void 0 && (_CREDENTIALS_CONTEXT$5 = _CREDENTIALS_CONTEXT$4.includes) !== null && _CREDENTIALS_CONTEXT$5 !== void 0 && _CREDENTIALS_CONTEXT$5.call(_CREDENTIALS_CONTEXT$4, code)) {
|
|
126
103
|
var _CREDENTIALS_CONTEXT$6;
|
|
127
|
-
|
|
128
104
|
const isDoRefresh = !(CREDENTIALS_CONTEXT !== null && CREDENTIALS_CONTEXT !== void 0 && (_CREDENTIALS_CONTEXT$6 = CREDENTIALS_CONTEXT.getIsTokenStartRefresh) !== null && _CREDENTIALS_CONTEXT$6 !== void 0 && _CREDENTIALS_CONTEXT$6.call(CREDENTIALS_CONTEXT));
|
|
129
105
|
return CREDENTIALS_CONTEXT === null || CREDENTIALS_CONTEXT === void 0 ? void 0 : CREDENTIALS_CONTEXT.waitRefresh(isDoRefresh).then(async () => {
|
|
130
106
|
//? Пробуем зарефрешить
|
|
131
|
-
await (CREDENTIALS_CONTEXT === null || CREDENTIALS_CONTEXT === void 0 ? void 0 : CREDENTIALS_CONTEXT.processCredentials({
|
|
107
|
+
await (CREDENTIALS_CONTEXT === null || CREDENTIALS_CONTEXT === void 0 ? void 0 : CREDENTIALS_CONTEXT.processCredentials({
|
|
108
|
+
...(await (CREDENTIALS_CONTEXT === null || CREDENTIALS_CONTEXT === void 0 ? void 0 : CREDENTIALS_CONTEXT.getCredentials(true))),
|
|
132
109
|
isCatchCallbackProcess: isDoRefresh
|
|
133
110
|
}));
|
|
134
111
|
const newCredentials = await CREDENTIALS_CONTEXT.getCredentials();
|
|
135
|
-
ABORTABLE_FETCH_INSTANCE.setHeaders({
|
|
112
|
+
ABORTABLE_FETCH_INSTANCE.setHeaders({
|
|
113
|
+
...ABORTABLE_FETCH_INSTANCE.getHeaders(),
|
|
136
114
|
...(newCredentials !== null && newCredentials !== void 0 && newCredentials.token ? {
|
|
137
115
|
Authorization: "Bearer ".concat(newCredentials === null || newCredentials === void 0 ? void 0 : newCredentials.token)
|
|
138
116
|
} : {})
|
|
@@ -141,7 +119,6 @@ async function getInstanceOfFetchSystem(isGetBody) {
|
|
|
141
119
|
return Promise.reject(res);
|
|
142
120
|
});
|
|
143
121
|
}
|
|
144
|
-
|
|
145
122
|
return Promise.reject(res);
|
|
146
123
|
}
|
|
147
124
|
});
|
|
@@ -4,24 +4,18 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.OS = exports.MAX_PHONE_LENGTH = exports.MAX_NAME_LENGTH = exports.KEYBOARD_SERVICE_KEYS = exports.KEYBOARD_KEY_CODES = exports.DEFAULT_DATE_MASK_NO_VALUE_SYMBOL = exports.DEFAULT_COLORS = void 0;
|
|
7
|
-
const KEYBOARD_SERVICE_KEYS = ["Escape", "F1", "F2", "F3", "F4", "F5", "F6", "F7", "F8", "F9", "F10", "F11", "F12", "Tab", "CapsLock", "Shift", "Control", "Meta", "Option", "Alt", "ContextMenu", "ArrowLeft", "ArrowRight", "ArrowUp", "ArrowDown", "NumLock", "Backspace", "Delete", "Enter", "Return", "Insert", "Home", "End", "PageUp", "PageDown", "PrintScreen", "ScrollLock", "Pause"];
|
|
8
|
-
exports.
|
|
9
|
-
const
|
|
10
|
-
exports.
|
|
11
|
-
const
|
|
12
|
-
exports.
|
|
13
|
-
const DEFAULT_DATE_MASK_NO_VALUE_SYMBOL = "_";
|
|
14
|
-
exports.DEFAULT_DATE_MASK_NO_VALUE_SYMBOL = DEFAULT_DATE_MASK_NO_VALUE_SYMBOL;
|
|
15
|
-
const DEFAULT_COLORS = ["#D9C1FF", "#FFBAF0", "#FFB8CE", "#FFC3A2", "#FFDB7C", "#F9F871", "#C3FCF1", "#F6F2CB", "#E0F8D1", "#B1DFFB", "#8DECFE", "#76F7ED", "#8AFEC8"];
|
|
16
|
-
exports.DEFAULT_COLORS = DEFAULT_COLORS;
|
|
17
|
-
const KEYBOARD_KEY_CODES = {
|
|
7
|
+
const KEYBOARD_SERVICE_KEYS = exports.KEYBOARD_SERVICE_KEYS = ["Escape", "F1", "F2", "F3", "F4", "F5", "F6", "F7", "F8", "F9", "F10", "F11", "F12", "Tab", "CapsLock", "Shift", "Control", "Meta", "Option", "Alt", "ContextMenu", "ArrowLeft", "ArrowRight", "ArrowUp", "ArrowDown", "NumLock", "Backspace", "Delete", "Enter", "Return", "Insert", "Home", "End", "PageUp", "PageDown", "PrintScreen", "ScrollLock", "Pause"];
|
|
8
|
+
const MAX_PHONE_LENGTH = exports.MAX_PHONE_LENGTH = 10;
|
|
9
|
+
const MAX_NAME_LENGTH = exports.MAX_NAME_LENGTH = 128;
|
|
10
|
+
const DEFAULT_DATE_MASK_NO_VALUE_SYMBOL = exports.DEFAULT_DATE_MASK_NO_VALUE_SYMBOL = "_";
|
|
11
|
+
const DEFAULT_COLORS = exports.DEFAULT_COLORS = ["#D9C1FF", "#FFBAF0", "#FFB8CE", "#FFC3A2", "#FFDB7C", "#F9F871", "#C3FCF1", "#F6F2CB", "#E0F8D1", "#B1DFFB", "#8DECFE", "#76F7ED", "#8AFEC8"];
|
|
12
|
+
const KEYBOARD_KEY_CODES = exports.KEYBOARD_KEY_CODES = {
|
|
18
13
|
Backspace: 8,
|
|
19
14
|
Delete: 46,
|
|
20
15
|
ARROW_LEFT: 37,
|
|
21
16
|
ARROW_RIGHT: 39
|
|
22
17
|
};
|
|
23
|
-
exports.
|
|
24
|
-
const OS = {
|
|
18
|
+
const OS = exports.OS = {
|
|
25
19
|
iOS: "iOS",
|
|
26
20
|
Android: "Android",
|
|
27
21
|
WP: "Windows Phone",
|
|
@@ -29,5 +23,4 @@ const OS = {
|
|
|
29
23
|
Windows: "Windows",
|
|
30
24
|
MacOS: "MacOS",
|
|
31
25
|
Unknown: "unknown"
|
|
32
|
-
};
|
|
33
|
-
exports.OS = OS;
|
|
26
|
+
};
|
package/dist/Functions/Portal.js
CHANGED
|
@@ -1,20 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
4
|
Object.defineProperty(exports, "__esModule", {
|
|
6
5
|
value: true
|
|
7
6
|
});
|
|
8
7
|
exports.default = void 0;
|
|
9
|
-
|
|
10
8
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
|
|
12
9
|
var _reactDom = _interopRequireDefault(require("react-dom"));
|
|
13
|
-
|
|
14
|
-
function
|
|
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
|
-
|
|
10
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
11
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
18
12
|
const Portal = _ref => {
|
|
19
13
|
let {
|
|
20
14
|
children,
|
|
@@ -23,19 +17,14 @@ const Portal = _ref => {
|
|
|
23
17
|
const [container] = (0, _react.useState)(() => document.createElement("div"));
|
|
24
18
|
(0, _react.useEffect)(() => {
|
|
25
19
|
var _parent;
|
|
26
|
-
|
|
27
20
|
let parent;
|
|
28
21
|
if (parentSelector) parent = document.querySelector(parentSelector);else parent = document.body;
|
|
29
|
-
(_parent = parent) === null || _parent === void 0
|
|
22
|
+
(_parent = parent) === null || _parent === void 0 || _parent.appendChild(container);
|
|
30
23
|
return () => {
|
|
31
24
|
var _parent2;
|
|
32
|
-
|
|
33
|
-
(_parent2 = parent) === null || _parent2 === void 0 ? void 0 : _parent2.removeChild(container);
|
|
25
|
+
(_parent2 = parent) === null || _parent2 === void 0 || _parent2.removeChild(container);
|
|
34
26
|
};
|
|
35
27
|
}, []);
|
|
36
28
|
return /*#__PURE__*/_reactDom.default.createPortal(children, container);
|
|
37
29
|
};
|
|
38
|
-
|
|
39
|
-
var _default = /*#__PURE__*/_react.default.memo(Portal);
|
|
40
|
-
|
|
41
|
-
exports.default = _default;
|
|
30
|
+
var _default = exports.default = /*#__PURE__*/_react.default.memo(Portal);
|
|
@@ -2,55 +2,43 @@
|
|
|
2
2
|
|
|
3
3
|
(function () {
|
|
4
4
|
Element.prototype._addEventListener = Element.prototype.addEventListener;
|
|
5
|
-
|
|
6
5
|
Element.prototype.addEventListener = function (a, b, c) {
|
|
7
6
|
if (c == undefined) c = false;
|
|
8
|
-
|
|
9
7
|
this._addEventListener(a, b, c);
|
|
10
|
-
|
|
11
8
|
if (!this.eventListenerList) this.eventListenerList = {};
|
|
12
|
-
if (!this.eventListenerList[a]) this.eventListenerList[a] = [];
|
|
13
|
-
|
|
9
|
+
if (!this.eventListenerList[a]) this.eventListenerList[a] = [];
|
|
10
|
+
//this.removeEventListener(a,b,c); // TODO - handle duplicates..
|
|
14
11
|
this.eventListenerList[a].push({
|
|
15
12
|
listener: b,
|
|
16
13
|
useCapture: c
|
|
17
14
|
});
|
|
18
15
|
};
|
|
19
|
-
|
|
20
16
|
Element.prototype.getEventListeners = function (a) {
|
|
21
17
|
if (!this.eventListenerList) this.eventListenerList = {};
|
|
22
18
|
if (a == undefined) return this.eventListenerList;
|
|
23
19
|
return this.eventListenerList[a];
|
|
24
20
|
};
|
|
25
|
-
|
|
26
21
|
Element.prototype.clearEventListeners = function (a) {
|
|
27
22
|
if (!this.eventListenerList) this.eventListenerList = {};
|
|
28
|
-
|
|
29
23
|
if (a == undefined) {
|
|
30
24
|
for (const x in this.getEventListeners()) this.clearEventListeners(x);
|
|
31
|
-
|
|
32
25
|
return;
|
|
33
26
|
}
|
|
34
|
-
|
|
35
27
|
const el = this.getEventListeners(a);
|
|
36
28
|
if (el == undefined) return;
|
|
37
|
-
|
|
38
29
|
for (let i = el.length - 1; i >= 0; --i) {
|
|
39
30
|
const ev = el[i];
|
|
40
31
|
this.removeEventListener(a, ev.listener, ev.useCapture);
|
|
41
32
|
}
|
|
42
33
|
};
|
|
43
|
-
|
|
44
34
|
Element.prototype._removeEventListener = Element.prototype.removeEventListener;
|
|
45
|
-
|
|
46
35
|
Element.prototype.removeEventListener = function (a, b, c) {
|
|
47
36
|
if (c == undefined) c = false;
|
|
48
|
-
|
|
49
37
|
this._removeEventListener(a, b, c);
|
|
50
|
-
|
|
51
38
|
if (!this.eventListenerList) this.eventListenerList = {};
|
|
52
|
-
if (!this.eventListenerList[a]) this.eventListenerList[a] = [];
|
|
39
|
+
if (!this.eventListenerList[a]) this.eventListenerList[a] = [];
|
|
53
40
|
|
|
41
|
+
// Find the event in the list
|
|
54
42
|
for (let i = 0; i < this.eventListenerList[a].length; i++) {
|
|
55
43
|
if (this.eventListenerList[a][i].listener == b, this.eventListenerList[a][i].useCapture == c) {
|
|
56
44
|
// Hmm..
|
|
@@ -58,7 +46,6 @@
|
|
|
58
46
|
break;
|
|
59
47
|
}
|
|
60
48
|
}
|
|
61
|
-
|
|
62
49
|
if (this.eventListenerList[a].length == 0) delete this.eventListenerList[a];
|
|
63
50
|
};
|
|
64
51
|
})();
|