intelicoreact 1.3.16 → 1.3.18

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 (252) hide show
  1. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.js +15 -23
  2. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +15 -23
  3. package/dist/Atomic/FormElements/Calendar/Calendar.js +69 -124
  4. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +27 -36
  5. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +23 -39
  6. package/dist/Atomic/FormElements/Datepicker/Datepicker.js +110 -246
  7. package/dist/Atomic/FormElements/Datepicker/components/Calendar.js +44 -85
  8. package/dist/Atomic/FormElements/Dropdown/Dropdown.js +246 -414
  9. package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +5 -9
  10. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +93 -165
  11. package/dist/Atomic/FormElements/FileLoader/FileLoader.js +39 -64
  12. package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +51 -132
  13. package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +34 -73
  14. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +54 -75
  15. package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +67 -110
  16. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +33 -83
  17. package/dist/Atomic/FormElements/Input/Input.js +161 -253
  18. package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +48 -102
  19. package/dist/Atomic/FormElements/InputColor/InputColor.js +27 -40
  20. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +28 -58
  21. package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +108 -176
  22. package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +32 -57
  23. package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +184 -302
  24. package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +85 -157
  25. package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +11 -16
  26. package/dist/Atomic/FormElements/InputDateRange/dependencies.js +76 -193
  27. package/dist/Atomic/FormElements/InputLink/InputLink.js +34 -58
  28. package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +8 -12
  29. package/dist/Atomic/FormElements/InputMask/InputMask.js +554 -964
  30. package/dist/Atomic/FormElements/InputMask/config.js +1 -1
  31. package/dist/Atomic/FormElements/InputMask/functions.js +17 -43
  32. package/dist/Atomic/FormElements/InputMask2/InputMask2.js +268 -404
  33. package/dist/Atomic/FormElements/InputMask2/config.js +1 -1
  34. package/dist/Atomic/FormElements/InputMask2/functions.js +17 -43
  35. package/dist/Atomic/FormElements/InputMask3/InputMask3.js +299 -459
  36. package/dist/Atomic/FormElements/InputMask3/config.js +1 -1
  37. package/dist/Atomic/FormElements/InputMask3/functions.js +17 -43
  38. package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +53 -113
  39. package/dist/Atomic/FormElements/InputsRow/InputsRow.js +64 -118
  40. package/dist/Atomic/FormElements/Label/Label.js +13 -23
  41. package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +217 -349
  42. package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +25 -47
  43. package/dist/Atomic/FormElements/NumericInput/NumericInput.js +133 -207
  44. package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +29 -61
  45. package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +20 -42
  46. package/dist/Atomic/FormElements/RadioInput/RadioInput.js +22 -33
  47. package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +20 -43
  48. package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +54 -101
  49. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +59 -102
  50. package/dist/Atomic/FormElements/RangeList/RangeList.js +89 -150
  51. package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +23 -29
  52. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +135 -300
  53. package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +381 -571
  54. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +14 -24
  55. package/dist/Atomic/FormElements/Switcher/Switcher.js +24 -29
  56. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +25 -47
  57. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +20 -32
  58. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +32 -55
  59. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +22 -42
  60. package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +23 -33
  61. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +51 -120
  62. package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +2 -3
  63. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +23 -46
  64. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +251 -409
  65. package/dist/Atomic/FormElements/Text/Text.js +47 -53
  66. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +21 -31
  67. package/dist/Atomic/FormElements/Textarea/Textarea.js +16 -27
  68. package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +68 -128
  69. package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +25 -36
  70. package/dist/Atomic/FormElements/TimeRange/TimeRange.js +33 -70
  71. package/dist/Atomic/FormElements/UserContacts/UserContacts.js +58 -124
  72. package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +48 -80
  73. package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +32 -42
  74. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +40 -60
  75. package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +2 -3
  76. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +50 -69
  77. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +3 -3
  78. package/dist/Atomic/Layout/Header/Header.js +21 -48
  79. package/dist/Atomic/Layout/MainMenu/MainMenu.js +36 -79
  80. package/dist/Atomic/Layout/Spinner/Spinner.js +8 -14
  81. package/dist/Atomic/UI/Accordion/Accordion.js +18 -48
  82. package/dist/Atomic/UI/Accordion/AccordionItem.js +35 -60
  83. package/dist/Atomic/UI/AccordionTable/AccordionTable.js +49 -106
  84. package/dist/Atomic/UI/AccordionText/AccordionText.js +13 -37
  85. package/dist/Atomic/UI/AdvancedTag/AdvTag.js +48 -94
  86. package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +22 -50
  87. package/dist/Atomic/UI/Alert/Alert.js +20 -44
  88. package/dist/Atomic/UI/Arrow/Arrow.js +15 -35
  89. package/dist/Atomic/UI/Box/Box.js +14 -21
  90. package/dist/Atomic/UI/Button/Button.js +26 -35
  91. package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +22 -31
  92. package/dist/Atomic/UI/Chart/Chart.js +45 -86
  93. package/dist/Atomic/UI/Chart/partial/Chart.constants.js +14 -24
  94. package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +13 -22
  95. package/dist/Atomic/UI/Chart/partial/datasetSetters.js +68 -113
  96. package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +158 -140
  97. package/dist/Atomic/UI/Chart/partial/optionsSetters.js +26 -42
  98. package/dist/Atomic/UI/Chart/partial/utils.js +20 -48
  99. package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +22 -42
  100. package/dist/Atomic/UI/DateTime/DateTime.js +23 -38
  101. package/dist/Atomic/UI/DebugContainer/DebugContainer.js +12 -36
  102. package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +5 -21
  103. package/dist/Atomic/UI/DoubleString/DoubleString.js +27 -50
  104. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +15 -63
  105. package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +62 -157
  106. package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +47 -110
  107. package/dist/Atomic/UI/Hint/Hint.js +49 -94
  108. package/dist/Atomic/UI/Modal/Modal.js +149 -179
  109. package/dist/Atomic/UI/Modal/ModalHOC.js +12 -21
  110. package/dist/Atomic/UI/Modal/partials/ModalFooter.js +7 -12
  111. package/dist/Atomic/UI/Modal/partials/ModalTitle.js +17 -21
  112. package/dist/Atomic/UI/Modal/partials/useMobileModal.js +93 -151
  113. package/dist/Atomic/UI/ModalBackup/Modal.js +65 -90
  114. package/dist/Atomic/UI/ModalBackup/ModalHOC.js +12 -21
  115. package/dist/Atomic/UI/ModalBackup/partials/ModalFooter.js +6 -11
  116. package/dist/Atomic/UI/ModalBackup/partials/ModalTitle.js +15 -19
  117. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +32 -62
  118. package/dist/Atomic/UI/NavLine/NavLine.js +120 -211
  119. package/dist/Atomic/UI/NavLine/Tabs.js +2 -3
  120. package/dist/Atomic/UI/PageTitle/PageTitle.js +13 -17
  121. package/dist/Atomic/UI/PieChart/PieChart.js +11 -21
  122. package/dist/Atomic/UI/Price/Price.js +10 -13
  123. package/dist/Atomic/UI/PriceRange/PriceRange.js +7 -11
  124. package/dist/Atomic/UI/ProgressLine/ProgressLine.js +27 -56
  125. package/dist/Atomic/UI/Status/Status.js +19 -30
  126. package/dist/Atomic/UI/Table/Partials/TdCell.js +28 -71
  127. package/dist/Atomic/UI/Table/Partials/TdHeader.js +7 -16
  128. package/dist/Atomic/UI/Table/Partials/TdRow.js +29 -65
  129. package/dist/Atomic/UI/Table/Partials/TdTitle.js +16 -40
  130. package/dist/Atomic/UI/Table/Table.js +27 -47
  131. package/dist/Atomic/UI/Table/TdTypes/TdActions.js +18 -48
  132. package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +9 -19
  133. package/dist/Atomic/UI/Table/TdTypes/TdRange.js +5 -8
  134. package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +25 -47
  135. package/dist/Atomic/UI/Tag/Tag.js +20 -48
  136. package/dist/Atomic/UI/TagList/TagList.js +80 -150
  137. package/dist/Atomic/UI/UserBox/UserBox.js +14 -26
  138. package/dist/Classes/AbortableFetch.js +283 -422
  139. package/dist/Classes/AnimatedHandler.js +44 -56
  140. package/dist/Classes/RESTAPI/index.js +154 -433
  141. package/dist/Classes/RESTAPI/partials/AbortableFetch.js +290 -428
  142. package/dist/Classes/RESTAPI/partials/ApiBase.js +24 -67
  143. package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +57 -275
  144. package/dist/Classes/RESTAPI/partials/ApiUtils.js +146 -377
  145. package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +155 -403
  146. package/dist/Classes/RESTAPI/partials/Utils.js +81 -135
  147. package/dist/Classes/RESTAPI/partials/_outerDependencies.js +2 -6
  148. package/dist/Classes/RESTAPI/partials/_utils.js +101 -395
  149. package/dist/Constants/index.constants.js +8 -15
  150. package/dist/Functions/Portal.js +14 -33
  151. package/dist/Functions/customEventListener.js +5 -20
  152. package/dist/Functions/fieldValueFormatters.js +148 -211
  153. package/dist/Functions/hooks/useFormFieldsChangesManager.js +75 -137
  154. package/dist/Functions/locale/createTranslator.js +13 -27
  155. package/dist/Functions/operations.js +35 -49
  156. package/dist/Functions/presets/inputMaskPresets.js +25 -27
  157. package/dist/Functions/presets/inputPresets.js +19 -22
  158. package/dist/Functions/presets/mobileKeyboardTypesPresets.js +7 -9
  159. package/dist/Functions/schemas.js +6 -15
  160. package/dist/Functions/useClickOutside.js +3 -7
  161. package/dist/Functions/useDebounce.js +11 -25
  162. package/dist/Functions/useFieldFocus.js +42 -67
  163. package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +35 -54
  164. package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +74 -95
  165. package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +55 -91
  166. package/dist/Functions/useFormTools/functions/General.js +80 -99
  167. package/dist/Functions/useFormTools/functions/RenderFields.js +45 -72
  168. package/dist/Functions/useFormTools/functions/usePrevious.js +3 -7
  169. package/dist/Functions/useFormTools/index.js +382 -598
  170. package/dist/Functions/useInputHighlightError.js +27 -52
  171. package/dist/Functions/useIsMobile.js +13 -36
  172. package/dist/Functions/useLocalStorage.js +7 -22
  173. package/dist/Functions/useLocationParams.js +16 -27
  174. package/dist/Functions/useMetaInfo.js +19 -50
  175. package/dist/Functions/useMouseUpOutside.js +2 -5
  176. package/dist/Functions/useOnlineStatus.js +7 -26
  177. package/dist/Functions/usePasswordChecker.js +42 -77
  178. package/dist/Functions/usePrevious.js +3 -7
  179. package/dist/Functions/useResize.js +12 -32
  180. package/dist/Functions/useScrollTo.js +6 -20
  181. package/dist/Functions/useToggle.js +10 -30
  182. package/dist/Functions/utils.js +186 -366
  183. package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +21 -32
  184. package/dist/Molecular/CustomIcons/components/AlertCircle.js +21 -32
  185. package/dist/Molecular/CustomIcons/components/AppStore.js +25 -36
  186. package/dist/Molecular/CustomIcons/components/Arrow.js +31 -42
  187. package/dist/Molecular/CustomIcons/components/ArrowDown.js +13 -24
  188. package/dist/Molecular/CustomIcons/components/ArrowLeft.js +16 -27
  189. package/dist/Molecular/CustomIcons/components/ArrowRight.js +16 -27
  190. package/dist/Molecular/CustomIcons/components/ArrowUp.js +13 -24
  191. package/dist/Molecular/CustomIcons/components/Bell.js +11 -22
  192. package/dist/Molecular/CustomIcons/components/Button.js +11 -22
  193. package/dist/Molecular/CustomIcons/components/Campaigns.js +12 -23
  194. package/dist/Molecular/CustomIcons/components/Check.js +12 -23
  195. package/dist/Molecular/CustomIcons/components/Check2.js +11 -22
  196. package/dist/Molecular/CustomIcons/components/ChevronDown.js +11 -22
  197. package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +11 -22
  198. package/dist/Molecular/CustomIcons/components/ChevronLeft.js +11 -22
  199. package/dist/Molecular/CustomIcons/components/ChevronRight.js +11 -22
  200. package/dist/Molecular/CustomIcons/components/ChevronUp.js +11 -22
  201. package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +26 -37
  202. package/dist/Molecular/CustomIcons/components/Close.js +13 -24
  203. package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +38 -49
  204. package/dist/Molecular/CustomIcons/components/Delete.js +12 -23
  205. package/dist/Molecular/CustomIcons/components/Edit.js +11 -22
  206. package/dist/Molecular/CustomIcons/components/Email.js +29 -40
  207. package/dist/Molecular/CustomIcons/components/FinturfLogo.js +19 -30
  208. package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +27 -38
  209. package/dist/Molecular/CustomIcons/components/Flows.js +11 -22
  210. package/dist/Molecular/CustomIcons/components/Gift.js +16 -27
  211. package/dist/Molecular/CustomIcons/components/GoogleAuth.js +25 -36
  212. package/dist/Molecular/CustomIcons/components/GooglePlay.js +25 -36
  213. package/dist/Molecular/CustomIcons/components/HelpCircle.js +14 -25
  214. package/dist/Molecular/CustomIcons/components/HelpCircle2.js +15 -26
  215. package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +14 -25
  216. package/dist/Molecular/CustomIcons/components/Home.js +14 -25
  217. package/dist/Molecular/CustomIcons/components/Home2.js +17 -28
  218. package/dist/Molecular/CustomIcons/components/Key.js +19 -30
  219. package/dist/Molecular/CustomIcons/components/Landers.js +15 -26
  220. package/dist/Molecular/CustomIcons/components/Lock.js +11 -22
  221. package/dist/Molecular/CustomIcons/components/Mail.js +19 -30
  222. package/dist/Molecular/CustomIcons/components/Mastercard.js +61 -72
  223. package/dist/Molecular/CustomIcons/components/Minus.js +24 -35
  224. package/dist/Molecular/CustomIcons/components/Offers.js +12 -23
  225. package/dist/Molecular/CustomIcons/components/Pause.js +24 -35
  226. package/dist/Molecular/CustomIcons/components/PayPal.js +38 -49
  227. package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +25 -36
  228. package/dist/Molecular/CustomIcons/components/Phone.js +26 -37
  229. package/dist/Molecular/CustomIcons/components/Play.js +24 -35
  230. package/dist/Molecular/CustomIcons/components/Plus.js +24 -35
  231. package/dist/Molecular/CustomIcons/components/Profile.js +16 -27
  232. package/dist/Molecular/CustomIcons/components/QRCode.js +26 -37
  233. package/dist/Molecular/CustomIcons/components/Rectangle.js +11 -22
  234. package/dist/Molecular/CustomIcons/components/Revert.js +14 -25
  235. package/dist/Molecular/CustomIcons/components/Star.js +10 -21
  236. package/dist/Molecular/CustomIcons/components/Star2.js +12 -23
  237. package/dist/Molecular/CustomIcons/components/TrafficSources.js +14 -25
  238. package/dist/Molecular/CustomIcons/components/Trash.js +11 -22
  239. package/dist/Molecular/CustomIcons/components/TrashRed.js +11 -22
  240. package/dist/Molecular/CustomIcons/components/Triggers.js +11 -22
  241. package/dist/Molecular/CustomIcons/components/User.js +16 -27
  242. package/dist/Molecular/CustomIcons/components/Visa.js +27 -38
  243. package/dist/Molecular/CustomIcons/components/X.js +11 -22
  244. package/dist/Molecular/CustomIcons/index.js +61 -183
  245. package/dist/Molecular/FormElement/FormElement.js +18 -27
  246. package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +151 -0
  247. package/dist/Molecular/FormWithDependOn/partials/_utils.js +56 -0
  248. package/dist/Molecular/InputAddress/InputAddress.js +176 -312
  249. package/dist/Molecular/InputPassword/InputPassword.js +15 -39
  250. package/dist/index.js +1 -3
  251. package/package.json +1 -1
  252. package/dist/Atomic/FormElements/UserContacts/partial/defaultIcons.js +0 -91
@@ -1,39 +1,30 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
-
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
7
  exports.default = void 0;
9
-
10
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
-
12
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
-
14
9
  var _react = _interopRequireDefault(require("react"));
15
-
16
10
  var _classnames = _interopRequireDefault(require("classnames"));
17
-
18
11
  var _Label = _interopRequireDefault(require("../../Atomic/FormElements/Label/Label"));
19
-
20
12
  var _Alert = _interopRequireDefault(require("./../../Atomic/UI/Alert/Alert"));
21
-
22
13
  require("./FormElement.scss");
23
-
24
- var RC = 'form-element';
25
-
26
- var FormElement = function FormElement(_ref) {
27
- var label = _ref.label,
28
- required = _ref.required,
29
- children = _ref.children,
30
- error = _ref.error,
31
- className = _ref.className,
32
- hint = _ref.hint,
33
- isLabelBolt = _ref.isLabelBolt,
34
- isNoLabel = _ref.isNoLabel,
35
- alert = _ref.alert,
36
- onClickHintCallback = _ref.onClickHintCallback;
14
+ const RC = 'form-element';
15
+ const FormElement = _ref => {
16
+ let {
17
+ label,
18
+ required,
19
+ children,
20
+ error,
21
+ className,
22
+ hint,
23
+ isLabelBolt,
24
+ isNoLabel,
25
+ alert,
26
+ onClickHintCallback
27
+ } = _ref;
37
28
  return /*#__PURE__*/_react.default.createElement("div", {
38
29
  className: (0, _classnames.default)(className, RC)
39
30
  }, label && !isNoLabel && /*#__PURE__*/_react.default.createElement(_Label.default, {
@@ -44,11 +35,11 @@ var FormElement = function FormElement(_ref) {
44
35
  isLabelBolt: isLabelBolt,
45
36
  onClickHintCallback: onClickHintCallback
46
37
  }), children, error && /*#__PURE__*/_react.default.createElement("span", {
47
- className: (0, _classnames.default)("".concat(RC, "__error"), (0, _defineProperty2.default)({}, "".concat(RC, "__error--with-alert"), alert))
38
+ className: (0, _classnames.default)("".concat(RC, "__error"), {
39
+ ["".concat(RC, "__error--with-alert")]: alert
40
+ })
48
41
  }, error), alert && /*#__PURE__*/_react.default.createElement(_Alert.default, (0, _extends2.default)({
49
42
  className: "".concat(RC, "__alert")
50
43
  }, alert)));
51
44
  };
52
-
53
- var _default = FormElement;
54
- exports.default = _default;
45
+ var _default = exports.default = FormElement;
@@ -0,0 +1,151 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
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");
12
+ var _useFormFieldsChangesManager = _interopRequireDefault(require("../../Functions/hooks/useFormFieldsChangesManager"));
13
+ var _utils2 = require("./partials/_utils");
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 && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
+ // global
17
+
18
+ // local functions
19
+
20
+ const RC = 'form-with-depend-on';
21
+ const FormWithDependOn = /*#__PURE__*/_react.default.forwardRef((_ref, ref) => {
22
+ let {
23
+ form,
24
+ formId,
25
+ setForm,
26
+ onChange,
27
+ renderField,
28
+ getAnotherActions,
29
+ className,
30
+ isInitializeByDependOn,
31
+ isFormDisabled,
32
+ typeOfUse = 'default'
33
+ } = _ref;
34
+ // ? Прихраниваем состояние формы на момент входа
35
+ const [initialForm] = (0, _react.useState)((0, _utils.clone)(form));
36
+ const safelySetForm = typeof setForm === 'function' ? setForm : () => {};
37
+ const safelyOnChange = typeof onChange === 'function' ? onChange : () => {};
38
+ const {
39
+ assignChangesToField
40
+ } = (0, _useFormFieldsChangesManager.default)({
41
+ form: Array.isArray(form) ? form : [],
42
+ setForm: safelySetForm
43
+ });
44
+ const assign = assignChangesToField;
45
+
46
+ // ***** handlers *****
47
+
48
+ const anotherActions = typeof getAnotherActions === 'function' ? getAnotherActions({
49
+ setForm,
50
+ assign
51
+ }) : {};
52
+ const getMainOfAdditional = onChange => ({
53
+ onChange,
54
+ setForm: safelySetForm,
55
+ assign,
56
+ initialForm,
57
+ actions: anotherActions,
58
+ typeOfUse
59
+ });
60
+ const startDependOn = (0, _utils2.getDependOnStarter)({
61
+ assign
62
+ });
63
+
64
+ // ? Местный handleChange добавляет логику dependOn к верхнему onChange,
65
+ // ? а так же запускает прочие экшены, из объекта методов, возвращаемым getAnotherActions
66
+ const handleChange = (newValue, fieldKey, propKey, additionalOfOnChange) => {
67
+ const {
68
+ updatedForm = null,
69
+ isMakeChangesAnyway = false
70
+ } = (0, _utils.getIsOnlyAnObject)(additionalOfOnChange) ? additionalOfOnChange : {};
71
+ const currentForm = (0, _utils.clone)(Array.isArray(updatedForm) ? updatedForm : form);
72
+ const currField = (0, _utils.clone)(currentForm.find(field => field.key === fieldKey));
73
+
74
+ // ? Защита от дублирующих вызовов onChange снизу
75
+ // ? "Если newValue такое же как уже есть и нет флага "применять изменения всегда""
76
+ // ! (*) - Важно !
77
+ // ! Отключайте прямую мутацию на уровне проектного FormItem (в каждом филде указать isNotUseInnerHandler: true)
78
+ // ! т.к. тот хендлер запускатся раньше и сюда филд доходит с измененным значением,
79
+ // ! а значит не пройдет эту if-ку
80
+ if (currField[propKey || 'value'] === newValue && !isMakeChangesAnyway) return;
81
+
82
+ // ? Сразу же мутируем
83
+ safelyOnChange(newValue, fieldKey, propKey, additionalOfOnChange);
84
+
85
+ // ? Механика dependOn (обработка зависимостей)
86
+ // ? В текущей реализации отделил от экшена all.
87
+
88
+ startDependOn({
89
+ newValue,
90
+ fieldKey,
91
+ propKey,
92
+ field: currField,
93
+ form: currentForm,
94
+ additional: getMainOfAdditional(handleChange)
95
+ });
96
+
97
+ // ? Если в объекте методов возвращаемом getAnotherActions есть метод all, то он запускается отдельно
98
+ if (typeof anotherActions.all === 'function') {
99
+ anotherActions.all({
100
+ newValue,
101
+ fieldKey,
102
+ propKey,
103
+ field: currField,
104
+ form: currentForm,
105
+ additional: getMainOfAdditional(handleChange)
106
+ });
107
+ }
108
+ if (fieldKey in anotherActions && typeof anotherActions[fieldKey] === 'function') {
109
+ let postChanges = anotherActions[fieldKey]({
110
+ newValue,
111
+ fieldKey,
112
+ propKey,
113
+ field: currField,
114
+ form: currentForm,
115
+ additional: getMainOfAdditional(handleChange)
116
+ });
117
+ if (postChanges) assign(postChanges, fieldKey);
118
+ }
119
+ };
120
+
121
+ // ***** useEffects *****
122
+
123
+ (0, _react.useEffect)(() => {
124
+ if (isInitializeByDependOn && typeof setForm === 'function' && typeof onChange === 'function') form.forEach(field => {
125
+ startDependOn({
126
+ newValue: field.value,
127
+ fieldKey: field.key,
128
+ field,
129
+ form,
130
+ additional: {
131
+ ...getMainOfAdditional(handleChange),
132
+ isInitilisation: true,
133
+ isInit: false
134
+ }
135
+ });
136
+ });
137
+ }, []);
138
+
139
+ // ***** output *****
140
+ return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
141
+ ref: ref
142
+ }, formId ? {
143
+ id: formId
144
+ } : {}, {
145
+ className: (0, _classnames.default)(RC, className)
146
+ }), typeof renderField === 'function' ? form.map(field => renderField({
147
+ ...getMainOfAdditional(handleChange),
148
+ field
149
+ })) : null);
150
+ });
151
+ var _default = exports.default = FormWithDependOn;
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getDependOnStarter = void 0;
7
+ var _utils = require("../../../Functions/utils");
8
+ const getDependOnStarter = props => {
9
+ const {
10
+ assign
11
+ } = props;
12
+ return _ref => {
13
+ let {
14
+ newValue,
15
+ fieldKey,
16
+ propKey,
17
+ field,
18
+ form,
19
+ additional
20
+ } = _ref;
21
+ if (field.isDominantField) {
22
+ const dependFields = form.filter(f => {
23
+ var _f$dependOn, _f$dependOn$includes;
24
+ return (_f$dependOn = f.dependOn) === null || _f$dependOn === void 0 || (_f$dependOn = _f$dependOn.keys) === null || _f$dependOn === void 0 || (_f$dependOn$includes = _f$dependOn.includes) === null || _f$dependOn$includes === void 0 ? void 0 : _f$dependOn$includes.call(_f$dependOn, fieldKey);
25
+ });
26
+ if (dependFields.length > 0) {
27
+ dependFields.forEach(dependField => {
28
+ var _dependField$dependOn, _dependField$dependOn2;
29
+ // ! Для звисимого филда есть 2 способа назначить обработчик
30
+
31
+ // ? - прописать в объекте dependOn callback, который будет вызываться для каждой зависимости,
32
+ // ? а уже внктри самого колбэка разбираться, для какой имменно зависимости вызван обработчик
33
+
34
+ // ? - прописать в объекте dependOn пропу callbacks, передать в нее объект в формате
35
+ // ? { ... [ключ_доминирующего_поля]: соответствующий_коллбэк, ... }
36
+ // ? таким образом для каждой зависимости будет вызван свой обработчик
37
+ const execute = (_dependField$dependOn = (_dependField$dependOn2 = dependField.dependOn.callbacks) === null || _dependField$dependOn2 === void 0 ? void 0 : _dependField$dependOn2[fieldKey]) !== null && _dependField$dependOn !== void 0 ? _dependField$dependOn : dependField.dependOn.callback;
38
+
39
+ // ? Пытаемся получить объект изменений и если они приходят - назначаем.
40
+ // ? Выбранная конструкция позволяет обрабатывать обычные и асинхронные колбеки вразнобой,
41
+ // ? причем не ожидая выполнения предыдущих
42
+ new Promise(resolve => {
43
+ resolve(execute === null || execute === void 0 ? void 0 : execute({
44
+ ...field,
45
+ [propKey || 'value']: newValue
46
+ }, dependField, form, additional));
47
+ }).then(changes => {
48
+ if ((0, _utils.getIsOnlyAnObject)(changes)) assign(changes, dependField.key);
49
+ return changes;
50
+ }).catch(() => {});
51
+ });
52
+ }
53
+ }
54
+ };
55
+ };
56
+ exports.getDependOnStarter = getDependOnStarter;