fix(photos): fix SQL type mismatch, pagination panic, missing icons, and add day/month/year grouping

- Fix photos endpoint 500: remove ::uuid cast on user_id WHERE clause (VARCHAR column)
- Fix pagination underflow panic when total_pages is 0
- Add missing 'images' and 'play' icons to SVG icon registry
- Add day/month/year grouping toggle with localStorage persistence
- Improve grid spacing and group header styling per mode
- Add i18n translations for grouping labels (all 9 locales)
This commit is contained in:
Jared Wolff
2026-03-05 14:46:30 -05:00
parent 53e4f5afe6
commit 6a84a5c44e
22 changed files with 220 additions and 64 deletions
+4 -1
View File
@@ -14,7 +14,10 @@
"photos": {
"empty_state": "Noch keine Fotos",
"empty_hint": "Laden Sie Bilder oder Videos hoch, um sie hier zu sehen",
"items_selected": "ausgewählt"
"items_selected": "ausgewählt",
"view_daily": "Tag",
"view_monthly": "Monat",
"view_yearly": "Jahr"
},
"actions": {
"search": "Dateien suchen...",
+4 -1
View File
@@ -14,7 +14,10 @@
"photos": {
"empty_state": "No photos yet",
"empty_hint": "Upload images or videos to see them here",
"items_selected": "selected"
"items_selected": "selected",
"view_daily": "Day",
"view_monthly": "Month",
"view_yearly": "Year"
},
"actions": {
"search": "Search files...",
+4 -1
View File
@@ -14,7 +14,10 @@
"photos": {
"empty_state": "Aún no hay fotos",
"empty_hint": "Sube imágenes o videos para verlos aquí",
"items_selected": "seleccionados"
"items_selected": "seleccionados",
"view_daily": "Día",
"view_monthly": "Mes",
"view_yearly": "Año"
},
"share": {
"dialogTitle": "Compartir Enlace",
+4 -1
View File
@@ -14,7 +14,10 @@
"photos": {
"empty_state": "هنوز عکسی نیست",
"empty_hint": "تصاویر یا ویدیوها را آپلود کنید تا اینجا نمایش داده شوند",
"items_selected": "انتخاب شده"
"items_selected": "انتخاب شده",
"view_daily": "روز",
"view_monthly": "ماه",
"view_yearly": "سال"
},
"actions": {
"search": "جست‌و‌جوی پرونده‌ها..",
+4 -1
View File
@@ -14,7 +14,10 @@
"photos": {
"empty_state": "Pas encore de photos",
"empty_hint": "Téléchargez des images ou des vidéos pour les voir ici",
"items_selected": "sélectionnés"
"items_selected": "sélectionnés",
"view_daily": "Jour",
"view_monthly": "Mois",
"view_yearly": "Année"
},
"actions": {
"search": "Rechercher des fichiers...",
+4 -1
View File
@@ -14,7 +14,10 @@
"photos": {
"empty_state": "Nessuna foto ancora",
"empty_hint": "Carica immagini o video per vederli qui",
"items_selected": "selezionati"
"items_selected": "selezionati",
"view_daily": "Giorno",
"view_monthly": "Mese",
"view_yearly": "Anno"
},
"actions": {
"search": "Cerca file...",
+4 -1
View File
@@ -14,7 +14,10 @@
"photos": {
"empty_state": "Nog geen foto's",
"empty_hint": "Upload afbeeldingen of video's om ze hier te zien",
"items_selected": "geselecteerd"
"items_selected": "geselecteerd",
"view_daily": "Dag",
"view_monthly": "Maand",
"view_yearly": "Jaar"
},
"actions": {
"search": "Zoek bestanden...",
+4 -1
View File
@@ -14,7 +14,10 @@
"photos": {
"empty_state": "Nenhuma foto ainda",
"empty_hint": "Envie imagens ou vídeos para vê-los aqui",
"items_selected": "selecionados"
"items_selected": "selecionados",
"view_daily": "Dia",
"view_monthly": "Mês",
"view_yearly": "Ano"
},
"actions": {
"search": "Pesquisar arquivos...",
+4 -1
View File
@@ -14,7 +14,10 @@
"photos": {
"empty_state": "还没有照片",
"empty_hint": "上传图片或视频即可在此查看",
"items_selected": "已选择"
"items_selected": "已选择",
"view_daily": "日",
"view_monthly": "月",
"view_yearly": "年"
},
"actions": {
"search": "搜索文件...",