diff options
| author | Joe Mou <dev@mou.fo> | 2026-07-15 01:46:06 -0400 |
|---|---|---|
| committer | Joe Mou <dev@mou.fo> | 2026-07-15 01:46:06 -0400 |
| commit | 9fbb5f0d68a131b55bc172d46b75705f2842af04 (patch) | |
| tree | b2465407f8c1ffbbd19706033ea88adefa73526c /cgithub/src | |
| parent | 59f587d9ffac3d20486ec6773aedebb54012cc32 (diff) | |
Replace null overview files with HTML comments
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Diffstat (limited to 'cgithub/src')
| -rw-r--r-- | cgithub/src/scraper.test.ts | 4 | ||||
| -rw-r--r-- | cgithub/src/scraper.ts | 9 |
2 files changed, 7 insertions, 6 deletions
diff --git a/cgithub/src/scraper.test.ts b/cgithub/src/scraper.test.ts index d6991d7..f9b60e8 100644 --- a/cgithub/src/scraper.test.ts +++ b/cgithub/src/scraper.test.ts @@ -36,7 +36,7 @@ describe("GitHub scraper", () => { assert.ok(data.info.latestReleaseDate?.startsWith("2026-03-25")); assert.ok(data.items.length > 0); - assert.ok(Object.keys(data.overviewHtml ?? {}).includes("README.md")); + assert.ok(typeof data.overviewHtml?.["README.md"] === "string"); }); it("should fetch tree", async () => { @@ -60,7 +60,7 @@ describe("GitHub scraper", () => { }, ]); - assert.ok(Object.keys(data.overviewHtml ?? {}).includes("README.md")); + assert.ok(typeof data.overviewHtml?.["README.md"] === "string"); }); it("should fetch text blob", async () => { diff --git a/cgithub/src/scraper.ts b/cgithub/src/scraper.ts index 760a306..53f2bb1 100644 --- a/cgithub/src/scraper.ts +++ b/cgithub/src/scraper.ts @@ -31,7 +31,8 @@ interface TreeItem { interface OverviewFile { displayName: string; - richText?: string; + // null when GitHub includes the file without rendered content. + richText?: string | null; } interface IssueNode { @@ -220,7 +221,7 @@ interface GitHubNav extends GitHubCommon { export interface GitHubTree extends GitHubNav { items: TreeItem[]; - overviewHtml?: Record<string, string>; + overviewHtml?: Record<string, string | null>; } export interface RepoInfo { @@ -443,8 +444,8 @@ function parseRepoInfo(html: string): RepoInfo { function extractOverviewHtml( overviewFiles: OverviewFile[] = [], -): Record<string, string> | undefined { - const result: Record<string, string> = {}; +): Record<string, string | null> | undefined { + const result: Record<string, string | null> = {}; for (const file of overviewFiles) { if (file.richText !== undefined) { result[file.displayName] = file.richText; |
