Added taskr as build tool
This commit is contained in:
parent
ca52167809
commit
49c7c35342
2
.vscode/tasks.json
vendored
2
.vscode/tasks.json
vendored
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"version": "0.1.0",
|
"version": "0.1.0",
|
||||||
"command": "./spacetac",
|
"command": ".venv/node/bin/npm",
|
||||||
"isShellCommand": true,
|
"isShellCommand": true,
|
||||||
"args": [
|
"args": [
|
||||||
"run",
|
"run",
|
||||||
|
|
|
@ -27,10 +27,8 @@ and local Node.js environment:
|
||||||
If you want to build on your computer, clone the repository, then run:
|
If you want to build on your computer, clone the repository, then run:
|
||||||
|
|
||||||
npm install # Install dependencies
|
npm install # Install dependencies
|
||||||
npm run build # Build the final JS
|
|
||||||
npm run atlas # Pack the images and sounds
|
|
||||||
npm test # Run unit tests
|
|
||||||
npm start # Start development server, and open game in web browser
|
npm start # Start development server, and open game in web browser
|
||||||
|
npm test # Run unit tests
|
||||||
|
|
||||||
## Credits
|
## Credits
|
||||||
|
|
||||||
|
|
247
package-lock.json
generated
247
package-lock.json
generated
|
@ -4,6 +4,52 @@
|
||||||
"lockfileVersion": 1,
|
"lockfileVersion": 1,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"@taskr/shell": {
|
||||||
|
"version": "1.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@taskr/shell/-/shell-1.1.0.tgz",
|
||||||
|
"integrity": "sha1-YDV8rNlKQvXFlqpxBUK4eQDcPwY=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"execa": "0.7.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"@taskr/uglify": {
|
||||||
|
"version": "1.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@taskr/uglify/-/uglify-1.1.0.tgz",
|
||||||
|
"integrity": "sha1-DIspLj3sr/4KTPQa7HEWEYWbyZg=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"uglify-js": "2.8.29"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"source-map": {
|
||||||
|
"version": "0.5.7",
|
||||||
|
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
|
||||||
|
"integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"uglify-js": {
|
||||||
|
"version": "2.8.29",
|
||||||
|
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz",
|
||||||
|
"integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"source-map": "0.5.7",
|
||||||
|
"uglify-to-browserify": "1.0.2",
|
||||||
|
"yargs": "3.10.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"@taskr/watch": {
|
||||||
|
"version": "1.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/@taskr/watch/-/watch-1.1.0.tgz",
|
||||||
|
"integrity": "sha1-v0RxeM+scfyZslD/RsQK0/lhc9Y=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"chokidar": "1.7.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"@types/jasmine": {
|
"@types/jasmine": {
|
||||||
"version": "2.8.6",
|
"version": "2.8.6",
|
||||||
"resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-2.8.6.tgz",
|
"resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-2.8.6.tgz",
|
||||||
|
@ -896,7 +942,6 @@
|
||||||
"resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz",
|
"resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz",
|
||||||
"integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=",
|
"integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"align-text": "0.1.4",
|
"align-text": "0.1.4",
|
||||||
"lazy-cache": "1.0.4"
|
"lazy-cache": "1.0.4"
|
||||||
|
@ -953,7 +998,6 @@
|
||||||
"resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz",
|
||||||
"integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=",
|
"integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"center-align": "0.1.3",
|
"center-align": "0.1.3",
|
||||||
"right-align": "0.1.3",
|
"right-align": "0.1.3",
|
||||||
|
@ -964,11 +1008,16 @@
|
||||||
"version": "0.0.2",
|
"version": "0.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz",
|
||||||
"integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=",
|
"integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=",
|
||||||
"dev": true,
|
"dev": true
|
||||||
"optional": true
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"clor": {
|
||||||
|
"version": "5.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/clor/-/clor-5.2.0.tgz",
|
||||||
|
"integrity": "sha512-Z+jjxoF4lNUJQtsdz7d9HLz7yP49hnt4CH76AB7DLusHws14gOlVMl/ShtkMPfoFculqejaiQW5EG2Gt5/cCdg==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"co": {
|
"co": {
|
||||||
"version": "4.6.0",
|
"version": "4.6.0",
|
||||||
"resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
|
"resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
|
||||||
|
@ -1034,8 +1083,7 @@
|
||||||
"version": "2.14.1",
|
"version": "2.14.1",
|
||||||
"resolved": "https://registry.npmjs.org/commander/-/commander-2.14.1.tgz",
|
"resolved": "https://registry.npmjs.org/commander/-/commander-2.14.1.tgz",
|
||||||
"integrity": "sha512-+YR16o3rK53SmWHU3rEM3tPAh2rwb1yPcQX5irVn7mb0gXbwuCCrnkbV5+PBfETdfg1vui07nM6PCG1zndcjQw==",
|
"integrity": "sha512-+YR16o3rK53SmWHU3rEM3tPAh2rwb1yPcQX5irVn7mb0gXbwuCCrnkbV5+PBfETdfg1vui07nM6PCG1zndcjQw==",
|
||||||
"dev": true,
|
"dev": true
|
||||||
"optional": true
|
|
||||||
},
|
},
|
||||||
"component-bind": {
|
"component-bind": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
|
@ -1202,6 +1250,29 @@
|
||||||
"sha.js": "2.4.10"
|
"sha.js": "2.4.10"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"cross-spawn": {
|
||||||
|
"version": "5.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz",
|
||||||
|
"integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"lru-cache": "4.1.1",
|
||||||
|
"shebang-command": "1.2.0",
|
||||||
|
"which": "1.3.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"lru-cache": {
|
||||||
|
"version": "4.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz",
|
||||||
|
"integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"pseudomap": "1.0.2",
|
||||||
|
"yallist": "2.1.2"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"cryptiles": {
|
"cryptiles": {
|
||||||
"version": "2.0.5",
|
"version": "2.0.5",
|
||||||
"resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz",
|
"resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz",
|
||||||
|
@ -1661,6 +1732,21 @@
|
||||||
"safe-buffer": "5.1.1"
|
"safe-buffer": "5.1.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"execa": {
|
||||||
|
"version": "0.7.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz",
|
||||||
|
"integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"cross-spawn": "5.1.0",
|
||||||
|
"get-stream": "3.0.0",
|
||||||
|
"is-stream": "1.1.0",
|
||||||
|
"npm-run-path": "2.0.2",
|
||||||
|
"p-finally": "1.0.0",
|
||||||
|
"signal-exit": "3.0.2",
|
||||||
|
"strip-eof": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"exit": {
|
"exit": {
|
||||||
"version": "0.1.2",
|
"version": "0.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
|
"resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
|
||||||
|
@ -2040,6 +2126,12 @@
|
||||||
"integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
|
"integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"get-stream": {
|
||||||
|
"version": "3.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
|
||||||
|
"integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"get-uri": {
|
"get-uri": {
|
||||||
"version": "2.0.1",
|
"version": "2.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.1.tgz",
|
||||||
|
@ -2130,6 +2222,27 @@
|
||||||
"requires": {
|
"requires": {
|
||||||
"amdefine": "1.0.1"
|
"amdefine": "1.0.1"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"uglify-js": {
|
||||||
|
"version": "2.8.29",
|
||||||
|
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz",
|
||||||
|
"integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=",
|
||||||
|
"dev": true,
|
||||||
|
"optional": true,
|
||||||
|
"requires": {
|
||||||
|
"source-map": "0.5.7",
|
||||||
|
"uglify-to-browserify": "1.0.2",
|
||||||
|
"yargs": "3.10.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"source-map": {
|
||||||
|
"version": "0.5.7",
|
||||||
|
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
|
||||||
|
"integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
|
||||||
|
"dev": true,
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -3029,8 +3142,7 @@
|
||||||
"version": "1.0.4",
|
"version": "1.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz",
|
||||||
"integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=",
|
"integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=",
|
||||||
"dev": true,
|
"dev": true
|
||||||
"optional": true
|
|
||||||
},
|
},
|
||||||
"levn": {
|
"levn": {
|
||||||
"version": "0.3.0",
|
"version": "0.3.0",
|
||||||
|
@ -3549,6 +3661,12 @@
|
||||||
"integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=",
|
"integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"mk-dirs": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/mk-dirs/-/mk-dirs-1.0.0.tgz",
|
||||||
|
"integrity": "sha1-RO5n+CNBxnYnGOiOheV3iC4fZ/0=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"mkdirp": {
|
"mkdirp": {
|
||||||
"version": "0.5.1",
|
"version": "0.5.1",
|
||||||
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
|
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
|
||||||
|
@ -3602,6 +3720,12 @@
|
||||||
"on-headers": "1.0.1"
|
"on-headers": "1.0.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"mri": {
|
||||||
|
"version": "1.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/mri/-/mri-1.1.0.tgz",
|
||||||
|
"integrity": "sha1-XAo/KcjM/7ux7JQdzsCdcfoy82o=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"ms": {
|
"ms": {
|
||||||
"version": "2.0.0",
|
"version": "2.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
|
||||||
|
@ -3749,6 +3873,15 @@
|
||||||
"remove-trailing-separator": "1.1.0"
|
"remove-trailing-separator": "1.1.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"npm-run-path": {
|
||||||
|
"version": "2.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz",
|
||||||
|
"integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"path-key": "2.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
"number-is-nan": {
|
"number-is-nan": {
|
||||||
"version": "1.0.1",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
|
||||||
|
@ -3860,6 +3993,12 @@
|
||||||
"integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
|
"integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"p-finally": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
|
||||||
|
"integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"pac-proxy-agent": {
|
"pac-proxy-agent": {
|
||||||
"version": "1.1.0",
|
"version": "1.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-1.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-1.1.0.tgz",
|
||||||
|
@ -4005,6 +4144,12 @@
|
||||||
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
|
"integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"path-key": {
|
||||||
|
"version": "2.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
|
||||||
|
"integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"path-parse": {
|
"path-parse": {
|
||||||
"version": "1.0.5",
|
"version": "1.0.5",
|
||||||
"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz",
|
"resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz",
|
||||||
|
@ -4594,7 +4739,6 @@
|
||||||
"resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz",
|
"resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz",
|
||||||
"integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=",
|
"integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"align-text": "0.1.4"
|
"align-text": "0.1.4"
|
||||||
}
|
}
|
||||||
|
@ -4732,6 +4876,21 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"shebang-command": {
|
||||||
|
"version": "1.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
|
||||||
|
"integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"shebang-regex": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"shebang-regex": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
|
||||||
|
"integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"shell-quote": {
|
"shell-quote": {
|
||||||
"version": "1.6.1",
|
"version": "1.6.1",
|
||||||
"resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz",
|
"resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.6.1.tgz",
|
||||||
|
@ -5075,6 +5234,12 @@
|
||||||
"is-utf8": "0.2.1"
|
"is-utf8": "0.2.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"strip-eof": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
|
||||||
|
"integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"strip-indent": {
|
"strip-indent": {
|
||||||
"version": "1.0.1",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
|
||||||
|
@ -5117,6 +5282,36 @@
|
||||||
"acorn-node": "1.3.0"
|
"acorn-node": "1.3.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"taskr": {
|
||||||
|
"version": "1.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/taskr/-/taskr-1.1.0.tgz",
|
||||||
|
"integrity": "sha1-TynQrOJvTerppHjqv5qgQy6IRDg=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"bluebird": "3.5.1",
|
||||||
|
"clor": "5.2.0",
|
||||||
|
"glob": "7.1.2",
|
||||||
|
"mk-dirs": "1.0.0",
|
||||||
|
"mri": "1.1.0",
|
||||||
|
"tinydate": "1.0.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"glob": {
|
||||||
|
"version": "7.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
|
||||||
|
"integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"fs.realpath": "1.0.0",
|
||||||
|
"inflight": "1.0.6",
|
||||||
|
"inherits": "2.0.3",
|
||||||
|
"minimatch": "3.0.4",
|
||||||
|
"once": "1.4.0",
|
||||||
|
"path-is-absolute": "1.0.1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"throttleit": {
|
"throttleit": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz",
|
||||||
|
@ -5162,6 +5357,12 @@
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
|
"tinydate": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/tinydate/-/tinydate-1.0.0.tgz",
|
||||||
|
"integrity": "sha1-IPMXVqE5We+MV+wTO6KbWt4ELKw=",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"tmp": {
|
"tmp": {
|
||||||
"version": "0.0.33",
|
"version": "0.0.33",
|
||||||
"resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
|
"resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
|
||||||
|
@ -5259,24 +5460,13 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"uglify-js": {
|
"uglify-js": {
|
||||||
"version": "2.8.29",
|
"version": "3.3.13",
|
||||||
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz",
|
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.3.13.tgz",
|
||||||
"integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=",
|
"integrity": "sha512-7rdn/bDOG1ElSTPdh7AI5TCjLv63ZD4k8BBadN3ssIkhlaQL2c0yRxmXCyOYhZK0wZTgGgUSnYQ4CGu+Jos5cA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"source-map": "0.5.7",
|
"commander": "2.14.1",
|
||||||
"uglify-to-browserify": "1.0.2",
|
"source-map": "0.6.1"
|
||||||
"yargs": "3.10.0"
|
|
||||||
},
|
|
||||||
"dependencies": {
|
|
||||||
"source-map": {
|
|
||||||
"version": "0.5.7",
|
|
||||||
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
|
|
||||||
"integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
|
|
||||||
"dev": true,
|
|
||||||
"optional": true
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"uglify-to-browserify": {
|
"uglify-to-browserify": {
|
||||||
|
@ -5489,8 +5679,7 @@
|
||||||
"version": "0.1.0",
|
"version": "0.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz",
|
||||||
"integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=",
|
"integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=",
|
||||||
"dev": true,
|
"dev": true
|
||||||
"optional": true
|
|
||||||
},
|
},
|
||||||
"wordwrap": {
|
"wordwrap": {
|
||||||
"version": "0.0.3",
|
"version": "0.0.3",
|
||||||
|
@ -5549,7 +5738,6 @@
|
||||||
"resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz",
|
"resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz",
|
||||||
"integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=",
|
"integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"camelcase": "1.2.1",
|
"camelcase": "1.2.1",
|
||||||
"cliui": "2.1.0",
|
"cliui": "2.1.0",
|
||||||
|
@ -5561,8 +5749,7 @@
|
||||||
"version": "1.2.1",
|
"version": "1.2.1",
|
||||||
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz",
|
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz",
|
||||||
"integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=",
|
"integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=",
|
||||||
"dev": true,
|
"dev": true
|
||||||
"optional": true
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
20
package.json
20
package.json
|
@ -2,17 +2,13 @@
|
||||||
"name": "spacetac",
|
"name": "spacetac",
|
||||||
"version": "0.1.0",
|
"version": "0.1.0",
|
||||||
"description": "A tactical RPG set in space",
|
"description": "A tactical RPG set in space",
|
||||||
"main": "src/build.js",
|
"main": "out/build.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"postinstall": "rm -rf out/vendor && mkdir -p out/vendor && cp -r node_modules/phaser/build out/vendor/phaser && cp -r node_modules/parse/dist out/vendor/parse && cp -r node_modules/jasmine-core/lib/jasmine-core out/vendor/jasmine",
|
"build": "taskr build",
|
||||||
"build": "tsc -p .",
|
"test": "taskr test",
|
||||||
"atlas": "rm -f out/assets/atlas* && find graphics/exported -name '*.png' -print0 | xargs -0 gf-pack --name out/assets/atlas --fullpath --width 1024 --height 1024 --square --powerOfTwo --trim --padding 2",
|
"start": "taskr",
|
||||||
"pretest": "tsc -p .",
|
|
||||||
"test": "karma start spec/support/karma.conf.js && remap-istanbul -i out/coverage/coverage.json -o out/coverage -t html",
|
|
||||||
"prestart": "tsc -p . || true",
|
|
||||||
"start": "live-server out --host=127.0.0.1 --port=8012 --ignore=coverage",
|
|
||||||
"codecov": "remap-istanbul -i out/coverage/coverage.json -o out/coverage/mapped.json -t json && codecov -f out/coverage/mapped.json",
|
"codecov": "remap-istanbul -i out/coverage/coverage.json -o out/coverage/mapped.json -t json && codecov -f out/coverage/mapped.json",
|
||||||
"deploy": "rsync -avz --delete ./out/ hosting.thunderk.net:/srv/website/spacetac/"
|
"deploy": "taskr deploy"
|
||||||
},
|
},
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
|
@ -21,6 +17,8 @@
|
||||||
"author": "Michael Lemaire",
|
"author": "Michael Lemaire",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
"@taskr/shell": "^1.1.0",
|
||||||
|
"@taskr/watch": "^1.1.0",
|
||||||
"@types/jasmine": "^2.8.6",
|
"@types/jasmine": "^2.8.6",
|
||||||
"babel-polyfill": "6.26.0",
|
"babel-polyfill": "6.26.0",
|
||||||
"codecov": "3.0.0",
|
"codecov": "3.0.0",
|
||||||
|
@ -33,7 +31,9 @@
|
||||||
"karma-spec-reporter": "^0.0.32",
|
"karma-spec-reporter": "^0.0.32",
|
||||||
"live-server": "1.2.0",
|
"live-server": "1.2.0",
|
||||||
"remap-istanbul": "^0.10.1",
|
"remap-istanbul": "^0.10.1",
|
||||||
"typescript": "^2.7.1"
|
"taskr": "^1.1.0",
|
||||||
|
"typescript": "^2.7.1",
|
||||||
|
"uglify-js": "^3.3.13"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"jasmine-core": "^2.9.1",
|
"jasmine-core": "^2.9.1",
|
||||||
|
|
74
taskfile.js
Normal file
74
taskfile.js
Normal file
|
@ -0,0 +1,74 @@
|
||||||
|
const liveServer = require('live-server');
|
||||||
|
|
||||||
|
function shell(task, cmd) {
|
||||||
|
return task.source(".").shell(cmd);
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
*serve(task) {
|
||||||
|
liveServer.start({
|
||||||
|
host: '127.0.0.1',
|
||||||
|
port: 8012,
|
||||||
|
root: 'out',
|
||||||
|
ignore: 'coverage',
|
||||||
|
wait: 500
|
||||||
|
});
|
||||||
|
return new Promise(() => null);
|
||||||
|
},
|
||||||
|
|
||||||
|
*vendors(task) {
|
||||||
|
yield shell(task, "rm -rf out/vendor");
|
||||||
|
yield shell(task, "mkdir -p out/vendor");
|
||||||
|
yield shell(task, "cp -r node_modules/phaser/build out/vendor/phaser");
|
||||||
|
yield shell(task, "cp -r node_modules/parse/dist out/vendor/parse");
|
||||||
|
yield shell(task, "cp -r node_modules/jasmine-core/lib/jasmine-core out/vendor/jasmine");
|
||||||
|
},
|
||||||
|
|
||||||
|
*watch_vendors(task) {
|
||||||
|
yield task.watch("package.json", ["vendors"]);
|
||||||
|
},
|
||||||
|
|
||||||
|
*ts(task) {
|
||||||
|
yield shell(task, "tsc -p .");
|
||||||
|
},
|
||||||
|
|
||||||
|
*watch_ts(task) {
|
||||||
|
yield task.watch(["src/**/*.ts", "tsconfig.json"], ["ts"]);
|
||||||
|
},
|
||||||
|
|
||||||
|
*atlas(task) {
|
||||||
|
yield shell(task, "rm -f out/assets/atlas*");
|
||||||
|
yield shell(task, "find graphics/exported -name '*.png' -print0 | xargs -0 gf-pack --name out/assets/atlas --fullpath --width 1024 --height 1024 --square --powerOfTwo --trim --padding 2");
|
||||||
|
},
|
||||||
|
|
||||||
|
*watch_atlas(task) {
|
||||||
|
yield task.watch("graphics/exported/**/*.png", ["atlas"]);
|
||||||
|
},
|
||||||
|
|
||||||
|
*build(task) {
|
||||||
|
yield task.parallel(['ts', 'atlas', 'vendors']);
|
||||||
|
},
|
||||||
|
|
||||||
|
*optimize(task) {
|
||||||
|
yield shell(task, "uglifyjs out/build.js --source-map --output out/build.min.js");
|
||||||
|
},
|
||||||
|
|
||||||
|
*deploy(task) {
|
||||||
|
yield task.serial(['build', 'optimize']);
|
||||||
|
yield shell(task, "rsync -avz --delete ./out/ hosting.thunderk.net:/srv/website/spacetac/");
|
||||||
|
},
|
||||||
|
|
||||||
|
*karma(task) {
|
||||||
|
yield shell(task, "karma start spec/support/karma.conf.js");
|
||||||
|
},
|
||||||
|
|
||||||
|
*test(task) {
|
||||||
|
yield task.serial(['build', 'karma']);
|
||||||
|
yield shell(task, "remap-istanbul -i out/coverage/coverage.json -o out/coverage -t html");
|
||||||
|
},
|
||||||
|
|
||||||
|
*default(task) {
|
||||||
|
yield task.start('build');
|
||||||
|
yield task.parallel(['serve', 'watch_ts', 'watch_atlas', 'watch_vendors']);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue