mirror of
https://github.com/mauriceboe/TREK.git
synced 2026-06-30 18:46:00 +00:00
feat(maps): add MapLibre OpenFreeMap support (#1317)
Adds MapLibre GL with OpenFreeMap as a tokenless third map provider alongside Leaflet and Mapbox: a provider abstraction with style presets, CSP + service-worker entries for tiles.openfreemap.org, and the map_provider allow-list entry. Mapbox-only APIs stay gated behind the mapbox provider, and existing Mapbox/Leaflet users are unaffected. Maintainer review follow-ups folded in: the new map-settings strings are translated across all locales; the GL engine is lazy-loaded so Leaflet-only installs don't download it; MapLibre gets its own maplibre_style slot so switching providers no longer overwrites a custom Mapbox style; and the MapLibre render path plus the OpenFreeMap style-guards are covered by tests.
This commit is contained in:
@@ -335,6 +335,7 @@ const admin: TranslationStrings = {
|
||||
'الخريطة الافتراضية لجميع المستخدمين على هذا الخادم. لا يزال بإمكان كل مستخدم تجاوزها في إعداداته الخاصة.',
|
||||
'admin.defaultSettings.providerLeaflet': 'قياسي (مجاني)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox (ثلاثي الأبعاد)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': 'رمز Mapbox المشترك',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
'يُستخدم لكل مستخدم لم يُدخل رمزه الخاص — حتى يحصل الخادم بأكمله على Mapbox دون مشاركة المفتاح بشكل فردي. يُخزَّن مشفّرًا.',
|
||||
|
||||
@@ -18,6 +18,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': 'يؤثر على خرائط Trip Planner و Journey. يستخدم Atlas دائمًا Leaflet.',
|
||||
'settings.mapLeafletSubtitle': '2D كلاسيكي، أي بلاطات نقطية',
|
||||
'settings.mapMapboxSubtitle': 'بلاطات متجهية ومبانٍ ثلاثية الأبعاد وتضاريس',
|
||||
'settings.mapMapLibreSubtitle': 'بلاطات متجهية من OpenFreeMap، بدون رمز',
|
||||
'settings.mapExperimental': 'تجريبي',
|
||||
'settings.mapMapboxToken': 'رمز وصول Mapbox',
|
||||
'settings.mapMapboxTokenHint': 'الرمز العام (pk.*) من',
|
||||
@@ -25,6 +26,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': 'نمط الخريطة',
|
||||
'settings.mapStylePlaceholder': 'اختر نمط Mapbox',
|
||||
'settings.mapStyleHint': 'إعداد مسبق أو عنوان URL mapbox://styles/USER/ID خاص بك',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'اختر نمط OpenFreeMap',
|
||||
'settings.mapOpenFreeMapStyleHint': 'إعداد مسبق أو عنوان URL لنمط OpenFreeMap. تعمل أنماط OpenFreeMap بدون رمز.',
|
||||
'settings.map3dBuildings': 'مبانٍ ثلاثية الأبعاد وتضاريس',
|
||||
'settings.map3dHint': 'إمالة + مبانٍ ثلاثية الأبعاد حقيقية — يعمل مع كل نمط بما في ذلك الأقمار الصناعية.',
|
||||
'settings.mapHighQuality': 'وضع الجودة العالية',
|
||||
|
||||
@@ -342,6 +342,7 @@ const admin: TranslationStrings = {
|
||||
'O mapa padrão para todos nesta instância. Cada usuário ainda pode substituí-lo nas próprias configurações.',
|
||||
'admin.defaultSettings.providerLeaflet': 'Padrão (gratuito)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': 'Token compartilhado do Mapbox',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
'Usado para todos os usuários que não inseriram o próprio token — assim toda a instância usa o Mapbox sem compartilhar a chave individualmente. Armazenado de forma criptografada.',
|
||||
|
||||
@@ -20,6 +20,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': 'Afeta os mapas do Planejador de Viagem e Diário. Atlas sempre usa Leaflet.',
|
||||
'settings.mapLeafletSubtitle': 'Clássico 2D, quaisquer blocos raster',
|
||||
'settings.mapMapboxSubtitle': 'Blocos vetoriais, prédios 3D & terreno',
|
||||
'settings.mapMapLibreSubtitle': 'Blocos vetoriais OpenFreeMap, sem token',
|
||||
'settings.mapExperimental': 'Experimental',
|
||||
'settings.mapMapboxToken': 'Token de acesso Mapbox',
|
||||
'settings.mapMapboxTokenHint': 'Token público (pk.*) de',
|
||||
@@ -27,6 +28,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': 'Estilo do mapa',
|
||||
'settings.mapStylePlaceholder': 'Selecionar um estilo Mapbox',
|
||||
'settings.mapStyleHint': 'Preset ou sua própria URL mapbox://styles/USER/ID',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'Selecionar um estilo OpenFreeMap',
|
||||
'settings.mapOpenFreeMapStyleHint': 'Preset ou URL de estilo OpenFreeMap. Os estilos OpenFreeMap funcionam sem token.',
|
||||
'settings.map3dBuildings': 'Prédios 3D & terreno',
|
||||
'settings.map3dHint': 'Inclinação + extrusões 3D reais de prédios — funciona em todo estilo, incluindo satélite.',
|
||||
'settings.mapHighQuality': 'Modo alta qualidade',
|
||||
|
||||
@@ -340,6 +340,7 @@ const admin: TranslationStrings = {
|
||||
'Výchozí mapa pro všechny uživatele na této instanci. Každý uživatel ji může i nadále změnit ve svém vlastním nastavení.',
|
||||
'admin.defaultSettings.providerLeaflet': 'Standardní (zdarma)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': 'Sdílený token Mapbox',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
'Použije se pro každého uživatele, který nezadal vlastní token — takže celá instance získá Mapbox, aniž byste klíč sdíleli s každým zvlášť. Ukládá se šifrovaně.',
|
||||
|
||||
@@ -20,6 +20,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': 'Ovlivňuje mapy v Trip Planneru a Journey. Atlas vždy používá Leaflet.',
|
||||
'settings.mapLeafletSubtitle': 'Klasické 2D, libovolné rastrové dlaždice',
|
||||
'settings.mapMapboxSubtitle': 'Vektorové dlaždice, 3D budovy a terén',
|
||||
'settings.mapMapLibreSubtitle': 'Vektorové dlaždice OpenFreeMap, bez tokenu',
|
||||
'settings.mapExperimental': 'Experimentální',
|
||||
'settings.mapMapboxToken': 'Mapbox přístupový token',
|
||||
'settings.mapMapboxTokenHint': 'Veřejný token (pk.*) z',
|
||||
@@ -27,6 +28,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': 'Styl mapy',
|
||||
'settings.mapStylePlaceholder': 'Vyberte styl Mapbox',
|
||||
'settings.mapStyleHint': 'Preset nebo vaše vlastní URL mapbox://styles/USER/ID',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'Vyberte styl OpenFreeMap',
|
||||
'settings.mapOpenFreeMapStyleHint': 'Preset nebo URL stylu OpenFreeMap. Styly OpenFreeMap fungují bez tokenu.',
|
||||
'settings.map3dBuildings': '3D budovy a terén',
|
||||
'settings.map3dHint': 'Náklon + skutečné 3D vyvýšení budov — funguje s každým stylem, včetně satelitu.',
|
||||
'settings.mapHighQuality': 'Režim vysoké kvality',
|
||||
|
||||
@@ -345,6 +345,7 @@ const admin: TranslationStrings = {
|
||||
'Die Standardkarte für alle auf dieser Instanz. Jeder Nutzer kann sie weiterhin in den eigenen Einstellungen überschreiben.',
|
||||
'admin.defaultSettings.providerLeaflet': 'Standard (kostenlos)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': 'Gemeinsames Mapbox-Token',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
'Wird für jeden Nutzer verwendet, der kein eigenes Token eingegeben hat — so erhält die gesamte Instanz Mapbox, ohne den Schlüssel einzeln teilen zu müssen. Verschlüsselt gespeichert.',
|
||||
|
||||
@@ -20,6 +20,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': 'Gilt für Trip Planner und Journey. Atlas nutzt immer Leaflet.',
|
||||
'settings.mapLeafletSubtitle': 'Klassisch 2D, beliebige Raster-Kacheln',
|
||||
'settings.mapMapboxSubtitle': 'Vektor-Kacheln, 3D-Gebäude & Terrain',
|
||||
'settings.mapMapLibreSubtitle': 'OpenFreeMap Vektor-Kacheln, kein Token',
|
||||
'settings.mapExperimental': 'Experimentell',
|
||||
'settings.mapMapboxToken': 'Mapbox Access Token',
|
||||
'settings.mapMapboxTokenHint': 'Öffentliches Token (pk.*) von',
|
||||
@@ -27,6 +28,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': 'Kartenstil',
|
||||
'settings.mapStylePlaceholder': 'Mapbox-Stil wählen',
|
||||
'settings.mapStyleHint': 'Preset oder eigene mapbox://styles/USER/ID URL',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'OpenFreeMap-Stil wählen',
|
||||
'settings.mapOpenFreeMapStyleHint': 'Preset oder OpenFreeMap-Stil-URL. OpenFreeMap-Stile funktionieren ohne Token.',
|
||||
'settings.map3dBuildings': '3D-Gebäude & Terrain',
|
||||
'settings.map3dHint': 'Neigung + echte 3D-Gebäude-Extrusionen — funktioniert mit jedem Stil, auch Satellit.',
|
||||
'settings.mapHighQuality': 'Hochqualitäts-Modus',
|
||||
|
||||
@@ -184,6 +184,7 @@ const admin: TranslationStrings = {
|
||||
'The default map for everyone on this instance. Each user can still override it in their own settings.',
|
||||
'admin.defaultSettings.providerLeaflet': 'Standard (free)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': 'Shared Mapbox token',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
'Used for every user who has not entered their own token — so the whole instance gets Mapbox without sharing the key individually. Stored encrypted.',
|
||||
|
||||
@@ -20,6 +20,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': 'Affects Trip Planner and Journey maps. Atlas always uses Leaflet.',
|
||||
'settings.mapLeafletSubtitle': 'Classic 2D, any raster tiles',
|
||||
'settings.mapMapboxSubtitle': 'Vector tiles, 3D buildings & terrain',
|
||||
'settings.mapMapLibreSubtitle': 'OpenFreeMap vector tiles, no token',
|
||||
'settings.mapExperimental': 'Experimental',
|
||||
'settings.mapMapboxToken': 'Mapbox Access Token',
|
||||
'settings.mapMapboxTokenHint': 'Public token (pk.*) from',
|
||||
@@ -27,6 +28,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': 'Map Style',
|
||||
'settings.mapStylePlaceholder': 'Select a Mapbox style',
|
||||
'settings.mapStyleHint': 'Preset or your own mapbox://styles/USER/ID URL',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'Select an OpenFreeMap style',
|
||||
'settings.mapOpenFreeMapStyleHint': 'Preset or OpenFreeMap style URL. OpenFreeMap styles work without a token.',
|
||||
'settings.map3dBuildings': '3D Buildings & Terrain',
|
||||
'settings.map3dHint': 'Pitch + real 3D building extrusions — works on every style, including satellite.',
|
||||
'settings.mapHighQuality': 'High Quality Mode',
|
||||
|
||||
@@ -351,6 +351,7 @@ const admin: TranslationStrings = {
|
||||
'El mapa predeterminado para todos en esta instancia. Cada usuario puede cambiarlo en sus propios ajustes.',
|
||||
'admin.defaultSettings.providerLeaflet': 'Estándar (gratis)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': 'Token de Mapbox compartido',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
'Se usa para cada usuario que no haya introducido su propio token, de modo que toda la instancia obtenga Mapbox sin compartir la clave individualmente. Se almacena cifrado.',
|
||||
|
||||
@@ -20,6 +20,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': 'Afecta a los mapas de Trip Planner y Journey. Atlas siempre usa Leaflet.',
|
||||
'settings.mapLeafletSubtitle': 'Clásico 2D, cualquier mosaico raster',
|
||||
'settings.mapMapboxSubtitle': 'Mosaicos vectoriales, edificios 3D y terreno',
|
||||
'settings.mapMapLibreSubtitle': 'Mosaicos vectoriales de OpenFreeMap, sin token',
|
||||
'settings.mapExperimental': 'Experimental',
|
||||
'settings.mapMapboxToken': 'Token de acceso de Mapbox',
|
||||
'settings.mapMapboxTokenHint': 'Token público (pk.*) de',
|
||||
@@ -27,6 +28,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': 'Estilo de mapa',
|
||||
'settings.mapStylePlaceholder': 'Seleccionar un estilo de Mapbox',
|
||||
'settings.mapStyleHint': 'Preset o tu propia URL mapbox://styles/USER/ID',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'Seleccionar un estilo de OpenFreeMap',
|
||||
'settings.mapOpenFreeMapStyleHint': 'Preset o URL de estilo de OpenFreeMap. Los estilos de OpenFreeMap funcionan sin token.',
|
||||
'settings.map3dBuildings': 'Edificios 3D y terreno',
|
||||
'settings.map3dHint':
|
||||
'Inclinación + extrusiones 3D reales de edificios — funciona con todos los estilos, incluyendo satélite.',
|
||||
|
||||
@@ -348,6 +348,7 @@ const admin: TranslationStrings = {
|
||||
'La carte par défaut pour tous les utilisateurs de cette instance. Chaque utilisateur peut toujours la remplacer dans ses propres paramètres.',
|
||||
'admin.defaultSettings.providerLeaflet': 'Standard (gratuit)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': 'Jeton Mapbox partagé',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
"Utilisé pour chaque utilisateur n'ayant pas saisi son propre jeton — ainsi toute l'instance bénéficie de Mapbox sans partager la clé individuellement. Stocké de façon chiffrée.",
|
||||
|
||||
@@ -20,6 +20,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': 'Affecte les cartes Trip Planner et Journey. Atlas utilise toujours Leaflet.',
|
||||
'settings.mapLeafletSubtitle': 'Classique 2D, toutes tuiles raster',
|
||||
'settings.mapMapboxSubtitle': 'Tuiles vectorielles, bâtiments 3D & terrain',
|
||||
'settings.mapMapLibreSubtitle': 'Tuiles vectorielles OpenFreeMap, sans jeton',
|
||||
'settings.mapExperimental': 'Expérimental',
|
||||
'settings.mapMapboxToken': "Jeton d'accès Mapbox",
|
||||
'settings.mapMapboxTokenHint': 'Jeton public (pk.*) depuis',
|
||||
@@ -27,6 +28,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': 'Style de carte',
|
||||
'settings.mapStylePlaceholder': 'Sélectionner un style Mapbox',
|
||||
'settings.mapStyleHint': 'Preset ou votre propre URL mapbox://styles/USER/ID',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'Sélectionner un style OpenFreeMap',
|
||||
'settings.mapOpenFreeMapStyleHint': 'Preset ou URL de style OpenFreeMap. Les styles OpenFreeMap fonctionnent sans jeton.',
|
||||
'settings.map3dBuildings': 'Bâtiments 3D & terrain',
|
||||
'settings.map3dHint':
|
||||
'Inclinaison + extrusions 3D réelles des bâtiments — fonctionne avec tous les styles, y compris satellite.',
|
||||
|
||||
@@ -355,6 +355,7 @@ const admin: TranslationStrings = {
|
||||
'Ο προεπιλεγμένος χάρτης για όλους σε αυτή την εγκατάσταση. Κάθε χρήστης μπορεί να τον αλλάξει στις δικές του ρυθμίσεις.',
|
||||
'admin.defaultSettings.providerLeaflet': 'Τυπικός (δωρεάν)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': 'Κοινόχρηστο διακριτικό Mapbox',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
'Χρησιμοποιείται για κάθε χρήστη που δεν έχει εισαγάγει το δικό του διακριτικό — έτσι ολόκληρη η εγκατάσταση αποκτά Mapbox χωρίς να μοιράζεται το κλειδί ξεχωριστά. Αποθηκεύεται κρυπτογραφημένο.',
|
||||
|
||||
@@ -21,6 +21,7 @@ const settings: TranslationStrings = {
|
||||
'Επηρεάζει τους χάρτες του Trip Planner και του Journey. Το Atlas χρησιμοποιεί πάντα Leaflet.',
|
||||
'settings.mapLeafletSubtitle': 'Κλασικό 2D, οποιαδήποτε raster πλακίδια',
|
||||
'settings.mapMapboxSubtitle': 'Διανυσματικά πλακίδια, 3D κτίρια & ανάγλυφο',
|
||||
'settings.mapMapLibreSubtitle': 'Διανυσματικά πλακίδια OpenFreeMap, χωρίς token',
|
||||
'settings.mapExperimental': 'Πειραματικό',
|
||||
'settings.mapMapboxToken': 'Mapbox Access Token',
|
||||
'settings.mapMapboxTokenHint': 'Δημόσιο token (pk.*) από',
|
||||
@@ -28,6 +29,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': 'Στυλ Χάρτη',
|
||||
'settings.mapStylePlaceholder': 'Επιλέξτε ένα στυλ Mapbox',
|
||||
'settings.mapStyleHint': 'Προκαθορισμένο ή δικό σας mapbox://styles/USER/ID URL',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'Επιλέξτε ένα στυλ OpenFreeMap',
|
||||
'settings.mapOpenFreeMapStyleHint': 'Προκαθορισμένο ή URL στυλ OpenFreeMap. Τα στυλ OpenFreeMap λειτουργούν χωρίς token.',
|
||||
'settings.map3dBuildings': '3D Κτίρια & Ανάγλυφο',
|
||||
'settings.map3dHint':
|
||||
'Κλίση + πραγματικές 3D προεξοχές κτιρίων — λειτουργεί σε κάθε στυλ, συμπεριλαμβανομένου του δορυφορικού.',
|
||||
|
||||
@@ -347,6 +347,7 @@ const admin: TranslationStrings = {
|
||||
'Az alapértelmezett térkép mindenkinek ezen a példányon. Minden felhasználó felülírhatja a saját beállításaiban.',
|
||||
'admin.defaultSettings.providerLeaflet': 'Alapértelmezett (ingyenes)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': 'Megosztott Mapbox-token',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
'Minden olyan felhasználóhoz használatos, aki nem adta meg a saját tokenjét — így az egész példány eléri a Mapboxot anélkül, hogy egyenként kellene megosztani a kulcsot. Titkosítva tárolódik.',
|
||||
|
||||
@@ -20,6 +20,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': 'A Trip Planner és Journey térképekre érvényes. Az Atlas mindig Leafletet használ.',
|
||||
'settings.mapLeafletSubtitle': 'Klasszikus 2D, bármilyen raszter csempe',
|
||||
'settings.mapMapboxSubtitle': 'Vektoros csempék, 3D épületek és terep',
|
||||
'settings.mapMapLibreSubtitle': 'OpenFreeMap vektoros csempék, token nélkül',
|
||||
'settings.mapExperimental': 'Kísérleti',
|
||||
'settings.mapMapboxToken': 'Mapbox hozzáférési token',
|
||||
'settings.mapMapboxTokenHint': 'Publikus token (pk.*) innen:',
|
||||
@@ -27,6 +28,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': 'Térkép stílus',
|
||||
'settings.mapStylePlaceholder': 'Válassz Mapbox stílust',
|
||||
'settings.mapStyleHint': 'Preset vagy saját mapbox://styles/USER/ID URL',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'Válassz OpenFreeMap stílust',
|
||||
'settings.mapOpenFreeMapStyleHint': 'Preset vagy OpenFreeMap stílus URL. Az OpenFreeMap stílusok token nélkül működnek.',
|
||||
'settings.map3dBuildings': '3D épületek és terep',
|
||||
'settings.map3dHint': 'Dőlés + valódi 3D épület-kiemelés — minden stílussal működik, beleértve a műholdast.',
|
||||
'settings.mapHighQuality': 'Magas minőség mód',
|
||||
|
||||
@@ -343,6 +343,7 @@ const admin: TranslationStrings = {
|
||||
'Peta default untuk semua orang di instance ini. Setiap pengguna tetap dapat menggantinya di pengaturan masing-masing.',
|
||||
'admin.defaultSettings.providerLeaflet': 'Standar (gratis)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': 'Token Mapbox bersama',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
'Digunakan untuk setiap pengguna yang belum memasukkan token mereka sendiri — sehingga seluruh instance mendapatkan Mapbox tanpa perlu membagikan kunci satu per satu. Disimpan dalam bentuk terenkripsi.',
|
||||
|
||||
@@ -20,6 +20,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': 'Berlaku untuk peta Trip Planner dan Journey. Atlas selalu menggunakan Leaflet.',
|
||||
'settings.mapLeafletSubtitle': 'Klasik 2D, tile raster apa pun',
|
||||
'settings.mapMapboxSubtitle': 'Tile vektor, bangunan 3D & medan',
|
||||
'settings.mapMapLibreSubtitle': 'Tile vektor OpenFreeMap, tanpa token',
|
||||
'settings.mapExperimental': 'Eksperimental',
|
||||
'settings.mapMapboxToken': 'Token akses Mapbox',
|
||||
'settings.mapMapboxTokenHint': 'Token publik (pk.*) dari',
|
||||
@@ -27,6 +28,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': 'Gaya peta',
|
||||
'settings.mapStylePlaceholder': 'Pilih gaya Mapbox',
|
||||
'settings.mapStyleHint': 'Preset atau URL mapbox://styles/USER/ID milikmu',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'Pilih gaya OpenFreeMap',
|
||||
'settings.mapOpenFreeMapStyleHint': 'Preset atau URL gaya OpenFreeMap. Gaya OpenFreeMap berfungsi tanpa token.',
|
||||
'settings.map3dBuildings': 'Bangunan 3D & medan',
|
||||
'settings.map3dHint': 'Kemiringan + ekstrusi bangunan 3D nyata — bekerja di semua gaya, termasuk satelit.',
|
||||
'settings.mapHighQuality': 'Mode kualitas tinggi',
|
||||
|
||||
@@ -346,6 +346,7 @@ const admin: TranslationStrings = {
|
||||
'La mappa predefinita per tutti gli utenti di questa istanza. Ogni utente può comunque sostituirla nelle proprie impostazioni.',
|
||||
'admin.defaultSettings.providerLeaflet': 'Standard (gratuito)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': 'Token Mapbox condiviso',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
"Usato per ogni utente che non ha inserito un proprio token — così tutta l'istanza ottiene Mapbox senza dover condividere la chiave individualmente. Archiviato in forma crittografata.",
|
||||
|
||||
@@ -20,6 +20,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': 'Influisce sulle mappe Trip Planner e Journey. Atlas usa sempre Leaflet.',
|
||||
'settings.mapLeafletSubtitle': 'Classica 2D, qualsiasi tile raster',
|
||||
'settings.mapMapboxSubtitle': 'Tile vettoriali, edifici 3D e terreno',
|
||||
'settings.mapMapLibreSubtitle': 'Tile vettoriali OpenFreeMap, senza token',
|
||||
'settings.mapExperimental': 'Sperimentale',
|
||||
'settings.mapMapboxToken': 'Token di accesso Mapbox',
|
||||
'settings.mapMapboxTokenHint': 'Token pubblico (pk.*) da',
|
||||
@@ -27,6 +28,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': 'Stile mappa',
|
||||
'settings.mapStylePlaceholder': 'Seleziona uno stile Mapbox',
|
||||
'settings.mapStyleHint': 'Preset o il tuo URL mapbox://styles/USER/ID',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'Seleziona uno stile OpenFreeMap',
|
||||
'settings.mapOpenFreeMapStyleHint': 'Preset o URL di stile OpenFreeMap. Gli stili OpenFreeMap funzionano senza token.',
|
||||
'settings.map3dBuildings': 'Edifici 3D e terreno',
|
||||
'settings.map3dHint':
|
||||
'Inclinazione + estrusioni 3D reali degli edifici — funziona con ogni stile, incluso satellite.',
|
||||
|
||||
@@ -331,6 +331,7 @@ const admin: TranslationStrings = {
|
||||
'このインスタンスの全員に適用される既定の地図です。各ユーザーは自分の設定でこれを上書きできます。',
|
||||
'admin.defaultSettings.providerLeaflet': '標準(無料)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox(3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': '共有 Mapbox トークン',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
'自分のトークンを入力していないすべてのユーザーに使用されます。これにより、キーを個別に共有しなくてもインスタンス全体で Mapbox を利用できます。暗号化して保存されます。',
|
||||
|
||||
@@ -20,6 +20,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': '旅程プランナーと日記地図に影響します。Atlas は常に Leaflet を使用します。',
|
||||
'settings.mapLeafletSubtitle': 'クラシックな2D、任意のラスタータイル',
|
||||
'settings.mapMapboxSubtitle': 'ベクタータイル、3D建物・地形',
|
||||
'settings.mapMapLibreSubtitle': 'OpenFreeMap ベクタータイル、トークン不要',
|
||||
'settings.mapExperimental': '実験的',
|
||||
'settings.mapMapboxToken': 'Mapbox アクセストークン',
|
||||
'settings.mapMapboxTokenHint': 'mapbox.com の公開トークン(pk.*)',
|
||||
@@ -27,6 +28,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': '地図スタイル',
|
||||
'settings.mapStylePlaceholder': 'Mapboxスタイルを選択',
|
||||
'settings.mapStyleHint': 'プリセットまたは mapbox://styles/USER/ID のURL',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'OpenFreeMapスタイルを選択',
|
||||
'settings.mapOpenFreeMapStyleHint': 'プリセットまたは OpenFreeMap スタイルのURL。OpenFreeMap スタイルはトークンなしで動作します。',
|
||||
'settings.map3dBuildings': '3D建物・地形',
|
||||
'settings.map3dHint': 'ピッチ+実際の3D押し出し表示。衛星含む全スタイルで動作。',
|
||||
'settings.mapHighQuality': '高品質モード',
|
||||
|
||||
@@ -334,6 +334,7 @@ const admin: TranslationStrings = {
|
||||
'이 인스턴스의 모든 사용자에게 적용되는 기본 지도입니다. 각 사용자는 자신의 설정에서 이를 변경할 수 있습니다.',
|
||||
'admin.defaultSettings.providerLeaflet': '표준 (무료)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': '공유 Mapbox 토큰',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
'자신의 토큰을 입력하지 않은 모든 사용자에게 사용됩니다 — 키를 개별적으로 공유하지 않아도 인스턴스 전체에서 Mapbox를 사용할 수 있습니다. 암호화하여 저장됩니다.',
|
||||
|
||||
@@ -20,6 +20,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': '여행 플래너 및 Journey 지도에 영향을 줍니다. Atlas는 항상 Leaflet을 사용합니다.',
|
||||
'settings.mapLeafletSubtitle': '클래식 2D, 모든 래스터 타일',
|
||||
'settings.mapMapboxSubtitle': '벡터 타일, 3D 건물 및 지형',
|
||||
'settings.mapMapLibreSubtitle': 'OpenFreeMap 벡터 타일, 토큰 불필요',
|
||||
'settings.mapExperimental': '실험적',
|
||||
'settings.mapMapboxToken': 'Mapbox 액세스 토큰',
|
||||
'settings.mapMapboxTokenHint': '공개 토큰 (pk.*) 출처',
|
||||
@@ -27,6 +28,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': '지도 스타일',
|
||||
'settings.mapStylePlaceholder': 'Mapbox 스타일 선택',
|
||||
'settings.mapStyleHint': '프리셋 또는 mapbox://styles/USER/ID URL 직접 입력',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'OpenFreeMap 스타일 선택',
|
||||
'settings.mapOpenFreeMapStyleHint': '프리셋 또는 OpenFreeMap 스타일 URL. OpenFreeMap 스타일은 토큰 없이 작동합니다.',
|
||||
'settings.map3dBuildings': '3D 건물 및 지형',
|
||||
'settings.map3dHint': '기울기 + 실제 3D 건물 돌출 — 위성 포함 모든 스타일에서 작동합니다.',
|
||||
'settings.mapHighQuality': '고품질 모드',
|
||||
|
||||
@@ -346,6 +346,7 @@ const admin: TranslationStrings = {
|
||||
'De standaardkaart voor iedereen op deze instantie. Elke gebruiker kan dit nog steeds aanpassen in zijn eigen instellingen.',
|
||||
'admin.defaultSettings.providerLeaflet': 'Standaard (gratis)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': 'Gedeeld Mapbox-token',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
'Wordt gebruikt voor elke gebruiker die nog geen eigen token heeft ingevoerd — zo krijgt de hele instantie Mapbox zonder de sleutel apart te delen. Versleuteld opgeslagen.',
|
||||
|
||||
@@ -20,6 +20,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': 'Geldt voor Trip Planner en Journey kaarten. Atlas gebruikt altijd Leaflet.',
|
||||
'settings.mapLeafletSubtitle': 'Klassiek 2D, elke raster-tile',
|
||||
'settings.mapMapboxSubtitle': 'Vector tiles, 3D-gebouwen & terrein',
|
||||
'settings.mapMapLibreSubtitle': 'OpenFreeMap vector tiles, geen token',
|
||||
'settings.mapExperimental': 'Experimenteel',
|
||||
'settings.mapMapboxToken': 'Mapbox Access Token',
|
||||
'settings.mapMapboxTokenHint': 'Openbaar token (pk.*) van',
|
||||
@@ -27,6 +28,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': 'Kaartstijl',
|
||||
'settings.mapStylePlaceholder': 'Kies een Mapbox-stijl',
|
||||
'settings.mapStyleHint': 'Preset of eigen mapbox://styles/USER/ID URL',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'Kies een OpenFreeMap-stijl',
|
||||
'settings.mapOpenFreeMapStyleHint': 'Preset of OpenFreeMap-stijl-URL. OpenFreeMap-stijlen werken zonder token.',
|
||||
'settings.map3dBuildings': '3D-gebouwen & terrein',
|
||||
'settings.map3dHint': 'Kanteling + echte 3D-gebouwenextrusies — werkt op elke stijl, inclusief satelliet.',
|
||||
'settings.mapHighQuality': 'Hoge kwaliteit modus',
|
||||
|
||||
@@ -350,6 +350,7 @@ const admin: TranslationStrings = {
|
||||
'Domyślna mapa dla wszystkich na tej instancji. Każdy użytkownik może ją zmienić we własnych ustawieniach.',
|
||||
'admin.defaultSettings.providerLeaflet': 'Standardowa (bezpłatna)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': 'Współdzielony token Mapbox',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
'Używany dla każdego użytkownika, który nie wprowadził własnego tokena — dzięki temu cała instancja korzysta z Mapbox bez udostępniania klucza każdemu z osobna. Przechowywany w postaci zaszyfrowanej.',
|
||||
|
||||
@@ -20,6 +20,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': 'Dotyczy map Trip Planner i Journey. Atlas zawsze używa Leaflet.',
|
||||
'settings.mapLeafletSubtitle': 'Klasyczne 2D, dowolne kafelki rastrowe',
|
||||
'settings.mapMapboxSubtitle': 'Kafelki wektorowe, budynki 3D i teren',
|
||||
'settings.mapMapLibreSubtitle': 'Kafelki wektorowe OpenFreeMap, bez tokena',
|
||||
'settings.mapExperimental': 'Eksperymentalne',
|
||||
'settings.mapMapboxToken': 'Token dostępu Mapbox',
|
||||
'settings.mapMapboxTokenHint': 'Token publiczny (pk.*) z',
|
||||
@@ -27,6 +28,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': 'Styl mapy',
|
||||
'settings.mapStylePlaceholder': 'Wybierz styl Mapbox',
|
||||
'settings.mapStyleHint': 'Preset lub własny URL mapbox://styles/USER/ID',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'Wybierz styl OpenFreeMap',
|
||||
'settings.mapOpenFreeMapStyleHint': 'Preset lub URL stylu OpenFreeMap. Style OpenFreeMap działają bez tokena.',
|
||||
'settings.map3dBuildings': 'Budynki 3D i teren',
|
||||
'settings.map3dHint': 'Nachylenie + prawdziwe wytłaczanie budynków 3D — działa w każdym stylu, także satelitarnym.',
|
||||
'settings.mapHighQuality': 'Tryb wysokiej jakości',
|
||||
|
||||
@@ -345,6 +345,7 @@ const admin: TranslationStrings = {
|
||||
'Карта по умолчанию для всех на этом сервере. Каждый пользователь по-прежнему может изменить её в своих настройках.',
|
||||
'admin.defaultSettings.providerLeaflet': 'Стандартная (бесплатно)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': 'Общий токен Mapbox',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
'Используется для каждого пользователя, который не ввёл собственный токен — так весь сервер получает Mapbox без необходимости делиться ключом по отдельности. Хранится в зашифрованном виде.',
|
||||
|
||||
@@ -20,6 +20,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': 'Применяется к Trip Planner и Journey. Atlas всегда использует Leaflet.',
|
||||
'settings.mapLeafletSubtitle': 'Классические 2D, любые растровые тайлы',
|
||||
'settings.mapMapboxSubtitle': 'Векторные тайлы, 3D-здания и рельеф',
|
||||
'settings.mapMapLibreSubtitle': 'Векторные тайлы OpenFreeMap, без токена',
|
||||
'settings.mapExperimental': 'Экспериментально',
|
||||
'settings.mapMapboxToken': 'Токен доступа Mapbox',
|
||||
'settings.mapMapboxTokenHint': 'Публичный токен (pk.*) с',
|
||||
@@ -27,6 +28,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': 'Стиль карты',
|
||||
'settings.mapStylePlaceholder': 'Выберите стиль Mapbox',
|
||||
'settings.mapStyleHint': 'Preset или собственный URL mapbox://styles/USER/ID',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'Выберите стиль OpenFreeMap',
|
||||
'settings.mapOpenFreeMapStyleHint': 'Preset или URL стиля OpenFreeMap. Стили OpenFreeMap работают без токена.',
|
||||
'settings.map3dBuildings': '3D-здания и рельеф',
|
||||
'settings.map3dHint': 'Наклон + настоящие 3D-здания — работает со всеми стилями, включая спутник.',
|
||||
'settings.mapHighQuality': 'Режим высокого качества',
|
||||
|
||||
@@ -184,6 +184,7 @@ const admin: TranslationStrings = {
|
||||
'Standardkartan för alla användare på denna instans. Varje användare kan fortfarande ändra inställningarna i sina egna inställningar.',
|
||||
'admin.defaultSettings.providerLeaflet': 'Standard (gratis)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': 'Delat Mapbox-token',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
'Används för alla användare som inte har angett sin egen token – på så sätt får hela instansen tillgång till Mapbox utan att nyckeln behöver delas ut individuellt. Lagras i krypterad form.',
|
||||
|
||||
@@ -20,6 +20,9 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': 'Påverkar resplaneraren och resedagbokens kartor. Atlas använder alltid Leaflet.',
|
||||
'settings.mapLeafletSubtitle': 'Klassisk 2D, valfria rasterplattor',
|
||||
'settings.mapMapboxSubtitle': 'Vektorplattor, 3D-byggnader och terräng',
|
||||
'settings.mapMapLibreSubtitle': 'OpenFreeMap-vektorplattor, ingen token',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'Välj en OpenFreeMap-stil',
|
||||
'settings.mapOpenFreeMapStyleHint': 'Förinställning eller OpenFreeMap-stil-URL. OpenFreeMap-stilar fungerar utan token.',
|
||||
'settings.mapExperimental': 'Experimentell',
|
||||
'settings.mapMapboxToken': 'Mapbox-åtkomsttoken',
|
||||
'settings.mapMapboxTokenHint': 'Offentlig token (pk.*) från',
|
||||
|
||||
@@ -349,6 +349,7 @@ const admin: TranslationStrings = {
|
||||
'Bu örnekteki herkes için varsayılan harita. Her kullanıcı bunu yine de kendi ayarlarında değiştirebilir.',
|
||||
'admin.defaultSettings.providerLeaflet': 'Standart (ücretsiz)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': 'Paylaşılan Mapbox jetonu',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
"Kendi jetonunu girmemiş her kullanıcı için kullanılır — böylece anahtarı tek tek paylaşmadan tüm örnek Mapbox'ı kullanır. Şifrelenmiş olarak saklanır.",
|
||||
|
||||
@@ -20,6 +20,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': 'Seyahat planlayıcı ve Journey haritalarını etkiler. Atlas her zaman Leaflet kullanır.',
|
||||
'settings.mapLeafletSubtitle': 'Klasik 2D, herhangi bir raster kutucuk',
|
||||
'settings.mapMapboxSubtitle': 'Vektör kutucuklar, 3D binalar ve arazi',
|
||||
'settings.mapMapLibreSubtitle': 'OpenFreeMap vektör kutucuklar, anahtar gerekmez',
|
||||
'settings.mapExperimental': 'Deneysel',
|
||||
'settings.mapMapboxToken': 'Mapbox Erişim Anahtarı',
|
||||
'settings.mapMapboxTokenHint': 'Genel anahtar (pk.*) kaynağı:',
|
||||
@@ -27,6 +28,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': 'Harita Stili',
|
||||
'settings.mapStylePlaceholder': 'Bir Mapbox stili seçin',
|
||||
'settings.mapStyleHint': 'Ön ayar veya kendi mapbox://styles/KULLANICI/ID adresiniz',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'Bir OpenFreeMap stili seçin',
|
||||
'settings.mapOpenFreeMapStyleHint': "Ön ayar veya OpenFreeMap stil URL'si. OpenFreeMap stilleri anahtar gerektirmeden çalışır.",
|
||||
'settings.map3dBuildings': '3D Binalar ve Arazi',
|
||||
'settings.map3dHint': 'Eğim + gerçek 3D bina çıkıntıları — uydu dahil her stilde çalışır.',
|
||||
'settings.mapHighQuality': 'Yüksek Kalite Modu',
|
||||
|
||||
@@ -345,6 +345,7 @@ const admin: TranslationStrings = {
|
||||
'Карта за замовчуванням для всіх на цьому екземплярі. Кожен користувач може змінити її у власних налаштуваннях.',
|
||||
'admin.defaultSettings.providerLeaflet': 'Стандартна (безкоштовна)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox (3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': 'Спільний токен Mapbox',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
'Використовується для кожного користувача, який не ввів власний токен — щоб увесь екземпляр отримав Mapbox без потреби ділитися ключем окремо. Зберігається в зашифрованому вигляді.',
|
||||
|
||||
@@ -20,6 +20,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': 'Застосовується до Trip Planner та Journey. Atlas завжди використовує Leaflet.',
|
||||
'settings.mapLeafletSubtitle': 'Класичні 2D, будь-які растрові тайли',
|
||||
'settings.mapMapboxSubtitle': 'Векторні тайли, 3D-будинки та рельєф',
|
||||
'settings.mapMapLibreSubtitle': 'Векторні тайли OpenFreeMap, без токена',
|
||||
'settings.mapExperimental': 'Експериментально',
|
||||
'settings.mapMapboxToken': 'Токен доступу Mapbox',
|
||||
'settings.mapMapboxTokenHint': 'Публічний токен (pk.*) з',
|
||||
@@ -27,6 +28,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': 'Стиль карти',
|
||||
'settings.mapStylePlaceholder': 'Виберіть стиль Mapbox',
|
||||
'settings.mapStyleHint': 'Preset або власний URL mapbox://styles/USER/ID',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': 'Виберіть стиль OpenFreeMap',
|
||||
'settings.mapOpenFreeMapStyleHint': 'Preset або URL стилю OpenFreeMap. Стилі OpenFreeMap працюють без токена.',
|
||||
'settings.map3dBuildings': '3D-будинки та рельєф',
|
||||
'settings.map3dHint': 'Нахил + справжні 3D-будинки — працює з усіма стилями, включаючи супутник.',
|
||||
'settings.mapHighQuality': 'Режим високої якості',
|
||||
|
||||
@@ -327,6 +327,7 @@ const admin: TranslationStrings = {
|
||||
'admin.defaultSettings.mapProviderHint': '此執行個體上所有人的預設地圖。每位使用者仍可在自己的設定中覆寫此項。',
|
||||
'admin.defaultSettings.providerLeaflet': '標準(免費)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox(3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': '共用的 Mapbox 權杖',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
'用於每一位尚未輸入自己權杖的使用者 — 如此整個執行個體都能使用 Mapbox,而無需個別共享金鑰。以加密方式儲存。',
|
||||
|
||||
@@ -20,6 +20,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': '影響行程規劃和旅程地圖。Atlas 始終使用 Leaflet。',
|
||||
'settings.mapLeafletSubtitle': '經典 2D,任何柵格瓦片',
|
||||
'settings.mapMapboxSubtitle': '向量瓦片、3D 建築和地形',
|
||||
'settings.mapMapLibreSubtitle': 'OpenFreeMap 向量瓦片,無需權杖',
|
||||
'settings.mapExperimental': '實驗性',
|
||||
'settings.mapMapboxToken': 'Mapbox 存取權杖',
|
||||
'settings.mapMapboxTokenHint': '公開權杖 (pk.*) 來自',
|
||||
@@ -27,6 +28,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': '地圖樣式',
|
||||
'settings.mapStylePlaceholder': '選擇 Mapbox 樣式',
|
||||
'settings.mapStyleHint': '預設或您自己的 mapbox://styles/USER/ID URL',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': '選擇 OpenFreeMap 樣式',
|
||||
'settings.mapOpenFreeMapStyleHint': '預設或 OpenFreeMap 樣式 URL。OpenFreeMap 樣式無需權杖即可使用。',
|
||||
'settings.map3dBuildings': '3D 建築和地形',
|
||||
'settings.map3dHint': '傾斜 + 真實 3D 建築拉伸 — 適用於所有樣式,包括衛星。',
|
||||
'settings.mapHighQuality': '高畫質模式',
|
||||
|
||||
@@ -325,6 +325,7 @@ const admin: TranslationStrings = {
|
||||
'admin.defaultSettings.mapProviderHint': '本实例中所有用户的默认地图。每位用户仍可在自己的设置中更改此项。',
|
||||
'admin.defaultSettings.providerLeaflet': '标准(免费)',
|
||||
'admin.defaultSettings.providerMapbox': 'Mapbox(3D)',
|
||||
'admin.defaultSettings.providerMapLibre': 'MapLibre (OpenFreeMap)',
|
||||
'admin.defaultSettings.mapboxToken': '共享 Mapbox 令牌',
|
||||
'admin.defaultSettings.mapboxTokenHint':
|
||||
'用于所有未输入自己令牌的用户 — 这样无需逐个分享密钥,整个实例即可使用 Mapbox。以加密方式存储。',
|
||||
|
||||
@@ -20,6 +20,7 @@ const settings: TranslationStrings = {
|
||||
'settings.mapProviderHint': '影响行程规划和旅程地图。Atlas 始终使用 Leaflet。',
|
||||
'settings.mapLeafletSubtitle': '经典 2D,任何栅格瓦片',
|
||||
'settings.mapMapboxSubtitle': '矢量瓦片、3D 建筑和地形',
|
||||
'settings.mapMapLibreSubtitle': 'OpenFreeMap 矢量瓦片,无需令牌',
|
||||
'settings.mapExperimental': '实验性',
|
||||
'settings.mapMapboxToken': 'Mapbox 访问令牌',
|
||||
'settings.mapMapboxTokenHint': '公共令牌 (pk.*) 来自',
|
||||
@@ -27,6 +28,8 @@ const settings: TranslationStrings = {
|
||||
'settings.mapStyle': '地图样式',
|
||||
'settings.mapStylePlaceholder': '选择 Mapbox 样式',
|
||||
'settings.mapStyleHint': '预设或您自己的 mapbox://styles/USER/ID URL',
|
||||
'settings.mapOpenFreeMapStylePlaceholder': '选择 OpenFreeMap 样式',
|
||||
'settings.mapOpenFreeMapStyleHint': '预设或 OpenFreeMap 样式 URL。OpenFreeMap 样式无需令牌即可使用。',
|
||||
'settings.map3dBuildings': '3D 建筑和地形',
|
||||
'settings.map3dHint': '倾斜 + 真实 3D 建筑拉伸 — 适用于所有样式,包括卫星。',
|
||||
'settings.mapHighQuality': '高画质模式',
|
||||
|
||||
Reference in New Issue
Block a user