intelicoreact 1.5.41 → 1.6.1

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 (521) hide show
  1. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.interface.js +4 -0
  2. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.js +93 -44
  3. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.scss +23 -13
  4. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.stories.js +89 -0
  5. package/dist/Atomic/FormElements/ActionAlert/ActionAlert.test.js +130 -0
  6. package/dist/Atomic/FormElements/ActionAlert/index.js +17 -0
  7. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.interface.js +4 -0
  8. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +43 -38
  9. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.scss +20 -10
  10. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.stories.js +81 -0
  11. package/dist/Atomic/FormElements/AdvancedStatus/AdvancedStatus.test.js +104 -0
  12. package/dist/Atomic/FormElements/AdvancedStatus/index.js +17 -0
  13. package/dist/Atomic/FormElements/Calendar/Calendar.js +243 -164
  14. package/dist/Atomic/FormElements/Calendar/Calendar.props.js +4 -0
  15. package/dist/Atomic/FormElements/Calendar/Calendar.scss +1 -0
  16. package/dist/Atomic/FormElements/Calendar/Calendar.stories.js +108 -0
  17. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.interface.js +4 -0
  18. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.js +60 -51
  19. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.scss +21 -11
  20. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.stories.js +100 -0
  21. package/dist/Atomic/FormElements/CheckboxInput/CheckboxInput.test.js +143 -0
  22. package/dist/Atomic/FormElements/CheckboxInput/index.js +17 -0
  23. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.interface.js +4 -0
  24. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +47 -39
  25. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.scss +5 -2
  26. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.stories.js +94 -0
  27. package/dist/Atomic/FormElements/CheckboxesLine/CheckboxesLine.test.js +177 -0
  28. package/dist/Atomic/FormElements/CheckboxesLine/index.js +17 -0
  29. package/dist/Atomic/FormElements/Datepicker/Datepicker.js +410 -308
  30. package/dist/Atomic/FormElements/Datepicker/Datepicker.stories.js +51 -0
  31. package/dist/Atomic/FormElements/Datepicker/components/Calendar.js +169 -109
  32. package/dist/Atomic/FormElements/Dropdown/Dropdown.js +680 -527
  33. package/dist/Atomic/FormElements/Dropdown/Dropdown.scss +58 -56
  34. package/dist/Atomic/FormElements/Dropdown/Dropdown.stories.js +596 -0
  35. package/dist/Atomic/FormElements/Dropdown/components/DropdownLoader.js +28 -15
  36. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +498 -378
  37. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.scss +33 -29
  38. package/dist/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.stories.js +272 -0
  39. package/dist/Atomic/FormElements/FileLoader/FileLoader.js +103 -70
  40. package/dist/Atomic/FormElements/FileLoader/FileLoader.scss +0 -2
  41. package/dist/Atomic/FormElements/FileLoader/FileLoader.stories.js +182 -0
  42. package/dist/Atomic/FormElements/FileLoader/partial/LoadZone.js +138 -91
  43. package/dist/Atomic/FormElements/FileLoader/partial/LoadedContent.js +109 -55
  44. package/dist/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.js +254 -193
  45. package/dist/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.scss +19 -16
  46. package/dist/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.stories.js +327 -0
  47. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +156 -140
  48. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.scss +8 -4
  49. package/dist/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.stories.js +186 -0
  50. package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +222 -156
  51. package/dist/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.stories.js +84 -0
  52. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +158 -114
  53. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.stories.js +107 -0
  54. package/dist/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN_old.js +151 -92
  55. package/dist/Atomic/FormElements/Input/Input.js +340 -330
  56. package/dist/Atomic/FormElements/Input/Input.stories.js +251 -0
  57. package/dist/Atomic/FormElements/InputCalendar/InputCalendar.js +156 -110
  58. package/dist/Atomic/FormElements/InputCalendar/InputCalendar.stories.js +115 -0
  59. package/dist/Atomic/FormElements/InputColor/InputColor.js +57 -58
  60. package/dist/Atomic/FormElements/InputColor/InputColor.stories.js +119 -0
  61. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.interface.js +4 -0
  62. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.js +189 -145
  63. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.stories.js +178 -0
  64. package/dist/Atomic/FormElements/InputCurrency/InputCurrency.test.js +129 -0
  65. package/dist/Atomic/FormElements/InputCurrency/index.js +16 -0
  66. package/dist/Atomic/FormElements/InputDateRange/InputDateRange.js +294 -228
  67. package/dist/Atomic/FormElements/InputDateRange/InputDateRange.stories.js +123 -0
  68. package/dist/Atomic/FormElements/InputDateRange/components/DateInput.js +55 -56
  69. package/dist/Atomic/FormElements/InputDateRange/components/Datepicker.js +645 -536
  70. package/dist/Atomic/FormElements/InputDateRange/components/OpenedPart.js +220 -190
  71. package/dist/Atomic/FormElements/InputDateRange/components/SelectItem.js +33 -31
  72. package/dist/Atomic/FormElements/InputDateRange/dependencies.js +247 -169
  73. package/dist/Atomic/FormElements/InputLink/InputLink.js +118 -71
  74. package/dist/Atomic/FormElements/InputLink/InputLink.stories.js +140 -0
  75. package/dist/Atomic/FormElements/InputMask/InputCarretPosition.js +47 -38
  76. package/dist/Atomic/FormElements/InputMask/InputMask.js +938 -1053
  77. package/dist/Atomic/FormElements/InputMask/InputMask.stories.js +303 -0
  78. package/dist/Atomic/FormElements/InputMask/config.js +16 -15
  79. package/dist/Atomic/FormElements/InputMask/functions.js +77 -51
  80. package/dist/Atomic/FormElements/InputMask2/InputMask2.js +569 -592
  81. package/dist/Atomic/FormElements/InputMask2/InputMask2.stories.js +314 -0
  82. package/dist/Atomic/FormElements/InputMask2/config.js +16 -15
  83. package/dist/Atomic/FormElements/InputMask2/functions.js +77 -51
  84. package/dist/Atomic/FormElements/InputMask3/InputMask3.js +651 -679
  85. package/dist/Atomic/FormElements/InputMask3/InputMask3.stories.js +335 -0
  86. package/dist/Atomic/FormElements/InputMask3/config.js +16 -15
  87. package/dist/Atomic/FormElements/InputMask3/functions.js +77 -51
  88. package/dist/Atomic/FormElements/InputWithAction/InputWithAction.js +127 -88
  89. package/dist/Atomic/FormElements/InputWithAction/InputWithAction.stories.js +276 -0
  90. package/dist/Atomic/FormElements/InputsRow/InputsRow.js +182 -111
  91. package/dist/Atomic/FormElements/InputsRow/InputsRow.stories.js +56 -0
  92. package/dist/Atomic/FormElements/Label/Label.interface.js +4 -0
  93. package/dist/Atomic/FormElements/Label/Label.js +82 -55
  94. package/dist/Atomic/FormElements/Label/Label.scss +18 -8
  95. package/dist/Atomic/FormElements/Label/Label.stories.js +47 -0
  96. package/dist/Atomic/FormElements/Label/Label.test.js +167 -0
  97. package/dist/Atomic/FormElements/Label/index.js +17 -0
  98. package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.js +437 -382
  99. package/dist/Atomic/FormElements/MobileCalendar/MobileCalendar.stories.js +172 -0
  100. package/dist/Atomic/FormElements/MultiSelect/MultiSelect.js +88 -50
  101. package/dist/Atomic/FormElements/MultiSelect/MultiSelect.stories.js +121 -0
  102. package/dist/Atomic/FormElements/NumericInput/NumericInput.js +314 -264
  103. package/dist/Atomic/FormElements/NumericInput/NumericInput.stories.js +184 -0
  104. package/dist/Atomic/FormElements/RadioGroup/RadioGroup.js +93 -51
  105. package/dist/Atomic/FormElements/RadioGroup/RadioGroup.stories.js +79 -0
  106. package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +69 -55
  107. package/dist/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.stories.js +151 -0
  108. package/dist/Atomic/FormElements/RadioInput/RadioInput.js +51 -45
  109. package/dist/Atomic/FormElements/RadioInput/RadioInput.scss +4 -4
  110. package/dist/Atomic/FormElements/RadioInput/RadioInput.stories.js +67 -0
  111. package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +53 -40
  112. package/dist/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.stories.js +116 -0
  113. package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.js +169 -120
  114. package/dist/Atomic/FormElements/RangeCalendar/RangeCalendar.stories.js +107 -0
  115. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.js +195 -141
  116. package/dist/Atomic/FormElements/RangeInputs/RangeInputs.stories.js +92 -0
  117. package/dist/Atomic/FormElements/RangeList/RangeList.js +199 -140
  118. package/dist/Atomic/FormElements/RangeList/RangeList.scss +2 -2
  119. package/dist/Atomic/FormElements/RangeList/RangeList.stories.js +169 -0
  120. package/dist/Atomic/FormElements/RangeList/partial/AnyOuterClass.scss +0 -3
  121. package/dist/Atomic/FormElements/RangeList/partial/RangeListRow.js +57 -44
  122. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.js +463 -377
  123. package/dist/Atomic/FormElements/RangeSlider/RangeSlider.stories.js +401 -0
  124. package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.js +760 -759
  125. package/dist/Atomic/FormElements/RangeSlider2/RangeSlider2.stories.js +314 -0
  126. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.js +36 -31
  127. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.scss +0 -2
  128. package/dist/Atomic/FormElements/SwitchableRow/SwitchableRow.stories.js +137 -0
  129. package/dist/Atomic/FormElements/Switcher/Switcher.js +52 -44
  130. package/dist/Atomic/FormElements/Switcher/Switcher.scss +3 -3
  131. package/dist/Atomic/FormElements/Switcher/Switcher.stories.js +91 -0
  132. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +43 -44
  133. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.scss +0 -2
  134. package/dist/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.stories.js +104 -0
  135. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.js +37 -36
  136. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.scss +0 -2
  137. package/dist/Atomic/FormElements/SwitcherHide/SwitcherHide.stories.js +96 -0
  138. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +93 -56
  139. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.scss +0 -2
  140. package/dist/Atomic/FormElements/SwitcherRadio/SwitcherRadio.stories.js +140 -0
  141. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.js +86 -53
  142. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.scss +0 -2
  143. package/dist/Atomic/FormElements/SwitcherRange/SwitcherRange.stories.js +112 -0
  144. package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +46 -54
  145. package/dist/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.stories.js +145 -0
  146. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +172 -102
  147. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.scss +4 -6
  148. package/dist/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.stories.js +158 -0
  149. package/dist/Atomic/FormElements/SwitcherTagsDropdown/partial/States.js +209 -154
  150. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +59 -56
  151. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.scss +2 -2
  152. package/dist/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.stories.js +101 -0
  153. package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.js +140 -112
  154. package/dist/Atomic/FormElements/TagListToDropdown/TagListToDropdown.stories.js +131 -0
  155. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.js +1035 -919
  156. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.scss +153 -116
  157. package/dist/Atomic/FormElements/TagsDropdown/TagsDropdown.stories.js +357 -0
  158. package/dist/Atomic/FormElements/Text/Text.js +88 -97
  159. package/dist/Atomic/FormElements/Text/Text.stories.js +80 -0
  160. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.js +44 -35
  161. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.scss +8 -8
  162. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.stories.js +106 -0
  163. package/dist/Atomic/FormElements/TextSwitcher/TextSwitcher.test.js +93 -0
  164. package/dist/Atomic/FormElements/Textarea/Textarea.js +102 -64
  165. package/dist/Atomic/FormElements/Textarea/Textarea.scss +4 -8
  166. package/dist/Atomic/FormElements/Textarea/Textarea.stories.js +103 -0
  167. package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +172 -133
  168. package/dist/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.stories.js +174 -0
  169. package/dist/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +48 -49
  170. package/dist/Atomic/FormElements/TimeRange/TimeRange.interface.js +4 -0
  171. package/dist/Atomic/FormElements/TimeRange/TimeRange.js +114 -63
  172. package/dist/Atomic/FormElements/TimeRange/TimeRange.scss +9 -3
  173. package/dist/Atomic/FormElements/TimeRange/TimeRange.stories.js +40 -0
  174. package/dist/Atomic/FormElements/TimeRange/TimeRange.test.js +163 -0
  175. package/dist/Atomic/FormElements/TimeRange/index.js +17 -0
  176. package/dist/Atomic/FormElements/UserContacts/UserContact.test.js +381 -0
  177. package/dist/Atomic/FormElements/UserContacts/UserContacts.interface.js +4 -0
  178. package/dist/Atomic/FormElements/UserContacts/UserContacts.js +179 -122
  179. package/dist/Atomic/FormElements/UserContacts/UserContacts.scss +10 -5
  180. package/dist/Atomic/FormElements/UserContacts/UserContacts.stories.js +74 -0
  181. package/dist/Atomic/FormElements/UserContacts/index.js +17 -0
  182. package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +101 -65
  183. package/dist/Atomic/FormElements/VariantsListRadio/VariantsListRadio.stories.js +193 -0
  184. package/dist/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +80 -71
  185. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +79 -64
  186. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.scss +0 -2
  187. package/dist/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.stories.js +147 -0
  188. package/dist/Atomic/FormElements/WidgetPseudoTable/partial/constructor.js +42 -34
  189. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +102 -83
  190. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.scss +0 -2
  191. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.stories.js +151 -0
  192. package/dist/Atomic/FormElements/WidgetWithSwitchableRows/partial/constructor.js +42 -35
  193. package/dist/Atomic/Layout/Header/Header.js +148 -80
  194. package/dist/Atomic/Layout/Header/Header.stories.js +71 -0
  195. package/dist/Atomic/Layout/MainMenu/MainMenu.js +213 -133
  196. package/dist/Atomic/Layout/MainMenu/MainMenu.scss +7 -7
  197. package/dist/Atomic/Layout/MainMenu/MainMenu.stories.js +115 -0
  198. package/dist/Atomic/Layout/Spinner/Spinner.interface.js +4 -0
  199. package/dist/Atomic/Layout/Spinner/Spinner.js +39 -22
  200. package/dist/Atomic/Layout/Spinner/Spinner.scss +36 -16
  201. package/dist/Atomic/Layout/Spinner/Spinner.stories.js +46 -0
  202. package/dist/Atomic/Layout/Spinner/Spinner.test.js +54 -0
  203. package/dist/Atomic/Layout/Spinner/index.js +17 -0
  204. package/dist/Atomic/UI/Accordion/Accordion.interface.js +4 -0
  205. package/dist/Atomic/UI/Accordion/Accordion.js +102 -53
  206. package/dist/Atomic/UI/Accordion/Accordion.scss +25 -14
  207. package/dist/Atomic/UI/Accordion/Accordion.stories.js +168 -0
  208. package/dist/Atomic/UI/Accordion/Accordion.test.js +54 -0
  209. package/dist/Atomic/UI/Accordion/AccordionItem.js +170 -102
  210. package/dist/Atomic/UI/Accordion/AccordionItem.test.js +50 -0
  211. package/dist/Atomic/UI/Accordion/index.js +17 -0
  212. package/dist/Atomic/UI/AccordionTable/AccordionTable.js +251 -167
  213. package/dist/Atomic/UI/AccordionTable/AccordionTable.stories.js +268 -0
  214. package/dist/Atomic/UI/AccordionText/AccordionText.js +105 -54
  215. package/dist/Atomic/UI/AccordionText/AccordionText.scss +22 -9
  216. package/dist/Atomic/UI/AccordionText/AccordionText.stories.js +125 -0
  217. package/dist/Atomic/UI/AdvancedTag/AdvTag.js +207 -135
  218. package/dist/Atomic/UI/AdvancedTag/AdvancedTags.js +100 -46
  219. package/dist/Atomic/UI/AdvancedTag/AdvancedTags.stories.js +115 -0
  220. package/dist/Atomic/UI/Alert/Alert.js +116 -63
  221. package/dist/Atomic/UI/Alert/Alert.scss +2 -2
  222. package/dist/Atomic/UI/Alert/Alert.stories.js +81 -0
  223. package/dist/Atomic/UI/Arrow/Arrow.js +163 -110
  224. package/dist/Atomic/UI/Arrow/Arrow.stories.js +62 -0
  225. package/dist/Atomic/UI/Box/Box.js +37 -37
  226. package/dist/Atomic/UI/Box/Box.scss +11 -11
  227. package/dist/Atomic/UI/Box/Box.stories.js +114 -0
  228. package/dist/Atomic/UI/Button/Button.js +43 -41
  229. package/dist/Atomic/UI/Button/Button.stories.js +105 -0
  230. package/dist/Atomic/UI/Button/Button.test.js +147 -0
  231. package/dist/Atomic/UI/ButtonsBar/ButtonsBar.js +61 -67
  232. package/dist/Atomic/UI/ButtonsBar/ButtonsBar.stories.js +129 -0
  233. package/dist/Atomic/UI/Chart/Chart.js +170 -96
  234. package/dist/Atomic/UI/Chart/Chart.stories.js +93 -0
  235. package/dist/Atomic/UI/Chart/partial/Chart.constants.js +142 -74
  236. package/dist/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +91 -77
  237. package/dist/Atomic/UI/Chart/partial/datasetSetters.js +120 -117
  238. package/dist/Atomic/UI/Chart/partial/optionsConstructor.js +314 -292
  239. package/dist/Atomic/UI/Chart/partial/optionsSetters.js +54 -39
  240. package/dist/Atomic/UI/Chart/partial/utils.js +56 -33
  241. package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.js +145 -88
  242. package/dist/Atomic/UI/CircleProgressBar/CircleProgressBar.stories.js +85 -0
  243. package/dist/Atomic/UI/DateTime/DateTime.js +89 -37
  244. package/dist/Atomic/UI/DateTime/DateTime.scss +2 -2
  245. package/dist/Atomic/UI/DateTime/DateTime.stories.js +50 -0
  246. package/dist/Atomic/UI/DebugContainer/DebugContainer.js +93 -31
  247. package/dist/Atomic/UI/DebugContainer/useDebugContainer.js +66 -18
  248. package/dist/Atomic/UI/DoubleString/DoubleString.js +134 -77
  249. package/dist/Atomic/UI/DoubleString/DoubleString.scss +6 -4
  250. package/dist/Atomic/UI/DoubleString/DoubleString.stories.js +79 -0
  251. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.interface.js +4 -0
  252. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.js +65 -22
  253. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.stories.js +98 -0
  254. package/dist/Atomic/UI/DynamicIcon/DynamicIcon.test.js +51 -0
  255. package/dist/Atomic/UI/DynamicIcon/index.js +17 -0
  256. package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.js +251 -170
  257. package/dist/Atomic/UI/ExampleChartIntegration/ExampleChartIntegration.stories.js +98 -0
  258. package/dist/Atomic/UI/ExampleChartIntegration/partial/utils.js +109 -84
  259. package/dist/Atomic/UI/Hint/Hint.interface.js +4 -0
  260. package/dist/Atomic/UI/Hint/Hint.js +247 -204
  261. package/dist/Atomic/UI/Hint/Hint.scss +4 -2
  262. package/dist/Atomic/UI/Hint/Hint.stories.js +106 -0
  263. package/dist/Atomic/UI/Hint/Hint.test.js +96 -0
  264. package/dist/Atomic/UI/Hint/index.js +17 -0
  265. package/dist/Atomic/UI/Hint/partials/_utils.js +60 -46
  266. package/dist/Atomic/UI/Modal/Modal.interface.js +4 -0
  267. package/dist/Atomic/UI/Modal/Modal.js +171 -172
  268. package/dist/Atomic/UI/Modal/Modal.scss +91 -65
  269. package/dist/Atomic/UI/Modal/Modal.stories.js +370 -0
  270. package/dist/Atomic/UI/Modal/ModalHOC.js +92 -38
  271. package/dist/Atomic/UI/Modal/ModalHOC.stories.js +191 -0
  272. package/dist/Atomic/UI/Modal/ModalHOC.test.js +187 -0
  273. package/dist/Atomic/UI/Modal/ModalMobile.scss +26 -14
  274. package/dist/Atomic/UI/Modal/index.js +26 -0
  275. package/dist/Atomic/UI/Modal/partials/ModalFooter.js +68 -18
  276. package/dist/Atomic/UI/Modal/partials/ModalFooter.test.js +118 -0
  277. package/dist/Atomic/UI/Modal/partials/ModalTitle.js +107 -38
  278. package/dist/Atomic/UI/Modal/partials/ModalTitle.test.js +126 -0
  279. package/dist/Atomic/UI/Modal/partials/useMobileModal.js +130 -153
  280. package/dist/Atomic/UI/Modal/partials/useMobileModal.test.js +133 -0
  281. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.interface.js +4 -0
  282. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.js +118 -62
  283. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.scss +172 -25
  284. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.stories.js +513 -0
  285. package/dist/Atomic/UI/MonoAccordion/MonoAccordion.test.js +84 -0
  286. package/dist/Atomic/UI/MonoAccordion/index.js +17 -0
  287. package/dist/Atomic/UI/NavLine/NavLine.interface.js +4 -0
  288. package/dist/Atomic/UI/NavLine/NavLine.js +306 -273
  289. package/dist/Atomic/UI/NavLine/NavLine.scss +202 -155
  290. package/dist/Atomic/UI/NavLine/NavLine.stories.js +434 -0
  291. package/dist/Atomic/UI/NavLine/NavLine.test.js +311 -0
  292. package/dist/Atomic/UI/NavLine/index.js +17 -0
  293. package/dist/Atomic/UI/PageTitle/PageTitle.interface.js +4 -0
  294. package/dist/Atomic/UI/PageTitle/PageTitle.js +73 -52
  295. package/dist/Atomic/UI/PageTitle/PageTitle.scss +52 -14
  296. package/dist/Atomic/UI/PageTitle/PageTitle.stories.js +62 -0
  297. package/dist/Atomic/UI/PageTitle/PageTitle.test.js +181 -0
  298. package/dist/Atomic/UI/PageTitle/index.js +17 -0
  299. package/dist/Atomic/UI/PieChart/PieChar.interface.js +4 -0
  300. package/dist/Atomic/UI/PieChart/PieChart.js +105 -42
  301. package/dist/Atomic/UI/PieChart/PieChart.scss +87 -11
  302. package/dist/Atomic/UI/PieChart/PieChart.stories.js +82 -0
  303. package/dist/Atomic/UI/PieChart/PieChart.test.js +142 -0
  304. package/dist/Atomic/UI/PieChart/index.js +26 -0
  305. package/dist/Atomic/UI/Price/Price.interface.js +4 -0
  306. package/dist/Atomic/UI/Price/Price.js +27 -20
  307. package/dist/Atomic/UI/Price/Price.stories.js +52 -0
  308. package/dist/Atomic/UI/Price/Price.test.js +83 -0
  309. package/dist/Atomic/UI/Price/index.js +17 -0
  310. package/dist/Atomic/UI/PriceRange/PriceRange.interface.js +4 -0
  311. package/dist/Atomic/UI/PriceRange/PriceRange.js +40 -18
  312. package/dist/Atomic/UI/PriceRange/PriceRange.stories.js +51 -0
  313. package/dist/Atomic/UI/PriceRange/PriceRange.test.js +72 -0
  314. package/dist/Atomic/UI/PriceRange/index.js +17 -0
  315. package/dist/Atomic/UI/ProgressLine/ProgressLine.interface.js +4 -0
  316. package/dist/Atomic/UI/ProgressLine/ProgressLine.js +92 -73
  317. package/dist/Atomic/UI/ProgressLine/ProgressLine.scss +66 -52
  318. package/dist/Atomic/UI/ProgressLine/ProgressLine.stories.js +163 -0
  319. package/dist/Atomic/UI/ProgressLine/ProgressLine.test.js +60 -0
  320. package/dist/Atomic/UI/ProgressLine/index.js +17 -0
  321. package/dist/Atomic/UI/Status/Status.interface.js +4 -0
  322. package/dist/Atomic/UI/Status/Status.js +62 -51
  323. package/dist/Atomic/UI/Status/Status.scss +48 -29
  324. package/dist/Atomic/UI/Status/Status.stories.js +79 -0
  325. package/dist/Atomic/UI/Status/Status.test.js +103 -0
  326. package/dist/Atomic/UI/Status/index.js +17 -0
  327. package/dist/Atomic/UI/Table/Partials/TdCell.js +126 -88
  328. package/dist/Atomic/UI/Table/Partials/TdHeader.js +58 -39
  329. package/dist/Atomic/UI/Table/Partials/TdRow.js +124 -73
  330. package/dist/Atomic/UI/Table/Partials/TdTitle.js +113 -45
  331. package/dist/Atomic/UI/Table/Table.js +61 -43
  332. package/dist/Atomic/UI/Table/Table.scss +0 -3
  333. package/dist/Atomic/UI/Table/Table.stories.js +250 -0
  334. package/dist/Atomic/UI/Table/TdTypes/TdActions.js +108 -64
  335. package/dist/Atomic/UI/Table/TdTypes/TdPriority.js +44 -31
  336. package/dist/Atomic/UI/Table/TdTypes/TdRange.js +24 -10
  337. package/dist/Atomic/UI/Table/TdTypes/TdWeight.js +59 -48
  338. package/dist/Atomic/UI/Tag/Tag.interface.js +4 -0
  339. package/dist/Atomic/UI/Tag/Tag.js +157 -113
  340. package/dist/Atomic/UI/Tag/Tag.scss +104 -47
  341. package/dist/Atomic/UI/Tag/Tag.stories.js +108 -0
  342. package/dist/Atomic/UI/Tag/Tag.test.js +75 -0
  343. package/dist/Atomic/UI/Tag/index.js +17 -0
  344. package/dist/Atomic/UI/TagList/TagList.js +223 -179
  345. package/dist/Atomic/UI/TagList/TagList.scss +13 -9
  346. package/dist/Atomic/UI/TagList/TagList.stories.js +169 -0
  347. package/dist/Atomic/UI/UserBox/UserBox.interface.js +4 -0
  348. package/dist/Atomic/UI/UserBox/UserBox.js +80 -56
  349. package/dist/Atomic/UI/UserBox/UserBox.scss +45 -21
  350. package/dist/Atomic/UI/UserBox/UserBox.stories.js +57 -0
  351. package/dist/Atomic/UI/UserBox/UserBox.test.js +136 -0
  352. package/dist/Atomic/UI/UserBox/index.js +17 -0
  353. package/dist/Atomic/UI/WizardStepper/WizardStepper.stories.js +70 -0
  354. package/dist/Atomic/UI/WizardStepper/constructor.js +127 -89
  355. package/dist/Atomic/UI/WizardStepper/index.js +14 -6
  356. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.js +53 -51
  357. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.scss +11 -7
  358. package/dist/Atomic/UI/WizardStepper/ui/StateIcon/index.js +9 -5
  359. package/dist/Atomic/UI/WizardStepper/ui/StepRow/StepRow.js +84 -67
  360. package/dist/Atomic/UI/WizardStepper/ui/StepRow/StepRow.scss +13 -7
  361. package/dist/Atomic/UI/WizardStepper/ui/StepRow/index.js +14 -6
  362. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.js +50 -45
  363. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.scss +24 -18
  364. package/dist/Atomic/UI/WizardStepper/ui/StepWrapper/index.js +14 -6
  365. package/dist/Atomic/UI/WizardStepper/ui/icons.js +138 -106
  366. package/dist/Atomic/UI/WizardStepper/ui/index.js +14 -6
  367. package/dist/Classes/AbortableFetch.js +394 -326
  368. package/dist/Classes/AnimatedHandler.js +31 -44
  369. package/dist/Classes/RESTAPI/index.js +131 -173
  370. package/dist/Classes/RESTAPI/partials/AbortableFetch.js +399 -334
  371. package/dist/Classes/RESTAPI/partials/ApiBase.js +30 -30
  372. package/dist/Classes/RESTAPI/partials/ApiRequestCreators.js +107 -88
  373. package/dist/Classes/RESTAPI/partials/ApiUtils.js +144 -166
  374. package/dist/Classes/RESTAPI/partials/CredentialsProcessing.js +180 -204
  375. package/dist/Classes/RESTAPI/partials/Utils.js +80 -83
  376. package/dist/Classes/RESTAPI/partials/_outerDependencies.js +16 -8
  377. package/dist/Classes/RESTAPI/partials/_utils.js +139 -125
  378. package/dist/Constants/index.constants.js +102 -22
  379. package/dist/Functions/Portal.js +67 -23
  380. package/dist/Functions/customEventListener.js +48 -50
  381. package/dist/Functions/dateTime.js +130 -177
  382. package/dist/Functions/fieldValueFormatters.js +275 -346
  383. package/dist/Functions/guards/assertions.js +294 -0
  384. package/dist/Functions/guards/safeValue.js +75 -0
  385. package/dist/Functions/guards/typeGuards.js +374 -0
  386. package/dist/Functions/hooks/useFormFieldsChangesManager.js +125 -96
  387. package/dist/Functions/locale/createTranslator.js +29 -27
  388. package/dist/Functions/operations.js +129 -102
  389. package/dist/Functions/presets/inputMaskPresets.js +88 -99
  390. package/dist/Functions/presets/inputPresets.js +41 -35
  391. package/dist/Functions/presets/mobileKeyboardTypesPresets.js +30 -49
  392. package/dist/Functions/schemas.js +78 -20
  393. package/dist/Functions/useBodyScrollLock.js +21 -15
  394. package/dist/Functions/useClickOutside.js +21 -16
  395. package/dist/Functions/useDebounce.js +62 -21
  396. package/dist/Functions/useFieldFocus.js +83 -79
  397. package/dist/Functions/useFormTools/form-drivers/ArrayWithObjects.js +39 -46
  398. package/dist/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +132 -137
  399. package/dist/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +63 -73
  400. package/dist/Functions/useFormTools/functions/General.js +117 -129
  401. package/dist/Functions/useFormTools/functions/RenderFields.js +75 -85
  402. package/dist/Functions/useFormTools/functions/usePrevious.js +16 -10
  403. package/dist/Functions/useFormTools/index.js +647 -709
  404. package/dist/Functions/useInputHighlightError.js +104 -53
  405. package/dist/Functions/useIsMobile/index.js +17 -0
  406. package/dist/Functions/useIsMobile/useIsMobile.js +33 -0
  407. package/dist/Functions/useIsMobile/useIsMobile.test.js +104 -0
  408. package/dist/Functions/useKeyPress/useHandleKeyPress.js +40 -33
  409. package/dist/Functions/useKeyPress/useHandleKeyPress.test.js +96 -0
  410. package/dist/Functions/useKeyPress/useKeyPress.js +48 -39
  411. package/dist/Functions/useKeyPress/useKeyPress.test.js +87 -0
  412. package/dist/Functions/useLocalStorage.js +38 -31
  413. package/dist/Functions/useLocationParams.js +31 -24
  414. package/dist/Functions/useMediaQuery.js +14 -10
  415. package/dist/Functions/useMetaInfo.js +45 -35
  416. package/dist/Functions/useMouseUpOutside.js +21 -15
  417. package/dist/Functions/useOnlineStatus.js +25 -21
  418. package/dist/Functions/usePasswordChecker.js +183 -111
  419. package/dist/Functions/usePrevious.js +16 -10
  420. package/dist/Functions/useResize.js +32 -28
  421. package/dist/Functions/useScrollTo.js +26 -16
  422. package/dist/Functions/useToggle.js +20 -16
  423. package/dist/Functions/utils.js +493 -469
  424. package/dist/Molecular/CustomIcons/components/AffiliateNetworks.js +75 -28
  425. package/dist/Molecular/CustomIcons/components/AlertCircle.js +77 -28
  426. package/dist/Molecular/CustomIcons/components/AppStore.js +84 -32
  427. package/dist/Molecular/CustomIcons/components/Arrow.js +93 -38
  428. package/dist/Molecular/CustomIcons/components/ArrowDown.js +63 -20
  429. package/dist/Molecular/CustomIcons/components/ArrowLeft.js +71 -23
  430. package/dist/Molecular/CustomIcons/components/ArrowRight.js +71 -23
  431. package/dist/Molecular/CustomIcons/components/ArrowUp.js +63 -20
  432. package/dist/Molecular/CustomIcons/components/Bell.js +61 -18
  433. package/dist/Molecular/CustomIcons/components/Button.js +61 -18
  434. package/dist/Molecular/CustomIcons/components/Campaigns.js +62 -19
  435. package/dist/Molecular/CustomIcons/components/Check.js +62 -19
  436. package/dist/Molecular/CustomIcons/components/Check2.js +61 -18
  437. package/dist/Molecular/CustomIcons/components/ChevronDown.js +61 -18
  438. package/dist/Molecular/CustomIcons/components/ChevronDownDisabled.js +61 -18
  439. package/dist/Molecular/CustomIcons/components/ChevronLeft.js +61 -18
  440. package/dist/Molecular/CustomIcons/components/ChevronRight.js +61 -18
  441. package/dist/Molecular/CustomIcons/components/ChevronUp.js +61 -18
  442. package/dist/Molecular/CustomIcons/components/ChevronUpDown.js +81 -33
  443. package/dist/Molecular/CustomIcons/components/Close.js +64 -20
  444. package/dist/Molecular/CustomIcons/components/ColumnsOrder.js +95 -45
  445. package/dist/Molecular/CustomIcons/components/Delete.js +62 -19
  446. package/dist/Molecular/CustomIcons/components/Edit.js +61 -18
  447. package/dist/Molecular/CustomIcons/components/Email.js +87 -36
  448. package/dist/Molecular/CustomIcons/components/FinturfLogo.js +82 -26
  449. package/dist/Molecular/CustomIcons/components/FinturfLogo2.js +83 -34
  450. package/dist/Molecular/CustomIcons/components/Flows.js +61 -18
  451. package/dist/Molecular/CustomIcons/components/Gift.js +71 -23
  452. package/dist/Molecular/CustomIcons/components/GoogleAuth.js +84 -32
  453. package/dist/Molecular/CustomIcons/components/GooglePlay.js +84 -32
  454. package/dist/Molecular/CustomIcons/components/HelpCircle.js +67 -21
  455. package/dist/Molecular/CustomIcons/components/HelpCircle2.js +68 -22
  456. package/dist/Molecular/CustomIcons/components/HelpCircleFilled.js +67 -21
  457. package/dist/Molecular/CustomIcons/components/Home.js +67 -21
  458. package/dist/Molecular/CustomIcons/components/Home2.js +70 -24
  459. package/dist/Molecular/CustomIcons/components/Key.js +69 -26
  460. package/dist/Molecular/CustomIcons/components/Landers.js +68 -22
  461. package/dist/Molecular/CustomIcons/components/Lock.js +61 -18
  462. package/dist/Molecular/CustomIcons/components/Mail.js +75 -26
  463. package/dist/Molecular/CustomIcons/components/Mastercard.js +128 -68
  464. package/dist/Molecular/CustomIcons/components/Minus.js +79 -31
  465. package/dist/Molecular/CustomIcons/components/Offers.js +62 -19
  466. package/dist/Molecular/CustomIcons/components/Pause.js +79 -31
  467. package/dist/Molecular/CustomIcons/components/PayPal.js +96 -45
  468. package/dist/Molecular/CustomIcons/components/PayPalLightLarge.js +81 -32
  469. package/dist/Molecular/CustomIcons/components/Phone.js +81 -33
  470. package/dist/Molecular/CustomIcons/components/Play.js +79 -31
  471. package/dist/Molecular/CustomIcons/components/Plus.js +79 -31
  472. package/dist/Molecular/CustomIcons/components/Profile.js +69 -23
  473. package/dist/Molecular/CustomIcons/components/QRCode.js +85 -33
  474. package/dist/Molecular/CustomIcons/components/Rectangle.js +61 -18
  475. package/dist/Molecular/CustomIcons/components/Revert.js +67 -21
  476. package/dist/Molecular/CustomIcons/components/Star.js +60 -17
  477. package/dist/Molecular/CustomIcons/components/Star2.js +62 -19
  478. package/dist/Molecular/CustomIcons/components/TrafficSources.js +68 -21
  479. package/dist/Molecular/CustomIcons/components/Trash.js +61 -18
  480. package/dist/Molecular/CustomIcons/components/TrashRed.js +61 -18
  481. package/dist/Molecular/CustomIcons/components/Triggers.js +61 -18
  482. package/dist/Molecular/CustomIcons/components/User.js +71 -23
  483. package/dist/Molecular/CustomIcons/components/Visa.js +88 -34
  484. package/dist/Molecular/CustomIcons/components/X.js +61 -18
  485. package/dist/Molecular/CustomIcons/index.js +76 -674
  486. package/dist/Molecular/FormElement/FormElement.js +44 -41
  487. package/dist/Molecular/FormElement/FormElement.stories.js +92 -0
  488. package/dist/Molecular/FormWithDependOn/FormWithDependOn.js +179 -161
  489. package/dist/Molecular/FormWithDependOn/FormWithDependOn.stories.js +301 -0
  490. package/dist/Molecular/FormWithDependOn/partials/_utils.js +49 -56
  491. package/dist/Molecular/InputAddress/InputAddress.js +496 -421
  492. package/dist/Molecular/InputAddress/InputAddress.scss +12 -14
  493. package/dist/Molecular/InputAddress/InputAddress.stories.js +541 -0
  494. package/dist/Molecular/InputPassword/InputPassword.js +99 -47
  495. package/dist/Molecular/InputPassword/InputPassword.stories.js +86 -0
  496. package/dist/index.js +11 -8
  497. package/dist/scss/_mixins.scss +2 -2
  498. package/dist/scss/_vars.scss +1 -2
  499. package/dist/scss/main.scss +4 -3
  500. package/dist/types/base.interface.js +4 -0
  501. package/dist/types/base.types.js +4 -0
  502. package/dist/types/declaration/ArrayElement.d.js +4 -0
  503. package/dist/types/declaration/AsyncReturnType.d.js +4 -0
  504. package/dist/types/declaration/DeepPartial.d.js +4 -0
  505. package/dist/types/declaration/DeepReadonly.d.js +4 -0
  506. package/dist/types/declaration/DeepRequired.d.js +4 -0
  507. package/dist/types/declaration/Flatten.d.js +4 -0
  508. package/dist/types/declaration/FunctionType.d.js +4 -0
  509. package/dist/types/declaration/If.d.js +4 -0
  510. package/dist/types/declaration/KeysType.d.js +4 -0
  511. package/dist/types/declaration/NonNullableType.d.js +4 -0
  512. package/dist/types/declaration/ObjectType.d.js +4 -0
  513. package/dist/types/declaration/OnlyObjectKeys.d.js +4 -0
  514. package/dist/types/declaration/PrettyPrint.d.js +31 -0
  515. package/dist/types/declaration/RequiredFields.d.js +4 -0
  516. package/dist/types/declaration/TupleType.d.js +4 -0
  517. package/dist/types/declaration/ValuesType.d.js +4 -0
  518. package/package.json +18 -21
  519. package/dist/Atomic/UI/NavLine/Tabs.js +0 -115
  520. package/dist/Functions/animatingFunctions/getAnimatedHandler.js +0 -1
  521. package/dist/Functions/useIsMobile.js +0 -26
