intelicoreact 1.5.40 → 1.6.0

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 (350) hide show
  1. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.js +93 -44
  2. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.scss +23 -13
  3. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +43 -38
  4. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.scss +20 -10
  5. package/dist/Atomic/FormElements/Calendar/Calendar.js +243 -164
  6. package/dist/Atomic/FormElements/Calendar/Calendar.scss +1 -0
  7. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +60 -51
  8. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.scss +21 -11
  9. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +47 -39
  10. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.scss +5 -2
  11. package/dist/Atomic/FormElements/Datepicker/Datepicker.js +410 -308
  12. package/dist/Atomic/FormElements/Datepicker/components/Calendar.js +169 -109
  13. package/dist/Atomic/FormElements/Dropdown/Dropdown.js +680 -527
  14. package/dist/Atomic/FormElements/Dropdown/Dropdown.scss +58 -56
  15. package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +28 -15
  16. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +498 -378
  17. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.scss +33 -29
  18. package/dist/Atomic/FormElements/FileLoader/FileLoader.js +103 -70
  19. package/dist/Atomic/FormElements/FileLoader/FileLoader.scss +0 -2
  20. package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +138 -91
  21. package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +109 -55
  22. package/dist/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.js +254 -193
  23. package/dist/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.scss +19 -16
  24. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +156 -140
  25. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.scss +8 -4
  26. package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +222 -156
  27. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +158 -114
  28. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN_old.js +151 -92
  29. package/dist/Atomic/FormElements/Input/Input.js +340 -330
  30. package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +156 -110
  31. package/dist/Atomic/FormElements/InputColor/InputColor.js +57 -58
  32. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +189 -145
  33. package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +294 -228
  34. package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +55 -56
  35. package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +645 -536
  36. package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +220 -190
  37. package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +33 -31
  38. package/dist/Atomic/FormElements/InputDateRange/dependencies.js +247 -169
  39. package/dist/Atomic/FormElements/InputLink/InputLink.js +118 -71
  40. package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +47 -38
  41. package/dist/Atomic/FormElements/InputMask/InputMask.js +938 -1053
  42. package/dist/Atomic/FormElements/InputMask/config.js +16 -15
  43. package/dist/Atomic/FormElements/InputMask/functions.js +77 -51
  44. package/dist/Atomic/FormElements/InputMask2/InputMask2.js +569 -592
  45. package/dist/Atomic/FormElements/InputMask2/config.js +16 -15
  46. package/dist/Atomic/FormElements/InputMask2/functions.js +77 -51
  47. package/dist/Atomic/FormElements/InputMask3/InputMask3.js +651 -679
  48. package/dist/Atomic/FormElements/InputMask3/config.js +16 -15
  49. package/dist/Atomic/FormElements/InputMask3/functions.js +77 -51
  50. package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +127 -88
  51. package/dist/Atomic/FormElements/InputsRow/InputsRow.js +182 -111
  52. package/dist/Atomic/FormElements/Label/Label.js +82 -55
  53. package/dist/Atomic/FormElements/Label/Label.scss +18 -8
  54. package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +437 -382
  55. package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +88 -50
  56. package/dist/Atomic/FormElements/NumericInput/NumericInput.js +314 -264
  57. package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +93 -51
  58. package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +69 -55
  59. package/dist/Atomic/FormElements/RadioInput/RadioInput.js +51 -45
  60. package/dist/Atomic/FormElements/RadioInput/RadioInput.scss +4 -4
  61. package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +53 -40
  62. package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +169 -120
  63. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +195 -141
  64. package/dist/Atomic/FormElements/RangeList/RangeList.js +199 -140
  65. package/dist/Atomic/FormElements/RangeList/RangeList.scss +2 -2
  66. package/dist/Atomic/FormElements/RangeList/partial/AnyOuterClass.scss +0 -3
  67. package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +57 -44
  68. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +463 -377
  69. package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +760 -759
  70. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +36 -31
  71. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.scss +0 -2
  72. package/dist/Atomic/FormElements/Switcher/Switcher.js +52 -44
  73. package/dist/Atomic/FormElements/Switcher/Switcher.scss +3 -3
  74. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +43 -44
  75. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.scss +0 -2
  76. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +37 -36
  77. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.scss +0 -2
  78. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +93 -56
  79. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.scss +0 -2
  80. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +86 -53
  81. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.scss +0 -2
  82. package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +46 -54
  83. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +172 -102
  84. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.scss +4 -6
  85. package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +209 -154
  86. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +59 -56
  87. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.scss +2 -2
  88. package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.js +140 -112
  89. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +1035 -919
  90. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.scss +153 -116
  91. package/dist/Atomic/FormElements/Text/Text.js +88 -97
  92. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +44 -35
  93. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.scss +8 -8
  94. package/dist/Atomic/FormElements/Textarea/Textarea.js +102 -64
  95. package/dist/Atomic/FormElements/Textarea/Textarea.scss +4 -8
  96. package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +172 -133
  97. package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +48 -49
  98. package/dist/Atomic/FormElements/TimeRange/TimeRange.js +114 -63
  99. package/dist/Atomic/FormElements/TimeRange/TimeRange.scss +9 -3
  100. package/dist/Atomic/FormElements/UserContacts/UserContacts.js +179 -122
  101. package/dist/Atomic/FormElements/UserContacts/UserContacts.scss +10 -5
  102. package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +101 -65
  103. package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +80 -71
  104. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +79 -64
  105. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.scss +0 -2
  106. package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +42 -34
  107. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +102 -83
  108. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.scss +0 -2
  109. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +42 -35
  110. package/dist/Atomic/Layout/Header/Header.js +148 -80
  111. package/dist/Atomic/Layout/MainMenu/MainMenu.js +213 -133
  112. package/dist/Atomic/Layout/MainMenu/MainMenu.scss +7 -7
  113. package/dist/Atomic/Layout/Spinner/Spinner.js +39 -22
  114. package/dist/Atomic/Layout/Spinner/Spinner.scss +36 -16
  115. package/dist/Atomic/UI/Accordion/Accordion.js +102 -53
  116. package/dist/Atomic/UI/Accordion/Accordion.scss +25 -14
  117. package/dist/Atomic/UI/Accordion/AccordionItem.js +170 -102
  118. package/dist/Atomic/UI/AccordionTable/AccordionTable.js +251 -167
  119. package/dist/Atomic/UI/AccordionText/AccordionText.js +105 -54
  120. package/dist/Atomic/UI/AccordionText/AccordionText.scss +22 -9
  121. package/dist/Atomic/UI/AdvancedTag/AdvTag.js +207 -135
  122. package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +100 -46
  123. package/dist/Atomic/UI/Alert/Alert.js +116 -63
  124. package/dist/Atomic/UI/Alert/Alert.scss +2 -2
  125. package/dist/Atomic/UI/Arrow/Arrow.js +163 -110
  126. package/dist/Atomic/UI/Box/Box.js +37 -37
  127. package/dist/Atomic/UI/Box/Box.scss +11 -11
  128. package/dist/Atomic/UI/Button/Button.js +43 -41
  129. package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +61 -67
  130. package/dist/Atomic/UI/Chart/Chart.js +170 -96
  131. package/dist/Atomic/UI/Chart/partial/Chart.constants.js +142 -74
  132. package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +91 -77
  133. package/dist/Atomic/UI/Chart/partial/datasetSetters.js +120 -117
  134. package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +314 -292
  135. package/dist/Atomic/UI/Chart/partial/optionsSetters.js +54 -39
  136. package/dist/Atomic/UI/Chart/partial/utils.js +56 -33
  137. package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +145 -88
  138. package/dist/Atomic/UI/DateTime/DateTime.js +89 -37
  139. package/dist/Atomic/UI/DateTime/DateTime.scss +2 -2
  140. package/dist/Atomic/UI/DebugContainer/DebugContainer.js +93 -31
  141. package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +66 -18
  142. package/dist/Atomic/UI/DoubleString/DoubleString.js +134 -77
  143. package/dist/Atomic/UI/DoubleString/DoubleString.scss +6 -4
  144. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +65 -22
  145. package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +251 -170
  146. package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +109 -84
  147. package/dist/Atomic/UI/Hint/Hint.interface.js +4 -0
  148. package/dist/Atomic/UI/Hint/Hint.js +247 -204
  149. package/dist/Atomic/UI/Hint/Hint.scss +4 -2
  150. package/dist/Atomic/UI/Hint/Hint.stories.js +10 -5
  151. package/dist/Atomic/UI/Hint/Hint.test.js +96 -0
  152. package/dist/Atomic/UI/Hint/index.js +3 -2
  153. package/dist/Atomic/UI/Hint/partials/_utils.js +60 -46
  154. package/dist/Atomic/UI/Modal/Modal.js +171 -172
  155. package/dist/Atomic/UI/Modal/Modal.scss +91 -65
  156. package/dist/Atomic/UI/Modal/Modal.stories.js +1 -1
  157. package/dist/Atomic/UI/Modal/ModalHOC.js +92 -38
  158. package/dist/Atomic/UI/Modal/ModalMobile.scss +26 -14
  159. package/dist/Atomic/UI/Modal/partials/ModalFooter.js +68 -18
  160. package/dist/Atomic/UI/Modal/partials/ModalTitle.js +107 -38
  161. package/dist/Atomic/UI/Modal/partials/useMobileModal.js +130 -153
  162. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +118 -62
  163. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.scss +172 -25
  164. package/dist/Atomic/UI/NavLine/NavLine.js +306 -273
  165. package/dist/Atomic/UI/NavLine/NavLine.scss +202 -155
  166. package/dist/Atomic/UI/NavLine/NavLine.test.js +1 -1
  167. package/dist/Atomic/UI/PageTitle/PageTitle.js +73 -52
  168. package/dist/Atomic/UI/PageTitle/PageTitle.scss +52 -14
  169. package/dist/Atomic/UI/PieChart/PieChart.js +105 -42
  170. package/dist/Atomic/UI/PieChart/PieChart.scss +87 -11
  171. package/dist/Atomic/UI/Price/Price.js +27 -20
  172. package/dist/Atomic/UI/PriceRange/PriceRange.js +40 -18
  173. package/dist/Atomic/UI/ProgressLine/ProgressLine.js +92 -73
  174. package/dist/Atomic/UI/ProgressLine/ProgressLine.scss +66 -52
  175. package/dist/Atomic/UI/Status/Status.js +62 -51
  176. package/dist/Atomic/UI/Status/Status.scss +48 -29
  177. package/dist/Atomic/UI/Table/Partials/TdCell.js +126 -88
  178. package/dist/Atomic/UI/Table/Partials/TdHeader.js +58 -39
  179. package/dist/Atomic/UI/Table/Partials/TdRow.js +124 -73
  180. package/dist/Atomic/UI/Table/Partials/TdTitle.js +113 -45
  181. package/dist/Atomic/UI/Table/Table.js +61 -43
  182. package/dist/Atomic/UI/Table/Table.scss +0 -3
  183. package/dist/Atomic/UI/Table/TdTypes/TdActions.js +108 -64
  184. package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +44 -31
  185. package/dist/Atomic/UI/Table/TdTypes/TdRange.js +24 -10
  186. package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +59 -48
  187. package/dist/Atomic/UI/Tag/Tag.js +157 -113
  188. package/dist/Atomic/UI/Tag/Tag.scss +104 -47
  189. package/dist/Atomic/UI/TagList/TagList.js +223 -179
  190. package/dist/Atomic/UI/TagList/TagList.scss +13 -9
  191. package/dist/Atomic/UI/UserBox/UserBox.js +80 -56
  192. package/dist/Atomic/UI/UserBox/UserBox.scss +45 -21
  193. package/dist/Atomic/UI/UserBox/UserBox.test.js +2 -2
  194. package/dist/Atomic/UI/WizardStepper/constructor.js +127 -89
  195. package/dist/Atomic/UI/WizardStepper/index.js +14 -6
  196. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.js +53 -51
  197. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.scss +11 -7
  198. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/index.js +9 -5
  199. package/dist/Atomic/UI/WizardStepper/ui/StepRow/StepRow.js +84 -67
  200. package/dist/Atomic/UI/WizardStepper/ui/StepRow/StepRow.scss +13 -7
  201. package/dist/Atomic/UI/WizardStepper/ui/StepRow/index.js +14 -6
  202. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.js +50 -45
  203. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.scss +24 -18
  204. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/index.js +14 -6
  205. package/dist/Atomic/UI/WizardStepper/ui/icons.js +138 -106
  206. package/dist/Atomic/UI/WizardStepper/ui/index.js +14 -6
  207. package/dist/Classes/AbortableFetch.js +394 -326
  208. package/dist/Classes/AnimatedHandler.js +31 -44
  209. package/dist/Classes/RESTAPI/index.js +131 -173
  210. package/dist/Classes/RESTAPI/partials/AbortableFetch.js +399 -334
  211. package/dist/Classes/RESTAPI/partials/ApiBase.js +30 -30
  212. package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +107 -88
  213. package/dist/Classes/RESTAPI/partials/ApiUtils.js +144 -166
  214. package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +180 -204
  215. package/dist/Classes/RESTAPI/partials/Utils.js +80 -83
  216. package/dist/Classes/RESTAPI/partials/_outerDependencies.js +16 -8
  217. package/dist/Classes/RESTAPI/partials/_utils.js +139 -125
  218. package/dist/Constants/index.constants.js +102 -22
  219. package/dist/Functions/Portal.js +67 -23
  220. package/dist/Functions/customEventListener.js +48 -50
  221. package/dist/Functions/dateTime.js +130 -177
  222. package/dist/Functions/fieldValueFormatters.js +275 -346
  223. package/dist/Functions/guards/assertions.js +294 -0
  224. package/dist/Functions/guards/safeValue.js +75 -0
  225. package/dist/Functions/guards/typeGuards.js +374 -0
  226. package/dist/Functions/hooks/useFormFieldsChangesManager.js +125 -96
  227. package/dist/Functions/locale/createTranslator.js +29 -27
  228. package/dist/Functions/operations.js +129 -102
  229. package/dist/Functions/presets/inputMaskPresets.js +88 -99
  230. package/dist/Functions/presets/inputPresets.js +41 -35
  231. package/dist/Functions/presets/mobileKeyboardTypesPresets.js +30 -49
  232. package/dist/Functions/schemas.js +78 -20
  233. package/dist/Functions/useBodyScrollLock.js +21 -15
  234. package/dist/Functions/useClickOutside.js +21 -16
  235. package/dist/Functions/useDebounce.js +62 -21
  236. package/dist/Functions/useFieldFocus.js +83 -79
  237. package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +39 -46
  238. package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +132 -137
  239. package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +63 -73
  240. package/dist/Functions/useFormTools/functions/General.js +117 -129
  241. package/dist/Functions/useFormTools/functions/RenderFields.js +75 -85
  242. package/dist/Functions/useFormTools/functions/usePrevious.js +16 -10
  243. package/dist/Functions/useFormTools/index.js +647 -709
  244. package/dist/Functions/useInputHighlightError.js +104 -53
  245. package/dist/Functions/useKeyPress/useHandleKeyPress.js +40 -33
  246. package/dist/Functions/useKeyPress/useKeyPress.js +48 -39
  247. package/dist/Functions/useLocalStorage.js +38 -31
  248. package/dist/Functions/useLocationParams.js +31 -24
  249. package/dist/Functions/useMediaQuery.js +14 -10
  250. package/dist/Functions/useMetaInfo.js +45 -35
  251. package/dist/Functions/useMouseUpOutside.js +21 -15
  252. package/dist/Functions/useOnlineStatus.js +25 -21
  253. package/dist/Functions/usePasswordChecker.js +183 -111
  254. package/dist/Functions/usePrevious.js +16 -10
  255. package/dist/Functions/useResize.js +32 -28
  256. package/dist/Functions/useScrollTo.js +26 -16
  257. package/dist/Functions/useToggle.js +20 -16
  258. package/dist/Functions/utils.js +493 -469
  259. package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +75 -28
  260. package/dist/Molecular/CustomIcons/components/AlertCircle.js +77 -28
  261. package/dist/Molecular/CustomIcons/components/AppStore.js +84 -32
  262. package/dist/Molecular/CustomIcons/components/Arrow.js +93 -38
  263. package/dist/Molecular/CustomIcons/components/ArrowDown.js +63 -20
  264. package/dist/Molecular/CustomIcons/components/ArrowLeft.js +71 -23
  265. package/dist/Molecular/CustomIcons/components/ArrowRight.js +71 -23
  266. package/dist/Molecular/CustomIcons/components/ArrowUp.js +63 -20
  267. package/dist/Molecular/CustomIcons/components/Bell.js +61 -18
  268. package/dist/Molecular/CustomIcons/components/Button.js +61 -18
  269. package/dist/Molecular/CustomIcons/components/Campaigns.js +62 -19
  270. package/dist/Molecular/CustomIcons/components/Check.js +62 -19
  271. package/dist/Molecular/CustomIcons/components/Check2.js +61 -18
  272. package/dist/Molecular/CustomIcons/components/ChevronDown.js +61 -18
  273. package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +61 -18
  274. package/dist/Molecular/CustomIcons/components/ChevronLeft.js +61 -18
  275. package/dist/Molecular/CustomIcons/components/ChevronRight.js +61 -18
  276. package/dist/Molecular/CustomIcons/components/ChevronUp.js +61 -18
  277. package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +81 -33
  278. package/dist/Molecular/CustomIcons/components/Close.js +64 -20
  279. package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +95 -45
  280. package/dist/Molecular/CustomIcons/components/Delete.js +62 -19
  281. package/dist/Molecular/CustomIcons/components/Edit.js +61 -18
  282. package/dist/Molecular/CustomIcons/components/Email.js +87 -36
  283. package/dist/Molecular/CustomIcons/components/FinturfLogo.js +82 -26
  284. package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +83 -34
  285. package/dist/Molecular/CustomIcons/components/Flows.js +61 -18
  286. package/dist/Molecular/CustomIcons/components/Gift.js +71 -23
  287. package/dist/Molecular/CustomIcons/components/GoogleAuth.js +84 -32
  288. package/dist/Molecular/CustomIcons/components/GooglePlay.js +84 -32
  289. package/dist/Molecular/CustomIcons/components/HelpCircle.js +67 -21
  290. package/dist/Molecular/CustomIcons/components/HelpCircle2.js +68 -22
  291. package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +67 -21
  292. package/dist/Molecular/CustomIcons/components/Home.js +67 -21
  293. package/dist/Molecular/CustomIcons/components/Home2.js +70 -24
  294. package/dist/Molecular/CustomIcons/components/Key.js +69 -26
  295. package/dist/Molecular/CustomIcons/components/Landers.js +68 -22
  296. package/dist/Molecular/CustomIcons/components/Lock.js +61 -18
  297. package/dist/Molecular/CustomIcons/components/Mail.js +75 -26
  298. package/dist/Molecular/CustomIcons/components/Mastercard.js +128 -68
  299. package/dist/Molecular/CustomIcons/components/Minus.js +79 -31
  300. package/dist/Molecular/CustomIcons/components/Offers.js +62 -19
  301. package/dist/Molecular/CustomIcons/components/Pause.js +79 -31
  302. package/dist/Molecular/CustomIcons/components/PayPal.js +96 -45
  303. package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +81 -32
  304. package/dist/Molecular/CustomIcons/components/Phone.js +81 -33
  305. package/dist/Molecular/CustomIcons/components/Play.js +79 -31
  306. package/dist/Molecular/CustomIcons/components/Plus.js +79 -31
  307. package/dist/Molecular/CustomIcons/components/Profile.js +69 -23
  308. package/dist/Molecular/CustomIcons/components/QRCode.js +85 -33
  309. package/dist/Molecular/CustomIcons/components/Rectangle.js +61 -18
  310. package/dist/Molecular/CustomIcons/components/Revert.js +67 -21
  311. package/dist/Molecular/CustomIcons/components/Star.js +60 -17
  312. package/dist/Molecular/CustomIcons/components/Star2.js +62 -19
  313. package/dist/Molecular/CustomIcons/components/TrafficSources.js +68 -21
  314. package/dist/Molecular/CustomIcons/components/Trash.js +61 -18
  315. package/dist/Molecular/CustomIcons/components/TrashRed.js +61 -18
  316. package/dist/Molecular/CustomIcons/components/Triggers.js +61 -18
  317. package/dist/Molecular/CustomIcons/components/User.js +71 -23
  318. package/dist/Molecular/CustomIcons/components/Visa.js +88 -34
  319. package/dist/Molecular/CustomIcons/components/X.js +61 -18
  320. package/dist/Molecular/CustomIcons/index.js +76 -674
  321. package/dist/Molecular/FormElement/FormElement.js +44 -41
  322. package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +179 -161
  323. package/dist/Molecular/FormWithDependOn/partials/_utils.js +49 -56
  324. package/dist/Molecular/InputAddress/InputAddress.js +496 -421
  325. package/dist/Molecular/InputAddress/InputAddress.scss +12 -14
  326. package/dist/Molecular/InputPassword/InputPassword.js +99 -47
  327. package/dist/index.js +11 -8
  328. package/dist/scss/_mixins.scss +2 -2
  329. package/dist/scss/_vars.scss +1 -2
  330. package/dist/scss/main.scss +4 -3
  331. package/dist/types/declaration/ArrayElement.d.js +4 -0
  332. package/dist/types/declaration/AsyncReturnType.d.js +4 -0
  333. package/dist/types/declaration/DeepPartial.d.js +4 -0
  334. package/dist/types/declaration/DeepReadonly.d.js +4 -0
  335. package/dist/types/declaration/DeepRequired.d.js +4 -0
  336. package/dist/types/declaration/Flatten.d.js +4 -0
  337. package/dist/types/declaration/FunctionType.d.js +4 -0
  338. package/dist/types/declaration/If.d.js +4 -0
  339. package/dist/types/declaration/KeysType.d.js +4 -0
  340. package/dist/types/declaration/NonNullableType.d.js +4 -0
  341. package/dist/types/declaration/ObjectType.d.js +4 -0
  342. package/dist/types/declaration/OnlyObjectKeys.d.js +4 -0
  343. package/dist/types/declaration/PrettyPrint.d.js +31 -0
  344. package/dist/types/declaration/RequiredFields.d.js +4 -0
  345. package/dist/types/declaration/TupleType.d.js +4 -0
  346. package/dist/types/declaration/ValuesType.d.js +4 -0
  347. package/package.json +18 -21
  348. package/dist/Atomic/UI/NavLine/Tabs.js +0 -115
  349. package/dist/Functions/animatingFunctions/getAnimatedHandler.js +0 -1
  350. package/dist/Functions/useIsMobile.js +0 -26
