intelicoreact 1.4.81 → 1.4.83

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 (258) hide show
  1. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.js +13 -13
  2. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +12 -13
  3. package/dist/Atomic/FormElements/Calendar/Calendar.js +103 -68
  4. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +26 -26
  5. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +27 -23
  6. package/dist/Atomic/FormElements/Datepicker/Datepicker.js +201 -114
  7. package/dist/Atomic/FormElements/Datepicker/components/Calendar.js +69 -46
  8. package/dist/Atomic/FormElements/Dropdown/Dropdown.js +301 -230
  9. package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +2 -4
  10. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +201 -145
  11. package/dist/Atomic/FormElements/FileLoader/FileLoader.js +54 -41
  12. package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +112 -45
  13. package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +63 -34
  14. package/dist/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.js +153 -81
  15. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +59 -57
  16. package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +98 -66
  17. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +48 -27
  18. package/dist/Atomic/FormElements/Input/Input.js +209 -148
  19. package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +77 -50
  20. package/dist/Atomic/FormElements/InputColor/InputColor.js +28 -23
  21. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +53 -38
  22. package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +139 -106
  23. package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +38 -31
  24. package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +230 -135
  25. package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +122 -85
  26. package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +8 -10
  27. package/dist/Atomic/FormElements/InputDateRange/dependencies.js +159 -72
  28. package/dist/Atomic/FormElements/InputLink/InputLink.js +39 -30
  29. package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +8 -8
  30. package/dist/Atomic/FormElements/InputMask/InputMask.js +800 -521
  31. package/dist/Atomic/FormElements/InputMask/config.js +1 -1
  32. package/dist/Atomic/FormElements/InputMask/functions.js +15 -15
  33. package/dist/Atomic/FormElements/InputMask2/InputMask2.js +294 -234
  34. package/dist/Atomic/FormElements/InputMask2/config.js +1 -1
  35. package/dist/Atomic/FormElements/InputMask2/functions.js +15 -15
  36. package/dist/Atomic/FormElements/InputMask3/InputMask3.js +332 -265
  37. package/dist/Atomic/FormElements/InputMask3/config.js +1 -1
  38. package/dist/Atomic/FormElements/InputMask3/functions.js +15 -15
  39. package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +101 -53
  40. package/dist/Atomic/FormElements/InputsRow/InputsRow.js +99 -64
  41. package/dist/Atomic/FormElements/Label/Label.js +15 -13
  42. package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +284 -190
  43. package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +34 -24
  44. package/dist/Atomic/FormElements/NumericInput/NumericInput.js +170 -117
  45. package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +50 -28
  46. package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +29 -18
  47. package/dist/Atomic/FormElements/RadioInput/RadioInput.js +24 -22
  48. package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +31 -19
  49. package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +83 -56
  50. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +75 -49
  51. package/dist/Atomic/FormElements/RangeList/RangeList.js +129 -87
  52. package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +18 -22
  53. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +250 -143
  54. package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +477 -367
  55. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +15 -14
  56. package/dist/Atomic/FormElements/Switcher/Switcher.js +20 -24
  57. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +30 -24
  58. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +23 -20
  59. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +40 -32
  60. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +31 -25
  61. package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +22 -22
  62. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +98 -52
  63. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +34 -22
  64. package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.js +81 -47
  65. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +525 -415
  66. package/dist/Atomic/FormElements/Text/Text.js +39 -39
  67. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +23 -21
  68. package/dist/Atomic/FormElements/Textarea/Textarea.js +33 -28
  69. package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +98 -67
  70. package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +24 -22
  71. package/dist/Atomic/FormElements/TimeRange/TimeRange.js +57 -34
  72. package/dist/Atomic/FormElements/UserContacts/UserContacts.js +94 -56
  73. package/dist/Atomic/FormElements/UserContacts/partial/defaultIcons.js +102 -74
  74. package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +69 -50
  75. package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +33 -30
  76. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +50 -38
  77. package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +1 -1
  78. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +59 -47
  79. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +1 -1
  80. package/dist/Atomic/Layout/Header/Header.js +37 -22
  81. package/dist/Atomic/Layout/MainMenu/MainMenu.js +59 -34
  82. package/dist/Atomic/Layout/Spinner/Spinner.js +6 -7
  83. package/dist/Atomic/UI/Accordion/Accordion.js +31 -17
  84. package/dist/Atomic/UI/Accordion/AccordionItem.js +41 -30
  85. package/dist/Atomic/UI/AccordionTable/AccordionTable.js +81 -50
  86. package/dist/Atomic/UI/AccordionText/AccordionText.js +39 -20
  87. package/dist/Atomic/UI/AdvancedTag/AdvTag.js +74 -46
  88. package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +37 -21
  89. package/dist/Atomic/UI/Alert/Alert.js +36 -23
  90. package/dist/Atomic/UI/Arrow/Arrow.js +21 -14
  91. package/dist/Atomic/UI/Box/Box.js +12 -11
  92. package/dist/Atomic/UI/Button/Button.js +26 -26
  93. package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +21 -21
  94. package/dist/Atomic/UI/Chart/Chart.js +60 -44
  95. package/dist/Atomic/UI/Chart/partial/Chart.constants.js +13 -11
  96. package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +10 -12
  97. package/dist/Atomic/UI/Chart/partial/datasetSetters.js +82 -60
  98. package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +124 -116
  99. package/dist/Atomic/UI/Chart/partial/optionsSetters.js +30 -18
  100. package/dist/Atomic/UI/Chart/partial/utils.js +30 -16
  101. package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +31 -21
  102. package/dist/Atomic/UI/DateTime/DateTime.js +29 -25
  103. package/dist/Atomic/UI/DebugContainer/DebugContainer.js +23 -11
  104. package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +12 -4
  105. package/dist/Atomic/UI/DoubleString/DoubleString.js +53 -36
  106. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +55 -14
  107. package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +114 -54
  108. package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +88 -53
  109. package/dist/Atomic/UI/Hint/Hint.js +87 -58
  110. package/dist/Atomic/UI/Hint/partials/_utils.js +10 -10
  111. package/dist/Atomic/UI/Modal/Modal.js +159 -144
  112. package/dist/Atomic/UI/Modal/ModalHOC.js +17 -14
  113. package/dist/Atomic/UI/Modal/partials/ModalFooter.js +5 -6
  114. package/dist/Atomic/UI/Modal/partials/ModalTitle.js +13 -16
  115. package/dist/Atomic/UI/Modal/partials/useMobileModal.js +118 -73
  116. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +48 -33
  117. package/dist/Atomic/UI/NavLine/NavLine.js +166 -104
  118. package/dist/Atomic/UI/PageTitle/PageTitle.js +8 -12
  119. package/dist/Atomic/UI/PieChart/PieChart.js +11 -10
  120. package/dist/Atomic/UI/Price/Price.js +5 -7
  121. package/dist/Atomic/UI/PriceRange/PriceRange.js +4 -6
  122. package/dist/Atomic/UI/ProgressLine/ProgressLine.js +42 -27
  123. package/dist/Atomic/UI/Status/Status.js +22 -18
  124. package/dist/Atomic/UI/Table/Partials/TdCell.js +47 -28
  125. package/dist/Atomic/UI/Table/Partials/TdHeader.js +5 -6
  126. package/dist/Atomic/UI/Table/Partials/TdRow.js +53 -29
  127. package/dist/Atomic/UI/Table/Partials/TdTitle.js +28 -15
  128. package/dist/Atomic/UI/Table/Table.js +36 -27
  129. package/dist/Atomic/UI/Table/TdTypes/TdActions.js +32 -18
  130. package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +10 -8
  131. package/dist/Atomic/UI/Table/TdTypes/TdRange.js +2 -4
  132. package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +26 -21
  133. package/dist/Atomic/UI/Tag/Tag.js +72 -52
  134. package/dist/Atomic/UI/TagList/TagList.js +102 -65
  135. package/dist/Atomic/UI/UserBox/UserBox.js +13 -13
  136. package/dist/Atomic/UI/WizardStepper/constructor.js +6 -6
  137. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.js +16 -20
  138. package/dist/Atomic/UI/WizardStepper/ui/StepRow/StepRow.js +25 -27
  139. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.js +27 -22
  140. package/dist/Atomic/UI/WizardStepper/ui/icons.js +41 -39
  141. package/dist/Classes/AbortableFetch.js +393 -311
  142. package/dist/Classes/AnimatedHandler.js +53 -45
  143. package/dist/Classes/RESTAPI/index.js +431 -152
  144. package/dist/Classes/RESTAPI/partials/AbortableFetch.js +400 -320
  145. package/dist/Classes/RESTAPI/partials/ApiBase.js +59 -24
  146. package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +338 -76
  147. package/dist/Classes/RESTAPI/partials/ApiUtils.js +378 -143
  148. package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +375 -159
  149. package/dist/Classes/RESTAPI/partials/Utils.js +128 -87
  150. package/dist/Classes/RESTAPI/partials/_utils.js +388 -116
  151. package/dist/Constants/index.constants.js +7 -7
  152. package/dist/Functions/Portal.js +19 -11
  153. package/dist/Functions/customEventListener.js +7 -5
  154. package/dist/Functions/fieldValueFormatters.js +131 -109
  155. package/dist/Functions/hooks/useFormFieldsChangesManager.js +128 -69
  156. package/dist/Functions/locale/createTranslator.js +21 -11
  157. package/dist/Functions/operations.js +27 -23
  158. package/dist/Functions/presets/inputMaskPreset.js +176 -0
  159. package/dist/Functions/presets/inputMaskPresets.js +17 -17
  160. package/dist/Functions/presets/inputPresets.js +15 -15
  161. package/dist/Functions/presets/mobileKeyboardTypesPresets.js +3 -3
  162. package/dist/Functions/schemas.js +7 -5
  163. package/dist/Functions/useBodyScrollLock.js +3 -3
  164. package/dist/Functions/useClickOutside.js +3 -3
  165. package/dist/Functions/useDebounce.js +20 -11
  166. package/dist/Functions/useFieldFocus.js +51 -38
  167. package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +46 -36
  168. package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +78 -68
  169. package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +81 -54
  170. package/dist/Functions/useFormTools/functions/General.js +80 -71
  171. package/dist/Functions/useFormTools/functions/RenderFields.js +63 -45
  172. package/dist/Functions/useFormTools/functions/usePrevious.js +2 -2
  173. package/dist/Functions/useFormTools/index.js +467 -314
  174. package/dist/Functions/useInputHighlightError.js +42 -26
  175. package/dist/Functions/useIsMobile.js +29 -11
  176. package/dist/Functions/useKeyPress/useHandleKeyPress.js +8 -9
  177. package/dist/Functions/useKeyPress/useKeyPress.js +26 -17
  178. package/dist/Functions/useLocalStorage.js +13 -6
  179. package/dist/Functions/useLocationParams.js +24 -14
  180. package/dist/Functions/useMediaQuery.js +18 -7
  181. package/dist/Functions/useMetaInfo.js +40 -16
  182. package/dist/Functions/useMouseUpOutside.js +2 -2
  183. package/dist/Functions/useOnlineStatus.js +17 -6
  184. package/dist/Functions/usePasswordChecker.js +61 -42
  185. package/dist/Functions/usePrevious.js +2 -2
  186. package/dist/Functions/useResize.js +24 -12
  187. package/dist/Functions/useScrollTo.js +13 -4
  188. package/dist/Functions/useToggle.js +25 -9
  189. package/dist/Functions/utils.js +272 -147
  190. package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +27 -23
  191. package/dist/Molecular/CustomIcons/components/AlertCircle.js +27 -23
  192. package/dist/Molecular/CustomIcons/components/AppStore.js +31 -27
  193. package/dist/Molecular/CustomIcons/components/Arrow.js +37 -33
  194. package/dist/Molecular/CustomIcons/components/ArrowDown.js +19 -15
  195. package/dist/Molecular/CustomIcons/components/ArrowLeft.js +22 -18
  196. package/dist/Molecular/CustomIcons/components/ArrowRight.js +22 -18
  197. package/dist/Molecular/CustomIcons/components/ArrowUp.js +19 -15
  198. package/dist/Molecular/CustomIcons/components/Bell.js +17 -13
  199. package/dist/Molecular/CustomIcons/components/Button.js +17 -13
  200. package/dist/Molecular/CustomIcons/components/Campaigns.js +18 -14
  201. package/dist/Molecular/CustomIcons/components/Check.js +18 -14
  202. package/dist/Molecular/CustomIcons/components/Check2.js +17 -13
  203. package/dist/Molecular/CustomIcons/components/ChevronDown.js +17 -13
  204. package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +17 -13
  205. package/dist/Molecular/CustomIcons/components/ChevronLeft.js +17 -13
  206. package/dist/Molecular/CustomIcons/components/ChevronRight.js +17 -13
  207. package/dist/Molecular/CustomIcons/components/ChevronUp.js +17 -13
  208. package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +32 -28
  209. package/dist/Molecular/CustomIcons/components/Close.js +19 -15
  210. package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +44 -40
  211. package/dist/Molecular/CustomIcons/components/Delete.js +18 -14
  212. package/dist/Molecular/CustomIcons/components/Edit.js +17 -13
  213. package/dist/Molecular/CustomIcons/components/Email.js +35 -31
  214. package/dist/Molecular/CustomIcons/components/FinturfLogo.js +25 -21
  215. package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +33 -29
  216. package/dist/Molecular/CustomIcons/components/Flows.js +17 -13
  217. package/dist/Molecular/CustomIcons/components/Gift.js +22 -18
  218. package/dist/Molecular/CustomIcons/components/GoogleAuth.js +31 -27
  219. package/dist/Molecular/CustomIcons/components/GooglePlay.js +31 -27
  220. package/dist/Molecular/CustomIcons/components/HelpCircle.js +20 -16
  221. package/dist/Molecular/CustomIcons/components/HelpCircle2.js +21 -17
  222. package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +20 -16
  223. package/dist/Molecular/CustomIcons/components/Home.js +20 -16
  224. package/dist/Molecular/CustomIcons/components/Home2.js +23 -19
  225. package/dist/Molecular/CustomIcons/components/Key.js +25 -21
  226. package/dist/Molecular/CustomIcons/components/Landers.js +21 -17
  227. package/dist/Molecular/CustomIcons/components/Lock.js +17 -13
  228. package/dist/Molecular/CustomIcons/components/Mail.js +25 -21
  229. package/dist/Molecular/CustomIcons/components/Mastercard.js +65 -61
  230. package/dist/Molecular/CustomIcons/components/Minus.js +30 -26
  231. package/dist/Molecular/CustomIcons/components/Offers.js +18 -14
  232. package/dist/Molecular/CustomIcons/components/Pause.js +30 -26
  233. package/dist/Molecular/CustomIcons/components/PayPal.js +44 -40
  234. package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +31 -27
  235. package/dist/Molecular/CustomIcons/components/Phone.js +32 -28
  236. package/dist/Molecular/CustomIcons/components/Play.js +30 -26
  237. package/dist/Molecular/CustomIcons/components/Plus.js +30 -26
  238. package/dist/Molecular/CustomIcons/components/Profile.js +22 -18
  239. package/dist/Molecular/CustomIcons/components/QRCode.js +32 -28
  240. package/dist/Molecular/CustomIcons/components/Rectangle.js +17 -13
  241. package/dist/Molecular/CustomIcons/components/Revert.js +20 -16
  242. package/dist/Molecular/CustomIcons/components/Star.js +14 -10
  243. package/dist/Molecular/CustomIcons/components/Star2.js +18 -14
  244. package/dist/Molecular/CustomIcons/components/TrafficSources.js +20 -16
  245. package/dist/Molecular/CustomIcons/components/Trash.js +17 -13
  246. package/dist/Molecular/CustomIcons/components/TrashRed.js +17 -13
  247. package/dist/Molecular/CustomIcons/components/Triggers.js +17 -13
  248. package/dist/Molecular/CustomIcons/components/User.js +22 -18
  249. package/dist/Molecular/CustomIcons/components/Visa.js +33 -29
  250. package/dist/Molecular/CustomIcons/components/X.js +17 -13
  251. package/dist/Molecular/CustomIcons/index.js +61 -61
  252. package/dist/Molecular/FormElement/FormElement.js +17 -19
  253. package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +93 -73
  254. package/dist/Molecular/FormWithDependOn/partials/_utils.js +27 -28
  255. package/dist/Molecular/InputAddress/InputAddress.js +213 -126
  256. package/dist/Molecular/InputPassword/InputPassword.js +23 -13
  257. package/dist/index.js +1 -1
  258. package/package.json +1 -1
