mirror of
https://github.com/immich-app/immich.git
synced 2025-09-29 15:31:13 -04:00
Create abstract PhotostreamManager and PhotostreamSegment base classes to enable reusable timeline-like components. This refactoring extracts common viewport management, scroll handling, and segment operations from TimelineManager and MonthGroup into reusable abstractions. Changes: - Add PhotostreamManager.svelte.ts with viewport and scroll management - Add PhotostreamSegment.svelte.ts with segment positioning and intersection logic - Refactor TimelineManager to extend PhotostreamManager - Refactor MonthGroup to extend PhotostreamSegment - Add utility functions for segment identification and date formatting - Update tests to reflect new inheritance structure
Immich web project
This project uses the SvelteKit web framework. Please refer to the SvelteKit docs for information on getting started as a contributor to this project. In particular, it will help you navigate the project's code if you understand the basics of SvelteKit routing.
When developing locally, you will run a SvelteKit Node.js server. When this project is deployed to production, it is built as a SPA and deployed as part of the server project.