@@ -1,61 +1,115 @@
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 _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
- var _react = _interopRequireWildcard(require("react"));
10
- var _classnames = _interopRequireDefault(require("classnames"));
11
- var _utils = require("../../../../Functions/utils");
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ const _jsxruntime = require("react/jsx-runtime");
12
+ const _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
13
+ const _classnames = /*#__PURE__*/ _interop_require_default(require("classnames"));
14
+ const _utils = require("../../../../Functions/utils");
12
15
  require("../FileLoader.scss");
13
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
14
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
15
- const LoadedContent = props => {
16
- const {
17
- RC,
18
- value,
19
- onDelete,
20
- icon,
21
- isIconAfter,
22
- deleteIcon,
23
- isUseLinkTitle,
24
- isLinkTypeDownload
25
- } = props;
26
- const handle = {
27
- download: async e => {
28
- e.stopPropagation();
29
- e.preventDefault();
30
- const target = e.target.tagName === "SPAN" || e.target.tagName === "svg" ? e.target.parentNode : e.target;
31
- (0, _utils.downloadFile)({
32
- url: target.href,
33
- name: value.name
34
- });
16
+ function _interop_require_default(obj) {
17
+ return obj && obj.__esModule ? obj : {
18
+ default: obj
19
+ };
20
+ }
21
+ function _getRequireWildcardCache(nodeInterop) {
22
+ if (typeof WeakMap !== "function") return null;
23
+ var cacheBabelInterop = new WeakMap();
24
+ var cacheNodeInterop = new WeakMap();
25
+ return (_getRequireWildcardCache = function(nodeInterop) {
26
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
27
+ })(nodeInterop);
28
+ }
29
+ function _interop_require_wildcard(obj, nodeInterop) {
30
+ if (!nodeInterop && obj && obj.__esModule) {
31
+ return obj;
32
+ }
33
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
34
+ return {
35
+ default: obj
36
+ };
37
+ }
38
+ var cache = _getRequireWildcardCache(nodeInterop);
39
+ if (cache && cache.has(obj)) {
40
+ return cache.get(obj);
41
+ }
42
+ var newObj = {
43
+ __proto__: null
44
+ };
45
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
46
+ for(var key in obj){
47
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
48
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
49
+ if (desc && (desc.get || desc.set)) {
50
+ Object.defineProperty(newObj, key, desc);
51
+ } else {
52
+ newObj[key] = obj[key];
53
+ }
54
+ }
55
+ }
56
+ newObj.default = obj;
57
+ if (cache) {
58
+ cache.set(obj, newObj);
35
59
  }
36
- };
37
- const additionalProps = (0, _react.useMemo)(() => ({
38
- ...(isUseLinkTitle ? {
39
- title: isLinkTypeDownload ? `Download ${value.name}` : value.path
40
- } : {}),
41
- ...(isLinkTypeDownload ? {
42
- onClick: handle.download
43
- } : {
44
- target: "_blank"
45
- }),
46
- key: `LoadedContent-isNotUseLinkTitle-${isUseLinkTitle}-isLinkTypeDownload-${isLinkTypeDownload}`
47
- }), [isUseLinkTitle, isLinkTypeDownload]);
48
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("a", (0, _extends2.default)({}, additionalProps, {
49
- href: value.path,
50
- rel: "noreferrer",
51
- className: (0, _classnames.default)(`${RC}__value-link`, {
52
- [`${RC}__value-link_icon-after`]: isIconAfter
53
- })
54
- }), !isIconAfter && icon, /*#__PURE__*/_react.default.createElement("span", {
55
- className: (0, _classnames.default)(`${RC}__value-name`)
56
- }, value.name), isIconAfter && icon), /*#__PURE__*/_react.default.createElement("span", {
57
- className: (0, _classnames.default)(`${RC}__delete-value-button`),
58
- onClick: onDelete
59
- }, deleteIcon || "X"));
60
+ return newObj;
61
+ }
62
+ const LoadedContent = (props)=>{
63
+ const { RC, value, onDelete, icon, isIconAfter, deleteIcon, isUseLinkTitle, isLinkTypeDownload } = props;
64
+ const handle = {
65
+ download: async (e)=>{
66
+ e.stopPropagation();
67
+ e.preventDefault();
68
+ const target = e.target.tagName === "SPAN" || e.target.tagName === "svg" ? e.target.parentNode : e.target;
69
+ (0, _utils.downloadFile)({
70
+ url: target.href,
71
+ name: value.name
72
+ });
73
+ }
74
+ };
75
+ const additionalProps = (0, _react.useMemo)(()=>({
76
+ ...isUseLinkTitle ? {
77
+ title: isLinkTypeDownload ? `Download ${value.name}` : value.path
78
+ } : {},
79
+ ...isLinkTypeDownload ? {
80
+ onClick: handle.download
81
+ } : {
82
+ target: "_blank"
83
+ },
84
+ key: `LoadedContent-isNotUseLinkTitle-${isUseLinkTitle}-isLinkTypeDownload-${isLinkTypeDownload}`
85
+ }), [
86
+ isUseLinkTitle,
87
+ isLinkTypeDownload
88
+ ]);
89
+ return /*#__PURE__*/ (0, _jsxruntime.jsxs)(_jsxruntime.Fragment, {
90
+ children: [
91
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)("a", {
92
+ ...additionalProps,
93
+ href: value.path,
94
+ rel: "noreferrer",
95
+ className: (0, _classnames.default)(`${RC}__value-link`, {
96
+ [`${RC}__value-link_icon-after`]: isIconAfter
97
+ }),
98
+ children: [
99
+ !isIconAfter && icon,
100
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
101
+ className: (0, _classnames.default)(`${RC}__value-name`),
102
+ children: value.name
103
+ }),
104
+ isIconAfter && icon
105
+ ]
106
+ }),
107
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
108
+ className: (0, _classnames.default)(`${RC}__delete-value-button`),
109
+ onClick: onDelete,
110
+ children: deleteIcon || "X"
111
+ })
112
+ ]
113
+ });
60
114
  };
