Merge pull request #45 from nosqlbench/async_docs

Async docs
This commit is contained in:
Sebastián Estévez 2020-03-05 13:58:36 -05:00 committed by GitHub
commit 238f6cab31
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
23 changed files with 66 additions and 29 deletions

View File

@ -10,7 +10,7 @@ public class DocsysDefaultAppPath implements DocsysStaticManifest {
@Override
public DocsBinder getDocs() {
return new Docs().namespace("docsys-default-app").addFirstFoundPath(
"virtdata-docsys/src/main/resources/docsys-guidebook/",
"docsys/src/main/resources/docsys-guidebook/",
"docsys-guidebook/")
.setEnabledByDefault(true)
.asDocsBinder();

View File

@ -2,6 +2,14 @@
export default {
async asyncData(context) {
function fetchStatusHandler(response) {
if (response.status === 200) {
return response;
} else {
throw new Error(response.statusText);
}
}
if (context.req) {
console.log("avoiding server-side async");
return;
@ -31,6 +39,8 @@ export default {
});
let imports = [];
let promises = [];
for (let index in paths) {
let key = paths[index];
if (key == null || key == "") {
@ -40,23 +50,38 @@ export default {
let detailName = key.split("/").filter(x => x.includes(".md"))[0];
detailName = detailName.substr(0, detailName.length - 3);
let categories = key.split("/").filter(x => !x.includes("."))
//const mdMeta = resolve(key);
let rawMD = "";
await fetch(services + "/docs/markdown/" + key)
promises.push(fetch(services + "/docs/markdown/" + key)
.then(res => res.text())
.then(body => rawMD = body);
.then(body => {
return {
"rawMD": body,
"detailName": detailName,
"categories": categories,
"name": name
}
}));
}
var mdData = await Promise.all(
promises
);
for(var data of mdData){
let rawMD = data.rawMD;
var mdMeta = fm(rawMD);
if (mdMeta.attributes == null || mdMeta.attributes.title == null) {
mdMeta.attributes.title = detailName;
mdMeta.attributes.title = data.detailName;
}
if (typeof mdMeta.attributes.weight === 'undefined') {
mdMeta.attributes.weight = 0;
}
mdMeta.categories = key.split("/").filter(x => !x.includes("."));
mdMeta.filename = encodeURIComponent(name);
mdMeta.categories = data.categories;
mdMeta.filename = encodeURIComponent(data.name);
//console.log("mdMeta:" + JSON.stringify(mdMeta));
imports.push(mdMeta);
@ -113,7 +138,11 @@ export default {
active_category = active_category.substr(0,active_category.length-3);
}
active_category_name = categories.find(c => c.category === active_category).categoryName;
let foundCategory = categories.find(c => c.category === active_category);
if (foundCategory != undefined){
active_category_name = categories.find(c => c.category === active_category).categoryName;
}
console.log("active_category:" + active_category);
console.log("active_topic:" + active_topic);
@ -135,11 +164,14 @@ export default {
let mdPath = services + '/docs/markdown/' + docname;
// let rawMD = await context.$axios.$get(mdPath);
let rawMD = await fetch(services + "/docs/markdown/" + docname)
.then(fetchStatusHandler)
.then(res => res.text())
.then(body => docbody = body);
.then(body => docbody = body)
.catch(function(error) {
console.log(error);
});;
var markdown = fm(rawMD);

View File

@ -2,4 +2,11 @@
rm -rf dist .nuxt
npm run generate
rm -rf ../../resources/docsys-guidebook
mv dist ../../resources/docsys-guidebook
cp -r dist ../../resources/docsys-guidebook
# static site for gh pages
mkdir dist/services
mkdir dist/services/docs/
mkdir dist/services/docs/markdown/
find ../../../../../engine-docs/src/main/resources/docs-for-nb/ -name "*.md" | sed 's:../../../../../engine-docs/src/main/resources/docs-for-nb/::g' > dist/services/docs/markdown.csv
cp -R ../../../../../engine-docs/src/main/resources/docs-for-nb/* dist/services/docs/markdown/

View File

@ -1,9 +1,9 @@
<!doctype html>
<html>
<head>
<title>guidebookDSBench Guidebook</title><meta data-n-head="1" charset="utf-8"><meta data-n-head="1" name="viewport" content="width=device-width,initial-scale=1"><meta data-n-head="1" data-hid="description" name="description" content="Docs App for EB Ecosystem"><link data-n-head="1" rel="icon" type="image/x-icon" href="/favicon.ico"><link data-n-head="1" rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900&display=swap"><link data-n-head="1" rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/@mdi/font@latest/css/materialdesignicons.min.css"><link rel="preload" href="/_nuxt/c24bb19f5464c4de76c7.js" as="script"><link rel="preload" href="/_nuxt/8277f215ae5cc3cc3883.js" as="script"><link rel="preload" href="/_nuxt/a19b17701627696845ad.js" as="script"><link rel="preload" href="/_nuxt/409c7303ce0c3b7461bc.js" as="script">
<title>guidebookNoSqlBench Guidebook</title><meta data-n-head="1" charset="utf-8"><meta data-n-head="1" name="viewport" content="width=device-width,initial-scale=1"><meta data-n-head="1" data-hid="description" name="description" content="Docs App for NoSQLBench"><link data-n-head="1" rel="icon" type="image/x-icon" href="/favicon.ico"><link data-n-head="1" rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900&display=swap"><link data-n-head="1" rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/@mdi/font@latest/css/materialdesignicons.min.css"><link rel="preload" href="/_nuxt/ab728be63c3fc7521a45.js" as="script"><link rel="preload" href="/_nuxt/4624bfb5c053c019954b.js" as="script"><link rel="preload" href="/_nuxt/54674d21809810cadfcb.js" as="script"><link rel="preload" href="/_nuxt/9add61b10767494b3691.js" as="script">
</head>
<body>
<div id="__nuxt"><style>#nuxt-loading{visibility:hidden;opacity:0;position:absolute;left:0;right:0;top:0;bottom:0;display:flex;justify-content:center;align-items:center;flex-direction:column;animation:nuxtLoadingIn 10s ease;-webkit-animation:nuxtLoadingIn 10s ease;animation-fill-mode:forwards;overflow:hidden}@keyframes nuxtLoadingIn{0%{visibility:hidden;opacity:0}20%{visibility:visible;opacity:0}100%{visibility:visible;opacity:1}}@-webkit-keyframes nuxtLoadingIn{0%{visibility:hidden;opacity:0}20%{visibility:visible;opacity:0}100%{visibility:visible;opacity:1}}#nuxt-loading>div,#nuxt-loading>div:after{border-radius:50%;width:5rem;height:5rem}#nuxt-loading>div{font-size:10px;position:relative;text-indent:-9999em;border:.5rem solid #f5f5f5;border-left:.5rem solid #fff;-webkit-transform:translateZ(0);-ms-transform:translateZ(0);transform:translateZ(0);-webkit-animation:nuxtLoading 1.1s infinite linear;animation:nuxtLoading 1.1s infinite linear}#nuxt-loading.error>div{border-left:.5rem solid #ff4500;animation-duration:5s}@-webkit-keyframes nuxtLoading{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes nuxtLoading{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}</style><script>window.addEventListener("error",function(){var e=document.getElementById("nuxt-loading");e&&(e.className+=" error")})</script><div id="nuxt-loading" aria-live="polite" role="status"><div>Loading...</div></div></div>
<script type="text/javascript" src="/_nuxt/c24bb19f5464c4de76c7.js"></script><script type="text/javascript" src="/_nuxt/8277f215ae5cc3cc3883.js"></script><script type="text/javascript" src="/_nuxt/a19b17701627696845ad.js"></script><script type="text/javascript" src="/_nuxt/409c7303ce0c3b7461bc.js"></script></body>
<script type="text/javascript" src="/_nuxt/ab728be63c3fc7521a45.js"></script><script type="text/javascript" src="/_nuxt/4624bfb5c053c019954b.js"></script><script type="text/javascript" src="/_nuxt/54674d21809810cadfcb.js"></script><script type="text/javascript" src="/_nuxt/9add61b10767494b3691.js"></script></body>
</html>

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

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

@ -1 +1 @@
!function(e){function r(data){for(var r,n,f=data[0],l=data[1],d=data[2],i=0,h=[];i<f.length;i++)n=f[i],Object.prototype.hasOwnProperty.call(o,n)&&o[n]&&h.push(o[n][0]),o[n]=0;for(r in l)Object.prototype.hasOwnProperty.call(l,r)&&(e[r]=l[r]);for(v&&v(data);h.length;)h.shift()();return c.push.apply(c,d||[]),t()}function t(){for(var e,i=0;i<c.length;i++){for(var r=c[i],t=!0,n=1;n<r.length;n++){var l=r[n];0!==o[l]&&(t=!1)}t&&(c.splice(i--,1),e=f(f.s=r[0]))}return e}var n={},o={8:0},c=[];function f(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,f),t.l=!0,t.exports}f.e=function(e){var r=[],t=o[e];if(0!==t)if(t)r.push(t[2]);else{var n=new Promise((function(r,n){t=o[e]=[r,n]}));r.push(t[2]=n);var c,script=document.createElement("script");script.charset="utf-8",script.timeout=120,f.nc&&script.setAttribute("nonce",f.nc),script.src=function(e){return f.p+""+{0:"81d27cd805196f181634",1:"1c01be3107781b260c00",4:"25eebbaf863dd174fecb",5:"d577154fbc6cf28640c8",6:"428c6c33fdbc344a773a",7:"5b52e5fa10e53d2ac319"}[e]+".js"}(e);var l=new Error;c=function(r){script.onerror=script.onload=null,clearTimeout(d);var t=o[e];if(0!==t){if(t){var n=r&&("load"===r.type?"missing":r.type),c=r&&r.target&&r.target.src;l.message="Loading chunk "+e+" failed.\n("+n+": "+c+")",l.name="ChunkLoadError",l.type=n,l.request=c,t[1](l)}o[e]=void 0}};var d=setTimeout((function(){c({type:"timeout",target:script})}),12e4);script.onerror=script.onload=c,document.head.appendChild(script)}return Promise.all(r)},f.m=e,f.c=n,f.d=function(e,r,t){f.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},f.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},f.t=function(e,r){if(1&r&&(e=f(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(f.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)f.d(t,n,function(r){return e[r]}.bind(null,n));return t},f.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return f.d(r,"a",r),r},f.o=function(object,e){return Object.prototype.hasOwnProperty.call(object,e)},f.p="/_nuxt/",f.oe=function(e){throw console.error(e),e};var l=window.webpackJsonp=window.webpackJsonp||[],d=l.push.bind(l);l.push=r,l=l.slice();for(var i=0;i<l.length;i++)r(l[i]);var v=d;t()}([]);
!function(e){function r(data){for(var r,n,f=data[0],l=data[1],d=data[2],i=0,h=[];i<f.length;i++)n=f[i],Object.prototype.hasOwnProperty.call(o,n)&&o[n]&&h.push(o[n][0]),o[n]=0;for(r in l)Object.prototype.hasOwnProperty.call(l,r)&&(e[r]=l[r]);for(v&&v(data);h.length;)h.shift()();return c.push.apply(c,d||[]),t()}function t(){for(var e,i=0;i<c.length;i++){for(var r=c[i],t=!0,n=1;n<r.length;n++){var l=r[n];0!==o[l]&&(t=!1)}t&&(c.splice(i--,1),e=f(f.s=r[0]))}return e}var n={},o={8:0},c=[];function f(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,f),t.l=!0,t.exports}f.e=function(e){var r=[],t=o[e];if(0!==t)if(t)r.push(t[2]);else{var n=new Promise((function(r,n){t=o[e]=[r,n]}));r.push(t[2]=n);var c,script=document.createElement("script");script.charset="utf-8",script.timeout=120,f.nc&&script.setAttribute("nonce",f.nc),script.src=function(e){return f.p+""+{0:"efdb07324aea334c9e80",1:"e0a04b7263a86d58d3ba",4:"7cd152161870ad867e83",5:"d3314fbbc4bf2910b26a",6:"ba88ffaeb47c59c7387b",7:"0c2e6386e973ddff2f93"}[e]+".js"}(e);var l=new Error;c=function(r){script.onerror=script.onload=null,clearTimeout(d);var t=o[e];if(0!==t){if(t){var n=r&&("load"===r.type?"missing":r.type),c=r&&r.target&&r.target.src;l.message="Loading chunk "+e+" failed.\n("+n+": "+c+")",l.name="ChunkLoadError",l.type=n,l.request=c,t[1](l)}o[e]=void 0}};var d=setTimeout((function(){c({type:"timeout",target:script})}),12e4);script.onerror=script.onload=c,document.head.appendChild(script)}return Promise.all(r)},f.m=e,f.c=n,f.d=function(e,r,t){f.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},f.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},f.t=function(e,r){if(1&r&&(e=f(e)),8&r)return e;if(4&r&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(f.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)f.d(t,n,function(r){return e[r]}.bind(null,n));return t},f.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return f.d(r,"a",r),r},f.o=function(object,e){return Object.prototype.hasOwnProperty.call(object,e)},f.p="/_nuxt/",f.oe=function(e){throw console.error(e),e};var l=window.webpackJsonp=window.webpackJsonp||[],d=l.push.bind(l);l.push=r,l=l.slice();for(var i=0;i<l.length;i++)r(l[i]);var v=d;t()}([]);

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

@ -1,10 +1,9 @@
<!doctype html>
<html>
<head>
<title>NoSQLBench Guidebook</title><meta data-n-head="1"
charset="utf-8"><meta data-n-head="1" name="viewport" content="width=device-width,initial-scale=1"><meta data-n-head="1" data-hid="description" name="description" content="Docs App for EB Ecosystem"><link data-n-head="1" rel="icon" type="image/x-icon" href="/favicon.ico"><link data-n-head="1" rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900&display=swap"><link data-n-head="1" rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/@mdi/font@latest/css/materialdesignicons.min.css"><link rel="preload" href="/_nuxt/c24bb19f5464c4de76c7.js" as="script"><link rel="preload" href="/_nuxt/8277f215ae5cc3cc3883.js" as="script"><link rel="preload" href="/_nuxt/a19b17701627696845ad.js" as="script"><link rel="preload" href="/_nuxt/409c7303ce0c3b7461bc.js" as="script">
<title>guidebookNoSqlBench Guidebook</title><meta data-n-head="1" charset="utf-8"><meta data-n-head="1" name="viewport" content="width=device-width,initial-scale=1"><meta data-n-head="1" data-hid="description" name="description" content="Docs App for NoSQLBench"><link data-n-head="1" rel="icon" type="image/x-icon" href="/favicon.ico"><link data-n-head="1" rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900&display=swap"><link data-n-head="1" rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/@mdi/font@latest/css/materialdesignicons.min.css"><link rel="preload" href="/_nuxt/ab728be63c3fc7521a45.js" as="script"><link rel="preload" href="/_nuxt/4624bfb5c053c019954b.js" as="script"><link rel="preload" href="/_nuxt/54674d21809810cadfcb.js" as="script"><link rel="preload" href="/_nuxt/9add61b10767494b3691.js" as="script">
</head>
<body>
<div id="__nuxt"><style>#nuxt-loading{visibility:hidden;opacity:0;position:absolute;left:0;right:0;top:0;bottom:0;display:flex;justify-content:center;align-items:center;flex-direction:column;animation:nuxtLoadingIn 10s ease;-webkit-animation:nuxtLoadingIn 10s ease;animation-fill-mode:forwards;overflow:hidden}@keyframes nuxtLoadingIn{0%{visibility:hidden;opacity:0}20%{visibility:visible;opacity:0}100%{visibility:visible;opacity:1}}@-webkit-keyframes nuxtLoadingIn{0%{visibility:hidden;opacity:0}20%{visibility:visible;opacity:0}100%{visibility:visible;opacity:1}}#nuxt-loading>div,#nuxt-loading>div:after{border-radius:50%;width:5rem;height:5rem}#nuxt-loading>div{font-size:10px;position:relative;text-indent:-9999em;border:.5rem solid #f5f5f5;border-left:.5rem solid #fff;-webkit-transform:translateZ(0);-ms-transform:translateZ(0);transform:translateZ(0);-webkit-animation:nuxtLoading 1.1s infinite linear;animation:nuxtLoading 1.1s infinite linear}#nuxt-loading.error>div{border-left:.5rem solid #ff4500;animation-duration:5s}@-webkit-keyframes nuxtLoading{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes nuxtLoading{0%{-webkit-transform:rotate(0);transform:rotate(0)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}</style><script>window.addEventListener("error",function(){var e=document.getElementById("nuxt-loading");e&&(e.className+=" error")})</script><div id="nuxt-loading" aria-live="polite" role="status"><div>Loading...</div></div></div>
<script type="text/javascript" src="/_nuxt/c24bb19f5464c4de76c7.js"></script><script type="text/javascript" src="/_nuxt/8277f215ae5cc3cc3883.js"></script><script type="text/javascript" src="/_nuxt/a19b17701627696845ad.js"></script><script type="text/javascript" src="/_nuxt/409c7303ce0c3b7461bc.js"></script></body>
<script type="text/javascript" src="/_nuxt/ab728be63c3fc7521a45.js"></script><script type="text/javascript" src="/_nuxt/4624bfb5c053c019954b.js"></script><script type="text/javascript" src="/_nuxt/54674d21809810cadfcb.js"></script><script type="text/javascript" src="/_nuxt/9add61b10767494b3691.js"></script></body>
</html>

View File

@ -10,8 +10,7 @@ public class NBMarkdownManifest implements DocsysDynamicManifest {
@Override
public DocsBinder getDocs() {
return new Docs().namespace("docs-for-eb")
.addFirstFoundPath("engine-cli/src/main/resources/docs-for" +
"-nb/",
.addFirstFoundPath("engine-docs/src/main/resources/docs-for-nb/",
"docs-for-nb/")
.setEnabledByDefault(false)
.asDocsBinder();