@echothink-ui/activity 0.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 (39) hide show
  1. package/README.md +5 -0
  2. package/dist/components/ActivityFeed.d.ts +7 -0
  3. package/dist/components/ActivityTimeline.d.ts +6 -0
  4. package/dist/components/AlertBanner.d.ts +10 -0
  5. package/dist/components/ChangelogPanel.d.ts +6 -0
  6. package/dist/components/IncidentPanel.d.ts +6 -0
  7. package/dist/components/MentionList.d.ts +7 -0
  8. package/dist/components/NotificationCenter.d.ts +10 -0
  9. package/dist/components/NotificationItem.d.ts +8 -0
  10. package/dist/components/SubscriptionPreferences.d.ts +7 -0
  11. package/dist/components/SystemStatusBanner.d.ts +9 -0
  12. package/dist/components/WatcherList.d.ts +8 -0
  13. package/dist/components/helpers.d.ts +4 -0
  14. package/dist/components/types.d.ts +65 -0
  15. package/dist/index.cjs +944 -0
  16. package/dist/index.cjs.map +1 -0
  17. package/dist/index.css +711 -0
  18. package/dist/index.css.map +1 -0
  19. package/dist/index.d.ts +16 -0
  20. package/dist/index.js +904 -0
  21. package/dist/index.js.map +1 -0
  22. package/package.json +43 -0
  23. package/src/components/ActivityFeed.tsx +83 -0
  24. package/src/components/ActivityTimeline.tsx +178 -0
  25. package/src/components/AlertBanner.tsx +69 -0
  26. package/src/components/ChangelogPanel.tsx +100 -0
  27. package/src/components/IncidentPanel.tsx +82 -0
  28. package/src/components/MentionList.tsx +85 -0
  29. package/src/components/NotificationCenter.tsx +117 -0
  30. package/src/components/NotificationItem.tsx +99 -0
  31. package/src/components/SubscriptionPreferences.test.tsx +64 -0
  32. package/src/components/SubscriptionPreferences.tsx +140 -0
  33. package/src/components/SystemStatusBanner.tsx +46 -0
  34. package/src/components/WatcherList.test.tsx +50 -0
  35. package/src/components/WatcherList.tsx +122 -0
  36. package/src/components/helpers.ts +15 -0
  37. package/src/components/types.ts +71 -0
  38. package/src/index.tsx +31 -0
  39. package/src/styles.css +854 -0
