From 22b50f07c3d2174e836c14c7584f0dd1f48e64ab Mon Sep 17 00:00:00 2001 From: "qingwei.li" Date: Wed, 31 May 2017 08:25:00 +0800 Subject: [PATCH] fix: auto replace version --- build/build-cover.js | 11 +++++++++++ build/build-ssr.js | 5 ++++- build/build.js | 7 ++++++- dev.html | 3 ++- docs/_coverpage.md | 2 +- docs/index.html | 4 ++-- package.json | 3 ++- packages/docsify-server-renderer/index.js | 2 ++ src/core/index.js | 5 +++++ 9 files changed, 35 insertions(+), 7 deletions(-) create mode 100644 build/build-cover.js diff --git a/build/build-cover.js b/build/build-cover.js new file mode 100644 index 000000000..f66fa8d6a --- /dev/null +++ b/build/build-cover.js @@ -0,0 +1,11 @@ +var fs = require('fs') +var read = fs.readFileSync +var write = fs.writeFileSync +var version = process.env.VERSION || require('../package.json').version + +var file = __dirname + '/../docs/_coverpage.md' +var cover = read(file, 'utf8').toString() + +console.log('Replace version number in cover page...') +cover = cover.replace(/(\S+)?<\/small>/g, '' + version + '') +write(file, cover) diff --git a/build/build-ssr.js b/build/build-ssr.js index d21fd63db..a470f6567 100644 --- a/build/build-ssr.js +++ b/build/build-ssr.js @@ -1,13 +1,16 @@ var rollup = require('rollup') var buble = require('rollup-plugin-buble') var async = require('rollup-plugin-async') -var isProd = process.argv[process.argv.length - 1] !== '--dev' +var replace = require('rollup-plugin-replace') rollup .rollup({ entry: 'packages/docsify-server-renderer/index.js', plugins: [ async(), + replace({ + __VERSION__: process.env.VERSION || require('../package.json').version + }), buble({ transforms: { generator: false diff --git a/build/build.js b/build/build.js index e87cb2334..bb153d3bd 100644 --- a/build/build.js +++ b/build/build.js @@ -4,7 +4,9 @@ var commonjs = require('rollup-plugin-commonjs') var nodeResolve = require('rollup-plugin-node-resolve') var string = require('rollup-plugin-string') var uglify = require('rollup-plugin-uglify') +var replace = require('rollup-plugin-replace') var isProd = process.argv[process.argv.length - 1] !== '--dev' +var version = process.env.VERSION || require('../package.json').version var build = function (opts) { rollup @@ -14,7 +16,10 @@ var build = function (opts) { string({ include: '**/*.css' }), buble(), commonjs(), - nodeResolve() + nodeResolve(), + replace({ + __VERSION__: version + }) ]) }) .then(function (bundle) { diff --git a/dev.html b/dev.html index ceee5faae..7e0ca8cda 100644 --- a/dev.html +++ b/dev.html @@ -28,6 +28,7 @@ executeScript: true, loadNavbar: true, loadSidebar: true, + coverpage: true, name: 'docsify', subMaxLevel: 2, mergeNavbar: true, @@ -37,7 +38,7 @@ function(hook, vm) { hook.beforeEach(function (html) { var url = 'https://github.com/QingWei-Li/docsify/blob/master' + vm.router.getFile() - var editHtml = '[📝 EDIT DOCUMENT](' + url + ')\n' + var editHtml = '[:memo: Edit Document](' + url + ')\n' return editHtml + html diff --git a/docs/_coverpage.md b/docs/_coverpage.md index 6f75cee37..b7f418fc8 100644 --- a/docs/_coverpage.md +++ b/docs/_coverpage.md @@ -1,6 +1,6 @@ ![logo](_media/icon.svg) -# docsify 4.0 +# docsify 4.1.7 > A magical documentation site generator. diff --git a/docs/index.html b/docs/index.html index 0817b68e9..826a10221 100644 --- a/docs/index.html +++ b/docs/index.html @@ -53,8 +53,8 @@ plugins: [ function(hook, vm) { hook.beforeEach(function (html) { - var url = 'https://github.com/QingWei-Li/docsify/blob/master/docs' + vm.router.getFile() - var editHtml = '[📝 EDIT DOCUMENT](' + url + ')\n' + var url = 'https://github.com/QingWei-Li/docsify/blob/master/docs' + vm.route.file + var editHtml = '[:memo: Edit Document](' + url + ')\n' return editHtml + html diff --git a/package.json b/package.json index 301c10147..148af1a9d 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "themes" ], "scripts": { - "build": "rm -rf lib themes && node build/build && mkdir lib/themes && mkdir themes && node build/build-css && npm run build:ssr", + "build": "rm -rf lib themes && node build/build && mkdir lib/themes && mkdir themes && node build/build-css && npm run build:ssr && node build/build-cover", "dev:build": "rm -rf lib themes && mkdir themes && node build/build --dev && node build/build-css --dev", "dev": "node app & nodemon -w src -e js,css --exec 'npm run dev:build'", "build:ssr": "node build/build-ssr", @@ -47,6 +47,7 @@ "rollup-plugin-buble": "^0.15.0", "rollup-plugin-commonjs": "^8.0.2", "rollup-plugin-node-resolve": "^2.0.0", + "rollup-plugin-replace": "^1.1.1", "rollup-plugin-string": "^2.0.2", "rollup-plugin-uglify": "^1.0.1", "serve-static": "^1.12.1" diff --git a/packages/docsify-server-renderer/index.js b/packages/docsify-server-renderer/index.js index cc0df321e..3ee0a3d46 100644 --- a/packages/docsify-server-renderer/index.js +++ b/packages/docsify-server-renderer/index.js @@ -139,3 +139,5 @@ export default class Renderer { } } } + +Renderer.version = '__VERSION__' diff --git a/src/core/index.js b/src/core/index.js index ce5c746d9..69ad4e747 100644 --- a/src/core/index.js +++ b/src/core/index.js @@ -22,6 +22,11 @@ eventMixin(proto) */ initGlobalAPI() +/** + * Version + */ + Docsify.version = '__VERSION__' + /** * Run Docsify */