feat(03-04): ImageGallery and ImageLightbox components

- ImageGallery renders horizontal scrolling thumbnails
- Edit mode shows delete buttons on images
- ImageLightbox provides fullscreen image viewer
- Keyboard navigation (Escape, arrows) in lightbox
- Click outside image or X button closes lightbox
- Image counter shown when multiple images
This commit is contained in:
Thomas Richter
2026-01-29 15:31:15 +01:00
parent 0188483036
commit eaf976f24b
4 changed files with 232 additions and 0 deletions

10
package-lock.json generated
View File

@@ -14,6 +14,7 @@
"nanoid": "^5.1.6",
"sharp": "^0.34.5",
"svelte-gestures": "^5.2.2",
"svelte-lightbox": "^1.1.7",
"svelte-persisted-store": "^0.12.0",
"tailwindcss": "^4.1.18",
"zod": "^4.3.6"
@@ -5249,6 +5250,15 @@
"integrity": "sha512-Y+chXPaSx8OsPoFppUwPk8PJzgrZ7xoDJKXeiEc7JBqyKKzXer9hlf8F9O34eFuAWB4/WQEvccACvyBplESL7A==",
"license": "MIT"
},
"node_modules/svelte-lightbox": {
"version": "1.1.7",
"resolved": "https://registry.npmjs.org/svelte-lightbox/-/svelte-lightbox-1.1.7.tgz",
"integrity": "sha512-D52LMtXbPRqgVjfe9+vYW43e+ROc2B3ci8CstfrJ2yJOi4bDkA7Wcis4MG625Hr1BDwhEZRgi5mI+TS9aYMagA==",
"license": "MIT",
"peerDependencies": {
"svelte": "^3.25.0 || ^4.0.0 || ^5.0.0"
}
},
"node_modules/svelte-persisted-store": {
"version": "0.12.0",
"resolved": "https://registry.npmjs.org/svelte-persisted-store/-/svelte-persisted-store-0.12.0.tgz",