forked from MapComplete/MapComplete
		
	
		
			
				
	
	
		
			29 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Svelte
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Svelte
		
	
	
	
	
	
| <script lang="ts">
 | |
|   import Translations from "../i18n/Translations"
 | |
|   import Svg from "../../Svg"
 | |
|   import { Store } from "../../Logic/UIEventSource"
 | |
|   import Tr from "../Base/Tr.svelte"
 | |
|   import ToSvelte from "../Base/ToSvelte.svelte"
 | |
| 
 | |
|   /*
 | |
|     A subtleButton which opens mapillary in a new tab at the current location
 | |
|      */
 | |
| 
 | |
|   export let mapProperties: {
 | |
|     readonly zoom: Store<number>
 | |
|     readonly location: Store<{ lon: number; lat: number }>
 | |
|   }
 | |
|   let location = mapProperties.location
 | |
|   let zoom = mapProperties.zoom
 | |
|   let mapillaryLink = `https://www.mapillary.com/app/?focus=map&lat=${$location?.lat ?? 0}&lng=${
 | |
|     $location?.lon ?? 0
 | |
|   }&z=${Math.max(($zoom ?? 2) - 1, 1)}`
 | |
| </script>
 | |
| 
 | |
| <a class="button flex items-center" href={mapillaryLink} target="_blank">
 | |
|   <ToSvelte construct={() => Svg.mapillary_black_svg().SetClass("w-12 h-12 m-2 mr-4 shrink-0")} />
 | |
|   <div class="flex flex-col">
 | |
|     <Tr t={Translations.t.general.attribution.openMapillary} />
 | |
|     <Tr cls="subtle" t={Translations.t.general.attribution.mapillaryHelp} />
 | |
|   </div>
 | |
| </a>
 |