intelicoreact 2.0.17 → 2.0.19

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 (730) hide show
  1. package/dist/es/Atomic/FormElements/ActionAlert/ActionAlert.js +44 -0
  2. package/dist/es/Atomic/FormElements/ActionAlert/ActionAlert.js.map +1 -0
  3. package/dist/es/Atomic/FormElements/ActionAlert/ActionAlert.styles.css +39 -0
  4. package/dist/es/Atomic/FormElements/ActionAlert/index.js +7 -0
  5. package/dist/es/Atomic/FormElements/ActionAlert/index.js.map +1 -0
  6. package/dist/es/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js +35 -0
  7. package/dist/es/Atomic/FormElements/AdvancedStatus/AdvancedStatus.js.map +1 -0
  8. package/dist/es/Atomic/FormElements/AdvancedStatus/AdvancedStatus.styles.css +84 -0
  9. package/dist/es/Atomic/FormElements/AdvancedStatus/index.js +7 -0
  10. package/dist/es/Atomic/FormElements/AdvancedStatus/index.js.map +1 -0
  11. package/dist/es/Atomic/FormElements/Calendar/Calendar.js +154 -0
  12. package/dist/es/Atomic/FormElements/Calendar/Calendar.js.map +1 -0
  13. package/dist/es/Atomic/FormElements/Calendar/Calendar.styles.css +142 -0
  14. package/dist/es/Atomic/FormElements/CheckboxInput/CheckboxInput.js +45 -0
  15. package/dist/es/Atomic/FormElements/CheckboxInput/CheckboxInput.js.map +1 -0
  16. package/dist/es/Atomic/FormElements/CheckboxInput/CheckboxInput.styles.css +105 -0
  17. package/dist/es/Atomic/FormElements/CheckboxInput/index.js +7 -0
  18. package/dist/es/Atomic/FormElements/CheckboxInput/index.js.map +1 -0
  19. package/dist/es/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js +32 -0
  20. package/dist/es/Atomic/FormElements/CheckboxesLine/CheckboxesLine.js.map +1 -0
  21. package/dist/es/Atomic/FormElements/CheckboxesLine/CheckboxesLine.styles.css +26 -0
  22. package/dist/es/Atomic/FormElements/CheckboxesLine/index.js +7 -0
  23. package/dist/es/Atomic/FormElements/CheckboxesLine/index.js.map +1 -0
  24. package/dist/es/Atomic/FormElements/Datepicker/Datepicker.js +307 -0
  25. package/dist/es/Atomic/FormElements/Datepicker/Datepicker.js.map +1 -0
  26. package/dist/es/Atomic/FormElements/Datepicker/components/DatepickerCalendar.js +95 -0
  27. package/dist/es/Atomic/FormElements/Datepicker/components/DatepickerCalendar.js.map +1 -0
  28. package/dist/es/Atomic/FormElements/Dropdown/Dropdown.js +472 -0
  29. package/dist/es/Atomic/FormElements/Dropdown/Dropdown.js.map +1 -0
  30. package/dist/es/Atomic/FormElements/Dropdown/Dropdown.styles.css +529 -0
  31. package/dist/es/Atomic/FormElements/Dropdown/_utils.js +68 -0
  32. package/dist/es/Atomic/FormElements/Dropdown/_utils.js.map +1 -0
  33. package/dist/es/Atomic/FormElements/Dropdown/components/DropdownLoader.js +23 -0
  34. package/dist/es/Atomic/FormElements/Dropdown/components/DropdownLoader.js.map +1 -0
  35. package/dist/es/Atomic/FormElements/Dropdown/components/DropdownLoader.styles.css +61 -0
  36. package/dist/es/Atomic/FormElements/Dropdown/index.js +7 -0
  37. package/dist/es/Atomic/FormElements/Dropdown/index.js.map +1 -0
  38. package/dist/es/Atomic/FormElements/Dropdown/useDropdown.js +118 -0
  39. package/dist/es/Atomic/FormElements/Dropdown/useDropdown.js.map +1 -0
  40. package/dist/es/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js +373 -0
  41. package/dist/es/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.js.map +1 -0
  42. package/dist/es/Atomic/FormElements/DropdownLiveSearch/DropdownLiveSearch.styles.css +411 -0
  43. package/dist/es/Atomic/FormElements/FileLoader/FileLoader.js +55 -0
  44. package/dist/es/Atomic/FormElements/FileLoader/FileLoader.js.map +1 -0
  45. package/dist/es/Atomic/FormElements/FileLoader/FileLoader.styles.css +127 -0
  46. package/dist/es/Atomic/FormElements/FileLoader/partial/LoadZone.js +86 -0
  47. package/dist/es/Atomic/FormElements/FileLoader/partial/LoadZone.js.map +1 -0
  48. package/dist/es/Atomic/FormElements/FileLoader/partial/LoadedContent.js +52 -0
  49. package/dist/es/Atomic/FormElements/FileLoader/partial/LoadedContent.js.map +1 -0
  50. package/dist/es/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.js +174 -0
  51. package/dist/es/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.js.map +1 -0
  52. package/dist/es/Atomic/FormElements/FileLoaderDescription/FileLoaderDescription.styles.css +88 -0
  53. package/dist/es/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js +137 -0
  54. package/dist/es/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.js.map +1 -0
  55. package/dist/es/Atomic/FormElements/FileLoaderLocal/FileLoaderLocal.styles.css +101 -0
  56. package/dist/es/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js +150 -0
  57. package/dist/es/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.js.map +1 -0
  58. package/dist/es/Atomic/FormElements/FileLoaderLocalGroup/FileLoaderLocalGroup.styles.css +14 -0
  59. package/dist/es/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js +75 -0
  60. package/dist/es/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.js.map +1 -0
  61. package/dist/es/Atomic/FormElements/FormattedRawSSN/FormattedRawSSN.styles.css +54 -0
  62. package/dist/es/Atomic/FormElements/FormattedRawSSN/index.js +7 -0
  63. package/dist/es/Atomic/FormElements/FormattedRawSSN/index.js.map +1 -0
  64. package/dist/es/Atomic/FormElements/Input/Input.js +119 -0
  65. package/dist/es/Atomic/FormElements/Input/Input.js.map +1 -0
  66. package/dist/es/Atomic/FormElements/Input/Input.styles.css +125 -0
  67. package/dist/es/Atomic/FormElements/Input/hooks/useErrorBlink.js +57 -0
  68. package/dist/es/Atomic/FormElements/Input/hooks/useErrorBlink.js.map +1 -0
  69. package/dist/es/Atomic/FormElements/Input/hooks/useInputFocus.js +34 -0
  70. package/dist/es/Atomic/FormElements/Input/hooks/useInputFocus.js.map +1 -0
  71. package/dist/es/Atomic/FormElements/Input/hooks/useInputHover.js +16 -0
  72. package/dist/es/Atomic/FormElements/Input/hooks/useInputHover.js.map +1 -0
  73. package/dist/es/Atomic/FormElements/Input/hooks/useInputValueProcessing.js +126 -0
  74. package/dist/es/Atomic/FormElements/Input/hooks/useInputValueProcessing.js.map +1 -0
  75. package/dist/es/Atomic/FormElements/Input/hooks/useKeyboardHandling.js +32 -0
  76. package/dist/es/Atomic/FormElements/Input/hooks/useKeyboardHandling.js.map +1 -0
  77. package/dist/es/Atomic/FormElements/Input/index.js +7 -0
  78. package/dist/es/Atomic/FormElements/Input/index.js.map +1 -0
  79. package/dist/es/Atomic/FormElements/InputCalendar/InputCalendar.js +89 -0
  80. package/dist/es/Atomic/FormElements/InputCalendar/InputCalendar.js.map +1 -0
  81. package/dist/es/Atomic/FormElements/InputCalendar/InputCalendar.styles.css +20 -0
  82. package/dist/es/Atomic/FormElements/InputColor/InputColor.js +52 -0
  83. package/dist/es/Atomic/FormElements/InputColor/InputColor.js.map +1 -0
  84. package/dist/es/Atomic/FormElements/InputColor/InputColor.styles.css +17 -0
  85. package/dist/es/Atomic/FormElements/InputColor/index.js +7 -0
  86. package/dist/es/Atomic/FormElements/InputColor/index.js.map +1 -0
  87. package/dist/es/Atomic/FormElements/InputCurrency/InputCurrency.js +133 -0
  88. package/dist/es/Atomic/FormElements/InputCurrency/InputCurrency.js.map +1 -0
  89. package/dist/es/Atomic/FormElements/InputCurrency/InputCurrency.styles.css +13 -0
  90. package/dist/es/Atomic/FormElements/InputDateRange/InputDateRange.js +215 -0
  91. package/dist/es/Atomic/FormElements/InputDateRange/InputDateRange.js.map +1 -0
  92. package/dist/es/Atomic/FormElements/InputDateRange/InputDateRange.styles.css +594 -0
  93. package/dist/es/Atomic/FormElements/InputDateRange/components/DateInput.js +45 -0
  94. package/dist/es/Atomic/FormElements/InputDateRange/components/DateInput.js.map +1 -0
  95. package/dist/es/Atomic/FormElements/InputDateRange/components/Datepicker.js +422 -0
  96. package/dist/es/Atomic/FormElements/InputDateRange/components/Datepicker.js.map +1 -0
  97. package/dist/es/Atomic/FormElements/InputDateRange/components/OpenedPart.js +171 -0
  98. package/dist/es/Atomic/FormElements/InputDateRange/components/OpenedPart.js.map +1 -0
  99. package/dist/es/Atomic/FormElements/InputDateRange/components/SelectItem.js +22 -0
  100. package/dist/es/Atomic/FormElements/InputDateRange/components/SelectItem.js.map +1 -0
  101. package/dist/es/Atomic/FormElements/InputDateRange/dependencies.js +166 -0
  102. package/dist/es/Atomic/FormElements/InputDateRange/dependencies.js.map +1 -0
  103. package/dist/es/Atomic/FormElements/InputLink/InputLink.js +64 -0
  104. package/dist/es/Atomic/FormElements/InputLink/InputLink.js.map +1 -0
  105. package/dist/es/Atomic/FormElements/InputLink/InputLink.styles.css +46 -0
  106. package/dist/es/Atomic/FormElements/InputLink/index.js +7 -0
  107. package/dist/es/Atomic/FormElements/InputLink/index.js.map +1 -0
  108. package/dist/es/Atomic/FormElements/InputMask/InputMask.js +7 -0
  109. package/dist/es/Atomic/FormElements/InputMask/InputMask.js.map +1 -0
  110. package/dist/es/Atomic/FormElements/InputMask3/InputMask3.js +486 -0
  111. package/dist/es/Atomic/FormElements/InputMask3/InputMask3.js.map +1 -0
  112. package/dist/es/Atomic/FormElements/InputMask3/InputMask3.styles.css +133 -0
  113. package/dist/es/Atomic/FormElements/InputMask3/config.js +18 -0
  114. package/dist/es/Atomic/FormElements/InputMask3/config.js.map +1 -0
  115. package/dist/es/Atomic/FormElements/InputMask3/functions.js +43 -0
  116. package/dist/es/Atomic/FormElements/InputMask3/functions.js.map +1 -0
  117. package/dist/es/Atomic/FormElements/InputWithAction/InputWithAction.js +74 -0
  118. package/dist/es/Atomic/FormElements/InputWithAction/InputWithAction.js.map +1 -0
  119. package/dist/es/Atomic/FormElements/InputWithAction/InputWithAction.styles.css +88 -0
  120. package/dist/es/Atomic/FormElements/InputWithAction/index.js +7 -0
  121. package/dist/es/Atomic/FormElements/InputWithAction/index.js.map +1 -0
  122. package/dist/es/Atomic/FormElements/InputsRow/InputsRow.js +118 -0
  123. package/dist/es/Atomic/FormElements/InputsRow/InputsRow.js.map +1 -0
  124. package/dist/es/Atomic/FormElements/InputsRow/InputsRow.styles.css +32 -0
  125. package/dist/es/Atomic/FormElements/InputsRow/index.js +7 -0
  126. package/dist/es/Atomic/FormElements/InputsRow/index.js.map +1 -0
  127. package/dist/es/Atomic/FormElements/Label/Label.js +73 -0
  128. package/dist/es/Atomic/FormElements/Label/Label.js.map +1 -0
  129. package/dist/es/Atomic/FormElements/Label/Label.styles.css +30 -0
  130. package/dist/es/Atomic/FormElements/Label/index.js +7 -0
  131. package/dist/es/Atomic/FormElements/Label/index.js.map +1 -0
  132. package/dist/es/Atomic/FormElements/MobileCalendar/MobileCalendar.js +339 -0
  133. package/dist/es/Atomic/FormElements/MobileCalendar/MobileCalendar.js.map +1 -0
  134. package/dist/es/Atomic/FormElements/MobileCalendar/MobileCalendar.styles.css +74 -0
  135. package/dist/es/Atomic/FormElements/MultiSelect/MultiSelect.js +40 -0
  136. package/dist/es/Atomic/FormElements/MultiSelect/MultiSelect.js.map +1 -0
  137. package/dist/es/Atomic/FormElements/MultiSelect/MultiSelect.styles.css +14 -0
  138. package/dist/es/Atomic/FormElements/NumericInput/NumericInput.js +204 -0
  139. package/dist/es/Atomic/FormElements/NumericInput/NumericInput.js.map +1 -0
  140. package/dist/es/Atomic/FormElements/NumericInput/NumericInput.styles.css +129 -0
  141. package/dist/es/Atomic/FormElements/RadioGroup/RadioGroup.js +44 -0
  142. package/dist/es/Atomic/FormElements/RadioGroup/RadioGroup.js.map +1 -0
  143. package/dist/es/Atomic/FormElements/RadioGroup/RadioGroup.styles.css +20 -0
  144. package/dist/es/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js +57 -0
  145. package/dist/es/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.js.map +1 -0
  146. package/dist/es/Atomic/FormElements/RadioGroupWithInput/RadioGroupWithInput.styles.css +23 -0
  147. package/dist/es/Atomic/FormElements/RadioInput/RadioInput.js +35 -0
  148. package/dist/es/Atomic/FormElements/RadioInput/RadioInput.js.map +1 -0
  149. package/dist/es/Atomic/FormElements/RadioInput/RadioInput.styles.css +70 -0
  150. package/dist/es/Atomic/FormElements/RadioInput/index.js +7 -0
  151. package/dist/es/Atomic/FormElements/RadioInput/index.js.map +1 -0
  152. package/dist/es/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js +42 -0
  153. package/dist/es/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.js.map +1 -0
  154. package/dist/es/Atomic/FormElements/RadioRowSwitcher/RadioRowSwitcher.styles.css +123 -0
  155. package/dist/es/Atomic/FormElements/RangeCalendar/RangeCalendar.js +98 -0
  156. package/dist/es/Atomic/FormElements/RangeCalendar/RangeCalendar.js.map +1 -0
  157. package/dist/es/Atomic/FormElements/RangeCalendar/RangeCalendar.styles.css +103 -0
  158. package/dist/es/Atomic/FormElements/RangeInputs/RangeInputs.js +128 -0
  159. package/dist/es/Atomic/FormElements/RangeInputs/RangeInputs.js.map +1 -0
  160. package/dist/es/Atomic/FormElements/RangeInputs/RangeInputs.styles.css +50 -0
  161. package/dist/es/Atomic/FormElements/RangeInputs/index.js +7 -0
  162. package/dist/es/Atomic/FormElements/RangeInputs/index.js.map +1 -0
  163. package/dist/es/Atomic/FormElements/RangeList/RangeList.js +147 -0
  164. package/dist/es/Atomic/FormElements/RangeList/RangeList.js.map +1 -0
  165. package/dist/es/Atomic/FormElements/RangeList/RangeList.styles.css +143 -0
  166. package/dist/es/Atomic/FormElements/RangeList/index.js +7 -0
  167. package/dist/es/Atomic/FormElements/RangeList/index.js.map +1 -0
  168. package/dist/es/Atomic/FormElements/RangeList/partial/RangeListRow.js +40 -0
  169. package/dist/es/Atomic/FormElements/RangeList/partial/RangeListRow.js.map +1 -0
  170. package/dist/es/Atomic/FormElements/RangeSlider/RangeSlider.js +342 -0
  171. package/dist/es/Atomic/FormElements/RangeSlider/RangeSlider.js.map +1 -0
  172. package/dist/es/Atomic/FormElements/RangeSlider/RangeSlider.styles.css +134 -0
  173. package/dist/es/Atomic/FormElements/RangeSlider2/RangeSlider2.interface.js +23 -0
  174. package/dist/es/Atomic/FormElements/RangeSlider2/RangeSlider2.interface.js.map +1 -0
  175. package/dist/es/Atomic/FormElements/RangeSlider2/RangeSlider2.js +590 -0
  176. package/dist/es/Atomic/FormElements/RangeSlider2/RangeSlider2.js.map +1 -0
  177. package/dist/es/Atomic/FormElements/RangeSlider2/RangeSlider2.styles.css +360 -0
  178. package/dist/es/Atomic/FormElements/SwitchableRow/SwitchableRow.js +29 -0
  179. package/dist/es/Atomic/FormElements/SwitchableRow/SwitchableRow.js.map +1 -0
  180. package/dist/es/Atomic/FormElements/SwitchableRow/SwitchableRow.styles.css +14 -0
  181. package/dist/es/Atomic/FormElements/Switcher/Switcher.js +36 -0
  182. package/dist/es/Atomic/FormElements/Switcher/Switcher.js.map +1 -0
  183. package/dist/es/Atomic/FormElements/Switcher/Switcher.styles.css +83 -0
  184. package/dist/es/Atomic/FormElements/Switcher/index.js +7 -0
  185. package/dist/es/Atomic/FormElements/Switcher/index.js.map +1 -0
  186. package/dist/es/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js +36 -0
  187. package/dist/es/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.js.map +1 -0
  188. package/dist/es/Atomic/FormElements/SwitcherCheckbox/SwitcherCheckbox.styles.css +21 -0
  189. package/dist/es/Atomic/FormElements/SwitcherHide/SwitcherHide.js +31 -0
  190. package/dist/es/Atomic/FormElements/SwitcherHide/SwitcherHide.js.map +1 -0
  191. package/dist/es/Atomic/FormElements/SwitcherHide/index.js +7 -0
  192. package/dist/es/Atomic/FormElements/SwitcherHide/index.js.map +1 -0
  193. package/dist/es/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js +43 -0
  194. package/dist/es/Atomic/FormElements/SwitcherRadio/SwitcherRadio.js.map +1 -0
  195. package/dist/es/Atomic/FormElements/SwitcherRadio/SwitcherRadio.styles.css +22 -0
  196. package/dist/es/Atomic/FormElements/SwitcherRadio/index.js +7 -0
  197. package/dist/es/Atomic/FormElements/SwitcherRadio/index.js.map +1 -0
  198. package/dist/es/Atomic/FormElements/SwitcherRange/SwitcherRange.js +33 -0
  199. package/dist/es/Atomic/FormElements/SwitcherRange/SwitcherRange.js.map +1 -0
  200. package/dist/es/Atomic/FormElements/SwitcherRange/index.js +7 -0
  201. package/dist/es/Atomic/FormElements/SwitcherRange/index.js.map +1 -0
  202. package/dist/es/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js +56 -0
  203. package/dist/es/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.js.map +1 -0
  204. package/dist/es/Atomic/FormElements/SwitcherRangeList/SwitcherRangeList.styles.css +0 -0
  205. package/dist/es/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js +99 -0
  206. package/dist/es/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.js.map +1 -0
  207. package/dist/es/Atomic/FormElements/SwitcherTagsDropdown/SwitcherTagsDropdown.styles.css +55 -0
  208. package/dist/es/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js +49 -0
  209. package/dist/es/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.js.map +1 -0
  210. package/dist/es/Atomic/FormElements/SwitcherTextarea/SwitcherTextarea.styles.css +38 -0
  211. package/dist/es/Atomic/FormElements/TagListToDropdown/TagListToDropdown.js +82 -0
  212. package/dist/es/Atomic/FormElements/TagListToDropdown/TagListToDropdown.js.map +1 -0
  213. package/dist/es/Atomic/FormElements/TagsDropdown/TagsDropdown.js +800 -0
  214. package/dist/es/Atomic/FormElements/TagsDropdown/TagsDropdown.js.map +1 -0
  215. package/dist/es/Atomic/FormElements/TagsDropdown/TagsDropdown.styles.css +707 -0
  216. package/dist/es/Atomic/FormElements/Text/Text.js +67 -0
  217. package/dist/es/Atomic/FormElements/Text/Text.js.map +1 -0
  218. package/dist/es/Atomic/FormElements/Text/Text.styles.css +12 -0
  219. package/dist/es/Atomic/FormElements/Text/index.js +7 -0
  220. package/dist/es/Atomic/FormElements/Text/index.js.map +1 -0
  221. package/dist/es/Atomic/FormElements/TextSwitcher/TextSwitcher.js +35 -0
  222. package/dist/es/Atomic/FormElements/TextSwitcher/TextSwitcher.js.map +1 -0
  223. package/dist/es/Atomic/FormElements/TextSwitcher/TextSwitcher.styles.css +84 -0
  224. package/dist/es/Atomic/FormElements/Textarea/Textarea.js +73 -0
  225. package/dist/es/Atomic/FormElements/Textarea/Textarea.js.map +1 -0
  226. package/dist/es/Atomic/FormElements/Textarea/Textarea.styles.css +102 -0
  227. package/dist/es/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js +124 -0
  228. package/dist/es/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.js.map +1 -0
  229. package/dist/es/Atomic/FormElements/TieredCheckboxes/TieredCheckboxes.styles.css +46 -0
  230. package/dist/es/Atomic/FormElements/TieredCheckboxes/index.js +7 -0
  231. package/dist/es/Atomic/FormElements/TieredCheckboxes/index.js.map +1 -0
  232. package/dist/es/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js +36 -0
  233. package/dist/es/Atomic/FormElements/TieredCheckboxes/partial/AccordionWithCheckbox.js.map +1 -0
  234. package/dist/es/Atomic/FormElements/TimeRange/TimeRange.js +55 -0
  235. package/dist/es/Atomic/FormElements/TimeRange/TimeRange.js.map +1 -0
  236. package/dist/es/Atomic/FormElements/TimeRange/TimeRange.styles.css +18 -0
  237. package/dist/es/Atomic/FormElements/TimeRange/index.js +7 -0
  238. package/dist/es/Atomic/FormElements/TimeRange/index.js.map +1 -0
  239. package/dist/es/Atomic/FormElements/UserContacts/UserContacts.js +115 -0
  240. package/dist/es/Atomic/FormElements/UserContacts/UserContacts.js.map +1 -0
  241. package/dist/es/Atomic/FormElements/UserContacts/UserContacts.styles.css +15 -0
  242. package/dist/es/Atomic/FormElements/UserContacts/index.js +7 -0
  243. package/dist/es/Atomic/FormElements/UserContacts/index.js.map +1 -0
  244. package/dist/es/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js +52 -0
  245. package/dist/es/Atomic/FormElements/VariantsListRadio/VariantsListRadio.js.map +1 -0
  246. package/dist/es/Atomic/FormElements/VariantsListRadio/VariantsListRadio.styles.css +213 -0
  247. package/dist/es/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js +61 -0
  248. package/dist/es/Atomic/FormElements/VariantsListRadio/partials/VariantsListRadioItem.js.map +1 -0
  249. package/dist/es/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js +62 -0
  250. package/dist/es/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.js.map +1 -0
  251. package/dist/es/Atomic/FormElements/WidgetPseudoTable/WidgetPseudoTable.styles.css +70 -0
  252. package/dist/es/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js +82 -0
  253. package/dist/es/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.js.map +1 -0
  254. package/dist/es/Atomic/FormElements/WidgetWithSwitchableRows/WidgetWithSwitchableRows.styles.css +70 -0
  255. package/dist/es/Atomic/Layout/Header/Header.js +87 -0
  256. package/dist/es/Atomic/Layout/Header/Header.js.map +1 -0
  257. package/dist/es/Atomic/Layout/Header/Header.styles.css +82 -0
  258. package/dist/es/Atomic/Layout/MainMenu/MainMenu.js +134 -0
  259. package/dist/es/Atomic/Layout/MainMenu/MainMenu.js.map +1 -0
  260. package/dist/es/Atomic/Layout/MainMenu/MainMenu.styles.css +205 -0
  261. package/dist/es/Atomic/Layout/Spinner/Spinner.js +32 -0
  262. package/dist/es/Atomic/Layout/Spinner/Spinner.js.map +1 -0
  263. package/dist/es/Atomic/Layout/Spinner/Spinner.styles.css +82 -0
  264. package/dist/es/Atomic/Layout/Spinner/index.js +7 -0
  265. package/dist/es/Atomic/Layout/Spinner/index.js.map +1 -0
  266. package/dist/es/Atomic/UI/Accordion/Accordion.js +48 -0
  267. package/dist/es/Atomic/UI/Accordion/Accordion.js.map +1 -0
  268. package/dist/es/Atomic/UI/Accordion/Accordion.styles.css +133 -0
  269. package/dist/es/Atomic/UI/Accordion/AccordionItem.js +110 -0
  270. package/dist/es/Atomic/UI/Accordion/AccordionItem.js.map +1 -0
  271. package/dist/es/Atomic/UI/Accordion/index.js +7 -0
  272. package/dist/es/Atomic/UI/Accordion/index.js.map +1 -0
  273. package/dist/es/Atomic/UI/AccordionTable/AccordionTable.js +167 -0
  274. package/dist/es/Atomic/UI/AccordionTable/AccordionTable.js.map +1 -0
  275. package/dist/es/Atomic/UI/AccordionTable/AccordionTable.styles.css +228 -0
  276. package/dist/es/Atomic/UI/AccordionText/AccordionText.js +47 -0
  277. package/dist/es/Atomic/UI/AccordionText/AccordionText.js.map +1 -0
  278. package/dist/es/Atomic/UI/AccordionText/AccordionText.styles.css +48 -0
  279. package/dist/es/Atomic/UI/AdvancedTag/AdvTag.js +148 -0
  280. package/dist/es/Atomic/UI/AdvancedTag/AdvTag.js.map +1 -0
  281. package/dist/es/Atomic/UI/AdvancedTag/AdvancedTags.js +40 -0
  282. package/dist/es/Atomic/UI/AdvancedTag/AdvancedTags.js.map +1 -0
  283. package/dist/es/Atomic/UI/AdvancedTag/AdvancedTags.styles.css +106 -0
  284. package/dist/es/Atomic/UI/AdvancedTag/index.js +8 -0
  285. package/dist/es/Atomic/UI/AdvancedTag/index.js.map +1 -0
  286. package/dist/es/Atomic/UI/Alert/Alert.js +54 -0
  287. package/dist/es/Atomic/UI/Alert/Alert.js.map +1 -0
  288. package/dist/es/Atomic/UI/Alert/Alert.styles.css +65 -0
  289. package/dist/es/Atomic/UI/Alert/index.js +7 -0
  290. package/dist/es/Atomic/UI/Alert/index.js.map +1 -0
  291. package/dist/es/Atomic/UI/Arrow/Arrow.js +107 -0
  292. package/dist/es/Atomic/UI/Arrow/Arrow.js.map +1 -0
  293. package/dist/es/Atomic/UI/Arrow/Arrow.styles.css +14 -0
  294. package/dist/es/Atomic/UI/Box/Box.js +33 -0
  295. package/dist/es/Atomic/UI/Box/Box.js.map +1 -0
  296. package/dist/es/Atomic/UI/Box/Box.styles.css +62 -0
  297. package/dist/es/Atomic/UI/Button/Button.js +35 -0
  298. package/dist/es/Atomic/UI/Button/Button.js.map +1 -0
  299. package/dist/es/Atomic/UI/Button/Button.styles.css +124 -0
  300. package/dist/es/Atomic/UI/ButtonsBar/ButtonsBar.js +49 -0
  301. package/dist/es/Atomic/UI/ButtonsBar/ButtonsBar.js.map +1 -0
  302. package/dist/es/Atomic/UI/ButtonsBar/ButtonsBar.styles.css +7 -0
  303. package/dist/es/Atomic/UI/ButtonsBar/index.js +7 -0
  304. package/dist/es/Atomic/UI/ButtonsBar/index.js.map +1 -0
  305. package/dist/es/Atomic/UI/Chart/Chart.js +96 -0
  306. package/dist/es/Atomic/UI/Chart/Chart.js.map +1 -0
  307. package/dist/es/Atomic/UI/Chart/Chart.styles.css +45 -0
  308. package/dist/es/Atomic/UI/Chart/index.js +7 -0
  309. package/dist/es/Atomic/UI/Chart/index.js.map +1 -0
  310. package/dist/es/Atomic/UI/Chart/partial/Chart.constants.js +89 -0
  311. package/dist/es/Atomic/UI/Chart/partial/Chart.constants.js.map +1 -0
  312. package/dist/es/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js +80 -0
  313. package/dist/es/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.js.map +1 -0
  314. package/dist/es/Atomic/UI/Chart/partial/ChartTypeSwitcherIcon/ChartTypeSwitcherIcon.styles.css +16 -0
  315. package/dist/es/Atomic/UI/Chart/partial/datasetSetters.js +78 -0
  316. package/dist/es/Atomic/UI/Chart/partial/datasetSetters.js.map +1 -0
  317. package/dist/es/Atomic/UI/Chart/partial/optionsConstructor.js +259 -0
  318. package/dist/es/Atomic/UI/Chart/partial/optionsConstructor.js.map +1 -0
  319. package/dist/es/Atomic/UI/Chart/partial/optionsSetters.js +35 -0
  320. package/dist/es/Atomic/UI/Chart/partial/optionsSetters.js.map +1 -0
  321. package/dist/es/Atomic/UI/Chart/partial/utils.js +37 -0
  322. package/dist/es/Atomic/UI/Chart/partial/utils.js.map +1 -0
  323. package/dist/es/Atomic/UI/CircleProgressBar/CircleProgressBar.js +85 -0
  324. package/dist/es/Atomic/UI/CircleProgressBar/CircleProgressBar.js.map +1 -0
  325. package/dist/es/Atomic/UI/CircleProgressBar/CircleProgressBar.styles.css +31 -0
  326. package/dist/es/Atomic/UI/DateTime/DateTime.js +45 -0
  327. package/dist/es/Atomic/UI/DateTime/DateTime.js.map +1 -0
  328. package/dist/es/Atomic/UI/DateTime/DateTime.styles.css +33 -0
  329. package/dist/es/Atomic/UI/DebugContainer/DebugContainer.js +45 -0
  330. package/dist/es/Atomic/UI/DebugContainer/DebugContainer.js.map +1 -0
  331. package/dist/es/Atomic/UI/DebugContainer/DebugContainer.styles.css +32 -0
  332. package/dist/es/Atomic/UI/DebugContainer/useDebugContainer.js +16 -0
  333. package/dist/es/Atomic/UI/DebugContainer/useDebugContainer.js.map +1 -0
  334. package/dist/es/Atomic/UI/DoubleString/DoubleString.js +77 -0
  335. package/dist/es/Atomic/UI/DoubleString/DoubleString.js.map +1 -0
  336. package/dist/es/Atomic/UI/DoubleString/DoubleString.styles.css +42 -0
  337. package/dist/es/Atomic/UI/DoubleString/index.js +7 -0
  338. package/dist/es/Atomic/UI/DoubleString/index.js.map +1 -0
  339. package/dist/es/Atomic/UI/Hint/Hint.js +218 -0
  340. package/dist/es/Atomic/UI/Hint/Hint.js.map +1 -0
  341. package/dist/es/Atomic/UI/Hint/Hint.styles.css +107 -0
  342. package/dist/es/Atomic/UI/Hint/index.js +7 -0
  343. package/dist/es/Atomic/UI/Hint/index.js.map +1 -0
  344. package/dist/es/Atomic/UI/Hint/partials/_constants.js +11 -0
  345. package/dist/es/Atomic/UI/Hint/partials/_constants.js.map +1 -0
  346. package/dist/es/Atomic/UI/Hint/partials/_utils.js +35 -0
  347. package/dist/es/Atomic/UI/Hint/partials/_utils.js.map +1 -0
  348. package/dist/es/Atomic/UI/Modal/Modal.js +178 -0
  349. package/dist/es/Atomic/UI/Modal/Modal.js.map +1 -0
  350. package/dist/es/Atomic/UI/Modal/Modal.styles.css +337 -0
  351. package/dist/es/Atomic/UI/Modal/ModalHOC.js +64 -0
  352. package/dist/es/Atomic/UI/Modal/ModalHOC.js.map +1 -0
  353. package/dist/es/Atomic/UI/Modal/ModalMobile.styles.css +60 -0
  354. package/dist/es/Atomic/UI/Modal/index.js +13 -0
  355. package/dist/es/Atomic/UI/Modal/index.js.map +1 -0
  356. package/dist/es/Atomic/UI/Modal/partials/ModalFooter.js +19 -0
  357. package/dist/es/Atomic/UI/Modal/partials/ModalFooter.js.map +1 -0
  358. package/dist/es/Atomic/UI/Modal/partials/ModalTitle.js +43 -0
  359. package/dist/es/Atomic/UI/Modal/partials/ModalTitle.js.map +1 -0
  360. package/dist/es/Atomic/UI/Modal/partials/_constants.js +26 -0
  361. package/dist/es/Atomic/UI/Modal/partials/_constants.js.map +1 -0
  362. package/dist/es/Atomic/UI/Modal/partials/_utils.js +45 -0
  363. package/dist/es/Atomic/UI/Modal/partials/_utils.js.map +1 -0
  364. package/dist/es/Atomic/UI/Modal/partials/useMobileModal.js +141 -0
  365. package/dist/es/Atomic/UI/Modal/partials/useMobileModal.js.map +1 -0
  366. package/dist/es/Atomic/UI/MonoAccordion/MonoAccordion.js +59 -0
  367. package/dist/es/Atomic/UI/MonoAccordion/MonoAccordion.js.map +1 -0
  368. package/dist/es/Atomic/UI/MonoAccordion/MonoAccordion.styles.css +110 -0
  369. package/dist/es/Atomic/UI/MonoAccordion/index.js +7 -0
  370. package/dist/es/Atomic/UI/MonoAccordion/index.js.map +1 -0
  371. package/dist/es/Atomic/UI/NavLine/NavLine.js +209 -0
  372. package/dist/es/Atomic/UI/NavLine/NavLine.js.map +1 -0
  373. package/dist/es/Atomic/UI/NavLine/NavLine.styles.css +187 -0
  374. package/dist/es/Atomic/UI/NavLine/index.js +7 -0
  375. package/dist/es/Atomic/UI/NavLine/index.js.map +1 -0
  376. package/dist/es/Atomic/UI/PageTitle/PageTitle.js +49 -0
  377. package/dist/es/Atomic/UI/PageTitle/PageTitle.js.map +1 -0
  378. package/dist/es/Atomic/UI/PageTitle/PageTitle.styles.css +89 -0
  379. package/dist/es/Atomic/UI/PageTitle/index.js +7 -0
  380. package/dist/es/Atomic/UI/PageTitle/index.js.map +1 -0
  381. package/dist/es/Atomic/UI/PieChart/PieChart.js +41 -0
  382. package/dist/es/Atomic/UI/PieChart/PieChart.js.map +1 -0
  383. package/dist/es/Atomic/UI/PieChart/PieChart.styles.css +44 -0
  384. package/dist/es/Atomic/UI/Price/Price.js +20 -0
  385. package/dist/es/Atomic/UI/Price/Price.js.map +1 -0
  386. package/dist/es/Atomic/UI/Price/index.js +7 -0
  387. package/dist/es/Atomic/UI/Price/index.js.map +1 -0
  388. package/dist/es/Atomic/UI/PriceRange/PriceRange.js +33 -0
  389. package/dist/es/Atomic/UI/PriceRange/PriceRange.js.map +1 -0
  390. package/dist/es/Atomic/UI/PriceRange/index.js +7 -0
  391. package/dist/es/Atomic/UI/PriceRange/index.js.map +1 -0
  392. package/dist/es/Atomic/UI/ProgressLine/ProgressLine.js +74 -0
  393. package/dist/es/Atomic/UI/ProgressLine/ProgressLine.js.map +1 -0
  394. package/dist/es/Atomic/UI/ProgressLine/ProgressLine.styles.css +243 -0
  395. package/dist/es/Atomic/UI/ProgressLine/index.js +7 -0
  396. package/dist/es/Atomic/UI/ProgressLine/index.js.map +1 -0
  397. package/dist/es/Atomic/UI/Status/Status.js +48 -0
  398. package/dist/es/Atomic/UI/Status/Status.js.map +1 -0
  399. package/dist/es/Atomic/UI/Status/Status.styles.css +98 -0
  400. package/dist/es/Atomic/UI/Status/index.js +7 -0
  401. package/dist/es/Atomic/UI/Status/index.js.map +1 -0
  402. package/dist/es/Atomic/UI/Table/Partials/TdCell.js +67 -0
  403. package/dist/es/Atomic/UI/Table/Partials/TdCell.js.map +1 -0
  404. package/dist/es/Atomic/UI/Table/Partials/TdHeader.js +43 -0
  405. package/dist/es/Atomic/UI/Table/Partials/TdHeader.js.map +1 -0
  406. package/dist/es/Atomic/UI/Table/Partials/TdRow.js +56 -0
  407. package/dist/es/Atomic/UI/Table/Partials/TdRow.js.map +1 -0
  408. package/dist/es/Atomic/UI/Table/Table.js +36 -0
  409. package/dist/es/Atomic/UI/Table/Table.js.map +1 -0
  410. package/dist/es/Atomic/UI/Table/Table.styles.css +63 -0
  411. package/dist/es/Atomic/UI/Table/TdTypes/TdActions.js +56 -0
  412. package/dist/es/Atomic/UI/Table/TdTypes/TdActions.js.map +1 -0
  413. package/dist/es/Atomic/UI/Table/TdTypes/TdPriority.js +29 -0
  414. package/dist/es/Atomic/UI/Table/TdTypes/TdPriority.js.map +1 -0
  415. package/dist/es/Atomic/UI/Table/TdTypes/TdRange.js +14 -0
  416. package/dist/es/Atomic/UI/Table/TdTypes/TdRange.js.map +1 -0
  417. package/dist/es/Atomic/UI/Table/TdTypes/TdTypes.styles.css +29 -0
  418. package/dist/es/Atomic/UI/Table/TdTypes/TdWeight.js +43 -0
  419. package/dist/es/Atomic/UI/Table/TdTypes/TdWeight.js.map +1 -0
  420. package/dist/es/Atomic/UI/Tag/Tag.js +110 -0
  421. package/dist/es/Atomic/UI/Tag/Tag.js.map +1 -0
  422. package/dist/es/Atomic/UI/Tag/Tag.styles.css +148 -0
  423. package/dist/es/Atomic/UI/Tag/index.js +7 -0
  424. package/dist/es/Atomic/UI/Tag/index.js.map +1 -0
  425. package/dist/es/Atomic/UI/TagList/TagList.js +152 -0
  426. package/dist/es/Atomic/UI/TagList/TagList.js.map +1 -0
  427. package/dist/es/Atomic/UI/TagList/TagList.styles.css +59 -0
  428. package/dist/es/Atomic/UI/UserBox/UserBox.js +49 -0
  429. package/dist/es/Atomic/UI/UserBox/UserBox.js.map +1 -0
  430. package/dist/es/Atomic/UI/UserBox/UserBox.styles.css +64 -0
  431. package/dist/es/Atomic/UI/UserBox/index.js +7 -0
  432. package/dist/es/Atomic/UI/UserBox/index.js.map +1 -0
  433. package/dist/es/Atomic/UI/WizardStepper/constructor.js +12 -0
  434. package/dist/es/Atomic/UI/WizardStepper/constructor.js.map +1 -0
  435. package/dist/es/Atomic/UI/WizardStepper/index.js +7 -0
  436. package/dist/es/Atomic/UI/WizardStepper/index.js.map +1 -0
  437. package/dist/es/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.js +52 -0
  438. package/dist/es/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.js.map +1 -0
  439. package/dist/es/Atomic/UI/WizardStepper/ui/StateIcon/StateIcon.styles.css +23 -0
  440. package/dist/es/Atomic/UI/WizardStepper/ui/StateIcon/index.js +7 -0
  441. package/dist/es/Atomic/UI/WizardStepper/ui/StateIcon/index.js.map +1 -0
  442. package/dist/es/Atomic/UI/WizardStepper/ui/StepRow/StepRow.js +67 -0
  443. package/dist/es/Atomic/UI/WizardStepper/ui/StepRow/StepRow.js.map +1 -0
  444. package/dist/es/Atomic/UI/WizardStepper/ui/StepRow/StepRow.styles.css +60 -0
  445. package/dist/es/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.js +43 -0
  446. package/dist/es/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.js.map +1 -0
  447. package/dist/es/Atomic/UI/WizardStepper/ui/StepWrapper/StepWrapper.styles.css +64 -0
  448. package/dist/es/Atomic/UI/WizardStepper/ui/StepWrapper/index.js +7 -0
  449. package/dist/es/Atomic/UI/WizardStepper/ui/StepWrapper/index.js.map +1 -0
  450. package/dist/es/Atomic/UI/WizardStepper/ui/icons.js +124 -0
  451. package/dist/es/Atomic/UI/WizardStepper/ui/icons.js.map +1 -0
  452. package/dist/es/Atomic/UI/WizardStepper/ui/index.js +7 -0
  453. package/dist/es/Atomic/UI/WizardStepper/ui/index.js.map +1 -0
  454. package/dist/es/Classes/AbortableFetch.js +271 -0
  455. package/dist/es/Classes/AbortableFetch.js.map +1 -0
  456. package/dist/es/Classes/AnimatedHandler.js +27 -0
  457. package/dist/es/Classes/AnimatedHandler.js.map +1 -0
  458. package/dist/es/Classes/RESTAPI/index.js +112 -0
  459. package/dist/es/Classes/RESTAPI/index.js.map +1 -0
  460. package/dist/es/Classes/RESTAPI/partials/AbortableFetch.js +323 -0
  461. package/dist/es/Classes/RESTAPI/partials/AbortableFetch.js.map +1 -0
  462. package/dist/es/Classes/RESTAPI/partials/ApiBase.js +38 -0
  463. package/dist/es/Classes/RESTAPI/partials/ApiBase.js.map +1 -0
  464. package/dist/es/Classes/RESTAPI/partials/ApiRequestCreators.js +151 -0
  465. package/dist/es/Classes/RESTAPI/partials/ApiRequestCreators.js.map +1 -0
  466. package/dist/es/Classes/RESTAPI/partials/ApiUtils.js +142 -0
  467. package/dist/es/Classes/RESTAPI/partials/ApiUtils.js.map +1 -0
  468. package/dist/es/Classes/RESTAPI/partials/CredentialsProcessing.js +212 -0
  469. package/dist/es/Classes/RESTAPI/partials/CredentialsProcessing.js.map +1 -0
  470. package/dist/es/Classes/RESTAPI/partials/Utils.js +70 -0
  471. package/dist/es/Classes/RESTAPI/partials/Utils.js.map +1 -0
  472. package/dist/es/Classes/RESTAPI/partials/_utils.js +144 -0
  473. package/dist/es/Classes/RESTAPI/partials/_utils.js.map +1 -0
  474. package/dist/es/Classes/RESTAPI/partials/sse.js +127 -0
  475. package/dist/es/Classes/RESTAPI/partials/sse.js.map +1 -0
  476. package/dist/es/Constants/index.constants.js +78 -0
  477. package/dist/es/Constants/index.constants.js.map +1 -0
  478. package/dist/es/Functions/Portal.js +21 -0
  479. package/dist/es/Functions/Portal.js.map +1 -0
  480. package/dist/es/Functions/customEventListener.js +67 -0
  481. package/dist/es/Functions/customEventListener.js.map +1 -0
  482. package/dist/es/Functions/dateTime.js +113 -0
  483. package/dist/es/Functions/dateTime.js.map +1 -0
  484. package/dist/es/Functions/fieldValueFormatters.js +193 -0
  485. package/dist/es/Functions/fieldValueFormatters.js.map +1 -0
  486. package/dist/es/Functions/guards/assertions.js +265 -0
  487. package/dist/es/Functions/guards/assertions.js.map +1 -0
  488. package/dist/es/Functions/guards/safeValue.js +66 -0
  489. package/dist/es/Functions/guards/safeValue.js.map +1 -0
  490. package/dist/es/Functions/guards/typeGuards.js +397 -0
  491. package/dist/es/Functions/guards/typeGuards.js.map +1 -0
  492. package/dist/es/Functions/hooks/useFormFieldsChangesManager.js +84 -0
  493. package/dist/es/Functions/hooks/useFormFieldsChangesManager.js.map +1 -0
  494. package/dist/es/Functions/locale/createTranslator.js +23 -0
  495. package/dist/es/Functions/locale/createTranslator.js.map +1 -0
  496. package/dist/es/Functions/operations.js +88 -0
  497. package/dist/es/Functions/operations.js.map +1 -0
  498. package/dist/es/Functions/presets/inputMaskPresets.js +82 -0
  499. package/dist/es/Functions/presets/inputMaskPresets.js.map +1 -0
  500. package/dist/es/Functions/presets/inputPresets.js +50 -0
  501. package/dist/es/Functions/presets/inputPresets.js.map +1 -0
  502. package/dist/es/Functions/presets/mobileKeyboardTypesPresets.js +11 -0
  503. package/dist/es/Functions/presets/mobileKeyboardTypesPresets.js.map +1 -0
  504. package/dist/es/Functions/sdk/runtime-sdk/client.js +161 -0
  505. package/dist/es/Functions/sdk/runtime-sdk/client.js.map +1 -0
  506. package/dist/es/Functions/sdk/runtime-sdk/config.js +77 -0
  507. package/dist/es/Functions/sdk/runtime-sdk/config.js.map +1 -0
  508. package/dist/es/Functions/sdk/runtime-sdk/queue.js +131 -0
  509. package/dist/es/Functions/sdk/runtime-sdk/queue.js.map +1 -0
  510. package/dist/es/Functions/sdk/runtime-sdk/transport.js +114 -0
  511. package/dist/es/Functions/sdk/runtime-sdk/transport.js.map +1 -0
  512. package/dist/es/Functions/useBodyScrollLock.js +15 -0
  513. package/dist/es/Functions/useBodyScrollLock.js.map +1 -0
  514. package/dist/es/Functions/useClickOutside.js +17 -0
  515. package/dist/es/Functions/useClickOutside.js.map +1 -0
  516. package/dist/es/Functions/useDebounce.js +18 -0
  517. package/dist/es/Functions/useDebounce.js.map +1 -0
  518. package/dist/es/Functions/useFieldFocus.js +62 -0
  519. package/dist/es/Functions/useFieldFocus.js.map +1 -0
  520. package/dist/es/Functions/useFormTools/form-drivers/ArrayWithObjects.js +29 -0
  521. package/dist/es/Functions/useFormTools/form-drivers/ArrayWithObjects.js.map +1 -0
  522. package/dist/es/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js +95 -0
  523. package/dist/es/Functions/useFormTools/form-drivers/ObjectWithIterableObjects.js.map +1 -0
  524. package/dist/es/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js +49 -0
  525. package/dist/es/Functions/useFormTools/form-drivers/ObjectWithNamedKeyObjects.js.map +1 -0
  526. package/dist/es/Functions/useFormTools/functions/General.js +87 -0
  527. package/dist/es/Functions/useFormTools/functions/General.js.map +1 -0
  528. package/dist/es/Functions/useFormTools/functions/RenderFields.js +70 -0
  529. package/dist/es/Functions/useFormTools/functions/RenderFields.js.map +1 -0
  530. package/dist/es/Functions/useFormTools/index.js +464 -0
  531. package/dist/es/Functions/useFormTools/index.js.map +1 -0
  532. package/dist/es/Functions/useInputHighlightError.js +50 -0
  533. package/dist/es/Functions/useInputHighlightError.js.map +1 -0
  534. package/dist/es/Functions/useIsMobile/index.js +7 -0
  535. package/dist/es/Functions/useIsMobile/index.js.map +1 -0
  536. package/dist/es/Functions/useIsMobile/useIsMobile.js +32 -0
  537. package/dist/es/Functions/useIsMobile/useIsMobile.js.map +1 -0
  538. package/dist/es/Functions/useKeyPress/useHandleKeyPress.js +38 -0
  539. package/dist/es/Functions/useKeyPress/useHandleKeyPress.js.map +1 -0
  540. package/dist/es/Functions/useKeyPress/useKeyPress.js +54 -0
  541. package/dist/es/Functions/useKeyPress/useKeyPress.js.map +1 -0
  542. package/dist/es/Functions/useLocalStorage.js +28 -0
  543. package/dist/es/Functions/useLocalStorage.js.map +1 -0
  544. package/dist/es/Functions/useLocationParams.js +27 -0
  545. package/dist/es/Functions/useLocationParams.js.map +1 -0
  546. package/dist/es/Functions/useMediaQuery.js +14 -0
  547. package/dist/es/Functions/useMediaQuery.js.map +1 -0
  548. package/dist/es/Functions/useMetaInfo.js +33 -0
  549. package/dist/es/Functions/useMetaInfo.js.map +1 -0
  550. package/dist/es/Functions/useMouseUpOutside.js +17 -0
  551. package/dist/es/Functions/useMouseUpOutside.js.map +1 -0
  552. package/dist/es/Functions/useOnlineStatus.js +23 -0
  553. package/dist/es/Functions/useOnlineStatus.js.map +1 -0
  554. package/dist/es/Functions/usePasswordChecker.js +116 -0
  555. package/dist/es/Functions/usePasswordChecker.js.map +1 -0
  556. package/dist/es/Functions/usePrevious.js +13 -0
  557. package/dist/es/Functions/usePrevious.js.map +1 -0
  558. package/dist/es/Functions/useResize.js +24 -0
  559. package/dist/es/Functions/useResize.js.map +1 -0
  560. package/dist/es/Functions/useScrollTo.js +17 -0
  561. package/dist/es/Functions/useScrollTo.js.map +1 -0
  562. package/dist/es/Functions/useToggle.js +15 -0
  563. package/dist/es/Functions/useToggle.js.map +1 -0
  564. package/dist/es/Functions/utils/disableDefaultBehavior/disableDefaultBehavior.js +9 -0
  565. package/dist/es/Functions/utils/disableDefaultBehavior/disableDefaultBehavior.js.map +1 -0
  566. package/dist/es/Functions/utils/getLimitedMask/getLimitedMask.js +39 -0
  567. package/dist/es/Functions/utils/getLimitedMask/getLimitedMask.js.map +1 -0
  568. package/dist/es/Functions/utils.js +288 -0
  569. package/dist/es/Functions/utils.js.map +1 -0
  570. package/dist/es/Langs.js +166 -0
  571. package/dist/es/Langs.js.map +1 -0
  572. package/dist/es/Molecular/CustomIcons/components/AffiliateNetworks.js +33 -0
  573. package/dist/es/Molecular/CustomIcons/components/AffiliateNetworks.js.map +1 -0
  574. package/dist/es/Molecular/CustomIcons/components/AlertCircle.js +30 -0
  575. package/dist/es/Molecular/CustomIcons/components/AlertCircle.js.map +1 -0
  576. package/dist/es/Molecular/CustomIcons/components/AppStore.js +34 -0
  577. package/dist/es/Molecular/CustomIcons/components/AppStore.js.map +1 -0
  578. package/dist/es/Molecular/CustomIcons/components/Arrow.js +43 -0
  579. package/dist/es/Molecular/CustomIcons/components/Arrow.js.map +1 -0
  580. package/dist/es/Molecular/CustomIcons/components/ArrowDown.js +21 -0
  581. package/dist/es/Molecular/CustomIcons/components/ArrowDown.js.map +1 -0
  582. package/dist/es/Molecular/CustomIcons/components/ArrowLeft.js +21 -0
  583. package/dist/es/Molecular/CustomIcons/components/ArrowLeft.js.map +1 -0
  584. package/dist/es/Molecular/CustomIcons/components/ArrowRight.js +21 -0
  585. package/dist/es/Molecular/CustomIcons/components/ArrowRight.js.map +1 -0
  586. package/dist/es/Molecular/CustomIcons/components/ArrowUp.js +21 -0
  587. package/dist/es/Molecular/CustomIcons/components/ArrowUp.js.map +1 -0
  588. package/dist/es/Molecular/CustomIcons/components/Bell.js +19 -0
  589. package/dist/es/Molecular/CustomIcons/components/Bell.js.map +1 -0
  590. package/dist/es/Molecular/CustomIcons/components/Button.js +19 -0
  591. package/dist/es/Molecular/CustomIcons/components/Button.js.map +1 -0
  592. package/dist/es/Molecular/CustomIcons/components/Campaigns.js +20 -0
  593. package/dist/es/Molecular/CustomIcons/components/Campaigns.js.map +1 -0
  594. package/dist/es/Molecular/CustomIcons/components/Check.js +15 -0
  595. package/dist/es/Molecular/CustomIcons/components/Check.js.map +1 -0
  596. package/dist/es/Molecular/CustomIcons/components/Check2.js +19 -0
  597. package/dist/es/Molecular/CustomIcons/components/Check2.js.map +1 -0
  598. package/dist/es/Molecular/CustomIcons/components/ChevronDown.js +19 -0
  599. package/dist/es/Molecular/CustomIcons/components/ChevronDown.js.map +1 -0
  600. package/dist/es/Molecular/CustomIcons/components/ChevronDownDisabled.js +19 -0
  601. package/dist/es/Molecular/CustomIcons/components/ChevronDownDisabled.js.map +1 -0
  602. package/dist/es/Molecular/CustomIcons/components/ChevronLeft.js +19 -0
  603. package/dist/es/Molecular/CustomIcons/components/ChevronLeft.js.map +1 -0
  604. package/dist/es/Molecular/CustomIcons/components/ChevronRight.js +19 -0
  605. package/dist/es/Molecular/CustomIcons/components/ChevronRight.js.map +1 -0
  606. package/dist/es/Molecular/CustomIcons/components/ChevronUp.js +19 -0
  607. package/dist/es/Molecular/CustomIcons/components/ChevronUp.js.map +1 -0
  608. package/dist/es/Molecular/CustomIcons/components/ChevronUpDown.js +33 -0
  609. package/dist/es/Molecular/CustomIcons/components/ChevronUpDown.js.map +1 -0
  610. package/dist/es/Molecular/CustomIcons/components/Close.js +20 -0
  611. package/dist/es/Molecular/CustomIcons/components/Close.js.map +1 -0
  612. package/dist/es/Molecular/CustomIcons/components/ColumnsOrder.js +53 -0
  613. package/dist/es/Molecular/CustomIcons/components/ColumnsOrder.js.map +1 -0
  614. package/dist/es/Molecular/CustomIcons/components/Delete.js +20 -0
  615. package/dist/es/Molecular/CustomIcons/components/Delete.js.map +1 -0
  616. package/dist/es/Molecular/CustomIcons/components/Edit.js +19 -0
  617. package/dist/es/Molecular/CustomIcons/components/Edit.js.map +1 -0
  618. package/dist/es/Molecular/CustomIcons/components/Email.js +36 -0
  619. package/dist/es/Molecular/CustomIcons/components/Email.js.map +1 -0
  620. package/dist/es/Molecular/CustomIcons/components/FinturfLogo.js +33 -0
  621. package/dist/es/Molecular/CustomIcons/components/FinturfLogo.js.map +1 -0
  622. package/dist/es/Molecular/CustomIcons/components/FinturfLogo2.js +41 -0
  623. package/dist/es/Molecular/CustomIcons/components/FinturfLogo2.js.map +1 -0
  624. package/dist/es/Molecular/CustomIcons/components/Flows.js +19 -0
  625. package/dist/es/Molecular/CustomIcons/components/Flows.js.map +1 -0
  626. package/dist/es/Molecular/CustomIcons/components/Gift.js +21 -0
  627. package/dist/es/Molecular/CustomIcons/components/Gift.js.map +1 -0
  628. package/dist/es/Molecular/CustomIcons/components/GoogleAuth.js +34 -0
  629. package/dist/es/Molecular/CustomIcons/components/GoogleAuth.js.map +1 -0
  630. package/dist/es/Molecular/CustomIcons/components/GooglePlay.js +34 -0
  631. package/dist/es/Molecular/CustomIcons/components/GooglePlay.js.map +1 -0
  632. package/dist/es/Molecular/CustomIcons/components/HelpCircle.js +22 -0
  633. package/dist/es/Molecular/CustomIcons/components/HelpCircle.js.map +1 -0
  634. package/dist/es/Molecular/CustomIcons/components/HelpCircle2.js +23 -0
  635. package/dist/es/Molecular/CustomIcons/components/HelpCircle2.js.map +1 -0
  636. package/dist/es/Molecular/CustomIcons/components/HelpCircleFilled.js +22 -0
  637. package/dist/es/Molecular/CustomIcons/components/HelpCircleFilled.js.map +1 -0
  638. package/dist/es/Molecular/CustomIcons/components/Home.js +22 -0
  639. package/dist/es/Molecular/CustomIcons/components/Home.js.map +1 -0
  640. package/dist/es/Molecular/CustomIcons/components/Home2.js +25 -0
  641. package/dist/es/Molecular/CustomIcons/components/Home2.js.map +1 -0
  642. package/dist/es/Molecular/CustomIcons/components/Key.js +24 -0
  643. package/dist/es/Molecular/CustomIcons/components/Key.js.map +1 -0
  644. package/dist/es/Molecular/CustomIcons/components/Landers.js +23 -0
  645. package/dist/es/Molecular/CustomIcons/components/Landers.js.map +1 -0
  646. package/dist/es/Molecular/CustomIcons/components/Lock.js +19 -0
  647. package/dist/es/Molecular/CustomIcons/components/Lock.js.map +1 -0
  648. package/dist/es/Molecular/CustomIcons/components/Mail.js +28 -0
  649. package/dist/es/Molecular/CustomIcons/components/Mail.js.map +1 -0
  650. package/dist/es/Molecular/CustomIcons/components/Mastercard.js +81 -0
  651. package/dist/es/Molecular/CustomIcons/components/Mastercard.js.map +1 -0
  652. package/dist/es/Molecular/CustomIcons/components/Minus.js +34 -0
  653. package/dist/es/Molecular/CustomIcons/components/Minus.js.map +1 -0
  654. package/dist/es/Molecular/CustomIcons/components/Offers.js +20 -0
  655. package/dist/es/Molecular/CustomIcons/components/Offers.js.map +1 -0
  656. package/dist/es/Molecular/CustomIcons/components/Pause.js +34 -0
  657. package/dist/es/Molecular/CustomIcons/components/Pause.js.map +1 -0
  658. package/dist/es/Molecular/CustomIcons/components/PayPal.js +54 -0
  659. package/dist/es/Molecular/CustomIcons/components/PayPal.js.map +1 -0
  660. package/dist/es/Molecular/CustomIcons/components/PayPalLightLarge.js +39 -0
  661. package/dist/es/Molecular/CustomIcons/components/PayPalLightLarge.js.map +1 -0
  662. package/dist/es/Molecular/CustomIcons/components/Phone.js +33 -0
  663. package/dist/es/Molecular/CustomIcons/components/Phone.js.map +1 -0
  664. package/dist/es/Molecular/CustomIcons/components/Play.js +34 -0
  665. package/dist/es/Molecular/CustomIcons/components/Play.js.map +1 -0
  666. package/dist/es/Molecular/CustomIcons/components/Plus.js +34 -0
  667. package/dist/es/Molecular/CustomIcons/components/Plus.js.map +1 -0
  668. package/dist/es/Molecular/CustomIcons/components/Profile.js +24 -0
  669. package/dist/es/Molecular/CustomIcons/components/Profile.js.map +1 -0
  670. package/dist/es/Molecular/CustomIcons/components/QRCode.js +35 -0
  671. package/dist/es/Molecular/CustomIcons/components/QRCode.js.map +1 -0
  672. package/dist/es/Molecular/CustomIcons/components/Rectangle.js +19 -0
  673. package/dist/es/Molecular/CustomIcons/components/Rectangle.js.map +1 -0
  674. package/dist/es/Molecular/CustomIcons/components/Revert.js +22 -0
  675. package/dist/es/Molecular/CustomIcons/components/Revert.js.map +1 -0
  676. package/dist/es/Molecular/CustomIcons/components/Star.js +18 -0
  677. package/dist/es/Molecular/CustomIcons/components/Star.js.map +1 -0
  678. package/dist/es/Molecular/CustomIcons/components/Star2.js +20 -0
  679. package/dist/es/Molecular/CustomIcons/components/Star2.js.map +1 -0
  680. package/dist/es/Molecular/CustomIcons/components/TrafficSources.js +19 -0
  681. package/dist/es/Molecular/CustomIcons/components/TrafficSources.js.map +1 -0
  682. package/dist/es/Molecular/CustomIcons/components/Trash.js +19 -0
  683. package/dist/es/Molecular/CustomIcons/components/Trash.js.map +1 -0
  684. package/dist/es/Molecular/CustomIcons/components/TrashRed.js +19 -0
  685. package/dist/es/Molecular/CustomIcons/components/TrashRed.js.map +1 -0
  686. package/dist/es/Molecular/CustomIcons/components/Triggers.js +19 -0
  687. package/dist/es/Molecular/CustomIcons/components/Triggers.js.map +1 -0
  688. package/dist/es/Molecular/CustomIcons/components/User.js +21 -0
  689. package/dist/es/Molecular/CustomIcons/components/User.js.map +1 -0
  690. package/dist/es/Molecular/CustomIcons/components/Visa.js +41 -0
  691. package/dist/es/Molecular/CustomIcons/components/Visa.js.map +1 -0
  692. package/dist/es/Molecular/CustomIcons/components/X.js +19 -0
  693. package/dist/es/Molecular/CustomIcons/components/X.js.map +1 -0
  694. package/dist/es/Molecular/FormElement/FormElement.js +37 -0
  695. package/dist/es/Molecular/FormElement/FormElement.js.map +1 -0
  696. package/dist/es/Molecular/FormElement/FormElement.styles.css +21 -0
  697. package/dist/es/Molecular/FormWithDependOn/FormWithDependOn.js +111 -0
  698. package/dist/es/Molecular/FormWithDependOn/FormWithDependOn.js.map +1 -0
  699. package/dist/es/Molecular/FormWithDependOn/partials/_utils.js +33 -0
  700. package/dist/es/Molecular/FormWithDependOn/partials/_utils.js.map +1 -0
  701. package/dist/es/Molecular/InputAddress/InputAddress.js +352 -0
  702. package/dist/es/Molecular/InputAddress/InputAddress.js.map +1 -0
  703. package/dist/es/Molecular/InputAddress/InputAddress.styles.css +353 -0
  704. package/dist/es/Molecular/InputCustomFetch/InputCustomFetch.js +355 -0
  705. package/dist/es/Molecular/InputCustomFetch/InputCustomFetch.js.map +1 -0
  706. package/dist/es/Molecular/InputCustomFetch/InputCustomFetch.styles.css +358 -0
  707. package/dist/es/Molecular/InputCustomFetch/lib/hooks/useDebouncedCallback.js +27 -0
  708. package/dist/es/Molecular/InputCustomFetch/lib/hooks/useDebouncedCallback.js.map +1 -0
  709. package/dist/es/Molecular/InputCustomFetch/lib/hooks/useFetchWithAbort.js +50 -0
  710. package/dist/es/Molecular/InputCustomFetch/lib/hooks/useFetchWithAbort.js.map +1 -0
  711. package/dist/es/Molecular/InputCustomFetch/lib/utils.js +24 -0
  712. package/dist/es/Molecular/InputCustomFetch/lib/utils.js.map +1 -0
  713. package/dist/es/Molecular/InputPassword/InputPassword.js +47 -0
  714. package/dist/es/Molecular/InputPassword/InputPassword.js.map +1 -0
  715. package/dist/es/Molecular/InputPassword/InputPassword.styles.css +23 -0
  716. package/dist/es/_virtual/_rolldown/runtime.js +1 -15
  717. package/dist/es/charts.js +2 -3
  718. package/dist/es/classes.js +1 -1
  719. package/dist/es/form.js +68 -93
  720. package/dist/es/hooks.js +12 -17
  721. package/dist/es/icons.js +126 -6
  722. package/dist/es/index.js +145 -70
  723. package/dist/es/layout.js +3 -3
  724. package/dist/es/presets.js +6 -6
  725. package/dist/es/router-ui.js +5 -8
  726. package/dist/es/sdk.js +3 -1
  727. package/dist/es/types/index.js +0 -2
  728. package/dist/es/ui.js +30 -39
  729. package/dist/es/utils.js +5 -6
  730. package/package.json +3 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFormFieldsChangesManager.js","names":["settings","field"],"sources":["../../../../src/Functions/hooks/useFormFieldsChangesManager.js"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { getIsOnlyAnObject, clone } from '../utils';\n\nconst timeouts = { timeoutId: null };\nconst formChanges = [];\nconst DELAY_TIME = 1;\n\n// ? validateField - должен возвращать структуру { field, isValid }\nfunction useFormFieldsChangesManager({ form, setForm, callback, validateField, settings }) {\n const { isNotSetForm, isUseValidation = false } = settings || {};\n\n //? Пробовал ставить просто useEffect по formChangesRef.current,\n //? но по какой-то причине после изменении рефки не заходило в useEffect.\n //? Однако если срабатывал useEffect по какой-нибудь другой переменной,\n //? то и в useEffect по formChangesRef.current тоже заходило.\n //? Поэтому тут нужен этот стейт,\n //? хотя по итогу в конечной реализации с ним даже неплохо получилось (но вообще очень странная ерунда...)\n const [isFormMustBeChanget, setIsFormMustBeChanget] = useState(false);\n const startChangesProcessing = () => {\n // ? С учетом того что changeForm асинхронная, то пропускаем попытки из-вне переключить флаг если флаг уже установлен\n if (isFormMustBeChanget) return;\n // ? Ну и по сути - выключать априори не даем, только включать.\n setIsFormMustBeChanget(true);\n };\n\n //? Ф-я является ф-ей - постановщиком изменений формы в очередь.\n //? Ф-я получается самовызывающимся геттером.\n //? Cуть ф-ии:\n //? Для того чтоб не спамить изменениями, если их назначается много в рамках одной итерации,\n //? ипользую прием с переназначением setTimeout\n\n //? Чтобы преждевременно не спровацировать сработку useEffect\n //? по стейту фиксирующему \"отмашку\" к началу изменений (isFormMustBeChanget)\n //? откладываю переназначение этого стейта до приостановки непрерывных вызовов assignChangesToField,\n //? но при этом при каждом ее вызове продолжаю добавлять изменения в массив\n const assignChangesToField = (() => {\n // ? data - объект с изменениями, который позже будет деструктурирован в филд\n // ? upd: теперь data может быть передана как редьюсер, так же добавлен 3-й аргумент - settings\n\n // todo(vl) - upd: ввел для асайнера возможность прокидывать settings для каждого отложенного изменения,\n // todo(vl) - но пока что никак не обрабатывается, ввел для расширяемости ф-ла\n return (data, key, settings) => {\n clearTimeout(timeouts.timeoutId);\n\n // ? Пропускаем \"пустые\"/неформатные изменения\n // todo(vl) - подумать нужна ли промисификация на этом уровне (пока думаю что нет)\n if (getIsOnlyAnObject(data) || typeof data === 'function') {\n formChanges.push({ key, data, settings });\n }\n\n setIsFormMustBeChanget(false);\n timeouts.timeoutId = setTimeout(() => setIsFormMustBeChanget(true), DELAY_TIME);\n\n // ? Возвращаем на место вызова клон измененного массива изменений:\n // ? - может быть полезно для анализа\n // ? - но НЕ даем вмешиваться во внутреннюю работу хука (поэтому клон)\n return clone(formChanges);\n };\n })();\n\n const addChangesToField = (field, data, currentForm, currentChangesSettings) => {\n // todo(vl) - подумать\n // todo(vl) - - нужна ли промисификация на этом уровне (не факт что нужна, возможно дождаться уйдет в ответственность changeForm)\n // todo(vl) - - если нужна, то расширить ф-л\n const changesDataSafely = (() => {\n if (typeof data === 'function') return data(field, currentForm, currentChangesSettings);\n return getIsOnlyAnObject(data) ? data : {};\n })();\n\n const { error } = changesDataSafely;\n return { newField: { ...field, ...changesDataSafely }, ...(error !== undefined ? { error } : {}) };\n };\n\n //? Ф-я применяет \"накопленные\" изменения\n const changeForm = async () => {\n let modifiedFormFromOutside;\n const errorsFromChanges = {};\n\n // ? Просчитываем новую форму с внесенными изменениями по филдам.\n // ? Обращаю внимание, что итерируемся по массиву formChanges, а значит форма изменяется в порядке поступления изменений\n const newForm = formChanges.reduce((acc, changesItem) => {\n const { data, key, settings } = changesItem;\n const field = acc.find(field => field.key === key);\n\n // ? Если в форме есть филд соответствующий key изменения - мутируем филд\n if (field) {\n // ? Мутация филда происходит на аккумуляторе (текущая форма), для того чтобы в последующих итерациях изменений учитывать предыдущие\n acc = acc.map(field => {\n if (field.key !== key) return field;\n\n // ? error - это error НЕ из филда (может быть сатрый), а именно из \"изменения\",\n // ? если НЕ приходил именно в изменениях, то его и не будет.\n const { newField, error } = addChangesToField(field, data, acc, settings);\n // ? На каждой итерации изменений фиксируем итоговую мутацию пропы error для каждого филда\n if (error || error !== undefined) errorsFromChanges[key] = error;\n\n return newField;\n });\n }\n return acc;\n }, form);\n\n // ToDo - порефакторить, не прогонять валидацию всех полей, а только измененных\n const validatedForm =\n isUseValidation && typeof validateField === 'function'\n ? newForm.map(field => ({\n ...field,\n error: (() => {\n let output = '';\n const validateFieldResult = validateField({ ...field }, newForm);\n if (validateFieldResult?.field?.error !== undefined) output = validateFieldResult.field.error;\n else if (errorsFromChanges[field.key] !== undefined) output = errorsFromChanges[field.key];\n return output;\n })(),\n }))\n : newForm;\n\n if (callback && typeof callback === 'function') modifiedFormFromOutside = await callback(validatedForm);\n if (!isNotSetForm) await setForm(modifiedFormFromOutside ?? validatedForm);\n\n formChanges.length = 0;\n setIsFormMustBeChanget(false);\n };\n\n useEffect(() => {\n if (isFormMustBeChanget) changeForm();\n }, [isFormMustBeChanget]);\n\n return {\n assignChangesToField, // метод установки отложенных изменений\n isFormMustBeChanget, // флаг сработки непосредственных мутаций формы\n\n // метод принудительной установки флага сработки непосредственных мутаций формы\n // работает только на включения, НЕ включает, если уже отрабатывает применение\n startChangesProcessing,\n\n // todo(vl) - deprecated, но пока не выпиливаю, не проверил используется ли на проектах\n setIsFormMustBeChanget: startChangesProcessing, // метод принудительной установки флага сработки непосредственных мутаций формы\n\n changesArray: clone(formChanges), // теккущее состояние массива изменений\n\n // Константа (на чтение) задержки, которая выжидается между назначениями,\n // после которой отрабатывает установка накопившихся изменений в форму\n DELAY_TIME,\n };\n}\n\nexport default useFormFieldsChangesManager;\n"],"mappings":";;;AAGA,IAAM,WAAW,EAAE,WAAW,KAAK;AACnC,IAAM,cAAc,CAAC;AACrB,IAAM,aAAa;AAGnB,SAAS,4BAA4B,EAAE,MAAM,SAAS,UAAU,eAAe,YAAY;CACzF,MAAM,EAAE,cAAc,kBAAkB,UAAU,YAAY,CAAC;CAQ/D,MAAM,CAAC,qBAAqB,0BAA0B,SAAS,KAAK;CACpE,MAAM,+BAA+B;EAEnC,IAAI,qBAAqB;EAEzB,uBAAuB,IAAI;CAC7B;CAYA,MAAM,uBAAwB,uBAAM;EAMlC,QAAQ,MAAM,KAAKA,cAAa;GAC9B,aAAa,SAAS,SAAS;GAI/B,IAAI,kBAAkB,IAAI,KAAK,OAAO,SAAS,YAC7C,YAAY,KAAK;IAAE;IAAK;IAAM,UAAAA;GAAS,CAAC;GAG1C,uBAAuB,KAAK;GAC5B,SAAS,YAAY,iBAAiB,uBAAuB,IAAI,GAAG,UAAU;GAK9E,OAAO,MAAM,WAAW;EAC1B;CACF,EAAA,CAAG;CAEH,MAAM,qBAAqB,OAAO,MAAM,aAAa,2BAA2B;EAI9E,MAAM,2BAA2B;GAC/B,IAAI,OAAO,SAAS,YAAY,OAAO,KAAK,OAAO,aAAa,sBAAsB;GACtF,OAAO,kBAAkB,IAAI,IAAI,OAAO,CAAC;EAC3C,EAAA,CAAG;EAEH,MAAM,EAAE,UAAU;EAClB,OAAO;GAAE,UAAU;IAAE,GAAG;IAAO,GAAG;GAAkB;GAAG,GAAI,UAAU,KAAA,IAAY,EAAE,MAAM,IAAI,CAAC;EAAG;CACnG;CAGA,MAAM,aAAa,YAAY;EAC7B,IAAI;EACJ,MAAM,oBAAoB,CAAC;EAI3B,MAAM,UAAU,YAAY,QAAQ,KAAK,gBAAgB;GACvD,MAAM,EAAE,MAAM,KAAK,UAAAA,cAAa;GAIhC,IAHc,IAAI,MAAKC,WAASA,OAAM,QAAQ,GAG1C,GAEF,MAAM,IAAI,KAAIA,WAAS;IACrB,IAAIA,OAAM,QAAQ,KAAK,OAAOA;IAI9B,MAAM,EAAE,UAAU,UAAU,kBAAkBA,QAAO,MAAM,KAAKD,SAAQ;IAExE,IAAI,SAAS,UAAU,KAAA,GAAW,kBAAkB,OAAO;IAE3D,OAAO;GACT,CAAC;GAEH,OAAO;EACT,GAAG,IAAI;EAGP,MAAM,gBACJ,mBAAmB,OAAO,kBAAkB,aACxC,QAAQ,KAAI,WAAU;GACpB,GAAG;GACH,cAAc;IACZ,IAAI,SAAS;IACb,MAAM,sBAAsB,cAAc,EAAE,GAAG,MAAM,GAAG,OAAO;IAC/D,IAAI,qBAAqB,OAAO,UAAU,KAAA,GAAW,SAAS,oBAAoB,MAAM;SAAA,IAC/E,kBAAkB,MAAM,SAAS,KAAA,GAAW,SAAS,kBAAkB,MAAM;IACtF,OAAO;GACT,EAAA,CAAG;EACL,EAAE,IACF;EAEN,IAAI,YAAY,OAAO,aAAa,YAAY,0BAA0B,MAAM,SAAS,aAAa;EACtG,IAAI,CAAC,cAAc,MAAM,QAAQ,2BAA2B,aAAa;EAEzE,YAAY,SAAS;EACrB,uBAAuB,KAAK;CAC9B;CAEA,gBAAgB;EACd,IAAI,qBAAqB,WAAW;CACtC,GAAG,CAAC,mBAAmB,CAAC;CAExB,OAAO;EACL;EACA;EAIA;EAGA,wBAAwB;EAExB,cAAc,MAAM,WAAW;EAI/B;CACF;AACF"}
