@dogsbay/format-astro 0.2.0-beta.116 → 0.2.0-beta.117
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/dist/lead.d.ts +1 -57
- package/dist/lead.d.ts.map +1 -1
- package/dist/lead.js +3 -132
- package/dist/lead.js.map +1 -1
- package/dist/llms-txt.d.ts +3 -7
- package/dist/llms-txt.d.ts.map +1 -1
- package/dist/llms-txt.js +3 -63
- package/dist/llms-txt.js.map +1 -1
- package/package.json +7 -7
package/dist/lead.d.ts
CHANGED
|
@@ -1,58 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
* Detect whether a page's body tree already provides a level-1
|
|
3
|
-
* heading and / or a leading paragraph.
|
|
4
|
-
*
|
|
5
|
-
* `format-astro` uses this to decide whether to auto-inject the
|
|
6
|
-
* frontmatter `title` and `description` at the top of `<main>` —
|
|
7
|
-
* we never overwrite writer-authored content, only fill in what
|
|
8
|
-
* the body doesn't already cover.
|
|
9
|
-
*
|
|
10
|
-
* See plans/auto-lede.md.
|
|
11
|
-
*/
|
|
12
|
-
import type { TreeNode } from "@dogsbay/types";
|
|
13
|
-
export interface LeadingNodeInfo {
|
|
14
|
-
/**
|
|
15
|
-
* `true` when `tree[0]` is a level-1 heading. Heading depth
|
|
16
|
-
* lives at either `node.depth` (some importers) or
|
|
17
|
-
* `node.props.level` (others); both shapes are recognized.
|
|
18
|
-
*/
|
|
19
|
-
hasH1: boolean;
|
|
20
|
-
/**
|
|
21
|
-
* `true` when the body's first non-heading node is a paragraph.
|
|
22
|
-
* Used to decide whether the description should be auto-rendered
|
|
23
|
-
* as a lede `<p>` — if the writer already wrote a lede
|
|
24
|
-
* paragraph, we leave it alone.
|
|
25
|
-
*
|
|
26
|
-
* "First non-heading node" means: `tree[1]` when `tree[0]` is a
|
|
27
|
-
* heading; otherwise `tree[0]`. So `# Title\nLede paragraph`
|
|
28
|
-
* yields `{ hasH1: true, hasLede: true }`.
|
|
29
|
-
*/
|
|
30
|
-
hasLede: boolean;
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Inspect the leading nodes of a page tree.
|
|
34
|
-
*
|
|
35
|
-
* Defensive against empty trees and missing properties — returns
|
|
36
|
-
* `false` for both flags when the tree is empty.
|
|
37
|
-
*/
|
|
38
|
-
export declare function detectLeadingNodes(tree: TreeNode[] | undefined): LeadingNodeInfo;
|
|
39
|
-
/**
|
|
40
|
-
* Derive a `<meta name="description">` from a page body when the
|
|
41
|
-
* frontmatter doesn't supply one: the first prose paragraph,
|
|
42
|
-
* whitespace-collapsed and truncated at a word boundary.
|
|
43
|
-
*
|
|
44
|
-
* Deliberately Minja-unaware. This only runs at build time, on the
|
|
45
|
-
* preprocessed (resolved) tree — `{{ var }}` and `{% include %}` are
|
|
46
|
-
* already gone, so the first paragraph is real prose. (A still-undefined
|
|
47
|
-
* `{{ var }}` survives `preserve` mode, but that's a content bug equally
|
|
48
|
-
* visible in the body and already flagged by the `unresolved-directives`
|
|
49
|
-
* audit — not the description's job to scrub.) The `--no-preprocess` /
|
|
50
|
-
* `dogsbay convert` paths emit unresolved output by design, where a
|
|
51
|
-
* slightly-off description is the least of it.
|
|
52
|
-
*
|
|
53
|
-
* Scans past a leading H1 / heading / code to the first prose paragraph;
|
|
54
|
-
* returns `undefined` when the page has no prose. See
|
|
55
|
-
* plans/auto-meta-description.md.
|
|
56
|
-
*/
|
|
57
|
-
export declare function deriveDescription(tree: TreeNode[] | undefined, maxLen?: number): string | undefined;
|
|
1
|
+
export { detectLeadingNodes, deriveDescription, type LeadingNodeInfo } from "@dogsbay/serialize-core";
|
|
58
2
|
//# sourceMappingURL=lead.d.ts.map
|
package/dist/lead.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lead.d.ts","sourceRoot":"","sources":["../src/lead.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lead.d.ts","sourceRoot":"","sources":["../src/lead.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAC"}
|
package/dist/lead.js
CHANGED
|
@@ -1,133 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
* Defensive against empty trees and missing properties — returns
|
|
5
|
-
* `false` for both flags when the tree is empty.
|
|
6
|
-
*/
|
|
7
|
-
export function detectLeadingNodes(tree) {
|
|
8
|
-
if (!tree || tree.length === 0) {
|
|
9
|
-
return { hasH1: false, hasLede: false };
|
|
10
|
-
}
|
|
11
|
-
// H1 detection looks past two things that are not content:
|
|
12
|
-
//
|
|
13
|
-
// - leading raw-HTML CHROME (banners, toolbars — the comparison view
|
|
14
|
-
// injects both). Only tree[0] was inspected before, so a page that
|
|
15
|
-
// opened with a banner "had no H1" and the layout added a second
|
|
16
|
-
// one (external review);
|
|
17
|
-
// - a transparent `group` wrapper, which by definition adds no
|
|
18
|
-
// semantics — it exists only to carry an attribute for a run of
|
|
19
|
-
// blocks (the comparison marks a whole added/removed page with one).
|
|
20
|
-
// A wrapper that hid the page's H1 would resurrect the same bug.
|
|
21
|
-
//
|
|
22
|
-
// LEDE detection deliberately still keys off tree[0]: a paragraph that
|
|
23
|
-
// merely follows an HTML block is not the page's lede, and treating it
|
|
24
|
-
// as one silently suppresses the frontmatter description on any
|
|
25
|
-
// imported page opening with a <figure>/hero block (code review,
|
|
26
|
-
// 2026-07-13). Only an H1 introduces a lede.
|
|
27
|
-
let list = tree;
|
|
28
|
-
for (;;) {
|
|
29
|
-
let i = 0;
|
|
30
|
-
while (i < list.length && list[i]?.type === "html")
|
|
31
|
-
i++;
|
|
32
|
-
const first = list[i];
|
|
33
|
-
if (first?.type === "group" && first.children?.length) {
|
|
34
|
-
list = first.children;
|
|
35
|
-
continue;
|
|
36
|
-
}
|
|
37
|
-
if (isH1(first)) {
|
|
38
|
-
return { hasH1: true, hasLede: isParagraph(list[i + 1]) };
|
|
39
|
-
}
|
|
40
|
-
return { hasH1: false, hasLede: isParagraph(tree[0]) };
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
function isH1(node) {
|
|
44
|
-
if (!node || node.type !== "heading")
|
|
45
|
-
return false;
|
|
46
|
-
// Some importers (dogsbay-md, mkdocs) attach depth as a top-level
|
|
47
|
-
// field; others (Starlight via mdx-jsx) use props.level. Both
|
|
48
|
-
// conventions are valid — check both.
|
|
49
|
-
const depth = node.depth;
|
|
50
|
-
if (typeof depth === "number")
|
|
51
|
-
return depth === 1;
|
|
52
|
-
const level = node.props?.level;
|
|
53
|
-
if (typeof level === "number")
|
|
54
|
-
return level === 1;
|
|
55
|
-
return false;
|
|
56
|
-
}
|
|
57
|
-
function isParagraph(node) {
|
|
58
|
-
if (!node)
|
|
59
|
-
return false;
|
|
60
|
-
return node.type === "paragraph";
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Derive a `<meta name="description">` from a page body when the
|
|
64
|
-
* frontmatter doesn't supply one: the first prose paragraph,
|
|
65
|
-
* whitespace-collapsed and truncated at a word boundary.
|
|
66
|
-
*
|
|
67
|
-
* Deliberately Minja-unaware. This only runs at build time, on the
|
|
68
|
-
* preprocessed (resolved) tree — `{{ var }}` and `{% include %}` are
|
|
69
|
-
* already gone, so the first paragraph is real prose. (A still-undefined
|
|
70
|
-
* `{{ var }}` survives `preserve` mode, but that's a content bug equally
|
|
71
|
-
* visible in the body and already flagged by the `unresolved-directives`
|
|
72
|
-
* audit — not the description's job to scrub.) The `--no-preprocess` /
|
|
73
|
-
* `dogsbay convert` paths emit unresolved output by design, where a
|
|
74
|
-
* slightly-off description is the least of it.
|
|
75
|
-
*
|
|
76
|
-
* Scans past a leading H1 / heading / code to the first prose paragraph;
|
|
77
|
-
* returns `undefined` when the page has no prose. See
|
|
78
|
-
* plans/auto-meta-description.md.
|
|
79
|
-
*/
|
|
80
|
-
export function deriveDescription(tree, maxLen = 155) {
|
|
81
|
-
if (!tree || tree.length === 0)
|
|
82
|
-
return undefined;
|
|
83
|
-
// Skip a leading H1 (the page title) so the lede is the node after it.
|
|
84
|
-
let i = isH1(tree[0]) ? 1 : 0;
|
|
85
|
-
for (; i < tree.length; i++) {
|
|
86
|
-
const node = tree[i];
|
|
87
|
-
if (node.type !== "paragraph")
|
|
88
|
-
continue; // skip headings/code/etc.
|
|
89
|
-
const text = paragraphText(node).replace(/\s+/g, " ").trim();
|
|
90
|
-
if (!text)
|
|
91
|
-
continue;
|
|
92
|
-
return truncateAtWord(text, maxLen);
|
|
93
|
-
}
|
|
94
|
-
return undefined;
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Flatten a paragraph node's text. Tolerant of the three shapes
|
|
98
|
-
* format-astro already handles: flat `node.inline`, wrapped
|
|
99
|
-
* `node.children[{ inline }]`, and pre-rendered `node.html`.
|
|
100
|
-
*/
|
|
101
|
-
function paragraphText(node) {
|
|
102
|
-
const parts = [];
|
|
103
|
-
const visit = (n) => {
|
|
104
|
-
if (!n || typeof n !== "object")
|
|
105
|
-
return;
|
|
106
|
-
const o = n;
|
|
107
|
-
if (typeof o.text === "string")
|
|
108
|
-
parts.push(o.text);
|
|
109
|
-
if (typeof o.code === "string")
|
|
110
|
-
parts.push(o.code);
|
|
111
|
-
if (Array.isArray(o.inline))
|
|
112
|
-
o.inline.forEach(visit);
|
|
113
|
-
if (Array.isArray(o.children))
|
|
114
|
-
o.children.forEach(visit);
|
|
115
|
-
};
|
|
116
|
-
if (Array.isArray(node.inline))
|
|
117
|
-
node.inline.forEach(visit);
|
|
118
|
-
else if (Array.isArray(node.children))
|
|
119
|
-
node.children.forEach(visit);
|
|
120
|
-
else if (typeof node.html === "string") {
|
|
121
|
-
parts.push(node.html.replace(/<[^>]+>/g, ""));
|
|
122
|
-
}
|
|
123
|
-
return parts.join("");
|
|
124
|
-
}
|
|
125
|
-
function truncateAtWord(s, max) {
|
|
126
|
-
if (s.length <= max)
|
|
127
|
-
return s;
|
|
128
|
-
const cut = s.slice(0, max);
|
|
129
|
-
const lastSpace = cut.lastIndexOf(" ");
|
|
130
|
-
const base = lastSpace > max * 0.6 ? cut.slice(0, lastSpace) : cut;
|
|
131
|
-
return base.replace(/[\s.,;:!?-]+$/, "") + "…";
|
|
132
|
-
}
|
|
1
|
+
// Moved to @dogsbay/serialize-core (src/lead.ts), so @dogsbay/site-check can use
|
|
2
|
+
// these without depending on format-astro, which brings @dogsbay/ui and astro.
|
|
3
|
+
export { detectLeadingNodes, deriveDescription } from "@dogsbay/serialize-core";
|
|
133
4
|
//# sourceMappingURL=lead.js.map
|
package/dist/lead.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lead.js","sourceRoot":"","sources":["../src/lead.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lead.js","sourceRoot":"","sources":["../src/lead.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,+EAA+E;AAC/E,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAwB,MAAM,yBAAyB,CAAC"}
|
package/dist/llms-txt.d.ts
CHANGED
|
@@ -14,7 +14,9 @@
|
|
|
14
14
|
* dependency-free (only @dogsbay/types). Callers wire the actual
|
|
15
15
|
* `treeToDogsbayMd` serializer when they want full-body bundles.
|
|
16
16
|
*/
|
|
17
|
-
import type { ExportPage, NavItem, SiteConfig
|
|
17
|
+
import type { ExportPage, NavItem, SiteConfig } from "@dogsbay/types";
|
|
18
|
+
import { extractFirstParagraph } from "@dogsbay/serialize-core";
|
|
19
|
+
export { extractFirstParagraph };
|
|
18
20
|
export interface BuildLlmsTxtOptions {
|
|
19
21
|
/**
|
|
20
22
|
* Used to derive page slugs from nav hrefs. Defaults to
|
|
@@ -118,10 +120,4 @@ export declare function buildSectionLlmsTxt(siteConfig: Pick<SiteConfig, "siteNa
|
|
|
118
120
|
* line, then either the full body (default) or just a description.
|
|
119
121
|
*/
|
|
120
122
|
export declare function buildLlmsFullTxt(siteConfig: Pick<SiteConfig, "siteName" | "description" | "siteUrl">, nav: NavItem[], pages: ExportPage[], options?: BuildLlmsFullTxtOptions): string;
|
|
121
|
-
/**
|
|
122
|
-
* Extract plain text of the first paragraph in a page tree. Cross-shape
|
|
123
|
-
* tolerant: handles `node.inline` (dogsbay-md parser) and
|
|
124
|
-
* `node.children[{type: "prose", inline}]` (Starlight importer).
|
|
125
|
-
*/
|
|
126
|
-
export declare function extractFirstParagraph(tree: TreeNode[]): string;
|
|
127
123
|
//# sourceMappingURL=llms-txt.d.ts.map
|
package/dist/llms-txt.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llms-txt.d.ts","sourceRoot":"","sources":["../src/llms-txt.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EACV,UAAU,
|
|
1
|
+
{"version":3,"file":"llms-txt.d.ts","sourceRoot":"","sources":["../src/llms-txt.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,EACV,UAAU,EACV,OAAO,EACP,UAAU,EAEX,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAchE,OAAO,EAAE,qBAAqB,EAAE,CAAC;AAOjC,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oDAAoD;IACpD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IACjC;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAC9B,iEAAiE;IACjE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;;;;;;;OAcG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,kEAAkE;AAClE,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,uBAAwB,SAAQ,mBAAmB;IAClE;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC;IACjC;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,MAAM,CAAC;CAC9C;AASD;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAC1B,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,GAAG,aAAa,GAAG,SAAS,CAAC,EACpE,GAAG,EAAE,OAAO,EAAE,EACd,KAAK,EAAE,UAAU,EAAE,EACnB,OAAO,GAAE,mBAAwB,GAChC,MAAM,CAeR;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,GAAG,SAAS,CAAC,EACpD,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,UAAU,EAAE,EACnB,OAAO,GAAE,mBAAwB,GAChC,MAAM,CAGR;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,GAAG,aAAa,GAAG,SAAS,CAAC,EACpE,GAAG,EAAE,OAAO,EAAE,EACd,KAAK,EAAE,UAAU,EAAE,EACnB,OAAO,GAAE,uBAA4B,GACpC,MAAM,CAqBR"}
|
package/dist/llms-txt.js
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
|
+
import { extractFirstParagraph } from "@dogsbay/serialize-core";
|
|
1
2
|
import { DEFAULT_BASE_PATH } from "./base-path.js";
|
|
2
3
|
import { DESCRIPTION_LIMIT, buildLlmsFullTxt as buildLlmsFullTxtFile, buildLlmsTxt as buildLlmsTxtFile, buildSectionLlmsTxt as buildSectionLlmsTxtFile, llmsFullOrder, truncate, } from "@dogsbay/site-files";
|
|
4
|
+
// Moved to serialize-core so @dogsbay/site-check need not depend on format-astro
|
|
5
|
+
export { extractFirstParagraph };
|
|
3
6
|
const EXTERNAL_HREF_RE = /^(?:https?:\/\/|mailto:|tel:|#)/i;
|
|
4
7
|
const DEFAULT_DESCRIPTION_LIMIT = DESCRIPTION_LIMIT;
|
|
5
8
|
// ── Public builders ─────────────────────────────────────────────
|
|
@@ -145,67 +148,4 @@ function getPageDescription(page, limit) {
|
|
|
145
148
|
const firstPara = extractFirstParagraph(page.tree);
|
|
146
149
|
return firstPara ? truncate(firstPara, limit) : "";
|
|
147
150
|
}
|
|
148
|
-
/**
|
|
149
|
-
* Extract plain text of the first paragraph in a page tree. Cross-shape
|
|
150
|
-
* tolerant: handles `node.inline` (dogsbay-md parser) and
|
|
151
|
-
* `node.children[{type: "prose", inline}]` (Starlight importer).
|
|
152
|
-
*/
|
|
153
|
-
export function extractFirstParagraph(tree) {
|
|
154
|
-
for (const node of tree) {
|
|
155
|
-
if (node.type !== "paragraph")
|
|
156
|
-
continue;
|
|
157
|
-
const inline = node.inline ?? findProseInline(node.children);
|
|
158
|
-
if (inline)
|
|
159
|
-
return inlineToPlainText(inline).trim();
|
|
160
|
-
}
|
|
161
|
-
return "";
|
|
162
|
-
}
|
|
163
|
-
function findProseInline(children) {
|
|
164
|
-
if (!children)
|
|
165
|
-
return undefined;
|
|
166
|
-
for (const child of children) {
|
|
167
|
-
if (child.type === "prose" && child.inline)
|
|
168
|
-
return child.inline;
|
|
169
|
-
}
|
|
170
|
-
return undefined;
|
|
171
|
-
}
|
|
172
|
-
function inlineToPlainText(inline) {
|
|
173
|
-
let out = "";
|
|
174
|
-
for (const node of inline) {
|
|
175
|
-
switch (node.type) {
|
|
176
|
-
case "text":
|
|
177
|
-
out += node.text;
|
|
178
|
-
break;
|
|
179
|
-
case "code":
|
|
180
|
-
out += node.text;
|
|
181
|
-
break;
|
|
182
|
-
case "link":
|
|
183
|
-
case "highlight":
|
|
184
|
-
out += inlineToPlainText(node.children);
|
|
185
|
-
break;
|
|
186
|
-
case "kbd":
|
|
187
|
-
out += node.keys.join("+");
|
|
188
|
-
break;
|
|
189
|
-
case "badge":
|
|
190
|
-
out += node.text;
|
|
191
|
-
break;
|
|
192
|
-
case "math":
|
|
193
|
-
out += node.latex;
|
|
194
|
-
break;
|
|
195
|
-
case "image":
|
|
196
|
-
if (node.alt)
|
|
197
|
-
out += node.alt;
|
|
198
|
-
break;
|
|
199
|
-
case "break":
|
|
200
|
-
out += " ";
|
|
201
|
-
break;
|
|
202
|
-
case "html-inline":
|
|
203
|
-
case "footnote-ref":
|
|
204
|
-
case "icon":
|
|
205
|
-
// No useful plain text; skip.
|
|
206
|
-
break;
|
|
207
|
-
}
|
|
208
|
-
}
|
|
209
|
-
return out;
|
|
210
|
-
}
|
|
211
151
|
//# sourceMappingURL=llms-txt.js.map
|
package/dist/llms-txt.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"llms-txt.js","sourceRoot":"","sources":["../src/llms-txt.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"llms-txt.js","sourceRoot":"","sources":["../src/llms-txt.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dogsbay/format-astro",
|
|
3
|
-
"version": "0.2.0-beta.
|
|
3
|
+
"version": "0.2.0-beta.117",
|
|
4
4
|
"description": "Astro format plugin for Dogsbay — export TreeNode[] to Astro component markup",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -32,12 +32,12 @@
|
|
|
32
32
|
"license": "MIT",
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"markdown-it": "^14.3.0",
|
|
35
|
-
"@dogsbay/format-dogsbay-md": "0.2.0-beta.
|
|
36
|
-
"@dogsbay/render-html": "0.2.0-beta.
|
|
37
|
-
"@dogsbay/serialize-core": "0.2.0-beta.
|
|
38
|
-
"@dogsbay/site-files": "0.2.0-beta.
|
|
39
|
-
"@dogsbay/types": "0.2.0-beta.
|
|
40
|
-
"@dogsbay/ui": "0.2.0-beta.
|
|
35
|
+
"@dogsbay/format-dogsbay-md": "0.2.0-beta.117",
|
|
36
|
+
"@dogsbay/render-html": "0.2.0-beta.117",
|
|
37
|
+
"@dogsbay/serialize-core": "0.2.0-beta.117",
|
|
38
|
+
"@dogsbay/site-files": "0.2.0-beta.117",
|
|
39
|
+
"@dogsbay/types": "0.2.0-beta.117",
|
|
40
|
+
"@dogsbay/ui": "0.2.0-beta.117"
|
|
41
41
|
},
|
|
42
42
|
"repository": {
|
|
43
43
|
"type": "git",
|