forked from MapComplete/MapComplete
		
	Cleanup script again, webmanifest already uses the relative manifest + add small script to create a contributors JSON file
This commit is contained in:
		
							parent
							
								
									35ecc21e09
								
							
						
					
					
						commit
						e26999b31b
					
				
					 4 changed files with 118 additions and 9 deletions
				
			
		
							
								
								
									
										108
									
								
								assets/contributors.json
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										108
									
								
								assets/contributors.json
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,108 @@
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					  "contributors": [
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "Noémie",
 | 
				
			||||||
 | 
					      "commits": 1
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "Schouppe Joost",
 | 
				
			||||||
 | 
					      "commits": 1
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "tbowdecl97",
 | 
				
			||||||
 | 
					      "commits": 1
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "Thibault Molleman",
 | 
				
			||||||
 | 
					      "commits": 1
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "Tomas Fiers",
 | 
				
			||||||
 | 
					      "commits": 1
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "David Haberthür",
 | 
				
			||||||
 | 
					      "commits": 2
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "graveelius",
 | 
				
			||||||
 | 
					      "commits": 2
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "pbarban",
 | 
				
			||||||
 | 
					      "commits": 2
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "Sebastian Kürten",
 | 
				
			||||||
 | 
					      "commits": 2
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "Stanislas Gueniffey",
 | 
				
			||||||
 | 
					      "commits": 2
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "Mateusz Konieczny",
 | 
				
			||||||
 | 
					      "commits": 4
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "dependabot[bot]",
 | 
				
			||||||
 | 
					      "commits": 5
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "pelderson",
 | 
				
			||||||
 | 
					      "commits": 6
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "Binnette",
 | 
				
			||||||
 | 
					      "commits": 7
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "Flo Edelmann",
 | 
				
			||||||
 | 
					      "commits": 7
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "Joost",
 | 
				
			||||||
 | 
					      "commits": 7
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "yopaseopor",
 | 
				
			||||||
 | 
					      "commits": 7
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "Midgard",
 | 
				
			||||||
 | 
					      "commits": 8
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "Bavo Vanderghote",
 | 
				
			||||||
 | 
					      "commits": 12
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "ToastHawaii",
 | 
				
			||||||
 | 
					      "commits": 15
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "Pieter Fiers",
 | 
				
			||||||
 | 
					      "commits": 31
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "Win Olario",
 | 
				
			||||||
 | 
					      "commits": 31
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "Christian Neumann",
 | 
				
			||||||
 | 
					      "commits": 33
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "Tobias",
 | 
				
			||||||
 | 
					      "commits": 35
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "pietervdvn",
 | 
				
			||||||
 | 
					      "commits": 512
 | 
				
			||||||
 | 
					    },
 | 
				
			||||||
 | 
					    {
 | 
				
			||||||
 | 
					      "contributor": "Pieter Vander Vennet",
 | 
				
			||||||
 | 
					      "commits": 669
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					  ]
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -20,18 +20,19 @@
 | 
				
			||||||
    "generate:layeroverview": "ts-node scripts/generateLayerOverview.ts --no-fail",
 | 
					    "generate:layeroverview": "ts-node scripts/generateLayerOverview.ts --no-fail",
 | 
				
			||||||
    "generate:licenses": "ts-node scripts/generateLicenseInfo.ts --no-fail",
 | 
					    "generate:licenses": "ts-node scripts/generateLicenseInfo.ts --no-fail",
 | 
				
			||||||
    "generate:report": "cd Docs/Tools && ./compileStats.sh && git commit . -m 'New statistics ands graphs' && git push",
 | 
					    "generate:report": "cd Docs/Tools && ./compileStats.sh && git commit . -m 'New statistics ands graphs' && git push",
 | 
				
			||||||
 | 
					    "generate:contributor-list": "git log --pretty='%aN' | sort | uniq -c | sort -h| sed 's/ *\\([0-9]*\\) \\(.*\\)$/{\"contributor\":\"\\2\", \"commits\":\\1}/' | tr '\\n' ',' | sed 's/^/{\"contributors\":[/' | sed 's/,$/]}/' > assets/contributors.json",
 | 
				
			||||||
    "validate:layeroverview": "ts-node scripts/generateLayerOverview.ts --report",
 | 
					    "validate:layeroverview": "ts-node scripts/generateLayerOverview.ts --report",
 | 
				
			||||||
    "validate:licenses": "ts-node scripts/generateLicenseInfo.ts --report",
 | 
					    "validate:licenses": "ts-node scripts/generateLicenseInfo.ts --report",
 | 
				
			||||||
    "optimize-images": "cd assets/generated/ &&  find -name '*.png' -exec optipng '{}' \\; && echo 'PNGs are optimized'",
 | 
					    "optimize-images": "cd assets/generated/ &&  find -name '*.png' -exec optipng '{}' \\; && echo 'PNGs are optimized'",
 | 
				
			||||||
    "reset:layeroverview": "echo '{\"layers\":[], \"themes\":[]}' > ./assets/generated/known_layers_and_themes.json",
 | 
					    "reset:layeroverview": "echo '{\"layers\":[], \"themes\":[]}' > ./assets/generated/known_layers_and_themes.json",
 | 
				
			||||||
    "generate": "mkdir -p ./assets/generated && npm run reset:layeroverview && npm run generate:images && npm run generate:translations && npm run generate:licenses && npm run generate:licenses && npm run generate:layeroverview",
 | 
					    "generate": "mkdir -p ./assets/generated && npm run reset:layeroverview && npm run generate:images && npm run generate:translations && npm run generate:licenses && npm run generate:licenses && npm run generate:layeroverview",
 | 
				
			||||||
    "build": "rm -rf dist/ && npm run generate && parcel build --public-url ./ *.html assets/** assets/**/** assets/**/**/** vendor/* vendor/*/*",
 | 
					    "build": "rm -rf dist/ && npm run generate && parcel build --public-url ./ *.html assets/** assets/**/** assets/**/**/** vendor/* vendor/*/*",
 | 
				
			||||||
    "prepare-deploy": "npm run generate && npm run test && npm run generate:editor-layer-index && npm run generate:layouts && npm run generate:layeroverview && npm run build && rm -rf .cache && npm run generate:docs",
 | 
					    "prepare-deploy": "npm run generate && npm run test && npm run generate:editor-layer-index && npm run generate:layeroverview && npm run generate:layouts && npm run build && rm -rf .cache && npm run generate:docs",
 | 
				
			||||||
    "deploy:staging": "npm run prepare-deploy && rm -rf /home/pietervdvn/git/pietervdvn.github.io/Staging/* && cp -r dist/* /home/pietervdvn/git/pietervdvn.github.io/Staging/ && cd /home/pietervdvn/git/pietervdvn.github.io/ && git add * && git commit -m 'New MapComplete Version' && git push && cd - && npm run clean",
 | 
					    "deploy:staging": "npm run prepare-deploy && rm -rf /home/pietervdvn/git/pietervdvn.github.io/Staging/* && cp -r dist/* /home/pietervdvn/git/pietervdvn.github.io/Staging/ && cd /home/pietervdvn/git/pietervdvn.github.io/ && git add * && git commit -m 'New MapComplete Version' && git push && cd - && npm run clean",
 | 
				
			||||||
    "deploy:pietervdvn": "cd /home/pietervdvn/git/pietervdvn.github.io/ && git pull && cd - && npm run prepare-deploy && rm -rf /home/pietervdvn/git/pietervdvn.github.io/MapComplete/* && cp -r dist/* /home/pietervdvn/git/pietervdvn.github.io/MapComplete/ && cd /home/pietervdvn/git/pietervdvn.github.io/ && git add * && git commit -m 'New MapComplete Version' && git push && cd - && npm run clean",
 | 
					    "deploy:pietervdvn": "cd /home/pietervdvn/git/pietervdvn.github.io/ && git pull && cd - && npm run prepare-deploy && rm -rf /home/pietervdvn/git/pietervdvn.github.io/MapComplete/* && cp -r dist/* /home/pietervdvn/git/pietervdvn.github.io/MapComplete/ && cd /home/pietervdvn/git/pietervdvn.github.io/ && git add * && git commit -m 'New MapComplete Version' && git push && cd - && npm run clean",
 | 
				
			||||||
    "deploy:production": "rm -rf ./assets/generated && npm run prepare-deploy && npm run optimize-images && rm -rf /home/pietervdvn/git/mapcomplete.github.io/* && cp -r dist/* /home/pietervdvn/git/mapcomplete.github.io/ && cd /home/pietervdvn/git/mapcomplete.github.io/ && echo \"mapcomplete.osm.be\" > CNAME  && git add * && git commit -m 'New MapComplete Version' && git push && cd - && npm run clean",
 | 
					    "deploy:production": "rm -rf ./assets/generated && npm run prepare-deploy && npm run optimize-images && rm -rf /home/pietervdvn/git/mapcomplete.github.io/* && cp -r dist/* /home/pietervdvn/git/mapcomplete.github.io/ && cd /home/pietervdvn/git/mapcomplete.github.io/ && echo \"mapcomplete.osm.be\" > CNAME  && git add * && git commit -m 'New MapComplete Version' && git push && cd - && npm run clean",
 | 
				
			||||||
    "lint": "tslint --project . -c tslint.json '**.ts' ",
 | 
					    "lint": "tslint --project . -c tslint.json '**.ts' ",
 | 
				
			||||||
    "clean": "rm -rf .cache/ && (find *.html | grep -v \"\\(index\\|land\\|test\\|preferences\\|customGenerator\\).html\" | xargs rm) && rm *.webmanifest"
 | 
					   "clean": "rm -rf .cache/ && (find *.html | grep -v \"\\(index\\|land\\|test\\|preferences\\|customGenerator\\).html\" | xargs rm) && rm *.webmanifest"
 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
  "keywords": [
 | 
					  "keywords": [
 | 
				
			||||||
    "OpenStreetMap",
 | 
					    "OpenStreetMap",
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -52,11 +52,12 @@ async function createIcon(iconPath: string, size: number) {
 | 
				
			||||||
    return newname;
 | 
					    return newname;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
async function createManifest(layout: LayoutConfig, relativePath: string) {
 | 
					async function createManifest(layout: LayoutConfig) {
 | 
				
			||||||
    const name = layout.id;
 | 
					    const name = layout.id;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    Translation.forcedLanguage = "en"
 | 
					    Translation.forcedLanguage = "en"
 | 
				
			||||||
    const icons = [];
 | 
					    const icons = [];
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    let icon = layout.icon;
 | 
					    let icon = layout.icon;
 | 
				
			||||||
    if (icon.endsWith(".svg") || icon.startsWith("<svg") || icon.startsWith("<?xml")) {
 | 
					    if (icon.endsWith(".svg") || icon.startsWith("<svg") || icon.startsWith("<?xml")) {
 | 
				
			||||||
| 
						 | 
					@ -93,7 +94,7 @@ async function createManifest(layout: LayoutConfig, relativePath: string) {
 | 
				
			||||||
    return {
 | 
					    return {
 | 
				
			||||||
        name: name,
 | 
					        name: name,
 | 
				
			||||||
        short_name: ogTitle,
 | 
					        short_name: ogTitle,
 | 
				
			||||||
        start_url: `${relativePath}/${layout.id.toLowerCase()}.html`,
 | 
					        start_url: `${layout.id.toLowerCase()}.html`,
 | 
				
			||||||
        display: "standalone",
 | 
					        display: "standalone",
 | 
				
			||||||
        background_color: "#fff",
 | 
					        background_color: "#fff",
 | 
				
			||||||
        description: ogDescr,
 | 
					        description: ogDescr,
 | 
				
			||||||
| 
						 | 
					@ -176,7 +177,6 @@ if (!existsSync(generatedDir)) {
 | 
				
			||||||
const blacklist = ["", "test", ".", "..", "manifest", "index", "land", "preferences", "account", "openstreetmap", "custom"]
 | 
					const blacklist = ["", "test", ".", "..", "manifest", "index", "land", "preferences", "account", "openstreetmap", "custom"]
 | 
				
			||||||
// @ts-ignore
 | 
					// @ts-ignore
 | 
				
			||||||
const all : LayoutConfigJson[] = all_known_layouts.themes;
 | 
					const all : LayoutConfigJson[] = all_known_layouts.themes;
 | 
				
			||||||
 | 
					 | 
				
			||||||
for (const i in all) {
 | 
					for (const i in all) {
 | 
				
			||||||
    const layoutConfigJson : LayoutConfigJson = all[i]
 | 
					    const layoutConfigJson : LayoutConfigJson = all[i]
 | 
				
			||||||
    const layout = new LayoutConfig(layoutConfigJson, true, "generating layouts")
 | 
					    const layout = new LayoutConfig(layoutConfigJson, true, "generating layouts")
 | 
				
			||||||
| 
						 | 
					@ -190,7 +190,7 @@ for (const i in all) {
 | 
				
			||||||
            console.log("Could not write manifest for ", layoutName, " because ", err)
 | 
					            console.log("Could not write manifest for ", layoutName, " because ", err)
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    };
 | 
					    };
 | 
				
			||||||
    createManifest(layout, "").then(manifObj => {
 | 
					    createManifest(layout).then(manifObj => {
 | 
				
			||||||
        const manif = JSON.stringify(manifObj, undefined, 2);
 | 
					        const manif = JSON.stringify(manifObj, undefined, 2);
 | 
				
			||||||
        const manifestLocation = encodeURIComponent(layout.id.toLowerCase()) + ".webmanifest";
 | 
					        const manifestLocation = encodeURIComponent(layout.id.toLowerCase()) + ".webmanifest";
 | 
				
			||||||
        writeFile(manifestLocation, manif, err);
 | 
					        writeFile(manifestLocation, manif, err);
 | 
				
			||||||
| 
						 | 
					@ -215,7 +215,7 @@ createManifest(new LayoutConfig({
 | 
				
			||||||
    title: {en:"MapComplete"},
 | 
					    title: {en:"MapComplete"},
 | 
				
			||||||
    version: Constants.vNumber,
 | 
					    version: Constants.vNumber,
 | 
				
			||||||
    description: {en:"A thematic map viewer and editor based on OpenStreetMap"}
 | 
					    description: {en:"A thematic map viewer and editor based on OpenStreetMap"}
 | 
				
			||||||
}), "").then(manifObj => {
 | 
					})).then(manifObj => {
 | 
				
			||||||
    const manif = JSON.stringify(manifObj, undefined, 2);
 | 
					    const manif = JSON.stringify(manifObj, undefined, 2);
 | 
				
			||||||
    writeFileSync("index.manifest", manif)
 | 
					    writeFileSync("index.manifest", manif)
 | 
				
			||||||
})
 | 
					})
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -34,11 +34,11 @@ function genTranslations() {
 | 
				
			||||||
    const translations = JSON.parse(fs.readFileSync("./assets/translations.json", "utf-8"))
 | 
					    const translations = JSON.parse(fs.readFileSync("./assets/translations.json", "utf-8"))
 | 
				
			||||||
    const transformed = transformTranslation(translations);
 | 
					    const transformed = transformTranslation(translations);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    let module = `import {Translation} from "./UI/i18n/Translation"\n\nexport default class AllTranslationAssets {\n\n`;
 | 
					    let module = `import {Translation} from "../../UI/i18n/Translation"\n\nexport default class CompiledTranslations {\n\n`;
 | 
				
			||||||
    module += " public static t = " + transformed;
 | 
					    module += " public static t = " + transformed;
 | 
				
			||||||
    module += "}"
 | 
					    module += "}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    fs.writeFileSync("AllTranslationAssets.ts", module);
 | 
					    fs.writeFileSync("./assets/generated/CompiledTranslations.ts", module);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue