Add custom ui-bundle
BIN
ui-bundle.zip
Normal file
3
ui-bundle/css/site.css
Normal file
BIN
ui-bundle/font/roboto-latin-400.woff
Normal file
BIN
ui-bundle/font/roboto-latin-400.woff2
Normal file
BIN
ui-bundle/font/roboto-latin-400italic.woff
Normal file
BIN
ui-bundle/font/roboto-latin-400italic.woff2
Normal file
BIN
ui-bundle/font/roboto-latin-500.woff
Normal file
BIN
ui-bundle/font/roboto-latin-500.woff2
Normal file
BIN
ui-bundle/font/roboto-latin-500italic.woff
Normal file
BIN
ui-bundle/font/roboto-latin-500italic.woff2
Normal file
BIN
ui-bundle/font/roboto-mono-latin-400.woff
Normal file
BIN
ui-bundle/font/roboto-mono-latin-400.woff2
Normal file
BIN
ui-bundle/font/roboto-mono-latin-500.woff
Normal file
BIN
ui-bundle/font/roboto-mono-latin-500.woff2
Normal file
9
ui-bundle/helpers/and.js
Normal file
@@ -0,0 +1,9 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = (...args) => {
|
||||
const numArgs = args.length
|
||||
if (numArgs === 3) return args[0] && args[1]
|
||||
if (numArgs < 3) throw new Error('{{and}} helper expects at least 2 arguments')
|
||||
args.pop()
|
||||
return args.every((it) => it)
|
||||
}
|
||||
5
ui-bundle/helpers/detag.js
Normal file
@@ -0,0 +1,5 @@
|
||||
'use strict'
|
||||
|
||||
const TAG_ALL_RX = /<[^>]+>/g
|
||||
|
||||
module.exports = (html) => html && html.replace(TAG_ALL_RX, '')
|
||||
3
ui-bundle/helpers/eq.js
Normal file
@@ -0,0 +1,3 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = (a, b) => a === b
|
||||
3
ui-bundle/helpers/increment.js
Normal file
@@ -0,0 +1,3 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = (value) => (value || 0) + 1
|
||||
3
ui-bundle/helpers/ne.js
Normal file
@@ -0,0 +1,3 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = (a, b) => a !== b
|
||||
3
ui-bundle/helpers/not.js
Normal file
@@ -0,0 +1,3 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = (val) => !val
|
||||
9
ui-bundle/helpers/or.js
Normal file
@@ -0,0 +1,9 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = (...args) => {
|
||||
const numArgs = args.length
|
||||
if (numArgs === 3) return args[0] || args[1]
|
||||
if (numArgs < 3) throw new Error('{{or}} helper expects at least 2 arguments')
|
||||
args.pop()
|
||||
return args.some((it) => it)
|
||||
}
|
||||
24
ui-bundle/helpers/relativize.js
Normal file
@@ -0,0 +1,24 @@
|
||||
'use strict'
|
||||
|
||||
const { posix: path } = require('path')
|
||||
|
||||
module.exports = (to, from, ctx) => {
|
||||
if (!to) return '#'
|
||||
// NOTE only legacy invocation provides both to and from
|
||||
if (!ctx) from = (ctx = from).data.root.page.url
|
||||
if (to.charAt() !== '/') return to
|
||||
if (!from) return (ctx.data.root.site.path || '') + to
|
||||
let hash = ''
|
||||
const hashIdx = to.indexOf('#')
|
||||
if (~hashIdx) {
|
||||
hash = to.substr(hashIdx)
|
||||
to = to.substr(0, hashIdx)
|
||||
}
|
||||
return to === from
|
||||
? hash || (isDir(to) ? './' : path.basename(to))
|
||||
: (path.relative(path.dirname(from + '.'), to) || '.') + (isDir(to) ? '/' + hash : hash)
|
||||
}
|
||||
|
||||
function isDir (str) {
|
||||
return str.charAt(str.length - 1) === '/'
|
||||
}
|
||||
3
ui-bundle/helpers/year.js
Normal file
@@ -0,0 +1,3 @@
|
||||
'use strict'
|
||||
|
||||
module.exports = () => new Date().getFullYear().toString()
|
||||
1
ui-bundle/img/back.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><path d="M50.001 9.9L9.9 50 50 90.1l5.656-5.655-30.435-30.442H90.1v-8.006H25.222l30.435-30.44z"/></svg>
|
||||
|
After Width: | Height: | Size: 190 B |
1
ui-bundle/img/caret.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30"><path d="M10.187 3l14 12-14 12z" fill="#c1c1c1" stroke="#c1c1c1" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>
|
||||
|
After Width: | Height: | Size: 219 B |
1
ui-bundle/img/chevron.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30"><path d="M3.67 6.59L1.455 8.615 15 23.375l13.545-14.76L26.33 6.59 15 18.76z" fill="#5d5d5d"/></svg>
|
||||
|
After Width: | Height: | Size: 182 B |
1
ui-bundle/img/home-o.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><g fill="none" stroke="#222" stroke-width="4"><path d="M50.02 13.576l-28.58 25.54-.02 47.345h21.506l.025-25.166H57.05l.025 25.166H78.62l.02-47.31-28.62-25.575z"/><path d="M63.815 25.904v-9.217h8.657V33.64zM21.439 39.116l-9.982 8.92m77.125 0l-9.943-8.885"/></g></svg>
|
||||
|
After Width: | Height: | Size: 328 B |
1
ui-bundle/img/home.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><g stroke="#222" stroke-width="4"><path d="M50.02 13.576l-28.58 25.54-.02 47.345h21.506l.025-25.166H57.05l.025 25.166H78.62l.02-47.31-28.62-25.575z" fill="#222" fill-rule="evenodd"/><path d="M63.815 25.904v-9.217h8.657V33.64z" fill="#222" fill-rule="evenodd"/><path d="M21.439 39.116l-9.982 8.92m77.125 0l-9.943-8.885" fill="none"/></g></svg>
|
||||
|
After Width: | Height: | Size: 404 B |
1
ui-bundle/img/menu.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path d="M35 19.772h55" fill="none" stroke="#222" stroke-width="8" stroke-opacity=".941"/><path fill="#222" d="M10 12.272h15v15H10z"/><path d="M43 63.678h45" fill="none" stroke="#222" stroke-width="5" stroke-opacity=".941"/><path fill="#222" d="M23 58.677h10v10H23z"/><path d="M43 82.727h45" fill="none" stroke="#222" stroke-width="5" stroke-opacity=".941"/><path fill="#222" d="M23 77.727h10v10H23z"/><path d="M43 44.628h45" fill="none" stroke="#222" stroke-width="5" stroke-opacity=".941"/><path fill="#222" d="M23 39.628h10v10H23z"/></svg>
|
||||
|
After Width: | Height: | Size: 604 B |
1
ui-bundle/img/octicons-16.svg
Normal file
@@ -0,0 +1 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><desc>Octicons v11.2.0 by GitHub - https://primer.style/octicons/ - License: MIT</desc><symbol id="icon-clippy" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M5.75 1a.75.75 0 00-.75.75v3c0 .414.336.75.75.75h4.5a.75.75 0 00.75-.75v-3a.75.75 0 00-.75-.75h-4.5zm.75 3V2.5h3V4h-3zm-2.874-.467a.75.75 0 00-.752-1.298A1.75 1.75 0 002 3.75v9.5c0 .966.784 1.75 1.75 1.75h8.5A1.75 1.75 0 0014 13.25v-9.5a1.75 1.75 0 00-.874-1.515.75.75 0 10-.752 1.298.25.25 0 01.126.217v9.5a.25.25 0 01-.25.25h-8.5a.25.25 0 01-.25-.25v-9.5a.25.25 0 01.126-.217z"/></symbol><use href="#icon-clippy" width="16" height="16"/><view id="view-clippy" viewBox="0 0 16 16"/></svg>
|
||||
|
After Width: | Height: | Size: 710 B |
6
ui-bundle/js/site.js
Normal file
@@ -0,0 +1,6 @@
|
||||
!function(){"use strict";var o=/^sect(\d)$/,i=document.querySelector(".nav-container"),a=document.querySelector(".nav-toggle");a.addEventListener("click",function(e){if(a.classList.contains("is-active"))return u(e);v(e);var t=document.documentElement;t.classList.add("is-clipped--nav"),a.classList.add("is-active"),i.classList.add("is-active");var n=c.getBoundingClientRect(),e=window.innerHeight-Math.round(n.top);Math.round(n.height)!==e&&(c.style.height=e+"px");t.addEventListener("click",u)}),i.addEventListener("click",v);var c,r,s,l=i.querySelector("[data-panel=menu]");function e(){var e,t,n=window.location.hash;if(n&&(n.indexOf("%")&&(n=decodeURIComponent(n)),!(e=l.querySelector('.nav-link[href="'+n+'"]')))){n=document.getElementById(n.slice(1));if(n)for(var i=n,a=document.querySelector("article.doc");(i=i.parentNode)&&i!==a;){var c=i.id;if(!c&&(c=o.test(i.className))&&(c=(i.firstElementChild||{}).id),c&&(e=l.querySelector('.nav-link[href="#'+c+'"]')))break}}if(e)t=e.parentNode;else{if(!s)return;e=(t=s).querySelector(".nav-link")}t!==r&&(h(l,".nav-item.is-active").forEach(function(e){e.classList.remove("is-active","is-current-path","is-current-page")}),t.classList.add("is-current-page"),d(r=t),p(l,e))}function d(e){for(var t,n=e.parentNode;!(t=n.classList).contains("nav-menu");)"LI"===n.tagName&&t.contains("nav-item")&&t.add("is-active","is-current-path"),n=n.parentNode;e.classList.add("is-active")}function n(){var e,t,n,i;this.classList.toggle("is-active")&&(e=parseFloat(window.getComputedStyle(this).marginTop),t=this.getBoundingClientRect(),n=l.getBoundingClientRect(),0<(i=(t.bottom-n.top-n.height+e).toFixed())&&(l.scrollTop+=Math.min((t.top-n.top-e).toFixed(),i)))}function u(e){v(e);e=document.documentElement;e.classList.remove("is-clipped--nav"),a.classList.remove("is-active"),i.classList.remove("is-active"),e.removeEventListener("click",u)}function v(e){e.stopPropagation()}function p(e,t){var n=e.getBoundingClientRect(),i=n.height,a=window.getComputedStyle(c);"sticky"===a.position&&(i-=n.top-parseFloat(a.top)),e.scrollTop=Math.max(0,.5*(t.getBoundingClientRect().height-i)+t.offsetTop)}function h(e,t){return[].slice.call(e.querySelectorAll(t))}l&&(c=i.querySelector(".nav"),r=l.querySelector(".is-current-page"),(s=r)?(d(r),p(l,r.querySelector(".nav-link"))):l.scrollTop=0,h(l,".nav-item-toggle").forEach(function(e){var t=e.parentElement;e.addEventListener("click",n.bind(t));e=function(e,t){e=e.nextElementSibling;return(!e||!t||e[e.matches?"matches":"msMatchesSelector"](t))&&e}(e,".nav-text");e&&(e.style.cursor="pointer",e.addEventListener("click",n.bind(t)))}),c.querySelector("[data-panel=explore] .context").addEventListener("click",function(){h(c,"[data-panel]").forEach(function(e){e.classList.toggle("is-active")})}),l.addEventListener("mousedown",function(e){1<e.detail&&e.preventDefault()}),l.querySelector('.nav-link[href^="#"]')&&(window.location.hash&&e(),window.addEventListener("hashchange",e)))}();
|
||||
!function(){"use strict";var e=document.querySelector("aside.toc.sidebar");if(e){if(document.querySelector("body.-toc"))return e.parentNode.removeChild(e);var t=parseInt(e.dataset.levels||2,10);if(!(t<0)){for(var o="article.doc",d=document.querySelector(o),n=[],i=0;i<=t;i++){var r=[o];if(i){for(var a=1;a<=i;a++)r.push((2===a?".sectionbody>":"")+".sect"+a);r.push("h"+(i+1)+"[id]")}else r.push("h1[id].sect0");n.push(r.join(">"))}var c,s=(m=n.join(","),f=d.parentNode,[].slice.call((f||document).querySelectorAll(m)));if(!s.length)return e.parentNode.removeChild(e);var l={},u=s.reduce(function(e,t){var o=document.createElement("a");o.textContent=t.textContent,l[o.href="#"+t.id]=o;var n=document.createElement("li");return n.dataset.level=parseInt(t.nodeName.slice(1),10)-1,n.appendChild(o),e.appendChild(n),e},document.createElement("ul")),f=e.querySelector(".toc-menu");f||((f=document.createElement("div")).className="toc-menu");var m=document.createElement("h3");m.textContent=e.dataset.title||"Contents",f.appendChild(m),f.appendChild(u);e=!document.getElementById("toc")&&d.querySelector("h1.page ~ :not(.is-before-toc)");e&&((m=document.createElement("aside")).className="toc embedded",m.appendChild(f.cloneNode(!0)),e.parentNode.insertBefore(m,e)),window.addEventListener("load",function(){p(),window.addEventListener("scroll",p)})}}function p(){var t,e=window.pageYOffset,o=1.15*v(document.documentElement,"fontSize"),n=d.offsetTop;if(e&&window.innerHeight+e+2>=document.documentElement.scrollHeight){c=Array.isArray(c)?c:Array(c||0);var i=[],r=s.length-1;return s.forEach(function(e,t){var o="#"+e.id;t===r||e.getBoundingClientRect().top+v(e,"paddingTop")>n?(i.push(o),c.indexOf(o)<0&&l[o].classList.add("is-active")):~c.indexOf(o)&&l[c.shift()].classList.remove("is-active")}),u.scrollTop=u.scrollHeight-u.offsetHeight,void(c=1<i.length?i:i[0])}Array.isArray(c)&&(c.forEach(function(e){l[e].classList.remove("is-active")}),c=void 0),s.some(function(e){return e.getBoundingClientRect().top+v(e,"paddingTop")-o>n||void(t="#"+e.id)}),t?t!==c&&(c&&l[c].classList.remove("is-active"),(e=l[t]).classList.add("is-active"),u.scrollHeight>u.offsetHeight&&(u.scrollTop=Math.max(0,e.offsetTop+e.offsetHeight-u.offsetHeight)),c=t):c&&(l[c].classList.remove("is-active"),c=void 0)}function v(e,t){return parseFloat(window.getComputedStyle(e)[t])}}();
|
||||
!function(){"use strict";var o=document.querySelector("article.doc"),t=document.querySelector(".toolbar");function i(e){return e&&(~e.indexOf("%")?decodeURIComponent(e):e).slice(1)}function r(e){if(e){if(e.altKey||e.ctrlKey)return;window.location.hash="#"+this.id,e.preventDefault()}window.scrollTo(0,function e(t,n){return o.contains(t)?e(t.offsetParent,t.offsetTop+n):n}(this,0)-t.getBoundingClientRect().bottom)}window.addEventListener("load",function e(t){var n,o;(n=i(window.location.hash))&&(o=document.getElementById(n))&&(r.bind(o)(),setTimeout(r.bind(o),0)),window.removeEventListener("load",e)}),Array.prototype.slice.call(document.querySelectorAll('a[href^="#"]')).forEach(function(e){var t,n;(t=i(e.hash))&&(n=document.getElementById(t))&&e.addEventListener("click",r.bind(n))})}();
|
||||
!function(){"use strict";var t,e=document.querySelector(".page-versions .version-menu-toggle");e&&(t=document.querySelector(".page-versions"),e.addEventListener("click",function(e){t.classList.toggle("is-active"),e.stopPropagation()}),document.documentElement.addEventListener("click",function(){t.classList.remove("is-active")}))}();
|
||||
!function(){"use strict";var t=document.querySelector(".navbar-burger");t&&t.addEventListener("click",function(t){t.stopPropagation(),document.documentElement.classList.toggle("is-clipped--navbar"),this.classList.toggle("is-active");var e=document.getElementById(this.dataset.target);e.classList.toggle("is-active")&&(e.style.maxHeight="",t=window.innerHeight-Math.round(e.getBoundingClientRect().top),parseInt(window.getComputedStyle(e).maxHeight,10)!==t&&(e.style.maxHeight=t+"px"))}.bind(t))}();
|
||||
!function(){"use strict";var s=/^\$ (\S[^\\\n]*(\\\n(?!\$ )[^\\\n]*)*)(?=\n|$)/gm,l=/( ) *\\\n *|\\\n( ?) */g,d=/ +$/gm,r=(document.getElementById("site-script")||{dataset:{}}).dataset;[].slice.call(document.querySelectorAll(".doc pre.highlight, .doc .literalblock pre")).forEach(function(e){var t,n,c,i,a;if(e.classList.contains("highlight"))(c=(t=e.querySelector("code")).dataset.lang)&&"console"!==c&&((i=document.createElement("span")).className="source-lang",i.appendChild(document.createTextNode(c)));else{if(!e.innerText.startsWith("$ "))return;var o=e.parentNode.parentNode;o.classList.remove("literalblock"),o.classList.add("listingblock"),e.classList.add("highlightjs","highlight"),(t=document.createElement("code")).className="language-console hljs",t.dataset.lang="console",t.appendChild(e.firstChild),e.appendChild(t)}(c=document.createElement("div")).className="source-toolbox",i&&c.appendChild(i),window.navigator.clipboard&&((n=document.createElement("button")).className="copy-button",n.setAttribute("title","Copy to clipboard"),"svg"===r.svgAs?((o=document.createElementNS("http://www.w3.org/2000/svg","svg")).setAttribute("class","copy-icon"),(i=document.createElementNS("http://www.w3.org/2000/svg","use")).setAttribute("href",window.uiRootPath+"/img/octicons-16.svg#icon-clippy"),o.appendChild(i),n.appendChild(o)):((a=document.createElement("img")).src=window.uiRootPath+"/img/octicons-16.svg#view-clippy",a.alt="copy icon",a.className="copy-icon",n.appendChild(a)),(a=document.createElement("span")).className="copy-toast",a.appendChild(document.createTextNode("Copied!")),n.appendChild(a),c.appendChild(n)),e.appendChild(c),n&&n.addEventListener("click",function(e){var t=e.innerText.replace(d,"");"console"===e.dataset.lang&&t.startsWith("$ ")&&(t=function(e){var t,n=[];for(;t=s.exec(e);)n.push(t[1].replace(l,"$1$2"));return n.join(" && ")}(t));window.navigator.clipboard.writeText(t).then(function(){this.classList.add("clicked"),this.offsetHeight,this.classList.remove("clicked")}.bind(this),function(){})}.bind(n,t))})}();
|
||||
1
ui-bundle/js/vendor/highlight.js
vendored
Normal file
11
ui-bundle/layouts/404.hbs
Normal file
@@ -0,0 +1,11 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
{{> head defaultPageTitle='Page Not Found'}}
|
||||
</head>
|
||||
<body class="status-404">
|
||||
{{> header}}
|
||||
{{> body}}
|
||||
{{> footer}}
|
||||
</body>
|
||||
</html>
|
||||
11
ui-bundle/layouts/default.hbs
Normal file
@@ -0,0 +1,11 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
{{> head defaultPageTitle='Untitled'}}
|
||||
</head>
|
||||
<body class="article{{#with (or page.attributes.role page.role)}} {{{this}}}{{/with}}">
|
||||
{{> header}}
|
||||
{{> body}}
|
||||
{{> footer}}
|
||||
</body>
|
||||
</html>
|
||||
10
ui-bundle/partials/article-404.hbs
Normal file
@@ -0,0 +1,10 @@
|
||||
<article class="doc">
|
||||
<h1 class="page">{{{or page.title 'Page Not Found'}}}</h1>
|
||||
<div class="paragraph">
|
||||
<p>The page you’re looking for does not exist. It may have been moved. You can{{#with site.homeUrl}} return to the <a href="{{{this}}}">start page</a>, or{{/with}} follow one of the links in the navigation to the left.</p>
|
||||
</div>
|
||||
<div class="paragraph">
|
||||
<p>If you arrived on this page by clicking on a link, please notify the owner of the site that the link is broken.
|
||||
If you typed the URL of this page manually, please double check that you entered the address correctly.</p>
|
||||
</div>
|
||||
</article>
|
||||
7
ui-bundle/partials/article.hbs
Normal file
@@ -0,0 +1,7 @@
|
||||
<article class="doc">
|
||||
{{#with page.title}}
|
||||
<h1 class="page">{{{this}}}</h1>
|
||||
{{/with}}
|
||||
{{{page.contents}}}
|
||||
{{> pagination}}
|
||||
</article>
|
||||
4
ui-bundle/partials/body.hbs
Normal file
@@ -0,0 +1,4 @@
|
||||
<div class="body">
|
||||
{{> nav}}
|
||||
{{> main}}
|
||||
</div>
|
||||
20
ui-bundle/partials/breadcrumbs.hbs
Normal file
@@ -0,0 +1,20 @@
|
||||
<nav class="breadcrumbs" aria-label="breadcrumbs">
|
||||
{{#if page.breadcrumbs}}
|
||||
<ul>
|
||||
{{#with page.componentVersion}}
|
||||
{{#if (and ./title (ne ./title @root.page.breadcrumbs.0.content))}}
|
||||
<li><a href="{{{relativize ./url}}}">{{{./title}}}</a></li>
|
||||
{{/if}}
|
||||
{{/with}}
|
||||
{{#each page.breadcrumbs}}
|
||||
<li>
|
||||
{{~#if (and ./url (eq ./urlType 'internal'))~}}
|
||||
<a href="{{{relativize ./url}}}">{{{./content}}}</a>
|
||||
{{~else~}}
|
||||
{{{./content}}}
|
||||
{{~/if~}}
|
||||
</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
{{/if}}
|
||||
</nav>
|
||||
4
ui-bundle/partials/footer-content.hbs
Normal file
@@ -0,0 +1,4 @@
|
||||
<footer class="footer">
|
||||
<p>Copyright (C) 2021 Andres Almiray. This page was built using an adapted version of the Antora default UI.</p>
|
||||
<p>The source code for this UI is licensed under the <a href="https://www.mozilla.org/en-US/MPL/2.0/">Mozilla Public License Version 2.0</a> (MPL-2.0).</p>
|
||||
</footer>
|
||||
2
ui-bundle/partials/footer-scripts.hbs
Normal file
@@ -0,0 +1,2 @@
|
||||
<script src="{{{uiRootPath}}}/js/site.js"></script>
|
||||
<script async src="{{{uiRootPath}}}/js/vendor/highlight.js"></script>
|
||||
2
ui-bundle/partials/footer.hbs
Normal file
@@ -0,0 +1,2 @@
|
||||
{{> footer-content}}
|
||||
{{> footer-scripts}}
|
||||
1
ui-bundle/partials/head-icons.hbs
Normal file
@@ -0,0 +1 @@
|
||||
{{!-- <link rel="icon" href="{{{uiRootPath}}}/img/favicon.ico" type="image/x-icon"> --}}
|
||||
20
ui-bundle/partials/head-info.hbs
Normal file
@@ -0,0 +1,20 @@
|
||||
{{#with page.canonicalUrl}}
|
||||
<link rel="canonical" href="{{{this}}}">
|
||||
{{/with}}
|
||||
{{#unless (eq page.attributes.pagination undefined)}}
|
||||
{{#with page.previous}}
|
||||
<link rel="prev" href="{{{relativize ./url}}}">
|
||||
{{/with}}
|
||||
{{#with page.next}}
|
||||
<link rel="next" href="{{{relativize ./url}}}">
|
||||
{{/with}}
|
||||
{{/unless}}
|
||||
{{#with page.description}}
|
||||
<meta name="description" content="{{this}}">
|
||||
{{/with}}
|
||||
{{#with page.keywords}}
|
||||
<meta name="keywords" content="{{this}}">
|
||||
{{/with}}
|
||||
{{#with (or antoraVersion site.antoraVersion)}}
|
||||
<meta name="generator" content="Antora {{this}}">
|
||||
{{/with}}
|
||||
1
ui-bundle/partials/head-meta.hbs
Normal file
@@ -0,0 +1 @@
|
||||
{{!-- Add additional meta tags here --}}
|
||||
2
ui-bundle/partials/head-prelude.hbs
Normal file
@@ -0,0 +1,2 @@
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
||||
5
ui-bundle/partials/head-scripts.hbs
Normal file
@@ -0,0 +1,5 @@
|
||||
{{#with site.keys.googleAnalytics}}
|
||||
<script async src="https://www.googletagmanager.com/gtag/js?id={{this}}"></script>
|
||||
<script>function gtag(){dataLayer.push(arguments)};window.dataLayer=window.dataLayer||[];gtag('js',new Date());gtag('config','{{this}}')</script>
|
||||
{{/with}}
|
||||
<script>var uiRootPath = '{{{uiRootPath}}}'</script>
|
||||
1
ui-bundle/partials/head-styles.hbs
Normal file
@@ -0,0 +1 @@
|
||||
<link rel="stylesheet" href="{{{uiRootPath}}}/css/site.css">
|
||||
1
ui-bundle/partials/head-title.hbs
Normal file
@@ -0,0 +1 @@
|
||||
<title>{{{detag (or page.title defaultPageTitle)}}}{{#with site.title}} :: {{this}}{{/with}}</title>
|
||||
7
ui-bundle/partials/head.hbs
Normal file
@@ -0,0 +1,7 @@
|
||||
{{> head-prelude}}
|
||||
{{> head-title}}
|
||||
{{> head-info}}
|
||||
{{> head-styles}}
|
||||
{{> head-meta}}
|
||||
{{> head-scripts}}
|
||||
{{> head-icons}}
|
||||
17
ui-bundle/partials/header-content.hbs
Normal file
@@ -0,0 +1,17 @@
|
||||
<header class="header">
|
||||
<nav class="navbar">
|
||||
<div class="navbar-brand">
|
||||
<a class="navbar-item" href="{{{or site.url (or siteRootUrl siteRootPath)}}}">{{site.title}}</a>
|
||||
<button class="navbar-burger" data-target="topbar-nav">
|
||||
<span></span>
|
||||
<span></span>
|
||||
<span></span>
|
||||
</button>
|
||||
</div>
|
||||
<div id="topbar-nav" class="navbar-menu">
|
||||
<div class="navbar-end">
|
||||
<a class="navbar-item" href="/guide">Guide</a>
|
||||
</div>
|
||||
</div>
|
||||
</nav>
|
||||
</header>
|
||||
1
ui-bundle/partials/header-scripts.hbs
Normal file
@@ -0,0 +1 @@
|
||||
{{!-- Add header scripts here --}}
|
||||
2
ui-bundle/partials/header.hbs
Normal file
@@ -0,0 +1,2 @@
|
||||
{{> header-scripts}}
|
||||
{{> header-content}}
|
||||
11
ui-bundle/partials/main.hbs
Normal file
@@ -0,0 +1,11 @@
|
||||
<main class="article">
|
||||
{{> toolbar}}
|
||||
<div class="content">
|
||||
{{#if (eq page.layout '404')}}
|
||||
{{> article-404}}
|
||||
{{else}}
|
||||
{{> toc}}
|
||||
{{> article}}
|
||||
{{/if}}
|
||||
</div>
|
||||
</main>
|
||||
24
ui-bundle/partials/nav-explore.hbs
Normal file
@@ -0,0 +1,24 @@
|
||||
<div class="nav-panel-explore{{#unless page.navigation}} is-active{{/unless}}" data-panel="explore">
|
||||
{{#if page.component}}
|
||||
<div class="context">
|
||||
<span class="title">{{page.component.title}}</span>
|
||||
<span class="version">{{page.componentVersion.displayVersion}}</span>
|
||||
</div>
|
||||
{{/if}}
|
||||
<ul class="components">
|
||||
{{#each site.components}}
|
||||
<li class="component{{#if (eq this @root.page.component)}} is-current{{/if}}">
|
||||
<a class="title" href="{{{relativize ./url}}}">{{{./title}}}</a>
|
||||
<ul class="versions">
|
||||
{{#each ./versions}}
|
||||
<li class="version
|
||||
{{~#if (and (eq .. @root.page.component) (eq this @root.page.componentVersion))}} is-current{{/if~}}
|
||||
{{~#if (eq this ../latest)}} is-latest{{/if}}">
|
||||
<a href="{{{relativize ./url}}}">{{./displayVersion}}</a>
|
||||
</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
</div>
|
||||
10
ui-bundle/partials/nav-menu.hbs
Normal file
@@ -0,0 +1,10 @@
|
||||
{{#with page.navigation}}
|
||||
<div class="nav-panel-menu is-active" data-panel="menu">
|
||||
<nav class="nav-menu">
|
||||
{{#with @root.page.componentVersion}}
|
||||
<h3 class="title"><a href="{{{relativize ./url}}}">{{./title}}</a></h3>
|
||||
{{/with}}
|
||||
{{> nav-tree navigation=this}}
|
||||
</nav>
|
||||
</div>
|
||||
{{/with}}
|
||||
1
ui-bundle/partials/nav-toggle.hbs
Normal file
@@ -0,0 +1 @@
|
||||
<button class="nav-toggle"></button>
|
||||
21
ui-bundle/partials/nav-tree.hbs
Normal file
@@ -0,0 +1,21 @@
|
||||
{{#if navigation.length}}
|
||||
<ul class="nav-list">
|
||||
{{#each navigation}}
|
||||
<li class="nav-item{{#if (eq ./url @root.page.url)}} is-current-page{{/if}}" data-depth="{{or ../level 0}}">
|
||||
{{#if ./content}}
|
||||
{{#if ./items.length}}
|
||||
<button class="nav-item-toggle"></button>
|
||||
{{/if}}
|
||||
{{#if ./url}}
|
||||
<a class="nav-link" href="
|
||||
{{~#if (eq ./urlType 'internal')}}{{{relativize ./url}}}
|
||||
{{~else}}{{{./url}}}{{~/if}}">{{{./content}}}</a>
|
||||
{{else}}
|
||||
<span class="nav-text">{{{./content}}}</span>
|
||||
{{/if}}
|
||||
{{/if}}
|
||||
{{> nav-tree navigation=./items level=(increment ../level)}}
|
||||
</li>
|
||||
{{/each}}
|
||||
</ul>
|
||||
{{/if}}
|
||||
8
ui-bundle/partials/nav.hbs
Normal file
@@ -0,0 +1,8 @@
|
||||
<div class="nav-container"{{#if page.component}} data-component="{{page.component.name}}" data-version="{{page.version}}"{{/if}}>
|
||||
<aside class="nav">
|
||||
<div class="panels">
|
||||
{{> nav-menu}}
|
||||
{{> nav-explore}}
|
||||
</div>
|
||||
</aside>
|
||||
</div>
|
||||
12
ui-bundle/partials/page-versions.hbs
Normal file
@@ -0,0 +1,12 @@
|
||||
{{#with page.versions}}
|
||||
<div class="page-versions">
|
||||
<button class="version-menu-toggle" title="Show other versions of page">{{@root.page.componentVersion.displayVersion}}</button>
|
||||
<div class="version-menu">
|
||||
{{#each this}}
|
||||
<a class="version
|
||||
{{~#if (eq ./version @root.page.version)}} is-current{{/if~}}
|
||||
{{~#if ./missing}} is-missing{{/if}}" href="{{{relativize ./url}}}">{{./displayVersion}}</a>
|
||||
{{/each}}
|
||||
</div>
|
||||
</div>
|
||||
{{/with}}
|
||||
12
ui-bundle/partials/pagination.hbs
Normal file
@@ -0,0 +1,12 @@
|
||||
{{#unless (eq page.attributes.pagination undefined)}}
|
||||
{{#if (or page.previous page.next)}}
|
||||
<nav class="pagination">
|
||||
{{#with page.previous}}
|
||||
<span class="prev"><a href="{{{relativize ./url}}}">{{{./content}}}</a></span>
|
||||
{{/with}}
|
||||
{{#with page.next}}
|
||||
<span class="next"><a href="{{{relativize ./url}}}">{{{./content}}}</a></span>
|
||||
{{/with}}
|
||||
</nav>
|
||||
{{/if}}
|
||||
{{/unless}}
|
||||
3
ui-bundle/partials/toc.hbs
Normal file
@@ -0,0 +1,3 @@
|
||||
<aside class="toc sidebar" data-title="{{or page.attributes.toctitle 'Contents'}}" data-levels="{{{or page.attributes.toclevels 2}}}">
|
||||
<div class="toc-menu"></div>
|
||||
</aside>
|
||||
13
ui-bundle/partials/toolbar.hbs
Normal file
@@ -0,0 +1,13 @@
|
||||
<div class="toolbar" role="navigation">
|
||||
{{> nav-toggle}}
|
||||
{{#with site.homeUrl}}
|
||||
<a href="{{{relativize this}}}" class="home-link{{#if @root.page.home}} is-current{{/if}}"></a>
|
||||
{{/with}}
|
||||
{{> breadcrumbs}}
|
||||
{{> page-versions}}
|
||||
{{#if (and page.fileUri (not env.CI))}}
|
||||
<div class="edit-this-page"><a href="{{page.fileUri}}">Edit this Page</a></div>
|
||||
{{else if (and page.editUrl (or env.FORCE_SHOW_EDIT_PAGE_LINK (not page.origin.private)))}}
|
||||
<div class="edit-this-page"><a href="{{page.editUrl}}">Edit this Page</a></div>
|
||||
{{/if}}
|
||||
</div>
|
||||