[build] 4.6.0

This commit is contained in:
qingwei.li 2018-02-11 22:25:14 +08:00
commit 8fb74a2d87
25 changed files with 446 additions and 291 deletions

View file

@ -1,6 +1,6 @@
![logo](_media/icon.svg) ![logo](_media/icon.svg)
# docsify <small>4.5.9</small> # docsify <small>4.6.0</small>
> A magical documentation site generator. > A magical documentation site generator.

File diff suppressed because it is too large Load diff

3
lib/docsify.min.js vendored

File diff suppressed because one or more lines are too long

View file

@ -1,6 +1,4 @@
(function () { (function () {
'use strict';
var fixedPath = location.href.replace('/-/', '/#/'); var fixedPath = location.href.replace('/-/', '/#/');
if (fixedPath !== location.href) { if (fixedPath !== location.href) {
location.href = fixedPath; location.href = fixedPath;

View file

@ -1 +1 @@
!function(){"use strict";function i(i,t){var e=Docsify.dom,o=t.config.disqus;if(!o)throw Error("$docsify.disqus is required");i.init(function(i){var t=e.create("script");t.async=!0,t.src="https://"+o+".disqus.com/embed.js",t.setAttribute("data-timestamp",+new Date),e.appendTo(e.body,t)}),i.mounted(function(i){var o=e.create("div");o.id="disqus_thread";var n=e.getNode("#main");o.style="width: "+n.clientWidth+"px; margin: 0 auto 20px;",e.appendTo(e.find(".content"),o),window.disqus_config=function(){this.page.url=location.origin+"/-"+t.route.path,this.page.identifier=t.route.path,this.page.title=document.title}}),i.doneEach(function(i){void 0!==window.DISQUS&&window.DISQUS.reset({reload:!0,config:function(){this.page.url=location.origin+"/-"+t.route.path,this.page.identifier=t.route.path,this.page.title=document.title}})})}var t=location.href.replace("/-/","/#/");t!==location.href&&(location.href=t),$docsify.plugins=[].concat(i,$docsify.plugins)}(); !function(){var i=location.href.replace("/-/","/#/");i!==location.href&&(location.href=i);$docsify.plugins=[].concat(function(i,t){var e=Docsify.dom,o=t.config.disqus;if(!o)throw Error("$docsify.disqus is required");i.init(function(i){var t=e.create("script");t.async=!0,t.src="https://"+o+".disqus.com/embed.js",t.setAttribute("data-timestamp",+new Date),e.appendTo(e.body,t)}),i.mounted(function(i){var o=e.create("div");o.id="disqus_thread";var n=e.getNode("#main");o.style="width: "+n.clientWidth+"px; margin: 0 auto 20px;",e.appendTo(e.find(".content"),o),window.disqus_config=function(){this.page.url=location.origin+"/-"+t.route.path,this.page.identifier=t.route.path,this.page.title=document.title}}),i.doneEach(function(i){void 0!==window.DISQUS&&window.DISQUS.reset({reload:!0,config:function(){this.page.url=location.origin+"/-"+t.route.path,this.page.identifier=t.route.path,this.page.title=document.title}})})},$docsify.plugins)}();

View file

@ -1,6 +1,4 @@
(function () { (function () {
'use strict';
var AllGithubEmoji = [ var AllGithubEmoji = [
'+1', '+1',
'100', '100',

File diff suppressed because one or more lines are too long

View file

@ -1,6 +1,4 @@
(function () { (function () {
'use strict';
function handleExternalScript () { function handleExternalScript () {
var container = Docsify.dom.getNode('#main'); var container = Docsify.dom.getNode('#main');
var scripts = Docsify.dom.findAll(container, 'script'); var scripts = Docsify.dom.findAll(container, 'script');

View file

@ -1 +1 @@
!function(){"use strict";function e(){for(var e=Docsify.dom.getNode("#main"),o=Docsify.dom.findAll(e,"script"),n=o.length;n--;){var i=o[n];if(i&&i.src){var t=document.createElement("script");Array.prototype.slice.call(i.attributes).forEach(function(e){t[e.name]=e.value}),i.parentNode.insertBefore(t,i),i.parentNode.removeChild(i)}}}var o=function(o){o.doneEach(e)};window.$docsify.plugins=[].concat(o,window.$docsify.plugins)}(); !function(){function o(){for(var o=Docsify.dom.getNode("#main"),e=Docsify.dom.findAll(o,"script"),n=e.length;n--;){var i=e[n];if(i&&i.src){var t=document.createElement("script");Array.prototype.slice.call(i.attributes).forEach(function(o){t[o.name]=o.value}),i.parentNode.insertBefore(t,i),i.parentNode.removeChild(i)}}}window.$docsify.plugins=[].concat(function(e){e.doneEach(o)},window.$docsify.plugins)}();

View file

@ -1,6 +1,4 @@
(function () { (function () {
'use strict';
/** /**
* Fork https://github.com/egoist/docute/blob/master/src/utils/yaml.js * Fork https://github.com/egoist/docute/blob/master/src/utils/yaml.js
*/ */

File diff suppressed because one or more lines are too long

View file

@ -1,6 +1,4 @@
(function () { (function () {
'use strict';
// From https://github.com/egoist/vue-ga/blob/master/src/index.js // From https://github.com/egoist/vue-ga/blob/master/src/index.js
function appendScript () { function appendScript () {
var script = document.createElement('script'); var script = document.createElement('script');

View file

@ -1 +1 @@
!function(){"use strict";function n(){var n=document.createElement("script");n.async=!0,n.src="https://www.google-analytics.com/analytics.js",document.body.appendChild(n)}function o(o){n(),window.ga=window.ga||function(){(window.ga.q=window.ga.q||[]).push(arguments)},window.ga.l=Number(new Date),window.ga("create",o,"auto")}function i(){window.ga||o($docsify.ga),window.ga("set","page",location.hash),window.ga("send","pageview")}var a=function(n){if(!$docsify.ga)return void console.error("[Docsify] ga is required.");n.beforeEach(i)};$docsify.plugins=[].concat(a,$docsify.plugins)}(); !function(){function n(n){!function(){var n=document.createElement("script");n.async=!0,n.src="https://www.google-analytics.com/analytics.js",document.body.appendChild(n)}(),window.ga=window.ga||function(){(window.ga.q=window.ga.q||[]).push(arguments)},window.ga.l=Number(new Date),window.ga("create",n,"auto")}function o(){window.ga||n($docsify.ga),window.ga("set","page",location.hash),window.ga("send","pageview")}$docsify.plugins=[].concat(function(n){$docsify.ga?n.beforeEach(o):console.error("[Docsify] ga is required.")},$docsify.plugins)}();

View file

@ -1,6 +1,4 @@
(function () { (function () {
'use strict';
function install (hook, vm) { function install (hook, vm) {
var dom = Docsify.dom; var dom = Docsify.dom;

View file

@ -1 +1 @@
!function(){"use strict";function t(t,n){var i=Docsify.dom;t.mounted(function(t){var n=i.create("div");n.id="gitalk-container";var e=i.getNode("#main");n.style="width: "+e.clientWidth+"px; margin: 0 auto 20px;",i.appendTo(i.find(".content"),n);var o=i.create("script");o.textContent="gitalk.render('gitalk-container')",i.appendTo(i.body,o)})}$docsify.plugins=[].concat(t,$docsify.plugins)}(); !function(){$docsify.plugins=[].concat(function(n,t){var i=Docsify.dom;n.mounted(function(n){var t=i.create("div");t.id="gitalk-container";var e=i.getNode("#main");t.style="width: "+e.clientWidth+"px; margin: 0 auto 20px;",i.appendTo(i.find(".content"),t);var o=i.create("script");o.textContent="gitalk.render('gitalk-container')",i.appendTo(i.body,o)})},$docsify.plugins)}();

View file

@ -1,6 +1,4 @@
(function () { (function () {
'use strict';
var INDEXS = {}; var INDEXS = {};
var helper; var helper;
@ -10,7 +8,7 @@ function escapeHtml (string) {
'<': '&lt;', '<': '&lt;',
'>': '&gt;', '>': '&gt;',
'"': '&quot;', '"': '&quot;',
'\'': '&#39;', "'": '&#39;',
'/': '&#x2F;' '/': '&#x2F;'
}; };
@ -20,18 +18,19 @@ function escapeHtml (string) {
function getAllPaths (router) { function getAllPaths (router) {
var paths = []; var paths = [];
helper.dom.findAll('a:not([data-nosearch])') helper.dom.findAll('a:not([data-nosearch])').map(function (node) {
.map(function (node) { var href = node.href;
var href = node.href; var originHref = node.getAttribute('href');
var originHref = node.getAttribute('href'); var path = router.parse(href).path;
var path = router.parse(href).path;
if (path && if (
paths.indexOf(path) === -1 && path &&
!Docsify.util.isAbsolutePath(originHref)) { paths.indexOf(path) === -1 &&
paths.push(path); !Docsify.util.isAbsolutePath(originHref)
} ) {
}); paths.push(path);
}
});
return paths return paths
} }
@ -97,7 +96,11 @@ function search (query) {
if (postTitle && postContent) { if (postTitle && postContent) {
keywords.forEach(function (keyword, i) { keywords.forEach(function (keyword, i) {
var regEx = new RegExp(keyword, 'gi'); // From https://github.com/sindresorhus/escape-string-regexp
var regEx = new RegExp(
keyword.replace(/[|\\{}()[\]^$+*?.]/g, '\\$&'),
'gi'
);
var indexTitle = -1; var indexTitle = -1;
var indexContent = -1; var indexContent = -1;
@ -118,11 +121,12 @@ function search (query) {
if (end > postContent.length) { end = postContent.length; } if (end > postContent.length) { end = postContent.length; }
var matchContent = '...' + var matchContent =
'...' +
escapeHtml(postContent) escapeHtml(postContent)
.substring(start, end) .substring(start, end)
.replace(regEx, ("<em class=\"search-keyword\">" + keyword + "</em>")) + .replace(regEx, ("<em class=\"search-keyword\">" + keyword + "</em>")) +
'...'; '...';
resultStr += matchContent; resultStr += matchContent;
} }
@ -167,7 +171,7 @@ function init$1 (config, vm) {
if (INDEXS[path]) { return count++ } if (INDEXS[path]) { return count++ }
helper helper
.get(vm.router.getFile(path)) .get(vm.router.getFile(path), false, vm.config.requestHeaders)
.then(function (result) { .then(function (result) {
INDEXS[path] = genIndex(path, result, vm.router, config.depth); INDEXS[path] = genIndex(path, result, vm.router, config.depth);
len === ++count && saveData(config.maxAge); len === ++count && saveData(config.maxAge);
@ -178,7 +182,7 @@ function init$1 (config, vm) {
var NO_DATA_TEXT = ''; var NO_DATA_TEXT = '';
function style () { function style () {
var code = "\n.sidebar {\n padding-top: 0;\n}\n\n.search {\n margin-bottom: 20px;\n padding: 6px;\n border-bottom: 1px solid #eee;\n}\n\n.search .results-panel {\n display: none;\n}\n\n.search .results-panel.show {\n display: block;\n}\n\n.search input {\n outline: none;\n border: none;\n width: 100%;\n padding: 7px;\n line-height: 22px;\n font-size: 14px;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n\n.search h2 {\n font-size: 17px;\n margin: 10px 0;\n}\n\n.search a {\n text-decoration: none;\n color: inherit;\n}\n\n.search .matching-post {\n border-bottom: 1px solid #eee;\n}\n\n.search .matching-post:last-child {\n border-bottom: 0;\n}\n\n.search p {\n font-size: 14px;\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n}\n\n.search p.empty {\n text-align: center;\n}"; var code = "\n.sidebar {\n padding-top: 0;\n}\n\n.search {\n margin-bottom: 20px;\n padding: 6px;\n border-bottom: 1px solid #eee;\n}\n\n.search .input-wrap {\n display: flex;\n align-items: center;\n}\n\n.search .results-panel {\n display: none;\n}\n\n.search .results-panel.show {\n display: block;\n}\n\n.search input {\n outline: none;\n border: none;\n width: 100%;\n padding: 0 7px;\n line-height: 36px;\n font-size: 14px;\n}\n\n.search input::-webkit-search-decoration,\n.search input::-webkit-search-cancel-button,\n.search input {\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n.search .clear-button {\n width: 36px;\n text-align: right;\n display: none;\n}\n\n.search .clear-button.show {\n display: block;\n}\n\n.search .clear-button svg {\n transform: scale(.5);\n}\n\n.search h2 {\n font-size: 17px;\n margin: 10px 0;\n}\n\n.search a {\n text-decoration: none;\n color: inherit;\n}\n\n.search .matching-post {\n border-bottom: 1px solid #eee;\n}\n\n.search .matching-post:last-child {\n border-bottom: 0;\n}\n\n.search p {\n font-size: 14px;\n overflow: hidden;\n text-overflow: ellipsis;\n display: -webkit-box;\n -webkit-line-clamp: 2;\n -webkit-box-orient: vertical;\n}\n\n.search p.empty {\n text-align: center;\n}";
Docsify.dom.style(code); Docsify.dom.style(code);
} }
@ -187,9 +191,7 @@ function tpl (opts, defaultValue) {
if ( defaultValue === void 0 ) defaultValue = ''; if ( defaultValue === void 0 ) defaultValue = '';
var html = var html =
"<input type=\"search\" value=\"" + defaultValue + "\" />" + "<div class=\"input-wrap\">\n <input type=\"search\" value=\"" + defaultValue + "\" />\n <div class=\"clear-button\">\n <svg width=\"26\" height=\"24\">\n <circle cx=\"12\" cy=\"12\" r=\"11\" fill=\"#ccc\" />\n <path stroke=\"white\" stroke-width=\"2\" d=\"M8.25,8.25,15.75,15.75\" />\n <path stroke=\"white\" stroke-width=\"2\"d=\"M8.25,15.75,15.75,8.25\" />\n </svg>\n </div>\n </div>\n <div class=\"results-panel\"></div>\n </div>";
'<div class="results-panel"></div>' +
'</div>';
var el = Docsify.dom.create('div', html); var el = Docsify.dom.create('div', html);
var aside = Docsify.dom.find('aside'); var aside = Docsify.dom.find('aside');
@ -200,9 +202,11 @@ function tpl (opts, defaultValue) {
function doSearch (value) { function doSearch (value) {
var $search = Docsify.dom.find('div.search'); var $search = Docsify.dom.find('div.search');
var $panel = Docsify.dom.find($search, '.results-panel'); var $panel = Docsify.dom.find($search, '.results-panel');
var $clearBtn = Docsify.dom.find($search, '.clear-button');
if (!value) { if (!value) {
$panel.classList.remove('show'); $panel.classList.remove('show');
$clearBtn.classList.remove('show');
$panel.innerHTML = ''; $panel.innerHTML = '';
return return
} }
@ -210,16 +214,18 @@ function doSearch (value) {
var html = ''; var html = '';
matchs.forEach(function (post) { matchs.forEach(function (post) {
html += "<div class=\"matching-post\">\n<a href=\"" + (post.url) + "\"> \n<h2>" + (post.title) + "</h2>\n<p>" + (post.content) + "</p>\n</a>\n</div>"; html += "<div class=\"matching-post\">\n<a href=\"" + (post.url) + "\">\n<h2>" + (post.title) + "</h2>\n<p>" + (post.content) + "</p>\n</a>\n</div>";
}); });
$panel.classList.add('show'); $panel.classList.add('show');
$clearBtn.classList.add('show');
$panel.innerHTML = html || ("<p class=\"empty\">" + NO_DATA_TEXT + "</p>"); $panel.innerHTML = html || ("<p class=\"empty\">" + NO_DATA_TEXT + "</p>");
} }
function bindEvents () { function bindEvents () {
var $search = Docsify.dom.find('div.search'); var $search = Docsify.dom.find('div.search');
var $input = Docsify.dom.find($search, 'input'); var $input = Docsify.dom.find($search, 'input');
var $inputWrap = Docsify.dom.find($search, '.input-wrap');
var timeId; var timeId;
// Prevent to Fold sidebar // Prevent to Fold sidebar
@ -232,6 +238,13 @@ function bindEvents () {
clearTimeout(timeId); clearTimeout(timeId);
timeId = setTimeout(function (_) { return doSearch(e.target.value.trim()); }, 100); timeId = setTimeout(function (_) { return doSearch(e.target.value.trim()); }, 100);
}); });
Docsify.dom.on($inputWrap, 'click', function (e) {
// click input outside
if (e.target.tagName !== 'INPUT') {
$input.value = '';
doSearch();
}
});
} }
function updatePlaceholder (text, path) { function updatePlaceholder (text, path) {
@ -255,7 +268,7 @@ function updateNoData (text, path) {
} }
} }
function init$$1 (opts, vm) { function init (opts, vm) {
var keywords = vm.router.parse().query.s; var keywords = vm.router.parse().query.s;
style(); style();
@ -294,7 +307,7 @@ var install = function (hook, vm) {
var isAuto = CONFIG.paths === 'auto'; var isAuto = CONFIG.paths === 'auto';
hook.mounted(function (_) { hook.mounted(function (_) {
init$$1(CONFIG, vm); init(CONFIG, vm);
!isAuto && init$1(CONFIG, vm); !isAuto && init$1(CONFIG, vm);
}); });
hook.doneEach(function (_) { hook.doneEach(function (_) {

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -37,5 +37,5 @@
"integrity": "sha1-6DWIAbhrg7F1YNTjw4LXrvIQCUQ=" "integrity": "sha1-6DWIAbhrg7F1YNTjw4LXrvIQCUQ="
} }
}, },
"version": "4.5.9" "version": "4.6.0"
} }

View file

@ -1,6 +1,6 @@
{ {
"name": "docsify-server-renderer", "name": "docsify-server-renderer",
"version": "4.5.9", "version": "4.6.0",
"description": "docsify server renderer", "description": "docsify server renderer",
"author": { "author": {
"name": "qingwei-li", "name": "qingwei-li",