Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions src/frontend/apps/web/app/(main)/[stockSlug]/page.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
import { ChatContainer } from '@/src/features/chat';
import { StockLayout } from '@/src/features/stock';

// 주식데이터를 가지고 올수있는 방법이 필요합니다.

export async function generateMetadata({ params }) {
const { stockSlug } = params;

return {
title: `${stockSlug} - 주식 정보`,
description: `${stockSlug}의 최신 주식 정보를 확인하세요.`,
keywords: `주식, ${stockSlug}, 주식 정보`,
};
}

export default function StockDetailsPage({ params }) {
const { stockSlug } = params;
// console.log(1, params);

return (
<div className="flex flex-1 flex-row bg-gray-400 py-6 px-[30px]">
<div className="flex items-center justify-center pr-2 bg-gray-600 w-[45%] h-full">
<StockLayout />
</div>

<div className="flex items-center justify-center pl-2 bg-gray-500 w-[55%] h-full">
<ChatContainer />
</div>
</div>
);
}
19 changes: 19 additions & 0 deletions src/frontend/apps/web/app/(main)/layout.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
import '@workspace/ui/globals.css';

export default function RootLayout({
children,
}: Readonly<{
children: React.ReactNode;
}>) {
return (
<html
lang="en"
suppressHydrationWarning
>
<body>
<header className="h-[68px] bg-gray-800 flex items-center justify-center text-white">Header</header>
<div className="flex flex-col h-[calc(100vh-68px)] overflow-hidden">{children}</div>
</body>
</html>
);
}
Original file line number Diff line number Diff line change
@@ -1,11 +1,15 @@
import { Button } from '@workspace/ui/components';
import Link from 'next/link';

export default function Page() {
// 버튼 예시
return (
<div className="flex items-center justify-center min-h-svh">
<div className="flex flex-col items-center justify-center gap-4">
<h1 className="text-2xl font-bold">Hello World</h1>
<Button size="sm">Button</Button>
<Button size="sm">
<Link href="/tesla">Button</Link>
</Button>
</div>
</div>
);
Expand Down
5 changes: 1 addition & 4 deletions src/frontend/apps/web/app/layout.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import localFont from 'next/font/local';

import '@workspace/ui/globals.css';
import { Providers } from '@/src/shared';

const geistSans = localFont({
src: './fonts/GeistVF.woff',
Expand All @@ -22,9 +21,7 @@ export default function RootLayout({
lang="en"
suppressHydrationWarning
>
<body className={`${geistSans.variable} ${geistMono.variable} font-sans antialiased `}>
<Providers>{children}</Providers>
</body>
<body className={`${geistSans.variable} ${geistMono.variable} font-sans antialiased `}>{children}</body>
</html>
);
}
18 changes: 18 additions & 0 deletions src/frontend/apps/web/app/not-found.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
import Link from 'next/link';
import { NextPage } from 'next';
import { Button } from '@workspace/ui/components';

const NotFound: NextPage = () => {
return (
<div className="flex items-center justify-center min-h-svh">
<div className="flex flex-col items-center justify-center gap-4">
<div>이 페이지는 존재하지 않습니다. 매인 페이지로 이동하세요.</div>
<Button>
<Link href="/">메인페이지로 이동하기</Link>
</Button>
</div>
</div>
);
};

export default NotFound;
Empty file.
5 changes: 5 additions & 0 deletions src/frontend/apps/web/src/features/chat/chat-container.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
const ChatContainer = () => {
return <div className="bg-gray-200 w-full h-full">123</div>;
};

export default ChatContainer;
1 change: 1 addition & 0 deletions src/frontend/apps/web/src/features/chat/index.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export { default as ChatContainer } from './chat-container';
Empty file.
1 change: 1 addition & 0 deletions src/frontend/apps/web/src/features/stock/index.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export { default as StockLayout } from './stock-layout';
5 changes: 5 additions & 0 deletions src/frontend/apps/web/src/features/stock/stock-layout.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
const StockLayout = () => {
return <div className="bg-gray-200 w-full h-full">123</div>;
};

export default StockLayout;
Loading