chore: automated housekeeping...

This commit is contained in:
Pieter Vander Vennet 2025-06-18 21:40:01 +02:00
parent 94c61744c0
commit 04c8ccb0d2
89 changed files with 2353 additions and 1390 deletions

View file

@ -385,13 +385,11 @@ export class GenerateDocs extends Script {
}
allLayers.forEach((layer) => {
const element = layer.generateDocumentation(
{
usedInThemes: themesPerLayer.get(layer.id),
layerIsNeededBy: layerIsNeededBy,
dependencies: DependencyCalculator.getLayerDependencies(layer),
},
)
const element = layer.generateDocumentation({
usedInThemes: themesPerLayer.get(layer.id),
layerIsNeededBy: layerIsNeededBy,
dependencies: DependencyCalculator.getLayerDependencies(layer),
})
const inlineSource = inlineLayers.get(layer.id)
ScriptUtils.erasableLog("Exporting layer documentation for", layer.id)
if (!existsSync("./Docs/Layers")) {
@ -483,13 +481,14 @@ export class GenerateDocs extends Script {
"questions.json",
true
)
const reusedTagRenderings = DependencyCalculator.tagRenderingImportedBy(qLayer, Array.from(AllSharedLayers.sharedLayers.values()))
const docs = qLayer.generateDocumentation({ reusedTagRenderings })
this.WriteMarkdownFile(
"./Docs/BuiltinQuestions.md",
docs,
["assets/layers/questions/questions.json"]
const reusedTagRenderings = DependencyCalculator.tagRenderingImportedBy(
qLayer,
Array.from(AllSharedLayers.sharedLayers.values())
)
const docs = qLayer.generateDocumentation({ reusedTagRenderings })
this.WriteMarkdownFile("./Docs/BuiltinQuestions.md", docs, [
"assets/layers/questions/questions.json",
])
}
private generateForTheme(theme: ThemeConfig): void {
@ -590,15 +589,13 @@ export class GenerateDocs extends Script {
...Utils.NoNull(
Constants.priviliged_layers.map((id) => AllSharedLayers.sharedLayers.get(id))
).map((l) =>
l.generateDocumentation(
{
usedInThemes: themesPerLayer.get(l.id),
layerIsNeededBy: layerIsNeededBy,
dependencies: DependencyCalculator.getLayerDependencies(l),
addedByDefault: Constants.added_by_default.indexOf(<any>l.id) >= 0,
canBeIncluded: Constants.no_include.indexOf(<any>l.id) < 0,
},
)
l.generateDocumentation({
usedInThemes: themesPerLayer.get(l.id),
layerIsNeededBy: layerIsNeededBy,
dependencies: DependencyCalculator.getLayerDependencies(l),
addedByDefault: Constants.added_by_default.indexOf(<any>l.id) >= 0,
canBeIncluded: Constants.no_include.indexOf(<any>l.id) < 0,
})
),
"# Normal layers",
"The following layers are included in MapComplete:",

View file

@ -14,7 +14,11 @@ import {
import { Translation } from "../src/UI/i18n/Translation"
import { PrepareLayer } from "../src/Models/ThemeConfig/Conversion/PrepareLayer"
import { PrepareTheme } from "../src/Models/ThemeConfig/Conversion/PrepareTheme"
import { Conversion, DesugaringContext, DesugaringStep } from "../src/Models/ThemeConfig/Conversion/Conversion"
import {
Conversion,
DesugaringContext,
DesugaringStep,
} from "../src/Models/ThemeConfig/Conversion/Conversion"
import { Utils } from "../src/Utils"
import Script from "./Script"
import { AllSharedLayers } from "../src/Customizations/AllSharedLayers"
@ -31,7 +35,10 @@ import { Translatable } from "../src/Models/ThemeConfig/Json/Translatable"
import { ValidateThemeAndLayers } from "../src/Models/ThemeConfig/Conversion/ValidateThemeAndLayers"
import { ExtractImages } from "../src/Models/ThemeConfig/Conversion/FixImages"
import { TagRenderingConfigJson } from "../src/Models/ThemeConfig/Json/TagRenderingConfigJson"
import { LayerConfigDependencyGraph, LevelInfo } from "../src/Models/ThemeConfig/LayerConfigDependencyGraph"
import {
LayerConfigDependencyGraph,
LevelInfo,
} from "../src/Models/ThemeConfig/LayerConfigDependencyGraph"
// This scripts scans 'src/assets/layers/*.json' for layer definition files and 'src/assets/themes/*.json' for theme definition files.
// It spits out an overview of those to be used to load them
@ -106,7 +113,7 @@ class AddIconSummary extends DesugaringStep<{ raw: LayerConfigJson; parsed: Laye
static singleton = new AddIconSummary()
constructor() {
super("AddIconSummary","Adds an icon summary for quick reference")
super("AddIconSummary", "Adds an icon summary for quick reference")
}
convert(json: { raw: LayerConfigJson; parsed: LayerConfig }) {

View file

@ -235,12 +235,12 @@ class GenerateLayouts extends Script {
orientation: "portrait-primary, landscape-primary",
icons: icons,
categories: ["map", "navigation"],
"protocol_handlers": [
protocol_handlers: [
{
"protocol": "geo",
"url": `/${id.toLowerCase()}.html?geouri=%s`
}
]
protocol: "geo",
url: `/${id.toLowerCase()}.html?geouri=%s`,
},
],
}
return {
manifest,

View file

@ -25,7 +25,6 @@ export class GenerateSunnyUnlabeled extends Script {
delete hosted.sources.protomaps.url
hosted.sources.protomaps["tiles"] = [tilesource]
writeFileSync("public/assets/sunny-hosted.json", JSON.stringify(hosted, null, " "))
}
async main(args: string[]): Promise<void> {