[build] 4.6.5

This commit is contained in:
qingwei.li 2018-03-03 22:57:34 +08:00
commit 75222209da
19 changed files with 2763 additions and 298 deletions

View file

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

File diff suppressed because it is too large Load diff

2
lib/docsify.min.js vendored

File diff suppressed because one or more lines are too long

View file

@ -4,7 +4,7 @@ if (fixedPath !== location.href) {
location.href = fixedPath; location.href = fixedPath;
} }
function install (hook, vm) { function install(hook, vm) {
var dom = Docsify.dom; var dom = Docsify.dom;
var disqus = vm.config.disqus; var disqus = vm.config.disqus;
if (!disqus) { if (!disqus) {
@ -16,7 +16,7 @@ function install (hook, vm) {
script.async = true; script.async = true;
script.src = "https://" + disqus + ".disqus.com/embed.js"; script.src = "https://" + disqus + ".disqus.com/embed.js";
script.setAttribute('data-timestamp', +new Date()); script.setAttribute('data-timestamp', Number(new Date()));
dom.appendTo(dom.body, script); dom.appendTo(dom.body, script);
}); });

View file

@ -1 +1 @@
!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)}(); !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",Number(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

@ -888,12 +888,12 @@ var AllGithubEmoji = [
'zzz' 'zzz'
]; ];
// emoji from All-Github-Emoji-Icons // Emoji from All-Github-Emoji-Icons
// https://github.com/scotch-io/All-Github-Emoji-Icons // https://github.com/scotch-io/All-Github-Emoji-Icons
window.emojify = function (match, $1) { window.emojify = function (match, $1) {
return AllGithubEmoji.indexOf($1) === -1 return AllGithubEmoji.indexOf($1) === -1 ?
? match match :
: '<img class="emoji" src="https://assets-cdn.github.com/images/icons/emoji/' + '<img class="emoji" src="https://assets-cdn.github.com/images/icons/emoji/' +
$1 + $1 +
'.png" alt="' + '.png" alt="' +
$1 + $1 +

View file

@ -1,5 +1,5 @@
(function () { (function () {
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,13 +1,13 @@
(function () { (function () {
// 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');
script.async = true; script.async = true;
script.src = 'https://www.google-analytics.com/analytics.js'; script.src = 'https://www.google-analytics.com/analytics.js';
document.body.appendChild(script); document.body.appendChild(script);
} }
function init (id) { function init(id) {
appendScript(); appendScript();
window.ga = window.ga =
window.ga || window.ga ||
@ -18,7 +18,7 @@ function init (id) {
window.ga('create', id, 'auto'); window.ga('create', id, 'auto');
} }
function collect () { function collect() {
if (!window.ga) { if (!window.ga) {
init($docsify.ga); init($docsify.ga);
} }

View file

@ -1,5 +1,5 @@
(function () { (function () {
function install (hook, vm) { function install(hook) {
var dom = Docsify.dom; var dom = Docsify.dom;
hook.mounted(function (_) { hook.mounted(function (_) {

View file

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

View file

@ -2,23 +2,23 @@
var INDEXS = {}; var INDEXS = {};
var helper; var helper;
function escapeHtml (string) { function escapeHtml(string) {
var entityMap = { var entityMap = {
'&': '&amp;', '&': '&amp;',
'<': '&lt;', '<': '&lt;',
'>': '&gt;', '>': '&gt;',
'"': '&quot;', '"': '&quot;',
"'": '&#39;', '\'': '&#39;',
'/': '&#x2F;' '/': '&#x2F;'
}; };
return String(string).replace(/[&<>"'\/]/g, function (s) { return entityMap[s]; }) return String(string).replace(/[&<>"'/]/g, function (s) { return entityMap[s]; })
} }
function getAllPaths (router) { function getAllPaths(router) {
var paths = []; var paths = [];
helper.dom.findAll('a:not([data-nosearch])').map(function (node) { helper.dom.findAll('a:not([data-nosearch])').forEach(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;
@ -35,12 +35,12 @@ function getAllPaths (router) {
return paths return paths
} }
function saveData (maxAge) { function saveData(maxAge) {
localStorage.setItem('docsify.search.expires', Date.now() + maxAge); localStorage.setItem('docsify.search.expires', Date.now() + maxAge);
localStorage.setItem('docsify.search.index', JSON.stringify(INDEXS)); localStorage.setItem('docsify.search.index', JSON.stringify(INDEXS));
} }
function genIndex (path, content, router, depth) { function genIndex(path, content, router, depth) {
if ( content === void 0 ) content = ''; if ( content === void 0 ) content = '';
var tokens = window.marked.lexer(content); var tokens = window.marked.lexer(content);
@ -50,18 +50,18 @@ function genIndex (path, content, router, depth) {
tokens.forEach(function (token) { tokens.forEach(function (token) {
if (token.type === 'heading' && token.depth <= depth) { if (token.type === 'heading' && token.depth <= depth) {
slug = router.toURL(path, { id: slugify(token.text) }); slug = router.toURL(path, {id: slugify(token.text)});
index[slug] = { slug: slug, title: token.text, body: '' }; index[slug] = {slug: slug, title: token.text, body: ''};
} else { } else {
if (!slug) { return } if (!slug) {
return
}
if (!index[slug]) { if (!index[slug]) {
index[slug] = { slug: slug, title: '', body: '' }; index[slug] = {slug: slug, title: '', body: ''};
} else if (index[slug].body) {
index[slug].body += '\n' + (token.text || '');
} else { } else {
if (index[slug].body) { index[slug].body = token.text;
index[slug].body += '\n' + (token.text || '');
} else {
index[slug].body = token.text;
}
} }
} }
}); });
@ -73,7 +73,7 @@ function genIndex (path, content, router, depth) {
* @param {String} query * @param {String} query
* @returns {Array} * @returns {Array}
*/ */
function search (query) { function search(query) {
var matchingResults = []; var matchingResults = [];
var data = []; var data = [];
Object.keys(INDEXS).forEach(function (key) { Object.keys(INDEXS).forEach(function (key) {
@ -81,7 +81,7 @@ function search (query) {
}); });
query = query.trim(); query = query.trim();
var keywords = query.split(/[\s\-\,\\/]+/); var keywords = query.split(/[\s\-,\\/]+/);
if (keywords.length !== 1) { if (keywords.length !== 1) {
keywords = [].concat(query, keywords); keywords = [].concat(query, keywords);
} }
@ -95,7 +95,7 @@ function search (query) {
var postUrl = post.slug || ''; var postUrl = post.slug || '';
if (postTitle && postContent) { if (postTitle && postContent) {
keywords.forEach(function (keyword, i) { keywords.forEach(function (keyword) {
// From https://github.com/sindresorhus/escape-string-regexp // From https://github.com/sindresorhus/escape-string-regexp
var regEx = new RegExp( var regEx = new RegExp(
keyword.replace(/[|\\{}()[\]^$+*?.]/g, '\\$&'), keyword.replace(/[|\\{}()[\]^$+*?.]/g, '\\$&'),
@ -111,7 +111,9 @@ function search (query) {
isMatch = false; isMatch = false;
} else { } else {
isMatch = true; isMatch = true;
if (indexContent < 0) { indexContent = 0; } if (indexContent < 0) {
indexContent = 0;
}
var start = 0; var start = 0;
var end = 0; var end = 0;
@ -119,7 +121,9 @@ function search (query) {
start = indexContent < 11 ? 0 : indexContent - 10; start = indexContent < 11 ? 0 : indexContent - 10;
end = start === 0 ? 70 : indexContent + keyword.length + 60; end = start === 0 ? 70 : indexContent + keyword.length + 60;
if (end > postContent.length) { end = postContent.length; } if (end > postContent.length) {
end = postContent.length;
}
var matchContent = var matchContent =
'...' + '...' +
@ -149,7 +153,7 @@ function search (query) {
return matchingResults return matchingResults
} }
function init$1 (config, vm) { function init$1(config, vm) {
helper = Docsify; helper = Docsify;
var isAuto = config.paths === 'auto'; var isAuto = config.paths === 'auto';
@ -168,7 +172,9 @@ function init$1 (config, vm) {
var count = 0; var count = 0;
paths.forEach(function (path) { paths.forEach(function (path) {
if (INDEXS[path]) { return count++ } if (INDEXS[path]) {
return count++
}
helper helper
.get(vm.router.getFile(path), false, vm.config.requestHeaders) .get(vm.router.getFile(path), false, vm.config.requestHeaders)
@ -181,13 +187,13 @@ 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 .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}"; 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);
} }
function tpl (opts, defaultValue) { function tpl(opts, defaultValue) {
if ( defaultValue === void 0 ) defaultValue = ''; if ( defaultValue === void 0 ) defaultValue = '';
var html = var html =
@ -199,7 +205,7 @@ function tpl (opts, defaultValue) {
Docsify.dom.before(aside, el); Docsify.dom.before(aside, el);
} }
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'); var $clearBtn = Docsify.dom.find($search, '.clear-button');
@ -222,7 +228,7 @@ function doSearch (value) {
$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 $inputWrap = Docsify.dom.find($search, '.input-wrap');
@ -239,7 +245,7 @@ function bindEvents () {
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) { Docsify.dom.on($inputWrap, 'click', function (e) {
// click input outside // Click input outside
if (e.target.tagName !== 'INPUT') { if (e.target.tagName !== 'INPUT') {
$input.value = ''; $input.value = '';
doSearch(); doSearch();
@ -247,10 +253,12 @@ function bindEvents () {
}); });
} }
function updatePlaceholder (text, path) { function updatePlaceholder(text, path) {
var $input = Docsify.dom.getNode('.search input[type="search"]'); var $input = Docsify.dom.getNode('.search input[type="search"]');
if (!$input) { return } if (!$input) {
return
}
if (typeof text === 'string') { if (typeof text === 'string') {
$input.placeholder = text; $input.placeholder = text;
} else { } else {
@ -259,7 +267,7 @@ function updatePlaceholder (text, path) {
} }
} }
function updateNoData (text, path) { function updateNoData(text, path) {
if (typeof text === 'string') { if (typeof text === 'string') {
NO_DATA_TEXT = text; NO_DATA_TEXT = text;
} else { } else {
@ -268,7 +276,7 @@ function updateNoData (text, path) {
} }
} }
function init (opts, vm) { function init(opts, vm) {
var keywords = vm.router.parse().query.s; var keywords = vm.router.parse().query.s;
style(); style();
@ -277,7 +285,7 @@ function init (opts, vm) {
keywords && setTimeout(function (_) { return doSearch(keywords); }, 500); keywords && setTimeout(function (_) { return doSearch(keywords); }, 500);
} }
function update (opts, vm) { function update(opts, vm) {
updatePlaceholder(opts.placeholder, vm.route.path); updatePlaceholder(opts.placeholder, vm.route.path);
updateNoData(opts.noData, vm.route.path); updateNoData(opts.noData, vm.route.path);
} }

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.6.4" "version": "4.6.5"
} }

View file

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