intelicoreact 1.5.41 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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,181 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ const _jsxruntime = require("react/jsx-runtime");
6
+ const _react = require("@testing-library/react");
7
+ require("@testing-library/jest-dom");
8
+ const _PageTitle = /*#__PURE__*/ _interop_require_default(require("./PageTitle"));
9
+ function _interop_require_default(obj) {
10
+ return obj && obj.__esModule ? obj : {
11
+ default: obj
12
+ };
13
+ }
14
+ describe('pageTitle Component', ()=>{
15
+ const mockPages = [
16
+ {
17
+ name: 'Page 1',
18
+ path: '/page1'
19
+ },
20
+ {
21
+ name: 'Page 2',
22
+ path: '/page2'
23
+ },
24
+ {
25
+ name: 'Current Page',
26
+ path: '/current'
27
+ }
28
+ ];
29
+ const defaultProps = {
30
+ title: 'Test Title',
31
+ pages: mockPages,
32
+ testId: 'page-title-test'
33
+ };
34
+ it('renders with basic props', ()=>{
35
+ (0, _react.render)(/*#__PURE__*/ (0, _jsxruntime.jsx)(_PageTitle.default, {
36
+ ...defaultProps
37
+ }));
38
+ expect(_react.screen.getByTestId('page-title-test')).toBeInTheDocument();
39
+ expect(_react.screen.getByRole('heading', {
40
+ level: 1
41
+ })).toHaveTextContent('Test Title');
42
+ });
43
+ it('renders home icon with correct link', ()=>{
44
+ (0, _react.render)(/*#__PURE__*/ (0, _jsxruntime.jsx)(_PageTitle.default, {
45
+ ...defaultProps
46
+ }));
47
+ const homeLink = _react.screen.getByLabelText('Home page');
48
+ expect(homeLink).toBeInTheDocument();
49
+ expect(homeLink).toHaveAttribute('href', '/');
50
+ });
51
+ it('renders breadcrumb navigation correctly', ()=>{
52
+ (0, _react.render)(/*#__PURE__*/ (0, _jsxruntime.jsx)(_PageTitle.default, {
53
+ ...defaultProps
54
+ }));
55
+ const nav = _react.screen.getByRole('navigation', {
56
+ name: 'Breadcrumb'
57
+ });
58
+ expect(nav).toBeInTheDocument();
59
+ mockPages.forEach((page)=>{
60
+ expect(_react.screen.getByText(page.name)).toBeInTheDocument();
61
+ });
62
+ });
63
+ it('renders last page as non-clickable text', ()=>{
64
+ (0, _react.render)(/*#__PURE__*/ (0, _jsxruntime.jsx)(_PageTitle.default, {
65
+ ...defaultProps
66
+ }));
67
+ const lastPage = _react.screen.getByText('Current Page');
68
+ expect(lastPage).toHaveClass('page-title__link_last');
69
+ expect(lastPage.tagName).toBe('SPAN');
70
+ expect(lastPage).toHaveAttribute('aria-current', 'page');
71
+ });
72
+ it('renders intermediate pages as links', ()=>{
73
+ (0, _react.render)(/*#__PURE__*/ (0, _jsxruntime.jsx)(_PageTitle.default, {
74
+ ...defaultProps
75
+ }));
76
+ const firstPageLink = _react.screen.getByText('Page 1');
77
+ expect(firstPageLink.tagName).toBe('A');
78
+ expect(firstPageLink).toHaveAttribute('href', '/page1');
79
+ });
80
+ it('renders children when provided', ()=>{
81
+ const childText = 'Child Content';
82
+ (0, _react.render)(/*#__PURE__*/ (0, _jsxruntime.jsx)(_PageTitle.default, {
83
+ ...defaultProps,
84
+ children: /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
85
+ "data-testid": "child-content",
86
+ children: childText
87
+ })
88
+ }));
89
+ expect(_react.screen.getByTestId('child-content')).toBeInTheDocument();
90
+ expect(_react.screen.getByText(childText)).toBeInTheDocument();
91
+ });
92
+ it('renders with empty pages array', ()=>{
93
+ (0, _react.render)(/*#__PURE__*/ (0, _jsxruntime.jsx)(_PageTitle.default, {
94
+ title: "Test Title",
95
+ pages: [],
96
+ testId: "page-title-test"
97
+ }));
98
+ expect(_react.screen.getByTestId('page-title-test')).toBeInTheDocument();
99
+ expect(_react.screen.queryByRole('navigation')).not.toBeInTheDocument();
100
+ });
101
+ it('uses default testId when not provided', ()=>{
102
+ (0, _react.render)(/*#__PURE__*/ (0, _jsxruntime.jsx)(_PageTitle.default, {
103
+ title: "Test Title",
104
+ pages: []
105
+ }));
106
+ expect(_react.screen.getByTestId('page-title')).toBeInTheDocument();
107
+ });
108
+ it('renders correct number of delimiters', ()=>{
109
+ (0, _react.render)(/*#__PURE__*/ (0, _jsxruntime.jsx)(_PageTitle.default, {
110
+ ...defaultProps
111
+ }));
112
+ const delimiters = _react.screen.getAllByText('/');
113
+ // Количество разделителей должно быть равно количеству страниц
114
+ expect(delimiters).toHaveLength(mockPages.length);
115
+ });
116
+ // Тест на проверку доступности
117
+ it('meets accessibility requirements', ()=>{
118
+ (0, _react.render)(/*#__PURE__*/ (0, _jsxruntime.jsx)(_PageTitle.default, {
119
+ ...defaultProps
120
+ }));
121
+ // Получаем компонент по testId
122
+ const pageTitle = _react.screen.getByTestId(defaultProps.testId);
123
+ // Проверяем атрибуты на самом компоненте
124
+ expect(pageTitle).toHaveAttribute('role', 'region');
125
+ expect(pageTitle).toHaveAttribute('aria-label', defaultProps.title);
126
+ // Проверяем навигацию
127
+ const navigation = _react.screen.getByRole('navigation');
128
+ expect(navigation).toHaveAttribute('aria-label', 'Breadcrumb');
129
+ // Проверяем заголовок
130
+ expect(_react.screen.getByRole('heading', {
131
+ level: 1
132
+ })).toHaveTextContent(defaultProps.title);
133
+ // Проверяем, что последняя страница помечена как текущая
134
+ const currentPage = _react.screen.getByText(mockPages[mockPages.length - 1].name);
135
+ expect(currentPage).toHaveAttribute('aria-current', 'page');
136
+ // Проверяем, что иконка дома правильно скрыта от скринридеров
137
+ const homeLink = _react.screen.getByLabelText('Home page');
138
+ const homeIcon = homeLink.querySelector('svg');
139
+ expect(homeIcon).toHaveAttribute('aria-hidden', 'true');
140
+ });
141
+ describe('accessibility', ()=>{
142
+ it('has correct heading structure', ()=>{
143
+ (0, _react.render)(/*#__PURE__*/ (0, _jsxruntime.jsx)(_PageTitle.default, {
144
+ ...defaultProps
145
+ }));
146
+ const heading = _react.screen.getByRole('heading', {
147
+ level: 1
148
+ });
149
+ expect(heading).toBeInTheDocument();
150
+ expect(heading).toHaveTextContent(defaultProps.title);
151
+ });
152
+ it('has correct breadcrumb structure', ()=>{
153
+ (0, _react.render)(/*#__PURE__*/ (0, _jsxruntime.jsx)(_PageTitle.default, {
154
+ ...defaultProps
155
+ }));
156
+ const listItems = _react.screen.getAllByRole('listitem');
157
+ // Проверяем, что количество элементов списка правильное (home + все страницы)
158
+ expect(listItems).toHaveLength(mockPages.length + 1);
159
+ });
160
+ it('has proper focus management', ()=>{
161
+ (0, _react.render)(/*#__PURE__*/ (0, _jsxruntime.jsx)(_PageTitle.default, {
162
+ ...defaultProps
163
+ }));
164
+ // Проверяем все интерактивные элементы на возможность фокуса
165
+ const links = _react.screen.getAllByRole('link');
166
+ links.forEach((link)=>{
167
+ expect(link).toBeVisible();
168
+ expect(link).not.toHaveAttribute('tabindex', '-1');
169
+ });
170
+ });
171
+ it('preserves correct reading order', ()=>{
172
+ (0, _react.render)(/*#__PURE__*/ (0, _jsxruntime.jsx)(_PageTitle.default, {
173
+ ...defaultProps
174
+ }));
175
+ const nav = _react.screen.getByRole('navigation');
176
+ const homeLink = _react.screen.getByLabelText('Home page');
177
+ // Проверяем, что домашняя ссылка идет первой в навигации
178
+ expect(nav.firstElementChild).toContainElement(homeLink);
179
+ });
180
+ });
181
+ });
@@ -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 _PageTitle = /*#__PURE__*/ _interop_require_default(require("./PageTitle"));
12
+ function _interop_require_default(obj) {
13
+ return obj && obj.__esModule ? obj : {
14
+ default: obj
15
+ };
16
+ }
17
+ const _default = _PageTitle.default;
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
@@ -1,47 +1,110 @@
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 _chart = require("chart.js");
10
- var _reactChartjs = require("react-chartjs-2");
11
- require("./PieChart.scss");
12
- _chart.Chart.register(_chart.ArcElement, _chart.Tooltip);
13
- const PieChart = _ref => {
14
- let {
15
- data,
16
- cutout = "80%",
17
- resultLabel,
18
- resultValue = 0,
19
- withLegend = false
20
- } = _ref;
21
- const options = {
22
- cutout,
23
- plugins: {
24
- legend: {
25
- display: withLegend
26
- }
27
- }
28
- };
29
- return /*#__PURE__*/_react.default.createElement("div", {
30
- className: "pie-chart-box",
31
- style: {
32
- maxWidth: `320px`
5
+ Object.defineProperty(exports, "default", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return _default;
33
9
  }
34
- }, /*#__PURE__*/_react.default.createElement(_reactChartjs.Pie, {
35
- data: data,
36
- options: options
37
- }), Boolean(resultLabel) && /*#__PURE__*/_react.default.createElement("div", {
38
- className: "pie-chart__result"
39
- }, /*#__PURE__*/_react.default.createElement("div", {
40
- className: "pie-chart__result-value"
41
- }, resultValue, /*#__PURE__*/_react.default.createElement("span", {
42
- className: "pie-chart__result-percent"
43
- }, "%"), " "), /*#__PURE__*/_react.default.createElement("div", {
44
- className: "pie-chart__result-label"
45
- }, resultLabel)));
10
+ });
11
+ const _jsxruntime = require("react/jsx-runtime");
12
+ const _chart = require("chart.js");
13
+ const _classnames = /*#__PURE__*/ _interop_require_default(require("classnames"));
14
+ const _reactchartjs2 = require("react-chartjs-2");
15
+ require("./PieChart.scss");
16
+ function _interop_require_default(obj) {
17
+ return obj && obj.__esModule ? obj : {
18
+ default: obj
19
+ };
20
+ }
21
+ _chart.Chart.register(_chart.ArcElement, _chart.Tooltip, _chart.Legend);
22
+ const CN = 'pie-chart-box';
23
+ const PieChart = ({ data, cutout = '80%', resultLabel, resultValue = 0, withLegend = false, chartTitle = 'Pie Chart', chartDescription = 'Statistical data visualization', className, testId = CN, styles, ...chartOptions })=>{
24
+ const options = {
25
+ cutout,
26
+ plugins: {
27
+ legend: {
28
+ display: withLegend,
29
+ position: 'left',
30
+ align: 'center',
31
+ labels: {
32
+ usePointStyle: true,
33
+ padding: 20,
34
+ font: {
35
+ size: 12
36
+ }
37
+ }
38
+ },
39
+ // Добавляем aria-label для графика
40
+ tooltip: {
41
+ enabled: true,
42
+ callbacks: {
43
+ label: (context)=>{
44
+ return `${context.label}: ${context.formattedValue}%`;
45
+ }
46
+ }
47
+ }
48
+ },
49
+ // поддержка клавиатурной навигации
50
+ events: [
51
+ 'mousemove',
52
+ 'mouseout',
53
+ 'click',
54
+ 'touchstart',
55
+ 'touchmove',
56
+ 'keydown'
57
+ ],
58
+ ...chartOptions
59
+ };
60
+ return /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
61
+ "data-testid": testId,
62
+ className: (0, _classnames.default)(CN, {
63
+ [`${CN}--with-legend`]: withLegend
64
+ }, className),
65
+ style: {
66
+ ...styles
67
+ },
68
+ role: "figure",
69
+ "aria-label": chartTitle,
70
+ children: [
71
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("h2", {
72
+ className: "visually-hidden",
73
+ children: chartTitle
74
+ }),
75
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
76
+ className: "visually-hidden",
77
+ children: chartDescription
78
+ }),
79
+ /*#__PURE__*/ (0, _jsxruntime.jsx)(_reactchartjs2.Pie, {
80
+ data: data,
81
+ options: options,
82
+ "aria-label": chartTitle,
83
+ role: "img"
84
+ }),
85
+ Boolean(resultLabel) && /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
86
+ className: "pie-chart__result",
87
+ role: "complementary",
88
+ "aria-label": `${resultLabel}: ${resultValue}%`,
89
+ children: [
90
+ /*#__PURE__*/ (0, _jsxruntime.jsxs)("div", {
91
+ className: "pie-chart__result-value",
92
+ children: [
93
+ resultValue,
94
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("span", {
95
+ className: "pie-chart__result-percent",
96
+ children: "%"
97
+ }),
98
+ ' '
99
+ ]
100
+ }),
101
+ /*#__PURE__*/ (0, _jsxruntime.jsx)("div", {
102
+ className: "pie-chart__result-label",
103
+ children: resultLabel
104
+ })
105
+ ]
106
+ })
107
+ ]
108
+ });
46
109
  };
