intelicoreact 1.5.33 → 1.5.35

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 (520) hide show
  1. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.interface.js +4 -0
  2. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.js +93 -44
  3. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.scss +23 -13
  4. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.stories.js +89 -0
  5. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.test.js +130 -0
  6. package/dist/Atomic/FormElements/ActionAlert/index.js +17 -0
  7. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.interface.js +4 -0
  8. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +43 -38
  9. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.scss +20 -10
  10. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.stories.js +81 -0
  11. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.test.js +104 -0
  12. package/dist/Atomic/FormElements/AdvancedStatus/index.js +17 -0
  13. package/dist/Atomic/FormElements/Calendar/Calendar.js +243 -164
  14. package/dist/Atomic/FormElements/Calendar/Calendar.props.js +4 -0
  15. package/dist/Atomic/FormElements/Calendar/Calendar.scss +1 -0
  16. package/dist/Atomic/FormElements/Calendar/Calendar.stories.js +108 -0
  17. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.interface.js +4 -0
  18. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +60 -51
  19. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.scss +25 -15
  20. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.stories.js +100 -0
  21. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.test.js +143 -0
  22. package/dist/Atomic/FormElements/CheckboxInput/index.js +17 -0
  23. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.interface.js +4 -0
  24. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +46 -41
  25. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.scss +5 -2
  26. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.stories.js +94 -0
  27. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.test.js +177 -0
  28. package/dist/Atomic/FormElements/CheckboxesLine/index.js +17 -0
  29. package/dist/Atomic/FormElements/Datepicker/Datepicker.js +410 -308
  30. package/dist/Atomic/FormElements/Datepicker/Datepicker.stories.js +51 -0
  31. package/dist/Atomic/FormElements/Datepicker/components/Calendar.js +169 -109
  32. package/dist/Atomic/FormElements/Dropdown/Dropdown.js +680 -571
  33. package/dist/Atomic/FormElements/Dropdown/Dropdown.scss +61 -59
  34. package/dist/Atomic/FormElements/Dropdown/Dropdown.stories.js +596 -0
  35. package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +28 -15
  36. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +498 -397
  37. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.scss +36 -32
  38. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.stories.js +272 -0
  39. package/dist/Atomic/FormElements/FileLoader/FileLoader.js +103 -70
  40. package/dist/Atomic/FormElements/FileLoader/FileLoader.scss +0 -2
  41. package/dist/Atomic/FormElements/FileLoader/FileLoader.stories.js +182 -0
  42. package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +138 -91
  43. package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +109 -55
  44. package/dist/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.js +254 -193
  45. package/dist/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.scss +19 -16
  46. package/dist/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.stories.js +327 -0
  47. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +156 -143
  48. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.scss +8 -4
  49. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.stories.js +186 -0
  50. package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +222 -159
  51. package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.stories.js +84 -0
  52. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +158 -117
  53. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.stories.js +107 -0
  54. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN_old.js +151 -98
  55. package/dist/Atomic/FormElements/Input/Input.js +340 -337
  56. package/dist/Atomic/FormElements/Input/Input.scss +1 -1
  57. package/dist/Atomic/FormElements/Input/Input.stories.js +251 -0
  58. package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +156 -112
  59. package/dist/Atomic/FormElements/InputCalendar/InputCalendar.stories.js +115 -0
  60. package/dist/Atomic/FormElements/InputColor/InputColor.js +57 -58
  61. package/dist/Atomic/FormElements/InputColor/InputColor.stories.js +119 -0
  62. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.interface.js +4 -0
  63. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +189 -125
  64. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.stories.js +178 -0
  65. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.test.js +129 -0
  66. package/dist/Atomic/FormElements/InputCurrency/index.js +16 -0
  67. package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +294 -233
  68. package/dist/Atomic/FormElements/InputDateRange/InputDateRange.scss +1 -2
  69. package/dist/Atomic/FormElements/InputDateRange/InputDateRange.stories.js +123 -0
  70. package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +55 -56
  71. package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +645 -545
  72. package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +220 -193
  73. package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +33 -31
  74. package/dist/Atomic/FormElements/InputDateRange/dependencies.js +247 -172
  75. package/dist/Atomic/FormElements/InputLink/InputLink.js +118 -73
  76. package/dist/Atomic/FormElements/InputLink/InputLink.stories.js +140 -0
  77. package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +47 -38
  78. package/dist/Atomic/FormElements/InputMask/InputMask.js +947 -1061
  79. package/dist/Atomic/FormElements/InputMask/InputMask.stories.js +303 -0
  80. package/dist/Atomic/FormElements/InputMask/config.js +16 -15
  81. package/dist/Atomic/FormElements/InputMask/functions.js +77 -52
  82. package/dist/Atomic/FormElements/InputMask2/InputMask2.js +573 -600
  83. package/dist/Atomic/FormElements/InputMask2/InputMask2.stories.js +314 -0
  84. package/dist/Atomic/FormElements/InputMask2/config.js +16 -15
  85. package/dist/Atomic/FormElements/InputMask2/functions.js +77 -52
  86. package/dist/Atomic/FormElements/InputMask3/InputMask3.js +655 -691
  87. package/dist/Atomic/FormElements/InputMask3/InputMask3.stories.js +335 -0
  88. package/dist/Atomic/FormElements/InputMask3/config.js +16 -15
  89. package/dist/Atomic/FormElements/InputMask3/functions.js +77 -52
  90. package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +127 -88
  91. package/dist/Atomic/FormElements/InputWithAction/InputWithAction.scss +1 -1
  92. package/dist/Atomic/FormElements/InputWithAction/InputWithAction.stories.js +276 -0
  93. package/dist/Atomic/FormElements/InputsRow/InputsRow.js +182 -111
  94. package/dist/Atomic/FormElements/InputsRow/InputsRow.stories.js +56 -0
  95. package/dist/Atomic/FormElements/Label/Label.interface.js +4 -0
  96. package/dist/Atomic/FormElements/Label/Label.js +82 -55
  97. package/dist/Atomic/FormElements/Label/Label.scss +18 -8
  98. package/dist/Atomic/FormElements/Label/Label.stories.js +47 -0
  99. package/dist/Atomic/FormElements/Label/Label.test.js +167 -0
  100. package/dist/Atomic/FormElements/Label/index.js +17 -0
  101. package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +437 -388
  102. package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.scss +3 -3
  103. package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.stories.js +172 -0
  104. package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +88 -50
  105. package/dist/Atomic/FormElements/MultiSelect/MultiSelect.stories.js +121 -0
  106. package/dist/Atomic/FormElements/NumericInput/NumericInput.js +314 -270
  107. package/dist/Atomic/FormElements/NumericInput/NumericInput.scss +1 -1
  108. package/dist/Atomic/FormElements/NumericInput/NumericInput.stories.js +184 -0
  109. package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +93 -51
  110. package/dist/Atomic/FormElements/RadioGroup/RadioGroup.stories.js +79 -0
  111. package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +69 -55
  112. package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.stories.js +151 -0
  113. package/dist/Atomic/FormElements/RadioInput/RadioInput.js +51 -45
  114. package/dist/Atomic/FormElements/RadioInput/RadioInput.scss +4 -4
  115. package/dist/Atomic/FormElements/RadioInput/RadioInput.stories.js +67 -0
  116. package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +53 -40
  117. package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.stories.js +116 -0
  118. package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +169 -120
  119. package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.stories.js +107 -0
  120. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +195 -144
  121. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.stories.js +92 -0
  122. package/dist/Atomic/FormElements/RangeList/RangeList.js +199 -141
  123. package/dist/Atomic/FormElements/RangeList/RangeList.scss +2 -2
  124. package/dist/Atomic/FormElements/RangeList/RangeList.stories.js +169 -0
  125. package/dist/Atomic/FormElements/RangeList/partial/AnyOuterClass.scss +1 -4
  126. package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +57 -44
  127. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +463 -381
  128. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.scss +1 -1
  129. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.stories.js +401 -0
  130. package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +760 -770
  131. package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.scss +9 -9
  132. package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.stories.js +314 -0
  133. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +36 -31
  134. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.scss +0 -2
  135. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.stories.js +137 -0
  136. package/dist/Atomic/FormElements/SwitchableRow/partial/AnyOuterClass.scss +1 -1
  137. package/dist/Atomic/FormElements/Switcher/Switcher.js +52 -44
  138. package/dist/Atomic/FormElements/Switcher/Switcher.scss +3 -3
  139. package/dist/Atomic/FormElements/Switcher/Switcher.stories.js +91 -0
  140. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +43 -44
  141. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.scss +0 -2
  142. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.stories.js +104 -0
  143. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +37 -36
  144. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.scss +0 -2
  145. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.stories.js +96 -0
  146. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +93 -57
  147. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.scss +0 -2
  148. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.stories.js +140 -0
  149. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +86 -53
  150. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.scss +0 -2
  151. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.stories.js +112 -0
  152. package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +46 -54
  153. package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.stories.js +145 -0
  154. package/dist/Atomic/FormElements/SwitcherRangeList/partial/AnyOuterClass.scss +1 -1
  155. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +172 -109
  156. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.scss +4 -6
  157. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.stories.js +158 -0
  158. package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +209 -154
  159. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +59 -56
  160. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.scss +2 -2
  161. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.stories.js +101 -0
  162. package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.js +140 -113
  163. package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.stories.js +131 -0
  164. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +1035 -962
  165. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.scss +155 -119
  166. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.stories.js +357 -0
  167. package/dist/Atomic/FormElements/Text/Text.js +88 -97
  168. package/dist/Atomic/FormElements/Text/Text.stories.js +80 -0
  169. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +44 -35
  170. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.scss +8 -8
  171. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.stories.js +106 -0
  172. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.test.js +93 -0
  173. package/dist/Atomic/FormElements/Textarea/Textarea.js +102 -64
  174. package/dist/Atomic/FormElements/Textarea/Textarea.scss +4 -8
  175. package/dist/Atomic/FormElements/Textarea/Textarea.stories.js +103 -0
  176. package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +172 -136
  177. package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.stories.js +174 -0
  178. package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +48 -50
  179. package/dist/Atomic/FormElements/TimeRange/TimeRange.interface.js +4 -0
  180. package/dist/Atomic/FormElements/TimeRange/TimeRange.js +114 -63
  181. package/dist/Atomic/FormElements/TimeRange/TimeRange.scss +9 -3
  182. package/dist/Atomic/FormElements/TimeRange/TimeRange.stories.js +40 -0
  183. package/dist/Atomic/FormElements/TimeRange/TimeRange.test.js +163 -0
  184. package/dist/Atomic/FormElements/TimeRange/index.js +17 -0
  185. package/dist/Atomic/FormElements/UserContacts/UserContact.test.js +381 -0
  186. package/dist/Atomic/FormElements/UserContacts/UserContacts.interface.js +4 -0
  187. package/dist/Atomic/FormElements/UserContacts/UserContacts.js +179 -123
  188. package/dist/Atomic/FormElements/UserContacts/UserContacts.scss +10 -5
  189. package/dist/Atomic/FormElements/UserContacts/UserContacts.stories.js +74 -0
  190. package/dist/Atomic/FormElements/UserContacts/index.js +17 -0
  191. package/dist/Atomic/FormElements/UserContacts/partial/AnyOuterClass.scss +1 -1
  192. package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +101 -65
  193. package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.scss +4 -12
  194. package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.stories.js +193 -0
  195. package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +80 -71
  196. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +79 -64
  197. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.scss +1 -3
  198. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.stories.js +147 -0
  199. package/dist/Atomic/FormElements/WidgetPseudoTable/partial/AnyOuterClass.scss +1 -1
  200. package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +42 -34
  201. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +102 -83
  202. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.scss +1 -3
  203. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.stories.js +151 -0
  204. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/AnyOuterClass.scss +1 -1
  205. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +42 -35
  206. package/dist/Atomic/Layout/Header/Header.js +148 -80
  207. package/dist/Atomic/Layout/Header/Header.scss +1 -1
  208. package/dist/Atomic/Layout/Header/Header.stories.js +71 -0
  209. package/dist/Atomic/Layout/MainMenu/MainMenu.js +213 -133
  210. package/dist/Atomic/Layout/MainMenu/MainMenu.scss +9 -9
  211. package/dist/Atomic/Layout/MainMenu/MainMenu.stories.js +115 -0
  212. package/dist/Atomic/Layout/Spinner/Spinner.interface.js +4 -0
  213. package/dist/Atomic/Layout/Spinner/Spinner.js +39 -22
  214. package/dist/Atomic/Layout/Spinner/Spinner.scss +32 -16
  215. package/dist/Atomic/Layout/Spinner/Spinner.stories.js +46 -0
  216. package/dist/Atomic/Layout/Spinner/Spinner.test.js +54 -0
  217. package/dist/Atomic/Layout/Spinner/index.js +17 -0
  218. package/dist/Atomic/UI/Accordion/Accordion.interface.js +4 -0
  219. package/dist/Atomic/UI/Accordion/Accordion.js +102 -52
  220. package/dist/Atomic/UI/Accordion/Accordion.scss +25 -14
  221. package/dist/Atomic/UI/Accordion/Accordion.stories.js +168 -0
  222. package/dist/Atomic/UI/Accordion/Accordion.test.js +54 -0
  223. package/dist/Atomic/UI/Accordion/AccordionItem.js +170 -104
  224. package/dist/Atomic/UI/Accordion/AccordionItem.test.js +50 -0
  225. package/dist/Atomic/UI/Accordion/index.js +17 -0
  226. package/dist/Atomic/UI/AccordionTable/AccordionTable.js +251 -173
  227. package/dist/Atomic/UI/AccordionTable/AccordionTable.stories.js +268 -0
  228. package/dist/Atomic/UI/AccordionText/AccordionText.js +105 -54
  229. package/dist/Atomic/UI/AccordionText/AccordionText.scss +22 -9
  230. package/dist/Atomic/UI/AccordionText/AccordionText.stories.js +125 -0
  231. package/dist/Atomic/UI/AdvancedTag/AdvTag.js +207 -136
  232. package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +100 -46
  233. package/dist/Atomic/UI/AdvancedTag/AdvancedTags.scss +2 -2
  234. package/dist/Atomic/UI/AdvancedTag/AdvancedTags.stories.js +115 -0
  235. package/dist/Atomic/UI/Alert/Alert.js +116 -63
  236. package/dist/Atomic/UI/Alert/Alert.scss +2 -2
  237. package/dist/Atomic/UI/Alert/Alert.stories.js +81 -0
  238. package/dist/Atomic/UI/Arrow/Arrow.js +163 -110
  239. package/dist/Atomic/UI/Arrow/Arrow.stories.js +62 -0
  240. package/dist/Atomic/UI/Box/Box.js +37 -37
  241. package/dist/Atomic/UI/Box/Box.scss +11 -11
  242. package/dist/Atomic/UI/Box/Box.stories.js +114 -0
  243. package/dist/Atomic/UI/Button/Button.js +43 -42
  244. package/dist/Atomic/UI/Button/Button.stories.js +105 -0
  245. package/dist/Atomic/UI/Button/Button.test.js +147 -0
  246. package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +61 -67
  247. package/dist/Atomic/UI/ButtonsBar/ButtonsBar.stories.js +129 -0
  248. package/dist/Atomic/UI/Chart/Chart.js +170 -98
  249. package/dist/Atomic/UI/Chart/Chart.stories.js +93 -0
  250. package/dist/Atomic/UI/Chart/partial/Chart.constants.js +142 -74
  251. package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +91 -77
  252. package/dist/Atomic/UI/Chart/partial/datasetSetters.js +120 -120
  253. package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +311 -293
  254. package/dist/Atomic/UI/Chart/partial/optionsSetters.js +54 -42
  255. package/dist/Atomic/UI/Chart/partial/utils.js +55 -35
  256. package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +145 -88
  257. package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.stories.js +85 -0
  258. package/dist/Atomic/UI/DateTime/DateTime.js +89 -37
  259. package/dist/Atomic/UI/DateTime/DateTime.scss +2 -2
  260. package/dist/Atomic/UI/DateTime/DateTime.stories.js +50 -0
  261. package/dist/Atomic/UI/DateTime/partial/AnyOuterClass.scss +1 -1
  262. package/dist/Atomic/UI/DebugContainer/DebugContainer.js +93 -33
  263. package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +66 -18
  264. package/dist/Atomic/UI/DoubleString/DoubleString.js +134 -78
  265. package/dist/Atomic/UI/DoubleString/DoubleString.scss +6 -4
  266. package/dist/Atomic/UI/DoubleString/DoubleString.stories.js +79 -0
  267. package/dist/Atomic/UI/DoubleString/partial/AnyOuterClass.scss +1 -1
  268. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.interface.js +4 -0
  269. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +65 -22
  270. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.stories.js +98 -0
  271. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.test.js +51 -0
  272. package/dist/Atomic/UI/DynamicIcon/index.js +17 -0
  273. package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +250 -172
  274. package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.stories.js +98 -0
  275. package/dist/Atomic/UI/ExampleChartIntegration/partial/AnyOuterClass.scss +1 -1
  276. package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +109 -84
  277. package/dist/Atomic/UI/Hint/Hint.js +243 -204
  278. package/dist/Atomic/UI/Hint/Hint.scss +5 -3
  279. package/dist/Atomic/UI/Hint/Hint.stories.js +101 -0
  280. package/dist/Atomic/UI/Hint/index.js +16 -0
  281. package/dist/Atomic/UI/Hint/partials/_utils.js +54 -44
  282. package/dist/Atomic/UI/Modal/Modal.interface.js +4 -0
  283. package/dist/Atomic/UI/Modal/Modal.js +171 -172
  284. package/dist/Atomic/UI/Modal/Modal.scss +91 -69
  285. package/dist/Atomic/UI/Modal/Modal.stories.js +370 -0
  286. package/dist/Atomic/UI/Modal/ModalHOC.js +92 -38
  287. package/dist/Atomic/UI/Modal/ModalHOC.stories.js +191 -0
  288. package/dist/Atomic/UI/Modal/ModalHOC.test.js +187 -0
  289. package/dist/Atomic/UI/Modal/ModalMobile.scss +24 -14
  290. package/dist/Atomic/UI/Modal/index.js +26 -0
  291. package/dist/Atomic/UI/Modal/partials/ModalFooter.js +68 -18
  292. package/dist/Atomic/UI/Modal/partials/ModalFooter.test.js +118 -0
  293. package/dist/Atomic/UI/Modal/partials/ModalTitle.js +107 -38
  294. package/dist/Atomic/UI/Modal/partials/ModalTitle.test.js +126 -0
  295. package/dist/Atomic/UI/Modal/partials/useMobileModal.js +128 -163
  296. package/dist/Atomic/UI/Modal/partials/useMobileModal.test.js +133 -0
  297. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.interface.js +4 -0
  298. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +117 -64
  299. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.scss +163 -25
  300. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.stories.js +513 -0
  301. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.test.js +84 -0
  302. package/dist/Atomic/UI/MonoAccordion/index.js +17 -0
  303. package/dist/Atomic/UI/NavLine/NavLine.interface.js +4 -0
  304. package/dist/Atomic/UI/NavLine/NavLine.js +306 -279
  305. package/dist/Atomic/UI/NavLine/NavLine.scss +195 -155
  306. package/dist/Atomic/UI/NavLine/NavLine.stories.js +434 -0
  307. package/dist/Atomic/UI/NavLine/NavLine.test.js +311 -0
  308. package/dist/Atomic/UI/NavLine/index.js +17 -0
  309. package/dist/Atomic/UI/PageTitle/PageTitle.interface.js +4 -0
  310. package/dist/Atomic/UI/PageTitle/PageTitle.js +73 -52
  311. package/dist/Atomic/UI/PageTitle/PageTitle.scss +52 -14
  312. package/dist/Atomic/UI/PageTitle/PageTitle.stories.js +62 -0
  313. package/dist/Atomic/UI/PageTitle/PageTitle.test.js +181 -0
  314. package/dist/Atomic/UI/PageTitle/index.js +17 -0
  315. package/dist/Atomic/UI/PieChart/PieChar.interface.js +4 -0
  316. package/dist/Atomic/UI/PieChart/PieChart.js +105 -42
  317. package/dist/Atomic/UI/PieChart/PieChart.scss +86 -11
  318. package/dist/Atomic/UI/PieChart/PieChart.stories.js +82 -0
  319. package/dist/Atomic/UI/PieChart/PieChart.test.js +142 -0
  320. package/dist/Atomic/UI/PieChart/index.js +26 -0
  321. package/dist/Atomic/UI/Price/Price.interface.js +4 -0
  322. package/dist/Atomic/UI/Price/Price.js +27 -20
  323. package/dist/Atomic/UI/Price/Price.stories.js +52 -0
  324. package/dist/Atomic/UI/Price/Price.test.js +83 -0
  325. package/dist/Atomic/UI/Price/index.js +17 -0
  326. package/dist/Atomic/UI/PriceRange/PriceRange.interface.js +4 -0
  327. package/dist/Atomic/UI/PriceRange/PriceRange.js +40 -18
  328. package/dist/Atomic/UI/PriceRange/PriceRange.stories.js +51 -0
  329. package/dist/Atomic/UI/PriceRange/PriceRange.test.js +72 -0
  330. package/dist/Atomic/UI/PriceRange/index.js +17 -0
  331. package/dist/Atomic/UI/ProgressLine/ProgressLine.interface.js +4 -0
  332. package/dist/Atomic/UI/ProgressLine/ProgressLine.js +92 -73
  333. package/dist/Atomic/UI/ProgressLine/ProgressLine.scss +85 -71
  334. package/dist/Atomic/UI/ProgressLine/ProgressLine.stories.js +163 -0
  335. package/dist/Atomic/UI/ProgressLine/ProgressLine.test.js +60 -0
  336. package/dist/Atomic/UI/ProgressLine/index.js +17 -0
  337. package/dist/Atomic/UI/Status/Status.interface.js +4 -0
  338. package/dist/Atomic/UI/Status/Status.js +62 -51
  339. package/dist/Atomic/UI/Status/Status.scss +48 -29
  340. package/dist/Atomic/UI/Status/Status.stories.js +79 -0
  341. package/dist/Atomic/UI/Status/Status.test.js +103 -0
  342. package/dist/Atomic/UI/Status/index.js +17 -0
  343. package/dist/Atomic/UI/Table/Partials/TdCell.js +126 -88
  344. package/dist/Atomic/UI/Table/Partials/TdHeader.js +58 -39
  345. package/dist/Atomic/UI/Table/Partials/TdRow.js +124 -73
  346. package/dist/Atomic/UI/Table/Partials/TdTitle.js +113 -45
  347. package/dist/Atomic/UI/Table/Table.js +61 -43
  348. package/dist/Atomic/UI/Table/Table.scss +0 -3
  349. package/dist/Atomic/UI/Table/Table.stories.js +250 -0
  350. package/dist/Atomic/UI/Table/TdTypes/TdActions.js +108 -64
  351. package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +44 -31
  352. package/dist/Atomic/UI/Table/TdTypes/TdRange.js +24 -10
  353. package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +59 -48
  354. package/dist/Atomic/UI/Tag/Tag.interface.js +4 -0
  355. package/dist/Atomic/UI/Tag/Tag.js +157 -115
  356. package/dist/Atomic/UI/Tag/Tag.scss +102 -48
  357. package/dist/Atomic/UI/Tag/Tag.stories.js +108 -0
  358. package/dist/Atomic/UI/Tag/Tag.test.js +75 -0
  359. package/dist/Atomic/UI/Tag/index.js +17 -0
  360. package/dist/Atomic/UI/TagList/TagList.js +223 -184
  361. package/dist/Atomic/UI/TagList/TagList.scss +13 -9
  362. package/dist/Atomic/UI/TagList/TagList.stories.js +169 -0
  363. package/dist/Atomic/UI/UserBox/UserBox.interface.js +4 -0
  364. package/dist/Atomic/UI/UserBox/UserBox.js +80 -56
  365. package/dist/Atomic/UI/UserBox/UserBox.scss +45 -21
  366. package/dist/Atomic/UI/UserBox/UserBox.stories.js +57 -0
  367. package/dist/Atomic/UI/UserBox/UserBox.test.js +136 -0
  368. package/dist/Atomic/UI/UserBox/index.js +17 -0
  369. package/dist/Atomic/UI/WizardStepper/WizardStepper.stories.js +70 -0
  370. package/dist/Atomic/UI/WizardStepper/constructor.js +127 -89
  371. package/dist/Atomic/UI/WizardStepper/index.js +14 -6
  372. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.js +53 -51
  373. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.scss +11 -7
  374. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/index.js +9 -5
  375. package/dist/Atomic/UI/WizardStepper/ui/StepRow/StepRow.js +84 -70
  376. package/dist/Atomic/UI/WizardStepper/ui/StepRow/StepRow.scss +13 -7
  377. package/dist/Atomic/UI/WizardStepper/ui/StepRow/index.js +14 -6
  378. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.js +50 -45
  379. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.scss +24 -18
  380. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/index.js +14 -6
  381. package/dist/Atomic/UI/WizardStepper/ui/icons.js +138 -106
  382. package/dist/Atomic/UI/WizardStepper/ui/index.js +14 -6
  383. package/dist/Classes/AbortableFetch.js +394 -375
  384. package/dist/Classes/AnimatedHandler.js +31 -44
  385. package/dist/Classes/RESTAPI/index.js +131 -174
  386. package/dist/Classes/RESTAPI/partials/AbortableFetch.js +399 -382
  387. package/dist/Classes/RESTAPI/partials/ApiBase.js +30 -30
  388. package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +107 -94
  389. package/dist/Classes/RESTAPI/partials/ApiUtils.js +144 -166
  390. package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +180 -205
  391. package/dist/Classes/RESTAPI/partials/Utils.js +80 -83
  392. package/dist/Classes/RESTAPI/partials/_outerDependencies.js +16 -8
  393. package/dist/Classes/RESTAPI/partials/_utils.js +139 -134
  394. package/dist/Constants/index.constants.js +102 -22
  395. package/dist/Functions/Portal.js +67 -25
  396. package/dist/Functions/animatingFunctions/getAnimatedHandler.js +1 -1
  397. package/dist/Functions/customEventListener.js +48 -50
  398. package/dist/Functions/dateTime.js +130 -177
  399. package/dist/Functions/fieldValueFormatters.js +274 -350
  400. package/dist/Functions/hooks/useFormFieldsChangesManager.js +125 -100
  401. package/dist/Functions/locale/createTranslator.js +29 -29
  402. package/dist/Functions/operations.js +129 -102
  403. package/dist/Functions/presets/inputMaskPresets.js +88 -99
  404. package/dist/Functions/presets/inputPresets.js +41 -35
  405. package/dist/Functions/presets/mobileKeyboardTypesPresets.js +30 -49
  406. package/dist/Functions/schemas.js +78 -20
  407. package/dist/Functions/useBodyScrollLock.js +21 -15
  408. package/dist/Functions/useClickOutside.js +21 -16
  409. package/dist/Functions/useDebounce.js +62 -21
  410. package/dist/Functions/useFieldFocus.js +83 -84
  411. package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +39 -47
  412. package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +132 -137
  413. package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +63 -74
  414. package/dist/Functions/useFormTools/functions/General.js +117 -129
  415. package/dist/Functions/useFormTools/functions/RenderFields.js +75 -85
  416. package/dist/Functions/useFormTools/functions/usePrevious.js +16 -10
  417. package/dist/Functions/useFormTools/index.js +647 -720
  418. package/dist/Functions/useInputHighlightError.js +104 -53
  419. package/dist/Functions/useIsMobile/index.js +17 -0
  420. package/dist/Functions/useIsMobile/useIsMobile.js +33 -0
  421. package/dist/Functions/useIsMobile/useIsMobile.test.js +104 -0
  422. package/dist/Functions/useKeyPress/useHandleKeyPress.js +40 -33
  423. package/dist/Functions/useKeyPress/useHandleKeyPress.test.js +96 -0
  424. package/dist/Functions/useKeyPress/useKeyPress.js +48 -39
  425. package/dist/Functions/useKeyPress/useKeyPress.test.js +87 -0
  426. package/dist/Functions/useLocalStorage.js +38 -31
  427. package/dist/Functions/useLocationParams.js +31 -25
  428. package/dist/Functions/useMediaQuery.js +14 -10
  429. package/dist/Functions/useMetaInfo.js +45 -35
  430. package/dist/Functions/useMouseUpOutside.js +21 -15
  431. package/dist/Functions/useOnlineStatus.js +25 -21
  432. package/dist/Functions/usePasswordChecker.js +183 -111
  433. package/dist/Functions/usePrevious.js +16 -10
  434. package/dist/Functions/useResize.js +32 -30
  435. package/dist/Functions/useScrollTo.js +26 -17
  436. package/dist/Functions/useToggle.js +20 -16
  437. package/dist/Functions/utils.js +493 -472
  438. package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +75 -28
  439. package/dist/Molecular/CustomIcons/components/AlertCircle.js +77 -28
  440. package/dist/Molecular/CustomIcons/components/AppStore.js +84 -32
  441. package/dist/Molecular/CustomIcons/components/Arrow.js +93 -38
  442. package/dist/Molecular/CustomIcons/components/ArrowDown.js +63 -20
  443. package/dist/Molecular/CustomIcons/components/ArrowLeft.js +71 -23
  444. package/dist/Molecular/CustomIcons/components/ArrowRight.js +71 -23
  445. package/dist/Molecular/CustomIcons/components/ArrowUp.js +63 -20
  446. package/dist/Molecular/CustomIcons/components/Bell.js +61 -18
  447. package/dist/Molecular/CustomIcons/components/Button.js +61 -18
  448. package/dist/Molecular/CustomIcons/components/Campaigns.js +62 -19
  449. package/dist/Molecular/CustomIcons/components/Check.js +62 -19
  450. package/dist/Molecular/CustomIcons/components/Check2.js +61 -18
  451. package/dist/Molecular/CustomIcons/components/ChevronDown.js +61 -18
  452. package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +61 -18
  453. package/dist/Molecular/CustomIcons/components/ChevronLeft.js +61 -18
  454. package/dist/Molecular/CustomIcons/components/ChevronRight.js +61 -18
  455. package/dist/Molecular/CustomIcons/components/ChevronUp.js +61 -18
  456. package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +81 -33
  457. package/dist/Molecular/CustomIcons/components/Close.js +64 -20
  458. package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +95 -45
  459. package/dist/Molecular/CustomIcons/components/Delete.js +62 -19
  460. package/dist/Molecular/CustomIcons/components/Edit.js +61 -18
  461. package/dist/Molecular/CustomIcons/components/Email.js +87 -36
  462. package/dist/Molecular/CustomIcons/components/FinturfLogo.js +82 -26
  463. package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +83 -34
  464. package/dist/Molecular/CustomIcons/components/Flows.js +61 -18
  465. package/dist/Molecular/CustomIcons/components/Gift.js +71 -23
  466. package/dist/Molecular/CustomIcons/components/GoogleAuth.js +84 -32
  467. package/dist/Molecular/CustomIcons/components/GooglePlay.js +84 -32
  468. package/dist/Molecular/CustomIcons/components/HelpCircle.js +67 -21
  469. package/dist/Molecular/CustomIcons/components/HelpCircle2.js +68 -22
  470. package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +67 -21
  471. package/dist/Molecular/CustomIcons/components/Home.js +67 -21
  472. package/dist/Molecular/CustomIcons/components/Home2.js +70 -24
  473. package/dist/Molecular/CustomIcons/components/Key.js +69 -26
  474. package/dist/Molecular/CustomIcons/components/Landers.js +68 -22
  475. package/dist/Molecular/CustomIcons/components/Lock.js +61 -18
  476. package/dist/Molecular/CustomIcons/components/Mail.js +75 -26
  477. package/dist/Molecular/CustomIcons/components/Mastercard.js +128 -68
  478. package/dist/Molecular/CustomIcons/components/Minus.js +79 -31
  479. package/dist/Molecular/CustomIcons/components/Offers.js +62 -19
  480. package/dist/Molecular/CustomIcons/components/Pause.js +79 -31
  481. package/dist/Molecular/CustomIcons/components/PayPal.js +96 -45
  482. package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +81 -32
  483. package/dist/Molecular/CustomIcons/components/Phone.js +81 -33
  484. package/dist/Molecular/CustomIcons/components/Play.js +79 -31
  485. package/dist/Molecular/CustomIcons/components/Plus.js +79 -31
  486. package/dist/Molecular/CustomIcons/components/Profile.js +69 -23
  487. package/dist/Molecular/CustomIcons/components/QRCode.js +85 -33
  488. package/dist/Molecular/CustomIcons/components/Rectangle.js +61 -18
  489. package/dist/Molecular/CustomIcons/components/Revert.js +67 -21
  490. package/dist/Molecular/CustomIcons/components/Star.js +60 -17
  491. package/dist/Molecular/CustomIcons/components/Star2.js +62 -19
  492. package/dist/Molecular/CustomIcons/components/TrafficSources.js +68 -21
  493. package/dist/Molecular/CustomIcons/components/Trash.js +61 -18
  494. package/dist/Molecular/CustomIcons/components/TrashRed.js +61 -18
  495. package/dist/Molecular/CustomIcons/components/Triggers.js +61 -18
  496. package/dist/Molecular/CustomIcons/components/User.js +71 -23
  497. package/dist/Molecular/CustomIcons/components/Visa.js +88 -34
  498. package/dist/Molecular/CustomIcons/components/X.js +61 -18
  499. package/dist/Molecular/CustomIcons/index.js +76 -674
  500. package/dist/Molecular/FormElement/FormElement.js +44 -41
  501. package/dist/Molecular/FormElement/FormElement.stories.js +92 -0
  502. package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +179 -161
  503. package/dist/Molecular/FormWithDependOn/FormWithDependOn.stories.js +301 -0
  504. package/dist/Molecular/FormWithDependOn/partials/_utils.js +49 -60
  505. package/dist/Molecular/InputAddress/InputAddress.js +496 -439
  506. package/dist/Molecular/InputAddress/InputAddress.scss +14 -16
  507. package/dist/Molecular/InputAddress/InputAddress.stories.js +541 -0
  508. package/dist/Molecular/InputPassword/InputPassword.js +99 -48
  509. package/dist/Molecular/InputPassword/InputPassword.stories.js +86 -0
  510. package/dist/index.js +11 -8
  511. package/dist/scss/_fonts.scss +48 -60
  512. package/dist/scss/_mixins.scss +2 -2
  513. package/dist/scss/_vars.scss +4 -5
  514. package/dist/scss/main.scss +5 -4
  515. package/dist/types/base.interface.js +4 -0
  516. package/dist/types/base.types.js +4 -0
  517. package/package.json +17 -21
  518. package/dist/Atomic/UI/Hint/partial/_utils.js +0 -52
  519. package/dist/Atomic/UI/NavLine/Tabs.js +0 -115
  520. package/dist/Functions/useIsMobile.js +0 -26
