Skip to content

Commit fb052ef

Browse files
committed
client download - added newsletter signup
1 parent 612245d commit fb052ef

File tree

5 files changed

+97
-77
lines changed

5 files changed

+97
-77
lines changed

src/components/download/DownloadButtonList/style.scss

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,16 @@
1414
text-align: center;
1515
@include typography(footer);
1616

17+
hr {
18+
flex: 1;
19+
height: 1px;
20+
background-color: var(--border-separator);
21+
border: none;
22+
margin: 0;
23+
}
24+
1725
p {
18-
width: 50%;
26+
width: 30%;
1927
}
2028
}
2129

@@ -27,7 +35,7 @@
2735
align-self: stretch;
2836

2937
.download-separator p {
30-
width: 60%;
38+
width: 30%;
3139
}
3240
}
3341
}

src/components/download/DownloadInfo/DownloadInfo.tsx

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -53,18 +53,9 @@ const DownloadInfo = function ({ owner, repo }: GithubProps) {
5353
{isLoading && <p>Fetching version...</p>}
5454
{clientVersion == "" && !isLoading && <p>Unable to fetch version</p>}
5555
{clientVersion != "" && (
56-
<>
57-
<p>Current version:</p>
58-
<p>{clientVersion}</p>
59-
</>
56+
<p>Current version: {clientVersion} | View changelog → <a href={`https://github.com/DefGuard/client/releases/v${clientVersion}`}>{published}</a></p>
6057
)}
6158
</div>
62-
<div className="download-changelog">
63-
<a href={`https://github.com/DefGuard/client/releases/v${clientVersion}`}>
64-
View changelog →
65-
</a>
66-
<p>{published}</p>
67-
</div>
6859
</div>
6960
);
7061
};
Lines changed: 29 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,34 @@
1-
#download-page {
2-
.download-version {
3-
.download-version-info {
4-
display: flex;
5-
flex-direction: column;
6-
justify-content: center;
7-
align-items: flex-start;
8-
gap: 8px;
9-
align-self: stretch;
1+
.download-version-info {
2+
display: flex;
3+
flex-direction: column;
4+
gap: 16px;
5+
width: 100%;
106

11-
.download-version-current,
12-
.download-changelog {
13-
display: flex;
14-
justify-content: space-between;
15-
align-items: flex-start;
16-
align-self: stretch;
17-
}
18-
19-
.download-version-current {
20-
@include typography(pricebox-price);
21-
}
7+
.download-version-current {
8+
margin-bottom: 20px;
9+
@include typography(pricebox-list);
10+
p {
11+
margin: 0;
12+
line-height: 1.2;
13+
font-size: 16px;
14+
}
15+
}
2216

23-
.download-changelog {
24-
@include typography(pricebox-list);
25-
}
17+
.download-changelog {
18+
@include typography(pricebox-list);
19+
display: flex;
20+
align-items: center;
21+
gap: 16px;
22+
23+
a {
24+
text-decoration: none;
25+
color: inherit;
26+
white-space: nowrap;
27+
}
28+
29+
p {
30+
margin: 0;
31+
color: var(--text-body-secondary);
2632
}
2733
}
2834
}

src/pages/download-confirm.astro

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ const tags = [
8888
</div>
8989
<div slot="right">
9090
<NewsletterSection
91-
headerLevel="1"
91+
headerLevel="2"
9292
title="Stay Updated on New Releases"
9393
description="Release notes and occasional news — no spam, just one email per month max."
9494
/>
@@ -150,7 +150,7 @@ const tags = [
150150
.product-section {
151151
padding-top: 0 !important; /* Match the 4rem padding from FlexibleSection */
152152
padding-bottom: 0rem !important;
153-
border:none;
153+
border: none;
154154
display: unset;
155155
h1 {
156156
@include break-down(md) {

src/pages/download.astro

Lines changed: 55 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,10 @@ import Navigation from "../components/base/Navigation.astro";
33
import BaseLayout from "../layouts/BaseLayout.astro";
44
import { DownloadButtonList } from "../components/download/DownloadButtonList/DownloadButtonList";
55
import DownloadVersion from "../components/download/DownloadVersion.astro";
6+
import DefguardInfo from "../components/download/DownloadInfo/DownloadInfo";
7+
import NewsletterSection from "../components/NewsletterSection.astro";
8+
import ProductSection from "../layouts/ProductSection.astro";
9+
import FlexibleSection from "../components/FlexibleSection.astro";
610
711
const title = "defguard - Zero-Trust WireGuard® 2FA/MFA VPN: Download";
812
const featuredImage =
@@ -24,67 +28,78 @@ const url = "https://defguard.net/download/";
2428
>
2529
<Navigation activeSlug="/download/" />
2630
<main id="download-page">
27-
<header>
28-
<h1>Download defguard desktop client with WireGuard® 2FA/MFA</h1>
29-
</header>
30-
<section class="download-section">
31-
<DownloadButtonList client:only="react" />
32-
<DownloadVersion />
33-
</section>
34-
<hr />
35-
<!-- <h3>
36-
By downloading and using defguard, you agree to its <a href="#" target="_self"
37-
>terms and conditions</a
38-
>.
39-
</h3> -->
31+
<ProductSection padding="none">
32+
<FlexibleSection title="Download defguard desktop client with WireGuard® 2FA/MFA" id="download-section" variant="white" theme="light">
33+
<div slot="left">
34+
<DefguardInfo owner="Defguard" repo="client" client:only="react" />
35+
<DownloadButtonList client:only="react" />
36+
</div>
37+
<div slot="right">
38+
<NewsletterSection
39+
headerLevel="2"
40+
title="Stay Updated on New Releases"
41+
description="Release notes and occasional news — no spam, just one email per month max."
42+
/>
43+
</div>
44+
</FlexibleSection>
45+
</ProductSection>
4046
</main>
4147
</BaseLayout>
4248

4349
<style lang="scss" is:global>
50+
.btn.size-normal{
51+
margin: 0 0 0 auto;
52+
min-height: unset !important;
53+
height:38px;
54+
border-radius: unset;
55+
width: 100%;
56+
57+
@include break-down(lg) {
58+
margin: 0 auto;
59+
}
60+
}
61+
.btn{
62+
border-color: var(--text-button-tertiary);
63+
64+
&:hover{
65+
border: unset;
66+
background-color: var(--text-button-tertiary);
67+
68+
span {
69+
color: white;
70+
}
71+
}
72+
}
73+
4474
#download-page {
4575
display: flex;
46-
padding: 100px 240px;
4776
flex-direction: column;
4877
gap: 40px;
4978

5079
h1 {
5180
@include typography(section);
5281
}
5382

54-
h3 {
55-
font-size: 18px;
56-
font-weight: 400;
83+
header {
5784
text-align: center;
58-
a {
59-
text-decoration-line: underline;
60-
}
61-
}
62-
63-
hr {
64-
width: 100%;
85+
margin-bottom: 40px;
6586
}
6687

67-
.download-section {
68-
display: flex;
69-
width: 100%;
70-
max-width: 1500px;
71-
align-items: center;
72-
justify-content: flex-start;
73-
74-
@include break-up(lg) {
75-
justify-content: space-between;
76-
align-items: flex-start;
88+
.product-section {
89+
padding-top: 0 !important;
90+
padding-bottom: 0rem !important;
91+
border: none;
92+
display: unset;
93+
h1 {
94+
@include break-down(md) {
95+
padding-top: 20px;
96+
border-top: 1px solid black;
97+
}
7798
}
7899
}
79100

80101
@include break-down(sm) {
81-
padding: 100px 20px;
82102
gap: 50px;
83-
84-
.download-section {
85-
flex-direction: column;
86-
gap: 30px;
87-
}
88103
}
89104
}
90105
</style>

0 commit comments

Comments
 (0)