diff --git a/src/components/status.css b/src/components/status.css index 755addcb..238324b1 100644 --- a/src/components/status.css +++ b/src/components/status.css @@ -7,6 +7,13 @@ transparent min(160px, 50%) ); } +.status-group { + background: linear-gradient( + 160deg, + var(--group-faded-color), + transparent min(160px, 50%) + ); +} .status-reply-to { background: linear-gradient( 160deg, @@ -14,7 +21,7 @@ transparent min(160px, 50%) ); } -.status-reblog .status-reply-to { +:is(.status-reblog, .status-group) .status-reply-to { background: linear-gradient( -20deg, var(--reply-to-faded-color), @@ -51,6 +58,11 @@ margin-right: 4px; vertical-align: text-bottom; } +.status-group .status-pre-meta .icon { + color: var(--group-color); + margin-right: 4px; + vertical-align: text-bottom; +} /* STATUS */ diff --git a/src/components/status.jsx b/src/components/status.jsx index 844fa0df..3e8c85cd 100644 --- a/src/components/status.jsx +++ b/src/components/status.jsx @@ -136,6 +136,7 @@ function Status({ username, emojis: accountEmojis, bot, + group, }, id, repliesCount, @@ -230,6 +231,25 @@ function Status({ if (reblog) { // If has statusID, means useItemID (cached in states) + + if (group) { + return ( +
+
+ {' '} + +
+ +
+ ); + } + return (
diff --git a/src/index.css b/src/index.css index 5c7d0ad7..c5d5cb4e 100644 --- a/src/index.css +++ b/src/index.css @@ -35,6 +35,8 @@ --button-plain-bg-hover-color: rgba(128, 128, 128, 0.1); --reblog-color: var(--purple-color); --reblog-faded-color: #892be220; + --group-color: var(--green-color); + --group-faded-color: #00640020; --reply-to-color: var(--orange-color); --reply-to-text-color: #b36200; --favourite-color: var(--red-color); diff --git a/src/utils/timeline-utils.jsx b/src/utils/timeline-utils.jsx index d718069e..1ed2d96a 100644 --- a/src/utils/timeline-utils.jsx +++ b/src/utils/timeline-utils.jsx @@ -6,7 +6,7 @@ export function groupBoosts(values) { let serialBoosts = 0; for (let i = 0; i < values.length; i++) { const item = values[i]; - if (item.reblog) { + if (item.reblog && !item.account?.group) { boostStash.push(item); serialBoosts++; } else {