@invoicebox/ui 0.1.0-alpha.292 → 0.1.0-alpha.294

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 (303) hide show
  1. package/dist/components/common/Arrow/palette.js +1 -1
  2. package/dist/components/common/Calendar/palette.js +1 -1
  3. package/dist/components/common/Drawer/palette.js +1 -1
  4. package/dist/components/common/Dropdown/palette.js +1 -1
  5. package/dist/components/common/EntityAutocompleteOptionsDrawer/index.js +6 -2
  6. package/dist/components/common/EntityAutocompleteOptionsDrawer/palette.js +1 -1
  7. package/dist/components/common/PointsLoader/palette.js +1 -1
  8. package/dist/components/common/Scrollbar/index.js +12 -32
  9. package/dist/components/common/Scrollbar/styles.d.ts +7 -0
  10. package/dist/components/common/Scrollbar/styles.js +30 -0
  11. package/dist/components/common/Toast/styles.js +1 -1
  12. package/dist/components/form/Autocomplete/components/Autocomplete/index.d.ts +1 -0
  13. package/dist/components/form/Autocomplete/components/Autocomplete/index.js +89 -7
  14. package/dist/components/form/Autocomplete/components/Autocomplete/styles.d.ts +1 -0
  15. package/dist/components/form/Autocomplete/components/Autocomplete/styles.js +8 -4
  16. package/dist/components/form/Autocomplete/components/AutocompleteDefaultOption/palette.js +1 -1
  17. package/dist/components/form/Autocomplete/components/OrganizationAutocompleteItem/palette.js +1 -1
  18. package/dist/components/form/CodeInput/palette.js +1 -1
  19. package/dist/components/form/CountrySelect/palette.js +1 -1
  20. package/dist/components/form/DateTimeInput/components/TimePicker/palette.js +1 -1
  21. package/dist/components/form/DateTimeInput/palette.js +1 -1
  22. package/dist/components/form/PureInput/palette.js +1 -1
  23. package/dist/components/form/Select/palette.js +1 -1
  24. package/dist/components/form/TextInput/index.d.ts +2 -2
  25. package/dist/components/form/TextInput/index.js +4 -2
  26. package/dist/components/form/Toggle/palette.js +1 -1
  27. package/dist/components/form/common/DrawerHeader/palette.js +1 -1
  28. package/dist/esm/breakpoints/index.js +7 -0
  29. package/dist/esm/components/_helpers/StoryBorderWrapper/index.js +5 -0
  30. package/dist/esm/components/_helpers/selectOptions.js +37 -0
  31. package/dist/esm/components/common/AppCardLink/components/ApkRu.js +99 -0
  32. package/dist/esm/components/common/AppCardLink/components/AppGalleryRu.js +91 -0
  33. package/dist/esm/components/common/AppCardLink/components/GooglePlayRu.js +177 -0
  34. package/dist/esm/components/common/AppCardLink/components/RuStoreRu.js +94 -0
  35. package/dist/esm/components/common/AppCardLink/constants.js +1 -0
  36. package/dist/esm/components/common/AppCardLink/index.js +24 -0
  37. package/dist/esm/components/common/AppCardLink/index.stories.js +14 -0
  38. package/dist/esm/components/common/AppCardLink/styles.js +5 -0
  39. package/dist/esm/components/common/Arrow/components/StyledSvg/index.js +18 -0
  40. package/dist/esm/components/common/Arrow/components/StyledSvg/index.stories.js +20 -0
  41. package/dist/esm/components/common/Arrow/components/Svg/index.js +19 -0
  42. package/dist/esm/components/common/Arrow/components/Svg/index.stories.js +15 -0
  43. package/dist/esm/components/common/Arrow/index.js +22 -0
  44. package/dist/esm/components/common/Arrow/index.stories.js +15 -0
  45. package/dist/esm/components/common/Arrow/palette.js +7 -0
  46. package/dist/esm/components/common/BgCard/index.js +13 -0
  47. package/dist/esm/components/common/BgCard/index.stories.js +14 -0
  48. package/dist/esm/components/common/BgCard/palette.js +5 -0
  49. package/dist/esm/components/common/BgCard/styles.js +12 -0
  50. package/dist/esm/components/common/Calendar/docs.stories.js +14 -0
  51. package/dist/esm/components/common/Calendar/index.js +44 -0
  52. package/dist/esm/components/common/Calendar/index.stories.js +69 -0
  53. package/dist/esm/components/common/Calendar/palette.js +12 -0
  54. package/dist/esm/components/common/Calendar/styles.js +34 -0
  55. package/dist/esm/components/common/Chip/index.js +17 -0
  56. package/dist/esm/components/common/Chip/index.stories.js +14 -0
  57. package/dist/esm/components/common/Chip/styles.js +18 -0
  58. package/dist/esm/components/common/Divider/index.js +13 -0
  59. package/dist/esm/components/common/Divider/index.stories.js +8 -0
  60. package/dist/esm/components/common/Divider/palette.js +5 -0
  61. package/dist/esm/components/common/Divider/styles.js +11 -0
  62. package/dist/esm/components/common/Drawer/index.js +65 -0
  63. package/dist/esm/components/common/Drawer/index.stories.js +77 -0
  64. package/dist/esm/components/common/Drawer/palette.js +14 -0
  65. package/dist/esm/components/common/Drawer/styles.js +45 -0
  66. package/dist/esm/components/common/Dropdown/index.js +113 -0
  67. package/dist/esm/components/common/Dropdown/index.stories.js +53 -0
  68. package/dist/esm/components/common/Dropdown/palette.js +7 -0
  69. package/dist/esm/components/common/Dropdown/styles.js +44 -0
  70. package/dist/esm/components/common/EntityAutocompleteOptionsDrawer/index.js +59 -0
  71. package/dist/esm/components/common/EntityAutocompleteOptionsDrawer/index.stories.js +92 -0
  72. package/dist/esm/components/common/EntityAutocompleteOptionsDrawer/palette.js +6 -0
  73. package/dist/esm/components/common/EntityAutocompleteOptionsDrawer/styles.js +29 -0
  74. package/dist/esm/components/common/Flag/components/ArmFlag/index.js +23 -0
  75. package/dist/esm/components/common/Flag/components/ArmFlag/index.stories.js +8 -0
  76. package/dist/esm/components/common/Flag/components/AzeFlag/index.js +33 -0
  77. package/dist/esm/components/common/Flag/components/AzeFlag/index.stories.js +8 -0
  78. package/dist/esm/components/common/Flag/components/BlrFlag/index.js +28 -0
  79. package/dist/esm/components/common/Flag/components/BlrFlag/index.stories.js +8 -0
  80. package/dist/esm/components/common/Flag/components/ChnFlag/index.js +25 -0
  81. package/dist/esm/components/common/Flag/components/ChnFlag/index.stories.js +8 -0
  82. package/dist/esm/components/common/Flag/components/EngFlag/index.js +47 -0
  83. package/dist/esm/components/common/Flag/components/EngFlag/index.stories.js +8 -0
  84. package/dist/esm/components/common/Flag/components/EspFlag/index.js +79 -0
  85. package/dist/esm/components/common/Flag/components/EspFlag/index.stories.js +8 -0
  86. package/dist/esm/components/common/Flag/components/KazFlag/index.js +28 -0
  87. package/dist/esm/components/common/Flag/components/KazFlag/index.stories.js +8 -0
  88. package/dist/esm/components/common/Flag/components/KgzFlag/index.js +25 -0
  89. package/dist/esm/components/common/Flag/components/KgzFlag/index.stories.js +8 -0
  90. package/dist/esm/components/common/Flag/components/MdaFlag/index.js +45 -0
  91. package/dist/esm/components/common/Flag/components/MdaFlag/index.stories.js +8 -0
  92. package/dist/esm/components/common/Flag/components/RusFlag/index.js +25 -0
  93. package/dist/esm/components/common/Flag/components/RusFlag/index.stories.js +8 -0
  94. package/dist/esm/components/common/Flag/components/TjkFlag/index.js +30 -0
  95. package/dist/esm/components/common/Flag/components/TjkFlag/index.stories.js +8 -0
  96. package/dist/esm/components/common/Flag/components/UnknownFlag/index.js +19 -0
  97. package/dist/esm/components/common/Flag/components/UnknownFlag/index.stories.js +8 -0
  98. package/dist/esm/components/common/Flag/components/UzbFlag/index.js +36 -0
  99. package/dist/esm/components/common/Flag/components/UzbFlag/index.stories.js +8 -0
  100. package/dist/esm/components/common/Flag/index.js +39 -0
  101. package/dist/esm/components/common/Flag/index.stories.js +16 -0
  102. package/dist/esm/components/common/Flag/styles.js +10 -0
  103. package/dist/esm/components/common/InvoiceboxLogo/components/LogoDarkRu.js +44 -0
  104. package/dist/esm/components/common/InvoiceboxLogo/index.js +8 -0
  105. package/dist/esm/components/common/InvoiceboxLogo/index.stories.js +12 -0
  106. package/dist/esm/components/common/InvoiceboxSpinner/index.js +29 -0
  107. package/dist/esm/components/common/InvoiceboxSpinner/index.stories.js +12 -0
  108. package/dist/esm/components/common/InvoiceboxSpinner/palette.js +6 -0
  109. package/dist/esm/components/common/InvoiceboxSpinner/styles.js +10 -0
  110. package/dist/esm/components/common/PointsLoader/index.js +16 -0
  111. package/dist/esm/components/common/PointsLoader/index.stories.js +10 -0
  112. package/dist/esm/components/common/PointsLoader/palette.js +7 -0
  113. package/dist/esm/components/common/PointsLoader/styles.js +21 -0
  114. package/dist/esm/components/common/QRCode/index.js +26 -0
  115. package/dist/esm/components/common/QRCode/index.stories.js +13 -0
  116. package/dist/esm/components/common/ReadOnlyLabelValueField/index.js +24 -0
  117. package/dist/esm/components/common/ReadOnlyLabelValueField/index.stories.js +14 -0
  118. package/dist/esm/components/common/ReadOnlyLabelValueField/palette.js +5 -0
  119. package/dist/esm/components/common/ReadOnlyLabelValueField/styles.js +15 -0
  120. package/dist/esm/components/common/Scrollbar/index.js +22 -0
  121. package/dist/esm/components/common/Scrollbar/index.stories.js +43 -0
  122. package/dist/esm/components/common/Scrollbar/palette.js +5 -0
  123. package/dist/esm/components/common/Scrollbar/styles.js +21 -0
  124. package/dist/esm/components/common/SecondaryButton/index.js +44 -0
  125. package/dist/esm/components/common/SecondaryButton/index.stories.js +33 -0
  126. package/dist/esm/components/common/SecondaryButton/palette.js +8 -0
  127. package/dist/esm/components/common/SecondaryButton/styles.js +43 -0
  128. package/dist/esm/components/common/Skeleton/index.js +18 -0
  129. package/dist/esm/components/common/Skeleton/index.stories.js +24 -0
  130. package/dist/esm/components/common/Skeleton/palette.js +6 -0
  131. package/dist/esm/components/common/Skeleton/styles.js +28 -0
  132. package/dist/esm/components/common/Toast/docs.stories.js +14 -0
  133. package/dist/esm/components/common/Toast/index.js +29 -0
  134. package/dist/esm/components/common/Toast/index.stories.js +22 -0
  135. package/dist/esm/components/common/Toast/palette.js +7 -0
  136. package/dist/esm/components/common/Toast/styles.js +17 -0
  137. package/dist/esm/components/common/Typography/docs.stories.js +14 -0
  138. package/dist/esm/components/common/Typography/index.js +30 -0
  139. package/dist/esm/components/common/Typography/index.stories.js +29 -0
  140. package/dist/esm/components/common/Typography/styles.js +9 -0
  141. package/dist/esm/components/common/Typography/typography.js +25 -0
  142. package/dist/esm/components/common/WarningIcon/components/Icon.js +15 -0
  143. package/dist/esm/components/common/WarningIcon/index.js +13 -0
  144. package/dist/esm/components/common/WarningIcon/index.stories.js +8 -0
  145. package/dist/esm/components/common/WarningIcon/palette.js +5 -0
  146. package/dist/esm/components/common/WarningIcon/styles.js +15 -0
  147. package/dist/esm/components/common/_helpers/selectOptions.js +39 -0
  148. package/dist/esm/components/form/Autocomplete/components/Autocomplete/index.js +264 -0
  149. package/dist/esm/components/form/Autocomplete/components/Autocomplete/index.stories.js +55 -0
  150. package/dist/esm/components/form/Autocomplete/components/Autocomplete/styles.js +42 -0
  151. package/dist/esm/components/form/Autocomplete/components/AutocompleteDefaultOption/index.js +21 -0
  152. package/dist/esm/components/form/Autocomplete/components/AutocompleteDefaultOption/index.stories.js +17 -0
  153. package/dist/esm/components/form/Autocomplete/components/AutocompleteDefaultOption/palette.js +6 -0
  154. package/dist/esm/components/form/Autocomplete/components/OrganizationAutocompleteItem/index.js +40 -0
  155. package/dist/esm/components/form/Autocomplete/components/OrganizationAutocompleteItem/index.stories.js +20 -0
  156. package/dist/esm/components/form/Autocomplete/components/OrganizationAutocompleteItem/palette.js +9 -0
  157. package/dist/esm/components/form/Autocomplete/components/OrganizationAutocompleteItem/styles.js +58 -0
  158. package/dist/esm/components/form/Autocomplete/index.js +3 -0
  159. package/dist/esm/components/form/CodeInput/index.js +93 -0
  160. package/dist/esm/components/form/CodeInput/index.stories.js +43 -0
  161. package/dist/esm/components/form/CodeInput/palette.js +7 -0
  162. package/dist/esm/components/form/CodeInput/styles.js +24 -0
  163. package/dist/esm/components/form/CountrySelect/components/CountryItem/index.js +32 -0
  164. package/dist/esm/components/form/CountrySelect/components/CountryItem/index.stories.js +29 -0
  165. package/dist/esm/components/form/CountrySelect/components/CountryItem/stlyes.js +24 -0
  166. package/dist/esm/components/form/CountrySelect/index.js +113 -0
  167. package/dist/esm/components/form/CountrySelect/index.stories.js +51 -0
  168. package/dist/esm/components/form/CountrySelect/logic.js +18 -0
  169. package/dist/esm/components/form/CountrySelect/palette.js +10 -0
  170. package/dist/esm/components/form/CountrySelect/stlyes.js +20 -0
  171. package/dist/esm/components/form/CurrencyInput/CoreCurrencyInput/index.js +95 -0
  172. package/dist/esm/components/form/CurrencyInput/CoreCurrencyInput/index.stories.js +33 -0
  173. package/dist/esm/components/form/CurrencyInput/CoreCurrencyInput/styles.js +8 -0
  174. package/dist/esm/components/form/CurrencyInput/CurrencyInputNumber/index.js +16 -0
  175. package/dist/esm/components/form/CurrencyInput/CurrencyInputNumber/index.stories.js +46 -0
  176. package/dist/esm/components/form/CurrencyInput/CurrencyInputString/index.js +16 -0
  177. package/dist/esm/components/form/CurrencyInput/CurrencyInputString/index.stories.js +32 -0
  178. package/dist/esm/components/form/CurrencyInput/README.md +24 -0
  179. package/dist/esm/components/form/DateInput/components/CalendarIcon/index.js +24 -0
  180. package/dist/esm/components/form/DateInput/components/CalendarIcon/index.stories.js +8 -0
  181. package/dist/esm/components/form/DateInput/components/MobileDrawerDateCalendar/index.js +27 -0
  182. package/dist/esm/components/form/DateInput/components/MobileDrawerDateCalendar/index.stories.js +65 -0
  183. package/dist/esm/components/form/DateInput/components/MobileDrawerDateCalendar/styles.js +5 -0
  184. package/dist/esm/components/form/DateInput/docs.stories.js +14 -0
  185. package/dist/esm/components/form/DateInput/index.js +171 -0
  186. package/dist/esm/components/form/DateInput/index.stories.js +48 -0
  187. package/dist/esm/components/form/DateInput/logic.js +89 -0
  188. package/dist/esm/components/form/DateInput/palette.js +5 -0
  189. package/dist/esm/components/form/DateInput/styles.js +21 -0
  190. package/dist/esm/components/form/DateTimeInput/components/MobileDrawerDateTimeCalendar/index.js +66 -0
  191. package/dist/esm/components/form/DateTimeInput/components/MobileDrawerDateTimeCalendar/index.stories.js +63 -0
  192. package/dist/esm/components/form/DateTimeInput/components/MobileDrawerDateTimeCalendar/styles.js +9 -0
  193. package/dist/esm/components/form/DateTimeInput/components/MobileNumbersColumn/index.js +193 -0
  194. package/dist/esm/components/form/DateTimeInput/components/MobileNumbersColumn/styles.js +18 -0
  195. package/dist/esm/components/form/DateTimeInput/components/TimePicker/index.js +132 -0
  196. package/dist/esm/components/form/DateTimeInput/components/TimePicker/index.stories.js +32 -0
  197. package/dist/esm/components/form/DateTimeInput/components/TimePicker/palette.js +11 -0
  198. package/dist/esm/components/form/DateTimeInput/components/TimePicker/styles.js +54 -0
  199. package/dist/esm/components/form/DateTimeInput/hooks/useStringValue.js +22 -0
  200. package/dist/esm/components/form/DateTimeInput/hooks/useTimePickerHeight.js +31 -0
  201. package/dist/esm/components/form/DateTimeInput/index.js +232 -0
  202. package/dist/esm/components/form/DateTimeInput/index.stories.js +52 -0
  203. package/dist/esm/components/form/DateTimeInput/palette.js +11 -0
  204. package/dist/esm/components/form/DateTimeInput/styles.js +51 -0
  205. package/dist/esm/components/form/InputLabel/index.js +33 -0
  206. package/dist/esm/components/form/InputLabel/index.stories.js +26 -0
  207. package/dist/esm/components/form/InputLabel/palette.js +9 -0
  208. package/dist/esm/components/form/InputLabel/styles.js +42 -0
  209. package/dist/esm/components/form/ModernPlaceholder/index.js +25 -0
  210. package/dist/esm/components/form/ModernPlaceholder/styles.js +28 -0
  211. package/dist/esm/components/form/PhoneInput/constants.js +69 -0
  212. package/dist/esm/components/form/PhoneInput/externalPhoneLogic.js +32 -0
  213. package/dist/esm/components/form/PhoneInput/hooks/useValidateInitialValue.js +33 -0
  214. package/dist/esm/components/form/PhoneInput/index.js +236 -0
  215. package/dist/esm/components/form/PhoneInput/index.stories.js +107 -0
  216. package/dist/esm/components/form/PhoneInput/phoneInputLogic.js +153 -0
  217. package/dist/esm/components/form/PhoneInput/styles.js +13 -0
  218. package/dist/esm/components/form/PhoneInput/types.js +3 -0
  219. package/dist/esm/components/form/PositiveIntegerInput/hooks/useFilters.js +15 -0
  220. package/dist/esm/components/form/PositiveIntegerInput/hooks/useIncrement.js +16 -0
  221. package/dist/esm/components/form/PositiveIntegerInput/hooks/useIncrementDisabledFlags.js +18 -0
  222. package/dist/esm/components/form/PositiveIntegerInput/hooks/useNormalizers.js +16 -0
  223. package/dist/esm/components/form/PositiveIntegerInput/index.js +128 -0
  224. package/dist/esm/components/form/PositiveIntegerInput/index.stories.js +40 -0
  225. package/dist/esm/components/form/PositiveIntegerInput/styles.js +16 -0
  226. package/dist/esm/components/form/PureInput/index.js +62 -0
  227. package/dist/esm/components/form/PureInput/index.stories.js +18 -0
  228. package/dist/esm/components/form/PureInput/palette.js +12 -0
  229. package/dist/esm/components/form/PureInput/styles.js +44 -0
  230. package/dist/esm/components/form/ResetButton/CrossIcon/index.js +16 -0
  231. package/dist/esm/components/form/ResetButton/CrossIcon/index.stories.js +8 -0
  232. package/dist/esm/components/form/ResetButton/index.js +13 -0
  233. package/dist/esm/components/form/ResetButton/index.stories.js +14 -0
  234. package/dist/esm/components/form/ResetButton/palette.js +5 -0
  235. package/dist/esm/components/form/ResetButton/styles.js +8 -0
  236. package/dist/esm/components/form/SearchInput/components/SearchIcon/index.js +17 -0
  237. package/dist/esm/components/form/SearchInput/components/SearchIcon/index.stories.js +8 -0
  238. package/dist/esm/components/form/SearchInput/index.js +93 -0
  239. package/dist/esm/components/form/SearchInput/index.stories.js +33 -0
  240. package/dist/esm/components/form/SearchInput/palette.js +5 -0
  241. package/dist/esm/components/form/SearchInput/styles.js +14 -0
  242. package/dist/esm/components/form/Select/components/Input/index.js +72 -0
  243. package/dist/esm/components/form/Select/components/Input/index.stories.js +21 -0
  244. package/dist/esm/components/form/Select/components/Input/styles.js +12 -0
  245. package/dist/esm/components/form/Select/components/Loader/index.js +16 -0
  246. package/dist/esm/components/form/Select/components/Loader/styles.js +13 -0
  247. package/dist/esm/components/form/Select/hooks/useOptionGroups.js +27 -0
  248. package/dist/esm/components/form/Select/index.js +243 -0
  249. package/dist/esm/components/form/Select/index.stories.js +241 -0
  250. package/dist/esm/components/form/Select/palette.js +7 -0
  251. package/dist/esm/components/form/Select/styles.js +60 -0
  252. package/dist/esm/components/form/TagsInput/assets/CrossIcon.js +23 -0
  253. package/dist/esm/components/form/TagsInput/index.js +161 -0
  254. package/dist/esm/components/form/TagsInput/index.stories.js +34 -0
  255. package/dist/esm/components/form/TagsInput/palette.js +6 -0
  256. package/dist/esm/components/form/TagsInput/styles.js +37 -0
  257. package/dist/esm/components/form/TextInput/index.js +113 -0
  258. package/dist/esm/components/form/TextInput/index.stories.js +42 -0
  259. package/dist/esm/components/form/TextInput/styles.js +9 -0
  260. package/dist/esm/components/form/Toggle/index.js +40 -0
  261. package/dist/esm/components/form/Toggle/index.stories.js +33 -0
  262. package/dist/esm/components/form/Toggle/palette.js +11 -0
  263. package/dist/esm/components/form/Toggle/styles.js +74 -0
  264. package/dist/esm/components/form/common/DrawerHeader/components/Cross24Icon/index.js +16 -0
  265. package/dist/esm/components/form/common/DrawerHeader/components/Cross24Icon/index.stories.js +8 -0
  266. package/dist/esm/components/form/common/DrawerHeader/index.js +28 -0
  267. package/dist/esm/components/form/common/DrawerHeader/index.stories.js +18 -0
  268. package/dist/esm/components/form/common/DrawerHeader/palette.js +8 -0
  269. package/dist/esm/components/form/common/DrawerHeader/styles.js +27 -0
  270. package/dist/esm/components/form/constants.js +40 -0
  271. package/dist/esm/hooks/useInputFocus/index.js +31 -0
  272. package/dist/esm/hooks/useInputFocus/index.stories.js +24 -0
  273. package/dist/esm/hooks/useLoadingSubmit/index.js +31 -0
  274. package/dist/esm/hooks/useLoadingSubmit/index.stories.js +28 -0
  275. package/dist/esm/hooks/useMedia/index.js +44 -0
  276. package/dist/esm/hooks/useMedia/index.stories.js +18 -0
  277. package/dist/esm/hooks/useModal/index.js +26 -0
  278. package/dist/esm/hooks/useModal/index.stories.js +35 -0
  279. package/dist/esm/hooks/useOutsideClick/index.js +16 -0
  280. package/dist/esm/hooks/useOutsideClick/index.stories.js +22 -0
  281. package/dist/esm/hooks/useUnupdatableHandler/index.js +11 -0
  282. package/dist/esm/hooks/useUnupdatableHandler/index.stories.js +42 -0
  283. package/dist/esm/index.js +53 -0
  284. package/dist/esm/palette/colors.stories.js +36 -0
  285. package/dist/esm/palette/constants.js +12 -0
  286. package/dist/esm/palette/context.js +64 -0
  287. package/dist/esm/palette/index.js +3 -0
  288. package/dist/esm/palette/index.stories.js +78 -0
  289. package/dist/esm/palette/provider.js +87 -0
  290. package/dist/esm/palette/types.js +1 -0
  291. package/dist/esm/palette/useComponentPalette.js +16 -0
  292. package/dist/esm/palette/usePalette.js +5 -0
  293. package/dist/esm/utils/hexToRgba.js +15 -0
  294. package/dist/esm/utils/transformColorByHsl.js +12 -0
  295. package/dist/esm/validate/index.js +175 -0
  296. package/dist/esm/validate/types.js +1 -0
  297. package/dist/esm/validate/utils/vatNumberValidateHelpers.js +129 -0
  298. package/dist/esm/validate/utils/websiteValidate.test.js +45 -0
  299. package/dist/hooks/useMedia/index.js +34 -13
  300. package/dist/index.js +1 -13
  301. package/dist/utils/hexToRgba.d.ts +1 -0
  302. package/dist/utils/hexToRgba.js +21 -0
  303. package/package.json +6 -8
