refactor: 컴포넌트 폴더 구조화
변경 전:
components/
├── pc/admin/ (플랫)
├── pc/public/ (플랫)
└── mobile/ (플랫)
변경 후:
components/
├── pc/admin/
│ ├── layout/ (Layout, Header)
│ ├── common/ (ConfirmDialog, DatePicker, TimePicker, NumberPicker)
│ └── schedule/ (AdminScheduleCard, CategorySelector)
├── pc/public/
│ ├── layout/ (Layout, Header, Footer)
│ └── schedule/ (Calendar, ScheduleCard, BirthdayCard, CategoryFilter)
└── mobile/
├── layout/ (Layout, Header, BottomNav)
└── schedule/ (Calendar, ScheduleCard 등)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
parent
d5c54db86c
commit
27fc26ee96
34 changed files with 33 additions and 24 deletions
|
|
@ -1,11 +1,5 @@
|
||||||
// 레이아웃
|
// 레이아웃
|
||||||
export { default as Layout } from './Layout';
|
export * from './layout';
|
||||||
export { default as Header } from './Header';
|
|
||||||
export { default as BottomNav } from './BottomNav';
|
|
||||||
|
|
||||||
// 일정 컴포넌트
|
// 일정 컴포넌트
|
||||||
export { default as Calendar } from './Calendar';
|
export * from './schedule';
|
||||||
export { default as ScheduleCard } from './ScheduleCard';
|
|
||||||
export { default as ScheduleListCard } from './ScheduleListCard';
|
|
||||||
export { default as ScheduleSearchCard } from './ScheduleSearchCard';
|
|
||||||
export { default as BirthdayCard } from './BirthdayCard';
|
|
||||||
|
|
|
||||||
3
frontend-temp/src/components/mobile/layout/index.js
Normal file
3
frontend-temp/src/components/mobile/layout/index.js
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
export { default as Layout } from './Layout';
|
||||||
|
export { default as Header } from './Header';
|
||||||
|
export { default as BottomNav } from './BottomNav';
|
||||||
5
frontend-temp/src/components/mobile/schedule/index.js
Normal file
5
frontend-temp/src/components/mobile/schedule/index.js
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
export { default as Calendar } from './Calendar';
|
||||||
|
export { default as ScheduleCard } from './ScheduleCard';
|
||||||
|
export { default as ScheduleListCard } from './ScheduleListCard';
|
||||||
|
export { default as ScheduleSearchCard } from './ScheduleSearchCard';
|
||||||
|
export { default as BirthdayCard } from './BirthdayCard';
|
||||||
4
frontend-temp/src/components/pc/admin/common/index.js
Normal file
4
frontend-temp/src/components/pc/admin/common/index.js
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
export { default as ConfirmDialog } from './ConfirmDialog';
|
||||||
|
export { default as DatePicker } from './DatePicker';
|
||||||
|
export { default as TimePicker } from './TimePicker';
|
||||||
|
export { default as NumberPicker } from './NumberPicker';
|
||||||
|
|
@ -1,10 +1,8 @@
|
||||||
// 레이아웃
|
// 레이아웃
|
||||||
export { default as AdminLayout } from './Layout';
|
export * from './layout';
|
||||||
export { default as AdminHeader } from './Header';
|
|
||||||
|
|
||||||
// 공통 컴포넌트
|
// 공통 컴포넌트
|
||||||
export { default as AdminScheduleCard } from './AdminScheduleCard';
|
export * from './common';
|
||||||
export { default as ConfirmDialog } from './ConfirmDialog';
|
|
||||||
export { default as NumberPicker } from './NumberPicker';
|
// 스케줄 관련
|
||||||
export { default as DatePicker } from './DatePicker';
|
export * from './schedule';
|
||||||
export { default as TimePicker } from './TimePicker';
|
|
||||||
|
|
|
||||||
2
frontend-temp/src/components/pc/admin/layout/index.js
Normal file
2
frontend-temp/src/components/pc/admin/layout/index.js
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
export { default as AdminLayout } from './Layout';
|
||||||
|
export { default as AdminHeader } from './Header';
|
||||||
|
|
@ -1 +1,2 @@
|
||||||
|
export { default as AdminScheduleCard } from './AdminScheduleCard';
|
||||||
export { default as CategorySelector } from './CategorySelector';
|
export { default as CategorySelector } from './CategorySelector';
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,5 @@
|
||||||
// 레이아웃
|
// 레이아웃
|
||||||
export { default as Layout } from './Layout';
|
export * from './layout';
|
||||||
export { default as Header } from './Header';
|
|
||||||
export { default as Footer } from './Footer';
|
|
||||||
|
|
||||||
// 일정 컴포넌트
|
// 일정 컴포넌트
|
||||||
export { default as Calendar } from './Calendar';
|
export * from './schedule';
|
||||||
export { default as ScheduleCard } from './ScheduleCard';
|
|
||||||
export { default as BirthdayCard } from './BirthdayCard';
|
|
||||||
export { default as CategoryFilter } from './CategoryFilter';
|
|
||||||
|
|
|
||||||
3
frontend-temp/src/components/pc/public/layout/index.js
Normal file
3
frontend-temp/src/components/pc/public/layout/index.js
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
export { default as Layout } from './Layout';
|
||||||
|
export { default as Header } from './Header';
|
||||||
|
export { default as Footer } from './Footer';
|
||||||
4
frontend-temp/src/components/pc/public/schedule/index.js
Normal file
4
frontend-temp/src/components/pc/public/schedule/index.js
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
export { default as Calendar } from './Calendar';
|
||||||
|
export { default as ScheduleCard } from './ScheduleCard';
|
||||||
|
export { default as BirthdayCard } from './BirthdayCard';
|
||||||
|
export { default as CategoryFilter } from './CategoryFilter';
|
||||||
|
|
@ -12,7 +12,7 @@ import {
|
||||||
Users,
|
Users,
|
||||||
Check,
|
Check,
|
||||||
} from "lucide-react";
|
} from "lucide-react";
|
||||||
import AdminLayout from "@/components/pc/admin/Layout";
|
import AdminLayout from "@/components/pc/admin/layout/Layout";
|
||||||
import Toast from "@/components/common/Toast";
|
import Toast from "@/components/common/Toast";
|
||||||
import { useAdminAuth } from "@/hooks/pc/admin";
|
import { useAdminAuth } from "@/hooks/pc/admin";
|
||||||
import { useToast } from "@/hooks/common";
|
import { useToast } from "@/hooks/common";
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ import { useState, useEffect } from "react";
|
||||||
import { useNavigate, Link } from "react-router-dom";
|
import { useNavigate, Link } from "react-router-dom";
|
||||||
import { motion, AnimatePresence } from "framer-motion";
|
import { motion, AnimatePresence } from "framer-motion";
|
||||||
import { Home, ChevronRight } from "lucide-react";
|
import { Home, ChevronRight } from "lucide-react";
|
||||||
import AdminLayout from "@/components/pc/admin/Layout";
|
import AdminLayout from "@/components/pc/admin/layout/Layout";
|
||||||
import { useAdminAuth } from "@/hooks/pc/admin";
|
import { useAdminAuth } from "@/hooks/pc/admin";
|
||||||
import * as categoriesApi from "@/api/admin/categories";
|
import * as categoriesApi from "@/api/admin/categories";
|
||||||
import CategorySelector from "@/components/pc/admin/schedule/CategorySelector";
|
import CategorySelector from "@/components/pc/admin/schedule/CategorySelector";
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue