intelicoreact 1.8.6 → 1.8.7

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 (225) hide show
  1. package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.jsx +1 -18
  2. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN_old.jsx +1 -121
  3. package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.jsx +1 -507
  4. package/dist/Atomic/FormElements/MultiSelect/MultiSelect.jsx +1 -46
  5. package/dist/Atomic/FormElements/NumericInput/NumericInput.jsx +1 -337
  6. package/dist/Atomic/FormElements/RadioGroup/RadioGroup.jsx +1 -66
  7. package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.jsx +1 -78
  8. package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.jsx +1 -54
  9. package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.jsx +1 -183
  10. package/dist/Atomic/FormElements/RangeList/RangeList.jsx +1 -181
  11. package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.jsx +1 -41
  12. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.jsx +1 -449
  13. package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.jsx +1 -865
  14. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.jsx +1 -37
  15. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.jsx +1 -48
  16. package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.jsx +1 -62
  17. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.jsx +1 -175
  18. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.jsx +1 -65
  19. package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.jsx +1 -118
  20. package/dist/Atomic/FormElements/Text/Text.jsx +1 -126
  21. package/dist/Atomic/FormElements/Textarea/Textarea.jsx +1 -61
  22. package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.jsx +1 -181
  23. package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.jsx +1 -60
  24. package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.jsx +1 -83
  25. package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.jsx +1 -80
  26. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.jsx +1 -103
  27. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.jsx +1 -115
  28. package/dist/Atomic/Layout/Header/Header.jsx +1 -86
  29. package/dist/Atomic/Layout/MainMenu/MainMenu.jsx +1 -164
  30. package/dist/Atomic/UI/AccordionTable/AccordionTable.jsx +1 -250
  31. package/dist/Atomic/UI/AccordionText/AccordionText.jsx +1 -68
  32. package/dist/Atomic/UI/Arrow/Arrow.jsx +1 -134
  33. package/dist/Atomic/UI/Box/Box.jsx +1 -53
  34. package/dist/Atomic/UI/Chart/Chart.jsx +1 -178
  35. package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.jsx +1 -78
  36. package/dist/Atomic/UI/Chart/partial/optionsConstructor.jsx +1 -334
  37. package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.jsx +1 -111
  38. package/dist/Atomic/UI/DateTime/DateTime.jsx +1 -57
  39. package/dist/Atomic/UI/DebugContainer/DebugContainer.jsx +1 -44
  40. package/dist/Atomic/UI/DebugContainer/useDebugContainer.jsx +1 -15
  41. package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.jsx +1 -223
  42. package/dist/Atomic/UI/MonoAccordion/MonoAccordion._test.jsx +1 -75
  43. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.jsx +1 -86
  44. package/dist/Atomic/UI/PieChart/PieChart.jsx +1 -41
  45. package/dist/Atomic/UI/Table/Partials/TdCell.jsx +1 -87
  46. package/dist/Atomic/UI/Table/Partials/TdHeader.jsx +1 -36
  47. package/dist/Atomic/UI/Table/Partials/TdRow.jsx +1 -103
  48. package/dist/Atomic/UI/Table/Partials/TdTitle.jsx +1 -55
  49. package/dist/Atomic/UI/Table/Table.jsx +1 -63
  50. package/dist/Atomic/UI/Table/TdTypes/TdActions.jsx +1 -80
  51. package/dist/Atomic/UI/Table/TdTypes/TdPriority.jsx +1 -26
  52. package/dist/Atomic/UI/Table/TdTypes/TdRange.jsx +1 -13
  53. package/dist/Atomic/UI/Table/TdTypes/TdWeight.jsx +1 -56
  54. package/dist/Atomic/UI/TagList/TagList.jsx +1 -256
  55. package/dist/Atomic/UI/WizardStepper/constructor.jsx +1 -86
  56. package/dist/Classes/RESTAPI/partials/CredentialsProcessing.jsx +1 -254
  57. package/dist/Functions/customEventListener.jsx +1 -96
  58. package/dist/Functions/operations.jsx +1 -138
  59. package/dist/Functions/useFormTools/functions/RenderFields.jsx +1 -108
  60. package/dist/Functions/useFormTools/index.jsx +1 -777
  61. package/dist/Functions/usePasswordChecker.jsx +1 -128
  62. package/dist/Functions/utils.jsx +1 -492
  63. package/dist/Molecular/CustomIcons/components/AffiliateNetworks.jsx +1 -22
  64. package/dist/Molecular/CustomIcons/components/AlertCircle.jsx +1 -24
  65. package/dist/Molecular/CustomIcons/components/AppStore.jsx +1 -30
  66. package/dist/Molecular/CustomIcons/components/Arrow.jsx +1 -33
  67. package/dist/Molecular/CustomIcons/components/ArrowDown.jsx +1 -18
  68. package/dist/Molecular/CustomIcons/components/ArrowLeft.jsx +1 -23
  69. package/dist/Molecular/CustomIcons/components/ArrowRight.jsx +1 -23
  70. package/dist/Molecular/CustomIcons/components/ArrowUp.jsx +1 -18
  71. package/dist/Molecular/CustomIcons/components/Bell.jsx +1 -16
  72. package/dist/Molecular/CustomIcons/components/Button.jsx +1 -13
  73. package/dist/Molecular/CustomIcons/components/Campaigns.jsx +1 -17
  74. package/dist/Molecular/CustomIcons/components/Check.jsx +1 -15
  75. package/dist/Molecular/CustomIcons/components/Check2.jsx +1 -13
  76. package/dist/Molecular/CustomIcons/components/ChevronDown.jsx +1 -13
  77. package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.jsx +1 -12
  78. package/dist/Molecular/CustomIcons/components/ChevronLeft.jsx +1 -12
  79. package/dist/Molecular/CustomIcons/components/ChevronRight.jsx +1 -12
  80. package/dist/Molecular/CustomIcons/components/ChevronUp.jsx +1 -12
  81. package/dist/Molecular/CustomIcons/components/ChevronUpDown.jsx +1 -28
  82. package/dist/Molecular/CustomIcons/components/Close.jsx +1 -15
  83. package/dist/Molecular/CustomIcons/components/ColumnsOrder.jsx +1 -18
  84. package/dist/Molecular/CustomIcons/components/Delete.jsx +1 -17
  85. package/dist/Molecular/CustomIcons/components/Edit.jsx +1 -16
  86. package/dist/Molecular/CustomIcons/components/Email.jsx +1 -32
  87. package/dist/Molecular/CustomIcons/components/FinturfLogo.jsx +1 -19
  88. package/dist/Molecular/CustomIcons/components/FinturfLogo2.jsx +1 -36
  89. package/dist/Molecular/CustomIcons/components/Flows.jsx +1 -16
  90. package/dist/Molecular/CustomIcons/components/Gift.jsx +1 -26
  91. package/dist/Molecular/CustomIcons/components/GoogleAuth.jsx +1 -30
  92. package/dist/Molecular/CustomIcons/components/GooglePlay.jsx +1 -30
  93. package/dist/Molecular/CustomIcons/components/HelpCircle.jsx +1 -20
  94. package/dist/Molecular/CustomIcons/components/HelpCircle2.jsx +1 -21
  95. package/dist/Molecular/CustomIcons/components/HelpCircleFilled.jsx +1 -20
  96. package/dist/Molecular/CustomIcons/components/Home.jsx +1 -17
  97. package/dist/Molecular/CustomIcons/components/Home2.jsx +1 -23
  98. package/dist/Molecular/CustomIcons/components/Key.jsx +1 -24
  99. package/dist/Molecular/CustomIcons/components/Landers.jsx +1 -21
  100. package/dist/Molecular/CustomIcons/components/Lock.jsx +1 -16
  101. package/dist/Molecular/CustomIcons/components/Mail.jsx +1 -27
  102. package/dist/Molecular/CustomIcons/components/Mastercard.jsx +1 -74
  103. package/dist/Molecular/CustomIcons/components/Minus.jsx +1 -26
  104. package/dist/Molecular/CustomIcons/components/Offers.jsx +1 -17
  105. package/dist/Molecular/CustomIcons/components/Pause.jsx +1 -29
  106. package/dist/Molecular/CustomIcons/components/PayPal.jsx +1 -42
  107. package/dist/Molecular/CustomIcons/components/PayPalLightLarge.jsx +1 -29
  108. package/dist/Molecular/CustomIcons/components/Phone.jsx +1 -31
  109. package/dist/Molecular/CustomIcons/components/Play.jsx +1 -26
  110. package/dist/Molecular/CustomIcons/components/Plus.jsx +1 -26
  111. package/dist/Molecular/CustomIcons/components/Profile.jsx +1 -17
  112. package/dist/Molecular/CustomIcons/components/QRCode.jsx +1 -30
  113. package/dist/Molecular/CustomIcons/components/Rectangle.jsx +1 -13
  114. package/dist/Molecular/CustomIcons/components/Revert.jsx +1 -14
  115. package/dist/Molecular/CustomIcons/components/Star.jsx +1 -15
  116. package/dist/Molecular/CustomIcons/components/Star2.jsx +1 -17
  117. package/dist/Molecular/CustomIcons/components/TrafficSources.jsx +1 -15
  118. package/dist/Molecular/CustomIcons/components/Trash.jsx +1 -16
  119. package/dist/Molecular/CustomIcons/components/TrashRed.jsx +1 -16
  120. package/dist/Molecular/CustomIcons/components/Triggers.jsx +1 -16
  121. package/dist/Molecular/CustomIcons/components/User.jsx +1 -26
  122. package/dist/Molecular/CustomIcons/components/Visa.jsx +1 -32
  123. package/dist/Molecular/CustomIcons/components/X.jsx +1 -13
  124. package/dist/Molecular/FormElement/FormElement.jsx +1 -52
  125. package/dist/Molecular/FormWithDependOn/FormWithDependOn.jsx +1 -161
  126. package/dist/Molecular/InputAddress/InputAddress.jsx +1 -641
  127. package/dist/Molecular/InputPassword/InputPassword.jsx +1 -50
  128. package/package.json +1 -1
  129. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.d.ts +0 -5
  130. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js.map +0 -1
  131. /package/dist/Atomic/FormElements/ActionAlert/{ActionAlert.js → ActionAlert.jsx} +0 -0
  132. /package/dist/Atomic/FormElements/AdvancedStatus/{AdvancedStatus.js → AdvancedStatus.jsx} +0 -0
  133. /package/dist/Atomic/FormElements/Calendar/{Calendar.js → Calendar.jsx} +0 -0
  134. /package/dist/Atomic/FormElements/Calendar/{Calendar.props.js → Calendar.props.jsx} +0 -0
  135. /package/dist/Atomic/FormElements/CheckboxInput/{CheckboxInput.js → CheckboxInput.jsx} +0 -0
  136. /package/dist/Atomic/FormElements/CheckboxesLine/{CheckboxesLine.js → CheckboxesLine.jsx} +0 -0
  137. /package/dist/Atomic/FormElements/Datepicker/{Datepicker.js → Datepicker.jsx} +0 -0
  138. /package/dist/Atomic/FormElements/Datepicker/{Datepicker.props.js → Datepicker.props.jsx} +0 -0
  139. /package/dist/Atomic/FormElements/Datepicker/components/{DatepickerCalendar.js → DatepickerCalendar.jsx} +0 -0
  140. /package/dist/Atomic/FormElements/Datepicker/components/{DatepickerCalendar.props.js → DatepickerCalendar.props.jsx} +0 -0
  141. /package/dist/Atomic/FormElements/Dropdown/{Dropdown.js → Dropdown.jsx} +0 -0
  142. /package/dist/Atomic/FormElements/DropdownLiveSearch/{DropdownLiveSearch.js → DropdownLiveSearch.jsx} +0 -0
  143. /package/dist/Atomic/FormElements/FileLoader/{FileLoader.js → FileLoader.jsx} +0 -0
  144. /package/dist/Atomic/FormElements/FileLoader/partial/{LoadZone.js → LoadZone.jsx} +0 -0
  145. /package/dist/Atomic/FormElements/FileLoader/partial/{LoadedContent.js → LoadedContent.jsx} +0 -0
  146. /package/dist/Atomic/FormElements/FileLoaderDescription/{FileLoaderDescription.js → FileLoaderDescription.jsx} +0 -0
  147. /package/dist/Atomic/FormElements/FileLoaderLocal/{FileLoaderLocal.js → FileLoaderLocal.jsx} +0 -0
  148. /package/dist/Atomic/FormElements/FileLoaderLocalGroup/{FileLoaderLocalGroup.js → FileLoaderLocalGroup.jsx} +0 -0
  149. /package/dist/Atomic/FormElements/FormattedRawSSN/{FormattedRawSSN.js → FormattedRawSSN.jsx} +0 -0
  150. /package/dist/Atomic/FormElements/Input/{Input.js → Input.jsx} +0 -0
  151. /package/dist/Atomic/FormElements/Input/hooks/{useErrorBlink.js → useErrorBlink.jsx} +0 -0
  152. /package/dist/Atomic/FormElements/Input/hooks/{useInputFocus.js → useInputFocus.jsx} +0 -0
  153. /package/dist/Atomic/FormElements/Input/hooks/{useInputHover.js → useInputHover.jsx} +0 -0
  154. /package/dist/Atomic/FormElements/Input/hooks/{useInputValueProcessing.js → useInputValueProcessing.jsx} +0 -0
  155. /package/dist/Atomic/FormElements/Input/hooks/{useKeyboardHandling.js → useKeyboardHandling.jsx} +0 -0
  156. /package/dist/Atomic/FormElements/Input/lib/{autocomplete.js → autocomplete.jsx} +0 -0
  157. /package/dist/Atomic/FormElements/Input/{types.js → types.jsx} +0 -0
  158. /package/dist/Atomic/FormElements/InputCalendar/{InputCalendar.js → InputCalendar.jsx} +0 -0
  159. /package/dist/Atomic/FormElements/InputColor/{InputColor.js → InputColor.jsx} +0 -0
  160. /package/dist/Atomic/FormElements/InputCurrency/{InputCurrency.js → InputCurrency.jsx} +0 -0
  161. /package/dist/Atomic/FormElements/InputDateRange/{InputDateRange.js → InputDateRange.jsx} +0 -0
  162. /package/dist/Atomic/FormElements/InputDateRange/components/{DateInput.js → DateInput.jsx} +0 -0
  163. /package/dist/Atomic/FormElements/InputDateRange/components/{Datepicker.js → Datepicker.jsx} +0 -0
  164. /package/dist/Atomic/FormElements/InputDateRange/components/{OpenedPart.js → OpenedPart.jsx} +0 -0
  165. /package/dist/Atomic/FormElements/InputDateRange/components/{SelectItem.js → SelectItem.jsx} +0 -0
  166. /package/dist/Atomic/FormElements/InputDateRange/{dependencies.js → dependencies.jsx} +0 -0
  167. /package/dist/Atomic/FormElements/InputLink/{InputLink.js → InputLink.jsx} +0 -0
  168. /package/dist/Atomic/FormElements/InputMask/{InputMask.js → InputMask.jsx} +0 -0
  169. /package/dist/Atomic/FormElements/InputMask3/{InputMask3.js → InputMask3.jsx} +0 -0
  170. /package/dist/Atomic/FormElements/InputMask3/{config.js → config.jsx} +0 -0
  171. /package/dist/Atomic/FormElements/InputMask3/{functions.js → functions.jsx} +0 -0
  172. /package/dist/Atomic/FormElements/InputWithAction/{InputWithAction.js → InputWithAction.jsx} +0 -0
  173. /package/dist/Atomic/FormElements/InputsRow/{InputsRow.js → InputsRow.jsx} +0 -0
  174. /package/dist/Atomic/FormElements/Label/{Label.js → Label.jsx} +0 -0
  175. /package/dist/Atomic/FormElements/RadioInput/{RadioInput.js → RadioInput.jsx} +0 -0
  176. /package/dist/Atomic/FormElements/RangeInputs/{RangeInputs.js → RangeInputs.jsx} +0 -0
  177. /package/dist/Atomic/FormElements/Switcher/{Switcher.js → Switcher.jsx} +0 -0
  178. /package/dist/Atomic/FormElements/SwitcherHide/{SwitcherHide.js → SwitcherHide.jsx} +0 -0
  179. /package/dist/Atomic/FormElements/SwitcherRadio/{SwitcherRadio.js → SwitcherRadio.jsx} +0 -0
  180. /package/dist/Atomic/FormElements/SwitcherRange/{SwitcherRange.js → SwitcherRange.jsx} +0 -0
  181. /package/dist/Atomic/FormElements/TagsDropdown/{TagsDropdown.js → TagsDropdown.jsx} +0 -0
  182. /package/dist/Atomic/FormElements/TextSwitcher/{TextSwitcher.js → TextSwitcher.jsx} +0 -0
  183. /package/dist/Atomic/FormElements/TimeRange/{TimeRange.js → TimeRange.jsx} +0 -0
  184. /package/dist/Atomic/FormElements/UserContacts/{UserContacts.js → UserContacts.jsx} +0 -0
  185. /package/dist/Atomic/Layout/Spinner/{Spinner.js → Spinner.jsx} +0 -0
  186. /package/dist/Atomic/UI/Accordion/{Accordion.js → Accordion.jsx} +0 -0
  187. /package/dist/Atomic/UI/Accordion/{AccordionItem.js → AccordionItem.jsx} +0 -0
  188. /package/dist/Atomic/UI/AdvancedTag/{AdvTag.js → AdvTag.jsx} +0 -0
  189. /package/dist/Atomic/UI/AdvancedTag/{AdvancedTags.js → AdvancedTags.jsx} +0 -0
  190. /package/dist/Atomic/UI/Alert/{Alert.js → Alert.jsx} +0 -0
  191. /package/dist/Atomic/UI/Button/{Button.js → Button.jsx} +0 -0
  192. /package/dist/Atomic/UI/ButtonsBar/{ButtonsBar.js → ButtonsBar.jsx} +0 -0
  193. /package/dist/Atomic/UI/DoubleString/{DoubleString.js → DoubleString.jsx} +0 -0
  194. /package/dist/Atomic/UI/DynamicIcon/{DynamicIcon.js → DynamicIcon.jsx} +0 -0
  195. /package/dist/Atomic/UI/Hint/{Hint.js → Hint.jsx} +0 -0
  196. /package/dist/Atomic/UI/Hint/partials/{_constants.js → _constants.jsx} +0 -0
  197. /package/dist/Atomic/UI/Hint/partials/{_utils.js → _utils.jsx} +0 -0
  198. /package/dist/Atomic/UI/Modal/{Modal.js → Modal.jsx} +0 -0
  199. /package/dist/Atomic/UI/Modal/{ModalHOC.js → ModalHOC.jsx} +0 -0
  200. /package/dist/Atomic/UI/Modal/partials/{ModalFooter.js → ModalFooter.jsx} +0 -0
  201. /package/dist/Atomic/UI/Modal/partials/{ModalTitle.js → ModalTitle.jsx} +0 -0
  202. /package/dist/Atomic/UI/Modal/partials/{_constants.js → _constants.jsx} +0 -0
  203. /package/dist/Atomic/UI/Modal/partials/{_utils.js → _utils.jsx} +0 -0
  204. /package/dist/Atomic/UI/Modal/partials/{useMobileModal.js → useMobileModal.jsx} +0 -0
  205. /package/dist/Atomic/UI/NavLine/{NavLine.js → NavLine.jsx} +0 -0
  206. /package/dist/Atomic/UI/PageTitle/{PageTitle.js → PageTitle.jsx} +0 -0
  207. /package/dist/Atomic/UI/Price/{Price.js → Price.jsx} +0 -0
  208. /package/dist/Atomic/UI/PriceRange/{PriceRange.js → PriceRange.jsx} +0 -0
  209. /package/dist/Atomic/UI/ProgressLine/{ProgressLine.js → ProgressLine.jsx} +0 -0
  210. /package/dist/Atomic/UI/Status/{Status.js → Status.jsx} +0 -0
  211. /package/dist/Atomic/UI/Tag/{Tag.js → Tag.jsx} +0 -0
  212. /package/dist/Atomic/UI/UserBox/{UserBox.js → UserBox.jsx} +0 -0
  213. /package/dist/Atomic/UI/WizardStepper/ui/StateIcon/{StateIcon.js → StateIcon.jsx} +0 -0
  214. /package/dist/Atomic/UI/WizardStepper/ui/StepRow/{StepRow.js → StepRow.jsx} +0 -0
  215. /package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/{StepWrapper.js → StepWrapper.jsx} +0 -0
  216. /package/dist/Atomic/UI/WizardStepper/ui/{icons.js → icons.jsx} +0 -0
  217. /package/dist/Functions/guards/{assertions.js → assertions.jsx} +0 -0
  218. /package/dist/Functions/guards/{safeValue.js → safeValue.jsx} +0 -0
  219. /package/dist/Functions/guards/{typeGuards.js → typeGuards.jsx} +0 -0
  220. /package/dist/Functions/useIsMobile/{useIsMobile.js → useIsMobile.jsx} +0 -0
  221. /package/dist/Functions/useKeyPress/{useHandleKeyPress.js → useHandleKeyPress.jsx} +0 -0
  222. /package/dist/Functions/useKeyPress/{useKeyPress.js → useKeyPress.jsx} +0 -0
  223. /package/dist/Functions/utils/{disableDefaultBehavior.js → disableDefaultBehavior.jsx} +0 -0
  224. /package/dist/Functions/utils/{getLimitedMask.js → getLimitedMask.jsx} +0 -0
  225. /package/dist/types/declaration/TWithEventManagementAsObj/innerTypes/{Modal.js → Modal.jsx} +0 -0