47
- var _default = exports.default = PieChart;
110
+ const _default = PieChart;
@@ -1,8 +1,83 @@
1
1
  .pie-chart-box {
2
+ // Colors
3
+ --pie-chart-percent-color: #7a8599;
4
+ --pie-chart-label-color: #9aa0b9;
5
+
6
+ // Sizes
7
+ --pie-chart-box-width: 180px;
8
+ --pie-chart-box-width-with-legend: 350px;
9
+ --pie-chart-legend-padding: 20px;
10
+
11
+ // Typography
12
+ --pie-chart-value-font-size: 24px;
13
+ --pie-chart-value-line-height: 34px;
14
+
15
+ --pie-chart-percent-font-size: 18px;
16
+ --pie-chart-percent-line-height: 25px;
17
+ --pie-chart-percent-margin-right: -14px;
18
+ --pie-chart-percent-transform-y: -5px;
19
+ --pie-chart-percent-transform-x: 2px;
20
+
21
+ --pie-chart-label-font-size: 12px;
22
+ --pie-chart-label-line-height: 24px;
23
+
24
+ // Legend
25
+ --pie-chart-legend-font-size: 12px;
26
+ --pie-chart-legend-line-height: 16px;
27
+ --pie-chart-legend-item-margin: 8px;
28
+ --pie-chart-legend-dot-size: 8px;
29
+
2
30
  position: relative;
3
31
 
4
- width: 180px;
32
+ width: var(--pie-chart-box-width, 180px);
5
33
  max-width: 100%;
34
+
35
+ &--with-legend {
36
+ width: var(--pie-chart-box-width-with-legend, 350px);
37
+
38
+ // Стили для легенды Chart.js
39
+ .chartjs-legend {
40
+ margin-left: var(--pie-chart-legend-padding, 20px);
41
+ }
42
+
43
+ .chartjs-legend ul {
44
+ margin: 0;
45
+ padding: 0;
46
+
47
+ list-style: none;
48
+ }
49
+
50
+ .chartjs-legend li {
51
+ display: flex;
52
+ align-items: center;
53
+
54
+ margin-bottom: var(--pie-chart-legend-item-margin, 8px);
55
+
56
+ font-size: var(--pie-chart-legend-font-size, 12px);
57
+ line-height: var(--pie-chart-legend-line-height, 16px);
58
+ }
59
+
60
+ .chartjs-legend li span {
61
+ display: flex;
62
+ align-items: center;
63
+ }
64
+
65
+ .chartjs-legend li span::before {
66
+ display: inline-block;
67
+
68
+ width: var(--pie-chart-legend-dot-size, 8px);
69
+ height: var(--pie-chart-legend-dot-size, 8px);
70
+ margin-right: var(--pie-chart-legend-item-margin, 8px);
71
+
72
+ content: "";
73
+
74
+ border-radius: 50%;
75
+ }
76
+
77
+ .pie-chart__result {
78
+ transform: translateX(-15%) translateY(-50%);
79
+ }
80
+ }
6
81
  }
