Skip to content

Commit 82f020a

Browse files
committed
fix: patch up dark mode and error screen
1 parent b39279b commit 82f020a

File tree

1 file changed

+43
-7
lines changed

1 file changed

+43
-7
lines changed

src/ui/src/pages/Create/ReviewScreen.tsx

Lines changed: 43 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ const ReviewScreen: React.FC<React.PropsWithChildren<CreateSubScreenProps>> = ({
1818
navigate,
1919
setValues,
2020
}) => {
21+
const [error, setError] = useState<boolean | string>(false);
2122
const [loading, setLoading] = useState(false);
2223
const [success, setSuccess] = useState(false);
2324

@@ -50,7 +51,7 @@ const ReviewScreen: React.FC<React.PropsWithChildren<CreateSubScreenProps>> = ({
5051
);
5152
}
5253

53-
fetch(`${window.location.origin}/server.php?action=createApp`, {
54+
fetch(`http://localhost:5500/server.php?action=createApp`, {
5455
method: 'POST',
5556
body: JSON.stringify({
5657
data: JSON.stringify(formData),
@@ -62,12 +63,16 @@ const ReviewScreen: React.FC<React.PropsWithChildren<CreateSubScreenProps>> = ({
6263
}
6364
})
6465
.then((response) => {
65-
setValues({
66-
...values,
67-
...response?.data,
68-
});
66+
if (response?.status === 'success') {
67+
setValues({
68+
...values,
69+
...response?.data,
70+
});
6971

70-
setSuccess(true);
72+
setSuccess(true);
73+
} else {
74+
setError(response?.message);
75+
}
7176
})
7277
.catch((err) => {
7378
console.log('An error occurred', err);
@@ -85,6 +90,13 @@ const ReviewScreen: React.FC<React.PropsWithChildren<CreateSubScreenProps>> = ({
8590
setValues={setValues}
8691
navigate={navigate}
8792
/>
93+
) : error ? (
94+
<ErrorSection
95+
values={values}
96+
setValues={setValues}
97+
navigate={navigate}
98+
error={error}
99+
/>
88100
) : (
89101
<>
90102
<div className="px-5 lg:px-10">
@@ -348,7 +360,7 @@ const SuccessSection: React.FC<CreateSubScreenProps> = ({ values }) => {
348360
</p>
349361
</div>
350362

351-
<pre className="flex flex-col gap-4 w-full bg-gray-100 rounded-lg p-5">
363+
<pre className="flex flex-col gap-4 w-full bg-gray-100 dark:bg-gray-900/50 rounded-lg p-5">
352364
<div className="flex items-center gap-2">
353365
<div>$</div>
354366
<div>
@@ -387,4 +399,28 @@ const SuccessSection: React.FC<CreateSubScreenProps> = ({ values }) => {
387399
);
388400
};
389401

402+
const ErrorSection: React.FC<
403+
CreateSubScreenProps & { error: boolean | string }
404+
> = ({ error, navigate }) => {
405+
return (
406+
<div className="px-5 lg:px-10 h-[80vh] flex flex-col justify-center items-center">
407+
<div className="mb-8 text-center ">
408+
<h2 className="text-2xl">Your app could not be created!</h2>
409+
<p className="text-gray-500">{error}</p>
410+
</div>
411+
412+
<div className="mt-8">
413+
<button
414+
className="bg-green-800 px-5 py-2 rounded-md text-white"
415+
onClick={() => {
416+
navigate('name');
417+
}}
418+
>
419+
Go Back
420+
</button>
421+
</div>
422+
</div>
423+
);
424+
};
425+
390426
export default ReviewScreen;

0 commit comments

Comments
 (0)