blume 2.1.1 → 2.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -0
- package/dist/cli/{chunk-ncj7w596.js → chunk-0pmb4tr4.js} +22 -18
- package/dist/cli/{chunk-ncj7w596.js.map → chunk-0pmb4tr4.js.map} +3 -3
- package/dist/cli/{chunk-nq1d20w2.js → chunk-0w6hs479.js} +15 -15
- package/dist/cli/{chunk-ehweg4fr.js → chunk-124fvmzq.js} +1031 -903
- package/dist/cli/{chunk-ehweg4fr.js.map → chunk-124fvmzq.js.map} +20 -18
- package/dist/cli/{chunk-kma9f6sf.js → chunk-1f882900.js} +2 -2
- package/dist/cli/{chunk-e8xw9qkh.js → chunk-297ajdcv.js} +4 -4
- package/dist/cli/{chunk-e6atmn4h.js → chunk-32khwcb6.js} +7 -7
- package/dist/cli/{chunk-073rdvgb.js → chunk-36bxs9c7.js} +16 -16
- package/dist/cli/{chunk-mrcccgnh.js → chunk-53jqw8z0.js} +3 -3
- package/dist/cli/{chunk-ft9vfys6.js → chunk-58bt3hag.js} +4 -4
- package/dist/cli/{chunk-sds923fa.js → chunk-5cmts6dv.js} +3 -3
- package/dist/cli/{chunk-cfyg47zg.js → chunk-60hz265r.js} +4 -4
- package/dist/cli/{chunk-j134vrp2.js → chunk-74wfhv79.js} +1 -1
- package/dist/cli/{chunk-nrns10mj.js → chunk-9qzgg6mj.js} +3 -3
- package/dist/cli/{chunk-tphac74f.js → chunk-a57yh0h9.js} +5 -5
- package/dist/cli/{chunk-hebn0tpx.js → chunk-ave1wcbr.js} +1 -1
- package/dist/cli/{chunk-htrwgabr.js → chunk-bqxaqn5p.js} +6 -6
- package/dist/cli/{chunk-5vjtgs6e.js → chunk-bxwhtvw8.js} +5 -5
- package/dist/cli/{chunk-66w9j7p6.js → chunk-ckrcm08h.js} +5 -3
- package/dist/cli/{chunk-66w9j7p6.js.map → chunk-ckrcm08h.js.map} +3 -3
- package/dist/cli/{chunk-n0v7m8ry.js → chunk-desvm72z.js} +3 -3
- package/dist/cli/{chunk-3v3ffbrj.js → chunk-dhwtqnnd.js} +2 -2
- package/dist/cli/{chunk-gb420vvz.js → chunk-dpy8qdjf.js} +7 -4
- package/dist/cli/chunk-dpy8qdjf.js.map +17 -0
- package/dist/cli/{chunk-c1y538kd.js → chunk-dqhg54mr.js} +1 -1
- package/dist/cli/{chunk-42t4jxdx.js → chunk-dv2z0rzf.js} +1 -1
- package/dist/cli/{chunk-cm89scdv.js → chunk-es8h0v3j.js} +9 -11
- package/dist/cli/{chunk-cm89scdv.js.map → chunk-es8h0v3j.js.map} +3 -3
- package/dist/cli/{chunk-hx3xqnk9.js → chunk-gfc5fqvf.js} +14 -14
- package/dist/cli/{chunk-7ppf1rva.js → chunk-gxtg6ed2.js} +16 -16
- package/dist/cli/{chunk-8y2kmjv8.js → chunk-hvcxng5f.js} +6 -6
- package/dist/cli/{chunk-54ztw1nj.js → chunk-j1x92mx9.js} +1 -1
- package/dist/cli/{chunk-313vnn40.js → chunk-k3gr1nm9.js} +11 -9
- package/dist/cli/chunk-k3gr1nm9.js.map +10 -0
- package/dist/cli/{chunk-c887fj0s.js → chunk-kdpzw38a.js} +2 -2
- package/dist/cli/{chunk-t2m5j4pr.js → chunk-ms9z66nz.js} +2 -2
- package/dist/cli/{chunk-t2m5j4pr.js.map → chunk-ms9z66nz.js.map} +2 -2
- package/dist/cli/{chunk-ep6nd0rn.js → chunk-nbyvgnnm.js} +26 -14
- package/dist/cli/{chunk-ep6nd0rn.js.map → chunk-nbyvgnnm.js.map} +7 -7
- package/dist/cli/{chunk-w1r4vase.js → chunk-s0bdnc7v.js} +2 -2
- package/dist/cli/{chunk-fdrkhpjy.js → chunk-sc93apfs.js} +14 -14
- package/dist/cli/{chunk-dzwehpy7.js → chunk-tfycddbt.js} +2 -2
- package/dist/cli/{chunk-3x6x3pph.js → chunk-twy7psdz.js} +7 -7
- package/dist/cli/{chunk-e9q7a2ak.js → chunk-y4msrwm9.js} +15 -15
- package/dist/cli/{chunk-tdqhyxfz.js → chunk-ydp3065p.js} +5 -5
- package/dist/cli/index.js +18 -18
- package/dist/types/ai/ask.d.ts +24 -5
- package/dist/types/analytics/clics.d.ts +37 -0
- package/dist/types/analytics/index.d.ts +2 -0
- package/dist/types/analytics/schema.d.ts +18 -0
- package/dist/types/astro/integration.d.ts +6 -0
- package/dist/types/core/config-input.d.ts +7 -3
- package/dist/types/core/powered-by.d.ts +12 -0
- package/dist/types/core/schema.d.ts +109 -3
- package/dist/types/core/sources/lower.d.ts +10 -2
- package/dist/types/core/sources/notion.d.ts +8 -0
- package/dist/types/deploy/cloudflare-negotiation.d.ts +5 -2
- package/dist/types/deploy/node-headers.d.ts +12 -4
- package/dist/types/deploy/platforms/vercel.d.ts +2 -2
- package/dist/types/deploy/vercel-negotiation.d.ts +4 -2
- package/dist/types/narration/build.d.ts +34 -12
- package/dist/types/narration/provider.d.ts +96 -8
- package/dist/types/openapi/sentence.d.ts +11 -1
- package/dist/types/seo/jsonld.d.ts +11 -6
- package/dist/types/sources/notion.d.ts +8 -0
- package/dist/types/sources/registry.d.ts +9 -0
- package/docs/02-deployment.mdx +29 -1
- package/docs/03-upgrading.mdx +2 -1
- package/docs/04-migrating.mdx +9 -9
- package/docs/08-faq.mdx +12 -12
- package/docs/advanced/changelog.mdx +19 -2
- package/docs/advanced/custom-pages.mdx +1 -1
- package/docs/cli/doctor.mdx +1 -1
- package/docs/configuration/analytics.mdx +19 -1
- package/docs/configuration/index.mdx +1 -0
- package/docs/configuration/narration.mdx +43 -6
- package/docs/content/navigation.mdx +4 -2
- package/docs/content/sources/contentful.mdx +2 -0
- package/docs/content/sources/github-releases.mdx +2 -0
- package/docs/content/sources/notion.mdx +16 -1
- package/docs/content/sources/obsidian.mdx +2 -0
- package/docs/content/sources/payload.mdx +2 -0
- package/docs/content/sources/remote-mdx.mdx +2 -0
- package/docs/content/sources/sanity.mdx +2 -0
- package/docs/content/sources/strapi.mdx +2 -0
- package/docs/discoverability/mcp.mdx +2 -0
- package/docs/discoverability/structured-data.mdx +8 -6
- package/docs/references/asyncapi.mdx +2 -0
- package/docs/references/graphql.mdx +2 -0
- package/docs/references/openapi.mdx +14 -0
- package/package.json +7 -6
- package/skills/blume/SKILL.md +1 -1
- package/skills/blume-migrate/SKILL.md +1 -1
- package/skills/blume-migrate/assets/{oxfmt@0.67.0.patch → oxfmt@0.71.0.patch} +7 -7
- package/skills/blume-migrate/references/monorepo.md +5 -5
- package/src/ai/ask.ts +24 -6
- package/src/analytics/clics.ts +58 -0
- package/src/analytics/head.ts +5 -0
- package/src/analytics/index.ts +2 -0
- package/src/analytics/schema.ts +2 -0
- package/src/astro/generate.ts +13 -8
- package/src/astro/integration.ts +56 -9
- package/src/astro/render-deps.ts +10 -5
- package/src/astro/runtime-deps.ts +23 -2
- package/src/astro/templates.ts +4 -1
- package/src/cli/init/scaffold.ts +6 -3
- package/src/cli/required-secrets.ts +2 -1
- package/src/components/content/view-switcher.ts +7 -4
- package/src/components/layout/NavTree.astro +49 -5
- package/src/components/layout/NavTreeScript.astro +18 -0
- package/src/components/layout/PageLayout.astro +13 -3
- package/src/components/layout/RootLayout.astro +17 -12
- package/src/components/layout/analytics-client.ts +8 -8
- package/src/components/openapi/playground-client.ts +53 -53
- package/src/components/powered-by-middleware.ts +33 -0
- package/src/core/config-input.ts +11 -3
- package/src/core/powered-by.ts +12 -0
- package/src/core/schema.ts +5 -4
- package/src/core/sources/lower.ts +19 -3
- package/src/core/sources/notion.ts +27 -9
- package/src/deploy/cloudflare-negotiation.ts +36 -7
- package/src/deploy/headers.ts +15 -1
- package/src/deploy/node-headers.ts +32 -20
- package/src/deploy/platforms/cloudflare.ts +1 -0
- package/src/deploy/platforms/vercel.ts +4 -3
- package/src/deploy/vercel-negotiation.ts +38 -4
- package/src/markdown/base-links.ts +15 -14
- package/src/markdown/package-commands.ts +9 -8
- package/src/narration/build.ts +218 -40
- package/src/narration/provider.ts +89 -9
- package/src/openapi/render-mdx.ts +68 -8
- package/src/openapi/sentence.ts +29 -2
- package/src/registry/eject.ts +5 -1
- package/src/seo/jsonld.ts +38 -20
- package/src/sources/notion.ts +7 -0
- package/src/theme/color.ts +9 -10
- package/src/theme/entry.ts +14 -3
- package/dist/cli/chunk-313vnn40.js.map +0 -10
- package/dist/cli/chunk-gb420vvz.js.map +0 -17
- /package/dist/cli/{chunk-nq1d20w2.js.map → chunk-0w6hs479.js.map} +0 -0
- /package/dist/cli/{chunk-kma9f6sf.js.map → chunk-1f882900.js.map} +0 -0
- /package/dist/cli/{chunk-e8xw9qkh.js.map → chunk-297ajdcv.js.map} +0 -0
- /package/dist/cli/{chunk-e6atmn4h.js.map → chunk-32khwcb6.js.map} +0 -0
- /package/dist/cli/{chunk-073rdvgb.js.map → chunk-36bxs9c7.js.map} +0 -0
- /package/dist/cli/{chunk-mrcccgnh.js.map → chunk-53jqw8z0.js.map} +0 -0
- /package/dist/cli/{chunk-ft9vfys6.js.map → chunk-58bt3hag.js.map} +0 -0
- /package/dist/cli/{chunk-sds923fa.js.map → chunk-5cmts6dv.js.map} +0 -0
- /package/dist/cli/{chunk-cfyg47zg.js.map → chunk-60hz265r.js.map} +0 -0
- /package/dist/cli/{chunk-j134vrp2.js.map → chunk-74wfhv79.js.map} +0 -0
- /package/dist/cli/{chunk-nrns10mj.js.map → chunk-9qzgg6mj.js.map} +0 -0
- /package/dist/cli/{chunk-tphac74f.js.map → chunk-a57yh0h9.js.map} +0 -0
- /package/dist/cli/{chunk-hebn0tpx.js.map → chunk-ave1wcbr.js.map} +0 -0
- /package/dist/cli/{chunk-htrwgabr.js.map → chunk-bqxaqn5p.js.map} +0 -0
- /package/dist/cli/{chunk-5vjtgs6e.js.map → chunk-bxwhtvw8.js.map} +0 -0
- /package/dist/cli/{chunk-n0v7m8ry.js.map → chunk-desvm72z.js.map} +0 -0
- /package/dist/cli/{chunk-3v3ffbrj.js.map → chunk-dhwtqnnd.js.map} +0 -0
- /package/dist/cli/{chunk-c1y538kd.js.map → chunk-dqhg54mr.js.map} +0 -0
- /package/dist/cli/{chunk-42t4jxdx.js.map → chunk-dv2z0rzf.js.map} +0 -0
- /package/dist/cli/{chunk-hx3xqnk9.js.map → chunk-gfc5fqvf.js.map} +0 -0
- /package/dist/cli/{chunk-7ppf1rva.js.map → chunk-gxtg6ed2.js.map} +0 -0
- /package/dist/cli/{chunk-8y2kmjv8.js.map → chunk-hvcxng5f.js.map} +0 -0
- /package/dist/cli/{chunk-54ztw1nj.js.map → chunk-j1x92mx9.js.map} +0 -0
- /package/dist/cli/{chunk-c887fj0s.js.map → chunk-kdpzw38a.js.map} +0 -0
- /package/dist/cli/{chunk-w1r4vase.js.map → chunk-s0bdnc7v.js.map} +0 -0
- /package/dist/cli/{chunk-fdrkhpjy.js.map → chunk-sc93apfs.js.map} +0 -0
- /package/dist/cli/{chunk-dzwehpy7.js.map → chunk-tfycddbt.js.map} +0 -0
- /package/dist/cli/{chunk-3x6x3pph.js.map → chunk-twy7psdz.js.map} +0 -0
- /package/dist/cli/{chunk-e9q7a2ak.js.map → chunk-y4msrwm9.js.map} +0 -0
- /package/dist/cli/{chunk-tdqhyxfz.js.map → chunk-ydp3065p.js.map} +0 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,28 @@
|
|
|
1
1
|
# blume
|
|
2
2
|
|
|
3
|
+
## 2.1.3
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- e74161e: `npm install blume` and `npx blume init` finish again. `@vitejs/plugin-react` 6.1.2 asks for `oxc-transform-react` 0.152 while `@astrojs/react` 7.0.0 still asks for 0.145, and npm swapped between the two until it ran out of memory. Blume now pins `@vitejs/plugin-react` to 6.1.1, the version that matches the `oxc-transform-react` it ships, so npm, pnpm, and Bun all install without peer warnings.
|
|
8
|
+
- d2d72af: Update dependencies: `@astrojs/mdx` 8.0.2, `@astrojs/node` 11.1.6, `@iconify-json/lucide` 1.2.140, `@scalar/openapi-parser` 0.29.11, and `dotenv` 18.0.5.
|
|
9
|
+
|
|
10
|
+
## 2.1.2
|
|
11
|
+
|
|
12
|
+
### Patch Changes
|
|
13
|
+
|
|
14
|
+
- 18a35d0: Send an `X-Powered-By: Blume` response header from `blume dev` and from every host Blume sets headers on. Set `poweredBy: false` to leave it out.
|
|
15
|
+
- 7afeed7: A `cloudflare()` server build no longer writes `dist/server/node_modules`. The Worker bundles everything it imports, so the links to Blume's dependencies there were never loaded, but a copy of `dist/` that followed them (such as a CI artifact) uploaded every dependency as a Worker module and failed the deploy on the 64 MiB size limit. `dist/` now deploys the same wherever it's copied.
|
|
16
|
+
- 4d65f16: Add a `clics()` analytics adapter. It renders the Clics tracker tag with `projectId` as `data-project-id`, and the tracker counts pageviews (client-side navigations included) and outbound-link clicks. `allowLocalhost` and `disableOutboundLinks` set the tracker's matching flags. Blume's custom events don't reach Clics, whose tracker has no global event API.
|
|
17
|
+
- 44616f3: The homepage now emits a `WebPage` JSON-LD node with its description, language, and dates, including each locale's homepage, the root of a `basePath`, and sites without `deployment.site`. `PageLayout` takes a `lastModified` prop to date a custom homepage, and the "Last updated" date on every page is wrapped in a `<time>` element, so search engines no longer pick up an unrelated date from the page.
|
|
18
|
+
- 858c203: A zoomed image now closes with Escape, a click, or a scroll when the visitor's system asks for reduced motion. The zoom still opens and closes without animating, but it no longer stays stuck open until the page reloads.
|
|
19
|
+
- 9d3897a: An API reference page whose description opens with the lead-in to a list ("Supports two modes:") no longer ends its meta description in a dangling `:` or `:.`. The list's items now follow the lead-in ("Supports two modes: Explicit IDs; Select all."), on operation and overview pages and with `seoDescriptionSuffix` off. A lead-in to anything else, such as a code block, closes with a period, and a colon that belongs to the text, like inline code ending in `tenant:`, stays. Operation summaries on the agent surfaces close the same way.
|
|
20
|
+
- d1cf8d9: A build without the narration provider's key, such as a pull request from a fork, now still ships the generated clips its cache restored: only pages that need a new clip fall back to browser voices, and the warning prints only when a clip is missing.
|
|
21
|
+
- d1cf8d9: Narration can generate voices with `openai()` from `blume/ai`, not only `gateway()`. `narration: { provider: openai({ model, voice }) }` uses OpenAI's speech models, and with a `baseUrl` any server that serves OpenAI's `/audio/speech` endpoint, such as a self-hosted Kokoro-FastAPI, Speaches, or LiteLLM, so a site whose build can't reach a hosted service still gets generated voices. With a `baseUrl`, only the key `apiKeyEnv` names is sent, so `OPENAI_API_KEY` never reaches another server, and with none named the build calls the server without a bearer token instead of skipping generation. It speaks through `@ai-sdk/openai`, which `blume build` and `blume doctor` report when it isn't installed. A response that isn't MP3 fails its clip instead of being cached. Clips are cached per server and shared across languages, since OpenAI's speech API takes none, and `gateway()` clips keep their cache keys.
|
|
22
|
+
- b67d679: `notion()` takes `mdx: true` to read the text of a Notion page as MDX, so components like `<CardGroup>` and `<Card>`, expressions, and Markdown typed into paragraphs, headings, list items, quotes, and callouts render instead of showing as written. Blume 2 escapes that text by default, which left pages written this way under Blume 1 showing their tags. Code blocks, toggle titles, captions, and properties stay plain text. MDX runs code at build time, so turn this on only for a database whose editors you trust with the site's build.
|
|
23
|
+
- cfb5c51: The `blume-migrate` skill's bundled oxfmt patch now targets oxfmt 0.71.0, so a migrated repo that formats with Ultracite keeps its `:::` directives, titled fences like `:::warning[Heads up]` included, on the current oxfmt release.
|
|
24
|
+
- d23dda7: In `page` display mode, a sidebar group with an `index` page now links its row's name to that page, as `group` and `flat` mode already did: clicking the name opens the section's landing page with its panel open, even when the index page sets `sidebar.hidden: true`. Before, the row only slid the panel in and left the previous page on screen. The chevron beside the name still slides the panel in without leaving the page, and a group without an index page keeps its whole row as the drill-in button. The row of the section holding the current page is now highlighted too, so after the back arrow the parent panel still shows where you are, and clicking the name of the section's own page slides its panel back in without reloading.
|
|
25
|
+
|
|
3
26
|
## 2.1.1
|
|
4
27
|
|
|
5
28
|
### Patch Changes
|
|
@@ -50,6 +50,7 @@ import {
|
|
|
50
50
|
escapeMarkdownText,
|
|
51
51
|
guardBlockStart,
|
|
52
52
|
renderInline,
|
|
53
|
+
renderInlineMdx,
|
|
53
54
|
destination,
|
|
54
55
|
linkParts,
|
|
55
56
|
headingPrefix,
|
|
@@ -76,7 +77,7 @@ import {
|
|
|
76
77
|
createModuleLoader,
|
|
77
78
|
resolveProjectContext,
|
|
78
79
|
loadConfig
|
|
79
|
-
} from "./chunk-
|
|
80
|
+
} from "./chunk-124fvmzq.js";
|
|
80
81
|
import {
|
|
81
82
|
getBlumeVersion,
|
|
82
83
|
BlumeError,
|
|
@@ -2072,7 +2073,7 @@ var materializeAssets = async (markdown, ctx) => {
|
|
|
2072
2073
|
};
|
|
2073
2074
|
|
|
2074
2075
|
// src/core/sources/notion.ts
|
|
2075
|
-
var richToMarkdown = (rich = []) => {
|
|
2076
|
+
var richToMarkdown = (rich = [], mdx = false) => {
|
|
2076
2077
|
const linked = [];
|
|
2077
2078
|
for (const { annotations = {}, href, plain_text: text } of rich) {
|
|
2078
2079
|
const run = {
|
|
@@ -2091,8 +2092,10 @@ var richToMarkdown = (rich = []) => {
|
|
|
2091
2092
|
linked.push({ href: href ?? undefined, runs: [run] });
|
|
2092
2093
|
}
|
|
2093
2094
|
}
|
|
2094
|
-
|
|
2095
|
+
const parts = linked.flatMap(({ href, runs }) => linkParts(runs, href, mdx));
|
|
2096
|
+
return mdx ? renderInlineMdx(parts) : renderInline(parts);
|
|
2095
2097
|
};
|
|
2098
|
+
var blockText2 = (rich, mdx) => mdx ? richToMarkdown(rich, true) : guardBlockStart(richToMarkdown(rich));
|
|
2096
2099
|
var isBlockPayload = (value) => typeof value === "object";
|
|
2097
2100
|
var payloadOf = (block) => {
|
|
2098
2101
|
const value = block[block.type];
|
|
@@ -2151,9 +2154,9 @@ var renderVideo = (data) => {
|
|
|
2151
2154
|
${media}
|
|
2152
2155
|
</Frame>` : media;
|
|
2153
2156
|
};
|
|
2154
|
-
var renderLeaf = (block) => {
|
|
2157
|
+
var renderLeaf = (block, mdx) => {
|
|
2155
2158
|
const data = payloadOf(block) ?? {};
|
|
2156
|
-
const text =
|
|
2159
|
+
const text = blockText2(blockField(block), mdx);
|
|
2157
2160
|
switch (block.type) {
|
|
2158
2161
|
case "paragraph": {
|
|
2159
2162
|
return text;
|
|
@@ -2199,6 +2202,7 @@ var renderLeaf = (block) => {
|
|
|
2199
2202
|
};
|
|
2200
2203
|
var notionSource = (options, ctx) => {
|
|
2201
2204
|
const props = options.properties ?? {};
|
|
2205
|
+
const textAsMdx = options.mdx ?? false;
|
|
2202
2206
|
const limit = pLimit(Math.max(1, options.concurrency ?? DEFAULT_CONCURRENCY));
|
|
2203
2207
|
const downloads = pLimit(ASSET_DOWNLOAD_CONCURRENCY);
|
|
2204
2208
|
const inFlight = new Map;
|
|
@@ -2238,7 +2242,7 @@ var notionSource = (options, ctx) => {
|
|
|
2238
2242
|
};
|
|
2239
2243
|
if (block.type === "callout") {
|
|
2240
2244
|
const body = [
|
|
2241
|
-
|
|
2245
|
+
blockText2(blockField(block), textAsMdx),
|
|
2242
2246
|
await children(block)
|
|
2243
2247
|
].filter(Boolean).join(`
|
|
2244
2248
|
|
|
@@ -2269,7 +2273,7 @@ ${rendered.join(`
|
|
|
2269
2273
|
};
|
|
2270
2274
|
const renderBlocks = async (client, blocks) => {
|
|
2271
2275
|
const parts = await Promise.all(blocks.map(async (block) => {
|
|
2272
|
-
const leaf = renderLeaf(block);
|
|
2276
|
+
const leaf = renderLeaf(block, textAsMdx);
|
|
2273
2277
|
if (leaf === null) {
|
|
2274
2278
|
return renderContainer(client, block, renderBlocks);
|
|
2275
2279
|
}
|
|
@@ -2965,7 +2969,7 @@ var inlineNodeParts2 = (node, options) => {
|
|
|
2965
2969
|
}
|
|
2966
2970
|
};
|
|
2967
2971
|
var inlineText = (nodes, options) => guardBlockStart(renderInline(inlineParts2(nodes, options)));
|
|
2968
|
-
var
|
|
2972
|
+
var blockText3 = (node, options) => inlineText(children2(node), options);
|
|
2969
2973
|
var renderUpload = (node, options) => {
|
|
2970
2974
|
const value = asObject(node.value);
|
|
2971
2975
|
const url = value ? asString(value.url) : undefined;
|
|
@@ -3007,14 +3011,14 @@ ${sub}` : line));
|
|
|
3007
3011
|
var renderBlock2 = (node, options) => {
|
|
3008
3012
|
switch (typeOf(node)) {
|
|
3009
3013
|
case "paragraph": {
|
|
3010
|
-
return
|
|
3014
|
+
return blockText3(node, options);
|
|
3011
3015
|
}
|
|
3012
3016
|
case "heading": {
|
|
3013
3017
|
const level = Number((asString(node.tag) ?? "h1").slice(1));
|
|
3014
|
-
return `${headingPrefix(level)}${
|
|
3018
|
+
return `${headingPrefix(level)}${blockText3(node, options)}`;
|
|
3015
3019
|
}
|
|
3016
3020
|
case "quote": {
|
|
3017
|
-
return blockquote(
|
|
3021
|
+
return blockquote(blockText3(node, options));
|
|
3018
3022
|
}
|
|
3019
3023
|
case "list": {
|
|
3020
3024
|
return renderList2(node, options);
|
|
@@ -3350,12 +3354,12 @@ var inlineNodeParts3 = (node) => {
|
|
|
3350
3354
|
}
|
|
3351
3355
|
}
|
|
3352
3356
|
};
|
|
3353
|
-
var
|
|
3357
|
+
var blockText4 = (nodes) => guardBlockStart(renderInline(inlineParts3(nodes)));
|
|
3354
3358
|
var renderList3 = (node) => {
|
|
3355
3359
|
const ordered = asString(node.format) === "ordered";
|
|
3356
3360
|
return children3(node).map((item, index) => {
|
|
3357
3361
|
const kids = children3(item);
|
|
3358
|
-
const line =
|
|
3362
|
+
const line = blockText4(kids.filter((kid) => typeOf2(kid) !== "list"));
|
|
3359
3363
|
const sub = kids.filter((kid) => typeOf2(kid) === "list").map((list) => renderList3(list)).join(`
|
|
3360
3364
|
`);
|
|
3361
3365
|
const body = sub ? `${line}
|
|
@@ -3375,13 +3379,13 @@ var renderImage = (node, options) => {
|
|
|
3375
3379
|
var renderBlock4 = (node, options) => {
|
|
3376
3380
|
switch (typeOf2(node)) {
|
|
3377
3381
|
case "paragraph": {
|
|
3378
|
-
return
|
|
3382
|
+
return blockText4(children3(node));
|
|
3379
3383
|
}
|
|
3380
3384
|
case "heading": {
|
|
3381
|
-
return `${headingPrefix(asNumber(node.level) ?? 1)}${
|
|
3385
|
+
return `${headingPrefix(asNumber(node.level) ?? 1)}${blockText4(children3(node))}`;
|
|
3382
3386
|
}
|
|
3383
3387
|
case "quote": {
|
|
3384
|
-
return blockquote(
|
|
3388
|
+
return blockquote(blockText4(children3(node)));
|
|
3385
3389
|
}
|
|
3386
3390
|
case "list": {
|
|
3387
3391
|
return renderList3(node);
|
|
@@ -3852,5 +3856,5 @@ var scanProject = async (root, options = {}) => {
|
|
|
3852
3856
|
|
|
3853
3857
|
export { directiveSource, validateSearchPopularIcons, validateNavTargets, contentIndexable, buildManifest, findFolderMetaFiles, isWithin, scanProject };
|
|
3854
3858
|
|
|
3855
|
-
//# debugId=
|
|
3856
|
-
//# sourceMappingURL=chunk-
|
|
3859
|
+
//# debugId=D6EC9010B970FDF164756E2164756E21
|
|
3860
|
+
//# sourceMappingURL=chunk-0pmb4tr4.js.map
|