No changes.
This commit is contained in:
@@ -40,7 +40,7 @@ const MonthlyComparisonChart: React.FC<MonthlyComparisonChartProps> = ({
|
|||||||
);
|
);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="neuro-card h-72">
|
<div className="neuro-card h-72 w-full">
|
||||||
{!isEmpty && monthlyData.length > 0 ? (
|
{!isEmpty && monthlyData.length > 0 ? (
|
||||||
<ResponsiveContainer width="100%" height="100%">
|
<ResponsiveContainer width="100%" height="100%">
|
||||||
<BarChart data={monthlyData} margin={{
|
<BarChart data={monthlyData} margin={{
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ const SummaryCards: React.FC<SummaryCardsProps> = ({
|
|||||||
const isMobile = useIsMobile();
|
const isMobile = useIsMobile();
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className={`grid ${isMobile ? 'grid-cols-1 gap-3' : 'grid-cols-3 gap-3'} mb-8 w-full`}>
|
<div className={`grid ${isMobile ? 'grid-cols-1' : 'grid-cols-3'} gap-3 mb-8 w-full`}>
|
||||||
<div className="neuro-card w-full">
|
<div className="neuro-card w-full">
|
||||||
<div className="flex items-center gap-2 mb-1 py-[5px]">
|
<div className="flex items-center gap-2 mb-1 py-[5px]">
|
||||||
<Wallet size={24} className="text-gray-500" />
|
<Wallet size={24} className="text-gray-500" />
|
||||||
|
|||||||
@@ -1,19 +1,25 @@
|
|||||||
|
|
||||||
import * as React from "react"
|
import * as React from "react"
|
||||||
|
|
||||||
const MOBILE_BREAKPOINT = 768
|
const MOBILE_BREAKPOINT = 768
|
||||||
|
|
||||||
export function useIsMobile() {
|
export function useIsMobile() {
|
||||||
const [isMobile, setIsMobile] = React.useState<boolean | undefined>(undefined)
|
const [isMobile, setIsMobile] = React.useState<boolean>(false)
|
||||||
|
|
||||||
React.useEffect(() => {
|
React.useEffect(() => {
|
||||||
const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`)
|
const checkMobile = () => {
|
||||||
const onChange = () => {
|
|
||||||
setIsMobile(window.innerWidth < MOBILE_BREAKPOINT)
|
setIsMobile(window.innerWidth < MOBILE_BREAKPOINT)
|
||||||
}
|
}
|
||||||
mql.addEventListener("change", onChange)
|
|
||||||
setIsMobile(window.innerWidth < MOBILE_BREAKPOINT)
|
// 초기 확인
|
||||||
return () => mql.removeEventListener("change", onChange)
|
checkMobile()
|
||||||
|
|
||||||
|
// 리사이즈 이벤트 리스너 추가
|
||||||
|
window.addEventListener('resize', checkMobile)
|
||||||
|
|
||||||
|
// 클린업 함수
|
||||||
|
return () => window.removeEventListener('resize', checkMobile)
|
||||||
}, [])
|
}, [])
|
||||||
|
|
||||||
return !!isMobile
|
return isMobile
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -144,6 +144,17 @@
|
|||||||
.neuro-input {
|
.neuro-input {
|
||||||
@apply neuro-pressed px-4 py-3 w-full focus:outline-none focus:ring-2 focus:ring-neuro-accent/30;
|
@apply neuro-pressed px-4 py-3 w-full focus:outline-none focus:ring-2 focus:ring-neuro-accent/30;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* 모바일 화면에서의 추가 스타일 */
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
.neuro-card {
|
||||||
|
@apply w-full;
|
||||||
|
}
|
||||||
|
|
||||||
|
#root {
|
||||||
|
@apply p-0;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.font-inter {
|
.font-inter {
|
||||||
|
|||||||
@@ -79,7 +79,7 @@ const Analytics = () => {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="min-h-screen bg-neuro-background pb-24">
|
<div className="min-h-screen bg-neuro-background pb-24">
|
||||||
<div className={`mx-auto ${isMobile ? 'w-full px-4' : 'max-w-lg px-4'}`}>
|
<div className={isMobile ? "w-full px-4" : "max-w-lg mx-auto px-4"}>
|
||||||
{/* Header */}
|
{/* Header */}
|
||||||
<header className="py-8 w-full">
|
<header className="py-8 w-full">
|
||||||
<h1 className="text-2xl font-bold neuro-text mb-5">지출 분석</h1>
|
<h1 className="text-2xl font-bold neuro-text mb-5">지출 분석</h1>
|
||||||
|
|||||||
Reference in New Issue
Block a user