stream-chat-angular 5.0.0-v5.9 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (122) hide show
  1. package/assets/i18n/en.d.ts +1 -0
  2. package/assets/version.d.ts +1 -1
  3. package/esm2020/assets/i18n/en.mjs +3 -2
  4. package/esm2020/assets/version.mjs +2 -2
  5. package/esm2020/lib/attachment-list/attachment-list.component.mjs +3 -3
  6. package/esm2020/lib/attachment-preview-list/attachment-preview-list.component.mjs +3 -3
  7. package/esm2020/lib/attachment.service.mjs +103 -7
  8. package/esm2020/lib/avatar/avatar.component.mjs +6 -9
  9. package/esm2020/lib/avatar-placeholder/avatar-placeholder.component.mjs +3 -11
  10. package/esm2020/lib/channel/channel.component.mjs +5 -6
  11. package/esm2020/lib/channel-header/channel-header.component.mjs +3 -3
  12. package/esm2020/lib/channel-list/channel-list.component.mjs +6 -7
  13. package/esm2020/lib/channel-preview/channel-preview.component.mjs +3 -3
  14. package/esm2020/lib/channel-query.mjs +77 -0
  15. package/esm2020/lib/channel.service.mjs +184 -137
  16. package/esm2020/lib/chat-client.service.mjs +33 -11
  17. package/esm2020/lib/custom-templates.service.mjs +6 -10
  18. package/esm2020/lib/icon/icon.component.mjs +3 -7
  19. package/esm2020/lib/icon-placeholder/icon-placeholder.component.mjs +4 -7
  20. package/esm2020/lib/loading-indicator/loading-indicator.component.mjs +6 -22
  21. package/esm2020/lib/loading-indicator-placeholder/loading-indicator-placeholder.component.mjs +5 -23
  22. package/esm2020/lib/message/message.component.mjs +129 -16
  23. package/esm2020/lib/message-actions-box/message-actions-box.component.mjs +39 -14
  24. package/esm2020/lib/message-actions.service.mjs +68 -4
  25. package/esm2020/lib/message-input/autocomplete-textarea/autocomplete-textarea.component.mjs +16 -6
  26. package/esm2020/lib/message-input/message-input.component.mjs +76 -74
  27. package/esm2020/lib/message-input/textarea/textarea.component.mjs +13 -1
  28. package/esm2020/lib/message-list/message-list.component.mjs +201 -201
  29. package/esm2020/lib/message-reactions/message-reactions.component.mjs +7 -78
  30. package/esm2020/lib/message-reactions-selector/message-reactions-selector.component.mjs +61 -0
  31. package/esm2020/lib/modal/modal.component.mjs +1 -1
  32. package/esm2020/lib/stream-chat.module.mjs +8 -8
  33. package/esm2020/lib/thread/thread.component.mjs +3 -3
  34. package/esm2020/lib/types.mjs +1 -1
  35. package/esm2020/lib/virtualized-list.service.mjs +271 -0
  36. package/esm2020/lib/virtualized-message-list.service.mjs +73 -0
  37. package/esm2020/lib/voice-recording/voice-recording.component.mjs +4 -4
  38. package/esm2020/public-api.mjs +5 -2
  39. package/fesm2015/stream-chat-angular.mjs +3207 -2533
  40. package/fesm2015/stream-chat-angular.mjs.map +1 -1
  41. package/fesm2020/stream-chat-angular.mjs +3144 -2479
  42. package/fesm2020/stream-chat-angular.mjs.map +1 -1
  43. package/lib/attachment.service.d.ts +11 -4
  44. package/lib/avatar/avatar.component.d.ts +4 -7
  45. package/lib/avatar-placeholder/avatar-placeholder.component.d.ts +1 -5
  46. package/lib/channel-list/channel-list.component.d.ts +1 -1
  47. package/lib/channel-query.d.ts +26 -0
  48. package/lib/channel.service.d.ts +81 -58
  49. package/lib/chat-client.service.d.ts +7 -3
  50. package/lib/custom-templates.service.d.ts +8 -12
  51. package/lib/icon/icon.component.d.ts +2 -6
  52. package/lib/icon-placeholder/icon-placeholder.component.d.ts +1 -5
  53. package/lib/loading-indicator/loading-indicator.component.d.ts +1 -10
  54. package/lib/loading-indicator-placeholder/loading-indicator-placeholder.component.d.ts +1 -11
  55. package/lib/message/message.component.d.ts +31 -9
  56. package/lib/message-actions-box/message-actions-box.component.d.ts +11 -6
  57. package/lib/message-actions.service.d.ts +3 -2
  58. package/lib/message-input/autocomplete-textarea/autocomplete-textarea.component.d.ts +1 -0
  59. package/lib/message-input/message-input.component.d.ts +19 -7
  60. package/lib/message-input/textarea/textarea.component.d.ts +1 -0
  61. package/lib/message-list/message-list.component.d.ts +16 -17
  62. package/lib/message-reactions/message-reactions.component.d.ts +6 -30
  63. package/lib/message-reactions-selector/message-reactions-selector.component.d.ts +35 -0
  64. package/lib/stream-chat.module.d.ts +5 -5
  65. package/lib/types.d.ts +35 -29
  66. package/lib/virtualized-list.service.d.ts +58 -0
  67. package/lib/virtualized-message-list.service.d.ts +15 -0
  68. package/package.json +5 -5
  69. package/public-api.d.ts +4 -1
  70. package/src/assets/assets/EmojiOneColor.woff2 +0 -0
  71. package/src/assets/assets/NotoColorEmoji-flags.woff2 +0 -0
  72. package/src/assets/assets/Poweredby_100px-White_VertText.png +0 -0
  73. package/src/assets/assets/icons/stream-chat-icons.eot +0 -0
  74. package/src/assets/assets/icons/stream-chat-icons.svg +46 -0
  75. package/src/assets/assets/icons/stream-chat-icons.ttf +0 -0
  76. package/src/assets/assets/icons/stream-chat-icons.woff +0 -0
  77. package/src/assets/assets/icons/stream-chat-icons.woff2 +0 -0
  78. package/src/assets/assets/str-chat__reaction-list-sprite@1x.png +0 -0
  79. package/src/assets/assets/str-chat__reaction-list-sprite@2x.png +0 -0
  80. package/src/assets/assets/str-chat__reaction-list-sprite@3x.png +0 -0
  81. package/src/assets/i18n/en.ts +2 -1
  82. package/src/assets/styles/css/index.css +2 -2
  83. package/src/assets/styles/css/index.layout.css +2 -2
  84. package/src/assets/styles/scss/AttachmentList/AttachmentList-layout.scss +74 -12
  85. package/src/assets/styles/scss/AttachmentList/AttachmentList-theme.scss +52 -0
  86. package/src/assets/styles/scss/AttachmentPreviewList/AttachmentPreviewList-layout.scss +24 -9
  87. package/src/assets/styles/scss/AttachmentPreviewList/AttachmentPreviewList-theme.scss +29 -0
  88. package/src/assets/styles/scss/AudioRecorder/AudioRecorder-layout.scss +89 -0
  89. package/src/assets/styles/scss/AudioRecorder/AudioRecorder-theme.scss +51 -0
  90. package/src/assets/styles/scss/Autocomplete/Autocomplete-layout.scss +1 -1
  91. package/src/assets/styles/scss/Avatar/Avatar-layout.scss +46 -0
  92. package/src/assets/styles/scss/Channel/Channel-layout.scss +1 -0
  93. package/src/assets/styles/scss/Channel/Channel-theme.scss +1 -0
  94. package/src/assets/styles/scss/ChannelList/ChannelList-layout.scss +2 -2
  95. package/src/assets/styles/scss/ChannelList/ChannelList-theme.scss +4 -2
  96. package/src/assets/styles/scss/ChannelPreview/ChannelPreview-layout.scss +2 -0
  97. package/src/assets/styles/scss/ChannelPreview/ChannelPreview-theme.scss +1 -0
  98. package/src/assets/styles/scss/EditMessageForm/EditMessageForm-theme.scss +9 -9
  99. package/src/assets/styles/scss/Icon/Icon-layout.scss +87 -0
  100. package/src/assets/styles/scss/Icon/Icon-theme.scss +13 -0
  101. package/src/assets/styles/scss/ImageCarousel/ImageCarousel-layout.scss +1 -0
  102. package/src/assets/styles/scss/ImageCarousel/ImageCarousel-theme.scss +1 -0
  103. package/src/assets/styles/scss/LoadingIndicator/LoadingIndicator-layout.scss +26 -1
  104. package/src/assets/styles/scss/LoadingIndicator/LoadingIndicator-theme.scss +6 -4
  105. package/src/assets/styles/scss/Message/Message-layout.scss +45 -6
  106. package/src/assets/styles/scss/Message/Message-theme.scss +6 -0
  107. package/src/assets/styles/scss/MessageInput/MessageInput-layout.scss +33 -1
  108. package/src/assets/styles/scss/MessageInput/MessageInput-theme.scss +65 -2
  109. package/src/assets/styles/scss/MessageList/MessageList-theme.scss +2 -0
  110. package/src/assets/styles/scss/MessageReactions/MessageReactionsSelector-layout.scss +18 -0
  111. package/src/assets/styles/scss/MessageReactions/MessageReactionsSelector-theme.scss +5 -0
  112. package/src/assets/styles/scss/Modal/Modal-layout.scss +1 -0
  113. package/src/assets/styles/scss/Modal/Modal-theme.scss +6 -0
  114. package/src/assets/styles/scss/_base.scss +4 -2
  115. package/src/assets/styles/scss/_emoji-replacement.scss +4 -2
  116. package/src/assets/styles/scss/_icons.scss +24 -2
  117. package/src/assets/styles/scss/_variables.scss +2 -0
  118. package/src/assets/styles/scss/index.layout.scss +2 -0
  119. package/src/assets/styles/scss/index.scss +2 -0
  120. package/src/assets/version.ts +1 -1
  121. package/esm2020/lib/edit-message-form/edit-message-form.component.mjs +0 -83
  122. package/lib/edit-message-form/edit-message-form.component.d.ts +0 -31
