mirror of
https://github.com/quartz-community/stacked-pages.git
synced 2026-07-22 03:00:25 +00:00
chore: commit dist/ and remove prepare script
Pre-built output is now committed to the repository so that Quartz can skip the build step during plugin installation. The prepare script is removed to prevent redundant builds when installing from npm/git.
This commit is contained in:
parent
333addc298
commit
64d56bf958
9 changed files with 357 additions and 342 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -4,7 +4,6 @@ node_modules/
|
|||
.pnp.js
|
||||
|
||||
# Build output
|
||||
dist/
|
||||
build/
|
||||
*.tsbuildinfo
|
||||
|
||||
|
|
|
|||
57
dist/components/index.js
vendored
Normal file
57
dist/components/index.js
vendored
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
import { jsx } from 'preact/jsx-runtime';
|
||||
|
||||
// src/util/lang.ts
|
||||
function classNames(...classes) {
|
||||
return classes.filter(Boolean).join(" ");
|
||||
}
|
||||
|
||||
// src/components/styles/example.scss
|
||||
var example_default = ".example-component {\n padding: 8px 16px;\n background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n color: white;\n border-radius: 4px;\n font-weight: 600;\n display: inline-block;\n}";
|
||||
|
||||
// src/components/scripts/example.inline.ts
|
||||
var example_inline_default = 'function c(){let e=window.location.pathname;return e.startsWith("/")&&(e=e.slice(1)),e.endsWith("/")&&(e=e.slice(0,-1)),e||"index"}function r(){let e=document.querySelectorAll(".example-component");if(e.length===0)return;let t=[];function o(n){(n.ctrlKey||n.metaKey)&&n.shiftKey&&n.key.toLowerCase()==="e"&&(n.preventDefault(),console.log("[ExampleComponent] Keyboard shortcut triggered!"))}document.addEventListener("keydown",o),t.push(()=>document.removeEventListener("keydown",o));for(let n of e){let i=()=>{console.log("[ExampleComponent] Clicked!")};n.addEventListener("click",i),t.push(()=>n.removeEventListener("click",i))}typeof window<"u"&&window.addCleanup&&window.addCleanup(()=>{t.forEach(n=>n())}),console.log("[ExampleComponent] Initialized with",e.length,"component(s)")}document.addEventListener("nav",e=>{let t=e.detail?.url||c();console.log("[ExampleComponent] Navigation to:",t),r()});document.addEventListener("render",()=>{console.log("[ExampleComponent] Render event - re-initializing"),r()});document.addEventListener("prenav",()=>{let e=document.querySelector(".example-component");e&&sessionStorage.setItem("exampleScrollTop",e.scrollTop?.toString()||"0")});\n';
|
||||
var ExampleComponent_default = ((opts) => {
|
||||
const { prefix = "", suffix = "", className = "example-component" } = opts ?? {};
|
||||
const Component = (props) => {
|
||||
const frontmatter = props.fileData?.frontmatter;
|
||||
const title = frontmatter?.title ?? "Untitled";
|
||||
const fullText = `${prefix}${title}${suffix}`;
|
||||
return /* @__PURE__ */ jsx("div", { class: classNames(className), children: fullText });
|
||||
};
|
||||
Component.css = example_default;
|
||||
Component.afterDOMLoaded = example_inline_default;
|
||||
return Component;
|
||||
});
|
||||
|
||||
// src/components/styles/stacked.scss
|
||||
var stacked_default = "#stacked-pages-container:not(.binder-active) {\n display: none;\n}\n#stacked-pages-container.binder-active {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n pointer-events: none;\n z-index: 99;\n display: flex;\n justify-content: space-between;\n align-items: stretch;\n}\n\nbody.has-binder-left .page {\n padding-left: 40px;\n}\n\nbody.has-binder-right .page {\n padding-right: 40px;\n}\n\n.binder-strip {\n pointer-events: auto;\n display: flex;\n flex-direction: column;\n gap: 0;\n padding: 0;\n justify-content: stretch;\n align-items: stretch;\n z-index: 100;\n width: 40px;\n height: 100%;\n}\n\n.binder-strip-left {\n align-self: flex-start;\n}\n\n.binder-strip-right {\n align-self: flex-end;\n margin-left: auto;\n}\n\n.binder-tab {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n gap: 4px;\n padding: 8px 0;\n cursor: pointer;\n background: var(--lightgray);\n border: 1px solid var(--lightgray);\n transition: background 0.15s ease, transform 0.15s ease, border-color 0.15s ease;\n width: 100%;\n flex: 1;\n position: relative;\n writing-mode: vertical-lr;\n overflow: hidden;\n}\n.binder-tab:hover {\n background: var(--light);\n}\n\n.binder-tab.binder-tab-active {\n background: var(--light);\n z-index: 101;\n cursor: default;\n}\n.binder-tab.binder-tab-active.binder-tab-left {\n border-right: none;\n border-left: 3px solid var(--secondary);\n border-radius: 6px 0 0 6px;\n}\n.binder-tab.binder-tab-active.binder-tab-right {\n border-left: none;\n border-right: 3px solid var(--secondary);\n border-radius: 0 6px 6px 0;\n}\n\n.binder-tab:not(.binder-tab-active) {\n color: var(--gray);\n}\n.binder-tab:not(.binder-tab-active).binder-tab-left {\n border-radius: 6px 0 0 6px;\n border-right: 2px solid var(--secondary);\n border-left: 1px solid var(--lightgray);\n}\n.binder-tab:not(.binder-tab-active).binder-tab-left:hover {\n transform: translateX(4px);\n}\n.binder-tab:not(.binder-tab-active).binder-tab-right {\n border-radius: 0 6px 6px 0;\n border-left: 2px solid var(--secondary);\n border-right: 1px solid var(--lightgray);\n}\n.binder-tab:not(.binder-tab-active).binder-tab-right:hover {\n transform: translateX(-4px);\n}\n\n.binder-spine {\n display: none;\n}\n\n.binder-label {\n font-size: 1rem;\n line-height: 1.2;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n color: var(--darkgray);\n user-select: none;\n transform: rotate(180deg);\n text-align: left;\n}\n\n.binder-tab-active .binder-label {\n font-weight: bold;\n color: var(--dark);\n}\n\n.binder-close {\n appearance: none;\n background: none;\n border: none;\n cursor: pointer;\n font-size: 1rem;\n line-height: 1;\n color: var(--gray);\n padding: 2px;\n flex-shrink: 0;\n opacity: 0;\n transition: opacity 0.15s ease, color 0.15s ease;\n transform: rotate(180deg);\n}\n.binder-close:hover {\n color: var(--dark);\n background: rgba(0, 0, 0, 0.05);\n border-radius: 4px;\n}\n\n.binder-tab:hover .binder-close {\n opacity: 1;\n}";
|
||||
|
||||
// src/components/scripts/stacked.inline.ts
|
||||
var stacked_inline_default = 'var g="stacked-pages-state";function m(){let e=window.location.pathname;return e.startsWith("/")&&(e=e.slice(1)),e.endsWith("/")&&(e=e.slice(0,-1)),e||"index"}function w(){return document.querySelector("h1")?.textContent?.trim()||document.title||m()}function l(){try{let e=sessionStorage.getItem(g);if(e){let t=JSON.parse(e);if(Array.isArray(t.tabs)&&typeof t.activeIndex=="number")return t}}catch{}return{tabs:[],activeIndex:-1}}function c(e){try{sessionStorage.setItem(g,JSON.stringify(e))}catch{}}function p(e){return{maxTabs:parseInt(e.dataset.maxTabs||"8",10),mobileBreakpoint:parseInt(e.dataset.mobileBreakpoint||"800",10),showSpines:e.dataset.showSpines!=="false",animate:e.dataset.animate!=="false"}}function o(e,t){let r=p(e);if(window.innerWidth<r.mobileBreakpoint){e.style.display="none",document.body.classList.remove("has-binder-left","has-binder-right");return}if(e.style.display="",t.tabs.length<=1){e.innerHTML="",e.classList.remove("binder-active"),document.body.classList.remove("has-binder-left","has-binder-right");return}e.classList.add("binder-active");let n=t.tabs.slice(0,t.activeIndex+1),d=t.tabs.slice(t.activeIndex+1);if(e.innerHTML="",n.length>0){let i=document.createElement("div");i.className="binder-strip binder-strip-left";for(let a=0;a<n.length;a++)i.appendChild(u(n[a],a,"left",t,r));e.appendChild(i)}if(d.length>0){let i=document.createElement("div");i.className="binder-strip binder-strip-right";for(let a=0;a<d.length;a++){let s=t.activeIndex+1+a;i.appendChild(u(d[a],s,"right",t,r))}e.appendChild(i)}document.body.classList.toggle("has-binder-left",n.length>0),document.body.classList.toggle("has-binder-right",d.length>0)}function u(e,t,r,n,d){let i=document.createElement("div");if(i.className=`binder-tab binder-tab-${r}`,i.dataset.index=String(t),t===n.activeIndex&&i.classList.add("binder-tab-active"),d.showSpines){let s=document.createElement("div");s.className="binder-spine",i.appendChild(s)}let a=document.createElement("span");if(a.className="binder-label",a.textContent=e.title,i.appendChild(a),n.tabs.length>=2){let s=document.createElement("button");s.className="binder-close",s.textContent="\\xD7",s.setAttribute("aria-label",`Close ${e.title}`),s.addEventListener("click",v=>{v.stopPropagation(),I(t)}),i.appendChild(s)}return i.addEventListener("click",()=>{h(t)}),i}function h(e){let t=l();if(e<0||e>=t.tabs.length)return;let r=t.tabs[e];t.activeIndex=e,c(t);let n=new URL(`/${r.slug}`,window.location.origin);window.spaNavigate?window.spaNavigate(n,!1):window.location.href=n.toString()}function I(e){let t=l();if(t.tabs.length<2)return;let r=e===t.activeIndex;t.tabs.splice(e,1),r?(t.activeIndex=Math.min(e,t.tabs.length-1),c(t),h(t.activeIndex)):(e<t.activeIndex&&t.activeIndex--,c(t),b())}var f=null;function S(){let e=document.getElementById("stacked-pages-container");if(!e)return;let t=m(),r=w();if(t===f){o(e,l());return}f=t;let n=l(),d=p(e),i=n.tabs.findIndex(a=>a.slug===t);if(i>=0)n.tabs[i].title=r,n.activeIndex=i;else{let a={slug:t,title:r},s=n.activeIndex+1;for(n.tabs.splice(s,0,a),n.activeIndex=s;n.tabs.length>d.maxTabs;)n.activeIndex>0?(n.tabs.shift(),n.activeIndex--):n.tabs.pop()}c(n),o(e,n)}function b(){let e=document.getElementById("stacked-pages-container");e&&o(e,l())}function x(){S();let e=()=>b();window.addEventListener("resize",e),window.addCleanup&&window.addCleanup(()=>window.removeEventListener("resize",e))}typeof document<"u"&&(document.addEventListener("nav",()=>{x()}),document.addEventListener("render",()=>{b()}));\n';
|
||||
var StackedPages_default = ((opts) => {
|
||||
const {
|
||||
maxTabs = 8,
|
||||
mobileBreakpoint = 800,
|
||||
showSpines = true,
|
||||
animateTransitions = true
|
||||
} = opts ?? {};
|
||||
const Component = (_props) => {
|
||||
return /* @__PURE__ */ jsx(
|
||||
"div",
|
||||
{
|
||||
id: "stacked-pages-container",
|
||||
"data-max-tabs": maxTabs,
|
||||
"data-mobile-breakpoint": mobileBreakpoint,
|
||||
"data-show-spines": showSpines,
|
||||
"data-animate": animateTransitions
|
||||
}
|
||||
);
|
||||
};
|
||||
Component.css = stacked_default;
|
||||
Component.afterDOMLoaded = stacked_inline_default;
|
||||
return Component;
|
||||
});
|
||||
|
||||
export { ExampleComponent_default as ExampleComponent, StackedPages_default as StackedPages };
|
||||
//# sourceMappingURL=index.js.map
|
||||
//# sourceMappingURL=index.js.map
|
||||
1
dist/components/index.js.map
vendored
Normal file
1
dist/components/index.js.map
vendored
Normal file
File diff suppressed because one or more lines are too long
239
dist/index.js
vendored
Normal file
239
dist/index.js
vendored
Normal file
|
|
@ -0,0 +1,239 @@
|
|||
import remarkGfm from 'remark-gfm';
|
||||
import rehypeSlug from 'rehype-slug';
|
||||
import { findAndReplace } from 'mdast-util-find-and-replace';
|
||||
import { visit } from 'unist-util-visit';
|
||||
import path from 'path';
|
||||
import fs from 'fs/promises';
|
||||
import { jsx } from 'preact/jsx-runtime';
|
||||
|
||||
// src/transformer.ts
|
||||
var defaultOptions = {
|
||||
highlightToken: "==",
|
||||
headingClass: "example-plugin-heading",
|
||||
enableGfm: true,
|
||||
addHeadingSlugs: true
|
||||
};
|
||||
var escapeRegExp = (value) => value.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
||||
var remarkHighlightToken = (token) => {
|
||||
const escapedToken = escapeRegExp(token);
|
||||
const pattern = new RegExp(`${escapedToken}([^
|
||||
]+?)${escapedToken}`, "g");
|
||||
return () => (tree, _file) => {
|
||||
findAndReplace(tree, [
|
||||
[
|
||||
pattern,
|
||||
(_match, value) => ({
|
||||
type: "strong",
|
||||
children: [{ type: "text", value }]
|
||||
})
|
||||
]
|
||||
]);
|
||||
};
|
||||
};
|
||||
var rehypeHeadingClass = (className) => {
|
||||
return () => (tree, _file) => {
|
||||
visit(tree, "element", (node) => {
|
||||
if (!/^h[1-6]$/.test(node.tagName)) {
|
||||
return;
|
||||
}
|
||||
const existing = node.properties?.className;
|
||||
const classes = Array.isArray(existing) ? existing.filter((value) => typeof value === "string") : typeof existing === "string" ? [existing] : [];
|
||||
node.properties = {
|
||||
...node.properties,
|
||||
className: [...classes, className]
|
||||
};
|
||||
});
|
||||
};
|
||||
};
|
||||
var ExampleTransformer = (userOptions) => {
|
||||
const options = { ...defaultOptions, ...userOptions };
|
||||
return {
|
||||
name: "ExampleTransformer",
|
||||
textTransform(_ctx, src) {
|
||||
return src.endsWith("\n") ? src : `${src}
|
||||
`;
|
||||
},
|
||||
markdownPlugins() {
|
||||
const plugins = [remarkHighlightToken(options.highlightToken)];
|
||||
if (options.enableGfm) {
|
||||
plugins.unshift(remarkGfm);
|
||||
}
|
||||
return plugins;
|
||||
},
|
||||
htmlPlugins() {
|
||||
const plugins = [rehypeHeadingClass(options.headingClass)];
|
||||
if (options.addHeadingSlugs) {
|
||||
plugins.unshift(rehypeSlug);
|
||||
}
|
||||
return plugins;
|
||||
},
|
||||
externalResources() {
|
||||
return {
|
||||
css: [
|
||||
{
|
||||
content: `.${options.headingClass} { letter-spacing: 0.02em; }`,
|
||||
inline: true
|
||||
}
|
||||
],
|
||||
js: [
|
||||
{
|
||||
contentType: "inline",
|
||||
loadTime: "afterDOMReady",
|
||||
script: "document.documentElement.dataset.exampleTransformer = 'true'"
|
||||
}
|
||||
],
|
||||
additionalHead: []
|
||||
};
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
// src/filter.ts
|
||||
var defaultOptions2 = {
|
||||
allowDrafts: false,
|
||||
excludeTags: ["private"],
|
||||
excludePathPrefixes: ["_drafts/", "_private/"]
|
||||
};
|
||||
var normalizeTag = (tag) => typeof tag === "string" ? tag.trim().toLowerCase() : "";
|
||||
var includesTag = (tags, excludedTags) => {
|
||||
if (!Array.isArray(tags)) {
|
||||
return false;
|
||||
}
|
||||
const normalizedExcluded = excludedTags.map((tag) => tag.toLowerCase());
|
||||
return tags.some((tag) => normalizedExcluded.includes(normalizeTag(tag)));
|
||||
};
|
||||
var ExampleFilter = (userOptions) => {
|
||||
const options = { ...defaultOptions2, ...userOptions };
|
||||
return {
|
||||
name: "ExampleFilter",
|
||||
shouldPublish(_ctx, [_tree, vfile]) {
|
||||
const frontmatter = vfile.data?.frontmatter ?? {};
|
||||
const isDraft = frontmatter.draft === true || frontmatter.draft === "true";
|
||||
if (isDraft && !options.allowDrafts) {
|
||||
return false;
|
||||
}
|
||||
if (includesTag(frontmatter.tags, options.excludeTags)) {
|
||||
return false;
|
||||
}
|
||||
const filePath = typeof vfile.data?.filePath === "string" ? vfile.data.filePath : "";
|
||||
const normalizedPath = filePath.replace(/\\/g, "/");
|
||||
if (options.excludePathPrefixes.some((prefix) => normalizedPath.startsWith(prefix))) {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
};
|
||||
};
|
||||
var defaultOptions3 = {
|
||||
manifestSlug: "plugin-manifest",
|
||||
includeFrontmatter: true,
|
||||
metadata: {
|
||||
generator: "Quartz Plugin Template"
|
||||
}
|
||||
};
|
||||
var joinSegments = (...segments) => segments.filter((segment) => segment.length > 0).join("/").replace(/\/+/g, "/");
|
||||
var writeFile = async (outputDir, slug, ext, content) => {
|
||||
const outputPath = joinSegments(outputDir, `${slug}${ext}`);
|
||||
await fs.mkdir(path.dirname(outputPath), { recursive: true });
|
||||
await fs.writeFile(outputPath, content);
|
||||
return outputPath;
|
||||
};
|
||||
var ExampleEmitter = (userOptions) => {
|
||||
const options = { ...defaultOptions3, ...userOptions };
|
||||
const emitManifest = async (ctx, content) => {
|
||||
const manifest = {
|
||||
...options.metadata,
|
||||
generatedAt: (/* @__PURE__ */ new Date()).toISOString(),
|
||||
pages: content.map(([_tree, vfile]) => {
|
||||
const frontmatter = vfile.data?.frontmatter ?? {};
|
||||
return {
|
||||
slug: vfile.data?.slug ?? null,
|
||||
title: frontmatter.title ?? null,
|
||||
tags: frontmatter.tags ?? null,
|
||||
filePath: vfile.data?.filePath ?? null,
|
||||
frontmatter: options.includeFrontmatter ? frontmatter : void 0
|
||||
};
|
||||
})
|
||||
};
|
||||
let json = `${JSON.stringify(manifest, null, 2)}
|
||||
`;
|
||||
if (options.transformManifest) {
|
||||
json = options.transformManifest(json);
|
||||
}
|
||||
const output = await writeFile(
|
||||
ctx.argv.output,
|
||||
options.manifestSlug,
|
||||
".json",
|
||||
json
|
||||
);
|
||||
return [output];
|
||||
};
|
||||
return {
|
||||
name: "ExampleEmitter",
|
||||
async emit(ctx, content, _resources) {
|
||||
return emitManifest(ctx, content);
|
||||
},
|
||||
async *partialEmit(ctx, content, _resources, _changeEvents) {
|
||||
const outputPaths = await emitManifest(ctx, content);
|
||||
for (const outputPath of outputPaths) {
|
||||
yield outputPath;
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
// src/util/lang.ts
|
||||
function classNames(...classes) {
|
||||
return classes.filter(Boolean).join(" ");
|
||||
}
|
||||
|
||||
// src/components/styles/example.scss
|
||||
var example_default = ".example-component {\n padding: 8px 16px;\n background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n color: white;\n border-radius: 4px;\n font-weight: 600;\n display: inline-block;\n}";
|
||||
|
||||
// src/components/scripts/example.inline.ts
|
||||
var example_inline_default = 'function c(){let e=window.location.pathname;return e.startsWith("/")&&(e=e.slice(1)),e.endsWith("/")&&(e=e.slice(0,-1)),e||"index"}function r(){let e=document.querySelectorAll(".example-component");if(e.length===0)return;let t=[];function o(n){(n.ctrlKey||n.metaKey)&&n.shiftKey&&n.key.toLowerCase()==="e"&&(n.preventDefault(),console.log("[ExampleComponent] Keyboard shortcut triggered!"))}document.addEventListener("keydown",o),t.push(()=>document.removeEventListener("keydown",o));for(let n of e){let i=()=>{console.log("[ExampleComponent] Clicked!")};n.addEventListener("click",i),t.push(()=>n.removeEventListener("click",i))}typeof window<"u"&&window.addCleanup&&window.addCleanup(()=>{t.forEach(n=>n())}),console.log("[ExampleComponent] Initialized with",e.length,"component(s)")}document.addEventListener("nav",e=>{let t=e.detail?.url||c();console.log("[ExampleComponent] Navigation to:",t),r()});document.addEventListener("render",()=>{console.log("[ExampleComponent] Render event - re-initializing"),r()});document.addEventListener("prenav",()=>{let e=document.querySelector(".example-component");e&&sessionStorage.setItem("exampleScrollTop",e.scrollTop?.toString()||"0")});\n';
|
||||
var ExampleComponent_default = ((opts) => {
|
||||
const { prefix = "", suffix = "", className = "example-component" } = opts ?? {};
|
||||
const Component = (props) => {
|
||||
const frontmatter = props.fileData?.frontmatter;
|
||||
const title = frontmatter?.title ?? "Untitled";
|
||||
const fullText = `${prefix}${title}${suffix}`;
|
||||
return /* @__PURE__ */ jsx("div", { class: classNames(className), children: fullText });
|
||||
};
|
||||
Component.css = example_default;
|
||||
Component.afterDOMLoaded = example_inline_default;
|
||||
return Component;
|
||||
});
|
||||
|
||||
// src/components/styles/stacked.scss
|
||||
var stacked_default = "#stacked-pages-container:not(.binder-active) {\n display: none;\n}\n#stacked-pages-container.binder-active {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n pointer-events: none;\n z-index: 99;\n display: flex;\n justify-content: space-between;\n align-items: stretch;\n}\n\nbody.has-binder-left .page {\n padding-left: 40px;\n}\n\nbody.has-binder-right .page {\n padding-right: 40px;\n}\n\n.binder-strip {\n pointer-events: auto;\n display: flex;\n flex-direction: column;\n gap: 0;\n padding: 0;\n justify-content: stretch;\n align-items: stretch;\n z-index: 100;\n width: 40px;\n height: 100%;\n}\n\n.binder-strip-left {\n align-self: flex-start;\n}\n\n.binder-strip-right {\n align-self: flex-end;\n margin-left: auto;\n}\n\n.binder-tab {\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n gap: 4px;\n padding: 8px 0;\n cursor: pointer;\n background: var(--lightgray);\n border: 1px solid var(--lightgray);\n transition: background 0.15s ease, transform 0.15s ease, border-color 0.15s ease;\n width: 100%;\n flex: 1;\n position: relative;\n writing-mode: vertical-lr;\n overflow: hidden;\n}\n.binder-tab:hover {\n background: var(--light);\n}\n\n.binder-tab.binder-tab-active {\n background: var(--light);\n z-index: 101;\n cursor: default;\n}\n.binder-tab.binder-tab-active.binder-tab-left {\n border-right: none;\n border-left: 3px solid var(--secondary);\n border-radius: 6px 0 0 6px;\n}\n.binder-tab.binder-tab-active.binder-tab-right {\n border-left: none;\n border-right: 3px solid var(--secondary);\n border-radius: 0 6px 6px 0;\n}\n\n.binder-tab:not(.binder-tab-active) {\n color: var(--gray);\n}\n.binder-tab:not(.binder-tab-active).binder-tab-left {\n border-radius: 6px 0 0 6px;\n border-right: 2px solid var(--secondary);\n border-left: 1px solid var(--lightgray);\n}\n.binder-tab:not(.binder-tab-active).binder-tab-left:hover {\n transform: translateX(4px);\n}\n.binder-tab:not(.binder-tab-active).binder-tab-right {\n border-radius: 0 6px 6px 0;\n border-left: 2px solid var(--secondary);\n border-right: 1px solid var(--lightgray);\n}\n.binder-tab:not(.binder-tab-active).binder-tab-right:hover {\n transform: translateX(-4px);\n}\n\n.binder-spine {\n display: none;\n}\n\n.binder-label {\n font-size: 1rem;\n line-height: 1.2;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n color: var(--darkgray);\n user-select: none;\n transform: rotate(180deg);\n text-align: left;\n}\n\n.binder-tab-active .binder-label {\n font-weight: bold;\n color: var(--dark);\n}\n\n.binder-close {\n appearance: none;\n background: none;\n border: none;\n cursor: pointer;\n font-size: 1rem;\n line-height: 1;\n color: var(--gray);\n padding: 2px;\n flex-shrink: 0;\n opacity: 0;\n transition: opacity 0.15s ease, color 0.15s ease;\n transform: rotate(180deg);\n}\n.binder-close:hover {\n color: var(--dark);\n background: rgba(0, 0, 0, 0.05);\n border-radius: 4px;\n}\n\n.binder-tab:hover .binder-close {\n opacity: 1;\n}";
|
||||
|
||||
// src/components/scripts/stacked.inline.ts
|
||||
var stacked_inline_default = 'var g="stacked-pages-state";function m(){let e=window.location.pathname;return e.startsWith("/")&&(e=e.slice(1)),e.endsWith("/")&&(e=e.slice(0,-1)),e||"index"}function w(){return document.querySelector("h1")?.textContent?.trim()||document.title||m()}function l(){try{let e=sessionStorage.getItem(g);if(e){let t=JSON.parse(e);if(Array.isArray(t.tabs)&&typeof t.activeIndex=="number")return t}}catch{}return{tabs:[],activeIndex:-1}}function c(e){try{sessionStorage.setItem(g,JSON.stringify(e))}catch{}}function p(e){return{maxTabs:parseInt(e.dataset.maxTabs||"8",10),mobileBreakpoint:parseInt(e.dataset.mobileBreakpoint||"800",10),showSpines:e.dataset.showSpines!=="false",animate:e.dataset.animate!=="false"}}function o(e,t){let r=p(e);if(window.innerWidth<r.mobileBreakpoint){e.style.display="none",document.body.classList.remove("has-binder-left","has-binder-right");return}if(e.style.display="",t.tabs.length<=1){e.innerHTML="",e.classList.remove("binder-active"),document.body.classList.remove("has-binder-left","has-binder-right");return}e.classList.add("binder-active");let n=t.tabs.slice(0,t.activeIndex+1),d=t.tabs.slice(t.activeIndex+1);if(e.innerHTML="",n.length>0){let i=document.createElement("div");i.className="binder-strip binder-strip-left";for(let a=0;a<n.length;a++)i.appendChild(u(n[a],a,"left",t,r));e.appendChild(i)}if(d.length>0){let i=document.createElement("div");i.className="binder-strip binder-strip-right";for(let a=0;a<d.length;a++){let s=t.activeIndex+1+a;i.appendChild(u(d[a],s,"right",t,r))}e.appendChild(i)}document.body.classList.toggle("has-binder-left",n.length>0),document.body.classList.toggle("has-binder-right",d.length>0)}function u(e,t,r,n,d){let i=document.createElement("div");if(i.className=`binder-tab binder-tab-${r}`,i.dataset.index=String(t),t===n.activeIndex&&i.classList.add("binder-tab-active"),d.showSpines){let s=document.createElement("div");s.className="binder-spine",i.appendChild(s)}let a=document.createElement("span");if(a.className="binder-label",a.textContent=e.title,i.appendChild(a),n.tabs.length>=2){let s=document.createElement("button");s.className="binder-close",s.textContent="\\xD7",s.setAttribute("aria-label",`Close ${e.title}`),s.addEventListener("click",v=>{v.stopPropagation(),I(t)}),i.appendChild(s)}return i.addEventListener("click",()=>{h(t)}),i}function h(e){let t=l();if(e<0||e>=t.tabs.length)return;let r=t.tabs[e];t.activeIndex=e,c(t);let n=new URL(`/${r.slug}`,window.location.origin);window.spaNavigate?window.spaNavigate(n,!1):window.location.href=n.toString()}function I(e){let t=l();if(t.tabs.length<2)return;let r=e===t.activeIndex;t.tabs.splice(e,1),r?(t.activeIndex=Math.min(e,t.tabs.length-1),c(t),h(t.activeIndex)):(e<t.activeIndex&&t.activeIndex--,c(t),b())}var f=null;function S(){let e=document.getElementById("stacked-pages-container");if(!e)return;let t=m(),r=w();if(t===f){o(e,l());return}f=t;let n=l(),d=p(e),i=n.tabs.findIndex(a=>a.slug===t);if(i>=0)n.tabs[i].title=r,n.activeIndex=i;else{let a={slug:t,title:r},s=n.activeIndex+1;for(n.tabs.splice(s,0,a),n.activeIndex=s;n.tabs.length>d.maxTabs;)n.activeIndex>0?(n.tabs.shift(),n.activeIndex--):n.tabs.pop()}c(n),o(e,n)}function b(){let e=document.getElementById("stacked-pages-container");e&&o(e,l())}function x(){S();let e=()=>b();window.addEventListener("resize",e),window.addCleanup&&window.addCleanup(()=>window.removeEventListener("resize",e))}typeof document<"u"&&(document.addEventListener("nav",()=>{x()}),document.addEventListener("render",()=>{b()}));\n';
|
||||
var StackedPages_default = ((opts) => {
|
||||
const {
|
||||
maxTabs = 8,
|
||||
mobileBreakpoint = 800,
|
||||
showSpines = true,
|
||||
animateTransitions = true
|
||||
} = opts ?? {};
|
||||
const Component = (_props) => {
|
||||
return /* @__PURE__ */ jsx(
|
||||
"div",
|
||||
{
|
||||
id: "stacked-pages-container",
|
||||
"data-max-tabs": maxTabs,
|
||||
"data-mobile-breakpoint": mobileBreakpoint,
|
||||
"data-show-spines": showSpines,
|
||||
"data-animate": animateTransitions
|
||||
}
|
||||
);
|
||||
};
|
||||
Component.css = stacked_default;
|
||||
Component.afterDOMLoaded = stacked_inline_default;
|
||||
return Component;
|
||||
});
|
||||
|
||||
export { ExampleComponent_default as ExampleComponent, ExampleEmitter, ExampleFilter, ExampleTransformer, StackedPages_default as StackedPages };
|
||||
//# sourceMappingURL=index.js.map
|
||||
//# sourceMappingURL=index.js.map
|
||||
1
dist/index.js.map
vendored
Normal file
1
dist/index.js.map
vendored
Normal file
File diff suppressed because one or more lines are too long
3
dist/types.js
vendored
Normal file
3
dist/types.js
vendored
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
|
||||
//# sourceMappingURL=types.js.map
|
||||
//# sourceMappingURL=types.js.map
|
||||
1
dist/types.js.map
vendored
Normal file
1
dist/types.js.map
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
{"version":3,"sources":[],"names":[],"mappings":"","file":"types.js"}
|
||||
395
package-lock.json
generated
395
package-lock.json
generated
|
|
@ -10,16 +10,7 @@
|
|||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@quartz-community/types": "github:quartz-community/types",
|
||||
"mdast-util-find-and-replace": "^3.0.1",
|
||||
"rehype-slug": "^6.0.0",
|
||||
"remark-gfm": "^4.0.1",
|
||||
"remark-parse": "^11.0.0",
|
||||
"remark-stringify": "^11.0.0",
|
||||
"tsup": "^8.5.0",
|
||||
"typescript": "^5.9.3",
|
||||
"unified": "^11.0.5",
|
||||
"unist-util-visit": "^5.0.0",
|
||||
"vfile": "^6.0.3"
|
||||
"remark-stringify": "^11.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/hast": "^3.0.4",
|
||||
|
|
@ -32,6 +23,8 @@
|
|||
"preact": "^10.28.2",
|
||||
"prettier": "^3.6.2",
|
||||
"sass": "^1.97.3",
|
||||
"tsup": "^8.5.0",
|
||||
"typescript": "^5.9.3",
|
||||
"vitest": "^2.1.9"
|
||||
},
|
||||
"engines": {
|
||||
|
|
@ -40,14 +33,42 @@
|
|||
},
|
||||
"peerDependencies": {
|
||||
"@jackyzha0/quartz": "^4.5.2",
|
||||
"preact": "^10.0.0"
|
||||
"mdast-util-find-and-replace": "^3.0.1",
|
||||
"preact": "^10.0.0",
|
||||
"rehype-slug": "^6.0.0",
|
||||
"remark-gfm": "^4.0.1",
|
||||
"remark-parse": "^11.0.0",
|
||||
"unified": "^11.0.5",
|
||||
"unist-util-visit": "^5.0.0",
|
||||
"vfile": "^6.0.3"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"@jackyzha0/quartz": {
|
||||
"optional": true
|
||||
},
|
||||
"mdast-util-find-and-replace": {
|
||||
"optional": true
|
||||
},
|
||||
"preact": {
|
||||
"optional": false
|
||||
},
|
||||
"rehype-slug": {
|
||||
"optional": true
|
||||
},
|
||||
"remark-gfm": {
|
||||
"optional": true
|
||||
},
|
||||
"remark-parse": {
|
||||
"optional": true
|
||||
},
|
||||
"unified": {
|
||||
"optional": true
|
||||
},
|
||||
"unist-util-visit": {
|
||||
"optional": true
|
||||
},
|
||||
"vfile": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
|
|
@ -1360,6 +1381,7 @@
|
|||
"resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz",
|
||||
"integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==",
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@types/ms": "*"
|
||||
}
|
||||
|
|
@ -1392,7 +1414,8 @@
|
|||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz",
|
||||
"integrity": "sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==",
|
||||
"license": "MIT"
|
||||
"license": "MIT",
|
||||
"optional": true
|
||||
},
|
||||
"node_modules/@types/node": {
|
||||
"version": "24.10.13",
|
||||
|
|
@ -1912,16 +1935,6 @@
|
|||
"node": ">=6"
|
||||
}
|
||||
},
|
||||
"node_modules/ccount": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz",
|
||||
"integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/wooorm"
|
||||
}
|
||||
},
|
||||
"node_modules/chai": {
|
||||
"version": "5.3.3",
|
||||
"resolved": "https://registry.npmjs.org/chai/-/chai-5.3.3.tgz",
|
||||
|
|
@ -2598,12 +2611,6 @@
|
|||
"node": "^8.16.0 || ^10.6.0 || >=11.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/github-slugger": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-2.0.0.tgz",
|
||||
"integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==",
|
||||
"license": "ISC"
|
||||
},
|
||||
"node_modules/glob": {
|
||||
"version": "7.2.3",
|
||||
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
|
||||
|
|
@ -2717,32 +2724,6 @@
|
|||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/hast-util-heading-rank": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/hast-util-heading-rank/-/hast-util-heading-rank-3.0.0.tgz",
|
||||
"integrity": "sha512-EJKb8oMUXVHcWZTDepnr+WNbfnXKFNf9duMesmr4S8SXTJBJ9M4Yok08pu9vxdJwdlGRhVumk9mEhkEvKGifwA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/hast": "^3.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/hast-util-to-string": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-3.0.1.tgz",
|
||||
"integrity": "sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/hast": "^3.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/ignore": {
|
||||
"version": "5.3.2",
|
||||
"resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
|
||||
|
|
@ -3011,21 +2992,12 @@
|
|||
"@jridgewell/sourcemap-codec": "^1.5.5"
|
||||
}
|
||||
},
|
||||
"node_modules/markdown-table": {
|
||||
"version": "3.0.4",
|
||||
"resolved": "https://registry.npmjs.org/markdown-table/-/markdown-table-3.0.4.tgz",
|
||||
"integrity": "sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==",
|
||||
"license": "MIT",
|
||||
"funding": {
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/wooorm"
|
||||
}
|
||||
},
|
||||
"node_modules/mdast-util-find-and-replace": {
|
||||
"version": "3.0.2",
|
||||
"resolved": "https://registry.npmjs.org/mdast-util-find-and-replace/-/mdast-util-find-and-replace-3.0.2.tgz",
|
||||
"integrity": "sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==",
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@types/mdast": "^4.0.0",
|
||||
"escape-string-regexp": "^5.0.0",
|
||||
|
|
@ -3042,6 +3014,7 @@
|
|||
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz",
|
||||
"integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==",
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"engines": {
|
||||
"node": ">=12"
|
||||
},
|
||||
|
|
@ -3054,6 +3027,7 @@
|
|||
"resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-2.0.2.tgz",
|
||||
"integrity": "sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==",
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@types/mdast": "^4.0.0",
|
||||
"@types/unist": "^3.0.0",
|
||||
|
|
@ -3073,107 +3047,6 @@
|
|||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/mdast-util-gfm": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/mdast-util-gfm/-/mdast-util-gfm-3.1.0.tgz",
|
||||
"integrity": "sha512-0ulfdQOM3ysHhCJ1p06l0b0VKlhU0wuQs3thxZQagjcjPrlFRqY215uZGHHJan9GEAXd9MbfPjFJz+qMkVR6zQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"mdast-util-from-markdown": "^2.0.0",
|
||||
"mdast-util-gfm-autolink-literal": "^2.0.0",
|
||||
"mdast-util-gfm-footnote": "^2.0.0",
|
||||
"mdast-util-gfm-strikethrough": "^2.0.0",
|
||||
"mdast-util-gfm-table": "^2.0.0",
|
||||
"mdast-util-gfm-task-list-item": "^2.0.0",
|
||||
"mdast-util-to-markdown": "^2.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/mdast-util-gfm-autolink-literal": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/mdast-util-gfm-autolink-literal/-/mdast-util-gfm-autolink-literal-2.0.1.tgz",
|
||||
"integrity": "sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/mdast": "^4.0.0",
|
||||
"ccount": "^2.0.0",
|
||||
"devlop": "^1.0.0",
|
||||
"mdast-util-find-and-replace": "^3.0.0",
|
||||
"micromark-util-character": "^2.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/mdast-util-gfm-footnote": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/mdast-util-gfm-footnote/-/mdast-util-gfm-footnote-2.1.0.tgz",
|
||||
"integrity": "sha512-sqpDWlsHn7Ac9GNZQMeUzPQSMzR6Wv0WKRNvQRg0KqHh02fpTz69Qc1QSseNX29bhz1ROIyNyxExfawVKTm1GQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/mdast": "^4.0.0",
|
||||
"devlop": "^1.1.0",
|
||||
"mdast-util-from-markdown": "^2.0.0",
|
||||
"mdast-util-to-markdown": "^2.0.0",
|
||||
"micromark-util-normalize-identifier": "^2.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/mdast-util-gfm-strikethrough": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/mdast-util-gfm-strikethrough/-/mdast-util-gfm-strikethrough-2.0.0.tgz",
|
||||
"integrity": "sha512-mKKb915TF+OC5ptj5bJ7WFRPdYtuHv0yTRxK2tJvi+BDqbkiG7h7u/9SI89nRAYcmap2xHQL9D+QG/6wSrTtXg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/mdast": "^4.0.0",
|
||||
"mdast-util-from-markdown": "^2.0.0",
|
||||
"mdast-util-to-markdown": "^2.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/mdast-util-gfm-table": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/mdast-util-gfm-table/-/mdast-util-gfm-table-2.0.0.tgz",
|
||||
"integrity": "sha512-78UEvebzz/rJIxLvE7ZtDd/vIQ0RHv+3Mh5DR96p7cS7HsBhYIICDBCu8csTNWNO6tBWfqXPWekRuj2FNOGOZg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/mdast": "^4.0.0",
|
||||
"devlop": "^1.0.0",
|
||||
"markdown-table": "^3.0.0",
|
||||
"mdast-util-from-markdown": "^2.0.0",
|
||||
"mdast-util-to-markdown": "^2.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/mdast-util-gfm-task-list-item": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/mdast-util-gfm-task-list-item/-/mdast-util-gfm-task-list-item-2.0.0.tgz",
|
||||
"integrity": "sha512-IrtvNvjxC1o06taBAVJznEnkiHxLFTzgonUdy8hzFVeDun0uTjxxrRGVaNFqkU1wJR3RBPEfsxmU6jDWPofrTQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/mdast": "^4.0.0",
|
||||
"devlop": "^1.0.0",
|
||||
"mdast-util-from-markdown": "^2.0.0",
|
||||
"mdast-util-to-markdown": "^2.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/mdast-util-phrasing": {
|
||||
"version": "4.1.0",
|
||||
"resolved": "https://registry.npmjs.org/mdast-util-phrasing/-/mdast-util-phrasing-4.1.0.tgz",
|
||||
|
|
@ -3247,6 +3120,7 @@
|
|||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"@types/debug": "^4.0.0",
|
||||
"debug": "^4.0.0",
|
||||
|
|
@ -3282,6 +3156,7 @@
|
|||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"decode-named-character-reference": "^1.0.0",
|
||||
"devlop": "^1.0.0",
|
||||
|
|
@ -3301,127 +3176,6 @@
|
|||
"micromark-util-types": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/micromark-extension-gfm": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/micromark-extension-gfm/-/micromark-extension-gfm-3.0.0.tgz",
|
||||
"integrity": "sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"micromark-extension-gfm-autolink-literal": "^2.0.0",
|
||||
"micromark-extension-gfm-footnote": "^2.0.0",
|
||||
"micromark-extension-gfm-strikethrough": "^2.0.0",
|
||||
"micromark-extension-gfm-table": "^2.0.0",
|
||||
"micromark-extension-gfm-tagfilter": "^2.0.0",
|
||||
"micromark-extension-gfm-task-list-item": "^2.0.0",
|
||||
"micromark-util-combine-extensions": "^2.0.0",
|
||||
"micromark-util-types": "^2.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/micromark-extension-gfm-autolink-literal": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/micromark-extension-gfm-autolink-literal/-/micromark-extension-gfm-autolink-literal-2.1.0.tgz",
|
||||
"integrity": "sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"micromark-util-character": "^2.0.0",
|
||||
"micromark-util-sanitize-uri": "^2.0.0",
|
||||
"micromark-util-symbol": "^2.0.0",
|
||||
"micromark-util-types": "^2.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/micromark-extension-gfm-footnote": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/micromark-extension-gfm-footnote/-/micromark-extension-gfm-footnote-2.1.0.tgz",
|
||||
"integrity": "sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"devlop": "^1.0.0",
|
||||
"micromark-core-commonmark": "^2.0.0",
|
||||
"micromark-factory-space": "^2.0.0",
|
||||
"micromark-util-character": "^2.0.0",
|
||||
"micromark-util-normalize-identifier": "^2.0.0",
|
||||
"micromark-util-sanitize-uri": "^2.0.0",
|
||||
"micromark-util-symbol": "^2.0.0",
|
||||
"micromark-util-types": "^2.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/micromark-extension-gfm-strikethrough": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/micromark-extension-gfm-strikethrough/-/micromark-extension-gfm-strikethrough-2.1.0.tgz",
|
||||
"integrity": "sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"devlop": "^1.0.0",
|
||||
"micromark-util-chunked": "^2.0.0",
|
||||
"micromark-util-classify-character": "^2.0.0",
|
||||
"micromark-util-resolve-all": "^2.0.0",
|
||||
"micromark-util-symbol": "^2.0.0",
|
||||
"micromark-util-types": "^2.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/micromark-extension-gfm-table": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/micromark-extension-gfm-table/-/micromark-extension-gfm-table-2.1.1.tgz",
|
||||
"integrity": "sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"devlop": "^1.0.0",
|
||||
"micromark-factory-space": "^2.0.0",
|
||||
"micromark-util-character": "^2.0.0",
|
||||
"micromark-util-symbol": "^2.0.0",
|
||||
"micromark-util-types": "^2.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/micromark-extension-gfm-tagfilter": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/micromark-extension-gfm-tagfilter/-/micromark-extension-gfm-tagfilter-2.0.0.tgz",
|
||||
"integrity": "sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"micromark-util-types": "^2.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/micromark-extension-gfm-task-list-item": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/micromark-extension-gfm-task-list-item/-/micromark-extension-gfm-task-list-item-2.1.0.tgz",
|
||||
"integrity": "sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"devlop": "^1.0.0",
|
||||
"micromark-factory-space": "^2.0.0",
|
||||
"micromark-util-character": "^2.0.0",
|
||||
"micromark-util-symbol": "^2.0.0",
|
||||
"micromark-util-types": "^2.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/micromark-factory-destination": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/micromark-factory-destination/-/micromark-factory-destination-2.0.1.tgz",
|
||||
|
|
@ -3437,6 +3191,7 @@
|
|||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"micromark-util-character": "^2.0.0",
|
||||
"micromark-util-symbol": "^2.0.0",
|
||||
|
|
@ -3458,6 +3213,7 @@
|
|||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"devlop": "^1.0.0",
|
||||
"micromark-util-character": "^2.0.0",
|
||||
|
|
@ -3480,6 +3236,7 @@
|
|||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"micromark-util-character": "^2.0.0",
|
||||
"micromark-util-types": "^2.0.0"
|
||||
|
|
@ -3500,6 +3257,7 @@
|
|||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"micromark-factory-space": "^2.0.0",
|
||||
"micromark-util-character": "^2.0.0",
|
||||
|
|
@ -3522,6 +3280,7 @@
|
|||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"micromark-factory-space": "^2.0.0",
|
||||
"micromark-util-character": "^2.0.0",
|
||||
|
|
@ -3564,6 +3323,7 @@
|
|||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"micromark-util-symbol": "^2.0.0"
|
||||
}
|
||||
|
|
@ -3604,6 +3364,7 @@
|
|||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"micromark-util-chunked": "^2.0.0",
|
||||
"micromark-util-types": "^2.0.0"
|
||||
|
|
@ -3664,7 +3425,8 @@
|
|||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
"license": "MIT",
|
||||
"optional": true
|
||||
},
|
||||
"node_modules/micromark-util-html-tag-name": {
|
||||
"version": "2.0.1",
|
||||
|
|
@ -3680,7 +3442,8 @@
|
|||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
],
|
||||
"license": "MIT"
|
||||
"license": "MIT",
|
||||
"optional": true
|
||||
},
|
||||
"node_modules/micromark-util-normalize-identifier": {
|
||||
"version": "2.0.1",
|
||||
|
|
@ -3697,6 +3460,7 @@
|
|||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"micromark-util-symbol": "^2.0.0"
|
||||
}
|
||||
|
|
@ -3716,6 +3480,7 @@
|
|||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"micromark-util-types": "^2.0.0"
|
||||
}
|
||||
|
|
@ -3735,6 +3500,7 @@
|
|||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"micromark-util-character": "^2.0.0",
|
||||
"micromark-util-encode": "^2.0.0",
|
||||
|
|
@ -3756,6 +3522,7 @@
|
|||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"dependencies": {
|
||||
"devlop": "^1.0.0",
|
||||
"micromark-util-chunked": "^2.0.0",
|
||||
|
|
@ -4085,7 +3852,6 @@
|
|||
}
|
||||
],
|
||||
"license": "MIT",
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"nanoid": "^3.3.11",
|
||||
"picocolors": "^1.1.1",
|
||||
|
|
@ -4218,57 +3984,6 @@
|
|||
"url": "https://paulmillr.com/funding/"
|
||||
}
|
||||
},
|
||||
"node_modules/rehype-slug": {
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/rehype-slug/-/rehype-slug-6.0.0.tgz",
|
||||
"integrity": "sha512-lWyvf/jwu+oS5+hL5eClVd3hNdmwM1kAC0BUvEGD19pajQMIzcNUd/k9GsfQ+FfECvX+JE+e9/btsKH0EjJT6A==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/hast": "^3.0.0",
|
||||
"github-slugger": "^2.0.0",
|
||||
"hast-util-heading-rank": "^3.0.0",
|
||||
"hast-util-to-string": "^3.0.0",
|
||||
"unist-util-visit": "^5.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/remark-gfm": {
|
||||
"version": "4.0.1",
|
||||
"resolved": "https://registry.npmjs.org/remark-gfm/-/remark-gfm-4.0.1.tgz",
|
||||
"integrity": "sha512-1quofZ2RQ9EWdeN34S79+KExV1764+wCUGop5CPL1WGdD0ocPpu91lzPGbwWMECpEpd42kJGQwzRfyov9j4yNg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/mdast": "^4.0.0",
|
||||
"mdast-util-gfm": "^3.0.0",
|
||||
"micromark-extension-gfm": "^3.0.0",
|
||||
"remark-parse": "^11.0.0",
|
||||
"remark-stringify": "^11.0.0",
|
||||
"unified": "^11.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/remark-parse": {
|
||||
"version": "11.0.0",
|
||||
"resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-11.0.0.tgz",
|
||||
"integrity": "sha512-FCxlKLNGknS5ba/1lmpYijMUzX2esxW5xQqjWxw2eHFfS2MSdaHVINFmhjo+qN1WhZhNimq0dZATN9pH0IDrpA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@types/mdast": "^4.0.0",
|
||||
"mdast-util-from-markdown": "^2.0.0",
|
||||
"micromark-util-types": "^2.0.0",
|
||||
"unified": "^11.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/unified"
|
||||
}
|
||||
},
|
||||
"node_modules/remark-stringify": {
|
||||
"version": "11.0.0",
|
||||
"resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-11.0.0.tgz",
|
||||
|
|
|
|||
|
|
@ -43,7 +43,6 @@
|
|||
"sideEffects": false,
|
||||
"scripts": {
|
||||
"build": "tsup",
|
||||
"prepare": "npm run build",
|
||||
"dev": "tsup --watch",
|
||||
"lint": "eslint . --max-warnings=0",
|
||||
"format": "prettier . --check",
|
||||
|
|
|
|||
Loading…
Reference in a new issue