mintlify 2.0.12 → 2.0.14
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/bin/scraping/site-scrapers/links-per-group/getDocusaurusLinksPerGroup.js +2 -4
- package/bin/scraping/site-scrapers/links-per-group/getDocusaurusLinksPerGroup.js.map +1 -1
- package/bin/scraping/site-scrapers/scrapeGitBookPage.js +15 -2
- package/bin/scraping/site-scrapers/scrapeGitBookPage.js.map +1 -1
- package/bin/scraping/site-scrapers/scrapeGitBookSection.js +2 -2
- package/bin/scraping/site-scrapers/scrapeGitBookSection.js.map +1 -1
- package/bin/scraping/site-scrapers/scrapeReadMeSection.js +3 -3
- package/bin/scraping/site-scrapers/scrapeReadMeSection.js.map +1 -1
- package/package.json +2 -1
- package/src/scraping/site-scrapers/links-per-group/getDocusaurusLinksPerGroup.ts +23 -25
- package/src/scraping/site-scrapers/scrapeGitBookPage.ts +17 -2
- package/src/scraping/site-scrapers/scrapeGitBookSection.ts +2 -2
- package/src/scraping/site-scrapers/scrapeReadMeSection.ts +3 -3
|
@@ -7,8 +7,7 @@ export function getDocusaurusLinksPerGroup(navigationSections, $, version) {
|
|
|
7
7
|
return [];
|
|
8
8
|
}
|
|
9
9
|
function getDocusaurusLinksPerGroupLoop(navigationSections, $) {
|
|
10
|
-
return navigationSections
|
|
11
|
-
.map((i, s) => {
|
|
10
|
+
return navigationSections.toArray().map((s) => {
|
|
12
11
|
const section = $(s);
|
|
13
12
|
// Links without a group
|
|
14
13
|
if (section.hasClass("theme-doc-sidebar-item-link")) {
|
|
@@ -30,7 +29,6 @@ function getDocusaurusLinksPerGroupLoop(navigationSections, $) {
|
|
|
30
29
|
group: sectionTitle || alternateGroupTitle(firstLink, pages),
|
|
31
30
|
pages: firstHref ? [firstHref, ...pages] : pages,
|
|
32
31
|
};
|
|
33
|
-
})
|
|
34
|
-
.toArray();
|
|
32
|
+
});
|
|
35
33
|
}
|
|
36
34
|
//# sourceMappingURL=getDocusaurusLinksPerGroup.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getDocusaurusLinksPerGroup.js","sourceRoot":"","sources":["../../../../src/scraping/site-scrapers/links-per-group/getDocusaurusLinksPerGroup.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,MAAM,2BAA2B,CAAC;AAC5D,OAAO,mBAAmB,MAAM,0BAA0B,CAAC;AAE3D,MAAM,UAAU,0BAA0B,CACxC,kBAAuB,EACvB,CAAM,EACN,OAA2B;IAE3B,IAAI,OAAO,KAAK,GAAG,IAAI,OAAO,KAAK,GAAG,EAAE;QACtC,OAAO,8BAA8B,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;KAC9D;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,8BAA8B,CAAC,kBAAuB,EAAE,CAAM;IACrE,OAAO,kBAAkB
|
|
1
|
+
{"version":3,"file":"getDocusaurusLinksPerGroup.js","sourceRoot":"","sources":["../../../../src/scraping/site-scrapers/links-per-group/getDocusaurusLinksPerGroup.ts"],"names":[],"mappings":"AAAA,OAAO,mBAAmB,MAAM,2BAA2B,CAAC;AAC5D,OAAO,mBAAmB,MAAM,0BAA0B,CAAC;AAE3D,MAAM,UAAU,0BAA0B,CACxC,kBAAuB,EACvB,CAAM,EACN,OAA2B;IAE3B,IAAI,OAAO,KAAK,GAAG,IAAI,OAAO,KAAK,GAAG,EAAE;QACtC,OAAO,8BAA8B,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;KAC9D;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,8BAA8B,CAAC,kBAAuB,EAAE,CAAM;IACrE,OAAO,kBAAkB,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE;QACpD,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAErB,wBAAwB;QACxB,IAAI,OAAO,CAAC,QAAQ,CAAC,6BAA6B,CAAC,EAAE;YACnD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9D,OAAO;gBACL,KAAK,EAAE,EAAE;gBACT,KAAK,EAAE,CAAC,QAAQ,CAAC;aAClB,CAAC;SACH;QAED,MAAM,SAAS,GAAG,OAAO;aACtB,IAAI,CAAC,8BAA8B,CAAC;aACpC,KAAK,EAAE;aACP,IAAI,CAAC,SAAS,CAAC,CAAC;QAEnB,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;QACtC,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QAEzD,MAAM,KAAK,GAAG,mBAAmB,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAEnD,OAAO;YACL,KAAK,EAAE,YAAY,IAAI,mBAAmB,CAAC,SAAS,EAAE,KAAK,CAAC;YAC5D,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK;SACjD,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -12,6 +12,19 @@ export async function scrapeGitBookPage(html, origin, cliDir, imageBaseDir, over
|
|
|
12
12
|
.trim();
|
|
13
13
|
const title = titleComponent.text().trim();
|
|
14
14
|
const content = $('[data-testid="page.contentEditor"]').first();
|
|
15
|
+
// Replace code blocks with parseable html
|
|
16
|
+
const codeBlocks = content.find('[spellcheck="false"] div');
|
|
17
|
+
codeBlocks.each((i, c) => {
|
|
18
|
+
const code = $(c);
|
|
19
|
+
code.find('[contenteditable="false"]').empty();
|
|
20
|
+
const codeContent = code
|
|
21
|
+
.children()
|
|
22
|
+
.toArray()
|
|
23
|
+
.map((d) => $(d).text())
|
|
24
|
+
.filter((text) => text !== "")
|
|
25
|
+
.join("\n");
|
|
26
|
+
code.replaceWith(`<pre><code>${codeContent}</code></pre>`);
|
|
27
|
+
});
|
|
15
28
|
const contentHtml = $.html(content);
|
|
16
29
|
const modifyFileName = (fileName) =>
|
|
17
30
|
// Remove GitBook metadata from the start
|
|
@@ -20,8 +33,8 @@ export async function scrapeGitBookPage(html, origin, cliDir, imageBaseDir, over
|
|
|
20
33
|
const origToWritePath = await downloadAllImages($, content, origin, imageBaseDir, overwrite, modifyFileName);
|
|
21
34
|
const nhm = new NodeHtmlMarkdown({ useInlineLinks: false });
|
|
22
35
|
let markdown = nhm.translate(contentHtml);
|
|
23
|
-
// Keep headers on one line
|
|
24
|
-
markdown = markdown.replace(/# \n\n/g, "
|
|
36
|
+
// Keep headers on one line
|
|
37
|
+
markdown = markdown.replace(/# \n\n/g, "# ");
|
|
25
38
|
// Remove unnecessary nonwidth blank space characters
|
|
26
39
|
markdown = markdown.replace(/\u200b/g, "");
|
|
27
40
|
// Reduce unnecessary blank lines
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scrapeGitBookPage.js","sourceRoot":"","sources":["../../../src/scraping/site-scrapers/scrapeGitBookPage.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,iBAAiB,MAAM,yBAAyB,CAAC;AACxD,OAAO,iBAAiB,MAAM,yBAAyB,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAAY,EACZ,MAAc,EACd,MAAc,EACd,YAAoB,EACpB,SAAkB,EAClB,CAAqB,CAAC,UAAU;;IAEhC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE7B,MAAM,cAAc,GAAG,CAAC,CAAC,4BAA4B,CAAC,CAAC,KAAK,EAAE,CAAC;IAC/D,MAAM,mBAAmB,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;IAE7E,MAAM,WAAW,GAAG,mBAAmB;SACpC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC;SAClC,IAAI,EAAE,CAAC;IACV,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;IAE3C,MAAM,OAAO,GAAG,CAAC,CAAC,oCAAoC,CAAC,CAAC,KAAK,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"scrapeGitBookPage.js","sourceRoot":"","sources":["../../../src/scraping/site-scrapers/scrapeGitBookPage.ts"],"names":[],"mappings":"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"}
|
|
@@ -23,7 +23,8 @@ export async function scrapeGitBookSection(html, origin, cliDir, imageBaseDir, o
|
|
|
23
23
|
.children();
|
|
24
24
|
// Get all links per group
|
|
25
25
|
const groupsConfig = navigationSections
|
|
26
|
-
.
|
|
26
|
+
.toArray()
|
|
27
|
+
.map((s) => {
|
|
27
28
|
const section = $(s);
|
|
28
29
|
const sectionTitle = $(section)
|
|
29
30
|
.find('div > div[dir="auto"]')
|
|
@@ -39,7 +40,6 @@ export async function scrapeGitBookSection(html, origin, cliDir, imageBaseDir, o
|
|
|
39
40
|
pages: firstHref ? [firstHref, ...pages] : pages,
|
|
40
41
|
};
|
|
41
42
|
})
|
|
42
|
-
.toArray()
|
|
43
43
|
.filter(Boolean);
|
|
44
44
|
// Merge groups with empty titles together
|
|
45
45
|
const reducedGroupsConfig = combineNavWithEmptyGroupTitles(groupsConfig);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scrapeGitBookSection.js","sourceRoot":"","sources":["../../../src/scraping/site-scrapers/scrapeGitBookSection.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,8BAA8B,MAAM,sCAAsC,CAAC;AAClF,OAAO,0BAA0B,MAAM,iDAAiD,CAAC;AACzF,OAAO,mBAAmB,MAAM,0BAA0B,CAAC;AAC3D,OAAO,iBAAiB,MAAM,yBAAyB,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAAY,EACZ,MAAc,EACd,MAAc,EACd,YAAoB,EACpB,SAAkB,EAClB,OAA2B;IAE3B,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE7B,oBAAoB;IACpB,MAAM,OAAO,GAAG,CAAC,CAAC,4CAA4C,CAAC;SAC5D,KAAK,EAAE;SACP,IAAI,CAAC,KAAK,CAAC,CAAC;IACf,iBAAiB,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;IAE5D,kCAAkC;IAClC,4FAA4F;IAC5F,yDAAyD;IACzD,MAAM,kBAAkB,GAAG,CAAC,CAC1B,wEAAwE,CACzE;SACE,QAAQ,EAAE;SACV,EAAE,CAAC,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,KAAK,EAAE;SACP,QAAQ,EAAE,CAAC;IAEd,0BAA0B;IAC1B,MAAM,YAAY,GAAqB,kBAAkB;SACtD,GAAG,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"scrapeGitBookSection.js","sourceRoot":"","sources":["../../../src/scraping/site-scrapers/scrapeGitBookSection.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,8BAA8B,MAAM,sCAAsC,CAAC;AAClF,OAAO,0BAA0B,MAAM,iDAAiD,CAAC;AACzF,OAAO,mBAAmB,MAAM,0BAA0B,CAAC;AAC3D,OAAO,iBAAiB,MAAM,yBAAyB,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAAY,EACZ,MAAc,EACd,MAAc,EACd,YAAoB,EACpB,SAAkB,EAClB,OAA2B;IAE3B,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE7B,oBAAoB;IACpB,MAAM,OAAO,GAAG,CAAC,CAAC,4CAA4C,CAAC;SAC5D,KAAK,EAAE;SACP,IAAI,CAAC,KAAK,CAAC,CAAC;IACf,iBAAiB,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;IAE5D,kCAAkC;IAClC,4FAA4F;IAC5F,yDAAyD;IACzD,MAAM,kBAAkB,GAAG,CAAC,CAC1B,wEAAwE,CACzE;SACE,QAAQ,EAAE;SACV,EAAE,CAAC,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,KAAK,EAAE;SACP,QAAQ,EAAE,CAAC;IAEd,0BAA0B;IAC1B,MAAM,YAAY,GAAqB,kBAAkB;SACtD,OAAO,EAAE;SACT,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE;QACjB,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACrB,MAAM,YAAY,GAAG,CAAC,CAAC,OAAO,CAAC;aAC5B,IAAI,CAAC,uBAAuB,CAAC;aAC7B,KAAK,EAAE;aACP,IAAI,EAAE,CAAC;QAEV,0DAA0D;QAC1D,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEzC,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACzD,MAAM,KAAK,GAAG,0BAA0B,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QAE1D,OAAO;YACL,KAAK,EAAE,YAAY,IAAI,mBAAmB,CAAC,SAAS,EAAE,KAAK,CAAC;YAC5D,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK;SACjD,CAAC;IACJ,CAAC,CAAC;SACD,MAAM,CAAC,OAAO,CAAC,CAAC;IAEnB,0CAA0C;IAC1C,MAAM,mBAAmB,GAAG,8BAA8B,CAAC,YAAY,CAAC,CAAC;IAEzE,sCAAsC;IACtC,MAAM,sBAAsB,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9C,mBAAmB,CAAC,GAAG,CAAC,KAAK,EAAE,QAA6B,EAAE,EAAE;QAC9D,OAAO,MAAM,4BAA4B,CACvC,QAAQ,EACR,MAAM,EACN,MAAM,EACN,SAAS,EACT,iBAAiB,EACjB,IAAI,EACJ,OAAO,CACR,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;IAEF,OAAO,sBAAsB,CAAC;AAChC,CAAC"}
|
|
@@ -15,7 +15,8 @@ export async function scrapeReadMeSection(html, origin, cliDir, imageBaseDir, ov
|
|
|
15
15
|
.first()
|
|
16
16
|
.find(".rm-Sidebar-section");
|
|
17
17
|
const groupsConfig = navigationSections
|
|
18
|
-
.
|
|
18
|
+
.toArray()
|
|
19
|
+
.map((s) => {
|
|
19
20
|
const section = $(s);
|
|
20
21
|
const sectionTitle = section.find("h3").first().text();
|
|
21
22
|
// Get all links, then use filter to remove duplicates.
|
|
@@ -30,8 +31,7 @@ export async function scrapeReadMeSection(html, origin, cliDir, imageBaseDir, ov
|
|
|
30
31
|
group: sectionTitle,
|
|
31
32
|
pages: pages,
|
|
32
33
|
};
|
|
33
|
-
})
|
|
34
|
-
.toArray();
|
|
34
|
+
});
|
|
35
35
|
// Scrape each link in the navigation.
|
|
36
36
|
const groupsConfigCleanPaths = await Promise.all(groupsConfig.map(async (navEntry) => {
|
|
37
37
|
return await scrapeGettingFileNameFromUrl(
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scrapeReadMeSection.js","sourceRoot":"","sources":["../../../src/scraping/site-scrapers/scrapeReadMeSection.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,mBAAmB,MAAM,0CAA0C,CAAC;AAC3E,OAAO,iBAAiB,MAAM,yBAAyB,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAY,EACZ,MAAc,EACd,MAAc,EACd,YAAoB,EACpB,SAAkB,EAClB,OAA2B;IAE3B,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE7B,oBAAoB;IACpB,MAAM,OAAO,GAAG,CAAC,CAAC,cAAc,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtD,iBAAiB,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;IAE5D,2DAA2D;IAC3D,2DAA2D;IAC3D,mDAAmD;IACnD,MAAM,kBAAkB,GAAG,CAAC,CAAC,aAAa,CAAC;SACxC,KAAK,EAAE;SACP,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAE/B,MAAM,YAAY,GAAqB,kBAAkB;SACtD,GAAG,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"scrapeReadMeSection.js","sourceRoot":"","sources":["../../../src/scraping/site-scrapers/scrapeReadMeSection.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAClF,OAAO,mBAAmB,MAAM,0CAA0C,CAAC;AAC3E,OAAO,iBAAiB,MAAM,yBAAyB,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAY,EACZ,MAAc,EACd,MAAc,EACd,YAAoB,EACpB,SAAkB,EAClB,OAA2B;IAE3B,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAE7B,oBAAoB;IACpB,MAAM,OAAO,GAAG,CAAC,CAAC,cAAc,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACtD,iBAAiB,CAAC,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;IAE5D,2DAA2D;IAC3D,2DAA2D;IAC3D,mDAAmD;IACnD,MAAM,kBAAkB,GAAG,CAAC,CAAC,aAAa,CAAC;SACxC,KAAK,EAAE;SACP,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAE/B,MAAM,YAAY,GAAqB,kBAAkB;SACtD,OAAO,EAAE;SACT,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE;QACjB,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACrB,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,CAAC;QAEvD,uDAAuD;QACvD,yDAAyD;QACzD,+BAA+B;QAC/B,iDAAiD;QACjD,iCAAiC;QACjC,MAAM,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,CAAC;QACzE,MAAM,KAAK,GAAG,mBAAmB,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,MAAM,CACvD,CAAC,KAAa,EAAE,KAAa,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,CACtE,CAAC;QAEF,0CAA0C;QAC1C,OAAO;YACL,KAAK,EAAE,YAAY;YACnB,KAAK,EAAE,KAAK;SACb,CAAC;IACJ,CAAC,CAAC,CAAC;IAEL,sCAAsC;IACtC,MAAM,sBAAsB,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9C,YAAY,CAAC,GAAG,CAAC,KAAK,EAAE,QAA6B,EAAE,EAAE;QACvD,OAAO,MAAM,4BAA4B;QACvC,mEAAmE;QACnE,mDAAmD;QACnD,QAAQ,EACR,MAAM,EACN,MAAM,EACN,SAAS,EACT,gBAAgB,EAChB,KAAK,EACL,OAAO,EACP,OAAO,CACR,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;IAEF,OAAO,sBAAsB,CAAC;AAChC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mintlify",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.14",
|
|
4
4
|
"description": "The Mintlify CLI",
|
|
5
5
|
"engines": {
|
|
6
6
|
"node": ">=18.0.0"
|
|
@@ -47,6 +47,7 @@
|
|
|
47
47
|
"yargs": "^17.6.0"
|
|
48
48
|
},
|
|
49
49
|
"devDependencies": {
|
|
50
|
+
"@types/cheerio": "^0.22.31",
|
|
50
51
|
"@types/fs-extra": "^9.0.13",
|
|
51
52
|
"@types/inquirer": "^9.0.1",
|
|
52
53
|
"@types/node": "^18.7.13",
|
|
@@ -13,34 +13,32 @@ export function getDocusaurusLinksPerGroup(
|
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
function getDocusaurusLinksPerGroupLoop(navigationSections: any, $: any) {
|
|
16
|
-
return navigationSections
|
|
17
|
-
|
|
18
|
-
const section = $(s);
|
|
16
|
+
return navigationSections.toArray().map((s: string) => {
|
|
17
|
+
const section = $(s);
|
|
19
18
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
19
|
+
// Links without a group
|
|
20
|
+
if (section.hasClass("theme-doc-sidebar-item-link")) {
|
|
21
|
+
const linkHref = section.find("a[href]").first().attr("href");
|
|
22
|
+
return {
|
|
23
|
+
group: "",
|
|
24
|
+
pages: [linkHref],
|
|
25
|
+
};
|
|
26
|
+
}
|
|
28
27
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
28
|
+
const firstLink = section
|
|
29
|
+
.find(".menu__list-item-collapsible")
|
|
30
|
+
.first()
|
|
31
|
+
.find("a[href]");
|
|
33
32
|
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
33
|
+
const sectionTitle = firstLink.text();
|
|
34
|
+
const firstHref = firstLink.attr("href");
|
|
35
|
+
const linkSections = section.children().eq(1).children();
|
|
37
36
|
|
|
38
|
-
|
|
37
|
+
const pages = getLinksRecursively(linkSections, $);
|
|
39
38
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
.toArray();
|
|
39
|
+
return {
|
|
40
|
+
group: sectionTitle || alternateGroupTitle(firstLink, pages),
|
|
41
|
+
pages: firstHref ? [firstHref, ...pages] : pages,
|
|
42
|
+
};
|
|
43
|
+
});
|
|
46
44
|
}
|
|
@@ -22,6 +22,21 @@ export async function scrapeGitBookPage(
|
|
|
22
22
|
const title = titleComponent.text().trim();
|
|
23
23
|
|
|
24
24
|
const content = $('[data-testid="page.contentEditor"]').first();
|
|
25
|
+
|
|
26
|
+
// Replace code blocks with parseable html
|
|
27
|
+
const codeBlocks = content.find('[spellcheck="false"] div');
|
|
28
|
+
codeBlocks.each((i, c) => {
|
|
29
|
+
const code = $(c);
|
|
30
|
+
code.find('[contenteditable="false"]').empty();
|
|
31
|
+
const codeContent = code
|
|
32
|
+
.children()
|
|
33
|
+
.toArray()
|
|
34
|
+
.map((d) => $(d).text())
|
|
35
|
+
.filter((text) => text !== "")
|
|
36
|
+
.join("\n");
|
|
37
|
+
code.replaceWith(`<pre><code>${codeContent}</code></pre>`);
|
|
38
|
+
});
|
|
39
|
+
|
|
25
40
|
const contentHtml = $.html(content);
|
|
26
41
|
|
|
27
42
|
const modifyFileName = (fileName) =>
|
|
@@ -41,8 +56,8 @@ export async function scrapeGitBookPage(
|
|
|
41
56
|
const nhm = new NodeHtmlMarkdown({ useInlineLinks: false });
|
|
42
57
|
let markdown = nhm.translate(contentHtml);
|
|
43
58
|
|
|
44
|
-
// Keep headers on one line
|
|
45
|
-
markdown = markdown.replace(/# \n\n/g, "
|
|
59
|
+
// Keep headers on one line
|
|
60
|
+
markdown = markdown.replace(/# \n\n/g, "# ");
|
|
46
61
|
|
|
47
62
|
// Remove unnecessary nonwidth blank space characters
|
|
48
63
|
markdown = markdown.replace(/\u200b/g, "");
|
|
@@ -37,7 +37,8 @@ export async function scrapeGitBookSection(
|
|
|
37
37
|
|
|
38
38
|
// Get all links per group
|
|
39
39
|
const groupsConfig: MintNavigation[] = navigationSections
|
|
40
|
-
.
|
|
40
|
+
.toArray()
|
|
41
|
+
.map((s: string) => {
|
|
41
42
|
const section = $(s);
|
|
42
43
|
const sectionTitle = $(section)
|
|
43
44
|
.find('div > div[dir="auto"]')
|
|
@@ -56,7 +57,6 @@ export async function scrapeGitBookSection(
|
|
|
56
57
|
pages: firstHref ? [firstHref, ...pages] : pages,
|
|
57
58
|
};
|
|
58
59
|
})
|
|
59
|
-
.toArray()
|
|
60
60
|
.filter(Boolean);
|
|
61
61
|
|
|
62
62
|
// Merge groups with empty titles together
|
|
@@ -26,7 +26,8 @@ export async function scrapeReadMeSection(
|
|
|
26
26
|
.find(".rm-Sidebar-section");
|
|
27
27
|
|
|
28
28
|
const groupsConfig: MintNavigation[] = navigationSections
|
|
29
|
-
.
|
|
29
|
+
.toArray()
|
|
30
|
+
.map((s: string) => {
|
|
30
31
|
const section = $(s);
|
|
31
32
|
const sectionTitle = section.find("h3").first().text();
|
|
32
33
|
|
|
@@ -45,8 +46,7 @@ export async function scrapeReadMeSection(
|
|
|
45
46
|
group: sectionTitle,
|
|
46
47
|
pages: pages,
|
|
47
48
|
};
|
|
48
|
-
})
|
|
49
|
-
.toArray();
|
|
49
|
+
});
|
|
50
50
|
|
|
51
51
|
// Scrape each link in the navigation.
|
|
52
52
|
const groupsConfigCleanPaths = await Promise.all(
|