@@ -0,0 +1,311 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ const _jsxruntime = require("react/jsx-runtime");
6
+ const _reactrouterdom = require("react-router-dom");
7
+ const _react = require("@testing-library/react");
8
+ const _indexconstants = require("../../../Constants/index.constants");
9
+ const _NavLine = /*#__PURE__*/ _interop_require_default(require("./NavLine"));
10
+ function _interop_require_default(obj) {
11
+ return obj && obj.__esModule ? obj : {
12
+ default: obj
13
+ };
14
+ }
15
+ jest.mock('react-feather', ()=>({
16
+ User: ()=>/*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
17
+ "data-testid": "user-icon",
18
+ children: "User Icon"
19
+ }),
20
+ ChevronLeft: ()=>/*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
21
+ children: "ChevronLeft Icon"
22
+ }),
23
+ ChevronRight: ()=>/*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
24
+ children: "ChevronRight Icon"
25
+ })
26
+ }));
27
+ const mockItems = [
28
+ {
29
+ tabId: 'tab1',
30
+ label: 'Tab 1'
31
+ },
32
+ {
33
+ tabId: 'tab2',
34
+ label: 'Tab 2',
35
+ icon: 'User'
36
+ },
37
+ {
38
+ tabId: 'tab3',
39
+ label: 'Tab 3',
40
+ count: 5
41
+ },
42
+ {
43
+ tabId: 'tab4',
44
+ label: 'Tab 4',
45
+ disabled: true
46
+ },
47
+ {
48
+ tabId: 'tab5',
49
+ label: 'Tab 5',
50
+ isHidden: true
51
+ }
52
+ ];
53
+ const defaultProps = {
54
+ items: mockItems,
55
+ activeTab: 'tab1',
56
+ onChange: jest.fn()
57
+ };
58
+ function renderNavLine(props = {}) {
59
+ const allProps = {
60
+ ...defaultProps,
61
+ ...props
62
+ };
63
+ return (0, _react.render)(/*#__PURE__*/ (0, _jsxruntime.jsx)(_reactrouterdom.BrowserRouter, {
64
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_NavLine.default, {
65
+ ...allProps
66
+ })
67
+ }));
68
+ }
69
+ describe('navLine Component', ()=>{
70
+ beforeEach(()=>{
71
+ jest.clearAllMocks();
72
+ });
73
+ describe('rendering', ()=>{
74
+ it('renders all visible tabs', ()=>{
75
+ renderNavLine();
76
+ expect(_react.screen.getByText('Tab 1')).toBeInTheDocument();
77
+ expect(_react.screen.getByText('Tab 2')).toBeInTheDocument();
78
+ expect(_react.screen.getByText('Tab 3')).toBeInTheDocument();
79
+ expect(_react.screen.getByText('Tab 4')).toBeInTheDocument();
80
+ // Тест на скрытый таб удален, так как компонент все равно рендерит его с классом hidden
81
+ });
82
+ it('hides tab with isHidden prop', ()=>{
83
+ renderNavLine();
84
+ const hiddenTab = _react.screen.getByText('Tab 5').closest('.nav-line__item');
85
+ expect(hiddenTab).toHaveClass('nav-line__item--hidden');
86
+ });
87
+ it('renders tab with icon', ()=>{
88
+ renderNavLine();
89
+ expect(_react.screen.getByTestId('user-icon')).toBeInTheDocument();
90
+ });
91
+ it('renders tab with count', ()=>{
92
+ renderNavLine();
93
+ expect(_react.screen.getByText('(5)')).toBeInTheDocument();
94
+ });
95
+ it('applies active class to active tab', ()=>{
96
+ renderNavLine();
97
+ const activeTab = _react.screen.getByText('Tab 1').closest('.nav-line__item');
98
+ expect(activeTab).toHaveClass('active');
99
+ });
100
+ it('applies disabled class to disabled tab', ()=>{
101
+ renderNavLine();
102
+ const disabledTab = _react.screen.getByText('Tab 4').closest('.nav-line__item');
103
+ expect(disabledTab).toHaveClass('disabled');
104
+ });
105
+ });
106
+ describe('variants', ()=>{
107
+ it('renders with simple variant', ()=>{
108
+ renderNavLine({
109
+ variant: 'simple'
110
+ });
111
+ const navLine = _react.screen.getByTestId('nav-line');
112
+ expect(navLine).toHaveClass('nav-line--simple');
113
+ });
114
+ it('renders with scroll mode', ()=>{
115
+ renderNavLine({
116
+ scrollMode: true
117
+ });
118
+ const navLine = _react.screen.getByTestId('nav-line');
119
+ expect(navLine).toHaveClass('nav-line--scroll-mode');
120
+ });
121
+ });
122
+ describe('interactions', ()=>{
123
+ it('calls onChange when clicking on non-disabled tab', ()=>{
124
+ renderNavLine({
125
+ isLocal: true
126
+ }); // Добавляем isLocal: true
127
+ const tab = _react.screen.getByText('Tab 2').closest('.nav-line__item');
128
+ if (!tab) throw new Error('Tab not found');
129
+ _react.fireEvent.click(tab);
130
+ expect(defaultProps.onChange).toHaveBeenCalledWith('tab2');
131
+ });
132
+ it('does not call onChange when clicking on disabled tab', ()=>{
133
+ renderNavLine({
134
+ isLocal: true
135
+ }); // Добавляем isLocal: true
136
+ const disabledTab = _react.screen.getByText('Tab 4').closest('.nav-line__item');
137
+ if (!disabledTab) throw new Error('Disabled tab not found');
138
+ _react.fireEvent.click(disabledTab);
139
+ expect(defaultProps.onChange).not.toHaveBeenCalled();
140
+ });
141
+ it('handles keyboard navigation when enabled', ()=>{
142
+ renderNavLine({
143
+ isNavigateByKeys: true
144
+ });
145
+ _react.fireEvent.keyDown(document, {
146
+ keyCode: _indexconstants.KEYBOARD_KEY_CODES.ARROW_RIGHT
147
+ });
148
+ expect(defaultProps.onChange).toHaveBeenCalledWith('tab2');
149
+ defaultProps.onChange.mockClear();
150
+ // Симулируем, что текущий активный таб - tab2
151
+ renderNavLine({
152
+ isNavigateByKeys: true,
153
+ activeTab: 'tab2'
154
+ });
155
+ _react.fireEvent.keyDown(document, {
156
+ keyCode: _indexconstants.KEYBOARD_KEY_CODES.ARROW_LEFT
157
+ });
158
+ expect(defaultProps.onChange).toHaveBeenCalledWith('tab1');
159
+ });
160
+ });
161
+ describe('scroll Functionality', ()=>{
162
+ beforeEach(()=>{
163
+ // Мокаем getBoundingClientRect
164
+ const mockGetBoundingClientRect = jest.fn().mockReturnValue({
165
+ width: 200,
166
+ height: 50,
167
+ top: 0,
168
+ left: 0,
169
+ right: 200,
170
+ bottom: 50,
171
+ x: 0,
172
+ y: 0
173
+ });
174
+ // Мокаем scrollWidth и clientWidth
175
+ Object.defineProperties(HTMLElement.prototype, {
176
+ scrollWidth: {
177
+ configurable: true,
178
+ get: ()=>400
179
+ },
180
+ clientWidth: {
181
+ configurable: true,
182
+ get: ()=>200
183
+ },
184
+ scrollLeft: {
185
+ configurable: true,
186
+ get: ()=>50,
187
+ set: jest.fn()
188
+ }
189
+ });
190
+ // Мокаем scrollBy
191
+ window.HTMLElement.prototype.scrollBy = jest.fn();
192
+ Element.prototype.getBoundingClientRect = mockGetBoundingClientRect;
193
+ // Мокаем ResizeObserver
194
+ global.ResizeObserver = jest.fn().mockImplementation(()=>({
195
+ observe: jest.fn(),
196
+ unobserve: jest.fn(),
197
+ disconnect: jest.fn()
198
+ }));
199
+ });
200
+ afterEach(()=>{
201
+ jest.restoreAllMocks();
202
+ jest.clearAllMocks();
203
+ });
204
+ it('renders scroll buttons in scroll mode', async ()=>{
205
+ const longItems = Array.from({
206
+ length: 10
207
+ }, (_, index)=>({
208
+ tabId: `tab${index}`,
209
+ label: `Tab ${index}`
210
+ }));
211
+ renderNavLine({
212
+ scrollMode: true,
213
+ items: longItems
214
+ });
215
+ // Имитируем скролл для активации кнопок
216
+ const inner = _react.screen.getByRole('tablist');
217
+ _react.fireEvent.scroll(inner);
218
+ // Проверяем наличие обеих кнопок
219
+ expect(_react.screen.getByTestId('nav-line-scroll-prev')).toBeInTheDocument();
220
+ expect(_react.screen.getByTestId('nav-line-scroll-next')).toBeInTheDocument();
221
+ });
222
+ it('scrolls content when clicking scroll buttons', ()=>{
223
+ const longItems = Array.from({
224
+ length: 10
225
+ }, (_, index)=>({
226
+ tabId: `tab${index}`,
227
+ label: `Tab ${index}`
228
+ }));
229
+ renderNavLine({
230
+ scrollMode: true,
231
+ items: longItems
232
+ });
233
+ // Имитируем скролл для активации кнопок
234
+ const inner = _react.screen.getByRole('tablist');
235
+ _react.fireEvent.scroll(inner);
236
+ const nextButton = _react.screen.getByTestId('nav-line-scroll-next');
237
+ _react.fireEvent.click(nextButton);
238
+ // Проверяем, что scrollBy был вызван с правильными параметрами
239
+ expect(HTMLElement.prototype.scrollBy).toHaveBeenCalledWith({
240
+ left: 100,
241
+ behavior: 'smooth'
242
+ });
243
+ });
244
+ });
245
+ describe('navigation Modes', ()=>{
246
+ it('renders spans for local navigation', ()=>{
247
+ renderNavLine({
248
+ isLocal: true
249
+ });
250
+ const tabs = _react.screen.getAllByRole('tab');
251
+ tabs.forEach((tab)=>{
252
+ expect(tab.tagName.toLowerCase()).toBe('span');
253
+ });
254
+ });
255
+ it('renders NavLinks for router navigation', ()=>{
256
+ renderNavLine({
257
+ isLocal: false
258
+ });
259
+ const tabs = _react.screen.getAllByRole('tab');
260
+ tabs.forEach((tab)=>{
261
+ expect(tab.tagName.toLowerCase()).toBe('a');
262
+ });
263
+ });
264
+ });
265
+ describe('accessibility', ()=>{
266
+ it('has correct ARIA attributes', ()=>{
267
+ renderNavLine();
268
+ const tabList = _react.screen.getByRole('tablist');
269
+ expect(tabList).toHaveAttribute('aria-orientation', 'horizontal');
270
+ const tabs = _react.screen.getAllByRole('tab');
271
+ tabs.forEach((tab)=>{
272
+ expect(tab).toHaveAttribute('aria-selected');
273
+ if (tab.classList.contains('disabled')) {
274
+ expect(tab).toHaveAttribute('aria-disabled', 'true');
275
+ expect(tab).toHaveAttribute('tabIndex', '-1');
276
+ } else {
277
+ expect(tab).toHaveAttribute('tabIndex', '0');
278
+ }
279
+ });
280
+ });
281
+ });
282
+ describe('edge Cases', ()=>{
283
+ it('handles empty items array', ()=>{
284
+ renderNavLine({
285
+ items: []
286
+ });
287
+ const tabList = _react.screen.getByRole('tablist');
288
+ expect(tabList.children.length).toBe(0);
289
+ });
290
+ it('handles undefined icon', ()=>{
291
+ const itemsWithUndefinedIcon = [
292
+ {
293
+ tabId: 'tab1',
294
+ label: 'Tab 1',
295
+ icon: undefined
296
+ }
297
+ ];
298
+ renderNavLine({
299
+ items: itemsWithUndefinedIcon
300
+ });
301
+ expect(_react.screen.queryByTestId('user-icon')).not.toBeInTheDocument();
302
+ });
303
+ it('handles mode create', ()=>{
304
+ renderNavLine({
305
+ mode: 'create'
306
+ });
307
+ const generalTab = _react.screen.getByText('Tab 1').closest('.nav-line__item');
308
+ expect(generalTab).toHaveClass('disabled');
309
+ });
310
+ });
311
+ });
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ const _NavLine = /*#__PURE__*/ _interop_require_default(require("./NavLine"));
12
+ function _interop_require_default(obj) {
13
+ return obj && obj.__esModule ? obj : {
14
+ default: obj
15
+ };
16
+ }
17
+ const _default = _NavLine.default;
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
@@ -1,56 +1,77 @@
1
1
  "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
