From 7acddc728114bd93f8302020f8f3494ba809739e Mon Sep 17 00:00:00 2001 From: Pieter Vander Vennet Date: Wed, 13 Aug 2025 23:09:49 +0200 Subject: [PATCH] Chore: housekeeping --- app/AppIndex.svelte | 35 +++++---- capacitor.config.ts | 14 ++-- package-lock.json | 6 +- public/assets/sunny-hosted.json | 7 +- public/assets/sunny-unlabeled.json | 9 ++- scripts/osm2pgsql/generateBuildDbScript.ts | 15 ++-- scripts/thieves/readIdPresets.ts | 10 +-- .../ClusteringFeatureSource.spec.ts | 76 ++++++++----------- 8 files changed, 84 insertions(+), 88 deletions(-) diff --git a/app/AppIndex.svelte b/app/AppIndex.svelte index 2c3ec1ca2..a0d1a8f89 100644 --- a/app/AppIndex.svelte +++ b/app/AppIndex.svelte @@ -10,7 +10,7 @@ const lng = Locale.language let fdroid = t.downloadOnFDroid.current - let supportedVersions: { version: number, codename: string } = [ + let supportedVersions: { version: number; codename: string } = [ { version: 9, codename: "pie" }, { version: 10, codename: "quince-tart" }, { version: 11, codename: "red-velvet-cake" }, @@ -56,11 +56,13 @@ {#each supportedVersions as v} + href={`https://builds.mapcomplete.org/apk/mapcomplete-latest-${ + v.version + }-${v.codename.toUpperCase()}.apk`} + > Android {v.version} ({v.codename}) {/each} - @@ -68,22 +70,27 @@ - -
- +
diff --git a/capacitor.config.ts b/capacitor.config.ts index ea3350695..f70edc7d9 100644 --- a/capacitor.config.ts +++ b/capacitor.config.ts @@ -1,11 +1,9 @@ - -import type { CapacitorConfig } from "@capacitor/cli"; +import type { CapacitorConfig } from "@capacitor/cli" const config: CapacitorConfig = { - appId: "org.mapcomplete", - appName: "MapComplete", - webDir: "dist-full" -}; - -export default config; + appId: "org.mapcomplete", + appName: "MapComplete", + webDir: "dist-full", +} +export default config diff --git a/package-lock.json b/package-lock.json index 078ab3951..7e7be7b78 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13004,9 +13004,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001726", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001726.tgz", - "integrity": "sha512-VQAUIUzBiZ/UnlM28fSp2CRF3ivUn1BWEvxMcVTNwpw91Py1pGbPIyIKtd+tzct9C3ouceCVdGAXxZOpZAsgdw==", + "version": "1.0.30001734", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001734.tgz", + "integrity": "sha512-uhE1Ye5vgqju6OI71HTQqcBCZrvHugk0MjLak7Q+HfoBgoq5Bi+5YnwjP4fjDgrtYr/l8MVRBvzz9dPD4KyK0A==", "dev": true, "funding": [ { diff --git a/public/assets/sunny-hosted.json b/public/assets/sunny-hosted.json index 7db18a255..d95276813 100644 --- a/public/assets/sunny-hosted.json +++ b/public/assets/sunny-hosted.json @@ -2,15 +2,16 @@ "#": "AUTOMATICALLY GENERATED! Do not edit.", "version": 8, "name": "style@4.0.0-alpha.0 theme@sunny", - "glyphs": "https://protomaps.github.io/basemaps-assets/fonts/{fontstack}/{range}.pbf", + "glyphs": "./assets/fonts/{fontstack}/{range}.pbf", "sources": { "protomaps": { "attribution": "Protomaps © OpenStreetMap", "type": "vector", - "maxzoom": 15, "tiles": [ "https://api.protomaps.com/tiles/v4/{z}/{x}/{y}.mvt?key=2af8b969a9e8b692" - ] + ], + "maxzoom": 15, + "minzoom": 0 } }, "layers": [ diff --git a/public/assets/sunny-unlabeled.json b/public/assets/sunny-unlabeled.json index 9bb5ea58d..6b8d73578 100644 --- a/public/assets/sunny-unlabeled.json +++ b/public/assets/sunny-unlabeled.json @@ -2,13 +2,16 @@ "#": "AUTOMATICALLY GENERATED! Do not edit.", "version": 8, "name": "style@4.0.0-alpha.0 theme@sunny-unlabeled", - "glyphs": "https://protomaps.github.io/basemaps-assets/fonts/{fontstack}/{range}.pbf", + "glyphs": "./assets/fonts/{fontstack}/{range}.pbf", "sources": { "protomaps": { "attribution": "Protomaps © OpenStreetMap", "type": "vector", - "url": "pmtiles://https://cache.mapcomplete.org/planet-latest.pmtiles", - "maxzoom": 15 + "tiles": [ + "pmtilesoffl://https://api.protomaps.com/tiles/v4/{z}/{x}/{y}.mvt?key=2af8b969a9e8b692" + ], + "maxzoom": 15, + "minzoom": 0 } }, "layers": [ diff --git a/scripts/osm2pgsql/generateBuildDbScript.ts b/scripts/osm2pgsql/generateBuildDbScript.ts index 9c44a39c4..a1777bdb0 100644 --- a/scripts/osm2pgsql/generateBuildDbScript.ts +++ b/scripts/osm2pgsql/generateBuildDbScript.ts @@ -199,14 +199,14 @@ class GenerateBuildDbScript extends Script { if (allLayers.size === 0) { throw "No layers found at all" } - const notCountedCutoff = 100*1000*1000 + const notCountedCutoff = 100 * 1000 * 1000 const notCounted: string[] = [] const allNeededLayers: Map = new Map< string, { tags: TagsFilter; foundInTheme: string[] } >() const tagInfo = new TagInfo() - const layerTotals = new Map(); + const layerTotals = new Map() for (const key of allLayers.keys()) { const layer = allLayers.get(key) if (!layer.isCounted) { @@ -214,11 +214,16 @@ class GenerateBuildDbScript extends Script { continue } let total = await tagInfo.getCountEstimateFor(layer.tags) - console.log("Keys " + layer.tags.asHumanString() + " might have up to " + total + " items") + console.log( + "Keys " + layer.tags.asHumanString() + " might have up to " + total + " items" + ) layerTotals.set(key, total) if (total > notCountedCutoff) { notCounted.push(key) - console.log("NOT indexing layer " + key + " as it exceeds the cutoff of", notCountedCutoff) + console.log( + "NOT indexing layer " + key + " as it exceeds the cutoff of", + notCountedCutoff + ) continue } allNeededLayers.set(key, layer) @@ -250,7 +255,7 @@ class GenerateBuildDbScript extends Script { ) console.log("Layer totals (including non-indexed):") for (const key of layerTotals.keys()) { - console.log(key,",\t",layerTotals.get(key), ",\t", allLayers.get(key).isCounted) + console.log(key, ",\t", layerTotals.get(key), ",\t", allLayers.get(key).isCounted) } } diff --git a/scripts/thieves/readIdPresets.ts b/scripts/thieves/readIdPresets.ts index f71a93c61..1d975d7f3 100644 --- a/scripts/thieves/readIdPresets.ts +++ b/scripts/thieves/readIdPresets.ts @@ -286,8 +286,7 @@ class ReadIdPresets extends Script { constructor() { super( [ - - "Reads the id-tagging-schema repository and steals the presets; which will be written into 'id_presets.json'\n\nArguments: [path-to-repository] [path-to-target]", + "Reads the id-tagging-schema repository and steals the presets; which will be written into 'id_presets.json'\n\nArguments: [path-to-repository] [path-to-target]", "Note that default arguments are used", "Before running this script, you'll want to have the following file structure:", "", @@ -299,7 +298,7 @@ class ReadIdPresets extends Script { "cd ../id-tagging-schema && git pull && nvm use && npm ci && npm run build && npm run dist", "", "Note: Font-Awesome has a 6.x and a 7.x branch; some icons are in one branch but not the other.", - "The source file is then loaded in ../id-tagging_schema/data/presets/shop/.Json" + "The source file is then loaded in ../id-tagging_schema/data/presets/shop/.Json", ].join("\n") ) } @@ -342,11 +341,11 @@ class ReadIdPresets extends Script { ) const roentgenThief = new MakiThief( gitReposRoot + "Roentgen/icons/", - targetDir+"roentgen-", + targetDir + "roentgen-", { authors: ["Roentgen icon set"], license: "CC-BY 4.0 International", - sources: ["https://github.com/enzet/Roentgen?"] + sources: ["https://github.com/enzet/Roentgen?"], }, "roentgen-" ) @@ -373,4 +372,3 @@ class ReadIdPresets extends Script { } new ReadIdPresets().run() - diff --git a/test/Logic/FeatureSource/ClusteringFeatureSource.spec.ts b/test/Logic/FeatureSource/ClusteringFeatureSource.spec.ts index d37b9b2e7..7e977e570 100644 --- a/test/Logic/FeatureSource/ClusteringFeatureSource.spec.ts +++ b/test/Logic/FeatureSource/ClusteringFeatureSource.spec.ts @@ -3,59 +3,47 @@ import { describe, it } from "vitest" import StaticFeatureSource from "../../../src/Logic/FeatureSource/Sources/StaticFeatureSource" import { ClusterGrouping, - ClusteringFeatureSource + ClusteringFeatureSource, } from "../../../src/Logic/FeatureSource/TiledFeatureSource/ClusteringFeatureSource" import { UIEventSource } from "../../../src/Logic/UIEventSource" import { expect } from "chai" const points: FeatureCollection = { - "type": "FeatureCollection", - "features": [ + type: "FeatureCollection", + features: [ { - "type": "Feature", - "properties": {name: "a"}, - "geometry": { - "coordinates": [ - 9.759318139161195, - 55.56552169756637 - ], - "type": "Point" - } + type: "Feature", + properties: { name: "a" }, + geometry: { + coordinates: [9.759318139161195, 55.56552169756637], + type: "Point", + }, }, { - "type": "Feature", - "properties": {name: "b"}, - "geometry": { - "coordinates": [ - 9.759768615515327, - 55.56569930560951 - ], - "type": "Point" - } + type: "Feature", + properties: { name: "b" }, + geometry: { + coordinates: [9.759768615515327, 55.56569930560951], + type: "Point", + }, }, { - "type": "Feature", - "properties": {name: "c"}, - "geometry": { - "coordinates": [ - 9.75879327221594, - 55.56569229478089 - ], - "type": "Point" - } + type: "Feature", + properties: { name: "c" }, + geometry: { + coordinates: [9.75879327221594, 55.56569229478089], + type: "Point", + }, }, { - "type": "Feature", - "properties": {name: "d"}, - "geometry": { - "coordinates": [ - 9.759380131319915, - 55.56507066300628 - ], - "type": "Point" - } - } - ] + type: "Feature", + properties: { name: "d" }, + geometry: { + coordinates: [9.759380131319915, 55.56507066300628], + type: "Point", + }, + }, + ], } describe("ClusteringFeatureSource", () => { @@ -65,7 +53,7 @@ describe("ClusteringFeatureSource", () => { // On zoomlevel 19, all points are in a different tile const clusteringSource = new ClusteringFeatureSource(source, zoom, "test", { cutoff: 2, - dontClusterAboveZoom: 100 + dontClusterAboveZoom: 100, }) const allClusters = ClusterGrouping.singleton.features expect(allClusters.data.length).to.eq(0) @@ -76,9 +64,5 @@ describe("ClusteringFeatureSource", () => { expect(allClusters.data.length).to.eq(1) expect(allClusters.data[0].properties["total_metric"]).to.eq("4") expect(clusteringSource.features.data.length).to.eq(0) - - - - }) })