Skip to content

Commit 7524ef5

Browse files
committed
[DEV-19082] Implemented new error page for Bea theme
1 parent 5c2fc33 commit 7524ef5

File tree

3 files changed

+263
-0
lines changed

3 files changed

+263
-0
lines changed

app/[localeCode]/error.module.scss

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
.container {
2+
min-height: 50vh;
3+
display: flex;
4+
align-items: center;
5+
justify-content: center;
6+
font-family: Inter, sans-serif;
7+
text-align: center;
8+
}
9+
10+
.wrapper {
11+
display: flex;
12+
align-items: center;
13+
flex-direction: column;
14+
padding: $spacing-7;
15+
gap: $spacing-5;
16+
max-width: 900px;
17+
}
18+
19+
.title {
20+
color: #1f2937;
21+
font-weight: 700;
22+
font-size: 48px;
23+
line-height: 1.2;
24+
margin-bottom: $spacing-3;
25+
}
26+
27+
.description {
28+
color: #4b5563;
29+
font-weight: 400;
30+
font-size: $font-size-s;
31+
line-height: 1.6;
32+
margin: 0;
33+
}
34+
35+
.link {
36+
font-weight: 500;
37+
text-decoration: none;
38+
color: #4f46e5;
39+
outline: none;
40+
border: 0;
41+
background: none;
42+
padding: 0;
43+
44+
&:hover {
45+
color: #4f46e5;
46+
text-decoration: none;
47+
}
48+
}
49+
50+
.illustration {
51+
flex-shrink: 0;
52+
display: flex;
53+
align-items: center;
54+
justify-content: center;
55+
margin-left: $spacing-1;
56+
}
57+
58+
.svg {
59+
width: 320px;
60+
height: 248px;
61+
62+
@include not-desktop {
63+
width: 245px;
64+
height: 190px;
65+
}
66+
}

app/[localeCode]/error.tsx

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
/* eslint-disable id-blacklist */
2+
3+
'use client';
4+
5+
import Illustration from '@/public/images/error.svg';
6+
7+
import 'modern-normalize/modern-normalize.css';
8+
import '@/styles/styles.globals.scss';
9+
10+
import styles from './error.module.scss';
11+
12+
export default function Error({ reset }: { reset: () => void }) {
13+
return (
14+
<div className={styles.container}>
15+
<div className={styles.wrapper}>
16+
<div className={styles.illustration}>
17+
<Illustration className={styles.svg} />
18+
</div>
19+
<div className={styles.content}>
20+
<h1 className={styles.title}>We’re sorry, this newsroom couldn’t load</h1>
21+
<p className={styles.description}>
22+
Try to{' '}
23+
<button className={styles.link} onClick={reset}>
24+
refresh
25+
</button>{' '}
26+
the page, or visit the platform’s{' '}
27+
<a className={styles.link} href="https://status.prezly.com">
28+
status page
29+
</a>{' '}
30+
to see if any incidents are affecting the platform. You can also reach out
31+
to support via{' '}
32+
<a className={styles.link} href="mailto:support@prezly.com">
33+
{' '}
34+
email
35+
</a>
36+
.
37+
</p>
38+
</div>
39+
</div>
40+
</div>
41+
);
42+
}

0 commit comments

Comments
 (0)