@@ -1,10 +1,19 @@
1
- // todo: this is a copy of src/styles/LoadingIndicator.scss - find a shared folder for it
1
+ .str-chat {
2
+ /* The size of the loading indicator, only available in Angular v5+ */
3
+ --str-chat__loading-indicator-size: calc(var(--str-chat__spacing-px) * 15);
4
+ }
5
+
2
6
  .str-chat__loading-indicator {
3
7
  display: flex;
4
8
  align-items: center;
5
9
  justify-content: center;
6
10
  animation: rotate 1s linear infinite;
7
11
 
12
+ svg {
13
+ width: var(--str-chat__loading-indicator-size);
14
+ height: var(--str-chat__loading-indicator-size);
15
+ }
16
+
8
17
  @-webkit-keyframes rotate {
9
18
  from {
10
19
  -webkit-transform: rotate(0deg);
@@ -37,3 +46,19 @@
37
46
  }
38
47
  }
39
48
  }
49
+
50
+ stream-loading-indicator {
51
+ display: flex;
52
+ align-items: center;
53
+ justify-content: center;
54
+
55
+ .str-chat__loading-indicator {
56
+ width: var(--str-chat__loading-indicator-size);
57
+ height: var(--str-chat__loading-indicator-size);
58
+ }
59
+ }
60
+
61
+ .str-chat__loading-indicator-placeholder {
62
+ width: var(--str-chat__loading-indicator-size);
63
+ height: var(--str-chat__loading-indicator-size);
64
+ }
@@ -1,11 +1,13 @@
1
+ .str-chat {
2
+ /* The color of the loading indicator */
3
+ --str-chat__loading-indicator-color: var(--str-chat__primary-color);
4
+ }
5
+
1
6
  .str-chat__loading-indicator {
2
7
  svg {
3
8
  linearGradient {
4
9
  stop:last-child {
5
- stop-color: var(
6
- --str-chat__loading-indicator-color,
7
- var(--str-chat__primary-color, #006cff)
8
- );
10
+ stop-color: var(--str-chat__loading-indicator-color);
9
11
  }
10
12
  }
11
13
  }
@@ -1,7 +1,7 @@
1
1
  @use '../utils';
2
2
 
3
3
  .str-chat {
4
- /* The width/height of the message options buttons */
4
+ /* The width/height of the message options button(s), for Angular SDK it's only used on desktop devices starting from version 5 */
5
5
  --str-chat__message-options-button-size: calc(var(--str-chat__spacing-px) * 26);
6
6
 
7
7
  /* The maximum allowed width of the message component */
@@ -26,9 +26,19 @@
26
26
  }
27
27
 
28
28
  .str-chat__message {
29
+ --str-chat-message-options-size: calc(3 * var(--str-chat__message-options-button-size));
30
+
31
+ &.str-chat__message-without-touch-support {
32
+ --str-chat-message-options-size: calc(1 * var(--str-chat__message-options-button-size));
33
+ }
34
+
29
35
  .str-chat__message-bubble {
30
36
  max-width: var(--str-chat__message-max-width);
31
37
  }
38
+
39
+ .str-chat__message-options {
40
+ --str-chat-icon-height: calc(var(--str-chat__message-options-button-size) * 0.7);
41
+ }
32
42
  }
33
43
 
34
44
  .str-chat__message.str-chat__message--has-attachment {
@@ -123,7 +133,7 @@
123
133
  align-items: flex-start;
124
134
  justify-content: flex-end;
125
135
  flex-direction: row-reverse;
126
- width: calc(3 * var(--str-chat__message-options-button-size));
136
+ width: var(--str-chat-message-options-size);
127
137
 
128
138
  .str-chat__message-actions-box-button,
129
139
  .str-chat__message-reply-in-thread-button,
@@ -218,6 +228,7 @@
218
228
  }
219
229
 
220
230
  .str-chat__message-status {
231
+ --str-chat-icon-height: calc(var(--str-chat__spacing-px) * 15);
221
232
  @include utils.flex-row-center;
222
233
  column-gap: var(--str-chat__spacing-0_5);
223
234
  position: relative;
@@ -282,8 +293,8 @@
282
293
  }
283
294
 
284
295
  // Message options display - default mode: they appear when .str-chat__li is hovered
285
- .str-chat__ul:not(.str-chat__message-options-in-bubble),
286
- .str-chat__virtual-list:not(.str-chat__message-options-in-bubble) {
296
+ .str-chat__ul:not(.str-chat__message-options-in-bubble, .str-chat__message-with-touch-support),
297
+ .str-chat__virtual-list:not(.str-chat__message-options-in-bubble, .str-chat__message-with-touch-support) {
287
298
  /* This rule won't be applied in browsers that don't support :has() */
288
299
  .str-chat__li:hover:not(:has(.str-chat__reaction-list:hover, .str-chat__modal--open)),
289
300
  .str-chat__li:focus-within:not(:has(.str-chat__reaction-list:focus-within, .str-chat__modal--open)) {
@@ -350,11 +361,11 @@
350
361
  }
351
362
 
352
363
  .str-chat__message--other .str-chat__message-inner {
353
- margin-inline-end: calc(var(--str-chat__message-options-button-size) * 3);
364
+ margin-inline-end: var(--str-chat-message-options-size);
354
365
  }
355
366
 
356
367
  .str-chat__message--me .str-chat__message-inner {
357
- margin-inline-start: calc(var(--str-chat__message-options-button-size) * 3);
368
+ margin-inline-start: var(--str-chat-message-options-size);
358
369
  }
359
370
 
360
371
  .str-chat__li--middle,
@@ -453,6 +464,7 @@
453
464
  }
454
465
 
455
466
  .str-chat__unread-messages-notification {
467
+ --str-chat-icon-height: calc(var(--str-chat__spacing-px) * 16);
456
468
  position: absolute;
457
469
  top: 0.75rem;
458
470
  z-index: 2;
@@ -506,3 +518,30 @@
506
518
  .str-chat__message-text--pointer-cursor {
507
519
  cursor: pointer;
508
520
  }
521
+
522
+ .str-chat__message-with-touch-support {
523
+ .str-chat__message-bubble {
524
+ -webkit-touch-callout: none;
525
+ -webkit-user-select: none;
526
+ user-select: none;
527
+ }
528
+
529
+ &.str-chat__message-menu-opened {
530
+ .str-chat__attachments-container,
531
+ .str-chat__message-text-inner {
532
+ pointer-events: none;
533
+ }
534
+ }
535
+
536
+ .str-chat__message-inner {
537
+ margin-inline: 0;
538
+ }
539
+
540
+ .str-chat__message-options {
541
+ display: none;
542
+ }
543
+
544
+ .stream-chat-angular__image-modal-host {
545
+ -webkit-touch-callout: default;
546
+ }
547
+ }
@@ -220,12 +220,15 @@
220
220
  }
221
221
 
222
222
  .str-chat__message-options {
223
+ --str-chat-icon-color: var(--str-chat__message-options-color);
224
+
223
225
  .str-chat__message-actions-box-button,
224
226
  .str-chat__message-reply-in-thread-button,
225
227
  .str-chat__message-reactions-button {
226
228
  // remove default button styles (React SDK uses button compared to div in Angular SDK)
227
229
  @include utils.button-reset;
228
230
  border-radius: var(--str-chat__message-options-border-radius);
231
+ color: var(--str-chat__message-options-color);
229
232
 
230
233
  .str-chat__message-action-icon path {
231
234
  fill: var(--str-chat__message-options-color);
@@ -272,6 +275,7 @@
272
275
  }
273
276
 
274
277
  .str-chat__message-status {
278
+ --str-chat-icon-color: var(--str-chat__message-status-color);
275
279
  color: var(--str-chat__message-status-color);
276
280
  font: var(--str-chat__body-text);
277
281
 
@@ -297,6 +301,7 @@
297
301
  }
298
302
 
299
303
  .str-chat__message-error-icon {
304
+ --str-chat-icon-color: var(--str-chat__message-error-message-color);
300
305
  /* stylelint-disable-next-line selector-max-id */
301
306
  svg #background {
302
307
  fill: var(--str-chat__message-error-message-color);
@@ -393,6 +398,7 @@
393
398
  }
394
399
 
395
400
  .str-chat__unread-messages-notification {
401
+ --str-chat-icon-color: var(--str-chat__on-primary-color);
396
402
  background-color: var(--str-chat__text-low-emphasis-color);
397
403
  border-radius: 1.125rem;
398
404
 
@@ -2,6 +2,7 @@
2
2
 
3
3
  .str-chat__message-input {
4
4
  $send-button-size: calc(var(--str-chat__spacing-px) * 45);
5
+ $start-audio-recording-button-size: calc(var(--str-chat__spacing-px) * 40);
5
6
 
6
7
  @include utils.flex-col-center;
7
8
  width: 100%;
@@ -46,6 +47,7 @@
46
47
  justify-content: center;
47
48
 
48
49
  .str-chat__file-input-container {
50
+ --str-chat-icon-height: calc(var(--str-chat__spacing-px) * 24);
49
51
  @include utils.flex-row-center;
50
52
  width: calc(var(--str-chat__spacing-px) * 45);
51
53
  height: calc(var(--str-chat__spacing-px) * 45);
@@ -132,6 +134,7 @@
132
134
  }
133
135
 
134
136
  .str-chat__send-button {
137
+ --str-chat-icon-height: calc(var(--str-chat__spacing-px) * 32);
135
138
  @include utils.flex-row-center;
136
139
  cursor: pointer;
137
140
  padding: 0;
@@ -145,6 +148,19 @@
145
148
  }
146
149
  }
147
150
 
151
+ .str-chat__start-recording-audio-button {
152
+ @include utils.flex-row-center;
153
+ cursor: pointer;
154
+ padding: 0;
155
+ width: $start-audio-recording-button-size;
156
+ height: $start-audio-recording-button-size;
157
+ min-width: $start-audio-recording-button-size;
158
+
159
+ svg {
160
+ height: calc(var(--str-chat__spacing-px) * 25);
161
+ }
162
+ }
163
+
148
164
  .str-chat__message-input-cooldown {
149
165
  @include utils.flex-row-center;
150
166
  margin-inline-start: var(--str-chat__spacing-2);
@@ -161,6 +177,21 @@
161
177
  .str-chat__quoted-message-preview {
162
178
  padding: var(--str-chat__spacing-2);
163
179
  }
180
+
181
+ .str-chat__recording-permission-denied-notification {
182
+ position: absolute;
183
+ left: 0.5rem;
184
+ max-width: 100%;
185
+ bottom: 100%;
186
+ padding: 1rem;
187
+ margin-inline: 0.5rem;
188
+ z-index: 2;
189
+
190
+ .str-chat__recording-permission-denied-notification__dismiss-button-container {
191
+ display: flex;
192
+ justify-content: flex-end;
193
+ }
194
+ }
164
195
  }
165
196
 
166
197
  .str-chat__message-input-angular-host {
@@ -179,7 +210,8 @@
179
210
  flex-grow: initial;
180
211
  }
181
212
 
182
- [dir='rtl'] .str-chat__send-button {
213
+ [dir='rtl'] .str-chat__send-button,
214
+ [dir='rtl'] .str-chat__start-recording-audio-button {
183
215
  svg {
184
216
  transform: scale(-1, 1);
185
217
  }
@@ -86,7 +86,37 @@
86
86
  --str-chat__message-send-disabled-color: var(--str-chat__disabled-color);
87
87
 
88
88
  /* The background color of the send button in disabled state */
89
- --str-chat__message-send-disabled-background-color: transparent;
89
+ --str-chat__message-send-disabled-background-color: var(--str-chat__disabled-color);
90
+
91
+ /* The border radius used for the borders of the audio recording button */
92
+ --str-chat__start-recording-audio-button-border-radius: var(--str-chat__border-radius-circle);
93
+
94
+ /* The text/icon color of the audio recording button */
95
+ --str-chat__start-recording-audio-button-color: var(--str-chat__text-low-emphasis-color);
96
+
97
+ /* The background color of the audio recording button */
98
+ --str-chat__start-recording-audio-button-background-color: transparent;
99
+
100
+ /* Top border of the audio recording button */
101
+ --str-chat__start-recording-audio-button-border-block-start: 0;
102
+
103
+ /* Bottom border of the audio recording button */
104
+ --str-chat__start-recording-audio-button-border-block-end: 0;
105
+
106
+ /* Left (right in RTL layout) border of the audio recording button */
107
+ --str-chat__start-recording-audio-button-border-inline-start: 0;
108
+
109
+ /* Right (left in RTL layout) border of the audio recording button */
110
+ --str-chat__start-recording-audio-button-border-inline-end: 0;
111
+
112
+ /* Box shadow applied to the audio recording button */
113
+ --str-chat__start-recording-audio-button-box-shadow: none;
114
+
115
+ /* The color of the audio recording button in disabled state */
116
+ --str-chat__start-recording-audio-button-disabled-color: var(--str-chat__disabled-color);
117
+
118
+ /* The background color of the audio recording button in disabled state */
119
+ --str-chat__start-recording-audio-button-disabled-background-color: transparent;
90
120
 
91
121
  /* The border radius used for the borders of the tool buttons of the message input (such as attachment upload button) */
92
122
  --str-chat__message-input-tools-border-radius: var(--str-chat__border-radius-circle);
@@ -151,6 +181,7 @@
151
181
  }
152
182
 
153
183
  .str-chat__file-input-container {
184
+ --str-chat-icon-color: var(--str-chat__message-input-tools-color);
154
185
  @include utils.component-layer-overrides('message-input-tools');
155
186
 
156
187
  svg path {
@@ -179,6 +210,7 @@
179
210
  }
180
211
 
181
212
  .str-chat__send-button {
213
+ --str-chat-icon-color: var(--str-chat__message-send-color);
182
214
  @include utils.component-layer-overrides('message-send');
183
215
 
184
216
  svg path {
@@ -186,7 +218,8 @@
186
218
  }
187
219
 
188
220
  &:disabled {
189
- background-color: var(--str-chat__message-send-disabled-background-color);
221
+ --str-chat-icon-color: var(--str-chat__message-send-disabled-color);
222
+ background-color: transparent;
190
223
 
191
224
  svg path {
192
225
  fill: var(--str-chat__message-send-disabled-color);
@@ -194,6 +227,14 @@
194
227
  }
195
228
  }
196
229
 
230
+ .str-chat__start-recording-audio-button {
231
+ @include utils.component-layer-overrides('start-recording-audio-button');
232
+
233
+ &:disabled {
234
+ background-color: var(--str-chat__message-send-disabled-background-color);
235
+ }
236
+ }
237
+
197
238
  .str-chat__message-input-cooldown {
198
239
  @include utils.component-layer-overrides('cooldown');
199
240
  font: var(--str-chat__subtitle-medium-text);
@@ -218,4 +259,26 @@
218
259
  }
219
260
  }
220
261
  }
262
+
263
+ .str-chat__recording-permission-denied-notification {
264
+ background-color: var(--str-chat__text-color);
265
+ border-radius: var(--str-chat__border-radius-md);
266
+ color: var(--str-chat__background-color);
267
+
268
+ .str-chat__recording-permission-denied-notification__heading,
269
+ .str-chat__recording-permission-denied-notification__dismiss-button {
270
+ font: var(--str-chat__subtitle2-medium-text);
271
+ }
272
+
273
+ .str-chat__recording-permission-denied-notification__message {
274
+ font: var(--str-chat__subtitle-text);
275
+ }
276
+
277
+ .str-chat__recording-permission-denied-notification__dismiss-button {
278
+ @include utils.button-reset;
279
+ color: var(--str-chat__background-color);
280
+ cursor: pointer;
281
+ text-transform: uppercase;
282
+ }
283
+ }
221
284
  }
@@ -91,6 +91,8 @@
91
91
  }
92
92
 
93
93
  .str-chat__jump-to-latest-message {
94
+ --str-chat-icon-color: var(--str-chat__jump-to-latest-message-unread-count-background-color);
95
+
94
96
  .str-chat__circle-fab {
95
97
  @include utils.component-layer-overrides('jump-to-latest-message');
96
98
  @include utils.circle-fab-overrides('jump-to-latest-message');
@@ -6,6 +6,24 @@
6
6
  position: absolute;
7
7
  inset-block-end: 100%;
8
8
 
9
+ &.str-chat-angular-v5__reaction-selector {
10
+ margin: var(--str-chat__spacing-2);
11
+ position: static;
12
+ justify-content: flex-start;
13
+
14
+ .str-chat__message-reactions-options {
15
+ max-width: 100%;
16
+ overflow-y: hidden;
17
+ overflow-x: auto;
18
+ scrollbar-width: none;
19
+ padding: 0;
20
+
21
+ .str-chat__message-reactions-option {
22
+ flex-shrink: 0;
23
+ }
24
+ }
25
+ }
26
+
9
27
  .str-chat__message-reactions-options {
10
28
  list-style: none;
11
29
  display: flex;
@@ -62,6 +62,11 @@
62
62
 
63
63
  /* Box shadow applied to the component */
64
64
  --str-chat__message-reactions-option-box-shadow: none;
65
+
66
+ .str-chat-angular-v5__reaction-selector {
67
+ --str-chat__message-reactions-options-box-shadow: none;
68
+ --str-chat__message-reactions-options-border-radius: 0;
69
+ }
65
70
  }
66
71
 
67
72
  .str-chat__reaction-selector {
@@ -18,6 +18,7 @@
18
18
  }
19
19
 
20
20
  .str-chat__modal__close-button {
21
+ --str-chat-icon-height: calc(var(--str-chat__spacing-px) * 28);
21
22
  @include utils.flex-row-center;
22
23
  padding: var(--str-chat__spacing-2);
23
24
  position: absolute;
@@ -47,8 +47,14 @@
47
47
  }
48
48
 
49
49
  .str-chat__modal__close-button {
50
+ --str-chat-icon-color: var(--str-chat__modal-close-icon-color);
50
51
  @include utils.button-reset;
51
52
 
53
+ .str-chat__icon {
54
+ background-color: var(--str-chat__modal-close-icon-background);
55
+ border-radius: 999px;
56
+ }
57
+
52
58
  svg {
53
59
  path {
54
60
  fill: var(--str-chat__modal-close-icon-color);
@@ -1,17 +1,19 @@
1
1
  .str-chat {
2
2
  box-sizing: border-box;
3
+ font-family: var(--str-chat__font-family);
3
4
 
4
5
  * {
5
- font-family: var(--str-chat__font-family);
6
6
  box-sizing: border-box;
7
7
  }
8
8
 
9
9
  // Overriding styles of ngx-popperjs/ngx-float-ui
10
- .ngxp__container, .float-ui-container {
10
+ .ngxp__container,
11
+ .float-ui-container {
11
12
  z-index: 1;
12
13
  padding: 0 !important;
13
14
  box-shadow: none !important;
14
15
  border-color: transparent !important;
16
+ max-width: 100vw;
15
17
 
16
18
  .ngxp__arrow {
17
19
  display: none;
@@ -1,5 +1,7 @@
1
- /* declare a font faces for our Emoji Replacement font, based on the default font used by Stream Chat React */
2
- $assetsPath: '../../assets' !default;
1
+ @use 'variables';
2
+
3
+ $assetsPath: variables.$assetsPath !default;
4
+
3
5
  $emoji-flag-unicode-range: U+1F1E6-1F1FF;
4
6
 
5
7
  /* png based woff for most browsers */
@@ -1,3 +1,25 @@
1
+ @use 'variables';
2
+
1
3
  .str-chat {
2
- --str-chat__image-fallback-icon: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9ImN1cnJlbnRDb2xvciIgY2xhc3M9InN0ci1jaGF0X19pbWFnZS1mYWxsYmFja19faWNvbiIgdmlld0JveD0iMCAwIDE4IDE4Ij48cGF0aCBkPSJNMTYgMnYxNEgyVjJoMTRabTAtMkgyQy45IDAgMCAuOSAwIDJ2MTRjMCAxLjEuOSAyIDIgMmgxNGMxLjEgMCAyLS45IDItMlYyYzAtMS4xLS45LTItMi0yWm0tNC44NiA4Ljg2LTMgMy44N0w2IDEwLjE0IDMgMTRoMTJsLTMuODYtNS4xNFoiLz48L3N2Zz4=");
3
- }
4
+ --str-chat__image-fallback-icon: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9ImN1cnJlbnRDb2xvciIgY2xhc3M9InN0ci1jaGF0X19pbWFnZS1mYWxsYmFja19faWNvbiIgdmlld0JveD0iMCAwIDE4IDE4Ij48cGF0aCBkPSJNMTYgMnYxNEgyVjJoMTRabTAtMkgyQy45IDAgMCAuOSAwIDJ2MTRjMCAxLjEuOSAyIDIgMmgxNGMxLjEgMCAyLS45IDItMlYyYzAtMS4xLS45LTItMi0yWm0tNC44NiA4Ljg2LTMgMy44N0w2IDEwLjE0IDMgMTRoMTJsLTMuODYtNS4xNFoiLz48L3N2Zz4=');
5
+ }
6
+
7
+ @font-face {
8
+ font-family: 'stream-chat-icons';
9
+ src: url('#{variables.$assetsPath}/icons/stream-chat-icons.eot');
10
+ src: url('#{variables.$assetsPath}/icons/stream-chat-icons.eot#iefix') format('embedded-opentype'),
11
+ url('#{variables.$assetsPath}/icons/stream-chat-icons.woff') format('woff2'),
12
+ url('#{variables.$assetsPath}/icons/stream-chat-icons.woff') format('woff'),
13
+ url('#{variables.$assetsPath}/icons/stream-chat-icons.ttf') format('truetype'),
14
+ url('#{variables.$assetsPath}/icons/stream-chat-icons.svg#stream-chat-icons') format('svg');
15
+ font-weight: normal;
16
+ font-style: normal;
17
+ }
18
+ /* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
19
+ /* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
20
+ @media screen and (-webkit-min-device-pixel-ratio: 0) {
21
+ @font-face {
22
+ font-family: 'stream-chat-icons';
23
+ src: url('#{variables.$assetsPath}/icons/stream-chat-icons.svg#stream-chat-icons') format('svg');
24
+ }
25
+ }
@@ -0,0 +1,2 @@
1
+ /* declare asset path, useful if you want to create your own style bundle */
2
+ $assetsPath: '../../assets' !default;
@@ -6,6 +6,7 @@
6
6
  @use 'AttachmentList/AttachmentList-layout';
7
7
  @use 'AttachmentPreviewList/AttachmentPreviewList-layout';
8
8
  @use 'Autocomplete/Autocomplete-layout';
9
+ @use 'AudioRecorder/AudioRecorder-layout';
9
10
  @use 'BaseImage/BaseImage-layout';
10
11
  @use 'Channel/Channel-layout';
11
12
  @use 'ChannelHeader/ChannelHeader-layout';
@@ -16,6 +17,7 @@
16
17
  @use 'common/CircleFAButton/CircleFAButton-layout';
17
18
  @use 'EditMessageForm/EditMessageForm-layout';
18
19
  @use 'ImageCarousel/ImageCarousel-layout';
20
+ @use 'Icon/Icon-layout';
19
21
  @use 'LinkPreview/LinkPreview-layout';
20
22
  @use 'LoadingIndicator/LoadingIndicator-layout';
21
23
  @use 'Message/Message-layout';
@@ -9,6 +9,7 @@
9
9
  @use 'Avatar/Avatar-theme';
10
10
  @use 'AttachmentList/AttachmentList-theme';
11
11
  @use 'AttachmentPreviewList/AttachmentPreviewList-theme';
12
+ @use 'AudioRecorder/AudioRecorder-theme';
12
13
  @use 'Autocomplete/Autocomplete-theme';
13
14
  @use 'BaseImage/BaseImage-theme';
14
15
  @use 'Channel/Channel-theme.scss';
@@ -17,6 +18,7 @@
17
18
  @use 'ChannelPreview/ChannelPreview-theme';
18
19
  @use 'ChannelSearch/ChannelSearch-theme';
19
20
  @use 'EditMessageForm/EditMessageForm-theme';
21
+ @use 'Icon/Icon-theme';
20
22
  @use 'ImageCarousel/ImageCarousel-theme';
21
23
  @use 'LinkPreview/LinkPreview-theme';
22
24
  @use 'LoadingIndicator/LoadingIndicator-theme';
@@ -1 +1 @@
1
- export const version = '5.0.0-v5.9';
1
+ export const version = '5.1.0';