Skip to content

Commit c01b475

Browse files
docs: docs dopt sponsor
1 parent a4db9c7 commit c01b475

File tree

5 files changed

+78
-52
lines changed

5 files changed

+78
-52
lines changed

docs/src/components/AdsContainer/index.tsx

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
/* eslint-disable import/no-unresolved */
22
import React from 'react'
3-
import AdsContainerElement from '@site/src/components/AdsContainerElement'
4-
import BannerFrigade from '@site/src/components/BannerFrigade'
3+
// import AdsContainerElement from '@site/src/components/AdsContainerElement'
4+
import BannerSponsor from '@site/src/components/BannerSponsor'
55
import './styles.css'
66

77
const AdsContainer = () => {
88
return (
99
<div className="fixed">
10-
<BannerFrigade />
11-
<AdsContainerElement />
10+
<BannerSponsor sponsorKey="frigade" />
11+
<BannerSponsor sponsorKey="dopt" />
12+
{/* <AdsContainerElement /> */}
1213
</div>
1314
)
1415
}

docs/src/components/BannerFrigade/index.tsx

Lines changed: 0 additions & 42 deletions
This file was deleted.
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
/* eslint-disable import/no-unresolved */
2+
import React from 'react'
3+
// @ts-ignore
4+
import LogoFrigade from '@site/static/img/sponsors/frigade.png'
5+
import LogoDopt from '@site/static/img/sponsors/dopt.png'
6+
import './styles.css'
7+
8+
declare global {
9+
interface Window {
10+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
11+
dataLayer?: any
12+
}
13+
}
14+
15+
const SPONSORS = {
16+
frigade: {
17+
logo: LogoFrigade,
18+
title: 'Frigade',
19+
},
20+
dopt: {
21+
logo: LogoDopt,
22+
title: 'Dopt',
23+
},
24+
}
25+
26+
interface BannerSponsorProps {
27+
sponsorKey: keyof typeof SPONSORS
28+
}
29+
30+
const BannerSponsor = ({ sponsorKey }: BannerSponsorProps) => {
31+
const sponsor = SPONSORS[sponsorKey]
32+
33+
const onClickSponsorBannerEventHandler = () => {
34+
if (typeof window !== 'undefined') {
35+
window.dataLayer = window.dataLayer || []
36+
37+
window.dataLayer.push({
38+
event: `click_${sponsorKey}_banner`,
39+
place: 'sidebar',
40+
})
41+
}
42+
43+
return true
44+
}
45+
46+
return (
47+
<div className="sponsor-banner">
48+
<a
49+
href="https://frigade.com/?source=react-tooltip"
50+
title={sponsor.title}
51+
target="_blank"
52+
rel="noreferrer"
53+
onClick={onClickSponsorBannerEventHandler}
54+
>
55+
<img src={sponsor.logo} alt={sponsor.title} />
56+
</a>
57+
</div>
58+
)
59+
}
60+
61+
export default BannerSponsor
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
.sponsor-frigade {
1+
.sponsor-banner {
22
/* same as `--carbon-max-char` */
3-
--frigade-max-char: 20ch;
3+
--sponsor-max-char: 20ch;
44
display: flex;
55
flex-direction: column;
66
min-inline-size: 130px;
7-
max-inline-size: calc(130px + var(--frigade-max-char) + 8ch);
7+
max-inline-size: calc(130px + var(--sponsor-max-char) + 8ch);
88
max-width: 377px;
99
}

docs/src/components/HomepageSponsored/index.tsx

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,12 @@ const SponsorList: FeatureItem[] = [
3636
link: 'https://frigade.com/?source=react-tooltip',
3737
eventTitle: 'frigade',
3838
},
39+
{
40+
title: 'Dopt',
41+
src: require('@site/static/img/sponsors/dopt.png').default,
42+
link: 'https://dopt.com/?source=react-tooltip',
43+
eventTitle: 'dopt',
44+
},
3945
]
4046

4147
function Feature({ title, Svg, link }: FeatureItem) {
@@ -51,7 +57,7 @@ function Feature({ title, Svg, link }: FeatureItem) {
5157
}
5258

5359
export default function HomepageSponsored(): JSX.Element {
54-
const onClickFrigadeBannerEventHandler = (title: string) => {
60+
const onClickSponsorBannerEventHandler = (title: string) => {
5561
if (typeof window !== 'undefined') {
5662
window.dataLayer = window.dataLayer || []
5763

@@ -71,15 +77,15 @@ export default function HomepageSponsored(): JSX.Element {
7177
<div className="row">
7278
{SponsorList.map(({ link, title, src, eventTitle }, idx) => (
7379
// eslint-disable-next-line react/no-array-index-key
74-
<div key={idx} className={clsx('col col--12')}>
80+
<div key={idx} className={clsx(`col col--${12 / SponsorList.length}`)}>
7581
<div className="text--center">
7682
<a
7783
href={link}
7884
title={title}
7985
target="_blank"
8086
rel="noreferrer"
8187
onClick={() => {
82-
onClickFrigadeBannerEventHandler(eventTitle)
88+
onClickSponsorBannerEventHandler(eventTitle)
8389
}}
8490
>
8591
<img src={src} alt={title} width={480} />

0 commit comments

Comments
 (0)