@hh.ru/magritte-ui-chat-input 1.1.19 → 1.2.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 (43) hide show
  1. package/index.css +185 -93
  2. package/index.d.ts +3 -0
  3. package/index.js +8 -1
  4. package/index.js.map +1 -1
  5. package/index.mock.d.ts +3 -0
  6. package/index.mock.js +5 -0
  7. package/index.mock.js.map +1 -1
  8. package/internal/ModeTransition.js +1 -1
  9. package/internal/TextInput.js +2 -2
  10. package/internal/TextInput.js.map +1 -1
  11. package/internal/VoiceRecord.js +1 -1
  12. package/internal/VoiceRecordIndicator.js +1 -1
  13. package/internal/flattenFragments.d.ts +6 -0
  14. package/internal/flattenFragments.js +20 -0
  15. package/internal/flattenFragments.js.map +1 -0
  16. package/internal/useHasSound.js +1 -1
  17. package/internal/useHasSound.js.map +1 -1
  18. package/internal/useObjectUrl.d.ts +6 -0
  19. package/internal/useObjectUrl.js +30 -0
  20. package/internal/useObjectUrl.js.map +1 -0
  21. package/package.json +17 -15
  22. package/public/ChatInput.d.ts +4 -0
  23. package/public/ChatInput.js +9 -1
  24. package/public/ChatInput.js.map +1 -1
  25. package/public/ChatInputChips.js +3 -5
  26. package/public/ChatInputChips.js.map +1 -1
  27. package/public/ChatInputFile.d.ts +43 -0
  28. package/public/ChatInputFile.js +74 -0
  29. package/public/ChatInputFile.js.map +1 -0
  30. package/public/ChatInputFiles.d.ts +6 -0
  31. package/public/ChatInputFiles.js +12 -0
  32. package/public/ChatInputFiles.js.map +1 -0
  33. package/public/ChatInputPreview.js +7 -2
  34. package/public/ChatInputPreview.js.map +1 -1
  35. package/public/ChatInputVoiceButton.js +1 -1
  36. package/public/ChatInputVoiceButton.js.map +1 -1
  37. package/public/getChatInputFileType.d.ts +5 -0
  38. package/public/getChatInputFileType.js +16 -0
  39. package/public/getChatInputFileType.js.map +1 -0
  40. package/styles-B3o1JdaK.js +5 -0
  41. package/styles-B3o1JdaK.js.map +1 -0
  42. package/styles-CXscNVWO.js +0 -5
  43. package/styles-CXscNVWO.js.map +0 -1
package/index.css CHANGED
@@ -1,146 +1,161 @@
1
1
  :root{
2
- --magritte-color-background-primary-v25-1-0:#ffffff;
3
- --magritte-color-stroke-neutral-v25-1-0:#DCE3EB;
4
- --magritte-color-stroke-state-focused-accessible-v25-1-0:#0070ff7a;
5
- --magritte-color-stroke-state-neutral-hovered-v25-1-0:#DCE3EB;
6
- --magritte-color-text-primary-v25-1-0:#000000;
7
- --magritte-color-text-secondary-v25-1-0:#768694;
8
- --magritte-color-text-tertiary-v25-1-0:#AABBCA;
9
- --magritte-color-icon-tertiary-v25-1-0:#AABBCA;
10
- --magritte-gradient-component-chat-input-background-fade-v25-1-0:#ffffff00 0%, #ffffff 100%;
11
- --magritte-shadow-level-1-color-v25-1-0:#7090b029;
12
- --magritte-shadow-level-1-x-v25-1-0:0px;
13
- --magritte-shadow-level-1-y-v25-1-0:4px;
14
- --magritte-shadow-level-1-blur-v25-1-0:12px;
15
- --magritte-shadow-level-1-spread-v25-1-0:0px;
2
+ --magritte-color-background-primary-v25-1-1:#ffffff;
3
+ --magritte-color-background-secondary-v25-1-1:#F1F4F9;
4
+ --magritte-color-stroke-neutral-v25-1-1:#DCE3EB;
5
+ --magritte-color-stroke-phantom-v25-1-1:#DCE3EB;
6
+ --magritte-color-stroke-state-focused-accessible-v25-1-1:#0070ff7a;
7
+ --magritte-color-stroke-state-neutral-hovered-v25-1-1:#DCE3EB;
8
+ --magritte-color-text-primary-v25-1-1:#000000;
9
+ --magritte-color-text-secondary-v25-1-1:#768694;
10
+ --magritte-color-text-tertiary-v25-1-1:#AABBCA;
11
+ --magritte-color-icon-tertiary-v25-1-1:#AABBCA;
12
+ --magritte-gradient-component-chat-input-background-fade-v25-1-1:#ffffff00 0%, #ffffff 100%;
13
+ --magritte-shadow-level-1-color-v25-1-1:#7090b029;
14
+ --magritte-shadow-level-1-x-v25-1-1:0px;
15
+ --magritte-shadow-level-1-y-v25-1-1:4px;
16
+ --magritte-shadow-level-1-blur-v25-1-1:12px;
17
+ --magritte-shadow-level-1-spread-v25-1-1:0px;
16
18
  }
17
19
 
18
20
  :root{
19
- --magritte-semantic-animation-time-s-duration-v25-1-0:200ms;
20
- --magritte-semantic-animation-ease-base-timing-function-v25-1-0:cubic-bezier(0.4, 0.24, 0, 1);
21
+ --magritte-semantic-animation-time-s-duration-v25-1-1:200ms;
22
+ --magritte-semantic-animation-ease-base-timing-function-v25-1-1:cubic-bezier(0.4, 0.24, 0, 1);
21
23
  }
22
24
 
