mirror of
https://github.com/seanmorley15/AdventureLog.git
synced 2025-08-04 12:45:17 +02:00
Enhance image navigation and localization support in modal components
This commit is contained in:
parent
19465077c0
commit
1f94b39b27
16 changed files with 1059 additions and 892 deletions
|
@ -33,146 +33,201 @@
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<dialog id="about_modal" class="modal backdrop-blur-md bg-opacity-70">
|
<dialog id="about_modal" class="modal backdrop-blur-sm">
|
||||||
<!-- svelte-ignore a11y-no-noninteractive-tabindex -->
|
<!-- svelte-ignore a11y-no-noninteractive-tabindex -->
|
||||||
<!-- svelte-ignore a11y-no-noninteractive-element-interactions -->
|
<!-- svelte-ignore a11y-no-noninteractive-element-interactions -->
|
||||||
<div
|
<div
|
||||||
class="modal-box rounded-xl shadow-lg backdrop-blur-lg bg-white/80 dark:bg-gray-900/80 transition-transform duration-300 ease-out transform scale-100"
|
class="modal-box w-11/12 max-w-2xl bg-gradient-to-br from-base-100 via-base-100 to-base-200 border border-base-300 shadow-2xl"
|
||||||
role="dialog"
|
role="dialog"
|
||||||
on:keydown={handleKeydown}
|
on:keydown={handleKeydown}
|
||||||
tabindex="0"
|
tabindex="0"
|
||||||
>
|
>
|
||||||
<!-- Branding -->
|
<!-- Header -->
|
||||||
<div class="text-center">
|
<div class="flex items-center justify-between mb-6">
|
||||||
<h3
|
<div class="flex items-center gap-3">
|
||||||
class="text-2xl font-extrabold text-gray-800 dark:text-white flex items-center justify-center"
|
<div class="p-2 bg-primary/10 rounded-lg">
|
||||||
>
|
<img src="/favicon.png" alt="AdventureLog" class="w-12 h-12" />
|
||||||
{$t('about.about')} AdventureLog
|
</div>
|
||||||
<img src="/favicon.png" alt="Map Logo" class="w-12 h-12 ml-3 inline-block" />
|
<div>
|
||||||
</h3>
|
<h1 class="text-2xl font-bold text-primary">
|
||||||
<p class="mt-2 text-gray-500 dark:text-gray-300 text-sm">
|
{$t('about.about')} AdventureLog
|
||||||
AdventureLog
|
</h1>
|
||||||
<a
|
</div>
|
||||||
href={versionChangelog}
|
</div>
|
||||||
target="_blank"
|
|
||||||
rel="noopener noreferrer"
|
<button class="btn btn-ghost btn-sm btn-square" on:click={close}>
|
||||||
class="text-primary hover:underline"
|
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
||||||
>
|
<path
|
||||||
{appVersion}
|
stroke-linecap="round"
|
||||||
</a>
|
stroke-linejoin="round"
|
||||||
</p>
|
stroke-width="2"
|
||||||
|
d="M6 18L18 6M6 6l12 12"
|
||||||
|
/>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Links and Details -->
|
<!-- Content -->
|
||||||
<div class="mt-4 text-center">
|
<div class="space-y-4">
|
||||||
<p class="text-sm text-gray-600 dark:text-gray-400">
|
<!-- Version & Developer Info -->
|
||||||
© {copyrightYear}
|
<div class="card bg-base-200/30 border border-base-300">
|
||||||
<a
|
<div class="card-body p-4">
|
||||||
href="https://seanmorley.com"
|
<div class="grid grid-cols-1 md:grid-cols-2 gap-4">
|
||||||
target="_blank"
|
<div>
|
||||||
rel="noopener noreferrer"
|
<div class="text-sm text-base-content/60">{$t('about.version')}</div>
|
||||||
class="text-primary hover:underline"
|
<div class="text-lg font-bold text-primary">{appVersion}</div>
|
||||||
>
|
<a
|
||||||
Sean Morley
|
href={versionChangelog}
|
||||||
</a>
|
target="_blank"
|
||||||
</p>
|
rel="noopener noreferrer"
|
||||||
<p class="text-sm text-gray-600 dark:text-gray-400">{$t('about.license')}</p>
|
class="text-sm link link-primary"
|
||||||
<p class="text-sm text-gray-600 dark:text-gray-400">
|
>
|
||||||
<a
|
{$t('about.view_changelog')} →
|
||||||
href="https://github.com/seanmorley15/AdventureLog"
|
</a>
|
||||||
target="_blank"
|
</div>
|
||||||
rel="noopener noreferrer"
|
<div>
|
||||||
class="text-primary hover:underline"
|
<div class="text-sm text-base-content/60">{$t('about.developer')}</div>
|
||||||
>
|
<a
|
||||||
{$t('about.source_code')}
|
href="https://seanmorley.com"
|
||||||
</a>
|
target="_blank"
|
||||||
</p>
|
rel="noopener noreferrer"
|
||||||
<p class="text-sm text-gray-600 dark:text-gray-400">{$t('about.message')}</p>
|
class="text-lg font-semibold link link-primary"
|
||||||
</div>
|
>
|
||||||
|
Sean Morley
|
||||||
|
</a>
|
||||||
|
<div class="text-sm text-base-content/60">{$t('about.message')}</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<!-- Divider -->
|
<!-- Map Services -->
|
||||||
<div class="my-6 border-t border-gray-200 dark:border-gray-700"></div>
|
<div class="card bg-base-200/30 border border-base-300">
|
||||||
|
<div class="card-body p-4">
|
||||||
|
<h3 class="font-bold text-primary mb-3 flex items-center gap-2">
|
||||||
|
<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
||||||
|
<path
|
||||||
|
stroke-linecap="round"
|
||||||
|
stroke-linejoin="round"
|
||||||
|
stroke-width="2"
|
||||||
|
d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"
|
||||||
|
/>
|
||||||
|
</svg>
|
||||||
|
{$t('about.attributions')}
|
||||||
|
</h3>
|
||||||
|
{#if integrations && integrations?.google_maps}
|
||||||
|
<div class="flex items-center gap-2">
|
||||||
|
<span class="text-sm text-base-content/60">{$t('about.nominatim_1')}</span>
|
||||||
|
<a
|
||||||
|
href="https://developers.google.com/maps/terms"
|
||||||
|
target="_blank"
|
||||||
|
rel="noopener noreferrer"
|
||||||
|
class="link link-primary font-semibold"
|
||||||
|
>
|
||||||
|
Google Maps Platform
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
{:else if integrations && !integrations?.google_maps}
|
||||||
|
<div class="flex items-center gap-2">
|
||||||
|
<span class="text-sm text-base-content/60">{$t('about.nominatim_1')}</span>
|
||||||
|
<a
|
||||||
|
href="https://operations.osmfoundation.org/policies/nominatim/"
|
||||||
|
target="_blank"
|
||||||
|
rel="noopener noreferrer"
|
||||||
|
class="link link-primary font-semibold"
|
||||||
|
>
|
||||||
|
OpenStreetMap Nominatim
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
{:else}
|
||||||
|
<div class="text-sm text-base-content/60">{$t('about.generic_attributions')}</div>
|
||||||
|
{/if}
|
||||||
|
<p class="text-sm text-base-content/60">{$t('about.other_attributions')}</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Liscense info -->
|
||||||
|
<div class="card bg-base-200/30 border border-base-300">
|
||||||
|
<div class="card-body p-4">
|
||||||
|
<h3 class="font-bold text-primary mb-3 flex items-center gap-2">
|
||||||
|
<svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
||||||
|
<path
|
||||||
|
stroke-linecap="round"
|
||||||
|
stroke-linejoin="round"
|
||||||
|
stroke-width="2"
|
||||||
|
d="M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"
|
||||||
|
/>
|
||||||
|
</svg>
|
||||||
|
{$t('about.license_info')}
|
||||||
|
</h3>
|
||||||
|
<p class="text-sm text-base-content/60 mb-2">
|
||||||
|
© {copyrightYear}
|
||||||
|
<a
|
||||||
|
href="https://seanmorley.com"
|
||||||
|
target="_blank"
|
||||||
|
rel="noopener noreferrer"
|
||||||
|
class="link link-primary"
|
||||||
|
>
|
||||||
|
Sean Morley
|
||||||
|
</a>
|
||||||
|
</p>
|
||||||
|
<p class="text-sm text-base-content/60">
|
||||||
|
{$t('about.license')}
|
||||||
|
</p>
|
||||||
|
|
||||||
<!-- OSS Acknowledgments -->
|
|
||||||
<div class="text-left">
|
|
||||||
<h3 class="text-lg font-semibold text-gray-800 dark:text-white">
|
|
||||||
{$t('about.oss_attributions')}
|
|
||||||
</h3>
|
|
||||||
{#if integrations && integrations?.google_maps}
|
|
||||||
<p class="mt-2 text-sm text-gray-600 dark:text-gray-400">
|
|
||||||
{$t('about.nominatim_1')}
|
|
||||||
<a
|
<a
|
||||||
href="https://developers.google.com/maps/terms"
|
href="https://github.com/seanmorley15/AdventureLog/blob/main/LICENSE"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
rel="noopener noreferrer"
|
rel="noopener noreferrer"
|
||||||
class="text-primary hover:underline"
|
class="link link-primary mt-2"
|
||||||
>
|
>
|
||||||
Google Maps
|
{$t('about.view_license')} →
|
||||||
</a>
|
</a>
|
||||||
.
|
</div>
|
||||||
</p>
|
</div>
|
||||||
{:else if integrations && !integrations?.google_maps}
|
|
||||||
<p class="mt-2 text-sm text-gray-600 dark:text-gray-400">
|
|
||||||
{$t('about.nominatim_1')}
|
|
||||||
<a
|
|
||||||
href="https://operations.osmfoundation.org/policies/nominatim/"
|
|
||||||
target="_blank"
|
|
||||||
rel="noopener noreferrer"
|
|
||||||
class="text-primary hover:underline"
|
|
||||||
>
|
|
||||||
OpenStreetMap
|
|
||||||
</a>
|
|
||||||
. {$t('about.nominatim_2')}
|
|
||||||
</p>
|
|
||||||
{:else}
|
|
||||||
<p class="mt-2 text-sm text-gray-600 dark:text-gray-400">
|
|
||||||
{$t('about.generic_attributions')}
|
|
||||||
</p>
|
|
||||||
{/if}
|
|
||||||
|
|
||||||
<p class="mt-1 text-sm text-gray-600 dark:text-gray-400">{$t('about.other_attributions')}</p>
|
<!-- Links -->
|
||||||
|
<div class="card bg-base-200/30 border border-base-300">
|
||||||
|
<div class="card-body p-4">
|
||||||
|
<div class="flex flex-wrap gap-3">
|
||||||
|
<a
|
||||||
|
href="https://github.com/seanmorley15/AdventureLog"
|
||||||
|
target="_blank"
|
||||||
|
rel="noopener noreferrer"
|
||||||
|
class="btn btn-outline btn-sm"
|
||||||
|
>
|
||||||
|
GitHub →
|
||||||
|
</a>
|
||||||
|
<a
|
||||||
|
href="https://seanmorley.com/sponsor"
|
||||||
|
target="_blank"
|
||||||
|
rel="noopener noreferrer"
|
||||||
|
class="btn btn-outline btn-sm"
|
||||||
|
>
|
||||||
|
{$t('about.sponsor')} →
|
||||||
|
</a>
|
||||||
|
<!-- documentation -->
|
||||||
|
<a
|
||||||
|
href="https://adventurelog.app"
|
||||||
|
target="_blank"
|
||||||
|
rel="noopener noreferrer"
|
||||||
|
class="btn btn-outline btn-sm"
|
||||||
|
>
|
||||||
|
{$t('navbar.documentation')} →
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Close Button -->
|
<!-- Footer -->
|
||||||
<div class="flex justify-center mt-6">
|
<div class="flex items-center justify-between mt-6 pt-4 border-t border-base-300">
|
||||||
<button
|
<div class="text-sm text-base-content/60">
|
||||||
class="px-6 py-2 text-sm font-medium text-white bg-primary rounded-full shadow-md hover:shadow-lg hover:scale-105 transform transition"
|
{$t('about.thank_you')}
|
||||||
on:click={close}
|
</div>
|
||||||
>
|
<button class="btn btn-primary btn-sm" on:click={close}>
|
||||||
{$t('about.close')}
|
{$t('about.close')}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</dialog>
|
</dialog>
|
||||||
|
|
||||||
<style>
|
|
||||||
.modal {
|
|
||||||
display: grid;
|
|
||||||
place-items: center;
|
|
||||||
background: rgba(0, 0, 0, 0.5);
|
|
||||||
animation: fadeIn 0.3s ease-in-out;
|
|
||||||
}
|
|
||||||
.modal-box {
|
|
||||||
max-width: 600px;
|
|
||||||
padding: 2rem;
|
|
||||||
animation: slideUp 0.4s ease-out;
|
|
||||||
}
|
|
||||||
@keyframes fadeIn {
|
|
||||||
from {
|
|
||||||
opacity: 0;
|
|
||||||
}
|
|
||||||
to {
|
|
||||||
opacity: 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@keyframes slideUp {
|
|
||||||
from {
|
|
||||||
transform: translateY(20%);
|
|
||||||
opacity: 0;
|
|
||||||
}
|
|
||||||
to {
|
|
||||||
transform: translateY(0);
|
|
||||||
opacity: 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
|
|
|
@ -81,13 +81,13 @@
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<!-- Overlay indicator for multiple images -->
|
<!-- Overlay indicator for multiple images -->
|
||||||
{#if adventure_images.length > 1}
|
<!-- {#if adventure_images.length > 1}
|
||||||
<div
|
<div
|
||||||
class="absolute top-3 right-3 bg-black/60 text-white px-2 py-1 rounded-lg text-xs font-medium"
|
class="absolute top-3 right-3 bg-black/60 text-white px-2 py-1 rounded-lg text-xs font-medium"
|
||||||
>
|
>
|
||||||
{currentSlide + 1} / {adventure_images.length}
|
{currentSlide + 1} / {adventure_images.length}
|
||||||
</div>
|
</div>
|
||||||
{/if}
|
{/if} -->
|
||||||
|
|
||||||
<!-- Click to expand hint -->
|
<!-- Click to expand hint -->
|
||||||
<!-- <div
|
<!-- <div
|
||||||
|
@ -118,7 +118,7 @@
|
||||||
{#if currentSlide > 0}
|
{#if currentSlide > 0}
|
||||||
<button
|
<button
|
||||||
on:click|stopPropagation={() => changeSlide('prev')}
|
on:click|stopPropagation={() => changeSlide('prev')}
|
||||||
class="btn btn-circle btn-sm ml-2 pointer-events-auto bg-white/80 border-none hover:bg-white text-gray-800 shadow-lg"
|
class="btn btn-circle btn-sm mr-2 pointer-events-auto bg-neutral border-none text-neutral-content shadow-lg"
|
||||||
aria-label="Previous image"
|
aria-label="Previous image"
|
||||||
>
|
>
|
||||||
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
||||||
|
@ -137,7 +137,7 @@
|
||||||
{#if currentSlide < adventure_images.length - 1}
|
{#if currentSlide < adventure_images.length - 1}
|
||||||
<button
|
<button
|
||||||
on:click|stopPropagation={() => changeSlide('next')}
|
on:click|stopPropagation={() => changeSlide('next')}
|
||||||
class="btn btn-circle btn-sm mr-2 pointer-events-auto bg-white/80 border-none hover:bg-white text-gray-800 shadow-lg"
|
class="btn btn-circle btn-sm mr-2 pointer-events-auto bg-neutral border-none text-neutral-content shadow-lg"
|
||||||
aria-label="Next image"
|
aria-label="Next image"
|
||||||
>
|
>
|
||||||
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
||||||
|
@ -155,7 +155,7 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Dot indicators at bottom -->
|
<!-- Dot indicators at bottom -->
|
||||||
{#if adventure_images.length > 1}
|
<!-- {#if adventure_images.length > 1}
|
||||||
<div class="absolute bottom-3 left-1/2 -translate-x-1/2 flex gap-2">
|
<div class="absolute bottom-3 left-1/2 -translate-x-1/2 flex gap-2">
|
||||||
{#each adventure_images as _, index}
|
{#each adventure_images as _, index}
|
||||||
<button
|
<button
|
||||||
|
@ -168,7 +168,7 @@
|
||||||
/>
|
/>
|
||||||
{/each}
|
{/each}
|
||||||
</div>
|
</div>
|
||||||
{/if}
|
{/if} -->
|
||||||
{/if}
|
{/if}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
|
|
||||||
export let images: { image: string; adventure: Location | null }[] = [];
|
export let images: { image: string; adventure: Location | null }[] = [];
|
||||||
export let initialIndex: number = 0;
|
export let initialIndex: number = 0;
|
||||||
|
import { t } from 'svelte-i18n';
|
||||||
|
|
||||||
let currentIndex = initialIndex;
|
let currentIndex = initialIndex;
|
||||||
let currentImage = images[currentIndex]?.image || '';
|
let currentImage = images[currentIndex]?.image || '';
|
||||||
|
@ -113,7 +114,8 @@
|
||||||
</h1>
|
</h1>
|
||||||
{#if images.length > 1}
|
{#if images.length > 1}
|
||||||
<p class="text-sm text-base-content/60">
|
<p class="text-sm text-base-content/60">
|
||||||
{currentIndex + 1} of {images.length} images
|
{currentIndex + 1} of {images.length}
|
||||||
|
{$t('adventures.images')}
|
||||||
</p>
|
</p>
|
||||||
{/if}
|
{/if}
|
||||||
</div>
|
</div>
|
||||||
|
@ -247,7 +249,9 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="flex items-center gap-3">
|
<div class="flex items-center gap-3">
|
||||||
{#if images.length > 1}
|
{#if images.length > 1}
|
||||||
<div class="text-sm text-base-content/60">Use arrow keys or click to navigate</div>
|
<div class="text-sm text-base-content/60">
|
||||||
|
{$t('adventures.image_modal_navigate')}
|
||||||
|
</div>
|
||||||
{/if}
|
{/if}
|
||||||
<button class="btn btn-primary gap-2" on:click={close}>
|
<button class="btn btn-primary gap-2" on:click={close}>
|
||||||
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
<svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
|
||||||
|
@ -258,7 +262,7 @@
|
||||||
d="M6 18L18 6M6 6l12 12"
|
d="M6 18L18 6M6 6l12 12"
|
||||||
/>
|
/>
|
||||||
</svg>
|
</svg>
|
||||||
Close
|
{$t('about.close')}
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -273,7 +273,7 @@
|
||||||
{#if type != 'link'}
|
{#if type != 'link'}
|
||||||
<div class="flex justify-between items-center">
|
<div class="flex justify-between items-center">
|
||||||
<button
|
<button
|
||||||
class="btn btn-neutral btn-sm flex-1 mr-2"
|
class="btn btn-base-300 btn-sm flex-1 mr-2"
|
||||||
on:click={() => goto(`/locations/${adventure.id}`)}
|
on:click={() => goto(`/locations/${adventure.id}`)}
|
||||||
>
|
>
|
||||||
<Launch class="w-4 h-4" />
|
<Launch class="w-4 h-4" />
|
||||||
|
|
|
@ -9,7 +9,15 @@
|
||||||
"oss_attributions": "Open Source Quellenangaben",
|
"oss_attributions": "Open Source Quellenangaben",
|
||||||
"other_attributions": "Weitere Hinweise finden Sie in der README-Datei.",
|
"other_attributions": "Weitere Hinweise finden Sie in der README-Datei.",
|
||||||
"source_code": "Quellcode",
|
"source_code": "Quellcode",
|
||||||
"generic_attributions": "Melden Sie sich bei Adventurelog an, um Zuschreibungen für aktivierte Integrationen und Dienste anzuzeigen."
|
"generic_attributions": "Melden Sie sich bei Adventurelog an, um Zuschreibungen für aktivierte Integrationen und Dienste anzuzeigen.",
|
||||||
|
"attributions": "Zuschreibungen",
|
||||||
|
"developer": "Entwickler",
|
||||||
|
"license_info": "Lizenz",
|
||||||
|
"sponsor": "Sponsor",
|
||||||
|
"thank_you": "Vielen Dank, dass Sie Adventurelog verwendet haben!",
|
||||||
|
"version": "Version",
|
||||||
|
"view_changelog": "ChangeLog anzeigen",
|
||||||
|
"view_license": "Lizenz anzeigen"
|
||||||
},
|
},
|
||||||
"adventures": {
|
"adventures": {
|
||||||
"activities": {},
|
"activities": {},
|
||||||
|
@ -250,7 +258,8 @@
|
||||||
"visit_calendar": "Besuchen Sie den Kalender",
|
"visit_calendar": "Besuchen Sie den Kalender",
|
||||||
"wiki_location_desc": "Zieht Auszug aus dem Wikipedia -Artikel, der dem Namen des Standorts entspricht.",
|
"wiki_location_desc": "Zieht Auszug aus dem Wikipedia -Artikel, der dem Namen des Standorts entspricht.",
|
||||||
"will_be_marked_location": "wird als besucht markiert, sobald der Standort gespeichert ist.",
|
"will_be_marked_location": "wird als besucht markiert, sobald der Standort gespeichert ist.",
|
||||||
"no_locations_found": "Keine Standorte gefunden"
|
"no_locations_found": "Keine Standorte gefunden",
|
||||||
|
"image_modal_navigate": "Verwenden Sie Pfeiltasten oder klicken Sie, um zu navigieren"
|
||||||
},
|
},
|
||||||
"home": {
|
"home": {
|
||||||
"desc_1": "Entdecken, planen und erkunden Sie mühelos",
|
"desc_1": "Entdecken, planen und erkunden Sie mühelos",
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -43,7 +43,15 @@
|
||||||
"nominatim_2": "Sus datos están licenciados bajo la licencia ODbL.",
|
"nominatim_2": "Sus datos están licenciados bajo la licencia ODbL.",
|
||||||
"other_attributions": "Atribuciones adicionales se pueden encontrar en el archivo README.",
|
"other_attributions": "Atribuciones adicionales se pueden encontrar en el archivo README.",
|
||||||
"close": "Cerrar",
|
"close": "Cerrar",
|
||||||
"generic_attributions": "Inicie sesión en AdventureLog para ver las atribuciones para integraciones y servicios habilitados."
|
"generic_attributions": "Inicie sesión en AdventureLog para ver las atribuciones para integraciones y servicios habilitados.",
|
||||||
|
"attributions": "Atribuciones",
|
||||||
|
"developer": "Revelador",
|
||||||
|
"license_info": "Licencia",
|
||||||
|
"sponsor": "Patrocinador",
|
||||||
|
"thank_you": "¡Gracias por usar Adventurelog!",
|
||||||
|
"version": "Versión",
|
||||||
|
"view_changelog": "Ver ChangeLog",
|
||||||
|
"view_license": "Ver licencia"
|
||||||
},
|
},
|
||||||
"home": {
|
"home": {
|
||||||
"hero_1": "Descubre las Aventuras Más Emocionantes del Mundo",
|
"hero_1": "Descubre las Aventuras Más Emocionantes del Mundo",
|
||||||
|
@ -302,7 +310,8 @@
|
||||||
"visit_calendar": "Visitar el calendario",
|
"visit_calendar": "Visitar el calendario",
|
||||||
"wiki_location_desc": "Extrae extracto del artículo de Wikipedia que coincide con el nombre de la ubicación.",
|
"wiki_location_desc": "Extrae extracto del artículo de Wikipedia que coincide con el nombre de la ubicación.",
|
||||||
"will_be_marked_location": "se marcará según lo visitado una vez que se guarde la ubicación.",
|
"will_be_marked_location": "se marcará según lo visitado una vez que se guarde la ubicación.",
|
||||||
"no_locations_found": "No se encontraron ubicaciones"
|
"no_locations_found": "No se encontraron ubicaciones",
|
||||||
|
"image_modal_navigate": "Use teclas de flecha o haga clic para navegar"
|
||||||
},
|
},
|
||||||
"worldtravel": {
|
"worldtravel": {
|
||||||
"all": "Todo",
|
"all": "Todo",
|
||||||
|
|
|
@ -9,7 +9,15 @@
|
||||||
"oss_attributions": "Attributions Open Source",
|
"oss_attributions": "Attributions Open Source",
|
||||||
"other_attributions": "Des attributions supplémentaires peuvent être trouvées dans le fichier README.",
|
"other_attributions": "Des attributions supplémentaires peuvent être trouvées dans le fichier README.",
|
||||||
"source_code": "Code source",
|
"source_code": "Code source",
|
||||||
"generic_attributions": "Connectez-vous à AdventureLog pour afficher les attributions pour les intégrations et services activés."
|
"generic_attributions": "Connectez-vous à AdventureLog pour afficher les attributions pour les intégrations et services activés.",
|
||||||
|
"attributions": "Attributions",
|
||||||
|
"developer": "Promoteur",
|
||||||
|
"license_info": "Licence",
|
||||||
|
"sponsor": "Parrainer",
|
||||||
|
"thank_you": "Merci d'utiliser AdventureLog!",
|
||||||
|
"version": "Version",
|
||||||
|
"view_changelog": "Voir Changelog",
|
||||||
|
"view_license": "Afficher la licence"
|
||||||
},
|
},
|
||||||
"adventures": {
|
"adventures": {
|
||||||
"activities": {},
|
"activities": {},
|
||||||
|
@ -250,7 +258,8 @@
|
||||||
"visit_calendar": "Visiter le calendrier",
|
"visit_calendar": "Visiter le calendrier",
|
||||||
"wiki_location_desc": "Tire un extrait de l'article de Wikipedia correspondant au nom de l'emplacement.",
|
"wiki_location_desc": "Tire un extrait de l'article de Wikipedia correspondant au nom de l'emplacement.",
|
||||||
"will_be_marked_location": "sera marqué comme visité une fois l'emplacement enregistré.",
|
"will_be_marked_location": "sera marqué comme visité une fois l'emplacement enregistré.",
|
||||||
"no_locations_found": "Aucun emplacement trouvé"
|
"no_locations_found": "Aucun emplacement trouvé",
|
||||||
|
"image_modal_navigate": "Utilisez des touches flèches ou cliquez pour naviguer"
|
||||||
},
|
},
|
||||||
"home": {
|
"home": {
|
||||||
"desc_1": "Découvrez, planifiez et explorez en toute simplicité",
|
"desc_1": "Découvrez, planifiez et explorez en toute simplicité",
|
||||||
|
|
|
@ -9,7 +9,15 @@
|
||||||
"oss_attributions": "Attribuzioni Open Source",
|
"oss_attributions": "Attribuzioni Open Source",
|
||||||
"other_attributions": "Ulteriori attribuzioni possono essere trovate nel file README.",
|
"other_attributions": "Ulteriori attribuzioni possono essere trovate nel file README.",
|
||||||
"source_code": "Codice sorgente",
|
"source_code": "Codice sorgente",
|
||||||
"generic_attributions": "Accedi a AdventureLog per visualizzare le attribuzioni per integrazioni e servizi abilitati."
|
"generic_attributions": "Accedi a AdventureLog per visualizzare le attribuzioni per integrazioni e servizi abilitati.",
|
||||||
|
"attributions": "Attribuzioni",
|
||||||
|
"developer": "Sviluppatore",
|
||||||
|
"license_info": "Licenza",
|
||||||
|
"sponsor": "Sponsor",
|
||||||
|
"thank_you": "Grazie per aver usato AdventureLog!",
|
||||||
|
"version": "Versione",
|
||||||
|
"view_changelog": "Visualizza Changelog",
|
||||||
|
"view_license": "Visualizza la licenza"
|
||||||
},
|
},
|
||||||
"adventures": {
|
"adventures": {
|
||||||
"activities": {},
|
"activities": {},
|
||||||
|
@ -250,7 +258,8 @@
|
||||||
"visit_calendar": "Visita il calendario",
|
"visit_calendar": "Visita il calendario",
|
||||||
"wiki_location_desc": "Estratto dall'articolo di Wikipedia che corrisponde al nome della posizione.",
|
"wiki_location_desc": "Estratto dall'articolo di Wikipedia che corrisponde al nome della posizione.",
|
||||||
"will_be_marked_location": "sarà contrassegnato come visitato una volta salvata la posizione.",
|
"will_be_marked_location": "sarà contrassegnato come visitato una volta salvata la posizione.",
|
||||||
"no_locations_found": "Nessuna posizione trovata"
|
"no_locations_found": "Nessuna posizione trovata",
|
||||||
|
"image_modal_navigate": "Usa i tasti freccia o fai clic per navigare"
|
||||||
},
|
},
|
||||||
"home": {
|
"home": {
|
||||||
"desc_1": "Scopri, pianifica ed esplora con facilità",
|
"desc_1": "Scopri, pianifica ed esplora con facilità",
|
||||||
|
|
|
@ -9,7 +9,15 @@
|
||||||
"oss_attributions": "오픈 소스 속성",
|
"oss_attributions": "오픈 소스 속성",
|
||||||
"other_attributions": "추가 속성은 README 파일에서 찾을 수 있습니다.",
|
"other_attributions": "추가 속성은 README 파일에서 찾을 수 있습니다.",
|
||||||
"source_code": "소스 코드",
|
"source_code": "소스 코드",
|
||||||
"generic_attributions": "Adventurelog에 로그인하여 활성화 된 통합 및 서비스에 대한 속성을보십시오."
|
"generic_attributions": "Adventurelog에 로그인하여 활성화 된 통합 및 서비스에 대한 속성을보십시오.",
|
||||||
|
"attributions": "속성",
|
||||||
|
"developer": "개발자",
|
||||||
|
"license_info": "특허",
|
||||||
|
"sponsor": "스폰서",
|
||||||
|
"thank_you": "Adventurelog를 사용해 주셔서 감사합니다!",
|
||||||
|
"version": "버전",
|
||||||
|
"view_changelog": "changelog를 봅니다",
|
||||||
|
"view_license": "라이센스보기"
|
||||||
},
|
},
|
||||||
"adventures": {
|
"adventures": {
|
||||||
"actions": "행동",
|
"actions": "행동",
|
||||||
|
@ -250,7 +258,8 @@
|
||||||
"visit_calendar": "캘린더를 방문하십시오",
|
"visit_calendar": "캘린더를 방문하십시오",
|
||||||
"wiki_location_desc": "위치 이름과 일치하는 Wikipedia 기사에서 발췌 한 내용을 가져옵니다.",
|
"wiki_location_desc": "위치 이름과 일치하는 Wikipedia 기사에서 발췌 한 내용을 가져옵니다.",
|
||||||
"will_be_marked_location": "위치가 저장되면 방문한대로 표시됩니다.",
|
"will_be_marked_location": "위치가 저장되면 방문한대로 표시됩니다.",
|
||||||
"no_locations_found": "발견 된 위치는 없습니다"
|
"no_locations_found": "발견 된 위치는 없습니다",
|
||||||
|
"image_modal_navigate": "화살표 키를 사용하거나 클릭하여 탐색하십시오"
|
||||||
},
|
},
|
||||||
"auth": {
|
"auth": {
|
||||||
"confirm_password": "비밀번호 확인",
|
"confirm_password": "비밀번호 확인",
|
||||||
|
|
|
@ -9,7 +9,15 @@
|
||||||
"oss_attributions": "Open source gebruik",
|
"oss_attributions": "Open source gebruik",
|
||||||
"other_attributions": "Aanvullende vermeldingen zijn te vinden in het README-bestand.",
|
"other_attributions": "Aanvullende vermeldingen zijn te vinden in het README-bestand.",
|
||||||
"source_code": "Broncode",
|
"source_code": "Broncode",
|
||||||
"generic_attributions": "Log in op AdventUrelog om attributies te bekijken voor ingeschakelde integraties en services."
|
"generic_attributions": "Log in op AdventUrelog om attributies te bekijken voor ingeschakelde integraties en services.",
|
||||||
|
"attributions": "Attributies",
|
||||||
|
"developer": "Ontwikkelaar",
|
||||||
|
"license_info": "Licentie",
|
||||||
|
"sponsor": "Sponsor",
|
||||||
|
"thank_you": "Bedankt voor het gebruik van AdventUrelog!",
|
||||||
|
"version": "Versie",
|
||||||
|
"view_changelog": "Bekijk Changelog",
|
||||||
|
"view_license": "Bekijk licentie"
|
||||||
},
|
},
|
||||||
"adventures": {
|
"adventures": {
|
||||||
"activities": {},
|
"activities": {},
|
||||||
|
@ -250,7 +258,8 @@
|
||||||
"visit_calendar": "Bezoek de agenda",
|
"visit_calendar": "Bezoek de agenda",
|
||||||
"wiki_location_desc": "Haalt fragment uit het Wikipedia -artikel dat overeenkomt met de naam van de locatie.",
|
"wiki_location_desc": "Haalt fragment uit het Wikipedia -artikel dat overeenkomt met de naam van de locatie.",
|
||||||
"will_be_marked_location": "wordt gemarkeerd als bezocht zodra de locatie is opgeslagen.",
|
"will_be_marked_location": "wordt gemarkeerd als bezocht zodra de locatie is opgeslagen.",
|
||||||
"no_locations_found": "Geen locaties gevonden"
|
"no_locations_found": "Geen locaties gevonden",
|
||||||
|
"image_modal_navigate": "Gebruik pijltoetsen of klik om te navigeren"
|
||||||
},
|
},
|
||||||
"home": {
|
"home": {
|
||||||
"desc_1": "Ontdek, plan en verken met gemak",
|
"desc_1": "Ontdek, plan en verken met gemak",
|
||||||
|
|
|
@ -43,7 +43,15 @@
|
||||||
"nominatim_2": "Deres data er lisensiert under ODbL-lisensen.",
|
"nominatim_2": "Deres data er lisensiert under ODbL-lisensen.",
|
||||||
"other_attributions": "Ytterligere attribusjoner finnes i README-filen.",
|
"other_attributions": "Ytterligere attribusjoner finnes i README-filen.",
|
||||||
"close": "Lukk",
|
"close": "Lukk",
|
||||||
"generic_attributions": "Logg inn på Adventurelog for å se attribusjoner for aktiverte integrasjoner og tjenester."
|
"generic_attributions": "Logg inn på Adventurelog for å se attribusjoner for aktiverte integrasjoner og tjenester.",
|
||||||
|
"attributions": "Attribusjoner",
|
||||||
|
"developer": "Utvikler",
|
||||||
|
"license_info": "Tillatelse",
|
||||||
|
"sponsor": "Sponsor",
|
||||||
|
"thank_you": "Takk for at du bruker Adventurelog!",
|
||||||
|
"version": "Versjon",
|
||||||
|
"view_changelog": "Se Changelog",
|
||||||
|
"view_license": "Vis lisens"
|
||||||
},
|
},
|
||||||
"home": {
|
"home": {
|
||||||
"hero_1": "Oppdag verdens mest spennende eventyr",
|
"hero_1": "Oppdag verdens mest spennende eventyr",
|
||||||
|
@ -302,7 +310,8 @@
|
||||||
"visit_calendar": "Besøk kalenderen",
|
"visit_calendar": "Besøk kalenderen",
|
||||||
"wiki_location_desc": "Trekker utdrag fra Wikipedia -artikkelen som samsvarer med navnet på stedet.",
|
"wiki_location_desc": "Trekker utdrag fra Wikipedia -artikkelen som samsvarer med navnet på stedet.",
|
||||||
"will_be_marked_location": "vil bli merket som besøkt når stedet er lagret.",
|
"will_be_marked_location": "vil bli merket som besøkt når stedet er lagret.",
|
||||||
"no_locations_found": "Ingen steder funnet"
|
"no_locations_found": "Ingen steder funnet",
|
||||||
|
"image_modal_navigate": "Bruk piltastene eller klikk for å navigere"
|
||||||
},
|
},
|
||||||
"worldtravel": {
|
"worldtravel": {
|
||||||
"country_list": "Liste over land",
|
"country_list": "Liste over land",
|
||||||
|
|
|
@ -43,7 +43,15 @@
|
||||||
"nominatim_2": "Ich dane są licencjonowane na licencji ODbL.",
|
"nominatim_2": "Ich dane są licencjonowane na licencji ODbL.",
|
||||||
"other_attributions": "Dodatkowe atrybucje można znaleźć w pliku README.",
|
"other_attributions": "Dodatkowe atrybucje można znaleźć w pliku README.",
|
||||||
"close": "Zamknij",
|
"close": "Zamknij",
|
||||||
"generic_attributions": "Zaloguj się do Adventurelog, aby wyświetlić atrybucje dla włączonych integracji i usług."
|
"generic_attributions": "Zaloguj się do Adventurelog, aby wyświetlić atrybucje dla włączonych integracji i usług.",
|
||||||
|
"attributions": "Przypisania",
|
||||||
|
"developer": "Wywoływacz",
|
||||||
|
"license_info": "Licencja",
|
||||||
|
"sponsor": "Sponsor",
|
||||||
|
"thank_you": "Dziękujemy za korzystanie z Adventurelog!",
|
||||||
|
"version": "Wersja",
|
||||||
|
"view_changelog": "Zobacz Changelog",
|
||||||
|
"view_license": "Wyświetl licencję"
|
||||||
},
|
},
|
||||||
"home": {
|
"home": {
|
||||||
"hero_1": "Odkryj najbardziej ekscytujące podróże na świecie",
|
"hero_1": "Odkryj najbardziej ekscytujące podróże na świecie",
|
||||||
|
@ -302,7 +310,8 @@
|
||||||
"visit_calendar": "Odwiedź kalendarz",
|
"visit_calendar": "Odwiedź kalendarz",
|
||||||
"wiki_location_desc": "Wyciąga fragment artykułu Wikipedii pasujący do nazwy lokalizacji.",
|
"wiki_location_desc": "Wyciąga fragment artykułu Wikipedii pasujący do nazwy lokalizacji.",
|
||||||
"will_be_marked_location": "zostanie oznaczone jako odwiedzone po zapisaniu lokalizacji.",
|
"will_be_marked_location": "zostanie oznaczone jako odwiedzone po zapisaniu lokalizacji.",
|
||||||
"no_locations_found": "Nie znaleziono żadnych lokalizacji"
|
"no_locations_found": "Nie znaleziono żadnych lokalizacji",
|
||||||
|
"image_modal_navigate": "Użyj klawiszy strzałek lub kliknij, aby nawigować"
|
||||||
},
|
},
|
||||||
"worldtravel": {
|
"worldtravel": {
|
||||||
"country_list": "Lista krajów",
|
"country_list": "Lista krajów",
|
||||||
|
|
|
@ -43,7 +43,15 @@
|
||||||
"nominatim_2": "Их данные лицензированы под лицензией ODbL.",
|
"nominatim_2": "Их данные лицензированы под лицензией ODbL.",
|
||||||
"other_attributions": "Дополнительные атрибуции можно найти в файле README.",
|
"other_attributions": "Дополнительные атрибуции можно найти в файле README.",
|
||||||
"generic_attributions": "Войдите в AdventureLog, чтобы просмотреть атрибуции для включённых интеграций и сервисов.",
|
"generic_attributions": "Войдите в AdventureLog, чтобы просмотреть атрибуции для включённых интеграций и сервисов.",
|
||||||
"close": "Закрыть"
|
"close": "Закрыть",
|
||||||
|
"attributions": "Атрибуты",
|
||||||
|
"developer": "Разработчик",
|
||||||
|
"license_info": "Лицензия",
|
||||||
|
"sponsor": "Спонсор",
|
||||||
|
"thank_you": "Спасибо за использование AdventureLog!",
|
||||||
|
"version": "Версия",
|
||||||
|
"view_changelog": "Посмотреть изменение изменений",
|
||||||
|
"view_license": "Просмотреть лицензию"
|
||||||
},
|
},
|
||||||
"home": {
|
"home": {
|
||||||
"hero_1": "Откройте для себя самые захватывающие приключения мира",
|
"hero_1": "Откройте для себя самые захватывающие приключения мира",
|
||||||
|
@ -302,7 +310,8 @@
|
||||||
"visit_calendar": "Посетите календарь",
|
"visit_calendar": "Посетите календарь",
|
||||||
"wiki_location_desc": "Вытягивает отрывок из статьи Википедии, соответствующей названию места.",
|
"wiki_location_desc": "Вытягивает отрывок из статьи Википедии, соответствующей названию места.",
|
||||||
"will_be_marked_location": "будет отмечен по посещению после сохранения местоположения.",
|
"will_be_marked_location": "будет отмечен по посещению после сохранения местоположения.",
|
||||||
"no_locations_found": "Никаких мест не найдено"
|
"no_locations_found": "Никаких мест не найдено",
|
||||||
|
"image_modal_navigate": "Используйте клавиши со стрелками или нажмите, чтобы перемещаться"
|
||||||
},
|
},
|
||||||
"worldtravel": {
|
"worldtravel": {
|
||||||
"country_list": "Список стран",
|
"country_list": "Список стран",
|
||||||
|
|
|
@ -9,7 +9,15 @@
|
||||||
"oss_attributions": "Tillskrivningar med öppen källkod",
|
"oss_attributions": "Tillskrivningar med öppen källkod",
|
||||||
"other_attributions": "Ytterligare attributioner finns i README-filen.",
|
"other_attributions": "Ytterligare attributioner finns i README-filen.",
|
||||||
"source_code": "Källkod",
|
"source_code": "Källkod",
|
||||||
"generic_attributions": "Logga in på AdventureLog för att visa attribut för aktiverade integrationer och tjänster."
|
"generic_attributions": "Logga in på AdventureLog för att visa attribut för aktiverade integrationer och tjänster.",
|
||||||
|
"attributions": "Tillskrivningar",
|
||||||
|
"developer": "Framkallare",
|
||||||
|
"license_info": "Licens",
|
||||||
|
"sponsor": "Sponsor",
|
||||||
|
"thank_you": "Tack för att du använder AdventureLog!",
|
||||||
|
"version": "Version",
|
||||||
|
"view_changelog": "Visa Changelog",
|
||||||
|
"view_license": "Visa licens"
|
||||||
},
|
},
|
||||||
"adventures": {
|
"adventures": {
|
||||||
"activities": {},
|
"activities": {},
|
||||||
|
@ -250,7 +258,8 @@
|
||||||
"visit_calendar": "Besök kalendern",
|
"visit_calendar": "Besök kalendern",
|
||||||
"wiki_location_desc": "Drar utdrag från Wikipedia -artikeln som matchar namnet på platsen.",
|
"wiki_location_desc": "Drar utdrag från Wikipedia -artikeln som matchar namnet på platsen.",
|
||||||
"will_be_marked_location": "kommer att markeras som besöks när platsen har sparats.",
|
"will_be_marked_location": "kommer att markeras som besöks när platsen har sparats.",
|
||||||
"no_locations_found": "Inga platser hittades"
|
"no_locations_found": "Inga platser hittades",
|
||||||
|
"image_modal_navigate": "Använd pilnycklar eller klicka för att navigera"
|
||||||
},
|
},
|
||||||
"home": {
|
"home": {
|
||||||
"desc_1": "Upptäck, planera och utforska med lätthet",
|
"desc_1": "Upptäck, planera och utforska med lätthet",
|
||||||
|
|
|
@ -43,7 +43,15 @@
|
||||||
"other_attributions": "其他声明可以在 README 文件中找到。",
|
"other_attributions": "其他声明可以在 README 文件中找到。",
|
||||||
"source_code": "源代码",
|
"source_code": "源代码",
|
||||||
"close": "关闭",
|
"close": "关闭",
|
||||||
"generic_attributions": "登录到AdventureLog以查看启用集成和服务的归因。"
|
"generic_attributions": "登录到AdventureLog以查看启用集成和服务的归因。",
|
||||||
|
"attributions": "归因",
|
||||||
|
"developer": "开发人员",
|
||||||
|
"license_info": "执照",
|
||||||
|
"sponsor": "赞助",
|
||||||
|
"thank_you": "感谢您使用冒险!",
|
||||||
|
"version": "版本",
|
||||||
|
"view_changelog": "查看ChangElog",
|
||||||
|
"view_license": "查看许可证"
|
||||||
},
|
},
|
||||||
"home": {
|
"home": {
|
||||||
"desc_1": "轻松发现、规划和探索",
|
"desc_1": "轻松发现、规划和探索",
|
||||||
|
@ -302,7 +310,8 @@
|
||||||
"visit_calendar": "访问日历",
|
"visit_calendar": "访问日历",
|
||||||
"wiki_location_desc": "从Wikipedia文章中提取摘录,符合该位置的名称。",
|
"wiki_location_desc": "从Wikipedia文章中提取摘录,符合该位置的名称。",
|
||||||
"will_be_marked_location": "保存位置后,将被标记为访问。",
|
"will_be_marked_location": "保存位置后,将被标记为访问。",
|
||||||
"no_locations_found": "找不到位置"
|
"no_locations_found": "找不到位置",
|
||||||
|
"image_modal_navigate": "使用箭头键或单击以导航"
|
||||||
},
|
},
|
||||||
"auth": {
|
"auth": {
|
||||||
"forgot_password": "忘记密码?",
|
"forgot_password": "忘记密码?",
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue