summaryrefslogtreecommitdiff
path: root/src/components/templates/CopyrightNotice.astro
blob: 83352937b5cf48a693cc22a6197d213b56532d37 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
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
      */
}