@cometchat/chat-uikit-react 6.3.13 → 6.4.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 (64) hide show
  1. package/dist/assets/bin.svg +1 -0
  2. package/dist/assets/format_blockquote.svg +3 -0
  3. package/dist/assets/format_bold.svg +5 -0
  4. package/dist/assets/format_code.svg +3 -0
  5. package/dist/assets/format_code_block.svg +5 -0
  6. package/dist/assets/format_italic.svg +3 -0
  7. package/dist/assets/format_link.svg +3 -0
  8. package/dist/assets/format_ordered_list.svg +5 -0
  9. package/dist/assets/format_strikethrough.svg +5 -0
  10. package/dist/assets/format_toggle.svg +1 -0
  11. package/dist/assets/format_underline.svg +5 -0
  12. package/dist/assets/format_unordered_list.svg +5 -0
  13. package/dist/assets/pause_circle.svg +1 -0
  14. package/dist/assets/warning-small.svg +0 -0
  15. package/dist/index.d.ts +360 -6
  16. package/dist/index.js +1 -1
  17. package/dist/index.js.map +1 -1
  18. package/dist/styles/CometChatCompactMessageComposer.css +1111 -0
  19. package/dist/styles/CometChatConversations.css +37 -1
  20. package/dist/styles/CometChatDocumentBubble.css +0 -1
  21. package/dist/styles/CometChatFormattingToolbar.css +257 -0
  22. package/dist/styles/CometChatLinkDialog.css +191 -0
  23. package/dist/styles/CometChatLinkPopover.css +128 -0
  24. package/dist/styles/CometChatMarkdownFormatter.css +141 -0
  25. package/dist/styles/CometChatMediaRecorder.css +73 -1
  26. package/dist/styles/CometChatMessageComposer.css +210 -3
  27. package/dist/styles/CometChatMessagePreview.css +10 -0
  28. package/dist/styles/CometChatSearch.css +11 -0
  29. package/dist/styles/CometChatTextBubble.css +267 -3
  30. package/dist/styles/LinkPreview.css +1 -1
  31. package/dist/styles/components/CometChatCompactMessageComposer.css +1111 -0
  32. package/dist/styles/components/CometChatConversations.css +37 -1
  33. package/dist/styles/components/CometChatDocumentBubble.css +0 -1
  34. package/dist/styles/components/CometChatFormattingToolbar.css +257 -0
  35. package/dist/styles/components/CometChatLinkDialog.css +191 -0
  36. package/dist/styles/components/CometChatLinkPopover.css +128 -0
  37. package/dist/styles/components/CometChatMarkdownFormatter.css +141 -0
  38. package/dist/styles/components/CometChatMediaRecorder.css +73 -1
  39. package/dist/styles/components/CometChatMessageComposer.css +210 -3
  40. package/dist/styles/components/CometChatMessagePreview.css +10 -0
  41. package/dist/styles/components/CometChatSearch.css +11 -0
  42. package/dist/styles/components/CometChatTextBubble.css +267 -3
  43. package/dist/styles/components/LinkPreview.css +1 -1
  44. package/dist/styles/components/index.css +6 -5
  45. package/dist/styles/css-variables.css +1 -0
  46. package/dist/styles/index.css +6 -5
  47. package/dist/types/CometChatUIKit/CometChatUIKitUtility.d.ts +13 -0
  48. package/dist/types/components/CometChatCompactMessageComposer/CometChatCompactMessageComposer.d.ts +247 -0
  49. package/dist/types/components/CometChatFormattingToolbar/CometChatFormattingToolbar.d.ts +29 -0
  50. package/dist/types/components/CometChatLinkDialog/CometChatLinkDialog.d.ts +22 -0
  51. package/dist/types/components/CometChatLinkPopover/CometChatLinkPopover.d.ts +24 -0
  52. package/dist/types/components/CometChatLinkPopover/index.d.ts +1 -0
  53. package/dist/types/components/useRichTextComposer/useRichTextComposer.d.ts +138 -0
  54. package/dist/types/formatters/CometChatFormatters/CometChatMarkdownFormatter/CometChatMarkdownFormatter.d.ts +109 -0
  55. package/dist/types/formatters/CometChatFormatters/CometChatRichTextFormatter.d.ts +32 -0
  56. package/dist/types/formatters/CometChatFormatters/CometChatUrlsFormatter/CometChatUrlsFormatter.d.ts +9 -3
  57. package/dist/types/formatters/index.d.ts +2 -0
  58. package/dist/types/index.d.ts +1 -0
  59. package/dist/types/utils/EmojiShortcodeUtils.d.ts +11 -0
  60. package/dist/types/utils/HtmlToMarkdown.d.ts +52 -0
  61. package/dist/types/utils/MarkdownPatternDetector.d.ts +108 -0
  62. package/dist/types/utils/RichTextFormatting.d.ts +143 -0
  63. package/dist/types/utils/util.d.ts +1 -1
  64. package/package.json +1 -1
