pokerogue/typedoc.config.js
Sirz Benjie 6766940fa1
[Misc] Make the repo REUSE compliant (#6474)
* Add license information

* Add reuse lint workflow

* Add snippets for spdx

* fix: minor wording adjustments and typo fixes

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>

* chore: add FileContributor attributions for Bertie

Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>

* begin licensing some audio assets

* Add pokemon reborn sound affect attribution

* Annotate Leavannite's section

* Add more licensing info

* Add license info to license files ._.

* Move ps1 files out of public

* Add license for animation jsons

* Add license for bat scripts in public

* Update licensing in scripts

* Fix typo in license ref

* Fix AGPL-3.0-or-later

* Add license info to typedoc.config.js

* Add MIT license for snippets

* chore: update license info for files in scripts

* chore: update license info

* chore: update license info

* chore: update license info

* Remove licenses used only by public before linting with reuse

* Add license info to new files added by docker PR

* chore: apply biome

* fix: add back linting workflow lost during merge

* Add attribution based on Hanniel's information

* Add attribution based on Officer Porkchop and Green Ninja's information

* add attribution to unicorn_power for reshiram/zekrom/kyurem epic variant

* Fixup minor typo

* Adjust sprite test to not think REUSE.toml is a sprite json

* Add missing continue-on-error to workflow

* fix: address kev's comments from code review

* docs: minor touchups

---------

Co-authored-by: NightKev <34855794+DayKev@users.noreply.github.com>
Co-authored-by: Bertie690 <136088738+Bertie690@users.noreply.github.com>
2025-09-23 08:49:03 -05:00

73 lines
2.3 KiB
JavaScript

/*
* SPDX-FileCopyrightText: 2025 Pagefault Games
* SPDX-FileContributor: Bertie690
*
* SPDX-License-Identifier: AGPL-3.0-only
*/
import { globSync } from "node:fs";
const dryRun = !!process.env.DRY_RUN?.match(/true/gi);
/**
* <!-- @type {Partial<import("typedoc").TypeDocOptions>} -->
*/
const config = {
entryPoints: ["./src", "./test/test-utils"],
entryPointStrategy: "expand",
exclude: [
"src/polyfills.ts",
"src/vite.env.d.ts",
"**/*+.test.ts",
"test/test-utils/setup",
"test/test-utils/reporters",
],
excludePrivate: false, // Private members are useful in the docs for contributors
excludeReferences: true, // prevent documenting re-exports
requiredToBeDocumented: [
"Enum",
"EnumMember",
"Variable",
"Function",
"Class",
"Interface",
"Property",
"Method",
"Accessor",
"TypeAlias",
],
highlightLanguages: ["javascript", "json", "jsonc", "json5", "tsx", "typescript", "markdown"],
plugin: [
"typedoc-github-theme",
"typedoc-plugin-coverage",
"typedoc-plugin-mdn-links",
...globSync("./typedoc-plugins/**/*.js").map(plugin => "./" + plugin),
],
// Avoid emitting docs for branches other than main/beta
emit: dryRun ? "none" : "docs",
out: process.env.CI ? "/tmp/docs" : "./typedoc",
name: "PokéRogue",
readme: "./README.md",
coverageLabel: "Documented",
coverageSvgWidth: 120, // Increased from 104 baseline due to adding 2 extra letters
favicon: "./favicon.ico",
theme: "typedoc-github-theme",
customFooterHtml: "<p>Copyright <strong>Pagefault Games</strong> 2025</p>",
customFooterHtmlDisableWrapper: true,
navigationLinks: {
GitHub: "https://github.com/pagefaultgames/pokerogue",
},
};
// If generating docs for main/beta, check the ref name and add an appropriate navigation header
if (!dryRun && process.env.REF_NAME) {
const otherRefName = process.env.REF_NAME === "main" ? "beta" : "main";
config.navigationLinks = {
...config.navigationLinks,
// This will be "Switch to Beta" when on main, and vice versa
[`Switch to ${otherRefName.charAt(0).toUpperCase() + otherRefName.slice(1).toLowerCase()}`]: `https://pagefaultgames.github.io/pokerogue/${otherRefName}`,
};
}
// biome-ignore lint/style/noDefaultExport: required by TypeDoc
export default config;