@@ -0,0 +1,23 @@
1
+ import { getSafelyValue } from "../fieldValueFormatters.js";
2
+ //#region src/Functions/locale/createTranslator.js
3
+ var DEFAULT_CODE = "en";
4
+ function createTranslator({ ...langCatalogs }) {
5
+ const loc = { ...langCatalogs };
6
+ let code = window.localStorage.getItem("lng");
7
+ if (!code) code = window.navigator ? window.navigator.language.split("-")[0] : DEFAULT_CODE;
8
+ if (!loc[code]) code = DEFAULT_CODE;
9
+ return function(text, values) {
10
+ const safelyValues = values ?? {};
11
+ const safelyText = getSafelyValue(text);
12
+ let translatedText = loc[code] && loc[code][safelyText] ? loc[code][safelyText] : safelyText;
13
+ if (Object?.keys(safelyValues)?.length) for (const key in values) {
14
+ const regex = new RegExp(`%${key}%`, "g");
15
+ translatedText = translatedText?.replace(regex, values[key]);
16
+ }
17
+ return translatedText;
18
+ };
19
+ }
20
+ //#endregion
21
+ export { createTranslator as default };
22
+
23
+ //# sourceMappingURL=createTranslator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createTranslator.js","names":[],"sources":["../../../../src/Functions/locale/createTranslator.js"],"sourcesContent":["import { getSafelyValue } from \"./../fieldValueFormatters\";\n\nconst DEFAULT_CODE = \"en\";\n\nexport default function createTranslator({ ...langCatalogs }) {\n const loc = {\n ...langCatalogs,\n };\n\n let code = window.localStorage.getItem(\"lng\");\n if (!code)\n code = window.navigator\n ? window.navigator.language.split(\"-\")[0]\n : DEFAULT_CODE;\n if (!loc[code]) code = DEFAULT_CODE;\n\n return function (text, values) {\n const safelyValues = values ?? {};\n const safelyText = getSafelyValue(text);\n let translatedText =\n loc[code] && loc[code][safelyText] ? loc[code][safelyText] : safelyText;\n\n if (Object?.keys(safelyValues)?.length) {\n for (const key in values) {\n const regex = new RegExp(`%${key}%`, \"g\");\n translatedText = translatedText?.replace(regex, values[key]);\n }\n }\n\n return translatedText;\n };\n}\n"],"mappings":";;AAEA,IAAM,eAAe;AAErB,SAAwB,iBAAiB,EAAE,GAAG,gBAAgB;CAC5D,MAAM,MAAM,EACV,GAAG,aACL;CAEA,IAAI,OAAO,OAAO,aAAa,QAAQ,KAAK;CAC5C,IAAI,CAAC,MACH,OAAO,OAAO,YACV,OAAO,UAAU,SAAS,MAAM,GAAG,CAAA,CAAE,KACrC;CACN,IAAI,CAAC,IAAI,OAAO,OAAO;CAEvB,OAAO,SAAU,MAAM,QAAQ;EAC7B,MAAM,eAAe,UAAU,CAAC;EAChC,MAAM,aAAa,eAAe,IAAI;EACtC,IAAI,iBACF,IAAI,SAAS,IAAI,KAAI,CAAE,cAAc,IAAI,KAAI,CAAE,cAAc;EAE/D,IAAI,QAAQ,KAAK,YAAY,CAAA,EAAG,QAC9B,KAAA,MAAW,OAAO,QAAQ;GACxB,MAAM,QAAQ,IAAI,OAAO,IAAI,IAAG,IAAK,GAAG;GACxC,iBAAiB,gBAAgB,QAAQ,OAAO,OAAO,IAAI;EAC7D;EAGF,OAAO;CACT;AACF"}
@@ -0,0 +1,88 @@
1
+ //#region src/Functions/operations.js
2
+ (function() {
3
+ function decimalAdjust(type, value, exp) {
4
+ if (typeof exp === "undefined" || Number(exp) === 0) return Math[type](value);
5
+ value = Number(value);
6
+ exp = Number(exp);
7
+ if (isNaN(value) || !(typeof exp === "number" && exp % 1 === 0)) return NaN;
8
+ value = value.toString().split("e");
9
+ value = Math[type](Number(value[0] + "e" + (value[1] ? Number(value[1]) - exp : -exp)));
10
+ value = value.toString().split("e");
11
+ return Number(value[0] + "e" + (value[1] ? Number(value[1]) + exp : exp));
12
+ }
13
+ if (!Math.round10) Math.round10 = function(value, exp) {
14
+ return decimalAdjust("round", value, exp);
15
+ };
16
+ if (!Math.floor10) Math.floor10 = function(value, exp) {
17
+ return decimalAdjust("floor", value, exp);
18
+ };
19
+ if (!Math.ceil10) Math.ceil10 = function(value, exp) {
20
+ return decimalAdjust("ceil", value, exp);
21
+ };
22
+ })();
23
+ var addRangeDefault = (from, to, currentValues, decimalPlaces) => {
24
+ if (!currentValues?.length) return [{
25
+ from,
26
+ to
27
+ }];
28
+ const step = decimalPlaces ? Math.pow(10, -1 * decimalPlaces) : 1;
29
+ const result = currentValues.reduce((acc, range) => {
30
+ const isIncludesFrom = Boolean(acc.from) && range.from < acc.from && range.to >= acc.from;
31
+ const isIncludesTo = Boolean(acc.to) && range.from <= acc.to && range.to > acc.to;
32
+ const isRangeMustBeIncludet = Boolean(acc.from) && Boolean(acc.to) && acc.from <= range.from && acc.to >= range.to;
33
+ const processTo = () => {
34
+ const lastAccRange = acc.result[acc.result.length - 1];
35
+ if (acc.to < range.from) {
36
+ lastAccRange.to = acc.to;
37
+ acc.to = null;
38
+ acc.result = [...acc.result, range];
39
+ } else if (isIncludesTo) {
40
+ lastAccRange.to = acc.to;
41
+ acc.result = [...acc.result, {
42
+ from: Math.round10(acc.to + step, -1 * decimalPlaces),
43
+ to: range.to
44
+ }];
45
+ acc.to = null;
46
+ } else if (acc.to === range.to) {
47
+ lastAccRange.to = acc.to;
48
+ acc.to = null;
49
+ }
50
+ };
51
+ if (!acc.from && !acc.to) acc.result = [...acc.result, range];
52
+ else if (!acc.from && acc.to) processTo();
53
+ else if (acc.from && acc.to) if (acc.from <= range.from) {
54
+ acc.result = [...acc.result, { from: acc.from }];
55
+ acc.from = null;
56
+ processTo();
57
+ } else if (isIncludesFrom) {
58
+ acc.result = [
59
+ ...acc.result,
60
+ {
61
+ from: range.from,
62
+ to: Math.round10(acc.from - step, -1 * decimalPlaces)
63
+ },
64
+ { from: acc.from }
65
+ ];
66
+ acc.from = null;
67
+ processTo();
68
+ } else acc.result = [
69
+ ...acc.result,
70
+ ...!isRangeMustBeIncludet ? [range] : [],
71
+ {
72
+ from: Math.round10(acc.from, -1 * decimalPlaces),
73
+ to: Math.round10(acc.to, -1 * decimalPlaces)
74
+ }
75
+ ];
76
+ return acc;
77
+ }, {
78
+ from,
79
+ to,
80
+ result: []
81
+ }).result;
82
+ if (!result[result.length - 1].to) result[result.length - 1].to = to;
83
+ return result;
84
+ };
85
+ //#endregion
86
+ export { addRangeDefault };
87
+
88
+ //# sourceMappingURL=operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations.js","names":[],"sources":["../../../src/Functions/operations.js"],"sourcesContent":["// Взято из https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Math/round\n// При импорте любой ф-и из этого файла отработает самовызывающаяся ф-я и расширит\n// объект Math 3-мя ф-ми: round10, floor10, ceil10\n(function () {\n /**\n * Корректировка округления десятичных дробей.\n *\n * @param {String} type Тип корректировки.\n * @param {Number} value Число.\n * @param {Integer} exp Показатель степени (десятичный логарифм основания корректировки).\n * @returns {Number} Скорректированное значение.\n */\n function decimalAdjust(type, value, exp) {\n // Если степень не определена, либо равна нулю...\n if (typeof exp === \"undefined\" || Number(exp) === 0) {\n return Math[type](value);\n }\n value = Number(value);\n exp = Number(exp);\n // Если значение не является числом, либо степень не является целым числом...\n if (isNaN(value) || !(typeof exp === \"number\" && exp % 1 === 0)) {\n return NaN;\n }\n // Сдвиг разрядов\n value = value.toString().split(\"e\");\n value = Math[type](\n Number(value[0] + \"e\" + (value[1] ? Number(value[1]) - exp : -exp)),\n );\n // Обратный сдвиг\n value = value.toString().split(\"e\");\n return Number(value[0] + \"e\" + (value[1] ? Number(value[1]) + exp : exp));\n }\n\n // Десятичное округление к ближайшему\n if (!Math.round10) {\n Math.round10 = function (value, exp) {\n return decimalAdjust(\"round\", value, exp);\n };\n }\n // Десятичное округление вниз\n if (!Math.floor10) {\n Math.floor10 = function (value, exp) {\n return decimalAdjust(\"floor\", value, exp);\n };\n }\n // Десятичное округление вверх\n if (!Math.ceil10) {\n Math.ceil10 = function (value, exp) {\n return decimalAdjust(\"ceil\", value, exp);\n };\n }\n})();\n\nexport const addRangeDefault = (from, to, currentValues, decimalPlaces) => {\n if (!currentValues?.length) return [{ from, to }];\n const step = decimalPlaces ? Math.pow(10, -1 * decimalPlaces) : 1;\n\n const resultOfProcessAddingRange = currentValues.reduce(\n (acc, range) => {\n const isIncludesFrom =\n Boolean(acc.from) && range.from < acc.from && range.to >= acc.from;\n const isIncludesTo =\n Boolean(acc.to) && range.from <= acc.to && range.to > acc.to;\n const isRangeMustBeIncludet =\n Boolean(acc.from) &&\n Boolean(acc.to) &&\n acc.from <= range.from &&\n acc.to >= range.to;\n\n const processTo = () => {\n const lastAccRange = acc.result[acc.result.length - 1];\n\n if (acc.to < range.from) {\n lastAccRange.to = acc.to;\n acc.to = null;\n acc.result = [...acc.result, range];\n } else if (isIncludesTo) {\n lastAccRange.to = acc.to;\n acc.result = [\n ...acc.result,\n {\n from: Math.round10(acc.to + step, -1 * decimalPlaces),\n to: range.to,\n },\n ];\n acc.to = null;\n } else if (acc.to === range.to) {\n lastAccRange.to = acc.to;\n acc.to = null;\n }\n };\n\n if (!acc.from && !acc.to) acc.result = [...acc.result, range];\n else if (!acc.from && acc.to) processTo();\n else if (acc.from && acc.to) {\n if (acc.from <= range.from) {\n acc.result = [...acc.result, { from: acc.from }];\n acc.from = null;\n processTo();\n } else if (isIncludesFrom) {\n acc.result = [\n ...acc.result,\n {\n from: range.from,\n to: Math.round10(acc.from - step, -1 * decimalPlaces),\n },\n { from: acc.from },\n ];\n acc.from = null;\n processTo();\n } else {\n acc.result = [\n ...acc.result,\n ...(!isRangeMustBeIncludet ? [range] : []),\n {\n from: Math.round10(acc.from, -1 * decimalPlaces),\n to: Math.round10(acc.to, -1 * decimalPlaces),\n },\n ];\n }\n }\n return acc;\n },\n { from, to, result: [] },\n );\n\n const result = resultOfProcessAddingRange.result;\n if (!result[result.length - 1].to) result[result.length - 1].to = to;\n return result;\n};\n"],"mappings":";CAGC,WAAY;CASX,SAAS,cAAc,MAAM,OAAO,KAAK;EAEvC,IAAI,OAAO,QAAQ,eAAe,OAAO,GAAG,MAAM,GAChD,OAAO,KAAK,KAAI,CAAE,KAAK;EAEzB,QAAQ,OAAO,KAAK;EACpB,MAAM,OAAO,GAAG;EAEhB,IAAI,MAAM,KAAK,KAAK,EAAE,OAAO,QAAQ,YAAY,MAAM,MAAM,IAC3D,OAAO;EAGT,QAAQ,MAAM,SAAS,CAAA,CAAE,MAAM,GAAG;EAClC,QAAQ,KAAK,KAAI,CACf,OAAO,MAAM,KAAK,OAAO,MAAM,KAAK,OAAO,MAAM,EAAE,IAAI,MAAM,CAAC,IAAI,CACpE;EAEA,QAAQ,MAAM,SAAS,CAAA,CAAE,MAAM,GAAG;EAClC,OAAO,OAAO,MAAM,KAAK,OAAO,MAAM,KAAK,OAAO,MAAM,EAAE,IAAI,MAAM,IAAI;CAC1E;CAGA,IAAI,CAAC,KAAK,SACR,KAAK,UAAU,SAAU,OAAO,KAAK;EACnC,OAAO,cAAc,SAAS,OAAO,GAAG;CAC1C;CAGF,IAAI,CAAC,KAAK,SACR,KAAK,UAAU,SAAU,OAAO,KAAK;EACnC,OAAO,cAAc,SAAS,OAAO,GAAG;CAC1C;CAGF,IAAI,CAAC,KAAK,QACR,KAAK,SAAS,SAAU,OAAO,KAAK;EAClC,OAAO,cAAc,QAAQ,OAAO,GAAG;CACzC;AAEJ,EAAA,CAAG;AAEI,IAAM,mBAAmB,MAAM,IAAI,eAAe,kBAAkB;CACzE,IAAI,CAAC,eAAe,QAAQ,OAAO,CAAC;EAAE;EAAM;CAAG,CAAC;CAChD,MAAM,OAAO,gBAAgB,KAAK,IAAI,IAAI,KAAK,aAAa,IAAI;CAuEhE,MAAM,SArE6B,cAAc,QAC9C,KAAK,UAAU;EACd,MAAM,iBACJ,QAAQ,IAAI,IAAI,KAAK,MAAM,OAAO,IAAI,QAAQ,MAAM,MAAM,IAAI;EAChE,MAAM,eACJ,QAAQ,IAAI,EAAE,KAAK,MAAM,QAAQ,IAAI,MAAM,MAAM,KAAK,IAAI;EAC5D,MAAM,wBACJ,QAAQ,IAAI,IAAI,KAChB,QAAQ,IAAI,EAAE,KACd,IAAI,QAAQ,MAAM,QAClB,IAAI,MAAM,MAAM;EAElB,MAAM,kBAAkB;GACtB,MAAM,eAAe,IAAI,OAAO,IAAI,OAAO,SAAS;GAEpD,IAAI,IAAI,KAAK,MAAM,MAAM;IACvB,aAAa,KAAK,IAAI;IACtB,IAAI,KAAK;IACT,IAAI,SAAS,CAAC,GAAG,IAAI,QAAQ,KAAK;GACpC,OAAA,IAAW,cAAc;IACvB,aAAa,KAAK,IAAI;IACtB,IAAI,SAAS,CACX,GAAG,IAAI,QACP;KACE,MAAM,KAAK,QAAQ,IAAI,KAAK,MAAM,KAAK,aAAa;KACpD,IAAI,MAAM;IACZ,CACF;IACA,IAAI,KAAK;GACX,OAAA,IAAW,IAAI,OAAO,MAAM,IAAI;IAC9B,aAAa,KAAK,IAAI;IACtB,IAAI,KAAK;GACX;EACF;EAEA,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,IAAI,IAAI,SAAS,CAAC,GAAG,IAAI,QAAQ,KAAK;OAAA,IACnD,CAAC,IAAI,QAAQ,IAAI,IAAI,UAAU;OAAA,IAC/B,IAAI,QAAQ,IAAI,IACvB,IAAI,IAAI,QAAQ,MAAM,MAAM;GAC1B,IAAI,SAAS,CAAC,GAAG,IAAI,QAAQ,EAAE,MAAM,IAAI,KAAK,CAAC;GAC/C,IAAI,OAAO;GACX,UAAU;EACZ,OAAA,IAAW,gBAAgB;GACzB,IAAI,SAAS;IACX,GAAG,IAAI;IACP;KACE,MAAM,MAAM;KACZ,IAAI,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,aAAa;IACtD;IACA,EAAE,MAAM,IAAI,KAAK;GACnB;GACA,IAAI,OAAO;GACX,UAAU;EACZ,OACE,IAAI,SAAS;GACX,GAAG,IAAI;GACP,GAAI,CAAC,wBAAwB,CAAC,KAAK,IAAI,CAAC;GACxC;IACE,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,aAAa;IAC/C,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,aAAa;GAC7C;EACF;EAGJ,OAAO;CACT,GACA;EAAE;EAAM;EAAI,QAAQ,CAAC;CAAE,CAGV,CAAA,CAA2B;CAC1C,IAAI,CAAC,OAAO,OAAO,SAAS,EAAC,CAAE,IAAI,OAAO,OAAO,SAAS,EAAC,CAAE,KAAK;CAClE,OAAO;AACT"}
@@ -0,0 +1,82 @@
1
+ var MASK_PRESETS = {
2
+ BANK_ACCOUNT: {
3
+ type: "inputMask",
4
+ maskPattern: "DDDDDDDDDD",
5
+ maskPlaceholder: "X",
6
+ isNumericMobileKeyboard: true,
7
+ blinkErrors: true,
8
+ showErrors: false
9
+ },
10
+ CC_EXPIRATION_DATE: {
11
+ type: "inputMask",
12
+ maskPattern: "MM/YY",
13
+ maskPatternPlaceholder: "MM/YY",
14
+ usePatternPlaceholder: true,
15
+ isNumericMobileKeyboard: true,
16
+ blinkErrors: true,
17
+ showErrors: false,
18
+ focusSelector: "input"
19
+ },
20
+ DATE_PRESET: {
21
+ type: "inputMask",
22
+ maskPattern: "DD.DD.DDDD",
23
+ maskPatternPlaceholder: "MM.DD.YYYY",
24
+ usePatternPlaceholder: true,
25
+ isNumericMobileKeyboard: true,
26
+ blinkErrors: true,
27
+ showErrors: false,
28
+ autocomplete: "bday",
29
+ focusSelector: "input"
30
+ },
31
+ ZIP_PRESET: {
32
+ type: "inputMask",
33
+ focusSelector: "input",
34
+ maskPattern: "DDDDD",
35
+ maskPlaceholder: "X",
36
+ isNumericMobileKeyboard: true,
37
+ blinkErrors: true,
38
+ showErrors: false,
39
+ autocomplete: "postal-code",
40
+ rules: "fieldZip"
41
+ },
42
+ SSN_PRESET: {
43
+ type: "inputMask",
44
+ maskPattern: "DDDDDDDDD",
45
+ maskPlaceholder: "X",
46
+ focusSelector: "input",
47
+ isNumericMobileKeyboard: true,
48
+ blinkErrors: true,
49
+ showErrors: false
50
+ },
51
+ MOBILE_PHONE_PRESET: {
52
+ type: "inputMask",
53
+ maskPattern: "(DDD) DDD-DDDD",
54
+ maskPlaceholder: "X",
55
+ focusSelector: "input",
56
+ isNumericMobileKeyboard: true,
57
+ blinkErrors: true,
58
+ showErrors: false,
59
+ autocomplete: "tel-national"
60
+ },
61
+ SHORT_SSN_PRESET: {
62
+ type: "inputMask3",
63
+ maskPattern: "DDDD",
64
+ maskPlaceholder: "X",
65
+ focusSelector: "input",
66
+ isNumericMobileKeyboard: true,
67
+ blinkErrors: true,
68
+ showErrors: false
69
+ },
70
+ ABA_PRESET: {
71
+ type: "inputMask",
72
+ maskPattern: "DDDDDDDDD",
73
+ maskPlaceholder: "X",
74
+ isNumericMobileKeyboard: true,
75
+ blinkErrors: true,
76
+ showErrors: false
77
+ }
78
+ };
79
+ //#endregion
80
+ export { MASK_PRESETS };
81
+
82
+ //# sourceMappingURL=inputMaskPresets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inputMaskPresets.js","names":[],"sources":["../../../../src/Functions/presets/inputMaskPresets.js"],"sourcesContent":["/**\n * @param type: 'inputMask',\n * @param maskPattern: 'DD.DD.DDDD',\n * @param maskPatternPlaceholder: 'MM.DD.YYYY',\n * @param usePatternPlaceholder: true,\n * @param isNumericMobileKeyboard: true,\n * @param blinkErrors: true,\n * @param showErrors: false,\n * @param autocomplete: 'bday',\n * @param focusSelector: 'input',\n */\nconst DATE_PRESET = {\n type: \"inputMask\",\n maskPattern: \"DD.DD.DDDD\",\n maskPatternPlaceholder: \"MM.DD.YYYY\",\n usePatternPlaceholder: true,\n isNumericMobileKeyboard: true,\n blinkErrors: true,\n showErrors: false,\n autocomplete: \"bday\",\n focusSelector: \"input\",\n};\n\n/**\n * @param type: 'inputMask',\n * @param maskPattern: 'DDDDD',\n * @param maskPlaceholder: 'X',\n * @param isNumericMobileKeyboard: true,\n * @param blinkErrors: true,\n * @param showErrors: false,\n * @param focusSelector: 'input',\n * @param autocomplete: 'postal-code',\n * @param rules: 'fieldZip'\n */\nconst ZIP_PRESET = {\n type: \"inputMask\",\n focusSelector: \"input\",\n maskPattern: \"DDDDD\",\n maskPlaceholder: \"X\",\n isNumericMobileKeyboard: true,\n blinkErrors: true,\n showErrors: false,\n autocomplete: \"postal-code\",\n rules: \"fieldZip\",\n};\n\n/**\n * @param type: 'inputMask',\n * @param maskPattern: 'DDDDDDDDD',\n * @param maskPlaceholder: 'X',\n * @param isNumericMobileKeyboard: true,\n * @param blinkErrors: true,\n * @param showErrors: false,\n * @param focusSelector: 'input',\n */\nconst SSN_PRESET = {\n type: \"inputMask\",\n maskPattern: \"DDDDDDDDD\",\n maskPlaceholder: \"X\",\n focusSelector: \"input\",\n isNumericMobileKeyboard: true,\n blinkErrors: true,\n showErrors: false,\n};\n\n/**\n * @param type: 'inputMask',\n * @param maskPattern: 'DDD-DDD-DDDD',\n * @param maskPlaceholder: 'X',\n * @param isNumericMobileKeyboard: true,\n * @param blinkErrors: true,\n * @param showErrors: false,\n * @param focusSelector: 'input',\n * @param autocomplete: 'tel-national',\n */\nconst MOBILE_PHONE_PRESET = {\n type: \"inputMask\",\n // maskPattern: 'DDD-DDD-DDDD',\n maskPattern: \"(DDD) DDD-DDDD\",\n maskPlaceholder: \"X\",\n focusSelector: \"input\",\n isNumericMobileKeyboard: true,\n blinkErrors: true,\n showErrors: false,\n autocomplete: \"tel-national\",\n};\n\n/**\n * @param type: 'inputMask3',\n * @param maskPattern: 'DDDD',\n * @param maskPlaceholder: 'X',\n * @param isNumericMobileKeyboard: true,\n * @param blinkErrors: true,\n * @param showErrors: false,\n */\nconst SHORT_SSN_PRESET = {\n type: \"inputMask3\",\n maskPattern: \"DDDD\",\n maskPlaceholder: \"X\",\n focusSelector: \"input\",\n isNumericMobileKeyboard: true,\n blinkErrors: true,\n showErrors: false,\n};\n\n/**\n * @param type: 'inputMask',\n * @param maskPattern: 'DDDDDDDDD',\n * @param maskPlaceholder: 'X',\n * @param isNumericMobileKeyboard: true,\n * @param blinkErrors: true,\n * @param showErrors: false,\n */\nconst ABA_PRESET = {\n type: \"inputMask\",\n maskPattern: \"DDDDDDDDD\",\n maskPlaceholder: \"X\",\n isNumericMobileKeyboard: true,\n blinkErrors: true,\n showErrors: false,\n};\n\n/**\n * @param type: 'inputMask',\n * @param maskPattern: 'MM/YY',\n * @param maskPatternPlaceholder: 'MM/YY',\n * @param usePatternPlaceholder: true,\n * @param isNumericMobileKeyboard: true,\n * @param blinkErrors: true,\n * @param showErrors: false,\n * @param focusSelector: 'input',\n */\nconst CC_EXPIRATION_DATE = {\n type: \"inputMask\",\n maskPattern: \"MM/YY\",\n maskPatternPlaceholder: \"MM/YY\",\n usePatternPlaceholder: true,\n isNumericMobileKeyboard: true,\n blinkErrors: true,\n showErrors: false,\n focusSelector: \"input\",\n};\n\n/**\n * @param type: 'inputMask',\n * @param maskPattern: 'DDDDDDDDDD',\n * @param maskPlaceholder: 'X',\n * @param isNumericMobileKeyboard: true,\n * @param blinkErrors: true,\n * @param showErrors: false,\n */\nconst BANK_ACCOUNT = {\n type: \"inputMask\",\n maskPattern: \"DDDDDDDDDD\",\n maskPlaceholder: \"X\",\n isNumericMobileKeyboard: true,\n blinkErrors: true,\n showErrors: false,\n};\n\nexport const MASK_PRESETS = {\n BANK_ACCOUNT,\n CC_EXPIRATION_DATE,\n DATE_PRESET,\n ZIP_PRESET,\n SSN_PRESET,\n MOBILE_PHONE_PRESET,\n SHORT_SSN_PRESET,\n ABA_PRESET,\n};\n"],"mappings":"AAgKO,IAAM,eAAe;CAC1B;EATA,MAAM;EACN,aAAa;EACb,iBAAiB;EACjB,yBAAyB;EACzB,aAAa;EACb,YAAY;CAIZ;CACA;EA7BA,MAAM;EACN,aAAa;EACb,wBAAwB;EACxB,uBAAuB;EACvB,yBAAyB;EACzB,aAAa;EACb,YAAY;EACZ,eAAe;CAsBf;CACA;EAvJA,MAAM;EACN,aAAa;EACb,wBAAwB;EACxB,uBAAuB;EACvB,yBAAyB;EACzB,aAAa;EACb,YAAY;EACZ,cAAc;EACd,eAAe;CA+If;CACA;EAjIA,MAAM;EACN,eAAe;EACf,aAAa;EACb,iBAAiB;EACjB,yBAAyB;EACzB,aAAa;EACb,YAAY;EACZ,cAAc;EACd,OAAO;CAyHP;CACA;EA7GA,MAAM;EACN,aAAa;EACb,iBAAiB;EACjB,eAAe;EACf,yBAAyB;EACzB,aAAa;EACb,YAAY;CAuGZ;CACA;EA1FA,MAAM;EAEN,aAAa;EACb,iBAAiB;EACjB,eAAe;EACf,yBAAyB;EACzB,aAAa;EACb,YAAY;EACZ,cAAc;CAkFd;CACA;EAvEA,MAAM;EACN,aAAa;EACb,iBAAiB;EACjB,eAAe;EACf,yBAAyB;EACzB,aAAa;EACb,YAAY;CAiEZ;CACA;EAtDA,MAAM;EACN,aAAa;EACb,iBAAiB;EACjB,yBAAyB;EACzB,aAAa;EACb,YAAY;CAiDZ;AACF"}
@@ -0,0 +1,50 @@
1
+ import { getSafelyValue } from "../fieldValueFormatters.js";
2
+ //#region src/Functions/presets/inputPresets.js
3
+ var NAME_SYMBOLS_EXCLUDER = {
4
+ /**
5
+ * @name fieldChangesMiddleware
6
+ * @description Обрабатывает входящую строку, удаляет все символы, которые не являются
7
+ * алфавитными, дефисами, апострофами или пробелами. Не дает ввести дубли символов дефиса или апострофа.
8
+ * Режет спецсимволы, если после них не идет буква.
9
+ *
10
+ * @param {string} value - Входная строка для обработки.
11
+ * @returns {string} - Обработанная строка.
12
+ */
13
+ fieldChangesMiddleware: (value) => {
14
+ const invalidCharacters = /* @__PURE__ */ new RegExp(/[^a-zA-Z-\s']/g);
15
+ const sideBySideHyphenOrApostrophe = /* @__PURE__ */ new RegExp(/['-]{2,}/g);
16
+ const multipleSpaces = /* @__PURE__ */ new RegExp(/\s{2,}/g);
17
+ const beforeSpace = /* @__PURE__ */ new RegExp(/['-](?=\s)/g);
18
+ return getSafelyValue(value).replace(invalidCharacters, "").replace(sideBySideHyphenOrApostrophe, "").replace(multipleSpaces, " ").replace(beforeSpace, "");
19
+ },
20
+ blurTrim: {
21
+ trimStart: true,
22
+ trimEnd: true,
23
+ characters: [
24
+ "-",
25
+ "'",
26
+ " "
27
+ ]
28
+ }
29
+ };
30
+ var ONLY_STRING_AND_DASH = {
31
+ /**
32
+ * @name fieldChangesMiddleware
33
+ * @description Обрабатывает входную строку, удаляет все неалфавитные символы, заменяет двойные дефисы на одинарные
34
+ * и удаляет все дефисы в начале или конце строки.
35
+ * @param {string} value - входная строка для обработки
36
+ * @returns {string} обработанная строка
37
+ */
38
+ fieldChangesMiddleware: (value) => {
39
+ const nonAlphabeticAndNotSingleDash = /* @__PURE__ */ new RegExp(/[^a-zA-Z-]|--/gi);
40
+ const consecutiveDashes = /* @__PURE__ */ new RegExp(/-+/g);
41
+ return getSafelyValue(value).replace(nonAlphabeticAndNotSingleDash, "").replace(consecutiveDashes, "-");
42
+ } };
43
+ var INPUT_PRESETS = {
44
+ NAME_SYMBOLS_EXCLUDER,
45
+ ONLY_STRING_AND_DASH
46
+ };
47
+ //#endregion
48
+ export { INPUT_PRESETS, NAME_SYMBOLS_EXCLUDER, ONLY_STRING_AND_DASH };
49
+
50
+ //# sourceMappingURL=inputPresets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inputPresets.js","names":[],"sources":["../../../../src/Functions/presets/inputPresets.js"],"sourcesContent":["import { getSafelyValue } from \"../fieldValueFormatters\";\n\nexport const NAME_SYMBOLS_EXCLUDER = {\n /**\n * @name fieldChangesMiddleware\n * @description Обрабатывает входящую строку, удаляет все символы, которые не являются\n * алфавитными, дефисами, апострофами или пробелами. Не дает ввести дубли символов дефиса или апострофа.\n * Режет спецсимволы, если после них не идет буква.\n *\n * @param {string} value - Входная строка для обработки.\n * @returns {string} - Обработанная строка.\n */\n fieldChangesMiddleware: (value) => {\n // remove invalid characters\n const invalidCharacters = new RegExp(/[^a-zA-Z-\\s']/g);\n // handle any two '-' or ''' should not be side by side\n const sideBySideHyphenOrApostrophe = new RegExp(/['-]{2,}/g);\n // replace sequence of spaces with single space\n const multipleSpaces = new RegExp(/\\s{2,}/g);\n // remove '-' or ''' if they are followed by a space\n const beforeSpace = new RegExp(/['-](?=\\s)/g);\n\n const sanitizedValue = getSafelyValue(value)\n .replace(invalidCharacters, \"\")\n .replace(sideBySideHyphenOrApostrophe, \"\")\n .replace(multipleSpaces, \" \")\n .replace(beforeSpace, \"\");\n\n return sanitizedValue;\n },\n blurTrim: {\n trimStart: true,\n trimEnd: true,\n characters: [\"-\", \"'\", \" \"],\n },\n};\n\nexport const ONLY_STRING_AND_DASH = {\n /**\n * @name fieldChangesMiddleware\n * @description Обрабатывает входную строку, удаляет все неалфавитные символы, заменяет двойные дефисы на одинарные\n * и удаляет все дефисы в начале или конце строки.\n * @param {string} value - входная строка для обработки\n * @returns {string} обработанная строка\n */\n fieldChangesMiddleware: (value) => {\n const nonAlphabeticAndNotSingleDash = new RegExp(/[^a-zA-Z-]|--/gi);\n const consecutiveDashes = new RegExp(/-+/g);\n\n const sanitizedInput = getSafelyValue(value);\n\n return sanitizedInput\n .replace(nonAlphabeticAndNotSingleDash, \"\")\n .replace(consecutiveDashes, \"-\");\n },\n};\nexport const INPUT_PRESETS = {\n NAME_SYMBOLS_EXCLUDER,\n ONLY_STRING_AND_DASH,\n};\n"],"mappings":";;AAEO,IAAM,wBAAwB;;;;;;;;;;CAUnC,yBAAyB,UAAU;EAEjC,MAAM,oCAAoB,IAAI,OAAO,gBAAgB;EAErD,MAAM,+CAA+B,IAAI,OAAO,WAAW;EAE3D,MAAM,iCAAiB,IAAI,OAAO,SAAS;EAE3C,MAAM,8BAAc,IAAI,OAAO,aAAa;EAQ5C,OANuB,eAAe,KAAK,CAAA,CACxC,QAAQ,mBAAmB,EAAE,CAAA,CAC7B,QAAQ,8BAA8B,EAAE,CAAA,CACxC,QAAQ,gBAAgB,GAAG,CAAA,CAC3B,QAAQ,aAAa,EAEjB;CACT;CACA,UAAU;EACR,WAAW;EACX,SAAS;EACT,YAAY;GAAC;GAAK;GAAK;EAAG;CAC5B;AACF;AAEO,IAAM,uBAAuB;;;;;;;;AAQlC,yBAAyB,UAAU;CACjC,MAAM,gDAAgC,IAAI,OAAO,iBAAiB;CAClE,MAAM,oCAAoB,IAAI,OAAO,KAAK;CAI1C,OAFuB,eAAe,KAE/B,CAAA,CACJ,QAAQ,+BAA+B,EAAE,CAAA,CACzC,QAAQ,mBAAmB,GAAG;AACnC,EACF;AACO,IAAM,gBAAgB;CAC3B;CACA;AACF"}
@@ -0,0 +1,11 @@
1
+ //#region src/Functions/presets/mobileKeyboardTypesPresets.js
2
+ var ALL_KEYBOARD_TYPES = {
3
+ numeric: { inputMode: "decimal" },
4
+ email: { inputMode: "email" }
5
+ };
6
+ var NUMERIC_KEYBOARD = { attributesOfNativeInput: ALL_KEYBOARD_TYPES.numeric };
7
+ var EMAIL_KEYBOARD = { attributesOfNativeInput: ALL_KEYBOARD_TYPES.email };
8
+ //#endregion
9
+ export { ALL_KEYBOARD_TYPES, EMAIL_KEYBOARD, NUMERIC_KEYBOARD };
10
+
11
+ //# sourceMappingURL=mobileKeyboardTypesPresets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mobileKeyboardTypesPresets.js","names":[],"sources":["../../../../src/Functions/presets/mobileKeyboardTypesPresets.js"],"sourcesContent":["//? Удобно использовать для расширения объекта атрибутов\nexport const ALL_KEYBOARD_TYPES = {\n numeric: { inputMode: \"decimal\" },\n email: { inputMode: \"email\" },\n};\n\n//? Например:\n/*\n const constructor = [\n ...\n {\n key: 'someField',\n ...\n attributesOfNativeInput: {\n 'data-testId': `someFieldTestId-${someId}`,\n ...ALL_KEYBOARD_TYPES.numeric\n }\n }\n ...\n ];\n\n*/\n\n// *****************************\n//? Удобно использовать для расширения объекта филда, если в филде более не добавляются другие атрибуты\n//? Например:\n/*\n const constructor = [\n ...\n {\n key: 'someField',\n ...NUMERIC_KEYBOARD\n ...\n }\n ...\n ];\n\n*/\n\nexport const NUMERIC_KEYBOARD = {\n attributesOfNativeInput: ALL_KEYBOARD_TYPES.numeric,\n};\nexport const EMAIL_KEYBOARD = {\n attributesOfNativeInput: ALL_KEYBOARD_TYPES.email,\n};\n"],"mappings":";AACO,IAAM,qBAAqB;CAChC,SAAS,EAAE,WAAW,UAAU;CAChC,OAAO,EAAE,WAAW,QAAQ;AAC9B;AAmCO,IAAM,mBAAmB,EAC9B,yBAAyB,mBAAmB,QAC9C;AACO,IAAM,iBAAiB,EAC5B,yBAAyB,mBAAmB,MAC9C"}
@@ -0,0 +1,161 @@
1
+ import { resolveConfig } from "./config.js";
2
+ import { requestWithRetry } from "./transport.js";
3
+ import { BatchQueue } from "./queue.js";
4
+ //#region src/Functions/sdk/runtime-sdk/client.ts
5
+ /**
6
+ * Создаёт и возвращает singleton-инстанс клиента для работы с
7
+ * runtime-эндпоинтами FinContract сервера.
8
+ *
9
+ * Вызывается один раз при инициализации фронта. Полученный инстанс
10
+ * используется во всём приложении для отправки runtime-логов (REST/WS)
11
+ * и удаления накопленных логов на сервере.
12
+ *
13
+ * Внутри:
14
+ * - нормализует конфиг и выставляет оптимизированные дефолты
15
+ * - поднимает внутреннюю очередь-батчер (interval + size triggers)
16
+ * - регистрирует `pagehide` / `beforeunload` listener'ы для
17
+ * отправки последнего батча через `navigator.sendBeacon`
18
+ *
19
+ * SDK не бросает ошибки наружу при проблемах сети/лимитов —
20
+ * всё уходит в `logger` и `onError`, чтобы не ронять прод.
21
+ */
22
+ function createRuntimeClient(rawConfig) {
23
+ const config = resolveConfig(rawConfig);
24
+ const queue = new BatchQueue(config);
25
+ let enabled = config.enabled;
26
+ let unloadHandler = null;
27
+ if (config.flushOnUnload && typeof window !== "undefined" && typeof window.addEventListener === "function") {
28
+ unloadHandler = () => {
29
+ queue.flushBeacon();
30
+ };
31
+ window.addEventListener("pagehide", unloadHandler);
32
+ window.addEventListener("beforeunload", unloadHandler);
33
+ }
34
+ return {
35
+ /**
36
+ * Поставить одно событие в очередь на отправку.
37
+ *
38
+ * Не делает HTTP-запрос сразу: событие попадает в батч и уйдёт
39
+ * либо при достижении `batchSize`, либо по таймеру `flushIntervalMs`,
40
+ * либо при закрытии вкладки (`sendBeacon`).
41
+ *
42
+ * Если клиент выключен (`enabled=false`) — вызов игнорируется.
43
+ */
44
+ track(log) {
45
+ if (!enabled) return;
46
+ queue.enqueue([log]);
47
+ },
48
+ /**
49
+ * Поставить сразу пачку событий в очередь.
50
+ *
51
+ * Удобно когда набрали события где-то локально (interceptor,
52
+ * буфер в компоненте и т.п.) и хотим отдать их все разом.
53
+ * Если итоговый размер очереди превысил `maxQueueSize` —
54
+ * старые события будут выброшены (FIFO drop).
55
+ */
56
+ trackMany(logs) {
57
+ if (!enabled) return;
58
+ queue.enqueue(logs);
59
+ },
60
+ /**
61
+ * Принудительно отправить всё что сейчас в очереди.
62
+ *
63
+ * Возвращает промис, резолвящийся после завершения HTTP-запроса
64
+ * (успешного или нет — SDK проглатывает ошибки). Полезно перед
65
+ * критичными переходами: logout, route change, submit формы.
66
+ *
67
+ * Если очередь пуста или клиент выключен — no-op.
68
+ */
69
+ async flush() {
70
+ if (!enabled) return;
71
+ await queue.flush();
72
+ },
73
+ /**
74
+ * Удалить накопленные runtime-логи на сервере по фильтру.
75
+ *
76
+ * В отличие от `track`, идёт напрямую в `DELETE /api/runtime/logs`
77
+ * без очереди и батчинга — это низкочастотная административная
78
+ * операция.
79
+ *
80
+ * Фильтр — дискриминированный union:
81
+ * - REST: `{ service, type: 'rest', path, method }`
82
+ * - WS: `{ service, type: 'ws', event }`
83
+ *
84
+ * Возвращает `{ deleted: N }`. При сетевой ошибке/5xx/429
85
+ * произойдёт до `maxRetries` повторов с бэкоффом.
86
+ */
87
+ async deleteLogs(filter) {
88
+ const query = toDeleteQuery(filter);
89
+ return requestWithRetry(config, {
90
+ method: "DELETE",
91
+ path: "/api/runtime/logs",
92
+ query
93
+ }, "delete");
94
+ },
95
+ /**
96
+ * Возвращает текущее состояние флага `enabled`.
97
+ *
98
+ * Пригодится для дев-тулзов/отладочных панелей, где видно
99
+ * активен ли сбор телеметрии в рантайме.
100
+ */
101
+ isEnabled() {
102
+ return enabled;
103
+ },
104
+ /**
105
+ * Включить/выключить сбор событий на ходу.
106
+ *
107
+ * Используется для opt-out по согласию пользователя (cookie consent),
108
+ * для временного отключения при инцидентах, или для точечного
109
+ * включения через debug-панель.
110
+ *
111
+ * Выключение не чистит уже накопленную очередь — только перестаёт
112
+ * принимать новые события. Полный сброс — через `destroy()`.
113
+ */
114
+ setEnabled(next) {
115
+ enabled = next;
116
+ config.logger("debug", `enabled=${next}`);
117
+ },
118
+ /**
119
+ * Полностью освободить ресурсы клиента.
120
+ *
121
+ * Останавливает таймер флаша, отписывается от `pagehide`/
122
+ * `beforeunload`, очищает буфер. Повторные вызовы безопасны.
123
+ *
124
+ * Обычно не требуется — клиент живёт всё время жизни вкладки.
125
+ * Полезно в SSR/тестах и при hot-reload'е на деве, чтобы не
126
+ * плодить дубликаты listener'ов.
127
+ */
128
+ destroy() {
129
+ if (unloadHandler && typeof window !== "undefined") {
130
+ window.removeEventListener("pagehide", unloadHandler);
131
+ window.removeEventListener("beforeunload", unloadHandler);
132
+ unloadHandler = null;
133
+ }
134
+ queue.destroy();
135
+ }
136
+ };
137
+ }
138
+ /**
139
+ * Преобразует дискриминированный фильтр в плоский query-объект
140
+ * для `URLSearchParams`.
141
+ *
142
+ * Серверный zod-union (`DeleteRestFilterSchema | DeleteWsFilterSchema`)
143
+ * ожидает разные наборы полей — тут нормализуем под нужный вариант.
144
+ */
145
+ function toDeleteQuery(filter) {
146
+ if (filter.type === "rest") return {
147
+ service: filter.service,
148
+ type: "rest",
149
+ path: filter.path,
150
+ method: filter.method
151
+ };
152
+ return {
153
+ service: filter.service,
154
+ type: "ws",
155
+ event: filter.event
156
+ };
157
+ }
158
+ //#endregion
159
+ export { createRuntimeClient };
160
+
161
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","names":[],"sources":["../../../../../src/Functions/sdk/runtime-sdk/client.ts"],"sourcesContent":["import type {\n DeleteLogsFilter,\n DeleteLogsResponse,\n ResolvedConfig,\n RuntimeClient,\n RuntimeClientConfig,\n RuntimeLog,\n} from './types';\nimport { resolveConfig } from './config';\nimport { BatchQueue } from './queue';\nimport { requestWithRetry } from './transport';\n\n/**\n * Создаёт и возвращает singleton-инстанс клиента для работы с\n * runtime-эндпоинтами FinContract сервера.\n *\n * Вызывается один раз при инициализации фронта. Полученный инстанс\n * используется во всём приложении для отправки runtime-логов (REST/WS)\n * и удаления накопленных логов на сервере.\n *\n * Внутри:\n * - нормализует конфиг и выставляет оптимизированные дефолты\n * - поднимает внутреннюю очередь-батчер (interval + size triggers)\n * - регистрирует `pagehide` / `beforeunload` listener'ы для\n * отправки последнего батча через `navigator.sendBeacon`\n *\n * SDK не бросает ошибки наружу при проблемах сети/лимитов —\n * всё уходит в `logger` и `onError`, чтобы не ронять прод.\n */\nexport function createRuntimeClient(\n rawConfig: RuntimeClientConfig,\n): RuntimeClient {\n const config: ResolvedConfig = resolveConfig(rawConfig);\n const queue = new BatchQueue(config);\n\n let enabled = config.enabled;\n let unloadHandler: (() => void) | null = null;\n\n if (\n config.flushOnUnload\n && typeof window !== 'undefined'\n && typeof window.addEventListener === 'function'\n ) {\n unloadHandler = () => {\n queue.flushBeacon();\n };\n window.addEventListener('pagehide', unloadHandler);\n window.addEventListener('beforeunload', unloadHandler);\n }\n\n const client: RuntimeClient = {\n /**\n * Поставить одно событие в очередь на отправку.\n *\n * Не делает HTTP-запрос сразу: событие попадает в батч и уйдёт\n * либо при достижении `batchSize`, либо по таймеру `flushIntervalMs`,\n * либо при закрытии вкладки (`sendBeacon`).\n *\n * Если клиент выключен (`enabled=false`) — вызов игнорируется.\n */\n track(log: RuntimeLog) {\n if (!enabled) return;\n queue.enqueue([log]);\n },\n\n /**\n * Поставить сразу пачку событий в очередь.\n *\n * Удобно когда набрали события где-то локально (interceptor,\n * буфер в компоненте и т.п.) и хотим отдать их все разом.\n * Если итоговый размер очереди превысил `maxQueueSize` —\n * старые события будут выброшены (FIFO drop).\n */\n trackMany(logs: RuntimeLog[]) {\n if (!enabled) return;\n queue.enqueue(logs);\n },\n\n /**\n * Принудительно отправить всё что сейчас в очереди.\n *\n * Возвращает промис, резолвящийся после завершения HTTP-запроса\n * (успешного или нет — SDK проглатывает ошибки). Полезно перед\n * критичными переходами: logout, route change, submit формы.\n *\n * Если очередь пуста или клиент выключен — no-op.\n */\n async flush() {\n if (!enabled) return;\n await queue.flush();\n },\n\n /**\n * Удалить накопленные runtime-логи на сервере по фильтру.\n *\n * В отличие от `track`, идёт напрямую в `DELETE /api/runtime/logs`\n * без очереди и батчинга — это низкочастотная административная\n * операция.\n *\n * Фильтр — дискриминированный union:\n * - REST: `{ service, type: 'rest', path, method }`\n * - WS: `{ service, type: 'ws', event }`\n *\n * Возвращает `{ deleted: N }`. При сетевой ошибке/5xx/429\n * произойдёт до `maxRetries` повторов с бэкоффом.\n */\n async deleteLogs(filter: DeleteLogsFilter): Promise<DeleteLogsResponse> {\n const query = toDeleteQuery(filter);\n return requestWithRetry<DeleteLogsResponse>(\n config,\n { method: 'DELETE', path: '/api/runtime/logs', query },\n 'delete',\n );\n },\n\n /**\n * Возвращает текущее состояние флага `enabled`.\n *\n * Пригодится для дев-тулзов/отладочных панелей, где видно\n * активен ли сбор телеметрии в рантайме.\n */\n isEnabled() {\n return enabled;\n },\n\n /**\n * Включить/выключить сбор событий на ходу.\n *\n * Используется для opt-out по согласию пользователя (cookie consent),\n * для временного отключения при инцидентах, или для точечного\n * включения через debug-панель.\n *\n * Выключение не чистит уже накопленную очередь — только перестаёт\n * принимать новые события. Полный сброс — через `destroy()`.\n */\n setEnabled(next: boolean) {\n enabled = next;\n config.logger('debug', `enabled=${next}`);\n },\n\n /**\n * Полностью освободить ресурсы клиента.\n *\n * Останавливает таймер флаша, отписывается от `pagehide`/\n * `beforeunload`, очищает буфер. Повторные вызовы безопасны.\n *\n * Обычно не требуется — клиент живёт всё время жизни вкладки.\n * Полезно в SSR/тестах и при hot-reload'е на деве, чтобы не\n * плодить дубликаты listener'ов.\n */\n destroy() {\n if (unloadHandler && typeof window !== 'undefined') {\n window.removeEventListener('pagehide', unloadHandler);\n window.removeEventListener('beforeunload', unloadHandler);\n unloadHandler = null;\n }\n queue.destroy();\n },\n };\n\n return client;\n}\n\n/**\n * Преобразует дискриминированный фильтр в плоский query-объект\n * для `URLSearchParams`.\n *\n * Серверный zod-union (`DeleteRestFilterSchema | DeleteWsFilterSchema`)\n * ожидает разные наборы полей — тут нормализуем под нужный вариант.\n */\nfunction toDeleteQuery(filter: DeleteLogsFilter): Record<string, string> {\n if (filter.type === 'rest') {\n return {\n service: filter.service,\n type: 'rest',\n path: filter.path,\n method: filter.method,\n };\n }\n return {\n service: filter.service,\n type: 'ws',\n event: filter.event,\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AA6BA,SAAgB,oBACd,WACe;CACf,MAAM,SAAyB,cAAc,SAAS;CACtD,MAAM,QAAQ,IAAI,WAAW,MAAM;CAEnC,IAAI,UAAU,OAAO;CACrB,IAAI,gBAAqC;CAEzC,IACE,OAAO,iBACJ,OAAO,WAAW,eAClB,OAAO,OAAO,qBAAqB,YACtC;EACA,sBAAsB;GACpB,MAAM,YAAY;EACpB;EACA,OAAO,iBAAiB,YAAY,aAAa;EACjD,OAAO,iBAAiB,gBAAgB,aAAa;CACvD;CAgHA,OAAO;;;;;;;;;;EApGL,MAAM,KAAiB;GACrB,IAAI,CAAC,SAAS;GACd,MAAM,QAAQ,CAAC,GAAG,CAAC;EACrB;;;;;;;;;EAUA,UAAU,MAAoB;GAC5B,IAAI,CAAC,SAAS;GACd,MAAM,QAAQ,IAAI;EACpB;;;;;;;;;;EAWA,MAAM,QAAQ;GACZ,IAAI,CAAC,SAAS;GACd,MAAM,MAAM,MAAM;EACpB;;;;;;;;;;;;;;;EAgBA,MAAM,WAAW,QAAuD;GACtE,MAAM,QAAQ,cAAc,MAAM;GAClC,OAAO,iBACL,QACA;IAAE,QAAQ;IAAU,MAAM;IAAqB;GAAM,GACrD,QACF;EACF;;;;;;;EAQA,YAAY;GACV,OAAO;EACT;;;;;;;;;;;EAYA,WAAW,MAAe;GACxB,UAAU;GACV,OAAO,OAAO,SAAS,WAAW,MAAM;EAC1C;;;;;;;;;;;EAYA,UAAU;GACR,IAAI,iBAAiB,OAAO,WAAW,aAAa;IAClD,OAAO,oBAAoB,YAAY,aAAa;IACpD,OAAO,oBAAoB,gBAAgB,aAAa;IACxD,gBAAgB;GAClB;GACA,MAAM,QAAQ;EAChB;CAGK;AACT;;;;;;;;AASA,SAAS,cAAc,QAAkD;CACvE,IAAI,OAAO,SAAS,QAClB,OAAO;EACL,SAAS,OAAO;EAChB,MAAM;EACN,MAAM,OAAO;EACb,QAAQ,OAAO;CACjB;CAEF,OAAO;EACL,SAAS,OAAO;EAChB,MAAM;EACN,OAAO,OAAO;CAChB;AACF"}
@@ -0,0 +1,77 @@
1
+ //#region src/Functions/sdk/runtime-sdk/config.ts
2
+ var noopLogger = () => {};
3
+ var consoleLogger = (level, message, meta) => {
4
+ const tag = "[runtime-sdk]";
5
+ if (level === "error") console.error(tag, message, meta ?? "");
6
+ else if (level === "warn") console.warn(tag, message, meta ?? "");
7
+ else console.debug(tag, message, meta ?? "");
8
+ };
9
+ /**
10
+ * Нормализует пользовательский конфиг в `ResolvedConfig` со всеми
11
+ * дефолтами и валидацией.
12
+ *
13
+ * Что делает:
14
+ * - проверяет обязательные поля (`baseUrl`)
15
+ * - обрезает хвостовые слэши у `baseUrl`
16
+ * - подставляет `fetch` из глобалов или из `config.fetchImpl`
17
+ * (нужен для SSR/Node-тестов, где `globalThis.fetch` может отсутствовать)
18
+ * - применяет оптимизированные дефолты и clamp на разумные границы,
19
+ * чтобы кривые значения (0, Infinity, отрицательные) не ломали SDK
20
+ * - выбирает logger: явный → передан, иначе console-логгер в debug,
21
+ * иначе no-op
22
+ *
23
+ * Бросает `Error` только при фатально неправильной конфигурации.
24
+ */
25
+ function resolveConfig(config) {
26
+ if (!config.baseUrl || typeof config.baseUrl !== "string") throw new Error("[runtime-sdk] baseUrl is required");
27
+ const baseUrl = config.baseUrl.replace(/\/+$/, "");
28
+ const debug = config.debug ?? false;
29
+ const fetchImpl = config.fetchImpl ?? (typeof fetch !== "undefined" ? fetch.bind(globalThis) : void 0);
30
+ if (!fetchImpl) throw new Error("[runtime-sdk] fetch is not available; pass fetchImpl in config");
31
+ return {
32
+ baseUrl,
33
+ apiKey: config.apiKey,
34
+ enabled: config.enabled ?? true,
35
+ debug,
36
+ batchSize: clamp(config.batchSize ?? 25, 1, 200),
37
+ flushIntervalMs: clamp(config.flushIntervalMs ?? 5e3, 500, 6e4),
38
+ maxQueueSize: clamp(config.maxQueueSize ?? 1e3, 50, 1e4),
39
+ maxRetries: clamp(config.maxRetries ?? 2, 0, 5),
40
+ requestTimeoutMs: clamp(config.requestTimeoutMs ?? 8e3, 1e3, 3e4),
41
+ flushOnUnload: config.flushOnUnload ?? true,
42
+ fetchImpl,
43
+ logger: config.logger ?? (debug ? consoleLogger : noopLogger),
44
+ onError: config.onError,
45
+ headers: { ...config.headers ?? {} }
46
+ };
47
+ }
48
+ function clamp(value, min, max) {
49
+ if (!Number.isFinite(value)) return min;
50
+ return Math.min(Math.max(value, min), max);
51
+ }
52
+ /**
53
+ * Собирает финальный набор HTTP-заголовков для запроса.
54
+ *
55
+ * Приоритет (поздний перезатирает ранний):
56
+ * 1. `Content-Type: application/json` по умолчанию
57
+ * 2. `config.headers` из конфига SDK
58
+ * 3. `extra` — точечные заголовки конкретного запроса
59
+ * 4. `X-API-Key` из `config.apiKey`, если задан — всегда поверх всего,
60
+ * чтобы его нельзя было случайно переопределить через `headers`
61
+ *
62
+ * Сервер использует `X-API-Key` как bucket-key для rate-limiter'а
63
+ * (см. `ingestion-rate-limit.guard.ts`). Это **не** токен авторизации.
64
+ */
65
+ function buildHeaders(config, extra) {
66
+ const headers = {
67
+ "Content-Type": "application/json",
68
+ ...config.headers,
69
+ ...extra ?? {}
70
+ };
71
+ if (config.apiKey) headers["X-API-Key"] = config.apiKey;
72
+ return headers;
73
+ }
74
+ //#endregion
75
+ export { buildHeaders, resolveConfig };
76
+
77
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","names":[],"sources":["../../../../../src/Functions/sdk/runtime-sdk/config.ts"],"sourcesContent":["/* eslint-disable no-console */\nimport type { Logger, ResolvedConfig, RuntimeClientConfig } from './types';\n\nconst noopLogger: Logger = () => {};\n\nconst consoleLogger: Logger = (level, message, meta) => {\n const tag = '[runtime-sdk]';\n if (level === 'error') console.error(tag, message, meta ?? '');\n else if (level === 'warn') console.warn(tag, message, meta ?? '');\n else console.debug(tag, message, meta ?? '');\n};\n\n/**\n * Нормализует пользовательский конфиг в `ResolvedConfig` со всеми\n * дефолтами и валидацией.\n *\n * Что делает:\n * - проверяет обязательные поля (`baseUrl`)\n * - обрезает хвостовые слэши у `baseUrl`\n * - подставляет `fetch` из глобалов или из `config.fetchImpl`\n * (нужен для SSR/Node-тестов, где `globalThis.fetch` может отсутствовать)\n * - применяет оптимизированные дефолты и clamp на разумные границы,\n * чтобы кривые значения (0, Infinity, отрицательные) не ломали SDK\n * - выбирает logger: явный → передан, иначе console-логгер в debug,\n * иначе no-op\n *\n * Бросает `Error` только при фатально неправильной конфигурации.\n */\nexport function resolveConfig(config: RuntimeClientConfig): ResolvedConfig {\n if (!config.baseUrl || typeof config.baseUrl !== 'string') {\n throw new Error('[runtime-sdk] baseUrl is required');\n }\n\n const baseUrl = config.baseUrl.replace(/\\/+$/, '');\n const debug = config.debug ?? false;\n const fetchImpl\n = config.fetchImpl\n ?? (typeof fetch !== 'undefined' ? fetch.bind(globalThis) : undefined);\n\n if (!fetchImpl) {\n throw new Error(\n '[runtime-sdk] fetch is not available; pass fetchImpl in config',\n );\n }\n\n return {\n baseUrl,\n apiKey: config.apiKey,\n enabled: config.enabled ?? true,\n debug,\n batchSize: clamp(config.batchSize ?? 25, 1, 200),\n flushIntervalMs: clamp(config.flushIntervalMs ?? 5000, 500, 60_000),\n maxQueueSize: clamp(config.maxQueueSize ?? 1000, 50, 10_000),\n maxRetries: clamp(config.maxRetries ?? 2, 0, 5),\n requestTimeoutMs: clamp(config.requestTimeoutMs ?? 8000, 1000, 30_000),\n flushOnUnload: config.flushOnUnload ?? true,\n fetchImpl,\n logger: config.logger ?? (debug ? consoleLogger : noopLogger),\n onError: config.onError,\n headers: { ...(config.headers ?? {}) },\n };\n}\n\nfunction clamp(value: number, min: number, max: number): number {\n if (!Number.isFinite(value)) return min;\n return Math.min(Math.max(value, min), max);\n}\n\n/**\n * Собирает финальный набор HTTP-заголовков для запроса.\n *\n * Приоритет (поздний перезатирает ранний):\n * 1. `Content-Type: application/json` по умолчанию\n * 2. `config.headers` из конфига SDK\n * 3. `extra` — точечные заголовки конкретного запроса\n * 4. `X-API-Key` из `config.apiKey`, если задан — всегда поверх всего,\n * чтобы его нельзя было случайно переопределить через `headers`\n *\n * Сервер использует `X-API-Key` как bucket-key для rate-limiter'а\n * (см. `ingestion-rate-limit.guard.ts`). Это **не** токен авторизации.\n */\nexport function buildHeaders(\n config: ResolvedConfig,\n extra?: Record<string, string>,\n): Record<string, string> {\n const headers: Record<string, string> = {\n 'Content-Type': 'application/json',\n ...config.headers,\n ...(extra ?? {}),\n };\n if (config.apiKey) headers['X-API-Key'] = config.apiKey;\n return headers;\n}\n"],"mappings":";AAGA,IAAM,mBAA2B,CAAC;AAElC,IAAM,iBAAyB,OAAO,SAAS,SAAS;CACtD,MAAM,MAAM;CACZ,IAAI,UAAU,SAAS,QAAQ,MAAM,KAAK,SAAS,QAAQ,EAAE;MACxD,IAAI,UAAU,QAAQ,QAAQ,KAAK,KAAK,SAAS,QAAQ,EAAE;MAC3D,QAAQ,MAAM,KAAK,SAAS,QAAQ,EAAE;AAC7C;;;;;;;;;;;;;;;;;AAkBA,SAAgB,cAAc,QAA6C;CACzE,IAAI,CAAC,OAAO,WAAW,OAAO,OAAO,YAAY,UAC/C,MAAM,IAAI,MAAM,mCAAmC;CAGrD,MAAM,UAAU,OAAO,QAAQ,QAAQ,QAAQ,EAAE;CACjD,MAAM,QAAQ,OAAO,SAAS;CAC9B,MAAM,YACF,OAAO,cACH,OAAO,UAAU,cAAc,MAAM,KAAK,UAAU,IAAI,KAAA;CAEhE,IAAI,CAAC,WACH,MAAM,IAAI,MACR,gEACF;CAGF,OAAO;EACL;EACA,QAAQ,OAAO;EACf,SAAS,OAAO,WAAW;EAC3B;EACA,WAAW,MAAM,OAAO,aAAa,IAAI,GAAG,GAAG;EAC/C,iBAAiB,MAAM,OAAO,mBAAmB,KAAM,KAAK,GAAM;EAClE,cAAc,MAAM,OAAO,gBAAgB,KAAM,IAAI,GAAM;EAC3D,YAAY,MAAM,OAAO,cAAc,GAAG,GAAG,CAAC;EAC9C,kBAAkB,MAAM,OAAO,oBAAoB,KAAM,KAAM,GAAM;EACrE,eAAe,OAAO,iBAAiB;EACvC;EACA,QAAQ,OAAO,WAAW,QAAQ,gBAAgB;EAClD,SAAS,OAAO;EAChB,SAAS,EAAE,GAAI,OAAO,WAAW,CAAC,EAAG;CACvC;AACF;AAEA,SAAS,MAAM,OAAe,KAAa,KAAqB;CAC9D,IAAI,CAAC,OAAO,SAAS,KAAK,GAAG,OAAO;CACpC,OAAO,KAAK,IAAI,KAAK,IAAI,OAAO,GAAG,GAAG,GAAG;AAC3C;;;;;;;;;;;;;;AAeA,SAAgB,aACd,QACA,OACwB;CACxB,MAAM,UAAkC;EACtC,gBAAgB;EAChB,GAAG,OAAO;EACV,GAAI,SAAS,CAAC;CAChB;CACA,IAAI,OAAO,QAAQ,QAAQ,eAAe,OAAO;CACjD,OAAO;AACT"}