2
  Object.defineProperty(exports, "__esModule", {
5
- value: true
3
+ value: true
6
4
  });
7
- exports.default = void 0;
8
- var _react = _interopRequireDefault(require("react"));
9
- var _classnames = _interopRequireDefault(require("classnames"));
10
- var _reactFeather = require("react-feather");
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
9
+ }
10
+ });
11
+ const _jsxruntime = require("react/jsx-runtime");
12
+ const _classnames = /*#__PURE__*/ _interop_require_default(require("classnames"));
13
+ const _react = /*#__PURE__*/ _interop_require_default(require("react"));
14
+ const _reactfeather = require("react-feather");
11
15
  require("./PageTitle.scss");
12
- // TODO: change when there will be routes
13
- // import { Link } from 'react-router-dom';
14
-
15
- const RC = "page-title";
16
- const PageTitle = _ref => {
17
- let {
18
- title,
19
- pages,
20
- children,
21
- testId = RC
22
- } = _ref;
23
- return /*#__PURE__*/_react.default.createElement("div", {
24
- "data-testid": testId,
25
- className: RC
26
- }, /*#__PURE__*/_react.default.createElement("div", {
27
- className: `${RC}__wrap`
28
- }, /*#__PURE__*/_react.default.createElement("span", {
29
- className: `${RC}__title`
30
- }, title), pages.length && /*#__PURE__*/_react.default.createElement("div", {
31
- className: `${RC}__pages`
32
- }, /*#__PURE__*/_react.default.createElement("a", {
33
- className: `${RC}__link`,
34
- href: "/"
35
- }, /*#__PURE__*/_react.default.createElement(_reactFeather.Home, null)), pages.map((_ref2, index) => {
36
- let {
37
- name,
38
- path
39
- } = _ref2;
40
- return pages.length - 1 === index ? /*#__PURE__*/_react.default.createElement(_react.default.Fragment, {
41
- key: index
42
- }, /*#__PURE__*/_react.default.createElement("span", {
43
- className: `${RC}__delimiter`
44
- }, "/"), /*#__PURE__*/_react.default.createElement("span", {
45
- className: (0, _classnames.default)(`${RC}__link`, `${RC}__link_last`)
46
- }, name)) : /*#__PURE__*/_react.default.createElement(_react.default.Fragment, {
47
- key: index
48
- }, /*#__PURE__*/_react.default.createElement("span", {
49
- className: `${RC}__delimiter`
50
- }, "/"), /*#__PURE__*/_react.default.createElement("a", {
51
- className: `${RC}__link`,
52
- href: path
53
- }, name));
54
- }))), children);
55
- };
56
- var _default = exports.default = PageTitle;
16
+ function _interop_require_default(obj) {
17
+ return obj && obj.__esModule ? obj : {
18
+ default: obj
19
+ };
20
+ }
21
+ const RC = 'page-title';
22
+ const PageTitle = ({ title, pages, children, testId = RC })=>/*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
23
+ "data-testid": testId,
24
+ className: RC,
25
+ role: "region",
26
+ "aria-label": title,
27
+ children: [
28
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
29
+ className: `${RC}__wrap`,
30
+ children: [
31
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("h1", {
32
+ className: `${RC}__title`,
33
+ children: title
34
+ }),
35
+ pages.length > 0 && /*#__PURE__*/ (0, _jsxruntime.jsx)("nav", {
36
+ className: `${RC}__pages`,
37
+ "aria-label": "Breadcrumb",
38
+ children: /*#__PURE__*/ (0, _jsxruntime.jsxs)("ol", {
39
+ className: `${RC}__list`,
40
+ children: [
41
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("li", {
42
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)("a", {
43
+ className: `${RC}__link`,
44
+ href: "/",
45
+ "aria-label": "Home page",
46
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_reactfeather.Home, {
47
+ "aria-hidden": "true"
48
+ })
49
+ })
50
+ }),
51
+ pages.map(({ name, path }, index)=>/*#__PURE__*/ (0, _jsxruntime.jsxs)("li", {
52
+ children: [
53
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
54
+ className: `${RC}__delimiter`,
55
+ "aria-hidden": "true",
56
+ children: "/"
57
+ }),
58
+ pages.length - 1 === index ? /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
59
+ className: (0, _classnames.default)(`${RC}__link`, `${RC}__link_last`),
60
+ "aria-current": "page",
61
+ children: name
62
+ }) : /*#__PURE__*/ (0, _jsxruntime.jsx)("a", {
63
+ className: `${RC}__link`,
64
+ href: path,
65
+ children: name
66
+ })
67
+ ]
68
+ }, path))
69
+ ]
70
+ })
71
+ })
72
+ ]
73
+ }),
74
+ children
75
+ ]
76
+ });
77
+ const _default = PageTitle;
@@ -1,6 +1,24 @@
1
- @import "../../../scss/vars";
1
+ @use "../../../scss/vars";
2
2
 
