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
@@ -1,370 +1,299 @@
1
1
  "use strict";
2
-
3
2
  Object.defineProperty(exports, "__esModule", {
4
- value: true
3
+ value: true
5
4
  });
6
- exports.formatToRemoveComa = exports.formatToPriceWithUSD = exports.formatToPriceWithCurrency = exports.formatToOnlyASCIICodeText = exports.formatToLimitLength = exports.formatToHideValuePartially = exports.formatToHex = exports.formatToAddBitDepthPoints = exports.formatOnlyNumbers = exports.formatNumberValueToMask = exports.formatAsPercentage = exports.filterNumeric = exports.filterFloat = void 0;
7
- exports.formatToReplaceAllWhiteSpace = formatToReplaceAllWhiteSpace;
8
- exports.intlNumbersFormatter = exports.getSafelyValue = void 0;
9
- var _utils = require("./utils");
10
- //? The first word "format" in the function name means a logic
11
- //? in which the function transforms the incoming value in any case.
12
-
13
- //? The first word "transform" in the function name means a logic
14
- //? in which the function converts the whole value, but this is not suitable for sequential input
15
-
16
- //? The first word "filter" in the function name means a logic
17
- //? in which the function works as a changer for sequential input
18
-
19
- // ****************************
20
- // Base utils
21
- // ****************************
22
-
23
- const getSafelyValue = value => value !== undefined && value !== null ? value?.toString?.() || "" : "";
24
-
25
- // базовая реализация
26
- exports.getSafelyValue = getSafelyValue;
27
- const intlNumbersFormatter = function (inputValue) {
28
- let settings = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
29
- const safelyInputValue = getSafelyValue(inputValue);
30
- const previousValue = safelyInputValue.slice(0, -1);
31
- const lastSym = safelyInputValue.slice(-1);
32
- const value = lastSym === "." ? previousValue : safelyInputValue;
33
- if (Number.isNaN(Number(value)) || !getSafelyValue(value)) return "";
34
- const {
35
- // локаль, даже региональная, влияет на отображение знаков и формата.
36
- locale = "en-US",
37
- // percent || currency(default case) || decimal(просто число) влияет на ТИП обработки.
38
- withSymbol,
39
- //группировка запятыми поразрядно.
40
- useGrouping = true,
41
- //!!работает только при withSymbol: 'currency' !! влияет на то, как именно будет выглядет формат валюты.
42
- currency = {},
43
- //сколько знаков после точки, и всегда ли они будут.
44
- // !!если поставить isAlwaysRender: true, но не дать центов, то будет 100.00
45
- fractionDigits = {}
46
- } = settings;
47
- const {
48
- currencyType = "USD",
49
- currencyDisplay: inputCurrencyDisplay
50
- } = currency;
51
- let currencyDisplay;
52
- switch (inputCurrencyDisplay) {
53
- case "name":
54
- currencyDisplay = "name";
55
- break;
56
- case "code":
57
- currencyDisplay = "code";
58
- break;
59
- case "narrowSymbol":
60
- currencyDisplay = "narrowSymbol";
61
- break;
62
- default:
63
- currencyDisplay = "symbol";
64
- }
65
- let numberStyle;
66
- switch (withSymbol) {
67
- case "percent":
68
- numberStyle = "percent";
69
- break;
70
- case "currency":
71
- numberStyle = "currency";
72
- break;
73
- default:
74
- numberStyle = "decimal";
75
- break;
76
- }
77
- const {
78
- quantity,
79
- isRenderAlways = false,
80
- minimumFractionDigits: inputMinimumFractionDigits,
81
- maximumFractionDigits: inputMaximumFractionDigits,
82
- conditionallyMinimumFractionDigits
83
- } = fractionDigits;
84
- const dotIndex = safelyInputValue?.indexOf(".");
85
- const afterDot = dotIndex !== -1 ? safelyInputValue.slice(dotIndex + 1) : "";
86
- const minimumFractionDigits = (() => {
87
- //? Безусловное минимальное количество. Всегда отрендерит дробную часть, в количестве символов сколько указано
88
- if (typeof inputMinimumFractionDigits === "number") return inputMinimumFractionDigits;
89
- //? Условное минимальное количество. Если есть дробная часть, то отрендерит дробных символов сколько указано
90
- if (typeof conditionallyMinimumFractionDigits === "number") {
91
- return afterDot && lastSym !== "." ? conditionallyMinimumFractionDigits : 0;
92
- }
93
- //? Дефолтное минимальное количество. Если есть дробная часть, то отрендерит дробных символов столько, сколько есть
94
- //? Флаг isRenderAlways превращает дефолтный кейс в безусловное минимальное количество
95
- return afterDot && lastSym !== "." ? safelyInputValue.slice(dotIndex).length - 1 : isRenderAlways ? quantity : 0;
96
- })();
97
- const priceSettings = {
98
- useGrouping,
99
- //группировка разрядов
100
- style: numberStyle,
101
- //тип форматирования (валюта или число). decimal - без знака валюты
102
- currency: currencyType,
103
- //валюта
104
- currencyDisplay,
105
- //валюта в виде символа
106
- //минимально не надо отображать центы, если их нет, иначе всегда будет .00
107
- minimumFractionDigits,
108
- //! Важно! Если придет велью с количеством дробных разрядов БОЛЬШИМ
109
- //! чем указано в (inputMaximumFractionDigits ?? quantity) - округлит по правилам округления
110
- //максимально отображать 2 цифры после запятой, если центы всё же есть
111
- maximumFractionDigits: inputMaximumFractionDigits ?? quantity
112
- };
113
- let output;
114
- try {
115
- output = new Intl.NumberFormat(locale, priceSettings).format(value);
116
- } catch (e) {
117
- output = value;
118
- // eslint-disable-next-line no-console
119
- console.warn("Intl.NumberFormat error", e);
120
- }
121
- return lastSym === "." ? output + lastSym : output;
122
- };
123
-
124
- // ****************************
125
- // format
126
- // ****************************
127
- exports.intlNumbersFormatter = intlNumbersFormatter;
128
- const formatOnlyNumbers = value => getSafelyValue(value).replace(/\D/g, "");
129
- exports.formatOnlyNumbers = formatOnlyNumbers;
130
- const formatToRemoveComa = value => getSafelyValue(value).replace(/,/g, "");
131
- exports.formatToRemoveComa = formatToRemoveComa;
132
- const formatToAddBitDepthPoints = (value, settings) => intlNumbersFormatter(getSafelyValue(value), {
133
- fractionDigits: {
134
- quantity: settings?.type === "int" ? 0 : settings?.decimalPlaces
135
- }
136
- });
137
-
138
- //! Важно! Если придет велью с количеством дробных разрядов БОЛЬШИМ
139
- //! чем указано в quantity - округлит по правилам округления
140
- exports.formatToAddBitDepthPoints = formatToAddBitDepthPoints;
141
- const formatToPriceWithUSD = value => {
142
- if (isNaN(Number(value))) return value;
143
- return intlNumbersFormatter(getSafelyValue(value), {
144
- withSymbol: "currency",
145
- currency: {
146
- currencyType: "USD"
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
+ filterFloat: function() {
13
+ return filterFloat;
14
+ },
15
+ filterNumeric: function() {
16
+ return filterNumeric;
17
+ },
18
+ formatAsPercentage: function() {
19
+ return formatAsPercentage;
20
+ },
21
+ formatNumberValueToMask: function() {
22
+ return formatNumberValueToMask;
23
+ },
24
+ formatOnlyNumbers: function() {
25
+ return formatOnlyNumbers;
26
+ },
27
+ formatToAddBitDepthPoints: function() {
28
+ return formatToAddBitDepthPoints;
29
+ },
30
+ formatToHex: function() {
31
+ return formatToHex;
32
+ },
33
+ formatToHideValuePartially: function() {
34
+ return formatToHideValuePartially;
35
+ },
36
+ formatToLimitLength: function() {
37
+ return formatToLimitLength;
38
+ },
39
+ formatToOnlyASCIICodeText: function() {
40
+ return formatToOnlyASCIICodeText;
147
41
  },
148
- fractionDigits: {
149
- quantity: 2,
150
- conditionallyMinimumFractionDigits: 2
42
+ formatToPriceWithCurrency: function() {
43
+ return formatToPriceWithCurrency;
44
+ },
45
+ formatToPriceWithUSD: function() {
46
+ return formatToPriceWithUSD;
47
+ },
48
+ formatToRemoveComa: function() {
49
+ return formatToRemoveComa;
50
+ },
51
+ formatToReplaceAllWhiteSpace: function() {
52
+ return formatToReplaceAllWhiteSpace;
53
+ },
54
+ getSafelyValue: function() {
55
+ return getSafelyValue;
56
+ },
57
+ intlNumbersFormatter: function() {
58
+ return intlNumbersFormatter;
151
59
  }
152
- });
60
+ });
61
+ const _utils = require("./utils");
62
+ const getSafelyValue = (value)=>{
63
+ var _value_toString;
64
+ return value !== undefined && value !== null ? (value === null || value === void 0 ? void 0 : (_value_toString = value.toString) === null || _value_toString === void 0 ? void 0 : _value_toString.call(value)) || "" : "";
153
65
  };
154
-
155
- //! Важно! Если придет велью с количеством дробных разрядов БОЛЬШИМ
156
- //! чем указано в quantity - округлит по правилам округления
157
-
158
- // ToDo - symbolPosition временно не реализовано
159
- exports.formatToPriceWithUSD = formatToPriceWithUSD;
160
- const formatToPriceWithCurrency = function (value, currencyCode) {
161
- let symbolPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "before";
162
- if (isNaN(Number(value))) return value;
163
- return intlNumbersFormatter(getSafelyValue(value), {
164
- withSymbol: "currency",
165
- currency: {
166
- currencyType: currencyCode
167
- },
168
- fractionDigits: {
169
- quantity: 2,
170
- conditionallyMinimumFractionDigits: 2
66
+ const intlNumbersFormatter = (inputValue, settings = {})=>{
67
+ const safelyInputValue = getSafelyValue(inputValue);
68
+ const previousValue = safelyInputValue.slice(0, -1);
69
+ const lastSym = safelyInputValue.slice(-1);
70
+ const value = lastSym === "." ? previousValue : safelyInputValue;
71
+ if (Number.isNaN(Number(value)) || !getSafelyValue(value)) return "";
72
+ const { // локаль, даже региональная, влияет на отображение знаков и формата.
73
+ locale = "en-US", // percent || currency(default case) || decimal(просто число) влияет на ТИП обработки.
74
+ withSymbol, //группировка запятыми поразрядно.
75
+ useGrouping = true, //!!работает только при withSymbol: 'currency' !! влияет на то, как именно будет выглядет формат валюты.
76
+ currency = {}, //сколько знаков после точки, и всегда ли они будут.
77
+ // !!если поставить isAlwaysRender: true, но не дать центов, то будет 100.00
78
+ fractionDigits = {} } = settings;
79
+ const { currencyType = "USD", currencyDisplay: inputCurrencyDisplay } = currency;
80
+ let currencyDisplay;
81
+ switch(inputCurrencyDisplay){
82
+ case "name":
83
+ currencyDisplay = "name";
84
+ break;
85
+ case "code":
86
+ currencyDisplay = "code";
87
+ break;
88
+ case "narrowSymbol":
89
+ currencyDisplay = "narrowSymbol";
90
+ break;
91
+ default:
92
+ currencyDisplay = "symbol";
93
+ }
94
+ let numberStyle;
95
+ switch(withSymbol){
96
+ case "percent":
97
+ numberStyle = "percent";
98
+ break;
99
+ case "currency":
100
+ numberStyle = "currency";
101
+ break;
102
+ default:
103
+ numberStyle = "decimal";
104
+ break;
105
+ }
106
+ const { quantity, isRenderAlways = false, minimumFractionDigits: inputMinimumFractionDigits, maximumFractionDigits: inputMaximumFractionDigits, conditionallyMinimumFractionDigits } = fractionDigits;
107
+ const dotIndex = safelyInputValue === null || safelyInputValue === void 0 ? void 0 : safelyInputValue.indexOf(".");
108
+ const afterDot = dotIndex !== -1 ? safelyInputValue.slice(dotIndex + 1) : "";
109
+ const minimumFractionDigits = (()=>{
110
+ //? Безусловное минимальное количество. Всегда отрендерит дробную часть, в количестве символов сколько указано
111
+ if (typeof inputMinimumFractionDigits === "number") return inputMinimumFractionDigits;
112
+ //? Условное минимальное количество. Если есть дробная часть, то отрендерит дробных символов сколько указано
113
+ if (typeof conditionallyMinimumFractionDigits === "number") {
114
+ return afterDot && lastSym !== "." ? conditionallyMinimumFractionDigits : 0;
115
+ }
116
+ //? Дефолтное минимальное количество. Если есть дробная часть, то отрендерит дробных символов столько, сколько есть
117
+ //? Флаг isRenderAlways превращает дефолтный кейс в безусловное минимальное количество
118
+ return afterDot && lastSym !== "." ? safelyInputValue.slice(dotIndex).length - 1 : isRenderAlways ? quantity : 0;
119
+ })();
120
+ const priceSettings = {
121
+ useGrouping,
122
+ style: numberStyle,
123
+ currency: currencyType,
124
+ currencyDisplay,
125
+ //минимально не надо отображать центы, если их нет, иначе всегда будет .00
126
+ minimumFractionDigits,
127
+ //! Важно! Если придет велью с количеством дробных разрядов БОЛЬШИМ
128
+ //! чем указано в (inputMaximumFractionDigits ?? quantity) - округлит по правилам округления
129
+ //максимально отображать 2 цифры после запятой, если центы всё же есть
130
+ maximumFractionDigits: inputMaximumFractionDigits !== null && inputMaximumFractionDigits !== void 0 ? inputMaximumFractionDigits : quantity
131
+ };
132
+ let output;
133
+ try {
134
+ output = new Intl.NumberFormat(locale, priceSettings).format(value);
135
+ } catch (e) {
136
+ output = value;
137
+ // eslint-disable-next-line no-console
138
+ console.warn("Intl.NumberFormat error", e);
171
139
  }
172
- });
140
+ return lastSym === "." ? output + lastSym : output;
173
141
  };
174
-
175
- //? Добавляет в конец знак %. Работает как с одиночными значениями, так и с диапазонами.
176
-
177
- //? value может быть любое, но ожидается что будет
178
- //? - числом
179
- //? - строкой в формате "значение"
180
- //? - строкой в формате "значение - значение" (значение_пробел_тире_пробел_значение)
181
- //? - объект в формате { from: значение, to: значение }
182
-
183
- //? Предполагается, что "значение" может быть приведено к числу операторм + (пример: +значение приводится к числу).
184
- //? Если не может быть приведено, то "значение" вернется как есть, к результату добавится %
185
-
186
- //? Если "значение" пустое (getSafelyValue(значение) вернет пустую строку),
187
- //? то это воспринимается как 0, приводится к 0.00%
188
-
189
- //? Одиноково работает как для ".", так и "," в качестве разделителя дробных разрядов
190
-
191
- //! Важно! Если придет велью с количеством дробных разрядов БОЛЬШИМ
192
- //! чем указано в decimalPlaces - округлит по правилам округления
193
- exports.formatToPriceWithCurrency = formatToPriceWithCurrency;
194
- const formatAsPercentage = (value, settings) => {
195
- const {
196
- isCommonPercentageSymbol = true,
197
- decimalPlaces = 2,
198
- beforeValueSymbol = "",
199
- afterValueSymbol = "",
200
- isGlueSameRangesTogether = false,
201
- // ? Тут удобный ф-л, поэтому иной раз удобно обработать обычный диапазан (НЕ проценты).
142
+ const formatOnlyNumbers = (value)=>getSafelyValue(value).replace(/\D/g, "");
143
+ const formatToRemoveComa = (value)=>getSafelyValue(value).replace(/,/g, "");
144
+ const formatToAddBitDepthPoints = (value, settings)=>intlNumbersFormatter(getSafelyValue(value), {
145
+ fractionDigits: {
146
+ quantity: (settings === null || settings === void 0 ? void 0 : settings.type) === "int" ? 0 : settings === null || settings === void 0 ? void 0 : settings.decimalPlaces
147
+ }
148
+ });
149
+ const formatToPriceWithUSD = (value)=>{
150
+ if (isNaN(Number(value))) return value;
151
+ return intlNumbersFormatter(getSafelyValue(value), {
152
+ withSymbol: "currency",
153
+ currency: {
154
+ currencyType: "USD"
155
+ },
156
+ fractionDigits: {
157
+ quantity: 2,
158
+ conditionallyMinimumFractionDigits: 2
159
+ }
160
+ });
161
+ };
162
+ const formatToPriceWithCurrency = (value, currencyCode, symbolPosition = "before")=>{
163
+ if (isNaN(Number(value))) return value;
164
+ return intlNumbersFormatter(getSafelyValue(value), {
165
+ withSymbol: "currency",
166
+ currency: {
167
+ currencyType: currencyCode
168
+ },
169
+ fractionDigits: {
170
+ quantity: 2,
171
+ conditionallyMinimumFractionDigits: 2
172
+ }
173
+ });
174
+ };
175
+ const formatAsPercentage = (value, settings)=>{
176
+ const { isCommonPercentageSymbol = true, decimalPlaces = 2, beforeValueSymbol = "", afterValueSymbol = "", isGlueSameRangesTogether = false, // ? Тут удобный ф-л, поэтому иной раз удобно обработать обычный диапазан (НЕ проценты).
202
177
  // ? Добавил возможность выпиливать значек процентов.
203
178
  // todo(VL) - вообще правильно заренеймить (formatAsDiapason), а добавление процентов сделать как опцию,
204
179
  // todo(VL) - но как обычно нет времени, нужно будет перечекать по всем проектам где тянется со старым неймингом
205
- isUseAsSimpleDiapason = false
206
- } = (0, _utils.getIsOnlyAnObject)(settings) ? settings : {};
207
- let safelyInputValue;
208
- const checkValue = value => getSafelyValue(value) || "0";
209
- const transform = valueAsSting => {
210
- const processedValue = valueAsSting.replace(/,/g, ".");
211
- if (Number.isNaN(Number(processedValue))) return processedValue;
212
- return `${intlNumbersFormatter(getSafelyValue(Number(processedValue)), {
213
- fractionDigits: {
214
- quantity: decimalPlaces,
215
- minimumFractionDigits: decimalPlaces
216
- }
217
- })}`;
218
- };
219
- if ((0, _utils.getIsOnlyAnObject)(value)) {
220
- safelyInputValue = {
221
- from: checkValue(value.from),
222
- to: checkValue(value.to)
180
+ isUseAsSimpleDiapason = false } = (0, _utils.getIsOnlyAnObject)(settings) ? settings : {};
181
+ let safelyInputValue;
182
+ const checkValue = (value)=>getSafelyValue(value) || "0";
183
+ const transform = (valueAsSting)=>{
184
+ const processedValue = valueAsSting.replace(/,/g, ".");
185
+ if (Number.isNaN(Number(processedValue))) return processedValue;
186
+ return `${intlNumbersFormatter(getSafelyValue(Number(processedValue)), {
187
+ fractionDigits: {
188
+ quantity: decimalPlaces,
189
+ minimumFractionDigits: decimalPlaces
190
+ }
191
+ })}`;
223
192
  };
224
- } else {
225
- safelyInputValue = checkValue(value);
226
- if (safelyInputValue.includes(" - ")) {
227
- const valuesArr = safelyInputValue.split(" - ").map(partOfValue => partOfValue.trim());
228
- safelyInputValue = {
229
- from: checkValue(valuesArr[0]),
230
- to: checkValue(valuesArr[1])
231
- };
193
+ if ((0, _utils.getIsOnlyAnObject)(value)) {
194
+ safelyInputValue = {
195
+ from: checkValue(value.from),
196
+ to: checkValue(value.to)
197
+ };
232
198
  } else {
233
- // Вариант когда велью передано строкой (НЕ объектом) и оно не содержит сепаратора " - "
234
- // - одиночные велью
235
- // - некорректный диапазон
236
- return `${beforeValueSymbol}${transform(safelyInputValue)}${afterValueSymbol}${isUseAsSimpleDiapason ? '' : '%'}`;
199
+ safelyInputValue = checkValue(value);
200
+ if (safelyInputValue.includes(" - ")) {
201
+ const valuesArr = safelyInputValue.split(" - ").map((partOfValue)=>partOfValue.trim());
202
+ safelyInputValue = {
203
+ from: checkValue(valuesArr[0]),
204
+ to: checkValue(valuesArr[1])
205
+ };
206
+ } else {
207
+ // Вариант когда велью передано строкой (НЕ объектом) и оно не содержит сепаратора " - "
208
+ // - одиночные велью
209
+ // - некорректный диапазон
210
+ return `${beforeValueSymbol}${transform(safelyInputValue)}${afterValueSymbol}${isUseAsSimpleDiapason ? '' : '%'}`;
211
+ }
212
+ }
213
+ if (safelyInputValue.from === safelyInputValue.to && !!isGlueSameRangesTogether) {
214
+ return `${beforeValueSymbol}${transform(safelyInputValue.from)}${afterValueSymbol}${isUseAsSimpleDiapason ? '' : '%'}`;
237
215
  }
238
- }
239
- if (safelyInputValue.from === safelyInputValue.to && !!isGlueSameRangesTogether) {
240
- return `${beforeValueSymbol}${transform(safelyInputValue.from)}${afterValueSymbol}${isUseAsSimpleDiapason ? '' : '%'}`;
241
- }
242
- if (isCommonPercentageSymbol) return `${beforeValueSymbol}${transform(safelyInputValue.from)} - ${transform(safelyInputValue.to)}${afterValueSymbol}${isUseAsSimpleDiapason ? '' : '%'}`;else return `${beforeValueSymbol}${transform(safelyInputValue.from)}${isUseAsSimpleDiapason ? '' : '%'} - ${transform(safelyInputValue.to)}${isUseAsSimpleDiapason ? '' : '%'}${afterValueSymbol}`;
216
+ if (isCommonPercentageSymbol) return `${beforeValueSymbol}${transform(safelyInputValue.from)} - ${transform(safelyInputValue.to)}${afterValueSymbol}${isUseAsSimpleDiapason ? '' : '%'}`;
217
+ else return `${beforeValueSymbol}${transform(safelyInputValue.from)}${isUseAsSimpleDiapason ? '' : '%'} - ${transform(safelyInputValue.to)}${isUseAsSimpleDiapason ? '' : '%'}${afterValueSymbol}`;
243
218
  };
244
-
245
- // eslint-disable-next-line no-control-regex
246
- exports.formatAsPercentage = formatAsPercentage;
247
- const formatToOnlyASCIICodeText = text => getSafelyValue(text).replace(/[^\x00-\x7F]+/g, "");
248
-
249
- // eslint-disable-next-line default-param-last
250
- exports.formatToOnlyASCIICodeText = formatToOnlyASCIICodeText;
251
- const formatNumberValueToMask = (inputValue, settings) => {
252
- const safelyInputValue = getSafelyValue(inputValue);
253
-
254
- // default valueSymbol === 'n', default mask === 'nnn-nnn-nnnn'
255
- const {
256
- mask = "XXX-XXX-XXXX",
257
- valueSymbol = "X",
258
- isReturnAdvanced = false
259
- } = settings || {};
260
- const processing = mask.split("").reduce((acc, item) => {
261
- if (acc.value.length) ++acc.cursorPosition;
262
- acc.newValue.push(item === valueSymbol && acc.value.length ? acc.value.shift() : item);
263
- return acc;
264
- }, {
265
- value: safelyInputValue.split("").filter(sym => /[0-9]/g.test(sym)),
266
- newValue: [],
267
- cursorPosition: 0
268
- });
269
- return isReturnAdvanced ? {
270
- value: processing.newValue.join(""),
271
- cursorPosition: processing.cursorPosition
272
- } : processing.newValue.join("");
219
+ const formatToOnlyASCIICodeText = (text)=>getSafelyValue(text).replace(/[^\x00-\x7F]+/g, "");
220
+ const formatNumberValueToMask = (inputValue, settings)=>{
221
+ const safelyInputValue = getSafelyValue(inputValue);
222
+ // default valueSymbol === 'n', default mask === 'nnn-nnn-nnnn'
223
+ const { mask = "XXX-XXX-XXXX", valueSymbol = "X", isReturnAdvanced = false } = settings || {};
224
+ const processing = mask.split("").reduce((acc, item)=>{
225
+ if (acc.value.length) ++acc.cursorPosition;
226
+ acc.newValue.push(item === valueSymbol && acc.value.length ? acc.value.shift() : item);
227
+ return acc;
228
+ }, {
229
+ value: safelyInputValue.split("").filter((sym)=>/[0-9]/g.test(sym)),
230
+ newValue: [],
231
+ cursorPosition: 0
232
+ });
233
+ return isReturnAdvanced ? {
234
+ value: processing.newValue.join(""),
235
+ cursorPosition: processing.cursorPosition
236
+ } : processing.newValue.join("");
273
237
  };
274
- exports.formatNumberValueToMask = formatNumberValueToMask;
275
- const formatToLimitLength = (inputValue, limit) => {
276
- const value = getSafelyValue(inputValue);
277
- return limit && typeof limit === "number" && !Number.isNaN(limit) && value?.length > limit ? value.substr(0, limit) : value;
238
+ const formatToLimitLength = (inputValue, limit)=>{
239
+ const value = getSafelyValue(inputValue);
240
+ return limit && typeof limit === "number" && !Number.isNaN(limit) && (value === null || value === void 0 ? void 0 : value.length) > limit ? value.substr(0, limit) : value;
278
241
  };
279
- exports.formatToLimitLength = formatToLimitLength;
280
- const formatToHex = _ref => {
281
- let {
282
- inputValue,
283
- withSharp
284
- } = _ref;
285
- const value = getSafelyValue(inputValue);
286
- if (withSharp) return `#${value.replace(/[^a-f0-9]/gi, "")}`;
287
- return `${value.replace(/[^#a-f0-9]/gi, "")}`;
242
+ const formatToHex = ({ inputValue, withSharp })=>{
243
+ const value = getSafelyValue(inputValue);
244
+ if (withSharp) return `#${value.replace(/[^a-f0-9]/gi, "")}`;
245
+ return `${value.replace(/[^#a-f0-9]/gi, "")}`;
288
246
  };
289
- exports.formatToHex = formatToHex;
290
247
  function formatToReplaceAllWhiteSpace(str) {
291
- const value = getSafelyValue(str);
292
- return value.replace(/\s+/g, "");
248
+ const value = getSafelyValue(str);
249
+ return value.replace(/\s+/g, "");
293
250
  }
294
-
295
- // ****************************
296
- // transform
297
- // ****************************
298
-
299
- // ...
300
-
301
- // ****************************
302
- // filter
303
- // ****************************
304
- //? Намерянно выпилил определение дефолтного значение на уровне параметров, чтобы сделать null рабочим значением
305
- //? decimalPlaces === null теперь точно определяет режим ввода БЕЗ ограничей десятичных знаков
306
- const filterFloat = (inputValue, decimalPlaces) => {
307
- const replaser = input => ('' + input).replace(/[^\.\d]/g, '');
308
- const value = getSafelyValue(inputValue);
309
-
310
- //? safelyDecimalPlaces ТОЧНО либо null, либо целое число
311
- const safelyDecimalPlaces = (() => {
312
- if (decimalPlaces === null) return decimalPlaces;
313
- const DEFAULT_VALUE = 2;
314
- const isNumber = typeof decimalPlaces === 'number' || typeof decimalPlaces === 'string' && !Number.isNaN(+decimalPlaces);
315
-
316
- //? защита от дробного значения decimalPlaces
317
- return isNumber ? Number((+decimalPlaces).toFixed()) : DEFAULT_VALUE;
318
- })();
319
-
320
- // Обработка кейса если первым символом нажата точка
321
- if (value.length === 1 && (value[0] === '.' || value[0] === ',')) return '0.';
322
-
323
- // Приводим запятые к корректному разделителю, но не выпиливаем
324
- let output = ('' + value)?.replace(/,/g, '.');
325
-
326
- // Выпилить первый ноль, если это не дробь
327
- if (value.length > 1 && value[0] === '0' && value[1] !== '.' && value[0] !== ',') output = value.slice(1);
328
- const previousValue = '' + output.slice(0, -1);
329
- const lastSym = '' + output.slice(-1);
330
-
331
- // Обработка кейса второй точки в дроби
332
- if (lastSym === '.' && previousValue.includes('.')) output = previousValue;
333
-
334
- // if (localStorage.getItem('useDeb')) debugger;
335
-
336
- // Логика ограничения по decimalPlaces
337
- if (typeof safelyDecimalPlaces === 'number') {
338
- if (!safelyDecimalPlaces && lastSym === '.') return replaser(previousValue);
339
- if (previousValue.includes('.') && previousValue.indexOf('.') + 1 + safelyDecimalPlaces === previousValue?.length) {
340
- return replaser(previousValue);
251
+ const filterFloat = (inputValue, decimalPlaces)=>{
252
+ var _this;
253
+ const replaser = (input)=>('' + input).replace(/[^\.\d]/g, '');
254
+ const value = getSafelyValue(inputValue);
255
+ //? safelyDecimalPlaces ТОЧНО либо null, либо целое число
256
+ const safelyDecimalPlaces = (()=>{
257
+ if (decimalPlaces === null) return decimalPlaces;
258
+ const DEFAULT_VALUE = 2;
259
+ const isNumber = typeof decimalPlaces === 'number' || typeof decimalPlaces === 'string' && !Number.isNaN(+decimalPlaces);
260
+ //? защита от дробного значения decimalPlaces
261
+ return isNumber ? Number((+decimalPlaces).toFixed()) : DEFAULT_VALUE;
262
+ })();
263
+ // Обработка кейса если первым символом нажата точка
264
+ if (value.length === 1 && (value[0] === '.' || value[0] === ',')) return '0.';
265
+ // Приводим запятые к корректному разделителю, но не выпиливаем
266
+ let output = (_this = '' + value) === null || _this === void 0 ? void 0 : _this.replace(/,/g, '.');
267
+ // Выпилить первый ноль, если это не дробь
268
+ if (value.length > 1 && value[0] === '0' && value[1] !== '.' && value[0] !== ',') output = value.slice(1);
269
+ const previousValue = '' + output.slice(0, -1);
270
+ const lastSym = '' + output.slice(-1);
271
+ // Обработка кейса второй точки в дроби
272
+ if (lastSym === '.' && previousValue.includes('.')) output = previousValue;
273
+ // if (localStorage.getItem('useDeb')) debugger;
274
+ // Логика ограничения по decimalPlaces
275
+ if (typeof safelyDecimalPlaces === 'number') {
276
+ if (!safelyDecimalPlaces && lastSym === '.') return replaser(previousValue);
277
+ if (previousValue.includes('.') && previousValue.indexOf('.') + 1 + safelyDecimalPlaces === (previousValue === null || previousValue === void 0 ? void 0 : previousValue.length)) {
278
+ return replaser(previousValue);
279
+ }
341
280
  }
342
- }
343
- return replaser(output);
281
+ return replaser(output);
344
282
  };
345
- exports.filterFloat = filterFloat;
346
- const filterNumeric = (value, settings) => {
347
- value = getSafelyValue(value)?.replace(/,/g, "");
348
- const {
349
- type = "float",
350
- decimalPlaces
351
- } = settings || {};
352
- const executor = type === "float" ? filterFloat : formatOnlyNumbers;
353
- return executor(getSafelyValue(value), decimalPlaces);
283
+ const filterNumeric = (value, settings)=>{
284
+ var _getSafelyValue;
285
+ value = (_getSafelyValue = getSafelyValue(value)) === null || _getSafelyValue === void 0 ? void 0 : _getSafelyValue.replace(/,/g, "");
286
+ const { type = "float", decimalPlaces } = settings || {};
287
+ const executor = type === "float" ? filterFloat : formatOnlyNumbers;
288
+ return executor(getSafelyValue(value), decimalPlaces);
354
289
  };
355
- exports.filterNumeric = filterNumeric;
356
- const formatToHideValuePartially = (value, settings) => {
357
- const {
358
- showSymbolsCount = 4,
359
- isVisibleFromFront = false,
360
- isCutOutWhiteSpaces = true
361
- } = settings || {};
362
- const safelyValue = getSafelyValue(value);
363
- const newValue = isCutOutWhiteSpaces ? safelyValue.replace(/\s/g, "") : safelyValue;
364
- if (newValue.length <= showSymbolsCount) return newValue;
365
- const hide = val => val.split("").map(() => "*").join("");
366
- const visiblePart = isVisibleFromFront ? newValue.slice(0, showSymbolsCount) : newValue.slice(-1 * showSymbolsCount);
367
- const hiddenPart = isVisibleFromFront ? newValue.slice(showSymbolsCount) : newValue.slice(0, -1 * showSymbolsCount);
368
- return isVisibleFromFront ? `${visiblePart}${hide(hiddenPart)}` : `${hide(hiddenPart)}${visiblePart}`;
290
+ const formatToHideValuePartially = (value, settings)=>{
291
+ const { showSymbolsCount = 4, isVisibleFromFront = false, isCutOutWhiteSpaces = true } = settings || {};
292
+ const safelyValue = getSafelyValue(value);
293
+ const newValue = isCutOutWhiteSpaces ? safelyValue.replace(/\s/g, "") : safelyValue;
294
+ if (newValue.length <= showSymbolsCount) return newValue;
295
+ const hide = (val)=>val.split("").map(()=>"*").join("");
296
+ const visiblePart = isVisibleFromFront ? newValue.slice(0, showSymbolsCount) : newValue.slice(-1 * showSymbolsCount);
297
+ const hiddenPart = isVisibleFromFront ? newValue.slice(showSymbolsCount) : newValue.slice(0, -1 * showSymbolsCount);
298
+ return isVisibleFromFront ? `${visiblePart}${hide(hiddenPart)}` : `${hide(hiddenPart)}${visiblePart}`;
369
299
  };
370
- exports.formatToHideValuePartially = formatToHideValuePartially;