[PR #2565] [MERGED] feat(web+server): map date filters + small changes #9601

Closed
opened 2026-02-05 14:07:34 +03:00 by OVERLORD · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/immich-app/immich/pull/2565
Author: @michelheusschen
Created: 5/25/2023
Status: Merged
Merged: 5/25/2023
Merged by: @alextran1502

Base: mainHead: feat/map-date-filters


📝 Commits (2)

  • e318874 feat(web+server): map date filters + small changes
  • 2c26e69 text change + code style

📊 Changes

18 files changed (+429 additions, -178 deletions)

View changed files

📝 mobile/openapi/doc/AssetApi.md (+6 -2)
📝 mobile/openapi/lib/api/asset_api.dart (+17 -3)
📝 mobile/openapi/test/asset_api_test.dart (+1 -1)
📝 server/immich-openapi-specs.json (+18 -0)
📝 server/libs/domain/src/asset/asset.repository.ts (+2 -0)
📝 server/libs/domain/src/asset/dto/map-marker.dto.ts (+13 -1)
📝 server/libs/infra/src/repositories/asset.repository.ts (+3 -1)
server/libs/infra/src/utils/optional-between.util.ts (+15 -0)
📝 web/src/api/open-api/api.ts (+27 -7)
📝 web/src/lib/components/map-page/map-settings-modal.svelte (+91 -2)
web/src/lib/components/shared-components/leaflet/asset-marker-cluster.css (+0 -39)
web/src/lib/components/shared-components/leaflet/asset-marker-cluster.svelte (+0 -95)
📝 web/src/lib/components/shared-components/leaflet/index.ts (+1 -1)
web/src/lib/components/shared-components/leaflet/marker-cluster/asset-marker-cluster.css (+32 -0)
web/src/lib/components/shared-components/leaflet/marker-cluster/asset-marker-cluster.svelte (+104 -0)
web/src/lib/components/shared-components/leaflet/marker-cluster/asset-marker.ts (+37 -0)
📝 web/src/lib/stores/preferences.store.ts (+4 -1)
📝 web/src/routes/(user)/map/+page.svelte (+58 -25)

📄 Description

Adds support for date filtering to the map. Can be used with a relative time (past 24 hours, 30 days, etc.) and with manual before/after dates. Also quite some other changes to the map, mainly related to clustering of asset markers:

  • Clicking a cluster now activates spiderfy instead of hovering, because I've found hovering to work pretty inconsistent and because of
  • Selecting a cluster allows you to click individual assets and opens the gallery viewer for that asset
  • Made clusters that cannot spiderfy (>10 assets) bigger to indicate that they go directly to the gallery viewer
  • Clustering is now based on zoom level which means less clusters when zoomed out and more when zooming in
  • Map is now completely zoomed out by default and no longer zooms to the first asset
  • Better performance and memory utilization of AssetMarker by deferring icon creation

map-date-filter-2map-date-filter-1


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/immich-app/immich/pull/2565 **Author:** [@michelheusschen](https://github.com/michelheusschen) **Created:** 5/25/2023 **Status:** ✅ Merged **Merged:** 5/25/2023 **Merged by:** [@alextran1502](https://github.com/alextran1502) **Base:** `main` ← **Head:** `feat/map-date-filters` --- ### 📝 Commits (2) - [`e318874`](https://github.com/immich-app/immich/commit/e3188742fa9e51c21ac4dd9e2ae275b60efc9e7c) feat(web+server): map date filters + small changes - [`2c26e69`](https://github.com/immich-app/immich/commit/2c26e693057a6ca5a4d02a77e32f071ffb6708b9) text change + code style ### 📊 Changes **18 files changed** (+429 additions, -178 deletions) <details> <summary>View changed files</summary> 📝 `mobile/openapi/doc/AssetApi.md` (+6 -2) 📝 `mobile/openapi/lib/api/asset_api.dart` (+17 -3) 📝 `mobile/openapi/test/asset_api_test.dart` (+1 -1) 📝 `server/immich-openapi-specs.json` (+18 -0) 📝 `server/libs/domain/src/asset/asset.repository.ts` (+2 -0) 📝 `server/libs/domain/src/asset/dto/map-marker.dto.ts` (+13 -1) 📝 `server/libs/infra/src/repositories/asset.repository.ts` (+3 -1) ➕ `server/libs/infra/src/utils/optional-between.util.ts` (+15 -0) 📝 `web/src/api/open-api/api.ts` (+27 -7) 📝 `web/src/lib/components/map-page/map-settings-modal.svelte` (+91 -2) ➖ `web/src/lib/components/shared-components/leaflet/asset-marker-cluster.css` (+0 -39) ➖ `web/src/lib/components/shared-components/leaflet/asset-marker-cluster.svelte` (+0 -95) 📝 `web/src/lib/components/shared-components/leaflet/index.ts` (+1 -1) ➕ `web/src/lib/components/shared-components/leaflet/marker-cluster/asset-marker-cluster.css` (+32 -0) ➕ `web/src/lib/components/shared-components/leaflet/marker-cluster/asset-marker-cluster.svelte` (+104 -0) ➕ `web/src/lib/components/shared-components/leaflet/marker-cluster/asset-marker.ts` (+37 -0) 📝 `web/src/lib/stores/preferences.store.ts` (+4 -1) 📝 `web/src/routes/(user)/map/+page.svelte` (+58 -25) </details> ### 📄 Description Adds support for date filtering to the map. Can be used with a relative time (past 24 hours, 30 days, etc.) and with manual before/after dates. Also quite some other changes to the map, mainly related to clustering of asset markers: - Clicking a cluster now activates spiderfy instead of hovering, because I've found hovering to work pretty inconsistent and because of - Selecting a cluster allows you to click individual assets and opens the gallery viewer for that asset - Made clusters that cannot spiderfy (>10 assets) bigger to indicate that they go directly to the gallery viewer - Clustering is now based on zoom level which means less clusters when zoomed out and more when zooming in - Map is now completely zoomed out by default and no longer zooms to the first asset - Better performance and memory utilization of `AssetMarker` by deferring icon creation ![map-date-filter-2](https://github.com/immich-app/immich/assets/59014050/e327bce3-ee2e-41b3-a2ee-4a79c1a51c33)![map-date-filter-1](https://github.com/immich-app/immich/assets/59014050/aa989589-b9cb-4d8f-94a4-609be52ad11c) --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
OVERLORD added the pull-request label 2026-02-05 14:07:34 +03:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: immich-app/immich#9601