23
25
  .magritte-night-theme{
24
- --magritte-color-background-primary-v25-1-0:#1B1B1B;
25
- --magritte-color-stroke-neutral-v25-1-0:#303030;
26
- --magritte-color-stroke-state-neutral-hovered-v25-1-0:#303030;
27
- --magritte-color-text-primary-v25-1-0:#ffffff;
28
- --magritte-color-text-secondary-v25-1-0:#ABABAB;
29
- --magritte-color-text-tertiary-v25-1-0:#767676;
30
- --magritte-color-icon-tertiary-v25-1-0:#767676;
31
- --magritte-gradient-component-chat-input-background-fade-v25-1-0:#1b1b1b00 0%, #1b1b1b 100%;
32
- --magritte-shadow-level-1-color-v25-1-0:#00000029;
33
- }
34
- .magritte-chat-input___P69oN_1-1-19{
35
- --chat-input-stroke-color:var(--magritte-color-stroke-neutral-v25-1-0);
26
+ --magritte-color-background-primary-v25-1-1:#1B1B1B;
27
+ --magritte-color-background-secondary-v25-1-1:#303030;
28
+ --magritte-color-stroke-neutral-v25-1-1:#303030;
29
+ --magritte-color-stroke-phantom-v25-1-1:#30303000;
30
+ --magritte-color-stroke-state-neutral-hovered-v25-1-1:#303030;
31
+ --magritte-color-text-primary-v25-1-1:#ffffff;
32
+ --magritte-color-text-secondary-v25-1-1:#ABABAB;
33
+ --magritte-color-text-tertiary-v25-1-1:#767676;
34
+ --magritte-color-icon-tertiary-v25-1-1:#767676;
35
+ --magritte-gradient-component-chat-input-background-fade-v25-1-1:#1b1b1b00 0%, #1b1b1b 100%;
36
+ --magritte-shadow-level-1-color-v25-1-1:#00000029;
37
+ }
38
+ .magritte-chat-input___P69oN_1-2-1{
39
+ --chat-input-stroke-color:var(--magritte-color-stroke-neutral-v25-1-1);
36
40
  --chat-input-focus-shadow:0 0 0 transparent;
37
- box-shadow:inset 0 0 0 1px var(--chat-input-stroke-color), var(--chat-input-focus-shadow);
41
+ position:relative;
42
+ isolation:isolate;
43
+ box-shadow:var(--chat-input-focus-shadow);
38
44
  border-radius:24px;
39
45
  padding:12px;
40
46
  overflow:hidden;
41
- background-color:var(--magritte-color-background-primary-v25-1-0);
47
+ background-color:var(--magritte-color-background-primary-v25-1-1);
42
48
  --magritte-ui-scrollbar-offset-right:-12px;
43
49
  }
