@mdfriday/foundry
Version:
The core engine of MDFriday. Convert Markdown and shortcodes into fully themed static sites – Hugo-style, powered by TypeScript.
51 lines • 2.12 kB
TypeScript
import { Converter, FsService, Page, Pages, PageSource, Template, WalkTaxonomyFunc } from '../type';
import { PageMap } from './';
import { FileInfo } from '../vo/fileinfo';
import { FileMetaInfo } from "../../../domain/fs";
export declare class Content {
fs: FsService;
converter: Converter;
pageMap: PageMap;
constructor(fs: FsService, converter: Converter, pageMap: PageMap);
setTemplateSvc(templateSvc: Template): void;
renderString(ctx: any, ...args: any[]): Promise<string>;
collectPages(): Promise<void>;
private process;
private assemble;
/**
* GetPageSources - exact replica of Go's GetPageSources method
*/
getPageSources(page: Page): Promise<PageSource[]>;
/**
* GlobalPages - exact replica of Go's GlobalPages method
*/
globalPages(langIndex: number): Promise<Pages>;
globalRegularPages(): Promise<Pages>;
/**
* WalkPages - exact replica of Go's WalkPages method
* TypeScript equivalent of golang/internal/domain/contenthub/entity/walk.go:WalkPages
*/
walkPages(langIndex: number, walker: (page: Page) => Promise<void>): Promise<void>;
/**
* WalkTaxonomies - exact replica of Go's WalkTaxonomies method
* TypeScript equivalent of golang/internal/domain/contenthub/entity/walk.go:WalkTaxonomies
*/
walkTaxonomies(langIndex: number, walker: WalkTaxonomyFunc): Promise<void>;
/**
* Helper method to walk the tree structure
* This is a simplified version of Go's NodeShiftTreeWalker.Walk
*/
private walkTree;
/**
* GetPageFromPath - TypeScript equivalent of Go's PageFinder.GetPageFromPath
* This is the core content domain business logic for finding pages by path
*/
getPageFromPath(langIndex: number, path: string): Page | null;
getPageFromFile(langIndex: number, file: FileInfo): Page | null;
handleChangeFiles(fileMetaInfos: Map<string, FileMetaInfo>): Promise<string[]>;
/**
* 添加或更新文件到 PageMap,参考 collectDir 中的实现
*/
private addOrUpdateFile;
}
//# sourceMappingURL=content.d.ts.map