@true-engineering/true-react-common-ui-kit 2.1.0 → 2.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (264) hide show
  1. package/LICENSE +201 -201
  2. package/dist/components/Button/Button.d.ts +1 -1
  3. package/dist/components/DatePicker/DatePicker.d.ts +1 -1
  4. package/dist/components/FiltersPane/FilterMultiSelect/FilterMultiSelect.d.ts +1 -1
  5. package/dist/components/FiltersPane/FilterSelect/FilterSelect.d.ts +1 -1
  6. package/dist/components/FiltersPane/FilterWithDates/FilterWithDates.d.ts +1 -1
  7. package/dist/components/FiltersPane/FilterWithPeriod/FilterWithPeriod.d.ts +1 -1
  8. package/dist/components/FiltersPane/FilterWrapper/FilterWrapper.d.ts +1 -1
  9. package/dist/components/FiltersPane/FiltersPane.d.ts +2 -2
  10. package/dist/components/FiltersPane/FiltersPaneSearch/FiltersPaneSearch.d.ts +1 -1
  11. package/dist/components/FiltersPane/types.d.ts +1 -1
  12. package/dist/components/Flag/augment.d.ts +1 -1
  13. package/dist/components/FlexibleTable/FlexibleTable.d.ts +1 -1
  14. package/dist/components/FlexibleTable/TableRow.d.ts +1 -1
  15. package/dist/components/Icon/Icon.d.ts +2 -2
  16. package/dist/components/Icon/complexIcons/augment.d.ts +1 -1
  17. package/dist/components/Input/Input.d.ts +1 -1
  18. package/dist/components/MultiSelect/MultiSelectInput/MultiSelectInput.d.ts +1 -1
  19. package/dist/components/MultiSelectList/MultiSelectList.d.ts +1 -1
  20. package/dist/components/PhoneInput/PhoneInput.d.ts +1 -1
  21. package/dist/components/Select/Select.d.ts +3 -3
  22. package/dist/components/TextWithTooltip/TextWithTooltip.d.ts +1 -1
  23. package/dist/helpers/snippets.d.ts +1 -1
  24. package/dist/helpers/utils.d.ts +1 -1
  25. package/dist/true-react-common-ui-kit.js +3875 -3875
  26. package/dist/true-react-common-ui-kit.js.map +1 -1
  27. package/dist/true-react-common-ui-kit.umd.cjs +3875 -3875
  28. package/dist/true-react-common-ui-kit.umd.cjs.map +1 -1
  29. package/dist/vite-env.d.ts +1 -1
  30. package/package.json +92 -91
  31. package/src/components/AccountInfo/AccountInfo.stories.tsx +32 -35
  32. package/src/components/AccountInfo/AccountInfo.styles.ts +55 -55
  33. package/src/components/AccountInfo/AccountInfo.tsx +77 -106
  34. package/src/components/AccountInfo/index.ts +2 -2
  35. package/src/components/AddButton/AddButton.stories.tsx +21 -21
  36. package/src/components/AddButton/AddButton.styles.ts +34 -34
  37. package/src/components/AddButton/AddButton.tsx +48 -49
  38. package/src/components/AddButton/index.ts +2 -2
  39. package/src/components/Button/Button.stories.tsx +52 -61
  40. package/src/components/Button/Button.styles.ts +196 -196
  41. package/src/components/Button/Button.tsx +187 -207
  42. package/src/components/Button/index.ts +2 -2
  43. package/src/components/Checkbox/Checkbox.stories.tsx +32 -35
  44. package/src/components/Checkbox/Checkbox.styles.ts +62 -62
  45. package/src/components/Checkbox/Checkbox.tsx +100 -107
  46. package/src/components/Checkbox/index.ts +2 -2
  47. package/src/components/CloseButton/CloseButton.styles.ts +34 -34
  48. package/src/components/CloseButton/CloseButton.tsx +35 -37
  49. package/src/components/CloseButton/index.ts +2 -2
  50. package/src/components/Colors/Colors.stories.tsx +7 -7
  51. package/src/components/Colors/Colors.styles.ts +38 -38
  52. package/src/components/Colors/Colors.tsx +26 -34
  53. package/src/components/Colors/index.ts +2 -2
  54. package/src/components/CssBaseline/CssBaseline.styles.ts +15 -15
  55. package/src/components/CssBaseline/CssBaseline.tsx +15 -17
  56. package/src/components/CssBaseline/index.ts +2 -2
  57. package/src/components/DateInput/DateInput.stories.tsx +61 -67
  58. package/src/components/DateInput/DateInput.styles.ts +14 -14
  59. package/src/components/DateInput/DateInput.tsx +82 -101
  60. package/src/components/DateInput/constants.ts +2 -2
  61. package/src/components/DateInput/index.ts +3 -3
  62. package/src/components/DatePicker/DatePicker.stories.tsx +87 -90
  63. package/src/components/DatePicker/DatePicker.styles.ts +44 -44
  64. package/src/components/DatePicker/DatePicker.tsx +322 -352
  65. package/src/components/DatePicker/DatePickerHeader/DatePickerHeader.styles.ts +84 -84
  66. package/src/components/DatePicker/DatePickerHeader/DatePickerHeader.tsx +79 -80
  67. package/src/components/DatePicker/DatePickerHeader/index.ts +2 -2
  68. package/src/components/DatePicker/constants.ts +1 -1
  69. package/src/components/DatePicker/helpers.ts +19 -24
  70. package/src/components/DatePicker/index.ts +3 -3
  71. package/src/components/DatePicker/types.ts +45 -45
  72. package/src/components/Description/Description.stories.tsx +27 -29
  73. package/src/components/Description/Description.styles.ts +31 -31
  74. package/src/components/Description/Description.tsx +60 -69
  75. package/src/components/Description/index.ts +2 -2
  76. package/src/components/FiltersPane/FilterInterval/FilterInterval.styles.ts +64 -64
  77. package/src/components/FiltersPane/FilterInterval/FilterInterval.tsx +143 -162
  78. package/src/components/FiltersPane/FilterInterval/index.ts +1 -1
  79. package/src/components/FiltersPane/FilterMultiSelect/FilterMultiSelect.tsx +10 -14
  80. package/src/components/FiltersPane/FilterMultiSelect/index.ts +1 -1
  81. package/src/components/FiltersPane/FilterSelect/FilterSelect.styles.ts +143 -144
  82. package/src/components/FiltersPane/FilterSelect/FilterSelect.tsx +347 -397
  83. package/src/components/FiltersPane/FilterSelect/index.ts +1 -1
  84. package/src/components/FiltersPane/FilterSelect/locales.ts +37 -37
  85. package/src/components/FiltersPane/FilterValueView/FilterValueView.styles.tsx +15 -15
  86. package/src/components/FiltersPane/FilterValueView/FilterValueView.tsx +166 -186
  87. package/src/components/FiltersPane/FilterValueView/index.tsx +1 -1
  88. package/src/components/FiltersPane/FilterWithDates/FilterWithDates.styles.ts +60 -60
  89. package/src/components/FiltersPane/FilterWithDates/FilterWithDates.tsx +183 -210
  90. package/src/components/FiltersPane/FilterWithDates/index.ts +1 -1
  91. package/src/components/FiltersPane/FilterWithPeriod/FilterWithPeriod.styles.ts +17 -17
  92. package/src/components/FiltersPane/FilterWithPeriod/FilterWithPeriod.tsx +198 -231
  93. package/src/components/FiltersPane/FilterWithPeriod/index.ts +1 -1
  94. package/src/components/FiltersPane/FilterWrapper/FilterWrapper.styles.ts +110 -110
  95. package/src/components/FiltersPane/FilterWrapper/FilterWrapper.tsx +346 -360
  96. package/src/components/FiltersPane/FilterWrapper/index.ts +1 -1
  97. package/src/components/FiltersPane/FiltersPane.stories.tsx +295 -308
  98. package/src/components/FiltersPane/FiltersPane.styles.ts +71 -71
  99. package/src/components/FiltersPane/FiltersPane.tsx +151 -193
  100. package/src/components/FiltersPane/FiltersPaneSearch/FiltersPaneSearch.styles.ts +109 -109
  101. package/src/components/FiltersPane/FiltersPaneSearch/FiltersPaneSearch.tsx +155 -175
  102. package/src/components/FiltersPane/FiltersPaneSearch/index.ts +1 -1
  103. package/src/components/FiltersPane/index.ts +20 -20
  104. package/src/components/FiltersPane/locales.ts +107 -107
  105. package/src/components/FiltersPane/types.ts +112 -126
  106. package/src/components/Flag/Flag.stories.tsx +29 -29
  107. package/src/components/Flag/Flag.styles.ts +18 -18
  108. package/src/components/Flag/Flag.tsx +27 -28
  109. package/src/components/Flag/augment.d.ts +1 -1
  110. package/src/components/Flag/index.ts +2 -2
  111. package/src/components/FlexibleTable/FlexibleTable.stories.tsx +84 -86
  112. package/src/components/FlexibleTable/FlexibleTable.styles.ts +131 -131
  113. package/src/components/FlexibleTable/FlexibleTable.tsx +205 -243
  114. package/src/components/FlexibleTable/TableRow.tsx +152 -171
  115. package/src/components/FlexibleTable/TableValue.tsx +75 -81
  116. package/src/components/FlexibleTable/fixture-test.ts +254 -254
  117. package/src/components/FlexibleTable/index.ts +3 -3
  118. package/src/components/FlexibleTable/types.ts +52 -58
  119. package/src/components/Icon/ComplexIconBoilerplate.tsx +17 -17
  120. package/src/components/Icon/Icon.stories.tsx +85 -88
  121. package/src/components/Icon/Icon.styles.ts +10 -10
  122. package/src/components/Icon/Icon.tsx +32 -34
  123. package/src/components/Icon/IconBoilerplate.tsx +42 -42
  124. package/src/components/Icon/complexIcons/augment.d.ts +1 -1
  125. package/src/components/Icon/complexIcons/avatarGreen.svg +57 -57
  126. package/src/components/Icon/complexIcons/icons.ts +7 -7
  127. package/src/components/Icon/complexIcons/index.ts +1 -1
  128. package/src/components/Icon/icons/icons.ts +838 -838
  129. package/src/components/Icon/icons/index.ts +1 -1
  130. package/src/components/Icon/index.ts +4 -4
  131. package/src/components/IncrementInput/ChangeButton.tsx +33 -34
  132. package/src/components/IncrementInput/IncrementInput.stories.tsx +31 -34
  133. package/src/components/IncrementInput/IncrementInput.styles.ts +77 -77
  134. package/src/components/IncrementInput/IncrementInput.tsx +79 -95
  135. package/src/components/IncrementInput/index.ts +2 -2
  136. package/src/components/Input/Input.stories.tsx +86 -92
  137. package/src/components/Input/Input.styles.ts +307 -307
  138. package/src/components/Input/Input.tsx +306 -321
  139. package/src/components/Input/index.ts +2 -2
  140. package/src/components/List/List.stories.tsx +62 -62
  141. package/src/components/List/List.styles.ts +52 -52
  142. package/src/components/List/List.tsx +61 -82
  143. package/src/components/List/index.ts +2 -2
  144. package/src/components/Modal/Modal.stories.tsx +105 -113
  145. package/src/components/Modal/Modal.styles.ts +305 -308
  146. package/src/components/Modal/Modal.tsx +181 -210
  147. package/src/components/Modal/index.ts +2 -2
  148. package/src/components/MoreMenu/MoreMenu.stories.tsx +46 -46
  149. package/src/components/MoreMenu/MoreMenu.styles.ts +70 -70
  150. package/src/components/MoreMenu/MoreMenu.tsx +89 -102
  151. package/src/components/MoreMenu/index.ts +2 -2
  152. package/src/components/MultiSelect/MultiSelect.stories.tsx +46 -46
  153. package/src/components/MultiSelect/MultiSelect.styles.ts +55 -55
  154. package/src/components/MultiSelect/MultiSelect.tsx +89 -98
  155. package/src/components/MultiSelect/MultiSelectInput/MultiSelectInput.styles.ts +73 -73
  156. package/src/components/MultiSelect/MultiSelectInput/MultiSelectInput.tsx +51 -62
  157. package/src/components/MultiSelect/MultiSelectInput/index.ts +1 -1
  158. package/src/components/MultiSelect/index.ts +3 -3
  159. package/src/components/MultiSelectList/MultiSelectList.styles.ts +124 -125
  160. package/src/components/MultiSelectList/MultiSelectList.tsx +451 -519
  161. package/src/components/MultiSelectList/index.ts +2 -2
  162. package/src/components/MultiSelectList/locales.ts +37 -37
  163. package/src/components/Notification/Notification.stories.tsx +46 -51
  164. package/src/components/Notification/Notification.styles.ts +50 -50
  165. package/src/components/Notification/Notification.tsx +75 -84
  166. package/src/components/Notification/index.ts +2 -2
  167. package/src/components/NumberInput/NumberInput.stories.tsx +35 -36
  168. package/src/components/NumberInput/NumberInput.tsx +133 -154
  169. package/src/components/NumberInput/helpers.ts +85 -87
  170. package/src/components/NumberInput/index.ts +1 -1
  171. package/src/components/PhoneInput/PhoneInput.stories.tsx +70 -71
  172. package/src/components/PhoneInput/PhoneInput.styles.ts +84 -84
  173. package/src/components/PhoneInput/PhoneInput.tsx +194 -223
  174. package/src/components/PhoneInput/PhoneInputCountryList/PhoneInputCountryList.stories.tsx +21 -21
  175. package/src/components/PhoneInput/PhoneInputCountryList/PhoneInputCountryList.styles.ts +100 -100
  176. package/src/components/PhoneInput/PhoneInputCountryList/PhoneInputCountryList.tsx +147 -171
  177. package/src/components/PhoneInput/PhoneInputCountryList/index.ts +2 -2
  178. package/src/components/PhoneInput/index.ts +6 -6
  179. package/src/components/PhoneInput/phone-info.ts +2147 -2167
  180. package/src/components/PhoneInput/types.ts +16 -16
  181. package/src/components/RadioButton/RadioButton.stories.tsx +46 -46
  182. package/src/components/RadioButton/RadioButton.styles.ts +37 -37
  183. package/src/components/RadioButton/RadioButton.tsx +54 -57
  184. package/src/components/RadioButton/index.ts +2 -2
  185. package/src/components/ScrollIntoViewIfNeeded/ScrollIntoViewIfNeeded.ts +61 -66
  186. package/src/components/ScrollIntoViewIfNeeded/index.ts +1 -1
  187. package/src/components/SearchInput/SearchInput.stories.tsx +23 -24
  188. package/src/components/SearchInput/SearchInput.styles.ts +50 -50
  189. package/src/components/SearchInput/SearchInput.tsx +49 -63
  190. package/src/components/SearchInput/index.ts +2 -2
  191. package/src/components/Select/MultiSelect.stories.tsx +240 -263
  192. package/src/components/Select/Select.stories.tsx +235 -258
  193. package/src/components/Select/Select.styles.ts +96 -96
  194. package/src/components/Select/Select.tsx +575 -634
  195. package/src/components/Select/SelectList/SelectList.styles.ts +72 -72
  196. package/src/components/Select/SelectList/SelectList.tsx +152 -165
  197. package/src/components/Select/SelectList/index.ts +1 -1
  198. package/src/components/Select/SelectListItem/SelectListItem.styles.ts +14 -14
  199. package/src/components/Select/SelectListItem/SelectListItem.tsx +67 -73
  200. package/src/components/Select/constants.ts +2 -2
  201. package/src/components/Select/helpers.ts +26 -29
  202. package/src/components/Select/index.ts +4 -4
  203. package/src/components/Select/types.ts +1 -1
  204. package/src/components/SmartInput/SmartInput.stories.tsx +50 -63
  205. package/src/components/SmartInput/SmartInput.tsx +147 -180
  206. package/src/components/SmartInput/helpers.ts +85 -85
  207. package/src/components/SmartInput/index.ts +1 -1
  208. package/src/components/Switch/Switch.stories.tsx +40 -40
  209. package/src/components/Switch/Switch.styles.ts +75 -75
  210. package/src/components/Switch/Switch.tsx +82 -83
  211. package/src/components/Switch/index.ts +2 -2
  212. package/src/components/TextArea/TextArea.stories.tsx +35 -35
  213. package/src/components/TextArea/TextArea.styles.ts +153 -153
  214. package/src/components/TextArea/TextArea.tsx +165 -178
  215. package/src/components/TextArea/index.ts +2 -2
  216. package/src/components/TextWithInfo/TextWithInfo.stories.tsx +53 -53
  217. package/src/components/TextWithInfo/TextWithInfo.styles.ts +60 -60
  218. package/src/components/TextWithInfo/TextWithInfo.tsx +60 -67
  219. package/src/components/TextWithInfo/index.ts +2 -2
  220. package/src/components/TextWithTooltip/TextWithTooltip.stories.tsx +58 -58
  221. package/src/components/TextWithTooltip/TextWithTooltip.styles.ts +19 -19
  222. package/src/components/TextWithTooltip/TextWithTooltip.tsx +143 -163
  223. package/src/components/TextWithTooltip/index.ts +2 -2
  224. package/src/components/ThemedPreloader/ThemedPreloader.stories.tsx +41 -41
  225. package/src/components/ThemedPreloader/ThemedPreloader.styles.ts +21 -21
  226. package/src/components/ThemedPreloader/ThemedPreloader.tsx +50 -56
  227. package/src/components/ThemedPreloader/components/DefaultPreloader/DefaultPreloader.tsx +29 -34
  228. package/src/components/ThemedPreloader/components/DefaultPreloader/index.ts +1 -1
  229. package/src/components/ThemedPreloader/components/DotsPreloader/DotsPreloader.styles.ts +54 -54
  230. package/src/components/ThemedPreloader/components/DotsPreloader/DotsPreloader.tsx +18 -18
  231. package/src/components/ThemedPreloader/components/DotsPreloader/index.ts +2 -2
  232. package/src/components/ThemedPreloader/components/SvgPreloader/SvgPreloader.styles.ts +11 -11
  233. package/src/components/ThemedPreloader/components/SvgPreloader/SvgPreloader.tsx +25 -32
  234. package/src/components/ThemedPreloader/components/SvgPreloader/index.ts +2 -2
  235. package/src/components/ThemedPreloader/components/index.ts +2 -2
  236. package/src/components/ThemedPreloader/index.ts +2 -2
  237. package/src/components/Toaster/Toaster.stories.tsx +30 -34
  238. package/src/components/Toaster/Toaster.styles.ts +59 -59
  239. package/src/components/Toaster/Toaster.tsx +105 -113
  240. package/src/components/Toaster/index.ts +2 -2
  241. package/src/components/Tooltip/Tooltip.stories.tsx +19 -21
  242. package/src/components/Tooltip/Tooltip.styles.ts +45 -45
  243. package/src/components/Tooltip/Tooltip.tsx +35 -40
  244. package/src/components/Tooltip/index.ts +3 -3
  245. package/src/components/Tooltip/types.ts +1 -1
  246. package/src/components/index.ts +36 -36
  247. package/src/helpers/colors.ts +3 -2
  248. package/src/helpers/dateHelpers/date-helpers.ts +9 -9
  249. package/src/helpers/index.ts +4 -4
  250. package/src/helpers/phone.ts +87 -106
  251. package/src/helpers/popper-helpers.ts +17 -17
  252. package/src/helpers/snippets.tsx +5 -5
  253. package/src/helpers/utils.ts +231 -261
  254. package/src/hooks/index.ts +6 -6
  255. package/src/hooks/use-did-mount-effect.ts +18 -21
  256. package/src/hooks/use-dropdown.ts +82 -85
  257. package/src/hooks/use-is-mounted.ts +15 -15
  258. package/src/hooks/use-on-click-outside.ts +77 -92
  259. package/src/hooks/use-theme.ts +32 -36
  260. package/src/hooks/use-tweak-styles.ts +13 -14
  261. package/src/index.ts +6 -6
  262. package/src/theme.ts +149 -155
  263. package/src/types.ts +98 -105
  264. package/src/vite-env.d.ts +1 -1
