diff --git a/.gitignore b/.gitignore index e6367a1..f58ed96 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ node_modules .env dist +static/style.css diff --git a/package-lock.json b/package-lock.json index f3c0f11..3ca0ad1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -820,7 +820,8 @@ "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true }, "basic-auth": { "version": "2.0.0", @@ -873,6 +874,7 @@ "version": "1.1.8", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", + "dev": true, "requires": { "balanced-match": "1.0.0", "concat-map": "0.0.1" @@ -1020,7 +1022,8 @@ "commander": { "version": "2.12.2", "resolved": "https://registry.npmjs.org/commander/-/commander-2.12.2.tgz", - "integrity": "sha512-BFnaq5ZOGcDN7FlrtBT4xxkgIToalIIxwjxLWVJ8bGTpe1LroqMiqQXdA7ygc7CRvaYS+9zfPGFnJqFSayx+AA==" + "integrity": "sha512-BFnaq5ZOGcDN7FlrtBT4xxkgIToalIIxwjxLWVJ8bGTpe1LroqMiqQXdA7ygc7CRvaYS+9zfPGFnJqFSayx+AA==", + "dev": true }, "component-emitter": { "version": "1.2.1", @@ -1030,7 +1033,8 @@ "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true }, "constantinople": { "version": "3.1.0", @@ -1114,7 +1118,8 @@ "css-parse": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-1.7.0.tgz", - "integrity": "sha1-Mh9s9zeCpv91ERE5D8BeLGV9jJs=" + "integrity": "sha1-Mh9s9zeCpv91ERE5D8BeLGV9jJs=", + "dev": true }, "csurf": { "version": "1.9.0", @@ -1430,7 +1435,8 @@ "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true }, "fsevents": { "version": "1.1.3", @@ -2471,6 +2477,7 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, "requires": { "once": "1.4.0", "wrappy": "1.0.2" @@ -2840,6 +2847,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, "requires": { "brace-expansion": "1.1.8" } @@ -2848,6 +2856,7 @@ "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, "requires": { "minimist": "0.0.8" }, @@ -2855,7 +2864,8 @@ "minimist": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true } } }, @@ -2939,6 +2949,7 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, "requires": { "wrappy": "1.0.2" } @@ -2995,7 +3006,8 @@ "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true }, "path-parse": { "version": "1.0.5", @@ -3433,7 +3445,8 @@ "sax": { "version": "0.5.8", "resolved": "https://registry.npmjs.org/sax/-/sax-0.5.8.tgz", - "integrity": "sha1-1HLbIo6zMcJQaw6MFVJK25OdEsE=" + "integrity": "sha1-1HLbIo6zMcJQaw6MFVJK25OdEsE=", + "dev": true }, "semver": { "version": "5.4.1", @@ -3535,6 +3548,7 @@ "version": "0.54.5", "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.54.5.tgz", "integrity": "sha1-QrlWCTHKcJDOhRWnmLqeaqPW3Hk=", + "dev": true, "requires": { "css-parse": "1.7.0", "debug": "2.6.9", @@ -3548,6 +3562,7 @@ "version": "7.0.6", "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.6.tgz", "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", + "dev": true, "requires": { "fs.realpath": "1.0.0", "inflight": "1.0.6", @@ -3561,6 +3576,7 @@ "version": "0.1.43", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "dev": true, "requires": { "amdefine": "1.0.1" } @@ -3772,7 +3788,8 @@ "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true }, "yallist": { "version": "2.1.2", diff --git a/package.json b/package.json index c204713..3c1b131 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "description": "", "scripts": { "start": "./start.sh", - "dist": "babel -d dist src", + "dist": "babel -d dist src && stylus static/style.styl", "prepublishOnly": "npm run dist" }, "bin": "dist/cli.js", @@ -20,7 +20,6 @@ "dependencies": { "babel-polyfill": "^6.26.0", "bootswatch": "^4.0.0-beta.2", - "commander": "^2.12.2", "cookie-parser": "^1.4.3", "csurf": "^1.9.0", "currency-formatter": "^1.3.1", @@ -40,14 +39,14 @@ "pretty-bytes": "^4.0.2", "pug": "^2.0.0-rc.4", "qruri": "0.0.3", - "read-chunk": "^2.1.0", - "stylus": "^0.54.5" + "read-chunk": "^2.1.0" }, "devDependencies": { "babel-cli": "^6.26.0", "babel-plugin-syntax-object-rest-spread": "^6.13.0", "babel-plugin-transform-object-rest-spread": "^6.26.0", "babel-preset-env": "^1.6.1", - "babel-register": "^6.26.0" + "babel-register": "^6.26.0", + "stylus": "^0.54.5" } } diff --git a/src/app.js b/src/app.js index 2f055ef..55317cd 100644 --- a/src/app.js +++ b/src/app.js @@ -39,10 +39,13 @@ app.use(require('body-parser').urlencoded({ extended: false })) app.use(require('csurf')({ cookie: true })) // Static assets -app.use('/_assets', require('stylus').middleware({ src: conf.static_dir, serve: true })) +if (app.settings.env == 'development' && require.resolve('stylus')) + app.use('/_assets', require('stylus').middleware({ src: conf.static_dir, serve: true })) + app.use('/_assets', require('express').static(conf.static_dir)) app.use('/_themes', require('express').static(path.resolve(require.resolve('bootswatch/package'), '..', 'dist'))) + // Create invoice app.post('/_invoice', pwrap(async (req, res) => { const file = await files.load(req.body.file) diff --git a/static/.gitignore b/static/.gitignore deleted file mode 100644 index e8c7365..0000000 --- a/static/.gitignore +++ /dev/null @@ -1 +0,0 @@ -style.css