From 6a45e1ee5157f7ee658b1753c7068e79fbdf383f Mon Sep 17 00:00:00 2001 From: NGPixel Date: Sat, 22 Jul 2017 10:33:31 -0400 Subject: [PATCH] fix: Safari/iOS const redefinition --- fuse.js | 47 ++++++++++++++++++++++++++++++++++++++++-- npm/package-lock.json | Bin 44207 -> 44197 bytes npm/package.json | 2 +- package.json | 3 ++- tsconfig.json | 5 ++++- yarn.lock | Bin 249124 -> 249404 bytes 6 files changed, 52 insertions(+), 5 deletions(-) diff --git a/fuse.js b/fuse.js index ea6a7309..76143cbd 100644 --- a/fuse.js +++ b/fuse.js @@ -9,6 +9,9 @@ const colors = require('colors/safe') const fsbx = require('fuse-box') const nodemon = require('nodemon') +const babel = require('babel-core') +const uglify = require('uglify-es') +const fs = require('fs-extra') // ====================================================== // Parse cmd arguments @@ -90,7 +93,7 @@ globalTasks.then(() => { fsbx.VuePlugin(), ['.scss', fsbx.SassPlugin({ outputStyle: (dev) ? 'nested' : 'compressed' }), fsbx.CSSPlugin()], fsbx.BabelPlugin({ comments: false, presets: ['es2015'] }), - fsbx.JSONPlugin(), + fsbx.JSONPlugin() /* !dev && fsbx.QuantumPlugin({ target: 'browser', uglify: true, @@ -109,7 +112,7 @@ globalTasks.then(() => { }) } }) */ - !dev && fsbx.UglifyESPlugin() + // !dev && fsbx.UglifyESPlugin() ], debug: false, log: true @@ -140,6 +143,46 @@ globalTasks.then(() => { watch: (args.d) ? ['server'] : ['server/configure.js'], env: { 'NODE_ENV': 'development' } }) + } else { + console.info(colors.yellow.bold('\nTranspiling vendor bundle...')) + let appCode = babel.transform(fs.readFileSync('./assets/js/app.js', 'utf8'), { + babelrc: false, + compact: false, + filename: 'app.js', + plugins: ['transform-object-assign'] + }).code + let vendorCode = babel.transform(fs.readFileSync('./assets/js/vendor.js', 'utf8'), { + babelrc: false, + comments: false, + compact: false, + filename: 'vendor.js', + plugins: [ + 'transform-es2015-arrow-functions', + 'transform-es2015-block-scoped-functions', + 'transform-es2015-block-scoping', + 'transform-es2015-classes', + 'transform-es2015-computed-properties', + 'transform-es2015-destructuring', + 'transform-es2015-duplicate-keys', + 'transform-es2015-for-of', + 'transform-es2015-function-name', + 'transform-es2015-literals', + 'transform-es2015-object-super', + 'transform-es2015-parameters', + 'transform-es2015-shorthand-properties', + 'transform-es2015-spread', + 'transform-es2015-sticky-regex', + 'transform-es2015-template-literals', + 'transform-es2015-typeof-symbol', + 'transform-es2015-unicode-regex' + ] + }).code + console.info(colors.yellow.bold('Minifing bundles...')) + fs.writeFileSync('./assets/js/vendor.js', uglify.minify(vendorCode).code, 'utf8') + fs.writeFileSync('./assets/js/app.js', uglify.minify(appCode).code, 'utf8') + fs.writeFileSync('./assets/js/configure.js', uglify.minify(fs.readFileSync('./assets/js/configure.js', 'utf8')).code, 'utf8') + console.info(colors.green.bold('\nBUILD SUCCEEDED.')) + return true } }).catch(err => { console.error(colors.red(' X Bundle compilation failed! ' + err.message)) diff --git a/npm/package-lock.json b/npm/package-lock.json index e23c24d1ff5a920c881a2c226b1d389b36f5c7df..568100e2733536f80704633534064a0f51591962 100644 GIT binary patch delta 12 UcmZ2~lWFNqrU{xGjce8b04I0_&;S4c delta 22 ecmZ2_lWF};rU{yy2D(Y9C5d{5CL1+s*8l)yod{b1 diff --git a/npm/package.json b/npm/package.json index 840b26e6..af5d0c70 100644 --- a/npm/package.json +++ b/npm/package.json @@ -1,6 +1,6 @@ { "name": "wiki.js", - "version": "1.0.0", + "version": "1.0.1", "description": "A modern, lightweight and powerful wiki app built on NodeJS, Git and Markdown", "main": "install.js", "scripts": { diff --git a/package.json b/package.json index e9390304..b47b4a0a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "wiki", - "version": "1.0.0", + "version": "1.0.1", "description": "A modern, lightweight and powerful wiki app built on NodeJS, Git and Markdown", "main": "wiki.js", "scripts": { @@ -129,6 +129,7 @@ "@panter/vue-i18next": "~0.5.0", "babel-cli": "~6.24.1", "babel-jest": "~20.0.3", + "babel-plugin-transform-object-assign": "~6.22.0", "babel-preset-es2015": "~6.24.1", "brace": "~0.10.0", "colors": "~1.1.2", diff --git a/tsconfig.json b/tsconfig.json index dc25199f..20c43b30 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -13,6 +13,9 @@ "target": "es5" }, "exclude": [ - "node_modules" + ".fusebox", + "data", + "node_modules", + "repo" ] } diff --git a/yarn.lock b/yarn.lock index 52a14f18f6e4253a72e1ab4f75630c7d1d9847ad..60ff1355a3152f218ebf19dc81f34e2f63bffb72 100644 GIT binary patch delta 188 zcmZ27i+|4?{tf#|`SX*qQj<$`6N`&8)AJnaCL4xF^P-4NHY}5JKoQY3(=#&CGtetZ zuToC4v`jHdGc!vwOf*O`NHMXrNHsPwOExt&wKTIZF*h+tPE0g1NSZEK&nQ0G!B1kc zL5{@ceWlrJrr#@P6yNTk#OUTS`TZv6?I+V1`~EW4ZI4J{ayta1=c_Sy)iTyizq6Ft Rb$k92<{U<#Aduss4gkZQL*xJe delta 74 zcmdlphkwZ|{tf#|C)<^CZ+=*oux7f@24>OiVakjiE{t*8=chAX_zR>9QkmQi0qO1P b%w4sNanrvnV|Lx%zLYtK5hw`cc&Gyaoe&;b