@@ -1,161 +1 @@
1
- import cn from 'classnames';
2
-
3
- // global
4
- import { useEffect, useState } from 'react';
5
-
6
- import useFormFieldsChangesManager from '../../Functions/hooks/useFormFieldsChangesManager';
7
- import { clone, getIsOnlyAnObject } from '../../Functions/utils';
8
-
9
- // local functions
10
- import { getDependOnStarter } from './partials/_utils';
11
-
12
- const RC = 'form-with-depend-on';
13
-
14
- function FormWithDependOn({ ref, form, formId, setForm, getActualForm: getActualFormOuter, onChange, renderField, getAnotherActions, className, isInitializeByDependOn, isFormDisabled, typeOfUse = 'default' }) {
15
- // ? Прихраниваем состояние формы на момент входа
16
- const [initialForm] = useState(clone(form));
17
-
18
- const safelySetForm = typeof setForm === 'function' ? setForm : () => {};
19
- const safelyOnChange = typeof onChange === 'function' ? onChange : () => {};
20
-
21
- const getActualForm = typeof getActualFormOuter === 'function' ? getActualFormOuter : () => form;
22
-
23
- const { assignChangesToField } = useFormFieldsChangesManager({
24
- form: Array.isArray(form) ? form : [],
25
- setForm: safelySetForm,
26
- });
27
-
28
- const assign = assignChangesToField;
29
-
30
- // ***** handlers *****
31
-
32
- const anotherActions = typeof getAnotherActions === 'function'
33
- ? getAnotherActions({ setForm, assign, getActualForm })
34
- : {};
35
-
36
- const getMainOfAdditional = (onChange, additionalOfOnChange) => ({
37
- formId,
38
- actions: anotherActions,
39
- isInit: true,
40
- ...(getIsOnlyAnObject(additionalOfOnChange) ? additionalOfOnChange : {}),
41
- onChange,
42
- setForm: safelySetForm,
43
- assign,
44
- getActualForm,
45
- initialForm,
46
- typeOfUse,
47
- });
48
-
49
- const startDependOn = getDependOnStarter({ assign, getActualForm });
50
-
51
- // ? Местный handleChange добавляет логику dependOn к верхнему onChange,
52
- // ? а так же запускает прочие экшены, из объекта методов, возвращаемым getAnotherActions
53
- const handleChange = (
54
- newValue,
55
- fieldKey,
56
- propKey,
57
- additionalOfOnChange,
58
- ) => {
59
- const {
60
- updatedForm = null,
61
- isMakeChangesAnyway = false,
62
- isUseActualForm = false,
63
- } = getIsOnlyAnObject(additionalOfOnChange) ? additionalOfOnChange : {};
64
-
65
- const currentForm = clone(
66
- (() => {
67
- if (isUseActualForm) return getActualForm();
68
- return Array.isArray(updatedForm) ? updatedForm : form;
69
- })(),
70
- );
71
-
72
- const currField = 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, updatedForm: currentForm });
84
-
85
- // ? Механика dependOn (обработка зависимостей)
86
- // ? В текущей реализации отделил от экшена all.
87
-
88
- startDependOn({
89
- newValue,
90
- fieldKey,
91
- propKey,
92
- field: currField,
93
- form: currentForm,
94
- additional: getMainOfAdditional(handleChange, additionalOfOnChange),
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, additionalOfOnChange),
106
- });
107
- }
108
-
109
- if (fieldKey in anotherActions && typeof anotherActions[fieldKey] === 'function') {
110
- const postChanges = anotherActions[fieldKey]({
111
- newValue,
112
- fieldKey,
113
- propKey,
114
- field: currField,
115
- form: currentForm,
116
- additional: getMainOfAdditional(handleChange, additionalOfOnChange),
117
- });
118
-
119
- if (postChanges) assign(postChanges, fieldKey);
120
- }
121
- };
122
-
123
- // ***** useEffects *****
124
-
125
- useEffect(() => {
126
- if (isInitializeByDependOn && typeof setForm === 'function' && typeof onChange === 'function') {
127
- form.forEach((field) => {
128
- startDependOn({
129
- newValue: field.value,
130
- fieldKey: field.key,
131
- field,
132
- form,
133
- additional: {
134
- ...getMainOfAdditional(handleChange),
135
- isInitialization: true,
136
- isInit: false,
137
- },
138
- });
139
- });
140
- }
141
- }, [isInitializeByDependOn]);
142
-
143
- // ***** output *****
144
- return (
145
- <div {...(formId ? { id: formId } : {})} className={cn(RC, className)}>
146
- {typeof renderField === 'function'
147
- ? form.map(field =>
148
- renderField({
149
- ...getMainOfAdditional(handleChange),
150
- field: {
151
- ...field,
152
- disabled: Boolean(isFormDisabled || field.disabled),
153
- },
154
- }),
155
- )
156
- : null}
157
- </div>
158
- );
159
- }
160
-
161
- export default FormWithDependOn;
1
+ function e(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function t(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}function r(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);r.push.apply(r,n)}return r})(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))}),e}import{jsx as n}from"react/jsx-runtime";import o from"classnames";import{useEffect as i,useState as a}from"react";import f from"../../Functions/hooks/useFormFieldsChangesManager";import{clone as l,getIsOnlyAnObject as u}from"../../Functions/utils";import{getDependOnStarter as c}from"./partials/_utils";export default function(s){s.ref;var y,p=s.form,d=s.formId,m=s.setForm,b=s.getActualForm,g=s.onChange,O=s.renderField,h=s.getAnotherActions,v=s.className,j=s.isInitializeByDependOn,F=s.isFormDisabled,A=s.typeOfUse,w=void 0===A?"default":A,P=(y=a(l(p)),function(e){if(Array.isArray(e))return e}(y)||function(e,t){var r,n,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,f=!1;try{for(o=o.call(e);!(a=(r=o.next()).done)&&(i.push(r.value),i.length!==t);a=!0);}catch(e){f=!0,n=e}finally{try{a||null==o.return||o.return()}finally{if(f)throw n}}return i}}(y,1)||function(t,r){if(t){if("string"==typeof t)return e(t,1);var n=Object.prototype.toString.call(t).slice(8,-1);if("Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return e(t,r)}}(y,1)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}())[0],I="function"==typeof m?m:function(){},S="function"==typeof g?g:function(){},K="function"==typeof b?b:function(){return p},k=f({form:Array.isArray(p)?p:[],setForm:I}).assignChangesToField,C="function"==typeof h?h({setForm:m,assign:k,getActualForm:K}):{},D=function(e,n){return r(t({formId:d,actions:C,isInit:!0},u(n)?n:{}),{onChange:e,setForm:I,assign:k,getActualForm:K,initialForm:P,typeOfUse:w})},x=c({assign:k,getActualForm:K}),E=function(e,n,o,i){var a=u(i)?i:{},f=a.updatedForm,c=void 0===f?null:f,s=a.isMakeChangesAnyway,y=a.isUseActualForm,d=l(void 0!==y&&y?K():Array.isArray(c)?c:p),m=l(d.find(function(e){return e.key===n}));if((m[o||"value"]!==e||void 0!==s&&s)&&(S(e,n,o,r(t({},i),{updatedForm:d})),x({newValue:e,fieldKey:n,propKey:o,field:m,form:d,additional:D(E,i)}),"function"==typeof C.all&&C.all({newValue:e,fieldKey:n,propKey:o,field:m,form:d,additional:D(E,i)}),n in C&&"function"==typeof C[n])){var b=C[n]({newValue:e,fieldKey:n,propKey:o,field:m,form:d,additional:D(E,i)});b&&k(b,n)}};return i(function(){j&&"function"==typeof m&&"function"==typeof g&&p.forEach(function(e){x({newValue:e.value,fieldKey:e.key,field:e,form:p,additional:r(t({},D(E)),{isInitialization:!0,isInit:!1})})})},[j]),n("div",r(t({},d?{id:d}:{}),{className:o("form-with-depend-on",v),children:"function"==typeof O?p.map(function(e){return O(r(t({},D(E)),{field:r(t({},e),{disabled:!!(F||e.disabled)})}))}):null}))}