Compare commits
2 commits
c173064627
...
b2d23b7c4c
Author | SHA1 | Date | |
---|---|---|---|
b2d23b7c4c | |||
5c97b40ea6 |
2 changed files with 6 additions and 3 deletions
|
@ -3,6 +3,10 @@ use crate::{prelude::*, DEFAULT_AVATAR_URL};
|
|||
|
||||
use apb::{field::OptionalString, Activity, ActivityMut, Actor, Base, Object, ObjectMut};
|
||||
|
||||
lazy_static::lazy_static! {
|
||||
static ref REGEX: regex::Regex = regex::Regex::new(r":\w+:").expect("failed compiling custom emoji regex");
|
||||
}
|
||||
|
||||
#[component]
|
||||
pub fn ActorStrip(object: crate::Object) -> impl IntoView {
|
||||
let actor_id = object.id().unwrap_or_default().to_string();
|
||||
|
@ -51,8 +55,7 @@ pub fn ActorBanner(object: crate::Object) -> impl IntoView {
|
|||
|
||||
#[component]
|
||||
fn DisplayName(mut name: String) -> impl IntoView {
|
||||
let custom_emoji_regex = regex::Regex::new(r":\w+:").expect("failed compiling regex pattern");
|
||||
for m in custom_emoji_regex.find_iter(&name.clone()) {
|
||||
for m in REGEX.find_iter(&name.clone()) {
|
||||
// TODO this is a clear unmitigated unsanitized html injection ahahahahaha but accounts
|
||||
// with many custom emojis in their names mess with my frontend and i dont want to
|
||||
// deal with it rn
|
||||
|
|
|
@ -7,7 +7,7 @@ use crate::prelude::*;
|
|||
use apb::{field::OptionalString, target::Addressed, ActivityMut, Base, Collection, CollectionMut, Object, ObjectMut};
|
||||
|
||||
lazy_static::lazy_static! {
|
||||
static ref REGEX: Regex = regex::Regex::new("<a href=\"(.+)\" class=\"u-url mention\">@(\\w+)(@\\w+|)</a>").expect("failed compiling @ regex");
|
||||
static ref REGEX: Regex = regex::Regex::new("<a href=\"([-a-zA-Z0-9()@:%_\\+.~#?&\\/=]+)\" class=\"u-url mention\">@(\\w+)(@\\w+|)</a>").expect("failed compiling @ regex");
|
||||
}
|
||||
|
||||
#[component]
|
||||
|
|
Loading…
Reference in a new issue