Merge pull request #156 from chrneumann/fix/server-with-fresh-rep

Fix/server with fresh rep
This commit is contained in:
Pieter Vander Vennet 2020-11-15 16:09:05 +01:00 committed by GitHub
commit 34d1d2eef2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 20 additions and 14 deletions

View file

@ -84,16 +84,16 @@ To develop:
0. Make a fork and clone the repository. 0. Make a fork and clone the repository.
1. Install `npm`. Linux: `sudo apt install npm` (or your favourite package manager), Windows: install nodeJS: https://nodejs.org/en/download/ 1. Install `npm`. Linux: `sudo apt install npm` (or your favourite package manager), Windows: install nodeJS: https://nodejs.org/en/download/
2. Run `npm install` to install the dependencies 2. Run `npm install` to install the package dependencies
3. Run `npm run start` to host a local testversion at http://localhost:1234/index.html 3. Run `npm run generate` to generate some additional dependencies
4. By default, the 'bookcases'-theme is loaded. In order to load another theme, use `layout=themename` or `userlayout=true#<layout configuration>`. Note that the custom URLs (e.g. `bookcases.html`, `aed.html`, ...) _don't_ exist on the development version. (These are automatically generated from a template on the server). 4. Run `npm run start` to host a local testversion at http://localhost:1234/index.html
5. By default, the 'bookcases'-theme is loaded. In order to load another theme, use `layout=themename` or `userlayout=true#<layout configuration>`. Note that the custom URLs (e.g. `bookcases.html`, `aed.html`, ...) _don't_ exist on the development version. (These are automatically generated from a template on the server).
To deploy: To deploy:
0. `rm -rf dist/` to remove the local build 0. `rm -rf dist/` to remove the local build
1. `ts-node createLayouts.ts` to generate the custom htmls, (such as `aed.html`, `bookcases.html`) 1. `npm run build`
2. `npm run build` 2. Copy the entire `dist` folder to where you host your website. Visiting `index.html` gives you the website
3. copy the entire `dist` folder to where you host your website. Visiting `index.html` gives you the website
## Translating MapComplete ## Translating MapComplete

View file

@ -5,7 +5,7 @@ Img.runningFromConsole = true;
UIElement.runningFromConsole = true; UIElement.runningFromConsole = true;
import {AllKnownLayouts} from "./Customizations/AllKnownLayouts"; import {AllKnownLayouts} from "./Customizations/AllKnownLayouts";
import {readFileSync, writeFile, writeFileSync} from "fs"; import {existsSync, mkdirSync, readFileSync, writeFile, writeFileSync} from "fs";
import Locale from "./UI/i18n/Locale"; import Locale from "./UI/i18n/Locale";
import svg2img from 'promise-svg2img'; import svg2img from 'promise-svg2img';
import Translations from "./UI/i18n/Translations"; import Translations from "./UI/i18n/Translations";
@ -244,6 +244,12 @@ let wikiPage = "{|class=\"wikitable sortable\"\n" +
"! Name, link !! Genre !! Covered region !! Language !! Description !! Free materials !! Image\n" + "! Name, link !! Genre !! Covered region !! Language !! Description !! Free materials !! Image\n" +
"|-"; "|-";
const generatedDir = "./assets/generated";
if (! existsSync(generatedDir)) {
mkdirSync(generatedDir)
}
for (const layoutName in all) { for (const layoutName in all) {
if (blacklist.indexOf(layoutName.toLowerCase()) >= 0) { if (blacklist.indexOf(layoutName.toLowerCase()) >= 0) {
console.log(`Skipping a layout with name${layoutName}, it is on the blacklist`); console.log(`Skipping a layout with name${layoutName}, it is on the blacklist`);
@ -269,7 +275,7 @@ for (const layoutName in all) {
wikiPage += "|}" wikiPage += "|}"
writeFile("./assets/generated/wikiIndex", wikiPage, (err) => { writeFile(generatedDir + "/wikiIndex", wikiPage, (err) => {
if (err !== null) { if (err !== null) {
console.log("Could not save wikiindex", err); console.log("Could not save wikiindex", err);
} }

View file

@ -1,8 +1,5 @@
#! /bin/bash #! /bin/bash
cd assets/ && wget https://osmlab.github.io/editor-layer-index/imagery.geojson --output-document=editor-layer-index.json
cd ..
mkdir -p assets/generated mkdir -p assets/generated
ts-node createLayouts.ts || { echo 'Creating layouts failed' ; exit 1; } ts-node createLayouts.ts || { echo 'Creating layouts failed' ; exit 1; }
find -name '*.png' | parallel optipng '{}' find -name '*.png' | parallel optipng '{}'

View file

@ -13,9 +13,12 @@
] ]
}, },
"scripts": { "scripts": {
"start": "parcel *.html UI/** Logic/** assets/** vendor/* vendor/*/*", "start": "parcel *.html UI/** Logic/** assets/** assets/**/** assets/**/**/** vendor/* vendor/*/*",
"generate": "ts-node createLayouts.ts", "generate:editor-layer-index": "cd assets/ && wget https://osmlab.github.io/editor-layer-index/imagery.geojson --output-document=editor-layer-index.json",
"build": "rm -rf dist/ && ts-node generateIncludedImages.ts && parcel build --public-url ./ *.html assets/** assets/**/** assets/**/**/** vendor/* vendor/*/*", "generate:included-images": "ts-node generateIncludedImages.ts",
"generate:layouts": "ts-node createLayouts.ts",
"generate": "npm run generate:included-images && npm run generate:layouts && npm run generate:editor-layer-index",
"build": "rm -rf dist/ npm run generate && parcel build --public-url ./ *.html assets/** assets/**/** assets/**/**/** vendor/* vendor/*/*",
"test": "ts-node test/*" "test": "ts-node test/*"
}, },
"keywords": [ "keywords": [