diff --git a/README.md b/README.md
index a0cdd00..d5329e1 100644
--- a/README.md
+++ b/README.md
@@ -5,7 +5,7 @@
**Disclaimer: this is a work-in-progress technology preview**
-[![Play Online](https://thunderk.net/spacetac/play.svg)](https://thunderk.net/spacetac/)
+[![Play Online](https://thunderk.net/spacetac/play.png)](https://thunderk.net/spacetac/)
*Play directly in your browser, no download or dependency required.*
diff --git a/config/common.json b/config/common.json
index cca877e..4a3347a 100644
--- a/config/common.json
+++ b/config/common.json
@@ -2,6 +2,7 @@
"compilerOptions": {
"module": "system",
"composite": true,
+ "incremental": true,
"declaration": true,
"declarationMap": true,
"forceConsistentCasingInFileNames": true,
diff --git a/out/play.svg b/graphics/ui/play.svg
similarity index 51%
rename from out/play.svg
rename to graphics/ui/play.svg
index 93f3189..9c7464c 100644
--- a/out/play.svg
+++ b/graphics/ui/play.svg
@@ -7,48 +7,26 @@
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
- xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
- width="208.14761"
- height="80.830688"
- viewBox="0 0 208.14761 80.830688"
+ width="229.93575"
+ height="56.113953"
+ viewBox="0 0 229.93575 56.113953"
id="svg2"
version="1.1"
- inkscape:version="0.91 r13725"
- sodipodi:docname="play.svg">
+ inkscape:version="0.92.4 5da689c313, 2019-01-14"
+ sodipodi:docname="play.svg"
+ inkscape:export-filename="/home/michael/workspace/spacetac/out/play.png"
+ inkscape:export-xdpi="90"
+ inkscape:export-ydpi="90">
-
-
-
-
-
-
-
-
+ bendpath1="M 79.802044,-206.20927 H 187.85714"
+ bendpath2="M 187.85714,-206.20927 V -62.63784"
+ bendpath3="M 79.802044,-62.63784 H 187.85714"
+ bendpath4="M 79.802044,-206.20927 V -62.63784" />
@@ -97,7 +75,7 @@
sodipodi:nodetypes="cccccccc"
inkscape:connector-curvature="0"
id="path4585"
- d="m 112.85714,-206.20927 55.35714,0 -19.28571,50.71429 38.92857,0 -73.92857,92.85714 21.42857,-69.28571 -36.428568,0 z"
+ d="m 112.85714,-206.20927 h 55.35714 l -19.28571,50.71429 h 38.92857 l -73.92857,92.85714 21.42857,-69.28571 H 98.928572 Z"
style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:3.5999999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
@@ -107,7 +85,7 @@
-
-
+ id="filter5165"
+ x="-0.035459854"
+ width="1.0709198"
+ y="-0.22327241"
+ height="1.4465448">
+ stdDeviation="5.9752511"
+ id="feGaussianBlur5167" />
+ fit-margin-bottom="0"
+ inkscape:window-width="1920"
+ inkscape:window-height="1031"
+ inkscape:window-x="0"
+ inkscape:window-y="20"
+ inkscape:window-maximized="0" />
@@ -310,84 +273,52 @@
inkscape:label="Misc"
inkscape:groupmode="layer"
id="layer1"
- transform="translate(-78.426181,-575.44684)">
-
-
-
- PLAY !
- PLAY !
+ transform="translate(-83.641335,-467.66673)">
+
+
+
+
+
+
+
+ Play game
+
diff --git a/out/play.png b/out/play.png
index 9e7d46b..f509241 100644
Binary files a/out/play.png and b/out/play.png differ
diff --git a/package-lock.json b/package-lock.json
index afcf855..7b6e01c 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -455,6 +455,12 @@
"integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=",
"dev": true
},
+ "buffer-from": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
+ "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
+ "dev": true
+ },
"builtin-modules": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
@@ -4118,6 +4124,24 @@
"urix": "^0.1.0"
}
},
+ "source-map-support": {
+ "version": "0.5.12",
+ "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.12.tgz",
+ "integrity": "sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ==",
+ "dev": true,
+ "requires": {
+ "buffer-from": "^1.0.0",
+ "source-map": "^0.6.0"
+ },
+ "dependencies": {
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true
+ }
+ }
+ },
"source-map-url": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz",
@@ -4359,6 +4383,25 @@
}
}
},
+ "terser": {
+ "version": "3.17.0",
+ "resolved": "https://registry.npmjs.org/terser/-/terser-3.17.0.tgz",
+ "integrity": "sha512-/FQzzPJmCpjAH9Xvk2paiWrFq+5M6aVOf+2KRbwhByISDX/EujxsK+BAvrhb6H+2rtrLCHK9N01wO014vrIwVQ==",
+ "dev": true,
+ "requires": {
+ "commander": "^2.19.0",
+ "source-map": "~0.6.1",
+ "source-map-support": "~0.5.10"
+ },
+ "dependencies": {
+ "source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "dev": true
+ }
+ }
+ },
"through": {
"version": "2.3.8",
"resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
@@ -4481,9 +4524,9 @@
}
},
"typescript": {
- "version": "3.5.0-dev.20190516",
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.5.0-dev.20190516.tgz",
- "integrity": "sha512-J+1tISjR4yCmZ3F2wWZDEMoocF4wdXsHf68ln6cb0gjm8VmSDUYSPOVbCJUJoLqjWaCEPs05O7eNrbTulo/4ew==",
+ "version": "3.5.0-rc",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.5.0-rc.tgz",
+ "integrity": "sha512-8Os3bqTeHc6bf+bkPFL3O/pb09j8SbDa2LUBxTXWpZlcHUW9ziGuiEFiqMcArkbAjGLqEzshkl4zvxhb0gVPuQ==",
"dev": true
},
"uc.micro": {
@@ -4496,6 +4539,7 @@
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.5.12.tgz",
"integrity": "sha512-KeQesOpPiZNgVwJj8Ge3P4JYbQHUdZzpx6Fahy6eKAYRSV4zhVmLXoC+JtOeYxcHCHTve8RG1ZGdTvpeOUM26Q==",
"dev": true,
+ "optional": true,
"requires": {
"commander": "~2.20.0",
"source-map": "~0.6.1"
@@ -4505,7 +4549,8 @@
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true
+ "dev": true,
+ "optional": true
}
}
},
diff --git a/package.json b/package.json
index 1b2f928..8dfbc8b 100644
--- a/package.json
+++ b/package.json
@@ -32,8 +32,8 @@
"remap-istanbul": "^0.13.0",
"runjs": "^4.4.2",
"shelljs": "^0.8.3",
- "typescript": "^3.5.0-dev.20190516",
- "uglify-js": "^3.5.12"
+ "terser": "^3.17.0",
+ "typescript": "^3.5.0-rc"
},
"dependencies": {
"parse": "^2.4.0",
diff --git a/runfile.js b/runfile.js
index 68f96f1..83672f9 100644
--- a/runfile.js
+++ b/runfile.js
@@ -169,7 +169,7 @@ async function build() {
*/
async function optimize() {
// TODO do not overwrite dev build
- await exec("uglifyjs out/app.js --source-map --ecma 6 --mangle --keep-classnames --compress --output out/app.js");
+ await exec("terser out/app.js --source-map --ecma 6 --mangle --keep-classnames --compress --output out/app.js");
}
/**
@@ -178,6 +178,7 @@ async function optimize() {
async function deploy(task, experimental = false) {
await build();
await optimize();
+ shell.rm("-r", "out/coverage");
await exec(`rsync -avz --delete ./out/ hosting.thunderk.net:/srv/website/spacetac${experimental ? "x" : ""}/`);
}