mirror of
https://github.com/gethomepage/homepage.git
synced 2026-09-26 05:51:17 -07:00
Tweak: move favicon population earlier (#7041)
Docker CI / Docker Build & Push (push) Has been cancelled
Lint / Linting Checks (push) Has been cancelled
Release Drafter / Update Release Draft (push) Has been cancelled
Release Drafter / Auto Label PR (push) Has been cancelled
Tests / vitest (1) (push) Has been cancelled
Tests / vitest (2) (push) Has been cancelled
Tests / vitest (3) (push) Has been cancelled
Tests / vitest (4) (push) Has been cancelled
Docker CI / Docker Build & Push (push) Has been cancelled
Lint / Linting Checks (push) Has been cancelled
Release Drafter / Update Release Draft (push) Has been cancelled
Release Drafter / Auto Label PR (push) Has been cancelled
Tests / vitest (1) (push) Has been cancelled
Tests / vitest (2) (push) Has been cancelled
Tests / vitest (3) (push) Has been cancelled
Tests / vitest (4) (push) Has been cancelled
This commit is contained in:
@@ -524,7 +524,7 @@ describe("pages/index Home behavior", () => {
|
|||||||
state.widgetsData = [];
|
state.widgetsData = [];
|
||||||
|
|
||||||
const { setTheme, setColor, setSettings } = await renderIndex({
|
const { setTheme, setColor, setSettings } = await renderIndex({
|
||||||
initialSettings: { title: "Homepage", layout: {} },
|
initialSettings: { title: "Homepage", layout: {}, favicon: "/x.ico" },
|
||||||
settings: {
|
settings: {
|
||||||
title: "Homepage",
|
title: "Homepage",
|
||||||
layout: {},
|
layout: {},
|
||||||
@@ -533,7 +533,6 @@ describe("pages/index Home behavior", () => {
|
|||||||
color: "emerald",
|
color: "emerald",
|
||||||
disableIndexing: true,
|
disableIndexing: true,
|
||||||
base: "/base/",
|
base: "/base/",
|
||||||
favicon: "/x.ico",
|
|
||||||
},
|
},
|
||||||
theme: "dark",
|
theme: "dark",
|
||||||
color: "slate",
|
color: "slate",
|
||||||
@@ -551,6 +550,20 @@ describe("pages/index Home behavior", () => {
|
|||||||
expect(document.querySelector('link[rel="icon"]')?.getAttribute("href")).toBe("/x.ico");
|
expect(document.querySelector('link[rel="icon"]')?.getAttribute("href")).toBe("/x.ico");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// Safari reads the head without running JS, so the favicon has to be there before the
|
||||||
|
// settings context is populated, and mask-icon must not be
|
||||||
|
it("renders a custom favicon before the settings context is populated", async () => {
|
||||||
|
await renderIndex({
|
||||||
|
initialSettings: { title: "Homepage", layout: {}, favicon: "/x.ico" },
|
||||||
|
settings: {},
|
||||||
|
});
|
||||||
|
|
||||||
|
expect(document.querySelector('link[rel="icon"]')?.getAttribute("href")).toBe("/x.ico");
|
||||||
|
expect(document.querySelector('link[rel="apple-touch-icon"]')?.getAttribute("href")).toBe("/x.ico");
|
||||||
|
expect(document.querySelector('link[rel="mask-icon"]')).toBeNull();
|
||||||
|
expect(document.querySelector('link[rel="shortcut icon"]')).toBeNull();
|
||||||
|
});
|
||||||
|
|
||||||
it("marks information widgets as right-aligned for known widget types", async () => {
|
it("marks information widgets as right-aligned for known widget types", async () => {
|
||||||
await renderIndex({
|
await renderIndex({
|
||||||
initialSettings: { title: "Homepage", layout: {} },
|
initialSettings: { title: "Homepage", layout: {} },
|
||||||
|
|||||||
+4
-3
@@ -426,10 +426,11 @@ function Home({ initialSettings }) {
|
|||||||
/>
|
/>
|
||||||
{settings.disableIndexing && <meta name="robots" content="noindex, nofollow" />}
|
{settings.disableIndexing && <meta name="robots" content="noindex, nofollow" />}
|
||||||
{settings.base && <base href={settings.base} />}
|
{settings.base && <base href={settings.base} />}
|
||||||
{settings.favicon ? (
|
{/* from props, not context so its set before running JS */}
|
||||||
|
{initialSettings.favicon ? (
|
||||||
<>
|
<>
|
||||||
<link rel="icon" href={settings.favicon} />
|
<link rel="icon" href={initialSettings.favicon} />
|
||||||
<link rel="apple-touch-icon" sizes="180x180" href={settings.favicon} />
|
<link rel="apple-touch-icon" sizes="180x180" href={initialSettings.favicon} />
|
||||||
</>
|
</>
|
||||||
) : (
|
) : (
|
||||||
<>
|
<>
|
||||||
|
|||||||
Reference in New Issue
Block a user