intelicoreact 1.6.19 → 1.6.20

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.
Files changed (272) hide show
  1. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.js +102 -1
  2. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +89 -1
  3. package/dist/Atomic/FormElements/Calendar/Calendar.js +232 -1
  4. package/dist/Atomic/FormElements/Calendar/Calendar.props.js +3 -1
  5. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +101 -1
  6. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +70 -1
  7. package/dist/Atomic/FormElements/Datepicker/Datepicker.js +350 -1
  8. package/dist/Atomic/FormElements/Datepicker/Datepicker.props.js +3 -1
  9. package/dist/Atomic/FormElements/Datepicker/components/DatepickerCalendar.js +177 -1
  10. package/dist/Atomic/FormElements/Datepicker/components/DatepickerCalendar.props.js +3 -1
  11. package/dist/Atomic/FormElements/Dropdown/Dropdown.js +561 -1
  12. package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +20 -1
  13. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +405 -1
  14. package/dist/Atomic/FormElements/FileLoader/FileLoader.js +94 -1
  15. package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +105 -1
  16. package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +67 -1
  17. package/dist/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.js +247 -1
  18. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +160 -1
  19. package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +193 -1
  20. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +135 -1
  21. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN_old.js +116 -1
  22. package/dist/Atomic/FormElements/Input/Input.js +467 -1
  23. package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +161 -1
  24. package/dist/Atomic/FormElements/InputColor/InputColor.js +64 -1
  25. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +166 -1
  26. package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +354 -1
  27. package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +71 -1
  28. package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +693 -1
  29. package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +254 -1
  30. package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +32 -1
  31. package/dist/Atomic/FormElements/InputDateRange/dependencies.js +200 -1
  32. package/dist/Atomic/FormElements/InputLink/InputLink.js +99 -1
  33. package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +37 -1
  34. package/dist/Atomic/FormElements/InputMask/InputMask.js +1214 -1
  35. package/dist/Atomic/FormElements/InputMask/config.js +15 -1
  36. package/dist/Atomic/FormElements/InputMask/functions.js +58 -1
  37. package/dist/Atomic/FormElements/InputMask2/InputMask2.js +674 -1
  38. package/dist/Atomic/FormElements/InputMask2/config.js +15 -1
  39. package/dist/Atomic/FormElements/InputMask2/functions.js +58 -1
  40. package/dist/Atomic/FormElements/InputMask3/InputMask3.js +766 -1
  41. package/dist/Atomic/FormElements/InputMask3/config.js +15 -1
  42. package/dist/Atomic/FormElements/InputMask3/functions.js +58 -1
  43. package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +114 -1
  44. package/dist/Atomic/FormElements/InputsRow/InputsRow.js +140 -1
  45. package/dist/Atomic/FormElements/Label/Label.js +82 -1
  46. package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +506 -1
  47. package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +45 -1
  48. package/dist/Atomic/FormElements/NumericInput/NumericInput.js +331 -1
  49. package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +66 -1
  50. package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +80 -1
  51. package/dist/Atomic/FormElements/RadioInput/RadioInput.js +64 -1
  52. package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +54 -1
  53. package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +183 -1
  54. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +209 -1
  55. package/dist/Atomic/FormElements/RangeList/RangeList.js +175 -1
  56. package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +43 -1
  57. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +443 -1
  58. package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +858 -1
  59. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +39 -1
  60. package/dist/Atomic/FormElements/Switcher/Switcher.js +59 -1
  61. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +50 -1
  62. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +47 -1
  63. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +96 -1
  64. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +40 -1
  65. package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +64 -1
  66. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +170 -1
  67. package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +202 -1
  68. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +67 -1
  69. package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.js +115 -1
  70. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +826 -1
  71. package/dist/Atomic/FormElements/Text/Text.js +125 -1
  72. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +45 -1
  73. package/dist/Atomic/FormElements/Textarea/Textarea.js +80 -1
  74. package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +176 -1
  75. package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +62 -1
  76. package/dist/Atomic/FormElements/TimeRange/TimeRange.js +127 -1
  77. package/dist/Atomic/FormElements/UserContacts/UserContacts.js +220 -1
  78. package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +83 -1
  79. package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +82 -1
  80. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +101 -1
  81. package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +29 -1
  82. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +113 -1
  83. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +30 -1
  84. package/dist/Atomic/Layout/Header/Header.js +85 -1
  85. package/dist/Atomic/Layout/Spinner/Spinner.js +39 -1
  86. package/dist/Atomic/UI/Accordion/Accordion.js +118 -1
  87. package/dist/Atomic/UI/Accordion/AccordionItem.js +181 -1
  88. package/dist/Atomic/UI/AccordionTable/AccordionTable.js +238 -1
  89. package/dist/Atomic/UI/AccordionText/AccordionText.js +69 -1
  90. package/dist/Atomic/UI/AdvancedTag/AdvTag.js +207 -1
  91. package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +56 -1
  92. package/dist/Atomic/UI/Alert/Alert.js +72 -1
  93. package/dist/Atomic/UI/Arrow/Arrow.js +132 -1
  94. package/dist/Atomic/UI/Box/Box.js +52 -1
  95. package/dist/Atomic/UI/Button/Button.js +89 -1
  96. package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +72 -1
  97. package/dist/Atomic/UI/Chart/Chart.js +172 -1
  98. package/dist/Atomic/UI/Chart/partial/Chart.constants.js +95 -1
  99. package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +80 -1
  100. package/dist/Atomic/UI/Chart/partial/datasetSetters.js +188 -1
  101. package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +335 -1
  102. package/dist/Atomic/UI/Chart/partial/optionsSetters.js +43 -1
  103. package/dist/Atomic/UI/Chart/partial/utils.js +60 -1
  104. package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +109 -1
  105. package/dist/Atomic/UI/DateTime/DateTime.js +57 -1
  106. package/dist/Atomic/UI/DebugContainer/DebugContainer.js +44 -1
  107. package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +15 -1
  108. package/dist/Atomic/UI/DoubleString/DoubleString.js +102 -1
  109. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +226 -1
  110. package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +221 -1
  111. package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +106 -1
  112. package/dist/Atomic/UI/Hint/Hint.js +193 -1
  113. package/dist/Atomic/UI/Hint/partials/_utils.js +51 -1
  114. package/dist/Atomic/UI/Modal/Modal.js +188 -1
  115. package/dist/Atomic/UI/Modal/ModalHOC.js +72 -1
  116. package/dist/Atomic/UI/Modal/partials/ModalFooter.js +46 -1
  117. package/dist/Atomic/UI/Modal/partials/ModalTitle.js +83 -1
  118. package/dist/Atomic/UI/Modal/partials/useMobileModal.js +200 -1
  119. package/dist/Atomic/UI/MonoAccordion/MonoAccordion._test.js +75 -1
  120. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +80 -1
  121. package/dist/Atomic/UI/NavLine/NavLine.js +293 -1
  122. package/dist/Atomic/UI/PageTitle/PageTitle.js +75 -1
  123. package/dist/Atomic/UI/PieChart/PieChart.js +42 -1
  124. package/dist/Atomic/UI/Price/Price.js +22 -1
  125. package/dist/Atomic/UI/PriceRange/PriceRange.js +36 -1
  126. package/dist/Atomic/UI/ProgressLine/ProgressLine.js +71 -1
  127. package/dist/Atomic/UI/Status/Status.js +59 -1
  128. package/dist/Atomic/UI/Table/Partials/TdCell.js +87 -1
  129. package/dist/Atomic/UI/Table/Partials/TdHeader.js +38 -1
  130. package/dist/Atomic/UI/Table/Partials/TdRow.js +99 -1
  131. package/dist/Atomic/UI/Table/Partials/TdTitle.js +52 -1
  132. package/dist/Atomic/UI/Table/Table.js +63 -1
  133. package/dist/Atomic/UI/Table/TdTypes/TdActions.js +80 -1
  134. package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +28 -1
  135. package/dist/Atomic/UI/Table/TdTypes/TdRange.js +13 -1
  136. package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +53 -1
  137. package/dist/Atomic/UI/Tag/Tag.js +160 -1
  138. package/dist/Atomic/UI/TagList/TagList.js +251 -1
  139. package/dist/Atomic/UI/UserBox/UserBox.js +73 -1
  140. package/dist/Atomic/UI/WizardStepper/constructor.js +84 -1
  141. package/dist/Atomic/UI/WizardStepper/index.js +3 -1
  142. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.js +37 -1
  143. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/index.js +3 -1
  144. package/dist/Atomic/UI/WizardStepper/ui/StepRow/StepRow.js +61 -1
  145. package/dist/Atomic/UI/WizardStepper/ui/StepRow/index.js +3 -1
  146. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.js +39 -1
  147. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/index.js +3 -1
  148. package/dist/Atomic/UI/WizardStepper/ui/icons.js +49 -1
  149. package/dist/Atomic/UI/WizardStepper/ui/index.js +3 -1
  150. package/dist/Classes/AbortableFetch.js +454 -1
  151. package/dist/Classes/AnimatedHandler.js +47 -1
  152. package/dist/Classes/RESTAPI/index.js +228 -1
  153. package/dist/Classes/RESTAPI/partials/AbortableFetch.js +457 -1
  154. package/dist/Classes/RESTAPI/partials/ApiBase.js +48 -1
  155. package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +112 -1
  156. package/dist/Classes/RESTAPI/partials/ApiUtils.js +189 -1
  157. package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +252 -1
  158. package/dist/Classes/RESTAPI/partials/Utils.js +92 -1
  159. package/dist/Classes/RESTAPI/partials/_outerDependencies.js +3 -1
  160. package/dist/Classes/RESTAPI/partials/_utils.js +197 -1
  161. package/dist/Constants/index.constants.js +78 -1
  162. package/dist/Functions/Portal.js +22 -1
  163. package/dist/Functions/customEventListener.js +96 -1
  164. package/dist/Functions/dateTime.js +149 -1
  165. package/dist/Functions/fieldValueFormatters.js +405 -1
  166. package/dist/Functions/guards/assertions.js +66 -1
  167. package/dist/Functions/guards/safeValue.js +30 -1
  168. package/dist/Functions/guards/typeGuards.js +116 -1
  169. package/dist/Functions/hooks/useFormFieldsChangesManager.js +95 -1
  170. package/dist/Functions/locale/createTranslator.js +32 -1
  171. package/dist/Functions/operations.js +130 -1
  172. package/dist/Functions/presets/inputMaskPresets.js +170 -1
  173. package/dist/Functions/presets/inputPresets.js +60 -1
  174. package/dist/Functions/presets/mobileKeyboardTypesPresets.js +45 -1
  175. package/dist/Functions/schemas.js +31 -1
  176. package/dist/Functions/useBodyScrollLock.js +17 -1
  177. package/dist/Functions/useClickOutside.js +15 -1
  178. package/dist/Functions/useDebounce.js +17 -1
  179. package/dist/Functions/useFieldFocus.js +84 -1
  180. package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +39 -1
  181. package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +159 -1
  182. package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +78 -1
  183. package/dist/Functions/useFormTools/functions/General.js +134 -1
  184. package/dist/Functions/useFormTools/functions/RenderFields.js +111 -1
  185. package/dist/Functions/useFormTools/functions/usePrevious.js +12 -1
  186. package/dist/Functions/useFormTools/index.js +778 -1
  187. package/dist/Functions/useInputHighlightError.js +67 -1
  188. package/dist/Functions/useIsMobile/useIsMobile.js +53 -1
  189. package/dist/Functions/useKeyPress/useHandleKeyPress.js +21 -1
  190. package/dist/Functions/useKeyPress/useKeyPress.js +75 -1
  191. package/dist/Functions/useLocalStorage.js +34 -1
  192. package/dist/Functions/useLocationParams.js +27 -1
  193. package/dist/Functions/useMediaQuery.js +17 -1
  194. package/dist/Functions/useMetaInfo.js +43 -1
  195. package/dist/Functions/useMouseUpOutside.js +16 -1
  196. package/dist/Functions/useOnlineStatus.js +29 -1
  197. package/dist/Functions/usePasswordChecker.js +110 -1
  198. package/dist/Functions/usePrevious.js +12 -1
  199. package/dist/Functions/useResize.js +31 -1
  200. package/dist/Functions/useScrollTo.js +17 -1
  201. package/dist/Functions/useToggle.js +17 -1
  202. package/dist/Functions/utils.js +522 -1
  203. package/dist/Langs.js +168 -1
  204. package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +21 -1
  205. package/dist/Molecular/CustomIcons/components/AlertCircle.js +23 -1
  206. package/dist/Molecular/CustomIcons/components/AppStore.js +29 -1
  207. package/dist/Molecular/CustomIcons/components/Arrow.js +32 -1
  208. package/dist/Molecular/CustomIcons/components/ArrowDown.js +17 -1
  209. package/dist/Molecular/CustomIcons/components/ArrowLeft.js +22 -1
  210. package/dist/Molecular/CustomIcons/components/ArrowRight.js +22 -1
  211. package/dist/Molecular/CustomIcons/components/ArrowUp.js +17 -1
  212. package/dist/Molecular/CustomIcons/components/Bell.js +15 -1
  213. package/dist/Molecular/CustomIcons/components/Button.js +12 -1
  214. package/dist/Molecular/CustomIcons/components/Campaigns.js +16 -1
  215. package/dist/Molecular/CustomIcons/components/Check.js +14 -1
  216. package/dist/Molecular/CustomIcons/components/Check2.js +12 -1
  217. package/dist/Molecular/CustomIcons/components/ChevronDown.js +12 -1
  218. package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +11 -1
  219. package/dist/Molecular/CustomIcons/components/ChevronLeft.js +11 -1
  220. package/dist/Molecular/CustomIcons/components/ChevronRight.js +11 -1
  221. package/dist/Molecular/CustomIcons/components/ChevronUp.js +11 -1
  222. package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +27 -1
  223. package/dist/Molecular/CustomIcons/components/Close.js +14 -1
  224. package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +17 -1
  225. package/dist/Molecular/CustomIcons/components/Delete.js +16 -1
  226. package/dist/Molecular/CustomIcons/components/Edit.js +15 -1
  227. package/dist/Molecular/CustomIcons/components/Email.js +31 -1
  228. package/dist/Molecular/CustomIcons/components/FinturfLogo.js +18 -1
  229. package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +35 -1
  230. package/dist/Molecular/CustomIcons/components/Flows.js +15 -1
  231. package/dist/Molecular/CustomIcons/components/Gift.js +25 -1
  232. package/dist/Molecular/CustomIcons/components/GoogleAuth.js +29 -1
  233. package/dist/Molecular/CustomIcons/components/GooglePlay.js +29 -1
  234. package/dist/Molecular/CustomIcons/components/HelpCircle.js +19 -1
  235. package/dist/Molecular/CustomIcons/components/HelpCircle2.js +20 -1
  236. package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +19 -1
  237. package/dist/Molecular/CustomIcons/components/Home.js +16 -1
  238. package/dist/Molecular/CustomIcons/components/Home2.js +22 -1
  239. package/dist/Molecular/CustomIcons/components/Key.js +23 -1
  240. package/dist/Molecular/CustomIcons/components/Landers.js +20 -1
  241. package/dist/Molecular/CustomIcons/components/Lock.js +15 -1
  242. package/dist/Molecular/CustomIcons/components/Mail.js +26 -1
  243. package/dist/Molecular/CustomIcons/components/Mastercard.js +73 -1
  244. package/dist/Molecular/CustomIcons/components/Minus.js +25 -1
  245. package/dist/Molecular/CustomIcons/components/Offers.js +16 -1
  246. package/dist/Molecular/CustomIcons/components/Pause.js +28 -1
  247. package/dist/Molecular/CustomIcons/components/PayPal.js +41 -1
  248. package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +28 -1
  249. package/dist/Molecular/CustomIcons/components/Phone.js +30 -1
  250. package/dist/Molecular/CustomIcons/components/Play.js +25 -1
  251. package/dist/Molecular/CustomIcons/components/Plus.js +25 -1
  252. package/dist/Molecular/CustomIcons/components/Profile.js +16 -1
  253. package/dist/Molecular/CustomIcons/components/QRCode.js +29 -1
  254. package/dist/Molecular/CustomIcons/components/Rectangle.js +12 -1
  255. package/dist/Molecular/CustomIcons/components/Revert.js +13 -1
  256. package/dist/Molecular/CustomIcons/components/Star.js +14 -1
  257. package/dist/Molecular/CustomIcons/components/Star2.js +16 -1
  258. package/dist/Molecular/CustomIcons/components/TrafficSources.js +14 -1
  259. package/dist/Molecular/CustomIcons/components/Trash.js +15 -1
  260. package/dist/Molecular/CustomIcons/components/TrashRed.js +15 -1
  261. package/dist/Molecular/CustomIcons/components/Triggers.js +15 -1
  262. package/dist/Molecular/CustomIcons/components/User.js +25 -1
  263. package/dist/Molecular/CustomIcons/components/Visa.js +31 -1
  264. package/dist/Molecular/CustomIcons/components/X.js +12 -1
  265. package/dist/Molecular/CustomIcons/index.js +61 -1
  266. package/dist/Molecular/FormElement/FormElement.js +54 -1
  267. package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +184 -1
  268. package/dist/Molecular/FormWithDependOn/partials/_utils.js +53 -1
  269. package/dist/Molecular/InputAddress/InputAddress.js +620 -1
  270. package/dist/Molecular/InputPassword/InputPassword.js +48 -1
  271. package/dist/index.js +1 -1
  272. package/package.json +1 -1