61
- var _default = exports.default = LoadedContent;
115
+ const _default = LoadedContent;
@@ -1,210 +1,271 @@
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 _react = _interopRequireWildcard(require("react"));
9
- var _classnames = _interopRequireDefault(require("classnames"));
10
- var _utils = require("../../../Functions/utils");
11
- var _AccordionText = _interopRequireDefault(require("../../UI/AccordionText/AccordionText"));
12
- var _FileLoaderLocal = _interopRequireDefault(require("../FileLoaderLocal/FileLoaderLocal"));
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ const _jsxruntime = require("react/jsx-runtime");
12
+ const _react = /*#__PURE__*/ _interop_require_wildcard(require("react"));
13
+ const _classnames = /*#__PURE__*/ _interop_require_default(require("classnames"));
14
+ const _utils = require("../../../Functions/utils");
15
+ const _AccordionText = /*#__PURE__*/ _interop_require_default(require("../../UI/AccordionText/AccordionText"));
16
+ const _FileLoaderLocal = /*#__PURE__*/ _interop_require_default(require("../FileLoaderLocal/FileLoaderLocal"));
13
17
  require("./FileLoaderDescription.scss");
14
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
18
+ function _interop_require_default(obj) {
19
+ return obj && obj.__esModule ? obj : {
20
+ default: obj
21
+ };
22
+ }
23
+ function _getRequireWildcardCache(nodeInterop) {
24
+ if (typeof WeakMap !== "function") return null;
25
+ var cacheBabelInterop = new WeakMap();
26
+ var cacheNodeInterop = new WeakMap();
27
+ return (_getRequireWildcardCache = function(nodeInterop) {
28
+ return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
29
+ })(nodeInterop);
30
+ }
31
+ function _interop_require_wildcard(obj, nodeInterop) {
32
+ if (!nodeInterop && obj && obj.__esModule) {
33
+ return obj;
34
+ }
35
+ if (obj === null || typeof obj !== "object" && typeof obj !== "function") {
36
+ return {
37
+ default: obj
38
+ };
39
+ }
40
+ var cache = _getRequireWildcardCache(nodeInterop);
41
+ if (cache && cache.has(obj)) {
42
+ return cache.get(obj);
43
+ }
44
+ var newObj = {
45
+ __proto__: null
46
+ };
47
+ var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;
48
+ for(var key in obj){
49
+ if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) {
50
+ var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;
51
+ if (desc && (desc.get || desc.set)) {
52
+ Object.defineProperty(newObj, key, desc);
53
+ } else {
54
+ newObj[key] = obj[key];
55
+ }
56
+ }
57
+ }
58
+ newObj.default = obj;
59
+ if (cache) {
60
+ cache.set(obj, newObj);
61
+ }
62
+ return newObj;
63
+ }
16
64
  const RC = "file-loader-description";
