mirror of
https://github.com/alrayyes/wiki.git
synced 2025-05-02 14:58:14 +00:00
fix: deep clone before relativizing urls in transclude (closes #640)
This commit is contained in:
parent
7bcf27241f
commit
2e9896c893
3 changed files with 13 additions and 1 deletions
quartz/util
|
@ -1,5 +1,9 @@
|
|||
import { slug as slugAnchor } from "github-slugger"
|
||||
import type { Element as HastElement } from "hast"
|
||||
import rfdc from "rfdc"
|
||||
|
||||
const clone = rfdc()
|
||||
|
||||
// this file must be isomorphic so it can't use node libs (e.g. path)
|
||||
|
||||
export const QUARTZ = "quartz"
|
||||
|
@ -121,7 +125,8 @@ const _rebaseHastElement = (
|
|||
}
|
||||
}
|
||||
|
||||
export function normalizeHastElement(el: HastElement, curBase: FullSlug, newBase: FullSlug) {
|
||||
export function normalizeHastElement(rawEl: HastElement, curBase: FullSlug, newBase: FullSlug) {
|
||||
const el = clone(rawEl) // clone so we dont modify the original page
|
||||
_rebaseHastElement(el, "src", curBase, newBase)
|
||||
_rebaseHastElement(el, "href", curBase, newBase)
|
||||
if (el.children) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue