- 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>
36 lines
917 B
TypeScript
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;
|