17
65
  const UPLOAD_TRIGGER_KEY = "uploadTrigger";
18
66
  const MAX_FILE_SIZE = 10 * 1024 * 1024;
19
67
  const ACCEPT_EXTENSIONS_DEFAULT = ".jpg, .jpeg, .png, .pdf, .JPG, .JPEG, .PNG, .PDF";
20
68
  const uploadTriggerStucture = {
21
- id: UPLOAD_TRIGGER_KEY,
22
- isRequired: true,
23
- value: "",
24
- base64: "",
25
- maxItemSizeBytes: MAX_FILE_SIZE,
26
- error: "",
27
- accept: ACCEPT_EXTENSIONS_DEFAULT
69
+ id: UPLOAD_TRIGGER_KEY,
70
+ isRequired: true,
71
+ value: "",
72
+ base64: "",
73
+ maxItemSizeBytes: MAX_FILE_SIZE,
74
+ error: "",
75
+ accept: ACCEPT_EXTENSIONS_DEFAULT
28
76
  };
29
- const getStructure = data => ({
30
- //? Расчет на то, что data донесет свой id и перетрёт пустые велью
31
- value: "",
32
- base64: "",
33
- maxItemSizeBytes: MAX_FILE_SIZE,
34
- error: "",
35
- isRequired: false,
36
- accept: ACCEPT_EXTENSIONS_DEFAULT,
37
- ...data
38
- });
39
- const accordionData = (accordionTitle, accordionListContent) => {
40
- return /*#__PURE__*/_react.default.createElement("div", {
41
- "data-testid": "accordion"
42
- }, /*#__PURE__*/_react.default.createElement("div", {
43
- className: `${RC}__accordion-title`
44
- }, accordionTitle), /*#__PURE__*/_react.default.createElement("div", {
45
- className: `${RC}__list`
46
- }, accordionListContent?.map(item => {
47
- return /*#__PURE__*/_react.default.createElement("div", {
48
- key: item?.title,
49
- className: `${RC}__list-row`
50
- }, /*#__PURE__*/_react.default.createElement("div", {
51
- className: `${RC}__list-bullet`
52
- }), /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
53
- className: `${RC}__list-title`
54
- }, item.title), /*#__PURE__*/_react.default.createElement("div", {
55
- className: `${RC}__list-descr`
56
- }, item.description)));
57
- })));
77
+ const getStructure = (data)=>({
78
+ //? Расчет на то, что data донесет свой id и перетрёт пустые велью
79
+ value: "",
80
+ base64: "",
81
+ maxItemSizeBytes: MAX_FILE_SIZE,
82
+ error: "",
83
+ isRequired: false,
84
+ accept: ACCEPT_EXTENSIONS_DEFAULT,
85
+ ...data
86
+ });
87
+ const accordionData = (accordionTitle, accordionListContent)=>{
88
+ return /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
89
+ "data-testid": "accordion",
90
+ children: [
91
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
92
+ className: `${RC}__accordion-title`,
93
+ children: accordionTitle
94
+ }),
95
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
96
+ className: `${RC}__list`,
97
+ children: accordionListContent === null || accordionListContent === void 0 ? void 0 : accordionListContent.map((item)=>{
98
+ return /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
99
+ className: `${RC}__list-row`,
100
+ children: [
101
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
102
+ className: `${RC}__list-bullet`
103
+ }),
104
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
105
+ children: [
106
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
107
+ className: `${RC}__list-title`,
108
+ children: item.title
109
+ }),
110
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
111
+ className: `${RC}__list-descr`,
112
+ children: item.description
113
+ })
114
+ ]
115
+ })
116
+ ]
117
+ }, item === null || item === void 0 ? void 0 : item.title);
118
+ })
119
+ })
120
+ ]
121
+ });
58
122
  };
