UNPKG

hirsun-vuepress-theme-hope-plus

Version:
25 lines 1.09 kB
import { isLinkHttp, removeEndingSlash, removeLeadingSlash, } from "@vuepress/shared"; import { resolveRepoType } from "vuepress-shared/client"; export const editLinkPatterns = { GitHub: ":repo/edit/:branch/:path", GitLab: ":repo/-/edit/:branch/:path", Gitee: ":repo/edit/:branch/:path", Bitbucket: ":repo/src/:branch/:path?mode=edit&spa=0&at=:branch&fileviewer=file-view-default", }; export const resolveEditLink = ({ docsRepo, docsBranch, docsDir, filePathRelative, editLinkPattern, }) => { if (!filePathRelative) return null; const repoType = resolveRepoType(docsRepo); let pattern; if (editLinkPattern) pattern = editLinkPattern; else if (repoType !== null) pattern = editLinkPatterns[repoType]; if (!pattern) return null; return pattern .replace(/:repo/, isLinkHttp(docsRepo) ? docsRepo : `https://github.com/${docsRepo}`) .replace(/:branch/, docsBranch) .replace(/:path/, removeLeadingSlash(`${removeEndingSlash(docsDir)}/${filePathRelative}`)); }; //# sourceMappingURL=editLink.js.map