Jacky Zhao
2023-08-19 78f4cdbe109308fa33cb87387952aef5a528ebbe
avoid 404 on icon for spa navigations with anchors
2 files modified
8 ■■■■■ changed files
quartz/components/Head.tsx 4 ●●●● patch | view | raw | blame | history
quartz/components/scripts/spa.inline.ts 4 ●●● patch | view | raw | blame | history
quartz/components/Head.tsx
@@ -1,4 +1,4 @@
import { pathToRoot } from "../util/path"
import { joinSegments, pathToRoot } from "../util/path"
import { JSResourceToScriptElement } from "../util/resources"
import { QuartzComponentConstructor, QuartzComponentProps } from "./types"
@@ -8,7 +8,7 @@
    const description = fileData.description?.trim() ?? "No description provided"
    const { css, js } = externalResources
    const baseDir = pathToRoot(fileData.slug!)
    const iconPath = baseDir + "/static/icon.png"
    const iconPath = joinSegments(baseDir, "static/icon.png")
    const ogImagePath = `https://${cfg.baseUrl}/static/og-image.png`
    return (
quartz/components/scripts/spa.inline.ts
@@ -66,7 +66,6 @@
  // scroll into place and add history
  if (!isBack) {
    history.pushState({}, "", url)
    if (url.hash) {
      const el = document.getElementById(url.hash.substring(1))
      el?.scrollIntoView()
@@ -81,6 +80,9 @@
  const elementsToAdd = html.head.querySelectorAll(":not([spa-preserve])")
  elementsToAdd.forEach((el) => document.head.appendChild(el))
  // delay setting the url until now
  // at this point everything is loaded so changing the url should resolve to the correct addresses
  history.pushState({}, "", url)
  notifyNav(getFullSlug(window))
  delete announcer.dataset.persist
}