import fs from "fs"; import path from "path"; import url from "url"; import { Output } from "./shared/index.mjs"; const __dirname = url.fileURLToPath(new URL(".", import.meta.url)); /////////////////////////////////////////////////////////////////////////////////////////////////// // Copy Markdown async function CopyMarkdown(out, name) { const content = await fs.promises.readFile( path.resolve(__dirname, `release-note-fragments/${name}`), "utf8" ); out.log(content); } /////////////////////////////////////////////////////////////////////////////////////////////////// // PACKAGE LIST const Spacings = { // spacingDesc, ligation type: ["Default", true], term: ["Terminal", true], fixed: ["Fixed", false], "quasi-proportional": ["Default", false] }; const ImagePrefixNoVersion = `https://raw.githubusercontent.com/be5invis/Iosevka`; const DownloadLinkPrefixNoVersion = `https://github.com/be5invis/Iosevka/releases/download`; async function GeneratePackageList(argv, out) { const imagePrefix = `${ImagePrefixNoVersion}/v${argv.version}/images`; const pkgShapesData = JSON.parse(await fs.promises.readFile(argv.releasePackagesJsonPath)); const DownloadLinkPrefix = `${DownloadLinkPrefixNoVersion}/v${argv.version}`; out.log(`
`]; const hasSpacings = Object.entries(gr.subGroups).length > 1; if (hasSpacings) { const sTtcLink = `${DownloadLinkPrefix}/${sTtcName}.zip`; const ttcLink = `${DownloadLinkPrefix}/${ttcName}.zip`; ttcCells = [ ` | Super\u00A0TTC | `, `TTC | `, `` ]; } out.log( ` | ||||
📦 ${familyName} — ${desc} | `, ...ttcCells, `|||||||
└ Sub-packages | `, `Spacing | `, `Ligatures | `, `Downloads | `, `||||
${leader} ${noBreak(subGr.family)} | `, `${spacingDesc} | `, `${flag(ligation)} | `, `${createLink("Super\u00A0TTC", superTtcPrefix)} | `, `${createLink("TTC", ttcPrefix)} | `, `${createLink("TTF", "PkgTTF")} ` + `(${createLink("Unhinted", "PkgTTF-Unhinted")}) | `, `${createLink("WebFont", "PkgWebFont")} ` + `(${createLink("Unhinted", "PkgWebFont-Unhinted")}) | `, `|
${img} | `, `