@@ -116,10 +116,40 @@ box-sizing: border-box;
116
116
  text-overflow: ellipsis;
117
117
  white-space: nowrap;
118
118
  font: var(--cometchat-font-body-regular);
119
- font-style: normal;
120
119
  width: 100%;
121
120
  }
122
121
 
122
+ /* Inline code styling in conversation subtitle */
123
+ .cometchat-conversations__subtitle-text code {
124
+ font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;
125
+ font-size: 0.9em;
126
+ background: var(--cometchat-background-color-03);
127
+ color: var(--cometchat-text-color-secondary);
128
+ padding: 0 var(--cometchat-padding-1, 2px);
129
+ border-radius: var(--cometchat-radius-1, 4px);
130
+ border: 1px solid var(--cometchat-border-color-light);
131
+ }
132
+
133
+ /* Rich text formatting tags in conversation subtitle */
134
+ /* !important needed because the parent uses the `font` shorthand which resets font-weight/style on all descendants */
135
+ .cometchat-conversations__subtitle-text b,
136
+ .cometchat-conversations__subtitle-text strong {
137
+ font-weight: 700 !important;
138
+ }
139
+
140
+ .cometchat-conversations__subtitle-text i,
141
+ .cometchat-conversations__subtitle-text em {
142
+ font-style: italic !important;
143
+ }
144
+
145
+ .cometchat-conversations__subtitle-text u {
146
+ text-decoration: underline !important;
147
+ }
148
+
149
+ .cometchat-conversations__subtitle-text s {
150
+ text-decoration: line-through !important;
151
+ }
152
+
123
153
  .cometchat-conversations__subtitle-icon {
124
154
  display: flex;
125
155
  align-items: center;
@@ -449,10 +479,16 @@ background: var(--cometchat-icon-color-secondary, #A1A1A1);
449
479
  .cometchat-conversations__subtitle-text .cometchat-mentions > span{
450
480
  color: var(--cometchat-text-color-highlight,#6852D6);
451
481
  font: var(--cometchat-font-body-regular);
482
+ font-weight: normal;
483
+ font-style: normal;
484
+ text-decoration: none;
452
485
  }
453
486
  .cometchat-conversations__subtitle-text .cometchat-mentions-you > span{
454
487
  color: var(--cometchat-warning-color,#FFAB00);
455
488
  font: var(--cometchat-font-body-regular);
489
+ font-weight: normal;
490
+ font-style: normal;
491
+ text-decoration: none;
456
492
  }
457
493
 
458
494
  .cometchat-conversations__subtitle-typing {
@@ -100,7 +100,6 @@
100
100
  background: var(--cometchat-primary-color, #6852D6);
101
101
  }
102
102
 
103
-
104
103
  .cometchat-document-bubble-outgoing .cometchat-document-bubble__body-icon {
105
104
  background: var(--cometchat-static-white, #FFF);
106
105
  }
@@ -0,0 +1,257 @@
1
+ /* CometChatFormattingToolbar - formatting toolbar styles */
2
+
3
+ /* Base toolbar container */
4
+ .cometchat-formatting-toolbar {
5
+ display: flex;
6
+ align-items: center;
7
+ gap: var(--cometchat-padding-4, 16px);
8
+ padding: 0;
9
+ background: var(--cometchat-background-color-02);
10
+ border-radius: 0;
11
+ font-family: var(--cometchat-font-family);
12
+ box-sizing: border-box;
13
+ overflow-x: auto;
14
+ overflow-y: hidden;
15
+ flex-wrap: nowrap;
16
+ -webkit-overflow-scrolling: touch;
17
+ scrollbar-width: none;
18
+ width: 100%;
19
+ }
20
+
21
+ .cometchat-formatting-toolbar::-webkit-scrollbar {
22
+ display: none;
23
+ }
24
+
25
+ /* Toolbar button base styles */
26
+ .cometchat-formatting-toolbar__button {
27
+ display: flex;
28
+ justify-content: center;
29
+ align-items: center;
30
+ width: 24px;
31
+ height: 24px;
32
+ padding: 0;
33
+ border: none;
34
+ border-radius: var(--cometchat-radius-1);
35
+ background: transparent;
36
+ cursor: pointer;
37
+ transition: background-color 0.15s ease;
38
+ flex-shrink: 0;
39
+ }
40
+
41
+ /* Override CometChatButton styles for toolbar buttons */
42
+ .cometchat-formatting-toolbar__button .cometchat {
43
+ width: 100%;
44
+ height: 100%;
45
+ }
46
+
47
+ .cometchat-formatting-toolbar__button .cometchat-button {
48
+ width: 100%;
49
+ height: 100%;
50
+ min-width: unset;
51
+ min-height: unset;
52
+ padding: 0;
53
+ background: transparent;
54
+ border-radius: var(--cometchat-radius-1);
55
+ }
56
+
57
+ .cometchat-formatting-toolbar__button .cometchat-button:hover {
58
+ background: transparent;
59
+ }
60
+
61
+ .cometchat-formatting-toolbar__button .cometchat-button:active {
62
+ background: transparent;
63
+ }
64
+
65
+ .cometchat-formatting-toolbar__button .cometchat-button__icon-default {
66
+ width: 20px;
67
+ height: 20px;
68
+ background-color: var(--cometchat-icon-color-secondary);
69
+ }
70
+
71
+ .cometchat-formatting-toolbar__button:hover .cometchat-button__icon-default {
72
+ background-color: var(--cometchat-icon-color-primary);
73
+ }
74
+
75
+ /* Button icon styling */
76
+ .cometchat-formatting-toolbar__button img {
77
+ width: 20px;
78
+ height: 20px;
79
+ object-fit: contain;
80
+ filter: brightness(0) saturate(100%);
81
+ opacity: 0.6;
82
+ }
83
+
84
+ /* Button hover state */
85
+ .cometchat-formatting-toolbar__button:hover img {
86
+ filter: brightness(0) saturate(100%);
87
+ opacity: 1;
88
+ }
89
+
90
+ /* Button active/pressed state */
91
+ .cometchat-formatting-toolbar__button--active {
92
+ border-radius: var(--cometchat-radius-1, 4px);
93
+ background: var(--cometchat-background-color-04);
94
+ }
95
+
96
+ .cometchat-formatting-toolbar__button--active .cometchat-button__icon-default {
97
+ background-color: var(--cometchat-icon-color-primary);
98
+ }
99
+
100
+ .cometchat-formatting-toolbar__button--active img {
101
+ opacity: 1;
102
+ filter: brightness(0) saturate(100%);
103
+ }
104
+
105
+ /* Button disabled state */
106
+ .cometchat-formatting-toolbar__button--disabled {
107
+ opacity: 0.4;
108
+ cursor: not-allowed;
109
+ pointer-events: none;
110
+ }
111
+
112
+ .cometchat-formatting-toolbar__button--disabled:hover {
113
+ background: transparent;
114
+ }
115
+
116
+ .cometchat-formatting-toolbar__button--disabled img {
117
+ opacity: 0.4;
118
+ }
119
+
120
+ /* Button focus state for accessibility */
121
+ .cometchat-formatting-toolbar__button:focus {
122
+ outline: 2px solid var(--cometchat-border-color-highlight);
123
+ outline-offset: 1px;
124
+ }
125
+
126
+ .cometchat-formatting-toolbar__button:focus:not(:focus-visible) {
127
+ outline: none;
128
+ }
129
+
130
+ /* Separator between button groups */
131
+ .cometchat-formatting-toolbar__separator {
132
+ width: 1px;
133
+ height: 20px;
134
+ background: var(--cometchat-border-color-default);
135
+ margin: 0 var(--cometchat-margin-1, 4px);
136
+ flex-shrink: 0;
137
+ }
138
+
139
+ /* Floating toolbar modifier */
140
+ .cometchat-formatting-toolbar--floating {
141
+ position: fixed;
142
+ z-index: 1000;
143
+ transform: translateX(-50%);
144
+ background: var(--cometchat-background-color-02);
145
+ border-radius: var(--cometchat-radius-2);
146
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15), 0 2px 4px rgba(0, 0, 0, 0.1);
147
+ border: 1px solid var(--cometchat-border-color-light);
148
+ width: auto;
149
+ padding: var(--cometchat-padding-1, 4px) var(--cometchat-padding-2, 8px);
150
+ gap: var(--cometchat-spacing-1, 4px);
151
+ }
152
+
153
+ /* Compact buttons in floating toolbar */
154
+ .cometchat-formatting-toolbar--floating .cometchat-formatting-toolbar__button {
155
+ width: 22px;
156
+ height: 22px;
157
+ }
158
+
159
+ .cometchat-formatting-toolbar--floating .cometchat-formatting-toolbar__button img {
160
+ width: 16px;
161
+ height: 16px;
162
+ }
163
+
164
+ .cometchat-formatting-toolbar--floating .cometchat-formatting-toolbar__separator {
165
+ height: 16px;
166
+ margin: 0 var(--cometchat-margin-1, 4px);
167
+ }
168
+
169
+ /* Link input popover container */
170
+ .cometchat-formatting-toolbar__link-input {
171
+ position: absolute;
172
+ top: 100%;
173
+ left: 50%;
174
+ transform: translateX(-50%);
175
+ margin-top: var(--cometchat-margin-2, 8px);
176
+ display: flex;
177
+ flex-direction: column;
178
+ gap: var(--cometchat-spacing-2, 8px);
179
+ padding: var(--cometchat-padding-3, 12px);
180
+ background: var(--cometchat-background-color-01);
181
+ border: 1px solid var(--cometchat-border-color-default);
182
+ border-radius: var(--cometchat-radius-2, 8px);
183
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
184
+ min-width: 280px;
185
+ z-index: 1001;
186
+ }
187
+
188
+ /* Link input field */
189
+ .cometchat-formatting-toolbar__link-input input {
190
+ width: 100%;
191
+ padding: var(--cometchat-padding-2, 8px) var(--cometchat-padding-3, 12px);
192
+ border: 1px solid var(--cometchat-border-color-default);
193
+ border-radius: var(--cometchat-radius-1, 4px);
194
+ background: var(--cometchat-background-color-01);
195
+ color: var(--cometchat-text-color-primary);
196
+ font: var(--cometchat-font-body-regular);
197
+ outline: none;
198
+ transition: border-color 0.15s ease;
199
+ }
200
+
201
+ .cometchat-formatting-toolbar__link-input input:focus {
202
+ border-color: var(--cometchat-border-color-highlight);
203
+ }
204
+
205
+ .cometchat-formatting-toolbar__link-input input::placeholder {
206
+ color: var(--cometchat-text-color-tertiary);
207
+ }
208
+
209
+ /* Link input error message */
210
+ .cometchat-formatting-toolbar__link-input-error {
211
+ color: var(--cometchat-error-color);
212
+ font: var(--cometchat-font-caption1-regular);
213
+ }
214
+
215
+ /* Link input action buttons container */
216
+ .cometchat-formatting-toolbar__link-input-actions {
217
+ display: flex;
218
+ justify-content: flex-end;
219
+ gap: var(--cometchat-spacing-2, 8px);
220
+ }
221
+
222
+ /* Override CometChatButton styles for link dialog buttons */
223
+ .cometchat-formatting-toolbar__link-input-button .cometchat-button {
224
+ width: auto;
225
+ min-width: 80px;
226
+ height: 32px;
227
+ padding: var(--cometchat-padding-1, 4px) var(--cometchat-padding-3, 12px);
228
+ }
229
+
230
+ .cometchat-formatting-toolbar__link-input-button--primary .cometchat-button {
231
+ background: var(--cometchat-primary-button-background);
232
+ }
233
+
234
+ .cometchat-formatting-toolbar__link-input-button--primary .cometchat-button:hover {
235
+ background: var(--cometchat-extended-primary-color-800);
236
+ }
237
+
238
+ .cometchat-formatting-toolbar__link-input-button:not(.cometchat-formatting-toolbar__link-input-button--primary) .cometchat-button {
239
+ background: var(--cometchat-background-color-01);
240
+ border: 1px solid var(--cometchat-border-color-default);
241
+ }
242
+
243
+ .cometchat-formatting-toolbar__link-input-button:not(.cometchat-formatting-toolbar__link-input-button--primary) .cometchat-button:hover {
244
+ background: var(--cometchat-background-color-02);
245
+ }
246
+
247
+ .cometchat-formatting-toolbar__link-input-button:not(.cometchat-formatting-toolbar__link-input-button--primary) .cometchat-button__text {
248
+ color: var(--cometchat-text-color-primary);
249
+ }
250
+
251
+ /* Link input buttons */
252
+ .cometchat-formatting-toolbar__link-input-button {
253
+ padding: 0;
254
+ border: none;
255
+ border-radius: var(--cometchat-radius-1, 4px);
256
+ background: transparent;
257
+ }
@@ -0,0 +1,191 @@
1
+ /* Backdrop overlay for the link dialog */
2
+ .cometchat-link-dialog__backdrop {
3
+ position: fixed;
4
+ top: 0;
5
+ left: 0;
6
+ right: 0;
7
+ bottom: 0;
8
+ background: rgba(0, 0, 0, 0.5);
9
+ display: flex;
10
+ align-items: center;
11
+ justify-content: center;
12
+ z-index: 1000;
13
+ }
14
+
15
+ /* Container for the link dialog */
16
+ .cometchat-link-dialog {
17
+ width: 400px;
18
+ max-width: 90vw;
19
+ box-sizing: border-box;
20
+ display: flex;
21
+ padding: var(--cometchat-padding-6, 24px);
22
+ flex-direction: column;
23
+ align-items: stretch;
24
+ gap: var(--cometchat-padding-4, 16px);
25
+ border-radius: var(--cometchat-radius-4, 16px);
26
+ border: 1px solid var(--cometchat-border-color-light);
27
+ background: var(--cometchat-background-color-01);
28
+ box-shadow: 0px 12px 16px -4px rgba(16, 24, 40, 0.08), 0px 4px 6px -2px rgba(16, 24, 40, 0.03);
29
+ }
30
+
31
+ /* Header section with title and close button */
32
+ .cometchat-link-dialog__header {
33
+ display: flex;
34
+ flex-direction: row;
35
+ justify-content: space-between;
36
+ align-items: center;
37
+ }
38
+
39
+ /* Dialog title */
40
+ .cometchat-link-dialog__title {
41
+ color: var(--cometchat-text-color-primary);
42
+ text-align: left;
43
+ font: var(--cometchat-font-heading4-bold);
44
+ font-style: normal;
45
+ }
46
+
47
+ /* Close button */
48
+ .cometchat-link-dialog__close-button {
49
+ width: 24px;
50
+ height: 24px;
51
+ cursor: pointer;
52
+ mask: url("../../assets/close.svg") center center no-repeat;
53
+ -webkit-mask: url("../../assets/close.svg") center center no-repeat;
54
+ mask-size: contain;
55
+ -webkit-mask-size: contain;
56
+ background: var(--cometchat-icon-color-primary);
57
+ }
58
+
59
+ /* Divider between header and content */
60
+ .cometchat-link-dialog__divider {
61
+ height: 1px;
62
+ width: 100%;
63
+ background: var(--cometchat-border-color-light);
64
+ }
65
+
66
+ /* Content section with form fields */
67
+ .cometchat-link-dialog__content {
68
+ display: flex;
69
+ flex-direction: column;
70
+ gap: var(--cometchat-padding-5, 20px);
71
+ }
72
+
73
+ /* Individual form field */
74
+ .cometchat-link-dialog__field {
75
+ display: flex;
76
+ flex-direction: column;
77
+ gap: var(--cometchat-padding, 4px);
78
+ }
79
+
80
+ /* Field label */
81
+ .cometchat-link-dialog__label {
82
+ color: var(--cometchat-text-color-primary);
83
+ font: var(--cometchat-font-heading4-medium);
84
+ font-style: normal;
85
+ text-align: left;
86
+ }
87
+
88
+ /* Input field */
89
+ .cometchat-link-dialog__input {
90
+ display: flex;
91
+ padding: var(--cometchat-padding-2, 8px) var(--cometchat-padding-3, 12px);
92
+ align-items: center;
93
+ align-self: stretch;
94
+ border-radius: var(--cometchat-radius-2, 8px);
95
+ border: 1px solid var(--cometchat-border-color-light);
96
+ background: var(--cometchat-background-color-01);
97
+ color: var(--cometchat-text-color-primary);
98
+ font: var(--cometchat-font-body-regular);
99
+ font-style: normal;
100
+ outline: none;
101
+ transition: border-color 0.2s ease;
102
+ }
103
+
104
+ .cometchat-link-dialog__input:focus {
105
+ border-color: var(--cometchat-primary-color);
106
+ }
107
+
108
+ .cometchat-link-dialog__input::placeholder {
109
+ color: var(--cometchat-text-color-tertiary);
110
+ }
111
+
112
+ /* Input field with error */
113
+ .cometchat-link-dialog__input--error {
114
+ border-color: var(--cometchat-error-color);
115
+ }
116
+
117
+ .cometchat-link-dialog__input--error:focus {
118
+ border-color: var(--cometchat-error-color);
119
+ }
120
+
121
+ /* Error message */
122
+ .cometchat-link-dialog__error {
123
+ color: var(--cometchat-error-color);
124
+ font: var(--cometchat-font-caption2-regular);
125
+ font-style: normal;
126
+ }
127
+
128
+ /* Button group */
129
+ .cometchat-link-dialog__button-group {
130
+ display: flex;
131
+ padding-top: var(--cometchat-padding-2, 8px);
132
+ align-items: center;
133
+ gap: var(--cometchat-padding-2, 8px);
134
+ align-self: stretch;
135
+ width: 100%;
136
+ }
137
+
138
+ /* Button containers */
139
+ .cometchat-link-dialog__button-cancel,
140
+ .cometchat-link-dialog__button-submit {
141
+ flex: 1;
142
+ display: flex;
143
+ height: 40px;
144
+ }
145
+
146
+ .cometchat-link-dialog__button-cancel > .cometchat,
147
+ .cometchat-link-dialog__button-submit > .cometchat {
148
+ height: 100%;
149
+ width: 100%;
150
+ }
151
+
152
+ .cometchat-link-dialog__button-cancel .cometchat-button,
153
+ .cometchat-link-dialog__button-submit .cometchat-button {
154
+ height: 100%;
155
+ width: 100%;
156
+ }
157
+
158
+ /* Cancel button styling */
159
+ .cometchat-link-dialog__button-cancel .cometchat-button {
160
+ padding: var(--cometchat-padding-2, 8px) var(--cometchat-padding-5, 20px);
161
+ border: 1px solid var(--cometchat-border-color-dark);
162
+ background: var(--cometchat-background-color-01);
163
+ }
164
+
165
+ .cometchat-link-dialog__button-cancel .cometchat-button .cometchat-button__text {
166
+ color: var(--cometchat-text-color-primary);
167
+ }
168
+
169
+ /* Submit button styling */
170
+ .cometchat-link-dialog__button-submit .cometchat-button {
171
+ padding: var(--cometchat-padding-2, 8px) var(--cometchat-padding-5, 20px);
172
+ background: var(--cometchat-primary-color);
173
+ border: 1px solid var(--cometchat-primary-color);
174
+ }
175
+
176
+ .cometchat-link-dialog__button-submit .cometchat-button .cometchat-button__text {
177
+ color: var(--cometchat-static-white);
178
+ }
179
+
180
+
181
+ /* Disabled submit button styling */
182
+ .cometchat-link-dialog__button-submit--disabled .cometchat-button {
183
+ background: var(--cometchat-background-color-04) !important;
184
+ border-color: var(--cometchat-background-color-04) !important;
185
+ cursor: not-allowed;
186
+ opacity: 0.6;
187
+ }
188
+
189
+ .cometchat-link-dialog__button-submit--disabled .cometchat-button .cometchat-button__text {
190
+ color: var(--cometchat-text-color-tertiary) !important;
191
+ }
@@ -0,0 +1,128 @@
1
+ /* CometChatLinkPopover - Link popover shown on click */
2
+
3
+ .cometchat-link-popover {
4
+ position: absolute;
5
+ z-index: 1000;
6
+ transform: translateY(-100%);
7
+ }
8
+
9
+ .cometchat-link-popover__content {
10
+ position: relative;
11
+ background: var(--cometchat-background-color-01, #fff);
12
+ border-radius: var(--cometchat-radius-4, 16px);
13
+ padding: var(--cometchat-padding-6, 24px);
14
+ width: 320px;
15
+ max-width: 90vw;
16
+ box-sizing: border-box;
17
+ display: flex;
18
+ flex-direction: column;
19
+ gap: var(--cometchat-spacing-3, 12px);
20
+ border: 1px solid var(--cometchat-border-color-light);
21
+ box-shadow: 0px 12px 16px -4px rgba(16, 24, 40, 0.08), 0px 4px 6px -2px rgba(16, 24, 40, 0.03);
22
+ }
23
+
24
+ .cometchat-link-popover__close {
25
+ position: absolute;
26
+ top: var(--cometchat-spacing-4, 16px);
27
+ right: var(--cometchat-spacing-4, 16px);
28
+ width: 24px;
29
+ height: 24px;
30
+ border: none;
31
+ background: transparent;
32
+ cursor: pointer;
33
+ font-size: 20px;
34
+ line-height: 1;
35
+ color: var(--cometchat-icon-color-secondary, #727272);
36
+ display: flex;
37
+ align-items: center;
38
+ justify-content: center;
39
+ border-radius: var(--cometchat-radius-1, 4px);
40
+ padding: 0;
41
+ transition: background-color 0.2s ease;
42
+ }
43
+
44
+ .cometchat-link-popover__close:hover {
45
+ background: var(--cometchat-background-color-02, #f5f5f5);
46
+ color: var(--cometchat-icon-color-primary, #141414);
47
+ }
48
+
49
+ .cometchat-link-popover__text {
50
+ font: var(--cometchat-font-heading4-bold);
51
+ color: var(--cometchat-text-color-primary, #141414);
52
+ padding-right: var(--cometchat-padding-7, 28px);
53
+ word-break: break-word;
54
+ text-align: left;
55
+ }
56
+
57
+ .cometchat-link-popover__url {
58
+ font: var(--cometchat-font-body-regular);
59
+ color: var(--cometchat-primary-color, #6852d6);
60
+ text-decoration: none;
61
+ display: block;
62
+ word-break: break-all;
63
+ text-align: left;
64
+ }
65
+
66
+ .cometchat-link-popover__url:hover {
67
+ text-decoration: underline;
68
+ }
69
+
70
+ .cometchat-link-popover__actions {
71
+ display: flex;
72
+ gap: var(--cometchat-spacing-3, 12px);
73
+ }
74
+
75
+ /* Button wrappers — shared */
76
+ .cometchat-link-popover__button-edit,
77
+ .cometchat-link-popover__button-remove {
78
+ flex: 1;
79
+ display: flex;
80
+ height: 40px;
81
+ }
82
+
83
+ .cometchat-link-popover__button-edit > .cometchat,
84
+ .cometchat-link-popover__button-remove > .cometchat {
85
+ width: 100%;
86
+ height: 100%;
87
+ }
88
+
89
+ /* Shared button styles */
90
+ .cometchat-link-popover__button-edit .cometchat-button,
91
+ .cometchat-link-popover__button-remove .cometchat-button {
92
+ padding: var(--cometchat-padding-2, 8px) var(--cometchat-padding-4, 16px);
93
+ border-radius: var(--cometchat-radius-2, 8px);
94
+ cursor: pointer;
95
+ transition: background-color 0.2s ease;
96
+ height: 100%;
97
+ width: 100%;
98
+ }
99
+
100
+ /* Shared button text */
101
+ .cometchat-link-popover__button-edit .cometchat-button .cometchat-button__text,
102
+ .cometchat-link-popover__button-remove .cometchat-button .cometchat-button__text {
103
+ font: var(--cometchat-font-button-medium);
104
+ }
105
+
106
+ /* Edit button — specific */
107
+ .cometchat-link-popover__button-edit .cometchat-button {
108
+ background: var(--cometchat-background-color-01, #fff);
109
+ border: 1px solid var(--cometchat-border-color-default, #e8e8e8);
110
+ }
111
+
112
+ .cometchat-link-popover__button-edit .cometchat-button:hover {
113
+ background: var(--cometchat-background-color-02, #f5f5f5);
114
+ }
115
+
116
+ .cometchat-link-popover__button-edit .cometchat-button .cometchat-button__text {
117
+ color: var(--cometchat-text-color-primary, #141414);
118
+ }
119
+
120
+ /* Remove button — specific */
121
+ .cometchat-link-popover__button-remove .cometchat-button {
122
+ background: var(--cometchat-error-color, #f44336);
123
+ border: none;
124
+ }
125
+
126
+ .cometchat-link-popover__button-remove .cometchat-button .cometchat-button__text {
127
+ color: var(--cometchat-static-white, #fff);
128
+ }