@@ -1,308 +1,305 @@
1
- import { colors, dimensions } from '../../theme';
2
- import { rgba } from '../../helpers';
3
- import { ComponentStyles } from '../../types';
4
-
5
- const VERTICAL_OVERLAY_PADDING = 50;
6
-
7
- const MODAL_HORIZONTAL_PADDING_L = 40;
8
- const MODAL_HORIZONTAL_PADDING_M = 36;
9
- const MODAL_HORIZONTAL_PADDING_S = 26;
10
-
11
- export const styles = {
12
- root: {},
13
-
14
- fixedPosition: {
15
- position: 'fixed',
16
- top: 0,
17
- right: 0,
18
- bottom: 0,
19
- left: 0,
20
- zIndex: 999,
21
- overflowX: 'hidden',
22
- '-webkit-overflow-scrolling': 'touch',
23
-
24
- '& $innerOverlay': {
25
- display: 'flex',
26
- width: '100%',
27
- minHeight: '100%',
28
- boxSizing: 'border-box',
29
- },
30
- },
31
-
32
- innerOverlay: {},
33
-
34
- sideBar: {
35
- '& $modal': {
36
- borderRadius: 0,
37
- margin: 0,
38
- minHeight: '100%',
39
- },
40
- },
41
-
42
- 'position-static': {},
43
-
44
- 'position-left': {},
45
-
46
- 'position-right': {
47
- justifyContent: 'flex-end',
48
- },
49
-
50
- 'position-center': {
51
- padding: [VERTICAL_OVERLAY_PADDING, 30],
52
- },
53
-
54
- overlay: {
55
- backgroundColor: rgba(colors.BORDER_MAIN, 0.5),
56
- },
57
-
58
- modal: {
59
- backgroundColor: colors.CLASSIC_WHITE,
60
- borderRadius: dimensions.BORDER_RADIUS_LARGE,
61
- boxShadow: `0 8px 32px -8px ${rgba(
62
- colors.FONT_MAIN,
63
- 0.24,
64
- )}, 0 -2px 6px 0 ${rgba(colors.FONT_MAIN, 0.04)}, 0 0 1px 0 ${rgba(
65
- colors.FONT_MAIN,
66
- 0.15,
67
- )}`,
68
- margin: 'auto',
69
- position: 'relative',
70
- // do not override this
71
- maxWidth: '100%',
72
- },
73
-
74
- title: {
75
- fontSize: 28,
76
- lineHeight: 1.3,
77
- marginTop: 0,
78
- },
79
-
80
- titleWithCloseButton: {
81
- paddingRight: 32,
82
- },
83
-
84
- close: {
85
- position: 'absolute',
86
- },
87
-
88
- content: {},
89
-
90
- footer: {
91
- display: 'flex',
92
- gap: 12,
93
- },
94
-
95
- stickyFooterWrapper: {
96
- position: 'sticky',
97
- bottom: 0,
98
- marginTop: 'auto',
99
- zIndex: 1,
100
- },
101
-
102
- stickyFooter: {
103
- borderTop: [1, 'solid', colors.BORDER_LIGHT],
104
- padding: [16, 40],
105
- borderBottomLeftRadius: dimensions.BORDER_RADIUS_LARGE,
106
- borderBottomRightRadius: dimensions.BORDER_RADIUS_LARGE,
107
- backgroundColor: colors.CLASSIC_WHITE,
108
- },
109
-
110
- 'buttons-left': {
111
- justifyContent: 'flex-start',
112
- },
113
-
114
- 'buttons-center': {
115
- justifyContent: 'center',
116
- },
117
-
118
- 'buttons-right': {
119
- justifyContent: 'flex-end',
120
- },
121
-
122
- withoutFooter: {},
123
-
124
- withStickyFooter: {
125
- display: 'flex',
126
- flexDirection: 'column',
127
-
128
- '& $content': {
129
- position: 'relative',
130
- zIndex: 1,
131
- },
132
- },
133
-
134
- footerWrapper: {},
135
-
136
- l: {
137
- '& $modal': {
138
- padding: [36, MODAL_HORIZONTAL_PADDING_L],
139
- fontSize: 16,
140
- width: 560,
141
-
142
- '&$withStickyFooter': {
143
- paddingBottom: 0,
144
- },
145
- },
146
-
147
- '& $withoutFooter': {
148
- paddingBottom: 54,
149
- },
150
-
151
- '& $title': {
152
- fontSize: 28,
153
- marginBottom: 32,
154
- },
155
-
156
- '& $close': {
157
- right: 27,
158
- top: 22,
159
- },
160
-
161
- '& $footerWrapper': {
162
- paddingTop: 40,
163
- },
164
-
165
- '& $stickyFooter': {
166
- paddingLeft: MODAL_HORIZONTAL_PADDING_L,
167
- paddingRight: MODAL_HORIZONTAL_PADDING_L,
168
- marginLeft: -MODAL_HORIZONTAL_PADDING_L,
169
- marginRight: -MODAL_HORIZONTAL_PADDING_L,
170
- },
171
- },
172
-
173
- m: {
174
- '& $modal': {
175
- padding: [32, MODAL_HORIZONTAL_PADDING_M],
176
- width: 480,
177
-
178
- '&$withStickyFooter': {
179
- paddingBottom: 0,
180
- },
181
- },
182
-
183
- '& $withoutFooter': {
184
- paddingBottom: 48,
185
- },
186
-
187
- '& $title': {
188
- fontSize: 24,
189
- marginBottom: 28,
190
- },
191
-
192
- '& $close': {
193
- right: 23,
194
- top: 18,
195
- },
196
-
197
- '& $footerWrapper': {
198
- paddingTop: 36,
199
- },
200
-
201
- '& $stickyFooter': {
202
- paddingLeft: MODAL_HORIZONTAL_PADDING_M,
203
- paddingRight: MODAL_HORIZONTAL_PADDING_M,
204
- marginLeft: -MODAL_HORIZONTAL_PADDING_M,
205
- marginRight: -MODAL_HORIZONTAL_PADDING_M,
206
- },
207
- },
208
-
209
- s: {
210
- '& $modal': {
211
- padding: [24, MODAL_HORIZONTAL_PADDING_S],
212
- fontSize: 14,
213
- width: 360,
214
-
215
- '&$withStickyFooter': {
216
- paddingBottom: 0,
217
- },
218
- },
219
-
220
- '& $withoutFooter': {
221
- paddingBottom: 40,
222
- },
223
-
224
- '& $title': {
225
- fontSize: 20,
226
- marginBottom: 15,
227
- },
228
-
229
- '& $close': {
230
- right: 14,
231
- top: 11,
232
- },
233
-
234
- '& $footerWrapper': {
235
- paddingTop: 28,
236
- },
237
-
238
- '& $stickyFooter': {
239
- paddingLeft: MODAL_HORIZONTAL_PADDING_S,
240
- paddingRight: MODAL_HORIZONTAL_PADDING_S,
241
- marginLeft: -MODAL_HORIZONTAL_PADDING_S,
242
- marginRight: -MODAL_HORIZONTAL_PADDING_S,
243
- },
244
- },
245
-
246
- modalWrapper: {
247
- display: 'flex',
248
- width: '100%',
249
- },
250
-
251
- // TODO: вынести анимацию ?
252
- /* ----------- SHOW / HIDE ANIMATION ----------- */
253
- animationEnd: {
254
- '& $modal': {
255
- opacity: 0,
256
- },
257
-
258
- '& $position-center $modal': {
259
- transform: 'translateY(35px)',
260
- },
261
-
262
- '& $position-right $modal': {
263
- transform: 'translateX(35px)',
264
- },
265
-
266
- '& $position-left $modal': {
267
- transform: 'translateX(-35px)',
268
- },
269
-
270
- '& $overlay': {
271
- opacity: 0,
272
- },
273
- },
274
-
275
- animationStart: {
276
- '& $modal': {
277
- opacity: 1,
278
- transition: '0.15s ease',
279
- transitionProperty: 'transform, opacity',
280
- },
281
-
282
- '& $position-center $modal': {
283
- transform: 'translateY(0)',
284
- },
285
-
286
- '& $position-right $modal': {
287
- transform: 'translateX(0)',
288
- },
289
-
290
- '& $position-left $modal': {
291
- transform: 'translateX(0)',
292
- },
293
-
294
- '& $overlay': {
295
- opacity: 1,
296
- transition: 'opacity 0.2s ease',
297
- },
298
- },
299
-
300
- 'modal-enter': { extend: 'animationEnd' },
301
- 'modal-enter-active': { extend: 'animationStart' },
302
- 'modal-exit': { extend: 'animationStart' },
303
- 'modal-exit-active': { extend: 'animationEnd' },
304
-
305
- tweakCloseButton: {},
306
- };
307
-
308
- export type ModalStyles = ComponentStyles<typeof styles>;
1
+ import { rgba } from '../../helpers';
2
+ import { colors, dimensions } from '../../theme';
3
+ import { ComponentStyles } from '../../types';
4
+
5
+ const VERTICAL_OVERLAY_PADDING = 50;
6
+
7
+ const MODAL_HORIZONTAL_PADDING_L = 40;
8
+ const MODAL_HORIZONTAL_PADDING_M = 36;
9
+ const MODAL_HORIZONTAL_PADDING_S = 26;
10
+
11
+ export const styles = {
12
+ root: {},
13
+
14
+ fixedPosition: {
15
+ position: 'fixed',
16
+ top: 0,
17
+ right: 0,
18
+ bottom: 0,
19
+ left: 0,
20
+ zIndex: 999,
21
+ overflowX: 'hidden',
22
+ '-webkit-overflow-scrolling': 'touch',
23
+
24
+ '& $innerOverlay': {
25
+ display: 'flex',
26
+ width: '100%',
27
+ minHeight: '100%',
28
+ boxSizing: 'border-box',
29
+ },
30
+ },
31
+
32
+ innerOverlay: {},
33
+
34
+ sideBar: {
35
+ '& $modal': {
36
+ borderRadius: 0,
37
+ margin: 0,
38
+ minHeight: '100%',
39
+ },
40
+ },
41
+
42
+ 'position-static': {},
43
+
44
+ 'position-left': {},
45
+
46
+ 'position-right': {
47
+ justifyContent: 'flex-end',
48
+ },
49
+
50
+ 'position-center': {
51
+ padding: [VERTICAL_OVERLAY_PADDING, 30],
52
+ },
53
+
54
+ overlay: {
55
+ backgroundColor: rgba(colors.BORDER_MAIN, 0.5),
56
+ },
57
+
58
+ modal: {
59
+ backgroundColor: colors.CLASSIC_WHITE,
60
+ borderRadius: dimensions.BORDER_RADIUS_LARGE,
61
+ boxShadow: `0 8px 32px -8px ${rgba(colors.FONT_MAIN, 0.24)}, 0 -2px 6px 0 ${rgba(
62
+ colors.FONT_MAIN,
63
+ 0.04,
64
+ )}, 0 0 1px 0 ${rgba(colors.FONT_MAIN, 0.15)}`,
65
+ margin: 'auto',
66
+ position: 'relative',
67
+ // do not override this
68
+ maxWidth: '100%',
69
+ },
70
+
71
+ title: {
72
+ fontSize: 28,
73
+ lineHeight: 1.3,
74
+ marginTop: 0,
75
+ },
76
+
77
+ titleWithCloseButton: {
78
+ paddingRight: 32,
79
+ },
80
+
81
+ close: {
82
+ position: 'absolute',
83
+ },
84
+
85
+ content: {},
86
+
87
+ footer: {
88
+ display: 'flex',
89
+ gap: 12,
90
+ },
91
+
92
+ stickyFooterWrapper: {
93
+ position: 'sticky',
94
+ bottom: 0,
95
+ marginTop: 'auto',
96
+ zIndex: 1,
97
+ },
98
+
99
+ stickyFooter: {
100
+ borderTop: [1, 'solid', colors.BORDER_LIGHT],
101
+ padding: [16, 40],
102
+ borderBottomLeftRadius: dimensions.BORDER_RADIUS_LARGE,
103
+ borderBottomRightRadius: dimensions.BORDER_RADIUS_LARGE,
104
+ backgroundColor: colors.CLASSIC_WHITE,
105
+ },
106
+
107
+ 'buttons-left': {
108
+ justifyContent: 'flex-start',
109
+ },
110
+
111
+ 'buttons-center': {
112
+ justifyContent: 'center',
113
+ },
114
+
115
+ 'buttons-right': {
116
+ justifyContent: 'flex-end',
117
+ },
118
+
119
+ withoutFooter: {},
120
+
121
+ withStickyFooter: {
122
+ display: 'flex',
123
+ flexDirection: 'column',
124
+
125
+ '& $content': {
126
+ position: 'relative',
127
+ zIndex: 1,
128
+ },
129
+ },
130
+
131
+ footerWrapper: {},
132
+
133
+ l: {
134
+ '& $modal': {
135
+ padding: [36, MODAL_HORIZONTAL_PADDING_L],
136
+ fontSize: 16,
137
+ width: 560,
138
+
139
+ '&$withStickyFooter': {
140
+ paddingBottom: 0,
141
+ },
142
+ },
143
+
144
+ '& $withoutFooter': {
145
+ paddingBottom: 54,
146
+ },
147
+
148
+ '& $title': {
149
+ fontSize: 28,
150
+ marginBottom: 32,
151
+ },
152
+
153
+ '& $close': {
154
+ right: 27,
155
+ top: 22,
156
+ },
157
+
158
+ '& $footerWrapper': {
159
+ paddingTop: 40,
160
+ },
161
+
162
+ '& $stickyFooter': {
163
+ paddingLeft: MODAL_HORIZONTAL_PADDING_L,
164
+ paddingRight: MODAL_HORIZONTAL_PADDING_L,
165
+ marginLeft: -MODAL_HORIZONTAL_PADDING_L,
166
+ marginRight: -MODAL_HORIZONTAL_PADDING_L,
167
+ },
168
+ },
169
+
170
+ m: {
171
+ '& $modal': {
172
+ padding: [32, MODAL_HORIZONTAL_PADDING_M],
173
+ width: 480,
174
+
175
+ '&$withStickyFooter': {
176
+ paddingBottom: 0,
177
+ },
178
+ },
179
+
180
+ '& $withoutFooter': {
181
+ paddingBottom: 48,
182
+ },
183
+
184
+ '& $title': {
185
+ fontSize: 24,
186
+ marginBottom: 28,
187
+ },
188
+
189
+ '& $close': {
190
+ right: 23,
191
+ top: 18,
192
+ },
193
+
194
+ '& $footerWrapper': {
195
+ paddingTop: 36,
196
+ },
197
+
198
+ '& $stickyFooter': {
199
+ paddingLeft: MODAL_HORIZONTAL_PADDING_M,
200
+ paddingRight: MODAL_HORIZONTAL_PADDING_M,
201
+ marginLeft: -MODAL_HORIZONTAL_PADDING_M,
202
+ marginRight: -MODAL_HORIZONTAL_PADDING_M,
203
+ },
204
+ },
205
+
206
+ s: {
207
+ '& $modal': {
208
+ padding: [24, MODAL_HORIZONTAL_PADDING_S],
209
+ fontSize: 14,
210
+ width: 360,
211
+
212
+ '&$withStickyFooter': {
213
+ paddingBottom: 0,
214
+ },
215
+ },
216
+
217
+ '& $withoutFooter': {
218
+ paddingBottom: 40,
219
+ },
220
+
221
+ '& $title': {
222
+ fontSize: 20,
223
+ marginBottom: 15,
224
+ },
225
+
226
+ '& $close': {
227
+ right: 14,
228
+ top: 11,
229
+ },
230
+
231
+ '& $footerWrapper': {
232
+ paddingTop: 28,
233
+ },
234
+
235
+ '& $stickyFooter': {
236
+ paddingLeft: MODAL_HORIZONTAL_PADDING_S,
237
+ paddingRight: MODAL_HORIZONTAL_PADDING_S,
238
+ marginLeft: -MODAL_HORIZONTAL_PADDING_S,
239
+ marginRight: -MODAL_HORIZONTAL_PADDING_S,
240
+ },
241
+ },
242
+
243
+ modalWrapper: {
244
+ display: 'flex',
245
+ width: '100%',
246
+ },
247
+
248
+ // TODO: вынести анимацию ?
249
+ /* ----------- SHOW / HIDE ANIMATION ----------- */
250
+ animationEnd: {
251
+ '& $modal': {
252
+ opacity: 0,
253
+ },
254
+
255
+ '& $position-center $modal': {
256
+ transform: 'translateY(35px)',
257
+ },
258
+
259
+ '& $position-right $modal': {
260
+ transform: 'translateX(35px)',
261
+ },
262
+
263
+ '& $position-left $modal': {
264
+ transform: 'translateX(-35px)',
265
+ },
266
+
267
+ '& $overlay': {
268
+ opacity: 0,
269
+ },
270
+ },
271
+
272
+ animationStart: {
273
+ '& $modal': {
274
+ opacity: 1,
275
+ transition: '0.15s ease',
276
+ transitionProperty: 'transform, opacity',
277
+ },
278
+
279
+ '& $position-center $modal': {
280
+ transform: 'translateY(0)',
281
+ },
282
+
283
+ '& $position-right $modal': {
284
+ transform: 'translateX(0)',
285
+ },
286
+
287
+ '& $position-left $modal': {
288
+ transform: 'translateX(0)',
289
+ },
290
+
291
+ '& $overlay': {
292
+ opacity: 1,
293
+ transition: 'opacity 0.2s ease',
294
+ },
295
+ },
296
+
297
+ 'modal-enter': { extend: 'animationEnd' },
298
+ 'modal-enter-active': { extend: 'animationStart' },
299
+ 'modal-exit': { extend: 'animationStart' },
300
+ 'modal-exit-active': { extend: 'animationEnd' },
301
+
302
+ tweakCloseButton: {},
303
+ };
304
+
305
+ export type ModalStyles = ComponentStyles<typeof styles>;