44
- .magritte-chat-input___P69oN_1-1-19.magritte-no-background___eiIY1_1-1-19{
50
+ .magritte-chat-input___P69oN_1-2-1::after{
51
+ content:'';
52
+ position:absolute;
53
+ z-index:1;
54
+ inset:0;
55
+ border-radius:inherit;
56
+ box-shadow:inset 0 0 0 1px var(--chat-input-stroke-color);
57
+ pointer-events:none;
58
+ }
59
+ .magritte-chat-input___P69oN_1-2-1.magritte-no-background___eiIY1_1-2-1{
45
60
  background:none;
46
61
  --chat-input-stroke-color:transparent !important;
47
62
  }
48
- .magritte-chat-input___P69oN_1-1-19:has(*:focus){
49
- --chat-input-focus-shadow:var(--magritte-shadow-level-1-x-v25-1-0) var(--magritte-shadow-level-1-y-v25-1-0) var(--magritte-shadow-level-1-blur-v25-1-0) var(--magritte-shadow-level-1-spread-v25-1-0) var(--magritte-shadow-level-1-color-v25-1-0);
63
+ .magritte-chat-input___P69oN_1-2-1:has(*:focus){
64
+ --chat-input-focus-shadow:var(--magritte-shadow-level-1-x-v25-1-1) var(--magritte-shadow-level-1-y-v25-1-1) var(--magritte-shadow-level-1-blur-v25-1-1) var(--magritte-shadow-level-1-spread-v25-1-1) var(--magritte-shadow-level-1-color-v25-1-1);
50
65
  }
51
- .magritte-chat-input___P69oN_1-1-19:has(.magritte-text-input-focused___TfyLu_1-1-19){
52
- outline:4px solid var(--magritte-color-stroke-state-focused-accessible-v25-1-0);
66
+ .magritte-chat-input___P69oN_1-2-1:has(.magritte-text-input-focused___TfyLu_1-2-1){
67
+ outline:4px solid var(--magritte-color-stroke-state-focused-accessible-v25-1-1);
53
68
  }
54
69
  @media (min-width: 1020px){
55
- body.magritte-old-layout .magritte-chat-input___P69oN_1-1-19:hover{
56
- --chat-input-stroke-color:var(--magritte-color-stroke-state-neutral-hovered-v25-1-0);
70
+ body.magritte-old-layout .magritte-chat-input___P69oN_1-2-1:hover{
71
+ --chat-input-stroke-color:var(--magritte-color-stroke-state-neutral-hovered-v25-1-1);
57
72
  }
58
73
  }
59
74
  @media (min-width: 1024px){
60
- body:not(.magritte-old-layout) .magritte-chat-input___P69oN_1-1-19:hover{
61
- --chat-input-stroke-color:var(--magritte-color-stroke-state-neutral-hovered-v25-1-0);
75
+ body:not(.magritte-old-layout) .magritte-chat-input___P69oN_1-2-1:hover{
76
+ --chat-input-stroke-color:var(--magritte-color-stroke-state-neutral-hovered-v25-1-1);
62
77
  }
63
78
  }
64
- .magritte-content-grid___g03sT_1-1-19{
79
+ .magritte-content-grid___g03sT_1-2-1{
65
80
  display:grid;
66
81
  grid-template-columns:auto minmax(0, 1fr) auto;
67
82
  }
68
- .magritte-content-grid___g03sT_1-1-19 .magritte-preview___baXKi_1-1-19{
83
+ .magritte-content-grid___g03sT_1-2-1 .magritte-preview___baXKi_1-2-1{
69
84
  grid-area:1 / 1 / 2 / -1;
70
85
  }
71
- .magritte-content-grid___g03sT_1-1-19 .magritte-left___7JZYp_1-1-19{
86
+ .magritte-content-grid___g03sT_1-2-1 .magritte-left___7JZYp_1-2-1{
72
87
  grid-area:3 / 1;
73
88
  align-self:end;
74
89
  }
75
- .magritte-content-grid___g03sT_1-1-19 .magritte-central___zkguj_1-1-19{
90
+ .magritte-content-grid___g03sT_1-2-1 .magritte-central___zkguj_1-2-1{
76
91
  grid-area:3 / 2;
77
92
  align-self:center;
78
93
  }
79
- .magritte-content-grid___g03sT_1-1-19 .magritte-right___-tGcO_1-1-19{
94
+ .magritte-content-grid___g03sT_1-2-1 .magritte-right___-tGcO_1-2-1{
80
95
  grid-area:3 / 3;
81
96
  align-self:end;
82
97
  }
83
- .magritte-content-grid___g03sT_1-1-19 .magritte-scrollbar-cell___--M2x_1-1-19{
98
+ .magritte-content-grid___g03sT_1-2-1 .magritte-scrollbar-cell___--M2x_1-2-1{
84
99
  grid-area:2 / 1 / 3 / -1;
85
100
  position:relative;
86
101
  pointer-events:none;
87
102
  }
88
- .magritte-content-grid___g03sT_1-1-19 .magritte-scrollbar-cell___--M2x_1-1-19 > div{
103
+ .magritte-content-grid___g03sT_1-2-1 .magritte-scrollbar-cell___--M2x_1-2-1 > div{
89
104
  pointer-events:auto;
90
105
  }
91
- .magritte-content-grid___g03sT_1-1-19 .magritte-text-input___3AFO4_1-1-19{
106
+ .magritte-content-grid___g03sT_1-2-1 .magritte-text-input___3AFO4_1-2-1{
92
107
  grid-area:3 / 2;
93
108
  }
94
- .magritte-content-grid___g03sT_1-1-19 .magritte-text-input___3AFO4_1-1-19.magritte-layout-vertical___mVTr-_1-1-19,
95
- .magritte-content-grid___g03sT_1-1-19.magritte-has-central___VRZik_1-1-19 .magritte-text-input___3AFO4_1-1-19{
109
+ .magritte-content-grid___g03sT_1-2-1 .magritte-text-input___3AFO4_1-2-1.magritte-layout-vertical___mVTr-_1-2-1,
110
+ .magritte-content-grid___g03sT_1-2-1.magritte-has-central___VRZik_1-2-1 .magritte-text-input___3AFO4_1-2-1{
96
111
  grid-area:2 / 1 / 3 / -1;
97
112
  }
98
- .magritte-content-grid___g03sT_1-1-19.magritte-no-left-controls___7r6yy_1-1-19:not(.magritte-has-central___VRZik_1-1-19) .magritte-text-input___3AFO4_1-1-19{
113
+ .magritte-content-grid___g03sT_1-2-1.magritte-no-left-controls___7r6yy_1-2-1:not(.magritte-has-central___VRZik_1-2-1) .magritte-text-input___3AFO4_1-2-1{
99
114
  grid-area:2 / 1 / 4 / 3;
100
115
  }
101
- .magritte-content-grid___g03sT_1-1-19.magritte-no-right-controls___HBSag_1-1-19:not(.magritte-has-central___VRZik_1-1-19) .magritte-text-input___3AFO4_1-1-19{
116
+ .magritte-content-grid___g03sT_1-2-1.magritte-no-right-controls___HBSag_1-2-1:not(.magritte-has-central___VRZik_1-2-1) .magritte-text-input___3AFO4_1-2-1{
102
117
  grid-area:2 / 2 / 4 / -1;
103
118
  }
104
- .magritte-content-grid___g03sT_1-1-19.magritte-no-left-controls___7r6yy_1-1-19:not(.magritte-has-central___VRZik_1-1-19){
119
+ .magritte-content-grid___g03sT_1-2-1.magritte-no-left-controls___7r6yy_1-2-1:not(.magritte-has-central___VRZik_1-2-1){
105
120
  grid-template-rows:auto minmax(0, 1fr) auto;
106
121
  }
107
- .magritte-right___-tGcO_1-1-19,
108
- .magritte-left___7JZYp_1-1-19{
122
+ .magritte-right___-tGcO_1-2-1,
123
+ .magritte-left___7JZYp_1-2-1{
109
124
  display:flex;
110
125
  gap:8px;
111
126
  }
112
- .magritte-chips___gLao5_1-1-19{
127
+ .magritte-chips___gLao5_1-2-1{
113
128
  display:flex;
114
129
  flex-wrap:nowrap;
115
130
  width:max-content;
116
131
  gap:8px;
117
132
  }
118
- .magritte-chips-container___-bS5O_1-1-19{
133
+ .magritte-chips-container___-bS5O_1-2-1{
119
134
  padding:0 12px;
120
135
  }
121
- .magritte-no-left-controls___7r6yy_1-1-19 .magritte-chips-container___-bS5O_1-1-19{
136
+ .magritte-no-left-controls___7r6yy_1-2-1 .magritte-chips-container___-bS5O_1-2-1{
122
137
  padding-left:0;
123
138
  }
124
- .magritte-no-right-controls___HBSag_1-1-19 .magritte-chips-container___-bS5O_1-1-19{
139
+ .magritte-no-right-controls___HBSag_1-2-1 .magritte-chips-container___-bS5O_1-2-1{
125
140
  padding-right:0;
126
141
  }
127
- .magritte-preview-block___iiPdS_1-1-19{
142
+ .magritte-preview-block___iiPdS_1-2-1{
128
143
  display:flex;
129
144
  align-items:center;
130
145
  gap:12px;
131
146
  padding-bottom:8px;
132
147
  }
133
- .magritte-preview-side___ymR-u_1-1-19{
148
+ .magritte-preview-side___ymR-u_1-2-1{
134
149
  display:flex;
135
150
  flex-shrink:0;
136
151
  }
137
- .magritte-preview-content___ZgyBD_1-1-19{
152
+ .magritte-preview-content___ZgyBD_1-2-1{
138
153
  display:flex;
139
154
  flex:1;
140
155
  flex-direction:column;
141
156
  min-width:0;
142
157
  }
143
- .magritte-preview-title___SkFeZ_1-1-19{
158
+ .magritte-preview-title___SkFeZ_1-2-1{
144
159
  font-family:"hh sans";
145
160
  font-weight:500;
146
161
  line-height:18px;
@@ -149,9 +164,9 @@
149
164
  text-indent:0px;
150
165
  text-transform:none;
151
166
  text-decoration:none;
152
- color:var(--magritte-color-text-primary-v25-1-0);
167
+ color:var(--magritte-color-text-primary-v25-1-1);
153
168
  }
154
- .magritte-preview-subtitle___58qfR_1-1-19{
169
+ .magritte-preview-subtitle___58qfR_1-2-1{
155
170
  font-family:"hh sans";
156
171
  font-weight:400;
157
172
  line-height:20px;
@@ -161,14 +176,91 @@
161
176
  text-transform:none;
162
177
  text-decoration:none;
163
178
  overflow:hidden;
164
- color:var(--magritte-color-text-secondary-v25-1-0);
179
+ color:var(--magritte-color-text-secondary-v25-1-1);
180
+ white-space:nowrap;
181
+ text-overflow:ellipsis;
182
+ }
183
+ .magritte-files-container___zOkRK_1-2-1{
184
+ padding-bottom:8px;
185
+ }
186
+ .magritte-files___j2q5K_1-2-1{
187
+ display:flex;
188
+ flex-wrap:nowrap;
189
+ align-items:flex-start;
190
+ width:max-content;
191
+ gap:8px;
192
+ }
193
+ .magritte-file___lz9Ll_1-2-1{
194
+ position:relative;
195
+ }
196
+ .magritte-file-card___hn5C9_1-2-1::after,
197
+ .magritte-file-tile___OVlh3_1-2-1::after{
198
+ content:'';
199
+ position:absolute;
200
+ inset:0;
201
+ border:1px solid;
202
+ border-radius:inherit;
203
+ pointer-events:none;
204
+ }
205
+ .magritte-file-card___hn5C9_1-2-1{
206
+ position:relative;
207
+ box-sizing:border-box;
208
+ width:280px;
209
+ padding:8px;
210
+ border-radius:12px;
211
+ background-color:var(--magritte-color-background-primary-v25-1-1);
212
+ }
213
+ .magritte-file-card___hn5C9_1-2-1::after{
214
+ border-color:var(--magritte-color-stroke-neutral-v25-1-1);
215
+ }
216
+ .magritte-file-card-removable___GkxUe_1-2-1{
217
+ padding-right:32px;
218
+ }
219
+ .magritte-file-tile___OVlh3_1-2-1{
220
+ position:relative;
221
+ display:flex;
222
+ align-items:center;
223
+ justify-content:center;
224
+ width:64px;
225
+ height:64px;
226
+ overflow:hidden;
227
+ border-radius:12px;
228
+ }
229
+ .magritte-file-tile___OVlh3_1-2-1::after{
230
+ border-color:var(--magritte-color-stroke-phantom-v25-1-1);
231
+ }
232
+ .magritte-file-tile-placeholder___yxLuR_1-2-1{
233
+ background-color:var(--magritte-color-background-secondary-v25-1-1);
234
+ }
235
+ .magritte-file-tile-image___cZFgL_1-2-1{
236
+ display:block;
237
+ width:100%;
238
+ height:100%;
239
+ object-fit:cover;
240
+ }
241
+ .magritte-file-remove___S0WB9_1-2-1{
242
+ position:absolute;
243
+ top:4px;
244
+ right:4px;
245
+ display:flex;
246
+ }
247
+ .magritte-file-name___L03-O_1-2-1{
248
+ display:flex;
249
+ min-width:0;
250
+ }
251
+ .magritte-file-name-base___ojdp6_1-2-1{
252
+ overflow:hidden;
165
253
  white-space:nowrap;
166
254
  text-overflow:ellipsis;
167
255
  }
168
- .magritte-text-input-wrapper___TPbwC_1-1-19{
256
+ .magritte-file-name-extension___3QZtS_1-2-1{
257
+ flex-shrink:0;
258
+ white-space:nowrap;
259
+ }
260
+ .magritte-text-input-wrapper___TPbwC_1-2-1{
169
261
  display:contents;
170
262
  }
171
- .magritte-text-input___3AFO4_1-1-19{
263
+ .magritte-text-input___3AFO4_1-2-1{
172
264
  box-sizing:content-box;
173
265
  padding:0 12px;
174
266
  border:none;
@@ -190,34 +282,34 @@
190
282
  text-indent:0px;
191
283
  text-transform:none;
192
284
  text-decoration:none;
193
- color:var(--magritte-color-text-primary-v25-1-0);
285
+ color:var(--magritte-color-text-primary-v25-1-1);
194
286
  }
195
- .magritte-text-input___3AFO4_1-1-19::placeholder{
196
- color:var(--magritte-color-text-tertiary-v25-1-0);
287
+ .magritte-text-input___3AFO4_1-2-1::placeholder{
288
+ color:var(--magritte-color-text-tertiary-v25-1-1);
197
289
  opacity:1;
198
290
  }
199
- .magritte-text-input___3AFO4_1-1-19:focus,
200
- .magritte-text-input___3AFO4_1-1-19:focus-visible{
291
+ .magritte-text-input___3AFO4_1-2-1:focus,
292
+ .magritte-text-input___3AFO4_1-2-1:focus-visible{
201
293
  border:none;
202
294
  outline:none;
203
295
  }
204
- .magritte-text-input___3AFO4_1-1-19.magritte-with-top-fade___okgqo_1-1-19,
205
- .magritte-text-input___3AFO4_1-1-19.magritte-with-bottom-fade___82gr8_1-1-19{
296
+ .magritte-text-input___3AFO4_1-2-1.magritte-with-top-fade___okgqo_1-2-1,
297
+ .magritte-text-input___3AFO4_1-2-1.magritte-with-bottom-fade___82gr8_1-2-1{
206
298
  -webkit-mask:var(--fade-top) top / 100% 16px no-repeat, linear-gradient(#000, #000) center / 100% calc(100% - 32px) no-repeat, var(--fade-bottom) bottom / 100% 16px no-repeat;
207
299
  mask:var(--fade-top) top / 100% 16px no-repeat, linear-gradient(#000, #000) center / 100% calc(100% - 32px) no-repeat, var(--fade-bottom) bottom / 100% 16px no-repeat;
208
300
  }
209
- .magritte-text-input___3AFO4_1-1-19.magritte-with-top-fade___okgqo_1-1-19{
210
- --fade-top:linear-gradient(180deg, var(--magritte-gradient-component-chat-input-background-fade-v25-1-0));
301
+ .magritte-text-input___3AFO4_1-2-1.magritte-with-top-fade___okgqo_1-2-1{
302
+ --fade-top:linear-gradient(180deg, var(--magritte-gradient-component-chat-input-background-fade-v25-1-1));
211
303
  }
212
- .magritte-text-input___3AFO4_1-1-19.magritte-with-bottom-fade___82gr8_1-1-19{
213
- --fade-bottom:linear-gradient(0deg, var(--magritte-gradient-component-chat-input-background-fade-v25-1-0));
304
+ .magritte-text-input___3AFO4_1-2-1.magritte-with-bottom-fade___82gr8_1-2-1{
305
+ --fade-bottom:linear-gradient(0deg, var(--magritte-gradient-component-chat-input-background-fade-v25-1-1));
214
306
  }
215
- .magritte-text-input___3AFO4_1-1-19.magritte-measure___xNKc0_1-1-19{
307
+ .magritte-text-input___3AFO4_1-2-1.magritte-measure___xNKc0_1-2-1{
216
308
  height:20px !important;
217
309
  padding:0 !important;
218
310
  margin:0 !important;
219
311
  }
220
- .magritte-voice-record___p64PV_1-1-19{
312
+ .magritte-voice-record___p64PV_1-2-1{
221
313
  display:flex;
222
314
  align-items:center;
223
315
  justify-content:space-between;
@@ -227,45 +319,45 @@
227
319
  min-height:40px;
228
320
  gap:8px;
229
321
  }
230
- .magritte-voice-record-left___njEt-_1-1-19{
322
+ .magritte-voice-record-left___njEt-_1-2-1{
231
323
  display:flex;
232
324
  align-items:center;
233
325
  gap:8px;
234
326
  min-width:0;
235
327
  }
236
- .magritte-voice-record-right___UTv-U_1-1-19{
328
+ .magritte-voice-record-right___UTv-U_1-2-1{
237
329
  display:flex;
238
330
  align-items:center;
239
331
  gap:8px;
240
332
  }
241
- .magritte-voice-record-right___UTv-U_1-1-19.magritte-voice-processing___C0xnX_1-1-19{
333
+ .magritte-voice-record-right___UTv-U_1-2-1.magritte-voice-processing___C0xnX_1-2-1{
242
334
  padding:8px;
243
335
  }
244
- .magritte-voice-record-indicator___V8ybb_1-1-19{
336
+ .magritte-voice-record-indicator___V8ybb_1-2-1{
245
337
  display:flex;
246
338
  flex-shrink:0;
247
339
  align-items:center;
248
340
  gap:2px;
249
341
  }
250
- .magritte-voice-record-indicator-bar___jgyqz_1-1-19{
342
+ .magritte-voice-record-indicator-bar___jgyqz_1-2-1{
251
343
  width:2px;
252
344
  min-height:2px;
253
345
  max-height:2px;
254
346
  border-radius:1000px;
255
- background-color:var(--magritte-color-icon-tertiary-v25-1-0);
256
- transition:max-height var(--magritte-semantic-animation-time-s-duration-v25-1-0) var(--magritte-semantic-animation-ease-base-timing-function-v25-1-0);
257
- animation:magritte-voice-record-indicator-wave___4VsyE_1-1-19 400ms linear infinite alternate paused;
347
+ background-color:var(--magritte-color-icon-tertiary-v25-1-1);
348
+ transition:max-height var(--magritte-semantic-animation-time-s-duration-v25-1-1) var(--magritte-semantic-animation-ease-base-timing-function-v25-1-1);
349
+ animation:magritte-voice-record-indicator-wave___4VsyE_1-2-1 400ms linear infinite alternate paused;
258
350
  }
259
- .magritte-voice-record-indicator-has-sound___67t5g_1-1-19 .magritte-voice-record-indicator-bar___jgyqz_1-1-19{
351
+ .magritte-voice-record-indicator-has-sound___67t5g_1-2-1 .magritte-voice-record-indicator-bar___jgyqz_1-2-1{
260
352
  max-height:27px;
261
353
  animation-play-state:running;
262
354
  }
263
355
  @media (prefers-reduced-motion: reduce){
264
- .magritte-voice-record-indicator-has-sound___67t5g_1-1-19 .magritte-voice-record-indicator-bar___jgyqz_1-1-19{
356
+ .magritte-voice-record-indicator-has-sound___67t5g_1-2-1 .magritte-voice-record-indicator-bar___jgyqz_1-2-1{
265
357
  animation-play-state:paused;
266
358
  }
267
359
  }
268
- @keyframes magritte-voice-record-indicator-wave___4VsyE_1-1-19{
360
+ @keyframes magritte-voice-record-indicator-wave___4VsyE_1-2-1{
269
361
  from{
270
362
  height:calc(var(--target-height) * 0.62px);
271
363
  }
@@ -273,12 +365,12 @@
273
365
  height:calc(var(--target-height) * 1.22px);
274
366
  }
275
367
  }
276
- .magritte-mode-container___nATVD_1-1-19{
368
+ .magritte-mode-container___nATVD_1-2-1{
277
369
  position:relative;
278
370
  display:grid;
279
371
  align-content:end;
280
372
  }
281
- .magritte-voice-overlay___LbxAI_1-1-19{
373
+ .magritte-voice-overlay___LbxAI_1-2-1{
282
374
  position:absolute;
283
375
  right:0;
284
376
  bottom:0;
package/index.d.ts CHANGED
@@ -2,6 +2,9 @@ export { ChatInput } from '@hh.ru/magritte-ui-chat-input/public/ChatInput';
2
2
  export { type ChatInputProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInput';
3
3
  export { type ChatInputVoiceRecordConfig } from '@hh.ru/magritte-ui-chat-input/types';
4
4
  export { type ChatInputChipsProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputChips';
5
+ export { type ChatInputFileProps, type ChatInputFileState, type ChatInputFileType, } from '@hh.ru/magritte-ui-chat-input/public/ChatInputFile';
6
+ export { getChatInputFileType } from '@hh.ru/magritte-ui-chat-input/public/getChatInputFileType';
7
+ export { type ChatInputFilesProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputFiles';
5
8
  export { type ChatInputPreviewProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputPreview';
6
9
  export { type ChatInputSendButtonProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputSendButton';
7
10
  export { type ChatInputVoiceButtonProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputVoiceButton';
package/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import './index.css';
2
2
  export { ChatInput } from './public/ChatInput.js';
3
+ export { getChatInputFileType } from './public/getChatInputFileType.js';
3
4
  import 'react/jsx-runtime';
4
5
  import 'react';
5
6
  import 'classnames';
@@ -9,7 +10,7 @@ import './internal/ChatInputContext.js';
9
10
  import './internal/ModeTransition.js';
10
11
  import 'motion/react';
11
12
  import '@hh.ru/magritte-design-tokens/core-tokens';
12
- import './styles-CXscNVWO.js';
13
+ import './styles-B3o1JdaK.js';
13
14
  import './internal/TextInput.js';
14
15
  import './internal/useSendOnEnter.js';
15
16
  import '@hh.ru/magritte-common-keyboard';
@@ -28,8 +29,14 @@ import './internal/useVoiceRecordSession.js';
28
29
  import './internal/voiceSlotRegistry.js';
29
30
  import '@hh.ru/magritte-internal-slot-registry';
30
31
  import './public/ChatInputChips.js';
32
+ import './internal/flattenFragments.js';
31
33
  import '@hh.ru/magritte-ui-chips';
32
34
  import '@hh.ru/magritte-ui-scrollable-container';
35
+ import './public/ChatInputFile.js';
36
+ import '@hh.ru/magritte-ui-cell';
37
+ import './internal/useObjectUrl.js';
38
+ import '@hh.ru/magritte-ui-link';
39
+ import './public/ChatInputFiles.js';
33
40
  import './public/ChatInputPreview.js';
34
41
  import '@hh.ru/magritte-ui-icon';
35
42
  import './public/ChatInputSendButton.js';
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/index.mock.d.ts CHANGED
@@ -1,6 +1,9 @@
1
1
  export { type ChatInputProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInput';
2
2
  export { type ChatInputVoiceRecordConfig } from '@hh.ru/magritte-ui-chat-input/types';
3
3
  export { type ChatInputChipsProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputChips';
4
+ export { type ChatInputFileProps, type ChatInputFileState, type ChatInputFileType, } from '@hh.ru/magritte-ui-chat-input/public/ChatInputFile';
5
+ export { getChatInputFileType } from '@hh.ru/magritte-ui-chat-input/public/getChatInputFileType';
6
+ export { type ChatInputFilesProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputFiles';
4
7
  export { type ChatInputPreviewProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputPreview';
5
8
  export { type ChatInputSendButtonProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputSendButton';
6
9
  export { type ChatInputVoiceButtonProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputVoiceButton';
package/index.mock.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import './index.css';
2
+ export { getChatInputFileType } from './public/getChatInputFileType.js';
2
3
  import { jsxs, jsx } from 'react/jsx-runtime';
3
4
  import { forwardRef } from 'react';
4
5
 
@@ -35,6 +36,10 @@ const staticProps = {
35
36
  Chips: mockComponent('Chips', undefined, {
36
37
  withChildren: true,
37
38
  }),
39
+ File: mockComponent('File'),
40
+ Files: mockComponent('Files', undefined, {
41
+ withChildren: true,
42
+ }),
38
43
  Preview: mockComponent('Preview'),
39
44
  SendButton: mockComponent('SendButton'),
40
45
  VoiceButton: mockComponent('VoiceButton'),
package/index.mock.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mock.js","sources":["../mock-component/lib/setupMockComponent.js","src/index.mock.ts"],"sourcesContent":["import { jsxs, jsx } from 'react/jsx-runtime';\nimport { forwardRef } from 'react';\n\nfunction enhance(mockComponent, staticProps) {\n // удаляем внутренний свойства реакта, чтобы не перезаписать ими mockComponent\n delete staticProps.type;\n delete staticProps.$$typeof;\n delete staticProps.render;\n for (const prop in staticProps) {\n mockComponent[prop] = staticProps[prop];\n }\n}\nconst MockComponent = ({ style, ...props }) => (\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\n// eslint-disable-next-line react/jsx-no-undef\njsx(\"magritte-component-mock\", { \"style-data\": style, ...props }));\nconst MockComponentRenderProp = ({ style, ...props }) => (\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\n// eslint-disable-next-line react/jsx-no-undef\njsx(\"magritte-component-mock-render-prop\", { \"style-data\": style, ...props }));\n/**\n * Возвращает mock React компонента\n */\nconst mockComponent = (componentName, staticProps = {}, { withChildren, innerDependence, WrapperComponent } = {}) => {\n const mockWrapper = forwardRef(({ children, ...props }, ref) => {\n const mock = (\n // eslint-disable-next-line react/jsx-no-undef\n jsxs(MockComponent, { ...props, _component: componentName, children: [innerDependence ? innerDependence(props, ref) : null, withChildren ? children : null] }));\n return WrapperComponent ? jsx(WrapperComponent, { ...props, children: mock }) : mock;\n });\n staticProps && enhance(mockWrapper, staticProps);\n mockWrapper.displayName = 'magritte-ref';\n return mockWrapper;\n};\n/**\n * Возвращает mock React компонента, который рендерит переданный в него пропс render\n *\n * @param {String} componentName наименование компонента\n * @param {Object} [staticProps] объект со свойствами, которыми необходимо усилить mock\n * @param {Object} [options] параметры мока\n * @param {boolean} [options.withChildren] флаг отвечает за рендеринг children компонента\n * @param {React.Component} [options.innerDependence] Реакт компонент, который рендерится внутри мока.\n * Необходим, когда mock компоненту требуется иметь\n * дополнительные элементы\n */\nconst mockComponentRenderProp = (componentName, staticProps, { withChildren, innerDependence, renderArguments } = { renderArguments: [] }) => {\n const mockWrapper = ({ render, children, ...props }) => (jsxs(MockComponentRenderProp, { ...props, _component: componentName, children: [innerDependence ? innerDependence(props) : null, withChildren ? children : null, render?.(...(renderArguments || []))] }));\n staticProps && enhance(mockWrapper, staticProps);\n mockWrapper.displayName = 'magritte-component-mock-render-prop';\n return mockWrapper;\n};\n\nexport { mockComponent, mockComponentRenderProp };\n//# sourceMappingURL=setupMockComponent.js.map\n","import { mockComponent } from '@hh.ru/magritte-ui-mock-component';\n\nexport { type ChatInputProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInput';\nexport { type ChatInputVoiceRecordConfig } from '@hh.ru/magritte-ui-chat-input/types';\nexport { type ChatInputChipsProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputChips';\nexport { type ChatInputPreviewProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputPreview';\nexport { type ChatInputSendButtonProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputSendButton';\nexport { type ChatInputVoiceButtonProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputVoiceButton';\n\nconst staticProps = {\n Chips: mockComponent('Chips', undefined, {\n withChildren: true,\n }),\n Preview: mockComponent('Preview'),\n SendButton: mockComponent('SendButton'),\n VoiceButton: mockComponent('VoiceButton'),\n};\n\nexport const ChatInput = mockComponent('ChatInput', staticProps, {\n withChildren: true,\n});\n"],"names":[],"mappings":";;;AAGA,SAAS,OAAO,CAAC,aAAa,EAAE,WAAW,EAAE;AAC7C;AACA,IAAI,OAAO,WAAW,CAAC,IAAI,CAAC;AAC5B,IAAI,OAAO,WAAW,CAAC,QAAQ,CAAC;AAChC,IAAI,OAAO,WAAW,CAAC,MAAM,CAAC;AAC9B,IAAI,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE;AACpC,QAAQ,aAAa,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;AAChD,KAAK;AACL,CAAC;AACD,MAAM,aAAa,GAAG,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE;AAC1C;AACA;AACA;AACA,GAAG,CAAC,yBAAyB,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC;AAMnE;AACA;AACA;AACA,MAAM,aAAa,GAAG,CAAC,aAAa,EAAE,WAAW,GAAG,EAAE,EAAE,EAAE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,EAAE,KAAK;AACrH,IAAI,MAAM,WAAW,GAAG,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,KAAK;AACpE,QAAQ,MAAM,IAAI;AAClB;AACA,QAAQ,IAAI,CAAC,aAAa,EAAE,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC,eAAe,GAAG,eAAe,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,YAAY,GAAG,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;AACxK,QAAQ,OAAO,gBAAgB,GAAG,GAAG,CAAC,gBAAgB,EAAE,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;AAC7F,KAAK,CAAC,CAAC;AACP,IAAI,WAAW,IAAI,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AACrD,IAAI,WAAW,CAAC,WAAW,GAAG,cAAc,CAAC;AAC7C,IAAI,OAAO,WAAW,CAAC;AACvB,CAAC;;AC1BD,MAAM,WAAW,GAAG;AAChB,IAAA,KAAK,EAAE,aAAa,CAAC,OAAO,EAAE,SAAS,EAAE;AACrC,QAAA,YAAY,EAAE,IAAI;KACrB,CAAC;AACF,IAAA,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC;AACjC,IAAA,UAAU,EAAE,aAAa,CAAC,YAAY,CAAC;AACvC,IAAA,WAAW,EAAE,aAAa,CAAC,aAAa,CAAC;CAC5C,CAAC;MAEW,SAAS,GAAG,aAAa,CAAC,WAAW,EAAE,WAAW,EAAE;AAC7D,IAAA,YAAY,EAAE,IAAI;AACrB,CAAA;;;;"}
1
+ {"version":3,"file":"index.mock.js","sources":["../mock-component/lib/setupMockComponent.js","src/index.mock.ts"],"sourcesContent":["import { jsxs, jsx } from 'react/jsx-runtime';\nimport { forwardRef } from 'react';\n\nfunction enhance(mockComponent, staticProps) {\n // удаляем внутренний свойства реакта, чтобы не перезаписать ими mockComponent\n delete staticProps.type;\n delete staticProps.$$typeof;\n delete staticProps.render;\n for (const prop in staticProps) {\n mockComponent[prop] = staticProps[prop];\n }\n}\nconst MockComponent = ({ style, ...props }) => (\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\n// eslint-disable-next-line react/jsx-no-undef\njsx(\"magritte-component-mock\", { \"style-data\": style, ...props }));\nconst MockComponentRenderProp = ({ style, ...props }) => (\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\n// eslint-disable-next-line react/jsx-no-undef\njsx(\"magritte-component-mock-render-prop\", { \"style-data\": style, ...props }));\n/**\n * Возвращает mock React компонента\n */\nconst mockComponent = (componentName, staticProps = {}, { withChildren, innerDependence, WrapperComponent } = {}) => {\n const mockWrapper = forwardRef(({ children, ...props }, ref) => {\n const mock = (\n // eslint-disable-next-line react/jsx-no-undef\n jsxs(MockComponent, { ...props, _component: componentName, children: [innerDependence ? innerDependence(props, ref) : null, withChildren ? children : null] }));\n return WrapperComponent ? jsx(WrapperComponent, { ...props, children: mock }) : mock;\n });\n staticProps && enhance(mockWrapper, staticProps);\n mockWrapper.displayName = 'magritte-ref';\n return mockWrapper;\n};\n/**\n * Возвращает mock React компонента, который рендерит переданный в него пропс render\n *\n * @param {String} componentName наименование компонента\n * @param {Object} [staticProps] объект со свойствами, которыми необходимо усилить mock\n * @param {Object} [options] параметры мока\n * @param {boolean} [options.withChildren] флаг отвечает за рендеринг children компонента\n * @param {React.Component} [options.innerDependence] Реакт компонент, который рендерится внутри мока.\n * Необходим, когда mock компоненту требуется иметь\n * дополнительные элементы\n */\nconst mockComponentRenderProp = (componentName, staticProps, { withChildren, innerDependence, renderArguments } = { renderArguments: [] }) => {\n const mockWrapper = ({ render, children, ...props }) => (jsxs(MockComponentRenderProp, { ...props, _component: componentName, children: [innerDependence ? innerDependence(props) : null, withChildren ? children : null, render?.(...(renderArguments || []))] }));\n staticProps && enhance(mockWrapper, staticProps);\n mockWrapper.displayName = 'magritte-component-mock-render-prop';\n return mockWrapper;\n};\n\nexport { mockComponent, mockComponentRenderProp };\n//# sourceMappingURL=setupMockComponent.js.map\n","import { mockComponent } from '@hh.ru/magritte-ui-mock-component';\n\nexport { type ChatInputProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInput';\nexport { type ChatInputVoiceRecordConfig } from '@hh.ru/magritte-ui-chat-input/types';\nexport { type ChatInputChipsProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputChips';\nexport {\n type ChatInputFileProps,\n type ChatInputFileState,\n type ChatInputFileType,\n} from '@hh.ru/magritte-ui-chat-input/public/ChatInputFile';\nexport { getChatInputFileType } from '@hh.ru/magritte-ui-chat-input/public/getChatInputFileType';\nexport { type ChatInputFilesProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputFiles';\nexport { type ChatInputPreviewProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputPreview';\nexport { type ChatInputSendButtonProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputSendButton';\nexport { type ChatInputVoiceButtonProps } from '@hh.ru/magritte-ui-chat-input/public/ChatInputVoiceButton';\n\nconst staticProps = {\n Chips: mockComponent('Chips', undefined, {\n withChildren: true,\n }),\n File: mockComponent('File'),\n Files: mockComponent('Files', undefined, {\n withChildren: true,\n }),\n Preview: mockComponent('Preview'),\n SendButton: mockComponent('SendButton'),\n VoiceButton: mockComponent('VoiceButton'),\n};\n\nexport const ChatInput = mockComponent('ChatInput', staticProps, {\n withChildren: true,\n});\n"],"names":[],"mappings":";;;;AAGA,SAAS,OAAO,CAAC,aAAa,EAAE,WAAW,EAAE;AAC7C;AACA,IAAI,OAAO,WAAW,CAAC,IAAI,CAAC;AAC5B,IAAI,OAAO,WAAW,CAAC,QAAQ,CAAC;AAChC,IAAI,OAAO,WAAW,CAAC,MAAM,CAAC;AAC9B,IAAI,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE;AACpC,QAAQ,aAAa,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;AAChD,KAAK;AACL,CAAC;AACD,MAAM,aAAa,GAAG,CAAC,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE;AAC1C;AACA;AACA;AACA,GAAG,CAAC,yBAAyB,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC;AAMnE;AACA;AACA;AACA,MAAM,aAAa,GAAG,CAAC,aAAa,EAAE,WAAW,GAAG,EAAE,EAAE,EAAE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,GAAG,EAAE,KAAK;AACrH,IAAI,MAAM,WAAW,GAAG,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,KAAK;AACpE,QAAQ,MAAM,IAAI;AAClB;AACA,QAAQ,IAAI,CAAC,aAAa,EAAE,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC,eAAe,GAAG,eAAe,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,YAAY,GAAG,QAAQ,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;AACxK,QAAQ,OAAO,gBAAgB,GAAG,GAAG,CAAC,gBAAgB,EAAE,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;AAC7F,KAAK,CAAC,CAAC;AACP,IAAI,WAAW,IAAI,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;AACrD,IAAI,WAAW,CAAC,WAAW,GAAG,cAAc,CAAC;AAC7C,IAAI,OAAO,WAAW,CAAC;AACvB,CAAC;;ACnBD,MAAM,WAAW,GAAG;AAChB,IAAA,KAAK,EAAE,aAAa,CAAC,OAAO,EAAE,SAAS,EAAE;AACrC,QAAA,YAAY,EAAE,IAAI;KACrB,CAAC;AACF,IAAA,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC;AAC3B,IAAA,KAAK,EAAE,aAAa,CAAC,OAAO,EAAE,SAAS,EAAE;AACrC,QAAA,YAAY,EAAE,IAAI;KACrB,CAAC;AACF,IAAA,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC;AACjC,IAAA,UAAU,EAAE,aAAa,CAAC,YAAY,CAAC;AACvC,IAAA,WAAW,EAAE,aAAa,CAAC,aAAa,CAAC;CAC5C,CAAC;MAEW,SAAS,GAAG,aAAa,CAAC,WAAW,EAAE,WAAW,EAAE;AAC7D,IAAA,YAAY,EAAE,IAAI;AACrB,CAAA;;;;"}
@@ -2,7 +2,7 @@ import './../index.css';
2
2
  import { jsxs, jsx } from 'react/jsx-runtime';
3
3
  import { useReducedMotion, motion } from 'motion/react';
4
4
  import CoreTokens from '@hh.ru/magritte-design-tokens/core-tokens';
5
- import { s as styles } from '../styles-CXscNVWO.js';
5
+ import { s as styles } from '../styles-B3o1JdaK.js';
6
6
 
7
7
  const EASE_BASE = [
8
8
  CoreTokens['magritte-semantic-animation-ease-base'].x1,
@@ -5,7 +5,7 @@ import classNames from 'classnames';
5
5
  import { useMultipleRefs } from '@hh.ru/magritte-common-use-multiple-refs';
6
6
  import { useSendOnEnter } from './useSendOnEnter.js';
7
7
  import { useScrollbar, Scrollbar } from '@hh.ru/magritte-ui-scrollbar';
8
- import { s as styles } from '../styles-CXscNVWO.js';
8
+ import { s as styles } from '../styles-B3o1JdaK.js';
9
9
  import '@hh.ru/magritte-common-keyboard';
10
10
 
11
11
  const MIN_HEIGHT = 20;
@@ -70,7 +70,7 @@ const useTextInputHeight = ({ inputRef, layout, maxHeight, containerWidth, value
70
70
  setCurrentState(newState);
71
71
  }
72
72
  // currentState не должно быть в зависимостях, иначе зациклится обновление
73
- // eslint-disable-next-line disable-autofix/react-hooks/exhaustive-deps
73
+ // eslint-disable-next-line react-hooks/exhaustive-deps
74
74
  }, [layout, maxHeight, value, inputRef, containerWidth]);
75
75
  return currentState;
76
76
  };