WebGL is not supported or not enabled. This is
- essential
- for MapComplete to function, please enable this.
+
+ WebGL is not supported or not enabled. This is essential for MapComplete to function, please
+ enable this.
{:else}
diff --git a/src/UI/SpecialVisualization.ts b/src/UI/SpecialVisualization.ts
index d032165ace..1c595fd0f7 100644
--- a/src/UI/SpecialVisualization.ts
+++ b/src/UI/SpecialVisualization.ts
@@ -1,7 +1,11 @@
import { Store, UIEventSource } from "../Logic/UIEventSource"
import BaseUIElement from "./BaseUIElement"
import ThemeConfig from "../Models/ThemeConfig/ThemeConfig"
-import { FeatureSource, IndexedFeatureSource, WritableFeatureSource } from "../Logic/FeatureSource/FeatureSource"
+import {
+ FeatureSource,
+ IndexedFeatureSource,
+ WritableFeatureSource,
+} from "../Logic/FeatureSource/FeatureSource"
import { OsmConnection } from "../Logic/Osm/OsmConnection"
import { Changes } from "../Logic/Osm/Changes"
import { ExportableMap, MapProperties } from "../Models/MapProperties"
diff --git a/src/UI/SpecialVisualizations.ts b/src/UI/SpecialVisualizations.ts
index 8844bedbf5..65c8a7287c 100644
--- a/src/UI/SpecialVisualizations.ts
+++ b/src/UI/SpecialVisualizations.ts
@@ -3,7 +3,11 @@ import { FixedUiElement } from "./Base/FixedUiElement"
import BaseUIElement from "./BaseUIElement"
import Title from "./Base/Title"
import { default as FeatureTitle } from "./Popup/Title.svelte"
-import { RenderingSpecification, SpecialVisualization, SpecialVisualizationState } from "./SpecialVisualization"
+import {
+ RenderingSpecification,
+ SpecialVisualization,
+ SpecialVisualizationState,
+} from "./SpecialVisualization"
import { HistogramViz } from "./Popup/HistogramViz"
import MinimapViz from "./Popup/MinimapViz.svelte"
import { ShareLinkViz } from "./Popup/ShareLinkViz"
@@ -717,7 +721,9 @@ export default class SpecialVisualizations {
imagePrefixes = [].concat(...args.map((a) => a.split(",")))
}
const images = AllImageProviders.loadImagesFor(tags, imagePrefixes)
- const estimated = tags.mapD(tags => AllImageProviders.estimateNumberOfImages(tags, imagePrefixes))
+ const estimated = tags.mapD((tags) =>
+ AllImageProviders.estimateNumberOfImages(tags, imagePrefixes)
+ )
return new SvelteUIElement(ImageCarousel, { state, tags, images, estimated })
},
},
diff --git a/src/UI/Studio/SchemaBasedMultiType.svelte b/src/UI/Studio/SchemaBasedMultiType.svelte
index e594fb6ff3..09bfc42220 100644
--- a/src/UI/Studio/SchemaBasedMultiType.svelte
+++ b/src/UI/Studio/SchemaBasedMultiType.svelte
@@ -30,7 +30,6 @@
let lastIsString = false
{
-
const types: string | string[] = Array.isArray(schema.type)
? schema.type[schema.type.length - 1]["type"]
: []
@@ -64,7 +63,7 @@
inline: true,
type: schema.hints.typehint,
addExtraTags: ["chosen_type_index="],
- helperArgs: []
+ helperArgs: [],
},
}
let tags = new UIEventSource
>({})
diff --git a/src/Utils.ts b/src/Utils.ts
index 1f0981d7e4..770c620585 100644
--- a/src/Utils.ts
+++ b/src/Utils.ts
@@ -1125,8 +1125,8 @@ In the case that MapComplete is pointed to the testing grounds, the edit will be
element.click()
}
- public static async waitFor(timeMillis: number): Promise;
- public static async waitFor(timeMillis: number, t: T): Promise;
+ public static async waitFor(timeMillis: number): Promise
+ public static async waitFor(timeMillis: number, t: T): Promise
public static async waitFor(timeMillis: number, t: T): Promise {
return new Promise((resolve) => {
diff --git a/src/assets/contributors.json b/src/assets/contributors.json
index 8bde458853..88c68c057b 100644
--- a/src/assets/contributors.json
+++ b/src/assets/contributors.json
@@ -1,7 +1,7 @@
{
"contributors": [
{
- "commits": 8870,
+ "commits": 8941,
"contributor": "Pieter Vander Vennet"
},
{
diff --git a/src/assets/language_in_country.json b/src/assets/language_in_country.json
index b900d23d86..4b1c29b7e1 100644
--- a/src/assets/language_in_country.json
+++ b/src/assets/language_in_country.json
@@ -181,9 +181,9 @@
"ar"
],
"ER": [
+ "en",
"ar",
- "ti",
- "en"
+ "ti"
],
"ES": [
"es",
@@ -236,9 +236,9 @@
"fr"
],
"GQ": [
+ "pt",
"fr",
- "es",
- "pt"
+ "es"
],
"GR": [
"el"
@@ -309,7 +309,6 @@
"sw"
],
"KG": [
- "ru",
"ky"
],
"KH": [
diff --git a/src/assets/language_translations.json b/src/assets/language_translations.json
index 1586b66017..638123742e 100644
--- a/src/assets/language_translations.json
+++ b/src/assets/language_translations.json
@@ -10121,7 +10121,6 @@
"_meta": {
"countries": [
"BY",
- "KG",
"KZ",
"RU",
"TJ"
diff --git a/src/assets/schemas/layerconfigmeta.json b/src/assets/schemas/layerconfigmeta.json
index e2f418b4c1..aa9494ed89 100644
--- a/src/assets/schemas/layerconfigmeta.json
+++ b/src/assets/schemas/layerconfigmeta.json
@@ -10920,6 +10920,10 @@
"if": "value=doctors",
"then": "doctors - This layer shows doctor offices"
},
+ {
+ "if": "value=dog_toilet",
+ "then": "dog_toilet - A dog toilet is a facility designated for dogs to urinate and excrete. This can be a designated, signposted patch of grass, a sand pit or a fenced area."
+ },
{
"if": "value=dogpark",
"then": "dogpark - A layer showing dogparks, which are areas where dog are allowed to run without a leash"
diff --git a/src/assets/schemas/layoutconfigmeta.json b/src/assets/schemas/layoutconfigmeta.json
index c81bc0692d..9427e6b37b 100644
--- a/src/assets/schemas/layoutconfigmeta.json
+++ b/src/assets/schemas/layoutconfigmeta.json
@@ -799,6 +799,10 @@
"if": "value=doctors",
"then": "doctors (builtin) - This layer shows doctor offices"
},
+ {
+ "if": "value=dog_toilet",
+ "then": "dog_toilet (builtin) - A dog toilet is a facility designated for dogs to urinate and excrete. This can be a designated, signposted patch of grass, a sand pit or a fenced area."
+ },
{
"if": "value=dogpark",
"then": "dogpark (builtin) - A layer showing dogparks, which are areas where dog are allowed to run without a leash"
@@ -13531,6 +13535,10 @@
"if": "value=doctors",
"then": "doctors - This layer shows doctor offices"
},
+ {
+ "if": "value=dog_toilet",
+ "then": "dog_toilet - A dog toilet is a facility designated for dogs to urinate and excrete. This can be a designated, signposted patch of grass, a sand pit or a fenced area."
+ },
{
"if": "value=dogpark",
"then": "dogpark - A layer showing dogparks, which are areas where dog are allowed to run without a leash"
@@ -35299,6 +35307,10 @@
"if": "value=doctors",
"then": "doctors - This layer shows doctor offices"
},
+ {
+ "if": "value=dog_toilet",
+ "then": "dog_toilet - A dog toilet is a facility designated for dogs to urinate and excrete. This can be a designated, signposted patch of grass, a sand pit or a fenced area."
+ },
{
"if": "value=dogpark",
"then": "dogpark - A layer showing dogparks, which are areas where dog are allowed to run without a leash"
diff --git a/src/assets/svg/Forgejo.svelte b/src/assets/svg/Forgejo.svelte
new file mode 100644
index 0000000000..27fcfb0725
--- /dev/null
+++ b/src/assets/svg/Forgejo.svelte
@@ -0,0 +1,4 @@
+
+
\ No newline at end of file
diff --git a/src/assets/translators.json b/src/assets/translators.json
index c669318107..3b0cbb8e53 100644
--- a/src/assets/translators.json
+++ b/src/assets/translators.json
@@ -17,7 +17,7 @@
"contributor": "Anonymous"
},
{
- "commits": 112,
+ "commits": 119,
"contributor": "mcliquid"
},
{
@@ -29,7 +29,7 @@
"contributor": "Robin van der Linde"
},
{
- "commits": 80,
+ "commits": 82,
"contributor": "mike140"
},
{
@@ -216,6 +216,10 @@
"commits": 9,
"contributor": "Jacque Fresco"
},
+ {
+ "commits": 8,
+ "contributor": "Weblate Admin"
+ },
{
"commits": 8,
"contributor": "Joost Schouppe"
@@ -228,10 +232,6 @@
"commits": 8,
"contributor": "Vinicius"
},
- {
- "commits": 7,
- "contributor": "Weblate Admin"
- },
{
"commits": 7,
"contributor": "Franco"
@@ -588,6 +588,14 @@
"commits": 2,
"contributor": "Leo Alcaraz"
},
+ {
+ "commits": 1,
+ "contributor": "Manuel"
+ },
+ {
+ "commits": 1,
+ "contributor": "Hufkratzer"
+ },
{
"commits": 1,
"contributor": "TĂșllio Morais Franca"
diff --git a/src/index.ts b/src/index.ts
index f7afb22783..36ee18a74e 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -2,7 +2,6 @@ import DetermineTheme from "./Logic/DetermineTheme"
import SingleThemeGui from "./UI/SingleThemeGui.svelte"
import CustomThemeError from "./UI/CustomThemeError.svelte"
-
async function main() {
const target = document.getElementById("maindiv")
const childs = Array.from(target.children)
@@ -10,7 +9,7 @@ async function main() {
const theme = await DetermineTheme.getTheme()
new SingleThemeGui({
target,
- props: { theme }
+ props: { theme },
})
childs.forEach((ch) => target.removeChild(ch))
Array.from(document.getElementsByClassName("delete-on-load")).forEach((el) => {
@@ -24,10 +23,9 @@ async function main() {
target,
props: {
stack: err.toString().split("\n"),
- customDefinition
- }
+ customDefinition,
+ },
})
-
}
}