| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | <script lang="ts"> | 
					
						
							|  |  |  |   // All the relevant links | 
					
						
							|  |  |  |   import ThemeViewState from "../../Models/ThemeViewState" | 
					
						
							|  |  |  |   import Translations from "../i18n/Translations" | 
					
						
							| 
									
										
										
										
											2024-09-09 16:53:40 +02:00
										 |  |  |   import { CogIcon, EyeIcon, HeartIcon, TranslateIcon } from "@rgossiaux/svelte-heroicons/solid" | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  |   import Page from "../Base/Page.svelte" | 
					
						
							|  |  |  |   import PrivacyPolicy from "./PrivacyPolicy.svelte" | 
					
						
							|  |  |  |   import Tr from "../Base/Tr.svelte" | 
					
						
							|  |  |  |   import If from "../Base/If.svelte" | 
					
						
							|  |  |  |   import CommunityIndexView from "./CommunityIndexView.svelte" | 
					
						
							|  |  |  |   import Community from "../../assets/svg/Community.svelte" | 
					
						
							|  |  |  |   import LoginToggle from "../Base/LoginToggle.svelte" | 
					
						
							| 
									
										
										
										
											2024-09-03 01:14:08 +02:00
										 |  |  |   import { CloseButton } from "flowbite-svelte" | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  |   import HotkeyTable from "./HotkeyTable.svelte" | 
					
						
							|  |  |  |   import { Utils } from "../../Utils" | 
					
						
							|  |  |  |   import Constants from "../../Models/Constants" | 
					
						
							|  |  |  |   import Mastodon from "../../assets/svg/Mastodon.svelte" | 
					
						
							|  |  |  |   import Liberapay from "../../assets/svg/Liberapay.svelte" | 
					
						
							|  |  |  |   import DocumentMagnifyingGlass from "@babeard/svelte-heroicons/outline/DocumentMagnifyingGlass" | 
					
						
							|  |  |  |   import DocumentChartBar from "@babeard/svelte-heroicons/outline/DocumentChartBar" | 
					
						
							|  |  |  |   import OpenIdEditor from "./OpenIdEditor.svelte" | 
					
						
							|  |  |  |   import OpenJosm from "../Base/OpenJosm.svelte" | 
					
						
							|  |  |  |   import MapillaryLink from "./MapillaryLink.svelte" | 
					
						
							|  |  |  |   import Bug from "../../assets/svg/Bug.svelte" | 
					
						
							|  |  |  |   import CopyrightPanel from "./CopyrightPanel.svelte" | 
					
						
							|  |  |  |   import CopyrightAllIcons from "./CopyrightAllIcons.svelte" | 
					
						
							|  |  |  |   import LanguagePicker from "../InputElement/LanguagePicker.svelte" | 
					
						
							|  |  |  |   import LoginButton from "../Base/LoginButton.svelte" | 
					
						
							|  |  |  |   import SelectedElementView from "./SelectedElementView.svelte" | 
					
						
							|  |  |  |   import LayerConfig from "../../Models/ThemeConfig/LayerConfig" | 
					
						
							|  |  |  |   import type { LayerConfigJson } from "../../Models/ThemeConfig/Json/LayerConfigJson" | 
					
						
							|  |  |  |   import usersettings from "../../assets/generated/layers/usersettings.json" | 
					
						
							|  |  |  |   import UserRelatedState from "../../Logic/State/UserRelatedState" | 
					
						
							|  |  |  |   import ArrowDownTray from "@babeard/svelte-heroicons/mini/ArrowDownTray" | 
					
						
							|  |  |  |   import DownloadPanel from "../DownloadFlow/DownloadPanel.svelte" | 
					
						
							|  |  |  |   import Favourites from "../Favourites/Favourites.svelte" | 
					
						
							|  |  |  |   import ReviewsOverview from "../Reviews/ReviewsOverview.svelte" | 
					
						
							|  |  |  |   import Share from "@babeard/svelte-heroicons/solid/Share" | 
					
						
							|  |  |  |   import ShareScreen from "./ShareScreen.svelte" | 
					
						
							|  |  |  |   import FilterPage from "./FilterPage.svelte" | 
					
						
							|  |  |  |   import RasterLayerOverview from "../Map/RasterLayerOverview.svelte" | 
					
						
							|  |  |  |   import ThemeIntroPanel from "./ThemeIntroPanel.svelte" | 
					
						
							|  |  |  |   import Marker from "../Map/Marker.svelte" | 
					
						
							|  |  |  |   import LogoutButton from "../Base/LogoutButton.svelte" | 
					
						
							| 
									
										
										
										
											2024-10-08 12:48:01 +02:00
										 |  |  |   import { BoltIcon, ShareIcon } from "@babeard/svelte-heroicons/mini" | 
					
						
							| 
									
										
										
										
											2024-08-29 16:19:08 +02:00
										 |  |  |   import Copyright from "../../assets/svg/Copyright.svelte" | 
					
						
							| 
									
										
										
										
											2024-09-02 00:26:02 +02:00
										 |  |  |   import Pencil from "../../assets/svg/Pencil.svelte" | 
					
						
							| 
									
										
										
										
											2024-09-03 01:14:08 +02:00
										 |  |  |   import SidebarUnit from "../Base/SidebarUnit.svelte" | 
					
						
							| 
									
										
										
										
											2024-09-19 18:22:35 +02:00
										 |  |  |   import Squares2x2 from "@babeard/svelte-heroicons/mini/Squares2x2" | 
					
						
							|  |  |  |   import EnvelopeOpen from "@babeard/svelte-heroicons/mini/EnvelopeOpen" | 
					
						
							| 
									
										
										
										
											2024-09-30 01:08:07 +02:00
										 |  |  |   import PanoramaxLink from "./PanoramaxLink.svelte" | 
					
						
							| 
									
										
										
										
											2024-11-26 20:15:41 +01:00
										 |  |  |   import { UIEventSource } from "../../Logic/UIEventSource" | 
					
						
							| 
									
										
										
										
											2024-12-05 00:09:42 +01:00
										 |  |  |   import MagnifyingGlassCircle from "@babeard/svelte-heroicons/mini/MagnifyingGlassCircle" | 
					
						
							| 
									
										
										
										
											2024-12-12 00:46:24 +01:00
										 |  |  |   import { AndroidPolyfill } from "../../Logic/Web/AndroidPolyfill" | 
					
						
							| 
									
										
										
										
											2025-01-28 15:38:46 +01:00
										 |  |  |   import Forgejo from "../../assets/svg/Forgejo.svelte" | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |   export let state: ThemeViewState | 
					
						
							|  |  |  |   let userdetails = state.osmConnection.userDetails | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   let usersettingslayer = new LayerConfig(<LayerConfigJson>usersettings, "usersettings", true) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-10-17 04:06:03 +02:00
										 |  |  |   let theme = state.theme | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  |   let featureSwitches = state.featureSwitches | 
					
						
							|  |  |  |   let showHome = featureSwitches.featureSwitchBackToThemeOverview | 
					
						
							|  |  |  |   let pg = state.guistate.pageStates | 
					
						
							| 
									
										
										
										
											2024-10-08 12:48:01 +02:00
										 |  |  |   let location = state.mapProperties.location | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  |   export let onlyLink: boolean | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |   const t = Translations.t.general.menu | 
					
						
							| 
									
										
										
										
											2024-11-27 01:25:33 +01:00
										 |  |  |   let shown = new UIEventSource(state.guistate.pageStates.menu.data || !onlyLink) | 
					
						
							| 
									
										
										
										
											2024-11-28 12:00:23 +01:00
										 |  |  |   state.guistate.pageStates.menu.addCallback((isShown) => { | 
					
						
							|  |  |  |     if (!onlyLink) { | 
					
						
							| 
									
										
										
										
											2024-11-27 01:25:33 +01:00
										 |  |  |       return true | 
					
						
							|  |  |  |     } | 
					
						
							| 
									
										
										
										
											2024-11-28 12:00:23 +01:00
										 |  |  |     if (isShown) { | 
					
						
							| 
									
										
										
										
											2024-11-26 20:15:41 +01:00
										 |  |  |       shown.setData(true) | 
					
						
							| 
									
										
										
										
											2024-11-28 12:00:23 +01:00
										 |  |  |     } else { | 
					
						
							| 
									
										
										
										
											2024-11-26 20:15:41 +01:00
										 |  |  |       Utils.waitFor(250).then(() => { | 
					
						
							|  |  |  |         shown.setData(state.guistate.pageStates.menu.data) | 
					
						
							|  |  |  |       }) | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  |   }) | 
					
						
							| 
									
										
										
										
											2024-12-12 00:46:24 +01:00
										 |  |  |   let isAndroid = AndroidPolyfill.inAndroid | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | </script> | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-11-28 12:00:23 +01:00
										 |  |  | <div | 
					
						
							|  |  |  |   class="low-interaction flex h-screen flex-col gap-y-2 overflow-y-auto p-2 sm:gap-y-3 sm:p-3" | 
					
						
							|  |  |  |   class:hidden={!$shown} | 
					
						
							|  |  |  | > | 
					
						
							| 
									
										
										
										
											2024-09-02 00:26:02 +02:00
										 |  |  |   <div class="flex justify-between"> | 
					
						
							|  |  |  |     <h2> | 
					
						
							| 
									
										
										
										
											2024-09-02 12:48:15 +02:00
										 |  |  |       <Tr t={t.title} /> | 
					
						
							| 
									
										
										
										
											2024-09-02 00:26:02 +02:00
										 |  |  |     </h2> | 
					
						
							| 
									
										
										
										
											2024-09-02 12:48:15 +02:00
										 |  |  |     <CloseButton | 
					
						
							|  |  |  |       on:click={() => { | 
					
						
							|  |  |  |         pg.menu.set(false) | 
					
						
							|  |  |  |       }} | 
					
						
							|  |  |  |     /> | 
					
						
							| 
									
										
										
										
											2024-09-02 00:26:02 +02:00
										 |  |  |   </div> | 
					
						
							|  |  |  |   {#if $showHome} | 
					
						
							| 
									
										
										
										
											2024-09-02 12:48:15 +02:00
										 |  |  |     <a class="button primary flex" href={Utils.HomepageLink()}> | 
					
						
							| 
									
										
										
										
											2024-09-02 00:26:02 +02:00
										 |  |  |       <Squares2x2 class="h-10 w-10" /> | 
					
						
							|  |  |  |       {#if Utils.isIframe} | 
					
						
							|  |  |  |         <Tr t={Translations.t.general.seeIndex} /> | 
					
						
							|  |  |  |       {:else} | 
					
						
							|  |  |  |         <Tr t={Translations.t.general.backToIndex} /> | 
					
						
							|  |  |  |       {/if} | 
					
						
							|  |  |  |     </a> | 
					
						
							|  |  |  |   {/if} | 
					
						
							| 
									
										
										
										
											2024-08-31 12:29:24 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |   <!-- User related: avatar, settings, favourits, logout --> | 
					
						
							| 
									
										
										
										
											2024-09-03 01:14:08 +02:00
										 |  |  |   <SidebarUnit> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     <LoginToggle {state}> | 
					
						
							| 
									
										
										
										
											2024-09-02 12:48:15 +02:00
										 |  |  |       <LoginButton osmConnection={state.osmConnection} slot="not-logged-in" /> | 
					
						
							|  |  |  |       <div class="flex items-center gap-x-4"> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |         {#if $userdetails.img} | 
					
						
							| 
									
										
										
										
											2024-09-16 15:12:05 +02:00
										 |  |  |           <img alt="avatar" src={$userdetails.img} class="h-14 w-14 rounded-full" /> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |         {/if} | 
					
						
							|  |  |  |         <b>{$userdetails.name}</b> | 
					
						
							|  |  |  |       </div> | 
					
						
							|  |  |  |     </LoginToggle> | 
					
						
							| 
									
										
										
										
											2024-08-29 16:19:08 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-09-16 17:04:43 +02:00
										 |  |  |     <Page {onlyLink} shown={pg.usersettings} bodyPadding="p-0 pb-4"> | 
					
						
							| 
									
										
										
										
											2024-09-02 11:46:45 +02:00
										 |  |  |       <svelte:fragment slot="header"> | 
					
						
							| 
									
										
										
										
											2024-09-02 12:48:15 +02:00
										 |  |  |         <CogIcon /> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |         <Tr t={UserRelatedState.usersettingsConfig.title.GetRenderValue({})} /> | 
					
						
							| 
									
										
										
										
											2024-09-02 11:46:45 +02:00
										 |  |  |       </svelte:fragment> | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |       <!-- All shown components are set by 'usersettings.json', which happily uses some special visualisations created specifically for it --> | 
					
						
							| 
									
										
										
										
											2025-01-28 15:42:34 +01:00
										 |  |  |       <SelectedElementView | 
					
						
							|  |  |  |         highlightedRendering={state.guistate.highlightedUserSetting} | 
					
						
							|  |  |  |         layer={usersettingslayer} | 
					
						
							|  |  |  |         selectedElement={{ | 
					
						
							|  |  |  |           type: "Feature", | 
					
						
							|  |  |  |           properties: { id: "settings" }, | 
					
						
							|  |  |  |           geometry: { type: "Point", coordinates: [0, 0] }, | 
					
						
							|  |  |  |         }} | 
					
						
							|  |  |  |         {state} | 
					
						
							|  |  |  |         tags={state.userRelatedState.preferencesAsTags} | 
					
						
							|  |  |  |       /> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     </Page> | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-12-15 22:39:22 +01:00
										 |  |  |     <LoginToggle {state} silentFail> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |       <Page {onlyLink} shown={pg.favourites}> | 
					
						
							| 
									
										
										
										
											2024-09-02 11:46:45 +02:00
										 |  |  |         <svelte:fragment slot="header"> | 
					
						
							|  |  |  |           <HeartIcon /> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |           <Tr t={Translations.t.favouritePoi.tab} /> | 
					
						
							| 
									
										
										
										
											2024-09-02 11:46:45 +02:00
										 |  |  |         </svelte:fragment> | 
					
						
							| 
									
										
										
										
											2024-09-02 00:26:02 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |         <h3> | 
					
						
							|  |  |  |           <Tr t={Translations.t.favouritePoi.title} /> | 
					
						
							|  |  |  |         </h3> | 
					
						
							|  |  |  |         <div> | 
					
						
							|  |  |  |           <Favourites {state} /> | 
					
						
							|  |  |  |           <h3> | 
					
						
							|  |  |  |             <Tr t={Translations.t.reviews.your_reviews} /> | 
					
						
							| 
									
										
										
										
											2024-08-29 16:19:08 +02:00
										 |  |  |           </h3> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |           <ReviewsOverview {state} /> | 
					
						
							| 
									
										
										
										
											2024-08-29 16:19:08 +02:00
										 |  |  |         </div> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |       </Page> | 
					
						
							|  |  |  |       <div class="self-end"> | 
					
						
							|  |  |  |         <LogoutButton osmConnection={state.osmConnection} /> | 
					
						
							| 
									
										
										
										
											2024-08-29 16:19:08 +02:00
										 |  |  |       </div> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     </LoginToggle> | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     <LanguagePicker /> | 
					
						
							| 
									
										
										
										
											2024-09-03 01:14:08 +02:00
										 |  |  |   </SidebarUnit> | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |   <!-- Theme related: documentation links, download, ... --> | 
					
						
							| 
									
										
										
										
											2024-09-03 01:14:08 +02:00
										 |  |  |   <SidebarUnit> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     <h3> | 
					
						
							|  |  |  |       <Tr t={t.aboutCurrentThemeTitle} /> | 
					
						
							|  |  |  |     </h3> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     <Page {onlyLink} shown={pg.about_theme}> | 
					
						
							| 
									
										
										
										
											2024-09-02 13:39:13 +02:00
										 |  |  |       <svelte:fragment slot="link"> | 
					
						
							| 
									
										
										
										
											2024-10-17 04:06:03 +02:00
										 |  |  |         <Marker size="h-7 w-7" icons={theme.icon} /> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |         <Tr t={t.showIntroduction} /> | 
					
						
							| 
									
										
										
										
											2024-09-02 13:39:13 +02:00
										 |  |  |       </svelte:fragment> | 
					
						
							| 
									
										
										
										
											2024-09-02 12:48:15 +02:00
										 |  |  |       <svelte:fragment slot="header"> | 
					
						
							| 
									
										
										
										
											2024-10-17 04:06:03 +02:00
										 |  |  |         <Marker size="h-8 w-8 mr-3" icons={theme.icon} /> | 
					
						
							|  |  |  |         <Tr t={theme.title} /> | 
					
						
							| 
									
										
										
										
											2024-09-02 11:46:45 +02:00
										 |  |  |       </svelte:fragment> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |       <ThemeIntroPanel {state} /> | 
					
						
							|  |  |  |     </Page> | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     <FilterPage {onlyLink} {state} /> | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     <RasterLayerOverview {onlyLink} {state} /> | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     <Page {onlyLink} shown={pg.share}> | 
					
						
							| 
									
										
										
										
											2024-09-02 11:46:45 +02:00
										 |  |  |       <svelte:fragment slot="header"> | 
					
						
							| 
									
										
										
										
											2024-09-02 12:48:15 +02:00
										 |  |  |         <Share /> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |         <Tr t={Translations.t.general.sharescreen.title} /> | 
					
						
							| 
									
										
										
										
											2024-09-02 11:46:45 +02:00
										 |  |  |       </svelte:fragment> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |       <ShareScreen {state} /> | 
					
						
							|  |  |  |     </Page> | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     {#if state.featureSwitches.featureSwitchEnableExport} | 
					
						
							|  |  |  |       <Page {onlyLink} shown={pg.download}> | 
					
						
							| 
									
										
										
										
											2024-09-02 11:46:45 +02:00
										 |  |  |         <svelte:fragment slot="header"> | 
					
						
							| 
									
										
										
										
											2024-09-02 12:48:15 +02:00
										 |  |  |           <ArrowDownTray /> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |           <Tr t={Translations.t.general.download.title} /> | 
					
						
							| 
									
										
										
										
											2024-09-02 11:46:45 +02:00
										 |  |  |         </svelte:fragment> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |         <DownloadPanel {state} /> | 
					
						
							| 
									
										
										
										
											2024-08-29 16:19:08 +02:00
										 |  |  |       </Page> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     {/if} | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-10-17 04:06:03 +02:00
										 |  |  |     {#if theme.official} | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |       <a | 
					
						
							|  |  |  |         class="flex" | 
					
						
							| 
									
										
										
										
											2025-01-28 15:38:46 +01:00
										 |  |  |         href={"https://source.mapcomplete.org/MapComplete/MapComplete/src/branch/develop/Docs/Themes" + | 
					
						
							| 
									
										
										
										
											2024-10-17 04:06:03 +02:00
										 |  |  |           theme.id + | 
					
						
							| 
									
										
										
										
											2024-09-02 12:48:15 +02:00
										 |  |  |           ".md"} | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |         target="_blank" | 
					
						
							|  |  |  |       > | 
					
						
							|  |  |  |         <DocumentMagnifyingGlass class="h-6 w-6" /> | 
					
						
							|  |  |  |         <Tr | 
					
						
							|  |  |  |           t={Translations.t.general.attribution.openThemeDocumentation.Subs({ | 
					
						
							| 
									
										
										
										
											2024-10-17 04:06:03 +02:00
										 |  |  |             name: theme.title, | 
					
						
							| 
									
										
										
										
											2024-09-02 12:48:15 +02:00
										 |  |  |           })} | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |         /> | 
					
						
							|  |  |  |       </a> | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-10-17 04:06:03 +02:00
										 |  |  |       <a class="flex" href={Utils.OsmChaLinkFor(31, theme.id)} target="_blank"> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |         <DocumentChartBar class="h-6 w-6" /> | 
					
						
							| 
									
										
										
										
											2024-10-17 04:06:03 +02:00
										 |  |  |         <Tr t={Translations.t.general.attribution.openOsmcha.Subs({ theme: theme.title })} /> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |       </a> | 
					
						
							|  |  |  |     {/if} | 
					
						
							| 
									
										
										
										
											2024-09-03 01:14:08 +02:00
										 |  |  |   </SidebarUnit> | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |   <!-- Other links and tools for the given location: open iD/JOSM; community index, ... --> | 
					
						
							| 
									
										
										
										
											2024-09-03 01:14:08 +02:00
										 |  |  |   <SidebarUnit> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     <h3> | 
					
						
							|  |  |  |       <Tr t={t.moreUtilsTitle} /> | 
					
						
							|  |  |  |     </h3> | 
					
						
							| 
									
										
										
										
											2024-09-02 00:26:02 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     <Page {onlyLink} shown={pg.community_index}> | 
					
						
							| 
									
										
										
										
											2024-09-02 11:46:45 +02:00
										 |  |  |       <svelte:fragment slot="header"> | 
					
						
							| 
									
										
										
										
											2024-09-02 12:48:15 +02:00
										 |  |  |         <Community /> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |         <Tr t={Translations.t.communityIndex.title} /> | 
					
						
							| 
									
										
										
										
											2024-09-02 11:46:45 +02:00
										 |  |  |       </svelte:fragment> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |       <CommunityIndexView location={state.mapProperties.location} /> | 
					
						
							|  |  |  |     </Page> | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     <If condition={featureSwitches.featureSwitchEnableLogin}> | 
					
						
							|  |  |  |       <OpenIdEditor mapProperties={state.mapProperties} /> | 
					
						
							|  |  |  |       <OpenJosm {state} /> | 
					
						
							| 
									
										
										
										
											2024-09-30 01:08:07 +02:00
										 |  |  |       <PanoramaxLink large={false} mapProperties={state.mapProperties} /> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |       <MapillaryLink large={false} mapProperties={state.mapProperties} /> | 
					
						
							|  |  |  |     </If> | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-10-19 14:44:55 +02:00
										 |  |  |     <a class="sidebar-button flex" href="geo:{$location.lat},{$location.lon}"> | 
					
						
							| 
									
										
										
										
											2024-12-12 00:46:24 +01:00
										 |  |  |       <ShareIcon /> | 
					
						
							|  |  |  |       <Tr t={t.openHereDifferentApp} /> | 
					
						
							| 
									
										
										
										
											2024-10-19 14:44:55 +02:00
										 |  |  |     </a> | 
					
						
							| 
									
										
										
										
											2024-09-03 01:14:08 +02:00
										 |  |  |   </SidebarUnit> | 
					
						
							| 
									
										
										
										
											2024-08-29 03:53:54 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |   <!-- About MC: various outward links, legal info, ... --> | 
					
						
							| 
									
										
										
										
											2024-09-03 01:14:08 +02:00
										 |  |  |   <SidebarUnit> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     <h3> | 
					
						
							|  |  |  |       <Tr t={Translations.t.general.menu.aboutMapComplete} /> | 
					
						
							|  |  |  |     </h3> | 
					
						
							| 
									
										
										
										
											2024-08-29 03:53:54 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-09-02 12:48:15 +02:00
										 |  |  |     <a class="flex" href={window.location.protocol + "//" + window.location.host + "/studio.html"}> | 
					
						
							| 
									
										
										
										
											2024-09-02 00:26:02 +02:00
										 |  |  |       <Pencil class="mr-2 h-6 w-6" /> | 
					
						
							|  |  |  |       <Tr t={Translations.t.general.morescreen.createYourOwnTheme} /> | 
					
						
							|  |  |  |     </a> | 
					
						
							| 
									
										
										
										
											2024-08-29 03:53:54 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-09-02 00:26:02 +02:00
										 |  |  |     <div class="hidden-on-mobile w-full"> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |       <Page {onlyLink} shown={pg.hotkeys}> | 
					
						
							| 
									
										
										
										
											2024-09-02 12:48:15 +02:00
										 |  |  |         <svelte:fragment slot="header"> | 
					
						
							| 
									
										
										
										
											2024-09-02 11:46:45 +02:00
										 |  |  |           <BoltIcon /> | 
					
						
							| 
									
										
										
										
											2024-09-02 12:48:15 +02:00
										 |  |  |           <Tr t={Translations.t.hotkeyDocumentation.title} /> | 
					
						
							| 
									
										
										
										
											2024-09-02 11:46:45 +02:00
										 |  |  |         </svelte:fragment> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |         <HotkeyTable /> | 
					
						
							|  |  |  |       </Page> | 
					
						
							|  |  |  |     </div> | 
					
						
							| 
									
										
										
										
											2024-08-29 16:19:08 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-12-05 00:09:42 +01:00
										 |  |  |     <a | 
					
						
							|  |  |  |       class="flex" | 
					
						
							|  |  |  |       href={window.location.protocol + "//" + window.location.host + "/inspector.html"} | 
					
						
							|  |  |  |     > | 
					
						
							| 
									
										
										
										
											2024-12-03 19:26:29 +01:00
										 |  |  |       <MagnifyingGlassCircle class="mr-2 h-6 w-6" /> | 
					
						
							|  |  |  |       <Tr t={Translations.t.inspector.menu} /> | 
					
						
							|  |  |  |     </a> | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-01-28 15:38:46 +01:00
										 |  |  |     <a class="flex" href="https://source.mapcomplete.org/MapComplete/MapComplete/" target="_blank"> | 
					
						
							|  |  |  |       <Forgejo class="h-6 w-6" /> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |       <Tr t={Translations.t.general.attribution.gotoSourceCode} /> | 
					
						
							|  |  |  |     </a> | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2025-01-28 15:42:34 +01:00
										 |  |  |     <a | 
					
						
							|  |  |  |       class="flex" | 
					
						
							|  |  |  |       href="https://source.mapcomplete.org/MapComplete/MapComplete/issues" | 
					
						
							|  |  |  |       target="_blank" | 
					
						
							|  |  |  |     > | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |       <Bug class="h-6 w-6" /> | 
					
						
							|  |  |  |       <Tr t={Translations.t.general.attribution.openIssueTracker} /> | 
					
						
							|  |  |  |     </a> | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-09-19 18:22:35 +02:00
										 |  |  |     <a class="flex" href="mailto:info@mapcomplete.org"> | 
					
						
							| 
									
										
										
										
											2024-10-19 14:44:55 +02:00
										 |  |  |       <EnvelopeOpen class="h-6 w-6" /> | 
					
						
							|  |  |  |       <Tr t={Translations.t.general.attribution.emailCreators} /> | 
					
						
							| 
									
										
										
										
											2024-09-19 18:22:35 +02:00
										 |  |  |     </a> | 
					
						
							| 
									
										
										
										
											2024-11-14 00:55:51 +01:00
										 |  |  |     <a class="flex" href={`${Constants.weblate}projects/mapcomplete/`} target="_blank"> | 
					
						
							| 
									
										
										
										
											2024-10-19 14:44:55 +02:00
										 |  |  |       <TranslateIcon class="h-6 w-6" /> | 
					
						
							| 
									
										
										
										
											2024-09-09 16:53:40 +02:00
										 |  |  |       <Tr t={Translations.t.translations.activateButton} /> | 
					
						
							|  |  |  |     </a> | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     <a class="flex" href="https://en.osm.town/@MapComplete" target="_blank"> | 
					
						
							|  |  |  |       <Mastodon class="h-6 w-6" /> | 
					
						
							|  |  |  |       <Tr t={Translations.t.general.attribution.followOnMastodon} /> | 
					
						
							|  |  |  |     </a> | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     <a class="flex" href="https://liberapay.com/pietervdvn/" target="_blank"> | 
					
						
							|  |  |  |       <Liberapay class="h-6 w-6" /> | 
					
						
							|  |  |  |       <Tr t={Translations.t.general.attribution.donate} /> | 
					
						
							|  |  |  |     </a> | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     <Page {onlyLink} shown={pg.copyright}> | 
					
						
							| 
									
										
										
										
											2024-09-02 11:46:45 +02:00
										 |  |  |       <svelte:fragment slot="header"> | 
					
						
							|  |  |  |         <Copyright /> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |         <Tr t={Translations.t.general.attribution.attributionTitle} /> | 
					
						
							| 
									
										
										
										
											2024-09-02 11:46:45 +02:00
										 |  |  |       </svelte:fragment> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |       <CopyrightPanel {state} /> | 
					
						
							|  |  |  |     </Page> | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     <Page {onlyLink} shown={pg.copyright_icons}> | 
					
						
							| 
									
										
										
										
											2024-09-02 12:48:15 +02:00
										 |  |  |       <svelte:fragment slot="header"> | 
					
						
							|  |  |  |         <Copyright /> | 
					
						
							|  |  |  |         <Tr t={Translations.t.general.attribution.iconAttribution.title} /> | 
					
						
							| 
									
										
										
										
											2024-09-02 11:46:45 +02:00
										 |  |  |       </svelte:fragment> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |       <CopyrightAllIcons {state} /> | 
					
						
							|  |  |  |     </Page> | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     <Page {onlyLink} shown={pg.privacy}> | 
					
						
							| 
									
										
										
										
											2024-09-02 11:46:45 +02:00
										 |  |  |       <svelte:fragment slot="header"> | 
					
						
							|  |  |  |         <EyeIcon /> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |         <Tr t={Translations.t.privacy.title} /> | 
					
						
							| 
									
										
										
										
											2024-09-02 11:46:45 +02:00
										 |  |  |       </svelte:fragment> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |       <PrivacyPolicy {state} /> | 
					
						
							|  |  |  |     </Page> | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  |     <div class="subtle self-end"> | 
					
						
							|  |  |  |       {Constants.vNumber} | 
					
						
							| 
									
										
										
										
											2024-12-12 00:46:24 +01:00
										 |  |  |       {#if $isAndroid} | 
					
						
							|  |  |  |         Android | 
					
						
							|  |  |  |       {/if} | 
					
						
							| 
									
										
										
										
											2024-08-29 02:46:51 +02:00
										 |  |  |     </div> | 
					
						
							| 
									
										
										
										
											2024-09-03 01:14:08 +02:00
										 |  |  |   </SidebarUnit> | 
					
						
							| 
									
										
										
										
											2024-08-29 23:11:59 +02:00
										 |  |  | </div> |