Compare commits
1 commit
master
...
rt-geo-lin
Author | SHA1 | Date | |
---|---|---|---|
2704a8bcc1 |
8 changed files with 1087 additions and 1394 deletions
18
.eslintrc.yml
Normal file
18
.eslintrc.yml
Normal file
|
@ -0,0 +1,18 @@
|
|||
env:
|
||||
es2020: true
|
||||
worker: true
|
||||
extends: ["plugin:@typescript-eslint/recommended"]
|
||||
parser: "@typescript-eslint/parser"
|
||||
parserOptions:
|
||||
ecmaVersion: 2020
|
||||
ecmaFeatures:
|
||||
impliedStrict: true
|
||||
sourceType: module
|
||||
root: true
|
||||
rules:
|
||||
indent: [error, 2, { SwitchCase: 1 }]
|
||||
semi: [error, always]
|
||||
quotes: [error, single, avoid-escape]
|
||||
no-trailing-spaces: [error]
|
||||
no-unused-vars: [error, { argsIgnorePattern: ^_ }]
|
||||
prefer-const: [error, { destructuring: all }]
|
|
@ -1,50 +0,0 @@
|
|||
import globals from "globals";
|
||||
import tsParser from "@typescript-eslint/parser";
|
||||
import path from "node:path";
|
||||
import { fileURLToPath } from "node:url";
|
||||
import js from "@eslint/js";
|
||||
import { FlatCompat } from "@eslint/eslintrc";
|
||||
|
||||
const __filename = fileURLToPath(import.meta.url);
|
||||
const __dirname = path.dirname(__filename);
|
||||
const compat = new FlatCompat({
|
||||
baseDirectory: __dirname,
|
||||
recommendedConfig: js.configs.recommended,
|
||||
allConfig: js.configs.all
|
||||
});
|
||||
|
||||
export default [...compat.extends("plugin:@typescript-eslint/recommended"), {
|
||||
languageOptions: {
|
||||
globals: {
|
||||
...globals.worker,
|
||||
},
|
||||
|
||||
parser: tsParser,
|
||||
ecmaVersion: 2020,
|
||||
sourceType: "module",
|
||||
|
||||
parserOptions: {
|
||||
ecmaFeatures: {
|
||||
impliedStrict: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
|
||||
rules: {
|
||||
indent: ["error", 2, {
|
||||
SwitchCase: 1,
|
||||
}],
|
||||
|
||||
semi: ["error", "always"],
|
||||
quotes: ["error", "single", "avoid-escape"],
|
||||
"no-trailing-spaces": ["error"],
|
||||
|
||||
"no-unused-vars": ["error", {
|
||||
argsIgnorePattern: "^_",
|
||||
}],
|
||||
|
||||
"prefer-const": ["error", {
|
||||
destructuring: "all",
|
||||
}],
|
||||
},
|
||||
}];
|
2304
package-lock.json
generated
2304
package-lock.json
generated
File diff suppressed because it is too large
Load diff
21
package.json
21
package.json
|
@ -13,19 +13,16 @@
|
|||
"author": "Alexander Borsuk <me@alex.bio>",
|
||||
"license": "MIT",
|
||||
"devDependencies": {
|
||||
"@cloudflare/workers-types": "^4.20240729.0",
|
||||
"@eslint/eslintrc": "^3.1.0",
|
||||
"@eslint/js": "^9.8.0",
|
||||
"@typescript-eslint/eslint-plugin": "^8.0.0",
|
||||
"@typescript-eslint/parser": "^8.0.0",
|
||||
"esbuild": "^0.23.0",
|
||||
"eslint": "^9.8.0",
|
||||
"globals": "^15.9.0",
|
||||
"prettier": "^3.3.3",
|
||||
"typescript": "^5.5.4",
|
||||
"wrangler": "^3.68.0"
|
||||
"@cloudflare/workers-types": "^4.20231025.0",
|
||||
"@typescript-eslint/eslint-plugin": "^6.10.0",
|
||||
"@typescript-eslint/parser": "^6.10.0",
|
||||
"esbuild": "^0.19.5",
|
||||
"eslint": "^8.53.0",
|
||||
"prettier": "^3.0.3",
|
||||
"typescript": "^5.2.2",
|
||||
"wrangler": "^3.15.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"@cloudflare/kv-asset-handler": "^0.3.4"
|
||||
"@cloudflare/kv-asset-handler": "^0.3.0"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,10 +5,8 @@
|
|||
"namespace": "android_app",
|
||||
"package_name": "app.organicmaps",
|
||||
"sha256_cert_fingerprints": [
|
||||
"9D:5A:95:65:8F:EC:4E:A2:FD:C1:E0:A6:96:E3:69:E5:B9:38:D2:E3:0A:28:ED:FF:50:AE:99:BD:A2:7E:8F:A3",
|
||||
"E5:D3:CC:33:89:5A:93:BC:95:99:60:97:49:3F:91:E7:E5:BA:FE:E9:6F:58:17:C1:E2:EF:E5:83:EE:73:CB:B8",
|
||||
"E2:16:FC:38:6C:32:7E:C8:8D:05:60:26:F1:DE:A2:7B:E2:BC:3F:9D:7E:E9:56:E4:36:1C:4B:64:EC:45:9F:E9",
|
||||
"B9:C7:AE:79:A5:A9:02:70:DF:08:A1:32:E5:36:B9:C6:66:F5:BE:F1:F5:9B:30:4F:CE:CF:86:87:86:5E:4B:5B"
|
||||
"B9:C7:AE:79:A5:A9:02:70:DF:08:A1:32:E5:36:B9:C6:66:F5:BE:F1:F5:9B:30:4F:CE:CF:86:87:86:5E:4B:5B",
|
||||
"9D:5A:95:65:8F:EC:4E:A2:FD:C1:E0:A6:96:E3:69:E5:B9:38:D2:E3:0A:28:ED:FF:50:AE:99:BD:A2:7E:8F:A3"
|
||||
]
|
||||
}
|
||||
},
|
||||
|
@ -31,5 +29,35 @@
|
|||
"96:D6:28:81:78:B0:1B:86:9B:D3:FF:BF:95:B3:3B:EE:DE:23:01:68:DF:88:2A:1D:7A:4B:B2:8B:85:34:59:F4"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"relation": ["delegate_permission/common.handle_all_urls"],
|
||||
"target": {
|
||||
"namespace": "android_app",
|
||||
"package_name": "app.organicmaps.web",
|
||||
"sha256_cert_fingerprints": [
|
||||
"B9:C7:AE:79:A5:A9:02:70:DF:08:A1:32:E5:36:B9:C6:66:F5:BE:F1:F5:9B:30:4F:CE:CF:86:87:86:5E:4B:5B"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"relation": ["delegate_permission/common.handle_all_urls"],
|
||||
"target": {
|
||||
"namespace": "android_app",
|
||||
"package_name": "app.organicmaps.web.beta",
|
||||
"sha256_cert_fingerprints": [
|
||||
"B9:C7:AE:79:A5:A9:02:70:DF:08:A1:32:E5:36:B9:C6:66:F5:BE:F1:F5:9B:30:4F:CE:CF:86:87:86:5E:4B:5B"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"relation": ["delegate_permission/common.handle_all_urls"],
|
||||
"target": {
|
||||
"namespace": "android_app",
|
||||
"package_name": "app.organicmaps.web.debug",
|
||||
"sha256_cert_fingerprints": [
|
||||
"96:D6:28:81:78:B0:1B:86:9B:D3:FF:BF:95:B3:3B:EE:DE:23:01:68:DF:88:2A:1D:7A:4B:B2:8B:85:34:59:F4"
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
|
@ -9,9 +9,9 @@
|
|||
|
||||
<meta name="apple-itunes-app" content="app-id=1567437057, app-argument=om:/${path}">
|
||||
|
||||
<meta name="description" content="Free Android & iOS offline OSM (OpenStreetMap) maps app for travelers, tourists, drivers, hikers, and cyclists from creators of MAPS.ME (MapsWithMe).">
|
||||
<meta itemprop="name" content="Free Android & iOS offline OSM (OpenStreetMap) maps app for travelers, tourists, drivers, hikers, and cyclists from creators of MAPS.ME (MapsWithMe).">
|
||||
<meta itemprop="description" content="Free Android & iOS offline OSM (OpenStreetMap) maps app for travelers, tourists, drivers, hikers, and cyclists from creators of MAPS.ME (MapsWithMe).">
|
||||
<meta name="description" content="Android & iOS offline maps app for travelers, tourists, hikers, and cyclists based on top of crowd-sourced OpenStreetMap data and curated with love by MAPS.ME founders.">
|
||||
<meta itemprop="name" content="Android & iOS offline maps app for travelers, tourists, hikers, and cyclists based on top of crowd-sourced OpenStreetMap data and curated with love by MAPS.ME founders.">
|
||||
<meta itemprop="description" content="Android & iOS offline maps app for travelers, tourists, hikers, and cyclists based on top of crowd-sourced OpenStreetMap data and curated with love by MAPS.ME founders.">
|
||||
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/icons/apple-touch-icon.png">
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/icons/favicon-32x32.png">
|
||||
|
@ -33,7 +33,7 @@
|
|||
display: flex;
|
||||
flex-flow: column;
|
||||
}
|
||||
|
||||
|
||||
.link {
|
||||
border-radius: 25px;
|
||||
border: 1px solid #449f33;
|
||||
|
@ -41,7 +41,7 @@
|
|||
margin-bottom: 2px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
|
||||
.linkcolour {
|
||||
border-radius: 25px;
|
||||
padding: 5px;
|
||||
|
@ -52,13 +52,13 @@
|
|||
vertical-align: middle;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
|
||||
.linkcolour:hover {
|
||||
background-color: #449f33;
|
||||
color: #FFF;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
|
||||
.linkcolour:active {
|
||||
background-color: #24541b;
|
||||
}
|
||||
|
@ -78,7 +78,7 @@
|
|||
}
|
||||
|
||||
#logo {
|
||||
vertical-align: middle;
|
||||
vertical-align: middle;
|
||||
height: 2em;
|
||||
flex-flow: row wrap;
|
||||
align-items: center;
|
||||
|
@ -87,7 +87,7 @@
|
|||
justify-content: space-between;
|
||||
overflow-wrap: break-word;
|
||||
}
|
||||
|
||||
|
||||
#name {
|
||||
flex: 1;
|
||||
font-size: x-large;
|
||||
|
@ -98,7 +98,7 @@
|
|||
flex: 1 1 auto;
|
||||
z-index: 1;
|
||||
}
|
||||
|
||||
|
||||
#notif {
|
||||
z-index: 1000;
|
||||
border-radius: 25px;
|
||||
|
@ -107,20 +107,20 @@
|
|||
padding-right: 10px;
|
||||
overflow-wrap: break-word;
|
||||
box-shadow: 0 3px 10px 0 #00000030;
|
||||
visibility: hidden;
|
||||
visibility: hidden;
|
||||
background-color: #FFF;
|
||||
color: #449f33;
|
||||
position: absolute;
|
||||
transform: translateX(-50%);
|
||||
left: 50%;
|
||||
top: 10%;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#notif.show {
|
||||
visibility: visible;
|
||||
animation: fadein 0.5s, fadeout 0.5s 1s;
|
||||
}
|
||||
|
||||
|
||||
@keyframes fadein {
|
||||
from { opacity: 0; }
|
||||
to { opacity: 1; }
|
||||
|
@ -148,7 +148,7 @@
|
|||
<a id="install" href="/get.html" target="_blank" class="linkcolour link">
|
||||
Install Organic Maps
|
||||
</a>
|
||||
<a href="https://www.osm.org/query?mlat=${lat}&mlon=${lon}&lat=${lat}&lon=${lon}#map=${zoom}/${lat}/${lon}" target="_blank" class="linkcolour link">
|
||||
<a href="https://www.openstreetmap.org/?mlat=${lat}&mlon=${lon}#map=${zoom}/${lat}/${lon}" target="_blank" class="linkcolour link">
|
||||
See on OpenStreetMap
|
||||
</a>
|
||||
<div class="link">
|
||||
|
@ -178,12 +178,12 @@
|
|||
|
||||
if (isMobile) {
|
||||
document.getElementById('geolink').removeAttribute('onclick');
|
||||
|
||||
|
||||
if(!isiOS) {
|
||||
document.getElementById('install').remove();
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
function openStore() {
|
||||
window.location='/get.html';
|
||||
}
|
||||
|
@ -194,7 +194,7 @@
|
|||
setTimeout(openStore, 700);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
function copyCoords() {
|
||||
var el = document.getElementById("notif");
|
||||
el.className = "show";
|
||||
|
|
|
@ -9,9 +9,9 @@
|
|||
<meta name="apple-itunes-app" content="app-id=1567437057">
|
||||
|
||||
|
||||
<meta name="description" content="Free Android & iOS offline OSM (OpenStreetMap) maps app for travelers, tourists, drivers, hikers, and cyclists from creators of MAPS.ME (MapsWithMe).">
|
||||
<meta itemprop="name" content="Free Android & iOS offline OSM (OpenStreetMap) maps app for travelers, tourists, drivers, hikers, and cyclists from creators of MAPS.ME (MapsWithMe).">
|
||||
<meta itemprop="description" content="Free Android & iOS offline OSM (OpenStreetMap) maps app for travelers, tourists, drivers, hikers, and cyclists from creators of MAPS.ME (MapsWithMe).">
|
||||
<meta name="description" content="Android & iOS offline maps app for travelers, tourists, hikers, and cyclists based on top of crowd-sourced OpenStreetMap data and curated with love by MAPS.ME founders.">
|
||||
<meta itemprop="name" content="Android & iOS offline maps app for travelers, tourists, hikers, and cyclists based on top of crowd-sourced OpenStreetMap data and curated with love by MAPS.ME founders.">
|
||||
<meta itemprop="description" content="Android & iOS offline maps app for travelers, tourists, hikers, and cyclists based on top of crowd-sourced OpenStreetMap data and curated with love by MAPS.ME founders.">
|
||||
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/icons/apple-touch-icon.png">
|
||||
<link rel="icon" type="image/png" sizes="32x32" href="/icons/favicon-32x32.png">
|
||||
|
|
|
@ -144,8 +144,6 @@
|
|||
<li><a href="geo:35.3381607,33.3290564?q=Kyrenia%20Castle">geo:35.3381607,33.3290564?q=Kyrenia%20Castle</a> - search for 'Kyrenia Castle' in 35.3381607,33.3290564</li>
|
||||
<li><a href="geo:0,0?q=Where%20to%20eat">geo:0,0?q=Where%20to%20eat</a> - search for 'Where to eat' in the current (last) location</li>
|
||||
<li><a href="geo:0,0(Null%20Island)">geo:0,0(Null%20Island)</a> - show 0,0 point in Atlantic Ocean with 'Null Island' title</li>
|
||||
<li><a href="geo:0,0?q=Restaurant">geo:0,0?q=Restaurant</a> - search for 'Restaurant' type around current position</li>
|
||||
<li><a href="geo:0,0?q=87G7MXQ4%2BM5">geo:0,0?q=87G7MXQ4%2BM5</a> - search for Plus Code '87G7MXQ4+M5' from current position (strings in Geo URI must be encoded so '+' is '%2B')</li>
|
||||
</ol>
|
||||
|
||||
<h3>MAPS.ME url scheme</h3>
|
||||
|
@ -182,14 +180,6 @@
|
|||
<li><a href="https://2gis.ru/moscow/firm/4504127908589159?m=37.618632%2C55.760069%2F15.232">https://2gis.ru/moscow/firm/4504127908589159?m=37.618632%2C55.760069%2F15.232</a></li>
|
||||
</ol>
|
||||
|
||||
<h3>KML, KMZ and GPX test files</h3>
|
||||
<ol>
|
||||
<li><a href="https://cdn.organicmaps.app/download/Kaipǎwa Trig.kml">Kaipǎwa Trig.kml</a></li>
|
||||
<li><a href="https://cdn.organicmaps.app/download/Kaipǎwa Trig.kmz">Kaipǎwa Trig.kmz</a></li>
|
||||
<li><a href="https://cdn.organicmaps.app/download/Wairǎkei Терраса.gpx">Wairǎkei Терраса.gpx</a></li>
|
||||
</ol>
|
||||
|
||||
|
||||
<div id="console">
|
||||
</div>
|
||||
<div id="map" class="map"></div>
|
||||
|
|
Loading…
Add table
Reference in a new issue