Files
zellyy-finance/src/components/analytics/PeriodSelector.tsx
hansoo 9851627ff1 feat: Add CI/CD pipeline and code quality improvements
- Add GitHub Actions workflow for automated CI/CD
- Configure Node.js 18.x and 20.x matrix testing
- Add TypeScript type checking step
- Add ESLint code quality checks with enhanced rules
- Add Prettier formatting verification
- Add production build validation
- Upload build artifacts for deployment
- Set up automated testing on push/PR
- Replace console.log with environment-aware logger
- Add pre-commit hooks for code quality
- Exclude archive folder from linting

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-12 15:27:54 +09:00

36 lines
917 B
TypeScript

import React from "react";
import { ChevronLeft, ChevronRight } from "lucide-react";
import { useIsMobile } from "@/hooks/use-mobile";
interface PeriodSelectorProps {
selectedPeriod: string;
onPrevPeriod: () => void;
onNextPeriod: () => void;
}
const PeriodSelector: React.FC<PeriodSelectorProps> = ({
selectedPeriod,
onPrevPeriod,
onNextPeriod,
}) => {
const isMobile = useIsMobile();
return (
<div className="flex items-center justify-between mb-6 w-full">
<button className="neuro-flat p-2 rounded-full" onClick={onPrevPeriod}>
<ChevronLeft size={20} />
</button>
<div className="flex items-center">
<span className="font-medium text-lg">{selectedPeriod}</span>
</div>
<button className="neuro-flat p-2 rounded-full" onClick={onNextPeriod}>
<ChevronRight size={20} />
</button>
</div>
);
};
export default PeriodSelector;