Files
stock_chart_site/web/app/layout.tsx
claude-owner fd7026ad09 feat(alerts): 가격 알람 (localStorage + 60s 폴러 + 토스트)
- lib/alerts.ts: id/code/op(gte|lte)/target/triggered 저장소, watchlist/recent 와 동일 pub/sub
- AlertsPanel: 종목 사이드바에 ≥/≤ 토글 + 목표가 입력 + 활성 알람 리스트(재무장/삭제)
- AlertsToaster: layout 전역 마운트, 미발사 알람 코드만 폴링, 조건 충족시 markTriggered + 우측 하단 토스트(6s), Notification 권한 허용 시 브라우저 알림 병행
2026-05-28 15:26:10 +09:00

22 lines
538 B
TypeScript

import "./globals.css";
import type { Metadata } from "next";
import { AlertsToaster } from "../components/AlertsToaster";
import { TopNav } from "../components/TopNav";
export const metadata: Metadata = {
title: "Stock Chart Site",
description: "개인용 주식 예측 차트",
};
export default function RootLayout({ children }: { children: React.ReactNode }) {
return (
<html lang="ko">
<body className="min-h-screen">
<TopNav />
{children}
<AlertsToaster />
</body>
</html>
);
}