stream-chat-angular 2.20.2 → 3.0.0-beta.10

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 (127) hide show
  1. package/README.md +44 -12
  2. package/assets/version.d.ts +1 -1
  3. package/bundles/stream-chat-angular.umd.js +780 -534
  4. package/bundles/stream-chat-angular.umd.js.map +1 -1
  5. package/esm2015/assets/version.js +2 -2
  6. package/esm2015/lib/attachment-list/attachment-list.component.js +27 -15
  7. package/esm2015/lib/attachment-preview-list/attachment-preview-list.component.js +28 -22
  8. package/esm2015/lib/attachment.service.js +11 -5
  9. package/esm2015/lib/avatar-placeholder/avatar-placeholder.component.js +41 -0
  10. package/esm2015/lib/channel-header/channel-header.component.js +26 -12
  11. package/esm2015/lib/channel-list/channel-list.component.js +23 -13
  12. package/esm2015/lib/channel-preview/channel-preview.component.js +3 -3
  13. package/esm2015/lib/channel.service.js +28 -35
  14. package/esm2015/lib/chat-client.service.js +5 -4
  15. package/esm2015/lib/custom-templates.service.js +139 -0
  16. package/esm2015/lib/icon-placeholder/icon-placeholder.component.js +34 -0
  17. package/esm2015/lib/loading-indicator-placeholder/loading-indicator-placeholder.component.js +42 -0
  18. package/esm2015/lib/message/message.component.js +74 -29
  19. package/esm2015/lib/message-actions-box/message-actions-box.component.js +114 -99
  20. package/esm2015/lib/message-input/autocomplete-textarea/autocomplete-textarea.component.js +13 -13
  21. package/esm2015/lib/message-input/message-input-config.service.js +1 -1
  22. package/esm2015/lib/message-input/message-input.component.js +56 -45
  23. package/esm2015/lib/message-input/textarea.directive.js +2 -18
  24. package/esm2015/lib/message-input/textarea.interface.js +1 -1
  25. package/esm2015/lib/message-list/message-list.component.js +32 -93
  26. package/esm2015/lib/message-preview.js +4 -17
  27. package/esm2015/lib/message-reactions/message-reactions.component.js +3 -3
  28. package/esm2015/lib/modal/modal.component.js +9 -6
  29. package/esm2015/lib/notification/notification.component.js +5 -2
  30. package/esm2015/lib/notification-list/notification-list.component.js +12 -10
  31. package/esm2015/lib/read-by.js +1 -1
  32. package/esm2015/lib/stream-avatar.module.js +5 -4
  33. package/esm2015/lib/stream-chat.module.js +13 -3
  34. package/esm2015/lib/thread/thread.component.js +19 -11
  35. package/esm2015/lib/types.js +1 -1
  36. package/esm2015/public-api.js +5 -1
  37. package/fesm2015/stream-chat-angular.js +723 -449
  38. package/fesm2015/stream-chat-angular.js.map +1 -1
  39. package/lib/attachment-list/attachment-list.component.d.ts +12 -8
  40. package/lib/attachment-preview-list/attachment-preview-list.component.d.ts +17 -7
  41. package/lib/attachment.service.d.ts +1 -1
  42. package/lib/avatar-placeholder/avatar-placeholder.component.d.ts +25 -0
  43. package/lib/channel-header/channel-header.component.d.ts +15 -12
  44. package/lib/channel-list/channel-list.component.d.ts +14 -11
  45. package/lib/channel-preview/channel-preview.component.d.ts +3 -2
  46. package/lib/channel.service.d.ts +32 -31
  47. package/lib/chat-client.service.d.ts +12 -11
  48. package/lib/custom-templates.service.d.ts +132 -0
  49. package/lib/icon-placeholder/icon-placeholder.component.d.ts +22 -0
  50. package/lib/loading-indicator-placeholder/loading-indicator-placeholder.component.d.ts +21 -0
  51. package/lib/message/message.component.d.ts +42 -30
  52. package/lib/message-actions-box/message-actions-box.component.d.ts +22 -26
  53. package/lib/message-input/autocomplete-textarea/autocomplete-textarea.component.d.ts +7 -11
  54. package/lib/message-input/message-input-config.service.d.ts +0 -19
  55. package/lib/message-input/message-input.component.d.ts +40 -26
  56. package/lib/message-input/textarea.directive.d.ts +3 -6
  57. package/lib/message-input/textarea.interface.d.ts +1 -4
  58. package/lib/message-list/group-styles.d.ts +1 -1
  59. package/lib/message-list/message-list.component.d.ts +10 -34
  60. package/lib/message-preview.d.ts +2 -1
  61. package/lib/message-reactions/message-reactions.component.d.ts +4 -5
  62. package/lib/modal/modal.component.d.ts +7 -3
  63. package/lib/notification/notification.component.d.ts +6 -1
  64. package/lib/notification-list/notification-list.component.d.ts +4 -2
  65. package/lib/read-by.d.ts +2 -1
  66. package/lib/stream-avatar.module.d.ts +4 -3
  67. package/lib/stream-chat.module.d.ts +6 -4
  68. package/lib/thread/thread.component.d.ts +6 -3
  69. package/lib/types.d.ts +115 -9
  70. package/package.json +2 -3
  71. package/public-api.d.ts +4 -0
  72. package/src/assets/styles/assets/EmojiOneColor.woff2 +0 -0
  73. package/src/assets/styles/assets/NotoColorEmoji-flags.woff2 +0 -0
  74. package/src/assets/styles/assets/Poweredby_100px-White_VertText.png +0 -0
  75. package/src/assets/styles/assets/str-chat__reaction-list-sprite@1x.png +0 -0
  76. package/src/assets/styles/assets/str-chat__reaction-list-sprite@2x.png +0 -0
  77. package/src/assets/styles/assets/str-chat__reaction-list-sprite@3x.png +0 -0
  78. package/src/assets/styles/css/index.css +1 -0
  79. package/src/assets/styles/css/index.css.map +1 -0
  80. package/src/assets/styles/scss/ActionsBox.scss +56 -0
  81. package/src/assets/styles/scss/Attachment.scss +227 -0
  82. package/src/assets/styles/scss/AttachmentActions.scss +44 -0
  83. package/src/assets/styles/scss/Audio.scss +112 -0
  84. package/src/assets/styles/scss/Avatar.scss +79 -0
  85. package/src/assets/styles/scss/Card.scss +100 -0
  86. package/src/assets/styles/scss/ChannelHeader.scss +284 -0
  87. package/src/assets/styles/scss/ChannelList.scss +117 -0
  88. package/src/assets/styles/scss/ChannelListMessenger.scss +9 -0
  89. package/src/assets/styles/scss/ChannelPreview.scss +108 -0
  90. package/src/assets/styles/scss/ChannelSearch.scss +111 -0
  91. package/src/assets/styles/scss/ChatDown.scss +15 -0
  92. package/src/assets/styles/scss/DateSeparator.scss +51 -0
  93. package/src/assets/styles/scss/EditMessageForm.scss +112 -0
  94. package/src/assets/styles/scss/EventComponent.scss +48 -0
  95. package/src/assets/styles/scss/Gallery.scss +135 -0
  96. package/src/assets/styles/scss/InfiniteScrollPaginator.scss +6 -0
  97. package/src/assets/styles/scss/LoadMoreButton.scss +44 -0
  98. package/src/assets/styles/scss/LoadingChannels.scss +70 -0
  99. package/src/assets/styles/scss/LoadingIndicator.scss +38 -0
  100. package/src/assets/styles/scss/Message.scss +1261 -0
  101. package/src/assets/styles/scss/MessageActions.scss +112 -0
  102. package/src/assets/styles/scss/MessageCommerce.scss +564 -0
  103. package/src/assets/styles/scss/MessageInput.scss +385 -0
  104. package/src/assets/styles/scss/MessageInputFlat.scss +305 -0
  105. package/src/assets/styles/scss/MessageList.scss +203 -0
  106. package/src/assets/styles/scss/MessageLivestream.scss +325 -0
  107. package/src/assets/styles/scss/MessageNotification.scss +49 -0
  108. package/src/assets/styles/scss/MessageRepliesCountButton.scss +33 -0
  109. package/src/assets/styles/scss/MessageTeam.scss +617 -0
  110. package/src/assets/styles/scss/Modal.scss +77 -0
  111. package/src/assets/styles/scss/ReactionList.scss +183 -0
  112. package/src/assets/styles/scss/ReactionSelector.scss +212 -0
  113. package/src/assets/styles/scss/SendButton.scss +14 -0
  114. package/src/assets/styles/scss/SimpleReactionsList.scss +76 -0
  115. package/src/assets/styles/scss/SmallMessageInput.scss +172 -0
  116. package/src/assets/styles/scss/Thread.scss +306 -0
  117. package/src/assets/styles/scss/Tooltip.scss +38 -0
  118. package/src/assets/styles/scss/TypingIndicator.scss +75 -0
  119. package/src/assets/styles/scss/VirtualMessage.scss +291 -0
  120. package/src/assets/styles/scss/_base.scss +206 -0
  121. package/src/assets/styles/scss/_variables.scss +158 -0
  122. package/src/assets/styles/scss/index.scss +50 -0
  123. package/src/assets/styles/scss/vendor/emoji-mart.scss +495 -0
  124. package/src/assets/styles/scss/vendor/mml-react.scss +1749 -0
  125. package/src/assets/styles/scss/vendor/react-file-utils.scss +378 -0
  126. package/src/assets/styles/scss/vendor/react-image-gallery.scss +224 -0
  127. package/src/assets/version.ts +1 -1