59
- const getSafelyInitFiles = (initFiles, maxFilesCount) => {
60
- if (!Array.isArray(initFiles)) return [];
61
- let output = (0, _utils.clone)(initFiles);
62
- if (typeof maxFilesCount === 'number' && output.length > maxFilesCount) {
63
- output = output.slice(0, maxFilesCount);
64
- }
65
- return output.map(getStructure);
123
+ const getSafelyInitFiles = (initFiles, maxFilesCount)=>{
124
+ if (!Array.isArray(initFiles)) return [];
125
+ let output = (0, _utils.clone)(initFiles);
126
+ if (typeof maxFilesCount === 'number' && output.length > maxFilesCount) {
127
+ output = output.slice(0, maxFilesCount);
128
+ }
129
+ return output.map(getStructure);
66
130
  };
67
- const checkOverflow = (files, maxFilesCount, additional) => {
68
- const {
69
- error = "",
70
- outerError = ""
71
- } = additional || {};
72
- return typeof maxFilesCount === "number" && files.length < maxFilesCount ? [...files, {
73
- ...(0, _utils.clone)(uploadTriggerStucture),
74
- error,
75
- outerError
76
- }] : files;
131
+ const checkOverflow = (files, maxFilesCount, additional)=>{
132
+ const { error = "", outerError = "" } = additional || {};
133
+ return typeof maxFilesCount === "number" && files.length < maxFilesCount ? [
134
+ ...files,
135
+ {
136
+ ...(0, _utils.clone)(uploadTriggerStucture),
137
+ error,
138
+ outerError
139
+ }
140
+ ] : files;
77
141
  };
78
- const FileLoaderDescription = _ref => {
79
- let {
80
- //? Для корректности работы стоит пробрасывать какой-то из id
81
- id,
82
- testId = "file-loader-description",
83
- fieldKey,
84
- files: initFiles,
85
- onChange,
86
- className,
87
- filesDescription = "Documents must be less than 10MB and must be in PDF, JPG, JPEG or PNG format.",
88
- documentName = "Document name",
89
- accordionTitle = "There is a list of documents that we accept:",
90
- accordionListContent = [],
91
- maxFilesCount = 10,
92
- isWithoutAccordion,
93
- error: outerError,
94
- ...props
95
- } = _ref;
96
- const uniqueFileLoaderDescriptionId = `${id || testId || fieldKey || `component-${(0, _utils.uuid)?.()}`}`;
97
- const safelyInitFiles = (0, _react.useMemo)(() => getSafelyInitFiles(initFiles, maxFilesCount), [initFiles, maxFilesCount]);
98
- const [files, setFiles] = (0, _react.useState)((() => {
99
- if (!safelyInitFiles.length) return [(0, _utils.clone)(uploadTriggerStucture)];
100
- return checkOverflow(safelyInitFiles, maxFilesCount);
101
- })());
102
- const generateUniqueFileName = (files, name) => {
103
- let fileName = name;
104
- const [nameWithoutExtension, extension] = name.split(/(?=\.[^.]+$)/);
105
- let count = 1;
106
- while (files.some(file => file.value === fileName)) {
107
- fileName = `${nameWithoutExtension}(${count})${extension}`;
108
- count += 1;
109
- }
110
- return fileName;
111
- };
112
- const handle = {
113
- applyFields: newFields => {
114
- setFiles(checkOverflow(newFields, maxFilesCount));
115
- onChange(newFields);
116
- },
117
- change: _ref2 => {
118
- let {
119
- name,
120
- id,
121
- error = "",
122
- file
123
- } = _ref2;
124
- //? Работаем с филдами БЕЗ плашки добавления
125
- let output = (0, _utils.clone)(files).filter(item => item.value && item.base64).map(item => ({
126
- ...item,
127
- error: ""
128
- }));
129
- const changedField = output.find(item => id === item.id);
130
- if (!file) {
131
- //? Нет файла - значит это экшн удаления
132
- handle.applyFields(output.filter(item => item.id !== changedField?.id));
133
- } else if (error) {
134
- //? Есть ошибка - не должны менять содержание, только назначить ошибку
135
- if (changedField) output = output.map(item => id.includes(item.id) ? {
136
- ...item,
137
- error
138
- } : item);
139
- //? Установка в локальный стейт БЕЗ верхнего onChange (файл по итогу НЕ загрузили, НЕ мутируем верхнее велью)
140
- setFiles(checkOverflow(output, maxFilesCount, {
141
- error: !changedField ? error : null
142
+ const FileLoaderDescription = ({ //? Для корректности работы стоит пробрасывать какой-то из id
143
+ id, testId = "file-loader-description", fieldKey, files: initFiles, onChange, className, filesDescription = "Documents must be less than 10MB and must be in PDF, JPG, JPEG or PNG format.", documentName = "Document name", accordionTitle = "There is a list of documents that we accept:", accordionListContent = [], maxFilesCount = 10, isWithoutAccordion, error: outerError, ...props })=>{
144
+ const uniqueFileLoaderDescriptionId = `${id || testId || fieldKey || `component-${_utils.uuid === null || _utils.uuid === void 0 ? void 0 : (0, _utils.uuid)()}`}`;
145
+ const safelyInitFiles = (0, _react.useMemo)(()=>getSafelyInitFiles(initFiles, maxFilesCount), [
146
+ initFiles,
147
+ maxFilesCount
148
+ ]);
149
+ const [files, setFiles] = (0, _react.useState)((()=>{
150
+ if (!safelyInitFiles.length) return [
151
+ (0, _utils.clone)(uploadTriggerStucture)
152
+ ];
153
+ return checkOverflow(safelyInitFiles, maxFilesCount);
154
+ })());
155
+ const generateUniqueFileName = (files, name)=>{
156
+ let fileName = name;
157
+ const [nameWithoutExtension, extension] = name.split(/(?=\.[^.]+$)/);
158
+ let count = 1;
159
+ while(files.some((file)=>file.value === fileName)){
160
+ fileName = `${nameWithoutExtension}(${count})${extension}`;
161
+ count += 1;
162
+ }
163
+ return fileName;
164
+ };
165
+ const handle = {
166
+ applyFields: (newFields)=>{
167
+ setFiles(checkOverflow(newFields, maxFilesCount));
168
+ onChange(newFields);
169
+ },
170
+ change: ({ name, id, error = "", file })=>{
171
+ //? Работаем с филдами БЕЗ плашки добавления
172
+ let output = (0, _utils.clone)(files).filter((item)=>item.value && item.base64).map((item)=>({
173
+ ...item,
174
+ error: ""
175
+ }));
176
+ const changedField = output.find((item)=>id === item.id);
177
+ if (!file) {
178
+ //? Нет файла - значит это экшн удаления
179
+ handle.applyFields(output.filter((item)=>item.id !== (changedField === null || changedField === void 0 ? void 0 : changedField.id)));
180
+ } else if (error) {
181
+ //? Есть ошибка - не должны менять содержание, только назначить ошибку
182
+ if (changedField) output = output.map((item)=>id.includes(item.id) ? {
183
+ ...item,
184
+ error
185
+ } : item);
186
+ //? Установка в локальный стейт БЕЗ верхнего onChange (файл по итогу НЕ загрузили, НЕ мутируем верхнее велью)
187
+ setFiles(checkOverflow(output, maxFilesCount, {
188
+ error: !changedField ? error : null
189
+ }));
190
+ } else {
191
+ //? Во всех остальных случаях - происходит добавленеи/изменение содержимого
192
+ const uniqueFileName = generateUniqueFileName(output, name);
193
+ const uniqueId = _utils.uuid === null || _utils.uuid === void 0 ? void 0 : (0, _utils.uuid)();
194
+ (0, _utils.getBase64)(file).then((result)=>{
195
+ const newItem = getStructure({
196
+ id: uniqueId,
197
+ value: uniqueFileName,
198
+ base64: result,
199
+ error: ""
200
+ });
201
+ //? Либо меняем, либо добавляем
202
+ output = changedField ? output.map((item)=>item.id === changedField.id ? newItem : item) : [
203
+ ...output,
204
+ newItem
205
+ ];
206
+ handle.applyFields(output);
207
+ });
208
+ }
209
+ }
210
+ };
211
+ (0, _react.useEffect)(()=>{
212
+ setFiles(checkOverflow(files.filter((item)=>item.id !== UPLOAD_TRIGGER_KEY), maxFilesCount, {
213
+ outerError
142
214
  }));
143
- } else {
144
- //? Во всех остальных случаях - происходит добавленеи/изменение содержимого
145
- const uniqueFileName = generateUniqueFileName(output, name);
146
- const uniqueId = (0, _utils.uuid)?.();
147
- (0, _utils.getBase64)(file).then(result => {
148
- const newItem = getStructure({
149
- id: uniqueId,
150
- value: uniqueFileName,
151
- base64: result,
152
- error: ""
153
- });
154
- //? Либо меняем, либо добавляем
155
- output = changedField ? output.map(item => item.id === changedField.id ? newItem : item) : [...output, newItem];
156
- handle.applyFields(output);
157
- });
158
- }
159
- }
160
- };
161
- (0, _react.useEffect)(() => {
162
- setFiles(checkOverflow(files.filter(item => item.id !== UPLOAD_TRIGGER_KEY), maxFilesCount, {
163
- outerError
164
- }));
165
- }, [outerError]);
166
-
167
- //? Обеспечивает чтобы верхний стейт был доминирующим
168
- //? Осознанно и намерянно в зависимости стоит initFiles, но расчеты идут от safelyInitFiles
169
- (0, _react.useEffect)(() => {
170
- //? Если изменились верхние филды и они отличаются от локальных (без триггера) - перезаписать
171
- if (!(0, _utils.compare)(safelyInitFiles, (0, _utils.clone)(files).filter(item => item.id !== UPLOAD_TRIGGER_KEY))) {
172
- setFiles(checkOverflow(safelyInitFiles, maxFilesCount, {
215
+ }, [
173
216
  outerError
174
- }));
175
- }
176
- }, [initFiles, maxFilesCount]);
177
- return /*#__PURE__*/_react.default.createElement("div", {
178
- id: uniqueFileLoaderDescriptionId,
179
- "data-testid": RC,
180
- className: (0, _classnames.default)(RC, className),
181
- role: "combobox"
182
- }, !!documentName && /*#__PURE__*/_react.default.createElement("span", {
183
- title: documentName,
184
- className: `${RC}__title`
185
- }, documentName), !isWithoutAccordion && /*#__PURE__*/_react.default.createElement(_AccordionText.default, {
186
- isForcedAlwaysAccordion: true,
187
- className: (0, _classnames.default)(`${RC}__accordion`),
188
- text: accordionData(accordionTitle, accordionListContent)
189
- }), !!filesDescription && /*#__PURE__*/_react.default.createElement("span", {
190
- className: `${RC}__file-descr`,
191
- title: filesDescription
192
- }, filesDescription), files.map((field, i) => {
193
- return /*#__PURE__*/_react.default.createElement(_FileLoaderLocal.default, {
194
- className: `${RC}__list-item`,
195
- key: `${field.id}-${i}`,
196
- fieldId: field.id,
197
- id: `loader-${uniqueFileLoaderDescriptionId}-field-${field.id}`,
198
- error: field.error,
199
- outerError: field.outerError,
200
- label: "Upload document",
201
- accept: field.accept,
202
- value: field.value,
203
- maxItemSizeBytes: field.maxItemSizeBytes,
204
- onChange: value => handle.change(value),
205
- isRequired: files.length <= 1,
206
- isNoTrashIcon: false
217
+ ]);
218
+ //? Обеспечивает чтобы верхний стейт был доминирующим
219
+ //? Осознанно и намерянно в зависимости стоит initFiles, но расчеты идут от safelyInitFiles
220
+ (0, _react.useEffect)(()=>{
221
+ //? Если изменились верхние филды и они отличаются от локальных (без триггера) - перезаписать
222
+ if (!(0, _utils.compare)(safelyInitFiles, (0, _utils.clone)(files).filter((item)=>item.id !== UPLOAD_TRIGGER_KEY))) {
223
+ setFiles(checkOverflow(safelyInitFiles, maxFilesCount, {
224
+ outerError
225
+ }));
226
+ }
227
+ }, [
228
+ initFiles,
229
+ maxFilesCount
230
+ ]);
231
+ return /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
232
+ id: uniqueFileLoaderDescriptionId,
233
+ "data-testid": RC,
234
+ className: (0, _classnames.default)(RC, className),
235
+ role: "combobox",
236
+ children: [
237
+ !!documentName && /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
238
+ title: documentName,
239
+ className: `${RC}__title`,
240
+ children: documentName
241
+ }),
242
+ !isWithoutAccordion && /*#__PURE__*/ (0, _jsxruntime.jsx)(_AccordionText.default, {
243
+ isForcedAlwaysAccordion: true,
244
+ className: (0, _classnames.default)(`${RC}__accordion`),
245
+ text: accordionData(accordionTitle, accordionListContent)
246
+ }),
247
+ !!filesDescription && /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
248
+ className: `${RC}__file-descr`,
249
+ title: filesDescription,
250
+ children: filesDescription
251
+ }),
252
+ files.map((field, i)=>{
253
+ return /*#__PURE__*/ (0, _jsxruntime.jsx)(_FileLoaderLocal.default, {
254
+ className: `${RC}__list-item`,
255
+ fieldId: field.id,
256
+ id: `loader-${uniqueFileLoaderDescriptionId}-field-${field.id}`,
257
+ error: field.error,
258
+ outerError: field.outerError,
259
+ label: "Upload document",
260
+ accept: field.accept,
261
+ value: field.value,
262
+ maxItemSizeBytes: field.maxItemSizeBytes,
263
+ onChange: (value)=>handle.change(value),
264
+ isRequired: files.length <= 1,
265
+ isNoTrashIcon: false
266
+ }, `${field.id}-${i}`);
267
+ })
268
+ ]
207
269
  });
208
- }));
209
270
  };
210
- var _default = exports.default = FileLoaderDescription;
271
+ const _default = FileLoaderDescription;