Skip to content

Commit 010af4d

Browse files
split official partners and service partners (#3454)
Co-authored-by: Tony <[email protected]>
1 parent 62eabb3 commit 010af4d

File tree

3 files changed

+61
-34
lines changed

3 files changed

+61
-34
lines changed
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
---
2+
import { Image } from 'astro:assets';
3+
import CrabNebulaLight from '@assets/partners/crabnebula/light.svg';
4+
import CrabNebulaDark from '@assets/partners/crabnebula/dark.svg';
5+
6+
type SVG = ((_props: astroHTML.JSX.SVGAttributes) => any) & ImageMetadata;
7+
8+
interface Partner {
9+
name: string;
10+
image?: ImageMetadata;
11+
// https://docs.astro.build/en/guides/images/#svg-components
12+
svg?: { light: SVG; dark: SVG };
13+
url: string;
14+
description?: string;
15+
}
16+
17+
const officialPartners: Partner[] = [
18+
{
19+
name: 'CrabNebula',
20+
url: 'https://crabnebula.dev/',
21+
svg: { light: CrabNebulaLight, dark: CrabNebulaDark },
22+
},
23+
];
24+
---
25+
26+
<div class="partners-container">
27+
<div class="official-partners">
28+
{
29+
officialPartners.map((partner) => (
30+
<a
31+
href={partner.url}
32+
target="_blank"
33+
rel="noopener noreferrer"
34+
class="partner official not-content"
35+
>
36+
<div class="partner-logo">
37+
{partner.svg && (
38+
<>
39+
<partner.svg.light class="external-logo light" />
40+
<partner.svg.dark class="external-logo dark" />
41+
</>
42+
)}
43+
{partner.image && <Image src={partner.image} alt={partner.name} />}
44+
</div>
45+
</a>
46+
))
47+
}
48+
</div>
49+
</div>

src/components/sponsors/Partners.astro

Lines changed: 0 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
---
22
import { Image } from 'astro:assets';
3-
import CrabNebulaLight from '@assets/partners/crabnebula/light.svg';
4-
import CrabNebulaDark from '@assets/partners/crabnebula/dark.svg';
53
import NetlifyLight from '@assets/partners/netlify/light.svg';
64
import NetlifyDark from '@assets/partners/netlify/dark.svg';
75
import MeiliSearchLight from '@assets/partners/meilisearch/light.svg';
@@ -18,14 +16,6 @@ interface Partner {
1816
description?: string;
1917
}
2018
21-
const officialPartners: Partner[] = [
22-
{
23-
name: 'CrabNebula',
24-
url: 'https://crabnebula.dev/',
25-
svg: { light: CrabNebulaLight, dark: CrabNebulaDark },
26-
},
27-
];
28-
2919
const partners: Partner[] = [
3020
{
3121
name: 'Meilisearch',
@@ -41,29 +31,6 @@ const partners: Partner[] = [
4131
---
4232

4333
<div class="partners-container">
44-
<div class="official-partners">
45-
{
46-
officialPartners.map((partner) => (
47-
<a
48-
href={partner.url}
49-
target="_blank"
50-
rel="noopener noreferrer"
51-
class="partner official not-content"
52-
>
53-
<div class="partner-logo">
54-
{partner.svg && (
55-
<>
56-
<partner.svg.light class="external-logo light" />
57-
<partner.svg.dark class="external-logo dark" />
58-
</>
59-
)}
60-
{partner.image && <Image src={partner.image} alt={partner.name} />}
61-
</div>
62-
</a>
63-
))
64-
}
65-
</div>
66-
6734
<div class="partners">
6835
{
6936
partners.map((partner) => (

src/components/sponsors/SponsorList.astro

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,15 @@
22
import OpenCollective from './OpenCollective/Collective.astro';
33
import GitHubSponsor from './GitHub/Sponsors.astro';
44
import Partners from './Partners.astro';
5+
import OfficialPartners from './OfficialPartners.astro';
56
---
67

78
<div class="not-content" style="margin-top: 6rem;">
89
<section>
10+
<div>
11+
<h3 class="text-center">Supported by</h3>
12+
<OfficialPartners />
13+
</div>
914
<div class="funding-source">
1015
<h4>Open Collective Sponsors</h4>
1116
<OpenCollective />
@@ -17,7 +22,7 @@ import Partners from './Partners.astro';
1722
</section>
1823

1924
<section>
20-
<h2 class="text-center">Supported by</h2>
25+
<h3 class="text-center">Website powered by</h3>
2126
<Partners />
2227
</section>
2328
</div>
@@ -30,6 +35,12 @@ import Partners from './Partners.astro';
3035
font-weight: bold;
3136
}
3237

38+
h3 {
39+
font-size: 2rem;
40+
font-weight: 600;
41+
margin-bottom: 0.5rem;
42+
}
43+
3344
h4 {
3445
/* border 50% opacity */
3546
border-bottom: 1px solid var(--sl-color-gray-6);

0 commit comments

Comments
 (0)