3
3
  .page-title {
4
+ // settings
5
+ --pt-font-size-title: 16px;
6
+ --pt-font-size-text: 13px;
7
+ --pt-font-size-delimiter: 12px;
8
+ --pt-line-height: 20px;
9
+ --pt-spacing-small: 4px;
10
+ --pt-spacing-medium: 8px;
11
+ --pt-outline-width: 2px;
12
+ --pt-border-radius: 2px;
13
+ --pt-outline-offset: 2px;
14
+
15
+ // colors
16
+ --pt-color-text: #{vars.$color--dark};
17
+ --pt-color-primary: #{vars.$color--primary};
18
+ --pt-color-gray: #{vars.$color--gray--dark};
19
+ --pt-color-hover: #{vars.$color--blue--dark};
20
+ --pt-color-focus: #0366d6;
21
+
4
22
  display: flex;
5
23
  justify-content: space-between;
6
24
  align-items: center;
@@ -8,49 +26,69 @@
8
26
  &__title {
9
27
  display: block;
10
28
 
11
- font-size: 16px;
12
- line-height: 20px;
29
+ margin: 0;
30
+ padding: 0;
31
+
32
+ font-size: var(--pt-font-size-title, 16px);
33
+ font-weight: normal;
34
+ line-height: var(--pt-line-height, 20px);
13
35
 
14
- color: $color--dark;
36
+ color: var(--pt-color-text, #{vars.$color--dark});
15
37
  }
16
38
 
17
39
  &__pages {
18
40
  display: flex;
19
41
  align-items: center;
20
42
 
21
- margin-top: 4px;
43
+ margin-top: var(--pt-spacing-small, 4px);
44
+ }
45
+
46
+ &__list {
47
+ display: flex;
48
+ align-items: center;
49
+
50
+ margin: 0;
51
+ padding: 0;
52
+
53
+ list-style: none;
22
54
  }
23
55
 
24
56
  &__delimiter {
25
- margin: 0 8px;
57
+ margin: 0 var(--pt-spacing-medium, 8px);
26
58
 
27
- font-size: 12px;
59
+ font-size: var(--pt-font-size-delimiter, 12px);
28
60
  font-weight: 500;
29
61
 
30
- color: $color--dark;
62
+ color: var(--pt-color-text, #{vars.$color--dark});
31
63
  }
32
64
 
33
65
  &__link {
34
- font-size: 13px;
66
+ font-size: var(--pt-font-size-text, 13px);
35
67
 
36
- color: $color--primary;
68
+ color: var(--pt-color-primary, #{vars.$color--primary});
37
69
 
38
70
  &_last {
39
71
  cursor: default;
40
72
 
41
- color: $color--gray--dark;
73
+ color: var(--pt-color-gray, #{vars.$color--gray--dark});
42
74
  }
43
75
 
44
76
  svg path {
45
- stroke: $color--primary;
77
+ stroke: var(--pt-color-primary, #{vars.$color--primary});
46
78
  }
47
79
 
48
80
  &:hover:not(.page-title__link_last) {
49
- color: $color--blue--dark;
81
+ color: var(--pt-color-hover, #{vars.$color--blue--dark});
50
82
 
51
83
  svg path {
52
- stroke: $color--blue--dark;
84
+ stroke: var(--pt-color-hover, #{vars.$color--blue--dark});
53
85
  }
54
86
  }
87
+
88
+ &:focus-visible {
89
+ border-radius: var(--pt-border-radius, 2px);
90
+ outline: var(--pt-outline-width, 2px) solid var(--pt-color-focus, #0366d6);
91
+ outline-offset: var(--pt-outline-offset, 2px);
92
+ }
55
93
  }
56
94
  }
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ PageTitleTemplate: function() {
13
+ return PageTitleTemplate;
14
+ },
15
+ default: function() {
16
+ return _default;
17
+ }
18
+ });
19
+ const _jsxruntime = require("react/jsx-runtime");
20
+ const _reactfeather = require("react-feather");
21
+ const _Button = /*#__PURE__*/ _interop_require_default(require("../Button/Button"));
22
+ const _PageTitle = /*#__PURE__*/ _interop_require_default(require("./PageTitle"));
23
+ function _interop_require_default(obj) {
24
+ return obj && obj.__esModule ? obj : {
25
+ default: obj
26
+ };
27
+ }
28
+ const _default = {
29
+ title: 'UI/PageTitle',
30
+ component: _PageTitle.default,
31
+ args: {
32
+ title: 'Some page title',
33
+ pages: [
34
+ {
35
+ name: 'Lenders',
36
+ path: '/lenders'
37
+ },
38
+ {
39
+ name: 'Some subpage',
40
+ path: '/lenders/subpage'
41
+ },
42
+ {
43
+ name: 'Current',
44
+ path: '/lenders/subpage/current'
45
+ }
46
+ ]
47
+ }
48
+ };
49
+ function Template(args) {
50
+ const buttonHandler = ()=>{
51
+ // do smth
52
+ };
53
+ return /*#__PURE__*/ (0, _jsxruntime.jsx)(_PageTitle.default, {
54
+ ...args,
55
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)(_Button.default, {
56
+ label: "Back",
57
+ icon: /*#__PURE__*/ (0, _jsxruntime.jsx)(_reactfeather.ArrowLeft, {}),
58
+ onClick: buttonHandler
59
+ })
60
+ });
61
+ }
62
+ const PageTitleTemplate = Template.bind({});