feat(ui): 360 panorama viewer by pano360 tag

- Detect 'pano360' tag and open the photo in a spherical viewer
- Mini-WebGL equirect viewer (no deps): drag to look, wheel FOV, Space reset
- Load original as origin-clean bitmap; fall back to flat image without WebGL
- 360 indicator in viewer and badge on grid tiles
This commit is contained in:
iu
2026-10-11 17:41:28 +03:00
parent 3311de57c5
commit fc4233cd57
9 changed files with 644 additions and 29 deletions
@@ -1,6 +1,7 @@
<script lang="ts">
import Icon from './Icon.svelte';
import { density } from '$lib/stores/density.svelte';
import { isPanoTag } from '$lib/pano';
import type { Photo } from '$lib/types';
interface Props {
@@ -74,6 +75,14 @@
обработка…
</span>
{/if}
{#if isPanoTag(photo)}
<span
class="bg-bg/70 text-text absolute top-1 left-1 rounded px-1.5 py-0.5 text-[10px] font-semibold"
aria-label="360-панорама"
>
360
</span>
{/if}
<span
class="bg-bg/70 text-text absolute right-1 bottom-1 flex items-center gap-1.5 rounded px-1.5 py-0.5 text-xs"
>