chore: clean up codebase for production readiness
Mirror to GitHub / mirror (push) Successful in 44s
Test and Lint / backend-test (push) Successful in 1m42s
Test and Lint / frontend-test (push) Has been cancelled
Version and Release / version-bump (push) Has been cancelled
Version and Release / trigger-drone (push) Has been cancelled

- Remove all console.log/debug statements from production code
- Add NODE_ENV checks for development-only logging
- Remove test scripts (test-feedback, test-image-security, test-backup-*, test-restore)
- Remove one-time fix scripts (fix-temp-photos, fix-migration-state, mark-migration-applied)
- Remove sensitive files (.env.backup, ADMIN_CREDENTIALS.txt)
- Update package.json to remove references to deleted scripts
- Replace console statements with logger utility in backend
- Secure error boundaries to not expose stack traces in production

This makes the codebase production-ready with no debug output or test scripts.

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

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-08-24 23:19:30 +02:00
parent 827eb4819b
commit 1b4b497fdf
144 changed files with 12279 additions and 2018 deletions
@@ -12,7 +12,8 @@ export const TimelineGalleryLayout: React.FC<BaseGalleryLayoutProps> = ({
onDownload,
selectedPhotos = new Set(),
isSelectionMode = false,
onPhotoSelect
onPhotoSelect,
allowDownloads = true
}) => {
const { theme } = useTheme();
const gallerySettings = theme.gallerySettings || {};
@@ -103,6 +104,7 @@ export const TimelineGalleryLayout: React.FC<BaseGalleryLayoutProps> = ({
className="w-full h-full object-cover rounded-lg"
loading="lazy"
isGallery={true}
protectFromDownload={!allowDownloads}
/>
{/* Time label */}
@@ -123,16 +125,18 @@ export const TimelineGalleryLayout: React.FC<BaseGalleryLayoutProps> = ({
>
<Maximize2 className="w-5 h-5 text-neutral-800" />
</button>
<button
className="p-2 bg-white/90 rounded-full hover:bg-white transition-colors"
onClick={(e) => {
e.stopPropagation();
onDownload(photo, e);
}}
aria-label="Download photo"
>
<Download className="w-5 h-5 text-neutral-800" />
</button>
{allowDownloads && (
<button
className="p-2 bg-white/90 rounded-full hover:bg-white transition-colors"
onClick={(e) => {
e.stopPropagation();
onDownload(photo, e);
}}
aria-label="Download photo"
>
<Download className="w-5 h-5 text-neutral-800" />
</button>
)}
</>
)}
</div>