diff --git a/.DS_Store b/.DS_Store deleted file mode 100644 index 6791b07..0000000 Binary files a/.DS_Store and /dev/null differ diff --git a/404.html b/404.html index ec9b6e1..986e792 100644 --- a/404.html +++ b/404.html @@ -4,13 +4,13 @@ Page Not Found | UF OSC Docs - - + +
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.

- - + + \ No newline at end of file diff --git a/CNAME b/CNAME deleted file mode 100644 index 51b79d0..0000000 --- a/CNAME +++ /dev/null @@ -1 +0,0 @@ -docs.ufosc.org \ No newline at end of file diff --git a/assets/js/09bcfcee.68e774df.js b/assets/js/09bcfcee.68e774df.js new file mode 100644 index 0000000..7199966 --- /dev/null +++ b/assets/js/09bcfcee.68e774df.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[3800],{3905:(e,r,t)=>{t.d(r,{Zo:()=>s,kt:()=>f});var o=t(7294);function n(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function a(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,o)}return t}function l(e){for(var r=1;r=0||(n[t]=e[t]);return n}(e,r);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(n[t]=e[t])}return n}var i=o.createContext({}),p=function(e){var r=o.useContext(i),t=r;return e&&(t="function"==typeof e?e(r):l(l({},r),e)),t},s=function(e){var r=p(e.components);return o.createElement(i.Provider,{value:r},e.children)},m="mdxType",u={inlineCode:"code",wrapper:function(e){var r=e.children;return o.createElement(o.Fragment,{},r)}},d=o.forwardRef((function(e,r){var t=e.components,n=e.mdxType,a=e.originalType,i=e.parentName,s=c(e,["components","mdxType","originalType","parentName"]),m=p(t),d=n,f=m["".concat(i,".").concat(d)]||m[d]||u[d]||a;return t?o.createElement(f,l(l({ref:r},s),{},{components:t})):o.createElement(f,l({ref:r},s))}));function f(e,r){var t=arguments,n=r&&r.mdxType;if("string"==typeof e||n){var a=t.length,l=new Array(a);l[0]=d;var c={};for(var i in r)hasOwnProperty.call(r,i)&&(c[i]=r[i]);c.originalType=e,c[m]="string"==typeof e?e:n,l[1]=c;for(var p=2;p{t.r(r),t.d(r,{assets:()=>i,contentTitle:()=>l,default:()=>u,frontMatter:()=>a,metadata:()=>c,toc:()=>p});var o=t(7462),n=(t(7294),t(3905));const a={title:"Alarm Clock Promo",description:"Club Archive 2023-2024 Alarm Clock Promo",sidebar_position:2},l="Alarm Clock Project Promotional Video",c={unversionedId:"2023-2024/alarm-clock-promo-09-12-23",id:"2023-2024/alarm-clock-promo-09-12-23",title:"Alarm Clock Promo",description:"Club Archive 2023-2024 Alarm Clock Promo",source:"@site/docs/club/2023-2024/alarm-clock-promo-09-12-23.md",sourceDirName:"2023-2024",slug:"/2023-2024/alarm-clock-promo-09-12-23",permalink:"/docs/club/2023-2024/alarm-clock-promo-09-12-23",draft:!1,editUrl:"https://github.com/ufosc/osc-docs/blob/main/docs/club/2023-2024/alarm-clock-promo-09-12-23.md",tags:[],version:"current",sidebarPosition:2,frontMatter:{title:"Alarm Clock Promo",description:"Club Archive 2023-2024 Alarm Clock Promo",sidebar_position:2},sidebar:"defaultSidebar",previous:{title:"Fall GBM 1 (09/06/23)",permalink:"/docs/club/2023-2024/fall-gbm-09-06-2023"},next:{title:"Fall GBM 1 (09/07/22)",permalink:"/docs/club/2022-2023/fall-gbm-09-07-2022"}},i={},p=[],s={toc:p},m="wrapper";function u(e){let{components:r,...t}=e;return(0,n.kt)(m,(0,o.Z)({},s,t,{components:r,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"alarm-clock-project-promotional-video"},"Alarm Clock Project Promotional Video"),(0,n.kt)("iframe",{src:"https://drive.google.com/file/d/1pvhRZO07yqyJsc9T9G8E_eesmJIcPKpY/preview",width:"640",height:"480",allow:"autoplay"}),(0,n.kt)("p",null,"Alarm clock was a unanimously beloved project proposal for the creation of an unethical alarm clock app. The premise was to create a high-stakes alarm clock that would force you to solve leetcode problems, threaten to call your parents, order food to your house, etc., if you didn't wake up."),(0,n.kt)("p",null,"It was proposed twice in 2023, first during the Spring semester, and later in Fall. This was a promotional video meant to encourage people to vote for the project. Ultimately, the project was not selected."))}u.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/da93d01d.13cc159b.js b/assets/js/0db9820b.a618e7d6.js similarity index 65% rename from assets/js/da93d01d.13cc159b.js rename to assets/js/0db9820b.a618e7d6.js index 91501cc..885dce5 100644 --- a/assets/js/da93d01d.13cc159b.js +++ b/assets/js/0db9820b.a618e7d6.js @@ -1 +1 @@ -"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[4385],{9229:s=>{s.exports=JSON.parse('{"name":"docusaurus-plugin-content-docs","id":"swamp-scheduler"}')}}]); \ No newline at end of file +"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[9372],{9229:s=>{s.exports=JSON.parse('{"name":"docusaurus-plugin-content-docs","id":"swamp-scheduler"}')}}]); \ No newline at end of file diff --git a/assets/js/15cb8006.8cb96649.js b/assets/js/15cb8006.8cb96649.js new file mode 100644 index 0000000..5471a5e --- /dev/null +++ b/assets/js/15cb8006.8cb96649.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[2688],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>b});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function l(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var i=n.createContext({}),s=function(e){var t=n.useContext(i),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},p=function(e){var t=s(e.components);return n.createElement(i.Provider,{value:t},e.children)},u="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,l=e.originalType,i=e.parentName,p=c(e,["components","mdxType","originalType","parentName"]),u=s(r),m=o,b=u["".concat(i,".").concat(m)]||u[m]||f[m]||l;return r?n.createElement(b,a(a({ref:t},p),{},{components:r})):n.createElement(b,a({ref:t},p))}));function b(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var l=r.length,a=new Array(l);a[0]=m;var c={};for(var i in t)hasOwnProperty.call(t,i)&&(c[i]=t[i]);c.originalType=e,c[u]="string"==typeof e?e:o,a[1]=c;for(var s=2;s{r.r(t),r.d(t,{assets:()=>i,contentTitle:()=>a,default:()=>f,frontMatter:()=>l,metadata:()=>c,toc:()=>s});var n=r(7462),o=(r(7294),r(3905));const l={title:"Fall GBM 1 (09/11/19)",description:"Club Archive 2019-2020 Fall GBM",sidebar_position:1},a="Fall GBM 1 (09/11/19)",c={unversionedId:"2019-2020/fall-gbm-09-11-19",id:"2019-2020/fall-gbm-09-11-19",title:"Fall GBM 1 (09/11/19)",description:"Club Archive 2019-2020 Fall GBM",source:"@site/docs/club/2019-2020/fall-gbm-09-11-19.md",sourceDirName:"2019-2020",slug:"/2019-2020/fall-gbm-09-11-19",permalink:"/docs/club/2019-2020/fall-gbm-09-11-19",draft:!1,editUrl:"https://github.com/ufosc/osc-docs/blob/main/docs/club/2019-2020/fall-gbm-09-11-19.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{title:"Fall GBM 1 (09/11/19)",description:"Club Archive 2019-2020 Fall GBM",sidebar_position:1},sidebar:"defaultSidebar",previous:{title:"NLP Workshop",permalink:"/docs/club/2021-2022/NLP-workshop"},next:{title:"Fall GBM 2 (09/29/19)",permalink:"/docs/club/2019-2020/fall-gbm-09-29-19"}},i={},s=[],p={toc:s},u="wrapper";function f(e){let{components:t,...r}=e;return(0,o.kt)(u,(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"fall-gbm-1-091119"},"Fall GBM 1 (09/11/19)"),(0,o.kt)("iframe",{src:"https://docs.google.com/presentation/d/e/2PACX-1vS1AnXrC0myt8_Uoylxjzeii95pnfh-cc2QKf_q9xqC5bYC6w6tvns6e-42Bw44mOBUiL6GEm852Pcy/embed?start=false&loop=false&delayms=3000",frameborder:"0",width:"480",height:"299",allowfullscreen:"true",mozallowfullscreen:"true",webkitallowfullscreen:"true"}),(0,o.kt)("p",null,"This presentation is also available on ",(0,o.kt)("a",{parentName:"p",href:"https://docs.google.com/presentation/d/1ncqtyzmEkxMV9SFqOlQoSAZP_AZKRBmIeV4GRlDCbvQ/edit?usp=sharing"},"Google Slides"),"."))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/3c19d342.873900d4.js b/assets/js/3c19d342.873900d4.js new file mode 100644 index 0000000..f2c9a80 --- /dev/null +++ b/assets/js/3c19d342.873900d4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[123],{6644:s=>{s.exports=JSON.parse('{"name":"docusaurus-plugin-content-docs","id":"website"}')}}]); \ No newline at end of file diff --git a/assets/js/409871ed.4a35abaf.js b/assets/js/409871ed.7dbe8a78.js similarity index 57% rename from assets/js/409871ed.4a35abaf.js rename to assets/js/409871ed.7dbe8a78.js index 55455bc..48b58e2 100644 --- a/assets/js/409871ed.4a35abaf.js +++ b/assets/js/409871ed.7dbe8a78.js @@ -1 +1 @@ -"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[5832],{3905:(e,r,t)=>{t.d(r,{Zo:()=>l,kt:()=>b});var o=t(7294);function n(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function c(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,o)}return t}function i(e){for(var r=1;r=0||(n[t]=e[t]);return n}(e,r);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(n[t]=e[t])}return n}var s=o.createContext({}),p=function(e){var r=o.useContext(s),t=r;return e&&(t="function"==typeof e?e(r):i(i({},r),e)),t},l=function(e){var r=p(e.components);return o.createElement(s.Provider,{value:r},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var r=e.children;return o.createElement(o.Fragment,{},r)}},f=o.forwardRef((function(e,r){var t=e.components,n=e.mdxType,c=e.originalType,s=e.parentName,l=a(e,["components","mdxType","originalType","parentName"]),u=p(t),f=n,b=u["".concat(s,".").concat(f)]||u[f]||d[f]||c;return t?o.createElement(b,i(i({ref:r},l),{},{components:t})):o.createElement(b,i({ref:r},l))}));function b(e,r){var t=arguments,n=r&&r.mdxType;if("string"==typeof e||n){var c=t.length,i=new Array(c);i[0]=f;var a={};for(var s in r)hasOwnProperty.call(r,s)&&(a[s]=r[s]);a.originalType=e,a[u]="string"==typeof e?e:n,i[1]=a;for(var p=2;p{t.r(r),t.d(r,{assets:()=>s,contentTitle:()=>i,default:()=>d,frontMatter:()=>c,metadata:()=>a,toc:()=>p});var o=t(7462),n=(t(7294),t(3905));const c={title:"NLP Workshop",description:"Club Archive 2021-2022 NLP Workshop",sidebar_position:8},i="NLP Workshop",a={unversionedId:"2021-2022/NLP-workshop",id:"2021-2022/NLP-workshop",title:"NLP Workshop",description:"Club Archive 2021-2022 NLP Workshop",source:"@site/docs/club/2021-2022/NLP-workshop.md",sourceDirName:"2021-2022",slug:"/2021-2022/NLP-workshop",permalink:"/docs/club/2021-2022/NLP-workshop",draft:!1,editUrl:"https://github.com/ufosc/osc-docs/blob/main/docs/club/2021-2022/NLP-workshop.md",tags:[],version:"current",sidebarPosition:8,frontMatter:{title:"NLP Workshop",description:"Club Archive 2021-2022 NLP Workshop",sidebar_position:8},sidebar:"defaultSidebar",previous:{title:"Swamphacks SQL Workshop",permalink:"/docs/club/2021-2022/swamphacks-sql-01-30-22"},next:{title:"Bash Guide",permalink:"/docs/club/resources/bash"}},s={},p=[],l={toc:p},u="wrapper";function d(e){let{components:r,...t}=e;return(0,n.kt)(u,(0,o.Z)({},l,t,{components:r,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"nlp-workshop"},"NLP Workshop"),(0,n.kt)("p",null,"Natural Language Processing workshop.\nRecording available ",(0,n.kt)("a",{parentName:"p",href:"https://drive.google.com/file/d/1MqGTEvw31Q0H7JqMd-A_lixmlJNn26en/view?usp=sharing"},"here"),"."))}d.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[5832],{3905:(e,r,t)=>{t.d(r,{Zo:()=>l,kt:()=>b});var o=t(7294);function n(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}function c(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter((function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable}))),t.push.apply(t,o)}return t}function a(e){for(var r=1;r=0||(n[t]=e[t]);return n}(e,r);if(Object.getOwnPropertySymbols){var c=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(n[t]=e[t])}return n}var s=o.createContext({}),p=function(e){var r=o.useContext(s),t=r;return e&&(t="function"==typeof e?e(r):a(a({},r),e)),t},l=function(e){var r=p(e.components);return o.createElement(s.Provider,{value:r},e.children)},u="mdxType",f={inlineCode:"code",wrapper:function(e){var r=e.children;return o.createElement(o.Fragment,{},r)}},d=o.forwardRef((function(e,r){var t=e.components,n=e.mdxType,c=e.originalType,s=e.parentName,l=i(e,["components","mdxType","originalType","parentName"]),u=p(t),d=n,b=u["".concat(s,".").concat(d)]||u[d]||f[d]||c;return t?o.createElement(b,a(a({ref:r},l),{},{components:t})):o.createElement(b,a({ref:r},l))}));function b(e,r){var t=arguments,n=r&&r.mdxType;if("string"==typeof e||n){var c=t.length,a=new Array(c);a[0]=d;var i={};for(var s in r)hasOwnProperty.call(r,s)&&(i[s]=r[s]);i.originalType=e,i[u]="string"==typeof e?e:n,a[1]=i;for(var p=2;p{t.r(r),t.d(r,{assets:()=>s,contentTitle:()=>a,default:()=>f,frontMatter:()=>c,metadata:()=>i,toc:()=>p});var o=t(7462),n=(t(7294),t(3905));const c={title:"NLP Workshop",description:"Club Archive 2021-2022 NLP Workshop",sidebar_position:8},a="NLP Workshop",i={unversionedId:"2021-2022/NLP-workshop",id:"2021-2022/NLP-workshop",title:"NLP Workshop",description:"Club Archive 2021-2022 NLP Workshop",source:"@site/docs/club/2021-2022/NLP-workshop.md",sourceDirName:"2021-2022",slug:"/2021-2022/NLP-workshop",permalink:"/docs/club/2021-2022/NLP-workshop",draft:!1,editUrl:"https://github.com/ufosc/osc-docs/blob/main/docs/club/2021-2022/NLP-workshop.md",tags:[],version:"current",sidebarPosition:8,frontMatter:{title:"NLP Workshop",description:"Club Archive 2021-2022 NLP Workshop",sidebar_position:8},sidebar:"defaultSidebar",previous:{title:"Swamphacks SQL Workshop",permalink:"/docs/club/2021-2022/swamphacks-sql-01-30-22"},next:{title:"Fall GBM 1 (09/11/19)",permalink:"/docs/club/2019-2020/fall-gbm-09-11-19"}},s={},p=[],l={toc:p},u="wrapper";function f(e){let{components:r,...t}=e;return(0,n.kt)(u,(0,o.Z)({},l,t,{components:r,mdxType:"MDXLayout"}),(0,n.kt)("h1",{id:"nlp-workshop"},"NLP Workshop"),(0,n.kt)("p",null,"Natural Language Processing workshop.\nRecording available ",(0,n.kt)("a",{parentName:"p",href:"https://drive.google.com/file/d/1MqGTEvw31Q0H7JqMd-A_lixmlJNn26en/view?usp=sharing"},"here"),"."))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/4a5926c2.1ce0a47c.js b/assets/js/4a5926c2.1ce0a47c.js new file mode 100644 index 0000000..94f60ff --- /dev/null +++ b/assets/js/4a5926c2.1ce0a47c.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[6517],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>h});var i=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function a(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var l=i.createContext({}),u=function(e){var t=i.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},c=function(e){var t=u(e.components);return i.createElement(l.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},m=i.forwardRef((function(e,t){var n=e.components,r=e.mdxType,o=e.originalType,l=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),p=u(n),m=r,h=p["".concat(l,".").concat(m)]||p[m]||d[m]||o;return n?i.createElement(h,a(a({ref:t},c),{},{components:n})):i.createElement(h,a({ref:t},c))}));function h(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=n.length,a=new Array(o);a[0]=m;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[p]="string"==typeof e?e:r,a[1]=s;for(var u=2;u{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>a,default:()=>d,frontMatter:()=>o,metadata:()=>s,toc:()=>u});var i=n(7462),r=(n(7294),n(3905));const o={title:"Bash Guide",description:"Club Archive Resources Bash Guide",sidebar_position:0},a=void 0,s={unversionedId:"resources/bash",id:"resources/bash",title:"Bash Guide",description:"Club Archive Resources Bash Guide",source:"@site/docs/club/resources/bash.md",sourceDirName:"resources",slug:"/resources/bash",permalink:"/docs/club/resources/bash",draft:!1,editUrl:"https://github.com/ufosc/osc-docs/blob/main/docs/club/resources/bash.md",tags:[],version:"current",sidebarPosition:0,frontMatter:{title:"Bash Guide",description:"Club Archive Resources Bash Guide",sidebar_position:0},sidebar:"defaultSidebar",previous:{title:"Fall GBM 2 (09/29/19)",permalink:"/docs/club/2019-2020/fall-gbm-09-29-19"},next:{title:"CSS Guide",permalink:"/docs/club/resources/css"}},l={},u=[{value:"Useful Commands",id:"useful-commands",level:2},{value:"Editing Files in Bash",id:"editing-files-in-bash",level:2},{value:"Resources",id:"resources",level:2}],c={toc:u},p="wrapper";function d(e){let{components:t,...n}=e;return(0,r.kt)(p,(0,i.Z)({},c,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("p",null,'Bash is the most common shell for Unix and Unix like (such as Linux) platforms. The name comes from abbreviating "Bourne Again SHell". It allows a user to "talk" to a computer with a command line (as opposed to the normal GUI) and can be very powerful for scripting tasks.'),(0,r.kt)("p",null,"It takes advantage of many small utilities (like ",(0,r.kt)("inlineCode",{parentName:"p"},"grep"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"curl"),", or ",(0,r.kt)("inlineCode",{parentName:"p"},"find"),") that each perform a specific task. You can navigate your files, download a video, or delete your entire operating system (ProTip: don't try that last one)! In many cases, you can chain together the output of one utility to be the input of another. This can be very powerful."),(0,r.kt)("p",null,"In addition to using the terminal, you can write bash scripts. They are similar to programs you make in other programming languages. It can ve very useful for automating repetitive task."),(0,r.kt)("p",null,"For Windows users, a useful application for emulating a bash terminal and using many of it's utilities is Windows Subsystem for Linux (usually seen as WSL). For more infomation, check the link in Resources below. Also, if you would prefer a distro other than Ubuntu, consider looking into if your machine is compatible with WSL2."),(0,r.kt)("iframe",{width:"500",height:"300",src:"https://www.youtube.com/embed/I4EWvMFj37g",title:"Bash in 100 Seconds",frameborder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",allowfullscreen:!0}),(0,r.kt)("h2",{id:"useful-commands"},"Useful Commands"),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"pwd"),' - "Present Working Directory" - Displays the current directory. Useful for relative pathing.'),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"cd [directory]"),' - "Change Directory" - Changes to the specified directory. Most of the time, you will be using a relative path, but you can also specify an absolute path. Use ".." to go up a level in the filesystem.'),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},'grep "[pattern]"')," - \"Global Regular Expression Print\" - Searches the current and lower directories' files for a given pattern. For example, if you're looking for a function definition, you could use ",(0,r.kt)("inlineCode",{parentName:"p"},'grep "functionName"')," in the project directory."),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"cat [filename(s)]"),' - "Concatenate" - Outputs the contents of the specified file(s). If multiple files are given, their contents will be concatenated together. It\'s often useful to ',(0,r.kt)("a",{parentName:"p",href:"https://askubuntu.com/questions/420981/how-do-i-save-terminal-output-to-a-file"},"pipe")," the output of this command to other commands or files."),(0,r.kt)("h2",{id:"editing-files-in-bash"},"Editing Files in Bash"),(0,r.kt)("p",null,"There are many editors that can be used in bash shells. One of the more commonly found editors in linux distros is GNU nano. If you are used to working on Windows machines, you can think of nano as a much more advanced notepad. It has many useful shortcuts which are displayed at the bottom of the window. If nano is installed in your distro, you can open files with ",(0,r.kt)("inlineCode",{parentName:"p"},"nano [filename]")," if this file does not exist, nano will create a new file with that name. Once you've completed your changes, you can write and quit nano with ",(0,r.kt)("inlineCode",{parentName:"p"},"Ctrl + x"),"."),(0,r.kt)("p",null,"While nano is well suited for smaller edits, a more advanced editor can be found in ",(0,r.kt)("a",{parentName:"p",href:"https://www.vim.org/"},"Vim (Vi Improved)"),". This editor may be confusing for newer users as it has multiple modes and shortcuts that may not be apparent. You can find a good cheatsheet in Resources below. Once Vim is installed on your machine, you can open files similarly to nano with ",(0,r.kt)("inlineCode",{parentName:"p"},"vim [filename]"),". This will put you in at the first line of the file in cursor mode. Be aware, you cannot directly type in the file in this mode. You can navigate to where you'd like to with the arrow keys and from there you can press ",(0,r.kt)("inlineCode",{parentName:"p"},"i")," to begin inserting into the file. Once you've completed your changes, you can write and quit with ",(0,r.kt)("inlineCode",{parentName:"p"},"esc")," to get back to cursor mode and then typing ",(0,r.kt)("inlineCode",{parentName:"p"},":wq"),"."),(0,r.kt)("h2",{id:"resources"},"Resources"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"http://tldp.org/LDP/Bash-Beginners-Guide/html/"},"Terminal and Bash Fundamentals")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://github.com/OSUOSC/command-line-introduction"},"Bash Examples")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://linuxconfig.org/bash-scripting-tutorial"},"Bash Scripting")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"http://info.ee.surrey.ac.uk/Teaching/Unix/index.html"},"Comprehensive Overview of Bash and Unix")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://docs.microsoft.com/en-us/windows/wsl/install-win10"},"Windows Subsystem for Linux")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://docs.microsoft.com/en-us/windows/wsl/wsl2-install"},"WSL2")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://vim.rtorr.com/"},"Vim Cheatsheet"))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/4a5926c2.c4326274.js b/assets/js/4a5926c2.c4326274.js deleted file mode 100644 index ea6721f..0000000 --- a/assets/js/4a5926c2.c4326274.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[6517],{3905:(e,t,n)=>{n.d(t,{Zo:()=>c,kt:()=>h});var i=n(7294);function r(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);t&&(i=i.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,i)}return n}function a(e){for(var t=1;t=0||(r[n]=e[n]);return r}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(i=0;i=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(r[n]=e[n])}return r}var l=i.createContext({}),u=function(e){var t=i.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},c=function(e){var t=u(e.components);return i.createElement(l.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return i.createElement(i.Fragment,{},t)}},m=i.forwardRef((function(e,t){var n=e.components,r=e.mdxType,o=e.originalType,l=e.parentName,c=s(e,["components","mdxType","originalType","parentName"]),p=u(n),m=r,h=p["".concat(l,".").concat(m)]||p[m]||d[m]||o;return n?i.createElement(h,a(a({ref:t},c),{},{components:n})):i.createElement(h,a({ref:t},c))}));function h(e,t){var n=arguments,r=t&&t.mdxType;if("string"==typeof e||r){var o=n.length,a=new Array(o);a[0]=m;var s={};for(var l in t)hasOwnProperty.call(t,l)&&(s[l]=t[l]);s.originalType=e,s[p]="string"==typeof e?e:r,a[1]=s;for(var u=2;u{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>a,default:()=>d,frontMatter:()=>o,metadata:()=>s,toc:()=>u});var i=n(7462),r=(n(7294),n(3905));const o={title:"Bash Guide",description:"Club Archive Resources Bash Guide",sidebar_position:0},a=void 0,s={unversionedId:"resources/bash",id:"resources/bash",title:"Bash Guide",description:"Club Archive Resources Bash Guide",source:"@site/docs/club/resources/bash.md",sourceDirName:"resources",slug:"/resources/bash",permalink:"/docs/club/resources/bash",draft:!1,editUrl:"https://github.com/ufosc/osc-docs/blob/main/docs/club/resources/bash.md",tags:[],version:"current",sidebarPosition:0,frontMatter:{title:"Bash Guide",description:"Club Archive Resources Bash Guide",sidebar_position:0},sidebar:"defaultSidebar",previous:{title:"NLP Workshop",permalink:"/docs/club/2021-2022/NLP-workshop"},next:{title:"CSS Guide",permalink:"/docs/club/resources/css"}},l={},u=[{value:"Useful Commands",id:"useful-commands",level:2},{value:"Editing Files in Bash",id:"editing-files-in-bash",level:2},{value:"Resources",id:"resources",level:2}],c={toc:u},p="wrapper";function d(e){let{components:t,...n}=e;return(0,r.kt)(p,(0,i.Z)({},c,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("p",null,'Bash is the most common shell for Unix and Unix like (such as Linux) platforms. The name comes from abbreviating "Bourne Again SHell". It allows a user to "talk" to a computer with a command line (as opposed to the normal GUI) and can be very powerful for scripting tasks.'),(0,r.kt)("p",null,"It takes advantage of many small utilities (like ",(0,r.kt)("inlineCode",{parentName:"p"},"grep"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"curl"),", or ",(0,r.kt)("inlineCode",{parentName:"p"},"find"),") that each perform a specific task. You can navigate your files, download a video, or delete your entire operating system (ProTip: don't try that last one)! In many cases, you can chain together the output of one utility to be the input of another. This can be very powerful."),(0,r.kt)("p",null,"In addition to using the terminal, you can write bash scripts. They are similar to programs you make in other programming languages. It can ve very useful for automating repetitive task."),(0,r.kt)("p",null,"For Windows users, a useful application for emulating a bash terminal and using many of it's utilities is Windows Subsystem for Linux (usually seen as WSL). For more infomation, check the link in Resources below. Also, if you would prefer a distro other than Ubuntu, consider looking into if your machine is compatible with WSL2."),(0,r.kt)("iframe",{width:"500",height:"300",src:"https://www.youtube.com/embed/I4EWvMFj37g",title:"Bash in 100 Seconds",frameborder:"0",allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",allowfullscreen:!0}),(0,r.kt)("h2",{id:"useful-commands"},"Useful Commands"),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"pwd"),' - "Present Working Directory" - Displays the current directory. Useful for relative pathing.'),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"cd [directory]"),' - "Change Directory" - Changes to the specified directory. Most of the time, you will be using a relative path, but you can also specify an absolute path. Use ".." to go up a level in the filesystem.'),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},'grep "[pattern]"')," - \"Global Regular Expression Print\" - Searches the current and lower directories' files for a given pattern. For example, if you're looking for a function definition, you could use ",(0,r.kt)("inlineCode",{parentName:"p"},'grep "functionName"')," in the project directory."),(0,r.kt)("p",null,(0,r.kt)("inlineCode",{parentName:"p"},"cat [filename(s)]"),' - "Concatenate" - Outputs the contents of the specified file(s). If multiple files are given, their contents will be concatenated together. It\'s often useful to ',(0,r.kt)("a",{parentName:"p",href:"https://askubuntu.com/questions/420981/how-do-i-save-terminal-output-to-a-file"},"pipe")," the output of this command to other commands or files."),(0,r.kt)("h2",{id:"editing-files-in-bash"},"Editing Files in Bash"),(0,r.kt)("p",null,"There are many editors that can be used in bash shells. One of the more commonly found editors in linux distros is GNU nano. If you are used to working on Windows machines, you can think of nano as a much more advanced notepad. It has many useful shortcuts which are displayed at the bottom of the window. If nano is installed in your distro, you can open files with ",(0,r.kt)("inlineCode",{parentName:"p"},"nano [filename]")," if this file does not exist, nano will create a new file with that name. Once you've completed your changes, you can write and quit nano with ",(0,r.kt)("inlineCode",{parentName:"p"},"Ctrl + x"),"."),(0,r.kt)("p",null,"While nano is well suited for smaller edits, a more advanced editor can be found in ",(0,r.kt)("a",{parentName:"p",href:"https://www.vim.org/"},"Vim (Vi Improved)"),". This editor may be confusing for newer users as it has multiple modes and shortcuts that may not be apparent. You can find a good cheatsheet in Resources below. Once Vim is installed on your machine, you can open files similarly to nano with ",(0,r.kt)("inlineCode",{parentName:"p"},"vim [filename]"),". This will put you in at the first line of the file in cursor mode. Be aware, you cannot directly type in the file in this mode. You can navigate to where you'd like to with the arrow keys and from there you can press ",(0,r.kt)("inlineCode",{parentName:"p"},"i")," to begin inserting into the file. Once you've completed your changes, you can write and quit with ",(0,r.kt)("inlineCode",{parentName:"p"},"esc")," to get back to cursor mode and then typing ",(0,r.kt)("inlineCode",{parentName:"p"},":wq"),"."),(0,r.kt)("h2",{id:"resources"},"Resources"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"http://tldp.org/LDP/Bash-Beginners-Guide/html/"},"Terminal and Bash Fundamentals")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://github.com/OSUOSC/command-line-introduction"},"Bash Examples")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://linuxconfig.org/bash-scripting-tutorial"},"Bash Scripting")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"http://info.ee.surrey.ac.uk/Teaching/Unix/index.html"},"Comprehensive Overview of Bash and Unix")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://docs.microsoft.com/en-us/windows/wsl/install-win10"},"Windows Subsystem for Linux")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://docs.microsoft.com/en-us/windows/wsl/wsl2-install"},"WSL2")),(0,r.kt)("li",{parentName:"ul"},(0,r.kt)("a",{parentName:"li",href:"https://vim.rtorr.com/"},"Vim Cheatsheet"))))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/5bac6514.1b1480c5.js b/assets/js/5bac6514.1b1480c5.js new file mode 100644 index 0000000..64328c9 --- /dev/null +++ b/assets/js/5bac6514.1b1480c5.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[31],{5745:s=>{s.exports=JSON.parse('{"name":"docusaurus-plugin-content-pages","id":"default"}')}}]); \ No newline at end of file diff --git a/assets/js/5bf5bdb1.f3df875c.js b/assets/js/5bf5bdb1.9037623f.js similarity index 99% rename from assets/js/5bf5bdb1.f3df875c.js rename to assets/js/5bf5bdb1.9037623f.js index c433db1..f1fb202 100644 --- a/assets/js/5bf5bdb1.f3df875c.js +++ b/assets/js/5bf5bdb1.9037623f.js @@ -1 +1 @@ -"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[4199],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>h});var o=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function a(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var s=o.createContext({}),u=function(e){var t=o.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},d=function(e){var t=u(e.components);return o.createElement(s.Provider,{value:t},e.children)},p="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var n=e.components,i=e.mdxType,r=e.originalType,s=e.parentName,d=l(e,["components","mdxType","originalType","parentName"]),p=u(n),m=i,h=p["".concat(s,".").concat(m)]||p[m]||c[m]||r;return n?o.createElement(h,a(a({ref:t},d),{},{components:n})):o.createElement(h,a({ref:t},d))}));function h(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var r=n.length,a=new Array(r);a[0]=m;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[p]="string"==typeof e?e:i,a[1]=l;for(var u=2;u{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>a,default:()=>c,frontMatter:()=>r,metadata:()=>l,toc:()=>u});var o=n(7462),i=(n(7294),n(3905));const r={title:"Getting Started",description:"Club Website Developer Introduction",sidebar_position:1},a=void 0,l={unversionedId:"Developers/introduction",id:"Developers/introduction",title:"Getting Started",description:"Club Website Developer Introduction",source:"@site/docs/website/Developers/introduction.md",sourceDirName:"Developers",slug:"/Developers/introduction",permalink:"/docs/website/Developers/introduction",draft:!1,editUrl:"https://github.com/ufosc/osc-docs/blob/main/docs/website/Developers/introduction.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{title:"Getting Started",description:"Club Website Developer Introduction",sidebar_position:1},sidebar:"defaultSidebar",previous:{title:"Admin Dashboard",permalink:"/docs/website/admin"},next:{title:"Usage & Configuration",permalink:"/docs/website/Developers/configuration"}},s={},u=[{value:"Prerequisites",id:"prerequisites",level:2},{value:"System Development Libraries",id:"system-development-libraries",level:3},{value:"Installing Xcode Command Line Tools:",id:"installing-xcode-command-line-tools",level:4},{value:"Build Essential (for Linux)",id:"build-essential-for-linux",level:4},{value:"Git",id:"git",level:3},{value:"NodeJS & NPM",id:"nodejs--npm",level:3},{value:"Text Editor",id:"text-editor",level:3},{value:"Installation",id:"installation",level:2},{value:"Contributing",id:"contributing",level:2},{value:"Beginner Resources",id:"beginner-resources",level:2}],d={toc:u},p="wrapper";function c(e){let{components:t,...n}=e;return(0,i.kt)(p,(0,o.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("p",null,"The OSC Club Website is built in NodeJS, using EJS as a frontend framework and ExpressJS for backend hosting. Our objective was to maximize resource-loading performance and consequently minimize resource sizes and overhead. For this reason, we opted against modern front-end frameworks (React, Angular, etc.) and instead built a dynamic full-stack site - essentially relying on the backend for processing, rather than serving a resource-heavy frontend that pulls data via APIs."),(0,i.kt)("p",null,"Moreover, we hoped that this approach would better support beginner programmers at the University of Florida in learning the fundamentals of web development: HTML, CSS, and vanilla JavaScript."),(0,i.kt)("p",null,"We've tried to make this guide as beginner-friendly as possible, however this ",(0,i.kt)("ins",null,"is not a tutorial of the various frameworks/libraries used"),". For beginner-friendly resources, refer to the ",(0,i.kt)("a",{parentName:"p",href:"#beginner-resources"},"resources")," section."),(0,i.kt)("h2",{id:"prerequisites"},"Prerequisites"),(0,i.kt)("p",null,"The OSC website project requires certain dependencies to be installed on the user's machine."),(0,i.kt)("h3",{id:"system-development-libraries"},"System Development Libraries"),(0,i.kt)("p",null,"If you are using macOS, you will need to install Xcode Command Line Tools. These tools provide essential development libraries and utilities, including Git, which is required for the OSC website project and other development tasks."),(0,i.kt)("h4",{id:"installing-xcode-command-line-tools"},"Installing Xcode Command Line Tools:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},'Open Terminal, which can be found in the Utilities folder within the Applications folder, or you can use Spotlight search (Cmd + Space) and type "Terminal" to open it.'),(0,i.kt)("li",{parentName:"ol"},"Enter the following command:")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"xcode-select --install\n")),(0,i.kt)("ol",{start:3},(0,i.kt)("li",{parentName:"ol"},'A dialog will pop up asking you to install the Xcode Command Line Tools. Click "Install" and follow the on-screen instructions.')),(0,i.kt)("h4",{id:"build-essential-for-linux"},"Build Essential (for Linux)"),(0,i.kt)("p",null,"If you are using a Linux distribution, you'll need to ensure you have the ",(0,i.kt)("inlineCode",{parentName:"p"},"build-essential")," package installed. This package includes essential tools for building software on a Linux system, such as compilers and libraries."),(0,i.kt)("p",null,"For Debian-based distributions (e.g., Ubuntu):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"sudo apt update\nsudo apt install build-essential\n")),(0,i.kt)("p",null,"For Red Hat-based distributions (e.g., Fedora):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},'sudo dnf groupinstall "Development Tools"\n')),(0,i.kt)("p",null,"For Arch Linux:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"sudo pacman -S base-devel\n")),(0,i.kt)("p",null,"The installation process will depend on your specific Linux distribution. Once build-essential is installed, you'll have the necessary tools for development on your Linux system."),(0,i.kt)("h3",{id:"git"},"Git"),(0,i.kt)("p",null,"Git is a version control system that's necessary for installing the project and collaborating with others."),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Visit the official Git website: ",(0,i.kt)("a",{parentName:"li",href:"https://git-scm.com/downloads"},"https://git-scm.com/downloads")),(0,i.kt)("li",{parentName:"ol"},"Download the installer for your operating system (Windows, macOS, or Linux)."),(0,i.kt)("li",{parentName:"ol"},"Run the installer and follow the on-screen instructions to install Git.")),(0,i.kt)("h3",{id:"nodejs--npm"},"NodeJS & NPM"),(0,i.kt)("p",null,"The OSC website website is built using NodeJS, so you'll need to have it installed prior to running the site."),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Visit the official Node.js website: ",(0,i.kt)("a",{parentName:"li",href:"https://nodejs.org/"},"https://nodejs.org/")),(0,i.kt)("li",{parentName:"ol"},"Download the LTS (Long-Term Support) version for your operating system."),(0,i.kt)("li",{parentName:"ol"},"Run the installer and follow the installation instructions."),(0,i.kt)("li",{parentName:"ol"},"After installation, open your command line (Terminal on macOS/Linux, Command Prompt on Windows) and run the following commands to verify that Node.js and NPM are installed:")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"node -v\nnpm -v\n")),(0,i.kt)("h3",{id:"text-editor"},"Text Editor"),(0,i.kt)("p",null,"You'll need a text editor to write and modify your Docusaurus project files. Many developers prefer using code editors with syntax highlighting and other useful features."),(0,i.kt)("p",null,"Some popular text editors and Integrated Development Environments (IDEs) for web development include:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Visual Studio Code: ",(0,i.kt)("a",{parentName:"li",href:"https://code.visualstudio.com/"},"https://code.visualstudio.com/")),(0,i.kt)("li",{parentName:"ol"},"Sublime Text: ",(0,i.kt)("a",{parentName:"li",href:"https://www.sublimetext.com/"},"https://www.sublimetext.com/")),(0,i.kt)("li",{parentName:"ol"},"Atom: ",(0,i.kt)("a",{parentName:"li",href:"https://atom.io/"},"https://atom.io/")),(0,i.kt)("li",{parentName:"ol"},"JetBrains WebStorm: ",(0,i.kt)("a",{parentName:"li",href:"https://www.jetbrains.com/webstorm/"},"https://www.jetbrains.com/webstorm/")),(0,i.kt)("li",{parentName:"ol"},"Emacs ",(0,i.kt)("a",{parentName:"li",href:"https://www.gnu.org/software/emacs/"},"https://www.gnu.org/software/emacs/")," (requires IQ > 160).")),(0,i.kt)("p",null,"Choose the one that suits your preferences and install it on your system."),(0,i.kt)("h2",{id:"installation"},"Installation"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Clone the Github Repository.")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"git clone https://github.com/ufosc/Club_Website_2.git\n")),(0,i.kt)("ol",{start:2},(0,i.kt)("li",{parentName:"ol"},"Navigate to the downloaded directory.")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"cd Club_Website_2\n")),(0,i.kt)("ol",{start:3},(0,i.kt)("li",{parentName:"ol"},"Install NodeJS dependencies")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"npm i\n")),(0,i.kt)("h2",{id:"contributing"},"Contributing"),(0,i.kt)("p",null,"The OSC Website is distributed under the ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/LICENSE.md"},"AGPL-3.0-or-later")," license. Aside from being open-source, the license asserts that anyone is free to run, modify, redistribute exact copies, and distribute modified versions of the project (in accordance with the ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/LICENSE.md"},"AGPL-3.0-or-later license"),")."),(0,i.kt)("p",null,"To contribute or download the source code, refer to the ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2"},"Github Repository"),"."),(0,i.kt)("p",null,"Contributions must adhere to the ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/CONTRIBUTING.md"},"contributing guide"),"."),(0,i.kt)("h2",{id:"beginner-resources"},"Beginner Resources"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"https://www.w3schools.com/html/"},"HTML Tutorial")," by W3Schools (interactive text)."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"https://www.youtube.com/watch?v=pQN-pnXPaVg"},"Learn HTML by building a website")," by freeCodeCamp.org (youtube)."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"https://www.youtube.com/watch?v=Oe421EPjeBE"},"NodeJS & ExpressJS Full Course")," by freeCodeCamp.org (youtube)."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"https://www.youtube.com/watch?v=DvlyzDZDEq4"},"Build a Zoom Clone with NodeJS")," Basic NodeJS and EJS by Web Dev Simplified (youtube).")))}c.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[4199],{3905:(e,t,n)=>{n.d(t,{Zo:()=>d,kt:()=>h});var o=n(7294);function i(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function a(e){for(var t=1;t=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(o=0;o=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var s=o.createContext({}),u=function(e){var t=o.useContext(s),n=t;return e&&(n="function"==typeof e?e(t):a(a({},t),e)),n},d=function(e){var t=u(e.components);return o.createElement(s.Provider,{value:t},e.children)},p="mdxType",c={inlineCode:"code",wrapper:function(e){var t=e.children;return o.createElement(o.Fragment,{},t)}},m=o.forwardRef((function(e,t){var n=e.components,i=e.mdxType,r=e.originalType,s=e.parentName,d=l(e,["components","mdxType","originalType","parentName"]),p=u(n),m=i,h=p["".concat(s,".").concat(m)]||p[m]||c[m]||r;return n?o.createElement(h,a(a({ref:t},d),{},{components:n})):o.createElement(h,a({ref:t},d))}));function h(e,t){var n=arguments,i=t&&t.mdxType;if("string"==typeof e||i){var r=n.length,a=new Array(r);a[0]=m;var l={};for(var s in t)hasOwnProperty.call(t,s)&&(l[s]=t[s]);l.originalType=e,l[p]="string"==typeof e?e:i,a[1]=l;for(var u=2;u{n.r(t),n.d(t,{assets:()=>s,contentTitle:()=>a,default:()=>c,frontMatter:()=>r,metadata:()=>l,toc:()=>u});var o=n(7462),i=(n(7294),n(3905));const r={title:"Getting Started",description:"Club Website Developer Introduction",sidebar_position:1},a=void 0,l={unversionedId:"Developers/introduction",id:"Developers/introduction",title:"Getting Started",description:"Club Website Developer Introduction",source:"@site/docs/website/Developers/introduction.md",sourceDirName:"Developers",slug:"/Developers/introduction",permalink:"/docs/website/Developers/introduction",draft:!1,editUrl:"https://github.com/ufosc/osc-docs/blob/main/docs/website/Developers/introduction.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{title:"Getting Started",description:"Club Website Developer Introduction",sidebar_position:1},sidebar:"defaultSidebar",previous:{title:"Admin Dashboard",permalink:"/docs/website/admin"},next:{title:"Usage & Configuration",permalink:"/docs/website/Developers/configuration"}},s={},u=[{value:"Prerequisites",id:"prerequisites",level:2},{value:"System Development Libraries",id:"system-development-libraries",level:3},{value:"Installing Xcode Command Line Tools:",id:"installing-xcode-command-line-tools",level:4},{value:"Build Essential (for Linux)",id:"build-essential-for-linux",level:4},{value:"Git",id:"git",level:3},{value:"NodeJS & NPM",id:"nodejs--npm",level:3},{value:"Text Editor",id:"text-editor",level:3},{value:"Installation",id:"installation",level:2},{value:"Contributing",id:"contributing",level:2},{value:"Beginner Resources",id:"beginner-resources",level:2}],d={toc:u},p="wrapper";function c(e){let{components:t,...n}=e;return(0,i.kt)(p,(0,o.Z)({},d,n,{components:t,mdxType:"MDXLayout"}),(0,i.kt)("p",null,"The OSC Club Website is built in NodeJS, using EJS as a frontend framework and ExpressJS for backend hosting. Our objective was to maximize resource-loading performance and consequently minimise resource sizes and overhead. For this reason, we opted against modern front-end frameworks (React, Angular, etc.) and instead built a dynamic full-stack site - essentially relying on the backend for processing, rather than serving a resource-heavy frontend that pulls data via APIs."),(0,i.kt)("p",null,"Moreover, we hoped that this approach would better support beginner programmers at the University of Florida in learning the fundamentals of web development: HTML, CSS, and vanilla JavaScript."),(0,i.kt)("p",null,"We've tried to make this guide as beginner-friendly as possible, however this ",(0,i.kt)("ins",null,"is not a tutorial of the various frameworks/libraries used"),". For beginner-friendly resources, refer to the ",(0,i.kt)("a",{parentName:"p",href:"#beginner-resources"},"resources")," section."),(0,i.kt)("h2",{id:"prerequisites"},"Prerequisites"),(0,i.kt)("p",null,"The OSC website project requires certain dependencies to be installed on the user's machine."),(0,i.kt)("h3",{id:"system-development-libraries"},"System Development Libraries"),(0,i.kt)("p",null,"If you are using macOS, you will need to install Xcode Command Line Tools. These tools provide essential development libraries and utilities, including Git, which is required for the OSC website project and other development tasks."),(0,i.kt)("h4",{id:"installing-xcode-command-line-tools"},"Installing Xcode Command Line Tools:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},'Open Terminal, which can be found in the Utilities folder within the Applications folder, or you can use Spotlight search (Cmd + Space) and type "Terminal" to open it.'),(0,i.kt)("li",{parentName:"ol"},"Enter the following command:")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"xcode-select --install\n")),(0,i.kt)("ol",{start:3},(0,i.kt)("li",{parentName:"ol"},'A dialog will pop up asking you to install the Xcode Command Line Tools. Click "Install" and follow the on-screen instructions.')),(0,i.kt)("h4",{id:"build-essential-for-linux"},"Build Essential (for Linux)"),(0,i.kt)("p",null,"If you are using a Linux distribution, you'll need to ensure you have the ",(0,i.kt)("inlineCode",{parentName:"p"},"build-essential")," package installed. This package includes essential tools for building software on a Linux system, such as compilers and libraries."),(0,i.kt)("p",null,"For Debian-based distributions (e.g., Ubuntu):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"sudo apt update\nsudo apt install build-essential\n")),(0,i.kt)("p",null,"For Red Hat-based distributions (e.g., Fedora):"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},'sudo dnf groupinstall "Development Tools"\n')),(0,i.kt)("p",null,"For Arch Linux:"),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"sudo pacman -S base-devel\n")),(0,i.kt)("p",null,"The installation process will depend on your specific Linux distribution. Once build-essential is installed, you'll have the necessary tools for development on your Linux system."),(0,i.kt)("h3",{id:"git"},"Git"),(0,i.kt)("p",null,"Git is a version control system that's necessary for installing the project and collaborating with others."),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Visit the official Git website: ",(0,i.kt)("a",{parentName:"li",href:"https://git-scm.com/downloads"},"https://git-scm.com/downloads")),(0,i.kt)("li",{parentName:"ol"},"Download the installer for your operating system (Windows, macOS, or Linux)."),(0,i.kt)("li",{parentName:"ol"},"Run the installer and follow the on-screen instructions to install Git.")),(0,i.kt)("h3",{id:"nodejs--npm"},"NodeJS & NPM"),(0,i.kt)("p",null,"The OSC website website is built using NodeJS, so you'll need to have it installed prior to running the site."),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Visit the official Node.js website: ",(0,i.kt)("a",{parentName:"li",href:"https://nodejs.org/"},"https://nodejs.org/")),(0,i.kt)("li",{parentName:"ol"},"Download the LTS (Long-Term Support) version for your operating system."),(0,i.kt)("li",{parentName:"ol"},"Run the installer and follow the installation instructions."),(0,i.kt)("li",{parentName:"ol"},"After installation, open your command line (Terminal on macOS/Linux, Command Prompt on Windows) and run the following commands to verify that Node.js and NPM are installed:")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"node -v\nnpm -v\n")),(0,i.kt)("h3",{id:"text-editor"},"Text Editor"),(0,i.kt)("p",null,"You'll need a text editor to write and modify your Docusaurus project files. Many developers prefer using code editors with syntax highlighting and other useful features."),(0,i.kt)("p",null,"Some popular text editors and Integrated Development Environments (IDEs) for web development include:"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Visual Studio Code: ",(0,i.kt)("a",{parentName:"li",href:"https://code.visualstudio.com/"},"https://code.visualstudio.com/")),(0,i.kt)("li",{parentName:"ol"},"Sublime Text: ",(0,i.kt)("a",{parentName:"li",href:"https://www.sublimetext.com/"},"https://www.sublimetext.com/")),(0,i.kt)("li",{parentName:"ol"},"Atom: ",(0,i.kt)("a",{parentName:"li",href:"https://atom.io/"},"https://atom.io/")),(0,i.kt)("li",{parentName:"ol"},"JetBrains WebStorm: ",(0,i.kt)("a",{parentName:"li",href:"https://www.jetbrains.com/webstorm/"},"https://www.jetbrains.com/webstorm/")),(0,i.kt)("li",{parentName:"ol"},"Emacs ",(0,i.kt)("a",{parentName:"li",href:"https://www.gnu.org/software/emacs/"},"https://www.gnu.org/software/emacs/")," (requires IQ > 160).")),(0,i.kt)("p",null,"Choose the one that suits your preferences and install it on your system."),(0,i.kt)("h2",{id:"installation"},"Installation"),(0,i.kt)("ol",null,(0,i.kt)("li",{parentName:"ol"},"Clone the Github Repository.")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"git clone https://github.com/ufosc/Club_Website_2.git\n")),(0,i.kt)("ol",{start:2},(0,i.kt)("li",{parentName:"ol"},"Navigate to the downloaded directory.")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"cd Club_Website_2\n")),(0,i.kt)("ol",{start:3},(0,i.kt)("li",{parentName:"ol"},"Install NodeJS dependencies")),(0,i.kt)("pre",null,(0,i.kt)("code",{parentName:"pre",className:"language-bash"},"npm i\n")),(0,i.kt)("h2",{id:"contributing"},"Contributing"),(0,i.kt)("p",null,"The OSC Website is distributed under the ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/LICENSE.md"},"AGPL-3.0-or-later")," license. Aside from being open-source, the license asserts that anyone is free to run, modify, redistribute exact copies, and distribute modified versions of the project (in accordance with the ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/LICENSE.md"},"AGPL-3.0-or-later license"),")."),(0,i.kt)("p",null,"To contribute or download the source code, refer to the ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2"},"Github Repository"),"."),(0,i.kt)("p",null,"Contributions must adhere to the ",(0,i.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/CONTRIBUTING.md"},"contributing guide"),"."),(0,i.kt)("h2",{id:"beginner-resources"},"Beginner Resources"),(0,i.kt)("ul",null,(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"https://www.w3schools.com/html/"},"HTML Tutorial")," by W3Schools (interactive text)."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"https://www.youtube.com/watch?v=pQN-pnXPaVg"},"Learn HTML by building a website")," by freeCodeCamp.org (youtube)."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"https://www.youtube.com/watch?v=Oe421EPjeBE"},"NodeJS & ExpressJS Full Course")," by freeCodeCamp.org (youtube)."),(0,i.kt)("li",{parentName:"ul"},(0,i.kt)("a",{parentName:"li",href:"https://www.youtube.com/watch?v=DvlyzDZDEq4"},"Build a Zoom Clone with NodeJS")," Basic NodeJS and EJS by Web Dev Simplified (youtube).")))}c.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/6a2729da.8ba1ee8b.js b/assets/js/6a2729da.8ba1ee8b.js deleted file mode 100644 index 37d775c..0000000 --- a/assets/js/6a2729da.8ba1ee8b.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[4492],{5745:s=>{s.exports=JSON.parse('{"name":"docusaurus-plugin-content-pages","id":"default"}')}}]); \ No newline at end of file diff --git a/assets/js/12f0493a.27ab380f.js b/assets/js/7b600a83.6491076e.js similarity index 64% rename from assets/js/12f0493a.27ab380f.js rename to assets/js/7b600a83.6491076e.js index b971bb8..25581c6 100644 --- a/assets/js/12f0493a.27ab380f.js +++ b/assets/js/7b600a83.6491076e.js @@ -1 +1 @@ -"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[8841],{5172:s=>{s.exports=JSON.parse('{"name":"docusaurus-plugin-content-docs","id":"osc-docs"}')}}]); \ No newline at end of file +"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[9622],{5172:s=>{s.exports=JSON.parse('{"name":"docusaurus-plugin-content-docs","id":"osc-docs"}')}}]); \ No newline at end of file diff --git a/assets/js/7bc5227b.0d9ce517.js b/assets/js/7bc5227b.0d9ce517.js new file mode 100644 index 0000000..05bde41 --- /dev/null +++ b/assets/js/7bc5227b.0d9ce517.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[5759],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>d});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function l(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=n.createContext({}),s=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},p=function(e){var t=s(e.components);return n.createElement(c.Provider,{value:t},e.children)},u="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},b=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,l=e.originalType,c=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),u=s(r),b=o,d=u["".concat(c,".").concat(b)]||u[b]||f[b]||l;return r?n.createElement(d,a(a({ref:t},p),{},{components:r})):n.createElement(d,a({ref:t},p))}));function d(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var l=r.length,a=new Array(l);a[0]=b;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i[u]="string"==typeof e?e:o,a[1]=i;for(var s=2;s{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>a,default:()=>f,frontMatter:()=>l,metadata:()=>i,toc:()=>s});var n=r(7462),o=(r(7294),r(3905));const l={title:"Fall GBM 2 (09/29/19)",description:"Club Archive 2019-2020 Fall GBM",sidebar_position:2},a="Fall GBM 2 (09/29/19)",i={unversionedId:"2019-2020/fall-gbm-09-29-19",id:"2019-2020/fall-gbm-09-29-19",title:"Fall GBM 2 (09/29/19)",description:"Club Archive 2019-2020 Fall GBM",source:"@site/docs/club/2019-2020/fall-gbm-09-29-19.md",sourceDirName:"2019-2020",slug:"/2019-2020/fall-gbm-09-29-19",permalink:"/docs/club/2019-2020/fall-gbm-09-29-19",draft:!1,editUrl:"https://github.com/ufosc/osc-docs/blob/main/docs/club/2019-2020/fall-gbm-09-29-19.md",tags:[],version:"current",sidebarPosition:2,frontMatter:{title:"Fall GBM 2 (09/29/19)",description:"Club Archive 2019-2020 Fall GBM",sidebar_position:2},sidebar:"defaultSidebar",previous:{title:"Fall GBM 1 (09/11/19)",permalink:"/docs/club/2019-2020/fall-gbm-09-11-19"},next:{title:"Bash Guide",permalink:"/docs/club/resources/bash"}},c={},s=[],p={toc:s},u="wrapper";function f(e){let{components:t,...r}=e;return(0,o.kt)(u,(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"fall-gbm-2-092919"},"Fall GBM 2 (09/29/19)"),(0,o.kt)("iframe",{src:"https://docs.google.com/presentation/d/e/2PACX-1vTvhnBAJYx-PON0WhErDJg9gfIQkHfpXKr4CyXDFeHZ584_0Yg53Y4TaS1vpnDmjW2HBreRbJ3hx7q2/embed?start=false&loop=false&delayms=3000",frameborder:"0",width:"480",height:"299",allowfullscreen:"true",mozallowfullscreen:"true",webkitallowfullscreen:"true"}),(0,o.kt)("p",null,"This presentation is also available on ",(0,o.kt)("a",{parentName:"p",href:"https://docs.google.com/presentation/d/1e7nwFxfqvxEMybgJPAzW2PAqBWYGH27958Va_WCPgZw/edit?usp=sharing"},"Google Slides"),"."))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/cad82f49.e4e8a9ce.js b/assets/js/8a9ec53b.2c6c1375.js similarity index 64% rename from assets/js/cad82f49.e4e8a9ce.js rename to assets/js/8a9ec53b.2c6c1375.js index 55906f3..6489a0c 100644 --- a/assets/js/cad82f49.e4e8a9ce.js +++ b/assets/js/8a9ec53b.2c6c1375.js @@ -1 +1 @@ -"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[5442],{3769:s=>{s.exports=JSON.parse('{"name":"docusaurus-plugin-content-docs","id":"default"}')}}]); \ No newline at end of file +"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[3974],{3769:s=>{s.exports=JSON.parse('{"name":"docusaurus-plugin-content-docs","id":"default"}')}}]); \ No newline at end of file diff --git a/assets/js/935f2afb.a40a0fc2.js b/assets/js/935f2afb.a40a0fc2.js deleted file mode 100644 index d8569b2..0000000 --- a/assets/js/935f2afb.a40a0fc2.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[53],{1109:e=>{e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"defaultSidebar":[{"type":"link","label":"Introduction","href":"/docs/club/","docId":"index"},{"type":"category","label":"2023-2024","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Fall GBM 1 (09/06/23)","href":"/docs/club/2023-2024/fall-gbm-09-06-2023","docId":"2023-2024/fall-gbm-09-06-2023"}]},{"type":"category","label":"2022-2023","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Fall GBM 1 (09/07/22)","href":"/docs/club/2022-2023/fall-gbm-09-07-2022","docId":"2022-2023/fall-gbm-09-07-2022"},{"type":"link","label":"Fall GBM 2 (11/04/22)","href":"/docs/club/2022-2023/fall-gbm-11-04-2022","docId":"2022-2023/fall-gbm-11-04-2022"},{"type":"link","label":"Spring GBM 1 (01/25/23)","href":"/docs/club/2022-2023/spring-gbm-01-25-2023","docId":"2022-2023/spring-gbm-01-25-2023"},{"type":"link","label":"Spring GBM 2 (03/30/23)","href":"/docs/club/2022-2023/spring-gbm-03-30-2023","docId":"2022-2023/spring-gbm-03-30-2023"},{"type":"link","label":"Spring Project Proposals","href":"/docs/club/2022-2023/spring-project-proposals","docId":"2022-2023/spring-project-proposals"}]},{"type":"category","label":"2021-2022","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Fall GBM 1 (09/09/21)","href":"/docs/club/2021-2022/fall-gbm-09-09-21","docId":"2021-2022/fall-gbm-09-09-21"},{"type":"link","label":"Fall GBM 2 - Git & Github (10/13/21)","href":"/docs/club/2021-2022/fall-gbm-10-13-21","docId":"2021-2022/fall-gbm-10-13-21"},{"type":"link","label":"Spring GBM 1 - Rust (01/06/22)","href":"/docs/club/2021-2022/spring-gbm-01-06-22","docId":"2021-2022/spring-gbm-01-06-22"},{"type":"link","label":"Spring GBM 2 - Linux (03/30/22)","href":"/docs/club/2021-2022/spring-gbm-03-30-22","docId":"2021-2022/spring-gbm-03-30-22"},{"type":"link","label":"Spring GBM 3 - Elections (04/06/22)","href":"/docs/club/2021-2022/spring-gbm-04-06-22","docId":"2021-2022/spring-gbm-04-06-22"},{"type":"link","label":"Swamphacks Git Workshop","href":"/docs/club/2021-2022/swamphacks-git-01-26-22","docId":"2021-2022/swamphacks-git-01-26-22"},{"type":"link","label":"Swamphacks SQL Workshop","href":"/docs/club/2021-2022/swamphacks-sql-01-30-22","docId":"2021-2022/swamphacks-sql-01-30-22"},{"type":"link","label":"NLP Workshop","href":"/docs/club/2021-2022/NLP-workshop","docId":"2021-2022/NLP-workshop"}]},{"type":"category","label":"Resources","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Bash Guide","href":"/docs/club/resources/bash","docId":"resources/bash"},{"type":"link","label":"CSS Guide","href":"/docs/club/resources/css","docId":"resources/css"},{"type":"link","label":"HTML Guide","href":"/docs/club/resources/html","docId":"resources/html"},{"type":"link","label":"JavaScript Guide","href":"/docs/club/resources/javascript","docId":"resources/javascript"},{"type":"link","label":"Versioning Guide","href":"/docs/club/resources/versioning","docId":"resources/versioning"},{"type":"category","label":"Old Presentations","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Unix History and Bash Introduction","href":"/docs/club/resources/old_presentations/unix-history-and-bash-intro","docId":"resources/old_presentations/unix-history-and-bash-intro"},{"type":"link","label":"Maintaining your Security and Privacy","href":"/docs/club/resources/old_presentations/security-and-privacy","docId":"resources/old_presentations/security-and-privacy"},{"type":"link","label":"Advanced Linux","href":"/docs/club/resources/old_presentations/advanced-linux","docId":"resources/old_presentations/advanced-linux"},{"type":"link","label":"Introduction to Web Design","href":"/docs/club/resources/old_presentations/codeathon-intro-to-web-design","docId":"resources/old_presentations/codeathon-intro-to-web-design"},{"type":"link","label":"Git and GitHub","href":"/docs/club/resources/old_presentations/git-and-github","docId":"resources/old_presentations/git-and-github"},{"type":"link","label":"How to do an Elevator Pitch","href":"/docs/club/resources/old_presentations/how-to-elevator-pitch","docId":"resources/old_presentations/how-to-elevator-pitch"},{"type":"link","label":"Intro to Digital Currencies and Blockchain","href":"/docs/club/resources/old_presentations/intro-to-blockchain","docId":"resources/old_presentations/intro-to-blockchain"},{"type":"link","label":"Intro to C#","href":"/docs/club/resources/old_presentations/intro-to-c-sharp","docId":"resources/old_presentations/intro-to-c-sharp"},{"type":"link","label":"Open Source Game Development","href":"/docs/club/resources/old_presentations/intro-to-game-dev","docId":"resources/old_presentations/intro-to-game-dev"},{"type":"link","label":"Introduction to Linux","href":"/docs/club/resources/old_presentations/intro-to-linux","docId":"resources/old_presentations/intro-to-linux"},{"type":"link","label":"Intro to Open Source","href":"/docs/club/resources/old_presentations/intro-to-open-source","docId":"resources/old_presentations/intro-to-open-source"},{"type":"link","label":"Optimizing Code with Project Euler","href":"/docs/club/resources/old_presentations/intro-to-optimization","docId":"resources/old_presentations/intro-to-optimization"},{"type":"link","label":"Intro to Rust","href":"/docs/club/resources/old_presentations/intro-to-rust","docId":"resources/old_presentations/intro-to-rust"},{"type":"link","label":"Introduction to WebExtensions","href":"/docs/club/resources/old_presentations/intro-to-webextensions","docId":"resources/old_presentations/intro-to-webextensions"},{"type":"link","label":"How to make money with Open Source","href":"/docs/club/resources/old_presentations/money-with-open-source","docId":"resources/old_presentations/money-with-open-source"},{"type":"link","label":"Sandstorm","href":"/docs/club/resources/old_presentations/sandstorm","docId":"resources/old_presentations/sandstorm"},{"type":"link","label":"Working on Open Source Projects","href":"/docs/club/resources/old_presentations/working-on-open-source","docId":"resources/old_presentations/working-on-open-source"}]},{"type":"link","label":"Rust Guide","href":"/docs/club/resources/rust","docId":"resources/rust"},{"type":"link","label":"Python Guide","href":"/docs/club/resources/python","docId":"resources/python"},{"type":"link","label":"Git & Github Guide","href":"/docs/club/resources/git","docId":"resources/git"}]}]},"docs":{"2021-2022/fall-gbm-09-09-21":{"id":"2021-2022/fall-gbm-09-09-21","title":"Fall GBM 1 (09/09/21)","description":"Club Archive 2021-2022 Fall GBM","sidebar":"defaultSidebar"},"2021-2022/fall-gbm-10-13-21":{"id":"2021-2022/fall-gbm-10-13-21","title":"Fall GBM 2 - Git & Github (10/13/21)","description":"Club Archive 2021-2022 Fall GBM","sidebar":"defaultSidebar"},"2021-2022/NLP-workshop":{"id":"2021-2022/NLP-workshop","title":"NLP Workshop","description":"Club Archive 2021-2022 NLP Workshop","sidebar":"defaultSidebar"},"2021-2022/spring-gbm-01-06-22":{"id":"2021-2022/spring-gbm-01-06-22","title":"Spring GBM 1 - Rust (01/06/22)","description":"Club Archive 2021-2022 Rust Spring GBM","sidebar":"defaultSidebar"},"2021-2022/spring-gbm-03-30-22":{"id":"2021-2022/spring-gbm-03-30-22","title":"Spring GBM 2 - Linux (03/30/22)","description":"Club Archive 2021-2022 Spring GBM","sidebar":"defaultSidebar"},"2021-2022/spring-gbm-04-06-22":{"id":"2021-2022/spring-gbm-04-06-22","title":"Spring GBM 3 - Elections (04/06/22)","description":"Club Archive 2021-2022 Spring GBM","sidebar":"defaultSidebar"},"2021-2022/swamphacks-git-01-26-22":{"id":"2021-2022/swamphacks-git-01-26-22","title":"Swamphacks Git Workshop","description":"Club Archive 2021-2022 Swamphacks Git Workshop","sidebar":"defaultSidebar"},"2021-2022/swamphacks-sql-01-30-22":{"id":"2021-2022/swamphacks-sql-01-30-22","title":"Swamphacks SQL Workshop","description":"Club Archive 2021-2022 Swamphacks SQL Workshop","sidebar":"defaultSidebar"},"2022-2023/fall-gbm-09-07-2022":{"id":"2022-2023/fall-gbm-09-07-2022","title":"Fall GBM 1 (09/07/22)","description":"Club Archive 2022-2023 Fall GBM","sidebar":"defaultSidebar"},"2022-2023/fall-gbm-11-04-2022":{"id":"2022-2023/fall-gbm-11-04-2022","title":"Fall GBM 2 (11/04/22)","description":"Club Archive 2022-2023 Fall GBM","sidebar":"defaultSidebar"},"2022-2023/spring-gbm-01-25-2023":{"id":"2022-2023/spring-gbm-01-25-2023","title":"Spring GBM 1 (01/25/23)","description":"Club Archive 2022-2023 Spring GBM 1 (01/25/23)","sidebar":"defaultSidebar"},"2022-2023/spring-gbm-03-30-2023":{"id":"2022-2023/spring-gbm-03-30-2023","title":"Spring GBM 2 (03/30/23)","description":"Club Archive 2022-2023 Spring GBM 2 (03/30/23)","sidebar":"defaultSidebar"},"2022-2023/spring-project-proposals":{"id":"2022-2023/spring-project-proposals","title":"Spring Project Proposals","description":"Club Archive 2022-2023 Spring Project Proposals","sidebar":"defaultSidebar"},"2023-2024/fall-gbm-09-06-2023":{"id":"2023-2024/fall-gbm-09-06-2023","title":"Fall GBM 1 (09/06/23)","description":"Club Archive 2023-2024 Fall GBM","sidebar":"defaultSidebar"},"index":{"id":"index","title":"Introduction","description":"Club Archival Index","sidebar":"defaultSidebar"},"resources/bash":{"id":"resources/bash","title":"Bash Guide","description":"Club Archive Resources Bash Guide","sidebar":"defaultSidebar"},"resources/css":{"id":"resources/css","title":"CSS Guide","description":"Club Archive Resources CSS Guide","sidebar":"defaultSidebar"},"resources/git":{"id":"resources/git","title":"Git & Github Guide","description":"Club Archive Resources Git Guide","sidebar":"defaultSidebar"},"resources/html":{"id":"resources/html","title":"HTML Guide","description":"Club Archive Resources HTML Guide","sidebar":"defaultSidebar"},"resources/javascript":{"id":"resources/javascript","title":"JavaScript Guide","description":"Club Archive Resources JavaScript Guide","sidebar":"defaultSidebar"},"resources/old_presentations/advanced-linux":{"id":"resources/old_presentations/advanced-linux","title":"Advanced Linux","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/codeathon-intro-to-web-design":{"id":"resources/old_presentations/codeathon-intro-to-web-design","title":"Introduction to Web Design","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/git-and-github":{"id":"resources/old_presentations/git-and-github","title":"Git and GitHub","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/how-to-elevator-pitch":{"id":"resources/old_presentations/how-to-elevator-pitch","title":"How to do an Elevator Pitch","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/intro-to-blockchain":{"id":"resources/old_presentations/intro-to-blockchain","title":"Intro to Digital Currencies and Blockchain","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/intro-to-c-sharp":{"id":"resources/old_presentations/intro-to-c-sharp","title":"Intro to C#","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/intro-to-game-dev":{"id":"resources/old_presentations/intro-to-game-dev","title":"Open Source Game Development","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/intro-to-linux":{"id":"resources/old_presentations/intro-to-linux","title":"Introduction to Linux","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/intro-to-open-source":{"id":"resources/old_presentations/intro-to-open-source","title":"Intro to Open Source","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/intro-to-optimization":{"id":"resources/old_presentations/intro-to-optimization","title":"Optimizing Code with Project Euler","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/intro-to-rust":{"id":"resources/old_presentations/intro-to-rust","title":"Intro to Rust","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/intro-to-webextensions":{"id":"resources/old_presentations/intro-to-webextensions","title":"Introduction to WebExtensions","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/money-with-open-source":{"id":"resources/old_presentations/money-with-open-source","title":"How to make money with Open Source","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/sandstorm":{"id":"resources/old_presentations/sandstorm","title":"Sandstorm","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/security-and-privacy":{"id":"resources/old_presentations/security-and-privacy","title":"Maintaining your Security and Privacy","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/unix-history-and-bash-intro":{"id":"resources/old_presentations/unix-history-and-bash-intro","title":"Unix History and Bash Introduction","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/working-on-open-source":{"id":"resources/old_presentations/working-on-open-source","title":"Working on Open Source Projects","description":"Club Archive Resources Presentations Working on Open Source Projects","sidebar":"defaultSidebar"},"resources/python":{"id":"resources/python","title":"Python Guide","description":"Club Archive Resources Python Guide","sidebar":"defaultSidebar"},"resources/rust":{"id":"resources/rust","title":"Rust Guide","description":"Club Archive Resources Rust Guide","sidebar":"defaultSidebar"},"resources/versioning":{"id":"resources/versioning","title":"Versioning Guide","description":"Club Archive Resources Versioning Guide","sidebar":"defaultSidebar"}}}')}}]); \ No newline at end of file diff --git a/assets/js/935f2afb.d37bb92f.js b/assets/js/935f2afb.d37bb92f.js new file mode 100644 index 0000000..cddc4d4 --- /dev/null +++ b/assets/js/935f2afb.d37bb92f.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[53],{1109:e=>{e.exports=JSON.parse('{"pluginId":"default","version":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"defaultSidebar":[{"type":"link","label":"Introduction","href":"/docs/club/","docId":"index"},{"type":"category","label":"2023-2024","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Fall GBM 1 (09/06/23)","href":"/docs/club/2023-2024/fall-gbm-09-06-2023","docId":"2023-2024/fall-gbm-09-06-2023"},{"type":"link","label":"Alarm Clock Promo","href":"/docs/club/2023-2024/alarm-clock-promo-09-12-23","docId":"2023-2024/alarm-clock-promo-09-12-23"}]},{"type":"category","label":"2022-2023","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Fall GBM 1 (09/07/22)","href":"/docs/club/2022-2023/fall-gbm-09-07-2022","docId":"2022-2023/fall-gbm-09-07-2022"},{"type":"link","label":"Fall GBM 2 (11/04/22)","href":"/docs/club/2022-2023/fall-gbm-11-04-2022","docId":"2022-2023/fall-gbm-11-04-2022"},{"type":"link","label":"Spring GBM 1 (01/25/23)","href":"/docs/club/2022-2023/spring-gbm-01-25-2023","docId":"2022-2023/spring-gbm-01-25-2023"},{"type":"link","label":"Spring GBM 2 (03/30/23)","href":"/docs/club/2022-2023/spring-gbm-03-30-2023","docId":"2022-2023/spring-gbm-03-30-2023"},{"type":"link","label":"Spring Project Proposals","href":"/docs/club/2022-2023/spring-project-proposals","docId":"2022-2023/spring-project-proposals"}]},{"type":"category","label":"2021-2022","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Fall GBM 1 (09/09/21)","href":"/docs/club/2021-2022/fall-gbm-09-09-21","docId":"2021-2022/fall-gbm-09-09-21"},{"type":"link","label":"Fall GBM 2 - Git & Github (10/13/21)","href":"/docs/club/2021-2022/fall-gbm-10-13-21","docId":"2021-2022/fall-gbm-10-13-21"},{"type":"link","label":"Spring GBM 1 - Rust (01/06/22)","href":"/docs/club/2021-2022/spring-gbm-01-06-22","docId":"2021-2022/spring-gbm-01-06-22"},{"type":"link","label":"Spring GBM 2 - Linux (03/30/22)","href":"/docs/club/2021-2022/spring-gbm-03-30-22","docId":"2021-2022/spring-gbm-03-30-22"},{"type":"link","label":"Spring GBM 3 - Elections (04/06/22)","href":"/docs/club/2021-2022/spring-gbm-04-06-22","docId":"2021-2022/spring-gbm-04-06-22"},{"type":"link","label":"Swamphacks Git Workshop","href":"/docs/club/2021-2022/swamphacks-git-01-26-22","docId":"2021-2022/swamphacks-git-01-26-22"},{"type":"link","label":"Swamphacks SQL Workshop","href":"/docs/club/2021-2022/swamphacks-sql-01-30-22","docId":"2021-2022/swamphacks-sql-01-30-22"},{"type":"link","label":"NLP Workshop","href":"/docs/club/2021-2022/NLP-workshop","docId":"2021-2022/NLP-workshop"}]},{"type":"category","label":"2019-2020","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Fall GBM 1 (09/11/19)","href":"/docs/club/2019-2020/fall-gbm-09-11-19","docId":"2019-2020/fall-gbm-09-11-19"},{"type":"link","label":"Fall GBM 2 (09/29/19)","href":"/docs/club/2019-2020/fall-gbm-09-29-19","docId":"2019-2020/fall-gbm-09-29-19"}]},{"type":"category","label":"Resources","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Bash Guide","href":"/docs/club/resources/bash","docId":"resources/bash"},{"type":"link","label":"CSS Guide","href":"/docs/club/resources/css","docId":"resources/css"},{"type":"link","label":"HTML Guide","href":"/docs/club/resources/html","docId":"resources/html"},{"type":"link","label":"JavaScript Guide","href":"/docs/club/resources/javascript","docId":"resources/javascript"},{"type":"link","label":"Versioning Guide","href":"/docs/club/resources/versioning","docId":"resources/versioning"},{"type":"category","label":"Old Presentations","collapsible":true,"collapsed":true,"items":[{"type":"link","label":"Unix History and Bash Introduction","href":"/docs/club/resources/old_presentations/unix-history-and-bash-intro","docId":"resources/old_presentations/unix-history-and-bash-intro"},{"type":"link","label":"Maintaining your Security and Privacy","href":"/docs/club/resources/old_presentations/security-and-privacy","docId":"resources/old_presentations/security-and-privacy"},{"type":"link","label":"Advanced Linux","href":"/docs/club/resources/old_presentations/advanced-linux","docId":"resources/old_presentations/advanced-linux"},{"type":"link","label":"Introduction to Web Design","href":"/docs/club/resources/old_presentations/codeathon-intro-to-web-design","docId":"resources/old_presentations/codeathon-intro-to-web-design"},{"type":"link","label":"Git and GitHub","href":"/docs/club/resources/old_presentations/git-and-github","docId":"resources/old_presentations/git-and-github"},{"type":"link","label":"How to do an Elevator Pitch","href":"/docs/club/resources/old_presentations/how-to-elevator-pitch","docId":"resources/old_presentations/how-to-elevator-pitch"},{"type":"link","label":"Intro to Digital Currencies and Blockchain","href":"/docs/club/resources/old_presentations/intro-to-blockchain","docId":"resources/old_presentations/intro-to-blockchain"},{"type":"link","label":"Intro to C#","href":"/docs/club/resources/old_presentations/intro-to-c-sharp","docId":"resources/old_presentations/intro-to-c-sharp"},{"type":"link","label":"Open Source Game Development","href":"/docs/club/resources/old_presentations/intro-to-game-dev","docId":"resources/old_presentations/intro-to-game-dev"},{"type":"link","label":"Introduction to Linux","href":"/docs/club/resources/old_presentations/intro-to-linux","docId":"resources/old_presentations/intro-to-linux"},{"type":"link","label":"Intro to Open Source","href":"/docs/club/resources/old_presentations/intro-to-open-source","docId":"resources/old_presentations/intro-to-open-source"},{"type":"link","label":"Optimizing Code with Project Euler","href":"/docs/club/resources/old_presentations/intro-to-optimization","docId":"resources/old_presentations/intro-to-optimization"},{"type":"link","label":"Intro to Rust","href":"/docs/club/resources/old_presentations/intro-to-rust","docId":"resources/old_presentations/intro-to-rust"},{"type":"link","label":"Introduction to WebExtensions","href":"/docs/club/resources/old_presentations/intro-to-webextensions","docId":"resources/old_presentations/intro-to-webextensions"},{"type":"link","label":"How to make money with Open Source","href":"/docs/club/resources/old_presentations/money-with-open-source","docId":"resources/old_presentations/money-with-open-source"},{"type":"link","label":"Sandstorm","href":"/docs/club/resources/old_presentations/sandstorm","docId":"resources/old_presentations/sandstorm"},{"type":"link","label":"Working on Open Source Projects","href":"/docs/club/resources/old_presentations/working-on-open-source","docId":"resources/old_presentations/working-on-open-source"}]},{"type":"link","label":"Rust Guide","href":"/docs/club/resources/rust","docId":"resources/rust"},{"type":"link","label":"Python Guide","href":"/docs/club/resources/python","docId":"resources/python"},{"type":"link","label":"Git & Github Guide","href":"/docs/club/resources/git","docId":"resources/git"}]}]},"docs":{"2019-2020/fall-gbm-09-11-19":{"id":"2019-2020/fall-gbm-09-11-19","title":"Fall GBM 1 (09/11/19)","description":"Club Archive 2019-2020 Fall GBM","sidebar":"defaultSidebar"},"2019-2020/fall-gbm-09-29-19":{"id":"2019-2020/fall-gbm-09-29-19","title":"Fall GBM 2 (09/29/19)","description":"Club Archive 2019-2020 Fall GBM","sidebar":"defaultSidebar"},"2021-2022/fall-gbm-09-09-21":{"id":"2021-2022/fall-gbm-09-09-21","title":"Fall GBM 1 (09/09/21)","description":"Club Archive 2021-2022 Fall GBM","sidebar":"defaultSidebar"},"2021-2022/fall-gbm-10-13-21":{"id":"2021-2022/fall-gbm-10-13-21","title":"Fall GBM 2 - Git & Github (10/13/21)","description":"Club Archive 2021-2022 Fall GBM","sidebar":"defaultSidebar"},"2021-2022/NLP-workshop":{"id":"2021-2022/NLP-workshop","title":"NLP Workshop","description":"Club Archive 2021-2022 NLP Workshop","sidebar":"defaultSidebar"},"2021-2022/spring-gbm-01-06-22":{"id":"2021-2022/spring-gbm-01-06-22","title":"Spring GBM 1 - Rust (01/06/22)","description":"Club Archive 2021-2022 Rust Spring GBM","sidebar":"defaultSidebar"},"2021-2022/spring-gbm-03-30-22":{"id":"2021-2022/spring-gbm-03-30-22","title":"Spring GBM 2 - Linux (03/30/22)","description":"Club Archive 2021-2022 Spring GBM","sidebar":"defaultSidebar"},"2021-2022/spring-gbm-04-06-22":{"id":"2021-2022/spring-gbm-04-06-22","title":"Spring GBM 3 - Elections (04/06/22)","description":"Club Archive 2021-2022 Spring GBM","sidebar":"defaultSidebar"},"2021-2022/swamphacks-git-01-26-22":{"id":"2021-2022/swamphacks-git-01-26-22","title":"Swamphacks Git Workshop","description":"Club Archive 2021-2022 Swamphacks Git Workshop","sidebar":"defaultSidebar"},"2021-2022/swamphacks-sql-01-30-22":{"id":"2021-2022/swamphacks-sql-01-30-22","title":"Swamphacks SQL Workshop","description":"Club Archive 2021-2022 Swamphacks SQL Workshop","sidebar":"defaultSidebar"},"2022-2023/fall-gbm-09-07-2022":{"id":"2022-2023/fall-gbm-09-07-2022","title":"Fall GBM 1 (09/07/22)","description":"Club Archive 2022-2023 Fall GBM","sidebar":"defaultSidebar"},"2022-2023/fall-gbm-11-04-2022":{"id":"2022-2023/fall-gbm-11-04-2022","title":"Fall GBM 2 (11/04/22)","description":"Club Archive 2022-2023 Fall GBM","sidebar":"defaultSidebar"},"2022-2023/spring-gbm-01-25-2023":{"id":"2022-2023/spring-gbm-01-25-2023","title":"Spring GBM 1 (01/25/23)","description":"Club Archive 2022-2023 Spring GBM 1 (01/25/23)","sidebar":"defaultSidebar"},"2022-2023/spring-gbm-03-30-2023":{"id":"2022-2023/spring-gbm-03-30-2023","title":"Spring GBM 2 (03/30/23)","description":"Club Archive 2022-2023 Spring GBM 2 (03/30/23)","sidebar":"defaultSidebar"},"2022-2023/spring-project-proposals":{"id":"2022-2023/spring-project-proposals","title":"Spring Project Proposals","description":"Club Archive 2022-2023 Spring Project Proposals","sidebar":"defaultSidebar"},"2023-2024/alarm-clock-promo-09-12-23":{"id":"2023-2024/alarm-clock-promo-09-12-23","title":"Alarm Clock Promo","description":"Club Archive 2023-2024 Alarm Clock Promo","sidebar":"defaultSidebar"},"2023-2024/fall-gbm-09-06-2023":{"id":"2023-2024/fall-gbm-09-06-2023","title":"Fall GBM 1 (09/06/23)","description":"Club Archive 2023-2024 Fall GBM","sidebar":"defaultSidebar"},"index":{"id":"index","title":"Introduction","description":"Club Archival Index","sidebar":"defaultSidebar"},"resources/bash":{"id":"resources/bash","title":"Bash Guide","description":"Club Archive Resources Bash Guide","sidebar":"defaultSidebar"},"resources/css":{"id":"resources/css","title":"CSS Guide","description":"Club Archive Resources CSS Guide","sidebar":"defaultSidebar"},"resources/git":{"id":"resources/git","title":"Git & Github Guide","description":"Club Archive Resources Git Guide","sidebar":"defaultSidebar"},"resources/html":{"id":"resources/html","title":"HTML Guide","description":"Club Archive Resources HTML Guide","sidebar":"defaultSidebar"},"resources/javascript":{"id":"resources/javascript","title":"JavaScript Guide","description":"Club Archive Resources JavaScript Guide","sidebar":"defaultSidebar"},"resources/old_presentations/advanced-linux":{"id":"resources/old_presentations/advanced-linux","title":"Advanced Linux","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/codeathon-intro-to-web-design":{"id":"resources/old_presentations/codeathon-intro-to-web-design","title":"Introduction to Web Design","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/git-and-github":{"id":"resources/old_presentations/git-and-github","title":"Git and GitHub","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/how-to-elevator-pitch":{"id":"resources/old_presentations/how-to-elevator-pitch","title":"How to do an Elevator Pitch","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/intro-to-blockchain":{"id":"resources/old_presentations/intro-to-blockchain","title":"Intro to Digital Currencies and Blockchain","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/intro-to-c-sharp":{"id":"resources/old_presentations/intro-to-c-sharp","title":"Intro to C#","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/intro-to-game-dev":{"id":"resources/old_presentations/intro-to-game-dev","title":"Open Source Game Development","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/intro-to-linux":{"id":"resources/old_presentations/intro-to-linux","title":"Introduction to Linux","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/intro-to-open-source":{"id":"resources/old_presentations/intro-to-open-source","title":"Intro to Open Source","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/intro-to-optimization":{"id":"resources/old_presentations/intro-to-optimization","title":"Optimizing Code with Project Euler","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/intro-to-rust":{"id":"resources/old_presentations/intro-to-rust","title":"Intro to Rust","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/intro-to-webextensions":{"id":"resources/old_presentations/intro-to-webextensions","title":"Introduction to WebExtensions","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/money-with-open-source":{"id":"resources/old_presentations/money-with-open-source","title":"How to make money with Open Source","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/sandstorm":{"id":"resources/old_presentations/sandstorm","title":"Sandstorm","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/security-and-privacy":{"id":"resources/old_presentations/security-and-privacy","title":"Maintaining your Security and Privacy","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/unix-history-and-bash-intro":{"id":"resources/old_presentations/unix-history-and-bash-intro","title":"Unix History and Bash Introduction","description":"Club Archive Resources Presentations","sidebar":"defaultSidebar"},"resources/old_presentations/working-on-open-source":{"id":"resources/old_presentations/working-on-open-source","title":"Working on Open Source Projects","description":"Club Archive Resources Presentations Working on Open Source Projects","sidebar":"defaultSidebar"},"resources/python":{"id":"resources/python","title":"Python Guide","description":"Club Archive Resources Python Guide","sidebar":"defaultSidebar"},"resources/rust":{"id":"resources/rust","title":"Rust Guide","description":"Club Archive Resources Rust Guide","sidebar":"defaultSidebar"},"resources/versioning":{"id":"resources/versioning","title":"Versioning Guide","description":"Club Archive Resources Versioning Guide","sidebar":"defaultSidebar"}}}')}}]); \ No newline at end of file diff --git a/assets/js/9b50b30c.61c7fd87.js b/assets/js/9b50b30c.224cf55c.js similarity index 63% rename from assets/js/9b50b30c.61c7fd87.js rename to assets/js/9b50b30c.224cf55c.js index 36929b7..77b9604 100644 --- a/assets/js/9b50b30c.61c7fd87.js +++ b/assets/js/9b50b30c.224cf55c.js @@ -1 +1 @@ -"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[9197],{3905:(e,t,n)=>{n.d(t,{Zo:()=>m,kt:()=>g});var a=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function r(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var l=a.createContext({}),c=function(e){var t=a.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):r(r({},t),e)),n},m=function(e){var t=c(e.components);return a.createElement(l.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},u=a.forwardRef((function(e,t){var n=e.components,o=e.mdxType,s=e.originalType,l=e.parentName,m=i(e,["components","mdxType","originalType","parentName"]),p=c(n),u=o,g=p["".concat(l,".").concat(u)]||p[u]||d[u]||s;return n?a.createElement(g,r(r({ref:t},m),{},{components:n})):a.createElement(g,r({ref:t},m))}));function g(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var s=n.length,r=new Array(s);r[0]=u;var i={};for(var l in t)hasOwnProperty.call(t,l)&&(i[l]=t[l]);i.originalType=e,i[p]="string"==typeof e?e:o,r[1]=i;for(var c=2;c{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>r,default:()=>d,frontMatter:()=>s,metadata:()=>i,toc:()=>c});var a=n(7462),o=(n(7294),n(3905));const s={title:"Using MongoDB",description:"Club Website Developer Database",sidebar_position:1},r="Using MongoDB",i={unversionedId:"Developers/Databases/mongodb",id:"Developers/Databases/mongodb",title:"Using MongoDB",description:"Club Website Developer Database",source:"@site/docs/website/Developers/Databases/mongodb.md",sourceDirName:"Developers/Databases",slug:"/Developers/Databases/mongodb",permalink:"/docs/website/Developers/Databases/mongodb",draft:!1,editUrl:"https://github.com/ufosc/osc-docs/blob/main/docs/website/Developers/Databases/mongodb.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{title:"Using MongoDB",description:"Club Website Developer Database",sidebar_position:1},sidebar:"defaultSidebar",previous:{title:"Rendering Pages",permalink:"/docs/website/Developers/rendering"},next:{title:"Database Models",permalink:"/docs/website/Developers/Databases/models"}},l={},c=[{value:"Mongoose Basics",id:"mongoose-basics",level:2},{value:"Example 1",id:"example-1",level:3},{value:"Example 2",id:"example-2",level:3},{value:"Database.js",id:"databasejs",level:2},{value:"Setting up your own database",id:"setting-up-your-own-database",level:2}],m={toc:c},p="wrapper";function d(e){let{components:t,...n}=e;return(0,o.kt)(p,(0,a.Z)({},m,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"using-mongodb"},"Using MongoDB"),(0,o.kt)("p",null,"The website uses ",(0,o.kt)("a",{parentName:"p",href:"https://www.mongodb.com/"},"MongoDB"),", a document-oriented database program, to fetch and serve information for the backend. When running in a development environment, the backend is automatically configured to connect to a public OSC testing database. This section documents the basic prolegomena of operating and managing the OSC Website database."),(0,o.kt)("p",null,"For the OSC testing URI, see ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/utils/config.js#L3"},"here")," (note that the database is public and volatile, and not meant for production environments). For instructions on changing environments or configuring your own Mongo connection URI, see ",(0,o.kt)("a",{parentName:"p",href:"/docs/website/Developers/configuration"},"here"),"."),(0,o.kt)("h2",{id:"mongoose-basics"},"Mongoose Basics"),(0,o.kt)("p",null,"The project uses the ",(0,o.kt)("a",{parentName:"p",href:"https://mongoosejs.com/"},"Mongoose")," library as an abstraction over the default MongoDB NodeJS package. Mongoose organizes database structures into schemas and models (analogous to schemas in SQL) that automatically validate and enforce rules on database entries. For instance:"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-js",metastring:'title="model/images.js"',title:'"model/images.js"'},"const mongoose = require('mongoose')\n\nconst ImageSchema = new mongoose.Schema({\n filename: {\n type: String,\n required: true\n },\n description: {\n type: String,\n required: true\n },\n path: {\n type: String,\n required: true\n },\n date: {\n type: Date,\n required: true,\n default: Date.now\n }\n})\n\nconst ImageModel = mongoose.model('image', ImageSchema)\nmodule.exports = { ImageSchema, ImageModel }\n")),(0,o.kt)("p",null,"In the ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/model/images.js"},"source above"),", an ",(0,o.kt)("inlineCode",{parentName:"p"},"ImageSchema")," is defined. The schema defines ",(0,o.kt)("inlineCode",{parentName:"p"},"filename, description, path, and date")," as properties of the 'Image' object. Similarly, it enforces certain rules over these properties: that 'filename' is a required string, that 'date' is a required JavaScript 'Date' object with a default value, etc."),(0,o.kt)("p",null,"Furthermore, Mongoose allows us to formalize a 'model' from this schema, in this case, it is named ",(0,o.kt)("inlineCode",{parentName:"p"},"ImageModel"),". The ",(0,o.kt)("inlineCode",{parentName:"p"},"ImageModel")," acts as a driver to our database's 'Image' collection (collections are structures similar to tables in SQL). Once the model is created, it is exported and ready to be used in other files. What follows is a series of code examples drawn from the website source code that illustrate what models are capable of:"),(0,o.kt)("h3",{id:"example-1"},"Example 1"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-js",metastring:'title="routes/images.js:32"',title:'"routes/images.js:32"'},"const images = await ImageModel.find().sort({ date: -1 })\n")),(0,o.kt)("p",null,"The ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/routes/images.js#L32"},"example")," above fetches all images in the database and sorts them in descending (-1) date order."),(0,o.kt)("h3",{id:"example-2"},"Example 2"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-js",metastring:'title="routes/images.js:68"',title:'"routes/images.js:68"'},"const image = new ImageModel({\n filename: req.file.filename,\n description: req.body.Description,\n path: req.file.path\n})\n\nimage.save((err) => {\n if (err) return res.status(500).send({ error: 'Internal Server Error' })\n})\n")),(0,o.kt)("p",null,"In the ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/routes/images.js#L68C3-L76C5"},"example")," above, a new ",(0,o.kt)("ins",null,"instance")," of an ",(0,o.kt)("inlineCode",{parentName:"p"},"ImageModel")," with some given data, automatically validates it to make sure it matches the schema we've defined, and then attempts to save it to the database."),(0,o.kt)("admonition",{title:"Further Reading",type:"info"},(0,o.kt)("p",{parentName:"admonition"},"To learn more about Mongoose and MongoDB, refer to the ",(0,o.kt)("a",{parentName:"p",href:"https://mongoosejs.com/docs/index.html"},"Mongoose Documentation")," and the ",(0,o.kt)("a",{parentName:"p",href:"https://www.mongodb.com/languages/mongodb-with-nodejs"},"MongoDB NodeJS documentation"),".")),(0,o.kt)("h2",{id:"databasejs"},"Database.js"),(0,o.kt)("p",null,"The database connection URI is configured in ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/utils/config.js"},"utils/config.js"),", whilst the effective database connection configuration happens in ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/utils/database.js"},"utils/database.js"),". The database utility modularizes the connection (allowing us to handle the connection in multiple files simultaneously), whilst also implementing various event listeners:"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-js",metastring:'title="utils/database.js"',title:'"utils/database.js"'},"mongoose.connection.on('connected', () => {\n // CONNECTION SUCCEEDED...\n})\n\nmongoose.connection.on('error', (error) => {\n // CONNECTION FAILED...\n})\n\nmongoose.connection.on('disconnected', () => {\n // DISCONNECTED...\n})\n\nprocess.on('SIGINT', (error, data) => {\n // SIGINT: User stopped the program.\n})\n")),(0,o.kt)("p",null,"Database.js is imported, and a database connection is subsequently opened in ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/app.js#L81"},"main.js"),"."),(0,o.kt)("h2",{id:"setting-up-your-own-database"},"Setting up your own database"),(0,o.kt)("p",null,"If you're interested in hosting your own instance of the website, you'll need to set up your own MongoDB node. The MongoDB team currently offers free (but limited) database hosting on their ",(0,o.kt)("a",{parentName:"p",href:"https://www.mongodb.com/atlas"},"MongoDB Atlas")," platform. Alternatively, you can set up MongoDB ",(0,o.kt)("a",{parentName:"p",href:"https://www.mongodb.com/try/download/community"},"community edition"),' on your machine and host your own instance for "free."'))}d.isMDXComponent=!0}}]); \ No newline at end of file +"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[9197],{3905:(e,t,n)=>{n.d(t,{Zo:()=>m,kt:()=>g});var a=n(7294);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,a)}return n}function r(e){for(var t=1;t=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var l=a.createContext({}),c=function(e){var t=a.useContext(l),n=t;return e&&(n="function"==typeof e?e(t):r(r({},t),e)),n},m=function(e){var t=c(e.components);return a.createElement(l.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return a.createElement(a.Fragment,{},t)}},u=a.forwardRef((function(e,t){var n=e.components,o=e.mdxType,s=e.originalType,l=e.parentName,m=i(e,["components","mdxType","originalType","parentName"]),p=c(n),u=o,g=p["".concat(l,".").concat(u)]||p[u]||d[u]||s;return n?a.createElement(g,r(r({ref:t},m),{},{components:n})):a.createElement(g,r({ref:t},m))}));function g(e,t){var n=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var s=n.length,r=new Array(s);r[0]=u;var i={};for(var l in t)hasOwnProperty.call(t,l)&&(i[l]=t[l]);i.originalType=e,i[p]="string"==typeof e?e:o,r[1]=i;for(var c=2;c{n.r(t),n.d(t,{assets:()=>l,contentTitle:()=>r,default:()=>d,frontMatter:()=>s,metadata:()=>i,toc:()=>c});var a=n(7462),o=(n(7294),n(3905));const s={title:"Using MongoDB",description:"Club Website Developer Database",sidebar_position:1},r="Using MongoDB",i={unversionedId:"Developers/Databases/mongodb",id:"Developers/Databases/mongodb",title:"Using MongoDB",description:"Club Website Developer Database",source:"@site/docs/website/Developers/Databases/mongodb.md",sourceDirName:"Developers/Databases",slug:"/Developers/Databases/mongodb",permalink:"/docs/website/Developers/Databases/mongodb",draft:!1,editUrl:"https://github.com/ufosc/osc-docs/blob/main/docs/website/Developers/Databases/mongodb.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{title:"Using MongoDB",description:"Club Website Developer Database",sidebar_position:1},sidebar:"defaultSidebar",previous:{title:"Rendering Pages",permalink:"/docs/website/Developers/rendering"},next:{title:"Database Models",permalink:"/docs/website/Developers/Databases/models"}},l={},c=[{value:"Mongoose Basics",id:"mongoose-basics",level:2},{value:"Example 1",id:"example-1",level:3},{value:"Example 2",id:"example-2",level:3},{value:"Database.js",id:"databasejs",level:2},{value:"Setting up your own database",id:"setting-up-your-own-database",level:2}],m={toc:c},p="wrapper";function d(e){let{components:t,...n}=e;return(0,o.kt)(p,(0,a.Z)({},m,n,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"using-mongodb"},"Using MongoDB"),(0,o.kt)("p",null,"The website uses ",(0,o.kt)("a",{parentName:"p",href:"https://www.mongodb.com/"},"MongoDB"),", a document-oriented database program, to fetch and serve information for the backend. When running in a development environment, the backend is automatically configured to connect to a public OSC testing database. This section documents the basic prolegomena of operating and managing the OSC Website database."),(0,o.kt)("p",null,"For the OSC testing URI, see ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/utils/config.js#L3"},"here")," (note that the database is public and volatile, and not meant for production environments). For instructions on changing environments or configuring your own Mongo connection URI, see ",(0,o.kt)("a",{parentName:"p",href:"/docs/website/Developers/configuration"},"here"),"."),(0,o.kt)("h2",{id:"mongoose-basics"},"Mongoose Basics"),(0,o.kt)("p",null,"The project uses the ",(0,o.kt)("a",{parentName:"p",href:"https://mongoosejs.com/"},"Mongoose")," library as an abstraction over the default MongoDB NodeJS package. Mongoose organizes database structures into schemas and models (analogous to schemas in SQL) that automatically validate and enforce rules on database entries. For instance:"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-js",metastring:'title="model/images.js"',title:'"model/images.js"'},"const mongoose = require('mongoose')\n\nconst ImageSchema = new mongoose.Schema({\n filename: {\n type: String,\n required: true\n },\n description: {\n type: String,\n required: true\n },\n path: {\n type: String,\n required: true\n },\n date: {\n type: Date,\n required: true,\n default: Date.now\n }\n})\n\nconst ImageModel = mongoose.model('image', ImageSchema)\nmodule.exports = { ImageSchema, ImageModel }\n")),(0,o.kt)("p",null,"In the ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/model/images.js"},"source above"),", an ",(0,o.kt)("inlineCode",{parentName:"p"},"ImageSchema")," is defined. The schema defines ",(0,o.kt)("inlineCode",{parentName:"p"},"filename, description, path, and date")," as properties of the 'Image' object. Similarly, it enforces certain rules over these properties: that 'filename' is a required string, that 'date' is a required JavaScript 'Date' object with a default value, etc."),(0,o.kt)("p",null,"Furthermore, Mongoose allows us to formalize a 'model' from this schema, in this case, it is named ",(0,o.kt)("inlineCode",{parentName:"p"},"ImageModel"),". The ",(0,o.kt)("inlineCode",{parentName:"p"},"ImageModel")," acts as a driver to our database's 'Image' collection (collections are structures similar to tables in SQL). Once the model is created, it is exported and ready to be used in other files. What follows is a series of code examples drawn from the website sourcecode that illustrate what models are capable of:"),(0,o.kt)("h3",{id:"example-1"},"Example 1"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-js",metastring:'title="routes/images.js:32"',title:'"routes/images.js:32"'},"const images = await ImageModel.find().sort({ date: -1 })\n")),(0,o.kt)("p",null,"The ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/routes/images.js#L32"},"example")," above fetches all images in the database and sorts them in descending (-1) date order."),(0,o.kt)("h3",{id:"example-2"},"Example 2"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-js",metastring:'title="routes/images.js:68"',title:'"routes/images.js:68"'},"const image = new ImageModel({\n filename: req.file.filename,\n description: req.body.Description,\n path: req.file.path\n})\n\nimage.save((err) => {\n if (err) return res.status(500).send({ error: 'Internal Server Error' })\n})\n")),(0,o.kt)("p",null,"In the ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/routes/images.js#L68C3-L76C5"},"example")," above, a new ",(0,o.kt)("ins",null,"instance")," of an ",(0,o.kt)("inlineCode",{parentName:"p"},"ImageModel")," with some given data, automatically validates it to make sure it matches the schema we've defined, and then attempts to save it to the database."),(0,o.kt)("admonition",{title:"Further Reading",type:"info"},(0,o.kt)("p",{parentName:"admonition"},"To learn more about Mongoose and MongoDB, refer to the ",(0,o.kt)("a",{parentName:"p",href:"https://mongoosejs.com/docs/index.html"},"Mongoose Documentation")," and the ",(0,o.kt)("a",{parentName:"p",href:"https://www.mongodb.com/languages/mongodb-with-nodejs"},"MongoDB NodeJS documentation"),".")),(0,o.kt)("h2",{id:"databasejs"},"Database.js"),(0,o.kt)("p",null,"The database connection URI is configured in ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/utils/config.js"},"utils/config.js"),", whilst the effective database connection configuration happens in ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/utils/database.js"},"utils/database.js"),". The database utility modularizes the connection (allowing us to handle the connection in multiple files simultaneously), whilst also implementing various event listeners:"),(0,o.kt)("pre",null,(0,o.kt)("code",{parentName:"pre",className:"language-js",metastring:'title="utils/database.js"',title:'"utils/database.js"'},"mongoose.connection.on('connected', () => {\n // CONNECTION SUCCEEDED...\n})\n\nmongoose.connection.on('error', (error) => {\n // CONNECTION FAILED...\n})\n\nmongoose.connection.on('disconnected', () => {\n // DISCONNECTED...\n})\n\nprocess.on('SIGINT', (error, data) => {\n // SIGINT: User stopped the program.\n})\n")),(0,o.kt)("p",null,"Database.js is imported, and a database connection is subsequently opened in ",(0,o.kt)("a",{parentName:"p",href:"https://github.com/ufosc/Club_Website_2/blob/main/app.js#L81"},"main.js"),"."),(0,o.kt)("h2",{id:"setting-up-your-own-database"},"Setting up your own database"),(0,o.kt)("p",null,"If you're interested in hosting your own instance of the website, you'll need to set up your own MongoDB node. The MongoDB team currently offers free (but limited) database hosting on their ",(0,o.kt)("a",{parentName:"p",href:"https://www.mongodb.com/atlas"},"MongoDB Atlas")," platform. Alternatively, you can set up MongoDB ",(0,o.kt)("a",{parentName:"p",href:"https://www.mongodb.com/try/download/community"},"community edition"),' on your machine and host your own instance for "free."'))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/be3efe0c.bf3ef220.js b/assets/js/be3efe0c.bf3ef220.js new file mode 100644 index 0000000..e9d6fff --- /dev/null +++ b/assets/js/be3efe0c.bf3ef220.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[5466],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>m});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function l(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var c=n.createContext({}),s=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},p=function(e){var t=s(e.components);return n.createElement(c.Provider,{value:t},e.children)},u="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,l=e.originalType,c=e.parentName,p=i(e,["components","mdxType","originalType","parentName"]),u=s(r),f=o,m=u["".concat(c,".").concat(f)]||u[f]||d[f]||l;return r?n.createElement(m,a(a({ref:t},p),{},{components:r})):n.createElement(m,a({ref:t},p))}));function m(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var l=r.length,a=new Array(l);a[0]=f;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i[u]="string"==typeof e?e:o,a[1]=i;for(var s=2;s{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>a,default:()=>d,frontMatter:()=>l,metadata:()=>i,toc:()=>s});var n=r(7462),o=(r(7294),r(3905));const l={title:"Fall GBM 1 (09/06/23)",description:"Club Archive 2023-2024 Fall GBM",sidebar_position:1},a="Fall GBM 1 (09/06/23)",i={unversionedId:"2023-2024/fall-gbm-09-06-2023",id:"2023-2024/fall-gbm-09-06-2023",title:"Fall GBM 1 (09/06/23)",description:"Club Archive 2023-2024 Fall GBM",source:"@site/docs/club/2023-2024/fall-gbm-09-06-2023.md",sourceDirName:"2023-2024",slug:"/2023-2024/fall-gbm-09-06-2023",permalink:"/docs/club/2023-2024/fall-gbm-09-06-2023",draft:!1,editUrl:"https://github.com/ufosc/osc-docs/blob/main/docs/club/2023-2024/fall-gbm-09-06-2023.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{title:"Fall GBM 1 (09/06/23)",description:"Club Archive 2023-2024 Fall GBM",sidebar_position:1},sidebar:"defaultSidebar",previous:{title:"Introduction",permalink:"/docs/club/"},next:{title:"Alarm Clock Promo",permalink:"/docs/club/2023-2024/alarm-clock-promo-09-12-23"}},c={},s=[{value:"Recording",id:"recording",level:2},{value:"Slideshow",id:"slideshow",level:2}],p={toc:s},u="wrapper";function d(e){let{components:t,...r}=e;return(0,o.kt)(u,(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"fall-gbm-1-090623"},"Fall GBM 1 (09/06/23)"),(0,o.kt)("h2",{id:"recording"},"Recording"),(0,o.kt)("p",null,"The recording is available on ",(0,o.kt)("a",{parentName:"p",href:"https://drive.google.com/file/d/1ezDXmgqs2uz3KuJRORVQnWwxmTvKgOUE/view?usp=sharing"},"Google Drive"),"."),(0,o.kt)("h2",{id:"slideshow"},"Slideshow"),(0,o.kt)("iframe",{src:"https://docs.google.com/presentation/d/e/2PACX-1vTG2y_B9y5O74h5fS1S4ZbgCl1wfZOC_ny0ZFzv03kWdAX8i5EvhktLXMC3MFP8b4GsHlTmb0lDvEic/embed?start=false&loop=false&delayms=3000",frameborder:"0",width:"960",height:"569",allowfullscreen:"true",mozallowfullscreen:"true",webkitallowfullscreen:"true"}),(0,o.kt)("p",null,"This presentation is also available on ",(0,o.kt)("a",{parentName:"p",href:"https://docs.google.com/presentation/d/1jlztJlhocnK-dWYM_LTsSrVH7xbEOygTymiAvfejO_Q/edit?usp=sharing"},"Google Slides"),"."))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/be3efe0c.e05fea34.js b/assets/js/be3efe0c.e05fea34.js deleted file mode 100644 index 332be87..0000000 --- a/assets/js/be3efe0c.e05fea34.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[5466],{3905:(e,t,r)=>{r.d(t,{Zo:()=>u,kt:()=>m});var n=r(7294);function l(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(l[r]=e[r]);return l}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r])}return l}var c=n.createContext({}),s=function(e){var t=n.useContext(c),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},u=function(e){var t=s(e.components);return n.createElement(c.Provider,{value:t},e.children)},p="mdxType",d={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},f=n.forwardRef((function(e,t){var r=e.components,l=e.mdxType,o=e.originalType,c=e.parentName,u=i(e,["components","mdxType","originalType","parentName"]),p=s(r),f=l,m=p["".concat(c,".").concat(f)]||p[f]||d[f]||o;return r?n.createElement(m,a(a({ref:t},u),{},{components:r})):n.createElement(m,a({ref:t},u))}));function m(e,t){var r=arguments,l=t&&t.mdxType;if("string"==typeof e||l){var o=r.length,a=new Array(o);a[0]=f;var i={};for(var c in t)hasOwnProperty.call(t,c)&&(i[c]=t[c]);i.originalType=e,i[p]="string"==typeof e?e:l,a[1]=i;for(var s=2;s{r.r(t),r.d(t,{assets:()=>c,contentTitle:()=>a,default:()=>d,frontMatter:()=>o,metadata:()=>i,toc:()=>s});var n=r(7462),l=(r(7294),r(3905));const o={title:"Fall GBM 1 (09/06/23)",description:"Club Archive 2023-2024 Fall GBM",sidebar_position:1},a="Fall GBM 1 (09/06/23)",i={unversionedId:"2023-2024/fall-gbm-09-06-2023",id:"2023-2024/fall-gbm-09-06-2023",title:"Fall GBM 1 (09/06/23)",description:"Club Archive 2023-2024 Fall GBM",source:"@site/docs/club/2023-2024/fall-gbm-09-06-2023.md",sourceDirName:"2023-2024",slug:"/2023-2024/fall-gbm-09-06-2023",permalink:"/docs/club/2023-2024/fall-gbm-09-06-2023",draft:!1,editUrl:"https://github.com/ufosc/osc-docs/blob/main/docs/club/2023-2024/fall-gbm-09-06-2023.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{title:"Fall GBM 1 (09/06/23)",description:"Club Archive 2023-2024 Fall GBM",sidebar_position:1},sidebar:"defaultSidebar",previous:{title:"Introduction",permalink:"/docs/club/"},next:{title:"Fall GBM 1 (09/07/22)",permalink:"/docs/club/2022-2023/fall-gbm-09-07-2022"}},c={},s=[{value:"Recording",id:"recording",level:2},{value:"Slideshow",id:"slideshow",level:2}],u={toc:s},p="wrapper";function d(e){let{components:t,...r}=e;return(0,l.kt)(p,(0,n.Z)({},u,r,{components:t,mdxType:"MDXLayout"}),(0,l.kt)("h1",{id:"fall-gbm-1-090623"},"Fall GBM 1 (09/06/23)"),(0,l.kt)("h2",{id:"recording"},"Recording"),(0,l.kt)("p",null,"The recording is available on ",(0,l.kt)("a",{parentName:"p",href:"https://drive.google.com/file/d/1ezDXmgqs2uz3KuJRORVQnWwxmTvKgOUE/view?usp=sharing"},"Google Drive"),"."),(0,l.kt)("h2",{id:"slideshow"},"Slideshow"),(0,l.kt)("iframe",{src:"https://docs.google.com/presentation/d/e/2PACX-1vTG2y_B9y5O74h5fS1S4ZbgCl1wfZOC_ny0ZFzv03kWdAX8i5EvhktLXMC3MFP8b4GsHlTmb0lDvEic/embed?start=false&loop=false&delayms=3000",frameborder:"0",width:"960",height:"569",allowfullscreen:"true",mozallowfullscreen:"true",webkitallowfullscreen:"true"}),(0,l.kt)("p",null,"This presentation is also available on ",(0,l.kt)("a",{parentName:"p",href:"https://docs.google.com/presentation/d/1jlztJlhocnK-dWYM_LTsSrVH7xbEOygTymiAvfejO_Q/edit?usp=sharing"},"Google Slides"),"."))}d.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/e41e86bd.d774ddc9.js b/assets/js/e41e86bd.d774ddc9.js deleted file mode 100644 index 936e1d3..0000000 --- a/assets/js/e41e86bd.d774ddc9.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[3785],{6644:s=>{s.exports=JSON.parse('{"name":"docusaurus-plugin-content-docs","id":"website"}')}}]); \ No newline at end of file diff --git a/assets/js/ebb803d9.1bde7368.js b/assets/js/ebb803d9.1bde7368.js deleted file mode 100644 index 7f713c1..0000000 --- a/assets/js/ebb803d9.1bde7368.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[5290],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>m});var n=r(7294);function l(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function o(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(l[r]=e[r]);return l}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(l[r]=e[r])}return l}var i=n.createContext({}),s=function(e){var t=n.useContext(i),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},p=function(e){var t=s(e.components);return n.createElement(i.Provider,{value:t},e.children)},u="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},d=n.forwardRef((function(e,t){var r=e.components,l=e.mdxType,o=e.originalType,i=e.parentName,p=c(e,["components","mdxType","originalType","parentName"]),u=s(r),d=l,m=u["".concat(i,".").concat(d)]||u[d]||f[d]||o;return r?n.createElement(m,a(a({ref:t},p),{},{components:r})):n.createElement(m,a({ref:t},p))}));function m(e,t){var r=arguments,l=t&&t.mdxType;if("string"==typeof e||l){var o=r.length,a=new Array(o);a[0]=d;var c={};for(var i in t)hasOwnProperty.call(t,i)&&(c[i]=t[i]);c.originalType=e,c[u]="string"==typeof e?e:l,a[1]=c;for(var s=2;s{r.r(t),r.d(t,{assets:()=>i,contentTitle:()=>a,default:()=>f,frontMatter:()=>o,metadata:()=>c,toc:()=>s});var n=r(7462),l=(r(7294),r(3905));const o={title:"Fall GBM 1 (09/07/22)",description:"Club Archive 2022-2023 Fall GBM",sidebar_position:1},a="Fall GBM 1 (09/07/22)",c={unversionedId:"2022-2023/fall-gbm-09-07-2022",id:"2022-2023/fall-gbm-09-07-2022",title:"Fall GBM 1 (09/07/22)",description:"Club Archive 2022-2023 Fall GBM",source:"@site/docs/club/2022-2023/fall-gbm-09-07-2022.md",sourceDirName:"2022-2023",slug:"/2022-2023/fall-gbm-09-07-2022",permalink:"/docs/club/2022-2023/fall-gbm-09-07-2022",draft:!1,editUrl:"https://github.com/ufosc/osc-docs/blob/main/docs/club/2022-2023/fall-gbm-09-07-2022.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{title:"Fall GBM 1 (09/07/22)",description:"Club Archive 2022-2023 Fall GBM",sidebar_position:1},sidebar:"defaultSidebar",previous:{title:"Fall GBM 1 (09/06/23)",permalink:"/docs/club/2023-2024/fall-gbm-09-06-2023"},next:{title:"Fall GBM 2 (11/04/22)",permalink:"/docs/club/2022-2023/fall-gbm-11-04-2022"}},i={},s=[],p={toc:s},u="wrapper";function f(e){let{components:t,...r}=e;return(0,l.kt)(u,(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,l.kt)("h1",{id:"fall-gbm-1-090722"},"Fall GBM 1 (09/07/22)"),(0,l.kt)("iframe",{src:"https://docs.google.com/presentation/d/e/2PACX-1vSW-hT3ynU6-prD1oAbz6sYIcO9pdcBGMDDiIfZryTXm0FMam7z5CCGG52dDTUa_bTYxpnv4Ff8t28E/embed?start=false&loop=false&delayms=3000",frameborder:"0",width:"960",height:"569",allowfullscreen:"true",mozallowfullscreen:"true",webkitallowfullscreen:"true"}),(0,l.kt)("p",null,"The presentation is also available on ",(0,l.kt)("a",{parentName:"p",href:"https://docs.google.com/presentation/d/13u7jclkz1zw64wItw1jzgoTLh9LmkWdT3B02B6BnnKs/edit?usp=sharing"},"Google Slides"),"."))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/ebb803d9.2ea536b4.js b/assets/js/ebb803d9.2ea536b4.js new file mode 100644 index 0000000..ae6eb58 --- /dev/null +++ b/assets/js/ebb803d9.2ea536b4.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[5290],{3905:(e,t,r)=>{r.d(t,{Zo:()=>p,kt:()=>d});var n=r(7294);function o(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function l(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function a(e){for(var t=1;t=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var i=n.createContext({}),s=function(e){var t=n.useContext(i),r=t;return e&&(r="function"==typeof e?e(t):a(a({},t),e)),r},p=function(e){var t=s(e.components);return n.createElement(i.Provider,{value:t},e.children)},u="mdxType",f={inlineCode:"code",wrapper:function(e){var t=e.children;return n.createElement(n.Fragment,{},t)}},m=n.forwardRef((function(e,t){var r=e.components,o=e.mdxType,l=e.originalType,i=e.parentName,p=c(e,["components","mdxType","originalType","parentName"]),u=s(r),m=o,d=u["".concat(i,".").concat(m)]||u[m]||f[m]||l;return r?n.createElement(d,a(a({ref:t},p),{},{components:r})):n.createElement(d,a({ref:t},p))}));function d(e,t){var r=arguments,o=t&&t.mdxType;if("string"==typeof e||o){var l=r.length,a=new Array(l);a[0]=m;var c={};for(var i in t)hasOwnProperty.call(t,i)&&(c[i]=t[i]);c.originalType=e,c[u]="string"==typeof e?e:o,a[1]=c;for(var s=2;s{r.r(t),r.d(t,{assets:()=>i,contentTitle:()=>a,default:()=>f,frontMatter:()=>l,metadata:()=>c,toc:()=>s});var n=r(7462),o=(r(7294),r(3905));const l={title:"Fall GBM 1 (09/07/22)",description:"Club Archive 2022-2023 Fall GBM",sidebar_position:1},a="Fall GBM 1 (09/07/22)",c={unversionedId:"2022-2023/fall-gbm-09-07-2022",id:"2022-2023/fall-gbm-09-07-2022",title:"Fall GBM 1 (09/07/22)",description:"Club Archive 2022-2023 Fall GBM",source:"@site/docs/club/2022-2023/fall-gbm-09-07-2022.md",sourceDirName:"2022-2023",slug:"/2022-2023/fall-gbm-09-07-2022",permalink:"/docs/club/2022-2023/fall-gbm-09-07-2022",draft:!1,editUrl:"https://github.com/ufosc/osc-docs/blob/main/docs/club/2022-2023/fall-gbm-09-07-2022.md",tags:[],version:"current",sidebarPosition:1,frontMatter:{title:"Fall GBM 1 (09/07/22)",description:"Club Archive 2022-2023 Fall GBM",sidebar_position:1},sidebar:"defaultSidebar",previous:{title:"Alarm Clock Promo",permalink:"/docs/club/2023-2024/alarm-clock-promo-09-12-23"},next:{title:"Fall GBM 2 (11/04/22)",permalink:"/docs/club/2022-2023/fall-gbm-11-04-2022"}},i={},s=[],p={toc:s},u="wrapper";function f(e){let{components:t,...r}=e;return(0,o.kt)(u,(0,n.Z)({},p,r,{components:t,mdxType:"MDXLayout"}),(0,o.kt)("h1",{id:"fall-gbm-1-090722"},"Fall GBM 1 (09/07/22)"),(0,o.kt)("iframe",{src:"https://docs.google.com/presentation/d/e/2PACX-1vSW-hT3ynU6-prD1oAbz6sYIcO9pdcBGMDDiIfZryTXm0FMam7z5CCGG52dDTUa_bTYxpnv4Ff8t28E/embed?start=false&loop=false&delayms=3000",frameborder:"0",width:"960",height:"569",allowfullscreen:"true",mozallowfullscreen:"true",webkitallowfullscreen:"true"}),(0,o.kt)("p",null,"The presentation is also available on ",(0,o.kt)("a",{parentName:"p",href:"https://docs.google.com/presentation/d/13u7jclkz1zw64wItw1jzgoTLh9LmkWdT3B02B6BnnKs/edit?usp=sharing"},"Google Slides"),"."))}f.isMDXComponent=!0}}]); \ No newline at end of file diff --git a/assets/js/main.3ae05f69.js b/assets/js/main.3ae05f69.js deleted file mode 100644 index 7ca78af..0000000 --- a/assets/js/main.3ae05f69.js +++ /dev/null @@ -1,2 +0,0 @@ -/*! For license information please see main.3ae05f69.js.LICENSE.txt */ -(self.webpackChunkosc_docs=self.webpackChunkosc_docs||[]).push([[179],{723:(e,t,n)=>{"use strict";n.d(t,{Z:()=>f});var r=n(7294),o=n(7462),a=n(8356),i=n.n(a),l=n(6887);const s={"00b93840":[()=>n.e(882).then(n.bind(n,9418)),"@site/docs/club/2021-2022/spring-gbm-03-30-22.md",9418],"0e39a0cd":[()=>n.e(3290).then(n.bind(n,1291)),"@site/docs/website/Developers/Databases/models.md",1291],"12000fc4":[()=>n.e(4212).then(n.bind(n,9112)),"@site/docs/website/Developers/rendering.md",9112],"12f0493a":[()=>n.e(8841).then(n.t.bind(n,5172,19)),"/Users/mz/projects/osc-docs/.docusaurus/docusaurus-plugin-content-docs/osc-docs/plugin-route-context-module-100.json",5172],17896441:[()=>Promise.all([n.e(532),n.e(9455),n.e(7918)]).then(n.bind(n,903)),"@theme/DocItem",903],"1be78505":[()=>Promise.all([n.e(532),n.e(9514)]).then(n.bind(n,9963)),"@theme/DocPage",9963],"1de99325":[()=>n.e(9465).then(n.bind(n,5351)),"@site/docs/website/Developers/authentication.md",5351],"1f391b9e":[()=>Promise.all([n.e(532),n.e(9455),n.e(3085)]).then(n.bind(n,4247)),"@theme/MDXPage",4247],"24e3deeb":[()=>n.e(2151).then(n.bind(n,7167)),"@site/docs/club/resources/old_presentations/intro-to-linux.md",7167],"26e5135d":[()=>n.e(4252).then(n.bind(n,1574)),"@site/docs/osc-docs/index.md",1574],"28dfb2d5":[()=>n.e(7034).then(n.bind(n,6370)),"@site/docs/club/2021-2022/fall-gbm-09-09-21.md",6370],"2a3c7f3c":[()=>n.e(808).then(n.bind(n,7010)),"@site/docs/club/2022-2023/fall-gbm-11-04-2022.md",7010],"2cc0550e":[()=>n.e(942).then(n.bind(n,3894)),"@site/docs/website/Developers/API/contact.md",3894],"31287fdd":[()=>n.e(9394).then(n.bind(n,8857)),"@site/docs/website/Developers/configuration.md",8857],"345cd306":[()=>n.e(5097).then(n.bind(n,9084)),"@site/docs/club/resources/old_presentations/how-to-elevator-pitch.md",9084],"347d410c":[()=>n.e(2644).then(n.bind(n,1275)),"@site/docs/website/Developers/caching.md",1275],35041632:[()=>n.e(8838).then(n.bind(n,1713)),"@site/docs/club/2021-2022/fall-gbm-10-13-21.md",1713],"3653961f":[()=>n.e(2407).then(n.bind(n,9933)),"@site/docs/swamp-scheduler/index.md",9933],"3a1cec24":[()=>n.e(9961).then(n.bind(n,3222)),"@site/docs/website/Developers/API/edit.md",3222],"3e1809f5":[()=>n.e(8272).then(n.bind(n,6095)),"@site/docs/club/resources/old_presentations/intro-to-c-sharp.md",6095],"409871ed":[()=>n.e(5832).then(n.bind(n,7772)),"@site/docs/club/2021-2022/NLP-workshop.md",7772],"445dc9c6":[()=>n.e(4194).then(n.bind(n,1032)),"@site/docs/club/resources/css.md",1032],"4902f272":[()=>n.e(6721).then(n.bind(n,5628)),"@site/docs/club/resources/git.md",5628],"491c5730":[()=>n.e(2367).then(n.t.bind(n,8021,19)),"~docs/swamp-scheduler/version-current-metadata-prop-751.json",8021],"4a5926c2":[()=>n.e(6517).then(n.bind(n,1844)),"@site/docs/club/resources/bash.md",1844],"4bafea93":[()=>n.e(6676).then(n.bind(n,3358)),"@site/docs/club/resources/old_presentations/git-and-github.md",3358],"4c284684":[()=>n.e(5868).then(n.bind(n,9696)),"@site/docs/club/resources/old_presentations/sandstorm.md",9696],"56f4606f":[()=>n.e(5041).then(n.bind(n,8176)),"@site/docs/club/2021-2022/spring-gbm-04-06-22.md",8176],"5843de5d":[()=>n.e(6965).then(n.t.bind(n,2011,19)),"~docs/osc-docs/version-current-metadata-prop-751.json",2011],"59a06d98":[()=>n.e(5031).then(n.bind(n,4035)),"@site/docs/website/Developers/Databases/image-storage.md",4035],"5bf5bdb1":[()=>n.e(4199).then(n.bind(n,4200)),"@site/docs/website/Developers/introduction.md",4200],"5e5be025":[()=>n.e(6212).then(n.bind(n,3285)),"@site/docs/club/resources/old_presentations/working-on-open-source.md",3285],"64ce9347":[()=>n.e(8969).then(n.bind(n,1509)),"@site/docs/club/resources/old_presentations/security-and-privacy.md",1509],"6a1127a5":[()=>n.e(6429).then(n.bind(n,5545)),"@site/docs/club/resources/old_presentations/intro-to-open-source.md",5545],"6a2729da":[()=>n.e(4492).then(n.t.bind(n,5745,19)),"/Users/mz/projects/osc-docs/.docusaurus/docusaurus-plugin-content-pages/default/plugin-route-context-module-100.json",5745],"6c220528":[()=>n.e(8007).then(n.bind(n,2313)),"@site/docs/club/2021-2022/spring-gbm-01-06-22.md",2313],"6ca7e745":[()=>n.e(366).then(n.bind(n,2636)),"@site/docs/website/api-reference.md",2636],"6d49fdd4":[()=>n.e(2424).then(n.bind(n,4458)),"@site/docs/website/Developers/API/blog.md",4458],"6f814450":[()=>n.e(2317).then(n.bind(n,8891)),"@site/docs/club/resources/python.md",8891],"749ef08d":[()=>n.e(2886).then(n.bind(n,4681)),"@site/docs/website/admin.md",4681],"75a7683f":[()=>n.e(9062).then(n.bind(n,576)),"@site/docs/osc-docs/markdown.md",576],"7da8cb4d":[()=>n.e(8072).then(n.bind(n,644)),"@site/docs/club/2021-2022/swamphacks-sql-01-30-22.md",644],"8161bbfb":[()=>n.e(4672).then(n.bind(n,1446)),"@site/docs/website/Developers/contributing-guide.md",1446],"9088a3a0":[()=>n.e(380).then(n.bind(n,7415)),"@site/docs/club/resources/versioning.md",7415],"90fd6d48":[()=>n.e(9105).then(n.bind(n,2716)),"@site/docs/club/resources/javascript.md",2716],"9232a1e9":[()=>n.e(779).then(n.bind(n,1751)),"@site/docs/osc-docs/writingdocs.md",1751],"935f2afb":[()=>n.e(53).then(n.t.bind(n,1109,19)),"~docs/default/version-current-metadata-prop-751.json",1109],"9b50b30c":[()=>n.e(9197).then(n.bind(n,9882)),"@site/docs/website/Developers/Databases/mongodb.md",9882],"9d0ebba8":[()=>n.e(3933).then(n.bind(n,449)),"@site/docs/club/2022-2023/spring-gbm-03-30-2023.md",449],a3400b8b:[()=>n.e(9367).then(n.bind(n,6145)),"@site/docs/club/resources/old_presentations/intro-to-webextensions.md",6145],aac22d58:[()=>n.e(3341).then(n.bind(n,36)),"@site/docs/club/resources/old_presentations/intro-to-optimization.md",36],ab8dd82e:[()=>n.e(5160).then(n.bind(n,4829)),"@site/docs/website/Developers/kubernetes.md",4829],ae9b22e7:[()=>n.e(3255).then(n.bind(n,2222)),"@site/docs/club/resources/old_presentations/intro-to-game-dev.md",2222],af92e7ae:[()=>n.e(1827).then(n.bind(n,8615)),"@site/docs/club/resources/html.md",8615],b03ee68b:[()=>n.e(5368).then(n.bind(n,6765)),"@site/docs/website/Developers/API/images.md",6765],bd19a0bf:[()=>n.e(4217).then(n.bind(n,5251)),"@site/docs/website/index.md",5251],bd7c2054:[()=>n.e(9398).then(n.bind(n,4146)),"@site/docs/website/Developers/API/users.md",4146],bdbf0ec8:[()=>n.e(9809).then(n.bind(n,2309)),"@site/docs/club/index.md",2309],be3efe0c:[()=>n.e(5466).then(n.bind(n,7407)),"@site/docs/club/2023-2024/fall-gbm-09-06-2023.md",7407],c2daecaa:[()=>n.e(7681).then(n.bind(n,1114)),"@site/docs/club/resources/old_presentations/codeathon-intro-to-web-design.md",1114],c4bf2b51:[()=>n.e(9992).then(n.bind(n,3164)),"@site/docs/club/2022-2023/spring-project-proposals.md",3164],c9a7d346:[()=>n.e(3118).then(n.bind(n,8455)),"@site/docs/club/resources/old_presentations/advanced-linux.md",8455],cad82f49:[()=>n.e(5442).then(n.t.bind(n,3769,19)),"/Users/mz/projects/osc-docs/.docusaurus/docusaurus-plugin-content-docs/default/plugin-route-context-module-100.json",3769],cbb21fe1:[()=>n.e(3903).then(n.bind(n,5829)),"@site/docs/website/Developers/testing.md",5829],d502361b:[()=>n.e(7445).then(n.bind(n,2718)),"@site/docs/osc-docs/usage.md",2718],d8099116:[()=>n.e(2787).then(n.bind(n,225)),"@site/docs/club/resources/old_presentations/intro-to-rust.md",225],d8a3a66a:[()=>n.e(6713).then(n.t.bind(n,1295,19)),"~docs/website/version-current-metadata-prop-751.json",1295],da93d01d:[()=>n.e(4385).then(n.t.bind(n,9229,19)),"/Users/mz/projects/osc-docs/.docusaurus/docusaurus-plugin-content-docs/swamp-scheduler/plugin-route-context-module-100.json",9229],dd34c948:[()=>n.e(7764).then(n.bind(n,1211)),"@site/docs/website/Developers/API/api.md",1211],ded0a667:[()=>n.e(5859).then(n.bind(n,3941)),"@site/docs/club/2022-2023/spring-gbm-01-25-2023.md",3941],e064b256:[()=>n.e(9170).then(n.bind(n,1611)),"@site/docs/osc-docs/docusaurus.md",1611],e1520d8a:[()=>n.e(5850).then(n.bind(n,6770)),"@site/docs/club/2021-2022/swamphacks-git-01-26-22.md",6770],e21360b6:[()=>n.e(2536).then(n.bind(n,2071)),"@site/docs/club/resources/old_presentations/unix-history-and-bash-intro.md",2071],e41e86bd:[()=>n.e(3785).then(n.t.bind(n,6644,19)),"/Users/mz/projects/osc-docs/.docusaurus/docusaurus-plugin-content-docs/website/plugin-route-context-module-100.json",6644],e50af630:[()=>n.e(678).then(n.bind(n,6198)),"@site/docs/club/resources/rust.md",6198],ea395eac:[()=>n.e(1936).then(n.bind(n,7383)),"@site/docs/osc-docs/static-pages.md",7383],ebb803d9:[()=>n.e(5290).then(n.bind(n,7972)),"@site/docs/club/2022-2023/fall-gbm-09-07-2022.md",7972],f3976560:[()=>n.e(2844).then(n.bind(n,672)),"@site/src/pages/index.md",672],f432dd47:[()=>n.e(4488).then(n.bind(n,6451)),"@site/docs/club/resources/old_presentations/money-with-open-source.md",6451],f95c0569:[()=>n.e(2022).then(n.bind(n,2873)),"@site/docs/osc-docs/installation.md",2873],fb9dd851:[()=>n.e(2335).then(n.bind(n,1895)),"@site/docs/club/resources/old_presentations/intro-to-blockchain.md",1895]};function c(e){let{error:t,retry:n,pastDelay:o}=e;return t?r.createElement("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%"}},r.createElement("p",null,String(t)),r.createElement("div",null,r.createElement("button",{type:"button",onClick:n},"Retry"))):o?r.createElement("div",{style:{display:"flex",justifyContent:"center",alignItems:"center",height:"100vh"}},r.createElement("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"},r.createElement("g",{fill:"none",fillRule:"evenodd",transform:"translate(1 1)",strokeWidth:"2"},r.createElement("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0"},r.createElement("animate",{attributeName:"r",begin:"1.5s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-opacity",begin:"1.5s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-width",begin:"1.5s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})),r.createElement("circle",{cx:"22",cy:"22",r:"6",strokeOpacity:"0"},r.createElement("animate",{attributeName:"r",begin:"3s",dur:"3s",values:"6;22",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-opacity",begin:"3s",dur:"3s",values:"1;0",calcMode:"linear",repeatCount:"indefinite"}),r.createElement("animate",{attributeName:"stroke-width",begin:"3s",dur:"3s",values:"2;0",calcMode:"linear",repeatCount:"indefinite"})),r.createElement("circle",{cx:"22",cy:"22",r:"8"},r.createElement("animate",{attributeName:"r",begin:"0s",dur:"1.5s",values:"6;1;2;3;4;5;6",calcMode:"linear",repeatCount:"indefinite"}))))):null}var u=n(9670),d=n(226);function p(e,t){if("*"===e)return i()({loading:c,loader:()=>n.e(4972).then(n.bind(n,4972)),modules:["@theme/NotFound"],webpack:()=>[4972],render(e,t){const n=e.default;return r.createElement(d.z,{value:{plugin:{name:"native",id:"default"}}},r.createElement(n,t))}});const a=l[`${e}-${t}`],p={},f=[],m=[],h=(0,u.Z)(a);return Object.entries(h).forEach((e=>{let[t,n]=e;const r=s[n];r&&(p[t]=r[0],f.push(r[1]),m.push(r[2]))})),i().Map({loading:c,loader:p,modules:f,webpack:()=>m,render(t,n){const i=JSON.parse(JSON.stringify(a));Object.entries(t).forEach((t=>{let[n,r]=t;const o=r.default;if(!o)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 o&&"function"!=typeof o||Object.keys(r).filter((e=>"default"!==e)).forEach((e=>{o[e]=r[e]}));let a=i;const l=n.split(".");l.slice(0,-1).forEach((e=>{a=a[e]})),a[l[l.length-1]]=o}));const l=i.__comp;delete i.__comp;const s=i.__context;return delete i.__context,r.createElement(d.z,{value:s},r.createElement(l,(0,o.Z)({},i,n)))}})}const f=[{path:"/docs/club",component:p("/docs/club","734"),routes:[{path:"/docs/club",component:p("/docs/club","4b2"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/2021-2022/fall-gbm-09-09-21",component:p("/docs/club/2021-2022/fall-gbm-09-09-21","e9c"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/2021-2022/fall-gbm-10-13-21",component:p("/docs/club/2021-2022/fall-gbm-10-13-21","f14"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/2021-2022/NLP-workshop",component:p("/docs/club/2021-2022/NLP-workshop","4ff"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/2021-2022/spring-gbm-01-06-22",component:p("/docs/club/2021-2022/spring-gbm-01-06-22","0ec"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/2021-2022/spring-gbm-03-30-22",component:p("/docs/club/2021-2022/spring-gbm-03-30-22","3bd"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/2021-2022/spring-gbm-04-06-22",component:p("/docs/club/2021-2022/spring-gbm-04-06-22","d3e"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/2021-2022/swamphacks-git-01-26-22",component:p("/docs/club/2021-2022/swamphacks-git-01-26-22","d58"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/2021-2022/swamphacks-sql-01-30-22",component:p("/docs/club/2021-2022/swamphacks-sql-01-30-22","36e"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/2022-2023/fall-gbm-09-07-2022",component:p("/docs/club/2022-2023/fall-gbm-09-07-2022","f42"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/2022-2023/fall-gbm-11-04-2022",component:p("/docs/club/2022-2023/fall-gbm-11-04-2022","9d1"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/2022-2023/spring-gbm-01-25-2023",component:p("/docs/club/2022-2023/spring-gbm-01-25-2023","824"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/2022-2023/spring-gbm-03-30-2023",component:p("/docs/club/2022-2023/spring-gbm-03-30-2023","f89"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/2022-2023/spring-project-proposals",component:p("/docs/club/2022-2023/spring-project-proposals","edb"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/2023-2024/fall-gbm-09-06-2023",component:p("/docs/club/2023-2024/fall-gbm-09-06-2023","ec7"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/bash",component:p("/docs/club/resources/bash","821"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/css",component:p("/docs/club/resources/css","9d2"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/git",component:p("/docs/club/resources/git","10e"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/html",component:p("/docs/club/resources/html","59e"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/javascript",component:p("/docs/club/resources/javascript","ec1"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/old_presentations/advanced-linux",component:p("/docs/club/resources/old_presentations/advanced-linux","a77"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/old_presentations/codeathon-intro-to-web-design",component:p("/docs/club/resources/old_presentations/codeathon-intro-to-web-design","483"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/old_presentations/git-and-github",component:p("/docs/club/resources/old_presentations/git-and-github","68e"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/old_presentations/how-to-elevator-pitch",component:p("/docs/club/resources/old_presentations/how-to-elevator-pitch","e1a"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/old_presentations/intro-to-blockchain",component:p("/docs/club/resources/old_presentations/intro-to-blockchain","da2"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/old_presentations/intro-to-c-sharp",component:p("/docs/club/resources/old_presentations/intro-to-c-sharp","891"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/old_presentations/intro-to-game-dev",component:p("/docs/club/resources/old_presentations/intro-to-game-dev","1fc"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/old_presentations/intro-to-linux",component:p("/docs/club/resources/old_presentations/intro-to-linux","81b"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/old_presentations/intro-to-open-source",component:p("/docs/club/resources/old_presentations/intro-to-open-source","a5d"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/old_presentations/intro-to-optimization",component:p("/docs/club/resources/old_presentations/intro-to-optimization","35e"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/old_presentations/intro-to-rust",component:p("/docs/club/resources/old_presentations/intro-to-rust","0f6"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/old_presentations/intro-to-webextensions",component:p("/docs/club/resources/old_presentations/intro-to-webextensions","31a"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/old_presentations/money-with-open-source",component:p("/docs/club/resources/old_presentations/money-with-open-source","454"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/old_presentations/sandstorm",component:p("/docs/club/resources/old_presentations/sandstorm","b3d"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/old_presentations/security-and-privacy",component:p("/docs/club/resources/old_presentations/security-and-privacy","6b4"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/old_presentations/unix-history-and-bash-intro",component:p("/docs/club/resources/old_presentations/unix-history-and-bash-intro","12a"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/old_presentations/working-on-open-source",component:p("/docs/club/resources/old_presentations/working-on-open-source","71f"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/python",component:p("/docs/club/resources/python","b5a"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/rust",component:p("/docs/club/resources/rust","9a2"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/club/resources/versioning",component:p("/docs/club/resources/versioning","d80"),exact:!0,sidebar:"defaultSidebar"}]},{path:"/docs/osc-docs",component:p("/docs/osc-docs","071"),routes:[{path:"/docs/osc-docs",component:p("/docs/osc-docs","29f"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/osc-docs/docusaurus",component:p("/docs/osc-docs/docusaurus","e35"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/osc-docs/installation",component:p("/docs/osc-docs/installation","e4b"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/osc-docs/markdown",component:p("/docs/osc-docs/markdown","016"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/osc-docs/static-pages",component:p("/docs/osc-docs/static-pages","978"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/osc-docs/usage",component:p("/docs/osc-docs/usage","176"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/osc-docs/writingdocs",component:p("/docs/osc-docs/writingdocs","4e7"),exact:!0,sidebar:"defaultSidebar"}]},{path:"/docs/swamp-scheduler",component:p("/docs/swamp-scheduler","523"),routes:[{path:"/docs/swamp-scheduler",component:p("/docs/swamp-scheduler","65b"),exact:!0,sidebar:"defaultSidebar"}]},{path:"/docs/website",component:p("/docs/website","ffa"),routes:[{path:"/docs/website",component:p("/docs/website","8fc"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/admin",component:p("/docs/website/admin","d57"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/api-reference",component:p("/docs/website/api-reference","8ed"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/Developers/API",component:p("/docs/website/Developers/API","614"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/Developers/API/blog",component:p("/docs/website/Developers/API/blog","5c6"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/Developers/API/contact",component:p("/docs/website/Developers/API/contact","e91"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/Developers/API/edit",component:p("/docs/website/Developers/API/edit","ec9"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/Developers/API/images",component:p("/docs/website/Developers/API/images","98a"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/Developers/API/users",component:p("/docs/website/Developers/API/users","d97"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/Developers/authentication",component:p("/docs/website/Developers/authentication","6a0"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/Developers/caching",component:p("/docs/website/Developers/caching","7a4"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/Developers/configuration",component:p("/docs/website/Developers/configuration","a37"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/Developers/contributing-guide",component:p("/docs/website/Developers/contributing-guide","01d"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/Developers/Databases/image-storage",component:p("/docs/website/Developers/Databases/image-storage","2b2"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/Developers/Databases/models",component:p("/docs/website/Developers/Databases/models","4dc"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/Developers/Databases/mongodb",component:p("/docs/website/Developers/Databases/mongodb","0d0"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/Developers/introduction",component:p("/docs/website/Developers/introduction","b04"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/Developers/kubernetes",component:p("/docs/website/Developers/kubernetes","524"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/Developers/rendering",component:p("/docs/website/Developers/rendering","d50"),exact:!0,sidebar:"defaultSidebar"},{path:"/docs/website/Developers/testing",component:p("/docs/website/Developers/testing","ae0"),exact:!0,sidebar:"defaultSidebar"}]},{path:"/",component:p("/","abe"),exact:!0},{path:"*",component:p("*")}]},8934:(e,t,n)=>{"use strict";n.d(t,{_:()=>o,t:()=>a});var r=n(7294);const o=r.createContext(!1);function a(e){let{children:t}=e;const[n,a]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{a(!0)}),[]),r.createElement(o.Provider,{value:n},t)}},7221:(e,t,n)=>{"use strict";var r=n(7294),o=n(3935),a=n(3727),i=n(405),l=n(412);const s=[n(2497),n(3310),n(8320),n(2295)];var c=n(723),u=n(6550),d=n(8790);function p(e){let{children:t}=e;return r.createElement(r.Fragment,null,t)}var f=n(7462),m=n(5742),h=n(2263),g=n(4996),b=n(6668),v=n(1944),y=n(4711),w=n(9727),k=n(3320),E=n(8780),S=n(197);function _(){const{i18n:{defaultLocale:e,localeConfigs:t}}=(0,h.Z)(),n=(0,y.l)();return r.createElement(m.Z,null,Object.entries(t).map((e=>{let[t,{htmlLang:o}]=e;return r.createElement("link",{key:t,rel:"alternate",href:n.createUrl({locale:t,fullyQualified:!0}),hrefLang:o})})),r.createElement("link",{rel:"alternate",href:n.createUrl({locale:e,fullyQualified:!0}),hrefLang:"x-default"}))}function x(e){let{permalink:t}=e;const{siteConfig:{url:n}}=(0,h.Z)(),o=function(){const{siteConfig:{url:e,baseUrl:t,trailingSlash:n}}=(0,h.Z)(),{pathname:r}=(0,u.TH)();return e+(0,E.applyTrailingSlash)((0,g.Z)(r),{trailingSlash:n,baseUrl:t})}(),a=t?`${n}${t}`:o;return r.createElement(m.Z,null,r.createElement("meta",{property:"og:url",content:a}),r.createElement("link",{rel:"canonical",href:a}))}function C(){const{i18n:{currentLocale:e}}=(0,h.Z)(),{metadata:t,image:n}=(0,b.L)();return r.createElement(r.Fragment,null,r.createElement(m.Z,null,r.createElement("meta",{name:"twitter:card",content:"summary_large_image"}),r.createElement("body",{className:w.h})),n&&r.createElement(v.d,{image:n}),r.createElement(x,null),r.createElement(_,null),r.createElement(S.Z,{tag:k.HX,locale:e}),r.createElement(m.Z,null,t.map(((e,t)=>r.createElement("meta",(0,f.Z)({key:t},e))))))}const T=new Map;function A(e){if(T.has(e.pathname))return{...e,pathname:T.get(e.pathname)};if((0,d.f)(c.Z,e.pathname).some((e=>{let{route:t}=e;return!0===t.exact})))return T.set(e.pathname,e.pathname),e;const t=e.pathname.trim().replace(/(?:\/index)?\.html$/,"")||"/";return T.set(e.pathname,t),{...e,pathname:t}}var L=n(8934),D=n(8940);function P(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:o}=e;return(0,r.useLayoutEffect)((()=>{o!==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:o}),P("onRouteDidUpdate",{previousLocation:o,location:n}))}),[o,n]),t};function R(e){const t=Array.from(new Set([e,decodeURI(e)])).map((e=>(0,d.f)(c.Z,e))).flat();return Promise.all(t.map((e=>e.route.component.preload?.())))}class O extends r.Component{previousLocation;routeUpdateCleanupCb;constructor(e){super(e),this.previousLocation=null,this.routeUpdateCleanupCb=l.Z.canUseDOM?P("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=P("onRouteUpdate",{previousLocation:this.previousLocation,location:n}),R(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 r.createElement(N,{previousLocation:this.previousLocation,location:t},r.createElement(u.AW,{location:t,render:()=>e}))}}const I=O,M="__docusaurus-base-url-issue-banner-container",F="__docusaurus-base-url-issue-banner",B="__docusaurus-base-url-issue-banner-suggestion-container",j="__DOCUSAURUS_INSERT_BASEURL_BANNER";function z(e){return`\nwindow['${j}'] = true;\n\ndocument.addEventListener('DOMContentLoaded', maybeInsertBanner);\n\nfunction maybeInsertBanner() {\n var shouldInsert = window['${j}'];\n shouldInsert && insertBanner();\n}\n\nfunction insertBanner() {\n var bannerContainer = document.getElementById('${M}');\n if (!bannerContainer) {\n return;\n }\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(/{window[j]=!1}),[]),r.createElement(r.Fragment,null,!l.Z.canUseDOM&&r.createElement(m.Z,null,r.createElement("script",null,z(e))),r.createElement("div",{id:M}))}function $(){const{siteConfig:{baseUrl:e,baseUrlIssueBanner:t}}=(0,h.Z)(),{pathname:n}=(0,u.TH)();return t&&n===e?r.createElement(U,null):null}function q(){const{siteConfig:{favicon:e,title:t,noIndex:n},i18n:{currentLocale:o,localeConfigs:a}}=(0,h.Z)(),i=(0,g.Z)(e),{htmlLang:l,direction:s}=a[o];return r.createElement(m.Z,null,r.createElement("html",{lang:l,dir:s}),r.createElement("title",null,t),r.createElement("meta",{property:"og:title",content:t}),r.createElement("meta",{name:"viewport",content:"width=device-width, initial-scale=1.0"}),n&&r.createElement("meta",{name:"robots",content:"noindex, nofollow"}),e&&r.createElement("link",{rel:"icon",href:i}))}var H=n(4763),G=n(2389);function Z(){const e=(0,G.Z)();return r.createElement(m.Z,null,r.createElement("html",{"data-has-hydrated":e}))}function V(){const e=(0,d.H)(c.Z),t=(0,u.TH)();return r.createElement(H.Z,null,r.createElement(D.M,null,r.createElement(L.t,null,r.createElement(p,null,r.createElement(q,null),r.createElement(C,null),r.createElement($,null),r.createElement(I,{location:A(t)},e)),r.createElement(Z,null))))}var W=n(6887);const Y=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 K=n(9670);const Q=new Set,X=new Set,J=()=>navigator.connection?.effectiveType.includes("2g")||navigator.connection?.saveData,ee={prefetch(e){if(!(e=>!J()&&!X.has(e)&&!Q.has(e))(e))return!1;Q.add(e);const t=(0,d.f)(c.Z,e).flatMap((e=>{return t=e.route.path,Object.entries(W).filter((e=>{let[n]=e;return n.replace(/-[^-]+$/,"")===t})).flatMap((e=>{let[,t]=e;return Object.values((0,K.Z)(t))}));var t}));return Promise.all(t.map((e=>{const t=n.gca(e);return t&&!t.includes("undefined")?Y(t).catch((()=>{})):Promise.resolve()})))},preload:e=>!!(e=>!J()&&!X.has(e))(e)&&(X.add(e),R(e))},te=Object.freeze(ee);if(l.Z.canUseDOM){window.docusaurus=te;const e=o.hydrate;R(window.location.pathname).then((()=>{e(r.createElement(i.B6,null,r.createElement(a.VK,null,r.createElement(V,null))),document.getElementById("__docusaurus"))}))}},8940:(e,t,n)=>{"use strict";n.d(t,{_:()=>u,M:()=>d});var r=n(7294),o=n(6809);const a=JSON.parse('{"docusaurus-plugin-content-docs":{"swamp-scheduler":{"path":"/docs/swamp-scheduler","versions":[{"name":"current","label":"Next","isLast":true,"path":"/docs/swamp-scheduler","mainDocId":"index","docs":[{"id":"index","path":"/docs/swamp-scheduler/","sidebar":"defaultSidebar"}],"draftIds":[],"sidebars":{"defaultSidebar":{"link":{"path":"/docs/swamp-scheduler/","label":"index"}}}}],"breadcrumbs":true},"website":{"path":"/docs/website","versions":[{"name":"current","label":"Next","isLast":true,"path":"/docs/website","mainDocId":"index","docs":[{"id":"admin","path":"/docs/website/admin","sidebar":"defaultSidebar"},{"id":"api-reference","path":"/docs/website/api-reference","sidebar":"defaultSidebar"},{"id":"Developers/API/api","path":"/docs/website/Developers/API/","sidebar":"defaultSidebar"},{"id":"Developers/API/blog","path":"/docs/website/Developers/API/blog","sidebar":"defaultSidebar"},{"id":"Developers/API/contact","path":"/docs/website/Developers/API/contact","sidebar":"defaultSidebar"},{"id":"Developers/API/edit","path":"/docs/website/Developers/API/edit","sidebar":"defaultSidebar"},{"id":"Developers/API/images","path":"/docs/website/Developers/API/images","sidebar":"defaultSidebar"},{"id":"Developers/API/users","path":"/docs/website/Developers/API/users","sidebar":"defaultSidebar"},{"id":"Developers/authentication","path":"/docs/website/Developers/authentication","sidebar":"defaultSidebar"},{"id":"Developers/caching","path":"/docs/website/Developers/caching","sidebar":"defaultSidebar"},{"id":"Developers/configuration","path":"/docs/website/Developers/configuration","sidebar":"defaultSidebar"},{"id":"Developers/contributing-guide","path":"/docs/website/Developers/contributing-guide","sidebar":"defaultSidebar"},{"id":"Developers/Databases/image-storage","path":"/docs/website/Developers/Databases/image-storage","sidebar":"defaultSidebar"},{"id":"Developers/Databases/models","path":"/docs/website/Developers/Databases/models","sidebar":"defaultSidebar"},{"id":"Developers/Databases/mongodb","path":"/docs/website/Developers/Databases/mongodb","sidebar":"defaultSidebar"},{"id":"Developers/introduction","path":"/docs/website/Developers/introduction","sidebar":"defaultSidebar"},{"id":"Developers/kubernetes","path":"/docs/website/Developers/kubernetes","sidebar":"defaultSidebar"},{"id":"Developers/rendering","path":"/docs/website/Developers/rendering","sidebar":"defaultSidebar"},{"id":"Developers/testing","path":"/docs/website/Developers/testing","sidebar":"defaultSidebar"},{"id":"index","path":"/docs/website/","sidebar":"defaultSidebar"}],"draftIds":[],"sidebars":{"defaultSidebar":{"link":{"path":"/docs/website/","label":"index"}}}}],"breadcrumbs":true},"osc-docs":{"path":"/docs/osc-docs","versions":[{"name":"current","label":"Next","isLast":true,"path":"/docs/osc-docs","mainDocId":"index","docs":[{"id":"docusaurus","path":"/docs/osc-docs/docusaurus","sidebar":"defaultSidebar"},{"id":"index","path":"/docs/osc-docs/","sidebar":"defaultSidebar"},{"id":"installation","path":"/docs/osc-docs/installation","sidebar":"defaultSidebar"},{"id":"markdown","path":"/docs/osc-docs/markdown","sidebar":"defaultSidebar"},{"id":"static-pages","path":"/docs/osc-docs/static-pages","sidebar":"defaultSidebar"},{"id":"usage","path":"/docs/osc-docs/usage","sidebar":"defaultSidebar"},{"id":"writingdocs","path":"/docs/osc-docs/writingdocs","sidebar":"defaultSidebar"}],"draftIds":[],"sidebars":{"defaultSidebar":{"link":{"path":"/docs/osc-docs/","label":"index"}}}}],"breadcrumbs":true},"default":{"path":"/docs/club","versions":[{"name":"current","label":"Next","isLast":true,"path":"/docs/club","mainDocId":"index","docs":[{"id":"2021-2022/fall-gbm-09-09-21","path":"/docs/club/2021-2022/fall-gbm-09-09-21","sidebar":"defaultSidebar"},{"id":"2021-2022/fall-gbm-10-13-21","path":"/docs/club/2021-2022/fall-gbm-10-13-21","sidebar":"defaultSidebar"},{"id":"2021-2022/NLP-workshop","path":"/docs/club/2021-2022/NLP-workshop","sidebar":"defaultSidebar"},{"id":"2021-2022/spring-gbm-01-06-22","path":"/docs/club/2021-2022/spring-gbm-01-06-22","sidebar":"defaultSidebar"},{"id":"2021-2022/spring-gbm-03-30-22","path":"/docs/club/2021-2022/spring-gbm-03-30-22","sidebar":"defaultSidebar"},{"id":"2021-2022/spring-gbm-04-06-22","path":"/docs/club/2021-2022/spring-gbm-04-06-22","sidebar":"defaultSidebar"},{"id":"2021-2022/swamphacks-git-01-26-22","path":"/docs/club/2021-2022/swamphacks-git-01-26-22","sidebar":"defaultSidebar"},{"id":"2021-2022/swamphacks-sql-01-30-22","path":"/docs/club/2021-2022/swamphacks-sql-01-30-22","sidebar":"defaultSidebar"},{"id":"2022-2023/fall-gbm-09-07-2022","path":"/docs/club/2022-2023/fall-gbm-09-07-2022","sidebar":"defaultSidebar"},{"id":"2022-2023/fall-gbm-11-04-2022","path":"/docs/club/2022-2023/fall-gbm-11-04-2022","sidebar":"defaultSidebar"},{"id":"2022-2023/spring-gbm-01-25-2023","path":"/docs/club/2022-2023/spring-gbm-01-25-2023","sidebar":"defaultSidebar"},{"id":"2022-2023/spring-gbm-03-30-2023","path":"/docs/club/2022-2023/spring-gbm-03-30-2023","sidebar":"defaultSidebar"},{"id":"2022-2023/spring-project-proposals","path":"/docs/club/2022-2023/spring-project-proposals","sidebar":"defaultSidebar"},{"id":"2023-2024/fall-gbm-09-06-2023","path":"/docs/club/2023-2024/fall-gbm-09-06-2023","sidebar":"defaultSidebar"},{"id":"index","path":"/docs/club/","sidebar":"defaultSidebar"},{"id":"resources/bash","path":"/docs/club/resources/bash","sidebar":"defaultSidebar"},{"id":"resources/css","path":"/docs/club/resources/css","sidebar":"defaultSidebar"},{"id":"resources/git","path":"/docs/club/resources/git","sidebar":"defaultSidebar"},{"id":"resources/html","path":"/docs/club/resources/html","sidebar":"defaultSidebar"},{"id":"resources/javascript","path":"/docs/club/resources/javascript","sidebar":"defaultSidebar"},{"id":"resources/old_presentations/advanced-linux","path":"/docs/club/resources/old_presentations/advanced-linux","sidebar":"defaultSidebar"},{"id":"resources/old_presentations/codeathon-intro-to-web-design","path":"/docs/club/resources/old_presentations/codeathon-intro-to-web-design","sidebar":"defaultSidebar"},{"id":"resources/old_presentations/git-and-github","path":"/docs/club/resources/old_presentations/git-and-github","sidebar":"defaultSidebar"},{"id":"resources/old_presentations/how-to-elevator-pitch","path":"/docs/club/resources/old_presentations/how-to-elevator-pitch","sidebar":"defaultSidebar"},{"id":"resources/old_presentations/intro-to-blockchain","path":"/docs/club/resources/old_presentations/intro-to-blockchain","sidebar":"defaultSidebar"},{"id":"resources/old_presentations/intro-to-c-sharp","path":"/docs/club/resources/old_presentations/intro-to-c-sharp","sidebar":"defaultSidebar"},{"id":"resources/old_presentations/intro-to-game-dev","path":"/docs/club/resources/old_presentations/intro-to-game-dev","sidebar":"defaultSidebar"},{"id":"resources/old_presentations/intro-to-linux","path":"/docs/club/resources/old_presentations/intro-to-linux","sidebar":"defaultSidebar"},{"id":"resources/old_presentations/intro-to-open-source","path":"/docs/club/resources/old_presentations/intro-to-open-source","sidebar":"defaultSidebar"},{"id":"resources/old_presentations/intro-to-optimization","path":"/docs/club/resources/old_presentations/intro-to-optimization","sidebar":"defaultSidebar"},{"id":"resources/old_presentations/intro-to-rust","path":"/docs/club/resources/old_presentations/intro-to-rust","sidebar":"defaultSidebar"},{"id":"resources/old_presentations/intro-to-webextensions","path":"/docs/club/resources/old_presentations/intro-to-webextensions","sidebar":"defaultSidebar"},{"id":"resources/old_presentations/money-with-open-source","path":"/docs/club/resources/old_presentations/money-with-open-source","sidebar":"defaultSidebar"},{"id":"resources/old_presentations/sandstorm","path":"/docs/club/resources/old_presentations/sandstorm","sidebar":"defaultSidebar"},{"id":"resources/old_presentations/security-and-privacy","path":"/docs/club/resources/old_presentations/security-and-privacy","sidebar":"defaultSidebar"},{"id":"resources/old_presentations/unix-history-and-bash-intro","path":"/docs/club/resources/old_presentations/unix-history-and-bash-intro","sidebar":"defaultSidebar"},{"id":"resources/old_presentations/working-on-open-source","path":"/docs/club/resources/old_presentations/working-on-open-source","sidebar":"defaultSidebar"},{"id":"resources/python","path":"/docs/club/resources/python","sidebar":"defaultSidebar"},{"id":"resources/rust","path":"/docs/club/resources/rust","sidebar":"defaultSidebar"},{"id":"resources/versioning","path":"/docs/club/resources/versioning","sidebar":"defaultSidebar"}],"draftIds":[],"sidebars":{"defaultSidebar":{"link":{"path":"/docs/club/","label":"index"}}}}],"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 l=n(7529);const s=JSON.parse('{"docusaurusVersion":"2.4.3","siteVersion":"1.0.0","pluginVersions":{"docusaurus-plugin-content-docs":{"type":"package","name":"@docusaurus/plugin-content-docs","version":"2.4.3"},"docusaurus-plugin-content-blog":{"type":"package","name":"@docusaurus/plugin-content-blog","version":"2.4.3"},"docusaurus-plugin-content-pages":{"type":"package","name":"@docusaurus/plugin-content-pages","version":"2.4.3"},"docusaurus-plugin-sitemap":{"type":"package","name":"@docusaurus/plugin-sitemap","version":"2.4.3"},"docusaurus-theme-classic":{"type":"package","name":"@docusaurus/theme-classic","version":"2.4.3"}}}'),c={siteConfig:o.default,siteMetadata:s,globalData:a,i18n:i,codeTranslations:l},u=r.createContext(c);function d(e){let{children:t}=e;return r.createElement(u.Provider,{value:c},t)}},4763:(e,t,n)=>{"use strict";n.d(t,{Z:()=>p});var r=n(7294),o=n(412),a=n(5742),i=n(8780),l=n(7961);function s(e){let{error:t,tryAgain:n}=e;return r.createElement("div",{style:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"flex-start",minHeight:"100vh",width:"100%",maxWidth:"80ch",fontSize:"20px",margin:"0 auto",padding:"1rem"}},r.createElement("h1",{style:{fontSize:"3rem"}},"This page crashed"),r.createElement("button",{type:"button",onClick:n,style:{margin:"1rem 0",fontSize:"2rem",cursor:"pointer",borderRadius:20,padding:"1rem"}},"Try again"),r.createElement(c,{error:t}))}function c(e){let{error:t}=e;const n=(0,i.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return r.createElement("p",{style:{whiteSpace:"pre-wrap"}},n)}function u(e){let{error:t,tryAgain:n}=e;return r.createElement(p,{fallback:()=>r.createElement(s,{error:t,tryAgain:n})},r.createElement(a.Z,null,r.createElement("title",null,"Page Error")),r.createElement(l.Z,null,r.createElement(s,{error:t,tryAgain:n})))}const d=e=>r.createElement(u,e);class p extends r.Component{constructor(e){super(e),this.state={error:null}}componentDidCatch(e){o.Z.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??d)(e)}return e??null}}},412:(e,t,n)=>{"use strict";n.d(t,{Z:()=>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}},5742:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(7294),o=n(405);function a(e){return r.createElement(o.ql,e)}},9960:(e,t,n)=>{"use strict";n.d(t,{Z:()=>f});var r=n(7462),o=n(7294),a=n(3727),i=n(8780),l=n(2263),s=n(3919),c=n(412);const u=o.createContext({collectLink:()=>{}});var d=n(4996);function p(e,t){let{isNavLink:n,to:p,href:f,activeClassName:m,isActive:h,"data-noBrokenLinkCheck":g,autoAddBaseUrl:b=!0,...v}=e;const{siteConfig:{trailingSlash:y,baseUrl:w}}=(0,l.Z)(),{withBaseUrl:k}=(0,d.C)(),E=(0,o.useContext)(u),S=(0,o.useRef)(null);(0,o.useImperativeHandle)(t,(()=>S.current));const _=p||f;const x=(0,s.Z)(_),C=_?.replace("pathname://","");let T=void 0!==C?(A=C,b&&(e=>e.startsWith("/"))(A)?k(A):A):void 0;var A;T&&x&&(T=(0,i.applyTrailingSlash)(T,{trailingSlash:y,baseUrl:w}));const L=(0,o.useRef)(!1),D=n?a.OL:a.rU,P=c.Z.canUseIntersectionObserver,N=(0,o.useRef)(),R=()=>{L.current||null==T||(window.docusaurus.preload(T),L.current=!0)};(0,o.useEffect)((()=>(!P&&x&&null!=T&&window.docusaurus.prefetch(T),()=>{P&&N.current&&N.current.disconnect()})),[N,T,P,x]);const O=T?.startsWith("#")??!1,I=!T||!x||O;return I||g||E.collectLink(T),I?o.createElement("a",(0,r.Z)({ref:S,href:T},_&&!x&&{target:"_blank",rel:"noopener noreferrer"},v)):o.createElement(D,(0,r.Z)({},v,{onMouseEnter:R,onTouchStart:R,innerRef:e=>{S.current=e,P&&e&&x&&(N.current=new window.IntersectionObserver((t=>{t.forEach((t=>{e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(N.current.unobserve(e),N.current.disconnect(),null!=T&&window.docusaurus.prefetch(T))}))})),N.current.observe(e))},to:T},n&&{isActive:h,activeClassName:m}))}const f=o.forwardRef(p)},1875:(e,t,n)=>{"use strict";n.d(t,{Z:()=>r});const r=()=>null},5999:(e,t,n)=>{"use strict";n.d(t,{Z:()=>s,I:()=>l});var r=n(7294);function o(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 a=n(7529);function i(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 a[t??n]??n??t}function l(e,t){let{message:n,id:r}=e;return o(i({message:n,id:r}),t)}function s(e){let{children:t,id:n,values:a}=e;if(t&&"string"!=typeof t)throw console.warn("Illegal children",t),new Error("The Docusaurus component only accept simple string values");const l=i({message:t,id:n});return r.createElement(r.Fragment,null,o(l,a))}},9935:(e,t,n)=>{"use strict";n.d(t,{m:()=>r});const r="default"},3919:(e,t,n)=>{"use strict";function r(e){return/^(?:\w*:|\/\/)/.test(e)}function o(e){return void 0!==e&&!r(e)}n.d(t,{Z:()=>o,b:()=>r})},4996:(e,t,n)=>{"use strict";n.d(t,{C:()=>i,Z:()=>l});var r=n(7294),o=n(2263),a=n(3919);function i(){const{siteConfig:{baseUrl:e,url:t}}=(0,o.Z)(),n=(0,r.useCallback)(((n,r)=>function(e,t,n,r){let{forcePrependBaseUrl:o=!1,absolute:i=!1}=void 0===r?{}:r;if(!n||n.startsWith("#")||(0,a.b)(n))return n;if(o)return t+n.replace(/^\//,"");if(n===t.replace(/\/$/,""))return t;const l=n.startsWith(t)?n:t+n.replace(/^\//,"");return i?e+l:l}(t,e,n,r)),[t,e]);return{withBaseUrl:n}}function l(e,t){void 0===t&&(t={});const{withBaseUrl:n}=i();return n(e,t)}},2263:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(7294),o=n(8940);function a(){return(0,r.useContext)(o._)}},2389:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(7294),o=n(8934);function a(){return(0,r.useContext)(o._)}},9670:(e,t,n)=>{"use strict";n.d(t,{Z:()=>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 l=o?`${o}.${a}`:a;r(i)?e(i,l):t[l]=i}))}(e),t}},226:(e,t,n)=>{"use strict";n.d(t,{_:()=>o,z:()=>a});var r=n(7294);const o=r.createContext(null);function a(e){let{children:t,value:n}=e;const a=r.useContext(o),i=(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:a,value:n})),[a,n]);return r.createElement(o.Provider,{value:i},t)}},143:(e,t,n)=>{"use strict";n.d(t,{Iw:()=>h,gA:()=>p,_r:()=>u,Jo:()=>g,zh:()=>d,yW:()=>m,gB:()=>f});var r=n(6550),o=n(2263),a=n(9935);function i(e,t){void 0===t&&(t={});const n=function(){const{globalData:e}=(0,o.Z)();return e}()[e];if(!n&&t.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin.`);return n}const l=e=>e.versions.find((e=>e.isLast));function s(e,t){const n=function(e,t){const n=l(e);return[...e.versions.filter((e=>e!==n)),n].find((e=>!!(0,r.LX)(t,{path:e.path,exact:!1,strict:!1})))}(e,t),o=n?.docs.find((e=>!!(0,r.LX)(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 c={},u=()=>i("docusaurus-plugin-content-docs")??c,d=e=>function(e,t,n){void 0===t&&(t=a.m),void 0===n&&(n={});const r=i(e),o=r?.[t];if(!o&&n.failfast)throw new Error(`Docusaurus plugin global data not found for "${e}" plugin with id "${t}".`);return o}("docusaurus-plugin-content-docs",e,{failfast:!0});function p(e){void 0===e&&(e={});const t=u(),{pathname:n}=(0,r.TH)();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.LX)(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 f(e){return d(e).versions}function m(e){const t=d(e);return l(t)}function h(e){const t=d(e),{pathname:n}=(0,r.TH)();return s(t,n)}function g(e){const t=d(e),{pathname:n}=(0,r.TH)();return function(e,t){const n=l(e);return{latestDocSuggestion:s(e,t).alternateDocVersions[n.name],latestVersionSuggestion:n}}(t,n)}},8320:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>a});var r=n(4865),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()}}},3310:(e,t,n)=>{"use strict";n.r(t);var r=n(7410),o=n(6809);!function(e){const{themeConfig:{prism:t}}=o.default,{additionalLanguages:r}=t;globalThis.Prism=e,r.forEach((e=>{n(6726)(`./prism-${e}`)})),delete globalThis.Prism}(r.Z)},9471:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(7294);const o={iconExternalLink:"iconExternalLink_nPIU"};function a(e){let{width:t=13.5,height:n=13.5}=e;return r.createElement("svg",{width:t,height:n,"aria-hidden":"true",viewBox:"0 0 24 24",className:o.iconExternalLink},r.createElement("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"}))}},7961:(e,t,n)=>{"use strict";n.d(t,{Z:()=>dt});var r=n(7294),o=n(6010),a=n(4763),i=n(1944),l=n(7462),s=n(6550),c=n(5999),u=n(5936);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.k6)(),n=(0,r.useCallback)((e=>{e.preventDefault();const t=document.querySelector("main:first-of-type")??document.getElementById(d);t&&p(t)}),[]);return(0,u.S)((n=>{let{location:r}=n;e.current&&!r.hash&&"PUSH"===t&&p(e.current)})),{containerRef:e,onClick:n}}const m=(0,c.I)({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 h(e){const t=e.children??m,{containerRef:n,onClick:o}=f();return r.createElement("div",{ref:n,role:"region","aria-label":m},r.createElement("a",(0,l.Z)({},e,{href:`#${d}`,onClick:o}),t))}var g=n(5281),b=n(9727);const v={skipToContent:"skipToContent_fXgn"};function y(){return r.createElement(h,{className:v.skipToContent})}var w=n(6668),k=n(9689);function E(e){let{width:t=21,height:n=21,color:o="currentColor",strokeWidth:a=1.2,className:i,...s}=e;return r.createElement("svg",(0,l.Z)({viewBox:"0 0 15 15",width:t,height:n},s),r.createElement("g",{stroke:o,strokeWidth:a},r.createElement("path",{d:"M.75.75l13.5 13.5M14.25.75L.75 14.25"})))}const S={closeButton:"closeButton_CVFx"};function _(e){return r.createElement("button",(0,l.Z)({type:"button","aria-label":(0,c.I)({id:"theme.AnnouncementBar.closeButtonAriaLabel",message:"Close",description:"The ARIA label for close button of announcement bar"})},e,{className:(0,o.Z)("clean-btn close",S.closeButton,e.className)}),r.createElement(E,{width:14,height:14,strokeWidth:3.1}))}const x={content:"content_knG7"};function C(e){const{announcementBar:t}=(0,w.L)(),{content:n}=t;return r.createElement("div",(0,l.Z)({},e,{className:(0,o.Z)(x.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.L)(),{isActive:t,close:n}=(0,k.nT)();if(!t)return null;const{backgroundColor:o,textColor:a,isCloseable:i}=e;return r.createElement("div",{className:T.announcementBar,style:{backgroundColor:o,color:a},role:"banner"},i&&r.createElement("div",{className:T.announcementBarPlaceholder}),r.createElement(C,{className:T.announcementBarContent}),i&&r.createElement(_,{onClick:n,className:T.announcementBarClose}))}var L=n(2961),D=n(2466);var P=n(902),N=n(3102);const R=r.createContext(null);function O(e){let{children:t}=e;const n=function(){const e=(0,L.e)(),t=(0,N.HY)(),[n,o]=(0,r.useState)(!1),a=null!==t.component,i=(0,P.D9)(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 r.createElement(R.Provider,{value:n},t)}function I(e){if(e.component){const t=e.component;return r.createElement(t,e.props)}}function M(){const e=(0,r.useContext)(R);if(!e)throw new P.i6("NavbarSecondaryMenuDisplayProvider");const[t,n]=e,o=(0,r.useCallback)((()=>n(!1)),[n]),a=(0,N.HY)();return(0,r.useMemo)((()=>({shown:t,hide:o,content:I(a)})),[o,a,t])}function F(e){let{header:t,primaryMenu:n,secondaryMenu:a}=e;const{shown:i}=M();return r.createElement("div",{className:"navbar-sidebar"},t,r.createElement("div",{className:(0,o.Z)("navbar-sidebar__items",{"navbar-sidebar__items--show-secondary":i})},r.createElement("div",{className:"navbar-sidebar__item menu"},n),r.createElement("div",{className:"navbar-sidebar__item menu"},a)))}var B=n(2949),j=n(2389);function z(e){return r.createElement("svg",(0,l.Z)({viewBox:"0 0 24 24",width:24,height:24},e),r.createElement("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 U(e){return r.createElement("svg",(0,l.Z)({viewBox:"0 0 24 24",width:24,height:24},e),r.createElement("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 $={toggle:"toggle_vylO",toggleButton:"toggleButton_gllP",darkToggleIcon:"darkToggleIcon_wfgR",lightToggleIcon:"lightToggleIcon_pyhR",toggleButtonDisabled:"toggleButtonDisabled_aARS"};function q(e){let{className:t,buttonClassName:n,value:a,onChange:i}=e;const l=(0,j.Z)(),s=(0,c.I)({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"===a?(0,c.I)({message:"dark mode",id:"theme.colorToggle.ariaLabel.mode.dark",description:"The name for the dark color mode"}):(0,c.I)({message:"light mode",id:"theme.colorToggle.ariaLabel.mode.light",description:"The name for the light color mode"})});return r.createElement("div",{className:(0,o.Z)($.toggle,t)},r.createElement("button",{className:(0,o.Z)("clean-btn",$.toggleButton,!l&&$.toggleButtonDisabled,n),type:"button",onClick:()=>i("dark"===a?"light":"dark"),disabled:!l,title:s,"aria-label":s,"aria-live":"polite"},r.createElement(z,{className:(0,o.Z)($.toggleIcon,$.lightToggleIcon)}),r.createElement(U,{className:(0,o.Z)($.toggleIcon,$.darkToggleIcon)})))}const H=r.memo(q),G={darkNavbarColorModeToggle:"darkNavbarColorModeToggle_X3D1"};function Z(e){let{className:t}=e;const n=(0,w.L)().navbar.style,o=(0,w.L)().colorMode.disableSwitch,{colorMode:a,setColorMode:i}=(0,B.I)();return o?null:r.createElement(H,{className:t,buttonClassName:"dark"===n?G.darkNavbarColorModeToggle:void 0,value:a,onChange:i})}var V=n(1327);function W(){return r.createElement(V.Z,{className:"navbar__brand",imageClassName:"navbar__logo",titleClassName:"navbar__title text--truncate"})}function Y(){const e=(0,L.e)();return r.createElement("button",{type:"button","aria-label":(0,c.I)({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()},r.createElement(E,{color:"var(--ifm-color-emphasis-600)"}))}function K(){return r.createElement("div",{className:"navbar-sidebar__brand"},r.createElement(W,null),r.createElement(Z,{className:"margin-right--md"}),r.createElement(Y,null))}var Q=n(9960),X=n(4996),J=n(3919);function ee(e,t){return void 0!==e&&void 0!==t&&new RegExp(e,"gi").test(t)}var te=n(9471);function ne(e){let{activeBasePath:t,activeBaseRegex:n,to:o,href:a,label:i,html:s,isDropdownLink:c,prependBaseUrlToHref:u,...d}=e;const p=(0,X.Z)(o),f=(0,X.Z)(t),m=(0,X.Z)(a,{forcePrependBaseUrl:!0}),h=i&&a&&!(0,J.Z)(a),g=s?{dangerouslySetInnerHTML:{__html:s}}:{children:r.createElement(r.Fragment,null,i,h&&r.createElement(te.Z,c&&{width:12,height:12}))};return a?r.createElement(Q.Z,(0,l.Z)({href:u?m:a},d,g)):r.createElement(Q.Z,(0,l.Z)({to:p,isNavLink:!0},(t||n)&&{isActive:(e,t)=>n?ee(n,t.pathname):t.pathname.startsWith(f)},d,g))}function re(e){let{className:t,isDropdownItem:n=!1,...a}=e;const i=r.createElement(ne,(0,l.Z)({className:(0,o.Z)(n?"dropdown__link":"navbar__item navbar__link",t),isDropdownLink:n},a));return n?r.createElement("li",null,i):i}function oe(e){let{className:t,isDropdownItem:n,...a}=e;return r.createElement("li",{className:"menu__list-item"},r.createElement(ne,(0,l.Z)({className:(0,o.Z)("menu__link",t)},a)))}function ae(e){let{mobile:t=!1,position:n,...o}=e;const a=t?oe:re;return r.createElement(a,(0,l.Z)({},o,{activeClassName:o.activeClassName??(t?"menu__link--active":"navbar__link--active")}))}var ie=n(6043),le=n(8596),se=n(2263);function ce(e,t){return e.some((e=>function(e,t){return!!(0,le.Mg)(e.to,t)||!!ee(e.activeBaseRegex,t)||!(!e.activeBasePath||!t.startsWith(e.activeBasePath))}(e,t)))}function ue(e){let{items:t,position:n,className:a,onClick:i,...s}=e;const c=(0,r.useRef)(null),[u,d]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{const e=e=>{c.current&&!c.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)}}),[c]),r.createElement("div",{ref:c,className:(0,o.Z)("navbar__item","dropdown","dropdown--hoverable",{"dropdown--right":"right"===n,"dropdown--show":u})},r.createElement(ne,(0,l.Z)({"aria-haspopup":"true","aria-expanded":u,role:"button",href:s.to?void 0:"#",className:(0,o.Z)("navbar__link",a)},s,{onClick:s.to?void 0:e=>e.preventDefault(),onKeyDown:e=>{"Enter"===e.key&&(e.preventDefault(),d(!u))}}),s.children??s.label),r.createElement("ul",{className:"dropdown__menu"},t.map(((e,t)=>r.createElement(_e,(0,l.Z)({isDropdownItem:!0,activeClassName:"dropdown__link--active"},e,{key:t}))))))}function de(e){let{items:t,className:n,position:a,onClick:i,...c}=e;const u=function(){const{siteConfig:{baseUrl:e}}=(0,se.Z)(),{pathname:t}=(0,s.TH)();return t.replace(e,"/")}(),d=ce(t,u),{collapsed:p,toggleCollapsed:f,setCollapsed:m}=(0,ie.u)({initialState:()=>!d});return(0,r.useEffect)((()=>{d&&m(!d)}),[u,d,m]),r.createElement("li",{className:(0,o.Z)("menu__list-item",{"menu__list-item--collapsed":p})},r.createElement(ne,(0,l.Z)({role:"button",className:(0,o.Z)("menu__link menu__link--sublist menu__link--sublist-caret",n)},c,{onClick:e=>{e.preventDefault(),f()}}),c.children??c.label),r.createElement(ie.z,{lazy:!0,as:"ul",className:"menu__list",collapsed:p},t.map(((e,t)=>r.createElement(_e,(0,l.Z)({mobile:!0,isDropdownItem:!0,onClick:i,activeClassName:"menu__link--active"},e,{key:t}))))))}function pe(e){let{mobile:t=!1,...n}=e;const o=t?de:ue;return r.createElement(o,n)}var fe=n(4711);function me(e){let{width:t=20,height:n=20,...o}=e;return r.createElement("svg",(0,l.Z)({viewBox:"0 0 24 24",width:t,height:n,"aria-hidden":!0},o),r.createElement("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 he="iconLanguage_nlXk";var ge=n(1875);const be={searchBox:"searchBox_ZlJk"};function ve(e){let{children:t,className:n}=e;return r.createElement("div",{className:(0,o.Z)(n,be.searchBox)},t)}var ye=n(143),we=n(2802);var ke=n(373);const Ee=e=>e.docs.find((t=>t.id===e.mainDocId));const Se={default:ae,localeDropdown:function(e){let{mobile:t,dropdownItemsBefore:n,dropdownItemsAfter:o,...a}=e;const{i18n:{currentLocale:i,locales:u,localeConfigs:d}}=(0,se.Z)(),p=(0,fe.l)(),{search:f,hash:m}=(0,s.TH)(),h=[...n,...u.map((e=>{const n=`${`pathname://${p.createUrl({locale:e,fullyQualified:!1})}`}${f}${m}`;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":""}})),...o],g=t?(0,c.I)({message:"Languages",id:"theme.navbar.mobileLanguageDropdown.label",description:"The label for the mobile language switcher dropdown"}):d[i].label;return r.createElement(pe,(0,l.Z)({},a,{mobile:t,label:r.createElement(r.Fragment,null,r.createElement(me,{className:he}),g),items:h}))},search:function(e){let{mobile:t,className:n}=e;return t?null:r.createElement(ve,{className:n},r.createElement(ge.Z,null))},dropdown:pe,html:function(e){let{value:t,className:n,mobile:a=!1,isDropdownItem:i=!1}=e;const l=i?"li":"div";return r.createElement(l,{className:(0,o.Z)({navbar__item:!a&&!i,"menu__list-item":a},n),dangerouslySetInnerHTML:{__html:t}})},doc:function(e){let{docId:t,label:n,docsPluginId:o,...a}=e;const{activeDoc:i}=(0,ye.Iw)(o),s=(0,we.vY)(t,o);return null===s?null:r.createElement(ae,(0,l.Z)({exact:!0},a,{isActive:()=>i?.path===s.path||!!i?.sidebar&&i.sidebar===s.sidebar,label:n??s.id,to:s.path}))},docSidebar:function(e){let{sidebarId:t,label:n,docsPluginId:o,...a}=e;const{activeDoc:i}=(0,ye.Iw)(o),s=(0,we.oz)(t,o).link;if(!s)throw new Error(`DocSidebarNavbarItem: Sidebar with ID "${t}" doesn't have anything to be linked to.`);return r.createElement(ae,(0,l.Z)({exact:!0},a,{isActive:()=>i?.sidebar===t,label:n??s.label,to:s.path}))},docsVersion:function(e){let{label:t,to:n,docsPluginId:o,...a}=e;const i=(0,we.lO)(o)[0],s=t??i.label,c=n??(e=>e.docs.find((t=>t.id===e.mainDocId)))(i).path;return r.createElement(ae,(0,l.Z)({},a,{label:s,to:c}))},docsVersionDropdown:function(e){let{mobile:t,docsPluginId:n,dropdownActiveClassDisabled:o,dropdownItemsBefore:a,dropdownItemsAfter:i,...u}=e;const{search:d,hash:p}=(0,s.TH)(),f=(0,ye.Iw)(n),m=(0,ye.gB)(n),{savePreferredVersionName:h}=(0,ke.J)(n),g=[...a,...m.map((e=>{const t=f.alternateDocVersions[e.name]??Ee(e);return{label:e.label,to:`${t.path}${d}${p}`,isActive:()=>e===f.activeVersion,onClick:()=>h(e.name)}})),...i],b=(0,we.lO)(n)[0],v=t&&g.length>1?(0,c.I)({id:"theme.navbar.mobileVersionsDropdown.label",message:"Versions",description:"The label for the navbar versions dropdown on mobile view"}):b.label,y=t&&g.length>1?void 0:Ee(b).path;return g.length<=1?r.createElement(ae,(0,l.Z)({},u,{mobile:t,label:v,to:y,isActive:o?()=>!1:void 0})):r.createElement(pe,(0,l.Z)({},u,{mobile:t,label:v,to:y,items:g,isActive:o?()=>!1:void 0}))}};function _e(e){let{type:t,...n}=e;const o=function(e,t){return e&&"default"!==e?e:"items"in t?"dropdown":"default"}(t,n),a=Se[o];if(!a)throw new Error(`No NavbarItem component found for type "${t}".`);return r.createElement(a,n)}function xe(){const e=(0,L.e)(),t=(0,w.L)().navbar.items;return r.createElement("ul",{className:"menu__list"},t.map(((t,n)=>r.createElement(_e,(0,l.Z)({mobile:!0},t,{onClick:()=>e.toggle(),key:n})))))}function Ce(e){return r.createElement("button",(0,l.Z)({},e,{type:"button",className:"clean-btn navbar-sidebar__back"}),r.createElement(c.Z,{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)"},"\u2190 Back to main menu"))}function Te(){const e=0===(0,w.L)().navbar.items.length,t=M();return r.createElement(r.Fragment,null,!e&&r.createElement(Ce,{onClick:()=>t.hide()}),t.content)}function Ae(){const e=(0,L.e)();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?r.createElement(F,{header:r.createElement(K,null),primaryMenu:r.createElement(xe,null),secondaryMenu:r.createElement(Te,null)}):null}const Le={navbarHideable:"navbarHideable_m1mJ",navbarHidden:"navbarHidden_jGov"};function De(e){return r.createElement("div",(0,l.Z)({role:"presentation"},e,{className:(0,o.Z)("navbar-sidebar__backdrop",e.className)}))}function Pe(e){let{children:t}=e;const{navbar:{hideOnScroll:n,style:a}}=(0,w.L)(),i=(0,L.e)(),{navbarRef:l,isNavbarVisible:s}=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,D.RF)(((t,r)=>{let{scrollY:i}=t;if(!e)return;if(i=l?n(!1):i+c{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 r.createElement("nav",{ref:l,"aria-label":(0,c.I)({id:"theme.NavBar.navAriaLabel",message:"Main",description:"The ARIA label for the main navigation"}),className:(0,o.Z)("navbar","navbar--fixed-top",n&&[Le.navbarHideable,!s&&Le.navbarHidden],{"navbar--dark":"dark"===a,"navbar--primary":"primary"===a,"navbar-sidebar--show":i.shown})},t,r.createElement(De,{onClick:i.toggle}),r.createElement(Ae,null))}var Ne=n(8780);const Re={errorBoundaryError:"errorBoundaryError_a6uf"};function Oe(e){return r.createElement("button",(0,l.Z)({type:"button"},e),r.createElement(c.Z,{id:"theme.ErrorPageContent.tryAgain",description:"The label of the button to try again rendering when the React error boundary captures an error"},"Try again"))}function Ie(e){let{error:t}=e;const n=(0,Ne.getErrorCausalChain)(t).map((e=>e.message)).join("\n\nCause:\n");return r.createElement("p",{className:Re.errorBoundaryError},n)}class Me extends r.Component{componentDidCatch(e,t){throw this.props.onError(e,t)}render(){return this.props.children}}const Fe="right";function Be(e){let{width:t=30,height:n=30,className:o,...a}=e;return r.createElement("svg",(0,l.Z)({className:o,width:t,height:n,viewBox:"0 0 30 30","aria-hidden":"true"},a),r.createElement("path",{stroke:"currentColor",strokeLinecap:"round",strokeMiterlimit:"10",strokeWidth:"2",d:"M4 7h22M4 15h22M4 23h22"}))}function je(){const{toggle:e,shown:t}=(0,L.e)();return r.createElement("button",{onClick:e,"aria-label":(0,c.I)({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"},r.createElement(Be,null))}const ze={colorModeToggle:"colorModeToggle_DEke"};function Ue(e){let{items:t}=e;return r.createElement(r.Fragment,null,t.map(((e,t)=>r.createElement(Me,{key:t,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})},r.createElement(_e,e)))))}function $e(e){let{left:t,right:n}=e;return r.createElement("div",{className:"navbar__inner"},r.createElement("div",{className:"navbar__items"},t),r.createElement("div",{className:"navbar__items navbar__items--right"},n))}function qe(){const e=(0,L.e)(),t=(0,w.L)().navbar.items,[n,o]=function(e){function t(e){return"left"===(e.position??Fe)}return[e.filter(t),e.filter((e=>!t(e)))]}(t),a=t.find((e=>"search"===e.type));return r.createElement($e,{left:r.createElement(r.Fragment,null,!e.disabled&&r.createElement(je,null),r.createElement(W,null),r.createElement(Ue,{items:n})),right:r.createElement(r.Fragment,null,r.createElement(Ue,{items:o}),r.createElement(Z,{className:ze.colorModeToggle}),!a&&r.createElement(ve,null,r.createElement(ge.Z,null)))})}function He(){return r.createElement(Pe,null,r.createElement(qe,null))}function Ge(e){let{item:t}=e;const{to:n,href:o,label:a,prependBaseUrlToHref:i,...s}=t,c=(0,X.Z)(n),u=(0,X.Z)(o,{forcePrependBaseUrl:!0});return r.createElement(Q.Z,(0,l.Z)({className:"footer__link-item"},o?{href:i?u:o}:{to:c},s),a,o&&!(0,J.Z)(o)&&r.createElement(te.Z,null))}function Ze(e){let{item:t}=e;return t.html?r.createElement("li",{className:"footer__item",dangerouslySetInnerHTML:{__html:t.html}}):r.createElement("li",{key:t.href??t.to,className:"footer__item"},r.createElement(Ge,{item:t}))}function Ve(e){let{column:t}=e;return r.createElement("div",{className:"col footer__col"},r.createElement("div",{className:"footer__title"},t.title),r.createElement("ul",{className:"footer__items clean-list"},t.items.map(((e,t)=>r.createElement(Ze,{key:t,item:e})))))}function We(e){let{columns:t}=e;return r.createElement("div",{className:"row footer__links"},t.map(((e,t)=>r.createElement(Ve,{key:t,column:e}))))}function Ye(){return r.createElement("span",{className:"footer__link-separator"},"\xb7")}function Ke(e){let{item:t}=e;return t.html?r.createElement("span",{className:"footer__link-item",dangerouslySetInnerHTML:{__html:t.html}}):r.createElement(Ge,{item:t})}function Qe(e){let{links:t}=e;return r.createElement("div",{className:"footer__links text--center"},r.createElement("div",{className:"footer__links"},t.map(((e,n)=>r.createElement(r.Fragment,{key:n},r.createElement(Ke,{item:e}),t.length!==n+1&&r.createElement(Ye,null))))))}function Xe(e){let{links:t}=e;return function(e){return"title"in e[0]}(t)?r.createElement(We,{columns:t}):r.createElement(Qe,{links:t})}var Je=n(941);const et={footerLogoLink:"footerLogoLink_BH7S"};function tt(e){let{logo:t}=e;const{withBaseUrl:n}=(0,X.C)(),a={light:n(t.src),dark:n(t.srcDark??t.src)};return r.createElement(Je.Z,{className:(0,o.Z)("footer__logo",t.className),alt:t.alt,sources:a,width:t.width,height:t.height,style:t.style})}function nt(e){let{logo:t}=e;return t.href?r.createElement(Q.Z,{href:t.href,className:et.footerLogoLink,target:t.target},r.createElement(tt,{logo:t})):r.createElement(tt,{logo:t})}function rt(e){let{copyright:t}=e;return r.createElement("div",{className:"footer__copyright",dangerouslySetInnerHTML:{__html:t}})}function ot(e){let{style:t,links:n,logo:a,copyright:i}=e;return r.createElement("footer",{className:(0,o.Z)("footer",{"footer--dark":"dark"===t})},r.createElement("div",{className:"container container-fluid"},n,(a||i)&&r.createElement("div",{className:"footer__bottom text--center"},a&&r.createElement("div",{className:"margin-bottom--sm"},a),i)))}function at(){const{footer:e}=(0,w.L)();if(!e)return null;const{copyright:t,links:n,logo:o,style:a}=e;return r.createElement(ot,{style:a,links:n&&n.length>0&&r.createElement(Xe,{links:n}),logo:o&&r.createElement(nt,{logo:o}),copyright:t&&r.createElement(rt,{copyright:t})})}const it=r.memo(at),lt=(0,P.Qc)([B.S,k.pl,D.OC,ke.L5,i.VC,function(e){let{children:t}=e;return r.createElement(N.n2,null,r.createElement(L.M,null,r.createElement(O,null,t)))}]);function st(e){let{children:t}=e;return r.createElement(lt,null,t)}function ct(e){let{error:t,tryAgain:n}=e;return r.createElement("main",{className:"container margin-vert--xl"},r.createElement("div",{className:"row"},r.createElement("div",{className:"col col--6 col--offset-3"},r.createElement("h1",{className:"hero__title"},r.createElement(c.Z,{id:"theme.ErrorPageContent.title",description:"The title of the fallback page when the page crashed"},"This page crashed.")),r.createElement("div",{className:"margin-vert--lg"},r.createElement(Oe,{onClick:n,className:"button button--primary shadow--lw"})),r.createElement("hr",null),r.createElement("div",{className:"margin-vert--md"},r.createElement(Ie,{error:t})))))}const ut={mainWrapper:"mainWrapper_z2l0"};function dt(e){const{children:t,noFooter:n,wrapperClassName:l,title:s,description:c}=e;return(0,b.t)(),r.createElement(st,null,r.createElement(i.d,{title:s,description:c}),r.createElement(y,null),r.createElement(A,null),r.createElement(He,null),r.createElement("div",{id:d,className:(0,o.Z)(g.k.wrapper.main,ut.mainWrapper,l)},r.createElement(a.Z,{fallback:e=>r.createElement(ct,e)},t)),!n&&r.createElement(it,null))}},1327:(e,t,n)=>{"use strict";n.d(t,{Z:()=>d});var r=n(7462),o=n(7294),a=n(9960),i=n(4996),l=n(2263),s=n(6668),c=n(941);function u(e){let{logo:t,alt:n,imageClassName:r}=e;const a={light:(0,i.Z)(t.src),dark:(0,i.Z)(t.srcDark||t.src)},l=o.createElement(c.Z,{className:t.className,sources:a,height:t.height,width:t.width,alt:n,style:t.style});return r?o.createElement("div",{className:r},l):l}function d(e){const{siteConfig:{title:t}}=(0,l.Z)(),{navbar:{title:n,logo:c}}=(0,s.L)(),{imageClassName:d,titleClassName:p,...f}=e,m=(0,i.Z)(c?.href||"/"),h=n?"":t,g=c?.alt??h;return o.createElement(a.Z,(0,r.Z)({to:m},f,c?.target&&{target:c.target}),c&&o.createElement(u,{logo:c,alt:g,imageClassName:d}),null!=n&&o.createElement("b",{className:p},n))}},197:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(7294),o=n(5742);function a(e){let{locale:t,version:n,tag:a}=e;const i=t;return r.createElement(o.Z,null,t&&r.createElement("meta",{name:"docusaurus_locale",content:t}),n&&r.createElement("meta",{name:"docusaurus_version",content:n}),a&&r.createElement("meta",{name:"docusaurus_tag",content:a}),i&&r.createElement("meta",{name:"docsearch:language",content:i}),n&&r.createElement("meta",{name:"docsearch:version",content:n}),a&&r.createElement("meta",{name:"docsearch:docusaurus_tag",content:a}))}},941:(e,t,n)=>{"use strict";n.d(t,{Z:()=>c});var r=n(7462),o=n(7294),a=n(6010),i=n(2389),l=n(2949);const s={themedImage:"themedImage_ToTc","themedImage--light":"themedImage--light_HNdA","themedImage--dark":"themedImage--dark_i4oU"};function c(e){const t=(0,i.Z)(),{colorMode:n}=(0,l.I)(),{sources:c,className:u,alt:d,...p}=e,f=t?"dark"===n?["dark"]:["light"]:["light","dark"];return o.createElement(o.Fragment,null,f.map((e=>o.createElement("img",(0,r.Z)({key:e,src:c[e],alt:d,className:(0,a.Z)(s.themedImage,s[`themedImage--${e}`],u)},p)))))}},6043:(e,t,n)=>{"use strict";n.d(t,{u:()=>s,z:()=>g});var r=n(7462),o=n(7294),a=n(412),i=n(1442);const l="ease-in-out";function s(e){let{initialState:t}=e;const[n,r]=(0,o.useState)(t??!1),a=(0,o.useCallback)((()=>{r((e=>!e))}),[]);return{collapsed:n,setCollapsed:r,toggleCollapsed:a}}const c={display:"none",overflow:"hidden",height:"0px"},u={display:"block",overflow:"visible",height:"auto"};function d(e,t){const n=t?c:u;e.style.display=n.display,e.style.overflow=n.overflow,e.style.height=n.height}function p(e){let{collapsibleRef:t,collapsed:n,animation:r}=e;const a=(0,o.useRef)(!1);(0,o.useEffect)((()=>{const e=t.current;function o(){const t=e.scrollHeight,n=r?.duration??function(e){if((0,i.n)())return 1;const t=e/36;return Math.round(10*(4+15*t**.25+t/5))}(t);return{transition:`height ${n}ms ${r?.easing??l}`,height:`${t}px`}}function s(){const t=o();e.style.transition=t.transition,e.style.height=t.height}if(!a.current)return d(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,r])}function f(e){if(!a.Z.canUseDOM)return e?c:u}function m(e){let{as:t="div",collapsed:n,children:r,animation:a,onCollapseTransitionEnd:i,className:l,disableSSRStyle:s}=e;const c=(0,o.useRef)(null);return p({collapsibleRef:c,collapsed:n,animation:a}),o.createElement(t,{ref:c,style:s?void 0:f(n),onTransitionEnd:e=>{"height"===e.propertyName&&(d(c.current,n),i?.(n))},className:l},r)}function h(e){let{collapsed:t,...n}=e;const[a,i]=(0,o.useState)(!t),[l,s]=(0,o.useState)(t);return(0,o.useLayoutEffect)((()=>{t||i(!0)}),[t]),(0,o.useLayoutEffect)((()=>{a&&s(t)}),[a,t]),a?o.createElement(m,(0,r.Z)({},n,{collapsed:l})):null}function g(e){let{lazy:t,...n}=e;const r=t?h:m;return o.createElement(r,n)}},9689:(e,t,n)=>{"use strict";n.d(t,{nT:()=>m,pl:()=>f});var r=n(7294),o=n(2389),a=n(12),i=n(902),l=n(6668);const s=(0,a.WA)("docusaurus.announcement.dismiss"),c=(0,a.WA)("docusaurus.announcement.id"),u=()=>"true"===s.get(),d=e=>s.set(String(e)),p=r.createContext(null);function f(e){let{children:t}=e;const n=function(){const{announcementBar:e}=(0,l.L)(),t=(0,o.Z)(),[n,a]=(0,r.useState)((()=>!!t&&u()));(0,r.useEffect)((()=>{a(u())}),[]);const i=(0,r.useCallback)((()=>{d(!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&&d(!1),!r&&u()||a(!1)}),[e]),(0,r.useMemo)((()=>({isActive:!!e&&!n,close:i})),[e,n,i])}();return r.createElement(p.Provider,{value:n},t)}function m(){const e=(0,r.useContext)(p);if(!e)throw new i.i6("AnnouncementBarProvider");return e}},2949:(e,t,n)=>{"use strict";n.d(t,{I:()=>g,S:()=>h});var r=n(7294),o=n(412),a=n(902),i=n(12),l=n(6668);const s=r.createContext(void 0),c="theme",u=(0,i.WA)(c),d={light:"light",dark:"dark"},p=e=>e===d.dark?d.dark:d.light,f=e=>o.Z.canUseDOM?p(document.documentElement.getAttribute("data-theme")):p(e),m=e=>{u.set(p(e))};function h(e){let{children:t}=e;const n=function(){const{colorMode:{defaultMode:e,disableSwitch:t,respectPrefersColorScheme:n}}=(0,l.L)(),[o,a]=(0,r.useState)(f(e));(0,r.useEffect)((()=>{t&&u.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?d.dark:d.light:e),u.del())}),[n,e]);(0,r.useEffect)((()=>{document.documentElement.setAttribute("data-theme",p(o))}),[o]),(0,r.useEffect)((()=>{if(t)return;const e=e=>{if(e.key!==c)return;const t=u.get();null!==t&&i(p(t))};return window.addEventListener("storage",e),()=>window.removeEventListener("storage",e)}),[t,i]);const s=(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||s.current?s.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===d.dark},setLightTheme(){i(d.light)},setDarkTheme(){i(d.dark)}})),[o,i])}();return r.createElement(s.Provider,{value:n},t)}function g(){const e=(0,r.useContext)(s);if(null==e)throw new a.i6("ColorModeProvider","Please see https://docusaurus.io/docs/api/themes/configuration#use-color-mode.");return e}},373:(e,t,n)=>{"use strict";n.d(t,{J:()=>v,L5:()=>g});var r=n(7294),o=n(143),a=n(9935),i=n(6668),l=n(2802),s=n(902),c=n(12);const u=e=>`docs-preferred-version-${e}`,d={save:(e,t,n)=>{(0,c.WA)(u(e),{persistence:t}).set(n)},read:(e,t)=>(0,c.WA)(u(e),{persistence:t}).get(),clear:(e,t)=>{(0,c.WA)(u(e),{persistence:t}).del()}},p=e=>Object.fromEntries(e.map((e=>[e,{preferredVersionName:null}])));const f=r.createContext(null);function m(){const e=(0,o._r)(),t=(0,i.L)().docs.versionPersistence,n=(0,r.useMemo)((()=>Object.keys(e)),[e]),[a,l]=(0,r.useState)((()=>p(n)));(0,r.useEffect)((()=>{l(function(e){let{pluginIds:t,versionPersistence:n,allDocsData:r}=e;function o(e){const t=d.read(e,n);return r[e].versions.some((e=>e.name===t))?{preferredVersionName:t}:(d.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){d.save(e,t,n),l((t=>({...t,[e]:{preferredVersionName:n}})))}})),[t])]}function h(e){let{children:t}=e;const n=m();return r.createElement(f.Provider,{value:n},t)}function g(e){let{children:t}=e;return l.cE?r.createElement(h,null,t):r.createElement(r.Fragment,null,t)}function b(){const e=(0,r.useContext)(f);if(!e)throw new s.i6("DocsPreferredVersionContextProvider");return e}function v(e){void 0===e&&(e=a.m);const t=(0,o.zh)(e),[n,i]=b(),{preferredVersionName:l}=n[e];return{preferredVersion:t.versions.find((e=>e.name===l))??null,savePreferredVersionName:(0,r.useCallback)((t=>{i.savePreferredVersion(e,t)}),[i,e])}}},1116:(e,t,n)=>{"use strict";n.d(t,{V:()=>s,b:()=>l});var r=n(7294),o=n(902);const a=Symbol("EmptyContext"),i=r.createContext(a);function l(e){let{children:t,name:n,items:o}=e;const a=(0,r.useMemo)((()=>n&&o?{name:n,items:o}:null),[n,o]);return r.createElement(i.Provider,{value:a},t)}function s(){const e=(0,r.useContext)(i);if(e===a)throw new o.i6("DocsSidebarProvider");return e}},2961:(e,t,n)=>{"use strict";n.d(t,{M:()=>p,e:()=>f});var r=n(7294),o=n(3102),a=n(7524),i=n(6550),l=(n(1688),n(902));function s(e){!function(e){const t=(0,i.k6)(),n=(0,l.zX)(e);(0,r.useEffect)((()=>t.block(((e,t)=>n(e,t)))),[t,n])}(((t,n)=>{if("POP"===n)return e(t,n)}))}var c=n(6668);const u=r.createContext(void 0);function d(){const e=function(){const e=(0,o.HY)(),{items:t}=(0,c.L)().navbar;return 0===t.length&&!e.component}(),t=(0,a.i)(),n=!e&&"mobile"===t,[i,l]=(0,r.useState)(!1);s((()=>{if(i)return l(!1),!1}));const u=(0,r.useCallback)((()=>{l((e=>!e))}),[]);return(0,r.useEffect)((()=>{"desktop"===t&&l(!1)}),[t]),(0,r.useMemo)((()=>({disabled:e,shouldRender:n,toggle:u,shown:i})),[e,n,u,i])}function p(e){let{children:t}=e;const n=d();return r.createElement(u.Provider,{value:n},t)}function f(){const e=r.useContext(u);if(void 0===e)throw new l.i6("NavbarMobileSidebarProvider");return e}},3102:(e,t,n)=>{"use strict";n.d(t,{HY:()=>l,Zo:()=>s,n2:()=>i});var r=n(7294),o=n(902);const a=r.createContext(null);function i(e){let{children:t}=e;const n=(0,r.useState)({component:null,props:null});return r.createElement(a.Provider,{value:n},t)}function l(){const e=(0,r.useContext)(a);if(!e)throw new o.i6("NavbarSecondaryMenuContentProvider");return e[0]}function s(e){let{component:t,props:n}=e;const i=(0,r.useContext)(a);if(!i)throw new o.i6("NavbarSecondaryMenuContentProvider");const[,l]=i,s=(0,o.Ql)(n);return(0,r.useEffect)((()=>{l({component:t,props:s})}),[l,t,s]),(0,r.useEffect)((()=>()=>l({component:null,props:null})),[l]),null}},9727:(e,t,n)=>{"use strict";n.d(t,{h:()=>o,t:()=>a});var r=n(7294);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)}}),[])}},7524:(e,t,n)=>{"use strict";n.d(t,{i:()=>c});var r=n(7294),o=n(412);const a={desktop:"desktop",mobile:"mobile",ssr:"ssr"},i=996;function l(){return o.Z.canUseDOM?window.innerWidth>i?a.desktop:a.mobile:a.ssr}const s=!1;function c(){const[e,t]=(0,r.useState)((()=>s?"ssr":l()));return(0,r.useEffect)((()=>{function e(){t(l())}const n=s?window.setTimeout(e,1e3):void 0;return window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e),clearTimeout(n)}}),[]),e}},5281:(e,t,n)=>{"use strict";n.d(t,{k:()=>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",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:{}}},1442:(e,t,n)=>{"use strict";function r(){return window.matchMedia("(prefers-reduced-motion: reduce)").matches}n.d(t,{n:()=>r})},2802:(e,t,n)=>{"use strict";n.d(t,{Wl:()=>p,_F:()=>h,cE:()=>d,hI:()=>k,lO:()=>v,vY:()=>w,oz:()=>y,s1:()=>b});var r=n(7294),o=n(6550),a=n(8790),i=n(143),l=n(373),s=n(1116);function c(e){return Array.from(new Set(e))}var u=n(8596);const d=!!i._r;function p(e){if(e.href)return e.href;for(const t of e.items){if("link"===t.type)return t.href;if("category"===t.type){const e=p(t);if(e)return e}}}const f=(e,t)=>void 0!==e&&(0,u.Mg)(e,t),m=(e,t)=>e.some((e=>h(e,t)));function h(e,t){return"link"===e.type?f(e.href,t):"category"===e.type&&(f(e.href,t)||m(e.items,t))}function g(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,u.Mg)(a.href,n)||e(a.items))||"link"===a.type&&(0,u.Mg)(a.href,n)){return r&&"category"!==a.type||o.unshift(a),!0}return!1}(t),o}function b(){const e=(0,s.V)(),{pathname:t}=(0,o.TH)(),n=(0,i.gA)()?.pluginData.breadcrumbs;return!1!==n&&e?g({sidebarItems:e.items,pathname:t}):null}function v(e){const{activeVersion:t}=(0,i.Iw)(e),{preferredVersion:n}=(0,l.J)(e),o=(0,i.yW)(e);return(0,r.useMemo)((()=>c([t,n,o].filter(Boolean))),[t,n,o])}function y(e,t){const n=v(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 w(e,t){const n=v(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 k(e){let{route:t,versionMetadata:n}=e;const r=(0,o.TH)(),i=t.routes,l=i.find((e=>(0,o.LX)(r.pathname,e)));if(!l)return null;const s=l.sidebar,c=s?n.docsSidebars[s]:void 0;return{docElement:(0,a.H)(i),sidebarName:s,sidebarItems:c}}},1944:(e,t,n)=>{"use strict";n.d(t,{FG:()=>p,d:()=>u,VC:()=>f});var r=n(7294),o=n(6010),a=n(5742),i=n(226);function l(){const e=r.useContext(i._);if(!e)throw new Error("Unexpected: no Docusaurus route context found");return e}var s=n(4996),c=n(2263);function u(e){let{title:t,description:n,keywords:o,image:i,children:l}=e;const u=function(e){const{siteConfig:t}=(0,c.Z)(),{title:n,titleDelimiter:r}=t;return e?.trim().length?`${e.trim()} ${r} ${n}`:n}(t),{withBaseUrl:d}=(0,s.C)(),p=i?d(i,{absolute:!0}):void 0;return r.createElement(a.Z,null,t&&r.createElement("title",null,u),t&&r.createElement("meta",{property:"og:title",content:u}),n&&r.createElement("meta",{name:"description",content:n}),n&&r.createElement("meta",{property:"og:description",content:n}),o&&r.createElement("meta",{name:"keywords",content:Array.isArray(o)?o.join(","):o}),p&&r.createElement("meta",{property:"og:image",content:p}),p&&r.createElement("meta",{name:"twitter:image",content:p}),l)}const d=r.createContext(void 0);function p(e){let{className:t,children:n}=e;const i=r.useContext(d),l=(0,o.Z)(i,t);return r.createElement(d.Provider,{value:l},r.createElement(a.Z,null,r.createElement("html",{className:l})),n)}function f(e){let{children:t}=e;const n=l(),a=`plugin-${n.plugin.name.replace(/docusaurus-(?:plugin|theme)-(?:content-)?/gi,"")}`;const i=`plugin-id-${n.plugin.id}`;return r.createElement(p,{className:(0,o.Z)(a,i)},t)}},902:(e,t,n)=>{"use strict";n.d(t,{D9:()=>i,Qc:()=>c,Ql:()=>s,i6:()=>l,zX:()=>a});var r=n(7294);const o=n(412).Z.canUseDOM?r.useLayoutEffect:r.useEffect;function a(e){const t=(0,r.useRef)(e);return o((()=>{t.current=e}),[e]),(0,r.useCallback)((function(){return t.current(...arguments)}),[])}function i(e){const t=(0,r.useRef)();return o((()=>{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 s(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 r.createElement(r.Fragment,null,e.reduceRight(((e,t)=>r.createElement(t,null,e)),n))}}},8596:(e,t,n)=>{"use strict";n.d(t,{Mg:()=>i,Ns:()=>l});var r=n(7294),o=n(723),a=n(2263);function i(e,t){const n=e=>(!e||e.endsWith("/")?e:`${e}/`)?.toLowerCase();return n(e)===n(t)}function l(){const{baseUrl:e}=(0,a.Z)().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.Z,baseUrl:e})),[e])}},2466:(e,t,n)=>{"use strict";n.d(t,{Ct:()=>p,OC:()=>s,RF:()=>d});var r=n(7294),o=n(412),a=n(2389),i=n(902);const l=r.createContext(void 0);function s(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 r.createElement(l.Provider,{value:n},t)}function c(){const e=(0,r.useContext)(l);if(null==e)throw new i.i6("ScrollControllerProvider");return e}const u=()=>o.Z.canUseDOM?{scrollX:window.pageXOffset,scrollY:window.pageYOffset}:null;function d(e,t){void 0===t&&(t=[]);const{scrollEventsEnabledRef:n}=c(),o=(0,r.useRef)(u()),a=(0,i.zX)(e);(0,r.useEffect)((()=>{const e=()=>{if(!n.current)return;const e=u();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 p(){const e=(0,r.useRef)(null),t=(0,a.Z)()&&"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?.()}}},3320:(e,t,n)=>{"use strict";n.d(t,{HX:()=>r,os:()=>o});n(2263);const r="default";function o(e,t){return`docs-${e}-${t}`}},12:(e,t,n)=>{"use strict";n.d(t,{WA:()=>s});n(7294),n(1688);const r="localStorage";function o(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 a(e){if(void 0===e&&(e=r),"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,i||(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),i=!0),null}var t}let i=!1;const l={get:()=>null,set:()=>{},del:()=>{},listen:()=>()=>{}};function s(e,t){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}}(e);const n=a(t?.persistence);return null===n?l:{get:()=>{try{return n.getItem(e)}catch(t){return console.error(`Docusaurus storage error, can't get key=${e}`,t),null}},set:t=>{try{const r=n.getItem(e);n.setItem(e,t),o({key:e,oldValue:r,newValue:t,storage:n})}catch(r){console.error(`Docusaurus storage error, can't set ${e}=${t}`,r)}},del:()=>{try{const t=n.getItem(e);n.removeItem(e),o({key:e,oldValue:t,newValue:null,storage:n})}catch(t){console.error(`Docusaurus storage error, can't delete key=${e}`,t)}},listen:t=>{try{const r=r=>{r.storageArea===n&&r.key===e&&t(r)};return window.addEventListener("storage",r),()=>window.removeEventListener("storage",r)}catch(r){return console.error(`Docusaurus storage error, can't listen for changes of key=${e}`,r),()=>{}}}}}},4711:(e,t,n)=>{"use strict";n.d(t,{l:()=>i});var r=n(2263),o=n(6550),a=n(8780);function i(){const{siteConfig:{baseUrl:e,url:t,trailingSlash:n},i18n:{defaultLocale:i,currentLocale:l}}=(0,r.Z)(),{pathname:s}=(0,o.TH)(),c=(0,a.applyTrailingSlash)(s,{trailingSlash:n,baseUrl:e}),u=l===i?e:e.replace(`/${l}/`,"/"),d=c.replace(e,"");return{createUrl:function(e){let{locale:n,fullyQualified:r}=e;return`${r?t:""}${function(e){return e===i?`${u}`:`${u}${e}/`}(n)}${d}`}}}},5936:(e,t,n)=>{"use strict";n.d(t,{S:()=>i});var r=n(7294),o=n(6550),a=n(902);function i(e){const t=(0,o.TH)(),n=(0,a.D9)(t),i=(0,a.zX)(e);(0,r.useEffect)((()=>{n&&t!==n&&i({location:t,previousLocation:n})}),[i,t,n])}},6668:(e,t,n)=>{"use strict";n.d(t,{L:()=>o});var r=n(2263);function o(){return(0,r.Z)().siteConfig.themeConfig}},8802:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){const{trailingSlash:n,baseUrl:r}=t;if(e.startsWith("#"))return e;if(void 0===n)return e;const[o]=e.split(/[#?]/),a="/"===o||o===r?o:(i=o,n?function(e){return e.endsWith("/")?e:`${e}/`}(i):function(e){return e.endsWith("/")?e.slice(0,-1):e}(i));var i;return e.replace(o,a)}},4143:(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]}},8780: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.applyTrailingSlash=t.blogPostContainerID=void 0,t.blogPostContainerID="__blog-post-container";var o=n(8802);Object.defineProperty(t,"applyTrailingSlash",{enumerable:!0,get:function(){return r(o).default}});var a=n(4143);Object.defineProperty(t,"getErrorCausalChain",{enumerable:!0,get:function(){return a.getErrorCausalChain}})},6010:(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,{lX:()=>w,q_:()=>C,ob:()=>f,PP:()=>A,Ep:()=>p});var r=n(7462);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(!c)for(;d--;d)i.unshift("..");!c||""===i[0]||i[0]&&o(i[0])||i.unshift("");var m=i.join("/");return n&&"/"!==m.substr(-1)&&(m+="/"),m};var l=n(8776);function s(e){return"/"===e.charAt(0)?e:"/"+e}function c(e){return"/"===e.charAt(0)?e.substr(1):e}function u(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.Z)({},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(l){throw l instanceof URIError?new URIError('Pathname "'+a.pathname+'" could not be decoded. This is likely caused by an invalid percent-encoding.'):l}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 m(){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,h(),w.location);u.confirmTransitionTo(o,r,n,(function(e){e&&(w.entries[w.index]=o,d({action:r,location:o}))}))},go:y,goBack:function(){y(-1)},goForward:function(){y(1)},canGo:function(e){var t=w.index+e;return t>=0&&t{"use strict";var r=n(9864),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},l={};function s(e){return r.isMemo(e)?i:l[e.$$typeof]||o}l[r.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},l[r.Memo]=i;var c=Object.defineProperty,u=Object.getOwnPropertyNames,d=Object.getOwnPropertySymbols,p=Object.getOwnPropertyDescriptor,f=Object.getPrototypeOf,m=Object.prototype;e.exports=function e(t,n,r){if("string"!=typeof n){if(m){var o=f(n);o&&o!==m&&e(t,o,r)}var i=u(n);d&&(i=i.concat(d(n)));for(var l=s(t),h=s(n),g=0;g{"use strict";e.exports=function(e,t,n,r,o,a,i,l){if(!e){var s;if(void 0===t)s=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var c=[n,r,o,a,i,l],u=0;(s=new Error(t.replace(/%s/g,(function(){return c[u++]})))).name="Invariant Violation"}throw s.framesToPop=1,s}}},5826:e=>{e.exports=Array.isArray||function(e){return"[object Array]"==Object.prototype.toString.call(e)}},2497:(e,t,n)=>{"use strict";n.r(t)},2295:(e,t,n)=>{"use strict";n.r(t)},4865: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),c=a.querySelector(r.barSelector),u=r.speed,d=r.easing;return a.offsetWidth,l((function(t){""===r.positionUsing&&(r.positionUsing=n.getPositioningCSS()),s(c,i(e,u,d)),1===e?(s(a,{transition:"none",opacity:1}),a.offsetWidth,setTimeout((function(){s(a,{transition:"all "+u+"ms linear",opacity:0}),setTimeout((function(){n.remove(),t()}),u)}),u)):setTimeout(t,u)})),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");u(document.documentElement,"nprogress-busy");var t=document.createElement("div");t.id="nprogress",t.innerHTML=r.template;var o,i=t.querySelector(r.barSelector),l=e?"-100":a(n.status||0),c=document.querySelector(r.parent);return s(i,{transition:"all 0 linear",transform:"translate3d("+l+"%,0,0)"}),r.showSpinner||(o=t.querySelector(r.spinnerSelector))&&f(o),c!=document.body&&u(c,"nprogress-custom-parent"),c.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 l=function(){var e=[];function t(){var n=e.shift();n&&n(t)}return function(n){e.push(n),1==e.length&&t()}}(),s=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 c(e,t){return("string"==typeof e?e:p(e)).indexOf(" "+t+" ")>=0}function u(e,t){var n=p(e),r=n+t;c(n,t)||(e.className=r.substring(1))}function d(e,t){var n,r=p(e);c(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)},7418:e=>{"use strict";var t=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,r=Object.prototype.propertyIsEnumerable;e.exports=function(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;if("0123456789"!==Object.getOwnPropertyNames(t).map((function(e){return t[e]})).join(""))return!1;var r={};return"abcdefghijklmnopqrst".split("").forEach((function(e){r[e]=e})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},r)).join("")}catch(o){return!1}}()?Object.assign:function(e,o){for(var a,i,l=function(e){if(null==e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}(e),s=1;s{var r=n(5826);e.exports=f,e.exports.parse=a,e.exports.compile=function(e,t){return l(a(e,t),t)},e.exports.tokensToFunction=l,e.exports.tokensToRegExp=p;var o=new RegExp(["(\\\\.)","([\\/.])?(?:(?:\\:(\\w+)(?:\\(((?:\\\\.|[^\\\\()])+)\\))?|\\(((?:\\\\.|[^\\\\()])+)\\))([+*?])?|(\\*))"].join("|"),"g");function a(e,t){for(var n,r=[],a=0,i=0,l="",u=t&&t.delimiter||"/";null!=(n=o.exec(e));){var d=n[0],p=n[1],f=n.index;if(l+=e.slice(i,f),i=f+d.length,p)l+=p[1];else{var m=e[i],h=n[2],g=n[3],b=n[4],v=n[5],y=n[6],w=n[7];l&&(r.push(l),l="");var k=null!=h&&null!=m&&m!==h,E="+"===y||"*"===y,S="?"===y||"*"===y,_=n[2]||u,x=b||v;r.push({name:g||a++,prefix:h||"",delimiter:_,optional:S,repeat:E,partial:k,asterisk:!!w,pattern:x?c(x):w?".*":"[^"+s(_)+"]+?"})}}return i{"use strict";n.d(t,{Z:()=>a});var r=function(){var e=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,t=0,n={},r={util:{encode:function e(t){return t instanceof o?new o(t.type,e(t.content),t.alias):Array.isArray(t)?t.map(e):t.replace(/&/g,"&").replace(/=d.reach);S+=E.value.length,E=E.next){var _=E.value;if(t.length>e.length)return;if(!(_ instanceof o)){var x,C=1;if(v){if(!(x=a(k,S,e,b))||x.index>=e.length)break;var T=x.index,A=x.index+x[0].length,L=S;for(L+=E.value.length;T>=L;)L+=(E=E.next).value.length;if(S=L-=E.value.length,E.value instanceof o)continue;for(var D=E;D!==t.tail&&(Ld.reach&&(d.reach=O);var I=E.prev;if(N&&(I=s(t,I,N),S+=N.length),c(t,I,C),E=s(t,I,new o(p,g?r.tokenize(P,g):P,y,P)),R&&s(t,E,R),C>1){var M={cause:p+","+m,reach:O};i(e,t,n,E.prev,S,M),d&&M.reach>d.reach&&(d.reach=M.reach)}}}}}}function l(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function s(e,t,n){var r=t.next,o={value:n,prev:t,next:r};return t.next=o,r.prev=o,e.length++,o}function c(e,t,n){for(var r=t.next,o=0;o"+a.content+""},r}(),o=r;r.default=r,o.languages.markup={comment:{pattern://,greedy:!0},prolog:{pattern:/<\?[\s\S]+?\?>/,greedy:!0},doctype:{pattern:/"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(^[^\[]*\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^$|[[\]]/,"doctype-tag":/^DOCTYPE/i,name:/[^\s<>'"]+/}},cdata:{pattern://i,greedy:!0},tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"special-attr":[],"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},o.languages.markup.tag.inside["attr-value"].inside.entity=o.languages.markup.entity,o.languages.markup.doctype.inside["internal-subset"].inside=o.languages.markup,o.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(o.languages.markup.tag,"addInlined",{value:function(e,t){var n={};n["language-"+t]={pattern:/(^$)/i,lookbehind:!0,inside:o.languages[t]},n.cdata=/^$/i;var r={"included-cdata":{pattern://i,inside:n}};r["language-"+t]={pattern:/[\s\S]+/,inside:o.languages[t]};var a={};a[e]={pattern:RegExp(/(<__[^>]*>)(?:))*\]\]>|(?!)/.source.replace(/__/g,(function(){return e})),"i"),lookbehind:!0,greedy:!0,inside:r},o.languages.insertBefore("markup","cdata",a)}}),Object.defineProperty(o.languages.markup.tag,"addAttribute",{value:function(e,t){o.languages.markup.tag.inside["special-attr"].push({pattern:RegExp(/(^|["'\s])/.source+"(?:"+e+")"+/\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))/.source,"i"),lookbehind:!0,inside:{"attr-name":/^[^\s=]+/,"attr-value":{pattern:/=[\s\S]+/,inside:{value:{pattern:/(^=\s*(["']|(?!["'])))\S[\s\S]*(?=\2$)/,lookbehind:!0,alias:[t,"language-"+t],inside:o.languages[t]},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}}}})}}),o.languages.html=o.languages.markup,o.languages.mathml=o.languages.markup,o.languages.svg=o.languages.markup,o.languages.xml=o.languages.extend("markup",{}),o.languages.ssml=o.languages.xml,o.languages.atom=o.languages.xml,o.languages.rss=o.languages.xml,function(e){var t="\\b(?:BASH|BASHOPTS|BASH_ALIASES|BASH_ARGC|BASH_ARGV|BASH_CMDS|BASH_COMPLETION_COMPAT_DIR|BASH_LINENO|BASH_REMATCH|BASH_SOURCE|BASH_VERSINFO|BASH_VERSION|COLORTERM|COLUMNS|COMP_WORDBREAKS|DBUS_SESSION_BUS_ADDRESS|DEFAULTS_PATH|DESKTOP_SESSION|DIRSTACK|DISPLAY|EUID|GDMSESSION|GDM_LANG|GNOME_KEYRING_CONTROL|GNOME_KEYRING_PID|GPG_AGENT_INFO|GROUPS|HISTCONTROL|HISTFILE|HISTFILESIZE|HISTSIZE|HOME|HOSTNAME|HOSTTYPE|IFS|INSTANCE|JOB|LANG|LANGUAGE|LC_ADDRESS|LC_ALL|LC_IDENTIFICATION|LC_MEASUREMENT|LC_MONETARY|LC_NAME|LC_NUMERIC|LC_PAPER|LC_TELEPHONE|LC_TIME|LESSCLOSE|LESSOPEN|LINES|LOGNAME|LS_COLORS|MACHTYPE|MAILCHECK|MANDATORY_PATH|NO_AT_BRIDGE|OLDPWD|OPTERR|OPTIND|ORBIT_SOCKETDIR|OSTYPE|PAPERSIZE|PATH|PIPESTATUS|PPID|PS1|PS2|PS3|PS4|PWD|RANDOM|REPLY|SECONDS|SELINUX_INIT|SESSION|SESSIONTYPE|SESSION_MANAGER|SHELL|SHELLOPTS|SHLVL|SSH_AUTH_SOCK|TERM|UID|UPSTART_EVENTS|UPSTART_INSTANCE|UPSTART_JOB|UPSTART_SESSION|USER|WINDOWID|XAUTHORITY|XDG_CONFIG_DIRS|XDG_CURRENT_DESKTOP|XDG_DATA_DIRS|XDG_GREETER_DATA_DIR|XDG_MENU_PREFIX|XDG_RUNTIME_DIR|XDG_SEAT|XDG_SEAT_PATH|XDG_SESSION_DESKTOP|XDG_SESSION_ID|XDG_SESSION_PATH|XDG_SESSION_TYPE|XDG_VTNR|XMODIFIERS)\\b",n={pattern:/(^(["']?)\w+\2)[ \t]+\S.*/,lookbehind:!0,alias:"punctuation",inside:null},r={bash:n,environment:{pattern:RegExp("\\$"+t),alias:"constant"},variable:[{pattern:/\$?\(\([\s\S]+?\)\)/,greedy:!0,inside:{variable:[{pattern:/(^\$\(\([\s\S]+)\)\)/,lookbehind:!0},/^\$\(\(/],number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/--|\+\+|\*\*=?|<<=?|>>=?|&&|\|\||[=!+\-*/%<>^&|]=?|[?~:]/,punctuation:/\(\(?|\)\)?|,|;/}},{pattern:/\$\((?:\([^)]+\)|[^()])+\)|`[^`]+`/,greedy:!0,inside:{variable:/^\$\(|^`|\)$|`$/}},{pattern:/\$\{[^}]+\}/,greedy:!0,inside:{operator:/:[-=?+]?|[!\/]|##?|%%?|\^\^?|,,?/,punctuation:/[\[\]]/,environment:{pattern:RegExp("(\\{)"+t),lookbehind:!0,alias:"constant"}}},/\$(?:\w+|[#?*!@$])/],entity:/\\(?:[abceEfnrtv\\"]|O?[0-7]{1,3}|U[0-9a-fA-F]{8}|u[0-9a-fA-F]{4}|x[0-9a-fA-F]{1,2})/};e.languages.bash={shebang:{pattern:/^#!\s*\/.*/,alias:"important"},comment:{pattern:/(^|[^"{\\$])#.*/,lookbehind:!0},"function-name":[{pattern:/(\bfunction\s+)[\w-]+(?=(?:\s*\(?:\s*\))?\s*\{)/,lookbehind:!0,alias:"function"},{pattern:/\b[\w-]+(?=\s*\(\s*\)\s*\{)/,alias:"function"}],"for-or-select":{pattern:/(\b(?:for|select)\s+)\w+(?=\s+in\s)/,alias:"variable",lookbehind:!0},"assign-left":{pattern:/(^|[\s;|&]|[<>]\()\w+(?=\+?=)/,inside:{environment:{pattern:RegExp("(^|[\\s;|&]|[<>]\\()"+t),lookbehind:!0,alias:"constant"}},alias:"variable",lookbehind:!0},string:[{pattern:/((?:^|[^<])<<-?\s*)(\w+)\s[\s\S]*?(?:\r?\n|\r)\2/,lookbehind:!0,greedy:!0,inside:r},{pattern:/((?:^|[^<])<<-?\s*)(["'])(\w+)\2\s[\s\S]*?(?:\r?\n|\r)\3/,lookbehind:!0,greedy:!0,inside:{bash:n}},{pattern:/(^|[^\\](?:\\\\)*)"(?:\\[\s\S]|\$\([^)]+\)|\$(?!\()|`[^`]+`|[^"\\`$])*"/,lookbehind:!0,greedy:!0,inside:r},{pattern:/(^|[^$\\])'[^']*'/,lookbehind:!0,greedy:!0},{pattern:/\$'(?:[^'\\]|\\[\s\S])*'/,greedy:!0,inside:{entity:r.entity}}],environment:{pattern:RegExp("\\$?"+t),alias:"constant"},variable:r.variable,function:{pattern:/(^|[\s;|&]|[<>]\()(?:add|apropos|apt|apt-cache|apt-get|aptitude|aspell|automysqlbackup|awk|basename|bash|bc|bconsole|bg|bzip2|cal|cat|cfdisk|chgrp|chkconfig|chmod|chown|chroot|cksum|clear|cmp|column|comm|composer|cp|cron|crontab|csplit|curl|cut|date|dc|dd|ddrescue|debootstrap|df|diff|diff3|dig|dir|dircolors|dirname|dirs|dmesg|docker|docker-compose|du|egrep|eject|env|ethtool|expand|expect|expr|fdformat|fdisk|fg|fgrep|file|find|fmt|fold|format|free|fsck|ftp|fuser|gawk|git|gparted|grep|groupadd|groupdel|groupmod|groups|grub-mkconfig|gzip|halt|head|hg|history|host|hostname|htop|iconv|id|ifconfig|ifdown|ifup|import|install|ip|jobs|join|kill|killall|less|link|ln|locate|logname|logrotate|look|lpc|lpr|lprint|lprintd|lprintq|lprm|ls|lsof|lynx|make|man|mc|mdadm|mkconfig|mkdir|mke2fs|mkfifo|mkfs|mkisofs|mknod|mkswap|mmv|more|most|mount|mtools|mtr|mutt|mv|nano|nc|netstat|nice|nl|node|nohup|notify-send|npm|nslookup|op|open|parted|passwd|paste|pathchk|ping|pkill|pnpm|podman|podman-compose|popd|pr|printcap|printenv|ps|pushd|pv|quota|quotacheck|quotactl|ram|rar|rcp|reboot|remsync|rename|renice|rev|rm|rmdir|rpm|rsync|scp|screen|sdiff|sed|sendmail|seq|service|sftp|sh|shellcheck|shuf|shutdown|sleep|slocate|sort|split|ssh|stat|strace|su|sudo|sum|suspend|swapon|sync|tac|tail|tar|tee|time|timeout|top|touch|tr|traceroute|tsort|tty|umount|uname|unexpand|uniq|units|unrar|unshar|unzip|update-grub|uptime|useradd|userdel|usermod|users|uudecode|uuencode|v|vcpkg|vdir|vi|vim|virsh|vmstat|wait|watch|wc|wget|whereis|which|who|whoami|write|xargs|xdg-open|yarn|yes|zenity|zip|zsh|zypper)(?=$|[)\s;|&])/,lookbehind:!0},keyword:{pattern:/(^|[\s;|&]|[<>]\()(?:case|do|done|elif|else|esac|fi|for|function|if|in|select|then|until|while)(?=$|[)\s;|&])/,lookbehind:!0},builtin:{pattern:/(^|[\s;|&]|[<>]\()(?:\.|:|alias|bind|break|builtin|caller|cd|command|continue|declare|echo|enable|eval|exec|exit|export|getopts|hash|help|let|local|logout|mapfile|printf|pwd|read|readarray|readonly|return|set|shift|shopt|source|test|times|trap|type|typeset|ulimit|umask|unalias|unset)(?=$|[)\s;|&])/,lookbehind:!0,alias:"class-name"},boolean:{pattern:/(^|[\s;|&]|[<>]\()(?:false|true)(?=$|[)\s;|&])/,lookbehind:!0},"file-descriptor":{pattern:/\B&\d\b/,alias:"important"},operator:{pattern:/\d?<>|>\||\+=|=[=~]?|!=?|<<[<-]?|[&\d]?>>|\d[<>]&?|[<>][&=]?|&[>&]?|\|[&|]?/,inside:{"file-descriptor":{pattern:/^\d/,alias:"important"}}},punctuation:/\$?\(\(?|\)\)?|\.\.|[{}[\];\\]/,number:{pattern:/(^|\s)(?:[1-9]\d*|0)(?:[.,]\d+)?\b/,lookbehind:!0}},n.inside=e.languages.bash;for(var o=["comment","function-name","for-or-select","assign-left","string","environment","function","keyword","builtin","boolean","file-descriptor","operator","punctuation","number"],a=r.variable[1].inside,i=0;i]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},o.languages.c=o.languages.extend("clike",{comment:{pattern:/\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},"class-name":{pattern:/(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+|\b[a-z]\w*_t\b/,lookbehind:!0},keyword:/\b(?:_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|__attribute__|asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|inline|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|typeof|union|unsigned|void|volatile|while)\b/,function:/\b[a-z_]\w*(?=\s*\()/i,number:/(?:\b0x(?:[\da-f]+(?:\.[\da-f]*)?|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?)[ful]{0,4}/i,operator:/>>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/}),o.languages.insertBefore("c","string",{char:{pattern:/'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n]){0,32}'/,greedy:!0}}),o.languages.insertBefore("c","string",{macro:{pattern:/(^[\t ]*)#\s*[a-z](?:[^\r\n\\/]|\/(?!\*)|\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:\r\n|[\s\S]))*/im,lookbehind:!0,greedy:!0,alias:"property",inside:{string:[{pattern:/^(#\s*include\s*)<[^>]+>/,lookbehind:!0},o.languages.c.string],char:o.languages.c.char,comment:o.languages.c.comment,"macro-name":[{pattern:/(^#\s*define\s+)\w+\b(?!\()/i,lookbehind:!0},{pattern:/(^#\s*define\s+)\w+\b(?=\()/i,lookbehind:!0,alias:"function"}],directive:{pattern:/^(#\s*)[a-z]+/,lookbehind:!0,alias:"keyword"},"directive-hash":/^#/,punctuation:/##|\\(?=[\r\n])/,expression:{pattern:/\S[\s\S]*/,inside:o.languages.c}}}}),o.languages.insertBefore("c","function",{constant:/\b(?:EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|__DATE__|__FILE__|__LINE__|__TIMESTAMP__|__TIME__|__func__|stderr|stdin|stdout)\b/}),delete o.languages.c.boolean,function(e){var t=/\b(?:alignas|alignof|asm|auto|bool|break|case|catch|char|char16_t|char32_t|char8_t|class|co_await|co_return|co_yield|compl|concept|const|const_cast|consteval|constexpr|constinit|continue|decltype|default|delete|do|double|dynamic_cast|else|enum|explicit|export|extern|final|float|for|friend|goto|if|import|inline|int|int16_t|int32_t|int64_t|int8_t|long|module|mutable|namespace|new|noexcept|nullptr|operator|override|private|protected|public|register|reinterpret_cast|requires|return|short|signed|sizeof|static|static_assert|static_cast|struct|switch|template|this|thread_local|throw|try|typedef|typeid|typename|uint16_t|uint32_t|uint64_t|uint8_t|union|unsigned|using|virtual|void|volatile|wchar_t|while)\b/,n=/\b(?!)\w+(?:\s*\.\s*\w+)*\b/.source.replace(//g,(function(){return t.source}));e.languages.cpp=e.languages.extend("c",{"class-name":[{pattern:RegExp(/(\b(?:class|concept|enum|struct|typename)\s+)(?!)\w+/.source.replace(//g,(function(){return t.source}))),lookbehind:!0},/\b[A-Z]\w*(?=\s*::\s*\w+\s*\()/,/\b[A-Z_]\w*(?=\s*::\s*~\w+\s*\()/i,/\b\w+(?=\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>\s*::\s*\w+\s*\()/],keyword:t,number:{pattern:/(?:\b0b[01']+|\b0x(?:[\da-f']+(?:\.[\da-f']*)?|\.[\da-f']+)(?:p[+-]?[\d']+)?|(?:\b[\d']+(?:\.[\d']*)?|\B\.[\d']+)(?:e[+-]?[\d']+)?)[ful]{0,4}/i,greedy:!0},operator:/>>=?|<<=?|->|--|\+\+|&&|\|\||[?:~]|<=>|[-+*/%&|^!=<>]=?|\b(?:and|and_eq|bitand|bitor|not|not_eq|or|or_eq|xor|xor_eq)\b/,boolean:/\b(?:false|true)\b/}),e.languages.insertBefore("cpp","string",{module:{pattern:RegExp(/(\b(?:import|module)\s+)/.source+"(?:"+/"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|<[^<>\r\n]*>/.source+"|"+/(?:\s*:\s*)?|:\s*/.source.replace(//g,(function(){return n}))+")"),lookbehind:!0,greedy:!0,inside:{string:/^[<"][\s\S]+/,operator:/:/,punctuation:/\./}},"raw-string":{pattern:/R"([^()\\ ]{0,16})\([\s\S]*?\)\1"/,alias:"string",greedy:!0}}),e.languages.insertBefore("cpp","keyword",{"generic-function":{pattern:/\b(?!operator\b)[a-z_]\w*\s*<(?:[^<>]|<[^<>]*>)*>(?=\s*\()/i,inside:{function:/^\w+/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:e.languages.cpp}}}}),e.languages.insertBefore("cpp","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}}),e.languages.insertBefore("cpp","class-name",{"base-clause":{pattern:/(\b(?:class|struct)\s+\w+\s*:\s*)[^;{}"'\s]+(?:\s+[^;{}"'\s]+)*(?=\s*[;{])/,lookbehind:!0,greedy:!0,inside:e.languages.extend("cpp",{})}}),e.languages.insertBefore("inside","double-colon",{"class-name":/\b[a-z_]\w*\b(?!\s*::)/i},e.languages.cpp["base-clause"])}(o),function(e){var t=/(?:"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"|'(?:\\(?:\r\n|[\s\S])|[^'\\\r\n])*')/;e.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:/@[\w-](?:[^;{\s]|\s+(?![\s{]))*(?:;|(?=\s*\{))/,inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+t.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+t.source+"$"),alias:"url"}}},selector:{pattern:RegExp("(^|[{}\\s])[^{}\\s](?:[^{};\"'\\s]|\\s+(?![\\s{])|"+t.source+")*(?=\\s*\\{)"),lookbehind:!0},string:{pattern:t,greedy:!0},property:{pattern:/(^|[^-\w\xA0-\uFFFF])(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,lookbehind:!0},important:/!important\b/i,function:{pattern:/(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,lookbehind:!0},punctuation:/[(){};:,]/},e.languages.css.atrule.inside.rest=e.languages.css;var n=e.languages.markup;n&&(n.tag.addInlined("style","css"),n.tag.addAttribute("style","css"))}(o),function(e){var t,n=/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/;e.languages.css.selector={pattern:e.languages.css.selector.pattern,lookbehind:!0,inside:t={"pseudo-element":/:(?:after|before|first-letter|first-line|selection)|::[-\w]+/,"pseudo-class":/:[-\w]+/,class:/\.[-\w]+/,id:/#[-\w]+/,attribute:{pattern:RegExp("\\[(?:[^[\\]\"']|"+n.source+")*\\]"),greedy:!0,inside:{punctuation:/^\[|\]$/,"case-sensitivity":{pattern:/(\s)[si]$/i,lookbehind:!0,alias:"keyword"},namespace:{pattern:/^(\s*)(?:(?!\s)[-*\w\xA0-\uFFFF])*\|(?!=)/,lookbehind:!0,inside:{punctuation:/\|$/}},"attr-name":{pattern:/^(\s*)(?:(?!\s)[-\w\xA0-\uFFFF])+/,lookbehind:!0},"attr-value":[n,{pattern:/(=\s*)(?:(?!\s)[-\w\xA0-\uFFFF])+(?=\s*$)/,lookbehind:!0}],operator:/[|~*^$]?=/}},"n-th":[{pattern:/(\(\s*)[+-]?\d*[\dn](?:\s*[+-]\s*\d+)?(?=\s*\))/,lookbehind:!0,inside:{number:/[\dn]+/,operator:/[+-]/}},{pattern:/(\(\s*)(?:even|odd)(?=\s*\))/i,lookbehind:!0}],combinator:/>|\+|~|\|\|/,punctuation:/[(),]/}},e.languages.css.atrule.inside["selector-function-argument"].inside=t,e.languages.insertBefore("css","property",{variable:{pattern:/(^|[^-\w\xA0-\uFFFF])--(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*/i,lookbehind:!0}});var r={pattern:/(\b\d+)(?:%|[a-z]+(?![\w-]))/,lookbehind:!0},o={pattern:/(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/,lookbehind:!0};e.languages.insertBefore("css","function",{operator:{pattern:/(\s)[+\-*\/](?=\s)/,lookbehind:!0},hexcode:{pattern:/\B#[\da-f]{3,8}\b/i,alias:"color"},color:[{pattern:/(^|[^\w-])(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)(?![\w-])/i,lookbehind:!0},{pattern:/\b(?:hsl|rgb)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:hsl|rgb)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i,inside:{unit:r,number:o,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:r,number:o})}(o),o.languages.javascript=o.languages.extend("clike",{"class-name":[o.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:constructor|prototype))/,lookbehind:!0}],keyword:[{pattern:/((?:^|\})\s*)catch\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|assert(?=\s*\{)|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally(?=\s*(?:\{|$))|for|from(?=\s*(?:['"]|$))|function|(?:get|set)(?=\s*(?:[#\[$\w\xA0-\uFFFF]|$))|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:{pattern:RegExp(/(^|[^\w$])/.source+"(?:"+/NaN|Infinity/.source+"|"+/0[bB][01]+(?:_[01]+)*n?/.source+"|"+/0[oO][0-7]+(?:_[0-7]+)*n?/.source+"|"+/0[xX][\dA-Fa-f]+(?:_[\dA-Fa-f]+)*n?/.source+"|"+/\d+(?:_\d+)*n/.source+"|"+/(?:\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\.\d+(?:_\d+)*)(?:[Ee][+-]?\d+(?:_\d+)*)?/.source+")"+/(?![\w$])/.source),lookbehind:!0},operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),o.languages.javascript["class-name"][0].pattern=/(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,o.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)\/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/,lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:o.languages.regex},"regex-delimiter":/^\/|\/$/,"regex-flags":/^[a-z]+$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:o.languages.javascript},{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$a-z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,lookbehind:!0,inside:o.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:o.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:o.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),o.languages.insertBefore("javascript","string",{hashbang:{pattern:/^#!.*/,greedy:!0,alias:"comment"},"template-string":{pattern:/`(?:\\[\s\S]|\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}|(?!\$\{)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^}]*\})*\})+\}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\$\{|\}$/,alias:"punctuation"},rest:o.languages.javascript}},string:/[\s\S]+/}},"string-property":{pattern:/((?:^|[,{])[ \t]*)(["'])(?:\\(?:\r\n|[\s\S])|(?!\2)[^\\\r\n])*\2(?=\s*:)/m,lookbehind:!0,greedy:!0,alias:"property"}}),o.languages.insertBefore("javascript","operator",{"literal-property":{pattern:/((?:^|[,{])[ \t]*)(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*:)/m,lookbehind:!0,alias:"property"}}),o.languages.markup&&(o.languages.markup.tag.addInlined("script","javascript"),o.languages.markup.tag.addAttribute(/on(?:abort|blur|change|click|composition(?:end|start|update)|dblclick|error|focus(?:in|out)?|key(?:down|up)|load|mouse(?:down|enter|leave|move|out|over|up)|reset|resize|scroll|select|slotchange|submit|unload|wheel)/.source,"javascript")),o.languages.js=o.languages.javascript,function(e){var t=/#(?!\{).+/,n={pattern:/#\{[^}]+\}/,alias:"variable"};e.languages.coffeescript=e.languages.extend("javascript",{comment:t,string:[{pattern:/'(?:\\[\s\S]|[^\\'])*'/,greedy:!0},{pattern:/"(?:\\[\s\S]|[^\\"])*"/,greedy:!0,inside:{interpolation:n}}],keyword:/\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,"class-member":{pattern:/@(?!\d)\w+/,alias:"variable"}}),e.languages.insertBefore("coffeescript","comment",{"multiline-comment":{pattern:/###[\s\S]+?###/,alias:"comment"},"block-regex":{pattern:/\/{3}[\s\S]*?\/{3}/,alias:"regex",inside:{comment:t,interpolation:n}}}),e.languages.insertBefore("coffeescript","string",{"inline-javascript":{pattern:/`(?:\\[\s\S]|[^\\`])*`/,inside:{delimiter:{pattern:/^`|`$/,alias:"punctuation"},script:{pattern:/[\s\S]+/,alias:"language-javascript",inside:e.languages.javascript}}},"multiline-string":[{pattern:/'''[\s\S]*?'''/,greedy:!0,alias:"string"},{pattern:/"""[\s\S]*?"""/,greedy:!0,alias:"string",inside:{interpolation:n}}]}),e.languages.insertBefore("coffeescript","keyword",{property:/(?!\d)\w+(?=\s*:(?!:))/}),delete e.languages.coffeescript["template-string"],e.languages.coffee=e.languages.coffeescript}(o),function(e){var t=/[*&][^\s[\]{},]+/,n=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,r="(?:"+n.source+"(?:[ \t]+"+t.source+")?|"+t.source+"(?:[ \t]+"+n.source+")?)",o=/(?:[^\s\x00-\x08\x0e-\x1f!"#%&'*,\-:>?@[\]`{|}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]|[?:-])(?:[ \t]*(?:(?![#:])|:))*/.source.replace(//g,(function(){return/[^\s\x00-\x08\x0e-\x1f,[\]{}\x7f-\x84\x86-\x9f\ud800-\udfff\ufffe\uffff]/.source})),a=/"(?:[^"\\\r\n]|\\.)*"|'(?:[^'\\\r\n]|\\.)*'/.source;function i(e,t){t=(t||"").replace(/m/g,"")+"m";var n=/([:\-,[{]\s*(?:\s<>[ \t]+)?)(?:<>)(?=[ \t]*(?:$|,|\]|\}|(?:[\r\n]\s*)?#))/.source.replace(/<>/g,(function(){return r})).replace(/<>/g,(function(){return e}));return RegExp(n,t)}e.languages.yaml={scalar:{pattern:RegExp(/([\-:]\s*(?:\s<>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\S[^\r\n]*(?:\2[^\r\n]+)*)/.source.replace(/<>/g,(function(){return r}))),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp(/((?:^|[:\-,[{\r\n?])[ \t]*(?:<>[ \t]+)?)<>(?=\s*:\s)/.source.replace(/<>/g,(function(){return r})).replace(/<>/g,(function(){return"(?:"+o+"|"+a+")"}))),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:i(/\d{4}-\d\d?-\d\d?(?:[tT]|[ \t]+)\d\d?:\d{2}:\d{2}(?:\.\d*)?(?:[ \t]*(?:Z|[-+]\d\d?(?::\d{2})?))?|\d{4}-\d{2}-\d{2}|\d\d?:\d{2}(?::\d{2}(?:\.\d*)?)?/.source),lookbehind:!0,alias:"number"},boolean:{pattern:i(/false|true/.source,"i"),lookbehind:!0,alias:"important"},null:{pattern:i(/null|~/.source,"i"),lookbehind:!0,alias:"important"},string:{pattern:i(a),lookbehind:!0,greedy:!0},number:{pattern:i(/[+-]?(?:0x[\da-f]+|0o[0-7]+|(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|\.inf|\.nan)/.source,"i"),lookbehind:!0},tag:n,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},e.languages.yml=e.languages.yaml}(o),function(e){var t=/(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?![\r\n]))/.source;function n(e){return e=e.replace(//g,(function(){return t})),RegExp(/((?:^|[^\\])(?:\\{2})*)/.source+"(?:"+e+")")}var r=/(?:\\.|``(?:[^`\r\n]|`(?!`))+``|`[^`\r\n]+`|[^\\|\r\n`])+/.source,o=/\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|(?![\s\S]))/.source.replace(/__/g,(function(){return r})),a=/\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source;e.languages.markdown=e.languages.extend("markup",{}),e.languages.insertBefore("markdown","prolog",{"front-matter-block":{pattern:/(^(?:\s*[\r\n])?)---(?!.)[\s\S]*?[\r\n]---(?!.)/,lookbehind:!0,greedy:!0,inside:{punctuation:/^---|---$/,"front-matter":{pattern:/\S+(?:\s+\S+)*/,alias:["yaml","language-yaml"],inside:e.languages.yaml}}},blockquote:{pattern:/^>(?:[\t ]*>)*/m,alias:"punctuation"},table:{pattern:RegExp("^"+o+a+"(?:"+o+")*","m"),inside:{"table-data-rows":{pattern:RegExp("^("+o+a+")(?:"+o+")*$"),lookbehind:!0,inside:{"table-data":{pattern:RegExp(r),inside:e.languages.markdown},punctuation:/\|/}},"table-line":{pattern:RegExp("^("+o+")"+a+"$"),lookbehind:!0,inside:{punctuation:/\||:?-{3,}:?/}},"table-header-row":{pattern:RegExp("^"+o+"$"),inside:{"table-header":{pattern:RegExp(r),alias:"important",inside:e.languages.markdown},punctuation:/\|/}}}},code:[{pattern:/((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,lookbehind:!0,alias:"keyword"},{pattern:/^```[\s\S]*?^```$/m,greedy:!0,inside:{"code-block":{pattern:/^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,lookbehind:!0},"code-language":{pattern:/^(```).+/,lookbehind:!0},punctuation:/```/}}],title:[{pattern:/\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,alias:"important",inside:{punctuation:/==+$|--+$/}},{pattern:/(^\s*)#.+/m,lookbehind:!0,alias:"important",inside:{punctuation:/^#+|#+$/}}],hr:{pattern:/(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,lookbehind:!0,alias:"punctuation"},list:{pattern:/(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,lookbehind:!0,alias:"punctuation"},"url-reference":{pattern:/!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,inside:{variable:{pattern:/^(!?\[)[^\]]+/,lookbehind:!0},string:/(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,punctuation:/^[\[\]!:]|[<>]/},alias:"url"},bold:{pattern:n(/\b__(?:(?!_)|_(?:(?!_))+_)+__\b|\*\*(?:(?!\*)|\*(?:(?!\*))+\*)+\*\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^..)[\s\S]+(?=..$)/,lookbehind:!0,inside:{}},punctuation:/\*\*|__/}},italic:{pattern:n(/\b_(?:(?!_)|__(?:(?!_))+__)+_\b|\*(?:(?!\*)|\*\*(?:(?!\*))+\*\*)+\*/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^.)[\s\S]+(?=.$)/,lookbehind:!0,inside:{}},punctuation:/[*_]/}},strike:{pattern:n(/(~~?)(?:(?!~))+\2/.source),lookbehind:!0,greedy:!0,inside:{content:{pattern:/(^~~?)[\s\S]+(?=\1$)/,lookbehind:!0,inside:{}},punctuation:/~~?/}},"code-snippet":{pattern:/(^|[^\\`])(?:``[^`\r\n]+(?:`[^`\r\n]+)*``(?!`)|`[^`\r\n]+`(?!`))/,lookbehind:!0,greedy:!0,alias:["code","keyword"]},url:{pattern:n(/!?\[(?:(?!\]))+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)|[ \t]?\[(?:(?!\]))+\])/.source),lookbehind:!0,greedy:!0,inside:{operator:/^!/,content:{pattern:/(^\[)[^\]]+(?=\])/,lookbehind:!0,inside:{}},variable:{pattern:/(^\][ \t]?\[)[^\]]+(?=\]$)/,lookbehind:!0},url:{pattern:/(^\]\()[^\s)]+/,lookbehind:!0},string:{pattern:/(^[ \t]+)"(?:\\.|[^"\\])*"(?=\)$)/,lookbehind:!0}}}}),["url","bold","italic","strike"].forEach((function(t){["url","bold","italic","strike","code-snippet"].forEach((function(n){t!==n&&(e.languages.markdown[t].inside.content.inside[n]=e.languages.markdown[n])}))})),e.hooks.add("after-tokenize",(function(e){"markdown"!==e.language&&"md"!==e.language||function e(t){if(t&&"string"!=typeof t)for(var n=0,r=t.length;n",quot:'"'},s=String.fromCodePoint||String.fromCharCode;e.languages.md=e.languages.markdown}(o),o.languages.graphql={comment:/#.*/,description:{pattern:/(?:"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*")(?=\s*[a-z_])/i,greedy:!0,alias:"string",inside:{"language-markdown":{pattern:/(^"(?:"")?)(?!\1)[\s\S]+(?=\1$)/,lookbehind:!0,inside:o.languages.markdown}}},string:{pattern:/"""(?:[^"]|(?!""")")*"""|"(?:\\.|[^\\"\r\n])*"/,greedy:!0},number:/(?:\B-|\b)\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,boolean:/\b(?:false|true)\b/,variable:/\$[a-z_]\w*/i,directive:{pattern:/@[a-z_]\w*/i,alias:"function"},"attr-name":{pattern:/\b[a-z_]\w*(?=\s*(?:\((?:[^()"]|"(?:\\.|[^\\"\r\n])*")*\))?:)/i,greedy:!0},"atom-input":{pattern:/\b[A-Z]\w*Input\b/,alias:"class-name"},scalar:/\b(?:Boolean|Float|ID|Int|String)\b/,constant:/\b[A-Z][A-Z_\d]*\b/,"class-name":{pattern:/(\b(?:enum|implements|interface|on|scalar|type|union)\s+|&\s*|:\s*|\[)[A-Z_]\w*/,lookbehind:!0},fragment:{pattern:/(\bfragment\s+|\.{3}\s*(?!on\b))[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-mutation":{pattern:/(\bmutation\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},"definition-query":{pattern:/(\bquery\s+)[a-zA-Z_]\w*/,lookbehind:!0,alias:"function"},keyword:/\b(?:directive|enum|extend|fragment|implements|input|interface|mutation|on|query|repeatable|scalar|schema|subscription|type|union)\b/,operator:/[!=|&]|\.{3}/,"property-query":/\w+(?=\s*\()/,object:/\w+(?=\s*\{)/,punctuation:/[!(){}\[\]:=,]/,property:/\w+/},o.hooks.add("after-tokenize",(function(e){if("graphql"===e.language)for(var t=e.tokens.filter((function(e){return"string"!=typeof e&&"comment"!==e.type&&"scalar"!==e.type})),n=0;n0)){var l=p(/^\{$/,/^\}$/);if(-1===l)continue;for(var s=n;s=0&&f(c,"variable-input")}}}}function u(e){return t[n+e]}function d(e,t){t=t||0;for(var n=0;n?|<|>)?|>[>=]?|\b(?:AND|BETWEEN|DIV|ILIKE|IN|IS|LIKE|NOT|OR|REGEXP|RLIKE|SOUNDS LIKE|XOR)\b/i,punctuation:/[;[\]()`,.]/},function(e){var t=e.languages.javascript["template-string"],n=t.pattern.source,r=t.inside.interpolation,o=r.inside["interpolation-punctuation"],a=r.pattern.source;function i(t,r){if(e.languages[t])return{pattern:RegExp("((?:"+r+")\\s*)"+n),lookbehind:!0,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},"embedded-code":{pattern:/[\s\S]+/,alias:t}}}}function l(e,t){return"___"+t.toUpperCase()+"_"+e+"___"}function s(t,n,r){var o={code:t,grammar:n,language:r};return e.hooks.run("before-tokenize",o),o.tokens=e.tokenize(o.code,o.grammar),e.hooks.run("after-tokenize",o),o.tokens}function c(t){var n={};n["interpolation-punctuation"]=o;var a=e.tokenize(t,n);if(3===a.length){var i=[1,1];i.push.apply(i,s(a[1],e.languages.javascript,"javascript")),a.splice.apply(a,i)}return new e.Token("interpolation",a,r.alias,t)}function u(t,n,r){var o=e.tokenize(t,{interpolation:{pattern:RegExp(a),lookbehind:!0}}),i=0,u={},d=s(o.map((function(e){if("string"==typeof e)return e;for(var n,o=e.content;-1!==t.indexOf(n=l(i++,r)););return u[n]=o,n})).join(""),n,r),p=Object.keys(u);return i=0,function e(t){for(var n=0;n=p.length)return;var r=t[n];if("string"==typeof r||"string"==typeof r.content){var o=p[i],a="string"==typeof r?r:r.content,l=a.indexOf(o);if(-1!==l){++i;var s=a.substring(0,l),d=c(u[o]),f=a.substring(l+o.length),m=[];if(s&&m.push(s),m.push(d),f){var h=[f];e(h),m.push.apply(m,h)}"string"==typeof r?(t.splice.apply(t,[n,1].concat(m)),n+=m.length-1):r.content=m}}else{var g=r.content;Array.isArray(g)?e(g):e([g])}}}(d),new e.Token(r,d,"language-"+r,t)}e.languages.javascript["template-string"]=[i("css",/\b(?:styled(?:\([^)]*\))?(?:\s*\.\s*\w+(?:\([^)]*\))*)*|css(?:\s*\.\s*(?:global|resolve))?|createGlobalStyle|keyframes)/.source),i("html",/\bhtml|\.\s*(?:inner|outer)HTML\s*\+?=/.source),i("svg",/\bsvg/.source),i("markdown",/\b(?:markdown|md)/.source),i("graphql",/\b(?:gql|graphql(?:\s*\.\s*experimental)?)/.source),i("sql",/\bsql/.source),t].filter(Boolean);var d={javascript:!0,js:!0,typescript:!0,ts:!0,jsx:!0,tsx:!0};function p(e){return"string"==typeof e?e:Array.isArray(e)?e.map(p).join(""):p(e.content)}e.hooks.add("after-tokenize",(function(t){t.language in d&&function t(n){for(var r=0,o=n.length;r]|<(?:[^<>]|<[^<>]*>)*>)*>)?/,lookbehind:!0,greedy:!0,inside:null},builtin:/\b(?:Array|Function|Promise|any|boolean|console|never|number|string|symbol|unknown)\b/}),e.languages.typescript.keyword.push(/\b(?:abstract|declare|is|keyof|readonly|require)\b/,/\b(?:asserts|infer|interface|module|namespace|type)\b(?=\s*(?:[{_$a-zA-Z\xA0-\uFFFF]|$))/,/\btype\b(?=\s*(?:[\{*]|$))/),delete e.languages.typescript.parameter,delete e.languages.typescript["literal-property"];var t=e.languages.extend("typescript",{});delete t["class-name"],e.languages.typescript["class-name"].inside=t,e.languages.insertBefore("typescript","function",{decorator:{pattern:/@[$\w\xA0-\uFFFF]+/,inside:{at:{pattern:/^@/,alias:"operator"},function:/^[\s\S]+/}},"generic-function":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*<(?:[^<>]|<(?:[^<>]|<[^<>]*>)*>)*>(?=\s*\()/,greedy:!0,inside:{function:/^#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/,generic:{pattern:/<[\s\S]+/,alias:"class-name",inside:t}}}}),e.languages.ts=e.languages.typescript}(o),function(e){function t(e,t){return RegExp(e.replace(//g,(function(){return/(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/.source})),t)}e.languages.insertBefore("javascript","function-variable",{"method-variable":{pattern:RegExp("(\\.\\s*)"+e.languages.javascript["function-variable"].pattern.source),lookbehind:!0,alias:["function-variable","method","function","property-access"]}}),e.languages.insertBefore("javascript","function",{method:{pattern:RegExp("(\\.\\s*)"+e.languages.javascript.function.source),lookbehind:!0,alias:["function","property-access"]}}),e.languages.insertBefore("javascript","constant",{"known-class-name":[{pattern:/\b(?:(?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)?Array|ArrayBuffer|BigInt|Boolean|DataView|Date|Error|Function|Intl|JSON|(?:Weak)?(?:Map|Set)|Math|Number|Object|Promise|Proxy|Reflect|RegExp|String|Symbol|WebAssembly)\b/,alias:"class-name"},{pattern:/\b(?:[A-Z]\w*)Error\b/,alias:"class-name"}]}),e.languages.insertBefore("javascript","keyword",{imports:{pattern:t(/(\bimport\b\s*)(?:(?:\s*,\s*(?:\*\s*as\s+|\{[^{}]*\}))?|\*\s*as\s+|\{[^{}]*\})(?=\s*\bfrom\b)/.source),lookbehind:!0,inside:e.languages.javascript},exports:{pattern:t(/(\bexport\b\s*)(?:\*(?:\s*as\s+)?(?=\s*\bfrom\b)|\{[^{}]*\})/.source),lookbehind:!0,inside:e.languages.javascript}}),e.languages.javascript.keyword.unshift({pattern:/\b(?:as|default|export|from|import)\b/,alias:"module"},{pattern:/\b(?:await|break|catch|continue|do|else|finally|for|if|return|switch|throw|try|while|yield)\b/,alias:"control-flow"},{pattern:/\bnull\b/,alias:["null","nil"]},{pattern:/\bundefined\b/,alias:"nil"}),e.languages.insertBefore("javascript","operator",{spread:{pattern:/\.{3}/,alias:"operator"},arrow:{pattern:/=>/,alias:"operator"}}),e.languages.insertBefore("javascript","punctuation",{"property-access":{pattern:t(/(\.\s*)#?/.source),lookbehind:!0},"maybe-class-name":{pattern:/(^|[^$\w\xA0-\uFFFF])[A-Z][$\w\xA0-\uFFFF]+/,lookbehind:!0},dom:{pattern:/\b(?:document|(?:local|session)Storage|location|navigator|performance|window)\b/,alias:"variable"},console:{pattern:/\bconsole(?=\s*\.)/,alias:"class-name"}});for(var n=["function","function-variable","method","method-variable","property-access"],r=0;r*\.{3}(?:[^{}]|)*\})/.source;function a(e,t){return e=e.replace(//g,(function(){return n})).replace(//g,(function(){return r})).replace(//g,(function(){return o})),RegExp(e,t)}o=a(o).source,e.languages.jsx=e.languages.extend("markup",t),e.languages.jsx.tag.pattern=a(/<\/?(?:[\w.:-]+(?:+(?:[\w.:$-]+(?:=(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s{'"/>=]+|))?|))**\/?)?>/.source),e.languages.jsx.tag.inside.tag.pattern=/^<\/?[^\s>\/]*/,e.languages.jsx.tag.inside["attr-value"].pattern=/=(?!\{)(?:"(?:\\[\s\S]|[^\\"])*"|'(?:\\[\s\S]|[^\\'])*'|[^\s'">]+)/,e.languages.jsx.tag.inside.tag.inside["class-name"]=/^[A-Z]\w*(?:\.[A-Z]\w*)*$/,e.languages.jsx.tag.inside.comment=t.comment,e.languages.insertBefore("inside","attr-name",{spread:{pattern:a(//.source),inside:e.languages.jsx}},e.languages.jsx.tag),e.languages.insertBefore("inside","special-attr",{script:{pattern:a(/=/.source),alias:"language-javascript",inside:{"script-punctuation":{pattern:/^=(?=\{)/,alias:"punctuation"},rest:e.languages.jsx}}},e.languages.jsx.tag);var i=function(e){return e?"string"==typeof e?e:"string"==typeof e.content?e.content:e.content.map(i).join(""):""},l=function(t){for(var n=[],r=0;r0&&n[n.length-1].tagName===i(o.content[0].content[1])&&n.pop():"/>"===o.content[o.content.length-1].content||n.push({tagName:i(o.content[0].content[1]),openedBraces:0}):n.length>0&&"punctuation"===o.type&&"{"===o.content?n[n.length-1].openedBraces++:n.length>0&&n[n.length-1].openedBraces>0&&"punctuation"===o.type&&"}"===o.content?n[n.length-1].openedBraces--:a=!0),(a||"string"==typeof o)&&n.length>0&&0===n[n.length-1].openedBraces){var s=i(o);r0&&("string"==typeof t[r-1]||"plain-text"===t[r-1].type)&&(s=i(t[r-1])+s,t.splice(r-1,1),r--),t[r]=new e.Token("plain-text",s,null,s)}o.content&&"string"!=typeof o.content&&l(o.content)}};e.hooks.add("after-tokenize",(function(e){"jsx"!==e.language&&"tsx"!==e.language||l(e.tokens)}))}(o),function(e){e.languages.diff={coord:[/^(?:\*{3}|-{3}|\+{3}).*$/m,/^@@.*@@$/m,/^\d.*$/m]};var t={"deleted-sign":"-","deleted-arrow":"<","inserted-sign":"+","inserted-arrow":">",unchanged:" ",diff:"!"};Object.keys(t).forEach((function(n){var r=t[n],o=[];/^\w+$/.test(n)||o.push(/\w+/.exec(n)[0]),"diff"===n&&o.push("bold"),e.languages.diff[n]={pattern:RegExp("^(?:["+r+"].*(?:\r\n?|\n|(?![\\s\\S])))+","m"),alias:o,inside:{line:{pattern:/(.)(?=[\s\S]).*(?:\r\n?|\n)?/,lookbehind:!0},prefix:{pattern:/[\s\S]/,alias:/\w+/.exec(n)[0]}}}})),Object.defineProperty(e.languages.diff,"PREFIXES",{value:t})}(o),o.languages.git={comment:/^#.*/m,deleted:/^[-\u2013].*/m,inserted:/^\+.*/m,string:/("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,command:{pattern:/^.*\$ git .*$/m,inside:{parameter:/\s--?\w+/}},coord:/^@@.*@@$/m,"commit-sha1":/^commit \w{40}$/m},o.languages.go=o.languages.extend("clike",{string:{pattern:/(^|[^\\])"(?:\\.|[^"\\\r\n])*"|`[^`]*`/,lookbehind:!0,greedy:!0},keyword:/\b(?:break|case|chan|const|continue|default|defer|else|fallthrough|for|func|go(?:to)?|if|import|interface|map|package|range|return|select|struct|switch|type|var)\b/,boolean:/\b(?:_|false|iota|nil|true)\b/,number:[/\b0(?:b[01_]+|o[0-7_]+)i?\b/i,/\b0x(?:[a-f\d_]+(?:\.[a-f\d_]*)?|\.[a-f\d_]+)(?:p[+-]?\d+(?:_\d+)*)?i?(?!\w)/i,/(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?[\d_]+)?i?(?!\w)/i],operator:/[*\/%^!=]=?|\+[=+]?|-[=-]?|\|[=|]?|&(?:=|&|\^=?)?|>(?:>=?|=)?|<(?:<=?|=|-)?|:=|\.\.\./,builtin:/\b(?:append|bool|byte|cap|close|complex|complex(?:64|128)|copy|delete|error|float(?:32|64)|u?int(?:8|16|32|64)?|imag|len|make|new|panic|print(?:ln)?|real|recover|rune|string|uintptr)\b/}),o.languages.insertBefore("go","string",{char:{pattern:/'(?:\\.|[^'\\\r\n]){0,10}'/,greedy:!0}}),delete o.languages.go["class-name"],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,l=i.length;-1!==n.code.indexOf(o=t(r,l));)++l;return i[l]=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(l){for(var s=0;s=a.length);s++){var c=l[s];if("string"==typeof c||c.content&&"string"==typeof c.content){var u=a[o],d=n.tokenStack[u],p="string"==typeof c?c:c.content,f=t(r,u),m=p.indexOf(f);if(m>-1){++o;var h=p.substring(0,m),g=new e.Token(r,e.tokenize(d,n.grammar),"language-"+r,d),b=p.substring(m+f.length),v=[];h&&v.push.apply(v,i([h])),v.push(g),b&&v.push.apply(v,i([b])),"string"==typeof c?l.splice.apply(l,[s,1].concat(v)):c.content=v}}else c.content&&i(c.content)}return l}(n.tokens)}}}})}(o),function(e){e.languages.handlebars={comment:/\{\{![\s\S]*?\}\}/,delimiter:{pattern:/^\{\{\{?|\}\}\}?$/,alias:"punctuation"},string:/(["'])(?:\\.|(?!\1)[^\\\r\n])*\1/,number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee][+-]?\d+)?/,boolean:/\b(?:false|true)\b/,block:{pattern:/^(\s*(?:~\s*)?)[#\/]\S+?(?=\s*(?:~\s*)?$|\s)/,lookbehind:!0,alias:"keyword"},brackets:{pattern:/\[[^\]]+\]/,inside:{punctuation:/\[|\]/,variable:/[\s\S]+/}},punctuation:/[!"#%&':()*+,.\/;<=>@\[\\\]^`{|}~]/,variable:/[^!"#%&'()*+,\/;<=>@\[\\\]^`{|}~\s]+/},e.hooks.add("before-tokenize",(function(t){e.languages["markup-templating"].buildPlaceholders(t,"handlebars",/\{\{\{[\s\S]+?\}\}\}|\{\{[\s\S]+?\}\}/g)})),e.hooks.add("after-tokenize",(function(t){e.languages["markup-templating"].tokenizePlaceholders(t,"handlebars")})),e.languages.hbs=e.languages.handlebars}(o),o.languages.json={property:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,lookbehind:!0,greedy:!0},string:{pattern:/(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,lookbehind:!0,greedy:!0},comment:{pattern:/\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,greedy:!0},number:/-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,punctuation:/[{}[\],]/,operator:/:/,boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"}},o.languages.webmanifest=o.languages.json,o.languages.less=o.languages.extend("css",{comment:[/\/\*[\s\S]*?\*\//,{pattern:/(^|[^\\])\/\/.*/,lookbehind:!0}],atrule:{pattern:/@[\w-](?:\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};\s]|\s+(?!\s))*?(?=\s*\{)/,inside:{punctuation:/[:()]/}},selector:{pattern:/(?:@\{[\w-]+\}|[^{};\s@])(?:@\{[\w-]+\}|\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};@\s]|\s+(?!\s))*?(?=\s*\{)/,inside:{variable:/@+[\w-]+/}},property:/(?:@\{[\w-]+\}|[\w-])+(?:\+_?)?(?=\s*:)/,operator:/[+\-*\/]/}),o.languages.insertBefore("less","property",{variable:[{pattern:/@[\w-]+\s*:/,inside:{punctuation:/:/}},/@@?[\w-]+/],"mixin-usage":{pattern:/([{;]\s*)[.#](?!\d)[\w-].*?(?=[(;])/,lookbehind:!0,alias:"function"}}),o.languages.makefile={comment:{pattern:/(^|[^\\])#(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/,lookbehind:!0},string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"builtin-target":{pattern:/\.[A-Z][^:#=\s]+(?=\s*:(?!=))/,alias:"builtin"},target:{pattern:/^(?:[^:=\s]|[ \t]+(?![\s:]))+(?=\s*:(?!=))/m,alias:"symbol",inside:{variable:/\$+(?:(?!\$)[^(){}:#=\s]+|(?=[({]))/}},variable:/\$+(?:(?!\$)[^(){}:#=\s]+|\([@*%<^+?][DF]\)|(?=[({]))/,keyword:/-include\b|\b(?:define|else|endef|endif|export|ifn?def|ifn?eq|include|override|private|sinclude|undefine|unexport|vpath)\b/,function:{pattern:/(\()(?:abspath|addsuffix|and|basename|call|dir|error|eval|file|filter(?:-out)?|findstring|firstword|flavor|foreach|guile|if|info|join|lastword|load|notdir|or|origin|patsubst|realpath|shell|sort|strip|subst|suffix|value|warning|wildcard|word(?:list|s)?)(?=[ \t])/,lookbehind:!0},operator:/(?:::|[?:+!])?=|[|@]/,punctuation:/[:;(){}]/},o.languages.objectivec=o.languages.extend("c",{string:{pattern:/@?"(?:\\(?:\r\n|[\s\S])|[^"\\\r\n])*"/,greedy:!0},keyword:/\b(?:asm|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|in|inline|int|long|register|return|self|short|signed|sizeof|static|struct|super|switch|typedef|typeof|union|unsigned|void|volatile|while)\b|(?:@interface|@end|@implementation|@protocol|@class|@public|@protected|@private|@property|@try|@catch|@finally|@throw|@synthesize|@dynamic|@selector)\b/,operator:/-[->]?|\+\+?|!=?|<>?=?|==?|&&?|\|\|?|[~^%?*\/@]/}),delete o.languages.objectivec["class-name"],o.languages.objc=o.languages.objectivec,o.languages.ocaml={comment:{pattern:/\(\*[\s\S]*?\*\)/,greedy:!0},char:{pattern:/'(?:[^\\\r\n']|\\(?:.|[ox]?[0-9a-f]{1,3}))'/i,greedy:!0},string:[{pattern:/"(?:\\(?:[\s\S]|\r\n)|[^\\\r\n"])*"/,greedy:!0},{pattern:/\{([a-z_]*)\|[\s\S]*?\|\1\}/,greedy:!0}],number:[/\b(?:0b[01][01_]*|0o[0-7][0-7_]*)\b/i,/\b0x[a-f0-9][a-f0-9_]*(?:\.[a-f0-9_]*)?(?:p[+-]?\d[\d_]*)?(?!\w)/i,/\b\d[\d_]*(?:\.[\d_]*)?(?:e[+-]?\d[\d_]*)?(?!\w)/i],directive:{pattern:/\B#\w+/,alias:"property"},label:{pattern:/\B~\w+/,alias:"property"},"type-variable":{pattern:/\B'\w+/,alias:"function"},variant:{pattern:/`\w+/,alias:"symbol"},keyword:/\b(?:as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|match|method|module|mutable|new|nonrec|object|of|open|private|rec|sig|struct|then|to|try|type|val|value|virtual|when|where|while|with)\b/,boolean:/\b(?:false|true)\b/,"operator-like-punctuation":{pattern:/\[[<>|]|[>|]\]|\{<|>\}/,alias:"punctuation"},operator:/\.[.~]|:[=>]|[=<>@^|&+\-*\/$%!?~][!$%&*+\-.\/:<=>?@^|~]*|\b(?:and|asr|land|lor|lsl|lsr|lxor|mod|or)\b/,punctuation:/;;|::|[(){}\[\].,:;#]|\b_\b/},o.languages.python={comment:{pattern:/(^|[^\\])#.*/,lookbehind:!0,greedy:!0},"string-interpolation":{pattern:/(?:f|fr|rf)(?:("""|''')[\s\S]*?\1|("|')(?:\\.|(?!\2)[^\\\r\n])*\2)/i,greedy:!0,inside:{interpolation:{pattern:/((?:^|[^{])(?:\{\{)*)\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}]|\{(?!\{)(?:[^{}])+\})+\})+\}/,lookbehind:!0,inside:{"format-spec":{pattern:/(:)[^:(){}]+(?=\}$)/,lookbehind:!0},"conversion-option":{pattern:/![sra](?=[:}]$)/,alias:"punctuation"},rest:null}},string:/[\s\S]+/}},"triple-quoted-string":{pattern:/(?:[rub]|br|rb)?("""|''')[\s\S]*?\1/i,greedy:!0,alias:"string"},string:{pattern:/(?:[rub]|br|rb)?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/i,greedy:!0},function:{pattern:/((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/g,lookbehind:!0},"class-name":{pattern:/(\bclass\s+)\w+/i,lookbehind:!0},decorator:{pattern:/(^[\t ]*)@\w+(?:\.\w+)*/m,lookbehind:!0,alias:["annotation","punctuation"],inside:{punctuation:/\./}},keyword:/\b(?:_(?=\s*:)|and|as|assert|async|await|break|case|class|continue|def|del|elif|else|except|exec|finally|for|from|global|if|import|in|is|lambda|match|nonlocal|not|or|pass|print|raise|return|try|while|with|yield)\b/,builtin:/\b(?:__import__|abs|all|any|apply|ascii|basestring|bin|bool|buffer|bytearray|bytes|callable|chr|classmethod|cmp|coerce|compile|complex|delattr|dict|dir|divmod|enumerate|eval|execfile|file|filter|float|format|frozenset|getattr|globals|hasattr|hash|help|hex|id|input|int|intern|isinstance|issubclass|iter|len|list|locals|long|map|max|memoryview|min|next|object|oct|open|ord|pow|property|range|raw_input|reduce|reload|repr|reversed|round|set|setattr|slice|sorted|staticmethod|str|sum|super|tuple|type|unichr|unicode|vars|xrange|zip)\b/,boolean:/\b(?:False|None|True)\b/,number:/\b0(?:b(?:_?[01])+|o(?:_?[0-7])+|x(?:_?[a-f0-9])+)\b|(?:\b\d+(?:_\d+)*(?:\.(?:\d+(?:_\d+)*)?)?|\B\.\d+(?:_\d+)*)(?:e[+-]?\d+(?:_\d+)*)?j?(?!\w)/i,operator:/[-+%=]=?|!=|:=|\*\*?=?|\/\/?=?|<[<=>]?|>[=>]?|[&|^~]/,punctuation:/[{}[\];(),.:]/},o.languages.python["string-interpolation"].inside.interpolation.inside.rest=o.languages.python,o.languages.py=o.languages.python,o.languages.reason=o.languages.extend("clike",{string:{pattern:/"(?:\\(?:\r\n|[\s\S])|[^\\\r\n"])*"/,greedy:!0},"class-name":/\b[A-Z]\w*/,keyword:/\b(?:and|as|assert|begin|class|constraint|do|done|downto|else|end|exception|external|for|fun|function|functor|if|in|include|inherit|initializer|lazy|let|method|module|mutable|new|nonrec|object|of|open|or|private|rec|sig|struct|switch|then|to|try|type|val|virtual|when|while|with)\b/,operator:/\.{3}|:[:=]|\|>|->|=(?:==?|>)?|<=?|>=?|[|^?'#!~`]|[+\-*\/]\.?|\b(?:asr|land|lor|lsl|lsr|lxor|mod)\b/}),o.languages.insertBefore("reason","class-name",{char:{pattern:/'(?:\\x[\da-f]{2}|\\o[0-3][0-7][0-7]|\\\d{3}|\\.|[^'\\\r\n])'/,greedy:!0},constructor:/\b[A-Z]\w*\b(?!\s*\.)/,label:{pattern:/\b[a-z]\w*(?=::)/,alias:"symbol"}}),delete o.languages.reason.function,function(e){e.languages.sass=e.languages.extend("css",{comment:{pattern:/^([ \t]*)\/[\/*].*(?:(?:\r?\n|\r)\1[ \t].+)*/m,lookbehind:!0,greedy:!0}}),e.languages.insertBefore("sass","atrule",{"atrule-line":{pattern:/^(?:[ \t]*)[@+=].+/m,greedy:!0,inside:{atrule:/(?:@[\w-]+|[+=])/}}}),delete e.languages.sass.atrule;var t=/\$[-\w]+|#\{\$[-\w]+\}/,n=[/[+*\/%]|[=!]=|<=?|>=?|\b(?:and|not|or)\b/,{pattern:/(\s)-(?=\s)/,lookbehind:!0}];e.languages.insertBefore("sass","property",{"variable-line":{pattern:/^[ \t]*\$.+/m,greedy:!0,inside:{punctuation:/:/,variable:t,operator:n}},"property-line":{pattern:/^[ \t]*(?:[^:\s]+ *:.*|:[^:\s].*)/m,greedy:!0,inside:{property:[/[^:\s]+(?=\s*:)/,{pattern:/(:)[^:\s]+/,lookbehind:!0}],punctuation:/:/,variable:t,operator:n,important:e.languages.sass.important}}}),delete e.languages.sass.property,delete e.languages.sass.important,e.languages.insertBefore("sass","punctuation",{selector:{pattern:/^([ \t]*)\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*(?:,(?:\r?\n|\r)\1[ \t]+\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*)*/m,lookbehind:!0,greedy:!0}})}(o),o.languages.scss=o.languages.extend("css",{comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},atrule:{pattern:/@[\w-](?:\([^()]+\)|[^()\s]|\s+(?!\s))*?(?=\s+[{;])/,inside:{rule:/@[\w-]+/}},url:/(?:[-a-z]+-)?url(?=\()/i,selector:{pattern:/(?=\S)[^@;{}()]?(?:[^@;{}()\s]|\s+(?!\s)|#\{\$[-\w]+\})+(?=\s*\{(?:\}|\s|[^}][^:{}]*[:{][^}]))/,inside:{parent:{pattern:/&/,alias:"important"},placeholder:/%[-\w]+/,variable:/\$[-\w]+|#\{\$[-\w]+\}/}},property:{pattern:/(?:[-\w]|\$[-\w]|#\{\$[-\w]+\})+(?=\s*:)/,inside:{variable:/\$[-\w]+|#\{\$[-\w]+\}/}}}),o.languages.insertBefore("scss","atrule",{keyword:[/@(?:content|debug|each|else(?: if)?|extend|for|forward|function|if|import|include|mixin|return|use|warn|while)\b/i,{pattern:/( )(?:from|through)(?= )/,lookbehind:!0}]}),o.languages.insertBefore("scss","important",{variable:/\$[-\w]+|#\{\$[-\w]+\}/}),o.languages.insertBefore("scss","function",{"module-modifier":{pattern:/\b(?:as|hide|show|with)\b/i,alias:"keyword"},placeholder:{pattern:/%[-\w]+/,alias:"selector"},statement:{pattern:/\B!(?:default|optional)\b/i,alias:"keyword"},boolean:/\b(?:false|true)\b/,null:{pattern:/\bnull\b/,alias:"keyword"},operator:{pattern:/(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|not|or)(?=\s)/,lookbehind:!0}}),o.languages.scss.atrule.inside.rest=o.languages.scss,function(e){var t={pattern:/(\b\d+)(?:%|[a-z]+)/,lookbehind:!0},n={pattern:/(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)/,lookbehind:!0},r={comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0},url:{pattern:/\burl\((["']?).*?\1\)/i,greedy:!0},string:{pattern:/("|')(?:(?!\1)[^\\\r\n]|\\(?:\r\n|[\s\S]))*\1/,greedy:!0},interpolation:null,func:null,important:/\B!(?:important|optional)\b/i,keyword:{pattern:/(^|\s+)(?:(?:else|for|if|return|unless)(?=\s|$)|@[\w-]+)/,lookbehind:!0},hexcode:/#[\da-f]{3,6}/i,color:[/\b(?:AliceBlue|AntiqueWhite|Aqua|Aquamarine|Azure|Beige|Bisque|Black|BlanchedAlmond|Blue|BlueViolet|Brown|BurlyWood|CadetBlue|Chartreuse|Chocolate|Coral|CornflowerBlue|Cornsilk|Crimson|Cyan|DarkBlue|DarkCyan|DarkGoldenRod|DarkGr[ae]y|DarkGreen|DarkKhaki|DarkMagenta|DarkOliveGreen|DarkOrange|DarkOrchid|DarkRed|DarkSalmon|DarkSeaGreen|DarkSlateBlue|DarkSlateGr[ae]y|DarkTurquoise|DarkViolet|DeepPink|DeepSkyBlue|DimGr[ae]y|DodgerBlue|FireBrick|FloralWhite|ForestGreen|Fuchsia|Gainsboro|GhostWhite|Gold|GoldenRod|Gr[ae]y|Green|GreenYellow|HoneyDew|HotPink|IndianRed|Indigo|Ivory|Khaki|Lavender|LavenderBlush|LawnGreen|LemonChiffon|LightBlue|LightCoral|LightCyan|LightGoldenRodYellow|LightGr[ae]y|LightGreen|LightPink|LightSalmon|LightSeaGreen|LightSkyBlue|LightSlateGr[ae]y|LightSteelBlue|LightYellow|Lime|LimeGreen|Linen|Magenta|Maroon|MediumAquaMarine|MediumBlue|MediumOrchid|MediumPurple|MediumSeaGreen|MediumSlateBlue|MediumSpringGreen|MediumTurquoise|MediumVioletRed|MidnightBlue|MintCream|MistyRose|Moccasin|NavajoWhite|Navy|OldLace|Olive|OliveDrab|Orange|OrangeRed|Orchid|PaleGoldenRod|PaleGreen|PaleTurquoise|PaleVioletRed|PapayaWhip|PeachPuff|Peru|Pink|Plum|PowderBlue|Purple|Red|RosyBrown|RoyalBlue|SaddleBrown|Salmon|SandyBrown|SeaGreen|SeaShell|Sienna|Silver|SkyBlue|SlateBlue|SlateGr[ae]y|Snow|SpringGreen|SteelBlue|Tan|Teal|Thistle|Tomato|Transparent|Turquoise|Violet|Wheat|White|WhiteSmoke|Yellow|YellowGreen)\b/i,{pattern:/\b(?:hsl|rgb)\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*\)\B|\b(?:hsl|rgb)a\(\s*\d{1,3}\s*,\s*\d{1,3}%?\s*,\s*\d{1,3}%?\s*,\s*(?:0|0?\.\d+|1)\s*\)\B/i,inside:{unit:t,number:n,function:/[\w-]+(?=\()/,punctuation:/[(),]/}}],entity:/\\[\da-f]{1,8}/i,unit:t,boolean:/\b(?:false|true)\b/,operator:[/~|[+!\/%<>?=]=?|[-:]=|\*[*=]?|\.{2,3}|&&|\|\||\B-\B|\b(?:and|in|is(?: a| defined| not|nt)?|not|or)\b/],number:n,punctuation:/[{}()\[\];:,]/};r.interpolation={pattern:/\{[^\r\n}:]+\}/,alias:"variable",inside:{delimiter:{pattern:/^\{|\}$/,alias:"punctuation"},rest:r}},r.func={pattern:/[\w-]+\([^)]*\).*/,inside:{function:/^[^(]+/,rest:r}},e.languages.stylus={"atrule-declaration":{pattern:/(^[ \t]*)@.+/m,lookbehind:!0,inside:{atrule:/^@[\w-]+/,rest:r}},"variable-declaration":{pattern:/(^[ \t]*)[\w$-]+\s*.?=[ \t]*(?:\{[^{}]*\}|\S.*|$)/m,lookbehind:!0,inside:{variable:/^\S+/,rest:r}},statement:{pattern:/(^[ \t]*)(?:else|for|if|return|unless)[ \t].+/m,lookbehind:!0,inside:{keyword:/^\S+/,rest:r}},"property-declaration":{pattern:/((?:^|\{)([ \t]*))(?:[\w-]|\{[^}\r\n]+\})+(?:\s*:\s*|[ \t]+)(?!\s)[^{\r\n]*(?:;|[^{\r\n,]$(?!(?:\r?\n|\r)(?:\{|\2[ \t])))/m,lookbehind:!0,inside:{property:{pattern:/^[^\s:]+/,inside:{interpolation:r.interpolation}},rest:r}},selector:{pattern:/(^[ \t]*)(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\)|(?![\w-]))|\{[^}\r\n]+\})+)(?:(?:\r?\n|\r)(?:\1(?:(?=\S)(?:[^{}\r\n:()]|::?[\w-]+(?:\([^)\r\n]*\)|(?![\w-]))|\{[^}\r\n]+\})+)))*(?:,$|\{|(?=(?:\r?\n|\r)(?:\{|\1[ \t])))/m,lookbehind:!0,inside:{interpolation:r.interpolation,comment:r.comment,punctuation:/[{},]/}},func:r.func,string:r.string,comment:{pattern:/(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,lookbehind:!0,greedy:!0},interpolation:r.interpolation,punctuation:/[{}()\[\];:.]/}}(o),function(e){var t=e.util.clone(e.languages.typescript);e.languages.tsx=e.languages.extend("jsx",t),delete e.languages.tsx.parameter,delete e.languages.tsx["literal-property"];var n=e.languages.tsx.tag;n.pattern=RegExp(/(^|[^\w$]|(?=<\/))/.source+"(?:"+n.pattern.source+")",n.pattern.flags),n.lookbehind=!0}(o),o.languages.wasm={comment:[/\(;[\s\S]*?;\)/,{pattern:/;;.*/,greedy:!0}],string:{pattern:/"(?:\\[\s\S]|[^"\\])*"/,greedy:!0},keyword:[{pattern:/\b(?:align|offset)=/,inside:{operator:/=/}},{pattern:/\b(?:(?:f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|neg?|nearest|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|sqrt|store(?:8|16|32)?|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))?|memory\.(?:grow|size))\b/,inside:{punctuation:/\./}},/\b(?:anyfunc|block|br(?:_if|_table)?|call(?:_indirect)?|data|drop|elem|else|end|export|func|get_(?:global|local)|global|if|import|local|loop|memory|module|mut|nop|offset|param|result|return|select|set_(?:global|local)|start|table|tee_local|then|type|unreachable)\b/],variable:/\$[\w!#$%&'*+\-./:<=>?@\\^`|~]+/,number:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/,punctuation:/[()]/};const a=o},9901: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"}}})},2885:(e,t,n)=>{const r=n(9901),o=n(9642),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(6500).resolve(t)],delete Prism.languages[e],n(6500)(t),a.add(e)}))}i.silent=!1,e.exports=i},6726:(e,t,n)=>{var r={"./":2885};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=6726},6500:(e,t,n)=>{var r={"./":2885};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=6500},9642: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 l={},s=e[r];if(s){function c(t){if(!(t in e))throw new Error(r+" depends on an unknown component "+t);if(!(t in l))for(var i in o(t,a),l[t]=!0,n[t])l[i]=!0}t(s.require,c),t(s.optional,c),t(s.modify,c)}n[r]=l,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,l){var s=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),c=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}}(s);i=i.map(c),l=(l||[]).map(c);var u=n(i),d=n(l);i.forEach((function e(n){var r=s[n];t(r&&r.require,(function(t){t in d||(u[t]=!0,e(t))}))}));for(var p,f=r(s),m=u;o(m);){for(var h in p={},m){var g=s[h];t(g&&g.modify,(function(e){e in d&&(p[e]=!0)}))}for(var b in d)if(!(b in u))for(var v in f(b))if(v in u){p[b]=!0;break}for(var y in m=p)u[y]=!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,l={},s={};function c(e){if(e in l)return l[e];s[e]=!0;var o,u=[];for(var d in t(e))d in n&&u.push(d);if(0===u.length)o=r(e);else{var p=i(u.map((function(e){var t=c(e);return delete s[e],t})));a?o=a(p,(function(){return r(e)})):r(e)}return l[e]=o}for(var u in n)c(u);var d=[];for(var p in s)d.push(l[p]);return i(d)}(f,u,t,n)}};return w}}();e.exports=t},2703:(e,t,n)=>{"use strict";var r=n(414);function o(){}function a(){}a.resetWarningCache=o,e.exports=function(){function e(e,t,n,o,a,i){if(i!==r){var l=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 l.name="Invariant Violation",l}}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}},5697:(e,t,n)=>{e.exports=n(2703)()},414:e=>{"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},4448:(e,t,n)=>{"use strict";var r=n(7294),o=n(7418),a=n(3840);function i(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n