package/src/styles.css ADDED
@@ -0,0 +1,854 @@
1
+ @import "@echothink-ui/core/styles.css";
2
+
3
+ .eth-activity-system-status-banner {
4
+ --eth-alert-accent: var(--eth-color-info);
5
+ --eth-alert-background: color-mix(
6
+ in srgb,
7
+ var(--eth-alert-accent) 8%,
8
+ var(--eth-color-layer-01)
9
+ );
10
+ --eth-alert-border: var(--eth-color-border-subtle);
11
+
12
+ box-shadow: inset 3px 0 0 var(--eth-alert-accent);
13
+ min-block-size: 3rem;
14
+ }
15
+
16
+ .eth-activity-system-status-banner.eth-activity-alert-banner--warning {
17
+ --eth-alert-accent: var(--eth-color-warning);
18
+ --eth-alert-background: color-mix(
19
+ in srgb,
20
+ var(--eth-color-warning) 16%,
21
+ var(--eth-color-layer-01)
22
+ );
23
+ }
24
+
25
+ .eth-activity-system-status-banner.eth-activity-alert-banner--danger {
26
+ --eth-alert-accent: var(--eth-color-danger);
27
+ --eth-alert-background: color-mix(
28
+ in srgb,
29
+ var(--eth-color-danger) 7%,
30
+ var(--eth-color-layer-01)
31
+ );
32
+ }
33
+
34
+ .eth-activity-system-status-banner .eth-inline-notification.cds--inline-notification {
35
+ min-block-size: 3rem;
36
+ }
37
+
38
+ .eth-activity-system-status-banner .cds--inline-notification__text-wrapper {
39
+ align-items: baseline;
40
+ column-gap: var(--eth-space-sm);
41
+ display: flex;
42
+ flex-wrap: wrap;
43
+ min-inline-size: 0;
44
+ }
45
+
46
+ .eth-activity-system-status-banner .cds--inline-notification__subtitle {
47
+ color: var(--eth-color-text-secondary);
48
+ }
49
+
50
+ .eth-activity-notification-item,
51
+ .eth-activity-notification-center {
52
+ --eth-activity-notification-layer: var(--eth-color-layer-01);
53
+ --eth-activity-notification-layer-hover: var(--eth-color-layer-hover);
54
+ --eth-activity-notification-border: var(--eth-color-border-subtle);
55
+ --eth-activity-notification-focus: var(--eth-color-focus);
56
+ --eth-activity-notification-text-primary: var(--eth-color-text-primary);
57
+ --eth-activity-notification-text-secondary: var(--eth-color-text-secondary);
58
+ }
59
+
60
+ .eth-activity-notification-center {
61
+ inline-size: min(100%, 42rem);
62
+ min-inline-size: 0;
63
+ }
64
+
65
+ .eth-activity-notification-center.eth-surface {
66
+ gap: var(--eth-space-lg);
67
+ }
68
+
69
+ .eth-activity-notification-center .eth-surface__header {
70
+ border-block-end: 1px solid var(--eth-color-border-subtle);
71
+ padding-block-end: var(--eth-space-lg);
72
+ }
73
+
74
+ .eth-activity-notification-center .eth-surface__subtitle {
75
+ font-size: calc(0.875rem * var(--eth-text-scale, 1));
76
+ line-height: 1.4286;
77
+ margin-block-start: var(--eth-space-xs);
78
+ }
79
+
80
+ .eth-activity-notification-center__toolbar {
81
+ align-items: center;
82
+ display: flex;
83
+ justify-content: flex-end;
84
+ min-inline-size: 0;
85
+ }
86
+
87
+ .eth-activity-notification-center__groups,
88
+ .eth-activity-notification-center__group,
89
+ .eth-activity-notification-center__items {
90
+ display: grid;
91
+ min-inline-size: 0;
92
+ }
93
+
94
+ .eth-activity-notification-center__groups {
95
+ gap: var(--eth-space-xl);
96
+ }
97
+
98
+ .eth-activity-notification-center__group {
99
+ gap: var(--eth-space-sm);
100
+ }
101
+
102
+ .eth-activity-notification-center__group h3 {
103
+ color: var(--eth-color-text-secondary);
104
+ font-size: calc(0.75rem * var(--eth-text-scale, 1));
105
+ font-weight: 600;
106
+ line-height: 1.3333;
107
+ margin: 0;
108
+ text-transform: uppercase;
109
+ }
110
+
111
+ .eth-activity-notification-center__items {
112
+ border-block-start: 1px solid var(--eth-color-border-subtle);
113
+ list-style: none;
114
+ margin: 0;
115
+ padding: 0;
116
+ }
117
+
118
+ .eth-activity-notification-center__row {
119
+ align-items: start;
120
+ border-block-end: 1px solid var(--eth-color-border-subtle);
121
+ display: grid;
122
+ gap: var(--eth-space-sm);
123
+ grid-template-columns: minmax(0, 1fr) max-content;
124
+ min-inline-size: 0;
125
+ padding-block: var(--eth-space-sm);
126
+ }
127
+
128
+ .eth-activity-notification-center__row > .eth-button {
129
+ justify-self: end;
130
+ margin-block-start: var(--eth-space-sm);
131
+ }
132
+
133
+ .eth-activity-notification-center__empty {
134
+ background: var(--eth-color-layer-02);
135
+ border: 1px dashed var(--eth-color-border-subtle);
136
+ color: var(--eth-color-text-secondary);
137
+ font-size: calc(0.875rem * var(--eth-text-scale, 1));
138
+ line-height: 1.4286;
139
+ margin: 0;
140
+ padding: var(--eth-space-lg);
141
+ }
142
+
143
+ .eth-activity-notification-item {
144
+ --eth-activity-notification-accent: var(--eth-color-info);
145
+
146
+ align-items: stretch;
147
+ background: var(--eth-activity-notification-layer);
148
+ border: 1px solid var(--eth-activity-notification-border);
149
+ border-inline-start: 3px solid var(--eth-activity-notification-accent);
150
+ color: var(--eth-activity-notification-text-primary);
151
+ display: grid;
152
+ inline-size: 100%;
153
+ max-inline-size: 100%;
154
+ min-inline-size: 0;
155
+ }
156
+
157
+ .eth-activity-notification-item[data-severity="warning"] {
158
+ --eth-activity-notification-accent: var(--eth-color-warning);
159
+ }
160
+
161
+ .eth-activity-notification-item[data-severity="danger"],
162
+ .eth-activity-notification-item[data-severity="error"] {
163
+ --eth-activity-notification-accent: var(--eth-color-danger);
164
+ }
165
+
166
+ .eth-activity-notification-item[data-severity="success"] {
167
+ --eth-activity-notification-accent: var(--eth-color-success);
168
+ }
169
+
170
+ .eth-activity-notification-item--read {
171
+ --eth-activity-notification-accent: var(--eth-activity-notification-border);
172
+
173
+ background: var(--eth-color-layer-02);
174
+ }
175
+
176
+ .eth-activity-notification-item__main {
177
+ align-items: start;
178
+ background: transparent;
179
+ border: 0;
180
+ color: inherit;
181
+ display: grid;
182
+ gap: var(--eth-space-md);
183
+ grid-template-columns: max-content minmax(0, 1fr) max-content;
184
+ inline-size: 100%;
185
+ min-block-size: 3.5rem;
186
+ min-inline-size: 0;
187
+ padding: var(--eth-space-md);
188
+ text-align: start;
189
+ }
190
+
191
+ button.eth-activity-notification-item__main {
192
+ cursor: pointer;
193
+ font: inherit;
194
+ transition: background-color 110ms cubic-bezier(0.2, 0, 0.38, 0.9);
195
+ }
196
+
197
+ button.eth-activity-notification-item__main:hover {
198
+ background: var(--eth-activity-notification-layer-hover);
199
+ }
200
+
201
+ button.eth-activity-notification-item__main:focus-visible,
202
+ .eth-activity-notification-item__actions :where(button, a):focus-visible {
203
+ outline: 2px solid var(--eth-activity-notification-focus);
204
+ outline-offset: -2px;
205
+ }
206
+
207
+ .eth-activity-notification-item__severity {
208
+ justify-self: start;
209
+ }
210
+
211
+ .eth-activity-notification-item__content {
212
+ display: grid;
213
+ gap: var(--eth-space-xs);
214
+ min-inline-size: 0;
215
+ }
216
+
217
+ .eth-activity-notification-item__title,
218
+ .eth-activity-notification-item__body {
219
+ font-size: calc(0.875rem * var(--eth-text-scale, 1));
220
+ line-height: 1.4286;
221
+ min-inline-size: 0;
222
+ overflow-wrap: anywhere;
223
+ }
224
+
225
+ .eth-activity-notification-item__title {
226
+ color: var(--eth-activity-notification-text-primary);
227
+ font-weight: 600;
228
+ }
229
+
230
+ .eth-activity-notification-item--read .eth-activity-notification-item__title {
231
+ font-weight: 400;
232
+ }
233
+
234
+ .eth-activity-notification-item__body {
235
+ color: var(--eth-activity-notification-text-secondary);
236
+ }
237
+
238
+ .eth-activity-notification-item__time {
239
+ color: var(--eth-activity-notification-text-secondary);
240
+ font-family: var(--eth-font-mono, "IBM Plex Mono", monospace);
241
+ font-size: calc(0.75rem * var(--eth-text-scale, 1));
242
+ font-variant-numeric: tabular-nums;
243
+ justify-self: end;
244
+ line-height: 1.3333;
245
+ white-space: nowrap;
246
+ }
247
+
248
+ .eth-activity-notification-item--read .eth-activity-notification-item__title,
249
+ .eth-activity-notification-item--read .eth-activity-notification-item__body,
250
+ .eth-activity-notification-item--read .eth-activity-notification-item__time {
251
+ color: var(--eth-color-text-secondary);
252
+ }
253
+
254
+ .eth-activity-notification-item__actions {
255
+ align-items: center;
256
+ border-block-start: 1px solid var(--eth-color-border-subtle);
257
+ display: flex;
258
+ flex-wrap: wrap;
259
+ gap: var(--eth-space-sm);
260
+ justify-content: flex-start;
261
+ min-inline-size: 0;
262
+ padding: var(--eth-space-sm) var(--eth-space-md);
263
+ }
264
+
265
+ .eth-activity-notification-item__actions .eth-actions {
266
+ gap: var(--eth-space-sm);
267
+ }
268
+
269
+ .eth-activity-notification-item__actions .eth-button {
270
+ margin: 0;
271
+ }
272
+
273
+ .eth-activity-notification-center__row .eth-activity-notification-item {
274
+ inline-size: 100%;
275
+ }
276
+
277
+ .eth-activity-subscription-preferences {
278
+ align-content: start;
279
+ background: var(--eth-color-layer-01);
280
+ border: 1px solid var(--eth-color-border-subtle);
281
+ border-radius: 0;
282
+ color: var(--eth-color-text-primary);
283
+ display: grid;
284
+ gap: 0;
285
+ inline-size: min(100%, 48rem);
286
+ min-inline-size: 0;
287
+ padding: 0;
288
+ }
289
+
290
+ .eth-activity-subscription-preferences > .eth-surface__header {
291
+ background: var(--eth-color-layer-02);
292
+ border-block-end: 1px solid var(--eth-color-border-subtle);
293
+ padding: var(--eth-space-xl);
294
+ }
295
+
296
+ .eth-activity-subscription-preferences .eth-surface__heading h2 {
297
+ color: var(--eth-color-text-primary);
298
+ font-size: calc(1rem * var(--eth-text-scale, 1));
299
+ font-weight: 600;
300
+ line-height: 1.375;
301
+ margin: 0;
302
+ }
303
+
304
+ .eth-activity-subscription-preferences .eth-surface__description {
305
+ color: var(--eth-color-text-secondary);
306
+ font-size: calc(0.875rem * var(--eth-text-scale, 1));
307
+ line-height: 1.4286;
308
+ max-inline-size: 38rem;
309
+ }
310
+
311
+ .eth-activity-subscription-preferences__categories {
312
+ display: grid;
313
+ min-inline-size: 0;
314
+ }
315
+
316
+ .eth-activity-subscription-preferences__category {
317
+ align-items: start;
318
+ border-block-end: 1px solid var(--eth-color-border-subtle);
319
+ column-gap: var(--eth-space-2xl);
320
+ display: grid;
321
+ grid-template-columns: minmax(10rem, 14rem) minmax(0, 1fr);
322
+ margin: 0;
323
+ min-inline-size: 0;
324
+ padding: var(--eth-space-lg) var(--eth-space-xl);
325
+ row-gap: var(--eth-space-lg);
326
+ }
327
+
328
+ .eth-activity-subscription-preferences__category:last-child {
329
+ border-block-end: 0;
330
+ }
331
+
332
+ .eth-activity-subscription-preferences__category-header {
333
+ display: grid;
334
+ gap: var(--eth-space-xs);
335
+ min-inline-size: 0;
336
+ }
337
+
338
+ .eth-activity-subscription-preferences__category h3 {
339
+ color: var(--eth-color-text-primary);
340
+ font-size: calc(0.875rem * var(--eth-text-scale, 1));
341
+ font-weight: 600;
342
+ line-height: 1.2857;
343
+ margin: 0;
344
+ overflow-wrap: anywhere;
345
+ }
346
+
347
+ .eth-activity-subscription-preferences__category-description,
348
+ .eth-activity-subscription-preferences__channel-description,
349
+ .eth-activity-subscription-preferences__channel-empty,
350
+ .eth-activity-subscription-preferences__empty {
351
+ color: var(--eth-color-text-secondary);
352
+ font-size: calc(0.875rem * var(--eth-text-scale, 1));
353
+ line-height: 1.4286;
354
+ margin: 0;
355
+ }
356
+
357
+ .eth-activity-subscription-preferences__channels {
358
+ border: 1px solid var(--eth-color-border-subtle);
359
+ display: grid;
360
+ min-inline-size: 0;
361
+ }
362
+
363
+ .eth-activity-subscription-preferences__channel {
364
+ align-items: center;
365
+ background: var(--eth-color-layer-01);
366
+ display: grid;
367
+ gap: var(--eth-space-lg);
368
+ grid-template-columns: minmax(0, 1fr) max-content;
369
+ min-block-size: 3rem;
370
+ min-inline-size: 0;
371
+ padding: var(--eth-space-md);
372
+ }
373
+
374
+ .eth-activity-subscription-preferences__channel + .eth-activity-subscription-preferences__channel {
375
+ border-block-start: 1px solid var(--eth-color-border-subtle);
376
+ }
377
+
378
+ .eth-activity-subscription-preferences__channel--disabled {
379
+ background: var(--eth-color-layer-02);
380
+ }
381
+
382
+ .eth-activity-subscription-preferences__channel-copy {
383
+ display: grid;
384
+ gap: var(--eth-space-xs);
385
+ min-inline-size: 0;
386
+ }
387
+
388
+ .eth-activity-subscription-preferences__channel-label {
389
+ color: var(--eth-color-text-primary);
390
+ font-size: calc(0.875rem * var(--eth-text-scale, 1));
391
+ font-weight: 600;
392
+ line-height: 1.4286;
393
+ overflow-wrap: anywhere;
394
+ }
395
+
396
+ .eth-activity-subscription-preferences__channel--disabled
397
+ .eth-activity-subscription-preferences__channel-label,
398
+ .eth-activity-subscription-preferences__channel--disabled
399
+ .eth-activity-subscription-preferences__channel-description {
400
+ color: var(--eth-color-text-helper);
401
+ }
402
+
403
+ .eth-activity-subscription-preferences__channel .cds--toggle {
404
+ margin: 0;
405
+ max-inline-size: 100%;
406
+ min-inline-size: 0;
407
+ }
408
+
409
+ .eth-activity-subscription-preferences__channel-empty,
410
+ .eth-activity-subscription-preferences__empty {
411
+ background: var(--eth-color-layer-02);
412
+ padding: var(--eth-space-lg);
413
+ }
414
+
415
+ .eth-activity-subscription-preferences__empty {
416
+ border-block-start: 1px solid var(--eth-color-border-subtle);
417
+ padding-inline: var(--eth-space-xl);
418
+ }
419
+
420
+ .eth-activity-watcher-list {
421
+ inline-size: min(100%, 34rem);
422
+ min-inline-size: 0;
423
+ }
424
+
425
+ .eth-activity-watcher-list .eth-surface__header {
426
+ border-block-end: 1px solid var(--eth-color-border-subtle);
427
+ padding-block-end: var(--eth-space-md);
428
+ }
429
+
430
+ .eth-activity-watcher-list__items {
431
+ border: 1px solid var(--eth-color-border-subtle);
432
+ display: grid;
433
+ list-style: none;
434
+ margin: 0;
435
+ min-inline-size: 0;
436
+ padding: 0;
437
+ }
438
+
439
+ .eth-activity-watcher-list__item {
440
+ align-items: center;
441
+ background: var(--eth-color-layer-01);
442
+ display: grid;
443
+ gap: var(--eth-space-md);
444
+ grid-template-columns: 2.25rem minmax(0, 1fr) max-content;
445
+ min-block-size: 3.5rem;
446
+ min-inline-size: 0;
447
+ padding: var(--eth-space-md);
448
+ }
449
+
450
+ .eth-activity-watcher-list__item + .eth-activity-watcher-list__item {
451
+ border-block-start: 1px solid var(--eth-color-border-subtle);
452
+ }
453
+
454
+ .eth-activity-watcher-list__avatar {
455
+ align-items: center;
456
+ background: var(--eth-color-layer-02);
457
+ block-size: 2.25rem;
458
+ border: 1px solid var(--eth-color-border-subtle);
459
+ color: var(--eth-color-text-primary);
460
+ display: inline-flex;
461
+ font-size: calc(0.75rem * var(--eth-text-scale, 1));
462
+ font-weight: 600;
463
+ inline-size: 2.25rem;
464
+ justify-content: center;
465
+ line-height: 1.3333;
466
+ overflow: hidden;
467
+ }
468
+
469
+ .eth-activity-watcher-list__avatar img {
470
+ block-size: 100%;
471
+ inline-size: 100%;
472
+ object-fit: cover;
473
+ }
474
+
475
+ .eth-activity-watcher-list__identity {
476
+ display: grid;
477
+ gap: var(--eth-space-xs);
478
+ min-inline-size: 0;
479
+ }
480
+
481
+ .eth-activity-watcher-list__identity strong {
482
+ color: var(--eth-color-text-primary);
483
+ font-size: calc(0.875rem * var(--eth-text-scale, 1));
484
+ font-weight: 600;
485
+ line-height: 1.4286;
486
+ overflow-wrap: anywhere;
487
+ }
488
+
489
+ .eth-activity-watcher-list__identity span,
490
+ .eth-activity-watcher-list__empty {
491
+ color: var(--eth-color-text-secondary);
492
+ font-size: calc(0.75rem * var(--eth-text-scale, 1));
493
+ line-height: 1.3333;
494
+ }
495
+
496
+ .eth-activity-watcher-list__actions {
497
+ align-items: center;
498
+ display: inline-flex;
499
+ flex-wrap: wrap;
500
+ gap: var(--eth-space-sm);
501
+ justify-content: flex-end;
502
+ justify-self: end;
503
+ min-inline-size: 0;
504
+ }
505
+
506
+ .eth-activity-watcher-list__actions .eth-icon-button {
507
+ margin: 0;
508
+ }
509
+
510
+ .eth-activity-watcher-list__footer {
511
+ align-items: center;
512
+ border-block-start: 1px solid var(--eth-color-border-subtle);
513
+ display: flex;
514
+ flex-wrap: wrap;
515
+ gap: var(--eth-space-sm);
516
+ min-inline-size: 0;
517
+ padding-block-start: var(--eth-space-md);
518
+ }
519
+
520
+ .eth-activity-watcher-list__empty {
521
+ background: var(--eth-color-layer-02);
522
+ border: 1px dashed var(--eth-color-border-subtle);
523
+ margin: 0;
524
+ padding: var(--eth-space-lg);
525
+ }
526
+
527
+ .eth-activity-mention-list {
528
+ min-inline-size: 0;
529
+ }
530
+
531
+ .eth-activity-mention-list__items {
532
+ border-block-start: 1px solid var(--eth-color-border-subtle);
533
+ display: grid;
534
+ list-style: none;
535
+ margin: 0;
536
+ min-inline-size: 0;
537
+ padding: 0;
538
+ }
539
+
540
+ .eth-activity-mention-list__item {
541
+ align-items: flex-start;
542
+ border-block-end: 1px solid var(--eth-color-border-subtle);
543
+ display: grid;
544
+ gap: var(--eth-space-lg);
545
+ grid-template-columns: 2.5rem minmax(0, 1fr) max-content;
546
+ min-inline-size: 0;
547
+ padding-block: var(--eth-space-lg);
548
+ }
549
+
550
+ .eth-activity-mention-list__item:last-child {
551
+ border-block-end: 0;
552
+ }
553
+
554
+ .eth-activity-mention-list__avatar {
555
+ align-items: center;
556
+ background: var(--eth-color-layer-02);
557
+ block-size: 2.5rem;
558
+ border: 1px solid var(--eth-color-border-subtle);
559
+ color: var(--eth-color-text-primary);
560
+ display: inline-flex;
561
+ flex: 0 0 auto;
562
+ font-size: calc(0.75rem * var(--eth-text-scale, 1));
563
+ font-weight: 600;
564
+ inline-size: 2.5rem;
565
+ justify-content: center;
566
+ line-height: 1.3333;
567
+ }
568
+
569
+ .eth-activity-mention-list__content {
570
+ display: grid;
571
+ gap: var(--eth-space-xs);
572
+ min-inline-size: 0;
573
+ }
574
+
575
+ .eth-activity-mention-list__header {
576
+ align-items: center;
577
+ display: flex;
578
+ flex-wrap: wrap;
579
+ gap: var(--eth-space-sm);
580
+ min-inline-size: 0;
581
+ }
582
+
583
+ .eth-activity-mention-list__sender {
584
+ color: var(--eth-color-text-primary);
585
+ font-size: calc(0.875rem * var(--eth-text-scale, 1));
586
+ font-weight: 600;
587
+ line-height: 1.4286;
588
+ }
589
+
590
+ .eth-activity-mention-list__reference {
591
+ align-items: center;
592
+ background: var(--eth-color-layer-02);
593
+ border: 1px solid var(--eth-color-border-subtle);
594
+ color: var(--eth-color-text-secondary);
595
+ display: inline-flex;
596
+ font-family: var(--eth-font-mono, "IBM Plex Mono", monospace);
597
+ font-size: calc(0.75rem * var(--eth-text-scale, 1));
598
+ line-height: 1.3333;
599
+ min-block-size: 1.5rem;
600
+ padding-inline: var(--eth-space-sm);
601
+ }
602
+
603
+ .eth-activity-mention-list__excerpt {
604
+ color: var(--eth-color-text-primary);
605
+ font-size: calc(0.875rem * var(--eth-text-scale, 1));
606
+ line-height: 1.4286;
607
+ margin: 0;
608
+ overflow-wrap: anywhere;
609
+ }
610
+
611
+ .eth-activity-mention-list__time,
612
+ .eth-activity-mention-list__empty {
613
+ color: var(--eth-color-text-secondary);
614
+ font-size: calc(0.75rem * var(--eth-text-scale, 1));
615
+ line-height: 1.3333;
616
+ }
617
+
618
+ .eth-activity-mention-list__time {
619
+ font-family: var(--eth-font-mono, "IBM Plex Mono", monospace);
620
+ font-variant-numeric: tabular-nums;
621
+ }
622
+
623
+ .eth-activity-mention-list__item > .eth-button {
624
+ justify-self: end;
625
+ min-inline-size: 5rem;
626
+ }
627
+
628
+ .eth-activity-mention-list__empty {
629
+ background: var(--eth-color-layer-02);
630
+ border: 1px dashed var(--eth-color-border-subtle);
631
+ margin: 0;
632
+ padding: var(--eth-space-lg);
633
+ }
634
+
635
+ .eth-activity-incident-panel {
636
+ min-inline-size: 0;
637
+ }
638
+
639
+ .eth-activity-incident-panel__list {
640
+ display: grid;
641
+ gap: var(--eth-space-md);
642
+ min-inline-size: 0;
643
+ }
644
+
645
+ .eth-activity-incident-panel__incident {
646
+ --eth-activity-incident-accent: var(--eth-color-info);
647
+ --eth-activity-incident-row: var(--eth-color-layer-02);
648
+ --eth-activity-incident-row-border: var(--eth-color-border-subtle);
649
+
650
+ background: var(--eth-activity-incident-row);
651
+ border: 1px solid var(--eth-activity-incident-row-border);
652
+ border-inline-start: 4px solid var(--eth-activity-incident-accent);
653
+ color: var(--eth-color-text-primary);
654
+ display: grid;
655
+ gap: var(--eth-space-md);
656
+ min-inline-size: 0;
657
+ padding: var(--eth-space-lg);
658
+ }
659
+
660
+ .eth-activity-incident-panel__incident[data-severity="danger"] {
661
+ --eth-activity-incident-accent: var(--eth-color-danger);
662
+ }
663
+
664
+ .eth-activity-incident-panel__incident[data-severity="warning"] {
665
+ --eth-activity-incident-accent: var(--eth-color-warning);
666
+ }
667
+
668
+ .eth-activity-incident-panel__incident[data-severity="success"] {
669
+ --eth-activity-incident-accent: var(--eth-color-success);
670
+ }
671
+
672
+ .eth-activity-incident-panel__incident-header {
673
+ align-items: flex-start;
674
+ display: grid;
675
+ gap: var(--eth-space-md);
676
+ grid-template-columns: minmax(0, 1fr) max-content;
677
+ min-inline-size: 0;
678
+ }
679
+
680
+ .eth-activity-incident-panel__summary {
681
+ display: grid;
682
+ gap: var(--eth-space-xs);
683
+ min-inline-size: 0;
684
+ }
685
+
686
+ .eth-activity-incident-panel__summary h3 {
687
+ color: var(--eth-color-text-primary);
688
+ font-size: calc(1rem * var(--eth-text-scale, 1));
689
+ font-weight: 600;
690
+ line-height: 1.375;
691
+ margin: 0;
692
+ overflow-wrap: anywhere;
693
+ }
694
+
695
+ .eth-activity-incident-panel__summary p,
696
+ .eth-activity-incident-panel__empty {
697
+ color: var(--eth-color-text-secondary);
698
+ font-size: calc(0.875rem * var(--eth-text-scale, 1));
699
+ line-height: 1.4286;
700
+ margin: 0;
701
+ }
702
+
703
+ .eth-activity-incident-panel__severity {
704
+ justify-self: end;
705
+ }
706
+
707
+ .eth-activity-incident-panel__metadata {
708
+ background: var(--eth-activity-incident-row-border);
709
+ border: 1px solid var(--eth-activity-incident-row-border);
710
+ display: grid;
711
+ gap: 1px;
712
+ grid-template-columns: repeat(auto-fit, minmax(min(100%, 9rem), 1fr));
713
+ margin: 0;
714
+ min-inline-size: 0;
715
+ }
716
+
717
+ .eth-activity-incident-panel__metadata div {
718
+ background: var(--eth-color-layer-01);
719
+ min-inline-size: 0;
720
+ padding: var(--eth-space-md);
721
+ }
722
+
723
+ .eth-activity-incident-panel__metadata dt {
724
+ color: var(--eth-color-text-secondary);
725
+ font-size: calc(0.75rem * var(--eth-text-scale, 1));
726
+ line-height: 1.3333;
727
+ margin: 0 0 var(--eth-space-xs);
728
+ }
729
+
730
+ .eth-activity-incident-panel__metadata dd {
731
+ color: var(--eth-color-text-primary);
732
+ font-size: calc(0.875rem * var(--eth-text-scale, 1));
733
+ font-weight: 600;
734
+ line-height: 1.4286;
735
+ margin: 0;
736
+ min-inline-size: 0;
737
+ }
738
+
739
+ .eth-activity-incident-panel__metadata time {
740
+ font-family: var(--eth-font-mono, "IBM Plex Mono", monospace);
741
+ font-variant-numeric: tabular-nums;
742
+ }
743
+
744
+ .eth-activity-incident-panel__status {
745
+ --eth-activity-incident-status-color: var(--eth-color-info);
746
+
747
+ align-items: center;
748
+ display: inline-flex;
749
+ gap: var(--eth-space-xs);
750
+ max-inline-size: 100%;
751
+ min-inline-size: 0;
752
+ }
753
+
754
+ .eth-activity-incident-panel__status > span {
755
+ background: var(--eth-activity-incident-status-color);
756
+ block-size: 0.5rem;
757
+ border-radius: 50%;
758
+ flex: 0 0 auto;
759
+ inline-size: 0.5rem;
760
+ }
761
+
762
+ .eth-activity-incident-panel__status[data-status="investigating"] {
763
+ --eth-activity-incident-status-color: var(--eth-color-warning);
764
+ }
765
+
766
+ .eth-activity-incident-panel__status[data-status="resolved"] {
767
+ --eth-activity-incident-status-color: var(--eth-color-success);
768
+ }
769
+
770
+ .eth-activity-incident-panel__empty {
771
+ background: var(--eth-color-layer-02);
772
+ border: 1px dashed var(--eth-color-border-subtle);
773
+ padding: var(--eth-space-lg);
774
+ }
775
+
776
+ @media (width <= 42rem) {
777
+ .eth-activity-notification-center__row {
778
+ grid-template-columns: minmax(0, 1fr);
779
+ }
780
+
781
+ .eth-activity-notification-center__row > .eth-button {
782
+ justify-self: start;
783
+ margin-block-start: 0;
784
+ }
785
+
786
+ .eth-activity-notification-item__main {
787
+ grid-template-columns: max-content minmax(0, 1fr);
788
+ }
789
+
790
+ .eth-activity-notification-item__severity {
791
+ grid-row: 1 / span 2;
792
+ }
793
+
794
+ .eth-activity-notification-item__time {
795
+ grid-column: 2;
796
+ grid-row: 2;
797
+ justify-self: start;
798
+ }
799
+
800
+ .eth-activity-notification-item__actions {
801
+ justify-content: flex-start;
802
+ }
803
+
804
+ .eth-activity-subscription-preferences {
805
+ inline-size: 100%;
806
+ }
807
+
808
+ .eth-activity-subscription-preferences > .eth-surface__header,
809
+ .eth-activity-subscription-preferences__category,
810
+ .eth-activity-subscription-preferences__empty {
811
+ padding-inline: var(--eth-space-lg);
812
+ }
813
+
814
+ .eth-activity-subscription-preferences__category {
815
+ grid-template-columns: 1fr;
816
+ }
817
+
818
+ .eth-activity-subscription-preferences__channel {
819
+ grid-template-columns: minmax(0, 1fr);
820
+ }
821
+
822
+ .eth-activity-watcher-list__item {
823
+ align-items: start;
824
+ grid-template-columns: 2.25rem minmax(0, 1fr);
825
+ }
826
+
827
+ .eth-activity-watcher-list__actions {
828
+ grid-column: 2;
829
+ justify-content: flex-start;
830
+ justify-self: start;
831
+ }
832
+
833
+ .eth-activity-mention-list__item {
834
+ grid-template-columns: 2rem minmax(0, 1fr);
835
+ }
836
+
837
+ .eth-activity-mention-list__avatar {
838
+ block-size: 2rem;
839
+ inline-size: 2rem;
840
+ }
841
+
842
+ .eth-activity-mention-list__item > .eth-button {
843
+ grid-column: 2;
844
+ justify-self: start;
845
+ }
846
+
847
+ .eth-activity-incident-panel__incident-header {
848
+ grid-template-columns: 1fr;
849
+ }
850
+
851
+ .eth-activity-incident-panel__severity {
852
+ justify-self: start;
853
+ }
854
+ }