@@ -0,0 +1,25 @@
1
+ import { css } from 'styled-components';
2
+ import { breakpoints } from '../../../breakpoints';
3
+ export var typography = {
4
+ headline1: css(["font-size:34px;font-weight:400;line-height:42px;@media ", "{font-size:30px;font-weight:400;line-height:48px;}"], breakpoints.sm),
5
+ headline2: css(["font-size:24px;font-weight:400;line-height:32px;@media ", "{font-size:20px;font-weight:400;line-height:24px;}"], breakpoints.sm),
6
+ headline3: css(["font-size:20px;font-weight:400;line-height:26px;@media ", "{font-size:18px;font-weight:400;line-height:22px;}"], breakpoints.sm),
7
+ headline4: css(["font-size:18px;font-weight:400;line-height:22px;@media ", "{font-size:16px;font-weight:400;line-height:24px;}"], breakpoints.sm),
8
+ headline5: css(["font-size:16px;font-weight:400;line-height:24px;@media ", "{font-size:14px;font-weight:400;line-height:20px;}"], breakpoints.sm),
9
+ headline6: css(["font-size:16px;font-weight:500;line-height:20px;"]),
10
+ headerText: css(["font-size:15px;font-weight:500;line-height:20px;@media ", "{font-size:18px;font-weight:500;line-height:26px;}"], breakpoints.sm),
11
+ buttonL: css(["font-size:16px;font-weight:500;line-height:24px;"]),
12
+ bodyL: css(["font-size:16px;font-weight:400;line-height:24px;@media ", "{font-size:14px;font-weight:400;line-height:24px;}"], breakpoints.sm),
13
+ bodyLUnderlined: css(["font-size:16px;font-weight:400;line-height:24px;text-decoration:underline;@media ", "{font-size:14px;font-weight:400;line-height:20px;text-decoration:underline;}"], breakpoints.sm),
14
+ buttonM: css(["font-size:14px;font-weight:500;line-height:20px;"]),
15
+ bodyMRegular: css(["font-size:14px;font-weight:400;line-height:20px;"]),
16
+ bodyMBold: css(["font-size:14px;font-weight:700;line-height:20px;"]),
17
+ bodyMUnderlined: css(["font-size:14px;font-weight:400;line-height:20px;text-decoration:underline;"]),
18
+ captionRegular: css(["font-size:12px;font-weight:400;line-height:18px;"]),
19
+ labelsHintsRegular: css(["font-size:12px;font-weight:400;line-height:16px;"]),
20
+ labelsHintsBold: css(["font-size:12px;font-weight:700;line-height:16px;"]),
21
+ captionSRegular: css(["font-size:10px;font-weight:400;line-height:16px;"]),
22
+ captionUnderlined: css(["font-size:12px;font-weight:400;line-height:18px;text-decoration:underline;"]),
23
+ smallMedium: css(["font-size:12px;font-weight:500;line-height:16px;"]),
24
+ labelsAndHints: css(["font-size:12px;font-weight:400;line-height:16px;"])
25
+ };
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ export var Icon = function Icon(_ref) {
3
+ var className = _ref.className;
4
+ return /*#__PURE__*/React.createElement("svg", {
5
+ xmlns: "http://www.w3.org/2000/svg",
6
+ width: "20",
7
+ height: "20",
8
+ viewBox: "0 0 20 20",
9
+ fill: "none",
10
+ className: className
11
+ }, /*#__PURE__*/React.createElement("path", {
12
+ fill: "currentColor",
13
+ d: "M10 16c3.312 0 6-2.688 6-6s-2.688-6-6-6-6 2.688-6 6 2.688 6 6 6Zm-.6-9h1.2v1.2H9.4V7Zm0 2.4h1.2V13H9.4V9.4Z"
14
+ }));
15
+ };
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import * as S from './styles';
3
+ import { useComponentPalette } from '../../../palette';
4
+ export var WarningIcon = function WarningIcon(_ref) {
5
+ var _ref$size = _ref.size,
6
+ size = _ref$size === void 0 ? 20 : _ref$size,
7
+ palette = _ref.palette;
8
+ var mergedPalette = useComponentPalette('warningIcon', palette);
9
+ return /*#__PURE__*/React.createElement(S.StyledIcon, {
10
+ $palette: mergedPalette,
11
+ $size: size
12
+ });
13
+ };
@@ -0,0 +1,8 @@
1
+ import { WarningIcon } from '.';
2
+ var meta = {
3
+ title: 'common/WarningIcon',
4
+ component: WarningIcon,
5
+ tags: ['autodocs']
6
+ };
7
+ export default meta;
8
+ export var Default = {};
@@ -0,0 +1,5 @@
1
+ export var generateWarningIconPalette = function generateWarningIconPalette(abstractPalette) {
2
+ return {
3
+ icon: abstractPalette.error
4
+ };
5
+ };
@@ -0,0 +1,15 @@
1
+ import styled from 'styled-components';
2
+ import { Icon } from './components/Icon';
3
+ export var StyledIcon = styled(Icon).withConfig({
4
+ displayName: "styles__StyledIcon",
5
+ componentId: "sc-1xelbs1-0"
6
+ })(["cursor:pointer;color:", ";width:", ";height:", ";"], function (_ref) {
7
+ var $palette = _ref.$palette;
8
+ return $palette.icon;
9
+ }, function (_ref2) {
10
+ var $size = _ref2.$size;
11
+ return "".concat($size, "px");
12
+ }, function (_ref3) {
13
+ var $size = _ref3.$size;
14
+ return "".concat($size, "px");
15
+ });
@@ -0,0 +1,39 @@
1
+ export var selectOptions = [{
2
+ label: 'Option 1',
3
+ value: 'option-1'
4
+ }, {
5
+ label: 'Option 2',
6
+ value: 'option-2'
7
+ }, {
8
+ label: 'Option 3',
9
+ value: 'option-3',
10
+ isDisabled: true
11
+ }, {
12
+ label: 'Option 4',
13
+ value: 'option-4',
14
+ isDisabled: true
15
+ }, {
16
+ label: 'Option 5',
17
+ value: 'option-5'
18
+ }, {
19
+ label: 'Option 6',
20
+ value: 'option-6'
21
+ }, {
22
+ label: 'Option 7',
23
+ value: 'option-7'
24
+ }, {
25
+ label: 'Option 8',
26
+ value: 'option-8'
27
+ }, {
28
+ label: 'Option 9',
29
+ value: 'option-9'
30
+ }, {
31
+ label: 'Option 10',
32
+ value: 'option-10'
33
+ }, {
34
+ label: 'Option 11',
35
+ value: 'option-11'
36
+ }, {
37
+ label: 'Option 12',
38
+ value: 'option-12'
39
+ }];
@@ -0,0 +1,264 @@
1
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
3
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
5
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
6
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
7
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
8
+ import React, { forwardRef, useCallback, useEffect, useId, useMemo, useRef, useState } from 'react';
9
+ import * as S from './styles';
10
+ import { AutocompleteDefaultOption } from '../AutocompleteDefaultOption';
11
+ import { Skeleton } from '../../../../common/Skeleton';
12
+ import { useMobile } from '../../../../../hooks/useMedia';
13
+ import { useInputFocus } from '../../../../../hooks/useInputFocus';
14
+ import { useOutsideClick } from '../../../../../hooks/useOutsideClick';
15
+ import { InputLabel } from '../../../InputLabel';
16
+ import { PureInput } from '../../../PureInput';
17
+ import { Dropdown } from '../../../../common/Dropdown';
18
+ import { Scrollbar } from '../../../../common/Scrollbar';
19
+ import { MODERN_STYLE_SIZE_PARAMS_MAP, SIZE_PARAMS_MAP } from '../../../constants';
20
+ import { useComponentPalette } from '../../../../../palette';
21
+ import { ModernPlaceholder } from '../../../ModernPlaceholder';
22
+ var DefaultSkeletonItem = function DefaultSkeletonItem() {
23
+ return /*#__PURE__*/React.createElement(S.DefaultSkeletonWrapper, null, /*#__PURE__*/React.createElement(Skeleton, {
24
+ height: "20px"
25
+ }));
26
+ };
27
+ var MAX_LIST_HEIGHT = 294;
28
+ export var Autocomplete = /*#__PURE__*/forwardRef(function (_ref, ref) {
29
+ var options = _ref.options,
30
+ value = _ref.value,
31
+ onChange = _ref.onChange,
32
+ name = _ref.name,
33
+ onBlur = _ref.onBlur,
34
+ onFocus = _ref.onFocus,
35
+ label = _ref.label,
36
+ placeholder = _ref.placeholder,
37
+ disabled = _ref.disabled,
38
+ renderOption = _ref.renderOption,
39
+ children = _ref.children,
40
+ inputPaddingLeft = _ref.inputPaddingLeft,
41
+ _ref$listHeight = _ref.listHeight,
42
+ listHeight = _ref$listHeight === void 0 ? MAX_LIST_HEIGHT : _ref$listHeight,
43
+ hasError = _ref.hasError,
44
+ isLoading = _ref.isLoading,
45
+ optionsLoader = _ref.optionsLoader,
46
+ inputMaxLength = _ref.inputMaxLength,
47
+ _ref$isInputOnlyNumbe = _ref.isInputOnlyNumbers,
48
+ isInputOnlyNumbers = _ref$isInputOnlyNumbe === void 0 ? false : _ref$isInputOnlyNumbe,
49
+ _ref$size = _ref.size,
50
+ size = _ref$size === void 0 ? 'M' : _ref$size,
51
+ autoFocus = _ref.autoFocus,
52
+ _ref$required = _ref.required,
53
+ required = _ref$required === void 0 ? false : _ref$required,
54
+ readOnly = _ref.readOnly,
55
+ _ref$usePadding = _ref.usePadding,
56
+ usePadding = _ref$usePadding === void 0 ? false : _ref$usePadding,
57
+ dropdownWidth = _ref.dropdownWidth,
58
+ _ref$useModernStyles = _ref.useModernStyles,
59
+ useModernStyles = _ref$useModernStyles === void 0 ? false : _ref$useModernStyles,
60
+ _ref$isDropdownDisabl = _ref.isDropdownDisabled,
61
+ isDropdownDisabled = _ref$isDropdownDisabl === void 0 ? false : _ref$isDropdownDisabl;
62
+ var isMobile = useMobile();
63
+ var _useState = useState(false),
64
+ _useState2 = _slicedToArray(_useState, 2),
65
+ isOpen = _useState2[0],
66
+ setIsOpen = _useState2[1];
67
+ // Активная (подсвеченная клавиатурой) опция для combobox-навигации ↑/↓/Enter/Esc.
68
+ var _useState3 = useState(-1),
69
+ _useState4 = _slicedToArray(_useState3, 2),
70
+ activeIndex = _useState4[0],
71
+ setActiveIndex = _useState4[1];
72
+ var baseId = useId();
73
+ var listboxId = "".concat(baseId, "-listbox");
74
+ var activeOptionRef = useRef(null);
75
+ var palette = useComponentPalette('autocompleteDefaultOption');
76
+ var _useInputFocus = useInputFocus({
77
+ onFocus: onFocus,
78
+ onBlur: onBlur
79
+ }),
80
+ inFocus = _useInputFocus.inFocus,
81
+ handleFocus = _useInputFocus.handleFocus,
82
+ handleBlur = _useInputFocus.handleBlur;
83
+ var handleOpen = useCallback(function () {
84
+ return setIsOpen(true);
85
+ }, []);
86
+ var handleClose = useCallback(function () {
87
+ setIsOpen(false);
88
+ setActiveIndex(-1);
89
+ }, []);
90
+ var wrapperRef = useOutsideClick(handleClose);
91
+ var handleChange = useCallback(function (event) {
92
+ // Ввод нового запроса сбрасывает клавиатурную подсветку (результаты сменятся).
93
+ setActiveIndex(-1);
94
+ onChange(event.target.value);
95
+ }, [onChange]);
96
+ var handleSelect = useCallback(function (event) {
97
+ var optionIndex = JSON.parse(event.currentTarget.dataset.index);
98
+ var option = options[optionIndex];
99
+ onChange(option.value, option);
100
+ handleClose();
101
+ }, [handleClose, onChange, options]);
102
+ var handleInputFocus = useCallback(function (event) {
103
+ handleOpen();
104
+ handleFocus(event);
105
+ }, [handleOpen, handleFocus]);
106
+ var inputLabel = useMemo(function () {
107
+ if (useModernStyles) {
108
+ if (value || isOpen) {
109
+ return label;
110
+ } else {
111
+ return undefined;
112
+ }
113
+ } else {
114
+ return label;
115
+ }
116
+ }, [isOpen, label, value, useModernStyles]);
117
+ var paddingOptions = useMemo(function () {
118
+ if ((value || isOpen) && useModernStyles && inputLabel) {
119
+ return MODERN_STYLE_SIZE_PARAMS_MAP[size];
120
+ } else {
121
+ return SIZE_PARAMS_MAP[size];
122
+ }
123
+ }, [value, isOpen, useModernStyles, size, inputLabel]);
124
+ var inputPlaceholder = useMemo(function () {
125
+ if (useModernStyles) {
126
+ return undefined;
127
+ } else {
128
+ return placeholder;
129
+ }
130
+ }, [placeholder, useModernStyles]);
131
+ var isModernPlaceholderVisible = useMemo(function () {
132
+ return !isOpen && !value;
133
+ }, [isOpen, value]);
134
+ var isDropdownOpen = !isDropdownDisabled && isOpen && (!!options.length || !!isLoading);
135
+ // Скелетоны показываем ТОЛЬКО когда опций ещё нет (первая загрузка). При повторных запросах
136
+ // (ввод символов) держим прежние опции — иначе лоадер мерцает на каждое изменение.
137
+ var showSkeletons = !!isLoading && options.length === 0;
138
+ var getOptionId = function getOptionId(index) {
139
+ return "".concat(baseId, "-option-").concat(index);
140
+ };
141
+
142
+ // Активная опция всегда видна в прокручиваемом списке.
143
+ useEffect(function () {
144
+ var _activeOptionRef$curr;
145
+ (_activeOptionRef$curr = activeOptionRef.current) === null || _activeOptionRef$curr === void 0 || _activeOptionRef$curr.scrollIntoView({
146
+ block: 'nearest'
147
+ });
148
+ }, [activeIndex]);
149
+ var handleKeyDown = function handleKeyDown(event) {
150
+ if (disabled || readOnly) return;
151
+ var count = options.length;
152
+ switch (event.key) {
153
+ case 'ArrowDown':
154
+ event.preventDefault();
155
+ if (!isOpen) {
156
+ handleOpen();
157
+ } else if (count) {
158
+ setActiveIndex(function (prev) {
159
+ return (prev + 1) % count;
160
+ });
161
+ }
162
+ break;
163
+ case 'ArrowUp':
164
+ event.preventDefault();
165
+ if (count) setActiveIndex(function (prev) {
166
+ return prev <= 0 ? count - 1 : prev - 1;
167
+ });
168
+ break;
169
+ case 'Enter':
170
+ if (isDropdownOpen && activeIndex >= 0 && activeIndex < count && !options[activeIndex].isDisabled) {
171
+ event.preventDefault();
172
+ onChange(options[activeIndex].value, options[activeIndex]);
173
+ handleClose();
174
+ }
175
+ break;
176
+ case 'Escape':
177
+ if (isDropdownOpen) {
178
+ event.preventDefault();
179
+ handleClose();
180
+ }
181
+ break;
182
+ default:
183
+ break;
184
+ }
185
+ };
186
+ return /*#__PURE__*/React.createElement(S.Wrapper, {
187
+ ref: wrapperRef
188
+ }, /*#__PURE__*/React.createElement(InputLabel, {
189
+ inFocus: inFocus,
190
+ label: inputLabel,
191
+ disabled: disabled,
192
+ required: required,
193
+ useModernStyles: useModernStyles,
194
+ size: size,
195
+ left: useModernStyles ? inputPaddingLeft : undefined
196
+ }, /*#__PURE__*/React.createElement(S.InputLabelContent, null, children ? /*#__PURE__*/React.createElement(S.ChildrenWrapper, null, children) : null, useModernStyles && placeholder && /*#__PURE__*/React.createElement(ModernPlaceholder, {
197
+ visible: isModernPlaceholderVisible,
198
+ paddingLeft: inputPaddingLeft !== null && inputPaddingLeft !== void 0 ? inputPaddingLeft : 20,
199
+ paddingTop: SIZE_PARAMS_MAP[size].paddingTop,
200
+ size: size,
201
+ required: required
202
+ }, placeholder), /*#__PURE__*/React.createElement(PureInput, _extends({
203
+ ref: ref,
204
+ hasError: hasError,
205
+ inFocus: inFocus,
206
+ value: value,
207
+ onChange: handleChange,
208
+ onFocus: handleInputFocus,
209
+ onBlur: handleBlur,
210
+ name: name,
211
+ placeholder: inputPlaceholder,
212
+ disabled: disabled,
213
+ paddingLeft: inputPaddingLeft,
214
+ maxLength: inputMaxLength,
215
+ isOnlyNumbers: isInputOnlyNumbers,
216
+ autoFocus: autoFocus,
217
+ readOnly: readOnly,
218
+ useModernStyles: useModernStyles,
219
+ onKeyDown: handleKeyDown,
220
+ role: "combobox",
221
+ "aria-expanded": isDropdownOpen,
222
+ "aria-controls": isDropdownOpen ? listboxId : undefined,
223
+ "aria-autocomplete": "list",
224
+ "aria-activedescendant": isDropdownOpen && activeIndex >= 0 ? getOptionId(activeIndex) : undefined
225
+ }, paddingOptions)))), /*#__PURE__*/React.createElement(Dropdown, {
226
+ isOpen: isOpen && (!!options.length || !!isLoading),
227
+ isAutoPosition: true,
228
+ width: dropdownWidth || '100%',
229
+ minWidth: isMobile ? '100%' : '340px',
230
+ usePadding: usePadding
231
+ }, showSkeletons ? /*#__PURE__*/React.createElement(Scrollbar, {
232
+ maxHeight: listHeight
233
+ }, optionsLoader || /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(DefaultSkeletonItem, null), /*#__PURE__*/React.createElement(DefaultSkeletonItem, null), /*#__PURE__*/React.createElement(DefaultSkeletonItem, null))) : /*#__PURE__*/React.createElement(Scrollbar, {
234
+ maxHeight: listHeight
235
+ }, /*#__PURE__*/React.createElement("div", {
236
+ role: "listbox",
237
+ id: listboxId
238
+ }, options.map(function (option, index) {
239
+ return /*#__PURE__*/React.createElement(S.OptionWrapperWithPadding, {
240
+ $usePadding: usePadding,
241
+ key: "".concat(option.value).concat(index)
242
+ }, /*#__PURE__*/React.createElement(S.OptionContainer, {
243
+ $hoverBg: palette.hoverBg,
244
+ $usePadding: usePadding,
245
+ $active: index === activeIndex
246
+ }, /*#__PURE__*/React.createElement(S.OptionWrapper, {
247
+ ref: index === activeIndex ? activeOptionRef : undefined,
248
+ id: getOptionId(index),
249
+ role: "option",
250
+ "aria-selected": index === activeIndex,
251
+ tabIndex: -1,
252
+ type: "button",
253
+ disabled: option.isDisabled,
254
+ onClick: handleSelect,
255
+ onMouseEnter: function onMouseEnter() {
256
+ return setActiveIndex(index);
257
+ },
258
+ "data-index": JSON.stringify(index)
259
+ }, renderOption ? renderOption(option) : /*#__PURE__*/React.createElement(AutocompleteDefaultOption, {
260
+ usePadding: usePadding
261
+ }, option.value))));
262
+ })))));
263
+ });
264
+ Autocomplete.displayName = 'Autocomplete';
@@ -0,0 +1,55 @@
1
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
3
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
5
+ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
6
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
7
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
8
+ import React, { useCallback, useMemo, useState } from 'react';
9
+ import { Autocomplete } from '.';
10
+ import { selectOptions } from '../../../../common/_helpers/selectOptions';
11
+ var meta = {
12
+ title: 'form/Autocomplete/components/Autocomplete',
13
+ component: Autocomplete,
14
+ tags: ['autodocs']
15
+ };
16
+ export default meta;
17
+ var Component = function Component(props) {
18
+ var isCustomOptionRender = props.isCustomOptionRender;
19
+ var _useState = useState(''),
20
+ _useState2 = _slicedToArray(_useState, 2),
21
+ value = _useState2[0],
22
+ setValue = _useState2[1];
23
+ var filtredOptions = useMemo(function () {
24
+ return selectOptions.filter(function (option) {
25
+ return option.value.includes(value);
26
+ });
27
+ }, [value]);
28
+ var customRender = useCallback(function (option) {
29
+ return /*#__PURE__*/React.createElement("div", {
30
+ style: {
31
+ textAlign: 'left',
32
+ background: '#cfc',
33
+ padding: 5
34
+ }
35
+ }, "custom ", option.value);
36
+ }, []);
37
+ return /*#__PURE__*/React.createElement(Autocomplete, _extends({}, props, {
38
+ value: value,
39
+ onChange: setValue,
40
+ options: filtredOptions,
41
+ renderOption: isCustomOptionRender ? customRender : undefined
42
+ }));
43
+ };
44
+ export var Default = {
45
+ args: {
46
+ label: 'Label',
47
+ placeholder: 'Placeholder',
48
+ disabled: false,
49
+ isCustomOptionRender: false,
50
+ children: 'children',
51
+ inputPaddingLeft: 60,
52
+ readOnly: false
53
+ },
54
+ render: Component
55
+ };
@@ -0,0 +1,42 @@
1
+ import styled from 'styled-components';
2
+ export var Wrapper = styled.div.withConfig({
3
+ displayName: "styles__Wrapper",
4
+ componentId: "sc-1fp3ia8-0"
5
+ })(["position:relative;box-sizing:border-box;"]);
6
+ export var OptionContainer = styled.div.withConfig({
7
+ displayName: "styles__OptionContainer",
8
+ componentId: "sc-1fp3ia8-1"
9
+ })(["width:100%;border-radius:", ";background-color:", ";&:hover{background-color:", ";}"], function (_ref) {
10
+ var $usePadding = _ref.$usePadding;
11
+ return $usePadding ? '12px' : 'none';
12
+ }, function (_ref2) {
13
+ var $active = _ref2.$active,
14
+ $hoverBg = _ref2.$hoverBg;
15
+ return $active ? $hoverBg : 'transparent';
16
+ }, function (_ref3) {
17
+ var $hoverBg = _ref3.$hoverBg;
18
+ return $hoverBg;
19
+ });
20
+ export var OptionWrapperWithPadding = styled.div.withConfig({
21
+ displayName: "styles__OptionWrapperWithPadding",
22
+ componentId: "sc-1fp3ia8-2"
23
+ })(["padding:", ";"], function (_ref4) {
24
+ var $usePadding = _ref4.$usePadding;
25
+ return $usePadding ? '0 8px' : 'none';
26
+ });
27
+ export var OptionWrapper = styled.button.withConfig({
28
+ displayName: "styles__OptionWrapper",
29
+ componentId: "sc-1fp3ia8-3"
30
+ })(["width:100%;background:transparent;border:none;cursor:pointer;outline:none;color:inherit;padding:0;&:disabled{opacity:0.7;cursor:not-allowed;}"]);
31
+ export var ChildrenWrapper = styled.div.withConfig({
32
+ displayName: "styles__ChildrenWrapper",
33
+ componentId: "sc-1fp3ia8-4"
34
+ })(["position:absolute;height:100%;width:100%;pointer-events:none;display:flex;align-items:center;"]);
35
+ export var InputLabelContent = styled.div.withConfig({
36
+ displayName: "styles__InputLabelContent",
37
+ componentId: "sc-1fp3ia8-5"
38
+ })(["position:relative;"]);
39
+ export var DefaultSkeletonWrapper = styled.div.withConfig({
40
+ displayName: "styles__DefaultSkeletonWrapper",
41
+ componentId: "sc-1fp3ia8-6"
42
+ })(["padding:6px 12px;"]);
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+ import styled from 'styled-components';
3
+ import { typography } from '../../../../common/Typography/typography';
4
+ import { Typography } from '../../../../common/Typography';
5
+ export var AutocompleteDefaultOption = function AutocompleteDefaultOption(_ref) {
6
+ var children = _ref.children,
7
+ _ref$usePadding = _ref.usePadding,
8
+ usePadding = _ref$usePadding === void 0 ? false : _ref$usePadding;
9
+ return /*#__PURE__*/React.createElement(Wrapper, {
10
+ $usePadding: usePadding,
11
+ variant: 'bodyMRegular',
12
+ element: 'div'
13
+ }, children);
14
+ };
15
+ var Wrapper = styled(Typography).withConfig({
16
+ displayName: "AutocompleteDefaultOption__Wrapper",
17
+ componentId: "sc-1a61mvs-0"
18
+ })(["overflow:hidden;display:flex;width:100%;text-align:left;flex-direction:column;padding:", ";transition:all 0.2s ease-in-out;", " box-sizing:border-box;"], function (_ref2) {
19
+ var $usePadding = _ref2.$usePadding;
20
+ return $usePadding ? '12px' : '12px 20px';
21
+ }, typography.bodyMRegular);
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ import { AutocompleteDefaultOption } from '.';
3
+ import { StoryBorderWrapper } from '../../../../_helpers/StoryBorderWrapper';
4
+ var meta = {
5
+ title: 'form/Autocomplete/components/AutocompleteDefaultOption',
6
+ component: AutocompleteDefaultOption,
7
+ tags: ['autodocs']
8
+ };
9
+ export default meta;
10
+ export var Default = {
11
+ args: {
12
+ children: /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", null, "children"), /*#__PURE__*/React.createElement("div", null, "children"))
13
+ },
14
+ render: function render(props) {
15
+ return /*#__PURE__*/React.createElement(StoryBorderWrapper, null, /*#__PURE__*/React.createElement(AutocompleteDefaultOption, props));
16
+ }
17
+ };
@@ -0,0 +1,6 @@
1
+ import hexToRgba from '../../../../../utils/hexToRgba';
2
+ export var generateAutocompleteDefaultOptionPalette = function generateAutocompleteDefaultOptionPalette(abstractPalette) {
3
+ return {
4
+ hoverBg: hexToRgba(abstractPalette.neutralUsual, 0.5)
5
+ };
6
+ };
@@ -0,0 +1,40 @@
1
+ import React from 'react';
2
+ import * as S from './styles';
3
+ import { AutocompleteDefaultOption } from '../AutocompleteDefaultOption';
4
+ import { useComponentPalette } from '../../../../../palette';
5
+ export var OrganizationAutocompleteItem = function OrganizationAutocompleteItem(_ref) {
6
+ var name = _ref.name,
7
+ registrationAddress = _ref.registrationAddress,
8
+ vatNumber = _ref.vatNumber,
9
+ taxRegistrationReasonCode = _ref.taxRegistrationReasonCode,
10
+ tags = _ref.tags,
11
+ vatNumberLabel = _ref.vatNumberLabel,
12
+ taxRegistrationReasonCodeLabel = _ref.taxRegistrationReasonCodeLabel;
13
+ var palette = useComponentPalette('organizationAutocompleteItem');
14
+ return /*#__PURE__*/React.createElement(S.OptionContainer, {
15
+ $hoverBg: palette.hoverBg
16
+ }, /*#__PURE__*/React.createElement(AutocompleteDefaultOption, null, /*#__PURE__*/React.createElement(S.OrganizationWrapper, null, /*#__PURE__*/React.createElement(S.OrganizationName, {
17
+ $color: palette.title,
18
+ variant: "bodyMRegular"
19
+ }, name), /*#__PURE__*/React.createElement(S.OrganizationDescription, {
20
+ $color: palette.description,
21
+ variant: "captionRegular"
22
+ }, registrationAddress), /*#__PURE__*/React.createElement(S.OrganizationDescription, {
23
+ $color: palette.description,
24
+ variant: "captionRegular"
25
+ }, /*#__PURE__*/React.createElement(S.OrganizationVatNumber, null, /*#__PURE__*/React.createElement(S.OrganizationLabel, {
26
+ $color: palette.label,
27
+ variant: "captionRegular"
28
+ }, vatNumberLabel), ' ', vatNumber), taxRegistrationReasonCode && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(S.OrganizationLabel, {
29
+ $color: palette.label,
30
+ variant: "captionRegular"
31
+ }, taxRegistrationReasonCodeLabel), ' ', taxRegistrationReasonCode)), tags && /*#__PURE__*/React.createElement(S.OrganizationProperties, null, tags.map(function (feature, index) {
32
+ return (
33
+ /*#__PURE__*/
34
+ // eslint-disable-next-line react/no-array-index-key
35
+ React.createElement(S.Feature, {
36
+ key: index
37
+ }, " ", feature, " ")
38
+ );
39
+ })))));
40
+ };
@@ -0,0 +1,20 @@
1
+ import React from 'react';
2
+ import { OrganizationAutocompleteItem } from '.';
3
+ var meta = {
4
+ title: 'form/Autocomplete/components/OrganizationAutocompleteItem',
5
+ component: OrganizationAutocompleteItem,
6
+ tags: ['autodocs']
7
+ };
8
+ export default meta;
9
+ export var Default = {
10
+ args: {
11
+ name: 'ООО «Название организации»',
12
+ registrationAddress: 'Санкт-Петербург дом 30',
13
+ vatNumber: '2323232323',
14
+ vatNumberLabel: 'ИНН',
15
+ taxRegistrationReasonCodeLabel: 'КПП',
16
+ taxRegistrationReasonCode: '111111111',
17
+ // eslint-disable-next-line react/jsx-key
18
+ tags: [/*#__PURE__*/React.createElement("div", null, "Tag1"), /*#__PURE__*/React.createElement("div", null, "Tag2")]
19
+ }
20
+ };
@@ -0,0 +1,9 @@
1
+ import hexToRgba from '../../../../../utils/hexToRgba';
2
+ export var generateOrganizationAutocompleteItemPalette = function generateOrganizationAutocompleteItemPalette(abstractPalette) {
3
+ return {
4
+ title: abstractPalette.primary,
5
+ description: hexToRgba(abstractPalette.primary, 0.5),
6
+ label: hexToRgba(abstractPalette.primary, 0.3),
7
+ hoverBg: hexToRgba(abstractPalette.neutralUsual, 0.5)
8
+ };
9
+ };