@@ -0,0 +1,112 @@
1
+ .str-chat__edit-message-form {
2
+ width: 100%;
3
+
4
+ form {
5
+ position: relative;
6
+ width: 100%;
7
+ }
8
+
9
+ textarea {
10
+ padding: 8px;
11
+ background: var(--white);
12
+ box-shadow: inset 0 0 0 1px var(--primary-color);
13
+ border: 1px solid transparent;
14
+ resize: none;
15
+ border-radius: var(--border-radius-sm);
16
+ width: 100%;
17
+ font-size: var(--lg-font);
18
+ line-height: 22px;
19
+ color: var(--black);
20
+
21
+ &:focus {
22
+ box-shadow: inset 0 0 0 1px var(--primary-color), 0 0 0 2px var(--primary-color-faded);
23
+ outline: 0;
24
+ }
25
+ }
26
+
27
+ .str-chat__message-team-form-footer {
28
+ button {
29
+ background: none;
30
+ border: none;
31
+ font-weight: var(--font-weight-bold);
32
+ color: var(--grey);
33
+
34
+ &[type='submit'] {
35
+ color: var(--primary-color);
36
+ }
37
+ }
38
+ }
39
+
40
+ .rfu-dropzone {
41
+ width: 100%;
42
+ }
43
+
44
+ .rfu-file-upload-button,
45
+ .str-chat__input-emojiselect,
46
+ .str-chat__input-fileupload {
47
+ display: flex;
48
+ position: unset;
49
+ top: unset;
50
+ right: unset;
51
+ left: unset;
52
+
53
+ svg {
54
+ fill: var(--black);
55
+ opacity: 0.5;
56
+ }
57
+
58
+ &:hover {
59
+ svg {
60
+ opacity: 1;
61
+ }
62
+ }
63
+ }
64
+ }
65
+
66
+ .str-chat__edit-message-form-options {
67
+ display: flex;
68
+ align-items: baseline;
69
+ }
70
+
71
+ .str-chat__edit-message-form-options .str-chat__fileupload-wrapper:hover .str-chat__tooltip {
72
+ display: none;
73
+ }
74
+
75
+ .str-chat.dark {
76
+ .str-chat__edit-message-form {
77
+ .rfu-file-upload-button,
78
+ .str-chat__input-emojiselect {
79
+ svg {
80
+ fill: var(--grey-gainsboro);
81
+ }
82
+ }
83
+
84
+ .str-chat__message-team-form-footer {
85
+ button {
86
+ color: var(--grey-gainsboro);
87
+
88
+ &[type='submit'] {
89
+ color: var(--primary-color);
90
+ }
91
+ }
92
+ }
93
+
94
+ textarea {
95
+ background: var(--white5);
96
+ box-shadow: 0 0 0 1px var(--black20);
97
+ border: 2px solid transparent;
98
+ border-radius: var(--border-radius-sm);
99
+ color: var(--white);
100
+
101
+ &:focus {
102
+ box-shadow: inset 0 0 0 1px var(--primary-color);
103
+ border: 2px solid var(--primary-color-faded);
104
+ border-radius: var(--border-radius-sm);
105
+ }
106
+ }
107
+ }
108
+ }
109
+
110
+ .str-chat__edit-message-form {
111
+ position: relative;
112
+ }
@@ -0,0 +1,48 @@
1
+ .str-chat.messaging {
2
+ .str-chat__event-component__channel-event {
3
+ display: flex;
4
+ margin-top: var(--md-m);
5
+
6
+ &__content {
7
+ margin-right: var(--xs-m);
8
+ color: var(--overlay-dark);
9
+ font-size: var(--lg-font);
10
+ }
11
+
12
+ &__date {
13
+ font-size: var(--xs-font);
14
+ margin-top: var(--xxs-m);
15
+ }
16
+ }
17
+ }
18
+
19
+ .str-chat.team {
20
+ .str-chat__event-component__channel-event {
21
+ display: flex;
22
+ margin: var(--md-m) var(--xl-m);
23
+
24
+ &__content {
25
+ margin-right: var(--xs-m);
26
+ color: var(--overlay-dark);
27
+ font-size: var(--lg-font);
28
+ }
29
+
30
+ &__sentence {
31
+ margin-right: var(--xs-m);
32
+ color: var(--overlay-dark);
33
+ font-size: var(--lg-font);
34
+ }
35
+
36
+ &__date {
37
+ font-size: var(--xs-font);
38
+ margin-top: var(--xxs-m);
39
+ }
40
+ }
41
+ }
42
+
43
+ .str-chat.commerce,
44
+ .str-chat.livestream {
45
+ .str-chat__event-component__channel-event {
46
+ display: none;
47
+ }
48
+ }
@@ -0,0 +1,135 @@
1
+ .str-chat__gallery {
2
+ display: inline-flex;
3
+ flex-wrap: wrap;
4
+ justify-content: flex-end;
5
+ overflow: hidden;
6
+
7
+ &-image {
8
+ /* flex: 1; x */
9
+ width: 150px;
10
+ height: 150px;
11
+ background: var(--white);
12
+ margin-bottom: 1px;
13
+ margin-right: 1px;
14
+ border: none;
15
+ padding: 0;
16
+ display: flex;
17
+
18
+ &:hover {
19
+ cursor: -moz-zoom-in;
20
+ cursor: -webkit-zoom-in;
21
+ cursor: zoom-in;
22
+ }
23
+
24
+ img {
25
+ width: inherit;
26
+ height: inherit;
27
+ object-fit: cover;
28
+ }
29
+ }
30
+
31
+ &--square {
32
+ max-width: 301px; // 300px + 1px margin between images
33
+ }
34
+
35
+ &--square &-image:nth-child(even) {
36
+ margin-right: 0;
37
+ }
38
+ }
39
+
40
+ .stream-chat-angular__image-modal {
41
+ display: flex;
42
+ justify-content: center;
43
+ align-items: center;
44
+
45
+ &-stepper {
46
+ padding: 10px;
47
+ border: none;
48
+ cursor: pointer;
49
+ background: transparent;
50
+ }
51
+
52
+ &-image {
53
+ object-fit: cover;
54
+ max-width: 90%;
55
+ max-height: 90%;
56
+ }
57
+ }
58
+
59
+ .livestream.str-chat,
60
+ .messaging.str-chat,
61
+ .commerce.str-chat,
62
+ .team.str-chat {
63
+ .str-chat {
64
+ &__gallery {
65
+ margin: 4px 0;
66
+
67
+ &-image {
68
+ width: 150px;
69
+ height: 150px;
70
+ }
71
+
72
+ &-placeholder {
73
+ position: relative;
74
+ width: 150px;
75
+ height: 150px;
76
+ color: var(--white);
77
+ display: flex;
78
+ align-items: center;
79
+ justify-content: center;
80
+ background-size: cover;
81
+ background-position: top left;
82
+ background-repeat: no-repeat;
83
+ cursor: -moz-zoom-in;
84
+ cursor: -webkit-zoom-in;
85
+ cursor: zoom-in;
86
+ cursor: pointer;
87
+ border: none;
88
+
89
+ p {
90
+ position: relative;
91
+ z-index: 1;
92
+ font-size: 16px;
93
+ }
94
+
95
+ &::after {
96
+ content: '';
97
+ position: absolute;
98
+ top: 0;
99
+ left: 0;
100
+ width: 100%;
101
+ height: 100%;
102
+ background-color: var(--overlay-dark);
103
+ z-index: 0;
104
+ }
105
+ }
106
+ }
107
+ }
108
+ }
109
+
110
+ .commerce.str-chat {
111
+ .str-chat__gallery {
112
+ width: calc(100% - 30px);
113
+ display: grid;
114
+ grid-template-columns: 1fr 1fr;
115
+ grid-auto-rows: 100px;
116
+
117
+ &-image,
118
+ &-placeholder {
119
+ width: 100%;
120
+ height: 100%;
121
+ }
122
+ }
123
+
124
+ .str-chat__message-commerce {
125
+ .str-chat__gallery {
126
+ border-radius: var(--border-radius) var(--border-radius) var(--border-radius) 2px;
127
+ }
128
+
129
+ &--right {
130
+ .str-chat__gallery {
131
+ border-radius: var(--border-radius) var(--border-radius) 2px var(--border-radius);
132
+ }
133
+ }
134
+ }
135
+ }
@@ -0,0 +1,6 @@
1
+ .str-chat__infinite-scroll-paginator {
2
+ display: flex;
3
+ align-items: center;
4
+ justify-content: center;
5
+ padding: var(--xs-p);
6
+ }
@@ -0,0 +1,44 @@
1
+ .str-chat {
2
+ &.messaging {
3
+ .str-chat__load-more-button {
4
+ &__button {
5
+ border: 0;
6
+ width: 100%;
7
+ height: 40px;
8
+ border-radius: var(--border-radius-md);
9
+ background: var(--grey-whisper);
10
+ box-shadow: 0 1px 5px 0 var(--border);
11
+ color: var(--grey);
12
+ padding: var(--xs-p);
13
+ font-size: var(--md-font);
14
+
15
+ &:hover {
16
+ cursor: pointer;
17
+ }
18
+ }
19
+ }
20
+ }
21
+
22
+ &.team {
23
+ .str-chat__load-more-button {
24
+ &__button {
25
+ border: 0;
26
+ background: transparent;
27
+ width: 100%;
28
+ height: 40px;
29
+ padding: var(--xs-p);
30
+ font-size: var(--md-font);
31
+
32
+ &:hover {
33
+ cursor: pointer;
34
+ }
35
+ }
36
+ }
37
+ }
38
+ }
39
+
40
+ .str-chat__load-more-button__button {
41
+ display: flex;
42
+ align-items: center;
43
+ justify-content: center;
44
+ }
@@ -0,0 +1,70 @@
1
+ .str-chat__loading-channels {
2
+ width: 300px;
3
+ height: 100%;
4
+ padding: var(--md-p);
5
+ background: var(--grey-gainsboro);
6
+
7
+ &-meta {
8
+ flex: 1;
9
+ }
10
+
11
+ &-avatar,
12
+ &-username,
13
+ &-status {
14
+ background-image: linear-gradient(
15
+ -90deg,
16
+ var(--bg-gradient-start) 0%,
17
+ var(--bg-gradient-end) 100%
18
+ );
19
+ }
20
+
21
+ &-username,
22
+ &-status {
23
+ border-radius: var(--border-radius);
24
+ height: 14px;
25
+ }
26
+
27
+ &-avatar {
28
+ width: 40px;
29
+ height: 40px;
30
+ border-radius: var(--border-radius-round);
31
+ margin-right: var(--xs-m);
32
+ }
33
+
34
+ &-username {
35
+ width: 40%;
36
+ margin-bottom: var(--xs-m);
37
+ }
38
+
39
+ &-status {
40
+ width: 80%;
41
+ }
42
+
43
+ &-item {
44
+ display: flex;
45
+ align-items: center;
46
+ width: 100%;
47
+ height: 40px;
48
+ border-radius: var(--border-radius-sm);
49
+ margin-bottom: var(--sm-m);
50
+ animation: pulsate 1s linear 0s infinite alternate;
51
+
52
+ &:nth-of-type(2) {
53
+ animation: pulsate 1s linear 0.3334 infinite alternate;
54
+ }
55
+
56
+ &:last-of-type {
57
+ animation: pulsate 1s linear 0.6667s infinite alternate;
58
+ }
59
+ }
60
+ }
61
+
62
+ @keyframes pulsate {
63
+ from {
64
+ opacity: 0.5;
65
+ }
66
+
67
+ to {
68
+ opacity: 1;
69
+ }
70
+ }
@@ -0,0 +1,38 @@
1
+ .str-chat__loading-indicator {
2
+ display: flex;
3
+ align-items: center;
4
+ justify-content: center;
5
+ animation: rotate 1s linear infinite;
6
+
7
+ @-webkit-keyframes rotate {
8
+ from {
9
+ -webkit-transform: rotate(0deg);
10
+ -o-transform: rotate(0deg);
11
+ transform: rotate(0deg);
12
+ }
13
+
14
+ to {
15
+ -webkit-transform: rotate(360deg);
16
+ -o-transform: rotate(360deg);
17
+ transform: rotate(360deg);
18
+ }
19
+ }
20
+
21
+ @keyframes rotate {
22
+ from {
23
+ -ms-transform: rotate(0deg);
24
+ -moz-transform: rotate(0deg);
25
+ -webkit-transform: rotate(0deg);
26
+ -o-transform: rotate(0deg);
27
+ transform: rotate(0deg);
28
+ }
29
+
30
+ to {
31
+ -ms-transform: rotate(360deg);
32
+ -moz-transform: rotate(360deg);
33
+ -webkit-transform: rotate(360deg);
34
+ -o-transform: rotate(360deg);
35
+ transform: rotate(360deg);
36
+ }
37
+ }
38
+ }