7
82
 
8
83
  .pie-chart__result {
@@ -17,36 +92,37 @@
17
92
 
18
93
  .pie-chart__result-value {
19
94
  font-family: inherit;
20
- font-size: 24px;
95
+ font-size: var(--pie-chart-value-font-size, 24px);
21
96
  font-weight: 500;
22
- line-height: 34px;
97
+ line-height: var(--pie-chart-value-line-height, 34px);
23
98
  letter-spacing: 0;
24
99
  }
25
100
 
26
101
  .pie-chart__result-percent {
27
102
  display: inline-block;
28
103
 
29
- margin-right: -14px;
104
+ margin-right: var(--pie-chart-percent-margin-right, -14px);
30
105
 
31
106
  font-family: inherit;
32
- font-size: 18px;
107
+ font-size: var(--pie-chart-percent-font-size, 18px);
33
108
  font-weight: 400;
34
- line-height: 25px;
109
+ line-height: var(--pie-chart-percent-line-height, 25px);
35
110
  letter-spacing: 0;
36
111
 
37
- color: #7a8599;
112
+ color: var(--pie-chart-percent-color, #7a8599);
38
113
 
39
- transform: translateY(-5px) translateX(2px);
114
+ transform: translateY(var(--pie-chart-percent-transform-y, -5px))
115
+ translateX(var(--pie-chart-percent-transform-x, 2px));
40
116
  }
41
117
 
42
118
  .pie-chart__result-label {
43
119
  font-family: inherit;
44
- font-size: 12px;
120
+ font-size: var(--pie-chart-label-font-size, 12px);
45
121
  font-weight: 400;
46
- line-height: 24px;
122
+ line-height: var(--pie-chart-label-line-height, 24px);
47
123
  white-space: nowrap;
48
124
  letter-spacing: 0;
49
125
  text-transform: uppercase;
50
126
 
51
- color: #9aa0b9;
127
+ color: var(--pie-chart-label-color, #9aa0b9);
52
128
  }
@@ -0,0 +1,82 @@
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
+ ChartTemplate: function() {
13
+ return ChartTemplate;
14
+ },
15
+ default: function() {
16
+ return _default;
17
+ }
18
+ });
19
+ const _jsxruntime = require("react/jsx-runtime");
20
+ const _PieChart = /*#__PURE__*/ _interop_require_default(require("./PieChart"));
21
+ function _interop_require_default(obj) {
22
+ return obj && obj.__esModule ? obj : {
23
+ default: obj
24
+ };
25
+ }
26
+ const _default = {
27
+ title: 'UI/PieChart',
28
+ component: _PieChart.default,
29
+ argTypes: {},
30
+ args: {
31
+ cutout: '85%',
32
+ withLegend: false,
33
+ resultLabel: 'Conversion rate',
34
+ resultValue: 85.12,
35
+ data: {
36
+ labels: [
37
+ 'Red',
38
+ 'Blue',
39
+ 'Yellow',
40
+ 'Green',
41
+ 'Purple',
42
+ 'Orange'
43
+ ],
44
+ datasets: [
45
+ {
46
+ label: '# of Votes',
47
+ data: [
48
+ 12,
49
+ 19,
50
+ 3,
51
+ 5,
52
+ 2,
53
+ 3
54
+ ],
55
+ backgroundColor: [
56
+ 'rgba(255, 99, 132, 0.2)',
57
+ 'rgba(54, 162, 235, 0.2)',
58
+ 'rgba(255, 206, 86, 0.2)',
59
+ 'rgba(75, 192, 192, 0.2)',
60
+ 'rgba(153, 102, 255, 0.2)',
61
+ 'rgba(255, 159, 64, 0.2)'
62
+ ],
63
+ borderColor: [
64
+ 'rgba(255, 99, 132, 1)',
65
+ 'rgba(54, 162, 235, 1)',
66
+ 'rgba(255, 206, 86, 1)',
67
+ 'rgba(75, 192, 192, 1)',
68
+ 'rgba(153, 102, 255, 1)',
69
+ 'rgba(255, 159, 64, 1)'
70
+ ],
71
+ borderWidth: 0
72
+ }
73
+ ]
74
+ }
75
+ }
76
+ };
77
+ function Template(args) {
78
+ return /*#__PURE__*/ (0, _jsxruntime.jsx)(_PieChart.default, {
79
+ ...args
80
+ });
81
+ }
82
+ const ChartTemplate = Template.bind({});