Fix: quick launch not showing nested services (#4561)

Co-authored-by: shamoon <4887959+shamoon@users.noreply.github.com>
pull/4571/head
Adi Vaknin 2 weeks ago committed by GitHub
parent 1b79e51194
commit 2f7d948a5c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -166,6 +166,18 @@ const headerStyles = {
boxedWidgets: "m-5 mb-0 sm:m-9 sm:mb-0 sm:mt-1", boxedWidgets: "m-5 mb-0 sm:m-9 sm:mb-0 sm:mt-1",
}; };
function getAllServices(services) {
function get(sg) {
let nestedServices = [...sg.services];
if (sg.groups.length > 0) {
nestedServices = [...nestedServices, ...sg.groups.map(get).flat()];
}
return nestedServices;
}
return [...services.map(get).flat()];
}
function Home({ initialSettings }) { function Home({ initialSettings }) {
const { i18n } = useTranslation(); const { i18n } = useTranslation();
const { theme, setTheme } = useContext(ThemeContext); const { theme, setTheme } = useContext(ThemeContext);
@ -182,10 +194,9 @@ function Home({ initialSettings }) {
const { data: bookmarks } = useSWR("/api/bookmarks"); const { data: bookmarks } = useSWR("/api/bookmarks");
const { data: widgets } = useSWR("/api/widgets"); const { data: widgets } = useSWR("/api/widgets");
const servicesAndBookmarks = [ const servicesAndBookmarks = [...bookmarks.map((bg) => bg.bookmarks).flat(), ...getAllServices(services)].filter(
...services.map((sg) => sg.services).flat(), (i) => i?.href,
...bookmarks.map((bg) => bg.bookmarks).flat(), );
].filter((i) => i?.href);
useEffect(() => { useEffect(() => {
if (settings.language) { if (settings.language) {

Loading…
Cancel
Save