spec-up-t 1.1.33 → 1.1.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/compiled/body.js +4 -4
- package/assets/compiled/head.css +1 -1
- package/assets/css/modal.css +3 -3
- package/assets/js/add-href-to-snapshot-link.js +1 -1
- package/assets/js/help-buttons.js +1 -1
- package/assets/js/modal.js +3 -3
- package/assets/js/show-commit-hashes.js +5 -5
- package/package.json +1 -1
- package/readme.md +1 -1
- package/src/collect-external-references.js +1 -1
- package/src/collectExternalReferences/checkRateLimit.js +2 -2
- package/src/install-from-boilerplate/boilerplate/README.md +1 -1
- package/src/install-from-boilerplate/boilerplate/spec/spec-head.md +1 -1
- package/src/install-from-boilerplate/help.txt +1 -1
- package/src/install-from-boilerplate/menu.sh +5 -5
- package/templates/template.html +1 -1
package/assets/compiled/body.js
CHANGED
|
@@ -125,14 +125,14 @@ function backToTop(){const n=document.createElement("a");n.id="back-to-top-a1znc
|
|
|
125
125
|
* @license MIT
|
|
126
126
|
* @since 2024-06-09
|
|
127
127
|
*/
|
|
128
|
-
var md=window.markdownit();function fetchCommitHashes(){async function e(e,
|
|
128
|
+
var md=window.markdownit();function fetchCommitHashes(){async function e(e,r){const i=document.createElement("div");i.classList.add("fetched-xref-term"),i.classList.add("transcluded-xref-term"),i.innerHTML="<p class='loadertext'>Loading external reference</p><div class='loader'></div>",r.parentNode.insertBefore(i,r.nextSibling);const s=async function(e,t){const r={};e&&e.length>0&&(r.Authorization="token "+e);try{const e=await fetch("https://api.github.com/repos/"+t.owner+"/"+t.repo+"/contents/"+t.terms_dir+"/"+t.term.replace(/ /g,"-").toLowerCase()+".md",{headers:r});if(403===e.status&&"0"===e.headers.get("X-RateLimit-Remaining")){const t=new Date(1e3*e.headers.get("X-RateLimit-Reset"));return console.error(`❌ Github API rate limit exceeded. Try again after ${t}. See https://blockchainbird.github.io/spec-up-t-website/docs/getting-started/github-token for more info.`),o(),!0}console.log(`ℹ️ Github API rate limit: ${e.headers.get("X-RateLimit-Remaining")} requests remaining. See https://blockchainbird.github.io/spec-up-t-website/docs/getting-started/github-token for more info.`);const s=await e.json(),a=atob(s.content);return i=(i=a).replace(/\[\[def: ([^\]]+)\]\]/g,""),n.render(i)}catch(e){console.error("Error fetching content:",e)}var i}(t,e),a=new Promise(e=>setTimeout(e,2e3)),[c]=await Promise.all([s,a]),d=Date.now(),l=new Date(d).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric",hour:"2-digit",minute:"2-digit",second:"2-digit"});i.innerHTML="<p class='transclusion-heading'>Current definition</p><small>"+l+"</small>"+c}if("undefined"==typeof allXTrefs||null===allXTrefs)return void console.log("allXTrefs is not defined or does not exist. We will continue without it.");const t=localStorage.getItem("githubToken"),n=window.markdownit().use(window.markdownitDeflist);const o=function(e,t){let n;return function(...o){clearTimeout(n),n=setTimeout(()=>e.apply(this,o),t)}}(()=>{notyf.error('GitHub API rate limit exceeded. See <a target="_blank" rel="noopener" href="https://blockchainbird.github.io/spec-up-t-website/docs/getting-started/github-token">documentation</a> for more info.')},3e3);document.querySelectorAll(".x-term-reference").forEach(r=>{const i=r.getAttribute("data-local-href").split(":");allXTrefs.xtrefs.forEach(s=>{if(s.externalSpec===i[1]&&s.term.toLowerCase()===i[2].toLowerCase()){if(!s.commitHash){const e=document.createElement("span");return e.classList.add("no-xref-found-message"),e.innerHTML="No xref found.",void r.parentNode.insertBefore(e,r.nextSibling)}s.commitHash&&s.commitHash&&s.commitHash.substring(0,7);const i=document.createElement("a");i.href="https://github.com/"+s.owner+"/"+s.repo+"/compare/"+s.commitHash+"../main",i.target="_blank",i.rel="noopener noreferrer",i.classList.add("diff","xref-info-links","btn"),i.innerHTML='<svg icon><use xlink:href="#svg-github"></use></svg> Xref < > <svg icon><use xlink:href="#svg-github"></use></svg> Now',i.title="A Diff between the current commit hash of the definition and the commit hash referenced when the link was created.",r.parentNode.insertBefore(i,r.nextSibling);const a=document.createElement("a");a.href="https://github.com/"+s.owner+"/"+s.repo+"/blob/main/"+s.terms_dir+"/"+s.term.replace(/ /g,"-").toLowerCase()+".md",a.target="_blank",a.rel="noopener noreferrer",a.classList.add("latest-version","xref-info-links","btn"),a.innerHTML='<svg icon><use xlink:href="#svg-github"></use></svg> Now',a.title="Go to the repo page of the definition‘s latest version.",i.parentNode.insertBefore(a,r.nextSibling);const c=document.createElement("a");c.href="https://github.com/"+s.owner+"/"+s.repo+"/blob/"+s.commitHash+"/"+s.terms_dir+"/"+s.term.replace(/ /g,"-").toLowerCase()+".md",c.target="_blank",c.rel="noopener noreferrer",c.classList.add("exact-commit-hash","xref-info-links","btn"),c.innerHTML='<svg icon><use xlink:href="#svg-github"></use></svg> Xref',c.title="Go to the repo page of the definition‘s version referenced when the link was created.",a.parentNode.insertBefore(c,r.nextSibling);const d=document.createElement("button");d.classList.add("show-diff-modal","xref-info-links","btn"),d.innerHTML='Xref < > <svg icon><use xlink:href="#svg-github"></use></svg> Now',d.title="Show diff between the latest version and the referenced version",a.parentNode.insertBefore(d,r.nextSibling),d.addEventListener("click",(function(e){e.preventDefault(),function(e,t){const n={};e&&e.length>0&&(n.Authorization="token "+e),fetch("https://api.github.com/repos/"+t.owner+"/"+t.repo+"/contents/"+t.terms_dir+"/"+t.term.replace(/ /g,"-").toLowerCase()+".md",{headers:n}).then(e=>{if(403===e.status&&"0"===e.headers.get("X-RateLimit-Remaining")){const t=new Date(1e3*e.headers.get("X-RateLimit-Reset"));return console.error(`❌ Github API rate limit exceeded. Try again after ${t}. See https://blockchainbird.github.io/spec-up-t-website/docs/getting-started/github-token for more info.`),o(),!0}return console.log(`ℹ️ Github API rate limit: ${e.headers.get("X-RateLimit-Remaining")} requests remaining. See https://blockchainbird.github.io/spec-up-t-website/docs/getting-started/github-token for more info.`),e.json()}).then(e=>{const n=atob(e.content),o=Diff.diffChars(t.content,n),r=document.createDocumentFragment();o.forEach(e=>{const t=e.added?"green":e.removed?"red":"grey",n=e.added||e.removed?"#ddd":"white";span=document.createElement("span"),span.style.color=t,span.style.backgroundColor=n,span.appendChild(document.createTextNode(e.value)),r.appendChild(span)});const i=document.createElement("div");i.innerHTML="<h1>Diff xref (local snapshot) and latest version</h1>",i.appendChild(r),i.innerHTML=i.innerHTML.replace(/\n/g,"<br>"),showModal(i.innerHTML)}).catch(e=>{console.error("Error fetching content:",e)})}(t,s)}));const l=document.createElement("button");l.classList.add("show-diff-modal","xref-info-links","btn"),l.innerHTML="Xref",l.title="Show the stored version of the term-file",d.parentNode.insertBefore(l,r.nextSibling);const h=/\[\[def: ([^\]]+)\]\]/g;s.content=s.content.replace(h,"");const m=n.render(s.content);l.addEventListener("click",(function(e){e.preventDefault(),showModal(`\n <h1>Term definition (local snapshot)</h1>\n <table>\n <tr>\n <th>Commit hash</th>\n <td>${s.commitHash}</td>\n </tr>\n <tr>\n <th>Content</th>\n <td>${m}</td>\n </tr>\n </table>\n `)}));const f=document.createElement("div");f.classList.add("local-snapshot-xref-term"),f.classList.add("transcluded-xref-term"),f.innerHTML=`<p class='transclusion-heading'>Snapshot</p><p>Commit Hash: ${s.commitHash}</p> ${m}`,r.parentNode.insertBefore(f,r.nextSibling),e(s,r)}})})}document.addEventListener("DOMContentLoaded",(function(){fetchCommitHashes()}));
|
|
129
129
|
function addAnchorsToTerms(){document.querySelectorAll('dt:has(> span[id^="term:"])').forEach(e=>{const t=function(e){let t=e;for(;t.querySelector('span[id^="term:"]');)t=t.querySelector('span[id^="term:"]');return t}(e),r=t.getAttribute("id"),n=document.createElement("a");n.setAttribute("href","#"+r),n.setAttribute("class","toc-anchor"),n.innerHTML="# ",t.parentNode.insertBefore(n,t)})}document.addEventListener("DOMContentLoaded",(function(){addAnchorsToTerms()}));
|
|
130
130
|
function copyAnchorToCliboard(){document.addEventListener("click",(function(o){if(o.target.classList.contains("toc-anchor")){const c=o.target.href;navigator.clipboard.writeText(c).then(()=>{console.log("Anchor copied to clipboard"),notyf.success("Anchor copied to clipboard: "+c)}).catch(o=>{console.error("Failed to copy anchor to clipboard",o)})}}))}document.addEventListener("DOMContentLoaded",(function(){copyAnchorToCliboard()}));
|
|
131
131
|
var Notyf=function(){"use strict";var t,i=function(){return(i=Object.assign||function(t){for(var i,e=1,n=arguments.length;e<n;e++)for(var o in i=arguments[e])Object.prototype.hasOwnProperty.call(i,o)&&(t[o]=i[o]);return t}).apply(this,arguments)},e=(n.prototype.on=function(t,i){var e=this.listeners[t]||[];this.listeners[t]=e.concat([i])},n.prototype.triggerEvent=function(t,i){var e=this;(this.listeners[t]||[]).forEach((function(t){return t({target:e,event:i})}))},n);function n(t){this.options=t,this.listeners={}}(s=t=t||{})[s.Add=0]="Add",s[s.Remove=1]="Remove";var o,s,a=(r.prototype.push=function(i){this.notifications.push(i),this.updateFn(i,t.Add,this.notifications)},r.prototype.splice=function(i,e){return e=this.notifications.splice(i,e)[0],this.updateFn(e,t.Remove,this.notifications),e},r.prototype.indexOf=function(t){return this.notifications.indexOf(t)},r.prototype.onUpdate=function(t){this.updateFn=t},r);function r(){this.notifications=[]}(s=o=o||{}).Dismiss="dismiss";var c={types:[{type:"success",className:"notyf__toast--success",backgroundColor:"#3dc763",icon:{className:"notyf__icon--success",tagName:"i"}},{type:"error",className:"notyf__toast--error",backgroundColor:"#ed3d3d",icon:{className:"notyf__icon--error",tagName:"i"}}],duration:2e3,ripple:!0,position:{x:"right",y:"bottom"},dismissible:!(s.Click="click")},p=(d.prototype.on=function(t,e){var n;this.events=i(i({},this.events),((n={})[t]=e,n))},d.prototype.update=function(i,e){e===t.Add?this.addNotification(i):e===t.Remove&&this.removeNotification(i)},d.prototype.removeNotification=function(t){var i,e,n=this;(t=this._popRenderedNotification(t))&&((e=t.node).classList.add("notyf__toast--disappear"),e.addEventListener(this.animationEndEventName,i=function(t){t.target===e&&(e.removeEventListener(n.animationEndEventName,i),n.container.removeChild(e))}))},d.prototype.addNotification=function(t){var i=this._renderNotification(t);this.notifications.push({notification:t,node:i}),this._announce(t.options.message||"Notification")},d.prototype._renderNotification=function(t){var i=this._buildNotificationCard(t),e=t.options.className;return e&&(t=i.classList).add.apply(t,e.split(" ")),this.container.appendChild(i),i},d.prototype._popRenderedNotification=function(t){for(var i=-1,e=0;e<this.notifications.length&&i<0;e++)this.notifications[e].notification===t&&(i=e);if(-1!==i)return this.notifications.splice(i,1)[0]},d.prototype.getXPosition=function(t){return(null===(t=null==t?void 0:t.position)||void 0===t?void 0:t.x)||"right"},d.prototype.getYPosition=function(t){return(null===(t=null==t?void 0:t.position)||void 0===t?void 0:t.y)||"bottom"},d.prototype.adjustContainerAlignment=function(t){var i=this.X_POSITION_FLEX_MAP[this.getXPosition(t)],e=this.Y_POSITION_FLEX_MAP[this.getYPosition(t)];(t=this.container.style).setProperty("justify-content",e),t.setProperty("align-items",i)},d.prototype._buildNotificationCard=function(t){var i=this,e=t.options,n=e.icon;this.adjustContainerAlignment(e);var s=this._createHTMLElement({tagName:"div",className:"notyf__toast"}),a=this._createHTMLElement({tagName:"div",className:"notyf__ripple"}),r=this._createHTMLElement({tagName:"div",className:"notyf__wrapper"}),c=this._createHTMLElement({tagName:"div",className:"notyf__message"});c.innerHTML=e.message||"";var p,d,l,u,f=e.background||e.backgroundColor;return n&&(p=this._createHTMLElement({tagName:"div",className:"notyf__icon"}),("string"==typeof n||n instanceof String)&&(p.innerHTML=new String(n).valueOf()),"object"==typeof n&&(d=n.tagName,l=n.className,u=n.text,n=void 0===(n=n.color)?f:n,u=this._createHTMLElement({tagName:void 0===d?"i":d,className:l,text:u}),n&&(u.style.color=n),p.appendChild(u)),r.appendChild(p)),r.appendChild(c),s.appendChild(r),f&&(e.ripple?(a.style.background=f,s.appendChild(a)):s.style.background=f),e.dismissible&&(a=this._createHTMLElement({tagName:"div",className:"notyf__dismiss"}),f=this._createHTMLElement({tagName:"button",className:"notyf__dismiss-btn"}),a.appendChild(f),r.appendChild(a),s.classList.add("notyf__toast--dismissible"),f.addEventListener("click",(function(e){var n,s;null!==(s=(n=i.events)[o.Dismiss])&&void 0!==s&&s.call(n,{target:t,event:e}),e.stopPropagation()}))),s.addEventListener("click",(function(e){var n,s;return null===(s=(n=i.events)[o.Click])||void 0===s?void 0:s.call(n,{target:t,event:e})})),e="top"===this.getYPosition(e)?"upper":"lower",s.classList.add("notyf__toast--"+e),s},d.prototype._createHTMLElement=function(t){var i=t.tagName,e=t.className;t=t.text,i=document.createElement(i);return e&&(i.className=e),i.textContent=t||null,i},d.prototype._createA11yContainer=function(){var t=this._createHTMLElement({tagName:"div",className:"notyf-announcer"});t.setAttribute("aria-atomic","true"),t.setAttribute("aria-live","polite"),t.style.border="0",t.style.clip="rect(0 0 0 0)",t.style.height="1px",t.style.margin="-1px",t.style.overflow="hidden",t.style.padding="0",t.style.position="absolute",t.style.width="1px",t.style.outline="0",document.body.appendChild(t),this.a11yContainer=t},d.prototype._announce=function(t){var i=this;this.a11yContainer.textContent="",setTimeout((function(){i.a11yContainer.textContent=t}),100)},d.prototype._getAnimationEndEventName=function(){var t,i=document.createElement("_fake"),e={MozTransition:"animationend",OTransition:"oAnimationEnd",WebkitTransition:"webkitAnimationEnd",transition:"animationend"};for(t in e)if(void 0!==i.style[t])return e[t];return"animationend"},d);function d(){this.notifications=[],this.events={},this.X_POSITION_FLEX_MAP={left:"flex-start",center:"center",right:"flex-end"},this.Y_POSITION_FLEX_MAP={top:"flex-start",center:"center",bottom:"flex-end"};var t=document.createDocumentFragment(),i=this._createHTMLElement({tagName:"div",className:"notyf"});t.appendChild(i),document.body.appendChild(t),this.container=i,this.animationEndEventName=this._getAnimationEndEventName(),this._createA11yContainer()}function l(t){var e=this;this.dismiss=this._removeNotification,this.notifications=new a,this.view=new p;var n=this.registerTypes(t);this.options=i(i({},c),t),this.options.types=n,this.notifications.onUpdate((function(t,i){return e.view.update(t,i)})),this.view.on(o.Dismiss,(function(t){var i=t.target;t=t.event;e._removeNotification(i),i.triggerEvent(o.Dismiss,t)})),this.view.on(o.Click,(function(t){var i=t.target;t=t.event;return i.triggerEvent(o.Click,t)}))}return l.prototype.error=function(t){return t=this.normalizeOptions("error",t),this.open(t)},l.prototype.success=function(t){return t=this.normalizeOptions("success",t),this.open(t)},l.prototype.open=function(t){var n=this.options.types.find((function(i){return i.type===t.type}))||{};n=i(i({},n),t);return this.assignProps(["ripple","position","dismissible"],n),n=new e(n),this._pushNotification(n),n},l.prototype.dismissAll=function(){for(;this.notifications.splice(0,1););},l.prototype.assignProps=function(t,i){var e=this;t.forEach((function(t){i[t]=(null==i[t]?e.options:i)[t]}))},l.prototype._pushNotification=function(t){var i=this;this.notifications.push(t);var e=(void 0!==t.options.duration?t:this).options.duration;e&&setTimeout((function(){return i._removeNotification(t)}),e)},l.prototype._removeNotification=function(t){-1!==(t=this.notifications.indexOf(t))&&this.notifications.splice(t,1)},l.prototype.normalizeOptions=function(t,e){return t={type:t},"string"==typeof e?t.message=e:"object"==typeof e&&(t=i(i({},t),e)),t},l.prototype.registerTypes=function(t){var e=(t&&t.types||[]).slice();return c.types.map((function(t){var n=-1;e.forEach((function(i,e){i.type===t.type&&(n=e)}));var o=-1!==n?e.splice(n,1)[0]:{};return i(i({},t),o)})).concat(e)},l}(),notyf=new Notyf({types:[{type:"success",background:"#1D6DAE",duration:3e3},{type:"error",background:"orange",duration:1e7,dismissible:!0}]});
|
|
132
|
-
function showModal(e){const n=document.createElement("div");n.className="modal-overlay";const
|
|
132
|
+
function showModal(e){const n=document.createElement("div");n.className="spec-up-t-modal-overlay";const c=document.createElement("div");c.className="spec-up-t-modal";const t=document.createElement("button");function o(){document.body.removeChild(n)}t.className="spec-up-t-modal-close",t.innerHTML="×",t.onclick=o,c.innerHTML=e,c.appendChild(t),n.appendChild(c),document.body.appendChild(n),n.onclick=function(e){e.target===n&&o()},document.addEventListener("keydown",(function(e){"Escape"===e.key&&o()}),{once:!0})}
|
|
133
133
|
function tokenInput(){let t=document.createElement("button");t.classList.add("button-token-input"),t.classList.add("btn","btn-sm","btn-outline-secondary","me-1"),t.innerHTML="🔑",document.querySelector("#repo_issues").insertAdjacentElement("afterend",t),t.addEventListener("click",()=>{const t=prompt("Please enter your GitHub token:");t?(localStorage.setItem("githubToken",t),console.log("GitHub token is set.")):alert("GitHub token is not set.")})}document.addEventListener("DOMContentLoaded",(function(){tokenInput()}));
|
|
134
134
|
function pdfDownload(){fetch("index.pdf",{method:"HEAD"}).then(e=>{if(e.ok){let e=document.createElement("a");e.classList.add("button-pdf-download"),e.classList.add("btn"),e.target="_blank",e.rel="noopener noreferrer",e.href="index.pdf",e.title="Download this page as a PDF",e.innerHTML="PDF",document.querySelector("#container-search-h7vc6omi2hr2880").appendChild(e)}else console.log("PDF file does not exist. No PDF download button will be added.")}).catch(e=>{console.error("Error checking PDF file:",e)})}document.addEventListener("DOMContentLoaded",(function(){pdfDownload()}));
|
|
135
|
-
function helpButtons(){const t=document.createElement("a");t.textContent="?",t.classList.add("help-button","btn"),t.title="Click to see the explanation of the buttons at the documentation website, in a new tab.",t.target="_blank",t.rel="noopener noreferrer",t.href="https://
|
|
135
|
+
function helpButtons(){const t=document.createElement("a");t.textContent="?",t.classList.add("help-button","btn"),t.title="Click to see the explanation of the buttons at the documentation website, in a new tab.",t.target="_blank",t.rel="noopener noreferrer",t.href="https://blockchainbird.github.io/spec-up-t-website/docs/user-interface-overview/specification#explanation-of-the-buttons-in-the-specification",function(t){document.querySelectorAll("#content dl dt").forEach(e=>{e.appendChild(t.cloneNode(!0))})}(t)}document.addEventListener("DOMContentLoaded",helpButtons);
|
|
136
136
|
function collapseDefinitions(){const t=document.querySelectorAll("#content dl.terms-and-definitions-list > dd"),e=document.querySelectorAll("#content dl.terms-and-definitions-list > dt"),n=document.querySelectorAll(".collapse-all-defs-button");e.forEach(t=>{const e=document.createElement("button");e.classList.add("collapse-all-defs-button","btn"),e.innerHTML="▲",e.setAttribute("id","toggleButton"),t.appendChild(e)}),document.addEventListener("click",e=>{e.target.classList.contains("collapse-all-defs-button")&&(!function(){const e=t[0].classList.contains("hidden");t.forEach(t=>{t.classList.toggle("hidden",!e),t.classList.toggle("visible",e)}),n.forEach(t=>{t.innerHTML=e?"▲":"▼",t.title=e?"Collapse all definitions":"Expand all definitions"})}(),e.target.scrollIntoView({behavior:"smooth",block:"start",inline:"nearest"}),setTimeout(()=>{window.scrollBy({top:-100,behavior:"smooth"})},500))})}document.addEventListener("DOMContentLoaded",(function(){collapseDefinitions()}));
|
|
137
137
|
function createToggleButton(t){const e=document.createElement("button");e.classList.add("meta-info-toggle-button","btn"),e.textContent="ℹ️",e.title="Meta info",e.addEventListener("click",(function(){t.classList.toggle("collapsed"),t.classList.contains("collapsed"),this.textContent="ℹ️"}));let n=t.previousElementSibling;for(;n&&"DT"!==n.tagName;)n=n.previousElementSibling;n?n.appendChild(e):t.insertBefore(e,t.firstChild)}document.addEventListener("DOMContentLoaded",(function(){document.querySelectorAll("dl > dd:has(table)").forEach((function(t){const e=document.createElement("div");for(e.classList.add("meta-info-content-wrapper");t.firstChild&&t.firstChild!==t.querySelector(".meta-info-toggle-button");)e.appendChild(t.firstChild);t.querySelector(".meta-info-toggle-button")||createToggleButton(t),t.appendChild(e),t.classList.add("collapsed")}))}));
|
|
138
138
|
/**
|
|
@@ -142,7 +142,7 @@ function createToggleButton(t){const e=document.createElement("button");e.classL
|
|
|
142
142
|
* @license MIT
|
|
143
143
|
* @since 2024-09-25
|
|
144
144
|
*/
|
|
145
|
-
function addHrefToSnapshotLink(){const e=document.querySelector("
|
|
145
|
+
function addHrefToSnapshotLink(){const e=document.querySelector("#snapshotLink"),t=window.location.href,n=t.match(/^(https?:\/\/[^\/]+(?:\/[^\/]+)*)\/versions\/(?:[^\/]+\/)?/);let o;if(n)o=n[1]+"/versions/";else{o=t.split("#")[0].replace(/\/index\.html$/,"").replace(/\/$/,"")+"/versions/"}e&&e.setAttribute("href",o)}document.addEventListener("DOMContentLoaded",(function(){addHrefToSnapshotLink()}));
|
|
146
146
|
function adjustFontSize(){const e=document.body,t=parseFloat(window.getComputedStyle(e).fontSize);function n(t){let n=parseFloat(window.getComputedStyle(e).fontSize)+t;n>=10&&n<=50&&(e.style.fontSize=n+"px")}document.getElementById("decreaseBtn").addEventListener("click",()=>n(-2)),document.getElementById("increaseBtn").addEventListener("click",()=>n(2)),document.getElementById("resetBtn").addEventListener("click",(function(){document.body.style.fontSize=t+"px"}))}document.addEventListener("DOMContentLoaded",(function(){adjustFontSize()}));
|
|
147
147
|
function closeOffCanvasMenu(){document.querySelectorAll("#sidebarMenu a").forEach(e=>{e.addEventListener("click",(function(){const e=document.querySelector("#sidebarMenu");bootstrap.Offcanvas.getOrCreateInstance(e).hide()}))})}document.addEventListener("DOMContentLoaded",(function(){closeOffCanvasMenu()}));
|
|
148
148
|
!function(){var e=window.markdownit();let t=specConfig.source;t&&"github"===t.host&&fetch(`https://api.github.com/repos/${t.account+"/"+t.repo}/issues`).then(e=>e.json()).then(t=>{let n=t.length;document.querySelectorAll("[issue-count]").forEach(e=>{e.setAttribute("issue-count",n)}),repo_issue_list.innerHTML=t.map(t=>`<li class="repo-issue">\n <detail-box>\n <section>${e.render(t.body||"")}</section>\n <header class="repo-issue-title">\n <span class="repo-issue-number">${t.number}</span>\n <span class="repo-issue-link">\n <a href="${t.html_url}" target="_blank">${t.title}</a>\n </span>\n <span detail-box-toggle></span>\n </header>\n </detail-box>\n </li>`).join(""),Prism.highlightAllUnder(repo_issue_list)}),mermaid.initialize({startOnLoad:!0,theme:"neutral"}),document.querySelectorAll(".chartjs").forEach(e=>{new Chart(e,JSON.parse(e.textContent))});let n=new WeakMap;delegateEvent("pointerover",".term-reference, .spec-reference",(e,t)=>{const r=t.getAttribute("data-local-href")||t.getAttribute("href")||"";let s=document.getElementById(r.replace("#",""));if(!s||n.has(t))return;let i=s.closest("dt, td:first-child");if(!i)return;let l={allowHTML:!0,inlinePositioning:!0};switch(i.tagName){case"DT":l.content=i.nextElementSibling.textContent;break;case"TD":let e=i.closest("table"),t=Array.from(i.closest("tr").children);if(t.shift(),e){let n=Array.from(e.querySelectorAll("thead th"));n.shift(),n.length&&(l.content=`\n <header>${i.textContent}</header>\n <table>\n ${n.map((e,n)=>`<tr><td>${e.textContent}:</td><td>${t[n]?t[n].textContent:""}</td></tr>`).join("")}\n </table>`)}}l.content&&n.set(t,tippy(t,l))},{passive:!0})}();
|
package/assets/compiled/head.css
CHANGED
|
@@ -9,7 +9,7 @@ code[class*=language-],pre[class*=language-]{color:#ccc;background:0 0;font-fami
|
|
|
9
9
|
@-webkit-keyframes notyf-fadeinup{0%{opacity:0;transform:translateY(25%)}to{opacity:1;transform:translateY(0)}}@keyframes notyf-fadeinup{0%{opacity:0;transform:translateY(25%)}to{opacity:1;transform:translateY(0)}}@-webkit-keyframes notyf-fadeinleft{0%{opacity:0;transform:translateX(25%)}to{opacity:1;transform:translateX(0)}}@keyframes notyf-fadeinleft{0%{opacity:0;transform:translateX(25%)}to{opacity:1;transform:translateX(0)}}@-webkit-keyframes notyf-fadeoutright{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(25%)}}@keyframes notyf-fadeoutright{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(25%)}}@-webkit-keyframes notyf-fadeoutdown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(25%)}}@keyframes notyf-fadeoutdown{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(25%)}}@-webkit-keyframes ripple{0%{transform:scale(0) translateY(-45%) translateX(13%)}to{transform:scale(1) translateY(-45%) translateX(13%)}}@keyframes ripple{0%{transform:scale(0) translateY(-45%) translateX(13%)}to{transform:scale(1) translateY(-45%) translateX(13%)}}.notyf{position:fixed;top:0;left:0;height:100%;width:100%;color:#fff;z-index:9999;display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-end;pointer-events:none;box-sizing:border-box;padding:20px}.notyf__icon--error,.notyf__icon--success{height:21px;width:21px;background:#fff;border-radius:50%;display:block;margin:0 auto;position:relative}.notyf__icon--error:after,.notyf__icon--error:before{content:"";background:currentColor;display:block;position:absolute;width:3px;border-radius:3px;left:9px;height:12px;top:5px}.notyf__icon--error:after{transform:rotate(-45deg)}.notyf__icon--error:before{transform:rotate(45deg)}.notyf__icon--success:after,.notyf__icon--success:before{content:"";background:currentColor;display:block;position:absolute;width:3px;border-radius:3px}.notyf__icon--success:after{height:6px;transform:rotate(-45deg);top:9px;left:6px}.notyf__icon--success:before{height:11px;transform:rotate(45deg);top:5px;left:10px}.notyf__toast{display:block;overflow:hidden;pointer-events:auto;-webkit-animation:notyf-fadeinup .3s ease-in forwards;animation:notyf-fadeinup .3s ease-in forwards;box-shadow:0 3px 7px 0 rgba(0,0,0,.25);position:relative;padding:0 15px;border-radius:2px;max-width:300px;transform:translateY(25%);box-sizing:border-box;flex-shrink:0}.notyf__toast--disappear{transform:translateY(0);-webkit-animation:notyf-fadeoutdown .3s forwards;animation:notyf-fadeoutdown .3s forwards;-webkit-animation-delay:.25s;animation-delay:.25s}.notyf__toast--disappear .notyf__icon,.notyf__toast--disappear .notyf__message{-webkit-animation:notyf-fadeoutdown .3s forwards;animation:notyf-fadeoutdown .3s forwards;opacity:1;transform:translateY(0)}.notyf__toast--disappear .notyf__dismiss{-webkit-animation:notyf-fadeoutright .3s forwards;animation:notyf-fadeoutright .3s forwards;opacity:1;transform:translateX(0)}.notyf__toast--disappear .notyf__message{-webkit-animation-delay:.05s;animation-delay:.05s}.notyf__toast--upper{margin-bottom:20px}.notyf__toast--lower{margin-top:20px}.notyf__toast--dismissible .notyf__wrapper{padding-right:30px}.notyf__ripple{height:400px;width:400px;position:absolute;transform-origin:bottom right;right:0;top:0;border-radius:50%;transform:scale(0) translateY(-51%) translateX(13%);z-index:5;-webkit-animation:ripple .4s ease-out forwards;animation:ripple .4s ease-out forwards}.notyf__wrapper{display:flex;align-items:center;padding-top:17px;padding-bottom:17px;padding-right:15px;border-radius:3px;position:relative;z-index:10}.notyf__icon{width:22px;text-align:center;font-size:1.3em;opacity:0;-webkit-animation:notyf-fadeinup .3s forwards;animation:notyf-fadeinup .3s forwards;-webkit-animation-delay:.3s;animation-delay:.3s;margin-right:13px}.notyf__dismiss{position:absolute;top:0;right:0;height:100%;width:26px;margin-right:-15px;-webkit-animation:notyf-fadeinleft .3s forwards;animation:notyf-fadeinleft .3s forwards;-webkit-animation-delay:.35s;animation-delay:.35s;opacity:0}.notyf__dismiss-btn{background-color:rgba(0,0,0,.25);border:none;cursor:pointer;transition:opacity .2s ease,background-color .2s ease;outline:0;opacity:.35;height:100%;width:100%}.notyf__dismiss-btn:after,.notyf__dismiss-btn:before{content:"";background:#fff;height:12px;width:2px;border-radius:3px;position:absolute;left:calc(50% - 1px);top:calc(50% - 5px)}.notyf__dismiss-btn:after{transform:rotate(-45deg)}.notyf__dismiss-btn:before{transform:rotate(45deg)}.notyf__dismiss-btn:hover{opacity:.7;background-color:rgba(0,0,0,.15)}.notyf__dismiss-btn:active{opacity:.8}.notyf__message{vertical-align:middle;position:relative;opacity:0;-webkit-animation:notyf-fadeinup .3s forwards;animation:notyf-fadeinup .3s forwards;-webkit-animation-delay:.25s;animation-delay:.25s;line-height:1.5em}@media only screen and (max-width:480px){.notyf{padding:0}.notyf__ripple{height:600px;width:600px;-webkit-animation-duration:.5s;animation-duration:.5s}.notyf__toast{max-width:none;border-radius:0;box-shadow:0 -2px 7px 0 rgba(0,0,0,.13);width:100%}.notyf__dismiss{width:56px}}
|
|
10
10
|
#content dl dd.hidden{display:none}#content dl dd.visible{display:block}.collapse-all-defs-button{float:right}
|
|
11
11
|
dl>dd:has(table)>.meta-info-content-wrapper{max-height:100px;transition:max-height .3s ease-out}dl>dd:has(table).collapsed>.meta-info-content-wrapper{padding-top:0;padding-bottom:0;overflow:hidden;transition:max-height .3s ease-out;max-height:0}
|
|
12
|
-
.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000}.modal{background-color:#fff;padding:2rem 20px 20px;border-radius:8px;max-width:80%;max-height:80%;overflow-y:auto;position:relative;box-shadow:0 2px 10px rgba(0,0,0,.1)}.modal-close{position:absolute;top:0;right:5px;background-color:transparent;border:none;font-size:2rem;line-height:1;cursor:pointer}
|
|
12
|
+
.spec-up-t-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);display:flex;justify-content:center;align-items:center;z-index:1000}.spec-up-t-modal{background-color:#fff;padding:2rem 20px 20px;border-radius:8px;max-width:80%;max-height:80%;overflow-y:auto;position:relative;box-shadow:0 2px 10px rgba(0,0,0,.1)}.spec-up-t-modal-close{position:absolute;top:0;right:5px;background-color:transparent;border:none;font-size:2rem;line-height:1;cursor:pointer}
|
|
13
13
|
.alphabet-index-container{margin-bottom:1em}.alphabet-index-container,.number-of-terms{font-size:.8em;text-align:center;width:100%}.alphabet-index-container a{background-color:#f5f5f5;border:1px solid #e0e0e0;border-radius:50%;color:#333;display:inline-block;font-size:.9rem;height:20px;line-height:20px;margin:2px;text-align:center;text-decoration:none;width:20px}
|
|
14
14
|
.button-pdf-download{padding-left:.1em;padding-right:.1em;border:none;background:red;color:#fff;box-shadow:2.8px 2.8px 2.2px rgba(0,0,0,.02),6.7px 6.7px 5.3px rgba(0,0,0,.028),12.5px 12.5px 10px rgba(0,0,0,.035),22.3px 22.3px 17.9px rgba(0,0,0,.042),41.8px 41.8px 33.4px rgba(0,0,0,.05),100px 100px 80px rgba(0,0,0,.07)}
|
|
15
15
|
h2,h3,h4,h5,h6{margin-top:1.5em!important}.toc-anchor{font-size:.875em;color:inherit;text-decoration:none;opacity:.35;order:-1;transition:opacity .3s ease}.toc-anchor:hover{opacity:1}#terminology-section-utility-container{background:var(--card-bg);display:flex;flex-wrap:wrap;justify-content:center;margin:1em auto;padding:0;width:100%}@media (min-width:576px){#terminology-section-utility-container{position:sticky;top:3.5em}}.transcluded-xref-term{background:#a9dde03b!important;padding:.5em;margin:1em 0}.transclusion-heading{font-size:1.3em;font-weight:700;margin:1em 0 .5em}.btn,.no-xref-found-message{font-variant:small-caps;text-transform:uppercase}.no-xref-found-message{background:#f8c481!important;color:#03365f!important;margin:0 .5em;padding:0 .8em;border-radius:.25rem;font-size:.8rem}dl.terms-and-definitions-list{margin:0;padding:0}dl.terms-and-definitions-list>dt{font-weight:700;margin:0;background-color:var(--card-bg-dt);border:1px solid var(--card-border);padding:.1rem 1.25rem;border-radius:.375rem .375rem 0 0;box-shadow:0 .125rem .25rem var(--card-shadow);color:var(--card-text)}dl.terms-and-definitions-list>dd{margin:0;background-color:var(--card-bg);border:1px solid var(--card-border);border-top:none;padding:1rem 1.25rem;box-shadow:0 .125rem .25rem var(--card-shadow);color:var(--card-text);overflow:scroll}dl.terms-and-definitions-list dd p{margin:0;color:var(--card-text)}dl.terms-and-definitions-list dt+dd{border-bottom:none}dl.terms-and-definitions-list dd+dd{border-top:none;border-bottom:none}dl.terms-and-definitions-list dd+dt{margin-top:1.5rem}dl.terms-and-definitions-list dd.last-dd{border-radius:0 0 .375rem .375rem;border-bottom:1px solid var(--card-border)}dl.terms-and-definitions-list>dt:hover{background-color:var(--card-hover-bg);transition:background-color .2s ease-in-out}
|
package/assets/css/modal.css
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/* Basic styles for the modal */
|
|
2
|
-
.modal-overlay {
|
|
2
|
+
.spec-up-t-modal-overlay {
|
|
3
3
|
position: fixed;
|
|
4
4
|
top: 0;
|
|
5
5
|
left: 0;
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
z-index: 1000;
|
|
13
13
|
}
|
|
14
14
|
|
|
15
|
-
.modal {
|
|
15
|
+
.spec-up-t-modal {
|
|
16
16
|
background-color: white;
|
|
17
17
|
padding: 2rem 20px 20px;
|
|
18
18
|
border-radius: 8px;
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
.modal-close {
|
|
26
|
+
.spec-up-t-modal-close {
|
|
27
27
|
position: absolute;
|
|
28
28
|
top: 0;
|
|
29
29
|
right: 5px;
|
|
@@ -21,7 +21,7 @@ function helpButtons() {
|
|
|
21
21
|
newElement.title = 'Click to see the explanation of the buttons at the documentation website, in a new tab.';
|
|
22
22
|
newElement.target = '_blank';
|
|
23
23
|
newElement.rel = 'noopener noreferrer';
|
|
24
|
-
newElement.href = 'https://
|
|
24
|
+
newElement.href = 'https://blockchainbird.github.io/spec-up-t-website/docs/user-interface-overview/specification#explanation-of-the-buttons-in-the-specification';
|
|
25
25
|
|
|
26
26
|
function addElementAfterLastChild(newElement) {
|
|
27
27
|
const elements = document.querySelectorAll('#content dl dt');
|
package/assets/js/modal.js
CHANGED
|
@@ -6,15 +6,15 @@
|
|
|
6
6
|
function showModal(content) {
|
|
7
7
|
// Create the modal overlay
|
|
8
8
|
const overlay = document.createElement('div');
|
|
9
|
-
overlay.className = 'modal-overlay';
|
|
9
|
+
overlay.className = 'spec-up-t-modal-overlay';
|
|
10
10
|
|
|
11
11
|
// Create the modal container
|
|
12
12
|
const modal = document.createElement('div');
|
|
13
|
-
modal.className = 'modal';
|
|
13
|
+
modal.className = 'spec-up-t-modal';
|
|
14
14
|
|
|
15
15
|
// Create the close button
|
|
16
16
|
const closeButton = document.createElement('button');
|
|
17
|
-
closeButton.className = 'modal-close';
|
|
17
|
+
closeButton.className = 'spec-up-t-modal-close';
|
|
18
18
|
closeButton.innerHTML = '×';
|
|
19
19
|
closeButton.onclick = closeModal;
|
|
20
20
|
|
|
@@ -85,7 +85,7 @@ function fetchCommitHashes() {
|
|
|
85
85
|
|
|
86
86
|
// B: Debounced “GitHub API rate limit exceeded” error message
|
|
87
87
|
const debouncedError = debounce(() => {
|
|
88
|
-
notyf.error('GitHub API rate limit exceeded. See <a target="_blank" rel="noopener" href="https://
|
|
88
|
+
notyf.error('GitHub API rate limit exceeded. See <a target="_blank" rel="noopener" href="https://blockchainbird.github.io/spec-up-t-website/docs/getting-started/github-token">documentation</a> for more info.');
|
|
89
89
|
}, 3000); // Delay in milliseconds
|
|
90
90
|
|
|
91
91
|
// Fetch the content of a term-file from GitHub
|
|
@@ -100,13 +100,13 @@ function fetchCommitHashes() {
|
|
|
100
100
|
.then(response => {
|
|
101
101
|
if (response.status === 403 && response.headers.get('X-RateLimit-Remaining') === '0') {
|
|
102
102
|
const resetTime = new Date(response.headers.get('X-RateLimit-Reset') * 1000);
|
|
103
|
-
console.error(`❌ Github API rate limit exceeded. Try again after ${resetTime}. See https://
|
|
103
|
+
console.error(`❌ Github API rate limit exceeded. Try again after ${resetTime}. See https://blockchainbird.github.io/spec-up-t-website/docs/getting-started/github-token for more info.`);
|
|
104
104
|
|
|
105
105
|
// Call the debounced error function
|
|
106
106
|
debouncedError();
|
|
107
107
|
return true;
|
|
108
108
|
} else {
|
|
109
|
-
console.log(`ℹ️ Github API rate limit: ${response.headers.get('X-RateLimit-Remaining')} requests remaining. See https://
|
|
109
|
+
console.log(`ℹ️ Github API rate limit: ${response.headers.get('X-RateLimit-Remaining')} requests remaining. See https://blockchainbird.github.io/spec-up-t-website/docs/getting-started/github-token for more info.`);
|
|
110
110
|
}
|
|
111
111
|
|
|
112
112
|
return response.json();
|
|
@@ -174,12 +174,12 @@ function fetchCommitHashes() {
|
|
|
174
174
|
|
|
175
175
|
if (response.status === 403 && response.headers.get('X-RateLimit-Remaining') === '0') {
|
|
176
176
|
const resetTime = new Date(response.headers.get('X-RateLimit-Reset') * 1000);
|
|
177
|
-
console.error(`❌ Github API rate limit exceeded. Try again after ${resetTime}. See https://
|
|
177
|
+
console.error(`❌ Github API rate limit exceeded. Try again after ${resetTime}. See https://blockchainbird.github.io/spec-up-t-website/docs/getting-started/github-token for more info.`);
|
|
178
178
|
|
|
179
179
|
debouncedError();
|
|
180
180
|
return true;
|
|
181
181
|
} else {
|
|
182
|
-
console.log(`ℹ️ Github API rate limit: ${response.headers.get('X-RateLimit-Remaining')} requests remaining. See https://
|
|
182
|
+
console.log(`ℹ️ Github API rate limit: ${response.headers.get('X-RateLimit-Remaining')} requests remaining. See https://blockchainbird.github.io/spec-up-t-website/docs/getting-started/github-token for more info.`);
|
|
183
183
|
}
|
|
184
184
|
|
|
185
185
|
const data = await response.json();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "spec-up-t",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.34",
|
|
4
4
|
"description": "Technical specification drafting tool that generates rich specification documents from markdown. Forked from https://github.com/decentralized-identity/spec-up by Daniel Buchner (https://github.com/csuwildcat)",
|
|
5
5
|
"main": "./index",
|
|
6
6
|
"repository": {
|
package/readme.md
CHANGED
|
@@ -7,4 +7,4 @@
|
|
|
7
7
|
<h2 style="display: block; margin: 0 auto; text-align: center;">Markdown » Spec-Up</h2>
|
|
8
8
|
</div>
|
|
9
9
|
|
|
10
|
-
There is a [special website that documents everything regarding Spec-Up-T](https://
|
|
10
|
+
There is a [special website that documents everything regarding Spec-Up-T](https://blockchainbird.github.io/spec-up-t-website/).
|
|
@@ -26,7 +26,7 @@ function collectExternalReferences(options = {}) {
|
|
|
26
26
|
|
|
27
27
|
There is no point in continuing without a PAT, so we stop here.
|
|
28
28
|
|
|
29
|
-
Find instructions on how to get a PAT at https://
|
|
29
|
+
Find instructions on how to get a PAT at https://blockchainbird.github.io/spec-up-t-website/docs/getting-started/github-token
|
|
30
30
|
|
|
31
31
|
`;
|
|
32
32
|
|
|
@@ -5,10 +5,10 @@ function checkRateLimit(response) {
|
|
|
5
5
|
|
|
6
6
|
if (response.status === 403 && remaining === '0') {
|
|
7
7
|
const resetTime = new Date(reset * 1000);
|
|
8
|
-
console.error(`❌ Github API rate limit exceeded. Try again after ${resetTime}. See https://
|
|
8
|
+
console.error(`❌ Github API rate limit exceeded. Try again after ${resetTime}. See https://blockchainbird.github.io/spec-up-t-website/docs/getting-started/github-token for more info.`);
|
|
9
9
|
return true;
|
|
10
10
|
} else if (remaining !== null) {
|
|
11
|
-
console.log(`ℹ️ Github API rate limit: ${remaining} requests remaining. See https://
|
|
11
|
+
console.log(`ℹ️ Github API rate limit: ${remaining} requests remaining. See https://blockchainbird.github.io/spec-up-t-website/docs/getting-started/github-token for more info.`);
|
|
12
12
|
} else {
|
|
13
13
|
console.warn(`ℹ️ Unable to determine rate limit status. Check your GitHub API token and network connection.`);
|
|
14
14
|
}
|
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
## Intro
|
|
4
4
|
|
|
5
|
-
This is a default Spec-Up-T installation. Find information on the [Spec-Up-T documentation website](https://
|
|
5
|
+
This is a default Spec-Up-T installation. Find information on the [Spec-Up-T documentation website](https://blockchainbird.github.io/spec-up-t-website/).
|
|
6
6
|
|
|
7
7
|
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
|
|
@@ -67,7 +67,7 @@ function prompt_input() {
|
|
|
67
67
|
|
|
68
68
|
function do_add_content() {
|
|
69
69
|
clear
|
|
70
|
-
echo -e "\n\n\n ********************\n\n\n You can start adding your content to the markdown files in the "spec" directory.\n\n You can do this by editing local files in an editor or by going to your repository on GitHub.\n\n More info: https://
|
|
70
|
+
echo -e "\n\n\n ********************\n\n\n You can start adding your content to the markdown files in the "spec" directory.\n\n You can do this by editing local files in an editor or by going to your repository on GitHub.\n\n More info: https://blockchainbird.github.io/spec-up-t-website/docs/various-roles/content-authors-guide/introduction\n\n\n ********************"
|
|
71
71
|
}
|
|
72
72
|
|
|
73
73
|
function do_render() { clear; npm run render; }
|
|
@@ -80,14 +80,14 @@ function do_freeze() { clear; npm run freeze; }
|
|
|
80
80
|
|
|
81
81
|
function do_help() {
|
|
82
82
|
clear
|
|
83
|
-
echo -e "\n\n\n You will be redirected to the documentation website\n\n (https://
|
|
83
|
+
echo -e "\n\n\n You will be redirected to the documentation website\n\n (https://blockchainbird.github.io/spec-up-t-website/)."
|
|
84
84
|
sleep 2
|
|
85
85
|
if [[ "$OSTYPE" == "darwin"* ]]; then
|
|
86
|
-
open "https://
|
|
86
|
+
open "https://blockchainbird.github.io/spec-up-t-website/"
|
|
87
87
|
elif [[ "$OSTYPE" == "linux-gnu"* ]]; then
|
|
88
|
-
xdg-open "https://
|
|
88
|
+
xdg-open "https://blockchainbird.github.io/spec-up-t-website/"
|
|
89
89
|
elif [[ "$OSTYPE" == "cygwin" || "$OSTYPE" == "msys" || "$OSTYPE" == "win32" ]]; then
|
|
90
|
-
start "https://
|
|
90
|
+
start "https://blockchainbird.github.io/spec-up-t-website/"
|
|
91
91
|
else
|
|
92
92
|
echo "Unsupported OS."
|
|
93
93
|
fi
|
package/templates/template.html
CHANGED
|
@@ -200,7 +200,7 @@
|
|
|
200
200
|
<div id="toc" class="offcanvas-body d-md-flex flex-column p-0 pt-lg-3 overflow-y-auto">
|
|
201
201
|
${toc}
|
|
202
202
|
<!-- href added via JS -->
|
|
203
|
-
<a class="btn btn-outline-secondary mt-5" href="#">Snapshots</a>
|
|
203
|
+
<a id="snapshotLink" class="btn btn-outline-secondary mt-5" href="#">Snapshots</a>
|
|
204
204
|
<a class="powered-by mx-auto p-2" href="https://github.com/trustoverip/spec-up-t"
|
|
205
205
|
target="_blank" rel="noopener">Powered By Spec-Up-T</a>
|
|
206
206
|
</div>
|