feat(web): jump to timeline (#12117)

* feat(web): jump to timeline

* Update web/src/lib/components/memory-page/memory-viewer.svelte

Co-authored-by: Michel Heusschen <59014050+michelheusschen@users.noreply.github.com>

* wording and open in new tab

* Use correct wording and icon

* fix: hide on archived and trashed assets

---------

Co-authored-by: Michel Heusschen <59014050+michelheusschen@users.noreply.github.com>
Co-authored-by: Jason Rasmussen <jason@rasm.me>
This commit is contained in:
Alex 2024-08-29 16:14:52 -05:00 committed by GitHub
parent ebecb60f39
commit 6fe011e2d7
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 25 additions and 0 deletions

View File

@ -1,4 +1,5 @@
<script lang="ts"> <script lang="ts">
import { goto } from '$app/navigation';
import type { OnAction } from '$lib/components/asset-viewer/actions/action'; import type { OnAction } from '$lib/components/asset-viewer/actions/action';
import AddToAlbumAction from '$lib/components/asset-viewer/actions/add-to-album-action.svelte'; import AddToAlbumAction from '$lib/components/asset-viewer/actions/add-to-album-action.svelte';
import ArchiveAction from '$lib/components/asset-viewer/actions/archive-action.svelte'; import ArchiveAction from '$lib/components/asset-viewer/actions/archive-action.svelte';
@ -15,6 +16,7 @@
import CircleIconButton from '$lib/components/elements/buttons/circle-icon-button.svelte'; import CircleIconButton from '$lib/components/elements/buttons/circle-icon-button.svelte';
import ButtonContextMenu from '$lib/components/shared-components/context-menu/button-context-menu.svelte'; import ButtonContextMenu from '$lib/components/shared-components/context-menu/button-context-menu.svelte';
import MenuOption from '$lib/components/shared-components/context-menu/menu-option.svelte'; import MenuOption from '$lib/components/shared-components/context-menu/menu-option.svelte';
import { AppRoute } from '$lib/constants';
import { user } from '$lib/stores/user.store'; import { user } from '$lib/stores/user.store';
import { photoZoomState } from '$lib/stores/zoom-image.store'; import { photoZoomState } from '$lib/stores/zoom-image.store';
import { getAssetJobName, getSharedLink } from '$lib/utils'; import { getAssetJobName, getSharedLink } from '$lib/utils';
@ -33,6 +35,7 @@
mdiDatabaseRefreshOutline, mdiDatabaseRefreshOutline,
mdiDotsVertical, mdiDotsVertical,
mdiImageRefreshOutline, mdiImageRefreshOutline,
mdiImageSearch,
mdiMagnifyMinusOutline, mdiMagnifyMinusOutline,
mdiMagnifyPlusOutline, mdiMagnifyPlusOutline,
mdiPresentationPlay, mdiPresentationPlay,
@ -156,6 +159,13 @@
onClick={() => openFileUploadDialog({ multiple: false, assetId: asset.id })} onClick={() => openFileUploadDialog({ multiple: false, assetId: asset.id })}
text={$t('replace_with_upload')} text={$t('replace_with_upload')}
/> />
{#if !asset.isArchived && !asset.isTrashed}
<MenuOption
icon={mdiImageSearch}
onClick={() => goto(`${AppRoute.PHOTOS}?at=${asset.id}`)}
text={$t('view_in_timeline')}
/>
{/if}
<hr /> <hr />
<MenuOption <MenuOption
icon={mdiDatabaseRefreshOutline} icon={mdiDatabaseRefreshOutline}

View File

@ -28,6 +28,7 @@
mdiChevronRight, mdiChevronRight,
mdiChevronUp, mdiChevronUp,
mdiDotsVertical, mdiDotsVertical,
mdiImageSearch,
mdiPause, mdiPause,
mdiPlay, mdiPlay,
mdiPlus, mdiPlus,
@ -301,6 +302,19 @@
draggable="false" draggable="false"
/> />
{/key} {/key}
<div
class="absolute bottom-6 right-6 transition-all"
class:opacity-0={galleryInView}
class:opacity-100={!galleryInView}
>
<CircleIconButton
href="${AppRoute.PHOTOS}?at=${currentAsset.id}"
icon={mdiImageSearch}
title={$t('view_in_timeline')}
color="light"
/>
</div>
<!-- CONTROL BUTTONS --> <!-- CONTROL BUTTONS -->
{#if canGoBack} {#if canGoBack}
<div class="absolute top-1/2 left-0 ml-4"> <div class="absolute top-1/2 left-0 ml-4">

View File

@ -1259,6 +1259,7 @@
"view_album": "View Album", "view_album": "View Album",
"view_all": "View All", "view_all": "View All",
"view_all_users": "View all users", "view_all_users": "View all users",
"view_in_timeline": "View in timeline",
"view_links": "View links", "view_links": "View links",
"view_next_asset": "View next asset", "view_next_asset": "View next asset",
"view_previous_asset": "View previous asset", "view_previous_asset": "View previous asset",