diff --git a/app/assets/css/main.css b/app/assets/css/main.css index 738e134..aa318c5 100755 --- a/app/assets/css/main.css +++ b/app/assets/css/main.css @@ -75,3 +75,16 @@ mark.search-match.is-current { 70% { box-shadow: 0 0 0 14px rgba(249, 115, 22, 0), 0 0 0 2px #8cff32 inset; } 100% { box-shadow: 0 0 0 0 rgba(249, 115, 22, 0), 0 0 0 2px #8cff32 inset; } } + +/* Colors for Typesense rich text */ +.red { + color: #C00000 !important; +} + +.purple { + color: #7030A0 !important; +} + +.blue { + color: #0070C0 !important; +} diff --git a/app/components/inbox/InboxActivity.vue b/app/components/inbox/InboxActivity.vue index 5577315..811f1ac 100755 --- a/app/components/inbox/InboxActivity.vue +++ b/app/components/inbox/InboxActivity.vue @@ -305,7 +305,15 @@ async function renderBody() { const el = bodyContainer.value if (!el) return - const raw = props.activity?.body + let raw = props.activity?.body || '' + + if (raw) { + raw = raw + .replaceAll('#00ccff', '#0070C0') + .replaceAll('#FF0000', '#C00000') + .replaceAll('#333399', '#7030A0') + } + el.innerHTML = raw ? ((fixLink(raw) as string) || '') : '' if (scrollContainer.value) scrollContainer.value.scrollTop = 0