diff --git a/app/assets/javascripts/discourse/app/components/user-menu/bookmarks-list.js b/app/assets/javascripts/discourse/app/components/user-menu/bookmarks-list.js
index 0fbdde106d8..50878aa5fcf 100644
--- a/app/assets/javascripts/discourse/app/components/user-menu/bookmarks-list.js
+++ b/app/assets/javascripts/discourse/app/components/user-menu/bookmarks-list.js
@@ -73,7 +73,11 @@ export default class UserMenuBookmarksList extends UserMenuNotificationsList {
await Bookmark.applyTransformations(bookmarks);
content.push(
...bookmarks.map((bookmark) => {
- return new UserMenuBookmarkItem({ bookmark });
+ return new UserMenuBookmarkItem({
+ bookmark,
+ siteSettings: this.siteSettings,
+ site: this.site,
+ });
})
);
diff --git a/app/assets/javascripts/discourse/app/components/user-menu/icon-avatar.gjs b/app/assets/javascripts/discourse/app/components/user-menu/icon-avatar.gjs
new file mode 100644
index 00000000000..599d36443f7
--- /dev/null
+++ b/app/assets/javascripts/discourse/app/components/user-menu/icon-avatar.gjs
@@ -0,0 +1,12 @@
+import Component from "@glimmer/component";
+import avatar from "discourse/helpers/bound-avatar-template";
+import dIcon from "discourse-common/helpers/d-icon";
+
+export default class IconAvatar extends Component {
+
+
+ {{avatar @data.avatarTemplate "small"}}
+ {{dIcon @data.icon}}
+
+
+}
diff --git a/app/assets/javascripts/discourse/app/components/user-menu/menu-item.hbs b/app/assets/javascripts/discourse/app/components/user-menu/menu-item.hbs
index 53021381291..bd3ca7038c4 100644
--- a/app/assets/javascripts/discourse/app/components/user-menu/menu-item.hbs
+++ b/app/assets/javascripts/discourse/app/components/user-menu/menu-item.hbs
@@ -4,7 +4,11 @@
title={{this.linkTitle}}
{{on "click" this.onClick}}
>
- {{d-icon this.icon}}
+ {{#if this.iconComponent}}
+
+ {{else}}
+ {{d-icon this.icon}}
+ {{/if}}
{{#if this.label}}
diff --git a/app/assets/javascripts/discourse/app/components/user-menu/menu-item.js b/app/assets/javascripts/discourse/app/components/user-menu/menu-item.js
index 4dace94b2d3..b6a728fc70d 100644
--- a/app/assets/javascripts/discourse/app/components/user-menu/menu-item.js
+++ b/app/assets/javascripts/discourse/app/components/user-menu/menu-item.js
@@ -49,6 +49,14 @@ export default class UserMenuItem extends Component {
return this.#item.topicId;
}
+ get iconComponent() {
+ return this.#item.iconComponent;
+ }
+
+ get iconComponentArgs() {
+ return this.#item.iconComponentArgs;
+ }
+
get #item() {
return this.args.item;
}
diff --git a/app/assets/javascripts/discourse/app/components/user-menu/menu.hbs b/app/assets/javascripts/discourse/app/components/user-menu/menu.hbs
index 25efaa7a1cc..7f55f10dd5d 100644
--- a/app/assets/javascripts/discourse/app/components/user-menu/menu.hbs
+++ b/app/assets/javascripts/discourse/app/components/user-menu/menu.hbs
@@ -1,5 +1,5 @@