@@ -1,218 +1,193 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
2
  Object.defineProperty(exports, "__esModule", {
5
- value: true
3
+ value: true
6
4
  });
7
- exports.default = void 0;
8
- var _outerDependencies = _interopRequireDefault(require("./_outerDependencies"));
9
- var _utils = require("./_utils");
10
- const {
11
- jwt
12
- } = _outerDependencies.default;
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ const _outerDependencies = /*#__PURE__*/ _interop_require_default(require("./_outerDependencies"));
12
+ const _utils = require("./_utils");
13
+ function _interop_require_default(obj) {
14
+ return obj && obj.__esModule ? obj : {
15
+ default: obj
16
+ };
17
+ }
18
+ const { jwt } = _outerDependencies.default;
13
19
  class CredentialsProcessing {
14
- constructor(settings) {
15
- const {
16
- credentialsProcessing
17
- } = settings;
18
- const {
19
- //? Для корректной работы установки токенов в запросы от API
20
- //? нужно передавать методы getCredentials и getHeadersForAuthorize
21
- getCredentials,
22
- getHeadersForAuthorize,
23
- //? На вход получит токен, должна вернуть объект для коструктора Headers
24
-
25
- //? Так же опционально можно передавать
26
- importCredentials,
27
- //? если он передается, то он будет применяться к выводу от вызова getCredentials
28
- saveCredentials,
29
- //? можно будет найти в объекте credentialsProcessing, чтобы использовать кастомными методами
30
-
31
- //! Либо вызов getCredentials, либо цепочка вызовов importCredentials(getCredentials())
32
- //! должна возвращать требуемую классом структуру
33
- //! Класс требует структуры
34
- //! - { token }, если флоу рефреш токена НЕ используется
35
- //! - { token, refreshToken, expires }, если используется флоу рефреш токена
36
-
37
- // *********
38
-
39
- //? Подключает флоу рефреша токенов
40
- isUseRefreshTokensPropcessing = false,
41
- //! Для корректной работы флоу рефреша токенов передача метода saveCredentials становится ОБЯЗАТЕЛЬНОЙ
42
-
43
- //? Так же для корректной работы флоу рефреша токенов нужно
44
- //? - либо
45
- refreshCredentials,
46
- //! метод должен возвращать такую же структуру как и метод getCredentials,
47
- //? на вход получит текущие креды, к выходу будет применен importCredentials, если этот метод передавался
48
- //? - либо
49
- REFRESH_TOKEN_PATH,
50
- //! REFRESH_TOKEN_PATH передается ПОЛНОСТЬЮ (глобальная адресация)!
51
- CODES_USING_THE_REFRESH_ATTEMPT,
52
- //? указывает по каким кодам ответа триггериться рефреш, массив чисел
53
-
54
- //? Опционально
55
- REFRESH_TOKEN_FLAG = "refreshTokenFlag",
56
- INTERVAL_FOR_CHECKING_TOKEN_UPDATE = 50,
57
- // ms
58
- callbackAfterRejectRefresh
59
- } = credentialsProcessing || {};
60
- if (typeof getCredentials !== "function") throw new Error("No getCredentials method [CredentialsProcessing]");
61
- if (typeof getHeadersForAuthorize !== "function") {
62
- throw new Error("No getHeadersForAuthorize method [CredentialsProcessing]");
20
+ getIsTokenStartRefresh() {
21
+ return localStorage.getItem(this.REFRESH_TOKEN_FLAG);
22
+ }
23
+ setIsTokenStartRefresh() {
24
+ localStorage.setItem(this.REFRESH_TOKEN_FLAG, true);
63
25
  }
64
- if (importCredentials && typeof importCredentials !== "function") {
65
- throw new Error("Bad importCredentials method [CredentialsProcessing]");
26
+ removeIsTokenStartRefresh() {
27
+ localStorage.removeItem(this.REFRESH_TOKEN_FLAG);
66
28
  }
67
- this.isUseRefreshTokensPropcessing = isUseRefreshTokensPropcessing;
68
- this.DEFAULT_CREDENTIALS = {};
69
- this.getCredentialsByOuter = getCredentials;
70
- this.getHeadersForAuthorize = getHeadersForAuthorize;
71
- this.importCredentials = importCredentials;
72
-
73
- //? Если метод передан или если не передан, но включен флоу обновления токенов (тогда saveCredentials обязателен)
74
- if (saveCredentials || isUseRefreshTokensPropcessing) {
75
- if (typeof saveCredentials !== "function") throw new Error("No saveCredentials method [CredentialsProcessing]");else this.saveCredentials = saveCredentials;
29
+ async getCredentials(isCatchCallbackProcess, callback) {
30
+ let credentials = await this.getCredentialsByOuter();
31
+ if (typeof this.importCredentials === "function") credentials = await this.importCredentials(credentials);
32
+ if (!(0, _utils.getIsOnlyAnObject)(credentials)) credentials = {};
33
+ const token = credentials.token || null;
34
+ if (token && !isCatchCallbackProcess) {
35
+ let decoded;
36
+ try {
37
+ decoded = jwt.decode(token);
38
+ } catch (e) {
39
+ decoded = null;
40
+ }
41
+ const currentTime = Date.now() / 1000;
42
+ if (decoded !== null && Number(decoded.exp) < currentTime) credentials = {
43
+ ...credentials,
44
+ isNeedRefresh: true
45
+ };
46
+ }
47
+ if (callback) await callback({
48
+ ...credentials,
49
+ isCatchCallbackProcess
50
+ });
51
+ return {
52
+ ...credentials,
53
+ isCatchCallbackProcess
54
+ };
76
55
  }
77
- if (isUseRefreshTokensPropcessing) {
78
- if (typeof refreshCredentials === "function") this.refreshCredentialsByOuter = refreshCredentials;else {
79
- if (typeof this.refreshCredentialsByOuter === "function" && typeof REFRESH_TOKEN_PATH !== "string") {
80
- throw new Error("No REFRESH_TOKEN_PATH [CredentialsProcessing]");
56
+ async refreshCredentials(currentCredentials, callback) {
57
+ const CONTEXT = this;
58
+ async function finalize(cred) {
59
+ if (callback) await callback(cred);
60
+ return Promise.resolve(cred).then(async (res)=>{
61
+ CONTEXT.removeIsTokenStartRefresh();
62
+ return res;
63
+ });
81
64
  }
82
- this.REFRESH_TOKEN_PATH = REFRESH_TOKEN_PATH;
83
- }
84
- if (!Array.isArray(CODES_USING_THE_REFRESH_ATTEMPT)) {
85
- throw new Error("No CODES_USING_THE_REFRESH_ATTEMPT [CredentialsProcessing]");
86
- }
87
- if (!CODES_USING_THE_REFRESH_ATTEMPT.every(i => typeof i === "number")) {
88
- throw new Error("Invalid format of CODES_USING_THE_REFRESH_ATTEMPT elements [CredentialsProcessing]");
89
- }
90
- if (typeof REFRESH_TOKEN_FLAG !== "string") throw new Error("Bad REFRESH_TOKEN_FLAG [CredentialsProcessing]");
91
- if (typeof INTERVAL_FOR_CHECKING_TOKEN_UPDATE !== "number") {
92
- throw new Error("Bad INTERVAL_FOR_CHECKING_TOKEN_UPDATE [CredentialsProcessing]");
93
- }
94
- if (typeof INTERVAL_FOR_CHECKING_TOKEN_UPDATE !== "number") {
95
- throw new Error("Bad INTERVAL_FOR_CHECKING_TOKEN_UPDATE [CredentialsProcessing]");
96
- }
97
- if (callbackAfterRejectRefresh && typeof callbackAfterRejectRefresh !== "function") {
98
- throw new Error("Bad INTERVAL_FOR_CHECKING_TOKEN_UPDATE [CredentialsProcessing]");
99
- }
100
- this.CODES_USING_THE_REFRESH_ATTEMPT = CODES_USING_THE_REFRESH_ATTEMPT;
101
- this.REFRESH_TOKEN_FLAG = REFRESH_TOKEN_FLAG;
102
- this.INTERVAL_FOR_CHECKING_TOKEN_UPDATE = INTERVAL_FOR_CHECKING_TOKEN_UPDATE;
103
- if (callbackAfterRejectRefresh) this.callbackAfterRejectRefresh = callbackAfterRejectRefresh;
65
+ if (!(currentCredentials === null || currentCredentials === void 0 ? void 0 : currentCredentials.token) || !(currentCredentials === null || currentCredentials === void 0 ? void 0 : currentCredentials.refreshToken)) return finalize(CONTEXT.DEFAULT_CREDENTIALS);
66
+ //! ВНИМАНИЕ! Данный механизм рефреша принят на проекте finturfreactfrontend (админка)
67
+ //! На кабинете он ТОЧНО НЕ ТАКОЙ
68
+ async function refreshCredentialsByDefault() {
69
+ const { token, refreshToken } = currentCredentials;
70
+ const headers = new Headers();
71
+ headers.append(...Object.entries(CONTEXT.getHeadersForAuthorize(token)));
72
+ const body = new FormData();
73
+ body.append("grant_type", "refresh_token");
74
+ body.append("refresh_token", refreshToken);
75
+ body.append("client_id", "oauth");
76
+ body.append("client_secret", "secret");
77
+ body.append("access_type", "offline");
78
+ return fetch(`${CONTEXT.REFRESH_TOKEN_PATH}`, {
79
+ mode: "cors",
80
+ method: "POST",
81
+ headers,
82
+ body,
83
+ redirect: "follow"
84
+ });
85
+ }
86
+ //? Передавайте собственный refreshCredentials при получении экземляра RESTAPI, если не уверены,
87
+ //? что механизм рефреша токенов ИМЕННО ТАКОЙ как в ф-и refreshCredentialsByDefault!
88
+ //! currentCredentials передаются в формате класса! ({ token, refreshToken, expires })
89
+ const newCredentials = typeof CONTEXT.refreshCredentialsByOuter === "function" ? await CONTEXT.refreshCredentialsByOuter(currentCredentials) : await refreshCredentialsByDefault();
90
+ return finalize(newCredentials);
104
91
  }
105
- }
106
- getIsTokenStartRefresh() {
107
- return localStorage.getItem(this.REFRESH_TOKEN_FLAG);
108
- }
109
- setIsTokenStartRefresh() {
110
- localStorage.setItem(this.REFRESH_TOKEN_FLAG, true);
111
- }
112
- removeIsTokenStartRefresh() {
113
- localStorage.removeItem(this.REFRESH_TOKEN_FLAG);
114
- }
115
- async getCredentials(isCatchCallbackProcess, callback) {
116
- let credentials = await this.getCredentialsByOuter();
117
- if (typeof this.importCredentials === "function") credentials = await this.importCredentials(credentials);
118
- if (!(0, _utils.getIsOnlyAnObject)(credentials)) credentials = {};
119
- const token = credentials.token || null;
120
- if (token && !isCatchCallbackProcess) {
121
- let decoded;
122
- try {
123
- decoded = jwt.decode(token);
124
- } catch {
125
- decoded = null;
126
- }
127
- const currentTime = Date.now() / 1000;
128
- if (decoded !== null && Number(decoded.exp) < currentTime) credentials = {
129
- ...credentials,
130
- isNeedRefresh: true
131
- };
92
+ async waitRefresh(isNeedRefresh) {
93
+ return new Promise((resolve)=>{
94
+ if (!this.getIsTokenStartRefresh()) {
95
+ if (isNeedRefresh) this.setIsTokenStartRefresh();
96
+ resolve();
97
+ } else {
98
+ const intervalId = setInterval(()=>{
99
+ if (!this.getIsTokenStartRefresh()) {
100
+ clearInterval(intervalId);
101
+ resolve();
102
+ }
103
+ }, this.INTERVAL_FOR_CHECKING_TOKEN_UPDATE);
104
+ }
105
+ });
132
106
  }
133
- if (callback) await callback({
134
- ...credentials,
135
- isCatchCallbackProcess
136
- });
137
- return {
138
- ...credentials,
139
- isCatchCallbackProcess
140
- };
141
- }
142
- async refreshCredentials(currentCredentials, callback) {
143
- const CONTEXT = this;
144
- async function finalize(cred) {
145
- if (callback) await callback(cred);
146
- return Promise.resolve(cred).then(async res => {
147
- CONTEXT.removeIsTokenStartRefresh();
148
- return res;
149
- });
107
+ async processCredentials(cred) {
108
+ if (!cred.isNeedRefresh && !cred.isCatchCallbackProcess) return cred;
109
+ const CONTEXT = this;
110
+ return CONTEXT.refreshCredentials(cred, (response)=>CONTEXT.saveCredentials(response)).then(()=>{
111
+ return new Promise((resolve)=>{
112
+ setTimeout(async ()=>{
113
+ const newCredentials = await CONTEXT.getCredentials();
114
+ if (!(newCredentials === null || newCredentials === void 0 ? void 0 : newCredentials.token)) {
115
+ newCredentials.isRefreshFailed = true;
116
+ setTimeout(()=>{
117
+ var _CONTEXT_callbackAfterRejectRefresh;
118
+ CONTEXT === null || CONTEXT === void 0 ? void 0 : (_CONTEXT_callbackAfterRejectRefresh = CONTEXT.callbackAfterRejectRefresh) === null || _CONTEXT_callbackAfterRejectRefresh === void 0 ? void 0 : _CONTEXT_callbackAfterRejectRefresh.call(CONTEXT);
119
+ }, 0);
120
+ }
121
+ resolve(newCredentials);
122
+ }, 0);
123
+ });
124
+ });
150
125
  }
151
- if (!(currentCredentials !== null && currentCredentials !== void 0 && currentCredentials.token) || !(currentCredentials !== null && currentCredentials !== void 0 && currentCredentials.refreshToken)) return finalize(CONTEXT.DEFAULT_CREDENTIALS);
152
-
153
- //! ВНИМАНИЕ! Данный механизм рефреша принят на проекте finturfreactfrontend (админка)
154
- //! На кабинете он ТОЧНО НЕ ТАКОЙ
155
- async function refreshCredentialsByDefault() {
156
- const {
157
- token,
158
- refreshToken
159
- } = currentCredentials;
160
- const headers = new Headers();
161
- headers.append(...Object.entries(CONTEXT.getHeadersForAuthorize(token)));
162
- const body = new FormData();
163
- body.append("grant_type", "refresh_token");
164
- body.append("refresh_token", refreshToken);
165
- body.append("client_id", "oauth");
166
- body.append("client_secret", "secret");
167
- body.append("access_type", "offline");
168
- return fetch("".concat(CONTEXT.REFRESH_TOKEN_PATH), {
169
- mode: "cors",
170
- method: "POST",
171
- headers,
172
- body,
173
- redirect: "follow"
174
- });
126
+ constructor(settings){
127
+ const { credentialsProcessing } = settings;
128
+ const { //? Для корректной работы установки токенов в запросы от API
129
+ //? нужно передавать методы getCredentials и getHeadersForAuthorize
130
+ getCredentials, getHeadersForAuthorize, //? Так же опционально можно передавать
131
+ importCredentials, saveCredentials, //! Либо вызов getCredentials, либо цепочка вызовов importCredentials(getCredentials())
132
+ //! должна возвращать требуемую классом структуру
133
+ //! Класс требует структуры
134
+ //! - { token }, если флоу рефреш токена НЕ используется
135
+ //! - { token, refreshToken, expires }, если используется флоу рефреш токена
136
+ // *********
137
+ //? Подключает флоу рефреша токенов
138
+ isUseRefreshTokensPropcessing = false, //! Для корректной работы флоу рефреша токенов передача метода saveCredentials становится ОБЯЗАТЕЛЬНОЙ
139
+ //? Так же для корректной работы флоу рефреша токенов нужно
140
+ //? - либо
141
+ refreshCredentials, //? на вход получит текущие креды, к выходу будет применен importCredentials, если этот метод передавался
142
+ //? - либо
143
+ REFRESH_TOKEN_PATH, CODES_USING_THE_REFRESH_ATTEMPT, //? Опционально
144
+ REFRESH_TOKEN_FLAG = "refreshTokenFlag", INTERVAL_FOR_CHECKING_TOKEN_UPDATE = 50, callbackAfterRejectRefresh } = credentialsProcessing || {};
145
+ if (typeof getCredentials !== "function") throw new Error("No getCredentials method [CredentialsProcessing]");
146
+ if (typeof getHeadersForAuthorize !== "function") {
147
+ throw new Error("No getHeadersForAuthorize method [CredentialsProcessing]");
148
+ }
149
+ if (importCredentials && typeof importCredentials !== "function") {
150
+ throw new Error("Bad importCredentials method [CredentialsProcessing]");
151
+ }
152
+ this.isUseRefreshTokensPropcessing = isUseRefreshTokensPropcessing;
153
+ this.DEFAULT_CREDENTIALS = {};
154
+ this.getCredentialsByOuter = getCredentials;
155
+ this.getHeadersForAuthorize = getHeadersForAuthorize;
156
+ this.importCredentials = importCredentials;
157
+ //? Если метод передан или если не передан, но включен флоу обновления токенов (тогда saveCredentials обязателен)
158
+ if (saveCredentials || isUseRefreshTokensPropcessing) {
159
+ if (typeof saveCredentials !== "function") throw new Error("No saveCredentials method [CredentialsProcessing]");
160
+ else this.saveCredentials = saveCredentials;
161
+ }
162
+ if (isUseRefreshTokensPropcessing) {
163
+ if (typeof refreshCredentials === "function") this.refreshCredentialsByOuter = refreshCredentials;
164
+ else {
165
+ if (typeof this.refreshCredentialsByOuter === "function" && typeof REFRESH_TOKEN_PATH !== "string") {
166
+ throw new Error("No REFRESH_TOKEN_PATH [CredentialsProcessing]");
167
+ }
168
+ this.REFRESH_TOKEN_PATH = REFRESH_TOKEN_PATH;
169
+ }
170
+ if (!Array.isArray(CODES_USING_THE_REFRESH_ATTEMPT)) {
171
+ throw new Error("No CODES_USING_THE_REFRESH_ATTEMPT [CredentialsProcessing]");
172
+ }
173
+ if (!CODES_USING_THE_REFRESH_ATTEMPT.every((i)=>typeof i === "number")) {
174
+ throw new Error("Invalid format of CODES_USING_THE_REFRESH_ATTEMPT elements [CredentialsProcessing]");
175
+ }
176
+ if (typeof REFRESH_TOKEN_FLAG !== "string") throw new Error("Bad REFRESH_TOKEN_FLAG [CredentialsProcessing]");
177
+ if (typeof INTERVAL_FOR_CHECKING_TOKEN_UPDATE !== "number") {
178
+ throw new Error("Bad INTERVAL_FOR_CHECKING_TOKEN_UPDATE [CredentialsProcessing]");
179
+ }
180
+ if (typeof INTERVAL_FOR_CHECKING_TOKEN_UPDATE !== "number") {
181
+ throw new Error("Bad INTERVAL_FOR_CHECKING_TOKEN_UPDATE [CredentialsProcessing]");
182
+ }
183
+ if (callbackAfterRejectRefresh && typeof callbackAfterRejectRefresh !== "function") {
184
+ throw new Error("Bad INTERVAL_FOR_CHECKING_TOKEN_UPDATE [CredentialsProcessing]");
185
+ }
186
+ this.CODES_USING_THE_REFRESH_ATTEMPT = CODES_USING_THE_REFRESH_ATTEMPT;
187
+ this.REFRESH_TOKEN_FLAG = REFRESH_TOKEN_FLAG;
188
+ this.INTERVAL_FOR_CHECKING_TOKEN_UPDATE = INTERVAL_FOR_CHECKING_TOKEN_UPDATE;
189
+ if (callbackAfterRejectRefresh) this.callbackAfterRejectRefresh = callbackAfterRejectRefresh;
190
+ }
175
191
  }
176
-
177
- //? Передавайте собственный refreshCredentials при получении экземляра RESTAPI, если не уверены,
178
- //? что механизм рефреша токенов ИМЕННО ТАКОЙ как в ф-и refreshCredentialsByDefault!
179
- //! currentCredentials передаются в формате класса! ({ token, refreshToken, expires })
180
- const newCredentials = typeof CONTEXT.refreshCredentialsByOuter === "function" ? await CONTEXT.refreshCredentialsByOuter(currentCredentials) : await refreshCredentialsByDefault();
181
- return finalize(newCredentials);
182
- }
183
- async waitRefresh(isNeedRefresh) {
184
- return new Promise(resolve => {
185
- if (!this.getIsTokenStartRefresh()) {
186
- if (isNeedRefresh) this.setIsTokenStartRefresh();
187
- resolve();
188
- } else {
189
- const intervalId = setInterval(() => {
190
- if (!this.getIsTokenStartRefresh()) {
191
- clearInterval(intervalId);
192
- resolve();
193
- }
194
- }, this.INTERVAL_FOR_CHECKING_TOKEN_UPDATE);
195
- }
196
- });
197
- }
198
- async processCredentials(cred) {
199
- if (!cred.isNeedRefresh && !cred.isCatchCallbackProcess) return cred;
200
- const CONTEXT = this;
201
- return CONTEXT.refreshCredentials(cred, response => CONTEXT.saveCredentials(response)).then(() => {
202
- return new Promise(resolve => {
203
- setTimeout(async () => {
204
- const newCredentials = await CONTEXT.getCredentials();
205
- if (!(newCredentials !== null && newCredentials !== void 0 && newCredentials.token)) {
206
- newCredentials.isRefreshFailed = true;
207
- setTimeout(() => {
208
- var _CONTEXT$callbackAfte;
209
- CONTEXT === null || CONTEXT === void 0 || (_CONTEXT$callbackAfte = CONTEXT.callbackAfterRejectRefresh) === null || _CONTEXT$callbackAfte === void 0 || _CONTEXT$callbackAfte.call(CONTEXT);
210
- }, 0);
211
- }
212
- resolve(newCredentials);
213
- }, 0);
214
- });
215
- });
216
- }
217
192
  }
218
- var _default = exports.default = CredentialsProcessing;
193
+ const _default = CredentialsProcessing;
@@ -1,93 +1,90 @@
1
1
  "use strict";
2
-
3
2
  Object.defineProperty(exports, "__esModule", {
4
- value: true
3
+ value: true
5
4
  });
6
- exports.default = void 0;
7
- var _utils = require("./_utils");
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ const _utils = require("./_utils");
8
12
  //? В этом кклассе собраны полезные добавочные утилиты, которые могут быть использованы другими классами,
9
13
  //? но не имеют прямого отношения к реализации прямой ф-ти RESTAPI
10
14
  //? Так же утилиты могут быть использованы как библиотечные
11
15
  class Utils {
12
- //! Могут содержаться НЕасинхронные методы!
13
-
14
- //? Ф-я normalizeQueryParams является нормализатором сложных квери
15
- //? Например: &key1=&&&===&&&key2====&&&&&&&&key3=....
16
- //? Для корректной работы на вход нужно подавать НЕ кодированные значения
17
- //? По умолчанию выходные значения квери-параметров НЕ кодируются
18
- normalizeQueryParams(queryParams, settings) {
19
- if (settings && !(0, _utils.getIsOnlyAnObject)(settings)) {
20
- throw new Error("Bad settings [class Utils, normalizeQueryParams]");
21
- }
22
- const getInitialArr = input => {
23
- const prepareParam = (key, value) => {
24
- if (!value) return "".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");
25
- };
26
- if (Array.isArray(input)) {
27
- return input.map(item => {
28
- if (typeof item !== "string") return [];
29
- const index = item.indexOf("=");
30
- if (index === -1) return [item];
31
- return [item.slice(0, index), item.slice(index + 1)];
32
- }).filter(_ref => {
33
- let [key] = _ref;
34
- return Boolean(key);
35
- }).map(_ref2 => {
36
- let [key, value] = _ref2;
37
- return prepareParam(key, value);
38
- });
39
- } else if ((0, _utils.getIsOnlyAnObject)(input)) return Object.keys(input).map(key => prepareParam(key, input[key]));else if (typeof input === "string") return (input[0] === "?" ? input.slice(1) : input).split("&");else return [];
40
- };
41
- const {
42
- isEncode = false,
43
- outputAs = "array"
44
- } = settings || {};
45
- const initialStructure = getInitialArr(queryParams);
46
- const normalizedStructure = initialStructure.reduce((acc, str, idx) => {
47
- const lastIndex = acc.result.length - 1;
48
- const processToJoin = function (val) {
49
- let recoverableSymbol = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "&";
50
- const encodedToJoin = "".concat(encodeURIComponent(recoverableSymbol)).concat(encodeURIComponent(val));
51
- acc.result[lastIndex] = "".concat(acc.result[lastIndex]).concat(encodedToJoin);
52
- acc.toJoin = null;
53
- };
54
- if (typeof acc.toJoin === "string") processToJoin(acc.toJoin);
55
- const index = str.indexOf("=");
56
- if (index !== -1 && index !== 0) {
57
- const key = str.slice(0, index);
58
- acc.result.push("".concat(key, "=").concat(encodeURIComponent(str.slice(index + 1))));
59
- } else acc.toJoin = str;
60
- //? Добивка для последней итерации
61
- if (idx === initialStructure.length - 1 && typeof acc.toJoin === "string") processToJoin(acc.toJoin);
62
- return acc;
63
- }, {
64
- result: [],
65
- toJoin: null
66
- }).result;
67
- const outputStructure = normalizedStructure.map(item => {
68
- const [key, value] = item.split("=");
69
- return [key, !isEncode ? decodeURIComponent(value) : value];
70
- });
71
- switch (outputAs) {
72
- case "string":
73
- return outputStructure.length ? "?".concat(outputStructure.map(_ref3 => {
74
- let [key, value] = _ref3;
75
- return "".concat(key, "=").concat(value);
76
- }).join("&")) : "";
77
- case "object":
78
- return outputStructure.reduce((acc, _ref4) => {
79
- let [key, value] = _ref4;
80
- return {
81
- ...acc,
82
- [key]: value
83
- };
84
- }, {});
85
- default:
86
- return outputStructure.map(_ref5 => {
87
- let [key, value] = _ref5;
88
- return "".concat(key, "=").concat(value);
16
+ //! Могут содержаться НЕасинхронные методы!
17
+ //? Ф-я normalizeQueryParams является нормализатором сложных квери
18
+ //? Например: &key1=&&&===&&&key2====&&&&&&&&key3=....
19
+ //? Для корректной работы на вход нужно подавать НЕ кодированные значения
20
+ //? По умолчанию выходные значения квери-параметров НЕ кодируются
21
+ normalizeQueryParams(queryParams, settings) {
22
+ if (settings && !(0, _utils.getIsOnlyAnObject)(settings)) {
23
+ throw new Error("Bad settings [class Utils, normalizeQueryParams]");
24
+ }
25
+ const getInitialArr = (input)=>{
26
+ const prepareParam = (key, value)=>{
27
+ if (!value) return `${key}=`;
28
+ else if (typeof value === "string" || typeof value === "number") return `${key}=${value}`;
29
+ else if (Array.isArray(value)) return `${key}=${value.join("")}`;
30
+ else return `${key}=Bad-data-format`;
31
+ };
32
+ if (Array.isArray(input)) {
33
+ return input.map((item)=>{
34
+ if (typeof item !== "string") return [];
35
+ const index = item.indexOf("=");
36
+ if (index === -1) return [
37
+ item
38
+ ];
39
+ return [
40
+ item.slice(0, index),
41
+ item.slice(index + 1)
42
+ ];
43
+ }).filter(([key])=>Boolean(key)).map(([key, value])=>prepareParam(key, value));
44
+ } else if ((0, _utils.getIsOnlyAnObject)(input)) return Object.keys(input).map((key)=>prepareParam(key, input[key]));
45
+ else if (typeof input === "string") return (input[0] === "?" ? input.slice(1) : input).split("&");
46
+ else return [];
47
+ };
48
+ const { isEncode = false, outputAs = "array" } = settings || {};
49
+ const initialStructure = getInitialArr(queryParams);
50
+ const normalizedStructure = initialStructure.reduce((acc, str, idx)=>{
51
+ const lastIndex = acc.result.length - 1;
52
+ const processToJoin = (val, recoverableSymbol = "&")=>{
53
+ const encodedToJoin = `${encodeURIComponent(recoverableSymbol)}${encodeURIComponent(val)}`;
54
+ acc.result[lastIndex] = `${acc.result[lastIndex]}${encodedToJoin}`;
55
+ acc.toJoin = null;
56
+ };
57
+ if (typeof acc.toJoin === "string") processToJoin(acc.toJoin);
58
+ const index = str.indexOf("=");
59
+ if (index !== -1 && index !== 0) {
60
+ const key = str.slice(0, index);
61
+ acc.result.push(`${key}=${encodeURIComponent(str.slice(index + 1))}`);
62
+ } else acc.toJoin = str;
63
+ //? Добивка для последней итерации
64
+ if (idx === initialStructure.length - 1 && typeof acc.toJoin === "string") processToJoin(acc.toJoin);
65
+ return acc;
66
+ }, {
67
+ result: [],
68
+ toJoin: null
69
+ }).result;
70
+ const outputStructure = normalizedStructure.map((item)=>{
71
+ const [key, value] = item.split("=");
72
+ return [
73
+ key,
74
+ !isEncode ? decodeURIComponent(value) : value
75
+ ];
89
76
  });
77
+ switch(outputAs){
78
+ case "string":
79
+ return outputStructure.length ? `?${outputStructure.map(([key, value])=>`${key}=${value}`).join("&")}` : "";
80
+ case "object":
81
+ return outputStructure.reduce((acc, [key, value])=>({
82
+ ...acc,
83
+ [key]: value
84
+ }), {});
85
+ default:
86
+ return outputStructure.map(([key, value])=>`${key}=${value}`);
87
+ }
90
88
  }
91
- }
92
89
  }
93
- var _default = exports.default = Utils;
90
+ const _default = Utils;
@@ -1,11 +1,19 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
2
  Object.defineProperty(exports, "__esModule", {
5
- value: true
3
+ value: true
6
4
  });
7
- exports.default = void 0;
8
- var _jsonwebtoken = _interopRequireDefault(require("jsonwebtoken"));
9
- var _default = exports.default = {
10
- jwt: _jsonwebtoken.default
11
- };
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ const _jsonwebtoken = /*#__PURE__*/ _interop_require_default(require("jsonwebtoken"));
12
+ function _interop_require_default(obj) {
13
+ return obj && obj.__esModule ? obj : {
14
+ default: obj
15
+ };
16
+ }
17
+ const _default = {
18
+ jwt: _jsonwebtoken.default
19
+ };