From 5e715352a3ab73329d9c7d04c846c24f18315aaf Mon Sep 17 00:00:00 2001 From: kordwarshuis Date: Fri, 30 Aug 2024 05:52:02 +0000 Subject: [PATCH] deploy: 667d19cf3d6e5e768290456571814445b4ae9812 --- 404.html | 4 +- assets/js/03c01b4d.89bd469c.js | 1 - assets/js/03c01b4d.f2881860.js | 1 + ...3fca0.e887744b.js => 08e3fca0.63fd31cf.js} | 2 +- assets/js/0e384e19.15e13d19.js | 1 + assets/js/0e384e19.be1b80bb.js | 1 - assets/js/2be7da73.2e8a273b.js | 1 + assets/js/2be7da73.b90105fe.js | 1 - assets/js/30c1de03.0b2cffed.js | 1 + assets/js/30c1de03.70911222.js | 1 - assets/js/36846233.c37fef1a.js | 1 - assets/js/36846233.c72a9bfb.js | 1 + ...d065b.2c19966c.js => 3e8d065b.4056cbb9.js} | 2 +- assets/js/429dafae.441157e7.js | 1 + assets/js/451344e5.2c43f157.js | 1 - assets/js/451344e5.a4e60f4b.js | 1 + ...1e212.95356e52.js => 4741e212.04fd169c.js} | 2 +- ...5055f.82a871e2.js => 4d95055f.11010738.js} | 2 +- assets/js/4ee666db.ffe5ce5f.js | 1 + ...f7a94.c36b6cff.js => 53ef7a94.2814806c.js} | 2 +- ...248e1.ef72a306.js => 680248e1.0a191176.js} | 2 +- assets/js/7e7aa536.90b151b7.js | 1 + assets/js/7e7aa536.edd06f8e.js | 1 - assets/js/84de3d6b.139cbb81.js | 1 - assets/js/84de3d6b.72103e19.js | 1 + ...8579a.0ebf0861.js => 9428579a.30c66175.js} | 2 +- assets/js/a061a251.f87e0e45.js | 1 + assets/js/cf57817a.127a6075.js | 1 - assets/js/cf57817a.98d8b997.js | 1 + assets/js/d20ae096.17c4867f.js | 1 + assets/js/d20ae096.a8218849.js | 1 - assets/js/dff1e1e9.8409bfbe.js | 1 - assets/js/dff1e1e9.fac9877a.js | 1 + assets/js/e0c4e08d.72abc757.js | 1 + assets/js/e0c4e08d.9326eb85.js | 1 - assets/js/e2c9a94b.18b1d6d7.js | 1 - assets/js/f049f840.063c3258.js | 1 - assets/js/f049f840.3128aa1c.js | 1 + assets/js/main.0cefc67d.js | 2 - assets/js/main.795a31f1.js | 2 + ...CENSE.txt => main.795a31f1.js.LICENSE.txt} | 0 assets/js/runtime~main.845fb131.js | 1 + assets/js/runtime~main.d1ce101a.js | 1 - blog/archive/index.html | 4 +- blog/index.html | 4 +- blog/welcome/index.html | 4 +- docs/category/admins-guide/index.html | 14 ++++++ .../category/content-authors-guide/index.html | 6 +-- docs/category/curators-guide/index.html | 6 +-- .../glossary-maintainers-guide/index.html | 6 +-- docs/category/readers-guide/index.html | 6 +-- docs/category/roles/index.html | 6 +-- .../terminology-author-guide/index.html | 6 +-- docs/cheat-sheet/index.html | 4 +- docs/glossary/index.html | 4 +- docs/how-it-came-to-be/index.html | 4 +- docs/intro/index.html | 6 +-- docs/q-and-a/index.html | 8 +-- docs/spec-up-t-demo-site/index.html | 6 +-- docs/this-site-maintainers/index.html | 6 +-- docs/troubleshooting/index.html | 4 +- docs/various-roles/admins-guide/index.html | 36 +++++++------- .../admins-guide/tools/index.html | 49 +++++++++++++++++++ .../introduction/index.html | 8 +-- .../curators-guide/introduction/index.html | 8 +-- .../various-roles/developers-guide/index.html | 12 ++--- docs/various-roles/general-guide/index.html | 8 +-- .../introduction/index.html | 8 +-- docs/various-roles/intro/index.html | 8 +-- .../readers-guide/introduction/index.html | 8 +-- .../technical-skills-needed/index.html | 8 +-- .../external-term-references/index.html | 6 +-- .../introduction/index.html | 8 +-- .../term-references/index.html | 8 +-- index.html | 4 +- markdown-page/index.html | 4 +- search-index.json | 2 +- search/index.html | 4 +- sitemap.xml | 2 +- 79 files changed, 207 insertions(+), 142 deletions(-) delete mode 100644 assets/js/03c01b4d.89bd469c.js create mode 100644 assets/js/03c01b4d.f2881860.js rename assets/js/{08e3fca0.e887744b.js => 08e3fca0.63fd31cf.js} (72%) create mode 100644 assets/js/0e384e19.15e13d19.js delete mode 100644 assets/js/0e384e19.be1b80bb.js create mode 100644 assets/js/2be7da73.2e8a273b.js delete mode 100644 assets/js/2be7da73.b90105fe.js create mode 100644 assets/js/30c1de03.0b2cffed.js delete mode 100644 assets/js/30c1de03.70911222.js delete mode 100644 assets/js/36846233.c37fef1a.js create mode 100644 assets/js/36846233.c72a9bfb.js rename assets/js/{3e8d065b.2c19966c.js => 3e8d065b.4056cbb9.js} (61%) create mode 100644 assets/js/429dafae.441157e7.js delete mode 100644 assets/js/451344e5.2c43f157.js create mode 100644 assets/js/451344e5.a4e60f4b.js rename assets/js/{4741e212.95356e52.js => 4741e212.04fd169c.js} (58%) rename assets/js/{4d95055f.82a871e2.js => 4d95055f.11010738.js} (58%) create mode 100644 assets/js/4ee666db.ffe5ce5f.js rename assets/js/{53ef7a94.c36b6cff.js => 53ef7a94.2814806c.js} (74%) rename assets/js/{680248e1.ef72a306.js => 680248e1.0a191176.js} (53%) create mode 100644 assets/js/7e7aa536.90b151b7.js delete mode 100644 assets/js/7e7aa536.edd06f8e.js delete mode 100644 assets/js/84de3d6b.139cbb81.js create mode 100644 assets/js/84de3d6b.72103e19.js rename assets/js/{9428579a.0ebf0861.js => 9428579a.30c66175.js} (64%) create mode 100644 assets/js/a061a251.f87e0e45.js delete mode 100644 assets/js/cf57817a.127a6075.js create mode 100644 assets/js/cf57817a.98d8b997.js create mode 100644 assets/js/d20ae096.17c4867f.js delete mode 100644 assets/js/d20ae096.a8218849.js delete mode 100644 assets/js/dff1e1e9.8409bfbe.js create mode 100644 assets/js/dff1e1e9.fac9877a.js create mode 100644 assets/js/e0c4e08d.72abc757.js delete mode 100644 assets/js/e0c4e08d.9326eb85.js delete mode 100644 assets/js/e2c9a94b.18b1d6d7.js delete mode 100644 assets/js/f049f840.063c3258.js create mode 100644 assets/js/f049f840.3128aa1c.js delete mode 100644 assets/js/main.0cefc67d.js create mode 100644 assets/js/main.795a31f1.js rename assets/js/{main.0cefc67d.js.LICENSE.txt => main.795a31f1.js.LICENSE.txt} (100%) create mode 100644 assets/js/runtime~main.845fb131.js delete mode 100644 assets/js/runtime~main.d1ce101a.js create mode 100644 docs/category/admins-guide/index.html create mode 100644 docs/various-roles/admins-guide/tools/index.html diff --git a/404.html b/404.html index 6990c279..749ffc12 100644 --- a/404.html +++ b/404.html @@ -5,8 +5,8 @@ Page Not Found | Spec-Up-T - - + +
Skip to main content

Page Not Found

We could not find what you were looking for.

Please contact the owner of the site that linked you to the original URL and let them know their link is broken.

diff --git a/assets/js/03c01b4d.89bd469c.js b/assets/js/03c01b4d.89bd469c.js deleted file mode 100644 index eb71730b..00000000 --- a/assets/js/03c01b4d.89bd469c.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5920],{1433:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>a,contentTitle:()=>o,default:()=>p,frontMatter:()=>s,metadata:()=>d,toc:()=>u});var i=r(4848),n=r(8453);const s={sidebar_position:1},o="Readers Guide",d={id:"various-roles/readers-guide/introduction",title:"Readers Guide",description:"Under construction",source:"@site/docs/various-roles/readers-guide/introduction.md",sourceDirName:"various-roles/readers-guide",slug:"/various-roles/readers-guide/introduction",permalink:"/spec-up-t-website/docs/various-roles/readers-guide/introduction",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/readers-guide/introduction.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Readers Guide",permalink:"/spec-up-t-website/docs/category/readers-guide"},next:{title:"Developers Guide",permalink:"/spec-up-t-website/docs/various-roles/developers-guide"}},a={},u=[];function c(e){const t={admonition:"admonition",h1:"h1",p:"p",...(0,n.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(t.h1,{id:"readers-guide",children:"Readers Guide"}),"\n",(0,i.jsx)(t.admonition,{type:"warning",children:(0,i.jsx)(t.p,{children:"Under construction"})}),"\n",(0,i.jsx)(t.p,{children:"Uses github.io website, reads concepts in text and terminology in glossaries, (for example generated by Spec-Up) with its own tailor-made contextual glossary that generates pop-ups here and there in the text offered."})]})}function p(e={}){const{wrapper:t}={...(0,n.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(c,{...e})}):c(e)}},8453:(e,t,r)=>{r.d(t,{R:()=>o,x:()=>d});var i=r(6540);const n={},s=i.createContext(n);function o(e){const t=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function d(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:o(e.components),i.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/03c01b4d.f2881860.js b/assets/js/03c01b4d.f2881860.js new file mode 100644 index 00000000..d875614c --- /dev/null +++ b/assets/js/03c01b4d.f2881860.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[5920],{1433:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>a,contentTitle:()=>s,default:()=>p,frontMatter:()=>i,metadata:()=>d,toc:()=>c});var n=r(4848),o=r(8453);const i={sidebar_position:1},s="Intro",d={id:"various-roles/readers-guide/introduction",title:"Intro",description:"Under construction",source:"@site/docs/various-roles/readers-guide/introduction.md",sourceDirName:"various-roles/readers-guide",slug:"/various-roles/readers-guide/introduction",permalink:"/spec-up-t-website/docs/various-roles/readers-guide/introduction",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/readers-guide/introduction.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Readers Guide",permalink:"/spec-up-t-website/docs/category/readers-guide"},next:{title:"Developers Guide",permalink:"/spec-up-t-website/docs/various-roles/developers-guide"}},a={},c=[];function u(e){const t={admonition:"admonition",h1:"h1",p:"p",...(0,o.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(t.h1,{id:"intro",children:"Intro"}),"\n",(0,n.jsx)(t.admonition,{type:"warning",children:(0,n.jsx)(t.p,{children:"Under construction"})}),"\n",(0,n.jsx)(t.p,{children:"Uses github.io website, reads concepts in text and terminology in glossaries, (for example generated by Spec-Up) with its own tailor-made contextual glossary that generates pop-ups here and there in the text offered."})]})}function p(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(u,{...e})}):u(e)}},8453:(e,t,r)=>{r.d(t,{R:()=>s,x:()=>d});var n=r(6540);const o={},i=n.createContext(o);function s(e){const t=n.useContext(i);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function d(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:s(e.components),n.createElement(i.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/08e3fca0.e887744b.js b/assets/js/08e3fca0.63fd31cf.js similarity index 72% rename from assets/js/08e3fca0.e887744b.js rename to assets/js/08e3fca0.63fd31cf.js index 494d8396..fd39bdeb 100644 --- a/assets/js/08e3fca0.e887744b.js +++ b/assets/js/08e3fca0.63fd31cf.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9561],{9477:e=>{e.exports=JSON.parse('{"categoryGeneratedIndex":{"title":"Curators Guide","description":"Curators Guide.","slug":"/category/curators-guide","permalink":"/spec-up-t-website/docs/category/curators-guide","sidebar":"tutorialSidebar","navigation":{"previous":{"title":"External Term References","permalink":"/spec-up-t-website/docs/various-roles/terminology-authors-guide/external-term-references"},"next":{"title":"Curators Guide","permalink":"/spec-up-t-website/docs/various-roles/curators-guide/introduction"}}}}')}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9561],{9477:e=>{e.exports=JSON.parse('{"categoryGeneratedIndex":{"title":"Curators Guide","description":"Curators Guide.","slug":"/category/curators-guide","permalink":"/spec-up-t-website/docs/category/curators-guide","sidebar":"tutorialSidebar","navigation":{"previous":{"title":"External Term References","permalink":"/spec-up-t-website/docs/various-roles/terminology-authors-guide/external-term-references"},"next":{"title":"Intro","permalink":"/spec-up-t-website/docs/various-roles/curators-guide/introduction"}}}}')}}]); \ No newline at end of file diff --git a/assets/js/0e384e19.15e13d19.js b/assets/js/0e384e19.15e13d19.js new file mode 100644 index 00000000..6272303a --- /dev/null +++ b/assets/js/0e384e19.15e13d19.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3976],{619:(t,e,i)=>{i.r(e),i.d(e,{assets:()=>s,contentTitle:()=>g,default:()=>o,frontMatter:()=>j,metadata:()=>I,toc:()=>c});var M=i(4848),n=i(8453);const j={sidebar_position:1},g="Introduction",I={id:"intro",title:"Introduction",description:"Intro",source:"@site/docs/intro.md",sourceDirName:".",slug:"/intro",permalink:"/spec-up-t-website/docs/intro",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/intro.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Cheat sheet",permalink:"/spec-up-t-website/docs/cheat-sheet"},next:{title:"Roles",permalink:"/spec-up-t-website/docs/category/roles"}},s={},c=[{value:"Intro",id:"intro",level:2},{value:"History",id:"history",level:2},{value:"Spec-Up-T",id:"spec-up-t",level:2}];function u(t){const e={a:"a",admonition:"admonition",code:"code",em:"em",h1:"h1",h2:"h2",img:"img",li:"li",ol:"ol",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,n.R)(),...t.components};return(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(e.h1,{id:"introduction",children:"Introduction"}),"\n",(0,M.jsx)(e.h2,{id:"intro",children:"Intro"}),"\n",(0,M.jsxs)(e.p,{children:[(0,M.jsx)(e.strong,{children:"Spec-Up-T"})," is a tool that helps you write specifications. It is a tool for writing in Markdown and creates ",(0,M.jsx)(e.em,{children:"one"})," ",(0,M.jsx)(e.code,{children:"index.html"})," file."]}),"\n",(0,M.jsx)(e.p,{children:(0,M.jsxs)(e.strong,{children:["This ",(0,M.jsx)(e.code,{children:"index.html"})," file is the actual specification file that is the goal of it all."]})}),"\n",(0,M.jsxs)(e.p,{children:["This ",(0,M.jsx)(e.code,{children:"index.html"})," file is stand-alone and can be hosted on any web server. Or double-click it, and it will open in a browser."]}),"\n",(0,M.jsxs)(e.p,{children:["The Spec-Up-T code is available ",(0,M.jsx)(e.a,{href:"https://github.com/blockchainbird/spec-up-t",children:"on Github"}),"."]}),"\n",(0,M.jsxs)(e.p,{children:["Spec-Up-T is based on ",(0,M.jsx)(e.strong,{children:"Spec-Up"}),", and some of the content on this website is taken from the ",(0,M.jsx)(e.a,{href:"https://identity.foundation/spec-up/",children:"Spec-Up website"})," and ",(0,M.jsx)(e.a,{href:"https://github.com/decentralized-identity/spec-up",children:"repo"}),"."]}),"\n",(0,M.jsx)(e.admonition,{type:"tip",children:(0,M.jsxs)(e.p,{children:["You will have to install Spec-Up-T to start using it. Go straight to the ",(0,M.jsx)(e.a,{href:"/spec-up-t-website/docs/various-roles/admins-guide/",children:"admin section"})," for instructions."]})}),"\n",(0,M.jsx)(e.h2,{id:"history",children:"History"}),"\n",(0,M.jsxs)(e.p,{children:["Spec-Up-T is based on Spec-Up (",(0,M.jsx)(e.a,{href:"https://github.com/decentralized-identity/spec-up",children:"Spec-Up on Github"}),")."]}),"\n",(0,M.jsxs)(e.p,{children:["Spec-Up is a tool provided by ",(0,M.jsx)(e.a,{href:"https://github.com/decentralized-identity",children:"DIF"})," (Decentralized Identity Foundation) and created by ",(0,M.jsx)(e.a,{href:"https://github.com/csuwildcat",children:"Daniel Buchner"}),"."]}),"\n",(0,M.jsx)("div",{class:"image-medium center",children:(0,M.jsx)(e.p,{children:(0,M.jsx)(e.img,{alt:"Logo ToIP and DIF combined",src:i(1415).A+"",width:"243",height:"108"})})}),"\n",(0,M.jsxs)(e.p,{children:["From the Spec-Up documentation: \u201c",(0,M.jsx)(e.em,{children:"Spec-Up"})," is a technical specification development tool that enables you to create rich specification documents for standards bodies and engineering projects by writing in an extended version of markdown that features all the bells and whistles - for example, advanced syntax highlighting, notice blocks, complex tables, charts, UML diagrams, and more.\u201d"]}),"\n",(0,M.jsxs)(e.table,{children:[(0,M.jsx)(e.thead,{children:(0,M.jsxs)(e.tr,{children:[(0,M.jsx)(e.th,{children:"Spec-Up"}),(0,M.jsx)(e.th,{children:"Spec-Up-T"})]})}),(0,M.jsxs)(e.tbody,{children:[(0,M.jsxs)(e.tr,{children:[(0,M.jsxs)(e.td,{children:[(0,M.jsx)("div",{class:"image-small",children:(0,M.jsx)(e.img,{alt:"DIF Logo",src:i(1833).A+"",width:"320",height:"108"})}),"Decentralized Identity Foundation"]}),(0,M.jsxs)(e.td,{children:[(0,M.jsx)("div",{class:"image-small",children:(0,M.jsx)(e.img,{alt:"ToIP Logo",src:i(8512).A+"",width:"985",height:"406"})}),"Trust over IP"]})]}),(0,M.jsxs)(e.tr,{children:[(0,M.jsx)(e.td,{children:"\u201cTogether we're building a new identity ecosystem\u201d"}),(0,M.jsx)(e.td,{children:"\u201cDeveloping a complete architecture for Internet Digital Trust. And a better Internet for everyone.\u201d"})]}),(0,M.jsxs)(e.tr,{children:[(0,M.jsx)(e.td,{children:(0,M.jsx)(e.a,{href:"https://github.com/decentralized-identity/spec-up",children:"Spec-Up on Github"})}),(0,M.jsx)(e.td,{children:(0,M.jsx)(e.a,{href:"https://github.com/blockchainbird/spec-up-t",children:"Spec-Up-T on Github"})})]}),(0,M.jsxs)(e.tr,{children:[(0,M.jsx)(e.td,{children:(0,M.jsx)(e.a,{href:"https://identity.foundation/",children:"DIF website"})}),(0,M.jsx)(e.td,{children:(0,M.jsx)(e.a,{href:"https://trustoverip.org/",children:"ToIP website"})})]})]})]}),"\n",(0,M.jsxs)(e.p,{children:[(0,M.jsx)(e.em,{children:"Spec-Up-T"})," is an expansion of ",(0,M.jsx)(e.a,{href:"https://github.com/decentralized-identity/spec-up",children:"DIF's Spec-Up"})," specifically for the needs of the Trust-over-IP foundation. Read more in the elaborate motivation in this technical article: ",(0,M.jsx)(e.a,{href:"/spec-up-t-website/docs/how-it-came-to-be",children:"How it came to be"}),"."]}),"\n",(0,M.jsx)(e.h2,{id:"spec-up-t",children:"Spec-Up-T"}),"\n",(0,M.jsx)(e.p,{children:"Spec-Up-T stays in sync with Spec-Up and currently adds the following extra functionality:"}),"\n",(0,M.jsxs)(e.ol,{children:["\n",(0,M.jsx)(e.li,{children:"Search & Find (only searches the main content, unlike the browser search);"}),"\n",(0,M.jsxs)(e.li,{children:["Splitter for Terms and Definition section following the ",(0,M.jsx)(e.a,{href:"https://trustoverip.github.io/ctwg-terminology-governance-guide/",children:"Termininology Governance Guide"})," and various meeting reports since ",(0,M.jsx)(e.a,{href:"https://wiki.trustoverip.org/display/HOME/2024-04-22+CTWG+Meeting+Notes",children:"CTWG April 2024"})]}),"\n",(0,M.jsx)(e.li,{children:"External Reference (xref) functionality"}),"\n",(0,M.jsx)(e.li,{children:"Small User Interface enhancements (back-to-top button, automatic copying of urls when clicking on anchors (\u201c$\u201d), menu-item highlighting)"}),"\n"]}),"\n",(0,M.jsxs)(e.p,{children:[(0,M.jsx)(e.em,{children:"Spec-Up"})," and ",(0,M.jsx)(e.em,{children:"Spec-Up-T"})," work on ",(0,M.jsx)(e.em,{children:"Github"}),". The specification is stored in a Github repo. Editing can be done locally in a suitable editor (Visual Studio Code is widely used), or can be done web-based via the editor provided by Github if you are logged in."]}),"\n",(0,M.jsxs)(e.p,{children:[(0,M.jsx)(e.em,{children:(0,M.jsx)(e.a,{href:"glossary#github-actions",children:"Github Actions"})})," is a convenient way to automate things within Github by creating ",(0,M.jsx)(e.em,{children:"workflows"}),". For example, you can create a workflow that generates an updated version of the specification."]})]})}function o(t={}){const{wrapper:e}={...(0,n.R)(),...t.components};return e?(0,M.jsx)(e,{...t,children:(0,M.jsx)(u,{...t})}):u(t)}},1833:(t,e,i)=>{i.d(e,{A:()=>M});const M=i.p+"assets/images/logo-dif-ffce17bbeaba42a53d74faba6badd3ac.svg"},8512:(t,e,i)=>{i.d(e,{A:()=>M});const M="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbDpzcGFjZT0icHJlc2VydmUiIGlkPSJMYXllcl8xIiB4PSIwIiB5PSIwIgogICAgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgOTg0LjcgNDA1LjYiIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDk4NC43IDQwNS42Ij4KICAgIDxzdHlsZT4KICAgICAgICAuc3QwIHsKICAgICAgICAgICAgZmlsbDogIzMwNDk5ZgogICAgICAgIH0KCiAgICAgICAgLnN0MSB7CiAgICAgICAgICAgIGZpbGw6ICNhOWRkZTAKICAgICAgICB9CgogICAgICAgIC5zdDIgewogICAgICAgICAgICBmaWxsOiAjMjU4OWNhCiAgICAgICAgfQoKICAgICAgICAuc3QzIHsKICAgICAgICAgICAgZmlsbDogIzM2NTNhNAogICAgICAgIH0KICAgIDwvc3R5bGU+CiAgICA8cGF0aAogICAgICAgIGQ9Ik01NDEuNSAxNDkuOUg1MTZ2LTgwaC0zNC41VjQ3LjFINTc2djIyLjhoLTM0LjV6TTYyMi41IDEyMC40aC0xMC43djI5LjVoLTI1LjRWNDcuMWMxMC42LS40IDI3LjItLjkgNDEuMy0uOSAyNi42IDAgNDMuMiAxMi43IDQzLjIgMzYuNiAwIDEzLjgtNi42IDI0LjgtMTcuOCAzMS4xbDI0LjYgMzZoLTMwLjJsLTE4LjktMjkuNWgtNi4xem01LjYtMjEuNWMxMC40IDAgMTcuNC02LjUgMTcuNC0xNS45IDAtMTAuMy03LTE1LTE4LjQtMTUtNC43IDAtMTAuMS4yLTE1LjMuMnYzMC43aDE2LjN6TTc4MS43IDEwMy41YzAgMzAuNS0xOC42IDQ4LjctNDguMiA0OC43LTI5LjUgMC00Ny45LTE4LjEtNDcuOS00OC43VjQ3LjFoMjUuN3Y1Ni40YzAgMTUuNyA4LjYgMjQuOCAyMi4yIDI0LjhzMjIuNS05LjEgMjIuNS0yNC44VjQ3LjFoMjUuN3Y1Ni40ek04NzUuNyA3NC42Yy0xNC40LTQuNC0yNy4yLTYuOC0zNi02LjgtOC45IDAtMTQuNCAyLjctMTQuNCA5LjEgMCA2LjkgOC4zIDguMiAyMi44IDExLjIgMjEuMiA0LjUgMzUuMiAxMS4yIDM1LjIgMzEgMCAyMS45LTE3LjEgMzMuMS00Mi45IDMzLjEtMTMuMiAwLTI5LjgtMi45LTQ1LjgtOC45bDUuNy0yMi41YzE2LjUgNi4yIDI5LjkgOC42IDM5IDguOCAxMC45LjIgMTYuNi0yLjkgMTYuNi04LjggMC04LjMtMTEuNi05LjctMjQuNi0xMi40LTIzLTQuOC0zMy43LTEyLjItMzMuNy0zMC4yIDAtMjAuMyAxNi4yLTMyLjUgNDEuOS0zMi41IDE0LjIgMCAzMC44IDMuMiA0MS42IDdsLTUuNCAyMS45ek05NDkuMyAxNDkuOWgtMjUuNnYtODBoLTM0LjRWNDcuMWg5NC40djIyLjhoLTM0LjR6TTU4OC42IDIzNC43YzAgMzIuMi0yMi4xIDUzLjctNTQuMSA1My43cy01NC0yMS41LTU0LTUzLjcgMjEuOS01My43IDU0LTUzLjdjMzIgMCA1NC4xIDIxLjUgNTQuMSA1My43bS0xMS4yIDBjMC0yNi4xLTE3LjUtNDMuNS00Mi45LTQzLjUtMjUuMiAwLTQyLjggMTcuNC00Mi44IDQzLjVzMTcuNSA0My43IDQyLjggNDMuN2MyNS40IDAgNDIuOS0xNy42IDQyLjktNDMuN002MzIuNiAyODYuMWwtMzIuNy02OS45aDExLjVsMjYuOCA1Ny44IDI2LjYtNTcuOGgxMS4zbC0zMi41IDY5Ljl6TTc1MC45IDI0Ny4xYzAgMy41LS4yIDQuNy0uNiA4aC01OC4yYzEuNyAxNC40IDExLjYgMjMuOSAyNy4xIDIzLjkgOC45IDAgMTYuMi0xLjUgMjUuNy0zLjlsMS43IDguNWMtOS4xIDIuNy0xNi45IDQuOC0yNy43IDQuOC0yMy45IDAtMzcuOC0xNS42LTM3LjgtMzcuMyAwLTIyLjQgMTUuMS0zNyAzNi4zLTM3IDE5LjYtLjEgMzMuNCAxMi42IDMzLjUgMzNtLTU5LjEtLjJoNDkuNmMtLjItMTUuMy05LjctMjQuNS0yMy43LTI0LjUtMTUgMC0yNC43IDkuNy0yNS45IDI0LjVNODA3LjYgMjI0LjdjLTEwLjEgMC0xOC4zLjMtMjguNiAxLjV2NTkuOWgtMTAuNHYtNjcuOWMxMi43LTIuMyAyNS44LTMuNiAzOS0zLjZ2MTAuMXpNODU0LjkgMTgzLjNoMjUuNXYxMDIuOGgtMjUuNXpNOTg0LjcgMjIwYzAgMjMuNC0xNy41IDM4LjItNDQuNyAzOC4yaC0xNC4yVjI4NmgtMjUuNFYxODMuM2MxMi4xLS42IDI1LjUtMS4yIDM5LjYtMS4yIDI3LjIgMCA0NC43IDEzLjkgNDQuNyAzNy45bS00My4yIDE2YzEwLjQgMCAxNy44LTUuOSAxNy44LTE1LjkgMC0xMC4zLTcuNC0xNS45LTE3LjgtMTUuOS01LjMgMC0xMC42LjItMTUuNy4zVjIzNmgxNS43ek01MTUuMSAzNDAuN3YxMS42aC0yMS42djE3LjRoLTEyLjd2LTUxLjRoMzcuN3YxMS4zaC0yNXYxMS4xek01NzcuOSAzNDRjMCAxNi4xLTExLjMgMjYuOC0yNy42IDI2LjhzLTI3LjYtMTAuNy0yNy42LTI2LjggMTEuMy0yNi44IDI3LjYtMjYuOGMxNi4yIDAgMjcuNiAxMC43IDI3LjYgMjYuOG0tMTMuMiAwYzAtOS4xLTYtMTUtMTQuNC0xNXMtMTQuNCA2LTE0LjQgMTVjMCA5LjEgNiAxNS4xIDE0LjQgMTUuMXMxNC40LTYgMTQuNC0xNS4xTTYzMyAzNDYuNWMwIDE1LjMtOS4zIDI0LjMtMjQuMSAyNC4zLTE0LjcgMC0yNC05LjEtMjQtMjQuM3YtMjguMmgxMi44djI4LjJjMCA3LjkgNC4zIDEyLjQgMTEuMSAxMi40czExLjMtNC41IDExLjMtMTIuNHYtMjguMkg2MzN2MjguMnpNNjkwIDM2OS43aC0xMS42bC0yMy45LTI5Ljh2MjkuOGgtMTIuN3YtNTEuNGgxMS43bDIzLjggMzAuMXYtMzAuMUg2OTB6TTc0Ny4yIDM0My45YzAgMTYuMi0xMS4zIDI2LjQtMjYuNyAyNi40LTcuNiAwLTE0LjgtLjMtMjAuNC0uNnYtNTEuNGM1LjYtLjMgMTItLjYgMTkuMS0uNiAxNi43IDAgMjggMTAuMSAyOCAyNi4ybS0xMy4xIDBjMC05LTUuOS0xNC43LTE0LjMtMTQuNy0yLjIgMC00LjYgMC03IC4ydjI5LjVjMi42LjIgNS40LjIgOCAuMiA3LjQtLjIgMTMuMy02LjEgMTMuMy0xNS4yTTc2MS42IDM2OS43aC0xMy45bDIyLjktNTEuN2gxMS45bDIyLjggNTEuN2gtMTMuOGwtMy42LTguNWgtMjIuOGwtMy41IDguNXptNy45LTE5LjNoMTQuMWwtNy4xLTE3LjItNyAxNy4yek04MzAuNCAzNjkuN2gtMTIuOHYtNDBoLTE3LjJ2LTExLjRoNDcuMnYxMS40aC0xNy4yek04NTIuNyAzMTguM2gxMi44djUxLjRoLTEyLjh6TTkyOC40IDM0NGMwIDE2LjEtMTEuMyAyNi44LTI3LjYgMjYuOHMtMjcuNi0xMC43LTI3LjYtMjYuOCAxMS4zLTI2LjggMjcuNi0yNi44IDI3LjYgMTAuNyAyNy42IDI2LjhtLTEzLjEgMGMwLTkuMS02LTE1LTE0LjQtMTVzLTE0LjQgNi0xNC40IDE1YzAgOS4xIDYgMTUuMSAxNC40IDE1LjEgOC4zIDAgMTQuNC02IDE0LjQtMTUuMU05ODQuNSAzNjkuN2gtMTEuN0w5NDkgMzM5Ljl2MjkuOGgtMTIuN3YtNTEuNEg5NDhsMjMuOCAzMC4xdi0zMC4xaDEyLjd6IgogICAgICAgIGNsYXNzPSJzdDAiIC8+CiAgICA8cGF0aAogICAgICAgIGQ9Ik0yNzIgMTAuM2MxMy42LTcuOCAyNS45LTguNSAzNC43LTMuMWw5OC42IDU3LjRjLjIuMS4zLjIuNS4zLTguOC01LjItMjEuMS00LjYtMzQuNiAzLjJsLTE3NyAxMDEuOEwyMC41IDY4LjhjLTI3LjMtMTUuOC0yNy4zLTQxLjMgMC01N0M0Ny44LTQgOTItMy45IDExOS4zIDExLjhsNzUuNiA0My4xTDI3MiAxMC4zIgogICAgICAgIGNsYXNzPSJzdDEiIC8+CiAgICA8cGF0aAogICAgICAgIGQ9Ik05OS41IDU3LjRjLTE2LjQgOS40LTQyLjkgOS40LTU5LjMgMC0xNi40LTkuNS0xNi40LTI0LjggMC0zNC4yIDE2LjQtOS40IDQyLjktOS40IDU5LjMgMCAxNi40IDkuNSAxNi40IDI0LjggMCAzNC4yIgogICAgICAgIGNsYXNzPSJzdDIiIC8+CiAgICA8cGF0aAogICAgICAgIGQ9Ik0yOTUuMiAzMTIuMWMwIDE1LjgtNS41IDI3LTE0LjMgMzIuMmwtMTAwLjggNTcuOXMtLjEgMC0uMS4xYzguOC01LjMgMTQuMy0xNi40IDE0LjMtMzIuMlYxNjkuOWwxNzctMTAxLjhjMjctMTUuNiA0OC45LTIuNiA0OC45IDI5cy0yMS45IDY5LjktNDguOSA4NS41bC03Ni4xIDQzLjl2ODUuNnoiCiAgICAgICAgY2xhc3M9InN0MyIgLz4KICAgIDxwYXRoCiAgICAgICAgZD0iTTM0MS45IDE0Mi4zYzAgMTkgMTMuMSAyNi44IDI5LjMgMTcuNCAxNi4yLTkuNCAyOS4zLTMyLjMgMjkuMy01MS4zUzM4Ny40IDgxLjYgMzcxLjIgOTFjLTE2LjEgOS4zLTI5LjMgMzIuMy0yOS4zIDUxLjMiCiAgICAgICAgY2xhc3M9InN0MSIgLz4KICAgIDxwYXRoCiAgICAgICAgZD0iTTk2LjUgMzEzLjVjMCAzMS42IDIxLjkgNjkuOSA0OC45IDg1LjUgMjcgMTUuNiA0OC45IDIuNiA0OC45LTI5VjE2OS45TDIwLjUgNjguOEM2LjggNjEgMCA1MC42IDAgNDAuM1YxNTZjMCAxMC4zIDYuOCAyMC42IDIwLjUgMjguNWw3NiA0My44djg1LjJ6IgogICAgICAgIGNsYXNzPSJzdDIiIC8+CiAgICA8cGF0aAogICAgICAgIGQ9Ik0xNzQuNyAzNTguN2MwIDE5LTEzLjEgMjYuOC0yOS4zIDE3LjQtMTYuMi05LjQtMjkuMy0zMi4zLTI5LjMtNTEuM3MxMy4xLTI2LjggMjkuMy0xNy40YzE2LjIgOS4zIDI5LjMgMzIuMyAyOS4zIDUxLjMiCiAgICAgICAgY2xhc3M9InN0MyIgLz4KPC9zdmc+"},1415:(t,e,i)=>{i.d(e,{A:()=>M});const M=i.p+"assets/images/logo-3285df06c3ca44eedd8668ae78c78be3.svg"},8453:(t,e,i)=>{i.d(e,{R:()=>g,x:()=>I});var M=i(6540);const n={},j=M.createContext(n);function g(t){const e=M.useContext(j);return M.useMemo((function(){return"function"==typeof t?t(e):{...e,...t}}),[e,t])}function I(t){let e;return e=t.disableParentContext?"function"==typeof t.components?t.components(n):t.components||n:g(t.components),M.createElement(j.Provider,{value:e},t.children)}}}]); \ No newline at end of file diff --git a/assets/js/0e384e19.be1b80bb.js b/assets/js/0e384e19.be1b80bb.js deleted file mode 100644 index 2fbbe998..00000000 --- a/assets/js/0e384e19.be1b80bb.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3976],{619:(t,e,i)=>{i.r(e),i.d(e,{assets:()=>s,contentTitle:()=>g,default:()=>o,frontMatter:()=>j,metadata:()=>I,toc:()=>c});var M=i(4848),n=i(8453);const j={sidebar_position:1},g="Introduction",I={id:"intro",title:"Introduction",description:"Intro",source:"@site/docs/intro.md",sourceDirName:".",slug:"/intro",permalink:"/spec-up-t-website/docs/intro",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/intro.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Cheat sheet",permalink:"/spec-up-t-website/docs/cheat-sheet"},next:{title:"Roles",permalink:"/spec-up-t-website/docs/category/roles"}},s={},c=[{value:"Intro",id:"intro",level:2},{value:"History",id:"history",level:2},{value:"Spec-Up-T",id:"spec-up-t",level:2}];function u(t){const e={a:"a",admonition:"admonition",code:"code",em:"em",h1:"h1",h2:"h2",img:"img",li:"li",ol:"ol",p:"p",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,n.R)(),...t.components};return(0,M.jsxs)(M.Fragment,{children:[(0,M.jsx)(e.h1,{id:"introduction",children:"Introduction"}),"\n",(0,M.jsx)(e.h2,{id:"intro",children:"Intro"}),"\n",(0,M.jsxs)(e.p,{children:[(0,M.jsx)(e.strong,{children:"Spec-Up-T"})," is a tool that helps you write specifications. It is a tool for writing in Markdown and creates ",(0,M.jsx)(e.em,{children:"one"})," ",(0,M.jsx)(e.code,{children:"index.html"})," file."]}),"\n",(0,M.jsx)(e.p,{children:(0,M.jsxs)(e.strong,{children:["This ",(0,M.jsx)(e.code,{children:"index.html"})," file is the actual specification file that is the goal of it all."]})}),"\n",(0,M.jsxs)(e.p,{children:["This ",(0,M.jsx)(e.code,{children:"index.html"})," file is stand-alone and can be hosted on any web server. Or double-click it, and it will open in a browser."]}),"\n",(0,M.jsxs)(e.p,{children:["The Spec-Up-T code is available ",(0,M.jsx)(e.a,{href:"https://github.com/blockchainbird/spec-up-t",children:"on Github"}),"."]}),"\n",(0,M.jsxs)(e.p,{children:["Spec-Up-T is based on ",(0,M.jsx)(e.strong,{children:"Spec-Up"}),", and some of the content on this website is taken from the ",(0,M.jsx)(e.a,{href:"https://identity.foundation/spec-up/",children:"Spec-Up website"})," and ",(0,M.jsx)(e.a,{href:"https://github.com/decentralized-identity/spec-up",children:"repo"}),"."]}),"\n",(0,M.jsx)(e.admonition,{type:"tip",children:(0,M.jsxs)(e.p,{children:["You will have to install Spec-Up-T to start using it. Go straight to the ",(0,M.jsx)(e.a,{href:"/spec-up-t-website/docs/various-roles/admins-guide",children:"admin section"})," for instructions."]})}),"\n",(0,M.jsx)(e.h2,{id:"history",children:"History"}),"\n",(0,M.jsxs)(e.p,{children:["Spec-Up-T is based on Spec-Up (",(0,M.jsx)(e.a,{href:"https://github.com/decentralized-identity/spec-up",children:"Spec-Up on Github"}),")."]}),"\n",(0,M.jsxs)(e.p,{children:["Spec-Up is a tool provided by ",(0,M.jsx)(e.a,{href:"https://github.com/decentralized-identity",children:"DIF"})," (Decentralized Identity Foundation) and created by ",(0,M.jsx)(e.a,{href:"https://github.com/csuwildcat",children:"Daniel Buchner"}),"."]}),"\n",(0,M.jsx)("div",{class:"image-medium center",children:(0,M.jsx)(e.p,{children:(0,M.jsx)(e.img,{alt:"Logo ToIP and DIF combined",src:i(1415).A+"",width:"243",height:"108"})})}),"\n",(0,M.jsxs)(e.p,{children:["From the Spec-Up documentation: \u201c",(0,M.jsx)(e.em,{children:"Spec-Up"})," is a technical specification development tool that enables you to create rich specification documents for standards bodies and engineering projects by writing in an extended version of markdown that features all the bells and whistles - for example, advanced syntax highlighting, notice blocks, complex tables, charts, UML diagrams, and more.\u201d"]}),"\n",(0,M.jsxs)(e.table,{children:[(0,M.jsx)(e.thead,{children:(0,M.jsxs)(e.tr,{children:[(0,M.jsx)(e.th,{children:"Spec-Up"}),(0,M.jsx)(e.th,{children:"Spec-Up-T"})]})}),(0,M.jsxs)(e.tbody,{children:[(0,M.jsxs)(e.tr,{children:[(0,M.jsxs)(e.td,{children:[(0,M.jsx)("div",{class:"image-small",children:(0,M.jsx)(e.img,{alt:"DIF Logo",src:i(1833).A+"",width:"320",height:"108"})}),"Decentralized Identity Foundation"]}),(0,M.jsxs)(e.td,{children:[(0,M.jsx)("div",{class:"image-small",children:(0,M.jsx)(e.img,{alt:"ToIP Logo",src:i(8512).A+"",width:"985",height:"406"})}),"Trust over IP"]})]}),(0,M.jsxs)(e.tr,{children:[(0,M.jsx)(e.td,{children:"\u201cTogether we're building a new identity ecosystem\u201d"}),(0,M.jsx)(e.td,{children:"\u201cDeveloping a complete architecture for Internet Digital Trust. And a better Internet for everyone.\u201d"})]}),(0,M.jsxs)(e.tr,{children:[(0,M.jsx)(e.td,{children:(0,M.jsx)(e.a,{href:"https://github.com/decentralized-identity/spec-up",children:"Spec-Up on Github"})}),(0,M.jsx)(e.td,{children:(0,M.jsx)(e.a,{href:"https://github.com/blockchainbird/spec-up-t",children:"Spec-Up-T on Github"})})]}),(0,M.jsxs)(e.tr,{children:[(0,M.jsx)(e.td,{children:(0,M.jsx)(e.a,{href:"https://identity.foundation/",children:"DIF website"})}),(0,M.jsx)(e.td,{children:(0,M.jsx)(e.a,{href:"https://trustoverip.org/",children:"ToIP website"})})]})]})]}),"\n",(0,M.jsxs)(e.p,{children:[(0,M.jsx)(e.em,{children:"Spec-Up-T"})," is an expansion of ",(0,M.jsx)(e.a,{href:"https://github.com/decentralized-identity/spec-up",children:"DIF's Spec-Up"})," specifically for the needs of the Trust-over-IP foundation. Read more in the elaborate motivation in this technical article: ",(0,M.jsx)(e.a,{href:"/spec-up-t-website/docs/how-it-came-to-be",children:"How it came to be"}),"."]}),"\n",(0,M.jsx)(e.h2,{id:"spec-up-t",children:"Spec-Up-T"}),"\n",(0,M.jsx)(e.p,{children:"Spec-Up-T stays in sync with Spec-Up and currently adds the following extra functionality:"}),"\n",(0,M.jsxs)(e.ol,{children:["\n",(0,M.jsx)(e.li,{children:"Search & Find (only searches the main content, unlike the browser search);"}),"\n",(0,M.jsxs)(e.li,{children:["Splitter for Terms and Definition section following the ",(0,M.jsx)(e.a,{href:"https://trustoverip.github.io/ctwg-terminology-governance-guide/",children:"Termininology Governance Guide"})," and various meeting reports since ",(0,M.jsx)(e.a,{href:"https://wiki.trustoverip.org/display/HOME/2024-04-22+CTWG+Meeting+Notes",children:"CTWG April 2024"})]}),"\n",(0,M.jsx)(e.li,{children:"External Reference (xref) functionality"}),"\n",(0,M.jsx)(e.li,{children:"Small User Interface enhancements (back-to-top button, automatic copying of urls when clicking on anchors (\u201c$\u201d), menu-item highlighting)"}),"\n"]}),"\n",(0,M.jsxs)(e.p,{children:[(0,M.jsx)(e.em,{children:"Spec-Up"})," and ",(0,M.jsx)(e.em,{children:"Spec-Up-T"})," work on ",(0,M.jsx)(e.em,{children:"Github"}),". The specification is stored in a Github repo. Editing can be done locally in a suitable editor (Visual Studio Code is widely used), or can be done web-based via the editor provided by Github if you are logged in."]}),"\n",(0,M.jsxs)(e.p,{children:[(0,M.jsx)(e.em,{children:(0,M.jsx)(e.a,{href:"glossary#github-actions",children:"Github Actions"})})," is a convenient way to automate things within Github by creating ",(0,M.jsx)(e.em,{children:"workflows"}),". For example, you can create a workflow that generates an updated version of the specification."]})]})}function o(t={}){const{wrapper:e}={...(0,n.R)(),...t.components};return e?(0,M.jsx)(e,{...t,children:(0,M.jsx)(u,{...t})}):u(t)}},1833:(t,e,i)=>{i.d(e,{A:()=>M});const M=i.p+"assets/images/logo-dif-ffce17bbeaba42a53d74faba6badd3ac.svg"},8512:(t,e,i)=>{i.d(e,{A:()=>M});const M="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbDpzcGFjZT0icHJlc2VydmUiIGlkPSJMYXllcl8xIiB4PSIwIiB5PSIwIgogICAgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgOTg0LjcgNDA1LjYiIHZlcnNpb249IjEuMSIgdmlld0JveD0iMCAwIDk4NC43IDQwNS42Ij4KICAgIDxzdHlsZT4KICAgICAgICAuc3QwIHsKICAgICAgICAgICAgZmlsbDogIzMwNDk5ZgogICAgICAgIH0KCiAgICAgICAgLnN0MSB7CiAgICAgICAgICAgIGZpbGw6ICNhOWRkZTAKICAgICAgICB9CgogICAgICAgIC5zdDIgewogICAgICAgICAgICBmaWxsOiAjMjU4OWNhCiAgICAgICAgfQoKICAgICAgICAuc3QzIHsKICAgICAgICAgICAgZmlsbDogIzM2NTNhNAogICAgICAgIH0KICAgIDwvc3R5bGU+CiAgICA8cGF0aAogICAgICAgIGQ9Ik01NDEuNSAxNDkuOUg1MTZ2LTgwaC0zNC41VjQ3LjFINTc2djIyLjhoLTM0LjV6TTYyMi41IDEyMC40aC0xMC43djI5LjVoLTI1LjRWNDcuMWMxMC42LS40IDI3LjItLjkgNDEuMy0uOSAyNi42IDAgNDMuMiAxMi43IDQzLjIgMzYuNiAwIDEzLjgtNi42IDI0LjgtMTcuOCAzMS4xbDI0LjYgMzZoLTMwLjJsLTE4LjktMjkuNWgtNi4xem01LjYtMjEuNWMxMC40IDAgMTcuNC02LjUgMTcuNC0xNS45IDAtMTAuMy03LTE1LTE4LjQtMTUtNC43IDAtMTAuMS4yLTE1LjMuMnYzMC43aDE2LjN6TTc4MS43IDEwMy41YzAgMzAuNS0xOC42IDQ4LjctNDguMiA0OC43LTI5LjUgMC00Ny45LTE4LjEtNDcuOS00OC43VjQ3LjFoMjUuN3Y1Ni40YzAgMTUuNyA4LjYgMjQuOCAyMi4yIDI0LjhzMjIuNS05LjEgMjIuNS0yNC44VjQ3LjFoMjUuN3Y1Ni40ek04NzUuNyA3NC42Yy0xNC40LTQuNC0yNy4yLTYuOC0zNi02LjgtOC45IDAtMTQuNCAyLjctMTQuNCA5LjEgMCA2LjkgOC4zIDguMiAyMi44IDExLjIgMjEuMiA0LjUgMzUuMiAxMS4yIDM1LjIgMzEgMCAyMS45LTE3LjEgMzMuMS00Mi45IDMzLjEtMTMuMiAwLTI5LjgtMi45LTQ1LjgtOC45bDUuNy0yMi41YzE2LjUgNi4yIDI5LjkgOC42IDM5IDguOCAxMC45LjIgMTYuNi0yLjkgMTYuNi04LjggMC04LjMtMTEuNi05LjctMjQuNi0xMi40LTIzLTQuOC0zMy43LTEyLjItMzMuNy0zMC4yIDAtMjAuMyAxNi4yLTMyLjUgNDEuOS0zMi41IDE0LjIgMCAzMC44IDMuMiA0MS42IDdsLTUuNCAyMS45ek05NDkuMyAxNDkuOWgtMjUuNnYtODBoLTM0LjRWNDcuMWg5NC40djIyLjhoLTM0LjR6TTU4OC42IDIzNC43YzAgMzIuMi0yMi4xIDUzLjctNTQuMSA1My43cy01NC0yMS41LTU0LTUzLjcgMjEuOS01My43IDU0LTUzLjdjMzIgMCA1NC4xIDIxLjUgNTQuMSA1My43bS0xMS4yIDBjMC0yNi4xLTE3LjUtNDMuNS00Mi45LTQzLjUtMjUuMiAwLTQyLjggMTcuNC00Mi44IDQzLjVzMTcuNSA0My43IDQyLjggNDMuN2MyNS40IDAgNDIuOS0xNy42IDQyLjktNDMuN002MzIuNiAyODYuMWwtMzIuNy02OS45aDExLjVsMjYuOCA1Ny44IDI2LjYtNTcuOGgxMS4zbC0zMi41IDY5Ljl6TTc1MC45IDI0Ny4xYzAgMy41LS4yIDQuNy0uNiA4aC01OC4yYzEuNyAxNC40IDExLjYgMjMuOSAyNy4xIDIzLjkgOC45IDAgMTYuMi0xLjUgMjUuNy0zLjlsMS43IDguNWMtOS4xIDIuNy0xNi45IDQuOC0yNy43IDQuOC0yMy45IDAtMzcuOC0xNS42LTM3LjgtMzcuMyAwLTIyLjQgMTUuMS0zNyAzNi4zLTM3IDE5LjYtLjEgMzMuNCAxMi42IDMzLjUgMzNtLTU5LjEtLjJoNDkuNmMtLjItMTUuMy05LjctMjQuNS0yMy43LTI0LjUtMTUgMC0yNC43IDkuNy0yNS45IDI0LjVNODA3LjYgMjI0LjdjLTEwLjEgMC0xOC4zLjMtMjguNiAxLjV2NTkuOWgtMTAuNHYtNjcuOWMxMi43LTIuMyAyNS44LTMuNiAzOS0zLjZ2MTAuMXpNODU0LjkgMTgzLjNoMjUuNXYxMDIuOGgtMjUuNXpNOTg0LjcgMjIwYzAgMjMuNC0xNy41IDM4LjItNDQuNyAzOC4yaC0xNC4yVjI4NmgtMjUuNFYxODMuM2MxMi4xLS42IDI1LjUtMS4yIDM5LjYtMS4yIDI3LjIgMCA0NC43IDEzLjkgNDQuNyAzNy45bS00My4yIDE2YzEwLjQgMCAxNy44LTUuOSAxNy44LTE1LjkgMC0xMC4zLTcuNC0xNS45LTE3LjgtMTUuOS01LjMgMC0xMC42LjItMTUuNy4zVjIzNmgxNS43ek01MTUuMSAzNDAuN3YxMS42aC0yMS42djE3LjRoLTEyLjd2LTUxLjRoMzcuN3YxMS4zaC0yNXYxMS4xek01NzcuOSAzNDRjMCAxNi4xLTExLjMgMjYuOC0yNy42IDI2LjhzLTI3LjYtMTAuNy0yNy42LTI2LjggMTEuMy0yNi44IDI3LjYtMjYuOGMxNi4yIDAgMjcuNiAxMC43IDI3LjYgMjYuOG0tMTMuMiAwYzAtOS4xLTYtMTUtMTQuNC0xNXMtMTQuNCA2LTE0LjQgMTVjMCA5LjEgNiAxNS4xIDE0LjQgMTUuMXMxNC40LTYgMTQuNC0xNS4xTTYzMyAzNDYuNWMwIDE1LjMtOS4zIDI0LjMtMjQuMSAyNC4zLTE0LjcgMC0yNC05LjEtMjQtMjQuM3YtMjguMmgxMi44djI4LjJjMCA3LjkgNC4zIDEyLjQgMTEuMSAxMi40czExLjMtNC41IDExLjMtMTIuNHYtMjguMkg2MzN2MjguMnpNNjkwIDM2OS43aC0xMS42bC0yMy45LTI5Ljh2MjkuOGgtMTIuN3YtNTEuNGgxMS43bDIzLjggMzAuMXYtMzAuMUg2OTB6TTc0Ny4yIDM0My45YzAgMTYuMi0xMS4zIDI2LjQtMjYuNyAyNi40LTcuNiAwLTE0LjgtLjMtMjAuNC0uNnYtNTEuNGM1LjYtLjMgMTItLjYgMTkuMS0uNiAxNi43IDAgMjggMTAuMSAyOCAyNi4ybS0xMy4xIDBjMC05LTUuOS0xNC43LTE0LjMtMTQuNy0yLjIgMC00LjYgMC03IC4ydjI5LjVjMi42LjIgNS40LjIgOCAuMiA3LjQtLjIgMTMuMy02LjEgMTMuMy0xNS4yTTc2MS42IDM2OS43aC0xMy45bDIyLjktNTEuN2gxMS45bDIyLjggNTEuN2gtMTMuOGwtMy42LTguNWgtMjIuOGwtMy41IDguNXptNy45LTE5LjNoMTQuMWwtNy4xLTE3LjItNyAxNy4yek04MzAuNCAzNjkuN2gtMTIuOHYtNDBoLTE3LjJ2LTExLjRoNDcuMnYxMS40aC0xNy4yek04NTIuNyAzMTguM2gxMi44djUxLjRoLTEyLjh6TTkyOC40IDM0NGMwIDE2LjEtMTEuMyAyNi44LTI3LjYgMjYuOHMtMjcuNi0xMC43LTI3LjYtMjYuOCAxMS4zLTI2LjggMjcuNi0yNi44IDI3LjYgMTAuNyAyNy42IDI2LjhtLTEzLjEgMGMwLTkuMS02LTE1LTE0LjQtMTVzLTE0LjQgNi0xNC40IDE1YzAgOS4xIDYgMTUuMSAxNC40IDE1LjEgOC4zIDAgMTQuNC02IDE0LjQtMTUuMU05ODQuNSAzNjkuN2gtMTEuN0w5NDkgMzM5Ljl2MjkuOGgtMTIuN3YtNTEuNEg5NDhsMjMuOCAzMC4xdi0zMC4xaDEyLjd6IgogICAgICAgIGNsYXNzPSJzdDAiIC8+CiAgICA8cGF0aAogICAgICAgIGQ9Ik0yNzIgMTAuM2MxMy42LTcuOCAyNS45LTguNSAzNC43LTMuMWw5OC42IDU3LjRjLjIuMS4zLjIuNS4zLTguOC01LjItMjEuMS00LjYtMzQuNiAzLjJsLTE3NyAxMDEuOEwyMC41IDY4LjhjLTI3LjMtMTUuOC0yNy4zLTQxLjMgMC01N0M0Ny44LTQgOTItMy45IDExOS4zIDExLjhsNzUuNiA0My4xTDI3MiAxMC4zIgogICAgICAgIGNsYXNzPSJzdDEiIC8+CiAgICA8cGF0aAogICAgICAgIGQ9Ik05OS41IDU3LjRjLTE2LjQgOS40LTQyLjkgOS40LTU5LjMgMC0xNi40LTkuNS0xNi40LTI0LjggMC0zNC4yIDE2LjQtOS40IDQyLjktOS40IDU5LjMgMCAxNi40IDkuNSAxNi40IDI0LjggMCAzNC4yIgogICAgICAgIGNsYXNzPSJzdDIiIC8+CiAgICA8cGF0aAogICAgICAgIGQ9Ik0yOTUuMiAzMTIuMWMwIDE1LjgtNS41IDI3LTE0LjMgMzIuMmwtMTAwLjggNTcuOXMtLjEgMC0uMS4xYzguOC01LjMgMTQuMy0xNi40IDE0LjMtMzIuMlYxNjkuOWwxNzctMTAxLjhjMjctMTUuNiA0OC45LTIuNiA0OC45IDI5cy0yMS45IDY5LjktNDguOSA4NS41bC03Ni4xIDQzLjl2ODUuNnoiCiAgICAgICAgY2xhc3M9InN0MyIgLz4KICAgIDxwYXRoCiAgICAgICAgZD0iTTM0MS45IDE0Mi4zYzAgMTkgMTMuMSAyNi44IDI5LjMgMTcuNCAxNi4yLTkuNCAyOS4zLTMyLjMgMjkuMy01MS4zUzM4Ny40IDgxLjYgMzcxLjIgOTFjLTE2LjEgOS4zLTI5LjMgMzIuMy0yOS4zIDUxLjMiCiAgICAgICAgY2xhc3M9InN0MSIgLz4KICAgIDxwYXRoCiAgICAgICAgZD0iTTk2LjUgMzEzLjVjMCAzMS42IDIxLjkgNjkuOSA0OC45IDg1LjUgMjcgMTUuNiA0OC45IDIuNiA0OC45LTI5VjE2OS45TDIwLjUgNjguOEM2LjggNjEgMCA1MC42IDAgNDAuM1YxNTZjMCAxMC4zIDYuOCAyMC42IDIwLjUgMjguNWw3NiA0My44djg1LjJ6IgogICAgICAgIGNsYXNzPSJzdDIiIC8+CiAgICA8cGF0aAogICAgICAgIGQ9Ik0xNzQuNyAzNTguN2MwIDE5LTEzLjEgMjYuOC0yOS4zIDE3LjQtMTYuMi05LjQtMjkuMy0zMi4zLTI5LjMtNTEuM3MxMy4xLTI2LjggMjkuMy0xNy40YzE2LjIgOS4zIDI5LjMgMzIuMyAyOS4zIDUxLjMiCiAgICAgICAgY2xhc3M9InN0MyIgLz4KPC9zdmc+"},1415:(t,e,i)=>{i.d(e,{A:()=>M});const M=i.p+"assets/images/logo-3285df06c3ca44eedd8668ae78c78be3.svg"},8453:(t,e,i)=>{i.d(e,{R:()=>g,x:()=>I});var M=i(6540);const n={},j=M.createContext(n);function g(t){const e=M.useContext(j);return M.useMemo((function(){return"function"==typeof t?t(e):{...e,...t}}),[e,t])}function I(t){let e;return e=t.disableParentContext?"function"==typeof t.components?t.components(n):t.components||n:g(t.components),M.createElement(j.Provider,{value:e},t.children)}}}]); \ No newline at end of file diff --git a/assets/js/2be7da73.2e8a273b.js b/assets/js/2be7da73.2e8a273b.js new file mode 100644 index 00000000..7c2be470 --- /dev/null +++ b/assets/js/2be7da73.2e8a273b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4192],{8232:(e,t,i)=>{i.r(t),i.d(t,{assets:()=>r,contentTitle:()=>a,default:()=>d,frontMatter:()=>s,metadata:()=>c,toc:()=>p});var n=i(4848),o=i(8453);const s={sidebar_position:18},a="Q & A",c={id:"q-and-a",title:"Q & A",description:"Questions and answers about Spec-Up-T.",source:"@site/docs/q-and-a.md",sourceDirName:".",slug:"/q-and-a",permalink:"/spec-up-t-website/docs/q-and-a",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/q-and-a.md",tags:[],version:"current",sidebarPosition:18,frontMatter:{sidebar_position:18},sidebar:"tutorialSidebar",previous:{title:"How it came to be",permalink:"/spec-up-t-website/docs/how-it-came-to-be"},next:{title:"Maintaining this site",permalink:"/spec-up-t-website/docs/this-site-maintainers"}},r={},p=[{value:"When I use Spec-Up-T do I get all the updates of Spec-Up too?",id:"when-i-use-spec-up-t-do-i-get-all-the-updates-of-spec-up-too",level:2},{value:"Can't we wait with the split up until because it might mess up thing for people curating the documents?",id:"cant-we-wait-with-the-split-up-until-because-it-might-mess-up-thing-for-people-curating-the-documents",level:2},{value:"How to get the original Spec-Up?",id:"how-to-get-the-original-spec-up",level:2},{value:"Where to find Spec-Up-T?",id:"where-to-find-spec-up-t",level:2},{value:"Why do I need to put commands on the command line?",id:"why-do-i-need-to-put-commands-on-the-command-line",level:2},{value:"What is the command for help?",id:"what-is-the-command-for-help",level:2},{value:"Why does Spec-Up-T look so complicated?",id:"why-does-spec-up-t-look-so-complicated",level:2},{value:"For who is Spec-Up-T?",id:"for-who-is-spec-up-t",level:2},{value:"Do you have a how-to video to get started with Spec-Up-T?",id:"do-you-have-a-how-to-video-to-get-started-with-spec-up-t",level:2},{value:"Where can I find the motivation of this move to create the Spec-Up bolt on "Spec-Up-T"?",id:"where-can-i-find-the-motivation-of-this-move-to-create-the-spec-up-bolt-on-spec-up-t",level:2},{value:"Why doesn't the Spec-Up-T repo generate a github.io-served specification itself?",id:"why-doesnt-the-spec-up-t-repo-generate-a-githubio-served-specification-itself",level:2},{value:"How to integrate Spec-Up-T in other systems",id:"how-to-integrate-spec-up-t-in-other-systems",level:2},{value:"No",id:"no",level:3},{value:"Yes",id:"yes",level:3}];function h(e){const t={a:"a",admonition:"admonition",code:"code",em:"em",h1:"h1",h2:"h2",h3:"h3",p:"p",pre:"pre",strong:"strong",...(0,o.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(t.h1,{id:"q--a",children:"Q & A"}),"\n",(0,n.jsx)(t.p,{children:"Questions and answers about Spec-Up-T."}),"\n",(0,n.jsxs)(t.h2,{id:"when-i-use-spec-up-t-do-i-get-all-the-updates-of-spec-up-too",children:["When I use ",(0,n.jsx)(t.em,{children:"Spec-Up-T"})," do I get all the updates of ",(0,n.jsx)(t.em,{children:"Spec-Up"})," too?"]}),"\n",(0,n.jsxs)(t.p,{children:["Yes. The administrator team behind Spec-Up-T will keep ",(0,n.jsx)(t.a,{href:"https://github.com/decentralized-identity/spec-up",children:"Spec-Up of DIF"})," as a strict subset of code and features."]}),"\n",(0,n.jsx)(t.h2,{id:"cant-we-wait-with-the-split-up-until-because-it-might-mess-up-thing-for-people-curating-the-documents",children:"Can't we wait with the split up until because it might mess up thing for people curating the documents?"}),"\n",(0,n.jsx)(t.p,{children:"Splitting Spec-Up content over files is not an issue for people working on the content and looking at the github.io pages of the specification. It won't affect them. They see the same generated one-page document as a result. The index.html only has enhanced features. They can offer PRs as they always could."}),"\n",(0,n.jsxs)(t.h2,{id:"how-to-get-the-original-spec-up",children:["How to get the original ",(0,n.jsx)(t.em,{children:"Spec-Up"}),"?"]}),"\n",(0,n.jsxs)(t.p,{children:["I don't want ",(0,n.jsx)(t.em,{children:"Spec-Up-T"}),", I want the original ",(0,n.jsx)(t.em,{children:"Spec-Up"}),", but then with their improvements to be able to xref, and keep track of history etc. Is this possible?"]}),"\n",(0,n.jsxs)(t.p,{children:["Some improvements have been incorporated into Spec-Up. Spec-Up will remain a subset of Spec-Up-T. The extensions you will find only in Spec-Up-T are listed in the ",(0,n.jsx)(t.a,{href:"intro",children:"introduction"}),"."]}),"\n",(0,n.jsx)(t.h2,{id:"where-to-find-spec-up-t",children:"Where to find Spec-Up-T?"}),"\n",(0,n.jsxs)(t.p,{children:["Spec-Up-T is a github.com repo under Blockchainbird user: ",(0,n.jsx)(t.a,{href:"https://github.com/blockchainbird/spec-up-t",children:"https://github.com/blockchainbird/spec-up-t"}),". You can find the source code there."]}),"\n",(0,n.jsxs)(t.admonition,{type:"warning",children:[(0,n.jsxs)(t.p,{children:["Unlike the DIF Spec-Up repository, the Spec-Up-T repository ",(0,n.jsx)(t.strong,{children:"does not generate an example specification on github.io"}),"."]}),(0,n.jsxs)(t.p,{children:["This functionality has been moved to the Spec-Up-T ",(0,n.jsx)(t.em,{children:"installer"}),"."]}),(0,n.jsxs)(t.p,{children:["For more details, refer to ",(0,n.jsx)(t.a,{href:"/spec-up-t-website/docs/various-roles/admins-guide/#installation",children:"the installation section in the admin guide"}),"."]})]}),"\n",(0,n.jsx)(t.h2,{id:"why-do-i-need-to-put-commands-on-the-command-line",children:"Why do I need to put commands on the command line?"}),"\n",(0,n.jsx)(t.p,{children:"Brief answer: because Spec-Up-T is based on NPM packaging and version control."}),"\n",(0,n.jsx)(t.p,{children:"To understand why more thoroughly: Spec-Up-T is team-work tooling based on NPM, git versioning and (automated) github deployment. Therefore participants incept and maintain local version of specifications on their computer, manage updates to and fro github.com and generate local test and finally production sites (github actions github.io site).\nWith this type of creation and collegial management of versions and updates come commands on the command line."}),"\n",(0,n.jsx)(t.h2,{id:"what-is-the-command-for-help",children:"What is the command for help?"}),"\n",(0,n.jsx)(t.p,{children:"TODO: npx Spec-Up-T --help gives all commands I can give."}),"\n",(0,n.jsx)(t.h2,{id:"why-does-spec-up-t-look-so-complicated",children:"Why does Spec-Up-T look so complicated?"}),"\n",(0,n.jsx)(t.p,{children:"Spec-Up was simple, Spec-Up-T looks complicated, why?"}),"\n",(0,n.jsx)(t.p,{children:'Spec-Up is a subset of Spec-Up-T. The expansion "T" complicates the handling of term definitions, - references and external references (xrefs) of term in other repo\'s glossaries.\nToIP added functionality as well: diff tooling, search bar, and navigation aids.'}),"\n",(0,n.jsx)(t.p,{children:"On the other hand, Spec-Up-T is installable via just a single command:"}),"\n",(0,n.jsx)(t.pre,{children:(0,n.jsx)(t.code,{children:"$ npx create-spec-up-t my-spec-up-t-website\n"})}),"\n",(0,n.jsx)(t.h2,{id:"for-who-is-spec-up-t",children:"For who is Spec-Up-T?"}),"\n",(0,n.jsxs)(t.p,{children:["The ",(0,n.jsx)(t.strong,{children:"repo, command-line tools and the Docusaurus User guide is for Authors, Curators and Administrators"})," of repo's that use Spec-Up-T to run there specification effort in text, images, terms & definitions, etc."]}),"\n",(0,n.jsxs)(t.p,{children:["The ",(0,n.jsx)(t.strong,{children:"resulting github.io site is intended for any user"})," interested in the content of the specification."]}),"\n",(0,n.jsx)(t.h2,{id:"do-you-have-a-how-to-video-to-get-started-with-spec-up-t",children:"Do you have a how-to video to get started with Spec-Up-T?"}),"\n",(0,n.jsxs)(t.p,{children:["Yes. Find it here: ",(0,n.jsx)(t.a,{href:"/spec-up-t-website/docs/various-roles/admins-guide/#short-video",children:"Instruction starter package"})]}),"\n",(0,n.jsx)(t.h2,{id:"where-can-i-find-the-motivation-of-this-move-to-create-the-spec-up-bolt-on-spec-up-t",children:'Where can I find the motivation of this move to create the Spec-Up bolt on "Spec-Up-T"?'}),"\n",(0,n.jsxs)(t.p,{children:["Our enhancement proposal and git governance strategy is here: ",(0,n.jsx)(t.a,{href:"https://hackmd.io/s1TEBBluQBSL10ZT5yRVPw",children:"https://hackmd.io/s1TEBBluQBSL10ZT5yRVPw"})]}),"\n",(0,n.jsx)(t.h2,{id:"why-doesnt-the-spec-up-t-repo-generate-a-githubio-served-specification-itself",children:"Why doesn't the Spec-Up-T repo generate a github.io-served specification itself?"}),"\n",(0,n.jsx)(t.p,{children:"The repo Spec-Up-T doesn't generate an example specification on github.io. because it's not the purpose of this repo. Your example site will pop up when \u201cspec-up-t\u201d is installed in node_modules of spec-up-t-starterpack when you run npm install."}),"\n",(0,n.jsx)(t.h2,{id:"how-to-integrate-spec-up-t-in-other-systems",children:"How to integrate Spec-Up-T in other systems"}),"\n",(0,n.jsx)(t.p,{children:"We already have a Docusaurus (or Jekyll, etc) site. Is it possible to have a Spec-Up-T specification inside this site?"}),"\n",(0,n.jsx)(t.p,{children:"Yes and No."}),"\n",(0,n.jsx)(t.h3,{id:"no",children:"No"}),"\n",(0,n.jsx)(t.p,{children:"Installing Spec-Up-T inside Docusaurus (or Jekyll, etc) is possible, however it is not recommended practice to have nested node_modules directories. Docusaurus (or Jekyll, etc) have their own node_modules directory. You can install Spec-Up-T in a sub directory in which it will get it's own node_modules directory after installation but this is not recommended."}),"\n",(0,n.jsx)(t.h3,{id:"yes",children:"Yes"}),"\n",(0,n.jsx)(t.p,{children:"You can install Spec-Up-T in it's own separate directory in your file system and generate the index.html file. This file can be moved around freely and live in it's own directory, for example in the /static directory of your Docusaurus site. You can rename index.html to foo.html or whatever you like. You could link to this file from other files in your Docusaurus site."}),"\n",(0,n.jsx)(t.p,{children:"However, the Spec-Up-T file (a one-page website) will have it's own menu and have no connection to your Docusaurus site."})]})}function d(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(h,{...e})}):h(e)}},8453:(e,t,i)=>{i.d(t,{R:()=>a,x:()=>c});var n=i(6540);const o={},s=n.createContext(o);function a(e){const t=n.useContext(s);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function c(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:a(e.components),n.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/2be7da73.b90105fe.js b/assets/js/2be7da73.b90105fe.js deleted file mode 100644 index 269b177a..00000000 --- a/assets/js/2be7da73.b90105fe.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4192],{8232:(e,t,i)=>{i.r(t),i.d(t,{assets:()=>r,contentTitle:()=>a,default:()=>d,frontMatter:()=>s,metadata:()=>c,toc:()=>p});var n=i(4848),o=i(8453);const s={sidebar_position:18},a="Q & A",c={id:"q-and-a",title:"Q & A",description:"Questions and answers about Spec-Up-T.",source:"@site/docs/q-and-a.md",sourceDirName:".",slug:"/q-and-a",permalink:"/spec-up-t-website/docs/q-and-a",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/q-and-a.md",tags:[],version:"current",sidebarPosition:18,frontMatter:{sidebar_position:18},sidebar:"tutorialSidebar",previous:{title:"How it came to be",permalink:"/spec-up-t-website/docs/how-it-came-to-be"},next:{title:"Maintaining this site",permalink:"/spec-up-t-website/docs/this-site-maintainers"}},r={},p=[{value:"When I use Spec-Up-T do I get all the updates of Spec-Up too?",id:"when-i-use-spec-up-t-do-i-get-all-the-updates-of-spec-up-too",level:2},{value:"Can't we wait with the split up until because it might mess up thing for people curating the documents?",id:"cant-we-wait-with-the-split-up-until-because-it-might-mess-up-thing-for-people-curating-the-documents",level:2},{value:"How to get the original Spec-Up?",id:"how-to-get-the-original-spec-up",level:2},{value:"Where to find Spec-Up-T?",id:"where-to-find-spec-up-t",level:2},{value:"Why do I need to put commands on the command line?",id:"why-do-i-need-to-put-commands-on-the-command-line",level:2},{value:"What is the command for help?",id:"what-is-the-command-for-help",level:2},{value:"Why does Spec-Up-T look so complicated?",id:"why-does-spec-up-t-look-so-complicated",level:2},{value:"For who is Spec-Up-T?",id:"for-who-is-spec-up-t",level:2},{value:"Do you have a how-to video to get started with Spec-Up-T?",id:"do-you-have-a-how-to-video-to-get-started-with-spec-up-t",level:2},{value:"Where can I find the motivation of this move to create the Spec-Up bolt on "Spec-Up-T"?",id:"where-can-i-find-the-motivation-of-this-move-to-create-the-spec-up-bolt-on-spec-up-t",level:2},{value:"Why doesn't the Spec-Up-T repo generate a github.io-served specification itself?",id:"why-doesnt-the-spec-up-t-repo-generate-a-githubio-served-specification-itself",level:2},{value:"How to integrate Spec-Up-T in other systems",id:"how-to-integrate-spec-up-t-in-other-systems",level:2},{value:"No",id:"no",level:3},{value:"Yes",id:"yes",level:3}];function h(e){const t={a:"a",admonition:"admonition",code:"code",em:"em",h1:"h1",h2:"h2",h3:"h3",p:"p",pre:"pre",strong:"strong",...(0,o.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(t.h1,{id:"q--a",children:"Q & A"}),"\n",(0,n.jsx)(t.p,{children:"Questions and answers about Spec-Up-T."}),"\n",(0,n.jsxs)(t.h2,{id:"when-i-use-spec-up-t-do-i-get-all-the-updates-of-spec-up-too",children:["When I use ",(0,n.jsx)(t.em,{children:"Spec-Up-T"})," do I get all the updates of ",(0,n.jsx)(t.em,{children:"Spec-Up"})," too?"]}),"\n",(0,n.jsxs)(t.p,{children:["Yes. The administrator team behind Spec-Up-T will keep ",(0,n.jsx)(t.a,{href:"https://github.com/decentralized-identity/spec-up",children:"Spec-Up of DIF"})," as a strict subset of code and features."]}),"\n",(0,n.jsx)(t.h2,{id:"cant-we-wait-with-the-split-up-until-because-it-might-mess-up-thing-for-people-curating-the-documents",children:"Can't we wait with the split up until because it might mess up thing for people curating the documents?"}),"\n",(0,n.jsx)(t.p,{children:"Splitting Spec-Up content over files is not an issue for people working on the content and looking at the github.io pages of the specification. It won't affect them. They see the same generated one-page document as a result. The index.html only has enhanced features. They can offer PRs as they always could."}),"\n",(0,n.jsxs)(t.h2,{id:"how-to-get-the-original-spec-up",children:["How to get the original ",(0,n.jsx)(t.em,{children:"Spec-Up"}),"?"]}),"\n",(0,n.jsxs)(t.p,{children:["I don't want ",(0,n.jsx)(t.em,{children:"Spec-Up-T"}),", I want the original ",(0,n.jsx)(t.em,{children:"Spec-Up"}),", but then with their improvements to be able to xref, and keep track of history etc. Is this possible?"]}),"\n",(0,n.jsxs)(t.p,{children:["Some improvements have been incorporated into Spec-Up. Spec-Up will remain a subset of Spec-Up-T. The extensions you will find only in Spec-Up-T are listed in the ",(0,n.jsx)(t.a,{href:"intro",children:"introduction"}),"."]}),"\n",(0,n.jsx)(t.h2,{id:"where-to-find-spec-up-t",children:"Where to find Spec-Up-T?"}),"\n",(0,n.jsxs)(t.p,{children:["Spec-Up-T is a github.com repo under Blockchainbird user: ",(0,n.jsx)(t.a,{href:"https://github.com/blockchainbird/spec-up-t",children:"https://github.com/blockchainbird/spec-up-t"}),". You can find the source code there."]}),"\n",(0,n.jsxs)(t.admonition,{type:"warning",children:[(0,n.jsxs)(t.p,{children:["Unlike the DIF Spec-Up repository, the Spec-Up-T repository ",(0,n.jsx)(t.strong,{children:"does not generate an example specification on github.io"}),"."]}),(0,n.jsxs)(t.p,{children:["This functionality has been moved to the Spec-Up-T ",(0,n.jsx)(t.em,{children:"installer"}),"."]}),(0,n.jsxs)(t.p,{children:["For more details, refer to ",(0,n.jsx)(t.a,{href:"/spec-up-t-website/docs/various-roles/admins-guide#installation",children:"the installation section in the admin guide"}),"."]})]}),"\n",(0,n.jsx)(t.h2,{id:"why-do-i-need-to-put-commands-on-the-command-line",children:"Why do I need to put commands on the command line?"}),"\n",(0,n.jsx)(t.p,{children:"Brief answer: because Spec-Up-T is based on NPM packaging and version control."}),"\n",(0,n.jsx)(t.p,{children:"To understand why more thoroughly: Spec-Up-T is team-work tooling based on NPM, git versioning and (automated) github deployment. Therefore participants incept and maintain local version of specifications on their computer, manage updates to and fro github.com and generate local test and finally production sites (github actions github.io site).\nWith this type of creation and collegial management of versions and updates come commands on the command line."}),"\n",(0,n.jsx)(t.h2,{id:"what-is-the-command-for-help",children:"What is the command for help?"}),"\n",(0,n.jsx)(t.p,{children:"TODO: npx Spec-Up-T --help gives all commands I can give."}),"\n",(0,n.jsx)(t.h2,{id:"why-does-spec-up-t-look-so-complicated",children:"Why does Spec-Up-T look so complicated?"}),"\n",(0,n.jsx)(t.p,{children:"Spec-Up was simple, Spec-Up-T looks complicated, why?"}),"\n",(0,n.jsx)(t.p,{children:'Spec-Up is a subset of Spec-Up-T. The expansion "T" complicates the handling of term definitions, - references and external references (xrefs) of term in other repo\'s glossaries.\nToIP added functionality as well: diff tooling, search bar, and navigation aids.'}),"\n",(0,n.jsx)(t.p,{children:"On the other hand, Spec-Up-T is installable via just a single command:"}),"\n",(0,n.jsx)(t.pre,{children:(0,n.jsx)(t.code,{children:"$ npx create-spec-up-t my-spec-up-t-website\n"})}),"\n",(0,n.jsx)(t.h2,{id:"for-who-is-spec-up-t",children:"For who is Spec-Up-T?"}),"\n",(0,n.jsxs)(t.p,{children:["The ",(0,n.jsx)(t.strong,{children:"repo, command-line tools and the Docusaurus User guide is for Authors, Curators and Administrators"})," of repo's that use Spec-Up-T to run there specification effort in text, images, terms & definitions, etc."]}),"\n",(0,n.jsxs)(t.p,{children:["The ",(0,n.jsx)(t.strong,{children:"resulting github.io site is intended for any user"})," interested in the content of the specification."]}),"\n",(0,n.jsx)(t.h2,{id:"do-you-have-a-how-to-video-to-get-started-with-spec-up-t",children:"Do you have a how-to video to get started with Spec-Up-T?"}),"\n",(0,n.jsxs)(t.p,{children:["Yes. Find it here: ",(0,n.jsx)(t.a,{href:"/spec-up-t-website/docs/various-roles/admins-guide#short-video",children:"Instruction starter package"})]}),"\n",(0,n.jsx)(t.h2,{id:"where-can-i-find-the-motivation-of-this-move-to-create-the-spec-up-bolt-on-spec-up-t",children:'Where can I find the motivation of this move to create the Spec-Up bolt on "Spec-Up-T"?'}),"\n",(0,n.jsxs)(t.p,{children:["Our enhancement proposal and git governance strategy is here: ",(0,n.jsx)(t.a,{href:"https://hackmd.io/s1TEBBluQBSL10ZT5yRVPw",children:"https://hackmd.io/s1TEBBluQBSL10ZT5yRVPw"})]}),"\n",(0,n.jsx)(t.h2,{id:"why-doesnt-the-spec-up-t-repo-generate-a-githubio-served-specification-itself",children:"Why doesn't the Spec-Up-T repo generate a github.io-served specification itself?"}),"\n",(0,n.jsx)(t.p,{children:"The repo Spec-Up-T doesn't generate an example specification on github.io. because it's not the purpose of this repo. Your example site will pop up when \u201cspec-up-t\u201d is installed in node_modules of spec-up-t-starterpack when you run npm install."}),"\n",(0,n.jsx)(t.h2,{id:"how-to-integrate-spec-up-t-in-other-systems",children:"How to integrate Spec-Up-T in other systems"}),"\n",(0,n.jsx)(t.p,{children:"We already have a Docusaurus (or Jekyll, etc) site. Is it possible to have a Spec-Up-T specification inside this site?"}),"\n",(0,n.jsx)(t.p,{children:"Yes and No."}),"\n",(0,n.jsx)(t.h3,{id:"no",children:"No"}),"\n",(0,n.jsx)(t.p,{children:"Installing Spec-Up-T inside Docusaurus (or Jekyll, etc) is possible, however it is not recommended practice to have nested node_modules directories. Docusaurus (or Jekyll, etc) have their own node_modules directory. You can install Spec-Up-T in a sub directory in which it will get it's own node_modules directory after installation but this is not recommended."}),"\n",(0,n.jsx)(t.h3,{id:"yes",children:"Yes"}),"\n",(0,n.jsx)(t.p,{children:"You can install Spec-Up-T in it's own separate directory in your file system and generate the index.html file. This file can be moved around freely and live in it's own directory, for example in the /static directory of your Docusaurus site. You can rename index.html to foo.html or whatever you like. You could link to this file from other files in your Docusaurus site."}),"\n",(0,n.jsx)(t.p,{children:"However, the Spec-Up-T file (a one-page website) will have it's own menu and have no connection to your Docusaurus site."})]})}function d(e={}){const{wrapper:t}={...(0,o.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(h,{...e})}):h(e)}},8453:(e,t,i)=>{i.d(t,{R:()=>a,x:()=>c});var n=i(6540);const o={},s=n.createContext(o);function a(e){const t=n.useContext(s);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function c(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(o):e.components||o:a(e.components),n.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/30c1de03.0b2cffed.js b/assets/js/30c1de03.0b2cffed.js new file mode 100644 index 00000000..22d44ade --- /dev/null +++ b/assets/js/30c1de03.0b2cffed.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[996],{3169:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>l,contentTitle:()=>r,default:()=>h,frontMatter:()=>o,metadata:()=>a,toc:()=>d});var s=i(4848),t=i(8453);const o={sidebar_position:15},r="Developers Guide",a={id:"various-roles/developers-guide",title:"Developers Guide",description:"This page is the developer's guide for the Spec-Up-T system.",source:"@site/docs/various-roles/developers-guide.md",sourceDirName:"various-roles",slug:"/various-roles/developers-guide",permalink:"/spec-up-t-website/docs/various-roles/developers-guide",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/developers-guide.md",tags:[],version:"current",sidebarPosition:15,frontMatter:{sidebar_position:15},sidebar:"tutorialSidebar",previous:{title:"Intro",permalink:"/spec-up-t-website/docs/various-roles/readers-guide/introduction"},next:{title:"Technical skills needed",permalink:"/spec-up-t-website/docs/various-roles/technical-skills-needed"}},l={},d=[{value:"How do you get a new version of Spec-Up-T live?",id:"how-do-you-get-a-new-version-of-spec-up-t-live",level:2},{value:"Adding functionality",id:"adding-functionality",level:2},{value:"Adding client-side functionality",id:"adding-client-side-functionality",level:3},{value:"Gulp",id:"gulp",level:3},{value:"Adding server-side functionality",id:"adding-server-side-functionality",level:3},{value:"Handling data",id:"handling-data",level:2},{value:"Github API",id:"github-api",level:2},{value:"Example of API response:",id:"example-of-api-response",level:3},{value:"Publishing to GitHub and NPM",id:"publishing-to-github-and-npm",level:2}];function c(e){const n={a:"a",admonition:"admonition",code:"code",h1:"h1",h2:"h2",h3:"h3",li:"li",p:"p",pre:"pre",ul:"ul",...(0,t.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h1,{id:"developers-guide",children:"Developers Guide"}),"\n",(0,s.jsx)(n.p,{children:"This page is the developer's guide for the Spec-Up-T system."}),"\n",(0,s.jsx)(n.h2,{id:"how-do-you-get-a-new-version-of-spec-up-t-live",children:"How do you get a new version of Spec-Up-T live?"}),"\n",(0,s.jsx)(n.p,{children:"If you want to add new functionality to Spec-Up-T, you will find below how to proceed."}),"\n",(0,s.jsxs)(n.admonition,{type:"danger",children:[(0,s.jsxs)(n.p,{children:["Be aware that your specification is just one file, an ",(0,s.jsx)(n.code,{children:"index.html"})," file. Keeping this file as small as possible should be a priority when adding functionality. There is no lazy loading or optimization. It is basic HTML plus embedded CSS and JS. (This applies only to client-side functionality and not to server-side things you do from the command line during the \u201cbuild\u201d phase. That's code that doesn't end up in the ",(0,s.jsx)(n.code,{children:"index.html"})," after all.)"]}),(0,s.jsx)(n.p,{children:"Also, realize that the GitHub API reaches its limit fairly quickly, especially if there is no authentication. So, in everything, keep in mind that the number of requests should remain minimal."})]}),"\n",(0,s.jsx)(n.p,{children:"Two repos come into play:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.a,{href:"https://github.com/blockchainbird/spec-up-t",children:"The Spec-Up-T repo"}),", with ",(0,s.jsx)(n.a,{href:"https://www.npmjs.com/package/spec-up-t",children:"associated NPM package"})]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.a,{href:"https://github.com/blockchainbird/spec-up-t-starter-pack",children:"The Spec-Up-T installer repo"}),", with ",(0,s.jsx)(n.a,{href:"https://www.npmjs.com/package/create-spec-up-t",children:"associated NPM package"})]}),"\n"]}),"\n",(0,s.jsxs)(n.p,{children:["The Spec-Up-T installer uses Spec-Up-T as a package in node_modules, which is installed via ",(0,s.jsx)(n.code,{children:"npm install"})," after you install the Spec-Up-T installer itself (see ",(0,s.jsx)(n.a,{href:"/spec-up-t-website/docs/various-roles/admins-guide/",children:"Admins Guide"})," for this)."]}),"\n",(0,s.jsx)(n.p,{children:"The topic of updating Git repositories goes too far here; you can find a lot of information about that online."}),"\n",(0,s.jsx)(n.p,{children:"How to publish an updated package version to NPM:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:['Update the "version" in ',(0,s.jsx)(n.code,{children:"package.json"})," to a higher number (use ",(0,s.jsx)(n.a,{href:"https://semver.org/",children:"SemVer"}),"); for example, go from\n",(0,s.jsx)(n.code,{children:'"version": "0.11.29"'})," to ",(0,s.jsx)(n.code,{children:'"version": "0.11.30"'})]}),"\n",(0,s.jsxs)(n.li,{children:["Run ",(0,s.jsx)(n.code,{children:"npm publish"})]}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:"Note: The Spec-Up-T installer repo has two package.json files. One is in the root and belongs to the repo itself. The other is inside the directory that contains a full Spec-Up-T installation. This is the package.json that will be used later. The first one is only used for the installation itself. For simplicity, keep both version numbers the same."}),"\n",(0,s.jsx)(n.p,{children:"The new package will be available as soon as it is uploaded."}),"\n",(0,s.jsx)(n.h2,{id:"adding-functionality",children:"Adding functionality"}),"\n",(0,s.jsxs)(n.p,{children:["The ",(0,s.jsx)(n.code,{children:"Spec-Up-T"})," tool is written in ",(0,s.jsx)(n.code,{children:"JavaScript,"})," client-side, and server-side (Node.js)."]}),"\n",(0,s.jsx)(n.h3,{id:"adding-client-side-functionality",children:"Adding client-side functionality"}),"\n",(0,s.jsxs)(n.p,{children:["Client-side JavaScript and CSS can be found in these directories: ",(0,s.jsx)(n.code,{children:"/assets/js"})," and ",(0,s.jsx)(n.code,{children:"/assets/css"}),"."]}),"\n",(0,s.jsxs)(n.p,{children:['This code must first be "compiled" before it enters ',(0,s.jsx)(n.code,{children:"index.html"}),". Compiling, in this case, means that it will end up in the directory ",(0,s.jsx)(n.code,{children:"/assets/compiled"}),". If it is there, it will end up in a newly generated ",(0,s.jsx)(n.code,{children:"index.html"})," via the ",(0,s.jsx)(n.code,{children:"render"})," step. For rendering, see the admin section."]}),"\n",(0,s.jsx)(n.p,{children:"This is the command to compile:"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-bash",children:"gulp compile`\n"})}),"\n",(0,s.jsx)(n.p,{children:'So, if you have written client-side JavaScript or custom CSS, you need to take the following steps to get this code working (the "$" at the beginning is the command prompt, and you should not type it):'}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"$ gulp compile\n"})}),"\n",(0,s.jsx)(n.p,{children:"Wait for the code to finish. Then:"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"$ npm run render\n"})}),"\n",(0,s.jsxs)(n.p,{children:["Now, your ",(0,s.jsx)(n.code,{children:"index.html"})," file should be created or updated."]}),"\n",(0,s.jsx)(n.h3,{id:"gulp",children:"Gulp"}),"\n",(0,s.jsxs)(n.p,{children:["Of course, you can only use Gulp if you have it ",(0,s.jsx)(n.a,{href:"https://gulpjs.com/docs/en/getting-started/quick-start",children:"installed"}),"."]}),"\n",(0,s.jsx)(n.admonition,{type:"warning",children:(0,s.jsx)(n.p,{children:"If Gulp suddenly stops working even though it worked before, it could be because you are using NVM and have a different Node.js version active."})}),"\n",(0,s.jsx)(n.h3,{id:"adding-server-side-functionality",children:"Adding server-side functionality"}),"\n",(0,s.jsxs)(n.p,{children:["The Node.js scripts that run server-side are in the root of the Spec-Up-T repo and the ",(0,s.jsx)(n.code,{children:"/src/"})," directory."]}),"\n",(0,s.jsx)(n.p,{children:"How can you run and test Node.js code locally without publishing it on npm first?"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Clone the Spec-Up-T repo"}),"\n",(0,s.jsx)(n.li,{children:"Install a Spec-Up-T via the installer"}),"\n",(0,s.jsxs)(n.li,{children:["Run ",(0,s.jsx)(n.code,{children:"npm install"})," in the Spec-Up-T website that you installed via the installer"]}),"\n"]}),"\n",(0,s.jsxs)(n.p,{children:["Generally, if you now run ",(0,s.jsx)(n.code,{children:"npm run render,"})," it will call the scripts from the Spec-Up-T inside ",(0,s.jsx)(n.code,{children:"node_modules."})]}),"\n",(0,s.jsxs)(n.p,{children:["In the ",(0,s.jsx)(n.code,{children:"scripts"})," section of the ",(0,s.jsx)(n.code,{children:"package.json"})," file for your Spec-Up-T installation, you will find commands like this:"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-json",children:'"scripts": {\n "render": "node -e \\"require(\'spec-up-t\')({ nowatch: true })\\"",\n "xrefs": "node -e \\"require(\'spec-up-t/src/get-xrefs-data.js\').getXrefsData()\\""\n}\n'})}),"\n",(0,s.jsxs)(n.p,{children:["These are calls to the ",(0,s.jsx)(n.code,{children:"Spec-Up-T"})," library in ",(0,s.jsx)(n.code,{children:"node_modules"}),"."]}),"\n",(0,s.jsx)(n.p,{children:"However, we want to test locally. To do this, we will call the scripts from your local Spec-Up-T clone, where you are developing."}),"\n",(0,s.jsx)(n.p,{children:"Type this into your terminal:"}),"\n",(0,s.jsx)(n.admonition,{type:"warning",children:(0,s.jsx)(n.p,{children:"It is only tested on macOS."})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-bash",children:"node -e \"require('/Users/***/path/to/your/spec-up-t/index.js')({ nowatch: true })\"\n"})}),"\n",(0,s.jsx)(n.p,{children:"or"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-bash",children:"node -e \"require('/Users/***/path/to/your/spec-up-t/spec-up-t/src/get-xrefs-data.js').getXrefsData()\"\n"})}),"\n",(0,s.jsx)(n.p,{children:"Adjust this based on what you need."}),"\n",(0,s.jsx)(n.h2,{id:"handling-data",children:"Handling data"}),"\n",(0,s.jsx)(n.p,{children:"Since everything is contained in one HTML file, the question arises as to how we store and call data. After all, we can't load external JSON because we want to keep everything within this one HTML file."}),"\n",(0,s.jsx)(n.p,{children:"The solution is to include the data as an embedded JavaScript variable. In the development environment (the installation on your file system from where you invoke commands on the command line), you can choose to store the data as JSON as well. However, in order to get it working in the HTML file, you will also have to include a JS variable. You will have to arrange this through Gulp."}),"\n",(0,s.jsx)(n.h2,{id:"github-api",children:"Github API"}),"\n",(0,s.jsx)(n.h3,{id:"example-of-api-response",children:"Example of API response:"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-json",children:"[\n {\n sha: '117b86fa676c0bd3030c16e8bbb87ebaa61af576',\n node_id: 'C_kwDOMi-o_toAKDExN2I4NmZhNjc2YzBiZDMwMzBjMTZlOGJiYjg3ZWJhYTYxYWY1NzY',\n commit: {\n author: [Object],\n committer: [Object],\n message: 'first commit',\n tree: [Object],\n url: 'https://api.github.com/repos/****/****/git/commits/117b86fa676c0bd3030c16e8bbb87ebaa61af576',\n comment_count: 0,\n verification: [Object]\n },\n url: 'https://api.github.com/repos/****/****/commits/117b86fa676c0bd3030c16e8bbb87ebaa61af576',\n html_url: 'https://github.com/****/****/commit/117b86fa676c0bd3030c16e8bbb87ebaa61af576',\n comments_url: 'https://api.github.com/repos/****/****/commits/117b86fa676c0bd3030c16e8bbb87ebaa61af576/comments',\n author: {\n login: '****',\n id: 0,\n node_id: '****',\n avatar_url: 'https://avatars.githubusercontent.com/u/****?v=4',\n gravatar_id: '',\n url: 'https://api.github.com/users/****',\n html_url: 'https://github.com/****',\n followers_url: 'https://api.github.com/users/****/followers',\n following_url: 'https://api.github.com/users/****/following{/other_user}',\n gists_url: 'https://api.github.com/users/****/gists{/gist_id}',\n starred_url: 'https://api.github.com/users/****/starred{/owner}{/repo}',\n subscriptions_url: 'https://api.github.com/users/****/subscriptions',\n organizations_url: 'https://api.github.com/users/****/orgs',\n repos_url: 'https://api.github.com/users/****/repos',\n events_url: 'https://api.github.com/users/****/events{/privacy}',\n received_events_url: 'https://api.github.com/users/****/received_events',\n type: 'User',\n site_admin: false\n },\n committer: {\n login: '****',\n id: 0,\n node_id: '****',\n avatar_url: 'https://avatars.githubusercontent.com/u/****?v=4',\n gravatar_id: '',\n url: 'https://api.github.com/users/****',\n html_url: 'https://github.com/****',\n followers_url: 'https://api.github.com/users/****/followers',\n following_url: 'https://api.github.com/users/****/following{/other_user}',\n gists_url: 'https://api.github.com/users/****/gists{/gist_id}',\n starred_url: 'https://api.github.com/users/****/starred{/owner}{/repo}',\n subscriptions_url: 'https://api.github.com/users/****/subscriptions',\n organizations_url: 'https://api.github.com/users/****/orgs',\n repos_url: 'https://api.github.com/users/****/repos',\n events_url: 'https://api.github.com/users/****/events{/privacy}',\n received_events_url: 'https://api.github.com/users/****/received_events',\n type: 'User',\n site_admin: false\n },\n parents: []\n }\n]\n\n"})}),"\n",(0,s.jsx)(n.h2,{id:"publishing-to-github-and-npm",children:"Publishing to GitHub and NPM"}),"\n",(0,s.jsx)(n.p,{children:"The suggested way to publish to GitHub and NPM is as follows:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Make your changes and commit them:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-bash",children:'git add .\ngit commit -m "Add new feature"\n'})}),"\n",(0,s.jsx)(n.admonition,{type:"info",children:(0,s.jsx)(n.p,{children:"Merging branches is not described here. It's generally best to run npm version after merging your feature branch into the main (or master) branch. This ensures that the version bump and tag are applied to the final state of the code that will be released."})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Update the version in package.json, commit the change, and create a Git tag:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-bash",children:'npm version -m "Bump version to %s"\n'})}),"\n",(0,s.jsx)(n.admonition,{type:"info",children:(0,s.jsx)(n.p,{children:"The %s in the npm version command is a placeholder that gets replaced with the new version number. When you run the command, npm automatically substitutes %s with the version number you specified."})}),"\n",(0,s.jsxs)(n.p,{children:["Replace ",(0,s.jsx)(n.code,{children:""})," with the new version number (e.g., 0.11.32)."]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Push the changes and the tag to the remote repository:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-bash",children:"git push origin main --tags\n"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Publish the new version to npm:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-bash",children:"npm publish\n"})})]})}function h(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(c,{...e})}):c(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>r,x:()=>a});var s=i(6540);const t={},o=s.createContext(t);function r(e){const n=s.useContext(o);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:r(e.components),s.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/30c1de03.70911222.js b/assets/js/30c1de03.70911222.js deleted file mode 100644 index ab7389f2..00000000 --- a/assets/js/30c1de03.70911222.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[996],{3169:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>l,contentTitle:()=>o,default:()=>h,frontMatter:()=>r,metadata:()=>a,toc:()=>d});var s=i(4848),t=i(8453);const r={sidebar_position:15},o="Developers Guide",a={id:"various-roles/developers-guide",title:"Developers Guide",description:"This page is the developer's guide for the Spec-Up-T system.",source:"@site/docs/various-roles/developers-guide.md",sourceDirName:"various-roles",slug:"/various-roles/developers-guide",permalink:"/spec-up-t-website/docs/various-roles/developers-guide",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/developers-guide.md",tags:[],version:"current",sidebarPosition:15,frontMatter:{sidebar_position:15},sidebar:"tutorialSidebar",previous:{title:"Readers Guide",permalink:"/spec-up-t-website/docs/various-roles/readers-guide/introduction"},next:{title:"Spec-Up-T demo",permalink:"/spec-up-t-website/docs/spec-up-t-demo-site"}},l={},d=[{value:"How do you get a new version of Spec-Up-T live?",id:"how-do-you-get-a-new-version-of-spec-up-t-live",level:2},{value:"Adding functionality",id:"adding-functionality",level:2},{value:"Adding client-side functionality",id:"adding-client-side-functionality",level:3},{value:"Gulp",id:"gulp",level:3},{value:"Adding server-side functionality",id:"adding-server-side-functionality",level:3},{value:"Handling data",id:"handling-data",level:2},{value:"Github API",id:"github-api",level:2},{value:"Example of API response:",id:"example-of-api-response",level:3},{value:"Publishing to GitHub and NPM",id:"publishing-to-github-and-npm",level:2}];function c(e){const n={a:"a",admonition:"admonition",code:"code",h1:"h1",h2:"h2",h3:"h3",li:"li",p:"p",pre:"pre",ul:"ul",...(0,t.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h1,{id:"developers-guide",children:"Developers Guide"}),"\n",(0,s.jsx)(n.p,{children:"This page is the developer's guide for the Spec-Up-T system."}),"\n",(0,s.jsx)(n.h2,{id:"how-do-you-get-a-new-version-of-spec-up-t-live",children:"How do you get a new version of Spec-Up-T live?"}),"\n",(0,s.jsx)(n.p,{children:"If you want to add new functionality to Spec-Up-T, you will find below how to proceed."}),"\n",(0,s.jsxs)(n.admonition,{type:"danger",children:[(0,s.jsxs)(n.p,{children:["Be aware that your specification is just one file, an ",(0,s.jsx)(n.code,{children:"index.html"})," file. Keeping this file as small as possible should be a priority when adding functionality. There is no lazy loading or optimization. It is basic HTML plus embedded CSS and JS."]}),(0,s.jsx)(n.p,{children:"Also, realize that the GitHub API reaches its limit fairly quickly, especially if there is no authentication. So, in everything, keep in mind that the number of requests should remain minimal."})]}),"\n",(0,s.jsx)(n.p,{children:"Two repos come into play:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.a,{href:"https://github.com/blockchainbird/spec-up-t",children:"The Spec-Up-T repo"}),", with ",(0,s.jsx)(n.a,{href:"https://www.npmjs.com/package/spec-up-t",children:"associated NPM package"})]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.a,{href:"https://github.com/blockchainbird/spec-up-t-starter-pack",children:"The Spec-Up-T installer repo"}),", with ",(0,s.jsx)(n.a,{href:"https://www.npmjs.com/package/create-spec-up-t",children:"associated NPM package"})]}),"\n"]}),"\n",(0,s.jsxs)(n.p,{children:["The Spec-Up-T installer uses Spec-Up-T as a package in node_modules, which is installed via ",(0,s.jsx)(n.code,{children:"npm install"})," after you install the Spec-Up-T installer itself (see ",(0,s.jsx)(n.a,{href:"/spec-up-t-website/docs/various-roles/admins-guide",children:"Admins Guide"})," for this)."]}),"\n",(0,s.jsx)(n.p,{children:"The topic of updating Git repositories goes too far here; you can find a lot of information about that online."}),"\n",(0,s.jsx)(n.p,{children:"How to publish an updated package version to NPM:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:['Update the "version" in ',(0,s.jsx)(n.code,{children:"package.json"})," to a higher number (use ",(0,s.jsx)(n.a,{href:"https://semver.org/",children:"SemVer"}),"); for example, go from\n",(0,s.jsx)(n.code,{children:'"version": "0.11.29"'})," to ",(0,s.jsx)(n.code,{children:'"version": "0.11.30"'})]}),"\n",(0,s.jsxs)(n.li,{children:["Run ",(0,s.jsx)(n.code,{children:"npm publish"})]}),"\n"]}),"\n",(0,s.jsx)(n.p,{children:"Note: The Spec-Up-T installer repo has two package.json files. One is in the root and belongs to the repo itself. The other is inside the directory that contains a full Spec-Up-T installation. This is the package.json that will be used later. The first one is only used for the installation itself. For simplicity, keep both version numbers the same."}),"\n",(0,s.jsx)(n.p,{children:"The new package will be available as soon as it is uploaded."}),"\n",(0,s.jsx)(n.h2,{id:"adding-functionality",children:"Adding functionality"}),"\n",(0,s.jsxs)(n.p,{children:["The ",(0,s.jsx)(n.code,{children:"Spec-Up-T"})," tool is written in ",(0,s.jsx)(n.code,{children:"JavaScript,"})," client-side, and server-side (Node.js)."]}),"\n",(0,s.jsx)(n.h3,{id:"adding-client-side-functionality",children:"Adding client-side functionality"}),"\n",(0,s.jsxs)(n.p,{children:["Client-side JavaScript and CSS can be found in these directories: ",(0,s.jsx)(n.code,{children:"/assets/js"})," and ",(0,s.jsx)(n.code,{children:"/assets/css"}),"."]}),"\n",(0,s.jsxs)(n.p,{children:['This code must first be "compiled" before it enters ',(0,s.jsx)(n.code,{children:"index.html"}),". Compiling, in this case, means that it will end up in the directory ",(0,s.jsx)(n.code,{children:"/assets/compiled"}),". If it is there, it will end up in a newly generated ",(0,s.jsx)(n.code,{children:"index.html"})," via the ",(0,s.jsx)(n.code,{children:"render"})," step. For rendering, see the admin section."]}),"\n",(0,s.jsx)(n.p,{children:"This is the command to compile:"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-bash",children:"gulp compile`\n"})}),"\n",(0,s.jsx)(n.p,{children:'So, if you have written client-side JavaScript or custom CSS, you need to take the following steps to get this code working (the "$" at the beginning is the command prompt, and you should not type it):'}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"$ gulp compile\n"})}),"\n",(0,s.jsx)(n.p,{children:"Wait for the code to finish. Then:"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{children:"$ npm run render\n"})}),"\n",(0,s.jsxs)(n.p,{children:["Now, your ",(0,s.jsx)(n.code,{children:"index.html"})," file should be created or updated."]}),"\n",(0,s.jsx)(n.h3,{id:"gulp",children:"Gulp"}),"\n",(0,s.jsxs)(n.p,{children:["Of course, you can only use Gulp if you have it ",(0,s.jsx)(n.a,{href:"https://gulpjs.com/docs/en/getting-started/quick-start",children:"installed"}),"."]}),"\n",(0,s.jsx)(n.admonition,{type:"warning",children:(0,s.jsx)(n.p,{children:"If Gulp suddenly stops working even though it worked before, it could be because you are using NVM and have a different Node.js version active."})}),"\n",(0,s.jsx)(n.h3,{id:"adding-server-side-functionality",children:"Adding server-side functionality"}),"\n",(0,s.jsxs)(n.p,{children:["The Node.js scripts that run server-side are in the root of the Spec-Up-T repo and the ",(0,s.jsx)(n.code,{children:"/src/"})," directory."]}),"\n",(0,s.jsx)(n.p,{children:"How can you run and test Node.js code locally without publishing it on npm first?"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Clone the Spec-Up-T repo"}),"\n",(0,s.jsx)(n.li,{children:"Install a Spec-Up-T via the installer"}),"\n",(0,s.jsxs)(n.li,{children:["Run ",(0,s.jsx)(n.code,{children:"npm install"})," in the Spec-Up-T website that you installed via the installer"]}),"\n"]}),"\n",(0,s.jsxs)(n.p,{children:["Generally, if you now run ",(0,s.jsx)(n.code,{children:"npm run render,"})," it will call the scripts from the Spec-Up-T inside ",(0,s.jsx)(n.code,{children:"node_modules."})]}),"\n",(0,s.jsxs)(n.p,{children:["In the ",(0,s.jsx)(n.code,{children:"scripts"})," section of the ",(0,s.jsx)(n.code,{children:"package.json"})," file for your Spec-Up-T installation, you will find commands like this:"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-json",children:'"scripts": {\n "render": "node -e \\"require(\'spec-up-t\')({ nowatch: true })\\"",\n "xrefs": "node -e \\"require(\'spec-up-t/src/get-xrefs-data.js\').getXrefsData()\\""\n}\n'})}),"\n",(0,s.jsxs)(n.p,{children:["These are calls to the ",(0,s.jsx)(n.code,{children:"Spec-Up-T"})," library in ",(0,s.jsx)(n.code,{children:"node_modules"}),"."]}),"\n",(0,s.jsx)(n.p,{children:"However, we want to test locally. To do this, we will call the scripts from your local Spec-Up-T clone, where you are developing."}),"\n",(0,s.jsx)(n.p,{children:"Type this into your terminal:"}),"\n",(0,s.jsx)(n.admonition,{type:"warning",children:(0,s.jsx)(n.p,{children:"It is only tested on macOS."})}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-bash",children:"node -e \"require('/Users/***/path/to/your/spec-up-t/index.js')({ nowatch: true })\"\n"})}),"\n",(0,s.jsx)(n.p,{children:"or"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-bash",children:"node -e \"require('/Users/***/path/to/your/spec-up-t/spec-up-t/src/get-xrefs-data.js').getXrefsData()\"\n"})}),"\n",(0,s.jsx)(n.p,{children:"Adjust this based on what you need."}),"\n",(0,s.jsx)(n.h2,{id:"handling-data",children:"Handling data"}),"\n",(0,s.jsx)(n.p,{children:"Since everything is contained in one HTML file, the question arises as to how we store and call data. After all, we can't load external JSON because we want to keep everything within this one HTML file."}),"\n",(0,s.jsx)(n.p,{children:"The solution is to include the data as an embedded JavaScript variable. In the development environment (the installation on your file system from where you invoke commands on the command line), you can choose to store the data as JSON as well. However, in order to get it working in the HTML file, you will also have to include a JS variable. You will have to arrange this through Gulp."}),"\n",(0,s.jsx)(n.h2,{id:"github-api",children:"Github API"}),"\n",(0,s.jsx)(n.h3,{id:"example-of-api-response",children:"Example of API response:"}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-json",children:"[\n {\n sha: '117b86fa676c0bd3030c16e8bbb87ebaa61af576',\n node_id: 'C_kwDOMi-o_toAKDExN2I4NmZhNjc2YzBiZDMwMzBjMTZlOGJiYjg3ZWJhYTYxYWY1NzY',\n commit: {\n author: [Object],\n committer: [Object],\n message: 'first commit',\n tree: [Object],\n url: 'https://api.github.com/repos/****/****/git/commits/117b86fa676c0bd3030c16e8bbb87ebaa61af576',\n comment_count: 0,\n verification: [Object]\n },\n url: 'https://api.github.com/repos/****/****/commits/117b86fa676c0bd3030c16e8bbb87ebaa61af576',\n html_url: 'https://github.com/****/****/commit/117b86fa676c0bd3030c16e8bbb87ebaa61af576',\n comments_url: 'https://api.github.com/repos/****/****/commits/117b86fa676c0bd3030c16e8bbb87ebaa61af576/comments',\n author: {\n login: '****',\n id: 0,\n node_id: '****',\n avatar_url: 'https://avatars.githubusercontent.com/u/****?v=4',\n gravatar_id: '',\n url: 'https://api.github.com/users/****',\n html_url: 'https://github.com/****',\n followers_url: 'https://api.github.com/users/****/followers',\n following_url: 'https://api.github.com/users/****/following{/other_user}',\n gists_url: 'https://api.github.com/users/****/gists{/gist_id}',\n starred_url: 'https://api.github.com/users/****/starred{/owner}{/repo}',\n subscriptions_url: 'https://api.github.com/users/****/subscriptions',\n organizations_url: 'https://api.github.com/users/****/orgs',\n repos_url: 'https://api.github.com/users/****/repos',\n events_url: 'https://api.github.com/users/****/events{/privacy}',\n received_events_url: 'https://api.github.com/users/****/received_events',\n type: 'User',\n site_admin: false\n },\n committer: {\n login: '****',\n id: 0,\n node_id: '****',\n avatar_url: 'https://avatars.githubusercontent.com/u/****?v=4',\n gravatar_id: '',\n url: 'https://api.github.com/users/****',\n html_url: 'https://github.com/****',\n followers_url: 'https://api.github.com/users/****/followers',\n following_url: 'https://api.github.com/users/****/following{/other_user}',\n gists_url: 'https://api.github.com/users/****/gists{/gist_id}',\n starred_url: 'https://api.github.com/users/****/starred{/owner}{/repo}',\n subscriptions_url: 'https://api.github.com/users/****/subscriptions',\n organizations_url: 'https://api.github.com/users/****/orgs',\n repos_url: 'https://api.github.com/users/****/repos',\n events_url: 'https://api.github.com/users/****/events{/privacy}',\n received_events_url: 'https://api.github.com/users/****/received_events',\n type: 'User',\n site_admin: false\n },\n parents: []\n }\n]\n\n"})}),"\n",(0,s.jsx)(n.h2,{id:"publishing-to-github-and-npm",children:"Publishing to GitHub and NPM"}),"\n",(0,s.jsx)(n.p,{children:"The suggested way to publish to GitHub and NPM is as follows:"}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Make your changes and commit them:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-bash",children:'git add .\ngit commit -m "Add new feature"\n'})}),"\n",(0,s.jsx)(n.admonition,{type:"info",children:(0,s.jsx)(n.p,{children:"Merging branches is not described here. It's generally best to run npm version after merging your feature branch into the main (or master) branch. This ensures that the version bump and tag are applied to the final state of the code that will be released."})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Update the version in package.json, commit the change, and create a Git tag:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-bash",children:'npm version -m "Bump version to %s"\n'})}),"\n",(0,s.jsx)(n.admonition,{type:"info",children:(0,s.jsx)(n.p,{children:"The %s in the npm version command is a placeholder that gets replaced with the new version number. When you run the command, npm automatically substitutes %s with the version number you specified."})}),"\n",(0,s.jsxs)(n.p,{children:["Replace ",(0,s.jsx)(n.code,{children:""})," with the new version number (e.g., 0.11.32)."]}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Push the changes and the tag to the remote repository:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-bash",children:"git push origin main --tags\n"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsx)(n.li,{children:"Publish the new version to npm:"}),"\n"]}),"\n",(0,s.jsx)(n.pre,{children:(0,s.jsx)(n.code,{className:"language-bash",children:"npm publish\n"})})]})}function h(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(c,{...e})}):c(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>o,x:()=>a});var s=i(6540);const t={},r=s.createContext(t);function o(e){const n=s.useContext(r);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:o(e.components),s.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/36846233.c37fef1a.js b/assets/js/36846233.c37fef1a.js deleted file mode 100644 index 920a822d..00000000 --- a/assets/js/36846233.c37fef1a.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4274],{5999:(e,t,o)=>{o.r(t),o.d(t,{assets:()=>a,contentTitle:()=>s,default:()=>p,frontMatter:()=>i,metadata:()=>c,toc:()=>u});var n=o(4848),r=o(8453);const i={sidebar_position:1},s="Curators Guide",c={id:"various-roles/curators-guide/introduction",title:"Curators Guide",description:"Under construction",source:"@site/docs/various-roles/curators-guide/introduction.md",sourceDirName:"various-roles/curators-guide",slug:"/various-roles/curators-guide/introduction",permalink:"/spec-up-t-website/docs/various-roles/curators-guide/introduction",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/curators-guide/introduction.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Curators Guide",permalink:"/spec-up-t-website/docs/category/curators-guide"},next:{title:"Glossary Maintainers Guide",permalink:"/spec-up-t-website/docs/category/glossary-maintainers-guide"}},a={},u=[];function d(e){const t={admonition:"admonition",h1:"h1",p:"p",...(0,r.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(t.h1,{id:"curators-guide",children:"Curators Guide"}),"\n",(0,n.jsx)(t.admonition,{type:"warning",children:(0,n.jsx)(t.p,{children:"Under construction"})}),"\n",(0,n.jsx)(t.p,{children:"Uses an IDE and git and browser extensions to check the overall content of a specification and logical consistency & meaning of term definition in a particular context."}),"\n",(0,n.jsx)(t.p,{children:"The curator uses browser extensions to harvest a personal collection of term definitions based on those recommended by the specification authors."}),"\n",(0,n.jsx)(t.p,{children:"A curator can:\nFork a Spec-Up-T repo to his/her user account on GitHub.com\nOptionally fetch and merge this repo to an IDE on a local computer.\nConfigure the user account to publish the GitHub pages generated by Spec-Up-T\nPush change to the user account of the curator to show the admin role\nOffer a PR with changes and compare them across forks."})]})}function p(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(d,{...e})}):d(e)}},8453:(e,t,o)=>{o.d(t,{R:()=>s,x:()=>c});var n=o(6540);const r={},i=n.createContext(r);function s(e){const t=n.useContext(i);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function c(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:s(e.components),n.createElement(i.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/36846233.c72a9bfb.js b/assets/js/36846233.c72a9bfb.js new file mode 100644 index 00000000..68b4f39e --- /dev/null +++ b/assets/js/36846233.c72a9bfb.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4274],{5999:(e,t,o)=>{o.r(t),o.d(t,{assets:()=>a,contentTitle:()=>s,default:()=>p,frontMatter:()=>i,metadata:()=>c,toc:()=>u});var n=o(4848),r=o(8453);const i={sidebar_position:1},s="Intro",c={id:"various-roles/curators-guide/introduction",title:"Intro",description:"Under construction",source:"@site/docs/various-roles/curators-guide/introduction.md",sourceDirName:"various-roles/curators-guide",slug:"/various-roles/curators-guide/introduction",permalink:"/spec-up-t-website/docs/various-roles/curators-guide/introduction",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/curators-guide/introduction.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Curators Guide",permalink:"/spec-up-t-website/docs/category/curators-guide"},next:{title:"Glossary Maintainers Guide",permalink:"/spec-up-t-website/docs/category/glossary-maintainers-guide"}},a={},u=[];function d(e){const t={admonition:"admonition",h1:"h1",p:"p",...(0,r.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(t.h1,{id:"intro",children:"Intro"}),"\n",(0,n.jsx)(t.admonition,{type:"warning",children:(0,n.jsx)(t.p,{children:"Under construction"})}),"\n",(0,n.jsx)(t.p,{children:"Uses an IDE and git and browser extensions to check the overall content of a specification and logical consistency & meaning of term definition in a particular context."}),"\n",(0,n.jsx)(t.p,{children:"The curator uses browser extensions to harvest a personal collection of term definitions based on those recommended by the specification authors."}),"\n",(0,n.jsx)(t.p,{children:"A curator can:\nFork a Spec-Up-T repo to his/her user account on GitHub.com\nOptionally fetch and merge this repo to an IDE on a local computer.\nConfigure the user account to publish the GitHub pages generated by Spec-Up-T\nPush change to the user account of the curator to show the admin role\nOffer a PR with changes and compare them across forks."})]})}function p(e={}){const{wrapper:t}={...(0,r.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(d,{...e})}):d(e)}},8453:(e,t,o)=>{o.d(t,{R:()=>s,x:()=>c});var n=o(6540);const r={},i=n.createContext(r);function s(e){const t=n.useContext(i);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function c(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(r):e.components||r:s(e.components),n.createElement(i.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/3e8d065b.2c19966c.js b/assets/js/3e8d065b.4056cbb9.js similarity index 61% rename from assets/js/3e8d065b.2c19966c.js rename to assets/js/3e8d065b.4056cbb9.js index 5d795494..43915285 100644 --- a/assets/js/3e8d065b.2c19966c.js +++ b/assets/js/3e8d065b.4056cbb9.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6548],{54:e=>{e.exports=JSON.parse('{"categoryGeneratedIndex":{"title":"Content Authors Guide","description":"Content Authors Guide.","slug":"/category/content-authors-guide","permalink":"/spec-up-t-website/docs/category/content-authors-guide","sidebar":"tutorialSidebar","navigation":{"previous":{"title":"Technical skills needed","permalink":"/spec-up-t-website/docs/various-roles/technical-skills-needed"},"next":{"title":"Content Authors Guide","permalink":"/spec-up-t-website/docs/various-roles/content-authors-guide/introduction"}}}}')}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6548],{54:e=>{e.exports=JSON.parse('{"categoryGeneratedIndex":{"title":"Content Authors Guide","description":"Content Authors Guide.","slug":"/category/content-authors-guide","permalink":"/spec-up-t-website/docs/category/content-authors-guide","sidebar":"tutorialSidebar","navigation":{"previous":{"title":"Extra Tools","permalink":"/spec-up-t-website/docs/various-roles/admins-guide/tools"},"next":{"title":"Intro","permalink":"/spec-up-t-website/docs/various-roles/content-authors-guide/introduction"}}}}')}}]); \ No newline at end of file diff --git a/assets/js/429dafae.441157e7.js b/assets/js/429dafae.441157e7.js new file mode 100644 index 00000000..dab0d9ac --- /dev/null +++ b/assets/js/429dafae.441157e7.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4029],{2218:(e,t,i)=>{i.r(t),i.d(t,{assets:()=>a,contentTitle:()=>r,default:()=>h,frontMatter:()=>o,metadata:()=>l,toc:()=>d});var s=i(4848),n=i(8453);const o={sidebar_position:2},r="Extra Tools",l={id:"various-roles/admins-guide/tools",title:"Extra Tools",description:"Splitter Tool",source:"@site/docs/various-roles/admins-guide/tools.md",sourceDirName:"various-roles/admins-guide",slug:"/various-roles/admins-guide/tools",permalink:"/spec-up-t-website/docs/various-roles/admins-guide/tools",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/admins-guide/tools.md",tags:[],version:"current",sidebarPosition:2,frontMatter:{sidebar_position:2},sidebar:"tutorialSidebar",previous:{title:"Intro",permalink:"/spec-up-t-website/docs/various-roles/admins-guide/"},next:{title:"Content Authors Guide",permalink:"/spec-up-t-website/docs/category/content-authors-guide"}},a={},d=[{value:"Splitter Tool",id:"splitter-tool",level:2},{value:"Why",id:"why",level:3},{value:"What does it do?",id:"what-does-it-do",level:3},{value:"How to use it",id:"how-to-use-it",level:3},{value:"Get help",id:"get-help",level:4},{value:"Usage",id:"usage",level:4},{value:"Example",id:"example",level:4},{value:"Arguments",id:"arguments",level:3},{value:"Requirements",id:"requirements",level:3},{value:"Behavior",id:"behavior",level:3},{value:"Repo and Package",id:"repo-and-package",level:3}];function c(e){const t={a:"a",admonition:"admonition",code:"code",h1:"h1",h2:"h2",h3:"h3",h4:"h4",li:"li",ol:"ol",p:"p",pre:"pre",ul:"ul",...(0,n.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(t.h1,{id:"extra-tools",children:"Extra Tools"}),"\n",(0,s.jsx)(t.h2,{id:"splitter-tool",children:"Splitter Tool"}),"\n",(0,s.jsx)(t.h3,{id:"why",children:"Why"}),"\n",(0,s.jsxs)(t.p,{children:["Each term in a specification will be kept in its own file to keep management doable. Sometimes you have the situation that files have already been created with many ",(0,s.jsx)(t.code,{children:"Spec-Up"})," terms and definitions. Splitting many terms in one file is laborious, so this tool was built."]}),"\n",(0,s.jsx)(t.h3,{id:"what-does-it-do",children:"What does it do?"}),"\n",(0,s.jsxs)(t.p,{children:["This tool splits a ",(0,s.jsx)(t.code,{children:"Spec-Up"})," Markdown file with many terms and definitions into separate files, each containing only one term and definition."]}),"\n",(0,s.jsx)(t.h3,{id:"how-to-use-it",children:"How to use it"}),"\n",(0,s.jsx)(t.admonition,{type:"warning",children:(0,s.jsxs)(t.p,{children:["Note the ",(0,s.jsx)(t.code,{children:"npx"}),", not ",(0,s.jsx)(t.code,{children:"npm"}),"."]})}),"\n",(0,s.jsx)(t.h4,{id:"get-help",children:"Get help"}),"\n",(0,s.jsx)(t.pre,{children:(0,s.jsx)(t.code,{children:"npx spec-up-splitter -help\n"})}),"\n",(0,s.jsx)(t.p,{children:"This will output a URL that points to this website."}),"\n",(0,s.jsx)(t.h4,{id:"usage",children:"Usage"}),"\n",(0,s.jsx)(t.pre,{children:(0,s.jsx)(t.code,{className:"language-bash",children:"npx spec-up-split [pathToTermsFile] [pathToTermsDir]\n"})}),"\n",(0,s.jsx)(t.h4,{id:"example",children:"Example"}),"\n",(0,s.jsx)(t.pre,{children:(0,s.jsx)(t.code,{className:"language-bash",children:"npx spec-up-split custom_terms.md custom-terms-output\n"})}),"\n",(0,s.jsx)(t.admonition,{type:"warning",children:(0,s.jsx)(t.p,{children:"Currently this tool works only on the first spec definition in specs.json (on the first element in de specs array in specs.json), which is usually the case for most Spec-Up projects. If you have multiple specs in your project, you may need to modify the tool to work with the correct spec definition."})}),"\n",(0,s.jsx)(t.h3,{id:"arguments",children:"Arguments"}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsx)(t.li,{children:"pathToTermsFile: Optional. The path to the markdown file containing terms and definitions to be split. If not provided, defaults to 'terms_and_definitions.md'."}),"\n",(0,s.jsx)(t.li,{children:"pathToTermsDir: Optional. The path to the directory where the individual term files should be saved. If not provided, defaults to 'terms-definitions'."}),"\n"]}),"\n",(0,s.jsx)(t.h3,{id:"requirements",children:"Requirements"}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsx)(t.li,{children:"The tool requires a 'specs.json' file to be present. This file should be in a standard Spec-Up install."}),"\n"]}),"\n",(0,s.jsx)(t.h3,{id:"behavior",children:"Behavior"}),"\n",(0,s.jsxs)(t.ol,{children:["\n",(0,s.jsx)(t.li,{children:"The tool first checks for the existence of 'specs.json'. If it is not found, the tool stops with an error message."}),"\n",(0,s.jsx)(t.li,{children:"It then checks if the source terms file exists. If not, it stops with an error message."}),"\n",(0,s.jsx)(t.li,{children:"If the specified directory for term files already exists and is empty, the tool proceeds with the splitting operation. If it contains markdown files, it stops."}),"\n"]}),"\n",(0,s.jsx)(t.h3,{id:"repo-and-package",children:"Repo and Package"}),"\n",(0,s.jsxs)(t.ul,{children:["\n",(0,s.jsxs)(t.li,{children:["Github repo: ",(0,s.jsx)(t.a,{href:"https://github.com/blockchainbird/spec-up-splitter",children:"https://github.com/blockchainbird/spec-up-splitter"})]}),"\n",(0,s.jsxs)(t.li,{children:["NPM package: ",(0,s.jsx)(t.a,{href:"https://www.npmjs.com/package/spec-up-splitter",children:"https://www.npmjs.com/package/spec-up-splitter"})]}),"\n"]})]})}function h(e={}){const{wrapper:t}={...(0,n.R)(),...e.components};return t?(0,s.jsx)(t,{...e,children:(0,s.jsx)(c,{...e})}):c(e)}},8453:(e,t,i)=>{i.d(t,{R:()=>r,x:()=>l});var s=i(6540);const n={},o=s.createContext(n);function r(e){const t=s.useContext(o);return s.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function l(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:r(e.components),s.createElement(o.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/451344e5.2c43f157.js b/assets/js/451344e5.2c43f157.js deleted file mode 100644 index 4502815a..00000000 --- a/assets/js/451344e5.2c43f157.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4836],{7297:(t,e,n)=>{n.r(e),n.d(e,{assets:()=>u,contentTitle:()=>r,default:()=>l,frontMatter:()=>s,metadata:()=>c,toc:()=>a});var o=n(4848),i=n(8453);const s={sidebar_position:1},r="Content Authors Guide",c={id:"various-roles/content-authors-guide/introduction",title:"Content Authors Guide",description:"Under construction",source:"@site/docs/various-roles/content-authors-guide/introduction.md",sourceDirName:"various-roles/content-authors-guide",slug:"/various-roles/content-authors-guide/introduction",permalink:"/spec-up-t-website/docs/various-roles/content-authors-guide/introduction",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/content-authors-guide/introduction.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Content Authors Guide",permalink:"/spec-up-t-website/docs/category/content-authors-guide"},next:{title:"Terminology Author Guide",permalink:"/spec-up-t-website/docs/category/terminology-author-guide"}},u={},a=[];function d(t){const e={admonition:"admonition",h1:"h1",p:"p",...(0,i.R)(),...t.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(e.h1,{id:"content-authors-guide",children:"Content Authors Guide"}),"\n",(0,o.jsx)(e.admonition,{type:"warning",children:(0,o.jsx)(e.p,{children:"Under construction"})}),"\n",(0,o.jsx)(e.p,{children:"Uses: an IDE, git and a browser extension, to edit Spec-Up markdown files for his/her specific context (mental model) in a version managed environment, authenticated, to write the concept and specification and offer this as a PR."}),"\n",(0,o.jsx)(e.p,{children:"He/she uses browser extensions to check technical consistency of the links in the text and harvests a personal collection of term definitions."})]})}function l(t={}){const{wrapper:e}={...(0,i.R)(),...t.components};return e?(0,o.jsx)(e,{...t,children:(0,o.jsx)(d,{...t})}):d(t)}},8453:(t,e,n)=>{n.d(e,{R:()=>r,x:()=>c});var o=n(6540);const i={},s=o.createContext(i);function r(t){const e=o.useContext(s);return o.useMemo((function(){return"function"==typeof t?t(e):{...e,...t}}),[e,t])}function c(t){let e;return e=t.disableParentContext?"function"==typeof t.components?t.components(i):t.components||i:r(t.components),o.createElement(s.Provider,{value:e},t.children)}}}]); \ No newline at end of file diff --git a/assets/js/451344e5.a4e60f4b.js b/assets/js/451344e5.a4e60f4b.js new file mode 100644 index 00000000..4b12207f --- /dev/null +++ b/assets/js/451344e5.a4e60f4b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4836],{7297:(t,e,n)=>{n.r(e),n.d(e,{assets:()=>a,contentTitle:()=>s,default:()=>l,frontMatter:()=>r,metadata:()=>c,toc:()=>u});var o=n(4848),i=n(8453);const r={sidebar_position:1},s="Intro",c={id:"various-roles/content-authors-guide/introduction",title:"Intro",description:"Under construction",source:"@site/docs/various-roles/content-authors-guide/introduction.md",sourceDirName:"various-roles/content-authors-guide",slug:"/various-roles/content-authors-guide/introduction",permalink:"/spec-up-t-website/docs/various-roles/content-authors-guide/introduction",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/content-authors-guide/introduction.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Content Authors Guide",permalink:"/spec-up-t-website/docs/category/content-authors-guide"},next:{title:"Terminology Author Guide",permalink:"/spec-up-t-website/docs/category/terminology-author-guide"}},a={},u=[];function d(t){const e={admonition:"admonition",h1:"h1",p:"p",...(0,i.R)(),...t.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(e.h1,{id:"intro",children:"Intro"}),"\n",(0,o.jsx)(e.admonition,{type:"warning",children:(0,o.jsx)(e.p,{children:"Under construction"})}),"\n",(0,o.jsx)(e.p,{children:"Uses: an IDE, git and a browser extension, to edit Spec-Up markdown files for his/her specific context (mental model) in a version managed environment, authenticated, to write the concept and specification and offer this as a PR."}),"\n",(0,o.jsx)(e.p,{children:"He/she uses browser extensions to check technical consistency of the links in the text and harvests a personal collection of term definitions."})]})}function l(t={}){const{wrapper:e}={...(0,i.R)(),...t.components};return e?(0,o.jsx)(e,{...t,children:(0,o.jsx)(d,{...t})}):d(t)}},8453:(t,e,n)=>{n.d(e,{R:()=>s,x:()=>c});var o=n(6540);const i={},r=o.createContext(i);function s(t){const e=o.useContext(r);return o.useMemo((function(){return"function"==typeof t?t(e):{...e,...t}}),[e,t])}function c(t){let e;return e=t.disableParentContext?"function"==typeof t.components?t.components(i):t.components||i:s(t.components),o.createElement(r.Provider,{value:e},t.children)}}}]); \ No newline at end of file diff --git a/assets/js/4741e212.95356e52.js b/assets/js/4741e212.04fd169c.js similarity index 58% rename from assets/js/4741e212.95356e52.js rename to assets/js/4741e212.04fd169c.js index a5fd9fe0..d38424a4 100644 --- a/assets/js/4741e212.95356e52.js +++ b/assets/js/4741e212.04fd169c.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4481],{7315:e=>{e.exports=JSON.parse('{"categoryGeneratedIndex":{"title":"Terminology Author Guide","description":"Terminology Author Guide.","slug":"/category/terminology-author-guide","permalink":"/spec-up-t-website/docs/category/terminology-author-guide","sidebar":"tutorialSidebar","navigation":{"previous":{"title":"Content Authors Guide","permalink":"/spec-up-t-website/docs/various-roles/content-authors-guide/introduction"},"next":{"title":"Terminology Authors Guide","permalink":"/spec-up-t-website/docs/various-roles/terminology-authors-guide/introduction"}}}}')}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4481],{7315:e=>{e.exports=JSON.parse('{"categoryGeneratedIndex":{"title":"Terminology Author Guide","description":"Terminology Author Guide.","slug":"/category/terminology-author-guide","permalink":"/spec-up-t-website/docs/category/terminology-author-guide","sidebar":"tutorialSidebar","navigation":{"previous":{"title":"Intro","permalink":"/spec-up-t-website/docs/various-roles/content-authors-guide/introduction"},"next":{"title":"Intro","permalink":"/spec-up-t-website/docs/various-roles/terminology-authors-guide/introduction"}}}}')}}]); \ No newline at end of file diff --git a/assets/js/4d95055f.82a871e2.js b/assets/js/4d95055f.11010738.js similarity index 58% rename from assets/js/4d95055f.82a871e2.js rename to assets/js/4d95055f.11010738.js index 4345fb19..bd619aa5 100644 --- a/assets/js/4d95055f.82a871e2.js +++ b/assets/js/4d95055f.11010738.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6685],{8160:e=>{e.exports=JSON.parse('{"categoryGeneratedIndex":{"title":"Glossary Maintainers Guide","description":"Glossary Maintainers Guide.","slug":"/category/glossary-maintainers-guide","permalink":"/spec-up-t-website/docs/category/glossary-maintainers-guide","sidebar":"tutorialSidebar","navigation":{"previous":{"title":"Curators Guide","permalink":"/spec-up-t-website/docs/various-roles/curators-guide/introduction"},"next":{"title":"Glossary Maintainers Guide","permalink":"/spec-up-t-website/docs/various-roles/glossary-maintainers-guide/introduction"}}}}')}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6685],{8160:e=>{e.exports=JSON.parse('{"categoryGeneratedIndex":{"title":"Glossary Maintainers Guide","description":"Glossary Maintainers Guide.","slug":"/category/glossary-maintainers-guide","permalink":"/spec-up-t-website/docs/category/glossary-maintainers-guide","sidebar":"tutorialSidebar","navigation":{"previous":{"title":"Intro","permalink":"/spec-up-t-website/docs/various-roles/curators-guide/introduction"},"next":{"title":"Intro","permalink":"/spec-up-t-website/docs/various-roles/glossary-maintainers-guide/introduction"}}}}')}}]); \ No newline at end of file diff --git a/assets/js/4ee666db.ffe5ce5f.js b/assets/js/4ee666db.ffe5ce5f.js new file mode 100644 index 00000000..ef785932 --- /dev/null +++ b/assets/js/4ee666db.ffe5ce5f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8005],{1460:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>d,contentTitle:()=>l,default:()=>h,frontMatter:()=>o,metadata:()=>r,toc:()=>a});var i=s(4848),t=s(8453);const o={sidebar_position:1},l="Intro",r={id:"various-roles/admins-guide/admins-guide",title:"Intro",description:"This is the admin guide for the Spec-Up-T system.",source:"@site/docs/various-roles/admins-guide/admins-guide.md",sourceDirName:"various-roles/admins-guide",slug:"/various-roles/admins-guide/",permalink:"/spec-up-t-website/docs/various-roles/admins-guide/",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/admins-guide/admins-guide.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Admins Guide",permalink:"/spec-up-t-website/docs/category/admins-guide"},next:{title:"Extra Tools",permalink:"/spec-up-t-website/docs/various-roles/admins-guide/tools"}},d={},a=[{value:"Installation",id:"installation",level:2},{value:"Short video",id:"short-video",level:3},{value:"Getting Started",id:"getting-started",level:3},{value:"What you'll need",id:"what-youll-need",level:3},{value:"Install a new site",id:"install-a-new-site",level:3},{value:"General info",id:"general-info",level:4},{value:"Install a new Spec-Up-T site",id:"install-a-new-spec-up-t-site",level:4},{value:"Go into the directory",id:"go-into-the-directory",level:4},{value:"Install all dependencies",id:"install-all-dependencies",level:4},{value:"Add repo to Github",id:"add-repo-to-github",level:4},{value:"Edit specs.json",id:"edit-specsjson",level:5},{value:"Push repo to GitHub",id:"push-repo-to-github",level:5}];function c(e){const n={a:"a",code:"code",em:"em",h1:"h1",h2:"h2",h3:"h3",h4:"h4",h5:"h5",li:"li",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,t.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h1,{id:"intro",children:"Intro"}),"\n",(0,i.jsx)(n.p,{children:"This is the admin guide for the Spec-Up-T system."}),"\n",(0,i.jsxs)(n.p,{children:["The repo can be found ",(0,i.jsx)(n.a,{href:"https://github.com/blockchainbird/spec-up-t",children:"here"}),"."]}),"\n",(0,i.jsx)(n.h2,{id:"installation",children:"Installation"}),"\n",(0,i.jsx)(n.h3,{id:"short-video",children:"Short video"}),"\n",(0,i.jsxs)(n.p,{children:["Let's install ",(0,i.jsx)(n.strong,{children:"Spec-Up-T"}),". This short video shows the process."]}),"\n",(0,i.jsxs)("video",{controls:!0,children:[(0,i.jsx)("source",{src:s(6525).A,type:"video/mp4"}),(0,i.jsx)(n.p,{children:"Your browser does not support video tags."})]}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{target:"_blank","data-noBrokenLinkCheck":!0,href:s(8948).A+"",children:"Link to the video"})}),"\n",(0,i.jsx)(n.h3,{id:"getting-started",children:"Getting Started"}),"\n",(0,i.jsxs)(n.p,{children:["Now, let's do it ourselves. Get started by ",(0,i.jsx)(n.strong,{children:"creating a new site"}),"."]}),"\n",(0,i.jsx)(n.h3,{id:"what-youll-need",children:"What you'll need"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"https://nodejs.org/en/download/",children:"Node.js"}),":","\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"When installing Node.js, you are recommended to check all checkboxes related to dependencies."}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["A ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Web_browser",children:"webbrowser"}),". You are probably reading this in a browser, so you already have one."]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"install-a-new-site",children:"Install a new site"}),"\n",(0,i.jsx)(n.h4,{id:"general-info",children:"General info"}),"\n",(0,i.jsx)(n.p,{children:"Installing Spec-Up-T works similarly to installing any other npm package. You install it locally (not globally), and then you run it."}),"\n",(0,i.jsx)(n.h4,{id:"install-a-new-spec-up-t-site",children:"Install a new Spec-Up-T site"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"npx create-spec-up-t my-spec-up-t-website\n"})}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.em,{children:"my-spec-up-t-website"})," can be anything you want it to be (however, it is recommended to not use spaces or special characters in directory names)."]}),"\n",(0,i.jsx)(n.p,{children:"You can also omit the last part:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"npx create-spec-up-t\n"})}),"\n",(0,i.jsxs)(n.p,{children:["If you omit ",(0,i.jsx)(n.code,{children:"my-spec-up-t-website"}),", a default directory name, namely ",(0,i.jsx)(n.code,{children:"spec-up-t-starterpack,"})," is used."]}),"\n",(0,i.jsx)(n.p,{children:"Sometimes, you want to force the latest version to be installed. Then you can do the following:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"npx create-spec-up-t@latest my-spec-up-t-website\n"})}),"\n",(0,i.jsx)(n.p,{children:"You can type this command into Command Prompt, Powershell, Terminal, or any other integrated terminal of your code editor. It should work on any operating system (not tested yet)."}),"\n",(0,i.jsxs)(n.p,{children:["You should now have a directory called ",(0,i.jsx)(n.code,{children:"my-spec-up-t-website"})," (or ",(0,i.jsx)(n.code,{children:"spec-up-t-starterpack"})," if you did not specify a name)."]}),"\n",(0,i.jsx)(n.h4,{id:"go-into-the-directory",children:"Go into the directory"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Go into this directory (folder) that was just created:"}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"cd my-spec-up-t-website\n"})}),"\n",(0,i.jsx)(n.p,{children:"You are now in this directory."}),"\n",(0,i.jsx)(n.h4,{id:"install-all-dependencies",children:"Install all dependencies"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Install all dependencies:"}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{children:"npm run install\n"})}),"\n",(0,i.jsx)(n.p,{children:"It can take some time, and you should see multiple lines of output during installation."}),"\n",(0,i.jsx)(n.p,{children:"When the prompt is visible again, you should now have a basic Spec-Up-T install:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["a ",(0,i.jsx)(n.code,{children:"specs.json"})," file"]}),"\n",(0,i.jsxs)(n.li,{children:["a ",(0,i.jsx)(n.code,{children:"spec/"})," directory with sample markdown files"]}),"\n",(0,i.jsxs)(n.li,{children:["a ",(0,i.jsx)(n.code,{children:"node_modules"})," directory, a ",(0,i.jsx)(n.code,{children:"package.json"})," file, and a ",(0,i.jsx)(n.code,{children:"package-lock.json"})," file (these three elements belong to the ",(0,i.jsx)(n.code,{children:"npm"})," system)"]}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"What you don't have yet is the following:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["a ",(0,i.jsx)(n.code,{children:"docs"})," directory with a sample ",(0,i.jsx)(n.code,{children:"index.html"})," file (which is the actual specification file that is the goal of it all)."]}),"\n"]}),"\n",(0,i.jsxs)(n.p,{children:["How to do this, go to the ",(0,i.jsx)(n.a,{href:"/spec-up-t-website/docs/various-roles/general-guide",children:"General Instructions"}),"."]}),"\n",(0,i.jsx)(n.h4,{id:"add-repo-to-github",children:"Add repo to Github"}),"\n",(0,i.jsx)(n.p,{children:"You should push your new specification (i.e. the sample content) to a GitHub repo."}),"\n",(0,i.jsx)(n.p,{children:"These are the steps to take:"}),"\n",(0,i.jsxs)(n.h5,{id:"edit-specsjson",children:["Edit ",(0,i.jsx)(n.code,{children:"specs.json"})]}),"\n",(0,i.jsxs)(n.p,{children:["Change this entry in ",(0,i.jsx)(n.code,{children:"specs.json"}),":"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-json",children:'"source": {\n "host": "github",\n "account": "blockchainbird",\n "repo": "spec-up-t-starter-pack"\n }\n'})}),"\n",(0,i.jsx)(n.p,{children:"to the correct information:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-json",children:'"source": {\n "host": "github",\n "account": "your-account",\n "repo": "your-repo"\n }\n'})}),"\n",(0,i.jsx)(n.p,{children:"These are the host (GitHub), your GitHub account name, and the repo name of the repo you are about to push."}),"\n",(0,i.jsx)(n.h5,{id:"push-repo-to-github",children:"Push repo to GitHub"}),"\n",(0,i.jsx)(n.p,{children:"Now, push the repo to GitHub. Use the command line or your preferred way to do this."})]})}function h(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(c,{...e})}):c(e)}},8948:(e,n,s)=>{s.d(n,{A:()=>i});const i=s.p+"assets/files/installer-spec-up-t-392cc74350811a36e6a9f89b426fa51b.mp4"},6525:(e,n,s)=>{s.d(n,{A:()=>i});const i=s.p+"assets/medias/installer-spec-up-t-392cc74350811a36e6a9f89b426fa51b.mp4"},8453:(e,n,s)=>{s.d(n,{R:()=>l,x:()=>r});var i=s(6540);const t={},o=i.createContext(t);function l(e){const n=i.useContext(o);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function r(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:l(e.components),i.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/53ef7a94.c36b6cff.js b/assets/js/53ef7a94.2814806c.js similarity index 74% rename from assets/js/53ef7a94.c36b6cff.js rename to assets/js/53ef7a94.2814806c.js index 02eb018a..55d1a37c 100644 --- a/assets/js/53ef7a94.c36b6cff.js +++ b/assets/js/53ef7a94.2814806c.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9121],{4421:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>c,contentTitle:()=>d,default:()=>h,frontMatter:()=>r,metadata:()=>o,toc:()=>l});var t=s(4848),i=s(8453);const r={sidebar_position:0},d="Intro",o={id:"various-roles/intro",title:"Intro",description:"Spec-Up-T implementations can distinguish the following roles:",source:"@site/docs/various-roles/intro.md",sourceDirName:"various-roles",slug:"/various-roles/intro",permalink:"/spec-up-t-website/docs/various-roles/intro",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/intro.md",tags:[],version:"current",sidebarPosition:0,frontMatter:{sidebar_position:0},sidebar:"tutorialSidebar",previous:{title:"Roles",permalink:"/spec-up-t-website/docs/category/roles"},next:{title:"General Guide",permalink:"/spec-up-t-website/docs/various-roles/general-guide"}},c={},l=[];function a(e){const n={a:"a",h1:"h1",p:"p",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,i.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.h1,{id:"intro",children:"Intro"}),"\n",(0,t.jsx)(n.p,{children:"Spec-Up-T implementations can distinguish the following roles:"}),"\n",(0,t.jsxs)(n.table,{children:[(0,t.jsx)(n.thead,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.th,{children:"Role"}),(0,t.jsx)(n.th,{children:"Description"}),(0,t.jsx)(n.th,{children:"Guide Link"}),(0,t.jsx)(n.th,{children:"Skills"})]})}),(0,t.jsxs)(n.tbody,{children:[(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{children:"Content Author"}),(0,t.jsx)(n.td,{children:"Focusses on content and concepts of the group he/she belongs to."}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"/spec-up-t-website/docs/various-roles/content-authors-guide/introduction",children:"Content Author Guide"})}),(0,t.jsxs)(n.td,{children:[(0,t.jsx)(n.a,{href:"technical-skills-needed#3",children:"Understand JSON"}),", ",(0,t.jsx)(n.a,{href:"technical-skills-needed#4",children:"Understand Markdown"})]})]}),(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{children:"Terminology Author"}),(0,t.jsx)(n.td,{children:"Focusses on term definitions covering concepts of the group he/she belongs to."}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"/spec-up-t-website/docs/various-roles/terminology-authors-guide/introduction",children:"Terminology Author Guide"})}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"technical-skills-needed#4",children:"Understand Markdown"})})]}),(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{children:"Curator"}),(0,t.jsx)(n.td,{children:"Checks overall content and logical consistency & meaning of term definition in a certain context."}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"/spec-up-t-website/docs/various-roles/curators-guide/introduction",children:"Curator Guide"})}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"technical-skills-needed#4",children:"Understand Markdown"})})]}),(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{children:"Reader"}),(0,t.jsx)(n.td,{children:"Reads concepts in text and terminology in glossaries."}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"/spec-up-t-website/docs/various-roles/readers-guide/introduction",children:"Reader Guide"})}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"technical-skills-needed#5",children:"Understand the web"})})]}),(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{children:"Admin"}),(0,t.jsx)(n.td,{children:"Installs, updates, and maintains Spec-Up-T."}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"/spec-up-t-website/docs/various-roles/admins-guide",children:"Admin Guide"})}),(0,t.jsxs)(n.td,{children:[(0,t.jsx)(n.a,{href:"technical-skills-needed#1",children:"Understand Node and NPM"}),", ",(0,t.jsx)(n.a,{href:"technical-skills-needed#2",children:"Understand file system"}),", ",(0,t.jsx)(n.a,{href:"technical-skills-needed#7",children:"Understand debugging"})]})]}),(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{children:"Developer"}),(0,t.jsx)(n.td,{children:"Adds new functionality to Spec-Up-T."}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"/spec-up-t-website/docs/various-roles/developers-guide",children:"Developer Guide"})}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"technical-skills-needed#6",children:"Understand Git and Github"})})]})]})]})]})}function h(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(a,{...e})}):a(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>d,x:()=>o});var t=s(6540);const i={},r=t.createContext(i);function d(e){const n=t.useContext(r);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:d(e.components),t.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9121],{4421:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>c,contentTitle:()=>d,default:()=>h,frontMatter:()=>r,metadata:()=>o,toc:()=>l});var t=s(4848),i=s(8453);const r={sidebar_position:0},d="Intro",o={id:"various-roles/intro",title:"Intro",description:"Spec-Up-T implementations can distinguish the following roles:",source:"@site/docs/various-roles/intro.md",sourceDirName:"various-roles",slug:"/various-roles/intro",permalink:"/spec-up-t-website/docs/various-roles/intro",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/intro.md",tags:[],version:"current",sidebarPosition:0,frontMatter:{sidebar_position:0},sidebar:"tutorialSidebar",previous:{title:"Roles",permalink:"/spec-up-t-website/docs/category/roles"},next:{title:"General Guide",permalink:"/spec-up-t-website/docs/various-roles/general-guide"}},c={},l=[];function a(e){const n={a:"a",h1:"h1",p:"p",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,i.R)(),...e.components};return(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(n.h1,{id:"intro",children:"Intro"}),"\n",(0,t.jsx)(n.p,{children:"Spec-Up-T implementations can distinguish the following roles:"}),"\n",(0,t.jsxs)(n.table,{children:[(0,t.jsx)(n.thead,{children:(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.th,{children:"Role"}),(0,t.jsx)(n.th,{children:"Description"}),(0,t.jsx)(n.th,{children:"Guide Link"}),(0,t.jsx)(n.th,{children:"Skills"})]})}),(0,t.jsxs)(n.tbody,{children:[(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{children:"Content Author"}),(0,t.jsx)(n.td,{children:"Focusses on content and concepts of the group he/she belongs to."}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"/spec-up-t-website/docs/various-roles/content-authors-guide/introduction",children:"Content Author Guide"})}),(0,t.jsxs)(n.td,{children:[(0,t.jsx)(n.a,{href:"technical-skills-needed#3",children:"Understand JSON"}),", ",(0,t.jsx)(n.a,{href:"technical-skills-needed#4",children:"Understand Markdown"})]})]}),(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{children:"Terminology Author"}),(0,t.jsx)(n.td,{children:"Focusses on term definitions covering concepts of the group he/she belongs to."}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"/spec-up-t-website/docs/various-roles/terminology-authors-guide/introduction",children:"Terminology Author Guide"})}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"technical-skills-needed#4",children:"Understand Markdown"})})]}),(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{children:"Curator"}),(0,t.jsx)(n.td,{children:"Checks overall content and logical consistency & meaning of term definition in a certain context."}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"/spec-up-t-website/docs/various-roles/curators-guide/introduction",children:"Curator Guide"})}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"technical-skills-needed#4",children:"Understand Markdown"})})]}),(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{children:"Reader"}),(0,t.jsx)(n.td,{children:"Reads concepts in text and terminology in glossaries."}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"/spec-up-t-website/docs/various-roles/readers-guide/introduction",children:"Reader Guide"})}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"technical-skills-needed#5",children:"Understand the web"})})]}),(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{children:"Admin"}),(0,t.jsx)(n.td,{children:"Installs, updates, and maintains Spec-Up-T."}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"/spec-up-t-website/docs/various-roles/admins-guide/",children:"Admin Guide"})}),(0,t.jsxs)(n.td,{children:[(0,t.jsx)(n.a,{href:"technical-skills-needed#1",children:"Understand Node and NPM"}),", ",(0,t.jsx)(n.a,{href:"technical-skills-needed#2",children:"Understand file system"}),", ",(0,t.jsx)(n.a,{href:"technical-skills-needed#7",children:"Understand debugging"})]})]}),(0,t.jsxs)(n.tr,{children:[(0,t.jsx)(n.td,{children:"Developer"}),(0,t.jsx)(n.td,{children:"Adds new functionality to Spec-Up-T."}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"/spec-up-t-website/docs/various-roles/developers-guide",children:"Developer Guide"})}),(0,t.jsx)(n.td,{children:(0,t.jsx)(n.a,{href:"technical-skills-needed#6",children:"Understand Git and Github"})})]})]})]})]})}function h(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,t.jsx)(n,{...e,children:(0,t.jsx)(a,{...e})}):a(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>d,x:()=>o});var t=s(6540);const i={},r=t.createContext(i);function d(e){const n=t.useContext(r);return t.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function o(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:d(e.components),t.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/680248e1.ef72a306.js b/assets/js/680248e1.0a191176.js similarity index 53% rename from assets/js/680248e1.ef72a306.js rename to assets/js/680248e1.0a191176.js index d3286eae..d36020d8 100644 --- a/assets/js/680248e1.ef72a306.js +++ b/assets/js/680248e1.0a191176.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4345],{2122:e=>{e.exports=JSON.parse('{"categoryGeneratedIndex":{"title":"Readers Guide","description":"Readers Guide.","slug":"/category/readers-guide","permalink":"/spec-up-t-website/docs/category/readers-guide","sidebar":"tutorialSidebar","navigation":{"previous":{"title":"Glossary Maintainers Guide","permalink":"/spec-up-t-website/docs/various-roles/glossary-maintainers-guide/introduction"},"next":{"title":"Readers Guide","permalink":"/spec-up-t-website/docs/various-roles/readers-guide/introduction"}}}}')}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4345],{2122:e=>{e.exports=JSON.parse('{"categoryGeneratedIndex":{"title":"Readers Guide","description":"Readers Guide.","slug":"/category/readers-guide","permalink":"/spec-up-t-website/docs/category/readers-guide","sidebar":"tutorialSidebar","navigation":{"previous":{"title":"Intro","permalink":"/spec-up-t-website/docs/various-roles/glossary-maintainers-guide/introduction"},"next":{"title":"Intro","permalink":"/spec-up-t-website/docs/various-roles/readers-guide/introduction"}}}}')}}]); \ No newline at end of file diff --git a/assets/js/7e7aa536.90b151b7.js b/assets/js/7e7aa536.90b151b7.js new file mode 100644 index 00000000..d89f4d74 --- /dev/null +++ b/assets/js/7e7aa536.90b151b7.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[130],{4661:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>l,contentTitle:()=>r,default:()=>h,frontMatter:()=>o,metadata:()=>a,toc:()=>d});var s=i(4848),t=i(8453);const o={sidebar_position:20},r="Technical skills needed",a={id:"various-roles/technical-skills-needed",title:"Technical skills needed",description:"Spec-Up-T is a specialized tool designed to facilitate the creation, management, and rendering of technical specifications in a streamlined manner. Users who intend to leverage Spec-Up-T for their projects must possess a foundational level of technical knowledge to navigate the installation, configuration, and utilization of this tool effectively. This article delves into the technical prerequisites necessary for a user to operate Spec-Up-T competently.",source:"@site/docs/various-roles/technical-skills-needed.md",sourceDirName:"various-roles",slug:"/various-roles/technical-skills-needed",permalink:"/spec-up-t-website/docs/various-roles/technical-skills-needed",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/technical-skills-needed.md",tags:[],version:"current",sidebarPosition:20,frontMatter:{sidebar_position:20},sidebar:"tutorialSidebar",previous:{title:"Developers Guide",permalink:"/spec-up-t-website/docs/various-roles/developers-guide"},next:{title:"Spec-Up-T demo",permalink:"/spec-up-t-website/docs/spec-up-t-demo-site"}},l={},d=[{value:"1",id:"1",level:2},{value:"Familiarity with Node.js and npm",id:"familiarity-with-nodejs-and-npm",level:3},{value:"2",id:"2",level:2},{value:"Basic Understanding of File System Navigation and Directory Management",id:"basic-understanding-of-file-system-navigation-and-directory-management",level:3},{value:"3",id:"3",level:2},{value:"JSON Configuration Files",id:"json-configuration-files",level:3},{value:"4",id:"4",level:2},{value:"Markdown Language Proficiency",id:"markdown-language-proficiency",level:3},{value:"5",id:"5",level:2},{value:"Basic Web Development Concepts",id:"basic-web-development-concepts",level:3},{value:"6",id:"6",level:2},{value:"Version Control and Automation",id:"version-control-and-automation",level:3},{value:"7",id:"7",level:2},{value:"Debugging and Development Tools",id:"debugging-and-development-tools",level:3},{value:"Conclusion",id:"conclusion",level:2}];function c(e){const n={a:"a",blockquote:"blockquote",code:"code",h1:"h1",h2:"h2",h3:"h3",li:"li",p:"p",strong:"strong",ul:"ul",...(0,t.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h1,{id:"technical-skills-needed",children:"Technical skills needed"}),"\n",(0,s.jsx)(n.p,{children:"Spec-Up-T is a specialized tool designed to facilitate the creation, management, and rendering of technical specifications in a streamlined manner. Users who intend to leverage Spec-Up-T for their projects must possess a foundational level of technical knowledge to navigate the installation, configuration, and utilization of this tool effectively. This article delves into the technical prerequisites necessary for a user to operate Spec-Up-T competently."}),"\n",(0,s.jsx)(n.p,{children:"Not everyone needs all the knowledge described here. Different roles are identified."}),"\n",(0,s.jsx)(n.h2,{id:"1",children:"1"}),"\n",(0,s.jsx)(n.h3,{id:"familiarity-with-nodejs-and-npm",children:"Familiarity with Node.js and npm"}),"\n",(0,s.jsxs)(n.p,{children:["At the core of Spec-Up-T's installation and operation lies the ",(0,s.jsx)(n.a,{href:"https://nodejs.org/en",children:"Node.js"})," environment, coupled with ",(0,s.jsx)(n.a,{href:"https://www.npmjs.com/",children:"npm (Node Package Manager)"}),"."]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Required Knowledge:"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Installation and Setup:"})," Users must know how to download and install Node.js, ensuring all relevant dependencies are correctly set up."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Command-Line Interface (CLI) Proficiency:"})," Users should be comfortable using a CLI, as many operations, including installing Spec-Up-T, running npm commands, and managing directories, are executed via terminal commands."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Understanding npm Scripts:"})," Familiarity with npm scripts, such as ",(0,s.jsx)(n.code,{children:"npm run install"}),", ",(0,s.jsx)(n.code,{children:"npm run render"}),", and ",(0,s.jsx)(n.code,{children:"npm run dev"}),", is crucial. These scripts automate various tasks in Spec-Up-T, from installing dependencies to rendering the final HTML output."]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"2",children:"2"}),"\n",(0,s.jsx)(n.h3,{id:"basic-understanding-of-file-system-navigation-and-directory-management",children:"Basic Understanding of File System Navigation and Directory Management"}),"\n",(0,s.jsx)(n.p,{children:"Spec-Up-T users need to navigate through the file system, create and manage directories, and understand relative paths. These tasks are fundamental to setting up and maintaining a Spec-Up-T project."}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Required Knowledge:"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["Users should know how to move between directories using the command line (",(0,s.jsx)(n.code,{children:"cd"})," command)."]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"3",children:"3"}),"\n",(0,s.jsx)(n.h3,{id:"json-configuration-files",children:"JSON Configuration Files"}),"\n",(0,s.jsxs)(n.p,{children:["The ",(0,s.jsx)(n.code,{children:"specs.json"})," file plays a pivotal role in Spec-Up-T, as it contains configuration details that dictate how the tool generates and outputs the specification documents. JSON (JavaScript Object Notation) is a lightweight data-interchange format that is easy for humans to read and write, and easy for machines to parse and generate."]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Required Knowledge:"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Editing JSON Files:"})," Users must be able to open, read, and edit JSON files to customize their Spec-Up-T setup. This includes setting paths, defining titles, adding logos, and configuring output options."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Understanding JSON Structure:"})," A basic understanding of JSON structure\u2014such as key-value pairs, arrays, and nested objects\u2014is necessary to modify the ",(0,s.jsx)(n.code,{children:"specs.json"})," file effectively. This knowledge enables users to customize their specifications to fit their project requirements."]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"4",children:"4"}),"\n",(0,s.jsx)(n.h3,{id:"markdown-language-proficiency",children:"Markdown Language Proficiency"}),"\n",(0,s.jsxs)(n.blockquote,{children:["\n",(0,s.jsx)(n.p,{children:"Markdown is a lightweight markup language that you can use to add formatting elements to plaintext text documents. Created by John Gruber in 2004, Markdown is now one of the world\u2019s most popular markup languages."}),"\n"]}),"\n",(0,s.jsxs)(n.p,{children:["Read more about ",(0,s.jsx)(n.a,{href:"https://www.markdownguide.org/getting-started/",children:"Markdown"})]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Required Knowledge:"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Markdown Syntax:"})," Users should be comfortable with Markdown syntax, including headers, lists, links, and code blocks. This proficiency allows them to structure the content of their specifications clearly and concisely."]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"5",children:"5"}),"\n",(0,s.jsx)(n.h3,{id:"basic-web-development-concepts",children:"Basic Web Development Concepts"}),"\n",(0,s.jsx)(n.p,{children:"Since Spec-Up-T ultimately renders HTML files that are intended for web viewing, a foundational understanding of web development is beneficial."}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Required Knowledge:"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Browser Usage:"})," Users should be familiar with opening files in a web browser, either by double-clicking the ",(0,s.jsx)(n.code,{children:"index.html"})," file in a file manager or by navigating to the file via the browser\u2019s menu."]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"6",children:"6"}),"\n",(0,s.jsx)(n.h3,{id:"version-control-and-automation",children:"Version Control and Automation"}),"\n",(0,s.jsx)(n.p,{children:"Spec-Up-T integrates well with version control systems like Git and offers automation capabilities via GitHub Actions. This allows users to automate the rendering and deployment of their specifications."}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Required Knowledge:"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Basic Git Operations:"})," Users should understand how to commit changes, push them to a remote repository, and manage branches within a Git version control system. This is crucial for maintaining a history of changes and collaborating with others."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"GitHub Actions:"})," Familiarity with GitHub Actions or similar CI/CD (Continuous Integration/Continuous Deployment) tools is beneficial for users who want to automate the rendering process. This knowledge allows users to set up workflows that trigger rendering and deployment automatically upon certain events, such as commits or pull requests."]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"7",children:"7"}),"\n",(0,s.jsx)(n.h3,{id:"debugging-and-development-tools",children:"Debugging and Development Tools"}),"\n",(0,s.jsx)(n.p,{children:"Spec-Up-T provides different modes for rendering specifications, including a development mode that enables debugging features."}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Required Knowledge:"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsxs)(n.strong,{children:["Using ",(0,s.jsx)(n.code,{children:"npm run dev"}),":"]})," Users should be familiar with development workflows, where the ",(0,s.jsx)(n.code,{children:"npm run dev"})," command allows them to test and debug their specifications before finalizing them."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Debugging Techniques:"})," Basic debugging techniques, such as checking for errors in the terminal output and using browser developer tools to inspect rendered HTML, can be very helpful in troubleshooting issues with the specification files."]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"conclusion",children:"Conclusion"}),"\n",(0,s.jsx)(n.p,{children:"Operating Spec-Up-T effectively requires a blend of technical skills across several domains, including Node.js and npm, file system management, JSON configuration, Markdown proficiency, basic web development, version control, and debugging. Users who possess a solid understanding of these areas will find themselves well-equipped to leverage Spec-Up-T to its full potential, creating robust and well-structured technical specifications for their projects. By mastering these skills, users can ensure that their specifications are not only technically accurate but also professionally presented and easily accessible."})]})}function h(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(c,{...e})}):c(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>r,x:()=>a});var s=i(6540);const t={},o=s.createContext(t);function r(e){const n=s.useContext(o);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:r(e.components),s.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/7e7aa536.edd06f8e.js b/assets/js/7e7aa536.edd06f8e.js deleted file mode 100644 index 64f9e599..00000000 --- a/assets/js/7e7aa536.edd06f8e.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[130],{4661:(e,n,i)=>{i.r(n),i.d(n,{assets:()=>l,contentTitle:()=>r,default:()=>h,frontMatter:()=>o,metadata:()=>a,toc:()=>d});var s=i(4848),t=i(8453);const o={sidebar_position:2},r="Technical skills needed",a={id:"various-roles/technical-skills-needed",title:"Technical skills needed",description:"Spec-Up-T is a specialized tool designed to facilitate the creation, management, and rendering of technical specifications in a streamlined manner. Users who intend to leverage Spec-Up-T for their projects must possess a foundational level of technical knowledge to navigate the installation, configuration, and utilization of this tool effectively. This article delves into the technical prerequisites necessary for a user to operate Spec-Up-T competently.",source:"@site/docs/various-roles/technical-skills-needed.md",sourceDirName:"various-roles",slug:"/various-roles/technical-skills-needed",permalink:"/spec-up-t-website/docs/various-roles/technical-skills-needed",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/technical-skills-needed.md",tags:[],version:"current",sidebarPosition:2,frontMatter:{sidebar_position:2},sidebar:"tutorialSidebar",previous:{title:"Admins Guide",permalink:"/spec-up-t-website/docs/various-roles/admins-guide"},next:{title:"Content Authors Guide",permalink:"/spec-up-t-website/docs/category/content-authors-guide"}},l={},d=[{value:"1",id:"1",level:2},{value:"Familiarity with Node.js and npm",id:"familiarity-with-nodejs-and-npm",level:3},{value:"2",id:"2",level:2},{value:"Basic Understanding of File System Navigation and Directory Management",id:"basic-understanding-of-file-system-navigation-and-directory-management",level:3},{value:"3",id:"3",level:2},{value:"JSON Configuration Files",id:"json-configuration-files",level:3},{value:"4",id:"4",level:2},{value:"Markdown Language Proficiency",id:"markdown-language-proficiency",level:3},{value:"5",id:"5",level:2},{value:"Basic Web Development Concepts",id:"basic-web-development-concepts",level:3},{value:"6",id:"6",level:2},{value:"Version Control and Automation",id:"version-control-and-automation",level:3},{value:"7",id:"7",level:2},{value:"Debugging and Development Tools",id:"debugging-and-development-tools",level:3},{value:"Conclusion",id:"conclusion",level:2}];function c(e){const n={a:"a",blockquote:"blockquote",code:"code",h1:"h1",h2:"h2",h3:"h3",li:"li",p:"p",strong:"strong",ul:"ul",...(0,t.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h1,{id:"technical-skills-needed",children:"Technical skills needed"}),"\n",(0,s.jsx)(n.p,{children:"Spec-Up-T is a specialized tool designed to facilitate the creation, management, and rendering of technical specifications in a streamlined manner. Users who intend to leverage Spec-Up-T for their projects must possess a foundational level of technical knowledge to navigate the installation, configuration, and utilization of this tool effectively. This article delves into the technical prerequisites necessary for a user to operate Spec-Up-T competently."}),"\n",(0,s.jsx)(n.p,{children:"Not everyone needs all the knowledge described here. Different roles are identified."}),"\n",(0,s.jsx)(n.h2,{id:"1",children:"1"}),"\n",(0,s.jsx)(n.h3,{id:"familiarity-with-nodejs-and-npm",children:"Familiarity with Node.js and npm"}),"\n",(0,s.jsxs)(n.p,{children:["At the core of Spec-Up-T's installation and operation lies the ",(0,s.jsx)(n.a,{href:"https://nodejs.org/en",children:"Node.js"})," environment, coupled with ",(0,s.jsx)(n.a,{href:"https://www.npmjs.com/",children:"npm (Node Package Manager)"}),"."]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Required Knowledge:"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Installation and Setup:"})," Users must know how to download and install Node.js, ensuring all relevant dependencies are correctly set up."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Command-Line Interface (CLI) Proficiency:"})," Users should be comfortable using a CLI, as many operations, including installing Spec-Up-T, running npm commands, and managing directories, are executed via terminal commands."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Understanding npm Scripts:"})," Familiarity with npm scripts, such as ",(0,s.jsx)(n.code,{children:"npm run install"}),", ",(0,s.jsx)(n.code,{children:"npm run render"}),", and ",(0,s.jsx)(n.code,{children:"npm run dev"}),", is crucial. These scripts automate various tasks in Spec-Up-T, from installing dependencies to rendering the final HTML output."]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"2",children:"2"}),"\n",(0,s.jsx)(n.h3,{id:"basic-understanding-of-file-system-navigation-and-directory-management",children:"Basic Understanding of File System Navigation and Directory Management"}),"\n",(0,s.jsx)(n.p,{children:"Spec-Up-T users need to navigate through the file system, create and manage directories, and understand relative paths. These tasks are fundamental to setting up and maintaining a Spec-Up-T project."}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Required Knowledge:"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:["Users should know how to move between directories using the command line (",(0,s.jsx)(n.code,{children:"cd"})," command)."]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"3",children:"3"}),"\n",(0,s.jsx)(n.h3,{id:"json-configuration-files",children:"JSON Configuration Files"}),"\n",(0,s.jsxs)(n.p,{children:["The ",(0,s.jsx)(n.code,{children:"specs.json"})," file plays a pivotal role in Spec-Up-T, as it contains configuration details that dictate how the tool generates and outputs the specification documents. JSON (JavaScript Object Notation) is a lightweight data-interchange format that is easy for humans to read and write, and easy for machines to parse and generate."]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Required Knowledge:"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Editing JSON Files:"})," Users must be able to open, read, and edit JSON files to customize their Spec-Up-T setup. This includes setting paths, defining titles, adding logos, and configuring output options."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Understanding JSON Structure:"})," A basic understanding of JSON structure\u2014such as key-value pairs, arrays, and nested objects\u2014is necessary to modify the ",(0,s.jsx)(n.code,{children:"specs.json"})," file effectively. This knowledge enables users to customize their specifications to fit their project requirements."]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"4",children:"4"}),"\n",(0,s.jsx)(n.h3,{id:"markdown-language-proficiency",children:"Markdown Language Proficiency"}),"\n",(0,s.jsxs)(n.blockquote,{children:["\n",(0,s.jsx)(n.p,{children:"Markdown is a lightweight markup language that you can use to add formatting elements to plaintext text documents. Created by John Gruber in 2004, Markdown is now one of the world\u2019s most popular markup languages."}),"\n"]}),"\n",(0,s.jsxs)(n.p,{children:["Read more about ",(0,s.jsx)(n.a,{href:"https://www.markdownguide.org/getting-started/",children:"Markdown"})]}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Required Knowledge:"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Markdown Syntax:"})," Users should be comfortable with Markdown syntax, including headers, lists, links, and code blocks. This proficiency allows them to structure the content of their specifications clearly and concisely."]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"5",children:"5"}),"\n",(0,s.jsx)(n.h3,{id:"basic-web-development-concepts",children:"Basic Web Development Concepts"}),"\n",(0,s.jsx)(n.p,{children:"Since Spec-Up-T ultimately renders HTML files that are intended for web viewing, a foundational understanding of web development is beneficial."}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Required Knowledge:"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Browser Usage:"})," Users should be familiar with opening files in a web browser, either by double-clicking the ",(0,s.jsx)(n.code,{children:"index.html"})," file in a file manager or by navigating to the file via the browser\u2019s menu."]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"6",children:"6"}),"\n",(0,s.jsx)(n.h3,{id:"version-control-and-automation",children:"Version Control and Automation"}),"\n",(0,s.jsx)(n.p,{children:"Spec-Up-T integrates well with version control systems like Git and offers automation capabilities via GitHub Actions. This allows users to automate the rendering and deployment of their specifications."}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Required Knowledge:"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Basic Git Operations:"})," Users should understand how to commit changes, push them to a remote repository, and manage branches within a Git version control system. This is crucial for maintaining a history of changes and collaborating with others."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"GitHub Actions:"})," Familiarity with GitHub Actions or similar CI/CD (Continuous Integration/Continuous Deployment) tools is beneficial for users who want to automate the rendering process. This knowledge allows users to set up workflows that trigger rendering and deployment automatically upon certain events, such as commits or pull requests."]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"7",children:"7"}),"\n",(0,s.jsx)(n.h3,{id:"debugging-and-development-tools",children:"Debugging and Development Tools"}),"\n",(0,s.jsx)(n.p,{children:"Spec-Up-T provides different modes for rendering specifications, including a development mode that enables debugging features."}),"\n",(0,s.jsx)(n.p,{children:(0,s.jsx)(n.strong,{children:"Required Knowledge:"})}),"\n",(0,s.jsxs)(n.ul,{children:["\n",(0,s.jsxs)(n.li,{children:[(0,s.jsxs)(n.strong,{children:["Using ",(0,s.jsx)(n.code,{children:"npm run dev"}),":"]})," Users should be familiar with development workflows, where the ",(0,s.jsx)(n.code,{children:"npm run dev"})," command allows them to test and debug their specifications before finalizing them."]}),"\n",(0,s.jsxs)(n.li,{children:[(0,s.jsx)(n.strong,{children:"Debugging Techniques:"})," Basic debugging techniques, such as checking for errors in the terminal output and using browser developer tools to inspect rendered HTML, can be very helpful in troubleshooting issues with the specification files."]}),"\n"]}),"\n",(0,s.jsx)(n.h2,{id:"conclusion",children:"Conclusion"}),"\n",(0,s.jsx)(n.p,{children:"Operating Spec-Up-T effectively requires a blend of technical skills across several domains, including Node.js and npm, file system management, JSON configuration, Markdown proficiency, basic web development, version control, and debugging. Users who possess a solid understanding of these areas will find themselves well-equipped to leverage Spec-Up-T to its full potential, creating robust and well-structured technical specifications for their projects. By mastering these skills, users can ensure that their specifications are not only technically accurate but also professionally presented and easily accessible."})]})}function h(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(c,{...e})}):c(e)}},8453:(e,n,i)=>{i.d(n,{R:()=>r,x:()=>a});var s=i(6540);const t={},o=s.createContext(t);function r(e){const n=s.useContext(o);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:r(e.components),s.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/84de3d6b.139cbb81.js b/assets/js/84de3d6b.139cbb81.js deleted file mode 100644 index d7c7800c..00000000 --- a/assets/js/84de3d6b.139cbb81.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9151],{3200:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>c,frontMatter:()=>n,metadata:()=>d,toc:()=>a});var i=r(4848),s=r(8453);const n={sidebar_position:2},o="Term References",d={id:"various-roles/terminology-authors-guide/term-references",title:"Term References",description:"Definition Lists",source:"@site/docs/various-roles/terminology-authors-guide/term-references.md",sourceDirName:"various-roles/terminology-authors-guide",slug:"/various-roles/terminology-authors-guide/term-references",permalink:"/spec-up-t-website/docs/various-roles/terminology-authors-guide/term-references",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/terminology-authors-guide/term-references.md",tags:[],version:"current",sidebarPosition:2,frontMatter:{sidebar_position:2},sidebar:"tutorialSidebar",previous:{title:"Terminology Authors Guide",permalink:"/spec-up-t-website/docs/various-roles/terminology-authors-guide/introduction"},next:{title:"External Term References",permalink:"/spec-up-t-website/docs/various-roles/terminology-authors-guide/external-term-references"}},l={},a=[{value:"Definition Lists",id:"definition-lists",level:2},{value:"Table-defined Terms",id:"table-defined-terms",level:2}];function h(e){const t={h1:"h1",h2:"h2",p:"p",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(t.h1,{id:"term-references",children:"Term References"}),"\n",(0,i.jsx)(t.h2,{id:"definition-lists",children:"Definition Lists"}),"\n",(0,i.jsx)(t.p,{children:"Many specs may want to include a section for terminology references, and Definition Lists are a great way to do that. Here's how to leverage Spec-Up's automatic term reference features via Definition List markup:"}),"\n",(0,i.jsxs)("pre",{children:[(0,i.jsx)(t.p,{children:"[[def: Term 1, Term One]]:\n~ This is the first term we will define."}),(0,i.jsx)(t.p,{children:"[[def: Term 2, Term Two]]:\n~ This is the second term, but not the last."}),(0,i.jsx)(t.p,{children:"[[def: Term 3, Term Three]]:\n~ This is the last term, because you know what they say: third term's the charm!"})]}),"\n",(0,i.jsx)(t.p,{children:"[[def: Term 1, Term One]]:\n~ This is the first term we will define."}),"\n",(0,i.jsx)(t.p,{children:"[[def: Term 2, Term Two]]:\n~ This is the second term, but not the last."}),"\n",(0,i.jsx)(t.p,{children:"[[def: Term 3, Term Three]]:\n~ This is the last term, because you know what they say: third term's the charm!"}),"\n",(0,i.jsx)(t.p,{children:"Now let's refer to some of the terms defined above to show how the auto-linking of terms works: [[ref: Term 1]], [[ref: Term Two]], [[ref: Term 3]]. Additionally, as long as you define your terms using Definition Lists (as seen in the markdown above), you will be able to hover any reference to a term to see a tooltip with its definition."}),"\n",(0,i.jsx)(t.h2,{id:"table-defined-terms",children:"Table-defined Terms"}),"\n",(0,i.jsx)(t.p,{children:"You can also reference table-oriented terms and definitions which are decomposed into heading-titled attributes in distinct cells:"}),"\n",(0,i.jsx)("pre",{children:(0,i.jsxs)(t.table,{children:[(0,i.jsx)(t.thead,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.th,{children:"Variable"}),(0,i.jsx)(t.th,{children:"Default Value"}),(0,i.jsx)(t.th,{children:"Max Value"})]})}),(0,i.jsx)(t.tbody,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"[[def: Variable 1]]"}),(0,i.jsx)(t.td,{children:"123"}),(0,i.jsx)(t.td,{children:"9999"})]})})]})}),"\n",(0,i.jsxs)(t.table,{children:[(0,i.jsx)(t.thead,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.th,{children:"Variable"}),(0,i.jsx)(t.th,{children:"Default Value"}),(0,i.jsx)(t.th,{children:"Max Value"})]})}),(0,i.jsx)(t.tbody,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"[[def: Variable 1]]"}),(0,i.jsx)(t.td,{children:"123"}),(0,i.jsx)(t.td,{children:"9999"})]})})]}),"\n",(0,i.jsx)(t.p,{children:"Anytime you add a definition of a term in the first column of a table, like [[ref: Variable 1]], it will link to the cell and display a tooltip with the entire set of row values when you hover the term."})]})}function c(e={}){const{wrapper:t}={...(0,s.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(h,{...e})}):h(e)}},8453:(e,t,r)=>{r.d(t,{R:()=>o,x:()=>d});var i=r(6540);const s={},n=i.createContext(s);function o(e){const t=i.useContext(n);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function d(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:o(e.components),i.createElement(n.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/84de3d6b.72103e19.js b/assets/js/84de3d6b.72103e19.js new file mode 100644 index 00000000..3eb3f217 --- /dev/null +++ b/assets/js/84de3d6b.72103e19.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[9151],{3200:(e,t,r)=>{r.r(t),r.d(t,{assets:()=>l,contentTitle:()=>o,default:()=>c,frontMatter:()=>s,metadata:()=>d,toc:()=>a});var i=r(4848),n=r(8453);const s={sidebar_position:2},o="Term References",d={id:"various-roles/terminology-authors-guide/term-references",title:"Term References",description:"Definition Lists",source:"@site/docs/various-roles/terminology-authors-guide/term-references.md",sourceDirName:"various-roles/terminology-authors-guide",slug:"/various-roles/terminology-authors-guide/term-references",permalink:"/spec-up-t-website/docs/various-roles/terminology-authors-guide/term-references",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/terminology-authors-guide/term-references.md",tags:[],version:"current",sidebarPosition:2,frontMatter:{sidebar_position:2},sidebar:"tutorialSidebar",previous:{title:"Intro",permalink:"/spec-up-t-website/docs/various-roles/terminology-authors-guide/introduction"},next:{title:"External Term References",permalink:"/spec-up-t-website/docs/various-roles/terminology-authors-guide/external-term-references"}},l={},a=[{value:"Definition Lists",id:"definition-lists",level:2},{value:"Table-defined Terms",id:"table-defined-terms",level:2}];function h(e){const t={h1:"h1",h2:"h2",p:"p",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",...(0,n.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(t.h1,{id:"term-references",children:"Term References"}),"\n",(0,i.jsx)(t.h2,{id:"definition-lists",children:"Definition Lists"}),"\n",(0,i.jsx)(t.p,{children:"Many specs may want to include a section for terminology references, and Definition Lists are a great way to do that. Here's how to leverage Spec-Up's automatic term reference features via Definition List markup:"}),"\n",(0,i.jsxs)("pre",{children:[(0,i.jsx)(t.p,{children:"[[def: Term 1, Term One]]:\n~ This is the first term we will define."}),(0,i.jsx)(t.p,{children:"[[def: Term 2, Term Two]]:\n~ This is the second term, but not the last."}),(0,i.jsx)(t.p,{children:"[[def: Term 3, Term Three]]:\n~ This is the last term, because you know what they say: third term's the charm!"})]}),"\n",(0,i.jsx)(t.p,{children:"[[def: Term 1, Term One]]:\n~ This is the first term we will define."}),"\n",(0,i.jsx)(t.p,{children:"[[def: Term 2, Term Two]]:\n~ This is the second term, but not the last."}),"\n",(0,i.jsx)(t.p,{children:"[[def: Term 3, Term Three]]:\n~ This is the last term, because you know what they say: third term's the charm!"}),"\n",(0,i.jsx)(t.p,{children:"Now let's refer to some of the terms defined above to show how the auto-linking of terms works: [[ref: Term 1]], [[ref: Term Two]], [[ref: Term 3]]. Additionally, as long as you define your terms using Definition Lists (as seen in the markdown above), you will be able to hover any reference to a term to see a tooltip with its definition."}),"\n",(0,i.jsx)(t.h2,{id:"table-defined-terms",children:"Table-defined Terms"}),"\n",(0,i.jsx)(t.p,{children:"You can also reference table-oriented terms and definitions which are decomposed into heading-titled attributes in distinct cells:"}),"\n",(0,i.jsx)("pre",{children:(0,i.jsxs)(t.table,{children:[(0,i.jsx)(t.thead,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.th,{children:"Variable"}),(0,i.jsx)(t.th,{children:"Default Value"}),(0,i.jsx)(t.th,{children:"Max Value"})]})}),(0,i.jsx)(t.tbody,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"[[def: Variable 1]]"}),(0,i.jsx)(t.td,{children:"123"}),(0,i.jsx)(t.td,{children:"9999"})]})})]})}),"\n",(0,i.jsxs)(t.table,{children:[(0,i.jsx)(t.thead,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.th,{children:"Variable"}),(0,i.jsx)(t.th,{children:"Default Value"}),(0,i.jsx)(t.th,{children:"Max Value"})]})}),(0,i.jsx)(t.tbody,{children:(0,i.jsxs)(t.tr,{children:[(0,i.jsx)(t.td,{children:"[[def: Variable 1]]"}),(0,i.jsx)(t.td,{children:"123"}),(0,i.jsx)(t.td,{children:"9999"})]})})]}),"\n",(0,i.jsx)(t.p,{children:"Anytime you add a definition of a term in the first column of a table, like [[ref: Variable 1]], it will link to the cell and display a tooltip with the entire set of row values when you hover the term."})]})}function c(e={}){const{wrapper:t}={...(0,n.R)(),...e.components};return t?(0,i.jsx)(t,{...e,children:(0,i.jsx)(h,{...e})}):h(e)}},8453:(e,t,r)=>{r.d(t,{R:()=>o,x:()=>d});var i=r(6540);const n={},s=i.createContext(n);function o(e){const t=i.useContext(s);return i.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function d(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:o(e.components),i.createElement(s.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/9428579a.0ebf0861.js b/assets/js/9428579a.30c66175.js similarity index 64% rename from assets/js/9428579a.0ebf0861.js rename to assets/js/9428579a.30c66175.js index 40cf4a85..8d7ff589 100644 --- a/assets/js/9428579a.0ebf0861.js +++ b/assets/js/9428579a.30c66175.js @@ -1 +1 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4167],{7879:(e,i,t)=>{t.r(i),t.d(i,{assets:()=>c,contentTitle:()=>a,default:()=>h,frontMatter:()=>o,metadata:()=>r,toc:()=>d});var n=t(4848),s=t(8453);const o={sidebar_position:19},a="Maintaining this site",r={id:"this-site-maintainers",title:"Maintaining this site",description:"Here you will find information about things specific to this site.",source:"@site/docs/this-site-maintainers.md",sourceDirName:".",slug:"/this-site-maintainers",permalink:"/spec-up-t-website/docs/this-site-maintainers",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/this-site-maintainers.md",tags:[],version:"current",sidebarPosition:19,frontMatter:{sidebar_position:19},sidebar:"tutorialSidebar",previous:{title:"Q & A",permalink:"/spec-up-t-website/docs/q-and-a"},next:{title:"Glossary",permalink:"/spec-up-t-website/docs/glossary"}},c={},d=[{value:"Updating the Demo Site",id:"updating-the-demo-site",level:2}];function l(e){const i={a:"a",code:"code",h1:"h1",h2:"h2",p:"p",...(0,s.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(i.h1,{id:"maintaining-this-site",children:"Maintaining this site"}),"\n",(0,n.jsx)(i.p,{children:"Here you will find information about things specific to this site."}),"\n",(0,n.jsx)(i.h2,{id:"updating-the-demo-site",children:"Updating the Demo Site"}),"\n",(0,n.jsxs)(i.p,{children:["The ",(0,n.jsx)(i.a,{href:"/spec-up-t-website/docs/spec-up-t-demo-site",children:"demo page"})," contains an example of a Spec-Up-T installation in an iFrame. This ",(0,n.jsx)(i.code,{children:"index.html"})," file is in ",(0,n.jsx)(i.code,{children:"/static/spec-up-t-demo/docs/"}),"."]}),"\n",(0,n.jsxs)(i.p,{children:["This ",(0,n.jsx)(i.code,{children:"index.html"})," file is a standard Spec-Up-T installation, as described in the ",(0,n.jsx)(i.a,{href:"/spec-up-t-website/docs/various-roles/admins-guide#installation",children:"admin section"}),"."]}),"\n",(0,n.jsxs)(i.p,{children:["This ",(0,n.jsx)(i.code,{children:"index.html"})," file is located in the GitHub repository of this site (the site you are now reading). The Spec-Up-T installation that generated the index file is not stored in any repository since it is a standard installation. You can install and generate it anywhere on your computer, then copy the index file to ",(0,n.jsx)(i.code,{children:"/static/spec-up-t-demo/docs/"}),"."]})]})}function h(e={}){const{wrapper:i}={...(0,s.R)(),...e.components};return i?(0,n.jsx)(i,{...e,children:(0,n.jsx)(l,{...e})}):l(e)}},8453:(e,i,t)=>{t.d(i,{R:()=>a,x:()=>r});var n=t(6540);const s={},o=n.createContext(s);function a(e){const i=n.useContext(o);return n.useMemo((function(){return"function"==typeof e?e(i):{...i,...e}}),[i,e])}function r(e){let i;return i=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:a(e.components),n.createElement(o.Provider,{value:i},e.children)}}}]); \ No newline at end of file +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[4167],{7879:(e,i,t)=>{t.r(i),t.d(i,{assets:()=>c,contentTitle:()=>a,default:()=>h,frontMatter:()=>o,metadata:()=>r,toc:()=>d});var n=t(4848),s=t(8453);const o={sidebar_position:19},a="Maintaining this site",r={id:"this-site-maintainers",title:"Maintaining this site",description:"Here you will find information about things specific to this site.",source:"@site/docs/this-site-maintainers.md",sourceDirName:".",slug:"/this-site-maintainers",permalink:"/spec-up-t-website/docs/this-site-maintainers",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/this-site-maintainers.md",tags:[],version:"current",sidebarPosition:19,frontMatter:{sidebar_position:19},sidebar:"tutorialSidebar",previous:{title:"Q & A",permalink:"/spec-up-t-website/docs/q-and-a"},next:{title:"Glossary",permalink:"/spec-up-t-website/docs/glossary"}},c={},d=[{value:"Updating the Demo Site",id:"updating-the-demo-site",level:2}];function l(e){const i={a:"a",code:"code",h1:"h1",h2:"h2",p:"p",...(0,s.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(i.h1,{id:"maintaining-this-site",children:"Maintaining this site"}),"\n",(0,n.jsx)(i.p,{children:"Here you will find information about things specific to this site."}),"\n",(0,n.jsx)(i.h2,{id:"updating-the-demo-site",children:"Updating the Demo Site"}),"\n",(0,n.jsxs)(i.p,{children:["The ",(0,n.jsx)(i.a,{href:"/spec-up-t-website/docs/spec-up-t-demo-site",children:"demo page"})," contains an example of a Spec-Up-T installation in an iFrame. This ",(0,n.jsx)(i.code,{children:"index.html"})," file is in ",(0,n.jsx)(i.code,{children:"/static/spec-up-t-demo/docs/"}),"."]}),"\n",(0,n.jsxs)(i.p,{children:["This ",(0,n.jsx)(i.code,{children:"index.html"})," file is a standard Spec-Up-T installation, as described in the ",(0,n.jsx)(i.a,{href:"/spec-up-t-website/docs/various-roles/admins-guide/#installation",children:"admin section"}),"."]}),"\n",(0,n.jsxs)(i.p,{children:["This ",(0,n.jsx)(i.code,{children:"index.html"})," file is located in the GitHub repository of this site (the site you are now reading). The Spec-Up-T installation that generated the index file is not stored in any repository since it is a standard installation. You can install and generate it anywhere on your computer, then copy the index file to ",(0,n.jsx)(i.code,{children:"/static/spec-up-t-demo/docs/"}),"."]})]})}function h(e={}){const{wrapper:i}={...(0,s.R)(),...e.components};return i?(0,n.jsx)(i,{...e,children:(0,n.jsx)(l,{...e})}):l(e)}},8453:(e,i,t)=>{t.d(i,{R:()=>a,x:()=>r});var n=t(6540);const s={},o=n.createContext(s);function a(e){const i=n.useContext(o);return n.useMemo((function(){return"function"==typeof e?e(i):{...i,...e}}),[i,e])}function r(e){let i;return i=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:a(e.components),n.createElement(o.Provider,{value:i},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/a061a251.f87e0e45.js b/assets/js/a061a251.f87e0e45.js new file mode 100644 index 00000000..97cd9f65 --- /dev/null +++ b/assets/js/a061a251.f87e0e45.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[3020],{5234:e=>{e.exports=JSON.parse('{"categoryGeneratedIndex":{"title":"Admins Guide","description":"Admins Guide.","slug":"/category/admins-guide","permalink":"/spec-up-t-website/docs/category/admins-guide","sidebar":"tutorialSidebar","navigation":{"previous":{"title":"General Guide","permalink":"/spec-up-t-website/docs/various-roles/general-guide"},"next":{"title":"Intro","permalink":"/spec-up-t-website/docs/various-roles/admins-guide/"}}}}')}}]); \ No newline at end of file diff --git a/assets/js/cf57817a.127a6075.js b/assets/js/cf57817a.127a6075.js deleted file mode 100644 index f653fe6f..00000000 --- a/assets/js/cf57817a.127a6075.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[833],{7771:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>c,contentTitle:()=>o,default:()=>l,frontMatter:()=>r,metadata:()=>a,toc:()=>d});var i=s(4848),t=s(8453);const r={sidebar_position:1},o="Glossary Maintainers Guide",a={id:"various-roles/glossary-maintainers-guide/introduction",title:"Glossary Maintainers Guide",description:"Under construction",source:"@site/docs/various-roles/glossary-maintainers-guide/introduction.md",sourceDirName:"various-roles/glossary-maintainers-guide",slug:"/various-roles/glossary-maintainers-guide/introduction",permalink:"/spec-up-t-website/docs/various-roles/glossary-maintainers-guide/introduction",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/glossary-maintainers-guide/introduction.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Glossary Maintainers Guide",permalink:"/spec-up-t-website/docs/category/glossary-maintainers-guide"},next:{title:"Readers Guide",permalink:"/spec-up-t-website/docs/category/readers-guide"}},c={},d=[];function u(e){const n={admonition:"admonition",h1:"h1",p:"p",...(0,t.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h1,{id:"glossary-maintainers-guide",children:"Glossary Maintainers Guide"}),"\n",(0,i.jsx)(n.admonition,{type:"warning",children:(0,i.jsx)(n.p,{children:"Under construction"})}),"\n",(0,i.jsx)(n.p,{children:"Uses: Source management tool."}),"\n",(0,i.jsx)(n.p,{children:"Reads and compares concepts in text and terminology in glossaries, (for example generated by Spec-Up) to use within his/hers \u201cown\u201d over-arching ToIP glossary."}),"\n",(0,i.jsx)(n.p,{children:"He/she builds as much consensus around terms and concepts and promotes using the ToIP glossary as reference material."})]})}function l(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(u,{...e})}):u(e)}},8453:(e,n,s)=>{s.d(n,{R:()=>o,x:()=>a});var i=s(6540);const t={},r=i.createContext(t);function o(e){const n=i.useContext(r);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:o(e.components),i.createElement(r.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/cf57817a.98d8b997.js b/assets/js/cf57817a.98d8b997.js new file mode 100644 index 00000000..257244fb --- /dev/null +++ b/assets/js/cf57817a.98d8b997.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[833],{7771:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>c,contentTitle:()=>r,default:()=>l,frontMatter:()=>o,metadata:()=>a,toc:()=>d});var s=t(4848),i=t(8453);const o={sidebar_position:1},r="Intro",a={id:"various-roles/glossary-maintainers-guide/introduction",title:"Intro",description:"Under construction",source:"@site/docs/various-roles/glossary-maintainers-guide/introduction.md",sourceDirName:"various-roles/glossary-maintainers-guide",slug:"/various-roles/glossary-maintainers-guide/introduction",permalink:"/spec-up-t-website/docs/various-roles/glossary-maintainers-guide/introduction",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/glossary-maintainers-guide/introduction.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Glossary Maintainers Guide",permalink:"/spec-up-t-website/docs/category/glossary-maintainers-guide"},next:{title:"Readers Guide",permalink:"/spec-up-t-website/docs/category/readers-guide"}},c={},d=[];function u(e){const n={admonition:"admonition",h1:"h1",p:"p",...(0,i.R)(),...e.components};return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(n.h1,{id:"intro",children:"Intro"}),"\n",(0,s.jsx)(n.admonition,{type:"warning",children:(0,s.jsx)(n.p,{children:"Under construction"})}),"\n",(0,s.jsx)(n.p,{children:"Uses: Source management tool."}),"\n",(0,s.jsx)(n.p,{children:"Reads and compares concepts in text and terminology in glossaries, (for example generated by Spec-Up) to use within his/hers \u201cown\u201d over-arching ToIP glossary."}),"\n",(0,s.jsx)(n.p,{children:"He/she builds as much consensus around terms and concepts and promotes using the ToIP glossary as reference material."})]})}function l(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,s.jsx)(n,{...e,children:(0,s.jsx)(u,{...e})}):u(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>r,x:()=>a});var s=t(6540);const i={},o=s.createContext(i);function r(e){const n=s.useContext(o);return s.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:r(e.components),s.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/d20ae096.17c4867f.js b/assets/js/d20ae096.17c4867f.js new file mode 100644 index 00000000..5489e4b0 --- /dev/null +++ b/assets/js/d20ae096.17c4867f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1122],{8419:(e,t,o)=>{o.r(t),o.d(t,{assets:()=>a,contentTitle:()=>s,default:()=>l,frontMatter:()=>r,metadata:()=>c,toc:()=>u});var n=o(4848),i=o(8453);const r={sidebar_position:1},s="Intro",c={id:"various-roles/terminology-authors-guide/introduction",title:"Intro",description:"Under construction",source:"@site/docs/various-roles/terminology-authors-guide/introduction.md",sourceDirName:"various-roles/terminology-authors-guide",slug:"/various-roles/terminology-authors-guide/introduction",permalink:"/spec-up-t-website/docs/various-roles/terminology-authors-guide/introduction",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/terminology-authors-guide/introduction.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Terminology Author Guide",permalink:"/spec-up-t-website/docs/category/terminology-author-guide"},next:{title:"Term References",permalink:"/spec-up-t-website/docs/various-roles/terminology-authors-guide/term-references"}},a={},u=[];function d(e){const t={admonition:"admonition",h1:"h1",p:"p",...(0,i.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(t.h1,{id:"intro",children:"Intro"}),"\n",(0,n.jsx)(t.admonition,{type:"warning",children:(0,n.jsx)(t.p,{children:"Under construction"})}),"\n",(0,n.jsx)(t.p,{children:"Focusses on term definitions covering concepts of the group he/she belongs to."}),"\n",(0,n.jsx)(t.p,{children:"Uses: an IDE, git and a browser extension, to edit Spec-Up markdown files for his/her specific context (mental model) in a version managed environment, authenticated, to write the concept and specification and offer this as a PR."}),"\n",(0,n.jsx)(t.p,{children:"He/she uses browser extensions to check technical consistency of the links in the text and harvests a personal collection of term definitions. Specification author terms that cover those concepts."})]})}function l(e={}){const{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(d,{...e})}):d(e)}},8453:(e,t,o)=>{o.d(t,{R:()=>s,x:()=>c});var n=o(6540);const i={},r=n.createContext(i);function s(e){const t=n.useContext(r);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function c(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:s(e.components),n.createElement(r.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/d20ae096.a8218849.js b/assets/js/d20ae096.a8218849.js deleted file mode 100644 index fe28e7a5..00000000 --- a/assets/js/d20ae096.a8218849.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1122],{8419:(e,t,o)=>{o.r(t),o.d(t,{assets:()=>u,contentTitle:()=>s,default:()=>l,frontMatter:()=>r,metadata:()=>c,toc:()=>a});var n=o(4848),i=o(8453);const r={sidebar_position:1},s="Terminology Authors Guide",c={id:"various-roles/terminology-authors-guide/introduction",title:"Terminology Authors Guide",description:"Under construction",source:"@site/docs/various-roles/terminology-authors-guide/introduction.md",sourceDirName:"various-roles/terminology-authors-guide",slug:"/various-roles/terminology-authors-guide/introduction",permalink:"/spec-up-t-website/docs/various-roles/terminology-authors-guide/introduction",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/terminology-authors-guide/introduction.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Terminology Author Guide",permalink:"/spec-up-t-website/docs/category/terminology-author-guide"},next:{title:"Term References",permalink:"/spec-up-t-website/docs/various-roles/terminology-authors-guide/term-references"}},u={},a=[];function d(e){const t={admonition:"admonition",h1:"h1",p:"p",...(0,i.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(t.h1,{id:"terminology-authors-guide",children:"Terminology Authors Guide"}),"\n",(0,n.jsx)(t.admonition,{type:"warning",children:(0,n.jsx)(t.p,{children:"Under construction"})}),"\n",(0,n.jsx)(t.p,{children:"Focusses on term definitions covering concepts of the group he/she belongs to."}),"\n",(0,n.jsx)(t.p,{children:"Uses: an IDE, git and a browser extension, to edit Spec-Up markdown files for his/her specific context (mental model) in a version managed environment, authenticated, to write the concept and specification and offer this as a PR."}),"\n",(0,n.jsx)(t.p,{children:"He/she uses browser extensions to check technical consistency of the links in the text and harvests a personal collection of term definitions. Specification author terms that cover those concepts."})]})}function l(e={}){const{wrapper:t}={...(0,i.R)(),...e.components};return t?(0,n.jsx)(t,{...e,children:(0,n.jsx)(d,{...e})}):d(e)}},8453:(e,t,o)=>{o.d(t,{R:()=>s,x:()=>c});var n=o(6540);const i={},r=n.createContext(i);function s(e){const t=n.useContext(r);return n.useMemo((function(){return"function"==typeof e?e(t):{...t,...e}}),[t,e])}function c(e){let t;return t=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:s(e.components),n.createElement(r.Provider,{value:t},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/dff1e1e9.8409bfbe.js b/assets/js/dff1e1e9.8409bfbe.js deleted file mode 100644 index 3aa020bd..00000000 --- a/assets/js/dff1e1e9.8409bfbe.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8838],{2234:(e,n,r)=>{r.r(n),r.d(n,{assets:()=>c,contentTitle:()=>t,default:()=>h,frontMatter:()=>o,metadata:()=>d,toc:()=>l});var i=r(4848),s=r(8453);const o={sidebar_position:1},t="General Guide",d={id:"various-roles/general-guide",title:"General Guide",description:"These are general instructions. This is a temporary page; parts will be moved to other pages and assigned to the various roles.",source:"@site/docs/various-roles/general-guide.md",sourceDirName:"various-roles",slug:"/various-roles/general-guide",permalink:"/spec-up-t-website/docs/various-roles/general-guide",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/general-guide.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Intro",permalink:"/spec-up-t-website/docs/various-roles/intro"},next:{title:"Admins Guide",permalink:"/spec-up-t-website/docs/various-roles/admins-guide"}},c={},l=[{value:"Get help",id:"get-help",level:2},{value:"Create (or edit the sample) spec.json",id:"create-or-edit-the-sample-specjson",level:2},{value:"Test spec.json",id:"test-specjson",level:2},{value:"Look up xrefs",id:"look-up-xrefs",level:2},{value:"Remove xref",id:"remove-xref",level:2},{value:"Create index.html",id:"create-indexhtml",level:2},{value:"You are ready",id:"you-are-ready",level:2},{value:"View your specification",id:"view-your-specification",level:2},{value:"Three different modes",id:"three-different-modes",level:2},{value:"Automation",id:"automation",level:2}];function a(e){const n={a:"a",admonition:"admonition",code:"code",em:"em",h1:"h1",h2:"h2",li:"li",p:"p",pre:"pre",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h1,{id:"general-guide",children:"General Guide"}),"\n",(0,i.jsx)(n.admonition,{type:"warning",children:(0,i.jsx)(n.p,{children:"These are general instructions. This is a temporary page; parts will be moved to other pages and assigned to the various roles."})}),"\n",(0,i.jsx)(n.h2,{id:"get-help",children:"Get help"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"npm run help\n"})}),"\n",(0,i.jsx)(n.p,{children:"This command will show a URL to the documentation website (the website you are reading right now)."}),"\n",(0,i.jsxs)(n.h2,{id:"create-or-edit-the-sample-specjson",children:["Create (or edit the sample) ",(0,i.jsx)(n.code,{children:"spec.json"})]}),"\n",(0,i.jsxs)(n.p,{children:["The",(0,i.jsx)(n.code,{children:"specs.json"})," file ",(0,i.jsx)(n.strong,{children:"in the root folder of your repository"})," specifies configuration values used in the generation of your spec documents. The values in your ",(0,i.jsx)(n.code,{children:"specs.json"})," file include things like where your spec's markdown files are located, where to output the generated spec document, and various metadata values used in rendering, such as the title, logo, and repo links for each of your specs. The following are the required/optional fields supported in the ",(0,i.jsx)(n.code,{children:"specs.json"})," config file:"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"public_root"})})," ",(0,i.jsx)(n.em,{children:"(PATH STRING, optional)"})," - For some platforms and services where you may want to output your rendered spec, the pathing may differ from the directory structure of your local project. To account for this, you can use the ",(0,i.jsx)(n.code,{children:"public_root"})," property to specify the insertion of a path segment to account for the difference in pathing between your local renders and wherever you publish your spec."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"specs"})})," ",(0,i.jsx)(n.em,{children:"(ARRAY, required)"})," - the ",(0,i.jsx)(n.code,{children:"specs"})," array contains descriptor objects for each of the specs you are generating in your project and are composed of the following required and optional properties:"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"spec_directory"})})," ",(0,i.jsx)(n.em,{children:"(STRING, required)"})," - You must specify the ",(0,i.jsx)(n.strong,{children:"repo-root-relative"})," location of your spec's markdown file directory. You ",(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.strong,{children:"MUST"})})," name your spec's markdown file ",(0,i.jsx)(n.code,{children:"spec.md"})," and locate it in your ",(0,i.jsx)(n.code,{children:"spec_directory"})," so the tool can automatically find and use it for rendering. If you want to use a different name for the markdown file, or you have multiple markdown files you would like the tool to assemble into one document, you must specify them using the optional",(0,i.jsx)(n.code,{children:"markdown_paths"}),' field described below. See the "multi-file" example in the spec-up repo.']}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"title"})})," ",(0,i.jsx)(n.em,{children:"(STRING, required)"})," - You must add a title for your spec, which will be rendered in the generated document's H1 text and page title."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"logo"})})," ",(0,i.jsx)(n.em,{children:"(PATH/URI STRING, optional)"})," - You may add a reference to a logo asset, either via a path to the asset or a URI"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"logo_link"})})," ",(0,i.jsx)(n.em,{children:"(URI STRING, optional)"})," - The URI you want your logo to point to on the rendered page."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"markdown_paths"})})," ",(0,i.jsx)(n.em,{children:"(ARRAY, optional)"})," - If you want to name your spec's markdown file something other than ",(0,i.jsx)(n.code,{children:"spec.md"}),", or you have multiple files you would like assembled into a single output document, you must specify their paths as array entries in the order you would like them assembled. The paths in this array are assumed to be based on the ",(0,i.jsx)(n.code,{children:"spec_directory"})," you specified, so ",(0,i.jsx)(n.em,{children:"DO NOT"})," repeat the full root relative path."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"katex"})})," ",(0,i.jsx)(n.em,{children:"(BOOLEAN, optional)"})," - To enable TeX support via KaTeX, set this property to ",(0,i.jsx)(n.code,{children:"true"}),". After rendering, be sure to copy the ",(0,i.jsx)(n.code,{children:"fonts/"})," subdirectory containing the necessary web fonts."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"output_path"})})," ",(0,i.jsx)(n.em,{children:"(STRING, optional)"})," - If you want the generated spec document to be output to a different location than the ",(0,i.jsx)(n.code,{children:"spec_directory"})," you specified (e.g. the project root for GitHub Pages publishing), you can specify another root relative path (use ",(0,i.jsx)(n.code,{children:"./"})," for root), and the tool will write the document file there instead."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"source"})})," ",(0,i.jsx)(n.em,{children:"(OBJECT, optional)"})," - this object allows you to configure where repo-specific data is pulled from to power some of the more advanced repo-related features. To do this, specify the code hosting service by adding a service ID string to ",(0,i.jsx)(n.code,{children:"host"})," (currently Spec-Up only supports ",(0,i.jsx)(n.code,{children:'"github"'}),", but this is extensible), add the account/org the repo is located within via the ",(0,i.jsx)(n.code,{children:"account"})," property, and add the repo name under the ",(0,i.jsx)(n.code,{children:"repo"})," property. Here is an example configuration:"]}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-json",children:'{\n"host": "github",\n"account": "decentralized-identity",\n"repo": "sidetree"\n}\n'})}),"\n",(0,i.jsx)(n.p,{children:"You're ready to start rendering specs as HTML sites locally and/or pushing them to github pages however you see fit to automate."}),"\n",(0,i.jsxs)(n.h2,{id:"test-specjson",children:["Test ",(0,i.jsx)(n.code,{children:"spec.json"})]}),"\n",(0,i.jsxs)(n.p,{children:["Once you have edited the ",(0,i.jsx)(n.code,{children:"spec.json,"})," you can test here to see if it is OK; that is, it checks whether each key is present. It does not check whether the value of the key meets specific rules:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"npm run validatespec\n"})}),"\n",(0,i.jsx)(n.p,{children:"If a key is missing you will get a notification about it."}),"\n",(0,i.jsxs)(n.h2,{id:"look-up-xrefs",children:["Look up ",(0,i.jsx)(n.code,{children:"xrefs"})]}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"xrefs"})," are references to external glossaries (specifications)."]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"npm run xrefs\n"})}),"\n",(0,i.jsxs)(n.p,{children:["Now, the ",(0,i.jsx)(n.code,{children:"xref"})," is generated, if any."]}),"\n",(0,i.jsxs)(n.p,{children:["Every ",(0,i.jsx)(n.code,{children:"xref"})," is checked against a local data collection to see if there is already a reference. If so, it is left untouched. This way, every xref will point to the definition as it was created. If the external term changes in the meantime, the reference is still to the original version."]}),"\n",(0,i.jsxs)(n.h2,{id:"remove-xref",children:["Remove ",(0,i.jsx)(n.code,{children:"xref"})]}),"\n",(0,i.jsxs)(n.p,{children:["Removing an ",(0,i.jsx)(n.code,{children:"xref"})," from the text is something you'll do via the text editor. However, if you want to update the xref and make it point to the current version of the external reference, remove the current reference that might point to an older version:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:'npm run removexref -- "termValue" "externalSpecValue"\n'})}),"\n",(0,i.jsxs)(n.p,{children:["After that, you can run ",(0,i.jsx)(n.code,{children:"npm run xrefs"})," again to get the latest reference (that might be identical if the external reference did not change)."]}),"\n",(0,i.jsx)(n.h2,{id:"create-indexhtml",children:"Create index.html"}),"\n",(0,i.jsxs)(n.p,{children:["The final result will be just one file: ",(0,i.jsx)(n.code,{children:"index.html"}),". This file is rendered or re-rendered with the following command:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"npm run render\n"})}),"\n",(0,i.jsxs)(n.p,{children:["Now, an index.html file is created in the ",(0,i.jsx)(n.code,{children:"docs"})," directory. This is the default directory specified in the ",(0,i.jsx)(n.code,{children:"specs.json"})," file."]}),"\n",(0,i.jsx)(n.h2,{id:"you-are-ready",children:"You are ready"}),"\n",(0,i.jsxs)(n.p,{children:["Now you have a basic Spec-Up-T specification file (",(0,i.jsx)(n.code,{children:"index.html"}),") with the following content:"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["a ",(0,i.jsx)(n.code,{children:"specs.json"})," file"]}),"\n",(0,i.jsxs)(n.li,{children:["a ",(0,i.jsx)(n.code,{children:"spec/"})," directory with sample markdown files"]}),"\n",(0,i.jsxs)(n.li,{children:["a ",(0,i.jsx)(n.code,{children:"docs"})," directory with a sample index.html file"]}),"\n",(0,i.jsxs)(n.li,{children:["a ",(0,i.jsx)(n.code,{children:"node_modules"})," directory, a ",(0,i.jsx)(n.code,{children:"package.json"})," file, and a ",(0,i.jsx)(n.code,{children:"package-lock.json"})," file (these three elements belong to the ",(0,i.jsx)(n.code,{children:"npm"})," system)"]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"view-your-specification",children:"View your specification"}),"\n",(0,i.jsxs)(n.p,{children:["So the ",(0,i.jsx)(n.code,{children:"index.html"})," is the endresult. You should view it in a browser. There are two ways to do this:"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["via ",(0,i.jsx)(n.code,{children:"http://"})]}),"\n",(0,i.jsxs)(n.li,{children:["via ",(0,i.jsx)(n.code,{children:"file:///"})]}),"\n"]}),"\n",(0,i.jsxs)(n.p,{children:["The simplest way to do so is via ",(0,i.jsx)(n.code,{children:"file:///"}),": go to the ",(0,i.jsx)(n.code,{children:"index.html"})," file with your Explorer, Finder, or other file manager, and double-click on it. Usually, it now opens in your browser."]}),"\n",(0,i.jsx)(n.p,{children:"If not, go to the browser and try to open the file from the browser menu."}),"\n",(0,i.jsxs)(n.p,{children:["This way, you open the ",(0,i.jsx)(n.code,{children:"index.html"})," file via the ",(0,i.jsx)(n.code,{children:"file protocol"})," (\u201c",(0,i.jsx)(n.code,{children:"file:///"}),"\u201d)."]}),"\n",(0,i.jsxs)(n.p,{children:["You can also access it via HTTP. You then need to place the ",(0,i.jsx)(n.code,{children:"index.html"})," file on a web server and access it through a browser using the URL under which the file is accessible."]}),"\n",(0,i.jsx)(n.p,{children:"This way, you can share it with the world by sharing the URL."}),"\n",(0,i.jsx)(n.admonition,{type:"info",children:(0,i.jsx)(n.p,{children:"HTTP stands for HyperText Transfer Protocol. It is the foundation of any data exchange on the Web and a protocol for transmitting hypertext requests and information online. The World Wide Web uses HTTP and defines how messages are formatted and transmitted and how web servers and browsers should respond to various commands."})}),"\n",(0,i.jsx)(n.h2,{id:"three-different-modes",children:"Three different modes"}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"npm run render"})," is not the only way to go. There are three different modes for rendering the specification:"]}),"\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{children:"command"}),(0,i.jsx)(n.th,{children:"behavior"})]})}),(0,i.jsxs)(n.tbody,{children:[(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"npm run edit"})}),(0,i.jsxs)(n.td,{children:["After rendering, this will stay running, and the ",(0,i.jsx)(n.code,{children:"gulp"})," library will watch the source files in your spec directory/ies for changes and re-render any time you save a file. Opening these rendered files in a browser and refreshing them will keep you up to date."]})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"npm run render"})}),(0,i.jsx)(n.td,{children:"This renders the site once and does not keep a gulpy watch on the underlying files."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"npm run dev"})}),(0,i.jsx)(n.td,{children:"this enables debugging features."})]})]})]}),"\n",(0,i.jsx)(n.h2,{id:"automation",children:"Automation"}),"\n",(0,i.jsxs)(n.p,{children:["The above scripts can easily be triggered by ",(0,i.jsx)(n.a,{href:"../glossary#github-actions",children:"github actions"}),". See ",(0,i.jsx)(n.a,{href:"https://github.com/decentralized-identity/spec-up/blob/master/.github/workflows/render-specs.yml",children:"this repo's example"})]})]})}function h(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(a,{...e})}):a(e)}},8453:(e,n,r)=>{r.d(n,{R:()=>t,x:()=>d});var i=r(6540);const s={},o=i.createContext(s);function t(e){const n=i.useContext(o);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function d(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:t(e.components),i.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/dff1e1e9.fac9877a.js b/assets/js/dff1e1e9.fac9877a.js new file mode 100644 index 00000000..785ac18e --- /dev/null +++ b/assets/js/dff1e1e9.fac9877a.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8838],{2234:(e,n,r)=>{r.r(n),r.d(n,{assets:()=>c,contentTitle:()=>t,default:()=>h,frontMatter:()=>o,metadata:()=>d,toc:()=>l});var i=r(4848),s=r(8453);const o={sidebar_position:1},t="General Guide",d={id:"various-roles/general-guide",title:"General Guide",description:"These are general instructions. This is a temporary page; parts will be moved to other pages and assigned to the various roles.",source:"@site/docs/various-roles/general-guide.md",sourceDirName:"various-roles",slug:"/various-roles/general-guide",permalink:"/spec-up-t-website/docs/various-roles/general-guide",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/general-guide.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{sidebar_position:1},sidebar:"tutorialSidebar",previous:{title:"Intro",permalink:"/spec-up-t-website/docs/various-roles/intro"},next:{title:"Admins Guide",permalink:"/spec-up-t-website/docs/category/admins-guide"}},c={},l=[{value:"Get help",id:"get-help",level:2},{value:"Create (or edit the sample) spec.json",id:"create-or-edit-the-sample-specjson",level:2},{value:"Test spec.json",id:"test-specjson",level:2},{value:"Look up xrefs",id:"look-up-xrefs",level:2},{value:"Remove xref",id:"remove-xref",level:2},{value:"Create index.html",id:"create-indexhtml",level:2},{value:"You are ready",id:"you-are-ready",level:2},{value:"View your specification",id:"view-your-specification",level:2},{value:"Three different modes",id:"three-different-modes",level:2},{value:"Automation",id:"automation",level:2}];function a(e){const n={a:"a",admonition:"admonition",code:"code",em:"em",h1:"h1",h2:"h2",li:"li",p:"p",pre:"pre",strong:"strong",table:"table",tbody:"tbody",td:"td",th:"th",thead:"thead",tr:"tr",ul:"ul",...(0,s.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h1,{id:"general-guide",children:"General Guide"}),"\n",(0,i.jsx)(n.admonition,{type:"warning",children:(0,i.jsx)(n.p,{children:"These are general instructions. This is a temporary page; parts will be moved to other pages and assigned to the various roles."})}),"\n",(0,i.jsx)(n.h2,{id:"get-help",children:"Get help"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"npm run help\n"})}),"\n",(0,i.jsx)(n.p,{children:"This command will show a URL to the documentation website (the website you are reading right now)."}),"\n",(0,i.jsxs)(n.h2,{id:"create-or-edit-the-sample-specjson",children:["Create (or edit the sample) ",(0,i.jsx)(n.code,{children:"spec.json"})]}),"\n",(0,i.jsxs)(n.p,{children:["The",(0,i.jsx)(n.code,{children:"specs.json"})," file ",(0,i.jsx)(n.strong,{children:"in the root folder of your repository"})," specifies configuration values used in the generation of your spec documents. The values in your ",(0,i.jsx)(n.code,{children:"specs.json"})," file include things like where your spec's markdown files are located, where to output the generated spec document, and various metadata values used in rendering, such as the title, logo, and repo links for each of your specs. The following are the required/optional fields supported in the ",(0,i.jsx)(n.code,{children:"specs.json"})," config file:"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"public_root"})})," ",(0,i.jsx)(n.em,{children:"(PATH STRING, optional)"})," - For some platforms and services where you may want to output your rendered spec, the pathing may differ from the directory structure of your local project. To account for this, you can use the ",(0,i.jsx)(n.code,{children:"public_root"})," property to specify the insertion of a path segment to account for the difference in pathing between your local renders and wherever you publish your spec."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"specs"})})," ",(0,i.jsx)(n.em,{children:"(ARRAY, required)"})," - the ",(0,i.jsx)(n.code,{children:"specs"})," array contains descriptor objects for each of the specs you are generating in your project and are composed of the following required and optional properties:"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"spec_directory"})})," ",(0,i.jsx)(n.em,{children:"(STRING, required)"})," - You must specify the ",(0,i.jsx)(n.strong,{children:"repo-root-relative"})," location of your spec's markdown file directory. You ",(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.strong,{children:"MUST"})})," name your spec's markdown file ",(0,i.jsx)(n.code,{children:"spec.md"})," and locate it in your ",(0,i.jsx)(n.code,{children:"spec_directory"})," so the tool can automatically find and use it for rendering. If you want to use a different name for the markdown file, or you have multiple markdown files you would like the tool to assemble into one document, you must specify them using the optional",(0,i.jsx)(n.code,{children:"markdown_paths"}),' field described below. See the "multi-file" example in the spec-up repo.']}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"title"})})," ",(0,i.jsx)(n.em,{children:"(STRING, required)"})," - You must add a title for your spec, which will be rendered in the generated document's H1 text and page title."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"logo"})})," ",(0,i.jsx)(n.em,{children:"(PATH/URI STRING, optional)"})," - You may add a reference to a logo asset, either via a path to the asset or a URI"]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"logo_link"})})," ",(0,i.jsx)(n.em,{children:"(URI STRING, optional)"})," - The URI you want your logo to point to on the rendered page."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"markdown_paths"})})," ",(0,i.jsx)(n.em,{children:"(ARRAY, optional)"})," - If you want to name your spec's markdown file something other than ",(0,i.jsx)(n.code,{children:"spec.md"}),", or you have multiple files you would like assembled into a single output document, you must specify their paths as array entries in the order you would like them assembled. The paths in this array are assumed to be based on the ",(0,i.jsx)(n.code,{children:"spec_directory"})," you specified, so ",(0,i.jsx)(n.em,{children:"DO NOT"})," repeat the full root relative path."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"katex"})})," ",(0,i.jsx)(n.em,{children:"(BOOLEAN, optional)"})," - To enable TeX support via KaTeX, set this property to ",(0,i.jsx)(n.code,{children:"true"}),". After rendering, be sure to copy the ",(0,i.jsx)(n.code,{children:"fonts/"})," subdirectory containing the necessary web fonts."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"output_path"})})," ",(0,i.jsx)(n.em,{children:"(STRING, optional)"})," - If you want the generated spec document to be output to a different location than the ",(0,i.jsx)(n.code,{children:"spec_directory"})," you specified (e.g. the project root for GitHub Pages publishing), you can specify another root relative path (use ",(0,i.jsx)(n.code,{children:"./"})," for root), and the tool will write the document file there instead."]}),"\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.strong,{children:(0,i.jsx)(n.code,{children:"source"})})," ",(0,i.jsx)(n.em,{children:"(OBJECT, optional)"})," - this object allows you to configure where repo-specific data is pulled from to power some of the more advanced repo-related features. To do this, specify the code hosting service by adding a service ID string to ",(0,i.jsx)(n.code,{children:"host"})," (currently Spec-Up only supports ",(0,i.jsx)(n.code,{children:'"github"'}),", but this is extensible), add the account/org the repo is located within via the ",(0,i.jsx)(n.code,{children:"account"})," property, and add the repo name under the ",(0,i.jsx)(n.code,{children:"repo"})," property. Here is an example configuration:"]}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-json",children:'{\n"host": "github",\n"account": "decentralized-identity",\n"repo": "sidetree"\n}\n'})}),"\n",(0,i.jsx)(n.p,{children:"You're ready to start rendering specs as HTML sites locally and/or pushing them to github pages however you see fit to automate."}),"\n",(0,i.jsxs)(n.h2,{id:"test-specjson",children:["Test ",(0,i.jsx)(n.code,{children:"spec.json"})]}),"\n",(0,i.jsxs)(n.p,{children:["Once you have edited the ",(0,i.jsx)(n.code,{children:"spec.json,"})," you can test here to see if it is OK; that is, it checks whether each key is present. It does not check whether the value of the key meets specific rules:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"npm run validatespec\n"})}),"\n",(0,i.jsx)(n.p,{children:"If a key is missing you will get a notification about it."}),"\n",(0,i.jsxs)(n.h2,{id:"look-up-xrefs",children:["Look up ",(0,i.jsx)(n.code,{children:"xrefs"})]}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"xrefs"})," are references to external glossaries (specifications)."]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"npm run xrefs\n"})}),"\n",(0,i.jsxs)(n.p,{children:["Now, the ",(0,i.jsx)(n.code,{children:"xref"})," is generated, if any."]}),"\n",(0,i.jsxs)(n.p,{children:["Every ",(0,i.jsx)(n.code,{children:"xref"})," is checked against a local data collection to see if there is already a reference. If so, it is left untouched. This way, every xref will point to the definition as it was created. If the external term changes in the meantime, the reference is still to the original version."]}),"\n",(0,i.jsxs)(n.h2,{id:"remove-xref",children:["Remove ",(0,i.jsx)(n.code,{children:"xref"})]}),"\n",(0,i.jsxs)(n.p,{children:["Removing an ",(0,i.jsx)(n.code,{children:"xref"})," from the text is something you'll do via the text editor. However, if you want to update the xref and make it point to the current version of the external reference, remove the current reference that might point to an older version:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:'npm run removexref -- "termValue" "externalSpecValue"\n'})}),"\n",(0,i.jsxs)(n.p,{children:["After that, you can run ",(0,i.jsx)(n.code,{children:"npm run xrefs"})," again to get the latest reference (that might be identical if the external reference did not change)."]}),"\n",(0,i.jsx)(n.h2,{id:"create-indexhtml",children:"Create index.html"}),"\n",(0,i.jsxs)(n.p,{children:["The final result will be just one file: ",(0,i.jsx)(n.code,{children:"index.html"}),". This file is rendered or re-rendered with the following command:"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"npm run render\n"})}),"\n",(0,i.jsxs)(n.p,{children:["Now, an index.html file is created in the ",(0,i.jsx)(n.code,{children:"docs"})," directory. This is the default directory specified in the ",(0,i.jsx)(n.code,{children:"specs.json"})," file."]}),"\n",(0,i.jsx)(n.h2,{id:"you-are-ready",children:"You are ready"}),"\n",(0,i.jsxs)(n.p,{children:["Now you have a basic Spec-Up-T specification file (",(0,i.jsx)(n.code,{children:"index.html"}),") with the following content:"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["a ",(0,i.jsx)(n.code,{children:"specs.json"})," file"]}),"\n",(0,i.jsxs)(n.li,{children:["a ",(0,i.jsx)(n.code,{children:"spec/"})," directory with sample markdown files"]}),"\n",(0,i.jsxs)(n.li,{children:["a ",(0,i.jsx)(n.code,{children:"docs"})," directory with a sample index.html file"]}),"\n",(0,i.jsxs)(n.li,{children:["a ",(0,i.jsx)(n.code,{children:"node_modules"})," directory, a ",(0,i.jsx)(n.code,{children:"package.json"})," file, and a ",(0,i.jsx)(n.code,{children:"package-lock.json"})," file (these three elements belong to the ",(0,i.jsx)(n.code,{children:"npm"})," system)"]}),"\n"]}),"\n",(0,i.jsx)(n.h2,{id:"view-your-specification",children:"View your specification"}),"\n",(0,i.jsxs)(n.p,{children:["So the ",(0,i.jsx)(n.code,{children:"index.html"})," is the endresult. You should view it in a browser. There are two ways to do this:"]}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["via ",(0,i.jsx)(n.code,{children:"http://"})]}),"\n",(0,i.jsxs)(n.li,{children:["via ",(0,i.jsx)(n.code,{children:"file:///"})]}),"\n"]}),"\n",(0,i.jsxs)(n.p,{children:["The simplest way to do so is via ",(0,i.jsx)(n.code,{children:"file:///"}),": go to the ",(0,i.jsx)(n.code,{children:"index.html"})," file with your Explorer, Finder, or other file manager, and double-click on it. Usually, it now opens in your browser."]}),"\n",(0,i.jsx)(n.p,{children:"If not, go to the browser and try to open the file from the browser menu."}),"\n",(0,i.jsxs)(n.p,{children:["This way, you open the ",(0,i.jsx)(n.code,{children:"index.html"})," file via the ",(0,i.jsx)(n.code,{children:"file protocol"})," (\u201c",(0,i.jsx)(n.code,{children:"file:///"}),"\u201d)."]}),"\n",(0,i.jsxs)(n.p,{children:["You can also access it via HTTP. You then need to place the ",(0,i.jsx)(n.code,{children:"index.html"})," file on a web server and access it through a browser using the URL under which the file is accessible."]}),"\n",(0,i.jsx)(n.p,{children:"This way, you can share it with the world by sharing the URL."}),"\n",(0,i.jsx)(n.admonition,{type:"info",children:(0,i.jsx)(n.p,{children:"HTTP stands for HyperText Transfer Protocol. It is the foundation of any data exchange on the Web and a protocol for transmitting hypertext requests and information online. The World Wide Web uses HTTP and defines how messages are formatted and transmitted and how web servers and browsers should respond to various commands."})}),"\n",(0,i.jsx)(n.h2,{id:"three-different-modes",children:"Three different modes"}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.code,{children:"npm run render"})," is not the only way to go. There are three different modes for rendering the specification:"]}),"\n",(0,i.jsxs)(n.table,{children:[(0,i.jsx)(n.thead,{children:(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.th,{children:"command"}),(0,i.jsx)(n.th,{children:"behavior"})]})}),(0,i.jsxs)(n.tbody,{children:[(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"npm run edit"})}),(0,i.jsxs)(n.td,{children:["After rendering, this will stay running, and the ",(0,i.jsx)(n.code,{children:"gulp"})," library will watch the source files in your spec directory/ies for changes and re-render any time you save a file. Opening these rendered files in a browser and refreshing them will keep you up to date."]})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"npm run render"})}),(0,i.jsx)(n.td,{children:"This renders the site once and does not keep a gulpy watch on the underlying files."})]}),(0,i.jsxs)(n.tr,{children:[(0,i.jsx)(n.td,{children:(0,i.jsx)(n.code,{children:"npm run dev"})}),(0,i.jsx)(n.td,{children:"this enables debugging features."})]})]})]}),"\n",(0,i.jsx)(n.h2,{id:"automation",children:"Automation"}),"\n",(0,i.jsxs)(n.p,{children:["The above scripts can easily be triggered by ",(0,i.jsx)(n.a,{href:"../glossary#github-actions",children:"github actions"}),". See ",(0,i.jsx)(n.a,{href:"https://github.com/decentralized-identity/spec-up/blob/master/.github/workflows/render-specs.yml",children:"this repo's example"})]})]})}function h(e={}){const{wrapper:n}={...(0,s.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(a,{...e})}):a(e)}},8453:(e,n,r)=>{r.d(n,{R:()=>t,x:()=>d});var i=r(6540);const s={},o=i.createContext(s);function t(e){const n=i.useContext(o);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function d(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(s):e.components||s:t(e.components),i.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/e0c4e08d.72abc757.js b/assets/js/e0c4e08d.72abc757.js new file mode 100644 index 00000000..5253a799 --- /dev/null +++ b/assets/js/e0c4e08d.72abc757.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[538],{3362:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>h,contentTitle:()=>d,default:()=>u,frontMatter:()=>a,metadata:()=>c,toc:()=>l});var o=t(4848),i=t(8453),s=t(6540);const r=e=>{let{src:n,width:t}=e;const i=(0,s.useRef)(null);return(0,o.jsx)("iframe",{ref:i,src:n,width:t||"100%",style:{border:"none",width:t||"100%",height:"auto"},onLoad:()=>{try{const e=i.current,n=e.contentDocument.body,t=e.contentDocument.documentElement,o=Math.max(n.scrollHeight,n.offsetHeight,t.clientHeight,t.scrollHeight,t.offsetHeight);e.style.height=`${o}px`}catch(e){console.error("Error accessing iframe content:",e)}}})},a={sidebar_position:16},d="Spec-Up-T demo",c={id:"spec-up-t-demo-site",title:"Spec-Up-T demo",description:"The Demo",source:"@site/docs/spec-up-t-demo-site.mdx",sourceDirName:".",slug:"/spec-up-t-demo-site",permalink:"/spec-up-t-website/docs/spec-up-t-demo-site",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/spec-up-t-demo-site.mdx",tags:[],version:"current",sidebarPosition:16,frontMatter:{sidebar_position:16},sidebar:"tutorialSidebar",previous:{title:"Technical skills needed",permalink:"/spec-up-t-website/docs/various-roles/technical-skills-needed"},next:{title:"How it came to be",permalink:"/spec-up-t-website/docs/how-it-came-to-be"}},h={},l=[{value:"The Demo",id:"the-demo",level:2},{value:"Begin of the Spec-Up-T demo:",id:"begin-of-the-spec-up-t-demo",level:3},{value:"End of the Spec-Up-T demo",id:"end-of-the-spec-up-t-demo",level:3},{value:"The markdown",id:"the-markdown",level:2}];function p(e){const n={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",hr:"hr",li:"li",ol:"ol",p:"p",pre:"pre",...(0,i.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.h1,{id:"spec-up-t-demo",children:"Spec-Up-T demo"}),"\n",(0,o.jsx)(n.h2,{id:"the-demo",children:"The Demo"}),"\n",(0,o.jsxs)(n.p,{children:["Below is a demo of the Spec-Up-T website in an iFrame. You can also open the Spec-Up-T website in a standalone window by clicking ",(0,o.jsx)(n.a,{href:"https://blockchainbird.github.io/spec-up-t-website/spec-up-t-demo/docs/index.html",children:"here"}),"."]}),"\n",(0,o.jsx)(n.p,{children:"This demo showcases how a Spec-Up-T specification (a single index.html file) can be integrated into other systems."}),"\n",(0,o.jsx)(n.p,{children:"In this Spec-Up-T demo, you will find:"}),"\n",(0,o.jsxs)(n.ol,{children:["\n",(0,o.jsx)(n.li,{children:"Examples of definitions and references"}),"\n",(0,o.jsx)(n.li,{children:"Examples of various styles that can be used in Spec-Up-T"}),"\n"]}),"\n",(0,o.jsxs)(n.p,{children:["Below is the Spec-Up-T website in an iFrame. Open the Spec-Up-T website in a standalone window by clicking ",(0,o.jsx)(n.a,{href:"https://blockchainbird.github.io/spec-up-t-website/spec-up-t-demo/docs/index.html",children:"here"}),"."]}),"\n",(0,o.jsx)(n.hr,{}),"\n",(0,o.jsx)(n.h3,{id:"begin-of-the-spec-up-t-demo",children:"Begin of the Spec-Up-T demo:"}),"\n",(0,o.jsx)(n.hr,{}),"\n",(0,o.jsx)(r,{src:"/spec-up-t-website/spec-up-t-demo/docs/index.html",width:"100%"}),"\n",(0,o.jsx)(n.hr,{}),"\n",(0,o.jsx)(n.h3,{id:"end-of-the-spec-up-t-demo",children:"End of the Spec-Up-T demo"}),"\n",(0,o.jsx)(n.hr,{}),"\n",(0,o.jsx)(n.h2,{id:"the-markdown",children:"The markdown"}),"\n",(0,o.jsx)(n.p,{children:"Below is the markdown of the \u201cDemo of example markup in Spec-Up-T and Markdown\u201d section of demo Spec-Up-T above:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{children:'## Demo of example markup in Spec-Up-T and Markdown\n\n### Blockquote\n\n> To be, or not to be, that is the question:\nWhether \'tis nobler in the mind to suffer\nThe slings and arrows of outrageous fortune,\nOr to take arms against a sea of troubles\nAnd by opposing end them. To die\u2014to sleep,\nNo more;\n\n### Notices\n\n
\n::: note Basic Note\n  Check this out.\n:::\n
\n\n::: note Basic Note\n Check this out.\n:::\n\n::: note\n Here\'s another.\n:::\n\n::: note\n And one more!\n:::\n\n::: note Basic Note\n One last note!!!\n:::\n\n
\n::: issue Issue Notice\n  I take issue with that, kind sir.\n:::\n
\n\n::: issue Issue Notice\n I take issue with that, kind sir.\n:::\n\n
\n::: warning Warning Notice\n  Houston, I think we have a problem\n:::\n
\n\n::: warning Warning Notice\n Houston, I think we have a problem\n:::\n\n
\n::: todo Really Important\n  Get this done!\n:::\n
\n\n::: todo Really Important\n Get this done!\n:::\n\n
\n::: example Code Example\n  Put your code block here\n:::\n
\n\n::: example Code Example\n\n\\`\\`\\`json\n// Some comment in JSON\n{\n "foo": "bar",\n "baz": 2\n}\n\\`\\`\\`\n\n:::\n\n### Content Insertion\n\nUse the following format to pull in content from other files in your project:\n\n
\nThis text has been inserted here from another file: [[insert: assets/test.text]]\n
\n\nThis text has been inserted here from another file: [[insert: assets/test.text]]\n\nYou can even insert content within more complex blocks, like the JSON object below which is being pulled in and rendered in a syntax-highlighted example block:\n
\n::: example Code Example\n\\`\\`\\`json\n[[insert: assets/test.json]]\n\\`\\`\\`\n:::\n
\n\n::: example Code Example\n\n\\`\\`\\`json\n[[insert: assets/test.json]]\n\\`\\`\\`\n\n:::\n\n### Tables\n\n
\nStage | Direct Products | ATP Yields\n----: | --------------: | ---------:\nGlycolysis | 2 ATP ||\n^^ | 2 NADH | 3--5 ATP |\nPyruvaye oxidation | 2 NADH | 5 ATP |\nCitric acid cycle | 2 ATP ||\n^^ | 6 NADH | 15 ATP |\n^^ | 2 FADH2 | 3 ATP |\n**30--32** ATP |||\n[Net ATP yields per hexose]\n
\n\nStage | Direct Products | ATP Yields\n----: | --------------: | ---------:\nGlycolysis | 2 ATP ||\n^^ | 2 NADH | 3--5 ATP |\nPyruvaye oxidation | 2 NADH | 5 ATP |\nCitric acid cycle | 2 ATP ||\n^^ | 6 NADH | 15 ATP |\n^^ | 2 FADH2 | 3 ATP |\n**30--32** ATP |||\n[Net ATP yields per hexose]\n\n
\n|--|--|--|--|--|--|--|--|\n|\u265c|  |\u265d|\u265b|\u265a|\u265d|\u265e|\u265c|\n|  |\u265f|\u265f|\u265f|  |\u265f|\u265f|\u265f|\n|\u265f|  |\u265e|  |  |  |  | |\n|  |\u2657|  |  |\u265f|  |  | |\n|  |  |  |  |\u2659|  |  | |\n|  |  |  |  |  |\u2658|  | |\n|\u2659|\u2659|\u2659|\u2659|  |\u2659|\u2659|\u2659|\n|\u2656|\u2658|\u2657|\u2655|\u2654|  |  |\u2656|\n
\n\n|--|--|--|--|--|--|--|--|\n|\u265c| |\u265d|\u265b|\u265a|\u265d|\u265e|\u265c |\n| |\u265f|\u265f|\u265f| |\u265f|\u265f|\u265f |\n|\u265f| |\u265e| | | | | |\n| |\u2657| | |\u265f| | | |\n| | | | |\u2659| | | |\n| | | | | |\u2658| | |\n|\u2659|\u2659|\u2659|\u2659| |\u2659|\u2659|\u2659 |\n|\u2656|\u2658|\u2657|\u2655|\u2654| | |\u2656 |\n\n### Sequence Diagrams\n\n
\n\\`\\`\\`mermaid\nsequenceDiagram\n  Alice ->> Bob: Hello Bob, how are you?\n  Bob--\x3e>John: How about you John?\n  Bob--x Alice: I am good thanks!\n  Bob-x John: I am good thanks!\n  Note right of John: Bob thinks a long
long time, so long
that the text does
not fit on a row.\n\n Bob--\x3eAlice: Checking with John...\n Alice->John: Yes... John, how are you?\n\\`\\`\\`\n
\n\n\\`\\`\\`mermaid\nsequenceDiagram\n Alice ->> Bob: Hello Bob, how are you?\n Bob--\x3e>John: How about you John?\n Bob--x Alice: I am good thanks!\n Bob-x John: I am good thanks!\n Note right of John: Bob thinks a long
long time, so long
that the text does
not fit on a row.\n\n Bob--\x3eAlice: Checking with John...\n Alice->John: Yes... John, how are you?\n\\`\\`\\`\n\n### Flows\n\n
\n\\`\\`\\`mermaid\ngraph TD\n  A[Start] --\x3e B{Is it?}\n  B --\x3e|Yes| C[OK]\n  C --\x3e D[Rethink]\n  D --\x3e B\n  B --\x3e|No| E[End]\n\\`\\`\\`\n
\n\n\\`\\`\\`mermaid\ngraph TD\n A[Start] --\x3e B{Is it?}\n B --\x3e|Yes| C[OK]\n C --\x3e D[Rethink]\n D --\x3e B\n B --\x3e|No| E[End]\n\\`\\`\\`\n\n### Charts\n\n
\n\\`\\`\\`chart\n{\n  "type": "pie",\n  "data": {\n    "labels": [\n      "Red",\n      "Blue",\n      "Yellow"\n    ],\n    "datasets": [\n      {\n        "data": [\n          300,\n          50,\n          100\n        ],\n        "backgroundColor": [\n          "#FF6384",\n          "#36A2EB",\n          "#FFCE56"\n        ],\n        "hoverBackgroundColor": [\n          "#FF6384",\n          "#36A2EB",\n          "#FFCE56"\n        ]\n      }\n    ]\n  }\n}\n\\`\\`\\`\n
\n\n\\`\\`\\`chart\n{\n "type": "pie",\n "data": {\n "labels": [\n "Red",\n "Blue",\n "Yellow"\n ],\n "datasets": [\n {\n "data": [\n 300,\n 50,\n 100\n ],\n "backgroundColor": [\n "#FF6384",\n "#36A2EB",\n "#FFCE56"\n ],\n "hoverBackgroundColor": [\n "#FF6384",\n "#36A2EB",\n "#FFCE56"\n ]\n }\n ]\n }\n}\n\\`\\`\\`\n\n### Syntax Highlighting\n\n
\n\\`\\`\\`json\n{\n  "@context": "https://www.w3.org/ns/did/v1",\n  "id": "did:example:123456789abcdefghi",\n  "authentication": [{\n    "id": "did:example:123456789abcdefghi#keys-1",\n    "type": "RsaVerificationKey2018",\n    "controller": "did:example:123456789abcdefghi",\n    "publicKeyPem": "-----BEGIN PUBLIC KEY...END PUBLIC KEY-----\\r\\n"\n  }],\n  "service": [{\n    "id":"did:example:123456789abcdefghi#vcs",\n    "type": "VerifiableCredentialService",\n    "serviceEndpoint": "https://example.com/vc/"\n  }]\n}\n\\`\\`\\`\n
\n\n\\`\\`\\`json\n{\n "@context": "https://www.w3.org/ns/did/v1",\n "id": "did:example:123456789abcdefghi",\n "authentication": [{ \n "id": "did:example:123456789abcdefghi#keys-1",\n "type": "RsaVerificationKey2018",\n "controller": "did:example:123456789abcdefghi",\n "publicKeyPem": "-----BEGIN PUBLIC KEY...END PUBLIC KEY-----\\r\\n"\n }],\n "service": [{\n "id":"did:example:123456789abcdefghi#vcs",\n "type": "VerifiableCredentialService",\n "serviceEndpoint": "https://example.com/vc/"\n }]\n}\n\\`\\`\\`\n\n### TeX Math Equations\n\nWhen the `katex` option is enabled, the KaTeX math engine is used for TeX rendering. You can find a list of supported features and examples here: .\n\n$$\\begin{pmatrix}x_2 \\\\ y_2 \\end{pmatrix} =\n\\begin{pmatrix} A & B \\\\ C & D \\end{pmatrix}\\cdot\n\\begin{pmatrix} x_1 \\\\ y_1 \\end{pmatrix}$$\n\n$$\\def\\arraystretch{1.5}\n \\begin{array}{c:c:c}\n a & b & c \\\\ \\hline\n d & e & f \\\\\n \\hdashline\n g & h & i\n\\end{array}$$\n\n$$\n\\underbrace{a+b+c}_{\\text{Note: such math, much wow.}}\n$$\n\n### Tab Panels\n\n\n \n\n
\n\n\\`\\`\\`json\n{\n "foo": "foo",\n "baz": 1\n}\n\\`\\`\\`\n\n
\n
\n\n\\`\\`\\`json\n{\n "foo": "bar",\n "baz": 2\n}\n\\`\\`\\`\n\n
\n
\n\n### Fancy Links\n\nSpec-Up automatically upgrades the links of certain sites, like GitHub. GitHub is the only supported site with Fancy Links right now, but we\'ll be adding more as we go.\n\n### GitHub\n\n- **Issues**\n - Source: `https://github.com/decentralized-identity/presentation-exchange/issues/119`\n - Render: https://github.com/decentralized-identity/presentation-exchange/issues/119\n- **Pull Requests**\n - Source: `https://github.com/decentralized-identity/sidetree/pull/863`\n - Render: https://github.com/decentralized-identity/sidetree/pull/863\n- **Releases**\n - Source: `https://github.com/decentralized-identity/sidetree/releases/tag/v0.9.1`\n - Render: https://github.com/decentralized-identity/sidetree/releases/tag/v0.9.1\n- **Projects**\n - Source: `https://github.com/decentralized-identity/sidetree/projects/1`\n - Render: https://github.com/decentralized-identity/sidetree/projects/1\n\n'})})]})}function u(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(p,{...e})}):p(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>r,x:()=>a});var o=t(6540);const i={},s=o.createContext(i);function r(e){const n=o.useContext(s);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:r(e.components),o.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/e0c4e08d.9326eb85.js b/assets/js/e0c4e08d.9326eb85.js deleted file mode 100644 index e6aa43a6..00000000 --- a/assets/js/e0c4e08d.9326eb85.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[538],{3362:(e,n,t)=>{t.r(n),t.d(n,{assets:()=>h,contentTitle:()=>d,default:()=>u,frontMatter:()=>a,metadata:()=>c,toc:()=>l});var o=t(4848),i=t(8453),s=t(6540);const r=e=>{let{src:n,width:t}=e;const i=(0,s.useRef)(null);return(0,o.jsx)("iframe",{ref:i,src:n,width:t||"100%",style:{border:"none",width:t||"100%",height:"auto"},onLoad:()=>{try{const e=i.current,n=e.contentDocument.body,t=e.contentDocument.documentElement,o=Math.max(n.scrollHeight,n.offsetHeight,t.clientHeight,t.scrollHeight,t.offsetHeight);e.style.height=`${o}px`}catch(e){console.error("Error accessing iframe content:",e)}}})},a={sidebar_position:16},d="Spec-Up-T demo",c={id:"spec-up-t-demo-site",title:"Spec-Up-T demo",description:"The Demo",source:"@site/docs/spec-up-t-demo-site.mdx",sourceDirName:".",slug:"/spec-up-t-demo-site",permalink:"/spec-up-t-website/docs/spec-up-t-demo-site",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/spec-up-t-demo-site.mdx",tags:[],version:"current",sidebarPosition:16,frontMatter:{sidebar_position:16},sidebar:"tutorialSidebar",previous:{title:"Developers Guide",permalink:"/spec-up-t-website/docs/various-roles/developers-guide"},next:{title:"How it came to be",permalink:"/spec-up-t-website/docs/how-it-came-to-be"}},h={},l=[{value:"The Demo",id:"the-demo",level:2},{value:"Begin of the Spec-Up-T demo:",id:"begin-of-the-spec-up-t-demo",level:3},{value:"End of the Spec-Up-T demo",id:"end-of-the-spec-up-t-demo",level:3},{value:"The markdown",id:"the-markdown",level:2}];function p(e){const n={a:"a",code:"code",h1:"h1",h2:"h2",h3:"h3",hr:"hr",li:"li",ol:"ol",p:"p",pre:"pre",...(0,i.R)(),...e.components};return(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(n.h1,{id:"spec-up-t-demo",children:"Spec-Up-T demo"}),"\n",(0,o.jsx)(n.h2,{id:"the-demo",children:"The Demo"}),"\n",(0,o.jsxs)(n.p,{children:["Below is a demo of the Spec-Up-T website in an iFrame. You can also open the Spec-Up-T website in a standalone window by clicking ",(0,o.jsx)(n.a,{href:"https://blockchainbird.github.io/spec-up-t-website/spec-up-t-demo/docs/index.html",children:"here"}),"."]}),"\n",(0,o.jsx)(n.p,{children:"This demo showcases how a Spec-Up-T specification (a single index.html file) can be integrated into other systems."}),"\n",(0,o.jsx)(n.p,{children:"In this Spec-Up-T demo, you will find:"}),"\n",(0,o.jsxs)(n.ol,{children:["\n",(0,o.jsx)(n.li,{children:"Examples of definitions and references"}),"\n",(0,o.jsx)(n.li,{children:"Examples of various styles that can be used in Spec-Up-T"}),"\n"]}),"\n",(0,o.jsxs)(n.p,{children:["Below is the Spec-Up-T website in an iFrame. Open the Spec-Up-T website in a standalone window by clicking ",(0,o.jsx)(n.a,{href:"https://blockchainbird.github.io/spec-up-t-website/spec-up-t-demo/docs/index.html",children:"here"}),"."]}),"\n",(0,o.jsx)(n.hr,{}),"\n",(0,o.jsx)(n.h3,{id:"begin-of-the-spec-up-t-demo",children:"Begin of the Spec-Up-T demo:"}),"\n",(0,o.jsx)(n.hr,{}),"\n",(0,o.jsx)(r,{src:"/spec-up-t-website/spec-up-t-demo/docs/index.html",width:"100%"}),"\n",(0,o.jsx)(n.hr,{}),"\n",(0,o.jsx)(n.h3,{id:"end-of-the-spec-up-t-demo",children:"End of the Spec-Up-T demo"}),"\n",(0,o.jsx)(n.hr,{}),"\n",(0,o.jsx)(n.h2,{id:"the-markdown",children:"The markdown"}),"\n",(0,o.jsx)(n.p,{children:"Below is the markdown of the \u201cDemo of example markup in Spec-Up-T and Markdown\u201d section of demo Spec-Up-T above:"}),"\n",(0,o.jsx)(n.pre,{children:(0,o.jsx)(n.code,{children:'## Demo of example markup in Spec-Up-T and Markdown\n\n### Blockquote\n\n> To be, or not to be, that is the question:\nWhether \'tis nobler in the mind to suffer\nThe slings and arrows of outrageous fortune,\nOr to take arms against a sea of troubles\nAnd by opposing end them. To die\u2014to sleep,\nNo more;\n\n### Notices\n\n
\n::: note Basic Note\n  Check this out.\n:::\n
\n\n::: note Basic Note\n Check this out.\n:::\n\n::: note\n Here\'s another.\n:::\n\n::: note\n And one more!\n:::\n\n::: note Basic Note\n One last note!!!\n:::\n\n
\n::: issue Issue Notice\n  I take issue with that, kind sir.\n:::\n
\n\n::: issue Issue Notice\n I take issue with that, kind sir.\n:::\n\n
\n::: warning Warning Notice\n  Houston, I think we have a problem\n:::\n
\n\n::: warning Warning Notice\n Houston, I think we have a problem\n:::\n\n
\n::: todo Really Important\n  Get this done!\n:::\n
\n\n::: todo Really Important\n Get this done!\n:::\n\n
\n::: example Code Example\n  Put your code block here\n:::\n
\n\n::: example Code Example\n\n\\`\\`\\`json\n// Some comment in JSON\n{\n "foo": "bar",\n "baz": 2\n}\n\\`\\`\\`\n\n:::\n\n### Content Insertion\n\nUse the following format to pull in content from other files in your project:\n\n
\nThis text has been inserted here from another file: [[insert: assets/test.text]]\n
\n\nThis text has been inserted here from another file: [[insert: assets/test.text]]\n\nYou can even insert content within more complex blocks, like the JSON object below which is being pulled in and rendered in a syntax-highlighted example block:\n
\n::: example Code Example\n\\`\\`\\`json\n[[insert: assets/test.json]]\n\\`\\`\\`\n:::\n
\n\n::: example Code Example\n\n\\`\\`\\`json\n[[insert: assets/test.json]]\n\\`\\`\\`\n\n:::\n\n### Tables\n\n
\nStage | Direct Products | ATP Yields\n----: | --------------: | ---------:\nGlycolysis | 2 ATP ||\n^^ | 2 NADH | 3--5 ATP |\nPyruvaye oxidation | 2 NADH | 5 ATP |\nCitric acid cycle | 2 ATP ||\n^^ | 6 NADH | 15 ATP |\n^^ | 2 FADH2 | 3 ATP |\n**30--32** ATP |||\n[Net ATP yields per hexose]\n
\n\nStage | Direct Products | ATP Yields\n----: | --------------: | ---------:\nGlycolysis | 2 ATP ||\n^^ | 2 NADH | 3--5 ATP |\nPyruvaye oxidation | 2 NADH | 5 ATP |\nCitric acid cycle | 2 ATP ||\n^^ | 6 NADH | 15 ATP |\n^^ | 2 FADH2 | 3 ATP |\n**30--32** ATP |||\n[Net ATP yields per hexose]\n\n
\n|--|--|--|--|--|--|--|--|\n|\u265c|  |\u265d|\u265b|\u265a|\u265d|\u265e|\u265c|\n|  |\u265f|\u265f|\u265f|  |\u265f|\u265f|\u265f|\n|\u265f|  |\u265e|  |  |  |  | |\n|  |\u2657|  |  |\u265f|  |  | |\n|  |  |  |  |\u2659|  |  | |\n|  |  |  |  |  |\u2658|  | |\n|\u2659|\u2659|\u2659|\u2659|  |\u2659|\u2659|\u2659|\n|\u2656|\u2658|\u2657|\u2655|\u2654|  |  |\u2656|\n
\n\n|--|--|--|--|--|--|--|--|\n|\u265c| |\u265d|\u265b|\u265a|\u265d|\u265e|\u265c |\n| |\u265f|\u265f|\u265f| |\u265f|\u265f|\u265f |\n|\u265f| |\u265e| | | | | |\n| |\u2657| | |\u265f| | | |\n| | | | |\u2659| | | |\n| | | | | |\u2658| | |\n|\u2659|\u2659|\u2659|\u2659| |\u2659|\u2659|\u2659 |\n|\u2656|\u2658|\u2657|\u2655|\u2654| | |\u2656 |\n\n### Sequence Diagrams\n\n
\n\\`\\`\\`mermaid\nsequenceDiagram\n  Alice ->> Bob: Hello Bob, how are you?\n  Bob--\x3e>John: How about you John?\n  Bob--x Alice: I am good thanks!\n  Bob-x John: I am good thanks!\n  Note right of John: Bob thinks a long
long time, so long
that the text does
not fit on a row.\n\n Bob--\x3eAlice: Checking with John...\n Alice->John: Yes... John, how are you?\n\\`\\`\\`\n
\n\n\\`\\`\\`mermaid\nsequenceDiagram\n Alice ->> Bob: Hello Bob, how are you?\n Bob--\x3e>John: How about you John?\n Bob--x Alice: I am good thanks!\n Bob-x John: I am good thanks!\n Note right of John: Bob thinks a long
long time, so long
that the text does
not fit on a row.\n\n Bob--\x3eAlice: Checking with John...\n Alice->John: Yes... John, how are you?\n\\`\\`\\`\n\n### Flows\n\n
\n\\`\\`\\`mermaid\ngraph TD\n  A[Start] --\x3e B{Is it?}\n  B --\x3e|Yes| C[OK]\n  C --\x3e D[Rethink]\n  D --\x3e B\n  B --\x3e|No| E[End]\n\\`\\`\\`\n
\n\n\\`\\`\\`mermaid\ngraph TD\n A[Start] --\x3e B{Is it?}\n B --\x3e|Yes| C[OK]\n C --\x3e D[Rethink]\n D --\x3e B\n B --\x3e|No| E[End]\n\\`\\`\\`\n\n### Charts\n\n
\n\\`\\`\\`chart\n{\n  "type": "pie",\n  "data": {\n    "labels": [\n      "Red",\n      "Blue",\n      "Yellow"\n    ],\n    "datasets": [\n      {\n        "data": [\n          300,\n          50,\n          100\n        ],\n        "backgroundColor": [\n          "#FF6384",\n          "#36A2EB",\n          "#FFCE56"\n        ],\n        "hoverBackgroundColor": [\n          "#FF6384",\n          "#36A2EB",\n          "#FFCE56"\n        ]\n      }\n    ]\n  }\n}\n\\`\\`\\`\n
\n\n\\`\\`\\`chart\n{\n "type": "pie",\n "data": {\n "labels": [\n "Red",\n "Blue",\n "Yellow"\n ],\n "datasets": [\n {\n "data": [\n 300,\n 50,\n 100\n ],\n "backgroundColor": [\n "#FF6384",\n "#36A2EB",\n "#FFCE56"\n ],\n "hoverBackgroundColor": [\n "#FF6384",\n "#36A2EB",\n "#FFCE56"\n ]\n }\n ]\n }\n}\n\\`\\`\\`\n\n### Syntax Highlighting\n\n
\n\\`\\`\\`json\n{\n  "@context": "https://www.w3.org/ns/did/v1",\n  "id": "did:example:123456789abcdefghi",\n  "authentication": [{\n    "id": "did:example:123456789abcdefghi#keys-1",\n    "type": "RsaVerificationKey2018",\n    "controller": "did:example:123456789abcdefghi",\n    "publicKeyPem": "-----BEGIN PUBLIC KEY...END PUBLIC KEY-----\\r\\n"\n  }],\n  "service": [{\n    "id":"did:example:123456789abcdefghi#vcs",\n    "type": "VerifiableCredentialService",\n    "serviceEndpoint": "https://example.com/vc/"\n  }]\n}\n\\`\\`\\`\n
\n\n\\`\\`\\`json\n{\n "@context": "https://www.w3.org/ns/did/v1",\n "id": "did:example:123456789abcdefghi",\n "authentication": [{ \n "id": "did:example:123456789abcdefghi#keys-1",\n "type": "RsaVerificationKey2018",\n "controller": "did:example:123456789abcdefghi",\n "publicKeyPem": "-----BEGIN PUBLIC KEY...END PUBLIC KEY-----\\r\\n"\n }],\n "service": [{\n "id":"did:example:123456789abcdefghi#vcs",\n "type": "VerifiableCredentialService",\n "serviceEndpoint": "https://example.com/vc/"\n }]\n}\n\\`\\`\\`\n\n### TeX Math Equations\n\nWhen the `katex` option is enabled, the KaTeX math engine is used for TeX rendering. You can find a list of supported features and examples here: .\n\n$$\\begin{pmatrix}x_2 \\\\ y_2 \\end{pmatrix} =\n\\begin{pmatrix} A & B \\\\ C & D \\end{pmatrix}\\cdot\n\\begin{pmatrix} x_1 \\\\ y_1 \\end{pmatrix}$$\n\n$$\\def\\arraystretch{1.5}\n \\begin{array}{c:c:c}\n a & b & c \\\\ \\hline\n d & e & f \\\\\n \\hdashline\n g & h & i\n\\end{array}$$\n\n$$\n\\underbrace{a+b+c}_{\\text{Note: such math, much wow.}}\n$$\n\n### Tab Panels\n\n\n \n\n
\n\n\\`\\`\\`json\n{\n "foo": "foo",\n "baz": 1\n}\n\\`\\`\\`\n\n
\n
\n\n\\`\\`\\`json\n{\n "foo": "bar",\n "baz": 2\n}\n\\`\\`\\`\n\n
\n
\n\n### Fancy Links\n\nSpec-Up automatically upgrades the links of certain sites, like GitHub. GitHub is the only supported site with Fancy Links right now, but we\'ll be adding more as we go.\n\n### GitHub\n\n- **Issues**\n - Source: `https://github.com/decentralized-identity/presentation-exchange/issues/119`\n - Render: https://github.com/decentralized-identity/presentation-exchange/issues/119\n- **Pull Requests**\n - Source: `https://github.com/decentralized-identity/sidetree/pull/863`\n - Render: https://github.com/decentralized-identity/sidetree/pull/863\n- **Releases**\n - Source: `https://github.com/decentralized-identity/sidetree/releases/tag/v0.9.1`\n - Render: https://github.com/decentralized-identity/sidetree/releases/tag/v0.9.1\n- **Projects**\n - Source: `https://github.com/decentralized-identity/sidetree/projects/1`\n - Render: https://github.com/decentralized-identity/sidetree/projects/1\n\n'})})]})}function u(e={}){const{wrapper:n}={...(0,i.R)(),...e.components};return n?(0,o.jsx)(n,{...e,children:(0,o.jsx)(p,{...e})}):p(e)}},8453:(e,n,t)=>{t.d(n,{R:()=>r,x:()=>a});var o=t(6540);const i={},s=o.createContext(i);function r(e){const n=o.useContext(s);return o.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function a(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(i):e.components||i:r(e.components),o.createElement(s.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/e2c9a94b.18b1d6d7.js b/assets/js/e2c9a94b.18b1d6d7.js deleted file mode 100644 index 7e41a675..00000000 --- a/assets/js/e2c9a94b.18b1d6d7.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[1070],{8294:(e,n,s)=>{s.r(n),s.d(n,{assets:()=>d,contentTitle:()=>l,default:()=>h,frontMatter:()=>o,metadata:()=>r,toc:()=>a});var i=s(4848),t=s(8453);const o={sidebar_position:2},l="Admins Guide",r={id:"various-roles/admins-guide",title:"Admins Guide",description:"This is the admin guide for the Spec-Up-T system.",source:"@site/docs/various-roles/admins-guide.md",sourceDirName:"various-roles",slug:"/various-roles/admins-guide",permalink:"/spec-up-t-website/docs/various-roles/admins-guide",draft:!1,unlisted:!1,editUrl:"https://github.com/blockchainbird/spec-up-t-website/tree/main/docs/various-roles/admins-guide.md",tags:[],version:"current",sidebarPosition:2,frontMatter:{sidebar_position:2},sidebar:"tutorialSidebar",previous:{title:"General Guide",permalink:"/spec-up-t-website/docs/various-roles/general-guide"},next:{title:"Technical skills needed",permalink:"/spec-up-t-website/docs/various-roles/technical-skills-needed"}},d={},a=[{value:"Installation",id:"installation",level:2},{value:"Short video",id:"short-video",level:3},{value:"Getting Started",id:"getting-started",level:3},{value:"What you'll need",id:"what-youll-need",level:3},{value:"Install a new site",id:"install-a-new-site",level:3},{value:"General info",id:"general-info",level:4},{value:"Install a new Spec-Up-T site",id:"install-a-new-spec-up-t-site",level:4},{value:"Go into the directory",id:"go-into-the-directory",level:4},{value:"Install all dependencies",id:"install-all-dependencies",level:4},{value:"Add repo to Github",id:"add-repo-to-github",level:4},{value:"Edit specs.json",id:"edit-specsjson",level:5},{value:"Push repo to GitHub",id:"push-repo-to-github",level:5}];function c(e){const n={a:"a",code:"code",em:"em",h1:"h1",h2:"h2",h3:"h3",h4:"h4",h5:"h5",li:"li",p:"p",pre:"pre",strong:"strong",ul:"ul",...(0,t.R)(),...e.components};return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsx)(n.h1,{id:"admins-guide",children:"Admins Guide"}),"\n",(0,i.jsx)(n.p,{children:"This is the admin guide for the Spec-Up-T system."}),"\n",(0,i.jsxs)(n.p,{children:["The repo can be found ",(0,i.jsx)(n.a,{href:"https://github.com/blockchainbird/spec-up-t",children:"here"}),"."]}),"\n",(0,i.jsx)(n.h2,{id:"installation",children:"Installation"}),"\n",(0,i.jsx)(n.h3,{id:"short-video",children:"Short video"}),"\n",(0,i.jsxs)(n.p,{children:["Let's install ",(0,i.jsx)(n.strong,{children:"Spec-Up-T"}),". This short video shows the process."]}),"\n",(0,i.jsxs)("video",{controls:!0,children:[(0,i.jsx)("source",{src:s(6525).A,type:"video/mp4"}),(0,i.jsx)(n.p,{children:"Your browser does not support video tags."})]}),"\n",(0,i.jsx)(n.p,{children:(0,i.jsx)(n.a,{target:"_blank","data-noBrokenLinkCheck":!0,href:s(8948).A+"",children:"Link to the video"})}),"\n",(0,i.jsx)(n.h3,{id:"getting-started",children:"Getting Started"}),"\n",(0,i.jsxs)(n.p,{children:["Now, let's do it ourselves. Get started by ",(0,i.jsx)(n.strong,{children:"creating a new site"}),"."]}),"\n",(0,i.jsx)(n.h3,{id:"what-youll-need",children:"What you'll need"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:[(0,i.jsx)(n.a,{href:"https://nodejs.org/en/download/",children:"Node.js"}),":","\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"When installing Node.js, you are recommended to check all checkboxes related to dependencies."}),"\n"]}),"\n"]}),"\n",(0,i.jsxs)(n.li,{children:["A ",(0,i.jsx)(n.a,{href:"https://en.wikipedia.org/wiki/Web_browser",children:"webbrowser"}),". You are probably reading this in a browser, so you already have one."]}),"\n"]}),"\n",(0,i.jsx)(n.h3,{id:"install-a-new-site",children:"Install a new site"}),"\n",(0,i.jsx)(n.h4,{id:"general-info",children:"General info"}),"\n",(0,i.jsx)(n.p,{children:"Installing Spec-Up-T works similarly to installing any other npm package. You install it locally (not globally), and then you run it."}),"\n",(0,i.jsx)(n.h4,{id:"install-a-new-spec-up-t-site",children:"Install a new Spec-Up-T site"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"npx create-spec-up-t my-spec-up-t-website\n"})}),"\n",(0,i.jsxs)(n.p,{children:[(0,i.jsx)(n.em,{children:"my-spec-up-t-website"})," can be anything you want it to be (however, it is recommended to not use spaces or special characters in directory names)."]}),"\n",(0,i.jsx)(n.p,{children:"You can also omit the last part:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"npx create-spec-up-t\n"})}),"\n",(0,i.jsxs)(n.p,{children:["If you omit ",(0,i.jsx)(n.code,{children:"my-spec-up-t-website"}),", a default directory name, namely ",(0,i.jsx)(n.code,{children:"spec-up-t-starterpack,"})," is used."]}),"\n",(0,i.jsx)(n.p,{children:"Sometimes, you want to force the latest version to be installed. Then you can do the following:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"npx create-spec-up-t@latest my-spec-up-t-website\n"})}),"\n",(0,i.jsx)(n.p,{children:"You can type this command into Command Prompt, Powershell, Terminal, or any other integrated terminal of your code editor. It should work on any operating system (not tested yet)."}),"\n",(0,i.jsxs)(n.p,{children:["You should now have a directory called ",(0,i.jsx)(n.code,{children:"my-spec-up-t-website"})," (or ",(0,i.jsx)(n.code,{children:"spec-up-t-starterpack"})," if you did not specify a name)."]}),"\n",(0,i.jsx)(n.h4,{id:"go-into-the-directory",children:"Go into the directory"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Go into this directory (folder) that was just created:"}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-bash",children:"cd my-spec-up-t-website\n"})}),"\n",(0,i.jsx)(n.p,{children:"You are now in this directory."}),"\n",(0,i.jsx)(n.h4,{id:"install-all-dependencies",children:"Install all dependencies"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsx)(n.li,{children:"Install all dependencies:"}),"\n"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{children:"npm run install\n"})}),"\n",(0,i.jsx)(n.p,{children:"It can take some time, and you should see multiple lines of output during installation."}),"\n",(0,i.jsx)(n.p,{children:"When the prompt is visible again, you should now have a basic Spec-Up-T install:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["a ",(0,i.jsx)(n.code,{children:"specs.json"})," file"]}),"\n",(0,i.jsxs)(n.li,{children:["a ",(0,i.jsx)(n.code,{children:"spec/"})," directory with sample markdown files"]}),"\n",(0,i.jsxs)(n.li,{children:["a ",(0,i.jsx)(n.code,{children:"node_modules"})," directory, a ",(0,i.jsx)(n.code,{children:"package.json"})," file, and a ",(0,i.jsx)(n.code,{children:"package-lock.json"})," file (these three elements belong to the ",(0,i.jsx)(n.code,{children:"npm"})," system)"]}),"\n"]}),"\n",(0,i.jsx)(n.p,{children:"What you don't have yet is the following:"}),"\n",(0,i.jsxs)(n.ul,{children:["\n",(0,i.jsxs)(n.li,{children:["a ",(0,i.jsx)(n.code,{children:"docs"})," directory with a sample ",(0,i.jsx)(n.code,{children:"index.html"})," file (which is the actual specification file that is the goal of it all)."]}),"\n"]}),"\n",(0,i.jsxs)(n.p,{children:["How to do this, go to the ",(0,i.jsx)(n.a,{href:"/spec-up-t-website/docs/various-roles/general-guide",children:"General Instructions"}),"."]}),"\n",(0,i.jsx)(n.h4,{id:"add-repo-to-github",children:"Add repo to Github"}),"\n",(0,i.jsx)(n.p,{children:"You should push your new specification (i.e. the sample content) to a GitHub repo."}),"\n",(0,i.jsx)(n.p,{children:"These are the steps to take:"}),"\n",(0,i.jsxs)(n.h5,{id:"edit-specsjson",children:["Edit ",(0,i.jsx)(n.code,{children:"specs.json"})]}),"\n",(0,i.jsxs)(n.p,{children:["Change this entry in ",(0,i.jsx)(n.code,{children:"specs.json"}),":"]}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-json",children:'"source": {\n "host": "github",\n "account": "blockchainbird",\n "repo": "spec-up-t-starter-pack"\n }\n'})}),"\n",(0,i.jsx)(n.p,{children:"to the correct information:"}),"\n",(0,i.jsx)(n.pre,{children:(0,i.jsx)(n.code,{className:"language-json",children:'"source": {\n "host": "github",\n "account": "your-account",\n "repo": "your-repo"\n }\n'})}),"\n",(0,i.jsx)(n.p,{children:"These are the host (GitHub), your GitHub account name, and the repo name of the repo you are about to push."}),"\n",(0,i.jsx)(n.h5,{id:"push-repo-to-github",children:"Push repo to GitHub"}),"\n",(0,i.jsx)(n.p,{children:"Now, push the repo to GitHub. Use the command line or your preferred way to do this."})]})}function h(e={}){const{wrapper:n}={...(0,t.R)(),...e.components};return n?(0,i.jsx)(n,{...e,children:(0,i.jsx)(c,{...e})}):c(e)}},8948:(e,n,s)=>{s.d(n,{A:()=>i});const i=s.p+"assets/files/installer-spec-up-t-392cc74350811a36e6a9f89b426fa51b.mp4"},6525:(e,n,s)=>{s.d(n,{A:()=>i});const i=s.p+"assets/medias/installer-spec-up-t-392cc74350811a36e6a9f89b426fa51b.mp4"},8453:(e,n,s)=>{s.d(n,{R:()=>l,x:()=>r});var i=s(6540);const t={},o=i.createContext(t);function l(e){const n=i.useContext(o);return i.useMemo((function(){return"function"==typeof e?e(n):{...n,...e}}),[n,e])}function r(e){let n;return n=e.disableParentContext?"function"==typeof e.components?e.components(t):e.components||t:l(e.components),i.createElement(o.Provider,{value:n},e.children)}}}]); \ No newline at end of file diff --git a/assets/js/f049f840.063c3258.js b/assets/js/f049f840.063c3258.js deleted file mode 100644 index 38c28ae3..00000000 --- a/assets/js/f049f840.063c3258.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6418],{483:e=>{e.exports=JSON.parse('{"version":{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"tutorialSidebar":[{"type":"link","label":"Cheat sheet","href":"/spec-up-t-website/docs/cheat-sheet","docId":"cheat-sheet","unlisted":false},{"type":"link","label":"Introduction","href":"/spec-up-t-website/docs/intro","docId":"intro","unlisted":false},{"type":"category","label":"Roles","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Intro","href":"/spec-up-t-website/docs/various-roles/intro","docId":"various-roles/intro","unlisted":false},{"type":"link","label":"General Guide","href":"/spec-up-t-website/docs/various-roles/general-guide","docId":"various-roles/general-guide","unlisted":false},{"type":"link","label":"Admins Guide","href":"/spec-up-t-website/docs/various-roles/admins-guide","docId":"various-roles/admins-guide","unlisted":false},{"type":"link","label":"Technical skills needed","href":"/spec-up-t-website/docs/various-roles/technical-skills-needed","docId":"various-roles/technical-skills-needed","unlisted":false},{"type":"category","label":"Content Authors Guide","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Content Authors Guide","href":"/spec-up-t-website/docs/various-roles/content-authors-guide/introduction","docId":"various-roles/content-authors-guide/introduction","unlisted":false}],"href":"/spec-up-t-website/docs/category/content-authors-guide"},{"type":"category","label":"Terminology Author Guide","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Terminology Authors Guide","href":"/spec-up-t-website/docs/various-roles/terminology-authors-guide/introduction","docId":"various-roles/terminology-authors-guide/introduction","unlisted":false},{"type":"link","label":"Term References","href":"/spec-up-t-website/docs/various-roles/terminology-authors-guide/term-references","docId":"various-roles/terminology-authors-guide/term-references","unlisted":false},{"type":"link","label":"External Term References","href":"/spec-up-t-website/docs/various-roles/terminology-authors-guide/external-term-references","docId":"various-roles/terminology-authors-guide/external-term-references","unlisted":false}],"href":"/spec-up-t-website/docs/category/terminology-author-guide"},{"type":"category","label":"Curators Guide","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Curators Guide","href":"/spec-up-t-website/docs/various-roles/curators-guide/introduction","docId":"various-roles/curators-guide/introduction","unlisted":false}],"href":"/spec-up-t-website/docs/category/curators-guide"},{"type":"category","label":"Glossary Maintainers Guide","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Glossary Maintainers Guide","href":"/spec-up-t-website/docs/various-roles/glossary-maintainers-guide/introduction","docId":"various-roles/glossary-maintainers-guide/introduction","unlisted":false}],"href":"/spec-up-t-website/docs/category/glossary-maintainers-guide"},{"type":"category","label":"Readers Guide","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Readers Guide","href":"/spec-up-t-website/docs/various-roles/readers-guide/introduction","docId":"various-roles/readers-guide/introduction","unlisted":false}],"href":"/spec-up-t-website/docs/category/readers-guide"},{"type":"link","label":"Developers Guide","href":"/spec-up-t-website/docs/various-roles/developers-guide","docId":"various-roles/developers-guide","unlisted":false}],"href":"/spec-up-t-website/docs/category/roles"},{"type":"link","label":"Spec-Up-T demo","href":"/spec-up-t-website/docs/spec-up-t-demo-site","docId":"spec-up-t-demo-site","unlisted":false},{"type":"link","label":"How it came to be","href":"/spec-up-t-website/docs/how-it-came-to-be","docId":"how-it-came-to-be","unlisted":false},{"type":"link","label":"Q & A","href":"/spec-up-t-website/docs/q-and-a","docId":"q-and-a","unlisted":false},{"type":"link","label":"Maintaining this site","href":"/spec-up-t-website/docs/this-site-maintainers","docId":"this-site-maintainers","unlisted":false},{"type":"link","label":"Glossary","href":"/spec-up-t-website/docs/glossary","docId":"glossary","unlisted":false},{"type":"link","label":"Troubleshooting","href":"/spec-up-t-website/docs/troubleshooting","docId":"troubleshooting","unlisted":false}]},"docs":{"cheat-sheet":{"id":"cheat-sheet","title":"Cheat sheet","description":"This cheat sheet still needs to be completed. Information on how to write content, create references, and more will be added in the future.","sidebar":"tutorialSidebar"},"glossary":{"id":"glossary","title":"Glossary","description":"This is a glossary with some terms that you need to know in order to understand working with Spec-Up-T.","sidebar":"tutorialSidebar"},"how-it-came-to-be":{"id":"how-it-came-to-be","title":"How it came to be","description":"The ToIP Terms extension of Spec-Up","sidebar":"tutorialSidebar"},"intro":{"id":"intro","title":"Introduction","description":"Intro","sidebar":"tutorialSidebar"},"q-and-a":{"id":"q-and-a","title":"Q & A","description":"Questions and answers about Spec-Up-T.","sidebar":"tutorialSidebar"},"spec-up-t-demo-site":{"id":"spec-up-t-demo-site","title":"Spec-Up-T demo","description":"The Demo","sidebar":"tutorialSidebar"},"this-site-maintainers":{"id":"this-site-maintainers","title":"Maintaining this site","description":"Here you will find information about things specific to this site.","sidebar":"tutorialSidebar"},"troubleshooting":{"id":"troubleshooting","title":"Troubleshooting","description":"Some tips in case of problems:","sidebar":"tutorialSidebar"},"various-roles/admins-guide":{"id":"various-roles/admins-guide","title":"Admins Guide","description":"This is the admin guide for the Spec-Up-T system.","sidebar":"tutorialSidebar"},"various-roles/content-authors-guide/introduction":{"id":"various-roles/content-authors-guide/introduction","title":"Content Authors Guide","description":"Under construction","sidebar":"tutorialSidebar"},"various-roles/curators-guide/introduction":{"id":"various-roles/curators-guide/introduction","title":"Curators Guide","description":"Under construction","sidebar":"tutorialSidebar"},"various-roles/developers-guide":{"id":"various-roles/developers-guide","title":"Developers Guide","description":"This page is the developer\'s guide for the Spec-Up-T system.","sidebar":"tutorialSidebar"},"various-roles/general-guide":{"id":"various-roles/general-guide","title":"General Guide","description":"These are general instructions. This is a temporary page; parts will be moved to other pages and assigned to the various roles.","sidebar":"tutorialSidebar"},"various-roles/glossary-maintainers-guide/introduction":{"id":"various-roles/glossary-maintainers-guide/introduction","title":"Glossary Maintainers Guide","description":"Under construction","sidebar":"tutorialSidebar"},"various-roles/intro":{"id":"various-roles/intro","title":"Intro","description":"Spec-Up-T implementations can distinguish the following roles:","sidebar":"tutorialSidebar"},"various-roles/readers-guide/introduction":{"id":"various-roles/readers-guide/introduction","title":"Readers Guide","description":"Under construction","sidebar":"tutorialSidebar"},"various-roles/technical-skills-needed":{"id":"various-roles/technical-skills-needed","title":"Technical skills needed","description":"Spec-Up-T is a specialized tool designed to facilitate the creation, management, and rendering of technical specifications in a streamlined manner. Users who intend to leverage Spec-Up-T for their projects must possess a foundational level of technical knowledge to navigate the installation, configuration, and utilization of this tool effectively. This article delves into the technical prerequisites necessary for a user to operate Spec-Up-T competently.","sidebar":"tutorialSidebar"},"various-roles/terminology-authors-guide/external-term-references":{"id":"various-roles/terminology-authors-guide/external-term-references","title":"External Term References","description":"It is possible to include references to terms from external spec-up generated specifications. To include a source you would like to pull references from include an external_specs array in your spec config. The value should be a key/value object where the key is used in the external reference below and the value is the URL of the external spec.","sidebar":"tutorialSidebar"},"various-roles/terminology-authors-guide/introduction":{"id":"various-roles/terminology-authors-guide/introduction","title":"Terminology Authors Guide","description":"Under construction","sidebar":"tutorialSidebar"},"various-roles/terminology-authors-guide/term-references":{"id":"various-roles/terminology-authors-guide/term-references","title":"Term References","description":"Definition Lists","sidebar":"tutorialSidebar"}}}}')}}]); \ No newline at end of file diff --git a/assets/js/f049f840.3128aa1c.js b/assets/js/f049f840.3128aa1c.js new file mode 100644 index 00000000..579ead29 --- /dev/null +++ b/assets/js/f049f840.3128aa1c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[6418],{483:e=>{e.exports=JSON.parse('{"version":{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"tutorialSidebar":[{"type":"link","label":"Cheat sheet","href":"/spec-up-t-website/docs/cheat-sheet","docId":"cheat-sheet","unlisted":false},{"type":"link","label":"Introduction","href":"/spec-up-t-website/docs/intro","docId":"intro","unlisted":false},{"type":"category","label":"Roles","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Intro","href":"/spec-up-t-website/docs/various-roles/intro","docId":"various-roles/intro","unlisted":false},{"type":"link","label":"General Guide","href":"/spec-up-t-website/docs/various-roles/general-guide","docId":"various-roles/general-guide","unlisted":false},{"type":"category","label":"Admins Guide","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Intro","href":"/spec-up-t-website/docs/various-roles/admins-guide/","docId":"various-roles/admins-guide/admins-guide","unlisted":false},{"type":"link","label":"Extra Tools","href":"/spec-up-t-website/docs/various-roles/admins-guide/tools","docId":"various-roles/admins-guide/tools","unlisted":false}],"href":"/spec-up-t-website/docs/category/admins-guide"},{"type":"category","label":"Content Authors Guide","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Intro","href":"/spec-up-t-website/docs/various-roles/content-authors-guide/introduction","docId":"various-roles/content-authors-guide/introduction","unlisted":false}],"href":"/spec-up-t-website/docs/category/content-authors-guide"},{"type":"category","label":"Terminology Author Guide","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Intro","href":"/spec-up-t-website/docs/various-roles/terminology-authors-guide/introduction","docId":"various-roles/terminology-authors-guide/introduction","unlisted":false},{"type":"link","label":"Term References","href":"/spec-up-t-website/docs/various-roles/terminology-authors-guide/term-references","docId":"various-roles/terminology-authors-guide/term-references","unlisted":false},{"type":"link","label":"External Term References","href":"/spec-up-t-website/docs/various-roles/terminology-authors-guide/external-term-references","docId":"various-roles/terminology-authors-guide/external-term-references","unlisted":false}],"href":"/spec-up-t-website/docs/category/terminology-author-guide"},{"type":"category","label":"Curators Guide","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Intro","href":"/spec-up-t-website/docs/various-roles/curators-guide/introduction","docId":"various-roles/curators-guide/introduction","unlisted":false}],"href":"/spec-up-t-website/docs/category/curators-guide"},{"type":"category","label":"Glossary Maintainers Guide","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Intro","href":"/spec-up-t-website/docs/various-roles/glossary-maintainers-guide/introduction","docId":"various-roles/glossary-maintainers-guide/introduction","unlisted":false}],"href":"/spec-up-t-website/docs/category/glossary-maintainers-guide"},{"type":"category","label":"Readers Guide","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Intro","href":"/spec-up-t-website/docs/various-roles/readers-guide/introduction","docId":"various-roles/readers-guide/introduction","unlisted":false}],"href":"/spec-up-t-website/docs/category/readers-guide"},{"type":"link","label":"Developers Guide","href":"/spec-up-t-website/docs/various-roles/developers-guide","docId":"various-roles/developers-guide","unlisted":false},{"type":"link","label":"Technical skills needed","href":"/spec-up-t-website/docs/various-roles/technical-skills-needed","docId":"various-roles/technical-skills-needed","unlisted":false}],"href":"/spec-up-t-website/docs/category/roles"},{"type":"link","label":"Spec-Up-T demo","href":"/spec-up-t-website/docs/spec-up-t-demo-site","docId":"spec-up-t-demo-site","unlisted":false},{"type":"link","label":"How it came to be","href":"/spec-up-t-website/docs/how-it-came-to-be","docId":"how-it-came-to-be","unlisted":false},{"type":"link","label":"Q & A","href":"/spec-up-t-website/docs/q-and-a","docId":"q-and-a","unlisted":false},{"type":"link","label":"Maintaining this site","href":"/spec-up-t-website/docs/this-site-maintainers","docId":"this-site-maintainers","unlisted":false},{"type":"link","label":"Glossary","href":"/spec-up-t-website/docs/glossary","docId":"glossary","unlisted":false},{"type":"link","label":"Troubleshooting","href":"/spec-up-t-website/docs/troubleshooting","docId":"troubleshooting","unlisted":false}]},"docs":{"cheat-sheet":{"id":"cheat-sheet","title":"Cheat sheet","description":"This cheat sheet still needs to be completed. Information on how to write content, create references, and more will be added in the future.","sidebar":"tutorialSidebar"},"glossary":{"id":"glossary","title":"Glossary","description":"This is a glossary with some terms that you need to know in order to understand working with Spec-Up-T.","sidebar":"tutorialSidebar"},"how-it-came-to-be":{"id":"how-it-came-to-be","title":"How it came to be","description":"The ToIP Terms extension of Spec-Up","sidebar":"tutorialSidebar"},"intro":{"id":"intro","title":"Introduction","description":"Intro","sidebar":"tutorialSidebar"},"q-and-a":{"id":"q-and-a","title":"Q & A","description":"Questions and answers about Spec-Up-T.","sidebar":"tutorialSidebar"},"spec-up-t-demo-site":{"id":"spec-up-t-demo-site","title":"Spec-Up-T demo","description":"The Demo","sidebar":"tutorialSidebar"},"this-site-maintainers":{"id":"this-site-maintainers","title":"Maintaining this site","description":"Here you will find information about things specific to this site.","sidebar":"tutorialSidebar"},"troubleshooting":{"id":"troubleshooting","title":"Troubleshooting","description":"Some tips in case of problems:","sidebar":"tutorialSidebar"},"various-roles/admins-guide/admins-guide":{"id":"various-roles/admins-guide/admins-guide","title":"Intro","description":"This is the admin guide for the Spec-Up-T system.","sidebar":"tutorialSidebar"},"various-roles/admins-guide/tools":{"id":"various-roles/admins-guide/tools","title":"Extra Tools","description":"Splitter Tool","sidebar":"tutorialSidebar"},"various-roles/content-authors-guide/introduction":{"id":"various-roles/content-authors-guide/introduction","title":"Intro","description":"Under construction","sidebar":"tutorialSidebar"},"various-roles/curators-guide/introduction":{"id":"various-roles/curators-guide/introduction","title":"Intro","description":"Under construction","sidebar":"tutorialSidebar"},"various-roles/developers-guide":{"id":"various-roles/developers-guide","title":"Developers Guide","description":"This page is the developer\'s guide for the Spec-Up-T system.","sidebar":"tutorialSidebar"},"various-roles/general-guide":{"id":"various-roles/general-guide","title":"General Guide","description":"These are general instructions. This is a temporary page; parts will be moved to other pages and assigned to the various roles.","sidebar":"tutorialSidebar"},"various-roles/glossary-maintainers-guide/introduction":{"id":"various-roles/glossary-maintainers-guide/introduction","title":"Intro","description":"Under construction","sidebar":"tutorialSidebar"},"various-roles/intro":{"id":"various-roles/intro","title":"Intro","description":"Spec-Up-T implementations can distinguish the following roles:","sidebar":"tutorialSidebar"},"various-roles/readers-guide/introduction":{"id":"various-roles/readers-guide/introduction","title":"Intro","description":"Under construction","sidebar":"tutorialSidebar"},"various-roles/technical-skills-needed":{"id":"various-roles/technical-skills-needed","title":"Technical skills needed","description":"Spec-Up-T is a specialized tool designed to facilitate the creation, management, and rendering of technical specifications in a streamlined manner. Users who intend to leverage Spec-Up-T for their projects must possess a foundational level of technical knowledge to navigate the installation, configuration, and utilization of this tool effectively. This article delves into the technical prerequisites necessary for a user to operate Spec-Up-T competently.","sidebar":"tutorialSidebar"},"various-roles/terminology-authors-guide/external-term-references":{"id":"various-roles/terminology-authors-guide/external-term-references","title":"External Term References","description":"It is possible to include references to terms from external spec-up generated specifications. To include a source you would like to pull references from include an external_specs array in your spec config. The value should be a key/value object where the key is used in the external reference below and the value is the URL of the external spec.","sidebar":"tutorialSidebar"},"various-roles/terminology-authors-guide/introduction":{"id":"various-roles/terminology-authors-guide/introduction","title":"Intro","description":"Under construction","sidebar":"tutorialSidebar"},"various-roles/terminology-authors-guide/term-references":{"id":"various-roles/terminology-authors-guide/term-references","title":"Term References","description":"Definition Lists","sidebar":"tutorialSidebar"}}}}')}}]); \ No newline at end of file diff --git a/assets/js/main.0cefc67d.js b/assets/js/main.0cefc67d.js deleted file mode 100644 index bd4f2b3e..00000000 --- a/assets/js/main.0cefc67d.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! For license information please see main.0cefc67d.js.LICENSE.txt */ -(self.webpackChunkmy_website=self.webpackChunkmy_website||[]).push([[8792],{5391:(e,t,n)=>{"use strict";function r(e){var t,n,o="";if("string"==typeof e||"number"==typeof e)o+=e;else if("object"==typeof e)if(Array.isArray(e))for(t=0;to});const o=function(){for(var e,t,n=0,o="";n{"use strict";n.d(t,{A:()=>p});n(6540);var r=n(3259),o=n.n(r),a=n(4054);const i={"03c01b4d":[()=>n.e(5920).then(n.bind(n,1433)),"@site/docs/various-roles/readers-guide/introduction.md",1433],"08e3fca0":[()=>n.e(9561).then(n.t.bind(n,9477,19)),"@generated/docusaurus-plugin-content-docs/default/p/spec-up-t-website-docs-category-curators-guide-5e7.json",9477],"0e384e19":[()=>n.e(3976).then(n.bind(n,619)),"@site/docs/intro.md",619],"138e0e15":[()=>n.e(4921).then(n.t.bind(n,1597,19)),"@generated/@easyops-cn/docusaurus-search-local/default/__plugin.json",1597],"14eb3368":[()=>Promise.all([n.e(1869),n.e(6969)]).then(n.bind(n,4136)),"@theme/DocCategoryGeneratedIndexPage",4136],"1666e941":[()=>n.e(8625).then(n.bind(n,472)),"@site/docs/cheat-sheet.md",472],"166ee7c9":[()=>n.e(8865).then(n.t.bind(n,7805,19)),"@generated/docusaurus-plugin-content-blog/default/p/spec-up-t-website-blog-3d8.json",7805],17896441:[()=>Promise.all([n.e(1869),n.e(8498),n.e(8401)]).then(n.bind(n,6011)),"@theme/DocItem",6011],"1a4e3797":[()=>Promise.all([n.e(1869),n.e(2138)]).then(n.bind(n,5099)),"@theme/SearchPage",5099],"1f391b9e":[()=>Promise.all([n.e(1869),n.e(8498),n.e(6061)]).then(n.bind(n,7973)),"@theme/MDXPage",7973],20692867:[()=>n.e(881).then(n.bind(n,14)),"@site/docs/various-roles/terminology-authors-guide/external-term-references.md",14],"2be7da73":[()=>n.e(4192).then(n.bind(n,8232)),"@site/docs/q-and-a.md",8232],"30c1de03":[()=>n.e(996).then(n.bind(n,3169)),"@site/docs/various-roles/developers-guide.md",3169],36846233:[()=>n.e(4274).then(n.bind(n,5999)),"@site/docs/various-roles/curators-guide/introduction.md",5999],"36994c47":[()=>n.e(9858).then(n.t.bind(n,5516,19)),"@generated/docusaurus-plugin-content-blog/default/__plugin.json",5516],"393be207":[()=>n.e(4134).then(n.bind(n,633)),"@site/src/pages/markdown-page.md",633],"3e8d065b":[()=>n.e(6548).then(n.t.bind(n,54,19)),"@generated/docusaurus-plugin-content-docs/default/p/spec-up-t-website-docs-category-content-authors-guide-1e5.json",54],"451344e5":[()=>n.e(4836).then(n.bind(n,7297)),"@site/docs/various-roles/content-authors-guide/introduction.md",7297],"4741e212":[()=>n.e(4481).then(n.t.bind(n,7315,19)),"@generated/docusaurus-plugin-content-docs/default/p/spec-up-t-website-docs-category-terminology-author-guide-db3.json",7315],"4d95055f":[()=>n.e(6685).then(n.t.bind(n,8160,19)),"@generated/docusaurus-plugin-content-docs/default/p/spec-up-t-website-docs-category-glossary-maintainers-guide-74b.json",8160],"53ef7a94":[()=>n.e(9121).then(n.bind(n,4421)),"@site/docs/various-roles/intro.md",4421],"5e95c892":[()=>n.e(9647).then(n.bind(n,7121)),"@theme/DocsRoot",7121],"5e9f5e1a":[()=>Promise.resolve().then(n.bind(n,4784)),"@generated/docusaurus.config",4784],"680248e1":[()=>n.e(4345).then(n.t.bind(n,2122,19)),"@generated/docusaurus-plugin-content-docs/default/p/spec-up-t-website-docs-category-readers-guide-51a.json",2122],"738e0f00":[()=>n.e(2422).then(n.bind(n,2544)),"@site/blog/2024-06-15-welcome/index.md",2544],"7e7aa536":[()=>n.e(130).then(n.bind(n,4661)),"@site/docs/various-roles/technical-skills-needed.md",4661],"814f3328":[()=>n.e(7472).then(n.t.bind(n,5513,19)),"~blog/default/blog-post-list-prop-default.json",5513],"84de3d6b":[()=>n.e(9151).then(n.bind(n,3200)),"@site/docs/various-roles/terminology-authors-guide/term-references.md",3200],"9428579a":[()=>n.e(4167).then(n.bind(n,7879)),"@site/docs/this-site-maintainers.md",7879],"9b0396f8":[()=>n.e(1078).then(n.t.bind(n,5196,19)),"@generated/docusaurus-plugin-content-docs/default/p/spec-up-t-website-docs-category-roles-9b6.json",5196],"9d9f8394":[()=>n.e(9013).then(n.bind(n,4343)),"@site/docs/troubleshooting.md",4343],"9e4087bc":[()=>n.e(2711).then(n.bind(n,9331)),"@theme/BlogArchivePage",9331],a6aa9e1f:[()=>Promise.all([n.e(1869),n.e(8498),n.e(4261),n.e(7643)]).then(n.bind(n,2052)),"@theme/BlogListPage",2052],a7456010:[()=>n.e(1235).then(n.t.bind(n,8552,19)),"@generated/docusaurus-plugin-content-pages/default/__plugin.json",8552],a7bd4aaa:[()=>n.e(7098).then(n.bind(n,4532)),"@theme/DocVersionRoot",4532],a94703ab:[()=>Promise.all([n.e(1869),n.e(9048)]).then(n.bind(n,2559)),"@theme/DocRoot",2559],aba21aa0:[()=>n.e(5742).then(n.t.bind(n,7093,19)),"@generated/docusaurus-plugin-content-docs/default/__plugin.json",7093],acc96f77:[()=>n.e(685).then(n.bind(n,8508)),"@site/blog/2024-06-15-welcome/index.md?truncated=true",8508],acecf23e:[()=>n.e(1903).then(n.t.bind(n,1912,19)),"~blog/default/blogMetadata-default.json",1912],c4a0550b:[()=>n.e(8509).then(n.bind(n,4028)),"@site/docs/how-it-came-to-be.md",4028],c4f5d8e4:[()=>Promise.all([n.e(1869),n.e(2634)]).then(n.bind(n,6467)),"@site/src/pages/index.js",6467],ccc49370:[()=>Promise.all([n.e(1869),n.e(8498),n.e(4261),n.e(3249)]).then(n.bind(n,3858)),"@theme/BlogPostPage",3858],cf57817a:[()=>n.e(833).then(n.bind(n,7771)),"@site/docs/various-roles/glossary-maintainers-guide/introduction.md",7771],d20ae096:[()=>n.e(1122).then(n.bind(n,8419)),"@site/docs/various-roles/terminology-authors-guide/introduction.md",8419],dff1e1e9:[()=>n.e(8838).then(n.bind(n,2234)),"@site/docs/various-roles/general-guide.md",2234],e0c4e08d:[()=>n.e(538).then(n.bind(n,3362)),"@site/docs/spec-up-t-demo-site.mdx",3362],e2c9a94b:[()=>n.e(1070).then(n.bind(n,8294)),"@site/docs/various-roles/admins-guide.md",8294],e747ec83:[()=>n.e(7051).then(n.bind(n,5077)),"@site/docs/glossary.md",5077],f049f840:[()=>n.e(6418).then(n.t.bind(n,483,19)),"@generated/docusaurus-plugin-content-docs/default/p/spec-up-t-website-docs-b1f.json",483],fdea42e3:[()=>n.e(7449).then(n.t.bind(n,7139,19)),"@generated/docusaurus-plugin-content-blog/default/p/spec-up-t-website-blog-archive-3f5.json",7139]};var s=n(4848);function l(e){let{error:t,retry:n,pastDelay:r}=e;return t?(0,s.jsxs)("div",{style:{textAlign:"center",color:"#fff",backgroundColor:"#fa383e",borderColor:"#fa383e",borderStyle:"solid",borderRadius:"0.25rem",borderWidth:"1px",boxSizing:"border-box",display:"block",padding:"1rem",flex:"0 0 50%",marginLeft:"25%",marginRight:"25%",marginTop:"5rem",maxWidth:"50%",width:"100%"},children:[(0,s.jsx)("p",{children:String(t)}),(0,s.jsx)("div",{children:(0,s.jsx)("button",{type:"button",onClick:n,children:"Retry"})})]}):r?(0,s.jsx)("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"},children:(0,s.jsx)("svg",{id:"loader",style:{width:128,height:110,position:"absolute",top:"calc(100vh - 64%)"},viewBox:"0 0 45 45",xmlns:"http://www.w3.org/2000/svg",stroke:"#61dafb",children:(0,s.jsxs)("g",{fill:"none",fillRule:"evenodd",transform:"translate(1 1)",strokeWidth:"2",children:[(0,s.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,s.jsx)("animate",{attributeName:"r",begin:"1.5s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-opacity",begin:"1.5s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-width",begin:"1.5s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,s.jsxs)("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0",children:[(0,s.jsx)("animate",{attributeName:"r",begin:"3s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-opacity",begin:"3s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),(0,s.jsx)("animate",{attributeName:"stroke-width",begin:"3s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})]}),(0,s.jsx)("circle",{cx:"22",cy:"22",r:"8",children:(0,s.jsx)("animate",{attributeName:"r",begin:"0s",dur:"1.5s",values:"6;1;2;3;4;5;6",calcMode:"linear",repeatCount:"indefinite"})})]})})}):null}var u=n(6921),c=n(3102);function d(e,t){if("*"===e)return o()({loading:l,loader:()=>n.e(2237).then(n.bind(n,2237)),modules:["@theme/NotFound"],webpack:()=>[2237],render(e,t){const n=e.default;return(0,s.jsx)(c.W,{value:{plugin:{name:"native",id:"default"}},children:(0,s.jsx)(n,{...t})})}});const r=a[`${e}-${t}`],d={},p=[],f=[],h=(0,u.A)(r);return Object.entries(h).forEach((e=>{let[t,n]=e;const r=i[n];r&&(d[t]=r[0],p.push(r[1]),f.push(r[2]))})),o().Map({loading:l,loader:d,modules:p,webpack:()=>f,render(t,n){const o=JSON.parse(JSON.stringify(r));Object.entries(t).forEach((t=>{let[n,r]=t;const a=r.default;if(!a)throw new Error(`The page component at ${e} doesn't have a default export. This makes it impossible to render anything. Consider default-exporting a React component.`);"object"!=typeof a&&"function"!=typeof a||Object.keys(r).filter((e=>"default"!==e)).forEach((e=>{a[e]=r[e]}));let i=o;const s=n.split(".");s.slice(0,-1).forEach((e=>{i=i[e]})),i[s[s.length-1]]=a}));const a=o.__comp;delete o.__comp;const i=o.__context;delete o.__context;const l=o.__props;return delete o.__props,(0,s.jsx)(c.W,{value:i,children:(0,s.jsx)(a,{...o,...l,...n})})}})}const p=[{path:"/spec-up-t-website/blog",component:d("/spec-up-t-website/blog","062"),exact:!0},{path:"/spec-up-t-website/blog/archive",component:d("/spec-up-t-website/blog/archive","9d6"),exact:!0},{path:"/spec-up-t-website/blog/welcome",component:d("/spec-up-t-website/blog/welcome","ccf"),exact:!0},{path:"/spec-up-t-website/markdown-page",component:d("/spec-up-t-website/markdown-page","143"),exact:!0},{path:"/spec-up-t-website/search",component:d("/spec-up-t-website/search","d9c"),exact:!0},{path:"/spec-up-t-website/docs",component:d("/spec-up-t-website/docs","94d"),routes:[{path:"/spec-up-t-website/docs",component:d("/spec-up-t-website/docs","1e8"),routes:[{path:"/spec-up-t-website/docs",component:d("/spec-up-t-website/docs","9b6"),routes:[{path:"/spec-up-t-website/docs/category/content-authors-guide",component:d("/spec-up-t-website/docs/category/content-authors-guide","429"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/category/curators-guide",component:d("/spec-up-t-website/docs/category/curators-guide","036"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/category/glossary-maintainers-guide",component:d("/spec-up-t-website/docs/category/glossary-maintainers-guide","20e"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/category/readers-guide",component:d("/spec-up-t-website/docs/category/readers-guide","328"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/category/roles",component:d("/spec-up-t-website/docs/category/roles","683"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/category/terminology-author-guide",component:d("/spec-up-t-website/docs/category/terminology-author-guide","685"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/cheat-sheet",component:d("/spec-up-t-website/docs/cheat-sheet","03a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/glossary",component:d("/spec-up-t-website/docs/glossary","37b"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/how-it-came-to-be",component:d("/spec-up-t-website/docs/how-it-came-to-be","5a9"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/intro",component:d("/spec-up-t-website/docs/intro","529"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/q-and-a",component:d("/spec-up-t-website/docs/q-and-a","f62"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/spec-up-t-demo-site",component:d("/spec-up-t-website/docs/spec-up-t-demo-site","d08"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/this-site-maintainers",component:d("/spec-up-t-website/docs/this-site-maintainers","f85"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/troubleshooting",component:d("/spec-up-t-website/docs/troubleshooting","2fa"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/various-roles/admins-guide",component:d("/spec-up-t-website/docs/various-roles/admins-guide","f7f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/various-roles/content-authors-guide/introduction",component:d("/spec-up-t-website/docs/various-roles/content-authors-guide/introduction","3d5"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/various-roles/curators-guide/introduction",component:d("/spec-up-t-website/docs/various-roles/curators-guide/introduction","883"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/various-roles/developers-guide",component:d("/spec-up-t-website/docs/various-roles/developers-guide","fa4"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/various-roles/general-guide",component:d("/spec-up-t-website/docs/various-roles/general-guide","32f"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/various-roles/glossary-maintainers-guide/introduction",component:d("/spec-up-t-website/docs/various-roles/glossary-maintainers-guide/introduction","77a"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/various-roles/intro",component:d("/spec-up-t-website/docs/various-roles/intro","814"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/various-roles/readers-guide/introduction",component:d("/spec-up-t-website/docs/various-roles/readers-guide/introduction","a05"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/various-roles/technical-skills-needed",component:d("/spec-up-t-website/docs/various-roles/technical-skills-needed","f94"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/various-roles/terminology-authors-guide/external-term-references",component:d("/spec-up-t-website/docs/various-roles/terminology-authors-guide/external-term-references","cc3"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/various-roles/terminology-authors-guide/introduction",component:d("/spec-up-t-website/docs/various-roles/terminology-authors-guide/introduction","844"),exact:!0,sidebar:"tutorialSidebar"},{path:"/spec-up-t-website/docs/various-roles/terminology-authors-guide/term-references",component:d("/spec-up-t-website/docs/various-roles/terminology-authors-guide/term-references","bd3"),exact:!0,sidebar:"tutorialSidebar"}]}]}]},{path:"/spec-up-t-website/",component:d("/spec-up-t-website/","5ce"),exact:!0},{path:"*",component:d("*")}]},6125:(e,t,n)=>{"use strict";n.d(t,{o:()=>a,x:()=>i});var r=n(6540),o=n(4848);const a=r.createContext(!1);function i(e){let{children:t}=e;const[n,i]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{i(!0)}),[]),(0,o.jsx)(a.Provider,{value:n,children:t})}},8536:(e,t,n)=>{"use strict";var r=n(6540),o=n(5338),a=n(545),i=n(4625),s=n(4784),l=n(8193);const u=[n(119),n(6134),n(6294),n(1043)];var c=n(8328),d=n(6347),p=n(2831),f=n(4848);function h(e){let{children:t}=e;return(0,f.jsx)(f.Fragment,{children:t})}var m=n(5260),g=n(4586),y=n(6025),b=n(6342),v=n(1213),w=n(2131),k=n(4090),x=n(2967),S=n(440),E=n(1463);function C(){const{i18n:{currentLocale:e,defaultLocale:t,localeConfigs:n}}=(0,g.A)(),r=(0,w.o)(),o=n[e].htmlLang,a=e=>e.replace("-","_");return(0,f.jsxs)(m.A,{children:[Object.entries(n).map((e=>{let[t,{htmlLang:n}]=e;return(0,f.jsx)("link",{rel:"alternate",href:r.createUrl({locale:t,fullyQualified:!0}),hrefLang:n},t)})),(0,f.jsx)("link",{rel:"alternate",href:r.createUrl({locale:t,fullyQualified:!0}),hrefLang:"x-default"}),(0,f.jsx)("meta",{property:"og:locale",content:a(o)}),Object.values(n).filter((e=>o!==e.htmlLang)).map((e=>(0,f.jsx)("meta",{property:"og:locale:alternate",content:a(e.htmlLang)},`meta-og-${e.htmlLang}`)))]})}function _(e){let{permalink:t}=e;const{siteConfig:{url:n}}=(0,g.A)(),r=function(){const{siteConfig:{url:e,baseUrl:t,trailingSlash:n}}=(0,g.A)(),{pathname:r}=(0,d.zy)();return e+(0,S.applyTrailingSlash)((0,y.Ay)(r),{trailingSlash:n,baseUrl:t})}(),o=t?`${n}${t}`:r;return(0,f.jsxs)(m.A,{children:[(0,f.jsx)("meta",{property:"og:url",content:o}),(0,f.jsx)("link",{rel:"canonical",href:o})]})}function T(){const{i18n:{currentLocale:e}}=(0,g.A)(),{metadata:t,image:n}=(0,b.p)();return(0,f.jsxs)(f.Fragment,{children:[(0,f.jsxs)(m.A,{children:[(0,f.jsx)("meta",{name:"twitter:card",content:"summary_large_image"}),(0,f.jsx)("body",{className:k.w})]}),n&&(0,f.jsx)(v.be,{image:n}),(0,f.jsx)(_,{}),(0,f.jsx)(C,{}),(0,f.jsx)(E.A,{tag:x.Cy,locale:e}),(0,f.jsx)(m.A,{children:t.map(((e,t)=>(0,f.jsx)("meta",{...e},t)))})]})}const A=new Map;var j=n(6125),L=n(6988),P=n(205);function R(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r{const r=t.default?.[e]??t[e];return r?.(...n)}));return()=>o.forEach((e=>e?.()))}const N=function(e){let{children:t,location:n,previousLocation:r}=e;return(0,P.A)((()=>{r!==n&&(!function(e){let{location:t,previousLocation:n}=e;if(!n)return;const r=t.pathname===n.pathname,o=t.hash===n.hash,a=t.search===n.search;if(r&&o&&!a)return;const{hash:i}=t;if(i){const e=decodeURIComponent(i.substring(1)),t=document.getElementById(e);t?.scrollIntoView()}else window.scrollTo(0,0)}({location:n,previousLocation:r}),R("onRouteDidUpdate",{previousLocation:r,location:n}))}),[r,n]),t};function O(e){const t=Array.from(new Set([e,decodeURI(e)])).map((e=>(0,p.u)(c.A,e))).flat();return Promise.all(t.map((e=>e.route.component.preload?.())))}class I extends r.Component{previousLocation;routeUpdateCleanupCb;constructor(e){super(e),this.previousLocation=null,this.routeUpdateCleanupCb=l.A.canUseDOM?R("onRouteUpdate",{previousLocation:null,location:this.props.location}):()=>{},this.state={nextRouteHasLoaded:!0}}shouldComponentUpdate(e,t){if(e.location===this.props.location)return t.nextRouteHasLoaded;const n=e.location;return this.previousLocation=this.props.location,this.setState({nextRouteHasLoaded:!1}),this.routeUpdateCleanupCb=R("onRouteUpdate",{previousLocation:this.previousLocation,location:n}),O(n.pathname).then((()=>{this.routeUpdateCleanupCb(),this.setState({nextRouteHasLoaded:!0})})).catch((e=>{console.warn(e),window.location.reload()})),!1}render(){const{children:e,location:t}=this.props;return(0,f.jsx)(N,{previousLocation:this.previousLocation,location:t,children:(0,f.jsx)(d.qh,{location:t,render:()=>e})})}}const D=I,F="__docusaurus-base-url-issue-banner-container",M="__docusaurus-base-url-issue-banner",z="__docusaurus-base-url-issue-banner-suggestion-container";function B(e){return`\ndocument.addEventListener('DOMContentLoaded', function maybeInsertBanner() {\n var shouldInsert = typeof window['docusaurus'] === 'undefined';\n shouldInsert && insertBanner();\n});\n\nfunction insertBanner() {\n var bannerContainer = document.createElement('div');\n bannerContainer.id = '${F}';\n var bannerHtml = ${JSON.stringify(function(e){return`\n
\n

Your Docusaurus site did not load properly.

\n

A very common reason is a wrong site baseUrl configuration.

\n

Current configured baseUrl = ${e} ${"/"===e?" (default value)":""}

\n

We suggest trying baseUrl =

\n
\n`}(e)).replace(/{let{route:t}=e;return!0===t.exact})))return A.set(e.pathname,e.pathname),e;const t=e.pathname.trim().replace(/(?:\/index)?\.html$/,"")||"/";return A.set(e.pathname,t),{...e,pathname:t}}((0,d.zy)());return(0,f.jsx)(D,{location:e,children:W})}function K(){return(0,f.jsx)(H.A,{children:(0,f.jsx)(L.l,{children:(0,f.jsxs)(j.x,{children:[(0,f.jsxs)(h,{children:[(0,f.jsx)(q,{}),(0,f.jsx)(T,{}),(0,f.jsx)(U,{}),(0,f.jsx)(G,{})]}),(0,f.jsx)(V,{})]})})})}var Y=n(4054);const Z=function(e){try{return document.createElement("link").relList.supports(e)}catch{return!1}}("prefetch")?function(e){return new Promise(((t,n)=>{if("undefined"==typeof document)return void n();const r=document.createElement("link");r.setAttribute("rel","prefetch"),r.setAttribute("href",e),r.onload=()=>t(),r.onerror=()=>n();const o=document.getElementsByTagName("head")[0]??document.getElementsByName("script")[0]?.parentNode;o?.appendChild(r)}))}:function(e){return new Promise(((t,n)=>{const r=new XMLHttpRequest;r.open("GET",e,!0),r.withCredentials=!0,r.onload=()=>{200===r.status?t():n()},r.send(null)}))};var X=n(6921);const J=new Set,ee=new Set,te=()=>navigator.connection?.effectiveType.includes("2g")||navigator.connection?.saveData,ne={prefetch:e=>{if(!(e=>!te()&&!ee.has(e)&&!J.has(e))(e))return!1;J.add(e);const t=(0,p.u)(c.A,e).flatMap((e=>{return t=e.route.path,Object.entries(Y).filter((e=>{let[n]=e;return n.replace(/-[^-]+$/,"")===t})).flatMap((e=>{let[,t]=e;return Object.values((0,X.A)(t))}));var t}));return Promise.all(t.map((e=>{const t=n.gca(e);return t&&!t.includes("undefined")?Z(t).catch((()=>{})):Promise.resolve()})))},preload:e=>!!(e=>!te()&&!ee.has(e))(e)&&(ee.add(e),O(e))},re=Object.freeze(ne);function oe(e){let{children:t}=e;return"hash"===s.default.future.experimental_router?(0,f.jsx)(i.I9,{children:t}):(0,f.jsx)(i.Kd,{children:t})}const ae=Boolean(!0);if(l.A.canUseDOM){window.docusaurus=re;const e=document.getElementById("__docusaurus"),t=(0,f.jsx)(a.vd,{children:(0,f.jsx)(oe,{children:(0,f.jsx)(K,{})})}),n=(e,t)=>{console.error("Docusaurus React Root onRecoverableError:",e,t)},i=()=>{if(window.docusaurusRoot)window.docusaurusRoot.render(t);else if(ae)window.docusaurusRoot=o.hydrateRoot(e,t,{onRecoverableError:n});else{const r=o.createRoot(e,{onRecoverableError:n});r.render(t),window.docusaurusRoot=r}};O(window.location.pathname).then((()=>{(0,r.startTransition)(i)}))}},6988:(e,t,n)=>{"use strict";n.d(t,{o:()=>d,l:()=>p});var r=n(6540),o=n(4784);const a=JSON.parse('{"docusaurus-plugin-content-docs":{"default":{"path":"/spec-up-t-website/docs","versions":[{"name":"current","label":"Next","isLast":true,"path":"/spec-up-t-website/docs","mainDocId":"cheat-sheet","docs":[{"id":"cheat-sheet","path":"/spec-up-t-website/docs/cheat-sheet","sidebar":"tutorialSidebar"},{"id":"glossary","path":"/spec-up-t-website/docs/glossary","sidebar":"tutorialSidebar"},{"id":"how-it-came-to-be","path":"/spec-up-t-website/docs/how-it-came-to-be","sidebar":"tutorialSidebar"},{"id":"intro","path":"/spec-up-t-website/docs/intro","sidebar":"tutorialSidebar"},{"id":"q-and-a","path":"/spec-up-t-website/docs/q-and-a","sidebar":"tutorialSidebar"},{"id":"spec-up-t-demo-site","path":"/spec-up-t-website/docs/spec-up-t-demo-site","sidebar":"tutorialSidebar"},{"id":"this-site-maintainers","path":"/spec-up-t-website/docs/this-site-maintainers","sidebar":"tutorialSidebar"},{"id":"troubleshooting","path":"/spec-up-t-website/docs/troubleshooting","sidebar":"tutorialSidebar"},{"id":"various-roles/admins-guide","path":"/spec-up-t-website/docs/various-roles/admins-guide","sidebar":"tutorialSidebar"},{"id":"various-roles/content-authors-guide/introduction","path":"/spec-up-t-website/docs/various-roles/content-authors-guide/introduction","sidebar":"tutorialSidebar"},{"id":"various-roles/curators-guide/introduction","path":"/spec-up-t-website/docs/various-roles/curators-guide/introduction","sidebar":"tutorialSidebar"},{"id":"various-roles/developers-guide","path":"/spec-up-t-website/docs/various-roles/developers-guide","sidebar":"tutorialSidebar"},{"id":"various-roles/general-guide","path":"/spec-up-t-website/docs/various-roles/general-guide","sidebar":"tutorialSidebar"},{"id":"various-roles/glossary-maintainers-guide/introduction","path":"/spec-up-t-website/docs/various-roles/glossary-maintainers-guide/introduction","sidebar":"tutorialSidebar"},{"id":"various-roles/intro","path":"/spec-up-t-website/docs/various-roles/intro","sidebar":"tutorialSidebar"},{"id":"various-roles/readers-guide/introduction","path":"/spec-up-t-website/docs/various-roles/readers-guide/introduction","sidebar":"tutorialSidebar"},{"id":"various-roles/technical-skills-needed","path":"/spec-up-t-website/docs/various-roles/technical-skills-needed","sidebar":"tutorialSidebar"},{"id":"various-roles/terminology-authors-guide/external-term-references","path":"/spec-up-t-website/docs/various-roles/terminology-authors-guide/external-term-references","sidebar":"tutorialSidebar"},{"id":"various-roles/terminology-authors-guide/introduction","path":"/spec-up-t-website/docs/various-roles/terminology-authors-guide/introduction","sidebar":"tutorialSidebar"},{"id":"various-roles/terminology-authors-guide/term-references","path":"/spec-up-t-website/docs/various-roles/terminology-authors-guide/term-references","sidebar":"tutorialSidebar"},{"id":"/category/roles","path":"/spec-up-t-website/docs/category/roles","sidebar":"tutorialSidebar"},{"id":"/category/content-authors-guide","path":"/spec-up-t-website/docs/category/content-authors-guide","sidebar":"tutorialSidebar"},{"id":"/category/terminology-author-guide","path":"/spec-up-t-website/docs/category/terminology-author-guide","sidebar":"tutorialSidebar"},{"id":"/category/curators-guide","path":"/spec-up-t-website/docs/category/curators-guide","sidebar":"tutorialSidebar"},{"id":"/category/glossary-maintainers-guide","path":"/spec-up-t-website/docs/category/glossary-maintainers-guide","sidebar":"tutorialSidebar"},{"id":"/category/readers-guide","path":"/spec-up-t-website/docs/category/readers-guide","sidebar":"tutorialSidebar"}],"draftIds":[],"sidebars":{"tutorialSidebar":{"link":{"path":"/spec-up-t-website/docs/cheat-sheet","label":"cheat-sheet"}}}}],"breadcrumbs":true}}}'),i=JSON.parse('{"defaultLocale":"en","locales":["en"],"path":"i18n","currentLocale":"en","localeConfigs":{"en":{"label":"English","direction":"ltr","htmlLang":"en","calendar":"gregory","path":"en"}}}');var s=n(2654);const l=JSON.parse('{"docusaurusVersion":"3.4.0","siteVersion":"0.0.0","pluginVersions":{"docusaurus-plugin-content-docs":{"type":"package","name":"@docusaurus/plugin-content-docs","version":"3.4.0"},"docusaurus-plugin-content-blog":{"type":"package","name":"@docusaurus/plugin-content-blog","version":"3.4.0"},"docusaurus-plugin-content-pages":{"type":"package","name":"@docusaurus/plugin-content-pages","version":"3.4.0"},"docusaurus-plugin-sitemap":{"type":"package","name":"@docusaurus/plugin-sitemap","version":"3.4.0"},"docusaurus-theme-classic":{"type":"package","name":"@docusaurus/theme-classic","version":"3.4.0"},"@easyops-cn/docusaurus-search-local":{"type":"package","name":"@easyops-cn/docusaurus-search-local","version":"0.44.5"}}}');var u=n(4848);const c={siteConfig:o.default,siteMetadata:l,globalData:a,i18n:i,codeTranslations:s},d=r.createContext(c);function p(e){let{children:t}=e;return(0,u.jsx)(d.Provider,{value:c,children:t})}},7489:(e,t,n)=>{"use strict";n.d(t,{A:()=>m});var r=n(6540),o=n(8193),a=n(5260),i=n(440),s=n(217),l=n(3102),u=n(4848);function c(e){let{error:t,tryAgain:n}=e;return(0,u.jsxs)("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"flex-start",minHeight:"100vh",width:"100%",maxWidth:"80ch",fontSize:"20px",margin:"0 auto",padding:"1rem"},children:[(0,u.jsx)("h1",{style:{fontSize:"3rem"},children:"This page crashed"}),(0,u.jsx)("button",{type:"button",onClick:n,style:{margin:"1rem 0",fontSize:"2rem",cursor:"pointer",borderRadius:20,padding:"1rem"},children:"Try again"}),(0,u.jsx)(d,{error:t})]})}function d(e){let{error:t}=e;const n=(0,i.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,u.jsx)("p",{style:{whiteSpace:"pre-wrap"},children:n})}function p(e){let{children:t}=e;return(0,u.jsx)(l.W,{value:{plugin:{name:"docusaurus-core-error-boundary",id:"default"}},children:t})}function f(e){let{error:t,tryAgain:n}=e;return(0,u.jsx)(p,{children:(0,u.jsxs)(m,{fallback:()=>(0,u.jsx)(c,{error:t,tryAgain:n}),children:[(0,u.jsx)(a.A,{children:(0,u.jsx)("title",{children:"Page Error"})}),(0,u.jsx)(s.A,{children:(0,u.jsx)(c,{error:t,tryAgain:n})})]})})}const h=e=>(0,u.jsx)(f,{...e});class m extends r.Component{constructor(e){super(e),this.state={error:null}}componentDidCatch(e){o.A.canUseDOM&&this.setState({error:e})}render(){const{children:e}=this.props,{error:t}=this.state;if(t){const e={error:t,tryAgain:()=>this.setState({error:null})};return(this.props.fallback??h)(e)}return e??null}}},8193:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});const r="undefined"!=typeof window&&"document"in window&&"createElement"in window.document,o={canUseDOM:r,canUseEventListeners:r&&("addEventListener"in window||"attachEvent"in window),canUseIntersectionObserver:r&&"IntersectionObserver"in window,canUseViewport:r&&"screen"in window}},5260:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});n(6540);var r=n(545),o=n(4848);function a(e){return(0,o.jsx)(r.mg,{...e})}},8774:(e,t,n)=>{"use strict";n.d(t,{A:()=>f});var r=n(6540),o=n(4625),a=n(440),i=n(4586),s=n(6654),l=n(8193),u=n(3427),c=n(6025),d=n(4848);function p(e,t){let{isNavLink:n,to:p,href:f,activeClassName:h,isActive:m,"data-noBrokenLinkCheck":g,autoAddBaseUrl:y=!0,...b}=e;const{siteConfig:v}=(0,i.A)(),{trailingSlash:w,baseUrl:k}=v,x=v.future.experimental_router,{withBaseUrl:S}=(0,c.hH)(),E=(0,u.A)(),C=(0,r.useRef)(null);(0,r.useImperativeHandle)(t,(()=>C.current));const _=p||f;const T=(0,s.A)(_),A=_?.replace("pathname://","");let j=void 0!==A?(L=A,y&&(e=>e.startsWith("/"))(L)?S(L):L):void 0;var L;"hash"===x&&j?.startsWith("./")&&(j=j?.slice(1)),j&&T&&(j=(0,a.applyTrailingSlash)(j,{trailingSlash:w,baseUrl:k}));const P=(0,r.useRef)(!1),R=n?o.k2:o.N_,N=l.A.canUseIntersectionObserver,O=(0,r.useRef)(),I=()=>{P.current||null==j||(window.docusaurus.preload(j),P.current=!0)};(0,r.useEffect)((()=>(!N&&T&&null!=j&&window.docusaurus.prefetch(j),()=>{N&&O.current&&O.current.disconnect()})),[O,j,N,T]);const D=j?.startsWith("#")??!1,F=!b.target||"_self"===b.target,M=!j||!T||!F;return g||!D&&M||E.collectLink(j),b.id&&E.collectAnchor(b.id),M?(0,d.jsx)("a",{ref:C,href:j,..._&&!T&&{target:"_blank",rel:"noopener noreferrer"},...b}):(0,d.jsx)(R,{...b,onMouseEnter:I,onTouchStart:I,innerRef:e=>{C.current=e,N&&e&&T&&(O.current=new window.IntersectionObserver((t=>{t.forEach((t=>{e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(O.current.unobserve(e),O.current.disconnect(),null!=j&&window.docusaurus.prefetch(j))}))})),O.current.observe(e))},to:j,...n&&{isActive:m,activeClassName:h}})}const f=r.forwardRef(p)},1312:(e,t,n)=>{"use strict";n.d(t,{A:()=>u,T:()=>l});var r=n(6540),o=n(4848);function a(e,t){const n=e.split(/(\{\w+\})/).map(((e,n)=>{if(n%2==1){const n=t?.[e.slice(1,-1)];if(void 0!==n)return n}return e}));return n.some((e=>(0,r.isValidElement)(e)))?n.map(((e,t)=>(0,r.isValidElement)(e)?r.cloneElement(e,{key:t}):e)).filter((e=>""!==e)):n.join("")}var i=n(2654);function s(e){let{id:t,message:n}=e;if(void 0===t&&void 0===n)throw new Error("Docusaurus translation declarations must have at least a translation id or a default translation message");return i[t??n]??n??t}function l(e,t){let{message:n,id:r}=e;return a(s({message:n,id:r}),t)}function u(e){let{children:t,id:n,values:r}=e;if(t&&"string"!=typeof t)throw console.warn("Illegal children",t),new Error("The Docusaurus component only accept simple string values");const i=s({message:t,id:n});return(0,o.jsx)(o.Fragment,{children:a(i,r)})}},7065:(e,t,n)=>{"use strict";n.d(t,{W:()=>r});const r="default"},6654:(e,t,n)=>{"use strict";function r(e){return/^(?:\w*:|\/\/)/.test(e)}function o(e){return void 0!==e&&!r(e)}n.d(t,{A:()=>o,z:()=>r})},6025:(e,t,n)=>{"use strict";n.d(t,{Ay:()=>s,hH:()=>i});var r=n(6540),o=n(4586),a=n(6654);function i(){const{siteConfig:e}=(0,o.A)(),{baseUrl:t,url:n}=e,i=e.future.experimental_router,s=(0,r.useCallback)(((e,r)=>function(e){let{siteUrl:t,baseUrl:n,url:r,options:{forcePrependBaseUrl:o=!1,absolute:i=!1}={},router:s}=e;if(!r||r.startsWith("#")||(0,a.z)(r))return r;if("hash"===s)return r.startsWith("/")?`.${r}`:`./${r}`;if(o)return n+r.replace(/^\//,"");if(r===n.replace(/\/$/,""))return n;const l=r.startsWith(n)?r:n+r.replace(/^\//,"");return i?t+l:l}({siteUrl:n,baseUrl:t,url:e,options:r,router:i})),[n,t,i]);return{withBaseUrl:s}}function s(e,t){void 0===t&&(t={});const{withBaseUrl:n}=i();return n(e,t)}},3427:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});var r=n(6540);n(4848);const o=r.createContext({collectAnchor:()=>{},collectLink:()=>{}}),a=()=>(0,r.useContext)(o);function i(){return a()}},4586:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=n(6540),o=n(6988);function a(){return(0,r.useContext)(o.o)}},6588:(e,t,n)=>{"use strict";n.d(t,{P_:()=>i,kh:()=>a});var r=n(4586),o=n(7065);function a(e,t){void 0===t&&(t={});const n=function(){const{globalData:e}=(0,r.A)();return e}()[e];if(!n&&t.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin.`);return n}function i(e,t,n){void 0===t&&(t=o.W),void 0===n&&(n={});const r=a(e),i=r?.[t];if(!i&&n.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin with id "${t}".`);return i}},2303:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=n(6540),o=n(6125);function a(){return(0,r.useContext)(o.o)}},205:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});var r=n(6540);const o=n(8193).A.canUseDOM?r.useLayoutEffect:r.useEffect},6803:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});var r=n(6540),o=n(3102);function a(){const e=r.useContext(o.o);if(!e)throw new Error("Unexpected: no Docusaurus route context found");return e}},6921:(e,t,n)=>{"use strict";n.d(t,{A:()=>o});const r=e=>"object"==typeof e&&!!e&&Object.keys(e).length>0;function o(e){const t={};return function e(n,o){Object.entries(n).forEach((n=>{let[a,i]=n;const s=o?`${o}.${a}`:a;r(i)?e(i,s):t[s]=i}))}(e),t}},3102:(e,t,n)=>{"use strict";n.d(t,{W:()=>i,o:()=>a});var r=n(6540),o=n(4848);const a=r.createContext(null);function i(e){let{children:t,value:n}=e;const i=r.useContext(a),s=(0,r.useMemo)((()=>function(e){let{parent:t,value:n}=e;if(!t){if(!n)throw new Error("Unexpected: no Docusaurus route context found");if(!("plugin"in n))throw new Error("Unexpected: Docusaurus topmost route context has no `plugin` attribute");return n}const r={...t.data,...n?.data};return{plugin:t.plugin,data:r}}({parent:i,value:n})),[i,n]);return(0,o.jsx)(a.Provider,{value:s,children:t})}},8295:(e,t,n)=>{"use strict";n.d(t,{zK:()=>f,vT:()=>c,Gy:()=>l,HW:()=>h,ht:()=>u,r7:()=>p,jh:()=>d});var r=n(6347),o=n(6588);const a=e=>e.versions.find((e=>e.isLast));function i(e,t){const n=function(e,t){const n=a(e);return[...e.versions.filter((e=>e!==n)),n].find((e=>!!(0,r.B6)(t,{path:e.path,exact:!1,strict:!1})))}(e,t),o=n?.docs.find((e=>!!(0,r.B6)(t,{path:e.path,exact:!0,strict:!1})));return{activeVersion:n,activeDoc:o,alternateDocVersions:o?function(t){const n={};return e.versions.forEach((e=>{e.docs.forEach((r=>{r.id===t&&(n[e.name]=r)}))})),n}(o.id):{}}}const s={},l=()=>(0,o.kh)("docusaurus-plugin-content-docs")??s,u=e=>{try{return(0,o.P_)("docusaurus-plugin-content-docs",e,{failfast:!0})}catch(t){throw new Error("You are using a feature of the Docusaurus docs plugin, but this plugin does not seem to be enabled"+("Default"===e?"":` (pluginId=${e}`),{cause:t})}};function c(e){void 0===e&&(e={});const t=l(),{pathname:n}=(0,r.zy)();return function(e,t,n){void 0===n&&(n={});const o=Object.entries(e).sort(((e,t)=>t[1].path.localeCompare(e[1].path))).find((e=>{let[,n]=e;return!!(0,r.B6)(t,{path:n.path,exact:!1,strict:!1})})),a=o?{pluginId:o[0],pluginData:o[1]}:void 0;if(!a&&n.failfast)throw new Error(`Can't find active docs plugin for "${t}" pathname, while it was expected to be found. Maybe you tried to use a docs feature that can only be used on a docs-related page? Existing docs plugin paths are: ${Object.values(e).map((e=>e.path)).join(", ")}`);return a}(t,n,e)}function d(e){return u(e).versions}function p(e){const t=u(e);return a(t)}function f(e){const t=u(e),{pathname:n}=(0,r.zy)();return i(t,n)}function h(e){const t=u(e),{pathname:n}=(0,r.zy)();return function(e,t){const n=a(e);return{latestDocSuggestion:i(e,t).alternateDocVersions[n.name],latestVersionSuggestion:n}}(t,n)}},6294:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>a});var r=n(5947),o=n.n(r);o().configure({showSpinner:!1});const a={onRouteUpdate(e){let{location:t,previousLocation:n}=e;if(n&&t.pathname!==n.pathname){const e=window.setTimeout((()=>{o().start()}),200);return()=>window.clearTimeout(e)}},onRouteDidUpdate(){o().done()}}},6134:(e,t,n)=>{"use strict";var r=n(1765),o=n(4784);!function(e){const{themeConfig:{prism:t}}=o.default,{additionalLanguages:r}=t;globalThis.Prism=e,r.forEach((e=>{"php"===e&&n(9700),n(8692)(`./prism-${e}`)})),delete globalThis.Prism}(r.My)},1107:(e,t,n)=>{"use strict";n.d(t,{A:()=>c});n(6540);var r=n(4164),o=n(1312),a=n(6342),i=n(8774),s=n(3427);const l={anchorWithStickyNavbar:"anchorWithStickyNavbar_LWe7",anchorWithHideOnScrollNavbar:"anchorWithHideOnScrollNavbar_WYt5"};var u=n(4848);function c(e){let{as:t,id:n,...c}=e;const d=(0,s.A)(),{navbar:{hideOnScroll:p}}=(0,a.p)();if("h1"===t||!n)return(0,u.jsx)(t,{...c,id:void 0});d.collectAnchor(n);const f=(0,o.T)({id:"theme.common.headingLinkTitle",message:"Direct link to {heading}",description:"Title for link to heading"},{heading:"string"==typeof c.children?c.children:n});return(0,u.jsxs)(t,{...c,className:(0,r.A)("anchor",p?l.anchorWithHideOnScrollNavbar:l.anchorWithStickyNavbar,c.className),id:n,children:[c.children,(0,u.jsx)(i.A,{className:"hash-link",to:`#${n}`,"aria-label":f,title:f,children:"\u200b"})]})}},3186:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});n(6540);const r={iconExternalLink:"iconExternalLink_nPIU"};var o=n(4848);function a(e){let{width:t=13.5,height:n=13.5}=e;return(0,o.jsx)("svg",{width:t,height:n,"aria-hidden":"true",viewBox:"0 0 24 24",className:r.iconExternalLink,children:(0,o.jsx)("path",{fill:"currentColor",d:"M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"})})}},217:(e,t,n)=>{"use strict";n.d(t,{A:()=>Mt});var r=n(6540),o=n(4164),a=n(7489),i=n(1213),s=n(6347),l=n(1312),u=n(5062),c=n(4848);const d="__docusaurus_skipToContent_fallback";function p(e){e.setAttribute("tabindex","-1"),e.focus(),e.removeAttribute("tabindex")}function f(){const e=(0,r.useRef)(null),{action:t}=(0,s.W6)(),n=(0,r.useCallback)((e=>{e.preventDefault();const t=document.querySelector("main:first-of-type")??document.getElementById(d);t&&p(t)}),[]);return(0,u.$)((n=>{let{location:r}=n;e.current&&!r.hash&&"PUSH"===t&&p(e.current)})),{containerRef:e,onClick:n}}const h=(0,l.T)({id:"theme.common.skipToMainContent",description:"The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation",message:"Skip to main content"});function m(e){const t=e.children??h,{containerRef:n,onClick:r}=f();return(0,c.jsx)("div",{ref:n,role:"region","aria-label":h,children:(0,c.jsx)("a",{...e,href:`#${d}`,onClick:r,children:t})})}var g=n(7559),y=n(4090);const b={skipToContent:"skipToContent_fXgn"};function v(){return(0,c.jsx)(m,{className:b.skipToContent})}var w=n(6342),k=n(5041);function x(e){let{width:t=21,height:n=21,color:r="currentColor",strokeWidth:o=1.2,className:a,...i}=e;return(0,c.jsx)("svg",{viewBox:"0 0 15 15",width:t,height:n,...i,children:(0,c.jsx)("g",{stroke:r,strokeWidth:o,children:(0,c.jsx)("path",{d:"M.75.75l13.5 13.5M14.25.75L.75 14.25"})})})}const S={closeButton:"closeButton_CVFx"};function E(e){return(0,c.jsx)("button",{type:"button","aria-label":(0,l.T)({id:"theme.AnnouncementBar.closeButtonAriaLabel",message:"Close",description:"The ARIA label for close button of announcement bar"}),...e,className:(0,o.A)("clean-btn close",S.closeButton,e.className),children:(0,c.jsx)(x,{width:14,height:14,strokeWidth:3.1})})}const C={content:"content_knG7"};function _(e){const{announcementBar:t}=(0,w.p)(),{content:n}=t;return(0,c.jsx)("div",{...e,className:(0,o.A)(C.content,e.className),dangerouslySetInnerHTML:{__html:n}})}const T={announcementBar:"announcementBar_mb4j",announcementBarPlaceholder:"announcementBarPlaceholder_vyr4",announcementBarClose:"announcementBarClose_gvF7",announcementBarContent:"announcementBarContent_xLdY"};function A(){const{announcementBar:e}=(0,w.p)(),{isActive:t,close:n}=(0,k.M)();if(!t)return null;const{backgroundColor:r,textColor:o,isCloseable:a}=e;return(0,c.jsxs)("div",{className:T.announcementBar,style:{backgroundColor:r,color:o},role:"banner",children:[a&&(0,c.jsx)("div",{className:T.announcementBarPlaceholder}),(0,c.jsx)(_,{className:T.announcementBarContent}),a&&(0,c.jsx)(E,{onClick:n,className:T.announcementBarClose})]})}var j=n(9876),L=n(3104);var P=n(9532),R=n(5600);const N=r.createContext(null);function O(e){let{children:t}=e;const n=function(){const e=(0,j.M)(),t=(0,R.YL)(),[n,o]=(0,r.useState)(!1),a=null!==t.component,i=(0,P.ZC)(a);return(0,r.useEffect)((()=>{a&&!i&&o(!0)}),[a,i]),(0,r.useEffect)((()=>{a?e.shown||o(!0):o(!1)}),[e.shown,a]),(0,r.useMemo)((()=>[n,o]),[n])}();return(0,c.jsx)(N.Provider,{value:n,children:t})}function I(e){if(e.component){const t=e.component;return(0,c.jsx)(t,{...e.props})}}function D(){const e=(0,r.useContext)(N);if(!e)throw new P.dV("NavbarSecondaryMenuDisplayProvider");const[t,n]=e,o=(0,r.useCallback)((()=>n(!1)),[n]),a=(0,R.YL)();return(0,r.useMemo)((()=>({shown:t,hide:o,content:I(a)})),[o,a,t])}function F(e){let{header:t,primaryMenu:n,secondaryMenu:r}=e;const{shown:a}=D();return(0,c.jsxs)("div",{className:"navbar-sidebar",children:[t,(0,c.jsxs)("div",{className:(0,o.A)("navbar-sidebar__items",{"navbar-sidebar__items--show-secondary":a}),children:[(0,c.jsx)("div",{className:"navbar-sidebar__item menu",children:n}),(0,c.jsx)("div",{className:"navbar-sidebar__item menu",children:r})]})]})}var M=n(5293),z=n(2303);function B(e){return(0,c.jsx)("svg",{viewBox:"0 0 24 24",width:24,height:24,...e,children:(0,c.jsx)("path",{fill:"currentColor",d:"M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"})})}function $(e){return(0,c.jsx)("svg",{viewBox:"0 0 24 24",width:24,height:24,...e,children:(0,c.jsx)("path",{fill:"currentColor",d:"M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"})})}const U={toggle:"toggle_vylO",toggleButton:"toggleButton_gllP",darkToggleIcon:"darkToggleIcon_wfgR",lightToggleIcon:"lightToggleIcon_pyhR",toggleButtonDisabled:"toggleButtonDisabled_aARS"};function q(e){let{className:t,buttonClassName:n,value:r,onChange:a}=e;const i=(0,z.A)(),s=(0,l.T)({message:"Switch between dark and light mode (currently {mode})",id:"theme.colorToggle.ariaLabel",description:"The ARIA label for the navbar color mode toggle"},{mode:"dark"===r?(0,l.T)({message:"dark mode",id:"theme.colorToggle.ariaLabel.mode.dark",description:"The name for the dark color mode"}):(0,l.T)({message:"light mode",id:"theme.colorToggle.ariaLabel.mode.light",description:"The name for the light color mode"})});return(0,c.jsx)("div",{className:(0,o.A)(U.toggle,t),children:(0,c.jsxs)("button",{className:(0,o.A)("clean-btn",U.toggleButton,!i&&U.toggleButtonDisabled,n),type:"button",onClick:()=>a("dark"===r?"light":"dark"),disabled:!i,title:s,"aria-label":s,"aria-live":"polite",children:[(0,c.jsx)(B,{className:(0,o.A)(U.toggleIcon,U.lightToggleIcon)}),(0,c.jsx)($,{className:(0,o.A)(U.toggleIcon,U.darkToggleIcon)})]})})}const H=r.memo(q),Q={darkNavbarColorModeToggle:"darkNavbarColorModeToggle_X3D1"};function V(e){let{className:t}=e;const n=(0,w.p)().navbar.style,r=(0,w.p)().colorMode.disableSwitch,{colorMode:o,setColorMode:a}=(0,M.G)();return r?null:(0,c.jsx)(H,{className:t,buttonClassName:"dark"===n?Q.darkNavbarColorModeToggle:void 0,value:o,onChange:a})}var W=n(3465);function G(){return(0,c.jsx)(W.A,{className:"navbar__brand",imageClassName:"navbar__logo",titleClassName:"navbar__title text--truncate"})}function K(){const e=(0,j.M)();return(0,c.jsx)("button",{type:"button","aria-label":(0,l.T)({id:"theme.docs.sidebar.closeSidebarButtonAriaLabel",message:"Close navigation bar",description:"The ARIA label for close button of mobile sidebar"}),className:"clean-btn navbar-sidebar__close",onClick:()=>e.toggle(),children:(0,c.jsx)(x,{color:"var(--ifm-color-emphasis-600)"})})}function Y(){return(0,c.jsxs)("div",{className:"navbar-sidebar__brand",children:[(0,c.jsx)(G,{}),(0,c.jsx)(V,{className:"margin-right--md"}),(0,c.jsx)(K,{})]})}var Z=n(8774),X=n(6025),J=n(6654);function ee(e,t){return void 0!==e&&void 0!==t&&new RegExp(e,"gi").test(t)}var te=n(3186);function ne(e){let{activeBasePath:t,activeBaseRegex:n,to:r,href:o,label:a,html:i,isDropdownLink:s,prependBaseUrlToHref:l,...u}=e;const d=(0,X.Ay)(r),p=(0,X.Ay)(t),f=(0,X.Ay)(o,{forcePrependBaseUrl:!0}),h=a&&o&&!(0,J.A)(o),m=i?{dangerouslySetInnerHTML:{__html:i}}:{children:(0,c.jsxs)(c.Fragment,{children:[a,h&&(0,c.jsx)(te.A,{...s&&{width:12,height:12}})]})};return o?(0,c.jsx)(Z.A,{href:l?f:o,...u,...m}):(0,c.jsx)(Z.A,{to:d,isNavLink:!0,...(t||n)&&{isActive:(e,t)=>n?ee(n,t.pathname):t.pathname.startsWith(p)},...u,...m})}function re(e){let{className:t,isDropdownItem:n=!1,...r}=e;const a=(0,c.jsx)(ne,{className:(0,o.A)(n?"dropdown__link":"navbar__item navbar__link",t),isDropdownLink:n,...r});return n?(0,c.jsx)("li",{children:a}):a}function oe(e){let{className:t,isDropdownItem:n,...r}=e;return(0,c.jsx)("li",{className:"menu__list-item",children:(0,c.jsx)(ne,{className:(0,o.A)("menu__link",t),...r})})}function ae(e){let{mobile:t=!1,position:n,...r}=e;const o=t?oe:re;return(0,c.jsx)(o,{...r,activeClassName:r.activeClassName??(t?"menu__link--active":"navbar__link--active")})}var ie=n(1422),se=n(9169),le=n(4586);const ue={dropdownNavbarItemMobile:"dropdownNavbarItemMobile_S0Fm"};function ce(e,t){return e.some((e=>function(e,t){return!!(0,se.ys)(e.to,t)||!!ee(e.activeBaseRegex,t)||!(!e.activeBasePath||!t.startsWith(e.activeBasePath))}(e,t)))}function de(e){let{items:t,position:n,className:a,onClick:i,...s}=e;const l=(0,r.useRef)(null),[u,d]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{const e=e=>{l.current&&!l.current.contains(e.target)&&d(!1)};return document.addEventListener("mousedown",e),document.addEventListener("touchstart",e),document.addEventListener("focusin",e),()=>{document.removeEventListener("mousedown",e),document.removeEventListener("touchstart",e),document.removeEventListener("focusin",e)}}),[l]),(0,c.jsxs)("div",{ref:l,className:(0,o.A)("navbar__item","dropdown","dropdown--hoverable",{"dropdown--right":"right"===n,"dropdown--show":u}),children:[(0,c.jsx)(ne,{"aria-haspopup":"true","aria-expanded":u,role:"button",href:s.to?void 0:"#",className:(0,o.A)("navbar__link",a),...s,onClick:s.to?void 0:e=>e.preventDefault(),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),d(!u))},children:s.children??s.label}),(0,c.jsx)("ul",{className:"dropdown__menu",children:t.map(((e,t)=>(0,r.createElement)(Ye,{isDropdownItem:!0,activeClassName:"dropdown__link--active",...e,key:t})))})]})}function pe(e){let{items:t,className:n,position:a,onClick:i,...l}=e;const u=function(){const{siteConfig:{baseUrl:e}}=(0,le.A)(),{pathname:t}=(0,s.zy)();return t.replace(e,"/")}(),d=ce(t,u),{collapsed:p,toggleCollapsed:f,setCollapsed:h}=(0,ie.u)({initialState:()=>!d});return(0,r.useEffect)((()=>{d&&h(!d)}),[u,d,h]),(0,c.jsxs)("li",{className:(0,o.A)("menu__list-item",{"menu__list-item--collapsed":p}),children:[(0,c.jsx)(ne,{role:"button",className:(0,o.A)(ue.dropdownNavbarItemMobile,"menu__link menu__link--sublist menu__link--sublist-caret",n),...l,onClick:e=>{e.preventDefault(),f()},children:l.children??l.label}),(0,c.jsx)(ie.N,{lazy:!0,as:"ul",className:"menu__list",collapsed:p,children:t.map(((e,t)=>(0,r.createElement)(Ye,{mobile:!0,isDropdownItem:!0,onClick:i,activeClassName:"menu__link--active",...e,key:t})))})]})}function fe(e){let{mobile:t=!1,...n}=e;const r=t?pe:de;return(0,c.jsx)(r,{...n})}var he=n(2131);function me(e){let{width:t=20,height:n=20,...r}=e;return(0,c.jsx)("svg",{viewBox:"0 0 24 24",width:t,height:n,"aria-hidden":!0,...r,children:(0,c.jsx)("path",{fill:"currentColor",d:"M12.87 15.07l-2.54-2.51.03-.03c1.74-1.94 2.98-4.17 3.71-6.53H17V4h-7V2H8v2H1v1.99h11.17C11.5 7.92 10.44 9.75 9 11.35 8.07 10.32 7.3 9.19 6.69 8h-2c.73 1.63 1.73 3.17 2.98 4.56l-5.09 5.02L4 19l5-5 3.11 3.11.76-2.04zM18.5 10h-2L12 22h2l1.12-3h4.75L21 22h2l-4.5-12zm-2.62 7l1.62-4.33L19.12 17h-3.24z"})})}const ge="iconLanguage_nlXk";var ye=n(1088),be=n(5391);var ve=n(7948),we=n(1034),ke=n(5891),xe=n(2384),Se=n(9913),Ee=n(4471),Ce=n(7674),_e=n(6841),Te=n(3810);const Ae='',je='',Le='',Pe='',Re='',Ne='',Oe='',Ie={searchBar:"searchBar_RVTs",dropdownMenu:"dropdownMenu_qbY6",searchBarLeft:"searchBarLeft_MXDe",suggestion:"suggestion_fB_2",cursor:"cursor_eG29",hitTree:"hitTree_kk6K",hitIcon:"hitIcon_a7Zy",hitPath:"hitPath_ieM4",noResultsIcon:"noResultsIcon_EBY5",hitFooter:"hitFooter_E9YW",hitWrapper:"hitWrapper_sAK8",hitTitle:"hitTitle_vyVt",hitAction:"hitAction_NqkB",hideAction:"hideAction_vcyE",noResults:"noResults_l6Q3",searchBarContainer:"searchBarContainer_NW3z",searchBarLoadingRing:"searchBarLoadingRing_YnHq",searchClearButton:"searchClearButton_qk4g",searchIndexLoading:"searchIndexLoading_EJ1f",searchHintContainer:"searchHintContainer_Pkmr",searchHint:"searchHint_iIMx",focused:"focused_OWtg",input:"input_FOTf",hint:"hint_URu1",suggestions:"suggestions_X8XU",dataset:"dataset_QiCy",empty:"empty_eITn"};function De(e){let{document:t,type:n,page:r,metadata:o,tokens:a,isInterOfTree:i,isLastOfTree:s}=e;const l=n===Se.i.Title,u=n===Se.i.Keywords,c=l||u,d=n===Se.i.Heading,p=[];i?p.push(Ne):s&&p.push(Oe);const f=p.map((e=>`${e}`)),h=`${c?Ae:d?je:Le}`,m=[`${u?(0,_e.Z)(t.s,a):(0,Te.C)(t.t,(0,Ce.g)(o,"t"),a)}`];if(!i&&!s&&ye.tb){const e=r?r.b?.concat(r.t).concat(t.s&&t.s!==r.t?t.s:[]):t.b;m.push(`${(0,Ee.$)(e??[])}`)}else c||m.push(`${(0,_e.Z)(r.t||(t.u.startsWith("/docs/api-reference/")?"API Reference":""),a)}`);const g=`${Pe}`;return[...f,h,``,...m,"",g].join("")}function Fe(){return`${Re}${(0,l.T)({id:"theme.SearchBar.noResultsText",message:"No results"})}`}var Me=n(2849),ze=n(3385);async function Be(){const e=await Promise.all([n.e(489),n.e(5741)]).then(n.t.bind(n,489,23)),t=e.default;return t.noConflict?t.noConflict():e.noConflict&&e.noConflict(),t}const $e="_highlight";const Ue=function(e){let{handleSearchBarToggle:t}=e;const o=(0,z.A)(),{siteConfig:{baseUrl:a},i18n:{currentLocale:i}}=(0,le.A)(),u=(0,we.vT)();let d=a;try{const{preferredVersion:e}=function(){return n(1034).g1(...arguments)}(u?.pluginId??ye.UB);e&&!e.isLast&&(d=e.path+"/")}catch(F){if(ye.I$&&!(F instanceof ve.dV))throw F}const p=(0,s.W6)(),f=(0,s.zy)(),h=(0,r.useRef)(null),m=(0,r.useRef)(new Map),g=(0,r.useRef)(!1),[y,b]=(0,r.useState)(!1),[v,w]=(0,r.useState)(!1),[k,x]=(0,r.useState)(""),S=(0,r.useRef)(null),E=(0,r.useRef)(""),[C,_]=(0,r.useState)("");(0,r.useEffect)((()=>{if(!Array.isArray(ye.Hg))return;let e="";if(f.pathname.startsWith(d)){const t=f.pathname.substring(d.length);let n;for(const e of ye.Hg){const r="string"==typeof e?e:e.path;if(t===r||t.startsWith(`${r}/`)){n=r;break}}n&&(e=n)}E.current!==e&&(m.current.delete(e),E.current=e),_(e)}),[f.pathname,d]);const T=!!ye.O6&&Array.isArray(ye.Hg)&&""===C,A=(0,r.useCallback)((async()=>{if(T||m.current.get(C))return;m.current.set(C,"loading"),S.current?.autocomplete.destroy(),b(!0);const[{wrappedIndexes:e,zhDictionary:t},n]=await Promise.all([(0,ke.Z)(d,C),Be()]);if(S.current=n(h.current,{hint:!1,autoselect:!0,openOnFocus:!0,cssClasses:{root:(0,be.A)(Ie.searchBar,{[Ie.searchBarLeft]:"left"===ye.ZG}),noPrefix:!0,dropdownMenu:Ie.dropdownMenu,input:Ie.input,hint:Ie.hint,suggestions:Ie.suggestions,suggestion:Ie.suggestion,cursor:Ie.cursor,dataset:Ie.dataset,empty:Ie.empty}},[{source:(0,xe.m)(e,t,ye.AT),templates:{suggestion:De,empty:Fe,footer:e=>{let{query:t,isEmpty:n}=e;if(n&&(!C||!ye.dz))return;const r=(e=>{let{query:t,isEmpty:n}=e;const r=document.createElement("a"),o=new URLSearchParams;let s;if(o.set("q",t),C){const e=C&&Array.isArray(ye.Hg)?ye.Hg.find((e=>"string"==typeof e?e===C:e.path===C)):C,t=e?(0,ze.p)(e,i).label:C;s=ye.dz&&n?(0,l.T)({id:"theme.SearchBar.seeAllOutsideContext",message:'See all results outside "{context}"'},{context:t}):(0,l.T)({id:"theme.SearchBar.searchInContext",message:'See all results within "{context}"'},{context:t})}else s=(0,l.T)({id:"theme.SearchBar.seeAll",message:"See all results"});if(!C||!Array.isArray(ye.Hg)||ye.dz&&n||o.set("ctx",C),d!==a){if(!d.startsWith(a))throw new Error(`Version url '${d}' does not start with base url '${a}', this is a bug of \`@easyops-cn/docusaurus-search-local\`, please report it.`);o.set("version",d.substring(a.length))}const u=`${a}search/?${o.toString()}`;return r.href=u,r.textContent=s,r.addEventListener("click",(e=>{e.ctrlKey||e.metaKey||(e.preventDefault(),S.current?.autocomplete.close(),p.push(u))})),r})({query:t,isEmpty:n}),o=document.createElement("div");return o.className=Ie.hitFooter,o.appendChild(r),o}}}]).on("autocomplete:selected",(function(e,t){let{document:{u:n,h:r},tokens:o}=t;h.current?.blur();let a=n;if(ye.CU&&o.length>0){const e=new URLSearchParams;for(const t of o)e.append($e,t);a+=`?${e.toString()}`}r&&(a+=r),p.push(a)})).on("autocomplete:closed",(()=>{h.current?.blur()})),m.current.set(C,"done"),b(!1),g.current){const e=h.current;e.value&&S.current?.autocomplete.open(),e.focus()}}),[T,C,d,a,p]);(0,r.useEffect)((()=>{if(!ye.CU)return;const e=o?new URLSearchParams(f.search).getAll($e):[];setTimeout((()=>{const t=document.querySelector("article");if(!t)return;const n=new ye.CU(t);n.unmark(),0!==e.length&&n.mark(e),x(e.join(" ")),S.current?.autocomplete.setVal(e.join(" "))}))}),[o,f.search,f.pathname]);const[j,L]=(0,r.useState)(!1),P=(0,r.useCallback)((()=>{g.current=!0,A(),L(!0),t?.(!0)}),[t,A]),R=(0,r.useCallback)((()=>{L(!1),t?.(!1)}),[t]),N=(0,r.useCallback)((()=>{A()}),[A]),O=(0,r.useCallback)((e=>{x(e.target.value),e.target.value&&w(!0)}),[]),I=!!o&&/mac/i.test(navigator.userAgentData?.platform??navigator.platform);(0,r.useEffect)((()=>{if(!ye.WW)return;const e=e=>{!(I?e.metaKey:e.ctrlKey)||"k"!==e.key&&"K"!==e.key||(e.preventDefault(),h.current?.focus(),P())};return document.addEventListener("keydown",e),()=>{document.removeEventListener("keydown",e)}}),[I,P]);const D=(0,r.useCallback)((()=>{const e=new URLSearchParams(f.search);e.delete($e);const t=e.toString(),n=f.pathname+(""!=t?`?${t}`:"")+f.hash;n!=f.pathname+f.search+f.hash&&p.push(n),x(""),S.current?.autocomplete.setVal("")}),[f.pathname,f.search,f.hash,p]);return(0,c.jsxs)("div",{className:(0,be.A)("navbar__search",Ie.searchBarContainer,{[Ie.searchIndexLoading]:y&&v,[Ie.focused]:j}),hidden:T,dir:"ltr",children:[(0,c.jsx)("input",{placeholder:(0,l.T)({id:"theme.SearchBar.label",message:"Search",description:"The ARIA label and placeholder for search button"}),"aria-label":"Search",className:"navbar__search-input",onMouseEnter:N,onFocus:P,onBlur:R,onChange:O,ref:h,value:k}),(0,c.jsx)(Me.A,{className:Ie.searchBarLoadingRing}),ye.WW&&ye.pk&&(""!==k?(0,c.jsx)("button",{className:Ie.searchClearButton,onClick:D,children:"\u2715"}):o&&(0,c.jsxs)("div",{className:Ie.searchHintContainer,children:[(0,c.jsx)("kbd",{className:Ie.searchHint,children:I?"\u2318":"ctrl"}),(0,c.jsx)("kbd",{className:Ie.searchHint,children:"K"})]}))]})},qe={navbarSearchContainer:"navbarSearchContainer_Bca1"};function He(e){let{children:t,className:n}=e;return(0,c.jsx)("div",{className:(0,o.A)(n,qe.navbarSearchContainer),children:t})}var Qe=n(8295),Ve=n(1754);var We=n(5597);const Ge=e=>e.docs.find((t=>t.id===e.mainDocId));const Ke={default:ae,localeDropdown:function(e){let{mobile:t,dropdownItemsBefore:n,dropdownItemsAfter:r,queryString:o="",...a}=e;const{i18n:{currentLocale:i,locales:u,localeConfigs:d}}=(0,le.A)(),p=(0,he.o)(),{search:f,hash:h}=(0,s.zy)(),m=[...n,...u.map((e=>{const n=`${`pathname://${p.createUrl({locale:e,fullyQualified:!1})}`}${f}${h}${o}`;return{label:d[e].label,lang:d[e].htmlLang,to:n,target:"_self",autoAddBaseUrl:!1,className:e===i?t?"menu__link--active":"dropdown__link--active":""}})),...r],g=t?(0,l.T)({message:"Languages",id:"theme.navbar.mobileLanguageDropdown.label",description:"The label for the mobile language switcher dropdown"}):d[i].label;return(0,c.jsx)(fe,{...a,mobile:t,label:(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(me,{className:ge}),g]}),items:m})},search:function(e){let{mobile:t,className:n}=e;return t?null:(0,c.jsx)(He,{className:n,children:(0,c.jsx)(Ue,{})})},dropdown:fe,html:function(e){let{value:t,className:n,mobile:r=!1,isDropdownItem:a=!1}=e;const i=a?"li":"div";return(0,c.jsx)(i,{className:(0,o.A)({navbar__item:!r&&!a,"menu__list-item":r},n),dangerouslySetInnerHTML:{__html:t}})},doc:function(e){let{docId:t,label:n,docsPluginId:r,...o}=e;const{activeDoc:a}=(0,Qe.zK)(r),i=(0,Ve.QB)(t,r),s=a?.path===i?.path;return null===i||i.unlisted&&!s?null:(0,c.jsx)(ae,{exact:!0,...o,isActive:()=>s||!!a?.sidebar&&a.sidebar===i.sidebar,label:n??i.id,to:i.path})},docSidebar:function(e){let{sidebarId:t,label:n,docsPluginId:r,...o}=e;const{activeDoc:a}=(0,Qe.zK)(r),i=(0,Ve.fW)(t,r).link;if(!i)throw new Error(`DocSidebarNavbarItem: Sidebar with ID "${t}" doesn't have anything to be linked to.`);return(0,c.jsx)(ae,{exact:!0,...o,isActive:()=>a?.sidebar===t,label:n??i.label,to:i.path})},docsVersion:function(e){let{label:t,to:n,docsPluginId:r,...o}=e;const a=(0,Ve.Vd)(r)[0],i=t??a.label,s=n??(e=>e.docs.find((t=>t.id===e.mainDocId)))(a).path;return(0,c.jsx)(ae,{...o,label:i,to:s})},docsVersionDropdown:function(e){let{mobile:t,docsPluginId:n,dropdownActiveClassDisabled:r,dropdownItemsBefore:o,dropdownItemsAfter:a,...i}=e;const{search:u,hash:d}=(0,s.zy)(),p=(0,Qe.zK)(n),f=(0,Qe.jh)(n),{savePreferredVersionName:h}=(0,We.g1)(n),m=[...o,...f.map((e=>{const t=p.alternateDocVersions[e.name]??Ge(e);return{label:e.label,to:`${t.path}${u}${d}`,isActive:()=>e===p.activeVersion,onClick:()=>h(e.name)}})),...a],g=(0,Ve.Vd)(n)[0],y=t&&m.length>1?(0,l.T)({id:"theme.navbar.mobileVersionsDropdown.label",message:"Versions",description:"The label for the navbar versions dropdown on mobile view"}):g.label,b=t&&m.length>1?void 0:Ge(g).path;return m.length<=1?(0,c.jsx)(ae,{...i,mobile:t,label:y,to:b,isActive:r?()=>!1:void 0}):(0,c.jsx)(fe,{...i,mobile:t,label:y,to:b,items:m,isActive:r?()=>!1:void 0})}};function Ye(e){let{type:t,...n}=e;const r=function(e,t){return e&&"default"!==e?e:"items"in t?"dropdown":"default"}(t,n),o=Ke[r];if(!o)throw new Error(`No NavbarItem component found for type "${t}".`);return(0,c.jsx)(o,{...n})}function Ze(){const e=(0,j.M)(),t=(0,w.p)().navbar.items;return(0,c.jsx)("ul",{className:"menu__list",children:t.map(((t,n)=>(0,r.createElement)(Ye,{mobile:!0,...t,onClick:()=>e.toggle(),key:n})))})}function Xe(e){return(0,c.jsx)("button",{...e,type:"button",className:"clean-btn navbar-sidebar__back",children:(0,c.jsx)(l.A,{id:"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel",description:"The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)",children:"\u2190 Back to main menu"})})}function Je(){const e=0===(0,w.p)().navbar.items.length,t=D();return(0,c.jsxs)(c.Fragment,{children:[!e&&(0,c.jsx)(Xe,{onClick:()=>t.hide()}),t.content]})}function et(){const e=(0,j.M)();var t;return void 0===(t=e.shown)&&(t=!0),(0,r.useEffect)((()=>(document.body.style.overflow=t?"hidden":"visible",()=>{document.body.style.overflow="visible"})),[t]),e.shouldRender?(0,c.jsx)(F,{header:(0,c.jsx)(Y,{}),primaryMenu:(0,c.jsx)(Ze,{}),secondaryMenu:(0,c.jsx)(Je,{})}):null}const tt={navbarHideable:"navbarHideable_m1mJ",navbarHidden:"navbarHidden_jGov"};function nt(e){return(0,c.jsx)("div",{role:"presentation",...e,className:(0,o.A)("navbar-sidebar__backdrop",e.className)})}function rt(e){let{children:t}=e;const{navbar:{hideOnScroll:n,style:a}}=(0,w.p)(),i=(0,j.M)(),{navbarRef:s,isNavbarVisible:d}=function(e){const[t,n]=(0,r.useState)(e),o=(0,r.useRef)(!1),a=(0,r.useRef)(0),i=(0,r.useCallback)((e=>{null!==e&&(a.current=e.getBoundingClientRect().height)}),[]);return(0,L.Mq)(((t,r)=>{let{scrollY:i}=t;if(!e)return;if(i=s?n(!1):i+u{if(!e)return;const r=t.location.hash;if(r?document.getElementById(r.substring(1)):void 0)return o.current=!0,void n(!1);n(!0)})),{navbarRef:i,isNavbarVisible:t}}(n);return(0,c.jsxs)("nav",{ref:s,"aria-label":(0,l.T)({id:"theme.NavBar.navAriaLabel",message:"Main",description:"The ARIA label for the main navigation"}),className:(0,o.A)("navbar","navbar--fixed-top",n&&[tt.navbarHideable,!d&&tt.navbarHidden],{"navbar--dark":"dark"===a,"navbar--primary":"primary"===a,"navbar-sidebar--show":i.shown}),children:[t,(0,c.jsx)(nt,{onClick:i.toggle}),(0,c.jsx)(et,{})]})}var ot=n(440);const at={errorBoundaryError:"errorBoundaryError_a6uf",errorBoundaryFallback:"errorBoundaryFallback_VBag"};function it(e){return(0,c.jsx)("button",{type:"button",...e,children:(0,c.jsx)(l.A,{id:"theme.ErrorPageContent.tryAgain",description:"The label of the button to try again rendering when the React error boundary captures an error",children:"Try again"})})}function st(e){let{error:t}=e;const n=(0,ot.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return(0,c.jsx)("p",{className:at.errorBoundaryError,children:n})}class lt extends r.Component{componentDidCatch(e,t){throw this.props.onError(e,t)}render(){return this.props.children}}const ut="right";function ct(e){let{width:t=30,height:n=30,className:r,...o}=e;return(0,c.jsx)("svg",{className:r,width:t,height:n,viewBox:"0 0 30 30","aria-hidden":"true",...o,children:(0,c.jsx)("path",{stroke:"currentColor",strokeLinecap:"round",strokeMiterlimit:"10",strokeWidth:"2",d:"M4 7h22M4 15h22M4 23h22"})})}function dt(){const{toggle:e,shown:t}=(0,j.M)();return(0,c.jsx)("button",{onClick:e,"aria-label":(0,l.T)({id:"theme.docs.sidebar.toggleSidebarButtonAriaLabel",message:"Toggle navigation bar",description:"The ARIA label for hamburger menu button of mobile navigation"}),"aria-expanded":t,className:"navbar__toggle clean-btn",type:"button",children:(0,c.jsx)(ct,{})})}const pt={colorModeToggle:"colorModeToggle_DEke"};function ft(e){let{items:t}=e;return(0,c.jsx)(c.Fragment,{children:t.map(((e,t)=>(0,c.jsx)(lt,{onError:t=>new Error(`A theme navbar item failed to render.\nPlease double-check the following navbar item (themeConfig.navbar.items) of your Docusaurus config:\n${JSON.stringify(e,null,2)}`,{cause:t}),children:(0,c.jsx)(Ye,{...e})},t)))})}function ht(e){let{left:t,right:n}=e;return(0,c.jsxs)("div",{className:"navbar__inner",children:[(0,c.jsx)("div",{className:"navbar__items",children:t}),(0,c.jsx)("div",{className:"navbar__items navbar__items--right",children:n})]})}function mt(){const e=(0,j.M)(),t=(0,w.p)().navbar.items,[n,r]=function(e){function t(e){return"left"===(e.position??ut)}return[e.filter(t),e.filter((e=>!t(e)))]}(t),o=t.find((e=>"search"===e.type));return(0,c.jsx)(ht,{left:(0,c.jsxs)(c.Fragment,{children:[!e.disabled&&(0,c.jsx)(dt,{}),(0,c.jsx)(G,{}),(0,c.jsx)(ft,{items:n})]}),right:(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(ft,{items:r}),(0,c.jsx)(V,{className:pt.colorModeToggle}),!o&&(0,c.jsx)(He,{children:(0,c.jsx)(Ue,{})})]})})}function gt(){return(0,c.jsx)(rt,{children:(0,c.jsx)(mt,{})})}function yt(e){let{item:t}=e;const{to:n,href:r,label:o,prependBaseUrlToHref:a,...i}=t,s=(0,X.Ay)(n),l=(0,X.Ay)(r,{forcePrependBaseUrl:!0});return(0,c.jsxs)(Z.A,{className:"footer__link-item",...r?{href:a?l:r}:{to:s},...i,children:[o,r&&!(0,J.A)(r)&&(0,c.jsx)(te.A,{})]})}function bt(e){let{item:t}=e;return t.html?(0,c.jsx)("li",{className:"footer__item",dangerouslySetInnerHTML:{__html:t.html}}):(0,c.jsx)("li",{className:"footer__item",children:(0,c.jsx)(yt,{item:t})},t.href??t.to)}function vt(e){let{column:t}=e;return(0,c.jsxs)("div",{className:"col footer__col",children:[(0,c.jsx)("div",{className:"footer__title",children:t.title}),(0,c.jsx)("ul",{className:"footer__items clean-list",children:t.items.map(((e,t)=>(0,c.jsx)(bt,{item:e},t)))})]})}function wt(e){let{columns:t}=e;return(0,c.jsx)("div",{className:"row footer__links",children:t.map(((e,t)=>(0,c.jsx)(vt,{column:e},t)))})}function kt(){return(0,c.jsx)("span",{className:"footer__link-separator",children:"\xb7"})}function xt(e){let{item:t}=e;return t.html?(0,c.jsx)("span",{className:"footer__link-item",dangerouslySetInnerHTML:{__html:t.html}}):(0,c.jsx)(yt,{item:t})}function St(e){let{links:t}=e;return(0,c.jsx)("div",{className:"footer__links text--center",children:(0,c.jsx)("div",{className:"footer__links",children:t.map(((e,n)=>(0,c.jsxs)(r.Fragment,{children:[(0,c.jsx)(xt,{item:e}),t.length!==n+1&&(0,c.jsx)(kt,{})]},n)))})})}function Et(e){let{links:t}=e;return function(e){return"title"in e[0]}(t)?(0,c.jsx)(wt,{columns:t}):(0,c.jsx)(St,{links:t})}var Ct=n(1122);const _t={footerLogoLink:"footerLogoLink_BH7S"};function Tt(e){let{logo:t}=e;const{withBaseUrl:n}=(0,X.hH)(),r={light:n(t.src),dark:n(t.srcDark??t.src)};return(0,c.jsx)(Ct.A,{className:(0,o.A)("footer__logo",t.className),alt:t.alt,sources:r,width:t.width,height:t.height,style:t.style})}function At(e){let{logo:t}=e;return t.href?(0,c.jsx)(Z.A,{href:t.href,className:_t.footerLogoLink,target:t.target,children:(0,c.jsx)(Tt,{logo:t})}):(0,c.jsx)(Tt,{logo:t})}function jt(e){let{copyright:t}=e;return(0,c.jsx)("div",{className:"footer__copyright",dangerouslySetInnerHTML:{__html:t}})}function Lt(e){let{style:t,links:n,logo:r,copyright:a}=e;return(0,c.jsx)("footer",{className:(0,o.A)("footer",{"footer--dark":"dark"===t}),children:(0,c.jsxs)("div",{className:"container container-fluid",children:[n,(r||a)&&(0,c.jsxs)("div",{className:"footer__bottom text--center",children:[r&&(0,c.jsx)("div",{className:"margin-bottom--sm",children:r}),a]})]})})}function Pt(){const{footer:e}=(0,w.p)();if(!e)return null;const{copyright:t,links:n,logo:r,style:o}=e;return(0,c.jsx)(Lt,{style:o,links:n&&n.length>0&&(0,c.jsx)(Et,{links:n}),logo:r&&(0,c.jsx)(At,{logo:r}),copyright:t&&(0,c.jsx)(jt,{copyright:t})})}const Rt=r.memo(Pt),Nt=(0,P.fM)([M.a,k.o,L.Tv,We.VQ,i.Jx,function(e){let{children:t}=e;return(0,c.jsx)(R.y_,{children:(0,c.jsx)(j.e,{children:(0,c.jsx)(O,{children:t})})})}]);function Ot(e){let{children:t}=e;return(0,c.jsx)(Nt,{children:t})}var It=n(1107);function Dt(e){let{error:t,tryAgain:n}=e;return(0,c.jsx)("main",{className:"container margin-vert--xl",children:(0,c.jsx)("div",{className:"row",children:(0,c.jsxs)("div",{className:"col col--6 col--offset-3",children:[(0,c.jsx)(It.A,{as:"h1",className:"hero__title",children:(0,c.jsx)(l.A,{id:"theme.ErrorPageContent.title",description:"The title of the fallback page when the page crashed",children:"This page crashed."})}),(0,c.jsx)("div",{className:"margin-vert--lg",children:(0,c.jsx)(it,{onClick:n,className:"button button--primary shadow--lw"})}),(0,c.jsx)("hr",{}),(0,c.jsx)("div",{className:"margin-vert--md",children:(0,c.jsx)(st,{error:t})})]})})})}const Ft={mainWrapper:"mainWrapper_z2l0"};function Mt(e){const{children:t,noFooter:n,wrapperClassName:r,title:s,description:l}=e;return(0,y.J)(),(0,c.jsxs)(Ot,{children:[(0,c.jsx)(i.be,{title:s,description:l}),(0,c.jsx)(v,{}),(0,c.jsx)(A,{}),(0,c.jsx)(gt,{}),(0,c.jsx)("div",{id:d,className:(0,o.A)(g.G.wrapper.main,Ft.mainWrapper,r),children:(0,c.jsx)(a.A,{fallback:e=>(0,c.jsx)(Dt,{...e}),children:t})}),!n&&(0,c.jsx)(Rt,{})]})}},3465:(e,t,n)=>{"use strict";n.d(t,{A:()=>c});n(6540);var r=n(8774),o=n(6025),a=n(4586),i=n(6342),s=n(1122),l=n(4848);function u(e){let{logo:t,alt:n,imageClassName:r}=e;const a={light:(0,o.Ay)(t.src),dark:(0,o.Ay)(t.srcDark||t.src)},i=(0,l.jsx)(s.A,{className:t.className,sources:a,height:t.height,width:t.width,alt:n,style:t.style});return r?(0,l.jsx)("div",{className:r,children:i}):i}function c(e){const{siteConfig:{title:t}}=(0,a.A)(),{navbar:{title:n,logo:s}}=(0,i.p)(),{imageClassName:c,titleClassName:d,...p}=e,f=(0,o.Ay)(s?.href||"/"),h=n?"":t,m=s?.alt??h;return(0,l.jsxs)(r.A,{to:f,...p,...s?.target&&{target:s.target},children:[s&&(0,l.jsx)(u,{logo:s,alt:m,imageClassName:c}),null!=n&&(0,l.jsx)("b",{className:d,children:n})]})}},1463:(e,t,n)=>{"use strict";n.d(t,{A:()=>a});n(6540);var r=n(5260),o=n(4848);function a(e){let{locale:t,version:n,tag:a}=e;const i=t;return(0,o.jsxs)(r.A,{children:[t&&(0,o.jsx)("meta",{name:"docusaurus_locale",content:t}),n&&(0,o.jsx)("meta",{name:"docusaurus_version",content:n}),a&&(0,o.jsx)("meta",{name:"docusaurus_tag",content:a}),i&&(0,o.jsx)("meta",{name:"docsearch:language",content:i}),n&&(0,o.jsx)("meta",{name:"docsearch:version",content:n}),a&&(0,o.jsx)("meta",{name:"docsearch:docusaurus_tag",content:a})]})}},1122:(e,t,n)=>{"use strict";n.d(t,{A:()=>c});var r=n(6540),o=n(4164),a=n(2303),i=n(5293);const s={themedComponent:"themedComponent_mlkZ","themedComponent--light":"themedComponent--light_NVdE","themedComponent--dark":"themedComponent--dark_xIcU"};var l=n(4848);function u(e){let{className:t,children:n}=e;const u=(0,a.A)(),{colorMode:c}=(0,i.G)();return(0,l.jsx)(l.Fragment,{children:(u?"dark"===c?["dark"]:["light"]:["light","dark"]).map((e=>{const a=n({theme:e,className:(0,o.A)(t,s.themedComponent,s[`themedComponent--${e}`])});return(0,l.jsx)(r.Fragment,{children:a},e)}))})}function c(e){const{sources:t,className:n,alt:r,...o}=e;return(0,l.jsx)(u,{className:n,children:e=>{let{theme:n,className:a}=e;return(0,l.jsx)("img",{src:t[n],alt:r,className:a,...o})}})}},1422:(e,t,n)=>{"use strict";n.d(t,{N:()=>y,u:()=>u});var r=n(6540),o=n(8193),a=n(205),i=n(3109),s=n(4848);const l="ease-in-out";function u(e){let{initialState:t}=e;const[n,o]=(0,r.useState)(t??!1),a=(0,r.useCallback)((()=>{o((e=>!e))}),[]);return{collapsed:n,setCollapsed:o,toggleCollapsed:a}}const c={display:"none",overflow:"hidden",height:"0px"},d={display:"block",overflow:"visible",height:"auto"};function p(e,t){const n=t?c:d;e.style.display=n.display,e.style.overflow=n.overflow,e.style.height=n.height}function f(e){let{collapsibleRef:t,collapsed:n,animation:o}=e;const a=(0,r.useRef)(!1);(0,r.useEffect)((()=>{const e=t.current;function r(){const t=e.scrollHeight,n=o?.duration??function(e){if((0,i.O)())return 1;const t=e/36;return Math.round(10*(4+15*t**.25+t/5))}(t);return{transition:`height ${n}ms ${o?.easing??l}`,height:`${t}px`}}function s(){const t=r();e.style.transition=t.transition,e.style.height=t.height}if(!a.current)return p(e,n),void(a.current=!0);return e.style.willChange="height",function(){const t=requestAnimationFrame((()=>{n?(s(),requestAnimationFrame((()=>{e.style.height=c.height,e.style.overflow=c.overflow}))):(e.style.display="block",requestAnimationFrame((()=>{s()})))}));return()=>cancelAnimationFrame(t)}()}),[t,n,o])}function h(e){if(!o.A.canUseDOM)return e?c:d}function m(e){let{as:t="div",collapsed:n,children:o,animation:a,onCollapseTransitionEnd:i,className:l,disableSSRStyle:u}=e;const c=(0,r.useRef)(null);return f({collapsibleRef:c,collapsed:n,animation:a}),(0,s.jsx)(t,{ref:c,style:u?void 0:h(n),onTransitionEnd:e=>{"height"===e.propertyName&&(p(c.current,n),i?.(n))},className:l,children:o})}function g(e){let{collapsed:t,...n}=e;const[o,i]=(0,r.useState)(!t),[l,u]=(0,r.useState)(t);return(0,a.A)((()=>{t||i(!0)}),[t]),(0,a.A)((()=>{o&&u(t)}),[o,t]),o?(0,s.jsx)(m,{...n,collapsed:l}):null}function y(e){let{lazy:t,...n}=e;const r=t?g:m;return(0,s.jsx)(r,{...n})}},5041:(e,t,n)=>{"use strict";n.d(t,{M:()=>m,o:()=>h});var r=n(6540),o=n(2303),a=n(9466),i=n(9532),s=n(6342),l=n(4848);const u=(0,a.Wf)("docusaurus.announcement.dismiss"),c=(0,a.Wf)("docusaurus.announcement.id"),d=()=>"true"===u.get(),p=e=>u.set(String(e)),f=r.createContext(null);function h(e){let{children:t}=e;const n=function(){const{announcementBar:e}=(0,s.p)(),t=(0,o.A)(),[n,a]=(0,r.useState)((()=>!!t&&d()));(0,r.useEffect)((()=>{a(d())}),[]);const i=(0,r.useCallback)((()=>{p(!0),a(!0)}),[]);return(0,r.useEffect)((()=>{if(!e)return;const{id:t}=e;let n=c.get();"annoucement-bar"===n&&(n="announcement-bar");const r=t!==n;c.set(t),r&&p(!1),!r&&d()||a(!1)}),[e]),(0,r.useMemo)((()=>({isActive:!!e&&!n,close:i})),[e,n,i])}();return(0,l.jsx)(f.Provider,{value:n,children:t})}function m(){const e=(0,r.useContext)(f);if(!e)throw new i.dV("AnnouncementBarProvider");return e}},5293:(e,t,n)=>{"use strict";n.d(t,{G:()=>y,a:()=>g});var r=n(6540),o=n(8193),a=n(9532),i=n(9466),s=n(6342),l=n(4848);const u=r.createContext(void 0),c="theme",d=(0,i.Wf)(c),p={light:"light",dark:"dark"},f=e=>e===p.dark?p.dark:p.light,h=e=>o.A.canUseDOM?f(document.documentElement.getAttribute("data-theme")):f(e),m=e=>{d.set(f(e))};function g(e){let{children:t}=e;const n=function(){const{colorMode:{defaultMode:e,disableSwitch:t,respectPrefersColorScheme:n}}=(0,s.p)(),[o,a]=(0,r.useState)(h(e));(0,r.useEffect)((()=>{t&&d.del()}),[t]);const i=(0,r.useCallback)((function(t,r){void 0===r&&(r={});const{persist:o=!0}=r;t?(a(t),o&&m(t)):(a(n?window.matchMedia("(prefers-color-scheme: dark)").matches?p.dark:p.light:e),d.del())}),[n,e]);(0,r.useEffect)((()=>{document.documentElement.setAttribute("data-theme",f(o))}),[o]),(0,r.useEffect)((()=>{if(t)return;const e=e=>{if(e.key!==c)return;const t=d.get();null!==t&&i(f(t))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)}),[t,i]);const l=(0,r.useRef)(!1);return(0,r.useEffect)((()=>{if(t&&!n)return;const e=window.matchMedia("(prefers-color-scheme: dark)"),r=()=>{window.matchMedia("print").matches||l.current?l.current=window.matchMedia("print").matches:i(null)};return e.addListener(r),()=>e.removeListener(r)}),[i,t,n]),(0,r.useMemo)((()=>({colorMode:o,setColorMode:i,get isDarkTheme(){return o===p.dark},setLightTheme(){i(p.light)},setDarkTheme(){i(p.dark)}})),[o,i])}();return(0,l.jsx)(u.Provider,{value:n,children:t})}function y(){const e=(0,r.useContext)(u);if(null==e)throw new a.dV("ColorModeProvider","Please see https://docusaurus.io/docs/api/themes/configuration#use-color-mode.");return e}},5597:(e,t,n)=>{"use strict";n.d(t,{VQ:()=>y,g1:()=>v});var r=n(6540),o=n(8295),a=n(7065),i=n(6342),s=n(1754),l=n(9532),u=n(9466),c=n(4848);const d=e=>`docs-preferred-version-${e}`,p={save:(e,t,n)=>{(0,u.Wf)(d(e),{persistence:t}).set(n)},read:(e,t)=>(0,u.Wf)(d(e),{persistence:t}).get(),clear:(e,t)=>{(0,u.Wf)(d(e),{persistence:t}).del()}},f=e=>Object.fromEntries(e.map((e=>[e,{preferredVersionName:null}])));const h=r.createContext(null);function m(){const e=(0,o.Gy)(),t=(0,i.p)().docs.versionPersistence,n=(0,r.useMemo)((()=>Object.keys(e)),[e]),[a,s]=(0,r.useState)((()=>f(n)));(0,r.useEffect)((()=>{s(function(e){let{pluginIds:t,versionPersistence:n,allDocsData:r}=e;function o(e){const t=p.read(e,n);return r[e].versions.some((e=>e.name===t))?{preferredVersionName:t}:(p.clear(e,n),{preferredVersionName:null})}return Object.fromEntries(t.map((e=>[e,o(e)])))}({allDocsData:e,versionPersistence:t,pluginIds:n}))}),[e,t,n]);return[a,(0,r.useMemo)((()=>({savePreferredVersion:function(e,n){p.save(e,t,n),s((t=>({...t,[e]:{preferredVersionName:n}})))}})),[t])]}function g(e){let{children:t}=e;const n=m();return(0,c.jsx)(h.Provider,{value:n,children:t})}function y(e){let{children:t}=e;return s.C5?(0,c.jsx)(g,{children:t}):(0,c.jsx)(c.Fragment,{children:t})}function b(){const e=(0,r.useContext)(h);if(!e)throw new l.dV("DocsPreferredVersionContextProvider");return e}function v(e){void 0===e&&(e=a.W);const t=(0,o.ht)(e),[n,i]=b(),{preferredVersionName:s}=n[e];return{preferredVersion:t.versions.find((e=>e.name===s))??null,savePreferredVersionName:(0,r.useCallback)((t=>{i.savePreferredVersion(e,t)}),[i,e])}}},4207:(e,t,n)=>{"use strict";n.d(t,{V:()=>l,t:()=>u});var r=n(6540),o=n(9532),a=n(4848);const i=Symbol("EmptyContext"),s=r.createContext(i);function l(e){let{children:t,name:n,items:o}=e;const i=(0,r.useMemo)((()=>n&&o?{name:n,items:o}:null),[n,o]);return(0,a.jsx)(s.Provider,{value:i,children:t})}function u(){const e=(0,r.useContext)(s);if(e===i)throw new o.dV("DocsSidebarProvider");return e}},2252:(e,t,n)=>{"use strict";n.d(t,{n:()=>s,r:()=>l});var r=n(6540),o=n(9532),a=n(4848);const i=r.createContext(null);function s(e){let{children:t,version:n}=e;return(0,a.jsx)(i.Provider,{value:n,children:t})}function l(){const e=(0,r.useContext)(i);if(null===e)throw new o.dV("DocsVersionProvider");return e}},9876:(e,t,n)=>{"use strict";n.d(t,{e:()=>f,M:()=>h});var r=n(6540),o=n(5600),a=n(4581),i=n(6347),s=n(9532);function l(e){!function(e){const t=(0,i.W6)(),n=(0,s._q)(e);(0,r.useEffect)((()=>t.block(((e,t)=>n(e,t)))),[t,n])}(((t,n)=>{if("POP"===n)return e(t,n)}))}var u=n(6342),c=n(4848);const d=r.createContext(void 0);function p(){const e=function(){const e=(0,o.YL)(),{items:t}=(0,u.p)().navbar;return 0===t.length&&!e.component}(),t=(0,a.l)(),n=!e&&"mobile"===t,[i,s]=(0,r.useState)(!1);l((()=>{if(i)return s(!1),!1}));const c=(0,r.useCallback)((()=>{s((e=>!e))}),[]);return(0,r.useEffect)((()=>{"desktop"===t&&s(!1)}),[t]),(0,r.useMemo)((()=>({disabled:e,shouldRender:n,toggle:c,shown:i})),[e,n,c,i])}function f(e){let{children:t}=e;const n=p();return(0,c.jsx)(d.Provider,{value:n,children:t})}function h(){const e=r.useContext(d);if(void 0===e)throw new s.dV("NavbarMobileSidebarProvider");return e}},5600:(e,t,n)=>{"use strict";n.d(t,{GX:()=>u,YL:()=>l,y_:()=>s});var r=n(6540),o=n(9532),a=n(4848);const i=r.createContext(null);function s(e){let{children:t}=e;const n=(0,r.useState)({component:null,props:null});return(0,a.jsx)(i.Provider,{value:n,children:t})}function l(){const e=(0,r.useContext)(i);if(!e)throw new o.dV("NavbarSecondaryMenuContentProvider");return e[0]}function u(e){let{component:t,props:n}=e;const a=(0,r.useContext)(i);if(!a)throw new o.dV("NavbarSecondaryMenuContentProvider");const[,s]=a,l=(0,o.Be)(n);return(0,r.useEffect)((()=>{s({component:t,props:l})}),[s,t,l]),(0,r.useEffect)((()=>()=>s({component:null,props:null})),[s]),null}},4090:(e,t,n)=>{"use strict";n.d(t,{w:()=>o,J:()=>a});var r=n(6540);const o="navigation-with-keyboard";function a(){(0,r.useEffect)((()=>{function e(e){"keydown"===e.type&&"Tab"===e.key&&document.body.classList.add(o),"mousedown"===e.type&&document.body.classList.remove(o)}return document.addEventListener("keydown",e),document.addEventListener("mousedown",e),()=>{document.body.classList.remove(o),document.removeEventListener("keydown",e),document.removeEventListener("mousedown",e)}}),[])}},4581:(e,t,n)=>{"use strict";n.d(t,{l:()=>s});var r=n(6540),o=n(8193);const a={desktop:"desktop",mobile:"mobile",ssr:"ssr"},i=996;function s(e){let{desktopBreakpoint:t=i}=void 0===e?{}:e;const[n,s]=(0,r.useState)((()=>"ssr"));return(0,r.useEffect)((()=>{function e(){s(function(e){if(!o.A.canUseDOM)throw new Error("getWindowSize() should only be called after React hydration");return window.innerWidth>e?a.desktop:a.mobile}(t))}return e(),window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}}),[t]),n}},7559:(e,t,n)=>{"use strict";n.d(t,{G:()=>r});const r={page:{blogListPage:"blog-list-page",blogPostPage:"blog-post-page",blogTagsListPage:"blog-tags-list-page",blogTagPostListPage:"blog-tags-post-list-page",docsDocPage:"docs-doc-page",docsTagsListPage:"docs-tags-list-page",docsTagDocListPage:"docs-tags-doc-list-page",mdxPage:"mdx-page"},wrapper:{main:"main-wrapper",blogPages:"blog-wrapper",docsPages:"docs-wrapper",mdxPages:"mdx-wrapper"},common:{editThisPage:"theme-edit-this-page",lastUpdated:"theme-last-updated",backToTopButton:"theme-back-to-top-button",codeBlock:"theme-code-block",admonition:"theme-admonition",unlistedBanner:"theme-unlisted-banner",admonitionType:e=>`theme-admonition-${e}`},layout:{},docs:{docVersionBanner:"theme-doc-version-banner",docVersionBadge:"theme-doc-version-badge",docBreadcrumbs:"theme-doc-breadcrumbs",docMarkdown:"theme-doc-markdown",docTocMobile:"theme-doc-toc-mobile",docTocDesktop:"theme-doc-toc-desktop",docFooter:"theme-doc-footer",docFooterTagsRow:"theme-doc-footer-tags-row",docFooterEditMetaRow:"theme-doc-footer-edit-meta-row",docSidebarContainer:"theme-doc-sidebar-container",docSidebarMenu:"theme-doc-sidebar-menu",docSidebarItemCategory:"theme-doc-sidebar-item-category",docSidebarItemLink:"theme-doc-sidebar-item-link",docSidebarItemCategoryLevel:e=>`theme-doc-sidebar-item-category-level-${e}`,docSidebarItemLinkLevel:e=>`theme-doc-sidebar-item-link-level-${e}`},blog:{blogFooterTagsRow:"theme-blog-footer-tags-row",blogFooterEditMetaRow:"theme-blog-footer-edit-meta-row"},pages:{pageFooterEditMetaRow:"theme-pages-footer-edit-meta-row"}}},3109:(e,t,n)=>{"use strict";function r(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches}n.d(t,{O:()=>r})},1754:(e,t,n)=>{"use strict";n.d(t,{d1:()=>T,Nr:()=>h,w8:()=>b,C5:()=>p,$S:()=>m,cC:()=>f,B5:()=>_,Vd:()=>S,QB:()=>C,fW:()=>E,OF:()=>x,Y:()=>w});var r=n(6540),o=n(6347),a=n(2831),i=n(8295),s=n(5597),l=n(2252),u=n(4207);function c(e){return Array.from(new Set(e))}var d=n(9169);const p=!!i.Gy;function f(e){const t=(0,l.r)();if(!e)return;const n=t.docs[e];if(!n)throw new Error(`no version doc found by id=${e}`);return n}function h(e){return"link"!==e.type||e.unlisted?"category"===e.type?function(e){if(e.href&&!e.linkUnlisted)return e.href;for(const t of e.items){const e=h(t);if(e)return e}}(e):void 0:e.href}function m(){const{pathname:e}=(0,o.zy)(),t=(0,u.t)();if(!t)throw new Error("Unexpected: cant find current sidebar in context");const n=k({sidebarItems:t.items,pathname:e,onlyCategories:!0}).slice(-1)[0];if(!n)throw new Error(`${e} is not associated with a category. useCurrentSidebarCategory() should only be used on category index pages.`);return n}const g=(e,t)=>void 0!==e&&(0,d.ys)(e,t),y=(e,t)=>e.some((e=>b(e,t)));function b(e,t){return"link"===e.type?g(e.href,t):"category"===e.type&&(g(e.href,t)||y(e.items,t))}function v(e,t){switch(e.type){case"category":return b(e,t)||e.items.some((e=>v(e,t)));case"link":return!e.unlisted||b(e,t);default:return!0}}function w(e,t){return(0,r.useMemo)((()=>e.filter((e=>v(e,t)))),[e,t])}function k(e){let{sidebarItems:t,pathname:n,onlyCategories:r=!1}=e;const o=[];return function e(t){for(const a of t)if("category"===a.type&&((0,d.ys)(a.href,n)||e(a.items))||"link"===a.type&&(0,d.ys)(a.href,n)){return r&&"category"!==a.type||o.unshift(a),!0}return!1}(t),o}function x(){const e=(0,u.t)(),{pathname:t}=(0,o.zy)(),n=(0,i.vT)()?.pluginData.breadcrumbs;return!1!==n&&e?k({sidebarItems:e.items,pathname:t}):null}function S(e){const{activeVersion:t}=(0,i.zK)(e),{preferredVersion:n}=(0,s.g1)(e),o=(0,i.r7)(e);return(0,r.useMemo)((()=>c([t,n,o].filter(Boolean))),[t,n,o])}function E(e,t){const n=S(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.sidebars?Object.entries(e.sidebars):[])),r=t.find((t=>t[0]===e));if(!r)throw new Error(`Can't find any sidebar with id "${e}" in version${n.length>1?"s":""} ${n.map((e=>e.name)).join(", ")}".\nAvailable sidebar ids are:\n- ${t.map((e=>e[0])).join("\n- ")}`);return r[1]}),[e,n])}function C(e,t){const n=S(t);return(0,r.useMemo)((()=>{const t=n.flatMap((e=>e.docs)),r=t.find((t=>t.id===e));if(!r){if(n.flatMap((e=>e.draftIds)).includes(e))return null;throw new Error(`Couldn't find any doc with id "${e}" in version${n.length>1?"s":""} "${n.map((e=>e.name)).join(", ")}".\nAvailable doc ids are:\n- ${c(t.map((e=>e.id))).join("\n- ")}`)}return r}),[e,n])}function _(e){let{route:t}=e;const n=(0,o.zy)(),r=(0,l.r)(),i=t.routes,s=i.find((e=>(0,o.B6)(n.pathname,e)));if(!s)return null;const u=s.sidebar,c=u?r.docsSidebars[u]:void 0;return{docElement:(0,a.v)(i),sidebarName:u,sidebarItems:c}}function T(e){return e.filter((e=>!("category"===e.type||"link"===e.type)||!!h(e)))}},1213:(e,t,n)=>{"use strict";n.d(t,{e3:()=>p,be:()=>c,Jx:()=>f});var r=n(6540),o=n(4164),a=n(5260),i=n(6803),s=n(6025),l=n(4586);var u=n(4848);function c(e){let{title:t,description:n,keywords:r,image:o,children:i}=e;const c=function(e){const{siteConfig:t}=(0,l.A)(),{title:n,titleDelimiter:r}=t;return e?.trim().length?`${e.trim()} ${r} ${n}`:n}(t),{withBaseUrl:d}=(0,s.hH)(),p=o?d(o,{absolute:!0}):void 0;return(0,u.jsxs)(a.A,{children:[t&&(0,u.jsx)("title",{children:c}),t&&(0,u.jsx)("meta",{property:"og:title",content:c}),n&&(0,u.jsx)("meta",{name:"description",content:n}),n&&(0,u.jsx)("meta",{property:"og:description",content:n}),r&&(0,u.jsx)("meta",{name:"keywords",content:Array.isArray(r)?r.join(","):r}),p&&(0,u.jsx)("meta",{property:"og:image",content:p}),p&&(0,u.jsx)("meta",{name:"twitter:image",content:p}),i]})}const d=r.createContext(void 0);function p(e){let{className:t,children:n}=e;const i=r.useContext(d),s=(0,o.A)(i,t);return(0,u.jsxs)(d.Provider,{value:s,children:[(0,u.jsx)(a.A,{children:(0,u.jsx)("html",{className:s})}),n]})}function f(e){let{children:t}=e;const n=(0,i.A)(),r=`plugin-${n.plugin.name.replace(/docusaurus-(?:plugin|theme)-(?:content-)?/gi,"")}`;const a=`plugin-id-${n.plugin.id}`;return(0,u.jsx)(p,{className:(0,o.A)(r,a),children:t})}},9532:(e,t,n)=>{"use strict";n.d(t,{Be:()=>u,ZC:()=>s,_q:()=>i,dV:()=>l,fM:()=>c});var r=n(6540),o=n(205),a=n(4848);function i(e){const t=(0,r.useRef)(e);return(0,o.A)((()=>{t.current=e}),[e]),(0,r.useCallback)((function(){return t.current(...arguments)}),[])}function s(e){const t=(0,r.useRef)();return(0,o.A)((()=>{t.current=e})),t.current}class l extends Error{constructor(e,t){super(),this.name="ReactContextError",this.message=`Hook ${this.stack?.split("\n")[1]?.match(/at (?:\w+\.)?(?\w+)/)?.groups.name??""} is called outside the <${e}>. ${t??""}`}}function u(e){const t=Object.entries(e);return t.sort(((e,t)=>e[0].localeCompare(t[0]))),(0,r.useMemo)((()=>e),t.flat())}function c(e){return t=>{let{children:n}=t;return(0,a.jsx)(a.Fragment,{children:e.reduceRight(((e,t)=>(0,a.jsx)(t,{children:e})),n)})}}},9169:(e,t,n)=>{"use strict";n.d(t,{Dt:()=>s,ys:()=>i});var r=n(6540),o=n(8328),a=n(4586);function i(e,t){const n=e=>(!e||e.endsWith("/")?e:`${e}/`)?.toLowerCase();return n(e)===n(t)}function s(){const{baseUrl:e}=(0,a.A)().siteConfig;return(0,r.useMemo)((()=>function(e){let{baseUrl:t,routes:n}=e;function r(e){return e.path===t&&!0===e.exact}function o(e){return e.path===t&&!e.exact}return function e(t){if(0===t.length)return;return t.find(r)||e(t.filter(o).flatMap((e=>e.routes??[])))}(n)}({routes:o.A,baseUrl:e})),[e])}},3104:(e,t,n)=>{"use strict";n.d(t,{Mq:()=>p,Tv:()=>u,gk:()=>f});var r=n(6540),o=n(8193),a=n(2303),i=(n(205),n(9532)),s=n(4848);const l=r.createContext(void 0);function u(e){let{children:t}=e;const n=function(){const e=(0,r.useRef)(!0);return(0,r.useMemo)((()=>({scrollEventsEnabledRef:e,enableScrollEvents:()=>{e.current=!0},disableScrollEvents:()=>{e.current=!1}})),[])}();return(0,s.jsx)(l.Provider,{value:n,children:t})}function c(){const e=(0,r.useContext)(l);if(null==e)throw new i.dV("ScrollControllerProvider");return e}const d=()=>o.A.canUseDOM?{scrollX:window.pageXOffset,scrollY:window.pageYOffset}:null;function p(e,t){void 0===t&&(t=[]);const{scrollEventsEnabledRef:n}=c(),o=(0,r.useRef)(d()),a=(0,i._q)(e);(0,r.useEffect)((()=>{const e=()=>{if(!n.current)return;const e=d();a(e,o.current),o.current=e},t={passive:!0};return e(),window.addEventListener("scroll",e,t),()=>window.removeEventListener("scroll",e,t)}),[a,n,...t])}function f(){const e=(0,r.useRef)(null),t=(0,a.A)()&&"smooth"===getComputedStyle(document.documentElement).scrollBehavior;return{startScroll:n=>{e.current=t?function(e){return window.scrollTo({top:e,behavior:"smooth"}),()=>{}}(n):function(e){let t=null;const n=document.documentElement.scrollTop>e;return function r(){const o=document.documentElement.scrollTop;(n&&o>e||!n&&ot&&cancelAnimationFrame(t)}(n)},cancelScroll:()=>e.current?.()}}},2967:(e,t,n)=>{"use strict";n.d(t,{Cy:()=>r,tU:()=>o});n(4586);const r="default";function o(e,t){return`docs-${e}-${t}`}},9466:(e,t,n)=>{"use strict";n.d(t,{Wf:()=>u});n(6540);var r=n(4180);const o=r.N;function a(e){let{key:t,oldValue:n,newValue:r,storage:o}=e;if(n===r)return;const a=document.createEvent("StorageEvent");a.initStorageEvent("storage",!1,!1,t,n,r,window.location.href,o),window.dispatchEvent(a)}function i(e){if(void 0===e&&(e=o),"undefined"==typeof window)throw new Error("Browser storage is not available on Node.js/Docusaurus SSR process.");if("none"===e)return null;try{return window[e]}catch(n){return t=n,s||(console.warn("Docusaurus browser storage is not available.\nPossible reasons: running Docusaurus in an iframe, in an incognito browser session, or using too strict browser privacy settings.",t),s=!0),null}var t}let s=!1;const l={get:()=>null,set:()=>{},del:()=>{},listen:()=>()=>{}};function u(e,t){const n=`${e}${r.M}`;if("undefined"==typeof window)return function(e){function t(){throw new Error(`Illegal storage API usage for storage key "${e}".\nDocusaurus storage APIs are not supposed to be called on the server-rendering process.\nPlease only call storage APIs in effects and event handlers.`)}return{get:t,set:t,del:t,listen:t}}(n);const o=i(t?.persistence);return null===o?l:{get:()=>{try{return o.getItem(n)}catch(e){return console.error(`Docusaurus storage error, can't get key=${n}`,e),null}},set:e=>{try{const t=o.getItem(n);o.setItem(n,e),a({key:n,oldValue:t,newValue:e,storage:o})}catch(t){console.error(`Docusaurus storage error, can't set ${n}=${e}`,t)}},del:()=>{try{const e=o.getItem(n);o.removeItem(n),a({key:n,oldValue:e,newValue:null,storage:o})}catch(e){console.error(`Docusaurus storage error, can't delete key=${n}`,e)}},listen:e=>{try{const t=t=>{t.storageArea===o&&t.key===n&&e(t)};return window.addEventListener("storage",t),()=>window.removeEventListener("storage",t)}catch(t){return console.error(`Docusaurus storage error, can't listen for changes of key=${n}`,t),()=>{}}}}}},2131:(e,t,n)=>{"use strict";n.d(t,{o:()=>i});var r=n(4586),o=n(6347),a=n(440);function i(){const{siteConfig:{baseUrl:e,url:t,trailingSlash:n},i18n:{defaultLocale:i,currentLocale:s}}=(0,r.A)(),{pathname:l}=(0,o.zy)(),u=(0,a.applyTrailingSlash)(l,{trailingSlash:n,baseUrl:e}),c=s===i?e:e.replace(`/${s}/`,"/"),d=u.replace(e,"");return{createUrl:function(e){let{locale:n,fullyQualified:r}=e;return`${r?t:""}${function(e){return e===i?`${c}`:`${c}${e}/`}(n)}${d}`}}}},5062:(e,t,n)=>{"use strict";n.d(t,{$:()=>i});var r=n(6540),o=n(6347),a=n(9532);function i(e){const t=(0,o.zy)(),n=(0,a.ZC)(t),i=(0,a._q)(e);(0,r.useEffect)((()=>{n&&t!==n&&i({location:t,previousLocation:n})}),[i,t,n])}},6342:(e,t,n)=>{"use strict";n.d(t,{p:()=>o});var r=n(4586);function o(){return(0,r.A)().siteConfig.themeConfig}},2983:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.removeTrailingSlash=t.addLeadingSlash=t.addTrailingSlash=void 0;const r=n(2566);function o(e){return e.endsWith("/")?e:`${e}/`}function a(e){return(0,r.removeSuffix)(e,"/")}t.addTrailingSlash=o,t.default=function(e,t){const{trailingSlash:n,baseUrl:r}=t;if(e.startsWith("#"))return e;if(void 0===n)return e;const[i]=e.split(/[#?]/),s="/"===i||i===r?i:(l=i,n?o(l):a(l));var l;return e.replace(i,s)},t.addLeadingSlash=function(e){return(0,r.addPrefix)(e,"/")},t.removeTrailingSlash=a},253:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=void 0,t.getErrorCausalChain=function e(t){return t.cause?[t,...e(t.cause)]:[t]}},440:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.getErrorCausalChain=t.removePrefix=t.addSuffix=t.removeSuffix=t.addPrefix=t.removeTrailingSlash=t.addLeadingSlash=t.addTrailingSlash=t.applyTrailingSlash=t.blogPostContainerID=void 0,t.blogPostContainerID="__blog-post-container";var o=n(2983);Object.defineProperty(t,"applyTrailingSlash",{enumerable:!0,get:function(){return r(o).default}}),Object.defineProperty(t,"addTrailingSlash",{enumerable:!0,get:function(){return o.addTrailingSlash}}),Object.defineProperty(t,"addLeadingSlash",{enumerable:!0,get:function(){return o.addLeadingSlash}}),Object.defineProperty(t,"removeTrailingSlash",{enumerable:!0,get:function(){return o.removeTrailingSlash}});var a=n(2566);Object.defineProperty(t,"addPrefix",{enumerable:!0,get:function(){return a.addPrefix}}),Object.defineProperty(t,"removeSuffix",{enumerable:!0,get:function(){return a.removeSuffix}}),Object.defineProperty(t,"addSuffix",{enumerable:!0,get:function(){return a.addSuffix}}),Object.defineProperty(t,"removePrefix",{enumerable:!0,get:function(){return a.removePrefix}});var i=n(253);Object.defineProperty(t,"getErrorCausalChain",{enumerable:!0,get:function(){return i.getErrorCausalChain}})},2566:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.removePrefix=t.addSuffix=t.removeSuffix=t.addPrefix=void 0,t.addPrefix=function(e,t){return e.startsWith(t)?e:`${t}${e}`},t.removeSuffix=function(e,t){return""===t?e:e.endsWith(t)?e.slice(0,-t.length):e},t.addSuffix=function(e,t){return e.endsWith(t)?e:`${e}${t}`},t.removePrefix=function(e,t){return e.startsWith(t)?e.slice(t.length):e}},2849:(e,t,n)=>{"use strict";n.d(t,{A:()=>i});n(6540);var r=n(5391);const o={loadingRing:"loadingRing_RJI3","loading-ring":"loading-ring_FB5o"};var a=n(4848);function i(e){let{className:t}=e;return(0,a.jsxs)("div",{className:(0,r.A)(o.loadingRing,t),children:[(0,a.jsx)("div",{}),(0,a.jsx)("div",{}),(0,a.jsx)("div",{}),(0,a.jsx)("div",{})]})}},5891:(e,t,n)=>{"use strict";n.d(t,{Z:()=>s});var r=n(8291),o=n.n(r),a=n(1088);const i=new Map;function s(e,t){const n=`${e}${t}`;let r=i.get(n);return r||(r=async function(e,t){{const n=`${e}${a.IH.replace("{dir}",t?`-${t.replace(/\//g,"-")}`:"")}`;if(new URL(n,location.origin).origin!==location.origin)throw new Error("Unexpected version url");const r=await(await fetch(n)).json(),i=r.map(((e,t)=>{let{documents:n,index:r}=e;return{type:t,documents:n,index:o().Index.load(r)}})),s=r.reduce(((e,t)=>{for(const n of t.index.invertedIndex)/\p{Unified_Ideograph}/u.test(n[0][0])&&e.add(n[0]);return e}),new Set);return{wrappedIndexes:i,zhDictionary:Array.from(s)}}return{wrappedIndexes:[],zhDictionary:[]}}(e,t),i.set(n,r)),r}},2384:(e,t,n)=>{"use strict";n.d(t,{m:()=>u});var r=n(8291),o=n.n(r);var a=n(1088);function i(e){return s(e).concat(s(e.filter((e=>{const t=e[e.length-1];return!t.trailing&&t.maybeTyping})),!0))}function s(e,t){return e.map((e=>({tokens:e.map((e=>e.value)),term:e.map((e=>({value:e.value,presence:o().Query.presence.REQUIRED,wildcard:(t?e.trailing||e.maybeTyping:e.trailing)?o().Query.wildcard.TRAILING:o().Query.wildcard.NONE})))})))}var l=n(9913);function u(e,t,n){return function(r,s){const u=function(e,t){if(1===t.length&&["ja","jp","th"].includes(t[0]))return o()[t[0]].tokenizer(e).map((e=>e.toString()));let n=/[^-\s]+/g;return t.includes("zh")&&(n=/\w+|\p{Unified_Ideograph}+/gu),e.toLowerCase().match(n)||[]}(r,a.BH);if(0===u.length)return void s([]);const c=function(e,t){const n=function(e,t){const n=[];return function e(r,o){if(0===r.length)return void n.push(o);const a=r[0];if(/\p{Unified_Ideograph}/u.test(a)){const n=function(e,t){const n=[];return function e(r,o){let a=0,i=!1;for(const s of t)if(r.substr(0,s.length)===s){const t={missed:o.missed,term:o.term.concat({value:s})};r.length>s.length?e(r.substr(s.length),t):n.push(t),i=!0}else for(let t=s.length-1;t>a;t-=1){const l=s.substr(0,t);if(r.substr(0,t)===l){a=t;const s={missed:o.missed,term:o.term.concat({value:l,trailing:!0})};r.length>t?e(r.substr(t),s):n.push(s),i=!0;break}}i||(r.length>0?e(r.substr(1),{missed:o.missed+1,term:o.term}):o.term.length>0&&n.push(o))}(e,{missed:0,term:[]}),n.sort(((e,t)=>{const n=e.missed>0?1:0,r=t.missed>0?1:0;return n!==r?n-r:e.term.length-t.term.length})).map((e=>e.term))}(a,t);for(const t of n){const n=o.concat(...t);e(r.slice(1),n)}}else{const t=o.concat({value:a});e(r.slice(1),t)}}(e,[]),n}(e,t);if(0===n.length)return[{tokens:e,term:e.map((e=>({value:e,presence:o().Query.presence.REQUIRED,wildcard:o().Query.wildcard.LEADING|o().Query.wildcard.TRAILING})))}];for(const o of n)o[o.length-1].maybeTyping=!0;const r=[];for(const i of a.BH)if("en"===i)a.sx||r.unshift(o().stopWordFilter);else{const e=o()[i];e.stopWordFilter&&r.unshift(e.stopWordFilter)}let s;if(r.length>0){const e=e=>r.reduce(((e,t)=>e.filter((e=>t(e.value)))),e);s=[];const t=[];for(const r of n){const n=e(r);s.push(n),n.length0&&t.push(n)}n.push(...t)}else s=n.slice();const l=[];for(const o of s)if(o.length>2)for(let e=o.length-1;e>=0;e-=1)l.push(o.slice(0,e).concat(o.slice(e+1)));return i(n).concat(i(l))}(u,t),d=[];e:for(const{term:t,tokens:o}of c)for(const{documents:r,index:a,type:i}of e)if(d.push(...a.query((e=>{for(const n of t)e.term(n.value,{wildcard:n.wildcard,presence:n.presence})})).slice(0,n).filter((e=>!d.some((t=>t.document.i.toString()===e.ref)))).slice(0,n-d.length).map((t=>{const n=r.find((e=>e.i.toString()===t.ref));return{document:n,type:i,page:i!==l.i.Title&&e[0].documents.find((e=>e.i===n.p)),metadata:t.matchData.metadata,tokens:o,score:t.score}}))),d.length>=n)break e;!function(e){e.forEach(((e,t)=>{e.index=t})),e.sort(((t,n)=>{let r=t.type!==l.i.Heading&&t.type!==l.i.Content&&t.type!==l.i.Description||!t.page?t.index:e.findIndex((e=>e.document===t.page)),o=n.type!==l.i.Heading&&n.type!==l.i.Content&&n.type!==l.i.Description||!n.page?n.index:e.findIndex((e=>e.document===n.page));if(-1===r&&(r=t.index),-1===o&&(o=n.index),r===o){const e=(0===n.type?1:0)-(0===t.type?1:0);return 0===e?t.index-n.index:e}return r-o}))}(d),function(e){e.forEach(((t,n)=>{n>0&&t.page&&e.slice(0,n).some((e=>(e.type===l.i.Keywords?e.page:e.document)===t.page))&&(n{"use strict";function r(e){return e.join(" \u203a ")}n.d(t,{$:()=>r})},3103:(e,t,n)=>{"use strict";function r(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}n.d(t,{Z:()=>r})},7674:(e,t,n)=>{"use strict";function r(e,t){const n=[];for(const r of Object.values(e))r[t]&&n.push(...r[t].position);return n.sort(((e,t)=>e[0]-t[0]||t[1]-e[1]))}n.d(t,{g:()=>r})},6841:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(3103);function o(e,t,n){const a=[];for(const i of t){const n=e.toLowerCase().indexOf(i);if(n>=0){n>0&&a.push(o(e.substr(0,n),t)),a.push(`${(0,r.Z)(e.substr(n,i.length))}`);const s=n+i.length;s${(0,r.Z)(e)}`:(0,r.Z)(e):a.join("")}},3810:(e,t,n)=>{"use strict";n.d(t,{C:()=>l});var r=n(3103),o=n(6841);const a=/\w+|\p{Unified_Ideograph}/u;function i(e){const t=[];let n=0,r=e;for(;r.length>0;){const o=r.match(a);if(!o){t.push(r);break}o.index>0&&t.push(r.substring(0,o.index)),t.push(o[0]),n+=o.index+o[0].length,r=e.substring(n)}return t}var s=n(1088);function l(e,t,n,a){void 0===a&&(a=s.rG);const{chunkIndex:l,chunks:u}=function(e,t,n){const a=[];let s=0,l=0,u=-1;for(;sl){const t=i(e.substring(l,c)).map((e=>({html:(0,r.Z)(e),textLength:e.length})));for(const e of t)a.push(e)}-1===u&&(u=a.length),l=c+d,a.push({html:(0,o.Z)(e.substring(c,l),n,!0),textLength:d})}}if(l({html:(0,r.Z)(e),textLength:e.length})));for(const e of t)a.push(e)}return{chunkIndex:u,chunks:a}}(e,t,n),c=u.slice(0,l),d=u[l],p=[d.html],f=u.slice(l+1);let h=d.textLength,m=0,g=0,y=!1,b=!1;for(;h0){const e=c.pop();h+e.textLength<=a?(p.unshift(e.html),m+=e.textLength,h+=e.textLength):(y=!0,c.length=0)}else{if(!(f.length>0))break;{const e=f.shift();h+e.textLength<=a?(p.push(e.html),g+=e.textLength,h+=e.textLength):(b=!0,f.length=0)}}return(y||c.length>0)&&p.unshift("\u2026"),(b||f.length>0)&&p.push("\u2026"),p.join("")}},3385:(e,t,n)=>{"use strict";function r(e,t){if("string"==typeof e)return{label:e,path:e};{const{label:n,path:r}=e;return"string"==typeof n?{label:n,path:r}:Object.prototype.hasOwnProperty.call(n,t)?{label:n[t],path:r}:{label:r,path:r}}}n.d(t,{p:()=>r})},1088:(e,t,n)=>{"use strict";n.d(t,{CU:()=>a,UB:()=>f,tb:()=>u,O6:()=>g,I$:()=>h,BH:()=>r,sx:()=>o,ZG:()=>p,WW:()=>c,pk:()=>d,Hg:()=>m,IH:()=>i,rG:()=>l,AT:()=>s,dz:()=>y});n(8291);const r=["en"],o=!1,a=null,i="search-index{dir}.json?_=4af144d5",s=8,l=50,u=!1,c=!0,d=!0,p="right",f=void 0,h=!0,m=null,g=!1,y=!1},9913:(e,t,n)=>{"use strict";var r;n.d(t,{i:()=>r}),function(e){e[e.Title=0]="Title",e[e.Heading=1]="Heading",e[e.Description=2]="Description",e[e.Keywords=3]="Keywords",e[e.Content=4]="Content"}(r||(r={}))},1034:(e,t,n)=>{"use strict";n.d(t,{d1:()=>h,vT:()=>E,gk:()=>C,Gy:()=>x,$S:()=>p,vF:()=>w,ht:()=>S,g1:()=>v});var r=n(6347),o=n(6588);function a(e,t){return[...e.versions].sort(((e,t)=>e.path===t.path?0:e.path.includes(t.path)?-1:t.path.includes(e.path)?1:0)).find((e=>!!(0,r.B6)(t,{path:e.path,exact:!1,strict:!1})))}var i=n(6540);n(8328),n(4586);function s(e,t){const n=e=>(!e||e.endsWith("/")?e:`${e}/`)?.toLowerCase();return n(e)===n(t)}var l=n(7948);n(4848);const u=Symbol("EmptyContext"),c=i.createContext(u);function d(e){return"link"!==e.type||e.unlisted?"category"===e.type?function(e){if(e.href&&!e.linkUnlisted)return e.href;for(const t of e.items){const e=d(t);if(e)return e}}(e):void 0:e.href}function p(){const{pathname:e}=(0,r.zy)(),t=function(){const e=(0,i.useContext)(c);if(e===u)throw new l.dV("DocsSidebarProvider");return e}();if(!t)throw new Error("Unexpected: cant find current sidebar in context");const n=f({sidebarItems:t.items,pathname:e,onlyCategories:!0}).slice(-1)[0];if(!n)throw new Error(`${e} is not associated with a category. useCurrentSidebarCategory() should only be used on category index pages.`);return n}function f(e){let{sidebarItems:t,pathname:n,onlyCategories:r=!1}=e;const o=[];return function e(t){for(const a of t)if("category"===a.type&&(s(a.href,n)||e(a.items))||"link"===a.type&&s(a.href,n)){return r&&"category"!==a.type||o.unshift(a),!0}return!1}(t),o}function h(e){return e.filter((e=>!("category"===e.type||"link"===e.type)||!!d(e)))}var m=n(7065),g=n(4180);g.N;const y=i.createContext(null);function b(){const e=(0,i.useContext)(y);if(!e)throw new l.dV("DocsPreferredVersionContextProvider");return e}function v(e){void 0===e&&(e=m.W);const t=S(e),[n,r]=b(),{preferredVersionName:o}=n[e];return{preferredVersion:t.versions.find((e=>e.name===o))??null,savePreferredVersionName:(0,i.useCallback)((t=>{r.savePreferredVersion(e,t)}),[r,e])}}function w(){const e=x(),t=C(),n=function(){const e=x(),[t]=b();function n(n){const r=e[n],{preferredVersionName:o}=t[n];return r.versions.find((e=>e.name===o))??null}const r=Object.keys(e);return Object.fromEntries(r.map((e=>[e,n(e)])))}();return[...Object.keys(e).map((function(r){const o=t?.activePlugin.pluginId===r?t.activeVersion:void 0,a=n[r],i=e[r].versions.find((e=>e.isLast));return function(e,t){return`docs-${e}-${t}`}(r,(o??a??i).name)}))]}const k={},x=()=>(0,o.kh)("docusaurus-plugin-content-docs")??k,S=e=>{try{return(0,o.P_)("docusaurus-plugin-content-docs",e,{failfast:!0})}catch(t){throw new Error("You are using a feature of the Docusaurus docs plugin, but this plugin does not seem to be enabled"+("Default"===e?"":` (pluginId=${e}`),{cause:t})}};function E(e){void 0===e&&(e={});const t=x(),{pathname:n}=(0,r.zy)();return function(e,t,n){void 0===n&&(n={});const o=Object.entries(e).sort(((e,t)=>t[1].path.localeCompare(e[1].path))).find((e=>{let[,n]=e;return!!(0,r.B6)(t,{path:n.path,exact:!1,strict:!1})})),a=o?{pluginId:o[0],pluginData:o[1]}:void 0;if(!a&&n.failfast)throw new Error(`Can't find active docs plugin for "${t}" pathname, while it was expected to be found. Maybe you tried to use a docs feature that can only be used on a docs-related page? Existing docs plugin paths are: ${Object.values(e).map((e=>e.path)).join(", ")}`);return a}(t,n,e)}function C(e){void 0===e&&(e={});const t=E(e),{pathname:n}=(0,r.zy)();if(!t)return;return{activePlugin:t,activeVersion:a(t.pluginData,n)}}},7948:(e,t,n)=>{"use strict";n.d(t,{dV:()=>r});n(6540),n(205),n(4848);class r extends Error{constructor(e,t){super(),this.name="ReactContextError",this.message=`Hook ${this.stack?.split("\n")[1]?.match(/at (?:\w+\.)?(?\w+)/)?.groups.name??""} is called outside the <${e}>. ${t??""}`}}},1513:(e,t,n)=>{"use strict";n.d(t,{zR:()=>w,TM:()=>_,yJ:()=>f,sC:()=>A,AO:()=>p});var r=n(8168);function o(e){return"/"===e.charAt(0)}function a(e,t){for(var n=t,r=n+1,o=e.length;r=0;p--){var f=i[p];"."===f?a(i,p):".."===f?(a(i,p),d++):d&&(a(i,p),d--)}if(!u)for(;d--;d)i.unshift("..");!u||""===i[0]||i[0]&&o(i[0])||i.unshift("");var h=i.join("/");return n&&"/"!==h.substr(-1)&&(h+="/"),h};var s=n(1561);function l(e){return"/"===e.charAt(0)?e:"/"+e}function u(e){return"/"===e.charAt(0)?e.substr(1):e}function c(e,t){return function(e,t){return 0===e.toLowerCase().indexOf(t.toLowerCase())&&-1!=="/?#".indexOf(e.charAt(t.length))}(e,t)?e.substr(t.length):e}function d(e){return"/"===e.charAt(e.length-1)?e.slice(0,-1):e}function p(e){var t=e.pathname,n=e.search,r=e.hash,o=t||"/";return n&&"?"!==n&&(o+="?"===n.charAt(0)?n:"?"+n),r&&"#"!==r&&(o+="#"===r.charAt(0)?r:"#"+r),o}function f(e,t,n,o){var a;"string"==typeof e?(a=function(e){var t=e||"/",n="",r="",o=t.indexOf("#");-1!==o&&(r=t.substr(o),t=t.substr(0,o));var a=t.indexOf("?");return-1!==a&&(n=t.substr(a),t=t.substr(0,a)),{pathname:t,search:"?"===n?"":n,hash:"#"===r?"":r}}(e),a.state=t):(void 0===(a=(0,r.A)({},e)).pathname&&(a.pathname=""),a.search?"?"!==a.search.charAt(0)&&(a.search="?"+a.search):a.search="",a.hash?"#"!==a.hash.charAt(0)&&(a.hash="#"+a.hash):a.hash="",void 0!==t&&void 0===a.state&&(a.state=t));try{a.pathname=decodeURI(a.pathname)}catch(s){throw s instanceof URIError?new URIError('Pathname "'+a.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):s}return n&&(a.key=n),o?a.pathname?"/"!==a.pathname.charAt(0)&&(a.pathname=i(a.pathname,o.pathname)):a.pathname=o.pathname:a.pathname||(a.pathname="/"),a}function h(){var e=null;var t=[];return{setPrompt:function(t){return e=t,function(){e===t&&(e=null)}},confirmTransitionTo:function(t,n,r,o){if(null!=e){var a="function"==typeof e?e(t,n):e;"string"==typeof a?"function"==typeof r?r(a,o):o(!0):o(!1!==a)}else o(!0)},appendListener:function(e){var n=!0;function r(){n&&e.apply(void 0,arguments)}return t.push(r),function(){n=!1,t=t.filter((function(e){return e!==r}))}},notifyListeners:function(){for(var e=arguments.length,n=new Array(e),r=0;rt?n.splice(t,n.length-t,o):n.push(o),d({action:r,location:o,index:t,entries:n})}}))},replace:function(e,t){var r="REPLACE",o=f(e,t,m(),w.location);c.confirmTransitionTo(o,r,n,(function(e){e&&(w.entries[w.index]=o,d({action:r,location:o}))}))},go:v,goBack:function(){v(-1)},goForward:function(){v(1)},canGo:function(e){var t=w.index+e;return t>=0&&t{"use strict";var r=n(4363),o={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},a={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},i={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},s={};function l(e){return r.isMemo(e)?i:s[e.$$typeof]||o}s[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},s[r.Memo]=i;var u=Object.defineProperty,c=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,f=Object.getPrototypeOf,h=Object.prototype;e.exports=function e(t,n,r){if("string"!=typeof n){if(h){var o=f(n);o&&o!==h&&e(t,o,r)}var i=c(n);d&&(i=i.concat(d(n)));for(var s=l(t),m=l(n),g=0;g{"use strict";e.exports=function(e,t,n,r,o,a,i,s){if(!e){var l;if(void 0===t)l=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var u=[n,r,o,a,i,s],c=0;(l=new Error(t.replace(/%s/g,(function(){return u[c++]})))).name="Invariant Violation"}throw l.framesToPop=1,l}}},4634:e=>{e.exports=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)}},8291:(e,t,n)=>{var r,o;!function(){var a,i,s,l,u,c,d,p,f,h,m,g,y,b,v,w,k,x,S,E,C,_,T,A,j,L,P,R,N,O,I=function(e){var t=new I.Builder;return t.pipeline.add(I.trimmer,I.stopWordFilter,I.stemmer),t.searchPipeline.add(I.stemmer),e.call(t,t),t.build()};I.version="2.3.9",I.utils={},I.utils.warn=(a=this,function(e){a.console&&console.warn&&console.warn(e)}),I.utils.asString=function(e){return null==e?"":e.toString()},I.utils.clone=function(e){if(null==e)return e;for(var t=Object.create(null),n=Object.keys(e),r=0;r0){var l=I.utils.clone(t)||{};l.position=[i,s],l.index=o.length,o.push(new I.Token(n.slice(i,a),l))}i=a+1}}return o},I.tokenizer.separator=/[\s\-]+/,I.Pipeline=function(){this._stack=[]},I.Pipeline.registeredFunctions=Object.create(null),I.Pipeline.registerFunction=function(e,t){t in this.registeredFunctions&&I.utils.warn("Overwriting existing registered function: "+t),e.label=t,I.Pipeline.registeredFunctions[e.label]=e},I.Pipeline.warnIfFunctionNotRegistered=function(e){e.label&&e.label in this.registeredFunctions||I.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",e)},I.Pipeline.load=function(e){var t=new I.Pipeline;return e.forEach((function(e){var n=I.Pipeline.registeredFunctions[e];if(!n)throw new Error("Cannot load unregistered function: "+e);t.add(n)})),t},I.Pipeline.prototype.add=function(){Array.prototype.slice.call(arguments).forEach((function(e){I.Pipeline.warnIfFunctionNotRegistered(e),this._stack.push(e)}),this)},I.Pipeline.prototype.after=function(e,t){I.Pipeline.warnIfFunctionNotRegistered(t);var n=this._stack.indexOf(e);if(-1==n)throw new Error("Cannot find existingFn");n+=1,this._stack.splice(n,0,t)},I.Pipeline.prototype.before=function(e,t){I.Pipeline.warnIfFunctionNotRegistered(t);var n=this._stack.indexOf(e);if(-1==n)throw new Error("Cannot find existingFn");this._stack.splice(n,0,t)},I.Pipeline.prototype.remove=function(e){var t=this._stack.indexOf(e);-1!=t&&this._stack.splice(t,1)},I.Pipeline.prototype.run=function(e){for(var t=this._stack.length,n=0;n1&&(ae&&(n=o),a!=e);)r=n-t,o=t+Math.floor(r/2),a=this.elements[2*o];return a==e||a>e?2*o:as?u+=2:i==s&&(t+=n[l+1]*r[u+1],l+=2,u+=2);return t},I.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},I.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),t=1,n=0;t0){var a,i=o.str.charAt(0);i in o.node.edges?a=o.node.edges[i]:(a=new I.TokenSet,o.node.edges[i]=a),1==o.str.length&&(a.final=!0),r.push({node:a,editsRemaining:o.editsRemaining,str:o.str.slice(1)})}if(0!=o.editsRemaining){if("*"in o.node.edges)var s=o.node.edges["*"];else{s=new I.TokenSet;o.node.edges["*"]=s}if(0==o.str.length&&(s.final=!0),r.push({node:s,editsRemaining:o.editsRemaining-1,str:o.str}),o.str.length>1&&r.push({node:o.node,editsRemaining:o.editsRemaining-1,str:o.str.slice(1)}),1==o.str.length&&(o.node.final=!0),o.str.length>=1){if("*"in o.node.edges)var l=o.node.edges["*"];else{l=new I.TokenSet;o.node.edges["*"]=l}1==o.str.length&&(l.final=!0),r.push({node:l,editsRemaining:o.editsRemaining-1,str:o.str.slice(1)})}if(o.str.length>1){var u,c=o.str.charAt(0),d=o.str.charAt(1);d in o.node.edges?u=o.node.edges[d]:(u=new I.TokenSet,o.node.edges[d]=u),1==o.str.length&&(u.final=!0),r.push({node:u,editsRemaining:o.editsRemaining-1,str:c+o.str.slice(2)})}}}return n},I.TokenSet.fromString=function(e){for(var t=new I.TokenSet,n=t,r=0,o=e.length;r=e;t--){var n=this.uncheckedNodes[t],r=n.child.toString();r in this.minimizedNodes?n.parent.edges[n.char]=this.minimizedNodes[r]:(n.child._str=r,this.minimizedNodes[r]=n.child),this.uncheckedNodes.pop()}},I.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},I.Index.prototype.search=function(e){return this.query((function(t){new I.QueryParser(e,t).parse()}))},I.Index.prototype.query=function(e){for(var t=new I.Query(this.fields),n=Object.create(null),r=Object.create(null),o=Object.create(null),a=Object.create(null),i=Object.create(null),s=0;s1?1:e},I.Builder.prototype.k1=function(e){this._k1=e},I.Builder.prototype.add=function(e,t){var n=e[this._ref],r=Object.keys(this._fields);this._documents[n]=t||{},this.documentCount+=1;for(var o=0;o=this.length)return I.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},I.QueryLexer.prototype.width=function(){return this.pos-this.start},I.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},I.QueryLexer.prototype.backup=function(){this.pos-=1},I.QueryLexer.prototype.acceptDigitRun=function(){var e,t;do{t=(e=this.next()).charCodeAt(0)}while(t>47&&t<58);e!=I.QueryLexer.EOS&&this.backup()},I.QueryLexer.prototype.more=function(){return this.pos1&&(e.backup(),e.emit(I.QueryLexer.TERM)),e.ignore(),e.more())return I.QueryLexer.lexText},I.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(I.QueryLexer.EDIT_DISTANCE),I.QueryLexer.lexText},I.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(I.QueryLexer.BOOST),I.QueryLexer.lexText},I.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(I.QueryLexer.TERM)},I.QueryLexer.termSeparator=I.tokenizer.separator,I.QueryLexer.lexText=function(e){for(;;){var t=e.next();if(t==I.QueryLexer.EOS)return I.QueryLexer.lexEOS;if(92!=t.charCodeAt(0)){if(":"==t)return I.QueryLexer.lexField;if("~"==t)return e.backup(),e.width()>0&&e.emit(I.QueryLexer.TERM),I.QueryLexer.lexEditDistance;if("^"==t)return e.backup(),e.width()>0&&e.emit(I.QueryLexer.TERM),I.QueryLexer.lexBoost;if("+"==t&&1===e.width())return e.emit(I.QueryLexer.PRESENCE),I.QueryLexer.lexText;if("-"==t&&1===e.width())return e.emit(I.QueryLexer.PRESENCE),I.QueryLexer.lexText;if(t.match(I.QueryLexer.termSeparator))return I.QueryLexer.lexTerm}else e.escapeCharacter()}},I.QueryParser=function(e,t){this.lexer=new I.QueryLexer(e),this.query=t,this.currentClause={},this.lexemeIdx=0},I.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=I.QueryParser.parseClause;e;)e=e(this);return this.query},I.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},I.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},I.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},I.QueryParser.parseClause=function(e){var t=e.peekLexeme();if(null!=t)switch(t.type){case I.QueryLexer.PRESENCE:return I.QueryParser.parsePresence;case I.QueryLexer.FIELD:return I.QueryParser.parseField;case I.QueryLexer.TERM:return I.QueryParser.parseTerm;default:var n="expected either a field or a term, found "+t.type;throw t.str.length>=1&&(n+=" with value '"+t.str+"'"),new I.QueryParseError(n,t.start,t.end)}},I.QueryParser.parsePresence=function(e){var t=e.consumeLexeme();if(null!=t){switch(t.str){case"-":e.currentClause.presence=I.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=I.Query.presence.REQUIRED;break;default:var n="unrecognised presence operator'"+t.str+"'";throw new I.QueryParseError(n,t.start,t.end)}var r=e.peekLexeme();if(null==r){n="expecting term or field, found nothing";throw new I.QueryParseError(n,t.start,t.end)}switch(r.type){case I.QueryLexer.FIELD:return I.QueryParser.parseField;case I.QueryLexer.TERM:return I.QueryParser.parseTerm;default:n="expecting term or field, found '"+r.type+"'";throw new I.QueryParseError(n,r.start,r.end)}}},I.QueryParser.parseField=function(e){var t=e.consumeLexeme();if(null!=t){if(-1==e.query.allFields.indexOf(t.str)){var n=e.query.allFields.map((function(e){return"'"+e+"'"})).join(", "),r="unrecognised field '"+t.str+"', possible fields: "+n;throw new I.QueryParseError(r,t.start,t.end)}e.currentClause.fields=[t.str];var o=e.peekLexeme();if(null==o){r="expecting term, found nothing";throw new I.QueryParseError(r,t.start,t.end)}if(o.type===I.QueryLexer.TERM)return I.QueryParser.parseTerm;r="expecting term, found '"+o.type+"'";throw new I.QueryParseError(r,o.start,o.end)}},I.QueryParser.parseTerm=function(e){var t=e.consumeLexeme();if(null!=t){e.currentClause.term=t.str.toLowerCase(),-1!=t.str.indexOf("*")&&(e.currentClause.usePipeline=!1);var n=e.peekLexeme();if(null!=n)switch(n.type){case I.QueryLexer.TERM:return e.nextClause(),I.QueryParser.parseTerm;case I.QueryLexer.FIELD:return e.nextClause(),I.QueryParser.parseField;case I.QueryLexer.EDIT_DISTANCE:return I.QueryParser.parseEditDistance;case I.QueryLexer.BOOST:return I.QueryParser.parseBoost;case I.QueryLexer.PRESENCE:return e.nextClause(),I.QueryParser.parsePresence;default:var r="Unexpected lexeme type '"+n.type+"'";throw new I.QueryParseError(r,n.start,n.end)}else e.nextClause()}},I.QueryParser.parseEditDistance=function(e){var t=e.consumeLexeme();if(null!=t){var n=parseInt(t.str,10);if(isNaN(n)){var r="edit distance must be numeric";throw new I.QueryParseError(r,t.start,t.end)}e.currentClause.editDistance=n;var o=e.peekLexeme();if(null!=o)switch(o.type){case I.QueryLexer.TERM:return e.nextClause(),I.QueryParser.parseTerm;case I.QueryLexer.FIELD:return e.nextClause(),I.QueryParser.parseField;case I.QueryLexer.EDIT_DISTANCE:return I.QueryParser.parseEditDistance;case I.QueryLexer.BOOST:return I.QueryParser.parseBoost;case I.QueryLexer.PRESENCE:return e.nextClause(),I.QueryParser.parsePresence;default:r="Unexpected lexeme type '"+o.type+"'";throw new I.QueryParseError(r,o.start,o.end)}else e.nextClause()}},I.QueryParser.parseBoost=function(e){var t=e.consumeLexeme();if(null!=t){var n=parseInt(t.str,10);if(isNaN(n)){var r="boost must be numeric";throw new I.QueryParseError(r,t.start,t.end)}e.currentClause.boost=n;var o=e.peekLexeme();if(null!=o)switch(o.type){case I.QueryLexer.TERM:return e.nextClause(),I.QueryParser.parseTerm;case I.QueryLexer.FIELD:return e.nextClause(),I.QueryParser.parseField;case I.QueryLexer.EDIT_DISTANCE:return I.QueryParser.parseEditDistance;case I.QueryLexer.BOOST:return I.QueryParser.parseBoost;case I.QueryLexer.PRESENCE:return e.nextClause(),I.QueryParser.parsePresence;default:r="Unexpected lexeme type '"+o.type+"'";throw new I.QueryParseError(r,o.start,o.end)}else e.nextClause()}},void 0===(o="function"==typeof(r=function(){return I})?r.call(t,n,t,e):r)||(e.exports=o)}()},119:(e,t,n)=>{"use strict";n.r(t)},1043:(e,t,n)=>{"use strict";n.r(t)},5947:function(e,t,n){var r,o;r=function(){var e,t,n={version:"0.2.0"},r=n.settings={minimum:.08,easing:"ease",positionUsing:"",speed:200,trickle:!0,trickleRate:.02,trickleSpeed:800,showSpinner:!0,barSelector:'[role="bar"]',spinnerSelector:'[role="spinner"]',parent:"body",template:'
'};function o(e,t,n){return en?n:e}function a(e){return 100*(-1+e)}function i(e,t,n){var o;return(o="translate3d"===r.positionUsing?{transform:"translate3d("+a(e)+"%,0,0)"}:"translate"===r.positionUsing?{transform:"translate("+a(e)+"%,0)"}:{"margin-left":a(e)+"%"}).transition="all "+t+"ms "+n,o}n.configure=function(e){var t,n;for(t in e)void 0!==(n=e[t])&&e.hasOwnProperty(t)&&(r[t]=n);return this},n.status=null,n.set=function(e){var t=n.isStarted();e=o(e,r.minimum,1),n.status=1===e?null:e;var a=n.render(!t),u=a.querySelector(r.barSelector),c=r.speed,d=r.easing;return a.offsetWidth,s((function(t){""===r.positionUsing&&(r.positionUsing=n.getPositioningCSS()),l(u,i(e,c,d)),1===e?(l(a,{transition:"none",opacity:1}),a.offsetWidth,setTimeout((function(){l(a,{transition:"all "+c+"ms linear",opacity:0}),setTimeout((function(){n.remove(),t()}),c)}),c)):setTimeout(t,c)})),this},n.isStarted=function(){return"number"==typeof n.status},n.start=function(){n.status||n.set(0);var e=function(){setTimeout((function(){n.status&&(n.trickle(),e())}),r.trickleSpeed)};return r.trickle&&e(),this},n.done=function(e){return e||n.status?n.inc(.3+.5*Math.random()).set(1):this},n.inc=function(e){var t=n.status;return t?("number"!=typeof e&&(e=(1-t)*o(Math.random()*t,.1,.95)),t=o(t+e,0,.994),n.set(t)):n.start()},n.trickle=function(){return n.inc(Math.random()*r.trickleRate)},e=0,t=0,n.promise=function(r){return r&&"resolved"!==r.state()?(0===t&&n.start(),e++,t++,r.always((function(){0==--t?(e=0,n.done()):n.set((e-t)/e)})),this):this},n.render=function(e){if(n.isRendered())return document.getElementById("nprogress");c(document.documentElement,"nprogress-busy");var t=document.createElement("div");t.id="nprogress",t.innerHTML=r.template;var o,i=t.querySelector(r.barSelector),s=e?"-100":a(n.status||0),u=document.querySelector(r.parent);return l(i,{transition:"all 0 linear",transform:"translate3d("+s+"%,0,0)"}),r.showSpinner||(o=t.querySelector(r.spinnerSelector))&&f(o),u!=document.body&&c(u,"nprogress-custom-parent"),u.appendChild(t),t},n.remove=function(){d(document.documentElement,"nprogress-busy"),d(document.querySelector(r.parent),"nprogress-custom-parent");var e=document.getElementById("nprogress");e&&f(e)},n.isRendered=function(){return!!document.getElementById("nprogress")},n.getPositioningCSS=function(){var e=document.body.style,t="WebkitTransform"in e?"Webkit":"MozTransform"in e?"Moz":"msTransform"in e?"ms":"OTransform"in e?"O":"";return t+"Perspective"in e?"translate3d":t+"Transform"in e?"translate":"margin"};var s=function(){var e=[];function t(){var n=e.shift();n&&n(t)}return function(n){e.push(n),1==e.length&&t()}}(),l=function(){var e=["Webkit","O","Moz","ms"],t={};function n(e){return e.replace(/^-ms-/,"ms-").replace(/-([\da-z])/gi,(function(e,t){return t.toUpperCase()}))}function r(t){var n=document.body.style;if(t in n)return t;for(var r,o=e.length,a=t.charAt(0).toUpperCase()+t.slice(1);o--;)if((r=e[o]+a)in n)return r;return t}function o(e){return e=n(e),t[e]||(t[e]=r(e))}function a(e,t,n){t=o(t),e.style[t]=n}return function(e,t){var n,r,o=arguments;if(2==o.length)for(n in t)void 0!==(r=t[n])&&t.hasOwnProperty(n)&&a(e,n,r);else a(e,o[1],o[2])}}();function u(e,t){return("string"==typeof e?e:p(e)).indexOf(" "+t+" ")>=0}function c(e,t){var n=p(e),r=n+t;u(n,t)||(e.className=r.substring(1))}function d(e,t){var n,r=p(e);u(e,t)&&(n=r.replace(" "+t+" "," "),e.className=n.substring(1,n.length-1))}function p(e){return(" "+(e.className||"")+" ").replace(/\s+/gi," ")}function f(e){e&&e.parentNode&&e.parentNode.removeChild(e)}return n},void 0===(o="function"==typeof r?r.call(t,n,t,e):r)||(e.exports=o)},6969:e=>{e.exports&&(e.exports={core:{meta:{path:"components/prism-core.js",option:"mandatory"},core:"Core"},themes:{meta:{path:"themes/{id}.css",link:"index.html?theme={id}",exclusive:!0},prism:{title:"Default",option:"default"},"prism-dark":"Dark","prism-funky":"Funky","prism-okaidia":{title:"Okaidia",owner:"ocodia"},"prism-twilight":{title:"Twilight",owner:"remybach"},"prism-coy":{title:"Coy",owner:"tshedor"},"prism-solarizedlight":{title:"Solarized Light",owner:"hectormatos2011 "},"prism-tomorrow":{title:"Tomorrow Night",owner:"Rosey"}},languages:{meta:{path:"components/prism-{id}",noCSS:!0,examplesPath:"examples/prism-{id}",addCheckAll:!0},markup:{title:"Markup",alias:["html","xml","svg","mathml","ssml","atom","rss"],aliasTitles:{html:"HTML",xml:"XML",svg:"SVG",mathml:"MathML",ssml:"SSML",atom:"Atom",rss:"RSS"},option:"default"},css:{title:"CSS",option:"default",modify:"markup"},clike:{title:"C-like",option:"default"},javascript:{title:"JavaScript",require:"clike",modify:"markup",optional:"regex",alias:"js",option:"default"},abap:{title:"ABAP",owner:"dellagustin"},abnf:{title:"ABNF",owner:"RunDevelopment"},actionscript:{title:"ActionScript",require:"javascript",modify:"markup",owner:"Golmote"},ada:{title:"Ada",owner:"Lucretia"},agda:{title:"Agda",owner:"xy-ren"},al:{title:"AL",owner:"RunDevelopment"},antlr4:{title:"ANTLR4",alias:"g4",owner:"RunDevelopment"},apacheconf:{title:"Apache Configuration",owner:"GuiTeK"},apex:{title:"Apex",require:["clike","sql"],owner:"RunDevelopment"},apl:{title:"APL",owner:"ngn"},applescript:{title:"AppleScript",owner:"Golmote"},aql:{title:"AQL",owner:"RunDevelopment"},arduino:{title:"Arduino",require:"cpp",alias:"ino",owner:"dkern"},arff:{title:"ARFF",owner:"Golmote"},armasm:{title:"ARM Assembly",alias:"arm-asm",owner:"RunDevelopment"},arturo:{title:"Arturo",alias:"art",optional:["bash","css","javascript","markup","markdown","sql"],owner:"drkameleon"},asciidoc:{alias:"adoc",title:"AsciiDoc",owner:"Golmote"},aspnet:{title:"ASP.NET (C#)",require:["markup","csharp"],owner:"nauzilus"},asm6502:{title:"6502 Assembly",owner:"kzurawel"},asmatmel:{title:"Atmel AVR Assembly",owner:"cerkit"},autohotkey:{title:"AutoHotkey",owner:"aviaryan"},autoit:{title:"AutoIt",owner:"Golmote"},avisynth:{title:"AviSynth",alias:"avs",owner:"Zinfidel"},"avro-idl":{title:"Avro IDL",alias:"avdl",owner:"RunDevelopment"},awk:{title:"AWK",alias:"gawk",aliasTitles:{gawk:"GAWK"},owner:"RunDevelopment"},bash:{title:"Bash",alias:["sh","shell"],aliasTitles:{sh:"Shell",shell:"Shell"},owner:"zeitgeist87"},basic:{title:"BASIC",owner:"Golmote"},batch:{title:"Batch",owner:"Golmote"},bbcode:{title:"BBcode",alias:"shortcode",aliasTitles:{shortcode:"Shortcode"},owner:"RunDevelopment"},bbj:{title:"BBj",owner:"hyyan"},bicep:{title:"Bicep",owner:"johnnyreilly"},birb:{title:"Birb",require:"clike",owner:"Calamity210"},bison:{title:"Bison",require:"c",owner:"Golmote"},bnf:{title:"BNF",alias:"rbnf",aliasTitles:{rbnf:"RBNF"},owner:"RunDevelopment"},bqn:{title:"BQN",owner:"yewscion"},brainfuck:{title:"Brainfuck",owner:"Golmote"},brightscript:{title:"BrightScript",owner:"RunDevelopment"},bro:{title:"Bro",owner:"wayward710"},bsl:{title:"BSL (1C:Enterprise)",alias:"oscript",aliasTitles:{oscript:"OneScript"},owner:"Diversus23"},c:{title:"C",require:"clike",owner:"zeitgeist87"},csharp:{title:"C#",require:"clike",alias:["cs","dotnet"],owner:"mvalipour"},cpp:{title:"C++",require:"c",owner:"zeitgeist87"},cfscript:{title:"CFScript",require:"clike",alias:"cfc",owner:"mjclemente"},chaiscript:{title:"ChaiScript",require:["clike","cpp"],owner:"RunDevelopment"},cil:{title:"CIL",owner:"sbrl"},cilkc:{title:"Cilk/C",require:"c",alias:"cilk-c",owner:"OpenCilk"},cilkcpp:{title:"Cilk/C++",require:"cpp",alias:["cilk-cpp","cilk"],owner:"OpenCilk"},clojure:{title:"Clojure",owner:"troglotit"},cmake:{title:"CMake",owner:"mjrogozinski"},cobol:{title:"COBOL",owner:"RunDevelopment"},coffeescript:{title:"CoffeeScript",require:"javascript",alias:"coffee",owner:"R-osey"},concurnas:{title:"Concurnas",alias:"conc",owner:"jasontatton"},csp:{title:"Content-Security-Policy",owner:"ScottHelme"},cooklang:{title:"Cooklang",owner:"ahue"},coq:{title:"Coq",owner:"RunDevelopment"},crystal:{title:"Crystal",require:"ruby",owner:"MakeNowJust"},"css-extras":{title:"CSS Extras",require:"css",modify:"css",owner:"milesj"},csv:{title:"CSV",owner:"RunDevelopment"},cue:{title:"CUE",owner:"RunDevelopment"},cypher:{title:"Cypher",owner:"RunDevelopment"},d:{title:"D",require:"clike",owner:"Golmote"},dart:{title:"Dart",require:"clike",owner:"Golmote"},dataweave:{title:"DataWeave",owner:"machaval"},dax:{title:"DAX",owner:"peterbud"},dhall:{title:"Dhall",owner:"RunDevelopment"},diff:{title:"Diff",owner:"uranusjr"},django:{title:"Django/Jinja2",require:"markup-templating",alias:"jinja2",owner:"romanvm"},"dns-zone-file":{title:"DNS zone file",owner:"RunDevelopment",alias:"dns-zone"},docker:{title:"Docker",alias:"dockerfile",owner:"JustinBeckwith"},dot:{title:"DOT (Graphviz)",alias:"gv",optional:"markup",owner:"RunDevelopment"},ebnf:{title:"EBNF",owner:"RunDevelopment"},editorconfig:{title:"EditorConfig",owner:"osipxd"},eiffel:{title:"Eiffel",owner:"Conaclos"},ejs:{title:"EJS",require:["javascript","markup-templating"],owner:"RunDevelopment",alias:"eta",aliasTitles:{eta:"Eta"}},elixir:{title:"Elixir",owner:"Golmote"},elm:{title:"Elm",owner:"zwilias"},etlua:{title:"Embedded Lua templating",require:["lua","markup-templating"],owner:"RunDevelopment"},erb:{title:"ERB",require:["ruby","markup-templating"],owner:"Golmote"},erlang:{title:"Erlang",owner:"Golmote"},"excel-formula":{title:"Excel Formula",alias:["xlsx","xls"],owner:"RunDevelopment"},fsharp:{title:"F#",require:"clike",owner:"simonreynolds7"},factor:{title:"Factor",owner:"catb0t"},false:{title:"False",owner:"edukisto"},"firestore-security-rules":{title:"Firestore security rules",require:"clike",owner:"RunDevelopment"},flow:{title:"Flow",require:"javascript",owner:"Golmote"},fortran:{title:"Fortran",owner:"Golmote"},ftl:{title:"FreeMarker Template Language",require:"markup-templating",owner:"RunDevelopment"},gml:{title:"GameMaker Language",alias:"gamemakerlanguage",require:"clike",owner:"LiarOnce"},gap:{title:"GAP (CAS)",owner:"RunDevelopment"},gcode:{title:"G-code",owner:"RunDevelopment"},gdscript:{title:"GDScript",owner:"RunDevelopment"},gedcom:{title:"GEDCOM",owner:"Golmote"},gettext:{title:"gettext",alias:"po",owner:"RunDevelopment"},gherkin:{title:"Gherkin",owner:"hason"},git:{title:"Git",owner:"lgiraudel"},glsl:{title:"GLSL",require:"c",owner:"Golmote"},gn:{title:"GN",alias:"gni",owner:"RunDevelopment"},"linker-script":{title:"GNU Linker Script",alias:"ld",owner:"RunDevelopment"},go:{title:"Go",require:"clike",owner:"arnehormann"},"go-module":{title:"Go module",alias:"go-mod",owner:"RunDevelopment"},gradle:{title:"Gradle",require:"clike",owner:"zeabdelkhalek-badido18"},graphql:{title:"GraphQL",optional:"markdown",owner:"Golmote"},groovy:{title:"Groovy",require:"clike",owner:"robfletcher"},haml:{title:"Haml",require:"ruby",optional:["css","css-extras","coffeescript","erb","javascript","less","markdown","scss","textile"],owner:"Golmote"},handlebars:{title:"Handlebars",require:"markup-templating",alias:["hbs","mustache"],aliasTitles:{mustache:"Mustache"},owner:"Golmote"},haskell:{title:"Haskell",alias:"hs",owner:"bholst"},haxe:{title:"Haxe",require:"clike",optional:"regex",owner:"Golmote"},hcl:{title:"HCL",owner:"outsideris"},hlsl:{title:"HLSL",require:"c",owner:"RunDevelopment"},hoon:{title:"Hoon",owner:"matildepark"},http:{title:"HTTP",optional:["csp","css","hpkp","hsts","javascript","json","markup","uri"],owner:"danielgtaylor"},hpkp:{title:"HTTP Public-Key-Pins",owner:"ScottHelme"},hsts:{title:"HTTP Strict-Transport-Security",owner:"ScottHelme"},ichigojam:{title:"IchigoJam",owner:"BlueCocoa"},icon:{title:"Icon",owner:"Golmote"},"icu-message-format":{title:"ICU Message Format",owner:"RunDevelopment"},idris:{title:"Idris",alias:"idr",owner:"KeenS",require:"haskell"},ignore:{title:".ignore",owner:"osipxd",alias:["gitignore","hgignore","npmignore"],aliasTitles:{gitignore:".gitignore",hgignore:".hgignore",npmignore:".npmignore"}},inform7:{title:"Inform 7",owner:"Golmote"},ini:{title:"Ini",owner:"aviaryan"},io:{title:"Io",owner:"AlesTsurko"},j:{title:"J",owner:"Golmote"},java:{title:"Java",require:"clike",owner:"sherblot"},javadoc:{title:"JavaDoc",require:["markup","java","javadoclike"],modify:"java",optional:"scala",owner:"RunDevelopment"},javadoclike:{title:"JavaDoc-like",modify:["java","javascript","php"],owner:"RunDevelopment"},javastacktrace:{title:"Java stack trace",owner:"RunDevelopment"},jexl:{title:"Jexl",owner:"czosel"},jolie:{title:"Jolie",require:"clike",owner:"thesave"},jq:{title:"JQ",owner:"RunDevelopment"},jsdoc:{title:"JSDoc",require:["javascript","javadoclike","typescript"],modify:"javascript",optional:["actionscript","coffeescript"],owner:"RunDevelopment"},"js-extras":{title:"JS Extras",require:"javascript",modify:"javascript",optional:["actionscript","coffeescript","flow","n4js","typescript"],owner:"RunDevelopment"},json:{title:"JSON",alias:"webmanifest",aliasTitles:{webmanifest:"Web App Manifest"},owner:"CupOfTea696"},json5:{title:"JSON5",require:"json",owner:"RunDevelopment"},jsonp:{title:"JSONP",require:"json",owner:"RunDevelopment"},jsstacktrace:{title:"JS stack trace",owner:"sbrl"},"js-templates":{title:"JS Templates",require:"javascript",modify:"javascript",optional:["css","css-extras","graphql","markdown","markup","sql"],owner:"RunDevelopment"},julia:{title:"Julia",owner:"cdagnino"},keepalived:{title:"Keepalived Configure",owner:"dev-itsheng"},keyman:{title:"Keyman",owner:"mcdurdin"},kotlin:{title:"Kotlin",alias:["kt","kts"],aliasTitles:{kts:"Kotlin Script"},require:"clike",owner:"Golmote"},kumir:{title:"KuMir (\u041a\u0443\u041c\u0438\u0440)",alias:"kum",owner:"edukisto"},kusto:{title:"Kusto",owner:"RunDevelopment"},latex:{title:"LaTeX",alias:["tex","context"],aliasTitles:{tex:"TeX",context:"ConTeXt"},owner:"japborst"},latte:{title:"Latte",require:["clike","markup-templating","php"],owner:"nette"},less:{title:"Less",require:"css",optional:"css-extras",owner:"Golmote"},lilypond:{title:"LilyPond",require:"scheme",alias:"ly",owner:"RunDevelopment"},liquid:{title:"Liquid",require:"markup-templating",owner:"cinhtau"},lisp:{title:"Lisp",alias:["emacs","elisp","emacs-lisp"],owner:"JuanCaicedo"},livescript:{title:"LiveScript",owner:"Golmote"},llvm:{title:"LLVM IR",owner:"porglezomp"},log:{title:"Log file",optional:"javastacktrace",owner:"RunDevelopment"},lolcode:{title:"LOLCODE",owner:"Golmote"},lua:{title:"Lua",owner:"Golmote"},magma:{title:"Magma (CAS)",owner:"RunDevelopment"},makefile:{title:"Makefile",owner:"Golmote"},markdown:{title:"Markdown",require:"markup",optional:"yaml",alias:"md",owner:"Golmote"},"markup-templating":{title:"Markup templating",require:"markup",owner:"Golmote"},mata:{title:"Mata",owner:"RunDevelopment"},matlab:{title:"MATLAB",owner:"Golmote"},maxscript:{title:"MAXScript",owner:"RunDevelopment"},mel:{title:"MEL",owner:"Golmote"},mermaid:{title:"Mermaid",owner:"RunDevelopment"},metafont:{title:"METAFONT",owner:"LaeriExNihilo"},mizar:{title:"Mizar",owner:"Golmote"},mongodb:{title:"MongoDB",owner:"airs0urce",require:"javascript"},monkey:{title:"Monkey",owner:"Golmote"},moonscript:{title:"MoonScript",alias:"moon",owner:"RunDevelopment"},n1ql:{title:"N1QL",owner:"TMWilds"},n4js:{title:"N4JS",require:"javascript",optional:"jsdoc",alias:"n4jsd",owner:"bsmith-n4"},"nand2tetris-hdl":{title:"Nand To Tetris HDL",owner:"stephanmax"},naniscript:{title:"Naninovel Script",owner:"Elringus",alias:"nani"},nasm:{title:"NASM",owner:"rbmj"},neon:{title:"NEON",owner:"nette"},nevod:{title:"Nevod",owner:"nezaboodka"},nginx:{title:"nginx",owner:"volado"},nim:{title:"Nim",owner:"Golmote"},nix:{title:"Nix",owner:"Golmote"},nsis:{title:"NSIS",owner:"idleberg"},objectivec:{title:"Objective-C",require:"c",alias:"objc",owner:"uranusjr"},ocaml:{title:"OCaml",owner:"Golmote"},odin:{title:"Odin",owner:"edukisto"},opencl:{title:"OpenCL",require:"c",modify:["c","cpp"],owner:"Milania1"},openqasm:{title:"OpenQasm",alias:"qasm",owner:"RunDevelopment"},oz:{title:"Oz",owner:"Golmote"},parigp:{title:"PARI/GP",owner:"Golmote"},parser:{title:"Parser",require:"markup",owner:"Golmote"},pascal:{title:"Pascal",alias:"objectpascal",aliasTitles:{objectpascal:"Object Pascal"},owner:"Golmote"},pascaligo:{title:"Pascaligo",owner:"DefinitelyNotAGoat"},psl:{title:"PATROL Scripting Language",owner:"bertysentry"},pcaxis:{title:"PC-Axis",alias:"px",owner:"RunDevelopment"},peoplecode:{title:"PeopleCode",alias:"pcode",owner:"RunDevelopment"},perl:{title:"Perl",owner:"Golmote"},php:{title:"PHP",require:"markup-templating",owner:"milesj"},phpdoc:{title:"PHPDoc",require:["php","javadoclike"],modify:"php",owner:"RunDevelopment"},"php-extras":{title:"PHP Extras",require:"php",modify:"php",owner:"milesj"},"plant-uml":{title:"PlantUML",alias:"plantuml",owner:"RunDevelopment"},plsql:{title:"PL/SQL",require:"sql",owner:"Golmote"},powerquery:{title:"PowerQuery",alias:["pq","mscript"],owner:"peterbud"},powershell:{title:"PowerShell",owner:"nauzilus"},processing:{title:"Processing",require:"clike",owner:"Golmote"},prolog:{title:"Prolog",owner:"Golmote"},promql:{title:"PromQL",owner:"arendjr"},properties:{title:".properties",owner:"Golmote"},protobuf:{title:"Protocol Buffers",require:"clike",owner:"just-boris"},pug:{title:"Pug",require:["markup","javascript"],optional:["coffeescript","ejs","handlebars","less","livescript","markdown","scss","stylus","twig"],owner:"Golmote"},puppet:{title:"Puppet",owner:"Golmote"},pure:{title:"Pure",optional:["c","cpp","fortran"],owner:"Golmote"},purebasic:{title:"PureBasic",require:"clike",alias:"pbfasm",owner:"HeX0R101"},purescript:{title:"PureScript",require:"haskell",alias:"purs",owner:"sriharshachilakapati"},python:{title:"Python",alias:"py",owner:"multipetros"},qsharp:{title:"Q#",require:"clike",alias:"qs",owner:"fedonman"},q:{title:"Q (kdb+ database)",owner:"Golmote"},qml:{title:"QML",require:"javascript",owner:"RunDevelopment"},qore:{title:"Qore",require:"clike",owner:"temnroegg"},r:{title:"R",owner:"Golmote"},racket:{title:"Racket",require:"scheme",alias:"rkt",owner:"RunDevelopment"},cshtml:{title:"Razor C#",alias:"razor",require:["markup","csharp"],optional:["css","css-extras","javascript","js-extras"],owner:"RunDevelopment"},jsx:{title:"React JSX",require:["markup","javascript"],optional:["jsdoc","js-extras","js-templates"],owner:"vkbansal"},tsx:{title:"React TSX",require:["jsx","typescript"]},reason:{title:"Reason",require:"clike",owner:"Golmote"},regex:{title:"Regex",owner:"RunDevelopment"},rego:{title:"Rego",owner:"JordanSh"},renpy:{title:"Ren'py",alias:"rpy",owner:"HyuchiaDiego"},rescript:{title:"ReScript",alias:"res",owner:"vmarcosp"},rest:{title:"reST (reStructuredText)",owner:"Golmote"},rip:{title:"Rip",owner:"ravinggenius"},roboconf:{title:"Roboconf",owner:"Golmote"},robotframework:{title:"Robot Framework",alias:"robot",owner:"RunDevelopment"},ruby:{title:"Ruby",require:"clike",alias:"rb",owner:"samflores"},rust:{title:"Rust",owner:"Golmote"},sas:{title:"SAS",optional:["groovy","lua","sql"],owner:"Golmote"},sass:{title:"Sass (Sass)",require:"css",optional:"css-extras",owner:"Golmote"},scss:{title:"Sass (SCSS)",require:"css",optional:"css-extras",owner:"MoOx"},scala:{title:"Scala",require:"java",owner:"jozic"},scheme:{title:"Scheme",owner:"bacchus123"},"shell-session":{title:"Shell session",require:"bash",alias:["sh-session","shellsession"],owner:"RunDevelopment"},smali:{title:"Smali",owner:"RunDevelopment"},smalltalk:{title:"Smalltalk",owner:"Golmote"},smarty:{title:"Smarty",require:"markup-templating",optional:"php",owner:"Golmote"},sml:{title:"SML",alias:"smlnj",aliasTitles:{smlnj:"SML/NJ"},owner:"RunDevelopment"},solidity:{title:"Solidity (Ethereum)",alias:"sol",require:"clike",owner:"glachaud"},"solution-file":{title:"Solution file",alias:"sln",owner:"RunDevelopment"},soy:{title:"Soy (Closure Template)",require:"markup-templating",owner:"Golmote"},sparql:{title:"SPARQL",require:"turtle",owner:"Triply-Dev",alias:"rq"},"splunk-spl":{title:"Splunk SPL",owner:"RunDevelopment"},sqf:{title:"SQF: Status Quo Function (Arma 3)",require:"clike",owner:"RunDevelopment"},sql:{title:"SQL",owner:"multipetros"},squirrel:{title:"Squirrel",require:"clike",owner:"RunDevelopment"},stan:{title:"Stan",owner:"RunDevelopment"},stata:{title:"Stata Ado",require:["mata","java","python"],owner:"RunDevelopment"},iecst:{title:"Structured Text (IEC 61131-3)",owner:"serhioromano"},stylus:{title:"Stylus",owner:"vkbansal"},supercollider:{title:"SuperCollider",alias:"sclang",owner:"RunDevelopment"},swift:{title:"Swift",owner:"chrischares"},systemd:{title:"Systemd configuration file",owner:"RunDevelopment"},"t4-templating":{title:"T4 templating",owner:"RunDevelopment"},"t4-cs":{title:"T4 Text Templates (C#)",require:["t4-templating","csharp"],alias:"t4",owner:"RunDevelopment"},"t4-vb":{title:"T4 Text Templates (VB)",require:["t4-templating","vbnet"],owner:"RunDevelopment"},tap:{title:"TAP",owner:"isaacs",require:"yaml"},tcl:{title:"Tcl",owner:"PeterChaplin"},tt2:{title:"Template Toolkit 2",require:["clike","markup-templating"],owner:"gflohr"},textile:{title:"Textile",require:"markup",optional:"css",owner:"Golmote"},toml:{title:"TOML",owner:"RunDevelopment"},tremor:{title:"Tremor",alias:["trickle","troy"],owner:"darach",aliasTitles:{trickle:"trickle",troy:"troy"}},turtle:{title:"Turtle",alias:"trig",aliasTitles:{trig:"TriG"},owner:"jakubklimek"},twig:{title:"Twig",require:"markup-templating",owner:"brandonkelly"},typescript:{title:"TypeScript",require:"javascript",optional:"js-templates",alias:"ts",owner:"vkbansal"},typoscript:{title:"TypoScript",alias:"tsconfig",aliasTitles:{tsconfig:"TSConfig"},owner:"dkern"},unrealscript:{title:"UnrealScript",alias:["uscript","uc"],owner:"RunDevelopment"},uorazor:{title:"UO Razor Script",owner:"jaseowns"},uri:{title:"URI",alias:"url",aliasTitles:{url:"URL"},owner:"RunDevelopment"},v:{title:"V",require:"clike",owner:"taggon"},vala:{title:"Vala",require:"clike",optional:"regex",owner:"TemplarVolk"},vbnet:{title:"VB.Net",require:"basic",owner:"Bigsby"},velocity:{title:"Velocity",require:"markup",owner:"Golmote"},verilog:{title:"Verilog",owner:"a-rey"},vhdl:{title:"VHDL",owner:"a-rey"},vim:{title:"vim",owner:"westonganger"},"visual-basic":{title:"Visual Basic",alias:["vb","vba"],aliasTitles:{vba:"VBA"},owner:"Golmote"},warpscript:{title:"WarpScript",owner:"RunDevelopment"},wasm:{title:"WebAssembly",owner:"Golmote"},"web-idl":{title:"Web IDL",alias:"webidl",owner:"RunDevelopment"},wgsl:{title:"WGSL",owner:"Dr4gonthree"},wiki:{title:"Wiki markup",require:"markup",owner:"Golmote"},wolfram:{title:"Wolfram language",alias:["mathematica","nb","wl"],aliasTitles:{mathematica:"Mathematica",nb:"Mathematica Notebook"},owner:"msollami"},wren:{title:"Wren",owner:"clsource"},xeora:{title:"Xeora",require:"markup",alias:"xeoracube",aliasTitles:{xeoracube:"XeoraCube"},owner:"freakmaxi"},"xml-doc":{title:"XML doc (.net)",require:"markup",modify:["csharp","fsharp","vbnet"],owner:"RunDevelopment"},xojo:{title:"Xojo (REALbasic)",owner:"Golmote"},xquery:{title:"XQuery",require:"markup",owner:"Golmote"},yaml:{title:"YAML",alias:"yml",owner:"hason"},yang:{title:"YANG",owner:"RunDevelopment"},zig:{title:"Zig",owner:"RunDevelopment"}},plugins:{meta:{path:"plugins/{id}/prism-{id}",link:"plugins/{id}/"},"line-highlight":{title:"Line Highlight",description:"Highlights specific lines and/or line ranges."},"line-numbers":{title:"Line Numbers",description:"Line number at the beginning of code lines.",owner:"kuba-kubula"},"show-invisibles":{title:"Show Invisibles",description:"Show hidden characters such as tabs and line breaks.",optional:["autolinker","data-uri-highlight"]},autolinker:{title:"Autolinker",description:"Converts URLs and emails in code to clickable links. Parses Markdown links in comments."},wpd:{title:"WebPlatform Docs",description:'Makes tokens link to WebPlatform.org documentation. The links open in a new tab.'},"custom-class":{title:"Custom Class",description:"This plugin allows you to prefix Prism's default classes (.comment can become .namespace--comment) or replace them with your defined ones (like .editor__comment). You can even add new classes.",owner:"dvkndn",noCSS:!0},"file-highlight":{title:"File Highlight",description:"Fetch external files and highlight them with Prism. Used on the Prism website itself.",noCSS:!0},"show-language":{title:"Show Language",description:"Display the highlighted language in code blocks (inline code does not show the label).",owner:"nauzilus",noCSS:!0,require:"toolbar"},"jsonp-highlight":{title:"JSONP Highlight",description:"Fetch content with JSONP and highlight some interesting content (e.g. GitHub/Gists or Bitbucket API).",noCSS:!0,owner:"nauzilus"},"highlight-keywords":{title:"Highlight Keywords",description:"Adds special CSS classes for each keyword for fine-grained highlighting.",owner:"vkbansal",noCSS:!0},"remove-initial-line-feed":{title:"Remove initial line feed",description:"Removes the initial line feed in code blocks.",owner:"Golmote",noCSS:!0},"inline-color":{title:"Inline color",description:"Adds a small inline preview for colors in style sheets.",require:"css-extras",owner:"RunDevelopment"},previewers:{title:"Previewers",description:"Previewers for angles, colors, gradients, easing and time.",require:"css-extras",owner:"Golmote"},autoloader:{title:"Autoloader",description:"Automatically loads the needed languages to highlight the code blocks.",owner:"Golmote",noCSS:!0},"keep-markup":{title:"Keep Markup",description:"Prevents custom markup from being dropped out during highlighting.",owner:"Golmote",optional:"normalize-whitespace",noCSS:!0},"command-line":{title:"Command Line",description:"Display a command line with a prompt and, optionally, the output/response from the commands.",owner:"chriswells0"},"unescaped-markup":{title:"Unescaped Markup",description:"Write markup without having to escape anything."},"normalize-whitespace":{title:"Normalize Whitespace",description:"Supports multiple operations to normalize whitespace in code blocks.",owner:"zeitgeist87",optional:"unescaped-markup",noCSS:!0},"data-uri-highlight":{title:"Data-URI Highlight",description:"Highlights data-URI contents.",owner:"Golmote",noCSS:!0},toolbar:{title:"Toolbar",description:"Attach a toolbar for plugins to easily register buttons on the top of a code block.",owner:"mAAdhaTTah"},"copy-to-clipboard":{title:"Copy to Clipboard Button",description:"Add a button that copies the code block to the clipboard when clicked.",owner:"mAAdhaTTah",require:"toolbar",noCSS:!0},"download-button":{title:"Download Button",description:"A button in the toolbar of a code block adding a convenient way to download a code file.",owner:"Golmote",require:"toolbar",noCSS:!0},"match-braces":{title:"Match braces",description:"Highlights matching braces.",owner:"RunDevelopment"},"diff-highlight":{title:"Diff Highlight",description:"Highlights the code inside diff blocks.",owner:"RunDevelopment",require:"diff"},"filter-highlight-all":{title:"Filter highlightAll",description:"Filters the elements the highlightAll and highlightAllUnder methods actually highlight.",owner:"RunDevelopment",noCSS:!0},treeview:{title:"Treeview",description:"A language with special styles to highlight file system tree structures.",owner:"Golmote"}}})},8722:(e,t,n)=>{const r=n(6969),o=n(8380),a=new Set;function i(e){void 0===e?e=Object.keys(r.languages).filter((e=>"meta"!=e)):Array.isArray(e)||(e=[e]);const t=[...a,...Object.keys(Prism.languages)];o(r,e,t).load((e=>{if(!(e in r.languages))return void(i.silent||console.warn("Language does not exist: "+e));const t="./prism-"+e;delete n.c[n(3157).resolve(t)],delete Prism.languages[e],n(3157)(t),a.add(e)}))}i.silent=!1,e.exports=i},9700:()=>{!function(e){function t(e,t){return"___"+e.toUpperCase()+t+"___"}Object.defineProperties(e.languages["markup-templating"]={},{buildPlaceholders:{value:function(n,r,o,a){if(n.language===r){var i=n.tokenStack=[];n.code=n.code.replace(o,(function(e){if("function"==typeof a&&!a(e))return e;for(var o,s=i.length;-1!==n.code.indexOf(o=t(r,s));)++s;return i[s]=e,o})),n.grammar=e.languages.markup}}},tokenizePlaceholders:{value:function(n,r){if(n.language===r&&n.tokenStack){n.grammar=e.languages[r];var o=0,a=Object.keys(n.tokenStack);!function i(s){for(var l=0;l=a.length);l++){var u=s[l];if("string"==typeof u||u.content&&"string"==typeof u.content){var c=a[o],d=n.tokenStack[c],p="string"==typeof u?u:u.content,f=t(r,c),h=p.indexOf(f);if(h>-1){++o;var m=p.substring(0,h),g=new e.Token(r,e.tokenize(d,n.grammar),"language-"+r,d),y=p.substring(h+f.length),b=[];m&&b.push.apply(b,i([m])),b.push(g),y&&b.push.apply(b,i([y])),"string"==typeof u?s.splice.apply(s,[l,1].concat(b)):u.content=b}}else u.content&&i(u.content)}return s}(n.tokens)}}}})}(Prism)},8692:(e,t,n)=>{var r={"./":8722};function o(e){var t=a(e);return n(t)}function a(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}o.keys=function(){return Object.keys(r)},o.resolve=a,e.exports=o,o.id=8692},3157:(e,t,n)=>{var r={"./":8722};function o(e){var t=a(e);return n(t)}function a(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}o.keys=function(){return Object.keys(r)},o.resolve=a,e.exports=o,o.id=3157},8380:e=>{"use strict";var t=function(){var e=function(){};function t(e,t){Array.isArray(e)?e.forEach(t):null!=e&&t(e,0)}function n(e){for(var t={},n=0,r=e.length;n "));var s={},l=e[r];if(l){function u(t){if(!(t in e))throw new Error(r+" depends on an unknown component "+t);if(!(t in s))for(var i in o(t,a),s[t]=!0,n[t])s[i]=!0}t(l.require,u),t(l.optional,u),t(l.modify,u)}n[r]=s,a.pop()}}return function(e){var t=n[e];return t||(o(e,r),t=n[e]),t}}function o(e){for(var t in e)return!0;return!1}return function(a,i,s){var l=function(e){var t={};for(var n in e){var r=e[n];for(var o in r)if("meta"!=o){var a=r[o];t[o]="string"==typeof a?{title:a}:a}}return t}(a),u=function(e){var n;return function(r){if(r in e)return r;if(!n)for(var o in n={},e){var a=e[o];t(a&&a.alias,(function(t){if(t in n)throw new Error(t+" cannot be alias for both "+o+" and "+n[t]);if(t in e)throw new Error(t+" cannot be alias of "+o+" because it is a component.");n[t]=o}))}return n[r]||r}}(l);i=i.map(u),s=(s||[]).map(u);var c=n(i),d=n(s);i.forEach((function e(n){var r=l[n];t(r&&r.require,(function(t){t in d||(c[t]=!0,e(t))}))}));for(var p,f=r(l),h=c;o(h);){for(var m in p={},h){var g=l[m];t(g&&g.modify,(function(e){e in d&&(p[e]=!0)}))}for(var y in d)if(!(y in c))for(var b in f(y))if(b in c){p[y]=!0;break}for(var v in h=p)c[v]=!0}var w={getIds:function(){var e=[];return w.load((function(t){e.push(t)})),e},load:function(t,n){return function(t,n,r,o){var a=o?o.series:void 0,i=o?o.parallel:e,s={},l={};function u(e){if(e in s)return s[e];l[e]=!0;var o,c=[];for(var d in t(e))d in n&&c.push(d);if(0===c.length)o=r(e);else{var p=i(c.map((function(e){var t=u(e);return delete l[e],t})));a?o=a(p,(function(){return r(e)})):r(e)}return s[e]=o}for(var c in n)u(c);var d=[];for(var p in l)d.push(s[p]);return i(d)}(f,c,t,n)}};return w}}();e.exports=t},2694:(e,t,n)=>{"use strict";var r=n(6925);function o(){}function a(){}a.resetWarningCache=o,e.exports=function(){function e(e,t,n,o,a,i){if(i!==r){var s=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw s.name="Invariant Violation",s}}function t(){return e}e.isRequired=e;var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:a,resetWarningCache:o};return n.PropTypes=n,n}},5556:(e,t,n)=>{e.exports=n(2694)()},6925:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},2551:(e,t,n)=>{"use strict";var r=n(6540),o=n(9982);function a(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n