diff --git a/apps/sn/app/layout.tsx b/apps/sn/app/layout.tsx
index aa2049dcc..c0f756c09 100644
--- a/apps/sn/app/layout.tsx
+++ b/apps/sn/app/layout.tsx
@@ -1,8 +1,12 @@
-import type { Metadata } from "next";
-import { App } from "@/app";
-
-export const metadata: Metadata = {
- title: "유역하수도 통합 정보플랫폼",
-};
-
-export default App;
+import './styles/base.css'
+export default function RootLayout({
+ children,
+}: {
+ children: React.ReactNode
+}) {
+ return (
+
+
{children}
+
+ )
+}
diff --git a/apps/sn/app/page.tsx b/apps/sn/app/page.tsx
new file mode 100644
index 000000000..3dc0d4a88
--- /dev/null
+++ b/apps/sn/app/page.tsx
@@ -0,0 +1,11 @@
+import { BaseLayout } from "@common/components";
+
+const App = ({ children }: Readonly<{ children: React.ReactNode }>) => {
+ return (
+
+ {children}
+
+ );
+};
+
+export default App;
diff --git a/apps/sn/app/site/page.tsx b/apps/sn/app/site/page.tsx
deleted file mode 100644
index 0cf120630..000000000
--- a/apps/sn/app/site/page.tsx
+++ /dev/null
@@ -1,2 +0,0 @@
-import { SitePage } from "@/pages/site";
-export default SitePage;
diff --git a/apps/sn/app/site/register/page.tsx b/apps/sn/app/site/register/page.tsx
deleted file mode 100644
index a11d0b60c..000000000
--- a/apps/sn/app/site/register/page.tsx
+++ /dev/null
@@ -1,2 +0,0 @@
-import { RegisterPage } from "@/pages/site";
-export default RegisterPage;
diff --git a/apps/sn/src/app/styles/base.css b/apps/sn/app/styles/base.css
similarity index 100%
rename from apps/sn/src/app/styles/base.css
rename to apps/sn/app/styles/base.css
diff --git a/apps/sn/pages/.gitkeep b/apps/sn/pages/.gitkeep
deleted file mode 100644
index e69de29bb..000000000
diff --git a/apps/sn/src/app/index.tsx b/apps/sn/src/app/index.tsx
deleted file mode 100644
index 9223b0790..000000000
--- a/apps/sn/src/app/index.tsx
+++ /dev/null
@@ -1,12 +0,0 @@
-import "./styles/base.css";
-import "./styles/components.css";
-
-const App = ({ children }: Readonly<{ children: React.ReactNode }>) => {
- return (
-
- {children}
-
- );
-};
-
-export { App };
diff --git a/apps/sn/src/app/styles/components.css b/apps/sn/src/app/styles/components.css
deleted file mode 100644
index 4d5caaf96..000000000
--- a/apps/sn/src/app/styles/components.css
+++ /dev/null
@@ -1,16 +0,0 @@
-@tailwind components;
-
-@layer components {
- .card {
- @apply relative m-[0.6rem] box-border min-h-[2rem] rounded-[0.5rem] p-[0.6rem] text-[1.3rem] text-[#666];
- }
- .card-border {
- @apply shadow-blur border border-[#dbe2e6] bg-[rgba(255,255,255,0.6)];
- }
- .card-header {
- @apply -mx-[0.6rem] flex items-center justify-between border-b border-b-[#e1e7eb] p-4;
- }
- .card-footer {
- @apply -mx-[0.6rem] mt-2 flex items-center justify-center border-t border-t-[#e1e7eb] py-4;
- }
-}
diff --git a/apps/sn/src/pages/site/index.ts b/apps/sn/src/pages/site/index.ts
deleted file mode 100644
index 22c7fef7b..000000000
--- a/apps/sn/src/pages/site/index.ts
+++ /dev/null
@@ -1,2 +0,0 @@
-export { RegisterPage } from "./ui/register-page";
-export { SitePage } from "./ui/site-page";
diff --git a/apps/sn/src/pages/site/model/__mocks__.tsx b/apps/sn/src/pages/site/model/__mocks__.tsx
deleted file mode 100644
index 1d11afa9a..000000000
--- a/apps/sn/src/pages/site/model/__mocks__.tsx
+++ /dev/null
@@ -1,59 +0,0 @@
-import { createColumnHelper } from "@tanstack/react-table";
-import { fakerKO as faker } from "@faker-js/faker";
-
-type Site = {
- id: number;
- 사이트코드: string;
- 사이트명: string;
- 대표_URL: string;
- 기본_사이트_여부: boolean;
- 사용_여부: boolean;
- 등록자: string;
- 등록일: string;
-};
-
-faker.seed(123);
-
-const data: Site[] = Array.from({ length: 100 }, (_, i) => ({
- id: i + 1,
- 사이트코드: faker.string.alpha(2).toUpperCase(),
- 사이트명: faker.lorem.word(),
- 대표_URL: faker.internet.url(),
- 기본_사이트_여부: faker.datatype.boolean(),
- 사용_여부: faker.datatype.boolean(),
- 등록자: faker.person.fullName(),
- 등록일: faker.date.recent().toISOString().split("T")[0] as string,
-}));
-
-const columnHelper = createColumnHelper();
-
-const columns = [
- columnHelper.accessor("id", {
- header: "NO",
- }),
- columnHelper.accessor("사이트코드", {
- header: "사이트코드",
- }),
- columnHelper.accessor("사이트명", {
- header: "사이트명",
- }),
- columnHelper.accessor("대표_URL", {
- header: "대표_URL",
- }),
- columnHelper.accessor("기본_사이트_여부", {
- header: "기본 사이트 여부",
- cell: (info) => (info.getValue() ? "Y" : "N"),
- }),
- columnHelper.accessor("사용_여부", {
- header: "사용 여부",
- cell: (info) => (info.getValue() ? "Y" : "N"),
- }),
- columnHelper.accessor("등록자", {
- header: "등록자",
- }),
- columnHelper.accessor("등록일", {
- header: "등록일",
- }),
-];
-
-export { data, columns };
diff --git a/apps/sn/src/pages/site/ui/layout.tsx b/apps/sn/src/pages/site/ui/layout.tsx
deleted file mode 100644
index 19e48fbd0..000000000
--- a/apps/sn/src/pages/site/ui/layout.tsx
+++ /dev/null
@@ -1,16 +0,0 @@
-import { BaseLayout } from "@common/components";
-
-function SitePageLayout({ children }: { children: React.ReactNode }) {
- return (
-
-
-
- 사이트 관리
-
- {children}
-
-
- );
-}
-
-export { SitePageLayout };
diff --git a/apps/sn/src/pages/site/ui/register-page.tsx b/apps/sn/src/pages/site/ui/register-page.tsx
deleted file mode 100644
index e970b2de7..000000000
--- a/apps/sn/src/pages/site/ui/register-page.tsx
+++ /dev/null
@@ -1,216 +0,0 @@
-import {
- Button,
- DropdownMenu,
- DropdownMenuContent,
- DropdownMenuItem,
- DropdownMenuTrigger,
- Input,
- Label,
- RadioGroup,
- RadioGroupItem,
- Table,
- TableBody,
- TableCell,
- TableHead,
- TableRow,
-} from "@common/components";
-import { SitePageLayout } from "./layout";
-
-function RegisterPage() {
- return (
-
-
-
-
-
-
-
-
- );
-}
-
-export { RegisterPage };
diff --git a/apps/sn/src/pages/site/ui/site-page.tsx b/apps/sn/src/pages/site/ui/site-page.tsx
deleted file mode 100644
index d6efc8e15..000000000
--- a/apps/sn/src/pages/site/ui/site-page.tsx
+++ /dev/null
@@ -1,38 +0,0 @@
-"use client";
-
-import "@common/assets/styles/grid.css";
-
-import { useRouter } from "next/navigation";
-import { Button, Input } from "@common/components";
-import { SitePageLayout } from "./layout";
-
-function SitePage() {
- const router = useRouter();
-
- return (
-
-
-
-
-
-
사이트 목록
-
-
-
- {/* */}
-
-
-
-
- );
-}
-
-export { SitePage };
diff --git a/apps/sn/tsconfig.json b/apps/sn/tsconfig.json
index 3a9bab950..5d0dbd101 100644
--- a/apps/sn/tsconfig.json
+++ b/apps/sn/tsconfig.json
@@ -22,10 +22,11 @@
"name": "next"
}
],
- "baseUrl": "./src",
+ "baseUrl": "app",
"paths": {
"@/*": ["./*"],
- "@common/components": ["../../../packages/common/components/src"]
+ "@common/components": ["../../../packages/common/components/src"],
+ "@common/business_components": ["../../../packages/common/business_components/src"]
}
},
"include": [
diff --git a/package.json b/package.json
index ab7287690..5dc6c6258 100644
--- a/package.json
+++ b/package.json
@@ -12,6 +12,7 @@
"build": "turbo run build",
"dev": "turbo run dev",
"dev:cs": "turbo run dev --filter=cs",
+ "dev:sn": "turbo run dev --filter=sn",
"preview:components": "turbo run storybook --filter=@common/components",
"preinstall": "npx only-allow pnpm"
},