@@ -2,11 +2,21 @@
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
4
 
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
6
+
5
7
  Object.defineProperty(exports, "__esModule", {
6
8
  value: true
7
9
  });
8
10
  exports.default = void 0;
9
11
 
12
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
+
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
15
+
16
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
17
+
18
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
19
+
10
20
  var _react = _interopRequireWildcard(require("react"));
11
21
 
12
22
  var _classnames = _interopRequireDefault(require("classnames"));
@@ -19,21 +29,48 @@ var _FileLoaderLocal = _interopRequireDefault(require("../FileLoaderLocal/FileLo
19
29
 
20
30
  require("./FileLoaderDescription.scss");
21
31
 
22
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
32
+ var _excluded = ["id", "testId", "fieldKey", "className", "onChange", "filesDescription", "documentName", "accordionTitle", "accordionListContent", "maxFilesCount", "isWithoutAccordion"];
23
33
 
24
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
34
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
25
35
 
26
- const MAX_FILE_SIZE = 10 * 1024 * 1024;
27
- const ACCEPT_EXTENSIONS_DEFAULT = ".jpg, .jpeg, .png, .pdf";
28
- const RC = "file-loader-description";
36
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
37
+
38
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
39
+
40
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
41
+
42
+ var RC = "file-loader-description";
43
+ var UPLOAD_TRIGGER_KEY = 'uploadTrigger';
44
+ var MAX_FILE_SIZE = 10 * 1024 * 1024;
45
+ var ACCEPT_EXTENSIONS_DEFAULT = ".jpg, .jpeg, .png, .pdf";
46
+ var uploadTriggerStucture = {
47
+ id: UPLOAD_TRIGGER_KEY,
48
+ isRequired: true,
49
+ value: "",
50
+ base64: "",
51
+ maxItemSizeBytes: MAX_FILE_SIZE,
52
+ error: "",
53
+ accept: ACCEPT_EXTENSIONS_DEFAULT
54
+ };
55
+
56
+ var getStructure = function getStructure(data) {
57
+ return _objectSpread({
58
+ value: "",
59
+ base64: "",
60
+ maxItemSizeBytes: MAX_FILE_SIZE,
61
+ error: "",
62
+ isRequired: false,
63
+ accept: ACCEPT_EXTENSIONS_DEFAULT
64
+ }, data);
65
+ };
29
66
 
30
- const accordionData = (accordionTitle, accordionListContent) => {
67
+ var accordionData = function accordionData(accordionTitle, accordionListContent) {
31
68
  return /*#__PURE__*/_react.default.createElement("div", null, /*#__PURE__*/_react.default.createElement("div", {
32
69
  testId: "accordion-title",
33
70
  className: "".concat(RC, "__accordion-title")
34
71
  }, accordionTitle), /*#__PURE__*/_react.default.createElement("div", {
35
72
  className: "".concat(RC, "__list")
36
- }, accordionListContent === null || accordionListContent === void 0 ? void 0 : accordionListContent.map(item => {
73
+ }, accordionListContent === null || accordionListContent === void 0 ? void 0 : accordionListContent.map(function (item) {
37
74
  return /*#__PURE__*/_react.default.createElement("div", {
38
75
  key: item === null || item === void 0 ? void 0 : item.title,
39
76
  className: "".concat(RC, "__list-row")
@@ -47,43 +84,44 @@ const accordionData = (accordionTitle, accordionListContent) => {
47
84
  })));
48
85
  };
49
86
 
50
- const FileLoaderDescription = _ref => {
51
- let {
52
- fieldKey,
53
- testId,
54
- className,
55
- onChange,
56
- filesDescription = "Documents must be less than 10MB and must be in PDF, JPG, JPEG or PNG format.",
57
- documentName = "Document name",
58
- accordionTitle = "There is a list of documents that we accept:",
59
- accordionListContent = [],
60
- ...props
61
- } = _ref;
62
- const [fields, setFields] = (0, _react.useState)([{
63
- id: 1,
64
- value: "",
65
- base64: "",
66
- maxItemSizeBytes: MAX_FILE_SIZE,
67
- error: "",
68
- isRequired: false,
69
- accept: ACCEPT_EXTENSIONS_DEFAULT
70
- }]);
71
- const uploadFieldTemplate = {
72
- id: Number(fields.at(-1).id) + 1,
73
- isRequired: true,
74
- value: "",
75
- base64: "",
76
- maxItemSizeBytes: MAX_FILE_SIZE,
77
- error: "",
78
- accept: ACCEPT_EXTENSIONS_DEFAULT
79
- };
80
-
81
- const generateUniqueFileName = (files, name) => {
82
- let fileName = name;
83
- const [nameWithoutExtension, extension] = name.split(/(?=\.[^.]+$)/);
84
- let count = 1;
85
-
86
- while (files.some(file => file.value === fileName)) {
87
+ var FileLoaderDescription = function FileLoaderDescription(_ref) {
88
+ var id = _ref.id,
89
+ testId = _ref.testId,
90
+ fieldKey = _ref.fieldKey,
91
+ className = _ref.className,
92
+ onChange = _ref.onChange,
93
+ _ref$filesDescription = _ref.filesDescription,
94
+ filesDescription = _ref$filesDescription === void 0 ? "Documents must be less than 10MB and must be in PDF, JPG, JPEG or PNG format." : _ref$filesDescription,
95
+ _ref$documentName = _ref.documentName,
96
+ documentName = _ref$documentName === void 0 ? "Document name" : _ref$documentName,
97
+ _ref$accordionTitle = _ref.accordionTitle,
98
+ accordionTitle = _ref$accordionTitle === void 0 ? "There is a list of documents that we accept:" : _ref$accordionTitle,
99
+ _ref$accordionListCon = _ref.accordionListContent,
100
+ accordionListContent = _ref$accordionListCon === void 0 ? [] : _ref$accordionListCon,
101
+ _ref$maxFilesCount = _ref.maxFilesCount,
102
+ maxFilesCount = _ref$maxFilesCount === void 0 ? 10 : _ref$maxFilesCount,
103
+ isWithoutAccordion = _ref.isWithoutAccordion,
104
+ props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
105
+ var uniqueFileLoaderDescriptionId = "".concat(id || testId || fieldKey || "component-".concat(_utils.uuid === null || _utils.uuid === void 0 ? void 0 : (0, _utils.uuid)()));
106
+
107
+ var _useState = (0, _react.useState)([(0, _utils.clone)(uploadTriggerStucture)]),
108
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
109
+ fields = _useState2[0],
110
+ setFields = _useState2[1];
111
+
112
+ var generateUniqueFileName = function generateUniqueFileName(files, name) {
113
+ var fileName = name;
114
+
115
+ var _name$split = name.split(/(?=\.[^.]+$)/),
116
+ _name$split2 = (0, _slicedToArray2.default)(_name$split, 2),
117
+ nameWithoutExtension = _name$split2[0],
118
+ extension = _name$split2[1];
119
+
120
+ var count = 1;
121
+
122
+ while (files.some(function (file) {
123
+ return file.value === fileName;
124
+ })) {
87
125
  fileName = "".concat(nameWithoutExtension, "(").concat(count, ")").concat(extension);
88
126
  count += 1;
89
127
  }
@@ -91,67 +129,101 @@ const FileLoaderDescription = _ref => {
91
129
  return fileName;
92
130
  };
93
131
 
94
- const handle = {
95
- change: _ref2 => {
96
- let {
97
- name,
98
- id,
99
- error,
100
- file
101
- } = _ref2;
102
- const changedField = fields.find(item => item.id === id);
103
-
104
- if (error) {
105
- changedField.value = name;
106
- changedField.error = error;
107
- setFields([...fields]);
108
- } else if (name && !error) {
109
- const uniqueFileName = generateUniqueFileName(fields, name);
110
- (0, _utils.getBase64)(file).then(result => {
111
- changedField.value = uniqueFileName;
112
- changedField.base64 = result;
113
- changedField.error = "";
114
- setFields([...fields]);
132
+ var handle = {
133
+ checkOverflow: function checkOverflow(fields) {
134
+ var error = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
135
+ return fields.length < maxFilesCount ? [].concat((0, _toConsumableArray2.default)(fields), [_objectSpread(_objectSpread({}, (0, _utils.clone)(uploadTriggerStucture)), {}, {
136
+ error: error
137
+ })]) : fields;
138
+ },
139
+ applyFields: function applyFields(newFields) {
140
+ setFields(handle.checkOverflow(newFields));
141
+ onChange(newFields);
142
+ },
143
+ change: function change(_ref2) {
144
+ var name = _ref2.name,
145
+ id = _ref2.id,
146
+ _ref2$error = _ref2.error,
147
+ error = _ref2$error === void 0 ? '' : _ref2$error,
148
+ file = _ref2.file;
149
+ //? Работаем с филдами БЕЗ плашки добавления
150
+ var output = (0, _utils.clone)(fields).filter(function (item) {
151
+ return item.value && item.base64;
152
+ }).map(function (item) {
153
+ return _objectSpread(_objectSpread({}, item), {}, {
154
+ error: ''
115
155
  });
156
+ });
157
+ var changedField = output.find(function (item) {
158
+ return id.includes(item.id);
159
+ });
160
+
161
+ if (!file) {
162
+ //? Нет файла - значит это экшн удаления
163
+ handle.applyFields(output.filter(function (item) {
164
+ return item.id !== (changedField === null || changedField === void 0 ? void 0 : changedField.id);
165
+ }));
166
+ } else if (error) {
167
+ //? Есть ошибка - не должны менять содержание, только назначить ошибку
168
+ if (changedField) output = output.map(function (item) {
169
+ return id.includes(item.id) ? _objectSpread(_objectSpread({}, item), {}, {
170
+ error: error
171
+ }) : item;
172
+ }); //? Установка в локальный стейт БЕЗ верхнего onChange (файл по итогу НЕ загрузили, НЕ мутируем верхнее велью)
173
+
174
+ setFields(handle.checkOverflow(output, !changedField ? error : null));
116
175
  } else {
117
- const filteredFields = fields.filter(item => item.id !== id);
118
- setFields([...filteredFields]);
176
+ //? Во всех остальных случаях - происходит добавленеи/изменение содержимого
177
+ var uniqueFileName = generateUniqueFileName(output, name);
178
+ var uniqueId = _utils.uuid === null || _utils.uuid === void 0 ? void 0 : (0, _utils.uuid)();
179
+ (0, _utils.getBase64)(file).then(function (result) {
180
+ var newItem = getStructure({
181
+ id: uniqueId,
182
+ value: uniqueFileName,
183
+ base64: result,
184
+ error: ''
185
+ }); //? Либо меняем, либо добавляем
186
+
187
+ output = !!changedField ? output.map(function (item) {
188
+ return item.id === changedField.id ? newItem : item;
189
+ }) : [].concat((0, _toConsumableArray2.default)(output), [newItem]);
190
+ handle.applyFields(output);
191
+ });
119
192
  }
120
193
  }
121
194
  };
122
- (0, _react.useEffect)(() => {
123
- if (fields.every(item => item.value) && fields.length < 10) {
124
- setFields([...fields, uploadFieldTemplate]);
125
- }
126
- }, [fields]);
127
- (0, _react.useEffect)(() => {
128
- onChange === null || onChange === void 0 ? void 0 : onChange(fields.filter(item => item.value && item.base64));
129
- }, [fields]);
130
195
  return /*#__PURE__*/_react.default.createElement("div", {
131
- "data-testid": "".concat(RC, "-").concat(testId),
196
+ id: uniqueFileLoaderDescriptionId,
197
+ testId: uniqueFileLoaderDescriptionId,
198
+ "data-testid": "".concat(RC, "-").concat(uniqueFileLoaderDescriptionId),
132
199
  className: (0, _classnames.default)(RC, className),
133
200
  role: "combobox"
134
201
  }, /*#__PURE__*/_react.default.createElement("span", {
135
202
  title: documentName,
136
203
  className: "".concat(RC, "__title")
137
- }, documentName), /*#__PURE__*/_react.default.createElement(_AccordionText.default, {
204
+ }, documentName), !isWithoutAccordion && /*#__PURE__*/_react.default.createElement(_AccordionText.default, {
138
205
  isForcedAlwaysAccordion: true,
139
206
  className: (0, _classnames.default)("".concat(RC, "__accordion")),
140
207
  text: accordionData(accordionTitle, accordionListContent)
141
208
  }), /*#__PURE__*/_react.default.createElement("span", {
142
209
  className: "".concat(RC, "__file-descr"),
143
210
  title: filesDescription
144
- }, filesDescription), fields.map(field => {
211
+ }, filesDescription), fields.map(function (field) {
145
212
  return /*#__PURE__*/_react.default.createElement(_FileLoaderLocal.default, {
146
213
  className: "".concat(RC, "__list-item"),
147
- key: "".concat(fieldKey !== null && fieldKey !== void 0 ? fieldKey : Date.now(), "/").concat(field.id),
148
- id: field.id,
214
+ key: field.id,
215
+ id: "loader-".concat(uniqueFileLoaderDescriptionId, "-field-").concat(field.id) // key={`${fieldKey ?? Date.now()}/${field.id}`}
216
+ // fieldKey={`${fieldKey ?? Date.now()}/${field.id}`}
217
+ // id={field.id}
218
+ ,
149
219
  error: field.error,
150
220
  label: "Upload document",
151
221
  accept: field.accept,
152
222
  value: field.value,
153
223
  maxItemSizeBytes: field.maxItemSizeBytes,
154
- onChange: value => handle.change(value),
224
+ onChange: function onChange(value) {
225
+ return handle.change(value);
226
+ },
155
227
  isRequired: fields.length <= 1,
156
228
  isNoTrashIcon: false
157
229
  });
@@ -19,32 +19,32 @@ var _utils = require("../../../Functions/utils");
19
19
 
20
20
  require("./FileLoaderLocal.scss");
21
21
 
22
- const MAX_FILE_SIZE = 10 * 1024 * 1024;
23
-
24
- const FileLoaderLocal = _ref => {
25
- let {
26
- groupId,
27
- id,
28
- fieldKey,
29
- label,
30
- error,
31
- isRequired,
32
- accept,
33
- onChange,
34
- className,
35
- value,
36
- isNoTrashIcon = false,
37
- maxItemSizeBytes,
38
- testId,
39
- attributesOfNativeInput = {}
40
- } = _ref;
41
-
42
- const getFileName = value => {
43
- const result = value.match(/[^\\]+$/);
22
+ var MAX_FILE_SIZE = 10 * 1024 * 1024;
23
+
24
+ var FileLoaderLocal = function FileLoaderLocal(_ref) {
25
+ var groupId = _ref.groupId,
26
+ id = _ref.id,
27
+ fieldKey = _ref.fieldKey,
28
+ label = _ref.label,
29
+ error = _ref.error,
30
+ isRequired = _ref.isRequired,
31
+ accept = _ref.accept,
32
+ onChange = _ref.onChange,
33
+ className = _ref.className,
34
+ value = _ref.value,
35
+ _ref$isNoTrashIcon = _ref.isNoTrashIcon,
36
+ isNoTrashIcon = _ref$isNoTrashIcon === void 0 ? false : _ref$isNoTrashIcon,
37
+ maxItemSizeBytes = _ref.maxItemSizeBytes,
38
+ testId = _ref.testId,
39
+ _ref$attributesOfNati = _ref.attributesOfNativeInput,
40
+ attributesOfNativeInput = _ref$attributesOfNati === void 0 ? {} : _ref$attributesOfNati;
41
+
42
+ var getFileName = function getFileName(value) {
43
+ var result = value.match(/[^\\]+$/);
44
44
  return result === null || result === void 0 ? void 0 : result[0];
45
45
  };
46
46
 
47
- const renderRequiredLabel = () => {
47
+ var renderRequiredLabel = function renderRequiredLabel() {
48
48
  if (!value) {
49
49
  if (isRequired) return /*#__PURE__*/_react.default.createElement("div", {
50
50
  className: "file-loader-local--required"
@@ -54,55 +54,55 @@ const FileLoaderLocal = _ref => {
54
54
  }
55
55
  };
56
56
 
57
- const isFileSizeOutOfLimit = file => {
57
+ var isFileSizeOutOfLimit = function isFileSizeOutOfLimit(file) {
58
58
  var _ref2;
59
59
 
60
60
  return (_ref2 = file.size > maxItemSizeBytes) !== null && _ref2 !== void 0 ? _ref2 : MAX_FILE_SIZE;
61
61
  };
62
62
 
63
- const checkExtension = valueExtension => {
63
+ var checkExtension = function checkExtension(valueExtension) {
64
64
  return accept.includes(valueExtension);
65
65
  };
66
66
 
67
- const handle = {
68
- change: e => {
67
+ var handle = {
68
+ change: function change(e) {
69
69
  var _name$match, _e$target, _e$target$files, _e$target2, _e$target2$files;
70
70
 
71
- const name = getFileName(e.target.value);
72
- const valueExtension = name === null || name === void 0 ? void 0 : (_name$match = name.match(/[^\.]+$/)) === null || _name$match === void 0 ? void 0 : _name$match[0];
73
- const file = (_e$target = e.target) === null || _e$target === void 0 ? void 0 : (_e$target$files = _e$target.files) === null || _e$target$files === void 0 ? void 0 : _e$target$files[0];
71
+ var name = getFileName(e.target.value);
72
+ var valueExtension = name === null || name === void 0 ? void 0 : (_name$match = name.match(/[^\.]+$/)) === null || _name$match === void 0 ? void 0 : _name$match[0];
73
+ var file = (_e$target = e.target) === null || _e$target === void 0 ? void 0 : (_e$target$files = _e$target.files) === null || _e$target$files === void 0 ? void 0 : _e$target$files[0];
74
74
 
75
75
  if (isFileSizeOutOfLimit((_e$target2 = e.target) === null || _e$target2 === void 0 ? void 0 : (_e$target2$files = _e$target2.files) === null || _e$target2$files === void 0 ? void 0 : _e$target2$files[0])) {
76
76
  onChange({
77
- id,
78
- name,
79
- valueExtension,
80
- e,
81
- file,
82
- groupId,
77
+ id: id,
78
+ name: name,
79
+ valueExtension: valueExtension,
80
+ e: e,
81
+ file: file,
82
+ groupId: groupId,
83
83
  error: "Max file size is ".concat((0, _utils.renderFileSize)(maxItemSizeBytes))
84
84
  });
85
85
  } else if (!checkExtension(valueExtension)) {
86
86
  var _accept$replace;
87
87
 
88
- const allowedExtensions = (accept === null || accept === void 0 ? void 0 : (_accept$replace = accept.replace(/\./g, "")) === null || _accept$replace === void 0 ? void 0 : _accept$replace.toUpperCase()) || "JPG, PNG, PDF";
89
- const uniqExts = (0, _utils.getUniqueFileExtensions)(allowedExtensions);
88
+ var allowedExtensions = (accept === null || accept === void 0 ? void 0 : (_accept$replace = accept.replace(/\./g, "")) === null || _accept$replace === void 0 ? void 0 : _accept$replace.toUpperCase()) || "JPG, PNG, PDF";
89
+ var uniqExts = (0, _utils.getUniqueFileExtensions)(allowedExtensions);
90
90
  onChange({
91
- id,
92
- groupId,
93
- name,
94
- valueExtension,
95
- e,
96
- file,
91
+ id: id,
92
+ groupId: groupId,
93
+ name: name,
94
+ valueExtension: valueExtension,
95
+ e: e,
96
+ file: file,
97
97
  error: "Only ".concat(uniqExts, " are allowed")
98
98
  });
99
99
  } else onChange({
100
- id,
101
- groupId,
102
- name,
103
- valueExtension,
104
- e,
105
- file
100
+ id: id,
101
+ groupId: groupId,
102
+ name: name,
103
+ valueExtension: valueExtension,
104
+ e: e,
105
+ file: file
106
106
  });
107
107
  }
108
108
  };
@@ -112,14 +112,14 @@ const FileLoaderLocal = _ref => {
112
112
  }, /*#__PURE__*/_react.default.createElement("input", (0, _extends2.default)({
113
113
  onChange: handle.change,
114
114
  className: "file-loader-local__file-input",
115
- id: fieldKey !== null && fieldKey !== void 0 ? fieldKey : "file-input-".concat(id).concat(groupId ? "-".concat(groupId) : ""),
115
+ id: fieldKey || "file-input-".concat(id).concat(groupId ? "-".concat(groupId) : ""),
116
116
  type: "file",
117
- name: fieldKey !== null && fieldKey !== void 0 ? fieldKey : id,
117
+ name: fieldKey || id,
118
118
  required: isRequired,
119
119
  accept: accept
120
120
  }, attributesOfNativeInput)), /*#__PURE__*/_react.default.createElement("label", {
121
121
  className: "file-loader-local__label-box",
122
- htmlFor: fieldKey !== null && fieldKey !== void 0 ? fieldKey : "file-input-".concat(id).concat(groupId ? "-".concat(groupId) : "")
122
+ htmlFor: fieldKey || "file-input-".concat(id).concat(groupId ? "-".concat(groupId) : "")
123
123
  }, !value && /*#__PURE__*/_react.default.createElement(_reactFeather.Download, {
124
124
  className: "file-loader-local__upload-icon"
125
125
  }), value && /*#__PURE__*/_react.default.createElement(_reactFeather.Paperclip, {
@@ -137,10 +137,12 @@ const FileLoaderLocal = _ref => {
137
137
  className: "file-loader-local__error"
138
138
  }, error))), value && !isNoTrashIcon && /*#__PURE__*/_react.default.createElement(_reactFeather.Trash2, {
139
139
  className: "file-loader-local__trash-icon",
140
- onClick: () => onChange({
141
- id,
142
- groupId
143
- })
140
+ onClick: function onClick() {
141
+ return onChange({
142
+ id: id,
143
+ groupId: groupId
144
+ });
145
+ }
144
146
  }), renderRequiredLabel()));
145
147
  };
146
148