From 1d85ea8c3d336b94de3eb1fe44eb0a888db1b784 Mon Sep 17 00:00:00 2001 From: saberzero1 Date: Mon, 27 Apr 2026 21:38:35 +0200 Subject: [PATCH] build: bundle dependencies and ship pre-built dist --- dist/components/index.js | 221 +++++++++++++++++++++-------------- dist/components/index.js.map | 2 +- dist/index.js | 217 ++++++++++++++++++++-------------- dist/index.js.map | 2 +- 4 files changed, 262 insertions(+), 180 deletions(-) diff --git a/dist/components/index.js b/dist/components/index.js index ef5a507..c58e177 100644 --- a/dist/components/index.js +++ b/dist/components/index.js @@ -1,6 +1,3 @@ -import { jsx, jsxs, Fragment } from 'preact/jsx-runtime'; -import { h } from 'preact'; - var __create = Object.create; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; @@ -59,8 +56,8 @@ var require_cjs = __commonJS({ function updatePosition(str) { var lines = str.match(NEWLINE_REGEX); if (lines) lineno += lines.length; - var i = str.lastIndexOf(NEWLINE); - column = ~i ? str.length - i : column + str.length; + var i2 = str.lastIndexOf(NEWLINE); + column = ~i2 ? str.length - i2 : column + str.length; } function position3() { var start2 = { line: lineno, column }; @@ -91,22 +88,22 @@ var require_cjs = __commonJS({ } } function match(re2) { - var m = re2.exec(style); - if (!m) return; - var str = m[0]; + var m2 = re2.exec(style); + if (!m2) return; + var str = m2[0]; updatePosition(str); style = style.slice(str.length); - return m; + return m2; } function whitespace2() { match(WHITESPACE_REGEX); } function comments(rules) { - var c; + var c2; rules = rules || []; - while (c = comment()) { - if (c !== false) { - rules.push(c); + while (c2 = comment()) { + if (c2 !== false) { + rules.push(c2); } } return rules; @@ -114,18 +111,18 @@ var require_cjs = __commonJS({ function comment() { var pos = position3(); if (FORWARD_SLASH != style.charAt(0) || ASTERISK != style.charAt(1)) return; - var i = 2; - while (EMPTY_STRING != style.charAt(i) && (ASTERISK != style.charAt(i) || FORWARD_SLASH != style.charAt(i + 1))) { - ++i; + var i2 = 2; + while (EMPTY_STRING != style.charAt(i2) && (ASTERISK != style.charAt(i2) || FORWARD_SLASH != style.charAt(i2 + 1))) { + ++i2; } - i += 2; - if (EMPTY_STRING === style.charAt(i - 1)) { + i2 += 2; + if (EMPTY_STRING === style.charAt(i2 - 1)) { return error("End of comment missing"); } - var str = style.slice(2, i - 2); + var str = style.slice(2, i2 - 2); column += 2; updatePosition(str); - style = style.slice(i); + style = style.slice(i2); column += 2; return pos({ type: TYPE_COMMENT, @@ -275,9 +272,9 @@ function getDate(data) { return dates?.[defaultDateType]; } function byDateAndAlphabetical() { - return (f1, f2) => { + return (f1, f22) => { const f1Date = getDate(f1); - const f2Date = getDate(f2); + const f2Date = getDate(f22); if (f1Date && f2Date) { return f2Date.getTime() - f1Date.getTime(); } else if (f1Date && !f2Date) { @@ -286,7 +283,7 @@ function byDateAndAlphabetical() { return 1; } const f1Title = (f1.frontmatter?.title ?? "").toLowerCase(); - const f2Title = (f2.frontmatter?.title ?? "").toLowerCase(); + const f2Title = (f22.frontmatter?.title ?? "").toLowerCase(); return f1Title.localeCompare(f2Title); }; } @@ -311,23 +308,23 @@ function joinSegments(...args) { } return joined; } -function endsWith(s, suffix) { - return s === suffix || s.endsWith("/" + suffix); +function endsWith(s2, suffix) { + return s2 === suffix || s2.endsWith("/" + suffix); } -function trimSuffix(s, suffix) { - if (endsWith(s, suffix)) { - s = s.slice(0, -suffix.length); +function trimSuffix(s2, suffix) { + if (endsWith(s2, suffix)) { + s2 = s2.slice(0, -suffix.length); } - return s; + return s2; } -function stripSlashes(s, onlyStripPrefix) { - if (s.startsWith("/")) { - s = s.substring(1); +function stripSlashes(s2, onlyStripPrefix) { + if (s2.startsWith("/")) { + s2 = s2.substring(1); } - if (!onlyStripPrefix && s.endsWith("/")) { - s = s.slice(0, -1); + if (!onlyStripPrefix && s2.endsWith("/")) { + s2 = s2.slice(0, -1); } - return s; + return s2; } function isFolderPath(fplike) { return fplike.endsWith("/") || endsWith(fplike, "index") || endsWith(fplike, "index.md") || endsWith(fplike, "index.html"); @@ -335,13 +332,13 @@ function isFolderPath(fplike) { function getAllSegmentPrefixes(path) { const segments = path.split("/"); const results = []; - for (let i = 0; i < segments.length; i++) { - results.push(segments.slice(0, i + 1).join("/")); + for (let i2 = 0; i2 < segments.length; i2++) { + results.push(segments.slice(0, i2 + 1).join("/")); } return results; } function pathToRoot(slug2) { - let rootPath = slug2.split("/").filter((x) => x !== "").slice(0, -1).map((_) => "..").join("/"); + let rootPath = slug2.split("/").filter((x2) => x2 !== "").slice(0, -1).map((_2) => "..").join("/"); if (rootPath.length === 0) { rootPath = "."; } @@ -351,26 +348,66 @@ function resolveRelative(current, target) { const res = joinSegments(pathToRoot(current), simplifySlug(target)); return res; } + +// node_modules/preact/dist/preact.mjs +var n; +var l; +var u; +var w = []; +function k(l2, u3, t2) { + var i2, r2, o2, e2 = {}; + for (o2 in u3) "key" == o2 ? i2 = u3[o2] : "ref" == o2 ? r2 = u3[o2] : e2[o2] = u3[o2]; + if (arguments.length > 2 && (e2.children = arguments.length > 3 ? n.call(arguments, 2) : t2), "function" == typeof l2 && null != l2.defaultProps) for (o2 in l2.defaultProps) void 0 === e2[o2] && (e2[o2] = l2.defaultProps[o2]); + return x(l2, e2, i2, r2, null); +} +function x(n2, t2, i2, r2, o2) { + var e2 = { type: n2, props: t2, key: i2, ref: r2, __k: null, __: null, __b: 0, __e: null, __c: null, constructor: void 0, __v: null == o2 ? ++u : o2, __i: -1, __u: 0 }; + return null != l.vnode && l.vnode(e2), e2; +} +function S(n2) { + return n2.children; +} +n = w.slice, l = { __e: function(n2, l2, u3, t2) { + for (var i2, r2, o2; l2 = l2.__; ) if ((i2 = l2.__c) && !i2.__) try { + if ((r2 = i2.constructor) && null != r2.getDerivedStateFromError && (i2.setState(r2.getDerivedStateFromError(n2)), o2 = i2.__d), null != i2.componentDidCatch && (i2.componentDidCatch(n2, t2 || {}), o2 = i2.__d), o2) return i2.__E = i2; + } catch (l3) { + n2 = l3; + } + throw n2; +} }, u = 0, "function" == typeof Promise ? Promise.prototype.then.bind(Promise.resolve()) : setTimeout, Math.random().toString(8); + +// node_modules/preact/jsx-runtime/dist/jsxRuntime.mjs +var f2 = 0; +function u2(e2, t2, n2, o2, i2, u3) { + t2 || (t2 = {}); + var a2, c2, p2 = t2; + if ("ref" in p2) for (c2 in p2 = {}, t2) "ref" == c2 ? a2 = t2[c2] : p2[c2] = t2[c2]; + var l2 = { type: e2, props: p2, key: n2, ref: a2, __k: null, __: null, __b: 0, __e: null, __c: null, constructor: void 0, __v: --f2, __i: -1, __u: 0, __source: i2, __self: u3 }; + if ("function" == typeof e2 && (a2 = e2.defaultProps)) for (c2 in a2) void 0 === p2[c2] && (p2[c2] = a2[c2]); + return l.vnode && l.vnode(l2), l2; +} + +// src/components/PageList.tsx function byDateAndAlphabeticalFolderFirst(_cfg) { - return (f1, f2) => { + return (f1, f22) => { const f1IsFolder = isFolderPath(f1.slug ?? ""); - const f2IsFolder = isFolderPath(f2.slug ?? ""); + const f2IsFolder = isFolderPath(f22.slug ?? ""); if (f1IsFolder && !f2IsFolder) return -1; if (!f1IsFolder && f2IsFolder) return 1; - if (f1.dates && f2.dates) { - return (getDate(f2)?.getTime() ?? 0) - (getDate(f1)?.getTime() ?? 0); - } else if (f1.dates && !f2.dates) { + if (f1.dates && f22.dates) { + return (getDate(f22)?.getTime() ?? 0) - (getDate(f1)?.getTime() ?? 0); + } else if (f1.dates && !f22.dates) { return -1; - } else if (!f1.dates && f2.dates) { + } else if (!f1.dates && f22.dates) { return 1; } const f1Title = f1.frontmatter?.title?.toLowerCase() ?? ""; - const f2Title = f2.frontmatter?.title?.toLowerCase() ?? ""; + const f2Title = f22.frontmatter?.title?.toLowerCase() ?? ""; return f1Title.localeCompare(f2Title); }; } function DateDisplay({ date, locale }) { - return /* @__PURE__ */ jsx("time", { dateTime: date.toISOString(), children: date.toLocaleDateString(locale, { + return /* @__PURE__ */ u2("time", { dateTime: date.toISOString(), children: date.toLocaleDateString(locale, { year: "numeric", month: "short", day: "2-digit" @@ -389,18 +426,18 @@ var PageList = ({ list = list.slice(0, limit); } const fileSlug = fileData?.slug; - return /* @__PURE__ */ jsx("ul", { class: "section-ul", children: list.map((page) => { + return /* @__PURE__ */ u2("ul", { class: "section-ul", children: list.map((page) => { const title = page.frontmatter?.title; const tags = page.frontmatter?.tags ?? []; - return /* @__PURE__ */ jsx("li", { class: "section-li", children: /* @__PURE__ */ jsxs("div", { class: "section", children: [ - /* @__PURE__ */ jsx("p", { class: "meta", children: page.dates && getDate(page) && /* @__PURE__ */ jsx( + return /* @__PURE__ */ u2("li", { class: "section-li", children: /* @__PURE__ */ u2("div", { class: "section", children: [ + /* @__PURE__ */ u2("p", { class: "meta", children: page.dates && getDate(page) && /* @__PURE__ */ u2( DateDisplay, { date: getDate(page), locale: cfg?.locale ?? "en-US" } ) }), - /* @__PURE__ */ jsx("div", { class: "desc", children: /* @__PURE__ */ jsx("h3", { children: /* @__PURE__ */ jsx( + /* @__PURE__ */ u2("div", { class: "desc", children: /* @__PURE__ */ u2("h3", { children: /* @__PURE__ */ u2( "a", { href: resolveRelative(fileSlug ?? "", page.slug), @@ -408,7 +445,7 @@ var PageList = ({ children: title } ) }) }), - /* @__PURE__ */ jsx("ul", { class: "tags", children: tags.map((tag) => /* @__PURE__ */ jsx("li", { children: /* @__PURE__ */ jsx( + /* @__PURE__ */ u2("ul", { class: "tags", children: tags.map((tag) => /* @__PURE__ */ u2("li", { children: /* @__PURE__ */ u2( "a", { class: "internal tag-link", @@ -667,7 +704,7 @@ var aria = create({ ariaValueText: null, role: null }, - transform(_, property) { + transform(_2, property) { return property === "role" ? property : "aria-" + property.slice(4).toLowerCase(); } }); @@ -1620,7 +1657,7 @@ var xlink = create({ xLinkType: null }, space: "xlink", - transform(_, property) { + transform(_2, property) { return "xlink:" + property.slice(5).toLowerCase(); } }); @@ -1637,7 +1674,7 @@ var xmlns = create({ var xml = create({ properties: { xmlBase: null, xmlLang: null, xmlSpace: null }, space: "xml", - transform(_, property) { + transform(_2, property) { return "xml:" + property.slice(3).toLowerCase(); } }); @@ -2027,7 +2064,7 @@ function root(state, node, key) { addChildren(props, createChildren(state, node)); return state.create(node, state.Fragment, props, key); } -function text(_, node) { +function text(_2, node) { return node.value; } function addNode(state, props, type, node) { @@ -2043,11 +2080,11 @@ function addChildren(props, children) { } } } -function productionCreate(_, jsx4, jsxs4) { +function productionCreate(_2, jsx, jsxs) { return create2; - function create2(_2, type, props, key) { + function create2(_3, type, props, key) { const isStaticChildren = Array.isArray(props.children); - const fn = isStaticChildren ? jsxs4 : jsx4; + const fn = isStaticChildren ? jsxs : jsx; return key ? fn(type, props, key) : fn(type, props); } } @@ -2264,24 +2301,26 @@ function transformStyleToCssCasing(from) { function toDash($0) { return "-" + $0.toLowerCase(); } + +// node_modules/@quartz-community/utils/dist/jsx.js function childrenToString(children) { if (typeof children === "string") return children; if (Array.isArray(children)) return children.map(childrenToString).join(""); return String(children ?? ""); } var builtinComponents = { - table: (props) => /* @__PURE__ */ jsx("div", { + table: (props) => /* @__PURE__ */ u2("div", { class: "table-container", - children: /* @__PURE__ */ jsx("table", { ...props }) + children: /* @__PURE__ */ u2("table", { ...props }) }), - style: ({ children, ...rest }) => h("style", { ...rest, dangerouslySetInnerHTML: { __html: childrenToString(children) } }), - script: ({ children, ...rest }) => h("script", { ...rest, dangerouslySetInnerHTML: { __html: childrenToString(children) } }) + style: ({ children, ...rest }) => k("style", { ...rest, dangerouslySetInnerHTML: { __html: childrenToString(children) } }), + script: ({ children, ...rest }) => k("script", { ...rest, dangerouslySetInnerHTML: { __html: childrenToString(children) } }) }; function htmlToJsx(tree, components) { return toJsxRuntime(tree, { - Fragment, - jsx: jsx, - jsxs: jsxs, + Fragment: S, + jsx: u2, + jsxs: u2, elementAttributeNameCase: "html", components: { ...builtinComponents, ...components } }); @@ -2754,11 +2793,13 @@ function i18n(locale) { // src/components/styles/listPage.scss var listPage_default = "ul.section-ul {\n list-style: none;\n margin-top: 2em;\n padding-left: 0;\n}\n\nli.section-li {\n margin-bottom: 1em;\n}\nli.section-li > .section {\n display: grid;\n grid-template-columns: fit-content(8em) 3fr 1fr;\n}\n@media all and (max-width: 600px) {\n li.section-li > .section > .tags {\n display: none;\n }\n}\nli.section-li > .section > .desc > h3 > a {\n background-color: transparent;\n}\nli.section-li > .section .meta {\n margin: 0 1em 0 0;\n opacity: 0.6;\n}\n\n.popover .section {\n grid-template-columns: fit-content(8em) 1fr !important;\n}\n.popover .section > .tags {\n display: none;\n}"; + +// src/components/TagContent.tsx var defaultOptions = { numPages: 10 }; function concatenateResources(...resources) { - const result = resources.filter((r) => r !== void 0).flat(); + const result = resources.filter((r2) => r2 !== void 0).flat(); return result.length === 0 ? void 0 : result; } function isListed(file) { @@ -2775,8 +2816,8 @@ var TagContent_default = ((opts) => { throw new Error(`Component "TagContent" tried to render a non-tag page: ${slug2}`); } const tag = simplifySlug(slug2.slice("tags/".length)); - const allPagesWithTag = (t) => allFiles.filter(isListed).filter( - (file) => (file.frontmatter?.tags ?? []).flatMap(getAllSegmentPrefixes).includes(t) + const allPagesWithTag = (t2) => allFiles.filter(isListed).filter( + (file) => (file.frontmatter?.tags ?? []).flatMap(getAllSegmentPrefixes).includes(t2) ); const hastRoot = tree; const content = hastRoot.children.length === 0 ? fd.description : htmlToJsx(hastRoot); @@ -2787,16 +2828,16 @@ var TagContent_default = ((opts) => { ...new Set( allFiles.filter(isListed).flatMap((data) => data.frontmatter?.tags ?? []).flatMap(getAllSegmentPrefixes) ) - ].sort((a, b) => a.localeCompare(b)); + ].sort((a2, b2) => a2.localeCompare(b2)); const tagItemMap = /* @__PURE__ */ new Map(); - for (const t of tags) { - tagItemMap.set(t, allPagesWithTag(t)); + for (const t2 of tags) { + tagItemMap.set(t2, allPagesWithTag(t2)); } - return /* @__PURE__ */ jsxs("div", { class: "popover-hint", children: [ - /* @__PURE__ */ jsx("article", { class: classes, children: /* @__PURE__ */ jsx("div", { class: "markdown-preview-view markdown-rendered", children: /* @__PURE__ */ jsx("p", { children: content }) }) }), - /* @__PURE__ */ jsx("p", { children: i18n(locale).pages.tagContent.totalTags({ count: tags.length }) }), - /* @__PURE__ */ jsx("div", { children: tags.map((t) => { - const pages = tagItemMap.get(t); + return /* @__PURE__ */ u2("div", { class: "popover-hint", children: [ + /* @__PURE__ */ u2("article", { class: classes, children: /* @__PURE__ */ u2("div", { class: "markdown-preview-view markdown-rendered", children: /* @__PURE__ */ u2("p", { children: content }) }) }), + /* @__PURE__ */ u2("p", { children: i18n(locale).pages.tagContent.totalTags({ count: tags.length }) }), + /* @__PURE__ */ u2("div", { children: tags.map((t2) => { + const pages = tagItemMap.get(t2); const listProps = { ...props, allFiles: pages @@ -2807,21 +2848,21 @@ var TagContent_default = ((opts) => { sort: options?.sort }); const contentPage = allFiles.find( - (file) => file.slug === `tags/${t}` + (file) => file.slug === `tags/${t2}` ); const root2 = contentPage?.filePath ? contentPage?.htmlAst : void 0; const tagDesc = !root2 || root2.children.length === 0 ? contentPage?.description : htmlToJsx(root2); - const tagListingPage = `/tags/${t}`; + const tagListingPage = `/tags/${t2}`; const href = resolveRelative(slug2, tagListingPage); - return /* @__PURE__ */ jsxs("div", { children: [ - /* @__PURE__ */ jsx("h2", { children: /* @__PURE__ */ jsx("a", { class: "internal tag-link", href, children: t }) }), - tagDesc && /* @__PURE__ */ jsx("p", { children: tagDesc }), - /* @__PURE__ */ jsxs("div", { class: "page-listing", children: [ - /* @__PURE__ */ jsxs("p", { children: [ + return /* @__PURE__ */ u2("div", { children: [ + /* @__PURE__ */ u2("h2", { children: /* @__PURE__ */ u2("a", { class: "internal tag-link", href, children: t2 }) }), + tagDesc && /* @__PURE__ */ u2("p", { children: tagDesc }), + /* @__PURE__ */ u2("div", { class: "page-listing", children: [ + /* @__PURE__ */ u2("p", { children: [ i18n(locale).pages.tagContent.itemsUnderTag({ count: pages.length }), - pages.length > options.numPages && /* @__PURE__ */ jsxs(Fragment, { children: [ + pages.length > options.numPages && /* @__PURE__ */ u2(S, { children: [ " ", - /* @__PURE__ */ jsx("span", { children: i18n(locale).pages.tagContent.showingFirst({ + /* @__PURE__ */ u2("span", { children: i18n(locale).pages.tagContent.showingFirst({ count: options.numPages }) }) ] }) @@ -2841,11 +2882,11 @@ var TagContent_default = ((opts) => { ...listProps, sort: options?.sort }); - return /* @__PURE__ */ jsxs("div", { class: "popover-hint", children: [ - /* @__PURE__ */ jsx("article", { class: classes, children: /* @__PURE__ */ jsx("div", { class: "markdown-preview-view markdown-rendered", children: content }) }), - /* @__PURE__ */ jsxs("div", { class: "page-listing", children: [ - /* @__PURE__ */ jsx("p", { children: i18n(locale).pages.tagContent.itemsUnderTag({ count: pages.length }) }), - /* @__PURE__ */ jsx("div", { children: pageListContent }) + return /* @__PURE__ */ u2("div", { class: "popover-hint", children: [ + /* @__PURE__ */ u2("article", { class: classes, children: /* @__PURE__ */ u2("div", { class: "markdown-preview-view markdown-rendered", children: content }) }), + /* @__PURE__ */ u2("div", { class: "page-listing", children: [ + /* @__PURE__ */ u2("p", { children: i18n(locale).pages.tagContent.itemsUnderTag({ count: pages.length }) }), + /* @__PURE__ */ u2("div", { children: pageListContent }) ] }) ] }); } diff --git a/dist/components/index.js.map b/dist/components/index.js.map index 006fb2c..d437fd0 100644 --- a/dist/components/index.js.map +++ b/dist/components/index.js.map @@ -1 +1 @@ -{"version":3,"sources":["../../node_modules/inline-style-parser/index.js","../../node_modules/style-to-object/src/index.ts","../../node_modules/style-to-js/src/utilities.ts","../../node_modules/style-to-js/src/index.ts","../../node_modules/@quartz-community/utils/src/sort.ts","../../node_modules/@quartz-community/utils/src/path.ts","../../src/components/PageList.tsx","../../node_modules/comma-separated-tokens/index.js","../../node_modules/devlop/lib/default.js","../../node_modules/estree-util-is-identifier-name/lib/index.js","../../node_modules/hast-util-whitespace/lib/index.js","../../node_modules/property-information/lib/util/schema.js","../../node_modules/property-information/lib/util/merge.js","../../node_modules/property-information/lib/normalize.js","../../node_modules/property-information/lib/util/info.js","../../node_modules/property-information/lib/util/types.js","../../node_modules/property-information/lib/util/defined-info.js","../../node_modules/property-information/lib/util/create.js","../../node_modules/property-information/lib/aria.js","../../node_modules/property-information/lib/util/case-sensitive-transform.js","../../node_modules/property-information/lib/util/case-insensitive-transform.js","../../node_modules/property-information/lib/html.js","../../node_modules/property-information/lib/svg.js","../../node_modules/property-information/lib/xlink.js","../../node_modules/property-information/lib/xmlns.js","../../node_modules/property-information/lib/xml.js","../../node_modules/property-information/lib/hast-to-react.js","../../node_modules/property-information/lib/find.js","../../node_modules/property-information/index.js","../../node_modules/space-separated-tokens/index.js","../../node_modules/hast-util-to-jsx-runtime/lib/index.js","../../node_modules/unist-util-position/lib/index.js","../../node_modules/unist-util-stringify-position/lib/index.js","../../node_modules/vfile-message/lib/index.js","../../node_modules/@quartz-community/utils/src/jsx.tsx","../../src/i18n/locales/en-US.ts","../../src/i18n/locales/ar-SA.ts","../../src/i18n/locales/ca-ES.ts","../../src/i18n/locales/cs-CZ.ts","../../src/i18n/locales/de-DE.ts","../../src/i18n/locales/en-GB.ts","../../src/i18n/locales/es-ES.ts","../../src/i18n/locales/fa-IR.ts","../../src/i18n/locales/fi-FI.ts","../../src/i18n/locales/fr-FR.ts","../../src/i18n/locales/he-IL.ts","../../src/i18n/locales/hu-HU.ts","../../src/i18n/locales/id-ID.ts","../../src/i18n/locales/it-IT.ts","../../src/i18n/locales/ja-JP.ts","../../src/i18n/locales/kk-KZ.ts","../../src/i18n/locales/ko-KR.ts","../../src/i18n/locales/lt-LT.ts","../../src/i18n/locales/nb-NO.ts","../../src/i18n/locales/nl-NL.ts","../../src/i18n/locales/pl-PL.ts","../../src/i18n/locales/pt-BR.ts","../../src/i18n/locales/ro-RO.ts","../../src/i18n/locales/ru-RU.ts","../../src/i18n/locales/th-TH.ts","../../src/i18n/locales/tr-TR.ts","../../src/i18n/locales/uk-UA.ts","../../src/i18n/locales/vi-VN.ts","../../src/i18n/locales/zh-CN.ts","../../src/i18n/locales/zh-TW.ts","../../src/i18n/index.ts","../../src/components/styles/listPage.scss","../../src/components/TagContent.tsx"],"names":["index","position","start","whitespace","re","exports","slug","name","html","svg","stringify","point","own","cap","create","jsx","jsxs","_","styleToJs","number","root","Fragment"],"mappings":"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","file":"index.js","sourcesContent":["// http://www.w3.org/TR/CSS21/grammar.html\n// https://github.com/visionmedia/css-parse/pull/49#issuecomment-30088027\nvar COMMENT_REGEX = /\\/\\*[^*]*\\*+([^/*][^*]*\\*+)*\\//g;\n\nvar NEWLINE_REGEX = /\\n/g;\nvar WHITESPACE_REGEX = /^\\s*/;\n\n// declaration\nvar PROPERTY_REGEX = /^(\\*?[-#/*\\\\\\w]+(\\[[0-9a-z_-]+\\])?)\\s*/;\nvar COLON_REGEX = /^:\\s*/;\nvar VALUE_REGEX = /^((?:'(?:\\\\'|.)*?'|\"(?:\\\\\"|.)*?\"|\\([^)]*?\\)|[^};])+)/;\nvar SEMICOLON_REGEX = /^[;\\s]*/;\n\n// https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String/Trim#Polyfill\nvar TRIM_REGEX = /^\\s+|\\s+$/g;\n\n// strings\nvar NEWLINE = '\\n';\nvar FORWARD_SLASH = '/';\nvar ASTERISK = '*';\nvar EMPTY_STRING = '';\n\n// types\nvar TYPE_COMMENT = 'comment';\nvar TYPE_DECLARATION = 'declaration';\n\n/**\n * @param {String} style\n * @param {Object} [options]\n * @return {Object[]}\n * @throws {TypeError}\n * @throws {Error}\n */\nexport default function (style, options) {\n if (typeof style !== 'string') {\n throw new TypeError('First argument must be a string');\n }\n\n if (!style) return [];\n\n options = options || {};\n\n /**\n * Positional.\n */\n var lineno = 1;\n var column = 1;\n\n /**\n * Update lineno and column based on `str`.\n *\n * @param {String} str\n */\n function updatePosition(str) {\n var lines = str.match(NEWLINE_REGEX);\n if (lines) lineno += lines.length;\n var i = str.lastIndexOf(NEWLINE);\n column = ~i ? str.length - i : column + str.length;\n }\n\n /**\n * Mark position and patch `node.position`.\n *\n * @return {Function}\n */\n function position() {\n var start = { line: lineno, column: column };\n return function (node) {\n node.position = new Position(start);\n whitespace();\n return node;\n };\n }\n\n /**\n * Store position information for a node.\n *\n * @constructor\n * @property {Object} start\n * @property {Object} end\n * @property {undefined|String} source\n */\n function Position(start) {\n this.start = start;\n this.end = { line: lineno, column: column };\n this.source = options.source;\n }\n\n /**\n * Non-enumerable source string.\n */\n Position.prototype.content = style;\n\n var errorsList = [];\n\n /**\n * Error `msg`.\n *\n * @param {String} msg\n * @throws {Error}\n */\n function error(msg) {\n var err = new Error(\n options.source + ':' + lineno + ':' + column + ': ' + msg\n );\n err.reason = msg;\n err.filename = options.source;\n err.line = lineno;\n err.column = column;\n err.source = style;\n\n if (options.silent) {\n errorsList.push(err);\n } else {\n throw err;\n }\n }\n\n /**\n * Match `re` and return captures.\n *\n * @param {RegExp} re\n * @return {undefined|Array}\n */\n function match(re) {\n var m = re.exec(style);\n if (!m) return;\n var str = m[0];\n updatePosition(str);\n style = style.slice(str.length);\n return m;\n }\n\n /**\n * Parse whitespace.\n */\n function whitespace() {\n match(WHITESPACE_REGEX);\n }\n\n /**\n * Parse comments.\n *\n * @param {Object[]} [rules]\n * @return {Object[]}\n */\n function comments(rules) {\n var c;\n rules = rules || [];\n while ((c = comment())) {\n if (c !== false) {\n rules.push(c);\n }\n }\n return rules;\n }\n\n /**\n * Parse comment.\n *\n * @return {Object}\n * @throws {Error}\n */\n function comment() {\n var pos = position();\n if (FORWARD_SLASH != style.charAt(0) || ASTERISK != style.charAt(1)) return;\n\n var i = 2;\n while (\n EMPTY_STRING != style.charAt(i) &&\n (ASTERISK != style.charAt(i) || FORWARD_SLASH != style.charAt(i + 1))\n ) {\n ++i;\n }\n i += 2;\n\n if (EMPTY_STRING === style.charAt(i - 1)) {\n return error('End of comment missing');\n }\n\n var str = style.slice(2, i - 2);\n column += 2;\n updatePosition(str);\n style = style.slice(i);\n column += 2;\n\n return pos({\n type: TYPE_COMMENT,\n comment: str\n });\n }\n\n /**\n * Parse declaration.\n *\n * @return {Object}\n * @throws {Error}\n */\n function declaration() {\n var pos = position();\n\n // prop\n var prop = match(PROPERTY_REGEX);\n if (!prop) return;\n comment();\n\n // :\n if (!match(COLON_REGEX)) return error(\"property missing ':'\");\n\n // val\n var val = match(VALUE_REGEX);\n\n var ret = pos({\n type: TYPE_DECLARATION,\n property: trim(prop[0].replace(COMMENT_REGEX, EMPTY_STRING)),\n value: val\n ? trim(val[0].replace(COMMENT_REGEX, EMPTY_STRING))\n : EMPTY_STRING\n });\n\n // ;\n match(SEMICOLON_REGEX);\n\n return ret;\n }\n\n /**\n * Parse declarations.\n *\n * @return {Object[]}\n */\n function declarations() {\n var decls = [];\n\n comments(decls);\n\n // declarations\n var decl;\n while ((decl = declaration())) {\n if (decl !== false) {\n decls.push(decl);\n comments(decls);\n }\n }\n\n return decls;\n }\n\n whitespace();\n return declarations();\n}\n\n/**\n * Trim `str`.\n *\n * @param {String} str\n * @return {String}\n */\nfunction trim(str) {\n return str ? str.replace(TRIM_REGEX, EMPTY_STRING) : EMPTY_STRING;\n}\n","import type { Declaration } from 'inline-style-parser';\nimport parse from 'inline-style-parser';\n\nexport { Declaration };\n\nexport interface StyleObject {\n [name: string]: string;\n}\n\ntype Iterator = (\n property: string,\n value: string,\n declaration: Declaration,\n) => void;\n\n/**\n * Parses inline style to object.\n *\n * @param style - Inline style.\n * @param iterator - Iterator.\n * @returns - Style object or null.\n *\n * @example Parsing inline style to object:\n *\n * ```js\n * import parse from 'style-to-object';\n * parse('line-height: 42;'); // { 'line-height': '42' }\n * ```\n */\nexport default function StyleToObject(\n style: string,\n iterator?: Iterator,\n): StyleObject | null {\n let styleObject: StyleObject | null = null;\n\n if (!style || typeof style !== 'string') {\n return styleObject;\n }\n\n const declarations = parse(style);\n const hasIterator = typeof iterator === 'function';\n\n declarations.forEach((declaration) => {\n if (declaration.type !== 'declaration') {\n return;\n }\n\n const { property, value } = declaration;\n\n if (hasIterator) {\n iterator(property, value, declaration);\n } else if (value) {\n styleObject = styleObject || {};\n styleObject[property] = value;\n }\n });\n\n return styleObject;\n}\n","const CUSTOM_PROPERTY_REGEX = /^--[a-zA-Z0-9_-]+$/;\nconst HYPHEN_REGEX = /-([a-z])/g;\nconst NO_HYPHEN_REGEX = /^[^-]+$/;\nconst VENDOR_PREFIX_REGEX = /^-(webkit|moz|ms|o|khtml)-/;\nconst MS_VENDOR_PREFIX_REGEX = /^-(ms)-/;\n\n/**\n * Checks whether to skip camelCase.\n */\nconst skipCamelCase = (property: string) =>\n !property ||\n NO_HYPHEN_REGEX.test(property) ||\n CUSTOM_PROPERTY_REGEX.test(property);\n\n/**\n * Replacer that capitalizes first character.\n */\nconst capitalize = (match: string, character: string) =>\n character.toUpperCase();\n\n/**\n * Replacer that removes beginning hyphen of vendor prefix property.\n */\nconst trimHyphen = (match: string, prefix: string) => `${prefix}-`;\n\n/**\n * CamelCase options.\n */\nexport interface CamelCaseOptions {\n reactCompat?: boolean;\n}\n\n/**\n * CamelCases a CSS property.\n */\nexport const camelCase = (property: string, options: CamelCaseOptions = {}) => {\n if (skipCamelCase(property)) {\n return property;\n }\n\n property = property.toLowerCase();\n\n if (options.reactCompat) {\n // `-ms` vendor prefix should not be capitalized\n property = property.replace(MS_VENDOR_PREFIX_REGEX, trimHyphen);\n } else {\n // for non-React, remove first hyphen so vendor prefix is not capitalized\n property = property.replace(VENDOR_PREFIX_REGEX, trimHyphen);\n }\n\n return property.replace(HYPHEN_REGEX, capitalize);\n};\n","import StyleToObject from 'style-to-object';\n\nimport { camelCase, CamelCaseOptions } from './utilities';\n\ntype StyleObject = Record;\n\ninterface StyleToJSOptions extends CamelCaseOptions {}\n\n/**\n * Parses CSS inline style to JavaScript object (camelCased).\n */\nfunction StyleToJS(style: string, options?: StyleToJSOptions): StyleObject {\n const output: StyleObject = {};\n\n if (!style || typeof style !== 'string') {\n return output;\n }\n\n StyleToObject(style, (property, value) => {\n // skip CSS comment\n if (property && value) {\n output[camelCase(property, options)] = value;\n }\n });\n\n return output;\n}\n\nStyleToJS.default = StyleToJS;\n\nexport = StyleToJS;\n","import type { QuartzPluginData, ValidDateType, SortFn } from \"@quartz-community/types\";\n\nexport function getDate(data: QuartzPluginData): Date | undefined {\n const defaultDateType = data.defaultDateType as ValidDateType | undefined;\n if (!defaultDateType) {\n return undefined;\n }\n const dates = data.dates as Record | undefined;\n return dates?.[defaultDateType];\n}\n\nexport function byDateAndAlphabetical(): SortFn {\n return (f1, f2) => {\n const f1Date = getDate(f1);\n const f2Date = getDate(f2);\n if (f1Date && f2Date) {\n return f2Date.getTime() - f1Date.getTime();\n } else if (f1Date && !f2Date) {\n return -1;\n } else if (!f1Date && f2Date) {\n return 1;\n }\n\n const f1Title = (\n ((f1.frontmatter as Record)?.title as string) ?? \"\"\n ).toLowerCase();\n const f2Title = (\n ((f2.frontmatter as Record)?.title as string) ?? \"\"\n ).toLowerCase();\n return f1Title.localeCompare(f2Title);\n };\n}\n","import { slug as slugAnchor } from \"github-slugger\";\nimport type { Element as HastElement } from \"hast\";\nimport type { FilePath, FullSlug } from \"@quartz-community/types\";\n\nexport type { FilePath, FullSlug };\n\n/** No '/index' ending, no file extension, can have trailing slash for folders. */\nexport type SimpleSlug = string & { _brand: \"SimpleSlug\" };\n\n/** Starts with './' or '../', used for navigation. */\nexport type RelativeURL = string & { _brand: \"RelativeURL\" };\n\nexport interface TransformOptions {\n strategy: \"absolute\" | \"relative\" | \"shortest\";\n allSlugs: FullSlug[];\n}\n\nexport function isFilePath(s: string): s is FilePath {\n const validStart = !s.startsWith(\".\");\n return validStart && _hasFileExtension(s);\n}\n\nexport function isFullSlug(s: string): s is FullSlug {\n const validStart = !(s.startsWith(\".\") || s.startsWith(\"/\"));\n const validEnding = !s.endsWith(\"/\");\n return validStart && validEnding && !_containsForbiddenCharacters(s);\n}\n\nexport function isSimpleSlug(s: string): s is SimpleSlug {\n const validStart = !(s.startsWith(\".\") || (s.length > 1 && s.startsWith(\"/\")));\n const validEnding = !endsWith(s, \"index\");\n return validStart && !_containsForbiddenCharacters(s) && validEnding && !_hasFileExtension(s);\n}\n\nexport function isRelativeURL(s: string): s is RelativeURL {\n const validStart = /^\\.{1,2}/.test(s);\n const validEnding = !endsWith(s, \"index\");\n return validStart && validEnding && ![\".md\", \".html\"].includes(getFileExtension(s) ?? \"\");\n}\n\nexport function isAbsoluteURL(s: string): boolean {\n try {\n new URL(s);\n } catch {\n return false;\n }\n return true;\n}\n\nexport function simplifySlug(fp: FullSlug | string): SimpleSlug {\n const res = stripSlashes(trimSuffix(fp, \"index\"), true);\n return (res.length === 0 ? \"/\" : res) as SimpleSlug;\n}\n\nexport function getFullSlug(window: Window): FullSlug {\n const res = window.document.body.dataset.slug! as FullSlug;\n return res;\n}\n\nexport function getFullSlugFromUrl(): FullSlug {\n let rawSlug = window.location.pathname;\n if (rawSlug.endsWith(\"/\")) rawSlug = rawSlug.slice(0, -1);\n if (rawSlug.startsWith(\"/\")) rawSlug = rawSlug.slice(1);\n return rawSlug as FullSlug;\n}\n\nexport function slugifyFilePath(fp: FilePath, excludeExt?: boolean): FullSlug {\n fp = stripSlashes(fp) as FilePath;\n const ext = getFileExtension(fp);\n const withoutFileExt = fp.replace(new RegExp(ext + \"$\"), \"\");\n const finalExt = excludeExt || [\".md\", \".html\", undefined].includes(ext) ? \"\" : ext;\n\n let slug = _sluggify(withoutFileExt);\n\n if (endsWith(slug, \"_index\")) {\n slug = slug.replace(/_index$/, \"index\");\n }\n\n // Obsidian \"Folder Notes\" convention (insideFolder storage): a file named the\n // same as its parent folder is treated as the folder's landing page. Rewrite\n // `folder/folder` → `folder/index` so every downstream consumer (trie, link\n // resolver, simplifySlug, isFolderPath) sees the canonical Quartz slug shape\n // and Just Works. A top-level single-segment slug is NOT rewritten — that\n // represents Obsidian's `parentFolder` storage mode, which Quartz already\n // routes as a regular top-level page.\n const segments = slug.split(\"/\");\n if (segments.length >= 2 && segments[segments.length - 1] === segments[segments.length - 2]) {\n segments[segments.length - 1] = \"index\";\n slug = segments.join(\"/\");\n }\n\n return (slug + (finalExt ?? \"\")) as FullSlug;\n}\n\nexport function joinSegments(...args: string[]): string {\n if (args.length === 0) {\n return \"\";\n }\n\n let joined = args\n .filter((segment) => segment !== \"\" && segment !== \"/\")\n .map((segment) => stripSlashes(segment))\n .join(\"/\");\n\n const first = args[0];\n const last = args[args.length - 1];\n\n if (first?.startsWith(\"/\")) {\n joined = \"/\" + joined;\n }\n\n if (last?.endsWith(\"/\")) {\n joined = joined + \"/\";\n }\n\n return joined;\n}\n\nexport function resolvePath(to: string): string {\n if (to.startsWith(\"/\")) return to;\n return \"/\" + to;\n}\n\n/** Read the base path injected at build time via `data-basepath` on ``.\n * Returns `\"\"` for root deployments, e.g. `\"/repository\"` for subdirectory. */\nexport function getBasePath(): string {\n if (typeof document === \"undefined\") return \"\";\n return document.body?.dataset?.basepath ?? \"\";\n}\n\n/** Resolve a slug to an absolute URL path, prepending the site's base path.\n * e.g. `resolveBasePath(\"features/Callouts\")` → `\"/repository/features/Callouts\"` */\nexport function resolveBasePath(to: string, basePath?: string): string {\n const base = basePath ?? getBasePath();\n const slug = to.startsWith(\"/\") ? to : \"/\" + to;\n return base + slug;\n}\n\nexport function endsWith(s: string, suffix: string): boolean {\n return s === suffix || s.endsWith(\"/\" + suffix);\n}\n\nexport function trimSuffix(s: string, suffix: string): string {\n if (endsWith(s, suffix)) {\n s = s.slice(0, -suffix.length);\n }\n return s;\n}\n\nexport function stripSlashes(s: string, onlyStripPrefix?: boolean): string {\n if (s.startsWith(\"/\")) {\n s = s.substring(1);\n }\n\n if (!onlyStripPrefix && s.endsWith(\"/\")) {\n s = s.slice(0, -1);\n }\n\n return s;\n}\n\nexport function getFileExtension(s: string): string | undefined {\n return s.match(/\\.[A-Za-z0-9]+$/)?.[0];\n}\n\nexport function isFolderPath(fplike: string): boolean {\n return (\n fplike.endsWith(\"/\") ||\n endsWith(fplike, \"index\") ||\n endsWith(fplike, \"index.md\") ||\n endsWith(fplike, \"index.html\")\n );\n}\n\nexport function getAllSegmentPrefixes(path: string): string[] {\n const segments = path.split(\"/\");\n const results: string[] = [];\n for (let i = 0; i < segments.length; i++) {\n results.push(segments.slice(0, i + 1).join(\"/\"));\n }\n return results;\n}\n\nexport function pathToRoot(slug: FullSlug): RelativeURL {\n let rootPath = slug\n .split(\"/\")\n .filter((x) => x !== \"\")\n .slice(0, -1)\n .map((_) => \"..\")\n .join(\"/\");\n\n if (rootPath.length === 0) {\n rootPath = \".\";\n }\n\n return rootPath as RelativeURL;\n}\n\nexport function resolveRelative(current: FullSlug, target: FullSlug | SimpleSlug): RelativeURL {\n const res = joinSegments(pathToRoot(current), simplifySlug(target as FullSlug)) as RelativeURL;\n return res;\n}\n\nexport function splitAnchor(link: string): [string, string] {\n const [fp, anchor] = link.split(\"#\", 2);\n if (fp!.endsWith(\".pdf\")) {\n return [fp!, anchor === undefined ? \"\" : `#${anchor}`];\n }\n const slugged = anchor === undefined ? \"\" : \"#\" + slugAnchor(anchor);\n return [fp!, slugged];\n}\n\nexport function slugTag(tag: string): string {\n return tag\n .split(\"/\")\n .map((tagSegment) => _sluggify(tagSegment))\n .join(\"/\");\n}\n\nexport function transformInternalLink(link: string): RelativeURL {\n const [fplike, anchor] = splitAnchor(decodeURI(link));\n\n const segments = fplike.split(\"/\").filter((x) => x.length > 0);\n const prefix = segments.filter(_isRelativeSegment).join(\"/\");\n const fp = segments.filter((seg) => !_isRelativeSegment(seg) && seg !== \"\").join(\"/\");\n\n const slugged = slugifyFilePath(fp as FilePath);\n const simpleSlug = simplifySlug(slugged);\n const folderPath = isFolderPath(fplike) || isFolderPath(slugged);\n const joined = joinSegments(stripSlashes(prefix), stripSlashes(simpleSlug));\n const trail = folderPath ? \"/\" : \"\";\n const res = (_addRelativeToStart(joined) + trail + anchor) as RelativeURL;\n return res;\n}\n\nexport function transformLink(src: FullSlug, target: string, opts: TransformOptions): RelativeURL {\n const targetSlug = transformInternalLink(target);\n\n if (opts.strategy === \"relative\") {\n return targetSlug as RelativeURL;\n } else {\n // When src is a folder page (e.g. \"Compendium/Spells\" backed by index.md),\n // the browser serves it at \"/Compendium/Spells/\" with a trailing slash.\n // pathToRoot needs the \"/index\" suffix to compute the correct depth.\n const effectiveSrc =\n !endsWith(src, \"index\") && opts.allSlugs.includes(`${src}/index` as FullSlug)\n ? (`${src}/index` as FullSlug)\n : src;\n\n const folderTail = isFolderPath(targetSlug) ? \"/\" : \"\";\n const canonicalSlug = stripSlashes(targetSlug.slice(\".\".length));\n const [targetCanonical, targetAnchor] = splitAnchor(canonicalSlug);\n\n if (opts.strategy === \"shortest\") {\n const isMultiSegment = targetCanonical.includes(\"/\");\n const isFolderTarget = isFolderPath(targetSlug);\n const matchingFileNames = opts.allSlugs.filter((slug) => {\n if (isMultiSegment) {\n // Multi-segment partial path: match by suffix\n if (slug === targetCanonical || slug.endsWith(\"/\" + targetCanonical)) {\n return true;\n }\n // Folder targets have \"/index\" stripped — also match the \"/index\" variant\n if (isFolderTarget) {\n const withIndex = targetCanonical + \"/index\";\n return slug === withIndex || slug.endsWith(\"/\" + withIndex);\n }\n return false;\n }\n const parts = slug.split(\"/\");\n const fileName = parts.at(-1);\n return targetCanonical === fileName;\n });\n\n if (matchingFileNames.length === 1) {\n const matchedSlug = matchingFileNames[0]!;\n return (resolveRelative(effectiveSrc, matchedSlug) + targetAnchor) as RelativeURL;\n }\n }\n\n return (joinSegments(pathToRoot(effectiveSrc), canonicalSlug) + folderTail) as RelativeURL;\n }\n}\n\n/**\n * Slugify a file path for use as an href.\n * Replaces whitespace→hyphens, &→-and-, %→-percent, removes ? and #, and\n * lowercases the result so that link matching is case-insensitive (matching\n * Obsidian's link-resolution semantics). Operates per segment so directory\n * separators are preserved.\n */\nexport function slugifyPath(s: string): string {\n return s\n .split(\"/\")\n .map((segment) =>\n segment\n .replace(/\\s/g, \"-\")\n .replace(/&/g, \"-and-\")\n .replace(/%/g, \"-percent\")\n .replace(/\\?/g, \"\")\n .replace(/#/g, \"\")\n .toLowerCase(),\n )\n .join(\"/\")\n .replace(/\\/$/, \"\");\n}\n\n/**\n * Re-base the relative `href` and `src` attributes of a HAST element so that\n * links inside content originally resolved relative to `newBase` remain valid\n * when the element is embedded at a page with slug `curBase`.\n *\n * Used for transclusions and cross-slug HAST embedding (Quartz core's\n * `renderPage` transclude expansion, canvas-page's embedded file-nodes, and\n * any plugin that takes `vfile.data.htmlAst` from one page and renders it\n * inside another). Absolute URLs pass through unchanged.\n *\n * The element (and its children) are deep-cloned via `structuredClone`, so\n * the original HAST tree is never mutated.\n */\nexport function normalizeHastElement(\n rawEl: T,\n curBase: FullSlug,\n newBase: FullSlug,\n): T {\n const el = structuredClone(rawEl);\n _rebaseHastElement(el, \"src\", curBase, newBase);\n _rebaseHastElement(el, \"href\", curBase, newBase);\n if (el.children) {\n el.children = el.children.map((child) =>\n child.type === \"element\"\n ? (normalizeHastElement(child as HastElement, curBase, newBase) as typeof child)\n : child,\n );\n }\n return el;\n}\n\n/** @internal */\nfunction _rebaseHastElement(\n el: HastElement,\n attr: \"href\" | \"src\",\n curBase: FullSlug,\n newBase: FullSlug,\n): void {\n const value = el.properties?.[attr];\n if (value === undefined || value === null) return;\n const href = String(value);\n if (!isRelativeURL(href)) return;\n el.properties![attr] = joinSegments(resolveRelative(curBase, newBase), \"..\", href);\n}\n\n/** @internal */\nfunction _sluggify(s: string): string {\n return slugifyPath(s);\n}\n\nfunction _containsForbiddenCharacters(s: string): boolean {\n return s.includes(\" \") || s.includes(\"#\") || s.includes(\"?\") || s.includes(\"&\");\n}\n\nfunction _hasFileExtension(s: string): boolean {\n return getFileExtension(s) !== undefined;\n}\n\nfunction _isRelativeSegment(s: string): boolean {\n return /^\\.{0,2}$/.test(s);\n}\n\nfunction _addRelativeToStart(s: string): string {\n if (s === \"\") {\n s = \".\";\n }\n\n if (!s.startsWith(\".\")) {\n s = joinSegments(\".\", s);\n }\n\n return s;\n}\n","import type { QuartzComponent, QuartzComponentProps, SortFn } from \"@quartz-community/types\";\nimport { getDate, byDateAndAlphabetical } from \"@quartz-community/utils/sort\";\nimport { resolveRelative, isFolderPath } from \"../util/path\";\nimport type { FullSlug } from \"../util/path\";\n\nexport type { SortFn } from \"@quartz-community/types\";\nexport { byDateAndAlphabetical };\n\nexport function byDateAndAlphabeticalFolderFirst(_cfg: unknown): SortFn {\n return (f1, f2) => {\n const f1IsFolder = isFolderPath(f1.slug ?? \"\");\n const f2IsFolder = isFolderPath(f2.slug ?? \"\");\n if (f1IsFolder && !f2IsFolder) return -1;\n if (!f1IsFolder && f2IsFolder) return 1;\n\n if (f1.dates && f2.dates) {\n return (getDate(f2)?.getTime() ?? 0) - (getDate(f1)?.getTime() ?? 0);\n } else if (f1.dates && !f2.dates) {\n return -1;\n } else if (!f1.dates && f2.dates) {\n return 1;\n }\n const f1Title = f1.frontmatter?.title?.toLowerCase() ?? \"\";\n const f2Title = f2.frontmatter?.title?.toLowerCase() ?? \"\";\n return f1Title.localeCompare(f2Title);\n };\n}\n\ntype DateComponentProps = {\n date: Date;\n locale: string;\n};\n\nfunction DateDisplay({ date, locale }: DateComponentProps) {\n return (\n \n );\n}\n\ntype PageListProps = {\n limit?: number;\n sort?: SortFn;\n} & QuartzComponentProps;\n\nexport const PageList: QuartzComponent = ({\n cfg,\n fileData,\n allFiles,\n limit,\n sort,\n}: PageListProps) => {\n const sorter = sort ?? byDateAndAlphabeticalFolderFirst(cfg);\n let list = [...allFiles].sort(sorter);\n if (limit) {\n list = list.slice(0, limit);\n }\n\n const fileSlug = (fileData as { slug?: string } | undefined)?.slug as FullSlug | undefined;\n\n return (\n
    \n {list.map((page) => {\n const title = page.frontmatter?.title;\n const tags = (page.frontmatter?.tags ?? []) as string[];\n\n return (\n
  • \n
    \n

    \n {page.dates && getDate(page) && (\n \n )}\n

    \n
    \n

    \n \n {title}\n \n

    \n
    \n
      \n {tags.map((tag) => (\n
    • \n \n {tag}\n \n
    • \n ))}\n
    \n
    \n
  • \n );\n })}\n
\n );\n};\n\nPageList.css = `\n.section h3 {\n margin: 0;\n}\n\n.section > .tags {\n margin: 0;\n}\n`;\n","/**\n * @typedef Options\n * Configuration for `stringify`.\n * @property {boolean} [padLeft=true]\n * Whether to pad a space before a token.\n * @property {boolean} [padRight=false]\n * Whether to pad a space after a token.\n */\n\n/**\n * @typedef {Options} StringifyOptions\n * Please use `StringifyOptions` instead.\n */\n\n/**\n * Parse comma-separated tokens to an array.\n *\n * @param {string} value\n * Comma-separated tokens.\n * @returns {Array}\n * List of tokens.\n */\nexport function parse(value) {\n /** @type {Array} */\n const tokens = []\n const input = String(value || '')\n let index = input.indexOf(',')\n let start = 0\n /** @type {boolean} */\n let end = false\n\n while (!end) {\n if (index === -1) {\n index = input.length\n end = true\n }\n\n const token = input.slice(start, index).trim()\n\n if (token || !end) {\n tokens.push(token)\n }\n\n start = index + 1\n index = input.indexOf(',', start)\n }\n\n return tokens\n}\n\n/**\n * Serialize an array of strings or numbers to comma-separated tokens.\n *\n * @param {Array} values\n * List of tokens.\n * @param {Options} [options]\n * Configuration for `stringify` (optional).\n * @returns {string}\n * Comma-separated tokens.\n */\nexport function stringify(values, options) {\n const settings = options || {}\n\n // Ensure the last empty entry is seen.\n const input = values[values.length - 1] === '' ? [...values, ''] : values\n\n return input\n .join(\n (settings.padRight ? ' ' : '') +\n ',' +\n (settings.padLeft === false ? '' : ' ')\n )\n .trim()\n}\n","export function deprecate(fn) {\n return fn\n}\n\nexport function equal() {}\n\nexport function ok() {}\n\nexport function unreachable() {}\n","/**\n * @typedef Options\n * Configuration.\n * @property {boolean | null | undefined} [jsx=false]\n * Support JSX identifiers (default: `false`).\n */\n\nconst startRe = /[$_\\p{ID_Start}]/u\nconst contRe = /[$_\\u{200C}\\u{200D}\\p{ID_Continue}]/u\nconst contReJsx = /[-$_\\u{200C}\\u{200D}\\p{ID_Continue}]/u\nconst nameRe = /^[$_\\p{ID_Start}][$_\\u{200C}\\u{200D}\\p{ID_Continue}]*$/u\nconst nameReJsx = /^[$_\\p{ID_Start}][-$_\\u{200C}\\u{200D}\\p{ID_Continue}]*$/u\n\n/** @type {Options} */\nconst emptyOptions = {}\n\n/**\n * Checks if the given code point can start an identifier.\n *\n * @param {number | undefined} code\n * Code point to check.\n * @returns {boolean}\n * Whether `code` can start an identifier.\n */\n// Note: `undefined` is supported so you can pass the result from `''.codePointAt`.\nexport function start(code) {\n return code ? startRe.test(String.fromCodePoint(code)) : false\n}\n\n/**\n * Checks if the given code point can continue an identifier.\n *\n * @param {number | undefined} code\n * Code point to check.\n * @param {Options | null | undefined} [options]\n * Configuration (optional).\n * @returns {boolean}\n * Whether `code` can continue an identifier.\n */\n// Note: `undefined` is supported so you can pass the result from `''.codePointAt`.\nexport function cont(code, options) {\n const settings = options || emptyOptions\n const re = settings.jsx ? contReJsx : contRe\n return code ? re.test(String.fromCodePoint(code)) : false\n}\n\n/**\n * Checks if the given value is a valid identifier name.\n *\n * @param {string} name\n * Identifier to check.\n * @param {Options | null | undefined} [options]\n * Configuration (optional).\n * @returns {boolean}\n * Whether `name` can be an identifier.\n */\nexport function name(name, options) {\n const settings = options || emptyOptions\n const re = settings.jsx ? nameReJsx : nameRe\n return re.test(name)\n}\n","/**\n * @typedef {import('hast').Nodes} Nodes\n */\n\n// HTML whitespace expression.\n// See .\nconst re = /[ \\t\\n\\f\\r]/g\n\n/**\n * Check if the given value is *inter-element whitespace*.\n *\n * @param {Nodes | string} thing\n * Thing to check (`Node` or `string`).\n * @returns {boolean}\n * Whether the `value` is inter-element whitespace (`boolean`): consisting of\n * zero or more of space, tab (`\\t`), line feed (`\\n`), carriage return\n * (`\\r`), or form feed (`\\f`); if a node is passed it must be a `Text` node,\n * whose `value` field is checked.\n */\nexport function whitespace(thing) {\n return typeof thing === 'object'\n ? thing.type === 'text'\n ? empty(thing.value)\n : false\n : empty(thing)\n}\n\n/**\n * @param {string} value\n * @returns {boolean}\n */\nfunction empty(value) {\n return value.replace(re, '') === ''\n}\n","/**\n * @import {Schema as SchemaType, Space} from 'property-information'\n */\n\n/** @type {SchemaType} */\nexport class Schema {\n /**\n * @param {SchemaType['property']} property\n * Property.\n * @param {SchemaType['normal']} normal\n * Normal.\n * @param {Space | undefined} [space]\n * Space.\n * @returns\n * Schema.\n */\n constructor(property, normal, space) {\n this.normal = normal\n this.property = property\n\n if (space) {\n this.space = space\n }\n }\n}\n\nSchema.prototype.normal = {}\nSchema.prototype.property = {}\nSchema.prototype.space = undefined\n","/**\n * @import {Info, Space} from 'property-information'\n */\n\nimport {Schema} from './schema.js'\n\n/**\n * @param {ReadonlyArray} definitions\n * Definitions.\n * @param {Space | undefined} [space]\n * Space.\n * @returns {Schema}\n * Schema.\n */\nexport function merge(definitions, space) {\n /** @type {Record} */\n const property = {}\n /** @type {Record} */\n const normal = {}\n\n for (const definition of definitions) {\n Object.assign(property, definition.property)\n Object.assign(normal, definition.normal)\n }\n\n return new Schema(property, normal, space)\n}\n","/**\n * Get the cleaned case insensitive form of an attribute or property.\n *\n * @param {string} value\n * An attribute-like or property-like name.\n * @returns {string}\n * Value that can be used to look up the properly cased property on a\n * `Schema`.\n */\nexport function normalize(value) {\n return value.toLowerCase()\n}\n","/**\n * @import {Info as InfoType} from 'property-information'\n */\n\n/** @type {InfoType} */\nexport class Info {\n /**\n * @param {string} property\n * Property.\n * @param {string} attribute\n * Attribute.\n * @returns\n * Info.\n */\n constructor(property, attribute) {\n this.attribute = attribute\n this.property = property\n }\n}\n\nInfo.prototype.attribute = ''\nInfo.prototype.booleanish = false\nInfo.prototype.boolean = false\nInfo.prototype.commaOrSpaceSeparated = false\nInfo.prototype.commaSeparated = false\nInfo.prototype.defined = false\nInfo.prototype.mustUseProperty = false\nInfo.prototype.number = false\nInfo.prototype.overloadedBoolean = false\nInfo.prototype.property = ''\nInfo.prototype.spaceSeparated = false\nInfo.prototype.space = undefined\n","let powers = 0\n\nexport const boolean = increment()\nexport const booleanish = increment()\nexport const overloadedBoolean = increment()\nexport const number = increment()\nexport const spaceSeparated = increment()\nexport const commaSeparated = increment()\nexport const commaOrSpaceSeparated = increment()\n\nfunction increment() {\n return 2 ** ++powers\n}\n","/**\n * @import {Space} from 'property-information'\n */\n\nimport {Info} from './info.js'\nimport * as types from './types.js'\n\nconst checks = /** @type {ReadonlyArray} */ (\n Object.keys(types)\n)\n\nexport class DefinedInfo extends Info {\n /**\n * @constructor\n * @param {string} property\n * Property.\n * @param {string} attribute\n * Attribute.\n * @param {number | null | undefined} [mask]\n * Mask.\n * @param {Space | undefined} [space]\n * Space.\n * @returns\n * Info.\n */\n constructor(property, attribute, mask, space) {\n let index = -1\n\n super(property, attribute)\n\n mark(this, 'space', space)\n\n if (typeof mask === 'number') {\n while (++index < checks.length) {\n const check = checks[index]\n mark(this, checks[index], (mask & types[check]) === types[check])\n }\n }\n }\n}\n\nDefinedInfo.prototype.defined = true\n\n/**\n * @template {keyof DefinedInfo} Key\n * Key type.\n * @param {DefinedInfo} values\n * Info.\n * @param {Key} key\n * Key.\n * @param {DefinedInfo[Key]} value\n * Value.\n * @returns {undefined}\n * Nothing.\n */\nfunction mark(values, key, value) {\n if (value) {\n values[key] = value\n }\n}\n","/**\n * @import {Info, Space} from 'property-information'\n */\n\n/**\n * @typedef Definition\n * Definition of a schema.\n * @property {Record | undefined} [attributes]\n * Normalzed names to special attribute case.\n * @property {ReadonlyArray | undefined} [mustUseProperty]\n * Normalized names that must be set as properties.\n * @property {Record} properties\n * Property names to their types.\n * @property {Space | undefined} [space]\n * Space.\n * @property {Transform} transform\n * Transform a property name.\n */\n\n/**\n * @callback Transform\n * Transform.\n * @param {Record} attributes\n * Attributes.\n * @param {string} property\n * Property.\n * @returns {string}\n * Attribute.\n */\n\nimport {normalize} from '../normalize.js'\nimport {DefinedInfo} from './defined-info.js'\nimport {Schema} from './schema.js'\n\n/**\n * @param {Definition} definition\n * Definition.\n * @returns {Schema}\n * Schema.\n */\nexport function create(definition) {\n /** @type {Record} */\n const properties = {}\n /** @type {Record} */\n const normals = {}\n\n for (const [property, value] of Object.entries(definition.properties)) {\n const info = new DefinedInfo(\n property,\n definition.transform(definition.attributes || {}, property),\n value,\n definition.space\n )\n\n if (\n definition.mustUseProperty &&\n definition.mustUseProperty.includes(property)\n ) {\n info.mustUseProperty = true\n }\n\n properties[property] = info\n\n normals[normalize(property)] = property\n normals[normalize(info.attribute)] = property\n }\n\n return new Schema(properties, normals, definition.space)\n}\n","import {create} from './util/create.js'\nimport {booleanish, number, spaceSeparated} from './util/types.js'\n\nexport const aria = create({\n properties: {\n ariaActiveDescendant: null,\n ariaAtomic: booleanish,\n ariaAutoComplete: null,\n ariaBusy: booleanish,\n ariaChecked: booleanish,\n ariaColCount: number,\n ariaColIndex: number,\n ariaColSpan: number,\n ariaControls: spaceSeparated,\n ariaCurrent: null,\n ariaDescribedBy: spaceSeparated,\n ariaDetails: null,\n ariaDisabled: booleanish,\n ariaDropEffect: spaceSeparated,\n ariaErrorMessage: null,\n ariaExpanded: booleanish,\n ariaFlowTo: spaceSeparated,\n ariaGrabbed: booleanish,\n ariaHasPopup: null,\n ariaHidden: booleanish,\n ariaInvalid: null,\n ariaKeyShortcuts: null,\n ariaLabel: null,\n ariaLabelledBy: spaceSeparated,\n ariaLevel: number,\n ariaLive: null,\n ariaModal: booleanish,\n ariaMultiLine: booleanish,\n ariaMultiSelectable: booleanish,\n ariaOrientation: null,\n ariaOwns: spaceSeparated,\n ariaPlaceholder: null,\n ariaPosInSet: number,\n ariaPressed: booleanish,\n ariaReadOnly: booleanish,\n ariaRelevant: null,\n ariaRequired: booleanish,\n ariaRoleDescription: spaceSeparated,\n ariaRowCount: number,\n ariaRowIndex: number,\n ariaRowSpan: number,\n ariaSelected: booleanish,\n ariaSetSize: number,\n ariaSort: null,\n ariaValueMax: number,\n ariaValueMin: number,\n ariaValueNow: number,\n ariaValueText: null,\n role: null\n },\n transform(_, property) {\n return property === 'role'\n ? property\n : 'aria-' + property.slice(4).toLowerCase()\n }\n})\n","/**\n * @param {Record} attributes\n * Attributes.\n * @param {string} attribute\n * Attribute.\n * @returns {string}\n * Transformed attribute.\n */\nexport function caseSensitiveTransform(attributes, attribute) {\n return attribute in attributes ? attributes[attribute] : attribute\n}\n","import {caseSensitiveTransform} from './case-sensitive-transform.js'\n\n/**\n * @param {Record} attributes\n * Attributes.\n * @param {string} property\n * Property.\n * @returns {string}\n * Transformed property.\n */\nexport function caseInsensitiveTransform(attributes, property) {\n return caseSensitiveTransform(attributes, property.toLowerCase())\n}\n","import {caseInsensitiveTransform} from './util/case-insensitive-transform.js'\nimport {create} from './util/create.js'\nimport {\n booleanish,\n boolean,\n commaSeparated,\n number,\n overloadedBoolean,\n spaceSeparated\n} from './util/types.js'\n\nexport const html = create({\n attributes: {\n acceptcharset: 'accept-charset',\n classname: 'class',\n htmlfor: 'for',\n httpequiv: 'http-equiv'\n },\n mustUseProperty: ['checked', 'multiple', 'muted', 'selected'],\n properties: {\n // Standard Properties.\n abbr: null,\n accept: commaSeparated,\n acceptCharset: spaceSeparated,\n accessKey: spaceSeparated,\n action: null,\n allow: null,\n allowFullScreen: boolean,\n allowPaymentRequest: boolean,\n allowUserMedia: boolean,\n alt: null,\n as: null,\n async: boolean,\n autoCapitalize: null,\n autoComplete: spaceSeparated,\n autoFocus: boolean,\n autoPlay: boolean,\n blocking: spaceSeparated,\n capture: null,\n charSet: null,\n checked: boolean,\n cite: null,\n className: spaceSeparated,\n cols: number,\n colSpan: null,\n content: null,\n contentEditable: booleanish,\n controls: boolean,\n controlsList: spaceSeparated,\n coords: number | commaSeparated,\n crossOrigin: null,\n data: null,\n dateTime: null,\n decoding: null,\n default: boolean,\n defer: boolean,\n dir: null,\n dirName: null,\n disabled: boolean,\n download: overloadedBoolean,\n draggable: booleanish,\n encType: null,\n enterKeyHint: null,\n fetchPriority: null,\n form: null,\n formAction: null,\n formEncType: null,\n formMethod: null,\n formNoValidate: boolean,\n formTarget: null,\n headers: spaceSeparated,\n height: number,\n hidden: overloadedBoolean,\n high: number,\n href: null,\n hrefLang: null,\n htmlFor: spaceSeparated,\n httpEquiv: spaceSeparated,\n id: null,\n imageSizes: null,\n imageSrcSet: null,\n inert: boolean,\n inputMode: null,\n integrity: null,\n is: null,\n isMap: boolean,\n itemId: null,\n itemProp: spaceSeparated,\n itemRef: spaceSeparated,\n itemScope: boolean,\n itemType: spaceSeparated,\n kind: null,\n label: null,\n lang: null,\n language: null,\n list: null,\n loading: null,\n loop: boolean,\n low: number,\n manifest: null,\n max: null,\n maxLength: number,\n media: null,\n method: null,\n min: null,\n minLength: number,\n multiple: boolean,\n muted: boolean,\n name: null,\n nonce: null,\n noModule: boolean,\n noValidate: boolean,\n onAbort: null,\n onAfterPrint: null,\n onAuxClick: null,\n onBeforeMatch: null,\n onBeforePrint: null,\n onBeforeToggle: null,\n onBeforeUnload: null,\n onBlur: null,\n onCancel: null,\n onCanPlay: null,\n onCanPlayThrough: null,\n onChange: null,\n onClick: null,\n onClose: null,\n onContextLost: null,\n onContextMenu: null,\n onContextRestored: null,\n onCopy: null,\n onCueChange: null,\n onCut: null,\n onDblClick: null,\n onDrag: null,\n onDragEnd: null,\n onDragEnter: null,\n onDragExit: null,\n onDragLeave: null,\n onDragOver: null,\n onDragStart: null,\n onDrop: null,\n onDurationChange: null,\n onEmptied: null,\n onEnded: null,\n onError: null,\n onFocus: null,\n onFormData: null,\n onHashChange: null,\n onInput: null,\n onInvalid: null,\n onKeyDown: null,\n onKeyPress: null,\n onKeyUp: null,\n onLanguageChange: null,\n onLoad: null,\n onLoadedData: null,\n onLoadedMetadata: null,\n onLoadEnd: null,\n onLoadStart: null,\n onMessage: null,\n onMessageError: null,\n onMouseDown: null,\n onMouseEnter: null,\n onMouseLeave: null,\n onMouseMove: null,\n onMouseOut: null,\n onMouseOver: null,\n onMouseUp: null,\n onOffline: null,\n onOnline: null,\n onPageHide: null,\n onPageShow: null,\n onPaste: null,\n onPause: null,\n onPlay: null,\n onPlaying: null,\n onPopState: null,\n onProgress: null,\n onRateChange: null,\n onRejectionHandled: null,\n onReset: null,\n onResize: null,\n onScroll: null,\n onScrollEnd: null,\n onSecurityPolicyViolation: null,\n onSeeked: null,\n onSeeking: null,\n onSelect: null,\n onSlotChange: null,\n onStalled: null,\n onStorage: null,\n onSubmit: null,\n onSuspend: null,\n onTimeUpdate: null,\n onToggle: null,\n onUnhandledRejection: null,\n onUnload: null,\n onVolumeChange: null,\n onWaiting: null,\n onWheel: null,\n open: boolean,\n optimum: number,\n pattern: null,\n ping: spaceSeparated,\n placeholder: null,\n playsInline: boolean,\n popover: null,\n popoverTarget: null,\n popoverTargetAction: null,\n poster: null,\n preload: null,\n readOnly: boolean,\n referrerPolicy: null,\n rel: spaceSeparated,\n required: boolean,\n reversed: boolean,\n rows: number,\n rowSpan: number,\n sandbox: spaceSeparated,\n scope: null,\n scoped: boolean,\n seamless: boolean,\n selected: boolean,\n shadowRootClonable: boolean,\n shadowRootDelegatesFocus: boolean,\n shadowRootMode: null,\n shape: null,\n size: number,\n sizes: null,\n slot: null,\n span: number,\n spellCheck: booleanish,\n src: null,\n srcDoc: null,\n srcLang: null,\n srcSet: null,\n start: number,\n step: null,\n style: null,\n tabIndex: number,\n target: null,\n title: null,\n translate: null,\n type: null,\n typeMustMatch: boolean,\n useMap: null,\n value: booleanish,\n width: number,\n wrap: null,\n writingSuggestions: null,\n\n // Legacy.\n // See: https://html.spec.whatwg.org/#other-elements,-attributes-and-apis\n align: null, // Several. Use CSS `text-align` instead,\n aLink: null, // ``. Use CSS `a:active {color}` instead\n archive: spaceSeparated, // ``. List of URIs to archives\n axis: null, // `` and ``. Use `scope` on ``\n background: null, // ``. Use CSS `background-image` instead\n bgColor: null, // `` and table elements. Use CSS `background-color` instead\n border: number, // ``. Use CSS `border-width` instead,\n borderColor: null, // `
`. Use CSS `border-color` instead,\n bottomMargin: number, // ``\n cellPadding: null, // `
`\n cellSpacing: null, // `
`\n char: null, // Several table elements. When `align=char`, sets the character to align on\n charOff: null, // Several table elements. When `char`, offsets the alignment\n classId: null, // ``\n clear: null, // `
`. Use CSS `clear` instead\n code: null, // ``\n codeBase: null, // ``\n codeType: null, // ``\n color: null, // `` and `
`. Use CSS instead\n compact: boolean, // Lists. Use CSS to reduce space between items instead\n declare: boolean, // ``\n event: null, // `