Skip to content

Commit 55db26d

Browse files
committed
feat(web): Implement docker service of terraform template
1 parent 1b0e1d8 commit 55db26d

4 files changed

Lines changed: 58 additions & 9 deletions

File tree

web/src/App.tsx

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,7 @@
11
import { Route, Routes, useLocation } from 'react-router';
22
import MainLayout from '@/components/layouts/main-layout/main-layout';
3-
import { TerraformTemplate } from '@/pages/terraform-template/index/terraform-template';
4-
import Docker from '@/pages/terraform-template/Docker/docker';
5-
import EC2 from './pages/terraform-template/EC2/ec2';
6-
import S3 from './pages/terraform-template/S3/s3';
7-
import IAM from './pages/terraform-template/IAM/iam';
8-
import Argocd from './pages/terraform-template/ARGOCD/argocd';
3+
import TerraformTemplate from '@/pages/terraform-template/components/layout';
4+
import { Argocd, Docker, EC2, IAM, S3 } from './pages';
95

106
function App() {
117
const location = useLocation();

web/src/pages/index.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import Argocd from './terraform-template/ARGOCD/argocd';
2+
import Docker from './terraform-template/Docker/docker';
3+
import EC2 from './terraform-template/EC2/ec2';
4+
import IAM from './terraform-template/IAM/iam';
5+
import S3 from './terraform-template/S3/s3';
6+
7+
export { Argocd, Docker, EC2, IAM, S3 };
Lines changed: 46 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,51 @@
1-
import { FC } from 'react';
1+
import { cn } from '@/lib/utils';
2+
import { FC, useState } from 'react';
23

34
const Docker: FC = () => {
4-
return <>Docker</>;
5+
const [services, setServices] = useState({
6+
docker_image: false,
7+
docker_container: false,
8+
});
9+
10+
const handleServices = (serviceItem: keyof typeof services) => {
11+
setServices((prev) => ({
12+
...prev,
13+
[serviceItem]: !prev[serviceItem],
14+
}));
15+
};
16+
17+
return (
18+
<div className="w-full max-w-96">
19+
<div className="border border-gray-500 rounded-md">
20+
<div className="divide-y divide-gray-500">
21+
<div className="flex items-center justify-between w-full px-3 py-3">
22+
<p>Key Pair</p>
23+
<input
24+
type="checkbox"
25+
className={cn('toggle border-gray-500 bg-gray-500', {
26+
'bg-orange-base hover:bg-orange-base/70': services.docker_image,
27+
})}
28+
onChange={() => handleServices('docker_image')}
29+
/>
30+
</div>
31+
<div className="flex items-center justify-between w-full px-3 py-3">
32+
<p>Security Group</p>
33+
<input
34+
type="checkbox"
35+
className={cn('toggle border-gray-500 bg-gray-500', {
36+
'bg-orange-base hover:bg-orange-base/70':
37+
services.docker_container,
38+
})}
39+
onChange={() => handleServices('docker_container')}
40+
/>
41+
</div>
42+
</div>
43+
</div>
44+
<button className="w-full mt-3 text-white btn bg-orange-base hover:bg-orange-base/70">
45+
Submit
46+
</button>
47+
</div>
48+
);
549
};
650

751
export default Docker;

web/src/pages/terraform-template/index/terraform-template.tsx renamed to web/src/pages/terraform-template/components/layout.tsx

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ const menu = [
2424
},
2525
];
2626

27-
export const TerraformTemplate: FC = () => {
27+
const TerraformTemplate: FC = () => {
2828
return (
2929
<div className="flex items-center h-dvh">
3030
<div className="flex flex-col items-center justify-center w-full h-full border-r border-gray-500 divide-y divide-gray-500 max-w-96">
@@ -45,3 +45,5 @@ export const TerraformTemplate: FC = () => {
4545
</div>
4646
);
4747
};
48+
49+
export default TerraformTemplate;

0 commit comments

Comments
 (0)