diff options
Diffstat (limited to 'src/components/templates/CopyrightNotice.astro')
-rw-r--r-- | src/components/templates/CopyrightNotice.astro | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/src/components/templates/CopyrightNotice.astro b/src/components/templates/CopyrightNotice.astro new file mode 100644 index 0000000..8335293 --- /dev/null +++ b/src/components/templates/CopyrightNotice.astro @@ -0,0 +1,70 @@ +--- +import { + CREATIVE_COMMONS_LICENSES, + type LICENSES, +} from "@lib/collection/schemas"; +import CC from "./licenses/CC.astro"; +import WTFPL from "./licenses/WTFPL.astro"; +import type { Person } from "@lib/collection/types"; + +export interface Props { + title: string; + holders: Person[]; + years: number[]; + license?: typeof LICENSES[number]; +} + +let { license = "public domain" } = Astro.props; + +let Notice = undefined; +if (license !== undefined) { + if (license === "WTFPL") { + Notice = WTFPL; + } else if ( + CREATIVE_COMMONS_LICENSES.some((x) => license.localeCompare(x) === 0) + ) { + Notice = CC; + } +} +--- + +{Notice && <div lang="en"><Notice {...Astro.props} /></div>} + +{ + /* + https://spdx.org/licenses/WTFPL.html + https://spdx.org/licenses/GFDL-1.3-or-later.html + https://spdx.org/licenses/FSFAP.html + https://artlibre.org/licence/lal/en/ + https://harmful.cat-v.org/software/ + + IPL-1.0 + IPA + Intel + HPND + EUPL-1.2 + EUPL-1.1 + EUDatagrid + EPL-2.0 + EPL-1.0 + EFL-2.0 + ECL-2.0 + CPL-1.0 + CPAL-1.0 + CDDL-1.0 + BSL-1.0 + BSD-3-Clause + BSD-2-Clause + Artistic-2.0 + APSL-2.0 + Apache-2.0 + Apache-1.1 + AGPL-3.0-or-later + AGPL-3.0-only + AFL-3.0 + AFL-2.1 + AFL-2.0 + AFL-1.2 + AFL-1.1 + */ +} |