@@ -1 +1,457 @@
1
- function e(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function t(e,t,r,n,a,i,s){try{var o=e[i](s),l=o.value}catch(e){r(e);return}o.done?t(l):Promise.resolve(l).then(n,a)}function r(e,t,r){if(!t.has(e))throw TypeError("attempted to "+r+" private field on non-instance");return t.get(e)}function n(e,t){var n=r(e,t,"get");return n.get?n.get.call(e):n.value}function a(e,t,r){if(t.has(e))throw TypeError("Cannot initialize the same private elements twice on an object");t.set(e,r)}function i(e,t,n){var a=r(e,t,"set");if(a.set)a.set.call(e,n);else{if(!a.writable)throw TypeError("attempted to set read only private field");a.value=n}return n}function s(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){s(e,t,r[t])})}return e}function l(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r})(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}function u(t){return function(t){if(Array.isArray(t))return e(t)}(t)||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(t)||function(t,r){if(t){if("string"==typeof t)return e(t,void 0);var n=Object.prototype.toString.call(t).slice(8,-1);if("Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return e(t,r)}}(t)||function(){throw TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function c(e){return e&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e}var h=/*#__PURE__*/new WeakMap,y=/*#__PURE__*/new WeakMap,f=/*#__PURE__*/new WeakMap,b=/*#__PURE__*/new WeakMap,p=/*#__PURE__*/new WeakMap,d=/*#__PURE__*/new WeakMap,v=/*#__PURE__*/new WeakMap,g=/*#__PURE__*/new WeakMap,P=/*#__PURE__*/new WeakMap,m=/*#__PURE__*/new WeakMap,k=/*#__PURE__*/function(){var e;function r(e){if(!(this instanceof r))throw TypeError("Cannot call a class as a function");if(a(this,h,{writable:!0,value:null}),a(this,y,{writable:!0,value:null}),a(this,f,{writable:!0,value:null}),a(this,b,{writable:!0,value:null}),a(this,p,{writable:!0,value:null}),a(this,d,{writable:!0,value:null}),a(this,v,{writable:!0,value:null}),a(this,g,{writable:!0,value:null}),a(this,P,{writable:!0,value:null}),a(this,m,{writable:!0,value:!1}),e&&((void 0===e?"undefined":c(e))!=="object"||Array.isArray(e)))throw Error("Not valid input value!");this.getPathPrefix=this.getPathPrefix.bind(this),this.setPathPrefix=this.setPathPrefix.bind(this),this.getMethod=this.getMethod.bind(this),this.setMethod=this.setMethod.bind(this),this.getQueryParameters=this.getQueryParameters.bind(this),this.getQueryString=this.getQueryString.bind(this),this.setQueryParameters=this.setQueryParameters.bind(this),this.getHeaders=this.getHeaders.bind(this),this.getHeadersObj=this.getHeadersObj.bind(this),this.setHeaders=this.setHeaders.bind(this),this.getBody=this.getBody.bind(this),this.setBody=this.setBody.bind(this),this.getOptions=this.getOptions.bind(this),this.setOptions=this.setOptions.bind(this),this.getCallback=this.getCallback.bind(this),this.setCallback=this.setCallback.bind(this),this.getCatchCallback=this.getCatchCallback.bind(this),this.setCatchCallback=this.setCatchCallback.bind(this),this.getEveryPromiseCallback=this.getEveryPromiseCallback.bind(this),this.setEveryPromiseCallback=this.setEveryPromiseCallback.bind(this),this.getIsResponseAsObject=this.getIsResponseAsObject.bind(this),this.setIsResponseAsObject=this.setIsResponseAsObject.bind(this),this.getProps=this.getProps.bind(this),this.setProps=this.setProps.bind(this),this.request=this.request.bind(this),this.repeatRequest=this.repeatRequest.bind(this),this.setProps(e||{})}return e=[{key:"request",value:function(e){var r,a,i=this;if(!e||(void 0===e?"undefined":c(e))!=="object"&&"string"!=typeof e)throw Error("Not valid props value!");this.requestInput=e;var k=(function(e){var t=this;return("string"==typeof e?[{path:e}]:Array.isArray(e)?u(e):[e]).reduce(function(e,r,a){var i,s,l,v=(void 0===r?"undefined":c(r))!=="object"||null===r||Array.isArray(r)?{}:r,g=v.name,P=v.path,m=v.method,k=v.queryParameters,O=v.headers,w=v.body,j=v.options,E=v.callback,A=v.mergeProps,_=v.isNoPathPrefix,C=v.isSkipEveryPromiseCallback,S=(null!=(i=Object)&&"undefined"!=typeof Symbol&&i[Symbol.hasInstance]?!!i[Symbol.hasInstance](A):A instanceof i)&&!Array.isArray(A)?A:{},R=function(e){var t;return null!=(t=S.all)?t:S[e]};if(!P||"string"!=typeof P)return e;var q=j||{},x=(q.name,q.path,q.pathPrefix,q.method,q.queryParameters,q.headers,q.body,q.options,q.callback,q.mergeProps,function(e,t){if(null==e)return{};var r,n,a=function(e,t){if(null==e)return{};var r,n,a={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(a[r]=e[r]);return a}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}(q,["name","path","pathPrefix","method","queryParameters","headers","body","options","callback","mergeProps"]));return u(e).concat([o({path:P,pathPrefix:"onlyLocal"===R("pathPrefix")||_?"":n(t,h)||"",method:"onlyLocal"===R("method")?m||"GET":"onlyGlobal"===R("method")?n(t,y)||"GET":m||n(t,y)||"GET",queryParameters:(null!=(s=R("queryParameters"))?s:R("query"))==="onlyLocal"?t.getQueryString(t.getQueryArray(k)):(null!=(l=R("queryParameters"))?l:R("query"))==="onlyGlobal"?t.getQueryString(t.getQueryArray(n(t,f))):t.getQueryString(u(t.getQueryArray(n(t,f))).concat(u(t.getQueryArray(k)))),headers:"onlyLocal"===R("headers")?t.getHeadersObj(O||{}):"onlyGlobal"===R("headers")?t.getHeadersObj(o({},n(t,b)||{})):t.getHeadersObj(o({},n(t,b)||{},O||{})),body:"onlyLocal"===R("body")?w||null:"onlyGlobal"===R("body")?n(t,p)||null:w&&n(t,p)&&(void 0===w?"undefined":c(w))===c(n(t,p))&&(void 0===w?"undefined":c(w))==="object"?Array.isArray(w)?u(n(t,p)).concat(u(w)):o({},n(t,p),w):w||n(t,p)||null,options:"onlyLocal"===R("options")?o({},x||{}):"onlyGlobal"===R("options")?o({},n(t,d)||{}):o({},n(t,d)||{},x||{}),callback:E,isSkipEveryPromiseCallback:C},t.getIsResponseAsObject()?{name:g&&"string"==typeof g?g:a}:{})])},[])}).call(this,e);if(!k.length)return Promise.reject(Error("There are no any valid props"));var O=new AbortController,w=this,j=Promise.all(k.map((r=function(e){var t,r;return function(e,t){var r,n,a,i={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]},s=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return s.next=o(0),s.throw=o(1),s.return=o(2),"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function o(o){return function(l){var u=[o,l];if(r)throw TypeError("Generator is already executing.");for(;s&&(s=0,u[0]&&(i=0)),i;)try{if(r=1,n&&(a=2&u[0]?n.return:u[0]?n.throw||((a=n.return)&&a.call(n),0):n.next)&&!(a=a.call(n,u[1])).done)return a;switch(n=0,a&&(u=[2&u[0],a.value]),u[0]){case 0:case 1:a=u;break;case 4:return i.label++,{value:u[1],done:!1};case 5:i.label++,n=u[1],u=[0];continue;case 7:u=i.ops.pop(),i.trys.pop();continue;default:if(!(a=(a=i.trys).length>0&&a[a.length-1])&&(6===u[0]||2===u[0])){i=0;continue}if(3===u[0]&&(!a||u[1]>a[0]&&u[1]<a[3])){i.label=u[1];break}if(6===u[0]&&i.label<a[1]){i.label=a[1],a=u;break}if(a&&i.label<a[2]){i.label=a[2],i.ops.push(u);break}a[2]&&i.ops.pop(),i.trys.pop();continue}u=t.call(e,i)}catch(e){u=[6,e],n=0}finally{r=a=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}}(this,function(a){var i;return t=e.path.includes("?")?"&".concat(e.queryParameters.replace(/\?/g,"")):e.queryParameters,r=fetch("".concat(e.pathPrefix).concat(e.path).concat(t),l(o(l(o({},e.options),{method:e.method,headers:e.headers}),e.body?{body:(null==(i=e.body)?void 0:i.constructor)===FormData?i:JSON.stringify(i)}:{}),{signal:O.signal})).then(function(t){return t.request=e,t}).catch(function(t){return Promise.resolve({ok:!1,status:0,statusText:t,request:e})}),n(w,P)&&!e.isSkipEveryPromiseCallback&&(r=r.then(function(e){return n(w,P).call(w,e)})),e.callback&&(r=r.then(function(t){return e.callback(t)})),n(w,m)&&(r=r.then(function(t){return{name:e.name,response:t}})),[2,r]})},a=function(){var e=this,n=arguments;return new Promise(function(a,i){var s=r.apply(e,n);function o(e){t(s,a,i,o,l,"next",e)}function l(e){t(s,a,i,o,l,"throw",e)}o(void 0)})},function(e){return a.apply(this,arguments)})));return j=j.then(function(e){return e.length<2?e[0]:e}),n(this,m)&&(j=j.then(function(t){return Array.isArray(e)&&e.length>1?t.reduce(function(e,t){return l(o({},e),s({},t.name,t.response))},{}):"always"===n(i,m)?s({},t.name,t.response):t.response})),(j=(j=j.then(function(e){return n(i,v)?n(i,v).call(i,e):e})).catch(function(e){return n(i,g)?n(i,g).call(i,e):e})).__proto__.abort=function(){return O.abort()},j}},{key:"repeatRequest",value:function(){return this.request(this.requestInput)}},{key:"getPathPrefix",value:function(){return n(this,h)}},{key:"setPathPrefix",value:function(e){if(e&&"string"!=typeof e)throw Error("Not valid pathPrefix value!");i(this,h,e||null)}},{key:"getMethod",value:function(){return n(this,y)}},{key:"setMethod",value:function(e){if(e&&!["GET","HEAD","POST","PUT","DELETE","CONNECT","OPTIONS","TRACE","PATCH"].includes(e))throw Error("Not valid method value!");i(this,y,e||null)}},{key:"getQueryParameters",value:function(){return n(this,f)}},{key:"getQueryArray",value:function(e){return"string"==typeof e?("?"===e[0]?e.slice(1):e).split("&"):Array.isArray(e)?e:(void 0===e?"undefined":c(e))==="object"&&null!==e?Object.keys(e).filter(function(t){return!!t&&!!e[t]}).map(function(t){return"".concat(t,"=").concat(e[t])}):[]}},{key:"getQueryString",value:function(e){if(!e)return"";if(!Array.isArray(e))throw Error("Not valid query parameters value!");return e.length?"?".concat(e.join("&")):""}},{key:"setQueryParameters",value:function(e){if(e&&!Array.isArray(e))throw Error("Not valid query parameters value!");i(this,f,e||null)}},{key:"getHeaders",value:function(){return n(this,b)}},{key:"getHeadersObj",value:function(e){var t=new Headers;if(!e)return t;if((void 0===e?"undefined":c(e))!=="object"||Array.isArray(e))throw Error("Not valid headers value!");return Object.keys(e).forEach(function(r){t.append(r,e[r])}),t}},{key:"setHeaders",value:function(e){if(e&&((void 0===e?"undefined":c(e))!=="object"||Array.isArray(e)))throw Error("Not valid headers value!");i(this,b,e||null)}},{key:"getBody",value:function(){return n(this,p)}},{key:"setBody",value:function(e){i(this,p,e)}},{key:"getOptions",value:function(){return n(this,d)}},{key:"setOptions",value:function(e){if(e&&((void 0===e?"undefined":c(e))!=="object"||Array.isArray(e)))throw Error("Not valid options value!");i(this,d,o({},e))}},{key:"getCallback",value:function(){return n(this,v)}},{key:"setCallback",value:function(e){if(e&&"function"!=typeof e)throw Error("Not valid callback value!");i(this,v,e||null)}},{key:"getCatchCallback",value:function(){return n(this,g)}},{key:"setCatchCallback",value:function(e){if(e&&"function"!=typeof e)throw Error("Not valid callback value!");i(this,g,e||null)}},{key:"getEveryPromiseCallback",value:function(){return n(this,P)}},{key:"setEveryPromiseCallback",value:function(e){if(e&&"function"!=typeof e)throw Error("Not valid callback value!");i(this,P,e||null)}},{key:"getIsResponseAsObject",value:function(){return n(this,m)}},{key:"setIsResponseAsObject",value:function(e){i(this,m,"boolean"!=typeof e&&"always"!==e?!!e:e)}},{key:"getProps",value:function(){return{pathPrefix:this.getPathPrefix()||null,method:this.getMethod()||null,queryParameters:this.getQueryParameters()||null,headers:this.getHeaders()||null,body:this.getBody()||null,options:this.getOptions()||null,callback:this.getCallback()||null,everyPromiseCallback:this.getEveryPromiseCallback(),isResponseAsObject:this.getIsResponseAsObject()}}},{key:"setProps",value:function(e){var t=e.pathPrefix,r=e.method,n=e.queryParameters,a=e.headers,i=e.body,s=e.options,o=e.callback,l=e.catchCallback,u=e.everyPromiseCallback,c=e.isResponseAsObject;t&&this.setPathPrefix(t),r&&this.setMethod(r),n&&this.setQueryParameters(this.getQueryArray(n)),a&&this.setHeaders(a),i&&this.setBody(i),s&&this.setOptions(s),o&&this.setCallback(o),l&&this.setCatchCallback(l),u&&this.setEveryPromiseCallback(u),void 0!==c&&this.setIsResponseAsObject(c)}}],function(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}(r.prototype,e),r}();export default k;
1
+ /* eslint-disable no-unused-vars */
2
+
3
+ const RESPONSE_AS_OBJECT_ALWAYS_VALUE = "always";
4
+ class AbortableFetch {
5
+ #pathPrefix = null;
6
+
7
+ #method = null;
8
+
9
+ #queryParameters = null;
10
+
11
+ #headers = null;
12
+
13
+ #body = null;
14
+
15
+ #options = null;
16
+
17
+ #callback = null;
18
+
19
+ #catchCallback = null;
20
+
21
+ #everyPromiseCallback = null;
22
+
23
+ #isResponseAsObject = false;
24
+
25
+ constructor(input) {
26
+ if (input && (typeof input !== "object" || Array.isArray(input)))
27
+ throw new Error("Not valid input value!");
28
+ this.getPathPrefix = this.getPathPrefix.bind(this);
29
+ this.setPathPrefix = this.setPathPrefix.bind(this);
30
+ this.getMethod = this.getMethod.bind(this);
31
+ this.setMethod = this.setMethod.bind(this);
32
+ this.getQueryParameters = this.getQueryParameters.bind(this);
33
+ this.getQueryString = this.getQueryString.bind(this);
34
+ this.setQueryParameters = this.setQueryParameters.bind(this);
35
+ this.getHeaders = this.getHeaders.bind(this);
36
+ this.getHeadersObj = this.getHeadersObj.bind(this);
37
+ this.setHeaders = this.setHeaders.bind(this);
38
+ this.getBody = this.getBody.bind(this);
39
+ this.setBody = this.setBody.bind(this);
40
+ this.getOptions = this.getOptions.bind(this);
41
+ this.setOptions = this.setOptions.bind(this);
42
+ this.getCallback = this.getCallback.bind(this);
43
+ this.setCallback = this.setCallback.bind(this);
44
+ this.getCatchCallback = this.getCatchCallback.bind(this);
45
+ this.setCatchCallback = this.setCatchCallback.bind(this);
46
+ this.getEveryPromiseCallback = this.getEveryPromiseCallback.bind(this);
47
+ this.setEveryPromiseCallback = this.setEveryPromiseCallback.bind(this);
48
+ this.getIsResponseAsObject = this.getIsResponseAsObject.bind(this);
49
+ this.setIsResponseAsObject = this.setIsResponseAsObject.bind(this);
50
+ this.getProps = this.getProps.bind(this);
51
+ this.setProps = this.setProps.bind(this);
52
+
53
+ this.request = this.request.bind(this);
54
+ this.repeatRequest = this.repeatRequest.bind(this);
55
+ this.setProps(input || {});
56
+ }
57
+
58
+ request(props) {
59
+ if (!props || (typeof props !== "object" && typeof props !== "string"))
60
+ throw new Error("Not valid props value!");
61
+
62
+ const stringifyBody = (b) =>
63
+ b?.constructor === FormData ? b : JSON.stringify(b);
64
+
65
+ this.requestInput = props;
66
+ // eslint-disable-next-line no-use-before-define
67
+ const requests = getRequestsArray.call(this, props);
68
+ if (!requests.length)
69
+ return Promise.reject(new Error("There are no any valid props"));
70
+
71
+ const abortController = new AbortController();
72
+ let externalRequest = Promise.all(
73
+ requests.map(async (item) => {
74
+ const safelyQuery = item.path.includes("?")
75
+ ? `&${item.queryParameters.replace(/\?/g, "")}`
76
+ : item.queryParameters;
77
+ let request = fetch(`${item.pathPrefix}${item.path}${safelyQuery}`, {
78
+ ...item.options,
79
+ method: item.method,
80
+ headers: item.headers,
81
+ ...(item.body ? { body: stringifyBody(item.body) } : {}),
82
+ signal: abortController.signal,
83
+ })
84
+ .then((response) => {
85
+ response.request = item;
86
+ return response;
87
+ })
88
+ .catch((response) =>
89
+ Promise.resolve({
90
+ ok: false,
91
+ status: 0,
92
+ statusText: response,
93
+ request: item,
94
+ }),
95
+ );
96
+
97
+ if (this.#everyPromiseCallback && !item.isSkipEveryPromiseCallback) {
98
+ request = request.then((response) =>
99
+ this.#everyPromiseCallback(response),
100
+ );
101
+ }
102
+
103
+ if (item.callback)
104
+ request = request.then((response) => item.callback(response));
105
+
106
+ if (this.#isResponseAsObject)
107
+ request = request.then((response) => ({ name: item.name, response }));
108
+
109
+ return request;
110
+ }),
111
+ );
112
+
113
+ externalRequest = externalRequest.then((response) =>
114
+ response.length < 2 ? response[0] : response,
115
+ );
116
+
117
+ if (this.#isResponseAsObject) {
118
+ externalRequest = externalRequest.then((response) => {
119
+ if (Array.isArray(props) && props.length > 1) {
120
+ return response.reduce(
121
+ (ac, item) => ({ ...ac, [item.name]: item.response }),
122
+ {},
123
+ );
124
+ } else {
125
+ return this.#isResponseAsObject === RESPONSE_AS_OBJECT_ALWAYS_VALUE
126
+ ? { [response.name]: response.response }
127
+ : response.response;
128
+ }
129
+ });
130
+ }
131
+
132
+ externalRequest = externalRequest.then((response) =>
133
+ this.#callback ? this.#callback(response) : response,
134
+ );
135
+
136
+ externalRequest = externalRequest.catch((error) =>
137
+ this.#catchCallback ? this.#catchCallback(error) : error,
138
+ );
139
+
140
+ // eslint-disable-next-line no-proto
141
+ externalRequest.__proto__.abort = () => abortController.abort();
142
+ return externalRequest;
143
+
144
+ function getRequestsArray(input) {
145
+ const requestsArray = (() => {
146
+ if (typeof input === "string") return [{ path: input }];
147
+ return Array.isArray(input) ? [...input] : [input];
148
+ })();
149
+
150
+ return requestsArray.reduce((ac, item, index) => {
151
+ const itemObj =
152
+ typeof item === "object" && item !== null && !Array.isArray(item)
153
+ ? item
154
+ : {};
155
+ const {
156
+ name,
157
+ path,
158
+ method,
159
+ queryParameters,
160
+ headers,
161
+ body,
162
+ options,
163
+ callback,
164
+ mergeProps,
165
+ isNoPathPrefix,
166
+ isSkipEveryPromiseCallback,
167
+ } = itemObj;
168
+
169
+ const safelyMergeProps =
170
+ mergeProps instanceof Object && !Array.isArray(mergeProps)
171
+ ? mergeProps
172
+ : {};
173
+ const getMergeProps = (key) =>
174
+ safelyMergeProps.all ?? safelyMergeProps[key];
175
+
176
+ if (!path || typeof path !== "string") return ac;
177
+
178
+ const {
179
+ name: omitName,
180
+ path: omitPath,
181
+ pathPrefix: omitPathPrefix,
182
+ method: omitMethod,
183
+ queryParameters: omitQueryParameters,
184
+ headers: omitHeaders,
185
+ body: omitBody,
186
+ options: omitOptions,
187
+ callback: omitCallback,
188
+ mergeProps: omitMergeProps,
189
+ ...optionsRest
190
+ } = options || {};
191
+
192
+ return [
193
+ ...ac,
194
+ {
195
+ path,
196
+ pathPrefix:
197
+ getMergeProps("pathPrefix") === "onlyLocal" || isNoPathPrefix
198
+ ? ""
199
+ : this.#pathPrefix || "",
200
+ method: (() => {
201
+ if (getMergeProps("method") === "onlyLocal")
202
+ return method || "GET";
203
+ return getMergeProps("method") === "onlyGlobal"
204
+ ? this.#method || "GET"
205
+ : method || this.#method || "GET";
206
+ })(),
207
+ queryParameters: (() => {
208
+ if (
209
+ (getMergeProps("queryParameters") ?? getMergeProps("query")) ===
210
+ "onlyLocal"
211
+ ) {
212
+ return this.getQueryString(this.getQueryArray(queryParameters));
213
+ }
214
+ return (getMergeProps("queryParameters") ??
215
+ getMergeProps("query")) === "onlyGlobal"
216
+ ? this.getQueryString(this.getQueryArray(this.#queryParameters))
217
+ : this.getQueryString([
218
+ ...this.getQueryArray(this.#queryParameters),
219
+ ...this.getQueryArray(queryParameters),
220
+ ]);
221
+ })(),
222
+ headers: (() => {
223
+ if (getMergeProps("headers") === "onlyLocal")
224
+ return this.getHeadersObj(headers || {});
225
+ return getMergeProps("headers") === "onlyGlobal"
226
+ ? this.getHeadersObj({ ...(this.#headers || {}) })
227
+ : this.getHeadersObj({
228
+ ...(this.#headers || {}),
229
+ ...(headers || {}),
230
+ });
231
+ })(),
232
+ body: (() => {
233
+ if (getMergeProps("body") === "onlyLocal") return body || null;
234
+ if (getMergeProps("body") === "onlyGlobal")
235
+ return this.#body || null;
236
+ if (
237
+ body &&
238
+ this.#body &&
239
+ typeof body === typeof this.#body &&
240
+ typeof body === "object"
241
+ ) {
242
+ return Array.isArray(body)
243
+ ? [...this.#body, ...body]
244
+ : { ...this.#body, ...body };
245
+ } else return body || this.#body || null;
246
+ })(),
247
+ options: (() => {
248
+ if (getMergeProps("options") === "onlyLocal")
249
+ return { ...(optionsRest || {}) };
250
+ return getMergeProps("options") === "onlyGlobal"
251
+ ? { ...(this.#options || {}) }
252
+ : { ...(this.#options || {}), ...(optionsRest || {}) };
253
+ })(),
254
+ callback,
255
+ isSkipEveryPromiseCallback,
256
+ ...(this.getIsResponseAsObject()
257
+ ? { name: name && typeof name === "string" ? name : index }
258
+ : {}),
259
+ },
260
+ ];
261
+ }, []);
262
+ }
263
+ }
264
+
265
+ repeatRequest() {
266
+ return this.request(this.requestInput);
267
+ }
268
+
269
+ // ***** getters and setters *****
270
+ getPathPrefix() {
271
+ return this.#pathPrefix;
272
+ }
273
+
274
+ setPathPrefix(value) {
275
+ if (value && typeof value !== "string")
276
+ throw new Error("Not valid pathPrefix value!");
277
+ this.#pathPrefix = value || null;
278
+ }
279
+
280
+ getMethod() {
281
+ return this.#method;
282
+ }
283
+
284
+ setMethod(value) {
285
+ const methods = [
286
+ "GET",
287
+ "HEAD",
288
+ "POST",
289
+ "PUT",
290
+ "DELETE",
291
+ "CONNECT",
292
+ "OPTIONS",
293
+ "TRACE",
294
+ "PATCH",
295
+ ];
296
+ if (value && !methods.includes(value))
297
+ throw new Error("Not valid method value!");
298
+ this.#method = value || null;
299
+ }
300
+
301
+ getQueryParameters() {
302
+ return this.#queryParameters;
303
+ }
304
+
305
+ // eslint-disable-next-line class-methods-use-this
306
+ getQueryArray(value) {
307
+ if (typeof value === "string")
308
+ return (value[0] === "?" ? value.slice(1) : value).split("&");
309
+ else if (Array.isArray(value)) return value;
310
+ else if (typeof value === "object" && value !== null) {
311
+ return Object.keys(value)
312
+ .filter((key) => Boolean(key) && Boolean(value[key]))
313
+ .map((key) => `${key}=${value[key]}`);
314
+ } else return [];
315
+ }
316
+
317
+ // eslint-disable-next-line class-methods-use-this
318
+ getQueryString(value) {
319
+ if (!value) return "";
320
+ if (!Array.isArray(value))
321
+ throw new Error("Not valid query parameters value!");
322
+ return value.length ? `?${value.join("&")}` : "";
323
+ }
324
+
325
+ setQueryParameters(value) {
326
+ if (value && !Array.isArray(value))
327
+ throw new Error("Not valid query parameters value!");
328
+ this.#queryParameters = value || null;
329
+ }
330
+
331
+ getHeaders() {
332
+ return this.#headers;
333
+ }
334
+
335
+ // eslint-disable-next-line class-methods-use-this
336
+ getHeadersObj(obj) {
337
+ const headers = new Headers();
338
+ if (!obj) return headers;
339
+
340
+ if (typeof obj !== "object" || Array.isArray(obj))
341
+ throw new Error("Not valid headers value!");
342
+ Object.keys(obj).forEach((key) => {
343
+ headers.append(key, obj[key]);
344
+ });
345
+ return headers;
346
+ }
347
+
348
+ setHeaders(value) {
349
+ if (value && (typeof value !== "object" || Array.isArray(value)))
350
+ throw new Error("Not valid headers value!");
351
+ this.#headers = value || null;
352
+ }
353
+
354
+ getBody() {
355
+ return this.#body;
356
+ }
357
+
358
+ setBody(value) {
359
+ this.#body = value;
360
+ }
361
+
362
+ getOptions() {
363
+ return this.#options;
364
+ }
365
+
366
+ setOptions(value) {
367
+ if (value && (typeof value !== "object" || Array.isArray(value)))
368
+ throw new Error("Not valid options value!");
369
+ this.#options = { ...value };
370
+ }
371
+
372
+ getCallback() {
373
+ return this.#callback;
374
+ }
375
+
376
+ setCallback(value) {
377
+ if (value && typeof value !== "function")
378
+ throw new Error("Not valid callback value!");
379
+ this.#callback = value || null;
380
+ }
381
+
382
+ getCatchCallback() {
383
+ return this.#catchCallback;
384
+ }
385
+
386
+ setCatchCallback(value) {
387
+ if (value && typeof value !== "function")
388
+ throw new Error("Not valid callback value!");
389
+ this.#catchCallback = value || null;
390
+ }
391
+
392
+ getEveryPromiseCallback() {
393
+ return this.#everyPromiseCallback;
394
+ }
395
+
396
+ setEveryPromiseCallback(value) {
397
+ if (value && typeof value !== "function")
398
+ throw new Error("Not valid callback value!");
399
+ this.#everyPromiseCallback = value || null;
400
+ }
401
+
402
+ getIsResponseAsObject() {
403
+ return this.#isResponseAsObject;
404
+ }
405
+
406
+ setIsResponseAsObject(value) {
407
+ this.#isResponseAsObject =
408
+ typeof value !== "boolean" && value !== "always" ? Boolean(value) : value;
409
+ }
410
+
411
+ getProps() {
412
+ return {
413
+ pathPrefix: this.getPathPrefix() || null,
414
+ method: this.getMethod() || null,
415
+ queryParameters: this.getQueryParameters() || null,
416
+ headers: this.getHeaders() || null,
417
+ body: this.getBody() || null,
418
+ options: this.getOptions() || null,
419
+ callback: this.getCallback() || null,
420
+ everyPromiseCallback: this.getEveryPromiseCallback(),
421
+ // isAnywayRunCallback: this.getIsAnywayRunCallback(),
422
+ isResponseAsObject: this.getIsResponseAsObject(),
423
+ };
424
+ }
425
+
426
+ setProps(input) {
427
+ const {
428
+ pathPrefix,
429
+ method,
430
+ queryParameters,
431
+ headers,
432
+ body,
433
+ options,
434
+ callback,
435
+ catchCallback,
436
+ everyPromiseCallback,
437
+ // isAnywayRunCallback,
438
+ isResponseAsObject,
439
+ } = input;
440
+ if (pathPrefix) this.setPathPrefix(pathPrefix);
441
+ if (method) this.setMethod(method);
442
+ if (queryParameters)
443
+ this.setQueryParameters(this.getQueryArray(queryParameters));
444
+ if (headers) this.setHeaders(headers);
445
+ if (body) this.setBody(body);
446
+ if (options) this.setOptions(options);
447
+ if (callback) this.setCallback(callback);
448
+ if (catchCallback) this.setCatchCallback(catchCallback);
449
+ if (everyPromiseCallback)
450
+ this.setEveryPromiseCallback(everyPromiseCallback);
451
+ // if (isAnywayRunCallback) this.setIsAnywayRunCallback(isAnywayRunCallback);
452
+ if (isResponseAsObject !== undefined)
453
+ this.setIsResponseAsObject(isResponseAsObject);
454
+ }
455
+ }
456
+
457
+ export default AbortableFetch;
@@ -1 +1,48 @@
1
- function t(r){return(t=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)})(r)}function r(t,e){return(r=Object.setPrototypeOf||function(t,r){return t.__proto__=r,t})(t,e)}function e(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(t){}return(e=function(){return!!t})()}import o from"./ApiRequestCreators";var n=/*#__PURE__*/function(o){if("function"!=typeof o&&null!==o)throw TypeError("Super expression must either be null or a function");function n(r){if(!(this instanceof n))throw TypeError("Cannot call a class as a function");o=n,c=[r],o=t(o),i=function(t,r){var e;if(r&&("object"==((e=r)&&"undefined"!=typeof Symbol&&e.constructor===Symbol?"symbol":typeof e)||"function"==typeof r))return r;if(void 0===t)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return t}(this,e()?Reflect.construct(o,c||[],t(this).constructor):o.apply(this,c));var o,c,i,u=r.constants||{},f=u.API_PATH,E=u.BAD_REQUEST_DATA_TEXT,a=void 0===E?"Bad request data":E,s=u.DEFAULT_SUCCESS_MESSAGE,_=void 0===s?"Success":s,p=u.DEFAULT_ERROR_MESSAGE,l=void 0===p?"Something wrong, try again":p,y=u.NO_INET,A=void 0===y?"Please check your network connection and reload page":y,S=u.REJECT_CODES,T=void 0===S?[]:S,O=function(t,r){if(null==t)return{};var e,o,n=function(t,r){if(null==t)return{};var e,o,n={},c=Object.keys(t);for(o=0;o<c.length;o++)e=c[o],r.indexOf(e)>=0||(n[e]=t[e]);return n}(t,r);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(t);for(o=0;o<c.length;o++)e=c[o],!(r.indexOf(e)>=0)&&Object.prototype.propertyIsEnumerable.call(t,e)&&(n[e]=t[e])}return n}(u,["API_PATH","BAD_REQUEST_DATA_TEXT","DEFAULT_SUCCESS_MESSAGE","DEFAULT_ERROR_MESSAGE","NO_INET","REJECT_CODES"]);if("string"!=typeof f)throw Error("No API_PATH [ApiBase constructor]");if("string"!=typeof a||"string"!=typeof _||"string"!=typeof l||"string"!=typeof A||!Array.isArray(T)||!T.every(function(t){return"number"==typeof t}))throw Error("Bad input data [ApiBase constructor]");return i.API_PATH=f,i.BAD_REQUEST_DATA_TEXT=a,i.DEFAULT_SUCCESS_MESSAGE=_,i.DEFAULT_ERROR_MESSAGE=l,i.NO_INET=A,i.REJECT_CODES=T,Object.keys(O).forEach(function(t){i[t]=O[t]}),i}return n.prototype=Object.create(o&&o.prototype,{constructor:{value:n,writable:!0,configurable:!0}}),o&&r(n,o),n}(o);export default n;
1
+ import ApiRequestCreators from "./ApiRequestCreators";
2
+ class ApiBase extends ApiRequestCreators {
3
+ constructor(settings) {
4
+ super(settings);
5
+
6
+ const {
7
+ API_PATH,
8
+
9
+ BAD_REQUEST_DATA_TEXT = "Bad request data",
10
+ DEFAULT_SUCCESS_MESSAGE = "Success",
11
+ DEFAULT_ERROR_MESSAGE = "Something wrong, try again",
12
+ NO_INET = "Please check your network connection and reload page",
13
+
14
+ REJECT_CODES = [],
15
+
16
+ ...customConstants
17
+ } = settings.constants || {};
18
+
19
+ if (typeof API_PATH !== "string")
20
+ throw new Error("No API_PATH [ApiBase constructor]");
21
+
22
+ if (
23
+ typeof BAD_REQUEST_DATA_TEXT !== "string" ||
24
+ typeof DEFAULT_SUCCESS_MESSAGE !== "string" ||
25
+ typeof DEFAULT_ERROR_MESSAGE !== "string" ||
26
+ typeof NO_INET !== "string" ||
27
+ !Array.isArray(REJECT_CODES) ||
28
+ !REJECT_CODES.every((i) => typeof i === "number")
29
+ ) {
30
+ throw new Error("Bad input data [ApiBase constructor]");
31
+ }
32
+
33
+ this.API_PATH = API_PATH;
34
+
35
+ this.BAD_REQUEST_DATA_TEXT = BAD_REQUEST_DATA_TEXT;
36
+ this.DEFAULT_SUCCESS_MESSAGE = DEFAULT_SUCCESS_MESSAGE;
37
+ this.DEFAULT_ERROR_MESSAGE = DEFAULT_ERROR_MESSAGE;
38
+ this.NO_INET = NO_INET;
39
+
40
+ this.REJECT_CODES = REJECT_CODES;
41
+
42
+ Object.keys(customConstants).forEach((key) => {
43
+ this[key] = customConstants[key];
44
+ });
45
+ }
46
+ }
47
+
48
+ export default ApiBase;
@@ -1 +1,112 @@
1
- function e(e,t,r,n,o,u,c){try{var a=e[u](c),i=a.value}catch(e){r(e);return}a.done?t(i):Promise.resolve(i).then(n,o)}function t(t){return function(){var r=this,n=arguments;return new Promise(function(o,u){var c=t.apply(r,n);function a(t){e(c,o,u,a,i,"next",t)}function i(t){e(c,o,u,a,i,"throw",t)}a(void 0)})}}function r(e){return(r=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function n(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}function o(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r})(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}function u(e,t){return(u=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function c(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(c=function(){return!!e})()}function a(e,t){var r,n,o,u={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},c=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return c.next=a(0),c.throw=a(1),c.return=a(2),"function"==typeof Symbol&&(c[Symbol.iterator]=function(){return this}),c;function a(a){return function(i){var s=[a,i];if(r)throw TypeError("Generator is already executing.");for(;c&&(c=0,s[0]&&(u=0)),u;)try{if(r=1,n&&(o=2&s[0]?n.return:s[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,s[1])).done)return o;switch(n=0,o&&(s=[2&s[0],o.value]),s[0]){case 0:case 1:o=s;break;case 4:return u.label++,{value:s[1],done:!1};case 5:u.label++,n=s[1],s=[0];continue;case 7:s=u.ops.pop(),u.trys.pop();continue;default:if(!(o=(o=u.trys).length>0&&o[o.length-1])&&(6===s[0]||2===s[0])){u=0;continue}if(3===s[0]&&(!o||s[1]>o[0]&&s[1]<o[3])){u.label=s[1];break}if(6===s[0]&&u.label<o[1]){u.label=o[1],o=s;break}if(o&&u.label<o[2]){u.label=o[2],u.ops.push(s);break}o[2]&&u.ops.pop(),u.trys.pop();continue}s=t.call(e,u)}catch(e){s=[6,e],n=0}finally{r=o=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}}}import i from"./ApiUtils";import{addCustomMethods as s,getIsOnlyAnObject as l,getResponseClone as f,omitKeys as p}from"./_utils";var y=/*#__PURE__*/function(e){var i;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function y(e){if(!(this instanceof y))throw TypeError("Cannot call a class as a function");t=y,n=[e],t=r(t),o=function(e,t){var r;if(t&&("object"==((r=t)&&"undefined"!=typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,c()?Reflect.construct(t,n||[],r(this).constructor):t.apply(this,n));var t,n,o,u=(e||{}).requestsCreators;return l(u)&&s.call(o,u,"createRequest_"),o}return y.prototype=Object.create(e&&e.prototype,{constructor:{value:y,writable:!0,configurable:!0}}),e&&u(y,e),i=[{key:"createRequest_toJson",value:function(e,r){var u=this;return t(function(){var c;return a(this,function(i){var s;return c=p(e,["getBodyAs"]),[2,u.splitProperties(o(n({},c),{isGetBody:!1,callback:(s=t(function(e){var t,r,n;return a(this,function(o){switch(o.label){case 0:return[4,u.getResponseBody(e,"json")];case 1:return r=o.sent(),[4,null!=(n=null==(t=c.callback)?void 0:t.call(c,r))?n:r];case 2:return[2,o.sent()]}})}),function(e){return s.apply(this,arguments)})}),r)]})})()}},{key:"createRequest_toJsonAdvanced",value:function(e,r){var u=this;return t(function(){var c;return a(this,function(i){var s;return c=p(e,["getBodyAs"]),[2,u.splitProperties(o(n({},c),{isGetBody:!1,callback:(s=t(function(e){var t,r,n,o,i;return a(this,function(a){switch(a.label){case 0:return n={response:e},o=u.getResponseBody,[4,f(e)];case 1:return[4,o.apply(u,[a.sent(),"json"])];case 2:return n.result=a.sent(),r=n,[4,null!=(i=null==(t=c.callback)?void 0:t.call(c,r))?i:r];case 3:return[2,a.sent()]}})}),function(e){return s.apply(this,arguments)})}),r)]})})()}},{key:"createRequest_blob",value:function(e,r){var u=this;return t(function(){var c;return a(this,function(i){var s;return c=p(e,["getBodyAs"]),[2,u.splitProperties(o(n({},c),{isGetBody:!1,callback:(s=t(function(e){var t,r,n,o;return a(this,function(a){switch(a.label){case 0:return n=u.getResponseBody,[4,f(e)];case 1:return[4,n.apply(u,[a.sent(),"blob"])];case 2:return r=a.sent(),[4,null!=(o=null==(t=c.callback)?void 0:t.call(c,r))?o:r];case 3:return[2,a.sent()]}})}),function(e){return s.apply(this,arguments)})}),r)]})})()}},{key:"createRequest_testBadResponse",value:function(e,r){var u=this;return t(function(){return a(this,function(c){return[2,u.splitProperties(o(n({},e),{callback:/*#__PURE__*/t(function(){return a(this,function(t){var r;return[2,Promise.resolve(new Response(JSON.stringify({errors:[{message:"test bad Response"}]}),{status:401,statusText:"test bad Response",headers:((r=new Headers).append("content-type","application/json"),r)})).then(function(t){var r,n;return null!=(n=null==(r=e.callback)?void 0:r.call(e,t))?n:t})]})})}),r)]})})()}},{key:"createRequest_default",value:function(e,r){var n=this;return t(function(){return a(this,function(t){return[2,n.splitProperties(e,r)]})})()}}],function(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}(y.prototype,i),y}(i);export default y;
1
+ import ApiUtils from "./ApiUtils";
2
+ import {
3
+ addCustomMethods,
4
+ getIsOnlyAnObject,
5
+ getResponseClone,
6
+ omitKeys,
7
+ } from "./_utils";
8
+
9
+ //? Префикс createRequest_ добавляется к крейтерам с целью разгрузить пространство имен
10
+ const PREFIX_OF_CLASS_UTILS = "createRequest_";
11
+ class ApiRequestCreators extends ApiUtils {
12
+ constructor(settings) {
13
+ super(settings);
14
+ const { requestsCreators } = settings || {};
15
+
16
+ if (getIsOnlyAnObject(requestsCreators))
17
+ addCustomMethods.call(this, requestsCreators, PREFIX_OF_CLASS_UTILS);
18
+ }
19
+
20
+ //? При типе toJson пользовательский callback на вход получит тело ответа реализованное методом Response.json()
21
+ //? независимо от насторойки isGetBody
22
+ async createRequest_toJson(props, variant) {
23
+ const safelyProps = omitKeys(props, ['getBodyAs']);
24
+
25
+ return this.splitProperties(
26
+ {
27
+ ...safelyProps,
28
+ isGetBody: false,
29
+ callback: async (res) => {
30
+ const output = await this.getResponseBody(res, 'json');
31
+ return await (safelyProps.callback?.(output) ?? output);
32
+ },
33
+ },
34
+ variant,
35
+ );
36
+ }
37
+
38
+ //? При типе toJsonAdvanced пользовательский callback на вход получит структуру { response, result },
39
+ //? где response - объект Response, result - тело ответа реализованное методом Response.json()
40
+ //? независимо от насторойки isGetBody
41
+ async createRequest_toJsonAdvanced(props, variant) {
42
+ const safelyProps = omitKeys(props, ['getBodyAs']);
43
+
44
+ return this.splitProperties(
45
+ {
46
+ ...safelyProps,
47
+ isGetBody: false,
48
+ callback: async (res) => {
49
+ const output = {
50
+ response: res,
51
+ result: await this.getResponseBody(await getResponseClone(res), 'json'),
52
+ };
53
+ return await (safelyProps.callback?.(output) ?? output);
54
+ },
55
+ },
56
+ variant,
57
+ );
58
+ }
59
+
60
+ //? При типе blob пользовательский callback на вход получит тело ответа реализованное методом Response.blob(),
61
+ //? независимо от насторойки isGetBody
62
+ async createRequest_blob(props, variant) {
63
+ const safelyProps = omitKeys(props, ['getBodyAs']);
64
+
65
+ return this.splitProperties(
66
+ {
67
+ ...safelyProps,
68
+ isGetBody: false,
69
+ callback: async (res) => {
70
+ const output = await this.getResponseBody(await getResponseClone(res), 'blob')
71
+ return await (safelyProps.callback?.(output) ?? output);
72
+ },
73
+ },
74
+ variant,
75
+ );
76
+ }
77
+
78
+ //? При типе testBadResponse пользовательский callback на вход получит объект Response в 401-м статусе
79
+ //? независимо независимо вообще ни от чего
80
+ async createRequest_testBadResponse(props, variant) {
81
+ return this.splitProperties(
82
+ {
83
+ ...props,
84
+ callback: async () =>
85
+ Promise.resolve(
86
+ new Response(
87
+ JSON.stringify({ errors: [{ message: "test bad Response" }] }),
88
+ {
89
+ status: 401,
90
+ statusText: "test bad Response",
91
+ headers: (() => {
92
+ const headers = new Headers();
93
+ headers.append("content-type", "application/json");
94
+ return headers;
95
+ })(),
96
+ },
97
+ ),
98
+ ).then((res) => props.callback?.(res) ?? res),
99
+ },
100
+ variant,
101
+ );
102
+ }
103
+
104
+ //? По умолчанию пользовательский callback на вход получит
105
+ //? - либо объект Response
106
+ //? - либо тело ответа (в случае isGetBody: 'first') полученное методом getResponseBody (смотри класс ApiUtils)
107
+ async createRequest_default(props, variant) {
108
+ return this.splitProperties(props, variant);
109
+ }
110
+ }
111
+
112
+ export default ApiRequestCreators;